@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,197 +1,197 @@
1
- //
2
- // Version 1.0 and 2.0 of Keyman Developer Project .kpj file
3
- //
1
+ //
2
+ // Version 1.0 and 2.0 of Keyman Developer Project .kpj file
3
+ //
4
4
 
5
- !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]="255ef0d6-df8b-59b5-8bc4-d31f879ac84e")}catch(e){}}();
6
- import { KeymanFileTypes } from '../main.js';
7
- export class KeymanDeveloperProject {
8
- _projectFilename;
9
- callbacks;
10
- options;
11
- files;
12
- projectPath = '';
13
- projectFile;
14
- get projectFilename() {
15
- return this._projectFilename;
16
- }
17
- constructor(_projectFilename, version, callbacks) {
18
- this._projectFilename = _projectFilename;
19
- this.callbacks = callbacks;
20
- this.projectPath = this.callbacks.path.dirname(this._projectFilename);
21
- this.options = new KeymanDeveloperProjectOptions(version);
22
- this.files = [];
23
- this.projectFile = new KeymanDeveloperProjectFile20(_projectFilename, callbacks);
24
- }
25
- /**
26
- * Adds .kmn, .xml, .kps to project based on options.sourcePath
27
- * @param projectFilename Full path to project.kpj (even if the file doesn't exist)
28
- */
29
- populateFiles() {
30
- if (this.options.version != '2.0') {
31
- throw new Error('populateFiles can only be called on a v2.0 project');
32
- }
33
- let sourcePath = this.resolveProjectPath(this.options.sourcePath);
34
- if (!this.callbacks.fs.existsSync(sourcePath)) {
35
- return false;
36
- }
37
- let files = this.callbacks.fs.readdirSync(sourcePath);
38
- for (let filename of files) {
39
- let fullPath = this.callbacks.path.join(sourcePath, filename);
40
- if (KeymanFileTypes.filenameIs(filename, ".xml" /* KeymanFileTypes.Source.LdmlKeyboard */)) {
41
- try {
42
- const data = this.callbacks.loadFile(fullPath);
43
- const text = new TextDecoder().decode(data);
44
- if (!text?.match(/<keyboard3/)) {
45
- // Skip this .xml because we assume it isn't really a keyboard .xml
46
- continue;
47
- }
48
- }
49
- catch (e) {
50
- // We'll just silently skip this file because we were not able to load it,
51
- // so let's hope it wasn't a real LDML keyboard XML :-)
52
- continue;
53
- }
54
- }
55
- if (KeymanFileTypes.sourceTypeFromFilename(filename) !== null) {
56
- let file = new KeymanDeveloperProjectFile20(fullPath, this.callbacks);
57
- this.files.push(file);
58
- }
59
- }
60
- return this.files.length > 0;
61
- }
62
- isKeyboardProject() {
63
- return !!this.files.find(file => file.fileType == ".kmn" /* KeymanFileTypes.Source.KeymanKeyboard */ || file.fileType == ".xml" /* KeymanFileTypes.Source.LdmlKeyboard */);
64
- }
65
- isLexicalModelProject() {
66
- return !!this.files.find(file => file.fileType == ".model.ts" /* KeymanFileTypes.Source.Model */);
67
- }
68
- resolveProjectPath(p) {
69
- // Replace placeholders in the target path
70
- return p.replace('$PROJECTPATH', this.projectPath);
71
- }
72
- getOutputFilePath(type) {
73
- // Roughly corresponds to Delphi TProject.GetTargetFileName
74
- let p = this.options.version == '1.0' ?
75
- this.options.buildPath || '$SOURCEPATH' :
76
- this.options.buildPath;
77
- // Replace placeholders in the target path
78
- if (this.options.version == '1.0') {
79
- // TODO: do we need to support $VERSION?
80
- // $SOURCEPATH only supported in 1.0 projects
81
- p = p.replace('$SOURCEPATH', this.callbacks.path.dirname(this._projectFilename));
82
- }
83
- p = this.resolveProjectPath(p);
84
- const f = this.callbacks.path.basename(this._projectFilename, ".kpj" /* KeymanFileTypes.Source.Project */) + type;
85
- return this.callbacks.path.normalize(this.callbacks.path.join(p, f));
86
- }
87
- resolveInputFilePath(file) {
88
- return this.callbacks.resolveFilename(this._projectFilename, file.filePath);
89
- }
90
- resolveOutputFilePath(file, sourceExt, targetExt) {
91
- // Roughly corresponds to Delphi TProject.GetTargetFileName
92
- let p = this.options.version == '1.0' ?
93
- this.options.buildPath || '$SOURCEPATH' :
94
- this.options.buildPath;
95
- // Replace placeholders in the target path
96
- if (this.options.version == '1.0') {
97
- // TODO: do we need to support $VERSION?
98
- // $SOURCEPATH only supported in 1.0 projects
99
- p = p.replace('$SOURCEPATH', this.callbacks.path.dirname(this.resolveInputFilePath(file)));
100
- }
101
- p = this.resolveProjectPath(p);
102
- let f = file.filename.replace(new RegExp(`\\${sourceExt}$`, 'i'), targetExt);
103
- return this.callbacks.path.normalize(this.callbacks.path.join(p, f));
104
- }
105
- }
106
- ;
107
- export var KeymanDeveloperProjectType;
108
- (function (KeymanDeveloperProjectType) {
109
- KeymanDeveloperProjectType[KeymanDeveloperProjectType["Keyboard"] = 0] = "Keyboard";
110
- KeymanDeveloperProjectType[KeymanDeveloperProjectType["LexicalModel"] = 1] = "LexicalModel";
111
- })(KeymanDeveloperProjectType || (KeymanDeveloperProjectType = {}));
112
- ;
113
- export class KeymanDeveloperProjectOptions {
114
- buildPath;
115
- sourcePath;
116
- compilerWarningsAsErrors = false;
117
- warnDeprecatedCode = true;
118
- checkFilenameConventions = false; // missing option defaults to False
119
- /**
120
- * Skip building .keyboard_info and .model_info files, for example in
121
- * unit tests or for legacy keyboards
122
- */
123
- skipMetadataFiles;
124
- projectType = KeymanDeveloperProjectType.Keyboard;
125
- version;
126
- constructor(version) {
127
- this.version = version;
128
- switch (version) {
129
- case "1.0":
130
- this.buildPath = '';
131
- this.sourcePath = '';
132
- this.skipMetadataFiles = true;
133
- break;
134
- case "2.0":
135
- this.buildPath = '$PROJECTPATH/build';
136
- this.sourcePath = '$PROJECTPATH/source';
137
- this.skipMetadataFiles = false;
138
- break;
139
- default:
140
- throw new Error('Invalid version');
141
- }
142
- }
143
- }
144
- ;
145
- ;
146
- export class KeymanDeveloperProjectFile10 {
147
- id;
148
- filePath;
149
- fileVersion;
150
- callbacks;
151
- get filename() {
152
- return this.callbacks.path.basename(this.filePath);
153
- }
154
- get fileType() {
155
- return KeymanFileTypes.fromFilename(this.filename);
156
- }
157
- details; // 1.0 only
158
- childFiles; // 1.0 only
159
- constructor(id, filePath, fileVersion, callbacks) {
160
- this.id = id;
161
- this.filePath = filePath;
162
- this.fileVersion = fileVersion;
163
- this.callbacks = callbacks;
164
- this.details = {};
165
- this.childFiles = [];
166
- }
167
- }
168
- ;
169
- export class KeymanDeveloperProjectFile20 {
170
- filePath;
171
- callbacks;
172
- get filename() {
173
- return this.callbacks.path.basename(this.filePath);
174
- }
175
- get fileType() {
176
- return KeymanFileTypes.fromFilename(this.filename);
177
- }
178
- constructor(filePath, callbacks) {
179
- this.filePath = filePath;
180
- this.callbacks = callbacks;
181
- }
182
- }
183
- ;
184
- export class KeymanDeveloperProjectFileDetail_Kps {
185
- name;
186
- copyright;
187
- version;
188
- }
189
- ;
190
- export class KeymanDeveloperProjectFileDetail_Kmn {
191
- name;
192
- copyright;
193
- message;
194
- }
195
- ;
5
+ !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]="ffb6f33c-4d59-5feb-b67e-f39c63733abe")}catch(e){}}();
6
+ import { KeymanFileTypes } from '../main.js';
7
+ export class KeymanDeveloperProject {
8
+ _projectFilename;
9
+ callbacks;
10
+ options;
11
+ files;
12
+ projectPath = '';
13
+ projectFile;
14
+ get projectFilename() {
15
+ return this._projectFilename;
16
+ }
17
+ constructor(_projectFilename, version, callbacks) {
18
+ this._projectFilename = _projectFilename;
19
+ this.callbacks = callbacks;
20
+ this.projectPath = this.callbacks.path.dirname(this._projectFilename);
21
+ this.options = new KeymanDeveloperProjectOptions(version);
22
+ this.files = [];
23
+ this.projectFile = new KeymanDeveloperProjectFile20(_projectFilename, callbacks);
24
+ }
25
+ /**
26
+ * Adds .kmn, .xml, .kps to project based on options.sourcePath
27
+ * @param projectFilename Full path to project.kpj (even if the file doesn't exist)
28
+ */
29
+ populateFiles() {
30
+ if (this.options.version != '2.0') {
31
+ throw new Error('populateFiles can only be called on a v2.0 project');
32
+ }
33
+ let sourcePath = this.resolveProjectPath(this.options.sourcePath);
34
+ if (!this.callbacks.fs.existsSync(sourcePath)) {
35
+ return false;
36
+ }
37
+ let files = this.callbacks.fs.readdirSync(sourcePath);
38
+ for (let filename of files) {
39
+ let fullPath = this.callbacks.path.join(sourcePath, filename);
40
+ if (KeymanFileTypes.filenameIs(filename, ".xml" /* KeymanFileTypes.Source.LdmlKeyboard */)) {
41
+ try {
42
+ const data = this.callbacks.loadFile(fullPath);
43
+ const text = new TextDecoder().decode(data);
44
+ if (!text?.match(/<keyboard3/)) {
45
+ // Skip this .xml because we assume it isn't really a keyboard .xml
46
+ continue;
47
+ }
48
+ }
49
+ catch (e) {
50
+ // We'll just silently skip this file because we were not able to load it,
51
+ // so let's hope it wasn't a real LDML keyboard XML :-)
52
+ continue;
53
+ }
54
+ }
55
+ if (KeymanFileTypes.sourceTypeFromFilename(filename) !== null) {
56
+ let file = new KeymanDeveloperProjectFile20(fullPath, this.callbacks);
57
+ this.files.push(file);
58
+ }
59
+ }
60
+ return this.files.length > 0;
61
+ }
62
+ isKeyboardProject() {
63
+ return !!this.files.find(file => file.fileType == ".kmn" /* KeymanFileTypes.Source.KeymanKeyboard */ || file.fileType == ".xml" /* KeymanFileTypes.Source.LdmlKeyboard */);
64
+ }
65
+ isLexicalModelProject() {
66
+ return !!this.files.find(file => file.fileType == ".model.ts" /* KeymanFileTypes.Source.Model */);
67
+ }
68
+ resolveProjectPath(p) {
69
+ // Replace placeholders in the target path
70
+ return p.replace('$PROJECTPATH', this.projectPath);
71
+ }
72
+ getOutputFilePath(type) {
73
+ // Roughly corresponds to Delphi TProject.GetTargetFileName
74
+ let p = this.options.version == '1.0' ?
75
+ this.options.buildPath || '$SOURCEPATH' :
76
+ this.options.buildPath;
77
+ // Replace placeholders in the target path
78
+ if (this.options.version == '1.0') {
79
+ // TODO: do we need to support $VERSION?
80
+ // $SOURCEPATH only supported in 1.0 projects
81
+ p = p.replace('$SOURCEPATH', this.callbacks.path.dirname(this._projectFilename));
82
+ }
83
+ p = this.resolveProjectPath(p);
84
+ const f = this.callbacks.path.basename(this._projectFilename, ".kpj" /* KeymanFileTypes.Source.Project */) + type;
85
+ return this.callbacks.path.normalize(this.callbacks.path.join(p, f));
86
+ }
87
+ resolveInputFilePath(file) {
88
+ return this.callbacks.resolveFilename(this._projectFilename, file.filePath);
89
+ }
90
+ resolveOutputFilePath(file, sourceExt, targetExt) {
91
+ // Roughly corresponds to Delphi TProject.GetTargetFileName
92
+ let p = this.options.version == '1.0' ?
93
+ this.options.buildPath || '$SOURCEPATH' :
94
+ this.options.buildPath;
95
+ // Replace placeholders in the target path
96
+ if (this.options.version == '1.0') {
97
+ // TODO: do we need to support $VERSION?
98
+ // $SOURCEPATH only supported in 1.0 projects
99
+ p = p.replace('$SOURCEPATH', this.callbacks.path.dirname(this.resolveInputFilePath(file)));
100
+ }
101
+ p = this.resolveProjectPath(p);
102
+ let f = file.filename.replace(new RegExp(`\\${sourceExt}$`, 'i'), targetExt);
103
+ return this.callbacks.path.normalize(this.callbacks.path.join(p, f));
104
+ }
105
+ }
106
+ ;
107
+ export var KeymanDeveloperProjectType;
108
+ (function (KeymanDeveloperProjectType) {
109
+ KeymanDeveloperProjectType[KeymanDeveloperProjectType["Keyboard"] = 0] = "Keyboard";
110
+ KeymanDeveloperProjectType[KeymanDeveloperProjectType["LexicalModel"] = 1] = "LexicalModel";
111
+ })(KeymanDeveloperProjectType || (KeymanDeveloperProjectType = {}));
112
+ ;
113
+ export class KeymanDeveloperProjectOptions {
114
+ buildPath;
115
+ sourcePath;
116
+ compilerWarningsAsErrors = false;
117
+ warnDeprecatedCode = true;
118
+ checkFilenameConventions = false; // missing option defaults to False
119
+ /**
120
+ * Skip building .keyboard_info and .model_info files, for example in
121
+ * unit tests or for legacy keyboards
122
+ */
123
+ skipMetadataFiles;
124
+ projectType = KeymanDeveloperProjectType.Keyboard;
125
+ version;
126
+ constructor(version) {
127
+ this.version = version;
128
+ switch (version) {
129
+ case "1.0":
130
+ this.buildPath = '';
131
+ this.sourcePath = '';
132
+ this.skipMetadataFiles = true;
133
+ break;
134
+ case "2.0":
135
+ this.buildPath = '$PROJECTPATH/build';
136
+ this.sourcePath = '$PROJECTPATH/source';
137
+ this.skipMetadataFiles = false;
138
+ break;
139
+ default:
140
+ throw new Error('Invalid version');
141
+ }
142
+ }
143
+ }
144
+ ;
145
+ ;
146
+ export class KeymanDeveloperProjectFile10 {
147
+ id;
148
+ filePath;
149
+ fileVersion;
150
+ callbacks;
151
+ get filename() {
152
+ return this.callbacks.path.basename(this.filePath);
153
+ }
154
+ get fileType() {
155
+ return KeymanFileTypes.fromFilename(this.filename);
156
+ }
157
+ details; // 1.0 only
158
+ childFiles; // 1.0 only
159
+ constructor(id, filePath, fileVersion, callbacks) {
160
+ this.id = id;
161
+ this.filePath = filePath;
162
+ this.fileVersion = fileVersion;
163
+ this.callbacks = callbacks;
164
+ this.details = {};
165
+ this.childFiles = [];
166
+ }
167
+ }
168
+ ;
169
+ export class KeymanDeveloperProjectFile20 {
170
+ filePath;
171
+ callbacks;
172
+ get filename() {
173
+ return this.callbacks.path.basename(this.filePath);
174
+ }
175
+ get fileType() {
176
+ return KeymanFileTypes.fromFilename(this.filename);
177
+ }
178
+ constructor(filePath, callbacks) {
179
+ this.filePath = filePath;
180
+ this.callbacks = callbacks;
181
+ }
182
+ }
183
+ ;
184
+ export class KeymanDeveloperProjectFileDetail_Kps {
185
+ name;
186
+ copyright;
187
+ version;
188
+ }
189
+ ;
190
+ export class KeymanDeveloperProjectFileDetail_Kmn {
191
+ name;
192
+ copyright;
193
+ message;
194
+ }
195
+ ;
196
196
  //# sourceMappingURL=keyman-developer-project.js.map
197
- //# debugId=255ef0d6-df8b-59b5-8bc4-d31f879ac84e
197
+ //# debugId=ffb6f33c-4d59-5feb-b67e-f39c63733abe
@@ -1 +1 @@
1
- {"version":3,"file":"keyman-developer-project.js","sources":["../../../src/kpj/keyman-developer-project.ts"],"sourceRoot":"","names":[],"mappings":"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","debug_id":"255ef0d6-df8b-59b5-8bc4-d31f879ac84e"}
1
+ {"version":3,"file":"keyman-developer-project.js","sources":["../../../src/kpj/keyman-developer-project.ts"],"sourceRoot":"","names":[],"mappings":"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","debug_id":"ffb6f33c-4d59-5feb-b67e-f39c63733abe"}
@@ -1,19 +1,19 @@
1
- import { KPJFile } from './kpj-file.js';
2
- import { KeymanDeveloperProject } from './keyman-developer-project.js';
3
- import { CompilerCallbacks } from '../util/compiler-interfaces.js';
4
- export declare class KPJFileReader {
5
- private callbacks;
6
- constructor(callbacks: CompilerCallbacks);
7
- read(file: Uint8Array): KPJFile;
8
- validate(source: KPJFile): void;
9
- private boolFromString;
10
- transform(projectFilename: string, source: KPJFile): KeymanDeveloperProject;
11
- private transformFilesVersion10;
12
- /**
13
- * xml2js will not place single-entry objects into arrays.
14
- * Easiest way to fix this is to box them ourselves as needed
15
- * @param source KVKSourceFile
16
- */
17
- private boxArrays;
18
- }
1
+ import { KPJFile } from './kpj-file.js';
2
+ import { KeymanDeveloperProject } from './keyman-developer-project.js';
3
+ import { CompilerCallbacks } from '../util/compiler-interfaces.js';
4
+ export declare class KPJFileReader {
5
+ private callbacks;
6
+ constructor(callbacks: CompilerCallbacks);
7
+ read(file: Uint8Array): KPJFile;
8
+ validate(source: KPJFile): void;
9
+ private boolFromString;
10
+ transform(projectFilename: string, source: KPJFile): KeymanDeveloperProject;
11
+ private transformFilesVersion10;
12
+ /**
13
+ * xml2js will not place single-entry objects into arrays.
14
+ * Easiest way to fix this is to box them ourselves as needed
15
+ * @param source KVKSourceFile
16
+ */
17
+ private boxArrays;
18
+ }
19
19
  //# sourceMappingURL=kpj-file-reader.d.ts.map