@tdk-landscape/tdk-cli-core 1.3.45 → 1.3.48

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 (431) hide show
  1. package/.github/workflows/release-binaries.yml +54 -0
  2. package/.pre-commit-config.yaml +57 -0
  3. package/Makefile +92 -0
  4. package/bun.lock +538 -0
  5. package/cli/AGENTS.md +390 -0
  6. package/cli/DESIGN.md +735 -0
  7. package/cli/biome.json +44 -0
  8. package/cli/dependency-graph.svg +1135 -0
  9. package/cli/knip.json +6 -0
  10. package/cli/package.json +77 -0
  11. package/cli/pnpm-lock.yaml +2305 -0
  12. package/cli/pnpm-workspace.yaml +2 -0
  13. package/cli/shared-platform-engineering/docker-templates/bun-hoisted-symlink-fix.sh +23 -0
  14. package/cli/shared-platform-engineering/docker-templates/infisical-entrypoint.sh +464 -0
  15. package/cli/shared-platform-engineering/docker-templates/install-deps.sh +152 -0
  16. package/cli/shared-platform-engineering/docker-templates/prisma-bun-client-link-fix.sh +12 -0
  17. package/cli/shared-platform-engineering/docker-templates/prisma-normalize-client.sh +56 -0
  18. package/{dist/cli.js → cli/src/cli.ts} +21 -13
  19. package/cli/src/commands/__tests__/always-enabled-infra.test.ts +115 -0
  20. package/cli/src/commands/__tests__/config.test.ts +146 -0
  21. package/cli/src/commands/__tests__/doctor.test.ts +557 -0
  22. package/cli/src/commands/__tests__/error-handling.test.ts +78 -0
  23. package/cli/src/commands/__tests__/phases-model.test.ts +163 -0
  24. package/cli/src/commands/__tests__/project-resource-features-e2e.test.ts +207 -0
  25. package/cli/src/commands/__tests__/project.test.ts +68 -0
  26. package/cli/src/commands/__tests__/resource.test.ts +226 -0
  27. package/cli/src/commands/__tests__/saas-starter-integration.test.ts +196 -0
  28. package/cli/src/commands/__tests__/stack-features-e2e.test.ts +129 -0
  29. package/cli/src/commands/__tests__/upgrade.test.ts +101 -0
  30. package/{dist/commands/completion.js → cli/src/commands/completion.ts} +78 -72
  31. package/cli/src/commands/config.ts +299 -0
  32. package/cli/src/commands/doctor.ts +790 -0
  33. package/cli/src/commands/down.ts +37 -0
  34. package/cli/src/commands/help.ts +150 -0
  35. package/cli/src/commands/networks-design.md +80 -0
  36. package/cli/src/commands/networks.ts +332 -0
  37. package/cli/src/commands/project.ts +439 -0
  38. package/cli/src/commands/projects.ts +82 -0
  39. package/cli/src/commands/resource.ts +652 -0
  40. package/cli/src/commands/resources.ts +95 -0
  41. package/cli/src/commands/stack.ts +128 -0
  42. package/cli/src/commands/stacks.ts +52 -0
  43. package/cli/src/commands/status.ts +88 -0
  44. package/cli/src/commands/ui.tsx +843 -0
  45. package/cli/src/commands/up.ts +150 -0
  46. package/cli/src/commands/upgrade.ts +570 -0
  47. package/{dist/commands/version.js → cli/src/commands/version.ts} +5 -5
  48. package/cli/src/components/Accessible.tsx +21 -0
  49. package/cli/src/components/BaseTooltip.tsx +66 -0
  50. package/cli/src/components/DetailPanel.tsx +146 -0
  51. package/cli/src/components/FileTree.tsx +89 -0
  52. package/cli/src/components/ResourceSelectInput.tsx +30 -0
  53. package/cli/src/components/ResourceTable.tsx +78 -0
  54. package/cli/src/components/TabBar.tsx +53 -0
  55. package/cli/src/components/Tooltip.tsx +11 -0
  56. package/{dist/components/index.js → cli/src/components/index.ts} +0 -1
  57. package/cli/src/config/platform-standards.test.ts +11 -0
  58. package/cli/src/config/platform-standards.ts +196 -0
  59. package/cli/src/generator/__tests__/extension-fetch.test.ts +220 -0
  60. package/cli/src/generator/__tests__/template-engine.test.ts +70 -0
  61. package/cli/src/generator/extension-fetch.ts +279 -0
  62. package/cli/src/generator/template-engine.ts +754 -0
  63. package/cli/src/index.ts +86 -0
  64. package/cli/src/templates.d.ts +4 -0
  65. package/cli/src/types/index.ts +351 -0
  66. package/cli/src/utils/__tests__/cache.test.ts +98 -0
  67. package/cli/src/utils/__tests__/formatting.test.ts +170 -0
  68. package/cli/src/utils/__tests__/paths.test.ts +180 -0
  69. package/cli/src/utils/__tests__/port-assignment.test.ts +121 -0
  70. package/cli/src/utils/__tests__/service-urls.test.ts +174 -0
  71. package/cli/src/utils/__tests__/services.test.ts +531 -0
  72. package/cli/src/utils/__tests__/tilt.test.ts +143 -0
  73. package/cli/src/utils/__tests__/validation.test.ts +148 -0
  74. package/cli/src/utils/cache.ts +76 -0
  75. package/cli/src/utils/command-helpers.ts +54 -0
  76. package/cli/src/utils/constants.ts +126 -0
  77. package/cli/src/utils/discovery-context.ts +49 -0
  78. package/cli/src/utils/docker.ts +20 -0
  79. package/cli/src/utils/doctor-runtime.ts +604 -0
  80. package/cli/src/utils/env-validator.ts +139 -0
  81. package/cli/src/utils/errors.ts +168 -0
  82. package/cli/src/utils/file-helpers.ts +62 -0
  83. package/cli/src/utils/formatting.ts +215 -0
  84. package/cli/src/utils/paths.ts +53 -0
  85. package/cli/src/utils/port-assignment.ts +106 -0
  86. package/cli/src/utils/project-features.ts +118 -0
  87. package/cli/src/utils/project-templates.ts +28 -0
  88. package/cli/src/utils/prompt.ts +123 -0
  89. package/cli/src/utils/resource-features.ts +209 -0
  90. package/cli/src/utils/service-urls.ts +124 -0
  91. package/cli/src/utils/services.ts +363 -0
  92. package/cli/src/utils/stack-features.ts +30 -0
  93. package/cli/src/utils/tar.ts +24 -0
  94. package/cli/src/utils/tilt.ts +113 -0
  95. package/cli/src/utils/validation.ts +67 -0
  96. package/{templates → cli/templates}/Tiltfile.hbs +1 -1
  97. package/cli/tsconfig.json +25 -0
  98. package/cli/tsconfig.typecheck.json +8 -0
  99. package/docs/FEATURES.md +279 -0
  100. package/engine/topologies/platform/docker/dockerfile/dockerfile.star +3 -3
  101. package/engine/topologies/platform/docker/generators/golden_docker_generator_v2.star +1 -1
  102. package/engine/topologies/platform/docker/layers/l2_dependency_layers.star +0 -3
  103. package/engine/topologies/platform/docker/layers/l3_builder_layers.star +1 -1
  104. package/engine/topologies/platform/docker/layers/l4_runtime_layers.star +1 -1
  105. package/engine/topologies/platform/docker/secrets/infisical.star +19 -47
  106. package/engine/topologies/tilt/resources/orchestrator/apply_migrator_orchestration.star +1 -1
  107. package/install.sh +242 -0
  108. package/knip.json +10 -0
  109. package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/.openspec.yaml +2 -0
  110. package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/design.md +102 -0
  111. package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/proposal.md +31 -0
  112. package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/specs/vscode-tdk-notifications/spec.md +48 -0
  113. package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/specs/vscode-tdk-orchestration/spec.md +63 -0
  114. package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/specs/vscode-tdk-troubleshooting/spec.md +56 -0
  115. package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/tasks.md +61 -0
  116. package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/.openspec.yaml +2 -0
  117. package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/design.md +114 -0
  118. package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/proposal.md +32 -0
  119. package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/specs/manifest-field-migration/spec.md +20 -0
  120. package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/specs/resource-terminology-standard/spec.md +20 -0
  121. package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/specs/stack-terminology-standard/spec.md +20 -0
  122. package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/tasks.md +194 -0
  123. package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/.openspec.yaml +2 -0
  124. package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/design.md +111 -0
  125. package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/proposal.md +33 -0
  126. package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/function-naming-alignment/spec.md +12 -0
  127. package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/optional-parameter-patterns/spec.md +18 -0
  128. package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/parameter-documentation/spec.md +16 -0
  129. package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/parameter-naming-consistency/spec.md +12 -0
  130. package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/parameter-ordering-standard/spec.md +12 -0
  131. package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/tasks.md +194 -0
  132. package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/.openspec.yaml +2 -0
  133. package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/codebase-audit-report.md +62 -0
  134. package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/design.md +84 -0
  135. package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/proposal.md +31 -0
  136. package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/specs/codebase-audit/spec.md +27 -0
  137. package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/specs/dead-code-cleanup/spec.md +27 -0
  138. package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/specs/test-gap-fill/spec.md +23 -0
  139. package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/specs/todo-resolution/spec.md +27 -0
  140. package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/tasks.md +39 -0
  141. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/.openspec.yaml +5 -0
  142. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/design.md +94 -0
  143. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/proposal.md +46 -0
  144. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/ai-slop-cleanup/CLEANUP_REPORT_8.md +174 -0
  145. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/ai-slop-cleanup/CRITICAL_ASSESSMENT_8.md +160 -0
  146. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/circular-deps/CRITICAL_ASSESSMENT_4.md +381 -0
  147. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/dead-code/CRITICAL_ASSESSMENT_3.md +316 -0
  148. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/deduplication/CRITICAL_ASSESSMENT_1.md +290 -0
  149. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/deduplication/IMPLEMENTATION_SUMMARY_1.md +233 -0
  150. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/defensive-cleanup/CRITICAL_ASSESSMENT_6.md +835 -0
  151. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/legacy-cleanup/CRITICAL_ASSESSMENT_7.md +254 -0
  152. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/legacy-cleanup/IMPLEMENTATION_SUMMARY_7.md +187 -0
  153. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/strong-typing/CRITICAL_ASSESSMENT_5.md +269 -0
  154. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/type-consolidation/CRITICAL_ASSESSMENT_2.md +312 -0
  155. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/specs/type-consolidation/IMPLEMENTATION_SUMMARY.md +170 -0
  156. package/openspec/changes/archive/2026-05-04-comprehensive-cleanup-final/tasks.md +137 -0
  157. package/openspec/changes/archive/2026-06-25-landscape-consolidation/.openspec.yaml +2 -0
  158. package/openspec/changes/archive/2026-06-25-landscape-consolidation/design.md +80 -0
  159. package/openspec/changes/archive/2026-06-25-landscape-consolidation/proposal.md +40 -0
  160. package/openspec/changes/archive/2026-06-25-landscape-consolidation/spec.md +52 -0
  161. package/openspec/changes/archive/2026-06-25-landscape-consolidation/tasks.md +51 -0
  162. package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/.openspec.yaml +2 -0
  163. package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/design.md +43 -0
  164. package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/proposal.md +29 -0
  165. package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/specs/self-contained-generated-projects/spec.md +67 -0
  166. package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/tasks.md +27 -0
  167. package/openspec/specs/manifest-field-migration/spec.md +24 -0
  168. package/openspec/specs/resource-terminology-standard/spec.md +24 -0
  169. package/openspec/specs/self-contained-generated-projects/spec.md +67 -0
  170. package/openspec/specs/stack-terminology-standard/spec.md +24 -0
  171. package/package.json +27 -64
  172. package/platform/services/platform/proxy/service.yaml +14 -0
  173. package/scripts/audit-codebase.sh +213 -0
  174. package/scripts/install-git-hooks.sh +14 -0
  175. package/scripts/release-binaries.sh +94 -0
  176. package/scripts/setup-pre-commit.sh +33 -0
  177. package/scripts/stage-npm-engine.sh +36 -0
  178. package/shared-platform-engineering/docker-templates/bun-hoisted-symlink-fix.sh +23 -0
  179. package/shared-platform-engineering/docker-templates/infisical-entrypoint.sh +464 -0
  180. package/shared-platform-engineering/docker-templates/install-deps.sh +152 -0
  181. package/shared-platform-engineering/docker-templates/prisma-bun-client-link-fix.sh +12 -0
  182. package/shared-platform-engineering/docker-templates/prisma-normalize-client.sh +56 -0
  183. package/tests/tilt-engine/__init__.py +5 -0
  184. package/tests/tilt-engine/conftest.py +182 -0
  185. package/tests/tilt-engine/fixtures/appointment-frontend-service.json +11 -0
  186. package/tests/tilt-engine/fixtures/identity-backend-service.json +12 -0
  187. package/tests/tilt-engine/fixtures/invalid-service.json +4 -0
  188. package/tests/tilt-engine/test_agents_md_generator.py +341 -0
  189. package/tests/tilt-engine/test_agents_md_integration.py +378 -0
  190. package/tests/tilt-engine/test_cache_operations.py +181 -0
  191. package/tests/tilt-engine/test_cache_persistence.py +142 -0
  192. package/tests/tilt-engine/test_code_executor.py +152 -0
  193. package/tests/tilt-engine/test_code_viewer.py +127 -0
  194. package/tests/tilt-engine/test_compose_port_anchors.py +310 -0
  195. package/tests/tilt-engine/test_config_inspector.py +162 -0
  196. package/tests/tilt-engine/test_daemon_focus_mode.py +89 -0
  197. package/tests/tilt-engine/test_daemon_polling.py +122 -0
  198. package/tests/tilt-engine/test_daemon_registration.py +115 -0
  199. package/tests/tilt-engine/test_daemon_validation.py +107 -0
  200. package/tests/tilt-engine/test_docker_generator_bugs.py +493 -0
  201. package/tests/tilt-engine/test_docker_prune.py +119 -0
  202. package/tests/tilt-engine/test_dockerignore_path_bug.py +82 -0
  203. package/tests/tilt-engine/test_file_browser.py +193 -0
  204. package/tests/tilt-engine/test_frontend_basepath_manifest.py +27 -0
  205. package/tests/tilt-engine/test_health_dependencies.py +130 -0
  206. package/tests/tilt-engine/test_health_endpoints.py +118 -0
  207. package/tests/tilt-engine/test_health_tilt_ui.py +85 -0
  208. package/tests/tilt-engine/test_safety_aliases.py +84 -0
  209. package/tests/tilt-engine/test_snapshot_diff.py +136 -0
  210. package/tests/tilt-engine/test_snapshot_persistence.py +163 -0
  211. package/tests/tilt-engine/test_snapshot_scanning.py +123 -0
  212. package/tests/tilt-engine/test_standalone_project_boot.py +61 -0
  213. package/tests/tilt-engine/test_standalone_traefik.py +108 -0
  214. package/dist/cli.d.ts +0 -3
  215. package/dist/cli.d.ts.map +0 -1
  216. package/dist/cli.js.map +0 -1
  217. package/dist/commands/completion.d.ts +0 -3
  218. package/dist/commands/completion.d.ts.map +0 -1
  219. package/dist/commands/completion.js.map +0 -1
  220. package/dist/commands/config.d.ts +0 -3
  221. package/dist/commands/config.d.ts.map +0 -1
  222. package/dist/commands/config.js +0 -231
  223. package/dist/commands/config.js.map +0 -1
  224. package/dist/commands/doctor.d.ts +0 -7
  225. package/dist/commands/doctor.d.ts.map +0 -1
  226. package/dist/commands/doctor.js +0 -597
  227. package/dist/commands/doctor.js.map +0 -1
  228. package/dist/commands/down.d.ts +0 -3
  229. package/dist/commands/down.d.ts.map +0 -1
  230. package/dist/commands/down.js +0 -32
  231. package/dist/commands/down.js.map +0 -1
  232. package/dist/commands/help.d.ts +0 -2
  233. package/dist/commands/help.d.ts.map +0 -1
  234. package/dist/commands/help.js +0 -130
  235. package/dist/commands/help.js.map +0 -1
  236. package/dist/commands/networks.d.ts +0 -3
  237. package/dist/commands/networks.d.ts.map +0 -1
  238. package/dist/commands/networks.js +0 -260
  239. package/dist/commands/networks.js.map +0 -1
  240. package/dist/commands/project.d.ts +0 -3
  241. package/dist/commands/project.d.ts.map +0 -1
  242. package/dist/commands/project.js +0 -373
  243. package/dist/commands/project.js.map +0 -1
  244. package/dist/commands/projects.d.ts +0 -3
  245. package/dist/commands/projects.d.ts.map +0 -1
  246. package/dist/commands/projects.js +0 -71
  247. package/dist/commands/projects.js.map +0 -1
  248. package/dist/commands/resource.d.ts +0 -69
  249. package/dist/commands/resource.d.ts.map +0 -1
  250. package/dist/commands/resource.js +0 -579
  251. package/dist/commands/resource.js.map +0 -1
  252. package/dist/commands/resources.d.ts +0 -3
  253. package/dist/commands/resources.d.ts.map +0 -1
  254. package/dist/commands/resources.js +0 -73
  255. package/dist/commands/resources.js.map +0 -1
  256. package/dist/commands/stack.d.ts +0 -3
  257. package/dist/commands/stack.d.ts.map +0 -1
  258. package/dist/commands/stack.js +0 -97
  259. package/dist/commands/stack.js.map +0 -1
  260. package/dist/commands/stacks.d.ts +0 -3
  261. package/dist/commands/stacks.d.ts.map +0 -1
  262. package/dist/commands/stacks.js +0 -43
  263. package/dist/commands/stacks.js.map +0 -1
  264. package/dist/commands/status.d.ts +0 -3
  265. package/dist/commands/status.d.ts.map +0 -1
  266. package/dist/commands/status.js +0 -71
  267. package/dist/commands/status.js.map +0 -1
  268. package/dist/commands/ui.d.ts +0 -3
  269. package/dist/commands/ui.d.ts.map +0 -1
  270. package/dist/commands/ui.js +0 -445
  271. package/dist/commands/ui.js.map +0 -1
  272. package/dist/commands/up.d.ts +0 -3
  273. package/dist/commands/up.d.ts.map +0 -1
  274. package/dist/commands/up.js +0 -110
  275. package/dist/commands/up.js.map +0 -1
  276. package/dist/commands/upgrade.d.ts +0 -11
  277. package/dist/commands/upgrade.d.ts.map +0 -1
  278. package/dist/commands/upgrade.js +0 -496
  279. package/dist/commands/upgrade.js.map +0 -1
  280. package/dist/commands/version.d.ts +0 -3
  281. package/dist/commands/version.d.ts.map +0 -1
  282. package/dist/commands/version.js.map +0 -1
  283. package/dist/components/Accessible.d.ts +0 -8
  284. package/dist/components/Accessible.d.ts.map +0 -1
  285. package/dist/components/Accessible.js +0 -10
  286. package/dist/components/Accessible.js.map +0 -1
  287. package/dist/components/BaseTooltip.d.ts +0 -4
  288. package/dist/components/BaseTooltip.d.ts.map +0 -1
  289. package/dist/components/BaseTooltip.js +0 -28
  290. package/dist/components/BaseTooltip.js.map +0 -1
  291. package/dist/components/DetailPanel.d.ts +0 -4
  292. package/dist/components/DetailPanel.d.ts.map +0 -1
  293. package/dist/components/DetailPanel.js +0 -18
  294. package/dist/components/DetailPanel.js.map +0 -1
  295. package/dist/components/FileTree.d.ts +0 -4
  296. package/dist/components/FileTree.d.ts.map +0 -1
  297. package/dist/components/FileTree.js +0 -47
  298. package/dist/components/FileTree.js.map +0 -1
  299. package/dist/components/ResourceSelectInput.d.ts +0 -4
  300. package/dist/components/ResourceSelectInput.d.ts.map +0 -1
  301. package/dist/components/ResourceSelectInput.js +0 -7
  302. package/dist/components/ResourceSelectInput.js.map +0 -1
  303. package/dist/components/ResourceTable.d.ts +0 -4
  304. package/dist/components/ResourceTable.d.ts.map +0 -1
  305. package/dist/components/ResourceTable.js +0 -18
  306. package/dist/components/ResourceTable.js.map +0 -1
  307. package/dist/components/TabBar.d.ts +0 -4
  308. package/dist/components/TabBar.d.ts.map +0 -1
  309. package/dist/components/TabBar.js +0 -17
  310. package/dist/components/TabBar.js.map +0 -1
  311. package/dist/components/Tooltip.d.ts +0 -12
  312. package/dist/components/Tooltip.d.ts.map +0 -1
  313. package/dist/components/Tooltip.js +0 -12
  314. package/dist/components/Tooltip.js.map +0 -1
  315. package/dist/components/index.d.ts +0 -8
  316. package/dist/components/index.d.ts.map +0 -1
  317. package/dist/components/index.js.map +0 -1
  318. package/dist/config/platform-standards.d.ts +0 -159
  319. package/dist/config/platform-standards.d.ts.map +0 -1
  320. package/dist/config/platform-standards.js +0 -181
  321. package/dist/config/platform-standards.js.map +0 -1
  322. package/dist/generator/extension-fetch.d.ts +0 -25
  323. package/dist/generator/extension-fetch.d.ts.map +0 -1
  324. package/dist/generator/extension-fetch.js +0 -252
  325. package/dist/generator/extension-fetch.js.map +0 -1
  326. package/dist/generator/template-engine.d.ts +0 -61
  327. package/dist/generator/template-engine.d.ts.map +0 -1
  328. package/dist/generator/template-engine.js +0 -557
  329. package/dist/generator/template-engine.js.map +0 -1
  330. package/dist/index.d.ts +0 -11
  331. package/dist/index.d.ts.map +0 -1
  332. package/dist/index.js +0 -11
  333. package/dist/index.js.map +0 -1
  334. package/dist/types/index.d.ts +0 -255
  335. package/dist/types/index.d.ts.map +0 -1
  336. package/dist/types/index.js +0 -17
  337. package/dist/types/index.js.map +0 -1
  338. package/dist/utils/cache.d.ts +0 -19
  339. package/dist/utils/cache.d.ts.map +0 -1
  340. package/dist/utils/cache.js +0 -64
  341. package/dist/utils/cache.js.map +0 -1
  342. package/dist/utils/command-helpers.d.ts +0 -17
  343. package/dist/utils/command-helpers.d.ts.map +0 -1
  344. package/dist/utils/command-helpers.js +0 -41
  345. package/dist/utils/command-helpers.js.map +0 -1
  346. package/dist/utils/constants.d.ts +0 -52
  347. package/dist/utils/constants.d.ts.map +0 -1
  348. package/dist/utils/constants.js +0 -112
  349. package/dist/utils/constants.js.map +0 -1
  350. package/dist/utils/discovery-context.d.ts +0 -4
  351. package/dist/utils/discovery-context.d.ts.map +0 -1
  352. package/dist/utils/discovery-context.js +0 -39
  353. package/dist/utils/discovery-context.js.map +0 -1
  354. package/dist/utils/docker.d.ts +0 -4
  355. package/dist/utils/docker.d.ts.map +0 -1
  356. package/dist/utils/docker.js +0 -19
  357. package/dist/utils/docker.js.map +0 -1
  358. package/dist/utils/doctor-runtime.d.ts +0 -66
  359. package/dist/utils/doctor-runtime.d.ts.map +0 -1
  360. package/dist/utils/doctor-runtime.js +0 -469
  361. package/dist/utils/doctor-runtime.js.map +0 -1
  362. package/dist/utils/env-validator.d.ts +0 -15
  363. package/dist/utils/env-validator.d.ts.map +0 -1
  364. package/dist/utils/env-validator.js +0 -109
  365. package/dist/utils/env-validator.js.map +0 -1
  366. package/dist/utils/errors.d.ts +0 -31
  367. package/dist/utils/errors.d.ts.map +0 -1
  368. package/dist/utils/errors.js +0 -140
  369. package/dist/utils/errors.js.map +0 -1
  370. package/dist/utils/file-helpers.d.ts +0 -14
  371. package/dist/utils/file-helpers.d.ts.map +0 -1
  372. package/dist/utils/file-helpers.js +0 -45
  373. package/dist/utils/file-helpers.js.map +0 -1
  374. package/dist/utils/formatting.d.ts +0 -30
  375. package/dist/utils/formatting.d.ts.map +0 -1
  376. package/dist/utils/formatting.js +0 -164
  377. package/dist/utils/formatting.js.map +0 -1
  378. package/dist/utils/paths.d.ts +0 -3
  379. package/dist/utils/paths.d.ts.map +0 -1
  380. package/dist/utils/paths.js +0 -41
  381. package/dist/utils/paths.js.map +0 -1
  382. package/dist/utils/port-assignment.d.ts +0 -6
  383. package/dist/utils/port-assignment.d.ts.map +0 -1
  384. package/dist/utils/port-assignment.js +0 -81
  385. package/dist/utils/port-assignment.js.map +0 -1
  386. package/dist/utils/project-features.d.ts +0 -23
  387. package/dist/utils/project-features.d.ts.map +0 -1
  388. package/dist/utils/project-features.js +0 -98
  389. package/dist/utils/project-features.js.map +0 -1
  390. package/dist/utils/project-templates.d.ts +0 -7
  391. package/dist/utils/project-templates.d.ts.map +0 -1
  392. package/dist/utils/project-templates.js +0 -24
  393. package/dist/utils/project-templates.js.map +0 -1
  394. package/dist/utils/prompt.d.ts +0 -28
  395. package/dist/utils/prompt.d.ts.map +0 -1
  396. package/dist/utils/prompt.js +0 -79
  397. package/dist/utils/prompt.js.map +0 -1
  398. package/dist/utils/resource-features.d.ts +0 -29
  399. package/dist/utils/resource-features.d.ts.map +0 -1
  400. package/dist/utils/resource-features.js +0 -171
  401. package/dist/utils/resource-features.js.map +0 -1
  402. package/dist/utils/service-urls.d.ts +0 -30
  403. package/dist/utils/service-urls.d.ts.map +0 -1
  404. package/dist/utils/service-urls.js +0 -93
  405. package/dist/utils/service-urls.js.map +0 -1
  406. package/dist/utils/services.d.ts +0 -18
  407. package/dist/utils/services.d.ts.map +0 -1
  408. package/dist/utils/services.js +0 -291
  409. package/dist/utils/services.js.map +0 -1
  410. package/dist/utils/stack-features.d.ts +0 -22
  411. package/dist/utils/stack-features.d.ts.map +0 -1
  412. package/dist/utils/stack-features.js +0 -13
  413. package/dist/utils/stack-features.js.map +0 -1
  414. package/dist/utils/tar.d.ts +0 -7
  415. package/dist/utils/tar.d.ts.map +0 -1
  416. package/dist/utils/tar.js +0 -21
  417. package/dist/utils/tar.js.map +0 -1
  418. package/dist/utils/tilt.d.ts +0 -19
  419. package/dist/utils/tilt.d.ts.map +0 -1
  420. package/dist/utils/tilt.js +0 -78
  421. package/dist/utils/tilt.js.map +0 -1
  422. package/dist/utils/validation.d.ts +0 -16
  423. package/dist/utils/validation.d.ts.map +0 -1
  424. package/dist/utils/validation.js +0 -58
  425. package/dist/utils/validation.js.map +0 -1
  426. /package/{README.md → cli/README.md} +0 -0
  427. /package/{bin → cli/bin}/tdk.js +0 -0
  428. /package/{templates → cli/templates}/.tiltignore.hbs +0 -0
  429. /package/{templates → cli/templates}/TILT_RESOURCE_DEFAULTS.star.hbs +0 -0
  430. /package/{templates → cli/templates}/TILT_TECH_STACK.star.hbs +0 -0
  431. /package/{templates → cli/templates}/spec.master.hbs +0 -0
@@ -0,0 +1,1135 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <!-- Generated by graphviz version 14.1.5 (20260411.2331)
5
+ -->
6
+ <!-- Title: G Pages: 1 -->
7
+ <svg width="1690pt" height="2643pt"
8
+ viewBox="0.00 0.00 1690.00 2643.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(21.6 2621.47)">
10
+ <title>G</title>
11
+ <polygon fill="#111111" stroke="none" points="-21.6,21.6 -21.6,-2621.47 1668.85,-2621.47 1668.85,21.6 -21.6,21.6"/>
12
+ <!-- cli.ts -->
13
+ <g id="node1" class="node">
14
+ <title>cli.ts</title>
15
+ <path fill="none" stroke="#c6c5fe" d="M133.96,-1445.75C133.96,-1445.75 95.79,-1445.75 95.79,-1445.75 91.83,-1445.75 87.88,-1441.79 87.88,-1437.83 87.88,-1437.83 87.88,-1429.92 87.88,-1429.92 87.88,-1425.96 91.83,-1422 95.79,-1422 95.79,-1422 133.96,-1422 133.96,-1422 137.92,-1422 141.88,-1425.96 141.88,-1429.92 141.88,-1429.92 141.88,-1437.83 141.88,-1437.83 141.88,-1441.79 137.92,-1445.75 133.96,-1445.75"/>
16
+ <text xml:space="preserve" text-anchor="middle" x="114.88" y="-1428.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">cli.ts</text>
17
+ </g>
18
+ <!-- commands/completion.ts -->
19
+ <g id="node2" class="node">
20
+ <title>commands/completion.ts</title>
21
+ <path fill="none" stroke="#cfffac" d="M462.46,-1605.75C462.46,-1605.75 310.79,-1605.75 310.79,-1605.75 306.83,-1605.75 302.88,-1601.79 302.88,-1597.83 302.88,-1597.83 302.88,-1589.92 302.88,-1589.92 302.88,-1585.96 306.83,-1582 310.79,-1582 310.79,-1582 462.46,-1582 462.46,-1582 466.42,-1582 470.38,-1585.96 470.38,-1589.92 470.38,-1589.92 470.38,-1597.83 470.38,-1597.83 470.38,-1601.79 466.42,-1605.75 462.46,-1605.75"/>
22
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-1588.45" font-family="Arial" font-size="14.00" fill="#cfffac">commands/completion.ts</text>
23
+ </g>
24
+ <!-- cli.ts&#45;&gt;commands/completion.ts -->
25
+ <g id="edge1" class="edge">
26
+ <title>cli.ts&#45;&gt;commands/completion.ts</title>
27
+ <path fill="none" stroke="#757575" d="M142.2,-1431.53C167.65,-1430.76 205.77,-1433.74 229.75,-1454.88 269.29,-1489.72 226.75,-1532.41 265.75,-1567.88 273.33,-1574.77 282.29,-1579.99 291.85,-1583.92"/>
28
+ <polygon fill="#757575" stroke="#757575" points="290.4,-1587.12 300.99,-1587.19 292.76,-1580.53 290.4,-1587.12"/>
29
+ </g>
30
+ <!-- commands/config.ts -->
31
+ <g id="node3" class="node">
32
+ <title>commands/config.ts</title>
33
+ <path fill="none" stroke="#c6c5fe" d="M685.83,-1824.75C685.83,-1824.75 564.17,-1824.75 564.17,-1824.75 560.21,-1824.75 556.25,-1820.79 556.25,-1816.83 556.25,-1816.83 556.25,-1808.92 556.25,-1808.92 556.25,-1804.96 560.21,-1801 564.17,-1801 564.17,-1801 685.83,-1801 685.83,-1801 689.79,-1801 693.75,-1804.96 693.75,-1808.92 693.75,-1808.92 693.75,-1816.83 693.75,-1816.83 693.75,-1820.79 689.79,-1824.75 685.83,-1824.75"/>
34
+ <text xml:space="preserve" text-anchor="middle" x="625" y="-1807.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/config.ts</text>
35
+ </g>
36
+ <!-- cli.ts&#45;&gt;commands/config.ts -->
37
+ <g id="edge2" class="edge">
38
+ <title>cli.ts&#45;&gt;commands/config.ts</title>
39
+ <path fill="none" stroke="#757575" d="M142,-1430.78C168.03,-1429.28 207.28,-1431.58 229.75,-1454.88 305.86,-1533.76 194.75,-1615.36 265.75,-1698.88 334.9,-1780.21 461.92,-1804.15 544.64,-1810.83"/>
40
+ <polygon fill="#757575" stroke="#757575" points="544.27,-1814.31 554.5,-1811.55 544.78,-1807.33 544.27,-1814.31"/>
41
+ </g>
42
+ <!-- commands/doctor.ts -->
43
+ <g id="node4" class="node">
44
+ <title>commands/doctor.ts</title>
45
+ <path fill="none" stroke="#c6c5fe" d="M1481.58,-1259.75C1481.58,-1259.75 1359.17,-1259.75 1359.17,-1259.75 1355.21,-1259.75 1351.25,-1255.79 1351.25,-1251.83 1351.25,-1251.83 1351.25,-1243.92 1351.25,-1243.92 1351.25,-1239.96 1355.21,-1236 1359.17,-1236 1359.17,-1236 1481.58,-1236 1481.58,-1236 1485.54,-1236 1489.5,-1239.96 1489.5,-1243.92 1489.5,-1243.92 1489.5,-1251.83 1489.5,-1251.83 1489.5,-1255.79 1485.54,-1259.75 1481.58,-1259.75"/>
46
+ <text xml:space="preserve" text-anchor="middle" x="1420.38" y="-1242.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/doctor.ts</text>
47
+ </g>
48
+ <!-- cli.ts&#45;&gt;commands/doctor.ts -->
49
+ <g id="edge3" class="edge">
50
+ <title>cli.ts&#45;&gt;commands/doctor.ts</title>
51
+ <path fill="none" stroke="#757575" d="M125.1,-1421.71C146.38,-1394.75 201.99,-1330.34 265.75,-1304.88 461.24,-1226.79 1112.03,-1238.45 1339.81,-1245.17"/>
52
+ <polygon fill="#757575" stroke="#757575" points="1339.37,-1248.65 1349.47,-1245.46 1339.58,-1241.66 1339.37,-1248.65"/>
53
+ </g>
54
+ <!-- commands/down.ts -->
55
+ <g id="node5" class="node">
56
+ <title>commands/down.ts</title>
57
+ <path fill="none" stroke="#c6c5fe" d="M938.08,-179.75C938.08,-179.75 820.17,-179.75 820.17,-179.75 816.21,-179.75 812.25,-175.79 812.25,-171.83 812.25,-171.83 812.25,-163.92 812.25,-163.92 812.25,-159.96 816.21,-156 820.17,-156 820.17,-156 938.08,-156 938.08,-156 942.04,-156 946,-159.96 946,-163.92 946,-163.92 946,-171.83 946,-171.83 946,-175.79 942.04,-179.75 938.08,-179.75"/>
58
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-162.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/down.ts</text>
59
+ </g>
60
+ <!-- cli.ts&#45;&gt;commands/down.ts -->
61
+ <g id="edge4" class="edge">
62
+ <title>cli.ts&#45;&gt;commands/down.ts</title>
63
+ <path fill="none" stroke="#757575" d="M118.07,-1421.81C139.89,-1303.61 321.32,-352.97 543.5,-193.88 620.74,-138.57 735.31,-143.16 808.34,-153.79"/>
64
+ <polygon fill="#757575" stroke="#757575" points="807.78,-157.24 818.2,-155.31 808.84,-150.33 807.78,-157.24"/>
65
+ </g>
66
+ <!-- commands/help.ts -->
67
+ <g id="node6" class="node">
68
+ <title>commands/help.ts</title>
69
+ <path fill="none" stroke="#cfffac" d="M442.21,-1689.75C442.21,-1689.75 331.04,-1689.75 331.04,-1689.75 327.08,-1689.75 323.12,-1685.79 323.12,-1681.83 323.12,-1681.83 323.12,-1673.92 323.12,-1673.92 323.12,-1669.96 327.08,-1666 331.04,-1666 331.04,-1666 442.21,-1666 442.21,-1666 446.17,-1666 450.12,-1669.96 450.12,-1673.92 450.12,-1673.92 450.12,-1681.83 450.12,-1681.83 450.12,-1685.79 446.17,-1689.75 442.21,-1689.75"/>
70
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-1672.45" font-family="Arial" font-size="14.00" fill="#cfffac">commands/help.ts</text>
71
+ </g>
72
+ <!-- cli.ts&#45;&gt;commands/help.ts -->
73
+ <g id="edge5" class="edge">
74
+ <title>cli.ts&#45;&gt;commands/help.ts</title>
75
+ <path fill="none" stroke="#757575" d="M142.34,-1430.9C168.26,-1429.56 207.07,-1432.06 229.75,-1454.88 294.04,-1519.55 201.17,-1592.49 265.75,-1656.88 277.96,-1669.05 294.57,-1675.6 311.54,-1678.87"/>
76
+ <polygon fill="#757575" stroke="#757575" points="310.78,-1682.29 321.2,-1680.34 311.84,-1675.37 310.78,-1682.29"/>
77
+ </g>
78
+ <!-- commands/networks.ts -->
79
+ <g id="node7" class="node">
80
+ <title>commands/networks.ts</title>
81
+ <path fill="none" stroke="#c6c5fe" d="M694.83,-1685.75C694.83,-1685.75 555.17,-1685.75 555.17,-1685.75 551.21,-1685.75 547.25,-1681.79 547.25,-1677.83 547.25,-1677.83 547.25,-1669.92 547.25,-1669.92 547.25,-1665.96 551.21,-1662 555.17,-1662 555.17,-1662 694.83,-1662 694.83,-1662 698.79,-1662 702.75,-1665.96 702.75,-1669.92 702.75,-1669.92 702.75,-1677.83 702.75,-1677.83 702.75,-1681.79 698.79,-1685.75 694.83,-1685.75"/>
82
+ <text xml:space="preserve" text-anchor="middle" x="625" y="-1668.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/networks.ts</text>
83
+ </g>
84
+ <!-- cli.ts&#45;&gt;commands/networks.ts -->
85
+ <g id="edge6" class="edge">
86
+ <title>cli.ts&#45;&gt;commands/networks.ts</title>
87
+ <path fill="none" stroke="#757575" d="M142.13,-1432.19C167.17,-1431.96 204.66,-1435.39 229.75,-1454.88 259.9,-1478.3 235.38,-1509.73 265.75,-1532.88 352.37,-1598.89 412.62,-1519.42 507.5,-1572.88 528.92,-1584.94 525.47,-1598.16 543.5,-1614.88 559.6,-1629.8 579.49,-1644.4 595.46,-1655.35"/>
88
+ <polygon fill="#757575" stroke="#757575" points="593.33,-1658.13 603.58,-1660.81 597.24,-1652.32 593.33,-1658.13"/>
89
+ </g>
90
+ <!-- commands/project.ts -->
91
+ <g id="node8" class="node">
92
+ <title>commands/project.ts</title>
93
+ <path fill="none" stroke="#c6c5fe" d="M688.08,-1605.75C688.08,-1605.75 561.92,-1605.75 561.92,-1605.75 557.96,-1605.75 554,-1601.79 554,-1597.83 554,-1597.83 554,-1589.92 554,-1589.92 554,-1585.96 557.96,-1582 561.92,-1582 561.92,-1582 688.08,-1582 688.08,-1582 692.04,-1582 696,-1585.96 696,-1589.92 696,-1589.92 696,-1597.83 696,-1597.83 696,-1601.79 692.04,-1605.75 688.08,-1605.75"/>
94
+ <text xml:space="preserve" text-anchor="middle" x="625" y="-1588.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/project.ts</text>
95
+ </g>
96
+ <!-- cli.ts&#45;&gt;commands/project.ts -->
97
+ <g id="edge7" class="edge">
98
+ <title>cli.ts&#45;&gt;commands/project.ts</title>
99
+ <path fill="none" stroke="#757575" d="M141.99,-1433.82C166.23,-1434.85 202.57,-1439.23 229.75,-1454.88 251.06,-1467.14 244.4,-1484.68 265.75,-1496.88 360.5,-1551.01 407.79,-1495.52 507.5,-1539.88 526.02,-1548.11 525.58,-1558.39 543.5,-1567.88 550.47,-1571.56 558.06,-1574.85 565.7,-1577.74"/>
100
+ <polygon fill="#757575" stroke="#757575" points="564.45,-1581.01 575.05,-1581.05 566.79,-1574.41 564.45,-1581.01"/>
101
+ </g>
102
+ <!-- commands/projects.ts -->
103
+ <g id="node9" class="node">
104
+ <title>commands/projects.ts</title>
105
+ <path fill="none" stroke="#c6c5fe" d="M453.08,-1403.75C453.08,-1403.75 320.17,-1403.75 320.17,-1403.75 316.21,-1403.75 312.25,-1399.79 312.25,-1395.83 312.25,-1395.83 312.25,-1387.92 312.25,-1387.92 312.25,-1383.96 316.21,-1380 320.17,-1380 320.17,-1380 453.08,-1380 453.08,-1380 457.04,-1380 461,-1383.96 461,-1387.92 461,-1387.92 461,-1395.83 461,-1395.83 461,-1399.79 457.04,-1403.75 453.08,-1403.75"/>
106
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-1386.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/projects.ts</text>
107
+ </g>
108
+ <!-- cli.ts&#45;&gt;commands/projects.ts -->
109
+ <g id="edge8" class="edge">
110
+ <title>cli.ts&#45;&gt;commands/projects.ts</title>
111
+ <path fill="none" stroke="#757575" d="M142.23,-1429.77C178.69,-1424.09 246.22,-1413.58 300.92,-1405.06"/>
112
+ <polygon fill="#757575" stroke="#757575" points="301.19,-1408.56 310.53,-1403.57 300.11,-1401.65 301.19,-1408.56"/>
113
+ </g>
114
+ <!-- commands/resource.ts -->
115
+ <g id="node10" class="node">
116
+ <title>commands/resource.ts</title>
117
+ <path fill="none" stroke="#c6c5fe" d="M694.08,-2228.75C694.08,-2228.75 555.92,-2228.75 555.92,-2228.75 551.96,-2228.75 548,-2224.79 548,-2220.83 548,-2220.83 548,-2212.92 548,-2212.92 548,-2208.96 551.96,-2205 555.92,-2205 555.92,-2205 694.08,-2205 694.08,-2205 698.04,-2205 702,-2208.96 702,-2212.92 702,-2212.92 702,-2220.83 702,-2220.83 702,-2224.79 698.04,-2228.75 694.08,-2228.75"/>
118
+ <text xml:space="preserve" text-anchor="middle" x="625" y="-2211.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/resource.ts</text>
119
+ </g>
120
+ <!-- cli.ts&#45;&gt;commands/resource.ts -->
121
+ <g id="edge9" class="edge">
122
+ <title>cli.ts&#45;&gt;commands/resource.ts</title>
123
+ <path fill="none" stroke="#757575" d="M142.15,-1430.64C168.31,-1429.02 207.65,-1431.23 229.75,-1454.88 277.41,-1505.86 240.6,-1701.77 265.75,-1766.88 342.05,-1964.36 396.94,-2001.09 543.5,-2153.88 559.52,-2170.58 580.11,-2186.61 596.45,-2198.32"/>
124
+ <polygon fill="#757575" stroke="#757575" points="594.09,-2200.94 604.28,-2203.82 598.11,-2195.21 594.09,-2200.94"/>
125
+ </g>
126
+ <!-- commands/resources.ts -->
127
+ <g id="node11" class="node">
128
+ <title>commands/resources.ts</title>
129
+ <path fill="none" stroke="#c6c5fe" d="M459.08,-1445.75C459.08,-1445.75 314.17,-1445.75 314.17,-1445.75 310.21,-1445.75 306.25,-1441.79 306.25,-1437.83 306.25,-1437.83 306.25,-1429.92 306.25,-1429.92 306.25,-1425.96 310.21,-1422 314.17,-1422 314.17,-1422 459.08,-1422 459.08,-1422 463.04,-1422 467,-1425.96 467,-1429.92 467,-1429.92 467,-1437.83 467,-1437.83 467,-1441.79 463.04,-1445.75 459.08,-1445.75"/>
130
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-1428.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/resources.ts</text>
131
+ </g>
132
+ <!-- cli.ts&#45;&gt;commands/resources.ts -->
133
+ <g id="edge10" class="edge">
134
+ <title>cli.ts&#45;&gt;commands/resources.ts</title>
135
+ <path fill="none" stroke="#757575" d="M142.23,-1433.88C177.32,-1433.88 241.17,-1433.88 294.67,-1433.88"/>
136
+ <polygon fill="#757575" stroke="#757575" points="294.41,-1437.38 304.41,-1433.88 294.41,-1430.38 294.41,-1437.38"/>
137
+ </g>
138
+ <!-- commands/stack.ts -->
139
+ <g id="node12" class="node">
140
+ <title>commands/stack.ts</title>
141
+ <path fill="none" stroke="#c6c5fe" d="M445.21,-1647.75C445.21,-1647.75 328.04,-1647.75 328.04,-1647.75 324.08,-1647.75 320.12,-1643.79 320.12,-1639.83 320.12,-1639.83 320.12,-1631.92 320.12,-1631.92 320.12,-1627.96 324.08,-1624 328.04,-1624 328.04,-1624 445.21,-1624 445.21,-1624 449.17,-1624 453.12,-1627.96 453.12,-1631.92 453.12,-1631.92 453.12,-1639.83 453.12,-1639.83 453.12,-1643.79 449.17,-1647.75 445.21,-1647.75"/>
142
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-1630.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/stack.ts</text>
143
+ </g>
144
+ <!-- cli.ts&#45;&gt;commands/stack.ts -->
145
+ <g id="edge11" class="edge">
146
+ <title>cli.ts&#45;&gt;commands/stack.ts</title>
147
+ <path fill="none" stroke="#757575" d="M142.13,-1431.11C167.88,-1429.95 206.57,-1432.58 229.75,-1454.88 282.28,-1505.4 212.99,-1564.58 265.75,-1614.88 277.43,-1626.01 292.81,-1632.37 308.64,-1635.81"/>
148
+ <polygon fill="#757575" stroke="#757575" points="307.69,-1639.2 318.15,-1637.49 308.91,-1632.3 307.69,-1639.2"/>
149
+ </g>
150
+ <!-- commands/stacks.ts -->
151
+ <g id="node13" class="node">
152
+ <title>commands/stacks.ts</title>
153
+ <path fill="none" stroke="#c6c5fe" d="M448.58,-1487.75C448.58,-1487.75 324.67,-1487.75 324.67,-1487.75 320.71,-1487.75 316.75,-1483.79 316.75,-1479.83 316.75,-1479.83 316.75,-1471.92 316.75,-1471.92 316.75,-1467.96 320.71,-1464 324.67,-1464 324.67,-1464 448.58,-1464 448.58,-1464 452.54,-1464 456.5,-1467.96 456.5,-1471.92 456.5,-1471.92 456.5,-1479.83 456.5,-1479.83 456.5,-1483.79 452.54,-1487.75 448.58,-1487.75"/>
154
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-1470.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/stacks.ts</text>
155
+ </g>
156
+ <!-- cli.ts&#45;&gt;commands/stacks.ts -->
157
+ <g id="edge12" class="edge">
158
+ <title>cli.ts&#45;&gt;commands/stacks.ts</title>
159
+ <path fill="none" stroke="#757575" d="M142.23,-1437.98C179.62,-1443.8 249.69,-1454.71 305.08,-1463.33"/>
160
+ <polygon fill="#757575" stroke="#757575" points="304.38,-1466.77 314.8,-1464.85 305.46,-1459.85 304.38,-1466.77"/>
161
+ </g>
162
+ <!-- commands/status.ts -->
163
+ <g id="node14" class="node">
164
+ <title>commands/status.ts</title>
165
+ <path fill="none" stroke="#c6c5fe" d="M447.46,-1145.75C447.46,-1145.75 325.79,-1145.75 325.79,-1145.75 321.83,-1145.75 317.88,-1141.79 317.88,-1137.83 317.88,-1137.83 317.88,-1129.92 317.88,-1129.92 317.88,-1125.96 321.83,-1122 325.79,-1122 325.79,-1122 447.46,-1122 447.46,-1122 451.42,-1122 455.38,-1125.96 455.38,-1129.92 455.38,-1129.92 455.38,-1137.83 455.38,-1137.83 455.38,-1141.79 451.42,-1145.75 447.46,-1145.75"/>
166
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-1128.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/status.ts</text>
167
+ </g>
168
+ <!-- cli.ts&#45;&gt;commands/status.ts -->
169
+ <g id="edge13" class="edge">
170
+ <title>cli.ts&#45;&gt;commands/status.ts</title>
171
+ <path fill="none" stroke="#757575" d="M118.69,-1421.64C129.35,-1378.21 171.51,-1230.32 265.75,-1159.88 277.64,-1150.98 291.95,-1145.01 306.47,-1141.02"/>
172
+ <polygon fill="#757575" stroke="#757575" points="307.21,-1144.44 316.12,-1138.69 305.57,-1137.64 307.21,-1144.44"/>
173
+ </g>
174
+ <!-- commands/ui.tsx -->
175
+ <g id="node15" class="node">
176
+ <title>commands/ui.tsx</title>
177
+ <path fill="none" stroke="#c6c5fe" d="M438.08,-873.75C438.08,-873.75 335.17,-873.75 335.17,-873.75 331.21,-873.75 327.25,-869.79 327.25,-865.83 327.25,-865.83 327.25,-857.92 327.25,-857.92 327.25,-853.96 331.21,-850 335.17,-850 335.17,-850 438.08,-850 438.08,-850 442.04,-850 446,-853.96 446,-857.92 446,-857.92 446,-865.83 446,-865.83 446,-869.79 442.04,-873.75 438.08,-873.75"/>
178
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-856.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/ui.tsx</text>
179
+ </g>
180
+ <!-- cli.ts&#45;&gt;commands/ui.tsx -->
181
+ <g id="edge14" class="edge">
182
+ <title>cli.ts&#45;&gt;commands/ui.tsx</title>
183
+ <path fill="none" stroke="#757575" d="M121.55,-1421.61C141.32,-1378.94 209.02,-1233 265.75,-1112.88 305.68,-1028.32 353.79,-928.07 374.86,-884.25"/>
184
+ <polygon fill="#757575" stroke="#757575" points="377.89,-886.03 379.07,-875.5 371.58,-882.99 377.89,-886.03"/>
185
+ </g>
186
+ <!-- commands/up.ts -->
187
+ <g id="node16" class="node">
188
+ <title>commands/up.ts</title>
189
+ <path fill="none" stroke="#c6c5fe" d="M675.33,-1145.75C675.33,-1145.75 574.67,-1145.75 574.67,-1145.75 570.71,-1145.75 566.75,-1141.79 566.75,-1137.83 566.75,-1137.83 566.75,-1129.92 566.75,-1129.92 566.75,-1125.96 570.71,-1122 574.67,-1122 574.67,-1122 675.33,-1122 675.33,-1122 679.29,-1122 683.25,-1125.96 683.25,-1129.92 683.25,-1129.92 683.25,-1137.83 683.25,-1137.83 683.25,-1141.79 679.29,-1145.75 675.33,-1145.75"/>
190
+ <text xml:space="preserve" text-anchor="middle" x="625" y="-1128.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/up.ts</text>
191
+ </g>
192
+ <!-- cli.ts&#45;&gt;commands/up.ts -->
193
+ <g id="edge15" class="edge">
194
+ <title>cli.ts&#45;&gt;commands/up.ts</title>
195
+ <path fill="none" stroke="#757575" d="M119.69,-1421.57C132.71,-1381.77 179.47,-1255.71 265.75,-1197.88 356.4,-1137.11 400.08,-1174.11 507.5,-1154.88 522.96,-1152.11 539.58,-1149.12 555.28,-1146.29"/>
196
+ <polygon fill="#757575" stroke="#757575" points="555.82,-1149.75 565.04,-1144.53 554.57,-1142.86 555.82,-1149.75"/>
197
+ </g>
198
+ <!-- commands/upgrade.ts -->
199
+ <g id="node17" class="node">
200
+ <title>commands/upgrade.ts</title>
201
+ <path fill="none" stroke="#c6c5fe" d="M946.71,-259.75C946.71,-259.75 811.54,-259.75 811.54,-259.75 807.58,-259.75 803.62,-255.79 803.62,-251.83 803.62,-251.83 803.62,-243.92 803.62,-243.92 803.62,-239.96 807.58,-236 811.54,-236 811.54,-236 946.71,-236 946.71,-236 950.67,-236 954.62,-239.96 954.62,-243.92 954.62,-243.92 954.62,-251.83 954.62,-251.83 954.62,-255.79 950.67,-259.75 946.71,-259.75"/>
202
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-242.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/upgrade.ts</text>
203
+ </g>
204
+ <!-- cli.ts&#45;&gt;commands/upgrade.ts -->
205
+ <g id="edge16" class="edge">
206
+ <title>cli.ts&#45;&gt;commands/upgrade.ts</title>
207
+ <path fill="none" stroke="#757575" d="M115.78,-1421.64C115.67,-1317.5 129.66,-576.76 543.5,-286.88 615.8,-236.23 719.16,-231.75 791.82,-236.6"/>
208
+ <polygon fill="#757575" stroke="#757575" points="791.47,-240.08 801.7,-237.34 791.99,-233.1 791.47,-240.08"/>
209
+ </g>
210
+ <!-- commands/version.ts -->
211
+ <g id="node18" class="node">
212
+ <title>commands/version.ts</title>
213
+ <path fill="none" stroke="#c6c5fe" d="M1484.96,-23.75C1484.96,-23.75 1355.79,-23.75 1355.79,-23.75 1351.83,-23.75 1347.88,-19.79 1347.88,-15.83 1347.88,-15.83 1347.88,-7.92 1347.88,-7.92 1347.88,-3.96 1351.83,0 1355.79,0 1355.79,0 1484.96,0 1484.96,0 1488.92,0 1492.88,-3.96 1492.88,-7.92 1492.88,-7.92 1492.88,-15.83 1492.88,-15.83 1492.88,-19.79 1488.92,-23.75 1484.96,-23.75"/>
214
+ <text xml:space="preserve" text-anchor="middle" x="1420.38" y="-6.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/version.ts</text>
215
+ </g>
216
+ <!-- cli.ts&#45;&gt;commands/version.ts -->
217
+ <g id="edge17" class="edge">
218
+ <title>cli.ts&#45;&gt;commands/version.ts</title>
219
+ <path fill="none" stroke="#757575" d="M116.31,-1421.74C120.33,-1313.75 153.6,-516.88 265.75,-310.88 364.78,-128.98 416.89,-12.88 624,-12.88 624,-12.88 624,-12.88 880.12,-12.88 1041.59,-12.88 1230.24,-12.42 1336.17,-12.12"/>
220
+ <polygon fill="#757575" stroke="#757575" points="1335.91,-15.63 1345.9,-12.1 1335.89,-8.63 1335.91,-15.63"/>
221
+ </g>
222
+ <!-- utils/validation.ts -->
223
+ <g id="node21" class="node">
224
+ <title>utils/validation.ts</title>
225
+ <path fill="none" stroke="#c6c5fe" d="M1221.46,-2379.75C1221.46,-2379.75 1122.29,-2379.75 1122.29,-2379.75 1118.33,-2379.75 1114.38,-2375.79 1114.38,-2371.83 1114.38,-2371.83 1114.38,-2363.92 1114.38,-2363.92 1114.38,-2359.96 1118.33,-2356 1122.29,-2356 1122.29,-2356 1221.46,-2356 1221.46,-2356 1225.42,-2356 1229.38,-2359.96 1229.38,-2363.92 1229.38,-2363.92 1229.38,-2371.83 1229.38,-2371.83 1229.38,-2375.79 1225.42,-2379.75 1221.46,-2379.75"/>
226
+ <text xml:space="preserve" text-anchor="middle" x="1171.88" y="-2362.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/validation.ts</text>
227
+ </g>
228
+ <!-- commands/config.ts&#45;&gt;utils/validation.ts -->
229
+ <g id="edge28" class="edge">
230
+ <title>commands/config.ts&#45;&gt;utils/validation.ts</title>
231
+ <path fill="none" stroke="#757575" d="M628.98,-1825.04C640.48,-1872.33 682.51,-2048.68 706.5,-2195.88 717.62,-2264.11 690.87,-2458.91 742.5,-2504.88 787.85,-2545.25 958.96,-2526.36 1015.75,-2504.88 1077.27,-2481.6 1130.13,-2421.56 1155.26,-2389.23"/>
232
+ <polygon fill="#757575" stroke="#757575" points="1157.97,-2391.45 1161.23,-2381.37 1152.39,-2387.22 1157.97,-2391.45"/>
233
+ </g>
234
+ <!-- generator/template&#45;engine.ts -->
235
+ <g id="node25" class="node">
236
+ <title>generator/template&#45;engine.ts</title>
237
+ <path fill="none" stroke="#c6c5fe" d="M965.83,-1841.75C965.83,-1841.75 792.42,-1841.75 792.42,-1841.75 788.46,-1841.75 784.5,-1837.79 784.5,-1833.83 784.5,-1833.83 784.5,-1825.92 784.5,-1825.92 784.5,-1821.96 788.46,-1818 792.42,-1818 792.42,-1818 965.83,-1818 965.83,-1818 969.79,-1818 973.75,-1821.96 973.75,-1825.92 973.75,-1825.92 973.75,-1833.83 973.75,-1833.83 973.75,-1837.79 969.79,-1841.75 965.83,-1841.75"/>
238
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-1824.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">generator/template&#45;engine.ts</text>
239
+ </g>
240
+ <!-- commands/config.ts&#45;&gt;generator/template&#45;engine.ts -->
241
+ <g id="edge22" class="edge">
242
+ <title>commands/config.ts&#45;&gt;generator/template&#45;engine.ts</title>
243
+ <path fill="none" stroke="#757575" d="M694.23,-1817.48C718.47,-1819.11 746.36,-1820.99 772.97,-1822.78"/>
244
+ <polygon fill="#757575" stroke="#757575" points="772.56,-1826.27 782.77,-1823.45 773.03,-1819.28 772.56,-1826.27"/>
245
+ </g>
246
+ <!-- utils/command&#45;helpers.ts -->
247
+ <g id="node26" class="node">
248
+ <title>utils/command&#45;helpers.ts</title>
249
+ <path fill="none" stroke="#c6c5fe" d="M954.96,-1529.75C954.96,-1529.75 803.29,-1529.75 803.29,-1529.75 799.33,-1529.75 795.38,-1525.79 795.38,-1521.83 795.38,-1521.83 795.38,-1513.92 795.38,-1513.92 795.38,-1509.96 799.33,-1506 803.29,-1506 803.29,-1506 954.96,-1506 954.96,-1506 958.92,-1506 962.88,-1509.96 962.88,-1513.92 962.88,-1513.92 962.88,-1521.83 962.88,-1521.83 962.88,-1525.79 958.92,-1529.75 954.96,-1529.75"/>
250
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-1512.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/command&#45;helpers.ts</text>
251
+ </g>
252
+ <!-- commands/config.ts&#45;&gt;utils/command&#45;helpers.ts -->
253
+ <g id="edge23" class="edge">
254
+ <title>commands/config.ts&#45;&gt;utils/command&#45;helpers.ts</title>
255
+ <path fill="none" stroke="#757575" d="M668.46,-1800.64C682.25,-1794.81 696.55,-1786.49 706.5,-1774.88 743.28,-1731.94 713.56,-1701.44 742.5,-1652.88 771.47,-1604.25 821.95,-1560.55 852.48,-1536.76"/>
256
+ <polygon fill="#757575" stroke="#757575" points="854.25,-1539.81 860.07,-1530.95 850,-1534.25 854.25,-1539.81"/>
257
+ </g>
258
+ <!-- utils/constants.ts -->
259
+ <g id="node27" class="node">
260
+ <title>utils/constants.ts</title>
261
+ <path fill="none" stroke="#c6c5fe" d="M1470.33,-1997.75C1470.33,-1997.75 1370.42,-1997.75 1370.42,-1997.75 1366.46,-1997.75 1362.5,-1993.79 1362.5,-1989.83 1362.5,-1989.83 1362.5,-1981.92 1362.5,-1981.92 1362.5,-1977.96 1366.46,-1974 1370.42,-1974 1370.42,-1974 1470.33,-1974 1470.33,-1974 1474.29,-1974 1478.25,-1977.96 1478.25,-1981.92 1478.25,-1981.92 1478.25,-1989.83 1478.25,-1989.83 1478.25,-1993.79 1474.29,-1997.75 1470.33,-1997.75"/>
262
+ <text xml:space="preserve" text-anchor="middle" x="1420.38" y="-1980.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/constants.ts</text>
263
+ </g>
264
+ <!-- commands/config.ts&#45;&gt;utils/constants.ts -->
265
+ <g id="edge24" class="edge">
266
+ <title>commands/config.ts&#45;&gt;utils/constants.ts</title>
267
+ <path fill="none" stroke="#757575" d="M628.16,-1825.17C635.67,-1863.72 664.57,-1982.37 742.5,-2028.88 847.44,-2091.51 1170.69,-2021.68 1292,-2006.88 1311.16,-2004.54 1331.84,-2001.4 1350.85,-1998.26"/>
268
+ <polygon fill="#757575" stroke="#757575" points="1351.36,-2001.72 1360.65,-1996.61 1350.2,-1994.82 1351.36,-2001.72"/>
269
+ </g>
270
+ <!-- utils/errors.ts -->
271
+ <g id="node28" class="node">
272
+ <title>utils/errors.ts</title>
273
+ <path fill="none" stroke="#c6c5fe" d="M1210.58,-546.75C1210.58,-546.75 1133.17,-546.75 1133.17,-546.75 1129.21,-546.75 1125.25,-542.79 1125.25,-538.83 1125.25,-538.83 1125.25,-530.92 1125.25,-530.92 1125.25,-526.96 1129.21,-523 1133.17,-523 1133.17,-523 1210.58,-523 1210.58,-523 1214.54,-523 1218.5,-526.96 1218.5,-530.92 1218.5,-530.92 1218.5,-538.83 1218.5,-538.83 1218.5,-542.79 1214.54,-546.75 1210.58,-546.75"/>
274
+ <text xml:space="preserve" text-anchor="middle" x="1171.88" y="-529.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/errors.ts</text>
275
+ </g>
276
+ <!-- commands/config.ts&#45;&gt;utils/errors.ts -->
277
+ <g id="edge25" class="edge">
278
+ <title>commands/config.ts&#45;&gt;utils/errors.ts</title>
279
+ <path fill="none" stroke="#757575" d="M673.07,-1800.64C686,-1794.94 698.61,-1786.7 706.5,-1774.88 802.15,-1631.43 641.6,-1139.67 742.5,-999.88 818.64,-894.38 923.47,-986.59 1015.75,-894.88 1046.89,-863.92 1034.83,-843.39 1051.75,-802.88 1090.1,-711.05 1139.32,-603.23 1160.47,-557.36"/>
280
+ <polygon fill="#757575" stroke="#757575" points="1163.57,-559 1164.58,-548.45 1157.21,-556.06 1163.57,-559"/>
281
+ </g>
282
+ <!-- utils/file&#45;helpers.ts -->
283
+ <g id="node29" class="node">
284
+ <title>utils/file&#45;helpers.ts</title>
285
+ <path fill="none" stroke="#cfffac" d="M1225.96,-1997.75C1225.96,-1997.75 1117.79,-1997.75 1117.79,-1997.75 1113.83,-1997.75 1109.88,-1993.79 1109.88,-1989.83 1109.88,-1989.83 1109.88,-1981.92 1109.88,-1981.92 1109.88,-1977.96 1113.83,-1974 1117.79,-1974 1117.79,-1974 1225.96,-1974 1225.96,-1974 1229.92,-1974 1233.88,-1977.96 1233.88,-1981.92 1233.88,-1981.92 1233.88,-1989.83 1233.88,-1989.83 1233.88,-1993.79 1229.92,-1997.75 1225.96,-1997.75"/>
286
+ <text xml:space="preserve" text-anchor="middle" x="1171.88" y="-1980.45" font-family="Arial" font-size="14.00" fill="#cfffac">utils/file&#45;helpers.ts</text>
287
+ </g>
288
+ <!-- commands/config.ts&#45;&gt;utils/file&#45;helpers.ts -->
289
+ <g id="edge26" class="edge">
290
+ <title>commands/config.ts&#45;&gt;utils/file&#45;helpers.ts</title>
291
+ <path fill="none" stroke="#757575" d="M628.91,-1825.22C638.15,-1861.23 670.53,-1966.14 742.5,-2006.88 801.35,-2040.18 992.33,-2015.65 1098.33,-1998.59"/>
292
+ <polygon fill="#757575" stroke="#757575" points="1098.76,-2002.07 1108.07,-1997.01 1097.64,-1995.16 1098.76,-2002.07"/>
293
+ </g>
294
+ <!-- utils/formatting.ts -->
295
+ <g id="node30" class="node">
296
+ <title>utils/formatting.ts</title>
297
+ <path fill="none" stroke="#c6c5fe" d="M1223.33,-1460.75C1223.33,-1460.75 1120.42,-1460.75 1120.42,-1460.75 1116.46,-1460.75 1112.5,-1456.79 1112.5,-1452.83 1112.5,-1452.83 1112.5,-1444.92 1112.5,-1444.92 1112.5,-1440.96 1116.46,-1437 1120.42,-1437 1120.42,-1437 1223.33,-1437 1223.33,-1437 1227.29,-1437 1231.25,-1440.96 1231.25,-1444.92 1231.25,-1444.92 1231.25,-1452.83 1231.25,-1452.83 1231.25,-1456.79 1227.29,-1460.75 1223.33,-1460.75"/>
298
+ <text xml:space="preserve" text-anchor="middle" x="1171.88" y="-1443.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/formatting.ts</text>
299
+ </g>
300
+ <!-- commands/config.ts&#45;&gt;utils/formatting.ts -->
301
+ <g id="edge27" class="edge">
302
+ <title>commands/config.ts&#45;&gt;utils/formatting.ts</title>
303
+ <path fill="none" stroke="#757575" d="M694.2,-1806.77C777.58,-1796.26 919.45,-1768.25 1015.75,-1694.88 1095.33,-1634.24 1144.66,-1520.08 1162.89,-1471.59"/>
304
+ <polygon fill="#757575" stroke="#757575" points="1166.09,-1473.01 1166.24,-1462.42 1159.52,-1470.61 1166.09,-1473.01"/>
305
+ </g>
306
+ <!-- types/index.ts -->
307
+ <g id="node24" class="node">
308
+ <title>types/index.ts</title>
309
+ <path fill="none" stroke="#cfffac" d="M1639.33,-1460.75C1639.33,-1460.75 1556.67,-1460.75 1556.67,-1460.75 1552.71,-1460.75 1548.75,-1456.79 1548.75,-1452.83 1548.75,-1452.83 1548.75,-1444.92 1548.75,-1444.92 1548.75,-1440.96 1552.71,-1437 1556.67,-1437 1556.67,-1437 1639.33,-1437 1639.33,-1437 1643.29,-1437 1647.25,-1440.96 1647.25,-1444.92 1647.25,-1444.92 1647.25,-1452.83 1647.25,-1452.83 1647.25,-1456.79 1643.29,-1460.75 1639.33,-1460.75"/>
310
+ <text xml:space="preserve" text-anchor="middle" x="1598" y="-1443.45" font-family="Arial" font-size="14.00" fill="#cfffac">types/index.ts</text>
311
+ </g>
312
+ <!-- commands/doctor.ts&#45;&gt;types/index.ts -->
313
+ <g id="edge29" class="edge">
314
+ <title>commands/doctor.ts&#45;&gt;types/index.ts</title>
315
+ <path fill="none" stroke="#757575" d="M1489.54,-1260.18C1497.93,-1263.67 1505.94,-1268.14 1512.75,-1273.88 1560.7,-1314.24 1583.44,-1388.25 1592.29,-1425.77"/>
316
+ <polygon fill="#757575" stroke="#757575" points="1588.78,-1426.09 1594.37,-1435.1 1595.61,-1424.58 1588.78,-1426.09"/>
317
+ </g>
318
+ <!-- commands/down.ts&#45;&gt;utils/errors.ts -->
319
+ <g id="edge30" class="edge">
320
+ <title>commands/down.ts&#45;&gt;utils/errors.ts</title>
321
+ <path fill="none" stroke="#757575" d="M929.37,-180.23C957.43,-189.32 991.68,-204.12 1015.75,-226.88 1104.32,-310.6 1150.12,-455.92 1165.16,-511.94"/>
322
+ <polygon fill="#757575" stroke="#757575" points="1161.7,-512.51 1167.6,-521.3 1168.47,-510.75 1161.7,-512.51"/>
323
+ </g>
324
+ <!-- utils/tilt.ts -->
325
+ <g id="node31" class="node">
326
+ <title>utils/tilt.ts</title>
327
+ <path fill="none" stroke="#c6c5fe" d="M1448.21,-318.75C1448.21,-318.75 1392.54,-318.75 1392.54,-318.75 1388.58,-318.75 1384.62,-314.79 1384.62,-310.83 1384.62,-310.83 1384.62,-302.92 1384.62,-302.92 1384.62,-298.96 1388.58,-295 1392.54,-295 1392.54,-295 1448.21,-295 1448.21,-295 1452.17,-295 1456.12,-298.96 1456.12,-302.92 1456.12,-302.92 1456.12,-310.83 1456.12,-310.83 1456.12,-314.79 1452.17,-318.75 1448.21,-318.75"/>
328
+ <text xml:space="preserve" text-anchor="middle" x="1420.38" y="-301.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/tilt.ts</text>
329
+ </g>
330
+ <!-- commands/down.ts&#45;&gt;utils/tilt.ts -->
331
+ <g id="edge31" class="edge">
332
+ <title>commands/down.ts&#45;&gt;utils/tilt.ts</title>
333
+ <path fill="none" stroke="#757575" d="M946.35,-169.25C1029.45,-172.83 1175.24,-185.27 1292,-227.88 1331.06,-242.13 1370.98,-269.37 1395.48,-287.83"/>
334
+ <polygon fill="#757575" stroke="#757575" points="1393.11,-290.43 1403.18,-293.74 1397.38,-284.87 1393.11,-290.43"/>
335
+ </g>
336
+ <!-- commands/networks.ts&#45;&gt;utils/validation.ts -->
337
+ <g id="edge40" class="edge">
338
+ <title>commands/networks.ts&#45;&gt;utils/validation.ts</title>
339
+ <path fill="none" stroke="#757575" d="M652.7,-1686.11C671.04,-1696 694.21,-1711.76 706.5,-1732.88 776.26,-1852.76 673.74,-1922.41 742.5,-2042.88 834.79,-2204.56 1043.26,-2311.57 1130.89,-2350.97"/>
340
+ <polygon fill="#757575" stroke="#757575" points="1129.26,-2354.07 1139.82,-2354.93 1132.1,-2347.67 1129.26,-2354.07"/>
341
+ </g>
342
+ <!-- commands/networks.ts&#45;&gt;types/index.ts -->
343
+ <g id="edge33" class="edge">
344
+ <title>commands/networks.ts&#45;&gt;types/index.ts</title>
345
+ <path fill="none" stroke="#757575" d="M682.91,-1686.23C701.77,-1689.76 722.95,-1693.13 742.5,-1694.88 863.46,-1705.69 895.48,-1711.73 1015.75,-1694.88 1245.69,-1662.64 1317.61,-1659.71 1512.75,-1533.88 1539.79,-1516.44 1564.94,-1489 1580.6,-1470.04"/>
346
+ <polygon fill="#757575" stroke="#757575" points="1583.19,-1472.4 1586.73,-1462.42 1577.73,-1468.01 1583.19,-1472.4"/>
347
+ </g>
348
+ <!-- commands/networks.ts&#45;&gt;generator/template&#45;engine.ts -->
349
+ <g id="edge32" class="edge">
350
+ <title>commands/networks.ts&#45;&gt;generator/template&#45;engine.ts</title>
351
+ <path fill="none" stroke="#757575" d="M685.87,-1686.15C693.47,-1689.64 700.62,-1694.12 706.5,-1699.88 741.45,-1734.1 705.52,-1771.86 742.5,-1803.88 751.59,-1811.74 762.32,-1817.53 773.71,-1821.74"/>
352
+ <polygon fill="#757575" stroke="#757575" points="772.28,-1824.96 782.88,-1824.72 774.45,-1818.3 772.28,-1824.96"/>
353
+ </g>
354
+ <!-- commands/networks.ts&#45;&gt;utils/constants.ts -->
355
+ <g id="edge34" class="edge">
356
+ <title>commands/networks.ts&#45;&gt;utils/constants.ts</title>
357
+ <path fill="none" stroke="#757575" d="M700.96,-1686.2C702.92,-1687.62 704.77,-1689.17 706.5,-1690.88 758.38,-1742.07 690.33,-1799.97 742.5,-1850.88 764.43,-1872.27 1183.46,-1945.67 1351,-1974.3"/>
358
+ <polygon fill="#757575" stroke="#757575" points="1350.21,-1977.72 1360.65,-1975.95 1351.38,-1970.82 1350.21,-1977.72"/>
359
+ </g>
360
+ <!-- commands/networks.ts&#45;&gt;utils/errors.ts -->
361
+ <g id="edge35" class="edge">
362
+ <title>commands/networks.ts&#45;&gt;utils/errors.ts</title>
363
+ <path fill="none" stroke="#757575" d="M653.49,-1661.65C671.95,-1651.85 694.94,-1636.2 706.5,-1614.88 775.75,-1487.11 666.94,-1086.02 742.5,-961.88 815.78,-841.46 916.3,-900.77 1015.75,-800.88 1090.65,-725.64 1142.69,-607.07 1162.27,-557.66"/>
364
+ <polygon fill="#757575" stroke="#757575" points="1165.44,-559.17 1165.8,-548.58 1158.91,-556.64 1165.44,-559.17"/>
365
+ </g>
366
+ <!-- commands/networks.ts&#45;&gt;utils/formatting.ts -->
367
+ <g id="edge36" class="edge">
368
+ <title>commands/networks.ts&#45;&gt;utils/formatting.ts</title>
369
+ <path fill="none" stroke="#757575" d="M693.1,-1661.52C709.27,-1658.61 726.49,-1655.58 742.5,-1652.88 863.72,-1632.41 906.71,-1666.65 1015.75,-1609.88 1079.99,-1576.43 1132.99,-1506.21 1157.01,-1470.59"/>
370
+ <polygon fill="#757575" stroke="#757575" points="1159.84,-1472.66 1162.43,-1462.39 1154,-1468.8 1159.84,-1472.66"/>
371
+ </g>
372
+ <!-- utils/paths.ts -->
373
+ <g id="node32" class="node">
374
+ <title>utils/paths.ts</title>
375
+ <path fill="none" stroke="#cfffac" d="M1635.58,-177.75C1635.58,-177.75 1560.42,-177.75 1560.42,-177.75 1556.46,-177.75 1552.5,-173.79 1552.5,-169.83 1552.5,-169.83 1552.5,-161.92 1552.5,-161.92 1552.5,-157.96 1556.46,-154 1560.42,-154 1560.42,-154 1635.58,-154 1635.58,-154 1639.54,-154 1643.5,-157.96 1643.5,-161.92 1643.5,-161.92 1643.5,-169.83 1643.5,-169.83 1643.5,-173.79 1639.54,-177.75 1635.58,-177.75"/>
376
+ <text xml:space="preserve" text-anchor="middle" x="1598" y="-160.45" font-family="Arial" font-size="14.00" fill="#cfffac">utils/paths.ts</text>
377
+ </g>
378
+ <!-- commands/networks.ts&#45;&gt;utils/paths.ts -->
379
+ <g id="edge37" class="edge">
380
+ <title>commands/networks.ts&#45;&gt;utils/paths.ts</title>
381
+ <path fill="none" stroke="#757575" d="M653.38,-1661.59C671.79,-1651.76 694.77,-1636.11 706.5,-1614.88 761.01,-1516.2 684.13,-1205.31 742.5,-1108.88 826.15,-970.67 904.52,-984.36 1051.75,-917.88 1153.46,-871.95 1206.54,-916.64 1292,-844.88 1511.25,-660.75 1579.45,-286.76 1593.83,-189.45"/>
382
+ <polygon fill="#757575" stroke="#757575" points="1597.29,-189.95 1595.24,-179.55 1590.36,-188.96 1597.29,-189.95"/>
383
+ </g>
384
+ <!-- utils/port&#45;assignment.ts -->
385
+ <g id="node33" class="node">
386
+ <title>utils/port&#45;assignment.ts</title>
387
+ <path fill="none" stroke="#c6c5fe" d="M1241.71,-2115.75C1241.71,-2115.75 1102.04,-2115.75 1102.04,-2115.75 1098.08,-2115.75 1094.12,-2111.79 1094.12,-2107.83 1094.12,-2107.83 1094.12,-2099.92 1094.12,-2099.92 1094.12,-2095.96 1098.08,-2092 1102.04,-2092 1102.04,-2092 1241.71,-2092 1241.71,-2092 1245.67,-2092 1249.62,-2095.96 1249.62,-2099.92 1249.62,-2099.92 1249.62,-2107.83 1249.62,-2107.83 1249.62,-2111.79 1245.67,-2115.75 1241.71,-2115.75"/>
388
+ <text xml:space="preserve" text-anchor="middle" x="1171.88" y="-2098.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/port&#45;assignment.ts</text>
389
+ </g>
390
+ <!-- commands/networks.ts&#45;&gt;utils/port&#45;assignment.ts -->
391
+ <g id="edge38" class="edge">
392
+ <title>commands/networks.ts&#45;&gt;utils/port&#45;assignment.ts</title>
393
+ <path fill="none" stroke="#757575" d="M652.6,-1686.17C670.9,-1696.09 694.05,-1711.85 706.5,-1732.88 769.07,-1838.57 656.76,-1918.93 742.5,-2006.88 785.41,-2050.89 956.12,-2034.93 1015.75,-2049.88 1055.46,-2059.83 1099.42,-2075.6 1130.38,-2087.54"/>
394
+ <polygon fill="#757575" stroke="#757575" points="1128.75,-2090.66 1139.34,-2091.03 1131.3,-2084.14 1128.75,-2090.66"/>
395
+ </g>
396
+ <!-- utils/services.ts -->
397
+ <g id="node34" class="node">
398
+ <title>utils/services.ts</title>
399
+ <path fill="none" stroke="#c6c5fe" d="M924.96,-1685.75C924.96,-1685.75 833.29,-1685.75 833.29,-1685.75 829.33,-1685.75 825.38,-1681.79 825.38,-1677.83 825.38,-1677.83 825.38,-1669.92 825.38,-1669.92 825.38,-1665.96 829.33,-1662 833.29,-1662 833.29,-1662 924.96,-1662 924.96,-1662 928.92,-1662 932.88,-1665.96 932.88,-1669.92 932.88,-1669.92 932.88,-1677.83 932.88,-1677.83 932.88,-1681.79 928.92,-1685.75 924.96,-1685.75"/>
400
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-1668.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/services.ts</text>
401
+ </g>
402
+ <!-- commands/networks.ts&#45;&gt;utils/services.ts -->
403
+ <g id="edge39" class="edge">
404
+ <title>commands/networks.ts&#45;&gt;utils/services.ts</title>
405
+ <path fill="none" stroke="#757575" d="M703.02,-1673.88C738.54,-1673.88 780.21,-1673.88 813.99,-1673.88"/>
406
+ <polygon fill="#757575" stroke="#757575" points="813.61,-1677.38 823.61,-1673.88 813.61,-1670.38 813.61,-1677.38"/>
407
+ </g>
408
+ <!-- commands/project.ts&#45;&gt;generator/template&#45;engine.ts -->
409
+ <g id="edge41" class="edge">
410
+ <title>commands/project.ts&#45;&gt;generator/template&#45;engine.ts</title>
411
+ <path fill="none" stroke="#757575" d="M651.2,-1606.15C669.28,-1616.24 692.79,-1632.23 706.5,-1652.88 744.67,-1710.35 692.64,-1756.19 742.5,-1803.88 751.32,-1812.31 762,-1818.42 773.45,-1822.79"/>
412
+ <polygon fill="#757575" stroke="#757575" points="772.11,-1826.04 782.7,-1825.86 774.31,-1819.4 772.11,-1826.04"/>
413
+ </g>
414
+ <!-- commands/project.ts&#45;&gt;utils/constants.ts -->
415
+ <g id="edge42" class="edge">
416
+ <title>commands/project.ts&#45;&gt;utils/constants.ts</title>
417
+ <path fill="none" stroke="#757575" d="M645.16,-1606.09C662.1,-1617.3 687.05,-1634.86 706.5,-1652.88 724.53,-1669.59 721.75,-1681.69 742.5,-1694.88 956.37,-1830.76 1075.9,-1714.55 1292,-1846.88 1342.16,-1877.59 1384.66,-1933.67 1405.54,-1964.37"/>
418
+ <polygon fill="#757575" stroke="#757575" points="1402.48,-1966.09 1410.93,-1972.48 1408.31,-1962.21 1402.48,-1966.09"/>
419
+ </g>
420
+ <!-- commands/project.ts&#45;&gt;utils/errors.ts -->
421
+ <g id="edge43" class="edge">
422
+ <title>commands/project.ts&#45;&gt;utils/errors.ts</title>
423
+ <path fill="none" stroke="#757575" d="M628.46,-1581.69C638.81,-1530.14 679.57,-1324.77 706.5,-1154.88 725.38,-1035.74 680.65,-989.43 742.5,-885.88 819.4,-757.12 901.31,-784.81 1015.75,-687.88 1068.03,-643.59 1123.98,-585.38 1152.24,-555.12"/>
424
+ <polygon fill="#757575" stroke="#757575" points="1154.5,-557.83 1158.74,-548.13 1149.37,-553.07 1154.5,-557.83"/>
425
+ </g>
426
+ <!-- commands/project.ts&#45;&gt;utils/file&#45;helpers.ts -->
427
+ <g id="edge44" class="edge">
428
+ <title>commands/project.ts&#45;&gt;utils/file&#45;helpers.ts</title>
429
+ <path fill="none" stroke="#757575" d="M651.91,-1606.15C670.11,-1616.14 693.45,-1632.02 706.5,-1652.88 753.94,-1728.7 683.34,-1783.79 742.5,-1850.88 789.76,-1904.47 988.89,-1950.51 1098.23,-1972.35"/>
430
+ <polygon fill="#757575" stroke="#757575" points="1097.51,-1975.78 1108,-1974.29 1098.87,-1968.91 1097.51,-1975.78"/>
431
+ </g>
432
+ <!-- commands/project.ts&#45;&gt;utils/formatting.ts -->
433
+ <g id="edge45" class="edge">
434
+ <title>commands/project.ts&#45;&gt;utils/formatting.ts</title>
435
+ <path fill="none" stroke="#757575" d="M696.22,-1585.45C800.25,-1572.74 986.24,-1549.08 1015.75,-1538.88 1064.92,-1521.87 1116,-1488.72 1145.54,-1467.74"/>
436
+ <polygon fill="#757575" stroke="#757575" points="1147.41,-1470.71 1153.47,-1462.02 1143.31,-1465.03 1147.41,-1470.71"/>
437
+ </g>
438
+ <!-- commands/project.ts&#45;&gt;utils/paths.ts -->
439
+ <g id="edge46" class="edge">
440
+ <title>commands/project.ts&#45;&gt;utils/paths.ts</title>
441
+ <path fill="none" stroke="#757575" d="M628.9,-1581.75C641.01,-1530.43 687.87,-1325.88 706.5,-1154.88 712.57,-1099.17 702.18,-185.78 742.5,-146.88 799.71,-91.67 1359.9,-142.2 1540.91,-160.13"/>
442
+ <polygon fill="#757575" stroke="#757575" points="1540.47,-163.61 1550.77,-161.11 1541.16,-156.64 1540.47,-163.61"/>
443
+ </g>
444
+ <!-- commands/projects.ts&#45;&gt;utils/errors.ts -->
445
+ <g id="edge48" class="edge">
446
+ <title>commands/projects.ts&#45;&gt;utils/errors.ts</title>
447
+ <path fill="none" stroke="#757575" d="M460.23,-1379.52C478.47,-1372.87 496.09,-1362.62 507.5,-1346.88 562.65,-1270.78 475.65,-566.9 543.5,-501.88 619.27,-429.26 911.38,-490.9 1015.75,-501.88 1048.77,-505.35 1085.11,-512.87 1114.3,-519.86"/>
448
+ <polygon fill="#757575" stroke="#757575" points="1113.11,-523.17 1123.65,-522.14 1114.77,-516.37 1113.11,-523.17"/>
449
+ </g>
450
+ <!-- commands/projects.ts&#45;&gt;utils/formatting.ts -->
451
+ <g id="edge49" class="edge">
452
+ <title>commands/projects.ts&#45;&gt;utils/formatting.ts</title>
453
+ <path fill="none" stroke="#757575" d="M461.13,-1397C578.42,-1405.22 815.14,-1421.93 1015.75,-1436.88 1043.68,-1438.96 1074.43,-1441.32 1101.14,-1443.4"/>
454
+ <polygon fill="#757575" stroke="#757575" points="1100.57,-1446.86 1110.81,-1444.15 1101.11,-1439.88 1100.57,-1446.86"/>
455
+ </g>
456
+ <!-- utils/discovery&#45;context.ts -->
457
+ <g id="node35" class="node">
458
+ <title>utils/discovery&#45;context.ts</title>
459
+ <path fill="none" stroke="#c6c5fe" d="M698.58,-1765.75C698.58,-1765.75 551.42,-1765.75 551.42,-1765.75 547.46,-1765.75 543.5,-1761.79 543.5,-1757.83 543.5,-1757.83 543.5,-1749.92 543.5,-1749.92 543.5,-1745.96 547.46,-1742 551.42,-1742 551.42,-1742 698.58,-1742 698.58,-1742 702.54,-1742 706.5,-1745.96 706.5,-1749.92 706.5,-1749.92 706.5,-1757.83 706.5,-1757.83 706.5,-1761.79 702.54,-1765.75 698.58,-1765.75"/>
460
+ <text xml:space="preserve" text-anchor="middle" x="625" y="-1748.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/discovery&#45;context.ts</text>
461
+ </g>
462
+ <!-- commands/projects.ts&#45;&gt;utils/discovery&#45;context.ts -->
463
+ <g id="edge47" class="edge">
464
+ <title>commands/projects.ts&#45;&gt;utils/discovery&#45;context.ts</title>
465
+ <path fill="none" stroke="#757575" d="M461.39,-1390.2C478.65,-1393.42 495.47,-1400.11 507.5,-1412.88 604.12,-1515.44 454.23,-1618.85 543.5,-1727.88 545.75,-1730.63 548.3,-1733.09 551.07,-1735.3"/>
466
+ <polygon fill="#757575" stroke="#757575" points="549,-1738.13 559.28,-1740.67 552.83,-1732.27 549,-1738.13"/>
467
+ </g>
468
+ <!-- commands/resource.ts&#45;&gt;utils/validation.ts -->
469
+ <g id="edge57" class="edge">
470
+ <title>commands/resource.ts&#45;&gt;utils/validation.ts</title>
471
+ <path fill="none" stroke="#757575" d="M639.57,-2229.01C660.21,-2246.74 701.44,-2279.42 742.5,-2295.88 863.42,-2344.34 1016.2,-2360.18 1102.79,-2365.36"/>
472
+ <polygon fill="#757575" stroke="#757575" points="1102.35,-2368.84 1112.53,-2365.91 1102.75,-2361.85 1102.35,-2368.84"/>
473
+ </g>
474
+ <!-- commands/resource.ts&#45;&gt;types/index.ts -->
475
+ <g id="edge50" class="edge">
476
+ <title>commands/resource.ts&#45;&gt;types/index.ts</title>
477
+ <path fill="none" stroke="#757575" d="M626.03,-2229.09C626.88,-2277.62 637.25,-2457.66 742.5,-2530.88 842.2,-2600.22 897.71,-2559.44 1015.75,-2530.88 1263.24,-2470.99 1379.52,-2462.87 1512.75,-2245.88 1595.29,-2111.44 1597.71,-1589.88 1597.18,-1472.45"/>
478
+ <polygon fill="#757575" stroke="#757575" points="1600.68,-1472.48 1597.13,-1462.5 1593.68,-1472.52 1600.68,-1472.48"/>
479
+ </g>
480
+ <!-- commands/resource.ts&#45;&gt;utils/constants.ts -->
481
+ <g id="edge51" class="edge">
482
+ <title>commands/resource.ts&#45;&gt;utils/constants.ts</title>
483
+ <path fill="none" stroke="#757575" d="M660.37,-2204.51C732.24,-2179 904.03,-2119.81 1051.75,-2082.88 1157.14,-2056.52 1195.55,-2087.87 1292,-2037.88 1311.81,-2027.61 1308.18,-2013.13 1328,-2002.88 1335.19,-1999.15 1343.08,-1996.24 1351.1,-1993.95"/>
484
+ <polygon fill="#757575" stroke="#757575" points="1351.76,-1997.4 1360.62,-1991.58 1350.07,-1990.6 1351.76,-1997.4"/>
485
+ </g>
486
+ <!-- commands/resource.ts&#45;&gt;utils/errors.ts -->
487
+ <g id="edge52" class="edge">
488
+ <title>commands/resource.ts&#45;&gt;utils/errors.ts</title>
489
+ <path fill="none" stroke="#757575" d="M629.28,-2204.76C641.87,-2157.62 687.4,-1981.79 706.5,-1833.88 716.83,-1753.88 699.42,-1177.06 742.5,-1108.88 816.15,-992.29 932.3,-1071.66 1015.75,-961.88 1059.6,-904.19 1028.93,-871.64 1051.75,-802.88 1083.02,-708.65 1135.76,-602.49 1159.13,-557.24"/>
490
+ <polygon fill="#757575" stroke="#757575" points="1162.2,-558.92 1163.7,-548.43 1155.99,-555.69 1162.2,-558.92"/>
491
+ </g>
492
+ <!-- commands/resource.ts&#45;&gt;utils/file&#45;helpers.ts -->
493
+ <g id="edge53" class="edge">
494
+ <title>commands/resource.ts&#45;&gt;utils/file&#45;helpers.ts</title>
495
+ <path fill="none" stroke="#757575" d="M702.41,-2226C788.54,-2231.9 927.99,-2227.63 1015.75,-2153.88 1053.2,-2122.41 1020.03,-2087.11 1051.75,-2049.88 1070.18,-2028.23 1097.83,-2012.75 1121.85,-2002.43"/>
496
+ <polygon fill="#757575" stroke="#757575" points="1122.9,-2005.79 1130.83,-1998.77 1120.25,-1999.31 1122.9,-2005.79"/>
497
+ </g>
498
+ <!-- commands/resource.ts&#45;&gt;utils/formatting.ts -->
499
+ <g id="edge54" class="edge">
500
+ <title>commands/resource.ts&#45;&gt;utils/formatting.ts</title>
501
+ <path fill="none" stroke="#757575" d="M628.38,-2204.53C636.71,-2164.45 668.2,-2036.42 742.5,-1964.88 837.29,-1873.6 923.97,-1945.17 1015.75,-1850.88 1125.29,-1738.34 1159.49,-1540.03 1168.25,-1472.31"/>
502
+ <polygon fill="#757575" stroke="#757575" points="1171.69,-1473.09 1169.42,-1462.74 1164.74,-1472.24 1171.69,-1473.09"/>
503
+ </g>
504
+ <!-- commands/resource.ts&#45;&gt;utils/port&#45;assignment.ts -->
505
+ <g id="edge55" class="edge">
506
+ <title>commands/resource.ts&#45;&gt;utils/port&#45;assignment.ts</title>
507
+ <path fill="none" stroke="#757575" d="M646.59,-2229.03C669.21,-2241.61 707.06,-2260.46 742.5,-2267.88 861.37,-2292.75 904.21,-2315.9 1015.75,-2267.88 1083.86,-2238.55 1136.03,-2162.98 1158.62,-2125.55"/>
508
+ <polygon fill="#757575" stroke="#757575" points="1161.37,-2127.77 1163.42,-2117.38 1155.34,-2124.22 1161.37,-2127.77"/>
509
+ </g>
510
+ <!-- commands/resource.ts&#45;&gt;utils/services.ts -->
511
+ <g id="edge56" class="edge">
512
+ <title>commands/resource.ts&#45;&gt;utils/services.ts</title>
513
+ <path fill="none" stroke="#757575" d="M627.22,-2204.65C632.82,-2153.11 659.42,-1949.73 742.5,-1808.88 771.26,-1760.12 821.81,-1716.47 852.41,-1692.72"/>
514
+ <polygon fill="#757575" stroke="#757575" points="854.18,-1695.77 860.01,-1686.92 849.94,-1690.2 854.18,-1695.77"/>
515
+ </g>
516
+ <!-- commands/resources.ts&#45;&gt;utils/errors.ts -->
517
+ <g id="edge59" class="edge">
518
+ <title>commands/resources.ts&#45;&gt;utils/errors.ts</title>
519
+ <path fill="none" stroke="#757575" d="M467.31,-1435.03C482.64,-1431.44 497.13,-1424.72 507.5,-1412.88 571.46,-1339.84 473.72,-607.37 543.5,-539.88 583.85,-500.84 966.11,-521.44 1113.4,-530.93"/>
520
+ <polygon fill="#757575" stroke="#757575" points="1113.12,-534.42 1123.33,-531.58 1113.57,-527.44 1113.12,-534.42"/>
521
+ </g>
522
+ <!-- commands/resources.ts&#45;&gt;utils/formatting.ts -->
523
+ <g id="edge60" class="edge">
524
+ <title>commands/resources.ts&#45;&gt;utils/formatting.ts</title>
525
+ <path fill="none" stroke="#757575" d="M467.4,-1435.4C620.95,-1438.34 955.25,-1444.75 1100.81,-1447.53"/>
526
+ <polygon fill="#757575" stroke="#757575" points="1100.63,-1451.03 1110.7,-1447.72 1100.76,-1444.03 1100.63,-1451.03"/>
527
+ </g>
528
+ <!-- commands/resources.ts&#45;&gt;utils/discovery&#45;context.ts -->
529
+ <g id="edge58" class="edge">
530
+ <title>commands/resources.ts&#45;&gt;utils/discovery&#45;context.ts</title>
531
+ <path fill="none" stroke="#757575" d="M467.45,-1433.66C482.49,-1437.25 496.83,-1443.74 507.5,-1454.88 592.19,-1543.22 465.15,-1633.86 543.5,-1727.88 545.9,-1730.75 548.62,-1733.31 551.57,-1735.59"/>
532
+ <polygon fill="#757575" stroke="#757575" points="549.45,-1738.39 559.76,-1740.82 553.21,-1732.49 549.45,-1738.39"/>
533
+ </g>
534
+ <!-- commands/stack.ts&#45;&gt;utils/validation.ts -->
535
+ <g id="edge66" class="edge">
536
+ <title>commands/stack.ts&#45;&gt;utils/validation.ts</title>
537
+ <path fill="none" stroke="#757575" d="M453.41,-1632.47C473.53,-1634.95 493.91,-1641.68 507.5,-1656.88 593.73,-1753.3 472.88,-2129.5 543.5,-2237.88 662.52,-2420.52 967.02,-2399.7 1103.24,-2379.9"/>
538
+ <polygon fill="#757575" stroke="#757575" points="1103.45,-2383.41 1112.82,-2378.46 1102.41,-2376.49 1103.45,-2383.41"/>
539
+ </g>
540
+ <!-- commands/stack.ts&#45;&gt;utils/command&#45;helpers.ts -->
541
+ <g id="edge61" class="edge">
542
+ <title>commands/stack.ts&#45;&gt;utils/command&#45;helpers.ts</title>
543
+ <path fill="none" stroke="#757575" d="M453.56,-1632.56C471.91,-1629.5 491.25,-1624.13 507.5,-1614.88 528.86,-1602.71 522.07,-1584.93 543.5,-1572.88 617.01,-1531.51 713.05,-1519.22 783.38,-1516.41"/>
544
+ <polygon fill="#757575" stroke="#757575" points="783.49,-1519.91 793.36,-1516.08 783.25,-1512.92 783.49,-1519.91"/>
545
+ </g>
546
+ <!-- commands/stack.ts&#45;&gt;utils/errors.ts -->
547
+ <g id="edge63" class="edge">
548
+ <title>commands/stack.ts&#45;&gt;utils/errors.ts</title>
549
+ <path fill="none" stroke="#757575" d="M453.55,-1639.4C473.68,-1636.93 494.03,-1630.18 507.5,-1614.88 564.39,-1550.26 511.58,-920.83 543.5,-840.88 593.62,-715.34 625.4,-678.39 742.5,-610.88 774.3,-592.54 1004.76,-558.24 1113.88,-542.78"/>
550
+ <polygon fill="#757575" stroke="#757575" points="1114.08,-546.29 1123.49,-541.42 1113.1,-539.36 1114.08,-546.29"/>
551
+ </g>
552
+ <!-- commands/stack.ts&#45;&gt;utils/file&#45;helpers.ts -->
553
+ <g id="edge64" class="edge">
554
+ <title>commands/stack.ts&#45;&gt;utils/file&#45;helpers.ts</title>
555
+ <path fill="none" stroke="#757575" d="M453.47,-1633.78C473.11,-1636.44 493.19,-1642.95 507.5,-1656.88 565.03,-1712.86 505.15,-1763.35 543.5,-1833.88 602.66,-1942.66 627.86,-1982.07 742.5,-2028.88 876.33,-2083.52 1052.45,-2031.05 1130.57,-2002.13"/>
556
+ <polygon fill="#757575" stroke="#757575" points="1131.39,-2005.56 1139.51,-1998.75 1128.92,-1999.01 1131.39,-2005.56"/>
557
+ </g>
558
+ <!-- commands/stack.ts&#45;&gt;utils/formatting.ts -->
559
+ <g id="edge65" class="edge">
560
+ <title>commands/stack.ts&#45;&gt;utils/formatting.ts</title>
561
+ <path fill="none" stroke="#757575" d="M453.39,-1632.93C517.95,-1629.72 619.16,-1623.8 706.5,-1614.88 722.57,-1613.23 726.5,-1612.07 742.5,-1609.88 863.92,-1593.22 903.09,-1621.1 1015.75,-1572.88 1072.38,-1548.63 1125.52,-1497.83 1152.46,-1469.35"/>
562
+ <polygon fill="#757575" stroke="#757575" points="1154.99,-1471.77 1159.23,-1462.06 1149.86,-1467.01 1154.99,-1471.77"/>
563
+ </g>
564
+ <!-- commands/stack.ts&#45;&gt;utils/discovery&#45;context.ts -->
565
+ <g id="edge62" class="edge">
566
+ <title>commands/stack.ts&#45;&gt;utils/discovery&#45;context.ts</title>
567
+ <path fill="none" stroke="#757575" d="M453.57,-1636.54C472.44,-1639.47 492.05,-1645.43 507.5,-1656.88 535.93,-1677.93 516.6,-1704.89 543.5,-1727.88 547.37,-1731.18 551.68,-1734.07 556.22,-1736.6"/>
568
+ <polygon fill="#757575" stroke="#757575" points="554.59,-1739.7 565.11,-1740.9 557.63,-1733.39 554.59,-1739.7"/>
569
+ </g>
570
+ <!-- commands/stacks.ts&#45;&gt;utils/errors.ts -->
571
+ <g id="edge68" class="edge">
572
+ <title>commands/stacks.ts&#45;&gt;utils/errors.ts</title>
573
+ <path fill="none" stroke="#757575" d="M456.73,-1479.02C475.82,-1476.25 494.76,-1469.42 507.5,-1454.88 571.75,-1381.5 475.49,-647.78 543.5,-577.88 582.79,-537.5 966.58,-534.28 1113.79,-534.55"/>
574
+ <polygon fill="#757575" stroke="#757575" points="1113.7,-538.04 1123.71,-534.57 1113.72,-531.04 1113.7,-538.04"/>
575
+ </g>
576
+ <!-- commands/stacks.ts&#45;&gt;utils/formatting.ts -->
577
+ <g id="edge69" class="edge">
578
+ <title>commands/stacks.ts&#45;&gt;utils/formatting.ts</title>
579
+ <path fill="none" stroke="#757575" d="M456.89,-1474.26C572.64,-1471.46 812.72,-1465.18 1015.75,-1456.88 1043.69,-1455.73 1074.44,-1454.2 1101.15,-1452.79"/>
580
+ <polygon fill="#757575" stroke="#757575" points="1101.02,-1456.3 1110.82,-1452.27 1100.64,-1449.31 1101.02,-1456.3"/>
581
+ </g>
582
+ <!-- commands/stacks.ts&#45;&gt;utils/discovery&#45;context.ts -->
583
+ <g id="edge67" class="edge">
584
+ <title>commands/stacks.ts&#45;&gt;utils/discovery&#45;context.ts</title>
585
+ <path fill="none" stroke="#757575" d="M410.46,-1488.02C437.88,-1503.83 483.21,-1534.07 507.5,-1572.88 545.03,-1632.82 495.64,-1675.81 543.5,-1727.88 546.22,-1730.83 549.27,-1733.45 552.56,-1735.77"/>
586
+ <polygon fill="#757575" stroke="#757575" points="550.67,-1738.72 561.06,-1740.8 554.23,-1732.7 550.67,-1738.72"/>
587
+ </g>
588
+ <!-- commands/status.ts&#45;&gt;utils/errors.ts -->
589
+ <g id="edge71" class="edge">
590
+ <title>commands/status.ts&#45;&gt;utils/errors.ts</title>
591
+ <path fill="none" stroke="#757575" d="M395.46,-1121.71C417.7,-1086.47 481.29,-980.59 507.5,-882.88 520.7,-833.68 506.1,-460.45 543.5,-425.88 620.57,-354.64 915.69,-394.24 1015.75,-425.88 1070.97,-443.34 1123.57,-488.29 1151.06,-514.69"/>
592
+ <polygon fill="#757575" stroke="#757575" points="1148.4,-516.99 1157.99,-521.49 1153.31,-511.99 1148.4,-516.99"/>
593
+ </g>
594
+ <!-- commands/status.ts&#45;&gt;utils/formatting.ts -->
595
+ <g id="edge72" class="edge">
596
+ <title>commands/status.ts&#45;&gt;utils/formatting.ts</title>
597
+ <path fill="none" stroke="#757575" d="M419.87,-1146.1C482.15,-1169.67 623.35,-1222.96 742.5,-1266.88 863.7,-1311.54 897.78,-1313.27 1015.75,-1365.88 1060.36,-1385.77 1109.77,-1413.2 1140.58,-1430.98"/>
598
+ <polygon fill="#757575" stroke="#757575" points="1138.56,-1433.86 1148.97,-1435.86 1142.08,-1427.81 1138.56,-1433.86"/>
599
+ </g>
600
+ <!-- commands/status.ts&#45;&gt;utils/tilt.ts -->
601
+ <g id="edge73" class="edge">
602
+ <title>commands/status.ts&#45;&gt;utils/tilt.ts</title>
603
+ <path fill="none" stroke="#757575" d="M395.49,-1121.72C417.82,-1086.5 481.62,-980.68 507.5,-882.88 536.05,-774.97 475.76,-470.59 543.5,-381.88 644.3,-249.87 1206.82,-288.11 1373.09,-302.53"/>
604
+ <polygon fill="#757575" stroke="#757575" points="1372.58,-306 1382.85,-303.39 1373.2,-299.03 1372.58,-306"/>
605
+ </g>
606
+ <!-- commands/status.ts&#45;&gt;utils/discovery&#45;context.ts -->
607
+ <g id="edge70" class="edge">
608
+ <title>commands/status.ts&#45;&gt;utils/discovery&#45;context.ts</title>
609
+ <path fill="none" stroke="#757575" d="M399.49,-1145.85C424.58,-1172.05 482.77,-1237.48 507.5,-1304.88 567.47,-1468.29 457.74,-1543.4 543.5,-1694.88 553.4,-1712.36 570.84,-1726.1 586.97,-1735.92"/>
610
+ <polygon fill="#757575" stroke="#757575" points="585.02,-1738.84 595.44,-1740.76 588.5,-1732.76 585.02,-1738.84"/>
611
+ </g>
612
+ <!-- commands/ui.tsx&#45;&gt;types/index.ts -->
613
+ <g id="edge75" class="edge">
614
+ <title>commands/ui.tsx&#45;&gt;types/index.ts</title>
615
+ <path fill="none" stroke="#757575" d="M419.6,-874.12C514.54,-910.07 803.67,-1016.37 1051.75,-1074.88 1076.97,-1080.82 1493.37,-1128.67 1512.75,-1145.88 1555.33,-1183.69 1584.46,-1361.05 1593.78,-1425.44"/>
616
+ <polygon fill="#757575" stroke="#757575" points="1590.3,-1425.83 1595.17,-1435.24 1597.23,-1424.85 1590.3,-1425.83"/>
617
+ </g>
618
+ <!-- commands/ui.tsx&#45;&gt;utils/errors.ts -->
619
+ <g id="edge76" class="edge">
620
+ <title>commands/ui.tsx&#45;&gt;utils/errors.ts</title>
621
+ <path fill="none" stroke="#757575" d="M389.12,-849.63C398.49,-774.9 451.86,-381.15 543.5,-311.88 637.02,-241.18 980.03,-368.37 1015.75,-387.88 1075.36,-420.42 1129.04,-481.59 1154.79,-513.8"/>
622
+ <polygon fill="#757575" stroke="#757575" points="1152,-515.91 1160.93,-521.62 1157.5,-511.59 1152,-515.91"/>
623
+ </g>
624
+ <!-- commands/ui.tsx&#45;&gt;utils/tilt.ts -->
625
+ <g id="edge79" class="edge">
626
+ <title>commands/ui.tsx&#45;&gt;utils/tilt.ts</title>
627
+ <path fill="none" stroke="#757575" d="M392.81,-849.66C411.25,-805.79 474.29,-651.67 507.5,-518.88 532.82,-417.65 475.01,-365.6 543.5,-286.88 604.13,-217.18 651.11,-240.35 742.5,-226.88 984.99,-191.11 1052.32,-222.54 1292,-273.88 1319.09,-279.68 1349.11,-287.39 1373.19,-293.9"/>
628
+ <polygon fill="#757575" stroke="#757575" points="1372.12,-297.24 1382.69,-296.49 1373.97,-290.48 1372.12,-297.24"/>
629
+ </g>
630
+ <!-- commands/ui.tsx&#45;&gt;utils/paths.ts -->
631
+ <g id="edge77" class="edge">
632
+ <title>commands/ui.tsx&#45;&gt;utils/paths.ts</title>
633
+ <path fill="none" stroke="#757575" d="M387.69,-849.87C388.61,-782.29 400.47,-444.62 543.5,-226.88 635.64,-86.6 710.29,-51.88 878.12,-51.88 878.12,-51.88 878.12,-51.88 1172.88,-51.88 1324.31,-51.88 1376.03,-10.77 1512.75,-75.88 1543.8,-90.66 1569.07,-122.35 1583.58,-143.89"/>
634
+ <polygon fill="#757575" stroke="#757575" points="1580.62,-145.77 1588.99,-152.26 1586.5,-141.97 1580.62,-145.77"/>
635
+ </g>
636
+ <!-- commands/ui.tsx&#45;&gt;utils/services.ts -->
637
+ <g id="edge78" class="edge">
638
+ <title>commands/ui.tsx&#45;&gt;utils/services.ts</title>
639
+ <path fill="none" stroke="#757575" d="M393.79,-874C414.35,-914.29 482.69,-1047.28 543.5,-1154.88 612.84,-1277.57 648.33,-1298.5 706.5,-1426.88 728.08,-1474.5 715.2,-1494.28 742.5,-1538.88 772.05,-1587.15 822.34,-1630.96 852.68,-1654.87"/>
640
+ <polygon fill="#757575" stroke="#757575" points="850.16,-1657.35 860.21,-1660.71 854.45,-1651.82 850.16,-1657.35"/>
641
+ </g>
642
+ <!-- components/index.ts -->
643
+ <g id="node36" class="node">
644
+ <title>components/index.ts</title>
645
+ <path fill="none" stroke="#c6c5fe" d="M687.33,-873.75C687.33,-873.75 562.67,-873.75 562.67,-873.75 558.71,-873.75 554.75,-869.79 554.75,-865.83 554.75,-865.83 554.75,-857.92 554.75,-857.92 554.75,-853.96 558.71,-850 562.67,-850 562.67,-850 687.33,-850 687.33,-850 691.29,-850 695.25,-853.96 695.25,-857.92 695.25,-857.92 695.25,-865.83 695.25,-865.83 695.25,-869.79 691.29,-873.75 687.33,-873.75"/>
646
+ <text xml:space="preserve" text-anchor="middle" x="625" y="-856.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">components/index.ts</text>
647
+ </g>
648
+ <!-- commands/ui.tsx&#45;&gt;components/index.ts -->
649
+ <g id="edge74" class="edge">
650
+ <title>commands/ui.tsx&#45;&gt;components/index.ts</title>
651
+ <path fill="none" stroke="#757575" d="M446.36,-861.88C475.58,-861.88 511.37,-861.88 543.14,-861.88"/>
652
+ <polygon fill="#757575" stroke="#757575" points="543.13,-865.38 553.13,-861.88 543.13,-858.38 543.13,-865.38"/>
653
+ </g>
654
+ <!-- commands/up.ts&#45;&gt;utils/errors.ts -->
655
+ <g id="edge80" class="edge">
656
+ <title>commands/up.ts&#45;&gt;utils/errors.ts</title>
657
+ <path fill="none" stroke="#757575" d="M630.46,-1121.75C643.59,-1085.76 682.64,-976.2 706.5,-882.88 727.46,-800.87 681.64,-754.69 742.5,-695.88 830.9,-610.44 902.67,-701.11 1015.75,-652.88 1070.8,-629.39 1123.82,-582.04 1151.35,-555"/>
658
+ <polygon fill="#757575" stroke="#757575" points="1153.69,-557.61 1158.29,-548.06 1148.74,-552.66 1153.69,-557.61"/>
659
+ </g>
660
+ <!-- commands/up.ts&#45;&gt;utils/formatting.ts -->
661
+ <g id="edge81" class="edge">
662
+ <title>commands/up.ts&#45;&gt;utils/formatting.ts</title>
663
+ <path fill="none" stroke="#757575" d="M675.54,-1146.18C686.13,-1149.81 696.98,-1154.33 706.5,-1159.88 725.26,-1170.79 724.3,-1181.05 742.5,-1192.88 853.56,-1265.06 904.02,-1240.72 1015.75,-1311.88 1070.13,-1346.51 1124.49,-1399.9 1152.14,-1428.74"/>
664
+ <polygon fill="#757575" stroke="#757575" points="1149.37,-1430.9 1158.79,-1435.75 1154.45,-1426.09 1149.37,-1430.9"/>
665
+ </g>
666
+ <!-- commands/up.ts&#45;&gt;utils/tilt.ts -->
667
+ <g id="edge83" class="edge">
668
+ <title>commands/up.ts&#45;&gt;utils/tilt.ts</title>
669
+ <path fill="none" stroke="#757575" d="M641.56,-1121.72C731.38,-1051.36 1183.32,-694.63 1292,-555.88 1350.39,-481.32 1393.74,-375.85 1411.08,-329.84"/>
670
+ <polygon fill="#757575" stroke="#757575" points="1414.29,-331.24 1414.48,-320.65 1407.72,-328.81 1414.29,-331.24"/>
671
+ </g>
672
+ <!-- commands/up.ts&#45;&gt;utils/services.ts -->
673
+ <g id="edge82" class="edge">
674
+ <title>commands/up.ts&#45;&gt;utils/services.ts</title>
675
+ <path fill="none" stroke="#757575" d="M683.58,-1143.27C692.39,-1147.09 700.52,-1152.43 706.5,-1159.88 759.47,-1225.84 706.37,-1462.38 742.5,-1538.88 766.41,-1589.51 817.64,-1632 849.84,-1655.11"/>
676
+ <polygon fill="#757575" stroke="#757575" points="847.73,-1657.91 857.93,-1660.78 851.75,-1652.17 847.73,-1657.91"/>
677
+ </g>
678
+ <!-- commands/upgrade.ts&#45;&gt;utils/errors.ts -->
679
+ <g id="edge84" class="edge">
680
+ <title>commands/upgrade.ts&#45;&gt;utils/errors.ts</title>
681
+ <path fill="none" stroke="#757575" d="M899.17,-260.16C926.42,-278.18 977.49,-313.58 1015.75,-349.88 1072.74,-403.92 1129.41,-477.97 1155.7,-513.78"/>
682
+ <polygon fill="#757575" stroke="#757575" points="1152.67,-515.57 1161.39,-521.59 1158.33,-511.45 1152.67,-515.57"/>
683
+ </g>
684
+ <!-- commands/upgrade.ts&#45;&gt;utils/formatting.ts -->
685
+ <g id="edge85" class="edge">
686
+ <title>commands/upgrade.ts&#45;&gt;utils/formatting.ts</title>
687
+ <path fill="none" stroke="#757575" d="M886.11,-260.03C908.01,-305.13 984.1,-467.67 1015.75,-610.88 1060.38,-812.84 1012.1,-871.87 1051.75,-1074.88 1078.45,-1211.59 1138.47,-1368.44 1161.57,-1426.09"/>
688
+ <polygon fill="#757575" stroke="#757575" points="1158.24,-1427.19 1165.23,-1435.15 1164.73,-1424.57 1158.24,-1427.19"/>
689
+ </g>
690
+ <!-- commands/upgrade.ts&#45;&gt;utils/paths.ts -->
691
+ <g id="edge86" class="edge">
692
+ <title>commands/upgrade.ts&#45;&gt;utils/paths.ts</title>
693
+ <path fill="none" stroke="#757575" d="M954.81,-239.33C1099.1,-222.83 1413.2,-186.9 1541.11,-172.27"/>
694
+ <polygon fill="#757575" stroke="#757575" points="1541.14,-175.79 1550.67,-171.17 1540.34,-168.83 1541.14,-175.79"/>
695
+ </g>
696
+ <!-- commands/version.ts&#45;&gt;utils/paths.ts -->
697
+ <g id="edge87" class="edge">
698
+ <title>commands/version.ts&#45;&gt;utils/paths.ts</title>
699
+ <path fill="none" stroke="#757575" d="M1486.49,-24.14C1495.82,-27.63 1504.9,-32.12 1512.75,-37.88 1550.06,-65.24 1575.56,-114.5 1588.08,-143.28"/>
700
+ <polygon fill="#757575" stroke="#757575" points="1584.7,-144.28 1591.79,-152.16 1591.16,-141.58 1584.7,-144.28"/>
701
+ </g>
702
+ <!-- commands/__tests__/config.test.ts -->
703
+ <g id="node19" class="node">
704
+ <title>commands/__tests__/config.test.ts</title>
705
+ <path fill="none" stroke="#cfffac" d="M219.58,-1487.75C219.58,-1487.75 10.17,-1487.75 10.17,-1487.75 6.21,-1487.75 2.25,-1483.79 2.25,-1479.83 2.25,-1479.83 2.25,-1471.92 2.25,-1471.92 2.25,-1467.96 6.21,-1464 10.17,-1464 10.17,-1464 219.58,-1464 219.58,-1464 223.54,-1464 227.5,-1467.96 227.5,-1471.92 227.5,-1471.92 227.5,-1479.83 227.5,-1479.83 227.5,-1483.79 223.54,-1487.75 219.58,-1487.75"/>
706
+ <text xml:space="preserve" text-anchor="middle" x="114.88" y="-1470.45" font-family="Arial" font-size="14.00" fill="#cfffac">commands/__tests__/config.test.ts</text>
707
+ </g>
708
+ <!-- commands/__tests__/error&#45;handling.test.ts -->
709
+ <g id="node20" class="node">
710
+ <title>commands/__tests__/error&#45;handling.test.ts</title>
711
+ <path fill="none" stroke="#c6c5fe" d="M1007.83,-2495.75C1007.83,-2495.75 750.42,-2495.75 750.42,-2495.75 746.46,-2495.75 742.5,-2491.79 742.5,-2487.83 742.5,-2487.83 742.5,-2479.92 742.5,-2479.92 742.5,-2475.96 746.46,-2472 750.42,-2472 750.42,-2472 1007.83,-2472 1007.83,-2472 1011.79,-2472 1015.75,-2475.96 1015.75,-2479.92 1015.75,-2479.92 1015.75,-2487.83 1015.75,-2487.83 1015.75,-2491.79 1011.79,-2495.75 1007.83,-2495.75"/>
712
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-2478.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/__tests__/error&#45;handling.test.ts</text>
713
+ </g>
714
+ <!-- commands/__tests__/error&#45;handling.test.ts&#45;&gt;utils/validation.ts -->
715
+ <g id="edge18" class="edge">
716
+ <title>commands/__tests__/error&#45;handling.test.ts&#45;&gt;utils/validation.ts</title>
717
+ <path fill="none" stroke="#757575" d="M967.78,-2471.56C984,-2468.02 1000.59,-2463.54 1015.75,-2457.88 1064.23,-2439.76 1115.15,-2407.23 1144.9,-2386.64"/>
718
+ <polygon fill="#757575" stroke="#757575" points="1146.73,-2389.63 1152.91,-2381.02 1142.71,-2383.9 1146.73,-2389.63"/>
719
+ </g>
720
+ <!-- utils/validation.ts&#45;&gt;types/index.ts -->
721
+ <g id="edge139" class="edge">
722
+ <title>utils/validation.ts&#45;&gt;types/index.ts</title>
723
+ <path fill="none" stroke="#757575" d="M1214.28,-2355.55C1288.18,-2331.17 1441.69,-2269.27 1512.75,-2157.88 1587.69,-2040.39 1595.98,-1582.34 1596.89,-1472.6"/>
724
+ <polygon fill="#757575" stroke="#757575" points="1600.39,-1472.78 1596.96,-1462.76 1593.39,-1472.73 1600.39,-1472.78"/>
725
+ </g>
726
+ <!-- utils/validation.ts&#45;&gt;utils/constants.ts -->
727
+ <g id="edge140" class="edge">
728
+ <title>utils/validation.ts&#45;&gt;utils/constants.ts</title>
729
+ <path fill="none" stroke="#757575" d="M1180.8,-2355.6C1216.15,-2300.82 1359.74,-2078.29 1405.38,-2007.56"/>
730
+ <polygon fill="#757575" stroke="#757575" points="1408.3,-2009.49 1410.78,-1999.19 1402.42,-2005.69 1408.3,-2009.49"/>
731
+ </g>
732
+ <!-- commands/__tests__/project.test.ts -->
733
+ <g id="node22" class="node">
734
+ <title>commands/__tests__/project.test.ts</title>
735
+ <path fill="none" stroke="#cfffac" d="M221.83,-1529.75C221.83,-1529.75 7.92,-1529.75 7.92,-1529.75 3.96,-1529.75 0,-1525.79 0,-1521.83 0,-1521.83 0,-1513.92 0,-1513.92 0,-1509.96 3.96,-1506 7.92,-1506 7.92,-1506 221.83,-1506 221.83,-1506 225.79,-1506 229.75,-1509.96 229.75,-1513.92 229.75,-1513.92 229.75,-1521.83 229.75,-1521.83 229.75,-1525.79 225.79,-1529.75 221.83,-1529.75"/>
736
+ <text xml:space="preserve" text-anchor="middle" x="114.88" y="-1512.45" font-family="Arial" font-size="14.00" fill="#cfffac">commands/__tests__/project.test.ts</text>
737
+ </g>
738
+ <!-- commands/__tests__/resource.test.ts -->
739
+ <g id="node23" class="node">
740
+ <title>commands/__tests__/resource.test.ts</title>
741
+ <path fill="none" stroke="#c6c5fe" d="M499.58,-2455.75C499.58,-2455.75 273.67,-2455.75 273.67,-2455.75 269.71,-2455.75 265.75,-2451.79 265.75,-2447.83 265.75,-2447.83 265.75,-2439.92 265.75,-2439.92 265.75,-2435.96 269.71,-2432 273.67,-2432 273.67,-2432 499.58,-2432 499.58,-2432 503.54,-2432 507.5,-2435.96 507.5,-2439.92 507.5,-2439.92 507.5,-2447.83 507.5,-2447.83 507.5,-2451.79 503.54,-2455.75 499.58,-2455.75"/>
742
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-2438.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">commands/__tests__/resource.test.ts</text>
743
+ </g>
744
+ <!-- commands/__tests__/resource.test.ts&#45;&gt;commands/resource.ts -->
745
+ <g id="edge19" class="edge">
746
+ <title>commands/__tests__/resource.test.ts&#45;&gt;commands/resource.ts</title>
747
+ <path fill="none" stroke="#757575" d="M400.33,-2431.67C438.97,-2394.57 555.31,-2282.84 603.13,-2236.92"/>
748
+ <polygon fill="#757575" stroke="#757575" points="605.35,-2239.64 610.14,-2230.19 600.5,-2234.59 605.35,-2239.64"/>
749
+ </g>
750
+ <!-- commands/__tests__/resource.test.ts&#45;&gt;utils/validation.ts -->
751
+ <g id="edge21" class="edge">
752
+ <title>commands/__tests__/resource.test.ts&#45;&gt;utils/validation.ts</title>
753
+ <path fill="none" stroke="#757575" d="M507.98,-2449.37C635.24,-2452.84 841.31,-2451.77 1015.75,-2419.88 1056.49,-2412.43 1101.15,-2396.59 1132.04,-2384.34"/>
754
+ <polygon fill="#757575" stroke="#757575" points="1133,-2387.73 1140.96,-2380.75 1130.38,-2381.24 1133,-2387.73"/>
755
+ </g>
756
+ <!-- commands/__tests__/resource.test.ts&#45;&gt;types/index.ts -->
757
+ <g id="edge20" class="edge">
758
+ <title>commands/__tests__/resource.test.ts&#45;&gt;types/index.ts</title>
759
+ <path fill="none" stroke="#757575" d="M409.32,-2456.12C476.62,-2492.89 688.68,-2599.88 878.12,-2599.88 878.12,-2599.88 878.12,-2599.88 1172.88,-2599.88 1359.35,-2599.88 1420.33,-2515.83 1512.75,-2353.88 1602.16,-2197.19 1599.06,-1598.45 1597.38,-1472.3"/>
760
+ <polygon fill="#757575" stroke="#757575" points="1600.89,-1472.47 1597.24,-1462.52 1593.89,-1472.57 1600.89,-1472.47"/>
761
+ </g>
762
+ <!-- generator/template&#45;engine.ts&#45;&gt;types/index.ts -->
763
+ <g id="edge107" class="edge">
764
+ <title>generator/template&#45;engine.ts&#45;&gt;types/index.ts</title>
765
+ <path fill="none" stroke="#757575" d="M973.97,-1826.67C1130.16,-1819.43 1434.09,-1796.68 1512.75,-1727.88 1589.43,-1660.8 1597.61,-1526.63 1597.6,-1472.41"/>
766
+ <polygon fill="#757575" stroke="#757575" points="1601.11,-1472.47 1597.49,-1462.5 1594.11,-1472.54 1601.11,-1472.47"/>
767
+ </g>
768
+ <!-- generator/template&#45;engine.ts&#45;&gt;utils/file&#45;helpers.ts -->
769
+ <g id="edge108" class="edge">
770
+ <title>generator/template&#45;engine.ts&#45;&gt;utils/file&#45;helpers.ts</title>
771
+ <path fill="none" stroke="#757575" d="M908.3,-1842.23C936,-1854.6 979.3,-1874.52 1015.75,-1893.88 1060.72,-1917.75 1111.15,-1948.42 1141.96,-1967.61"/>
772
+ <polygon fill="#757575" stroke="#757575" points="1140,-1970.52 1150.34,-1972.85 1143.72,-1964.58 1140,-1970.52"/>
773
+ </g>
774
+ <!-- config/platform&#45;standards.ts -->
775
+ <g id="node45" class="node">
776
+ <title>config/platform&#45;standards.ts</title>
777
+ <path fill="none" stroke="#c6c5fe" d="M1255.58,-1879.75C1255.58,-1879.75 1088.17,-1879.75 1088.17,-1879.75 1084.21,-1879.75 1080.25,-1875.79 1080.25,-1871.83 1080.25,-1871.83 1080.25,-1863.92 1080.25,-1863.92 1080.25,-1859.96 1084.21,-1856 1088.17,-1856 1088.17,-1856 1255.58,-1856 1255.58,-1856 1259.54,-1856 1263.5,-1859.96 1263.5,-1863.92 1263.5,-1863.92 1263.5,-1871.83 1263.5,-1871.83 1263.5,-1875.79 1259.54,-1879.75 1255.58,-1879.75"/>
778
+ <text xml:space="preserve" text-anchor="middle" x="1171.88" y="-1862.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">config/platform&#45;standards.ts</text>
779
+ </g>
780
+ <!-- generator/template&#45;engine.ts&#45;&gt;config/platform&#45;standards.ts -->
781
+ <g id="edge106" class="edge">
782
+ <title>generator/template&#45;engine.ts&#45;&gt;config/platform&#45;standards.ts</title>
783
+ <path fill="none" stroke="#757575" d="M974.12,-1842.16C1004.41,-1846.12 1038.12,-1850.52 1068.96,-1854.55"/>
784
+ <polygon fill="#757575" stroke="#757575" points="1068.3,-1858 1078.67,-1855.82 1069.21,-1851.06 1068.3,-1858"/>
785
+ </g>
786
+ <!-- utils/command&#45;helpers.ts&#45;&gt;types/index.ts -->
787
+ <g id="edge118" class="edge">
788
+ <title>utils/command&#45;helpers.ts&#45;&gt;types/index.ts</title>
789
+ <path fill="none" stroke="#757575" d="M963.24,-1512.72C1084.39,-1504.74 1316.42,-1487.68 1512.75,-1462.88 1520.74,-1461.87 1529.13,-1460.65 1537.39,-1459.37"/>
790
+ <polygon fill="#757575" stroke="#757575" points="1537.72,-1462.87 1547.04,-1457.83 1536.61,-1455.95 1537.72,-1462.87"/>
791
+ </g>
792
+ <!-- utils/command&#45;helpers.ts&#45;&gt;utils/errors.ts -->
793
+ <g id="edge119" class="edge">
794
+ <title>utils/command&#45;helpers.ts&#45;&gt;utils/errors.ts</title>
795
+ <path fill="none" stroke="#757575" d="M886.85,-1505.65C909.58,-1463.63 983.96,-1320.74 1015.75,-1192.88 1057.75,-1023.95 1007.82,-971.31 1051.75,-802.88 1076.8,-706.84 1132.77,-601.67 1158.05,-556.96"/>
796
+ <polygon fill="#757575" stroke="#757575" points="1160.97,-558.9 1162.89,-548.48 1154.89,-555.43 1160.97,-558.9"/>
797
+ </g>
798
+ <!-- utils/command&#45;helpers.ts&#45;&gt;utils/formatting.ts -->
799
+ <g id="edge120" class="edge">
800
+ <title>utils/command&#45;helpers.ts&#45;&gt;utils/formatting.ts</title>
801
+ <path fill="none" stroke="#757575" d="M950.4,-1505.53C971.48,-1501.52 994.62,-1496.82 1015.75,-1491.88 1050.38,-1483.77 1088.9,-1473.1 1118.9,-1464.42"/>
802
+ <polygon fill="#757575" stroke="#757575" points="1119.88,-1467.78 1128.5,-1461.62 1117.92,-1461.06 1119.88,-1467.78"/>
803
+ </g>
804
+ <!-- utils/constants.ts&#45;&gt;types/index.ts -->
805
+ <g id="edge121" class="edge">
806
+ <title>utils/constants.ts&#45;&gt;types/index.ts</title>
807
+ <path fill="none" stroke="#757575" d="M1478.63,-1980.01C1491.44,-1976.11 1503.86,-1969.84 1512.75,-1959.88 1578.43,-1886.26 1593.41,-1563.37 1596.35,-1472.66"/>
808
+ <polygon fill="#757575" stroke="#757575" points="1599.85,-1472.84 1596.65,-1462.74 1592.85,-1472.63 1599.85,-1472.84"/>
809
+ </g>
810
+ <!-- utils/errors.ts&#45;&gt;utils/tilt.ts -->
811
+ <g id="edge125" class="edge">
812
+ <title>utils/errors.ts&#45;&gt;utils/tilt.ts</title>
813
+ <path fill="none" stroke="#757575" d="M1186.13,-522.62C1226.42,-485.35 1347.75,-373.13 1397.61,-327"/>
814
+ <polygon fill="#757575" stroke="#757575" points="1399.98,-329.58 1404.95,-320.22 1395.23,-324.44 1399.98,-329.58"/>
815
+ </g>
816
+ <!-- utils/errors.ts&#45;&gt;utils/paths.ts -->
817
+ <g id="edge124" class="edge">
818
+ <title>utils/errors.ts&#45;&gt;utils/paths.ts</title>
819
+ <path fill="none" stroke="#757575" d="M1204.4,-522.6C1269.41,-495.94 1420.05,-427.05 1512.75,-327.88 1551.87,-286.03 1577.74,-222.54 1589.57,-188.82"/>
820
+ <polygon fill="#757575" stroke="#757575" points="1592.79,-190.24 1592.69,-179.65 1586.16,-187.99 1592.79,-190.24"/>
821
+ </g>
822
+ <!-- utils/formatting.ts&#45;&gt;types/index.ts -->
823
+ <g id="edge126" class="edge">
824
+ <title>utils/formatting.ts&#45;&gt;types/index.ts</title>
825
+ <path fill="none" stroke="#757575" d="M1231.4,-1448.88C1311.92,-1448.88 1456.09,-1448.88 1537.25,-1448.88"/>
826
+ <polygon fill="#757575" stroke="#757575" points="1536.76,-1452.38 1546.76,-1448.88 1536.76,-1445.38 1536.76,-1452.38"/>
827
+ </g>
828
+ <!-- utils/tilt.ts&#45;&gt;types/index.ts -->
829
+ <g id="edge137" class="edge">
830
+ <title>utils/tilt.ts&#45;&gt;types/index.ts</title>
831
+ <path fill="none" stroke="#757575" d="M1423.23,-318.93C1440.31,-429.99 1570.19,-1274.56 1593.44,-1425.75"/>
832
+ <polygon fill="#757575" stroke="#757575" points="1589.94,-1425.97 1594.92,-1435.33 1596.86,-1424.91 1589.94,-1425.97"/>
833
+ </g>
834
+ <!-- utils/tilt.ts&#45;&gt;utils/paths.ts -->
835
+ <g id="edge138" class="edge">
836
+ <title>utils/tilt.ts&#45;&gt;utils/paths.ts</title>
837
+ <path fill="none" stroke="#757575" d="M1436.65,-294.61C1467.27,-270.03 1536.35,-214.57 1573.04,-185.11"/>
838
+ <polygon fill="#757575" stroke="#757575" points="1574.84,-188.15 1580.45,-179.16 1570.46,-182.69 1574.84,-188.15"/>
839
+ </g>
840
+ <!-- utils/port&#45;assignment.ts&#45;&gt;types/index.ts -->
841
+ <g id="edge127" class="edge">
842
+ <title>utils/port&#45;assignment.ts&#45;&gt;types/index.ts</title>
843
+ <path fill="none" stroke="#757575" d="M1249.92,-2104.91C1328.62,-2101.45 1448.15,-2082.84 1512.75,-2006.88 1582.99,-1924.28 1594.75,-1567.42 1596.65,-1472.27"/>
844
+ <polygon fill="#757575" stroke="#757575" points="1600.15,-1472.43 1596.82,-1462.37 1593.15,-1472.3 1600.15,-1472.43"/>
845
+ </g>
846
+ <!-- utils/port&#45;assignment.ts&#45;&gt;utils/constants.ts -->
847
+ <g id="edge128" class="edge">
848
+ <title>utils/port&#45;assignment.ts&#45;&gt;utils/constants.ts</title>
849
+ <path fill="none" stroke="#757575" d="M1250.07,-2092.1C1264.37,-2088.51 1278.91,-2083.87 1292,-2077.88 1310.19,-2069.55 1311.85,-2062.67 1328,-2050.88 1349.59,-2035.11 1374.31,-2017.55 1392.59,-2004.66"/>
850
+ <polygon fill="#757575" stroke="#757575" points="1394.36,-2007.69 1400.53,-1999.08 1390.33,-2001.97 1394.36,-2007.69"/>
851
+ </g>
852
+ <!-- utils/services.ts&#45;&gt;utils/validation.ts -->
853
+ <g id="edge136" class="edge">
854
+ <title>utils/services.ts&#45;&gt;utils/validation.ts</title>
855
+ <path fill="none" stroke="#757575" d="M898.96,-1686.16C929.44,-1707.19 988.84,-1753.25 1015.75,-1808.88 1077.31,-1936.12 1012.06,-1989.21 1051.75,-2124.88 1077.11,-2211.57 1131.57,-2305.11 1157.12,-2346.31"/>
856
+ <polygon fill="#757575" stroke="#757575" points="1154.01,-2347.94 1162.29,-2354.56 1159.94,-2344.23 1154.01,-2347.94"/>
857
+ </g>
858
+ <!-- utils/services.ts&#45;&gt;types/index.ts -->
859
+ <g id="edge131" class="edge">
860
+ <title>utils/services.ts&#45;&gt;types/index.ts</title>
861
+ <path fill="none" stroke="#757575" d="M933.24,-1664.26C958.4,-1659.37 988.77,-1652.95 1015.75,-1645.88 1240.07,-1587.01 1296.25,-1570.02 1512.75,-1486.88 1529.02,-1480.63 1546.66,-1472.84 1561.56,-1465.94"/>
862
+ <polygon fill="#757575" stroke="#757575" points="1562.94,-1469.16 1570.51,-1461.75 1559.97,-1462.82 1562.94,-1469.16"/>
863
+ </g>
864
+ <!-- utils/services.ts&#45;&gt;utils/constants.ts -->
865
+ <g id="edge132" class="edge">
866
+ <title>utils/services.ts&#45;&gt;utils/constants.ts</title>
867
+ <path fill="none" stroke="#757575" d="M933.28,-1674.47C1017.36,-1677.96 1182.66,-1695.45 1292,-1775.88 1358.25,-1824.6 1396.97,-1919.1 1412.04,-1962.75"/>
868
+ <polygon fill="#757575" stroke="#757575" points="1408.71,-1963.82 1415.19,-1972.2 1415.35,-1961.6 1408.71,-1963.82"/>
869
+ </g>
870
+ <!-- utils/services.ts&#45;&gt;utils/errors.ts -->
871
+ <g id="edge133" class="edge">
872
+ <title>utils/services.ts&#45;&gt;utils/errors.ts</title>
873
+ <path fill="none" stroke="#757575" d="M899.62,-1661.61C930.75,-1640.77 990.72,-1595.19 1015.75,-1538.88 1082.27,-1389.24 1013.85,-962.18 1051.75,-802.88 1074.72,-706.32 1131.78,-601.42 1157.69,-556.87"/>
874
+ <polygon fill="#757575" stroke="#757575" points="1160.61,-558.82 1162.66,-548.42 1154.58,-555.27 1160.61,-558.82"/>
875
+ </g>
876
+ <!-- utils/services.ts&#45;&gt;utils/formatting.ts -->
877
+ <g id="edge134" class="edge">
878
+ <title>utils/services.ts&#45;&gt;utils/formatting.ts</title>
879
+ <path fill="none" stroke="#757575" d="M933.23,-1672.49C959.68,-1669.71 991.17,-1663.06 1015.75,-1647.88 1038.14,-1634.05 1035.63,-1621.67 1051.75,-1600.88 1088.09,-1553.97 1131.13,-1499.26 1154.22,-1469.97"/>
880
+ <polygon fill="#757575" stroke="#757575" points="1156.87,-1472.26 1160.32,-1462.24 1151.38,-1467.93 1156.87,-1472.26"/>
881
+ </g>
882
+ <!-- utils/services.ts&#45;&gt;utils/paths.ts -->
883
+ <g id="edge135" class="edge">
884
+ <title>utils/services.ts&#45;&gt;utils/paths.ts</title>
885
+ <path fill="none" stroke="#757575" d="M899.48,-1661.55C930.41,-1640.62 990.09,-1594.91 1015.75,-1538.88 1062.68,-1436.38 986.9,-1125.08 1051.75,-1032.88 1128.97,-923.09 1200.69,-953.38 1328,-910.88 1407.97,-884.17 1456.48,-930.65 1512.75,-867.88 1559.14,-816.11 1589.4,-306.37 1595.75,-189.62"/>
886
+ <polygon fill="#757575" stroke="#757575" points="1599.24,-189.87 1596.28,-179.7 1592.25,-189.5 1599.24,-189.87"/>
887
+ </g>
888
+ <!-- utils/discovery&#45;context.ts&#45;&gt;types/index.ts -->
889
+ <g id="edge122" class="edge">
890
+ <title>utils/discovery&#45;context.ts&#45;&gt;types/index.ts</title>
891
+ <path fill="none" stroke="#757575" d="M671.54,-1766.23C684.72,-1771.96 697.87,-1780.19 706.5,-1791.88 773.45,-1882.53 667.6,-1958.67 742.5,-2042.88 856.32,-2170.82 1399.49,-2194.31 1512.75,-2065.88 1592.46,-1975.48 1597.23,-1574.51 1597.14,-1472.53"/>
892
+ <polygon fill="#757575" stroke="#757575" points="1600.64,-1472.64 1597.11,-1462.65 1593.64,-1472.66 1600.64,-1472.64"/>
893
+ </g>
894
+ <!-- utils/discovery&#45;context.ts&#45;&gt;utils/services.ts -->
895
+ <g id="edge123" class="edge">
896
+ <title>utils/discovery&#45;context.ts&#45;&gt;utils/services.ts</title>
897
+ <path fill="none" stroke="#757575" d="M664.84,-1741.55C708.8,-1727.6 780.5,-1704.85 828.48,-1689.63"/>
898
+ <polygon fill="#757575" stroke="#757575" points="829.32,-1693.03 837.8,-1686.67 827.21,-1686.36 829.32,-1693.03"/>
899
+ </g>
900
+ <!-- components/Accessible.tsx -->
901
+ <g id="node37" class="node">
902
+ <title>components/Accessible.tsx</title>
903
+ <path fill="none" stroke="#c6c5fe" d="M1253.71,-1065.75C1253.71,-1065.75 1090.04,-1065.75 1090.04,-1065.75 1086.08,-1065.75 1082.12,-1061.79 1082.12,-1057.83 1082.12,-1057.83 1082.12,-1049.92 1082.12,-1049.92 1082.12,-1045.96 1086.08,-1042 1090.04,-1042 1090.04,-1042 1253.71,-1042 1253.71,-1042 1257.67,-1042 1261.62,-1045.96 1261.62,-1049.92 1261.62,-1049.92 1261.62,-1057.83 1261.62,-1057.83 1261.62,-1061.79 1257.67,-1065.75 1253.71,-1065.75"/>
904
+ <text xml:space="preserve" text-anchor="middle" x="1171.88" y="-1048.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">components/Accessible.tsx</text>
905
+ </g>
906
+ <!-- components/index.ts&#45;&gt;components/Accessible.tsx -->
907
+ <g id="edge98" class="edge">
908
+ <title>components/index.ts&#45;&gt;components/Accessible.tsx</title>
909
+ <path fill="none" stroke="#757575" d="M660.91,-874.18C755.85,-907.63 1018.71,-1000.26 1125.2,-1037.78"/>
910
+ <polygon fill="#757575" stroke="#757575" points="1123.88,-1041.03 1134.47,-1041.05 1126.2,-1034.42 1123.88,-1041.03"/>
911
+ </g>
912
+ <!-- components/DetailPanel.tsx -->
913
+ <g id="node39" class="node">
914
+ <title>components/DetailPanel.tsx</title>
915
+ <path fill="none" stroke="#c6c5fe" d="M963.21,-1141.75C963.21,-1141.75 795.04,-1141.75 795.04,-1141.75 791.08,-1141.75 787.12,-1137.79 787.12,-1133.83 787.12,-1133.83 787.12,-1125.92 787.12,-1125.92 787.12,-1121.96 791.08,-1118 795.04,-1118 795.04,-1118 963.21,-1118 963.21,-1118 967.17,-1118 971.12,-1121.96 971.12,-1125.92 971.12,-1125.92 971.12,-1133.83 971.12,-1133.83 971.12,-1137.79 967.17,-1141.75 963.21,-1141.75"/>
916
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-1124.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">components/DetailPanel.tsx</text>
917
+ </g>
918
+ <!-- components/index.ts&#45;&gt;components/DetailPanel.tsx -->
919
+ <g id="edge99" class="edge">
920
+ <title>components/index.ts&#45;&gt;components/DetailPanel.tsx</title>
921
+ <path fill="none" stroke="#757575" d="M637.49,-874.09C677.19,-916.29 808.91,-1056.3 858.77,-1109.3"/>
922
+ <polygon fill="#757575" stroke="#757575" points="856.13,-1111.6 865.53,-1116.49 861.23,-1106.81 856.13,-1111.6"/>
923
+ </g>
924
+ <!-- components/FileTree.tsx -->
925
+ <g id="node40" class="node">
926
+ <title>components/FileTree.tsx</title>
927
+ <path fill="none" stroke="#c6c5fe" d="M1494.71,-1023.75C1494.71,-1023.75 1346.04,-1023.75 1346.04,-1023.75 1342.08,-1023.75 1338.12,-1019.79 1338.12,-1015.83 1338.12,-1015.83 1338.12,-1007.92 1338.12,-1007.92 1338.12,-1003.96 1342.08,-1000 1346.04,-1000 1346.04,-1000 1494.71,-1000 1494.71,-1000 1498.67,-1000 1502.62,-1003.96 1502.62,-1007.92 1502.62,-1007.92 1502.62,-1015.83 1502.62,-1015.83 1502.62,-1019.79 1498.67,-1023.75 1494.71,-1023.75"/>
928
+ <text xml:space="preserve" text-anchor="middle" x="1420.38" y="-1006.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">components/FileTree.tsx</text>
929
+ </g>
930
+ <!-- components/index.ts&#45;&gt;components/FileTree.tsx -->
931
+ <g id="edge100" class="edge">
932
+ <title>components/index.ts&#45;&gt;components/FileTree.tsx</title>
933
+ <path fill="none" stroke="#757575" d="M695.51,-864.73C773.88,-868.82 904.82,-878.25 1015.75,-898.88 1024.52,-900.5 1256.6,-965.92 1364.8,-996.46"/>
934
+ <polygon fill="#757575" stroke="#757575" points="1363.77,-999.81 1374.35,-999.16 1365.68,-993.07 1363.77,-999.81"/>
935
+ </g>
936
+ <!-- components/ResourceSelectInput.tsx -->
937
+ <g id="node41" class="node">
938
+ <title>components/ResourceSelectInput.tsx</title>
939
+ <path fill="none" stroke="#c6c5fe" d="M1284.08,-835.75C1284.08,-835.75 1059.67,-835.75 1059.67,-835.75 1055.71,-835.75 1051.75,-831.79 1051.75,-827.83 1051.75,-827.83 1051.75,-819.92 1051.75,-819.92 1051.75,-815.96 1055.71,-812 1059.67,-812 1059.67,-812 1284.08,-812 1284.08,-812 1288.04,-812 1292,-815.96 1292,-819.92 1292,-819.92 1292,-827.83 1292,-827.83 1292,-831.79 1288.04,-835.75 1284.08,-835.75"/>
940
+ <text xml:space="preserve" text-anchor="middle" x="1171.88" y="-818.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">components/ResourceSelectInput.tsx</text>
941
+ </g>
942
+ <!-- components/index.ts&#45;&gt;components/ResourceSelectInput.tsx -->
943
+ <g id="edge101" class="edge">
944
+ <title>components/index.ts&#45;&gt;components/ResourceSelectInput.tsx</title>
945
+ <path fill="none" stroke="#757575" d="M695.54,-852.78C710.98,-850.97 727.28,-849.21 742.5,-847.88 842.27,-839.09 955.42,-832.92 1040.36,-829.03"/>
946
+ <polygon fill="#757575" stroke="#757575" points="1040.28,-832.54 1050.11,-828.59 1039.97,-825.54 1040.28,-832.54"/>
947
+ </g>
948
+ <!-- components/ResourceTable.tsx -->
949
+ <g id="node42" class="node">
950
+ <title>components/ResourceTable.tsx</title>
951
+ <path fill="none" stroke="#c6c5fe" d="M973.71,-1183.75C973.71,-1183.75 784.54,-1183.75 784.54,-1183.75 780.58,-1183.75 776.62,-1179.79 776.62,-1175.83 776.62,-1175.83 776.62,-1167.92 776.62,-1167.92 776.62,-1163.96 780.58,-1160 784.54,-1160 784.54,-1160 973.71,-1160 973.71,-1160 977.67,-1160 981.62,-1163.96 981.62,-1167.92 981.62,-1167.92 981.62,-1175.83 981.62,-1175.83 981.62,-1179.79 977.67,-1183.75 973.71,-1183.75"/>
952
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-1166.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">components/ResourceTable.tsx</text>
953
+ </g>
954
+ <!-- components/index.ts&#45;&gt;components/ResourceTable.tsx -->
955
+ <g id="edge102" class="edge">
956
+ <title>components/index.ts&#45;&gt;components/ResourceTable.tsx</title>
957
+ <path fill="none" stroke="#757575" d="M629.22,-874.18C642.63,-924.49 695.56,-1113.64 742.5,-1150.88 749.46,-1156.39 757.26,-1160.75 765.52,-1164.17"/>
958
+ <polygon fill="#757575" stroke="#757575" points="764.18,-1167.4 774.77,-1167.49 766.55,-1160.82 764.18,-1167.4"/>
959
+ </g>
960
+ <!-- components/TabBar.tsx -->
961
+ <g id="node43" class="node">
962
+ <title>components/TabBar.tsx</title>
963
+ <path fill="none" stroke="#c6c5fe" d="M1490.96,-943.75C1490.96,-943.75 1349.79,-943.75 1349.79,-943.75 1345.83,-943.75 1341.88,-939.79 1341.88,-935.83 1341.88,-935.83 1341.88,-927.92 1341.88,-927.92 1341.88,-923.96 1345.83,-920 1349.79,-920 1349.79,-920 1490.96,-920 1490.96,-920 1494.92,-920 1498.88,-923.96 1498.88,-927.92 1498.88,-927.92 1498.88,-935.83 1498.88,-935.83 1498.88,-939.79 1494.92,-943.75 1490.96,-943.75"/>
964
+ <text xml:space="preserve" text-anchor="middle" x="1420.38" y="-926.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">components/TabBar.tsx</text>
965
+ </g>
966
+ <!-- components/index.ts&#45;&gt;components/TabBar.tsx -->
967
+ <g id="edge103" class="edge">
968
+ <title>components/index.ts&#45;&gt;components/TabBar.tsx</title>
969
+ <path fill="none" stroke="#757575" d="M656.41,-849.5C753.58,-811.94 1063.61,-707.42 1292,-802.88 1344.18,-824.68 1385.86,-879.43 1406.08,-910.13"/>
970
+ <polygon fill="#757575" stroke="#757575" points="1402.94,-911.73 1411.28,-918.27 1408.84,-907.96 1402.94,-911.73"/>
971
+ </g>
972
+ <!-- components/Tooltip.tsx -->
973
+ <g id="node44" class="node">
974
+ <title>components/Tooltip.tsx</title>
975
+ <path fill="none" stroke="#cfffac" d="M948.21,-643.75C948.21,-643.75 810.04,-643.75 810.04,-643.75 806.08,-643.75 802.12,-639.79 802.12,-635.83 802.12,-635.83 802.12,-627.92 802.12,-627.92 802.12,-623.96 806.08,-620 810.04,-620 810.04,-620 948.21,-620 948.21,-620 952.17,-620 956.12,-623.96 956.12,-627.92 956.12,-627.92 956.12,-635.83 956.12,-635.83 956.12,-639.79 952.17,-643.75 948.21,-643.75"/>
976
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-626.45" font-family="Arial" font-size="14.00" fill="#cfffac">components/Tooltip.tsx</text>
977
+ </g>
978
+ <!-- components/index.ts&#45;&gt;components/Tooltip.tsx -->
979
+ <g id="edge104" class="edge">
980
+ <title>components/index.ts&#45;&gt;components/Tooltip.tsx</title>
981
+ <path fill="none" stroke="#757575" d="M629.11,-849.56C638.91,-813.55 672.66,-707.8 742.5,-657.88 756.58,-647.81 773.5,-641.35 790.55,-637.27"/>
982
+ <polygon fill="#757575" stroke="#757575" points="791.19,-640.71 800.25,-635.23 789.75,-633.86 791.19,-640.71"/>
983
+ </g>
984
+ <!-- components/Accessible.tsx&#45;&gt;types/index.ts -->
985
+ <g id="edge89" class="edge">
986
+ <title>components/Accessible.tsx&#45;&gt;types/index.ts</title>
987
+ <path fill="none" stroke="#757575" d="M1261.77,-1065.6C1356.24,-1078.84 1494.53,-1100.77 1512.75,-1117.88 1558.33,-1160.67 1585.99,-1357.56 1594.32,-1425.64"/>
988
+ <polygon fill="#757575" stroke="#757575" points="1590.81,-1425.77 1595.47,-1435.28 1597.76,-1424.94 1590.81,-1425.77"/>
989
+ </g>
990
+ <!-- components/BaseTooltip.tsx -->
991
+ <g id="node38" class="node">
992
+ <title>components/BaseTooltip.tsx</title>
993
+ <path fill="none" stroke="#c6c5fe" d="M1504.83,-1065.75C1504.83,-1065.75 1335.92,-1065.75 1335.92,-1065.75 1331.96,-1065.75 1328,-1061.79 1328,-1057.83 1328,-1057.83 1328,-1049.92 1328,-1049.92 1328,-1045.96 1331.96,-1042 1335.92,-1042 1335.92,-1042 1504.83,-1042 1504.83,-1042 1508.79,-1042 1512.75,-1045.96 1512.75,-1049.92 1512.75,-1049.92 1512.75,-1057.83 1512.75,-1057.83 1512.75,-1061.79 1508.79,-1065.75 1504.83,-1065.75"/>
994
+ <text xml:space="preserve" text-anchor="middle" x="1420.38" y="-1048.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">components/BaseTooltip.tsx</text>
995
+ </g>
996
+ <!-- components/Accessible.tsx&#45;&gt;components/BaseTooltip.tsx -->
997
+ <g id="edge88" class="edge">
998
+ <title>components/Accessible.tsx&#45;&gt;components/BaseTooltip.tsx</title>
999
+ <path fill="none" stroke="#757575" d="M1261.87,-1053.88C1279.48,-1053.88 1298.12,-1053.88 1316.16,-1053.88"/>
1000
+ <polygon fill="#757575" stroke="#757575" points="1316.1,-1057.38 1326.1,-1053.88 1316.1,-1050.38 1316.1,-1057.38"/>
1001
+ </g>
1002
+ <!-- components/BaseTooltip.tsx&#45;&gt;types/index.ts -->
1003
+ <g id="edge90" class="edge">
1004
+ <title>components/BaseTooltip.tsx&#45;&gt;types/index.ts</title>
1005
+ <path fill="none" stroke="#757575" d="M1493.53,-1066.1C1500.68,-1069.63 1507.3,-1074.13 1512.75,-1079.88 1560.95,-1130.69 1587.3,-1352.73 1594.76,-1425.61"/>
1006
+ <polygon fill="#757575" stroke="#757575" points="1591.24,-1425.59 1595.72,-1435.19 1598.21,-1424.89 1591.24,-1425.59"/>
1007
+ </g>
1008
+ <!-- components/DetailPanel.tsx&#45;&gt;types/index.ts -->
1009
+ <g id="edge91" class="edge">
1010
+ <title>components/DetailPanel.tsx&#45;&gt;types/index.ts</title>
1011
+ <path fill="none" stroke="#757575" d="M971.33,-1128.79C1126.14,-1128.81 1431.48,-1137.44 1512.75,-1202.88 1582.3,-1258.87 1594.67,-1375.18 1596.7,-1425.18"/>
1012
+ <polygon fill="#757575" stroke="#757575" points="1593.2,-1425.24 1596.98,-1435.14 1600.2,-1425.04 1593.2,-1425.24"/>
1013
+ </g>
1014
+ <!-- components/DetailPanel.tsx&#45;&gt;utils/formatting.ts -->
1015
+ <g id="edge92" class="edge">
1016
+ <title>components/DetailPanel.tsx&#45;&gt;utils/formatting.ts</title>
1017
+ <path fill="none" stroke="#757575" d="M971.53,-1132.1C987.31,-1135.7 1002.78,-1141.57 1015.75,-1150.88 1065.39,-1186.48 1137.65,-1363.32 1162.28,-1426.44"/>
1018
+ <polygon fill="#757575" stroke="#757575" points="1158.89,-1427.37 1165.76,-1435.43 1165.42,-1424.84 1158.89,-1427.37"/>
1019
+ </g>
1020
+ <!-- components/FileTree.tsx&#45;&gt;types/index.ts -->
1021
+ <g id="edge93" class="edge">
1022
+ <title>components/FileTree.tsx&#45;&gt;types/index.ts</title>
1023
+ <path fill="none" stroke="#757575" d="M1501.73,-1024.15C1505.74,-1026.61 1509.46,-1029.49 1512.75,-1032.88 1568.27,-1089.86 1590.07,-1346.72 1595.54,-1425.7"/>
1024
+ <polygon fill="#757575" stroke="#757575" points="1592.02,-1425.53 1596.17,-1435.28 1599,-1425.07 1592.02,-1425.53"/>
1025
+ </g>
1026
+ <!-- components/ResourceSelectInput.tsx&#45;&gt;types/index.ts -->
1027
+ <g id="edge94" class="edge">
1028
+ <title>components/ResourceSelectInput.tsx&#45;&gt;types/index.ts</title>
1029
+ <path fill="none" stroke="#757575" d="M1187.12,-836.04C1223.91,-867.42 1319.85,-948.96 1328,-952.88 1403.55,-989.21 1454.1,-930.98 1512.75,-990.88 1574.36,-1053.78 1592.12,-1341.21 1596.05,-1425.55"/>
1030
+ <polygon fill="#757575" stroke="#757575" points="1592.54,-1425.52 1596.48,-1435.36 1599.54,-1425.22 1592.54,-1425.52"/>
1031
+ </g>
1032
+ <!-- components/ResourceTable.tsx&#45;&gt;types/index.ts -->
1033
+ <g id="edge95" class="edge">
1034
+ <title>components/ResourceTable.tsx&#45;&gt;types/index.ts</title>
1035
+ <path fill="none" stroke="#757575" d="M981.81,-1179.33C1157.98,-1192.44 1502.29,-1218.97 1512.75,-1226.88 1576.91,-1275.39 1592.21,-1378.91 1595.86,-1425.41"/>
1036
+ <polygon fill="#757575" stroke="#757575" points="1592.35,-1425.41 1596.5,-1435.16 1599.33,-1424.95 1592.35,-1425.41"/>
1037
+ </g>
1038
+ <!-- components/ResourceTable.tsx&#45;&gt;utils/formatting.ts -->
1039
+ <g id="edge96" class="edge">
1040
+ <title>components/ResourceTable.tsx&#45;&gt;utils/formatting.ts</title>
1041
+ <path fill="none" stroke="#757575" d="M918.7,-1184.18C947.56,-1194.71 986.86,-1211.98 1015.75,-1235.88 1083.7,-1292.09 1137.28,-1384.42 1159.6,-1426.6"/>
1042
+ <polygon fill="#757575" stroke="#757575" points="1156.4,-1428.05 1164.12,-1435.3 1162.61,-1424.82 1156.4,-1428.05"/>
1043
+ </g>
1044
+ <!-- components/TabBar.tsx&#45;&gt;types/index.ts -->
1045
+ <g id="edge97" class="edge">
1046
+ <title>components/TabBar.tsx&#45;&gt;types/index.ts</title>
1047
+ <path fill="none" stroke="#757575" d="M1494.28,-944.04C1501.21,-947.58 1507.57,-952.11 1512.75,-957.88 1575.96,-1028.25 1592.66,-1336.84 1596.18,-1425.17"/>
1048
+ <polygon fill="#757575" stroke="#757575" points="1592.68,-1425.18 1596.55,-1435.04 1599.67,-1424.92 1592.68,-1425.18"/>
1049
+ </g>
1050
+ <!-- config/platform&#45;standards.ts&#45;&gt;utils/constants.ts -->
1051
+ <g id="edge105" class="edge">
1052
+ <title>config/platform&#45;standards.ts&#45;&gt;utils/constants.ts</title>
1053
+ <path fill="none" stroke="#757575" d="M1251.57,-1880.24C1265.36,-1883.75 1279.34,-1888.22 1292,-1893.88 1333.08,-1912.23 1374.09,-1945.12 1398.08,-1966.2"/>
1054
+ <polygon fill="#757575" stroke="#757575" points="1395.49,-1968.58 1405.28,-1972.63 1400.16,-1963.36 1395.49,-1968.58"/>
1055
+ </g>
1056
+ <!-- index.ts -->
1057
+ <g id="node46" class="node">
1058
+ <title>index.ts</title>
1059
+ <path fill="none" stroke="#c6c5fe" d="M409.96,-1337.75C409.96,-1337.75 363.29,-1337.75 363.29,-1337.75 359.33,-1337.75 355.38,-1333.79 355.38,-1329.83 355.38,-1329.83 355.38,-1321.92 355.38,-1321.92 355.38,-1317.96 359.33,-1314 363.29,-1314 363.29,-1314 409.96,-1314 409.96,-1314 413.92,-1314 417.88,-1317.96 417.88,-1321.92 417.88,-1321.92 417.88,-1329.83 417.88,-1329.83 417.88,-1333.79 413.92,-1337.75 409.96,-1337.75"/>
1060
+ <text xml:space="preserve" text-anchor="middle" x="386.62" y="-1320.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">index.ts</text>
1061
+ </g>
1062
+ <!-- index.ts&#45;&gt;types/index.ts -->
1063
+ <g id="edge109" class="edge">
1064
+ <title>index.ts&#45;&gt;types/index.ts</title>
1065
+ <path fill="none" stroke="#757575" d="M417.98,-1326.8C474.7,-1328.63 600.6,-1333.1 706.5,-1339.88 844.15,-1348.68 878.7,-1350.34 1015.75,-1365.88 1206.85,-1387.53 1432,-1422.35 1537.2,-1439.17"/>
1066
+ <polygon fill="#757575" stroke="#757575" points="1536.59,-1442.62 1547.02,-1440.74 1537.7,-1435.7 1536.59,-1442.62"/>
1067
+ </g>
1068
+ <!-- index.ts&#45;&gt;utils/command&#45;helpers.ts -->
1069
+ <g id="edge110" class="edge">
1070
+ <title>index.ts&#45;&gt;utils/command&#45;helpers.ts</title>
1071
+ <path fill="none" stroke="#757575" d="M418.23,-1337.19C442.49,-1346.2 477.22,-1359.19 507.5,-1370.88 627.95,-1417.37 769.63,-1474.15 837.66,-1501.54"/>
1072
+ <polygon fill="#757575" stroke="#757575" points="835.95,-1504.62 846.53,-1505.12 838.56,-1498.13 835.95,-1504.62"/>
1073
+ </g>
1074
+ <!-- index.ts&#45;&gt;utils/errors.ts -->
1075
+ <g id="edge112" class="edge">
1076
+ <title>index.ts&#45;&gt;utils/errors.ts</title>
1077
+ <path fill="none" stroke="#757575" d="M400.09,-1313.57C425.79,-1287.26 484.24,-1222.4 507.5,-1154.88 532.54,-1082.18 487.74,-516.81 543.5,-463.88 619.61,-391.62 913.21,-441.52 1015.75,-463.88 1062.09,-473.98 1111.15,-499.22 1141.39,-516.71"/>
1078
+ <polygon fill="#757575" stroke="#757575" points="1139.58,-519.7 1149.97,-521.76 1143.13,-513.67 1139.58,-519.7"/>
1079
+ </g>
1080
+ <!-- index.ts&#45;&gt;utils/formatting.ts -->
1081
+ <g id="edge113" class="edge">
1082
+ <title>index.ts&#45;&gt;utils/formatting.ts</title>
1083
+ <path fill="none" stroke="#757575" d="M418.18,-1329.11C509.4,-1339 787.6,-1370.69 1015.75,-1412.88 1047.67,-1418.78 1082.94,-1426.84 1111.78,-1433.84"/>
1084
+ <polygon fill="#757575" stroke="#757575" points="1110.88,-1437.22 1121.43,-1436.2 1112.55,-1430.42 1110.88,-1437.22"/>
1085
+ </g>
1086
+ <!-- index.ts&#45;&gt;utils/tilt.ts -->
1087
+ <g id="edge117" class="edge">
1088
+ <title>index.ts&#45;&gt;utils/tilt.ts</title>
1089
+ <path fill="none" stroke="#757575" d="M400.1,-1313.58C425.84,-1287.28 484.34,-1222.44 507.5,-1154.88 533.94,-1077.74 488.24,-481.83 543.5,-421.88 572.03,-390.92 1195.93,-328.47 1372.94,-311.32"/>
1090
+ <polygon fill="#757575" stroke="#757575" points="1373.06,-314.82 1382.67,-310.38 1372.38,-307.86 1373.06,-314.82"/>
1091
+ </g>
1092
+ <!-- index.ts&#45;&gt;utils/paths.ts -->
1093
+ <g id="edge114" class="edge">
1094
+ <title>index.ts&#45;&gt;utils/paths.ts</title>
1095
+ <path fill="none" stroke="#757575" d="M400.11,-1313.58C425.87,-1287.29 484.42,-1222.47 507.5,-1154.88 562.92,-992.56 485.42,-545.26 543.5,-383.88 584.34,-270.38 634.57,-263.7 706.5,-166.88 722.62,-145.18 718.39,-130.08 742.5,-117.88 851.45,-62.73 1169.99,-115.8 1292,-120.88 1390.28,-124.97 1416.38,-117.15 1512.75,-136.88 1527.46,-139.89 1543.12,-144.78 1556.91,-149.7"/>
1096
+ <polygon fill="#757575" stroke="#757575" points="1555.49,-152.91 1566.08,-153.09 1557.91,-146.34 1555.49,-152.91"/>
1097
+ </g>
1098
+ <!-- index.ts&#45;&gt;utils/services.ts -->
1099
+ <g id="edge116" class="edge">
1100
+ <title>index.ts&#45;&gt;utils/services.ts</title>
1101
+ <path fill="none" stroke="#757575" d="M418.31,-1331.47C444.39,-1337.51 481.63,-1349.31 507.5,-1370.88 531.39,-1390.78 522.49,-1407.94 543.5,-1430.88 637.67,-1533.69 781.52,-1620.34 845.49,-1656.2"/>
1102
+ <polygon fill="#757575" stroke="#757575" points="843.65,-1659.18 854.09,-1660.97 847.05,-1653.06 843.65,-1659.18"/>
1103
+ </g>
1104
+ <!-- index.ts&#45;&gt;utils/discovery&#45;context.ts -->
1105
+ <g id="edge111" class="edge">
1106
+ <title>index.ts&#45;&gt;utils/discovery&#45;context.ts</title>
1107
+ <path fill="none" stroke="#757575" d="M418.26,-1328.49C446.2,-1332.63 486.28,-1343.31 507.5,-1370.88 604.78,-1497.24 443.29,-1603.82 543.5,-1727.88 545.74,-1730.64 548.27,-1733.12 551.02,-1735.33"/>
1108
+ <polygon fill="#757575" stroke="#757575" points="548.94,-1738.15 559.21,-1740.73 552.79,-1732.3 548.94,-1738.15"/>
1109
+ </g>
1110
+ <!-- utils/resource&#45;generator.ts -->
1111
+ <g id="node47" class="node">
1112
+ <title>utils/resource&#45;generator.ts</title>
1113
+ <path fill="none" stroke="#c6c5fe" d="M957.21,-1997.75C957.21,-1997.75 801.04,-1997.75 801.04,-1997.75 797.08,-1997.75 793.12,-1993.79 793.12,-1989.83 793.12,-1989.83 793.12,-1981.92 793.12,-1981.92 793.12,-1977.96 797.08,-1974 801.04,-1974 801.04,-1974 957.21,-1974 957.21,-1974 961.17,-1974 965.12,-1977.96 965.12,-1981.92 965.12,-1981.92 965.12,-1989.83 965.12,-1989.83 965.12,-1993.79 961.17,-1997.75 957.21,-1997.75"/>
1114
+ <text xml:space="preserve" text-anchor="middle" x="879.12" y="-1980.45" font-family="Arial" font-size="14.00" fill="#c6c5fe">utils/resource&#45;generator.ts</text>
1115
+ </g>
1116
+ <!-- index.ts&#45;&gt;utils/resource&#45;generator.ts -->
1117
+ <g id="edge115" class="edge">
1118
+ <title>index.ts&#45;&gt;utils/resource&#45;generator.ts</title>
1119
+ <path fill="none" stroke="#757575" d="M418.19,-1328.54C446.09,-1332.71 486.14,-1343.42 507.5,-1370.88 596.47,-1485.23 447.29,-1586.54 543.5,-1694.88 592.9,-1750.49 654.82,-1679.37 706.5,-1732.88 764.09,-1792.5 692.71,-1849.6 742.5,-1915.88 761.97,-1941.8 793.82,-1958.93 821.76,-1969.76"/>
1120
+ <polygon fill="#757575" stroke="#757575" points="820.23,-1972.92 830.82,-1973.08 822.64,-1966.35 820.23,-1972.92"/>
1121
+ </g>
1122
+ <!-- utils/resource&#45;generator.ts&#45;&gt;types/index.ts -->
1123
+ <g id="edge129" class="edge">
1124
+ <title>utils/resource&#45;generator.ts&#45;&gt;types/index.ts</title>
1125
+ <path fill="none" stroke="#757575" d="M957.72,-1973.56C1041.8,-1958.85 1179.07,-1930.84 1292,-1888.88 1395.7,-1850.34 1443.87,-1860.44 1512.75,-1773.88 1586.64,-1681.01 1596.29,-1530.29 1597.14,-1472.48"/>
1126
+ <polygon fill="#757575" stroke="#757575" points="1600.64,-1472.55 1597.2,-1462.53 1593.64,-1472.51 1600.64,-1472.55"/>
1127
+ </g>
1128
+ <!-- utils/resource&#45;generator.ts&#45;&gt;utils/file&#45;helpers.ts -->
1129
+ <g id="edge130" class="edge">
1130
+ <title>utils/resource&#45;generator.ts&#45;&gt;utils/file&#45;helpers.ts</title>
1131
+ <path fill="none" stroke="#757575" d="M965.4,-1985.88C1007.58,-1985.88 1057.95,-1985.88 1098.27,-1985.88"/>
1132
+ <polygon fill="#757575" stroke="#757575" points="1098.11,-1989.38 1108.11,-1985.88 1098.11,-1982.38 1098.11,-1989.38"/>
1133
+ </g>
1134
+ </g>
1135
+ </svg>