Commit graph

605 commits

Author SHA1 Message Date
Joshua A. Horton
ba48e7c311 chore(web): cleans a double-/ src file ref 2023-06-12 11:26:44 +07:00
Joshua A. Horton
3b9b0fbb37 feat(web): c8 for web/lm-worker 2023-06-12 10:59:36 +07:00
Joshua A. Horton
b41b619dfd feat(common/web): adds c8 for web/utils, web/keyboard-processor 2023-06-12 10:51:35 +07:00
Joshua A. Horton
a5358d1f8d chore(common/web): cleanup per PR review 2023-06-09 08:11:20 +07: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
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
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
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
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
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
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
Joshua A. Horton
c7be7a1bcb feat(common/models): profile for lm-worker pre-polyfill 2023-05-31 15:27:43 +07:00
Joshua A. Horton
beafe44a8e chore(web): Merge branch 'chore/web/finish-api-conversion' into chore/web/loose-ends 2023-05-30 14:44:12 +07:00
Joshua A. Horton
464b52e38d chore(web): Merge branch 'change/web/sample-page-rework' into chore/web/test-page-patchup 2023-05-30 12:59:30 +07:00
Joshua A. Horton
5bd3f962d3 chore(web): Merge branch 'fix/web/browser-toolbar-ui' into fix/web/browser-float-ui 2023-05-29 13:11:35 +07:00
Joshua A. Horton
60a4a88af3 fix(web): input-processor unit test - param missing 2023-05-26 15:19:19 +07:00
Joshua A. Horton
6d1a0b15ae fix(web): reverts prop name update 2023-05-25 09:10:02 +07:00
Joshua A. Horton
bc51f813e2 fix(common/models): predictive-text sourcemap fix 2023-05-24 15:47:23 +07:00
Marc Durdin
d1d6dc5d99 refactor(developer): compiler interface part 1 for wasm
This starts the refactor of the .kmn compiler interfaces for WASM,
moving more file writes into typescript and out of the compiler. Adds a
cleaner binding and structures for passing compile metadata back to
typescript for additional build steps (e.g. kvk, js builds).

Will rebase the Typescript-based KMW compiler onto this so it can start
to benefit from the refactoring.

* Fixes a minor issue with loading a .kvks file with an empty flags set.
* Adds a writeFileSync method to the compiler callback interfaces.
* Adds an e2e compiler test to verify that .kmx and .kvk are both
  correctly compiled.
2023-05-23 15:26:28 +07:00
Joshua A. Horton
2d6f80f2c9 chore(web): resolves domOverrides.ts 2023-05-23 13:12:02 +07:00
Joshua A. Horton
6ffd4a4c89 chore(web): Merge branch 'feature-esmodule-web-engine' into refactor/web/alerts-and-waits 2023-05-23 11:55:30 +07:00
Joshua A. Horton
2fe0d3c33a chore(web): Merge branch 'feature-esmodule-web-engine' into chore/web/hardware-event-keyboard 2023-05-23 11:50:54 +07:00
Joshua A. Horton
ca894d0991 chore(web): Merge branch 'master' into chore/web/merge-master-esmodule-a17s13-mid 2023-05-22 13:49:45 +07:00
Joshua A. Horton
48c8fa3324 fix(web): sticky desktop-OSK CAPS 2023-05-22 11:32:51 +07:00
Joshua A. Horton
a5a4a4018f fix(web): content-editable issues re: CKEditor 2023-05-22 11:32:48 +07:00
Joshua A. Horton
5547944991 fix(web): missed a needed .js -> .cjs 2023-05-18 08:24:20 +07:00