@gnapi/cotester 1.2.3 → 1.2.4

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/checker.d.ts CHANGED
@@ -18,6 +18,8 @@ interface FileCoverage {
18
18
  coveredCount: number;
19
19
  /** Total number of exported functions/methods in this file */
20
20
  totalCount: number;
21
+ /** Number of functions whose @testgen-sig fingerprint no longer matches current source */
22
+ staleCount: number;
21
23
  }
22
24
  export interface CheckResult {
23
25
  fileCoverages: FileCoverage[];
@@ -31,6 +33,8 @@ export interface CheckResult {
31
33
  minCoverage: number;
32
34
  /** true when coveragePercent >= minCoverage */
33
35
  passed: boolean;
36
+ /** Total functions with changed signatures (stale tests) */
37
+ totalStale: number;
34
38
  }
35
39
  export interface CheckOptions {
36
40
  /**
@@ -57,4 +61,11 @@ export interface CheckOptions {
57
61
  * @param opts Reporter / threshold options.
58
62
  */
59
63
  export declare function runCheck(watchFolder?: string, opts?: CheckOptions): void;
64
+ /**
65
+ * Run a per-file status report — shows covered/total/stale for every source file.
66
+ * Unlike `runCheck`, this never exits with code 1 and has no threshold.
67
+ *
68
+ * @param watchFolder Optional subfolder of srcDir to restrict the scan to.
69
+ */
70
+ export declare function runStatus(watchFolder?: string): void;
60
71
  export {};
package/dist/checker.js CHANGED
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.runCheck = runCheck;
37
+ exports.runStatus = runStatus;
37
38
  /**
38
39
  * CoTester Coverage Checker
39
40
  *
@@ -49,6 +50,7 @@ const path = __importStar(require("path"));
49
50
  const configManager_1 = require("./configManager");
50
51
  const utils_1 = require("./utils");
51
52
  const astCache_1 = require("./astCache");
53
+ const ignoreManager_1 = require("./ignoreManager");
52
54
  // ─── Public entry point ───────────────────────────────────────────────────────
53
55
  /**
54
56
  * Run the coverage check, print a report, and exit with code 1 on gate failure.
@@ -89,27 +91,32 @@ function runCheck(watchFolder, opts = {}) {
89
91
  }
90
92
  // ─── Coverage computation ─────────────────────────────────────────────────────
91
93
  function computeCoverage(scanRoot, projectRoot, config) {
92
- const sourceFiles = collectSourceFiles(scanRoot);
94
+ const ignorePatterns = (0, ignoreManager_1.loadIgnorePatterns)(projectRoot);
95
+ const isIgnored = (0, ignoreManager_1.buildIgnorePredicate)(ignorePatterns, projectRoot);
96
+ const sourceFiles = collectSourceFiles(scanRoot, isIgnored);
93
97
  const minCoverage = config.minCoverage ?? 80;
94
98
  const fileCoverages = [];
95
99
  let totalFunctions = 0;
96
100
  let coveredFunctions = 0;
101
+ let totalStale = 0;
97
102
  // Absolute srcRoot avoids misidentifying parent directories with the same segment name.
98
103
  const absSrcRoot = path.resolve(projectRoot, config.srcDir);
99
104
  for (const srcPath of sourceFiles) {
100
- const functions = safeAnalyze(srcPath, projectRoot);
101
- if (functions.length === 0)
105
+ const rawFunctions = safeAnalyze(srcPath, projectRoot);
106
+ if (rawFunctions.length === 0)
102
107
  continue;
103
108
  const testPath = (0, utils_1.mirrorPath)(srcPath, absSrcRoot, path.join(projectRoot, config.testDir), ".test.ts");
104
109
  const testFileExists = fs.existsSync(testPath);
105
110
  const testContent = readTestContent(testPath);
106
- const functionCoverages = functions.map((fn) => ({
111
+ const functionCoverages = rawFunctions.map((fn) => ({
107
112
  name: fn.name,
108
113
  covered: isCovered(fn.name, testContent),
109
114
  }));
110
115
  const fileCoveredCount = functionCoverages.filter((f) => f.covered).length;
116
+ const fileStaleCount = detectStaleCount(testContent, rawFunctions);
111
117
  totalFunctions += functionCoverages.length;
112
118
  coveredFunctions += fileCoveredCount;
119
+ totalStale += fileStaleCount;
113
120
  fileCoverages.push({
114
121
  srcPath,
115
122
  relPath: path.relative(projectRoot, srcPath).replace(/\\/g, "/"),
@@ -118,6 +125,7 @@ function computeCoverage(scanRoot, projectRoot, config) {
118
125
  functions: functionCoverages,
119
126
  coveredCount: fileCoveredCount,
120
127
  totalCount: functionCoverages.length,
128
+ staleCount: fileStaleCount,
121
129
  });
122
130
  }
123
131
  const coveragePercent = totalFunctions === 0 ? 100 : Math.round((coveredFunctions / totalFunctions) * 100);
@@ -128,6 +136,7 @@ function computeCoverage(scanRoot, projectRoot, config) {
128
136
  coveragePercent,
129
137
  minCoverage,
130
138
  passed: coveragePercent >= minCoverage,
139
+ totalStale,
131
140
  };
132
141
  }
133
142
  // ─── Report printer ───────────────────────────────────────────────────────────
@@ -215,6 +224,95 @@ function writeJsonReport(result, outputPath, projectRoot) {
215
224
  (0, utils_1.log)(`Failed to write coverage report: ${err?.message}`, "warn");
216
225
  }
217
226
  }
227
+ // ─── Status command ───────────────────────────────────────────────────────────
228
+ /**
229
+ * Run a per-file status report — shows covered/total/stale for every source file.
230
+ * Unlike `runCheck`, this never exits with code 1 and has no threshold.
231
+ *
232
+ * @param watchFolder Optional subfolder of srcDir to restrict the scan to.
233
+ */
234
+ function runStatus(watchFolder) {
235
+ const projectRoot = (0, utils_1.getProjectRoot)();
236
+ const config = (0, configManager_1.loadConfig)(projectRoot);
237
+ const baseAbsolute = path.resolve(projectRoot, config.srcDir);
238
+ const scanRoot = watchFolder
239
+ ? path.resolve(baseAbsolute, watchFolder)
240
+ : baseAbsolute;
241
+ (0, utils_1.log)("CoTester Status\n", "info");
242
+ const result = computeCoverage(scanRoot, projectRoot, config);
243
+ printStatusReport(result, projectRoot);
244
+ }
245
+ function printStatusReport(result, projectRoot) {
246
+ const { fileCoverages, totalFunctions, coveredFunctions, totalStale } = result;
247
+ if (fileCoverages.length === 0) {
248
+ (0, utils_1.log)("No source files found.", "warn");
249
+ return;
250
+ }
251
+ const maxPathLen = Math.max(...fileCoverages.map((f) => f.relPath.length));
252
+ for (const file of fileCoverages) {
253
+ const { relPath, coveredCount, totalCount, staleCount } = file;
254
+ const allCovered = coveredCount === totalCount;
255
+ const noneCovered = coveredCount === 0;
256
+ // Choose icon and colour
257
+ let icon;
258
+ let colour;
259
+ if (noneCovered) {
260
+ icon = "✖";
261
+ colour = "\x1b[31m"; // red
262
+ }
263
+ else if (!allCovered || staleCount > 0) {
264
+ icon = "⚠";
265
+ colour = "\x1b[33m"; // yellow
266
+ }
267
+ else {
268
+ icon = "✔";
269
+ colour = "\x1b[32m"; // green
270
+ }
271
+ const staleTag = staleCount > 0 ? ` \x1b[33m[stale: ${staleCount}]\x1b[0m` : "";
272
+ const pathCol = relPath.padEnd(maxPathLen);
273
+ const coverCol = `${coveredCount}/${totalCount} functions covered`;
274
+ console.log(` ${colour}${icon}\x1b[0m ${pathCol} ${colour}${coverCol}\x1b[0m${staleTag}`);
275
+ }
276
+ console.log("");
277
+ // Summary footer
278
+ const staleNote = totalStale > 0 ? ` (${totalStale} stale)` : "";
279
+ (0, utils_1.log)(`${fileCoverages.length} files · ${coveredFunctions}/${totalFunctions} functions covered${staleNote}`, coveredFunctions === totalFunctions && totalStale === 0 ? "success" : "warn");
280
+ }
281
+ // ─── Stale detection ──────────────────────────────────────────────────────────
282
+ /**
283
+ * Count how many functions in `rawFunctions` have a `@testgen-sig` fingerprint
284
+ * in the test file that no longer matches the current source signature.
285
+ * Functions without any fingerprint yet are NOT counted as stale.
286
+ */
287
+ function detectStaleCount(testContent, rawFunctions) {
288
+ if (!testContent)
289
+ return 0;
290
+ // Parse all @testgen-sig fingerprints: fnName → full fingerprint string
291
+ const re = /\/\/ @testgen-sig:(\S+)/g;
292
+ const existingSigs = new Map();
293
+ let m;
294
+ while ((m = re.exec(testContent)) !== null) {
295
+ const fp = m[1];
296
+ const parenIdx = fp.indexOf("(");
297
+ if (parenIdx !== -1) {
298
+ existingSigs.set(fp.slice(0, parenIdx), fp);
299
+ }
300
+ }
301
+ if (existingSigs.size === 0)
302
+ return 0;
303
+ let stale = 0;
304
+ for (const fn of rawFunctions) {
305
+ const params = fn.parameters
306
+ .map((p) => `${p.name}:${p.type.replace(/\s+/g, "")}`)
307
+ .join(",");
308
+ const currentSig = `${fn.name}(${params}):${fn.returnType.replace(/\s+/g, "")}`;
309
+ const oldSig = existingSigs.get(fn.name);
310
+ if (oldSig !== undefined && oldSig !== currentSig) {
311
+ stale++;
312
+ }
313
+ }
314
+ return stale;
315
+ }
218
316
  // ─── Helpers ──────────────────────────────────────────────────────────────────
219
317
  /** Read the test file content, returning empty string if it doesn't exist. */
220
318
  function readTestContent(testPath) {
@@ -248,7 +346,7 @@ function safeAnalyze(filePath, projectRoot) {
248
346
  }
249
347
  }
250
348
  /** Recursively collect .ts source files, skipping test/spec/d.ts and ignored dirs. */
251
- function collectSourceFiles(dir) {
349
+ function collectSourceFiles(dir, isIgnored = () => false) {
252
350
  const IGNORED = new Set(["node_modules", "cotester", "dist", ".git"]);
253
351
  const results = [];
254
352
  if (!fs.existsSync(dir))
@@ -256,14 +354,16 @@ function collectSourceFiles(dir) {
256
354
  for (const entry of fs.readdirSync(dir, { withFileTypes: true })) {
257
355
  const fullPath = path.join(dir, entry.name);
258
356
  if (entry.isDirectory()) {
259
- if (!IGNORED.has(entry.name))
260
- results.push(...collectSourceFiles(fullPath));
357
+ if (!IGNORED.has(entry.name) && !isIgnored(fullPath)) {
358
+ results.push(...collectSourceFiles(fullPath, isIgnored));
359
+ }
261
360
  }
262
361
  else if (entry.isFile() &&
263
362
  entry.name.endsWith(".ts") &&
264
363
  !entry.name.endsWith(".test.ts") &&
265
364
  !entry.name.endsWith(".spec.ts") &&
266
- !entry.name.endsWith(".d.ts")) {
365
+ !entry.name.endsWith(".d.ts") &&
366
+ !isIgnored(fullPath)) {
267
367
  results.push(fullPath);
268
368
  }
269
369
  }
@@ -1 +1 @@
1
- {"version":3,"file":"checker.js","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checker.js","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  };
35
35
  })();
36
36
  Object.defineProperty(exports, "__esModule", { value: true });
37
+ const fs = __importStar(require("fs"));
37
38
  const path = __importStar(require("path"));
38
39
  const commander_1 = require("commander");
39
40
  const bootstrap_1 = require("./bootstrap");
@@ -61,11 +62,15 @@ program
61
62
  program
62
63
  .command("generate <file>")
63
64
  .description("Generate test and mock files for a single source file")
64
- .action(async (file) => {
65
+ .option("--dry-run", "Print what would be generated to stdout without writing any files")
66
+ .action(async (file, opts) => {
65
67
  const projectRoot = (0, utils_1.getProjectRoot)();
66
68
  const config = (0, configManager_1.loadConfig)(projectRoot);
67
69
  const absPath = path.resolve(file);
68
- await (0, watcher_1.processFile)(absPath, projectRoot, config);
70
+ if (opts.dryRun) {
71
+ (0, utils_1.log)(`Dry-run: ${path.relative(projectRoot, absPath) || file}`, "info");
72
+ }
73
+ await (0, watcher_1.processFile)(absPath, projectRoot, config, opts.dryRun ?? false);
69
74
  });
70
75
  program
71
76
  .command("check [folder]")
@@ -81,5 +86,33 @@ program
81
86
  output: opts.output,
82
87
  });
83
88
  });
89
+ program
90
+ .command("reset <file>")
91
+ .description("Delete the generated test and mock files for <file>, then immediately regenerate them. " +
92
+ "Use this to force a clean regeneration without manually deleting files.")
93
+ .action(async (file) => {
94
+ const projectRoot = (0, utils_1.getProjectRoot)();
95
+ const config = (0, configManager_1.loadConfig)(projectRoot);
96
+ const absPath = path.resolve(file);
97
+ const absSrcRoot = path.resolve(projectRoot, config.srcDir);
98
+ const testPath = (0, utils_1.mirrorPath)(absPath, absSrcRoot, path.join(projectRoot, config.testDir), ".test.ts");
99
+ const mockPath = (0, utils_1.mirrorPath)(absPath, absSrcRoot, path.join(projectRoot, config.mockDir), ".mock.ts");
100
+ if (fs.existsSync(testPath)) {
101
+ fs.unlinkSync(testPath);
102
+ (0, utils_1.log)(`Deleted: ${path.relative(projectRoot, testPath)}`, "info");
103
+ }
104
+ if (fs.existsSync(mockPath)) {
105
+ fs.unlinkSync(mockPath);
106
+ (0, utils_1.log)(`Deleted: ${path.relative(projectRoot, mockPath)}`, "info");
107
+ }
108
+ await (0, watcher_1.processFile)(absPath, projectRoot, config);
109
+ });
110
+ program
111
+ .command("status [folder]")
112
+ .description("Show a per-file test coverage status report with stale detection. " +
113
+ "Optionally restrict to a subfolder of src/ (e.g. `cotester status services`)")
114
+ .action((folder) => {
115
+ (0, checker_1.runStatus)(folder);
116
+ });
84
117
  program.parse(process.argv);
85
118
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,2CAA6B;AAC7B,yCAAoC;AACpC,2CAAwC;AACxC,uCAAsD;AACtD,mDAA6C;AAC7C,mCAAyC;AACzC,uCAAqC;AAErC,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACF,IAAI,CAAC,UAAU,CAAC;KAChB,WAAW,CACR,0HAA0H,CAC7H;KACA,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,OAAO;KACF,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,0DAA0D,CAAC;KACvE,MAAM,CAAC,GAAG,EAAE;IACT,IAAA,qBAAS,GAAE,CAAC;AAChB,CAAC,CAAC,CAAC;AAEP,OAAO;KACF,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,kIAAkI,CAAC;KAC/I,MAAM,CAAC,CAAC,MAAe,EAAE,EAAE;IACxB,IAAA,sBAAY,EAAC,MAAM,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC;AAEP,OAAO;KACF,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,uDAAuD,CAAC;KACpE,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,EAAE;IAC3B,MAAM,WAAW,GAAG,IAAA,sBAAc,GAAE,CAAC;IACrC,MAAM,MAAM,GAAG,IAAA,0BAAU,EAAC,WAAW,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,IAAA,qBAAW,EAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC,CAAC,CAAC;AAEP,OAAO;KACF,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CACR,oGAAoG;IACpG,6EAA6E,CAChF;KACA,MAAM,CACH,qBAAqB,EACrB,uFAAuF,EACvF,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CACzB;KACA,MAAM,CACH,QAAQ,EACR,4EAA4E,CAC/E;KACA,MAAM,CACH,qBAAqB,EACrB,wEAAwE,CAC3E;KACA,MAAM,CAAC,CAAC,MAA0B,EAAE,IAA6D,EAAE,EAAE;IAClG,IAAA,kBAAQ,EAAC,MAAM,EAAE;QACb,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM;KACtB,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEP,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,7 @@ exports.loadConfig = loadConfig;
37
37
  exports.getDefaultConfig = getDefaultConfig;
38
38
  const fs = __importStar(require("fs"));
39
39
  const path = __importStar(require("path"));
40
+ const module_1 = require("module");
40
41
  const DEFAULT_CONFIG = {
41
42
  watchPatterns: ["src/**/*.ts"],
42
43
  ignorePatterns: ["node_modules", "cotester", "dist", "**/*.test.ts", "**/*.spec.ts"],
@@ -68,7 +69,8 @@ function loadConfig(projectRoot) {
68
69
  try {
69
70
  const raw = fs.readFileSync(configPath, "utf-8");
70
71
  const userConfig = JSON.parse(raw);
71
- return mergeConfig(DEFAULT_CONFIG, userConfig);
72
+ const baseConfig = resolveExtends(userConfig, projectRoot, new Set());
73
+ return mergeConfig(baseConfig, userConfig);
72
74
  }
73
75
  catch {
74
76
  console.warn("⚠ Could not parse cotester.config.json — using defaults.");
@@ -77,6 +79,55 @@ function loadConfig(projectRoot) {
77
79
  }
78
80
  return { ...DEFAULT_CONFIG };
79
81
  }
82
+ /**
83
+ * Resolve an `extends` chain, returning the merged config of all ancestors.
84
+ * The local file's own fields are NOT applied here — that is done by the caller
85
+ * so that local overrides always win.
86
+ *
87
+ * Chain resolution:
88
+ * 1. Attempt `require.resolve('<pkg>/cotester.config.json', { paths: [projectRoot] })`
89
+ * → parse as JSON config (the preferred, explicit contract)
90
+ * 2. Attempt `require.resolve('<pkg>', { paths: [projectRoot] })`
91
+ * → require() the package and treat its default export as the config
92
+ *
93
+ * Supports up to 5 levels of chaining to guard against cycles / runaway depth.
94
+ */
95
+ function resolveExtends(userConfig, projectRoot, visited, depth = 0) {
96
+ const extendsTarget = userConfig.extends;
97
+ if (!extendsTarget || depth >= 5)
98
+ return { ...DEFAULT_CONFIG };
99
+ if (visited.has(extendsTarget)) {
100
+ console.warn(`⚠ CoTester config: circular extends detected for "${extendsTarget}" — skipping.`);
101
+ return { ...DEFAULT_CONFIG };
102
+ }
103
+ visited.add(extendsTarget);
104
+ try {
105
+ const req = (0, module_1.createRequire)(path.join(projectRoot, "package.json"));
106
+ let baseRaw;
107
+ // Strategy 1: look for a dedicated cotester.config.json inside the package
108
+ try {
109
+ const configFilePath = req.resolve(`${extendsTarget}/cotester.config.json`);
110
+ baseRaw = JSON.parse(fs.readFileSync(configFilePath, "utf-8"));
111
+ }
112
+ catch {
113
+ // Strategy 2: require the package itself (exports the config object)
114
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
115
+ const mod = req(extendsTarget);
116
+ baseRaw = (mod?.default ?? mod);
117
+ }
118
+ if (!baseRaw || typeof baseRaw !== "object") {
119
+ console.warn(`⚠ CoTester config: extends "${extendsTarget}" did not export a valid config object.`);
120
+ return { ...DEFAULT_CONFIG };
121
+ }
122
+ // Recurse into the base config's own extends chain first
123
+ const grandBase = resolveExtends(baseRaw, projectRoot, visited, depth + 1);
124
+ return mergeConfig(grandBase, baseRaw);
125
+ }
126
+ catch (err) {
127
+ console.warn(`⚠ CoTester config: could not resolve extends "${extendsTarget}": ${err?.message}`);
128
+ return { ...DEFAULT_CONFIG };
129
+ }
130
+ }
80
131
  function mergeConfig(base, override) {
81
132
  return {
82
133
  watchPatterns: override.watchPatterns ?? base.watchPatterns,
@@ -1 +1 @@
1
- {"version":3,"file":"configManager.js","sourceRoot":"","sources":["../src/configManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsDA,gCAeC;AAoBD,4CAEC;AA3FD,uCAAyB;AACzB,2CAA6B;AA2B7B,MAAM,cAAc,GAAkB;IAClC,aAAa,EAAE,CAAC,aAAa,CAAC;IAC9B,cAAc,EAAE,CAAC,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,CAAC;IACpF,OAAO,EAAE,gBAAgB;IACzB,OAAO,EAAE,gBAAgB;IACzB,MAAM,EAAE,KAAK;IACb,WAAW,EAAE,EAAE;IACf,aAAa,EAAE;QACX,MAAM,EAAE;YACJ,uBAAuB;YACvB,wBAAwB;YACxB,cAAc;YACd,wBAAwB;SAC3B;QACD,MAAM,EAAE;YACJ,qBAAqB;YACrB,sBAAsB;YACtB,4BAA4B;YAC5B,+BAA+B;SAClC;QACD,OAAO,EAAE,CAAC,0BAA0B,EAAE,yBAAyB,CAAC;QAChE,OAAO,EAAE,CAAC,sBAAsB,CAAC;QACjC,cAAc,EAAE,CAAC;KACpB;CACJ,CAAC;AAEF,SAAgB,UAAU,CAAC,WAAmB;IAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,sBAAsB,CAAC,CAAC;IAE9E,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA2B,CAAC;YAC7D,OAAO,WAAW,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;YAC1E,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;QACjC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,WAAW,CAChB,IAAmB,EACnB,QAAgC;IAEhC,OAAO;QACH,aAAa,EAAE,QAAQ,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa;QAC3D,cAAc,EAAE,QAAQ,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc;QAC9D,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;QACzC,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;QACzC,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM;QACtC,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW;QACrD,aAAa,EAAE;YACX,GAAG,IAAI,CAAC,aAAa;YACrB,GAAG,CAAC,QAAQ,CAAC,aAAa,IAAI,EAAE,CAAC;SACpC;KACJ,CAAC;AACN,CAAC;AAED,SAAgB,gBAAgB;IAC5B,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"configManager.js","sourceRoot":"","sources":["../src/configManager.ts"],"names":[],"mappings":"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"}
@@ -13,4 +13,4 @@ import { MockFileResult } from "./mockGenerator";
13
13
  * Individual functions/methods that already have a describe block are never
14
14
  * touched, preserving any hand-written assertions inside them.
15
15
  */
16
- export declare function generateTestFile(srcFilePath: string, scenarios: TestScenario[], projectRoot: string, srcDir: string, testDir: string, mockResult: MockFileResult | null, tableThreshold?: number): Promise<string | null>;
16
+ export declare function generateTestFile(srcFilePath: string, scenarios: TestScenario[], projectRoot: string, srcDir: string, testDir: string, mockResult: MockFileResult | null, tableThreshold?: number, dryRun?: boolean): Promise<string | null>;
package/dist/generator.js CHANGED
@@ -58,12 +58,23 @@ const TESTGEN_MARKER = "// @cotester-generated";
58
58
  * Individual functions/methods that already have a describe block are never
59
59
  * touched, preserving any hand-written assertions inside them.
60
60
  */
61
- async function generateTestFile(srcFilePath, scenarios, projectRoot, srcDir, testDir, mockResult, tableThreshold = 0) {
61
+ async function generateTestFile(srcFilePath, scenarios, projectRoot, srcDir, testDir, mockResult, tableThreshold = 0, dryRun = false) {
62
62
  if (scenarios.length === 0) {
63
63
  return null;
64
64
  }
65
65
  const absSrcRoot = path.resolve(projectRoot, srcDir);
66
66
  const testFilePath = (0, utils_1.mirrorPath)(srcFilePath, absSrcRoot, path.join(projectRoot, testDir), ".test.ts");
67
+ // ── Dry-run: print generated content without touching the filesystem ──
68
+ if (dryRun) {
69
+ const code = buildTestSource(scenarios, srcFilePath, testFilePath, mockResult, projectRoot, srcDir, tableThreshold);
70
+ const formatted = await (0, formatter_1.formatCode)(code, projectRoot);
71
+ const relTest = path.relative(projectRoot, testFilePath).replace(/\\/g, "/");
72
+ process.stdout.write(`\n${"─".repeat(60)}\n`);
73
+ process.stdout.write(`// [dry-run] Test file: ${relTest}\n`);
74
+ process.stdout.write(`${"─".repeat(60)}\n`);
75
+ process.stdout.write(formatted);
76
+ return testFilePath;
77
+ }
67
78
  (0, utils_1.ensureDir)(path.dirname(testFilePath));
68
79
  // ── Brand-new file → generate everything ─────────────────────────────
69
80
  if (!fs.existsSync(testFilePath)) {
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,4CAiDC;AA9ED,uCAAyB;AACzB,2CAA6B;AAI7B,2CAAyC;AACzC,mCAAqD;AACrD,yDAAqE;AAErE;;;;GAIG;AACH,MAAM,cAAc,GAAG,wBAAwB,CAAC;AAEhD;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,gBAAgB,CAClC,WAAmB,EACnB,SAAyB,EACzB,WAAmB,EACnB,MAAc,EACd,OAAe,EACf,UAAiC,EACjC,iBAAyB,CAAC,EAC1B,MAAM,GAAG,KAAK;IAEd,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACrD,MAAM,YAAY,GAAG,IAAA,kBAAU,EAC3B,WAAW,EACX,UAAU,EACV,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,EAC/B,UAAU,CACb,CAAC;IAEF,yEAAyE;IACzE,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,IAAI,GAAG,eAAe,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QACpH,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAU,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,OAAO,IAAI,CAAC,CAAC;QAC7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,IAAA,iBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IAEtC,wEAAwE;IACxE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,eAAe,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QACpH,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAU,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACtD,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACnD,IAAA,WAAG,EAAC,eAAe,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC1E,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,wEAAwE;IACxE,OAAO,yBAAyB,CAC5B,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,CACxF,CAAC;AACN,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,yBAAyB,CACpC,SAAyB,EACzB,WAAmB,EACnB,YAAoB,EACpB,UAAiC,EACjC,WAAmB,EACnB,MAAc,EACd,iBAAyB,CAAC;IAE1B,IAAI,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAE3D,4EAA4E;IAC5E,MAAM,YAAY,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACtD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,CAAC,CAAC,YAAY,CAAC;QAC3B,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS,CAAC,0BAA0B;QACrE,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,yBAAyB,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,mCAAmC;YACnC,OAAO,GAAG,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;aAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YAC3B,uDAAuD;YACvD,IAAA,WAAG,EAAC,2BAA2B,GAAG,8BAA8B,EAAE,MAAM,CAAC,CAAC;YAC1E,OAAO,GAAG,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YACvD,OAAO,GAAG,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;IACL,CAAC;IAED,wEAAwE;IACxE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;IACnD,MAAM,aAAa,GAAmB,EAAE,CAAC;IAEzC,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACJ,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,MAAM,iBAAiB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IAC5F,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,YAAY,GAAmB,CAAC,GAAG,iBAAiB,CAAC,CAAC;IAE5D,wEAAwE;IACxE,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACpC,yDAAyD;YACzD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;YAClF,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACJ,4DAA4D;YAC5D,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;YACnF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,MAAM,YAAY,GAAG,cAAc;qBAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC;qBAC5E,IAAI,CAAC,MAAM,CAAC,CAAC;gBAClB,OAAO,GAAG,uBAAuB,CAAC,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;gBACpE,YAAY,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;YACzC,CAAC;QACL,CAAC;IACL,CAAC;IAED,wEAAwE;IACxE,KAAK,MAAM,EAAE,IAAI,iBAAiB,EAAE,CAAC;QACjC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,IAAA,WAAG,EAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,mCAAmC,EAAE,MAAM,CAAC,CAAC;QAC9F,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,wEAAwE;IACxE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IACxE,CAAC;IAED,wEAAwE;IACxE,OAAO,GAAG,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAE5E,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAU,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACzD,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAEnD,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC;IACvC,IAAA,WAAG,EACC,uBAAuB,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,MAAM,UAAU,eAAe,EAC9F,SAAS,CACZ,CAAC;IACF,OAAO,YAAY,CAAC;AACxB,CAAC;AAED,iFAAiF;AAEjF;;;GAGG;AACH,SAAS,uBAAuB,CAAC,OAAe;IAC5C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,KAAK,GAAG,sCAAsC,CAAC;IACrD,IAAI,CAAyB,CAAC;IAC9B,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACxC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,iFAAiF;AAEjF;;;GAGG;AACH,SAAS,yBAAyB,CAAC,QAAsB;IACrD,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU;SAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;SACrD,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,OAAO,GAAG,QAAQ,CAAC,YAAY,IAAI,MAAM,KAAK,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;AAC5F,CAAC;AAED;;;GAGG;AACH,SAAS,uBAAuB,CAAC,OAAe;IAC5C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,yEAAyE;IACzE,kDAAkD;IAClD,MAAM,EAAE,GAAG,qEAAqE,CAAC;IACjF,IAAI,CAAyB,CAAC;IAC9B,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACrC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB;IAChD,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,OAAe,EAAE,MAAc,EAAE,MAAc;IAC1E,MAAM,EAAE,GAAG,IAAI,MAAM,CACjB,sCAAsC,cAAc,CAAC,MAAM,CAAC,SAAS,CACxE,CAAC;IACF,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,qBAAqB,MAAM,QAAQ,CAAC,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,OAAe,EAAE,MAAc,EAAE,MAAc;IAC3E,MAAM,EAAE,GAAG,IAAI,MAAM,CACjB,6DAA6D,cAAc,CAAC,MAAM,CAAC,SAAS,CAC/F,CAAC;IACF,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,mBAAmB,MAAM,MAAM,CAAC,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAC3B,OAAe,EACf,MAAc,EACd,MAAc,EACd,MAAc;IAEd,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,4BAA4B,cAAc,CAAC,MAAM,CAAC,gBAAgB,CACrE,CAAC;IACF,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK;QAAE,OAAO,OAAO,CAAC;IAE3B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,OAAO,GACT,mDAAmD;QACnD,eAAe,MAAM,EAAE;QACvB,eAAe,MAAM,EAAE,CAAC;IAE5B,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AAClF,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,OAAe,EAAE,SAAiB,EAAE,SAAiB;IAClF,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,4BAA4B,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7F,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC;IAElE,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC;IACzB,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACb,KAAK,EAAE,CAAC;YACR,YAAY,GAAG,IAAI,CAAC;QACxB,CAAC;aAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACpB,KAAK,EAAE,CAAC;YACR,IAAI,YAAY,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAC9B,sDAAsD;gBACtD,OAAO,CACH,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;oBACvB,MAAM,GAAG,SAAS,GAAG,IAAI;oBACzB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CACvB,CAAC;YACN,CAAC;QACL,CAAC;QACD,CAAC,EAAE,CAAC;IACR,CAAC;IACD,OAAO,OAAO,CAAC,CAAC,2CAA2C;AAC/D,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CACpB,OAAe,EACf,YAA4B,EAC5B,WAAmB,EACnB,YAAoB;IAEpB,MAAM,OAAO,GAAG,sBAAsB,CAAC,YAAY,CAAC,CAAC;IACrD,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAEtE,IACI,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,aAAa,GAAG,CAAC;YACjD,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,aAAa,GAAG,CAAC,EACnD,CAAC;YACC,MAAM,OAAO,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5E,SAAS,CAAC,IAAI,CAAC,cAAc,aAAa,gBAAgB,OAAO,QAAQ,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAC7D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,SAAS,GAAG,YAAY,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,aAAa,GAAG,CAAC;YAC3E,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC/B,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;YACtC,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IAEvE,MAAM,SAAS,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;IAErE,uFAAuF;IACvF,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAClD,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAChG,CAAC;IACD,OAAO,SAAS,GAAG,OAAO,CAAC;AAC/B,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IAC/B,OAAO,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAED,gFAAgF;AAEhF,SAAS,eAAe,CACpB,SAAyB,EACzB,WAAmB,EACnB,YAAoB,EACpB,UAAiC,EACjC,WAAmB,EACnB,MAAc,EACd,iBAAyB,CAAC;IAE1B,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,2EAA2E;IAC3E,mEAAmE;IACnE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,oEAAoE;IACpE,MAAM,OAAO,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAElD,oEAAoE;IACpE,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,GAAG,CAAC,aAAa;aAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC;aAChC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,cAAc,aAAa,aAAa,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,mEAAmE;IACnE,MAAM,UAAU,GAAG,qBAAqB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAClD,KAAK,CAAC,IAAI,CAAC,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,IAAI,CAAC,CAAC;IAEzE,mEAAmE;IACnE,IAAI,UAAU,EAAE,CAAC;QACb,MAAM,cAAc,GAAG,qBAAqB,CACxC,UAAU,CAAC,QAAQ,EACnB,YAAY,CACf,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,2BAA2B,cAAc,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED,uEAAuE;IACvE,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAC/D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,KAAK,CAAC,IAAI,CACN,YAAY,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,aAAa,IAAI,CAC5D,CAAC;QACN,CAAC;IACL,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,mEAAmE;IACnE,IAAI,aAAa,GAAyB,IAAI,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACb,aAAa,GAAG,IAAA,mCAAgB,EAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC7C,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,gBAAgB,EAAE,CAAC;gBAChD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,CAAC,8BAA8B;QACzC,CAAC;IACL,CAAC;IAED,mEAAmE;IACnE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;IACnD,MAAM,aAAa,GAAmB,EAAE,CAAC;IAEzC,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACJ,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,mEAAmE;IACnE,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;QAClE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,mEAAmE;IACnE,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1C,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;QAC/E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,gFAAgF;AAEhF,SAAS,kBAAkB,CACvB,SAAiB,EACjB,OAAuB,EACvB,UAAiC,EACjC,iBAAyB,CAAC;IAE1B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC7D,KAAK,CAAC,IAAI,CAAC,mBAAmB,SAAS,GAAG,CAAC,CAAC;IAE5C,qDAAqD;IACrD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,iBAAiB,IAAI,EAAE,CAAC;IACvD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;IACtC,MAAM,gBAAgB,GAAa,EAAE,CAAC;IAEtC,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAEjD,oEAAoE;QACpE,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACzG,MAAM,QAAQ,GAAG,IAAA,mCAAgB,EAAC,QAAQ,CAAC,CAAC;YAC5C,qDAAqD;YACrD,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,gBAAgB,CAAC,IAAI,CACjB,WAAW,QAAQ,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CACnE,CAAC;YACN,CAAC;iBAAM,CAAC;gBACJ,gBAAgB,CAAC,IAAI,CACjB,WAAW,QAAQ,gDAAgD,KAAK,CAAC,IAAI,EAAE,CAClF,CAAC;YACN,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,yCAAyC;YACzC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC3C,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjE,gBAAgB,CAAC,IAAI,CACjB,WAAW,QAAQ,+HAA+H,CACrJ,CAAC;YACN,CAAC;iBAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvC,gBAAgB,CAAC,IAAI,CACjB,WAAW,QAAQ,gCAAgC,KAAK,CAAC,IAAI,UAAU,CAC1E,CAAC;YACN,CAAC;iBAAM,CAAC;gBACJ,gBAAgB,CAAC,IAAI,CACjB,WAAW,QAAQ,gDAAgD,KAAK,CAAC,IAAI,EAAE,CAClF,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACnC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAExC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,UAAU;aAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;aACvC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,sBAAsB,SAAS,IAAI,IAAI,IAAI,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACJ,KAAK,CAAC,IAAI,CAAC,sBAAsB,SAAS,KAAK,CAAC,CAAC;IACrD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEpB,oEAAoE;IACpE,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,IAAI,SAAS,CAAC;IAEnD,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAC5D,KAAK,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QAC/E,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAC5D,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAChD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CACN,WAAW,CAAC,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAC1E,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,gFAAgF;AAEhF,SAAS,qBAAqB,CAC1B,EAAgB,EAChB,UAAiC,EACjC,iBAAyB,CAAC;IAE1B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,mBAAmB,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/D,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAEnE,sEAAsE;IACtE,IAAI,EAAE,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACxC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;IACjE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEvG,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,eAAe,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CACN,WAAW,CACP,cAAc,CAAC,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC,EAChC,CAAC,CACJ,CACJ,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,gFAAgF;AAEhF,SAAS,mBAAmB,CACxB,EAAgB,EAChB,UAAiC,EACjC,iBAAyB,CAAC;IAE1B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,mBAAmB,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/D,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAEnE,MAAM,SAAS,GAAG,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;IACjE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEvG,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,eAAe,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CACN,WAAW,CACP,cAAc,CAAC,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC,EAChC,CAAC,CACJ,CACJ,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,gFAAgF;AAEhF;;;;;;;;GAQG;AACH,SAAS,cAAc,CACnB,KAAqB,EACrB,UAAkB,EAClB,cAAsB;IAEtB,IAAI,cAAc,IAAI,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACxC,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;IACtD,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAC3D,CAAC;IAEF,IAAI,UAAU,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;QACrC,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;IACtD,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,OAAO;QACH,UAAU,EAAE,UAAU;QACtB,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;KAC/D,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,QAAsB,EAAE,UAA0B;IACvE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;IACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC;IACrC,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAE1D,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC1B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;IAC3D,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,YAAY,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEzF,MAAM;IACN,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACvB,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACxD,IAAI,OAAO,EAAE,CAAC;QACV,KAAK,CAAC,IAAI,CAAC,0BAA0B,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC;SAAM,CAAC;QACJ,KAAK,CAAC,IAAI,CAAC,oBAAoB,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,SAAS;IACT,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC1B,MAAM,WAAW,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC9D,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAElB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,gFAAgF;AAEhF,SAAS,cAAc,CACnB,QAAsB,EACtB,QAAsB,EACtB,aAAsB;IAEtB,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,QAAQ;YACT,OAAO,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC/D,KAAK,SAAS;YACV,OAAO,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QAChE;YACI,OAAO,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IACrE,CAAC;AACL,CAAC;AAED,gFAAgF;AAEhF,SAAS,kBAAkB,CACvB,QAAsB,EACtB,QAAsB,EACtB,aAAsB;IAEtB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;IACtC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,KAAK,KAAK,kCAAkC,CAAC;IAE/E,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAExF,oEAAoE;IACpE,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1C,IAAI,gBAAgB,EAAE,CAAC;QACnB,gFAAgF;QAChF,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YACtC,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,oBAAoB,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACf,cAAc,CAAC,IAAI,CACf,MAAM,IAAI,CAAC,IAAI,oCAAoC,OAAO,IAAI,CACjE,CAAC;gBACN,CAAC;qBAAM,CAAC;oBACJ,cAAc,CAAC,IAAI,CACf,MAAM,IAAI,CAAC,IAAI,kCAAkC,OAAO,IAAI,CAC/D,CAAC;gBACN,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3B,KAAK,MAAM,CAAC,IAAI,cAAc;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnB,CAAC;IACL,CAAC;SAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,EAAE,CAAC;QACzD,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,MAAM,OAAO,GAAG,SAAS,aAAa,IAAI,OAAO,EAAE,CAAC;QACpD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,MAAM,OAAO,IAAI,IAAI,GAAG,CAAC,CAAC;QACxD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;SAAM,IAAI,QAAQ,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAClD,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC;YACvD,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,MAAM,OAAO,GAAG,CAAC,CAAC;QAChD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,oEAAoE;IACpE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACvB,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACxD,MAAM,QAAQ,GAAG,GAAG,MAAM,IAAI,OAAO,GAAG,CAAC;IAEzC,IAAI,OAAO,EAAE,CAAC;QACV,KAAK,CAAC,IAAI,CAAC,0BAA0B,QAAQ,GAAG,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACJ,KAAK,CAAC,IAAI,CAAC,oBAAoB,QAAQ,GAAG,CAAC,CAAC;IAChD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,mEAAmE;IACnE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE1B,IAAI,gBAAgB,EAAE,CAAC;QACnB,0CAA0C;QAC1C,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YACtC,KAAK,MAAM,OAAO,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,uBAAuB,CAAC,CAAC;gBAC3D,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,MAAM,WAAW,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC1E,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,+EAA+E;AAE/E,SAAS,gBAAgB,CACrB,QAAsB,EACtB,QAAsB,EACtB,aAAsB;IAEtB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC;IACrC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;IAEtC,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAE9D,oEAAoE;IACpE,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1C,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,MAAM,OAAO,GAAG,SAAS,aAAa,IAAI,OAAO,EAAE,CAAC;QACpD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,MAAM,OAAO,IAAI,IAAI,GAAG,CAAC,CAAC;QACxD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;SAAM,IAAI,QAAQ,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAClD,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC;YACvD,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,MAAM,OAAO,GAAG,CAAC,CAAC;QAChD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,mEAAmE;IACnE,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACxD,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,IAAI,OAAO,eAAe,CAAC,CAAC;IAE/D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,gFAAgF;AAEhF,SAAS,iBAAiB,CACtB,QAAsB,EACtB,QAAsB,EACtB,aAAsB;IAEtB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC;IACrC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;IAEtC,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAEpE,oEAAoE;IACpE,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1C,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,MAAM,OAAO,GAAG,SAAS,aAAa,IAAI,OAAO,EAAE,CAAC;QACpD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,MAAM,OAAO,IAAI,IAAI,GAAG,CAAC,CAAC;QACxD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;SAAM,IAAI,QAAQ,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAClD,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC;YACvD,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,MAAM,OAAO,GAAG,CAAC,CAAC;QAChD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,mEAAmE;IACnE,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACxD,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,IAAI,OAAO,uBAAuB,CAAC,CAAC;IAEvE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,iFAAiF;AAEjF;;;;;;;;;;;;GAYG;AACH,SAAS,oBAAoB,CAAC,UAAkB;IAC5C,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;IAC9B,oBAAoB;IACpB,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE1E,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,WAAW,CAAC;IACvF,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACpC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACvC,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACnC,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,cAAc,CAAC;IAC9C,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IACpE,6DAA6D;IAC7D,OAAO,WAAW,CAAC;AACvB,CAAC;AAED,gFAAgF;AAEhF,SAAS,gBAAgB,CAAC,UAAkB,EAAE,aAAqB;IAC/D,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAChC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAE5C,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;QACpD,IAAI,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QACrD,IAAI,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC7C,IAAI,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAClE,CAAC;SAAM,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;QACpD,IAAI,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QAC9C,IAAI,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;IAChE,CAAC;SAAM,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACrD,IAAI,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAChD,IAAI,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IACrD,CAAC;SAAM,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QAC9B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAClD,CAAC;SAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QACxD,IAAI,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACJ,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IACjD,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IACzB,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAChD,IAAI,YAAY;QAAE,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChD,OAAO,CAAC,CAAC;AACb,CAAC;AAED,gFAAgF;AAEhF,SAAS,sBAAsB,CAAC,SAAyB;IACrD,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QACxB,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,IAAI,QAAQ,EAAE,CAAC;gBACX,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;oBACnC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBACzC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACtC,CAAC;gBACL,CAAC;gBACD,oEAAoE;gBACpE,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,oBAAoB,EAAE,CAAC;oBAC1C,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnE,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC7C,CAAC;gBACL,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,GAAG,GAAG,EAAE,oBAAoB,EAAE,CAAC,GAAG,GAAG,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;YAChG,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,cAAc,CAAC,WAAmB,EAAE,UAAkB;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,IAAI,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,QAAQ,IAAI,KAAK,CAAC;IACjD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,gFAAgF;AAEhF,SAAS,kBAAkB,CAAC,SAAyB;IACjD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YACd,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC3B,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,qBAAqB,CAC1B,cAAsB,EACtB,YAAoB;IAEpB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAE3C,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAChE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;IAE3C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACtD,OAAO,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC;AAChC,CAAC;AAED,gFAAgF;AAEhF,SAAS,WAAW,CAAC,KAAa,EAAE,KAAa;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,OAAO,KAAK;SACP,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;SACxD,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC5B,OAAO,KAAK;SACP,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;SAC7B,KAAK,CAAC,KAAK,CAAC;SACZ,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CACb,CAAC,KAAK,CAAC;QACH,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE;QACpB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CACnE;SACA,IAAI,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC3B,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * .testgenignore File Support
3
+ *
4
+ * Loads and compiles ignore patterns from a `.testgenignore` file at the project
5
+ * root. The file format mirrors `.gitignore`: one glob pattern per line, lines
6
+ * starting with `#` are comments, blank lines are skipped.
7
+ *
8
+ * Supported patterns (V1):
9
+ * src/legacy/** - all files under a directory subtree
10
+ * **\/*.generated.ts - files matching a name pattern anywhere in the tree
11
+ * src/migrations/ - a specific directory (trailing slash stripped)
12
+ * *.dto.ts - files by extension in any directory
13
+ *
14
+ * Negation (`!`) is intentionally not supported in V1 (YAGNI).
15
+ */
16
+ /**
17
+ * Read `.testgenignore` from `projectRoot` and return the non-empty, non-comment
18
+ * lines as raw pattern strings. Returns an empty array when the file is absent.
19
+ */
20
+ export declare function loadIgnorePatterns(projectRoot: string): string[];
21
+ /**
22
+ * Compile a list of ignore patterns into a fast predicate function.
23
+ *
24
+ * @param patterns Raw pattern strings (output of `loadIgnorePatterns`).
25
+ * @param projectRoot Used to compute the file-relative path for matching.
26
+ * @returns A predicate: `true` = the file should be ignored.
27
+ */
28
+ export declare function buildIgnorePredicate(patterns: string[], projectRoot: string): (filePath: string) => boolean;
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ /**
3
+ * .testgenignore File Support
4
+ *
5
+ * Loads and compiles ignore patterns from a `.testgenignore` file at the project
6
+ * root. The file format mirrors `.gitignore`: one glob pattern per line, lines
7
+ * starting with `#` are comments, blank lines are skipped.
8
+ *
9
+ * Supported patterns (V1):
10
+ * src/legacy/** - all files under a directory subtree
11
+ * **\/*.generated.ts - files matching a name pattern anywhere in the tree
12
+ * src/migrations/ - a specific directory (trailing slash stripped)
13
+ * *.dto.ts - files by extension in any directory
14
+ *
15
+ * Negation (`!`) is intentionally not supported in V1 (YAGNI).
16
+ */
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || (function () {
34
+ var ownKeys = function(o) {
35
+ ownKeys = Object.getOwnPropertyNames || function (o) {
36
+ var ar = [];
37
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
38
+ return ar;
39
+ };
40
+ return ownKeys(o);
41
+ };
42
+ return function (mod) {
43
+ if (mod && mod.__esModule) return mod;
44
+ var result = {};
45
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
46
+ __setModuleDefault(result, mod);
47
+ return result;
48
+ };
49
+ })();
50
+ Object.defineProperty(exports, "__esModule", { value: true });
51
+ exports.loadIgnorePatterns = loadIgnorePatterns;
52
+ exports.buildIgnorePredicate = buildIgnorePredicate;
53
+ const fs = __importStar(require("fs"));
54
+ const path = __importStar(require("path"));
55
+ // ─── Public API ───────────────────────────────────────────────────────────────
56
+ /**
57
+ * Read `.testgenignore` from `projectRoot` and return the non-empty, non-comment
58
+ * lines as raw pattern strings. Returns an empty array when the file is absent.
59
+ */
60
+ function loadIgnorePatterns(projectRoot) {
61
+ const ignoreFile = path.join(projectRoot, ".testgenignore");
62
+ if (!fs.existsSync(ignoreFile))
63
+ return [];
64
+ return fs
65
+ .readFileSync(ignoreFile, "utf-8")
66
+ .split(/\r?\n/)
67
+ .map((l) => l.trim())
68
+ .filter((l) => l.length > 0 && !l.startsWith("#"));
69
+ }
70
+ /**
71
+ * Compile a list of ignore patterns into a fast predicate function.
72
+ *
73
+ * @param patterns Raw pattern strings (output of `loadIgnorePatterns`).
74
+ * @param projectRoot Used to compute the file-relative path for matching.
75
+ * @returns A predicate: `true` = the file should be ignored.
76
+ */
77
+ function buildIgnorePredicate(patterns, projectRoot) {
78
+ if (patterns.length === 0)
79
+ return () => false;
80
+ const matchers = patterns.map(compilePattern);
81
+ return (filePath) => {
82
+ const rel = path.relative(projectRoot, filePath).replace(/\\/g, "/");
83
+ return matchers.some((m) => m(rel));
84
+ };
85
+ }
86
+ // ─── Pattern compilation ──────────────────────────────────────────────────────
87
+ /**
88
+ * Convert a single gitignore-style glob pattern into a fast matcher function
89
+ * that operates on forward-slash-normalised relative paths.
90
+ *
91
+ * Transformations (applied in order):
92
+ * 1. Strip trailing `/` (directory markers) — we match dirs by prefix anyway.
93
+ * 2. Escape all regex special chars *except* the `*` sequences.
94
+ * 3. `**` → `.+` (matches any number of path segments including `/`).
95
+ * 4. `*` → `[^/]+` (matches any sequence within one path segment).
96
+ *
97
+ * Anchoring:
98
+ * - If the pattern contains a `/` it is anchored to the root of the relative
99
+ * path (`^`), matching like gitignore's "rooted" patterns.
100
+ * - Otherwise it is matched anywhere in the path (`(^|/)`) so that
101
+ * `*.generated.ts` matches `src/foo/bar.generated.ts`.
102
+ */
103
+ function compilePattern(pattern) {
104
+ // Strip trailing slash
105
+ const norm = pattern.replace(/\\/g, "/").replace(/\/$/, "");
106
+ // Is this a rooted pattern (contains a slash other than a leading one)?
107
+ const isRooted = norm.indexOf("/") !== -1;
108
+ // Step 1: escape regex special chars (treat * as placeholder first)
109
+ // We temporarily replace ** and * with placeholders to avoid double-escaping
110
+ const step1 = norm
111
+ .replace(/\*\*/g, "\x00DSTAR\x00")
112
+ .replace(/\*/g, "\x00STAR\x00");
113
+ // Step 2: escape remaining regex metacharacters
114
+ const step2 = step1.replace(/[.+^${}()|[\]\\]/g, "\\$&");
115
+ // Step 3: restore placeholders as regex fragments
116
+ const regexBody = step2
117
+ .replace(/\x00DSTAR\x00/g, ".+")
118
+ .replace(/\x00STAR\x00/g, "[^/]+");
119
+ // Step 4: anchor appropriately
120
+ const regexStr = isRooted
121
+ ? `^${regexBody}($|/)`
122
+ : `(^|/)${regexBody}($|/)`;
123
+ const re = new RegExp(regexStr);
124
+ return (rel) => re.test(rel);
125
+ }
126
+ //# sourceMappingURL=ignoreManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ignoreManager.js","sourceRoot":"","sources":["../src/ignoreManager.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWH,gDASC;AASD,oDAYC;AAvCD,uCAAyB;AACzB,2CAA6B;AAE7B,iFAAiF;AAEjF;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,WAAmB;IAClD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IAC5D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,CAAC;IAE1C,OAAO,EAAE;SACJ,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC;SACjC,KAAK,CAAC,OAAO,CAAC;SACd,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,oBAAoB,CAChC,QAAkB,EAClB,WAAmB;IAEnB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC;IAE9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAE9C,OAAO,CAAC,QAAgB,EAAE,EAAE;QACxB,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACrE,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC;AACN,CAAC;AAED,iFAAiF;AAEjF;;;;;;;;;;;;;;;GAeG;AACH,SAAS,cAAc,CAAC,OAAe;IACnC,uBAAuB;IACvB,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAE5D,wEAAwE;IACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAE1C,oEAAoE;IACpE,6EAA6E;IAC7E,MAAM,KAAK,GAAG,IAAI;SACb,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC;SACjC,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IAEpC,gDAAgD;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAEzD,kDAAkD;IAClD,MAAM,SAAS,GAAG,KAAK;SAClB,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC;SAC/B,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAEvC,+BAA+B;IAC/B,MAAM,QAAQ,GAAG,QAAQ;QACrB,CAAC,CAAC,IAAI,SAAS,OAAO;QACtB,CAAC,CAAC,QAAQ,SAAS,OAAO,CAAC;IAE/B,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChC,OAAO,CAAC,GAAW,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzC,CAAC"}
@@ -19,7 +19,7 @@ export interface MockFileResult {
19
19
  * Produces `cotester/mocks/<mirror>/file.mock.ts` containing exported
20
20
  * constants with structured mock data for every analysed function.
21
21
  */
22
- export declare function generateMockFile(srcFilePath: string, scenarios: TestScenario[], projectRoot: string, srcDir: string, mockDir: string): Promise<MockFileResult | null>;
22
+ export declare function generateMockFile(srcFilePath: string, scenarios: TestScenario[], projectRoot: string, srcDir: string, mockDir: string, dryRun?: boolean): Promise<MockFileResult | null>;
23
23
  /**
24
24
  * Mock value entry — a concrete value to use in a test scenario,
25
25
  * along with a human-readable label describing the case.
@@ -50,7 +50,7 @@ const interfaceShapeResolver_1 = require("./interfaceShapeResolver");
50
50
  * Produces `cotester/mocks/<mirror>/file.mock.ts` containing exported
51
51
  * constants with structured mock data for every analysed function.
52
52
  */
53
- async function generateMockFile(srcFilePath, scenarios, projectRoot, srcDir, mockDir) {
53
+ async function generateMockFile(srcFilePath, scenarios, projectRoot, srcDir, mockDir, dryRun = false) {
54
54
  if (scenarios.length === 0)
55
55
  return null;
56
56
  const absSrcRoot = path.resolve(projectRoot, srcDir);
@@ -85,9 +85,18 @@ async function generateMockFile(srcFilePath, scenarios, projectRoot, srcDir, moc
85
85
  lines.push("");
86
86
  }
87
87
  const formatted = await (0, formatter_1.formatCode)(lines.join("\n"), projectRoot);
88
- (0, utils_1.ensureDir)(path.dirname(mockFilePath));
89
- fs.writeFileSync(mockFilePath, formatted, "utf-8");
90
- (0, utils_1.log)(`Mock file → ${path.relative(projectRoot, mockFilePath)}`, "success");
88
+ if (dryRun) {
89
+ const relMock = path.relative(projectRoot, mockFilePath).replace(/\\/g, "/");
90
+ process.stdout.write(`\n${"─".repeat(60)}\n`);
91
+ process.stdout.write(`// [dry-run] Mock file: ${relMock}\n`);
92
+ process.stdout.write(`${"─".repeat(60)}\n`);
93
+ process.stdout.write(formatted);
94
+ }
95
+ else {
96
+ (0, utils_1.ensureDir)(path.dirname(mockFilePath));
97
+ fs.writeFileSync(mockFilePath, formatted, "utf-8");
98
+ (0, utils_1.log)(`Mock file → ${path.relative(projectRoot, mockFilePath)}`, "success");
99
+ }
91
100
  return { filePath: mockFilePath, constantNames };
92
101
  }
93
102
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"mockGenerator.js","sourceRoot":"","sources":["../src/mockGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mockGenerator.js","sourceRoot":"","sources":["../src/mockGenerator.ts"],"names":[],"mappings":"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"}
package/dist/watcher.d.ts CHANGED
@@ -15,4 +15,4 @@ export declare function startWatcher(watchFolder?: string): void;
15
15
  * Process a single TypeScript file through the full pipeline:
16
16
  * analyze → scenarios → mock file → test file
17
17
  */
18
- export declare function processFile(filePath: string, projectRoot: string, config: TestGenConfig): Promise<void>;
18
+ export declare function processFile(filePath: string, projectRoot: string, config: TestGenConfig, dryRun?: boolean): Promise<void>;
package/dist/watcher.js CHANGED
@@ -45,6 +45,7 @@ const configManager_1 = require("./configManager");
45
45
  const utils_1 = require("./utils");
46
46
  const workerPool_1 = require("./workerPool");
47
47
  const astCache_1 = require("./astCache");
48
+ const ignoreManager_1 = require("./ignoreManager");
48
49
  /**
49
50
  * Start the file watcher.
50
51
  *
@@ -70,10 +71,13 @@ function startWatcher(watchFolder) {
70
71
  (0, utils_1.log)(`Project root: ${projectRoot}`, "info");
71
72
  (0, utils_1.log)(`Watching directory: ${srcAbsolute}`, "info");
72
73
  (0, utils_1.log)("", "info");
74
+ // ── Load .testgenignore patterns ───────────────────────────────────────
75
+ let ignorePatterns = (0, ignoreManager_1.loadIgnorePatterns)(projectRoot);
76
+ let isIgnored = (0, ignoreManager_1.buildIgnorePredicate)(ignorePatterns, projectRoot);
73
77
  // ── Shared worker pool — used by startup scan AND event handler ───────
74
78
  const pool = new workerPool_1.WorkerPool();
75
79
  // ── Phase 2: scan existing files before entering the event loop ───────
76
- scanExistingFiles(srcAbsolute, projectRoot, config, pool).then(() => {
80
+ scanExistingFiles(srcAbsolute, projectRoot, config, pool, isIgnored).then(() => {
77
81
  (0, utils_1.log)("Watcher ready — waiting for file changes…\n", "success");
78
82
  });
79
83
  const debounceTimers = new Map();
@@ -95,16 +99,24 @@ function startWatcher(watchFolder) {
95
99
  });
96
100
  // ── Config hot-reload ─────────────────────────────────────────────────
97
101
  const configPath = path.join(projectRoot, "cotester", "cotester.config.json");
98
- const configWatcher = chokidar.watch(configPath, {
102
+ const ignorePath = path.join(projectRoot, ".testgenignore");
103
+ const configWatcher = chokidar.watch([configPath, ignorePath], {
99
104
  persistent: true,
100
105
  ignoreInitial: true,
101
106
  usePolling: true,
102
107
  interval: 500,
103
108
  });
104
- configWatcher.on("change", () => {
109
+ configWatcher.on("change", (changedPath) => {
105
110
  config = (0, configManager_1.loadConfig)(projectRoot);
106
111
  (0, astCache_1.clearMemoryCache)(); // config change may affect scenario rules
107
- (0, utils_1.log)("cotester.config.json changed config reloaded, AST cache cleared.", "info");
112
+ if (changedPath === ignorePath) {
113
+ ignorePatterns = (0, ignoreManager_1.loadIgnorePatterns)(projectRoot);
114
+ isIgnored = (0, ignoreManager_1.buildIgnorePredicate)(ignorePatterns, projectRoot);
115
+ (0, utils_1.log)(".testgenignore changed — ignore patterns reloaded.", "info");
116
+ }
117
+ else {
118
+ (0, utils_1.log)("cotester.config.json changed — config reloaded, AST cache cleared.", "info");
119
+ }
108
120
  });
109
121
  const handleFile = (filePath) => {
110
122
  // Extra safety: skip non-.ts files
@@ -114,6 +126,8 @@ function startWatcher(watchFolder) {
114
126
  return;
115
127
  if (filePath.endsWith(".d.ts"))
116
128
  return;
129
+ if (isIgnored(filePath))
130
+ return;
117
131
  // Clear existing timer for this file
118
132
  const existing = debounceTimers.get(filePath);
119
133
  if (existing)
@@ -158,9 +172,9 @@ function startWatcher(watchFolder) {
158
172
  * have a corresponding test file. Files are processed in parallel using the
159
173
  * shared WorkerPool (bounded by CPU count) for maximum throughput.
160
174
  */
161
- async function scanExistingFiles(dir, projectRoot, config, pool) {
175
+ async function scanExistingFiles(dir, projectRoot, config, pool, isIgnored = () => false) {
162
176
  (0, utils_1.log)("Scanning existing source files for missing tests…", "info");
163
- const files = collectSourceFiles(dir);
177
+ const files = collectSourceFiles(dir, isIgnored);
164
178
  // Use the absolute srcRoot so mirrorPath never misidentifies a parent
165
179
  // directory segment as the source root.
166
180
  const absSrcRoot = path.resolve(projectRoot, config.srcDir);
@@ -187,9 +201,10 @@ async function scanExistingFiles(dir, projectRoot, config, pool) {
187
201
  }
188
202
  /**
189
203
  * Recursively collect all source .ts files under `dir`,
190
- * skipping test/spec/d.ts files and ignored directories.
204
+ * skipping test/spec/d.ts files, ignored directories, and any paths
205
+ * matched by the optional `isIgnored` predicate from .testgenignore.
191
206
  */
192
- function collectSourceFiles(dir) {
207
+ function collectSourceFiles(dir, isIgnored = () => false) {
193
208
  const IGNORED_DIRS = new Set(["node_modules", "cotester", "dist", ".git"]);
194
209
  const results = [];
195
210
  if (!fs.existsSync(dir))
@@ -199,13 +214,16 @@ function collectSourceFiles(dir) {
199
214
  if (entry.isDirectory()) {
200
215
  if (IGNORED_DIRS.has(entry.name))
201
216
  continue;
202
- results.push(...collectSourceFiles(fullPath));
217
+ if (isIgnored(fullPath))
218
+ continue;
219
+ results.push(...collectSourceFiles(fullPath, isIgnored));
203
220
  }
204
221
  else if (entry.isFile() &&
205
222
  entry.name.endsWith(".ts") &&
206
223
  !entry.name.endsWith(".test.ts") &&
207
224
  !entry.name.endsWith(".spec.ts") &&
208
- !entry.name.endsWith(".d.ts")) {
225
+ !entry.name.endsWith(".d.ts") &&
226
+ !isIgnored(fullPath)) {
209
227
  results.push(fullPath);
210
228
  }
211
229
  }
@@ -215,7 +233,7 @@ function collectSourceFiles(dir) {
215
233
  * Process a single TypeScript file through the full pipeline:
216
234
  * analyze → scenarios → mock file → test file
217
235
  */
218
- async function processFile(filePath, projectRoot, config) {
236
+ async function processFile(filePath, projectRoot, config, dryRun = false) {
219
237
  try {
220
238
  (0, utils_1.log)(`Analyzing: ${path.relative(projectRoot, filePath)}`, "info");
221
239
  // 1. Analyse the file (returns cached result if content is unchanged)
@@ -228,9 +246,9 @@ async function processFile(filePath, projectRoot, config) {
228
246
  // 2. Generate scenarios
229
247
  const scenarios = (0, scenarioEngine_1.generateScenarios)(functions, config, projectRoot);
230
248
  // 3. Generate the mock file (first!)
231
- const mockResult = await (0, mockGenerator_1.generateMockFile)(filePath, scenarios, projectRoot, config.srcDir, config.mockDir);
249
+ const mockResult = await (0, mockGenerator_1.generateMockFile)(filePath, scenarios, projectRoot, config.srcDir, config.mockDir, dryRun);
232
250
  // 4. Generate the test file (with mock import)
233
- await (0, generator_1.generateTestFile)(filePath, scenarios, projectRoot, config.srcDir, config.testDir, mockResult, config.scenarioRules.tableThreshold);
251
+ await (0, generator_1.generateTestFile)(filePath, scenarios, projectRoot, config.srcDir, config.testDir, mockResult, config.scenarioRules.tableThreshold, dryRun);
234
252
  }
235
253
  catch (err) {
236
254
  (0, utils_1.log)(` Error processing file: ${err.message}`, "error");
@@ -1 +1 @@
1
- {"version":3,"file":"watcher.js","sourceRoot":"","sources":["../src/watcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watcher.js","sourceRoot":"","sources":["../src/watcher.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gnapi/cotester",
3
- "version": "1.2.3",
3
+ "version": "1.2.4",
4
4
  "description": "Developer CLI tool that bootstraps testing environments and auto-generates unit test skeletons for TypeScript functions",
5
5
  "main": "dist/cli.js",
6
6
  "bin": {