@orval/core 8.12.3 → 8.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +212 -3
- package/dist/index.mjs +938 -53
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -35,6 +35,13 @@ interface NormalizedOutputOptions {
|
|
|
35
35
|
operationSchemas?: string;
|
|
36
36
|
namingConvention: NamingConvention;
|
|
37
37
|
fileExtension: string;
|
|
38
|
+
/**
|
|
39
|
+
* File extension for schema artifacts (TS types or Zod schemas) under
|
|
40
|
+
* `schemas:`. Defaults to `.zod.ts` when the output is Zod schemas
|
|
41
|
+
* (`schemas: { type: 'zod' }` or `client: 'zod'` + `generateReusableSchemas`),
|
|
42
|
+
* otherwise `.ts`. A user-set `output.fileExtension` always wins.
|
|
43
|
+
*/
|
|
44
|
+
schemaFileExtension: string;
|
|
38
45
|
mode: OutputMode;
|
|
39
46
|
mock: NormalizedMocksConfig;
|
|
40
47
|
override: NormalizedOverrideOutput;
|
|
@@ -53,6 +60,7 @@ interface NormalizedOutputOptions {
|
|
|
53
60
|
unionAddMissingProperties: boolean;
|
|
54
61
|
optionsParamRequired: boolean;
|
|
55
62
|
propertySortOrder: PropertySortOrder;
|
|
63
|
+
factoryMethods?: NormalizedFactoryMethodsOptions;
|
|
56
64
|
}
|
|
57
65
|
interface NormalizedParamsSerializerOptions {
|
|
58
66
|
qs?: Record<string, unknown>;
|
|
@@ -114,6 +122,7 @@ interface NormalizedOverrideOutput {
|
|
|
114
122
|
angular: NormalizedAngularOptions;
|
|
115
123
|
swr: SwrOptions;
|
|
116
124
|
zod: NormalizedZodOptions;
|
|
125
|
+
effect: NormalizedEffectOptions;
|
|
117
126
|
fetch: NormalizedFetchOptions;
|
|
118
127
|
operationName?: (operation: OpenApiOperationObject, route: string, verb: Verbs) => string;
|
|
119
128
|
requestOptions: Record<string, unknown> | boolean;
|
|
@@ -177,6 +186,7 @@ interface NormalizedOperationOptions {
|
|
|
177
186
|
angular?: NormalizedAngularOptions;
|
|
178
187
|
swr?: SwrOptions;
|
|
179
188
|
zod?: NormalizedZodOptions;
|
|
189
|
+
effect?: NormalizedEffectOptions;
|
|
180
190
|
operationName?: (operation: OpenApiOperationObject, route: string, verb: Verbs) => string;
|
|
181
191
|
fetch?: FetchOptions;
|
|
182
192
|
formData?: NormalizedFormDataType<NormalizedMutator>;
|
|
@@ -240,6 +250,19 @@ declare const EnumGeneration: {
|
|
|
240
250
|
};
|
|
241
251
|
type EnumGeneration = (typeof EnumGeneration)[keyof typeof EnumGeneration];
|
|
242
252
|
type SchemaGenerationType = 'typescript' | 'zod';
|
|
253
|
+
type FactoryMethodsMode = 'single' | 'split' | 'single-split';
|
|
254
|
+
interface FactoryMethodsOptions {
|
|
255
|
+
functionNamePrefix?: string;
|
|
256
|
+
mode?: FactoryMethodsMode;
|
|
257
|
+
outputDirectory?: string;
|
|
258
|
+
includeOptionalProperty?: boolean;
|
|
259
|
+
}
|
|
260
|
+
interface NormalizedFactoryMethodsOptions {
|
|
261
|
+
functionNamePrefix: string;
|
|
262
|
+
mode: FactoryMethodsMode;
|
|
263
|
+
outputDirectory: string;
|
|
264
|
+
includeOptionalProperty: boolean;
|
|
265
|
+
}
|
|
243
266
|
interface SchemaOptions {
|
|
244
267
|
path: string;
|
|
245
268
|
type: SchemaGenerationType;
|
|
@@ -260,6 +283,14 @@ interface OutputOptions {
|
|
|
260
283
|
operationSchemas?: string;
|
|
261
284
|
namingConvention?: NamingConvention;
|
|
262
285
|
fileExtension?: string;
|
|
286
|
+
/**
|
|
287
|
+
* Optional file extension applied only to schema artifacts (TS types or
|
|
288
|
+
* Zod schemas) under `schemas:`. Takes precedence over `fileExtension`
|
|
289
|
+
* for schema files. Defaults to `.zod.ts` when the output is Zod schemas
|
|
290
|
+
* (`schemas: { type: 'zod' }` or `client: 'zod'` + `generateReusableSchemas`),
|
|
291
|
+
* otherwise mirrors `fileExtension`.
|
|
292
|
+
*/
|
|
293
|
+
schemaFileExtension?: string;
|
|
263
294
|
mode?: OutputMode;
|
|
264
295
|
mock?: OutputMocksOption;
|
|
265
296
|
override?: OverrideOutput;
|
|
@@ -278,6 +309,7 @@ interface OutputOptions {
|
|
|
278
309
|
unionAddMissingProperties?: boolean;
|
|
279
310
|
optionsParamRequired?: boolean;
|
|
280
311
|
propertySortOrder?: PropertySortOrder;
|
|
312
|
+
factoryMethods?: FactoryMethodsOptions;
|
|
281
313
|
}
|
|
282
314
|
interface InputFiltersOptions {
|
|
283
315
|
mode?: 'include' | 'exclude';
|
|
@@ -317,6 +349,7 @@ declare const OutputClient: {
|
|
|
317
349
|
readonly VUE_QUERY: "vue-query";
|
|
318
350
|
readonly SWR: "swr";
|
|
319
351
|
readonly ZOD: "zod";
|
|
352
|
+
readonly EFFECT: "effect";
|
|
320
353
|
readonly HONO: "hono";
|
|
321
354
|
readonly FETCH: "fetch";
|
|
322
355
|
readonly MCP: "mcp";
|
|
@@ -358,6 +391,8 @@ interface MswMockOptions extends CommonMockOptions {
|
|
|
358
391
|
}
|
|
359
392
|
interface FakerMockOptions extends CommonMockOptions {
|
|
360
393
|
type: typeof OutputMockType.FAKER;
|
|
394
|
+
schemas?: boolean;
|
|
395
|
+
operationResponses?: boolean;
|
|
361
396
|
}
|
|
362
397
|
type GlobalMockOptions = MswMockOptions | FakerMockOptions;
|
|
363
398
|
interface OutputMocksConfig {
|
|
@@ -377,6 +412,7 @@ type OverrideMockOptions = Partial<GlobalMockOptions> & {
|
|
|
377
412
|
numberMin?: number;
|
|
378
413
|
numberMax?: number;
|
|
379
414
|
required?: boolean;
|
|
415
|
+
nonNullable?: boolean;
|
|
380
416
|
properties?: MockProperties;
|
|
381
417
|
format?: Record<string, unknown>;
|
|
382
418
|
fractionDigits?: number;
|
|
@@ -472,6 +508,7 @@ interface OverrideOutput {
|
|
|
472
508
|
swr?: SwrOptions;
|
|
473
509
|
angular?: AngularOptions;
|
|
474
510
|
zod?: ZodOptions;
|
|
511
|
+
effect?: EffectOptions;
|
|
475
512
|
operationName?: (operation: OpenApiOperationObject, route: string, verb: Verbs) => string;
|
|
476
513
|
fetch?: FetchOptions;
|
|
477
514
|
requestOptions?: Record<string, unknown> | boolean;
|
|
@@ -566,10 +603,42 @@ interface ZodOptions {
|
|
|
566
603
|
body?: Mutator;
|
|
567
604
|
response?: Mutator;
|
|
568
605
|
};
|
|
606
|
+
/**
|
|
607
|
+
* Mutator referencing a function called once per emitted validator at schema
|
|
608
|
+
* construction time. It receives codegen-time context (operation, location,
|
|
609
|
+
* schema name, field path, validator name) and returns a Zod `params` object
|
|
610
|
+
* (e.g. `{ error: ... }`) that is appended as the trailing argument.
|
|
611
|
+
*
|
|
612
|
+
* The plural name follows Zod's own term for the validator's second argument
|
|
613
|
+
* (`z.string(params)`) and is unrelated to the singular `param` key used by
|
|
614
|
+
* `generate` / `coerce` / `preprocess` above, which refers to the path-parameter
|
|
615
|
+
* location.
|
|
616
|
+
*/
|
|
617
|
+
params?: Mutator;
|
|
569
618
|
dateTimeOptions?: ZodDateTimeOptions;
|
|
570
619
|
timeOptions?: ZodTimeOptions;
|
|
571
620
|
generateEachHttpStatus?: boolean;
|
|
572
621
|
useBrandedTypes?: boolean;
|
|
622
|
+
/**
|
|
623
|
+
* When true, emits one reusable Zod schema per `#/components/schemas/*` `$ref`
|
|
624
|
+
* (with `namingConvention` applied to the name) and references it everywhere
|
|
625
|
+
* instead of inlining. Default `false`. See `docs/superpowers/specs/2026-05-26-reusable-zod-schemas-design.md`.
|
|
626
|
+
*/
|
|
627
|
+
generateReusableSchemas?: boolean;
|
|
628
|
+
/**
|
|
629
|
+
* When true (zod v4 only), attaches registry metadata to generated
|
|
630
|
+
* **component** schemas via `.meta({ id, description?, deprecated? })`: `id` is
|
|
631
|
+
* the schema name, plus `description`/`deprecated` when the OpenAPI schema
|
|
632
|
+
* provides them. On zod v3 (which has no `.meta()`) descriptions still emit
|
|
633
|
+
* via `.describe()`. Default `false`.
|
|
634
|
+
*/
|
|
635
|
+
generateMeta?: boolean;
|
|
636
|
+
}
|
|
637
|
+
interface EffectOptions {
|
|
638
|
+
strict?: ZodOptions['strict'];
|
|
639
|
+
generate?: ZodOptions['generate'];
|
|
640
|
+
generateEachHttpStatus?: boolean;
|
|
641
|
+
useBrandedTypes?: boolean;
|
|
573
642
|
}
|
|
574
643
|
type ZodCoerceType = 'string' | 'number' | 'boolean' | 'bigint' | 'date';
|
|
575
644
|
interface NormalizedZodOptions {
|
|
@@ -601,11 +670,20 @@ interface NormalizedZodOptions {
|
|
|
601
670
|
body?: NormalizedMutator;
|
|
602
671
|
response?: NormalizedMutator;
|
|
603
672
|
};
|
|
673
|
+
params?: NormalizedMutator;
|
|
604
674
|
generateEachHttpStatus: boolean;
|
|
605
675
|
useBrandedTypes: boolean;
|
|
676
|
+
generateReusableSchemas: boolean;
|
|
677
|
+
generateMeta: boolean;
|
|
606
678
|
dateTimeOptions: ZodDateTimeOptions;
|
|
607
679
|
timeOptions: ZodTimeOptions;
|
|
608
680
|
}
|
|
681
|
+
interface NormalizedEffectOptions {
|
|
682
|
+
strict: NormalizedZodOptions['strict'];
|
|
683
|
+
generate: NormalizedZodOptions['generate'];
|
|
684
|
+
generateEachHttpStatus: boolean;
|
|
685
|
+
useBrandedTypes: boolean;
|
|
686
|
+
}
|
|
609
687
|
/**
|
|
610
688
|
* A single parameter value for `mutationInvalidates` params.
|
|
611
689
|
*
|
|
@@ -666,6 +744,7 @@ interface NormalizedQueryOptions {
|
|
|
666
744
|
shouldExportMutatorHooks?: boolean;
|
|
667
745
|
shouldExportHttpClient?: boolean;
|
|
668
746
|
shouldExportQueryKey?: boolean;
|
|
747
|
+
shouldFilterQueryKey?: boolean;
|
|
669
748
|
shouldSplitQueryKey?: boolean;
|
|
670
749
|
useOperationIdAsQueryKey?: boolean;
|
|
671
750
|
signal?: boolean;
|
|
@@ -691,6 +770,7 @@ interface QueryOptions {
|
|
|
691
770
|
shouldExportMutatorHooks?: boolean;
|
|
692
771
|
shouldExportHttpClient?: boolean;
|
|
693
772
|
shouldExportQueryKey?: boolean;
|
|
773
|
+
shouldFilterQueryKey?: boolean;
|
|
694
774
|
shouldSplitQueryKey?: boolean;
|
|
695
775
|
useOperationIdAsQueryKey?: boolean;
|
|
696
776
|
signal?: boolean;
|
|
@@ -787,6 +867,7 @@ interface OperationOptions {
|
|
|
787
867
|
angular?: AngularOptions;
|
|
788
868
|
swr?: SwrOptions;
|
|
789
869
|
zod?: ZodOptions;
|
|
870
|
+
effect?: EffectOptions;
|
|
790
871
|
operationName?: (operation: OpenApiOperationObject, route: string, verb: Verbs) => string;
|
|
791
872
|
fetch?: FetchOptions;
|
|
792
873
|
formData?: boolean | Mutator | FormDataType<Mutator>;
|
|
@@ -833,6 +914,28 @@ interface ContextSpec {
|
|
|
833
914
|
spec: OpenApiDocument;
|
|
834
915
|
parents?: string[];
|
|
835
916
|
output: NormalizedOutputOptions;
|
|
917
|
+
/**
|
|
918
|
+
* Per-schema dynamic scope mapping `$dynamicAnchor` names to concrete schema
|
|
919
|
+
* entries or generic parameter placeholders. Populated by `buildDynamicScope`.
|
|
920
|
+
*/
|
|
921
|
+
dynamicScope?: Partial<Record<string, DynamicScopeEntry>>;
|
|
922
|
+
}
|
|
923
|
+
/**
|
|
924
|
+
* Maps a `$dynamicAnchor` name to its resolution target.
|
|
925
|
+
*
|
|
926
|
+
* Concrete entry (bound via `$ref`):
|
|
927
|
+
* - `name` — the generated TypeScript type name (e.g. `User`)
|
|
928
|
+
* - `schemaName` — the original key in `components.schemas` (e.g. `User`)
|
|
929
|
+
*
|
|
930
|
+
* Parameter entry (unbound `$defs` placeholder):
|
|
931
|
+
* - `isParameter` — `true`, signals this is a generic type parameter
|
|
932
|
+
* - `name` — the `$dynamicAnchor` name used as the type parameter (e.g. `itemType`)
|
|
933
|
+
* - `schemaName` — same as `name` for parameters
|
|
934
|
+
*/
|
|
935
|
+
interface DynamicScopeEntry {
|
|
936
|
+
name: string;
|
|
937
|
+
schemaName: string;
|
|
938
|
+
isParameter?: boolean;
|
|
836
939
|
}
|
|
837
940
|
interface GlobalOptions {
|
|
838
941
|
watch?: boolean | string | string[];
|
|
@@ -897,6 +1000,9 @@ interface GeneratorSchema {
|
|
|
897
1000
|
imports: GeneratorImport[];
|
|
898
1001
|
dependencies?: string[];
|
|
899
1002
|
schema?: OpenApiSchemaObject;
|
|
1003
|
+
factory?: string;
|
|
1004
|
+
factoryImports?: GeneratorImport[];
|
|
1005
|
+
factoryMode?: FactoryMethodsMode;
|
|
900
1006
|
}
|
|
901
1007
|
interface GeneratorImport {
|
|
902
1008
|
readonly name: string;
|
|
@@ -909,6 +1015,7 @@ interface GeneratorImport {
|
|
|
909
1015
|
readonly syntheticDefaultImport?: boolean;
|
|
910
1016
|
readonly namespaceImport?: boolean;
|
|
911
1017
|
readonly importPath?: string;
|
|
1018
|
+
readonly schemaFactory?: boolean;
|
|
912
1019
|
}
|
|
913
1020
|
interface GeneratorDependency {
|
|
914
1021
|
readonly exports: readonly GeneratorImport[];
|
|
@@ -1131,6 +1238,7 @@ interface GetterQueryParam {
|
|
|
1131
1238
|
schema: GeneratorSchema;
|
|
1132
1239
|
deps: GeneratorSchema[];
|
|
1133
1240
|
isOptional: boolean;
|
|
1241
|
+
paramNames?: string[];
|
|
1134
1242
|
originalSchema?: OpenApiSchemaObject;
|
|
1135
1243
|
requiredNullableKeys?: string[];
|
|
1136
1244
|
/**
|
|
@@ -1326,6 +1434,12 @@ declare const TEMPLATE_TAG_REGEX: RegExp;
|
|
|
1326
1434
|
//#region src/generators/component-definition.d.ts
|
|
1327
1435
|
declare function generateComponentDefinition(responses: OpenApiComponentsObject['responses'] | OpenApiComponentsObject['requestBodies'], context: ContextSpec, suffix: string): GeneratorSchema[];
|
|
1328
1436
|
//#endregion
|
|
1437
|
+
//#region src/generators/factory.d.ts
|
|
1438
|
+
declare function generateFactory(schema: OpenApiSchemaObject, name: string, context: ContextSpec): {
|
|
1439
|
+
model: string;
|
|
1440
|
+
imports: GeneratorImport[];
|
|
1441
|
+
} | undefined;
|
|
1442
|
+
//#endregion
|
|
1329
1443
|
//#region src/generators/imports.d.ts
|
|
1330
1444
|
interface GenerateImportsOptions {
|
|
1331
1445
|
imports: readonly GeneratorImport[];
|
|
@@ -1870,6 +1984,13 @@ interface RefInfo {
|
|
|
1870
1984
|
* @param $ref
|
|
1871
1985
|
*/
|
|
1872
1986
|
declare function getRefInfo($ref: string, context: ContextSpec): RefInfo;
|
|
1987
|
+
/**
|
|
1988
|
+
* Extracts the anchor name from a fragment-only `$dynamicRef` (e.g. `#category` → `category`).
|
|
1989
|
+
*
|
|
1990
|
+
* Returns `undefined` for external-document `$dynamicRef` values (e.g. `other.json#anchor`)
|
|
1991
|
+
* which are not supported.
|
|
1992
|
+
*/
|
|
1993
|
+
declare function getDynamicAnchorName(dynamicRef: string): string | undefined;
|
|
1873
1994
|
//#endregion
|
|
1874
1995
|
//#region src/getters/res-req-types.d.ts
|
|
1875
1996
|
declare function getResReqTypes(responsesOrRequests: [string, OpenApiReferenceObject | OpenApiResponseObject | OpenApiRequestBodyObject][], name: string, context: ContextSpec, defaultType?: string, uniqueKey?: (item: ResReqTypesValue, index: number, data: ResReqTypesValue[]) => unknown): ResReqTypesValue[];
|
|
@@ -1992,6 +2113,9 @@ declare function resolveObject({
|
|
|
1992
2113
|
}: ResolveOptions): ResolverValue;
|
|
1993
2114
|
//#endregion
|
|
1994
2115
|
//#region src/resolvers/ref.d.ts
|
|
2116
|
+
/** Convert a `$dynamicAnchor` name to a valid TypeScript generic parameter identifier. */
|
|
2117
|
+
declare function dynamicAnchorToParamName(anchor: string): string;
|
|
2118
|
+
declare function dynamicAnchorsToUniqueParamNames(anchors: string[]): Map<string, string>;
|
|
1995
2119
|
type Example = OpenApiExampleObject | OpenApiReferenceObject;
|
|
1996
2120
|
type ResolvedExample = unknown;
|
|
1997
2121
|
type Examples = Example[] | Record<string, Example> | ResolvedExample[] | Record<string, ResolvedExample> | undefined;
|
|
@@ -2008,6 +2132,43 @@ declare function resolveRef<TSchema extends object = OpenApiComponentsObject>(sc
|
|
|
2008
2132
|
schema: TSchema;
|
|
2009
2133
|
imports: GeneratorImport[];
|
|
2010
2134
|
};
|
|
2135
|
+
/**
|
|
2136
|
+
* Describes a resolved generic alias binding — the concrete type arguments
|
|
2137
|
+
* that fill the template's `$dynamicAnchor` slots for a given `$ref` with
|
|
2138
|
+
* `$defs` overrides.
|
|
2139
|
+
*
|
|
2140
|
+
* Produced by {@link extractBoundAliasInfo} and consumed by `resolveValue`
|
|
2141
|
+
* to emit instantiated generic type expressions (e.g. `Paginated<User>`).
|
|
2142
|
+
*/
|
|
2143
|
+
interface BoundAliasInfo {
|
|
2144
|
+
genericName: string;
|
|
2145
|
+
genericParams: string[];
|
|
2146
|
+
typeArgs: string[];
|
|
2147
|
+
imports: {
|
|
2148
|
+
name: string;
|
|
2149
|
+
schemaName: string;
|
|
2150
|
+
}[];
|
|
2151
|
+
extraSchemas?: (OpenApiSchemaObject | OpenApiReferenceObject)[];
|
|
2152
|
+
}
|
|
2153
|
+
/**
|
|
2154
|
+
* Extract bound-alias information from a schema that references a generic template
|
|
2155
|
+
* and binds `$dynamicAnchor` entries to concrete types via `$defs`.
|
|
2156
|
+
*/
|
|
2157
|
+
declare function extractBoundAliasInfo(schema: OpenApiSchemaObject | OpenApiReferenceObject, context: ContextSpec): BoundAliasInfo | undefined;
|
|
2158
|
+
/**
|
|
2159
|
+
* Build the dynamic scope for a schema: maps `$dynamicAnchor` names to concrete
|
|
2160
|
+
* type entries for self-referential resolution, `$defs` bindings, and sibling anchors.
|
|
2161
|
+
*/
|
|
2162
|
+
declare function buildDynamicScope(schemaName: string, schema: OpenApiSchemaObject, context: ContextSpec): Record<string, DynamicScopeEntry>;
|
|
2163
|
+
/**
|
|
2164
|
+
* Resolve a `$dynamicRef` anchor to its concrete type using the current dynamic scope.
|
|
2165
|
+
* Returns `{ schema: {}, resolvedTypeName: 'unknown' }` when no scope override exists.
|
|
2166
|
+
*/
|
|
2167
|
+
declare function resolveDynamicRef(anchorName: string, context: ContextSpec, imports?: GeneratorImport[]): {
|
|
2168
|
+
schema: OpenApiSchemaObject;
|
|
2169
|
+
imports: GeneratorImport[];
|
|
2170
|
+
resolvedTypeName: string;
|
|
2171
|
+
};
|
|
2011
2172
|
/** Recursively resolves `$ref` entries in an examples array or record. */
|
|
2012
2173
|
declare function resolveExampleRefs(examples: Examples, context: ContextSpec): ResolvedExample[] | Record<string, ResolvedExample> | undefined;
|
|
2013
2174
|
//#endregion
|
|
@@ -2018,6 +2179,22 @@ interface ResolveValueOptions {
|
|
|
2018
2179
|
context: ContextSpec;
|
|
2019
2180
|
formDataContext?: FormDataContext;
|
|
2020
2181
|
}
|
|
2182
|
+
/**
|
|
2183
|
+
* Resolves an OpenAPI schema or reference object to a {@link ResolverValue}
|
|
2184
|
+
* that carries the TypeScript type string, required imports, and metadata.
|
|
2185
|
+
*
|
|
2186
|
+
* Handles all schema forms in priority order:
|
|
2187
|
+
* 1. **Bound generic alias** — a `$ref` with `$defs` overrides; emits an
|
|
2188
|
+
* instantiated generic expression such as `Paginated<User>`.
|
|
2189
|
+
* 2. **Component `$ref`** — a named `$ref` pointing to `#/components/…`;
|
|
2190
|
+
* emits the schema name as a reference import.
|
|
2191
|
+
* 3. **Non-component `$ref`** — an anonymous or path-level ref; inlines the
|
|
2192
|
+
* resolved schema via {@link getScalar} (cycle-safe).
|
|
2193
|
+
* 4. **`$dynamicRef`** — resolved via the active dynamic scope; falls back to
|
|
2194
|
+
* `unknown` when the anchor is absent or the ref is a bare `#`.
|
|
2195
|
+
* 5. **Plain schema** — delegates to {@link getScalar} for all other cases
|
|
2196
|
+
* (primitives, objects, arrays, enums, …).
|
|
2197
|
+
*/
|
|
2021
2198
|
declare function resolveValue({
|
|
2022
2199
|
schema,
|
|
2023
2200
|
name,
|
|
@@ -2032,6 +2209,24 @@ declare function resolveValue({
|
|
|
2032
2209
|
* @param property
|
|
2033
2210
|
*/
|
|
2034
2211
|
declare function isReference(obj: object): obj is OpenApiReferenceObject;
|
|
2212
|
+
/**
|
|
2213
|
+
* Represents an OpenAPI 3.1 schema object that contains a `$dynamicRef`
|
|
2214
|
+
* keyword, used for recursive or polymorphic schema references.
|
|
2215
|
+
*
|
|
2216
|
+
* @see https://json-schema.org/draft/2020-12/json-schema-core#section-8.2.4
|
|
2217
|
+
*/
|
|
2218
|
+
interface OpenApiDynamicReferenceObject {
|
|
2219
|
+
$dynamicRef: string;
|
|
2220
|
+
[key: string]: unknown;
|
|
2221
|
+
}
|
|
2222
|
+
/**
|
|
2223
|
+
* Discriminator helper for {@link OpenApiDynamicReferenceObject}.
|
|
2224
|
+
*
|
|
2225
|
+
* Returns `true` when `obj` has a `$dynamicRef` string property,
|
|
2226
|
+
* indicating it is an OpenAPI 3.1 dynamic reference rather than a
|
|
2227
|
+
* static `$ref`.
|
|
2228
|
+
*/
|
|
2229
|
+
declare function isDynamicReference(obj: object): obj is OpenApiDynamicReferenceObject;
|
|
2035
2230
|
declare function isDirectory(pathValue: string): boolean;
|
|
2036
2231
|
declare function isObject(x: unknown): x is Record<string, unknown>;
|
|
2037
2232
|
declare function isStringLike(val: unknown): val is string;
|
|
@@ -2249,8 +2444,10 @@ declare function mergeDeep<T extends object, U extends object>(source: T, target
|
|
|
2249
2444
|
//#region src/utils/occurrence.d.ts
|
|
2250
2445
|
declare function count(str: string | undefined, key: string): number;
|
|
2251
2446
|
declare namespace path_d_exports {
|
|
2252
|
-
export { getRelativeImportPath, getSchemaFileName, join, joinSafe, normalizeSafe, relativeSafe, separator$1 as separator, toUnix };
|
|
2447
|
+
export { getRelativeImportPath, getSchemaFileName, isAbsolute, join, joinSafe, normalizeSafe, relativeSafe, resolve, separator$1 as separator, toUnix };
|
|
2253
2448
|
}
|
|
2449
|
+
declare function isAbsolute(value: string): boolean;
|
|
2450
|
+
declare function resolve(...args: string[]): string;
|
|
2254
2451
|
declare function toUnix(value: string): string;
|
|
2255
2452
|
declare function join(...args: string[]): string;
|
|
2256
2453
|
/**
|
|
@@ -2408,6 +2605,16 @@ declare function dedupeUnionType(unionType: string): string;
|
|
|
2408
2605
|
declare function isSyntheticDefaultImportsAllow(config?: Tsconfig): boolean;
|
|
2409
2606
|
declare function getImportExtension(fileExtension: string, tsconfig?: Tsconfig): string;
|
|
2410
2607
|
//#endregion
|
|
2608
|
+
//#region src/writers/file.d.ts
|
|
2609
|
+
/**
|
|
2610
|
+
* Write generated code to a file, stripping trailing whitespace from each line.
|
|
2611
|
+
*
|
|
2612
|
+
* Template literals in code generators can produce lines with only whitespace
|
|
2613
|
+
* when conditional expressions evaluate to empty strings. This function
|
|
2614
|
+
* ensures the output is always clean regardless of generator implementation.
|
|
2615
|
+
*/
|
|
2616
|
+
declare function writeGeneratedFile(filePath: string, content: string): Promise<void>;
|
|
2617
|
+
//#endregion
|
|
2411
2618
|
//#region src/writers/schemas.d.ts
|
|
2412
2619
|
/**
|
|
2413
2620
|
* Split schemas into regular and operation types.
|
|
@@ -2453,6 +2660,7 @@ interface WriteSchemasOptions {
|
|
|
2453
2660
|
header: string;
|
|
2454
2661
|
indexFiles: boolean;
|
|
2455
2662
|
tsconfig?: Tsconfig;
|
|
2663
|
+
factoryOutputDirectory?: string;
|
|
2456
2664
|
}
|
|
2457
2665
|
declare function writeSchemas({
|
|
2458
2666
|
schemaPath,
|
|
@@ -2462,7 +2670,8 @@ declare function writeSchemas({
|
|
|
2462
2670
|
fileExtension,
|
|
2463
2671
|
header,
|
|
2464
2672
|
indexFiles,
|
|
2465
|
-
tsconfig
|
|
2673
|
+
tsconfig,
|
|
2674
|
+
factoryOutputDirectory
|
|
2466
2675
|
}: WriteSchemasOptions): Promise<void>;
|
|
2467
2676
|
//#endregion
|
|
2468
2677
|
//#region src/writers/single-mode.d.ts
|
|
@@ -2515,5 +2724,5 @@ declare function generateTargetForTags(builder: WriteSpecBuilder, options: Norma
|
|
|
2515
2724
|
declare function getOrvalGeneratedTypes(): string;
|
|
2516
2725
|
declare function getTypedResponse(): string;
|
|
2517
2726
|
//#endregion
|
|
2518
|
-
export { AngularHttpResourceOptions, AngularOptions, BODY_TYPE_NAME, BaseUrlFromConstant, BaseUrlFromSpec, BaseUrlRuntime, ClientBuilder, ClientDependenciesBuilder, ClientExtraFilesBuilder, ClientFileBuilder, ClientFooterBuilder, ClientGeneratorsBuilder, ClientHeaderBuilder, ClientMockBuilder, ClientMockGeneratorBuilder, ClientMockGeneratorImplementation, ClientTitleBuilder, CommonMockOptions, Config, ConfigExternal, ConfigFn, ContentTypeFilter, ContextSpec, DeepNonNullable, DefaultTag, EnumGeneration, ErrorWithTag, FakerMockOptions, FetchOptions, FormDataArrayHandling, FormDataContext, FormDataType, GenerateMockImports, GenerateVerbOptionsParams, GenerateVerbsOptionsParams, GeneratorApiBuilder, GeneratorApiOperations, GeneratorApiResponse, GeneratorClient, GeneratorClientExtra, GeneratorClientFooter, GeneratorClientHeader, GeneratorClientImports, GeneratorClientTitle, GeneratorClients, GeneratorDependency, GeneratorImport, GeneratorMockOutput, GeneratorMockOutputFull, GeneratorMutator, GeneratorMutatorParsingInfo, GeneratorOperation, GeneratorOperations, GeneratorOptions, GeneratorSchema, GeneratorTarget, GeneratorTargetFull, GeneratorVerbOptions, GeneratorVerbsOptions, GetterBody, GetterParam, GetterParameters, GetterParams, GetterProp, GetterPropType, GetterProps, GetterQueryParam, GetterResponse, GlobalMockOptions, GlobalOptions, HonoOptions, Hook, HookCommand, HookFunction, HookOption, HooksOptions, ImportOpenApi, InputFiltersOptions, InputOptions, InputTransformerFn, InvalidateTarget, InvalidateTargetParam, JsDocOptions, LogLevel, LogLevels, LogOptions, LogType, Logger, LoggerOptions, McpOptions, McpServerOptions, MockData, MockDataArray, MockDataArrayFn, MockDataObject, MockDataObjectFn, MockOptions, MockProperties, MockPropertiesObject, MockPropertiesObjectFn, MswMockOptions, MutationInvalidatesConfig, MutationInvalidatesRule, Mutator, MutatorObject, NAMED_COMPONENT_SECTIONS, NamingConvention, NormalizedAngularOptions, NormalizedConfig, NormalizedFetchOptions, NormalizedFormDataType, NormalizedHonoOptions, NormalizedHookCommand, NormalizedHookOptions, NormalizedInputOptions, NormalizedJsDocOptions, NormalizedMcpOptions, NormalizedMcpServerOptions, NormalizedMocksConfig, NormalizedMutator, NormalizedOperationOptions, NormalizedOptions, NormalizedOutputOptions, NormalizedOverrideOutput, NormalizedParamsSerializerOptions, NormalizedQueryOptions, NormalizedSchemaOptions, NormalizedZodOptions, OpenApiComponentsObject, OpenApiDocument, OpenApiEncodingObject, OpenApiExampleObject, OpenApiInfoObject, OpenApiMediaTypeObject, OpenApiOperationObject, OpenApiParameterObject, OpenApiPathItemObject, OpenApiPathsObject, OpenApiReferenceObject, OpenApiRequestBodyObject, OpenApiResponseObject, OpenApiResponsesObject, OpenApiSchemaObject, OpenApiSchemaObjectType, OpenApiSchemasObject, OpenApiServerObject, OperationOptions, Options, OptionsExport, OptionsFn, OutputClient, OutputClientFunc, OutputDocsOptions, OutputHttpClient, OutputMockType, OutputMocksConfig, OutputMocksOption, OutputMode, OutputOptions, OverrideInput, OverrideMockOptions, OverrideOutput, OverrideOutputContentType, PackageJson, ParamsSerializerOptions, PreferredContentType, PropertySortOrder, QueryOptions, ReadonlyRequestBodiesMode, RefComponentSuffix, RefInfo, ResReqTypesValue, ResolverValue, ResponseTypeCategory, ScalarValue, SchemaGenerationType, SchemaOptions, SchemaType, SupportedFormatter, SwrOptions, TEMPLATE_TAG_REGEX, TsConfigModule, TsConfigModuleResolution, TsConfigTarget, Tsconfig, URL_REGEX, VERBS_WITH_BODY, Verbs, WriteModeProps, WriteSpecBuilder, ZodCoerceType, ZodDateTimeOptions, ZodOptions, ZodTimeOptions, addDependency, asyncReduce, buildAngularParamsFilterExpression, camel, collectReferencedComponents, combineSchemas, compareVersions, conventionName, count, createDebugger, createLogger, createSuccessMessage, createTypeAliasIfNeeded, dedupeUnionType, dynamicImport, escape, escapeRegExp, filterByContentType, filteredVerbs, fixCrossDirectoryImports, fixRegularSchemaImports, generalJSTypes, generalJSTypesWithArray, generateAxiosOptions, generateBodyMutatorConfig, generateBodyOptions, generateComponentDefinition, generateDependencyImports, generateFormDataAndUrlEncodedFunction, generateImports, generateModelInline, generateModelsInline, generateMutator, generateMutatorConfig, generateMutatorImports, generateMutatorRequestOptions, generateOptions, generateParameterDefinition, generateQueryParamsAxiosConfig, generateSchemasDefinition, generateTarget, generateTargetForTags, generateVerbImports, generateVerbOptions, generateVerbsOptions, getAngularFilteredParamsCallExpression, getAngularFilteredParamsExpression, getAngularFilteredParamsHelperBody, getArray, getBaseUrlRuntimeImports, getBodiesByContentType, getBody, getCombinedEnumValue, getDefaultContentType, getEnum, getEnumDescriptions, getEnumImplementation, getEnumNames, getEnumUnionFromSchema, getExtension, getFileInfo, getFormDataFieldFileType, getFullRoute, getImportExtension, getIsBodyVerb, getKey, getMockFileExtensionByTypeName, getNumberWord, getObject, getOperationId, getOrvalGeneratedTypes, getParameters, getParams, getParamsInPath, getPropertySafe, getProps, getQueryParams, getRefInfo, getResReqTypes, getResponse, getResponseTypeCategory, getRoute, getRouteAsArray, getScalar, getSuccessResponseType, getTypedResponse, getWarningCount, isBinaryContentType, isBinaryScalarSchema, isBoolean, isComponentRef, isDirectory, isFakerMock, isFunction, isModule, isMswMock, isNullish, isNumber, isNumeric, isObject, isReference, isSchema, isString, isStringLike, isSyntheticDefaultImportsAllow, isUrl, isVerb, isVerbose, jsDoc, jsStringEscape, kebab, keyValuePairsToJsDoc, log, logError, logVerbose, logWarning, makeRouteSafe, mergeDeep, mismatchArgsMessage, pascal, removeFilesAndEmptyFolders, resetWarnings, resolveDiscriminators, resolveExampleRefs, resolveInstalledVersion, resolveInstalledVersions, resolveObject, resolveRef, resolveValue, sanitize, setVerbose, snake, sortByPriority, splitSchemasByType, startMessage, stringify, toObjectString, path_d_exports as upath, upper, wrapRouteParameters, writeModelInline, writeModelsInline, writeSchema, writeSchemas, writeSingleMode, writeSplitMode, writeSplitTagsMode, writeTagsMode };
|
|
2727
|
+
export { AngularHttpResourceOptions, AngularOptions, BODY_TYPE_NAME, BaseUrlFromConstant, BaseUrlFromSpec, BaseUrlRuntime, BoundAliasInfo, ClientBuilder, ClientDependenciesBuilder, ClientExtraFilesBuilder, ClientFileBuilder, ClientFooterBuilder, ClientGeneratorsBuilder, ClientHeaderBuilder, ClientMockBuilder, ClientMockGeneratorBuilder, ClientMockGeneratorImplementation, ClientTitleBuilder, CommonMockOptions, Config, ConfigExternal, ConfigFn, ContentTypeFilter, ContextSpec, DeepNonNullable, DefaultTag, DynamicScopeEntry, EffectOptions, EnumGeneration, ErrorWithTag, FactoryMethodsMode, FactoryMethodsOptions, FakerMockOptions, FetchOptions, FormDataArrayHandling, FormDataContext, FormDataType, GenerateMockImports, GenerateVerbOptionsParams, GenerateVerbsOptionsParams, GeneratorApiBuilder, GeneratorApiOperations, GeneratorApiResponse, GeneratorClient, GeneratorClientExtra, GeneratorClientFooter, GeneratorClientHeader, GeneratorClientImports, GeneratorClientTitle, GeneratorClients, GeneratorDependency, GeneratorImport, GeneratorMockOutput, GeneratorMockOutputFull, GeneratorMutator, GeneratorMutatorParsingInfo, GeneratorOperation, GeneratorOperations, GeneratorOptions, GeneratorSchema, GeneratorTarget, GeneratorTargetFull, GeneratorVerbOptions, GeneratorVerbsOptions, GetterBody, GetterParam, GetterParameters, GetterParams, GetterProp, GetterPropType, GetterProps, GetterQueryParam, GetterResponse, GlobalMockOptions, GlobalOptions, HonoOptions, Hook, HookCommand, HookFunction, HookOption, HooksOptions, ImportOpenApi, InputFiltersOptions, InputOptions, InputTransformerFn, InvalidateTarget, InvalidateTargetParam, JsDocOptions, LogLevel, LogLevels, LogOptions, LogType, Logger, LoggerOptions, McpOptions, McpServerOptions, MockData, MockDataArray, MockDataArrayFn, MockDataObject, MockDataObjectFn, MockOptions, MockProperties, MockPropertiesObject, MockPropertiesObjectFn, MswMockOptions, MutationInvalidatesConfig, MutationInvalidatesRule, Mutator, MutatorObject, NAMED_COMPONENT_SECTIONS, NamingConvention, NormalizedAngularOptions, NormalizedConfig, NormalizedEffectOptions, NormalizedFactoryMethodsOptions, NormalizedFetchOptions, NormalizedFormDataType, NormalizedHonoOptions, NormalizedHookCommand, NormalizedHookOptions, NormalizedInputOptions, NormalizedJsDocOptions, NormalizedMcpOptions, NormalizedMcpServerOptions, NormalizedMocksConfig, NormalizedMutator, NormalizedOperationOptions, NormalizedOptions, NormalizedOutputOptions, NormalizedOverrideOutput, NormalizedParamsSerializerOptions, NormalizedQueryOptions, NormalizedSchemaOptions, NormalizedZodOptions, OpenApiComponentsObject, OpenApiDocument, OpenApiDynamicReferenceObject, OpenApiEncodingObject, OpenApiExampleObject, OpenApiInfoObject, OpenApiMediaTypeObject, OpenApiOperationObject, OpenApiParameterObject, OpenApiPathItemObject, OpenApiPathsObject, OpenApiReferenceObject, OpenApiRequestBodyObject, OpenApiResponseObject, OpenApiResponsesObject, OpenApiSchemaObject, OpenApiSchemaObjectType, OpenApiSchemasObject, OpenApiServerObject, OperationOptions, Options, OptionsExport, OptionsFn, OutputClient, OutputClientFunc, OutputDocsOptions, OutputHttpClient, OutputMockType, OutputMocksConfig, OutputMocksOption, OutputMode, OutputOptions, OverrideInput, OverrideMockOptions, OverrideOutput, OverrideOutputContentType, PackageJson, ParamsSerializerOptions, PreferredContentType, PropertySortOrder, QueryOptions, ReadonlyRequestBodiesMode, RefComponentSuffix, RefInfo, ResReqTypesValue, ResolverValue, ResponseTypeCategory, ScalarValue, SchemaGenerationType, SchemaOptions, SchemaType, SupportedFormatter, SwrOptions, TEMPLATE_TAG_REGEX, TsConfigModule, TsConfigModuleResolution, TsConfigTarget, Tsconfig, URL_REGEX, VERBS_WITH_BODY, Verbs, WriteModeProps, WriteSpecBuilder, ZodCoerceType, ZodDateTimeOptions, ZodOptions, ZodTimeOptions, addDependency, asyncReduce, buildAngularParamsFilterExpression, buildDynamicScope, camel, collectReferencedComponents, combineSchemas, compareVersions, conventionName, count, createDebugger, createLogger, createSuccessMessage, createTypeAliasIfNeeded, dedupeUnionType, dynamicAnchorToParamName, dynamicAnchorsToUniqueParamNames, dynamicImport, escape, escapeRegExp, extractBoundAliasInfo, filterByContentType, filteredVerbs, fixCrossDirectoryImports, fixRegularSchemaImports, generalJSTypes, generalJSTypesWithArray, generateAxiosOptions, generateBodyMutatorConfig, generateBodyOptions, generateComponentDefinition, generateDependencyImports, generateFactory, generateFormDataAndUrlEncodedFunction, generateImports, generateModelInline, generateModelsInline, generateMutator, generateMutatorConfig, generateMutatorImports, generateMutatorRequestOptions, generateOptions, generateParameterDefinition, generateQueryParamsAxiosConfig, generateSchemasDefinition, generateTarget, generateTargetForTags, generateVerbImports, generateVerbOptions, generateVerbsOptions, getAngularFilteredParamsCallExpression, getAngularFilteredParamsExpression, getAngularFilteredParamsHelperBody, getArray, getBaseUrlRuntimeImports, getBodiesByContentType, getBody, getCombinedEnumValue, getDefaultContentType, getDynamicAnchorName, getEnum, getEnumDescriptions, getEnumImplementation, getEnumNames, getEnumUnionFromSchema, getExtension, getFileInfo, getFormDataFieldFileType, getFullRoute, getImportExtension, getIsBodyVerb, getKey, getMockFileExtensionByTypeName, getNumberWord, getObject, getOperationId, getOrvalGeneratedTypes, getParameters, getParams, getParamsInPath, getPropertySafe, getProps, getQueryParams, getRefInfo, getResReqTypes, getResponse, getResponseTypeCategory, getRoute, getRouteAsArray, getScalar, getSuccessResponseType, getTypedResponse, getWarningCount, isBinaryContentType, isBinaryScalarSchema, isBoolean, isComponentRef, isDirectory, isDynamicReference, isFakerMock, isFunction, isModule, isMswMock, isNullish, isNumber, isNumeric, isObject, isReference, isSchema, isString, isStringLike, isSyntheticDefaultImportsAllow, isUrl, isVerb, isVerbose, jsDoc, jsStringEscape, kebab, keyValuePairsToJsDoc, log, logError, logVerbose, logWarning, makeRouteSafe, mergeDeep, mismatchArgsMessage, pascal, removeFilesAndEmptyFolders, resetWarnings, resolveDiscriminators, resolveDynamicRef, resolveExampleRefs, resolveInstalledVersion, resolveInstalledVersions, resolveObject, resolveRef, resolveValue, sanitize, setVerbose, snake, sortByPriority, splitSchemasByType, startMessage, stringify, toObjectString, path_d_exports as upath, upper, wrapRouteParameters, writeGeneratedFile, writeModelInline, writeModelsInline, writeSchema, writeSchemas, writeSingleMode, writeSplitMode, writeSplitTagsMode, writeTagsMode };
|
|
2519
2728
|
//# sourceMappingURL=index.d.mts.map
|