@fern-api/fdr-sdk 1.2.73-c1680dd0b8 → 1.2.73-d4652c951f
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/js/api-definition/index.js +5 -0
- package/dist/js/api-definition/index.js.map +1 -1
- package/dist/js/api-definition/index.mjs +5 -0
- package/dist/js/api-definition/index.mjs.map +1 -1
- package/dist/js/client/FdrClient.js +5 -0
- package/dist/js/client/FdrClient.js.map +1 -1
- package/dist/js/client/FdrClient.mjs +5 -0
- package/dist/js/client/FdrClient.mjs.map +1 -1
- package/dist/js/client/types.js +5 -0
- package/dist/js/client/types.js.map +1 -1
- package/dist/js/client/types.mjs +5 -0
- package/dist/js/client/types.mjs.map +1 -1
- package/dist/js/converters/index.js +82 -2
- package/dist/js/converters/index.js.map +1 -1
- package/dist/js/converters/index.mjs +82 -2
- package/dist/js/converters/index.mjs.map +1 -1
- package/dist/js/index.js +82 -2
- package/dist/js/index.js.map +1 -1
- package/dist/js/index.mjs +82 -2
- package/dist/js/index.mjs.map +1 -1
- package/dist/js/navigation/index.js +6 -0
- package/dist/js/navigation/index.js.map +1 -1
- package/dist/js/navigation/index.mjs +6 -0
- package/dist/js/navigation/index.mjs.map +1 -1
- package/dist/js/orpc-client.js +5 -0
- package/dist/js/orpc-client.js.map +1 -1
- package/dist/js/orpc-client.mjs +5 -0
- package/dist/js/orpc-client.mjs.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/api-definition/migrators/v1ToV2.d.ts +5 -0
- package/dist/types/api-definition/migrators/v1ToV2.d.ts.map +1 -1
- package/dist/types/converters/db/convertAPIDefinitionToDb.d.ts.map +1 -1
- package/dist/types/converters/db/examples/generateEndpointExampleCall.d.ts +10 -0
- package/dist/types/converters/db/examples/generateEndpointExampleCall.d.ts.map +1 -1
- package/dist/types/converters/db/examples/generateHttpBodyExample.d.ts +10 -0
- package/dist/types/converters/db/examples/generateHttpBodyExample.d.ts.map +1 -1
- package/dist/types/converters/read/convertDbAPIDefinitionToRead.d.ts +14 -0
- package/dist/types/converters/read/convertDbAPIDefinitionToRead.d.ts.map +1 -1
- package/dist/types/navigation/utils/toApis.d.ts +1 -0
- package/dist/types/navigation/utils/toApis.d.ts.map +1 -1
- package/dist/types/orpc-client/api/contract-db.d.ts +500 -0
- package/dist/types/orpc-client/api/contract-db.d.ts.map +1 -1
- package/dist/types/orpc-client/api/contract-latest.d.ts +22 -0
- package/dist/types/orpc-client/api/contract-latest.d.ts.map +1 -1
- package/dist/types/orpc-client/api/contract-read.d.ts +540 -0
- package/dist/types/orpc-client/api/contract-read.d.ts.map +1 -1
- package/dist/types/orpc-client/api/contract-register.d.ts +540 -0
- package/dist/types/orpc-client/api/contract-register.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1418,6 +1418,9 @@ var RegisterExampleEndpointCallSchema = z3.object({
|
|
|
1418
1418
|
description: z3.string().nullish(),
|
|
1419
1419
|
name: z3.string().nullish(),
|
|
1420
1420
|
contentType: z3.string().nullish(),
|
|
1421
|
+
// When the request body is a discriminated union and one example is generated per variant,
|
|
1422
|
+
// this carries the variant's discriminant value so the UI can swap examples when the variant changes.
|
|
1423
|
+
discriminant: z3.string().nullish(),
|
|
1421
1424
|
path: z3.string(),
|
|
1422
1425
|
pathParameters: z3.record(PropertyKeySchema, z3.unknown()),
|
|
1423
1426
|
queryParameters: z3.record(z3.string(), z3.unknown()),
|
|
@@ -1991,6 +1994,7 @@ var LatestExampleEndpointCallSchema = z4.object({
|
|
|
1991
1994
|
responseStatusCode: z4.number().int(),
|
|
1992
1995
|
name: z4.string().nullish(),
|
|
1993
1996
|
contentType: z4.string().nullish(),
|
|
1997
|
+
discriminant: z4.string().nullish(),
|
|
1994
1998
|
pathParameters: z4.record(PropertyKeySchema, z4.unknown()).nullish(),
|
|
1995
1999
|
queryParameters: z4.record(PropertyKeySchema, z4.unknown()).nullish(),
|
|
1996
2000
|
headers: z4.record(PropertyKeySchema, z4.unknown()).nullish(),
|
|
@@ -2265,6 +2269,7 @@ var ReadExampleEndpointCallSchema = z5.object({
|
|
|
2265
2269
|
description: z5.string().nullish(),
|
|
2266
2270
|
name: z5.string().nullish(),
|
|
2267
2271
|
contentType: z5.string().nullish(),
|
|
2272
|
+
discriminant: z5.string().nullish(),
|
|
2268
2273
|
path: z5.string(),
|
|
2269
2274
|
pathParameters: z5.record(PropertyKeySchema, z5.unknown()),
|
|
2270
2275
|
queryParameters: z5.record(z5.string(), z5.unknown()),
|
|
@@ -6138,6 +6143,52 @@ function generateHttpRequestBodyExample(type, resolveTypeById) {
|
|
|
6138
6143
|
}
|
|
6139
6144
|
}
|
|
6140
6145
|
}
|
|
6146
|
+
function resolveRequestBodyDiscriminatedUnion(type, resolveTypeById) {
|
|
6147
|
+
let shape;
|
|
6148
|
+
switch (type.type) {
|
|
6149
|
+
case "reference":
|
|
6150
|
+
shape = resolveTypeReferenceToShape(type.value, resolveTypeById, /* @__PURE__ */ new Set());
|
|
6151
|
+
break;
|
|
6152
|
+
case "json":
|
|
6153
|
+
shape = type.shape.type === "reference" ? resolveTypeReferenceToShape(type.shape.value, resolveTypeById, /* @__PURE__ */ new Set()) : void 0;
|
|
6154
|
+
break;
|
|
6155
|
+
default:
|
|
6156
|
+
return void 0;
|
|
6157
|
+
}
|
|
6158
|
+
return shape?.type === "discriminatedUnion" ? shape : void 0;
|
|
6159
|
+
}
|
|
6160
|
+
function resolveTypeReferenceToShape(reference, resolveTypeById, visited) {
|
|
6161
|
+
switch (reference.type) {
|
|
6162
|
+
case "id": {
|
|
6163
|
+
if (visited.has(reference.value)) {
|
|
6164
|
+
return void 0;
|
|
6165
|
+
}
|
|
6166
|
+
visited.add(reference.value);
|
|
6167
|
+
const typeDef = resolveTypeById(reference.value);
|
|
6168
|
+
if (typeDef == null) {
|
|
6169
|
+
return void 0;
|
|
6170
|
+
}
|
|
6171
|
+
if (typeDef.shape.type === "alias") {
|
|
6172
|
+
return resolveTypeReferenceToShape(typeDef.shape.value, resolveTypeById, visited);
|
|
6173
|
+
}
|
|
6174
|
+
return typeDef.shape;
|
|
6175
|
+
}
|
|
6176
|
+
case "optional":
|
|
6177
|
+
case "nullable":
|
|
6178
|
+
return resolveTypeReferenceToShape(reference.itemType, resolveTypeById, visited);
|
|
6179
|
+
default:
|
|
6180
|
+
return void 0;
|
|
6181
|
+
}
|
|
6182
|
+
}
|
|
6183
|
+
function generateDiscriminatedUnionVariantRequestExample(discriminant, variant, resolveTypeById) {
|
|
6184
|
+
return {
|
|
6185
|
+
type: "json",
|
|
6186
|
+
value: {
|
|
6187
|
+
[discriminant]: variant.discriminantValue,
|
|
6188
|
+
...generateExampleObject(variant.additionalProperties, resolveTypeById, true, /* @__PURE__ */ new Set(), 0)
|
|
6189
|
+
}
|
|
6190
|
+
};
|
|
6191
|
+
}
|
|
6141
6192
|
function generateFormDataRequestBodyExample(FormDataRequest, resolveTypeById) {
|
|
6142
6193
|
if (FormDataRequest == null) {
|
|
6143
6194
|
return { type: "form", value: {} };
|
|
@@ -6519,6 +6570,32 @@ function generateEndpointSuccessExample({
|
|
|
6519
6570
|
responseBodyV3: endpointDefinition.response != null ? generateHttpResponseBodyExample(endpointDefinition.response.type, resolveTypeById) : void 0
|
|
6520
6571
|
};
|
|
6521
6572
|
}
|
|
6573
|
+
function generateEndpointSuccessExamples({
|
|
6574
|
+
endpointDefinition,
|
|
6575
|
+
apiDefinition
|
|
6576
|
+
}) {
|
|
6577
|
+
const resolveTypeById = getResolveByTypeId(apiDefinition);
|
|
6578
|
+
const discriminatedUnion11 = endpointDefinition.request != null ? resolveRequestBodyDiscriminatedUnion(endpointDefinition.request.type, resolveTypeById) : void 0;
|
|
6579
|
+
if (discriminatedUnion11 == null || discriminatedUnion11.variants.length <= 1) {
|
|
6580
|
+
return [generateEndpointSuccessExample({ endpointDefinition, apiDefinition })];
|
|
6581
|
+
}
|
|
6582
|
+
const base = generateBaseEndpointExample({ endpointDefinition, apiDefinition, resolveTypeById });
|
|
6583
|
+
const responseBodyV3 = endpointDefinition.response != null ? generateHttpResponseBodyExample(endpointDefinition.response.type, resolveTypeById) : void 0;
|
|
6584
|
+
return discriminatedUnion11.variants.map((variant) => ({
|
|
6585
|
+
...base,
|
|
6586
|
+
// Use `||` (not `??`) so an empty-string displayName falls back to the (always-present,
|
|
6587
|
+
// unique) discriminant value — keeping example names non-empty and distinct.
|
|
6588
|
+
name: variant.displayName || variant.discriminantValue,
|
|
6589
|
+
discriminant: variant.discriminantValue,
|
|
6590
|
+
requestBodyV3: generateDiscriminatedUnionVariantRequestExample(
|
|
6591
|
+
discriminatedUnion11.discriminant,
|
|
6592
|
+
variant,
|
|
6593
|
+
resolveTypeById
|
|
6594
|
+
),
|
|
6595
|
+
responseStatusCode: 200,
|
|
6596
|
+
responseBodyV3
|
|
6597
|
+
}));
|
|
6598
|
+
}
|
|
6522
6599
|
function generateBaseEndpointExample({
|
|
6523
6600
|
endpointDefinition,
|
|
6524
6601
|
apiDefinition,
|
|
@@ -7006,11 +7083,11 @@ function getExampleEndpointCalls({
|
|
|
7006
7083
|
if (registeredSuccessExamples.length > 0) {
|
|
7007
7084
|
examples.push(...registeredSuccessExamples);
|
|
7008
7085
|
} else {
|
|
7009
|
-
const
|
|
7086
|
+
const generatedSuccessExamples = generateEndpointSuccessExamples({
|
|
7010
7087
|
endpointDefinition: writeShape,
|
|
7011
7088
|
apiDefinition
|
|
7012
7089
|
});
|
|
7013
|
-
examples.push(
|
|
7090
|
+
examples.push(...generatedSuccessExamples);
|
|
7014
7091
|
}
|
|
7015
7092
|
const registeredErrorExampleStatusCodes = new Set(registeredErrorExamples.map((e) => e.responseStatusCode));
|
|
7016
7093
|
const errorsMissingAnExample = (writeShape.errorsV2 ?? []).filter(
|
|
@@ -7089,6 +7166,7 @@ function transformExampleEndpointCall({
|
|
|
7089
7166
|
return {
|
|
7090
7167
|
name: writeShape.name,
|
|
7091
7168
|
contentType: writeShape.contentType ?? void 0,
|
|
7169
|
+
discriminant: writeShape.discriminant ?? void 0,
|
|
7092
7170
|
description: writeShape.description,
|
|
7093
7171
|
// htmlDescription,
|
|
7094
7172
|
// descriptionContainsMarkdown: true,
|
|
@@ -10007,6 +10085,7 @@ var ApiDefinitionV1ToLatest = class _ApiDefinitionV1ToLatest {
|
|
|
10007
10085
|
responseStatusCode: example?.responseStatusCode,
|
|
10008
10086
|
name: example?.name,
|
|
10009
10087
|
contentType: example?.contentType ?? void 0,
|
|
10088
|
+
discriminant: example?.discriminant ?? void 0,
|
|
10010
10089
|
description: example?.description,
|
|
10011
10090
|
pathParameters: example?.pathParameters,
|
|
10012
10091
|
queryParameters: example?.queryParameters,
|
|
@@ -17287,6 +17366,7 @@ function convertExampleEndpointCall({
|
|
|
17287
17366
|
return {
|
|
17288
17367
|
name: dbShape.name,
|
|
17289
17368
|
contentType: dbShape.contentType ?? void 0,
|
|
17369
|
+
discriminant: dbShape.discriminant ?? void 0,
|
|
17290
17370
|
description: dbShape.description,
|
|
17291
17371
|
// htmlDescription: dbShape.htmlDescription,
|
|
17292
17372
|
// descriptionContainsMarkdown: true,
|