@map-colonies/openapi-helpers 4.0.0 → 5.0.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.
Files changed (36) hide show
  1. package/dist/cli/entrypoint.d.mts +1 -0
  2. package/dist/cli/entrypoint.d.mts.map +1 -0
  3. package/dist/cli/entrypoint.mjs +2 -2
  4. package/dist/cli/entrypoint.mjs.map +1 -1
  5. package/dist/common/constants.d.ts +1 -0
  6. package/dist/common/constants.d.ts.map +1 -0
  7. package/dist/common/types.d.ts +1 -0
  8. package/dist/common/types.d.ts.map +1 -0
  9. package/dist/generator/generateErrors.d.ts +10 -0
  10. package/dist/generator/generateErrors.d.ts.map +1 -0
  11. package/dist/generator/{generateErrors.mjs → generateErrors.js} +56 -13
  12. package/dist/generator/generateErrors.js.map +1 -0
  13. package/dist/generator/{generateTypes.d.mts → generateTypes.d.ts} +5 -0
  14. package/dist/generator/generateTypes.d.ts.map +1 -0
  15. package/dist/generator/generateTypes.js +66 -0
  16. package/dist/generator/generateTypes.js.map +1 -0
  17. package/dist/generator/index.d.ts +3 -0
  18. package/dist/generator/index.d.ts.map +1 -0
  19. package/dist/generator/index.js +19 -0
  20. package/dist/generator/index.js.map +1 -0
  21. package/dist/requestSender/requestSender.d.ts +6 -4
  22. package/dist/requestSender/requestSender.d.ts.map +1 -0
  23. package/dist/requestSender/requestSender.js +5 -4
  24. package/dist/requestSender/requestSender.js.map +1 -1
  25. package/dist/requestSender/types.d.ts +5 -0
  26. package/dist/requestSender/types.d.ts.map +1 -0
  27. package/dist/typedRequestHandler/typedRequestHandler.d.ts +2 -0
  28. package/dist/typedRequestHandler/typedRequestHandler.d.ts.map +1 -0
  29. package/package.json +46 -61
  30. package/dist/generator/generateErrors.d.mts +0 -5
  31. package/dist/generator/generateErrors.mjs.map +0 -1
  32. package/dist/generator/generateTypes.mjs +0 -23
  33. package/dist/generator/generateTypes.mjs.map +0 -1
  34. package/dist/generator/index.d.mts +0 -2
  35. package/dist/generator/index.mjs +0 -3
  36. package/dist/generator/index.mjs.map +0 -1
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
2
  export {};
3
+ //# sourceMappingURL=entrypoint.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entrypoint.d.mts","sourceRoot":"","sources":["../../src/cli/entrypoint.mts"],"names":[],"mappings":""}
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { setTimeout as sleep } from 'node:timers/promises';
3
3
  import { program } from '@commander-js/extra-typings';
4
- import { generateTypes } from '../generator/generateTypes.mjs';
5
- import { generateErrors } from '../generator/generateErrors.mjs';
4
+ import { generateTypes } from '../generator/generateTypes.js';
5
+ import { generateErrors } from '../generator/generateErrors.js';
6
6
  import ora from 'ora';
7
7
  import { PACKAGE_VERSION } from '../common/constants.js';
8
8
  const errorOutput = ['all', 'map', 'classes'];
@@ -1 +1 @@
1
- {"version":3,"file":"entrypoint.mjs","sourceRoot":"","sources":["../../src/cli/entrypoint.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entrypoint.mjs","sourceRoot":"","sources":["../../src/cli/entrypoint.mts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  declare const PACKAGE_VERSION: string;
2
2
  export { PACKAGE_VERSION };
3
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,eAAe,QAAmC,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -13,3 +13,4 @@ export type PathsTemplate = Record<string, {
13
13
  } & {
14
14
  [key in Methods]?: OperationsTemplate;
15
15
  }>;
16
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAClE,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,WAAW,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAEpF,MAAM,MAAM,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAEjG,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAErD,MAAM,MAAM,aAAa,GAAG,MAAM,CAChC,MAAM,EACN;IACE,UAAU,EAAE;QACV,KAAK,CAAC,EAAE,GAAG,CAAC;QACZ,MAAM,CAAC,EAAE,GAAG,CAAC;QACb,IAAI,CAAC,EAAE,GAAG,CAAC;QACX,MAAM,CAAC,EAAE,GAAG,CAAC;KACd,CAAC;CACH,GAAG;KACD,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,kBAAkB;CACtC,CACF,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Generates TypeScript error classes and an optional error mapping from an OpenAPI specification file and writes them to the specified destination path.
3
+ * @public
4
+ */
5
+ export declare function generateErrors(openapiPath: string, destinationPath: string, options: {
6
+ shouldFormat?: boolean;
7
+ includeMapping?: boolean;
8
+ includeErrorClasses?: boolean;
9
+ }): Promise<void>;
10
+ //# sourceMappingURL=generateErrors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateErrors.d.ts","sourceRoot":"","sources":["../../src/generator/generateErrors.ts"],"names":[],"mappings":"AAsCA;;;GAGG;AACH,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE;IACP,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,GACA,OAAO,CAAC,IAAI,CAAC,CAuFf"}
@@ -1,8 +1,47 @@
1
- import fs from 'node:fs/promises';
2
- import path from 'node:path';
3
- import { dereference } from '@apidevtools/json-schema-ref-parser';
4
- import { format, resolveConfig } from 'prettier';
5
- import * as changeCase from 'change-case';
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.generateErrors = generateErrors;
40
+ const promises_1 = __importDefault(require("node:fs/promises"));
41
+ const node_path_1 = __importDefault(require("node:path"));
42
+ const json_schema_ref_parser_1 = require("@apidevtools/json-schema-ref-parser");
43
+ const prettier_1 = require("prettier");
44
+ const changeCase = __importStar(require("change-case"));
6
45
  const ESLINT_DISABLE = '/* eslint-disable */\n';
7
46
  const FILE_HEADER = `${ESLINT_DISABLE}// This file was auto-generated. Do not edit manually.
8
47
  // To update, run the error generation script again.\n\n`;
@@ -29,8 +68,12 @@ function buildErrorMapping(errorCodes) {
29
68
  .map((code) => `'${code}': '${code}'`)
30
69
  .join(', ');
31
70
  }
32
- export async function generateErrors(openapiPath, destinationPath, options) {
33
- const openapi = await dereference(openapiPath);
71
+ /**
72
+ * Generates TypeScript error classes and an optional error mapping from an OpenAPI specification file and writes them to the specified destination path.
73
+ * @public
74
+ */
75
+ async function generateErrors(openapiPath, destinationPath, options) {
76
+ const openapi = await (0, json_schema_ref_parser_1.dereference)(openapiPath);
34
77
  if (openapi.paths === undefined) {
35
78
  console.error('No paths found in the OpenAPI document.');
36
79
  process.exit(1);
@@ -94,11 +137,11 @@ export async function generateErrors(openapiPath, destinationPath, options) {
94
137
  errorFile += ` export const API_ERRORS_MAP = { ${buildErrorMapping(errorCodes)} } as const;\n`;
95
138
  }
96
139
  if (options.shouldFormat === true) {
97
- const prettierOptions = await resolveConfig('./src/index.ts');
98
- errorFile = await format(errorFile, { ...prettierOptions, parser: 'typescript' });
140
+ const prettierOptions = await (0, prettier_1.resolveConfig)('./src/index.ts');
141
+ errorFile = await (0, prettier_1.format)(errorFile, { ...prettierOptions, parser: 'typescript' });
99
142
  }
100
- const directory = path.dirname(destinationPath);
101
- await fs.mkdir(directory, { recursive: true });
102
- await fs.writeFile(destinationPath, errorFile);
143
+ const directory = node_path_1.default.dirname(destinationPath);
144
+ await promises_1.default.mkdir(directory, { recursive: true });
145
+ await promises_1.default.writeFile(destinationPath, errorFile);
103
146
  }
104
- //# sourceMappingURL=generateErrors.mjs.map
147
+ //# sourceMappingURL=generateErrors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateErrors.js","sourceRoot":"","sources":["../../src/generator/generateErrors.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
  import { SchemaObject, TransformNodeOptions, TransformObject } from 'openapi-typescript';
3
3
  import { TypeNode } from 'typescript';
4
+ /**
5
+ * Generates TypeScript types from an OpenAPI specification file and writes them to the specified destination path.
6
+ * @public
7
+ */
4
8
  export declare function generateTypes(openapiPath: string, destinationPath: string, options: {
5
9
  shouldFormat?: boolean;
6
10
  addTypedRequestHandler?: boolean;
7
11
  inject?: string;
8
12
  transform?: (schemaObject: SchemaObject, metadata: TransformNodeOptions) => TypeNode | TransformObject | undefined;
9
13
  }): Promise<void>;
14
+ //# sourceMappingURL=generateTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateTypes.d.ts","sourceRoot":"","sources":["../../src/generator/generateTypes.ts"],"names":[],"mappings":";AAGA,OAAkB,EAAe,YAAY,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACjH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAUtC;;;GAGG;AACH,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE;IACP,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,oBAAoB,KAAK,QAAQ,GAAG,eAAe,GAAG,SAAS,CAAC;CACpH,GACA,OAAO,CAAC,IAAI,CAAC,CAkBf"}
@@ -0,0 +1,66 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
37
+ return (mod && mod.__esModule) ? mod : { "default": mod };
38
+ };
39
+ Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.generateTypes = generateTypes;
41
+ const promises_1 = __importDefault(require("node:fs/promises"));
42
+ const prettier_1 = require("prettier");
43
+ const openapi_typescript_1 = __importStar(require("openapi-typescript"));
44
+ const ESLINT_DISABLE = '/* eslint-disable */\n';
45
+ const FILE_HEADER = `${ESLINT_DISABLE}// This file was auto-generated. Do not edit manually.
46
+ // To update, run the error generation script again.\n\n`;
47
+ const typedRequestHandlerImport = "import type { TypedRequestHandlers as ImportedTypedRequestHandlers } from '@map-colonies/openapi-helpers/typedRequestHandler';\n";
48
+ const exportTypedRequestHandlers = 'export type TypedRequestHandlers = ImportedTypedRequestHandlers<paths, operations>;\n';
49
+ /**
50
+ * Generates TypeScript types from an OpenAPI specification file and writes them to the specified destination path.
51
+ * @public
52
+ */
53
+ async function generateTypes(openapiPath, destinationPath, options) {
54
+ const ast = await (0, openapi_typescript_1.default)(await promises_1.default.readFile(openapiPath, 'utf-8'), { exportType: true, inject: options.inject, transform: options.transform });
55
+ let content = (0, openapi_typescript_1.astToString)(ast);
56
+ if (options.addTypedRequestHandler === true) {
57
+ content = typedRequestHandlerImport + content + exportTypedRequestHandlers;
58
+ }
59
+ content = FILE_HEADER + content;
60
+ if (options.shouldFormat === true) {
61
+ const prettierOptions = await (0, prettier_1.resolveConfig)('./src/index.ts');
62
+ content = await (0, prettier_1.format)(content, { ...prettierOptions, parser: 'typescript' });
63
+ }
64
+ await promises_1.default.writeFile(destinationPath, content);
65
+ }
66
+ //# sourceMappingURL=generateTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateTypes.js","sourceRoot":"","sources":["../../src/generator/generateTypes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,sCA2BC;AA5CD,gEAAkC;AAClC,uCAAiD;AACjD,yEAAiH;AAGjH,MAAM,cAAc,GAAG,wBAAwB,CAAC;AAChD,MAAM,WAAW,GAAG,GAAG,cAAc;yDACoB,CAAC;AAE1D,MAAM,yBAAyB,GAC7B,kIAAkI,CAAC;AACrI,MAAM,0BAA0B,GAAG,uFAAuF,CAAC;AAE3H;;;GAGG;AACI,KAAK,UAAU,aAAa,CACjC,WAAmB,EACnB,eAAuB,EACvB,OAKC;IAED,MAAM,GAAG,GAAG,MAAM,IAAA,4BAAS,EAAC,MAAM,kBAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAEjJ,IAAI,OAAO,GAAG,IAAA,gCAAW,EAAC,GAAG,CAAC,CAAC;IAE/B,IAAI,OAAO,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,GAAG,yBAAyB,GAAG,OAAO,GAAG,0BAA0B,CAAC;IAC7E,CAAC;IAED,OAAO,GAAG,WAAW,GAAG,OAAO,CAAC;IAEhC,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,MAAM,IAAA,wBAAa,EAAC,gBAAgB,CAAC,CAAC;QAE9D,OAAO,GAAG,MAAM,IAAA,iBAAM,EAAC,OAAO,EAAE,EAAE,GAAG,eAAe,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,kBAAE,CAAC,SAAS,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './generateTypes.js';
2
+ export * from './generateErrors.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,19 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./generateTypes.js"), exports);
18
+ __exportStar(require("./generateErrors.js"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,sDAAoC"}
@@ -8,10 +8,10 @@ export { RequestSender };
8
8
  *
9
9
  * @template Paths - The type representing the paths defined in the OpenAPI specification.
10
10
  * @template Operations - The type representing the operations defined in the OpenAPI specification.
11
- * @param {string} openapiFilePath - The file path to the OpenAPI specification file.
12
- * @param {express.Application} app - The Express application instance.
13
- * @param {RequestSenderOptions} [options] - Optional configuration options for the request sender.
14
- * @returns {Promise<RequestSender<Paths, Operations>>} A promise that resolves to a RequestSender object.
11
+ * @param openapiFilePath - The file path to the OpenAPI specification file.
12
+ * @param app - The Express application instance.
13
+ * @param options - Optional configuration options for the request sender.
14
+ * @returns A promise that resolves to a RequestSender object.
15
15
  *
16
16
  * @example
17
17
  * ```typescript
@@ -33,5 +33,7 @@ export { RequestSender };
33
33
  * path: '/simple-request'
34
34
  * });
35
35
  * ```
36
+ * @public
36
37
  */
37
38
  export declare function createRequestSender<Paths extends PathsTemplate = never, Operations extends OperationsTemplate = never>(openapiFilePath: Operations extends never ? never : string, app: express.Application, options?: RequestSenderOptions): Promise<RequestSender<Paths, Operations>>;
39
+ //# sourceMappingURL=requestSender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestSender.d.ts","sourceRoot":"","sources":["../../src/requestSender/requestSender.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC,OAAO,EAAE,aAAa,EAAW,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,KAAK,EAAuD,aAAa,EAAiB,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAsFvI,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,SAAS,aAAa,GAAG,KAAK,EAAE,UAAU,SAAS,kBAAkB,GAAG,KAAK,EAC1H,eAAe,EAAE,UAAU,SAAS,KAAK,GAAG,KAAK,GAAG,MAAM,EAC1D,GAAG,EAAE,OAAO,CAAC,WAAW,EACxB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAsB3C"}
@@ -73,10 +73,10 @@ function getOperationsPathAndMethod(openapi) {
73
73
  *
74
74
  * @template Paths - The type representing the paths defined in the OpenAPI specification.
75
75
  * @template Operations - The type representing the operations defined in the OpenAPI specification.
76
- * @param {string} openapiFilePath - The file path to the OpenAPI specification file.
77
- * @param {express.Application} app - The Express application instance.
78
- * @param {RequestSenderOptions} [options] - Optional configuration options for the request sender.
79
- * @returns {Promise<RequestSender<Paths, Operations>>} A promise that resolves to a RequestSender object.
76
+ * @param openapiFilePath - The file path to the OpenAPI specification file.
77
+ * @param app - The Express application instance.
78
+ * @param options - Optional configuration options for the request sender.
79
+ * @returns A promise that resolves to a RequestSender object.
80
80
  *
81
81
  * @example
82
82
  * ```typescript
@@ -98,6 +98,7 @@ function getOperationsPathAndMethod(openapi) {
98
98
  * path: '/simple-request'
99
99
  * });
100
100
  * ```
101
+ * @public
101
102
  */
102
103
  async function createRequestSender(openapiFilePath, app, options = {}) {
103
104
  const fileContent = (0, node_fs_1.readFileSync)(openapiFilePath, 'utf-8');
@@ -1 +1 @@
1
- {"version":3,"file":"requestSender.js","sourceRoot":"","sources":["../../src/requestSender/requestSender.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"requestSender.js","sourceRoot":"","sources":["../../src/requestSender/requestSender.ts"],"names":[],"mappings":"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"}
@@ -86,9 +86,14 @@ export type OperationsNames<Operations extends OperationsTemplate> = keyof Opera
86
86
  type OperationRequestOptional<Operations extends OperationsTemplate, Operation extends OperationsNames<Operations>> = (options?: RequestOptions<Operations[Operation]>) => RequestReturn<Operations[Operation]>;
87
87
  type OperationRequestRequired<Operations extends OperationsTemplate, Operation extends OperationsNames<Operations>> = (options: RequestOptions<Operations[Operation]>) => RequestReturn<Operations[Operation]>;
88
88
  type SendRequest<Paths extends PathsTemplate> = <Path extends keyof Paths, Method extends keyof OmitProperties<Omit<Paths[Path], 'parameters'>, undefined>>(options: PathRequestOptions<Paths, Path, Method>) => RequestReturn<Paths[Path][Method]>;
89
+ /**
90
+ * Represents a request sender that can send requests to an Express application
91
+ * @public
92
+ */
89
93
  export type RequestSender<Paths extends PathsTemplate, Operations extends OperationsTemplate> = Prettify<{
90
94
  sendRequest: SendRequest<Paths>;
91
95
  } & {
92
96
  [operation in OperationsNames<Operations>]: RequiredKeys<RequestOptions<Operations[operation]>> extends OptionalKeys<RequestOptions<Operations[operation]>> ? OperationRequestOptional<Operations, operation> : OperationRequestRequired<Operations, operation>;
93
97
  }>;
94
98
  export {};
99
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/requestSender/types.ts"],"names":[],"mappings":"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"}
@@ -64,6 +64,8 @@ type PathHandlers<Paths extends PathsTemplate> = {
64
64
  * app.get('/example', handlers['GET /example']);
65
65
  * app.post('/exampleOperation', handlers.exampleOperation);
66
66
  * ```
67
+ * @public
67
68
  */
68
69
  export type TypedRequestHandlers<Paths extends PathsTemplate, Operations extends OperationsTemplate> = OperationHandlers<Operations> & PathHandlers<Paths>;
69
70
  export {};
71
+ //# sourceMappingURL=typedRequestHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typedRequestHandler.d.ts","sourceRoot":"","sources":["../../src/typedRequestHandler/typedRequestHandler.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKzE,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,UAAU,EAAE;QAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;KAAE,CAAA;CAAE,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;AAEnH,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,WAAW,EAAE,GAAG,CAAA;CAAE,GACnD,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,GAC/C,CAAC,SAAS;IAAE,WAAW,CAAC,EAAE,GAAG,CAAA;CAAE,GAC7B,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,GAAG,SAAS,GAC/E,SAAS,CAAC;AAEhB,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,UAAU,EAAE;QAAE,KAAK,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;KAAE,CAAA;CAAE,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;AAGvH,KAAK,qBAAqB,CAAC,CAAC,IAAI,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;AAExI,KAAK,iBAAiB,CAAC,UAAU,SAAS,kBAAkB,IAAI;KAC7D,GAAG,IAAI,MAAM,UAAU,GAAG,qBAAqB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CAClE,CAAC;AAEF,KAAK,cAAc,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAEjE,KAAK,uBAAuB,CAAC,KAAK,SAAS,aAAa,IAAI;KACzD,IAAI,IAAI,MAAM,KAAK,GAAG;SACpB,MAAM,IAAI,MAAM,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG;YAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,IAAI,CAAA;SAAE;KAC9G,CAAC,MAAM,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;CACrC,CAAC,MAAM,KAAK,CAAC,CAAC;AAEf,KAAK,YAAY,CAAC,KAAK,SAAS,aAAa,IAAI;KAC9C,CAAC,IAAI,uBAAuB,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,qBAAqB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;CAC3I,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,MAAM,oBAAoB,CAAC,KAAK,SAAS,aAAa,EAAE,UAAU,SAAS,kBAAkB,IAAI,iBAAiB,CAAC,UAAU,CAAC,GAClI,YAAY,CAAC,KAAK,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,48 +1,24 @@
1
1
  {
2
2
  "name": "@map-colonies/openapi-helpers",
3
- "version": "4.0.0",
3
+ "version": "5.0.0",
4
4
  "description": "A package that provides utilities for working with openapi files",
5
+ "type": "commonjs",
5
6
  "exports": {
6
7
  "./requestSender": {
7
- "default": "./dist/requestSender/requestSender.js",
8
- "types": "./dist/requestSender/requestSender.d.ts"
8
+ "types": "./dist/requestSender/requestSender.d.ts",
9
+ "default": "./dist/requestSender/requestSender.js"
9
10
  },
10
11
  "./typedRequestHandler": {
11
- "default": "./dist/typedRequestHandler/typedRequestHandler.js",
12
- "types": "./dist/typedRequestHandler/typedRequestHandler.d.ts"
12
+ "types": "./dist/typedRequestHandler/typedRequestHandler.d.ts",
13
+ "default": "./dist/typedRequestHandler/typedRequestHandler.js"
13
14
  },
14
15
  "./generators": {
15
- "import": "./dist/generator/index.mjs",
16
- "types": "./dist/generator/index.d.mts"
16
+ "types": "./dist/generator/index.d.ts",
17
+ "default": "./dist/generator/index.js"
17
18
  }
18
19
  },
19
20
  "bin": "./dist/cli/entrypoint.mjs",
20
- "scripts": {
21
- "format": "prettier --check .",
22
- "format:fix": "prettier --write .",
23
- "prelint:fix": "npm run format:fix",
24
- "prelint": "npm run format",
25
- "lint": "eslint .",
26
- "lint:fix": "eslint --fix .",
27
- "test": "tsc --project tsconfig.test.json && jest --config=./tests/configurations/jest.config.js",
28
- "prebuild": "npm run clean",
29
- "build": "tsc --project tsconfig.build.json",
30
- "generate:test:types": "npm run build && node dist/generator/generateTypes.mjs tests/openapi3.yaml tests/types.d.ts",
31
- "clean": "rimraf dist",
32
- "prepublish": "npm run build",
33
- "prepack": "npm run build",
34
- "prepare": "husky",
35
- "docs": "typedoc"
36
- },
37
- "repository": {
38
- "type": "git",
39
- "url": "git+https://github.com/MapColonies/openapi-helpers.git"
40
- },
41
- "author": "MapColonies",
42
- "license": "ISC",
43
- "bugs": {
44
- "url": "https://github.com/MapColonies/openapi-helpers/issues"
45
- },
21
+ "repository": "github:MapColonies/infra-packages",
46
22
  "files": [
47
23
  "dist/**/*"
48
24
  ],
@@ -50,19 +26,18 @@
50
26
  "access": "public"
51
27
  },
52
28
  "engines": {
53
- "node": ">=22"
29
+ "node": ">=24"
54
30
  },
55
- "homepage": "https://github.com/MapColonies/openapi-helpers#readme",
56
31
  "dependencies": {
57
32
  "@apidevtools/json-schema-ref-parser": "^14.1.1",
58
33
  "@commander-js/extra-typings": "^14.0.0",
59
- "@map-colonies/read-pkg": "^1.0.0",
60
34
  "change-case": "^5.4.4",
61
35
  "commander": "^14.0.0",
62
- "oas-normalize": "^14.1.2",
36
+ "oas-normalize": "^15.0.0",
63
37
  "ora": "^8.2.0",
64
38
  "ts-essentials": "^10.1.1",
65
- "yaml": "^2.8.0"
39
+ "yaml": "^2.8.0",
40
+ "@map-colonies/read-pkg": "^1.0.0"
66
41
  },
67
42
  "peerDependencies": {
68
43
  "@types/express": "^4.17.21",
@@ -71,27 +46,37 @@
71
46
  "supertest": "^7.0.0"
72
47
  },
73
48
  "devDependencies": {
74
- "@commitlint/cli": "^19.8.1",
75
- "@map-colonies/commitlint-config": "^1.1.1",
76
- "@map-colonies/eslint-config": "^6.0.0",
77
- "@map-colonies/infra-copilot-instructions": "^1.2.0",
78
- "@map-colonies/tsconfig": "^1.0.1",
79
- "@swc/core": "^1.13.2",
80
- "@swc/jest": "^0.2.39",
81
- "@types/jest": "^30.0.0",
82
- "@types/node": "^24.1.0",
83
- "@types/supertest": "^6.0.3",
84
- "body-parser": "^2.2.0",
85
- "commitlint": "^19.8.1",
86
- "eslint": "^9.22.0",
87
- "eslint-plugin-jest": "^28.14.0",
88
- "expect-type": "^1.2.2",
89
- "express": "^5.1.0",
90
- "husky": "^9.1.7",
91
- "jest": "^30.0.5",
92
- "pretty-quick": "^4.2.2",
93
- "rimraf": "^6.0.1",
94
- "typedoc": "^0.28.7",
95
- "typescript": "^5.8.3"
49
+ "@types/supertest": "6.0.2",
50
+ "@types/node": "24.0.0",
51
+ "@types/body-parser": "1.19.6",
52
+ "openapi-types": "12.1.3",
53
+ "body-parser": "2.2.1",
54
+ "eslint": "^9.39.1",
55
+ "express": "5.2.1",
56
+ "rimraf": "^6.1.2",
57
+ "typescript": "5.9.3",
58
+ "vitest": "^4.0.15",
59
+ "@microsoft/api-extractor": "^7.55.2",
60
+ "@map-colonies/eslint-config": "^7.0.0",
61
+ "@map-colonies/tsconfig": "^2.0.0",
62
+ "vitest-config": "^0.0.0"
63
+ },
64
+ "scripts": {
65
+ "test": "vitest run",
66
+ "lint": "eslint .",
67
+ "lint:fix": "eslint --fix .",
68
+ "prebuild": "pnpm run clean",
69
+ "build": "tsc --project tsconfig.build.json",
70
+ "clean": "rimraf dist",
71
+ "check-dist": "publint && attw --profile node16 --pack .",
72
+ "knip": "knip --directory ../.. --workspace packages/openapi-helpers",
73
+ "api:check": "pnpm run handler:api:check && pnpm run sender:api:check && pnpm run generators:api:check",
74
+ "handler:api": "api-extractor run --local --verbose --config ./api-extractor.handler.json",
75
+ "handler:api:check": "api-extractor run --verbose --config ./api-extractor.handler.json",
76
+ "sender:api": "api-extractor run --local --verbose --config ./api-extractor.sender.json",
77
+ "sender:api:check": "api-extractor run --verbose --config ./api-extractor.sender.json",
78
+ "generators:api": "api-extractor run --local --verbose --config ./api-extractor.generators.json",
79
+ "generators:api:check": "api-extractor run --verbose --config ./api-extractor.generators.json",
80
+ "generate:test:types": "pnpm run build && node dist/generator/generateTypes.mjs tests/openapi3.yaml tests/types.d.ts"
96
81
  }
97
- }
82
+ }
@@ -1,5 +0,0 @@
1
- export declare function generateErrors(openapiPath: string, destinationPath: string, options: {
2
- shouldFormat?: boolean;
3
- includeMapping?: boolean;
4
- includeErrorClasses?: boolean;
5
- }): Promise<void>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"generateErrors.mjs","sourceRoot":"","sources":["../../src/generator/generateErrors.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,UAAU,MAAM,aAAa,CAAC;AAG1C,MAAM,cAAc,GAAG,wBAAwB,CAAC;AAChD,MAAM,WAAW,GAAG,GAAG,cAAc;yDACoB,CAAC;AAE1D,SAAS,WAAW,CAAC,IAAY;IAC/B,IAAI,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAE5C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,SAAS,IAAI,OAAO,CAAC;IACvB,CAAC;IAED,OAAO,gBAAgB,SAAS;4BACN,IAAI;;8BAEF,SAAS;;;;;;;;KAQlC,CAAC;AACN,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAuB;IAChD,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;SAC1B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,OAAO,IAAI,GAAG,CAAC;SACrC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,WAAmB,EACnB,eAAuB,EACvB,OAIC;IAED,MAAM,OAAO,GAAG,MAAM,WAAW,CAAW,WAAW,CAAC,CAAC;IAEzD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,SAAS,qBAAqB,CAAC,MAAoB;QACjD,8BAA8B;QAC9B,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;YACxD,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,IAAoB,CAAC;YAE5D,qBAAqB;YACrB,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;gBACtB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC7C,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACrC,qBAAqB,CAAC,SAAyB,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACrC,qBAAqB,CAAC,SAAyB,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACrC,qBAAqB,CAAC,SAAyB,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAgC,EAAE,CAAC;YACtF,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5C,SAAS;YACX,CAAC;YAED,KAAK,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAA+B,EAAE,CAAC;gBAC7G,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7D,SAAS,CAAC,4CAA4C;gBACxD,CAAC;gBAED,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,kBAAkB,CAAC,EAAE,MAAkC,CAAC;gBAC1F,IAAI,MAAM,EAAE,CAAC;oBACX,qBAAqB,CAAC,MAAM,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,SAAS,GAAG,WAAW,CAAC;IAE5B,IAAI,OAAO,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;QACzC,SAAS,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;QACpC,SAAS,IAAI,oCAAoC,iBAAiB,CAAC,UAAU,CAAC,gBAAgB,CAAC;IACjG,CAAC;IAED,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC,gBAAgB,CAAC,CAAC;QAC9D,SAAS,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,EAAE,GAAG,eAAe,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAChD,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE/C,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;AACjD,CAAC"}
@@ -1,23 +0,0 @@
1
- #!/usr/bin/env node
2
- import fs from 'node:fs/promises';
3
- import { format, resolveConfig } from 'prettier';
4
- import openapiTS, { astToString } from 'openapi-typescript';
5
- const ESLINT_DISABLE = '/* eslint-disable */\n';
6
- const FILE_HEADER = `${ESLINT_DISABLE}// This file was auto-generated. Do not edit manually.
7
- // To update, run the error generation script again.\n\n`;
8
- const typedRequestHandlerImport = "import type { TypedRequestHandlers as ImportedTypedRequestHandlers } from '@map-colonies/openapi-helpers/typedRequestHandler';\n";
9
- const exportTypedRequestHandlers = 'export type TypedRequestHandlers = ImportedTypedRequestHandlers<paths, operations>;\n';
10
- export async function generateTypes(openapiPath, destinationPath, options) {
11
- const ast = await openapiTS(await fs.readFile(openapiPath, 'utf-8'), { exportType: true, inject: options.inject, transform: options.transform });
12
- let content = astToString(ast);
13
- if (options.addTypedRequestHandler === true) {
14
- content = typedRequestHandlerImport + content + exportTypedRequestHandlers;
15
- }
16
- content = FILE_HEADER + content;
17
- if (options.shouldFormat === true) {
18
- const prettierOptions = await resolveConfig('./src/index.ts');
19
- content = await format(content, { ...prettierOptions, parser: 'typescript' });
20
- }
21
- await fs.writeFile(destinationPath, content);
22
- }
23
- //# sourceMappingURL=generateTypes.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generateTypes.mjs","sourceRoot":"","sources":["../../src/generator/generateTypes.mts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,SAAS,EAAE,EAAE,WAAW,EAAuD,MAAM,oBAAoB,CAAC;AAGjH,MAAM,cAAc,GAAG,wBAAwB,CAAC;AAChD,MAAM,WAAW,GAAG,GAAG,cAAc;yDACoB,CAAC;AAE1D,MAAM,yBAAyB,GAC7B,kIAAkI,CAAC;AACrI,MAAM,0BAA0B,GAAG,uFAAuF,CAAC;AAE3H,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,WAAmB,EACnB,eAAuB,EACvB,OAKC;IAED,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAEjJ,IAAI,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAE/B,IAAI,OAAO,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,GAAG,yBAAyB,GAAG,OAAO,GAAG,0BAA0B,CAAC;IAC7E,CAAC;IAED,OAAO,GAAG,WAAW,GAAG,OAAO,CAAC;IAEhC,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC,gBAAgB,CAAC,CAAC;QAE9D,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,eAAe,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './generateTypes.mjs';
2
- export * from './generateErrors.mjs';
@@ -1,3 +0,0 @@
1
- export * from './generateTypes.mjs';
2
- export * from './generateErrors.mjs';
3
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/generator/index.mts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC"}