@furystack/rest 8.0.42 → 8.1.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 (54) hide show
  1. package/CHANGELOG.md +71 -0
  2. package/README.md +37 -1
  3. package/esm/api-endpoint-schema.d.ts +47 -2
  4. package/esm/api-endpoint-schema.d.ts.map +1 -1
  5. package/esm/index.d.ts +4 -1
  6. package/esm/index.d.ts.map +1 -1
  7. package/esm/index.js +4 -1
  8. package/esm/index.js.map +1 -1
  9. package/esm/openapi-document.d.ts +303 -0
  10. package/esm/openapi-document.d.ts.map +1 -0
  11. package/esm/openapi-document.js +2 -0
  12. package/esm/openapi-document.js.map +1 -0
  13. package/esm/openapi-resolve-refs.d.ts +20 -0
  14. package/esm/openapi-resolve-refs.d.ts.map +1 -0
  15. package/esm/openapi-resolve-refs.js +68 -0
  16. package/esm/openapi-resolve-refs.js.map +1 -0
  17. package/esm/openapi-resolve-refs.spec.d.ts +2 -0
  18. package/esm/openapi-resolve-refs.spec.d.ts.map +1 -0
  19. package/esm/openapi-resolve-refs.spec.js +294 -0
  20. package/esm/openapi-resolve-refs.spec.js.map +1 -0
  21. package/esm/openapi-to-rest-api.d.ts +197 -0
  22. package/esm/openapi-to-rest-api.d.ts.map +1 -0
  23. package/esm/openapi-to-rest-api.js +2 -0
  24. package/esm/openapi-to-rest-api.js.map +1 -0
  25. package/esm/openapi-to-rest-api.spec.d.ts +2 -0
  26. package/esm/openapi-to-rest-api.spec.d.ts.map +1 -0
  27. package/esm/openapi-to-rest-api.spec.js +665 -0
  28. package/esm/openapi-to-rest-api.spec.js.map +1 -0
  29. package/esm/openapi-to-schema.d.ts +24 -0
  30. package/esm/openapi-to-schema.d.ts.map +1 -0
  31. package/esm/openapi-to-schema.js +145 -0
  32. package/esm/openapi-to-schema.js.map +1 -0
  33. package/esm/openapi-to-schema.spec.d.ts +2 -0
  34. package/esm/openapi-to-schema.spec.d.ts.map +1 -0
  35. package/esm/openapi-to-schema.spec.js +610 -0
  36. package/esm/openapi-to-schema.spec.js.map +1 -0
  37. package/esm/rest-api.d.ts +21 -4
  38. package/esm/rest-api.d.ts.map +1 -1
  39. package/esm/swagger-document.d.ts +2 -195
  40. package/esm/swagger-document.d.ts.map +1 -1
  41. package/esm/swagger-document.js +2 -1
  42. package/esm/swagger-document.js.map +1 -1
  43. package/package.json +3 -3
  44. package/src/api-endpoint-schema.ts +56 -3
  45. package/src/index.ts +4 -1
  46. package/src/openapi-document.ts +328 -0
  47. package/src/openapi-resolve-refs.spec.ts +324 -0
  48. package/src/openapi-resolve-refs.ts +71 -0
  49. package/src/openapi-to-rest-api.spec.ts +823 -0
  50. package/src/openapi-to-rest-api.ts +263 -0
  51. package/src/openapi-to-schema.spec.ts +707 -0
  52. package/src/openapi-to-schema.ts +163 -0
  53. package/src/rest-api.ts +26 -5
  54. package/src/swagger-document.ts +2 -220
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi-to-rest-api.spec.js","sourceRoot":"","sources":["../src/openapi-to-rest-api.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { ApiEndpointSchema } from './api-endpoint-schema.js';
2
+ import type { OpenApiDocument } from './openapi-document.js';
3
+ /**
4
+ * Converts an OpenAPI `{param}` path format to FuryStack `:param` format.
5
+ *
6
+ * @param path - The OpenAPI path (e.g. `/users/{id}`)
7
+ * @returns The FuryStack path (e.g. `/users/:id`)
8
+ */
9
+ export declare const convertOpenApiPathToFuryStack: (path: string) => string;
10
+ /**
11
+ * Converts an OpenAPI 3.x document to a FuryStack `ApiEndpointSchema`.
12
+ *
13
+ * This enables consuming external OpenAPI documents with FuryStack's runtime pipeline.
14
+ * Preserves operation-level metadata (tags, deprecated, summary, description) and
15
+ * document-level metadata (servers, tags, contact, license, securitySchemes).
16
+ *
17
+ * **Important:** If the document contains `$ref` pointers, call `resolveOpenApiRefs(doc)`
18
+ * first to inline them. This function does not resolve `$ref` on its own.
19
+ *
20
+ * @param doc - The OpenAPI document to convert
21
+ * @returns An ApiEndpointSchema that can be used with FuryStack's API tools
22
+ */
23
+ export declare const openApiToSchema: (doc: OpenApiDocument) => ApiEndpointSchema;
24
+ //# sourceMappingURL=openapi-to-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi-to-schema.d.ts","sourceRoot":"","sources":["../src/openapi-to-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAEtF,OAAO,KAAK,EAAE,eAAe,EAAoD,MAAM,uBAAuB,CAAA;AAO9G;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,GAAI,MAAM,MAAM,KAAG,MAA8C,CAAA;AA0F3G;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,GAAI,KAAK,eAAe,KAAG,iBA4CtD,CAAA"}
@@ -0,0 +1,145 @@
1
+ const HTTP_METHODS = ['get', 'put', 'post', 'delete', 'patch', 'head', 'options', 'trace'];
2
+ const isReferenceObject = (obj) => typeof obj === 'object' && obj !== null && '$ref' in obj;
3
+ /**
4
+ * Converts an OpenAPI `{param}` path format to FuryStack `:param` format.
5
+ *
6
+ * @param path - The OpenAPI path (e.g. `/users/{id}`)
7
+ * @returns The FuryStack path (e.g. `/users/:id`)
8
+ */
9
+ export const convertOpenApiPathToFuryStack = (path) => path.replace(/\{([^{}]+)\}/g, ':$1');
10
+ const extractResponseSchema = (operation) => {
11
+ for (const statusCode of ['200', '201', '2XX', 'default']) {
12
+ const response = operation.responses?.[statusCode];
13
+ if (!response || isReferenceObject(response))
14
+ continue;
15
+ const jsonContent = response.content?.['application/json'];
16
+ if (jsonContent?.schema)
17
+ return jsonContent.schema;
18
+ }
19
+ return undefined;
20
+ };
21
+ const extractSchemaName = (operation, method, path) => {
22
+ if (operation.operationId)
23
+ return operation.operationId;
24
+ const cleanPath = path
25
+ .replace(/\{([^{}]+)\}/g, '$1')
26
+ .replace(/\//g, '_')
27
+ .replace(/^_/, '');
28
+ return `${method}_${cleanPath}`;
29
+ };
30
+ const isOperationAuthenticated = (operation, docSecurity) => {
31
+ if (operation.security !== undefined) {
32
+ return operation.security.length > 0;
33
+ }
34
+ if (docSecurity !== undefined) {
35
+ return docSecurity.length > 0;
36
+ }
37
+ return false;
38
+ };
39
+ const extractSecuritySchemeNames = (operation, docSecurity) => {
40
+ const security = operation.security !== undefined ? operation.security : docSecurity;
41
+ if (!security || security.length === 0)
42
+ return undefined;
43
+ const names = security.flatMap((req) => Object.keys(req));
44
+ return names.length > 0 ? names : undefined;
45
+ };
46
+ const extractDocumentMetadata = (doc) => {
47
+ const metadata = {};
48
+ let hasMetadata = false;
49
+ if (doc.info.summary) {
50
+ metadata.summary = doc.info.summary;
51
+ hasMetadata = true;
52
+ }
53
+ if (doc.info.termsOfService) {
54
+ metadata.termsOfService = doc.info.termsOfService;
55
+ hasMetadata = true;
56
+ }
57
+ if (doc.info.contact) {
58
+ metadata.contact = doc.info.contact;
59
+ hasMetadata = true;
60
+ }
61
+ if (doc.info.license) {
62
+ metadata.license = doc.info.license;
63
+ hasMetadata = true;
64
+ }
65
+ if (doc.servers?.length) {
66
+ metadata.servers = doc.servers;
67
+ hasMetadata = true;
68
+ }
69
+ if (doc.tags?.length) {
70
+ metadata.tags = doc.tags;
71
+ hasMetadata = true;
72
+ }
73
+ if (doc.externalDocs) {
74
+ metadata.externalDocs = doc.externalDocs;
75
+ hasMetadata = true;
76
+ }
77
+ const schemes = doc.components?.securitySchemes;
78
+ if (schemes) {
79
+ const resolved = {};
80
+ for (const [name, scheme] of Object.entries(schemes)) {
81
+ if (!isReferenceObject(scheme)) {
82
+ resolved[name] = scheme;
83
+ }
84
+ }
85
+ if (Object.keys(resolved).length > 0) {
86
+ metadata.securitySchemes = resolved;
87
+ hasMetadata = true;
88
+ }
89
+ }
90
+ return hasMetadata ? metadata : undefined;
91
+ };
92
+ /**
93
+ * Converts an OpenAPI 3.x document to a FuryStack `ApiEndpointSchema`.
94
+ *
95
+ * This enables consuming external OpenAPI documents with FuryStack's runtime pipeline.
96
+ * Preserves operation-level metadata (tags, deprecated, summary, description) and
97
+ * document-level metadata (servers, tags, contact, license, securitySchemes).
98
+ *
99
+ * **Important:** If the document contains `$ref` pointers, call `resolveOpenApiRefs(doc)`
100
+ * first to inline them. This function does not resolve `$ref` on its own.
101
+ *
102
+ * @param doc - The OpenAPI document to convert
103
+ * @returns An ApiEndpointSchema that can be used with FuryStack's API tools
104
+ */
105
+ export const openApiToSchema = (doc) => {
106
+ const endpoints = {};
107
+ if (doc.paths) {
108
+ for (const [openApiPath, pathItemOrRef] of Object.entries(doc.paths)) {
109
+ if (isReferenceObject(pathItemOrRef))
110
+ continue;
111
+ const pathItem = pathItemOrRef;
112
+ const furyStackPath = convertOpenApiPathToFuryStack(openApiPath);
113
+ for (const method of HTTP_METHODS) {
114
+ const operation = pathItem[method];
115
+ if (!operation)
116
+ continue;
117
+ const upperMethod = method.toUpperCase();
118
+ const methodEndpoints = endpoints[upperMethod] ?? {};
119
+ endpoints[upperMethod] = methodEndpoints;
120
+ const responseSchema = extractResponseSchema(operation);
121
+ const schemaName = extractSchemaName(operation, method, openApiPath);
122
+ const securitySchemeNames = extractSecuritySchemeNames(operation, doc.security);
123
+ methodEndpoints[furyStackPath] = {
124
+ path: furyStackPath,
125
+ schema: responseSchema ?? {},
126
+ schemaName,
127
+ isAuthenticated: isOperationAuthenticated(operation, doc.security),
128
+ ...(securitySchemeNames ? { securitySchemes: securitySchemeNames } : {}),
129
+ ...(operation.tags?.length ? { tags: operation.tags } : {}),
130
+ ...(operation.deprecated ? { deprecated: true } : {}),
131
+ ...(operation.summary ? { summary: operation.summary } : {}),
132
+ ...(operation.description ? { description: operation.description } : {}),
133
+ };
134
+ }
135
+ }
136
+ }
137
+ return {
138
+ name: doc.info.title,
139
+ description: doc.info.description ?? '',
140
+ version: doc.info.version,
141
+ metadata: extractDocumentMetadata(doc),
142
+ endpoints,
143
+ };
144
+ };
145
+ //# sourceMappingURL=openapi-to-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi-to-schema.js","sourceRoot":"","sources":["../src/openapi-to-schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=openapi-to-schema.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi-to-schema.spec.d.ts","sourceRoot":"","sources":["../src/openapi-to-schema.spec.ts"],"names":[],"mappings":""}