@keymanapp/kmc-model 17.0.91-alpha → 17.0.93-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.
@@ -1 +1 @@
1
- {"version":3,"file":"build-trie.d.ts","sourceRoot":"","sources":["../../src/build-trie.ts"],"names":[],"mappings":"AAMA;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG;IAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,CAAC;AAEpD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAU7G;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEpF;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEpF"}
1
+ {"version":3,"file":"build-trie.d.ts","sourceRoot":"","sources":["../../src/build-trie.ts"],"names":[],"mappings":"AAOA;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG;IAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,CAAC;AAEpD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAU7G;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAGpF;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAGpF"}
@@ -1,5 +1,6 @@
1
1
  import { readFileSync } from "fs";
2
- import { log, KeymanCompilerError } from "./model-compiler-errors.js";
2
+ import { ModelCompilerError, ModelCompilerMessages } from "./model-compiler-errors.js";
3
+ import { callbacks } from "./compiler-callbacks.js";
3
4
  // Supports LF or CRLF line terminators.
4
5
  const NEWLINE_SEPARATOR = /\u000d?\u000a/;
5
6
  /**
@@ -12,7 +13,7 @@ const NEWLINE_SEPARATOR = /\u000d?\u000a/;
12
13
  */
13
14
  export function createTrieDataStructure(filenames, searchTermToKey) {
14
15
  if (typeof searchTermToKey !== "function") {
15
- throw new TypeError("searchTermToKey must be explicitly specified");
16
+ throw new ModelCompilerError(ModelCompilerMessages.Error_SearchTermToKeyMustBeExplicitlySpecified());
16
17
  }
17
18
  // Make one big word list out of all of the filenames provided.
18
19
  let wordlist = {};
@@ -32,6 +33,7 @@ export function createTrieDataStructure(filenames, searchTermToKey) {
32
33
  * @param filename filename of the word list
33
34
  */
34
35
  export function parseWordListFromFilename(wordlist, filename) {
36
+ ModelCompilerMessages.filename = filename;
35
37
  _parseWordList(wordlist, new WordListFromFilename(filename));
36
38
  }
37
39
  /**
@@ -42,6 +44,7 @@ export function parseWordListFromFilename(wordlist, filename) {
42
44
  * @param filename filename of the word list
43
45
  */
44
46
  export function parseWordListFromContents(wordlist, contents) {
47
+ ModelCompilerMessages.filename = undefined;
45
48
  _parseWordList(wordlist, new WordListFromMemory(contents));
46
49
  }
47
50
  /**
@@ -74,6 +77,7 @@ function _parseWordList(wordlist, source) {
74
77
  const TAB = "\t";
75
78
  let wordsSeenInThisFile = new Set();
76
79
  for (let [lineno, line] of source.lines()) {
80
+ ModelCompilerMessages.line = lineno;
77
81
  // Remove the byte-order mark (BOM) from the beginning of the string.
78
82
  // Because `contents` can be the concatenation of several files, we have to remove
79
83
  // the BOM from every possible start of file -- i.e., beginning of every line.
@@ -88,7 +92,7 @@ function _parseWordList(wordlist, source) {
88
92
  wordform = wordform.normalize('NFC');
89
93
  if (original !== wordform) {
90
94
  // Mixed normalization forms are yucky! Warn about it.
91
- log(KeymanCompilerError.CWARN_MixedNormalizationForms, `“${wordform}” is not in Unicode NFC. Automatically converting to NFC.`, { filename: source.name, lineno });
95
+ callbacks.reportMessage(ModelCompilerMessages.Warn_MixedNormalizationForms({ wordform: wordform }));
92
96
  }
93
97
  wordform = wordform.trim();
94
98
  countText = (countText || '').trim().replace(/,/g, '');
@@ -102,7 +106,7 @@ function _parseWordList(wordlist, source) {
102
106
  if (wordsSeenInThisFile.has(wordform)) {
103
107
  // The same word seen across multiple files is fine,
104
108
  // but a word seen multiple times in one file is a problem!
105
- log(KeymanCompilerError.CWARN_DuplicateWordInSameFile, `duplicate word “${wordform}” found in same file; summing counts`, { filename: source.name, lineno });
109
+ callbacks.reportMessage(ModelCompilerMessages.Warn_DuplicateWordInSameFile({ wordform: wordform }));
106
110
  }
107
111
  wordsSeenInThisFile.add(wordform);
108
112
  wordlist[wordform] = (isNaN(wordlist[wordform]) ? 0 : wordlist[wordform] || 0) + count;
@@ -322,7 +326,7 @@ var Trie;
322
326
  .reduce((acc, count) => acc + count, 0);
323
327
  }
324
328
  if (isNaN(val)) {
325
- console.error("Unexpected NaN has appeared!");
329
+ throw new Error("Unexpected NaN has appeared!");
326
330
  }
327
331
  return val;
328
332
  }
@@ -352,7 +356,7 @@ function detectEncoding(filename) {
352
356
  else if (buffer[0] == 0xFE && buffer[1] == 0xFF) {
353
357
  // Big Endian, is NOT supported because Node does not support it (???)
354
358
  // See: https://stackoverflow.com/a/14551669/6626414
355
- throw new Error('UTF-16BE is unsupported');
359
+ throw new ModelCompilerError(ModelCompilerMessages.Error_UTF16BEUnsupported());
356
360
  }
357
361
  else {
358
362
  // Assume its in UTF-8, with or without a BOM.
@@ -1 +1 @@
1
- {"version":3,"file":"build-trie.js","sourceRoot":"","sources":["../../src/build-trie.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-trie.js","sourceRoot":"","sources":["../../src/build-trie.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { CompilerCallbacks } from "@keymanapp/common-types";
2
+ export declare let callbacks: CompilerCallbacks;
3
+ export declare function setCompilerCallbacks(c: CompilerCallbacks): void;
4
+ //# sourceMappingURL=compiler-callbacks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiler-callbacks.d.ts","sourceRoot":"","sources":["../../src/compiler-callbacks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,eAAO,IAAI,SAAS,EAAE,iBAAiB,CAAC;AAExC,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,iBAAiB,QAExD"}
@@ -0,0 +1,5 @@
1
+ export let callbacks;
2
+ export function setCompilerCallbacks(c) {
3
+ callbacks = c;
4
+ }
5
+ //# sourceMappingURL=compiler-callbacks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiler-callbacks.js","sourceRoot":"","sources":["../../src/compiler-callbacks.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAI,SAA4B,CAAC;AAExC,MAAM,UAAU,oBAAoB,CAAC,CAAoB;IACvD,SAAS,GAAG,CAAC,CAAC;AAChB,CAAC"}
@@ -12,8 +12,5 @@ export default class LexicalModelCompiler {
12
12
  */
13
13
  generateLexicalModelCode(model_id: string, modelSource: LexicalModelSource, sourcePath: string): string;
14
14
  transpileSources(sources: Array<string>): Array<string>;
15
- logError(s: string): void;
16
- }
17
- export declare class ModelSourceError extends Error {
18
15
  }
19
16
  //# sourceMappingURL=lexical-model-compiler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lexical-model-compiler.d.ts","sourceRoot":"","sources":["../../src/lexical-model-compiler.ts"],"names":[],"mappings":";AAaA,OAAO,EAAE,kBAAkB,EAA0C,MAAM,oBAAoB,CAAC;AAEhG,MAAM,CAAC,OAAO,OAAO,oBAAoB;IAEvC;;;;;;;;OAQG;IACH,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM;IAiE9F,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAUvD,QAAQ,CAAC,CAAC,EAAE,MAAM;CAGnB;AAED,qBAAa,gBAAiB,SAAQ,KAAK;CAC1C"}
1
+ {"version":3,"file":"lexical-model-compiler.d.ts","sourceRoot":"","sources":["../../src/lexical-model-compiler.ts"],"names":[],"mappings":";AAaA,OAAO,EAAE,kBAAkB,EAA0C,MAAM,oBAAoB,CAAC;AAGhG,MAAM,CAAC,OAAO,OAAO,oBAAoB;IAEvC;;;;;;;;OAQG;IACH,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM;IAiE9F,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;CAUxD"}
@@ -9,6 +9,7 @@ import { createTrieDataStructure } from "./build-trie.js";
9
9
  import { ModelDefinitions } from "./model-definitions.js";
10
10
  import { decorateWithJoin } from "./join-word-breaker-decorator.js";
11
11
  import { decorateWithScriptOverrides } from "./script-overrides-decorator.js";
12
+ import { ModelCompilerError, ModelCompilerMessages } from "./model-compiler-errors.js";
12
13
  export default class LexicalModelCompiler {
13
14
  /**
14
15
  * Returns the generated code for the model that will ultimately be loaded by
@@ -36,7 +37,7 @@ export default class LexicalModelCompiler {
36
37
  func += `LMLayerWorker.loadModel(new ${modelSource.rootClass}());\n`;
37
38
  break;
38
39
  case "fst-foma-1.0":
39
- throw new ModelSourceError(`Unimplemented model format: ${modelSource.format}`);
40
+ throw new ModelCompilerError(ModelCompilerMessages.Error_UnimplementedModelFormat({ format: modelSource.format }));
40
41
  case "trie-1.0":
41
42
  // Convert all relative path names to paths relative to the enclosing
42
43
  // directory. This way, we'll read the files relative to the model.ts
@@ -64,7 +65,7 @@ export default class LexicalModelCompiler {
64
65
  func += `}));\n`;
65
66
  break;
66
67
  default:
67
- throw new ModelSourceError(`Unknown model format: ${modelSource.format}`);
68
+ throw new ModelCompilerError(ModelCompilerMessages.Error_UnknownModelFormat({ format: modelSource.format }));
68
69
  }
69
70
  func += fileSuffix;
70
71
  return func;
@@ -78,14 +79,8 @@ export default class LexicalModelCompiler {
78
79
  }).outputText);
79
80
  }
80
81
  ;
81
- logError(s) {
82
- console.error(require('chalk').red(s));
83
- }
84
- ;
85
82
  }
86
83
  ;
87
- export class ModelSourceError extends Error {
88
- }
89
84
  /**
90
85
  * Returns a JavaScript expression (as a string) that can serve as a word
91
86
  * breaking function.
@@ -146,7 +141,7 @@ function normalizeWordBreakerSpec(wordBreakerSpec) {
146
141
  return wordBreakerSpec;
147
142
  }
148
143
  else {
149
- throw new Error(`Unknown word breaker: ${wordBreakerSpec}`);
144
+ throw new ModelCompilerError(ModelCompilerMessages.Error_UnknownWordBreaker({ spec: wordBreakerSpec.toString() }));
150
145
  }
151
146
  }
152
147
  function isSimpleWordBreaker(spec) {
@@ -1 +1 @@
1
- {"version":3,"file":"lexical-model-compiler.js","sourceRoot":"","sources":["../../src/lexical-model-compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lexical-model-compiler.js","sourceRoot":"","sources":["../../src/lexical-model-compiler.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,16 @@
1
+ import { CompilerCallbacks } from '@keymanapp/common-types';
1
2
  import { LexicalModelSource } from './lexical-model.js';
2
3
  /**
3
4
  * Compiles a model.ts file, using paths relative to its location.
4
5
  *
5
6
  * @param filename path to model.ts source.
6
- * @return model source code
7
+ * @return model source code, or null on error
7
8
  */
8
- export declare function compileModel(filename: string): string;
9
+ export declare function compileModel(filename: string, callbacks: CompilerCallbacks): string;
9
10
  /**
10
11
  * Loads a lexical model's source module from the given filename.
11
12
  *
12
13
  * @param filename path to the model source file.
13
14
  */
14
- export declare function loadFromFilename(filename: string): LexicalModelSource;
15
+ export declare function loadFromFilename(filename: string, callbacks: CompilerCallbacks): LexicalModelSource;
15
16
  //# sourceMappingURL=main.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMrD;AAWD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,CA0BrE"}
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAO5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGxD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,GAAG,MAAM,CAiBnF;AAWD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,GAAG,kBAAkB,CA6BnG"}
package/build/src/main.js CHANGED
@@ -1,33 +1,45 @@
1
1
  import * as fs from 'fs';
2
2
  import * as path from 'path';
3
3
  import ts from 'typescript';
4
+ import { setCompilerCallbacks } from './compiler-callbacks.js';
4
5
  import LexicalModelCompiler from './lexical-model-compiler.js';
6
+ import { ModelCompilerError, ModelCompilerMessages } from './model-compiler-errors.js';
5
7
  /**
6
8
  * Compiles a model.ts file, using paths relative to its location.
7
9
  *
8
10
  * @param filename path to model.ts source.
9
- * @return model source code
11
+ * @return model source code, or null on error
10
12
  */
11
- export function compileModel(filename) {
12
- let modelSource = loadFromFilename(filename);
13
- let containingDirectory = path.dirname(filename);
14
- return (new LexicalModelCompiler)
15
- .generateLexicalModelCode('<unknown>', modelSource, containingDirectory);
13
+ export function compileModel(filename, callbacks) {
14
+ setCompilerCallbacks(callbacks);
15
+ try {
16
+ let modelSource = loadFromFilename(filename, callbacks);
17
+ let containingDirectory = path.dirname(filename);
18
+ return (new LexicalModelCompiler)
19
+ .generateLexicalModelCode('<unknown>', modelSource, containingDirectory);
20
+ }
21
+ catch (e) {
22
+ callbacks.reportMessage(e instanceof ModelCompilerError
23
+ ? e.event
24
+ : ModelCompilerMessages.Fatal_UnexpectedException({ e: e }));
25
+ }
26
+ return null;
16
27
  }
17
28
  /**
18
29
  * Loads a lexical model's source module from the given filename.
19
30
  *
20
31
  * @param filename path to the model source file.
21
32
  */
22
- export function loadFromFilename(filename) {
33
+ export function loadFromFilename(filename, callbacks) {
34
+ setCompilerCallbacks(callbacks);
23
35
  let sourceCode = fs.readFileSync(filename, 'utf8');
24
36
  // Compile the module to JavaScript code.
25
37
  // NOTE: transpile module does a very simple TS to JS compilation.
26
38
  // It DOES NOT check for types!
27
39
  let compilationOutput = ts.transpile(sourceCode, {
28
40
  // Our runtime only supports ES3 with Node/CommonJS modules on Android 5.0.
29
- // When we drop Android 5.0 support, we can update this to a `ScriptTarget`
30
- // matrix against target version of Keyman, here and in
41
+ // When we drop Android 5.0 support, we can update this to a `ScriptTarget`
42
+ // matrix against target version of Keyman, here and in
31
43
  // lexical-model-compiler.ts.
32
44
  target: ts.ScriptTarget.ES3,
33
45
  module: ts.ModuleKind.CommonJS,
@@ -39,7 +51,8 @@ export function loadFromFilename(filename) {
39
51
  let module = eval(moduleCode);
40
52
  module(moduleExports);
41
53
  if (!moduleExports['__esModule'] || !moduleExports['default']) {
42
- throw new Error(`Model source '${filename}' does have a default export. Did you remember to write \`export default source;\`?`);
54
+ ModelCompilerMessages.filename = filename;
55
+ throw new ModelCompilerError(ModelCompilerMessages.Error_NoDefaultExport());
43
56
  }
44
57
  return moduleExports['default'];
45
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,oBAAoB,MAAM,6BAA6B,CAAC;AAG/D;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,QAAgB;IAC3C,IAAI,WAAW,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEjD,OAAO,CAAC,IAAI,oBAAoB,CAAC;SAC9B,wBAAwB,CAAC,WAAW,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC;AAC7E,CAAC;AAWD;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,IAAI,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnD,yCAAyC;IACzC,kEAAkE;IAClE,+BAA+B;IAC/B,IAAI,iBAAiB,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE;QAC/C,2EAA2E;QAC3E,4EAA4E;QAC5E,wDAAwD;QACxD,6BAA6B;QAC7B,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG;QAC3B,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ;KAC/B,CAAC,CAAC;IACH,mEAAmE;IACnE,IAAI,UAAU,GAAG,qBAAqB,GAAG,iBAAiB,GAAG,IAAI,CAAC;IAElE,mEAAmE;IACnE,IAAI,aAAa,GAA0B,EAAE,CAAC;IAC9C,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9B,MAAM,CAAC,aAAa,CAAC,CAAC;IAEtB,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE;QAC7D,MAAM,IAAI,KAAK,CAAC,iBAAiB,QAAQ,qFAAqF,CAAC,CAAC;KACjI;IAED,OAAO,aAAa,CAAC,SAAS,CAAuB,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,oBAAoB,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEvF;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,QAAgB,EAAE,SAA4B;IACzE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAEhC,IAAI;QACF,IAAI,WAAW,GAAG,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACxD,IAAI,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEjD,OAAO,CAAC,IAAI,oBAAoB,CAAC;aAC9B,wBAAwB,CAAC,WAAW,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC;KAC5E;IAAC,OAAM,CAAC,EAAE;QACT,SAAS,CAAC,aAAa,CACrB,CAAC,YAAY,kBAAkB;YAC/B,CAAC,CAAC,CAAC,CAAC,KAAK;YACT,CAAC,CAAC,qBAAqB,CAAC,yBAAyB,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CACzD,CAAC;KACH;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAWD;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,SAA4B;IAC7E,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAEhC,IAAI,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnD,yCAAyC;IACzC,kEAAkE;IAClE,+BAA+B;IAC/B,IAAI,iBAAiB,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE;QAC/C,2EAA2E;QAC3E,2EAA2E;QAC3E,uDAAuD;QACvD,6BAA6B;QAC7B,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG;QAC3B,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ;KAC/B,CAAC,CAAC;IACH,mEAAmE;IACnE,IAAI,UAAU,GAAG,qBAAqB,GAAG,iBAAiB,GAAG,IAAI,CAAC;IAElE,mEAAmE;IACnE,IAAI,aAAa,GAA0B,EAAE,CAAC;IAC9C,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9B,MAAM,CAAC,aAAa,CAAC,CAAC;IAEtB,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE;QAC7D,qBAAqB,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC1C,MAAM,IAAI,kBAAkB,CAAC,qBAAqB,CAAC,qBAAqB,EAAE,CAAC,CAAC;KAC7E;IAED,OAAO,aAAa,CAAC,SAAS,CAAuB,CAAC;AACxD,CAAC"}
@@ -1,77 +1,49 @@
1
- /**
2
- * Log levels.
3
- *
4
- * Note: Currently, this acts like a bit set, where the upper 4 bits of an
5
- * unsigned 16 bit value are the log level flags.
6
- *
7
- * Warning: even though these look like bitmasks, these flags may not be
8
- * combined.
9
- */
10
- export declare enum LogLevel {
11
- CERR_FATAL = 32768,
12
- CERR_ERROR = 16384,
13
- CERR_WARNING = 8192,
14
- CERR_HINT = 4096
15
- }
16
- /**
17
- * Error codes. Use these when logging messages.
18
- *
19
- * Extends https://github.com/keymanapp/keyman/blob/99db3c0d2448f448242e6397f9d72e9a7ccee4b9/windows/src/global/inc/Comperr.h
20
- */
21
- export declare enum KeymanCompilerError {
22
- CERR_LEXICAL_MODEL_MIN = 2048,
23
- CERR_LEXICAL_MODEL_MAX = 2303,
24
- CERR_FATAL_LM = 34816,
25
- CERR_ERROR_LM = 18432,
26
- CERR_WARN_LM = 10240,
27
- CWARN_MixedNormalizationForms = 10241,
28
- CWARN_DuplicateWordInSameFile = 10242,
29
- CERR_HINT_LM = 6144,
30
- CWARN_TooManyErrorsOrWarnings = 8359
31
- }
32
- /**
33
- * How many errors or warnings are too many!
34
- */
35
- export declare const MAX_MESSAGES = 100;
36
- /**
37
- * Logs compiler messages (warnings, errors, logs).
38
- *
39
- * @param code Error code
40
- * @param message A helpful message!
41
- * @param source [optional] the filename/line number in the source that induced this error
42
- *
43
- * @see https://github.com/keymanapp/keyman/blob/99db3c0d2448f448242e6397f9d72e9a7ccee4b9/windows/src/developer/TIKE/project/Keyman.Developer.System.Project.ProjectLog.pas#L60-L77
44
- */
45
- export declare function log(code: KeymanCompilerError, message: string, source?: FilenameAndLineNo): void;
46
- /**
47
- * Override where log messages go.
48
- *
49
- * @param fn The desired log message handler.
50
- */
51
- export declare function redirectLogMessagesTo(fn: (log: LogMessage) => void): void;
52
- /**
53
- * Reset the log message handler to the default.
54
- */
55
- export declare function resetLogMessageHandler(): void;
56
- /**
57
- * Prints log messages to stdout. The default log action.
58
- */
59
- export declare function printLogs(log: LogMessage): void;
60
- /**
61
- * Duct tapes together a filename and a line number of a log.
62
- */
63
- interface FilenameAndLineNo {
64
- readonly filename: string;
65
- readonly lineno: number;
1
+ import { CompilerEvent } from "@keymanapp/common-types";
2
+ export declare class ModelCompilerMessages {
3
+ static line: number;
4
+ static filename: string;
5
+ static Fatal_UnexpectedException: (o: {
6
+ e: any;
7
+ }) => CompilerEvent;
8
+ static FATAL_UnexpectedException: number;
9
+ static Warn_MixedNormalizationForms: (o: {
10
+ wordform: string;
11
+ }) => CompilerEvent;
12
+ static WARN_MixedNormalizationForms: number;
13
+ static Warn_DuplicateWordInSameFile: (o: {
14
+ wordform: string;
15
+ }) => CompilerEvent;
16
+ static WARN_DuplicateWordInSameFile: number;
17
+ static Error_UnimplementedModelFormat: (o: {
18
+ format: string;
19
+ }) => CompilerEvent;
20
+ static ERROR_UnimplementedModelFormat: number;
21
+ static Error_UnknownModelFormat: (o: {
22
+ format: string;
23
+ }) => CompilerEvent;
24
+ static ERROR_UnknownModelFormat: number;
25
+ static Error_NoDefaultExport: () => CompilerEvent;
26
+ static ERROR_NoDefaultExport: number;
27
+ static Error_SearchTermToKeyMustBeExplicitlySpecified: () => CompilerEvent;
28
+ static ERROR_SearchTermToKeyMustBeExplicitlySpecified: number;
29
+ static Error_UTF16BEUnsupported: () => CompilerEvent;
30
+ static ERROR_UTF16BEUnsupported: number;
31
+ static Error_UnknownWordBreaker: (o: {
32
+ spec: string;
33
+ }) => CompilerEvent;
34
+ static ERROR_UnknownWordBreaker: number;
35
+ static Error_UnsupportedScriptOverride: (o: {
36
+ option: string;
37
+ }) => CompilerEvent;
38
+ static ERROR_UnsupportedScriptOverride: number;
66
39
  }
67
40
  /**
68
- * A log message that knows how to format itself.
41
+ * A ModelCompilerError should be thrown when an unrecoverable error occurs that
42
+ * would block further compilation. It will be caught in the top-most compiler
43
+ * API endpoint and converted into a callback message.
69
44
  */
70
- export interface LogMessage {
71
- readonly code: KeymanCompilerError;
72
- readonly level: LogLevel;
73
- readonly message: string;
74
- format(): string;
45
+ export declare class ModelCompilerError extends Error {
46
+ event: CompilerEvent;
47
+ constructor(event: CompilerEvent);
75
48
  }
76
- export {};
77
49
  //# sourceMappingURL=model-compiler-errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-compiler-errors.d.ts","sourceRoot":"","sources":["../../src/model-compiler-errors.ts"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AACH,oBAAY,QAAQ;IAClB,UAAU,QAAS;IACnB,UAAU,QAAS;IACnB,YAAY,OAAS;IACrB,SAAS,OAAS;CACnB;AAED;;;;GAIG;AACH,oBAAY,mBAAmB;IAC7B,sBAAsB,OAAS;IAC/B,sBAAsB,OAAS;IAG/B,aAAa,QAA+C;IAG5D,aAAa,QAA+C;IAG5D,YAAY,QAAiD;IAE7D,6BAA6B,QAAS;IACtC,6BAA6B,QAAS;IAEtC,YAAY,OAA8C;IAI1D,6BAA6B,OAAS;CACvC;AAcD;;GAEG;AACH,eAAO,MAAM,YAAY,MAAM,CAAC;AAYhC;;;;;;;;GAQG;AACH,wBAAgB,GAAG,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,QAkBzF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,QAElE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,SAGrC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,CAE/C;AAED;;GAEG;AACH,UAAU,iBAAiB;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,MAAM,IAAI,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"model-compiler-errors.d.ts","sourceRoot":"","sources":["../../src/model-compiler-errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAgBvG,qBAAa,qBAAqB;IAEhC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;IAExB,MAAM,CAAC,yBAAyB,MAAM;QAAC,CAAC,EAAE,GAAG,CAAA;KAAC,mBACgG;IAC9I,MAAM,CAAC,yBAAyB,SAAqB;IAErD,MAAM,CAAC,4BAA4B,MAAM;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,mBACkB;IAC7E,MAAM,CAAC,4BAA4B,SAAoB;IAEvD,MAAM,CAAC,4BAA4B,MAAM;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,mBACY;IACvE,MAAM,CAAC,4BAA4B,SAAqB;IAExD,MAAM,CAAC,8BAA8B,MAAM;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,mBACd;IAC7C,MAAM,CAAC,8BAA8B,SAAqB;IAE1D,MAAM,CAAC,wBAAwB,MAAM;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,mBACR;IAC7C,MAAM,CAAC,wBAAwB,SAAqB;IAEpD,MAAM,CAAC,qBAAqB,sBACwE;IACpG,MAAM,CAAC,qBAAqB,SAAqB;IAEjD,MAAM,CAAC,8CAA8C,sBACH;IAClD,MAAM,CAAC,8CAA8C,SAAqB;IAE1E,MAAM,CAAC,wBAAwB,sBAAqE;IACpG,MAAM,CAAC,wBAAwB,SAAqB;IAEpD,MAAM,CAAC,wBAAwB,MAAM;QAAC,IAAI,EAAC,MAAM,CAAA;KAAC,mBACb;IACrC,MAAM,CAAC,wBAAwB,SAAqB;IAEpD,MAAM,CAAC,+BAA+B,MAAM;QAAC,MAAM,EAAC,MAAM,CAAA;KAAC,mBACb;IAC9C,MAAM,CAAC,+BAA+B,SAAqB;CAC5D;AAED;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IACxB,KAAK,EAAE,aAAa;gBAApB,KAAK,EAAE,aAAa;CAGxC"}
@@ -1,156 +1,54 @@
1
- // TODO: merge with kmc keyboard-compiler errors
2
- /**
3
- * Log levels.
4
- *
5
- * Note: Currently, this acts like a bit set, where the upper 4 bits of an
6
- * unsigned 16 bit value are the log level flags.
7
- *
8
- * Warning: even though these look like bitmasks, these flags may not be
9
- * combined.
10
- */
11
- export var LogLevel;
12
- (function (LogLevel) {
13
- LogLevel[LogLevel["CERR_FATAL"] = 32768] = "CERR_FATAL";
14
- LogLevel[LogLevel["CERR_ERROR"] = 16384] = "CERR_ERROR";
15
- LogLevel[LogLevel["CERR_WARNING"] = 8192] = "CERR_WARNING";
16
- LogLevel[LogLevel["CERR_HINT"] = 4096] = "CERR_HINT";
17
- })(LogLevel || (LogLevel = {}));
18
- ;
19
- /**
20
- * Error codes. Use these when logging messages.
21
- *
22
- * Extends https://github.com/keymanapp/keyman/blob/99db3c0d2448f448242e6397f9d72e9a7ccee4b9/windows/src/global/inc/Comperr.h
23
- */
24
- export var KeymanCompilerError;
25
- (function (KeymanCompilerError) {
26
- KeymanCompilerError[KeymanCompilerError["CERR_LEXICAL_MODEL_MIN"] = 2048] = "CERR_LEXICAL_MODEL_MIN";
27
- KeymanCompilerError[KeymanCompilerError["CERR_LEXICAL_MODEL_MAX"] = 2303] = "CERR_LEXICAL_MODEL_MAX";
28
- KeymanCompilerError[KeymanCompilerError["CERR_FATAL_LM"] = 34816] = "CERR_FATAL_LM";
29
- /* Place all fatal LM compiler errors here! */
30
- KeymanCompilerError[KeymanCompilerError["CERR_ERROR_LM"] = 18432] = "CERR_ERROR_LM";
31
- /* Place all recoverable LM compiler errors here! */
32
- KeymanCompilerError[KeymanCompilerError["CERR_WARN_LM"] = 10240] = "CERR_WARN_LM";
33
- /* Place all LM compiler warnings here! */
34
- KeymanCompilerError[KeymanCompilerError["CWARN_MixedNormalizationForms"] = 10241] = "CWARN_MixedNormalizationForms";
35
- KeymanCompilerError[KeymanCompilerError["CWARN_DuplicateWordInSameFile"] = 10242] = "CWARN_DuplicateWordInSameFile";
36
- KeymanCompilerError[KeymanCompilerError["CERR_HINT_LM"] = 6144] = "CERR_HINT_LM";
37
- /* Place all LM compiler hints here! */
38
- /* Errors that are not specific to the lexical model compiler, from comperr.h: */
39
- KeymanCompilerError[KeymanCompilerError["CWARN_TooManyErrorsOrWarnings"] = 8359] = "CWARN_TooManyErrorsOrWarnings";
40
- })(KeymanCompilerError || (KeymanCompilerError = {}));
41
- /**
42
- * Human-readable titles for the various log levels.
43
- *
44
- * Taken from https://github.com/keymanapp/keyman/blob/d83cfffe511ce65b781f919e89e3693146844849/windows/src/developer/TIKE/project/Keyman.Developer.System.Project.ProjectLog.pas#L39-L46
45
- */
46
- const LOG_LEVEL_TITLE = {
47
- [LogLevel.CERR_HINT]: 'Hint',
48
- [LogLevel.CERR_WARNING]: 'Warning',
49
- [LogLevel.CERR_ERROR]: 'Error',
50
- [LogLevel.CERR_FATAL]: 'Fatal Error',
1
+ import { CompilerErrorNamespace, CompilerErrorSeverity } from "@keymanapp/common-types";
2
+ const Namespace = CompilerErrorNamespace.ModelCompiler;
3
+ // const SevInfo = CompilerErrorSeverity.Info | Namespace;
4
+ // const SevHint = CompilerErrorSeverity.Hint | Namespace;
5
+ const SevWarn = CompilerErrorSeverity.Warn | Namespace;
6
+ const SevError = CompilerErrorSeverity.Error | Namespace;
7
+ const SevFatal = CompilerErrorSeverity.Fatal | Namespace;
8
+ const m = (code, message) => {
9
+ return {
10
+ line: ModelCompilerMessages.line,
11
+ filename: ModelCompilerMessages.filename,
12
+ code,
13
+ message
14
+ };
51
15
  };
52
- /**
53
- * How many errors or warnings are too many!
54
- */
55
- export const MAX_MESSAGES = 100;
56
- /**
57
- * Direct where log messages go.
58
- */
59
- let _logHandler = printLogs;
60
- /**
61
- * How many logs or warnings have been witnessed so far.
62
- */
63
- let _messagesSeen = 0;
64
- /**
65
- * Logs compiler messages (warnings, errors, logs).
66
- *
67
- * @param code Error code
68
- * @param message A helpful message!
69
- * @param source [optional] the filename/line number in the source that induced this error
70
- *
71
- * @see https://github.com/keymanapp/keyman/blob/99db3c0d2448f448242e6397f9d72e9a7ccee4b9/windows/src/developer/TIKE/project/Keyman.Developer.System.Project.ProjectLog.pas#L60-L77
72
- */
73
- export function log(code, message, source) {
74
- // Ignore the request if there are too many messages
75
- if (_messagesSeen > MAX_MESSAGES)
76
- return;
77
- let logMessage = source
78
- ? new LogMessageFromSource(code, message, source)
79
- : new OrdinaryLogMessage(code, message);
80
- _logHandler(logMessage);
81
- _messagesSeen++;
82
- if (_messagesSeen > MAX_MESSAGES) {
83
- _logHandler(new OrdinaryLogMessage(KeymanCompilerError.CWARN_TooManyErrorsOrWarnings, `More than ${MAX_MESSAGES} warnings or errors received; suppressing further messages`));
84
- }
85
- }
86
- /**
87
- * Override where log messages go.
88
- *
89
- * @param fn The desired log message handler.
90
- */
91
- export function redirectLogMessagesTo(fn) {
92
- _logHandler = fn;
93
- }
94
- /**
95
- * Reset the log message handler to the default.
96
- */
97
- export function resetLogMessageHandler() {
98
- _logHandler = printLogs;
99
- _messagesSeen = 0;
100
- }
101
- /**
102
- * Prints log messages to stdout. The default log action.
103
- */
104
- export function printLogs(log) {
105
- console.log(log.format());
106
- }
107
- /**
108
- * Concrete implementation of the log message.
109
- */
110
- class OrdinaryLogMessage {
111
- code;
112
- message;
113
- constructor(code, message) {
114
- this.code = code;
115
- this.message = message;
116
- }
117
- get level() {
118
- return this.code & 0xF000;
119
- }
120
- determineLogLevelTitle() {
121
- return LOG_LEVEL_TITLE[this.level] || '';
122
- }
123
- format() {
124
- let prefix = this.determineLogLevelTitle();
125
- if (prefix)
126
- prefix = `${prefix}: `;
127
- return `${prefix}${h(this.code)} ${this.message}`;
128
- }
129
- }
130
- /**
131
- * A log message with a filename and line number.
132
- */
133
- class LogMessageFromSource extends OrdinaryLogMessage {
134
- filename;
135
- lineno;
136
- constructor(code, message, source) {
137
- super(code, message);
138
- this.filename = source.filename;
139
- this.lineno = source.lineno;
140
- }
141
- format() {
142
- let originalMessage = super.format();
143
- return `${this.filename} (${this.lineno}): ${originalMessage}`;
144
- }
16
+ export class ModelCompilerMessages {
17
+ // Context added to all messages
18
+ static line;
19
+ static filename;
20
+ static Fatal_UnexpectedException = (o) => m(this.FATAL_UnexpectedException, `Unexpected exception: ${(o.e ?? 'unknown error').toString()}\n\nCall stack:\n${(o.e instanceof Error ? o.e.stack : (new Error()).stack)}`);
21
+ static FATAL_UnexpectedException = SevFatal | 0x0001;
22
+ static Warn_MixedNormalizationForms = (o) => m(this.WARN_MixedNormalizationForms, `“${o.wordform}” is not in Unicode NFC. Automatically converting to NFC.`);
23
+ static WARN_MixedNormalizationForms = SevWarn | 0x0002;
24
+ static Warn_DuplicateWordInSameFile = (o) => m(this.WARN_DuplicateWordInSameFile, `duplicate word “${o.wordform}” found in same file; summing counts`);
25
+ static WARN_DuplicateWordInSameFile = SevFatal | 0x0003;
26
+ static Error_UnimplementedModelFormat = (o) => m(this.ERROR_UnimplementedModelFormat, `Unimplemented model format: ${o.format}`);
27
+ static ERROR_UnimplementedModelFormat = SevError | 0x0004;
28
+ static Error_UnknownModelFormat = (o) => m(this.ERROR_UnknownModelFormat, `Unimplemented model format: ${o.format}`);
29
+ static ERROR_UnknownModelFormat = SevError | 0x0005;
30
+ static Error_NoDefaultExport = () => m(this.ERROR_NoDefaultExport, `Model source does have a default export. Did you remember to write \`export default source;\`?`);
31
+ static ERROR_NoDefaultExport = SevError | 0x0006;
32
+ static Error_SearchTermToKeyMustBeExplicitlySpecified = () => m(this.ERROR_SearchTermToKeyMustBeExplicitlySpecified, "searchTermToKey must be explicitly specified");
33
+ static ERROR_SearchTermToKeyMustBeExplicitlySpecified = SevError | 0x0007;
34
+ static Error_UTF16BEUnsupported = () => m(this.ERROR_UTF16BEUnsupported, 'UTF-16BE is unsupported');
35
+ static ERROR_UTF16BEUnsupported = SevError | 0x0008;
36
+ static Error_UnknownWordBreaker = (o) => m(this.ERROR_UnknownWordBreaker, `Unknown word breaker: ${o.spec}`);
37
+ static ERROR_UnknownWordBreaker = SevError | 0x0009;
38
+ static Error_UnsupportedScriptOverride = (o) => m(this.ERROR_UnsupportedScriptOverride, `Unsupported script override: ${o.option}`);
39
+ static ERROR_UnsupportedScriptOverride = SevError | 0x000A;
145
40
  }
41
+ ;
146
42
  /**
147
- * Format a number as a zero-padded 4 digit hexadecimal.
43
+ * A ModelCompilerError should be thrown when an unrecoverable error occurs that
44
+ * would block further compilation. It will be caught in the top-most compiler
45
+ * API endpoint and converted into a callback message.
148
46
  */
149
- function h(n) {
150
- let formatted = n.toString(16).toUpperCase();
151
- if (formatted.length < 4) {
152
- formatted = '0'.repeat(4 - formatted.length);
47
+ export class ModelCompilerError extends Error {
48
+ event;
49
+ constructor(event) {
50
+ super(event.message);
51
+ this.event = event;
153
52
  }
154
- return formatted;
155
53
  }
156
54
  //# sourceMappingURL=model-compiler-errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-compiler-errors.js","sourceRoot":"","sources":["../../src/model-compiler-errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-compiler-errors.js","sourceRoot":"","sources":["../../src/model-compiler-errors.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"script-overrides-decorator.d.ts","sourceRoot":"","sources":["../../src/script-overrides-decorator.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,sBAAsB,YAgB/D,MAAM,KAAG,IAAI,EAAE,CAwDxD"}
1
+ {"version":3,"file":"script-overrides-decorator.d.ts","sourceRoot":"","sources":["../../src/script-overrides-decorator.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAG5D,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,sBAAsB,YAgB/D,MAAM,KAAG,IAAI,EAAE,CAwDxD"}
@@ -1,6 +1,7 @@
1
+ import { ModelCompilerError, ModelCompilerMessages } from "./model-compiler-errors.js";
1
2
  export function decorateWithScriptOverrides(breaker, option) {
2
3
  if (option !== 'break-words-at-spaces') {
3
- throw new Error(`Unsupported script override: ${option}`);
4
+ throw new ModelCompilerError(ModelCompilerMessages.Error_UnsupportedScriptOverride({ option }));
4
5
  }
5
6
  /**
6
7
  * Matches if when a span contains a Southeast-Asian letter or mark anywhere.
@@ -1 +1 @@
1
- {"version":3,"file":"script-overrides-decorator.js","sourceRoot":"","sources":["../../src/script-overrides-decorator.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,2BAA2B,CAAC,OAA6B,EAAE,MAA8B;IACvG,IAAI,MAAM,KAAK,uBAAuB,EAAE;QACtC,MAAM,IAAI,KAAK,CAAC,gCAAgC,MAAM,EAAE,CAAC,CAAA;KAC1D;IAED;;;;;;;;OAQG;IACH,MAAM,0BAA0B,GAAG,0OAA0O,CAAC;IAE9Q,OAAO,SAAS,eAAe,CAAC,MAAc;QAC5C,IAAI,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,OAAO,EAAE,CAAC;SACX;QAED,IAAI,WAAW,GAAG,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1C,KAAK,IAAI,WAAW,IAAI,aAAa,EAAE;YACrC,IAAI,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;YAEzC,IAAI,kBAAkB,CAAC,YAAY,EAAE,WAAW,CAAC;gBAC7C,uBAAuB,CAAC,YAAY,CAAC;gBACrC,uBAAuB,CAAC,WAAW,CAAC,EACtC;gBACA,+CAA+C;gBAC/C,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,gBAAgB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;aACnF;iBAAM;gBACL,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aAC/B;SACF;QAED,OAAO,WAAW,CAAC;IACrB,CAAC,CAAA;IAED,SAAS,uBAAuB,CAAC,IAAU;QACzC,OAAO,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED;;;OAGG;IACH,SAAS,kBAAkB,CAAC,MAAY,EAAE,MAAY;QACpD,OAAO,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,KAAK,CAAC;IACrC,CAAC;IAED,SAAS,gBAAgB,CAAC,MAAY,EAAE,MAAY;QAClD,IAAI,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,GAAG,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SACjH;QAED,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;YACrC,IAAI,EAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI;SAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,SAAS,QAAQ,CAAI,KAAU;QAC7B,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"script-overrides-decorator.js","sourceRoot":"","sources":["../../src/script-overrides-decorator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEvF,MAAM,UAAU,2BAA2B,CAAC,OAA6B,EAAE,MAA8B;IACvG,IAAI,MAAM,KAAK,uBAAuB,EAAE;QACtC,MAAM,IAAI,kBAAkB,CAAC,qBAAqB,CAAC,+BAA+B,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC,CAAC;KAC/F;IAED;;;;;;;;OAQG;IACH,MAAM,0BAA0B,GAAG,0OAA0O,CAAC;IAE9Q,OAAO,SAAS,eAAe,CAAC,MAAc;QAC5C,IAAI,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,OAAO,EAAE,CAAC;SACX;QAED,IAAI,WAAW,GAAG,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1C,KAAK,IAAI,WAAW,IAAI,aAAa,EAAE;YACrC,IAAI,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;YAEzC,IAAI,kBAAkB,CAAC,YAAY,EAAE,WAAW,CAAC;gBAC7C,uBAAuB,CAAC,YAAY,CAAC;gBACrC,uBAAuB,CAAC,WAAW,CAAC,EACtC;gBACA,+CAA+C;gBAC/C,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,gBAAgB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;aACnF;iBAAM;gBACL,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aAC/B;SACF;QAED,OAAO,WAAW,CAAC;IACrB,CAAC,CAAA;IAED,SAAS,uBAAuB,CAAC,IAAU;QACzC,OAAO,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED;;;OAGG;IACH,SAAS,kBAAkB,CAAC,MAAY,EAAE,MAAY;QACpD,OAAO,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,KAAK,CAAC;IACrC,CAAC;IAED,SAAS,gBAAgB,CAAC,MAAY,EAAE,MAAY;QAClD,IAAI,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,GAAG,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SACjH;QAED,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;YACrC,IAAI,EAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI;SAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,SAAS,QAAQ,CAAI,KAAU;QAC7B,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -31,8 +31,9 @@
31
31
  "url": "https://github.com/keymanapp/keyman/issues"
32
32
  },
33
33
  "dependencies": {
34
- "@keymanapp/keyman-version": "17.0.91-alpha",
35
- "@keymanapp/models-types": "17.0.91-alpha",
34
+ "@keymanapp/keyman-version": "17.0.93-alpha",
35
+ "@keymanapp/models-types": "17.0.93-alpha",
36
+ "@keymanapp/common-types": "17.0.93-alpha",
36
37
  "typescript": "^4.9.5",
37
38
  "xml2js": "^0.4.19"
38
39
  },
@@ -46,7 +47,8 @@
46
47
  "chalk": "^2.4.2",
47
48
  "esbuild": "^0.15.7",
48
49
  "mocha": "^10.0.0",
49
- "ts-node": "^10.9.1"
50
+ "ts-node": "^10.9.1",
51
+ "@keymanapp/developer-test-helpers": "17.0.93-alpha"
50
52
  },
51
53
  "mocha": {
52
54
  "spec": "build/test/**/test-*.js",
@@ -70,5 +72,5 @@
70
72
  "type": "git",
71
73
  "url": "git+https://github.com/keymanapp/keyman.git"
72
74
  },
73
- "version": "17.0.91-alpha"
75
+ "version": "17.0.93-alpha"
74
76
  }