Commit graph

1707 commits

Author SHA1 Message Date
Joshua A. Horton
504e638321 chore(web): Merge branch 'feature-esmodule-web-engine' into chore/web/prep-feature-gestures-for-rebase 2023-06-09 11:12:22 +07:00
Marc Durdin
fde428fb70 chore(developer): add logLevel to kmc
Tidies up silent vs quiet vs verbose by adding logLevel as an option.

* Notes that we need to consolidate all the various CompilerOptions
  interfaces before they get too much further out of hand.
* Cleans up a couple of other minor TODO items.
2023-06-09 10:23:06 +07:00
Joshua A. Horton
a5358d1f8d chore(common/web): cleanup per PR review 2023-06-09 08:11:20 +07:00
Steven R. Loomis
4febfcb451 feat(developer): improve tran/bksp tests, other improvements 🙀
- delete dead code
- share common ID regex for vars
- move bksp/finl/order tests into tran

For: #7377
2023-06-08 18:39:44 -05:00
Steven R. Loomis
26053a5ba3
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-06-08 18:10:11 -05:00
Joshua A. Horton
d5b2e278a9 fix(web): noticed an extra dep or two among the helpers 2023-06-08 15:51:08 +07:00
Joshua A. Horton
db4f0a3664 fix(web): fixed wrapped-worker helper-detection ignore 2023-06-08 15:35:34 +07:00
Marc Durdin
c02b271394 chore: cleanup unneeded changes 2023-06-08 15:17:09 +07:00
Marc Durdin
f6e52270ed chore(developer): Merge branch 'feature-kmc-kmw' into feat/developer/kmc-analyze 2023-06-08 14:59:28 +07:00
Joshua A. Horton
734ebee46c chore(web): cleans up console msg 2023-06-08 14:54:48 +07:00
Joshua A. Horton
fed4618d02 feat(common/models): tslib use, treeshaking in lm-worker 2023-06-08 14:39:55 +07:00
Joshua A. Horton
9a6a2f88bf feat(web): extends capabilities of the tslib treeshaker components, finalizes coverage 2023-06-08 14:09:19 +07:00
Joshua A. Horton
a37d3236ac refactor(web): extracts treeshaker into tslib helper-project 2023-06-08 14:09:18 +07:00
Joshua A. Horton
77fc750186 chore(web): cleanup per PR review 2023-06-08 13:06:07 +07:00
Joshua A. Horton
e318c5cb9c chore(web): build dependency links 2023-06-08 13:03:26 +07:00
Joshua A. Horton
06434953a8 chore(web): KMW use of importHelpers 2023-06-08 13:03:25 +07:00
Joshua Horton
8827158902
Merge pull request #8903 from keymanapp/change/web/filesize-fixes
change(web): more efficient worker-wrap encoding, use of hidden-identifier minification 🧩
2023-06-08 12:59:37 +07:00
Joshua Horton
dd358c8adc
Merge pull request #8905 from keymanapp/chore/developer/web-reintegration
chore(developer, web): developer host page linkage to modularized KMW 🧩
2023-06-08 12:59:28 +07:00
Marc Durdin
9f71f093cb chore(common): export KmxFileReaderError 2023-06-08 08:51:08 +07:00
Marc Durdin
a1fdc7b133 refactor(developer): CompilerOptions as shared type
Also fixes handling of kmx errors in kmc-package.
2023-06-08 05:42:23 +07:00
Marc Durdin
4c3acaf651 chore(common): update restructure to support typescript 2023-06-08 05:40:48 +07:00
Joshua A. Horton
49788c9364 change(web): double-encoded -> single-encoded 2023-06-07 12:39:37 +07:00
Joshua A. Horton
4fb56e150d chore(web): Merge branch 'feature-esmodule-web-engine' into change/web/filesize-fixes 2023-06-07 12:33:49 +07:00
Joshua A. Horton
bcbe31c7f6 feat(web): adds unit test to catch partial-stub problem early 2023-06-07 09:50:36 +07:00
Steven R. Loomis
ad1d4e734c feat(common): fix bug in build-tran 🙀
For: #7377
2023-06-06 18:37:07 -05:00
Steven R. Loomis
8548b0fd33 Merge remote-tracking branch 'upstream/master' into feat/developer-7377-transform-format-epic-ldml3 2023-06-06 09:45:21 -05:00
Joshua Horton
ed54530d8c
Merge pull request #8895 from keymanapp/feat/web/release-filesize-profiling
feat(web): release-configuration filesize profiling 🧩
2023-06-06 15:22:47 +07:00
Marc Durdin
fdd313a6a2 chore(common): cleanup error handling for KmxFileReader 2023-06-06 15:22:00 +07:00
Joshua A. Horton
718ca50b23 chore(web): Merge branch 'master' into chore/web/feature-esmodule-a17s14-mid-update 2023-06-06 12:37:15 +07:00
Joshua A. Horton
2b0a92725f chore(web): Merge branch 'feature-esmodule-web-engine' into chore/web/loose-ends 2023-06-06 08:56:08 +07:00
Steven R. Loomis
70fcea815a feat(developer): tran support 🙀
- tran builder

For: #7377
2023-06-05 19:18:59 -05:00
Marc Durdin
eaf7a6b628 chore(developer): merge changed interfaces in compiler 2023-06-05 16:34:23 +07:00
Marc Durdin
3f993bd651 chore: Merge branch 'master' into feat/typescript-keymanweb-compiler 2023-06-05 15:57:42 +07:00
Joshua A. Horton
a7492957c3 chore(web): Merge branch 'feature-esmodule-web-engine' into chore/web/test-page-patchup 2023-06-05 15:08:36 +07:00
Joshua A. Horton
351cedf25f fix(common/web): fixes Node-worker-reliant input-processor integration tests 2023-06-05 12:19:02 +07:00
Steven R. Loomis
2054eeb703 feat(developer): tran support 🙀
- support regex format for sets and unicodeSets
- support mapFrom and mapTo detection

For: #7377
2023-06-02 18:31:25 -05:00
Steven R. Loomis
4b81137a61 feat(developer): section dependencies 🙀
- fix test helper for dependencies
- moved VariableParser and MarkerParser into common

For: #7377
2023-06-02 16:58:39 -05:00
Steven R. Loomis
9b177b2f00 feat(developer): section dependencies 🙀
- make explicit section dependencies, add a test

For: #7377
2023-06-02 15:19:00 -05:00
Marc Durdin
0ec5c08b26 chore(common): move const url to class prop
We still have cjs modules that rely on the ldml-keyboard-xml-reader, and
this meant that an exported const was being calculated with an invalid
meta url, which crashed the cjs module require() call.
2023-06-02 12:28:13 +07:00
Marc Durdin
4e535832d8 chore: cleanup 2023-06-02 11:45:59 +07:00
Marc Durdin
a281e1ac60 chore(common): remove redundant path 2023-06-02 11:43:25 +07:00
Marc Durdin
b313272250 chore(common): remove url module ref from common/web/types
The url module is a node module. We need to move responsibility for
resolving the path of the LDML XML <import> statements out of
common/web/types, and into the ultimate consumer, so it's now surfaced
as an option, along with a helper constant that reports the
import.meta.url-relative base path of the standard imports that are
compiled into common/web/types.

This hopefully means we can use this module in both browser and node
contexts without trouble.
2023-06-02 11:38:17 +07:00
Marc Durdin
c3458d040c refactor(developer): move filename consistency check to kmc
kmcmplib no longer has any filesystem access, so it cannot verify if a
referenced filename in a source file has the same case as the actual
filename on disk (a risk when moving projects between platforms). So
I opted to move this to the `loadFile` callback in kmc, which is the
only place where filesystem is actually accessed, and added
corresponding unit test.

Small additional fixes here:

1. Move from `Buffer` to `Uint8Array` in all kmc-* modules, so that we
   remove that barrier to running on web.
2. Use `callbacks.loadFile` instead of `callbacks.fs.readFileSync`, so
   that we can be sure to run the filename consistency check.
3. Fixed kps parser silently swallowing xml errors on load.
4. Added silent mode to NodeCompilerCallbacks so we could cleanly test
   the new filename consistency hint.
5. Noted a location where we still have NodeJS deps in kmc-ldml.
2023-06-01 15:11:38 +07:00
Joshua A. Horton
75058eb623 chore(web): updates per PR review 2023-06-01 15:04:49 +07:00
Joshua A. Horton
c95ba9d94d fix(common/models): missing lm-worker dependencies 2023-06-01 14:53:50 +07:00
Joshua A. Horton
c5f527c204 chore(web): cleans up temp time-profiling code for the lm-worker 2023-06-01 08:54:47 +07:00
Joshua A. Horton
5e668e1567 change(web): worker-embedding via JSON.stringify 2023-06-01 08:48:04 +07:00
Marc Durdin
9d351f4798 chore(developer): verify kvks files and report errors
Fixes #8886.

.kvks compiler now returns helpful errors for xml parse failures and
schema validation errors, and for invalid virtual key codes. Introduces
extra infrastructure for reporting and unit testing messages to kmc-kmn.

This also fixes unhandled xml load exceptions and simplifies the error
reporting coming out of the kvks loader, on the basis that only one type
of error was being reported anyway.
2023-06-01 05:02:26 +07:00
Joshua A. Horton
fa1d7f723c docs(web): better comments in lm-worker build-bundler 2023-05-31 15:54:12 +07:00
Joshua A. Horton
5e93bb0189 feat(web): writes profile logs to file, outputs within new /web/build/profiling folder 2023-05-31 15:51:50 +07:00