Commit graph

1707 commits

Author SHA1 Message Date
Joshua A. Horton
6d93a48cbb chore(web): modularizes base recognizer, but not its tools or pages 2023-06-20 12:41:37 +07:00
Joshua A. Horton
d033dca152 chore: Merge branch 'feature-esmodule-web-engine' into chore/update-feature-gestures-to-base-a17s15-mid 2023-06-20 12:36:55 +07:00
Marc Durdin
0bd2ca4821 refactor(developer): kmc-kmw becomes component of kmc-kmn
Moves kmc-kmw to being a sub-component of kmc-kmn, as it can never be
independently instantiated anyway. Reorganized tests accordingly.

Note that c8 is currently disabled for kmw-compiler, until we add unit
tests for it.
2023-06-20 11:52:23 +07:00
Joshua Horton
89e7393665
Merge pull request #9025 from keymanapp/chore/web/esbuild-config-cleanup
chore(web): esbuild configuration cleanup 🧩
2023-06-19 14:04:11 +07:00
Joshua A. Horton
b497dc3ba2 chore(web): Merge remote-tracking branch 'origin/chore/web/centralize-kmw-tsconfigs' into chore/web/centralize-kmw-tsconfigs 2023-06-19 14:03:45 +07:00
Joshua A. Horton
f2e3effa4c chore(web): Merge branch 'feature-esmodule-web-engine' into chore/web/centralize-kmw-tsconfigs 2023-06-19 14:03:20 +07:00
Joshua Horton
0532405335
Merge pull request #8995 from keymanapp/change/srcmap-cleanup-and-c8-use
change(web): config, sourcemap cleanup + adds some c8 reporting 🧩
2023-06-19 14:01:40 +07:00
Joshua A. Horton
093daea59b chore(web): tweaks per review 2023-06-19 12:18:16 +07:00
Marc Durdin
adfa032e6f feat(developer): add &displayMap system store
The &displayMap system store adds support for a mapping file that remaps
the On Screen Keyboard files -- .kvks and .keyman-touch-layout, at
compile time, to new ranges. This is specifically intended to resolve a
limitation of unattached marks and diacritics which display
inconsistently across platforms; this is described in more detail in
issue #9031.
2023-06-17 16:21:26 +07:00
Marc Durdin
e9391f57ff chore(developer): refactor osk rewriter
Moves common remapping code for the OSK rewriter into common/web/types
so that it can be consumed by the kmn and kmw compilers soon. Also
cleans up the command line instantiation of the analyze tools, although
the rewrite tool is less likely to be used once we have the compiler
integration in place.
2023-06-17 15:03:02 +07:00
Joshua A. Horton
a92f915e60 chore(web): Merge branch 'chore/web/cleanup-kmw-headless-module-builds' into chore/web/esbuild-config-cleanup 2023-06-16 12:47:20 +07:00
Joshua A. Horton
569662237e fix(web): build.sh dependency on the centralized bundling stuff 2023-06-16 11:36:03 +07:00
Joshua A. Horton
eccbd49abb change(web): centralizes /web project bundling configs 2023-06-16 11:35:10 +07:00
Joshua A. Horton
9ae9a5e297 change(common/web): generalizes the entrypoint mapper func 2023-06-16 10:33:03 +07:00
Joshua A. Horton
194139be03 chore(web): paren spacing cleanup 2023-06-15 15:49:38 +07:00
Joshua A. Horton
6e8432383b chore(web): applies bulk of review suggestions 2023-06-15 15:48:53 +07:00
Joshua A. Horton
66002a4128 chore(web): relocates tslib-treeshaker def, consolidates it further 2023-06-15 10:56:44 +07:00
Joshua A. Horton
b4b1c5e2ac chore(web): partial centralization of common/web KMW module bundling config 2023-06-15 10:33:29 +07:00
Marc Durdin
3d56bc667e chore(common): export KvksFileWriter 2023-06-14 15:55:56 +07:00
Joshua A. Horton
b65df8243b chore(web): cleanup of lm-worker & related build scripts, removal of lower-level bundles 2023-06-14 15:51:09 +07:00
Joshua A. Horton
cb2029bf49 chore(web): cleanup for purely-headless KMW main-thread-module build scripts, esbuild configs 2023-06-14 15:37:30 +07:00
Joshua A. Horton
4dde7453f5 chore(web): Merge branch 'change/srcmap-cleanup-and-c8-use' into chore/web/centralize-kmw-tsconfigs 2023-06-14 15:15:05 +07:00
Joshua A. Horton
22ae456e0a fix(common/models): prior commit(s) broke npm run tsc 2023-06-14 15:14:40 +07:00
Joshua A. Horton
626e1855a3 chore(web): Merge branch 'change/srcmap-cleanup-and-c8-use' into chore/web/centralize-kmw-tsconfigs 2023-06-14 14:59:18 +07:00
Joshua A. Horton
75347ebc6f change(web): internal event names -> lowercase convention 2023-06-14 10:30:56 +07:00
Joshua A. Horton
3ce99b9c73 chore(web): cleanup re set_keyman_standard_build_path 2023-06-14 10:00:39 +07:00
Joshua A. Horton
095bf97626 chore(web): kmw-main tsconfig -> /web, redirect in /common/web 2023-06-14 08:22:05 +07:00
Joshua A. Horton
6a30efe60f chore(web): kmw-worker tsconfig -> common/models 2023-06-14 08:16:15 +07:00
Marc Durdin
d19f9027b7
Merge pull request #8994 from keymanapp/chore/developer/complete-error-checking-in-kmc-analyze
chore(developer): complete error checking in kmc-analyze 🗜
2023-06-13 23:10:46 +10:00
Joshua A. Horton
52d4feadd3 chore(web): centralizes common/web tsconfigs 2023-06-13 15:52:40 +07:00
Joshua A. Horton
e876229312 chore(common/models): centralizes the worker tsconfig settings 2023-06-13 15:22:39 +07:00
Joshua A. Horton
96224f528a chore(common/models): package.json script use of gosh ./build.sh 2023-06-13 14:31:04 +07:00
Marc Durdin
f7b524b8db
Merge pull request #8984 from keymanapp/chore/common/web/file-types-module-first-steps
feat(common): add file-types.ts module 🗜
2023-06-13 12:56:46 +10:00
Marc Durdin
cbc5b13034 fix(developer): keep kmc-kmn messages within namespace
Fixes #8998.

kmc-kmn messages were broken down into sub-namespaces, but the range
overlapped the reserved namespace mask range. Fixed the message values,
added a new test to the verifyCompilerMessagesObject function to verify
that messages don't creep outside their namespace, and defined new
masks (in CompilerErrorSeverity enum... hmm) to help.

I opted to remove the leading `0` in the messages for kmc-kmn as I had
to correct a number of them anyway, but not the messages in remaining
units at this time (it's not an error, but just slightly misleading as
we only have 12 bits, not 16 to play with).

It is safe to reassign these messages as they were only assigned in 17.0
alpha.
2023-06-13 06:22:15 +07:00
Marc Durdin
d684e58baa
Merge branch 'feature-kmc-kmw' into chore/common/web/file-types-module-first-steps 2023-06-13 08:37:55 +10:00
Joshua A. Horton
84553d11f9 fix(common/web): fixed sourcemap path rooting issues, dropped unused worker products 2023-06-12 14:45:48 +07:00
Marc Durdin
da29d82e01 chore(developer): complete error checking in kmc-analyze 2023-06-12 13:02:04 +07:00
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
Marc Durdin
f6900d9e85 chore(developer): merge kmc-kmw messages with kmc-kmn messages
These two modules had duplicated messages from kmcmplib. Rewrites the
kmc-kmw messages module to inherit from kmc-kmn and define message
strings where necessary.

While this refactor is not ideal, because it diverges slightly from the
patterns of other message modules, and has a little bit of spaghetti
import cross-modules, I think it is still a step in the right direction
for consolidated message reporting.
2023-06-12 10:29:35 +07:00
Marc Durdin
7ad2df06d9 chore: Merge branch 'feature-kmc-kmw' into chore/merge-master-into-feature-kmc-kmw 2023-06-12 09:31:18 +07:00
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