@skmtc/core 0.0.796 → 0.0.798

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 (109) hide show
  1. package/esm/app/validate.d.ts +32 -0
  2. package/esm/app/validate.d.ts.map +1 -1
  3. package/esm/app/validate.js +32 -0
  4. package/esm/context/CoreContext.d.ts +147 -2
  5. package/esm/context/CoreContext.d.ts.map +1 -1
  6. package/esm/context/CoreContext.js +87 -0
  7. package/esm/context/GenerateContext.d.ts +180 -0
  8. package/esm/context/GenerateContext.d.ts.map +1 -1
  9. package/esm/context/GenerateContext.js +25 -0
  10. package/esm/context/ParseContext.d.ts +6 -0
  11. package/esm/context/ParseContext.d.ts.map +1 -1
  12. package/esm/context/ParseContext.js +6 -0
  13. package/esm/dsl/constants.d.ts +28 -0
  14. package/esm/dsl/constants.d.ts.map +1 -1
  15. package/esm/dsl/constants.js +28 -0
  16. package/esm/oas/_helpers/parseDefault.d.ts +148 -0
  17. package/esm/oas/_helpers/parseDefault.d.ts.map +1 -1
  18. package/esm/oas/_helpers/parseDefault.js +128 -0
  19. package/esm/oas/_helpers/parseEnum.d.ts +124 -0
  20. package/esm/oas/_helpers/parseEnum.d.ts.map +1 -1
  21. package/esm/oas/_helpers/parseEnum.js +104 -0
  22. package/esm/oas/_helpers/parseExample.d.ts +107 -0
  23. package/esm/oas/_helpers/parseExample.d.ts.map +1 -1
  24. package/esm/oas/_helpers/parseExample.js +87 -0
  25. package/esm/oas/_helpers/parseFormat.d.ts +154 -0
  26. package/esm/oas/_helpers/parseFormat.d.ts.map +1 -1
  27. package/esm/oas/_helpers/parseFormat.js +138 -0
  28. package/esm/oas/_helpers/parseNullable.d.ts +127 -0
  29. package/esm/oas/_helpers/parseNullable.d.ts.map +1 -1
  30. package/esm/oas/_helpers/parseNullable.js +113 -0
  31. package/esm/oas/example/toExamplesV3.d.ts +39 -0
  32. package/esm/oas/example/toExamplesV3.d.ts.map +1 -1
  33. package/esm/oas/example/toExamplesV3.js +29 -0
  34. package/esm/oas/object/Object.d.ts +6 -0
  35. package/esm/oas/object/Object.d.ts.map +1 -1
  36. package/esm/oas/object/Object.js +6 -0
  37. package/esm/oas/operation/Operation.d.ts +34 -0
  38. package/esm/oas/operation/Operation.d.ts.map +1 -1
  39. package/esm/oas/operation/Operation.js +14 -0
  40. package/esm/oas/parameter/Parameter.d.ts +3 -0
  41. package/esm/oas/parameter/Parameter.d.ts.map +1 -1
  42. package/esm/oas/parameter/Parameter.js +3 -0
  43. package/esm/oas/ref/ref-types.d.ts +42 -0
  44. package/esm/oas/ref/ref-types.d.ts.map +1 -1
  45. package/esm/oas/ref/ref-types.js +9 -0
  46. package/esm/oas/securitySchemes/security-scheme-types.d.ts +63 -0
  47. package/esm/oas/securitySchemes/security-scheme-types.d.ts.map +1 -1
  48. package/esm/oas/securitySchemes/security-scheme-types.js +15 -0
  49. package/esm/run/toV3JsonDocument.d.ts +90 -0
  50. package/esm/run/toV3JsonDocument.d.ts.map +1 -1
  51. package/esm/run/toV3JsonDocument.js +84 -0
  52. package/esm/types/Results.d.ts +32 -0
  53. package/esm/types/Results.d.ts.map +1 -1
  54. package/esm/types/Results.js +12 -0
  55. package/package.json +1 -1
  56. package/script/app/validate.d.ts +32 -0
  57. package/script/app/validate.d.ts.map +1 -1
  58. package/script/app/validate.js +32 -0
  59. package/script/context/CoreContext.d.ts +147 -2
  60. package/script/context/CoreContext.d.ts.map +1 -1
  61. package/script/context/CoreContext.js +87 -0
  62. package/script/context/GenerateContext.d.ts +180 -0
  63. package/script/context/GenerateContext.d.ts.map +1 -1
  64. package/script/context/GenerateContext.js +25 -0
  65. package/script/context/ParseContext.d.ts +6 -0
  66. package/script/context/ParseContext.d.ts.map +1 -1
  67. package/script/context/ParseContext.js +6 -0
  68. package/script/dsl/constants.d.ts +28 -0
  69. package/script/dsl/constants.d.ts.map +1 -1
  70. package/script/dsl/constants.js +28 -0
  71. package/script/oas/_helpers/parseDefault.d.ts +148 -0
  72. package/script/oas/_helpers/parseDefault.d.ts.map +1 -1
  73. package/script/oas/_helpers/parseDefault.js +128 -0
  74. package/script/oas/_helpers/parseEnum.d.ts +124 -0
  75. package/script/oas/_helpers/parseEnum.d.ts.map +1 -1
  76. package/script/oas/_helpers/parseEnum.js +104 -0
  77. package/script/oas/_helpers/parseExample.d.ts +107 -0
  78. package/script/oas/_helpers/parseExample.d.ts.map +1 -1
  79. package/script/oas/_helpers/parseExample.js +87 -0
  80. package/script/oas/_helpers/parseFormat.d.ts +154 -0
  81. package/script/oas/_helpers/parseFormat.d.ts.map +1 -1
  82. package/script/oas/_helpers/parseFormat.js +138 -0
  83. package/script/oas/_helpers/parseNullable.d.ts +127 -0
  84. package/script/oas/_helpers/parseNullable.d.ts.map +1 -1
  85. package/script/oas/_helpers/parseNullable.js +113 -0
  86. package/script/oas/example/toExamplesV3.d.ts +39 -0
  87. package/script/oas/example/toExamplesV3.d.ts.map +1 -1
  88. package/script/oas/example/toExamplesV3.js +29 -0
  89. package/script/oas/object/Object.d.ts +6 -0
  90. package/script/oas/object/Object.d.ts.map +1 -1
  91. package/script/oas/object/Object.js +6 -0
  92. package/script/oas/operation/Operation.d.ts +34 -0
  93. package/script/oas/operation/Operation.d.ts.map +1 -1
  94. package/script/oas/operation/Operation.js +14 -0
  95. package/script/oas/parameter/Parameter.d.ts +3 -0
  96. package/script/oas/parameter/Parameter.d.ts.map +1 -1
  97. package/script/oas/parameter/Parameter.js +3 -0
  98. package/script/oas/ref/ref-types.d.ts +42 -0
  99. package/script/oas/ref/ref-types.d.ts.map +1 -1
  100. package/script/oas/ref/ref-types.js +9 -0
  101. package/script/oas/securitySchemes/security-scheme-types.d.ts +63 -0
  102. package/script/oas/securitySchemes/security-scheme-types.d.ts.map +1 -1
  103. package/script/oas/securitySchemes/security-scheme-types.js +15 -0
  104. package/script/run/toV3JsonDocument.d.ts +90 -0
  105. package/script/run/toV3JsonDocument.d.ts.map +1 -1
  106. package/script/run/toV3JsonDocument.js +84 -0
  107. package/script/types/Results.d.ts +32 -0
  108. package/script/types/Results.d.ts.map +1 -1
  109. package/script/types/Results.js +12 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../../src/oas/operation/Operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../../src/oas/operation/Operation.ts"],"names":[],"mappings":"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"}
@@ -109,84 +109,98 @@ import { OasObject } from '../object/Object.js';
109
109
  */
110
110
  export class OasOperation {
111
111
  constructor(fields) {
112
+ /** Type identifier for OAS operation objects */
112
113
  Object.defineProperty(this, "oasType", {
113
114
  enumerable: true,
114
115
  configurable: true,
115
116
  writable: true,
116
117
  value: 'operation'
117
118
  });
119
+ /** The API path for this operation */
118
120
  Object.defineProperty(this, "path", {
119
121
  enumerable: true,
120
122
  configurable: true,
121
123
  writable: true,
122
124
  value: void 0
123
125
  });
126
+ /** The HTTP method for this operation */
124
127
  Object.defineProperty(this, "method", {
125
128
  enumerable: true,
126
129
  configurable: true,
127
130
  writable: true,
128
131
  value: void 0
129
132
  });
133
+ /** The parent path item containing this operation */
130
134
  Object.defineProperty(this, "pathItem", {
131
135
  enumerable: true,
132
136
  configurable: true,
133
137
  writable: true,
134
138
  value: void 0
135
139
  });
140
+ /** Unique identifier for the operation */
136
141
  Object.defineProperty(this, "operationId", {
137
142
  enumerable: true,
138
143
  configurable: true,
139
144
  writable: true,
140
145
  value: void 0
141
146
  });
147
+ /** Brief summary of the operation */
142
148
  Object.defineProperty(this, "summary", {
143
149
  enumerable: true,
144
150
  configurable: true,
145
151
  writable: true,
146
152
  value: void 0
147
153
  });
154
+ /** Tags for organizing operations in documentation */
148
155
  Object.defineProperty(this, "tags", {
149
156
  enumerable: true,
150
157
  configurable: true,
151
158
  writable: true,
152
159
  value: void 0
153
160
  });
161
+ /** Detailed description of the operation */
154
162
  Object.defineProperty(this, "description", {
155
163
  enumerable: true,
156
164
  configurable: true,
157
165
  writable: true,
158
166
  value: void 0
159
167
  });
168
+ /** Parameters accepted by this operation */
160
169
  Object.defineProperty(this, "parameters", {
161
170
  enumerable: true,
162
171
  configurable: true,
163
172
  writable: true,
164
173
  value: void 0
165
174
  });
175
+ /** Request body specification for this operation */
166
176
  Object.defineProperty(this, "requestBody", {
167
177
  enumerable: true,
168
178
  configurable: true,
169
179
  writable: true,
170
180
  value: void 0
171
181
  });
182
+ /** Response specifications mapped by status code */
172
183
  Object.defineProperty(this, "responses", {
173
184
  enumerable: true,
174
185
  configurable: true,
175
186
  writable: true,
176
187
  value: void 0
177
188
  });
189
+ /** Security requirements for this operation */
178
190
  Object.defineProperty(this, "security", {
179
191
  enumerable: true,
180
192
  configurable: true,
181
193
  writable: true,
182
194
  value: void 0
183
195
  });
196
+ /** Whether this operation is deprecated */
184
197
  Object.defineProperty(this, "deprecated", {
185
198
  enumerable: true,
186
199
  configurable: true,
187
200
  writable: true,
188
201
  value: void 0
189
202
  });
203
+ /** OpenAPI specification extensions */
190
204
  Object.defineProperty(this, "extensionFields", {
191
205
  enumerable: true,
192
206
  configurable: true,
@@ -182,8 +182,11 @@ export type ParameterFields = {
182
182
  * ```
183
183
  */
184
184
  export declare class OasParameter {
185
+ /** Type identifier for OAS parameter objects */
185
186
  oasType: 'parameter';
187
+ /** The name of the parameter */
186
188
  name: string;
189
+ /** Where the parameter is located (path, query, header, cookie) */
187
190
  location: OasParameterLocation;
188
191
  description?: string | undefined;
189
192
  required?: boolean | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"Parameter.d.ts","sourceRoot":"","sources":["../../../src/oas/parameter/Parameter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Parameter.d.ts","sourceRoot":"","sources":["../../../src/oas/parameter/Parameter.ts"],"names":[],"mappings":"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"}
@@ -145,18 +145,21 @@ import "../../_dnt.polyfills.js";
145
145
  */
146
146
  export class OasParameter {
147
147
  constructor(fields) {
148
+ /** Type identifier for OAS parameter objects */
148
149
  Object.defineProperty(this, "oasType", {
149
150
  enumerable: true,
150
151
  configurable: true,
151
152
  writable: true,
152
153
  value: 'parameter'
153
154
  });
155
+ /** The name of the parameter */
154
156
  Object.defineProperty(this, "name", {
155
157
  enumerable: true,
156
158
  configurable: true,
157
159
  writable: true,
158
160
  value: void 0
159
161
  });
162
+ /** Where the parameter is located (path, query, header, cookie) */
160
163
  Object.defineProperty(this, "location", {
161
164
  enumerable: true,
162
165
  configurable: true,
@@ -1,27 +1,69 @@
1
1
  import * as v from 'valibot';
2
+ /**
3
+ * Data type for OpenAPI schema reference objects.
4
+ *
5
+ * Represents $ref references to schema objects in OpenAPI documents,
6
+ * allowing for component reuse and circular reference handling.
7
+ */
2
8
  export type OasSchemaRefData = {
9
+ /** Type identifier for OAS reference objects */
3
10
  oasType: 'ref';
11
+ /** The type of object being referenced */
4
12
  refType: 'schema';
13
+ /** The reference path (e.g., '#/components/schemas/User') */
5
14
  $ref: string;
15
+ /** Optional summary for the reference */
6
16
  summary?: string;
17
+ /** Optional description for the reference */
7
18
  description?: string;
8
19
  };
20
+ /**
21
+ * Valibot schema for validating schema reference data.
22
+ */
9
23
  export declare const oasSchemaRefData: v.GenericSchema<OasSchemaRefData>;
24
+ /**
25
+ * Data type for OpenAPI response reference objects.
26
+ *
27
+ * Represents $ref references to response objects in OpenAPI documents,
28
+ * enabling response definition reuse across multiple operations.
29
+ */
10
30
  export type OasResponseRefData = {
31
+ /** Type identifier for OAS reference objects */
11
32
  oasType: 'ref';
33
+ /** The type of object being referenced */
12
34
  refType: 'response';
35
+ /** The reference path (e.g., '#/components/responses/NotFound') */
13
36
  $ref: string;
37
+ /** Optional summary for the reference */
14
38
  summary?: string;
39
+ /** Optional description for the reference */
15
40
  description?: string;
16
41
  };
42
+ /**
43
+ * Valibot schema for validating response reference data.
44
+ */
17
45
  export declare const oasResponseRefData: v.GenericSchema<OasResponseRefData>;
46
+ /**
47
+ * Data type for OpenAPI parameter reference objects.
48
+ *
49
+ * Represents $ref references to parameter objects in OpenAPI documents,
50
+ * allowing parameter definitions to be reused across operations.
51
+ */
18
52
  export type OasParameterRefData = {
53
+ /** Type identifier for OAS reference objects */
19
54
  oasType: 'ref';
55
+ /** The type of object being referenced */
20
56
  refType: 'parameter';
57
+ /** The reference path (e.g., '#/components/parameters/PageSize') */
21
58
  $ref: string;
59
+ /** Optional summary for the reference */
22
60
  summary?: string;
61
+ /** Optional description for the reference */
23
62
  description?: string;
24
63
  };
64
+ /**
65
+ * Valibot schema for validating parameter reference data.
66
+ */
25
67
  export declare const oasParameterRefData: v.GenericSchema<OasParameterRefData>;
26
68
  export type OasExampleRefData = {
27
69
  oasType: 'ref';
@@ -1 +1 @@
1
- {"version":3,"file":"ref-types.d.ts","sourceRoot":"","sources":["../../../src/oas/ref/ref-types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,QAAQ,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,CAAC,CAAC,aAAa,CAAC,gBAAgB,CAM7D,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,UAAU,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,CAAC,CAAC,aAAa,CAAC,kBAAkB,CAMjE,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,WAAW,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE,CAAC,CAAC,aAAa,CAAC,mBAAmB,CAMnE,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,SAAS,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,CAAC,CAAC,aAAa,CAAC,iBAAiB,CAM/D,CAAA;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,aAAa,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,CAAC,CAAC,aAAa,CAAC,qBAAqB,CAMvE,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,QAAQ,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,CAAC,CAAC,aAAa,CAAC,gBAAgB,CAM7D,CAAA;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,KAAK,CAAA;IACd,OAAO,EAAE,gBAAgB,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,eAAO,MAAM,wBAAwB,EAAE,CAAC,CAAC,aAAa,CAAC,wBAAwB,CAI7E,CAAA;AAUF,MAAM,MAAM,UAAU,GAClB,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,iBAAiB,GACjB,qBAAqB,GACrB,gBAAgB,GAChB,wBAAwB,CAAA;AAG5B,eAAO,MAAM,UAAU,EAAE,CAAC,CAAC,aAAa,CAAC,UAAU,CASjD,CAAA"}
1
+ {"version":3,"file":"ref-types.d.ts","sourceRoot":"","sources":["../../../src/oas/ref/ref-types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
1
  import { markdown } from '../markdown/markdown-types.js';
2
2
  import * as v from 'valibot';
3
+ /**
4
+ * Valibot schema for validating schema reference data.
5
+ */
3
6
  export const oasSchemaRefData = v.object({
4
7
  oasType: v.literal('ref'),
5
8
  refType: v.literal('schema'),
@@ -7,6 +10,9 @@ export const oasSchemaRefData = v.object({
7
10
  summary: v.optional(v.string()),
8
11
  description: v.optional(markdown)
9
12
  });
13
+ /**
14
+ * Valibot schema for validating response reference data.
15
+ */
10
16
  export const oasResponseRefData = v.object({
11
17
  oasType: v.literal('ref'),
12
18
  refType: v.literal('response'),
@@ -14,6 +20,9 @@ export const oasResponseRefData = v.object({
14
20
  summary: v.optional(v.string()),
15
21
  description: v.optional(markdown)
16
22
  });
23
+ /**
24
+ * Valibot schema for validating parameter reference data.
25
+ */
17
26
  export const oasParameterRefData = v.object({
18
27
  oasType: v.literal('ref'),
19
28
  refType: v.literal('parameter'),
@@ -1,55 +1,118 @@
1
1
  import * as v from 'valibot';
2
+ /**
3
+ * Data type for HTTP authentication security schemes.
4
+ *
5
+ * Represents HTTP authentication mechanisms like Basic, Bearer,
6
+ * and other HTTP authentication schemes as defined in RFC 7235.
7
+ */
2
8
  export type OasHttpSecuritySchemeData = {
9
+ /** Security scheme type identifier */
3
10
  type: 'http';
11
+ /** Human-readable description of the security scheme */
4
12
  description?: string;
13
+ /** HTTP authorization scheme (e.g., 'basic', 'bearer') */
5
14
  scheme: string;
15
+ /** Format hint for bearer tokens (e.g., 'JWT') */
6
16
  bearerFormat?: string;
7
17
  };
18
+ /**
19
+ * Valibot schema for validating HTTP security scheme data.
20
+ */
8
21
  export declare const oasHttpSecuritySchemeData: v.ObjectSchema<{
9
22
  readonly type: v.LiteralSchema<"http", undefined>;
10
23
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
11
24
  readonly scheme: v.StringSchema<undefined>;
12
25
  readonly bearerFormat: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
13
26
  }, undefined>;
27
+ /**
28
+ * Data type for API key authentication security schemes.
29
+ *
30
+ * Represents API key authentication where the key is passed
31
+ * via header, query parameter, or cookie.
32
+ */
14
33
  export type OasApiKeySecuritySchemeData = {
34
+ /** Security scheme type identifier */
15
35
  type: 'apiKey';
36
+ /** Human-readable description of the security scheme */
16
37
  description?: string;
38
+ /** Name of the header, query parameter, or cookie */
17
39
  name: string;
40
+ /** Location where the API key should be sent */
18
41
  in: 'header' | 'query' | 'cookie';
19
42
  };
43
+ /**
44
+ * Valibot schema for validating API key security scheme data.
45
+ */
20
46
  export declare const oasApiKeySecuritySchemeData: v.ObjectSchema<{
21
47
  readonly type: v.LiteralSchema<"apiKey", undefined>;
22
48
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
23
49
  readonly name: v.StringSchema<undefined>;
24
50
  readonly in: v.UnionSchema<[v.LiteralSchema<"header", undefined>, v.LiteralSchema<"query", undefined>, v.LiteralSchema<"cookie", undefined>], undefined>;
25
51
  }, undefined>;
52
+ /**
53
+ * Data type for OAuth2 implicit flow configuration.
54
+ *
55
+ * Represents the implicit OAuth2 flow where tokens are obtained
56
+ * directly from the authorization endpoint without client authentication.
57
+ */
26
58
  export type OasImplicitOAuth2FlowData = {
59
+ /** URL for the OAuth2 authorization endpoint */
27
60
  authorizationUrl: string;
61
+ /** Optional URL for token refresh */
28
62
  refreshUrl: string | undefined;
63
+ /** Available scopes mapped to their descriptions */
29
64
  scopes: Record<string, string>;
30
65
  };
66
+ /**
67
+ * Valibot schema for validating OAuth2 implicit flow data.
68
+ */
31
69
  export declare const oasImplicitOAuth2FlowData: v.ObjectSchema<{
32
70
  readonly authorizationUrl: v.StringSchema<undefined>;
33
71
  readonly refreshUrl: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
34
72
  readonly scopes: v.RecordSchema<v.StringSchema<undefined>, v.StringSchema<undefined>, undefined>;
35
73
  }, undefined>;
74
+ /**
75
+ * Data type for OAuth2 authorization code flow configuration.
76
+ *
77
+ * Represents the authorization code OAuth2 flow, the most secure
78
+ * flow suitable for server-side applications with client authentication.
79
+ */
36
80
  export type OasAuthorizationCodeOAuth2FlowData = {
81
+ /** URL for the OAuth2 authorization endpoint */
37
82
  authorizationUrl: string;
83
+ /** URL for the OAuth2 token endpoint */
38
84
  tokenUrl: string;
85
+ /** Optional URL for token refresh */
39
86
  refreshUrl: string | undefined;
87
+ /** Available scopes mapped to their descriptions */
40
88
  scopes: Record<string, string>;
41
89
  };
90
+ /**
91
+ * Valibot schema for validating OAuth2 authorization code flow data.
92
+ */
42
93
  export declare const oasAuthorizationCodeOAuth2FlowData: v.ObjectSchema<{
43
94
  readonly authorizationUrl: v.StringSchema<undefined>;
44
95
  readonly tokenUrl: v.StringSchema<undefined>;
45
96
  readonly refreshUrl: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
46
97
  readonly scopes: v.RecordSchema<v.StringSchema<undefined>, v.StringSchema<undefined>, undefined>;
47
98
  }, undefined>;
99
+ /**
100
+ * Data type for OAuth2 client credentials flow configuration.
101
+ *
102
+ * Represents the client credentials OAuth2 flow used for
103
+ * server-to-server authentication without user involvement.
104
+ */
48
105
  export type OasClientCredentialsOAuth2FlowData = {
106
+ /** URL for the OAuth2 token endpoint */
49
107
  tokenUrl: string;
108
+ /** Optional URL for token refresh */
50
109
  refreshUrl: string | undefined;
110
+ /** Available scopes mapped to their descriptions */
51
111
  scopes: Record<string, string>;
52
112
  };
113
+ /**
114
+ * Valibot schema for validating OAuth2 client credentials flow data.
115
+ */
53
116
  export declare const oasClientCredentialsOAuth2FlowData: v.ObjectSchema<{
54
117
  readonly tokenUrl: v.StringSchema<undefined>;
55
118
  readonly refreshUrl: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"security-scheme-types.d.ts","sourceRoot":"","sources":["../../../src/oas/securitySchemes/security-scheme-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,yBAAyB;;;;;aAKpC,CAAA;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,QAAQ,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,2BAA2B;;;;;aAKtC,CAAA;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,yBAAyB;;;;aAIpC,CAAA;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,gBAAgB,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,kCAAkC;;;;;aAK7C,CAAA;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,kCAAkC;;;;aAI7C,CAAA;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,yBAAyB;;;;aAIpC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,iBAAiB,CAAC,EAAE,kCAAkC,CAAA;IACtD,iBAAiB,CAAC,EAAE,kCAAkC,CAAA;IACtD,QAAQ,CAAC,EAAE,yBAAyB,CAAA;IACpC,QAAQ,CAAC,EAAE,yBAAyB,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;aAK7B,CAAA;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,QAAQ,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,kBAAkB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;aAItC,CAAA;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,eAAe,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,2BAA2B;;;;aAItC,CAAA;AAEF,MAAM,MAAM,qBAAqB,GAC7B,yBAAyB,GACzB,2BAA2B,GAC3B,2BAA2B,GAC3B,2BAA2B,CAAA;AAE/B,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAKhC,CAAA"}
1
+ {"version":3,"file":"security-scheme-types.d.ts","sourceRoot":"","sources":["../../../src/oas/securitySchemes/security-scheme-types.ts"],"names":[],"mappings":"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"}
@@ -1,27 +1,42 @@
1
1
  import * as v from 'valibot';
2
+ /**
3
+ * Valibot schema for validating HTTP security scheme data.
4
+ */
2
5
  export const oasHttpSecuritySchemeData = v.object({
3
6
  type: v.literal('http'),
4
7
  description: v.optional(v.string()),
5
8
  scheme: v.string(),
6
9
  bearerFormat: v.optional(v.string())
7
10
  });
11
+ /**
12
+ * Valibot schema for validating API key security scheme data.
13
+ */
8
14
  export const oasApiKeySecuritySchemeData = v.object({
9
15
  type: v.literal('apiKey'),
10
16
  description: v.optional(v.string()),
11
17
  name: v.string(),
12
18
  in: v.union([v.literal('header'), v.literal('query'), v.literal('cookie')])
13
19
  });
20
+ /**
21
+ * Valibot schema for validating OAuth2 implicit flow data.
22
+ */
14
23
  export const oasImplicitOAuth2FlowData = v.object({
15
24
  authorizationUrl: v.string(),
16
25
  refreshUrl: v.optional(v.string()),
17
26
  scopes: v.record(v.string(), v.string())
18
27
  });
28
+ /**
29
+ * Valibot schema for validating OAuth2 authorization code flow data.
30
+ */
19
31
  export const oasAuthorizationCodeOAuth2FlowData = v.object({
20
32
  authorizationUrl: v.string(),
21
33
  tokenUrl: v.string(),
22
34
  refreshUrl: v.optional(v.string()),
23
35
  scopes: v.record(v.string(), v.string())
24
36
  });
37
+ /**
38
+ * Valibot schema for validating OAuth2 client credentials flow data.
39
+ */
25
40
  export const oasClientCredentialsOAuth2FlowData = v.object({
26
41
  tokenUrl: v.string(),
27
42
  refreshUrl: v.optional(v.string()),
@@ -1,7 +1,97 @@
1
1
  import "../_dnt.polyfills.js";
2
2
  import type { OpenAPIV2, OpenAPIV3, OpenAPIV3_1 } from 'openapi-types';
3
+ /**
4
+ * Union type representing any supported OpenAPI document version.
5
+ *
6
+ * SKMTC supports processing OpenAPI/Swagger documents from version 2.0 through 3.1,
7
+ * automatically converting them to OpenAPI 3.0 format for internal processing.
8
+ */
3
9
  type AnyOasDocument = OpenAPIV2.Document | OpenAPIV3.Document | OpenAPIV3_1.Document;
10
+ /**
11
+ * Parses a string into an OpenAPI document object.
12
+ *
13
+ * Automatically detects whether the input string is JSON or YAML format based on
14
+ * the content, then parses it into an OpenAPI document object. Supports all
15
+ * OpenAPI versions (2.0, 3.0.x, 3.1.x).
16
+ *
17
+ * @param schema - The OpenAPI document as a JSON or YAML string
18
+ * @returns Parsed OpenAPI document object
19
+ *
20
+ * @example Parsing JSON OpenAPI document
21
+ * ```typescript
22
+ * const jsonSchema = `{
23
+ * "openapi": "3.0.0",
24
+ * "info": { "title": "My API", "version": "1.0.0" },
25
+ * "paths": {}
26
+ * }`;
27
+ * const document = stringToSchema(jsonSchema);
28
+ * console.log(document.info.title); // "My API"
29
+ * ```
30
+ *
31
+ * @example Parsing YAML OpenAPI document
32
+ * ```typescript
33
+ * const yamlSchema = `
34
+ * openapi: 3.0.0
35
+ * info:
36
+ * title: My API
37
+ * version: 1.0.0
38
+ * paths: {}
39
+ * `;
40
+ * const document = stringToSchema(yamlSchema);
41
+ * console.log(document.info.title); // "My API"
42
+ * ```
43
+ *
44
+ * @throws {SyntaxError} If the JSON is malformed
45
+ * @throws {Error} If the YAML is malformed
46
+ */
4
47
  export declare const stringToSchema: (schema: string) => AnyOasDocument;
48
+ /**
49
+ * Converts any OpenAPI document version to OpenAPI 3.0 format.
50
+ *
51
+ * SKMTC processes all documents using OpenAPI 3.0 as the internal format.
52
+ * This function handles version detection and conversion from:
53
+ * - OpenAPI 3.0.x (returned as-is)
54
+ * - OpenAPI 3.1.x (downgraded to 3.0 with allOf transformations)
55
+ * - Swagger 2.0 (upgraded to OpenAPI 3.0)
56
+ *
57
+ * @param schema - The OpenAPI document to convert
58
+ * @returns Promise resolving to an OpenAPI 3.0 document
59
+ *
60
+ * @example Converting OpenAPI 3.1 to 3.0
61
+ * ```typescript
62
+ * const openapi31Doc = {
63
+ * openapi: "3.1.0",
64
+ * info: { title: "My API", version: "1.0.0" },
65
+ * paths: {}
66
+ * };
67
+ * const v3Doc = await toV3Document(openapi31Doc);
68
+ * console.log(v3Doc.openapi); // "3.0.3" (converted)
69
+ * ```
70
+ *
71
+ * @example Converting Swagger 2.0 to OpenAPI 3.0
72
+ * ```typescript
73
+ * const swagger2Doc = {
74
+ * swagger: "2.0",
75
+ * info: { title: "My API", version: "1.0.0" },
76
+ * paths: {}
77
+ * };
78
+ * const v3Doc = await toV3Document(swagger2Doc);
79
+ * console.log(v3Doc.openapi); // "3.0.0" (converted)
80
+ * ```
81
+ *
82
+ * @example OpenAPI 3.0 passthrough
83
+ * ```typescript
84
+ * const openapi30Doc = {
85
+ * openapi: "3.0.2",
86
+ * info: { title: "My API", version: "1.0.0" },
87
+ * paths: {}
88
+ * };
89
+ * const v3Doc = await toV3Document(openapi30Doc);
90
+ * console.log(v3Doc === openapi30Doc); // true (same object)
91
+ * ```
92
+ *
93
+ * @throws {Error} If the document version is not recognized or supported
94
+ */
5
95
  export declare const toV3Document: (schema: AnyOasDocument) => Promise<OpenAPIV3.Document>;
6
96
  export {};
7
97
  //# sourceMappingURL=toV3JsonDocument.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toV3JsonDocument.d.ts","sourceRoot":"","sources":["../../src/run/toV3JsonDocument.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAUtE,KAAK,cAAc,GAAG,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAA;AAEpF,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,KAAG,cAM/C,CAAA;AAED,eAAO,MAAM,YAAY,GAAU,QAAQ,cAAc,KAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CA0BrF,CAAA"}
1
+ {"version":3,"file":"toV3JsonDocument.d.ts","sourceRoot":"","sources":["../../src/run/toV3JsonDocument.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAUtE;;;;;GAKG;AACH,KAAK,cAAc,GAAG,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAA;AAEpF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,KAAG,cAM/C,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,eAAO,MAAM,YAAY,GAAU,QAAQ,cAAc,KAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CA0BrF,CAAA"}
@@ -3,6 +3,43 @@ import { parse as parseYaml } from '../deps/jsr.io/@std/yaml/1.0.9/parse.js';
3
3
  import { Converter as ThreeOneToThreeZeroConverter } from '@apiture/openapi-down-convert';
4
4
  import { match, P } from 'ts-pattern';
5
5
  import converter from 'swagger2openapi';
6
+ /**
7
+ * Parses a string into an OpenAPI document object.
8
+ *
9
+ * Automatically detects whether the input string is JSON or YAML format based on
10
+ * the content, then parses it into an OpenAPI document object. Supports all
11
+ * OpenAPI versions (2.0, 3.0.x, 3.1.x).
12
+ *
13
+ * @param schema - The OpenAPI document as a JSON or YAML string
14
+ * @returns Parsed OpenAPI document object
15
+ *
16
+ * @example Parsing JSON OpenAPI document
17
+ * ```typescript
18
+ * const jsonSchema = `{
19
+ * "openapi": "3.0.0",
20
+ * "info": { "title": "My API", "version": "1.0.0" },
21
+ * "paths": {}
22
+ * }`;
23
+ * const document = stringToSchema(jsonSchema);
24
+ * console.log(document.info.title); // "My API"
25
+ * ```
26
+ *
27
+ * @example Parsing YAML OpenAPI document
28
+ * ```typescript
29
+ * const yamlSchema = `
30
+ * openapi: 3.0.0
31
+ * info:
32
+ * title: My API
33
+ * version: 1.0.0
34
+ * paths: {}
35
+ * `;
36
+ * const document = stringToSchema(yamlSchema);
37
+ * console.log(document.info.title); // "My API"
38
+ * ```
39
+ *
40
+ * @throws {SyntaxError} If the JSON is malformed
41
+ * @throws {Error} If the YAML is malformed
42
+ */
6
43
  export const stringToSchema = (schema) => {
7
44
  if (schema.trimStart().startsWith('{')) {
8
45
  return JSON.parse(schema);
@@ -11,6 +48,53 @@ export const stringToSchema = (schema) => {
11
48
  return parseYaml(schema);
12
49
  }
13
50
  };
51
+ /**
52
+ * Converts any OpenAPI document version to OpenAPI 3.0 format.
53
+ *
54
+ * SKMTC processes all documents using OpenAPI 3.0 as the internal format.
55
+ * This function handles version detection and conversion from:
56
+ * - OpenAPI 3.0.x (returned as-is)
57
+ * - OpenAPI 3.1.x (downgraded to 3.0 with allOf transformations)
58
+ * - Swagger 2.0 (upgraded to OpenAPI 3.0)
59
+ *
60
+ * @param schema - The OpenAPI document to convert
61
+ * @returns Promise resolving to an OpenAPI 3.0 document
62
+ *
63
+ * @example Converting OpenAPI 3.1 to 3.0
64
+ * ```typescript
65
+ * const openapi31Doc = {
66
+ * openapi: "3.1.0",
67
+ * info: { title: "My API", version: "1.0.0" },
68
+ * paths: {}
69
+ * };
70
+ * const v3Doc = await toV3Document(openapi31Doc);
71
+ * console.log(v3Doc.openapi); // "3.0.3" (converted)
72
+ * ```
73
+ *
74
+ * @example Converting Swagger 2.0 to OpenAPI 3.0
75
+ * ```typescript
76
+ * const swagger2Doc = {
77
+ * swagger: "2.0",
78
+ * info: { title: "My API", version: "1.0.0" },
79
+ * paths: {}
80
+ * };
81
+ * const v3Doc = await toV3Document(swagger2Doc);
82
+ * console.log(v3Doc.openapi); // "3.0.0" (converted)
83
+ * ```
84
+ *
85
+ * @example OpenAPI 3.0 passthrough
86
+ * ```typescript
87
+ * const openapi30Doc = {
88
+ * openapi: "3.0.2",
89
+ * info: { title: "My API", version: "1.0.0" },
90
+ * paths: {}
91
+ * };
92
+ * const v3Doc = await toV3Document(openapi30Doc);
93
+ * console.log(v3Doc === openapi30Doc); // true (same object)
94
+ * ```
95
+ *
96
+ * @throws {Error} If the document version is not recognized or supported
97
+ */
14
98
  export const toV3Document = async (schema) => {
15
99
  return await match(schema)
16
100
  .with({ openapi: P.string.startsWith('3.0') }, doc => doc)