aboutsummaryrefslogtreecommitdiff
path: root/ext/bg/js/backend.js
Commit message (Collapse)AuthorAge
* Core refactor (#1207)toasted-nutbread2021-01-07
| | | | | | | | | | | | | | | | | | | | | | | | | * Copy set intersection functions * Remove unused functions * Simplify url check * Remove parseUrl * Simplify stringReverse * Remove hasOwn due to infrequent use * Rename errorToJson/jsonToError to de/serializeError For clarity on intended use. * Fix time argument on timeout * Add missing return value * Throw an error for unexpected argument values * Add documentation comments
* Translator regex replacements (#1199)toasted-nutbread2021-01-03
| | | | | | | | | | | | | | | | | | | * Add support for regex replacements during the translation process * Allow assignment of textReplacements * Rename * Set up test data * Write expected data * Set up options * Prevent infinite loop if regex matches empty string * Implement setting controller * Add support for testing pattern replacements
* Update copyright year (#1194)toasted-nutbread2021-01-01
| | | | | * Update copyright year * Remove redundant Author info
* Add support for using declarativeNetRequest (#1127)toasted-nutbread2020-12-18
|
* Set up initial manifest v3 support (#605)toasted-nutbread2020-12-18
|
* Maximum clipboard search length (#1118)toasted-nutbread2020-12-18
| | | | | | | | | * Add maximumClipboardSearchLength an option * Add setting * Add limits * Update tests
* Refactor tab creation to improve errors (#1110)toasted-nutbread2020-12-13
|
* Updated welcome page (#1107)toasted-nutbread2020-12-13
| | | | | | | | | | | | | | | * Make storage controller optional * Make more elements optional * Update styles * Create new welcome page * Update URL for welcome guide * Remove old guide * Fix unused global
* Add info page (#1102)toasted-nutbread2020-12-12
| | | | | | | | | | | * Add api.getAnkiConnectVersion * Enable basic functionality when certain features/elements aren't present * Add info page * Update information links * Update info link on the settings v2 page
* Settings v2 testing setup (#1084)toasted-nutbread2020-12-06
| | | | | | | | | * Add option for using settings v2 * Add options/info about settings v2 * Use settings v2 URL when applicable * Update tests
* JapaneseUtil normalization (#1076)toasted-nutbread2020-11-29
| | | | | * Use JapaneseUtil as a class which is manually instantiated * Use alias function for toKana
* Fix kanji note creation (#1069)toasted-nutbread2020-11-26
| | | | | | | * Fix kanji note creation * Move try/catch for consistency * Move audio normalization
* Compact tags refactor (#1021)toasted-nutbread2020-11-12
| | | | | | | | | | | | | * Update translator to flag redundant tags instead of remove * Update how compact tags are shown in the popup * Pass compactTags option to note builder * Update options templates * Add options upgrade * Add options upgrade test
* Remove unused functions from backend.js (#1014)toasted-nutbread2020-11-08
|
* Add api.isAnkiConnected (#1011)toasted-nutbread2020-11-08
|
* Query parser generator refactor (#1006)toasted-nutbread2020-11-08
| | | | | | | | | | | | | * Simplify select generation * Refactor text generation * Change optional argument * Remove query-parser-templates.html * Simplify prepare * Simplify preview
* Fix search tab opening having some errors (#1004)toasted-nutbread2020-11-07
|
* Move deinflection reasons setup to backend (#880)toasted-nutbread2020-10-04
| | | | | * Move deinflection reasons setup to backend * Remove async
* Translator options refactor (#879)toasted-nutbread2020-10-04
| | | | | | | | | | | | | * Refactor internal options for findTerms to not use the settings object * Move findTerms/findKanji options creation * Deconstruct used options values to variables before any await calls * Rename findTermsOptions to just options * Add documentation comments * Add type information about definitions
* Send message updates (#864)toasted-nutbread2020-09-26
| | | | | | | | | | | | | | | * Use _sendMessageTab * Move _sendMessageAllTabs next to _sendMessageTab * Rename function * Add and use _sendMessageTabIgnoreResponse * Add and use _sendMessageIgnoreResponse * Always include params * Update function consistency
* Add clipboard-text Anki field (#863)toasted-nutbread2020-09-26
| | | | | | | * Add clipboard-text anki field * Add markers * Update clipboard injection
* Media utility refactor (#859)toasted-nutbread2020-09-26
| | | | | | | | | | | * Move loadImageBase64 into DictionaryImporter * Convert mediaUtility to a class * Add getFileExtensionFromImageMediaType to MediaUtility * Use MediaUtility instead of _getImageExtensionFromMediaType * Use MediaUtility in ClipboardReader to validate images before reading
* Audio system refactor (#858)toasted-nutbread2020-09-26
| | | | | | | | | | | | | | | * Refactor AudioUriBuilder * Add downloadAudio function * Refactor AudioSystem * Update API usage * Rename file * Update scripts * Add prepare calls
* ClipboardReader class (#854)toasted-nutbread2020-09-20
| | | | | | | | | | | * Create ClipboardReader class * Use ClipboardReader in Backend * Update ClipboardMonitor to use ClipboardReader * Replace _onApiClipboardImageGet call * Assign clipboard reader browser
* Dictionary delete improvements (#844)toasted-nutbread2020-09-19
| | | | | | | * Change where clearDatabaseCaches occurs * Move dictionary deletion into the settings page * Remove api.deleteDictionary
* Cleanup unused utils (#832)toasted-nutbread2020-09-15
| | | | | | | | | * Remove api.optionsSave * Remove getOptionsMutable and getOptionsFullMutable * Remove util.js * Remove yomichanBackend
* Database change event (#826)toasted-nutbread2020-09-13
| | | | | * Add api.triggerDatabaseUpdated and yomichan.on('databaseUpdated') * Update databaseUpdated event usage
* OptionsUtil refactor / options default values (#807)toasted-nutbread2020-09-11
| | | | | | | | | | | | | | | | | | | | | | | * Replace _readFile with _fetchAsset for consistency with Backend * Fix error messages * Make OptionsUtil non-static * Update how default options are assigned * Add createValidatingProxy * Add validate, update _onApiSetAllSettings * Remove unused api.optionsSchemaGet * Remove Backend._optionsSchema * Update OptionsUtil to create its own JsonSchemaValidator * Rename Backend._optionsSchemaValidator * Make getDefault non-async
* Use Anki classes directly in Display (#804)toasted-nutbread2020-09-10
| | | | | | | | | | | * Add _getTemplates function * Add template renderer to display pages * Add AnkiNoteBuilder to Display * Update AnkiTemplatesController to directly use TemplateRenderer * Remove old APIs
* Add api.injectAnkiNoteMedia (#803)toasted-nutbread2020-09-10
|
* Anki note api functions (#802)toasted-nutbread2020-09-10
| | | | | | | * Assign duplicateScope to a variable * Add api.addAnkiNote * Add api.getAnkiNoteInfo, update returned data format
* Anki note media injection move (#801)toasted-nutbread2020-09-10
| | | | | | | * Move anki note media injection functionality into Backend * Add marker/mode checks * Remove media injection from AnkiNoteBuilder
* AudioUriBuilder simplification (#799)toasted-nutbread2020-09-10
| | | | | | | | | | | | | * Rename variables to disambiguate * Update handler argument convention * Update getUri argument convention * Change _getAudioUri argument convention * Change getDefinitionAudio argument convention * Add api.getDefinitionAudio definition
* Generalize AnkiNoteBuilder to not use audioSystem directly (#796)toasted-nutbread2020-09-09
|
* Update the AnkiController class to use an instance of AnkiConnect directly ↵toasted-nutbread2020-09-09
| | | | | | | (#795) * Update AnkiController to use AnkiConnect instance directly * Remove unused
* Anki media injection move (#793)toasted-nutbread2020-09-09
| | | | | | | | | | | | | | | * Update AnkiNoteBuilder to not store a reference to an AniConnect instance * Use more consistent details format * Organize options assignment * Move media injection * Inject images before injecting audio * Make functions private * Make static functions private
* Anki screenshot refactor (#791)toasted-nutbread2020-09-09
| | | | | | | * Use more consistent style for injectScreenshot * Move screenshot generation into AnkiNoteBuilder/Backend * Get optionsContext before await
* Anki API refactor (#790)toasted-nutbread2020-09-09
| | | | | | | | | | | | | | | * Add function guiBrowseNote * Assign default server as null * Use get/set properties for server/enabled * Refactor option values * Refactor createNote/Data functions to not use options format directly * Use createNote for testing * Add errors
* Anki note clipboard marker (#780)toasted-nutbread2020-09-08
| | | | | | | | | | | * Update fields reference * Add support for adding clipboard images to anki notes * Add handlebars templates * Add markers * Add markers to readme
* Add api.clipboardGetImage (#778)toasted-nutbread2020-09-06
| | | | | | | | | | | * Rename clipboardPasteTarget to just target * Remove else block * Add helper functions * Defer assignment of clipboard paste target * Add api.clipboardGetImage
* Fix error handling for screenshot captures (#777)toasted-nutbread2020-09-06
|
* Add api.isTabSearchPopup (#763)toasted-nutbread2020-09-04
| | | | | * Add api.isTabSearchPopup * Fix missing asyncs
* Defer assignment of marker (#762)toasted-nutbread2020-09-04
|
* Settings dictionary import refactor (#759)toasted-nutbread2020-09-04
| | | | | | | * Fix .purge not re-opening the database after deletion failure * Create DictionaryImportController * Remove backend dictionary import
* Json schema profile conditions (#758)toasted-nutbread2020-09-04
| | | | | | | | | | | | | | | * Add clearCache function * Add upgrade * Use schema-based profile condition validation * Update profile conditions settings controller * Remove unnecessary async * Remove old * Remove unused templates
* Move generateId to core.js (#748)toasted-nutbread2020-08-22
|
* JSON schema refactor (#731)toasted-nutbread2020-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | * Remove JsonSchema.clone * Move createProxy function * Group public properties first * Create private version of getPropertySchema * Mark functions as private * Use non-static getValidValueOrDefault * Mark private * Make public validate function not take an info parameter * Remove JsonSchema * Add isValid function * Use isValid for some tests * Fix incorrect type
* Translator refactor (#720)toasted-nutbread2020-08-09
| | | | | | | | | | | | | | | * Move simple find sort into translator.js * Remove unused * Use direct reference to database * Make field private * Remove statics * Convert functions to private * Organize by public/private
* Persistent display mode (#714)toasted-nutbread2020-08-09
| | | | | | | | | | | | | * Simplify calls using chrome.tabs.sendMessage and getMessageResponseResult * Rename message handlers * Move onMessage handler into Display * Assign search popup mode which persists across refreshes * Update clipboard monitor on the search page * Remove mode param
* Strip request origin (#710)toasted-nutbread2020-08-02
| | | | | | | * Add web request permissions * Create fetch wrapper that anonymizes the request * Fix Firefox not supporting 'extraHeaders' option