jostraca 0.29.1 → 0.31.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.
@@ -10,6 +10,17 @@ const BuildMeta_1 = require("./BuildMeta");
10
10
  const CN = 'BuildContext:';
11
11
  // TODO: rename meta folder to build, move into build folder
12
12
  class BuildContext {
13
+ fs;
14
+ now;
15
+ bmeta;
16
+ fh;
17
+ audit;
18
+ when;
19
+ vol;
20
+ folder;
21
+ current;
22
+ log;
23
+ dfolder;
13
24
  constructor(folder, existing, control, fs, now) {
14
25
  this.fs = fs;
15
26
  this.now = now;
@@ -1 +1 @@
1
- {"version":3,"file":"BuildContext.js","sourceRoot":"","sources":["../../src/build/BuildContext.ts"],"names":[],"mappings":";;;;;;AACA,0DAA4B;AAS5B,+CAEsB;AAEtB,2CAEoB;AAapB,MAAM,EAAE,GAAG,eAAe,CAAA;AAG1B,4DAA4D;AAC5D,MAAM,YAAY;IA6BhB,YACE,MAAc,EACd,QAAkB,EAClB,OAIC,EACD,EAAa,EACb,GAAiB;QAEjB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QAEd,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,EAAE,GAAG,iCAAiC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;QACf,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,CAAA;QAEjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG;YACb,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS,EAAE;aAClB;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS,EAAE;gBACjB,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,EAAE;aACT;YACD,4BAA4B;YAC5B,IAAI,EAAE,SAAS,EAAE;YACjB,OAAO,EAAE,SAAS;SACnB,CAAA;QACD,IAAI,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAA;QAEpC,IAAI,CAAC,EAAE,GAAG,IAAI,yBAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClD,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACrC,CAAC;IAGD,OAAO,CAAC,IAAY,EAAE,IAAS;QAC7B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC5B,CAAC;IAGD,eAAe;QACb,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,OAAO;gBACV,mBAAI,CAAC,SAAS,CACZ,mBAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAA;QACtE,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF;AAUC,oCAAY;AAPd,SAAS,SAAS;IAChB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;AAC1D,CAAC"}
1
+ {"version":3,"file":"BuildContext.js","sourceRoot":"","sources":["../../src/build/BuildContext.ts"],"names":[],"mappings":";;;;;;AACA,0DAA4B;AAS5B,+CAEsB;AAEtB,2CAEoB;AAapB,MAAM,EAAE,GAAG,eAAe,CAAA;AAG1B,4DAA4D;AAC5D,MAAM,YAAY;IAEhB,EAAE,CAAW;IACb,GAAG,CAAc;IAEjB,KAAK,CAAW;IAChB,EAAE,CAAa;IACf,KAAK,CAAO;IACZ,IAAI,CAAQ;IACZ,GAAG,CAAK;IACR,MAAM,CAAQ;IACd,OAAO,CASN;IACD,GAAG,CAGF;IAED,OAAO,CAAS;IAGhB,YACE,MAAc,EACd,QAAkB,EAClB,OAIC,EACD,EAAa,EACb,GAAiB;QAEjB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QAEd,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,EAAE,GAAG,iCAAiC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;QACf,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,CAAA;QAEjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG;YACb,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS,EAAE;aAClB;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS,EAAE;gBACjB,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,EAAE;aACT;YACD,4BAA4B;YAC5B,IAAI,EAAE,SAAS,EAAE;YACjB,OAAO,EAAE,SAAS;SACnB,CAAA;QACD,IAAI,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAA;QAEpC,IAAI,CAAC,EAAE,GAAG,IAAI,yBAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClD,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACrC,CAAC;IAGD,OAAO,CAAC,IAAY,EAAE,IAAS;QAC7B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC5B,CAAC;IAGD,eAAe;QACb,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,OAAO;gBACV,mBAAI,CAAC,SAAS,CACZ,mBAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAA;QACtE,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF;AAUC,oCAAY;AAPd,SAAS,SAAS;IAChB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;AAC1D,CAAC"}
@@ -8,6 +8,9 @@ const node_path_1 = __importDefault(require("node:path"));
8
8
  const basic_1 = require("../util/basic");
9
9
  // Handle loading, recording,and saving of build meta data
10
10
  class BuildMeta {
11
+ fh;
12
+ prev;
13
+ next;
11
14
  constructor(fh) {
12
15
  this.fh = fh;
13
16
  // TODO: file folder and name default can be overriden by jopts
@@ -41,7 +44,7 @@ class BuildMeta {
41
44
  // save over previous
42
45
  saveMetaData(this.fh, this.next);
43
46
  if (false === this.fh.control.version) {
44
- this.fh.saveFile(node_path_1.default.join(this.next.foldername, '.gitignore'), `
47
+ this.fh.saveFile(node_path_1.default.join(this.fh.folder, this.next.foldername, '.gitignore'), `
45
48
  ${this.next.filename}
46
49
  generated
47
50
  `);
@@ -51,7 +54,9 @@ generated
51
54
  }
52
55
  exports.BuildMeta = BuildMeta;
53
56
  function loadMetaData(fh, bmeta) {
54
- const metapath = node_path_1.default.join(bmeta.foldername, bmeta.filename);
57
+ // Full (folder-prefixed) path: the FileHandler FS methods use paths
58
+ // directly and no longer re-join `this.folder`.
59
+ const metapath = node_path_1.default.join(fh.folder, bmeta.foldername, bmeta.filename);
55
60
  if (fh.existsFile(metapath)) {
56
61
  const json = fh.loadJSON(metapath);
57
62
  bmeta.last = json.last;
@@ -61,7 +66,9 @@ function loadMetaData(fh, bmeta) {
61
66
  return bmeta;
62
67
  }
63
68
  function saveMetaData(fh, bmeta) {
64
- const metapath = node_path_1.default.join(bmeta.foldername, bmeta.filename);
69
+ // Full (folder-prefixed) path: the FileHandler FS methods use paths
70
+ // directly and no longer re-join `this.folder`.
71
+ const metapath = node_path_1.default.join(fh.folder, bmeta.foldername, bmeta.filename);
65
72
  fh.saveJSON(metapath, bmeta);
66
73
  }
67
74
  //# sourceMappingURL=BuildMeta.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BuildMeta.js","sourceRoot":"","sources":["../../src/build/BuildMeta.ts"],"names":[],"mappings":";;;;;;AACA,0DAA4B;AAI5B,yCAAwC;AAmBxC,0DAA0D;AAC1D,MAAM,SAAS;IAOb,YACE,EAAe;QAEf,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QAEZ,+DAA+D;QAC/D,IAAI,CAAC,IAAI,GAAG;YACV,UAAU,EAAE,WAAW;YACvB,QAAQ,EAAE,mBAAmB;YAC7B,IAAI,EAAE,CAAC,CAAC;YACR,KAAK,EAAE,CAAC,CAAC;YACT,KAAK,EAAE,EAAE;SACV,CAAA;QAED,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAE5C,4BAA4B;QAE5B,IAAI,CAAC,IAAI,GAAG;YACV,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;YAChC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC5B,IAAI,EAAE,CAAC,CAAC;YACR,KAAK,EAAE,CAAC,CAAC;YACT,KAAK,EAAE,EAAE;SACV,CAAA;IAEH,CAAC;IAGD,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;IACvB,CAAC;IAGD,GAAG,CAAC,IAAY,EAAE,IAAS;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAA;QACrD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAA;IAC/B,CAAC;IAGD,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAA,gBAAQ,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAE1C,qBAAqB;QACrB,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAEhC,IAAI,KAAK,KAAK,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACtC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,mBAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE;EACpE,IAAI,CAAC,IAAI,CAAC,QAAQ;;CAEnB,CAAC,CAAA;QACE,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;CACF;AAsBC,8BAAS;AAnBX,SAAS,YAAY,CAAC,EAAe,EAAE,KAAoB;IACzD,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAClC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACtB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;IAC1B,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAGD,SAAS,YAAY,CAAC,EAAe,EAAE,KAAoB;IACzD,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC5D,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AAC9B,CAAC"}
1
+ {"version":3,"file":"BuildMeta.js","sourceRoot":"","sources":["../../src/build/BuildMeta.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,20 @@ const JOSTRACA_PROTECT = 'JOSTRACA_PROTECT';
21
21
  // Log non-fatal wierdness.
22
22
  const dlog = (0, basic_1.getdlog)('jostraca', __filename);
23
23
  class FileHandler {
24
+ when;
25
+ fs;
26
+ now;
27
+ folder;
28
+ audit;
29
+ maxdepth;
30
+ existing;
31
+ control;
32
+ duplicateFolder;
33
+ last;
34
+ addmeta;
35
+ metafile;
36
+ files;
37
+ createdDirs;
24
38
  constructor(bctx, existing, control) {
25
39
  this.fs = bctx.fs;
26
40
  this.now = bctx.now;
@@ -332,7 +346,10 @@ class FileHandler {
332
346
  const fs = this.fs();
333
347
  const FN = 'existsFile:';
334
348
  validPath(path, this.maxdepth, CN + FN + 'from:' + wstr);
335
- const fullpath = node_path_1.default.isAbsolute(path) ? path : fwd(node_path_1.default.join(this.folder, path));
349
+ // Paths are canonical (already folder-prefixed by the build phase, or
350
+ // absolute); use them directly. Do NOT re-join `this.folder`, which would
351
+ // double-prefix relative non-`.` output folders. Matches the Go port.
352
+ const fullpath = fwd(node_path_1.default.normalize(path));
336
353
  try {
337
354
  const exists = fs.existsSync(fullpath);
338
355
  this.audit.push([CN + FN + wstr,
@@ -355,14 +372,15 @@ class FileHandler {
355
372
  validPath(frompath, this.maxdepth, CN + FN + 'from:' + wstr);
356
373
  validPath(topath, this.maxdepth, CN + FN + 'to:' + wstr);
357
374
  const isBinary = (0, basic_1.isbinext)(frompath);
358
- const fulltopath = node_path_1.default.isAbsolute(topath) ? topath : fwd(node_path_1.default.join(this.folder, topath));
359
- const fullfrompath = node_path_1.default.isAbsolute(frompath) ? frompath : fwd(node_path_1.default.join(this.folder, frompath));
375
+ // Canonical paths: use directly, do not re-join `this.folder` (see existsFile).
376
+ const fulltopath = fwd(node_path_1.default.normalize(topath));
377
+ const fullfrompath = fwd(node_path_1.default.normalize(frompath));
360
378
  try {
361
379
  const existed = fs.existsSync(fulltopath);
362
380
  this.ensureDir(fwd(node_path_1.default.dirname(fulltopath)));
363
381
  const content = fs.readFileSync(fullfrompath, isBinary ? undefined : 'utf8');
364
382
  if (!this.control.dryrun) {
365
- fs.writeFileSync(topath, content, { flush: true });
383
+ fs.writeFileSync(fulltopath, content, { flush: true });
366
384
  }
367
385
  this.audit.push([CN + FN + wstr,
368
386
  { topath, frompath, when, existed, size: content.length }]);
@@ -443,7 +461,8 @@ class FileHandler {
443
461
  opts.encoding = undefined === opts.encoding ? 'utf8' : opts.encoding;
444
462
  validPath(path, this.maxdepth, CN + FN + wstr);
445
463
  try {
446
- const fullpath = node_path_1.default.isAbsolute(path) ? path : fwd(node_path_1.default.join(this.folder, path));
464
+ // Canonical path: use directly, do not re-join `this.folder` (see existsFile).
465
+ const fullpath = fwd(node_path_1.default.normalize(path));
447
466
  const content = fs.readFileSync(fullpath, opts);
448
467
  this.audit.push([CN + FN + wstr,
449
468
  { path, when, size: content.length }]);
@@ -486,9 +505,9 @@ class FileHandler {
486
505
  ' content=' + content);
487
506
  }
488
507
  try {
508
+ // Canonical path: use directly, do not re-join `this.folder` (see existsFile).
489
509
  path = fwd(node_path_1.default.normalize(path));
490
- const isAbsolute = node_path_1.default.isAbsolute(path);
491
- const fullpath = isAbsolute ? path : fwd(node_path_1.default.join(this.folder, path));
510
+ const fullpath = path;
492
511
  const parentfolder = fwd(node_path_1.default.dirname(fullpath));
493
512
  const existed = fs.existsSync(fullpath);
494
513
  if (!this.control.dryrun) {
@@ -1 +1 @@
1
- {"version":3,"file":"FileHandler.js","sourceRoot":"","sources":["../../src/build/FileHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileHandler.js","sourceRoot":"","sources":["../../src/build/FileHandler.ts"],"names":[],"mappings":"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"}
@@ -127,6 +127,7 @@ declare const OptionsShape: {
127
127
  name: string;
128
128
  message: string;
129
129
  stack?: string;
130
+ cause?: unknown;
130
131
  }[];
131
132
  spec(): any;
132
133
  node(): import("shape").Node<{
@@ -240,6 +241,7 @@ declare const ExistingShape: {
240
241
  name: string;
241
242
  message: string;
242
243
  stack?: string;
244
+ cause?: unknown;
243
245
  }[];
244
246
  spec(): any;
245
247
  node(): import("shape").Node<{
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InjectOp = void 0;
4
+ const jostraca_1 = require("../jostraca");
4
5
  const ON = 'InjectOp:';
5
6
  const InjectOp = {
6
7
  before(node, _ctx$, buildctx) {
@@ -32,8 +33,12 @@ const InjectOp = {
32
33
  if (!exclude) {
33
34
  let src = fs.readFileSync(cfile.fullpath, 'utf8');
34
35
  content = node.meta.markers.join(content);
35
- let re = new RegExp(node.meta.markers.join('(.*?)'), 'sg');
36
- src = src.replace(re, content);
36
+ // Escape markers so regex metacharacters in custom markers are matched
37
+ // literally, and use a replacement function so `$`-sequences in the
38
+ // injected content (e.g. `$1`, `$&`, shell/PHP/JS variables) are not
39
+ // interpreted as special replacement patterns.
40
+ let re = new RegExp(node.meta.markers.map(jostraca_1.escre).join('(.*?)'), 'sg');
41
+ src = src.replace(re, () => content);
37
42
  // fs.writeFileSync(cfile.fullpath, src, { flush: true })
38
43
  buildctx.fh.save(cfile.fullpath, src);
39
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InjectOp.js","sourceRoot":"","sources":["../../src/op/InjectOp.ts"],"names":[],"mappings":";;;AAKA,MAAM,EAAE,GAAG,WAAW,CAAA;AAEtB,MAAM,QAAQ,GAAG;IAEf,MAAM,CAAC,IAAU,EAAE,KAAU,EAAE,QAAsB;QACnD,MAAM,KAAK,GAAQ,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QAC/C,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAA;QACzE,KAAK,CAAC,OAAO,GAAG,EAAE,CAAA;IACpB,CAAC;IAGD,KAAK,CAAC,IAAU,EAAE,IAAS,EAAE,QAAsB;QACjD,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAA;QAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAA;QAC1B,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACpC,6EAA6E;QAC7E,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAE1B;;;;;;;;;;;;;UAaE;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAEjD,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACzC,IAAI,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAA;YAC1D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;YAC9B,yDAAyD;YACzD,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAkB,EAAE,GAAG,CAAC,CAAA;QACjD,CAAC;QAED;;;;;;YAMI;IACN,CAAC;CAEF,CAAA;AAIC,4BAAQ"}
1
+ {"version":3,"file":"InjectOp.js","sourceRoot":"","sources":["../../src/op/InjectOp.ts"],"names":[],"mappings":";;;AAKA,0CAAmC;AAEnC,MAAM,EAAE,GAAG,WAAW,CAAA;AAEtB,MAAM,QAAQ,GAAG;IAEf,MAAM,CAAC,IAAU,EAAE,KAAU,EAAE,QAAsB;QACnD,MAAM,KAAK,GAAQ,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QAC/C,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAA;QACzE,KAAK,CAAC,OAAO,GAAG,EAAE,CAAA;IACpB,CAAC;IAGD,KAAK,CAAC,IAAU,EAAE,IAAS,EAAE,QAAsB;QACjD,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAA;QAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAA;QAC1B,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACpC,6EAA6E;QAC7E,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAE1B;;;;;;;;;;;;;UAaE;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAEjD,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACzC,uEAAuE;YACvE,oEAAoE;YACpE,qEAAqE;YACrE,+CAA+C;YAC/C,IAAI,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAA;YACrE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAA;YACpC,yDAAyD;YACzD,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAkB,EAAE,GAAG,CAAC,CAAA;QACjD,CAAC;QAED;;;;;;YAMI;IACN,CAAC;CAEF,CAAA;AAIC,4BAAQ"}
@@ -1 +1 @@
1
- {"root":["../src/jostraca.ts","../src/types.ts","../src/build/buildcontext.ts","../src/build/buildmeta.ts","../src/build/filehandler.ts","../src/cmp/content.ts","../src/cmp/copy.ts","../src/cmp/file.ts","../src/cmp/folder.ts","../src/cmp/fragment.ts","../src/cmp/inject.ts","../src/cmp/line.ts","../src/cmp/list.ts","../src/cmp/none.ts","../src/cmp/project.ts","../src/cmp/slot.ts","../src/op/contentop.ts","../src/op/copyop.ts","../src/op/fileop.ts","../src/op/folderop.ts","../src/op/fragmentop.ts","../src/op/injectop.ts","../src/op/noneop.ts","../src/op/projectop.ts","../src/op/slotop.ts","../src/util/basic.ts","../src/util/point.ts"],"version":"5.9.3"}
1
+ {"root":["../src/jostraca.ts","../src/types.ts","../src/build/buildcontext.ts","../src/build/buildmeta.ts","../src/build/filehandler.ts","../src/cmp/content.ts","../src/cmp/copy.ts","../src/cmp/file.ts","../src/cmp/folder.ts","../src/cmp/fragment.ts","../src/cmp/inject.ts","../src/cmp/line.ts","../src/cmp/list.ts","../src/cmp/none.ts","../src/cmp/project.ts","../src/cmp/slot.ts","../src/op/contentop.ts","../src/op/copyop.ts","../src/op/fileop.ts","../src/op/folderop.ts","../src/op/fragmentop.ts","../src/op/injectop.ts","../src/op/noneop.ts","../src/op/projectop.ts","../src/op/slotop.ts","../src/util/basic.ts","../src/util/point.ts"],"version":"6.0.3"}
@@ -57,7 +57,11 @@ spec, apply) {
57
57
  if (!isObject) {
58
58
  return out;
59
59
  }
60
- let entries = Object.entries(subject);
60
+ // Always sort entries by key alphabetically for cross-stack
61
+ // determinism (Go map iteration is randomised; sorting on both
62
+ // sides keeps output byte-equal). spec.sort still controls the
63
+ // by-value sort variant below.
64
+ let entries = Object.entries(subject).sort((a, b) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0);
61
65
  if (call) {
62
66
  entries =
63
67
  entries.map((n) => ((n[1] = 'function' === typeof n[1] ? n[1](...args) : n[1]), n));
@@ -132,7 +136,7 @@ function getx(root, path) {
132
136
  for (let i = 0; i < tokens.length && undefined !== node; i++) {
133
137
  let t0 = tokens[i];
134
138
  let t1 = tokens[i + 1];
135
- if (t1 && t1.match(/=|!=/)) {
139
+ if (t1 && t1.match(/^(<=?|>=?|==?|!=|~)$/)) {
136
140
  let val = node[t0];
137
141
  let arg = tokens[i + 2];
138
142
  const argtype = typeof arg;
@@ -274,11 +278,29 @@ function lcf(s) {
274
278
  function partify(input) {
275
279
  return 'string' == typeof input ?
276
280
  input
277
- .replace(/([A-Z])([A-Z]+)/g, (_, first, rest) => first + rest.toLowerCase())
281
+ // Collapse acronym runs (e.g. `XMLParser` → `XmlParser`), but only when
282
+ // the trailing uppercase isn't itself the start of a new word —
283
+ // `(?![a-z])` prevents `AService` collapsing into `Aservice`.
284
+ .replace(/([A-Z])([A-Z]+)(?![a-z])/g, (_, first, rest) => first + rest.toLowerCase())
278
285
  .split(/[-_ ]|([A-Z])/)
279
286
  .filter(p => null != p && '' !== p)
280
- .reduce((a, p) => (((0 < a.length && 1 === a[a.length - 1].length) ?
281
- a[a.length - 1] += p : a.push(p)), a), []) :
287
+ // Re-attach a captured single uppercase letter to the lowercase tail
288
+ // that follows it (the rest of its word). Without the uppercase guard,
289
+ // a stray single lowercase letter between separators (e.g. `a` in
290
+ // `yes-as-a-service`) would also be glued to the next part.
291
+ .reduce((a, p) => {
292
+ const prev = a[a.length - 1];
293
+ if (0 < a.length &&
294
+ 1 === prev.length &&
295
+ 'A' <= prev && prev <= 'Z' &&
296
+ !('A' <= p[0] && p[0] <= 'Z')) {
297
+ a[a.length - 1] = prev + p;
298
+ }
299
+ else {
300
+ a.push(p);
301
+ }
302
+ return a;
303
+ }, []) :
282
304
  Array.isArray(input) ? input.map(n => '' + n) : ['' + input];
283
305
  }
284
306
  function names(base, name, prop = 'name') {
@@ -428,7 +450,9 @@ function template(src, model, spec) {
428
450
  ref = '';
429
451
  insert = '';
430
452
  // Use first key with a defined match (that is, the alternate that matched).
431
- let key = Object.keys(mg).
453
+ // Sort for deterministic selection across stacks (Go map
454
+ // iteration is randomised; both stacks now iterate alphabetically).
455
+ let key = Object.keys(mg).sort().
432
456
  filter(k => k.startsWith('J_K') && null != mg[k])[0];
433
457
  if (null != key) {
434
458
  ref = mg[key] || '';
@@ -449,7 +473,10 @@ function template(src, model, spec) {
449
473
  // Replacement is a function, so call it to generate a dynamic replacement string.
450
474
  else if ('function' === ti) {
451
475
  // Provide custom named groups, removing unique prefix.
476
+ // Sorted iteration so collisions resolve deterministically
477
+ // across stacks.
452
478
  let groups = Object.entries(mg)
479
+ .sort((a, b) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0)
453
480
  .reduce((a, n, _) => ((n[0].startsWith('J_') ? ((_ = n[0].match(/^J_[NT]\d+_(.+)$/)) && null != n[1] ?
454
481
  (a[_[1]] = n[1],
455
482
  // Tag also sets property `name`
@@ -487,12 +514,18 @@ function indent(src, indent) {
487
514
  // (_, p1) => p1 + indent)
488
515
  return src;
489
516
  }
490
- // Map child objects to new child objects
517
+ // Map child objects to new child objects. Iterates source and spec
518
+ // keys in alphabetical order for cross-stack determinism (Go map
519
+ // iteration is randomised; sorting on both sides keeps output
520
+ // byte-equal).
491
521
  function cmap(o, p) {
522
+ const sortByKey = (a, b) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0;
492
523
  return Object
493
524
  .entries(o)
525
+ .sort(sortByKey)
494
526
  .reduce((r, n, _) => (_ = Object
495
527
  .entries(p)
528
+ .sort(sortByKey)
496
529
  .reduce((s, m) => (cmap.FILTER === s ? s : (s[m[0]] = (
497
530
  // transfom(val,key,current,parentkey,parent)
498
531
  'function' === typeof m[1] ? m[1](n[1][m[0]], {
@@ -504,12 +537,15 @@ cmap.COPY = (x) => x;
504
537
  // keep self if x is truthy, or function returning truthy-new-value or [truthy,new-value]
505
538
  cmap.FILTER = (x) => 'function' === typeof x ? ((y, p, _) => (_ = x(y, p), Array.isArray(_) ? !_[0] ? _[1] : cmap.FILTER : _)) : (x ? x : cmap.FILTER);
506
539
  cmap.KEY = (_, p) => p.key;
507
- // Map child objects to a list of child objects
540
+ // Map child objects to a list of child objects. Sorted iteration as cmap.
508
541
  function vmap(o, p) {
542
+ const sortByKey = (a, b) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0;
509
543
  return Object
510
544
  .entries(o)
545
+ .sort(sortByKey)
511
546
  .reduce((r, n, _) => (_ = Object
512
547
  .entries(p)
548
+ .sort(sortByKey)
513
549
  .reduce((s, m) => (vmap.FILTER === s ? s : (s[m[0]] = (
514
550
  // transfom(val,key,current,parentkey,parent)
515
551
  // 'function' === typeof m[1] ? m[1](n[1][m[0]], m[0], n[1], n[0], o) : m[1]
@@ -1 +1 @@
1
- {"version":3,"file":"basic.js","sourceRoot":"","sources":["../../src/util/basic.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;;;;AAwtBlD,4BAAQ;AACR,oBAAI;AACJ,oBAAI;AACJ,sBAAK;AACL,kBAAG;AACH,oBAAI;AACJ,4BAAQ;AACR,wBAAM;AACN,4BAAQ;AACR,4BAAQ;AACR,sBAAK;AACL,0BAAO;AAEP,0BAAO;AACP,4BAAQ;AACR,oBAAI;AACJ,kBAAG;AACH,kBAAG;AACH,0BAAO;AAxuBT,0DAA4B;AAG5B,2DAA2D;AAC3D,SAAS,IAAI,CACX,OAAwB,EAAE,wBAAwB;AAClD,IAM0B,EAC1B,KAA4B;IAE5B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAEtC,MAAM,QAAQ,GAAG,IAAI,IAAI,IAAI,IAAI,UAAU,KAAK,OAAO,IAAI,CAAA;IAC3D,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAA2B,CAAA;IAE3D,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;IAClC,MAAM,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IACnD,MAAM,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IACnD,MAAM,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;IACpD,MAAM,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;IACpD,MAAM,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAE5F,IAAI,GAAG,GAAU,EAAE,CAAA;IAEnB,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAC/D,CAAC;QAED,GAAG,GAAG,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;QAExD,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAC9B,CAAC,IAAI,IAAI,CAAC,IAAI,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QAE/D,GAAG,GAAG,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAC5B,CAAC,CAAC,EAAE,CAAC,IAAc,CAAC,GAAG,CAAC,EAAE,CAAC,IAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/C,CAAC,EAAE,CAAC,IAAc,CAAC,GAAG,CAAC,EAAE,CAAC,IAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QAE7D,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG;aACb,GAAG,CAAC,CAAC,CAAM,EAAE,CAAS,EAAE,CAAM,EAAE,EAAE,CACjC,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QAEnF,IAAI,UAAU,KAAK,OAAO,KAAK,EAAE,CAAC;YAChC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,GAAG,IAAW,EAAE,EAAE,CACvC,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;QACtB,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,IAAI,OAAO,IAAI,QAAQ,KAAK,OAAO,OAAO,CAAA;IAE/D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,IAAI,OAAO,GAAQ,MAAM,CAAC,OAAO,CAAC,OAAc,CAAC,CAAA;IAEjD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO;YACL,OAAO,CAAC,GAAG,CAAC,CAAC,CAAQ,EAAE,EAAE,CACvB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACtE,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAQ,EAAE,CAAM,EAAE,EAAE,CACvC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACd,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,CAAC,CAAQ,EAAE,CAAM,EAAE,EAAE,CACjC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACd,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACrE,CAAC;IAED,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;QAC/B,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,KAAK,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,IAAI,KAAK,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAA;YAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAC9B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/E,CAAC;aACI,CAAC;YACJ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAC9B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IAED,IAAI,UAAU,KAAK,OAAO,KAAK,EAAE,CAAC;QAChC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAQ,EAAE,GAAG,IAAW,EAAE,EAAE,CAC7C,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;IAC/B,CAAC;SACI,CAAC;QACJ,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD;;;;;EAKE;AAGF,4DAA4D;AAC5D,6CAA6C;AAC7C,MAAM,aAAa,GAAG,iDAAiD,CAAA;AACvE,kCAAkC;AAClC,mBAAmB;AACnB,UAAU;AACV,WAAW;AACX,cAAc;AAGd,SAAS,IAAI,CAAC,IAAS,EAAE,IAAuB;IAC9C,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC;QAC7C,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,MAAM,CAAA;IAEV,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;IAChC,CAAC;SACI,IAAI,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC;QAElC,aAAa,CAAC,SAAS,GAAG,CAAC,CAAA;QAC3B,IAAI,GAAG,GAAG,aAAa,CAAA;QAEvB,MAAM,GAAG,EAAE,CAAA;QACX,IAAI,CAAC,GAAG,IAAI,CAAA;QACZ,OAAO,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1B,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBAChB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;gBAC/E,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACpB,CAAC;QACH,CAAC;IACH,CAAC;SACI,CAAC;QACJ,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,IAAI,GAAG,IAAI,CAAA;IACf,IAAI,GAAG,GAAG,SAAS,CAAA;IACnB,IAAI,QAAQ,GAAG,KAAK,CAAA;IAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7D,IAAI,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QAClB,IAAI,EAAE,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAEtB,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,IAAI,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;YAClB,IAAI,GAAG,GAAQ,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAE5B,MAAM,OAAO,GAAG,OAAO,GAAG,CAAA;YAC1B,GAAG;gBACD,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACrB,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;wBACvB,QAAQ,KAAK,OAAO,CAAC,CAAC;4BACpB,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;YAE/E,IAAI,IAAI,GAAG,KAAK,CAAA;YAChB,QAAQ,EAAE,EAAE,CAAC;gBACX,KAAK,GAAG;oBACN,IAAI,GAAG,GAAG,GAAG;wBAAE,IAAI,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACpC,KAAK,IAAI;oBACP,IAAI,GAAG,IAAI,GAAG;wBAAE,IAAI,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACrC,KAAK,GAAG;oBACN,IAAI,GAAG,GAAG,GAAG;wBAAE,IAAI,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACpC,KAAK,IAAI;oBACP,IAAI,GAAG,IAAI,GAAG;wBAAE,IAAI,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACrC,KAAK,GAAG;oBACN,IAAI,GAAG,IAAI,GAAG;wBAAE,IAAI,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACrC,KAAK,IAAI;oBACP,IAAI,GAAG,KAAK,GAAG;wBAAE,IAAI,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACtC,KAAK,IAAI;oBACP,IAAI,GAAG,IAAI,GAAG;wBAAE,IAAI,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACrC,KAAK,GAAG;oBACN,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBAAE,IAAI,GAAG,IAAI,CAAC;oBAAC,MAAM;YAC3D,CAAC;YAED,IAAI,IAAI,EAAE,CAAC;gBACT,CAAC,IAAI,CAAC,CAAA;YACR,CAAC;iBACI,CAAC;gBACJ,IAAI,GAAG,SAAS,CAAA;YAClB,CAAC;YAED,GAAG,GAAG,CAAC,QAAQ,IAAI,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAA;QACrD,CAAC;QAED,mEAAmE;aAC9D,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;YACpB,IAAI,GAAG,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC1B,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAA;gBAC5B,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;gBAEf,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;oBACvB,GAAG,GAAG,SAAS,CAAA;gBACjB,CAAC;YACH,CAAC;YACD,QAAQ,GAAG,IAAI,CAAA;YACf,CAAC,EAAE,CAAA;QACL,CAAC;aAEI,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;YACpB,IAAI,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAEjC,kDAAkD;YAClD,qCAAqC;YACrC,IAAI,CAAC,GAAG,CAAC,CAAA;YACT,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/B,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;oBAC5C,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,EAClD,CAAC;oBACD,CAAC,EAAE,CAAA;oBACH,MAAK;gBACP,CAAC;YACH,CAAC;YACD,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;YAElB,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;iBACb,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;YAE5D,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC;gBAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;gBACjD,CAAC;qBACI,CAAC;oBACJ,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC7E,CAAC;YACH,CAAC;YAED,IAAI,GAAG,GAAG,CAAA;YACV,CAAC,IAAI,OAAO,CAAC,MAAM,CAAA;QACrB,CAAC;aACI,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;YACpB,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;YAEf,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,GAAG,KAAK,CAAA;gBAChB,GAAG,GAAG,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;gBAC1C,IAAI,GAAG,GAAG,CAAA;YACZ,CAAC;QACH,CAAC;aACI,CAAC;YACJ,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;YACf,GAAG,GAAG,CAAC,QAAQ,IAAI,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAA;QACrD,CAAC;IAEH,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,SAAS,GAAG,CAAC,IAAS,EAAE,IAAuB;IAC7C,IAAI,GAAG,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACxD,IAAI,IAAI,GAAG,IAAI,CAAA;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QACrD,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACtB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,SAAS,QAAQ,CAAC,KAAqB;IACrC,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IAC1B,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SACvD,IAAI,CAAC,EAAE,CAAC,CAAA;AACb,CAAC;AAGD,SAAS,QAAQ,CAAC,KAAqB;IACrC,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IAC1B,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SACzB,IAAI,CAAC,GAAG,CAAC,CAAA;AACd,CAAC;AAGD,SAAS,OAAO,CAAC,KAAqB;IACpC,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IAC1B,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SACzB,IAAI,CAAC,GAAG,CAAC,CAAA;AACd,CAAC;AAED,SAAS,GAAG,CAAC,CAAS;IACpB,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/D,CAAC;AAGD,SAAS,GAAG,CAAC,CAAS;IACpB,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/D,CAAC;AAGD,SAAS,OAAO,CAAC,KAAqB;IACpC,OAAO,QAAQ,IAAI,OAAO,KAAK,CAAC,CAAC;QAC/B,KAAK;aACF,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;aAC3E,KAAK,CAAC,eAAe,CAAC;aACtB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aAClC,MAAM,CAAC,CAAC,CAAW,EAAE,CAAS,EAAE,EAAE,CACnC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAChD,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAA;AAChE,CAAC;AAGD,SAAS,KAAK,CAAC,IAAS,EAAE,IAAY,EAAE,IAAI,GAAG,MAAM;IACnD,IAAI,GAAG,EAAE,GAAG,IAAI,CAAA;IAChB,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAA;IAE5B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAErC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAE3C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IAC7C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IAE7C,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,SAAS,KAAK,CAAC,CAAS,IAAI,OAAO,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAA,CAAC,CAAC;AAC7E,SAAS,OAAO,CAAC,CAAS,IAAI,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA,CAAC,CAAC;AAGjE,gFAAgF;AAChF,4EAA4E;AAC5E,MAAM,eAAe,GAAG,IAAI,GAAG,EAAyD,CAAA;AACxF,MAAM,qBAAqB,GAAG,GAAG,CAAA;AAEjC,2BAA2B;AAC3B,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;AAG9C,yFAAyF;AACzF,8CAA8C;AAC9C,SAAS,QAAQ,CACf,GAAW,EACX,KAAU,EACV,IAQC;IAGD,GAAG,GAAG,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAA;IACjC,KAAK,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;IAElC,IAAI,KAAK,GAAG,IAAI,EAAE,KAAK,CAAA;IACvB,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;QAClB,MAAM,UAAU,GAAkB,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACzD,KAAK,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrC,gBAAgB,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QACnC,MAAM,QAAQ,GAAkB,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACvD,KAAK,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrC,gBAAgB,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAEnC,IAAI,IAAI,IAAI,UAAU,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC3C,IAAI,UAAU,GAAG,CAAC,CAAA;YAClB,IAAI,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAA;YAEzB,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;YACxC,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,GAAI,UAAkB,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;YAC/D,CAAC;YAED,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YACpC,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,GAAI,QAAgB,CAAC,KAAK,CAAA;YACpC,CAAC;YAED,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IAED,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;IACpD,IAAI,KAAK,GAAG,IAAI,IAAI,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;IACvD,IAAI,GAAG,GAAG,IAAI,IAAI,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAA;IAChD,IAAI,cAAc,GAAG,IAAI,EAAE,OAAO,IAAI,EAAE,CAAA;IACxC,IAAI,gBAAgB,GAAQ,EAAE,CAAA;IAE9B,IAAI,QAAgB,CAAA;IACpB,IAAI,IAAI,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;QACzB,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAA;IACxB,CAAC;SACI,CAAC;QACJ,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI;YACtD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,MAAM,EAAE,CAAC;YACX,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAA;YACpB,yEAAyE;YACzE,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACnD,gBAAgB,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;YACtD,CAAC;QACH,CAAC;aACI,CAAC;YACJ,IAAI,GAAG,GAAG,CAAC,CAAA;YACX,MAAM,SAAS,GAAuB,EAAE,CAAA;YACxC,QAAQ,GAAG,IAAI,MAAM;YAEnB,wDAAwD;YACxD,SAAS,GAAG,IAAI,GAAG,GAAG;gBACtB,SAAS,GAAG,GAAG,GAAG,GAAG;gBACrB,SAAS,GAAG,KAAK,GAAG,GAAG;gBAEvB,4BAA4B;gBAC5B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;qBAC3B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;oBACjC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;oBACtF,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;qBACrB,GAAG,CAAC,CAAC,CAAS,EAAE,CAAM,EAAE,EAAE,CAAC;gBAE1B,iFAAiF;gBACjF,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;oBAClC,gBAAgB,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;oBACvC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAEtB,2BAA2B;oBAC3B,UAAU,GAAG,EAAE,IAAI,CAAC,GAAG;wBAEvB,iBAAiB;wBACjB,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;4BAEjD,qEAAqE;6BACpE,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,SAAS,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;4BAEnE,oEAAoE;4BACpE,2DAA2D;4BAC3D,6BAA6B;4BAC7B,kCAAkC;4BAClC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC,CAAC;gCACpD,CAAC,SAAS,GAAG,EAAE,iBAAiB;oCAC9B,QAAQ;oCACR,SAAS;oCACT,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wCACL,SAAS,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG;4CAChD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC5C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oCACzD,YAAY,CAAC,CAAC,CAAC;gCAEjB,qBAAqB;gCACrB,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CACpB,CAAC;qBACD,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAEf,IAAI,eAAe,CAAC,IAAI,IAAI,qBAAqB,EAAE,CAAC;gBAClD,eAAe,CAAC,KAAK,EAAE,CAAA;YACzB,CAAC;YACD,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC;IAED,IAAI,MAAM,GAAG,GAAG,CAAA;IAChB,IAAI,KAAK,GAAG,IAAI,CAAA;IAEhB,MAAM,eAAe,GAAG,IAAI,IAAI,IAAI,EAAE,MAAM,CAAA;IAC5C,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,IAAI,KAAK,GAAa,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAE/C,6EAA6E;IAC7E,IAAI,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,IAAK,CAAC,MAAO,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAEjD,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAE9B,IAAI,CAAC,EAAE,CAAC;YACN,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAA;YACrB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;YAE/B,IAAI,EAAE,GAAG,CAAC,CAAC,MAAM,IAAI,EAAE,CAAA;YAEvB,IAAI,MAAM,CAAA;YACV,IAAI,IAAI,GAAG,CAAC,CAAA;YACZ,IAAI,GAAG,GAAG,EAAE,CAAC,GAAG,CAAA,CAAC,OAAO;YAExB,mCAAmC;YACnC,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;gBAChB,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;gBAChC,IAAI,EAAE,EAAE,CAAC;oBACP,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;gBAChB,CAAC;qBACI,IAAI,sBAAsB,KAAK,GAAG,EAAE,CAAC;oBACxC,MAAM,GAAG,EAAE,GAAG,QAAQ,CAAA;gBACxB,CAAC;qBACI,CAAC;oBACJ,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;gBAC3B,CAAC;gBACD,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAA;YACtC,CAAC;YAED,2BAA2B;iBACtB,CAAC;gBACJ,GAAG,GAAG,EAAE,CAAA;gBACR,MAAM,GAAG,EAAE,CAAA;gBAEX,4EAA4E;gBAC5E,IAAI,GAAG,GAAQ,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACtD,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;oBAChB,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;oBACnB,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBAC9D,CAAC;YACH,CAAC;YAED,oFAAoF;YACpF,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,QAAQ,CAAC,CAAA;YACzE,CAAC;iBACI,CAAC;gBACJ,IAAI,EAAE,GAAG,OAAO,MAAM,CAAA;gBAEtB,gEAAgE;gBAChE,IAAI,IAAI,IAAI,MAAM,IAAI,CAAC,QAAQ,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;oBACzD,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG;wBACrC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;gBAC/B,CAAC;gBAED,kFAAkF;qBAC7E,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;oBAE3B,uDAAuD;oBACvD,IAAI,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;yBAC5B,MAAM,CAAC,CAAC,CAAM,EAAE,CAAQ,EAAE,CAAM,EAAE,EAAE,CACrC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACxB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACpD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;4BACb,gCAAgC;4BAChC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBAClD,CAAC,CAAC,IAAI,CACT,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;oBAE1C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;gBACtE,CAAC;gBAED,6DAA6D;qBACxD,CAAC;oBACJ,MAAM,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;gBAC7D,CAAC;gBAED,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAA;YACnD,CAAC;QACH,CAAC;aACI,CAAC;YACJ,MAAM,CAAC,MAAM,CAAC,CAAA;YACd,KAAK,GAAG,KAAK,CAAA;QACf,CAAC;IACH,CAAC;IAGD,OAAO,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAC/C,CAAC;AAGD,SAAS,gBAAgB,CAAC,CAAS;IACjC,IAAI,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAA;QACnD,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACzB,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAGD,SAAS,MAAM,CAAC,GAAW,EAAE,MAAmC;IAC9D,GAAG,GAAG,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAA;IACjC,MAAM,GAAG,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IACpC,MAAM,GAAG,QAAQ,KAAK,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAA;IACtE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,GAAG,MAAM,CAAC,CAAA;IAChD,0BAA0B;IAC1B,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,yCAAyC;AACzC,SAAS,IAAI,CAAC,CAAM,EAAE,CAAM;IAC1B,OAAO,MAAM;SACV,OAAO,CAAC,CAAC,CAAC;SACV,MAAM,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM;SAC5C,OAAO,CAAC,CAAC,CAAC;SACV,MAAM,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;IAC9D,6CAA6C;IAC7C,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;QAC5C,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;KAC7C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACV,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;UACnD,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACtD,CAAC;AAED,IAAI,CAAC,IAAI,GAAG,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAA;AACzB,yFAAyF;AACzF,IAAI,CAAC,MAAM,GAAG,CAAC,CAAM,EAAE,EAAE,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,CAAM,EAAE,EAAE,CAC9E,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AAC3F,IAAI,CAAC,GAAG,GAAG,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;AAGpC,+CAA+C;AAC/C,SAAS,IAAI,CAAC,CAAM,EAAE,CAAM;IAC1B,OAAO,MAAM;SACV,OAAO,CAAC,CAAC,CAAC;SACV,MAAM,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM;SAC5C,OAAO,CAAC,CAAC,CAAC;SACV,MAAM,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;IAC9D,6CAA6C;IAC7C,4EAA4E;IAC5E,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;QAC5C,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;KAC7C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACV,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;UACnD,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AAEpD,CAAC;AACD,IAAI,CAAC,IAAI,GAAG,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAA;AACzB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAM,EAAE,EAAE,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,CAAM,EAAE,EAAE,CAC9E,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AAC3F,IAAI,CAAC,GAAG,GAAG,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;AAGpC,SAAS,QAAQ,CAAC,IAAa,EAAE,QAG7B,EAAE;IACJ,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAA;IAC5C,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;IAE3B,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,IAAI,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC7C,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,IAAI,GAAG,GAAQ;YACb,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YAChB,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,GAAG,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YAChB,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YAClB,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YAClB,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;SAClB,CAAA;QACD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAChB,GAAG,GAAG;gBACJ,EAAE,EAAE,GAAG,CAAC,IAAI;gBACZ,EAAE,EAAE,GAAG,CAAC,KAAK;gBACb,EAAE,EAAE,GAAG,CAAC,GAAG;gBACX,EAAE,EAAE,GAAG,CAAC,IAAI;gBACZ,EAAE,EAAE,GAAG,CAAC,MAAM;gBACd,EAAE,EAAE,GAAG,CAAC,MAAM;gBACd,EAAE,EAAE,GAAG,CAAC,KAAK;aACd,CAAA;QACH,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,OAAO,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAA;AACxD,CAAC;AAGD,SAAS,OAAO,CACd,KAAc,EACd,QAAiB;IAGjB,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,CAAA;IACxB,MAAM,IAAI,GAAG,mBAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAA;IAC3C,MAAM,CAAC,GAAG,MAAa,CAAA;IACvB,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;IAC/B,MAAM,IAAI,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE;QAC9B,MAAM,KAAK,GAAG,EAAE,GAAG,IAAI,KAAK,EAAE,CAAC,KAAK,CAAA;QACpC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;IAC1D,CAAC,CAAA;IACD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAChB,IAAI,CAAC,GAAG,GAAG,CAAC,QAAiB,EAAE,GAAmB,EAAE,EAAE,CACtD,CAAC,GAAG,GAAG,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACtD,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAA;IACjF,OAAO,IAAI,CAAA;AACb,CAAC;AAID;;;;;;;EAOE;AACF,MAAM,UAAU,GAAG,+nCAA+nC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AAiC3pC,gCAAU;AA9BZ,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,UAAU,CAAC,QAAQ,CAAC,mBAAI,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;AACjF,CAAC"}
1
+ {"version":3,"file":"basic.js","sourceRoot":"","sources":["../../src/util/basic.ts"],"names":[],"mappings":"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"}
@@ -105,6 +105,7 @@ declare const PointDefShape: {
105
105
  name: string;
106
106
  message: string;
107
107
  stack?: string;
108
+ cause?: unknown;
108
109
  }[];
109
110
  spec(): any;
110
111
  node(): import("shape").Node<{
@@ -6,6 +6,9 @@ exports.makeFuncDef = makeFuncDef;
6
6
  const shape_1 = require("shape");
7
7
  const basic_1 = require("./basic");
8
8
  class Point {
9
+ id;
10
+ name;
11
+ args;
9
12
  constructor(id, name) {
10
13
  this.id = id;
11
14
  this.name = name;
@@ -37,6 +40,7 @@ class Point {
37
40
  }
38
41
  exports.Point = Point;
39
42
  class SerialPoint extends Point {
43
+ points;
40
44
  constructor(id) {
41
45
  super(id);
42
46
  this.points = [];
@@ -59,6 +63,7 @@ class SerialPoint extends Point {
59
63
  }
60
64
  exports.SerialPoint = SerialPoint;
61
65
  class RootPoint extends SerialPoint {
66
+ points;
62
67
  constructor(id) {
63
68
  super(id);
64
69
  this.points = [];
@@ -96,6 +101,7 @@ class RootPoint extends SerialPoint {
96
101
  }
97
102
  exports.RootPoint = RootPoint;
98
103
  class ParallelPoint extends Point {
104
+ points;
99
105
  constructor(id) {
100
106
  super(id);
101
107
  this.points = [];
@@ -111,6 +117,7 @@ class ParallelPoint extends Point {
111
117
  }
112
118
  exports.ParallelPoint = ParallelPoint;
113
119
  class FuncPoint extends Point {
120
+ func;
114
121
  constructor(id, func) {
115
122
  super(id, func.name);
116
123
  this.func = func;
@@ -126,6 +133,7 @@ class FuncPoint extends Point {
126
133
  }
127
134
  exports.FuncPoint = FuncPoint;
128
135
  class PrintPoint extends Point {
136
+ path;
129
137
  constructor(id, path) {
130
138
  super(id);
131
139
  this.path = path;
@@ -1 +1 @@
1
- {"version":3,"file":"point.js","sourceRoot":"","sources":["../../src/util/point.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"point.js","sourceRoot":"","sources":["../../src/util/point.ts"],"names":[],"mappings":"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"}
package/gen/readme.js CHANGED
@@ -26,7 +26,8 @@ const jostraca = Jostraca()
26
26
 
27
27
  jostraca.generate(
28
28
  {
29
- folder: __dirname+'/..' },
29
+ // Repo root (README.md lives there; this script now runs from ts/gen/).
30
+ folder: __dirname+'/../..' },
30
31
  () => {
31
32
  Folder({ name: '.' }, () => {
32
33
  Inject(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jostraca",
3
- "version": "0.29.1",
3
+ "version": "0.31.0",
4
4
  "main": "dist/jostraca.js",
5
5
  "type": "commonjs",
6
6
  "types": "dist/jostraca.d.ts",
@@ -13,7 +13,8 @@
13
13
  "author": "Richard Rodger (http://richardrodger.com)",
14
14
  "repository": {
15
15
  "type": "git",
16
- "url": "git://github.com/jostraca/jostraca.git"
16
+ "url": "git://github.com/jostraca/jostraca.git",
17
+ "directory": "ts"
17
18
  },
18
19
  "scripts": {
19
20
  "test": "node --enable-source-maps --test dist-test/**/*.test.js",
@@ -34,8 +35,8 @@
34
35
  "LICENSE"
35
36
  ],
36
37
  "devDependencies": {
37
- "@types/node": "25.6.0",
38
- "typescript": "5.9.3"
38
+ "@types/node": "25.9.2",
39
+ "typescript": "6.0.3"
39
40
  },
40
41
  "peerDependencies": {
41
42
  "jsonic": ">=2",
@@ -43,7 +44,7 @@
43
44
  "shape": ">=10"
44
45
  },
45
46
  "dependencies": {
46
- "diff": "8.0.4",
47
- "node-diff3": "3.2.0"
47
+ "diff": "9.0.0",
48
+ "node-diff3": "3.2.1"
48
49
  }
49
50
  }
@@ -78,7 +78,7 @@ class BuildMeta {
78
78
  saveMetaData(this.fh, this.next)
79
79
 
80
80
  if (false === this.fh.control.version) {
81
- this.fh.saveFile(Path.join(this.next.foldername, '.gitignore'), `
81
+ this.fh.saveFile(Path.join(this.fh.folder, this.next.foldername, '.gitignore'), `
82
82
  ${this.next.filename}
83
83
  generated
84
84
  `)
@@ -90,7 +90,9 @@ generated
90
90
 
91
91
 
92
92
  function loadMetaData(fh: FileHandler, bmeta: BuildMetaData) {
93
- const metapath = Path.join(bmeta.foldername, bmeta.filename)
93
+ // Full (folder-prefixed) path: the FileHandler FS methods use paths
94
+ // directly and no longer re-join `this.folder`.
95
+ const metapath = Path.join(fh.folder, bmeta.foldername, bmeta.filename)
94
96
  if (fh.existsFile(metapath)) {
95
97
  const json = fh.loadJSON(metapath)
96
98
  bmeta.last = json.last
@@ -102,7 +104,9 @@ function loadMetaData(fh: FileHandler, bmeta: BuildMetaData) {
102
104
 
103
105
 
104
106
  function saveMetaData(fh: FileHandler, bmeta: BuildMetaData) {
105
- const metapath = Path.join(bmeta.foldername, bmeta.filename)
107
+ // Full (folder-prefixed) path: the FileHandler FS methods use paths
108
+ // directly and no longer re-join `this.folder`.
109
+ const metapath = Path.join(fh.folder, bmeta.foldername, bmeta.filename)
106
110
  fh.saveJSON(metapath, bmeta)
107
111
  }
108
112
 
@@ -511,7 +511,10 @@ class FileHandler {
511
511
 
512
512
  validPath(path, this.maxdepth, CN + FN + 'from:' + wstr)
513
513
 
514
- const fullpath = Path.isAbsolute(path) ? path : fwd(Path.join(this.folder, path))
514
+ // Paths are canonical (already folder-prefixed by the build phase, or
515
+ // absolute); use them directly. Do NOT re-join `this.folder`, which would
516
+ // double-prefix relative non-`.` output folders. Matches the Go port.
517
+ const fullpath = fwd(Path.normalize(path))
515
518
 
516
519
  try {
517
520
  const exists = fs.existsSync(fullpath)
@@ -539,8 +542,9 @@ class FileHandler {
539
542
  validPath(topath, this.maxdepth, CN + FN + 'to:' + wstr)
540
543
 
541
544
  const isBinary = isbinext(frompath)
542
- const fulltopath = Path.isAbsolute(topath) ? topath : fwd(Path.join(this.folder, topath))
543
- const fullfrompath = Path.isAbsolute(frompath) ? frompath : fwd(Path.join(this.folder, frompath))
545
+ // Canonical paths: use directly, do not re-join `this.folder` (see existsFile).
546
+ const fulltopath = fwd(Path.normalize(topath))
547
+ const fullfrompath = fwd(Path.normalize(frompath))
544
548
 
545
549
  try {
546
550
  const existed = fs.existsSync(fulltopath)
@@ -548,7 +552,7 @@ class FileHandler {
548
552
  const content = fs.readFileSync(fullfrompath, isBinary ? undefined : 'utf8')
549
553
 
550
554
  if (!this.control.dryrun) {
551
- fs.writeFileSync(topath, content, { flush: true })
555
+ fs.writeFileSync(fulltopath, content, { flush: true })
552
556
  }
553
557
 
554
558
  this.audit.push([CN + FN + wstr,
@@ -646,7 +650,8 @@ class FileHandler {
646
650
  validPath(path, this.maxdepth, CN + FN + wstr)
647
651
 
648
652
  try {
649
- const fullpath = Path.isAbsolute(path) ? path : fwd(Path.join(this.folder, path))
653
+ // Canonical path: use directly, do not re-join `this.folder` (see existsFile).
654
+ const fullpath = fwd(Path.normalize(path))
650
655
  const content = fs.readFileSync(fullpath, opts)
651
656
  this.audit.push([CN + FN + wstr,
652
657
  { path, when, size: content.length }])
@@ -704,9 +709,9 @@ class FileHandler {
704
709
  }
705
710
 
706
711
  try {
712
+ // Canonical path: use directly, do not re-join `this.folder` (see existsFile).
707
713
  path = fwd(Path.normalize(path))
708
- const isAbsolute = Path.isAbsolute(path)
709
- const fullpath = isAbsolute ? path : fwd(Path.join(this.folder, path))
714
+ const fullpath = path
710
715
  const parentfolder = fwd(Path.dirname(fullpath))
711
716
  const existed = fs.existsSync(fullpath)
712
717
 
@@ -3,6 +3,8 @@ import Path from 'node:path'
3
3
 
4
4
  import type { Node, BuildContext } from '../jostraca'
5
5
 
6
+ import { escre } from '../jostraca'
7
+
6
8
  const ON = 'InjectOp:'
7
9
 
8
10
  const InjectOp = {
@@ -41,8 +43,12 @@ const InjectOp = {
41
43
  let src = fs.readFileSync(cfile.fullpath, 'utf8')
42
44
 
43
45
  content = node.meta.markers.join(content)
44
- let re = new RegExp(node.meta.markers.join('(.*?)'), 'sg')
45
- src = src.replace(re, content)
46
+ // Escape markers so regex metacharacters in custom markers are matched
47
+ // literally, and use a replacement function so `$`-sequences in the
48
+ // injected content (e.g. `$1`, `$&`, shell/PHP/JS variables) are not
49
+ // interpreted as special replacement patterns.
50
+ let re = new RegExp(node.meta.markers.map(escre).join('(.*?)'), 'sg')
51
+ src = src.replace(re, () => content)
46
52
  // fs.writeFileSync(cfile.fullpath, src, { flush: true })
47
53
  buildctx.fh.save(cfile.fullpath as string, src)
48
54
  }
package/src/tsconfig.json CHANGED
@@ -8,7 +8,9 @@
8
8
  "resolveJsonModule": true,
9
9
  "sourceMap": true,
10
10
  "strict": true,
11
- "target": "es2021",
11
+ "target": "es2022",
12
+ "lib": ["esnext"],
13
+ "types": ["node"],
12
14
  "declaration": true,
13
15
  "declarationDir": "../dist"
14
16
  }
package/src/util/basic.ts CHANGED
@@ -62,7 +62,13 @@ function each(
62
62
  return out
63
63
  }
64
64
 
65
- let entries: any = Object.entries(subject as any)
65
+ // Always sort entries by key alphabetically for cross-stack
66
+ // determinism (Go map iteration is randomised; sorting on both
67
+ // sides keeps output byte-equal). spec.sort still controls the
68
+ // by-value sort variant below.
69
+ let entries: any = Object.entries(subject as any).sort(
70
+ (a: any, b: any) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0
71
+ )
66
72
 
67
73
  if (call) {
68
74
  entries =
@@ -162,7 +168,7 @@ function getx(root: any, path: string | string[]): any {
162
168
  let t0 = tokens[i]
163
169
  let t1 = tokens[i + 1]
164
170
 
165
- if (t1 && t1.match(/=|!=/)) {
171
+ if (t1 && t1.match(/^(<=?|>=?|==?|!=|~)$/)) {
166
172
  let val = node[t0]
167
173
  let arg: any = tokens[i + 2]
168
174
 
@@ -316,12 +322,31 @@ function lcf(s: string) {
316
322
  function partify(input: any[] | string): string[] {
317
323
  return 'string' == typeof input ?
318
324
  input
319
- .replace(/([A-Z])([A-Z]+)/g, (_, first, rest) => first + rest.toLowerCase())
325
+ // Collapse acronym runs (e.g. `XMLParser` → `XmlParser`), but only when
326
+ // the trailing uppercase isn't itself the start of a new word —
327
+ // `(?![a-z])` prevents `AService` collapsing into `Aservice`.
328
+ .replace(/([A-Z])([A-Z]+)(?![a-z])/g, (_, first, rest) => first + rest.toLowerCase())
320
329
  .split(/[-_ ]|([A-Z])/)
321
330
  .filter(p => null != p && '' !== p)
322
- .reduce((a: string[], p: string) =>
323
- (((0 < a.length && 1 === a[a.length - 1].length) ?
324
- a[a.length - 1] += p : a.push(p)), a), []) :
331
+ // Re-attach a captured single uppercase letter to the lowercase tail
332
+ // that follows it (the rest of its word). Without the uppercase guard,
333
+ // a stray single lowercase letter between separators (e.g. `a` in
334
+ // `yes-as-a-service`) would also be glued to the next part.
335
+ .reduce((a: string[], p: string) => {
336
+ const prev = a[a.length - 1]
337
+ if (
338
+ 0 < a.length &&
339
+ 1 === prev.length &&
340
+ 'A' <= prev && prev <= 'Z' &&
341
+ !('A' <= p[0] && p[0] <= 'Z')
342
+ ) {
343
+ a[a.length - 1] = prev + p
344
+ }
345
+ else {
346
+ a.push(p)
347
+ }
348
+ return a
349
+ }, [] as string[]) :
325
350
  Array.isArray(input) ? input.map(n => '' + n) : ['' + input]
326
351
  }
327
352
 
@@ -524,7 +549,9 @@ function template(
524
549
  insert = ''
525
550
 
526
551
  // Use first key with a defined match (that is, the alternate that matched).
527
- let key: any = Object.keys(mg).
552
+ // Sort for deterministic selection across stacks (Go map
553
+ // iteration is randomised; both stacks now iterate alphabetically).
554
+ let key: any = Object.keys(mg).sort().
528
555
  filter(k => k.startsWith('J_K') && null != mg[k])[0]
529
556
  if (null != key) {
530
557
  ref = mg[key] || ''
@@ -549,7 +576,10 @@ function template(
549
576
  else if ('function' === ti) {
550
577
 
551
578
  // Provide custom named groups, removing unique prefix.
579
+ // Sorted iteration so collisions resolve deterministically
580
+ // across stacks.
552
581
  let groups = Object.entries(mg)
582
+ .sort((a: any, b: any) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0)
553
583
  .reduce((a: any, n: any[], _: any) =>
554
584
  ((n[0].startsWith('J_') ? (
555
585
  (_ = n[0].match(/^J_[NT]\d+_(.+)$/)) && null != n[1] ?
@@ -601,12 +631,18 @@ function indent(src: string, indent: string | number | undefined) {
601
631
  }
602
632
 
603
633
 
604
- // Map child objects to new child objects
634
+ // Map child objects to new child objects. Iterates source and spec
635
+ // keys in alphabetical order for cross-stack determinism (Go map
636
+ // iteration is randomised; sorting on both sides keeps output
637
+ // byte-equal).
605
638
  function cmap(o: any, p: any) {
639
+ const sortByKey = (a: any, b: any) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0
606
640
  return Object
607
641
  .entries(o)
642
+ .sort(sortByKey)
608
643
  .reduce((r: any, n: any, _: any) => (_ = Object
609
644
  .entries(p)
645
+ .sort(sortByKey)
610
646
  .reduce((s: any, m: any) => (cmap.FILTER === s ? s : (s[m[0]] = (
611
647
  // transfom(val,key,current,parentkey,parent)
612
648
  'function' === typeof m[1] ? m[1](n[1][m[0]], {
@@ -623,12 +659,15 @@ cmap.FILTER = (x: any) => 'function' === typeof x ? ((y: any, p: any, _: any) =>
623
659
  cmap.KEY = (_: any, p: any) => p.key
624
660
 
625
661
 
626
- // Map child objects to a list of child objects
662
+ // Map child objects to a list of child objects. Sorted iteration as cmap.
627
663
  function vmap(o: any, p: any) {
664
+ const sortByKey = (a: any, b: any) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0
628
665
  return Object
629
666
  .entries(o)
667
+ .sort(sortByKey)
630
668
  .reduce((r: any, n: any, _: any) => (_ = Object
631
669
  .entries(p)
670
+ .sort(sortByKey)
632
671
  .reduce((s: any, m: any) => (vmap.FILTER === s ? s : (s[m[0]] = (
633
672
  // transfom(val,key,current,parentkey,parent)
634
673
  // 'function' === typeof m[1] ? m[1](n[1][m[0]], m[0], n[1], n[0], o) : m[1]
package/README.md DELETED
@@ -1,283 +0,0 @@
1
- # jostraca
2
-
3
- A code and project generator that uses React-style components to define
4
- files, folders, and content declaratively.
5
-
6
- [![npm version](https://badge.fury.io/js/jostraca.svg)](https://www.npmjs.com/package/jostraca)
7
- [![license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/jostraca/jostraca/blob/master/LICENSE)
8
-
9
-
10
- ## Overview
11
-
12
- Jostraca lets you compose a file tree using components — `Project`,
13
- `Folder`, `File`, `Content`, `Fragment`, `Copy`, and more. You describe
14
- the output structure in a define phase, then Jostraca builds the actual
15
- files in a build phase. Templates, slots, injections, 3-way merges, and
16
- custom components give you fine-grained control over generated output.
17
-
18
-
19
- ## Install
20
-
21
- ```bash
22
- npm install jostraca
23
- ```
24
-
25
- Peer dependencies:
26
-
27
- ```bash
28
- npm install jsonic memfs
29
- ```
30
-
31
-
32
- ## Quick Start
33
-
34
- ```typescript
35
- import { Jostraca, Project, Folder, File, Content } from 'jostraca'
36
-
37
- const jostraca = Jostraca()
38
-
39
- await jostraca.generate({ folder: './out' }, () => {
40
- Project({ folder: 'my-app' }, () => {
41
-
42
- Folder({ name: 'src' }, () => {
43
- File({ name: 'index.js' }, () => {
44
- Content('console.log("hello world")\n')
45
- })
46
- })
47
-
48
- File({ name: 'package.json' }, () => {
49
- Content('{ "name": "my-app" }\n')
50
- })
51
- })
52
- })
53
- ```
54
-
55
- This generates:
56
-
57
- ```
58
- out/
59
- my-app/
60
- src/
61
- index.js -> console.log("hello world")
62
- package.json -> { "name": "my-app" }
63
- ```
64
-
65
-
66
- ## Template Substitution
67
-
68
- Use `$$path$$` syntax to insert values from the model:
69
-
70
- ```typescript
71
- const jostraca = Jostraca({
72
- model: { app: { name: 'Acme', version: '1.0.0' } }
73
- })
74
-
75
- await jostraca.generate({ folder: './out' }, () => {
76
- Project({}, () => {
77
- File({ name: 'config.txt' }, () => {
78
- Content('App: $$app.name$$ v$$app.version$$\n')
79
- })
80
- })
81
- })
82
- // config.txt -> App: Acme v1.0.0
83
- ```
84
-
85
-
86
- ## Fragments and Slots
87
-
88
- Read external template files with `Fragment`, and replace marked regions
89
- with `Slot`:
90
-
91
- ```typescript
92
- // template.html contains:
93
- // <html>
94
- // <!-- <[SLOT:head]> -->
95
- // <body>
96
- // <!-- <[SLOT:body]> -->
97
- // </body>
98
- // </html>
99
-
100
- File({ name: 'index.html' }, () => {
101
- Fragment({ from: '/templates/template.html' }, () => {
102
- Slot({ name: 'head' }, () => {
103
- Content('<title>My Page</title>')
104
- })
105
- Slot({ name: 'body' }, () => {
106
- Content('<h1>Hello</h1>')
107
- })
108
- })
109
- })
110
- ```
111
-
112
- Unnamed `<[SLOT]>` markers receive all non-Slot children of the Fragment.
113
-
114
-
115
- ## Copy
116
-
117
- Copy files and directories, applying template substitution to text files:
118
-
119
- ```typescript
120
- const jostraca = Jostraca({
121
- model: { title: 'My App' }
122
- })
123
-
124
- await jostraca.generate({ folder: './out' }, () => {
125
- Project({ folder: 'app' }, () => {
126
- Folder({ name: 'static' }, () => {
127
- Copy({ from: '/templates/assets' })
128
- Copy({ from: '/templates/readme.txt', to: 'README.txt' })
129
- })
130
- })
131
- })
132
- ```
133
-
134
-
135
- ## Inject
136
-
137
- Update existing files by replacing content between markers:
138
-
139
- ```typescript
140
- // existing foo.txt contains:
141
- // HEADER
142
- // #--START--#
143
- // old content
144
- // #--END--#
145
- // FOOTER
146
-
147
- Project({}, () => {
148
- Inject({ name: 'foo.txt' }, () => {
149
- Content('new content')
150
- })
151
- })
152
- // Result: HEADER\n#--START--#\nnew content\n#--END--#\nFOOTER
153
- ```
154
-
155
-
156
- ## Custom Components
157
-
158
- Use `cmp()` to create reusable components:
159
-
160
- ```typescript
161
- import { cmp, Content, each } from 'jostraca'
162
-
163
- const FunctionDef = cmp(function FunctionDef(props: any) {
164
- Content(`function ${props.name}(`)
165
- Content(props.params.join(', '))
166
- Content(') {\n')
167
- each(props.ctx$.model.body, (line) => Content(` ${line}\n`))
168
- Content('}\n')
169
- })
170
-
171
- // Usage inside a File:
172
- File({ name: 'utils.js' }, () => {
173
- FunctionDef({ name: 'greet', params: ['name'] })
174
- })
175
- ```
176
-
177
-
178
- ## Existing File Handling
179
-
180
- Control how generated files interact with files that already exist:
181
-
182
- ```typescript
183
- await jostraca.generate({
184
- folder: './out',
185
- existing: {
186
- txt: {
187
- write: true, // Overwrite existing files (default)
188
- preserve: true, // Keep .old. backup of overwritten files
189
- present: false, // Write to .new. instead of overwriting
190
- diff: false, // Annotated 2-way diff
191
- merge: false, // 3-way merge with conflict markers
192
- },
193
- bin: {
194
- write: true,
195
- preserve: false,
196
- present: false,
197
- }
198
- }
199
- }, root)
200
- ```
201
-
202
-
203
- ## Protected Files
204
-
205
- Add `# JOSTRACA_PROTECT` to any generated file to prevent it from being
206
- overwritten on subsequent generations. This lets users safely edit
207
- generated files.
208
-
209
-
210
- ## In-Memory Generation
211
-
212
- Use `mem` and `vol` for testing or virtual file systems:
213
-
214
- ```typescript
215
- const jostraca = Jostraca({
216
- mem: true,
217
- vol: {
218
- '/templates/header.txt': 'HEADER\n'
219
- }
220
- })
221
-
222
- const result = await jostraca.generate({ folder: '/' }, root)
223
-
224
- const files = result.vol().toJSON()
225
- // { '/output.txt': '...' }
226
- ```
227
-
228
-
229
- ## Result Object
230
-
231
- `generate()` returns a `JostracaResult`:
232
-
233
- ```typescript
234
- {
235
- when: number, // Timestamp of generation
236
- files: {
237
- written: string[], // Files written to disk
238
- preserved: string[], // Backup copies created
239
- presented: string[], // .new. files created
240
- diffed: string[], // Diff files created
241
- merged: string[], // Merged files created
242
- conflicted: string[], // Files with merge conflicts
243
- unchanged: string[], // Files unchanged
244
- },
245
- audit: () => Audit[], // Audit trail of operations
246
- vol?: () => any, // Virtual volume (mem mode)
247
- fs?: () => FST, // File system (mem mode)
248
- }
249
- ```
250
-
251
-
252
- ## Utility Functions
253
-
254
- Jostraca exports several utility functions for working with names,
255
- templates, and data:
256
-
257
- ```typescript
258
- import {
259
- each, // Iterate arrays/objects with marking and sorting
260
- get, // Simple dot-path property access
261
- getx, // Advanced path access with operators
262
- camelify, // 'foo_bar' -> 'FooBar'
263
- snakify, // 'FooBar' -> 'foo_bar'
264
- kebabify, // 'FooBar' -> 'foo-bar'
265
- names, // Generate all case variants of a name
266
- template, // Process template strings with model data
267
- indent, // Indent text content
268
- cmp, // Create custom components
269
- deep, // Deep merge objects
270
- } from 'jostraca'
271
- ```
272
-
273
- See [REFERENCE.md](REFERENCE.md) for full details on every component,
274
- option, and utility function.
275
-
276
-
277
- ## License
278
-
279
- MIT. Copyright (c) Richard Rodger.
280
-
281
- ## Go Port
282
-
283
- A Go template utility port is available under [`go/`](./go), using `github.com/rjrodger/shape/go` from release `go/v0.1.0`.