swallowkit 1.0.0-beta.14 โ†’ 1.0.0-beta.16

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 (39) hide show
  1. package/dist/cli/commands/add-auth.d.ts.map +1 -1
  2. package/dist/cli/commands/add-auth.js +85 -5
  3. package/dist/cli/commands/add-auth.js.map +1 -1
  4. package/dist/cli/commands/create-model.js +1 -1
  5. package/dist/cli/commands/create-model.js.map +1 -1
  6. package/dist/cli/commands/dev-seeds.js +1 -1
  7. package/dist/cli/commands/dev-seeds.js.map +1 -1
  8. package/dist/cli/commands/dev.js +62 -21
  9. package/dist/cli/commands/dev.js.map +1 -1
  10. package/dist/cli/commands/scaffold.d.ts.map +1 -1
  11. package/dist/cli/commands/scaffold.js +60 -4
  12. package/dist/cli/commands/scaffold.js.map +1 -1
  13. package/dist/core/mock/connector-mock-server.d.ts +7 -1
  14. package/dist/core/mock/connector-mock-server.d.ts.map +1 -1
  15. package/dist/core/mock/connector-mock-server.js +23 -26
  16. package/dist/core/mock/connector-mock-server.js.map +1 -1
  17. package/dist/core/scaffold/auth-generator.d.ts +1 -1
  18. package/dist/core/scaffold/auth-generator.d.ts.map +1 -1
  19. package/dist/core/scaffold/auth-generator.js +17 -20
  20. package/dist/core/scaffold/auth-generator.js.map +1 -1
  21. package/dist/core/scaffold/functions-generator.d.ts +2 -2
  22. package/dist/core/scaffold/functions-generator.d.ts.map +1 -1
  23. package/dist/core/scaffold/functions-generator.js +34 -22
  24. package/dist/core/scaffold/functions-generator.js.map +1 -1
  25. package/dist/core/scaffold/model-parser.d.ts.map +1 -1
  26. package/dist/core/scaffold/model-parser.js +2 -0
  27. package/dist/core/scaffold/model-parser.js.map +1 -1
  28. package/package.json +5 -5
  29. package/src/__tests__/auth.test.ts +13 -13
  30. package/src/__tests__/connector-mock-server.test.ts +75 -37
  31. package/src/cli/commands/add-auth.ts +95 -6
  32. package/src/cli/commands/create-model.ts +1 -1
  33. package/src/cli/commands/dev-seeds.ts +1 -1
  34. package/src/cli/commands/dev.ts +66 -21
  35. package/src/cli/commands/scaffold.ts +68 -9
  36. package/src/core/mock/connector-mock-server.ts +27 -27
  37. package/src/core/scaffold/auth-generator.ts +16 -19
  38. package/src/core/scaffold/functions-generator.ts +37 -23
  39. package/src/core/scaffold/model-parser.ts +2 -0
@@ -271,16 +271,23 @@ async function generateFunctionsCode(modelInfo, functionsDir, sharedPackageName,
271
271
  return;
272
272
  }
273
273
  if (backendLanguage === "csharp") {
274
- const functionFilePath = path.join(process.cwd(), functionsDir, "Crud", `${modelInfo.name}Functions.cs`);
275
- fs.mkdirSync(path.dirname(functionFilePath), { recursive: true });
276
- fs.writeFileSync(functionFilePath, (0, functions_generator_1.generateCSharpAzureFunctionsCRUD)(modelInfo), "utf-8");
274
+ const crudDir = path.join(process.cwd(), functionsDir, "Crud");
275
+ const functionFilePath = path.join(crudDir, `${modelInfo.name}Functions.cs`);
276
+ fs.mkdirSync(crudDir, { recursive: true });
277
+ // Remove init-generated template (singular) to avoid route conflicts
278
+ const templatePath = path.join(crudDir, `${modelInfo.name}Function.cs`);
279
+ if (fs.existsSync(templatePath)) {
280
+ fs.unlinkSync(templatePath);
281
+ console.log(`๐Ÿ—‘๏ธ Removed template: ${templatePath}`);
282
+ }
283
+ fs.writeFileSync(functionFilePath, (0, functions_generator_1.generateCSharpAzureFunctionsCRUD)(modelInfo, authPolicy), "utf-8");
277
284
  console.log(`โœ… Created: ${functionFilePath}`);
278
285
  return;
279
286
  }
280
287
  const blueprintsDir = path.join(process.cwd(), functionsDir, "blueprints");
281
288
  const blueprintPath = path.join(blueprintsDir, `${modelKebab.replace(/-/g, "_")}.py`);
282
289
  fs.mkdirSync(blueprintsDir, { recursive: true });
283
- const { blueprint, registration } = (0, functions_generator_1.generatePythonAzureFunctionsCRUD)(modelInfo);
290
+ const { blueprint, registration } = (0, functions_generator_1.generatePythonAzureFunctionsCRUD)(modelInfo, authPolicy);
284
291
  fs.writeFileSync(blueprintPath, blueprint, "utf-8");
285
292
  updatePythonFunctionRegistrations(path.join(process.cwd(), functionsDir, "function_app.py"), registration);
286
293
  console.log(`โœ… Created: ${blueprintPath}`);
@@ -589,6 +596,10 @@ function pruneGeneratedCSharpArtifacts(outputDir) {
589
596
  }
590
597
  const clientDir = path.join(outputDir, "src", "SwallowKitBackendModels", "Client");
591
598
  if (!fs.existsSync(clientDir)) {
599
+ // --global-property models ใงใฏClient/ใŒ็”Ÿๆˆใ•ใ‚Œใชใ„ใŸใ‚ใ€
600
+ // ใƒขใƒ‡ใƒซใŒไพๅญ˜ใ™ใ‚‹ๆœ€ๅฐ้™ใฎ Option<T> ใ‚’่‡ชๅ‰ใงไฝœๆˆใ™ใ‚‹
601
+ fs.mkdirSync(clientDir, { recursive: true });
602
+ fs.writeFileSync(path.join(clientDir, "Option.cs"), generateMinimalOptionCs(), "utf-8");
592
603
  return;
593
604
  }
594
605
  for (const entry of fs.readdirSync(clientDir, { withFileTypes: true })) {
@@ -598,11 +609,56 @@ function pruneGeneratedCSharpArtifacts(outputDir) {
598
609
  fs.rmSync(path.join(clientDir, entry.name), { force: true });
599
610
  }
600
611
  }
612
+ /**
613
+ * OpenAPI Generator ใฎ csharp ใƒ†ใƒณใƒ—ใƒฌใƒผใƒˆใŒ็”Ÿๆˆใ™ใ‚‹ใƒขใƒ‡ใƒซใฏ Option<T> ใซไพๅญ˜ใ™ใ‚‹ใŒใ€
614
+ * supportingFiles ใ‚’้™คๅค–ใ—ใฆใ„ใ‚‹ใŸใ‚ Client/Option.cs ใŒ็”Ÿๆˆใ•ใ‚Œใชใ„ใ€‚
615
+ * Polly ็ญ‰ใฎไธ่ฆใชไพๅญ˜ใ‚’้ฟใ‘ใคใคใƒขใƒ‡ใƒซใ‚’ใ‚ณใƒณใƒ‘ใ‚คใƒซๅฏ่ƒฝใซใ™ใ‚‹ใŸใ‚ใ€ๆœ€ๅฐ้™ใฎ Option<T> ใ‚’ๆไพ›ใ™ใ‚‹ใ€‚
616
+ */
617
+ function generateMinimalOptionCs() {
618
+ return `// <auto-generated>
619
+ // Minimal Option<T> for OpenAPI Generator model compatibility.
620
+ // Full client supporting files are excluded to avoid Polly version conflicts.
621
+ // </auto-generated>
622
+
623
+ #nullable enable
624
+
625
+ namespace SwallowKitBackendModels.Client
626
+ {
627
+ /// <summary>
628
+ /// A wrapper for nullable/optional properties generated by OpenAPI Generator.
629
+ /// Tracks whether a value has been explicitly set (distinguishing null from absent).
630
+ /// </summary>
631
+ public readonly struct Option<TValue>
632
+ {
633
+ /// <summary>Whether this option has been explicitly set.</summary>
634
+ public bool IsSet { get; }
635
+
636
+ /// <summary>The contained value (may be default if not set).</summary>
637
+ public TValue Value { get; }
638
+
639
+ /// <summary>Create an Option with an explicit value.</summary>
640
+ public Option(TValue value)
641
+ {
642
+ IsSet = true;
643
+ Value = value;
644
+ }
645
+
646
+ /// <summary>Implicit conversion from Option to its inner value.</summary>
647
+ public static implicit operator TValue(Option<TValue> option) => option.Value;
648
+ }
649
+ }
650
+ `;
651
+ }
601
652
  function updatePythonFunctionRegistrations(functionAppPath, registration) {
602
653
  if (!fs.existsSync(functionAppPath)) {
603
654
  throw new Error(`Python Functions entrypoint not found: ${functionAppPath}`);
604
655
  }
605
656
  const content = fs.readFileSync(functionAppPath, "utf-8");
657
+ // Check if import line already exists (handles init-generated layout)
658
+ const importLine = registration.split("\n").find((l) => l.startsWith("from ") || l.startsWith("import "));
659
+ if (importLine && content.includes(importLine)) {
660
+ return;
661
+ }
606
662
  if (content.includes(registration)) {
607
663
  return;
608
664
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../../src/cli/commands/scaffold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../../src/cli/commands/scaffold.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,8 @@ export interface ConnectorMockServerOptions {
29
29
  tokenExpiry?: string;
30
30
  /** Custom JWT config from swallowkit.config.js */
31
31
  customJwt?: {
32
+ /** RDB table name that holds user records (e.g., "users") */
33
+ userTable: string;
32
34
  loginIdColumn: string;
33
35
  passwordHashColumn: string;
34
36
  rolesColumn: string;
@@ -45,7 +47,6 @@ export declare class ConnectorMockServer {
45
47
  private server;
46
48
  private stores;
47
49
  private routeMap;
48
- private authUsers;
49
50
  private options;
50
51
  constructor(options: ConnectorMockServerOptions);
51
52
  /**
@@ -74,6 +75,11 @@ export declare class ConnectorMockServer {
74
75
  private handleAuthRequest;
75
76
  private handleLogin;
76
77
  private handleMe;
78
+ /**
79
+ * authConfig.customJwt.userTable ใซๅฏพๅฟœใ™ใ‚‹ใƒขใƒ‡ใƒซใฎใ‚นใƒˆใ‚ขใ‚’่ฟ”ใ™ใ€‚
80
+ * ใƒฆใƒผใ‚ถใƒผใƒ†ใƒผใƒ–ใƒซใŒ่ฆ‹ใคใ‹ใ‚‰ใชใ„ๅ ดๅˆใฏ null ใ‚’่ฟ”ใ™ใ€‚
81
+ */
82
+ private resolveUserStore;
77
83
  /**
78
84
  * JWT ใ‚’ๆคœ่จผใ—ใ€ใƒšใ‚คใƒญใƒผใƒ‰๏ผˆroles ๅซใ‚€๏ผ‰ใ‚’่ฟ”ใ™ใ€‚
79
85
  * ่ช่จผไธ่ฆใชๅ ดๅˆใฏ null ใ‚’่ฟ”ใ™ใ€‚401/403 ใฎๅ ดๅˆใฏใƒฌใ‚นใƒใƒณใ‚นใ‚’้€ไฟกใ—ใฆ 'error' ใ‚’่ฟ”ใ™ใ€‚
@@ -1 +1 @@
1
- {"version":3,"file":"connector-mock-server.d.ts","sourceRoot":"","sources":["../../../src/core/mock/connector-mock-server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,SAAS,EAAe,MAAM,0BAA0B,CAAC;AAIlE,MAAM,WAAW,0BAA0B;IACzC,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB;IAChB,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,8BAA8B;IAC9B,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IACxB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0EAA0E;IAC1E,UAAU,CAAC,EAAE;QACX,wDAAwD;QACxD,SAAS,EAAE,MAAM,CAAC;QAClB,iCAAiC;QACjC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,kDAAkD;QAClD,SAAS,CAAC,EAAE;YACV,aAAa,EAAE,MAAM,CAAC;YACtB,kBAAkB,EAAE,MAAM,CAAC;YAC3B,WAAW,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,6GAA6G;QAC7G,aAAa,CAAC,EAAE,eAAe,GAAG,WAAW,CAAC;KAC/C,CAAC;CACH;AAED,KAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5C;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,MAAM,CAAqC;IACnD,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,OAAO,CAA6B;gBAEhC,OAAO,EAAE,0BAA0B;IAU/C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAe5B;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAcrB;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,EAAE;YAO7B,gBAAgB;IAsD9B,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,cAAc;IA+EtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA6BxB,OAAO,CAAC,iBAAiB;IAgCzB,OAAO,CAAC,WAAW;IAuEnB,OAAO,CAAC,QAAQ;IA2BhB;;;OAGG;IACH,OAAO,CAAC,SAAS;IA8CjB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,QAAQ;IAahB;;;OAGG;IACH,OAAO,CAAC,eAAe;CAexB"}
1
+ {"version":3,"file":"connector-mock-server.d.ts","sourceRoot":"","sources":["../../../src/core/mock/connector-mock-server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,SAAS,EAAe,MAAM,0BAA0B,CAAC;AAIlE,MAAM,WAAW,0BAA0B;IACzC,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB;IAChB,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,8BAA8B;IAC9B,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IACxB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0EAA0E;IAC1E,UAAU,CAAC,EAAE;QACX,wDAAwD;QACxD,SAAS,EAAE,MAAM,CAAC;QAClB,iCAAiC;QACjC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,kDAAkD;QAClD,SAAS,CAAC,EAAE;YACV,6DAA6D;YAC7D,SAAS,EAAE,MAAM,CAAC;YAClB,aAAa,EAAE,MAAM,CAAC;YACtB,kBAAkB,EAAE,MAAM,CAAC;YAC3B,WAAW,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,6GAA6G;QAC7G,aAAa,CAAC,EAAE,eAAe,GAAG,WAAW,CAAC;KAC/C,CAAC;CACH;AAED,KAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5C;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,MAAM,CAAqC;IACnD,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,OAAO,CAA6B;gBAEhC,OAAO,EAAE,0BAA0B;IAU/C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAe5B;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAcrB;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,EAAE;YAO7B,gBAAgB;IA+B9B,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,cAAc;IA+EtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA6BxB,OAAO,CAAC,iBAAiB;IAgCzB,OAAO,CAAC,WAAW;IA8EnB,OAAO,CAAC,QAAQ;IA2BhB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;;OAGG;IACH,OAAO,CAAC,SAAS;IA8CjB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,QAAQ;IAahB;;;OAGG;IACH,OAAO,CAAC,eAAe;CAexB"}
@@ -39,9 +39,7 @@ var __importStar = (this && this.__importStar) || (function () {
39
39
  })();
40
40
  Object.defineProperty(exports, "__esModule", { value: true });
41
41
  exports.ConnectorMockServer = void 0;
42
- const fs = __importStar(require("fs"));
43
42
  const http = __importStar(require("http"));
44
- const path = __importStar(require("path"));
45
43
  const model_parser_1 = require("../scaffold/model-parser");
46
44
  const zod_mock_generator_1 = require("./zod-mock-generator");
47
45
  const dev_seeds_1 = require("../../cli/commands/dev-seeds");
@@ -53,7 +51,6 @@ class ConnectorMockServer {
53
51
  this.server = null;
54
52
  this.stores = new Map();
55
53
  this.routeMap = new Map(); // route โ†’ model
56
- this.authUsers = [];
57
54
  this.options = options;
58
55
  // ใƒซใƒผใƒˆใƒžใƒƒใƒ—ใ‚’ๆง‹็ฏ‰: ใƒขใƒ‡ใƒซๅ(camelCase) โ†’ ModelInfo
59
56
  for (const model of options.connectorModels) {
@@ -125,28 +122,6 @@ class ConnectorMockServer {
125
122
  console.warn(`โš ๏ธ Failed to load dev-seeds for connectors: ${err.message}`);
126
123
  }
127
124
  }
128
- // Load auth users from dev-seeds/_auth-users.json (auth uses RDB connector, same mock approach)
129
- if (this.options.seedEnv && this.options.authConfig) {
130
- const seedsDir = this.options.seedsDir || path.join(process.cwd(), "dev-seeds");
131
- const authUsersPath = path.join(seedsDir, this.options.seedEnv, "_auth-users.json");
132
- if (fs.existsSync(authUsersPath)) {
133
- try {
134
- this.authUsers = JSON.parse(fs.readFileSync(authUsersPath, "utf-8"));
135
- console.log(` ๐Ÿ“‚ Loaded ${this.authUsers.length} auth user seed(s) from _auth-users.json`);
136
- }
137
- catch (err) {
138
- console.warn(`โš ๏ธ Failed to load _auth-users.json: ${err.message}`);
139
- }
140
- }
141
- }
142
- // Fallback: default auth user seeds when no seed file exists
143
- if (this.options.authConfig && this.authUsers.length === 0) {
144
- this.authUsers = [
145
- { id: "1", loginId: "admin", password: "password123", name: "Admin User", email: "admin@example.com", roles: ["admin"] },
146
- { id: "2", loginId: "user", password: "password123", name: "Test User", email: "user@example.com", roles: ["user"] },
147
- ];
148
- console.log(" ๐Ÿ“‚ Using default auth user seeds (admin/password123, user/password123)");
149
- }
150
125
  }
151
126
  handleRequest(req, res) {
152
127
  const { route, id } = this.parseRoute(req.url || "");
@@ -311,10 +286,16 @@ class ConnectorMockServer {
311
286
  if (!loginId || !password) {
312
287
  return this.sendJson(res, 400, { error: "loginId and password are required" });
313
288
  }
289
+ const users = this.resolveUserStore();
290
+ if (!users) {
291
+ return this.sendJson(res, 500, {
292
+ error: "No user model found โ€” ensure a connector model with the configured userTable exists",
293
+ });
294
+ }
314
295
  const loginField = this.options.authConfig?.customJwt?.loginIdColumn || "loginId";
315
296
  const passwordField = this.options.authConfig?.customJwt?.passwordHashColumn || "password";
316
297
  const rolesField = this.options.authConfig?.customJwt?.rolesColumn || "roles";
317
- const user = this.authUsers.find((u) => (u[loginField] || u.loginId) === loginId);
298
+ const user = users.find((u) => (u[loginField] || u.loginId) === loginId);
318
299
  if (!user) {
319
300
  return this.sendJson(res, 401, { error: "Invalid credentials" });
320
301
  }
@@ -383,6 +364,22 @@ class ConnectorMockServer {
383
364
  }
384
365
  }
385
366
  // โ”€โ”€โ”€ Utilities โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
367
+ /**
368
+ * authConfig.customJwt.userTable ใซๅฏพๅฟœใ™ใ‚‹ใƒขใƒ‡ใƒซใฎใ‚นใƒˆใ‚ขใ‚’่ฟ”ใ™ใ€‚
369
+ * ใƒฆใƒผใ‚ถใƒผใƒ†ใƒผใƒ–ใƒซใŒ่ฆ‹ใคใ‹ใ‚‰ใชใ„ๅ ดๅˆใฏ null ใ‚’่ฟ”ใ™ใ€‚
370
+ */
371
+ resolveUserStore() {
372
+ const userTable = this.options.authConfig?.customJwt?.userTable;
373
+ if (!userTable)
374
+ return null;
375
+ for (const model of this.options.connectorModels) {
376
+ const cfg = model.connectorConfig;
377
+ if (cfg && "table" in cfg && cfg.table === userTable) {
378
+ return this.stores.get((0, model_parser_1.toCamelCase)(model.name)) || null;
379
+ }
380
+ }
381
+ return null;
382
+ }
386
383
  /**
387
384
  * JWT ใ‚’ๆคœ่จผใ—ใ€ใƒšใ‚คใƒญใƒผใƒ‰๏ผˆroles ๅซใ‚€๏ผ‰ใ‚’่ฟ”ใ™ใ€‚
388
385
  * ่ช่จผไธ่ฆใชๅ ดๅˆใฏ null ใ‚’่ฟ”ใ™ใ€‚401/403 ใฎๅ ดๅˆใฏใƒฌใ‚นใƒใƒณใ‚นใ‚’้€ไฟกใ—ใฆ 'error' ใ‚’่ฟ”ใ™ใ€‚
@@ -1 +1 @@
1
- {"version":3,"file":"connector-mock-server.js","sourceRoot":"","sources":["../../../src/core/mock/connector-mock-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connector-mock-server.js","sourceRoot":"","sources":["../../../src/core/mock/connector-mock-server.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export declare function generateJwtHelperPython(): string;
14
14
  export declare function generateBFFAuthLoginRoute(projectName: string, sharedPackageName: string): string;
15
15
  export declare function generateBFFAuthLogoutRoute(projectName: string): string;
16
16
  export declare function generateBFFAuthMeRoute(sharedPackageName: string): string;
17
- export declare function generateMiddleware(projectName: string): string;
17
+ export declare function generateProxy(projectName: string): string;
18
18
  export declare function generateLoginPage(): string;
19
19
  export declare function generateAuthContext(): string;
20
20
  export declare function generateBFFCallFunctionWithAuth(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"auth-generator.d.ts","sourceRoot":"","sources":["../../../src/core/scaffold/auth-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,eAAe,EAAc,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAE/F,KAAK,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;AAMlD,wBAAgB,kBAAkB,IAAI,MAAM,CA8B3C;AAMD,wBAAgB,uBAAuB,CACrC,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,WAAW,GACpB,MAAM,CA8IR;AAMD,wBAAgB,mBAAmB,IAAI,MAAM,CAwE5C;AAMD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,WAAW,GACpB,MAAM,CA6HR;AAMD,wBAAgB,uBAAuB,IAAI,MAAM,CA8GhD;AAMD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,WAAW,GACpB,MAAM,CAiJR;AAMD,wBAAgB,uBAAuB,IAAI,MAAM,CAyEhD;AAMD,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAwChG;AAED,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAUtE;AAED,wBAAgB,sBAAsB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CA+BxE;AAMD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAwD9D;AAMD,wBAAgB,iBAAiB,IAAI,MAAM,CA0F1C;AAMD,wBAAgB,mBAAmB,IAAI,MAAM,CA+F5C;AAMD,wBAAgB,+BAA+B,IAAI,MAAM,CAkHxD;AAMD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAUhG;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAYpG;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAWpG"}
1
+ {"version":3,"file":"auth-generator.d.ts","sourceRoot":"","sources":["../../../src/core/scaffold/auth-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,eAAe,EAAc,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAE/F,KAAK,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;AAMlD,wBAAgB,kBAAkB,IAAI,MAAM,CA8B3C;AAMD,wBAAgB,uBAAuB,CACrC,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,WAAW,GACpB,MAAM,CA8IR;AAMD,wBAAgB,mBAAmB,IAAI,MAAM,CAwE5C;AAMD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,WAAW,GACpB,MAAM,CA+HR;AAMD,wBAAgB,uBAAuB,IAAI,MAAM,CA+GhD;AAMD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,WAAW,GACpB,MAAM,CAiJR;AAMD,wBAAgB,uBAAuB,IAAI,MAAM,CAyEhD;AAMD,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAuChG;AAED,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAUtE;AAED,wBAAgB,sBAAsB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CA8BxE;AAMD,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAoDzD;AAMD,wBAAgB,iBAAiB,IAAI,MAAM,CA0F1C;AAMD,wBAAgB,mBAAmB,IAAI,MAAM,CA+F5C;AAMD,wBAAgB,+BAA+B,IAAI,MAAM,CAkHxD;AAMD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAUhG;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAYpG;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAWpG"}
@@ -14,7 +14,7 @@ exports.generateJwtHelperPython = generateJwtHelperPython;
14
14
  exports.generateBFFAuthLoginRoute = generateBFFAuthLoginRoute;
15
15
  exports.generateBFFAuthLogoutRoute = generateBFFAuthLogoutRoute;
16
16
  exports.generateBFFAuthMeRoute = generateBFFAuthMeRoute;
17
- exports.generateMiddleware = generateMiddleware;
17
+ exports.generateProxy = generateProxy;
18
18
  exports.generateLoginPage = generateLoginPage;
19
19
  exports.generateAuthContext = generateAuthContext;
20
20
  exports.generateBFFCallFunctionWithAuth = generateBFFCallFunctionWithAuth;
@@ -365,7 +365,7 @@ namespace Functions.Auth
365
365
  public async Task<HttpResponseData> Me(
366
366
  [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "auth/me")] HttpRequestData request)
367
367
  {
368
- var (principal, errorResponse) = JwtHelper.Authorize(request);
368
+ var (principal, errorResponse) = await JwtHelper.Authorize(request);
369
369
  if (errorResponse != null) return errorResponse;
370
370
 
371
371
  var response = request.CreateResponse(System.Net.HttpStatusCode.OK);
@@ -392,7 +392,9 @@ namespace Functions.Auth
392
392
 
393
393
  public class LoginRequest
394
394
  {
395
+ [System.Text.Json.Serialization.JsonPropertyName("loginId")]
395
396
  public string LoginId { get; set; } = "";
397
+ [System.Text.Json.Serialization.JsonPropertyName("password")]
396
398
  public string Password { get; set; } = "";
397
399
  }
398
400
  }
@@ -407,6 +409,7 @@ using System.IdentityModel.Tokens.Jwt;
407
409
  using System.Security.Claims;
408
410
  using System.Text;
409
411
  using System.Text.Json;
412
+ using System.Threading.Tasks;
410
413
  using Microsoft.Azure.Functions.Worker.Http;
411
414
  using Microsoft.IdentityModel.Tokens;
412
415
 
@@ -488,21 +491,21 @@ namespace Functions.Auth
488
491
  }
489
492
  }
490
493
 
491
- public static (JwtPayload?, HttpResponseData?) Authorize(
494
+ public static async Task<(JwtPayload?, HttpResponseData?)> Authorize(
492
495
  HttpRequestData request, params string[] requiredRoles)
493
496
  {
494
497
  var payload = ValidateToken(request);
495
498
  if (payload == null)
496
499
  {
497
500
  var unauthorized = request.CreateResponse(System.Net.HttpStatusCode.Unauthorized);
498
- unauthorized.WriteAsJsonAsync(new { error = "Unauthorized" }).Wait();
501
+ await unauthorized.WriteAsJsonAsync(new { error = "Unauthorized" });
499
502
  return (null, unauthorized);
500
503
  }
501
504
 
502
505
  if (requiredRoles.Length > 0 && !requiredRoles.Any(r => payload.Roles.Contains(r)))
503
506
  {
504
507
  var forbidden = request.CreateResponse(System.Net.HttpStatusCode.Forbidden);
505
- forbidden.WriteAsJsonAsync(new { error = "Forbidden" }).Wait();
508
+ await forbidden.WriteAsJsonAsync(new { error = "Forbidden" });
506
509
  return (null, forbidden);
507
510
  }
508
511
 
@@ -742,9 +745,8 @@ function generateBFFAuthLoginRoute(projectName, sharedPackageName) {
742
745
  return `import { NextRequest, NextResponse } from 'next/server';
743
746
  import { LoginRequest, LoginResponse } from '${sharedPackageName}';
744
747
 
745
- const FUNCTIONS_BASE_URL = process.env.BACKEND_FUNCTIONS_BASE_URL || process.env.FUNCTIONS_BASE_URL || 'http://localhost:7071';
746
-
747
748
  export async function POST(request: NextRequest) {
749
+ const FUNCTIONS_BASE_URL = process.env.BACKEND_FUNCTIONS_BASE_URL || process.env.FUNCTIONS_BASE_URL || 'http://localhost:7071';
748
750
  try {
749
751
  const body = await request.json();
750
752
  const validated = LoginRequest.parse(body);
@@ -793,9 +795,8 @@ function generateBFFAuthMeRoute(sharedPackageName) {
793
795
  return `import { NextResponse } from 'next/server';
794
796
  import { headers } from 'next/headers';
795
797
 
796
- const FUNCTIONS_BASE_URL = process.env.BACKEND_FUNCTIONS_BASE_URL || process.env.FUNCTIONS_BASE_URL || 'http://localhost:7071';
797
-
798
798
  export async function GET() {
799
+ const FUNCTIONS_BASE_URL = process.env.BACKEND_FUNCTIONS_BASE_URL || process.env.FUNCTIONS_BASE_URL || 'http://localhost:7071';
799
800
  try {
800
801
  const reqHeaders = await headers();
801
802
  const authorization = reqHeaders.get('authorization');
@@ -822,9 +823,9 @@ export async function GET() {
822
823
  `;
823
824
  }
824
825
  // ============================================================
825
- // 9. Next.js Middleware
826
+ // 9. Next.js Proxy (formerly Middleware)
826
827
  // ============================================================
827
- function generateMiddleware(projectName) {
828
+ function generateProxy(projectName) {
828
829
  const cookieName = projectName.replace(/^@[^/]+\//, '').replace(/[^a-z0-9-]/g, '-') + '-auth-token';
829
830
  return `import { NextResponse } from 'next/server';
830
831
  import type { NextRequest } from 'next/server';
@@ -832,7 +833,7 @@ import type { NextRequest } from 'next/server';
832
833
  const AUTH_COOKIE_NAME = '${cookieName}';
833
834
  const PUBLIC_PATHS = ['/login', '/api/auth/login', '/api/auth/logout'];
834
835
 
835
- export function middleware(request: NextRequest) {
836
+ export function proxy(request: NextRequest) {
836
837
  const { pathname } = request.nextUrl;
837
838
 
838
839
  // ๅ…ฌ้–‹ใƒ‘ใ‚นใƒป้™็š„ใ‚ขใ‚ปใƒƒใƒˆใฏใ‚นใ‚ญใƒƒใƒ—
@@ -850,7 +851,7 @@ export function middleware(request: NextRequest) {
850
851
  return NextResponse.redirect(new URL('/login', request.url));
851
852
  }
852
853
 
853
- // JWT ๆœ‰ๅŠนๆœŸ้™ใฎ็ฐกๆ˜“ใƒใ‚งใƒƒใ‚ฏ๏ผˆ็ฝฒๅๆคœ่จผใชใ— = Edge Runtime ไบ’ๆ›๏ผ‰
854
+ // JWT ๆœ‰ๅŠนๆœŸ้™ใฎ็ฐกๆ˜“ใƒใ‚งใƒƒใ‚ฏ๏ผˆ็ฝฒๅๆคœ่จผใชใ—๏ผ‰
854
855
  try {
855
856
  const payload = JSON.parse(atob(token.split('.')[1]));
856
857
  if (payload.exp && payload.exp * 1000 < Date.now()) {
@@ -875,10 +876,6 @@ export function middleware(request: NextRequest) {
875
876
  request: { headers: requestHeaders },
876
877
  });
877
878
  }
878
-
879
- export const config = {
880
- matcher: ['/((?!_next/static|_next/image|favicon.ico).*)'],
881
- };
882
879
  `;
883
880
  }
884
881
  // ============================================================
@@ -1131,7 +1128,7 @@ export async function callFunction<TInput = any, TOutput = any>(
1131
1128
  const url = functionsBaseUrl + path;
1132
1129
  console.log(\`[BFF] \${method} \${url}\`);
1133
1130
 
1134
- // Authorization ใƒ˜ใƒƒใƒ€ใƒผใฎ่ปข้€๏ผˆMiddleware ใŒ cookie โ†’ Authorization ใซๅค‰ๆ›ๆธˆใฟ๏ผ‰
1131
+ // Authorization ใƒ˜ใƒƒใƒ€ใƒผใฎ่ปข้€๏ผˆProxy ใŒ cookie โ†’ Authorization ใซๅค‰ๆ›ๆธˆใฟ๏ผ‰
1135
1132
  const fetchHeaders: Record<string, string> = {
1136
1133
  'Content-Type': 'application/json',
1137
1134
  };
@@ -1223,10 +1220,10 @@ function generateAuthGuardCSharp(policy, operation) {
1223
1220
  : (policy.write || policy.roles || []);
1224
1221
  if (roles.length > 0) {
1225
1222
  const rolesStr = roles.map(r => `"${r}"`).join(', ');
1226
- return ` var (principal, errorResponse) = JwtHelper.Authorize(request, ${rolesStr});
1223
+ return ` var (principal, errorResponse) = await JwtHelper.Authorize(request, ${rolesStr});
1227
1224
  if (errorResponse != null) return errorResponse;`;
1228
1225
  }
1229
- return ` var (principal, errorResponse) = JwtHelper.Authorize(request);
1226
+ return ` var (principal, errorResponse) = await JwtHelper.Authorize(request);
1230
1227
  if (errorResponse != null) return errorResponse;`;
1231
1228
  }
1232
1229
  /**