@enterpriseai/cli 3.19.3 → 3.19.5

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 (138) hide show
  1. package/README.md +47 -16
  2. package/dist/commands/agent.js +3 -1
  3. package/dist/commands/agent.js.map +1 -1
  4. package/dist/commands/chat.d.ts.map +1 -1
  5. package/dist/commands/chat.js +116 -35
  6. package/dist/commands/chat.js.map +1 -1
  7. package/dist/commands/eai-managed-source-move.js +2 -2
  8. package/dist/commands/eai-managed-source-move.js.map +1 -1
  9. package/dist/commands/env.js +15 -2
  10. package/dist/commands/env.js.map +1 -1
  11. package/dist/commands/gofer.js +8 -1
  12. package/dist/commands/gofer.js.map +1 -1
  13. package/dist/commands/init.d.ts +2 -0
  14. package/dist/commands/init.d.ts.map +1 -1
  15. package/dist/commands/init.js +172 -25
  16. package/dist/commands/init.js.map +1 -1
  17. package/dist/commands/login.d.ts.map +1 -1
  18. package/dist/commands/login.js +6 -2
  19. package/dist/commands/login.js.map +1 -1
  20. package/dist/commands/provision.d.ts.map +1 -1
  21. package/dist/commands/provision.js +25 -8
  22. package/dist/commands/provision.js.map +1 -1
  23. package/dist/commands/publicapi.d.ts.map +1 -1
  24. package/dist/commands/publicapi.js +14 -2
  25. package/dist/commands/publicapi.js.map +1 -1
  26. package/dist/commands/resources.d.ts.map +1 -1
  27. package/dist/commands/resources.js +41 -20
  28. package/dist/commands/resources.js.map +1 -1
  29. package/dist/commands/support.d.ts +6 -3
  30. package/dist/commands/support.d.ts.map +1 -1
  31. package/dist/commands/support.js +117 -25
  32. package/dist/commands/support.js.map +1 -1
  33. package/dist/commands/tenant.d.ts.map +1 -1
  34. package/dist/commands/tenant.js +45 -37
  35. package/dist/commands/tenant.js.map +1 -1
  36. package/dist/commands/types.d.ts +7 -0
  37. package/dist/commands/types.d.ts.map +1 -1
  38. package/dist/commands/types.js +118 -24
  39. package/dist/commands/types.js.map +1 -1
  40. package/dist/commands/verify.d.ts.map +1 -1
  41. package/dist/commands/verify.js +89 -44
  42. package/dist/commands/verify.js.map +1 -1
  43. package/dist/commands/vertical.d.ts.map +1 -1
  44. package/dist/commands/vertical.js +163 -15
  45. package/dist/commands/vertical.js.map +1 -1
  46. package/dist/index.js +22 -8
  47. package/dist/index.js.map +1 -1
  48. package/dist/lib/agent-guide.d.ts.map +1 -1
  49. package/dist/lib/agent-guide.js +18 -15
  50. package/dist/lib/agent-guide.js.map +1 -1
  51. package/dist/lib/api.d.ts +22 -2
  52. package/dist/lib/api.d.ts.map +1 -1
  53. package/dist/lib/api.js +149 -38
  54. package/dist/lib/api.js.map +1 -1
  55. package/dist/lib/cloud-env.d.ts +1 -0
  56. package/dist/lib/cloud-env.d.ts.map +1 -1
  57. package/dist/lib/cloud-env.js +28 -15
  58. package/dist/lib/cloud-env.js.map +1 -1
  59. package/dist/lib/config.d.ts +4 -2
  60. package/dist/lib/config.d.ts.map +1 -1
  61. package/dist/lib/config.js +5 -1
  62. package/dist/lib/config.js.map +1 -1
  63. package/dist/lib/eai-managed-source-client-types.d.ts +10 -0
  64. package/dist/lib/eai-managed-source-client-types.d.ts.map +1 -1
  65. package/dist/lib/eai-managed-source-operation-client.d.ts.map +1 -1
  66. package/dist/lib/eai-managed-source-operation-client.js +13 -1
  67. package/dist/lib/eai-managed-source-operation-client.js.map +1 -1
  68. package/dist/lib/error-codes.d.ts.map +1 -1
  69. package/dist/lib/error-codes.js +3 -2
  70. package/dist/lib/error-codes.js.map +1 -1
  71. package/dist/lib/gofer-installer.d.ts.map +1 -1
  72. package/dist/lib/gofer-installer.js +3 -1
  73. package/dist/lib/gofer-installer.js.map +1 -1
  74. package/dist/lib/object-type-export-filesystem.d.ts +13 -0
  75. package/dist/lib/object-type-export-filesystem.d.ts.map +1 -0
  76. package/dist/lib/object-type-export-filesystem.js +112 -0
  77. package/dist/lib/object-type-export-filesystem.js.map +1 -0
  78. package/dist/lib/object-type-export.d.ts +13 -0
  79. package/dist/lib/object-type-export.d.ts.map +1 -0
  80. package/dist/lib/object-type-export.js +173 -0
  81. package/dist/lib/object-type-export.js.map +1 -0
  82. package/dist/lib/output.d.ts.map +1 -1
  83. package/dist/lib/output.js +21 -1
  84. package/dist/lib/output.js.map +1 -1
  85. package/dist/lib/platform-diagnostics.d.ts +21 -0
  86. package/dist/lib/platform-diagnostics.d.ts.map +1 -0
  87. package/dist/lib/platform-diagnostics.js +50 -0
  88. package/dist/lib/platform-diagnostics.js.map +1 -0
  89. package/dist/lib/profile.d.ts +7 -2
  90. package/dist/lib/profile.d.ts.map +1 -1
  91. package/dist/lib/profile.js +139 -4
  92. package/dist/lib/profile.js.map +1 -1
  93. package/dist/lib/schema-builder.d.ts +2 -0
  94. package/dist/lib/schema-builder.d.ts.map +1 -1
  95. package/dist/lib/schema-builder.js +5 -0
  96. package/dist/lib/schema-builder.js.map +1 -1
  97. package/dist/lib/support-context.d.ts +4 -3
  98. package/dist/lib/support-context.d.ts.map +1 -1
  99. package/dist/lib/support-context.js +11 -13
  100. package/dist/lib/support-context.js.map +1 -1
  101. package/dist/lib/support-harness.d.ts +86 -0
  102. package/dist/lib/support-harness.d.ts.map +1 -0
  103. package/dist/lib/support-harness.js +471 -0
  104. package/dist/lib/support-harness.js.map +1 -0
  105. package/dist/lib/support-redaction.d.ts.map +1 -1
  106. package/dist/lib/support-redaction.js +221 -3
  107. package/dist/lib/support-redaction.js.map +1 -1
  108. package/dist/lib/support-report.d.ts +27 -5
  109. package/dist/lib/support-report.d.ts.map +1 -1
  110. package/dist/lib/support-report.js +75 -31
  111. package/dist/lib/support-report.js.map +1 -1
  112. package/package.json +8 -3
  113. package/resources/deploy/eai-app-template/producer-pin.json +4 -4
  114. package/resources/gofer/agents-skills/eai/SKILL.md +22 -21
  115. package/resources/gofer/claude-commands/eai.md +22 -21
  116. package/resources/gofer/claude-skills/eai/SKILL.md +22 -21
  117. package/resources/gofer/commands/0_gofer_start.md +26 -24
  118. package/resources/gofer/commands/5_gofer_implement.md +8 -4
  119. package/resources/gofer/commands/gofer_eai_first_run.md +27 -22
  120. package/resources/gofer/copilot-prompts/eai.prompt.md +22 -21
  121. package/resources/gofer/gemini/commands/gofer/eai.md +22 -21
  122. package/resources/gofer/gemini/commands/gofer/manifest.json +1 -1
  123. package/resources/gofer/github-skills/eai/SKILL.md +22 -21
  124. package/resources/gofer/grok-skills/eai/SKILL.md +22 -21
  125. package/resources/gofer/instruction-templates/base/agents-base.md +18 -17
  126. package/resources/gofer/instruction-templates/base/claude-base.md +0 -18
  127. package/resources/gofer/instruction-templates/base/copilot-base.md +18 -17
  128. package/resources/gofer/instruction-templates/gofer/gofer-claude.md +1 -7
  129. package/resources/gofer/node-scripts/generate-commands.mjs +37 -24
  130. package/resources/gofer/node-scripts/package-agent-plugin.mjs +55 -6
  131. package/resources/gofer/node-scripts/workspace-bootstrap-lib.mjs +8 -4
  132. package/resources/gofer/references/platform/README.md +8 -3
  133. package/resources/gofer/references/platform/eai-support.md +16 -16
  134. package/resources/gofer/specify-commands/0_gofer_start.md +26 -24
  135. package/resources/gofer/specify-commands/5_gofer_implement.md +8 -4
  136. package/resources/gofer/specify-commands/gofer_eai_first_run.md +27 -22
  137. package/resources/gofer/system-skills/eai/SKILL.md +22 -21
  138. package/resources/linked-sources.json +2 -2
@@ -4,7 +4,6 @@
4
4
  import { Command } from "commander";
5
5
  import ora from "ora";
6
6
  import chalk from "chalk";
7
- import inquirer from "inquirer";
8
7
  import { findProjectRoot } from "../lib/config.js";
9
8
  import { PlatformAPIClient, parseApiError, } from "../lib/api.js";
10
9
  import { loadTokens } from "../lib/auth.js";
@@ -14,11 +13,6 @@ import * as out from "../lib/output.js";
14
13
  import { ErrorCode, exitWithError } from "../lib/error-codes.js";
15
14
  export { filterTenantAdminEntries, tenantEntryHasTenantAdminRole, } from "../lib/tenant-context.js";
16
15
  export { buildTenantHierarchy, buildTenantHierarchyTreeLines, loadTenantHierarchy, tenantMatchesParent, } from "../lib/tenant-hierarchy.js";
17
- const HOME_REGION_CHOICES = [
18
- { name: "Australia / New Zealand (au)", value: "au" },
19
- { name: "Canada / Americas (ca)", value: "ca" },
20
- { name: "Europe / UK (eu)", value: "eu" },
21
- ];
22
16
  export function extractCreatedTenantRecord(payload) {
23
17
  const nestedDoc = payload.doc;
24
18
  if (nestedDoc && typeof nestedDoc === "object" && !Array.isArray(nestedDoc)) {
@@ -35,24 +29,6 @@ function normalizeTenantCreateHomeRegion(value) {
35
29
  }
36
30
  return region;
37
31
  }
38
- async function resolveChildTenantHomeRegion(options) {
39
- const requested = normalizeTenantCreateHomeRegion(options.requested);
40
- if (requested)
41
- return requested;
42
- const parentRegion = normalizeHomeRegion(options.parentHomeRegion);
43
- if (!options.interactive)
44
- return parentRegion || undefined;
45
- const answer = await inquirer.prompt([
46
- {
47
- type: "select",
48
- name: "homeRegion",
49
- message: "Child workspace home region:",
50
- default: parentRegion || undefined,
51
- choices: HOME_REGION_CHOICES,
52
- },
53
- ]);
54
- return normalizeTenantCreateHomeRegion(answer.homeRegion);
55
- }
56
32
  export function buildTenantListZeroState(tokens) {
57
33
  const zeroState = {
58
34
  headline: "No active workspace admin memberships found for the current login.",
@@ -414,7 +390,7 @@ tenantCommand
414
390
  .option("--usecase <usecase>", "Workspace usecase: council|retail|healthcare|finance|manufacturing|generic", "generic")
415
391
  .option("--industry <industry>", "Signup/onboarding industry segment")
416
392
  .option("--starter-template <key>", "Starter application template key", "eai-app-template")
417
- .option("--home-region <region>", "Workspace home region: au|ca|eu")
393
+ .option("--home-region <region>", "Root workspace home region: au|ca|eu (with --allow-root; a child inherits its parent's)")
418
394
  .option("--allow-root", "Allow root workspace creation for administrative backfills", false)
419
395
  .option("--format <format>", "Output format (text|json)", "text")
420
396
  .option("--json", "Output raw JSON (deprecated, use --format json)", false)
@@ -425,6 +401,10 @@ tenantCommand
425
401
  out.error("Root workspace creation is guarded. Complete onboarding for the main company workspace, then use `eai init --parent-tenant <id>` or pass --parent for child workspaces.");
426
402
  process.exit(1);
427
403
  }
404
+ if (options.parent && options.homeRegion !== undefined) {
405
+ out.error("--home-region is only for root workspaces (--allow-root). A child workspace inherits its parent's home region.");
406
+ process.exit(1);
407
+ }
428
408
  let rootHomeRegion;
429
409
  if (!options.parent) {
430
410
  try {
@@ -450,14 +430,6 @@ tenantCommand
450
430
  tenantId: options.parent || undefined,
451
431
  });
452
432
  const client = new PlatformAPIClient(publicApiUrl, context.activeTenant.id);
453
- const tenantHomeRegion = options.parent
454
- ? await resolveChildTenantHomeRegion({
455
- requested: options.homeRegion,
456
- parentHomeRegion: context.activeTenant.homeRegion,
457
- interactive: options.format !== "json" &&
458
- Boolean(process.stdin.isTTY && process.stdout.isTTY),
459
- })
460
- : rootHomeRegion;
461
433
  spinner =
462
434
  options.format === "json"
463
435
  ? null
@@ -478,7 +450,7 @@ tenantCommand
478
450
  usecase: options.usecase,
479
451
  industry: options.industry,
480
452
  starterTemplate: options.starterTemplate,
481
- homeRegion: tenantHomeRegion,
453
+ homeRegion: rootHomeRegion,
482
454
  });
483
455
  if (!res.ok) {
484
456
  const error = await parseApiError(res, { childTenantCreate: Boolean(options.parent) });
@@ -721,16 +693,31 @@ tenantCommand
721
693
  .description("Delete a workspace")
722
694
  .option("--force", "Skip confirmation", false)
723
695
  .option("--force-hard-purge", "Permanently purge the workspace and all child workspaces", false)
696
+ .option("--parent <id>", "Authorize a leaf child hard purge using its immediate parent workspace")
724
697
  .option("--format <format>", "Output format (text|json)", "text")
725
698
  .option("--json", "Output raw JSON (deprecated, use --format json)", false)
726
699
  .action(async (id, options) => {
727
700
  if (options.json)
728
701
  options.format = "json";
702
+ if (options.parent !== undefined) {
703
+ const details = !options.parent || options.parent.trim() !== options.parent
704
+ ? '--parent must be a nonempty workspace ID without surrounding whitespace'
705
+ : options.parent === id
706
+ ? '--parent must identify a different workspace from the child being deleted'
707
+ : !options.forceHardPurge
708
+ ? '--parent requires --force-hard-purge'
709
+ : undefined;
710
+ if (details) {
711
+ exitWithError(ErrorCode.E305, { details }, options.format);
712
+ }
713
+ }
729
714
  if (!options.force) {
730
715
  const { default: inquirer } = await import("inquirer");
731
- const promptMessage = options.forceHardPurge
732
- ? `Permanently hard purge workspace ${id} and all child workspaces? This cannot be undone.`
733
- : `Delete workspace ${id}?`;
716
+ const promptMessage = options.parent
717
+ ? `Permanently hard purge leaf workspace ${id} under parent ${options.parent}? This cannot be undone.`
718
+ : options.forceHardPurge
719
+ ? `Permanently hard purge workspace ${id} and all child workspaces? This cannot be undone.`
720
+ : `Delete workspace ${id}?`;
734
721
  const { confirm } = await inquirer.prompt([
735
722
  {
736
723
  type: "confirm",
@@ -755,6 +742,7 @@ tenantCommand
755
742
  projectRoot: root || undefined,
756
743
  publicApiUrl,
757
744
  interactive: true,
745
+ ...(options.parent === undefined ? {} : { tenantId: options.parent }),
758
746
  });
759
747
  const client = new PlatformAPIClient(publicApiUrl, context.activeTenant.id);
760
748
  const spinner = options.format === "json"
@@ -763,6 +751,7 @@ tenantCommand
763
751
  try {
764
752
  const res = await client.deleteTenant(id, {
765
753
  forceHardPurge: Boolean(options.forceHardPurge),
754
+ ...(options.parent === undefined ? {} : { parentTenantId: options.parent }),
766
755
  });
767
756
  if (!res.ok) {
768
757
  const body = await res.text();
@@ -783,6 +772,25 @@ tenantCommand
783
772
  const backendStatus = responseBody && typeof responseBody === 'object' && 'status' in responseBody
784
773
  ? String(responseBody.status || '')
785
774
  : '';
775
+ if (options.parent !== undefined && (backendStatus !== 'hard_purged'
776
+ || responseBody?.id !== id
777
+ || responseBody?.parentTenantId !== options.parent)) {
778
+ const message = 'The backend did not confirm a hard purge for the requested child and parent workspace. Verify their current state before retrying.';
779
+ if (options.format === 'json') {
780
+ out.json({
781
+ id,
782
+ deleted: false,
783
+ hardPurged: false,
784
+ requestedHardPurge: true,
785
+ error: message,
786
+ response: responseBody,
787
+ });
788
+ }
789
+ else if (spinner) {
790
+ spinner.fail(message);
791
+ }
792
+ process.exit(1);
793
+ }
786
794
  if (options.forceHardPurge && backendStatus !== 'hard_purged') {
787
795
  const message = 'Tenant delete completed but the backend did not confirm a hard purge. Stale tenant-owned data may remain.';
788
796
  if (options.format === 'json') {
@@ -1 +1 @@
1
- {"version":3,"file":"tenant.js","sourceRoot":"","sources":["../../src/commands/tenant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tenant.js","sourceRoot":"","sources":["../../src/commands/tenant.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EACL,iBAAiB,EACjB,aAAa,GAId,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,mBAAmB,EACnB,4BAA4B,EAC5B,0BAA0B,EAC1B,mBAAmB,GAEpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,mBAAmB,EACnB,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,GAAG,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,EACL,wBAAwB,EACxB,6BAA6B,GAG9B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,oBAAoB,EACpB,6BAA6B,EAC7B,mBAAmB,EACnB,mBAAmB,GAEpB,MAAM,4BAA4B,CAAC;AAyBpC,MAAM,UAAU,0BAA0B,CACxC,OAAgC;IAEhC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAC9B,IAAI,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5E,OAAO,SAAoC,CAAC;IAC9C,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,+BAA+B,CACtC,KAAc;IAEd,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC5E,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAGxC;IACC,MAAM,SAAS,GAAwB;QACrC,QAAQ,EAAE,oEAAoE;QAC9E,IAAI,EAAE,0DAA0D;KACjE,CAAC;IAEF,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,iCAAiC,CAAC;QAC1E,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,SAAS,CAAC,aAAa,GAAG,4BAA4B,UAAU,GAAG,QAAQ,EAAE,CAAC;IAChF,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,OAA4B;IAE5B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;YAChD,QAAQ,CAAC,IAAI,CACX,gEAAgE,CACjE,CAAC;QACJ,CAAC;aAAM,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,gBAAgB,EAAE,CAAC;YACzD,QAAQ,CAAC,IAAI,CACX,qFAAqF,CACtF,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI;YACxC,CAAC,CAAC,KAAK,OAAO,CAAC,cAAc,CAAC,IAAI,GAAG;YACrC,CAAC,CAAC,EAAE,CAAC;QACP,QAAQ,CAAC,IAAI,CACX,oCAAoC,MAAM,yEAAyE,CACpH,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAC7B,QAAQ,CAAC,IAAI,CACX,OAAO,CAAC,SAAS,CAAC,YAAY;YAC5B,CAAC,CAAC,4EAA4E;YAC9E,CAAC,CAAC,0CAA0C,CAC/C,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,IAAI,CACX,+FAA+F,CAChG,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAEqB;IAErB,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,CAAC,MAAM;QAAE,OAAO;IAEpB,IAAI,MAAM,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QAC5B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,MAAkC;IAElC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;QACrC,QAAQ,CAAC,IAAI,CACX,8DAA8D,CAC/D,CAAC;IACJ,CAAC;SAAM,IAAI,MAAM,CAAC,MAAM,KAAK,gBAAgB,EAAE,CAAC;QAC9C,QAAQ,CAAC,IAAI,CACX,mFAAmF,CACpF,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,IAAI,CACX,MAAM,CAAC,iBAAiB;QACtB,CAAC,CAAC,qDAAqD;QACvD,CAAC,CAAC,kFAAkF,CACvF,CAAC;IACF,QAAQ,CAAC,IAAI,CACX,MAAM,CAAC,aAAa;QAClB,CAAC,CAAC,mEAAmE;QACrE,CAAC,CAAC,8EAA8E,CACnF,CAAC;IACF,QAAQ,CAAC,IAAI,CACX,MAAM,CAAC,MAAM;QACX,CAAC,CAAC,mEAAmE;QACrE,CAAC,CAAC,sGAAsG,CAC3G,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,WAAW,CAC/E,gFAAgF,CACjF,CAAC;AAEF,MAAM,oBAAoB,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAC7D,yCAAyC,CAC1C,CAAC;AAEF,oBAAoB;KACjB,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CACV,sFAAsF,CACvF;KACA,MAAM,CAAC,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,CAAC;KAChE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,MAAM,0BAA0B,CAAC;QAC/C,WAAW,EAAE,IAAI,IAAI,SAAS;QAC9B,YAAY;QACZ,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;IACjD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,GAAG,CAAC,KAAK,CACP,mCAAmC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAC5E,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAerC,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC9B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClB,OAAO;IACT,CAAC;IAED,GAAG,CAAC,OAAO,CACT,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,eAAe,OAAO,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAChH,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;YAC5B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;YACtB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5B,GAAG,CAAC,IAAI,CACN,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE,CACtG,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAChD,KAAK,MAAM,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YAC7C,MAAM,MAAM,GACV,UAAU,CAAC,UAAU;gBACrB,UAAU,CAAC,cAAc;gBACzB,UAAU,CAAC,aAAa;gBACxB,UAAU,CAAC,QAAQ;gBACnB,YAAY,CAAC;YACf,GAAG,CAAC,IAAI,CACN,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CACnE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,oBAAoB;KACjB,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,iEAAiE,CAAC;KAC9E,MAAM,CAAC,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,CAAC;KAChE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,MAAM,0BAA0B,CAAC;QAC/C,WAAW,EAAE,IAAI,IAAI,SAAS;QAC9B,YAAY;QACZ,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;IACjD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,GAAG,CAAC,KAAK,CACP,gCAAgC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACzE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAQrC,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC9B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClB,OAAO;IACT,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CACvC,OAAO,CAAC,OAAO;QACb,CAAC,CAAC,+BAA+B;QACjC,CAAC,CAAC,oCAAoC,CACzC,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO;YAC1B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;YACxB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM;YACjC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,IAAI,CACN,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,KAAK,CAAC,OAAO,KAAK,MAAM,GAAG,MAAM,EAAE,CACxE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;AAE/C,gFAAgF;AAEhF,aAAa;KACV,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CACV,gFAAgF,CACjF;KACA,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC;KAC9C,MAAM,CACL,OAAO,EACP,iFAAiF,EACjF,KAAK,CACN;KACA,MAAM,CAAC,SAAS,EAAE,6CAA6C,EAAE,KAAK,CAAC;KACvE,MAAM,CAAC,YAAY,EAAE,4CAA4C,EAAE,KAAK,CAAC;KACzE,MAAM,CAAC,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,CAAC;KAChE,MAAM,CAAC,QAAQ,EAAE,iDAAiD,EAAE,KAAK,CAAC;KAC1E,WAAW,CACV,OAAO,EACP;;;;;;;;GAQD,CACA;KACA,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,OAAO,CAAC,IAAI;QAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAC1C,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,OAAe,EAAE,IAAc,EAAQ,EAAE;QACtD,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,GAAG,CAAC,mBAAmB,CACnC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAChE,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,WAAW,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;QACjB,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IACD,KAAK,CAAC,4BAA4B,EAAE;QAClC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW;QAC3C,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW;QAC3C,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;KACpD,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IAClE,KAAK,CAAC,cAAc,EAAE,IAAI,IAAI,QAAQ,CAAC,CAAC;IACxC,KAAK,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC;IAE5C,MAAM,OAAO,GACX,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC;IAE3E,IAAI,CAAC;QACH,MAAM,mBAAmB,GACvB,MAAM,2BAA2B,CAAC,YAAY,CAAC,CAAC;QAClD,KAAK,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAC;QAExC,IAAI,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpC,KAAK,CAAC,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG;YACzB,CAAC,CAAC,mBAAmB,CAAC,WAAW,CAAC,MAAM,CACpC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,KAAK,KAAK,CAC9C;YACH,CAAC,CAAC,mBAAmB,CAAC,WAAW,CAAC;QACpC,KAAK,CACH,OAAO,CAAC,GAAG;YACT,CAAC,CAAC,4CAA4C;YAC9C,CAAC,CAAC,gDAAgD,EACpD,OAAO,CAAC,MAAM,CACf,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC;YAC1C,YAAY,EAAE,mBAAmB,CAAC,YAAY;YAC9C,WAAW,EAAE,OAAO;YACpB,QAAQ,EAAE,OAAO,CAAC,MAAM;YACxB,KAAK;SACN,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,sBAAsB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACvE,KAAK,CAAC,0CAA0C,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAElE,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC;gBACP,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBAChC,EAAE,EAAE,MAAM,CAAC,EAAE;oBACb,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;oBACnC,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;oBACzC,MAAM,EAAE,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,EAAE;iBAC5C,CAAC,CAAC;gBACH,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC;gBACnD,KAAK,EAAE,OAAO,CAAC,MAAM;gBACrB,eAAe,EAAE,UAAU,CAAC,MAAM;aACnC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GACd,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM;YAClC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,8BAA8B,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAClF,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,qBAAqB,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,MAAM,yCAAyC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;QAChL,OAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE7B,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YACzC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;YACnD,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC7B,IAAI,SAAS,CAAC,aAAa,EAAE,CAAC;gBAC5B,GAAG,CAAC,IAAI,CACN,4BAA4B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,iCAAiC,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAC7J,CAAC;YACJ,CAAC;YACD,GAAG,CAAC,IAAI,CACN,OAAO,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,kDAAkD,CAClF,CAAC;YACF,OAAO;QACT,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,6BAA6B,CAAC,SAAS,CAAC,KAAK,EAAE;YAChE,cAAc,EAAE,MAAM,CAAC,cAAc;SACtC,CAAC,EAAE,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,OAAO;YACT,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,+EAA+E;AAE/E,aAAa;KACV,OAAO,CAAC,oBAAoB,CAAC;KAC7B,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;IAC1B,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IAElE,IAAI,CAAC;QACH,IAAI,QAAQ,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,OAAO,GAAG,MAAM,2BAA2B,CAAC,YAAY,CAAC,CAAC;YAChE,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC;gBAC1C,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,WAAW,EAAE,OAAO,CAAC,WAAW;aACjC,CAAC,CAAC;YACH,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACzC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC;YAED,MAAM,UAAU,GAAG,sBAAsB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,CAC/D,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAChC,CAAC;YACF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CACb,qHAAqH,CACtH,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAClD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5B,MAAM,IAAI,KAAK,CACb,oGAAoG,CACrG,CAAC;gBACJ,CAAC;gBACD,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,MAAM,4BAA4B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,0BAA0B,CAAC;YAC/C,WAAW,EAAE,IAAI,IAAI,SAAS;YAC9B,YAAY;YACZ,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,KAAK;YAClB,QAAQ;SACT,CAAC,CAAC;QAEH,GAAG,CAAC,OAAO,CACT,2BAA2B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,CAC3G,CAAC;QACF,sBAAsB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,gFAAgF;AAEhF,aAAa;KACV,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,CAAC;KAChE,MAAM,CAAC,QAAQ,EAAE,iDAAiD,EAAE,KAAK,CAAC;KAC1E,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE;IAC5B,IAAI,OAAO,CAAC,IAAI;QAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAE1C,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IAClE,MAAM,OAAO,GACX,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC;IAE1E,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,2BAA2B,CAAC,YAAY,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,CACzC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,IAAI,KAAK,EAAE,CAChD,CAAC;QAEF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,OAAO;gBAAE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,OAAQ,CAAC,OAAO,CAAC,cAAc,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,OAAO;YACT,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,+EAA+E;AAE/E,aAAa;KACV,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,oBAAoB,CAAC;KACjC,cAAc,CAAC,eAAe,EAAE,gBAAgB,CAAC;KACjD,cAAc,CAAC,eAAe,EAAE,6BAA6B,CAAC;KAC9D,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC;KAC9C,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC;KACnD,MAAM,CACL,qBAAqB,EACrB,4EAA4E,EAC5E,SAAS,CACV;KACA,MAAM,CAAC,uBAAuB,EAAE,oCAAoC,CAAC;KACrE,MAAM,CACL,0BAA0B,EAC1B,kCAAkC,EAClC,kBAAkB,CACnB;KACA,MAAM,CACL,wBAAwB,EACxB,yFAAyF,CAC1F;KACA,MAAM,CACL,cAAc,EACd,4DAA4D,EAC5D,KAAK,CACN;KACA,MAAM,CAAC,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,CAAC;KAChE,MAAM,CAAC,QAAQ,EAAE,iDAAiD,EAAE,KAAK,CAAC;KAC1E,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,OAAO,CAAC,IAAI;QAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAC1C,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAC1C,GAAG,CAAC,KAAK,CACP,yKAAyK,CAC1K,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACvD,GAAG,CAAC,KAAK,CACP,gHAAgH,CACjH,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,cAA4C,CAAC;IACjD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,cAAc,GAAG,+BAA+B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,CACP,8GAA8G,CAC/G,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IAClE,IAAI,OAAO,GAAkC,IAAI,CAAC;IAElD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,0BAA0B,CAAC;YAC/C,WAAW,EAAE,IAAI,IAAI,SAAS;YAC9B,YAAY;YACZ,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,OAAO,CAAC,MAAM,IAAI,SAAS;SACtC,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAClC,YAAY,EACZ,OAAO,CAAC,YAAY,CAAC,EAAE,CACxB,CAAC;QACF,OAAO;YACL,OAAO,CAAC,MAAM,KAAK,MAAM;gBACvB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,GAAG,CAAC,uBAAuB,OAAO,CAAC,IAAI,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;QAE7D,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM;YAC5B,EAAE,KAAK,CAAC,GAAG,CAAC;aACX,GAAG,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aACtC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnB,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,GAAG,CAAC,KAAK,CACP,oFAAoF,CACrF,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;YACpC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YACpB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,UAAU,EAAE,cAAc;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,EAAE,iBAAiB,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACvF,mEAAmE;YACnE,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACvD,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,KAAK,MAAM,GAAG,KAAK,CAAC,OAAO,GAAG,WAAW,EAAE,CAAC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,WAAW,EAAE,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA4B,CAAC;QAC7D,MAAM,aAAa,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,IAAI,SAAiD,CAAC;QACtD,IAAI,cAA0C,CAAC;QAC/C,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,aAAa,GAAG,KAAK,EACzB,gBAAyB,EACmB,EAAE;YAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO;oBACL,MAAM,EAAE;wBACN,QAAQ;wBACR,OAAO,EAAE,IAAI;wBACb,YAAY,EAAE,gBAAgB;wBAC9B,mBAAmB,EAAE,KAAK;wBAC1B,cAAc,EAAE,KAAK;wBACrB,MAAM,EAAE,KAAK;wBACb,YAAY,EAAE,KAAK;qBACpB;iBACF,CAAC;YACJ,CAAC;YAED,IAAI,CAAC;gBACH,OAAO,MAAM,4BAA4B,CAAC,QAAQ,EAAE;oBAClD,YAAY;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,gBAAgB;oBAC9B,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;iBACpC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GACX,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzD,cAAc,KAAK;oBACjB,MAAM,EAAE,CAAC;oBACT,IAAI,EAAE,2BAA2B;oBACjC,OAAO;iBACR,CAAC;gBACF,OAAO;oBACL,MAAM,EAAE;wBACN,QAAQ;wBACR,OAAO,EAAE,IAAI;wBACb,YAAY,EAAE,gBAAgB;wBAC9B,mBAAmB,EAAE,KAAK;wBAC1B,cAAc,EAAE,KAAK;wBACrB,MAAM,EAAE,KAAK;wBACb,YAAY,EAAE,KAAK;qBACpB;iBACF,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,SAAS,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAC;QAElD,IAAI,OAAO,CAAC,MAAM,IAAI,QAAQ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3D,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;YAClC,IAAI,MAAM,EAAE,GAAG,EAAE,CAAC;gBAChB,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAC9D,OAAO,CAAC,MAAM,EACd,QAAQ,EACR;oBACE,OAAO,EAAE,MAAM,CAAC,GAAG;oBACnB,SAAS,EAAE,MAAM,CAAC,GAAG;iBACtB,CACF,CAAC;gBAEF,IAAI,iBAAiB,CAAC,EAAE,EAAE,CAAC;oBACzB,SAAS;wBACP,CAAC,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAA+B,CAAC;oBACjE,YAAY;wBACV,SAAS,CAAC,MAAM,KAAK,cAAc;4BACnC,SAAS,CAAC,MAAM,KAAK,gBAAgB,CAAC;gBAC1C,CAAC;qBAAM,CAAC;oBACN,cAAc,GAAG,MAAM,aAAa,CAAC,iBAAiB,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,cAAc,GAAG;oBACf,MAAM,EAAE,CAAC;oBACT,IAAI,EAAE,aAAa;oBACnB,OAAO,EACL,kFAAkF;iBACrF,CAAC;YACJ,CAAC;YAED,SAAS,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,OAAO,GAAwB;YACnC,MAAM;YACN,SAAS;YACT,cAAc;YACd,SAAS,EAAE,SAAS,CAAC,MAAM;SAC5B,CAAC;QAEF,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC;gBACP,MAAM;gBACN,SAAS,EAAE,SAAS,IAAI,IAAI;gBAC5B,cAAc,EAAE,cAAc,IAAI,IAAI;gBACtC,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAQ,CAAC,OAAO,CACd,qBAAqB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,GAAG,CACnI,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,+BAA+B,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC/D,IACE,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC;oBAC/C,OAAO,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAC7C,CAAC;oBACD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,CAAC;qBAAM,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBACzC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,+EAA+E;AAE/E,aAAa;KACV,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CACV,qEAAqE,CACtE;KACA,cAAc,CAAC,eAAe,EAAE,4BAA4B,CAAC;KAC7D,cAAc,CAAC,cAAc,EAAE,8BAA8B,CAAC;KAC9D,MAAM,CACL,kBAAkB,EAClB,uDAAuD,CACxD;KACA,MAAM,CACL,sBAAsB,EACtB,wEAAwE,CACzE;KACA,MAAM,CAAC,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,CAAC;KAChE,MAAM,CAAC,QAAQ,EAAE,iDAAiD,EAAE,KAAK,CAAC;KAC1E,WAAW,CACV,OAAO,EACP;;;;CAIH,CACE;KACA,MAAM,CAAC,KAAK,EAAE,OAA2C,EAAE,EAAE;IAC5D,IAAI,OAAO,CAAC,IAAI;QAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAC1C,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,EAAE,GAAG,CAAC;IAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,MAAM,EAAE,GAAG,CAAC;IAEnD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,OAAO,GACX,uGAAuG,CAAC;QAC1G,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC;gBACP,cAAc,EAAE,OAAO,CAAC,MAAM;gBAC9B,aAAa,EAAE,OAAO,CAAC,KAAK;gBAC5B,YAAY,EAAE,KAAK;gBACnB,KAAK,EAAE;oBACL,IAAI,EAAE,aAAa;oBACnB,OAAO;iBACR;aACF,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GACX,OAAO,CAAC,MAAM,KAAK,MAAM;QACvB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,GAAG,CACD,yCAAyC,SAAS,IAAI,OAAO,uBAAuB,OAAO,CAAC,KAAK,KAAK,CACvG,CAAC,KAAK,EAAE,CAAC;IAEhB,IAAI,CAAC;QACH,MAAM,0BAA0B,CAAC;YAC/B,WAAW,EAAE,IAAI,IAAI,SAAS;YAC9B,YAAY;YACZ,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,OAAO,CAAC,MAAM;SACzB,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,yBAAyB,CACrD,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,KAAK,EACb;YACE,OAAO;YACP,SAAS;SACV,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC;oBACP,cAAc,EAAE,OAAO,CAAC,MAAM;oBAC9B,aAAa,EAAE,OAAO,CAAC,KAAK;oBAC5B,OAAO;oBACP,SAAS;oBACT,YAAY,EAAE,KAAK;oBACnB,KAAK;iBACN,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,KAAK,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA+B,CAAC;QACrE,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,OAAQ,CAAC,OAAO,CACd,yCAAyC,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,EAAE,CAC5E,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,uCAAuC,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtE,IAAI,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,CAAC;oBACpD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,CAAC;qBAAM,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBACzC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,OAAO;YACT,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,aAAa;KACV,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,SAAS,EAAE,mBAAmB,EAAE,KAAK,CAAC;KAC7C,MAAM,CAAC,oBAAoB,EAAE,0DAA0D,EAAE,KAAK,CAAC;KAC/F,MAAM,CAAC,eAAe,EAAE,wEAAwE,CAAC;KACjG,MAAM,CAAC,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,CAAC;KAChE,MAAM,CAAC,QAAQ,EAAE,iDAAiD,EAAE,KAAK,CAAC;KAC1E,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE;IAC5B,IAAI,OAAO,CAAC,IAAI;QAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,MAAM;YACzE,CAAC,CAAC,yEAAyE;YAC3E,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE;gBACrB,CAAC,CAAC,2EAA2E;gBAC7E,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc;oBACvB,CAAC,CAAC,sCAAsC;oBACxC,CAAC,CAAC,SAAS,CAAC;QAClB,IAAI,OAAO,EAAE,CAAC;YACZ,aAAa,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QACvD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM;YAClC,CAAC,CAAC,yCAAyC,EAAE,iBAAiB,OAAO,CAAC,MAAM,0BAA0B;YACtG,CAAC,CAAC,OAAO,CAAC,cAAc;gBACtB,CAAC,CAAC,oCAAoC,EAAE,mDAAmD;gBAC3F,CAAC,CAAC,oBAAoB,EAAE,GAAG,CAAC;QAChC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACxC;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,aAAa;gBACtB,OAAO,EAAE,KAAK;aACf;SACF,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACzB,CAAC;YACD,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,MAAM,0BAA0B,CAAC;QAC/C,WAAW,EAAE,IAAI,IAAI,SAAS;QAC9B,YAAY;QACZ,WAAW,EAAE,IAAI;QACjB,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;KACtE,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC5E,MAAM,OAAO,GACX,OAAO,CAAC,MAAM,KAAK,MAAM;QACvB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,eAAe,EAAE,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;IAElG,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE;YACxC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;YAC/C,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;SAC5E,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC;oBACP,EAAE;oBACF,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,KAAK,EAAE,IAAI,IAAI,GAAG,CAAC,UAAU;iBAC9B,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;YACzC,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,aAAa,GACjB,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,QAAQ,IAAI,YAAY;YAC1E,CAAC,CAAC,MAAM,CAAE,YAAqC,CAAC,MAAM,IAAI,EAAE,CAAC;YAC7D,CAAC,CAAC,EAAE,CAAC;QACT,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,aAAa,KAAK,aAAa;eAC/D,YAAY,EAAE,EAAE,KAAK,EAAE;eACvB,YAAY,EAAE,cAAc,KAAK,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACtD,MAAM,OAAO,GACX,oIAAoI,CAAC;YACvI,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC;oBACP,EAAE;oBACF,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;oBACjB,kBAAkB,EAAE,IAAI;oBACxB,KAAK,EAAE,OAAO;oBACd,QAAQ,EAAE,YAAY;iBACvB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,OAAO,CAAC,cAAc,IAAI,aAAa,KAAK,aAAa,EAAE,CAAC;YAC9D,MAAM,OAAO,GACX,2GAA2G,CAAC;YAC9G,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC;oBACP,EAAE;oBACF,OAAO,EAAE,IAAI;oBACb,UAAU,EAAE,KAAK;oBACjB,kBAAkB,EAAE,IAAI;oBACxB,KAAK,EAAE,OAAO;oBACd,QAAQ,EAAE,YAAY;iBACvB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC;gBACP,EAAE;gBACF,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,aAAa,KAAK,aAAa;gBAC3C,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAQ,CAAC,OAAO,CACd,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,WAAW,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CACjF,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,OAAO;YACT,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
@@ -115,6 +115,11 @@ export declare function resolveDefaultTenantKey(objectTypes: Record<string, Obje
115
115
  export declare function findMatchingRemoteTypes(remoteDocs: RemoteObjectTypeDocument[], requestedType: string | Pick<ObjectTypeDefinition, "name" | "slug">): RemoteObjectTypeDocument[];
116
116
  export declare function diffObjectTypesForTenant(tenantKey: string, tenantId: string | undefined, resolutionSource: TenantResolution["source"] | undefined, localTypes: ObjectTypeDefinition[], remoteDocs: RemoteObjectTypeDocument[]): TypeDiffResult;
117
117
  export declare function resolveTypesPullOutputPath(root: string, output: string): Promise<string>;
118
+ /** Pull authoritative schema DTOs without rewriting files on a failed response. */
119
+ export declare function pullObjectTypesToFile(client: Pick<PlatformAPIClient, "getPublishedObjectTypes">, tenantId: string, root: string, output: string): Promise<{
120
+ count: number;
121
+ outputPath: string;
122
+ }>;
118
123
  export declare function describeFailedPlatformResponse(response: Response): Promise<string>;
119
124
  export declare function appObjectTypePublishFallbackReason(response: Response, phase: "save" | "publish"): Promise<string | null>;
120
125
  /**
@@ -157,4 +162,6 @@ export declare function waitForResourceApiSchemaVisibility(client: PlatformAPICl
157
162
  delayMs?: number;
158
163
  }): Promise<Record<string, unknown> | undefined>;
159
164
  export declare const typesCommand: Command;
165
+ /** Emit a review/merge module preserving complete read DTOs via JSON and the producer-relative type import. */
166
+ export declare function generatePulledTypesTypeScript(types: ReadonlyArray<Record<string, unknown>>, tenantKey: string, modelImport: string): string;
160
167
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/commands/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/commands/types.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ import { deriveObjectTypeSlugV1 } from "../lib/object-type-identifiers.js";
19
19
  import { isRecord, toObjectTypeSlug } from "../lib/utils.js";
20
20
  import * as out from "../lib/output.js";
21
21
  import { ErrorCode, exitWithError } from "../lib/error-codes.js";
22
+ import { readConsistentObjectTypes } from "../lib/object-type-export.js";
22
23
  /** Treats dry runs as plans and completed runs as successful only after convergence. */
23
24
  export function shouldFailTypeSeedRun(results) {
24
25
  return results.some((result) => {
@@ -232,8 +233,36 @@ function collectMissingStorageFields(scope, fields) {
232
233
  function formatStorageFieldIssue(label, missing) {
233
234
  return `${label} is incomplete. Missing: ${missing.join(", ")}`;
234
235
  }
235
- export function validateObjectTypeStorageMetadata(type) {
236
+ /** Validate the app manifest's index and Search mapping wire shapes before publication. */
237
+ function validateStorageBindingManifestShape(binding) {
238
+ if (!isRecord(binding))
239
+ return [];
236
240
  const issues = [];
241
+ for (const scopeKey of ["sql", "documentdb"]) {
242
+ const scope = getStorageBindingScope(binding, scopeKey);
243
+ const indexes = scope?.indexes;
244
+ if (indexes === undefined || indexes === null)
245
+ continue;
246
+ if (!Array.isArray(indexes)) {
247
+ issues.push(`storageBinding.${scopeKey}.indexes must be an array of objects for app manifests`);
248
+ continue;
249
+ }
250
+ indexes.forEach((index, position) => {
251
+ const fields = isRecord(index) ? index.fields : undefined;
252
+ if (!Array.isArray(fields) || fields.some(field => typeof field !== "string")) {
253
+ issues.push(`storageBinding.${scopeKey}.indexes[${position}].fields must be an array of strings for app manifests; field objects and dictionaries are unsupported`);
254
+ }
255
+ });
256
+ }
257
+ const mappings = getStorageBindingScope(binding, "search")?.fieldMappings;
258
+ if (mappings !== undefined && mappings !== null
259
+ && (!isRecord(mappings) || Object.values(mappings).some(value => typeof value !== "string"))) {
260
+ issues.push("storageBinding.search.fieldMappings must be an object containing only string values for app manifests; mapping arrays are unsupported");
261
+ }
262
+ return issues;
263
+ }
264
+ export function validateObjectTypeStorageMetadata(type) {
265
+ const issues = validateStorageBindingManifestShape(type.storageBinding);
237
266
  const backend = type.storageBackend || "postgresql";
238
267
  const storageMetadataStatus = type.storageMetadataStatus || "draft";
239
268
  if (!VALID_STORAGE_BACKENDS.includes(backend)) {
@@ -536,6 +565,77 @@ export async function resolveTypesPullOutputPath(root, output) {
536
565
  const { isAbsolute, join: pathJoin } = await import("node:path");
537
566
  return isAbsolute(output) ? output : pathJoin(root, output);
538
567
  }
568
+ /** Pull authoritative schema DTOs without rewriting files on a failed response. */
569
+ export async function pullObjectTypesToFile(client, tenantId, root, output) {
570
+ const { basename, dirname, join: pathJoin, relative, resolve } = await import("node:path");
571
+ const { lstat, mkdir: makeDirectory, realpath } = await import("node:fs/promises");
572
+ const { assertDirectoryIdentities, snapshotNoLinkDirectoryPath } = await import('../lib/eai-managed-deploy-filesystem.js');
573
+ const { writeObjectTypeExportFile } = await import('../lib/object-type-export-filesystem.js');
574
+ const outputPath = await resolveTypesPullOutputPath(root, output);
575
+ const modelPath = pathJoin(root, "src", "eai.config", "object-types");
576
+ const canonicalPath = async (path) => {
577
+ try {
578
+ return await realpath(path);
579
+ }
580
+ catch (error) {
581
+ if (!isRecord(error) || error.code !== 'ENOENT')
582
+ throw error;
583
+ const parent = dirname(path);
584
+ return parent === path ? resolve(path) : pathJoin(await canonicalPath(parent), basename(path));
585
+ }
586
+ };
587
+ const assertGeneratedOutput = async () => {
588
+ if (await canonicalPath(resolve(outputPath)) === await canonicalPath(resolve(modelPath + ".ts"))) {
589
+ throw new Error("Choose a generated output file; preserve src/eai.config/object-types.ts for its model definitions.");
590
+ }
591
+ };
592
+ // A parent replacement redirects both sibling paths. Reserve the producer's
593
+ // leaf name as well as its canonical path, including case-insensitive systems.
594
+ if (basename(outputPath).toLowerCase() === 'object-types.ts') {
595
+ throw new Error("Choose a generated output file; preserve src/eai.config/object-types.ts for its model definitions.");
596
+ }
597
+ await assertGeneratedOutput();
598
+ let existingParent = dirname(resolve(outputPath));
599
+ let parentIdentities;
600
+ try {
601
+ while (true) {
602
+ try {
603
+ await lstat(existingParent);
604
+ break;
605
+ }
606
+ catch (error) {
607
+ if (!isRecord(error) || error.code !== 'ENOENT' || dirname(existingParent) === existingParent)
608
+ throw error;
609
+ existingParent = dirname(existingParent);
610
+ }
611
+ }
612
+ parentIdentities = await snapshotNoLinkDirectoryPath(existingParent);
613
+ }
614
+ catch {
615
+ throw new Error('Object Type pull could not publish or verify the generated output. Inspect the generated file before retrying.');
616
+ }
617
+ const docs = await readConsistentObjectTypes(client, tenantId);
618
+ const modelRelative = relative(dirname(outputPath), modelPath).replace(/\\/g, "/");
619
+ const modelImport = modelRelative.startsWith(".") ? modelRelative : "./" + modelRelative;
620
+ const source = generatePulledTypesTypeScript(docs, tenantId, modelImport);
621
+ const binding = { path: existingParent, assert: async () => {
622
+ await assertDirectoryIdentities(parentIdentities);
623
+ await assertGeneratedOutput();
624
+ } };
625
+ try {
626
+ await binding.assert();
627
+ await makeDirectory(dirname(outputPath), { recursive: true });
628
+ await binding.assert();
629
+ await writeObjectTypeExportFile(outputPath, source, binding);
630
+ }
631
+ catch (error) {
632
+ if (error instanceof Error && error.message.startsWith('Choose a generated output'))
633
+ throw error;
634
+ // eslint-disable-next-line preserve-caught-error -- local I/O errors can reveal private paths; keep the public error static.
635
+ throw new Error('Object Type pull could not publish or verify the generated output. Inspect the generated file before retrying.');
636
+ }
637
+ return { count: docs.length, outputPath };
638
+ }
539
639
  export async function describeFailedPlatformResponse(response) {
540
640
  const context = await extractServerErrorContext(response);
541
641
  const status = `${response.status}${response.statusText ? ` ${response.statusText}` : ""}`;
@@ -557,7 +657,7 @@ function appOwnedStoragePublishGuidance(message, tenantKey, tenantId, appTenantI
557
657
  return [
558
658
  "",
559
659
  "Why this can happen: workspace app Object Types must use app-owned storage bindings. Shared platform aliases and generic table names are rejected by the platform.",
560
- `Next steps: run eai app provision ${tenantKey} --tenant-id ${appTenantId} --select --format json, update src/eai.config/object-types.ts to use tenant-postgres and app-owned table names, then rerun eai types validate --tenant-key ${tenantKey} --tenant-id ${tenantId} and eai types seed --tenant-key ${tenantKey} --tenant-id ${tenantId}${appTenantId === tenantId ? '' : ` --app-tenant-id ${appTenantId}`}.`,
660
+ `Next steps: run eai app provision ${tenantKey} --tenant-id ${tenantId}${appTenantId === tenantId ? '' : ` --app-tenant-id ${appTenantId}`} --select --format json, update src/eai.config/object-types.ts to use tenant-postgres and app-owned table names, then rerun eai types validate --tenant-key ${tenantKey} --tenant-id ${tenantId} and eai types seed --tenant-key ${tenantKey} --tenant-id ${tenantId}${appTenantId === tenantId ? '' : ` --app-tenant-id ${appTenantId}`}.`,
561
661
  ].join("\n");
562
662
  }
563
663
  async function archiveDuplicateRemoteTypes(client, duplicates) {
@@ -1831,15 +1931,8 @@ Examples:
1831
1931
  const spinner = ora("Fetching remote Object Types...").start();
1832
1932
  try {
1833
1933
  const { client, tenantId, root } = ctx;
1834
- const res = await client.getPublishedObjectTypes({ limit: 100 });
1835
- const data = (await res.json());
1836
- const types = data?.docs || [];
1837
- spinner.succeed(`Found ${types.length} remote types`);
1838
- // Generate TypeScript
1839
- const ts = generateTypeScript(types, tenantId);
1840
- const { writeFile: write } = await import("node:fs/promises");
1841
- const outputPath = await resolveTypesPullOutputPath(root, options.output);
1842
- await write(outputPath, ts, "utf-8");
1934
+ const pulled = await pullObjectTypesToFile(client, tenantId, root, options.output);
1935
+ spinner.succeed(`Found ${pulled.count} remote types`);
1843
1936
  out.success(`Written to ${chalk.bold(options.output)}`);
1844
1937
  out.info("Review the generated file and merge into object-types.ts");
1845
1938
  }
@@ -1852,14 +1945,19 @@ Examples:
1852
1945
  // ─── eai types define ──────────────────────────────────────────────────────
1853
1946
  typesCommand
1854
1947
  .command("define")
1855
- .description("Interactive Object Type builder (coming soon)")
1856
- .action(async () => {
1857
- out.info("Interactive Object Type builder is planned for Phase 3.");
1858
- out.info("For now, edit src/eai.config/object-types.ts directly.");
1859
- out.info("See the Object Types Guide in CLAUDE.md for the schema format.");
1948
+ .description("Interactive Object Type builder (unsupported)")
1949
+ .option('--format <format>', 'Output format (text|json)', 'text')
1950
+ .action(async (options) => {
1951
+ const message = 'Interactive Object Type definition is unavailable. Edit src/eai.config/object-types.ts and use eai types validate and eai types seed.';
1952
+ if (options.format === 'json')
1953
+ console.log(JSON.stringify({ error: { code: 'TYPES_DEFINE_UNSUPPORTED', message } }));
1954
+ else
1955
+ out.error(`TYPES_DEFINE_UNSUPPORTED: ${message}`);
1956
+ process.exit(1);
1860
1957
  });
1861
1958
  // ─── Helpers ───────────────────────────────────────────────────────────────
1862
- function generateTypeScript(types, tenantKey) {
1959
+ /** Emit a review/merge module preserving complete read DTOs via JSON and the producer-relative type import. */
1960
+ export function generatePulledTypesTypeScript(types, tenantKey, modelImport) {
1863
1961
  const lines = [
1864
1962
  "/**",
1865
1963
  " * Object Types — auto-generated by `eai types pull`",
@@ -1868,14 +1966,10 @@ function generateTypeScript(types, tenantKey) {
1868
1966
  " * Review and merge into object-types.ts.",
1869
1967
  " */",
1870
1968
  "",
1871
- "import type { ObjectTypeDefinition } from './object-types';",
1969
+ `import type { ObjectTypeDefinition } from ${JSON.stringify(modelImport)};`,
1872
1970
  "",
1873
- `export const pulledTypes: Record<string, ObjectTypeDefinition[]> = {`,
1874
- ` '${tenantKey}': ${JSON.stringify(types, null, 4)
1875
- .split("\n")
1876
- .map((l, i) => (i === 0 ? l : " " + l))
1877
- .join("\n")},`,
1878
- "};",
1971
+ "// Retain authoritative remote identifiers and metadata through the JSON data boundary.",
1972
+ `export const pulledTypes: Record<string, ObjectTypeDefinition[]> = JSON.parse(${JSON.stringify(JSON.stringify({ [tenantKey]: types }))});`,
1879
1973
  "",
1880
1974
  ];
1881
1975
  return lines.join("\n");