summaryrefslogtreecommitdiff
path: root/ext/js/data/options-util.js
Commit message (Collapse)AuthorAge
* add language select, abstract text transformations (#584)StefanVukovic992024-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Copy functions from JapaneseUtil * Remove JapaneseUtil * Update usages of JapaneseUtil functions * part1 * frotend done? * fix tests * offscreen and type complications * add tests * start fixing tests * keep fixing tests * fix tests * Copy functions from JapaneseUtil * Remove JapaneseUtil * Update usages of JapaneseUtil functions * delete pt * renames * add tests * kebab-case filenames * lint * minor fixes * merge * fixes * fix part of comments * fix more comments * delete unused types * comment * comment * do backend * other files * move fetch utils to own file * remove extra line * add extra line * remove unnecessary export * simplify folder structure * remove redundant async * fix param type in api * fix language index * undo changes to cssStyleApplier * undo changes to utilities.js * undo changes to utilities.js * simplify language util * lint * undo phantom changes to anki integration * require textTransformations options * explicit locale in localeCompare * punctuate notes * prefer early exit * rename LanguageOptionsObjectMap * rename to textPreprocessor * tuple with names instead of boolean array * safe data setting * optional chaining * simplify LanguageOptions * encapsulate languages * delete language util * nullable language in text preprocessors controller * rename transform to process * remove settings * make translation advanced again * remove unused getTextTransformations api call * comments * change language types * RIP flags * comments * fix tests * lint * Text preprocessor type changes (#10) * Add types * Update types * Simplify type check * Refactor typing and structuring of language definitions * lint * update translator benchmark * undo markdown changes * undo markdown changes * undo markdown changes * more merge * simplify language controller --------- Co-authored-by: toasted-nutbread <toasted-nutbread@users.noreply.github.com> Co-authored-by: Darius Jahandarie <djahandarie@gmail.com>
* Show all duplicate notes on click (#636)Eloy Robillard2024-02-15
| | | | | | | | | | | | | | | | | * Show all duplicate notes on click * Change 'notesView' to 'viewNotes' * Replace api.noteView with api.viewNotes * Update "viewNote" action to "viewNotes" in options util * Update options-util test with "viewNotes" action * Replace uses of "viewNote" with "viewNotes" * Replace _viewNote with _viewNotes * Rename /*ViewNote*/ methods to /*ViewNotes*/
* Add and fix tests with options upgrades (#671)24.2.12.0Kuuuube2024-02-12
| | | | | | | | | | | | | | | | | | | | | | | * Add and fix tests and options applying * Fix comma * Add test file to json.json * Fix direction of conjugation handlebars update * Add frequency and cloze-body-kana to upgrade * Use Array.isArray() instead of arbitrary length check * Add pitch-accent-categories handlebar * programmatically get upgrade files * add type --------- Co-authored-by: Cashew <tungbinem@gmail.com>
* Eslint rule updates (#665)toasted-nutbread2024-02-11
| | | | | | | | | | | | | | | | | | | | | | | * Padding newline rules * Update rules * Update rules * Update rules * Updates * Update object quotes * Merge similar ts and js rules * Change export spacing rules * Move typescript-eslint rules * Spacing * Actually save and commit changes
* Update eslint (#638)toasted-nutbread2024-02-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add json test * Update vscode settings to better handle json * Collapse eslint rules for easier readability * Reorganize * Update no-multi-spaces rule for JSON * Rules updates * Switch to @stylistic/eslint-plugin * Update deprecated stylistic rules * Group stylistic rules * Simplify rules * Move eslint env overrides to end of file * Add test * Move promiseAnimationFrame to separate file * Remove unneeded eslint disable * Remove unneeded
* Extract fetch functions to utilities (#629)StefanVukovic992024-02-04
| | | | | | | | | | | | | | | * do backend * other files * move fetch utils to own file * remove extra line * add extra line * remove unnecessary export * undo changes to cssStyleApplier
* Separate core classes into separate files (#545)toasted-nutbread2024-01-20
|
* Update copyright year (#524)toasted-nutbread2024-01-20
| | | | | | | | | | | | | * Update copyright year * Update lib files * Rebase updates * Update dates * Update years to range * Update permitted pattern
* Dictionary deinflections (#503)StefanVukovic992024-01-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * wip * wip * fix v3 * wip * fix tests * fix maxitems * hide deinflection definitions * fix anki template * undo unnecessary change * delete console.log * refactor * add set false to handlebars * lint * fix tests * fix comments * fix * use Map in areArraysEqualIgnoreOrder * move inflection source icons to css * lint * improve naming * fix tests * add test * typescript * use for of * wip * comments * anki template upgrade * update descriptions
* add option to disable part of speech rule check (#438)StefanVukovic992024-01-13
| | | | | | | | | | | | | | | | | | | | | | | * pos filter wip * add part of speech filter option * add part of speech filter option * remove from deinflector * update test * remove return * tie to dictionary * duplicate to welcome page * delete unused html * fix ts * typo
* Options util updates (#475)toasted-nutbread2023-12-29
| | | | | | | | | * Simplify async handling * Update comments * Add description * Update update 22
* search resolution option (#436)StefanVukovic992023-12-29
| | | | | | | | | | | | | | | * add search resolution setting * move finding next substring to method * use regex literal * fix comments * fix comments * add options update function * update test
* JSON validation (#394)toasted-nutbread2023-12-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Set up JSON testing * Add schema validation * Use parseJson * Finish types * Disambiguate ext/json-schema from node dependency with the same name * Add support for specifying the jsconfig file * Don't expose types * Update types * Use dictionary map type * Fix types * Fix AJV warnings * Move types * Move anb rename file * Move common mocks * Simplify types
* Make JSON.parse usage safer (#373)toasted-nutbread2023-12-19
| | | | | | | | | | | | | | | * Make JSON.parse usage safer * Fix any type * Add readResponseJson * Use readResponseJson * Additional updates * Rename files * Add types
* Update eslint spacing rules (#366)toasted-nutbread2023-12-17
| | | | | | | | | * Add space-infix-ops rule * Add no-multi-spaces --------- Co-authored-by: Darius Jahandarie <djahandarie@gmail.com>
* Update typestoasted-nutbread2023-11-27
|
* Add JSDoc type annotations to project (rebased)toasted-nutbread2023-11-27
|
* `yomichan` -> `yomitan`starxeras2023-11-10
|
* Modernize codebaseDarius Jahandarie2023-11-04
| | | | | | - Use ES modules - Remove vendored libs and build them from npm using esbuild - Switch from JSZip to zip.js
* fix: typopraschke2023-10-24
|
* fix: save options after updating thempraschke2023-10-23
| | | | | | | | | | | | | | | | _optionsUtil.save() is only called in _saveOptions, which is only called through - _onApiSetAllSettings - _onApiModifySettings - _onCommandToggleTextScanning it should be safe to simply save settings after updating them. without saving, the options will be updated every time the background restarts, until any settings are modified or text scanning is toggled. for _updateVersion21, this means the welcome page will open repeatedly to show the same warning.
* warn about custom templates in the welcome pagepraschke2023-10-22
|
* initial handlebars patchpraschke2023-10-17
|
* fixed eslint, changed header to only use 2 spaces, added missing headers to testAustin Siew2023-03-22
|
* Updated LICENSE to full license, added Yomitan 2023 to all license headersAustin Siew2023-03-21
|
* Exclude documentElement from zoom calculation (#2227)toasted-nutbread2022-09-20
| | | | | | | | | | | | | | | * Exclude documentElement from zoom calculation * Add an option * Refactor zoom coordinate conversion functions * Convert zoom coordinates for text sources * Rename variable * Convert rect coordinate spaces * Handle shadow DOM
* Fix invalid default values for popupTheme and popupOuterTheme (#2180)toasted-nutbread2022-08-20
| | | | | * Fix invalid default values for popupTheme and popupOuterTheme * Options update
* Audio download timeout (#2187)toasted-nutbread2022-08-20
| | | | | | | | | | | | | | | | | | | | | | | * Add support for an idle timeout when downloading audio * Update eslint rules * Pass idleTimeout to the downloader from DisplayAnki * Add anki.downloadTimeout setting * Update tests * Assign _audioDownloadIdleTimeout using settings * Show info about cancelled downloads * Handle Firefox bug * Improve audio errors * Refactor * Move functions to RequestBuilder
* Touch and pen input updates (#2172)toasted-nutbread2022-06-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove unnecessary return * Move touch start input filtering * Refactor * Add scanOnTouchPress * Add preventPenScrolling * Rename scanOnPenPress to scanOnPenMove * Rename scanOnPenRelease to scanOnPenReleaseHover * Simplify * Refactor _searchAtFromPen early exit * Merge _penPointerPressed and _penPointerReleased into a single variable * Add more options * Simplify pen pointer coordinates * Implement scanOnPenPress and scanOnPenRelease * Implement scanOnTouchRelease * Fix tests * Don't search on touch cancel * Cancel touch if the touch action is used for scrolling or other gestures * Fix incorrect scroll prevention options being used * Organize options * Fix typos
* Add support for Anki API key (#2169)toasted-nutbread2022-05-30
| | | | | | | | | | | | | * Update material.css to support password fields * Support password * Add "apiKey" setting * Use apiKey * Update options if API key changes * Update tests
* Add support for guiEditNote to view notes (#2143)toasted-nutbread2022-05-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add AnkiConnect.guiEditNote * Update _onApiNoteView to first try guiEditNote * Add setting * Update noteView API * Use setting * Return which mode was used * Update DisplayGenerator * Handle errors in DisplayAnki * Update docs * Add isErrorUnsupportedAction function * Add an allowFallback option to noteView * Disambiguate * Simplify now that preferredMode isn't used * Update settings info * Implement test buttons * Update styles * Update status visibility * Wrap layout * Update description * Update date
* Hide popup on cursor exit (#2109)toasted-nutbread2022-04-03
| | | | | | | | | * Update phrasing * Add new options * Add settings * Implement
* Theme updates (#2105)toasted-nutbread2022-04-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Change siteColor to siteTheme * Fix potential null exception * Simplify * Update display theme assignment * Add a data-browser-theme attribute * Add "browser" option for theme * Create ThemeController * Add theme-controller.js to relevant pages * Use ThemeController * Simplify * Fix 'light' being used instead of 'default' * Update the settings values to more accurately reflect their usage * Change default site theme in display.js * Remove async * Restore async for consistency
* Update copyright date (#2062)toasted-nutbread2022-02-02
| | | | | | | * Update eslint settings * Update 2021 files * Update other files
* Update sentence termination characters (#2059)toasted-nutbread2022-02-02
| | | | | | | * Add vertical punctuation to terminationCharacters * Upgrade settings * Update tests
* Scanning wildcards (#2042)toasted-nutbread2021-12-18
| | | | | | | | | * Add scanning.matchTypePrefix option * Update TextScanner to use matchTypePrefix option * Add setting * Update warning
* Frequency dictionary sort (#1938)toasted-nutbread2021-09-26
| | | | | | | | | | | | | | | | | * Add sortDictionary/sortDictionaryOrder options * Update options * Add API.getTermFrequencies * Add settings * Implement frequency dictionary sorting * Update test * Update test data * Fix handling of undefined rank-based frequencies
* Google Docs accessibility (#1875)toasted-nutbread2021-08-07
| | | | | | | | | | | | | * Add accessibility option for forcing Google Docs HTML-based rendering * Update settings * Send a documentStart message at document start * Add accessibility script for Google Docs * Set up accessibility * Update tests
* Update pronunciation anki templates (#1842)toasted-nutbread2021-07-18
| | | | | | | | | * Update anki pronunciation templates * Expose nasalPositions/devoicePositions * Update templates to support nasal/devoice positions * Update test data
* Duplicate scope check all models (#1810)toasted-nutbread2021-07-13
| | | | | | | * Add duplicateScopeCheckAllModels option to createNote * Add duplicateScopeCheckAllModels option * Add setting
* Anki text furigana parsing and {sentence-furigana} marker (#1814)toasted-nutbread2021-07-09
| | | | | | | | | | | | | * Add support for textFurigana media * Add readingMode parameter * Implement readingMode * Add {sentence-furigana} marker * Fallback to sentence if furigana isn't available * Update test data
* Anki card selected text (#1809)toasted-nutbread2021-07-07
| | | | | | | | | | | * Add support for injecting the text selection into Anki cards * Add selection-text * Upgrade to add {selection-text} * Update descriptions * Update test data
* Update options-util tests and comment (#1806)toasted-nutbread2021-07-06
|
* OptionsUtil and tests updates (#1801)toasted-nutbread2021-07-05
| | | | | * Update OptionsUtil.update to support an optional targetVersion param * Update Anki template updates to have an explicit target version
* Anki support for structured-content (#1786)toasted-nutbread2021-07-02
| | | | | | | | | | | | | | | | | | | | | | | * Update how glossary text is formatted * Update structured content and image generation * Pass root data to _createStructuredContentGenerator * Implement media URLs * Update documentation * Update options util * Apply styles to content * Improve HTML normalization * Update DatabaseVM.fetch function * Update test * Update test data
* Improve multiple audio sources (#1718)toasted-nutbread2021-05-30
| | | | | | | | | | | | | * Add url/voice options to audio sources * Add help for TTS * Remove old settings * Update tests * Update use of audio source URL * Improve labels for sources with the same type
* Refactor json audio source (#1711)toasted-nutbread2021-05-26
| | | | | | | | | * Move sources to the end of audio options object * Add custom-json audio source type * Add support for downloading custom-json * Remove customSourceType
* Json schema validation improvements (#1697)toasted-nutbread2021-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Create new JsonSchema class * Add proxy handler * Update tests * Update validation scripts * Update backend * Update audio downloader * Update options util * Update dictionary importer * Update json schema file reference * Remove old json-schema.js * Rename new json-schema.js * Update file names * Rename class
* Expose search query to anki template renderer (#1686)toasted-nutbread2021-05-17
| | | | | | | | | | | * Expose query and fullQuery to Anki context * Add {search-query} marker * Update test data * Update tests * Wrap search query in multiLine
* Sentence termination character mode (#1682)toasted-nutbread2021-05-16
| | | | | | | | | | | * Change enableTerminationCharacters to terminationCharacterMode * Update settings * Update sentence extraction * Update tests * Add tests