@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.
Files changed (189) hide show
  1. package/build/src/consts/virtual-key-constants.d.ts +191 -191
  2. package/build/src/consts/virtual-key-constants.js +221 -221
  3. package/build/src/consts/virtual-key-constants.js.map +1 -1
  4. package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts +5 -5
  5. package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.js +72 -72
  6. package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.js.map +1 -1
  7. package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts +28 -28
  8. package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.js +120 -120
  9. package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.js.map +1 -1
  10. package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts +95 -95
  11. package/build/src/keyman-touch-layout/keyman-touch-layout-file.js +52 -52
  12. package/build/src/kmx/element-string.d.ts +23 -23
  13. package/build/src/kmx/element-string.js +125 -125
  14. package/build/src/kmx/element-string.js.map +1 -1
  15. package/build/src/kmx/keyman-targets.d.ts +20 -20
  16. package/build/src/kmx/keyman-targets.js +79 -79
  17. package/build/src/kmx/keyman-targets.js.map +1 -1
  18. package/build/src/kmx/kmx-builder.d.ts +32 -32
  19. package/build/src/kmx/kmx-builder.js +189 -189
  20. package/build/src/kmx/kmx-builder.js.map +1 -1
  21. package/build/src/kmx/kmx-file-reader.d.ts +13 -13
  22. package/build/src/kmx/kmx-file-reader.js +134 -134
  23. package/build/src/kmx/kmx-file-reader.js.map +1 -1
  24. package/build/src/kmx/kmx-plus-builder/build-disp.d.ts +18 -18
  25. package/build/src/kmx/kmx-plus-builder/build-disp.js +27 -27
  26. package/build/src/kmx/kmx-plus-builder/build-disp.js.map +1 -1
  27. package/build/src/kmx/kmx-plus-builder/build-elem.d.ts +28 -28
  28. package/build/src/kmx/kmx-plus-builder/build-elem.js +89 -89
  29. package/build/src/kmx/kmx-plus-builder/build-elem.js.map +1 -1
  30. package/build/src/kmx/kmx-plus-builder/build-keys.d.ts +56 -56
  31. package/build/src/kmx/kmx-plus-builder/build-keys.js +107 -107
  32. package/build/src/kmx/kmx-plus-builder/build-keys.js.map +1 -1
  33. package/build/src/kmx/kmx-plus-builder/build-layr.d.ts +53 -53
  34. package/build/src/kmx/kmx-plus-builder/build-layr.js +101 -101
  35. package/build/src/kmx/kmx-plus-builder/build-layr.js.map +1 -1
  36. package/build/src/kmx/kmx-plus-builder/build-list.d.ts +35 -35
  37. package/build/src/kmx/kmx-plus-builder/build-list.js +66 -66
  38. package/build/src/kmx/kmx-plus-builder/build-list.js.map +1 -1
  39. package/build/src/kmx/kmx-plus-builder/build-loca.d.ts +11 -11
  40. package/build/src/kmx/kmx-plus-builder/build-loca.js +21 -21
  41. package/build/src/kmx/kmx-plus-builder/build-loca.js.map +1 -1
  42. package/build/src/kmx/kmx-plus-builder/build-meta.d.ts +16 -16
  43. package/build/src/kmx/kmx-plus-builder/build-meta.js +20 -20
  44. package/build/src/kmx/kmx-plus-builder/build-sect.d.ts +15 -15
  45. package/build/src/kmx/kmx-plus-builder/build-sect.js +15 -15
  46. package/build/src/kmx/kmx-plus-builder/build-sect.js.map +1 -1
  47. package/build/src/kmx/kmx-plus-builder/build-strs.d.ts +22 -22
  48. package/build/src/kmx/kmx-plus-builder/build-strs.js +46 -46
  49. package/build/src/kmx/kmx-plus-builder/build-strs.js.map +1 -1
  50. package/build/src/kmx/kmx-plus-builder/build-tran.d.ts +32 -32
  51. package/build/src/kmx/kmx-plus-builder/build-tran.js +69 -69
  52. package/build/src/kmx/kmx-plus-builder/build-tran.js.map +1 -1
  53. package/build/src/kmx/kmx-plus-builder/build-uset.d.ts +30 -30
  54. package/build/src/kmx/kmx-plus-builder/build-uset.js +60 -60
  55. package/build/src/kmx/kmx-plus-builder/build-uset.js.map +1 -1
  56. package/build/src/kmx/kmx-plus-builder/build-vars.d.ts +21 -21
  57. package/build/src/kmx/kmx-plus-builder/build-vars.js +48 -48
  58. package/build/src/kmx/kmx-plus-builder/build-vars.js.map +1 -1
  59. package/build/src/kmx/kmx-plus-builder/builder-section.d.ts +9 -9
  60. package/build/src/kmx/kmx-plus-builder/builder-section.js +2 -2
  61. package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts +42 -42
  62. package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.js +137 -137
  63. package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.js.map +1 -1
  64. package/build/src/kmx/kmx-plus.d.ts +322 -322
  65. package/build/src/kmx/kmx-plus.js +830 -830
  66. package/build/src/kmx/kmx-plus.js.map +1 -1
  67. package/build/src/kmx/kmx.d.ts +233 -233
  68. package/build/src/kmx/kmx.js +302 -302
  69. package/build/src/kmx/kmx.js.map +1 -1
  70. package/build/src/kmx/string-list.d.ts +35 -35
  71. package/build/src/kmx/string-list.js +88 -88
  72. package/build/src/kmx/string-list.js.map +1 -1
  73. package/build/src/kpj/keyman-developer-project.d.ts +78 -78
  74. package/build/src/kpj/keyman-developer-project.js +195 -195
  75. package/build/src/kpj/keyman-developer-project.js.map +1 -1
  76. package/build/src/kpj/kpj-file-reader.d.ts +18 -18
  77. package/build/src/kpj/kpj-file-reader.js +119 -119
  78. package/build/src/kpj/kpj-file-reader.js.map +1 -1
  79. package/build/src/kpj/kpj-file.d.ts +39 -39
  80. package/build/src/kpj/kpj-file.js +10 -10
  81. package/build/src/kvk/kvk-file-reader.d.ts +4 -4
  82. package/build/src/kvk/kvk-file-reader.js +37 -37
  83. package/build/src/kvk/kvk-file-reader.js.map +1 -1
  84. package/build/src/kvk/kvk-file-writer.d.ts +19 -19
  85. package/build/src/kvk/kvk-file-writer.js +77 -77
  86. package/build/src/kvk/kvk-file-writer.js.map +1 -1
  87. package/build/src/kvk/kvk-file.d.ts +66 -66
  88. package/build/src/kvk/kvk-file.d.ts.map +1 -1
  89. package/build/src/kvk/kvk-file.js +90 -90
  90. package/build/src/kvk/kvk-file.js.map +1 -1
  91. package/build/src/kvk/kvks-file-reader.d.ts +23 -23
  92. package/build/src/kvk/kvks-file-reader.js +175 -175
  93. package/build/src/kvk/kvks-file-reader.js.map +1 -1
  94. package/build/src/kvk/kvks-file-writer.d.ts +6 -6
  95. package/build/src/kvk/kvks-file-writer.js +106 -106
  96. package/build/src/kvk/kvks-file-writer.js.map +1 -1
  97. package/build/src/kvk/kvks-file.d.ts +43 -43
  98. package/build/src/kvk/kvks-file.js +9 -9
  99. package/build/src/kvk/visual-keyboard.d.ts +44 -44
  100. package/build/src/kvk/visual-keyboard.js +75 -75
  101. package/build/src/kvk/visual-keyboard.js.map +1 -1
  102. package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts +60 -60
  103. package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.js +19 -19
  104. package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts +95 -95
  105. package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.js +409 -409
  106. package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.js.map +1 -1
  107. package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts +170 -170
  108. package/build/src/ldml-keyboard/ldml-keyboard-xml.js +55 -55
  109. package/build/src/ldml-keyboard/pattern-parser.d.ts +201 -201
  110. package/build/src/ldml-keyboard/pattern-parser.js +490 -490
  111. package/build/src/ldml-keyboard/pattern-parser.js.map +1 -1
  112. package/build/src/ldml-keyboard/unicodeset-parser-api.d.ts +37 -37
  113. package/build/src/ldml-keyboard/unicodeset-parser-api.js +27 -27
  114. package/build/src/main.d.ts +33 -33
  115. package/build/src/main.js +32 -32
  116. package/build/src/package/kmp-json-file.d.ts +115 -115
  117. package/build/src/package/kmp-json-file.js +1 -1
  118. package/build/src/package/kps-file.d.ts +175 -175
  119. package/build/src/package/kps-file.js +15 -15
  120. package/build/src/schema-validators.d.ts +13 -13
  121. package/build/src/schema-validators.js +25 -25
  122. package/build/src/schemas/displaymap.schema.d.ts +57 -57
  123. package/build/src/schemas/displaymap.schema.js +35 -35
  124. package/build/src/schemas/displaymap.schema.validator.d.mts +2 -2
  125. package/build/src/schemas/displaymap.schema.validator.mjs +266 -266
  126. package/build/src/schemas/displaymap.schema.validator.mjs.map +1 -1
  127. package/build/src/schemas/keyboard_info.schema.d.ts +209 -209
  128. package/build/src/schemas/keyboard_info.schema.js +98 -98
  129. package/build/src/schemas/keyboard_info.schema.validator.d.mts +2 -2
  130. package/build/src/schemas/keyboard_info.schema.validator.mjs +1160 -1160
  131. package/build/src/schemas/keyboard_info.schema.validator.mjs.map +1 -1
  132. package/build/src/schemas/keyman-touch-layout.clean.spec.d.ts +227 -227
  133. package/build/src/schemas/keyman-touch-layout.clean.spec.js +151 -151
  134. package/build/src/schemas/keyman-touch-layout.clean.spec.validator.d.mts +2 -2
  135. package/build/src/schemas/keyman-touch-layout.clean.spec.validator.mjs +1094 -1094
  136. package/build/src/schemas/keyman-touch-layout.clean.spec.validator.mjs.map +1 -1
  137. package/build/src/schemas/keyman-touch-layout.spec.d.ts +229 -229
  138. package/build/src/schemas/keyman-touch-layout.spec.js +140 -140
  139. package/build/src/schemas/keyman-touch-layout.spec.validator.d.mts +2 -2
  140. package/build/src/schemas/keyman-touch-layout.spec.validator.mjs +1436 -1436
  141. package/build/src/schemas/keyman-touch-layout.spec.validator.mjs.map +1 -1
  142. package/build/src/schemas/kmp.schema.d.ts +324 -324
  143. package/build/src/schemas/kmp.schema.js +353 -353
  144. package/build/src/schemas/kmp.schema.validator.d.mts +2 -2
  145. package/build/src/schemas/kmp.schema.validator.mjs +1627 -1627
  146. package/build/src/schemas/kmp.schema.validator.mjs.map +1 -1
  147. package/build/src/schemas/kpj-9.0.schema.d.ts +152 -152
  148. package/build/src/schemas/kpj-9.0.schema.js +131 -131
  149. package/build/src/schemas/kpj-9.0.schema.validator.d.mts +2 -2
  150. package/build/src/schemas/kpj-9.0.schema.validator.mjs +655 -655
  151. package/build/src/schemas/kpj-9.0.schema.validator.mjs.map +1 -1
  152. package/build/src/schemas/kpj.schema.d.ts +122 -122
  153. package/build/src/schemas/kpj.schema.js +129 -129
  154. package/build/src/schemas/kpj.schema.validator.d.mts +2 -2
  155. package/build/src/schemas/kpj.schema.validator.mjs +515 -515
  156. package/build/src/schemas/kpj.schema.validator.mjs.map +1 -1
  157. package/build/src/schemas/kvks.schema.d.ts +160 -160
  158. package/build/src/schemas/kvks.schema.js +182 -182
  159. package/build/src/schemas/kvks.schema.validator.d.mts +2 -2
  160. package/build/src/schemas/kvks.schema.validator.mjs +625 -625
  161. package/build/src/schemas/kvks.schema.validator.mjs.map +1 -1
  162. package/build/src/schemas/ldml-keyboard3.schema.d.ts +635 -635
  163. package/build/src/schemas/ldml-keyboard3.schema.js +696 -696
  164. package/build/src/schemas/ldml-keyboard3.schema.validator.d.mts +2 -2
  165. package/build/src/schemas/ldml-keyboard3.schema.validator.mjs +3117 -3117
  166. package/build/src/schemas/ldml-keyboard3.schema.validator.mjs.map +1 -1
  167. package/build/src/schemas/ldml-keyboardtest3.schema.d.ts +192 -192
  168. package/build/src/schemas/ldml-keyboardtest3.schema.js +225 -225
  169. package/build/src/schemas/ldml-keyboardtest3.schema.validator.d.mts +2 -2
  170. package/build/src/schemas/ldml-keyboardtest3.schema.validator.mjs +744 -744
  171. package/build/src/schemas/ldml-keyboardtest3.schema.validator.mjs.map +1 -1
  172. package/build/src/schemas.d.ts +2300 -2300
  173. package/build/src/schemas.js +23 -23
  174. package/build/src/util/common-events.d.ts +44 -44
  175. package/build/src/util/common-events.js +26 -26
  176. package/build/src/util/compiler-interfaces.d.ts +371 -371
  177. package/build/src/util/compiler-interfaces.d.ts.map +1 -1
  178. package/build/src/util/compiler-interfaces.js +380 -380
  179. package/build/src/util/compiler-interfaces.js.map +1 -1
  180. package/build/src/util/errors.d.ts +5 -5
  181. package/build/src/util/errors.js +5 -5
  182. package/build/src/util/file-types.d.ts +93 -93
  183. package/build/src/util/file-types.d.ts.map +1 -1
  184. package/build/src/util/file-types.js +142 -142
  185. package/build/src/util/file-types.js.map +1 -1
  186. package/build/src/util/util.d.ts +98 -98
  187. package/build/src/util/util.js +368 -368
  188. package/build/src/util/util.js.map +1 -1
  189. package/package.json +3 -3
@@ -1,177 +1,177 @@
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]="664396d1-231b-5c77-b177-a5d94976b113")}catch(e){}}();
3
- import * as xml2js from 'xml2js';
4
- import { boxXmlArray } from '../util/util.js';
5
- import { DEFAULT_KVK_FONT, VisualKeyboardLegalShiftStates } from './visual-keyboard.js';
6
- import { USVirtualKeyCodes } from '../consts/virtual-key-constants.js';
7
- import { BUILDER_KVK_HEADER_VERSION, KVK_HEADER_IDENTIFIER_BYTES } from './kvk-file.js';
8
- import SchemaValidators from '../schema-validators.js';
9
- export default class KVKSFileReader {
10
- read(file) {
11
- let source;
12
- const parser = new xml2js.Parser({
13
- explicitArray: false,
14
- mergeAttrs: false,
15
- includeWhiteChars: true,
16
- normalize: false,
17
- emptyTag: {}
18
- // Why "as any"? xml2js is broken:
19
- // https://github.com/Leonidas-from-XIV/node-xml2js/issues/648 means
20
- // that an old version of `emptyTag` is used which doesn't support
21
- // functions, but DefinitelyTyped is requiring use of function or a
22
- // string. See also notes at
23
- // https://github.com/DefinitelyTyped/DefinitelyTyped/pull/59259#issuecomment-1254405470
24
- // An alternative fix would be to pull xml2js directly from github
25
- // rather than using the version tagged on npmjs.com.
26
- });
27
- parser.parseString(file, (e, r) => {
28
- if (e) {
29
- if (file.byteLength > 4 && file.subarray(0, 3).every((v, i) => v == KVK_HEADER_IDENTIFIER_BYTES[i])) {
30
- throw new Error('File appears to be a binary .kvk file', { cause: e });
31
- }
32
- throw e;
33
- }
34
- ;
35
- source = r;
36
- });
37
- if (source) {
38
- source = this.boxArrays(source);
39
- this.cleanupFlags(source);
40
- this.cleanupUnderscore('visualkeyboard', source.visualkeyboard);
41
- }
42
- return source;
43
- }
44
- cleanupFlags(source) {
45
- if (source.visualkeyboard?.header?.flags === '') {
46
- source.visualkeyboard.header.flags = {};
47
- }
48
- }
49
- /**
50
- * The only element that allows spaces is <key>. Remove
51
- * all other empty whitespace-only values.
52
- * @param root
53
- * @param source
54
- */
55
- cleanupUnderscore(root, source) {
56
- if (root != 'key') {
57
- if (source?.['_']?.trim() === '') {
58
- delete source['_'];
59
- }
60
- }
61
- else {
62
- // If key text is pure whitespace, replace with empty string,
63
- // which matches kmcomp reader
64
- if (source?.['_']?.match(/^( +)$/)) {
65
- source['_'] = '';
66
- }
67
- }
68
- for (let key of Object.keys(source)) {
69
- if (Array.isArray(source[key])) {
70
- for (let item of source[key]) {
71
- if (typeof (item) === 'object') {
72
- this.cleanupUnderscore(key, item);
73
- }
74
- }
75
- }
76
- else if (typeof source[key] === 'object') {
77
- this.cleanupUnderscore(key, source[key]);
78
- }
79
- }
80
- }
81
- validate(source) {
82
- if (!SchemaValidators.kvks(source)) {
83
- throw new Error(JSON.stringify(SchemaValidators.kvks.errors));
84
- }
85
- }
86
- transform(source, invalidVkeys) {
87
- // NOTE: at this point, the xml should have been validated
88
- // and matched the schema result so we can assume properties exist
89
- let result = {
90
- header: {
91
- version: BUILDER_KVK_HEADER_VERSION,
92
- flags: 0,
93
- ansiFont: { ...DEFAULT_KVK_FONT },
94
- unicodeFont: { ...DEFAULT_KVK_FONT },
95
- associatedKeyboard: source.visualkeyboard?.header?.kbdname,
96
- underlyingLayout: source.visualkeyboard?.header?.layout,
97
- },
98
- keys: []
99
- };
100
- if (source.visualkeyboard?.header?.flags?.displayunderlying !== undefined) {
101
- result.header.flags |= 2 /* VisualKeyboardHeaderFlags.kvkhDisplayUnderlying */;
102
- }
103
- if (source.visualkeyboard?.header?.flags?.key102 !== undefined) {
104
- result.header.flags |= 1 /* VisualKeyboardHeaderFlags.kvkh102 */;
105
- }
106
- if (source.visualkeyboard?.header?.flags?.usealtgr !== undefined) {
107
- result.header.flags |= 8 /* VisualKeyboardHeaderFlags.kvkhAltGr */;
108
- }
109
- if (source.visualkeyboard?.header?.flags?.useunderlying !== undefined) {
110
- result.header.flags |= 4 /* VisualKeyboardHeaderFlags.kvkhUseUnderlying */;
111
- }
112
- for (let encoding of source.visualkeyboard.encoding) {
113
- let isUnicode = (encoding.$?.name == 'unicode'), font = isUnicode ? result.header.unicodeFont : result.header.ansiFont;
114
- font.name = encoding.$?.fontname ?? DEFAULT_KVK_FONT.name;
115
- font.size = parseInt(encoding.$?.fontsize ?? DEFAULT_KVK_FONT.size.toString(), 10);
116
- for (let layer of encoding.layer) {
117
- let shift = this.kvksShiftToKvkShift(layer.$?.shift);
118
- for (let sourceKey of layer.key) {
119
- let vkey = USVirtualKeyCodes[sourceKey.$?.vkey];
120
- if (!vkey) {
121
- if (typeof invalidVkeys !== 'undefined') {
122
- invalidVkeys.push(sourceKey.$?.vkey);
123
- }
124
- continue;
125
- }
126
- let key = {
127
- flags: (isUnicode ? 2 /* VisualKeyboardKeyFlags.kvkkUnicode */ : 0) |
128
- (sourceKey.bitmap ? 1 /* VisualKeyboardKeyFlags.kvkkBitmap */ : 0),
129
- shift: shift,
130
- text: sourceKey.bitmap ? '' : (sourceKey._ ?? ''),
131
- vkey: vkey
132
- };
133
- if (sourceKey.bitmap) {
134
- key.bitmap = this.base64ToArray(sourceKey.bitmap);
135
- }
136
- result.keys.push(key);
137
- }
138
- }
139
- }
140
- return result;
141
- }
142
- base64ToArray(source) {
143
- const binary = atob(source);
144
- const bytes = new Uint8Array(binary.length);
145
- for (let i = 0; i < binary.length; i++) {
146
- bytes[i] = binary.charCodeAt(i);
147
- }
148
- return bytes;
149
- }
150
- /**
151
- * xml2js will not place single-entry objects into arrays.
152
- * Easiest way to fix this is to box them ourselves as needed
153
- * @param source KVKSourceFile
154
- */
155
- boxArrays(source) {
156
- boxXmlArray(source.visualkeyboard, 'encoding');
157
- for (let encoding of source.visualkeyboard.encoding) {
158
- boxXmlArray(encoding, 'layer');
159
- for (let layer of encoding.layer) {
160
- boxXmlArray(layer, 'key');
161
- }
162
- }
163
- return source;
164
- }
165
- kvksShiftToKvkShift(shift) {
166
- shift = shift.toUpperCase();
167
- // TODO-LDML(lowpri): make a map of this?
168
- for (let state of VisualKeyboardLegalShiftStates) {
169
- if (state.name == shift) {
170
- return state.shift;
171
- }
172
- }
173
- return 0;
174
- }
175
- }
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]="8e79a163-6f4f-539c-8647-d2b3203e3b53")}catch(e){}}();
3
+ import * as xml2js from 'xml2js';
4
+ import { boxXmlArray } from '../util/util.js';
5
+ import { DEFAULT_KVK_FONT, VisualKeyboardLegalShiftStates } from './visual-keyboard.js';
6
+ import { USVirtualKeyCodes } from '../consts/virtual-key-constants.js';
7
+ import { BUILDER_KVK_HEADER_VERSION, KVK_HEADER_IDENTIFIER_BYTES } from './kvk-file.js';
8
+ import SchemaValidators from '../schema-validators.js';
9
+ export default class KVKSFileReader {
10
+ read(file) {
11
+ let source;
12
+ const parser = new xml2js.Parser({
13
+ explicitArray: false,
14
+ mergeAttrs: false,
15
+ includeWhiteChars: true,
16
+ normalize: false,
17
+ emptyTag: {}
18
+ // Why "as any"? xml2js is broken:
19
+ // https://github.com/Leonidas-from-XIV/node-xml2js/issues/648 means
20
+ // that an old version of `emptyTag` is used which doesn't support
21
+ // functions, but DefinitelyTyped is requiring use of function or a
22
+ // string. See also notes at
23
+ // https://github.com/DefinitelyTyped/DefinitelyTyped/pull/59259#issuecomment-1254405470
24
+ // An alternative fix would be to pull xml2js directly from github
25
+ // rather than using the version tagged on npmjs.com.
26
+ });
27
+ parser.parseString(file, (e, r) => {
28
+ if (e) {
29
+ if (file.byteLength > 4 && file.subarray(0, 3).every((v, i) => v == KVK_HEADER_IDENTIFIER_BYTES[i])) {
30
+ throw new Error('File appears to be a binary .kvk file', { cause: e });
31
+ }
32
+ throw e;
33
+ }
34
+ ;
35
+ source = r;
36
+ });
37
+ if (source) {
38
+ source = this.boxArrays(source);
39
+ this.cleanupFlags(source);
40
+ this.cleanupUnderscore('visualkeyboard', source.visualkeyboard);
41
+ }
42
+ return source;
43
+ }
44
+ cleanupFlags(source) {
45
+ if (source.visualkeyboard?.header?.flags === '') {
46
+ source.visualkeyboard.header.flags = {};
47
+ }
48
+ }
49
+ /**
50
+ * The only element that allows spaces is <key>. Remove
51
+ * all other empty whitespace-only values.
52
+ * @param root
53
+ * @param source
54
+ */
55
+ cleanupUnderscore(root, source) {
56
+ if (root != 'key') {
57
+ if (source?.['_']?.trim() === '') {
58
+ delete source['_'];
59
+ }
60
+ }
61
+ else {
62
+ // If key text is pure whitespace, replace with empty string,
63
+ // which matches kmcomp reader
64
+ if (source?.['_']?.match(/^( +)$/)) {
65
+ source['_'] = '';
66
+ }
67
+ }
68
+ for (let key of Object.keys(source)) {
69
+ if (Array.isArray(source[key])) {
70
+ for (let item of source[key]) {
71
+ if (typeof (item) === 'object') {
72
+ this.cleanupUnderscore(key, item);
73
+ }
74
+ }
75
+ }
76
+ else if (typeof source[key] === 'object') {
77
+ this.cleanupUnderscore(key, source[key]);
78
+ }
79
+ }
80
+ }
81
+ validate(source) {
82
+ if (!SchemaValidators.kvks(source)) {
83
+ throw new Error(JSON.stringify(SchemaValidators.kvks.errors));
84
+ }
85
+ }
86
+ transform(source, invalidVkeys) {
87
+ // NOTE: at this point, the xml should have been validated
88
+ // and matched the schema result so we can assume properties exist
89
+ let result = {
90
+ header: {
91
+ version: BUILDER_KVK_HEADER_VERSION,
92
+ flags: 0,
93
+ ansiFont: { ...DEFAULT_KVK_FONT },
94
+ unicodeFont: { ...DEFAULT_KVK_FONT },
95
+ associatedKeyboard: source.visualkeyboard?.header?.kbdname,
96
+ underlyingLayout: source.visualkeyboard?.header?.layout,
97
+ },
98
+ keys: []
99
+ };
100
+ if (source.visualkeyboard?.header?.flags?.displayunderlying !== undefined) {
101
+ result.header.flags |= 2 /* VisualKeyboardHeaderFlags.kvkhDisplayUnderlying */;
102
+ }
103
+ if (source.visualkeyboard?.header?.flags?.key102 !== undefined) {
104
+ result.header.flags |= 1 /* VisualKeyboardHeaderFlags.kvkh102 */;
105
+ }
106
+ if (source.visualkeyboard?.header?.flags?.usealtgr !== undefined) {
107
+ result.header.flags |= 8 /* VisualKeyboardHeaderFlags.kvkhAltGr */;
108
+ }
109
+ if (source.visualkeyboard?.header?.flags?.useunderlying !== undefined) {
110
+ result.header.flags |= 4 /* VisualKeyboardHeaderFlags.kvkhUseUnderlying */;
111
+ }
112
+ for (let encoding of source.visualkeyboard.encoding) {
113
+ let isUnicode = (encoding.$?.name == 'unicode'), font = isUnicode ? result.header.unicodeFont : result.header.ansiFont;
114
+ font.name = encoding.$?.fontname ?? DEFAULT_KVK_FONT.name;
115
+ font.size = parseInt(encoding.$?.fontsize ?? DEFAULT_KVK_FONT.size.toString(), 10);
116
+ for (let layer of encoding.layer) {
117
+ let shift = this.kvksShiftToKvkShift(layer.$?.shift);
118
+ for (let sourceKey of layer.key) {
119
+ let vkey = USVirtualKeyCodes[sourceKey.$?.vkey];
120
+ if (!vkey) {
121
+ if (typeof invalidVkeys !== 'undefined') {
122
+ invalidVkeys.push(sourceKey.$?.vkey);
123
+ }
124
+ continue;
125
+ }
126
+ let key = {
127
+ flags: (isUnicode ? 2 /* VisualKeyboardKeyFlags.kvkkUnicode */ : 0) |
128
+ (sourceKey.bitmap ? 1 /* VisualKeyboardKeyFlags.kvkkBitmap */ : 0),
129
+ shift: shift,
130
+ text: sourceKey.bitmap ? '' : (sourceKey._ ?? ''),
131
+ vkey: vkey
132
+ };
133
+ if (sourceKey.bitmap) {
134
+ key.bitmap = this.base64ToArray(sourceKey.bitmap);
135
+ }
136
+ result.keys.push(key);
137
+ }
138
+ }
139
+ }
140
+ return result;
141
+ }
142
+ base64ToArray(source) {
143
+ const binary = atob(source);
144
+ const bytes = new Uint8Array(binary.length);
145
+ for (let i = 0; i < binary.length; i++) {
146
+ bytes[i] = binary.charCodeAt(i);
147
+ }
148
+ return bytes;
149
+ }
150
+ /**
151
+ * xml2js will not place single-entry objects into arrays.
152
+ * Easiest way to fix this is to box them ourselves as needed
153
+ * @param source KVKSourceFile
154
+ */
155
+ boxArrays(source) {
156
+ boxXmlArray(source.visualkeyboard, 'encoding');
157
+ for (let encoding of source.visualkeyboard.encoding) {
158
+ boxXmlArray(encoding, 'layer');
159
+ for (let layer of encoding.layer) {
160
+ boxXmlArray(layer, 'key');
161
+ }
162
+ }
163
+ return source;
164
+ }
165
+ kvksShiftToKvkShift(shift) {
166
+ shift = shift.toUpperCase();
167
+ // TODO-LDML(lowpri): make a map of this?
168
+ for (let state of VisualKeyboardLegalShiftStates) {
169
+ if (state.name == shift) {
170
+ return state.shift;
171
+ }
172
+ }
173
+ return 0;
174
+ }
175
+ }
176
176
  //# sourceMappingURL=kvks-file-reader.js.map
177
- //# debugId=664396d1-231b-5c77-b177-a5d94976b113
177
+ //# debugId=8e79a163-6f4f-539c-8647-d2b3203e3b53
@@ -1 +1 @@
1
- {"version":3,"file":"kvks-file-reader.js","sources":["../../../src/kvk/kvks-file-reader.ts"],"sourceRoot":"","names":[],"mappings":"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","debug_id":"664396d1-231b-5c77-b177-a5d94976b113"}
1
+ {"version":3,"file":"kvks-file-reader.js","sources":["../../../src/kvk/kvks-file-reader.ts"],"sourceRoot":"","names":[],"mappings":"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","debug_id":"8e79a163-6f4f-539c-8647-d2b3203e3b53"}
@@ -1,7 +1,7 @@
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
- }
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
7
  //# sourceMappingURL=kvks-file-writer.d.ts.map
@@ -1,108 +1,108 @@
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]="407345fb-7f23-54f9-a12c-c4e2f694e042")}catch(e){}}();
3
- import * as xml2js from 'xml2js';
4
- import { VisualKeyboardLegalShiftStates } from './visual-keyboard.js';
5
- import { USVirtualKeyCodes } from '../consts/virtual-key-constants.js';
6
- export default class KVKSFileWriter {
7
- write(vk) {
8
- const builder = new xml2js.Builder({
9
- allowSurrogateChars: true,
10
- attrkey: '$',
11
- charkey: '_',
12
- xmldec: {
13
- version: '1.0',
14
- encoding: 'UTF-8',
15
- standalone: true
16
- }
17
- });
18
- let flags = {};
19
- if (vk.header.flags & 2 /* VisualKeyboardHeaderFlags.kvkhDisplayUnderlying */) {
20
- flags.displayunderlying = '';
21
- }
22
- if (vk.header.flags & 1 /* VisualKeyboardHeaderFlags.kvkh102 */) {
23
- flags.key102 = '';
24
- }
25
- if (vk.header.flags & 8 /* VisualKeyboardHeaderFlags.kvkhAltGr */) {
26
- flags.usealtgr = '';
27
- }
28
- if (vk.header.flags & 4 /* VisualKeyboardHeaderFlags.kvkhUseUnderlying */) {
29
- flags.useunderlying = '';
30
- }
31
- let kvks = {
32
- visualkeyboard: {
33
- header: {
34
- version: '10.0',
35
- kbdname: vk.header.associatedKeyboard,
36
- flags: flags,
37
- },
38
- encoding: []
39
- }
40
- };
41
- if (vk.header.underlyingLayout)
42
- kvks.visualkeyboard.header.layout = vk.header.underlyingLayout;
43
- let encodings = { ansi: null, unicode: null };
44
- for (let key of vk.keys) {
45
- const encoding = key.flags & 2 /* VisualKeyboardKeyFlags.kvkkUnicode */ ? 'unicode' : 'ansi';
46
- const shift = this.kvkShiftToKvksShift(key.shift);
47
- if (!encodings[encoding]) {
48
- encodings[encoding] = {
49
- o: {
50
- layer: [],
51
- $: { name: encoding,
52
- fontname: encoding == 'ansi' ? vk.header.ansiFont.name : vk.header.unicodeFont.name,
53
- fontsize: (encoding == 'ansi' ? vk.header.ansiFont.size : vk.header.unicodeFont.size).toString(),
54
- },
55
- },
56
- l: {}
57
- };
58
- kvks.visualkeyboard.encoding.push(encodings[encoding].o);
59
- }
60
- let e = encodings[encoding];
61
- if (!e.l[shift]) {
62
- e.l[shift] = {
63
- key: [],
64
- $: { shift: shift },
65
- };
66
- e.o.layer.push(e.l[shift]);
67
- }
68
- let l = e.l[shift];
69
- // TODO-LDML: map
70
- let vkeyName = '';
71
- for (let vkey of Object.keys(USVirtualKeyCodes)) {
72
- if (USVirtualKeyCodes[vkey] == key.vkey) {
73
- vkeyName = vkey;
74
- break;
75
- }
76
- }
77
- if (vkeyName == '') {
78
- //TODO-LDML: warn
79
- continue;
80
- }
81
- let k = {
82
- $: { vkey: vkeyName },
83
- _: key.text,
84
- };
85
- if (key.bitmap) {
86
- k.bitmap = this.arrayToBase64(key.bitmap);
87
- }
88
- l.key.push(k);
89
- }
90
- let result = builder.buildObject(kvks);
91
- return result; //Uint8Array.from(result);
92
- }
93
- arrayToBase64(source) {
94
- const ascii = String.fromCharCode(...source);
95
- return btoa(ascii);
96
- }
97
- kvkShiftToKvksShift(shift) {
98
- // TODO-LDML(lowpri): make a map of this?
99
- for (let state of VisualKeyboardLegalShiftStates) {
100
- if (state.shift == shift) {
101
- return state.name;
102
- }
103
- }
104
- return '';
105
- }
106
- }
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]="76ec3fa3-c749-5c42-afcd-a16390bfc6b0")}catch(e){}}();
3
+ import * as xml2js from 'xml2js';
4
+ import { VisualKeyboardLegalShiftStates } from './visual-keyboard.js';
5
+ import { USVirtualKeyCodes } from '../consts/virtual-key-constants.js';
6
+ export default class KVKSFileWriter {
7
+ write(vk) {
8
+ const builder = new xml2js.Builder({
9
+ allowSurrogateChars: true,
10
+ attrkey: '$',
11
+ charkey: '_',
12
+ xmldec: {
13
+ version: '1.0',
14
+ encoding: 'UTF-8',
15
+ standalone: true
16
+ }
17
+ });
18
+ let flags = {};
19
+ if (vk.header.flags & 2 /* VisualKeyboardHeaderFlags.kvkhDisplayUnderlying */) {
20
+ flags.displayunderlying = '';
21
+ }
22
+ if (vk.header.flags & 1 /* VisualKeyboardHeaderFlags.kvkh102 */) {
23
+ flags.key102 = '';
24
+ }
25
+ if (vk.header.flags & 8 /* VisualKeyboardHeaderFlags.kvkhAltGr */) {
26
+ flags.usealtgr = '';
27
+ }
28
+ if (vk.header.flags & 4 /* VisualKeyboardHeaderFlags.kvkhUseUnderlying */) {
29
+ flags.useunderlying = '';
30
+ }
31
+ let kvks = {
32
+ visualkeyboard: {
33
+ header: {
34
+ version: '10.0',
35
+ kbdname: vk.header.associatedKeyboard,
36
+ flags: flags,
37
+ },
38
+ encoding: []
39
+ }
40
+ };
41
+ if (vk.header.underlyingLayout)
42
+ kvks.visualkeyboard.header.layout = vk.header.underlyingLayout;
43
+ let encodings = { ansi: null, unicode: null };
44
+ for (let key of vk.keys) {
45
+ const encoding = key.flags & 2 /* VisualKeyboardKeyFlags.kvkkUnicode */ ? 'unicode' : 'ansi';
46
+ const shift = this.kvkShiftToKvksShift(key.shift);
47
+ if (!encodings[encoding]) {
48
+ encodings[encoding] = {
49
+ o: {
50
+ layer: [],
51
+ $: { name: encoding,
52
+ fontname: encoding == 'ansi' ? vk.header.ansiFont.name : vk.header.unicodeFont.name,
53
+ fontsize: (encoding == 'ansi' ? vk.header.ansiFont.size : vk.header.unicodeFont.size).toString(),
54
+ },
55
+ },
56
+ l: {}
57
+ };
58
+ kvks.visualkeyboard.encoding.push(encodings[encoding].o);
59
+ }
60
+ let e = encodings[encoding];
61
+ if (!e.l[shift]) {
62
+ e.l[shift] = {
63
+ key: [],
64
+ $: { shift: shift },
65
+ };
66
+ e.o.layer.push(e.l[shift]);
67
+ }
68
+ let l = e.l[shift];
69
+ // TODO-LDML: map
70
+ let vkeyName = '';
71
+ for (let vkey of Object.keys(USVirtualKeyCodes)) {
72
+ if (USVirtualKeyCodes[vkey] == key.vkey) {
73
+ vkeyName = vkey;
74
+ break;
75
+ }
76
+ }
77
+ if (vkeyName == '') {
78
+ //TODO-LDML: warn
79
+ continue;
80
+ }
81
+ let k = {
82
+ $: { vkey: vkeyName },
83
+ _: key.text,
84
+ };
85
+ if (key.bitmap) {
86
+ k.bitmap = this.arrayToBase64(key.bitmap);
87
+ }
88
+ l.key.push(k);
89
+ }
90
+ let result = builder.buildObject(kvks);
91
+ return result; //Uint8Array.from(result);
92
+ }
93
+ arrayToBase64(source) {
94
+ const ascii = String.fromCharCode(...source);
95
+ return btoa(ascii);
96
+ }
97
+ kvkShiftToKvksShift(shift) {
98
+ // TODO-LDML(lowpri): make a map of this?
99
+ for (let state of VisualKeyboardLegalShiftStates) {
100
+ if (state.shift == shift) {
101
+ return state.name;
102
+ }
103
+ }
104
+ return '';
105
+ }
106
+ }
107
107
  //# sourceMappingURL=kvks-file-writer.js.map
108
- //# debugId=407345fb-7f23-54f9-a12c-c4e2f694e042
108
+ //# debugId=76ec3fa3-c749-5c42-afcd-a16390bfc6b0
@@ -1 +1 @@
1
- {"version":3,"file":"kvks-file-writer.js","sources":["../../../src/kvk/kvks-file-writer.ts"],"sourceRoot":"","names":[],"mappings":";;AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,OAAO,EAAqE,8BAA8B,EAA4B,MAAM,sBAAsB,CAAC;AACnK,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE,MAAM,CAAC,OAAO,OAAO,cAAc;IAC1B,KAAK,CAAC,EAAkB;QAE7B,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC;YACjC,mBAAmB,EAAE,IAAI;YACzB,OAAO,EAAE,GAAG;YACZ,OAAO,EAAE,GAAG;YACZ,MAAM,EAAE;gBACN,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,OAAO;gBACjB,UAAU,EAAE,IAAI;aACjB;SACF,CAAC,CAAA;QAEF,IAAI,KAAK,GAAc,EAAE,CAAC;QAC1B,IAAG,EAAE,CAAC,MAAM,CAAC,KAAK,0DAAkD,EAAE;YACpE,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC;SAC9B;QACD,IAAG,EAAE,CAAC,MAAM,CAAC,KAAK,4CAAoC,EAAE;YACtD,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;SACnB;QACD,IAAG,EAAE,CAAC,MAAM,CAAC,KAAK,8CAAsC,EAAE;YACxD,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;SACrB;QACD,IAAG,EAAE,CAAC,MAAM,CAAC,KAAK,sDAA8C,EAAE;YAChE,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC;SAC1B;QAID,IAAI,IAAI,GAAkB;YACxB,cAAc,EAAE;gBACd,MAAM,EAAE;oBACN,OAAO,EAAE,MAAM;oBACf,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,kBAAkB;oBACrC,KAAK,EAAE,KAAK;iBACb;gBACD,QAAQ,EAAE,EAAE;aACb;SACF,CAAC;QAEF,IAAG,EAAE,CAAC,MAAM,CAAC,gBAAgB;YAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAE9F,IAAI,SAAS,GAAsH,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAC,CAAC;QAE5J,KAAI,IAAI,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE;YACtB,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,6CAAqC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;YACrF,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAElD,IAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;gBACvB,SAAS,CAAC,QAAQ,CAAC,GAAG;oBACpB,CAAC,EAAE;wBACD,KAAK,EAAE,EAAE;wBACT,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ;4BAClB,QAAQ,EAAE,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI;4BACnF,QAAQ,EAAE,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;yBAC/F;qBACF;oBACD,CAAC,EAAE,EAAE;iBACN,CAAC;gBACF,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aAC1D;YACD,IAAI,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC5B,IAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;gBACd,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG;oBACX,GAAG,EAAE,EAAE;oBACP,CAAC,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC;iBAClB,CAAC;gBACF,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAC5B;YACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAEnB,iBAAiB;YACjB,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,KAAI,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;gBAC9C,IAAI,iBAAyB,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE;oBAC/C,QAAQ,GAAG,IAAI,CAAC;oBAChB,MAAM;iBACP;aACF;YAED,IAAG,QAAQ,IAAI,EAAE,EAAE;gBACjB,iBAAiB;gBACjB,SAAS;aACV;YACD,IAAI,CAAC,GAAY;gBACf,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC;gBACnB,CAAC,EAAE,GAAG,CAAC,IAAI;aACZ,CAAA;YACD,IAAG,GAAG,CAAC,MAAM,EAAE;gBACb,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;aAC3C;YAED,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACf;QAED,IAAI,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC,CAAC,0BAA0B;IAC3C,CAAC;IAEO,aAAa,CAAC,MAAkB;QACtC,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAGM,mBAAmB,CAAC,KAA+B;QACxD,yCAAyC;QACzC,KAAI,IAAI,KAAK,IAAI,8BAA8B,EAAE;YAC/C,IAAG,KAAK,CAAC,KAAK,IAAI,KAAK,EAAE;gBACvB,OAAO,KAAK,CAAC,IAAI,CAAC;aACnB;SACF;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;CACF","debug_id":"407345fb-7f23-54f9-a12c-c4e2f694e042"}
1
+ {"version":3,"file":"kvks-file-writer.js","sources":["../../../src/kvk/kvks-file-writer.ts"],"sourceRoot":"","names":[],"mappings":"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","debug_id":"76ec3fa3-c749-5c42-afcd-a16390bfc6b0"}