create-relkit 0.7.4 → 0.7.6
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/create-capabilities.d.ts +24 -33
- package/dist/create-capabilities.d.ts.map +1 -1
- package/dist/create-capabilities.js +52 -9
- package/dist/create-capabilities.js.map +1 -1
- package/dist/create-capabilities.types.d.ts +55 -0
- package/dist/create-capabilities.types.d.ts.map +1 -0
- package/dist/create-capabilities.types.js +2 -0
- package/dist/create-capabilities.types.js.map +1 -0
- package/dist/domain-artifact.d.ts.map +1 -1
- package/dist/domain-artifact.js +11 -3
- package/dist/domain-artifact.js.map +1 -1
- package/dist/domain-planning.d.ts +5 -0
- package/dist/domain-planning.d.ts.map +1 -1
- package/dist/domain-planning.js +25 -16
- package/dist/domain-planning.js.map +1 -1
- package/dist/generate-deployment-manifest.d.ts +10 -0
- package/dist/generate-deployment-manifest.d.ts.map +1 -0
- package/dist/generate-deployment-manifest.js +56 -0
- package/dist/generate-deployment-manifest.js.map +1 -0
- package/dist/generate-deployment.d.ts +2 -3
- package/dist/generate-deployment.d.ts.map +1 -1
- package/dist/generate-deployment.js +6 -47
- package/dist/generate-deployment.js.map +1 -1
- package/dist/generate-examples.d.ts +11 -0
- package/dist/generate-examples.d.ts.map +1 -0
- package/dist/generate-examples.js +28 -0
- package/dist/generate-examples.js.map +1 -0
- package/dist/generate-files-utilities.d.ts +1 -8
- package/dist/generate-files-utilities.d.ts.map +1 -1
- package/dist/generate-files-utilities.js +5 -19
- package/dist/generate-files-utilities.js.map +1 -1
- package/dist/project-discovery-artifacts.d.ts +15 -0
- package/dist/project-discovery-artifacts.d.ts.map +1 -0
- package/dist/project-discovery-artifacts.js +107 -0
- package/dist/project-discovery-artifacts.js.map +1 -0
- package/dist/project-discovery-artifacts.types.d.ts +22 -0
- package/dist/project-discovery-artifacts.types.d.ts.map +1 -0
- package/dist/project-discovery-artifacts.types.js +2 -0
- package/dist/project-discovery-artifacts.types.js.map +1 -0
- package/dist/project-discovery-facts.d.ts +8 -9
- package/dist/project-discovery-facts.d.ts.map +1 -1
- package/dist/project-discovery-facts.js +29 -135
- package/dist/project-discovery-facts.js.map +1 -1
- package/dist/project-discovery-members.d.ts +16 -0
- package/dist/project-discovery-members.d.ts.map +1 -0
- package/dist/project-discovery-members.js +57 -0
- package/dist/project-discovery-members.js.map +1 -0
- package/dist/project-discovery-types.d.ts +8 -0
- package/dist/project-discovery-types.d.ts.map +1 -1
- package/dist/render-auth-database.d.ts +33 -0
- package/dist/render-auth-database.d.ts.map +1 -0
- package/dist/render-auth-database.js +69 -0
- package/dist/render-auth-database.js.map +1 -0
- package/dist/render-auth-sources.d.ts +8 -2
- package/dist/render-auth-sources.d.ts.map +1 -1
- package/dist/render-auth-sources.js +9 -3
- package/dist/render-auth-sources.js.map +1 -1
- package/dist/render-auth.d.ts +14 -11
- package/dist/render-auth.d.ts.map +1 -1
- package/dist/render-auth.js +41 -108
- package/dist/render-auth.js.map +1 -1
- package/dist/render-database-sources.d.ts +7 -1
- package/dist/render-database-sources.d.ts.map +1 -1
- package/dist/render-database-sources.js +3 -2
- package/dist/render-database-sources.js.map +1 -1
- package/dist/render-database.d.ts +7 -10
- package/dist/render-database.d.ts.map +1 -1
- package/dist/render-database.js +12 -4
- package/dist/render-database.js.map +1 -1
- package/dist/render-database.types.d.ts +15 -0
- package/dist/render-database.types.d.ts.map +1 -0
- package/dist/render-database.types.js +2 -0
- package/dist/render-database.types.js.map +1 -0
- package/dist/render-route-sources.d.ts +3 -1
- package/dist/render-route-sources.d.ts.map +1 -1
- package/dist/render-route-sources.js +4 -2
- package/dist/render-route-sources.js.map +1 -1
- package/dist/render-routes.d.ts +1 -0
- package/dist/render-routes.d.ts.map +1 -1
- package/dist/render-routes.js +2 -1
- package/dist/render-routes.js.map +1 -1
- package/dist/render-service-members.d.ts +32 -0
- package/dist/render-service-members.d.ts.map +1 -0
- package/dist/render-service-members.js +61 -0
- package/dist/render-service-members.js.map +1 -0
- package/dist/render-service-requests.d.ts +35 -0
- package/dist/render-service-requests.d.ts.map +1 -0
- package/dist/render-service-requests.js +62 -0
- package/dist/render-service-requests.js.map +1 -0
- package/dist/render-service-support.d.ts +37 -0
- package/dist/render-service-support.d.ts.map +1 -0
- package/dist/render-service-support.js +74 -0
- package/dist/render-service-support.js.map +1 -0
- package/dist/render-service.d.ts +16 -13
- package/dist/render-service.d.ts.map +1 -1
- package/dist/render-service.js +33 -149
- package/dist/render-service.js.map +1 -1
- package/dist/render-service.types.d.ts +13 -0
- package/dist/render-service.types.d.ts.map +1 -0
- package/dist/render-service.types.js +2 -0
- package/dist/render-service.types.js.map +1 -0
- package/dist/scaffold-layout.d.ts +10 -0
- package/dist/scaffold-layout.d.ts.map +1 -0
- package/dist/scaffold-layout.js +29 -0
- package/dist/scaffold-layout.js.map +1 -0
- package/dist/templates/default/README.md +1 -1
- package/dist/templates/default/v1/agent/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/agent/README.md +9 -0
- package/dist/templates/default/v1/agent/package.json +4 -4
- package/dist/templates/default/v1/agent/src/routes/hello/route.ts +2 -1
- package/dist/templates/default/v1/agent/src/{hello → services/hello}/agents/assistant.agent.ts +2 -1
- package/dist/templates/default/v1/agent/src/{hello → services/hello}/agents/review.agent.ts +1 -0
- package/dist/templates/default/v1/agent/src/{hello → services/hello}/functions/hello.function.ts +7 -0
- package/dist/templates/default/v1/agent/src/services/hello/service.ts +5 -0
- package/dist/templates/default/v1/agent/src/{hello → services/hello}/tools/lookup.tool.ts +2 -1
- package/dist/templates/default/v1/agent/tests/fixtures/lookup.tool.ts +2 -1
- package/dist/templates/default/v1/agent/tests/fixtures/mcp-options.ts +2 -1
- package/dist/templates/default/v1/agent/tests/unit/assistant.agent.test.ts +3 -2
- package/dist/templates/default/v1/agent/tests/unit/hello.function.test.ts +2 -1
- package/dist/templates/default/v1/agent/tests/unit/lookup.tool.test.ts +2 -1
- package/dist/templates/default/v1/agent/tests/unit/review.agent.test.ts +2 -1
- package/dist/templates/default/v1/agent/tsconfig.json +1 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/api/README.md +10 -0
- package/dist/templates/default/v1/api/package.json +3 -3
- package/dist/templates/default/v1/api/src/routes/echo/route.ts +2 -1
- package/dist/templates/default/v1/api/src/routes/hello/route.ts +2 -1
- package/dist/templates/default/v1/api/src/routes/orders/route.ts +2 -1
- package/dist/templates/default/v1/api/src/{echo → services/echo}/functions/echo.function.ts +1 -0
- package/dist/templates/default/v1/api/src/services/echo/service.ts +5 -0
- package/dist/templates/default/v1/api/src/{hello → services/hello}/functions/hello.function.ts +7 -0
- package/dist/templates/default/v1/api/src/services/hello/service.ts +5 -0
- package/dist/templates/default/v1/api/src/{orders → services/orders}/functions/create-order.function.ts +2 -1
- package/dist/templates/default/v1/api/src/{orders → services/orders}/functions/price-order.function.ts +1 -0
- package/dist/templates/default/v1/api/src/services/orders/service.ts +8 -0
- package/dist/templates/default/v1/api/tests/unit/echo.function.test.ts +2 -1
- package/dist/templates/default/v1/api/tests/unit/hello.function.test.ts +2 -1
- package/dist/templates/default/v1/api/tests/unit/orders.function.test.ts +2 -1
- package/dist/templates/default/v1/api/tsconfig.json +1 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/fullstack/README.md +9 -0
- package/dist/templates/default/v1/fullstack/package.json +5 -5
- package/dist/templates/default/v1/fullstack/src/routes/hello/route.ts +2 -1
- package/dist/templates/default/v1/fullstack/src/{hello → services/hello}/agents/assistant.agent.ts +2 -1
- package/dist/templates/default/v1/fullstack/src/{hello → services/hello}/agents/review.agent.ts +1 -0
- package/dist/templates/default/v1/fullstack/src/{hello → services/hello}/functions/hello.function.ts +1 -0
- package/dist/templates/default/v1/fullstack/src/services/hello/service.ts +5 -0
- package/dist/templates/default/v1/fullstack/src/{hello → services/hello}/tools/lookup.tool.ts +2 -1
- package/dist/templates/default/v1/fullstack/tests/unit/assistant.agent.test.ts +3 -2
- package/dist/templates/default/v1/fullstack/tests/unit/hello.function.test.ts +2 -1
- package/dist/templates/default/v1/fullstack/tests/unit/review.agent.test.ts +2 -1
- package/dist/templates/default/v1/fullstack/tsconfig.json +1 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/minimal/README.md +10 -0
- package/dist/templates/default/v1/minimal/package.json +3 -3
- package/dist/templates/default/v1/minimal/src/routes/hello/route.ts +2 -1
- package/dist/templates/default/v1/minimal/src/{hello → services/hello}/functions/hello.function.ts +7 -0
- package/dist/templates/default/v1/minimal/src/services/hello/service.ts +5 -0
- package/dist/templates/default/v1/minimal/tests/unit/hello.function.test.ts +2 -1
- package/dist/templates/default/v1/minimal/tsconfig.json +1 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/tasks/README.md +8 -1
- package/dist/templates/default/v1/tasks/package.json +3 -3
- package/dist/templates/default/v1/tasks/src/routes/health/route.ts +2 -1
- package/dist/templates/default/v1/tasks/src/{orders → services/orders}/functions/health.function.ts +1 -0
- package/dist/templates/default/v1/tasks/src/{orders → services/orders}/jobs/export-orders.job.ts +2 -1
- package/dist/templates/default/v1/tasks/src/services/orders/service.ts +11 -0
- package/dist/templates/default/v1/tasks/src/{orders → services/orders}/tasks/export-orders.task.ts +1 -0
- package/dist/templates/default/v1/tasks/tests/unit/export-orders.task.test.ts +2 -1
- package/dist/templates/default/v1/tasks/tsconfig.json +2 -0
- package/package.json +3 -3
- package/dist/templates/default/v1/agent/src/hello/service.ts +0 -4
- package/dist/templates/default/v1/api/src/echo/service.ts +0 -4
- package/dist/templates/default/v1/api/src/hello/service.ts +0 -4
- package/dist/templates/default/v1/api/src/orders/service.ts +0 -7
- package/dist/templates/default/v1/fullstack/src/hello/service.ts +0 -4
- package/dist/templates/default/v1/minimal/src/hello/service.ts +0 -4
- package/dist/templates/default/v1/tasks/src/orders/service.ts +0 -10
|
@@ -1,10 +1,8 @@
|
|
|
1
|
+
/** Composes explicit deployment/provider source and grouped task-fixture patches through captured generator services; public creation certification stays unchanged. */
|
|
1
2
|
import { join } from "node:path";
|
|
2
|
-
import { Effect
|
|
3
|
+
import { Effect } from "effect";
|
|
3
4
|
import { observeExecution } from "@relkit/contracts/operation";
|
|
4
|
-
import {
|
|
5
|
-
import { GenerateProjectError } from "./generate-types.js";
|
|
6
|
-
import { domainError, domainTry } from "./generator-errors.js";
|
|
7
|
-
import { TemplateManifest, JsonObject } from "./project-manifest.schemas.js";
|
|
5
|
+
import { customizeDeploymentManifestEffect } from "./generate-deployment-manifest.js";
|
|
8
6
|
import { replaceOnceEffect } from "./generate-files-utilities.js";
|
|
9
7
|
/**
|
|
10
8
|
* Applies only explicit deployment and jobs flags, retaining concrete template dependency versions.
|
|
@@ -37,38 +35,7 @@ export const customizeDeploymentEffect = Effect.fn("ProjectFiles.customizeDeploy
|
|
|
37
35
|
.filter(Boolean)
|
|
38
36
|
.join("\n"));
|
|
39
37
|
yield* customizeTaskFixtureEffect(root, options);
|
|
40
|
-
|
|
41
|
-
const source = yield* (yield* GeneratorFileSystem).readText(manifestPath);
|
|
42
|
-
const fs = yield* GeneratorFileSystem;
|
|
43
|
-
const parsed = yield* domainTry(() => JSON.parse(source));
|
|
44
|
-
const decoded = yield* Schema.decodeUnknownEffect(TemplateManifest)(parsed).pipe(Effect.mapError(domainError));
|
|
45
|
-
const original = yield* Schema.decodeUnknownEffect(JsonObject)(parsed).pipe(Effect.mapError(domainError));
|
|
46
|
-
const manifest = {
|
|
47
|
-
...original,
|
|
48
|
-
...decoded,
|
|
49
|
-
dependencies: { ...decoded.dependencies },
|
|
50
|
-
scripts: { ...decoded.scripts },
|
|
51
|
-
};
|
|
52
|
-
const version = manifest.dependencies["@relkit/app"];
|
|
53
|
-
if (version === undefined)
|
|
54
|
-
return yield* Effect.fail(domainError(new GenerateProjectError("RELKIT_CREATE_TEMPLATE_INVALID", "Template has no @relkit/app dependency.")));
|
|
55
|
-
if (options.cloud === "aws")
|
|
56
|
-
manifest.dependencies["@relkit/aws"] = version;
|
|
57
|
-
if (options.deploy === "pulumi")
|
|
58
|
-
manifest.dependencies["@relkit/pulumi"] = version;
|
|
59
|
-
if (options.jobs !== undefined) {
|
|
60
|
-
manifest.dependencies["@relkit/docker"] = version;
|
|
61
|
-
manifest.dependencies["@relkit/local"] = version;
|
|
62
|
-
manifest.dependencies[`@relkit/${options.jobs.replace(/-docker$/u, "")}`] = version;
|
|
63
|
-
}
|
|
64
|
-
if (options.cloud === "aws" && options.deploy === "pulumi") {
|
|
65
|
-
manifest.scripts["deploy:preview"] = "relkit deploy preview";
|
|
66
|
-
manifest.scripts.deploy = "relkit deploy up";
|
|
67
|
-
}
|
|
68
|
-
manifest.scripts = sorted(manifest.scripts);
|
|
69
|
-
manifest.dependencies = sorted(manifest.dependencies);
|
|
70
|
-
yield* fs.write(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`);
|
|
71
|
-
yield* fs.chmod(manifestPath, 0o644);
|
|
38
|
+
yield* customizeDeploymentManifestEffect(root, options);
|
|
72
39
|
}, (effect) => observeExecution("generator", "generation.deployment", effect));
|
|
73
40
|
/**
|
|
74
41
|
* Adjusts the tasks fixture to the selected supported jobs adapter.
|
|
@@ -79,8 +46,8 @@ export const customizeDeploymentEffect = Effect.fn("ProjectFiles.customizeDeploy
|
|
|
79
46
|
export const customizeTaskFixtureEffect = Effect.fn("ProjectFiles.customizeTasks")(function* (root, options) {
|
|
80
47
|
if (options.jobs === undefined || options.jobs === "inngest-docker")
|
|
81
48
|
return;
|
|
82
|
-
const taskPath = join(root, "src/orders/tasks/export-orders.task.ts");
|
|
83
|
-
const jobPath = join(root, "src/orders/jobs/export-orders.job.ts");
|
|
49
|
+
const taskPath = join(root, "src/services/orders/tasks/export-orders.task.ts");
|
|
50
|
+
const jobPath = join(root, "src/services/orders/jobs/export-orders.job.ts");
|
|
84
51
|
if (options.jobs === "effect-mq-docker")
|
|
85
52
|
yield* replaceOnceEffect(taskPath, 'execution: "durable"', 'execution: "retryable"');
|
|
86
53
|
yield* replaceOnceEffect(taskPath, " progress: z.object({ completed: z.number().int().nonnegative() }),\n", "");
|
|
@@ -89,12 +56,4 @@ export const customizeTaskFixtureEffect = Effect.fn("ProjectFiles.customizeTasks
|
|
|
89
56
|
yield* replaceOnceEffect(jobPath, ' operations: ["trigger", "get", "list", "watch"],', ' operations: ["trigger"],');
|
|
90
57
|
yield* replaceOnceEffect(jobPath, ' fields: ["status", "progress", "output"],', ' fields: ["status", "output"],');
|
|
91
58
|
}, (effect) => observeExecution("generator", "generation.customizeTasks", effect));
|
|
92
|
-
/**
|
|
93
|
-
* Sorts owned manifest fields deterministically.
|
|
94
|
-
* @param values - Ordered declarations or argument values.
|
|
95
|
-
* @returns A new manifest string record sorted by key.
|
|
96
|
-
*/
|
|
97
|
-
function sorted(values) {
|
|
98
|
-
return Object.fromEntries(Object.entries(values).sort(([left], [right]) => left.localeCompare(right)));
|
|
99
|
-
}
|
|
100
59
|
//# sourceMappingURL=generate-deployment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-deployment.js","sourceRoot":"","sources":["../src/generate-deployment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"generate-deployment.js","sourceRoot":"","sources":["../src/generate-deployment.ts"],"names":[],"mappings":"AAAA,wKAAwK;AACxK,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iCAAiC,EAAE,MAAM,mCAAmC,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGlE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC,EAAE,CAAC,kCAAkC,CAAC,CACpF,QAAQ,CAAC,EAAE,IAAY,EAAE,OAAsB;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG;QACd,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC;QACnF,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,kBAAkB;YACrC,CAAC,CAAC,CAAC,+CAA+C,CAAC;YACnD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,KAAK,CAAC,CAAC,iBAAiB,CAAC,UAAU,EAAE,qCAAqC,EAAE,OAAO,CAAC,CAAC;IACrF,KAAK,CAAC,CAAC,iBAAiB,CACtB,UAAU,EACV,+BAA+B,EAC/B;QACE,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;YACpD,CAAC,CAAC,kDAAkD;YACpD,CAAC,CAAC,EAAE;QACN,OAAO,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC,CAAC,EAAE;QAClF,OAAO,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,EAAE;QACrF,OAAO,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC,CAAC,EAAE;QAClF,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kCAAkC;KACrE;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;IACF,KAAK,CAAC,CAAC,0BAA0B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAEjD,KAAK,CAAC,CAAC,iCAAiC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC1D,CAAC,EACD,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,uBAAuB,EAAE,MAAM,CAAC,CAC3E,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,EAAE,CAAC,6BAA6B,CAAC,CAChF,QAAQ,CAAC,EAAE,IAAY,EAAE,OAAsB;IAC7C,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB;QAAE,OAAO;IAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,iDAAiD,CAAC,CAAC;IAC/E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,+CAA+C,CAAC,CAAC;IAC5E,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB;QACrC,KAAK,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,sBAAsB,EAAE,wBAAwB,CAAC,CAAC;IACvF,KAAK,CAAC,CAAC,iBAAiB,CACtB,QAAQ,EACR,wEAAwE,EACxE,EAAE,CACH,CAAC;IACF,KAAK,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,sDAAsD,EAAE,EAAE,CAAC,CAAC;IAC/F,KAAK,CAAC,CAAC,iBAAiB,CACtB,QAAQ,EACR,oEAAoE,EACpE,EAAE,CACH,CAAC;IACF,KAAK,CAAC,CAAC,iBAAiB,CACtB,OAAO,EACP,sDAAsD,EACtD,8BAA8B,CAC/B,CAAC;IACF,KAAK,CAAC,CAAC,iBAAiB,CACtB,OAAO,EACP,+CAA+C,EAC/C,mCAAmC,CACpC,CAAC;AACJ,CAAC,EACD,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,2BAA2B,EAAE,MAAM,CAAC,CAC/E,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Effect } from "effect";
|
|
2
|
+
import { GeneratorFileSystem } from "./generator-filesystem.js";
|
|
3
|
+
/** Canonical example-only paths removed by the existing --no-examples flag. */
|
|
4
|
+
export declare const EXAMPLE_PATH_PREFIXES: readonly ["src/routes", "src/orders", "src/services/orders", "src/echo", "src/services/echo", "src/hello/tools", "src/services/hello/tools", "src/hello/agents", "src/services/hello/agents", "tests"];
|
|
5
|
+
/**
|
|
6
|
+
* Removes only the established template examples, with ordered physical settlement.
|
|
7
|
+
* @param root - Absolute project or owned resource root.
|
|
8
|
+
* @returns Completion after the known example source directories are removed from the staged project.
|
|
9
|
+
*/
|
|
10
|
+
export declare const removeExamplesEffect: (root: string) => Effect.Effect<void, import("./generator-errors.js").GeneratorIoError, GeneratorFileSystem>;
|
|
11
|
+
//# sourceMappingURL=generate-examples.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-examples.d.ts","sourceRoot":"","sources":["../src/generate-examples.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,+EAA+E;AAC/E,eAAO,MAAM,qBAAqB,wMAWxB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,8GAQhC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** Removes only established flat/grouped example paths from an owned staged template while preserving the useful hello service and function. */
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { Effect } from "effect";
|
|
4
|
+
import { observeExecution } from "@relkit/contracts/operation";
|
|
5
|
+
import { GeneratorFileSystem } from "./generator-filesystem.js";
|
|
6
|
+
/** Canonical example-only paths removed by the existing --no-examples flag. */
|
|
7
|
+
export const EXAMPLE_PATH_PREFIXES = [
|
|
8
|
+
"src/routes",
|
|
9
|
+
"src/orders",
|
|
10
|
+
"src/services/orders",
|
|
11
|
+
"src/echo",
|
|
12
|
+
"src/services/echo",
|
|
13
|
+
"src/hello/tools",
|
|
14
|
+
"src/services/hello/tools",
|
|
15
|
+
"src/hello/agents",
|
|
16
|
+
"src/services/hello/agents",
|
|
17
|
+
"tests",
|
|
18
|
+
];
|
|
19
|
+
/**
|
|
20
|
+
* Removes only the established template examples, with ordered physical settlement.
|
|
21
|
+
* @param root - Absolute project or owned resource root.
|
|
22
|
+
* @returns Completion after the known example source directories are removed from the staged project.
|
|
23
|
+
*/
|
|
24
|
+
export const removeExamplesEffect = Effect.fn("ProjectFiles.removeExamples")(function* (root) {
|
|
25
|
+
const fs = yield* GeneratorFileSystem;
|
|
26
|
+
yield* Effect.forEach(EXAMPLE_PATH_PREFIXES, (directory) => fs.remove(join(root, directory), { recursive: true, force: true }));
|
|
27
|
+
}, (effect) => observeExecution("generator", "generation.removeExamples", effect));
|
|
28
|
+
//# sourceMappingURL=generate-examples.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-examples.js","sourceRoot":"","sources":["../src/generate-examples.ts"],"names":[],"mappings":"AAAA,gJAAgJ;AAChJ,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,+EAA+E;AAC/E,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,YAAY;IACZ,YAAY;IACZ,qBAAqB;IACrB,UAAU;IACV,mBAAmB;IACnB,iBAAiB;IACjB,0BAA0B;IAC1B,kBAAkB;IAClB,2BAA2B;IAC3B,OAAO;CACC,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,EAAE,CAAC,6BAA6B,CAAC,CAC1E,QAAQ,CAAC,EAAE,IAAY;IACrB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC;IACtC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,SAAS,EAAE,EAAE,CACzD,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CACnE,CAAC;AACJ,CAAC,EACD,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,2BAA2B,EAAE,MAAM,CAAC,CAC/E,CAAC"}
|
|
@@ -2,8 +2,7 @@ import { Effect } from "effect";
|
|
|
2
2
|
import { GeneratorFileSystem } from "./generator-filesystem.js";
|
|
3
3
|
import type { GeneratorDomainError, GeneratorIoError } from "./generator-errors.js";
|
|
4
4
|
export type { StageCleanupResult } from "./generate-files-utilities.types.js";
|
|
5
|
-
|
|
6
|
-
export declare const EXAMPLE_PATH_PREFIXES: readonly ["src/routes", "src/orders", "src/echo", "src/hello/tools", "src/hello/agents", "tests"];
|
|
5
|
+
export { EXAMPLE_PATH_PREFIXES, removeExamplesEffect } from "./generate-examples.js";
|
|
7
6
|
/**
|
|
8
7
|
* Cleans only a verified sibling staging directory owned by this generation invocation.
|
|
9
8
|
* @param stage - Owned sibling staging directory, or undefined before acquisition.
|
|
@@ -37,12 +36,6 @@ export declare const requireFilesEffect: (root: string, paths: readonly string[]
|
|
|
37
36
|
* @returns Completion after exactly one template marker is replaced and its file mode is restored.
|
|
38
37
|
*/
|
|
39
38
|
export declare const replaceOnceEffect: (path: string, before: string, after: string) => Effect.Effect<undefined, GeneratorIoError | GeneratorDomainError, GeneratorFileSystem>;
|
|
40
|
-
/**
|
|
41
|
-
* Removes only the established template examples, with ordered physical settlement.
|
|
42
|
-
* @param root - Absolute project or owned resource root.
|
|
43
|
-
* @returns Completion after the known example source directories are removed from the staged project.
|
|
44
|
-
*/
|
|
45
|
-
export declare const removeExamplesEffect: (root: string) => Effect.Effect<void, GeneratorIoError, GeneratorFileSystem>;
|
|
46
39
|
/**
|
|
47
40
|
* Lists generated source files in deterministic order, excluding generated and installed state.
|
|
48
41
|
* @param root - Absolute project or owned resource root.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-files-utilities.d.ts","sourceRoot":"","sources":["../src/generate-files-utilities.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAQ,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-files-utilities.d.ts","sourceRoot":"","sources":["../src/generate-files-utilities.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAQ,MAAM,QAAQ,CAAC;AAGtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGpF,YAAY,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAErF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B;;;;;8BA2BtC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,uFAyBjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,4GAmB9B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,yIAkB7B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,wHAiBlC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM9C;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAGpF;AAED,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,WAAW,EACX,cAAc,EACd,gBAAgB,GACjB,MAAM,4BAA4B,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** Validates and mutates only owned staged generator files; captured filesystem/error authorities retain native failure and cleanup disposition. */
|
|
1
2
|
import { basename, dirname, join, relative, resolve } from "node:path";
|
|
2
3
|
import { Effect, Exit } from "effect";
|
|
3
4
|
import { observeExecution } from "@relkit/contracts/operation";
|
|
@@ -5,15 +6,7 @@ import { GenerateProjectError } from "./generate-types.js";
|
|
|
5
6
|
import { GeneratorFileSystem } from "./generator-filesystem.js";
|
|
6
7
|
import { domainError } from "./generator-errors.js";
|
|
7
8
|
import { recordCleanupFailure } from "./generator-cleanup.js";
|
|
8
|
-
|
|
9
|
-
export const EXAMPLE_PATH_PREFIXES = [
|
|
10
|
-
"src/routes",
|
|
11
|
-
"src/orders",
|
|
12
|
-
"src/echo",
|
|
13
|
-
"src/hello/tools",
|
|
14
|
-
"src/hello/agents",
|
|
15
|
-
"tests",
|
|
16
|
-
];
|
|
9
|
+
export { EXAMPLE_PATH_PREFIXES, removeExamplesEffect } from "./generate-examples.js";
|
|
17
10
|
/**
|
|
18
11
|
* Cleans only a verified sibling staging directory owned by this generation invocation.
|
|
19
12
|
* @param stage - Owned sibling staging directory, or undefined before acquisition.
|
|
@@ -84,15 +77,6 @@ export const replaceOnceEffect = Effect.fn("ProjectFiles.replaceOnce")(function*
|
|
|
84
77
|
yield* fs.write(path, content.slice(0, first) + after + content.slice(first + before.length));
|
|
85
78
|
yield* fs.chmod(path, 0o644);
|
|
86
79
|
}, (effect) => observeExecution("generator", "generation.replaceOnce", effect));
|
|
87
|
-
/**
|
|
88
|
-
* Removes only the established template examples, with ordered physical settlement.
|
|
89
|
-
* @param root - Absolute project or owned resource root.
|
|
90
|
-
* @returns Completion after the known example source directories are removed from the staged project.
|
|
91
|
-
*/
|
|
92
|
-
export const removeExamplesEffect = Effect.fn("ProjectFiles.removeExamples")(function* (root) {
|
|
93
|
-
const fs = yield* GeneratorFileSystem;
|
|
94
|
-
yield* Effect.forEach(EXAMPLE_PATH_PREFIXES, (directory) => fs.remove(join(root, directory), { recursive: true, force: true }));
|
|
95
|
-
}, (effect) => observeExecution("generator", "generation.removeExamples", effect));
|
|
96
80
|
/**
|
|
97
81
|
* Lists generated source files in deterministic order, excluding generated and installed state.
|
|
98
82
|
* @param root - Absolute project or owned resource root.
|
|
@@ -132,7 +116,9 @@ export function projectId(name) {
|
|
|
132
116
|
* @returns Negative, zero or positive ordering using a deterministic string comparison.
|
|
133
117
|
*/
|
|
134
118
|
export function compareNames(left, right) {
|
|
135
|
-
|
|
119
|
+
if (left.name === right.name)
|
|
120
|
+
return 0;
|
|
121
|
+
return left.name < right.name ? -1 : 1;
|
|
136
122
|
}
|
|
137
123
|
export { cleanupStagedProject, requireTemplate, requireFiles, replaceOnce, removeExamples, listProjectFiles, } from "./generate-files-compat.js";
|
|
138
124
|
//# sourceMappingURL=generate-files-utilities.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-files-utilities.js","sourceRoot":"","sources":["../src/generate-files-utilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-files-utilities.js","sourceRoot":"","sources":["../src/generate-files-utilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Projects compiler-recognized descriptor syntax into scaffold artifact records.
|
|
3
|
+
* Shared layout paths supply service names; database/auth keep native capability
|
|
4
|
+
* metadata and ordinary modules remain excluded from descriptor registration.
|
|
5
|
+
*/
|
|
6
|
+
import { type AstSourceModule } from "@relkit/compiler";
|
|
7
|
+
import type { DiscoveredCollections } from "./project-discovery-artifacts.types.js";
|
|
8
|
+
/**
|
|
9
|
+
* Collects source-only artifacts after compiler layout validation.
|
|
10
|
+
* @param root - Canonical application root.
|
|
11
|
+
* @param modules - Complete unevaluated authored module inventory.
|
|
12
|
+
* @returns Static artifact/service records with accurate flat or grouped paths.
|
|
13
|
+
*/
|
|
14
|
+
export declare function collectProjectArtifacts(root: string, modules: readonly AstSourceModule[]): DiscoveredCollections;
|
|
15
|
+
//# sourceMappingURL=project-discovery-artifacts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-discovery-artifacts.d.ts","sourceRoot":"","sources":["../src/project-discovery-artifacts.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAK1E,OAAO,KAAK,EAAkB,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAGpG;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,eAAe,EAAE,GAClC,qBAAqB,CA4BvB"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Projects compiler-recognized descriptor syntax into scaffold artifact records.
|
|
3
|
+
* Shared layout paths supply service names; database/auth keep native capability
|
|
4
|
+
* metadata and ordinary modules remain excluded from descriptor registration.
|
|
5
|
+
*/
|
|
6
|
+
import { prefilterSources } from "@relkit/compiler";
|
|
7
|
+
import { serviceSource, normalizeSourcePath } from "@relkit/contracts";
|
|
8
|
+
import { readFactoryStringProperty } from "./source-edit.js";
|
|
9
|
+
import { discoverDatabaseDetails } from "./project-discovery-database.js";
|
|
10
|
+
import { serviceMembers } from "./project-discovery-members.js";
|
|
11
|
+
/**
|
|
12
|
+
* Collects source-only artifacts after compiler layout validation.
|
|
13
|
+
* @param root - Canonical application root.
|
|
14
|
+
* @param modules - Complete unevaluated authored module inventory.
|
|
15
|
+
* @returns Static artifact/service records with accurate flat or grouped paths.
|
|
16
|
+
*/
|
|
17
|
+
export function collectProjectArtifacts(root, modules) {
|
|
18
|
+
const normalized = modules.map((module) => ({
|
|
19
|
+
...module,
|
|
20
|
+
fileName: normalizeSourcePath(module.fileName, root),
|
|
21
|
+
}));
|
|
22
|
+
const candidates = prefilterSources(normalized, { projectRoot: root }).candidates;
|
|
23
|
+
const sourceByPath = new Map(normalized.map((module) => [module.fileName, module.text]));
|
|
24
|
+
const services = [];
|
|
25
|
+
const artifacts = [];
|
|
26
|
+
for (const candidate of candidates) {
|
|
27
|
+
const source = sourceByPath.get(candidate.fileName);
|
|
28
|
+
if (source === undefined)
|
|
29
|
+
throw new Error("Compiler returned an uninventoried source module.");
|
|
30
|
+
const domain = serviceSource(candidate.fileName)?.name;
|
|
31
|
+
for (const factory of candidate.facts.factoryBindings) {
|
|
32
|
+
const context = {
|
|
33
|
+
modules: normalized,
|
|
34
|
+
candidate,
|
|
35
|
+
factory,
|
|
36
|
+
source,
|
|
37
|
+
binding: factory.binding ?? fileBinding(candidate.fileName),
|
|
38
|
+
...(domain === undefined ? {} : { domain }),
|
|
39
|
+
};
|
|
40
|
+
artifacts.push(artifactFor(context));
|
|
41
|
+
const service = serviceFor(context);
|
|
42
|
+
if (service)
|
|
43
|
+
services.push(service);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return { services, artifacts };
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Projects one known factory without interpreting its runtime options.
|
|
50
|
+
* @param context - Compiler syntax, physical source and normalized binding evidence.
|
|
51
|
+
* @returns Artifact metadata used for identity/collision and renderer selection.
|
|
52
|
+
*/
|
|
53
|
+
function artifactFor(context) {
|
|
54
|
+
const { candidate, factory, source, binding, domain } = context;
|
|
55
|
+
const exported = [...candidate.facts.exports.entries()].find(([, entry]) => entry.binding === factory.binding || entry.factory === factory);
|
|
56
|
+
const id = factory.id === "explicit"
|
|
57
|
+
? readFactoryStringProperty(source, candidate.fileName, factory.factory, "id", factory.factory === "definePrompt" || factory.factory === "defineConstants" ? 1 : 0)
|
|
58
|
+
: undefined;
|
|
59
|
+
return {
|
|
60
|
+
kind: factory.kind,
|
|
61
|
+
path: candidate.fileName,
|
|
62
|
+
binding,
|
|
63
|
+
...(domain === undefined ? {} : { domain }),
|
|
64
|
+
...(id === undefined ? {} : { id }),
|
|
65
|
+
factory: factory.factory,
|
|
66
|
+
exported: exported !== undefined,
|
|
67
|
+
...(exported === undefined
|
|
68
|
+
? {}
|
|
69
|
+
: { exportKind: exported[0] === "default" ? "default" : "named" }),
|
|
70
|
+
options: factory.options,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Preserves generic versus native database/auth service contracts.
|
|
75
|
+
* @param context - One statically recognized declaration and its owning service path.
|
|
76
|
+
* @returns Service metadata, or absence for nonservice declarations.
|
|
77
|
+
*/
|
|
78
|
+
function serviceFor(context) {
|
|
79
|
+
const { candidate, factory, source, modules, binding, domain } = context;
|
|
80
|
+
if (factory.kind !== "service" || domain === undefined)
|
|
81
|
+
return undefined;
|
|
82
|
+
let capability = "generic";
|
|
83
|
+
if (factory.factory === "defineDrizzleService")
|
|
84
|
+
capability = "database";
|
|
85
|
+
else if (factory.factory === "defineBetterAuthService")
|
|
86
|
+
capability = "auth";
|
|
87
|
+
const database = capability === "database"
|
|
88
|
+
? discoverDatabaseDetails(modules, candidate.fileName, source)
|
|
89
|
+
: undefined;
|
|
90
|
+
return {
|
|
91
|
+
domain,
|
|
92
|
+
path: candidate.fileName,
|
|
93
|
+
binding,
|
|
94
|
+
capability,
|
|
95
|
+
...(database ?? {}),
|
|
96
|
+
members: serviceMembers(candidate.facts.serviceMembers.filter((member) => member.service === factory.binding), source, candidate.fileName, factory.factory),
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Preserves the conventional fallback binding for unnamed factory declarations.
|
|
101
|
+
* @param path - Physical module whose filename supplies a kebab-case stem.
|
|
102
|
+
* @returns Its camel-case stem or artifact when no filename was available.
|
|
103
|
+
*/
|
|
104
|
+
function fileBinding(path) {
|
|
105
|
+
return (path.split("/").at(-1)?.split(".")[0] ?? "artifact").replace(/-([a-z0-9])/g, (_, value) => value.toUpperCase());
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=project-discovery-artifacts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-discovery-artifacts.js","sourceRoot":"","sources":["../src/project-discovery-artifacts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Describes declaration-only scaffold artifact inputs and collected outputs.
|
|
3
|
+
* Compiler syntax facts provide factory identity; scaffold discovery retains
|
|
4
|
+
* exact physical source paths and does not import application modules.
|
|
5
|
+
*/
|
|
6
|
+
import type { AstPrefilterCandidate, AstSourceModule } from "@relkit/compiler";
|
|
7
|
+
import type { DiscoveredArtifact, DiscoveredService } from "./project-discovery-types.js";
|
|
8
|
+
/** One statically recognized descriptor factory and its source provenance. */
|
|
9
|
+
export interface FactoryContext {
|
|
10
|
+
readonly modules: readonly AstSourceModule[];
|
|
11
|
+
readonly candidate: AstPrefilterCandidate;
|
|
12
|
+
readonly factory: AstPrefilterCandidate["facts"]["factoryBindings"][number];
|
|
13
|
+
readonly source: string;
|
|
14
|
+
readonly binding: string;
|
|
15
|
+
readonly domain?: string;
|
|
16
|
+
}
|
|
17
|
+
/** Static service and artifact records used by add planning. */
|
|
18
|
+
export interface DiscoveredCollections {
|
|
19
|
+
readonly services: readonly DiscoveredService[];
|
|
20
|
+
readonly artifacts: readonly DiscoveredArtifact[];
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=project-discovery-artifacts.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-discovery-artifacts.types.d.ts","sourceRoot":"","sources":["../src/project-discovery-artifacts.types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAE1F,8EAA8E;AAC9E,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,gEAAgE;AAChE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACnD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-discovery-artifacts.types.js","sourceRoot":"","sources":["../src/project-discovery-artifacts.types.ts"],"names":[],"mappings":""}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
+
import { type AstSourceModule } from "@relkit/compiler";
|
|
1
2
|
import type { ProjectDiscovery } from "./project-discovery-types.js";
|
|
2
3
|
/**
|
|
3
|
-
* Converts
|
|
4
|
-
* @param root - Absolute
|
|
5
|
-
* @param appSource -
|
|
6
|
-
* @param modules -
|
|
7
|
-
* @returns
|
|
4
|
+
* Converts authored syntax into layout-aware scaffold discovery records.
|
|
5
|
+
* @param root - Absolute application root.
|
|
6
|
+
* @param appSource - Unevaluated configuration source.
|
|
7
|
+
* @param modules - Complete sorted authored TypeScript source collection.
|
|
8
|
+
* @returns Immutable service, artifact, provider and layout interpretation.
|
|
9
|
+
* @throws AddScaffoldError when mixed/invalid service roots make mutation unsafe.
|
|
8
10
|
*/
|
|
9
|
-
export declare function discoveryFacts(root: string, appSource: string, modules: readonly
|
|
10
|
-
readonly fileName: string;
|
|
11
|
-
readonly text: string;
|
|
12
|
-
}[]): ProjectDiscovery;
|
|
11
|
+
export declare function discoveryFacts(root: string, appSource: string, modules: readonly AstSourceModule[]): ProjectDiscovery;
|
|
13
12
|
//# sourceMappingURL=project-discovery-facts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-discovery-facts.d.ts","sourceRoot":"","sources":["../src/project-discovery-facts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"project-discovery-facts.d.ts","sourceRoot":"","sources":["../src/project-discovery-facts.ts"],"names":[],"mappings":"AAMA,OAAO,EAA6B,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAKrE;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,SAAS,eAAe,EAAE,GAClC,gBAAgB,CA0BlB"}
|