@keymanapp/common-types 17.0.85-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/src/consts/virtual-key-constants.d.ts +131 -0
- package/build/src/consts/virtual-key-constants.d.ts.map +1 -0
- package/build/src/consts/virtual-key-constants.js +245 -0
- package/build/src/consts/virtual-key-constants.js.map +1 -0
- package/build/src/import/techpreview/cldr_info.json +5 -0
- package/build/src/import/techpreview/keys-Latn-implied.xml +80 -0
- package/build/src/import/techpreview/keys-Zyyy-currency.xml +22 -0
- package/build/src/import/techpreview/keys-Zyyy-punctuation.xml +46 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts +7 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.js +74 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.js.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts +24 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.js +75 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.js.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts +76 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.js +26 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.js.map +1 -0
- package/build/src/keyman-touch-layout.clean.spec.json +170 -0
- package/build/src/kmx/element-string.d.ts +19 -0
- package/build/src/kmx/element-string.d.ts.map +1 -0
- package/build/src/kmx/element-string.js +72 -0
- package/build/src/kmx/element-string.js.map +1 -0
- package/build/src/kmx/kmx-builder.d.ts +77 -0
- package/build/src/kmx/kmx-builder.d.ts.map +1 -0
- package/build/src/kmx/kmx-builder.js +193 -0
- package/build/src/kmx/kmx-builder.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-disp.d.ts +18 -0
- package/build/src/kmx/kmx-plus-builder/build-disp.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-disp.js +25 -0
- package/build/src/kmx/kmx-plus-builder/build-disp.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-elem.d.ts +26 -0
- package/build/src/kmx/kmx-plus-builder/build-elem.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-elem.js +78 -0
- package/build/src/kmx/kmx-plus-builder/build-elem.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-keys.d.ts +60 -0
- package/build/src/kmx/kmx-plus-builder/build-keys.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-keys.js +107 -0
- package/build/src/kmx/kmx-plus-builder/build-keys.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-layr.d.ts +54 -0
- package/build/src/kmx/kmx-plus-builder/build-layr.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-layr.js +99 -0
- package/build/src/kmx/kmx-plus-builder/build-layr.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-list.d.ts +34 -0
- package/build/src/kmx/kmx-plus-builder/build-list.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-list.js +62 -0
- package/build/src/kmx/kmx-plus-builder/build-list.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-loca.d.ts +12 -0
- package/build/src/kmx/kmx-plus-builder/build-loca.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-loca.js +20 -0
- package/build/src/kmx/kmx-plus-builder/build-loca.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-meta.d.ts +17 -0
- package/build/src/kmx/kmx-plus-builder/build-meta.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-meta.js +21 -0
- package/build/src/kmx/kmx-plus-builder/build-meta.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-name.d.ts +12 -0
- package/build/src/kmx/kmx-plus-builder/build-name.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-name.js +23 -0
- package/build/src/kmx/kmx-plus-builder/build-name.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-ordr.d.ts +18 -0
- package/build/src/kmx/kmx-plus-builder/build-ordr.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-ordr.js +27 -0
- package/build/src/kmx/kmx-plus-builder/build-ordr.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-sect.d.ts +16 -0
- package/build/src/kmx/kmx-plus-builder/build-sect.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-sect.js +14 -0
- package/build/src/kmx/kmx-plus-builder/build-sect.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-strs.d.ts +18 -0
- package/build/src/kmx/kmx-plus-builder/build-strs.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-strs.js +34 -0
- package/build/src/kmx/kmx-plus-builder/build-strs.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-tran.d.ts +20 -0
- package/build/src/kmx/kmx-plus-builder/build-tran.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-tran.js +30 -0
- package/build/src/kmx/kmx-plus-builder/build-tran.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-vkey.d.ts +16 -0
- package/build/src/kmx/kmx-plus-builder/build-vkey.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-vkey.js +23 -0
- package/build/src/kmx/kmx-plus-builder/build-vkey.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/builder-section.d.ts +6 -0
- package/build/src/kmx/kmx-plus-builder/builder-section.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/builder-section.js +3 -0
- package/build/src/kmx/kmx-plus-builder/builder-section.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts +47 -0
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.js +143 -0
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.js.map +1 -0
- package/build/src/kmx/kmx-plus.d.ts +259 -0
- package/build/src/kmx/kmx-plus.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus.js +594 -0
- package/build/src/kmx/kmx-plus.js.map +1 -0
- package/build/src/kmx/kmx.d.ts +166 -0
- package/build/src/kmx/kmx.d.ts.map +1 -0
- package/build/src/kmx/kmx.js +271 -0
- package/build/src/kmx/kmx.js.map +1 -0
- package/build/src/kmx/string-list.d.ts +29 -0
- package/build/src/kmx/string-list.d.ts.map +1 -0
- package/build/src/kmx/string-list.js +75 -0
- package/build/src/kmx/string-list.js.map +1 -0
- package/build/src/kpj/keyman-developer-project.d.ts +58 -0
- package/build/src/kpj/keyman-developer-project.d.ts.map +1 -0
- package/build/src/kpj/keyman-developer-project.js +141 -0
- package/build/src/kpj/keyman-developer-project.js.map +1 -0
- package/build/src/kpj/kpj-file-reader.d.ts +17 -0
- package/build/src/kpj/kpj-file-reader.d.ts.map +1 -0
- package/build/src/kpj/kpj-file-reader.js +92 -0
- package/build/src/kpj/kpj-file-reader.js.map +1 -0
- package/build/src/kpj/kpj-file.d.ts +39 -0
- package/build/src/kpj/kpj-file.d.ts.map +1 -0
- package/build/src/kpj/kpj-file.js +11 -0
- package/build/src/kpj/kpj-file.js.map +1 -0
- package/build/src/kpj.schema.json +127 -0
- package/build/src/kvk/kvk-file-reader.d.ts +5 -0
- package/build/src/kvk/kvk-file-reader.d.ts.map +1 -0
- package/build/src/kvk/kvk-file-reader.js +35 -0
- package/build/src/kvk/kvk-file-reader.js.map +1 -0
- package/build/src/kvk/kvk-file-writer.d.ts +20 -0
- package/build/src/kvk/kvk-file-writer.d.ts.map +1 -0
- package/build/src/kvk/kvk-file-writer.js +67 -0
- package/build/src/kvk/kvk-file-writer.js.map +1 -0
- package/build/src/kvk/kvk-file.d.ts +64 -0
- package/build/src/kvk/kvk-file.d.ts.map +1 -0
- package/build/src/kvk/kvk-file.js +63 -0
- package/build/src/kvk/kvk-file.js.map +1 -0
- package/build/src/kvk/kvks-file-reader.d.ts +30 -0
- package/build/src/kvk/kvks-file-reader.d.ts.map +1 -0
- package/build/src/kvk/kvks-file-reader.js +154 -0
- package/build/src/kvk/kvks-file-reader.js.map +1 -0
- package/build/src/kvk/kvks-file-writer.d.ts +6 -0
- package/build/src/kvk/kvks-file-writer.d.ts.map +1 -0
- package/build/src/kvk/kvks-file-writer.js +99 -0
- package/build/src/kvk/kvks-file-writer.js.map +1 -0
- package/build/src/kvk/kvks-file.d.ts +44 -0
- package/build/src/kvk/kvks-file.d.ts.map +1 -0
- package/build/src/kvk/kvks-file.js +10 -0
- package/build/src/kvk/kvks-file.js.map +1 -0
- package/build/src/kvk/visual-keyboard.d.ts +35 -0
- package/build/src/kvk/visual-keyboard.d.ts.map +1 -0
- package/build/src/kvk/visual-keyboard.js +61 -0
- package/build/src/kvk/visual-keyboard.js.map +1 -0
- package/build/src/kvks.schema.json +182 -0
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts +56 -0
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.js +20 -0
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.js.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts +91 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.js +370 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.js.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts +143 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml.js +34 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml.js.map +1 -0
- package/build/src/ldml-keyboard.schema.json +634 -0
- package/build/src/ldml-keyboardtest.schema.json +221 -0
- package/build/src/main.d.ts +21 -0
- package/build/src/main.d.ts.map +1 -0
- package/build/src/main.js +20 -0
- package/build/src/main.js.map +1 -0
- package/build/src/util/common-events.d.ts +49 -0
- package/build/src/util/common-events.d.ts.map +1 -0
- package/build/src/util/common-events.js +29 -0
- package/build/src/util/common-events.js.map +1 -0
- package/build/src/util/compiler-interfaces.d.ts +51 -0
- package/build/src/util/compiler-interfaces.d.ts.map +1 -0
- package/build/src/util/compiler-interfaces.js +33 -0
- package/build/src/util/compiler-interfaces.js.map +1 -0
- package/build/src/util/util.d.ts +17 -0
- package/build/src/util/util.d.ts.map +1 -0
- package/build/src/util/util.js +67 -0
- package/build/src/util/util.js.map +1 -0
- package/build/tsconfig.tsbuildinfo +1 -0
- package/build.sh +86 -0
- package/package.json +58 -0
- package/src/consts/virtual-key-constants.ts +257 -0
- package/src/keyman-touch-layout/keyman-touch-layout-file-reader.ts +81 -0
- package/src/keyman-touch-layout/keyman-touch-layout-file-writer.ts +84 -0
- package/src/keyman-touch-layout/keyman-touch-layout-file.ts +87 -0
- package/src/kmx/element-string.ts +79 -0
- package/src/kmx/kmx-builder.ts +287 -0
- package/src/kmx/kmx-plus-builder/build-disp.ts +46 -0
- package/src/kmx/kmx-plus-builder/build-elem.ts +103 -0
- package/src/kmx/kmx-plus-builder/build-keys.ts +175 -0
- package/src/kmx/kmx-plus-builder/build-layr.ts +154 -0
- package/src/kmx/kmx-plus-builder/build-list.ts +95 -0
- package/src/kmx/kmx-plus-builder/build-loca.ts +34 -0
- package/src/kmx/kmx-plus-builder/build-meta.ts +37 -0
- package/src/kmx/kmx-plus-builder/build-name.ts +37 -0
- package/src/kmx/kmx-plus-builder/build-ordr.ts +45 -0
- package/src/kmx/kmx-plus-builder/build-sect.ts +31 -0
- package/src/kmx/kmx-plus-builder/build-strs.ts +58 -0
- package/src/kmx/kmx-plus-builder/build-tran.ts +50 -0
- package/src/kmx/kmx-plus-builder/build-vkey.ts +43 -0
- package/src/kmx/kmx-plus-builder/builder-section.ts +6 -0
- package/src/kmx/kmx-plus-builder/kmx-plus-builder.ts +190 -0
- package/src/kmx/kmx-plus.ts +692 -0
- package/src/kmx/kmx.ts +360 -0
- package/src/kmx/string-list.ts +74 -0
- package/src/kpj/keyman-developer-project.ts +155 -0
- package/src/kpj/kpj-file-reader.ts +103 -0
- package/src/kpj/kpj-file.ts +52 -0
- package/src/kvk/kvk-file-reader.ts +34 -0
- package/src/kvk/kvk-file-writer.ts +72 -0
- package/src/kvk/kvk-file.ts +122 -0
- package/src/kvk/kvks-file-reader.ts +164 -0
- package/src/kvk/kvks-file-writer.ts +113 -0
- package/src/kvk/kvks-file.ts +53 -0
- package/src/kvk/visual-keyboard.ts +80 -0
- package/src/ldml-keyboard/ldml-keyboard-testdata-xml.ts +74 -0
- package/src/ldml-keyboard/ldml-keyboard-xml-reader.ts +387 -0
- package/src/ldml-keyboard/ldml-keyboard-xml.ts +177 -0
- package/src/main.ts +27 -0
- package/src/restructure.d.ts +2 -0
- package/src/util/common-events.ts +50 -0
- package/src/util/compiler-interfaces.ts +54 -0
- package/src/util/util.ts +68 -0
- package/test/fixtures/import-minimal.xml +8 -0
- package/test/fixtures/import-minimal1.xml +11 -0
- package/test/fixtures/import-minimal2.xml +11 -0
- package/test/fixtures/import-symbols.xml +13 -0
- package/test/fixtures/invalid-conforms-to.xml +19 -0
- package/test/fixtures/invalid-import-base.xml +16 -0
- package/test/fixtures/invalid-import-path.xml +16 -0
- package/test/fixtures/invalid-import-readfail.xml +16 -0
- package/test/fixtures/invalid-import-wrongroot.xml +16 -0
- package/test/fixtures/invalid-structure-per-dtd.xml +8 -0
- package/test/fixtures/keyman-touch-layout/khmer_angkor.keyman-touch-layout +1950 -0
- package/test/fixtures/keyman-touch-layout/legacy.keyman-touch-layout +36 -0
- package/test/fixtures/kpj/khmer_angkor.kpj +187 -0
- package/test/fixtures/kvk/khmer_angkor.kvk +0 -0
- package/test/fixtures/kvk/khmer_angkor.kvks +206 -0
- package/test/fixtures/test-fr.xml +22 -0
- package/test/helpers/index.ts +39 -0
- package/test/helpers/reader-callback-test.ts +199 -0
- package/test/keyman-touch-layout/test-keyman-touch-layout-file-reader.ts +71 -0
- package/test/keyman-touch-layout/test-keyman-touch-layout-round-trip.ts +35 -0
- package/test/kpj/test-kpj-file-reader.ts +123 -0
- package/test/kvk/test-kvk-file.ts +15 -0
- package/test/kvk/test-kvk-round-trip.ts +87 -0
- package/test/kvk/test-kvk-utils.ts +24 -0
- package/test/kvk/test-kvks-file.ts +45 -0
- package/test/ldml-keyboard/test-ldml-keyboard-testdata-reader.ts +51 -0
- package/test/ldml-keyboard/test-ldml-keyboard-xml-reader.ts +131 -0
- package/test/tsconfig.json +21 -0
- package/test/util/test-unescape.ts +38 -0
- package/tsconfig.json +17 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.full.d.ts","../src/kmx/kmx.ts","../../../../core/include/ldml/build/keyboardprocessor_ldml.d.ts","../src/kmx/element-string.ts","../src/kmx/string-list.ts","../src/util/util.ts","../src/kmx/kmx-plus.ts","../src/kmx/kmx-plus-builder/builder-section.ts","../src/kmx/kmx-plus-builder/build-sect.ts","../src/kmx/kmx-plus-builder/build-strs.ts","../src/kmx/kmx-plus-builder/build-disp.ts","../src/kmx/kmx-plus-builder/build-elem.ts","../src/kmx/kmx-plus-builder/build-list.ts","../src/kmx/kmx-plus-builder/build-keys.ts","../src/kmx/kmx-plus-builder/build-layr.ts","../src/kmx/kmx-plus-builder/build-loca.ts","../src/kmx/kmx-plus-builder/build-meta.ts","../src/kmx/kmx-plus-builder/build-name.ts","../src/kmx/kmx-plus-builder/build-ordr.ts","../src/kmx/kmx-plus-builder/build-tran.ts","../src/kmx/kmx-plus-builder/build-vkey.ts","../src/kmx/kmx-plus-builder/kmx-plus-builder.ts","../src/kmx/kmx-builder.ts","../src/kvk/kvk-file.ts","../src/consts/virtual-key-constants.ts","../src/kvk/visual-keyboard.ts","../src/kvk/kvk-file-reader.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/ts3.6/base.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/base.d.ts","../node_modules/@types/node/index.d.ts","../../../../node_modules/@types/xml2js/lib/processors.d.ts","../../../../node_modules/@types/xml2js/index.d.ts","../src/kvk/kvks-file.ts","../../../../node_modules/uri-js/dist/es5/uri.all.d.ts","../node_modules/ajv/dist/compile/codegen/code.d.ts","../node_modules/ajv/dist/compile/codegen/scope.d.ts","../node_modules/ajv/dist/compile/codegen/index.d.ts","../node_modules/ajv/dist/compile/rules.d.ts","../node_modules/ajv/dist/compile/util.d.ts","../node_modules/ajv/dist/compile/validate/subschema.d.ts","../node_modules/ajv/dist/compile/errors.d.ts","../node_modules/ajv/dist/compile/validate/index.d.ts","../node_modules/ajv/dist/compile/validate/datatype.d.ts","../node_modules/ajv/dist/vocabularies/applicator/additionalitems.d.ts","../node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts","../node_modules/ajv/dist/vocabularies/applicator/contains.d.ts","../node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts","../node_modules/ajv/dist/vocabularies/applicator/propertynames.d.ts","../node_modules/ajv/dist/vocabularies/applicator/additionalproperties.d.ts","../node_modules/ajv/dist/vocabularies/applicator/not.d.ts","../node_modules/ajv/dist/vocabularies/applicator/anyof.d.ts","../node_modules/ajv/dist/vocabularies/applicator/oneof.d.ts","../node_modules/ajv/dist/vocabularies/applicator/if.d.ts","../node_modules/ajv/dist/vocabularies/applicator/index.d.ts","../node_modules/ajv/dist/vocabularies/validation/limitnumber.d.ts","../node_modules/ajv/dist/vocabularies/validation/multipleof.d.ts","../node_modules/ajv/dist/vocabularies/validation/pattern.d.ts","../node_modules/ajv/dist/vocabularies/validation/required.d.ts","../node_modules/ajv/dist/vocabularies/validation/uniqueitems.d.ts","../node_modules/ajv/dist/vocabularies/validation/const.d.ts","../node_modules/ajv/dist/vocabularies/validation/enum.d.ts","../node_modules/ajv/dist/vocabularies/validation/index.d.ts","../node_modules/ajv/dist/vocabularies/format/format.d.ts","../node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedproperties.d.ts","../node_modules/ajv/dist/vocabularies/unevaluated/unevaluateditems.d.ts","../node_modules/ajv/dist/vocabularies/validation/dependentrequired.d.ts","../node_modules/ajv/dist/vocabularies/discriminator/types.d.ts","../node_modules/ajv/dist/vocabularies/discriminator/index.d.ts","../node_modules/ajv/dist/vocabularies/errors.d.ts","../node_modules/ajv/dist/types/json-schema.d.ts","../node_modules/ajv/dist/types/jtd-schema.d.ts","../node_modules/ajv/dist/runtime/validation_error.d.ts","../node_modules/ajv/dist/compile/ref_error.d.ts","../node_modules/ajv/dist/core.d.ts","../node_modules/ajv/dist/compile/resolve.d.ts","../node_modules/ajv/dist/compile/index.d.ts","../node_modules/ajv/dist/types/index.d.ts","../node_modules/ajv/dist/ajv.d.ts","../src/kvk/kvks-file-reader.ts","../src/kvk/kvk-file-writer.ts","../src/ldml-keyboard/ldml-keyboard-xml.ts","../src/ldml-keyboard/ldml-keyboard-testdata-xml.ts","../src/util/compiler-interfaces.ts","../src/util/common-events.ts","../src/ldml-keyboard/ldml-keyboard-xml-reader.ts","../src/keyman-touch-layout/keyman-touch-layout-file.ts","../src/keyman-touch-layout/keyman-touch-layout-file-reader.ts","../src/keyman-touch-layout/keyman-touch-layout-file-writer.ts","../src/kpj/kpj-file.ts","../src/kpj/keyman-developer-project.ts","../src/kpj/kpj-file-reader.ts","../src/main.ts","../src/restructure.d.ts","../src/kvk/kvks-file-writer.ts","../node_modules/@types/mocha/index.d.ts","../../../../node_modules/@types/connect/index.d.ts","../../../../node_modules/@types/body-parser/index.d.ts","../../../../node_modules/keyv/src/index.d.ts","../../../../node_modules/@types/http-cache-semantics/index.d.ts","../../../../node_modules/@types/responselike/index.d.ts","../../../../node_modules/@types/cacheable-request/index.d.ts","../../../../node_modules/@types/chai/index.d.ts","../../../../node_modules/@types/component-emitter/index.d.ts","../../../../node_modules/@types/cookie/index.d.ts","../../../../node_modules/@types/cors/index.d.ts","../../../../node_modules/@types/range-parser/index.d.ts","../../../../node_modules/@types/qs/index.d.ts","../../../../node_modules/@types/express-serve-static-core/index.d.ts","../../../../node_modules/@types/mime/index.d.ts","../../../../node_modules/@types/serve-static/index.d.ts","../../../../node_modules/@types/express/index.d.ts","../../../../node_modules/@types/git-diff/index.d.ts","../../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../../node_modules/@types/json-buffer/index.d.ts","../../../../node_modules/@types/keyv/index.d.ts","../../../../node_modules/@types/multer/index.d.ts","../../../../node_modules/@types/semver/classes/semver.d.ts","../../../../node_modules/@types/semver/functions/parse.d.ts","../../../../node_modules/@types/semver/functions/valid.d.ts","../../../../node_modules/@types/semver/functions/clean.d.ts","../../../../node_modules/@types/semver/functions/inc.d.ts","../../../../node_modules/@types/semver/functions/diff.d.ts","../../../../node_modules/@types/semver/functions/major.d.ts","../../../../node_modules/@types/semver/functions/minor.d.ts","../../../../node_modules/@types/semver/functions/patch.d.ts","../../../../node_modules/@types/semver/functions/prerelease.d.ts","../../../../node_modules/@types/semver/functions/compare.d.ts","../../../../node_modules/@types/semver/functions/rcompare.d.ts","../../../../node_modules/@types/semver/functions/compare-loose.d.ts","../../../../node_modules/@types/semver/functions/compare-build.d.ts","../../../../node_modules/@types/semver/functions/sort.d.ts","../../../../node_modules/@types/semver/functions/rsort.d.ts","../../../../node_modules/@types/semver/functions/gt.d.ts","../../../../node_modules/@types/semver/functions/lt.d.ts","../../../../node_modules/@types/semver/functions/eq.d.ts","../../../../node_modules/@types/semver/functions/neq.d.ts","../../../../node_modules/@types/semver/functions/gte.d.ts","../../../../node_modules/@types/semver/functions/lte.d.ts","../../../../node_modules/@types/semver/functions/cmp.d.ts","../../../../node_modules/@types/semver/functions/coerce.d.ts","../../../../node_modules/@types/semver/classes/comparator.d.ts","../../../../node_modules/@types/semver/classes/range.d.ts","../../../../node_modules/@types/semver/functions/satisfies.d.ts","../../../../node_modules/@types/semver/ranges/max-satisfying.d.ts","../../../../node_modules/@types/semver/ranges/min-satisfying.d.ts","../../../../node_modules/@types/semver/ranges/to-comparators.d.ts","../../../../node_modules/@types/semver/ranges/min-version.d.ts","../../../../node_modules/@types/semver/ranges/valid.d.ts","../../../../node_modules/@types/semver/ranges/outside.d.ts","../../../../node_modules/@types/semver/ranges/gtr.d.ts","../../../../node_modules/@types/semver/ranges/ltr.d.ts","../../../../node_modules/@types/semver/ranges/intersects.d.ts","../../../../node_modules/@types/semver/ranges/simplify.d.ts","../../../../node_modules/@types/semver/ranges/subset.d.ts","../../../../node_modules/@types/semver/internals/identifiers.d.ts","../../../../node_modules/@types/semver/index.d.ts","../../../../node_modules/@types/ws/index.d.ts","../../../../node_modules/@types/yauzl/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","impliedFormat":1},{"version":"7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","impliedFormat":1},{"version":"8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","impliedFormat":1},{"version":"5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","impliedFormat":1},{"version":"4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","impliedFormat":1},{"version":"1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","impliedFormat":1},{"version":"746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","impliedFormat":1},{"version":"d11a03592451da2d1065e09e61f4e2a9bf68f780f4f6623c18b57816a9679d17","impliedFormat":1},{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3d4da15233e593eacb3965cde7960f3fddf5878528d882bcedd5cbaba0193c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true,"impliedFormat":1},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true,"impliedFormat":1},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true,"impliedFormat":1},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true,"impliedFormat":1},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true,"impliedFormat":1},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true,"impliedFormat":1},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true,"impliedFormat":1},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true,"impliedFormat":1},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true,"impliedFormat":1},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true,"impliedFormat":1},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true,"impliedFormat":1},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true,"impliedFormat":1},{"version":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true,"impliedFormat":1},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true,"impliedFormat":1},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true,"impliedFormat":1},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true,"impliedFormat":1},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true,"impliedFormat":1},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true,"impliedFormat":1},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true,"impliedFormat":1},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true,"impliedFormat":1},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true,"impliedFormat":1},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true,"impliedFormat":1},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab7d58e6161a550ff92e5aff755dc37fe896245348332cd5f1e1203479fe0ed1","affectsGlobalScope":true,"impliedFormat":1},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true,"impliedFormat":1},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true,"impliedFormat":1},{"version":"a4da0551fd39b90ca7ce5f68fb55d4dc0c1396d589b612e1902f68ee090aaada","affectsGlobalScope":true,"impliedFormat":1},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true,"impliedFormat":1},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c339adcd35b01e3115c7ebe980b935b30093ac2dbe46dff36fed112e462afd2","impliedFormat":1},{"version":"bcec6be630f66aa0123a56e0d80b4ed8a5715e86ca1ad5488148cda9c823aaa8","signature":"92a1c4b15f0e320ae669c187198e7ed2a5625f8c5f227bc851f1398a80ad7778","impliedFormat":99},{"version":"63ebf4d0a2d3d4fd9e40bf5379220d9b54b0c1984ba23cb65eb68398472e3c81","impliedFormat":99},{"version":"af55b1ca5da3568a49e09dd2fa17802d8be0c3fbfbcd780c7e2384d273d9854e","signature":"542cc36002b01cd08cd66dded3ce673b8244c32f1d2f9156de55fadb5900b547","impliedFormat":99},{"version":"4e047b8ef14ad928bc85cb19c4d66c12c758655688b9112ba21187bead991baa","signature":"f755711712d81a5ff26bddf1aa51e26946e1bce79d5d39a3519f7f039baafe55","impliedFormat":99},{"version":"1aa18eed7d1c791711f8ce997052486f6b04e5e772b8d2184c0a494e50c5e32d","signature":"c1289bd4099dd6e47bf47183b1ab5db56936a2d187fd92bc7654fa370da0b43b","impliedFormat":99},{"version":"e4146d773d30414bde314726ecf6040abc92eca0f85230550c95ed2c7a18c7e0","signature":"244f7f99013231df56d7b7cab047c59646fe45040baac2a76ee0e726dd45f6fe","impliedFormat":99},{"version":"396462c7608a5c36f429a79b35a26128e12e8d2f6ebe937665c0f8e31fe50c7b","signature":"d20301948b13df77d1e775885d72c79fcb7123e7a1c22a06bb91cc48ab2e991f","impliedFormat":99},{"version":"9b3b10d819f27f2a691881376abac9fdbef4353ca393e952aad5fbb30bd8be80","signature":"bb6e252a93c53bf100558e1ae650f339c3d31633ce36ecaf3b0b513d312886b7","impliedFormat":99},{"version":"e2177395c66a5e4f394107fb56f1e4b9431de53cd2b9316cfdc52f5c40b902db","signature":"0b8079837ed33cb20f49c0660cb32644eca029ad6180306db35c0bbf771decf8","impliedFormat":99},{"version":"c45d34c9d9ae98acbea656af076c85e7ec88b64b92f49c300c2cd524e5f95404","signature":"3a6750266560179a3b78236a1480da5aed8d9af3d32cd595ae9d1e5416234732","impliedFormat":99},{"version":"aa3ee3dc9699376e14ac377e57b912c6915db81a9d6787099fb455a6e3d87e6a","signature":"ae5d1622aa988d54e076be3e78c262d1e02fed7621311bb1ca6ada055edd9e45","impliedFormat":99},{"version":"86d63e5c62d8389e8d77ee3dc4a6352e26aed548a90bb7c3e979466a957fdc1e","signature":"eb38a462515513abecd708dfeddb610716ebe75c3eb1b36c9dbc3e97d89f4d82","impliedFormat":99},{"version":"86c41a7a3b6738fdce07a5d5fc0449ffe2f7f9c6fad034771467440743849274","signature":"c00f637eea37d005396c0f52fce77dcf55944c5fc8cc64a64104bcbd66687d7d","impliedFormat":99},{"version":"c3ccebcf7c9bc0ed9b9caed3980b9f3a3172bb39269bfc96ccb2b744aa20eb71","signature":"df00a65f7816e84c19b83491626aa651a560b1b589b990df9afe4957de3f31cd","impliedFormat":99},{"version":"921ad061180848d27d559fe568ceb1e409ecb3fe610e5ab1b92d2df9516e8caf","signature":"582de58eae49a6d654eac320fe66834293dc2393e7ac7b060218cd647e1a7ab8","impliedFormat":99},{"version":"411654f9422bb40b20de7fb177196c939af51ceb775d95f5a611c54b79d71213","signature":"07e9f9d099b1159890976025bc63c64dd21601221c49aab55b9524ae31c76312","impliedFormat":99},{"version":"3f1857ac89366693ab5648ab6074fc9ffda1d7f12e59358d212e057c869a7369","signature":"3b9ed13af084b6aac796fa0791611c1dd3ee40e74b85444b436fa226dd9d24c2","impliedFormat":99},{"version":"3f1592ab76f3b33c4141ab9019b11194f3faa47b84847419562d53766e484b0d","signature":"6d2ba18a4d99328fd4e8acb7b2b2c3cb670cbd386220fec768824bf75b3a18ff","impliedFormat":99},{"version":"79cf59909410e09c4a79a196288837a642f3b48ad387d6bdbc68570f1f90352e","signature":"b1425479d7bc880850bb5a56387cbe8b23249ccb79464f541597ba6433ec0e4e","impliedFormat":99},{"version":"62b4b947ad32e540673cfb46afd8a393abbe8f000824361caf2080d1fa7dff67","signature":"107bf5c63adf3a898d1ec6be96932e2eb18521e412bba6fd1812bfd1547351ba","impliedFormat":99},{"version":"89aff940ebaa5ebb8d6f5fdd62cea54d8ffd18644c4aeabb7bbc3f3b6020f8b9","signature":"ca69103df523a99f3170bee8f2ac0d7f73fe8b346e770a9406958df6cac70cfa","impliedFormat":99},{"version":"fd714adc543aa727ac3cb4d76881421f7d682a2209d672a0b6080bdabfb59d55","signature":"1d3aa6c51fc22ab4ca4c4992deaf5ab4034a996ff5b5f771e90e711e9767acac","impliedFormat":99},{"version":"ccea4b2f9a051e1351f16953ef1a6a6af1cdf93c8d242d1f28cc875de1d6835d","signature":"c4aadf19adf0671462fa41c6f3fbd0e16ddab3fbd46066155ad8711007dfcf4b","impliedFormat":99},{"version":"d6d394dc228ece111c663941311eeae072e8354162714fcc819a014faea68af5","signature":"23414b2a369083fc9cef4c3aeee2b3384dfc51a7cbeaec2869875084aad3762a","impliedFormat":99},{"version":"cd8feddb8bd143e542102058932246bb957e9301265be2fca156ac9233cd9ea4","signature":"9afa3627984ce86ac6a6638ecd58ed9aa5d548aacbfaa1e4d9a77f4c81e54cd2","impliedFormat":99},{"version":"a1de262f4d147acad99d766170876a830d5aa0df584d26e560327af6270f0e91","signature":"f05e5b4d79c7298380f3ebad534256a05db4af6afa2810836fc956eb1f4fb2d1","impliedFormat":99},{"version":"fb928b21f5a16a1d64a8e2e74a3f389ace89da74820f070f893221213c50aa3c","affectsGlobalScope":true,"impliedFormat":1},{"version":"5cd9c902b221c5aca739cbc3fb4339c3c5115198808d4f5d7610a674e4b9c66d","impliedFormat":1},{"version":"fe892fea1e75a442fffb4a604d7eeb451e858787a9f2f01c4e83bf12a3b5048d","impliedFormat":1},{"version":"d5c80b931928fbd06f967ce4bdca24fbb37523773ac2c7c87458a689154351fb","impliedFormat":1},{"version":"fcd718b2feb2820a9844536a1a2fbc77a3da90820e02894d40f879a789f46560","impliedFormat":1},{"version":"525c8fc510d9632d2a0a9de2d41c3ac1cdd79ff44d3b45c6d81cacabb683528d","impliedFormat":1},{"version":"ece75b9bfc916f9ccc4e8a9ddee1dda5c987804fbe3b60a01fc120fae731c2ce","impliedFormat":1},{"version":"4e146a0b69c893ae1538aff8b76f4e8796755bdd45050a83099348d59863437e","impliedFormat":1},{"version":"a1dc9cfe8be39cbcef62692510b450ab35553ef39382715c88763d0c477704a9","impliedFormat":1},{"version":"05e732266b5a36789fd9eb846b1f45fec1b6e318b740e3f20fc22fd95f9ebf31","impliedFormat":1},{"version":"985c3d1b62a4a4f563e3ca3e3a47717cff7d82c81883d62ecf08d8417eb477c4","impliedFormat":1},{"version":"8059976d7f408e08be353de1833172139bbaa70fc33d01b98249f7226c122119","impliedFormat":1},{"version":"1733741cf2adc5926ac58c66004268cdc3d34b2ff6250f5114db14253ea02ce1","impliedFormat":1},{"version":"df18df925483862e8ff216d7b17e50b7311a3add2fb7feb128d321ec099352ca","impliedFormat":1},{"version":"b6b09f944889a23f19eba6e0f112030e55160c5e1a225012ab2349c582ba5595","impliedFormat":1},{"version":"152af7c23ec219f632afa2d861abc65993f56cd39a4f3a4018515dbc05950a74","impliedFormat":1},{"version":"3a0bdc4c5b6f84a1abb5356d7a7fa1f96ac6c5b5646eec3ef2b33c1ed095e155","impliedFormat":1},{"version":"03394bf8deb8781b490ae9266a843fbdf00647947d79e25fcbf1d89a9e9c8a66","impliedFormat":1},{"version":"56a15cc211894d79aa44cbb46c276bfd3f10458a61bff2dec99114db8a7e71e3","impliedFormat":1},{"version":"1a5366b0d4d0153955fd85777c72d35979dabc0537649da6eade09007c0d080a","impliedFormat":1},{"version":"61c84c3b0eb6e60196d15ae5e21793a1d4241c547f0bdd0529ffae838d1a073c","impliedFormat":1},{"version":"272522db288a7e03f14ff930407b776357082efce20369ea42239a57af9c7f81","impliedFormat":1},{"version":"3a8848a9c307429b861402cc69bc472ffe0c05b86474fc158723169161e16389","impliedFormat":1},{"version":"3f6a1fd73c9dc3bd7f4b79bc075297ca6527904df69b0f2c2c94e4c4c7d9a32c","impliedFormat":1},{"version":"8969e0b4d22ca77ad011c8fc4a25ec5d515bdfae4ecbd22608ed0d5c38829c1e","impliedFormat":1},{"version":"b2fe368abdc803b82d27bd27f168d106804422ade198c3c085e2519b195ebd26","impliedFormat":1},{"version":"93acebcaa2e94903a83cebf3f109eb2917acab902045ee8c3d8f69f29baafa68","impliedFormat":1},{"version":"8e2f9031210a8fc27af8844bf69f964307d6013c90336bea9fb5d6ba43248c78","impliedFormat":1},{"version":"17e157df6125098a1a34eb4d201ee4ac03bbe97e471ab5627bb2c40fce555948","impliedFormat":1},{"version":"b40652bf8ce4a18133b31349086523b219724dca8df3448c1a0742528e7ad5b9","impliedFormat":1},{"version":"4bdb7b15b3f9a3ee0b856c7b991d0e522f8ce92f7b66ae8ac00e61d1269dd10a","impliedFormat":1},{"version":"978aecd2e6bc2ac094e9a35eda98ff8586713857b3655e7c98ca5ed8f7d50662","impliedFormat":1},{"version":"a185b8e0d7a4ae078a79339d63e98177813aac39256f69f788eaf5c360aa756f","impliedFormat":1},{"version":"c6b71a0585467900820167370738cfc256e9635471725a7ba1d24a3a262984e5","impliedFormat":1},{"version":"8bf10278b5c28698a73f800fde911bcc33d405a15f7bddab1c4ade637b69a822","impliedFormat":1},{"version":"e880a08fbb0d9ee2f733f9183f4d1bdb75bc9e0e64060a8a1fc30540791fcded","impliedFormat":1},{"version":"b0b4974c11712db7a362ae6fa8ea0f0042a7c34da5f0c80302650ffe921e3d87","impliedFormat":1},{"version":"69fc4a10650eff3416ba5c2f7ce71744734928a7135ebe5a63c61d2d03ca3ec3","impliedFormat":1},{"version":"13918848c4e07d1094164112bd7fd151d61cbb949ceef340a2a4595cd609afb6","impliedFormat":1},{"version":"9af6a9de7bd818e68c4236f20027ff4b19387c2269a6952945d1a716c177cc4d","impliedFormat":1},{"version":"3497438242251378cf232f36a7fabac70e7bd8229d68dac8955534e63ffc8ff4","impliedFormat":1},{"version":"e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b","impliedFormat":1},{"version":"e033253e77794e1595f01372623b631d986e04dcb47d08948301fd2652886a83","impliedFormat":1},{"version":"c0288f54de6f544706a3150c8b579b1a975870695c4be866f727ece6a16f3976","impliedFormat":1},{"version":"f68e56efa9fc1fbdfac28bf07b5b1061161d243f4d9616d1606ce880e2d9d8c4","impliedFormat":1},{"version":"be8a8c7e09536d72cdce950361d016f12ac5ca4906b580e8c2907187bc88a269","signature":"cf31bb032d0ab3dfcb33de658bb393dd6a79839a237e7bc367ab2ef0de1db31f","impliedFormat":99},{"version":"9f3c5498245c38c9016a369795ec5ef1768d09db63643c8dba9656e5ab294825","impliedFormat":1},{"version":"44a8d350600656882fd7462774e32e8d13788313ba2e36d2e8d5437ac91b98df","impliedFormat":1},{"version":"60bb0e47502bf8716d1230288b4e6387c1d34cded12752ab5338108e2e662e67","impliedFormat":1},{"version":"b8870b5155d11a273c75718a4f19026da49f91c548703858cd3400d06c3bd3b8","impliedFormat":1},{"version":"b3ae4ded82f27cabba780b9af9647f6e08c9a4cabe8fbb7a0cca69c7add9ef4b","impliedFormat":1},{"version":"8d26ae32e5c9c080e44aee4a67e5ef02b5fda0604e6fecbb7b753c537e5282d9","impliedFormat":1},{"version":"05c4e792dae38912ba333725cdf8c42d242337d006c0d887f4ce5a7787871a95","impliedFormat":1},{"version":"cd44995ee13d5d23df17a10213fed7b483fabfd5ea08f267ab52c07ce0b6b4da","impliedFormat":1},{"version":"58ce1486f851942bd2d3056b399079bc9cb978ec933fe9833ea417e33eab676e","impliedFormat":1},{"version":"1a23b521db8d7ec9e2b96c6fbd4c7e96d12f408b1e03661b3b9f7da7291103e6","impliedFormat":1},{"version":"d3d0d11d30c9878ada3356b9c36a2754b8c7b6204a41c86bfb1488c08ce263b0","impliedFormat":1},{"version":"a6493f1f479637ed89a3ebec03f6dc117e3b1851d7e938ac4c8501396b8639a8","impliedFormat":1},{"version":"ae0951e44973e928fe2e999b11960493835d094b16adac0b085a79cff181bcb9","impliedFormat":1},{"version":"9d00e3a59eff68fa8c40e89953083eeaad1c5b2580ed7da2304424b249ecb237","impliedFormat":1},{"version":"1609ad4d488c356ee91eba7d7aa87cc6fb59bc8ac05c1a8f08665285ba3b71ad","impliedFormat":1},{"version":"8add088f72326098d68d622ddb024c00ae56a912383efe96b03f0481db88f7c9","impliedFormat":1},{"version":"dd17fe6332567b8f13e33dd3ff8926553cdcea2ad32d4350ce0063a2addaa764","impliedFormat":1},{"version":"4091d56a4622480549350b8811ec64c7826cd41a70ce5d9c1cc20384bb144049","impliedFormat":1},{"version":"353c0125b9e50c2a71e18394d46be5ccb37161cc0f0e7c69216aa6932c8cdafb","impliedFormat":1},{"version":"9c5d5f167e86b6ddf7142559a17d13fd39c34e868ae947c40381db866eed6609","impliedFormat":1},{"version":"4430dea494b0ee77bf823d9a7c4850a539e1060d5d865316bb23fb393e4f01d7","impliedFormat":1},{"version":"aae698ceead4edad0695b9ea87e43f274e698bdb302c8cb5fd2cab4dc496ccf0","impliedFormat":1},{"version":"51631e9a0c041e12479ab01f5801d8a237327d19e9ee37d5f1f66be912631425","impliedFormat":1},{"version":"c9d5d8adb1455f49182751ce885745dcc5f9697e9c260388bc3ae9d1860d5d10","impliedFormat":1},{"version":"f64289e3fa8d5719eaf5ba1bb02dd32dbbf7c603dda75c16770a6bc6e9c6b6d9","impliedFormat":1},{"version":"b1aa0e2e3511a8d10990f35866405c64c9e576258ef99eeb9ebafed980fd7506","impliedFormat":1},{"version":"2d255a5287f2fb5295688cb25bd18e1cd59866179f795f3f1fd6b71b7f0edf8f","impliedFormat":1},{"version":"43c1dbb78d5277a5fdd8fddce8b257f84ffa2b4253f58b95c04a310710d19e97","impliedFormat":1},{"version":"6c669d7e080344c1574aa276a89e57c3b9f0e97fab96a09427e7dfb19ca261bf","impliedFormat":1},{"version":"b71ac126853867d8e64c910f47d46d05c5ea797987d2604f63d401507dc43b6d","impliedFormat":1},{"version":"9a37238558d28b7ee06d08599e92eab30b90704541cc85e6448009d6d55fffa9","impliedFormat":1},{"version":"120b14d66a061910309ff97e7b06b5c6c09444218178b80b687a92af4d22d5dc","impliedFormat":1},{"version":"3de958065e3a44cbe0bfa667813bc59c63e63c9ce522af8dc1b64714910fa9ba","impliedFormat":1},{"version":"66e655f7c43558bae6703242cbd6c0551a94d0a97204bd4c4bbf7e77f24d1f85","impliedFormat":1},{"version":"72f7b32e023814078046c036ed4b7ad92414be0aebb63e805c682e14103ae38a","impliedFormat":1},{"version":"a89d8e67966d085ff971c9900cfa1abdd9732bab66d9c1914ecc15befdf8623d","impliedFormat":1},{"version":"0fb8624f1f056f55f1a1a06411f5006930eaeacae23a2025b847ea4169e5e4ea","impliedFormat":1},{"version":"608eb9d411ac76e93a10e05f8aae92b3a5cefc87594219b737df7c8737ba2bd7","impliedFormat":1},{"version":"cde493e09daad4bb29922fe633f760be9f0e8e2f39cdca999cce3b8690b5e13a","impliedFormat":1},{"version":"3d7f9eb12aface876f7b535cc89dcd416daf77f0b3573333f16ec0a70bcf902a","impliedFormat":1},{"version":"93ba4ac36f570c70a12d588e21c10dda9f351fad3e77d416952acddb27bff01d","impliedFormat":1},{"version":"8750f9dc1e277ffff7446c95571bae61aca0984e8f99e40fc1e8cb7161ae0642","impliedFormat":1},{"version":"66408d81ba8962282b1a55da34c6bd767105141f54d0ba14dca330efe0c8f552","impliedFormat":1},{"version":"7481b9d93ca44eb1f689e0b939545ff00dead7bdb9daba401dfb74292d83f831","impliedFormat":1},{"version":"1a81526753a454468403c6473b7504c297bd4ee9aa8557f4ebf4092db7712fde","impliedFormat":1},{"version":"0ec7878fc409c956925a5bfb188c3350685f06589f5ba1041fc46fca47104820","signature":"1df881a7c8b6e80dc674fd99097400509ce5dd993479ee5f149ad9b294e7203d","impliedFormat":99},{"version":"f3df85424d542b70d1b1f45e32d38896321af5884f57cc95f998d1bda472622a","signature":"d000251f54b5d2735895a9fb45f555e4cd1d11c5a79465969571f91abc00ebf9","impliedFormat":99},{"version":"ddd1425e1eabcf75cdaf4d0af2d4c637066d730316f83816fdb89482b126f6a1","signature":"ae4c126718fb7b359e87afbe8144995a4820a855ca3493f26b4aa87ddd04bf3f","impliedFormat":99},{"version":"5ac19dfeee8ce19fb3cb4eb8bd9028776e5dbdcf27dddeabc74bcc2b9aeb958b","signature":"dad3c46a1a9fa67d697e340c997b37ed171e59a75c59497b0f3a21a4f4131e4f","impliedFormat":99},{"version":"8121d751d847fb3b95ea0e8952168925e2f1bd854c065f7df81796b42b2821bb","signature":"8bfc8c8cab4098f3e95f11310ed6358f10c138c35810e2a1d34858a0666c241e","impliedFormat":99},{"version":"6a09d58dab0a71dfa9aec689738330ff457fdb09155b7d694f931643c66a9c8a","signature":"bb34710e1a2163eecf101383d105ef33d53080972890e842a2fafd24bc272414","impliedFormat":99},{"version":"2c2b6415fb609604a1dc243f231da5e6d341839f1762b4b0f3d6e22c5daa2d57","signature":"61e5d3940643cfb8b6d5ee452ef0c7c06958debfdf19e456e9dcea69e3611d1b","impliedFormat":99},{"version":"4e7cd6830e37049ae3f7e519f37a7a2fa621d1d5c6995f45f9ce8af923711cd2","signature":"447dfa3dc8fa95fb75992ae53809d58e57ec66da6fb7abeb043f312bd14da919","impliedFormat":99},{"version":"b2a3e77373a1ec276e711ff0675ecef1f2e4a88e0a1793bbefa6ce0b71380972","signature":"901fe6727504f3cd404ba752b3f93461d922dd7bbb2a0f69d945d39550c73e89","impliedFormat":99},{"version":"d8601964c54b27b63d6c185a74f694a1f64a48befb9dcf081bb6d63208ef53d8","signature":"d5e905e05a93930088d22d35a8417cf7df95b6708521cfb381c531fdf6847391","impliedFormat":99},{"version":"e38710c24ecc54e4cf00894822ed27d821f55e6d444dfe549db35f529970cdf9","signature":"0f028e23e8163e7a23f2d0bed4078d645e2254ad0bb5de949c2439c12a35ded4","impliedFormat":99},{"version":"0dbcf5c5083cd6d1530d913abe63b7dea8abf3ac442848a3d483df8c381eb852","signature":"33ffed472d1a116cf243541a69000883969d6a4aebae5039a27eaa3be72dbea3","impliedFormat":99},{"version":"717959be46c2a20472950bfbe06e0e8195525c7efb37d4c55f0893c44ddaf896","signature":"aada66a99572f4c495b2c83ad0fa6502885bcb07a98518e0bf41018da75101a8","impliedFormat":99},{"version":"303df4b0f39a82f3cb2429d4fb84e88729ed43fdbc642d7b3e8c01796949e4ba","signature":"f38eafe7555cdb85ab8661138764a6ee343a896880321629ac21010f0b59ff89","impliedFormat":99},{"version":"e267aa20d25e3a9c962b64fc4179363f29a2610abe9766de56e73c86aeca511c","impliedFormat":99},{"version":"3cae625792ff30ee2c39cc2d6d882be1d513939e82c32ad17c628c39c5fc44a8","signature":"699fc04de5e6b8b5142f108ba0142325abc1ff791ce47aeaa201cbb3db6a2d6b","impliedFormat":99},{"version":"c4c03cf65951d980ba618ae9601d10438730803fc9c8a1f7b34af8739981e205","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d829824ead8999f87b6df21200df3c6150391b894b4e80662caa462bd48d073","impliedFormat":1},{"version":"afc559c1b93df37c25aef6b3dfa2d64325b0e112e887ee18bf7e6f4ec383fc90","impliedFormat":1},{"version":"cd71905370ede696577acc23c695181e618a7d08616b1d06b43d3e6a12880fab","impliedFormat":1},{"version":"cab425b5559edac18327eb2c3c0f47e7e9f71b667290b7689faafd28aac69eae","impliedFormat":1},{"version":"3cfb0cb51cc2c2e1b313d7c4df04dbf7e5bda0a133c6b309bf6af77cf614b971","impliedFormat":1},{"version":"f992cd6cc0bcbaa4e6c810468c90f2d8595f8c6c3cf050c806397d3de8585562","impliedFormat":1},{"version":"c8747693e5872ad5ef3aa016731a06915e1c34dae987829d9aa5bd40c7a2c54b","affectsGlobalScope":true,"impliedFormat":1},{"version":"567a315b240a060518c532d38a46803b6d35e75dc14a9be435b6dc20c816741e","impliedFormat":1},{"version":"117ffeecf6c55e25b6446f449ad079029b5e7317399b0a693858faaaea5ca73e","impliedFormat":1},{"version":"6fbd58e4015b9ae31ea977d4d549eb24a1102cc798b57ec5d70868b542c06612","impliedFormat":1},{"version":"16d51f964ec125ad2024cf03f0af444b3bc3ec3614d9345cc54d09bab45c9a4c","impliedFormat":1},{"version":"ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc","impliedFormat":1},{"version":"d2f7baf43dfa349d4010cbd9d64d84cdf3ec26c65fa5f44c8f74f052bedd0b49","affectsGlobalScope":true,"impliedFormat":1},{"version":"84e3bbd6f80983d468260fdbfeeb431cc81f7ea98d284d836e4d168e36875e86","impliedFormat":1},{"version":"0b85cb069d0e427ba946e5eb2d86ef65ffd19867042810516d16919f6c1a5aec","impliedFormat":1},{"version":"15c88bfd1b8dc7231ff828ae8df5d955bae5ebca4cf2bcb417af5821e52299ae","impliedFormat":1},{"version":"71f1e965980d8edbd2c905f35c4341c2e86afc6f9b1d105342db2f6a85876089","impliedFormat":1},{"version":"8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","impliedFormat":1},{"version":"75bdc1b420f0ffc6cc6fd0b6694d89f5072bf755b4e6c7e65a2fda797ca0bb8a","impliedFormat":1},{"version":"fec943fdb3275eb6e006b35e04a8e2e99e9adf3f4b969ddf15315ac7575a93e4","impliedFormat":1},{"version":"3ee881b5584c5718935e6fe1fc1080b997682a3c8bebd17d51dccfd41c3e7da6","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b93035328f7778d200252681c1d86285d501ed424825a18f81e4c3028aa51d9","impliedFormat":1},{"version":"2ac9c8332c5f8510b8bdd571f8271e0f39b0577714d5e95c1e79a12b2616f069","impliedFormat":1},{"version":"42c21aa963e7b86fa00801d96e88b36803188018d5ad91db2a9101bccd40b3ff","impliedFormat":1},{"version":"d31eb848cdebb4c55b4893b335a7c0cca95ad66dee13cbb7d0893810c0a9c301","impliedFormat":1},{"version":"77c1d91a129ba60b8c405f9f539e42df834afb174fe0785f89d92a2c7c16b77a","impliedFormat":1},{"version":"7a9e0a564fee396cacf706523b5aeed96e04c6b871a8bebefad78499fbffc5bc","impliedFormat":1},{"version":"906c751ef5822ec0dadcea2f0e9db64a33fb4ee926cc9f7efa38afe5d5371b2a","impliedFormat":1},{"version":"5387c049e9702f2d2d7ece1a74836a14b47fbebe9bbeb19f94c580a37c855351","impliedFormat":1},{"version":"c68391fb9efad5d99ff332c65b1606248c4e4a9f1dd9a087204242b56c7126d6","impliedFormat":1},{"version":"e9cf02252d3a0ced987d24845dcb1f11c1be5541f17e5daa44c6de2d18138d0c","impliedFormat":1},{"version":"e8b02b879754d85f48489294f99147aeccc352c760d95a6fe2b6e49cd400b2fe","impliedFormat":1},{"version":"9f6908ab3d8a86c68b86e38578afc7095114e66b2fc36a2a96e9252aac3998e0","impliedFormat":1},{"version":"0eedb2344442b143ddcd788f87096961cd8572b64f10b4afc3356aa0460171c6","impliedFormat":1},{"version":"71405cc70f183d029cc5018375f6c35117ffdaf11846c35ebf85ee3956b1b2a6","impliedFormat":1},{"version":"c68baff4d8ba346130e9753cefe2e487a16731bf17e05fdacc81e8c9a26aae9d","impliedFormat":1},{"version":"2cd15528d8bb5d0453aa339b4b52e0696e8b07e790c153831c642c3dea5ac8af","impliedFormat":1},{"version":"479d622e66283ffa9883fbc33e441f7fc928b2277ff30aacbec7b7761b4e9579","impliedFormat":1},{"version":"ade307876dc5ca267ca308d09e737b611505e015c535863f22420a11fffc1c54","impliedFormat":1},{"version":"f8cdefa3e0dee639eccbe9794b46f90291e5fd3989fcba60d2f08fde56179fb9","impliedFormat":1},{"version":"86c5a62f99aac7053976e317dbe9acb2eaf903aaf3d2e5bb1cafe5c2df7b37a8","impliedFormat":1},{"version":"2b300954ce01a8343866f737656e13243e86e5baef51bd0631b21dcef1f6e954","impliedFormat":1},{"version":"a2d409a9ffd872d6b9d78ead00baa116bbc73cfa959fce9a2f29d3227876b2a1","impliedFormat":1},{"version":"b288936f560cd71f4a6002953290de9ff8dfbfbf37f5a9391be5c83322324898","impliedFormat":1},{"version":"61178a781ef82e0ff54f9430397e71e8f365fc1e3725e0e5346f2de7b0d50dfa","impliedFormat":1},{"version":"6a6ccb37feb3aad32d9be026a3337db195979cd5727a616fc0f557e974101a54","impliedFormat":1},{"version":"c649ea79205c029a02272ef55b7ab14ada0903db26144d2205021f24727ac7a3","impliedFormat":1},{"version":"38e2b02897c6357bbcff729ef84c736727b45cc152abe95a7567caccdfad2a1d","impliedFormat":1},{"version":"d6610ea7e0b1a7686dba062a1e5544dd7d34140f4545305b7c6afaebfb348341","impliedFormat":1},{"version":"3dee35db743bdba2c8d19aece7ac049bde6fa587e195d86547c882784e6ba34c","impliedFormat":1},{"version":"b15e55c5fa977c2f25ca0b1db52cfa2d1fd4bf0baf90a8b90d4a7678ca462ff1","impliedFormat":1},{"version":"f41d30972724714763a2698ae949fbc463afb203b5fa7c4ad7e4de0871129a17","impliedFormat":1},{"version":"843dd7b6a7c6269fd43827303f5cbe65c1fecabc30b4670a50d5a15d57daeeb9","impliedFormat":1},{"version":"f06d8b8567ee9fd799bf7f806efe93b67683ef24f4dea5b23ef12edff4434d9d","impliedFormat":1},{"version":"6017384f697ff38bc3ef6a546df5b230c3c31329db84cbfe686c83bec011e2b2","impliedFormat":1},{"version":"e1a5b30d9248549ca0c0bb1d653bafae20c64c4aa5928cc4cd3017b55c2177b0","impliedFormat":1},{"version":"a593632d5878f17295bd53e1c77f27bf4c15212822f764a2bfc1702f4b413fa0","impliedFormat":1},{"version":"a868a534ba1c2ca9060b8a13b0ffbbbf78b4be7b0ff80d8c75b02773f7192c29","impliedFormat":1},{"version":"da7545aba8f54a50fde23e2ede00158dc8112560d934cee58098dfb03aae9b9d","impliedFormat":1},{"version":"34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","impliedFormat":1},{"version":"6aee496bf0ecfbf6731aa8cca32f4b6e92cdc0a444911a7d88410408a45ecc5d","impliedFormat":1},{"version":"b4358a89fcd9c579f84a6c68e2ce44ca91b07e4db3f8f403c2b7a72c1a1e04b6","impliedFormat":1},{"version":"b2d70a269840a9528db473ac7565442434333a05c1f66801a7a672e82beb903e","impliedFormat":1}],"options":{"allowSyntheticDefaultImports":true,"alwaysStrict":true,"composite":true,"declaration":true,"declarationMap":true,"module":7,"noImplicitAny":true,"noImplicitReturns":true,"noImplicitThis":true,"noUnusedLocals":true,"outDir":"./src","rootDir":"../src","sourceMap":true,"strictBindCallApply":true,"strictFunctionTypes":true,"target":9},"fileIdsList":[[124,125],[96,103,112],[88,96,103],[112],[94,96,103],[96],[96,112,118],[96,103,112,118],[96,97,98,103,112,115,118],[96,98,115,118],[124,126],[94,96,112],[86],[96,112],[110,119,121],[92,94,103,112],[85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123],[103],[109],[134,135,139,166,167,169,170,171,173,174],[132,133],[132],[134,174],[134,135,171,172,174],[174],[131,174,175],[134,135,173,174],[134,135,137,138,173,174],[134,135,136,173,174],[134,135,139,166,167,168,169,170,173,174],[131,134,135,139,171,173],[139,174],[141,142,143,144,145,146,147,148,149,150,174],[164,174],[140,151,159,160,161,162,163,165],[144,174],[152,153,154,155,156,157,158,174],[175,183],[183],[60,64],[59,64,79,190],[60,64,65,67],[60,61,64,65,67],[60,64,65,67,70],[60,64,65,67,69],[60,65],[60,64,65],[60,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,190],[59,60,61,62,63,190],[190],[64],[97,105],[63,129,175,186,187],[81,83],[63,81,82,83,129,130,175],[82,83,129,130],[81,82],[60,63,129,175,178,179,180,181],[59,64,79,80,82,83,84,176,177,178,179,180,181,182,183,184,185,186,187,188],[60,180],[98,127,193],[96,98,118,127,195,196,197],[98,127],[98],[96,98,127,203,204],[194,204,205,207],[96,127],[112,208],[98,112,127],[214,253],[214,238,253],[253],[214],[214,239,253],[214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252],[239,253],[98,127,206],[96,98,100,112,115,118,123,127],[96,127,128],[96,112,127],[59],[64,65,67],[61,64,65,67],[64,65,67,70],[64,65,67,69],[65],[64,65],[64,66,67,68,69,70,71,72,73,74,75,76,77,78],[59,60,61,62],[186,187],[83],[83,130],[81],[178,179,180],[180]],"referencedMap":[[126,1],[88,2],[89,3],[92,4],[93,5],[95,6],[96,6],[97,7],[98,8],[99,9],[100,10],[127,11],[101,6],[103,12],[106,13],[110,14],[111,15],[112,6],[115,16],[124,17],[117,18],[118,19],[122,14],[123,4],[175,20],[134,21],[133,22],[138,23],[173,24],[170,25],[172,26],[135,25],[136,27],[140,27],[139,28],[137,29],[171,30],[169,25],[174,31],[141,32],[146,25],[148,25],[143,25],[144,32],[150,25],[151,33],[142,25],[147,25],[149,25],[145,25],[165,34],[164,25],[166,35],[160,25],[162,25],[161,25],[157,25],[163,36],[158,25],[159,37],[152,25],[153,25],[154,25],[155,25],[156,25],[184,38],[185,39],[61,40],[80,41],[68,42],[69,43],[71,44],[72,44],[70,42],[73,42],[74,42],[75,42],[76,45],[66,46],[67,47],[77,45],[78,47],[79,48],[64,49],[59,50],[62,51],[187,52],[188,53],[84,54],[177,54],[81,50],[176,55],[191,56],[83,57],[182,58],[189,59],[181,60],[194,61],[198,62],[193,63],[202,64],[205,65],[208,66],[212,67],[213,68],[197,69],[238,70],[239,71],[214,72],[217,72],[236,70],[237,70],[227,70],[226,73],[224,70],[219,70],[232,70],[230,70],[234,70],[218,70],[231,70],[235,70],[220,70],[221,70],[233,70],[215,70],[222,70],[223,70],[225,70],[229,70],[240,74],[228,70],[216,70],[253,75],[247,74],[249,76],[248,74],[241,74],[242,74],[244,74],[246,74],[250,76],[251,76],[243,76],[245,76],[207,77],[254,78],[129,79],[255,80],[195,6]],"exportedModulesMap":[[126,1],[88,2],[89,3],[92,4],[93,5],[95,6],[96,6],[97,7],[98,8],[99,9],[100,10],[127,11],[101,6],[103,12],[106,13],[110,14],[111,15],[112,6],[115,16],[124,17],[117,18],[118,19],[122,14],[123,4],[175,20],[134,21],[133,22],[138,23],[173,24],[170,25],[172,26],[135,25],[136,27],[140,27],[139,28],[137,29],[171,30],[169,25],[174,31],[141,32],[146,25],[148,25],[143,25],[144,32],[150,25],[151,33],[142,25],[147,25],[149,25],[145,25],[165,34],[164,25],[166,35],[160,25],[162,25],[161,25],[157,25],[163,36],[158,25],[159,37],[152,25],[153,25],[154,25],[155,25],[156,25],[184,39],[185,39],[61,51],[80,81],[68,82],[69,83],[71,84],[72,84],[70,82],[73,82],[74,82],[75,82],[76,85],[66,86],[67,87],[77,85],[78,87],[79,88],[64,89],[62,51],[188,90],[84,91],[177,91],[176,92],[191,91],[83,93],[182,94],[189,59],[181,95],[194,61],[198,62],[193,63],[202,64],[205,65],[208,66],[212,67],[213,68],[197,69],[238,70],[239,71],[214,72],[217,72],[236,70],[237,70],[227,70],[226,73],[224,70],[219,70],[232,70],[230,70],[234,70],[218,70],[231,70],[235,70],[220,70],[221,70],[233,70],[215,70],[222,70],[223,70],[225,70],[229,70],[240,74],[228,70],[216,70],[253,75],[247,74],[249,76],[248,74],[241,74],[242,74],[244,74],[246,74],[250,76],[251,76],[243,76],[245,76],[207,77],[254,78],[129,79],[255,80],[195,6]],"semanticDiagnosticsPerFile":[192,125,86,126,87,88,89,90,91,92,93,94,95,96,97,85,98,99,100,127,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,124,117,118,119,120,121,122,123,175,132,134,133,138,173,170,172,135,136,140,139,137,171,169,174,167,168,141,146,148,143,144,150,151,142,147,149,145,165,164,166,160,162,161,157,163,158,159,152,153,154,155,156,82,184,185,183,61,80,68,69,71,72,70,73,74,75,76,66,67,77,78,65,79,64,59,62,187,188,186,84,177,81,176,191,130,83,179,182,178,189,190,181,180,63,60,194,198,199,200,193,201,202,205,208,209,196,210,211,212,206,213,204,203,197,238,239,214,217,236,237,227,226,224,219,232,230,234,218,231,235,220,221,233,215,222,223,225,229,240,228,216,253,252,247,249,248,241,242,244,246,250,251,243,245,207,254,129,128,255,195,10,11,15,14,2,16,17,18,19,20,21,22,23,3,4,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,58,53,54,55,56,1,57,13,12,131],"latestChangedDtsFile":"./src/consts/virtual-key-constants.d.ts"},"version":"4.9.5"}
|
package/build.sh
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
#
|
|
3
|
+
# Compiles the common file types module
|
|
4
|
+
#
|
|
5
|
+
|
|
6
|
+
# Exit on command failure and when using unset variables:
|
|
7
|
+
set -eu
|
|
8
|
+
|
|
9
|
+
## START STANDARD BUILD SCRIPT INCLUDE
|
|
10
|
+
# adjust relative paths as necessary
|
|
11
|
+
THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")"
|
|
12
|
+
. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh"
|
|
13
|
+
## END STANDARD BUILD SCRIPT INCLUDE
|
|
14
|
+
|
|
15
|
+
. "$KEYMAN_ROOT/resources/shellHelperFunctions.sh"
|
|
16
|
+
|
|
17
|
+
cd "$THIS_SCRIPT_PATH"
|
|
18
|
+
|
|
19
|
+
builder_describe "Build Keyman common file types module" \
|
|
20
|
+
"@/common/web/keyman-version" \
|
|
21
|
+
"configure" \
|
|
22
|
+
"build" \
|
|
23
|
+
"clean" \
|
|
24
|
+
"test" \
|
|
25
|
+
"publish publish to npm" \
|
|
26
|
+
"--dry-run,-n don't actually publish, just dry run"
|
|
27
|
+
builder_describe_outputs \
|
|
28
|
+
configure /node_modules \
|
|
29
|
+
build /common/web/types/build/src/main.js
|
|
30
|
+
|
|
31
|
+
builder_parse "$@"
|
|
32
|
+
|
|
33
|
+
#-------------------------------------------------------------------------------------------------------------------
|
|
34
|
+
|
|
35
|
+
if builder_start_action clean; then
|
|
36
|
+
rm -rf ./build/ ./tsconfig.tsbuildinfo
|
|
37
|
+
builder_finish_action success clean
|
|
38
|
+
else
|
|
39
|
+
# We need the schema files at runtime and bundled, so always copy it for all actions except `clean`
|
|
40
|
+
mkdir -p "$THIS_SCRIPT_PATH/build/src/"
|
|
41
|
+
cp "$KEYMAN_ROOT/resources/standards-data/ldml-keyboards/techpreview/ldml-keyboard.schema.json" "$THIS_SCRIPT_PATH/build/src/"
|
|
42
|
+
cp "$KEYMAN_ROOT/resources/standards-data/ldml-keyboards/techpreview/ldml-keyboardtest.schema.json" "$THIS_SCRIPT_PATH/build/src/"
|
|
43
|
+
cp "$KEYMAN_ROOT/common/schemas/kvks/kvks.schema.json" "$THIS_SCRIPT_PATH/build/src/"
|
|
44
|
+
cp "$KEYMAN_ROOT/common/schemas/kpj/kpj.schema.json" "$THIS_SCRIPT_PATH/build/src/"
|
|
45
|
+
cp "$KEYMAN_ROOT/common/schemas/keyman-touch-layout/keyman-touch-layout.clean.spec.json" "$THIS_SCRIPT_PATH/build/src/"
|
|
46
|
+
# Store CLDR imports
|
|
47
|
+
# load all versions that have a cldr_info.json
|
|
48
|
+
for CLDR_INFO_PATH in "$KEYMAN_ROOT/resources/standards-data/ldml-keyboards/"*/cldr_info.json
|
|
49
|
+
do
|
|
50
|
+
# TODO-LDML: developer/src/inst/download.in.mak needs these also...
|
|
51
|
+
CLDR_PATH=$(dirname "$CLDR_INFO_PATH")
|
|
52
|
+
CLDR_VER=$(basename "$CLDR_PATH")
|
|
53
|
+
mkdir -p "$THIS_SCRIPT_PATH/build/src/import/$CLDR_VER"
|
|
54
|
+
# TODO-LDML: When these are copied, the DOCTYPE will break due to the wrong path. We don't use the DTD so it should be OK.
|
|
55
|
+
cp "$CLDR_INFO_PATH" "$CLDR_PATH/import/"*.xml "$THIS_SCRIPT_PATH/build/src/import/$CLDR_VER/"
|
|
56
|
+
done
|
|
57
|
+
fi
|
|
58
|
+
|
|
59
|
+
#-------------------------------------------------------------------------------------------------------------------
|
|
60
|
+
|
|
61
|
+
if builder_start_action configure; then
|
|
62
|
+
verify_npm_setup
|
|
63
|
+
builder_finish_action success configure
|
|
64
|
+
fi
|
|
65
|
+
|
|
66
|
+
#-------------------------------------------------------------------------------------------------------------------
|
|
67
|
+
|
|
68
|
+
if builder_start_action build; then
|
|
69
|
+
npm run build
|
|
70
|
+
builder_finish_action success build
|
|
71
|
+
fi
|
|
72
|
+
|
|
73
|
+
#-------------------------------------------------------------------------------------------------------------------
|
|
74
|
+
|
|
75
|
+
if builder_start_action test; then
|
|
76
|
+
npm test
|
|
77
|
+
builder_finish_action success test
|
|
78
|
+
fi
|
|
79
|
+
|
|
80
|
+
#-------------------------------------------------------------------------------------------------------------------
|
|
81
|
+
|
|
82
|
+
if builder_start_action publish; then
|
|
83
|
+
. "$KEYMAN_ROOT/resources/build/build-utils-ci.inc.sh"
|
|
84
|
+
builder_publish_to_npm
|
|
85
|
+
builder_finish_action success publish
|
|
86
|
+
fi
|
package/package.json
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@keymanapp/common-types",
|
|
3
|
+
"description": "Keyman Developer keyboard file types",
|
|
4
|
+
"keywords": [
|
|
5
|
+
"keyboard",
|
|
6
|
+
"keyman",
|
|
7
|
+
"ldml",
|
|
8
|
+
"unicode"
|
|
9
|
+
],
|
|
10
|
+
"type": "module",
|
|
11
|
+
"exports": {
|
|
12
|
+
".": "./build/src/main.js"
|
|
13
|
+
},
|
|
14
|
+
"scripts": {
|
|
15
|
+
"build": "tsc -b",
|
|
16
|
+
"test": "cd test && tsc -b && cd .. && c8 --skip-full --reporter=lcov --reporter=text mocha",
|
|
17
|
+
"prepublishOnly": "npm run build"
|
|
18
|
+
},
|
|
19
|
+
"author": "Marc Durdin <marc@keyman.com> (https://github.com/mcdurdin)",
|
|
20
|
+
"license": "MIT",
|
|
21
|
+
"bugs": {
|
|
22
|
+
"url": "https://github.com/keymanapp/keyman/issues"
|
|
23
|
+
},
|
|
24
|
+
"dependencies": {
|
|
25
|
+
"@keymanapp/keyman-version": "*",
|
|
26
|
+
"ajv": "^8.11.0",
|
|
27
|
+
"restructure": "git+https://github.com/keymanapp/dependency-restructure.git#49d129cf0916d082a7278bb09296fb89cecfcc50",
|
|
28
|
+
"semver": "^7.3.7",
|
|
29
|
+
"xml2js": "git+https://github.com/keymanapp/dependency-node-xml2js#535fe732dc408d697e0f847c944cc45f0baf0829"
|
|
30
|
+
},
|
|
31
|
+
"devDependencies": {
|
|
32
|
+
"@types/chai": "^4.1.7",
|
|
33
|
+
"@types/git-diff": "^2.0.3",
|
|
34
|
+
"@types/mocha": "^5.2.7",
|
|
35
|
+
"@types/node": "^10.14.6",
|
|
36
|
+
"@types/semver": "^7.3.12",
|
|
37
|
+
"@types/xml2js": "^0.4.5",
|
|
38
|
+
"c8": "^7.12.0",
|
|
39
|
+
"chai": "^4.3.4",
|
|
40
|
+
"chalk": "^2.4.2",
|
|
41
|
+
"git-diff": "^2.0.6",
|
|
42
|
+
"hexy": "^0.3.4",
|
|
43
|
+
"mocha": "^8.4.0",
|
|
44
|
+
"ts-node": "^9.1.1",
|
|
45
|
+
"typescript": "^4.9.5"
|
|
46
|
+
},
|
|
47
|
+
"mocha": {
|
|
48
|
+
"spec": "build/test/**/test-*.js",
|
|
49
|
+
"require": [
|
|
50
|
+
"source-map-support/register"
|
|
51
|
+
]
|
|
52
|
+
},
|
|
53
|
+
"repository": {
|
|
54
|
+
"type": "git",
|
|
55
|
+
"url": "git+https://github.com/keymanapp/keyman.git"
|
|
56
|
+
},
|
|
57
|
+
"version": "17.0.85-alpha"
|
|
58
|
+
}
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
|
|
2
|
+
// Define standard keycode numbers (exposed for use by other modules)
|
|
3
|
+
// TODO-LDML: merge with common\web\keyboard-processor\src\text\codes.ts
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* May include non-US virtual key codes
|
|
7
|
+
*/
|
|
8
|
+
export const USVirtualKeyCodes = {
|
|
9
|
+
K_BKSP:8,
|
|
10
|
+
K_TAB:9,
|
|
11
|
+
K_ENTER:13,
|
|
12
|
+
K_SHIFT:16,
|
|
13
|
+
K_CONTROL:17,
|
|
14
|
+
K_ALT:18,
|
|
15
|
+
K_PAUSE:19,
|
|
16
|
+
K_CAPS:20,
|
|
17
|
+
K_ESC:27,
|
|
18
|
+
K_SPACE:32,
|
|
19
|
+
K_PGUP:33,
|
|
20
|
+
K_PGDN:34,
|
|
21
|
+
K_END:35,
|
|
22
|
+
K_HOME:36,
|
|
23
|
+
K_LEFT:37,
|
|
24
|
+
K_UP:38,
|
|
25
|
+
K_RIGHT:39,
|
|
26
|
+
K_DOWN:40,
|
|
27
|
+
K_SEL:41,
|
|
28
|
+
K_PRINT:42,
|
|
29
|
+
K_EXEC:43,
|
|
30
|
+
K_INS:45,
|
|
31
|
+
K_DEL:46,
|
|
32
|
+
K_HELP:47,
|
|
33
|
+
K_0:48,
|
|
34
|
+
K_1:49,
|
|
35
|
+
K_2:50,
|
|
36
|
+
K_3:51,
|
|
37
|
+
K_4:52,
|
|
38
|
+
K_5:53,
|
|
39
|
+
K_6:54,
|
|
40
|
+
K_7:55,
|
|
41
|
+
K_8:56,
|
|
42
|
+
K_9:57,
|
|
43
|
+
K_A:65,
|
|
44
|
+
K_B:66,
|
|
45
|
+
K_C:67,
|
|
46
|
+
K_D:68,
|
|
47
|
+
K_E:69,
|
|
48
|
+
K_F:70,
|
|
49
|
+
K_G:71,
|
|
50
|
+
K_H:72,
|
|
51
|
+
K_I:73,
|
|
52
|
+
K_J:74,
|
|
53
|
+
K_K:75,
|
|
54
|
+
K_L:76,
|
|
55
|
+
K_M:77,
|
|
56
|
+
K_N:78,
|
|
57
|
+
K_O:79,
|
|
58
|
+
K_P:80,
|
|
59
|
+
K_Q:81,
|
|
60
|
+
K_R:82,
|
|
61
|
+
K_S:83,
|
|
62
|
+
K_T:84,
|
|
63
|
+
K_U:85,
|
|
64
|
+
K_V:86,
|
|
65
|
+
K_W:87,
|
|
66
|
+
K_X:88,
|
|
67
|
+
K_Y:89,
|
|
68
|
+
K_Z:90,
|
|
69
|
+
K_NP0:96,
|
|
70
|
+
K_NP1:97,
|
|
71
|
+
K_NP2:98,
|
|
72
|
+
K_NP3:99,
|
|
73
|
+
K_NP4:100,
|
|
74
|
+
K_NP5:101,
|
|
75
|
+
K_NP6:102,
|
|
76
|
+
K_NP7:103,
|
|
77
|
+
K_NP8:104,
|
|
78
|
+
K_NP9:105,
|
|
79
|
+
K_NPSTAR:106,
|
|
80
|
+
K_NPPLUS:107,
|
|
81
|
+
K_SEPARATOR:108,
|
|
82
|
+
K_NPMINUS:109,
|
|
83
|
+
K_NPDOT:110,
|
|
84
|
+
K_NPSLASH:111,
|
|
85
|
+
K_F1:112,
|
|
86
|
+
K_F2:113,
|
|
87
|
+
K_F3:114,
|
|
88
|
+
K_F4:115,
|
|
89
|
+
K_F5:116,
|
|
90
|
+
K_F6:117,
|
|
91
|
+
K_F7:118,
|
|
92
|
+
K_F8:119,
|
|
93
|
+
K_F9:120,
|
|
94
|
+
K_F10:121,
|
|
95
|
+
K_F11:122,
|
|
96
|
+
K_F12:123,
|
|
97
|
+
K_NUMLOCK:144,
|
|
98
|
+
K_SCROLL:145,
|
|
99
|
+
K_LSHIFT:160,
|
|
100
|
+
K_RSHIFT:161,
|
|
101
|
+
K_LCONTROL:162,
|
|
102
|
+
K_RCONTROL:163,
|
|
103
|
+
K_LALT:164,
|
|
104
|
+
K_RALT:165,
|
|
105
|
+
K_COLON:186,
|
|
106
|
+
K_EQUAL:187,
|
|
107
|
+
K_COMMA:188,
|
|
108
|
+
K_HYPHEN:189,
|
|
109
|
+
K_PERIOD:190,
|
|
110
|
+
K_SLASH:191,
|
|
111
|
+
K_BKQUOTE:192,
|
|
112
|
+
K_LBRKT:219,
|
|
113
|
+
K_BKSLASH:220,
|
|
114
|
+
K_RBRKT:221,
|
|
115
|
+
K_QUOTE:222,
|
|
116
|
+
K_oE2:226, // ISO B00, key to right of left shift, not on US keyboard
|
|
117
|
+
K_OE2:226,
|
|
118
|
+
k_oC1:193, // ISO B11, ABNT-2 key to left of right shift, not on US keyboard
|
|
119
|
+
k_OC1:193,
|
|
120
|
+
/*K_LOPT:50001,
|
|
121
|
+
K_ROPT:50002,
|
|
122
|
+
K_NUMERALS:50003,
|
|
123
|
+
K_SYMBOLS:50004,
|
|
124
|
+
K_CURRENCIES:50005,
|
|
125
|
+
K_UPPER:50006,
|
|
126
|
+
K_LOWER:50007,
|
|
127
|
+
K_ALPHA:50008,
|
|
128
|
+
K_SHIFTED:50009,
|
|
129
|
+
K_ALTGR:50010,
|
|
130
|
+
K_TABBACK:50011,
|
|
131
|
+
K_TABFWD:50012*/
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
const k = USVirtualKeyCodes;
|
|
135
|
+
|
|
136
|
+
export type KeyMap = number[][];
|
|
137
|
+
|
|
138
|
+
export const USVirtualKeyMap: KeyMap = [
|
|
139
|
+
// ` 1 2 3 4 5 6 7 8 9 0 - = [bksp]
|
|
140
|
+
[ k.K_BKQUOTE, k.K_1, k.K_2, k.K_3, k.K_4, k.K_5, k.K_6, k.K_7, k.K_8, k.K_9, k.K_0, k.K_HYPHEN, k.K_EQUAL ],
|
|
141
|
+
// [tab] Q W E R T Y U I O P [ ] \
|
|
142
|
+
[ k.K_Q, k.K_W, k.K_E, k.K_R, k.K_T, k.K_Y, k.K_U, k.K_I, k.K_O, k.K_P, k.K_LBRKT, k.K_RBRKT, k.K_BKSLASH ],
|
|
143
|
+
// [caps] A S D F G H J K L ; ' [enter]
|
|
144
|
+
[ k.K_A, k.K_S, k.K_D, k.K_F, k.K_G, k.K_H, k.K_J, k.K_K, k.K_L, k.K_COLON, k.K_QUOTE ],
|
|
145
|
+
// [shift] Z X C V B N M , . / [shift] *=oE2
|
|
146
|
+
[ k.K_Z, k.K_X, k.K_C, k.K_V, k.K_B, k.K_N, k.K_M, k.K_COMMA, k.K_PERIOD, k.K_SLASH ],
|
|
147
|
+
// space
|
|
148
|
+
[ k.K_SPACE ],
|
|
149
|
+
];
|
|
150
|
+
|
|
151
|
+
export const ISOVirtualKeyMap: KeyMap = [
|
|
152
|
+
// ` 1 2 3 4 5 6 7 8 9 0 - = [bksp]
|
|
153
|
+
[ k.K_BKQUOTE, k.K_1, k.K_2, k.K_3, k.K_4, k.K_5, k.K_6, k.K_7, k.K_8, k.K_9, k.K_0, k.K_HYPHEN, k.K_EQUAL ],
|
|
154
|
+
// [tab] Q W E R T Y U I O P [ ]
|
|
155
|
+
[ k.K_Q, k.K_W, k.K_E, k.K_R, k.K_T, k.K_Y, k.K_U, k.K_I, k.K_O, k.K_P, k.K_LBRKT, k.K_RBRKT ],
|
|
156
|
+
// [caps] A S D F G H J K L ; ' \ [enter]
|
|
157
|
+
[ k.K_A, k.K_S, k.K_D, k.K_F, k.K_G, k.K_H, k.K_J, k.K_K, k.K_L, k.K_COLON, k.K_QUOTE, k.K_BKSLASH ],
|
|
158
|
+
// [shift] * Z X C V B N M , . / [shift] *=oE2
|
|
159
|
+
[ k.K_oE2, k.K_Z, k.K_X, k.K_C, k.K_V, k.K_B, k.K_N, k.K_M, k.K_COMMA, k.K_PERIOD, k.K_SLASH ],
|
|
160
|
+
// space
|
|
161
|
+
[ k.K_SPACE ],
|
|
162
|
+
];
|
|
163
|
+
|
|
164
|
+
export const JISVirtualKeyMap: KeyMap = [
|
|
165
|
+
// [Hankaku/Zenkaku] 1 2 3 4 5 6 7 8 9 0 - ^ ¥ [bksp]
|
|
166
|
+
[ k.K_1, k.K_2, k.K_3, k.K_4, k.K_5, k.K_6, k.K_7, k.K_8, k.K_9, k.K_0, k.K_HYPHEN, k.K_EQUAL, k.K_oE2 /* YEN? */ ],
|
|
167
|
+
// [tab] Q W E R T Y U I O P @«`» [ [enter]
|
|
168
|
+
[ k.K_Q, k.K_W, k.K_E, k.K_R, k.K_T, k.K_Y, k.K_U, k.K_I, k.K_O, k.K_P, k.K_BKQUOTE, k.K_LBRKT ],
|
|
169
|
+
// [caps] A S D F G H J K L ; : ] [enter]
|
|
170
|
+
[ k.K_A, k.K_S, k.K_D, k.K_F, k.K_G, k.K_H, k.K_J, k.K_K, k.K_L, k.K_COLON, k.K_QUOTE, k.K_BKSLASH ],
|
|
171
|
+
// [shift] Z X C V B N M , . / _ [shift]
|
|
172
|
+
[ k.K_Z, k.K_X, k.K_C, k.K_V, k.K_B, k.K_N, k.K_M, k.K_COMMA, k.K_PERIOD, k.K_SLASH, k.k_oC1 /* ろ */ ],
|
|
173
|
+
// space
|
|
174
|
+
[ k.K_SPACE ],
|
|
175
|
+
];
|
|
176
|
+
|
|
177
|
+
export const ABNT2VirtualKeyMap: KeyMap = [
|
|
178
|
+
// ' 1 2 3 4 5 6 7 8 9 0 - = [bksp]
|
|
179
|
+
[ k.K_BKQUOTE, k.K_1, k.K_2, k.K_3, k.K_4, k.K_5, k.K_6, k.K_7, k.K_8, k.K_9, k.K_0, k.K_HYPHEN, k.K_EQUAL ],
|
|
180
|
+
// [tab] Q W E R T Y U I O P ´ [
|
|
181
|
+
[ k.K_Q, k.K_W, k.K_E, k.K_R, k.K_T, k.K_Y, k.K_U, k.K_I, k.K_O, k.K_P, k.K_LBRKT, k.K_RBRKT ],
|
|
182
|
+
// [caps] A S D F G H J K L ç ~ ] [enter]
|
|
183
|
+
[ k.K_A, k.K_S, k.K_D, k.K_F, k.K_G, k.K_H, k.K_J, k.K_K, k.K_L, k.K_COLON, k.K_QUOTE, k.K_BKSLASH ],
|
|
184
|
+
// [shift] \ Z X C V B N M , . ; / [shift]
|
|
185
|
+
[ k.K_oE2, k.K_Z, k.K_X, k.K_C, k.K_V, k.K_B, k.K_N, k.K_M, k.K_COMMA, k.K_PERIOD, k.K_SLASH, k.k_oC1 /* ABNT2 */ ],
|
|
186
|
+
// space
|
|
187
|
+
[ k.K_SPACE ],
|
|
188
|
+
];
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* Map from a hardware constant to a keymap
|
|
192
|
+
* For the 'key' see constants.layr_list_hardware_map
|
|
193
|
+
*/
|
|
194
|
+
export const HardwareToKeymap: Map<string, KeyMap> = new Map(
|
|
195
|
+
[
|
|
196
|
+
["us", USVirtualKeyMap],
|
|
197
|
+
["iso", ISOVirtualKeyMap],
|
|
198
|
+
["jis", JISVirtualKeyMap],
|
|
199
|
+
["abnt2", ABNT2VirtualKeyMap],
|
|
200
|
+
]
|
|
201
|
+
);
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* Maps LDML VKey Names from CLDR VKey Enum in TR35 to Keyman virtual key codes
|
|
205
|
+
*/
|
|
206
|
+
export const LdmlVkeyNames: Record<string, number> = {
|
|
207
|
+
'SPACE': k.K_SPACE, // 0x20, // A03
|
|
208
|
+
'0': k.K_0, // 0x30, // E10
|
|
209
|
+
'1': k.K_1, // 0x31, // E01
|
|
210
|
+
'2': k.K_2, // 0x32, // E02
|
|
211
|
+
'3': k.K_3, // 0x33, // E03
|
|
212
|
+
'4': k.K_4, // 0x34, // E04
|
|
213
|
+
'5': k.K_5, // 0x35, // E05
|
|
214
|
+
'6': k.K_6, // 0x36, // E06
|
|
215
|
+
'7': k.K_7, // 0x37, // E07
|
|
216
|
+
'8': k.K_8, // 0x38, // E08
|
|
217
|
+
'9': k.K_9, // 0x39, // E09
|
|
218
|
+
'A': k.K_A, // 0x41, // C01
|
|
219
|
+
'B': k.K_B, // 0x42, // B05
|
|
220
|
+
'C': k.K_C, // 0x43, // B03
|
|
221
|
+
'D': k.K_D, // 0x44, // C03
|
|
222
|
+
'E': k.K_E, // 0x45, // D03
|
|
223
|
+
'F': k.K_F, // 0x46, // C04
|
|
224
|
+
'G': k.K_G, // 0x47, // C05
|
|
225
|
+
'H': k.K_H, // 0x48, // C06
|
|
226
|
+
'I': k.K_I, // 0x49, // D08
|
|
227
|
+
'J': k.K_J, // 0x4A, // C07
|
|
228
|
+
'K': k.K_K, // 0x4B, // C08
|
|
229
|
+
'L': k.K_L, // 0x4C, // C09
|
|
230
|
+
'M': k.K_M, // 0x4D, // B07
|
|
231
|
+
'N': k.K_N, // 0x4E, // B06
|
|
232
|
+
'O': k.K_O, // 0x4F, // D09
|
|
233
|
+
'P': k.K_P, // 0x50, // D10
|
|
234
|
+
'Q': k.K_Q, // 0x51, // D01
|
|
235
|
+
'R': k.K_R, // 0x52, // D04
|
|
236
|
+
'S': k.K_S, // 0x53, // C02
|
|
237
|
+
'T': k.K_T, // 0x54, // D05
|
|
238
|
+
'U': k.K_U, // 0x55, // D07
|
|
239
|
+
'V': k.K_V, // 0x56, // B05
|
|
240
|
+
'W': k.K_W, // 0x57, // D02
|
|
241
|
+
'X': k.K_X, // 0x58, // B02
|
|
242
|
+
'Y': k.K_Y, // 0x59, // D06
|
|
243
|
+
'Z': k.K_Z, // 0x5A, // B01
|
|
244
|
+
'SEMICOLON': k.K_COLON, // 0xBA, // C10
|
|
245
|
+
'EQUAL': k.K_EQUAL, // 0xBB, // E12
|
|
246
|
+
'COMMA': k.K_COMMA, // 0xBC, // B08
|
|
247
|
+
'HYPHEN': k.K_HYPHEN, // 0xBD, // E11
|
|
248
|
+
'PERIOD': k.K_PERIOD, // 0xBE, // B09
|
|
249
|
+
'SLASH': k.K_SLASH, // 0xBF, // B10
|
|
250
|
+
'GRAVE': k.K_BKQUOTE, // 0xC0, // E00
|
|
251
|
+
'LBRACKET': k.K_LBRKT, // 0xDB, // D11
|
|
252
|
+
'BACKSLASH': k.K_BKSLASH, // 0xDC, // D13
|
|
253
|
+
'RBRACKET': k.K_RBRKT, // 0xDD, // D12
|
|
254
|
+
'QUOTE': k.K_QUOTE, // 0xDE, // C11
|
|
255
|
+
'LESS-THAN': k.K_oE2, // 0xE2, // B00 102nd key on European layouts, right of left shift.
|
|
256
|
+
'ABNT2': k.k_oC1, // 0xC1, // B11 Extra key, left of right-shift, ABNT2
|
|
257
|
+
};
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { default as AjvModule } from 'ajv';
|
|
2
|
+
const Ajv = AjvModule.default; // The actual expected Ajv type.
|
|
3
|
+
import { TouchLayoutFile } from "./keyman-touch-layout-file.js";
|
|
4
|
+
|
|
5
|
+
export class TouchLayoutFileReader {
|
|
6
|
+
public read(source: Uint8Array): TouchLayoutFile {
|
|
7
|
+
const decoder = new TextDecoder('utf-8', {fatal:true, ignoreBOM: true});
|
|
8
|
+
let sourceString: string;
|
|
9
|
+
try {
|
|
10
|
+
sourceString = decoder.decode(source);
|
|
11
|
+
/* c8 ignore next 7 */
|
|
12
|
+
} catch(e) {
|
|
13
|
+
if(e instanceof TypeError) {
|
|
14
|
+
// TODO: Do we want to do something else with this?
|
|
15
|
+
throw e;
|
|
16
|
+
}
|
|
17
|
+
throw e;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
let result: TouchLayoutFile;
|
|
21
|
+
try {
|
|
22
|
+
result = JSON.parse(sourceString, function(key, value) {
|
|
23
|
+
// `row.id` should be number, but may have been stringified; we use
|
|
24
|
+
// presence of `key` property to recognise this as a `TouchLayoutRow`.
|
|
25
|
+
if(this.key && key == 'id' && typeof value == 'string') {
|
|
26
|
+
let newValue = parseInt(value, 10);
|
|
27
|
+
/* c8 ignore next 3 */
|
|
28
|
+
if(isNaN(newValue)) {
|
|
29
|
+
throw new TypeError(`Invalid row.id: "${value}"`);
|
|
30
|
+
}
|
|
31
|
+
return newValue;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// `key.width`, `key.pad`, `key.sp` should be number, but may have been
|
|
35
|
+
// stringified
|
|
36
|
+
if(key == 'width' || key == 'pad' || key == 'sp') {
|
|
37
|
+
if(value === '') {
|
|
38
|
+
// Empty string is equivalent to not present, so fall back to
|
|
39
|
+
// default value
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
let newValue = parseInt(value, 10);
|
|
44
|
+
/* c8 ignore next 3 */
|
|
45
|
+
if(isNaN(newValue)) {
|
|
46
|
+
throw new TypeError(`Invalid [sub]key.${key}: "${value}"`);
|
|
47
|
+
}
|
|
48
|
+
return newValue;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
if(Array.isArray(value) && value.length == 0) {
|
|
52
|
+
// Delete empty arrays
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
return value;
|
|
57
|
+
});
|
|
58
|
+
/* c8 ignore next 7 */
|
|
59
|
+
} catch(e) {
|
|
60
|
+
if(e instanceof SyntaxError) {
|
|
61
|
+
// TODO: Do we want to do something else with this?
|
|
62
|
+
throw e;
|
|
63
|
+
}
|
|
64
|
+
throw e;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return result;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
public validate(source: TouchLayoutFile, schemaBuffer: Buffer): void {
|
|
71
|
+
const schema = JSON.parse(schemaBuffer.toString('utf8'));
|
|
72
|
+
const ajv = new Ajv();
|
|
73
|
+
if(!ajv.validate(schema, source))
|
|
74
|
+
/* c8 ignore next 3 */
|
|
75
|
+
{
|
|
76
|
+
throw new Error(ajv.errorsText());
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
};
|