@codewithagents/openapi-server 1.6.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,yCAAyC,CAAA;AAEhD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,CAAA;AAEpE,MAAM,WAAW,YAAY;IAC3B,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAA;IACrB,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAA;IACd,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAA;IACnD,8FAA8F;IAC9F,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CA8BxF"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,CAAA;AAEpE,MAAM,WAAW,YAAY;IAC3B,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAA;IACrB,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAA;IACd,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAA;IACnD,iGAAiG;IACjG,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AA6BD,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAOxF;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAO3F"}
package/dist/config.js CHANGED
@@ -1,30 +1,44 @@
1
- import { loadConfigFile, validateConfigPath, validateInputPath, validateOutputPath, } from '@codewithagents/openapi-gen/config-core';
1
+ import { loadConfigFile, loadConfigsFile, validateConfigPath, validateInputPath, validateOutputPath, } from 'openapi-zod-ts/config-core';
2
2
  export { validateConfigPath, validateInputPath, validateOutputPath };
3
+ function parseServerConfig(raw, base) {
4
+ const framework = raw['framework'];
5
+ if (framework !== undefined &&
6
+ framework !== 'hono' &&
7
+ framework !== 'express' &&
8
+ framework !== 'fastify' &&
9
+ framework !== 'none') {
10
+ throw new Error('"framework" must be one of: "hono", "express", "fastify", or "none"');
11
+ }
12
+ if (raw['input_schema'] !== undefined &&
13
+ (typeof raw['input_schema'] !== 'string' || !raw['input_schema'])) {
14
+ throw new Error('"input_schema" must be a non-empty string path to your Zod schema file');
15
+ }
16
+ return {
17
+ ...base,
18
+ framework: framework,
19
+ input_schema: raw['input_schema'],
20
+ };
21
+ }
3
22
  export async function loadConfig(cwd, configPath) {
4
23
  return loadConfigFile({
5
24
  cwd,
6
25
  configPath,
7
26
  defaultFileName: 'openapi-server.config.json',
8
- parse: (raw) => {
9
- const framework = raw['framework'];
10
- if (framework !== undefined &&
11
- framework !== 'hono' &&
12
- framework !== 'express' &&
13
- framework !== 'fastify' &&
14
- framework !== 'none') {
15
- throw new Error('"framework" must be one of: "hono", "express", "fastify", or "none"');
16
- }
17
- if (raw['input_schema'] !== undefined &&
18
- (typeof raw['input_schema'] !== 'string' || !raw['input_schema'])) {
19
- throw new Error('"input_schema" must be a non-empty string path to your Zod schema file');
20
- }
21
- return {
22
- input_openapi: raw['input_openapi'],
23
- output: raw['output'],
24
- framework: framework,
25
- input_schema: raw['input_schema'],
26
- };
27
- },
27
+ parse: parseServerConfig,
28
+ });
29
+ }
30
+ /**
31
+ * Load a config file and return all configs as a normalized array.
32
+ *
33
+ * Single-spec config: returns a one-element array.
34
+ * Multi-spec config with "projects" key: returns N-element array.
35
+ */
36
+ export async function loadConfigs(cwd, configPath) {
37
+ return loadConfigsFile({
38
+ cwd,
39
+ configPath,
40
+ defaultFileName: 'openapi-server.config.json',
41
+ parse: parseServerConfig,
28
42
  });
29
43
  }
30
44
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,yCAAyC,CAAA;AAEhD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,CAAA;AAapE,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,UAAmB;IAC/D,OAAO,cAAc,CAAe;QAClC,GAAG;QACH,UAAU;QACV,eAAe,EAAE,4BAA4B;QAC7C,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,CAAA;YAClC,IACE,SAAS,KAAK,SAAS;gBACvB,SAAS,KAAK,MAAM;gBACpB,SAAS,KAAK,SAAS;gBACvB,SAAS,KAAK,SAAS;gBACvB,SAAS,KAAK,MAAM,EACpB,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAA;YACxF,CAAC;YACD,IACE,GAAG,CAAC,cAAc,CAAC,KAAK,SAAS;gBACjC,CAAC,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EACjE,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAA;YAC3F,CAAC;YACD,OAAO;gBACL,aAAa,EAAE,GAAG,CAAC,eAAe,CAAW;gBAC7C,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAW;gBAC/B,SAAS,EAAE,SAAgE;gBAC3E,YAAY,EAAE,GAAG,CAAC,cAAc,CAAuB;aACxD,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,CAAA;AAapE,SAAS,iBAAiB,CACxB,GAA4B,EAC5B,IAAqD;IAErD,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,CAAA;IAClC,IACE,SAAS,KAAK,SAAS;QACvB,SAAS,KAAK,MAAM;QACpB,SAAS,KAAK,SAAS;QACvB,SAAS,KAAK,SAAS;QACvB,SAAS,KAAK,MAAM,EACpB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAA;IACxF,CAAC;IACD,IACE,GAAG,CAAC,cAAc,CAAC,KAAK,SAAS;QACjC,CAAC,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EACjE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAA;IAC3F,CAAC;IACD,OAAO;QACL,GAAG,IAAI;QACP,SAAS,EAAE,SAAgE;QAC3E,YAAY,EAAE,GAAG,CAAC,cAAc,CAAuB;KACxD,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,UAAmB;IAC/D,OAAO,cAAc,CAAe;QAClC,GAAG;QACH,UAAU;QACV,eAAe,EAAE,4BAA4B;QAC7C,KAAK,EAAE,iBAAiB;KACzB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAW,EAAE,UAAmB;IAChE,OAAO,eAAe,CAAe;QACnC,GAAG;QACH,UAAU;QACV,eAAe,EAAE,4BAA4B;QAC7C,KAAK,EAAE,iBAAiB;KACzB,CAAC,CAAA;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"AAcA,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgF9E"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"AAiGA,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI9E"}
package/dist/generator.js CHANGED
@@ -1,85 +1,80 @@
1
1
  import { mkdir, readFile, writeFile } from 'node:fs/promises';
2
2
  import { join, relative, resolve } from 'node:path';
3
- import { loadConfig } from './config.js';
3
+ import { parseSpec } from 'openapi-zod-ts';
4
+ import { runProjects } from 'openapi-zod-ts/config-core';
5
+ import { loadConfigs } from './config.js';
6
+ import { generateService } from './plugins/service.js';
7
+ import { generateRouter, generateExpressRouter, generateFastifyRouter } from './plugins/router.js';
4
8
  async function formatTs(content, filePath) {
5
9
  const { format, resolveConfig } = await import('prettier');
6
10
  const config = await resolveConfig(filePath);
7
11
  return format(content, { ...config, parser: 'typescript' });
8
12
  }
9
- import { parseSpec } from '@codewithagents/openapi-gen';
10
- import { generateService } from './plugins/service.js';
11
- import { generateRouter, generateExpressRouter, generateFastifyRouter } from './plugins/router.js';
13
+ /** Pick the framework-specific router generator for a first or second pass. */
14
+ function buildRouterFile(spec, framework, options) {
15
+ if (framework === 'hono')
16
+ return generateRouter(spec, options);
17
+ if (framework === 'express')
18
+ return generateExpressRouter(spec, options);
19
+ return generateFastifyRouter(spec, options);
20
+ }
12
21
  // fallow-ignore-next-line complexity
13
- export async function generate(cwd, configPath) {
14
- console.log('Loading config...');
15
- const config = await loadConfig(cwd, configPath);
22
+ async function generateOne(cwd, config, label) {
16
23
  const inputPath = resolve(cwd, config.input_openapi);
17
24
  const outputDir = resolve(cwd, config.output);
18
25
  const framework = config.framework ?? 'none';
19
- console.log(`Parsing spec: ${inputPath}`);
26
+ const prefix = label !== undefined ? `[${label}] ` : '';
27
+ console.log(`${prefix}Parsing spec: ${inputPath}`);
20
28
  const spec = await parseSpec(inputPath);
21
- const generatedFiles = [];
22
- generatedFiles.push(generateService(spec));
23
- if (framework === 'hono') {
24
- // First pass: generate router without schema validation
25
- generatedFiles.push(generateRouter(spec));
26
- }
27
- else if (framework === 'express') {
28
- // First pass: generate router without schema validation
29
- generatedFiles.push(generateExpressRouter(spec));
29
+ const generatedFiles = [generateService(spec)];
30
+ if (framework !== 'none') {
31
+ generatedFiles.push(buildRouterFile(spec, framework));
30
32
  }
31
- else if (framework === 'fastify') {
32
- // First pass: generate router without schema validation
33
- generatedFiles.push(generateFastifyRouter(spec));
34
- }
35
- console.log(`Writing output to: ${outputDir}`);
33
+ console.log(`${prefix}Writing output to: ${outputDir}`);
36
34
  await mkdir(outputDir, { recursive: true });
37
35
  for (const file of generatedFiles) {
38
36
  const filePath = join(outputDir, file.filename);
39
37
  await writeFile(filePath, await formatTs(file.content, filePath), 'utf-8');
40
- console.log(` ✓ ${file.filename}`);
38
+ console.log(`${prefix} ✓ ${file.filename}`);
41
39
  }
42
40
  // Second pass: if input_schema is configured and file exists, re-generate router with Zod validation
43
- if ((framework === 'hono' || framework === 'express' || framework === 'fastify') &&
44
- config.input_schema !== undefined) {
45
- const schemaPath = resolve(cwd, config.input_schema);
46
- let schemaContent;
47
- try {
48
- schemaContent = await readFile(schemaPath, 'utf-8');
49
- }
50
- catch {
51
- console.log(` ℹ input_schema not found at ${schemaPath}, skipping Zod validation`);
52
- console.log(`Done! Generated ${generatedFiles.length} file(s).`);
53
- return;
54
- }
55
- // Extract exported schema names from the schema file
56
- const exportedSchemas = new Set();
57
- for (const match of schemaContent.matchAll(/^export\s+const\s+(\w+Schema)\b/gm)) {
58
- exportedSchemas.add(match[1]);
59
- }
60
- if (exportedSchemas.size > 0) {
61
- // Compute relative import path from outputDir to schemaPath
62
- const relPath = relative(outputDir, schemaPath).replace(/\\/g, '/');
63
- // Ensure it starts with ./ or ../
64
- const schemaImportPath = relPath.startsWith('.') ? relPath : `./${relPath}`;
65
- // Strip .ts extension for import (use .js for NodeNext compatibility)
66
- const schemaImportPathJs = schemaImportPath.replace(/\.ts$/, '.js');
67
- const routerOptions = { schemaNames: exportedSchemas, schemaImportPath: schemaImportPathJs };
68
- let routerFile;
69
- if (framework === 'hono') {
70
- routerFile = generateRouter(spec, routerOptions);
71
- }
72
- else if (framework === 'express') {
73
- routerFile = generateExpressRouter(spec, routerOptions);
74
- }
75
- else {
76
- routerFile = generateFastifyRouter(spec, routerOptions);
77
- }
78
- const routerPath = join(outputDir, routerFile.filename);
79
- await writeFile(routerPath, await formatTs(routerFile.content, routerPath), 'utf-8');
80
- console.log(` ✓ router.ts (with Zod validation for ${exportedSchemas.size} schema(s))`);
81
- }
41
+ if (framework !== 'none' && config.input_schema !== undefined) {
42
+ await generateSchemaEnhancedRouter(cwd, config, spec, framework, outputDir, prefix);
43
+ }
44
+ console.log(`${prefix}Done! Generated ${generatedFiles.length} file(s).`);
45
+ }
46
+ async function generateSchemaEnhancedRouter(cwd, config, spec, framework, outputDir, prefix) {
47
+ const schemaPath = resolve(cwd, config.input_schema);
48
+ let schemaContent;
49
+ try {
50
+ schemaContent = await readFile(schemaPath, 'utf-8');
51
+ }
52
+ catch {
53
+ console.log(`${prefix} input_schema not found at ${schemaPath}, skipping Zod validation`);
54
+ return;
82
55
  }
83
- console.log(`Done! Generated ${generatedFiles.length} file(s).`);
56
+ // Extract exported schema names from the schema file
57
+ const exportedSchemas = new Set();
58
+ for (const match of schemaContent.matchAll(/^export\s+const\s+(\w+Schema)\b/gm)) {
59
+ exportedSchemas.add(match[1]);
60
+ }
61
+ if (exportedSchemas.size === 0)
62
+ return;
63
+ // Compute relative import path from outputDir to schemaPath
64
+ const relPath = relative(outputDir, schemaPath).replace(/\\/g, '/');
65
+ const schemaImportPath = relPath.startsWith('.') ? relPath : `./${relPath}`;
66
+ const schemaImportPathJs = schemaImportPath.replace(/\.ts$/, '.js');
67
+ const routerFile = buildRouterFile(spec, framework, {
68
+ schemaNames: exportedSchemas,
69
+ schemaImportPath: schemaImportPathJs,
70
+ });
71
+ const routerPath = join(outputDir, routerFile.filename);
72
+ await writeFile(routerPath, await formatTs(routerFile.content, routerPath), 'utf-8');
73
+ console.log(`${prefix} ✓ router.ts (with Zod validation for ${exportedSchemas.size} schema(s))`);
74
+ }
75
+ export async function generate(cwd, configPath) {
76
+ console.log('Loading config...');
77
+ const configs = await loadConfigs(cwd, configPath);
78
+ await runProjects(configs, (config, label) => generateOne(cwd, config, label));
84
79
  }
85
80
  //# sourceMappingURL=generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export type { ServerConfig } from './config.js';
2
- export { loadConfig } from './config.js';
2
+ export { loadConfig, loadConfigs } from './config.js';
3
3
  export { generateService } from './plugins/service.js';
4
4
  export { generateRouter } from './plugins/router.js';
5
5
  export { generate } from './generator.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { loadConfig } from './config.js';
1
+ export { loadConfig, loadConfigs } from './config.js';
2
2
  export { generateService } from './plugins/service.js';
3
3
  export { generateRouter } from './plugins/router.js';
4
4
  export { generate } from './generator.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import type { OpenAPIV3_1 } from 'openapi-types';
2
- import type { GeneratedFile } from '@codewithagents/openapi-gen';
2
+ import type { GeneratedFile } from 'openapi-zod-ts';
3
3
  interface RouterOptions {
4
4
  schemaNames?: Set<string>;
5
5
  schemaImportPath?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/plugins/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAgiBhE,UAAU,aAAa;IACrB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AA8ZD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,WAAW,CAAC,QAAQ,EAC1B,OAAO,CAAC,EAAE,aAAa,GACtB,aAAa,CA0Cf;AAKD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,WAAW,CAAC,QAAQ,EAC1B,OAAO,CAAC,EAAE,aAAa,GACtB,aAAa,CAmCf;AAKD,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,aAAa,CAsCjG"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/plugins/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAiXnD,UAAU,aAAa;IACrB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AA8ZD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,WAAW,CAAC,QAAQ,EAC1B,OAAO,CAAC,EAAE,aAAa,GACtB,aAAa,CA0Cf;AAKD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,WAAW,CAAC,QAAQ,EAC1B,OAAO,CAAC,EAAE,aAAa,GACtB,aAAa,CAmCf;AAKD,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,aAAa,CAsCjG"}
@@ -1,155 +1,8 @@
1
- import { toTypeName } from '@codewithagents/openapi-gen';
2
- const SUPPORTED_METHODS = ['get', 'post', 'put', 'patch', 'delete'];
3
- // ── Helpers ───────────────────────────────────────────────────────────────────
4
- function isRef(obj) {
5
- return typeof obj === 'object' && obj !== null && '$ref' in obj;
6
- }
7
- function refToName(ref) {
8
- const parts = ref.split('/');
9
- return toTypeName(parts[parts.length - 1]);
10
- }
11
- function extractPathParamsFromPath(path) {
12
- const matches = path.match(/\{([^}]+)\}/g);
13
- if (matches === null)
14
- return [];
15
- // Keep raw param names: they are used in c.req.param() which must match
16
- // the actual Hono route pattern (e.g. :job-id requires c.req.param('job-id'))
17
- return matches.map((m) => m.slice(1, -1));
18
- }
1
+ import { SUPPORTED_METHODS, isRef, extractPathParamsFromPath, resolveParam, deriveServiceName, deriveMethodName, getQueryParams, getBodyInfo, } from './shared.js';
19
2
  /** Convert OpenAPI path to Hono path: {id} -> :id */
20
3
  function toHonoPath(openapiPath) {
21
4
  return openapiPath.replace(/\{([^}]+)\}/g, ':$1');
22
5
  }
23
- function resolveParam(p, spec) {
24
- if (!isRef(p))
25
- return p;
26
- const refStr = p.$ref;
27
- const name = refToName(refStr);
28
- const components = spec.components;
29
- if (components?.parameters === undefined)
30
- return undefined;
31
- const resolved = components.parameters[name];
32
- if (resolved === undefined || isRef(resolved))
33
- return undefined;
34
- return resolved;
35
- }
36
- function deriveServiceName(spec) {
37
- const title = spec.info?.title ?? '';
38
- const pascal = title
39
- .replace(/[^a-zA-Z0-9 ]/g, '')
40
- .split(/\s+/)
41
- .filter((s) => s.length > 0)
42
- .map((s) => s.charAt(0).toUpperCase() + s.slice(1))
43
- .join('');
44
- if (pascal.length === 0)
45
- return 'ApiService';
46
- // Guard against numeric-start identifiers (e.g. '1Password Connect' -> '_1PasswordConnect')
47
- const safePascal = /^[0-9]/.test(pascal) ? `_${pascal}` : pascal;
48
- if (safePascal.endsWith('Service'))
49
- return safePascal;
50
- return `${safePascal}Service`;
51
- }
52
- /**
53
- * Converts a raw operationId into a valid camelCase JS identifier.
54
- * Handles kebab-case, snake_case, dots, spaces, parens, braces and other
55
- * non-alphanumeric separators found in real-world OpenAPI specs.
56
- * e.g. "post-applePay-sessions" -> "postApplePaySessions"
57
- * e.g. "calendar.calendars.insert" -> "calendarCalendarsInsert"
58
- * e.g. "Get User Profile" -> "getUserProfile"
59
- * e.g. "forgotPassword(oneTimeCode)" -> "forgotPasswordOneTimeCode"
60
- */
61
- function sanitizeOperationId(id) {
62
- const parts = id
63
- .replace(/'/g, '') // strip apostrophes without splitting ("user's" -> "users")
64
- .split(/[^a-zA-Z0-9]+/) // split on any non-alphanumeric sequence
65
- .filter(Boolean);
66
- if (parts.length === 0)
67
- return 'unknown';
68
- const [first = '', ...rest] = parts;
69
- const camel = first.charAt(0).toLowerCase() +
70
- first.slice(1) +
71
- rest.map((p) => p.charAt(0).toUpperCase() + p.slice(1)).join('');
72
- // If result starts with a digit, prefix with underscore
73
- return /^[0-9]/.test(camel) ? `_${camel}` : camel;
74
- }
75
- function deriveMethodName(operationId, method, path) {
76
- if (operationId !== undefined && operationId.length > 0) {
77
- return sanitizeOperationId(operationId);
78
- }
79
- return deriveOperationName(method, path);
80
- }
81
- function deriveOperationName(method, path) {
82
- const prefixMap = {
83
- get: 'get',
84
- post: 'create',
85
- put: 'update',
86
- patch: 'patch',
87
- delete: 'delete',
88
- };
89
- const prefix = prefixMap[method] ?? method;
90
- const segments = path.replace(/^\/api\/v\d+\//, '').replace(/^\//, '');
91
- const parts = segments.split('/').map((seg) => {
92
- // Handle mixed segments like "{maxLat}.{format}": extract each {param} inside
93
- const paramMatches = seg.match(/\{([^}]+)\}/g);
94
- if (paramMatches !== null && !(seg.startsWith('{') && seg.endsWith('}'))) {
95
- return paramMatches
96
- .map((m) => {
97
- const name = sanitizeOperationId(m.slice(1, -1));
98
- return 'By' + name.charAt(0).toUpperCase() + name.slice(1);
99
- })
100
- .join('');
101
- }
102
- if (seg.startsWith('{') && seg.endsWith('}')) {
103
- const name = seg.slice(1, -1);
104
- const sanitized = sanitizeOperationId(name);
105
- return 'By' + sanitized.charAt(0).toUpperCase() + sanitized.slice(1);
106
- }
107
- return toTypeName(seg);
108
- });
109
- return prefix + parts.join('');
110
- }
111
- /** Normalize a raw query param name to a valid TypeScript identifier.
112
- * Strips trailing [] (array marker), converts separators to camelCase.
113
- */
114
- function normalizeParamName(name) {
115
- // Split on non-alphanumeric sequences to avoid polynomial ReDoS from [^x]+y patterns.
116
- const stripped = name.replace(/\[\]$/, '').replace(/'/g, '');
117
- const parts = stripped.split(/[^a-zA-Z0-9]+/).filter(Boolean);
118
- if (parts.length === 0)
119
- return '_';
120
- const camel = parts
121
- .map((part, i) => (i === 0 ? part : part[0].toUpperCase() + part.slice(1)))
122
- .join('');
123
- return /^[^a-zA-Z_$]/.test(camel) ? `_${camel}` : camel;
124
- }
125
- function schemaToTsType(schema) {
126
- if (schema === undefined || isRef(schema))
127
- return 'string';
128
- const s = schema;
129
- if (s.type === 'number' || s.type === 'integer')
130
- return 'number';
131
- if (s.type === 'boolean')
132
- return 'boolean';
133
- return 'string';
134
- }
135
- function getQueryParams(operation, spec) {
136
- const parameters = operation.parameters;
137
- if (parameters === undefined)
138
- return [];
139
- const result = [];
140
- for (const p of parameters) {
141
- const resolved = resolveParam(p, spec);
142
- if (resolved === undefined || resolved.in !== 'query')
143
- continue;
144
- const schema = resolved.schema;
145
- result.push({
146
- name: normalizeParamName(resolved.name),
147
- tsType: schemaToTsType(schema),
148
- required: resolved.required === true,
149
- });
150
- }
151
- return result;
152
- }
153
6
  /**
154
7
  * Map a schema format string to a Zod chain modifier.
155
8
  * Returns an empty string when no specific format validation is needed.
@@ -369,25 +222,6 @@ function emitHeaderValidation(lines, headerParams, indent, framework) {
369
222
  lines.push(rawFields);
370
223
  lines.push(`${inner}})`);
371
224
  }
372
- function getBodyInfo(operation) {
373
- const requestBody = operation.requestBody;
374
- if (requestBody === undefined)
375
- return undefined;
376
- if (isRef(requestBody))
377
- return { typeName: undefined };
378
- const rb = requestBody;
379
- const content = rb.content;
380
- if (content === undefined)
381
- return { typeName: undefined };
382
- const jsonContent = content['application/json'];
383
- if (jsonContent === undefined || jsonContent.schema === undefined)
384
- return { typeName: undefined };
385
- const schema = jsonContent.schema;
386
- if (isRef(schema)) {
387
- return { typeName: refToName(schema.$ref) };
388
- }
389
- return { typeName: undefined };
390
- }
391
225
  function response200IsVoid(resp) {
392
226
  if (isRef(resp))
393
227
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/plugins/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/plugins/router.ts"],"names":[],"mappings":"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"}