@keymanapp/common-types 18.0.41-alpha → 18.0.46-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 +191 -191
- package/build/src/consts/virtual-key-constants.js +221 -221
- package/build/src/consts/virtual-key-constants.js.map +1 -1
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts +5 -5
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.js +72 -72
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.js.map +1 -1
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts +28 -28
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.js +120 -120
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.js.map +1 -1
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts +95 -95
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.js +52 -52
- package/build/src/kmx/element-string.d.ts +23 -23
- package/build/src/kmx/element-string.js +125 -125
- package/build/src/kmx/element-string.js.map +1 -1
- package/build/src/kmx/keyman-targets.d.ts +20 -20
- package/build/src/kmx/keyman-targets.js +79 -79
- package/build/src/kmx/keyman-targets.js.map +1 -1
- package/build/src/kmx/kmx-builder.d.ts +32 -32
- package/build/src/kmx/kmx-builder.js +189 -189
- package/build/src/kmx/kmx-builder.js.map +1 -1
- package/build/src/kmx/kmx-file-reader.d.ts +13 -13
- package/build/src/kmx/kmx-file-reader.js +134 -134
- package/build/src/kmx/kmx-file-reader.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-disp.d.ts +18 -18
- package/build/src/kmx/kmx-plus-builder/build-disp.js +27 -27
- package/build/src/kmx/kmx-plus-builder/build-disp.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-elem.d.ts +28 -28
- package/build/src/kmx/kmx-plus-builder/build-elem.js +89 -89
- package/build/src/kmx/kmx-plus-builder/build-elem.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-keys.d.ts +56 -56
- package/build/src/kmx/kmx-plus-builder/build-keys.js +107 -107
- package/build/src/kmx/kmx-plus-builder/build-keys.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-layr.d.ts +53 -53
- package/build/src/kmx/kmx-plus-builder/build-layr.js +101 -101
- package/build/src/kmx/kmx-plus-builder/build-layr.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-list.d.ts +35 -35
- package/build/src/kmx/kmx-plus-builder/build-list.js +66 -66
- package/build/src/kmx/kmx-plus-builder/build-list.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-loca.d.ts +11 -11
- package/build/src/kmx/kmx-plus-builder/build-loca.js +21 -21
- package/build/src/kmx/kmx-plus-builder/build-loca.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-meta.d.ts +16 -16
- package/build/src/kmx/kmx-plus-builder/build-meta.js +20 -20
- package/build/src/kmx/kmx-plus-builder/build-sect.d.ts +15 -15
- package/build/src/kmx/kmx-plus-builder/build-sect.js +15 -15
- package/build/src/kmx/kmx-plus-builder/build-sect.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-strs.d.ts +22 -22
- package/build/src/kmx/kmx-plus-builder/build-strs.js +46 -46
- package/build/src/kmx/kmx-plus-builder/build-strs.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-tran.d.ts +32 -32
- package/build/src/kmx/kmx-plus-builder/build-tran.js +69 -69
- package/build/src/kmx/kmx-plus-builder/build-tran.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-uset.d.ts +30 -30
- package/build/src/kmx/kmx-plus-builder/build-uset.js +60 -60
- package/build/src/kmx/kmx-plus-builder/build-uset.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-vars.d.ts +21 -21
- package/build/src/kmx/kmx-plus-builder/build-vars.js +48 -48
- package/build/src/kmx/kmx-plus-builder/build-vars.js.map +1 -1
- package/build/src/kmx/kmx-plus-builder/builder-section.d.ts +9 -9
- package/build/src/kmx/kmx-plus-builder/builder-section.js +2 -2
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts +42 -42
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.js +137 -137
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.js.map +1 -1
- package/build/src/kmx/kmx-plus.d.ts +322 -322
- package/build/src/kmx/kmx-plus.js +830 -830
- package/build/src/kmx/kmx-plus.js.map +1 -1
- package/build/src/kmx/kmx.d.ts +233 -233
- package/build/src/kmx/kmx.js +302 -302
- package/build/src/kmx/kmx.js.map +1 -1
- package/build/src/kmx/string-list.d.ts +35 -35
- package/build/src/kmx/string-list.js +88 -88
- package/build/src/kmx/string-list.js.map +1 -1
- package/build/src/kpj/keyman-developer-project.d.ts +78 -78
- package/build/src/kpj/keyman-developer-project.js +195 -195
- package/build/src/kpj/keyman-developer-project.js.map +1 -1
- package/build/src/kpj/kpj-file-reader.d.ts +18 -18
- package/build/src/kpj/kpj-file-reader.js +119 -119
- package/build/src/kpj/kpj-file-reader.js.map +1 -1
- package/build/src/kpj/kpj-file.d.ts +39 -39
- package/build/src/kpj/kpj-file.js +10 -10
- package/build/src/kvk/kvk-file-reader.d.ts +4 -4
- package/build/src/kvk/kvk-file-reader.js +37 -37
- package/build/src/kvk/kvk-file-reader.js.map +1 -1
- package/build/src/kvk/kvk-file-writer.d.ts +19 -19
- package/build/src/kvk/kvk-file-writer.js +77 -77
- package/build/src/kvk/kvk-file-writer.js.map +1 -1
- package/build/src/kvk/kvk-file.d.ts +66 -66
- package/build/src/kvk/kvk-file.d.ts.map +1 -1
- package/build/src/kvk/kvk-file.js +90 -90
- package/build/src/kvk/kvk-file.js.map +1 -1
- package/build/src/kvk/kvks-file-reader.d.ts +23 -23
- package/build/src/kvk/kvks-file-reader.js +175 -175
- package/build/src/kvk/kvks-file-reader.js.map +1 -1
- package/build/src/kvk/kvks-file-writer.d.ts +6 -6
- package/build/src/kvk/kvks-file-writer.js +106 -106
- package/build/src/kvk/kvks-file-writer.js.map +1 -1
- package/build/src/kvk/kvks-file.d.ts +43 -43
- package/build/src/kvk/kvks-file.js +9 -9
- package/build/src/kvk/visual-keyboard.d.ts +44 -44
- package/build/src/kvk/visual-keyboard.js +75 -75
- package/build/src/kvk/visual-keyboard.js.map +1 -1
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts +60 -60
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.js +19 -19
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts +95 -95
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.js +409 -409
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.js.map +1 -1
- package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts +170 -170
- package/build/src/ldml-keyboard/ldml-keyboard-xml.js +55 -55
- package/build/src/ldml-keyboard/pattern-parser.d.ts +201 -201
- package/build/src/ldml-keyboard/pattern-parser.js +490 -490
- package/build/src/ldml-keyboard/pattern-parser.js.map +1 -1
- package/build/src/ldml-keyboard/unicodeset-parser-api.d.ts +37 -37
- package/build/src/ldml-keyboard/unicodeset-parser-api.js +27 -27
- package/build/src/main.d.ts +33 -33
- package/build/src/main.js +32 -32
- package/build/src/package/kmp-json-file.d.ts +115 -115
- package/build/src/package/kmp-json-file.js +1 -1
- package/build/src/package/kps-file.d.ts +175 -175
- package/build/src/package/kps-file.js +15 -15
- package/build/src/schema-validators.d.ts +13 -13
- package/build/src/schema-validators.js +25 -25
- package/build/src/schemas/displaymap.schema.d.ts +57 -57
- package/build/src/schemas/displaymap.schema.js +35 -35
- package/build/src/schemas/displaymap.schema.validator.d.mts +2 -2
- package/build/src/schemas/displaymap.schema.validator.mjs +266 -266
- package/build/src/schemas/displaymap.schema.validator.mjs.map +1 -1
- package/build/src/schemas/keyboard_info.schema.d.ts +209 -209
- package/build/src/schemas/keyboard_info.schema.js +98 -98
- package/build/src/schemas/keyboard_info.schema.validator.d.mts +2 -2
- package/build/src/schemas/keyboard_info.schema.validator.mjs +1160 -1160
- package/build/src/schemas/keyboard_info.schema.validator.mjs.map +1 -1
- package/build/src/schemas/keyman-touch-layout.clean.spec.d.ts +227 -227
- package/build/src/schemas/keyman-touch-layout.clean.spec.js +151 -151
- package/build/src/schemas/keyman-touch-layout.clean.spec.validator.d.mts +2 -2
- package/build/src/schemas/keyman-touch-layout.clean.spec.validator.mjs +1094 -1094
- package/build/src/schemas/keyman-touch-layout.clean.spec.validator.mjs.map +1 -1
- package/build/src/schemas/keyman-touch-layout.spec.d.ts +229 -229
- package/build/src/schemas/keyman-touch-layout.spec.js +140 -140
- package/build/src/schemas/keyman-touch-layout.spec.validator.d.mts +2 -2
- package/build/src/schemas/keyman-touch-layout.spec.validator.mjs +1436 -1436
- package/build/src/schemas/keyman-touch-layout.spec.validator.mjs.map +1 -1
- package/build/src/schemas/kmp.schema.d.ts +324 -324
- package/build/src/schemas/kmp.schema.js +353 -353
- package/build/src/schemas/kmp.schema.validator.d.mts +2 -2
- package/build/src/schemas/kmp.schema.validator.mjs +1627 -1627
- package/build/src/schemas/kmp.schema.validator.mjs.map +1 -1
- package/build/src/schemas/kpj-9.0.schema.d.ts +152 -152
- package/build/src/schemas/kpj-9.0.schema.js +131 -131
- package/build/src/schemas/kpj-9.0.schema.validator.d.mts +2 -2
- package/build/src/schemas/kpj-9.0.schema.validator.mjs +655 -655
- package/build/src/schemas/kpj-9.0.schema.validator.mjs.map +1 -1
- package/build/src/schemas/kpj.schema.d.ts +122 -122
- package/build/src/schemas/kpj.schema.js +129 -129
- package/build/src/schemas/kpj.schema.validator.d.mts +2 -2
- package/build/src/schemas/kpj.schema.validator.mjs +515 -515
- package/build/src/schemas/kpj.schema.validator.mjs.map +1 -1
- package/build/src/schemas/kvks.schema.d.ts +160 -160
- package/build/src/schemas/kvks.schema.js +182 -182
- package/build/src/schemas/kvks.schema.validator.d.mts +2 -2
- package/build/src/schemas/kvks.schema.validator.mjs +625 -625
- package/build/src/schemas/kvks.schema.validator.mjs.map +1 -1
- package/build/src/schemas/ldml-keyboard3.schema.d.ts +635 -635
- package/build/src/schemas/ldml-keyboard3.schema.js +696 -696
- package/build/src/schemas/ldml-keyboard3.schema.validator.d.mts +2 -2
- package/build/src/schemas/ldml-keyboard3.schema.validator.mjs +3117 -3117
- package/build/src/schemas/ldml-keyboard3.schema.validator.mjs.map +1 -1
- package/build/src/schemas/ldml-keyboardtest3.schema.d.ts +192 -192
- package/build/src/schemas/ldml-keyboardtest3.schema.js +225 -225
- package/build/src/schemas/ldml-keyboardtest3.schema.validator.d.mts +2 -2
- package/build/src/schemas/ldml-keyboardtest3.schema.validator.mjs +744 -744
- package/build/src/schemas/ldml-keyboardtest3.schema.validator.mjs.map +1 -1
- package/build/src/schemas.d.ts +2300 -2300
- package/build/src/schemas.js +23 -23
- package/build/src/util/common-events.d.ts +44 -44
- package/build/src/util/common-events.js +26 -26
- package/build/src/util/compiler-interfaces.d.ts +371 -371
- package/build/src/util/compiler-interfaces.d.ts.map +1 -1
- package/build/src/util/compiler-interfaces.js +380 -380
- package/build/src/util/compiler-interfaces.js.map +1 -1
- package/build/src/util/errors.d.ts +5 -5
- package/build/src/util/errors.js +5 -5
- package/build/src/util/file-types.d.ts +93 -93
- package/build/src/util/file-types.d.ts.map +1 -1
- package/build/src/util/file-types.js +142 -142
- package/build/src/util/file-types.js.map +1 -1
- package/build/src/util/util.d.ts +98 -98
- package/build/src/util/util.js +368 -368
- package/build/src/util/util.js.map +1 -1
- package/package.json +3 -3
package/build/src/kmx/kmx.js
CHANGED
|
@@ -1,304 +1,304 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
-
import * as r from 'restructure';
|
|
4
|
-
/* Definitions from kmx_file.h. Must be kept in sync */
|
|
5
|
-
// TODO: split kmx-file from kmx in-memory, similar to what I've done for kvk (keep restructure decl + BUILDER_ interfaces together)
|
|
6
|
-
// In memory representations of KMX structures
|
|
7
|
-
// kmx-builder will transform these to the corresponding COMP_xxxx
|
|
8
|
-
export class KEYBOARD {
|
|
9
|
-
fileVersion; // dwFileVersion (TSS_FILEVERSION)
|
|
10
|
-
startGroup = { ansi: -1, unicode: -1, newContext: -1, postKeystroke: -1 };
|
|
11
|
-
flags;
|
|
12
|
-
hotkey;
|
|
13
|
-
//bitmap:
|
|
14
|
-
groups = [];
|
|
15
|
-
stores = [];
|
|
16
|
-
// Following values are extracted from stores[] but are
|
|
17
|
-
// informative only
|
|
18
|
-
keyboardVersion; // version (TSS_KEYBOARDVERSION)
|
|
19
|
-
isMnemonic; // TSS_MNEMONICLAYOUT store
|
|
20
|
-
targets; // TSS_TARGETS store ('desktop' if missing)
|
|
21
|
-
}
|
|
22
|
-
;
|
|
23
|
-
export class STORE {
|
|
24
|
-
dwSystemID;
|
|
25
|
-
dpName;
|
|
26
|
-
dpString;
|
|
27
|
-
}
|
|
28
|
-
;
|
|
29
|
-
export class GROUP {
|
|
30
|
-
dpName;
|
|
31
|
-
keys = [];
|
|
32
|
-
dpMatch;
|
|
33
|
-
dpNoMatch;
|
|
34
|
-
fUsingKeys;
|
|
35
|
-
}
|
|
36
|
-
;
|
|
37
|
-
export class KEY {
|
|
38
|
-
Key;
|
|
39
|
-
Line;
|
|
40
|
-
ShiftFlags;
|
|
41
|
-
dpOutput;
|
|
42
|
-
dpContext;
|
|
43
|
-
}
|
|
44
|
-
;
|
|
45
|
-
;
|
|
46
|
-
;
|
|
47
|
-
;
|
|
48
|
-
;
|
|
49
|
-
;
|
|
50
|
-
export class KMXFile {
|
|
51
|
-
/* KMX file structures */
|
|
52
|
-
COMP_STORE;
|
|
53
|
-
COMP_KEY;
|
|
54
|
-
COMP_GROUP;
|
|
55
|
-
COMP_KEYBOARD_KMXPLUSINFO;
|
|
56
|
-
COMP_KEYBOARD;
|
|
57
|
-
static FILEID_COMPILED = 0x5354584B; // 'KXTS'
|
|
58
|
-
//
|
|
59
|
-
// File version identifiers (COMP_KEYBOARD.dwFileVersion)
|
|
60
|
-
//
|
|
61
|
-
static VERSION_30 = 0x00000300;
|
|
62
|
-
static VERSION_31 = 0x00000301;
|
|
63
|
-
static VERSION_32 = 0x00000302;
|
|
64
|
-
static VERSION_40 = 0x00000400;
|
|
65
|
-
static VERSION_50 = 0x00000500;
|
|
66
|
-
static VERSION_501 = 0x00000501;
|
|
67
|
-
static VERSION_60 = 0x00000600;
|
|
68
|
-
static VERSION_70 = 0x00000700;
|
|
69
|
-
static VERSION_80 = 0x00000800;
|
|
70
|
-
static VERSION_90 = 0x00000900;
|
|
71
|
-
static VERSION_100 = 0x00000A00;
|
|
72
|
-
static VERSION_140 = 0x00000E00;
|
|
73
|
-
static VERSION_150 = 0x00000F00;
|
|
74
|
-
static VERSION_160 = 0x00001000;
|
|
75
|
-
static VERSION_170 = 0x00001100;
|
|
76
|
-
static VERSION_MIN = this.VERSION_50;
|
|
77
|
-
static VERSION_MAX = this.VERSION_170;
|
|
78
|
-
//
|
|
79
|
-
// Backspace types
|
|
80
|
-
//
|
|
81
|
-
static BK_DEFAULT = 0;
|
|
82
|
-
static BK_DEADKEY = 1;
|
|
83
|
-
// Different begin types (COMP_STORE.StartGroup_*)
|
|
84
|
-
static BEGIN_ANSI = 0;
|
|
85
|
-
static BEGIN_UNICODE = 1;
|
|
86
|
-
//
|
|
87
|
-
// System Store values (COMP_STORE.dwSystemID)
|
|
88
|
-
//
|
|
89
|
-
static TSS_NONE = 0;
|
|
90
|
-
static TSS_BITMAP = 1;
|
|
91
|
-
static TSS_COPYRIGHT = 2;
|
|
92
|
-
static TSS_HOTKEY = 3;
|
|
93
|
-
static TSS_LANGUAGE = 4;
|
|
94
|
-
static TSS_LAYOUT = 5;
|
|
95
|
-
static TSS_MESSAGE = 6;
|
|
96
|
-
static TSS_NAME = 7;
|
|
97
|
-
static TSS_VERSION = 8;
|
|
98
|
-
static TSS_CAPSONONLY = 9;
|
|
99
|
-
static TSS_CAPSALWAYSOFF = 10;
|
|
100
|
-
static TSS_SHIFTFREESCAPS = 11;
|
|
101
|
-
static TSS_LANGUAGENAME = 12;
|
|
102
|
-
static TSS_CALLDEFINITION = 13;
|
|
103
|
-
static TSS_CALLDEFINITION_LOADFAILED = 14;
|
|
104
|
-
static TSS_ETHNOLOGUECODE = 15;
|
|
105
|
-
static TSS_DEBUG_LINE = 16;
|
|
106
|
-
static TSS_MNEMONIC = 17;
|
|
107
|
-
static TSS_INCLUDECODES = 18;
|
|
108
|
-
static TSS_OLDCHARPOSMATCHING = 19;
|
|
109
|
-
static TSS_COMPILEDVERSION = 20;
|
|
110
|
-
static TSS_KEYMANCOPYRIGHT = 21;
|
|
111
|
-
static TSS_CUSTOMKEYMANEDITION = 22;
|
|
112
|
-
static TSS_CUSTOMKEYMANEDITIONNAME = 23;
|
|
113
|
-
/* Keyman 7.0 system stores */
|
|
114
|
-
static TSS__KEYMAN_60_MAX = 23;
|
|
115
|
-
static TSS_VISUALKEYBOARD = 24;
|
|
116
|
-
static TSS_KMW_RTL = 25;
|
|
117
|
-
static TSS_KMW_HELPFILE = 26;
|
|
118
|
-
static TSS_KMW_HELPTEXT = 27;
|
|
119
|
-
static TSS_KMW_EMBEDJS = 28;
|
|
120
|
-
static TSS_WINDOWSLANGUAGES = 29;
|
|
121
|
-
static TSS__KEYMAN_70_MAX = 29;
|
|
122
|
-
/* Keyman 8.0 system stores */
|
|
123
|
-
static TSS_COMPARISON = 30;
|
|
124
|
-
static TSS__KEYMAN_80_MAX = 30;
|
|
125
|
-
/* Keyman 9.0 system stores */
|
|
126
|
-
static TSS_PLATFORM = 31;
|
|
127
|
-
static TSS_BASELAYOUT = 32;
|
|
128
|
-
static TSS_LAYER = 33;
|
|
129
|
-
static TSS_PLATFORM_NOMATCH = 0x8001; // Reserved for internal use - after platform statement is run, set to either TSS_PLATFORM_NOMATCH or TSS_PLATFORM_MATCH
|
|
130
|
-
static TSS_PLATFORM_MATCH = 0x8002; // Reserved for internal use - as the result will never change for the lifetime of the process.
|
|
131
|
-
static TSS_VKDICTIONARY = 34; // Dictionary of virtual key names for v9 dynamic layouts
|
|
132
|
-
static TSS_LAYOUTFILE = 35; // Keyman 9 layer-based JSON OSK
|
|
133
|
-
static TSS_KEYBOARDVERSION = 36; // &keyboardversion system store // I4140
|
|
134
|
-
static TSS_KMW_EMBEDCSS = 37;
|
|
135
|
-
static TSS_TARGETS = 38;
|
|
136
|
-
static TSS__KEYMAN_90_MAX = 38;
|
|
137
|
-
/* Keyman 14.0 system stores */
|
|
138
|
-
static TSS_CASEDKEYS = 39;
|
|
139
|
-
static TSS__KEYMAN_140_MAX = 39;
|
|
140
|
-
/* Keyman 15.0 system stores */
|
|
141
|
-
static TSS_BEGIN_NEWCONTEXT = 40;
|
|
142
|
-
static TSS_BEGIN_POSTKEYSTROKE = 41;
|
|
143
|
-
static TSS_NEWLAYER = 42;
|
|
144
|
-
static TSS_OLDLAYER = 43;
|
|
145
|
-
static TSS__KEYMAN_150_MAX = 43;
|
|
146
|
-
/* Keyman 17.0 system stores */
|
|
147
|
-
static TSS_DISPLAYMAP = 44;
|
|
148
|
-
static TSS__KEYMAN_170_MAX = 44;
|
|
149
|
-
static TSS__MAX = 44;
|
|
150
|
-
static UC_SENTINEL = 0xFFFF;
|
|
151
|
-
static UC_SENTINEL_EXTENDEDEND = 0x10;
|
|
152
|
-
static U_UC_SENTINEL = "\uFFFF";
|
|
153
|
-
//
|
|
154
|
-
// VK__MAX defines the highest virtual key code defined in the system = 0xFF. Custom VK codes start at 256
|
|
155
|
-
//
|
|
156
|
-
static VK__MAX = 255;
|
|
157
|
-
//
|
|
158
|
-
// Extended String CODE_ values
|
|
159
|
-
//
|
|
160
|
-
static CODE_ANY = 0x01;
|
|
161
|
-
static CODE_INDEX = 0x02;
|
|
162
|
-
static CODE_CONTEXT = 0x03;
|
|
163
|
-
static CODE_NUL = 0x04;
|
|
164
|
-
static CODE_USE = 0x05;
|
|
165
|
-
static CODE_RETURN = 0x06;
|
|
166
|
-
static CODE_BEEP = 0x07;
|
|
167
|
-
static CODE_DEADKEY = 0x08;
|
|
168
|
-
// 0x09 = bkspace.-- we don't need to keep this separate though with UC_SENTINEL
|
|
169
|
-
static CODE_EXTENDED = 0x0A;
|
|
170
|
-
//public static readonly CODE_EXTENDEDEND = 0x0B; deprecated
|
|
171
|
-
static CODE_SWITCH = 0x0C;
|
|
172
|
-
static CODE_KEY = 0x0D;
|
|
173
|
-
static CODE_CLEARCONTEXT = 0x0E;
|
|
174
|
-
static CODE_CALL = 0x0F;
|
|
175
|
-
// UC_SENTINEL_EXTENDEDEND 0x10
|
|
176
|
-
static CODE_CONTEXTEX = 0x11;
|
|
177
|
-
static CODE_NOTANY = 0x12;
|
|
178
|
-
static CODE_KEYMAN70_LASTCODE = 0x12;
|
|
179
|
-
static CODE_SETOPT = 0x13;
|
|
180
|
-
static CODE_IFOPT = 0x14;
|
|
181
|
-
static CODE_SAVEOPT = 0x15;
|
|
182
|
-
static CODE_RESETOPT = 0x16;
|
|
183
|
-
static CODE_KEYMAN80_LASTCODE = 0x16;
|
|
184
|
-
/* Keyman 9.0 codes */
|
|
185
|
-
static CODE_IFSYSTEMSTORE = 0x17;
|
|
186
|
-
static CODE_SETSYSTEMSTORE = 0x18;
|
|
187
|
-
static CODE_LASTCODE = 0x18;
|
|
188
|
-
static KF_SHIFTFREESCAPS = 0x0001;
|
|
189
|
-
static KF_CAPSONONLY = 0x0002;
|
|
190
|
-
static KF_CAPSALWAYSOFF = 0x0004;
|
|
191
|
-
static KF_LOGICALLAYOUT = 0x0008;
|
|
192
|
-
static KF_AUTOMATICVERSION = 0x0010;
|
|
193
|
-
// 16.0: Support for LDML Keyboards in KMXPlus file format
|
|
194
|
-
static KF_KMXPLUS = 0x0020;
|
|
195
|
-
static HK_ALT = 0x00010000;
|
|
196
|
-
static HK_CTRL = 0x00020000;
|
|
197
|
-
static HK_SHIFT = 0x00040000;
|
|
198
|
-
static LCTRLFLAG = 0x0001; // Left Control flag
|
|
199
|
-
static RCTRLFLAG = 0x0002; // Right Control flag
|
|
200
|
-
static LALTFLAG = 0x0004; // Left Alt flag
|
|
201
|
-
static RALTFLAG = 0x0008; // Right Alt flag
|
|
202
|
-
static K_SHIFTFLAG = 0x0010; // Either shift flag
|
|
203
|
-
static K_CTRLFLAG = 0x0020; // Either ctrl flag
|
|
204
|
-
static K_ALTFLAG = 0x0040; // Either alt flag
|
|
205
|
-
//public static readonly K_METAFLAG = 0x0080; // Either Meta-key flag (tentative). Not usable in keyboard rules;
|
|
206
|
-
// Used internally (currently, only by KMW) to ensure Meta-key
|
|
207
|
-
// shortcuts safely bypass rules
|
|
208
|
-
// Meta key = Command key on macOS, Windows key on Windows
|
|
209
|
-
static CAPITALFLAG = 0x0100; // Caps lock on
|
|
210
|
-
static NOTCAPITALFLAG = 0x0200; // Caps lock NOT on
|
|
211
|
-
static NUMLOCKFLAG = 0x0400; // Num lock on
|
|
212
|
-
static NOTNUMLOCKFLAG = 0x0800; // Num lock NOT on
|
|
213
|
-
static SCROLLFLAG = 0x1000; // Scroll lock on
|
|
214
|
-
static NOTSCROLLFLAG = 0x2000; // Scroll lock NOT on
|
|
215
|
-
static ISVIRTUALKEY = 0x4000; // It is a Virtual Key Sequence
|
|
216
|
-
static VIRTUALCHARKEY = 0x8000; // Keyman 6.0: Virtual Key Cap Sequence NOT YET
|
|
217
|
-
// Note: OTHER_MODIFIER = 0x10000, used by KMX+ for the
|
|
218
|
-
// other modifier flag in layers, > 16 bit so not available here.
|
|
219
|
-
// See keys_mod_other in keyman_core_ldml.ts
|
|
220
|
-
static MASK_MODIFIER_CHIRAL = KMXFile.LCTRLFLAG | KMXFile.RCTRLFLAG | KMXFile.LALTFLAG | KMXFile.RALTFLAG;
|
|
221
|
-
static MASK_MODIFIER_SHIFT = KMXFile.K_SHIFTFLAG;
|
|
222
|
-
static MASK_MODIFIER_NONCHIRAL = KMXFile.K_CTRLFLAG | KMXFile.K_ALTFLAG;
|
|
223
|
-
static MASK_STATEKEY = KMXFile.CAPITALFLAG | KMXFile.NOTCAPITALFLAG |
|
|
224
|
-
KMXFile.NUMLOCKFLAG | KMXFile.NOTNUMLOCKFLAG |
|
|
225
|
-
KMXFile.SCROLLFLAG | KMXFile.NOTSCROLLFLAG;
|
|
226
|
-
static MASK_KEYTYPE = KMXFile.ISVIRTUALKEY | KMXFile.VIRTUALCHARKEY;
|
|
227
|
-
static MASK_MODIFIER = KMXFile.MASK_MODIFIER_CHIRAL | KMXFile.MASK_MODIFIER_SHIFT | KMXFile.MASK_MODIFIER_NONCHIRAL;
|
|
228
|
-
static MASK_KEYS = KMXFile.MASK_MODIFIER | KMXFile.MASK_STATEKEY;
|
|
229
|
-
static KMX_MASK_VALID = KMXFile.MASK_KEYS | KMXFile.MASK_KEYTYPE;
|
|
230
|
-
static K_MODIFIERFLAG = 0x007F;
|
|
231
|
-
static K_NOTMODIFIERFLAG = 0xFF00; // I4548
|
|
232
|
-
static COMP_KEYBOARD_SIZE = 64;
|
|
233
|
-
static COMP_KEYBOARD_KMXPLUSINFO_SIZE = 8;
|
|
234
|
-
static COMP_STORE_SIZE = 12;
|
|
235
|
-
static COMP_GROUP_SIZE = 24;
|
|
236
|
-
static COMP_KEY_SIZE = 20;
|
|
237
|
-
static VERSION_MASK_MINOR = 0x00FF;
|
|
238
|
-
static VERSION_MASK_MAJOR = 0xFF00;
|
|
239
|
-
/* In-memory representation of the keyboard */
|
|
240
|
-
keyboard = new KEYBOARD();
|
|
241
|
-
constructor() {
|
|
242
|
-
// Binary-correct structures matching kmx_file.h
|
|
243
|
-
this.COMP_STORE = new r.Struct({
|
|
244
|
-
dwSystemID: r.uint32le,
|
|
245
|
-
dpName: r.uint32le,
|
|
246
|
-
dpString: r.uint32le
|
|
247
|
-
});
|
|
248
|
-
if (this.COMP_STORE.size() != KMXFile.COMP_STORE_SIZE) {
|
|
249
|
-
throw "COMP_STORE size is " + this.COMP_STORE.size() + " but should be " + KMXFile.COMP_STORE_SIZE + " bytes";
|
|
250
|
-
}
|
|
251
|
-
this.COMP_KEY = new r.Struct({
|
|
252
|
-
Key: r.uint16le,
|
|
253
|
-
_padding: new r.Reserved(r.uint16le),
|
|
254
|
-
Line: r.uint32le,
|
|
255
|
-
ShiftFlags: r.uint32le,
|
|
256
|
-
dpOutput: r.uint32le,
|
|
257
|
-
dpContext: r.uint32le
|
|
258
|
-
});
|
|
259
|
-
if (this.COMP_KEY.size() != KMXFile.COMP_KEY_SIZE) {
|
|
260
|
-
throw "COMP_KEY size is " + this.COMP_KEY.size() + " but should be " + KMXFile.COMP_KEY_SIZE + " bytes";
|
|
261
|
-
}
|
|
262
|
-
this.COMP_GROUP = new r.Struct({
|
|
263
|
-
dpName: r.uint32le,
|
|
264
|
-
dpKeyArray: r.uint32le,
|
|
265
|
-
dpMatch: r.uint32le,
|
|
266
|
-
dpNoMatch: r.uint32le,
|
|
267
|
-
cxKeyArray: r.uint32le,
|
|
268
|
-
fUsingKeys: r.uint32le // group(xx) [using keys] <-- specified or not
|
|
269
|
-
});
|
|
270
|
-
if (this.COMP_GROUP.size() != KMXFile.COMP_GROUP_SIZE) {
|
|
271
|
-
throw "COMP_GROUP size is " + this.COMP_GROUP.size() + " but should be " + KMXFile.COMP_GROUP_SIZE + " bytes";
|
|
272
|
-
}
|
|
273
|
-
this.COMP_KEYBOARD_KMXPLUSINFO = new r.Struct({
|
|
274
|
-
dpKMXPlus: r.uint32le,
|
|
275
|
-
dwKMXPlusSize: r.uint32le // 0044 size in bytes of entire KMXPlus data
|
|
276
|
-
});
|
|
277
|
-
if (this.COMP_KEYBOARD_KMXPLUSINFO.size() != KMXFile.COMP_KEYBOARD_KMXPLUSINFO_SIZE) {
|
|
278
|
-
throw "COMP_KEYBOARD_KMXPLUSINFO size is " + this.COMP_KEYBOARD_KMXPLUSINFO.size() + " but should be " + KMXFile.COMP_KEYBOARD_KMXPLUSINFO_SIZE + " bytes";
|
|
279
|
-
}
|
|
280
|
-
this.COMP_KEYBOARD = new r.Struct({
|
|
281
|
-
dwIdentifier: r.uint32le,
|
|
282
|
-
dwFileVersion: r.uint32le,
|
|
283
|
-
dwCheckSum: r.uint32le,
|
|
284
|
-
KeyboardID: r.uint32le,
|
|
285
|
-
IsRegistered: r.uint32le,
|
|
286
|
-
version: r.uint32le,
|
|
287
|
-
cxStoreArray: r.uint32le,
|
|
288
|
-
cxGroupArray: r.uint32le,
|
|
289
|
-
dpStoreArray: r.uint32le,
|
|
290
|
-
dpGroupArray: r.uint32le,
|
|
291
|
-
StartGroup_ANSI: r.uint32le,
|
|
292
|
-
StartGroup_Unicode: r.uint32le,
|
|
293
|
-
dwFlags: r.uint32le,
|
|
294
|
-
dwHotKey: r.uint32le,
|
|
295
|
-
dpBitmapOffset: r.uint32le,
|
|
296
|
-
dwBitmapSize: r.uint32le // 003C size in bytes of the bitmaps
|
|
297
|
-
});
|
|
298
|
-
if (this.COMP_KEYBOARD.size() != KMXFile.COMP_KEYBOARD_SIZE) {
|
|
299
|
-
throw "COMP_KEYBOARD size is " + this.COMP_KEYBOARD.size() + " but should be " + KMXFile.COMP_KEYBOARD_SIZE + " bytes";
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
}
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="7c1d26a2-3cea-504f-aa27-adbb6636b6b8")}catch(e){}}();
|
|
3
|
+
import * as r from 'restructure';
|
|
4
|
+
/* Definitions from kmx_file.h. Must be kept in sync */
|
|
5
|
+
// TODO: split kmx-file from kmx in-memory, similar to what I've done for kvk (keep restructure decl + BUILDER_ interfaces together)
|
|
6
|
+
// In memory representations of KMX structures
|
|
7
|
+
// kmx-builder will transform these to the corresponding COMP_xxxx
|
|
8
|
+
export class KEYBOARD {
|
|
9
|
+
fileVersion; // dwFileVersion (TSS_FILEVERSION)
|
|
10
|
+
startGroup = { ansi: -1, unicode: -1, newContext: -1, postKeystroke: -1 };
|
|
11
|
+
flags;
|
|
12
|
+
hotkey;
|
|
13
|
+
//bitmap:
|
|
14
|
+
groups = [];
|
|
15
|
+
stores = [];
|
|
16
|
+
// Following values are extracted from stores[] but are
|
|
17
|
+
// informative only
|
|
18
|
+
keyboardVersion; // version (TSS_KEYBOARDVERSION)
|
|
19
|
+
isMnemonic; // TSS_MNEMONICLAYOUT store
|
|
20
|
+
targets; // TSS_TARGETS store ('desktop' if missing)
|
|
21
|
+
}
|
|
22
|
+
;
|
|
23
|
+
export class STORE {
|
|
24
|
+
dwSystemID;
|
|
25
|
+
dpName;
|
|
26
|
+
dpString;
|
|
27
|
+
}
|
|
28
|
+
;
|
|
29
|
+
export class GROUP {
|
|
30
|
+
dpName;
|
|
31
|
+
keys = [];
|
|
32
|
+
dpMatch;
|
|
33
|
+
dpNoMatch;
|
|
34
|
+
fUsingKeys;
|
|
35
|
+
}
|
|
36
|
+
;
|
|
37
|
+
export class KEY {
|
|
38
|
+
Key;
|
|
39
|
+
Line;
|
|
40
|
+
ShiftFlags;
|
|
41
|
+
dpOutput;
|
|
42
|
+
dpContext;
|
|
43
|
+
}
|
|
44
|
+
;
|
|
45
|
+
;
|
|
46
|
+
;
|
|
47
|
+
;
|
|
48
|
+
;
|
|
49
|
+
;
|
|
50
|
+
export class KMXFile {
|
|
51
|
+
/* KMX file structures */
|
|
52
|
+
COMP_STORE;
|
|
53
|
+
COMP_KEY;
|
|
54
|
+
COMP_GROUP;
|
|
55
|
+
COMP_KEYBOARD_KMXPLUSINFO;
|
|
56
|
+
COMP_KEYBOARD;
|
|
57
|
+
static FILEID_COMPILED = 0x5354584B; // 'KXTS'
|
|
58
|
+
//
|
|
59
|
+
// File version identifiers (COMP_KEYBOARD.dwFileVersion)
|
|
60
|
+
//
|
|
61
|
+
static VERSION_30 = 0x00000300;
|
|
62
|
+
static VERSION_31 = 0x00000301;
|
|
63
|
+
static VERSION_32 = 0x00000302;
|
|
64
|
+
static VERSION_40 = 0x00000400;
|
|
65
|
+
static VERSION_50 = 0x00000500;
|
|
66
|
+
static VERSION_501 = 0x00000501;
|
|
67
|
+
static VERSION_60 = 0x00000600;
|
|
68
|
+
static VERSION_70 = 0x00000700;
|
|
69
|
+
static VERSION_80 = 0x00000800;
|
|
70
|
+
static VERSION_90 = 0x00000900;
|
|
71
|
+
static VERSION_100 = 0x00000A00;
|
|
72
|
+
static VERSION_140 = 0x00000E00;
|
|
73
|
+
static VERSION_150 = 0x00000F00;
|
|
74
|
+
static VERSION_160 = 0x00001000;
|
|
75
|
+
static VERSION_170 = 0x00001100;
|
|
76
|
+
static VERSION_MIN = this.VERSION_50;
|
|
77
|
+
static VERSION_MAX = this.VERSION_170;
|
|
78
|
+
//
|
|
79
|
+
// Backspace types
|
|
80
|
+
//
|
|
81
|
+
static BK_DEFAULT = 0;
|
|
82
|
+
static BK_DEADKEY = 1;
|
|
83
|
+
// Different begin types (COMP_STORE.StartGroup_*)
|
|
84
|
+
static BEGIN_ANSI = 0;
|
|
85
|
+
static BEGIN_UNICODE = 1;
|
|
86
|
+
//
|
|
87
|
+
// System Store values (COMP_STORE.dwSystemID)
|
|
88
|
+
//
|
|
89
|
+
static TSS_NONE = 0;
|
|
90
|
+
static TSS_BITMAP = 1;
|
|
91
|
+
static TSS_COPYRIGHT = 2;
|
|
92
|
+
static TSS_HOTKEY = 3;
|
|
93
|
+
static TSS_LANGUAGE = 4;
|
|
94
|
+
static TSS_LAYOUT = 5;
|
|
95
|
+
static TSS_MESSAGE = 6;
|
|
96
|
+
static TSS_NAME = 7;
|
|
97
|
+
static TSS_VERSION = 8;
|
|
98
|
+
static TSS_CAPSONONLY = 9;
|
|
99
|
+
static TSS_CAPSALWAYSOFF = 10;
|
|
100
|
+
static TSS_SHIFTFREESCAPS = 11;
|
|
101
|
+
static TSS_LANGUAGENAME = 12;
|
|
102
|
+
static TSS_CALLDEFINITION = 13;
|
|
103
|
+
static TSS_CALLDEFINITION_LOADFAILED = 14;
|
|
104
|
+
static TSS_ETHNOLOGUECODE = 15;
|
|
105
|
+
static TSS_DEBUG_LINE = 16;
|
|
106
|
+
static TSS_MNEMONIC = 17;
|
|
107
|
+
static TSS_INCLUDECODES = 18;
|
|
108
|
+
static TSS_OLDCHARPOSMATCHING = 19;
|
|
109
|
+
static TSS_COMPILEDVERSION = 20;
|
|
110
|
+
static TSS_KEYMANCOPYRIGHT = 21;
|
|
111
|
+
static TSS_CUSTOMKEYMANEDITION = 22;
|
|
112
|
+
static TSS_CUSTOMKEYMANEDITIONNAME = 23;
|
|
113
|
+
/* Keyman 7.0 system stores */
|
|
114
|
+
static TSS__KEYMAN_60_MAX = 23;
|
|
115
|
+
static TSS_VISUALKEYBOARD = 24;
|
|
116
|
+
static TSS_KMW_RTL = 25;
|
|
117
|
+
static TSS_KMW_HELPFILE = 26;
|
|
118
|
+
static TSS_KMW_HELPTEXT = 27;
|
|
119
|
+
static TSS_KMW_EMBEDJS = 28;
|
|
120
|
+
static TSS_WINDOWSLANGUAGES = 29;
|
|
121
|
+
static TSS__KEYMAN_70_MAX = 29;
|
|
122
|
+
/* Keyman 8.0 system stores */
|
|
123
|
+
static TSS_COMPARISON = 30;
|
|
124
|
+
static TSS__KEYMAN_80_MAX = 30;
|
|
125
|
+
/* Keyman 9.0 system stores */
|
|
126
|
+
static TSS_PLATFORM = 31;
|
|
127
|
+
static TSS_BASELAYOUT = 32;
|
|
128
|
+
static TSS_LAYER = 33;
|
|
129
|
+
static TSS_PLATFORM_NOMATCH = 0x8001; // Reserved for internal use - after platform statement is run, set to either TSS_PLATFORM_NOMATCH or TSS_PLATFORM_MATCH
|
|
130
|
+
static TSS_PLATFORM_MATCH = 0x8002; // Reserved for internal use - as the result will never change for the lifetime of the process.
|
|
131
|
+
static TSS_VKDICTIONARY = 34; // Dictionary of virtual key names for v9 dynamic layouts
|
|
132
|
+
static TSS_LAYOUTFILE = 35; // Keyman 9 layer-based JSON OSK
|
|
133
|
+
static TSS_KEYBOARDVERSION = 36; // &keyboardversion system store // I4140
|
|
134
|
+
static TSS_KMW_EMBEDCSS = 37;
|
|
135
|
+
static TSS_TARGETS = 38;
|
|
136
|
+
static TSS__KEYMAN_90_MAX = 38;
|
|
137
|
+
/* Keyman 14.0 system stores */
|
|
138
|
+
static TSS_CASEDKEYS = 39;
|
|
139
|
+
static TSS__KEYMAN_140_MAX = 39;
|
|
140
|
+
/* Keyman 15.0 system stores */
|
|
141
|
+
static TSS_BEGIN_NEWCONTEXT = 40;
|
|
142
|
+
static TSS_BEGIN_POSTKEYSTROKE = 41;
|
|
143
|
+
static TSS_NEWLAYER = 42;
|
|
144
|
+
static TSS_OLDLAYER = 43;
|
|
145
|
+
static TSS__KEYMAN_150_MAX = 43;
|
|
146
|
+
/* Keyman 17.0 system stores */
|
|
147
|
+
static TSS_DISPLAYMAP = 44;
|
|
148
|
+
static TSS__KEYMAN_170_MAX = 44;
|
|
149
|
+
static TSS__MAX = 44;
|
|
150
|
+
static UC_SENTINEL = 0xFFFF;
|
|
151
|
+
static UC_SENTINEL_EXTENDEDEND = 0x10;
|
|
152
|
+
static U_UC_SENTINEL = "\uFFFF";
|
|
153
|
+
//
|
|
154
|
+
// VK__MAX defines the highest virtual key code defined in the system = 0xFF. Custom VK codes start at 256
|
|
155
|
+
//
|
|
156
|
+
static VK__MAX = 255;
|
|
157
|
+
//
|
|
158
|
+
// Extended String CODE_ values
|
|
159
|
+
//
|
|
160
|
+
static CODE_ANY = 0x01;
|
|
161
|
+
static CODE_INDEX = 0x02;
|
|
162
|
+
static CODE_CONTEXT = 0x03;
|
|
163
|
+
static CODE_NUL = 0x04;
|
|
164
|
+
static CODE_USE = 0x05;
|
|
165
|
+
static CODE_RETURN = 0x06;
|
|
166
|
+
static CODE_BEEP = 0x07;
|
|
167
|
+
static CODE_DEADKEY = 0x08;
|
|
168
|
+
// 0x09 = bkspace.-- we don't need to keep this separate though with UC_SENTINEL
|
|
169
|
+
static CODE_EXTENDED = 0x0A;
|
|
170
|
+
//public static readonly CODE_EXTENDEDEND = 0x0B; deprecated
|
|
171
|
+
static CODE_SWITCH = 0x0C;
|
|
172
|
+
static CODE_KEY = 0x0D;
|
|
173
|
+
static CODE_CLEARCONTEXT = 0x0E;
|
|
174
|
+
static CODE_CALL = 0x0F;
|
|
175
|
+
// UC_SENTINEL_EXTENDEDEND 0x10
|
|
176
|
+
static CODE_CONTEXTEX = 0x11;
|
|
177
|
+
static CODE_NOTANY = 0x12;
|
|
178
|
+
static CODE_KEYMAN70_LASTCODE = 0x12;
|
|
179
|
+
static CODE_SETOPT = 0x13;
|
|
180
|
+
static CODE_IFOPT = 0x14;
|
|
181
|
+
static CODE_SAVEOPT = 0x15;
|
|
182
|
+
static CODE_RESETOPT = 0x16;
|
|
183
|
+
static CODE_KEYMAN80_LASTCODE = 0x16;
|
|
184
|
+
/* Keyman 9.0 codes */
|
|
185
|
+
static CODE_IFSYSTEMSTORE = 0x17;
|
|
186
|
+
static CODE_SETSYSTEMSTORE = 0x18;
|
|
187
|
+
static CODE_LASTCODE = 0x18;
|
|
188
|
+
static KF_SHIFTFREESCAPS = 0x0001;
|
|
189
|
+
static KF_CAPSONONLY = 0x0002;
|
|
190
|
+
static KF_CAPSALWAYSOFF = 0x0004;
|
|
191
|
+
static KF_LOGICALLAYOUT = 0x0008;
|
|
192
|
+
static KF_AUTOMATICVERSION = 0x0010;
|
|
193
|
+
// 16.0: Support for LDML Keyboards in KMXPlus file format
|
|
194
|
+
static KF_KMXPLUS = 0x0020;
|
|
195
|
+
static HK_ALT = 0x00010000;
|
|
196
|
+
static HK_CTRL = 0x00020000;
|
|
197
|
+
static HK_SHIFT = 0x00040000;
|
|
198
|
+
static LCTRLFLAG = 0x0001; // Left Control flag
|
|
199
|
+
static RCTRLFLAG = 0x0002; // Right Control flag
|
|
200
|
+
static LALTFLAG = 0x0004; // Left Alt flag
|
|
201
|
+
static RALTFLAG = 0x0008; // Right Alt flag
|
|
202
|
+
static K_SHIFTFLAG = 0x0010; // Either shift flag
|
|
203
|
+
static K_CTRLFLAG = 0x0020; // Either ctrl flag
|
|
204
|
+
static K_ALTFLAG = 0x0040; // Either alt flag
|
|
205
|
+
//public static readonly K_METAFLAG = 0x0080; // Either Meta-key flag (tentative). Not usable in keyboard rules;
|
|
206
|
+
// Used internally (currently, only by KMW) to ensure Meta-key
|
|
207
|
+
// shortcuts safely bypass rules
|
|
208
|
+
// Meta key = Command key on macOS, Windows key on Windows
|
|
209
|
+
static CAPITALFLAG = 0x0100; // Caps lock on
|
|
210
|
+
static NOTCAPITALFLAG = 0x0200; // Caps lock NOT on
|
|
211
|
+
static NUMLOCKFLAG = 0x0400; // Num lock on
|
|
212
|
+
static NOTNUMLOCKFLAG = 0x0800; // Num lock NOT on
|
|
213
|
+
static SCROLLFLAG = 0x1000; // Scroll lock on
|
|
214
|
+
static NOTSCROLLFLAG = 0x2000; // Scroll lock NOT on
|
|
215
|
+
static ISVIRTUALKEY = 0x4000; // It is a Virtual Key Sequence
|
|
216
|
+
static VIRTUALCHARKEY = 0x8000; // Keyman 6.0: Virtual Key Cap Sequence NOT YET
|
|
217
|
+
// Note: OTHER_MODIFIER = 0x10000, used by KMX+ for the
|
|
218
|
+
// other modifier flag in layers, > 16 bit so not available here.
|
|
219
|
+
// See keys_mod_other in keyman_core_ldml.ts
|
|
220
|
+
static MASK_MODIFIER_CHIRAL = KMXFile.LCTRLFLAG | KMXFile.RCTRLFLAG | KMXFile.LALTFLAG | KMXFile.RALTFLAG;
|
|
221
|
+
static MASK_MODIFIER_SHIFT = KMXFile.K_SHIFTFLAG;
|
|
222
|
+
static MASK_MODIFIER_NONCHIRAL = KMXFile.K_CTRLFLAG | KMXFile.K_ALTFLAG;
|
|
223
|
+
static MASK_STATEKEY = KMXFile.CAPITALFLAG | KMXFile.NOTCAPITALFLAG |
|
|
224
|
+
KMXFile.NUMLOCKFLAG | KMXFile.NOTNUMLOCKFLAG |
|
|
225
|
+
KMXFile.SCROLLFLAG | KMXFile.NOTSCROLLFLAG;
|
|
226
|
+
static MASK_KEYTYPE = KMXFile.ISVIRTUALKEY | KMXFile.VIRTUALCHARKEY;
|
|
227
|
+
static MASK_MODIFIER = KMXFile.MASK_MODIFIER_CHIRAL | KMXFile.MASK_MODIFIER_SHIFT | KMXFile.MASK_MODIFIER_NONCHIRAL;
|
|
228
|
+
static MASK_KEYS = KMXFile.MASK_MODIFIER | KMXFile.MASK_STATEKEY;
|
|
229
|
+
static KMX_MASK_VALID = KMXFile.MASK_KEYS | KMXFile.MASK_KEYTYPE;
|
|
230
|
+
static K_MODIFIERFLAG = 0x007F;
|
|
231
|
+
static K_NOTMODIFIERFLAG = 0xFF00; // I4548
|
|
232
|
+
static COMP_KEYBOARD_SIZE = 64;
|
|
233
|
+
static COMP_KEYBOARD_KMXPLUSINFO_SIZE = 8;
|
|
234
|
+
static COMP_STORE_SIZE = 12;
|
|
235
|
+
static COMP_GROUP_SIZE = 24;
|
|
236
|
+
static COMP_KEY_SIZE = 20;
|
|
237
|
+
static VERSION_MASK_MINOR = 0x00FF;
|
|
238
|
+
static VERSION_MASK_MAJOR = 0xFF00;
|
|
239
|
+
/* In-memory representation of the keyboard */
|
|
240
|
+
keyboard = new KEYBOARD();
|
|
241
|
+
constructor() {
|
|
242
|
+
// Binary-correct structures matching kmx_file.h
|
|
243
|
+
this.COMP_STORE = new r.Struct({
|
|
244
|
+
dwSystemID: r.uint32le,
|
|
245
|
+
dpName: r.uint32le,
|
|
246
|
+
dpString: r.uint32le
|
|
247
|
+
});
|
|
248
|
+
if (this.COMP_STORE.size() != KMXFile.COMP_STORE_SIZE) {
|
|
249
|
+
throw "COMP_STORE size is " + this.COMP_STORE.size() + " but should be " + KMXFile.COMP_STORE_SIZE + " bytes";
|
|
250
|
+
}
|
|
251
|
+
this.COMP_KEY = new r.Struct({
|
|
252
|
+
Key: r.uint16le,
|
|
253
|
+
_padding: new r.Reserved(r.uint16le), // padding
|
|
254
|
+
Line: r.uint32le,
|
|
255
|
+
ShiftFlags: r.uint32le,
|
|
256
|
+
dpOutput: r.uint32le,
|
|
257
|
+
dpContext: r.uint32le
|
|
258
|
+
});
|
|
259
|
+
if (this.COMP_KEY.size() != KMXFile.COMP_KEY_SIZE) {
|
|
260
|
+
throw "COMP_KEY size is " + this.COMP_KEY.size() + " but should be " + KMXFile.COMP_KEY_SIZE + " bytes";
|
|
261
|
+
}
|
|
262
|
+
this.COMP_GROUP = new r.Struct({
|
|
263
|
+
dpName: r.uint32le,
|
|
264
|
+
dpKeyArray: r.uint32le, // [LPKEY] address of first item in key array
|
|
265
|
+
dpMatch: r.uint32le,
|
|
266
|
+
dpNoMatch: r.uint32le,
|
|
267
|
+
cxKeyArray: r.uint32le, // in array entries
|
|
268
|
+
fUsingKeys: r.uint32le // group(xx) [using keys] <-- specified or not
|
|
269
|
+
});
|
|
270
|
+
if (this.COMP_GROUP.size() != KMXFile.COMP_GROUP_SIZE) {
|
|
271
|
+
throw "COMP_GROUP size is " + this.COMP_GROUP.size() + " but should be " + KMXFile.COMP_GROUP_SIZE + " bytes";
|
|
272
|
+
}
|
|
273
|
+
this.COMP_KEYBOARD_KMXPLUSINFO = new r.Struct({
|
|
274
|
+
dpKMXPlus: r.uint32le, // 0040 offset of KMXPlus data, <sect> header is first
|
|
275
|
+
dwKMXPlusSize: r.uint32le // 0044 size in bytes of entire KMXPlus data
|
|
276
|
+
});
|
|
277
|
+
if (this.COMP_KEYBOARD_KMXPLUSINFO.size() != KMXFile.COMP_KEYBOARD_KMXPLUSINFO_SIZE) {
|
|
278
|
+
throw "COMP_KEYBOARD_KMXPLUSINFO size is " + this.COMP_KEYBOARD_KMXPLUSINFO.size() + " but should be " + KMXFile.COMP_KEYBOARD_KMXPLUSINFO_SIZE + " bytes";
|
|
279
|
+
}
|
|
280
|
+
this.COMP_KEYBOARD = new r.Struct({
|
|
281
|
+
dwIdentifier: r.uint32le, // 0000 Keyman compiled keyboard id
|
|
282
|
+
dwFileVersion: r.uint32le, // 0004 Version of the file - Keyman 4.0 is 0x0400
|
|
283
|
+
dwCheckSum: r.uint32le, // 0008 As stored in keyboard
|
|
284
|
+
KeyboardID: r.uint32le, // 000C as stored in HKEY_LOCAL_MACHINE//system//currentcontrolset//control//keyboard layouts
|
|
285
|
+
IsRegistered: r.uint32le, // 0010
|
|
286
|
+
version: r.uint32le, // 0014 keyboard version
|
|
287
|
+
cxStoreArray: r.uint32le, // 0018 in array entries
|
|
288
|
+
cxGroupArray: r.uint32le, // 001C in array entries
|
|
289
|
+
dpStoreArray: r.uint32le, // 0020 [LPSTORE] address of first item in store array
|
|
290
|
+
dpGroupArray: r.uint32le, // 0024 [LPGROUP] address of first item in group array
|
|
291
|
+
StartGroup_ANSI: r.uint32le, // 0028 index of starting ANSI group
|
|
292
|
+
StartGroup_Unicode: r.uint32le, // 0028 index of starting Unicode groups
|
|
293
|
+
dwFlags: r.uint32le, // 0030 Flags for the keyboard file
|
|
294
|
+
dwHotKey: r.uint32le, // 0034 standard windows hotkey (hiword=shift/ctrl/alt stuff, loword=vkey)
|
|
295
|
+
dpBitmapOffset: r.uint32le, // 0038 offset of the bitmaps in the file
|
|
296
|
+
dwBitmapSize: r.uint32le // 003C size in bytes of the bitmaps
|
|
297
|
+
});
|
|
298
|
+
if (this.COMP_KEYBOARD.size() != KMXFile.COMP_KEYBOARD_SIZE) {
|
|
299
|
+
throw "COMP_KEYBOARD size is " + this.COMP_KEYBOARD.size() + " but should be " + KMXFile.COMP_KEYBOARD_SIZE + " bytes";
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
303
|
//# sourceMappingURL=kmx.js.map
|
|
304
|
-
//# debugId=
|
|
304
|
+
//# debugId=7c1d26a2-3cea-504f-aa27-adbb6636b6b8
|
package/build/src/kmx/kmx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kmx.js","sources":["../../../src/kmx/kmx.ts"],"sourceRoot":"","names":[],"mappings":"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","debug_id":"0fdaf1af-f31f-51ee-8071-72eeb1db1515"}
|
|
1
|
+
{"version":3,"file":"kmx.js","sources":["../../../src/kmx/kmx.ts"],"sourceRoot":"","names":[],"mappings":";;AAAA,OAAO,KAAK,CAAC,MAAM,aAAa,CAAC;AAEjC,uDAAuD;AAEvD,oIAAoI;AAEpI,8CAA8C;AAC9C,kEAAkE;AAElE,MAAM,OAAO,QAAQ;IACnB,WAAW,CAAU,CAAE,kCAAkC;IAEzD,UAAU,GAKN,EAAC,IAAI,EAAC,CAAC,CAAC,EAAE,OAAO,EAAC,CAAC,CAAC,EAAE,UAAU,EAAC,CAAC,CAAC,EAAE,aAAa,EAAC,CAAC,CAAC,EAAC,CAAC;IAE3D,KAAK,CAAU;IACf,MAAM,CAAU;IAEhB,SAAS;IACT,MAAM,GAAY,EAAE,CAAC;IACrB,MAAM,GAAY,EAAE,CAAC;IAErB,uDAAuD;IACvD,mBAAmB;IAEnB,eAAe,CAAU,CAAG,gCAAgC;IAC5D,UAAU,CAAU,CAAQ,2BAA2B;IACvD,OAAO,CAAS,CAAY,2CAA2C;CACxE;AAAA,CAAC;AAEF,MAAM,OAAO,KAAK;IAChB,UAAU,CAAS;IACnB,MAAM,CAAS;IACf,QAAQ,CAAS;CAClB;AAAA,CAAC;AAEF,MAAM,OAAO,KAAK;IAChB,MAAM,CAAS;IACf,IAAI,GAAU,EAAE,CAAC;IACjB,OAAO,CAAS;IAChB,SAAS,CAAS;IAClB,UAAU,CAAU;CACrB;AAAA,CAAC;AAEF,MAAM,OAAO,GAAG;IACd,GAAG,CAAS;IACZ,IAAI,CAAS;IACb,UAAU,CAAS;IACnB,QAAQ,CAAS;IACjB,SAAS,CAAS;CACnB;AAAA,CAAC;AA8BD,CAAC;AAKD,CAAC;AAMD,CAAC;AASD,CAAC;AASD,CAAC;AAEF,MAAM,OAAO,OAAO;IAElB,yBAAyB;IAET,UAAU,CAAM;IAChB,QAAQ,CAAM;IACd,UAAU,CAAM;IAChB,yBAAyB,CAAM;IAC/B,aAAa,CAAM;IAE5B,MAAM,CAAU,eAAe,GAAG,UAAU,CAAC,CAAC,SAAS;IAE9D,EAAE;IACF,yDAAyD;IACzD,EAAE;IAEK,MAAM,CAAU,UAAU,GAAI,UAAU,CAAC;IACzC,MAAM,CAAU,UAAU,GAAI,UAAU,CAAC;IACzC,MAAM,CAAU,UAAU,GAAI,UAAU,CAAC;IACzC,MAAM,CAAU,UAAU,GAAI,UAAU,CAAC;IACzC,MAAM,CAAU,UAAU,GAAI,UAAU,CAAC;IACzC,MAAM,CAAU,WAAW,GAAG,UAAU,CAAC;IACzC,MAAM,CAAU,UAAU,GAAI,UAAU,CAAC;IACzC,MAAM,CAAU,UAAU,GAAI,UAAU,CAAC;IACzC,MAAM,CAAU,UAAU,GAAI,UAAU,CAAC;IACzC,MAAM,CAAU,UAAU,GAAI,UAAU,CAAC;IACzC,MAAM,CAAU,WAAW,GAAG,UAAU,CAAC;IACzC,MAAM,CAAU,WAAW,GAAG,UAAU,CAAC;IACzC,MAAM,CAAU,WAAW,GAAG,UAAU,CAAC;IAEzC,MAAM,CAAU,WAAW,GAAG,UAAU,CAAC;IACzC,MAAM,CAAU,WAAW,GAAG,UAAU,CAAC;IAEzC,MAAM,CAAU,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;IAC9C,MAAM,CAAU,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAEtD,EAAE;IACF,kBAAkB;IAClB,EAAE;IAEK,MAAM,CAAU,UAAU,GAAM,CAAC,CAAC;IAClC,MAAM,CAAU,UAAU,GAAM,CAAC,CAAC;IAEzC,kDAAkD;IAE3C,MAAM,CAAU,UAAU,GAAM,CAAC,CAAC;IAClC,MAAM,CAAU,aAAa,GAAG,CAAC,CAAC;IAEzC,EAAE;IACF,8CAA8C;IAC9C,EAAE;IAEK,MAAM,CAAU,QAAQ,GAAkB,CAAC,CAAC;IAC5C,MAAM,CAAU,UAAU,GAAgB,CAAC,CAAC;IAC5C,MAAM,CAAU,aAAa,GAAa,CAAC,CAAC;IAC5C,MAAM,CAAU,UAAU,GAAgB,CAAC,CAAC;IAC5C,MAAM,CAAU,YAAY,GAAc,CAAC,CAAC;IAC5C,MAAM,CAAU,UAAU,GAAgB,CAAC,CAAC;IAC5C,MAAM,CAAU,WAAW,GAAe,CAAC,CAAC;IAC5C,MAAM,CAAU,QAAQ,GAAkB,CAAC,CAAC;IAC5C,MAAM,CAAU,WAAW,GAAe,CAAC,CAAC;IAC5C,MAAM,CAAU,cAAc,GAAY,CAAC,CAAC;IAC5C,MAAM,CAAU,iBAAiB,GAAS,EAAE,CAAC;IAC7C,MAAM,CAAU,kBAAkB,GAAQ,EAAE,CAAC;IAC7C,MAAM,CAAU,gBAAgB,GAAU,EAAE,CAAC;IAE7C,MAAM,CAAU,kBAAkB,GAAQ,EAAE,CAAC;IAC7C,MAAM,CAAU,6BAA6B,GAAG,EAAE,CAAC;IAEnD,MAAM,CAAU,kBAAkB,GAAQ,EAAE,CAAC;IAE7C,MAAM,CAAU,cAAc,GAAY,EAAE,CAAC;IAE7C,MAAM,CAAU,YAAY,GAAc,EAAE,CAAC;IAE7C,MAAM,CAAU,gBAAgB,GAAU,EAAE,CAAC;IAE7C,MAAM,CAAU,sBAAsB,GAAI,EAAE,CAAC;IAE7C,MAAM,CAAU,mBAAmB,GAAO,EAAE,CAAC;IAC7C,MAAM,CAAU,mBAAmB,GAAO,EAAE,CAAC;IAE7C,MAAM,CAAU,uBAAuB,GAAO,EAAE,CAAC;IACjD,MAAM,CAAU,2BAA2B,GAAG,EAAE,CAAC;IAExD,8BAA8B;IAEvB,MAAM,CAAU,kBAAkB,GAAK,EAAE,CAAC;IAE1C,MAAM,CAAU,kBAAkB,GAAK,EAAE,CAAC;IAC1C,MAAM,CAAU,WAAW,GAAY,EAAE,CAAC;IAC1C,MAAM,CAAU,gBAAgB,GAAO,EAAE,CAAC;IAC1C,MAAM,CAAU,gBAAgB,GAAO,EAAE,CAAC;IAC1C,MAAM,CAAU,eAAe,GAAQ,EAAE,CAAC;IAE1C,MAAM,CAAU,oBAAoB,GAAG,EAAE,CAAC;IAE1C,MAAM,CAAU,kBAAkB,GAAK,EAAE,CAAC;IAEjD,8BAA8B;IAEvB,MAAM,CAAU,cAAc,GAAS,EAAE,CAAC;IAE1C,MAAM,CAAU,kBAAkB,GAAK,EAAE,CAAC;IAEjD,8BAA8B;IAEvB,MAAM,CAAU,YAAY,GAAM,EAAE,CAAC;IACrC,MAAM,CAAU,cAAc,GAAI,EAAE,CAAC;IACrC,MAAM,CAAU,SAAS,GAAS,EAAE,CAAC;IAErC,MAAM,CAAU,oBAAoB,GAAI,MAAM,CAAC,CAAE,wHAAwH;IACzK,MAAM,CAAU,kBAAkB,GAAM,MAAM,CAAC,CAAE,+FAA+F;IAEhJ,MAAM,CAAU,gBAAgB,GAAO,EAAE,CAAC,CAAM,yDAAyD;IACzG,MAAM,CAAU,cAAc,GAAS,EAAE,CAAC,CAAM,gCAAgC;IAChF,MAAM,CAAU,mBAAmB,GAAI,EAAE,CAAC,CAAM,2CAA2C;IAC3F,MAAM,CAAU,gBAAgB,GAAO,EAAE,CAAC;IAE1C,MAAM,CAAU,WAAW,GAAY,EAAE,CAAC;IAE1C,MAAM,CAAU,kBAAkB,GAAK,EAAE,CAAC;IAEjD,+BAA+B;IAExB,MAAM,CAAU,aAAa,GAAU,EAAE,CAAC;IAE1C,MAAM,CAAU,mBAAmB,GAAI,EAAE,CAAC;IAEjD,+BAA+B;IAExB,MAAM,CAAU,oBAAoB,GAAM,EAAE,CAAC;IAC7C,MAAM,CAAU,uBAAuB,GAAG,EAAE,CAAC;IAC7C,MAAM,CAAU,YAAY,GAAc,EAAE,CAAC;IAC7C,MAAM,CAAU,YAAY,GAAc,EAAE,CAAC;IAE7C,MAAM,CAAU,mBAAmB,GAAO,EAAE,CAAC;IAEpD,+BAA+B;IAExB,MAAM,CAAU,cAAc,GAAY,EAAE,CAAC;IAE7C,MAAM,CAAU,mBAAmB,GAAO,EAAE,CAAC;IAE7C,MAAM,CAAU,QAAQ,GAAkB,EAAE,CAAC;IAG7C,MAAM,CAAU,WAAW,GAAS,MAAM,CAAC;IAC3C,MAAM,CAAU,uBAAuB,GAAG,IAAI,CAAC;IAE/C,MAAM,CAAU,aAAa,GAAG,QAAQ,CAAC;IAEhD,EAAE;IACF,2GAA2G;IAC3G,EAAE;IAEK,MAAM,CAAU,OAAO,GAAG,GAAG,CAAC;IAErC,EAAE;IACF,+BAA+B;IAC/B,EAAE;IAEK,MAAM,CAAU,QAAQ,GAAY,IAAI,CAAC;IACzC,MAAM,CAAU,UAAU,GAAU,IAAI,CAAC;IACzC,MAAM,CAAU,YAAY,GAAQ,IAAI,CAAC;IACzC,MAAM,CAAU,QAAQ,GAAY,IAAI,CAAC;IACzC,MAAM,CAAU,QAAQ,GAAY,IAAI,CAAC;IACzC,MAAM,CAAU,WAAW,GAAS,IAAI,CAAC;IACzC,MAAM,CAAU,SAAS,GAAW,IAAI,CAAC;IACzC,MAAM,CAAU,YAAY,GAAQ,IAAI,CAAC;IAChD,iFAAiF;IAC1E,MAAM,CAAU,aAAa,GAAO,IAAI,CAAC;IAChD,8DAA8D;IACvD,MAAM,CAAU,WAAW,GAAS,IAAI,CAAC;IACzC,MAAM,CAAU,QAAQ,GAAY,IAAI,CAAC;IACzC,MAAM,CAAU,iBAAiB,GAAG,IAAI,CAAC;IACzC,MAAM,CAAU,SAAS,GAAW,IAAI,CAAC;IAChD,gCAAgC;IACzB,MAAM,CAAU,cAAc,GAAM,IAAI,CAAC;IAEzC,MAAM,CAAU,WAAW,GAAK,IAAI,CAAC;IAErC,MAAM,CAAU,sBAAsB,GAAM,IAAI,CAAC;IAEjD,MAAM,CAAU,WAAW,GAAM,IAAI,CAAC;IACtC,MAAM,CAAU,UAAU,GAAO,IAAI,CAAC;IACtC,MAAM,CAAU,YAAY,GAAK,IAAI,CAAC;IACtC,MAAM,CAAU,aAAa,GAAI,IAAI,CAAC;IAEtC,MAAM,CAAU,sBAAsB,GAAI,IAAI,CAAC;IAEtD,sBAAsB;IAEf,MAAM,CAAU,kBAAkB,GAAI,IAAI,CAAC;IAC3C,MAAM,CAAU,mBAAmB,GAAG,IAAI,CAAC;IAE3C,MAAM,CAAU,aAAa,GAAK,IAAI,CAAC;IAGvC,MAAM,CAAU,iBAAiB,GAAK,MAAM,CAAC;IAC7C,MAAM,CAAU,aAAa,GAAS,MAAM,CAAC;IAC7C,MAAM,CAAU,gBAAgB,GAAM,MAAM,CAAC;IAC7C,MAAM,CAAU,gBAAgB,GAAM,MAAM,CAAC;IAC7C,MAAM,CAAU,mBAAmB,GAAG,MAAM,CAAC;IAEpD,0DAA0D;IACnD,MAAM,CAAU,UAAU,GAAI,MAAM,CAAC;IAErC,MAAM,CAAU,MAAM,GAAQ,UAAU,CAAC;IACzC,MAAM,CAAU,OAAO,GAAO,UAAU,CAAC;IACzC,MAAM,CAAU,QAAQ,GAAM,UAAU,CAAC;IAEzC,MAAM,CAAU,SAAS,GAAK,MAAM,CAAC,CAAI,oBAAoB;IAC7D,MAAM,CAAU,SAAS,GAAK,MAAM,CAAC,CAAI,qBAAqB;IAC9D,MAAM,CAAU,QAAQ,GAAM,MAAM,CAAC,CAAI,gBAAgB;IACzD,MAAM,CAAU,QAAQ,GAAM,MAAM,CAAC,CAAI,iBAAiB;IAC1D,MAAM,CAAU,WAAW,GAAG,MAAM,CAAC,CAAI,oBAAoB;IAC7D,MAAM,CAAU,UAAU,GAAI,MAAM,CAAC,CAAI,mBAAmB;IAC5D,MAAM,CAAU,SAAS,GAAK,MAAM,CAAC,CAAI,kBAAkB;IAClE,qHAAqH;IACrF,8DAA8D;IAC9D,gCAAgC;IAChC,0DAA0D;IACnF,MAAM,CAAU,WAAW,GAAM,MAAM,CAAC,CAAI,eAAe;IAC3D,MAAM,CAAU,cAAc,GAAG,MAAM,CAAC,CAAI,mBAAmB;IAC/D,MAAM,CAAU,WAAW,GAAM,MAAM,CAAC,CAAI,cAAc;IAC1D,MAAM,CAAU,cAAc,GAAG,MAAM,CAAC,CAAI,kBAAkB;IAC9D,MAAM,CAAU,UAAU,GAAO,MAAM,CAAC,CAAI,iBAAiB;IAC7D,MAAM,CAAU,aAAa,GAAI,MAAM,CAAC,CAAI,qBAAqB;IACjE,MAAM,CAAU,YAAY,GAAK,MAAM,CAAC,CAAI,+BAA+B;IAC3E,MAAM,CAAU,cAAc,GAAG,MAAM,CAAC,CAAI,+CAA+C;IAElG,uDAAuD;IACvD,iEAAiE;IACjE,4CAA4C;IAErC,MAAM,CAAU,oBAAoB,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IACnH,MAAM,CAAU,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC;IAC1D,MAAM,CAAU,uBAAuB,GAAG,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAEjF,MAAM,CAAU,aAAa,GAAG,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,cAAc;QAC5C,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,cAAc;QAC5C,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;IAC3E,MAAM,CAAU,YAAY,GAAI,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAE9E,MAAM,CAAU,aAAa,GAAG,OAAO,CAAC,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAE7H,MAAM,CAAU,SAAS,GAAG,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAC1E,MAAM,CAAU,cAAc,GAAM,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;IAG7E,MAAM,CAAU,cAAc,GAAM,MAAM,CAAC;IAC3C,MAAM,CAAU,iBAAiB,GAAG,MAAM,CAAC,CAAG,QAAQ;IAEtD,MAAM,CAAU,kBAAkB,GAAG,EAAE,CAAC;IACxC,MAAM,CAAU,8BAA8B,GAAG,CAAC,CAAC;IACnD,MAAM,CAAU,eAAe,GAAI,EAAE,CAAC;IACtC,MAAM,CAAU,eAAe,GAAI,EAAE,CAAC;IACtC,MAAM,CAAU,aAAa,GAAM,EAAE,CAAC;IAGtC,MAAM,CAAU,kBAAkB,GAAG,MAAM,CAAC;IAC5C,MAAM,CAAU,kBAAkB,GAAG,MAAM,CAAC;IAEnD,8CAA8C;IAEvC,QAAQ,GAAa,IAAI,QAAQ,EAAE,CAAC;IAE3C;QAEE,gDAAgD;QAEhD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC;YAC7B,UAAU,EAAE,CAAC,CAAC,QAAQ;YACtB,MAAM,EAAE,CAAC,CAAC,QAAQ;YAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrB,CAAC,CAAC;QAEH,IAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YACrD,MAAM,qBAAqB,GAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAC,iBAAiB,GAAC,OAAO,CAAC,eAAe,GAAC,QAAQ,CAAC;QACxG,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC;YAC3B,GAAG,EAAE,CAAC,CAAC,QAAQ;YACf,QAAQ,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,UAAU;YAChD,IAAI,EAAE,CAAC,CAAC,QAAQ;YAChB,UAAU,EAAE,CAAC,CAAC,QAAQ;YACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,SAAS,EAAE,CAAC,CAAC,QAAQ;SACtB,CAAC,CAAC;QAEH,IAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YACjD,MAAM,mBAAmB,GAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAC,iBAAiB,GAAC,OAAO,CAAC,aAAa,GAAC,QAAQ,CAAC;QAClG,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC;YAC7B,MAAM,EAAE,CAAC,CAAC,QAAQ;YAClB,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAI,6CAA6C;YACvE,OAAO,EAAE,CAAC,CAAC,QAAQ;YACnB,SAAS,EAAE,CAAC,CAAC,QAAQ;YACrB,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAI,mBAAmB;YAC7C,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAG,8CAA8C;SACxE,CAAC,CAAC;QAEH,IAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YACrD,MAAM,qBAAqB,GAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAC,iBAAiB,GAAC,OAAO,CAAC,eAAe,GAAC,QAAQ,CAAC;QACxG,CAAC;QAED,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC;YAC5C,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAO,sDAAsD;YAClF,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAE,4CAA4C;SACxE,CAAC,CAAC;QAEH,IAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,8BAA8B,EAAE,CAAC;YACnF,MAAM,oCAAoC,GAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,GAAC,iBAAiB,GAAC,OAAO,CAAC,8BAA8B,GAAC,QAAQ,CAAC;QACrJ,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC;YAChC,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAI,mCAAmC;YAE/D,aAAa,EAAE,CAAC,CAAC,QAAQ,EAAG,kDAAkD;YAE9E,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAM,6BAA6B;YACzD,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAM,6FAA6F;YACzH,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAI,OAAO;YACnC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAS,wBAAwB;YAEpD,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAI,wBAAwB;YACpD,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAI,wBAAwB;YAEpD,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAI,sDAAsD;YAClF,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAI,sDAAsD;YAElF,eAAe,EAAE,CAAC,CAAC,QAAQ,EAAM,oCAAoC;YACrE,kBAAkB,EAAE,CAAC,CAAC,QAAQ,EAAG,wCAAwC;YAEzE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAS,mCAAmC;YAE/D,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAQ,0EAA0E;YAEtG,cAAc,EAAE,CAAC,CAAC,QAAQ,EAAE,yCAAyC;YACrE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAG,oCAAoC;SAChE,CAAC,CAAC;QAEH,IAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAC3D,MAAM,wBAAwB,GAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,GAAC,iBAAiB,GAAC,OAAO,CAAC,kBAAkB,GAAC,QAAQ,CAAC;QACjH,CAAC;IACH,CAAC","debug_id":"7c1d26a2-3cea-504f-aa27-adbb6636b6b8"}
|