@component-compass/cli 0.1.14 → 0.1.16

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.
Files changed (54) hide show
  1. package/dist/auth/paths.js +2 -2
  2. package/dist/auth/paths.js.map +1 -1
  3. package/dist/auth/session.d.ts +1 -1
  4. package/dist/auth/session.js +5 -5
  5. package/dist/auth/session.js.map +1 -1
  6. package/dist/auth/store.js +1 -1
  7. package/dist/auth/store.js.map +1 -1
  8. package/dist/auth/upload-auth.d.ts +2 -2
  9. package/dist/auth/upload-auth.js +3 -3
  10. package/dist/auth/upload-auth.js.map +1 -1
  11. package/dist/cli/help.d.ts +2 -2
  12. package/dist/cli/help.js +9 -15
  13. package/dist/cli/help.js.map +1 -1
  14. package/dist/cli/parse.d.ts +1 -1
  15. package/dist/cli/parse.js +4 -7
  16. package/dist/cli/parse.js.map +1 -1
  17. package/dist/cli.js +2 -20
  18. package/dist/cli.js.map +1 -1
  19. package/dist/commands/auth.js +30 -7
  20. package/dist/commands/auth.js.map +1 -1
  21. package/dist/commands/init.js +1 -1
  22. package/dist/commands/init.js.map +1 -1
  23. package/dist/commands/scan.js +111 -24
  24. package/dist/commands/scan.js.map +1 -1
  25. package/dist/config/loader.js +1 -1
  26. package/dist/config/loader.js.map +1 -1
  27. package/dist/manifest/barrel-parser.d.ts +6 -23
  28. package/dist/manifest/barrel-parser.js +9 -101
  29. package/dist/manifest/barrel-parser.js.map +1 -1
  30. package/dist/manifest/lazy-resolver.js +9 -11
  31. package/dist/manifest/lazy-resolver.js.map +1 -1
  32. package/dist/parse-by-ext.js +1 -1
  33. package/dist/parse-by-ext.js.map +1 -1
  34. package/dist/reporter/index.js +2 -0
  35. package/dist/reporter/index.js.map +1 -1
  36. package/dist/rollup.js +5 -0
  37. package/dist/rollup.js.map +1 -1
  38. package/dist/scan/auto-import-manifest.d.ts +28 -0
  39. package/dist/scan/auto-import-manifest.js +81 -0
  40. package/dist/scan/auto-import-manifest.js.map +1 -0
  41. package/dist/scan/entry-packages.d.ts +4 -2
  42. package/dist/scan/entry-packages.js +4 -2
  43. package/dist/scan/entry-packages.js.map +1 -1
  44. package/dist/scan/wrap-relationships.d.ts +12 -0
  45. package/dist/scan/wrap-relationships.js +38 -0
  46. package/dist/scan/wrap-relationships.js.map +1 -0
  47. package/examples/github-actions-workflow.yml +1 -1
  48. package/package.json +8 -9
  49. package/dist/commands/db-import.d.ts +0 -12
  50. package/dist/commands/db-import.js +0 -59
  51. package/dist/commands/db-import.js.map +0 -1
  52. package/dist/scan/wrap-aggregation.d.ts +0 -7
  53. package/dist/scan/wrap-aggregation.js +0 -95
  54. package/dist/scan/wrap-aggregation.js.map +0 -1
@@ -23,7 +23,7 @@ import { printSummary } from "../reporter/stdout.js";
23
23
  import { stampMeta } from "../scan/meta.js";
24
24
  import { stampGitMTime } from "../scan/git-mtime.js";
25
25
  import { stampVersion } from "../scan/stamp-version.js";
26
- import { applyWrapAggregation } from "../scan/wrap-aggregation.js";
26
+ import { applyWrapRelationships } from "../scan/wrap-relationships.js";
27
27
  import { applyEntryPackages, createEntryPackageRecorder } from "../scan/entry-packages.js";
28
28
  import { buildCemIndex } from "../scan/cem-index.js";
29
29
  import { isPnpProject } from "../util/pnp-check.js";
@@ -38,7 +38,8 @@ import { computeStableIdFromComponentId, computeOutputIdentity } from "../identi
38
38
  import { buildScanOutput } from "../reporter/index.js";
39
39
  import { buildWorkspaceGraph, declaredDeps, findOwningPackage, resetFindOwningPackageCache, } from "../workspace/index.js";
40
40
  import { createBoundedDefinitionResolver } from "../walker/bounded-definition-resolver.js";
41
- import { createDiagnosticCollector, computeOccurrenceId } from "@component-compass/plugin-core";
41
+ import { loadAutoImportManifest, detectAutoImportFramework } from "../scan/auto-import-manifest.js";
42
+ import { createDiagnosticCollector, computeOccurrenceId, externalPackageOf } from "@component-compass/plugin-core";
42
43
  /** Map a scan result to a process exit code: 2 = scan failed, 1 = requested upload failed, 0 = ok. */
43
44
  export function scanExitCode(result) {
44
45
  if (result.output === null)
@@ -64,7 +65,7 @@ export async function runScan(opts) {
64
65
  throw err;
65
66
  }
66
67
  if (isPnpProject(cfg.configDir)) {
67
- log.error("yarn PnP detected; component-compass requires nodeLinker: node-modules. See docs/usage.md.");
68
+ log.error("yarn PnP detected; component-compass requires nodeLinker: node-modules.");
68
69
  return { output: null, upload: "skipped" };
69
70
  }
70
71
  // Stamp meta early — throws if not a git work tree, which is a hard
@@ -208,6 +209,39 @@ export async function runScan(opts) {
208
209
  // Phase 2's plugin dispatch and its output is merged with the legacy
209
210
  // Vue/Lit/HTML occurrences before Assemble.
210
211
  const graphBuilder = createGraphBuilder({ moduleResolver: resolveImport, repoRoot: cfg.configDir });
212
+ // Auto-import manifest (#346): generated component maps (Nuxt's
213
+ // .nuxt/components.d.ts). Loaded once per scan; misses degrade to
214
+ // diagnostics, never gates.
215
+ const autoImports = loadAutoImportManifest(cfg.configDir);
216
+ if (autoImports !== null) {
217
+ for (const s of autoImports.stale) {
218
+ collector.emit({
219
+ code: "auto-import-stale-entry",
220
+ severity: "warning",
221
+ filePath: autoImports.manifestPath,
222
+ componentName: s.componentName,
223
+ // s.target is absolute (auto-import-manifest.ts resolves in-repo
224
+ // entries to an absolute path before checking existence) — emit
225
+ // repo-relative POSIX so the artefact stays portable across machines,
226
+ // matching the convention used for occurrence/component filePaths.
227
+ target: posixPath(relative(cfg.configDir, s.target)),
228
+ });
229
+ }
230
+ }
231
+ else {
232
+ const framework = detectAutoImportFramework(cfg.configDir);
233
+ if (framework !== null) {
234
+ const missing = {
235
+ code: "auto-import-manifest-missing",
236
+ severity: "warning",
237
+ filePath: framework.expectedPath,
238
+ detail: "auto-import framework detected but no components manifest was found — auto-imported components can't be resolved. Run `nuxt prepare` (or any dev/build) and re-scan.",
239
+ };
240
+ collector.emit(missing);
241
+ // Surface at scan time, not only in the artifact.
242
+ log.warn(formatDiagnostic(missing));
243
+ }
244
+ }
211
245
  // ── Phase 1: read + parse + emit local definitions ──────────────────────
212
246
  for (const file of orderedFiles) {
213
247
  const source = await readFile(file, "utf8").catch(() => "");
@@ -260,8 +294,9 @@ export async function runScan(opts) {
260
294
  // lane's priming (emit-template.ts), warming byTag for tag
261
295
  // resolution and feeding entry-package provenance (#331).
262
296
  // exportName "" = side-effect signal. Anchor is absolute here,
263
- // which resolveLeaf handles identically (the Vue lane's
264
- // repo-relative anchor is pre-existing).
297
+ // which resolveLeaf handles identically the Vue lane
298
+ // (emit-template.ts, below) now anchors absolute too, for the
299
+ // same reason.
265
300
  onSideEffectImport: (spec) => {
266
301
  warmedResolver.resolveLazyManifest(file, spec, "");
267
302
  },
@@ -284,11 +319,27 @@ export async function runScan(opts) {
284
319
  source,
285
320
  wrapper,
286
321
  fileBuilder,
287
- resolveLazyManifest: warmedResolver.resolveLazyManifest,
322
+ // Anchor on the absolute `file`, discarding the emitter's own
323
+ // repo-relative `_from` (relPath, relative to cfg.configDir).
324
+ // resolveLazyManifest ultimately calls resolveImport(from, spec),
325
+ // which rebases a non-absolute `from` onto the import resolver's
326
+ // repoRoot — workspaceRoot, not cfg.configDir (walker/resolve-
327
+ // import.ts). Those coincide for every scan rooted at its own
328
+ // workspace root, but whenever cfg.configDir sits in a workspace
329
+ // subdirectory (consumer-ci's per-app targets), rebasing the
330
+ // relative anchor onto workspaceRoot produces a path that doesn't
331
+ // exist, and the node_modules walk starts from the wrong
332
+ // directory — nested per-app deps become unreachable. The
333
+ // React/babel lane (emitReact's onSideEffectImport, above) already
334
+ // anchors on the absolute `file` for the same reason; mirror it
335
+ // here instead of "simplifying" this back to the emitter's arg.
336
+ resolveLazyManifest: (_from, spec, exportName) => warmedResolver.resolveLazyManifest(file, spec, exportName),
288
337
  // Reuse detectVueComponents' resolved symbol so the SFC's local-index
289
338
  // seed and the engine's owner ComponentId hash to the same id —
290
339
  // otherwise the SFC seed is pruned as an unreachable local.
291
340
  ...(sfcDefs[0]?.exportName !== undefined ? { sfcSymbol: sfcDefs[0].exportName } : {}),
341
+ ...(autoImports !== null ? { resolveAutoImport: autoImports.lookup } : {}),
342
+ collector,
292
343
  });
293
344
  }
294
345
  catch (err) {
@@ -355,12 +406,21 @@ export async function runScan(opts) {
355
406
  // specifier imports alike.
356
407
  //
357
408
  // tagIndex serves tag-based emitters (parser-vue from A2 onward, parser-lit /
358
- // parser-html from #105 / #106). External lookups go through CemIndex.byTag;
359
- // local lookups through the workspace-WC entries in LocalDefinitionIndex.byTag.
409
+ // parser-html from #105 / #106). External lookups try the warmed lazy
410
+ // resolver first (populated by `.warm()`'s declared-dep eager-load and by
411
+ // side-effect-import priming, both re-export-aware — sees barrels the
412
+ // static CemIndex glob can't reach, e.g. nested node_modules leaves),
413
+ // falling back to CemIndex.byTag for tags whose package was never imported
414
+ // or warmed. Local lookups go through the workspace-WC entries in
415
+ // LocalDefinitionIndex.byTag.
360
416
  // The collector is the same shared one parsers emit through; the engine adds
361
417
  // its own diagnostics (low-confidence-tag, etc.).
362
418
  const tagIndex = {
363
419
  externalByTag: (tag) => {
420
+ const warmed = warmedResolver.lookupByTag(tag);
421
+ if (warmed && warmed.source.type === "external") {
422
+ return { packageName: externalPackageOf(warmed.source) };
423
+ }
364
424
  const hit = cemIndex.byTag.get(tag);
365
425
  if (!hit)
366
426
  return undefined;
@@ -466,6 +526,15 @@ export async function runScan(opts) {
466
526
  // both the occurrenceId hash and the emitted OutputOccurrence.filePath.
467
527
  const outFile = rebase(eo.filePath);
468
528
  const occurrenceId = computeOccurrenceId(componentId, outFile, eo.line, eo.column, ownerComponentId);
529
+ // Normalise absolute `via`/`viaChain` specifiers (e.g. auto-import-manifest
530
+ // entries for in-repo Vue components — see auto-import-manifest.ts) to
531
+ // output-space POSIX through the same rebase used for local identity
532
+ // paths above. Authored specifiers are never absolute, so the isAbsolute
533
+ // guard only ever fires for these synthetic entries. `via` is always
534
+ // `viaChain[0]` (see engine/index.ts) — derive it from the normalised
535
+ // chain so the two stay in sync.
536
+ const normalisedViaChain = eo.viaChain.map((v) => normaliseVia(v, cfg.configDir, rebase));
537
+ const via = normalisedViaChain[0] ?? normaliseVia(eo.via, cfg.configDir, rebase);
469
538
  // Propagate wraps cross-link so it reaches OutputComponent.identity.wraps.
470
539
  // We record it in wrapsById so it can be patched onto pre-existing seeds
471
540
  // (manifest snapshot path) that were built before the engine ran.
@@ -496,8 +565,8 @@ export async function runScan(opts) {
496
565
  filePath: outFile,
497
566
  line: eo.line,
498
567
  column: eo.column,
499
- via: eo.via,
500
- viaChain: eo.viaChain,
568
+ via,
569
+ viaChain: normalisedViaChain,
501
570
  props: eo.props,
502
571
  occurrenceId,
503
572
  depth: eo.depth,
@@ -530,23 +599,18 @@ export async function runScan(opts) {
530
599
  scanDurationMs: Math.round(t1 - t0),
531
600
  };
532
601
  const rawScanOutput = buildScanOutput(meta, manifests, partialStats, allSeeds, occurrences, diagnostics);
533
- // Post-resolve aggregation: materialise zero-occurrence custom-element entries
534
- // and populate symmetric wrappedBy arrays from react-component wraps cross-links.
535
- // #331 ordering: applyEntryPackages AFTER applyWrapAggregation wrap
536
- // aggregation materialises custom-element entries provenance attaches to.
537
- const aggregated = applyEntryPackages(applyWrapAggregation(rawScanOutput.components), entryPackageRecorder.drain());
538
- // applyWrapAggregation may materialise brand-new zero-occurrence
539
- // custom-element rows (a wraps target with no observed seed of its own)
540
- // these never went through the enrichment seam above because they didn't
541
- // exist yet at that point. Run the same seam again over the final rows so
542
- // a matching manifest snapshot entry still reaches them. Idempotent for
543
- // rows already enriched (re-finds the same unambiguous match).
544
- attachManifestEnrichment(aggregated, snapshot, workspaceGraph);
602
+ // Post-resolve aggregation (COM-388): stamp logicalId on every component and
603
+ // emit wraps relationship edges no synthetic zero-occurrence rows.
604
+ // #331 ordering note: applyEntryPackages previously ran after materialisation
605
+ // so provenance could attach to synthetic CE entries; with materialisation
606
+ // gone, leaf-package-lane records for UNOBSERVED targets match no row and
607
+ // drop the relationship edge carries that provenance now.
608
+ const { components: withRelationships, relationships } = applyWrapRelationships(rawScanOutput.components);
609
+ const aggregated = applyEntryPackages(withRelationships, entryPackageRecorder.drain());
545
610
  const scanOutput = {
546
611
  ...rawScanOutput,
547
612
  components: aggregated,
548
- // #359: componentsDetected counts the FINAL array, after wrap-aggregation
549
- // materialises anchors — not the pre-synthesis rollup.
613
+ relationships,
550
614
  stats: { ...rawScanOutput.stats, componentsDetected: aggregated.length },
551
615
  };
552
616
  // Both functions join their root arg with output-space (outputRoot-relative)
@@ -618,6 +682,23 @@ function normaliseEngineLocalId(c, configDir, rebase) {
618
682
  source: { type: "local", filePath: rebase(scanRel) },
619
683
  };
620
684
  }
685
+ /**
686
+ * Rebase an absolute `via.specifier` (or `viaChain[n].specifier`) to
687
+ * output-space POSIX, mirroring `normaliseEngineLocalId`'s treatment of
688
+ * local ComponentId filePaths. The auto-import-manifest reader
689
+ * (scan/auto-import-manifest.ts) emits absolute specifiers for in-repo
690
+ * entries — parser-vue stamps them straight into `viaOverride.specifier` —
691
+ * so without this the artefact leaks machine-local absolute paths.
692
+ * Authored specifiers (explicit imports) are always bare/relative import
693
+ * strings, never absolute, so the `isAbsolute` guard only ever fires for
694
+ * these synthetic auto-import entries.
695
+ */
696
+ function normaliseVia(v, configDir, rebase) {
697
+ if (!("specifier" in v) || v.specifier === undefined || !isAbsolute(v.specifier))
698
+ return v;
699
+ const scanRel = posixPath(relative(configDir, v.specifier));
700
+ return { ...v, specifier: rebase(scanRel) };
701
+ }
621
702
  function assertUnreachable(x) {
622
703
  throw new Error(`Unhandled diagnostic code: ${x.code}`);
623
704
  }
@@ -640,6 +721,12 @@ function formatDiagnostic(d) {
640
721
  return `${tag} [component-compass] ${d.code} at ${d.filePath}:${d.line}:${d.column} — ${d.symbol}${d.memberChain.length ? `.${d.memberChain.join(".")}` : ""}`;
641
722
  case "cycle-in-resolution":
642
723
  return `${tag} [component-compass] ${d.code} at ${d.filePath}:${d.line}:${d.column} — ${d.symbol} (depth ${d.depth})`;
724
+ case "unresolved-component-tag":
725
+ return `${tag} [component-compass] ${d.code} at ${d.filePath}:${d.line ?? "?"}:${d.column ?? "?"} — <${d.tagName}> has no import, auto-import entry, or tag registration`;
726
+ case "auto-import-stale-entry":
727
+ return `${tag} [component-compass] ${d.code} in ${d.filePath} — ${d.componentName} → ${d.target} (file missing; regenerate the manifest)`;
728
+ case "auto-import-manifest-missing":
729
+ return `${tag} [component-compass] ${d.code} at ${d.filePath} — ${d.detail}`;
643
730
  default:
644
731
  return assertUnreachable(d);
645
732
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,EAAE,UAAU,EAAmB,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EACL,kBAAkB,EAClB,OAAO,IAAI,YAAY,GAGxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,mBAAmB,EAAsB,MAAM,aAAa,CAAC;AAChG,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,2BAA2B,GAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAQpG,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAgCnH,sGAAsG;AACtG,MAAM,UAAU,YAAY,CAAC,MAAkB;IAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI;QAAE,OAAO,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC;IACzC,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAiB;IAC7C,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAE7B,MAAM,UAAU,GACd,IAAI,CAAC,UAAU;QACf,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,+BAA+B,CAAC,CAAC;IAEtE,IAAI,GAAmB,CAAC;IACxB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,WAAW,EAAE,CAAC;YAC/B,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC7C,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;IAED,IAAI,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,KAAK,CACP,yEAAyE,CAC1E,CAAC;QACF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC7C,CAAC;IAED,oEAAoE;IACpE,2CAA2C;IAC3C,MAAM,QAAQ,GAAoC,EAAE,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC;IACzE,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC;IACjD,IAAI,cAAc,KAAK,SAAS;QAAE,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;IAC3E,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEvC,8EAA8E;IAC9E,6EAA6E;IAC7E,6CAA6C;IAC7C,yEAAyE;IACzE,sCAAsC;IACtC,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ;QAC9B,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;YACxB,CAAC,CAAC,IAAI,CAAC,QAAQ;YACf,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;YACpE,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAEvB,yEAAyE;IACzE,oCAAoC;IACpC,MAAM,MAAM,GAAG,CAAC,OAAe,EAAU,EAAE,CACzC,UAAU,KAAK,GAAG,CAAC,SAAS;QAC1B,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAEvE,IAAI,IAAI,CAAC,cAAc;QAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC;IAE1D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE9E,sEAAsE;IACtE,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,oEAAoE;IACpE,0CAA0C;IAC1C,MAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC;IACpF,IAAI,aAAa,KAAK,GAAG,CAAC,SAAS,EAAE,CAAC;QACpC,MAAM,CAAC,0BAA0B,aAAa,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,4EAA4E;IAC5E,2EAA2E;IAC3E,qEAAqE;IACrE,2BAA2B,EAAE,CAAC;IAC9B,MAAM,cAAc,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAE1D,MAAM,iBAAiB,GAA+C;QACpE,QAAQ,EAAE,aAAa;QACvB,cAAc;QACd,SAAS,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,oBAAoB,GAAG,IAAI,CAAC;KAChE,CAAC;IACF,IAAI,GAAG,CAAC,OAAO;QAAE,iBAAiB,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IACzD,iBAAiB,CAAC,kBAAkB,GAAG,uBAAuB,CAC5D,cAAc,EACd,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,+BAA+B,GAAG,IAAI,CAAC,CACxD,CAAC;IACF,MAAM,YAAY,GAAG,mBAAmB,CAAC;QACvC,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,QAAQ,EAAE,aAAa;QACvB,GAAG,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9E,CAAC,CAAC;IACH,IAAI,YAAY;QAAE,iBAAiB,CAAC,YAAY,GAAG,YAAY,CAAC;IAChE,MAAM,aAAa,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,yBAAyB,EAAE,CAAC;IAE9C,uEAAuE;IACvE,6EAA6E;IAC7E,4EAA4E;IAC5E,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC;IAEpD,0EAA0E;IAC1E,4EAA4E;IAC5E,4EAA4E;IAC5E,sEAAsE;IACtE,6EAA6E;IAC7E,sEAAsE;IACtE,8EAA8E;IAC9E,MAAM,gBAAgB,GAAa,CAAC,IAAI,CAAC,CAAC;IAC1C,yEAAyE;IACzE,yEAAyE;IACzE,sEAAsE;IACtE,MAAM,oBAAoB,GAAG,0BAA0B,EAAE,CAAC;IAC1D,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,aAAa;QACb,QAAQ,EAAE,aAAa;QACvB,SAAS;QACT,gBAAgB;QAChB,cAAc,EAAE,oBAAoB,CAAC,MAAM;KAC5C,CAAC,CAAC;IAEH,sEAAsE;IACtE,2EAA2E;IAC3E,mEAAmE;IACnE,iEAAiE;IACjE,iEAAiE;IACjE,0EAA0E;IAC1E,+CAA+C;IAC/C,MAAM,QAAQ,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;IAC9C,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEnD,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC;QAC5B,IAAI,EAAE,GAAG,CAAC,SAAS;QACnB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;KACzB,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,IAAI,CAAC,mCAAmC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,4EAA4E;IAC5E,2EAA2E;IAC3E,yDAAyD;IACzD,MAAM,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,CAAC,WAAW,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAChF,MAAM,OAAO,GAAkB,EAAE,CAAC;IAElC,0EAA0E;IAC1E,2EAA2E;IAC3E,uEAAuE;IACvE,2EAA2E;IAC3E,0EAA0E;IAC1E,oEAAoE;IACpE,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAClD,MAAM,CAAC,0BAA0B,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,8DAA8D,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IACrC,MAAM,aAAa,GAAG,cAAc,CAAC;QACnC,KAAK,EAAE,YAAY,CAAC,MAAM;QAC1B,MAAM;QACN,KAAK;QACL,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,MAAM,SAAS,GAAsB,EAAE,CAAC;IAExC,yEAAyE;IACzE,wEAAwE;IACxE,2EAA2E;IAC3E,qEAAqE;IACrE,4CAA4C;IAC5C,MAAM,YAAY,GAAG,kBAAkB,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IAEpG,gEAAgE;IAChE,kEAAkE;IAClE,4BAA4B;IAC5B,MAAM,WAAW,GAAG,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC1D,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;YAClC,SAAS,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,yBAAyB;gBAC/B,QAAQ,EAAE,SAAS;gBACnB,QAAQ,EAAE,WAAW,CAAC,YAAY;gBAClC,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,iEAAiE;gBACjE,gEAAgE;gBAChE,sEAAsE;gBACtE,mEAAmE;gBACnE,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;aACrD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG;gBACd,IAAI,EAAE,8BAA8B;gBACpC,QAAQ,EAAE,SAAS;gBACnB,QAAQ,EAAE,SAAS,CAAC,YAAY;gBAChC,MAAM,EACJ,sKAAsK;aAChK,CAAC;YACX,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxB,kDAAkD;YAClD,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,aAAa,CAAC,IAAI,EAAE,CAAC;YACrB,SAAS;QACX,CAAC;QACD,IAAI,MAAkB,CAAC;QACvB,IAAI,CAAC;YACH,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,2EAA2E;YAC3E,yEAAyE;YACzE,4BAA4B;YAC5B,GAAG,CAAC,IAAI,CAAC,wCAAwC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/E,aAAa,CAAC,IAAI,EAAE,CAAC;YACrB,SAAS;QACX,CAAC;QACD,sEAAsE;QACtE,yEAAyE;QACzE,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAClC,aAAa,CAAC,IAAI,EAAE,CAAC;YACrB,SAAS;QACX,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3B,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC9B,2EAA2E;QAC3E,yEAAyE;QACzE,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;QACzD,mEAAmE;QACnE,2EAA2E;QAC3E,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5B,SAAS,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC5E,SAAS,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;YAC3D,wEAAwE;YACxE,8DAA8D;YAC9D,SAAS,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;YAC/G,yEAAyE;YACzE,0EAA0E;YAC1E,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBACpD,SAAS,CAAC;oBACR,IAAI,EAAE,OAAO;oBACb,MAAM;oBACN,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,WAAW;oBACX,+DAA+D;oBAC/D,2DAA2D;oBAC3D,0DAA0D;oBAC1D,+DAA+D;oBAC/D,uDAAuD;oBACvD,8DAA8D;oBAC9D,eAAe;oBACf,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC3B,cAAc,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;oBACrD,CAAC;iBACF,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CAAC,uCAAuC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,KAAK,SAAS;gBAC5C,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,SAAS,EAAE;gBACpE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;YACtE,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;YAE3B,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC3D,eAAe,CAAC;oBACd,IAAI,EAAE,OAAO;oBACb,MAAM;oBACN,OAAO;oBACP,WAAW;oBACX,8DAA8D;oBAC9D,8DAA8D;oBAC9D,kEAAkE;oBAClE,iEAAiE;oBACjE,+DAA+D;oBAC/D,8DAA8D;oBAC9D,iEAAiE;oBACjE,6DAA6D;oBAC7D,kEAAkE;oBAClE,yDAAyD;oBACzD,0DAA0D;oBAC1D,mEAAmE;oBACnE,gEAAgE;oBAChE,gEAAgE;oBAChE,mBAAmB,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,CAC/C,cAAc,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC;oBAC5D,sEAAsE;oBACtE,gEAAgE;oBAChE,4DAA4D;oBAC5D,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrF,GAAG,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1E,SAAS;iBACV,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CAAC,uCAAuC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;QACD,aAAa,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,aAAa,CAAC,IAAI,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEzD,4EAA4E;IAC5E,wEAAwE;IACxE,uEAAuE;IACvE,6BAA6B;IAC7B,MAAM,YAAY,GAAG,cAAc,CAAC;QAClC,KAAK,EAAE,QAAQ,CAAC,IAAI;QACpB,MAAM;QACN,KAAK;QACL,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;IACH,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,IAAI,MAAM,KAAK,SAAS;YAAE,SAAS;QAC/E,uEAAuE;QACvE,gEAAgE;QAChE,4DAA4D;QAC5D,MAAM,SAAS,GACb,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CACtB,MAAM,CAAC,SAAS,KAAK,SAAS;gBAC5B,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,SAAS,EAAE;gBACpE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CACtC,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC1C,SAAS,CAAC;QAEZ,KAAK,MAAM,MAAM,IAAI,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CACV,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE;oBACzB,UAAU;oBACV,MAAM,EAAE,GAAG;oBACX,aAAa;oBACb,mBAAmB,EAAE,cAAc,CAAC,mBAAmB;oBACvD,kBAAkB,EAAE,cAAc,CAAC,kBAAkB;oBACrD,WAAW,EAAE,cAAc,CAAC,WAAW;oBACvC,QAAQ,EAAE,UAAU;oBACpB,SAAS;oBACT,GAAG,EAAE,SAAS;oBACd,QAAQ;iBACT,CAAC,CACH,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CAAC,wCAAwC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QACD,uEAAuE;QACvE,sCAAsC;QACtC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACtB,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzB,YAAY,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAED,YAAY,CAAC,IAAI,EAAE,CAAC;IAEpB,4EAA4E;IAC5E,0EAA0E;IAC1E,sEAAsE;IACtE,2BAA2B;IAC3B,EAAE;IACF,8EAA8E;IAC9E,sEAAsE;IACtE,0EAA0E;IAC1E,sEAAsE;IACtE,sEAAsE;IACtE,2EAA2E;IAC3E,kEAAkE;IAClE,8BAA8B;IAC9B,6EAA6E;IAC7E,kDAAkD;IAClD,MAAM,QAAQ,GAAqB;QACjC,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE;YACrB,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC/C,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAChD,OAAO,EAAE,WAAW,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3D,CAAC;YACD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpC,IAAI,CAAC,GAAG;gBAAE,OAAO,SAAS,CAAC;YAC3B,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;QAC1C,CAAC;QACD,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;YAClB,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO;gBAAE,OAAO,SAAS,CAAC;YACtE,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;QACnF,CAAC;KACF,CAAC;IACF,8EAA8E;IAC9E,wEAAwE;IACxE,0EAA0E;IAC1E,MAAM,sBAAsB,GAAG,+BAA+B,CAAC;QAC7D,cAAc,EAAE,aAAa;QAC7B,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;KAC9C,CAAC,CAAC;IACH,MAAM,WAAW,GAAgB;QAC/B,YAAY,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,cAAc,CAAC,kBAAkB,CAAC,GAAG,EAAE,UAAU,CAAC;QACrF,oEAAoE;QACpE,wEAAwE;QACxE,wEAAwE;QACxE,uEAAuE;QACvE,wEAAwE;QACxE,iEAAiE;QACjE,4DAA4D;QAC5D,wEAAwE;QACxE,wDAAwD;QACxD,mBAAmB,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE;YACvD,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YACnF,MAAM,GAAG,GAAG,cAAc,CAAC,kBAAkB,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;YAC9E,IAAI,CAAC,GAAG;gBAAE,OAAO,IAAI,CAAC;YACtB,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;QAClG,CAAC;QACD,QAAQ;QACR,SAAS;KACV,CAAC;IACF,qEAAqE;IACrE,2EAA2E;IAC3E,wEAAwE;IACxE,4EAA4E;IAC5E,gCAAgC;IAChC,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QAC/B,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC,CAAC,KAAK,IAAI;QACzE,sBAAsB;KACvB,CAAC,CAAC;IACH,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAE5E,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAE7B,8BAA8B;IAC9B,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;IAEzC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;YAC/B,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,4CAA4C;IAC5C,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7C,GAAG,CAAC;QACJ,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ;KAC5F,CAAC,CAAC,CAAC;IAEJ,MAAM,QAAQ,GAAoB,cAAc;SAC7C,kBAAkB,EAAE;SACpB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,cAAc,CAAC,oBAAoB,EAAE,CAAC;IAExD,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;IACnF,+EAA+E;IAC/E,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAEzE,4EAA4E;IAC5E,8EAA8E;IAC9E,2EAA2E;IAC3E,yEAAyE;IACzE,gEAAgE;IAChE,EAAE;IACF,6EAA6E;IAC7E,yEAAyE;IACzE,6EAA6E;IAC7E,0EAA0E;IAC1E,yCAAyC;IACzC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAgD,CAAC;IAC5E,0EAA0E;IAC1E,wEAAwE;IACxE,iFAAiF;IACjF,MAAM,SAAS,GAAG,IAAI,GAAG,EAA4E,CAAC;IACtG,MAAM,yBAAyB,GAAuB,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACjF,uEAAuE;QACvE,2EAA2E;QAC3E,uEAAuE;QACvE,MAAM,qBAAqB,GAAG,sBAAsB,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/F,MAAM,WAAW,GAAG,8BAA8B,CAAC,qBAAqB,CAAC,CAAC;QAE1E,6EAA6E;QAC7E,yEAAyE;QACzE,4EAA4E;QAC5E,MAAM,gBAAgB,GACpB,EAAE,CAAC,mBAAmB,KAAK,SAAS;YAClC,CAAC,CAAC,8BAA8B,CAAC,sBAAsB,CAAC,EAAE,CAAC,mBAAmB,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACvG,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC;QAE1B,0EAA0E;QAC1E,wEAAwE;QACxE,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,YAAY,GAAG,mBAAmB,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAErG,4EAA4E;QAC5E,uEAAuE;QACvE,qEAAqE;QACrE,yEAAyE;QACzE,qEAAqE;QACrE,sEAAsE;QACtE,iCAAiC;QACjC,MAAM,kBAAkB,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QAC1F,MAAM,GAAG,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAEjF,2EAA2E;QAC3E,yEAAyE;QACzE,kEAAkE;QAClE,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1D,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QAED,yEAAyE;QACzE,kFAAkF;QAClF,iFAAiF;QACjF,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,CAAC;YAC7D,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,QAAQ,GAAG,qBAAqB,CAAC;oBACrC,WAAW,EAAE,qBAAqB;oBAClC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;oBACpB,cAAc;oBACd,UAAU;oBACV,GAAG,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACzE,CAAC,CAAC;gBACH,wDAAwD;gBACxD,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS;oBAAE,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;gBACtD,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QAED,OAAO;YACL,WAAW;YACX,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,MAAM,EAAE,EAAE,CAAC,MAAM;YACjB,GAAG;YACH,QAAQ,EAAE,kBAAkB;YAC5B,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,YAAY;YACZ,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,GAAG,CAAC,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,gGAAgG;IAChG,gFAAgF;IAChF,gFAAgF;IAChF,MAAM,QAAQ,GAAG;QACf,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACjB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,CAAC,CAAC;YAClC,OAAO,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;QACtD,CAAC,CAAC;QACF,GAAG,WAAW,CAAC,MAAM,EAAE;KACxB,CAAC;IAEF,6EAA6E;IAC7E,4EAA4E;IAC5E,uEAAuE;IACvE,6EAA6E;IAC7E,iEAAiE;IACjE,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;IAE7D,MAAM,WAAW,GAAG,CAAC,GAAG,iBAAiB,EAAE,GAAG,yBAAyB,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG;QACnB,YAAY,EAAE,KAAK,CAAC,MAAM;QAC1B,cAAc,EAAE,mBAAmB,CAAC,WAAW,CAAC;QAChD,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;KACpC,CAAC;IACF,MAAM,aAAa,GAAG,eAAe,CACnC,IAAI,EACJ,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,WAAW,CACZ,CAAC;IAEF,6EAA6E;IAC7E,qEAAqE;IACrE,8EAA8E;IAC9E,2EAA2E;IAC3E,0EAA0E;IAC1E,4DAA4D;IAC5D,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,aAAa,EAAE,GAAG,sBAAsB,CAC7E,aAAa,CAAC,UAAU,CACzB,CAAC;IACF,MAAM,UAAU,GAAG,kBAAkB,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAC;IAEvF,MAAM,UAAU,GAAG;QACjB,GAAG,aAAa;QAChB,UAAU,EAAE,UAAU;QACtB,aAAa;QACb,KAAK,EAAE,EAAE,GAAG,aAAa,CAAC,KAAK,EAAE,kBAAkB,EAAE,UAAU,CAAC,MAAM,EAAE;KACzE,CAAC;IAEF,6EAA6E;IAC7E,2EAA2E;IAC3E,4EAA4E;IAC5E,uEAAuE;IACvE,sCAAsC;IACtC,MAAM,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IACvD,MAAM,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IAE9E,mEAAmE;IACnE,uEAAuE;IACvE,sBAAsB;IACtB,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5F,MAAM,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAExC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAChB,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,MAAM,GAAkB,SAAS,CAAC;IACtC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YACxE,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC;gBAC1C,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3E,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5D,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;YACjE,MAAM,GAAG,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;YACxD,GAAG,CAAC,IAAI,CACN,MAAM,CAAC,MAAM,KAAK,UAAU;gBAC1B,CAAC,CAAC,iBAAiB,MAAM,CAAC,MAAM,MAAM,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE;gBAClE,CAAC,CAAC,QAAQ,MAAM,CAAC,MAAM,sBAAsB,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,eAAe,CACzF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,QAAQ,CAAC;YAClB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;YACrC,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1E,GAAG,CAAC,KAAK,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,mBAAmB,CAAC,WAA+B;IAC1D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,WAAW;QAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACnD,OAAO,KAAK,CAAC,IAAI,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,sBAAsB,CAC7B,CAAuD,EACvD,SAAiB,EACjB,MAAmC;IAEnC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,CAAC,CAAC;IACxC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,OAAO;QACL,GAAG,CAAC;QACJ,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KACrD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,YAAY,CACnB,CAAgB,EAChB,SAAiB,EACjB,MAAmC;IAEnC,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAAE,OAAO,CAAC,CAAC;IAC3F,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5D,OAAO,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;AAC9C,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAQ;IACjC,MAAM,IAAI,KAAK,CAAC,8BAA+B,CAAsB,CAAC,IAAI,EAAE,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAa;IACrC,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;IACzD,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,uBAAuB;YAC1B,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;QAChG,KAAK,oBAAoB;YACvB,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC,OAAO,GAAG,CAAC;QACnG,KAAK,2BAA2B;YAC9B,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC,CAAC,OAAO,oBAAoB,CAAC,CAAC,aAAa,EAAE,CAAC;QACpH,KAAK,gBAAgB;YACnB,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,aAAa,CAAC,CAAC,UAAU,GAAG,CAAC;QAC3F,KAAK,gBAAgB;YACnB,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,aAAa,CAAC,CAAC,UAAU,YAAY,CAAC,CAAC,KAAK,GAAG,CAAC;QAC9G,KAAK,mBAAmB;YACtB,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,yBAAyB,CAAC,CAAC,SAAS,GAAG,CAAC;QAC5H,KAAK,sBAAsB;YACzB,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACjK,KAAK,qBAAqB;YACxB,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,MAAM,WAAW,CAAC,CAAC,KAAK,GAAG,CAAC;QACxH,KAAK,0BAA0B;YAC7B,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,OAAO,yDAAyD,CAAC;QAC5K,KAAK,yBAAyB;YAC5B,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,aAAa,MAAM,CAAC,CAAC,MAAM,0CAA0C,CAAC;QAC5I,KAAK,8BAA8B;YACjC,OAAO,GAAG,GAAG,wBAAwB,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;QAC/E;YACE,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;AACH,CAAC"}
@@ -28,7 +28,7 @@ export async function loadConfig(configPath) {
28
28
  // Pre-validation legacy field detection so we surface a migration message
29
29
  // rather than a generic "additional property" AJV error.
30
30
  if (parsed && typeof parsed === "object" && "manifests" in parsed) {
31
- throw new ConfigError("CONFIG_INVALID", `${abs}: the \`manifests\` field was removed. Replace with \`include\` (array of glob patterns for files to scan). See docs/usage.md.`);
31
+ throw new ConfigError("CONFIG_INVALID", `${abs}: the \`manifests\` field was removed. Replace with \`include\` (array of glob patterns for files to scan).`);
32
32
  }
33
33
  if (!validateConfig(parsed)) {
34
34
  const issues = (validateConfig.errors ?? [])
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,MAAM,OAAO,WAAY,SAAQ,KAAK;IACjB;IAAnB,YAAmB,IAAyC,EAAE,OAAe;QAC3E,KAAK,CAAC,OAAO,CAAC,CAAC;QADE,SAAI,GAAJ,IAAI,CAAqC;IAE5D,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAkB;IACjD,MAAM,GAAG,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;IAErF,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,WAAW,CACnB,gBAAgB,EAChB,yCAAyC,GAAG,mDAAmD,CAChG,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACxC,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,WAAW,CAAC,gBAAgB,EAAE,GAAG,GAAG,uBAAuB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,0EAA0E;IAC1E,yDAAyD;IACzD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,WAAW,IAAI,MAAM,EAAE,CAAC;QAClE,MAAM,IAAI,WAAW,CACnB,gBAAgB,EAChB,GAAG,GAAG,6GAA6G,CACpH,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,IAAI,EAAE,CAAC;aACzC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,YAAY,IAAI,QAAQ,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;aACzD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,IAAI,WAAW,CAAC,gBAAgB,EAAE,qBAAqB,GAAG,KAAK,MAAM,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,+DAA+D;IAC/D,4EAA4E;IAC5E,MAAM,QAAQ,GAAmB;QAC/B,UAAU,EAAE,GAAG;QACf,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC;QACvB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;QAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,0BAA0B;QACnD,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI;KACpC,CAAC;IACF,mEAAmE;IACnE,qDAAqD;IACrD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;QAAE,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IACjE,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;QAAE,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAC3D,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS;QAAE,QAAQ,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IACnF,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;QAAE,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IACpE,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -17,36 +17,19 @@ export type BarrelReExport = {
17
17
  *
18
18
  * Type-only re-exports (`export type { ... } from`) are skipped.
19
19
  * Local declarations, side-effect imports, and dynamic exports are skipped.
20
+ * CJS re-exports (`module.exports = ...`) and conditional re-exports are
21
+ * unsupported: they contribute nothing here, so barrel chains built on them
22
+ * read as terminal and their leaves surface with `manifest: null`.
20
23
  *
21
24
  * Returns [] on parse failure rather than throwing.
22
25
  */
23
26
  export declare function parseBarrelTopLevel(source: string): BarrelReExport[];
24
- export type BarrelUnsupportedForm = {
25
- form: "cjs-reexport";
26
- line?: number;
27
- } | {
28
- form: "conditional-reexport";
29
- line?: number;
30
- };
31
- export type BarrelParseResult = {
32
- reExports: BarrelReExport[];
33
- unsupported: BarrelUnsupportedForm[];
34
- };
35
- /**
36
- * Like {@link parseBarrelTopLevel}, but also returns a list of unsupported
37
- * top-level shapes encountered (e.g. CJS re-exports, conditional re-exports)
38
- * so callers can surface diagnostics rather than silently dropping leaves.
39
- *
40
- * Returns `{ reExports: [], unsupported: [] }` on parse failure rather than
41
- * throwing.
42
- */
43
- export declare function parseBarrelTopLevelDetailed(source: string): BarrelParseResult;
44
27
  /**
45
- * AST-taking variant of {@link parseBarrelTopLevelDetailed}. Lets callers
46
- * that already hold a parsed `BabelFile` reuse it across passes (the lazy
28
+ * AST-taking variant of {@link parseBarrelTopLevel}. Lets callers that
29
+ * already hold a parsed `BabelFile` reuse it across passes (the lazy
47
30
  * resolver caches barrel ASTs to avoid re-parsing the same file once per
48
31
  * import resolution).
49
32
  *
50
33
  * Performs the same top-level analysis on `ast.program` — never re-parses.
51
34
  */
52
- export declare function parseBarrelTopLevelDetailedFromAst(ast: BabelFile): BarrelParseResult;
35
+ export declare function parseBarrelTopLevelFromAst(ast: BabelFile): BarrelReExport[];
@@ -7,21 +7,13 @@ import * as t from "@babel/types";
7
7
  *
8
8
  * Type-only re-exports (`export type { ... } from`) are skipped.
9
9
  * Local declarations, side-effect imports, and dynamic exports are skipped.
10
+ * CJS re-exports (`module.exports = ...`) and conditional re-exports are
11
+ * unsupported: they contribute nothing here, so barrel chains built on them
12
+ * read as terminal and their leaves surface with `manifest: null`.
10
13
  *
11
14
  * Returns [] on parse failure rather than throwing.
12
15
  */
13
16
  export function parseBarrelTopLevel(source) {
14
- return parseBarrelTopLevelDetailed(source).reExports;
15
- }
16
- /**
17
- * Like {@link parseBarrelTopLevel}, but also returns a list of unsupported
18
- * top-level shapes encountered (e.g. CJS re-exports, conditional re-exports)
19
- * so callers can surface diagnostics rather than silently dropping leaves.
20
- *
21
- * Returns `{ reExports: [], unsupported: [] }` on parse failure rather than
22
- * throwing.
23
- */
24
- export function parseBarrelTopLevelDetailed(source) {
25
17
  let ast;
26
18
  try {
27
19
  ast = parse(source, {
@@ -31,21 +23,20 @@ export function parseBarrelTopLevelDetailed(source) {
31
23
  });
32
24
  }
33
25
  catch {
34
- return { reExports: [], unsupported: [] };
26
+ return [];
35
27
  }
36
- return parseBarrelTopLevelDetailedFromAst(ast);
28
+ return parseBarrelTopLevelFromAst(ast);
37
29
  }
38
30
  /**
39
- * AST-taking variant of {@link parseBarrelTopLevelDetailed}. Lets callers
40
- * that already hold a parsed `BabelFile` reuse it across passes (the lazy
31
+ * AST-taking variant of {@link parseBarrelTopLevel}. Lets callers that
32
+ * already hold a parsed `BabelFile` reuse it across passes (the lazy
41
33
  * resolver caches barrel ASTs to avoid re-parsing the same file once per
42
34
  * import resolution).
43
35
  *
44
36
  * Performs the same top-level analysis on `ast.program` — never re-parses.
45
37
  */
46
- export function parseBarrelTopLevelDetailedFromAst(ast) {
38
+ export function parseBarrelTopLevelFromAst(ast) {
47
39
  const reExports = [];
48
- const unsupported = [];
49
40
  for (const node of ast.program.body) {
50
41
  if (t.isExportAllDeclaration(node)) {
51
42
  reExports.push({ kind: "star", from: node.source.value });
@@ -78,91 +69,8 @@ export function parseBarrelTopLevelDetailedFromAst(ast) {
78
69
  if (namesPart.length === 0)
79
70
  continue;
80
71
  reExports.push({ kind: "named", from: node.source.value, names: namesPart });
81
- continue;
82
- }
83
- // CommonJS top-level reassignment: `module.exports = require(...)` /
84
- // `module.exports = ...` covered by ExpressionStatement at top level.
85
- if (t.isExpressionStatement(node) && isCjsReexport(node.expression)) {
86
- const entry = { form: "cjs-reexport" };
87
- if (typeof node.loc?.start.line === "number")
88
- entry.line = node.loc.start.line;
89
- unsupported.push(entry);
90
- continue;
91
- }
92
- // Anything wrapping a CJS reassignment in a conditional (if / try / switch).
93
- if ((t.isIfStatement(node) || t.isTryStatement(node) || t.isSwitchStatement(node)) &&
94
- visitConditionalBody(node)) {
95
- const entry = { form: "conditional-reexport" };
96
- if (typeof node.loc?.start.line === "number")
97
- entry.line = node.loc.start.line;
98
- unsupported.push(entry);
99
72
  }
100
73
  }
101
- return { reExports, unsupported };
102
- }
103
- function isCjsReexport(expr) {
104
- if (!expr || !t.isAssignmentExpression(expr))
105
- return false;
106
- if (!t.isMemberExpression(expr.left))
107
- return false;
108
- return (t.isIdentifier(expr.left.object, { name: "module" }) &&
109
- t.isIdentifier(expr.left.property, { name: "exports" }));
110
- }
111
- /**
112
- * Walk a conditional wrapper (`if` / `try` / `switch`) looking for a
113
- * `module.exports = ...` reassignment inside any of its branches.
114
- *
115
- * The walk is type-aware: it descends only into structural children that
116
- * execute when the wrapper executes. Function and class bodies are
117
- * treated as opaque boundaries — `module.exports = ...` defined inside a
118
- * nested function declaration / arrow / class method does not run when the
119
- * branch body runs, so it would be a false positive to flag it.
120
- */
121
- function visitConditionalBody(node) {
122
- if (!node)
123
- return false;
124
- // Direct CJS reassignment.
125
- if (t.isExpressionStatement(node) && isCjsReexport(node.expression)) {
126
- return true;
127
- }
128
- // Function / class scopes don't execute now — opaque boundary.
129
- if (t.isFunctionDeclaration(node) ||
130
- t.isFunctionExpression(node) ||
131
- t.isArrowFunctionExpression(node) ||
132
- t.isObjectMethod(node) ||
133
- t.isClassMethod(node) ||
134
- t.isClassDeclaration(node) ||
135
- t.isClassExpression(node)) {
136
- return false;
137
- }
138
- if (t.isBlockStatement(node)) {
139
- for (const stmt of node.body) {
140
- if (visitConditionalBody(stmt))
141
- return true;
142
- }
143
- return false;
144
- }
145
- if (t.isIfStatement(node)) {
146
- return (visitConditionalBody(node.consequent) || visitConditionalBody(node.alternate));
147
- }
148
- if (t.isTryStatement(node)) {
149
- return (visitConditionalBody(node.block) ||
150
- visitConditionalBody(node.handler?.body) ||
151
- visitConditionalBody(node.finalizer));
152
- }
153
- if (t.isSwitchStatement(node)) {
154
- for (const switchCase of node.cases) {
155
- for (const stmt of switchCase.consequent) {
156
- if (visitConditionalBody(stmt))
157
- return true;
158
- }
159
- }
160
- return false;
161
- }
162
- if (t.isLabeledStatement(node) || t.isWithStatement(node)) {
163
- return visitConditionalBody(node.body);
164
- }
165
- // Other statement types (loops, return, throw, ...) are not unwrapped here.
166
- return false;
74
+ return reExports;
167
75
  }
168
76
  //# sourceMappingURL=barrel-parser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"barrel-parser.js","sourceRoot":"","sources":["../../src/manifest/barrel-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"barrel-parser.js","sourceRoot":"","sources":["../../src/manifest/barrel-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAWlC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc;IAChD,IAAI,GAAc,CAAC;IACnB,IAAI,CAAC;QACH,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE;YAClB,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC;YAC9B,aAAa,EAAE,IAAI;SACpB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,0BAA0B,CAAC,GAAG,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CAAC,GAAc;IACvD,MAAM,SAAS,GAAqB,EAAE,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC1D,SAAS;QACX,CAAC;QACD,IAAI,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,SAAS;YAC3B,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM;gBAAE,SAAS;YACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACpC,IACE,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;gBAC5B,QAAQ;gBACR,CAAC,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EACtC,CAAC;gBACD,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC1D,SAAS;YACX,CAAC;YACD,MAAM,SAAS,GAA+C,EAAE,CAAC;YACjE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC;oBAAE,SAAS;gBACzC,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM;oBAAE,SAAS;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC9B,MAAM,QAAQ,GAAG,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC;oBAC5C,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI;oBACpB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACxB,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACtC,CAAC;YACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACrC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -4,7 +4,7 @@ import { dirname, extname, isAbsolute, join, relative, resolve as pathResolve }
4
4
  import picomatch from "picomatch";
5
5
  import { parse as babelParse } from "@babel/parser";
6
6
  import { validateManifest, createDiagnosticCollector, } from "@component-compass/plugin-core";
7
- import { parseBarrelTopLevelDetailed, parseBarrelTopLevelDetailedFromAst, } from "./barrel-parser.js";
7
+ import { parseBarrelTopLevel, parseBarrelTopLevelFromAst, } from "./barrel-parser.js";
8
8
  /**
9
9
  * Hard ceiling on re-export hops a single resolution may walk. Real chains
10
10
  * top out around 10 hops (deep barrel piles); 32 is a pathological-input
@@ -256,18 +256,17 @@ export function createLazyResolver(opts) {
256
256
  const source = safeReadFile(currentAbs);
257
257
  if (source === null)
258
258
  break;
259
- let parsed;
259
+ let reExports;
260
260
  try {
261
261
  const ast = parsedBarrel(currentAbs, source);
262
- parsed = parseBarrelTopLevelDetailedFromAst(ast);
262
+ reExports = parseBarrelTopLevelFromAst(ast);
263
263
  }
264
264
  catch {
265
265
  // parseByExt throws on unrecoverable syntax — fall back to the
266
- // source-level shim, which swallows parse errors and returns empty
267
- // arrays so the chain terminates gracefully on garbage files.
268
- parsed = parseBarrelTopLevelDetailed(source);
266
+ // source-level parse, which swallows parse errors and returns an
267
+ // empty array so the chain terminates gracefully on garbage files.
268
+ reExports = parseBarrelTopLevel(source);
269
269
  }
270
- const { reExports } = parsed;
271
270
  // unsupported barrel forms (try/switch-wrapped, dynamic re-exports etc.)
272
271
  // are silently treated as terminal — the resolver returns identity from
273
272
  // the current file and the parser falls back to opaque emission. The
@@ -388,15 +387,14 @@ export function createLazyResolver(opts) {
388
387
  const source = safeReadFile(currentAbs);
389
388
  if (source === null)
390
389
  return null;
391
- let parsed;
390
+ let reExports;
392
391
  try {
393
392
  const ast = parsedBarrel(currentAbs, source);
394
- parsed = parseBarrelTopLevelDetailedFromAst(ast);
393
+ reExports = parseBarrelTopLevelFromAst(ast);
395
394
  }
396
395
  catch {
397
- parsed = parseBarrelTopLevelDetailed(source);
396
+ reExports = parseBarrelTopLevel(source);
398
397
  }
399
- const { reExports } = parsed;
400
398
  if (reExports.length === 0) {
401
399
  return { filePath: toRelPath(currentAbs), exportName: currentExport };
402
400
  }