@skmtc/core 0.0.802 → 0.0.803
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.
- package/esm/context/CoreContext.d.ts +3 -0
- package/esm/context/CoreContext.d.ts.map +1 -1
- package/esm/context/CoreContext.js +17 -12
- package/esm/context/GenerateContext.d.ts +2 -1
- package/esm/context/GenerateContext.d.ts.map +1 -1
- package/esm/context/ParseContext.d.ts +3 -3
- package/esm/context/ParseContext.d.ts.map +1 -1
- package/esm/context/RenderContext.d.ts +4 -1
- package/esm/context/RenderContext.d.ts.map +1 -1
- package/esm/context/RenderContext.js +11 -6
- package/esm/dsl/operation/OperationDriver.d.ts +36 -0
- package/esm/dsl/operation/OperationDriver.d.ts.map +1 -1
- package/esm/dsl/operation/OperationDriver.js +36 -0
- package/esm/dsl/operation/toOperationBase.d.ts +58 -0
- package/esm/dsl/operation/toOperationBase.d.ts.map +1 -1
- package/esm/dsl/operation/toOperationBase.js +46 -0
- package/esm/dsl/operation/toOperationEntry.d.ts +37 -0
- package/esm/dsl/operation/toOperationEntry.d.ts.map +1 -1
- package/esm/dsl/operation/toOperationEntry.js +28 -0
- package/esm/mod.d.ts +1 -0
- package/esm/mod.d.ts.map +1 -1
- package/esm/mod.js +1 -0
- package/esm/oas/array/Array.d.ts +26 -0
- package/esm/oas/array/Array.d.ts.map +1 -1
- package/esm/oas/array/Array.js +26 -0
- package/esm/oas/array/array-types.d.ts +12 -0
- package/esm/oas/array/array-types.d.ts.map +1 -1
- package/esm/oas/array/array-types.js +6 -0
- package/esm/oas/boolean/Boolean.d.ts +26 -0
- package/esm/oas/boolean/Boolean.d.ts.map +1 -1
- package/esm/oas/boolean/Boolean.js +26 -0
- package/esm/oas/boolean/toBoolean.d.ts +57 -0
- package/esm/oas/boolean/toBoolean.d.ts.map +1 -1
- package/esm/oas/boolean/toBoolean.js +57 -0
- package/esm/oas/number/toNumber.d.ts +62 -0
- package/esm/oas/number/toNumber.d.ts.map +1 -1
- package/esm/oas/number/toNumber.js +62 -0
- package/esm/oas/parameter/Parameter.d.ts +47 -0
- package/esm/oas/parameter/Parameter.d.ts.map +1 -1
- package/esm/oas/parameter/Parameter.js +47 -0
- package/esm/types/CustomValue.d.ts +58 -0
- package/esm/types/CustomValue.d.ts.map +1 -1
- package/esm/types/CustomValue.js +58 -0
- package/esm/types/DenoJson.d.ts +24 -0
- package/esm/types/DenoJson.d.ts.map +1 -1
- package/esm/types/DenoJson.js +12 -0
- package/esm/types/Enrichments.d.ts +103 -0
- package/esm/types/Enrichments.d.ts.map +1 -1
- package/esm/types/Enrichments.js +52 -0
- package/esm/types/GeneratedValue.d.ts +17 -0
- package/esm/types/GeneratedValue.d.ts.map +1 -1
- package/esm/types/Logger.d.ts +9 -0
- package/esm/types/Logger.d.ts.map +1 -0
- package/esm/types/Logger.js +1 -0
- package/package.json +1 -1
- package/script/context/CoreContext.d.ts +3 -0
- package/script/context/CoreContext.d.ts.map +1 -1
- package/script/context/CoreContext.js +17 -12
- package/script/context/GenerateContext.d.ts +2 -1
- package/script/context/GenerateContext.d.ts.map +1 -1
- package/script/context/ParseContext.d.ts +3 -3
- package/script/context/ParseContext.d.ts.map +1 -1
- package/script/context/RenderContext.d.ts +4 -1
- package/script/context/RenderContext.d.ts.map +1 -1
- package/script/context/RenderContext.js +11 -6
- package/script/dsl/operation/OperationDriver.d.ts +36 -0
- package/script/dsl/operation/OperationDriver.d.ts.map +1 -1
- package/script/dsl/operation/OperationDriver.js +36 -0
- package/script/dsl/operation/toOperationBase.d.ts +58 -0
- package/script/dsl/operation/toOperationBase.d.ts.map +1 -1
- package/script/dsl/operation/toOperationBase.js +46 -0
- package/script/dsl/operation/toOperationEntry.d.ts +37 -0
- package/script/dsl/operation/toOperationEntry.d.ts.map +1 -1
- package/script/dsl/operation/toOperationEntry.js +28 -0
- package/script/mod.d.ts +1 -0
- package/script/mod.d.ts.map +1 -1
- package/script/mod.js +1 -0
- package/script/oas/array/Array.d.ts +26 -0
- package/script/oas/array/Array.d.ts.map +1 -1
- package/script/oas/array/Array.js +26 -0
- package/script/oas/array/array-types.d.ts +12 -0
- package/script/oas/array/array-types.d.ts.map +1 -1
- package/script/oas/array/array-types.js +6 -0
- package/script/oas/boolean/Boolean.d.ts +26 -0
- package/script/oas/boolean/Boolean.d.ts.map +1 -1
- package/script/oas/boolean/Boolean.js +26 -0
- package/script/oas/boolean/toBoolean.d.ts +57 -0
- package/script/oas/boolean/toBoolean.d.ts.map +1 -1
- package/script/oas/boolean/toBoolean.js +57 -0
- package/script/oas/number/toNumber.d.ts +62 -0
- package/script/oas/number/toNumber.d.ts.map +1 -1
- package/script/oas/number/toNumber.js +62 -0
- package/script/oas/parameter/Parameter.d.ts +47 -0
- package/script/oas/parameter/Parameter.d.ts.map +1 -1
- package/script/oas/parameter/Parameter.js +47 -0
- package/script/types/CustomValue.d.ts +58 -0
- package/script/types/CustomValue.d.ts.map +1 -1
- package/script/types/CustomValue.js +58 -0
- package/script/types/DenoJson.d.ts +24 -0
- package/script/types/DenoJson.d.ts.map +1 -1
- package/script/types/DenoJson.js +12 -0
- package/script/types/Enrichments.d.ts +103 -0
- package/script/types/Enrichments.d.ts.map +1 -1
- package/script/types/Enrichments.js +52 -0
- package/script/types/GeneratedValue.d.ts +17 -0
- package/script/types/GeneratedValue.d.ts.map +1 -1
- package/script/types/Logger.d.ts +9 -0
- package/script/types/Logger.d.ts.map +1 -0
- package/script/types/Logger.js +2 -0
|
@@ -3,11 +3,69 @@ import { OperationBase } from './OperationBase.js';
|
|
|
3
3
|
import type { Identifier } from '../Identifier.js';
|
|
4
4
|
import type { OperationInsertableArgs } from './types.js';
|
|
5
5
|
import * as v from 'valibot';
|
|
6
|
+
/**
|
|
7
|
+
* Configuration for creating a base operation class.
|
|
8
|
+
*
|
|
9
|
+
* Defines the structure and behavior for operation generators, including
|
|
10
|
+
* identifier generation, export path resolution, and enrichment schemas.
|
|
11
|
+
*
|
|
12
|
+
* @template EnrichmentType - Type of enrichments to apply to generated operations
|
|
13
|
+
*/
|
|
6
14
|
export type BaseOperationConfig<EnrichmentType = undefined> = {
|
|
15
|
+
/** Unique identifier for the operation generator */
|
|
7
16
|
id: string;
|
|
17
|
+
/** Function to generate identifiers from operations */
|
|
8
18
|
toIdentifier: (operation: OasOperation) => Identifier;
|
|
19
|
+
/** Function to generate export paths from operations */
|
|
9
20
|
toExportPath: (operation: OasOperation) => string;
|
|
21
|
+
/** Optional function to provide enrichment validation schema */
|
|
10
22
|
toEnrichmentSchema?: () => v.BaseSchema<EnrichmentType, EnrichmentType, v.BaseIssue<unknown>>;
|
|
11
23
|
};
|
|
24
|
+
/**
|
|
25
|
+
* Creates a base operation class constructor for generating type-safe operation artifacts.
|
|
26
|
+
*
|
|
27
|
+
* This factory function creates a specialized OperationBase class that implements
|
|
28
|
+
* the provided configuration for identifier generation, export paths, and
|
|
29
|
+
* enrichment handling. The resulting class can be instantiated to generate
|
|
30
|
+
* operation artifacts from OpenAPI operations.
|
|
31
|
+
*
|
|
32
|
+
* @template EnrichmentType - Type of enrichments to apply to generated operations
|
|
33
|
+
* @param config - Configuration defining the operation generation behavior
|
|
34
|
+
* @returns Constructor function for creating operation instances
|
|
35
|
+
*
|
|
36
|
+
* @example Creating a TypeScript function generator
|
|
37
|
+
* ```typescript
|
|
38
|
+
* import { toOperationBase } from '@skmtc/core';
|
|
39
|
+
*
|
|
40
|
+
* const TypeScriptOperationBase = toOperationBase({
|
|
41
|
+
* id: 'typescript-functions',
|
|
42
|
+
* toIdentifier: (operation) => new Identifier(camelCase(operation.operationId)),
|
|
43
|
+
* toExportPath: (operation) => `./operations/${kebabCase(operation.operationId)}.ts`,
|
|
44
|
+
* toEnrichmentSchema: () => v.object({
|
|
45
|
+
* includeValidation: v.optional(v.boolean()),
|
|
46
|
+
* asyncMode: v.optional(v.boolean())
|
|
47
|
+
* })
|
|
48
|
+
* });
|
|
49
|
+
*
|
|
50
|
+
* class TypeScriptOperationGenerator extends TypeScriptOperationBase {
|
|
51
|
+
* generate() {
|
|
52
|
+
* const enrichments = this.enrichments;
|
|
53
|
+
* const functionCode = generateFunction(this.operation, {
|
|
54
|
+
* async: enrichments?.asyncMode ?? true
|
|
55
|
+
* });
|
|
56
|
+
* this.register({ file: this.createFile(functionCode) });
|
|
57
|
+
* }
|
|
58
|
+
* }
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* @example Creating a React hook generator
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const ReactHookOperationBase = toOperationBase({
|
|
64
|
+
* id: 'react-hooks',
|
|
65
|
+
* toIdentifier: (operation) => new Identifier(`use${pascalCase(operation.operationId)}`),
|
|
66
|
+
* toExportPath: (operation) => `./hooks/${kebabCase(operation.operationId)}.hook.ts`
|
|
67
|
+
* });
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
12
70
|
export declare const toOperationBase: <EnrichmentType = undefined>(config: BaseOperationConfig<EnrichmentType>) => new (args: OperationInsertableArgs<EnrichmentType>) => OperationBase<EnrichmentType>;
|
|
13
71
|
//# sourceMappingURL=toOperationBase.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toOperationBase.d.ts","sourceRoot":"","sources":["../../../src/dsl/operation/toOperationBase.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AACzD,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAI5B,MAAM,MAAM,mBAAmB,CAAC,cAAc,GAAG,SAAS,IAAI;IAC5D,EAAE,EAAE,MAAM,CAAA;IACV,YAAY,EAAE,CAAC,SAAS,EAAE,YAAY,KAAK,UAAU,CAAA;IACrD,YAAY,EAAE,CAAC,SAAS,EAAE,YAAY,KAAK,MAAM,CAAA;IACjD,kBAAkB,CAAC,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;CAC9F,CAAA;AAOD,eAAO,MAAM,eAAe,GAAI,cAAc,GAAG,SAAS,EACxD,QAAQ,mBAAmB,CAAC,cAAc,CAAC,KAC1C,KAAK,IAAI,EAAE,uBAAuB,CAAC,cAAc,CAAC,KAAK,aAAa,CAAC,cAAc,CA6BrF,CAAA"}
|
|
1
|
+
{"version":3,"file":"toOperationBase.d.ts","sourceRoot":"","sources":["../../../src/dsl/operation/toOperationBase.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AACzD,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAI5B;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,CAAC,cAAc,GAAG,SAAS,IAAI;IAC5D,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAA;IACV,uDAAuD;IACvD,YAAY,EAAE,CAAC,SAAS,EAAE,YAAY,KAAK,UAAU,CAAA;IACrD,wDAAwD;IACxD,YAAY,EAAE,CAAC,SAAS,EAAE,YAAY,KAAK,MAAM,CAAA;IACjD,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;CAC9F,CAAA;AAOD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,eAAO,MAAM,eAAe,GAAI,cAAc,GAAG,SAAS,EACxD,QAAQ,mBAAmB,CAAC,cAAc,CAAC,KAC1C,KAAK,IAAI,EAAE,uBAAuB,CAAC,cAAc,CAAC,KAAK,aAAa,CAAC,cAAc,CA6BrF,CAAA"}
|
|
@@ -38,6 +38,52 @@ const GeneratorKeys_js_1 = require("../../types/GeneratorKeys.js");
|
|
|
38
38
|
const OperationBase_js_1 = require("./OperationBase.js");
|
|
39
39
|
const v = __importStar(require("valibot"));
|
|
40
40
|
const lodash_es_1 = require("lodash-es");
|
|
41
|
+
/**
|
|
42
|
+
* Creates a base operation class constructor for generating type-safe operation artifacts.
|
|
43
|
+
*
|
|
44
|
+
* This factory function creates a specialized OperationBase class that implements
|
|
45
|
+
* the provided configuration for identifier generation, export paths, and
|
|
46
|
+
* enrichment handling. The resulting class can be instantiated to generate
|
|
47
|
+
* operation artifacts from OpenAPI operations.
|
|
48
|
+
*
|
|
49
|
+
* @template EnrichmentType - Type of enrichments to apply to generated operations
|
|
50
|
+
* @param config - Configuration defining the operation generation behavior
|
|
51
|
+
* @returns Constructor function for creating operation instances
|
|
52
|
+
*
|
|
53
|
+
* @example Creating a TypeScript function generator
|
|
54
|
+
* ```typescript
|
|
55
|
+
* import { toOperationBase } from '@skmtc/core';
|
|
56
|
+
*
|
|
57
|
+
* const TypeScriptOperationBase = toOperationBase({
|
|
58
|
+
* id: 'typescript-functions',
|
|
59
|
+
* toIdentifier: (operation) => new Identifier(camelCase(operation.operationId)),
|
|
60
|
+
* toExportPath: (operation) => `./operations/${kebabCase(operation.operationId)}.ts`,
|
|
61
|
+
* toEnrichmentSchema: () => v.object({
|
|
62
|
+
* includeValidation: v.optional(v.boolean()),
|
|
63
|
+
* asyncMode: v.optional(v.boolean())
|
|
64
|
+
* })
|
|
65
|
+
* });
|
|
66
|
+
*
|
|
67
|
+
* class TypeScriptOperationGenerator extends TypeScriptOperationBase {
|
|
68
|
+
* generate() {
|
|
69
|
+
* const enrichments = this.enrichments;
|
|
70
|
+
* const functionCode = generateFunction(this.operation, {
|
|
71
|
+
* async: enrichments?.asyncMode ?? true
|
|
72
|
+
* });
|
|
73
|
+
* this.register({ file: this.createFile(functionCode) });
|
|
74
|
+
* }
|
|
75
|
+
* }
|
|
76
|
+
* ```
|
|
77
|
+
*
|
|
78
|
+
* @example Creating a React hook generator
|
|
79
|
+
* ```typescript
|
|
80
|
+
* const ReactHookOperationBase = toOperationBase({
|
|
81
|
+
* id: 'react-hooks',
|
|
82
|
+
* toIdentifier: (operation) => new Identifier(`use${pascalCase(operation.operationId)}`),
|
|
83
|
+
* toExportPath: (operation) => `./hooks/${kebabCase(operation.operationId)}.hook.ts`
|
|
84
|
+
* });
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
41
87
|
const toOperationBase = (config) => {
|
|
42
88
|
var _a;
|
|
43
89
|
return _a = class extends OperationBase_js_1.OperationBase {
|
|
@@ -4,6 +4,15 @@ import type { EnrichmentRequest } from '../../types/EnrichmentRequest.js';
|
|
|
4
4
|
import type { IsSupportedArgs, ToOperationPreviewModuleArgs, ToOperationMappingArgs, TransformOperationArgs } from './types.js';
|
|
5
5
|
import type { IsSupportedOperationConfigArgs } from './types.js';
|
|
6
6
|
import type { MappingModule, PreviewModule } from '../../types/Preview.js';
|
|
7
|
+
/**
|
|
8
|
+
* Configuration arguments for creating operation generator entries.
|
|
9
|
+
*
|
|
10
|
+
* Defines the structure for operation generator configuration including transform functions,
|
|
11
|
+
* enrichment schemas, preview/mapping modules, and support validation.
|
|
12
|
+
*
|
|
13
|
+
* @template EnrichmentType - Type of enrichment data this operation can provide
|
|
14
|
+
* @template Acc - Accumulator type used during operation processing
|
|
15
|
+
*/
|
|
7
16
|
export type ToOperationConfigArgs<EnrichmentType = undefined, Acc = void> = {
|
|
8
17
|
id: string;
|
|
9
18
|
transform: ({ context, operation, acc }: TransformOperationArgs<Acc>) => Acc;
|
|
@@ -13,6 +22,34 @@ export type ToOperationConfigArgs<EnrichmentType = undefined, Acc = void> = {
|
|
|
13
22
|
toMappingModule?: ({ context, operation }: ToOperationMappingArgs) => MappingModule;
|
|
14
23
|
toEnrichmentRequest?: <RequestedEnrichment extends EnrichmentType>(operation: OasOperation) => EnrichmentRequest<RequestedEnrichment> | undefined;
|
|
15
24
|
};
|
|
25
|
+
/**
|
|
26
|
+
* Creates a configured operation generator entry.
|
|
27
|
+
*
|
|
28
|
+
* Transforms operation configuration arguments into a standardized operation generator entry
|
|
29
|
+
* that can be used within the SKMTC generation pipeline. Provides type-safe operation processing
|
|
30
|
+
* with optional enrichment support and preview capabilities.
|
|
31
|
+
*
|
|
32
|
+
* @template EnrichmentType - Type of enrichment data this operation provides
|
|
33
|
+
* @template Acc - Accumulator type used during operation processing
|
|
34
|
+
* @param config - Configuration object defining operation behavior
|
|
35
|
+
* @returns Configured operation generator entry ready for pipeline integration
|
|
36
|
+
*
|
|
37
|
+
* @example Basic operation entry
|
|
38
|
+
* ```typescript
|
|
39
|
+
* import { toOperationEntry } from '@skmtc/core';
|
|
40
|
+
*
|
|
41
|
+
* const operationEntry = toOperationEntry({
|
|
42
|
+
* id: 'my-operation-generator',
|
|
43
|
+
* transform: ({ context, operation, acc }) => {
|
|
44
|
+
* // Transform operation into desired format
|
|
45
|
+
* return processedOperation;
|
|
46
|
+
* },
|
|
47
|
+
* isSupported: ({ operation }) => {
|
|
48
|
+
* return operation.method === 'POST';
|
|
49
|
+
* }
|
|
50
|
+
* });
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
16
53
|
export declare const toOperationEntry: <EnrichmentType = undefined, Acc = void>({ id, transform, toEnrichmentSchema, isSupported, toPreviewModule, toMappingModule, toEnrichmentRequest }: ToOperationConfigArgs<EnrichmentType, Acc>) => {
|
|
17
54
|
id: string;
|
|
18
55
|
type: "operation";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toOperationEntry.d.ts","sourceRoot":"","sources":["../../../src/dsl/operation/toOperationEntry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AACzE,OAAO,KAAK,EACV,eAAe,EACf,4BAA4B,EAC5B,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAA;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAG1E,MAAM,MAAM,qBAAqB,CAAC,cAAc,GAAG,SAAS,EAAE,GAAG,GAAG,IAAI,IAAI;IAC1E,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,sBAAsB,CAAC,GAAG,CAAC,KAAK,GAAG,CAAA;IAC5E,kBAAkB,CAAC,EAAE,MAAM,CAAC,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;IAC1D,WAAW,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,8BAA8B,CAAC,cAAc,CAAC,KAAK,OAAO,CAAA;IACjG,eAAe,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,4BAA4B,KAAK,aAAa,CAAA;IACzF,eAAe,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,sBAAsB,KAAK,aAAa,CAAA;IACnF,mBAAmB,CAAC,EAAE,CAAC,mBAAmB,SAAS,cAAc,EAC/D,SAAS,EAAE,YAAY,KACpB,iBAAiB,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAA;CACxD,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,cAAc,GAAG,SAAS,EAAE,GAAG,GAAG,IAAI,EAAE,2GAQtE,qBAAqB,CAAC,cAAc,EAAE,GAAG,CAAC,KAAG;IAC9C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,sBAAsB,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC;IAC7E,kBAAkB,CAAC,EAAE,MAAM,CAAC,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IAC3D,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,eAAe,KAAK,OAAO,CAAC;IAClE,eAAe,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,4BAA4B,KAAK,aAAa,CAAC;IAC1F,eAAe,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,sBAAsB,KAAK,aAAa,CAAC;IACpF,mBAAmB,CAAC,EAAE,CAAC,mBAAmB,SAAS,cAAc,EAC/D,SAAS,EAAE,YAAY,KACpB,iBAAiB,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC;CA6BzD,CAAA"}
|
|
1
|
+
{"version":3,"file":"toOperationEntry.d.ts","sourceRoot":"","sources":["../../../src/dsl/operation/toOperationEntry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AACzE,OAAO,KAAK,EACV,eAAe,EACf,4BAA4B,EAC5B,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAA;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAG1E;;;;;;;;GAQG;AACH,MAAM,MAAM,qBAAqB,CAAC,cAAc,GAAG,SAAS,EAAE,GAAG,GAAG,IAAI,IAAI;IAC1E,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,sBAAsB,CAAC,GAAG,CAAC,KAAK,GAAG,CAAA;IAC5E,kBAAkB,CAAC,EAAE,MAAM,CAAC,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;IAC1D,WAAW,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,8BAA8B,CAAC,cAAc,CAAC,KAAK,OAAO,CAAA;IACjG,eAAe,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,4BAA4B,KAAK,aAAa,CAAA;IACzF,eAAe,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,sBAAsB,KAAK,aAAa,CAAA;IACnF,mBAAmB,CAAC,EAAE,CAAC,mBAAmB,SAAS,cAAc,EAC/D,SAAS,EAAE,YAAY,KACpB,iBAAiB,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAA;CACxD,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,gBAAgB,GAAI,cAAc,GAAG,SAAS,EAAE,GAAG,GAAG,IAAI,EAAE,2GAQtE,qBAAqB,CAAC,cAAc,EAAE,GAAG,CAAC,KAAG;IAC9C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,sBAAsB,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC;IAC7E,kBAAkB,CAAC,EAAE,MAAM,CAAC,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IAC3D,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,eAAe,KAAK,OAAO,CAAC;IAClE,eAAe,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,4BAA4B,KAAK,aAAa,CAAC;IAC1F,eAAe,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,sBAAsB,KAAK,aAAa,CAAC;IACpF,mBAAmB,CAAC,EAAE,CAAC,mBAAmB,SAAS,cAAc,EAC/D,SAAS,EAAE,YAAY,KACpB,iBAAiB,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC;CA6BzD,CAAA"}
|
|
@@ -36,6 +36,34 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.toOperationEntry = void 0;
|
|
37
37
|
const v = __importStar(require("valibot"));
|
|
38
38
|
const lodash_es_1 = require("lodash-es");
|
|
39
|
+
/**
|
|
40
|
+
* Creates a configured operation generator entry.
|
|
41
|
+
*
|
|
42
|
+
* Transforms operation configuration arguments into a standardized operation generator entry
|
|
43
|
+
* that can be used within the SKMTC generation pipeline. Provides type-safe operation processing
|
|
44
|
+
* with optional enrichment support and preview capabilities.
|
|
45
|
+
*
|
|
46
|
+
* @template EnrichmentType - Type of enrichment data this operation provides
|
|
47
|
+
* @template Acc - Accumulator type used during operation processing
|
|
48
|
+
* @param config - Configuration object defining operation behavior
|
|
49
|
+
* @returns Configured operation generator entry ready for pipeline integration
|
|
50
|
+
*
|
|
51
|
+
* @example Basic operation entry
|
|
52
|
+
* ```typescript
|
|
53
|
+
* import { toOperationEntry } from '@skmtc/core';
|
|
54
|
+
*
|
|
55
|
+
* const operationEntry = toOperationEntry({
|
|
56
|
+
* id: 'my-operation-generator',
|
|
57
|
+
* transform: ({ context, operation, acc }) => {
|
|
58
|
+
* // Transform operation into desired format
|
|
59
|
+
* return processedOperation;
|
|
60
|
+
* },
|
|
61
|
+
* isSupported: ({ operation }) => {
|
|
62
|
+
* return operation.method === 'POST';
|
|
63
|
+
* }
|
|
64
|
+
* });
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
39
67
|
const toOperationEntry = ({ id, transform, toEnrichmentSchema, isSupported, toPreviewModule, toMappingModule, toEnrichmentRequest }) => {
|
|
40
68
|
return {
|
|
41
69
|
id,
|
package/script/mod.d.ts
CHANGED
|
@@ -178,6 +178,7 @@ export * from './types/Enrichments.js';
|
|
|
178
178
|
export * from './types/GeneratedValue.js';
|
|
179
179
|
export * from './types/GeneratorKeys.js';
|
|
180
180
|
export * from './types/GeneratorType.js';
|
|
181
|
+
export * from './types/Logger.js';
|
|
181
182
|
export * from './types/Manifest.js';
|
|
182
183
|
export * from './types/Method.js';
|
|
183
184
|
export * from './types/Modifiers.js';
|
package/script/mod.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"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"}
|
package/script/mod.js
CHANGED
|
@@ -194,6 +194,7 @@ __exportStar(require("./types/Enrichments.js"), exports);
|
|
|
194
194
|
__exportStar(require("./types/GeneratedValue.js"), exports);
|
|
195
195
|
__exportStar(require("./types/GeneratorKeys.js"), exports);
|
|
196
196
|
__exportStar(require("./types/GeneratorType.js"), exports);
|
|
197
|
+
__exportStar(require("./types/Logger.js"), exports);
|
|
197
198
|
__exportStar(require("./types/Manifest.js"), exports);
|
|
198
199
|
__exportStar(require("./types/Method.js"), exports);
|
|
199
200
|
__exportStar(require("./types/Modifiers.js"), exports);
|
|
@@ -178,10 +178,36 @@ export declare class OasArray<Nullable extends boolean | undefined = boolean | u
|
|
|
178
178
|
* The default value for the array.
|
|
179
179
|
*/
|
|
180
180
|
defaultValue: Nullable extends true ? unknown[] | null | undefined : unknown[] | undefined;
|
|
181
|
+
/**
|
|
182
|
+
* Creates a new OasArray instance.
|
|
183
|
+
*
|
|
184
|
+
* @param fields - Array configuration fields including items schema, validation constraints, and metadata
|
|
185
|
+
*/
|
|
181
186
|
constructor(fields: ArrayFields<Nullable>);
|
|
187
|
+
/**
|
|
188
|
+
* Determines if this array is a reference object.
|
|
189
|
+
*
|
|
190
|
+
* @returns Always returns false since this is a concrete array instance, not a reference
|
|
191
|
+
*/
|
|
182
192
|
isRef(): this is OasRef<'schema'>;
|
|
193
|
+
/**
|
|
194
|
+
* Resolves this array object.
|
|
195
|
+
*
|
|
196
|
+
* @returns The array instance itself since it's already a concrete object, not a reference
|
|
197
|
+
*/
|
|
183
198
|
resolve(): OasArray<Nullable>;
|
|
199
|
+
/**
|
|
200
|
+
* Resolves this array object one level.
|
|
201
|
+
*
|
|
202
|
+
* @returns The array instance itself since it's already a concrete object, not a reference
|
|
203
|
+
*/
|
|
184
204
|
resolveOnce(): OasArray<Nullable>;
|
|
205
|
+
/**
|
|
206
|
+
* Converts this OAS array to an OpenAPI v3 JSON schema representation.
|
|
207
|
+
*
|
|
208
|
+
* @param options - Conversion options including reference handling and formatting preferences
|
|
209
|
+
* @returns OpenAPI v3 array schema object with type, items schema, and all validation constraints
|
|
210
|
+
*/
|
|
185
211
|
toJsonSchema(options: ToJsonSchemaOptions): OpenAPIV3.ArraySchemaObject;
|
|
186
212
|
}
|
|
187
213
|
//# sourceMappingURL=Array.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Array.d.ts","sourceRoot":"","sources":["../../../src/oas/array/Array.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC9D,wCAAwC;IACxC,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAA;IACnC,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,yCAAyC;IACzC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,0BAA0B;IAC1B,OAAO,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACtF,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,wDAAwD;IACxD,KAAK,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACtF,kCAAkC;IAClC,YAAY,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;CAC5F,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8FG;AACH,qBAAa,QAAQ,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS;IAC9E;;;OAGG;IACH,OAAO,EAAG,QAAQ,CAAS;IAC3B;;OAEG;IACH,IAAI,EAAG,OAAO,CAAS;IACvB;;OAEG;IACH,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAA;IACnC;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;IACzB;;OAEG;IACH,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B;;OAEG;IACH,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC9B;;OAEG;IACH,WAAW,EAAE,OAAO,GAAG,SAAS,CAAA;IAEhC,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IAEpD;;OAEG;IACH,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACrF;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAE5B;;OAEG;IACH,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IAErF;;OAEG;IACH,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"Array.d.ts","sourceRoot":"","sources":["../../../src/oas/array/Array.ts"],"names":[],"mappings":"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"}
|
|
@@ -98,6 +98,11 @@ require("../../_dnt.polyfills.js");
|
|
|
98
98
|
* ```
|
|
99
99
|
*/
|
|
100
100
|
class OasArray {
|
|
101
|
+
/**
|
|
102
|
+
* Creates a new OasArray instance.
|
|
103
|
+
*
|
|
104
|
+
* @param fields - Array configuration fields including items schema, validation constraints, and metadata
|
|
105
|
+
*/
|
|
101
106
|
constructor(fields) {
|
|
102
107
|
/**
|
|
103
108
|
* Object is part the 'schema' set which is used
|
|
@@ -227,15 +232,36 @@ class OasArray {
|
|
|
227
232
|
this.enums = fields.enums;
|
|
228
233
|
this.defaultValue = fields.defaultValue;
|
|
229
234
|
}
|
|
235
|
+
/**
|
|
236
|
+
* Determines if this array is a reference object.
|
|
237
|
+
*
|
|
238
|
+
* @returns Always returns false since this is a concrete array instance, not a reference
|
|
239
|
+
*/
|
|
230
240
|
isRef() {
|
|
231
241
|
return false;
|
|
232
242
|
}
|
|
243
|
+
/**
|
|
244
|
+
* Resolves this array object.
|
|
245
|
+
*
|
|
246
|
+
* @returns The array instance itself since it's already a concrete object, not a reference
|
|
247
|
+
*/
|
|
233
248
|
resolve() {
|
|
234
249
|
return this;
|
|
235
250
|
}
|
|
251
|
+
/**
|
|
252
|
+
* Resolves this array object one level.
|
|
253
|
+
*
|
|
254
|
+
* @returns The array instance itself since it's already a concrete object, not a reference
|
|
255
|
+
*/
|
|
236
256
|
resolveOnce() {
|
|
237
257
|
return this;
|
|
238
258
|
}
|
|
259
|
+
/**
|
|
260
|
+
* Converts this OAS array to an OpenAPI v3 JSON schema representation.
|
|
261
|
+
*
|
|
262
|
+
* @param options - Conversion options including reference handling and formatting preferences
|
|
263
|
+
* @returns OpenAPI v3 array schema object with type, items schema, and all validation constraints
|
|
264
|
+
*/
|
|
239
265
|
toJsonSchema(options) {
|
|
240
266
|
return {
|
|
241
267
|
type: 'array',
|
|
@@ -9,6 +9,12 @@ import { type OasSchemaRefData } from '../ref/ref-types.js';
|
|
|
9
9
|
* to handle recursive schema references.
|
|
10
10
|
*/
|
|
11
11
|
export declare const oasArrayData: v.GenericSchema<OasArrayData>;
|
|
12
|
+
/**
|
|
13
|
+
* Valibot schema for array data without the items property.
|
|
14
|
+
*
|
|
15
|
+
* Used for parsing array schemas when the items property is handled separately,
|
|
16
|
+
* typically during schema transformation and validation processes.
|
|
17
|
+
*/
|
|
12
18
|
export declare const oasArrayDataWithoutItems: v.GenericSchema<OasArrayDataWithoutItems>;
|
|
13
19
|
/**
|
|
14
20
|
* Data type for OpenAPI array schema objects.
|
|
@@ -37,6 +43,12 @@ export type OasArrayData = {
|
|
|
37
43
|
/** Array of valid enumeration values */
|
|
38
44
|
enums?: unknown[];
|
|
39
45
|
};
|
|
46
|
+
/**
|
|
47
|
+
* Array schema data without the items property.
|
|
48
|
+
*
|
|
49
|
+
* Represents an array schema with all properties except the items definition.
|
|
50
|
+
* Used during parsing phases where item schemas are processed separately.
|
|
51
|
+
*/
|
|
40
52
|
export type OasArrayDataWithoutItems = {
|
|
41
53
|
/** Type identifier (always 'array') */
|
|
42
54
|
type: 'array';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array-types.d.ts","sourceRoot":"","sources":["../../../src/oas/array/array-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,2BAA2B,CAAA;AAC7E,OAAO,EAAE,KAAK,gBAAgB,EAAoB,MAAM,qBAAqB,CAAA;AAE7E;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,EAAE,CAAC,CAAC,aAAa,CAAC,YAAY,CAUrD,CAAA;AAEF,eAAO,MAAM,wBAAwB,EAAE,CAAC,CAAC,aAAa,CAAC,wBAAwB,CAS7E,CAAA;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,uCAAuC;IACvC,IAAI,EAAE,OAAO,CAAA;IACb,wCAAwC;IACxC,KAAK,EAAE,aAAa,GAAG,gBAAgB,CAAA;IACvC,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kCAAkC;IAClC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;IACnB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uCAAuC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,wCAAwC;IACxC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,uCAAuC;IACvC,IAAI,EAAE,OAAO,CAAA;IACb,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kCAAkC;IAClC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;IACnB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uCAAuC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,wCAAwC;IACxC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;CAClB,CAAA"}
|
|
1
|
+
{"version":3,"file":"array-types.d.ts","sourceRoot":"","sources":["../../../src/oas/array/array-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,2BAA2B,CAAA;AAC7E,OAAO,EAAE,KAAK,gBAAgB,EAAoB,MAAM,qBAAqB,CAAA;AAE7E;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,EAAE,CAAC,CAAC,aAAa,CAAC,YAAY,CAUrD,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,CAAC,CAAC,aAAa,CAAC,wBAAwB,CAS7E,CAAA;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,uCAAuC;IACvC,IAAI,EAAE,OAAO,CAAA;IACb,wCAAwC;IACxC,KAAK,EAAE,aAAa,GAAG,gBAAgB,CAAA;IACvC,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kCAAkC;IAClC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;IACnB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uCAAuC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,wCAAwC;IACxC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;CAClB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,uCAAuC;IACvC,IAAI,EAAE,OAAO,CAAA;IACb,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kCAAkC;IAClC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;IACnB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uCAAuC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,wCAAwC;IACxC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;CAClB,CAAA"}
|
|
@@ -55,6 +55,12 @@ exports.oasArrayData = v.object({
|
|
|
55
55
|
uniqueItems: v.optional(v.boolean()),
|
|
56
56
|
enums: v.optional(v.array(v.unknown()))
|
|
57
57
|
});
|
|
58
|
+
/**
|
|
59
|
+
* Valibot schema for array data without the items property.
|
|
60
|
+
*
|
|
61
|
+
* Used for parsing array schemas when the items property is handled separately,
|
|
62
|
+
* typically during schema transformation and validation processes.
|
|
63
|
+
*/
|
|
58
64
|
exports.oasArrayDataWithoutItems = v.object({
|
|
59
65
|
type: v.literal('array'),
|
|
60
66
|
title: v.optional(v.string()),
|
|
@@ -191,10 +191,36 @@ export declare class OasBoolean<Nullable extends boolean | undefined = boolean |
|
|
|
191
191
|
* The default value of the boolean.
|
|
192
192
|
*/
|
|
193
193
|
default: Nullable extends true ? boolean | null | undefined : boolean | undefined;
|
|
194
|
+
/**
|
|
195
|
+
* Creates a new OasBoolean instance.
|
|
196
|
+
*
|
|
197
|
+
* @param fields - Boolean configuration fields including validation constraints and metadata
|
|
198
|
+
*/
|
|
194
199
|
constructor(fields?: BooleanFields<Nullable>);
|
|
200
|
+
/**
|
|
201
|
+
* Determines if this boolean is a reference object.
|
|
202
|
+
*
|
|
203
|
+
* @returns Always returns false since this is a concrete boolean instance, not a reference
|
|
204
|
+
*/
|
|
195
205
|
isRef(): this is OasRef<'schema'>;
|
|
206
|
+
/**
|
|
207
|
+
* Resolves this boolean object.
|
|
208
|
+
*
|
|
209
|
+
* @returns The boolean instance itself since it's already a concrete object, not a reference
|
|
210
|
+
*/
|
|
196
211
|
resolve(): OasBoolean<Nullable>;
|
|
212
|
+
/**
|
|
213
|
+
* Resolves this boolean object one level.
|
|
214
|
+
*
|
|
215
|
+
* @returns The boolean instance itself since it's already a concrete object, not a reference
|
|
216
|
+
*/
|
|
197
217
|
resolveOnce(): OasBoolean<Nullable>;
|
|
218
|
+
/**
|
|
219
|
+
* Converts this OAS boolean to an OpenAPI v3 JSON schema representation.
|
|
220
|
+
*
|
|
221
|
+
* @param options - Conversion options (currently unused for boolean schemas)
|
|
222
|
+
* @returns OpenAPI v3 boolean schema object with type and all validation constraints
|
|
223
|
+
*/
|
|
198
224
|
toJsonSchema(options?: ToJsonSchemaOptions): OpenAPIV3.NonArraySchemaObject;
|
|
199
225
|
}
|
|
200
226
|
//# sourceMappingURL=Boolean.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Boolean.d.ts","sourceRoot":"","sources":["../../../src/oas/boolean/Boolean.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE9D;;;;GAIG;AACH,MAAM,MAAM,aAAa,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAChE,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,uEAAuE;IACvE,OAAO,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IAClF,oFAAoF;IACpF,KAAK,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACtF,uEAAuE;IACvE,OAAO,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;CACnF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmIG;AACH,qBAAa,UAAU,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS;IAChF;;;OAGG;IACH,OAAO,EAAG,QAAQ,CAAS;IAC3B;;OAEG;IACH,IAAI,EAAG,SAAS,CAAS;IACzB;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;IACzB;;OAEG;IACH,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B;;OAEG;IACH,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAA;IAE9B,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IACpD;;OAEG;IACH,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IAEjF;;OAEG;IACH,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACrF;;OAEG;IACH,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"Boolean.d.ts","sourceRoot":"","sources":["../../../src/oas/boolean/Boolean.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE9D;;;;GAIG;AACH,MAAM,MAAM,aAAa,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAChE,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,uEAAuE;IACvE,OAAO,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IAClF,oFAAoF;IACpF,KAAK,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACtF,uEAAuE;IACvE,OAAO,CAAC,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;CACnF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmIG;AACH,qBAAa,UAAU,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS;IAChF;;;OAGG;IACH,OAAO,EAAG,QAAQ,CAAS;IAC3B;;OAEG;IACH,IAAI,EAAG,SAAS,CAAS;IACzB;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;IACzB;;OAEG;IACH,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B;;OAEG;IACH,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAA;IAE9B,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IACpD;;OAEG;IACH,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IAEjF;;OAEG;IACH,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACrF;;OAEG;IACH,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IAEjF;;;;OAIG;gBACS,MAAM,GAAE,aAAa,CAAC,QAAQ,CAAM;IAUhD;;;;OAIG;IACH,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC;IAIjC;;;;OAIG;IACH,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC;IAI/B;;;;OAIG;IACH,WAAW,IAAI,UAAU,CAAC,QAAQ,CAAC;IAInC;;;;;OAKG;IAEH,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC,oBAAoB;CAW5E"}
|
|
@@ -135,6 +135,11 @@ require("../../_dnt.polyfills.js");
|
|
|
135
135
|
* ```
|
|
136
136
|
*/
|
|
137
137
|
class OasBoolean {
|
|
138
|
+
/**
|
|
139
|
+
* Creates a new OasBoolean instance.
|
|
140
|
+
*
|
|
141
|
+
* @param fields - Boolean configuration fields including validation constraints and metadata
|
|
142
|
+
*/
|
|
138
143
|
constructor(fields = {}) {
|
|
139
144
|
/**
|
|
140
145
|
* Object is part the 'schema' set which is used
|
|
@@ -224,15 +229,36 @@ class OasBoolean {
|
|
|
224
229
|
this.enums = fields.enums;
|
|
225
230
|
this.default = fields.default;
|
|
226
231
|
}
|
|
232
|
+
/**
|
|
233
|
+
* Determines if this boolean is a reference object.
|
|
234
|
+
*
|
|
235
|
+
* @returns Always returns false since this is a concrete boolean instance, not a reference
|
|
236
|
+
*/
|
|
227
237
|
isRef() {
|
|
228
238
|
return false;
|
|
229
239
|
}
|
|
240
|
+
/**
|
|
241
|
+
* Resolves this boolean object.
|
|
242
|
+
*
|
|
243
|
+
* @returns The boolean instance itself since it's already a concrete object, not a reference
|
|
244
|
+
*/
|
|
230
245
|
resolve() {
|
|
231
246
|
return this;
|
|
232
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* Resolves this boolean object one level.
|
|
250
|
+
*
|
|
251
|
+
* @returns The boolean instance itself since it's already a concrete object, not a reference
|
|
252
|
+
*/
|
|
233
253
|
resolveOnce() {
|
|
234
254
|
return this;
|
|
235
255
|
}
|
|
256
|
+
/**
|
|
257
|
+
* Converts this OAS boolean to an OpenAPI v3 JSON schema representation.
|
|
258
|
+
*
|
|
259
|
+
* @param options - Conversion options (currently unused for boolean schemas)
|
|
260
|
+
* @returns OpenAPI v3 boolean schema object with type and all validation constraints
|
|
261
|
+
*/
|
|
236
262
|
// deno-lint-ignore no-unused-vars
|
|
237
263
|
toJsonSchema(options) {
|
|
238
264
|
return {
|
|
@@ -5,6 +5,63 @@ type ToBooleanArgs = {
|
|
|
5
5
|
value: OpenAPIV3.SchemaObject;
|
|
6
6
|
context: ParseContext;
|
|
7
7
|
};
|
|
8
|
+
/**
|
|
9
|
+
* Transforms an OpenAPI v3 boolean schema object into an internal OAS boolean representation.
|
|
10
|
+
*
|
|
11
|
+
* This function processes OpenAPI boolean schemas by extracting and parsing nullable values,
|
|
12
|
+
* examples, enumerations, and default values. It handles the complete transformation from
|
|
13
|
+
* raw OpenAPI JSON to the SKMTC internal boolean representation with proper validation.
|
|
14
|
+
*
|
|
15
|
+
* The transformation follows a pipeline approach:
|
|
16
|
+
* 1. Parse nullable flag and extract base value
|
|
17
|
+
* 2. Parse example values with nullable support
|
|
18
|
+
* 3. Parse enumeration constraints (typically [true], [false], or [true, false])
|
|
19
|
+
* 4. Parse default values
|
|
20
|
+
* 5. Create final OasBoolean instance
|
|
21
|
+
*
|
|
22
|
+
* @param args - Transformation arguments
|
|
23
|
+
* @param args.value - The OpenAPI v3 boolean schema object to transform
|
|
24
|
+
* @param args.context - Parse context providing utilities and tracing
|
|
25
|
+
* @returns Transformed OAS boolean object with parsed properties
|
|
26
|
+
*
|
|
27
|
+
* @example Basic boolean transformation
|
|
28
|
+
* ```typescript
|
|
29
|
+
* import { toBoolean } from '@skmtc/core';
|
|
30
|
+
*
|
|
31
|
+
* const openApiBoolean = {
|
|
32
|
+
* type: 'boolean',
|
|
33
|
+
* default: false
|
|
34
|
+
* };
|
|
35
|
+
*
|
|
36
|
+
* const oasBoolean = toBoolean({
|
|
37
|
+
* value: openApiBoolean,
|
|
38
|
+
* context: parseContext
|
|
39
|
+
* });
|
|
40
|
+
*
|
|
41
|
+
* console.log(oasBoolean.default); // false
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* @example Boolean with nullable and enum
|
|
45
|
+
* ```typescript
|
|
46
|
+
* const flagBoolean = {
|
|
47
|
+
* type: 'boolean',
|
|
48
|
+
* nullable: true,
|
|
49
|
+
* enum: [true, null],
|
|
50
|
+
* default: null,
|
|
51
|
+
* example: true,
|
|
52
|
+
* title: 'Feature Flag',
|
|
53
|
+
* description: 'Whether the feature is enabled'
|
|
54
|
+
* };
|
|
55
|
+
*
|
|
56
|
+
* const oasBoolean = toBoolean({
|
|
57
|
+
* value: flagBoolean,
|
|
58
|
+
* context: parseContext
|
|
59
|
+
* });
|
|
60
|
+
*
|
|
61
|
+
* console.log(oasBoolean.nullable); // true
|
|
62
|
+
* console.log(oasBoolean.enums); // [true, null]
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
8
65
|
export declare const toBoolean: ({ value, context }: ToBooleanArgs) => OasBoolean;
|
|
9
66
|
type ToParsedBooleanArgs<Nullable extends boolean | undefined> = {
|
|
10
67
|
value: Omit<OpenAPIV3.SchemaObject, 'nullable' | 'example' | 'enums'>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toBoolean.d.ts","sourceRoot":"","sources":["../../../src/oas/boolean/toBoolean.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AASzC,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,SAAS,CAAC,YAAY,CAAA;IAC7B,OAAO,EAAE,YAAY,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,oBAAoB,aAAa,KAAG,UAmC7D,CAAA;AAED,KAAK,mBAAmB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC/D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC,CAAA;IACrE,OAAO,EAAE,YAAY,CAAA;IACrB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IACjF,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACrF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;CACvF,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,4DAOnE,mBAAmB,CAAC,QAAQ,CAAC,KAAG,UAAU,CAAC,QAAQ,CAmBrD,CAAA"}
|
|
1
|
+
{"version":3,"file":"toBoolean.d.ts","sourceRoot":"","sources":["../../../src/oas/boolean/toBoolean.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AASzC,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,SAAS,CAAC,YAAY,CAAA;IAC7B,OAAO,EAAE,YAAY,CAAA;CACtB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,eAAO,MAAM,SAAS,GAAI,oBAAoB,aAAa,KAAG,UAmC7D,CAAA;AAED,KAAK,mBAAmB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC/D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC,CAAA;IACrE,OAAO,EAAE,YAAY,CAAA;IACrB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IACjF,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,GAAG,SAAS,CAAA;IACrF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;CACvF,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,4DAOnE,mBAAmB,CAAC,QAAQ,CAAC,KAAG,UAAU,CAAC,QAAQ,CAmBrD,CAAA"}
|
|
@@ -42,6 +42,63 @@ const parseNullable_js_1 = require("../_helpers/parseNullable.js");
|
|
|
42
42
|
const parseExample_js_1 = require("../_helpers/parseExample.js");
|
|
43
43
|
const parseEnum_js_1 = require("../_helpers/parseEnum.js");
|
|
44
44
|
const parseDefault_js_1 = require("../_helpers/parseDefault.js");
|
|
45
|
+
/**
|
|
46
|
+
* Transforms an OpenAPI v3 boolean schema object into an internal OAS boolean representation.
|
|
47
|
+
*
|
|
48
|
+
* This function processes OpenAPI boolean schemas by extracting and parsing nullable values,
|
|
49
|
+
* examples, enumerations, and default values. It handles the complete transformation from
|
|
50
|
+
* raw OpenAPI JSON to the SKMTC internal boolean representation with proper validation.
|
|
51
|
+
*
|
|
52
|
+
* The transformation follows a pipeline approach:
|
|
53
|
+
* 1. Parse nullable flag and extract base value
|
|
54
|
+
* 2. Parse example values with nullable support
|
|
55
|
+
* 3. Parse enumeration constraints (typically [true], [false], or [true, false])
|
|
56
|
+
* 4. Parse default values
|
|
57
|
+
* 5. Create final OasBoolean instance
|
|
58
|
+
*
|
|
59
|
+
* @param args - Transformation arguments
|
|
60
|
+
* @param args.value - The OpenAPI v3 boolean schema object to transform
|
|
61
|
+
* @param args.context - Parse context providing utilities and tracing
|
|
62
|
+
* @returns Transformed OAS boolean object with parsed properties
|
|
63
|
+
*
|
|
64
|
+
* @example Basic boolean transformation
|
|
65
|
+
* ```typescript
|
|
66
|
+
* import { toBoolean } from '@skmtc/core';
|
|
67
|
+
*
|
|
68
|
+
* const openApiBoolean = {
|
|
69
|
+
* type: 'boolean',
|
|
70
|
+
* default: false
|
|
71
|
+
* };
|
|
72
|
+
*
|
|
73
|
+
* const oasBoolean = toBoolean({
|
|
74
|
+
* value: openApiBoolean,
|
|
75
|
+
* context: parseContext
|
|
76
|
+
* });
|
|
77
|
+
*
|
|
78
|
+
* console.log(oasBoolean.default); // false
|
|
79
|
+
* ```
|
|
80
|
+
*
|
|
81
|
+
* @example Boolean with nullable and enum
|
|
82
|
+
* ```typescript
|
|
83
|
+
* const flagBoolean = {
|
|
84
|
+
* type: 'boolean',
|
|
85
|
+
* nullable: true,
|
|
86
|
+
* enum: [true, null],
|
|
87
|
+
* default: null,
|
|
88
|
+
* example: true,
|
|
89
|
+
* title: 'Feature Flag',
|
|
90
|
+
* description: 'Whether the feature is enabled'
|
|
91
|
+
* };
|
|
92
|
+
*
|
|
93
|
+
* const oasBoolean = toBoolean({
|
|
94
|
+
* value: flagBoolean,
|
|
95
|
+
* context: parseContext
|
|
96
|
+
* });
|
|
97
|
+
*
|
|
98
|
+
* console.log(oasBoolean.nullable); // true
|
|
99
|
+
* console.log(oasBoolean.enums); // [true, null]
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
45
102
|
const toBoolean = ({ value, context }) => {
|
|
46
103
|
const { nullable, value: valueWithoutNullable } = (0, parseNullable_js_1.parseNullable)({
|
|
47
104
|
value,
|