create-relkit 0.5.6 → 0.7.0
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/dist/add-name.d.ts +8 -1
- package/dist/add-name.d.ts.map +1 -1
- package/dist/add-name.js +5 -1
- package/dist/add-name.js.map +1 -1
- package/dist/add-options-parser.d.ts +49 -0
- package/dist/add-options-parser.d.ts.map +1 -1
- package/dist/add-options-parser.js +52 -0
- package/dist/add-options-parser.js.map +1 -1
- package/dist/add-options-resource.d.ts +8 -0
- package/dist/add-options-resource.d.ts.map +1 -1
- package/dist/add-options-resource.js +8 -0
- package/dist/add-options-resource.js.map +1 -1
- package/dist/add-options.d.ts +6 -1
- package/dist/add-options.d.ts.map +1 -1
- package/dist/add-options.js +48 -1
- package/dist/add-options.js.map +1 -1
- package/dist/add-output.d.ts +10 -0
- package/dist/add-output.d.ts.map +1 -1
- package/dist/add-output.js +21 -0
- package/dist/add-output.js.map +1 -1
- package/dist/add-plan.d.ts +25 -0
- package/dist/add-plan.d.ts.map +1 -1
- package/dist/add-plan.js +91 -57
- package/dist/add-plan.js.map +1 -1
- package/dist/add-plan.types.d.ts +13 -0
- package/dist/add-plan.types.d.ts.map +1 -0
- package/dist/add-plan.types.js +2 -0
- package/dist/add-plan.types.js.map +1 -0
- package/dist/add-resolution-discovery.d.ts +56 -2
- package/dist/add-resolution-discovery.d.ts.map +1 -1
- package/dist/add-resolution-discovery.js +74 -10
- package/dist/add-resolution-discovery.js.map +1 -1
- package/dist/add-resolution-prompt.d.ts +46 -0
- package/dist/add-resolution-prompt.d.ts.map +1 -0
- package/dist/add-resolution-prompt.js +88 -0
- package/dist/add-resolution-prompt.js.map +1 -0
- package/dist/add-resolution-state-base.d.ts +112 -0
- package/dist/add-resolution-state-base.d.ts.map +1 -0
- package/dist/add-resolution-state-base.js +141 -0
- package/dist/add-resolution-state-base.js.map +1 -0
- package/dist/add-resolution-state.d.ts +66 -11
- package/dist/add-resolution-state.d.ts.map +1 -1
- package/dist/add-resolution-state.js +81 -69
- package/dist/add-resolution-state.js.map +1 -1
- package/dist/add-resolution-state.types.d.ts +6 -0
- package/dist/add-resolution-state.types.d.ts.map +1 -0
- package/dist/add-resolution-state.types.js +2 -0
- package/dist/add-resolution-state.types.js.map +1 -0
- package/dist/add-resolver-domain-execution.d.ts +35 -0
- package/dist/add-resolver-domain-execution.d.ts.map +1 -0
- package/dist/add-resolver-domain-execution.js +101 -0
- package/dist/add-resolver-domain-execution.js.map +1 -0
- package/dist/add-resolver-domain-input.d.ts +30 -0
- package/dist/add-resolver-domain-input.d.ts.map +1 -0
- package/dist/add-resolver-domain-input.js +83 -0
- package/dist/add-resolver-domain-input.js.map +1 -0
- package/dist/add-resolver-domain.d.ts +17 -0
- package/dist/add-resolver-domain.d.ts.map +1 -1
- package/dist/add-resolver-domain.js +36 -136
- package/dist/add-resolver-domain.js.map +1 -1
- package/dist/add-resolver-platform.d.ts +17 -0
- package/dist/add-resolver-platform.d.ts.map +1 -1
- package/dist/add-resolver-platform.js +83 -36
- package/dist/add-resolver-platform.js.map +1 -1
- package/dist/add-resolver-provider.d.ts +15 -0
- package/dist/add-resolver-provider.d.ts.map +1 -0
- package/dist/add-resolver-provider.js +67 -0
- package/dist/add-resolver-provider.js.map +1 -0
- package/dist/add-resolver-resources.d.ts +17 -0
- package/dist/add-resolver-resources.d.ts.map +1 -1
- package/dist/add-resolver-resources.js +79 -85
- package/dist/add-resolver-resources.js.map +1 -1
- package/dist/add-resolver.d.ts +33 -9
- package/dist/add-resolver.d.ts.map +1 -1
- package/dist/add-resolver.js +70 -31
- package/dist/add-resolver.js.map +1 -1
- package/dist/add-resolver.types.d.ts +27 -0
- package/dist/add-resolver.types.d.ts.map +1 -0
- package/dist/add-resolver.types.js +2 -0
- package/dist/add-resolver.types.js.map +1 -0
- package/dist/add-transaction-files-compat.d.ts +33 -0
- package/dist/add-transaction-files-compat.d.ts.map +1 -0
- package/dist/add-transaction-files-compat.js +42 -0
- package/dist/add-transaction-files-compat.js.map +1 -0
- package/dist/add-transaction-files.d.ts +49 -9
- package/dist/add-transaction-files.d.ts.map +1 -1
- package/dist/add-transaction-files.js +122 -74
- package/dist/add-transaction-files.js.map +1 -1
- package/dist/add-transaction-files.types.d.ts +7 -0
- package/dist/add-transaction-files.types.d.ts.map +1 -0
- package/dist/add-transaction-files.types.js +2 -0
- package/dist/add-transaction-files.types.js.map +1 -0
- package/dist/add-transaction-process.d.ts +37 -0
- package/dist/add-transaction-process.d.ts.map +1 -0
- package/dist/add-transaction-process.js +54 -0
- package/dist/add-transaction-process.js.map +1 -0
- package/dist/add-transaction-workflow.d.ts +23 -0
- package/dist/add-transaction-workflow.d.ts.map +1 -0
- package/dist/add-transaction-workflow.js +77 -0
- package/dist/add-transaction-workflow.js.map +1 -0
- package/dist/add-transaction.d.ts +26 -13
- package/dist/add-transaction.d.ts.map +1 -1
- package/dist/add-transaction.js +55 -105
- package/dist/add-transaction.js.map +1 -1
- package/dist/add-transaction.types.d.ts +32 -0
- package/dist/add-transaction.types.d.ts.map +1 -0
- package/dist/add-transaction.types.js +2 -0
- package/dist/add-transaction.types.js.map +1 -0
- package/dist/add-types.d.ts +56 -0
- package/dist/add-types.d.ts.map +1 -1
- package/dist/add-types.js +15 -0
- package/dist/add-types.js.map +1 -1
- package/dist/bin.d.ts +3 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +83 -0
- package/dist/bin.js.map +1 -0
- package/dist/bucket-profiles.d.ts +17 -3
- package/dist/bucket-profiles.d.ts.map +1 -1
- package/dist/bucket-profiles.js +27 -5
- package/dist/bucket-profiles.js.map +1 -1
- package/dist/bucket-profiles.types.d.ts +9 -0
- package/dist/bucket-profiles.types.d.ts.map +1 -0
- package/dist/bucket-profiles.types.js +2 -0
- package/dist/bucket-profiles.types.js.map +1 -0
- package/dist/build-catalog.d.ts +14 -0
- package/dist/build-catalog.d.ts.map +1 -0
- package/dist/build-catalog.js +70 -0
- package/dist/build-catalog.js.map +1 -0
- package/dist/catalog-resolution.d.ts +12 -0
- package/dist/catalog-resolution.d.ts.map +1 -0
- package/dist/catalog-resolution.js +43 -0
- package/dist/catalog-resolution.js.map +1 -0
- package/dist/catalog-resolution.types.d.ts +3 -0
- package/dist/catalog-resolution.types.d.ts.map +1 -0
- package/dist/catalog-resolution.types.js +2 -0
- package/dist/catalog-resolution.types.js.map +1 -0
- package/dist/create-preview.d.ts +30 -7
- package/dist/create-preview.d.ts.map +1 -1
- package/dist/create-preview.js +41 -11
- package/dist/create-preview.js.map +1 -1
- package/dist/create-preview.types.d.ts +9 -0
- package/dist/create-preview.types.d.ts.map +1 -0
- package/dist/create-preview.types.js +2 -0
- package/dist/create-preview.types.js.map +1 -0
- package/dist/create-resolver.d.ts +27 -10
- package/dist/create-resolver.d.ts.map +1 -1
- package/dist/create-resolver.js +105 -74
- package/dist/create-resolver.js.map +1 -1
- package/dist/create-resolver.types.d.ts +15 -0
- package/dist/create-resolver.types.d.ts.map +1 -0
- package/dist/create-resolver.types.js +2 -0
- package/dist/create-resolver.types.js.map +1 -0
- package/dist/dependency-patch-installation.d.ts +16 -0
- package/dist/dependency-patch-installation.d.ts.map +1 -0
- package/dist/dependency-patch-installation.js +59 -0
- package/dist/dependency-patch-installation.js.map +1 -0
- package/dist/dependency-patches.d.ts +57 -0
- package/dist/dependency-patches.d.ts.map +1 -0
- package/dist/dependency-patches.js +134 -0
- package/dist/dependency-patches.js.map +1 -0
- package/dist/dependency-patches.types.d.ts +21 -0
- package/dist/dependency-patches.types.d.ts.map +1 -0
- package/dist/dependency-patches.types.js +2 -0
- package/dist/dependency-patches.types.js.map +1 -0
- package/dist/domain-artifact.d.ts +76 -0
- package/dist/domain-artifact.d.ts.map +1 -0
- package/dist/domain-artifact.js +115 -0
- package/dist/domain-artifact.js.map +1 -0
- package/dist/domain-planning.d.ts +36 -20
- package/dist/domain-planning.d.ts.map +1 -1
- package/dist/domain-planning.js +45 -55
- package/dist/domain-planning.js.map +1 -1
- package/dist/domain-planning.types.d.ts +21 -0
- package/dist/domain-planning.types.d.ts.map +1 -0
- package/dist/domain-planning.types.js +2 -0
- package/dist/domain-planning.types.js.map +1 -0
- package/dist/generate-deployment.d.ts +18 -0
- package/dist/generate-deployment.d.ts.map +1 -0
- package/dist/generate-deployment.js +100 -0
- package/dist/generate-deployment.js.map +1 -0
- package/dist/generate-files-compat.d.ts +43 -0
- package/dist/generate-files-compat.d.ts.map +1 -0
- package/dist/generate-files-compat.js +56 -0
- package/dist/generate-files-compat.js.map +1 -0
- package/dist/generate-files-utilities.d.ts +63 -10
- package/dist/generate-files-utilities.d.ts.map +1 -1
- package/dist/generate-files-utilities.js +99 -48
- package/dist/generate-files-utilities.js.map +1 -1
- package/dist/generate-files-utilities.types.d.ts +6 -0
- package/dist/generate-files-utilities.types.d.ts.map +1 -0
- package/dist/generate-files-utilities.types.js +2 -0
- package/dist/generate-files-utilities.types.js.map +1 -0
- package/dist/generate-files.d.ts +30 -1
- package/dist/generate-files.d.ts.map +1 -1
- package/dist/generate-files.js +56 -85
- package/dist/generate-files.js.map +1 -1
- package/dist/generate-output.d.ts +14 -17
- package/dist/generate-output.d.ts.map +1 -1
- package/dist/generate-output.js +27 -0
- package/dist/generate-output.js.map +1 -1
- package/dist/generate-output.types.d.ts +21 -0
- package/dist/generate-output.types.d.ts.map +1 -0
- package/dist/generate-output.types.js +2 -0
- package/dist/generate-output.types.js.map +1 -0
- package/dist/generate-process.d.ts +60 -0
- package/dist/generate-process.d.ts.map +1 -1
- package/dist/generate-process.js +95 -31
- package/dist/generate-process.js.map +1 -1
- package/dist/generate-stage-cleanup.d.ts +17 -0
- package/dist/generate-stage-cleanup.d.ts.map +1 -0
- package/dist/generate-stage-cleanup.js +30 -0
- package/dist/generate-stage-cleanup.js.map +1 -0
- package/dist/generate-types.d.ts +36 -0
- package/dist/generate-types.d.ts.map +1 -1
- package/dist/generate-types.js +16 -0
- package/dist/generate-types.js.map +1 -1
- package/dist/generate-workflow.d.ts +31 -0
- package/dist/generate-workflow.d.ts.map +1 -0
- package/dist/generate-workflow.js +117 -0
- package/dist/generate-workflow.js.map +1 -0
- package/dist/generate.d.ts +29 -1
- package/dist/generate.d.ts.map +1 -1
- package/dist/generate.js +55 -97
- package/dist/generate.js.map +1 -1
- package/dist/generate.service.types.d.ts +15 -0
- package/dist/generate.service.types.d.ts.map +1 -0
- package/dist/generate.service.types.js +2 -0
- package/dist/generate.service.types.js.map +1 -0
- package/dist/generator-cleanup.d.ts +27 -0
- package/dist/generator-cleanup.d.ts.map +1 -0
- package/dist/generator-cleanup.js +64 -0
- package/dist/generator-cleanup.js.map +1 -0
- package/dist/generator-cleanup.types.d.ts +6 -0
- package/dist/generator-cleanup.types.d.ts.map +1 -0
- package/dist/generator-cleanup.types.js +2 -0
- package/dist/generator-cleanup.types.js.map +1 -0
- package/dist/generator-errors.d.ts +74 -0
- package/dist/generator-errors.d.ts.map +1 -0
- package/dist/generator-errors.js +89 -0
- package/dist/generator-errors.js.map +1 -0
- package/dist/generator-filesystem.d.ts +25 -0
- package/dist/generator-filesystem.d.ts.map +1 -0
- package/dist/generator-filesystem.js +68 -0
- package/dist/generator-filesystem.js.map +1 -0
- package/dist/generator-filesystem.types.d.ts +112 -0
- package/dist/generator-filesystem.types.d.ts.map +1 -0
- package/dist/generator-filesystem.types.js +2 -0
- package/dist/generator-filesystem.types.js.map +1 -0
- package/dist/generator-paths.d.ts +13 -0
- package/dist/generator-paths.d.ts.map +1 -0
- package/dist/generator-paths.js +45 -0
- package/dist/generator-paths.js.map +1 -0
- package/dist/generator-paths.types.d.ts +40 -0
- package/dist/generator-paths.types.d.ts.map +1 -0
- package/dist/generator-paths.types.js +2 -0
- package/dist/generator-paths.types.js.map +1 -0
- package/dist/generator-process.d.ts +25 -0
- package/dist/generator-process.d.ts.map +1 -0
- package/dist/generator-process.js +124 -0
- package/dist/generator-process.js.map +1 -0
- package/dist/generator-process.types.d.ts +27 -0
- package/dist/generator-process.types.d.ts.map +1 -0
- package/dist/generator-process.types.js +2 -0
- package/dist/generator-process.types.js.map +1 -0
- package/dist/generator-prompt.d.ts +22 -0
- package/dist/generator-prompt.d.ts.map +1 -0
- package/dist/generator-prompt.js +58 -0
- package/dist/generator-prompt.js.map +1 -0
- package/dist/generator-prompt.types.d.ts +38 -0
- package/dist/generator-prompt.types.d.ts.map +1 -0
- package/dist/generator-prompt.types.js +2 -0
- package/dist/generator-prompt.types.js.map +1 -0
- package/dist/generator-runtime.d.ts +22 -0
- package/dist/generator-runtime.d.ts.map +1 -0
- package/dist/generator-runtime.js +31 -0
- package/dist/generator-runtime.js.map +1 -0
- package/dist/index.d.ts +13 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -79
- package/dist/index.js.map +1 -1
- package/dist/options.d.ts +50 -1
- package/dist/options.d.ts.map +1 -1
- package/dist/options.js +48 -1
- package/dist/options.js.map +1 -1
- package/dist/patches/drizzle-orm.patch +692 -0
- package/dist/plan-builder-effects.d.ts +124 -0
- package/dist/plan-builder-effects.d.ts.map +1 -0
- package/dist/plan-builder-effects.js +172 -0
- package/dist/plan-builder-effects.js.map +1 -0
- package/dist/plan-builder-files.d.ts +12 -0
- package/dist/plan-builder-files.d.ts.map +1 -0
- package/dist/plan-builder-files.js +99 -0
- package/dist/plan-builder-files.js.map +1 -0
- package/dist/plan-builder-files.types.d.ts +49 -0
- package/dist/plan-builder-files.types.d.ts.map +1 -0
- package/dist/plan-builder-files.types.js +2 -0
- package/dist/plan-builder-files.types.js.map +1 -0
- package/dist/plan-builder-manifest.d.ts +11 -0
- package/dist/plan-builder-manifest.d.ts.map +1 -0
- package/dist/plan-builder-manifest.js +37 -0
- package/dist/plan-builder-manifest.js.map +1 -0
- package/dist/plan-builder.d.ts +78 -18
- package/dist/plan-builder.d.ts.map +1 -1
- package/dist/plan-builder.js +105 -126
- package/dist/plan-builder.js.map +1 -1
- package/dist/plan-builder.types.d.ts +22 -0
- package/dist/plan-builder.types.d.ts.map +1 -0
- package/dist/plan-builder.types.js +2 -0
- package/dist/plan-builder.types.js.map +1 -0
- package/dist/plan-manifest.d.ts +16 -4
- package/dist/plan-manifest.d.ts.map +1 -1
- package/dist/plan-manifest.js +60 -3
- package/dist/plan-manifest.js.map +1 -1
- package/dist/plan-manifest.types.d.ts +13 -0
- package/dist/plan-manifest.types.d.ts.map +1 -0
- package/dist/plan-manifest.types.js +2 -0
- package/dist/plan-manifest.types.js.map +1 -0
- package/dist/project-catalog.d.ts +17 -0
- package/dist/project-catalog.d.ts.map +1 -0
- package/dist/project-catalog.js +69 -0
- package/dist/project-catalog.js.map +1 -0
- package/dist/project-discovery-app.d.ts +7 -0
- package/dist/project-discovery-app.d.ts.map +1 -1
- package/dist/project-discovery-app.js +71 -0
- package/dist/project-discovery-app.js.map +1 -1
- package/dist/project-discovery-database.d.ts +10 -0
- package/dist/project-discovery-database.d.ts.map +1 -1
- package/dist/project-discovery-database.js +18 -0
- package/dist/project-discovery-database.js.map +1 -1
- package/dist/project-discovery-facts.d.ts +13 -0
- package/dist/project-discovery-facts.d.ts.map +1 -0
- package/dist/project-discovery-facts.js +170 -0
- package/dist/project-discovery-facts.js.map +1 -0
- package/dist/project-discovery-types.d.ts +15 -0
- package/dist/project-discovery-types.d.ts.map +1 -1
- package/dist/project-discovery.d.ts +31 -1
- package/dist/project-discovery.d.ts.map +1 -1
- package/dist/project-discovery.js +51 -147
- package/dist/project-discovery.js.map +1 -1
- package/dist/project-discovery.service.types.d.ts +13 -0
- package/dist/project-discovery.service.types.d.ts.map +1 -0
- package/dist/project-discovery.service.types.js +2 -0
- package/dist/project-discovery.service.types.js.map +1 -0
- package/dist/project-manifest.schemas.d.ts +22 -0
- package/dist/project-manifest.schemas.d.ts.map +1 -0
- package/dist/project-manifest.schemas.js +22 -0
- package/dist/project-manifest.schemas.js.map +1 -0
- package/dist/prompt-driver.d.ts +7 -30
- package/dist/prompt-driver.d.ts.map +1 -1
- package/dist/prompt-driver.js +25 -4
- package/dist/prompt-driver.js.map +1 -1
- package/dist/prompt-driver.types.d.ts +92 -0
- package/dist/prompt-driver.types.d.ts.map +1 -0
- package/dist/prompt-driver.types.js +2 -0
- package/dist/prompt-driver.types.js.map +1 -0
- package/dist/provider-planning-definitions.d.ts +43 -0
- package/dist/provider-planning-definitions.d.ts.map +1 -1
- package/dist/provider-planning-definitions.js +43 -0
- package/dist/provider-planning-definitions.js.map +1 -1
- package/dist/provider-planning.d.ts +37 -7
- package/dist/provider-planning.d.ts.map +1 -1
- package/dist/provider-planning.js +69 -76
- package/dist/provider-planning.js.map +1 -1
- package/dist/provider-planning.types.d.ts +14 -0
- package/dist/provider-planning.types.d.ts.map +1 -0
- package/dist/provider-planning.types.js +2 -0
- package/dist/provider-planning.types.js.map +1 -0
- package/dist/provider-profile-definition.d.ts +45 -0
- package/dist/provider-profile-definition.d.ts.map +1 -0
- package/dist/provider-profile-definition.js +93 -0
- package/dist/provider-profile-definition.js.map +1 -0
- package/dist/render-ai-sources.d.ts +20 -0
- package/dist/render-ai-sources.d.ts.map +1 -1
- package/dist/render-ai-sources.js +21 -0
- package/dist/render-ai-sources.js.map +1 -1
- package/dist/render-ai.d.ts +49 -0
- package/dist/render-ai.d.ts.map +1 -1
- package/dist/render-ai.js +62 -12
- package/dist/render-ai.js.map +1 -1
- package/dist/render-auth-schema.d.ts +5 -0
- package/dist/render-auth-schema.d.ts.map +1 -1
- package/dist/render-auth-schema.js +8 -0
- package/dist/render-auth-schema.js.map +1 -1
- package/dist/render-auth-sources.d.ts +8 -0
- package/dist/render-auth-sources.d.ts.map +1 -1
- package/dist/render-auth-sources.js +8 -0
- package/dist/render-auth-sources.js.map +1 -1
- package/dist/render-auth.d.ts +21 -0
- package/dist/render-auth.d.ts.map +1 -1
- package/dist/render-auth.js +86 -24
- package/dist/render-auth.js.map +1 -1
- package/dist/render-database-sources.d.ts +15 -0
- package/dist/render-database-sources.d.ts.map +1 -1
- package/dist/render-database-sources.js +15 -0
- package/dist/render-database-sources.js.map +1 -1
- package/dist/render-database.d.ts +24 -0
- package/dist/render-database.d.ts.map +1 -1
- package/dist/render-database.js +37 -17
- package/dist/render-database.js.map +1 -1
- package/dist/render-domain-callables.d.ts +67 -0
- package/dist/render-domain-callables.d.ts.map +1 -0
- package/dist/render-domain-callables.js +99 -0
- package/dist/render-domain-callables.js.map +1 -0
- package/dist/render-domain-events.d.ts +59 -0
- package/dist/render-domain-events.d.ts.map +1 -0
- package/dist/render-domain-events.js +92 -0
- package/dist/render-domain-events.js.map +1 -0
- package/dist/render-domain-jobs.d.ts +56 -0
- package/dist/render-domain-jobs.d.ts.map +1 -0
- package/dist/render-domain-jobs.js +84 -0
- package/dist/render-domain-jobs.js.map +1 -0
- package/dist/render-domain-register.d.ts +18 -0
- package/dist/render-domain-register.d.ts.map +1 -1
- package/dist/render-domain-register.js +27 -7
- package/dist/render-domain-register.js.map +1 -1
- package/dist/render-domain-sources.d.ts +63 -0
- package/dist/render-domain-sources.d.ts.map +1 -1
- package/dist/render-domain-sources.js +65 -0
- package/dist/render-domain-sources.js.map +1 -1
- package/dist/render-domain.d.ts +4 -25
- package/dist/render-domain.d.ts.map +1 -1
- package/dist/render-domain.js +3 -97
- package/dist/render-domain.js.map +1 -1
- package/dist/render-domain.types.d.ts +15 -0
- package/dist/render-domain.types.d.ts.map +1 -0
- package/dist/render-domain.types.js +2 -0
- package/dist/render-domain.types.js.map +1 -0
- package/dist/render-resource-sources.d.ts +12 -0
- package/dist/render-resource-sources.d.ts.map +1 -1
- package/dist/render-resource-sources.js +12 -0
- package/dist/render-resource-sources.js.map +1 -1
- package/dist/render-resources.d.ts +47 -0
- package/dist/render-resources.d.ts.map +1 -1
- package/dist/render-resources.js +62 -15
- package/dist/render-resources.js.map +1 -1
- package/dist/render-route-sources.d.ts +19 -0
- package/dist/render-route-sources.d.ts.map +1 -1
- package/dist/render-route-sources.js +19 -0
- package/dist/render-route-sources.js.map +1 -1
- package/dist/render-routes.d.ts +57 -0
- package/dist/render-routes.d.ts.map +1 -1
- package/dist/render-routes.js +72 -10
- package/dist/render-routes.js.map +1 -1
- package/dist/render-service.d.ts +23 -1
- package/dist/render-service.d.ts.map +1 -1
- package/dist/render-service.js +65 -20
- package/dist/render-service.js.map +1 -1
- package/dist/scaffold-catalog.d.ts +7 -6
- package/dist/scaffold-catalog.d.ts.map +1 -1
- package/dist/scaffold-catalog.js +11 -5
- package/dist/scaffold-catalog.js.map +1 -1
- package/dist/scaffold-catalog.types.d.ts +11 -0
- package/dist/scaffold-catalog.types.d.ts.map +1 -0
- package/dist/scaffold-catalog.types.js +2 -0
- package/dist/scaffold-catalog.types.js.map +1 -0
- package/dist/source-edit.d.ts +38 -2
- package/dist/source-edit.d.ts.map +1 -1
- package/dist/source-edit.js +39 -94
- package/dist/source-edit.js.map +1 -1
- package/dist/source-factory-edit.d.ts +78 -0
- package/dist/source-factory-edit.d.ts.map +1 -0
- package/dist/source-factory-edit.js +156 -0
- package/dist/source-factory-edit.js.map +1 -0
- package/dist/source-import-edit.d.ts +7 -1
- package/dist/source-import-edit.d.ts.map +1 -1
- package/dist/source-import-edit.js +20 -1
- package/dist/source-import-edit.js.map +1 -1
- package/dist/template-root.d.ts +15 -4
- package/dist/template-root.d.ts.map +1 -1
- package/dist/template-root.js +22 -5
- package/dist/template-root.js.map +1 -1
- package/dist/templates/default/README.md +1 -1
- package/dist/templates/default/v1/agent/package.json +4 -4
- package/dist/templates/default/v1/api/package.json +3 -3
- package/dist/templates/default/v1/fullstack/package.json +6 -6
- package/dist/templates/default/v1/minimal/package.json +3 -3
- package/dist/templates/default/v1/tasks/package.json +3 -3
- package/dist/validate-errors.d.ts +12 -0
- package/dist/validate-errors.d.ts.map +1 -0
- package/dist/validate-errors.js +16 -0
- package/dist/validate-errors.js.map +1 -0
- package/dist/validate-paths.d.ts +43 -0
- package/dist/validate-paths.d.ts.map +1 -0
- package/dist/validate-paths.js +105 -0
- package/dist/validate-paths.js.map +1 -0
- package/dist/validate.d.ts +56 -17
- package/dist/validate.d.ts.map +1 -1
- package/dist/validate.js +89 -130
- package/dist/validate.js.map +1 -1
- package/dist/validate.types.d.ts +19 -0
- package/dist/validate.types.d.ts.map +1 -0
- package/dist/validate.types.js +2 -0
- package/dist/validate.types.js.map +1 -0
- package/package.json +67 -5
- package/src/catalog-resolution.ts +55 -0
- package/src/catalog-resolution.types.ts +2 -0
- package/dist/create-additions.d.ts +0 -7
- package/dist/create-additions.d.ts.map +0 -1
- package/dist/create-additions.js +0 -27
- package/dist/create-additions.js.map +0 -1
package/dist/add-plan.js
CHANGED
|
@@ -1,62 +1,96 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Context, Effect, Layer } from "effect";
|
|
2
|
+
import { observeExecution } from "@relkit/contracts/operation";
|
|
3
|
+
import { GeneratorFileSystem } from "./generator-filesystem.js";
|
|
4
|
+
import { scaffoldErrors } from "./generator-errors.js";
|
|
5
|
+
import { runGeneratorPromise } from "./generator-runtime.js";
|
|
6
|
+
import { resolveDomainEffect } from "./domain-planning.js";
|
|
2
7
|
import { PlanBuilder } from "./plan-builder.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
8
|
+
import { ProjectDiscoveryServiceTag, projectDiscoveryLive } from "./project-discovery.js";
|
|
9
|
+
import { renderAgentEffect, renderToolEffect } from "./render-ai.js";
|
|
10
|
+
import { renderAuthEffect } from "./render-auth.js";
|
|
11
|
+
import { renderDatabaseEffect } from "./render-database.js";
|
|
12
|
+
import { renderConstantsEffect, renderErrorEffect, renderEventEffect, renderEventFunctionEffect, renderFunctionEffect, renderJobEffect, renderTaskEffect, renderPromptEffect, } from "./render-domain.js";
|
|
13
|
+
import { renderBucketEffect, renderCacheEffect } from "./render-resources.js";
|
|
14
|
+
import { renderMiddlewareEffect, renderRouteEffect, renderTransformEffect, } from "./render-routes.js";
|
|
15
|
+
import { renderServiceEffect } from "./render-service.js";
|
|
11
16
|
/** Inspects a project and produces one complete, conflict-checked add plan. */
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
/** Cohesive discovery and planning authority, with isolated Ref state per request. */
|
|
18
|
+
export class ScaffoldPlanning extends Context.Service()("create-relkit/ScaffoldPlanning") {
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Planning Layer captures only declaration discovery and filesystem authority.
|
|
22
|
+
* @returns A ScaffoldPlanning Layer requiring declaration discovery and filesystem services.
|
|
23
|
+
*/
|
|
24
|
+
export const scaffoldPlanningLive = Layer.effect(ScaffoldPlanning, Effect.gen(function* () {
|
|
25
|
+
const discovery = yield* ProjectDiscoveryServiceTag;
|
|
26
|
+
const fs = yield* GeneratorFileSystem;
|
|
27
|
+
return ScaffoldPlanning.of({
|
|
28
|
+
plan: Effect.fn("ScaffoldPlanning.plan")((request) => observeExecution("generator", "planning.plan", Effect.gen(function* () {
|
|
29
|
+
const builder = new PlanBuilder(request, yield* discovery.discover(request.projectRoot));
|
|
30
|
+
if (request.kind === "service")
|
|
31
|
+
yield* renderServiceEffect(builder, request);
|
|
32
|
+
else if (request.kind === "route") {
|
|
33
|
+
const target = request.mode === "service-route" ? yield* resolveDomainEffect(builder) : undefined;
|
|
34
|
+
if (target && !target.service) {
|
|
35
|
+
for (const member of new Set(Object.values(request.maps))) {
|
|
36
|
+
yield* renderFunctionEffect(builder, target, member);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
yield* renderRouteEffect(builder, request, target);
|
|
40
|
+
}
|
|
41
|
+
else if (request.kind === "middleware")
|
|
42
|
+
yield* renderMiddlewareEffect(builder, request);
|
|
43
|
+
else if (request.kind === "transform")
|
|
44
|
+
yield* renderTransformEffect(builder, request);
|
|
45
|
+
else if (request.kind === "database")
|
|
46
|
+
yield* renderDatabaseEffect(builder, request);
|
|
47
|
+
else if (request.kind === "auth")
|
|
48
|
+
yield* renderAuthEffect(builder, request);
|
|
49
|
+
else {
|
|
50
|
+
const target = yield* resolveDomainEffect(builder);
|
|
51
|
+
if (request.kind === "function")
|
|
52
|
+
yield* renderFunctionEffect(builder, target, request.name, request);
|
|
53
|
+
else if (request.kind === "error")
|
|
54
|
+
yield* renderErrorEffect(builder, target, request.name);
|
|
55
|
+
else if (request.kind === "event")
|
|
56
|
+
yield* renderEventEffect(builder, target, request.name, request);
|
|
57
|
+
else if (request.kind === "event-function")
|
|
58
|
+
yield* renderEventFunctionEffect(builder, target, request);
|
|
59
|
+
else if (request.kind === "task")
|
|
60
|
+
yield* renderTaskEffect(builder, target, request);
|
|
61
|
+
else if (request.kind === "job")
|
|
62
|
+
yield* renderJobEffect(builder, target, request);
|
|
63
|
+
else if (request.kind === "cache")
|
|
64
|
+
yield* renderCacheEffect(builder, target, request);
|
|
65
|
+
else if (request.kind === "bucket")
|
|
66
|
+
yield* renderBucketEffect(builder, target, request);
|
|
67
|
+
else if (request.kind === "tool")
|
|
68
|
+
yield* renderToolEffect(builder, target, request);
|
|
69
|
+
else if (request.kind === "prompt")
|
|
70
|
+
yield* renderPromptEffect(builder, target, request.name, request.text);
|
|
71
|
+
else if (request.kind === "agent")
|
|
72
|
+
yield* renderAgentEffect(builder, target, request);
|
|
73
|
+
else if (request.kind === "constants")
|
|
74
|
+
yield* renderConstantsEffect(builder, target, request.name);
|
|
21
75
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
else if (request.kind === "event-function")
|
|
42
|
-
await renderEventFunction(builder, target, request);
|
|
43
|
-
else if (request.kind === "task")
|
|
44
|
-
await renderTask(builder, target, request);
|
|
45
|
-
else if (request.kind === "job")
|
|
46
|
-
await renderJob(builder, target, request);
|
|
47
|
-
else if (request.kind === "cache")
|
|
48
|
-
await renderCache(builder, target, request);
|
|
49
|
-
else if (request.kind === "bucket")
|
|
50
|
-
await renderBucket(builder, target, request);
|
|
51
|
-
else if (request.kind === "tool")
|
|
52
|
-
await renderTool(builder, target, request);
|
|
53
|
-
else if (request.kind === "prompt")
|
|
54
|
-
await renderPrompt(builder, target, request.name, request.text);
|
|
55
|
-
else if (request.kind === "agent")
|
|
56
|
-
await renderAgent(builder, target, request);
|
|
57
|
-
else if (request.kind === "constants")
|
|
58
|
-
await renderConstants(builder, target, request.name);
|
|
59
|
-
}
|
|
60
|
-
return builder.finish();
|
|
76
|
+
return yield* builder.finishEffect();
|
|
77
|
+
}).pipe(scaffoldErrors, Effect.provideService(GeneratorFileSystem, fs)), () => ({ requests: 1 }))),
|
|
78
|
+
});
|
|
79
|
+
}));
|
|
80
|
+
/**
|
|
81
|
+
* Plans an artifact through an explicitly supplied planning service.
|
|
82
|
+
* @param request - Normalized scaffold request.
|
|
83
|
+
* @returns A lazy immutable plan; planning never writes project files.
|
|
84
|
+
*/
|
|
85
|
+
export const planAddEffect = Effect.fn("ScaffoldPlanning.add")(function* (request) {
|
|
86
|
+
return yield* (yield* ScaffoldPlanning).plan(request);
|
|
87
|
+
}, (effect) => observeExecution("generator", "ScaffoldPlanning.add", effect));
|
|
88
|
+
/**
|
|
89
|
+
* Preserves the existing public Promise API and stable rejection constructors.
|
|
90
|
+
* @param request - Normalized scaffold request.
|
|
91
|
+
* @returns All ordered file operations and dependency ownership decisions.
|
|
92
|
+
*/
|
|
93
|
+
export function planAdd(request) {
|
|
94
|
+
return runGeneratorPromise(planAddEffect(request).pipe(Effect.provide(scaffoldPlanningLive), Effect.provide(projectDiscoveryLive)));
|
|
61
95
|
}
|
|
62
96
|
//# sourceMappingURL=add-plan.js.map
|
package/dist/add-plan.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-plan.js","sourceRoot":"","sources":["../src/add-plan.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"add-plan.js","sourceRoot":"","sources":["../src/add-plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Effect } from "effect";
|
|
2
|
+
import type { AddRequest, ScaffoldPlan } from "./add-types.js";
|
|
3
|
+
import type { GeneratorDomainError, GeneratorIoError } from "./generator-errors.js";
|
|
4
|
+
/** Discovery and rendering owner; its acquired capabilities remain explicit Layer dependencies. */
|
|
5
|
+
export interface ScaffoldPlanningService {
|
|
6
|
+
/**
|
|
7
|
+
* Discovers declarations and constructs a complete conflict-checked add plan.
|
|
8
|
+
* @param request - Normalized scaffold request.
|
|
9
|
+
* @returns An Effect returning ordered operations and concrete dependencies without writing files.
|
|
10
|
+
*/
|
|
11
|
+
readonly plan: (request: AddRequest) => Effect.Effect<ScaffoldPlan, GeneratorDomainError | GeneratorIoError>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=add-plan.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-plan.types.d.ts","sourceRoot":"","sources":["../src/add-plan.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEpF,mGAAmG;AACnG,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,CACb,OAAO,EAAE,UAAU,KAChB,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,oBAAoB,GAAG,gBAAgB,CAAC,CAAC;CAC3E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-plan.types.js","sourceRoot":"","sources":["../src/add-plan.types.ts"],"names":[],"mappings":""}
|
|
@@ -1,13 +1,67 @@
|
|
|
1
|
+
import { Effect } from "effect";
|
|
2
|
+
import { GeneratorFileSystem } from "./generator-filesystem.js";
|
|
3
|
+
import { GeneratorPrompt } from "./generator-prompt.js";
|
|
4
|
+
import { type GeneratorDomainError, type GeneratorIoError, type GeneratorPromptError } from "./generator-errors.js";
|
|
1
5
|
import { AddResolutionState } from "./add-resolution-state.js";
|
|
2
6
|
import type { DiscoveredArtifact, DiscoveredProfile, ProjectDiscovery } from "./project-discovery-types.js";
|
|
3
|
-
|
|
4
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Resolves resolve service through explicit prompt and filesystem authority.
|
|
9
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
10
|
+
* @param discovery - Declaration-only project facts.
|
|
11
|
+
* @returns Completion after a missing service choice is recorded in request state.
|
|
12
|
+
*/
|
|
13
|
+
export declare const resolveServiceEffect: (state: AddResolutionState, discovery: ProjectDiscovery) => Effect.Effect<void, GeneratorIoError | GeneratorPromptError | GeneratorDomainError, GeneratorFileSystem | GeneratorPrompt>;
|
|
14
|
+
/**
|
|
15
|
+
* Resolves resolve service for kind through explicit prompt and filesystem authority.
|
|
16
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
17
|
+
* @param discovery - Declaration-only project facts.
|
|
18
|
+
* @returns Completion after service selection is resolved for the requested artifact kind.
|
|
19
|
+
*/
|
|
20
|
+
export declare const resolveServiceForKindEffect: (state: AddResolutionState, discovery: ProjectDiscovery) => Effect.Effect<void, GeneratorIoError | GeneratorPromptError | GeneratorDomainError, GeneratorFileSystem | GeneratorPrompt>;
|
|
21
|
+
/**
|
|
22
|
+
* Resolves the selected service to its normalized domain identity.
|
|
23
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
24
|
+
* @param discovery - Declaration-only project facts.
|
|
25
|
+
* @returns The requested/new service domain, or undefined when no service was selected.
|
|
26
|
+
*/
|
|
5
27
|
export declare function selectedDomain(state: AddResolutionState, discovery: ProjectDiscovery): string | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Selects exported artifacts of one kind within a domain.
|
|
30
|
+
* @param discovery - Declaration-only project facts.
|
|
31
|
+
* @param domain - Normalized owning domain, or undefined for root artifacts.
|
|
32
|
+
* @param kind - Artifact kind to select.
|
|
33
|
+
* @returns Matching source-discovered artifacts in discovery order.
|
|
34
|
+
*/
|
|
6
35
|
export declare function artifacts(discovery: ProjectDiscovery, domain: string | undefined, kind: DiscoveredArtifact["kind"]): readonly DiscoveredArtifact[];
|
|
36
|
+
/**
|
|
37
|
+
* Builds prompt choices from exported artifact identities.
|
|
38
|
+
* @param values - Matching discovered artifacts.
|
|
39
|
+
* @returns Choice values using descriptor IDs when available, with source-path hints.
|
|
40
|
+
*/
|
|
7
41
|
export declare function artifactOptions(values: readonly DiscoveredArtifact[]): {
|
|
8
42
|
value: string;
|
|
9
43
|
label: string;
|
|
10
44
|
hint: string;
|
|
11
45
|
}[];
|
|
46
|
+
/**
|
|
47
|
+
* Selects provider profiles for one capability.
|
|
48
|
+
* @param discovery - Declaration-only project facts.
|
|
49
|
+
* @param capability - Requested provider capability.
|
|
50
|
+
* @returns Profiles of the requested capability in discovery order.
|
|
51
|
+
*/
|
|
12
52
|
export declare function profiles(discovery: ProjectDiscovery, capability: DiscoveredProfile["capability"]): readonly DiscoveredProfile[];
|
|
53
|
+
/**
|
|
54
|
+
* Preserves the existing resolveService Promise API.
|
|
55
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
56
|
+
* @param discovery - Declaration-only project facts.
|
|
57
|
+
* @returns Completion after the existing contract has been applied.
|
|
58
|
+
*/
|
|
59
|
+
export declare function resolveService(state: AddResolutionState, discovery: ProjectDiscovery): Promise<void>;
|
|
60
|
+
/**
|
|
61
|
+
* Preserves the existing resolveServiceForKind Promise API.
|
|
62
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
63
|
+
* @param discovery - Declaration-only project facts.
|
|
64
|
+
* @returns Completion after the existing contract has been applied.
|
|
65
|
+
*/
|
|
66
|
+
export declare function resolveServiceForKind(state: AddResolutionState, discovery: ProjectDiscovery): Promise<void>;
|
|
13
67
|
//# sourceMappingURL=add-resolution-discovery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-resolution-discovery.d.ts","sourceRoot":"","sources":["../src/add-resolution-discovery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"add-resolution-discovery.d.ts","sourceRoot":"","sources":["../src/add-resolution-discovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAwB,MAAM,uBAAuB,CAAC;AAE9E,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAC1B,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EAAE,kBAAkB,EAAS,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AAoBtC;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,wLA8BhC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,wLAavC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,kBAAkB,EACzB,SAAS,EAAE,gBAAgB,GAC1B,MAAM,GAAG,SAAS,CAYpB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,IAAI,EAAE,kBAAkB,CAAC,MAAM,CAAC,GAC/B,SAAS,kBAAkB,EAAE,CAI/B;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE;;;;IAMpE;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CACtB,SAAS,EAAE,gBAAgB,EAC3B,UAAU,EAAE,iBAAiB,CAAC,YAAY,CAAC,GAC1C,SAAS,iBAAiB,EAAE,CAE9B;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,kBAAkB,EACzB,SAAS,EAAE,gBAAgB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,kBAAkB,EACzB,SAAS,EAAE,gBAAgB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAMf"}
|
|
@@ -1,5 +1,15 @@
|
|
|
1
|
+
import { Effect } from "effect";
|
|
2
|
+
import { observeExecution } from "@relkit/contracts/operation";
|
|
3
|
+
import { GeneratorFileSystem } from "./generator-filesystem.js";
|
|
4
|
+
import { GeneratorPrompt, generatorPromptLayer } from "./generator-prompt.js";
|
|
5
|
+
import { createClackPromptDriver } from "./prompt-driver.js";
|
|
6
|
+
import { scaffoldErrors, } from "./generator-errors.js";
|
|
7
|
+
import { runGeneratorPromise } from "./generator-runtime.js";
|
|
1
8
|
import { normalizeArtifactName } from "./add-name.js";
|
|
2
9
|
import { AddResolutionState, label } from "./add-resolution-state.js";
|
|
10
|
+
/**
|
|
11
|
+
* Artifact kinds that can be placed inside a generic service.
|
|
12
|
+
*/
|
|
3
13
|
const SERVICE_KINDS = new Set([
|
|
4
14
|
"function",
|
|
5
15
|
"error",
|
|
@@ -14,17 +24,23 @@ const SERVICE_KINDS = new Set([
|
|
|
14
24
|
"agent",
|
|
15
25
|
"constants",
|
|
16
26
|
]);
|
|
17
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Resolves resolve service through explicit prompt and filesystem authority.
|
|
29
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
30
|
+
* @param discovery - Declaration-only project facts.
|
|
31
|
+
* @returns Completion after a missing service choice is recorded in request state.
|
|
32
|
+
*/
|
|
33
|
+
export const resolveServiceEffect = Effect.fn("AddResolution.resolveService")(function* (state, discovery) {
|
|
18
34
|
if (state.parsed.service || state.parsed.createService)
|
|
19
35
|
return;
|
|
20
36
|
const services = discovery.services.filter((service) => service.capability === "generic");
|
|
21
37
|
if (!state.interactive) {
|
|
22
38
|
if (services.length === 1)
|
|
23
|
-
state.
|
|
39
|
+
yield* state.optionEffect("service", services[0].domain);
|
|
24
40
|
return;
|
|
25
41
|
}
|
|
26
42
|
const create = "__create_service__";
|
|
27
|
-
const selected =
|
|
43
|
+
const selected = yield* state.selectEffect("Choose a service", [
|
|
28
44
|
...services.map((service) => ({
|
|
29
45
|
value: service.domain,
|
|
30
46
|
label: label(service.domain),
|
|
@@ -33,17 +49,29 @@ export async function resolveService(state, discovery) {
|
|
|
33
49
|
{ value: create, label: "Create a new service" },
|
|
34
50
|
]);
|
|
35
51
|
if (selected === create) {
|
|
36
|
-
const name =
|
|
52
|
+
const name = yield* state.textEffect("New service name", undefined, true);
|
|
37
53
|
if (name)
|
|
38
|
-
state.
|
|
54
|
+
yield* state.optionEffect("create-service", name);
|
|
39
55
|
}
|
|
40
56
|
else if (selected)
|
|
41
|
-
state.
|
|
42
|
-
}
|
|
43
|
-
|
|
57
|
+
yield* state.optionEffect("service", selected);
|
|
58
|
+
}, (effect) => observeExecution("generator", "add.resolve.resolveService", scaffoldErrors(effect)));
|
|
59
|
+
/**
|
|
60
|
+
* Resolves resolve service for kind through explicit prompt and filesystem authority.
|
|
61
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
62
|
+
* @param discovery - Declaration-only project facts.
|
|
63
|
+
* @returns Completion after service selection is resolved for the requested artifact kind.
|
|
64
|
+
*/
|
|
65
|
+
export const resolveServiceForKindEffect = Effect.fn("AddResolution.resolveServiceForKind")(function* (state, discovery) {
|
|
44
66
|
if (SERVICE_KINDS.has(state.parsed.kind))
|
|
45
|
-
|
|
46
|
-
}
|
|
67
|
+
yield* resolveServiceEffect(state, discovery);
|
|
68
|
+
}, (effect) => observeExecution("generator", "add.resolve.resolveServiceForKind", scaffoldErrors(effect)));
|
|
69
|
+
/**
|
|
70
|
+
* Resolves the selected service to its normalized domain identity.
|
|
71
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
72
|
+
* @param discovery - Declaration-only project facts.
|
|
73
|
+
* @returns The requested/new service domain, or undefined when no service was selected.
|
|
74
|
+
*/
|
|
47
75
|
export function selectedDomain(state, discovery) {
|
|
48
76
|
const parsed = state.parsed;
|
|
49
77
|
if (parsed.createService)
|
|
@@ -54,9 +82,21 @@ export function selectedDomain(state, discovery) {
|
|
|
54
82
|
return (discovery.services.find((service) => service.capability === "generic" &&
|
|
55
83
|
[service.domain, normalizeArtifactName(service.binding).fileStem].includes(normalized))?.domain ?? normalized);
|
|
56
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* Selects exported artifacts of one kind within a domain.
|
|
87
|
+
* @param discovery - Declaration-only project facts.
|
|
88
|
+
* @param domain - Normalized owning domain, or undefined for root artifacts.
|
|
89
|
+
* @param kind - Artifact kind to select.
|
|
90
|
+
* @returns Matching source-discovered artifacts in discovery order.
|
|
91
|
+
*/
|
|
57
92
|
export function artifacts(discovery, domain, kind) {
|
|
58
93
|
return discovery.artifacts.filter((artifact) => artifact.domain === domain && artifact.kind === kind && artifact.exported);
|
|
59
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* Builds prompt choices from exported artifact identities.
|
|
97
|
+
* @param values - Matching discovered artifacts.
|
|
98
|
+
* @returns Choice values using descriptor IDs when available, with source-path hints.
|
|
99
|
+
*/
|
|
60
100
|
export function artifactOptions(values) {
|
|
61
101
|
return values.map((artifact) => ({
|
|
62
102
|
value: artifact.id ?? artifact.binding,
|
|
@@ -64,7 +104,31 @@ export function artifactOptions(values) {
|
|
|
64
104
|
hint: artifact.path,
|
|
65
105
|
}));
|
|
66
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* Selects provider profiles for one capability.
|
|
109
|
+
* @param discovery - Declaration-only project facts.
|
|
110
|
+
* @param capability - Requested provider capability.
|
|
111
|
+
* @returns Profiles of the requested capability in discovery order.
|
|
112
|
+
*/
|
|
67
113
|
export function profiles(discovery, capability) {
|
|
68
114
|
return discovery.profiles.filter((profile) => profile.capability === capability);
|
|
69
115
|
}
|
|
116
|
+
/**
|
|
117
|
+
* Preserves the existing resolveService Promise API.
|
|
118
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
119
|
+
* @param discovery - Declaration-only project facts.
|
|
120
|
+
* @returns Completion after the existing contract has been applied.
|
|
121
|
+
*/
|
|
122
|
+
export function resolveService(state, discovery) {
|
|
123
|
+
return runGeneratorPromise(resolveServiceEffect(state, discovery).pipe(Effect.provide(generatorPromptLayer(state.prompt ?? createClackPromptDriver()))));
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Preserves the existing resolveServiceForKind Promise API.
|
|
127
|
+
* @param state - Invocation-owned state or a read-only planning snapshot.
|
|
128
|
+
* @param discovery - Declaration-only project facts.
|
|
129
|
+
* @returns Completion after the existing contract has been applied.
|
|
130
|
+
*/
|
|
131
|
+
export function resolveServiceForKind(state, discovery) {
|
|
132
|
+
return runGeneratorPromise(resolveServiceForKindEffect(state, discovery).pipe(Effect.provide(generatorPromptLayer(state.prompt ?? createClackPromptDriver()))));
|
|
133
|
+
}
|
|
70
134
|
//# sourceMappingURL=add-resolution-discovery.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-resolution-discovery.js","sourceRoot":"","sources":["../src/add-resolution-discovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAOtE,MAAM,aAAa,GAAG,IAAI,GAAG,CAAU;IACrC,UAAU;IACV,OAAO;IACP,OAAO;IACP,gBAAgB;IAChB,MAAM;IACN,KAAK;IACL,OAAO;IACP,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,OAAO;IACP,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"add-resolution-discovery.js","sourceRoot":"","sources":["../src/add-resolution-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Effect, Ref } from "effect";
|
|
2
|
+
import { GeneratorPrompt } from "./generator-prompt.js";
|
|
3
|
+
import type { PromptOption } from "./prompt-driver.types.js";
|
|
4
|
+
import type { AddResolutionSnapshot } from "./add-resolution-state.types.js";
|
|
5
|
+
/**
|
|
6
|
+
* Builds finite prompt capabilities against the private request Ref.
|
|
7
|
+
* @param state - The invocation owner's private authoritative resolution Ref.
|
|
8
|
+
* @param interactive - Whether omitted choices may request native input.
|
|
9
|
+
* @returns Typed prompt Effects; headless calls resolve without asking questions.
|
|
10
|
+
*/
|
|
11
|
+
export declare function addResolutionPrompt(state: Ref.Ref<AddResolutionSnapshot>, interactive: boolean): {
|
|
12
|
+
/**
|
|
13
|
+
* Asks text through explicit prompt authority only for an interactive request.
|
|
14
|
+
* @param message - Existing user-facing diagnostic.
|
|
15
|
+
* @param initialValue - Initial driver answer used when the question first appears.
|
|
16
|
+
* @param artifact - Whether entered text must pass artifact-name validation.
|
|
17
|
+
* @returns Entered text, or undefined when the request is headless; invalid answers fail.
|
|
18
|
+
*/
|
|
19
|
+
textEffect: (message: string, initialValue?: string | undefined, artifact?: any) => Effect.Effect<string | undefined, import("./generator-errors.js").GeneratorPromptError, GeneratorPrompt>;
|
|
20
|
+
/**
|
|
21
|
+
* Asks a finite choice through explicit prompt authority.
|
|
22
|
+
* @typeParam Value - Union of declared prompt option values.
|
|
23
|
+
* @param message - Question displayed by the prompt driver.
|
|
24
|
+
* @param options - Finite choices offered to the user.
|
|
25
|
+
* @param initialValue - Declared choice initially selected by the driver.
|
|
26
|
+
* @returns An observed prompt Effect returning a declared value, or undefined when headless.
|
|
27
|
+
*/
|
|
28
|
+
selectEffect: <Value extends string>(message: string, options: readonly PromptOption<Value>[], initialValue?: Value | undefined) => Effect.Effect<Value | undefined, import("./generator-errors.js").GeneratorPromptError, GeneratorPrompt>;
|
|
29
|
+
/**
|
|
30
|
+
* Asks multiple finite choices through explicit prompt authority.
|
|
31
|
+
* @typeParam Value - Union of declared prompt option values.
|
|
32
|
+
* @param message - Question displayed by the prompt driver.
|
|
33
|
+
* @param options - Finite choices offered to the user.
|
|
34
|
+
* @param required - Whether the selection must contain at least one value.
|
|
35
|
+
* @returns An observed prompt Effect returning selected declared values, or undefined when headless.
|
|
36
|
+
*/
|
|
37
|
+
multiselectEffect: <Value extends string>(message: string, options: readonly PromptOption<Value>[], required?: boolean | undefined) => Effect.Effect<readonly Value[] | undefined, import("./generator-errors.js").GeneratorPromptError, GeneratorPrompt>;
|
|
38
|
+
/**
|
|
39
|
+
* Asks consent through explicit prompt authority.
|
|
40
|
+
* @param message - Existing user-facing diagnostic.
|
|
41
|
+
* @param initialValue - Initial driver answer used when the question first appears.
|
|
42
|
+
* @returns The consent answer, or undefined when the request is headless.
|
|
43
|
+
*/
|
|
44
|
+
confirmEffect: (message: string, initialValue?: any) => Effect.Effect<boolean | undefined, import("./generator-errors.js").GeneratorPromptError, GeneratorPrompt>;
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=add-resolution-prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-resolution-prompt.d.ts","sourceRoot":"","sources":["../src/add-resolution-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAIrC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAE7E;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,WAAW,EAAE,OAAO;IAE3F;;;;;;OAMG;;IAwBH;;;;;;;OAOG;mBAEA,KAAK,SAAS,MAAM;IAiBvB;;;;;;;OAOG;wBAEA,KAAK,SAAS,MAAM;IAavB;;;;;OAKG;;EAWN"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { Effect, Ref } from "effect";
|
|
2
|
+
import { observeExecution } from "@relkit/contracts/operation";
|
|
3
|
+
import { normalizeArtifactName } from "./add-name.js";
|
|
4
|
+
import { GeneratorPrompt } from "./generator-prompt.js";
|
|
5
|
+
/**
|
|
6
|
+
* Builds finite prompt capabilities against the private request Ref.
|
|
7
|
+
* @param state - The invocation owner's private authoritative resolution Ref.
|
|
8
|
+
* @param interactive - Whether omitted choices may request native input.
|
|
9
|
+
* @returns Typed prompt Effects; headless calls resolve without asking questions.
|
|
10
|
+
*/
|
|
11
|
+
export function addResolutionPrompt(state, interactive) {
|
|
12
|
+
return {
|
|
13
|
+
/**
|
|
14
|
+
* Asks text through explicit prompt authority only for an interactive request.
|
|
15
|
+
* @param message - Existing user-facing diagnostic.
|
|
16
|
+
* @param initialValue - Initial driver answer used when the question first appears.
|
|
17
|
+
* @param artifact - Whether entered text must pass artifact-name validation.
|
|
18
|
+
* @returns Entered text, or undefined when the request is headless; invalid answers fail.
|
|
19
|
+
*/
|
|
20
|
+
textEffect: Effect.fn("AddResolution.text")((message, initialValue, artifact = false) => Effect.gen(function* () {
|
|
21
|
+
if (!interactive)
|
|
22
|
+
return undefined;
|
|
23
|
+
yield* Ref.update(state, (state) => ({ ...state, prompted: true }));
|
|
24
|
+
return yield* (yield* GeneratorPrompt).text({
|
|
25
|
+
message,
|
|
26
|
+
...(initialValue === undefined ? {} : { initialValue }),
|
|
27
|
+
validate: (value) => {
|
|
28
|
+
if (!value?.trim())
|
|
29
|
+
return "A value is required.";
|
|
30
|
+
if (!artifact)
|
|
31
|
+
return undefined;
|
|
32
|
+
try {
|
|
33
|
+
normalizeArtifactName(value);
|
|
34
|
+
return undefined;
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
return error instanceof Error ? error.message : String(error);
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
}), (effect) => observeExecution("generator", "add.resolve.text", effect)),
|
|
42
|
+
/**
|
|
43
|
+
* Asks a finite choice through explicit prompt authority.
|
|
44
|
+
* @typeParam Value - Union of declared prompt option values.
|
|
45
|
+
* @param message - Question displayed by the prompt driver.
|
|
46
|
+
* @param options - Finite choices offered to the user.
|
|
47
|
+
* @param initialValue - Declared choice initially selected by the driver.
|
|
48
|
+
* @returns An observed prompt Effect returning a declared value, or undefined when headless.
|
|
49
|
+
*/
|
|
50
|
+
selectEffect: Effect.fn("AddResolution.select")((message, options, initialValue) => Effect.gen(function* () {
|
|
51
|
+
if (!interactive)
|
|
52
|
+
return undefined;
|
|
53
|
+
yield* Ref.update(state, (state) => ({ ...state, prompted: true }));
|
|
54
|
+
return yield* (yield* GeneratorPrompt).select({
|
|
55
|
+
message,
|
|
56
|
+
options,
|
|
57
|
+
...(initialValue === undefined ? {} : { initialValue }),
|
|
58
|
+
});
|
|
59
|
+
}), (effect) => observeExecution("generator", "add.resolve.select", effect)),
|
|
60
|
+
/**
|
|
61
|
+
* Asks multiple finite choices through explicit prompt authority.
|
|
62
|
+
* @typeParam Value - Union of declared prompt option values.
|
|
63
|
+
* @param message - Question displayed by the prompt driver.
|
|
64
|
+
* @param options - Finite choices offered to the user.
|
|
65
|
+
* @param required - Whether the selection must contain at least one value.
|
|
66
|
+
* @returns An observed prompt Effect returning selected declared values, or undefined when headless.
|
|
67
|
+
*/
|
|
68
|
+
multiselectEffect: Effect.fn("AddResolution.multiselect")((message, options, required = false) => Effect.gen(function* () {
|
|
69
|
+
if (!interactive)
|
|
70
|
+
return undefined;
|
|
71
|
+
yield* Ref.update(state, (state) => ({ ...state, prompted: true }));
|
|
72
|
+
return yield* (yield* GeneratorPrompt).multiselect({ message, options, required });
|
|
73
|
+
}), (effect) => observeExecution("generator", "add.resolve.multiselect", effect)),
|
|
74
|
+
/**
|
|
75
|
+
* Asks consent through explicit prompt authority.
|
|
76
|
+
* @param message - Existing user-facing diagnostic.
|
|
77
|
+
* @param initialValue - Initial driver answer used when the question first appears.
|
|
78
|
+
* @returns The consent answer, or undefined when the request is headless.
|
|
79
|
+
*/
|
|
80
|
+
confirmEffect: Effect.fn("AddResolution.confirm")((message, initialValue = true) => Effect.gen(function* () {
|
|
81
|
+
if (!interactive)
|
|
82
|
+
return undefined;
|
|
83
|
+
yield* Ref.update(state, (state) => ({ ...state, prompted: true }));
|
|
84
|
+
return yield* (yield* GeneratorPrompt).confirm({ message, initialValue });
|
|
85
|
+
}), (effect) => observeExecution("generator", "add.resolve.confirm", effect)),
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=add-resolution-prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-resolution-prompt.js","sourceRoot":"","sources":["../src/add-resolution-prompt.ts"],"names":[],"mappings":"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"}
|