swallowkit 1.0.0-beta.13 → 1.0.0-beta.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.ja.md +2 -0
  2. package/README.md +2 -0
  3. package/dist/cli/commands/add-auth.d.ts +10 -0
  4. package/dist/cli/commands/add-auth.d.ts.map +1 -0
  5. package/dist/cli/commands/add-auth.js +365 -0
  6. package/dist/cli/commands/add-auth.js.map +1 -0
  7. package/dist/cli/commands/dev.js +34 -3
  8. package/dist/cli/commands/dev.js.map +1 -1
  9. package/dist/cli/commands/scaffold.d.ts.map +1 -1
  10. package/dist/cli/commands/scaffold.js +145 -10
  11. package/dist/cli/commands/scaffold.js.map +1 -1
  12. package/dist/cli/index.js +10 -0
  13. package/dist/cli/index.js.map +1 -1
  14. package/dist/core/config.d.ts +5 -1
  15. package/dist/core/config.d.ts.map +1 -1
  16. package/dist/core/config.js +12 -1
  17. package/dist/core/config.js.map +1 -1
  18. package/dist/core/mock/connector-mock-server.d.ts +34 -0
  19. package/dist/core/mock/connector-mock-server.d.ts.map +1 -1
  20. package/dist/core/mock/connector-mock-server.js +192 -0
  21. package/dist/core/mock/connector-mock-server.js.map +1 -1
  22. package/dist/core/scaffold/auth-generator.d.ts +38 -0
  23. package/dist/core/scaffold/auth-generator.d.ts.map +1 -0
  24. package/dist/core/scaffold/auth-generator.js +1246 -0
  25. package/dist/core/scaffold/auth-generator.js.map +1 -0
  26. package/dist/core/scaffold/connector-functions-generator.d.ts +3 -3
  27. package/dist/core/scaffold/connector-functions-generator.d.ts.map +1 -1
  28. package/dist/core/scaffold/connector-functions-generator.js +37 -18
  29. package/dist/core/scaffold/connector-functions-generator.js.map +1 -1
  30. package/dist/core/scaffold/functions-generator.d.ts +2 -1
  31. package/dist/core/scaffold/functions-generator.d.ts.map +1 -1
  32. package/dist/core/scaffold/functions-generator.js +21 -12
  33. package/dist/core/scaffold/functions-generator.js.map +1 -1
  34. package/dist/core/scaffold/model-parser.d.ts +7 -1
  35. package/dist/core/scaffold/model-parser.d.ts.map +1 -1
  36. package/dist/core/scaffold/model-parser.js +45 -0
  37. package/dist/core/scaffold/model-parser.js.map +1 -1
  38. package/dist/core/scaffold/ui-generator.d.ts +10 -4
  39. package/dist/core/scaffold/ui-generator.d.ts.map +1 -1
  40. package/dist/core/scaffold/ui-generator.js +120 -12
  41. package/dist/core/scaffold/ui-generator.js.map +1 -1
  42. package/dist/types/index.d.ts +30 -0
  43. package/dist/types/index.d.ts.map +1 -1
  44. package/package.json +4 -2
  45. package/src/__tests__/__snapshots__/ui-generator.test.ts.snap +9 -1
  46. package/src/__tests__/auth.test.ts +654 -0
  47. package/src/__tests__/connector-mock-server.test.ts +189 -2
  48. package/src/cli/commands/add-auth.ts +413 -0
  49. package/src/cli/commands/dev.ts +35 -4
  50. package/src/cli/commands/scaffold.ts +165 -11
  51. package/src/cli/index.ts +11 -0
  52. package/src/core/config.ts +13 -2
  53. package/src/core/mock/connector-mock-server.ts +248 -0
  54. package/src/core/scaffold/auth-generator.ts +1286 -0
  55. package/src/core/scaffold/connector-functions-generator.ts +42 -18
  56. package/src/core/scaffold/functions-generator.ts +23 -12
  57. package/src/core/scaffold/model-parser.ts +50 -1
  58. package/src/core/scaffold/ui-generator.ts +132 -12
  59. package/src/types/index.ts +42 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-generator.js","sourceRoot":"","sources":["../../../src/core/scaffold/auth-generator.ts"],"names":[],"mappings":"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"}
@@ -3,15 +3,15 @@
3
3
  * RDB(MySQL/PostgreSQL/SQL Server)および 外部 REST API コネクタ向けのハンドラーを生成
4
4
  */
5
5
  import { ModelInfo } from "./model-parser";
6
- import { RdbConnectorConfig, ApiConnectorConfig, RdbModelConnectorConfig, ApiModelConnectorConfig, ConnectorOperation } from "../../types";
6
+ import { RdbConnectorConfig, ApiConnectorConfig, RdbModelConnectorConfig, ApiModelConnectorConfig, ConnectorOperation, ModelAuthPolicy } from "../../types";
7
7
  /**
8
8
  * RDB コネクタ用 TypeScript Azure Functions を生成
9
9
  */
10
- export declare function generateRdbConnectorFunctionTS(model: ModelInfo, sharedPackageName: string, connectorDef: RdbConnectorConfig, modelConnector: RdbModelConnectorConfig): string;
10
+ export declare function generateRdbConnectorFunctionTS(model: ModelInfo, sharedPackageName: string, connectorDef: RdbConnectorConfig, modelConnector: RdbModelConnectorConfig, authPolicy?: ModelAuthPolicy): string;
11
11
  /**
12
12
  * API コネクタ用 TypeScript Azure Functions を生成
13
13
  */
14
- export declare function generateApiConnectorFunctionTS(model: ModelInfo, sharedPackageName: string, connectorDef: ApiConnectorConfig, modelConnector: ApiModelConnectorConfig): string;
14
+ export declare function generateApiConnectorFunctionTS(model: ModelInfo, sharedPackageName: string, connectorDef: ApiConnectorConfig, modelConnector: ApiModelConnectorConfig, authPolicy?: ModelAuthPolicy): string;
15
15
  /**
16
16
  * RDB コネクタ用 C# Azure Functions を生成
17
17
  */
@@ -1 +1 @@
1
- {"version":3,"file":"connector-functions-generator.d.ts","sourceRoot":"","sources":["../../../src/core/scaffold/connector-functions-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAA4B,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAEL,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,aAAa,CAAC;AAIrB;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,SAAS,EAChB,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC,MAAM,CAkJR;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,SAAS,EAChB,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC,MAAM,CAgNR;AA4CD;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC,MAAM,CAmIR;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC,MAAM,CAsNR;AAqCD;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAoF7C;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAwI7C;AAgCD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,SAAS,kBAAkB,EAAE,GAAG,OAAO,CAGtF"}
1
+ {"version":3,"file":"connector-functions-generator.d.ts","sourceRoot":"","sources":["../../../src/core/scaffold/connector-functions-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAA4B,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAEL,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,eAAe,EAChB,MAAM,aAAa,CAAC;AAKrB;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,SAAS,EAChB,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,EACvC,UAAU,CAAC,EAAE,eAAe,GAC3B,MAAM,CA4JR;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,SAAS,EAChB,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,EACvC,UAAU,CAAC,EAAE,eAAe,GAC3B,MAAM,CA0NR;AA4CD;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC,MAAM,CAmIR;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC,MAAM,CAsNR;AAqCD;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAoF7C;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,uBAAuB,GACtC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAwI7C;AAgCD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,SAAS,kBAAkB,EAAE,GAAG,OAAO,CAGtF"}
@@ -12,11 +12,12 @@ exports.generateRdbConnectorFunctionPython = generateRdbConnectorFunctionPython;
12
12
  exports.generateApiConnectorFunctionPython = generateApiConnectorFunctionPython;
13
13
  exports.isReadOnlyConnector = isReadOnlyConnector;
14
14
  const model_parser_1 = require("./model-parser");
15
+ const auth_generator_1 = require("./auth-generator");
15
16
  // ─── TypeScript Generators ────────────────────────────────────────
16
17
  /**
17
18
  * RDB コネクタ用 TypeScript Azure Functions を生成
18
19
  */
19
- function generateRdbConnectorFunctionTS(model, sharedPackageName, connectorDef, modelConnector) {
20
+ function generateRdbConnectorFunctionTS(model, sharedPackageName, connectorDef, modelConnector, authPolicy) {
20
21
  const modelCamel = (0, model_parser_1.toCamelCase)(model.name);
21
22
  const schemaName = model.schemaName;
22
23
  const ops = new Set(modelConnector.operations);
@@ -106,10 +107,19 @@ function generateRdbConnectorFunctionTS(model, sharedPackageName, connectorDef,
106
107
  } finally {
107
108
  await pool.close();
108
109
  }`;
110
+ // Auth guard setup
111
+ const hasAuth = !!authPolicy;
112
+ const authImport = hasAuth ? `\n${(0, auth_generator_1.generateAuthImportTS)()}\n` : '';
113
+ const readGuard = hasAuth ? `\n${(0, auth_generator_1.generateAuthGuardTS)(authPolicy, 'read')}\n` : '';
114
+ const writeGuard = hasAuth ? `\n${(0, auth_generator_1.generateAuthGuardTS)(authPolicy, 'write')}\n` : '';
115
+ const authCatchBlock = hasAuth
116
+ ? ` const authErr = handleAuthError(error);
117
+ if (authErr) return authErr;\n `
118
+ : ` `;
109
119
  let code = `import { app, HttpRequest, HttpResponseInit, InvocationContext } from '@azure/functions';
110
120
  import { z } from 'zod/v4';
111
121
  import { ${schemaName} } from '${sharedPackageName}';
112
- ${driverImport}
122
+ ${driverImport}${authImport}
113
123
 
114
124
  ${getConnection}
115
125
  `;
@@ -121,10 +131,10 @@ app.http('${modelCamel}-get-all', {
121
131
  route: '${modelCamel}',
122
132
  authLevel: 'anonymous',
123
133
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
124
- try {
134
+ try {${readGuard}
125
135
  ${queryAll}
126
136
  } catch (error) {
127
- context.error(\`Error fetching from ${table}:\`, error);
137
+ ${authCatchBlock}context.error(\`Error fetching from ${table}:\`, error);
128
138
  return { status: 500, jsonBody: { error: 'Failed to fetch items' } };
129
139
  }
130
140
  },
@@ -139,14 +149,14 @@ app.http('${modelCamel}-get-by-id', {
139
149
  route: '${modelCamel}/{id}',
140
150
  authLevel: 'anonymous',
141
151
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
142
- try {
152
+ try {${readGuard}
143
153
  const id = request.params.id;
144
154
  if (!id) {
145
155
  return { status: 400, jsonBody: { error: 'ID is required' } };
146
156
  }
147
157
  ${queryById}
148
158
  } catch (error) {
149
- context.error(\`Error fetching item from ${table}:\`, error);
159
+ ${authCatchBlock}context.error(\`Error fetching item from ${table}:\`, error);
150
160
  return { status: 500, jsonBody: { error: 'Failed to fetch item' } };
151
161
  }
152
162
  },
@@ -158,16 +168,25 @@ app.http('${modelCamel}-get-by-id', {
158
168
  /**
159
169
  * API コネクタ用 TypeScript Azure Functions を生成
160
170
  */
161
- function generateApiConnectorFunctionTS(model, sharedPackageName, connectorDef, modelConnector) {
171
+ function generateApiConnectorFunctionTS(model, sharedPackageName, connectorDef, modelConnector, authPolicy) {
162
172
  const modelCamel = (0, model_parser_1.toCamelCase)(model.name);
163
173
  const schemaName = model.schemaName;
164
174
  const ops = new Set(modelConnector.operations);
165
175
  const baseUrlEnv = connectorDef.baseUrlEnvVar;
166
176
  const endpoints = modelConnector.endpoints || {};
167
177
  const authSetup = generateTSAuthSetup(connectorDef);
178
+ // Auth guard setup (user access control, separate from connector auth to external APIs)
179
+ const hasAuth = !!authPolicy;
180
+ const authImportLine = hasAuth ? `\n${(0, auth_generator_1.generateAuthImportTS)()}\n` : '';
181
+ const readGuard = hasAuth ? `\n${(0, auth_generator_1.generateAuthGuardTS)(authPolicy, 'read')}\n` : '';
182
+ const writeGuard = hasAuth ? `\n${(0, auth_generator_1.generateAuthGuardTS)(authPolicy, 'write')}\n` : '';
183
+ const authCatchBlock = hasAuth
184
+ ? ` const authErr = handleAuthError(error);
185
+ if (authErr) return authErr;\n `
186
+ : ` `;
168
187
  let code = `import { app, HttpRequest, HttpResponseInit, InvocationContext } from '@azure/functions';
169
188
  import { z } from 'zod/v4';
170
- import { ${schemaName} } from '${sharedPackageName}';
189
+ import { ${schemaName} } from '${sharedPackageName}';${authImportLine}
171
190
 
172
191
  function getBaseUrl(): string {
173
192
  return process.env.${baseUrlEnv} || '';
@@ -185,7 +204,7 @@ app.http('${modelCamel}-get-all', {
185
204
  route: '${modelCamel}',
186
205
  authLevel: 'anonymous',
187
206
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
188
- try {
207
+ try {${readGuard}
189
208
  const url = getBaseUrl() + '${epPath}';
190
209
  const response = await fetch(url, {
191
210
  method: 'GET',
@@ -201,7 +220,7 @@ app.http('${modelCamel}-get-all', {
201
220
  const validated = z.array(${schemaName}).parse(data);
202
221
  return { status: 200, jsonBody: validated };
203
222
  } catch (error) {
204
- context.error(\`Error fetching from external API:\`, error);
223
+ ${authCatchBlock}context.error(\`Error fetching from external API:\`, error);
205
224
  return { status: 500, jsonBody: { error: 'Failed to fetch items' } };
206
225
  }
207
226
  },
@@ -218,7 +237,7 @@ app.http('${modelCamel}-get-by-id', {
218
237
  route: '${modelCamel}/{id}',
219
238
  authLevel: 'anonymous',
220
239
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
221
- try {
240
+ try {${readGuard}
222
241
  const id = request.params.id;
223
242
  if (!id) {
224
243
  return { status: 400, jsonBody: { error: 'ID is required' } };
@@ -240,7 +259,7 @@ app.http('${modelCamel}-get-by-id', {
240
259
  const validated = ${schemaName}.parse(data);
241
260
  return { status: 200, jsonBody: validated };
242
261
  } catch (error) {
243
- context.error(\`Error fetching item from external API:\`, error);
262
+ ${authCatchBlock}context.error(\`Error fetching item from external API:\`, error);
244
263
  return { status: 500, jsonBody: { error: 'Failed to fetch item' } };
245
264
  }
246
265
  },
@@ -257,7 +276,7 @@ app.http('${modelCamel}-create', {
257
276
  route: '${modelCamel}',
258
277
  authLevel: 'anonymous',
259
278
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
260
- try {
279
+ try {${writeGuard}
261
280
  const body = await request.json();
262
281
  const url = getBaseUrl() + '${epPath}';
263
282
  const response = await fetch(url, {
@@ -275,7 +294,7 @@ app.http('${modelCamel}-create', {
275
294
  const data = await response.json();
276
295
  return { status: 201, jsonBody: data };
277
296
  } catch (error) {
278
- context.error(\`Error creating item via external API:\`, error);
297
+ ${authCatchBlock}context.error(\`Error creating item via external API:\`, error);
279
298
  return { status: 500, jsonBody: { error: 'Failed to create item' } };
280
299
  }
281
300
  },
@@ -294,7 +313,7 @@ app.http('${modelCamel}-update', {
294
313
  route: '${modelCamel}/{id}',
295
314
  authLevel: 'anonymous',
296
315
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
297
- try {
316
+ try {${writeGuard}
298
317
  const id = request.params.id;
299
318
  if (!id) {
300
319
  return { status: 400, jsonBody: { error: 'ID is required' } };
@@ -316,7 +335,7 @@ app.http('${modelCamel}-update', {
316
335
  const data = await response.json();
317
336
  return { status: 200, jsonBody: data };
318
337
  } catch (error) {
319
- context.error(\`Error updating item via external API:\`, error);
338
+ ${authCatchBlock}context.error(\`Error updating item via external API:\`, error);
320
339
  return { status: 500, jsonBody: { error: 'Failed to update item' } };
321
340
  }
322
341
  },
@@ -333,7 +352,7 @@ app.http('${modelCamel}-delete', {
333
352
  route: '${modelCamel}/{id}',
334
353
  authLevel: 'anonymous',
335
354
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
336
- try {
355
+ try {${writeGuard}
337
356
  const id = request.params.id;
338
357
  if (!id) {
339
358
  return { status: 400, jsonBody: { error: 'ID is required' } };
@@ -350,7 +369,7 @@ app.http('${modelCamel}-delete', {
350
369
 
351
370
  return { status: 204 };
352
371
  } catch (error) {
353
- context.error(\`Error deleting item via external API:\`, error);
372
+ ${authCatchBlock}context.error(\`Error deleting item via external API:\`, error);
354
373
  return { status: 500, jsonBody: { error: 'Failed to delete item' } };
355
374
  }
356
375
  },
@@ -1 +1 @@
1
- {"version":3,"file":"connector-functions-generator.js","sourceRoot":"","sources":["../../../src/core/scaffold/connector-functions-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connector-functions-generator.js","sourceRoot":"","sources":["../../../src/core/scaffold/connector-functions-generator.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,12 @@
4
4
  * インラインハンドラー方式(ファクトリー不使用)
5
5
  */
6
6
  import { ModelInfo } from "./model-parser";
7
+ import { ModelAuthPolicy } from "../../types";
7
8
  /**
8
9
  * Azure Functions エンティティファイルを生成(インラインハンドラー方式)
9
10
  * 各ハンドラーがベタ書きされており、ビジネスロジックの追加・変更が容易
10
11
  */
11
- export declare function generateCompactAzureFunctionsCRUD(model: ModelInfo, sharedPackageName: string): string;
12
+ export declare function generateCompactAzureFunctionsCRUD(model: ModelInfo, sharedPackageName: string, authPolicy?: ModelAuthPolicy): string;
12
13
  export declare function generateCSharpAzureFunctionsCRUD(model: ModelInfo): string;
13
14
  export declare function generatePythonAzureFunctionsCRUD(model: ModelInfo): {
14
15
  blueprint: string;
@@ -1 +1 @@
1
- {"version":3,"file":"functions-generator.d.ts","sourceRoot":"","sources":["../../../src/core/scaffold/functions-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAA4B,MAAM,gBAAgB,CAAC;AAErE;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAiOrG;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAmSzE;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,SAAS,GAAG;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB,CA0IA"}
1
+ {"version":3,"file":"functions-generator.d.ts","sourceRoot":"","sources":["../../../src/core/scaffold/functions-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAA4B,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,eAAe,GAAG,MAAM,CA0OnI;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAmSzE;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,SAAS,GAAG;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB,CA0IA"}
@@ -9,19 +9,28 @@ exports.generateCompactAzureFunctionsCRUD = generateCompactAzureFunctionsCRUD;
9
9
  exports.generateCSharpAzureFunctionsCRUD = generateCSharpAzureFunctionsCRUD;
10
10
  exports.generatePythonAzureFunctionsCRUD = generatePythonAzureFunctionsCRUD;
11
11
  const model_parser_1 = require("./model-parser");
12
+ const auth_generator_1 = require("./auth-generator");
12
13
  /**
13
14
  * Azure Functions エンティティファイルを生成(インラインハンドラー方式)
14
15
  * 各ハンドラーがベタ書きされており、ビジネスロジックの追加・変更が容易
15
16
  */
16
- function generateCompactAzureFunctionsCRUD(model, sharedPackageName) {
17
+ function generateCompactAzureFunctionsCRUD(model, sharedPackageName, authPolicy) {
17
18
  const modelName = model.name;
18
19
  const modelCamel = (0, model_parser_1.toCamelCase)(modelName);
19
20
  const modelKebab = (0, model_parser_1.toKebabCase)(modelName);
20
21
  const schemaName = model.schemaName;
22
+ const hasAuth = !!authPolicy;
23
+ const authImport = hasAuth ? `\n${(0, auth_generator_1.generateAuthImportTS)()}\n` : '';
24
+ const readGuard = hasAuth ? `\n${(0, auth_generator_1.generateAuthGuardTS)(authPolicy, 'read')}\n` : '';
25
+ const writeGuard = hasAuth ? `\n${(0, auth_generator_1.generateAuthGuardTS)(authPolicy, 'write')}\n` : '';
26
+ const authCatchBlock = hasAuth
27
+ ? ` const authErr = handleAuthError(error);
28
+ if (authErr) return authErr;\n`
29
+ : '';
21
30
  return `import { app, HttpRequest, HttpResponseInit, InvocationContext } from '@azure/functions';
22
31
  import { z } from 'zod/v4';
23
32
  import crypto from 'crypto';
24
- import { ${schemaName} } from '${sharedPackageName}';
33
+ import { ${schemaName} } from '${sharedPackageName}';${authImport}
25
34
 
26
35
  const containerName = '${modelName}s';
27
36
 
@@ -41,7 +50,7 @@ app.http('${modelCamel}-get-all', {
41
50
  },
42
51
  ],
43
52
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
44
- try {
53
+ try {${readGuard}
45
54
  const documents = context.extraInputs.get('cosmosInput') as any[];
46
55
 
47
56
  if (!documents || !Array.isArray(documents)) {
@@ -53,7 +62,7 @@ app.http('${modelCamel}-get-all', {
53
62
 
54
63
  return { status: 200, jsonBody: validated };
55
64
  } catch (error) {
56
- context.error(\`Error fetching from \${containerName}:\`, error);
65
+ ${authCatchBlock} context.error(\`Error fetching from \${containerName}:\`, error);
57
66
  return { status: 500, jsonBody: { error: 'Failed to fetch items' } };
58
67
  }
59
68
  },
@@ -76,7 +85,7 @@ app.http('${modelCamel}-get-by-id', {
76
85
  },
77
86
  ],
78
87
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
79
- try {
88
+ try {${readGuard}
80
89
  const document = context.extraInputs.get('cosmosInput');
81
90
 
82
91
  if (!document) {
@@ -86,7 +95,7 @@ app.http('${modelCamel}-get-by-id', {
86
95
  const validated = ${schemaName}.parse(document);
87
96
  return { status: 200, jsonBody: validated };
88
97
  } catch (error) {
89
- context.error(\`Error fetching item from \${containerName}:\`, error);
98
+ ${authCatchBlock} context.error(\`Error fetching item from \${containerName}:\`, error);
90
99
  return { status: 500, jsonBody: { error: 'Failed to fetch item' } };
91
100
  }
92
101
  },
@@ -108,7 +117,7 @@ app.http('${modelCamel}-create', {
108
117
  },
109
118
  ],
110
119
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
111
- try {
120
+ try {${writeGuard}
112
121
  const body = await request.json() as any;
113
122
 
114
123
  const { id, createdAt, updatedAt, ...userData } = body;
@@ -130,7 +139,7 @@ app.http('${modelCamel}-create', {
130
139
  context.extraOutputs.set('cosmosOutput', result.data);
131
140
  return { status: 201, jsonBody: result.data };
132
141
  } catch (error) {
133
- context.error(\`Error creating item in \${containerName}:\`, error);
142
+ ${authCatchBlock} context.error(\`Error creating item in \${containerName}:\`, error);
134
143
  return { status: 500, jsonBody: { error: 'Failed to create item' } };
135
144
  }
136
145
  },
@@ -162,7 +171,7 @@ app.http('${modelCamel}-update', {
162
171
  },
163
172
  ],
164
173
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
165
- try {
174
+ try {${writeGuard}
166
175
  const id = request.params.id;
167
176
  if (!id) {
168
177
  return { status: 400, jsonBody: { error: 'ID is required' } };
@@ -193,7 +202,7 @@ app.http('${modelCamel}-update', {
193
202
  context.extraOutputs.set('cosmosOutput', result.data);
194
203
  return { status: 200, jsonBody: result.data };
195
204
  } catch (error) {
196
- context.error(\`Error updating item in \${containerName}:\`, error);
205
+ ${authCatchBlock} context.error(\`Error updating item in \${containerName}:\`, error);
197
206
  return { status: 500, jsonBody: { error: 'Failed to update item' } };
198
207
  }
199
208
  },
@@ -205,7 +214,7 @@ app.http('${modelCamel}-delete', {
205
214
  route: '${modelCamel}/{id}',
206
215
  authLevel: 'anonymous',
207
216
  handler: async (request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> => {
208
- try {
217
+ try {${writeGuard}
209
218
  const id = request.params.id;
210
219
  if (!id) {
211
220
  return { status: 400, jsonBody: { error: 'ID is required' } };
@@ -231,7 +240,7 @@ app.http('${modelCamel}-delete', {
231
240
  if (error.code === 404) {
232
241
  return { status: 404, jsonBody: { error: 'Item not found' } };
233
242
  }
234
- context.error(\`Error deleting item from \${containerName}:\`, error);
243
+ ${authCatchBlock} context.error(\`Error deleting item from \${containerName}:\`, error);
235
244
  return { status: 500, jsonBody: { error: 'Failed to delete item' } };
236
245
  }
237
246
  },
@@ -1 +1 @@
1
- {"version":3,"file":"functions-generator.js","sourceRoot":"","sources":["../../../src/core/scaffold/functions-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functions-generator.js","sourceRoot":"","sources":["../../../src/core/scaffold/functions-generator.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Zod モデルファイルを解析して、スキーマ情報を抽出する
3
3
  */
4
- import { ModelConnectorConfig } from "../../types";
4
+ import { ModelConnectorConfig, ModelAuthPolicy } from "../../types";
5
5
  export interface ModelInfo {
6
6
  name: string;
7
7
  displayName: string;
@@ -13,6 +13,7 @@ export interface ModelInfo {
13
13
  hasUpdatedAt: boolean;
14
14
  nestedSchemaRefs: NestedSchemaRef[];
15
15
  connectorConfig?: ModelConnectorConfig;
16
+ authPolicy?: ModelAuthPolicy;
16
17
  }
17
18
  export interface FieldInfo {
18
19
  name: string;
@@ -55,6 +56,11 @@ export declare function toCamelCase(str: string): string;
55
56
  * モデルファイルから connectorConfig エクスポートを静的解析で抽出する
56
57
  */
57
58
  export declare function parseConnectorConfig(content: string): ModelConnectorConfig | undefined;
59
+ /**
60
+ * authPolicy をモデルファイルから抽出
61
+ * パターン: export const authPolicy = { roles: [...], read: [...], write: [...] }
62
+ */
63
+ export declare function parseAuthPolicy(content: string): ModelAuthPolicy | undefined;
58
64
  /**
59
65
  * 文字列を kebab-case に変換
60
66
  */
@@ -1 +1 @@
1
- {"version":3,"file":"model-parser.d.ts","sourceRoot":"","sources":["../../../src/core/scaffold/model-parser.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,eAAe,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CA6D1E;AAqfD;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKhD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CA2FtF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI/C;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,SAAS,GAAE,MAAwB,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAwB5F"}
1
+ {"version":3,"file":"model-parser.d.ts","sourceRoot":"","sources":["../../../src/core/scaffold/model-parser.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEpE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,UAAU,CAAC,EAAE,eAAe,CAAC;CAC9B;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAiE1E;AAqfD;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKhD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CA2FtF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAsC5E;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI/C;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,SAAS,GAAE,MAAwB,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAwB5F"}
@@ -40,6 +40,7 @@ exports.parseModelFile = parseModelFile;
40
40
  exports.toPascalCase = toPascalCase;
41
41
  exports.toCamelCase = toCamelCase;
42
42
  exports.parseConnectorConfig = parseConnectorConfig;
43
+ exports.parseAuthPolicy = parseAuthPolicy;
43
44
  exports.toKebabCase = toKebabCase;
44
45
  exports.getAllModels = getAllModels;
45
46
  const fs = __importStar(require("fs"));
@@ -75,6 +76,8 @@ async function parseModelFile(modelPath) {
75
76
  const displayName = displayNameMatch ? displayNameMatch[1] : modelName;
76
77
  // connectorConfig を抽出(外部データソース用メタデータ)
77
78
  const connectorConfig = parseConnectorConfig(content);
79
+ // authPolicy を抽出(ロールベースアクセス制御用メタデータ)
80
+ const authPolicy = parseAuthPolicy(content);
78
81
  // ネストしたスキーマ参照を検出
79
82
  const nestedSchemaRefs = detectNestedSchemaRefs(modelPath, content, schemaName);
80
83
  // フィールド情報を抽出(動的インポートを使用)
@@ -96,6 +99,7 @@ async function parseModelFile(modelPath) {
96
99
  hasUpdatedAt,
97
100
  nestedSchemaRefs,
98
101
  ...(connectorConfig ? { connectorConfig } : {}),
102
+ ...(authPolicy ? { authPolicy } : {}),
99
103
  };
100
104
  }
101
105
  /**
@@ -646,6 +650,47 @@ function parseConnectorConfig(content) {
646
650
  ...(endpoints ? { endpoints } : {}),
647
651
  };
648
652
  }
653
+ /**
654
+ * authPolicy をモデルファイルから抽出
655
+ * パターン: export const authPolicy = { roles: [...], read: [...], write: [...] }
656
+ */
657
+ function parseAuthPolicy(content) {
658
+ const policyMatch = content.match(/export\s+const\s+authPolicy\s*=\s*\{/);
659
+ if (!policyMatch) {
660
+ return undefined;
661
+ }
662
+ const startIdx = content.indexOf('{', policyMatch.index);
663
+ let braceCount = 1;
664
+ let endIdx = startIdx + 1;
665
+ while (braceCount > 0 && endIdx < content.length) {
666
+ if (content[endIdx] === '{')
667
+ braceCount++;
668
+ if (content[endIdx] === '}')
669
+ braceCount--;
670
+ endIdx++;
671
+ }
672
+ const objectStr = content.substring(startIdx, endIdx);
673
+ const extractRoles = (key) => {
674
+ const match = objectStr.match(new RegExp(`${key}\\s*:\\s*\\[([^\\]]*)\\]`));
675
+ if (!match)
676
+ return undefined;
677
+ const entries = match[1].match(/['"]([^'"]+)['"]/g);
678
+ if (!entries)
679
+ return [];
680
+ return entries.map(e => e.replace(/['"]/g, ''));
681
+ };
682
+ const roles = extractRoles('roles');
683
+ const read = extractRoles('read');
684
+ const write = extractRoles('write');
685
+ if (!roles && !read && !write) {
686
+ return undefined;
687
+ }
688
+ return {
689
+ ...(roles ? { roles } : {}),
690
+ ...(read ? { read } : {}),
691
+ ...(write ? { write } : {}),
692
+ };
693
+ }
649
694
  /**
650
695
  * 文字列を kebab-case に変換
651
696
  */