swallowkit 1.0.0-beta.5 → 1.0.0-beta.50
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/LICENSE +21 -21
- package/README.ja.md +153 -242
- package/README.md +153 -243
- package/dist/__tests__/fixtures.d.ts +22 -0
- package/dist/__tests__/fixtures.d.ts.map +1 -0
- package/dist/__tests__/fixtures.js +146 -0
- package/dist/__tests__/fixtures.js.map +1 -0
- package/dist/cli/commands/add-auth.d.ts +13 -0
- package/dist/cli/commands/add-auth.d.ts.map +1 -0
- package/dist/cli/commands/add-auth.js +759 -0
- package/dist/cli/commands/add-auth.js.map +1 -0
- package/dist/cli/commands/add-connector.d.ts +20 -0
- package/dist/cli/commands/add-connector.d.ts.map +1 -0
- package/dist/cli/commands/add-connector.js +163 -0
- package/dist/cli/commands/add-connector.js.map +1 -0
- package/dist/cli/commands/create-model.d.ts +1 -4
- package/dist/cli/commands/create-model.d.ts.map +1 -1
- package/dist/cli/commands/create-model.js +19 -81
- package/dist/cli/commands/create-model.js.map +1 -1
- package/dist/cli/commands/dev-seeds.d.ts +57 -0
- package/dist/cli/commands/dev-seeds.d.ts.map +1 -0
- package/dist/cli/commands/dev-seeds.js +470 -0
- package/dist/cli/commands/dev-seeds.js.map +1 -0
- package/dist/cli/commands/dev.d.ts +37 -0
- package/dist/cli/commands/dev.d.ts.map +1 -1
- package/dist/cli/commands/dev.js +720 -156
- package/dist/cli/commands/dev.js.map +1 -1
- package/dist/cli/commands/index.d.ts +1 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +3 -1
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts +67 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +3080 -1771
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/scaffold.d.ts +13 -0
- package/dist/cli/commands/scaffold.d.ts.map +1 -1
- package/dist/cli/commands/scaffold.js +513 -129
- package/dist/cli/commands/scaffold.js.map +1 -1
- package/dist/cli/index.d.ts +5 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +206 -55
- package/dist/cli/index.js.map +1 -1
- package/dist/core/config.d.ts +14 -3
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +172 -5
- package/dist/core/config.js.map +1 -1
- package/dist/core/mock/connector-mock-server.d.ts +101 -0
- package/dist/core/mock/connector-mock-server.d.ts.map +1 -0
- package/dist/core/mock/connector-mock-server.js +480 -0
- package/dist/core/mock/connector-mock-server.js.map +1 -0
- package/dist/core/mock/zod-mock-generator.d.ts +14 -0
- package/dist/core/mock/zod-mock-generator.d.ts.map +1 -0
- package/dist/core/mock/zod-mock-generator.js +163 -0
- package/dist/core/mock/zod-mock-generator.js.map +1 -0
- package/dist/core/operations/create-model.d.ts +15 -0
- package/dist/core/operations/create-model.d.ts.map +1 -0
- package/dist/core/operations/create-model.js +171 -0
- package/dist/core/operations/create-model.js.map +1 -0
- package/dist/core/operations/runtime.d.ts +32 -0
- package/dist/core/operations/runtime.d.ts.map +1 -0
- package/dist/core/operations/runtime.js +225 -0
- package/dist/core/operations/runtime.js.map +1 -0
- package/dist/core/operations/scaffold-machine.d.ts +16 -0
- package/dist/core/operations/scaffold-machine.d.ts.map +1 -0
- package/dist/core/operations/scaffold-machine.js +63 -0
- package/dist/core/operations/scaffold-machine.js.map +1 -0
- package/dist/core/project/manifest.d.ts +92 -0
- package/dist/core/project/manifest.d.ts.map +1 -0
- package/dist/core/project/manifest.js +321 -0
- package/dist/core/project/manifest.js.map +1 -0
- package/dist/core/project/validation.d.ts +20 -0
- package/dist/core/project/validation.d.ts.map +1 -0
- package/dist/core/project/validation.js +226 -0
- package/dist/core/project/validation.js.map +1 -0
- package/dist/core/scaffold/auth-generator.d.ts +63 -0
- package/dist/core/scaffold/auth-generator.d.ts.map +1 -0
- package/dist/core/scaffold/auth-generator.js +1714 -0
- package/dist/core/scaffold/auth-generator.js.map +1 -0
- package/dist/core/scaffold/connector-functions-generator.d.ts +41 -0
- package/dist/core/scaffold/connector-functions-generator.d.ts.map +1 -0
- package/dist/core/scaffold/connector-functions-generator.js +1029 -0
- package/dist/core/scaffold/connector-functions-generator.js.map +1 -0
- package/dist/core/scaffold/functions-generator.d.ts +7 -1
- package/dist/core/scaffold/functions-generator.d.ts.map +1 -1
- package/dist/core/scaffold/functions-generator.js +922 -220
- package/dist/core/scaffold/functions-generator.js.map +1 -1
- package/dist/core/scaffold/model-parser.d.ts +20 -1
- package/dist/core/scaffold/model-parser.d.ts.map +1 -1
- package/dist/core/scaffold/model-parser.js +333 -139
- package/dist/core/scaffold/model-parser.js.map +1 -1
- package/dist/core/scaffold/native-schema-generator.d.ts +13 -0
- package/dist/core/scaffold/native-schema-generator.d.ts.map +1 -0
- package/dist/core/scaffold/native-schema-generator.js +696 -0
- package/dist/core/scaffold/native-schema-generator.js.map +1 -0
- package/dist/core/scaffold/nextjs-generator.d.ts +8 -0
- package/dist/core/scaffold/nextjs-generator.d.ts.map +1 -1
- package/dist/core/scaffold/nextjs-generator.js +326 -182
- package/dist/core/scaffold/nextjs-generator.js.map +1 -1
- package/dist/core/scaffold/openapi-generator.d.ts +3 -0
- package/dist/core/scaffold/openapi-generator.d.ts.map +1 -0
- package/dist/core/scaffold/openapi-generator.js +190 -0
- package/dist/core/scaffold/openapi-generator.js.map +1 -0
- package/dist/core/scaffold/ui-generator.d.ts +13 -4
- package/dist/core/scaffold/ui-generator.d.ts.map +1 -1
- package/dist/core/scaffold/ui-generator.js +772 -663
- package/dist/core/scaffold/ui-generator.js.map +1 -1
- package/dist/database/base-model.d.ts +3 -3
- package/dist/database/base-model.js +3 -3
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/machine/contracts.d.ts +16 -0
- package/dist/machine/contracts.d.ts.map +1 -0
- package/dist/machine/contracts.js +3 -0
- package/dist/machine/contracts.js.map +1 -0
- package/dist/machine/errors.d.ts +11 -0
- package/dist/machine/errors.d.ts.map +1 -0
- package/dist/machine/errors.js +34 -0
- package/dist/machine/errors.js.map +1 -0
- package/dist/machine/index.d.ts +3 -0
- package/dist/machine/index.d.ts.map +1 -0
- package/dist/machine/index.js +156 -0
- package/dist/machine/index.js.map +1 -0
- package/dist/mcp/index.d.ts +25 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +202 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/types/index.d.ts +95 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/package-manager.d.ts +5 -2
- package/dist/utils/package-manager.d.ts.map +1 -1
- package/dist/utils/package-manager.js +34 -13
- package/dist/utils/package-manager.js.map +1 -1
- package/dist/utils/python-uv.d.ts +21 -0
- package/dist/utils/python-uv.d.ts.map +1 -0
- package/dist/utils/python-uv.js +111 -0
- package/dist/utils/python-uv.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +49 -0
- package/dist/version.js.map +1 -0
- package/package.json +84 -74
- package/src/__tests__/__snapshots__/functions-generator.test.ts.snap +1139 -0
- package/src/__tests__/__snapshots__/nextjs-generator.test.ts.snap +206 -0
- package/src/__tests__/__snapshots__/ui-generator.test.ts.snap +532 -0
- package/src/__tests__/auth.test.ts +761 -0
- package/src/__tests__/config.test.ts +295 -0
- package/src/__tests__/connector-functions-generator.test.ts +288 -0
- package/src/__tests__/connector-mock-server.test.ts +439 -0
- package/src/__tests__/connector-model-bff.test.ts +162 -0
- package/src/__tests__/dev-seeds.test.ts +173 -0
- package/src/__tests__/dev.test.ts +287 -0
- package/src/__tests__/fixtures.ts +144 -0
- package/src/__tests__/functions-generator.test.ts +237 -0
- package/src/__tests__/init.test.ts +327 -0
- package/src/__tests__/jest-globals.d.ts +8 -0
- package/src/__tests__/machine.test.ts +356 -0
- package/src/__tests__/mcp.test.ts +145 -0
- package/src/__tests__/model-parser.test.ts +52 -0
- package/src/__tests__/multi-auth.test.ts +133 -0
- package/src/__tests__/nextjs-generator.test.ts +105 -0
- package/src/__tests__/openapi-generator.test.ts +43 -0
- package/src/__tests__/package-manager.test.ts +227 -0
- package/src/__tests__/python-uv.test.ts +48 -0
- package/src/__tests__/scaffold.test.ts +191 -0
- package/src/__tests__/string-utils.test.ts +75 -0
- package/src/__tests__/tsconfig.json +15 -0
- package/src/__tests__/ui-generator.test.ts +144 -0
- package/src/__tests__/zod-mock-generator.test.ts +132 -0
- package/src/cli/commands/add-auth.ts +815 -0
- package/src/cli/commands/add-connector.ts +158 -0
- package/src/cli/commands/create-model.ts +62 -0
- package/src/cli/commands/dev-seeds.ts +614 -0
- package/src/cli/commands/dev.ts +1234 -0
- package/src/cli/commands/index.ts +9 -0
- package/src/cli/commands/init.ts +3902 -0
- package/src/cli/commands/provision.ts +193 -0
- package/src/cli/commands/scaffold.ts +1067 -0
- package/src/cli/index.ts +202 -0
- package/src/core/config.ts +379 -0
- package/src/core/mock/connector-mock-server.ts +555 -0
- package/src/core/mock/zod-mock-generator.ts +205 -0
- package/src/core/operations/create-model.ts +174 -0
- package/src/core/operations/runtime.ts +235 -0
- package/src/core/operations/scaffold-machine.ts +91 -0
- package/src/core/project/manifest.ts +402 -0
- package/src/core/project/validation.ts +245 -0
- package/src/core/scaffold/auth-generator.ts +1760 -0
- package/src/core/scaffold/connector-functions-generator.ts +1133 -0
- package/src/core/scaffold/functions-generator.ts +972 -0
- package/src/core/scaffold/model-parser.ts +847 -0
- package/src/core/scaffold/native-schema-generator.ts +822 -0
- package/src/core/scaffold/nextjs-generator.ts +382 -0
- package/src/core/scaffold/openapi-generator.ts +212 -0
- package/src/core/scaffold/ui-generator.ts +1068 -0
- package/src/database/base-model.ts +184 -0
- package/src/database/client.ts +140 -0
- package/src/database/repository.ts +104 -0
- package/src/database/runtime-check.ts +25 -0
- package/src/index.ts +27 -0
- package/src/machine/contracts.ts +17 -0
- package/src/machine/errors.ts +34 -0
- package/src/machine/index.ts +173 -0
- package/src/mcp/index.ts +209 -0
- package/src/types/index.ts +165 -0
- package/src/utils/package-manager.ts +246 -0
- package/src/utils/python-uv.ts +96 -0
- package/src/version.ts +13 -0
- package/dist/cli/commands/build.d.ts +0 -6
- package/dist/cli/commands/build.d.ts.map +0 -1
- package/dist/cli/commands/build.js +0 -177
- package/dist/cli/commands/build.js.map +0 -1
- package/dist/cli/commands/deploy.d.ts +0 -3
- package/dist/cli/commands/deploy.d.ts.map +0 -1
- package/dist/cli/commands/deploy.js +0 -147
- package/dist/cli/commands/deploy.js.map +0 -1
- package/dist/cli/commands/setup.d.ts +0 -6
- package/dist/cli/commands/setup.d.ts.map +0 -1
- package/dist/cli/commands/setup.js +0 -254
- package/dist/cli/commands/setup.js.map +0 -1
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
36
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
exports.buildSwallowKitToolDefinitions = buildSwallowKitToolDefinitions;
|
|
38
|
+
exports.createSwallowKitMcpServer = createSwallowKitMcpServer;
|
|
39
|
+
exports.runMcpServer = runMcpServer;
|
|
40
|
+
const path = __importStar(require("path"));
|
|
41
|
+
const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
|
|
42
|
+
const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
|
|
43
|
+
const z = __importStar(require("zod/v4"));
|
|
44
|
+
const version_1 = require("../version");
|
|
45
|
+
// Keep this as a runtime dynamic import so CommonJS builds do not rewrite it to require().
|
|
46
|
+
const importModule = new Function("specifier", "return import(specifier);");
|
|
47
|
+
function resolveMachineCliEntrypoint() {
|
|
48
|
+
return path.resolve(__dirname, "..", "cli", "index.js");
|
|
49
|
+
}
|
|
50
|
+
async function defaultMachineCliRunner(args) {
|
|
51
|
+
const { execa } = await importModule("execa");
|
|
52
|
+
const result = await execa(process.execPath, [resolveMachineCliEntrypoint(), "machine", ...args], {
|
|
53
|
+
reject: false,
|
|
54
|
+
});
|
|
55
|
+
return {
|
|
56
|
+
stdout: result.stdout,
|
|
57
|
+
stderr: result.stderr,
|
|
58
|
+
exitCode: result.exitCode ?? 0,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
async function executeMachineCommand(args, runMachineCli) {
|
|
62
|
+
const result = await runMachineCli(args);
|
|
63
|
+
let parsed;
|
|
64
|
+
try {
|
|
65
|
+
parsed = JSON.parse(result.stdout);
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
throw new Error(result.stderr || result.stdout || "Machine CLI returned invalid JSON.");
|
|
69
|
+
}
|
|
70
|
+
if (!parsed.ok) {
|
|
71
|
+
throw new Error(parsed.error.message);
|
|
72
|
+
}
|
|
73
|
+
return parsed;
|
|
74
|
+
}
|
|
75
|
+
function jsonTextContent(value) {
|
|
76
|
+
return {
|
|
77
|
+
content: [
|
|
78
|
+
{
|
|
79
|
+
type: "text",
|
|
80
|
+
text: JSON.stringify(value, null, 2),
|
|
81
|
+
},
|
|
82
|
+
],
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
function withSwallowKitMetadata(data) {
|
|
86
|
+
const value = data && typeof data === "object" ? data : { data };
|
|
87
|
+
const metadata = value.metadata && typeof value.metadata === "object"
|
|
88
|
+
? value.metadata
|
|
89
|
+
: {};
|
|
90
|
+
return {
|
|
91
|
+
...value,
|
|
92
|
+
metadata: {
|
|
93
|
+
...metadata,
|
|
94
|
+
swallowkitVersion: (0, version_1.getSwallowKitVersion)(),
|
|
95
|
+
},
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
function buildSwallowKitToolDefinitions(runMachineCli = defaultMachineCliRunner) {
|
|
99
|
+
return [
|
|
100
|
+
{
|
|
101
|
+
name: "swallowkit_inspect_project",
|
|
102
|
+
description: "Return framework-owned SwallowKit project metadata.",
|
|
103
|
+
inputSchema: z.object({}),
|
|
104
|
+
handler: async () => {
|
|
105
|
+
const response = await executeMachineCommand(["inspect", "project"], runMachineCli);
|
|
106
|
+
return jsonTextContent(withSwallowKitMetadata(response.data));
|
|
107
|
+
},
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
name: "swallowkit_inspect_entities",
|
|
111
|
+
description: "Return SwallowKit entities, schema metadata, and connector/auth annotations.",
|
|
112
|
+
inputSchema: z.object({}),
|
|
113
|
+
handler: async () => {
|
|
114
|
+
const response = await executeMachineCommand(["inspect", "entities"], runMachineCli);
|
|
115
|
+
return jsonTextContent(response.data);
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: "swallowkit_inspect_routes",
|
|
120
|
+
description: "Return BFF and Functions route metadata understood by SwallowKit.",
|
|
121
|
+
inputSchema: z.object({}),
|
|
122
|
+
handler: async () => {
|
|
123
|
+
const response = await executeMachineCommand(["inspect", "routes"], runMachineCli);
|
|
124
|
+
return jsonTextContent(response.data);
|
|
125
|
+
},
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
name: "swallowkit_validate_project",
|
|
129
|
+
description: "Validate project metadata, generated artifacts, and framework conventions.",
|
|
130
|
+
inputSchema: z.object({}),
|
|
131
|
+
handler: async () => {
|
|
132
|
+
const response = await executeMachineCommand(["validate", "project"], runMachineCli);
|
|
133
|
+
return jsonTextContent(withSwallowKitMetadata(response.data));
|
|
134
|
+
},
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
name: "swallowkit_generate_model",
|
|
138
|
+
description: "Generate SwallowKit model templates through the official generator.",
|
|
139
|
+
inputSchema: z.object({
|
|
140
|
+
names: z.array(z.string()).min(1),
|
|
141
|
+
modelsDir: z.string().optional(),
|
|
142
|
+
connector: z.string().optional(),
|
|
143
|
+
overwrite: z.enum(["always", "never"]).optional(),
|
|
144
|
+
}),
|
|
145
|
+
handler: async ({ names, modelsDir, connector, overwrite }) => {
|
|
146
|
+
const response = await executeMachineCommand(["generate", "model", ...names, ...(modelsDir ? ["--models-dir", modelsDir] : []), ...(connector ? ["--connector", connector] : []), "--overwrite", overwrite || "never"], runMachineCli);
|
|
147
|
+
return jsonTextContent(response.data);
|
|
148
|
+
},
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
name: "swallowkit_scaffold_model",
|
|
152
|
+
description: "Generate SwallowKit scaffold artifacts through the official generator.",
|
|
153
|
+
inputSchema: z.object({
|
|
154
|
+
model: z.string(),
|
|
155
|
+
functionsDir: z.string().optional(),
|
|
156
|
+
apiDir: z.string().optional(),
|
|
157
|
+
apiOnly: z.boolean().optional(),
|
|
158
|
+
}),
|
|
159
|
+
handler: async ({ model, functionsDir, apiDir, apiOnly }) => {
|
|
160
|
+
const args = ["generate", "scaffold", model];
|
|
161
|
+
if (functionsDir) {
|
|
162
|
+
args.push("--functions-dir", functionsDir);
|
|
163
|
+
}
|
|
164
|
+
if (apiDir) {
|
|
165
|
+
args.push("--api-dir", apiDir);
|
|
166
|
+
}
|
|
167
|
+
if (apiOnly) {
|
|
168
|
+
args.push("--api-only");
|
|
169
|
+
}
|
|
170
|
+
const response = await executeMachineCommand(args, runMachineCli);
|
|
171
|
+
return jsonTextContent(response.data);
|
|
172
|
+
},
|
|
173
|
+
},
|
|
174
|
+
];
|
|
175
|
+
}
|
|
176
|
+
function createSwallowKitMcpServer(runMachineCli = defaultMachineCliRunner) {
|
|
177
|
+
const version = (0, version_1.getSwallowKitVersion)();
|
|
178
|
+
const server = new mcp_js_1.McpServer({
|
|
179
|
+
name: "swallowkit-mcp",
|
|
180
|
+
version,
|
|
181
|
+
});
|
|
182
|
+
for (const tool of buildSwallowKitToolDefinitions(runMachineCli)) {
|
|
183
|
+
server.registerTool(tool.name, {
|
|
184
|
+
description: tool.description,
|
|
185
|
+
inputSchema: tool.inputSchema,
|
|
186
|
+
}, tool.handler);
|
|
187
|
+
}
|
|
188
|
+
return server;
|
|
189
|
+
}
|
|
190
|
+
async function runMcpServer() {
|
|
191
|
+
console.error(`[swallowkit-mcp] version: ${(0, version_1.getSwallowKitVersion)()}`);
|
|
192
|
+
const server = createSwallowKitMcpServer();
|
|
193
|
+
const transport = new stdio_js_1.StdioServerTransport();
|
|
194
|
+
await server.connect(transport);
|
|
195
|
+
}
|
|
196
|
+
if (require.main === module) {
|
|
197
|
+
void runMcpServer().catch((error) => {
|
|
198
|
+
console.error(error);
|
|
199
|
+
process.exitCode = 1;
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* SwallowKit の基本型定義
|
|
3
3
|
*/
|
|
4
4
|
export type ServerFnMode = "auto" | "force-server" | "force-client";
|
|
5
|
+
export type BackendLanguage = "typescript" | "csharp" | "python";
|
|
5
6
|
export interface UseServerFnOptions {
|
|
6
7
|
mode?: ServerFnMode;
|
|
7
8
|
refetchOnMount?: boolean;
|
|
@@ -16,11 +17,103 @@ export interface UseServerFnResult<TResult> {
|
|
|
16
17
|
error: any;
|
|
17
18
|
refetch: () => void;
|
|
18
19
|
}
|
|
20
|
+
export type ConnectorOperation = "getAll" | "getById" | "create" | "update" | "delete";
|
|
21
|
+
export interface RdbConnectorConfig {
|
|
22
|
+
type: "rdb";
|
|
23
|
+
provider: "mysql" | "postgres" | "sqlserver";
|
|
24
|
+
connectionEnvVar: string;
|
|
25
|
+
}
|
|
26
|
+
export interface ApiConnectorAuth {
|
|
27
|
+
type: "apiKey" | "bearer" | "oauth2";
|
|
28
|
+
envVar: string;
|
|
29
|
+
placement?: "query" | "header";
|
|
30
|
+
paramName?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface ApiConnectorConfig {
|
|
33
|
+
type: "api";
|
|
34
|
+
baseUrlEnvVar: string;
|
|
35
|
+
auth?: ApiConnectorAuth;
|
|
36
|
+
}
|
|
37
|
+
export type ConnectorDefinition = RdbConnectorConfig | ApiConnectorConfig;
|
|
38
|
+
export interface RdbModelConnectorConfig {
|
|
39
|
+
connector: string;
|
|
40
|
+
operations: readonly ConnectorOperation[];
|
|
41
|
+
table: string;
|
|
42
|
+
idColumn?: string;
|
|
43
|
+
}
|
|
44
|
+
export interface ApiModelConnectorConfig {
|
|
45
|
+
connector: string;
|
|
46
|
+
operations: readonly ConnectorOperation[];
|
|
47
|
+
endpoints?: Partial<Record<ConnectorOperation, string>>;
|
|
48
|
+
}
|
|
49
|
+
export type ModelConnectorConfig = RdbModelConnectorConfig | ApiModelConnectorConfig;
|
|
50
|
+
export type AuthProvider = "custom-jwt" | "swa" | "external-token" | "swa-custom" | "none";
|
|
51
|
+
export interface CustomJwtConfig {
|
|
52
|
+
userConnector: string;
|
|
53
|
+
userTable: string;
|
|
54
|
+
loginIdColumn: string;
|
|
55
|
+
passwordHashColumn: string;
|
|
56
|
+
rolesColumn: string;
|
|
57
|
+
jwtSecretEnv?: string;
|
|
58
|
+
tokenExpiry?: string;
|
|
59
|
+
}
|
|
60
|
+
export interface SwaAuthConfig {
|
|
61
|
+
allowedProviders?: string[];
|
|
62
|
+
roleSource?: "swa-roles" | "connector";
|
|
63
|
+
roleConnector?: string;
|
|
64
|
+
}
|
|
65
|
+
export interface AuthorizationConfig {
|
|
66
|
+
defaultPolicy?: "authenticated" | "anonymous" | "public" | string;
|
|
67
|
+
policies?: Record<string, AuthorizationPolicy>;
|
|
68
|
+
}
|
|
69
|
+
export interface AuthorizationPolicy {
|
|
70
|
+
schemes: string[];
|
|
71
|
+
roles?: string[];
|
|
72
|
+
}
|
|
73
|
+
export interface AuthSchemeConfig {
|
|
74
|
+
provider: AuthProvider;
|
|
75
|
+
customJwt?: CustomJwtConfig;
|
|
76
|
+
swa?: SwaAuthConfig;
|
|
77
|
+
}
|
|
78
|
+
export interface AuthConfig {
|
|
79
|
+
provider?: AuthProvider;
|
|
80
|
+
schemes?: Record<string, AuthSchemeConfig>;
|
|
81
|
+
customJwt?: CustomJwtConfig;
|
|
82
|
+
swa?: SwaAuthConfig;
|
|
83
|
+
authorization?: AuthorizationConfig;
|
|
84
|
+
}
|
|
85
|
+
export interface ModelAuthPolicy {
|
|
86
|
+
roles?: string[];
|
|
87
|
+
read?: string[] | string;
|
|
88
|
+
write?: string[] | string;
|
|
89
|
+
policy?: string;
|
|
90
|
+
}
|
|
91
|
+
export interface NormalizedAuthConfig extends Omit<AuthConfig, "schemes" | "authorization"> {
|
|
92
|
+
schemes: Record<string, AuthSchemeConfig>;
|
|
93
|
+
authorization: AuthorizationConfig & {
|
|
94
|
+
defaultPolicy: string;
|
|
95
|
+
policies: Record<string, AuthorizationPolicy>;
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
export interface AuthPrincipal {
|
|
99
|
+
subject: string;
|
|
100
|
+
scheme: string;
|
|
101
|
+
issuer: string;
|
|
102
|
+
roles: string[];
|
|
103
|
+
claims: Record<string, unknown>;
|
|
104
|
+
/** @deprecated Use subject. */
|
|
105
|
+
userId?: string;
|
|
106
|
+
/** @deprecated Read provider data from claims. */
|
|
107
|
+
userDetails?: string;
|
|
108
|
+
}
|
|
19
109
|
export interface SwallowKitConfig {
|
|
20
110
|
database?: {
|
|
21
111
|
connectionString?: string;
|
|
22
112
|
databaseName?: string;
|
|
23
113
|
};
|
|
114
|
+
backend?: {
|
|
115
|
+
language?: BackendLanguage;
|
|
116
|
+
};
|
|
24
117
|
api?: {
|
|
25
118
|
endpoint?: string;
|
|
26
119
|
cors?: {
|
|
@@ -28,5 +121,7 @@ export interface SwallowKitConfig {
|
|
|
28
121
|
credentials?: boolean;
|
|
29
122
|
};
|
|
30
123
|
};
|
|
124
|
+
connectors?: Record<string, ConnectorDefinition>;
|
|
125
|
+
auth?: AuthConfig;
|
|
31
126
|
}
|
|
32
127
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,cAAc,GAAG,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,cAAc,GAAG,cAAc,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAGjE,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAGD,MAAM,WAAW,iBAAiB,CAAC,OAAO;IACxC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,GAAG,CAAC;IACX,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAGD,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAGvF,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,EAAE,OAAO,GAAG,UAAU,GAAG,WAAW,CAAC;IAC7C,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAGD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,KAAK,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,gBAAgB,CAAC;CACzB;AAGD,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AAG1E,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAGD,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC;CACzD;AAGD,MAAM,MAAM,oBAAoB,GAAG,uBAAuB,GAAG,uBAAuB,CAAC;AAGrF,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,KAAK,GAAG,gBAAgB,GAAG,YAAY,GAAG,MAAM,CAAC;AAG3F,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAGD,MAAM,WAAW,aAAa;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAGD,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,EAAE,eAAe,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,GAAG,CAAC,EAAE,aAAa,CAAC;CACrB;AAGD,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC3C,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;AAGD,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,UAAU,EAAE,SAAS,GAAG,eAAe,CAAC;IACzF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC1C,aAAa,EAAE,mBAAmB,GAAG;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;KAAE,CAAC;CAC/G;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,+BAA+B;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAGD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE;QACT,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,eAAe,CAAC;KAC5B,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE;YACL,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;YAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;SACvB,CAAC;KACH,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACjD,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { BackendLanguage } from "../types";
|
|
1
2
|
/**
|
|
2
3
|
* Supported package managers
|
|
3
4
|
*/
|
|
@@ -48,7 +49,7 @@ export declare function getCommands(pm: PackageManager): PackageManagerCommands;
|
|
|
48
49
|
* This is intentionally independent of `npm_config_user_agent` so that
|
|
49
50
|
* `npx swallowkit init` still creates a pnpm project when pnpm is available.
|
|
50
51
|
*/
|
|
51
|
-
export declare function detectFromUserAgent(): PackageManager;
|
|
52
|
+
export declare function detectFromUserAgent(pnpmIsInstalled?: () => boolean): PackageManager;
|
|
52
53
|
/**
|
|
53
54
|
* Detect the package manager used in an existing project directory
|
|
54
55
|
* by checking for lockfiles.
|
|
@@ -89,6 +90,8 @@ export declare function getWorkspaceConfig(pm: PackageManager, workspaces: strin
|
|
|
89
90
|
* CI/CD setup step for GitHub Actions
|
|
90
91
|
*/
|
|
91
92
|
export declare function getCiSetupStep(pm: PackageManager): string;
|
|
93
|
+
export declare function getCiInstallCommand(ciPm: PackageManager, projectPm?: PackageManager): string;
|
|
94
|
+
export declare function getSwaAppBuildCommand(ciPm: PackageManager, projectPm?: PackageManager): string;
|
|
92
95
|
/**
|
|
93
96
|
* CI/CD setup steps for Azure Pipelines
|
|
94
97
|
*/
|
|
@@ -104,5 +107,5 @@ export declare function getFunctionsPrestart(pm: PackageManager): string;
|
|
|
104
107
|
/**
|
|
105
108
|
* Functions:start script for root package.json
|
|
106
109
|
*/
|
|
107
|
-
export declare function getFunctionsStartScript(pm: PackageManager): string;
|
|
110
|
+
export declare function getFunctionsStartScript(pm: PackageManager, backendLanguage?: BackendLanguage): string;
|
|
108
111
|
//# sourceMappingURL=package-manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../src/utils/package-manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../src/utils/package-manager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,uCAAuC;IACvC,IAAI,EAAE,cAAc,CAAC;IACrB,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,EAAE,EAAE,MAAM,CAAC;IACX,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IACZ,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,sFAAsF;IACtF,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACzC,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,qGAAqG;IACrG,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,cAAc,GAAG,sBAAsB,CAmCtE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,eAAe,GAAE,MAAM,OAAyB,GAAG,cAAc,CAEpG;AAcD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,cAAc,CAYrE;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACvB,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,MAAM,EAAE,GACb;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAEjC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE;IAGrE,oCAAoC;;;;;;;;;;;;EAazC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM,CASzD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,GAAE,cAAqB,GAAG,MAAM,CAMlG;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,GAAE,cAAqB,GAAG,MAAM,CAKpG;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM,CASjE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM,CAOzD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM,CAK/D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,cAAc,EAClB,eAAe,GAAE,eAA8B,GAC9C,MAAM,CASR"}
|
|
@@ -39,6 +39,8 @@ exports.detectFromProject = detectFromProject;
|
|
|
39
39
|
exports.spawnArgs = spawnArgs;
|
|
40
40
|
exports.getWorkspaceConfig = getWorkspaceConfig;
|
|
41
41
|
exports.getCiSetupStep = getCiSetupStep;
|
|
42
|
+
exports.getCiInstallCommand = getCiInstallCommand;
|
|
43
|
+
exports.getSwaAppBuildCommand = getSwaAppBuildCommand;
|
|
42
44
|
exports.getAzurePipelinesSetup = getAzurePipelinesSetup;
|
|
43
45
|
exports.getBuildScript = getBuildScript;
|
|
44
46
|
exports.getFunctionsPrestart = getFunctionsPrestart;
|
|
@@ -95,8 +97,8 @@ function getCommands(pm) {
|
|
|
95
97
|
* This is intentionally independent of `npm_config_user_agent` so that
|
|
96
98
|
* `npx swallowkit init` still creates a pnpm project when pnpm is available.
|
|
97
99
|
*/
|
|
98
|
-
function detectFromUserAgent() {
|
|
99
|
-
return
|
|
100
|
+
function detectFromUserAgent(pnpmIsInstalled = isPnpmInstalled) {
|
|
101
|
+
return pnpmIsInstalled() ? "pnpm" : "npm";
|
|
100
102
|
}
|
|
101
103
|
/**
|
|
102
104
|
* Check whether pnpm is available on the system PATH.
|
|
@@ -162,20 +164,35 @@ function getWorkspaceConfig(pm, workspaces) {
|
|
|
162
164
|
*/
|
|
163
165
|
function getCiSetupStep(pm) {
|
|
164
166
|
if (pm === "pnpm") {
|
|
165
|
-
return ` - name: Setup pnpm
|
|
166
|
-
uses: pnpm/action-setup@v4
|
|
167
|
+
return ` - name: Setup pnpm
|
|
168
|
+
uses: pnpm/action-setup@v4
|
|
169
|
+
with:
|
|
170
|
+
version: latest`;
|
|
167
171
|
}
|
|
168
172
|
// npm: no extra setup needed (comes with Node.js)
|
|
169
173
|
return "";
|
|
170
174
|
}
|
|
175
|
+
function getCiInstallCommand(ciPm, projectPm = ciPm) {
|
|
176
|
+
void projectPm; // Reserved for package-manager-specific CI bridging.
|
|
177
|
+
if (ciPm === "pnpm") {
|
|
178
|
+
return getCommands(ciPm).ci;
|
|
179
|
+
}
|
|
180
|
+
return getCommands(ciPm).ci;
|
|
181
|
+
}
|
|
182
|
+
function getSwaAppBuildCommand(ciPm, projectPm = ciPm) {
|
|
183
|
+
if (ciPm === "pnpm") {
|
|
184
|
+
return "pnpm install --frozen-lockfile && pnpm run build";
|
|
185
|
+
}
|
|
186
|
+
return `${getCiInstallCommand(ciPm, projectPm)} && npm run build`;
|
|
187
|
+
}
|
|
171
188
|
/**
|
|
172
189
|
* CI/CD setup steps for Azure Pipelines
|
|
173
190
|
*/
|
|
174
191
|
function getAzurePipelinesSetup(pm) {
|
|
175
192
|
if (pm === "pnpm") {
|
|
176
|
-
return ` - script: |
|
|
177
|
-
corepack enable
|
|
178
|
-
corepack prepare pnpm@latest --activate
|
|
193
|
+
return ` - script: |
|
|
194
|
+
corepack enable
|
|
195
|
+
corepack prepare pnpm@latest --activate
|
|
179
196
|
displayName: 'Setup pnpm'`;
|
|
180
197
|
}
|
|
181
198
|
// npm: no extra step needed
|
|
@@ -185,10 +202,11 @@ function getAzurePipelinesSetup(pm) {
|
|
|
185
202
|
* Build script for generated package.json (depends on workspace command syntax)
|
|
186
203
|
*/
|
|
187
204
|
function getBuildScript(pm) {
|
|
205
|
+
const copyStandaloneAssets = `node -e "const fs=require('fs');fs.mkdirSync('.next/standalone/.next',{recursive:true});if(fs.existsSync('.next/static'))fs.cpSync('.next/static','.next/standalone/.next/static',{recursive:true});if(fs.existsSync('public'))fs.cpSync('public','.next/standalone/public',{recursive:true});"`;
|
|
188
206
|
if (pm === "pnpm") {
|
|
189
|
-
return
|
|
207
|
+
return `pnpm run --filter shared build && next build --webpack && ${copyStandaloneAssets}`;
|
|
190
208
|
}
|
|
191
|
-
return
|
|
209
|
+
return `npm run --workspace=shared build && next build --webpack && ${copyStandaloneAssets}`;
|
|
192
210
|
}
|
|
193
211
|
/**
|
|
194
212
|
* Functions prestart script
|
|
@@ -202,10 +220,13 @@ function getFunctionsPrestart(pm) {
|
|
|
202
220
|
/**
|
|
203
221
|
* Functions:start script for root package.json
|
|
204
222
|
*/
|
|
205
|
-
function getFunctionsStartScript(pm) {
|
|
206
|
-
if (
|
|
207
|
-
|
|
223
|
+
function getFunctionsStartScript(pm, backendLanguage = "typescript") {
|
|
224
|
+
if (backendLanguage === "typescript") {
|
|
225
|
+
if (pm === "pnpm") {
|
|
226
|
+
return "cd functions && pnpm start";
|
|
227
|
+
}
|
|
228
|
+
return "cd functions && npm start";
|
|
208
229
|
}
|
|
209
|
-
return "cd functions &&
|
|
230
|
+
return "cd functions && func start";
|
|
210
231
|
}
|
|
211
232
|
//# sourceMappingURL=package-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../src/utils/package-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../src/utils/package-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare const SWALLOWKIT_PYTHON_VERSION = "3.11";
|
|
2
|
+
export interface ProjectLocalUvPaths {
|
|
3
|
+
stateDir: string;
|
|
4
|
+
cacheDir: string;
|
|
5
|
+
pythonInstallDir: string;
|
|
6
|
+
toolDir: string;
|
|
7
|
+
toolBinDir: string;
|
|
8
|
+
localUvInstallDir: string;
|
|
9
|
+
localUvExecutable: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function getPythonProjectRoot(functionsDir: string): string;
|
|
12
|
+
export declare function getProjectLocalUvPaths(projectRoot: string): ProjectLocalUvPaths;
|
|
13
|
+
export declare function buildProjectLocalUvEnv(baseEnv: NodeJS.ProcessEnv, projectRoot: string): NodeJS.ProcessEnv;
|
|
14
|
+
export declare function buildProjectLocalUvInstallerEnv(baseEnv: NodeJS.ProcessEnv, projectRoot: string): NodeJS.ProcessEnv;
|
|
15
|
+
export declare function getProjectLocalUvInstallerCommand(): {
|
|
16
|
+
command: string;
|
|
17
|
+
args: string[];
|
|
18
|
+
};
|
|
19
|
+
export declare function buildUvVenvArgs(venvDir: string, pythonVersion?: string): string[];
|
|
20
|
+
export declare function buildUvPipInstallArgs(pythonExecutable: string, requirementsPath: string): string[];
|
|
21
|
+
//# sourceMappingURL=python-uv.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python-uv.d.ts","sourceRoot":"","sources":["../../src/utils/python-uv.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,yBAAyB,SAAS,CAAC;AAEhD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,mBAAmB,CAe/E;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,CAAC,UAAU,EAC1B,WAAW,EAAE,MAAM,GAClB,MAAM,CAAC,UAAU,CAgBnB;AAED,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,MAAM,CAAC,UAAU,EAC1B,WAAW,EAAE,MAAM,GAClB,MAAM,CAAC,UAAU,CAQnB;AAED,wBAAgB,iCAAiC,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAkBvF;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,SAA4B,GAAG,MAAM,EAAE,CAEpG;AAED,wBAAgB,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,EAAE,CAElG"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.SWALLOWKIT_PYTHON_VERSION = void 0;
|
|
37
|
+
exports.getPythonProjectRoot = getPythonProjectRoot;
|
|
38
|
+
exports.getProjectLocalUvPaths = getProjectLocalUvPaths;
|
|
39
|
+
exports.buildProjectLocalUvEnv = buildProjectLocalUvEnv;
|
|
40
|
+
exports.buildProjectLocalUvInstallerEnv = buildProjectLocalUvInstallerEnv;
|
|
41
|
+
exports.getProjectLocalUvInstallerCommand = getProjectLocalUvInstallerCommand;
|
|
42
|
+
exports.buildUvVenvArgs = buildUvVenvArgs;
|
|
43
|
+
exports.buildUvPipInstallArgs = buildUvPipInstallArgs;
|
|
44
|
+
const path = __importStar(require("path"));
|
|
45
|
+
exports.SWALLOWKIT_PYTHON_VERSION = "3.11";
|
|
46
|
+
function getPythonProjectRoot(functionsDir) {
|
|
47
|
+
return path.dirname(functionsDir);
|
|
48
|
+
}
|
|
49
|
+
function getProjectLocalUvPaths(projectRoot) {
|
|
50
|
+
const stateDir = path.join(projectRoot, ".uv");
|
|
51
|
+
const localUvInstallDir = path.join(stateDir, "bin");
|
|
52
|
+
return {
|
|
53
|
+
stateDir,
|
|
54
|
+
cacheDir: path.join(stateDir, "cache"),
|
|
55
|
+
pythonInstallDir: path.join(stateDir, "python"),
|
|
56
|
+
toolDir: path.join(stateDir, "tools"),
|
|
57
|
+
toolBinDir: path.join(stateDir, "tools", "bin"),
|
|
58
|
+
localUvInstallDir,
|
|
59
|
+
localUvExecutable: process.platform === "win32"
|
|
60
|
+
? path.join(localUvInstallDir, "uv.exe")
|
|
61
|
+
: path.join(localUvInstallDir, "uv"),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
function buildProjectLocalUvEnv(baseEnv, projectRoot) {
|
|
65
|
+
const uvPaths = getProjectLocalUvPaths(projectRoot);
|
|
66
|
+
const env = {
|
|
67
|
+
...baseEnv,
|
|
68
|
+
UV_CACHE_DIR: uvPaths.cacheDir,
|
|
69
|
+
UV_PYTHON_INSTALL_DIR: uvPaths.pythonInstallDir,
|
|
70
|
+
UV_TOOL_DIR: uvPaths.toolDir,
|
|
71
|
+
UV_TOOL_BIN_DIR: uvPaths.toolBinDir,
|
|
72
|
+
UV_PYTHON_PREFERENCE: "only-managed",
|
|
73
|
+
};
|
|
74
|
+
if (process.platform === "win32") {
|
|
75
|
+
env.UV_PYTHON_NO_REGISTRY = "true";
|
|
76
|
+
}
|
|
77
|
+
return env;
|
|
78
|
+
}
|
|
79
|
+
function buildProjectLocalUvInstallerEnv(baseEnv, projectRoot) {
|
|
80
|
+
const uvPaths = getProjectLocalUvPaths(projectRoot);
|
|
81
|
+
return {
|
|
82
|
+
...buildProjectLocalUvEnv(baseEnv, projectRoot),
|
|
83
|
+
UV_UNMANAGED_INSTALL: uvPaths.localUvInstallDir,
|
|
84
|
+
UV_NO_MODIFY_PATH: "1",
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
function getProjectLocalUvInstallerCommand() {
|
|
88
|
+
if (process.platform === "win32") {
|
|
89
|
+
return {
|
|
90
|
+
command: "powershell",
|
|
91
|
+
args: [
|
|
92
|
+
"-NoProfile",
|
|
93
|
+
"-ExecutionPolicy",
|
|
94
|
+
"Bypass",
|
|
95
|
+
"-Command",
|
|
96
|
+
"$ProgressPreference = 'SilentlyContinue'; irm https://astral.sh/uv/install.ps1 | iex",
|
|
97
|
+
],
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
return {
|
|
101
|
+
command: "sh",
|
|
102
|
+
args: ["-c", "curl -LsSf https://astral.sh/uv/install.sh | sh"],
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
function buildUvVenvArgs(venvDir, pythonVersion = exports.SWALLOWKIT_PYTHON_VERSION) {
|
|
106
|
+
return ["venv", venvDir, "--python", pythonVersion];
|
|
107
|
+
}
|
|
108
|
+
function buildUvPipInstallArgs(pythonExecutable, requirementsPath) {
|
|
109
|
+
return ["pip", "install", "--python", pythonExecutable, "-r", requirementsPath];
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=python-uv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python-uv.js","sourceRoot":"","sources":["../../src/utils/python-uv.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAGA,wBAAgB,oBAAoB,IAAI,MAAM,CAS7C"}
|