Commit Graph

1538 Commits

Author SHA1 Message Date
siikamiika
31a326fe63 add option for iframe popups 2020-04-05 20:03:42 +03:00
siikamiika
d20ece9f07 move frame offset forwarding code to a class 2020-04-05 19:57:37 +03:00
toasted-nutbread
3684a479c5
Merge pull request #424 from toasted-nutbread/dictionary-importer
Dictionary importer
2020-04-05 12:52:07 -04:00
toasted-nutbread
058f626efd
Merge pull request #423 from toasted-nutbread/text-source-map
Text source map
2020-04-05 12:51:56 -04:00
toasted-nutbread
9052ab8ebd Move dictionary import functionality into a new class 2020-03-30 20:51:20 -04:00
toasted-nutbread
02f7763f00 Add importDictionary function to Backend 2020-03-30 20:45:36 -04:00
toasted-nutbread
c193a703cc Move database creation into Backend 2020-03-30 20:39:04 -04:00
toasted-nutbread
8095d9138c Add isPrepared 2020-03-30 20:28:44 -04:00
toasted-nutbread
1a8bbf32d5 Make dictionaryExists public 2020-03-30 20:28:41 -04:00
toasted-nutbread
a6fedae9c7 Update bulkAdd implementation 2020-03-30 20:19:39 -04:00
toasted-nutbread
ae84d13757 Create simplified source map class 2020-03-28 18:17:00 -04:00
toasted-nutbread
a339bf69d3 Move set functions into core.js 2020-03-28 14:50:10 -04:00
toasted-nutbread
cbc7e2646d Add options 2020-03-28 10:25:57 -04:00
toasted-nutbread
047efaa3db Add support for returning pitch data from the database 2020-03-28 10:25:57 -04:00
toasted-nutbread
93f7278586 Update dictionary schema to support pitch accent data 2020-03-28 10:25:11 -04:00
toasted-nutbread
a0c4ce779d
Merge pull request #413 from toasted-nutbread/japanese-utility
Convert Japanese utilities to a module-like style
2020-03-27 22:53:45 -04:00
siikamiika
2c4fd648db remove stubs 2020-03-21 22:13:07 +02:00
siikamiika
46c6ad98f3 use dependency injection in QueryParser
Also fix an issue with settings update triggering a lookup on unprepared
QueryParser.
2020-03-21 22:13:07 +02:00
siikamiika
962c2a381f apply all options on profile change 2020-03-21 22:13:07 +02:00
toasted-nutbread
77a2cc60e9 Move basic string/character testing functions into a mixed/js/japanese.js 2020-03-21 13:18:34 -04:00
toasted-nutbread
a50b76fd21 Remove unnecessary sourceMapping population in convertAlphabeticToKana 2020-03-15 22:24:30 -04:00
toasted-nutbread
248a18dd72 Fix case issue 2020-03-15 22:24:30 -04:00
toasted-nutbread
264820f208 Add more unicode code point ranges 2020-03-15 22:24:30 -04:00
toasted-nutbread
0f15cca2df Convert Japanese utilities to a module-like style 2020-03-15 22:24:30 -04:00
toasted-nutbread
64fc0349a1 Update global declarations 2020-03-10 22:40:35 -04:00
toasted-nutbread
f7bbcb6df4
Merge pull request #408 from toasted-nutbread/use-code-point
Replace charCodeAt and fromCharCode with codePointAt and fromCodePoint
2020-03-10 19:24:24 -04:00
toasted-nutbread
36c55f0b17
Merge pull request #401 from toasted-nutbread/audio-refactor
Audio refactor
2020-03-10 19:20:34 -04:00
toasted-nutbread
72219ba353 Replace charCodeAt and fromCharCode with codePointAt and fromCodePoint 2020-03-09 21:58:06 -04:00
toasted-nutbread
0cbf427ab5 Update argument order 2020-03-09 21:00:57 -04:00
siikamiika
0112dbab33 fix searchQueryUpdate 2020-03-09 04:06:31 +02:00
toasted-nutbread
9cd4a52b9e Rename audio.js to audio-uri-builder.js 2020-03-07 21:57:26 -05:00
toasted-nutbread
aad4ab5ecc Rename audio functions using "url" to use "uri" 2020-03-07 21:57:26 -05:00
toasted-nutbread
391f3dd29a Update how audio URIs are built 2020-03-07 21:57:26 -05:00
toasted-nutbread
21d194d145 Make _audioInject internal to Backend 2020-03-07 21:56:15 -05:00
toasted-nutbread
426c1534e7 Remove marker restrictions 2020-03-07 21:51:56 -05:00
toasted-nutbread
79eb4bdc16 Remove bg/js/api.js 2020-03-07 21:49:04 -05:00
toasted-nutbread
8f9b6534c6 Move stringReplaceAsync
It is only used in AnkiNoteBuilder and it was originally created
for this purpose.
2020-03-07 21:47:48 -05:00
toasted-nutbread
7ac1c843a9 Use dependency injection for apiTemplateRender 2020-03-07 21:47:48 -05:00
toasted-nutbread
69cce49b0d Move Anki note generation functionality into a new class 2020-03-07 21:46:59 -05:00
toasted-nutbread
dceaa85309 Rename audio.js to audio-system.js 2020-03-07 21:43:51 -05:00
toasted-nutbread
6adf2cf63f Rename function 2020-03-07 21:43:51 -05:00
toasted-nutbread
a8eb50d96f Use dependency injection for getAudioUri implementation 2020-03-07 21:43:51 -05:00
toasted-nutbread
d8e2e69ca5 Use AudioSystem on the audio settings page 2020-03-07 21:42:18 -05:00
toasted-nutbread
cadcd72fad Use AudioSystem in Backend 2020-03-07 21:42:18 -05:00
toasted-nutbread
b8eb5e6016
Merge pull request #397 from toasted-nutbread/clipboard-monitor-refactor2
Clipboard monitor refactor
2020-03-07 21:41:45 -05:00
toasted-nutbread
eea9dc68b9 Fix runtime.lastError error on startup in Firefox 2020-03-07 17:41:57 -05:00
toasted-nutbread
ba64f34df1 Mark fields as private 2020-03-07 10:48:56 -05:00
toasted-nutbread
93aa275d82 Use explicit dependency injection for ClipboardMonitor 2020-03-07 10:47:30 -05:00
toasted-nutbread
7822230b7f Use events for ClipboardMonitor 2020-03-07 10:41:31 -05:00
siikamiika
24d9001b14 fix options object location 2020-03-07 14:27:44 +02:00
siikamiika
387e93dbbc use docSentenceExtract in QueryParser 2020-03-07 14:20:08 +02:00
siikamiika
de8d9e6bf1 fix return type 2020-03-04 05:28:22 +02:00
siikamiika
9ceb663f29 add missing runtime message for backendPrepared 2020-03-03 00:05:01 +02:00
siikamiika
e6347a94e7 prepare Backend for browser_action 2020-03-02 23:26:55 +02:00
siikamiika
e0edb30efd fix Backend prepare issues in settings 2020-03-02 11:18:09 +02:00
siikamiika
bd48d2f919 fix Yomichan core message issues 2020-03-02 10:35:46 +02:00
siikamiika
967e99b7f6 ensure Backend prepare in other places 2020-03-02 04:51:45 +02:00
siikamiika
e6e5f23cf8 fix API calls when Backend isn't ready yet 2020-03-02 00:39:15 +02:00
siikamiika
2abf46b6fa simplify backend prepare 2020-03-01 23:06:37 +02:00
siikamiika
b3994acbac
Merge pull request #384 from siikamiika/fix-non-primary-dictionary-format
compatibility transform non-primary definitions
2020-03-01 21:43:36 +02:00
toasted-nutbread
a4b0a556d4
Merge pull request #380 from toasted-nutbread/anki-templates-file
Load default Anki field templates from a file
2020-03-01 14:41:48 -05:00
siikamiika
9af8f999f4 compatibility transform non-primary definitions 2020-03-01 21:26:45 +02:00
toasted-nutbread
52d8d658a2 Fix empty keys definitions and add Shift/Alt checks 2020-02-29 10:00:28 -05:00
toasted-nutbread
8e29da0c6b Load default Anki field templates from a file 2020-02-27 20:33:13 -05:00
toasted-nutbread
fdfc2d33bb Simplify event to use bind 2020-02-26 21:19:22 -05:00
toasted-nutbread
2d109c3e56 Use functions directly rather than wrapping in () => {} when args are same 2020-02-26 21:17:01 -05:00
toasted-nutbread
8bc1a40914 Use .bind instead of () => {} 2020-02-26 21:01:40 -05:00
toasted-nutbread
78dc501d02 Move event handler definitions 2020-02-26 20:07:14 -05:00
toasted-nutbread
d17af2cbab Move event handler definitions 2020-02-26 19:48:53 -05:00
toasted-nutbread
13874e962b Refactor DisplaySearch.onKeyDownIgnoreKeys 2020-02-26 19:34:25 -05:00
toasted-nutbread
8d5d034516 Move event handler definitions 2020-02-26 19:22:32 -05:00
toasted-nutbread
007789ffa0 Organize, remove unnecessary null checks 2020-02-26 19:08:35 -05:00
toasted-nutbread
0c1b250b4f Move event handler function bodies 2020-02-26 19:04:21 -05:00
toasted-nutbread
0b5a26e64a Update dictEnabledSet and dictConfigured to use for of 2020-02-25 22:15:49 -05:00
toasted-nutbread
b391704f3d Use for of 2020-02-25 22:13:06 -05:00
toasted-nutbread
7b97138ad1 Changed type returned by apiTextParseMecab to avoid using for in 2020-02-25 22:13:03 -05:00
toasted-nutbread
6bd714fec0 Use Map to avoid using for in 2020-02-25 22:12:00 -05:00
toasted-nutbread
2e0b3a6ccc Refactor dictNoteFormat 2020-02-25 20:38:18 -05:00
toasted-nutbread
3795af6cb5 Use Object.entries rather than for in 2020-02-25 19:54:59 -05:00
siikamiika
a0d5d9a821 fix opening options in new tab 2020-02-26 01:54:40 +02:00
toasted-nutbread
15f79bc78b Fix popupScalingFactor being limited to integer values 2020-02-23 21:12:43 -05:00
toasted-nutbread
7697643966 Reject with a consistent error 2020-02-23 11:59:57 -05:00
toasted-nutbread
5a5c18371c Use textContent instead of innerText 2020-02-23 11:58:17 -05:00
toasted-nutbread
53220af68e Don't use innerHTML 2020-02-23 11:49:52 -05:00
toasted-nutbread
c0d91bffc4 Add no-shadow 2020-02-22 14:53:02 -05:00
toasted-nutbread
56567903a5 Fix unnamed functions 2020-02-22 14:52:09 -05:00
toasted-nutbread
c3e7280365 Simplify ternary 2020-02-22 14:52:09 -05:00
toasted-nutbread
aa76113e75 Fix block padding 2020-02-22 14:52:09 -05:00
toasted-nutbread
6d75637ace Fix brace style issues 2020-02-22 14:52:08 -05:00
toasted-nutbread
1944f7a215 Fix indent 2020-02-22 14:52:08 -05:00
toasted-nutbread
54bb702b84 Updates for PR feedback 2020-02-22 14:43:06 -05:00
toasted-nutbread
f143632f28 Simplify only assignment 2020-02-22 14:43:06 -05:00
toasted-nutbread
19fb7dacb4 Assign result properties to variables to reduce number of lookups 2020-02-22 14:43:06 -05:00
toasted-nutbread
69b5007842 Reduce number of redundant Map.get calls in dictTermsMergeByGloss 2020-02-22 14:43:06 -05:00
toasted-nutbread
45c685d00a Add variables for expression and reading 2020-02-22 14:43:06 -05:00
toasted-nutbread
50a171bc75 Simplify update of mergedIndices 2020-02-22 14:43:06 -05:00
toasted-nutbread
89af73b61b Use Map 2020-02-22 14:43:06 -05:00
toasted-nutbread
5e8b408a23 Change secondarySearchTitles to secondarySearchDictionaries 2020-02-22 14:43:06 -05:00
toasted-nutbread
b6718dc4a4 Use findTerms instead of findTermsInternal 2020-02-22 14:43:06 -05:00
toasted-nutbread
1c828d205c Remove unused dictRowsSort 2020-02-22 14:43:06 -05:00
toasted-nutbread
cc2e21cd86 Use Map for dictEnabledSet 2020-02-22 14:43:05 -05:00
toasted-nutbread
163211ade3 Use Map 2020-02-22 14:37:10 -05:00
toasted-nutbread
a4bdffbd9d Use Map 2020-02-22 14:37:10 -05:00
toasted-nutbread
5587116bae Simplify spread 2020-02-22 14:37:10 -05:00
toasted-nutbread
bc94970a46 Use Map 2020-02-22 14:37:10 -05:00
toasted-nutbread
cae8ed2767 Use Array.isArray instead of hasOwn 2020-02-22 14:37:10 -05:00
toasted-nutbread
1f62dfa572 Use Set 2020-02-22 14:37:10 -05:00
toasted-nutbread
886278b19d Use Set 2020-02-22 14:36:07 -05:00
toasted-nutbread
452eec8a88 Use Map 2020-02-22 14:36:07 -05:00
toasted-nutbread
77a3dadd0b Make schema errors have more information 2020-02-22 13:25:28 -05:00
toasted-nutbread
d76ab91f83 Update validate function name in close 2020-02-22 12:45:50 -05:00
toasted-nutbread
86d0fb6643 Require format to be 1, 2, or 3 2020-02-22 12:09:34 -05:00
toasted-nutbread
62d4f68412 Define old tagMeta format in index file 2020-02-22 12:09:34 -05:00
toasted-nutbread
086fefc921 Validate data before importing 2020-02-22 12:09:34 -05:00
toasted-nutbread
d620f40448 Remove old dictionary import functions 2020-02-22 12:09:34 -05:00
toasted-nutbread
177bca4865 Create new dictionary import function 2020-02-22 12:09:33 -05:00
toasted-nutbread
212e5428e8 Mark private functions in database.js 2020-02-22 12:09:33 -05:00
toasted-nutbread
a8b1e40a1e Close to prevent hangs 2020-02-19 19:59:24 -05:00
toasted-nutbread
0f46e3a093 Use a token to ensure that messages are coming from Yomichan 2020-02-17 11:02:21 -05:00
toasted-nutbread
aee16c4431 Check origin on window messages 2020-02-16 23:41:17 -05:00
toasted-nutbread
e173a71ba6 Fix CSS injection on about:blank pages 2020-02-16 21:46:13 -05:00
toasted-nutbread
9fd6ee382d Create more generic function for injecting stylesheets 2020-02-16 21:46:13 -05:00
toasted-nutbread
d3aefdc4e3 Override setCustomOuterCss instead of Popup.injectOuterStylesheet 2020-02-16 21:45:30 -05:00
toasted-nutbread
b6a50e234c Change parameter name 2020-02-16 21:44:45 -05:00
toasted-nutbread
2c3f510010 Allow apiInjectStylesheet to inject a URL 2020-02-16 21:43:35 -05:00
toasted-nutbread
dcd243c9e9 Update how popups are created 2020-02-16 18:59:08 -05:00
toasted-nutbread
070ae70f7c Create EventListenerCollection class 2020-02-16 18:47:57 -05:00
toasted-nutbread
faf15c08aa Rename optionsUpdate event to optionsUpdated
Past tense better indicates that the options were changed, but no data
is being included as part of the event. It is also more consistent with
the other event names the yomichan object currently provides.
2020-02-14 22:34:44 -05:00
toasted-nutbread
853faaf48c
Merge pull request #358 from toasted-nutbread/general-refactoring
General refactoring
2020-02-14 21:25:25 -05:00
toasted-nutbread
4dd4926672 Remove unused apiGetDisplayTemplatesHtml and apiGetQueryParserTemplatesHtml 2020-02-14 20:51:10 -05:00
siikamiika
c09a3ded1d
Merge pull request #357 from siikamiika/simplify-display-prepare
Simplify display prepare
2020-02-14 11:00:36 +02:00
toasted-nutbread
0e6b75438a Use Map for Translator.tagCache 2020-02-13 20:50:30 -05:00
toasted-nutbread
e3c871bc00 Remove unused handlebarsRenderStatic 2020-02-13 20:50:30 -05:00
siikamiika
e645296b1b fix Map set in Translator.buildTermFrequencies 2020-02-14 01:12:28 +02:00
siikamiika
d7e1ef01d8 use Promise.all to await dependencies 2020-02-13 16:26:45 +02:00
siikamiika
df37acd17f rename display initialize methods to prepare 2020-02-13 01:59:26 +02:00
toasted-nutbread
c8e7a1543e Remove unused 2020-02-11 22:25:48 -05:00
toasted-nutbread
e2ac478cb7 Define more globals 2020-02-11 22:22:16 -05:00
toasted-nutbread
ab9d2b38e0 Remove redundant declaration 2020-02-11 22:22:16 -05:00
toasted-nutbread
4629fb3639 Change no-undef from off to error 2020-02-11 22:22:16 -05:00
toasted-nutbread
9c5ad3ea67
Merge pull request #346 from toasted-nutbread/dictionary-schemas
Dictionary schemas
2020-02-11 21:21:37 -05:00
siikamiika
9c98c631af fix async issues 2020-02-10 22:09:23 +02:00
siikamiika
b7f347ff4f remove newline from template 2020-02-10 21:19:18 +02:00
siikamiika
6c63a17d66 query parser html templates 2020-02-10 21:19:18 +02:00
siikamiika
14b9f4a827 preserve search page mode on manual search 2020-02-10 01:31:47 +02:00
siikamiika
460d306f60 update popup search with chrome.tabs.sendMessage 2020-02-10 01:16:06 +02:00
siikamiika
89729d8c20 reuse existing popup window 2020-02-10 00:39:05 +02:00
siikamiika
56f1f8384d use parseUrl in Backend 2020-02-10 00:09:29 +02:00
siikamiika
4508efb9a6 stop clipboard monitor before starting it again 2020-02-09 22:41:20 +02:00
siikamiika
d4e74a0572 fix existing tab focus 2020-02-09 22:16:52 +02:00
siikamiika
21bad6c6e3 simplify setQuery kana conversion 2020-02-09 21:51:33 +02:00
siikamiika
4e59c2d556 hide native popup option for firefox mobile 2020-02-09 21:51:33 +02:00
siikamiika
1797edc7d8 check chrome.windows support before using 2020-02-09 21:51:33 +02:00
siikamiika
9fbd47e4ea rename sameTab --> existingOrNewTab 2020-02-09 21:51:33 +02:00
siikamiika
722a2a4bce disable internal clipboard monitor in native popup 2020-02-09 21:51:33 +02:00
siikamiika
8a295c4bb0 fix constant usage from wrong scope 2020-02-09 21:51:33 +02:00
siikamiika
c16c38638b hide search input in native popups 2020-02-09 21:51:33 +02:00
siikamiika
8d56d6ffcb handle closing already closed popup 2020-02-09 21:51:33 +02:00
siikamiika
d7f0369281 use Promise 2020-02-09 21:51:33 +02:00
siikamiika
91682dd633 add permission check to formRead 2020-02-09 21:51:33 +02:00
siikamiika
90a5d79570 use ClipboardMonitor in Backend 2020-02-09 21:51:33 +02:00
siikamiika
c685fd0e5f extract ClipboardMonitor from DisplaySearch 2020-02-09 21:51:33 +02:00
siikamiika
37a922adc0 fix settings page checkbox 2020-02-09 21:51:33 +02:00
siikamiika
222f869c84 fix search page hotkey 2020-02-09 21:51:33 +02:00
siikamiika
939ad42dac add global clipboard monitor that spawns popups
TODO: refactor the search page clipboard monitor and popup clipboard
monitor to use a common ClipboardMonitor class
2020-02-09 21:51:33 +02:00
siikamiika
f29abfc511 use correct optionsContext 2020-02-09 21:51:33 +02:00
siikamiika
679e42c21c move apiClipboardGet Firefox handling to Backend 2020-02-09 21:51:33 +02:00
siikamiika
ddc7c71e4f add support for native popup windows 2020-02-09 21:51:33 +02:00
toasted-nutbread
d5708de4ee Fix undefined reject 2020-02-08 20:49:01 -05:00
toasted-nutbread
f85f92c665 Remove trailing comma 2020-02-08 20:48:47 -05:00
toasted-nutbread
165959ef06 Move japanese.js into bg 2020-02-08 20:45:30 -05:00
toasted-nutbread
4b17e79cb8 Add schemas for dictionary data 2020-02-08 12:28:46 -05:00
toasted-nutbread
4e2b317d54
Merge pull request #345 from toasted-nutbread/json-schema-improvements
JSON schema improvements
2020-02-08 12:28:06 -05:00
toasted-nutbread
e8701cb950 Hide anki-invalid-response-error when there is no error 2020-02-02 14:53:32 -05:00
toasted-nutbread
3c28c7dd7c Fix init 2020-02-02 11:22:22 -05:00
toasted-nutbread
fff1e67a5e Improve schema path when using getPropertySchema 2020-02-02 11:18:13 -05:00
toasted-nutbread
b1fc9c024a Update how property schemas are returned 2020-02-02 11:13:26 -05:00
toasted-nutbread
ea808024d7 Fix missing else 2020-02-02 11:04:38 -05:00
toasted-nutbread
3bef380e3b Add improved error information when validation fails 2020-02-02 10:51:48 -05:00
toasted-nutbread
fca5c75151 Fix ifSchema 2020-02-02 10:35:41 -05:00
toasted-nutbread
7c9fe2c6cf Fix conditional logic 2020-02-02 10:17:16 -05:00
toasted-nutbread
964db74108 Update schema validation to throw errors 2020-02-02 10:12:01 -05:00
toasted-nutbread
36e641e001 getSchemaOrValueType return null 2020-02-02 10:12:01 -05:00
toasted-nutbread
0171d86b28 Fix maxLength check 2020-02-02 10:12:01 -05:00
toasted-nutbread
52b623b5cd Improve getPropertySchema's type detection 2020-02-02 10:12:01 -05:00
toasted-nutbread
31dbeab67c Add validate on JsonSchema 2020-02-02 10:12:01 -05:00
toasted-nutbread
980a1ddf74 Improve support for array schemas 2020-02-02 10:12:01 -05:00
toasted-nutbread
a844698f15 Return unconstrained schema when additionalProperties is true/undefined 2020-02-02 10:12:01 -05:00
toasted-nutbread
203216986e Add support for conditionals 2020-02-02 10:12:01 -05:00
toasted-nutbread
6595715f7c Add support for allOf, anyOf, oneOf, and not 2020-02-02 10:12:01 -05:00
toasted-nutbread
0b474751b5 Add simplified isObject test 2020-02-02 10:12:01 -05:00
toasted-nutbread
f23e0c9c95 Validate Deinflector.ruleTypes 2020-02-02 10:09:19 -05:00
siikamiika
b8326138a3 add scannable tags for expression and reading 2020-02-02 13:57:30 +02:00
toasted-nutbread
d5c0155a82 Update main dictionary value when changing modifying profile 2020-02-01 21:00:43 -05:00
toasted-nutbread
8eaa0334ac Remove option for dictionaries that aren't installed after changing values 2020-02-01 21:00:43 -05:00
toasted-nutbread
55047def9d Separate the functionality of updateMainDictionarySelect
One function now updates the options, and another handles updating the value.
The options are no longer mutated due to updating this <select>'s available options.
2020-02-01 21:00:43 -05:00
toasted-nutbread
748cd27ad0 Remove argument from onDictionaryOptionsChanged 2020-02-01 21:00:43 -05:00
toasted-nutbread
566012f228 Use await 2020-02-01 21:00:43 -05:00
toasted-nutbread
5541aae201 Assign valid score during construction 2020-02-01 21:00:27 -05:00
toasted-nutbread
daf0385448 Add declaration 2020-02-01 21:00:27 -05:00