Commit graph

2265 commits

Author SHA1 Message Date
Marc Durdin
8a4c005d40 chore(common): define constants for file types
Now that we have the file type detection in place, we can replace
existing references to the file extensions, where possible, with the
constant declarations. While we could rely on TypeScript's typing to use
string-based values, this helps us to avoid using file extensions
directly in string transforms, regex, etc, and use the `KeymanFileTypes`
alias instead.

Note that only references in common/web, and kmc-* projects have been
touched. References in other Developer projects have not been touched,
as some of those are not yet ESM, so that needs to be addressed first.
2023-06-12 09:17:09 +07:00
Marc Durdin
d2029c40cd chore(common): Create file-types.ts module
This module is used for identification of Keyman source and binary file
formats by file extension. It is not yet appropriate to use for
constants; this will come in a future commit.
2023-06-12 08:20:02 +07:00
Marc Durdin
8bfd4c0bae chore(developer): refactor LdmlCompilerOptions
LdmlCompilerOptions is now based on the shared CompilerOptions. Also
fixes command line parameter inheritance for sub-commands.
2023-06-10 14:27:40 +07:00
Marc Durdin
459f42b273 chore(developer): refactor CompilerOptions
Part 1 of the `CompilerOptions` reorg. kmc now uses `CompilerOptions`
throughout, and `CompilerBaseOptions` maps to the set of options
available to all activities.
2023-06-10 14:27:39 +07:00
Marc Durdin
cc956117cf chore: remove commented code 2023-06-10 14:26:26 +07:00
Marc Durdin
db06dfd810 chore(developer): Merge branch 'feature-kmc-kmw' into feat/developer/kmc-analyze 2023-06-09 14:00:14 +07:00
Marc Durdin
fc043c960e chore: tweak CompilerLogLevel 2023-06-09 13:02:17 +07:00
Marc Durdin
3b5c38aa80 feat(developer): use new memory-based kmx compiler in analyze
* Also adds info messages for scanning.
2023-06-09 12:38:20 +07:00
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