diff options
author | Darius Jahandarie <djahandarie@gmail.com> | 2023-11-04 18:45:57 +0900 |
---|---|---|
committer | Darius Jahandarie <djahandarie@gmail.com> | 2023-11-04 18:45:57 +0900 |
commit | ef79eab44bfd000792c610b968b5ceefd41e76a0 (patch) | |
tree | 48b04f30f6248caedbd880801aa49402a9e8066a /ext/js/data | |
parent | 376151096431d4362e4baaacf0cef4a534e169f7 (diff) |
Modernize codebase
- Use ES modules
- Remove vendored libs and build them from npm using esbuild
- Switch from JSZip to zip.js
Diffstat (limited to 'ext/js/data')
-rw-r--r-- | ext/js/data/anki-note-builder.js | 10 | ||||
-rw-r--r-- | ext/js/data/anki-util.js | 4 | ||||
-rw-r--r-- | ext/js/data/database.js | 2 | ||||
-rw-r--r-- | ext/js/data/json-schema.js | 7 | ||||
-rw-r--r-- | ext/js/data/options-util.js | 9 | ||||
-rw-r--r-- | ext/js/data/permissions-util.js | 6 | ||||
-rw-r--r-- | ext/js/data/sandbox/anki-note-data-creator.js | 6 | ||||
-rw-r--r-- | ext/js/data/sandbox/array-buffer-util.js | 2 | ||||
-rw-r--r-- | ext/js/data/sandbox/string-util.js | 2 |
9 files changed, 22 insertions, 26 deletions
diff --git a/ext/js/data/anki-note-builder.js b/ext/js/data/anki-note-builder.js index c1b58cc2..7fbbf03c 100644 --- a/ext/js/data/anki-note-builder.js +++ b/ext/js/data/anki-note-builder.js @@ -16,12 +16,12 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ -/* global - * AnkiUtil - * TemplateRendererProxy - */ +import {deferPromise, deserializeError} from '../core.js'; +import {TemplateRendererProxy} from '../templates/template-renderer-proxy.js'; +import {yomichan} from '../yomichan.js'; +import {AnkiUtil} from './anki-util.js'; -class AnkiNoteBuilder { +export class AnkiNoteBuilder { constructor({japaneseUtil}) { this._japaneseUtil = japaneseUtil; this._markerPattern = AnkiUtil.cloneFieldMarkerPattern(true); diff --git a/ext/js/data/anki-util.js b/ext/js/data/anki-util.js index 3b433dc9..c08b562e 100644 --- a/ext/js/data/anki-util.js +++ b/ext/js/data/anki-util.js @@ -16,10 +16,12 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ +import {isObject} from '../core.js'; + /** * This class has some general utility functions for working with Anki data. */ -class AnkiUtil { +export class AnkiUtil { /** * Gets the root deck name of a full deck name. If the deck is a root deck, * the same name is returned. Nested decks are separated using '::'. diff --git a/ext/js/data/database.js b/ext/js/data/database.js index 205f6385..8e818d8b 100644 --- a/ext/js/data/database.js +++ b/ext/js/data/database.js @@ -16,7 +16,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ -class Database { +export class Database { constructor() { this._db = null; this._isOpening = false; diff --git a/ext/js/data/json-schema.js b/ext/js/data/json-schema.js index c22a0e1a..93c8cd59 100644 --- a/ext/js/data/json-schema.js +++ b/ext/js/data/json-schema.js @@ -16,11 +16,10 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ -/* global - * CacheMap - */ +import {clone} from '../core.js'; +import {CacheMap} from '../general/cache-map.js'; -class JsonSchema { +export class JsonSchema { constructor(schema, rootSchema) { this._schema = null; this._startSchema = schema; diff --git a/ext/js/data/options-util.js b/ext/js/data/options-util.js index e0cd0362..42e31b5f 100644 --- a/ext/js/data/options-util.js +++ b/ext/js/data/options-util.js @@ -16,12 +16,11 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ -/* global - * JsonSchema - * TemplatePatcher - */ +import {escapeRegExp, isObject} from '../core.js'; +import {TemplatePatcher} from '../templates/template-patcher.js'; +import {JsonSchema} from './json-schema.js'; -class OptionsUtil { +export class OptionsUtil { constructor() { this._templatePatcher = null; this._optionsSchema = null; diff --git a/ext/js/data/permissions-util.js b/ext/js/data/permissions-util.js index afec470c..d645f21e 100644 --- a/ext/js/data/permissions-util.js +++ b/ext/js/data/permissions-util.js @@ -16,11 +16,9 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ -/* global - * AnkiUtil - */ +import {AnkiUtil} from './anki-util.js'; -class PermissionsUtil { +export class PermissionsUtil { constructor() { this._ankiFieldMarkersRequiringClipboardPermission = new Set([ 'clipboard-image', diff --git a/ext/js/data/sandbox/anki-note-data-creator.js b/ext/js/data/sandbox/anki-note-data-creator.js index 33b4af6f..371a62a2 100644 --- a/ext/js/data/sandbox/anki-note-data-creator.js +++ b/ext/js/data/sandbox/anki-note-data-creator.js @@ -16,15 +16,13 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ -/* global - * DictionaryDataUtil - */ +import {DictionaryDataUtil} from '../../language/sandbox/dictionary-data-util.js'; /** * This class is used to convert the internal dictionary entry format to the * format used by Anki, for backwards compatibility. */ -class AnkiNoteDataCreator { +export class AnkiNoteDataCreator { /** * Creates a new instance. * @param {JapaneseUtil} japaneseUtil An instance of `JapaneseUtil`. diff --git a/ext/js/data/sandbox/array-buffer-util.js b/ext/js/data/sandbox/array-buffer-util.js index f96406bc..20715bd6 100644 --- a/ext/js/data/sandbox/array-buffer-util.js +++ b/ext/js/data/sandbox/array-buffer-util.js @@ -19,7 +19,7 @@ /** * Class containing generic ArrayBuffer utility functions. */ -class ArrayBufferUtil { +export class ArrayBufferUtil { /** * Decodes the contents of an ArrayBuffer using UTF8. * @param {ArrayBuffer} arrayBuffer The input ArrayBuffer. diff --git a/ext/js/data/sandbox/string-util.js b/ext/js/data/sandbox/string-util.js index c158fd1a..096ecffe 100644 --- a/ext/js/data/sandbox/string-util.js +++ b/ext/js/data/sandbox/string-util.js @@ -19,7 +19,7 @@ /** * Class containing generic string utility functions. */ -class StringUtil { +export class StringUtil { /** * Reads code points from a string in the forward direction. * @param {string} text The text to read the code points from. |