@codeyam/codeyam-cli 0.1.23 → 0.1.25

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 (98) hide show
  1. package/analyzer-template/.build-info.json +7 -7
  2. package/analyzer-template/log.txt +3 -3
  3. package/analyzer-template/packages/database/src/lib/loadAnalysis.ts +7 -1
  4. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.d.ts.map +1 -1
  5. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js +7 -1
  6. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js.map +1 -1
  7. package/analyzer-template/project/runMultiScenarioServer.ts +26 -3
  8. package/background/src/lib/virtualized/project/runMultiScenarioServer.js +23 -3
  9. package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
  10. package/codeyam-cli/src/commands/__tests__/editor.designSystem.test.js +30 -0
  11. package/codeyam-cli/src/commands/__tests__/editor.designSystem.test.js.map +1 -0
  12. package/codeyam-cli/src/commands/editor.js +349 -106
  13. package/codeyam-cli/src/commands/editor.js.map +1 -1
  14. package/codeyam-cli/src/data/designSystems.js +27 -0
  15. package/codeyam-cli/src/data/designSystems.js.map +1 -0
  16. package/codeyam-cli/src/utils/__tests__/editorApi.test.js +44 -0
  17. package/codeyam-cli/src/utils/__tests__/editorApi.test.js.map +1 -1
  18. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js +6 -0
  19. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js.map +1 -1
  20. package/codeyam-cli/src/utils/editorApi.js +16 -0
  21. package/codeyam-cli/src/utils/editorApi.js.map +1 -1
  22. package/codeyam-cli/src/utils/editorScenarios.js +1 -0
  23. package/codeyam-cli/src/utils/editorScenarios.js.map +1 -1
  24. package/codeyam-cli/src/utils/entityChangeStatus.server.js +15 -0
  25. package/codeyam-cli/src/utils/entityChangeStatus.server.js.map +1 -1
  26. package/codeyam-cli/src/utils/queue/__tests__/job.interactiveStart.test.js +159 -0
  27. package/codeyam-cli/src/utils/queue/__tests__/job.interactiveStart.test.js.map +1 -0
  28. package/codeyam-cli/src/utils/queue/job.js +9 -1
  29. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  30. package/codeyam-cli/src/utils/scenariosManifest.js +8 -2
  31. package/codeyam-cli/src/utils/scenariosManifest.js.map +1 -1
  32. package/codeyam-cli/src/utils/testResultCache.js +53 -0
  33. package/codeyam-cli/src/utils/testResultCache.js.map +1 -0
  34. package/codeyam-cli/src/utils/testResultCache.server.js +81 -0
  35. package/codeyam-cli/src/utils/testResultCache.server.js.map +1 -0
  36. package/codeyam-cli/src/utils/testResultCache.server.test.js +187 -0
  37. package/codeyam-cli/src/utils/testResultCache.server.test.js.map +1 -0
  38. package/codeyam-cli/src/utils/testResultCache.test.js +230 -0
  39. package/codeyam-cli/src/utils/testResultCache.test.js.map +1 -0
  40. package/codeyam-cli/src/utils/webappDetection.js +4 -2
  41. package/codeyam-cli/src/utils/webappDetection.js.map +1 -1
  42. package/codeyam-cli/src/webserver/__tests__/api.interactive-switch-scenario.test.js +98 -0
  43. package/codeyam-cli/src/webserver/__tests__/api.interactive-switch-scenario.test.js.map +1 -0
  44. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js +32 -0
  45. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js.map +1 -1
  46. package/codeyam-cli/src/webserver/app/routes/api.interactive-switch-scenario.js +34 -0
  47. package/codeyam-cli/src/webserver/app/routes/api.interactive-switch-scenario.js.map +1 -0
  48. package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CKeQT5Ty.js → InteractivePreview-DtYTSPL2.js} +1 -1
  49. package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-DUMfcNVK.js → ScenarioViewer-CefgqbCr.js} +1 -1
  50. package/codeyam-cli/src/webserver/build/client/assets/Spinner-Bc8BG-Lw.js +34 -0
  51. package/codeyam-cli/src/webserver/build/client/assets/{_index-BAWd-Xjf.js → _index-C1YkzTAV.js} +1 -1
  52. package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-BOARiB-g.js → activity.(_tab)-yH46LLUz.js} +1 -1
  53. package/codeyam-cli/src/webserver/build/client/assets/api.editor-verify-routes-l0sNRNKZ.js +1 -0
  54. package/codeyam-cli/src/webserver/build/client/assets/api.interactive-switch-scenario-l0sNRNKZ.js +1 -0
  55. package/codeyam-cli/src/webserver/build/client/assets/{dev.empty-C8y4mmyv.js → dev.empty-CRepiabR.js} +1 -1
  56. package/codeyam-cli/src/webserver/build/client/assets/editor.entity.(_sha)-DLM1-ZMt.js +96 -0
  57. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-ByHz6rAQ.js → entity._sha._-DYJRGiDI.js} +1 -1
  58. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha.scenarios._scenarioId.dev-CmLO432x.js → entity._sha.scenarios._scenarioId.dev-wdiwx5-Z.js} +1 -1
  59. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha.scenarios._scenarioId.fullscreen-Bz9sCUF_.js → entity._sha.scenarios._scenarioId.fullscreen-BrkN-40Y.js} +1 -1
  60. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.create-scenario-DQM8E7L4.js → entity._sha_.create-scenario-DxfhekTZ.js} +1 -1
  61. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.edit._scenarioId-CAoXLsQr.js → entity._sha_.edit._scenarioId-CRXJWmpB.js} +1 -1
  62. package/codeyam-cli/src/webserver/build/client/assets/globals-9EkC9j9I.css +1 -0
  63. package/codeyam-cli/src/webserver/build/client/assets/manifest-7e749098.js +1 -0
  64. package/codeyam-cli/src/webserver/build/client/assets/{root-D2_tktnk.js → root-DGtly3mb.js} +2 -2
  65. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-D9QZKaLJ.js +2 -0
  66. package/codeyam-cli/src/webserver/build/server/assets/{analysisRunner-By5slFjw.js → analysisRunner-CO8xocj3.js} +1 -1
  67. package/codeyam-cli/src/webserver/build/server/assets/{index-DXaOwBnm.js → index-QKPqlUgg.js} +1 -1
  68. package/codeyam-cli/src/webserver/build/server/assets/{init-CLG1LjQM.js → init-DlspChIk.js} +1 -1
  69. package/codeyam-cli/src/webserver/build/server/assets/server-build-ChzicV-B.js +689 -0
  70. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  71. package/codeyam-cli/src/webserver/build-info.json +5 -5
  72. package/codeyam-cli/src/webserver/idleDetector.js +12 -3
  73. package/codeyam-cli/src/webserver/idleDetector.js.map +1 -1
  74. package/codeyam-cli/src/webserver/terminalServer.js +4 -3
  75. package/codeyam-cli/src/webserver/terminalServer.js.map +1 -1
  76. package/codeyam-cli/templates/design-systems/clean-dashboard-design-system.md +255 -0
  77. package/codeyam-cli/templates/design-systems/editorial-design-system.md +267 -0
  78. package/codeyam-cli/templates/design-systems/mono-brutalist-design-system.md +256 -0
  79. package/codeyam-cli/templates/design-systems/neo-brutalist-design-system.md +294 -0
  80. package/codeyam-cli/templates/expo-react-native/MOBILE_SETUP.md +115 -0
  81. package/codeyam-cli/templates/expo-react-native/__tests__/.gitkeep +0 -0
  82. package/codeyam-cli/templates/expo-react-native/app/_layout.tsx +3 -2
  83. package/codeyam-cli/templates/expo-react-native/global.css +7 -0
  84. package/codeyam-cli/templates/expo-react-native/lib/theme.ts +73 -0
  85. package/codeyam-cli/templates/expo-react-native/package.json +16 -6
  86. package/codeyam-cli/templates/isolation-route/expo-router.tsx.template +54 -0
  87. package/codeyam-cli/templates/nextjs-prisma-sqlite/seed-adapter.ts +10 -5
  88. package/codeyam-cli/templates/seed-adapters/supabase.ts +14 -5
  89. package/codeyam-cli/templates/skills/codeyam-editor/SKILL.md +15 -0
  90. package/package.json +1 -1
  91. package/packages/database/src/lib/loadAnalysis.js +7 -1
  92. package/packages/database/src/lib/loadAnalysis.js.map +1 -1
  93. package/codeyam-cli/src/webserver/build/client/assets/Spinner-D0LgAaSa.js +0 -34
  94. package/codeyam-cli/src/webserver/build/client/assets/editor.entity.(_sha)-DMv5ESGo.js +0 -96
  95. package/codeyam-cli/src/webserver/build/client/assets/globals-oyPmV37k.css +0 -1
  96. package/codeyam-cli/src/webserver/build/client/assets/manifest-1a45e154.js +0 -1
  97. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-BNd5hYuW.js +0 -2
  98. package/codeyam-cli/src/webserver/build/server/assets/server-build-NZmUqQv6.js +0 -688
@@ -175,6 +175,21 @@ Isolation routes are committed to git (not gitignored). They are protected by a
175
175
 
176
176
  When a collaborator clones the repo and runs `codeyam editor`, scenarios are auto-imported from `scenarios-manifest.json`. Run `codeyam editor sync` to manually re-sync after pulling new changes.
177
177
 
178
+ ## Expo / React Native Projects
179
+
180
+ When working with an Expo project (tech stack `expo-react-native`):
181
+
182
+ - Use `<View>`, `<Text>`, `<ScrollView>`, `<Pressable>` from `react-native` — **never use HTML elements** (`<div>`, `<span>`, `<h1>`, etc.)
183
+ - Do NOT use `'use client'` — this is a Next.js directive that has no meaning in Expo
184
+ - Do NOT import from `next/navigation`, `next/router`, or any `next/*` package
185
+ - Use `expo-router` for navigation: `useRouter()`, `useLocalSearchParams()`, `<Link>`
186
+ - Use `@/lib/theme` for all design tokens — not CSS custom properties (`var(--token)` does not work in React Native)
187
+ - AsyncStorage maps to localStorage on web — CodeYam's `localStorage` injection in scenarios works automatically
188
+ - Test with `npx jest`, not `npx vitest`
189
+ - Isolation routes use Expo Router: `app/isolated-components/ComponentName.tsx` (not a `/page.tsx` subdirectory)
190
+ - Capture wrappers use `nativeID="codeyam-capture"` (not `id="codeyam-capture"`) — `nativeID` maps to `id` on web
191
+ - The preview renders via react-native-web in a browser — some visual differences from native devices are expected (fonts, SafeAreaView, shadows). See `MOBILE_SETUP.md` for details.
192
+
178
193
  ## Quick Reference
179
194
 
180
195
  ```bash
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codeyam/codeyam-cli",
3
- "version": "0.1.23",
3
+ "version": "0.1.25",
4
4
  "description": "Local development CLI for CodeYam analysis",
5
5
  "type": "module",
6
6
  "bin": {
@@ -91,7 +91,13 @@ export default async function loadAnalysis({ id, analysisBranchId, projectId, fi
91
91
  const analysis = await query.executeTakeFirst();
92
92
  const queryTime = Date.now() - startTime;
93
93
  if (!analysis) {
94
- awsLog(`CodeYam Error: Analysis not found${entityName ? ` for ${entityName}` : ''}${id ? ` (id=${id})` : ''}`, null, {
94
+ // When queried by dependencyAnalyzedTreeSha, this is a cache check
95
+ // (findValidExistingAnalysis pattern). Not finding a cached analysis is
96
+ // expected for new entities — log as debug, not error.
97
+ const isExpectedMiss = !!dependencyAnalyzedTreeSha;
98
+ awsLog(isExpectedMiss
99
+ ? `CodeYam: Analysis cache miss for dependency tree SHA ${dependencyAnalyzedTreeSha.substring(0, 12)}...`
100
+ : `CodeYam Error: Analysis not found${entityName ? ` for ${entityName}` : ''}${id ? ` (id=${id})` : ''}`, null, {
95
101
  id,
96
102
  analysisBranchId,
97
103
  projectId,
@@ -1 +1 @@
1
- {"version":3,"file":"loadAnalysis.js","sourceRoot":"","sources":["../../../../../../packages/database/src/lib/loadAnalysis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadAnalysis.js","sourceRoot":"","sources":["../../../../../../packages/database/src/lib/loadAnalysis.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAmBnE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,YAAY,CAAC,EACzC,EAAE,EACF,gBAAgB,EAChB,SAAS,EACT,MAAM,EACN,QAAQ,EACR,UAAU,EACV,yBAAyB,EACzB,eAAe,EACf,WAAW,EACX,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,GACE;IACjB,kFAAkF;IAClF,6EAA6E;IAC7E,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACzB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,IAAI,CAAC;QACH,uBAAuB;QACvB,IAAI,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAE5D,mBAAmB;QACnB,IAAI,EAAE,EAAE,CAAC;YACP,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QACpD,CAAC;QAED,gDAAgD;QAChD,IAAI,yBAAyB,EAAE,CAAC;YAC9B,KAAK,GAAG,KAAK,CAAC,KAAK,CACjB,8BAA8B,EAC9B,GAAG,EACH,yBAAyB,CAC1B,CAAC;QACJ,CAAC;aAAM,IAAI,eAAe,EAAE,CAAC;YAC3B,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;QACjE,CAAC;aAAM,IAAI,MAAM,EAAE,CAAC;YAClB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACvD,CAAC;QAED,uEAAuE;QACvE,IAAI,gBAAgB,EAAE,CAAC;YACrB,KAAK,GAAG,KAAK;iBACV,SAAS,CACR,mBAAmB,EACnB,aAAa,EACb,+BAA+B,CAChC;iBACA,KAAK,CAAC,sBAAsB,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAAC;QAE1D,+CAA+C;QAC/C,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAA+B,EAAE,EAAE;YACvD,MAAM,UAAU,GAAG,EAAE,CAAC;YAEtB,wBAAwB;YACxB,UAAU,CAAC,IAAI,CACb,cAAc,CACZ,EAAE;iBACC,UAAU,CAAC,UAAU,CAAC;iBACtB,MAAM,CAAC,oBAAoB,CAAC;iBAC5B,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE,qBAAqB,CAAC,CACxD,CAAC,EAAE,CAAC,QAAQ,CAAC,CACf,CAAC;YAEF,IAAI,WAAW,EAAE,CAAC;gBAChB,UAAU,CAAC,IAAI,CACb,cAAc,CACZ,EAAE;qBACC,UAAU,CAAC,OAAO,CAAC;qBACnB,MAAM,CAAC,iBAAiB,CAAC;qBACzB,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE,kBAAkB,CAAC,CACjD,CAAC,EAAE,CAAC,MAAM,CAAC,CACb,CAAC;YACJ,CAAC;YAED,IAAI,cAAc,EAAE,CAAC;gBACnB,UAAU,CAAC,IAAI,CACb,cAAc,CACZ,EAAE;qBACC,UAAU,CAAC,UAAU,CAAC;qBACtB,MAAM,CAAC,oBAAoB,CAAC;qBAC5B,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE,qBAAqB,CAAC,CACvD,CAAC,EAAE,CAAC,SAAS,CAAC,CAChB,CAAC;YACJ,CAAC;YAED,IAAI,gBAAgB,EAAE,CAAC;gBACrB,UAAU,CAAC,IAAI,CACb,aAAa,CACX,EAAE;qBACC,UAAU,CAAC,WAAW,CAAC;qBACvB,MAAM,CAAC,qBAAqB,CAAC;qBAC7B,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE,aAAa,CAAC,CACzD,CAAC,EAAE,CAAC,WAAW,CAAC,CAClB,CAAC;YACJ,CAAC;YAED,IAAI,eAAe,EAAE,CAAC;gBACpB,UAAU,CAAC,IAAI,CACb,+BAA+B,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAC1C,GAAG,CAAC,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE,aAAa,CAAC,CAClE,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAC1B,CAAC;YACJ,CAAC;YAED,qCAAqC;YACrC,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,UAAU,CAAC,IAAI,CACb,cAAc,CACZ,EAAE;qBACC,UAAU,CAAC,SAAS,CAAC;qBACrB,MAAM,CAAC,mBAAmB,CAAC;qBAC3B,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CACrB,sBAAsB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAC3C;qBACA,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE,oBAAoB,CAAC,CACrD,CAAC,EAAE,CAAC,QAAQ,CAAC,CACf,CAAC;YACJ,CAAC;YAED,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAEzC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,mEAAmE;YACnE,wEAAwE;YACxE,uDAAuD;YACvD,MAAM,cAAc,GAAG,CAAC,CAAC,yBAAyB,CAAC;YACnD,MAAM,CACJ,cAAc;gBACZ,CAAC,CAAC,wDAAwD,yBAAyB,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;gBACzG,CAAC,CAAC,oCAAoC,UAAU,CAAC,CAAC,CAAC,QAAQ,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAC1G,IAAI,EACJ;gBACE,EAAE;gBACF,gBAAgB;gBAChB,SAAS;gBACT,MAAM;gBACN,QAAQ;gBACR,UAAU;gBACV,yBAAyB;gBACzB,eAAe;gBACf,WAAW;gBACX,cAAc;gBACd,sBAAsB;gBACtB,gBAAgB;gBAChB,eAAe;aAChB,CACF,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,sGAAsG;QACtG,IAAI,SAAS,GAAG,GAAG,IAAI,sBAAsB,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAI,QAAgB,CAAC,MAAM,CAAC;YACxC,MAAM,SAAS,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1E,OAAO,CAAC,GAAG,CACT,wDAAwD,SAAS,cAAc,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,EAChH,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,CACtD,CAAC;QACJ,CAAC;QAED,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,gDAAgD,EAAE,KAAK,EAAE;YAC9D,EAAE;YACF,gBAAgB;YAChB,SAAS;YACT,MAAM;YACN,QAAQ;YACR,UAAU;YACV,yBAAyB;YACzB,eAAe;YACf,WAAW;YACX,cAAc;YACd,sBAAsB;YACtB,gBAAgB;YAChB,eAAe;SAChB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1,34 +0,0 @@
1
- import{d as P,r as t}from"./chunk-JZWAC4HX-BAdwhyCx.js";import{u as _}from"./useLastLogLine-BNd5hYuW.js";import{j as y}from"./jsx-runtime-D_zvdyIk.js";function R(s){const o=s.replace(/[^a-zA-Z0-9_]+/g,"_");return o.slice(0,1).toUpperCase()+o.slice(1)}function G({analysisId:s,scenarioId:o,scenarioName:i,entityName:c,projectSlug:m,enabled:x=!0,refreshTrigger:p=0}){const k=P(),[b,E]=t.useState(null),[q,U]=t.useState(!1),[z,u]=t.useState(!1),[A,f]=t.useState(!1),v=t.useRef(!1),I=t.useRef(null),g=t.useRef(null),h=t.useRef(null),[F,w]=t.useState(0),[j,M]=t.useState(0),r=t.useRef(null),l=t.useRef(!1),{interactiveUrl:L,resetLogs:T}=_(m,x),C=t.useRef(o),B=t.useRef(p);t.useEffect(()=>{B.current!==p&&(B.current=p,b&&(console.log("[useInteractiveMode] Manual refresh triggered"),u(!0),f(!1),w(0),M(e=>e+1),l.current=!1,r.current&&(clearTimeout(r.current),r.current=null)))},[p,b]),t.useEffect(()=>{if(C.current!==o&&(C.current=o,I.current&&g.current&&i)){let e=I.current;if(h.current&&c){const a=R(h.current),d=R(c);a!==d&&(e=e.replace(a,d),h.current=c)}const n=R(g.current),S=R(i);e=e.replace(n,S),g.current=i,E(e),u(!0),f(!1),w(0),M(a=>a+1),l.current=!1,r.current&&(clearTimeout(r.current),r.current=null);return}},[o,i,c]),t.useEffect(()=>{if(L){const e=L+"?width=600px";I.current=e,i&&(g.current=i),c&&(h.current=c),E(e),U(!1),u(!0)}},[L]),t.useEffect(()=>{const e=n=>{n.data.type==="codeyam-resize"&&(l.current||(l.current=!0,r.current&&(clearTimeout(r.current),r.current=null),w(0),f(!0),requestAnimationFrame(()=>{requestAnimationFrame(()=>{u(!1)})})))};return window.addEventListener("message",e),()=>window.removeEventListener("message",e)},[]);const D=()=>{l.current=!1,r.current&&clearTimeout(r.current);const e=300*Math.pow(2,F);r.current=setTimeout(()=>{l.current||(F<2?(w(n=>n+1),M(n=>n+1),u(!0)):(console.error("[useInteractiveMode] Interactive mode failed to load after 3 attempts - showing iframe anyway"),f(!0),u(!1)))},e)};return t.useEffect(()=>{x&&!v.current&&o&&s&&(v.current=!0,U(!0),f(!1),E(null),(async()=>{if(m)try{await fetch(`/api/logs/${m}`,{method:"DELETE"})}catch(n){console.error("[useInteractiveMode] Failed to clear log file:",n)}T(),k.submit({action:"start",analysisId:s,scenarioId:o},{method:"post",action:"/api/interactive-mode"})})())},[x,o,s,T,m]),t.useEffect(()=>{const e=s,n=()=>{if(v.current&&e){const a=new URLSearchParams({action:"stop",analysisId:e});console.log("[useInteractiveMode] Sending stop request via sendBeacon");const d=navigator.sendBeacon("/api/interactive-mode",a);console.log("[useInteractiveMode] sendBeacon result:",d),d||(console.log("[useInteractiveMode] sendBeacon failed, using fetch fallback"),fetch("/api/interactive-mode",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:a,keepalive:!0}).catch(K=>console.error("Failed to stop interactive mode:",K)))}},S=()=>{n()};return window.addEventListener("beforeunload",S),()=>{window.removeEventListener("beforeunload",S),console.log("[useInteractiveMode] Cleanup running:",{hasStarted:v.current,analysisId:e}),n()}},[s]),{interactiveServerUrl:b,isStarting:q,isLoading:z,showIframe:A,iframeKey:j,onIframeLoad:D}}function H(){return y.jsxs("div",{className:"spinner-container",children:[y.jsx("span",{className:"loader"}),y.jsx("style",{children:`
2
- .loader {
3
- width: 48px;
4
- height: 48px;
5
- border: 3px solid rgba(0, 92, 117, 0.2);
6
- border-radius: 50%;
7
- display: inline-block;
8
- position: relative;
9
- box-sizing: border-box;
10
- animation: rotation 1s linear infinite;
11
- }
12
- .loader::after {
13
- content: '';
14
- box-sizing: border-box;
15
- position: absolute;
16
- left: 50%;
17
- top: 50%;
18
- transform: translate(-50%, -50%);
19
- width: 56px;
20
- height: 56px;
21
- border-radius: 50%;
22
- border: 3px solid;
23
- border-color: #005c75 transparent;
24
- }
25
-
26
- @keyframes rotation {
27
- 0% {
28
- transform: rotate(0deg);
29
- }
30
- 100% {
31
- transform: rotate(360deg);
32
- }
33
- }
34
- `})]})}export{H as S,G as u};