@keymanapp/common-types 17.0.256-alpha → 17.0.258-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 +192 -194
- package/build/src/consts/virtual-key-constants.d.ts.map +1 -1
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts +6 -8
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts.map +1 -1
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts +29 -31
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts.map +1 -1
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts +96 -98
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts.map +1 -1
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.js +29 -5
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.js.map +1 -1
- package/build/src/kmx/element-string.d.ts +24 -26
- package/build/src/kmx/element-string.d.ts.map +1 -1
- package/build/src/kmx/keyman-targets.d.ts +21 -23
- package/build/src/kmx/keyman-targets.d.ts.map +1 -1
- package/build/src/kmx/kmx-builder.d.ts +33 -35
- package/build/src/kmx/kmx-builder.d.ts.map +1 -1
- package/build/src/kmx/kmx-file-reader.d.ts +14 -16
- package/build/src/kmx/kmx-file-reader.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-disp.d.ts +19 -21
- package/build/src/kmx/kmx-plus-builder/build-disp.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-elem.d.ts +29 -31
- package/build/src/kmx/kmx-plus-builder/build-elem.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-keys.d.ts +57 -59
- package/build/src/kmx/kmx-plus-builder/build-keys.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-layr.d.ts +54 -56
- package/build/src/kmx/kmx-plus-builder/build-layr.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-list.d.ts +36 -38
- package/build/src/kmx/kmx-plus-builder/build-list.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-loca.d.ts +12 -14
- package/build/src/kmx/kmx-plus-builder/build-loca.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-meta.d.ts +17 -19
- package/build/src/kmx/kmx-plus-builder/build-meta.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-sect.d.ts +16 -18
- package/build/src/kmx/kmx-plus-builder/build-sect.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-strs.d.ts +23 -25
- package/build/src/kmx/kmx-plus-builder/build-strs.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-tran.d.ts +33 -35
- package/build/src/kmx/kmx-plus-builder/build-tran.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-uset.d.ts +31 -33
- package/build/src/kmx/kmx-plus-builder/build-uset.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/build-vars.d.ts +22 -24
- package/build/src/kmx/kmx-plus-builder/build-vars.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/builder-section.d.ts +10 -12
- package/build/src/kmx/kmx-plus-builder/builder-section.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts +43 -45
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts.map +1 -1
- package/build/src/kmx/kmx-plus.d.ts +320 -322
- package/build/src/kmx/kmx-plus.d.ts.map +1 -1
- package/build/src/kmx/kmx.d.ts +234 -236
- package/build/src/kmx/kmx.d.ts.map +1 -1
- package/build/src/kmx/string-list.d.ts +36 -38
- package/build/src/kmx/string-list.d.ts.map +1 -1
- package/build/src/kpj/keyman-developer-project.d.ts +79 -81
- package/build/src/kpj/keyman-developer-project.d.ts.map +1 -1
- package/build/src/kpj/kpj-file-reader.d.ts +19 -21
- package/build/src/kpj/kpj-file-reader.d.ts.map +1 -1
- package/build/src/kpj/kpj-file.d.ts +40 -42
- package/build/src/kpj/kpj-file.d.ts.map +1 -1
- package/build/src/kvk/kvk-file-reader.d.ts +5 -7
- package/build/src/kvk/kvk-file-reader.d.ts.map +1 -1
- package/build/src/kvk/kvk-file-writer.d.ts +20 -22
- package/build/src/kvk/kvk-file-writer.d.ts.map +1 -1
- package/build/src/kvk/kvk-file.d.ts +67 -69
- package/build/src/kvk/kvk-file.d.ts.map +1 -1
- package/build/src/kvk/kvk-file.js +26 -2
- package/build/src/kvk/kvk-file.js.map +1 -1
- package/build/src/kvk/kvks-file-reader.d.ts +24 -26
- package/build/src/kvk/kvks-file-reader.d.ts.map +1 -1
- package/build/src/kvk/kvks-file-writer.d.ts +7 -9
- package/build/src/kvk/kvks-file-writer.d.ts.map +1 -1
- package/build/src/kvk/kvks-file.d.ts +44 -46
- package/build/src/kvk/kvks-file.d.ts.map +1 -1
- package/build/src/kvk/visual-keyboard.d.ts +45 -47
- package/build/src/kvk/visual-keyboard.d.ts.map +1 -1
- package/build/src/kvk/visual-keyboard.js +5 -2
- package/build/src/kvk/visual-keyboard.js.map +1 -1
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts +61 -63
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts.map +1 -1
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts +96 -98
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts.map +1 -1
- package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts +171 -173
- package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts.map +1 -1
- package/build/src/ldml-keyboard/pattern-parser.d.ts +196 -198
- package/build/src/ldml-keyboard/pattern-parser.d.ts.map +1 -1
- package/build/src/ldml-keyboard/unicodeset-parser-api.d.ts +38 -40
- package/build/src/ldml-keyboard/unicodeset-parser-api.d.ts.map +1 -1
- package/build/src/main.d.ts +35 -37
- package/build/src/main.d.ts.map +1 -1
- package/build/src/osk/osk.d.ts +23 -25
- package/build/src/osk/osk.d.ts.map +1 -1
- package/build/src/package/kmp-json-file.d.ts +116 -118
- package/build/src/package/kmp-json-file.d.ts.map +1 -1
- package/build/src/package/kps-file.d.ts +176 -178
- package/build/src/package/kps-file.d.ts.map +1 -1
- package/build/src/schema-validators.d.ts +14 -16
- package/build/src/schema-validators.d.ts.map +1 -1
- package/build/src/schemas/displaymap.schema.d.ts +58 -60
- package/build/src/schemas/displaymap.schema.d.ts.map +1 -1
- package/build/src/schemas/keyboard_info.schema.d.ts +210 -212
- package/build/src/schemas/keyboard_info.schema.d.ts.map +1 -1
- package/build/src/schemas/keyman-touch-layout.clean.spec.d.ts +228 -230
- package/build/src/schemas/keyman-touch-layout.clean.spec.d.ts.map +1 -1
- package/build/src/schemas/keyman-touch-layout.spec.d.ts +230 -232
- package/build/src/schemas/keyman-touch-layout.spec.d.ts.map +1 -1
- package/build/src/schemas/kmp.schema.d.ts +325 -327
- package/build/src/schemas/kmp.schema.d.ts.map +1 -1
- package/build/src/schemas/kpj-9.0.schema.d.ts +153 -155
- package/build/src/schemas/kpj-9.0.schema.d.ts.map +1 -1
- package/build/src/schemas/kpj.schema.d.ts +123 -125
- package/build/src/schemas/kpj.schema.d.ts.map +1 -1
- package/build/src/schemas/kvks.schema.d.ts +161 -163
- package/build/src/schemas/kvks.schema.d.ts.map +1 -1
- package/build/src/schemas/ldml-keyboard3.schema.d.ts +633 -635
- package/build/src/schemas/ldml-keyboard3.schema.d.ts.map +1 -1
- package/build/src/schemas/ldml-keyboardtest3.schema.d.ts +190 -192
- package/build/src/schemas/ldml-keyboardtest3.schema.d.ts.map +1 -1
- package/build/src/schemas.d.ts +2295 -2297
- package/build/src/schemas.d.ts.map +1 -1
- package/build/src/util/common-events.d.ts +45 -47
- package/build/src/util/common-events.d.ts.map +1 -1
- package/build/src/util/compiler-interfaces.d.ts +367 -369
- package/build/src/util/compiler-interfaces.d.ts.map +1 -1
- package/build/src/util/errors.d.ts +6 -8
- package/build/src/util/errors.d.ts.map +1 -1
- package/build/src/util/file-types.d.ts +94 -96
- package/build/src/util/file-types.d.ts.map +1 -1
- package/build/src/util/file-types.js +30 -2
- package/build/src/util/file-types.js.map +1 -1
- package/build/src/util/util.d.ts +67 -69
- package/build/src/util/util.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1,26 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* @param
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
//# debugId=be4f6510-0df0-5161-9ae1-c098fdabbddc
|
|
26
|
-
//# sourceMappingURL=kvks-file-reader.d.ts.map
|
|
1
|
+
import KVKSourceFile from './kvks-file.js';
|
|
2
|
+
import { VisualKeyboard, VisualKeyboardShiftState } from './visual-keyboard.js';
|
|
3
|
+
export default class KVKSFileReader {
|
|
4
|
+
read(file: Uint8Array): KVKSourceFile;
|
|
5
|
+
private cleanupFlags;
|
|
6
|
+
/**
|
|
7
|
+
* The only element that allows spaces is <key>. Remove
|
|
8
|
+
* all other empty whitespace-only values.
|
|
9
|
+
* @param root
|
|
10
|
+
* @param source
|
|
11
|
+
*/
|
|
12
|
+
private cleanupUnderscore;
|
|
13
|
+
validate(source: KVKSourceFile): void;
|
|
14
|
+
transform(source: KVKSourceFile, invalidVkeys?: string[]): VisualKeyboard;
|
|
15
|
+
private base64ToArray;
|
|
16
|
+
/**
|
|
17
|
+
* xml2js will not place single-entry objects into arrays.
|
|
18
|
+
* Easiest way to fix this is to box them ourselves as needed
|
|
19
|
+
* @param source KVKSourceFile
|
|
20
|
+
*/
|
|
21
|
+
private boxArrays;
|
|
22
|
+
kvksShiftToKvkShift(shift: string): VisualKeyboardShiftState;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=kvks-file-reader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"
|
|
1
|
+
{"version":3,"file":"kvks-file-reader.d.ts","sourceRoot":"","sources":["../../../src/kvk/kvks-file-reader.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAoB,cAAc,EAAwG,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAMxM,MAAM,CAAC,OAAO,OAAO,cAAc;IAC1B,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa;IAoC5C,OAAO,CAAC,YAAY;IAMpB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IA0BlB,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAMrC,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,cAAc;IA+DhF,OAAO,CAAC,aAAa;IASrB;;;;OAIG;IACH,OAAO,CAAC,SAAS;IAYV,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,wBAAwB;CAWpE"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
//# debugId=d03fe555-9acb-5e03-bcc0-880ce5e99172
|
|
9
|
-
//# sourceMappingURL=kvks-file-writer.d.ts.map
|
|
1
|
+
import { VisualKeyboard, VisualKeyboardShiftState } from './visual-keyboard.js';
|
|
2
|
+
export default class KVKSFileWriter {
|
|
3
|
+
write(vk: VisualKeyboard): string;
|
|
4
|
+
private arrayToBase64;
|
|
5
|
+
kvkShiftToKvksShift(shift: VisualKeyboardShiftState): string;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=kvks-file-writer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"
|
|
1
|
+
{"version":3,"file":"kvks-file-writer.d.ts","sourceRoot":"","sources":["../../../src/kvk/kvks-file-writer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAqF,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAGnK,MAAM,CAAC,OAAO,OAAO,cAAc;IAC1B,KAAK,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM;IAmGxC,OAAO,CAAC,aAAa;IAMd,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,MAAM;CASpE"}
|
|
@@ -1,46 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
//# debugId=54ab7bc6-6a8c-5a6a-b4e4-607523657757
|
|
46
|
-
//# sourceMappingURL=kvks-file.d.ts.map
|
|
1
|
+
export default interface KVKSourceFile {
|
|
2
|
+
/**
|
|
3
|
+
* <visualkeyboard> -- the root element.
|
|
4
|
+
*/
|
|
5
|
+
visualkeyboard: KVKSVisualKeyboard;
|
|
6
|
+
}
|
|
7
|
+
export interface KVKSVisualKeyboard {
|
|
8
|
+
header?: KVKSHeader;
|
|
9
|
+
encoding?: KVKSEncoding[];
|
|
10
|
+
}
|
|
11
|
+
export interface KVKSHeader {
|
|
12
|
+
version?: string;
|
|
13
|
+
kbdname?: string;
|
|
14
|
+
flags?: KVKSFlags;
|
|
15
|
+
layout?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface KVKSFlags {
|
|
18
|
+
key102?: string;
|
|
19
|
+
displayunderlying?: string;
|
|
20
|
+
useunderlying?: string;
|
|
21
|
+
usealtgr?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface KVKSEncoding {
|
|
24
|
+
$?: {
|
|
25
|
+
name?: string;
|
|
26
|
+
fontname?: string;
|
|
27
|
+
fontsize?: string;
|
|
28
|
+
};
|
|
29
|
+
layer?: KVKSLayer[];
|
|
30
|
+
}
|
|
31
|
+
export interface KVKSLayer {
|
|
32
|
+
$?: {
|
|
33
|
+
shift?: string;
|
|
34
|
+
};
|
|
35
|
+
key?: KVKSKey[];
|
|
36
|
+
}
|
|
37
|
+
export interface KVKSKey {
|
|
38
|
+
$?: {
|
|
39
|
+
vkey?: string;
|
|
40
|
+
};
|
|
41
|
+
bitmap?: string;
|
|
42
|
+
_?: string;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=kvks-file.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"
|
|
1
|
+
{"version":3,"file":"kvks-file.d.ts","sourceRoot":"","sources":["../../../src/kvk/kvks-file.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,WAAW,aAAa;IACpC;;OAEG;IACH,cAAc,EAAE,kBAAkB,CAAC;CACpC;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,CAAC,CAAC,EAAE;QACF,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,CAAC,CAAC,EAAE;QACF,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,OAAO;IACtB,CAAC,CAAC,EAAE;QACF,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAA;IACD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ"}
|
|
@@ -1,47 +1,45 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
export
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
30
|
-
export {
|
|
31
|
-
export
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
//# debugId=b7e6ea2e-d63d-54ef-ba9e-1a7af773fe63
|
|
47
|
-
//# sourceMappingURL=visual-keyboard.d.ts.map
|
|
1
|
+
import { BUILDER_KVK_SHIFT_STATE, BUILDER_KVK_HEADER_FLAGS, BUILDER_KVK_KEY_FLAGS } from "./kvk-file.js";
|
|
2
|
+
/**
|
|
3
|
+
* The default font and size are not very important, as generally they are
|
|
4
|
+
* unused, because font information is provided in the package, but we include
|
|
5
|
+
* them for completeness. The size is included as a negative value which is
|
|
6
|
+
* defined in the LOGFONT structure in Windows API.
|
|
7
|
+
*/
|
|
8
|
+
export declare const DEFAULT_KVK_FONT: {
|
|
9
|
+
name: string;
|
|
10
|
+
size: number;
|
|
11
|
+
};
|
|
12
|
+
export declare class VisualKeyboard {
|
|
13
|
+
header: VisualKeyboardHeader;
|
|
14
|
+
keys: VisualKeyboardKey[];
|
|
15
|
+
}
|
|
16
|
+
export { BUILDER_KVK_HEADER_FLAGS as VisualKeyboardHeaderFlags } from "./kvk-file.js";
|
|
17
|
+
export declare class VisualKeyboardHeader {
|
|
18
|
+
version?: number;
|
|
19
|
+
flags: BUILDER_KVK_HEADER_FLAGS;
|
|
20
|
+
associatedKeyboard?: string;
|
|
21
|
+
ansiFont: VisualKeyboardFont;
|
|
22
|
+
unicodeFont: VisualKeyboardFont;
|
|
23
|
+
underlyingLayout?: string;
|
|
24
|
+
}
|
|
25
|
+
export declare class VisualKeyboardFont {
|
|
26
|
+
name?: string;
|
|
27
|
+
size?: number;
|
|
28
|
+
}
|
|
29
|
+
export { BUILDER_KVK_KEY_FLAGS as VisualKeyboardKeyFlags } from "./kvk-file.js";
|
|
30
|
+
export { BUILDER_KVK_SHIFT_STATE as VisualKeyboardShiftState } from "./kvk-file.js";
|
|
31
|
+
export declare class VisualKeyboardKey {
|
|
32
|
+
flags?: BUILDER_KVK_KEY_FLAGS;
|
|
33
|
+
shift?: BUILDER_KVK_SHIFT_STATE;
|
|
34
|
+
vkey?: number;
|
|
35
|
+
text?: string;
|
|
36
|
+
bitmap?: Uint8Array;
|
|
37
|
+
}
|
|
38
|
+
interface VisualKeyboardLegalShiftState {
|
|
39
|
+
desc: string;
|
|
40
|
+
name: string;
|
|
41
|
+
shift: number;
|
|
42
|
+
vkeys: number[];
|
|
43
|
+
}
|
|
44
|
+
export declare const VisualKeyboardLegalShiftStates: VisualKeyboardLegalShiftState[];
|
|
45
|
+
//# sourceMappingURL=visual-keyboard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"
|
|
1
|
+
{"version":3,"file":"visual-keyboard.d.ts","sourceRoot":"","sources":["../../../src/kvk/visual-keyboard.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEzG;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB;;;CAG5B,CAAC;AAEF,qBAAa,cAAc;IACzB,MAAM,EAAE,oBAAoB,CAAwE;IACpG,IAAI,EAAE,iBAAiB,EAAE,CAAM;CAChC;AAED,OAAO,EAAE,wBAAwB,IAAI,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAEtF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,wBAAwB,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,WAAW,EAAE,kBAAkB,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,kBAAkB;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,OAAO,EAAE,qBAAqB,IAAI,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAEhF,OAAO,EAAE,uBAAuB,IAAI,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAEpF,qBAAa,iBAAiB;IAC5B,KAAK,CAAC,EAAE,qBAAqB,CAAC;IAC9B,KAAK,CAAC,EAAE,uBAAuB,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED,UAAU,6BAA6B;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAKD,eAAO,MAAM,8BAA8B,EAAE,6BAA6B,EA2BzE,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
//
|
|
4
4
|
// Corresponds to .kvk / .kvks file data
|
|
5
5
|
//
|
|
6
|
-
!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]="
|
|
6
|
+
!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]="33b518a8-ec78-57e7-b908-e9681857112d")}catch(e){}}();
|
|
7
7
|
/**
|
|
8
8
|
* The default font and size are not very important, as generally they are
|
|
9
9
|
* unused, because font information is provided in the package, but we include
|
|
@@ -19,6 +19,7 @@ export class VisualKeyboard {
|
|
|
19
19
|
keys = [];
|
|
20
20
|
}
|
|
21
21
|
;
|
|
22
|
+
export { BUILDER_KVK_HEADER_FLAGS as VisualKeyboardHeaderFlags } from "./kvk-file.js";
|
|
22
23
|
export class VisualKeyboardHeader {
|
|
23
24
|
version; // 0x0600
|
|
24
25
|
flags;
|
|
@@ -33,6 +34,8 @@ export class VisualKeyboardFont {
|
|
|
33
34
|
size;
|
|
34
35
|
}
|
|
35
36
|
;
|
|
37
|
+
export { BUILDER_KVK_KEY_FLAGS as VisualKeyboardKeyFlags } from "./kvk-file.js";
|
|
38
|
+
export { BUILDER_KVK_SHIFT_STATE as VisualKeyboardShiftState } from "./kvk-file.js";
|
|
36
39
|
export class VisualKeyboardKey {
|
|
37
40
|
flags;
|
|
38
41
|
shift;
|
|
@@ -69,5 +72,5 @@ export const VisualKeyboardLegalShiftStates = [
|
|
|
69
72
|
{ desc: 'Shift+Right Ctrl+Left Alt', name: 'SRCLA', shift: 1 /* ss.KVKS_SHIFT */ | 16 /* ss.KVKS_RCTRL */ | 32 /* ss.KVKS_LALT */, vkeys: [vk.K_SHIFT, vk.K_RCONTROL, vk.K_LALT] },
|
|
70
73
|
{ desc: 'Shift+Right Ctrl+Right Alt', name: 'SRCRA', shift: 1 /* ss.KVKS_SHIFT */ | 16 /* ss.KVKS_RCTRL */ | 64 /* ss.KVKS_RALT */, vkeys: [vk.K_SHIFT, vk.K_RCONTROL, vk.K_RALT] }, //16
|
|
71
74
|
];
|
|
72
|
-
//# debugId=
|
|
75
|
+
//# debugId=33b518a8-ec78-57e7-b908-e9681857112d
|
|
73
76
|
//# sourceMappingURL=visual-keyboard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"debug_id":"
|
|
1
|
+
{"debug_id":"33b518a8-ec78-57e7-b908-e9681857112d","file":"visual-keyboard.js","mappings":"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","names":[],"sourceRoot":"","sources":["../../../src/kvk/visual-keyboard.ts"],"version":3}
|
|
@@ -1,63 +1,61 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
*
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
//# debugId=8362488b-73d6-5071-9be6-c3313fa649c1
|
|
63
|
-
//# sourceMappingURL=ldml-keyboard-testdata-xml.d.ts.map
|
|
1
|
+
export interface LDMLKeyboardTestDataXMLSourceFile {
|
|
2
|
+
/**
|
|
3
|
+
* <keyboardTest> -- the root element.
|
|
4
|
+
*/
|
|
5
|
+
keyboardTest3: LKTKeyboardTest;
|
|
6
|
+
}
|
|
7
|
+
export interface LKTKeyboardTest {
|
|
8
|
+
conformsTo?: string;
|
|
9
|
+
info?: LKTInfo;
|
|
10
|
+
repertoire?: LKTRepertoire[];
|
|
11
|
+
tests?: LKTTests[];
|
|
12
|
+
}
|
|
13
|
+
export interface LKTInfo {
|
|
14
|
+
author?: string;
|
|
15
|
+
keyboard?: string;
|
|
16
|
+
name?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface LKTRepertoire {
|
|
19
|
+
name?: string;
|
|
20
|
+
chars?: string;
|
|
21
|
+
type?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface LKTTests {
|
|
24
|
+
name?: string;
|
|
25
|
+
test?: LKTTest[];
|
|
26
|
+
}
|
|
27
|
+
export interface LKTTest {
|
|
28
|
+
name?: string;
|
|
29
|
+
startContext?: LKTStartContext;
|
|
30
|
+
actions?: LKTAnyAction[];
|
|
31
|
+
}
|
|
32
|
+
export interface LKTStartContext {
|
|
33
|
+
to?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Test Actions.
|
|
37
|
+
* The expectation is that each LKTAction object will have exactly one non-falsy field.
|
|
38
|
+
*/
|
|
39
|
+
export interface LKTAction {
|
|
40
|
+
type?: "check" | "emit" | "keystroke" | "backspace";
|
|
41
|
+
}
|
|
42
|
+
export interface LKTCheck extends LKTAction {
|
|
43
|
+
type: "check";
|
|
44
|
+
result?: string;
|
|
45
|
+
}
|
|
46
|
+
export interface LKTEmit extends LKTAction {
|
|
47
|
+
type: "emit";
|
|
48
|
+
to?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface LKTKeystroke extends LKTAction {
|
|
51
|
+
type: "keystroke";
|
|
52
|
+
key?: string;
|
|
53
|
+
flick?: string;
|
|
54
|
+
longPress?: string;
|
|
55
|
+
tapCount?: string;
|
|
56
|
+
}
|
|
57
|
+
export interface LKTBackspace extends LKTAction {
|
|
58
|
+
type: "backspace";
|
|
59
|
+
}
|
|
60
|
+
export type LKTAnyAction = LKTCheck | LKTEmit | LKTKeystroke | LKTBackspace;
|
|
61
|
+
//# sourceMappingURL=ldml-keyboard-testdata-xml.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"
|
|
1
|
+
{"version":3,"file":"ldml-keyboard-testdata-xml.d.ts","sourceRoot":"","sources":["../../../src/ldml-keyboard/ldml-keyboard-testdata-xml.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,iCAAiC;IAChD;;OAEG;IACH,aAAa,EAAE,eAAe,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAC7B,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,GAAG,WAAW,CAAC;CACrD;AAED,MAAM,WAAW,QAAS,SAAQ,SAAS;IACzC,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,OAAQ,SAAQ,SAAS;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC7C,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC7C,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,YAAY,CAAC"}
|