@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.
- package/README.md +23 -7
- package/apm/update.json +2 -2
- package/dist/authSettings.d.ts +3 -3
- package/dist/authSettings.js +3 -3
- package/dist/bindingDiagnosticsModel.d.ts +1 -1
- package/dist/bindingDiagnosticsModel.d.ts.map +1 -1
- package/dist/bindingDiagnosticsModel.js +10 -10
- package/dist/bindingDiagnosticsModel.js.map +1 -1
- package/dist/bindingMetadataModel.d.ts +0 -2
- package/dist/bindingMetadataModel.d.ts.map +1 -1
- package/dist/bindingMetadataModel.js +3 -4
- package/dist/bindingMetadataModel.js.map +1 -1
- package/dist/bindingMutationModel.d.ts +4 -4
- package/dist/bindingMutationModel.d.ts.map +1 -1
- package/dist/bindingMutationModel.js +7 -8
- package/dist/bindingMutationModel.js.map +1 -1
- package/dist/bindingOperationModel.d.ts +2 -2
- package/dist/bindingOperationModel.js +7 -7
- package/dist/bindingSchemaModel.d.ts +3 -3
- package/dist/bindingSchemaModel.js +5 -5
- package/dist/canExecuteProjectDeployRelease.d.ts +1 -1
- package/dist/canExecuteProjectDeployRelease.js +1 -1
- package/dist/canvasDragModel.d.ts +5 -7
- package/dist/canvasDragModel.d.ts.map +1 -1
- package/dist/canvasDragModel.js +9 -16
- package/dist/canvasDragModel.js.map +1 -1
- package/dist/canvasDropZones.d.ts +1 -2
- package/dist/canvasDropZones.d.ts.map +1 -1
- package/dist/canvasDropZones.js +1 -2
- package/dist/canvasDropZones.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/contractGuards.d.ts +2 -2
- package/dist/contractGuards.js +2 -2
- package/dist/core/StudioContext.d.ts +1 -1
- package/dist/core/StudioContext.js +1 -1
- package/dist/core/StudioProvider.js +5 -5
- package/dist/core/mediaAuthoringHostClient.d.ts +2 -2
- package/dist/core/mediaAuthoringHostClient.js +2 -2
- package/dist/core/mediaRemovalCoordinator.d.ts +1 -1
- package/dist/core/mediaRemovalCoordinator.d.ts.map +1 -1
- package/dist/core/mediaRemovalCoordinator.js +9 -10
- package/dist/core/mediaRemovalCoordinator.js.map +1 -1
- package/dist/core/studioManifestDraftModel.d.ts +7 -7
- package/dist/core/studioManifestDraftModel.js +7 -7
- package/dist/core/studioManifestPersistenceModel.d.ts +1 -1
- package/dist/core/studioManifestPersistenceModel.js +1 -1
- package/dist/createProjectDeployRequest.d.ts +0 -1
- package/dist/createProjectDeployRequest.d.ts.map +1 -1
- package/dist/createProjectDeployRequest.js +0 -1
- package/dist/createProjectDeployRequest.js.map +1 -1
- package/dist/externalApiApi.d.ts +3 -3
- package/dist/externalApiApi.d.ts.map +1 -1
- package/dist/externalApiApi.js +24 -40
- package/dist/externalApiApi.js.map +1 -1
- package/dist/features/infrastructure/adapters/outbound/createStudioInfraAdapterPackageResolver.d.ts +4 -1
- package/dist/features/infrastructure/adapters/outbound/createStudioInfraAdapterPackageResolver.d.ts.map +1 -1
- package/dist/features/infrastructure/adapters/outbound/createStudioInfraAdapterPackageResolver.js +10 -2
- package/dist/features/infrastructure/adapters/outbound/createStudioInfraAdapterPackageResolver.js.map +1 -1
- package/dist/features/infrastructure/composition/createStudioProjectInfraLifecycle.d.ts +5 -1
- package/dist/features/infrastructure/composition/createStudioProjectInfraLifecycle.d.ts.map +1 -1
- package/dist/features/infrastructure/composition/createStudioProjectInfraLifecycle.js +4 -3
- package/dist/features/infrastructure/composition/createStudioProjectInfraLifecycle.js.map +1 -1
- package/dist/features/project-updates/adapters/inbound/ProjectUpdateDashboardPanel.d.ts.map +1 -1
- package/dist/features/project-updates/adapters/inbound/ProjectUpdateDashboardPanel.js +12 -4
- package/dist/features/project-updates/adapters/inbound/ProjectUpdateDashboardPanel.js.map +1 -1
- package/dist/features/project-updates/adapters/outbound/createStudioGeneratedPackagePolicyProjectReadPort.d.ts +4 -0
- package/dist/features/project-updates/adapters/outbound/createStudioGeneratedPackagePolicyProjectReadPort.d.ts.map +1 -0
- package/dist/features/project-updates/adapters/outbound/createStudioGeneratedPackagePolicyProjectReadPort.js +30 -0
- package/dist/features/project-updates/adapters/outbound/createStudioGeneratedPackagePolicyProjectReadPort.js.map +1 -0
- package/dist/features/project-updates/adapters/outbound/getGeneratedPackagePolicy.js +0 -8
- package/dist/features/project-updates/adapters/outbound/getGeneratedPackagePolicy.js.map +1 -1
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyDescriptor.d.ts +4 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyDescriptor.d.ts.map +1 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyDescriptor.js +21 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyDescriptor.js.map +1 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyHandler.d.ts +4 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyHandler.d.ts.map +1 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyHandler.js +11 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyHandler.js.map +1 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyProjectionDescriptor.d.ts +4 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyProjectionDescriptor.d.ts.map +1 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyProjectionDescriptor.js +10 -0
- package/dist/features/project-updates/adapters/outbound/readStudioGeneratedPackagePolicyProjectionDescriptor.js.map +1 -0
- package/dist/features/project-updates/application/resolveProjectUpdateDashboardPresentation.d.ts +11 -0
- package/dist/features/project-updates/application/resolveProjectUpdateDashboardPresentation.d.ts.map +1 -1
- package/dist/features/project-updates/application/resolveProjectUpdateDashboardPresentation.js +23 -8
- package/dist/features/project-updates/application/resolveProjectUpdateDashboardPresentation.js.map +1 -1
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyApplyOwnerStepPort.d.ts +4 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyApplyOwnerStepPort.d.ts.map +1 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyApplyOwnerStepPort.js +176 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyApplyOwnerStepPort.js.map +1 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyExtensionEvidencePort.d.ts +5 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyExtensionEvidencePort.d.ts.map +1 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyExtensionEvidencePort.js +148 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyExtensionEvidencePort.js.map +1 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyProtocolPort.d.ts +5 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyProtocolPort.d.ts.map +1 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyProtocolPort.js +219 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyProtocolPort.js.map +1 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyUpdatePorts.d.ts +9 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyUpdatePorts.d.ts.map +1 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyUpdatePorts.js +17 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyUpdatePorts.js.map +1 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyVerifyOwnerStepPort.d.ts +4 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyVerifyOwnerStepPort.d.ts.map +1 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyVerifyOwnerStepPort.js +80 -0
- package/dist/features/project-updates/composition/createStudioGeneratedPackagePolicyVerifyOwnerStepPort.js.map +1 -0
- package/dist/features/project-updates/composition/createStudioProjectUpdateService.d.ts.map +1 -1
- package/dist/features/project-updates/composition/createStudioProjectUpdateService.js +11 -9
- package/dist/features/project-updates/composition/createStudioProjectUpdateService.js.map +1 -1
- package/dist/features/project-updates/constants.d.ts +2 -0
- package/dist/features/project-updates/constants.d.ts.map +1 -1
- package/dist/features/project-updates/constants.js +2 -0
- package/dist/features/project-updates/constants.js.map +1 -1
- package/dist/features/project-updates/domain/applyGeneratedPackagePolicy.d.ts.map +1 -1
- package/dist/features/project-updates/domain/applyGeneratedPackagePolicy.js +6 -3
- package/dist/features/project-updates/domain/applyGeneratedPackagePolicy.js.map +1 -1
- package/dist/features/project-updates/domain/createStudioGeneratedPackagePolicyExecutionContext.d.ts +4 -0
- package/dist/features/project-updates/domain/createStudioGeneratedPackagePolicyExecutionContext.d.ts.map +1 -0
- package/dist/features/project-updates/domain/createStudioGeneratedPackagePolicyExecutionContext.js +11 -0
- package/dist/features/project-updates/domain/createStudioGeneratedPackagePolicyExecutionContext.js.map +1 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyInventorySource.d.ts +5 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyInventorySource.d.ts.map +1 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyInventorySource.js +22 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyInventorySource.js.map +1 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyMutationTarget.d.ts +10 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyMutationTarget.d.ts.map +1 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyMutationTarget.js +21 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyMutationTarget.js.map +1 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyStatusSource.d.ts +5 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyStatusSource.d.ts.map +1 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyStatusSource.js +18 -0
- package/dist/features/project-updates/domain/readStudioGeneratedPackagePolicyStatusSource.js.map +1 -0
- package/dist/host/apis/createProjectEndpointCredentialResolver.d.ts +1 -1
- package/dist/host/apis/createProjectEndpointCredentialResolver.js +1 -1
- package/dist/host/apis/createTrustedEndpointTestFetch.d.ts +1 -1
- package/dist/host/apis/createTrustedEndpointTestFetch.js +1 -1
- package/dist/host/apis/createTrustedExternalApiFetch.d.ts +1 -1
- package/dist/host/apis/createTrustedExternalApiFetch.js +1 -1
- package/dist/host/apis/requestTrustedExternalApi.d.ts +3 -12
- package/dist/host/apis/requestTrustedExternalApi.d.ts.map +1 -1
- package/dist/host/apis/requestTrustedExternalApi.js +3 -53
- package/dist/host/apis/requestTrustedExternalApi.js.map +1 -1
- package/dist/host/apis/sanitizeExternalApiOperationTestResult.d.ts +1 -1
- package/dist/host/apis/sanitizeExternalApiOperationTestResult.js +1 -1
- package/dist/host/apis/studioExternalApiService.d.ts +1 -1
- package/dist/host/apis/studioExternalApiService.d.ts.map +1 -1
- package/dist/host/apis/studioExternalApiService.js +10 -17
- package/dist/host/apis/studioExternalApiService.js.map +1 -1
- package/dist/host/auth/projectAuthHealthService.d.ts +1 -1
- package/dist/host/auth/projectAuthHealthService.js +1 -1
- package/dist/host/createStudioHost.d.ts +1 -1
- package/dist/host/createStudioHost.js +1 -1
- package/dist/host/deploy/serializeProjectDeploySecret.d.ts.map +1 -1
- package/dist/host/deploy/serializeProjectDeploySecret.js +2 -9
- package/dist/host/deploy/serializeProjectDeploySecret.js.map +1 -1
- package/dist/host/http/apiRoutes.d.ts +1 -1
- package/dist/host/http/apiRoutes.d.ts.map +1 -1
- package/dist/host/http/apiRoutes.js +19 -29
- package/dist/host/http/apiRoutes.js.map +1 -1
- package/dist/host/http/authRoutes.js +1 -1
- package/dist/host/http/deployRoutes.d.ts.map +1 -1
- package/dist/host/http/deployRoutes.js +5 -11
- package/dist/host/http/deployRoutes.js.map +1 -1
- package/dist/host/http/mediaRoutes.d.ts.map +1 -1
- package/dist/host/http/mediaRoutes.js +10 -16
- package/dist/host/http/mediaRoutes.js.map +1 -1
- package/dist/host/http/moduleRoutes.d.ts.map +1 -1
- package/dist/host/http/moduleRoutes.js +8 -20
- package/dist/host/http/moduleRoutes.js.map +1 -1
- package/dist/host/http/secretRoutes.d.ts.map +1 -1
- package/dist/host/http/secretRoutes.js +10 -20
- package/dist/host/http/secretRoutes.js.map +1 -1
- package/dist/host/http/security.d.ts +1 -1
- package/dist/host/http/security.js +1 -1
- package/dist/host/http/server.d.ts +1 -1
- package/dist/host/http/server.js +1 -1
- package/dist/host/http/serverWithSecrets.d.ts +1 -1
- package/dist/host/http/serverWithSecrets.js +1 -1
- package/dist/host/layout/auth/resolveAuthLayoutPlan.d.ts +1 -1
- package/dist/host/layout/auth/resolveAuthLayoutPlan.d.ts.map +1 -1
- package/dist/host/layout/auth/resolveAuthLayoutPlan.js +7 -13
- package/dist/host/layout/auth/resolveAuthLayoutPlan.js.map +1 -1
- package/dist/host/layout/generatedImportComposer.d.ts +1 -1
- package/dist/host/layout/generatedImportComposer.js +3 -1
- package/dist/host/layout/generatedImportComposer.js.map +1 -1
- package/dist/host/layout/layoutGenerator.d.ts +2 -1
- package/dist/host/layout/layoutGenerator.d.ts.map +1 -1
- package/dist/host/layout/layoutGenerator.js +117 -69
- package/dist/host/layout/layoutGenerator.js.map +1 -1
- package/dist/host/layout/templates/auth/navigation.d.ts.map +1 -1
- package/dist/host/layout/templates/auth/navigation.js +2 -2
- package/dist/host/layout/templates/auth/navigation.js.map +1 -1
- package/dist/host/layout/templates/auth/oauth.d.ts.map +1 -1
- package/dist/host/layout/templates/auth/oauth.js +2 -8
- package/dist/host/layout/templates/auth/oauth.js.map +1 -1
- package/dist/host/layout/templates/auth/oauthCompletion.d.ts.map +1 -1
- package/dist/host/layout/templates/auth/oauthCompletion.js +2 -2
- package/dist/host/layout/templates/auth/oauthCompletion.js.map +1 -1
- package/dist/host/layout/templates/auth/screen.d.ts +1 -1
- package/dist/host/layout/templates/auth/screen.d.ts.map +1 -1
- package/dist/host/layout/templates/auth/screen.js +19 -137
- package/dist/host/layout/templates/auth/screen.js.map +1 -1
- package/dist/host/layout/templates/auth/screenController.d.ts.map +1 -1
- package/dist/host/layout/templates/auth/screenController.js +4 -6
- package/dist/host/layout/templates/auth/screenController.js.map +1 -1
- package/dist/host/layout/templates/rootLayout.d.ts +1 -1
- package/dist/host/layout/templates/rootLayout.js +4 -4
- package/dist/host/layout/templates/screen.d.ts +1 -1
- package/dist/host/layout/templates/screen.js +1 -1
- package/dist/host/layout/templates/utils/routes.d.ts +2 -2
- package/dist/host/layout/templates/utils/routes.js +2 -2
- package/dist/host/layout/templates/utils/strings.d.ts +1 -1
- package/dist/host/layout/templates/utils/strings.js +1 -1
- package/dist/host/layout/utils/escapeStringLiteral.d.ts +0 -1
- package/dist/host/layout/utils/escapeStringLiteral.d.ts.map +1 -1
- package/dist/host/layout/utils/escapeStringLiteral.js +2 -6
- package/dist/host/layout/utils/escapeStringLiteral.js.map +1 -1
- package/dist/host/manifestSystem/index.d.ts +1 -1
- package/dist/host/manifestSystem/index.js +1 -1
- package/dist/host/media/projectAuthoringAssetWriter.d.ts +0 -1
- package/dist/host/media/projectAuthoringAssetWriter.d.ts.map +1 -1
- package/dist/host/media/projectAuthoringAssetWriter.js +8 -4
- package/dist/host/media/projectAuthoringAssetWriter.js.map +1 -1
- package/dist/host/media/removeProjectAuthoringAsset.d.ts +0 -1
- package/dist/host/media/removeProjectAuthoringAsset.d.ts.map +1 -1
- package/dist/host/media/removeProjectAuthoringAsset.js +6 -8
- package/dist/host/media/removeProjectAuthoringAsset.js.map +1 -1
- package/dist/host/modules/runtime/LocalFsTargetAdapter.d.ts +1 -1
- package/dist/host/modules/runtime/LocalFsTargetAdapter.js +2 -2
- package/dist/host/orchestrator/GeneratedRouteFileOwnership.d.ts +1 -1
- package/dist/host/orchestrator/GeneratedRouteFileOwnership.d.ts.map +1 -1
- package/dist/host/orchestrator/GeneratedRouteFileOwnership.js +8 -21
- package/dist/host/orchestrator/GeneratedRouteFileOwnership.js.map +1 -1
- package/dist/host/orchestrator/generatedAppFiles.d.ts +1 -4
- package/dist/host/orchestrator/generatedAppFiles.d.ts.map +1 -1
- package/dist/host/orchestrator/generatedAppFiles.js +4 -16
- package/dist/host/orchestrator/generatedAppFiles.js.map +1 -1
- package/dist/host/orchestrator/moduleManager.d.ts +1 -1
- package/dist/host/orchestrator/moduleManager.d.ts.map +1 -1
- package/dist/host/orchestrator/moduleManager.js +2 -8
- package/dist/host/orchestrator/moduleManager.js.map +1 -1
- package/dist/host/orchestrator/projectManager.d.ts +2 -2
- package/dist/host/orchestrator/projectManager.d.ts.map +1 -1
- package/dist/host/orchestrator/projectManager.js +13 -25
- package/dist/host/orchestrator/projectManager.js.map +1 -1
- package/dist/host/orchestrator/projectPaths.d.ts +3 -3
- package/dist/host/orchestrator/projectPaths.js +3 -3
- package/dist/host/orchestrator/projectStore.d.ts +1 -1
- package/dist/host/orchestrator/projectStore.js +1 -1
- package/dist/host/orchestrator/projectTargets.d.ts +1 -1
- package/dist/host/orchestrator/projectTargets.js +2 -2
- package/dist/host/orchestrator/reconcileProjectPackageRootAsync.d.ts +1 -1
- package/dist/host/orchestrator/reconcileProjectPackageRootAsync.js +1 -1
- package/dist/host/orchestrator/resolveMutations.d.ts +1 -1
- package/dist/host/orchestrator/resolveMutations.js +1 -1
- package/dist/host/orchestrator/scaffolder.d.ts +2 -4
- package/dist/host/orchestrator/scaffolder.d.ts.map +1 -1
- package/dist/host/orchestrator/scaffolder.js +12 -31
- package/dist/host/orchestrator/scaffolder.js.map +1 -1
- package/dist/host/orchestrator/studioInfraUp.d.ts +1 -1
- package/dist/host/orchestrator/studioInfraUp.js +1 -1
- package/dist/host/secrets/bunSupabaseVaultClient.d.ts +1 -1
- package/dist/host/secrets/bunSupabaseVaultClient.d.ts.map +1 -1
- package/dist/host/secrets/bunSupabaseVaultClient.js +6 -4
- package/dist/host/secrets/bunSupabaseVaultClient.js.map +1 -1
- package/dist/host/secrets/createScopedBunSupabaseVaultClient.d.ts +10 -0
- package/dist/host/secrets/createScopedBunSupabaseVaultClient.d.ts.map +1 -0
- package/dist/host/secrets/createScopedBunSupabaseVaultClient.js +32 -0
- package/dist/host/secrets/createScopedBunSupabaseVaultClient.js.map +1 -0
- package/dist/host/secrets/projectSecretService.d.ts +2 -2
- package/dist/host/secrets/projectSecretService.d.ts.map +1 -1
- package/dist/host/secrets/projectSecretService.js +9 -24
- package/dist/host/secrets/projectSecretService.js.map +1 -1
- package/dist/host/secrets/trustedOAuthInfraEnvironment.d.ts +2 -2
- package/dist/host/secrets/trustedOAuthInfraEnvironment.js +3 -3
- package/dist/host/templates/index.d.ts +2 -2
- package/dist/host/templates/index.js +2 -2
- package/dist/host/utils/requirementsInference.d.ts +2 -2
- package/dist/host/utils/requirementsInference.js +2 -2
- package/dist/host/utils/workspaceRoot.d.ts +1 -1
- package/dist/host/utils/workspaceRoot.d.ts.map +1 -1
- package/dist/host/utils/workspaceRoot.js +6 -10
- package/dist/host/utils/workspaceRoot.js.map +1 -1
- package/dist/index.d.ts +19 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +29 -76
- package/dist/index.js.map +1 -1
- package/dist/insertModalModel.d.ts +2 -4
- package/dist/insertModalModel.d.ts.map +1 -1
- package/dist/insertModalModel.js +2 -4
- package/dist/insertModalModel.js.map +1 -1
- package/dist/manifestState.d.ts +45 -45
- package/dist/manifestState.js +58 -58
- package/dist/manifestSync.d.ts +3 -3
- package/dist/manifestSync.d.ts.map +1 -1
- package/dist/manifestSync.js +5 -4
- package/dist/manifestSync.js.map +1 -1
- package/dist/mediaAuthoringModel.d.ts +6 -8
- package/dist/mediaAuthoringModel.d.ts.map +1 -1
- package/dist/mediaAuthoringModel.js +17 -36
- package/dist/mediaAuthoringModel.js.map +1 -1
- package/dist/moduleAdminApi.d.ts +7 -9
- package/dist/moduleAdminApi.d.ts.map +1 -1
- package/dist/moduleAdminApi.js +15 -22
- package/dist/moduleAdminApi.js.map +1 -1
- package/dist/normalizeExternalApiId.d.ts +0 -1
- package/dist/normalizeExternalApiId.d.ts.map +1 -1
- package/dist/normalizeExternalApiId.js +2 -7
- package/dist/normalizeExternalApiId.js.map +1 -1
- package/dist/projectAuthApi.d.ts +1 -1
- package/dist/projectAuthApi.js +8 -9
- package/dist/projectAuthApi.js.map +1 -1
- package/dist/projectAuthHealth.d.ts +1 -1
- package/dist/projectAuthHealth.d.ts.map +1 -1
- package/dist/projectAuthHealth.js +10 -11
- package/dist/projectAuthHealth.js.map +1 -1
- package/dist/projectAuthRuntimeDiagnostics.d.ts +1 -1
- package/dist/projectAuthRuntimeDiagnostics.js +16 -24
- package/dist/projectAuthRuntimeDiagnostics.js.map +1 -1
- package/dist/projectDeployApi.d.ts +17 -17
- package/dist/projectDeployApi.js +18 -18
- package/dist/projectDeployApiError.d.ts +1 -1
- package/dist/projectDeployApiError.js +1 -1
- package/dist/projectDeployAssetPicker.d.ts +1 -1
- package/dist/projectDeployAssetPicker.d.ts.map +1 -1
- package/dist/projectDeployAssetPicker.js +10 -9
- package/dist/projectDeployAssetPicker.js.map +1 -1
- package/dist/projectDeployClient.d.ts +3 -3
- package/dist/projectDeployClient.d.ts.map +1 -1
- package/dist/projectDeployClient.js +42 -95
- package/dist/projectDeployClient.js.map +1 -1
- package/dist/projectIdentity.d.ts +1 -2
- package/dist/projectIdentity.d.ts.map +1 -1
- package/dist/projectIdentity.js +3 -4
- package/dist/projectIdentity.js.map +1 -1
- package/dist/projectOAuthSetup.d.ts +3 -3
- package/dist/projectOAuthSetup.js +3 -3
- package/dist/projectSecretApi.d.ts +6 -6
- package/dist/projectSecretApi.js +14 -14
- package/dist/projectSecretUsage.d.ts +1 -1
- package/dist/projectSecretUsage.js +1 -2
- package/dist/projectSecretUsage.js.map +1 -1
- package/dist/routeUtils.d.ts +1 -1
- package/dist/routeUtils.js +1 -1
- package/dist/runtime/actionSuppression.d.ts +0 -1
- package/dist/runtime/actionSuppression.d.ts.map +1 -1
- package/dist/runtime/actionSuppression.js +0 -1
- package/dist/runtime/actionSuppression.js.map +1 -1
- package/dist/runtime/index.d.ts +0 -2
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +0 -2
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/interactionPolicy.d.ts +1 -1
- package/dist/runtime/interactionPolicy.js +1 -1
- package/dist/runtime/interactionPolicyCore.d.ts +0 -2
- package/dist/runtime/interactionPolicyCore.d.ts.map +1 -1
- package/dist/runtime/interactionPolicyCore.js +13 -28
- package/dist/runtime/interactionPolicyCore.js.map +1 -1
- package/dist/runtime/runtimeActions.d.ts +1 -1
- package/dist/runtime/runtimeActions.js +1 -1
- package/dist/runtime/runtimeNodeMeasurement.d.ts +2 -13
- package/dist/runtime/runtimeNodeMeasurement.d.ts.map +1 -1
- package/dist/runtime/runtimeNodeMeasurement.js +17 -86
- package/dist/runtime/runtimeNodeMeasurement.js.map +1 -1
- package/dist/runtime/stationarySelection.d.ts +3 -3
- package/dist/runtime/stationarySelection.d.ts.map +1 -1
- package/dist/runtime/stationarySelection.js +15 -54
- package/dist/runtime/stationarySelection.js.map +1 -1
- package/dist/runtime/studioMediaResolver.d.ts +1 -1
- package/dist/runtime/studioMediaResolver.js +2 -2
- package/dist/runtime/useRuntimeAction.d.ts +1 -1
- package/dist/runtime/useRuntimeAction.js +1 -1
- package/dist/runtimeDiagnosticsModel.d.ts +1 -4
- package/dist/runtimeDiagnosticsModel.d.ts.map +1 -1
- package/dist/runtimeDiagnosticsModel.js +1 -4
- package/dist/runtimeDiagnosticsModel.js.map +1 -1
- package/dist/secretResponseGuard.d.ts +2 -6
- package/dist/secretResponseGuard.d.ts.map +1 -1
- package/dist/secretResponseGuard.js +3 -37
- package/dist/secretResponseGuard.js.map +1 -1
- package/dist/studioAdminRouteModel.d.ts +7 -14
- package/dist/studioAdminRouteModel.d.ts.map +1 -1
- package/dist/studioAdminRouteModel.js +17 -28
- package/dist/studioAdminRouteModel.js.map +1 -1
- package/dist/studioRuntimeApi.d.ts +1 -1
- package/dist/studioRuntimeApi.js +3 -3
- package/dist/studioSelectionModel.d.ts +0 -4
- package/dist/studioSelectionModel.d.ts.map +1 -1
- package/dist/studioSelectionModel.js +0 -5
- package/dist/studioSelectionModel.js.map +1 -1
- package/dist/types/project-updates.d.ts +7 -1
- package/dist/types/project-updates.d.ts.map +1 -1
- package/dist/ui/admin/AnkhAdminPage.js +1 -1
- package/dist/ui/admin/AuthAdminSession.d.ts +1 -1
- package/dist/ui/admin/AuthAdminSession.js +1 -1
- package/dist/ui/admin/ModuleAdminViewBoundary.d.ts +0 -1
- package/dist/ui/admin/ModuleAdminViewBoundary.d.ts.map +1 -1
- package/dist/ui/admin/ModuleAdminViewBoundary.js +2 -2
- package/dist/ui/admin/ModuleAdminViewBoundary.js.map +1 -1
- package/dist/ui/admin/ModuleAdminViewHost.d.ts +1 -1
- package/dist/ui/admin/ModuleAdminViewHost.js +1 -1
- package/dist/ui/admin/adminPagePrimitives.d.ts +5 -5
- package/dist/ui/admin/adminPagePrimitives.js +5 -5
- package/dist/ui/admin/moduleAdminViewRegistry.d.ts +1 -1
- package/dist/ui/admin/moduleAdminViewRegistry.js +1 -1
- package/dist/ui/admin/pages/ApiOperationsCard.d.ts.map +1 -1
- package/dist/ui/admin/pages/ApiOperationsCard.js +4 -7
- package/dist/ui/admin/pages/ApiOperationsCard.js.map +1 -1
- package/dist/ui/admin/pages/AuthAdminPage.d.ts +1 -1
- package/dist/ui/admin/pages/AuthAdminPage.d.ts.map +1 -1
- package/dist/ui/admin/pages/AuthAdminPage.js +26 -35
- package/dist/ui/admin/pages/AuthAdminPage.js.map +1 -1
- package/dist/ui/admin/pages/BindingsAdminPage.d.ts +1 -1
- package/dist/ui/admin/pages/BindingsAdminPage.js +1 -1
- package/dist/ui/admin/pages/ModuleDetailAdminPage.d.ts.map +1 -1
- package/dist/ui/admin/pages/ModuleDetailAdminPage.js +4 -10
- package/dist/ui/admin/pages/ModuleDetailAdminPage.js.map +1 -1
- package/dist/ui/admin/pages/ModulesAdminPage.d.ts.map +1 -1
- package/dist/ui/admin/pages/ModulesAdminPage.js +3 -9
- package/dist/ui/admin/pages/ModulesAdminPage.js.map +1 -1
- package/dist/ui/admin/pages/ScreenDetailAdminPage.js +1 -1
- package/dist/ui/admin/pages/ScreensAdminPage.js +1 -1
- package/dist/ui/admin/pages/SecretsAdminPage.d.ts +1 -1
- package/dist/ui/admin/pages/SecretsAdminPage.d.ts.map +1 -1
- package/dist/ui/admin/pages/SecretsAdminPage.js +30 -137
- package/dist/ui/admin/pages/SecretsAdminPage.js.map +1 -1
- package/dist/ui/admin/pages/ThemeModeEditorSelector.d.ts +1 -1
- package/dist/ui/admin/pages/ThemeModeEditorSelector.js +1 -1
- package/dist/ui/admin/pages/adminApiOperations.d.ts +1 -1
- package/dist/ui/admin/pages/adminApiOperations.js +1 -1
- package/dist/ui/admin/pages/adminAuthCredentialFlow.d.ts +1 -1
- package/dist/ui/admin/pages/adminAuthCredentialFlow.d.ts.map +1 -1
- package/dist/ui/admin/pages/adminAuthCredentialFlow.js +5 -14
- package/dist/ui/admin/pages/adminAuthCredentialFlow.js.map +1 -1
- package/dist/ui/admin/pages/adminAuthSessionModel.d.ts +5 -66
- package/dist/ui/admin/pages/adminAuthSessionModel.d.ts.map +1 -1
- package/dist/ui/admin/pages/adminAuthSessionModel.js +37 -132
- package/dist/ui/admin/pages/adminAuthSessionModel.js.map +1 -1
- package/dist/ui/admin/pages/adminThemeModel.d.ts +2 -2
- package/dist/ui/admin/pages/adminThemeModel.js +2 -2
- package/dist/ui/admin/pages/bindings/bindingEditorModel.d.ts +0 -3
- package/dist/ui/admin/pages/bindings/bindingEditorModel.d.ts.map +1 -1
- package/dist/ui/admin/pages/bindings/bindingEditorModel.js +7 -8
- package/dist/ui/admin/pages/bindings/bindingEditorModel.js.map +1 -1
- package/dist/ui/admin/pages/deploy/useProjectDeployDashboard.d.ts +1 -1
- package/dist/ui/admin/pages/deploy/useProjectDeployDashboard.d.ts.map +1 -1
- package/dist/ui/admin/pages/deploy/useProjectDeployDashboard.js +8 -19
- package/dist/ui/admin/pages/deploy/useProjectDeployDashboard.js.map +1 -1
- package/dist/ui/admin/pages/screens/screensAdminActions.d.ts +1 -1
- package/dist/ui/admin/pages/screens/screensAdminActions.js +1 -1
- package/dist/ui/admin/pages/themeRecipeAuthoringModel.d.ts.map +1 -1
- package/dist/ui/admin/pages/themeRecipeAuthoringModel.js +3 -8
- package/dist/ui/admin/pages/themeRecipeAuthoringModel.js.map +1 -1
- package/dist/ui/admin/pages/themeRecipeTokenOptions.d.ts +1 -1
- package/dist/ui/admin/pages/themeRecipeTokenOptions.js +1 -1
- package/dist/ui/admin/pages/useActiveThemeAdmin.d.ts +1 -1
- package/dist/ui/admin/pages/useActiveThemeAdmin.js +1 -1
- package/dist/ui/canvas/StudioCanvasDndOverlay.d.ts +1 -1
- package/dist/ui/canvas/StudioCanvasDndOverlay.js +2 -2
- package/dist/ui/canvas/canvasDndInteraction.d.ts +3 -4
- package/dist/ui/canvas/canvasDndInteraction.d.ts.map +1 -1
- package/dist/ui/canvas/canvasDndInteraction.js +5 -5
- package/dist/ui/canvas/canvasDndInteraction.js.map +1 -1
- package/dist/utils/treeUtils.d.ts +1 -1
- package/dist/utils/treeUtils.js +1 -1
- package/dist/workspacePlatform.d.ts +0 -3
- package/dist/workspacePlatform.d.ts.map +1 -1
- package/dist/workspacePlatform.js +0 -3
- package/dist/workspacePlatform.js.map +1 -1
- package/package.json +51 -50
- package/dist/constants.d.ts +0 -1636
- package/dist/constants.d.ts.map +0 -1
- package/dist/constants.js +0 -10
- package/dist/constants.js.map +0 -1
- package/dist/host/zoraExtensions/index.d.ts +0 -22
- package/dist/host/zoraExtensions/index.d.ts.map +0 -1
- package/dist/host/zoraExtensions/index.js +0 -61
- package/dist/host/zoraExtensions/index.js.map +0 -1
- package/dist/runtime/appExtensionRegistry.d.ts +0 -3
- package/dist/runtime/appExtensionRegistry.d.ts.map +0 -1
- package/dist/runtime/appExtensionRegistry.js +0 -12
- package/dist/runtime/appExtensionRegistry.js.map +0 -1
- package/dist/runtime/registry.d.ts +0 -6
- package/dist/runtime/registry.d.ts.map +0 -1
- package/dist/runtime/registry.js +0 -5
- package/dist/runtime/registry.js.map +0 -1
- package/dist/ui/admin/pages/adminAuthHealthFlow.d.ts +0 -26
- package/dist/ui/admin/pages/adminAuthHealthFlow.d.ts.map +0 -1
- package/dist/ui/admin/pages/adminAuthHealthFlow.js +0 -32
- package/dist/ui/admin/pages/adminAuthHealthFlow.js.map +0 -1
|
@@ -30,7 +30,7 @@ export function registerProjectAuthRoutes(fastify, options) {
|
|
|
30
30
|
}
|
|
31
31
|
/***
|
|
32
32
|
* Return a successful `{ok}` result directly or send a failed result with a configured server-error status.
|
|
33
|
-
*
|
|
33
|
+
* Utility candidate: @ankhorage/utility/http/fastify
|
|
34
34
|
*/
|
|
35
35
|
function sendProjectAuthHealthResult(reply, result) {
|
|
36
36
|
if (result.ok)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployRoutes.d.ts","sourceRoot":"","sources":["../../../src/host/http/deployRoutes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deployRoutes.d.ts","sourceRoot":"","sources":["../../../src/host/http/deployRoutes.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,eAAe,EAAgC,MAAM,SAAS,CAAC;AAG7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIrE,2HAA2H;AAC3H,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE;IACJ,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,CAAC;CACzC,GACA,IAAI,CAcN"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
|
+
import { toErrorMessage } from '@ankhorage/utility/error';
|
|
2
3
|
import { ProjectDeployService } from '../deploy/ProjectDeployService';
|
|
3
4
|
const MAX_STORE_ASSET_BYTES = 25 * 1024 * 1024;
|
|
4
5
|
/*** Register all Studio deployment config, listing, monetization and release HTTP adapters around ProjectDeployService. */
|
|
@@ -119,7 +120,7 @@ function executeReleaseControlRequest(service, req) {
|
|
|
119
120
|
}
|
|
120
121
|
/***
|
|
121
122
|
* Ensure a Fastify instance has an octet-stream Buffer body parser.
|
|
122
|
-
*
|
|
123
|
+
* Utility candidate: @ankhorage/utility/http/fastify
|
|
123
124
|
*/
|
|
124
125
|
function ensureBinaryBodyParser(fastify) {
|
|
125
126
|
if (fastify.hasContentTypeParser('application/octet-stream'))
|
|
@@ -154,28 +155,21 @@ function readAssetLocation(value) {
|
|
|
154
155
|
}
|
|
155
156
|
/***
|
|
156
157
|
* Read the canonical `id` route parameter from a Fastify request.
|
|
157
|
-
*
|
|
158
|
+
* Utility candidate: @ankhorage/utility/http/fastify
|
|
158
159
|
*/
|
|
159
160
|
function projectId(req) {
|
|
160
161
|
return req.params.id;
|
|
161
162
|
}
|
|
162
163
|
/***
|
|
163
164
|
* Execute an async Fastify route operation and map thrown failures to a configured HTTP error response.
|
|
164
|
-
*
|
|
165
|
+
* Utility candidate: @ankhorage/utility/http/fastify
|
|
165
166
|
*/
|
|
166
167
|
async function respond(reply, operation) {
|
|
167
168
|
try {
|
|
168
169
|
return await operation();
|
|
169
170
|
}
|
|
170
171
|
catch (error) {
|
|
171
|
-
return reply.status(400).send({ error:
|
|
172
|
+
return reply.status(400).send({ error: toErrorMessage(error, String(error)) });
|
|
172
173
|
}
|
|
173
174
|
}
|
|
174
|
-
/***
|
|
175
|
-
* Convert an unknown thrown value to a human-readable message.
|
|
176
|
-
* @utility @ankhorage/utility/error
|
|
177
|
-
*/
|
|
178
|
-
function readErrorMessage(error) {
|
|
179
|
-
return error instanceof Error ? error.message : String(error);
|
|
180
|
-
}
|
|
181
175
|
//# sourceMappingURL=deployRoutes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployRoutes.js","sourceRoot":"","sources":["../../../src/host/http/deployRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"deployRoutes.js","sourceRoot":"","sources":["../../../src/host/http/deployRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mediaRoutes.d.ts","sourceRoot":"","sources":["../../../src/host/http/mediaRoutes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mediaRoutes.d.ts","sourceRoot":"","sources":["../../../src/host/http/mediaRoutes.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,eAAe,EAAgC,MAAM,SAAS,CAAC;AAI7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIrE,kGAAkG;AAClG,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE;IAAE,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;CAAE,QA0BlF"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { MEDIA_ASSET_KINDS, } from '@ankhorage/contracts';
|
|
2
|
+
import { toErrorMessage } from '@ankhorage/utility/error';
|
|
3
|
+
import { isNonEmptyString } from '@ankhorage/utility/string';
|
|
2
4
|
import { ProjectBundledMediaService } from '../media/projectBundledMediaService';
|
|
3
5
|
import { ProjectMediaService } from '../media/projectMediaService';
|
|
4
6
|
const MAX_MEDIA_BODY_BYTES = 100 * 1024 * 1024;
|
|
@@ -22,7 +24,7 @@ export function registerProjectMediaRoutes(fastify, args) {
|
|
|
22
24
|
return { url: await storageService.resolve(id, source) };
|
|
23
25
|
}
|
|
24
26
|
catch (error) {
|
|
25
|
-
return reply.status(400).send({ error:
|
|
27
|
+
return reply.status(400).send({ error: toErrorMessage(error, String(error)) });
|
|
26
28
|
}
|
|
27
29
|
});
|
|
28
30
|
}
|
|
@@ -42,13 +44,13 @@ function registerMediaCleanupRoute(fastify, storageService, bundledService) {
|
|
|
42
44
|
return { cleanup: 'removed' };
|
|
43
45
|
}
|
|
44
46
|
catch (error) {
|
|
45
|
-
return reply.status(400).send({ error:
|
|
47
|
+
return reply.status(400).send({ error: toErrorMessage(error, String(error)) });
|
|
46
48
|
}
|
|
47
49
|
});
|
|
48
50
|
}
|
|
49
51
|
/***
|
|
50
52
|
* Ensure a Fastify instance has an octet-stream parser that exposes uploaded bytes as Buffer.
|
|
51
|
-
*
|
|
53
|
+
* Utility candidate: @ankhorage/utility/http/fastify
|
|
52
54
|
*/
|
|
53
55
|
function ensureBinaryBodyParser(fastify) {
|
|
54
56
|
if (fastify.hasContentTypeParser('application/octet-stream'))
|
|
@@ -71,7 +73,7 @@ function registerMediaByteRoute(fastify, route, ingest) {
|
|
|
71
73
|
return { asset: await ingest(id, input) };
|
|
72
74
|
}
|
|
73
75
|
catch (error) {
|
|
74
|
-
return reply.status(400).send({ error:
|
|
76
|
+
return reply.status(400).send({ error: toErrorMessage(error, String(error)) });
|
|
75
77
|
}
|
|
76
78
|
});
|
|
77
79
|
}
|
|
@@ -97,7 +99,7 @@ function readIngestRequest(req) {
|
|
|
97
99
|
}
|
|
98
100
|
/***
|
|
99
101
|
* Parse a managed media cleanup source across canonical storage and bundled source shapes.
|
|
100
|
-
*
|
|
102
|
+
* Follow-up: Move this reusable media-source guard beside the media contracts owner rather than generic Utility.
|
|
101
103
|
*/
|
|
102
104
|
function readCleanupSource(value) {
|
|
103
105
|
const storage = readStorageSource(value);
|
|
@@ -112,7 +114,7 @@ function readCleanupSource(value) {
|
|
|
112
114
|
}
|
|
113
115
|
/***
|
|
114
116
|
* Parse a canonical MediaStorageSource from unknown input.
|
|
115
|
-
*
|
|
117
|
+
* Follow-up: Move this guard beside `MediaStorageSource` in the media contracts owner.
|
|
116
118
|
*/
|
|
117
119
|
function readStorageSource(value) {
|
|
118
120
|
if (!value || typeof value !== 'object')
|
|
@@ -131,14 +133,13 @@ function readStorageSource(value) {
|
|
|
131
133
|
}
|
|
132
134
|
/***
|
|
133
135
|
* Read a non-empty string from an unknown value.
|
|
134
|
-
* @utility @ankhorage/utility/string
|
|
135
136
|
*/
|
|
136
137
|
function readString(value) {
|
|
137
|
-
return
|
|
138
|
+
return isNonEmptyString(value) ? value : undefined;
|
|
138
139
|
}
|
|
139
140
|
/***
|
|
140
141
|
* Parse a non-empty string as a finite non-negative number.
|
|
141
|
-
*
|
|
142
|
+
* Utility candidate: @ankhorage/utility/number
|
|
142
143
|
*/
|
|
143
144
|
function readNumber(value) {
|
|
144
145
|
if (typeof value !== 'string' || value.length === 0)
|
|
@@ -146,11 +147,4 @@ function readNumber(value) {
|
|
|
146
147
|
const parsed = Number(value);
|
|
147
148
|
return Number.isFinite(parsed) && parsed >= 0 ? parsed : undefined;
|
|
148
149
|
}
|
|
149
|
-
/***
|
|
150
|
-
* Convert an unknown thrown value to a human-readable message.
|
|
151
|
-
* @utility @ankhorage/utility/error
|
|
152
|
-
*/
|
|
153
|
-
function readErrorMessage(error) {
|
|
154
|
-
return error instanceof Error ? error.message : String(error);
|
|
155
|
-
}
|
|
156
150
|
//# sourceMappingURL=mediaRoutes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mediaRoutes.js","sourceRoot":"","sources":["../../../src/host/http/mediaRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,GAIlB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"mediaRoutes.js","sourceRoot":"","sources":["../../../src/host/http/mediaRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"moduleRoutes.d.ts","sourceRoot":"","sources":["../../../src/host/http/moduleRoutes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"moduleRoutes.d.ts","sourceRoot":"","sources":["../../../src/host/http/moduleRoutes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAEnE,KAAK,yBAAyB,GAAG,IAAI,CACnC,aAAa,EACX,6BAA6B,GAC7B,gBAAgB,GAChB,eAAe,GACf,aAAa,GACb,iBAAiB,GACjB,oBAAoB,CACvB,CAAC;AAcF,sGAAsG;AACtG,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,eAAe,EACxB,YAAY,EAAE,yBAAyB,GACtC,IAAI,CAyFN"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toErrorMessage } from '@ankhorage/utility/error';
|
|
2
|
+
import { isRecord } from '@ankhorage/utility/object';
|
|
1
3
|
/*** Register Studio module lifecycle/config/admin HTTP adapters around the ModuleManager contract. */
|
|
2
4
|
export function registerProjectModuleRoutes(fastify, orchestrator) {
|
|
3
5
|
/*** List module states for one project. */
|
|
@@ -6,7 +8,7 @@ export function registerProjectModuleRoutes(fastify, orchestrator) {
|
|
|
6
8
|
return await orchestrator.listModules(req.params.id);
|
|
7
9
|
}
|
|
8
10
|
catch (error) {
|
|
9
|
-
return reply.status(500).send({ error:
|
|
11
|
+
return reply.status(500).send({ error: toErrorMessage(error, String(error)) });
|
|
10
12
|
}
|
|
11
13
|
});
|
|
12
14
|
/*** Return one module state or 404 when no matching module exists. */
|
|
@@ -18,7 +20,7 @@ export function registerProjectModuleRoutes(fastify, orchestrator) {
|
|
|
18
20
|
return moduleState;
|
|
19
21
|
}
|
|
20
22
|
catch (error) {
|
|
21
|
-
return reply.status(500).send({ error:
|
|
23
|
+
return reply.status(500).send({ error: toErrorMessage(error, String(error)) });
|
|
22
24
|
}
|
|
23
25
|
});
|
|
24
26
|
/*** Install one module with optional object-shaped config. */
|
|
@@ -28,7 +30,7 @@ export function registerProjectModuleRoutes(fastify, orchestrator) {
|
|
|
28
30
|
return await orchestrator.installModule(req.params.id, req.params.moduleId, config);
|
|
29
31
|
}
|
|
30
32
|
catch (error) {
|
|
31
|
-
return reply.status(400).send({ error:
|
|
33
|
+
return reply.status(400).send({ error: toErrorMessage(error, String(error)) });
|
|
32
34
|
}
|
|
33
35
|
});
|
|
34
36
|
/*** Uninstall one project module. */
|
|
@@ -37,7 +39,7 @@ export function registerProjectModuleRoutes(fastify, orchestrator) {
|
|
|
37
39
|
return await orchestrator.uninstallModule(req.params.id, req.params.moduleId);
|
|
38
40
|
}
|
|
39
41
|
catch (error) {
|
|
40
|
-
return reply.status(400).send({ error:
|
|
42
|
+
return reply.status(400).send({ error: toErrorMessage(error, String(error)) });
|
|
41
43
|
}
|
|
42
44
|
});
|
|
43
45
|
/*** Validate and update one module config payload. */
|
|
@@ -49,7 +51,7 @@ export function registerProjectModuleRoutes(fastify, orchestrator) {
|
|
|
49
51
|
return await orchestrator.updateModuleConfig(req.params.id, req.params.moduleId, req.body.config);
|
|
50
52
|
}
|
|
51
53
|
catch (error) {
|
|
52
|
-
return reply.status(400).send({ error:
|
|
54
|
+
return reply.status(400).send({ error: toErrorMessage(error, String(error)) });
|
|
53
55
|
}
|
|
54
56
|
});
|
|
55
57
|
/*** Validate and execute one module-owned admin operation payload. */
|
|
@@ -66,22 +68,8 @@ export function registerProjectModuleRoutes(fastify, orchestrator) {
|
|
|
66
68
|
});
|
|
67
69
|
}
|
|
68
70
|
catch (error) {
|
|
69
|
-
return reply.status(400).send({ error:
|
|
71
|
+
return reply.status(400).send({ error: toErrorMessage(error, String(error)) });
|
|
70
72
|
}
|
|
71
73
|
});
|
|
72
74
|
}
|
|
73
|
-
/***
|
|
74
|
-
* Narrow an unknown non-array object to a string-keyed record.
|
|
75
|
-
* @utility @ankhorage/utility/object
|
|
76
|
-
*/
|
|
77
|
-
function isRecord(value) {
|
|
78
|
-
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
79
|
-
}
|
|
80
|
-
/***
|
|
81
|
-
* Convert an unknown thrown value to a human-readable message.
|
|
82
|
-
* @utility @ankhorage/utility/error
|
|
83
|
-
*/
|
|
84
|
-
function toMessage(error) {
|
|
85
|
-
return error instanceof Error ? error.message : String(error);
|
|
86
|
-
}
|
|
87
75
|
//# sourceMappingURL=moduleRoutes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"moduleRoutes.js","sourceRoot":"","sources":["../../../src/host/http/moduleRoutes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"moduleRoutes.js","sourceRoot":"","sources":["../../../src/host/http/moduleRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretRoutes.d.ts","sourceRoot":"","sources":["../../../src/host/http/secretRoutes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"secretRoutes.d.ts","sourceRoot":"","sources":["../../../src/host/http/secretRoutes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAgC,MAAM,SAAS,CAAC;AAE7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGrE,uGAAuG;AACvG,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE;IACP,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC,GACA,IAAI,CA0LN"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { asRecord } from '@ankhorage/utility/object';
|
|
2
|
+
import { isNonEmptyString } from '@ankhorage/utility/string';
|
|
1
3
|
import { ProjectSecretService, ProjectSecretUsageError } from '../secrets/projectSecretService';
|
|
2
4
|
/*** Register Studio secret metadata/usage/create/replace/remove and OAuth-credential HTTP adapters. */
|
|
3
5
|
export function registerProjectSecretRoutes(fastify, options) {
|
|
@@ -64,7 +66,7 @@ export function registerProjectSecretRoutes(fastify, options) {
|
|
|
64
66
|
/*** Validate and create one project secret payload. */
|
|
65
67
|
fastify.post('/api/projects/:id/secrets', async (request, reply) => {
|
|
66
68
|
const { id } = request.params;
|
|
67
|
-
const body = asRecord(request.body);
|
|
69
|
+
const body = asRecord(request.body) ?? {};
|
|
68
70
|
const payload = readSecretPayload(body.payload);
|
|
69
71
|
if (!payload || typeof body.ref !== 'string' || typeof body.kind !== 'string') {
|
|
70
72
|
return reply.status(400).send({
|
|
@@ -86,7 +88,7 @@ export function registerProjectSecretRoutes(fastify, options) {
|
|
|
86
88
|
/*** Validate and replace one complete project secret payload. */
|
|
87
89
|
fastify.put('/api/projects/:id/secrets', async (request, reply) => {
|
|
88
90
|
const { id } = request.params;
|
|
89
|
-
const body = asRecord(request.body);
|
|
91
|
+
const body = asRecord(request.body) ?? {};
|
|
90
92
|
const payload = readSecretPayload(body.payload);
|
|
91
93
|
if (!payload || typeof body.ref !== 'string') {
|
|
92
94
|
return reply.status(400).send({
|
|
@@ -122,7 +124,7 @@ export function registerProjectSecretRoutes(fastify, options) {
|
|
|
122
124
|
/*** Configure one OAuth provider credential payload through the project secret service. */
|
|
123
125
|
fastify.post('/api/projects/:id/auth/oauth/:providerId', async (request, reply) => {
|
|
124
126
|
const { id, providerId } = request.params;
|
|
125
|
-
const body = asRecord(request.body);
|
|
127
|
+
const body = asRecord(request.body) ?? {};
|
|
126
128
|
const payload = readSecretPayload(body.payload);
|
|
127
129
|
if (!payload) {
|
|
128
130
|
return reply.status(400).send({
|
|
@@ -174,7 +176,7 @@ function sendSecretRemoveResult(reply, result) {
|
|
|
174
176
|
}
|
|
175
177
|
/***
|
|
176
178
|
* Map secret-store error codes to HTTP status semantics.
|
|
177
|
-
*
|
|
179
|
+
* Follow-up: Keep this mapping beside the SecretStoreResult/error-code contract rather than generic Utility.
|
|
178
180
|
*/
|
|
179
181
|
function resolveErrorStatus(code) {
|
|
180
182
|
if (code === 'not_found')
|
|
@@ -187,28 +189,16 @@ function resolveErrorStatus(code) {
|
|
|
187
189
|
return 503;
|
|
188
190
|
return 400;
|
|
189
191
|
}
|
|
190
|
-
/***
|
|
191
|
-
* Convert an unknown value to a record, falling back to an empty record.
|
|
192
|
-
* @utility @ankhorage/utility/object
|
|
193
|
-
*/
|
|
194
|
-
function asRecord(value) {
|
|
195
|
-
return typeof value === 'object' && value !== null && !Array.isArray(value)
|
|
196
|
-
? value
|
|
197
|
-
: {};
|
|
198
|
-
}
|
|
199
|
-
/***
|
|
200
|
-
* Read a trimmed non-empty string from an unknown value.
|
|
201
|
-
* @utility @ankhorage/utility/string
|
|
202
|
-
*/
|
|
192
|
+
/*** Read a trimmed non-empty string from a secret request value. */
|
|
203
193
|
function readOptionalString(value) {
|
|
204
|
-
return
|
|
194
|
+
return isNonEmptyString(value) ? value.trim() : undefined;
|
|
205
195
|
}
|
|
206
196
|
/***
|
|
207
197
|
* Parse a non-empty record whose keys and values are non-empty strings and freeze the resulting string record.
|
|
208
|
-
*
|
|
198
|
+
* Utility candidate: @ankhorage/utility/validation
|
|
209
199
|
*/
|
|
210
200
|
function readSecretPayload(value) {
|
|
211
|
-
const record = asRecord(value);
|
|
201
|
+
const record = asRecord(value) ?? {};
|
|
212
202
|
const entries = Object.entries(record);
|
|
213
203
|
if (entries.length === 0 ||
|
|
214
204
|
entries.some(([field, fieldValue]) => !field.trim() || typeof fieldValue !== 'string' || !fieldValue)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretRoutes.js","sourceRoot":"","sources":["../../../src/host/http/secretRoutes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"secretRoutes.js","sourceRoot":"","sources":["../../../src/host/http/secretRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/***
|
|
2
2
|
* Decide whether an optional HTTP(S) origin targets localhost, loopback, IPv4 private ranges, IPv6 ULA, or IPv6 link-local space; non-browser requests without Origin are allowed.
|
|
3
|
-
*
|
|
3
|
+
* Utility candidate: @ankhorage/utility/network/security
|
|
4
4
|
*/
|
|
5
5
|
export declare function isOriginAllowed(origin: string | undefined): boolean;
|
|
6
6
|
//# sourceMappingURL=security.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/***
|
|
2
2
|
* Decide whether an optional HTTP(S) origin targets localhost, loopback, IPv4 private ranges, IPv6 ULA, or IPv6 link-local space; non-browser requests without Origin are allowed.
|
|
3
|
-
*
|
|
3
|
+
* Utility candidate: @ankhorage/utility/network/security
|
|
4
4
|
*/
|
|
5
5
|
export function isOriginAllowed(origin) {
|
|
6
6
|
// Allow non-browser requests (no origin header)
|
|
@@ -4,7 +4,7 @@ import { ModuleManager } from '../orchestrator/moduleManager';
|
|
|
4
4
|
import { ProjectManager } from '../orchestrator/projectManager';
|
|
5
5
|
/***
|
|
6
6
|
* Compose the Fastify Studio host by applying security middleware and registering project, template, infrastructure, runtime, project-update, media and module HTTP endpoints.
|
|
7
|
-
*
|
|
7
|
+
* TODO: Split the remaining inline project/template/infrastructure endpoints into domain-owned HTTP route adapters so this server remains composition/bootstrap only and can satisfy canonical function-size lint rules without local overrides.
|
|
8
8
|
*/
|
|
9
9
|
export declare function createStudioHostServer(args: {
|
|
10
10
|
projectManager: ProjectManager;
|
package/dist/host/http/server.js
CHANGED
|
@@ -30,7 +30,7 @@ function resolveProjectTemplateSelection(body) {
|
|
|
30
30
|
}
|
|
31
31
|
/***
|
|
32
32
|
* Compose the Fastify Studio host by applying security middleware and registering project, template, infrastructure, runtime, project-update, media and module HTTP endpoints.
|
|
33
|
-
*
|
|
33
|
+
* TODO: Split the remaining inline project/template/infrastructure endpoints into domain-owned HTTP route adapters so this server remains composition/bootstrap only and can satisfy canonical function-size lint rules without local overrides.
|
|
34
34
|
*/
|
|
35
35
|
export async function createStudioHostServer(args) {
|
|
36
36
|
const { projectManager, orchestrator, projectRoot } = args;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type StartStudioHostServerOptions } from './server';
|
|
2
2
|
/***
|
|
3
3
|
* Start the trusted Studio host edge with auth, secret, external API, and deploy routes registered.
|
|
4
|
-
*
|
|
4
|
+
* TODO: Keep this as host composition only; domain services and policies belong to their owning domains.
|
|
5
5
|
*/
|
|
6
6
|
export declare function startStudioHostServerWithSecrets(options?: number | StartStudioHostServerOptions): Promise<import("fastify").FastifyInstance<import("fastify").RawServerDefault, import("http").IncomingMessage, import("http").ServerResponse<import("http").IncomingMessage>, import("fastify").FastifyBaseLogger, import("fastify").FastifyTypeProviderDefault>>;
|
|
7
7
|
//# sourceMappingURL=serverWithSecrets.d.ts.map
|
|
@@ -8,7 +8,7 @@ import { registerProjectSecretRoutes } from './secretRoutes';
|
|
|
8
8
|
import { createStudioHostServer } from './server';
|
|
9
9
|
/***
|
|
10
10
|
* Start the trusted Studio host edge with auth, secret, external API, and deploy routes registered.
|
|
11
|
-
*
|
|
11
|
+
* TODO: Keep this as host composition only; domain services and policies belong to their owning domains.
|
|
12
12
|
*/
|
|
13
13
|
export async function startStudioHostServerWithSecrets(options = {}) {
|
|
14
14
|
const resolvedOptions = typeof options === 'number' ? { port: options } : options;
|
|
@@ -49,7 +49,7 @@ export interface EnabledAuthLayoutPlan extends BaseAuthLayoutPlan {
|
|
|
49
49
|
export type AuthLayoutPlan = DisabledAuthLayoutPlan | EnabledAuthLayoutPlan;
|
|
50
50
|
/***
|
|
51
51
|
* Derive the generated auth/navigation/file plan for a Studio manifest with global Supabase Auth.
|
|
52
|
-
*
|
|
52
|
+
* Follow-up: Move auth generation planning from the host layout edge into the auth/routes application domain.
|
|
53
53
|
*/
|
|
54
54
|
export declare function resolveAuthLayoutPlan(input: ResolveAuthLayoutPlanInput): AuthLayoutPlan;
|
|
55
55
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveAuthLayoutPlan.d.ts","sourceRoot":"","sources":["../../../../src/host/layout/auth/resolveAuthLayoutPlan.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,QAAQ,EACb,KAAK,aAAa,EAGnB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"resolveAuthLayoutPlan.d.ts","sourceRoot":"","sources":["../../../../src/host/layout/auth/resolveAuthLayoutPlan.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,QAAQ,EACb,KAAK,aAAa,EAGnB,MAAM,sBAAsB,CAAC;AAwB9B,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,WAAW,CAAC;CACvB;AAED,KAAK,qBAAqB,GACtB,SAAS,GACT,MAAM,GACN,YAAY,GACZ,SAAS,GACT,UAAU,GACV,aAAa,GACb,mBAAmB,GACnB,eAAe,GACf,kBAAkB,GAClB,aAAa,GACb,gBAAgB,GAChB,gBAAgB,CAAC;AAErB,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,qBAAqB,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;CAChC;AAED,MAAM,WAAW,0BAA0B;IACzC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yBAAyB,EAAE,MAAM,CAAC;IAClC,SAAS,EAAE,0BAA0B,EAAE,CAAC;CACzC;AAED,UAAU,kBAAkB;IAC1B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,EAAE,qBAAqB,EAAE,CAAC;IACxC,eAAe,EAAE,qBAAqB,EAAE,CAAC;CAC1C;AAED,UAAU,sBAAuB,SAAQ,kBAAkB;IACzD,OAAO,EAAE,KAAK,CAAC;CAChB;AAED,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC/D,OAAO,EAAE,IAAI,CAAC;IACd,QAAQ,EAAE,UAAU,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,YAAY,EAAE,aAAa,CAAC;IAC5B,aAAa,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,MAAM,cAAc,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAE5E;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,GAAG,cAAc,CA6FvF"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { resolveAuthFlow, } from '@ankhorage/contracts';
|
|
2
2
|
import { getSupabaseOAuthProviderDefinition } from '@ankhorage/supabase-auth';
|
|
3
|
+
import { toPortablePath } from '@ankhorage/utility/node/path';
|
|
3
4
|
import path from 'path';
|
|
4
5
|
const APP_ROOT_REL = 'src/app';
|
|
5
6
|
const AUTH_ADAPTER_FILE_PATH = 'src/auth/adapter.ts';
|
|
@@ -21,7 +22,7 @@ const GENERATED_SIGN_OUT_SCREEN_ID = 'generated-auth-sign-out';
|
|
|
21
22
|
const AUTH_TABS_GROUP = '(tabs)';
|
|
22
23
|
/***
|
|
23
24
|
* Derive the generated auth/navigation/file plan for a Studio manifest with global Supabase Auth.
|
|
24
|
-
*
|
|
25
|
+
* Follow-up: Move auth generation planning from the host layout edge into the auth/routes application domain.
|
|
25
26
|
*/
|
|
26
27
|
export function resolveAuthLayoutPlan(input) {
|
|
27
28
|
const { manifest } = input;
|
|
@@ -141,7 +142,7 @@ function resolveGeneratedOAuthProvider(provider) {
|
|
|
141
142
|
}
|
|
142
143
|
/***
|
|
143
144
|
* Normalize and validate a canonical relative application route without query/hash or traversal segments.
|
|
144
|
-
*
|
|
145
|
+
* Utility candidate: @ankhorage/utility/route
|
|
145
146
|
*/
|
|
146
147
|
function normalizeCanonicalCallbackRoute(route) {
|
|
147
148
|
const normalized = route.trim().replace(/^\/+/, '').replace(/\/+$/, '');
|
|
@@ -156,7 +157,7 @@ function normalizeCanonicalCallbackRoute(route) {
|
|
|
156
157
|
}
|
|
157
158
|
/***
|
|
158
159
|
* Trim values, remove empty entries, and preserve first-occurrence order while deduplicating.
|
|
159
|
-
*
|
|
160
|
+
* Utility candidate: @ankhorage/utility/array
|
|
160
161
|
*/
|
|
161
162
|
function uniqueNonEmpty(values) {
|
|
162
163
|
return [...new Set(values.map((value) => value.trim()).filter(Boolean))];
|
|
@@ -182,7 +183,7 @@ function buildGeneratedFilePlans(includeSignOutRoute, signOutRouteName, oauth) {
|
|
|
182
183
|
];
|
|
183
184
|
if (oauth) {
|
|
184
185
|
generatedFiles.push({ path: AUTH_OAUTH_COMPLETION_FILE_PATH, kind: 'oauth-completion' }, { path: AUTH_OAUTH_STATE_FILE_PATH, kind: 'oauth-state' }, { path: AUTH_OAUTH_RUNTIME_FILE_PATH, kind: 'oauth-runtime' }, {
|
|
185
|
-
path:
|
|
186
|
+
path: toPortablePath(path.join(APP_ROOT_REL, `${oauth.callbackRouteName}.tsx`)),
|
|
186
187
|
kind: 'oauth-callback',
|
|
187
188
|
routeName: oauth.callbackRouteName,
|
|
188
189
|
});
|
|
@@ -228,7 +229,7 @@ function resolveRouteScreenFilePath(routeRel) {
|
|
|
228
229
|
const fileName = `${path.basename(routeRel)}.tsx`;
|
|
229
230
|
const dirRel = path.dirname(routeRel);
|
|
230
231
|
const targetDirRel = dirRel === '.' ? '' : dirRel;
|
|
231
|
-
return
|
|
232
|
+
return toPortablePath(path.join(APP_ROOT_REL, targetDirRel, fileName));
|
|
232
233
|
}
|
|
233
234
|
/*** Reuse already-grouped app/auth navigators when the manifest explicitly contains both groups. */
|
|
234
235
|
function getGroupedAuthNavigators(manifest) {
|
|
@@ -368,16 +369,9 @@ function hasRouteName(routes, routeName) {
|
|
|
368
369
|
}
|
|
369
370
|
return false;
|
|
370
371
|
}
|
|
371
|
-
/***
|
|
372
|
-
* Convert a generated filesystem path to portable slash separators.
|
|
373
|
-
* @utility @ankhorage/utility/node/path
|
|
374
|
-
*/
|
|
375
|
-
function normalizeRel(filePath) {
|
|
376
|
-
return filePath.replace(/\\/g, '/');
|
|
377
|
-
}
|
|
378
372
|
/***
|
|
379
373
|
* Normalize an application route path to its file-based route name, using index for the root route.
|
|
380
|
-
*
|
|
374
|
+
* Utility candidate: @ankhorage/utility/route
|
|
381
375
|
*/
|
|
382
376
|
function authFlowPathToRouteName(routePath) {
|
|
383
377
|
const normalized = routePath.trim().replace(/^\/+/, '').replace(/\/+$/, '');
|