@smartdcc/duis-templates 0.2.1 → 0.3.0

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/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { loadTemplates, Template, TemplateDirectory } from './load';
2
- export { search } from './search';
1
+ export { loadTemplates, lookupGBCS, GBCSRecord, Template, TemplateDirectory, } from './load';
2
+ export { search, searchGBCS } from './search';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAmBA,OAAO,EACL,aAAa,EACb,UAAU,EACV,UAAU,EACV,QAAQ,EACR,iBAAiB,GAClB,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA"}
package/dist/index.js CHANGED
@@ -18,9 +18,11 @@
18
18
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19
19
  */
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.search = exports.loadTemplates = void 0;
21
+ exports.searchGBCS = exports.search = exports.lookupGBCS = exports.loadTemplates = void 0;
22
22
  var load_1 = require("./load");
23
23
  Object.defineProperty(exports, "loadTemplates", { enumerable: true, get: function () { return load_1.loadTemplates; } });
24
+ Object.defineProperty(exports, "lookupGBCS", { enumerable: true, get: function () { return load_1.lookupGBCS; } });
24
25
  var search_1 = require("./search");
25
26
  Object.defineProperty(exports, "search", { enumerable: true, get: function () { return search_1.search; } });
27
+ Object.defineProperty(exports, "searchGBCS", { enumerable: true, get: function () { return search_1.searchGBCS; } });
26
28
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;AAEH,+BAAmE;AAA1D,qGAAA,aAAa,OAAA;AACtB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;AAEH,+BAMe;AALb,qGAAA,aAAa,OAAA;AACb,kGAAA,UAAU,OAAA;AAKZ,mCAA6C;AAApC,gGAAA,MAAM,OAAA;AAAE,oGAAA,UAAU,OAAA"}
package/dist/load.d.ts CHANGED
@@ -10,6 +10,15 @@ export interface Template {
10
10
  info?: string;
11
11
  }
12
12
  export declare function parseFileTag(tag: string): RegExpMatchArray | null;
13
+ export interface GBCSRecord {
14
+ 'Use Case Name': string;
15
+ 'Use Case Title': string;
16
+ 'Message Type': string;
17
+ 'Use Case Description': string;
18
+ 'Remote Party or HAN Message': string | null;
19
+ 'Service Reference': string | null;
20
+ }
21
+ export declare function lookupGBCS(code: string): GBCSRecord | undefined;
13
22
  export declare function loadTemplate(logger: (msg: string) => void, fileName: string): Promise<[string, Template] | null>;
14
23
  export interface LoadTemplateOptions {
15
24
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../src/load.ts"],"names":[],"mappings":"AAmBA,OAAO,EAEL,OAAO,EACP,2BAA2B,EAC3B,uBAAuB,EAGxB,MAAM,uBAAuB,CAAA;AAO9B,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,UAAU,EAAE,2BAA2B,CAAA;IACvC,uBAAuB,EAAE,uBAAuB,CAAA;IAChD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAIjE;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,CAmDpC;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;;OAGG;IACH,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3B;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;AAExD,wBAAsB,aAAa,CACjC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAwB5B"}
1
+ {"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../src/load.ts"],"names":[],"mappings":"AAmBA,OAAO,EAEL,OAAO,EACP,2BAA2B,EAC3B,uBAAuB,EAGxB,MAAM,uBAAuB,CAAA;AAO9B,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,UAAU,EAAE,2BAA2B,CAAA;IACvC,uBAAuB,EAAE,uBAAuB,CAAA;IAChD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAIjE;AAED,MAAM,WAAW,UAAU;IACzB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,6BAA6B,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5C,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAA;CACnC;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAE/D;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,CAiDpC;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;;OAGG;IACH,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3B;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;AAExD,wBAAsB,aAAa,CACjC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAqB5B"}
package/dist/load.js CHANGED
@@ -21,9 +21,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
21
21
  return (mod && mod.__esModule) ? mod : { "default": mod };
22
22
  };
23
23
  Object.defineProperty(exports, "__esModule", { value: true });
24
- exports.loadTemplates = exports.loadTemplate = exports.parseFileTag = void 0;
24
+ exports.loadTemplates = exports.loadTemplate = exports.lookupGBCS = exports.parseFileTag = void 0;
25
25
  const duis_parser_1 = require("@smartdcc/duis-parser");
26
- const glob_1 = __importDefault(require("glob"));
26
+ const glob_1 = require("glob");
27
27
  const node_path_1 = require("node:path");
28
28
  const promises_1 = require("node:fs/promises");
29
29
  const gbcs_mapping_table_json_1 = __importDefault(require("./gbcs-mapping-table.json"));
@@ -32,6 +32,10 @@ function parseFileTag(tag) {
32
32
  return tag.match(/(?:(?<gbcs>[A-Z]+\d+(?:(?:[a-z]|[A-Z]{1,2})\d?)?|CCS05CCS04)(?<gbcsvariant>(?:[A-Z][a-z]+|NO|ACB|MAC|S)+)?_)?(?<srv>\d+(?:\.\d+)+)(?:_(?<variant>[A-Za-z_]*))?/);
33
33
  }
34
34
  exports.parseFileTag = parseFileTag;
35
+ function lookupGBCS(code) {
36
+ return gbcs_mapping_table_json_1.default.find((e) => e.Code === code);
37
+ }
38
+ exports.lookupGBCS = lookupGBCS;
35
39
  async function loadTemplate(logger, fileName) {
36
40
  let tag = (0, node_path_1.basename)(fileName, '_REQUEST_DUIS.XML');
37
41
  if (tag.search(/_(ERROR|NOT_FOUND)/) >= 0) {
@@ -50,7 +54,7 @@ async function loadTemplate(logger, fileName) {
50
54
  }
51
55
  let gbcsTitle = undefined;
52
56
  if (groups.groups?.['gbcs']) {
53
- const gbcsRecord = gbcs_mapping_table_json_1.default.find((e) => e.Code === groups.groups?.['gbcs']);
57
+ const gbcsRecord = lookupGBCS(groups.groups?.['gbcs']);
54
58
  if (gbcsRecord) {
55
59
  gbcsTitle = gbcsRecord['Use Case Title'];
56
60
  }
@@ -85,9 +89,9 @@ async function loadTemplates(options) {
85
89
  (() => {
86
90
  /* do nothing */
87
91
  });
88
- const templates = await new Promise((a, r) => (0, glob_1.default)((0, node_path_1.resolve)(...(options.path
92
+ const templates = await (0, glob_1.glob)((0, node_path_1.resolve)(...(options.path
89
93
  ? [options.path]
90
- : [__dirname, '..', 'templates']).concat((0, node_path_2.join)('**', '*_REQUEST_DUIS.XML'))), { windowsPathsNoEscape: true }, (err, m) => (err ? r(err) : a(m))));
94
+ : [__dirname, '..', 'templates']).concat((0, node_path_2.join)('**', '*_REQUEST_DUIS.XML'))), { windowsPathsNoEscape: true });
91
95
  const zz = (await Promise.all(templates.map((t) => loadTemplate(logger, t)))).filter((x) => Array.isArray(x));
92
96
  return Object.fromEntries(zz);
93
97
  }
package/dist/load.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"load.js","sourceRoot":"","sources":["../src/load.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;;;;AAEH,uDAO8B;AAC9B,gDAAuB;AACvB,yCAA6C;AAC7C,+CAA2C;AAC3C,wFAAoD;AACpD,yCAAgC;AAahC,SAAgB,YAAY,CAAC,GAAW;IACtC,OAAO,GAAG,CAAC,KAAK,CACd,gKAAgK,CACjK,CAAA;AACH,CAAC;AAJD,oCAIC;AAEM,KAAK,UAAU,YAAY,CAChC,MAA6B,EAC7B,QAAgB;IAEhB,IAAI,GAAG,GAAG,IAAA,oBAAQ,EAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAA;IACjD,IAAI,GAAG,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE;QACzC,OAAO,IAAI,CAAA;KACZ;IACD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;IACjC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA;IAChC,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,MAAM,CAAC,6BAA6B,QAAQ,6BAA6B,CAAC,CAAA;QAC1E,OAAO,IAAI,CAAA;KACZ;IACD,MAAM,uBAAuB,GAAG,IAAA,uBAAS,EAAC,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IACvE,IAAI,CAAC,uBAAuB,EAAE;QAC5B,MAAM,CACJ,6BAA6B,QAAQ,sBAAsB,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CACpF,CAAA;QACD,OAAO,IAAI,CAAA;KACZ;IACD,IAAI,SAAS,GAAuB,SAAS,CAAA;IAC7C,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE;QAC3B,MAAM,UAAU,GAAG,iCAAY,CAAC,IAAI,CAClC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAC1C,CAAA;QACD,IAAI,UAAU,EAAE;YACd,SAAS,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAA;SACzC;aAAM;YACL,MAAM,CACJ,6BAA6B,QAAQ,sCAAsC,CAC5E,CAAA;YACD,OAAO,IAAI,CAAA;SACZ;KACF;IACD,MAAM,eAAe,GAAG,MAAM,IAAA,mBAAQ,EAAC,QAAQ,CAAC,CAAA;IAChD,MAAM,UAAU,GAAG,IAAA,uBAAS,EAAC,YAAY,EAAE,eAAe,CAAC,CAAA;IAC3D,IAAI,CAAC,IAAA,2CAA6B,EAAC,UAAU,CAAC,EAAE;QAC9C,MAAM,CAAC,6BAA6B,QAAQ,oBAAoB,CAAC,CAAA;QACjE,OAAO,IAAI,CAAA;KACZ;IACD,OAAO;QACL,GAAG;QACH;YACE,QAAQ;YACR,MAAM,EAAE,IAAA,uBAAS,EAAC,QAAQ,EAAE,eAAe,CAAC;YAC5C,UAAU,EAAE,UAAyC;YACrD,uBAAuB;YACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,SAAS;YAC1C,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,aAAa,CAAC,IAAI,SAAS;YACxD,SAAS;YACT,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,SAAS;SAC9C;KACF,CAAA;AACH,CAAC;AAtDD,oCAsDC;AAiBM,KAAK,UAAU,aAAa,CACjC,OAA4B;IAE5B,MAAM,MAAM,GACV,OAAO,CAAC,MAAM;QACd,CAAC,GAAS,EAAE;YACV,gBAAgB;QAClB,CAAC,CAAC,CAAA;IACJ,MAAM,SAAS,GAAG,MAAM,IAAI,OAAO,CAAW,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACrD,IAAA,cAAI,EACF,IAAA,mBAAO,EACL,GAAG,CAAC,OAAO,CAAC,IAAI;QACd,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CACjC,CAAC,MAAM,CAAC,IAAA,gBAAI,EAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAC3C,EACD,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAC9B,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAClC,CACF,CAAA;IAED,MAAM,EAAE,GAAG,CACT,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CACjE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAyB,CAAA;IAEzD,OAAO,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;AAC/B,CAAC;AA1BD,sCA0BC"}
1
+ {"version":3,"file":"load.js","sourceRoot":"","sources":["../src/load.ts"],"names":[],"mappings":"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"}
package/dist/search.d.ts CHANGED
@@ -1,10 +1,20 @@
1
1
  import Fuse from 'fuse.js';
2
- import { Template, TemplateDirectory } from './load';
2
+ import { GBCSRecord, Template, TemplateDirectory } from './load';
3
3
  /**
4
- * Builds a Fuse searcher instance with some default parameters set.
4
+ * Builds a Fuse searcher instance with some default parameters set for duis
5
+ * templates.
6
+ *
5
7
  * @param td TemplateDirectory to search
6
8
  * @param options override default options - avoid setting "keys"
7
9
  * @returns Fuse
8
10
  */
9
11
  export declare function search(td: TemplateDirectory, options?: Fuse.IFuseOptions<[string, Template]>): Fuse<[string, Template]>;
12
+ /**
13
+ * Builds a Fuse searcher instance with some default parameters set for gbcs/use
14
+ * cases.
15
+ *
16
+ * @param options override default options - avoid setting "keys"
17
+ * @returns Fuse
18
+ */
19
+ export declare function searchGBCS(options?: Fuse.IFuseOptions<[string, GBCSRecord]>): Fuse<[string, GBCSRecord]>;
10
20
  //# sourceMappingURL=search.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"AAmBA,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAEpD;;;;;GAKG;AACH,wBAAgB,MAAM,CACpB,EAAE,EAAE,iBAAiB,EACrB,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,GAC9C,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAgB1B"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"AAmBA,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAGhE;;;;;;;GAOG;AACH,wBAAgB,MAAM,CACpB,EAAE,EAAE,iBAAiB,EACrB,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,GAC9C,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAgB1B;AAID;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,GAChD,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAkB5B"}
package/dist/search.js CHANGED
@@ -21,10 +21,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
21
21
  return (mod && mod.__esModule) ? mod : { "default": mod };
22
22
  };
23
23
  Object.defineProperty(exports, "__esModule", { value: true });
24
- exports.search = void 0;
24
+ exports.searchGBCS = exports.search = void 0;
25
25
  const fuse_js_1 = __importDefault(require("fuse.js"));
26
+ const gbcs_mapping_table_json_1 = __importDefault(require("./gbcs-mapping-table.json"));
26
27
  /**
27
- * Builds a Fuse searcher instance with some default parameters set.
28
+ * Builds a Fuse searcher instance with some default parameters set for duis
29
+ * templates.
30
+ *
28
31
  * @param td TemplateDirectory to search
29
32
  * @param options override default options - avoid setting "keys"
30
33
  * @returns Fuse
@@ -47,4 +50,32 @@ function search(td, options) {
47
50
  });
48
51
  }
49
52
  exports.search = search;
53
+ let mapping;
54
+ /**
55
+ * Builds a Fuse searcher instance with some default parameters set for gbcs/use
56
+ * cases.
57
+ *
58
+ * @param options override default options - avoid setting "keys"
59
+ * @returns Fuse
60
+ */
61
+ function searchGBCS(options) {
62
+ if (mapping === undefined) {
63
+ mapping = gbcs_mapping_table_json_1.default.map((e) => [e.Code, e]);
64
+ }
65
+ return new fuse_js_1.default(mapping, {
66
+ keys: [
67
+ '0',
68
+ '1.Use Case Name',
69
+ '1.Use Case Title',
70
+ '1.Message Type',
71
+ '1.Use Case Description',
72
+ '1.Service Reference',
73
+ ],
74
+ distance: 200,
75
+ threshold: 0.4,
76
+ includeMatches: true,
77
+ ...options,
78
+ });
79
+ }
80
+ exports.searchGBCS = searchGBCS;
50
81
  //# sourceMappingURL=search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;;;;AAEH,sDAA0B;AAG1B;;;;;GAKG;AACH,SAAgB,MAAM,CACpB,EAAqB,EACrB,OAA+C;IAE/C,OAAO,IAAI,iBAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QAClC,IAAI,EAAE;YACJ,GAAG;YACH,gDAAgD;YAChD,qDAAqD;YACrD,QAAQ;YACR,eAAe;YACf,aAAa;YACb,QAAQ;SACT;QACD,QAAQ,EAAE,GAAG;QACb,SAAS,EAAE,GAAG;QACd,cAAc,EAAE,IAAI;QACpB,GAAG,OAAO;KACX,CAAC,CAAA;AACJ,CAAC;AAnBD,wBAmBC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;;;;AAEH,sDAA0B;AAE1B,wFAAoD;AAEpD;;;;;;;GAOG;AACH,SAAgB,MAAM,CACpB,EAAqB,EACrB,OAA+C;IAE/C,OAAO,IAAI,iBAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QAClC,IAAI,EAAE;YACJ,GAAG;YACH,gDAAgD;YAChD,qDAAqD;YACrD,QAAQ;YACR,eAAe;YACf,aAAa;YACb,QAAQ;SACT;QACD,QAAQ,EAAE,GAAG;QACb,SAAS,EAAE,GAAG;QACd,cAAc,EAAE,IAAI;QACpB,GAAG,OAAO;KACX,CAAC,CAAA;AACJ,CAAC;AAnBD,wBAmBC;AAED,IAAI,OAA+B,CAAA;AAEnC;;;;;;GAMG;AACH,SAAgB,UAAU,CACxB,OAAiD;IAEjD,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,OAAO,GAAG,iCAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;KAC/C;IACD,OAAO,IAAI,iBAAI,CAAC,OAAO,EAAE;QACvB,IAAI,EAAE;YACJ,GAAG;YACH,iBAAiB;YACjB,kBAAkB;YAClB,gBAAgB;YAChB,wBAAwB;YACxB,qBAAqB;SACtB;QACD,QAAQ,EAAE,GAAG;QACb,SAAS,EAAE,GAAG;QACd,cAAc,EAAE,IAAI;QACpB,GAAG,OAAO;KACX,CAAC,CAAA;AACJ,CAAC;AApBD,gCAoBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smartdcc/duis-templates",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "Collection of DUIS templates from RTDS along with utility functions",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -49,12 +49,12 @@
49
49
  "eslint-config-prettier": "^8.5.0",
50
50
  "prettier": "^2.7.1",
51
51
  "ts-jest": "^29.0.0",
52
- "typescript": "^4.8.2"
52
+ "typescript": "^5.0.2"
53
53
  },
54
54
  "dependencies": {
55
55
  "@smartdcc/duis-parser": "^0.4.0",
56
56
  "fuse.js": "^6.6.2",
57
- "glob": "^8.0.3"
57
+ "glob": "^10.1.0"
58
58
  },
59
59
  "keywords": [
60
60
  "duis",