SYMBOL INDEX (286 symbols across 69 files) FILE: addon/bootstrap.js function install (line 10) | function install(data, reason) {} function startup (line 12) | async function startup({ id, version, resourceURI, rootURI }, reason) { function onMainWindowLoad (line 45) | async function onMainWindowLoad({ window }, reason) { function onMainWindowUnload (line 49) | async function onMainWindowUnload({ window }, reason) { function shutdown (line 53) | function shutdown({ id, version, resourceURI, rootURI }, reason) { function uninstall (line 70) | function uninstall(data, reason) {} FILE: src/addon.ts class Addon (line 8) | class Addon { method constructor (line 46) | constructor() { FILE: src/api.ts function translate (line 65) | async function translate( function getTemporaryRefreshHandler (line 137) | function getTemporaryRefreshHandler(options?: { task?: TranslateTask }) { function getServices (line 156) | function getServices() { function getVersion (line 166) | function getVersion() { FILE: src/elements/base.ts class PluginCEBase (line 3) | class PluginCEBase extends XULElementBase { method connectedCallback (line 7) | connectedCallback(): void { method _wrapID (line 35) | _wrapID(key: string) { method _unwrapID (line 42) | _unwrapID(id: string) { method _queryID (line 49) | _queryID(key: string) { method _parseContentID (line 58) | _parseContentID(dom: DocumentFragment) { FILE: src/elements/mathTextbox.ts class MathTextboxElement (line 5) | class MathTextboxElement extends XULElementBase { method content (line 10) | get content() { method connectedCallback (line 26) | connectedCallback(): void { method init (line 31) | init(): void { method value (line 39) | set value(v: string) { method value (line 44) | get value() { method placeholder (line 48) | set placeholder(v: string) { method focus (line 52) | focus(): void { method _updateOverlay (line 70) | private _updateOverlay(): void { method _showOverlay (line 80) | private _showOverlay(): void { method _hideOverlay (line 98) | private _hideOverlay(): void { method destroy (line 106) | destroy(): void { FILE: src/elements/panel.ts class TranslatorPanel (line 17) | class TranslatorPanel extends PluginCEBase { method item (line 22) | get item() { method item (line 26) | set item(val) { method content (line 30) | get content() { method init (line 112) | init(): void { method destroy (line 345) | destroy(): void {} method _filterUnconfiguredServices (line 351) | _filterUnconfiguredServices() { method render (line 367) | render() { FILE: src/hooks.ts function onStartup (line 31) | async function onStartup() { function onMainWindowLoad (line 70) | async function onMainWindowLoad(win: Window): Promise { function onMainWindowUnload (line 108) | async function onMainWindowUnload(win: Window): Promise { function onShutdown (line 114) | function onShutdown(): void { function onNotify (line 129) | function onNotify( function onPrefsLoad (line 162) | function onPrefsLoad(event: Event) { function onShortcuts (line 166) | function onShortcuts(type: string) { function onTranslate (line 204) | async function onTranslate(...data: any) { function onTranslateInBatch (line 220) | async function onTranslateInBatch( function onReaderPopupShow (line 232) | function onReaderPopupShow( function onReaderPopupRefresh (line 250) | function onReaderPopupRefresh() { function onReaderTabPanelRefresh (line 254) | function onReaderTabPanelRefresh() { FILE: src/index.ts function defineGlobal (line 25) | function defineGlobal(name: string, getter?: () => any) { FILE: src/modules/defaultPrefs.ts function setDefaultPrefSettings (line 5) | function setDefaultPrefSettings() { FILE: src/modules/fields.ts function registerCustomFields (line 3) | function registerCustomFields() { FILE: src/modules/infoBox.ts function registerItemPaneInfoRows (line 5) | function registerItemPaneInfoRows() { FILE: src/modules/itemTree.ts function registerExtraColumns (line 4) | function registerExtraColumns() { FILE: src/modules/menu.ts function registerMenu (line 9) | function registerMenu() { FILE: src/modules/notify.ts function registerNotify (line 1) | function registerNotify(types: _ZoteroTypes.Notifier.Type[]) { function unregisterNotify (line 16) | function unregisterNotify(notifyID: string) { FILE: src/modules/popup.ts function updateReaderPopup (line 8) | function updateReaderPopup() { function buildReaderPopup (line 119) | function buildReaderPopup( function onTextAreaResize (line 332) | function onTextAreaResize(ev: MouseEvent) { function getOnTextAreaCopy (line 340) | function getOnTextAreaCopy(selectionMenu: HTMLElement, targetId: string) { function updatePopupSize (line 379) | function updatePopupSize( FILE: src/modules/preferenceWindow.ts function registerPrefsWindow (line 9) | function registerPrefsWindow() { function registerPrefsScripts (line 19) | function registerPrefsScripts(_window: Window) { function buildPrefsPane (line 26) | function buildPrefsPane() { function updatePrefsPaneDefault (line 274) | function updatePrefsPaneDefault() { function onPrefsEvents (line 284) | function onPrefsEvents(type: string, fromElement: boolean = true) { function makeId (line 519) | function makeId(type: string) { FILE: src/modules/prompt.ts function registerPrompt (line 3) | function registerPrompt() { FILE: src/modules/reader.ts function registerReaderInitializer (line 6) | function registerReaderInitializer() { function createTranslateAnnotationButton (line 67) | function createTranslateAnnotationButton( FILE: src/modules/services/_template.ts method translate (line 101) | async translate(data) { FILE: src/modules/services/aliyun.ts function languageCode (line 44) | function languageCode(str: string) { function encodeRFC3986URIComponent (line 52) | function encodeRFC3986URIComponent(str: string) { method secretValidator (line 66) | secretValidator(secret) { method config (line 84) | config(settings) { FILE: src/modules/services/baidu.ts method secretValidator (line 48) | secretValidator(secret: string) { FILE: src/modules/services/baidufield.ts method secretValidator (line 43) | secretValidator(secret: string) { FILE: src/modules/services/base.ts type TranslateService (line 7) | interface TranslateService { FILE: src/modules/services/bing.ts function getToken (line 47) | async function getToken(forceRefresh: boolean = false) { FILE: src/modules/services/caiyun.ts function transLang (line 23) | function transLang(inlang: string = "") { method secretValidator (line 43) | secretValidator(secret: string) { FILE: src/modules/services/cambridgedict.ts function getDictionaryCode (line 80) | function getDictionaryCode(fromCode: string, toCode: string) { function parser1 (line 100) | function parser1(doc: Document) { function parser2 (line 131) | function parser2(doc: Document) { function parseBody (line 144) | function parseBody(block: Element): string { FILE: src/modules/services/claude.ts function transformContent (line 5) | function transformContent( method secretValidator (line 160) | secretValidator(secret: string) { method config (line 176) | config(settings) { FILE: src/modules/services/cnki.ts function getToken (line 80) | async function getToken(forceRefresh: boolean = false) { function getWord (line 119) | async function getWord(text: string) { method config (line 131) | config(settings) { FILE: src/modules/services/deepl.ts type ID (line 4) | type ID = "deeplfree" | "deeplpro"; function createDeepl (line 6) | function createDeepl(id: ID): TranslateService { function mapLang (line 58) | function mapLang(lang: string) { constant LANG_MAP (line 65) | const LANG_MAP = { FILE: src/modules/services/deeplcustom.ts method config (line 32) | config(settings) { FILE: src/modules/services/deeplx.ts function mapLang (line 74) | function mapLang(lang: string) { constant LANG_MAP (line 81) | const LANG_MAP = { method config (line 97) | config(setting) { FILE: src/modules/services/gemini.ts function transformContent (line 8) | function transformContent( function getGenContentAPI (line 22) | function getGenContentAPI(data: Required) { method secretValidator (line 88) | secretValidator(secret: string) { method config (line 99) | config(settings) { FILE: src/modules/services/google.ts function _google (line 4) | async function _google(url: string, data: Required) { constant LANG_MAP (line 88) | const LANG_MAP = { type ID (line 93) | type ID = "google" | "googleapi"; function createGoogle (line 95) | function createGoogle(id: ID): TranslateService { FILE: src/modules/services/gpt.ts type ID (line 4) | type ID = "chatgpt" | "customgpt1" | "customgpt2" | "customgpt3" | "azur... function getCustomParams (line 6) | function getCustomParams(prefix: string): Record { type ParsedResponse (line 29) | interface ParsedResponse { function isResponsesApiEndpoint (line 37) | function isResponsesApiEndpoint(url: string): boolean { function parseResponsesApiStreamResponse (line 45) | function parseResponsesApiStreamResponse(obj: any): ParsedResponse { function parseResponsesApiNonStreamResponse (line 80) | function parseResponsesApiNonStreamResponse(obj: any): string { function parseStreamResponse (line 95) | function parseStreamResponse(obj: any): ParsedResponse { function parseNonStreamResponse (line 115) | function parseNonStreamResponse(obj: any): string { function transformContent (line 135) | function transformContent( function createGPTService (line 305) | function createGPTService(id: ID): TranslateService { FILE: src/modules/services/haici.ts function getAppId (line 29) | async function getAppId(forceRefresh: boolean = false) { FILE: src/modules/services/huoshan.ts function getDateTimeNow (line 9) | function getDateTimeNow() { function getSigningKey (line 13) | async function getSigningKey(sk: any, metaData: any) { function getStringHeaders (line 20) | function getStringHeaders(header: any) { function getSignedHeaders (line 29) | function getSignedHeaders(header: any) { method secretValidator (line 113) | secretValidator(secret: string) { FILE: src/modules/services/index.ts class TranslationServices (line 95) | class TranslationServices { method sortServices (line 107) | private sortServices(services: T[]) { method getServiceById (line 146) | public getServiceById(id: string): TranslateService | undefined { method getAllServices (line 150) | public getAllServices(): TranslateService[] { method getAllServicesWithType (line 154) | public getAllServicesWithType(type: string): TranslateService[] { method getServiceNameByID (line 158) | public getServiceNameByID(id: string): string { method getAllServiceNames (line 175) | public getAllServiceNames(): string[] { method getAllServiceNamesWithType (line 181) | public getAllServiceNamesWithType(type: string): string[] { method getUnconfiguredServiceIds (line 192) | public getUnconfiguredServiceIds(): Set { method runTranslationTask (line 230) | public async runTranslationTask( FILE: src/modules/services/libretranslate.ts method config (line 48) | config(settings) { FILE: src/modules/services/microsoft.ts method secretValidator (line 42) | secretValidator(secret: string) { FILE: src/modules/services/mtranserver.ts function mapLang (line 31) | function mapLang(lang: string) { constant LANG_MAP (line 39) | const LANG_MAP = { method config (line 56) | config(settings) { FILE: src/modules/services/niutrans.ts method secretValidator (line 73) | secretValidator(secret: string) { method config (line 86) | config(settings) { FILE: src/modules/services/nllb.ts function mapLang (line 114) | function mapLang(lang: string) { constant LANG_MAP (line 124) | const LANG_MAP = { method config (line 163) | config(settings) { FILE: src/modules/services/openl.ts method secretValidator (line 60) | secretValidator(secret: string) { FILE: src/modules/services/pot.ts method config (line 31) | config(settings) { FILE: src/modules/services/qwenmt.ts function mapLang (line 63) | function mapLang(lang: string) { constant LANG_MAP (line 70) | const LANG_MAP = { method secretValidator (line 117) | secretValidator(secret: string) { method config (line 127) | config(settings) { FILE: src/modules/services/tencent.ts function MigrateSecret (line 31) | function MigrateSecret(parsedStr: string, str: string, prefKey: string) { function encodeRFC5987ValueChars (line 48) | function encodeRFC5987ValueChars(str: string) { method secretValidator (line 127) | secretValidator(secret: string) { method config (line 149) | config(settings) { FILE: src/modules/services/xftrans.ts function transLang (line 27) | function transLang(inlang: string = "") { function getPostBody (line 73) | function getPostBody(text: string, from: string, to: string) { function getDigest (line 88) | async function getDigest(body: any) { function getAuthStr (line 91) | async function getAuthStr(date: string, digest: string) { method secretValidator (line 120) | secretValidator(secret: string) { method config (line 138) | config(settings) { FILE: src/modules/services/youdaozhiyun.ts function encodeRFC5987ValueChars (line 6) | function encodeRFC5987ValueChars(str: string) { function truncate (line 16) | function truncate(q: string) { method secretValidator (line 62) | secretValidator(secret: string) { method config (line 82) | config(settings) { FILE: src/modules/services/youdaozhiyunllm.ts function truncate (line 7) | function truncate(q: string) { function transLang (line 13) | function transLang(inlang: string = "") { function grepErrorParagraphs (line 161) | function grepErrorParagraphs(input: string): string[] { method secretValidator (line 173) | secretValidator(secret: string) { method config (line 191) | config(settings) { FILE: src/modules/settings/manageKeys.ts function manageKeysDialog (line 4) | async function manageKeysDialog() { FILE: src/modules/settings/renameServices.ts function renameServicesDialog (line 4) | async function renameServicesDialog() { FILE: src/modules/shortcuts.ts function registerShortcuts (line 3) | function registerShortcuts() { FILE: src/modules/tabpanel.ts function registerReaderTabPanel (line 11) | function registerReaderTabPanel() { function openWindowPanel (line 62) | async function openWindowPanel() { function updateReaderTabPanels (line 83) | function updateReaderTabPanels() { function onInit (line 93) | function onInit({ body, refresh }: { body: HTMLElement; refresh: () => v... function buildExtraPanel (line 99) | function buildExtraPanel(doc: Document) { function onItemChange (line 242) | function onItemChange({ function updateExtraPanel (line 260) | function updateExtraPanel(container: HTMLElement | Document) { function onDestroy (line 281) | function onDestroy(options: any) { function onUpdateHeight (line 287) | function onUpdateHeight({ body }: { body: HTMLElement }) { FILE: src/utils/config.ts function inferLanguage (line 5) | function inferLanguage(str: string) { function matchLanguage (line 16) | function matchLanguage(str: string) { constant LANG_CODE (line 27) | const LANG_CODE = [ constant MACRO_LANG_MAP (line 335) | const MACRO_LANG_MAP = Object.entries(ISO6393_MACRO_LANGS).reduce( constant LANG_CODE_INDEX_MAP (line 347) | const LANG_CODE_INDEX_MAP = LANG_CODE.reduce( function mapISO6393to6391 (line 359) | function mapISO6393to6391(code: string) { FILE: src/utils/crypto.ts function base64 (line 1) | function base64(buffer: ArrayBuffer) { function randomString (line 6) | function randomString(length: number) { function hex (line 12) | function hex(buffer: ArrayBuffer) { function hmacSha1Digest (line 17) | async function hmacSha1Digest( function hmacSha256Digest (line 41) | async function hmacSha256Digest( function sha256Digest (line 65) | async function sha256Digest(message: string): Promise { function pkcs7Pad (line 70) | function pkcs7Pad(block: Uint8Array | Array) { function aesEcbEncrypt (line 78) | async function aesEcbEncrypt(message: string, secret: string) { FILE: src/utils/llmPrompt.ts function transformPromptWithContext (line 4) | function transformPromptWithContext( FILE: src/utils/locale.ts function initLocale (line 9) | function initLocale() { function getString (line 50) | function getString(...inputs: any[]) { function _getString (line 64) | function _getString( function getLocaleID (line 88) | function getLocaleID(id: FluentMessageId) { FILE: src/utils/mathRenderer.ts constant MATH_REGEX (line 6) | const MATH_REGEX = constant DEFAULT_KATEX_OPTIONS (line 8) | const DEFAULT_KATEX_OPTIONS = { function containsMath (line 14) | function containsMath(text: string): boolean { function escapeHtml (line 21) | function escapeHtml(doc: Document, text: string): string { function renderMathInText (line 27) | function renderMathInText(doc: Document, text: string): string { function renderMathInElement (line 88) | function renderMathInElement(element: HTMLElement, text: string): void { FILE: src/utils/prefs.ts type KeysWithStringValue (line 12) | type KeysWithStringValue = { type KeysWithNumberValue (line 16) | type KeysWithNumberValue = { type KeysWithBooleanValue (line 20) | type KeysWithBooleanValue = { type _PluginPrefsMap (line 24) | type _PluginPrefsMap = _ZoteroTypes.Prefs["PluginPrefsMap"]; type PrefKeys (line 25) | type PrefKeys = keyof _PluginPrefsMap; type PrefKeysWithStringValue (line 26) | type PrefKeysWithStringValue = KeysWithStringValue<_PluginPrefsMap>; type PrefKeysWithNumberValue (line 27) | type PrefKeysWithNumberValue = KeysWithNumberValue<_PluginPrefsMap>; type PrefKeysWithBooleanValue (line 28) | type PrefKeysWithBooleanValue = KeysWithBooleanValue<_PluginPrefsMap>; function getPref (line 32) | function getPref(key: string): string | number | boolean { function setPref (line 41) | function setPref(key: string, value: string | number | boolean) { function clearPref (line 47) | function clearPref(key: string) { function getPrefJSON (line 51) | function getPrefJSON(key: string) { function registerPrefObserver (line 68) | function registerPrefObserver(key: string, callback: (value: any) => voi... function unregisterPrefObserver (line 76) | function unregisterPrefObserver(observerID: symbol) { FILE: src/utils/secret.ts type SecretValidateResult (line 3) | interface SecretValidateResult { function getServiceSecret (line 9) | function getServiceSecret(serviceId: string) { function setServiceSecret (line 18) | function setServiceSecret(serviceId: string, secret: string) { function validateServiceSecret (line 29) | function validateServiceSecret( FILE: src/utils/settingsDialog.ts type ConfigField (line 14) | type ConfigField = type DialogFieldBase (line 22) | type DialogFieldBase = { type InputField (line 49) | type InputField = InputFieldBase | InputFieldText | InputFieldNumber; type InputFieldBase (line 51) | type InputFieldBase = DialogFieldBase & { type InputFieldText (line 56) | type InputFieldText = InputFieldBase & { type InputFieldNumber (line 60) | type InputFieldNumber = InputFieldBase & { type TextareaField (line 68) | type TextareaField = DialogFieldBase & { type CheckboxField (line 73) | type CheckboxField = DialogFieldBase & { type SelectField (line 77) | type SelectField = DialogFieldBase & { type ButtonField (line 85) | type ButtonField = DialogFieldBase & { type ParamsField (line 89) | type ParamsField = DialogFieldBase & { type Validater (line 93) | type Validater = ( type AllowedSettingsMethods (line 103) | type AllowedSettingsMethods = Pick< class ServiceSettingsDialog (line 118) | class ServiceSettingsDialog extends SettingsDialogHelper { method constructor (line 119) | constructor() { method addTextSetting (line 124) | addTextSetting(field: InputFieldText): AllowedSettingsMethods { method addPasswordSetting (line 137) | addPasswordSetting(field: InputFieldText): AllowedSettingsMethods { method addNumberSetting (line 149) | addNumberSetting(field: InputFieldNumber): AllowedSettingsMethods { method addCheckboxSetting (line 164) | addCheckboxSetting(field: CheckboxField): AllowedSettingsMethods { method addSelectSetting (line 183) | addSelectSetting(field: SelectField): AllowedSettingsMethods { method addTextAreaSetting (line 201) | addTextAreaSetting(field: TextareaField): AllowedSettingsMethods { method addCustomParamsSetting (line 214) | addCustomParamsSetting(field: ParamsField): AllowedSettingsMethods { method onSave (line 225) | onSave(validate?: Validater) { function createServiceSettingsDialog (line 231) | async function createServiceSettingsDialog( constant CUSTOM_PARAMS_INPUT_STYLES (line 268) | const CUSTOM_PARAMS_INPUT_STYLES = { function createParamInputCell (line 278) | function createParamInputCell( function openCustomRequestDialog (line 299) | async function openCustomRequestDialog(prefKey: string) { FILE: src/utils/str.ts function slice (line 3) | function slice(str: string, len: number) { function fill (line 7) | function fill( function stripEmptyLines (line 30) | function stripEmptyLines(text: string, enabled: boolean): string { FILE: src/utils/task.ts type TranslateTask (line 8) | interface TranslateTask { type TranslateTaskProcessor (line 95) | type TranslateTaskProcessor = ( class TranslateTaskRunner (line 99) | class TranslateTaskRunner { method constructor (line 101) | constructor(processor: TranslateTaskProcessor) { method run (line 105) | public async run(data: TranslateTask) { method makeErrorInfo (line 141) | protected makeErrorInfo(serviceId: string, detail: string) { function addTranslateTask (line 148) | function addTranslateTask( function addTranslateAnnotationTask (line 235) | function addTranslateAnnotationTask( function addTranslateTitleTask (line 254) | function addTranslateTitleTask( function addTranslateAbstractTask (line 273) | function addTranslateAbstractTask( function setDefaultService (line 296) | function setDefaultService(task: TranslateTask) { function cleanTasks (line 313) | function cleanTasks() { function getTranslateTasks (line 327) | function getTranslateTasks(count: number) { function getLastTranslateTask (line 334) | function getLastTranslateTask< function updateTranslateTaskLang (line 359) | function updateTranslateTaskLang(task: TranslateTask) { function putTranslateTaskAtHead (line 366) | function putTranslateTaskAtHead(taskId: string) { function autoDetectLanguage (line 378) | function autoDetectLanguage(item: Zotero.Item | null) { FILE: src/utils/wait.ts function waitUntil (line 1) | function waitUntil( function waitUtilAsync (line 18) | function waitUtilAsync( FILE: src/utils/window.ts function isWindowAlive (line 3) | function isWindowAlive(win?: Window) { function getFocusedWindow (line 7) | function getFocusedWindow() { FILE: src/utils/ztoolkit.ts function createZToolkit (line 20) | function createZToolkit() { function initZToolkit (line 31) | function initZToolkit(_ztoolkit: ReturnType) { class MyToolkit (line 46) | class MyToolkit extends BasicTool { method constructor (line 58) | constructor() { method unregisterAll (line 72) | unregisterAll() { FILE: typings/global.d.ts type ZToolkit (line 10) | type ZToolkit = ReturnType< class XULElementBase (line 22) | class XULElementBase extends HTMLElement { class MozXULElement (line 38) | class MozXULElement { FILE: typings/i10n.d.ts type FluentMessageId (line 5) | type FluentMessageId = FILE: typings/prefs.d.ts type Prefs (line 8) | interface Prefs {