@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.
Files changed (109) hide show
  1. package/esm/context/CoreContext.d.ts +3 -0
  2. package/esm/context/CoreContext.d.ts.map +1 -1
  3. package/esm/context/CoreContext.js +17 -12
  4. package/esm/context/GenerateContext.d.ts +2 -1
  5. package/esm/context/GenerateContext.d.ts.map +1 -1
  6. package/esm/context/ParseContext.d.ts +3 -3
  7. package/esm/context/ParseContext.d.ts.map +1 -1
  8. package/esm/context/RenderContext.d.ts +4 -1
  9. package/esm/context/RenderContext.d.ts.map +1 -1
  10. package/esm/context/RenderContext.js +11 -6
  11. package/esm/dsl/operation/OperationDriver.d.ts +36 -0
  12. package/esm/dsl/operation/OperationDriver.d.ts.map +1 -1
  13. package/esm/dsl/operation/OperationDriver.js +36 -0
  14. package/esm/dsl/operation/toOperationBase.d.ts +58 -0
  15. package/esm/dsl/operation/toOperationBase.d.ts.map +1 -1
  16. package/esm/dsl/operation/toOperationBase.js +46 -0
  17. package/esm/dsl/operation/toOperationEntry.d.ts +37 -0
  18. package/esm/dsl/operation/toOperationEntry.d.ts.map +1 -1
  19. package/esm/dsl/operation/toOperationEntry.js +28 -0
  20. package/esm/mod.d.ts +1 -0
  21. package/esm/mod.d.ts.map +1 -1
  22. package/esm/mod.js +1 -0
  23. package/esm/oas/array/Array.d.ts +26 -0
  24. package/esm/oas/array/Array.d.ts.map +1 -1
  25. package/esm/oas/array/Array.js +26 -0
  26. package/esm/oas/array/array-types.d.ts +12 -0
  27. package/esm/oas/array/array-types.d.ts.map +1 -1
  28. package/esm/oas/array/array-types.js +6 -0
  29. package/esm/oas/boolean/Boolean.d.ts +26 -0
  30. package/esm/oas/boolean/Boolean.d.ts.map +1 -1
  31. package/esm/oas/boolean/Boolean.js +26 -0
  32. package/esm/oas/boolean/toBoolean.d.ts +57 -0
  33. package/esm/oas/boolean/toBoolean.d.ts.map +1 -1
  34. package/esm/oas/boolean/toBoolean.js +57 -0
  35. package/esm/oas/number/toNumber.d.ts +62 -0
  36. package/esm/oas/number/toNumber.d.ts.map +1 -1
  37. package/esm/oas/number/toNumber.js +62 -0
  38. package/esm/oas/parameter/Parameter.d.ts +47 -0
  39. package/esm/oas/parameter/Parameter.d.ts.map +1 -1
  40. package/esm/oas/parameter/Parameter.js +47 -0
  41. package/esm/types/CustomValue.d.ts +58 -0
  42. package/esm/types/CustomValue.d.ts.map +1 -1
  43. package/esm/types/CustomValue.js +58 -0
  44. package/esm/types/DenoJson.d.ts +24 -0
  45. package/esm/types/DenoJson.d.ts.map +1 -1
  46. package/esm/types/DenoJson.js +12 -0
  47. package/esm/types/Enrichments.d.ts +103 -0
  48. package/esm/types/Enrichments.d.ts.map +1 -1
  49. package/esm/types/Enrichments.js +52 -0
  50. package/esm/types/GeneratedValue.d.ts +17 -0
  51. package/esm/types/GeneratedValue.d.ts.map +1 -1
  52. package/esm/types/Logger.d.ts +9 -0
  53. package/esm/types/Logger.d.ts.map +1 -0
  54. package/esm/types/Logger.js +1 -0
  55. package/package.json +1 -1
  56. package/script/context/CoreContext.d.ts +3 -0
  57. package/script/context/CoreContext.d.ts.map +1 -1
  58. package/script/context/CoreContext.js +17 -12
  59. package/script/context/GenerateContext.d.ts +2 -1
  60. package/script/context/GenerateContext.d.ts.map +1 -1
  61. package/script/context/ParseContext.d.ts +3 -3
  62. package/script/context/ParseContext.d.ts.map +1 -1
  63. package/script/context/RenderContext.d.ts +4 -1
  64. package/script/context/RenderContext.d.ts.map +1 -1
  65. package/script/context/RenderContext.js +11 -6
  66. package/script/dsl/operation/OperationDriver.d.ts +36 -0
  67. package/script/dsl/operation/OperationDriver.d.ts.map +1 -1
  68. package/script/dsl/operation/OperationDriver.js +36 -0
  69. package/script/dsl/operation/toOperationBase.d.ts +58 -0
  70. package/script/dsl/operation/toOperationBase.d.ts.map +1 -1
  71. package/script/dsl/operation/toOperationBase.js +46 -0
  72. package/script/dsl/operation/toOperationEntry.d.ts +37 -0
  73. package/script/dsl/operation/toOperationEntry.d.ts.map +1 -1
  74. package/script/dsl/operation/toOperationEntry.js +28 -0
  75. package/script/mod.d.ts +1 -0
  76. package/script/mod.d.ts.map +1 -1
  77. package/script/mod.js +1 -0
  78. package/script/oas/array/Array.d.ts +26 -0
  79. package/script/oas/array/Array.d.ts.map +1 -1
  80. package/script/oas/array/Array.js +26 -0
  81. package/script/oas/array/array-types.d.ts +12 -0
  82. package/script/oas/array/array-types.d.ts.map +1 -1
  83. package/script/oas/array/array-types.js +6 -0
  84. package/script/oas/boolean/Boolean.d.ts +26 -0
  85. package/script/oas/boolean/Boolean.d.ts.map +1 -1
  86. package/script/oas/boolean/Boolean.js +26 -0
  87. package/script/oas/boolean/toBoolean.d.ts +57 -0
  88. package/script/oas/boolean/toBoolean.d.ts.map +1 -1
  89. package/script/oas/boolean/toBoolean.js +57 -0
  90. package/script/oas/number/toNumber.d.ts +62 -0
  91. package/script/oas/number/toNumber.d.ts.map +1 -1
  92. package/script/oas/number/toNumber.js +62 -0
  93. package/script/oas/parameter/Parameter.d.ts +47 -0
  94. package/script/oas/parameter/Parameter.d.ts.map +1 -1
  95. package/script/oas/parameter/Parameter.js +47 -0
  96. package/script/types/CustomValue.d.ts +58 -0
  97. package/script/types/CustomValue.d.ts.map +1 -1
  98. package/script/types/CustomValue.js +58 -0
  99. package/script/types/DenoJson.d.ts +24 -0
  100. package/script/types/DenoJson.d.ts.map +1 -1
  101. package/script/types/DenoJson.js +12 -0
  102. package/script/types/Enrichments.d.ts +103 -0
  103. package/script/types/Enrichments.d.ts.map +1 -1
  104. package/script/types/Enrichments.js +52 -0
  105. package/script/types/GeneratedValue.d.ts +17 -0
  106. package/script/types/GeneratedValue.d.ts.map +1 -1
  107. package/script/types/Logger.d.ts +9 -0
  108. package/script/types/Logger.d.ts.map +1 -0
  109. 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';
@@ -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;gBAE9E,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC;IAczC,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC;IAIjC,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC;IAI7B,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAAC;IAIjC,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,SAAS,CAAC,iBAAiB;CAexE"}
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;gBAErE,MAAM,GAAE,aAAa,CAAC,QAAQ,CAAM;IAUhD,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC;IAIjC,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC;IAI/B,WAAW,IAAI,UAAU,CAAC,QAAQ,CAAC;IAKnC,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC,oBAAoB;CAW5E"}
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,