@ankhorage/studio 6.0.2 → 7.0.1

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 (491) hide show
  1. package/README.md +23 -7
  2. package/apm/update.json +2 -2
  3. package/dist/authSettings.d.ts +3 -3
  4. package/dist/authSettings.js +3 -3
  5. package/dist/bindingDiagnosticsModel.d.ts +1 -1
  6. package/dist/bindingDiagnosticsModel.d.ts.map +1 -1
  7. package/dist/bindingDiagnosticsModel.js +10 -10
  8. package/dist/bindingDiagnosticsModel.js.map +1 -1
  9. package/dist/bindingMetadataModel.d.ts +0 -2
  10. package/dist/bindingMetadataModel.d.ts.map +1 -1
  11. package/dist/bindingMetadataModel.js +3 -4
  12. package/dist/bindingMetadataModel.js.map +1 -1
  13. package/dist/bindingMutationModel.d.ts +4 -4
  14. package/dist/bindingMutationModel.d.ts.map +1 -1
  15. package/dist/bindingMutationModel.js +7 -8
  16. package/dist/bindingMutationModel.js.map +1 -1
  17. package/dist/bindingOperationModel.d.ts +2 -2
  18. package/dist/bindingOperationModel.js +7 -7
  19. package/dist/bindingSchemaModel.d.ts +3 -3
  20. package/dist/bindingSchemaModel.js +5 -5
  21. package/dist/canExecuteProjectDeployRelease.d.ts +1 -1
  22. package/dist/canExecuteProjectDeployRelease.js +1 -1
  23. package/dist/canvasDragModel.d.ts +5 -7
  24. package/dist/canvasDragModel.d.ts.map +1 -1
  25. package/dist/canvasDragModel.js +9 -16
  26. package/dist/canvasDragModel.js.map +1 -1
  27. package/dist/canvasDropZones.d.ts +1 -2
  28. package/dist/canvasDropZones.d.ts.map +1 -1
  29. package/dist/canvasDropZones.js +1 -2
  30. package/dist/canvasDropZones.js.map +1 -1
  31. package/dist/cli/index.js +1 -1
  32. package/dist/contractGuards.d.ts +2 -2
  33. package/dist/contractGuards.js +2 -2
  34. package/dist/core/StudioContext.d.ts +1 -1
  35. package/dist/core/StudioContext.js +1 -1
  36. package/dist/core/StudioProvider.js +5 -5
  37. package/dist/core/mediaAuthoringHostClient.d.ts +2 -2
  38. package/dist/core/mediaAuthoringHostClient.js +2 -2
  39. package/dist/core/mediaRemovalCoordinator.d.ts +1 -1
  40. package/dist/core/mediaRemovalCoordinator.d.ts.map +1 -1
  41. package/dist/core/mediaRemovalCoordinator.js +9 -10
  42. package/dist/core/mediaRemovalCoordinator.js.map +1 -1
  43. package/dist/core/studioManifestDraftModel.d.ts +7 -7
  44. package/dist/core/studioManifestDraftModel.js +7 -7
  45. package/dist/core/studioManifestPersistenceModel.d.ts +1 -1
  46. package/dist/core/studioManifestPersistenceModel.js +1 -1
  47. package/dist/createProjectDeployRequest.d.ts +0 -1
  48. package/dist/createProjectDeployRequest.d.ts.map +1 -1
  49. package/dist/createProjectDeployRequest.js +0 -1
  50. package/dist/createProjectDeployRequest.js.map +1 -1
  51. package/dist/externalApiApi.d.ts +3 -3
  52. package/dist/externalApiApi.d.ts.map +1 -1
  53. package/dist/externalApiApi.js +24 -40
  54. package/dist/externalApiApi.js.map +1 -1
  55. package/dist/features/infrastructure/adapters/outbound/createStudioInfraAdapterPackageResolver.d.ts +4 -1
  56. package/dist/features/infrastructure/adapters/outbound/createStudioInfraAdapterPackageResolver.d.ts.map +1 -1
  57. package/dist/features/infrastructure/adapters/outbound/createStudioInfraAdapterPackageResolver.js +10 -2
  58. package/dist/features/infrastructure/adapters/outbound/createStudioInfraAdapterPackageResolver.js.map +1 -1
  59. package/dist/features/infrastructure/composition/createStudioProjectInfraLifecycle.d.ts +5 -1
  60. package/dist/features/infrastructure/composition/createStudioProjectInfraLifecycle.d.ts.map +1 -1
  61. package/dist/features/infrastructure/composition/createStudioProjectInfraLifecycle.js +4 -3
  62. package/dist/features/infrastructure/composition/createStudioProjectInfraLifecycle.js.map +1 -1
  63. package/dist/features/project-updates/adapters/inbound/ProjectUpdateDashboardPanel.d.ts.map +1 -1
  64. package/dist/features/project-updates/adapters/inbound/ProjectUpdateDashboardPanel.js +12 -4
  65. package/dist/features/project-updates/adapters/inbound/ProjectUpdateDashboardPanel.js.map +1 -1
  66. package/dist/features/project-updates/adapters/outbound/createStudioGeneratedPackagePolicyProjectReadPort.d.ts +4 -0
  67. package/dist/features/project-updates/adapters/outbound/createStudioGeneratedPackagePolicyProjectReadPort.d.ts.map +1 -0
  68. package/dist/features/project-updates/adapters/outbound/createStudioGeneratedPackagePolicyProjectReadPort.js +30 -0
  69. package/dist/features/project-updates/adapters/outbound/createStudioGeneratedPackagePolicyProjectReadPort.js.map +1 -0
  70. package/dist/features/project-updates/adapters/outbound/getGeneratedPackagePolicy.js +0 -8
  71. package/dist/features/project-updates/adapters/outbound/getGeneratedPackagePolicy.js.map +1 -1
  72. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyDescriptor.d.ts +4 -0
  73. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyDescriptor.d.ts.map +1 -0
  74. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyDescriptor.js +21 -0
  75. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyDescriptor.js.map +1 -0
  76. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyHandler.d.ts +4 -0
  77. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyHandler.d.ts.map +1 -0
  78. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyHandler.js +11 -0
  79. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyHandler.js.map +1 -0
  80. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyProjectionDescriptor.d.ts +4 -0
  81. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyProjectionDescriptor.d.ts.map +1 -0
  82. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyProjectionDescriptor.js +10 -0
  83. package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyProjectionDescriptor.js.map +1 -0
  84. package/dist/features/project-updates/application/resolveProjectUpdateDashboardPresentation.d.ts +11 -0
  85. package/dist/features/project-updates/application/resolveProjectUpdateDashboardPresentation.d.ts.map +1 -1
  86. package/dist/features/project-updates/application/resolveProjectUpdateDashboardPresentation.js +23 -8
  87. package/dist/features/project-updates/application/resolveProjectUpdateDashboardPresentation.js.map +1 -1
  88. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyApplyOwnerStepPort.d.ts +4 -0
  89. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyApplyOwnerStepPort.d.ts.map +1 -0
  90. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyApplyOwnerStepPort.js +176 -0
  91. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyApplyOwnerStepPort.js.map +1 -0
  92. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyExtensionEvidencePort.d.ts +5 -0
  93. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyExtensionEvidencePort.d.ts.map +1 -0
  94. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyExtensionEvidencePort.js +148 -0
  95. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyExtensionEvidencePort.js.map +1 -0
  96. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyProtocolPort.d.ts +5 -0
  97. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyProtocolPort.d.ts.map +1 -0
  98. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyProtocolPort.js +219 -0
  99. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyProtocolPort.js.map +1 -0
  100. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyUpdatePorts.d.ts +9 -0
  101. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyUpdatePorts.d.ts.map +1 -0
  102. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyUpdatePorts.js +17 -0
  103. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyUpdatePorts.js.map +1 -0
  104. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyVerifyOwnerStepPort.d.ts +4 -0
  105. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyVerifyOwnerStepPort.d.ts.map +1 -0
  106. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyVerifyOwnerStepPort.js +80 -0
  107. package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyVerifyOwnerStepPort.js.map +1 -0
  108. package/dist/features/project-updates/composition/createStudioProjectUpdateService.d.ts.map +1 -1
  109. package/dist/features/project-updates/composition/createStudioProjectUpdateService.js +11 -9
  110. package/dist/features/project-updates/composition/createStudioProjectUpdateService.js.map +1 -1
  111. package/dist/features/project-updates/constants.d.ts +2 -0
  112. package/dist/features/project-updates/constants.d.ts.map +1 -1
  113. package/dist/features/project-updates/constants.js +2 -0
  114. package/dist/features/project-updates/constants.js.map +1 -1
  115. package/dist/features/project-updates/domain/applyGeneratedPackagePolicy.d.ts.map +1 -1
  116. package/dist/features/project-updates/domain/applyGeneratedPackagePolicy.js +6 -3
  117. package/dist/features/project-updates/domain/applyGeneratedPackagePolicy.js.map +1 -1
  118. package/dist/features/project-updates/domain/createStudioGeneratedPackagePolicyExecutionContext.d.ts +4 -0
  119. package/dist/features/project-updates/domain/createStudioGeneratedPackagePolicyExecutionContext.d.ts.map +1 -0
  120. package/dist/features/project-updates/domain/createStudioGeneratedPackagePolicyExecutionContext.js +11 -0
  121. package/dist/features/project-updates/domain/createStudioGeneratedPackagePolicyExecutionContext.js.map +1 -0
  122. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyInventorySource.d.ts +5 -0
  123. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyInventorySource.d.ts.map +1 -0
  124. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyInventorySource.js +22 -0
  125. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyInventorySource.js.map +1 -0
  126. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyMutationTarget.d.ts +10 -0
  127. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyMutationTarget.d.ts.map +1 -0
  128. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyMutationTarget.js +21 -0
  129. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyMutationTarget.js.map +1 -0
  130. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyStatusSource.d.ts +5 -0
  131. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyStatusSource.d.ts.map +1 -0
  132. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyStatusSource.js +18 -0
  133. package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyStatusSource.js.map +1 -0
  134. package/dist/host/apis/createProjectEndpointCredentialResolver.d.ts +1 -1
  135. package/dist/host/apis/createProjectEndpointCredentialResolver.js +1 -1
  136. package/dist/host/apis/createTrustedEndpointTestFetch.d.ts +1 -1
  137. package/dist/host/apis/createTrustedEndpointTestFetch.js +1 -1
  138. package/dist/host/apis/createTrustedExternalApiFetch.d.ts +1 -1
  139. package/dist/host/apis/createTrustedExternalApiFetch.js +1 -1
  140. package/dist/host/apis/requestTrustedExternalApi.d.ts +3 -12
  141. package/dist/host/apis/requestTrustedExternalApi.d.ts.map +1 -1
  142. package/dist/host/apis/requestTrustedExternalApi.js +3 -53
  143. package/dist/host/apis/requestTrustedExternalApi.js.map +1 -1
  144. package/dist/host/apis/sanitizeExternalApiOperationTestResult.d.ts +1 -1
  145. package/dist/host/apis/sanitizeExternalApiOperationTestResult.js +1 -1
  146. package/dist/host/apis/studioExternalApiService.d.ts +1 -1
  147. package/dist/host/apis/studioExternalApiService.d.ts.map +1 -1
  148. package/dist/host/apis/studioExternalApiService.js +10 -17
  149. package/dist/host/apis/studioExternalApiService.js.map +1 -1
  150. package/dist/host/auth/projectAuthHealthService.d.ts +1 -1
  151. package/dist/host/auth/projectAuthHealthService.js +1 -1
  152. package/dist/host/createStudioHost.d.ts +1 -1
  153. package/dist/host/createStudioHost.js +1 -1
  154. package/dist/host/deploy/serializeProjectDeploySecret.d.ts.map +1 -1
  155. package/dist/host/deploy/serializeProjectDeploySecret.js +2 -9
  156. package/dist/host/deploy/serializeProjectDeploySecret.js.map +1 -1
  157. package/dist/host/http/apiRoutes.d.ts +1 -1
  158. package/dist/host/http/apiRoutes.d.ts.map +1 -1
  159. package/dist/host/http/apiRoutes.js +19 -29
  160. package/dist/host/http/apiRoutes.js.map +1 -1
  161. package/dist/host/http/authRoutes.js +1 -1
  162. package/dist/host/http/deployRoutes.d.ts.map +1 -1
  163. package/dist/host/http/deployRoutes.js +5 -11
  164. package/dist/host/http/deployRoutes.js.map +1 -1
  165. package/dist/host/http/mediaRoutes.d.ts.map +1 -1
  166. package/dist/host/http/mediaRoutes.js +10 -16
  167. package/dist/host/http/mediaRoutes.js.map +1 -1
  168. package/dist/host/http/moduleRoutes.d.ts.map +1 -1
  169. package/dist/host/http/moduleRoutes.js +8 -20
  170. package/dist/host/http/moduleRoutes.js.map +1 -1
  171. package/dist/host/http/secretRoutes.d.ts.map +1 -1
  172. package/dist/host/http/secretRoutes.js +10 -20
  173. package/dist/host/http/secretRoutes.js.map +1 -1
  174. package/dist/host/http/security.d.ts +1 -1
  175. package/dist/host/http/security.js +1 -1
  176. package/dist/host/http/server.d.ts +1 -1
  177. package/dist/host/http/server.js +1 -1
  178. package/dist/host/http/serverWithSecrets.d.ts +1 -1
  179. package/dist/host/http/serverWithSecrets.js +1 -1
  180. package/dist/host/layout/auth/resolveAuthLayoutPlan.d.ts +1 -1
  181. package/dist/host/layout/auth/resolveAuthLayoutPlan.d.ts.map +1 -1
  182. package/dist/host/layout/auth/resolveAuthLayoutPlan.js +7 -13
  183. package/dist/host/layout/auth/resolveAuthLayoutPlan.js.map +1 -1
  184. package/dist/host/layout/generatedImportComposer.d.ts +1 -1
  185. package/dist/host/layout/generatedImportComposer.js +3 -1
  186. package/dist/host/layout/generatedImportComposer.js.map +1 -1
  187. package/dist/host/layout/layoutGenerator.d.ts +2 -1
  188. package/dist/host/layout/layoutGenerator.d.ts.map +1 -1
  189. package/dist/host/layout/layoutGenerator.js +117 -69
  190. package/dist/host/layout/layoutGenerator.js.map +1 -1
  191. package/dist/host/layout/templates/auth/navigation.d.ts.map +1 -1
  192. package/dist/host/layout/templates/auth/navigation.js +2 -2
  193. package/dist/host/layout/templates/auth/navigation.js.map +1 -1
  194. package/dist/host/layout/templates/auth/oauth.d.ts.map +1 -1
  195. package/dist/host/layout/templates/auth/oauth.js +2 -8
  196. package/dist/host/layout/templates/auth/oauth.js.map +1 -1
  197. package/dist/host/layout/templates/auth/oauthCompletion.d.ts.map +1 -1
  198. package/dist/host/layout/templates/auth/oauthCompletion.js +2 -2
  199. package/dist/host/layout/templates/auth/oauthCompletion.js.map +1 -1
  200. package/dist/host/layout/templates/auth/screen.d.ts +1 -1
  201. package/dist/host/layout/templates/auth/screen.d.ts.map +1 -1
  202. package/dist/host/layout/templates/auth/screen.js +19 -137
  203. package/dist/host/layout/templates/auth/screen.js.map +1 -1
  204. package/dist/host/layout/templates/auth/screenController.d.ts.map +1 -1
  205. package/dist/host/layout/templates/auth/screenController.js +4 -6
  206. package/dist/host/layout/templates/auth/screenController.js.map +1 -1
  207. package/dist/host/layout/templates/rootLayout.d.ts +1 -1
  208. package/dist/host/layout/templates/rootLayout.js +4 -4
  209. package/dist/host/layout/templates/screen.d.ts +1 -1
  210. package/dist/host/layout/templates/screen.js +1 -1
  211. package/dist/host/layout/templates/utils/routes.d.ts +2 -2
  212. package/dist/host/layout/templates/utils/routes.js +2 -2
  213. package/dist/host/layout/templates/utils/strings.d.ts +1 -1
  214. package/dist/host/layout/templates/utils/strings.js +1 -1
  215. package/dist/host/layout/utils/escapeStringLiteral.d.ts +0 -1
  216. package/dist/host/layout/utils/escapeStringLiteral.d.ts.map +1 -1
  217. package/dist/host/layout/utils/escapeStringLiteral.js +2 -6
  218. package/dist/host/layout/utils/escapeStringLiteral.js.map +1 -1
  219. package/dist/host/manifestSystem/index.d.ts +1 -1
  220. package/dist/host/manifestSystem/index.js +1 -1
  221. package/dist/host/media/projectAuthoringAssetWriter.d.ts +0 -1
  222. package/dist/host/media/projectAuthoringAssetWriter.d.ts.map +1 -1
  223. package/dist/host/media/projectAuthoringAssetWriter.js +8 -4
  224. package/dist/host/media/projectAuthoringAssetWriter.js.map +1 -1
  225. package/dist/host/media/removeProjectAuthoringAsset.d.ts +0 -1
  226. package/dist/host/media/removeProjectAuthoringAsset.d.ts.map +1 -1
  227. package/dist/host/media/removeProjectAuthoringAsset.js +6 -8
  228. package/dist/host/media/removeProjectAuthoringAsset.js.map +1 -1
  229. package/dist/host/modules/runtime/LocalFsTargetAdapter.d.ts +1 -1
  230. package/dist/host/modules/runtime/LocalFsTargetAdapter.js +2 -2
  231. package/dist/host/orchestrator/GeneratedRouteFileOwnership.d.ts +1 -1
  232. package/dist/host/orchestrator/GeneratedRouteFileOwnership.d.ts.map +1 -1
  233. package/dist/host/orchestrator/GeneratedRouteFileOwnership.js +8 -21
  234. package/dist/host/orchestrator/GeneratedRouteFileOwnership.js.map +1 -1
  235. package/dist/host/orchestrator/generatedAppFiles.d.ts +1 -4
  236. package/dist/host/orchestrator/generatedAppFiles.d.ts.map +1 -1
  237. package/dist/host/orchestrator/generatedAppFiles.js +4 -16
  238. package/dist/host/orchestrator/generatedAppFiles.js.map +1 -1
  239. package/dist/host/orchestrator/moduleManager.d.ts +1 -1
  240. package/dist/host/orchestrator/moduleManager.d.ts.map +1 -1
  241. package/dist/host/orchestrator/moduleManager.js +2 -8
  242. package/dist/host/orchestrator/moduleManager.js.map +1 -1
  243. package/dist/host/orchestrator/projectManager.d.ts +2 -2
  244. package/dist/host/orchestrator/projectManager.d.ts.map +1 -1
  245. package/dist/host/orchestrator/projectManager.js +13 -25
  246. package/dist/host/orchestrator/projectManager.js.map +1 -1
  247. package/dist/host/orchestrator/projectPaths.d.ts +3 -3
  248. package/dist/host/orchestrator/projectPaths.js +3 -3
  249. package/dist/host/orchestrator/projectStore.d.ts +1 -1
  250. package/dist/host/orchestrator/projectStore.js +1 -1
  251. package/dist/host/orchestrator/projectTargets.d.ts +1 -1
  252. package/dist/host/orchestrator/projectTargets.js +2 -2
  253. package/dist/host/orchestrator/reconcileProjectPackageRootAsync.d.ts +1 -1
  254. package/dist/host/orchestrator/reconcileProjectPackageRootAsync.js +1 -1
  255. package/dist/host/orchestrator/resolveMutations.d.ts +1 -1
  256. package/dist/host/orchestrator/resolveMutations.js +1 -1
  257. package/dist/host/orchestrator/scaffolder.d.ts +2 -4
  258. package/dist/host/orchestrator/scaffolder.d.ts.map +1 -1
  259. package/dist/host/orchestrator/scaffolder.js +12 -31
  260. package/dist/host/orchestrator/scaffolder.js.map +1 -1
  261. package/dist/host/orchestrator/studioInfraUp.d.ts +1 -1
  262. package/dist/host/orchestrator/studioInfraUp.js +1 -1
  263. package/dist/host/secrets/bunSupabaseVaultClient.d.ts +1 -1
  264. package/dist/host/secrets/bunSupabaseVaultClient.d.ts.map +1 -1
  265. package/dist/host/secrets/bunSupabaseVaultClient.js +6 -4
  266. package/dist/host/secrets/bunSupabaseVaultClient.js.map +1 -1
  267. package/dist/host/secrets/createScopedBunSupabaseVaultClient.d.ts +10 -0
  268. package/dist/host/secrets/createScopedBunSupabaseVaultClient.d.ts.map +1 -0
  269. package/dist/host/secrets/createScopedBunSupabaseVaultClient.js +32 -0
  270. package/dist/host/secrets/createScopedBunSupabaseVaultClient.js.map +1 -0
  271. package/dist/host/secrets/projectSecretService.d.ts +2 -2
  272. package/dist/host/secrets/projectSecretService.d.ts.map +1 -1
  273. package/dist/host/secrets/projectSecretService.js +9 -24
  274. package/dist/host/secrets/projectSecretService.js.map +1 -1
  275. package/dist/host/secrets/trustedOAuthInfraEnvironment.d.ts +2 -2
  276. package/dist/host/secrets/trustedOAuthInfraEnvironment.js +3 -3
  277. package/dist/host/templates/index.d.ts +2 -2
  278. package/dist/host/templates/index.js +2 -2
  279. package/dist/host/utils/requirementsInference.d.ts +2 -2
  280. package/dist/host/utils/requirementsInference.js +2 -2
  281. package/dist/host/utils/workspaceRoot.d.ts +1 -1
  282. package/dist/host/utils/workspaceRoot.d.ts.map +1 -1
  283. package/dist/host/utils/workspaceRoot.js +6 -10
  284. package/dist/host/utils/workspaceRoot.js.map +1 -1
  285. package/dist/index.d.ts +19 -23
  286. package/dist/index.d.ts.map +1 -1
  287. package/dist/index.js +29 -76
  288. package/dist/index.js.map +1 -1
  289. package/dist/insertModalModel.d.ts +2 -4
  290. package/dist/insertModalModel.d.ts.map +1 -1
  291. package/dist/insertModalModel.js +2 -4
  292. package/dist/insertModalModel.js.map +1 -1
  293. package/dist/manifestState.d.ts +45 -45
  294. package/dist/manifestState.js +58 -58
  295. package/dist/manifestSync.d.ts +3 -3
  296. package/dist/manifestSync.d.ts.map +1 -1
  297. package/dist/manifestSync.js +5 -4
  298. package/dist/manifestSync.js.map +1 -1
  299. package/dist/mediaAuthoringModel.d.ts +6 -8
  300. package/dist/mediaAuthoringModel.d.ts.map +1 -1
  301. package/dist/mediaAuthoringModel.js +17 -36
  302. package/dist/mediaAuthoringModel.js.map +1 -1
  303. package/dist/moduleAdminApi.d.ts +7 -9
  304. package/dist/moduleAdminApi.d.ts.map +1 -1
  305. package/dist/moduleAdminApi.js +15 -22
  306. package/dist/moduleAdminApi.js.map +1 -1
  307. package/dist/normalizeExternalApiId.d.ts +0 -1
  308. package/dist/normalizeExternalApiId.d.ts.map +1 -1
  309. package/dist/normalizeExternalApiId.js +2 -7
  310. package/dist/normalizeExternalApiId.js.map +1 -1
  311. package/dist/projectAuthApi.d.ts +1 -1
  312. package/dist/projectAuthApi.js +8 -9
  313. package/dist/projectAuthApi.js.map +1 -1
  314. package/dist/projectAuthHealth.d.ts +1 -1
  315. package/dist/projectAuthHealth.d.ts.map +1 -1
  316. package/dist/projectAuthHealth.js +10 -11
  317. package/dist/projectAuthHealth.js.map +1 -1
  318. package/dist/projectAuthRuntimeDiagnostics.d.ts +1 -1
  319. package/dist/projectAuthRuntimeDiagnostics.js +16 -24
  320. package/dist/projectAuthRuntimeDiagnostics.js.map +1 -1
  321. package/dist/projectDeployApi.d.ts +17 -17
  322. package/dist/projectDeployApi.js +18 -18
  323. package/dist/projectDeployApiError.d.ts +1 -1
  324. package/dist/projectDeployApiError.js +1 -1
  325. package/dist/projectDeployAssetPicker.d.ts +1 -1
  326. package/dist/projectDeployAssetPicker.d.ts.map +1 -1
  327. package/dist/projectDeployAssetPicker.js +10 -9
  328. package/dist/projectDeployAssetPicker.js.map +1 -1
  329. package/dist/projectDeployClient.d.ts +3 -3
  330. package/dist/projectDeployClient.d.ts.map +1 -1
  331. package/dist/projectDeployClient.js +42 -95
  332. package/dist/projectDeployClient.js.map +1 -1
  333. package/dist/projectIdentity.d.ts +1 -2
  334. package/dist/projectIdentity.d.ts.map +1 -1
  335. package/dist/projectIdentity.js +3 -4
  336. package/dist/projectIdentity.js.map +1 -1
  337. package/dist/projectOAuthSetup.d.ts +3 -3
  338. package/dist/projectOAuthSetup.js +3 -3
  339. package/dist/projectSecretApi.d.ts +6 -6
  340. package/dist/projectSecretApi.js +14 -14
  341. package/dist/projectSecretUsage.d.ts +1 -1
  342. package/dist/projectSecretUsage.js +1 -2
  343. package/dist/projectSecretUsage.js.map +1 -1
  344. package/dist/routeUtils.d.ts +1 -1
  345. package/dist/routeUtils.js +1 -1
  346. package/dist/runtime/actionSuppression.d.ts +0 -1
  347. package/dist/runtime/actionSuppression.d.ts.map +1 -1
  348. package/dist/runtime/actionSuppression.js +0 -1
  349. package/dist/runtime/actionSuppression.js.map +1 -1
  350. package/dist/runtime/index.d.ts +0 -2
  351. package/dist/runtime/index.d.ts.map +1 -1
  352. package/dist/runtime/index.js +0 -2
  353. package/dist/runtime/index.js.map +1 -1
  354. package/dist/runtime/interactionPolicy.d.ts +1 -1
  355. package/dist/runtime/interactionPolicy.js +1 -1
  356. package/dist/runtime/interactionPolicyCore.d.ts +0 -2
  357. package/dist/runtime/interactionPolicyCore.d.ts.map +1 -1
  358. package/dist/runtime/interactionPolicyCore.js +13 -28
  359. package/dist/runtime/interactionPolicyCore.js.map +1 -1
  360. package/dist/runtime/runtimeActions.d.ts +1 -1
  361. package/dist/runtime/runtimeActions.js +1 -1
  362. package/dist/runtime/runtimeNodeMeasurement.d.ts +2 -13
  363. package/dist/runtime/runtimeNodeMeasurement.d.ts.map +1 -1
  364. package/dist/runtime/runtimeNodeMeasurement.js +17 -86
  365. package/dist/runtime/runtimeNodeMeasurement.js.map +1 -1
  366. package/dist/runtime/stationarySelection.d.ts +3 -3
  367. package/dist/runtime/stationarySelection.d.ts.map +1 -1
  368. package/dist/runtime/stationarySelection.js +15 -54
  369. package/dist/runtime/stationarySelection.js.map +1 -1
  370. package/dist/runtime/studioMediaResolver.d.ts +1 -1
  371. package/dist/runtime/studioMediaResolver.js +2 -2
  372. package/dist/runtime/useRuntimeAction.d.ts +1 -1
  373. package/dist/runtime/useRuntimeAction.js +1 -1
  374. package/dist/runtimeDiagnosticsModel.d.ts +1 -4
  375. package/dist/runtimeDiagnosticsModel.d.ts.map +1 -1
  376. package/dist/runtimeDiagnosticsModel.js +1 -4
  377. package/dist/runtimeDiagnosticsModel.js.map +1 -1
  378. package/dist/secretResponseGuard.d.ts +2 -6
  379. package/dist/secretResponseGuard.d.ts.map +1 -1
  380. package/dist/secretResponseGuard.js +3 -37
  381. package/dist/secretResponseGuard.js.map +1 -1
  382. package/dist/studioAdminRouteModel.d.ts +7 -14
  383. package/dist/studioAdminRouteModel.d.ts.map +1 -1
  384. package/dist/studioAdminRouteModel.js +17 -28
  385. package/dist/studioAdminRouteModel.js.map +1 -1
  386. package/dist/studioRuntimeApi.d.ts +1 -1
  387. package/dist/studioRuntimeApi.js +3 -3
  388. package/dist/studioSelectionModel.d.ts +0 -4
  389. package/dist/studioSelectionModel.d.ts.map +1 -1
  390. package/dist/studioSelectionModel.js +0 -5
  391. package/dist/studioSelectionModel.js.map +1 -1
  392. package/dist/types/project-updates.d.ts +7 -1
  393. package/dist/types/project-updates.d.ts.map +1 -1
  394. package/dist/ui/admin/AnkhAdminPage.js +1 -1
  395. package/dist/ui/admin/AuthAdminSession.d.ts +1 -1
  396. package/dist/ui/admin/AuthAdminSession.js +1 -1
  397. package/dist/ui/admin/ModuleAdminViewBoundary.d.ts +0 -1
  398. package/dist/ui/admin/ModuleAdminViewBoundary.d.ts.map +1 -1
  399. package/dist/ui/admin/ModuleAdminViewBoundary.js +2 -2
  400. package/dist/ui/admin/ModuleAdminViewBoundary.js.map +1 -1
  401. package/dist/ui/admin/ModuleAdminViewHost.d.ts +1 -1
  402. package/dist/ui/admin/ModuleAdminViewHost.js +1 -1
  403. package/dist/ui/admin/adminPagePrimitives.d.ts +5 -5
  404. package/dist/ui/admin/adminPagePrimitives.js +5 -5
  405. package/dist/ui/admin/moduleAdminViewRegistry.d.ts +1 -1
  406. package/dist/ui/admin/moduleAdminViewRegistry.js +1 -1
  407. package/dist/ui/admin/pages/ApiOperationsCard.d.ts.map +1 -1
  408. package/dist/ui/admin/pages/ApiOperationsCard.js +4 -7
  409. package/dist/ui/admin/pages/ApiOperationsCard.js.map +1 -1
  410. package/dist/ui/admin/pages/AuthAdminPage.d.ts +1 -1
  411. package/dist/ui/admin/pages/AuthAdminPage.d.ts.map +1 -1
  412. package/dist/ui/admin/pages/AuthAdminPage.js +26 -35
  413. package/dist/ui/admin/pages/AuthAdminPage.js.map +1 -1
  414. package/dist/ui/admin/pages/BindingsAdminPage.d.ts +1 -1
  415. package/dist/ui/admin/pages/BindingsAdminPage.js +1 -1
  416. package/dist/ui/admin/pages/ModuleDetailAdminPage.d.ts.map +1 -1
  417. package/dist/ui/admin/pages/ModuleDetailAdminPage.js +4 -10
  418. package/dist/ui/admin/pages/ModuleDetailAdminPage.js.map +1 -1
  419. package/dist/ui/admin/pages/ModulesAdminPage.d.ts.map +1 -1
  420. package/dist/ui/admin/pages/ModulesAdminPage.js +3 -9
  421. package/dist/ui/admin/pages/ModulesAdminPage.js.map +1 -1
  422. package/dist/ui/admin/pages/ScreenDetailAdminPage.js +1 -1
  423. package/dist/ui/admin/pages/ScreensAdminPage.js +1 -1
  424. package/dist/ui/admin/pages/SecretsAdminPage.d.ts +1 -1
  425. package/dist/ui/admin/pages/SecretsAdminPage.d.ts.map +1 -1
  426. package/dist/ui/admin/pages/SecretsAdminPage.js +30 -137
  427. package/dist/ui/admin/pages/SecretsAdminPage.js.map +1 -1
  428. package/dist/ui/admin/pages/ThemeModeEditorSelector.d.ts +1 -1
  429. package/dist/ui/admin/pages/ThemeModeEditorSelector.js +1 -1
  430. package/dist/ui/admin/pages/adminApiOperations.d.ts +1 -1
  431. package/dist/ui/admin/pages/adminApiOperations.js +1 -1
  432. package/dist/ui/admin/pages/adminAuthCredentialFlow.d.ts +1 -1
  433. package/dist/ui/admin/pages/adminAuthCredentialFlow.d.ts.map +1 -1
  434. package/dist/ui/admin/pages/adminAuthCredentialFlow.js +5 -14
  435. package/dist/ui/admin/pages/adminAuthCredentialFlow.js.map +1 -1
  436. package/dist/ui/admin/pages/adminAuthSessionModel.d.ts +5 -66
  437. package/dist/ui/admin/pages/adminAuthSessionModel.d.ts.map +1 -1
  438. package/dist/ui/admin/pages/adminAuthSessionModel.js +37 -132
  439. package/dist/ui/admin/pages/adminAuthSessionModel.js.map +1 -1
  440. package/dist/ui/admin/pages/adminThemeModel.d.ts +2 -2
  441. package/dist/ui/admin/pages/adminThemeModel.js +2 -2
  442. package/dist/ui/admin/pages/bindings/bindingEditorModel.d.ts +0 -3
  443. package/dist/ui/admin/pages/bindings/bindingEditorModel.d.ts.map +1 -1
  444. package/dist/ui/admin/pages/bindings/bindingEditorModel.js +7 -8
  445. package/dist/ui/admin/pages/bindings/bindingEditorModel.js.map +1 -1
  446. package/dist/ui/admin/pages/deploy/useProjectDeployDashboard.d.ts +1 -1
  447. package/dist/ui/admin/pages/deploy/useProjectDeployDashboard.d.ts.map +1 -1
  448. package/dist/ui/admin/pages/deploy/useProjectDeployDashboard.js +8 -19
  449. package/dist/ui/admin/pages/deploy/useProjectDeployDashboard.js.map +1 -1
  450. package/dist/ui/admin/pages/screens/screensAdminActions.d.ts +1 -1
  451. package/dist/ui/admin/pages/screens/screensAdminActions.js +1 -1
  452. package/dist/ui/admin/pages/themeRecipeAuthoringModel.d.ts.map +1 -1
  453. package/dist/ui/admin/pages/themeRecipeAuthoringModel.js +3 -8
  454. package/dist/ui/admin/pages/themeRecipeAuthoringModel.js.map +1 -1
  455. package/dist/ui/admin/pages/themeRecipeTokenOptions.d.ts +1 -1
  456. package/dist/ui/admin/pages/themeRecipeTokenOptions.js +1 -1
  457. package/dist/ui/admin/pages/useActiveThemeAdmin.d.ts +1 -1
  458. package/dist/ui/admin/pages/useActiveThemeAdmin.js +1 -1
  459. package/dist/ui/canvas/StudioCanvasDndOverlay.d.ts +1 -1
  460. package/dist/ui/canvas/StudioCanvasDndOverlay.js +2 -2
  461. package/dist/ui/canvas/canvasDndInteraction.d.ts +3 -4
  462. package/dist/ui/canvas/canvasDndInteraction.d.ts.map +1 -1
  463. package/dist/ui/canvas/canvasDndInteraction.js +5 -5
  464. package/dist/ui/canvas/canvasDndInteraction.js.map +1 -1
  465. package/dist/utils/treeUtils.d.ts +1 -1
  466. package/dist/utils/treeUtils.js +1 -1
  467. package/dist/workspacePlatform.d.ts +0 -3
  468. package/dist/workspacePlatform.d.ts.map +1 -1
  469. package/dist/workspacePlatform.js +0 -3
  470. package/dist/workspacePlatform.js.map +1 -1
  471. package/package.json +51 -50
  472. package/dist/constants.d.ts +0 -1636
  473. package/dist/constants.d.ts.map +0 -1
  474. package/dist/constants.js +0 -10
  475. package/dist/constants.js.map +0 -1
  476. package/dist/host/zoraExtensions/index.d.ts +0 -22
  477. package/dist/host/zoraExtensions/index.d.ts.map +0 -1
  478. package/dist/host/zoraExtensions/index.js +0 -61
  479. package/dist/host/zoraExtensions/index.js.map +0 -1
  480. package/dist/runtime/appExtensionRegistry.d.ts +0 -3
  481. package/dist/runtime/appExtensionRegistry.d.ts.map +0 -1
  482. package/dist/runtime/appExtensionRegistry.js +0 -12
  483. package/dist/runtime/appExtensionRegistry.js.map +0 -1
  484. package/dist/runtime/registry.d.ts +0 -6
  485. package/dist/runtime/registry.d.ts.map +0 -1
  486. package/dist/runtime/registry.js +0 -5
  487. package/dist/runtime/registry.js.map +0 -1
  488. package/dist/ui/admin/pages/adminAuthHealthFlow.d.ts +0 -26
  489. package/dist/ui/admin/pages/adminAuthHealthFlow.d.ts.map +0 -1
  490. package/dist/ui/admin/pages/adminAuthHealthFlow.js +0 -32
  491. package/dist/ui/admin/pages/adminAuthHealthFlow.js.map +0 -1
@@ -1,3 +1,4 @@
1
+ import { serializeJavaScriptLiteral } from '@ankhorage/utility/string';
1
2
  import { escapeStringLiteral } from '../../utils/escapeStringLiteral';
2
3
  /*** Generate the OAuth callback-completion module for web and native generated app targets. */
3
4
  export function getAuthOAuthCompletionTs(args) {
@@ -166,9 +167,8 @@ function toTransportOutcome(result: AuthOAuthCompletionResult): GeneratedOAuthTr
166
167
  }
167
168
  /***
168
169
  * Serialize an optional native URL scheme for generated TypeScript source.
169
- * @utility @ankhorage/utility/string
170
170
  */
171
171
  function serializeOptionalScheme(scheme) {
172
- return scheme === undefined ? 'undefined' : `'${escapeStringLiteral(scheme)}'`;
172
+ return scheme === undefined ? 'undefined' : serializeJavaScriptLiteral(scheme);
173
173
  }
174
174
  //# sourceMappingURL=oauthCompletion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"oauthCompletion.js","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/oauthCompletion.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE,+FAA+F;AAC/F,MAAM,UAAU,wBAAwB,CAAC,IAGxC;IACC,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,uBAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC1E,MAAM,SAAS,GAAG,uBAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAElE,OAAO;;;;;;;;;gCASuB,aAAa;;aAEhC,aAAa;SACjB,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkJjB,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,SAAS,uBAAuB,CAAC,MAA0B;IACzD,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"oauthCompletion.js","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/oauthCompletion.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE,+FAA+F;AAC/F,MAAM,UAAU,wBAAwB,CAAC,IAGxC;IACC,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,uBAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC1E,MAAM,SAAS,GAAG,uBAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAElE,OAAO;;;;;;;;;gCASuB,aAAa;;aAEhC,aAAa;SACjB,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkJjB,CAAC;AACF,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,MAA0B;IACzD,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;AACjF,CAAC"}
@@ -14,7 +14,7 @@ interface AuthScreenTemplateArgs {
14
14
  }
15
15
  /*** Generate the thin route component that binds a generated auth screen to its initial mode and title. */
16
16
  export declare function getAuthScreenTsx(args: AuthScreenTemplateArgs): string;
17
- /*** Generate the shared auth screen runtime component used by sign-in and sign-up route wrappers. */
17
+ /*** Generate the thin application binding between generated auth orchestration and ZORA-owned auth presentation. */
18
18
  export declare function getAuthScreenRuntimeTsx(args: Omit<AuthScreenTemplateArgs, 'initialMode' | 'screenName' | 'title'>): string;
19
19
  export {};
20
20
  //# sourceMappingURL=screen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/screen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAInF,UAAU,sBAAsB;IAC9B,WAAW,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,EAAE,YAAY,GAAG,qBAAqB,CAAC;IACnD,cAAc,CAAC,EAAE,SAAS,0BAA0B,EAAE,CAAC;CACxD;AAED,2GAA2G;AAC3G,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,sBAAsB,UAQ5D;AAED,qGAAqG;AACrG,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE,aAAa,GAAG,YAAY,GAAG,OAAO,CAAC,UA0J3E"}
1
+ {"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/screen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAInF,UAAU,sBAAsB;IAC9B,WAAW,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,EAAE,YAAY,GAAG,qBAAqB,CAAC;IACnD,cAAc,CAAC,EAAE,SAAS,0BAA0B,EAAE,CAAC;CACxD;AAED,2GAA2G;AAC3G,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,sBAAsB,UAQ5D;AAED,oHAAoH;AACpH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE,aAAa,GAAG,YAAY,GAAG,OAAO,CAAC,UA+C3E"}
@@ -10,35 +10,20 @@ export default function ${safeName}Screen() {
10
10
  }
11
11
  `;
12
12
  }
13
- /*** Generate the shared auth screen runtime component used by sign-in and sign-up route wrappers. */
13
+ /*** Generate the thin application binding between generated auth orchestration and ZORA-owned auth presentation. */
14
14
  export function getAuthScreenRuntimeTsx(args) {
15
15
  const oauthEnabled = (args.oauthProviders?.length ?? 0) > 0;
16
16
  const oauthImports = oauthEnabled
17
17
  ? `import { generatedOAuthProviderItems } from '@/auth/oauth';\n`
18
18
  : '';
19
- const oauthZoraImport = oauthEnabled ? ' OAuthProviderList,\n' : '';
20
- const oauthView = oauthEnabled ? getOAuthViewSource() : '';
21
- const formLoading = oauthEnabled
22
- ? 'controller.loading || controller.oauthLoadingProvider !== null'
23
- : 'controller.loading';
19
+ const oauthProps = oauthEnabled ? getOAuthProviderPropsSource() : '';
24
20
  return `import type { AppManifest } from '@ankhorage/contracts';
25
21
  import { ManifestProvider } from '@ankhorage/runtime';
26
- import {
27
- KeyboardAvoidingView,
28
- ${oauthZoraImport} SignInForm,
29
- SignUpForm,
30
- Text,
31
- useZoraTheme,
32
- } from '@ankhorage/zora';
22
+ import { AuthScreen } from '@ankhorage/zora';
33
23
  import ankhConfig from '@root/ankh.config.json';
34
24
  import { Stack } from 'expo-router';
35
- import { Platform, ScrollView, StyleSheet, View } from 'react-native';
36
25
 
37
- ${oauthImports}import {
38
- type AuthMode,
39
- type AuthScreenController,
40
- useAuthScreenController,
41
- } from '@/auth/screen-controller';
26
+ ${oauthImports}import { type AuthMode, useAuthScreenController } from '@/auth/screen-controller';
42
27
 
43
28
  const fallbackManifest = ankhConfig as unknown as AppManifest;
44
29
 
@@ -50,140 +35,37 @@ export function GeneratedAuthScreen({
50
35
  title: string;
51
36
  }) {
52
37
  const controller = useAuthScreenController(initialMode);
53
- const { theme } = useZoraTheme();
54
38
  return (
55
39
  <ManifestProvider manifest={fallbackManifest}>
56
40
  <Stack.Screen options={{ title }} />
57
- <KeyboardAvoidingView
58
- behavior={Platform.select({ android: 'height', ios: 'padding' })}
59
- style={[styles.container, { backgroundColor: theme.colors.background }]}
60
- >
61
- <ScrollView
62
- contentContainerStyle={styles.scrollContent}
63
- keyboardShouldPersistTaps="handled"
64
- style={styles.scroll}
65
- >
66
- <View
67
- style={[
68
- styles.card,
69
- { backgroundColor: theme.colors.surface, borderColor: theme.colors.border },
70
- ]}
71
- >
72
- <AuthScreenContent borderColor={theme.colors.border} controller={controller} />
73
- </View>
74
- </ScrollView>
75
- </KeyboardAvoidingView>
76
- </ManifestProvider>
77
- );
78
- }
79
-
80
- function AuthScreenContent({
81
- borderColor,
82
- controller,
83
- }: {
84
- borderColor: string;
85
- controller: AuthScreenController;
86
- }) {
87
- return (
88
- <>
89
- <Text variant="lead" weight="semiBold">
90
- {controller.mode === 'signIn' ? 'Sign in' : 'Create account'}
91
- </Text>
92
- <Text emphasis="muted" variant="bodySmall">
93
- {controller.identifierField.helper}
94
- </Text>${oauthView}
95
- <AuthForm controller={controller} />
96
- {controller.info ? (
97
- <Text color="success" variant="bodySmall">
98
- {controller.info}
99
- </Text>
100
- ) : null}
101
- </>
102
- );
103
- }
104
-
105
- function AuthForm({ controller }: { controller: AuthScreenController }) {
106
- if (controller.mode === 'signIn') {
107
- return (
108
- <SignInForm
41
+ <AuthScreen
42
+ authMode={controller.mode}
43
+ description={controller.identifierField.helper}
109
44
  error={controller.error}
110
45
  identifierLabel={controller.identifierField.label}
111
46
  identifiers={controller.authIdentifiers}
112
- loading={${formLoading}}
113
- onSignUp={controller.showSignUp}
114
- onSubmit={controller.handleSignInSubmit}
115
- signUpLabel="Need an account? Sign up"
116
- submitLabel="Sign in"
47
+ info={controller.info}
48
+ loading={controller.loading || controller.oauthLoadingProvider !== null}
49
+ onModeChange={controller.showMode}
50
+ onOAuthProviderPress={controller.handleOAuthProviderPress}
51
+ onSignInSubmit={controller.handleSignInSubmit}
52
+ onSignUpSubmit={controller.handleSignUpSubmit}
53
+ signUpFields={controller.signUpFields}${oauthProps}
117
54
  />
118
- );
119
- }
120
- return (
121
- <SignUpForm
122
- error={controller.error}
123
- fields={controller.signUpFields}
124
- loading={${formLoading}}
125
- onSignIn={controller.showSignIn}
126
- onSubmit={controller.handleSignUpSubmit}
127
- signInLabel="Already have an account? Sign in"
128
- submitLabel="Create account"
129
- />
55
+ </ManifestProvider>
130
56
  );
131
57
  }
132
-
133
- const styles = StyleSheet.create({
134
- container: {
135
- flex: 1,
136
- },
137
- scroll: {
138
- flex: 1,
139
- width: '100%',
140
- },
141
- scrollContent: {
142
- alignItems: 'center',
143
- flexGrow: 1,
144
- justifyContent: 'center',
145
- padding: 24,
146
- },
147
- card: {
148
- borderRadius: 24,
149
- borderWidth: 1,
150
- gap: 16,
151
- maxWidth: 560,
152
- padding: 24,
153
- width: '100%',
154
- },
155
- separatorLine: {
156
- flex: 1,
157
- height: StyleSheet.hairlineWidth,
158
- },
159
- separatorRow: {
160
- alignItems: 'center',
161
- flexDirection: 'row',
162
- gap: 12,
163
- },
164
- });
165
58
  `;
166
59
  }
167
- /*** Render the optional OAuth provider controls injected into the generated shared auth screen. */
168
- function getOAuthViewSource() {
60
+ /*** Render generated OAuth provider state as ZORA AuthScreen input without owning OAuth presentation. */
61
+ function getOAuthProviderPropsSource() {
169
62
  return `
170
- <OAuthProviderList
171
- disabled={controller.loading}
172
- onProviderPress={controller.handleOAuthProviderPress}
173
- providers={generatedOAuthProviderItems.map((provider) => ({
63
+ oauthProviders={generatedOAuthProviderItems.map((provider) => ({
174
64
  ...provider,
175
65
  disabled:
176
66
  controller.oauthLoadingProvider !== null &&
177
67
  controller.oauthLoadingProvider !== provider.id,
178
68
  loading: controller.oauthLoadingProvider === provider.id,
179
- }))}
180
- />
181
- <View style={styles.separatorRow}>
182
- <View style={[styles.separatorLine, { backgroundColor: borderColor }]} />
183
- <Text emphasis="muted" variant="bodySmall">
184
- or continue with password
185
- </Text>
186
- <View style={[styles.separatorLine, { backgroundColor: borderColor }]} />
187
- </View>`;
69
+ }))}`;
188
70
  }
189
71
  //# sourceMappingURL=screen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"screen.js","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/screen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAgBvD,2GAA2G;AAC3G,MAAM,UAAU,gBAAgB,CAAC,IAA4B;IAC3D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,OAAO;;0BAEiB,QAAQ;6CACW,IAAI,CAAC,WAAW,YAAY,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC;;CAE1H,CAAC;AACF,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,uBAAuB,CACrC,IAA0E;IAE1E,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,YAAY;QAC/B,CAAC,CAAC,+DAA+D;QACjE,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,MAAM,WAAW,GAAG,YAAY;QAC9B,CAAC,CAAC,gEAAgE;QAClE,CAAC,CAAC,oBAAoB,CAAC;IAEzB,OAAO;;;;EAIP,eAAe;;;;;;;;;EASf,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAyDC,SAAS;;;;;;;;;;;;;;;;;;mBAkBL,WAAW;;;;;;;;;;;;iBAYb,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyC3B,CAAC;AACF,CAAC;AAED,mGAAmG;AACnG,SAAS,kBAAkB;IACzB,OAAO;;;;;;;;;;;;;;;;;;cAkBK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"screen.js","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/screen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAgBvD,2GAA2G;AAC3G,MAAM,UAAU,gBAAgB,CAAC,IAA4B;IAC3D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,OAAO;;0BAEiB,QAAQ;6CACW,IAAI,CAAC,WAAW,YAAY,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC;;CAE1H,CAAC;AACF,CAAC;AAED,oHAAoH;AACpH,MAAM,UAAU,uBAAuB,CACrC,IAA0E;IAE1E,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,YAAY;QAC/B,CAAC,CAAC,+DAA+D;QACjE,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAErE,OAAO;;;;;;EAMP,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;gDA2BkC,UAAU;;;;;CAKzD,CAAC;AACF,CAAC;AAED,yGAAyG;AACzG,SAAS,2BAA2B;IAClC,OAAO;;;;;;;aAOI,CAAC;AACd,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"screenController.d.ts","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/screenController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAYnF,UAAU,gCAAgC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,EAAE,YAAY,GAAG,qBAAqB,CAAC;IACnD,cAAc,CAAC,EAAE,SAAS,0BAA0B,EAAE,CAAC;CACxD;AAED,gFAAgF;AAChF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,gCAAgC,UA8M/E"}
1
+ {"version":3,"file":"screenController.d.ts","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/screenController.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAWnF,UAAU,gCAAgC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,EAAE,YAAY,GAAG,qBAAqB,CAAC;IACnD,cAAc,CAAC,EAAE,SAAS,0BAA0B,EAAE,CAAC;CACxD;AAED,gFAAgF;AAChF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,gCAAgC,UA4M/E"}
@@ -1,11 +1,11 @@
1
+ import { serializeJavaScriptLiteral } from '@ankhorage/utility/string';
1
2
  import { escapeStringLiteral } from '../../utils/escapeStringLiteral';
2
3
  import { routeNameToGroupedHref } from '../utils/routes';
3
4
  /***
4
5
  * Serialize a string list as a compact single-quoted JavaScript array literal.
5
- * @utility @ankhorage/utility/string
6
6
  */
7
7
  function serializeStringArrayLiteral(values) {
8
- return `[${values.map((value) => `'${escapeStringLiteral(value)}'`).join(', ')}]`;
8
+ return serializeJavaScriptLiteral(values);
9
9
  }
10
10
  /*** Generate the stateful auth-screen controller module for a generated app. */
11
11
  export function getAuthScreenControllerTs(args) {
@@ -65,8 +65,7 @@ export interface AuthScreenController {
65
65
  loading: boolean;
66
66
  mode: AuthMode;
67
67
  oauthLoadingProvider: string | null;
68
- showSignIn: () => void;
69
- showSignUp: () => void;
68
+ showMode: (nextMode: AuthMode) => void;
70
69
  signUpFields: ReturnType<typeof buildSignUpFields>;
71
70
  }
72
71
 
@@ -99,8 +98,7 @@ export function useAuthScreenController(initialMode: AuthMode): AuthScreenContro
99
98
  loading,
100
99
  mode,
101
100
  oauthLoadingProvider,
102
- showSignIn: () => showMode('signIn'),
103
- showSignUp: () => showMode('signUp'),
101
+ showMode,
104
102
  signUpFields,
105
103
  };
106
104
  }
@@ -1 +1 @@
1
- {"version":3,"file":"screenController.js","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/screenController.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD;;;GAGG;AACH,SAAS,2BAA2B,CAAC,MAAyB;IAC5D,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACpF,CAAC;AAaD,gFAAgF;AAChF,MAAM,UAAU,yBAAyB,CAAC,IAAsC;IAC9E,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,YAAY;QAC9B,CAAC,CAAC,2DAA2D;QAC7D,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,eAAe,GAAG,YAAY;QAClC,CAAC,CAAC,wBAAwB,EAAE;QAC5B,CAAC,CAAC;;;IAGF,CAAC;IACH,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,KAAK,YAAY,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1F,MAAM,gBAAgB,GACpB,IAAI,CAAC,YAAY,KAAK,YAAY;QAChC,CAAC,CAAC;;;;;CAKP;QACK,CAAC,CAAC,EAAE,CAAC;IAET,OAAO;;;;;;;;;;;EAWP,kBAAkB;;;;EAIlB,WAAW;;wCAE2B,2BAA2B,CAAC,IAAI,CAAC,iBAAiB,CAAC;4CAC/C,2BAA2B,CAAC,IAAI,CAAC,oBAAoB,CAAC;4CACtD,2BAA2B,CAAC,IAAI,CAAC,oBAAoB,CAAC;yBACzE,mBAAmB,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;yBACrE,mBAAmB,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;8BAChE,mBAAmB,CAAC,sBAAsB,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sGAqCA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6FnH,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BjB,CAAC;AACF,CAAC;AAED,sHAAsH;AACtH,SAAS,wBAAwB;IAC/B,OAAO;;;;;;;;;;;;;;;;IAgBL,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"screenController.js","sourceRoot":"","sources":["../../../../../src/host/layout/templates/auth/screenController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAGvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD;;GAEG;AACH,SAAS,2BAA2B,CAAC,MAAyB;IAC5D,OAAO,0BAA0B,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC;AAaD,gFAAgF;AAChF,MAAM,UAAU,yBAAyB,CAAC,IAAsC;IAC9E,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,YAAY;QAC9B,CAAC,CAAC,2DAA2D;QAC7D,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,eAAe,GAAG,YAAY;QAClC,CAAC,CAAC,wBAAwB,EAAE;QAC5B,CAAC,CAAC;;;IAGF,CAAC;IACH,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,KAAK,YAAY,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1F,MAAM,gBAAgB,GACpB,IAAI,CAAC,YAAY,KAAK,YAAY;QAChC,CAAC,CAAC;;;;;CAKP;QACK,CAAC,CAAC,EAAE,CAAC;IAET,OAAO;;;;;;;;;;;EAWP,kBAAkB;;;;EAIlB,WAAW;;wCAE2B,2BAA2B,CAAC,IAAI,CAAC,iBAAiB,CAAC;4CAC/C,2BAA2B,CAAC,IAAI,CAAC,oBAAoB,CAAC;4CACtD,2BAA2B,CAAC,IAAI,CAAC,oBAAoB,CAAC;yBACzE,mBAAmB,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;yBACrE,mBAAmB,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;8BAChE,mBAAmB,CAAC,sBAAsB,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sGAoCA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4FnH,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BjB,CAAC;AACF,CAAC;AAED,sHAAsH;AACtH,SAAS,wBAAwB;IAC/B,OAAO;;;;;;;;;;;;;;;;IAgBL,CAAC;AACL,CAAC"}
@@ -35,7 +35,7 @@ interface GetRootLayoutTsxArgs {
35
35
  export declare function getRootLayoutImportRequirements(includeStudio: boolean): GeneratedImportRequirement[];
36
36
  /***
37
37
  * Generate the complete Expo root-layout module by composing manifest navigation, runtime providers, optional auth integration, Studio authoring shell and generated operation infrastructure.
38
- * @todo Move generated application-shell template ownership out of the generic host/layout bucket into the project/template generation domain.
38
+ * TODO: Move generated application-shell template ownership out of the generic host/layout bucket into the project/template generation domain.
39
39
  */
40
40
  export declare function getRootLayoutTsx(args: GetRootLayoutTsxArgs): string;
41
41
  export {};
@@ -64,7 +64,7 @@ export function getRootLayoutImportRequirements(includeStudio) {
64
64
  }
65
65
  /***
66
66
  * Indent every non-empty line in a generated multiline block while preserving blank lines.
67
- * @utility @ankhorage/utility/string
67
+ * Utility candidate: @ankhorage/utility/string
68
68
  */
69
69
  function indentGeneratedBlock(content, indent = ' ') {
70
70
  return content
@@ -74,7 +74,7 @@ function indentGeneratedBlock(content, indent = ' ') {
74
74
  }
75
75
  /***
76
76
  * Generate the complete Expo root-layout module by composing manifest navigation, runtime providers, optional auth integration, Studio authoring shell and generated operation infrastructure.
77
- * @todo Move generated application-shell template ownership out of the generic host/layout bucket into the project/template generation domain.
77
+ * TODO: Move generated application-shell template ownership out of the generic host/layout bucket into the project/template generation domain.
78
78
  */
79
79
  export function getRootLayoutTsx(args) {
80
80
  const { manifest, mutations, allImports, allHooks, innerNavigation, includeStudio, authRuntime, initialRouteNameOverride, runtimeModuleDeclarations, runtimeActionHookName = 'useRuntimeAction', runtimeProviderEnd = [], runtimeProviderStart = [], useStoredAuthSessionCredentialResolver = false, } = args;
@@ -298,8 +298,8 @@ const shouldMountAppHeader =
298
298
  projectId={ankhConfig.metadata.slug}
299
299
  initialManifest={runtimeManifest}
300
300
  activePathname={isStudioAdminPath(appPathname) ? undefined : appPathname}
301
- componentMeta={STUDIO_ZORA_PLUGIN_CATALOG.componentMeta}
302
- bindableComponentMeta={STUDIO_ZORA_PLUGIN_CATALOG.bindableComponentMeta}
301
+ componentMeta={ZORA_COMPONENT_META}
302
+ bindableComponentMeta={ZORA_BINDABLE_COMPONENT_META}
303
303
  mediaPicker={studioMediaPicker}
304
304
  >
305
305
  <StudioShell
@@ -1,7 +1,7 @@
1
1
  import type { ScreenSpec } from '@ankhorage/contracts';
2
2
  /***
3
3
  * Generate an Expo Router screen module that resolves the active manifest screen, injects route params into runtime bindings and renders a missing-screen fallback when needed.
4
- * @todo Keep generated screen-module policy with the routes/project-generation owner rather than a generic host layout bucket.
4
+ * TODO: Keep generated screen-module policy with the routes/project-generation owner rather than a generic host layout bucket.
5
5
  */
6
6
  export declare function getScreenTsx(args: {
7
7
  screenId: string;
@@ -2,7 +2,7 @@ import { escapeStringLiteral } from '../utils/escapeStringLiteral';
2
2
  import { toSafeComponentName } from './utils/strings';
3
3
  /***
4
4
  * Generate an Expo Router screen module that resolves the active manifest screen, injects route params into runtime bindings and renders a missing-screen fallback when needed.
5
- * @todo Keep generated screen-module policy with the routes/project-generation owner rather than a generic host layout bucket.
5
+ * TODO: Keep generated screen-module policy with the routes/project-generation owner rather than a generic host layout bucket.
6
6
  */
7
7
  export function getScreenTsx(args) {
8
8
  const { screenId, screenDef } = args;
@@ -1,11 +1,11 @@
1
1
  /***
2
2
  * Convert a file-based route name into its public href, treating index as the root route.
3
- * @utility @ankhorage/utility/route
3
+ * Utility candidate: @ankhorage/utility/route
4
4
  */
5
5
  export declare function routeNameToHref(routeName: string): string;
6
6
  /***
7
7
  * Convert a file-based route name into its grouped Expo Router href, preserving the special app-root behavior.
8
- * @utility @ankhorage/utility/route
8
+ * Utility candidate: @ankhorage/utility/route
9
9
  */
10
10
  export declare function routeNameToGroupedHref(routeName: string, groupName: string): string;
11
11
  //# sourceMappingURL=routes.d.ts.map
@@ -1,6 +1,6 @@
1
1
  /***
2
2
  * Convert a file-based route name into its public href, treating index as the root route.
3
- * @utility @ankhorage/utility/route
3
+ * Utility candidate: @ankhorage/utility/route
4
4
  */
5
5
  export function routeNameToHref(routeName) {
6
6
  const normalized = routeName.trim().replace(/^\/+/, '').replace(/\/+$/, '');
@@ -11,7 +11,7 @@ export function routeNameToHref(routeName) {
11
11
  }
12
12
  /***
13
13
  * Convert a file-based route name into its grouped Expo Router href, preserving the special app-root behavior.
14
- * @utility @ankhorage/utility/route
14
+ * Utility candidate: @ankhorage/utility/route
15
15
  */
16
16
  export function routeNameToGroupedHref(routeName, groupName) {
17
17
  const normalized = routeName.trim().replace(/^\/+/, '').replace(/\/+$/, '');
@@ -1,6 +1,6 @@
1
1
  /***
2
2
  * Remove non-alphanumeric characters from a value before using it as a generated component identifier fragment.
3
- * @utility @ankhorage/utility/string
3
+ * Utility candidate: @ankhorage/utility/string
4
4
  */
5
5
  export declare function toSafeComponentName(value: string): string;
6
6
  //# sourceMappingURL=strings.d.ts.map
@@ -1,6 +1,6 @@
1
1
  /***
2
2
  * Remove non-alphanumeric characters from a value before using it as a generated component identifier fragment.
3
- * @utility @ankhorage/utility/string
3
+ * Utility candidate: @ankhorage/utility/string
4
4
  */
5
5
  export function toSafeComponentName(value) {
6
6
  return value.replace(/[^a-zA-Z0-9]/g, '');
@@ -1,6 +1,5 @@
1
1
  /***
2
2
  * Escape a value for safe interpolation inside a single-quoted JavaScript or TypeScript string literal.
3
- * @utility @ankhorage/utility/string
4
3
  */
5
4
  export declare function escapeStringLiteral(value: string): string;
6
5
  //# sourceMappingURL=escapeStringLiteral.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"escapeStringLiteral.d.ts","sourceRoot":"","sources":["../../../../src/host/layout/utils/escapeStringLiteral.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMzD"}
1
+ {"version":3,"file":"escapeStringLiteral.d.ts","sourceRoot":"","sources":["../../../../src/host/layout/utils/escapeStringLiteral.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD"}
@@ -1,12 +1,8 @@
1
+ import { quoteJavaScriptString } from '@ankhorage/utility/string';
1
2
  /***
2
3
  * Escape a value for safe interpolation inside a single-quoted JavaScript or TypeScript string literal.
3
- * @utility @ankhorage/utility/string
4
4
  */
5
5
  export function escapeStringLiteral(value) {
6
- return value
7
- .replaceAll('\\', '\\\\')
8
- .replaceAll("'", "\\'")
9
- .replaceAll('\n', '\\n')
10
- .replaceAll('\r', '\\r');
6
+ return quoteJavaScriptString(value).slice(1, -1);
11
7
  }
12
8
  //# sourceMappingURL=escapeStringLiteral.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"escapeStringLiteral.js","sourceRoot":"","sources":["../../../../src/host/layout/utils/escapeStringLiteral.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,KAAK;SACT,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC;SACtB,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC;SACvB,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"escapeStringLiteral.js","sourceRoot":"","sources":["../../../../src/host/layout/utils/escapeStringLiteral.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC"}
@@ -3,7 +3,7 @@ export * from './auth';
3
3
  export * from './types';
4
4
  /***
5
5
  * Apply Studio-owned system templates and inferred screen requirements to a canonical manifest.
6
- * @todo Move manifest enrichment from the host edge into the manifest application domain.
6
+ * TODO: Move manifest enrichment from the host edge into the manifest application domain.
7
7
  */
8
8
  export declare function applySystemTemplates(manifest: AppManifest): AppManifest;
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -5,7 +5,7 @@ export * from './types';
5
5
  const SYSTEM_MANIFEST_TEMPLATES = [SYSTEM_TEMPLATE_AUTH_GLOBAL_DEFAULT];
6
6
  /***
7
7
  * Apply Studio-owned system templates and inferred screen requirements to a canonical manifest.
8
- * @todo Move manifest enrichment from the host edge into the manifest application domain.
8
+ * TODO: Move manifest enrichment from the host edge into the manifest application domain.
9
9
  */
10
10
  export function applySystemTemplates(manifest) {
11
11
  const enrichedManifest = SYSTEM_MANIFEST_TEMPLATES.reduce((currentManifest, template) => {
@@ -1,6 +1,5 @@
1
1
  /***
2
2
  * Write one bundled authoring asset only when its resolved destination stays inside the authoring root.
3
- * @utility @ankhorage/utility/node/fs
4
3
  */
5
4
  export declare function writeProjectAuthoringAsset(projectPath: string, relativePath: string, body: Uint8Array): Promise<void>;
6
5
  //# sourceMappingURL=projectAuthoringAssetWriter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"projectAuthoringAssetWriter.d.ts","sourceRoot":"","sources":["../../../src/host/media/projectAuthoringAssetWriter.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,IAAI,CAAC,CASf"}
1
+ {"version":3,"file":"projectAuthoringAssetWriter.d.ts","sourceRoot":"","sources":["../../../src/host/media/projectAuthoringAssetWriter.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,IAAI,CAAC,CAUf"}
@@ -1,16 +1,20 @@
1
1
  import { promises as fs } from 'node:fs';
2
2
  import path from 'node:path';
3
+ import { writeFileWithinRoot } from '@ankhorage/utility/node/fs';
4
+ import { resolvePathWithinRoot } from '@ankhorage/utility/node/path';
3
5
  /***
4
6
  * Write one bundled authoring asset only when its resolved destination stays inside the authoring root.
5
- * @utility @ankhorage/utility/node/fs
6
7
  */
7
8
  export async function writeProjectAuthoringAsset(projectPath, relativePath, body) {
8
9
  const authoringRoot = path.resolve(projectPath, 'assets/authoring');
9
10
  const destination = path.resolve(projectPath, relativePath);
10
- if (destination !== authoringRoot && !destination.startsWith(`${authoringRoot}${path.sep}`)) {
11
+ try {
12
+ resolvePathWithinRoot(authoringRoot, path.relative(authoringRoot, destination));
13
+ }
14
+ catch {
11
15
  throw new Error('Bundled media path escaped the project authoring assets directory.');
12
16
  }
13
- await fs.mkdir(path.dirname(destination), { recursive: true });
14
- await fs.writeFile(destination, body, { flag: 'wx' });
17
+ await fs.mkdir(authoringRoot, { recursive: true });
18
+ await writeFileWithinRoot({ rootPath: authoringRoot, filePath: destination, body });
15
19
  }
16
20
  //# sourceMappingURL=projectAuthoringAssetWriter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"projectAuthoringAssetWriter.js","sourceRoot":"","sources":["../../../src/host/media/projectAuthoringAssetWriter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,WAAmB,EACnB,YAAoB,EACpB,IAAgB;IAEhB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,IAAI,WAAW,KAAK,aAAa,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAC5F,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,MAAM,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"projectAuthoringAssetWriter.js","sourceRoot":"","sources":["../../../src/host/media/projectAuthoringAssetWriter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,WAAmB,EACnB,YAAoB,EACpB,IAAgB;IAEhB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,IAAI,CAAC;QACH,qBAAqB,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;IAClF,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,MAAM,mBAAmB,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AACtF,CAAC"}
@@ -1,6 +1,5 @@
1
1
  /***
2
2
  * Remove one bundled authoring asset only when its resolved destination stays inside the authoring root, then prune empty parents.
3
- * @utility @ankhorage/utility/node/fs
4
3
  */
5
4
  export declare function removeProjectAuthoringAsset(projectPath: string, relativePath: string): Promise<void>;
6
5
  //# sourceMappingURL=removeProjectAuthoringAsset.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"removeProjectAuthoringAsset.d.ts","sourceRoot":"","sources":["../../../src/host/media/removeProjectAuthoringAsset.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CASf"}
1
+ {"version":3,"file":"removeProjectAuthoringAsset.d.ts","sourceRoot":"","sources":["../../../src/host/media/removeProjectAuthoringAsset.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAQf"}
@@ -1,17 +1,15 @@
1
- import { promises as fs } from 'node:fs';
2
1
  import path from 'node:path';
3
- import { pruneEmptyDirectories } from '@ankhorage/utility/node/fs';
2
+ import { removeFileWithinRoot } from '@ankhorage/utility/node/fs';
4
3
  /***
5
4
  * Remove one bundled authoring asset only when its resolved destination stays inside the authoring root, then prune empty parents.
6
- * @utility @ankhorage/utility/node/fs
7
5
  */
8
6
  export async function removeProjectAuthoringAsset(projectPath, relativePath) {
9
7
  const authoringRoot = path.resolve(projectPath, 'assets/authoring');
10
8
  const destination = path.resolve(projectPath, relativePath);
11
- if (destination === authoringRoot || !destination.startsWith(`${authoringRoot}${path.sep}`)) {
12
- throw new Error('Bundled media path is outside the project authoring assets directory.');
13
- }
14
- await fs.rm(destination, { force: true });
15
- await pruneEmptyDirectories(path.dirname(destination), authoringRoot);
9
+ await removeFileWithinRoot({
10
+ rootPath: authoringRoot,
11
+ filePath: destination,
12
+ pruneEmptyParents: true,
13
+ });
16
14
  }
17
15
  //# sourceMappingURL=removeProjectAuthoringAsset.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"removeProjectAuthoringAsset.js","sourceRoot":"","sources":["../../../src/host/media/removeProjectAuthoringAsset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,WAAmB,EACnB,YAAoB;IAEpB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,IAAI,WAAW,KAAK,aAAa,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAC5F,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC3F,CAAC;IAED,MAAM,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,MAAM,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,CAAC;AACxE,CAAC"}
1
+ {"version":3,"file":"removeProjectAuthoringAsset.js","sourceRoot":"","sources":["../../../src/host/media/removeProjectAuthoringAsset.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,WAAmB,EACnB,YAAoB;IAEpB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,MAAM,oBAAoB,CAAC;QACzB,QAAQ,EAAE,aAAa;QACvB,QAAQ,EAAE,WAAW;QACrB,iBAAiB,EAAE,IAAI;KACxB,CAAC,CAAC;AACL,CAAC"}
@@ -16,7 +16,7 @@ interface FileTargetAdapter {
16
16
  }
17
17
  /***
18
18
  * Implement the Orchestrator module target filesystem contract with local Node filesystem/process APIs.
19
- * @todo Move this concrete FileTargetAdapter out of Studio to the Orchestrator/runtime owner instead of retaining a package-generic adapter under Studio host modules.
19
+ * TODO: Move this concrete FileTargetAdapter out of Studio to the Orchestrator/runtime owner instead of retaining a package-generic adapter under Studio host modules.
20
20
  */
21
21
  export declare class LocalFsTargetAdapter implements FileTargetAdapter {
22
22
  /*** Report whether a local target path exists. */
@@ -5,7 +5,7 @@ import { promisify } from 'util';
5
5
  const execFileAsync = promisify(execFileCb);
6
6
  /***
7
7
  * Emit opt-in filesystem trace output for local module target operations.
8
- * @todo Move this adapter-local tracing with the FileTargetAdapter implementation to the Orchestrator owner.
8
+ * TODO: Move this adapter-local tracing with the FileTargetAdapter implementation to the Orchestrator owner.
9
9
  */
10
10
  function trace(op, p) {
11
11
  if (process.env.ANKH_TRACE_FS) {
@@ -15,7 +15,7 @@ function trace(op, p) {
15
15
  }
16
16
  /***
17
17
  * Implement the Orchestrator module target filesystem contract with local Node filesystem/process APIs.
18
- * @todo Move this concrete FileTargetAdapter out of Studio to the Orchestrator/runtime owner instead of retaining a package-generic adapter under Studio host modules.
18
+ * TODO: Move this concrete FileTargetAdapter out of Studio to the Orchestrator/runtime owner instead of retaining a package-generic adapter under Studio host modules.
19
19
  */
20
20
  export class LocalFsTargetAdapter {
21
21
  /*** Report whether a local target path exists. */
@@ -1,6 +1,6 @@
1
1
  /***
2
2
  * Own the current generated-route ledger so Studio deletes only files it generated and still owns.
3
- * @todo Move generated route-file ownership from generic `host/orchestrator` into the routes/projects generation domain.
3
+ * Follow-up: Move generated route-file ownership from generic `host/orchestrator` into the routes/projects generation domain.
4
4
  */
5
5
  export declare class GeneratedRouteFileOwnership {
6
6
  /*** Require valid route ownership state before an existing generated project can be synchronized. */
@@ -1 +1 @@
1
- {"version":3,"file":"GeneratedRouteFileOwnership.d.ts","sourceRoot":"","sources":["../../../src/host/orchestrator/GeneratedRouteFileOwnership.ts"],"names":[],"mappings":"AA8BA;;;GAGG;AACH,qBAAa,2BAA2B;IACtC,qGAAqG;IAC/F,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,wGAAwG;IAClG,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvF,mHAAmH;IAC7G,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAYvF"}
1
+ {"version":3,"file":"GeneratedRouteFileOwnership.d.ts","sourceRoot":"","sources":["../../../src/host/orchestrator/GeneratedRouteFileOwnership.ts"],"names":[],"mappings":"AA6BA;;;GAGG;AACH,qBAAa,2BAA2B;IACtC,qGAAqG;IAC/F,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,wGAAwG;IAClG,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvF,mHAAmH;IAC7G,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAYvF"}