@keymanapp/developer-utils 18.0.41-alpha → 18.0.118-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 (238) hide show
  1. package/build/src/common-messages.d.ts +49 -0
  2. package/build/src/common-messages.d.ts.map +1 -0
  3. package/build/src/common-messages.js +35 -0
  4. package/build/src/common-messages.js.map +1 -0
  5. package/build/src/compiler-interfaces.d.ts +372 -0
  6. package/build/src/compiler-interfaces.d.ts.map +1 -0
  7. package/build/src/compiler-interfaces.js +382 -0
  8. package/build/src/compiler-interfaces.js.map +1 -0
  9. package/build/src/deps/xml2js/bom.d.ts +2 -0
  10. package/build/src/deps/xml2js/bom.d.ts.map +1 -0
  11. package/build/src/deps/xml2js/bom.js +14 -0
  12. package/build/src/deps/xml2js/bom.js.map +1 -0
  13. package/build/src/deps/xml2js/builder.d.ts +6 -0
  14. package/build/src/deps/xml2js/builder.d.ts.map +1 -0
  15. package/build/src/deps/xml2js/builder.js +133 -0
  16. package/build/src/deps/xml2js/builder.js.map +1 -0
  17. package/build/src/deps/xml2js/defaults.d.ts +69 -0
  18. package/build/src/deps/xml2js/defaults.d.ts.map +1 -0
  19. package/build/src/deps/xml2js/defaults.js +73 -0
  20. package/build/src/deps/xml2js/defaults.js.map +1 -0
  21. package/build/src/deps/xml2js/parser.d.ts +18 -0
  22. package/build/src/deps/xml2js/parser.d.ts.map +1 -0
  23. package/build/src/deps/xml2js/parser.js +395 -0
  24. package/build/src/deps/xml2js/parser.js.map +1 -0
  25. package/build/src/deps/xml2js/processors.d.ts +6 -0
  26. package/build/src/deps/xml2js/processors.d.ts.map +1 -0
  27. package/build/src/deps/xml2js/processors.js +28 -0
  28. package/build/src/deps/xml2js/processors.js.map +1 -0
  29. package/build/src/deps/xml2js/xml2js.d.ts +12 -0
  30. package/build/src/deps/xml2js/xml2js.d.ts.map +1 -0
  31. package/build/src/deps/xml2js/xml2js.js +26 -0
  32. package/build/src/deps/xml2js/xml2js.js.map +1 -0
  33. package/build/src/index.d.ts +24 -0
  34. package/build/src/index.d.ts.map +1 -0
  35. package/build/src/index.js +26 -0
  36. package/build/src/index.js.map +1 -0
  37. package/build/src/is-valid-email.d.ts +2 -0
  38. package/build/src/is-valid-email.d.ts.map +1 -0
  39. package/build/src/is-valid-email.js +20 -0
  40. package/build/src/is-valid-email.js.map +1 -0
  41. package/build/src/types/import/45/cldr_info.json +5 -0
  42. package/build/src/types/import/45/keys-Latn-implied.xml +80 -0
  43. package/build/src/types/import/45/keys-Zyyy-currency.xml +15 -0
  44. package/build/src/types/import/45/keys-Zyyy-punctuation.xml +45 -0
  45. package/build/src/types/import/45/scanCodes-implied.xml +53 -0
  46. package/build/src/types/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts +7 -0
  47. package/build/src/types/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts.map +1 -0
  48. package/build/src/types/keyman-touch-layout/keyman-touch-layout-file-reader.js +74 -0
  49. package/build/src/types/keyman-touch-layout/keyman-touch-layout-file-reader.js.map +1 -0
  50. package/build/src/types/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts +30 -0
  51. package/build/src/types/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts.map +1 -0
  52. package/build/src/types/keyman-touch-layout/keyman-touch-layout-file-writer.js +123 -0
  53. package/build/src/types/keyman-touch-layout/keyman-touch-layout-file-writer.js.map +1 -0
  54. package/build/src/types/kmx/kmx-builder.d.ts +42 -0
  55. package/build/src/types/kmx/kmx-builder.d.ts.map +1 -0
  56. package/build/src/types/kmx/kmx-builder.js +192 -0
  57. package/build/src/types/kmx/kmx-builder.js.map +1 -0
  58. package/build/src/types/kmx/kmx-plus-builder/build-disp.d.ts +20 -0
  59. package/build/src/types/kmx/kmx-plus-builder/build-disp.d.ts.map +1 -0
  60. package/build/src/types/kmx/kmx-plus-builder/build-disp.js +29 -0
  61. package/build/src/types/kmx/kmx-plus-builder/build-disp.js.map +1 -0
  62. package/build/src/types/kmx/kmx-plus-builder/build-elem.d.ts +29 -0
  63. package/build/src/types/kmx/kmx-plus-builder/build-elem.d.ts.map +1 -0
  64. package/build/src/types/kmx/kmx-plus-builder/build-elem.js +91 -0
  65. package/build/src/types/kmx/kmx-plus-builder/build-elem.js.map +1 -0
  66. package/build/src/types/kmx/kmx-plus-builder/build-keys.d.ts +59 -0
  67. package/build/src/types/kmx/kmx-plus-builder/build-keys.d.ts.map +1 -0
  68. package/build/src/types/kmx/kmx-plus-builder/build-keys.js +110 -0
  69. package/build/src/types/kmx/kmx-plus-builder/build-keys.js.map +1 -0
  70. package/build/src/types/kmx/kmx-plus-builder/build-layr.d.ts +57 -0
  71. package/build/src/types/kmx/kmx-plus-builder/build-layr.d.ts.map +1 -0
  72. package/build/src/types/kmx/kmx-plus-builder/build-layr.js +104 -0
  73. package/build/src/types/kmx/kmx-plus-builder/build-layr.js.map +1 -0
  74. package/build/src/types/kmx/kmx-plus-builder/build-list.d.ts +38 -0
  75. package/build/src/types/kmx/kmx-plus-builder/build-list.d.ts.map +1 -0
  76. package/build/src/types/kmx/kmx-plus-builder/build-list.js +69 -0
  77. package/build/src/types/kmx/kmx-plus-builder/build-list.js.map +1 -0
  78. package/build/src/types/kmx/kmx-plus-builder/build-loca.d.ts +13 -0
  79. package/build/src/types/kmx/kmx-plus-builder/build-loca.d.ts.map +1 -0
  80. package/build/src/types/kmx/kmx-plus-builder/build-loca.js +23 -0
  81. package/build/src/types/kmx/kmx-plus-builder/build-loca.js.map +1 -0
  82. package/build/src/types/kmx/kmx-plus-builder/build-meta.d.ts +18 -0
  83. package/build/src/types/kmx/kmx-plus-builder/build-meta.d.ts.map +1 -0
  84. package/build/src/types/kmx/kmx-plus-builder/build-meta.js +24 -0
  85. package/build/src/types/kmx/kmx-plus-builder/build-meta.js.map +1 -0
  86. package/build/src/types/kmx/kmx-plus-builder/build-sect.d.ts +16 -0
  87. package/build/src/types/kmx/kmx-plus-builder/build-sect.d.ts.map +1 -0
  88. package/build/src/types/kmx/kmx-plus-builder/build-sect.js +17 -0
  89. package/build/src/types/kmx/kmx-plus-builder/build-sect.js.map +1 -0
  90. package/build/src/types/kmx/kmx-plus-builder/build-strs.d.ts +25 -0
  91. package/build/src/types/kmx/kmx-plus-builder/build-strs.d.ts.map +1 -0
  92. package/build/src/types/kmx/kmx-plus-builder/build-strs.js +49 -0
  93. package/build/src/types/kmx/kmx-plus-builder/build-strs.js.map +1 -0
  94. package/build/src/types/kmx/kmx-plus-builder/build-tran.d.ts +35 -0
  95. package/build/src/types/kmx/kmx-plus-builder/build-tran.d.ts.map +1 -0
  96. package/build/src/types/kmx/kmx-plus-builder/build-tran.js +71 -0
  97. package/build/src/types/kmx/kmx-plus-builder/build-tran.js.map +1 -0
  98. package/build/src/types/kmx/kmx-plus-builder/build-uset.d.ts +34 -0
  99. package/build/src/types/kmx/kmx-plus-builder/build-uset.d.ts.map +1 -0
  100. package/build/src/types/kmx/kmx-plus-builder/build-uset.js +63 -0
  101. package/build/src/types/kmx/kmx-plus-builder/build-uset.js.map +1 -0
  102. package/build/src/types/kmx/kmx-plus-builder/build-vars.d.ts +23 -0
  103. package/build/src/types/kmx/kmx-plus-builder/build-vars.d.ts.map +1 -0
  104. package/build/src/types/kmx/kmx-plus-builder/build-vars.js +50 -0
  105. package/build/src/types/kmx/kmx-plus-builder/build-vars.js.map +1 -0
  106. package/build/src/types/kmx/kmx-plus-builder/builder-section.d.ts +10 -0
  107. package/build/src/types/kmx/kmx-plus-builder/builder-section.d.ts.map +1 -0
  108. package/build/src/types/kmx/kmx-plus-builder/builder-section.js +6 -0
  109. package/build/src/types/kmx/kmx-plus-builder/builder-section.js.map +1 -0
  110. package/build/src/types/kmx/kmx-plus-builder/kmx-plus-builder.d.ts +44 -0
  111. package/build/src/types/kmx/kmx-plus-builder/kmx-plus-builder.d.ts.map +1 -0
  112. package/build/src/types/kmx/kmx-plus-builder/kmx-plus-builder.js +139 -0
  113. package/build/src/types/kmx/kmx-plus-builder/kmx-plus-builder.js.map +1 -0
  114. package/build/src/types/kpj/keyman-developer-project.d.ts +79 -0
  115. package/build/src/types/kpj/keyman-developer-project.d.ts.map +1 -0
  116. package/build/src/types/kpj/keyman-developer-project.js +197 -0
  117. package/build/src/types/kpj/keyman-developer-project.js.map +1 -0
  118. package/build/src/types/kpj/kpj-file-reader.d.ts +19 -0
  119. package/build/src/types/kpj/kpj-file-reader.d.ts.map +1 -0
  120. package/build/src/types/kpj/kpj-file-reader.js +121 -0
  121. package/build/src/types/kpj/kpj-file-reader.js.map +1 -0
  122. package/build/src/types/kpj/kpj-file.d.ts +40 -0
  123. package/build/src/types/kpj/kpj-file.d.ts.map +1 -0
  124. package/build/src/types/kpj/kpj-file.js +14 -0
  125. package/build/src/types/kpj/kpj-file.js.map +1 -0
  126. package/build/src/types/kps/kps-file.d.ts +176 -0
  127. package/build/src/types/kps/kps-file.d.ts.map +1 -0
  128. package/build/src/types/kps/kps-file.js +19 -0
  129. package/build/src/types/kps/kps-file.js.map +1 -0
  130. package/build/src/types/kvks/kvks-file-reader.d.ts +26 -0
  131. package/build/src/types/kvks/kvks-file-reader.d.ts.map +1 -0
  132. package/build/src/types/kvks/kvks-file-reader.js +181 -0
  133. package/build/src/types/kvks/kvks-file-reader.js.map +1 -0
  134. package/build/src/types/kvks/kvks-file-writer.d.ts +9 -0
  135. package/build/src/types/kvks/kvks-file-writer.d.ts.map +1 -0
  136. package/build/src/types/kvks/kvks-file-writer.js +109 -0
  137. package/build/src/types/kvks/kvks-file-writer.js.map +1 -0
  138. package/build/src/types/kvks/kvks-file.d.ts +44 -0
  139. package/build/src/types/kvks/kvks-file.d.ts.map +1 -0
  140. package/build/src/types/kvks/kvks-file.js +13 -0
  141. package/build/src/types/kvks/kvks-file.js.map +1 -0
  142. package/build/src/types/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts +61 -0
  143. package/build/src/types/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts.map +1 -0
  144. package/build/src/types/ldml-keyboard/ldml-keyboard-testdata-xml.js +23 -0
  145. package/build/src/types/ldml-keyboard/ldml-keyboard-testdata-xml.js.map +1 -0
  146. package/build/src/types/ldml-keyboard/ldml-keyboard-xml-reader.d.ts +96 -0
  147. package/build/src/types/ldml-keyboard/ldml-keyboard-xml-reader.d.ts.map +1 -0
  148. package/build/src/types/ldml-keyboard/ldml-keyboard-xml-reader.js +430 -0
  149. package/build/src/types/ldml-keyboard/ldml-keyboard-xml-reader.js.map +1 -0
  150. package/build/src/types/ldml-keyboard/ldml-keyboard-xml.d.ts +171 -0
  151. package/build/src/types/ldml-keyboard/ldml-keyboard-xml.d.ts.map +1 -0
  152. package/build/src/types/ldml-keyboard/ldml-keyboard-xml.js +59 -0
  153. package/build/src/types/ldml-keyboard/ldml-keyboard-xml.js.map +1 -0
  154. package/build/src/{KeymanSentry.d.ts → utils/KeymanSentry.d.ts} +11 -11
  155. package/build/src/utils/KeymanSentry.d.ts.map +1 -0
  156. package/build/src/{KeymanSentry.js → utils/KeymanSentry.js} +75 -75
  157. package/build/src/utils/KeymanSentry.js.map +1 -0
  158. package/build/src/{keyman-urls.d.ts → utils/keyman-urls.d.ts} +14 -14
  159. package/build/src/utils/keyman-urls.d.ts.map +1 -0
  160. package/build/src/{keyman-urls.js → utils/keyman-urls.js} +20 -20
  161. package/build/src/utils/keyman-urls.js.map +1 -0
  162. package/build/src/{markdown.d.ts → utils/markdown.d.ts} +1 -1
  163. package/build/src/utils/markdown.d.ts.map +1 -0
  164. package/build/src/{markdown.js → utils/markdown.js} +22 -22
  165. package/build/src/utils/markdown.js.map +1 -0
  166. package/build/src/{options.d.ts → utils/options.d.ts} +43 -43
  167. package/build/src/utils/options.d.ts.map +1 -0
  168. package/build/src/{options.js → utils/options.js} +57 -57
  169. package/build/src/utils/options.js.map +1 -0
  170. package/build/src/{validate-mit-license.d.ts → utils/validate-mit-license.d.ts} +6 -6
  171. package/build/src/utils/validate-mit-license.d.ts.map +1 -0
  172. package/build/src/{validate-mit-license.js → utils/validate-mit-license.js} +50 -50
  173. package/build/src/utils/validate-mit-license.js.map +1 -0
  174. package/build/test/helpers/index.d.ts +13 -0
  175. package/build/test/helpers/index.d.ts.map +1 -0
  176. package/build/test/helpers/index.js +42 -0
  177. package/build/test/helpers/index.js.map +1 -0
  178. package/build/test/helpers/reader-callback-test.d.ts +73 -0
  179. package/build/test/helpers/reader-callback-test.d.ts.map +1 -0
  180. package/build/test/helpers/reader-callback-test.js +108 -0
  181. package/build/test/helpers/reader-callback-test.js.map +1 -0
  182. package/build/test/keyman-touch-layout/test-keyman-touch-layout-file-reader.d.ts +2 -0
  183. package/build/test/keyman-touch-layout/test-keyman-touch-layout-file-reader.d.ts.map +1 -0
  184. package/build/test/keyman-touch-layout/test-keyman-touch-layout-file-reader.js +64 -0
  185. package/build/test/keyman-touch-layout/test-keyman-touch-layout-file-reader.js.map +1 -0
  186. package/build/test/keyman-touch-layout/test-keyman-touch-layout-round-trip.d.ts +2 -0
  187. package/build/test/keyman-touch-layout/test-keyman-touch-layout-round-trip.d.ts.map +1 -0
  188. package/build/test/keyman-touch-layout/test-keyman-touch-layout-round-trip.js +34 -0
  189. package/build/test/keyman-touch-layout/test-keyman-touch-layout-round-trip.js.map +1 -0
  190. package/build/test/kmx/test-ldml-keyboard-testdata-reader.d.ts +2 -0
  191. package/build/test/kmx/test-ldml-keyboard-testdata-reader.d.ts.map +1 -0
  192. package/build/test/kmx/test-ldml-keyboard-testdata-reader.js +54 -0
  193. package/build/test/kmx/test-ldml-keyboard-testdata-reader.js.map +1 -0
  194. package/build/test/kmx/test-ldml-keyboard-xml-reader.d.ts +2 -0
  195. package/build/test/kmx/test-ldml-keyboard-xml-reader.d.ts.map +1 -0
  196. package/build/test/kmx/test-ldml-keyboard-xml-reader.js +209 -0
  197. package/build/test/kmx/test-ldml-keyboard-xml-reader.js.map +1 -0
  198. package/build/test/kpj/test-kpj-file-reader.d.ts +2 -0
  199. package/build/test/kpj/test-kpj-file-reader.d.ts.map +1 -0
  200. package/build/test/kpj/test-kpj-file-reader.js +141 -0
  201. package/build/test/kpj/test-kpj-file-reader.js.map +1 -0
  202. package/build/test/kvks/test-kvk-round-trip.d.ts +2 -0
  203. package/build/test/kvks/test-kvk-round-trip.d.ts.map +1 -0
  204. package/build/test/kvks/test-kvk-round-trip.js +108 -0
  205. package/build/test/kvks/test-kvk-round-trip.js.map +1 -0
  206. package/build/test/kvks/test-kvk-utils.d.ts +6 -0
  207. package/build/test/kvks/test-kvk-utils.d.ts.map +1 -0
  208. package/build/test/kvks/test-kvk-utils.js +42 -0
  209. package/build/test/kvks/test-kvk-utils.js.map +1 -0
  210. package/build/test/kvks/test-kvks-file.d.ts +2 -0
  211. package/build/test/kvks/test-kvks-file.d.ts.map +1 -0
  212. package/build/test/kvks/test-kvks-file.js +59 -0
  213. package/build/test/kvks/test-kvks-file.js.map +1 -0
  214. package/build/test/test-is-valid-email.d.ts +2 -0
  215. package/build/test/test-is-valid-email.d.ts.map +1 -0
  216. package/build/test/test-is-valid-email.js +36 -0
  217. package/build/test/test-is-valid-email.js.map +1 -0
  218. package/build/test/test-license.d.ts +2 -0
  219. package/build/test/test-license.d.ts.map +1 -0
  220. package/build/test/test-license.js +24 -0
  221. package/build/test/test-license.js.map +1 -0
  222. package/build/test/tsconfig.tsbuildinfo +1 -0
  223. package/build/tsconfig.tsbuildinfo +1 -1
  224. package/package.json +15 -6
  225. package/build/index.d.ts +0 -6
  226. package/build/index.d.ts.map +0 -1
  227. package/build/index.js +0 -9
  228. package/build/index.js.map +0 -1
  229. package/build/src/KeymanSentry.d.ts.map +0 -1
  230. package/build/src/KeymanSentry.js.map +0 -1
  231. package/build/src/keyman-urls.d.ts.map +0 -1
  232. package/build/src/keyman-urls.js.map +0 -1
  233. package/build/src/markdown.d.ts.map +0 -1
  234. package/build/src/markdown.js.map +0 -1
  235. package/build/src/options.d.ts.map +0 -1
  236. package/build/src/options.js.map +0 -1
  237. package/build/src/validate-mit-license.d.ts.map +0 -1
  238. package/build/src/validate-mit-license.js.map +0 -1
@@ -0,0 +1,63 @@
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]="861a4757-90b3-5ae2-a449-7a22f446757a")}catch(e){}}();
3
+ import { constants } from "@keymanapp/ldml-keyboard-constants";
4
+ import { KMXPlus } from "@keymanapp/common-types";
5
+ import { build_strs_index } from "./build-strs.js";
6
+ var UsetItem = KMXPlus.UsetItem;
7
+ ;
8
+ ;
9
+ /**
10
+ * Builder for the 'uset' section
11
+ */
12
+ export function build_uset(kmxplus, sect_strs) {
13
+ if (!kmxplus?.uset?.usets) {
14
+ return null;
15
+ }
16
+ // uset items in pattern order
17
+ const items = [...kmxplus.uset.usets]
18
+ .sort((a, b) => a.compareTo(b));
19
+ const ranges = [];
20
+ const usets = [];
21
+ items.forEach(set => {
22
+ usets.push({
23
+ range: ranges.length, // index
24
+ count: set.uset.length,
25
+ pattern: build_strs_index(sect_strs, set.str),
26
+ _pattern: set.str,
27
+ });
28
+ // append the ranges
29
+ set.uset.ranges.forEach(([start, end]) => ranges.push({ start, end }));
30
+ });
31
+ const uset = {
32
+ ident: constants.hex_section_id(constants.section.uset),
33
+ size: constants.length_uset +
34
+ (constants.length_uset_uset * usets.length) +
35
+ (constants.length_uset_range * ranges.length),
36
+ usetCount: usets.length,
37
+ rangeCount: ranges.length,
38
+ usets,
39
+ ranges,
40
+ _offset: 0,
41
+ };
42
+ return uset;
43
+ }
44
+ /**
45
+ * @returns uset index
46
+ */
47
+ export function build_uset_index(sect_uset, value) {
48
+ if (!(value instanceof UsetItem)) {
49
+ if (value === null) {
50
+ throw new Error('unexpected null UsetItem');
51
+ }
52
+ else {
53
+ throw new Error('Expected UsetItem but got ' + value);
54
+ }
55
+ }
56
+ const result = sect_uset.usets.findIndex(v => v._pattern.value === value.str.value);
57
+ if (result < 0) {
58
+ throw new Error('unexpectedly missing UsetItem ' + value.uset.toString());
59
+ }
60
+ return result;
61
+ }
62
+ //# sourceMappingURL=build-uset.js.map
63
+ //# debugId=861a4757-90b3-5ae2-a449-7a22f446757a
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-uset.js","sources":["../../../../../src/types/kmx/kmx-plus-builder/build-uset.ts"],"sourceRoot":"","names":[],"mappings":";;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAiC,MAAM,iBAAiB,CAAC;AAKlF,IAAO,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;AAUlC,CAAC;AAYD,CAAC;AAEF;;EAEE;AACF,MAAM,UAAU,UAAU,CAAC,OAAoB,EAAE,SAAuB;IACtE,IAAG,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8BAA8B;IAC9B,MAAM,KAAK,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;SAClC,IAAI,CAAC,CAAC,CAAC,EAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjC,MAAM,MAAM,GAA0B,EAAE,CAAC;IAEzC,MAAM,KAAK,GAAyB,EAAE,CAAC;IAEvC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAClB,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ;YAC9B,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM;YACtB,OAAO,EAAE,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC;YAC7C,QAAQ,EAAE,GAAG,CAAC,GAAG;SAClB,CAAC,CAAC;QACH,oBAAoB;QACpB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAiB;QACzB,KAAK,EAAE,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;QACvD,IAAI,EAAE,SAAS,CAAC,WAAW;YACzB,CAAC,SAAS,CAAC,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC;YAC3C,CAAC,SAAS,CAAC,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC;QAC/C,SAAS,EAAE,KAAK,CAAC,MAAM;QACvB,UAAU,EAAE,MAAM,CAAC,MAAM;QACzB,KAAK;QACL,MAAM;QACN,OAAO,EAAE,CAAC;KACX,CAAC;IAEF,OAAO,IAAI,CAAC;AACd,CAAC;AAGD;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAuB,EAAE,KAAe;IACvE,IAAG,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,EAAE,CAAC;QAChC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAE,KAAK,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpF,IAAG,MAAM,GAAG,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,gCAAgC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC","debug_id":"861a4757-90b3-5ae2-a449-7a22f446757a"}
@@ -0,0 +1,23 @@
1
+ import { KMXPlus } from "@keymanapp/common-types";
2
+ import { BUILDER_STR_REF, BUILDER_STRS } from "./build-strs.js";
3
+ import { BUILDER_SECTION } from "./builder-section.js";
4
+ import { BUILDER_LIST, BUILDER_LIST_REF } from "./build-list.js";
5
+ import { BUILDER_ELEM, BUILDER_ELEM_REF } from "./build-elem.js";
6
+ import KMXPlusData = KMXPlus.KMXPlusData;
7
+ interface BUILDER_VARS_ITEM {
8
+ type: number;
9
+ id: BUILDER_STR_REF;
10
+ value: BUILDER_STR_REF;
11
+ elem?: BUILDER_ELEM_REF;
12
+ }
13
+ export interface BUILDER_VARS extends BUILDER_SECTION {
14
+ markers: BUILDER_LIST_REF;
15
+ varCount: number;
16
+ varEntries: BUILDER_VARS_ITEM[];
17
+ }
18
+ /**
19
+ * Builder for the 'vars' section
20
+ */
21
+ export declare function build_vars(kmxplus: KMXPlusData, sect_strs: BUILDER_STRS, sect_elem: BUILDER_ELEM, sect_list: BUILDER_LIST): BUILDER_VARS;
22
+ export {};
23
+ //# sourceMappingURL=build-vars.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-vars.d.ts","sourceRoot":"","sources":["../../../../../src/types/kmx/kmx-plus-builder/build-vars.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAoB,eAAe,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAoB,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAoB,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnF,OAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;AAEzC,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,eAAe,CAAC;IACpB,KAAK,EAAE,eAAe,CAAC;IACvB,IAAI,CAAC,EAAE,gBAAgB,CAAC;CACzB;AAED,MAAM,WAAW,YAAa,SAAQ,eAAe;IACnD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,iBAAiB,EAAE,CAAC;CACjC;AAED;;EAEE;AACF,wBAAgB,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,GAAI,YAAY,CAuCzI"}
@@ -0,0 +1,50 @@
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]="bce9049d-0ab5-5422-a9b8-66e99df7d013")}catch(e){}}();
3
+ import { constants } from "@keymanapp/ldml-keyboard-constants";
4
+ import { build_strs_index } from "./build-strs.js";
5
+ import { build_list_index } from "./build-list.js";
6
+ import { build_elem_index } from "./build-elem.js";
7
+ ;
8
+ ;
9
+ /**
10
+ * Builder for the 'vars' section
11
+ */
12
+ export function build_vars(kmxplus, sect_strs, sect_elem, sect_list) {
13
+ if (!kmxplus.vars) {
14
+ return null;
15
+ }
16
+ const stringVars = kmxplus.vars.strings.map(v => ({
17
+ type: constants.vars_entry_type_string,
18
+ id: build_strs_index(sect_strs, v.id),
19
+ value: build_strs_index(sect_strs, v.value),
20
+ }));
21
+ const setVars = kmxplus.vars.sets.map(v => ({
22
+ type: constants.vars_entry_type_set,
23
+ id: build_strs_index(sect_strs, v.id),
24
+ value: build_strs_index(sect_strs, v.value),
25
+ elem: build_elem_index(sect_elem, v.items),
26
+ }));
27
+ const uniSetVars = kmxplus.vars.usets.map(v => ({
28
+ type: constants.vars_entry_type_unicodeSet,
29
+ id: build_strs_index(sect_strs, v.id),
30
+ value: build_strs_index(sect_strs, v.value),
31
+ }));
32
+ const vars = {
33
+ ident: constants.hex_section_id(constants.section.vars),
34
+ size: constants.length_vars +
35
+ (constants.length_vars_item * kmxplus.vars.totalCount()),
36
+ _offset: 0,
37
+ markers: build_list_index(sect_list, kmxplus.vars.markers),
38
+ varCount: kmxplus.vars.totalCount(),
39
+ varEntries: [
40
+ ...stringVars,
41
+ ...setVars,
42
+ ...uniSetVars,
43
+ ],
44
+ };
45
+ // sort IDs by binary order
46
+ vars.varEntries.sort((a, b) => a.id - b.id);
47
+ return vars;
48
+ }
49
+ //# sourceMappingURL=build-vars.js.map
50
+ //# debugId=bce9049d-0ab5-5422-a9b8-66e99df7d013
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-vars.js","sources":["../../../../../src/types/kmx/kmx-plus-builder/build-vars.ts"],"sourceRoot":"","names":[],"mappings":";;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAiC,MAAM,iBAAiB,CAAC;AAElF,OAAO,EAAE,gBAAgB,EAAkC,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAkC,MAAM,iBAAiB,CAAC;AASlF,CAAC;AAMD,CAAC;AAEF;;EAEE;AACF,MAAM,UAAU,UAAU,CAAC,OAAoB,EAAE,SAAuB,EAAE,SAAuB,EAAE,SAAuB;IACxH,IAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAmB;QAClE,IAAI,EAAE,SAAS,CAAC,sBAAsB;QACtC,EAAE,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC;QACrC,KAAK,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC;KAC5C,CAAA,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAmB;QAC5D,IAAI,EAAE,SAAS,CAAC,mBAAmB;QACnC,EAAE,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC;QACrC,KAAK,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC;QAC3C,IAAI,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC;KAC3C,CAAA,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAmB;QAChE,IAAI,EAAE,SAAS,CAAC,0BAA0B;QAC1C,EAAE,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC;QACrC,KAAK,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC;KAC5C,CAAA,CAAC,CAAC;IAEH,MAAM,IAAI,GAAiB;QACzB,KAAK,EAAE,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;QACvD,IAAI,EAAE,SAAS,CAAC,WAAW;YACzB,CAAC,SAAS,CAAC,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1D,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QAC1D,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE;QACnC,UAAU,EAAE;YACV,GAAG,UAAU;YACb,GAAG,OAAO;YACV,GAAG,UAAU;SACd;KACF,CAAC;IACF,2BAA2B;IAC3B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAE3C,OAAO,IAAI,CAAC;AACd,CAAC","debug_id":"bce9049d-0ab5-5422-a9b8-66e99df7d013"}
@@ -0,0 +1,10 @@
1
+ /** for a 4-byte section identity */
2
+ export type BUILDER_IDENT = number;
3
+ /** for a single UTF-32 character (Unicode codepoint) */
4
+ export type BUILDER_U32CHAR = number;
5
+ export interface BUILDER_SECTION {
6
+ ident: BUILDER_IDENT;
7
+ size: number;
8
+ _offset: number;
9
+ }
10
+ //# sourceMappingURL=builder-section.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder-section.d.ts","sourceRoot":"","sources":["../../../../../src/types/kmx/kmx-plus-builder/builder-section.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AACnC,wDAAwD;AACxD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC;AAErC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,aAAa,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,6 @@
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]="4edf3ad8-4dee-5722-8655-8c0d126fc533")}catch(e){}}();
3
+ ;
4
+ export {};
5
+ //# sourceMappingURL=builder-section.js.map
6
+ //# debugId=4edf3ad8-4dee-5722-8655-8c0d126fc533
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder-section.js","sources":["../../../../../src/types/kmx/kmx-plus-builder/builder-section.ts"],"sourceRoot":"","names":[],"mappings":";;AAUA,CAAC","debug_id":"4edf3ad8-4dee-5722-8655-8c0d126fc533"}
@@ -0,0 +1,44 @@
1
+ import { KMXPlus } from "@keymanapp/common-types";
2
+ import { BUILDER_SECT } from './build-sect.js';
3
+ import { BUILDER_DISP } from './build-disp.js';
4
+ import { BUILDER_ELEM } from './build-elem.js';
5
+ import { BUILDER_KEYS } from './build-keys.js';
6
+ import { BUILDER_LAYR } from './build-layr.js';
7
+ import { BUILDER_LIST } from './build-list.js';
8
+ import { BUILDER_LOCA } from './build-loca.js';
9
+ import { BUILDER_META } from './build-meta.js';
10
+ import { BUILDER_STRS } from './build-strs.js';
11
+ import { BUILDER_TRAN } from './build-tran.js';
12
+ import { BUILDER_USET } from './build-uset.js';
13
+ import { BUILDER_VARS } from './build-vars.js';
14
+ import KMXPlusFile = KMXPlus.KMXPlusFile;
15
+ type BUILDER_BKSP = BUILDER_TRAN;
16
+ type SectionBuilders = {
17
+ sect?: BUILDER_SECT;
18
+ bksp?: BUILDER_BKSP;
19
+ disp?: BUILDER_DISP;
20
+ elem?: BUILDER_ELEM;
21
+ keys?: BUILDER_KEYS;
22
+ layr?: BUILDER_LAYR;
23
+ list?: BUILDER_LIST;
24
+ loca?: BUILDER_LOCA;
25
+ meta?: BUILDER_META;
26
+ strs?: BUILDER_STRS;
27
+ tran?: BUILDER_TRAN;
28
+ uset?: BUILDER_USET;
29
+ vars?: BUILDER_VARS;
30
+ };
31
+ export default class KMXPlusBuilder {
32
+ private file;
33
+ sect: SectionBuilders;
34
+ constructor(file: KMXPlusFile, _writeDebug: boolean);
35
+ compile(): Uint8Array;
36
+ private build;
37
+ private finalize_sect;
38
+ private finalize_sect_item;
39
+ private emitSection;
40
+ private emitStrings;
41
+ private emitElements;
42
+ }
43
+ export {};
44
+ //# sourceMappingURL=kmx-plus-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kmx-plus-builder.d.ts","sourceRoot":"","sources":["../../../../../src/types/kmx/kmx-plus-builder/kmx-plus-builder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGlD,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAE3D,OAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;AAEzC,KAAK,YAAY,GAAG,YAAY,CAAC;AAGjC,KAAK,eAAe,GAAG;IAErB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC,OAAO,CAAC,IAAI,CAAc;IAG1B,IAAI,EAAG,eAAe,CAEpB;gBAEU,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO;IAK5C,OAAO,IAAI,UAAU;IAwB5B,OAAO,CAAC,KAAK;IA6Bb,OAAO,CAAC,aAAa;IAgCrB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,YAAY;CAUrB"}
@@ -0,0 +1,139 @@
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]="041ae138-507d-53e1-bab1-7acd7e5c8b9d")}catch(e){}}();
3
+ import * as r from 'restructure';
4
+ import { constants } from '@keymanapp/ldml-keyboard-constants';
5
+ import { build_sect } from './build-sect.js';
6
+ import { build_disp } from './build-disp.js';
7
+ import { build_elem } from './build-elem.js';
8
+ import { build_keys } from './build-keys.js';
9
+ import { build_layr } from './build-layr.js';
10
+ import { build_list } from './build-list.js';
11
+ import { build_loca } from './build-loca.js';
12
+ import { build_meta } from './build-meta.js';
13
+ import { build_strs } from './build-strs.js';
14
+ import { build_tran } from './build-tran.js';
15
+ import { build_uset } from './build-uset.js';
16
+ import { build_vars } from './build-vars.js';
17
+ export default class KMXPlusBuilder {
18
+ file;
19
+ //private writeDebug: boolean;
20
+ sect = {};
21
+ constructor(file, _writeDebug) {
22
+ this.file = file;
23
+ //this.writeDebug = _writeDebug;
24
+ }
25
+ compile() {
26
+ const fileSize = this.build();
27
+ const file = new Uint8Array(fileSize);
28
+ this.emitSection(file, this.file.COMP_PLUS_SECT, this.sect.sect);
29
+ // Keep the rest of these in order.
30
+ this.emitSection(file, this.file.COMP_PLUS_BKSP, this.sect.bksp);
31
+ this.emitSection(file, this.file.COMP_PLUS_DISP, this.sect.disp);
32
+ this.emitSection(file, this.file.COMP_PLUS_ELEM, this.sect.elem);
33
+ this.emitElements(file);
34
+ this.emitSection(file, this.file.COMP_PLUS_KEYS, this.sect.keys);
35
+ this.emitSection(file, this.file.COMP_PLUS_LAYR, this.sect.layr);
36
+ this.emitSection(file, this.file.COMP_PLUS_LIST, this.sect.list);
37
+ this.emitSection(file, this.file.COMP_PLUS_LOCA, this.sect.loca);
38
+ this.emitSection(file, this.file.COMP_PLUS_META, this.sect.meta);
39
+ this.emitSection(file, this.file.COMP_PLUS_STRS, this.sect.strs);
40
+ this.emitStrings(file);
41
+ this.emitSection(file, this.file.COMP_PLUS_TRAN, this.sect.tran);
42
+ this.emitSection(file, this.file.COMP_PLUS_USET, this.sect.uset);
43
+ this.emitSection(file, this.file.COMP_PLUS_VARS, this.sect.vars);
44
+ return file;
45
+ }
46
+ build() {
47
+ // Required sections: sect, strs, loca, meta
48
+ // We must prepare the strs, list, and elem sections early so that other sections can
49
+ // reference them. However, they will be emitted in alpha order.
50
+ this.sect.strs = build_strs(this.file.kmxplus.strs);
51
+ this.sect.list = build_list(this.file.kmxplus.list, this.sect.strs);
52
+ this.sect.uset = build_uset(this.file.kmxplus, this.sect.strs);
53
+ this.sect.elem = build_elem(this.file.kmxplus.elem, this.sect.strs, this.sect.uset);
54
+ const build_bksp = build_tran;
55
+ this.sect.bksp = build_bksp(this.file.kmxplus.bksp, this.sect.strs, this.sect.elem);
56
+ this.sect.disp = build_disp(this.file.kmxplus, this.sect.strs);
57
+ this.sect.keys = build_keys(this.file.kmxplus, this.sect.strs, this.sect.list);
58
+ this.sect.layr = build_layr(this.file.kmxplus, this.sect.strs, this.sect.list);
59
+ this.sect.loca = build_loca(this.file.kmxplus, this.sect.strs);
60
+ this.sect.meta = build_meta(this.file.kmxplus, this.sect.strs);
61
+ this.sect.tran = build_tran(this.file.kmxplus.tran, this.sect.strs, this.sect.elem);
62
+ this.sect.uset = build_uset(this.file.kmxplus, this.sect.strs);
63
+ this.sect.vars = build_vars(this.file.kmxplus, this.sect.strs, this.sect.elem, this.sect.list);
64
+ // Finalize the sect (index) section
65
+ this.sect.sect = build_sect();
66
+ this.finalize_sect(); // must be done last
67
+ return this.sect.sect.total;
68
+ }
69
+ finalize_sect() {
70
+ // 'sect' section
71
+ this.sect.sect.count = 0;
72
+ Object.keys(constants.section).forEach((sectstr) => {
73
+ const sect = constants.section[sectstr];
74
+ if (this.sect[sect] && sect !== 'sect') {
75
+ this.sect.sect.count++;
76
+ }
77
+ });
78
+ this.sect.sect.size = constants.length_sect + constants.length_sect_item * this.sect.sect.count;
79
+ let offset = this.sect.sect.size;
80
+ // Note: in order! Everyone's here except 'sect' which is at offset 0
81
+ offset = this.finalize_sect_item(this.sect.bksp, offset);
82
+ offset = this.finalize_sect_item(this.sect.disp, offset);
83
+ offset = this.finalize_sect_item(this.sect.elem, offset);
84
+ offset = this.finalize_sect_item(this.sect.keys, offset);
85
+ offset = this.finalize_sect_item(this.sect.layr, offset);
86
+ offset = this.finalize_sect_item(this.sect.list, offset);
87
+ offset = this.finalize_sect_item(this.sect.loca, offset);
88
+ offset = this.finalize_sect_item(this.sect.meta, offset);
89
+ offset = this.finalize_sect_item(this.sect.strs, offset);
90
+ offset = this.finalize_sect_item(this.sect.tran, offset);
91
+ offset = this.finalize_sect_item(this.sect.uset, offset);
92
+ offset = this.finalize_sect_item(this.sect.vars, offset);
93
+ this.sect.sect.total = offset;
94
+ }
95
+ finalize_sect_item(sect, offset) {
96
+ if (!sect) {
97
+ // Don't include null sections
98
+ return offset;
99
+ }
100
+ sect._offset = offset;
101
+ this.sect.sect.items.push({ sect: sect.ident, offset: offset });
102
+ return offset + sect.size;
103
+ }
104
+ emitSection(file, comp, sect) {
105
+ if (sect) {
106
+ const buf = comp.toBuffer(sect);
107
+ if (buf.length > sect.size) {
108
+ // buf.length may be < sect.size if there is a variable part (i.e. elem)
109
+ throw new RangeError(`Internal Error: Section ${constants.str_section_id(sect.ident)} claimed size ${sect.size} but produced buffer of size ${buf.length}.`);
110
+ }
111
+ file.set(buf, sect._offset);
112
+ }
113
+ }
114
+ emitStrings(file) {
115
+ for (const item of this.sect.strs.items) {
116
+ if (item._value === '') {
117
+ // We have a special case for the zero-length string
118
+ const sbuf = r.uint16le;
119
+ file.set(sbuf.toBuffer(0), item.offset + this.sect.strs._offset);
120
+ }
121
+ else {
122
+ const sbuf = new r.String(null, 'utf16le');
123
+ file.set(sbuf.toBuffer(item._value), item.offset + this.sect.strs._offset);
124
+ }
125
+ }
126
+ }
127
+ emitElements(file) {
128
+ if (this.sect.elem) {
129
+ for (const str of this.sect.elem.strings) {
130
+ if (str.items.length > 0) {
131
+ const COMP_PLUS_ELEM_ELEMENTS = new r.Array(this.file.COMP_PLUS_ELEM_ELEMENT, str.items.length);
132
+ file.set(COMP_PLUS_ELEM_ELEMENTS.toBuffer(str.items), str.offset + this.sect.elem._offset);
133
+ }
134
+ }
135
+ }
136
+ }
137
+ }
138
+ //# sourceMappingURL=kmx-plus-builder.js.map
139
+ //# debugId=041ae138-507d-53e1-bab1-7acd7e5c8b9d
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kmx-plus-builder.js","sources":["../../../../../src/types/kmx/kmx-plus-builder/kmx-plus-builder.ts"],"sourceRoot":"","names":[],"mappings":";;AAAA,OAAO,KAAK,CAAC,MAAM,aAAa,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAgB,MAAM,oCAAoC,CAAC;AAE7E,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAgB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAwB3D,MAAM,CAAC,OAAO,OAAO,cAAc;IACzB,IAAI,CAAc;IAC1B,8BAA8B;IAE9B,IAAI,GAAqB,EAExB,CAAC;IAEF,YAAY,IAAiB,EAAE,WAAoB;QACjD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,gCAAgC;IAClC,CAAC;IAEM,OAAO;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAe,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,mCAAmC;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjE,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK;QACX,4CAA4C;QAE5C,qFAAqF;QACrF,gEAAgE;QAChE,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpF,MAAM,UAAU,GAAG,UAAU,CAAC;QAE9B,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/F,oCAAoC;QAEpC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,oBAAoB;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IAC9B,CAAC;IAEO,aAAa;QACnB,iBAAiB;QAEjB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QAEzB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,OAAgB,EAAE,EAAE;YAC1D,MAAM,IAAI,GAAkB,SAAS,CAAC,OAAO,CAAe,OAAO,CAAC,CAAC;YACrE,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBACtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACzB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,WAAW,GAAG,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAEhG,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACjC,qEAAqE;QACrE,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEzD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;IAChC,CAAC;IAEO,kBAAkB,CAAC,IAAqB,EAAE,MAAc;QAC9D,IAAG,CAAC,IAAI,EAAE,CAAC;YACT,8BAA8B;YAC9B,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAC,CAAC,CAAC;QAC9D,OAAO,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;IAC5B,CAAC;IAEO,WAAW,CAAC,IAAgB,EAAE,IAAS,EAAE,IAAqB;QACpE,IAAG,IAAI,EAAE,CAAC;YACR,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC3B,wEAAwE;gBACxE,MAAM,IAAI,UAAU,CAAC,2BAA2B,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,IAAI,gCAAgC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;YAC/J,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,IAAgB;QAClC,KAAI,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACvC,IAAG,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;gBACtB,oDAAoD;gBACpD,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC;gBACxB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBAC3C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,IAAgB;QACnC,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAI,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACxC,IAAG,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,MAAM,uBAAuB,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAChG,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC7F,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;CACF","debug_id":"041ae138-507d-53e1-bab1-7acd7e5c8b9d"}
@@ -0,0 +1,79 @@
1
+ import { KeymanFileTypes } from '@keymanapp/common-types';
2
+ import { CompilerCallbacks } from '../../compiler-interfaces.js';
3
+ export declare class KeymanDeveloperProject {
4
+ private _projectFilename;
5
+ private callbacks;
6
+ options: KeymanDeveloperProjectOptions;
7
+ files: KeymanDeveloperProjectFile[];
8
+ projectPath: string;
9
+ readonly projectFile: KeymanDeveloperProjectFile;
10
+ get projectFilename(): string;
11
+ constructor(_projectFilename: string, version: KeymanDeveloperProjectVersion, callbacks: CompilerCallbacks);
12
+ /**
13
+ * Adds .kmn, .xml, .kps to project based on options.sourcePath
14
+ * @param projectFilename Full path to project.kpj (even if the file doesn't exist)
15
+ */
16
+ populateFiles(): boolean;
17
+ isKeyboardProject(): boolean;
18
+ isLexicalModelProject(): boolean;
19
+ private resolveProjectPath;
20
+ getOutputFilePath(type: KeymanFileTypes.Binary): string;
21
+ resolveInputFilePath(file: KeymanDeveloperProjectFile): string;
22
+ resolveOutputFilePath(file: KeymanDeveloperProjectFile, sourceExt: string, targetExt: string): string;
23
+ }
24
+ export declare enum KeymanDeveloperProjectType {
25
+ Keyboard = 0,
26
+ LexicalModel = 1
27
+ }
28
+ export type KeymanDeveloperProjectVersion = "1.0" | // Keyman Developer <17.0: All files referenced in .kpj
29
+ "2.0";
30
+ export declare class KeymanDeveloperProjectOptions {
31
+ buildPath: string;
32
+ sourcePath: string;
33
+ compilerWarningsAsErrors: boolean;
34
+ warnDeprecatedCode: boolean;
35
+ checkFilenameConventions: boolean;
36
+ /**
37
+ * Skip building .keyboard_info and .model_info files, for example in
38
+ * unit tests or for legacy keyboards
39
+ */
40
+ skipMetadataFiles: boolean;
41
+ projectType: KeymanDeveloperProjectType;
42
+ readonly version: KeymanDeveloperProjectVersion;
43
+ constructor(version: KeymanDeveloperProjectVersion);
44
+ }
45
+ export interface KeymanDeveloperProjectFile {
46
+ get filename(): string;
47
+ get fileType(): string;
48
+ readonly filePath: string;
49
+ }
50
+ export declare class KeymanDeveloperProjectFile10 implements KeymanDeveloperProjectFile {
51
+ readonly id: string;
52
+ readonly filePath: string;
53
+ readonly fileVersion: string;
54
+ private readonly callbacks;
55
+ get filename(): string;
56
+ get fileType(): string;
57
+ details: KeymanDeveloperProjectFileDetail_Kmn & KeymanDeveloperProjectFileDetail_Kps;
58
+ childFiles: KeymanDeveloperProjectFile[];
59
+ constructor(id: string, filePath: string, fileVersion: string, callbacks: CompilerCallbacks);
60
+ }
61
+ export type KeymanDeveloperProjectFileType20 = KeymanFileTypes.Source;
62
+ export declare class KeymanDeveloperProjectFile20 implements KeymanDeveloperProjectFile {
63
+ readonly filePath: string;
64
+ private readonly callbacks;
65
+ get filename(): string;
66
+ get fileType(): string;
67
+ constructor(filePath: string, callbacks: CompilerCallbacks);
68
+ }
69
+ export declare class KeymanDeveloperProjectFileDetail_Kps {
70
+ name?: string;
71
+ copyright?: string;
72
+ version?: string;
73
+ }
74
+ export declare class KeymanDeveloperProjectFileDetail_Kmn {
75
+ name?: string;
76
+ copyright?: string;
77
+ message?: string;
78
+ }
79
+ //# sourceMappingURL=keyman-developer-project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyman-developer-project.d.ts","sourceRoot":"","sources":["../../../../src/types/kpj/keyman-developer-project.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,qBAAa,sBAAsB;IAUrB,OAAO,CAAC,gBAAgB;IAAkD,OAAO,CAAC,SAAS;IATvG,OAAO,EAAE,6BAA6B,CAAC;IACvC,KAAK,EAAE,0BAA0B,EAAE,CAAC;IACpC,WAAW,EAAE,MAAM,CAAM;IACzB,QAAQ,CAAC,WAAW,EAAE,0BAA0B,CAAC;IAEjD,IAAI,eAAe,WAElB;gBAEmB,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,6BAA6B,EAAU,SAAS,EAAE,iBAAiB;IAM1H;;;OAGG;IACH,aAAa;IAiCN,iBAAiB;IAIjB,qBAAqB;IAI5B,OAAO,CAAC,kBAAkB;IAK1B,iBAAiB,CAAC,IAAI,EAAE,eAAe,CAAC,MAAM;IAmB9C,oBAAoB,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM;IAI9D,qBAAqB,CAAC,IAAI,EAAE,0BAA0B,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;CAmBtG;AAED,oBAAY,0BAA0B;IACpC,QAAQ,IAAA;IACR,YAAY,IAAA;CACb;AAED,MAAM,MAAM,6BAA6B,GACvC,KAAK,GAAK,uDAAuD;AACjE,KAAK,CAAC;AAER,qBAAa,6BAA6B;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,wBAAwB,EAAE,OAAO,CAAS;IAC1C,kBAAkB,EAAE,OAAO,CAAQ;IACnC,wBAAwB,EAAE,OAAO,CAAS;IAC1C;;;OAGG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,0BAA0B,CAAuC;IAC9E,QAAQ,CAAC,OAAO,EAAE,6BAA6B,CAAC;gBACpC,OAAO,EAAE,6BAA6B;CAiBnD;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,QAAQ,IAAI,MAAM,CAAC;IACvB,IAAI,QAAQ,IAAI,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,4BAA6B,YAAW,0BAA0B;aAUjD,EAAE,EAAE,MAAM;aAAkB,QAAQ,EAAE,MAAM;aAAkB,WAAW,EAAC,MAAM;IAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;IATxI,IAAI,QAAQ,IAAI,MAAM,CAErB;IACD,IAAI,QAAQ,IAAI,MAAM,CAErB;IACD,OAAO,EAAE,oCAAoC,GAAG,oCAAoC,CAAC;IACrF,UAAU,EAAE,0BAA0B,EAAE,CAAC;gBAEb,EAAE,EAAE,MAAM,EAAkB,QAAQ,EAAE,MAAM,EAAkB,WAAW,EAAC,MAAM,EAAmB,SAAS,EAAE,iBAAiB;CAI5J;AAED,MAAM,MAAM,gCAAgC,GAAG,eAAe,CAAC,MAAM,CAAC;AAEtE,qBAAa,4BAA6B,YAAW,0BAA0B;aAOjD,QAAQ,EAAE,MAAM;IAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;IANxE,IAAI,QAAQ,IAAI,MAAM,CAErB;IACD,IAAI,QAAQ,WAEX;gBAC2B,QAAQ,EAAE,MAAM,EAAmB,SAAS,EAAE,iBAAiB;CAE5F;AAED,qBAAa,oCAAoC;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,oCAAoC;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}