@keymanapp/kmc-generate 18.0.173-alpha → 18.0.175-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/src/basic-generator.d.ts +2 -2
- package/build/src/basic-generator.d.ts.map +1 -1
- package/build/src/basic-generator.js +14 -1
- package/build/src/basic-generator.js.map +1 -1
- package/build/src/generator-messages.d.ts +18 -2
- package/build/src/generator-messages.d.ts.map +1 -1
- package/build/src/generator-messages.js +10 -2
- package/build/src/generator-messages.js.map +1 -1
- package/build/src/keyman-keyboard-generator.d.ts.map +1 -1
- package/build/src/keyman-keyboard-generator.js +10 -1
- package/build/src/keyman-keyboard-generator.js.map +1 -1
- package/build/src/ldml-keyboard-generator.d.ts.map +1 -1
- package/build/src/ldml-keyboard-generator.js +10 -1
- package/build/src/ldml-keyboard-generator.js.map +1 -1
- package/build/src/lexical-model-generator.d.ts.map +1 -1
- package/build/src/lexical-model-generator.js +9 -2
- package/build/src/lexical-model-generator.js.map +1 -1
- package/package.json +8 -7
|
@@ -10,7 +10,7 @@ export declare class BasicGenerator extends AbstractGenerator {
|
|
|
10
10
|
protected templatePath: string;
|
|
11
11
|
protected languageTags: string[];
|
|
12
12
|
protected resolvedTargets: KeymanTargets.KeymanTarget[];
|
|
13
|
-
protected preGenerate():
|
|
13
|
+
protected preGenerate(): boolean;
|
|
14
14
|
protected generate(artifacts: GeneratorArtifacts): boolean;
|
|
15
15
|
private getLanguageName;
|
|
16
16
|
private generateLanguageListForPackage;
|
|
@@ -23,7 +23,7 @@ export declare class BasicGenerator extends AbstractGenerator {
|
|
|
23
23
|
*/
|
|
24
24
|
readonly test_templatePath: () => string;
|
|
25
25
|
readonly test_languageTags: () => string[];
|
|
26
|
-
readonly test_preGenerate: () =>
|
|
26
|
+
readonly test_preGenerate: () => boolean;
|
|
27
27
|
readonly test_generate: (artifacts: GeneratorArtifacts) => boolean;
|
|
28
28
|
readonly test_getLanguageName: (tag: string) => string;
|
|
29
29
|
readonly test_generateLanguageListForPackage: () => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-generator.d.ts","sourceRoot":"","sources":["../../src/basic-generator.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"basic-generator.d.ts","sourceRoot":"","sources":["../../src/basic-generator.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAGhF;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,iBAAiB;IAGnD,SAAS,CAAC,QAAQ,CAAC,cAAc,QAAQ;IAEzC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IACjC,SAAS,CAAC,eAAe,EAAE,aAAa,CAAC,YAAY,EAAE,CAAC;IAExD,SAAS,CAAC,WAAW;IA4CrB,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,GAAG,OAAO;IAI1D,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,8BAA8B;IAWtC,OAAO,CAAC,2BAA2B;IAQnC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAE0C;IAEvE,OAAO,CAAC,SAAS;IAwCjB;;;OAGG;IACH,SAAgB,iBAAiB,eAA2B;IAC5D,SAAgB,iBAAiB,iBAA2B;IAE5D,SAAgB,gBAAgB,gBAA4B;IAC5D,SAAgB,aAAa,cAAe,kBAAkB,aAA8B;IAC5F,SAAgB,oBAAoB,QAAS,MAAM,YAAgC;IACnF,SAAgB,mCAAmC,eAA+C;IAClG,SAAgB,gCAAgC,eAA4C;IAC5F,SAAgB,iBAAiB,cAAe,kBAAkB,aAAkC;IACpG,SAAgB,cAAc,eAAgB,MAAM,YAAY,MAAM,aAAa,kBAAkB,aACnD;CACnD"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import { KeymanTargets } from "@keymanapp/common-types";
|
|
7
7
|
import KEYMAN_VERSION from "@keymanapp/keyman-version";
|
|
8
8
|
import { AbstractGenerator } from "./abstract-generator.js";
|
|
9
|
+
import { GeneratorMessages } from "./generator-messages.js";
|
|
9
10
|
/**
|
|
10
11
|
* @internal
|
|
11
12
|
* Common functionality for generating projects. Do not instantiate
|
|
@@ -22,7 +23,17 @@ export class BasicGenerator extends AbstractGenerator {
|
|
|
22
23
|
this.languageTags = this.options.languageTags.length
|
|
23
24
|
? this.options.languageTags.map(tag => new Intl.Locale(tag).minimize().toString())
|
|
24
25
|
: [this.DEFAULT_LOCALE];
|
|
25
|
-
//
|
|
26
|
+
// Verify that targets passed in are valid
|
|
27
|
+
let failed = false;
|
|
28
|
+
for (const target of this.options.targets) {
|
|
29
|
+
if (!KeymanTargets.AllKeymanTargets.includes(target)) {
|
|
30
|
+
this.callbacks.reportMessage(GeneratorMessages.Error_InvalidTarget({ target }));
|
|
31
|
+
failed = true;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
if (failed) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
26
37
|
if (this.options.targets.includes(KeymanTargets.KeymanTarget.any) || this.options.targets.length == 0) {
|
|
27
38
|
this.resolvedTargets = KeymanTargets.AllKeymanTargets.filter(target => target != KeymanTargets.KeymanTarget.any);
|
|
28
39
|
}
|
|
@@ -44,6 +55,7 @@ export class BasicGenerator extends AbstractGenerator {
|
|
|
44
55
|
dt.getDate().toString().padStart(2, '0');
|
|
45
56
|
this.tokenMap['$PACKAGE_LANGUAGES'] = this.generateLanguageListForPackage();
|
|
46
57
|
this.tokenMap['$PLATFORMS_DOTLIST_README'] = this.getPlatformDotListForReadme();
|
|
58
|
+
return true;
|
|
47
59
|
}
|
|
48
60
|
generate(artifacts) {
|
|
49
61
|
return this.transformAll(artifacts);
|
|
@@ -75,6 +87,7 @@ export class BasicGenerator extends AbstractGenerator {
|
|
|
75
87
|
destFile = this.callbacks.path.join(this.options.outPath, this.options.id, destFile == '' ? sourceFile : destFile);
|
|
76
88
|
sourceFile = this.callbacks.path.join(this.templateBasePath, this.templatePath, sourceFile);
|
|
77
89
|
const sourceData = this.callbacks.loadFile(sourceFile);
|
|
90
|
+
/* c8 ignore next 4 */
|
|
78
91
|
if (sourceData == null) {
|
|
79
92
|
// internal error -- source file should be readable
|
|
80
93
|
throw new Error(`source file ${sourceFile} does not exist`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-generator.js","sourceRoot":"","sources":["../../src/basic-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,cAAc,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAsB,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"basic-generator.js","sourceRoot":"","sources":["../../src/basic-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
* @internal
|
|
3
3
|
*/
|
|
4
4
|
export declare class GeneratorMessages {
|
|
5
|
+
static FATAL_UnexpectedException: number;
|
|
5
6
|
static Fatal_UnexpectedException: (o: {
|
|
6
7
|
e: any;
|
|
7
8
|
}) => import("@keymanapp/developer-utils").CompilerEvent;
|
|
8
|
-
static
|
|
9
|
+
static INFO_GeneratingProject: number;
|
|
9
10
|
static Info_GeneratingProject: (o: {
|
|
10
11
|
type: string;
|
|
11
12
|
id: string;
|
|
12
13
|
}) => import("@keymanapp/developer-utils").CompilerEvent;
|
|
13
|
-
static INFO_GeneratingProject: number;
|
|
14
14
|
static ERROR_CannotCreateFolder: number;
|
|
15
15
|
static Error_CannotCreateFolder: (o: {
|
|
16
16
|
folderName: string;
|
|
@@ -29,5 +29,21 @@ export declare class GeneratorMessages {
|
|
|
29
29
|
static Warn_ModelIdDoesNotFollowLexicalModelConventions: (o: {
|
|
30
30
|
id: string;
|
|
31
31
|
}) => import("@keymanapp/developer-utils").CompilerEvent;
|
|
32
|
+
static ERROR_InvalidTarget: number;
|
|
33
|
+
static Error_InvalidTarget: (o: {
|
|
34
|
+
target: string;
|
|
35
|
+
}) => import("@keymanapp/developer-utils").CompilerEvent;
|
|
36
|
+
static ERROR_InvalidKeymanKeyboardId: number;
|
|
37
|
+
static Error_InvalidKeymanKeyboardId: (o: {
|
|
38
|
+
id: string;
|
|
39
|
+
}) => import("@keymanapp/developer-utils").CompilerEvent;
|
|
40
|
+
static ERROR_InvalidLdmlKeyboardId: number;
|
|
41
|
+
static Error_InvalidLdmlKeyboardId: (o: {
|
|
42
|
+
id: string;
|
|
43
|
+
}) => import("@keymanapp/developer-utils").CompilerEvent;
|
|
44
|
+
static ERROR_InvalidLexicalModelId: number;
|
|
45
|
+
static Error_InvalidLexicalModelId: (o: {
|
|
46
|
+
id: string;
|
|
47
|
+
}) => import("@keymanapp/developer-utils").CompilerEvent;
|
|
32
48
|
}
|
|
33
49
|
//# sourceMappingURL=generator-messages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator-messages.d.ts","sourceRoot":"","sources":["../../src/generator-messages.ts"],"names":[],"mappings":"AAeA;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,yBAAyB,MAAM;QAAC,CAAC,EAAE,GAAG,CAAA;KAAC,
|
|
1
|
+
{"version":3,"file":"generator-messages.d.ts","sourceRoot":"","sources":["../../src/generator-messages.ts"],"names":[],"mappings":"AAeA;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,yBAAyB,SAAqB;IACrD,MAAM,CAAC,yBAAyB,MAAM;QAAC,CAAC,EAAE,GAAG,CAAA;KAAC,wDAE5C;IAEF,MAAM,CAAC,sBAAsB,SAAoB;IACjD,MAAM,CAAC,sBAAsB,MAAM;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC,wDAG3D;IAEF,MAAM,CAAC,wBAAwB,SAAqB;IACpD,MAAM,CAAC,wBAAwB,MAAM;QAAC,UAAU,EAAC,MAAM,CAAC;QAAC,CAAC,EAAE,GAAG,CAAA;KAAC,wDAG9D;IAEF,MAAM,CAAC,6BAA6B,SAAqB;IACzD,MAAM,CAAC,6BAA6B,MAAM;QAAC,OAAO,EAAC,MAAM,CAAA;KAAC,wDAGxD;IAEF,MAAM,CAAC,2BAA2B,SAAqB;IACvD,MAAM,CAAC,2BAA2B,MAAM;QAAC,QAAQ,EAAC,MAAM,CAAC;QAAC,CAAC,EAAE,GAAG,CAAA;KAAC,wDAG/D;IAGF,MAAM,CAAC,gDAAgD,SAAoB;IAC3E,MAAM,CAAC,gDAAgD,MAAM;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC,wDAKvE;IAEF,MAAM,CAAC,mBAAmB,SAAqB;IAC/C,MAAM,CAAC,mBAAmB,MAAM;QAAC,MAAM,EAAC,MAAM,CAAA;KAAC,wDAG7C;IAEF,MAAM,CAAC,6BAA6B,SAAqB;IACzD,MAAM,CAAC,6BAA6B,MAAM;QAAC,EAAE,EAAC,MAAM,CAAA;KAAC,wDAGnD;IAEF,MAAM,CAAC,2BAA2B,SAAqB;IACvD,MAAM,CAAC,2BAA2B,MAAM;QAAC,EAAE,EAAC,MAAM,CAAA;KAAC,wDAGjD;IAEF,MAAM,CAAC,2BAA2B,SAAqB;IACvD,MAAM,CAAC,2BAA2B,MAAM;QAAC,EAAE,EAAC,MAAM,CAAA;KAAC,wDAGjD;CACH"}
|
|
@@ -14,10 +14,10 @@ const SevFatal = CompilerErrorSeverity.Fatal | Namespace;
|
|
|
14
14
|
* @internal
|
|
15
15
|
*/
|
|
16
16
|
export class GeneratorMessages {
|
|
17
|
-
static Fatal_UnexpectedException = (o) => m(this.FATAL_UnexpectedException, null, o.e ?? 'unknown error');
|
|
18
17
|
static FATAL_UnexpectedException = SevFatal | 0x0001;
|
|
19
|
-
static
|
|
18
|
+
static Fatal_UnexpectedException = (o) => m(this.FATAL_UnexpectedException, null, o.e ?? 'unknown error');
|
|
20
19
|
static INFO_GeneratingProject = SevInfo | 0x0002;
|
|
20
|
+
static Info_GeneratingProject = (o) => m(this.INFO_GeneratingProject, `Generating project of type ${def(o.type)} with id ${def(o.id)}`);
|
|
21
21
|
static ERROR_CannotCreateFolder = SevError | 0x0003;
|
|
22
22
|
static Error_CannotCreateFolder = (o) => CompilerMessageSpecWithException(this.ERROR_CannotCreateFolder, null, `Unable to create folder ${def(o.folderName)}: ${o.e ?? 'unknown error'}`);
|
|
23
23
|
static ERROR_OutputPathAlreadyExists = SevError | 0x0004;
|
|
@@ -29,6 +29,14 @@ export class GeneratorMessages {
|
|
|
29
29
|
static Warn_ModelIdDoesNotFollowLexicalModelConventions = (o) => m(this.WARN_ModelIdDoesNotFollowLexicalModelConventions, `The id ${def(o.id)} does not follow the recommended model id conventions. The id should be all lower case, ` +
|
|
30
30
|
`include only alphanumeric characters and underscore (_), not start with a digit, and should have the structure ` +
|
|
31
31
|
`<author>.<bcp47>.<uniq>`);
|
|
32
|
+
static ERROR_InvalidTarget = SevError | 0x0007;
|
|
33
|
+
static Error_InvalidTarget = (o) => m(this.ERROR_InvalidTarget, `The specified target platform '${def(o.target)}' is not a valid target.`);
|
|
34
|
+
static ERROR_InvalidKeymanKeyboardId = SevError | 0x0008;
|
|
35
|
+
static Error_InvalidKeymanKeyboardId = (o) => m(this.ERROR_InvalidKeymanKeyboardId, `The specified keyboard id '${def(o.id)}' contains characters that are not permitted for a .kmn keyboard id or filename.`);
|
|
36
|
+
static ERROR_InvalidLdmlKeyboardId = SevError | 0x0009;
|
|
37
|
+
static Error_InvalidLdmlKeyboardId = (o) => m(this.ERROR_InvalidLdmlKeyboardId, `The specified keyboard id '${def(o.id)}' contains characters that are not permitted for an LDML .xml keyboard id or filename.`);
|
|
38
|
+
static ERROR_InvalidLexicalModelId = SevError | 0x000A;
|
|
39
|
+
static Error_InvalidLexicalModelId = (o) => m(this.ERROR_InvalidLexicalModelId, `The specified lexical model id '${def(o.id)}' contains characters that are not permitted or does not match the required pattern of 'author.bcp47.uniq'.`);
|
|
32
40
|
}
|
|
33
41
|
;
|
|
34
42
|
//# sourceMappingURL=generator-messages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator-messages.js","sourceRoot":"","sources":["../../src/generator-messages.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,mBAAmB,IAAI,CAAC,EAAE,kBAAkB,IAAI,GAAG,EAAE,gCAAgC,EAAE,MAAM,4BAA4B,CAAC;AAElL,MAAM,SAAS,GAAG,sBAAsB,CAAC,SAAS,CAAC;AACnD,MAAM,OAAO,GAAG,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC;AACvD,0DAA0D;AAC1D,MAAM,OAAO,GAAG,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC;AACvD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,GAAG,SAAS,CAAC;AACzD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,GAAG,SAAS,CAAC;AAEzD;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAC5B,MAAM,CAAC,yBAAyB,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"generator-messages.js","sourceRoot":"","sources":["../../src/generator-messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyman-keyboard-generator.d.ts","sourceRoot":"","sources":["../../src/keyman-keyboard-generator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"keyman-keyboard-generator.d.ts","sourceRoot":"","sources":["../../src/keyman-keyboard-generator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAa,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAsB,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,cAAe,YAAW,cAAc;IAUnF,MAAM,CAAC,QAAQ,CAAC,cAAc,cAAc;IAC5C,MAAM,CAAC,QAAQ,CAAC,iBAAiB,SAAwF;IACzH,MAAM,CAAC,QAAQ,CAAC,iBAAiB,SAAiF;IAClH,MAAM,CAAC,QAAQ,CAAC,kBAAkB,SAAwF;IAC1H,MAAM,CAAC,QAAQ,CAAC,iBAAiB,SAAqF;IACtH,MAAM,CAAC,QAAQ,CAAC,aAAa,SAA6D;IAE1F;;;;;;OAMG;IACG,GAAG,IAAI,OAAO,CAAC,eAAe,CAAC;IA2DrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAE9B;IAED,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyE;IACjG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqE;IAC5F,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqE;IAC5F,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA+D;IAI9F,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IAEvC,OAAO,CAAC,SAAS;CAKlB"}
|
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
* Generate a Keyman keyboard project (.kmn source)
|
|
5
5
|
*/
|
|
6
6
|
import { KeymanTargets } from '@keymanapp/common-types';
|
|
7
|
+
import { ValidIds, } from '@keymanapp/developer-utils';
|
|
7
8
|
import { BasicGenerator } from './basic-generator.js';
|
|
9
|
+
import { GeneratorMessages } from './generator-messages.js';
|
|
8
10
|
/**
|
|
9
11
|
* @public
|
|
10
12
|
* Generate a Keyman keyboard project. The generator does not read or write from
|
|
@@ -33,7 +35,14 @@ export class KeymanKeyboardGenerator extends BasicGenerator {
|
|
|
33
35
|
* @returns Binary artifacts on success, null on failure.
|
|
34
36
|
*/
|
|
35
37
|
async run() {
|
|
36
|
-
this.
|
|
38
|
+
if (!ValidIds.isValidKeymanKeyboardId(this.options.id)) {
|
|
39
|
+
this.callbacks.reportMessage(GeneratorMessages.Error_InvalidKeymanKeyboardId({ id: this.options.id }));
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
if (!this.preGenerate()) {
|
|
43
|
+
// errors will have been reported in preGenerate
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
37
46
|
const artifacts = this.defaultArtifacts();
|
|
38
47
|
this.templatePath = 'kmn-keyboard';
|
|
39
48
|
this.filenameMap[KeymanKeyboardGenerator.SFile_Project] = this.options.id + ".kpj" /* KeymanFileTypes.Source.Project */;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyman-keyboard-generator.js","sourceRoot":"","sources":["../../src/keyman-keyboard-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAmB,aAAa,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"keyman-keyboard-generator.js","sourceRoot":"","sources":["../../src/keyman-keyboard-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ldml-keyboard-generator.d.ts","sourceRoot":"","sources":["../../src/ldml-keyboard-generator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"ldml-keyboard-generator.d.ts","sourceRoot":"","sources":["../../src/ldml-keyboard-generator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAa,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAsB,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,cAAe,YAAW,cAAc;IACjF,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,cAAc;IACtD,MAAM,CAAC,QAAQ,CAAC,iBAAiB,SAAsF;IACvH,MAAM,CAAC,QAAQ,CAAC,aAAa,SAAiF;IAC9G,MAAM,CAAC,QAAQ,CAAC,aAAa,SAA6D;IAE1F;;;;;;OAMG;IACG,GAAG,IAAI,OAAO,CAAC,eAAe,CAAC;IA8BrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAuD;IAC5F,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAWzC;CACF"}
|
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Generate a Keyman LDML keyboard project (.xml source)
|
|
5
5
|
*/
|
|
6
|
+
import { ValidIds, } from '@keymanapp/developer-utils';
|
|
6
7
|
import { BasicGenerator } from './basic-generator.js';
|
|
8
|
+
import { GeneratorMessages } from './generator-messages.js';
|
|
7
9
|
/**
|
|
8
10
|
* @public
|
|
9
11
|
* Generate a LDML keyboard project. The generator does not read or write from
|
|
@@ -22,7 +24,14 @@ export class LdmlKeyboardGenerator extends BasicGenerator {
|
|
|
22
24
|
* @returns Binary artifacts on success, null on failure.
|
|
23
25
|
*/
|
|
24
26
|
async run() {
|
|
25
|
-
this.
|
|
27
|
+
if (!ValidIds.isValidLdmlKeyboardId(this.options.id)) {
|
|
28
|
+
this.callbacks.reportMessage(GeneratorMessages.Error_InvalidLdmlKeyboardId({ id: this.options.id }));
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
if (!this.preGenerate()) {
|
|
32
|
+
// errors will have been reported in preGenerate
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
26
35
|
const artifacts = this.defaultArtifacts();
|
|
27
36
|
this.templatePath = 'ldml-keyboard';
|
|
28
37
|
this.filenameMap[LdmlKeyboardGenerator.SFile_Project] =
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ldml-keyboard-generator.js","sourceRoot":"","sources":["../../src/ldml-keyboard-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"ldml-keyboard-generator.js","sourceRoot":"","sources":["../../src/ldml-keyboard-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAkB,QAAQ,GAAG,MAAM,4BAA4B,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D;;;;GAIG;AACH,MAAM,OAAO,qBAAsB,SAAQ,cAAc;IAC7C,MAAM,CAAU,cAAc,GAAG,UAAU,CAAC;IACtD,MAAM,CAAU,iBAAiB,GAAG,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,GAAG,gDAAmC,EAAE,CAAC;IACvH,MAAM,CAAU,aAAa,GAAG,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,GAAG,2CAA8B,EAAE,CAAC;IAC9G,MAAM,CAAU,aAAa,GAAG,GAAG,IAAI,CAAC,cAAc,GAAG,2CAA8B,EAAE,CAAC;IAE1F;;;;;;OAMG;IACH,KAAK,CAAC,GAAG;QACP,IAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,EAAC,EAAE,EAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAC,CAAC,CAAC,CAAC;YAClG,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAG,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,gDAAgD;YAChD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAuB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9D,IAAI,CAAC,YAAY,GAAG,eAAe,CAAC;QACpC,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,aAAa,CAAC;YACnD,IAAI,CAAC,OAAO,CAAC,EAAE,8CAA+B,CAAC;QACjD,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,iBAAiB,CAAC;YACvD,qBAAqB,CAAC,YAAY,GAAC,IAAI,CAAC,OAAO,CAAC,EAAE,mDAAoC,CAAC;QACzF,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,aAAa,CAAC;YACnD,qBAAqB,CAAC,YAAY,GAAC,IAAI,CAAC,OAAO,CAAC,EAAE,8CAA+B,CAAC;QAEpF,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACzD,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAE1E,IAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,EAAC,SAAS,EAAC,CAAC;IACrB,CAAC;IAEgB,oBAAoB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC;IAC3E,yBAAyB,GAAG,GAAG,EAAE;QAChD,IAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,MAAM,GACV,eAAe;YACf,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,mBAAmB,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9E,gBAAgB,CAAC;QAEnB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lexical-model-generator.d.ts","sourceRoot":"","sources":["../../src/lexical-model-generator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"lexical-model-generator.d.ts","sourceRoot":"","sources":["../../src/lexical-model-generator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAoC,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAsB,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD;;;;;GAKG;AACH,qBAAa,qBAAsB,SAAQ,cAAe,YAAW,cAAc;IACjF,MAAM,CAAC,QAAQ,CAAC,WAAW,WAAW;IACtC,MAAM,CAAC,QAAQ,CAAC,aAAa,SAAgD;IAC7E,MAAM,CAAC,QAAQ,CAAC,iBAAiB,SAAsC;IACvE,MAAM,CAAC,QAAQ,CAAC,aAAa,SAA0D;IACvF,MAAM,CAAC,QAAQ,CAAC,aAAa,SAA8E;IAE3G;;;;;;OAMG;IACG,GAAG,IAAI,OAAO,CAAC,eAAe,CAAC;CAmCtC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Generate a Keyman lexical model project
|
|
5
5
|
*/
|
|
6
|
-
import { SourceFilenamePatterns } from '@keymanapp/developer-utils';
|
|
6
|
+
import { SourceFilenamePatterns, ValidIds } from '@keymanapp/developer-utils';
|
|
7
7
|
import { BasicGenerator } from './basic-generator.js';
|
|
8
8
|
import { GeneratorMessages } from './generator-messages.js';
|
|
9
9
|
/**
|
|
@@ -26,7 +26,14 @@ export class LexicalModelGenerator extends BasicGenerator {
|
|
|
26
26
|
* @returns Binary artifacts on success, null on failure.
|
|
27
27
|
*/
|
|
28
28
|
async run() {
|
|
29
|
-
this.
|
|
29
|
+
if (!ValidIds.isValidLexicalModelId(this.options.id)) {
|
|
30
|
+
this.callbacks.reportMessage(GeneratorMessages.Error_InvalidLexicalModelId({ id: this.options.id }));
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
if (!this.preGenerate()) {
|
|
34
|
+
// errors will have been reported in preGenerate
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
30
37
|
const artifacts = this.defaultArtifacts();
|
|
31
38
|
this.templatePath = 'wordlist-lexical-model';
|
|
32
39
|
this.filenameMap[LexicalModelGenerator.SFile_Project] =
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lexical-model-generator.js","sourceRoot":"","sources":["../../src/lexical-model-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAkB,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"lexical-model-generator.js","sourceRoot":"","sources":["../../src/lexical-model-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAkB,sBAAsB,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAE9F,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,OAAO,qBAAsB,SAAQ,cAAc;IACvD,MAAM,CAAU,WAAW,GAAG,OAAO,CAAC;IACtC,MAAM,CAAU,aAAa,GAAG,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,KAAK,CAAC;IAC7E,MAAM,CAAU,iBAAiB,GAAG,GAAG,IAAI,CAAC,YAAY,cAAc,CAAC;IACvE,MAAM,CAAU,aAAa,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG,2CAA8B,EAAE,CAAC;IACvF,MAAM,CAAU,aAAa,GAAG,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,GAAG,2CAA8B,EAAE,CAAC;IAE3G;;;;;;OAMG;IACH,KAAK,CAAC,GAAG;QACP,IAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,EAAC,EAAE,EAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAC,CAAC,CAAC,CAAC;YAClG,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAG,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,gDAAgD;YAChD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAuB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAE9D,IAAI,CAAC,YAAY,GAAG,wBAAwB,CAAC;QAC7C,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,aAAa,CAAC;YACnD,IAAI,CAAC,OAAO,CAAC,EAAE,8CAA+B,CAAC;QACjD,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,aAAa,CAAC;YACnD,qBAAqB,CAAC,YAAY,GAAC,IAAI,CAAC,OAAO,CAAC,EAAE,iDAA6B,CAAC;QAClF,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,iBAAiB,CAAC;YACvD,qBAAqB,CAAC,iBAAiB,CAAC;QAE1C,4DAA4D;QAC5D,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,GAAC,QAAQ,8CAA+B,CAAC;QAChF,IAAG,CAAC,sBAAsB,CAAC,wBAAwB,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC1E,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,iBAAiB,CAAC,gDAAgD,CAAC,EAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAC,CAAC,CAAC,CAAC;QAC1H,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,aAAa,CAAC,GAAG,qBAAqB,CAAC,YAAY,GAAC,eAAe,CAAC;QAE3G,IAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,EAAC,SAAS,EAAC,CAAC;IACrB,CAAC"}
|
package/package.json
CHANGED
|
@@ -25,13 +25,13 @@
|
|
|
25
25
|
"url": "https://github.com/keymanapp/keyman/issues"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@keymanapp/common-types": "18.0.
|
|
29
|
-
"@keymanapp/developer-utils": "18.0.
|
|
30
|
-
"@keymanapp/keyman-version": "18.0.
|
|
28
|
+
"@keymanapp/common-types": "18.0.175-alpha",
|
|
29
|
+
"@keymanapp/developer-utils": "18.0.175-alpha",
|
|
30
|
+
"@keymanapp/keyman-version": "18.0.175-alpha"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"@keymanapp/developer-test-helpers": "18.0.
|
|
34
|
-
"@keymanapp/resources-gosh": "18.0.
|
|
33
|
+
"@keymanapp/developer-test-helpers": "18.0.175-alpha",
|
|
34
|
+
"@keymanapp/resources-gosh": "18.0.175-alpha",
|
|
35
35
|
"@types/mocha": "^10.0.0",
|
|
36
36
|
"@types/node": "^20.4.1",
|
|
37
37
|
"@types/semver": "^7.3.12",
|
|
@@ -54,12 +54,13 @@
|
|
|
54
54
|
"exclude-after-remap": true,
|
|
55
55
|
"exclude": [
|
|
56
56
|
"test/",
|
|
57
|
-
"src/template/"
|
|
57
|
+
"src/template/",
|
|
58
|
+
"src/main.ts"
|
|
58
59
|
]
|
|
59
60
|
},
|
|
60
61
|
"repository": {
|
|
61
62
|
"type": "git",
|
|
62
63
|
"url": "git+https://github.com/keymanapp/keyman.git"
|
|
63
64
|
},
|
|
64
|
-
"version": "18.0.
|
|
65
|
+
"version": "18.0.175-alpha"
|
|
65
66
|
}
|