@fern-api/fern-api-dev 5.70.3 → 5.71.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/cli.cjs +341 -17
- package/package.json +1 -1
package/cli.cjs
CHANGED
|
@@ -75088,7 +75088,8 @@ var init_DiscriminatedUnionType2 = __esm({
|
|
|
75088
75088
|
DiscriminatedUnionType = schemas_exports3.objectWithoutOptionalProperties({
|
|
75089
75089
|
declaration: Declaration2,
|
|
75090
75090
|
discriminant: NameAndWireValue2,
|
|
75091
|
-
types: schemas_exports3.record(schemas_exports3.string(), SingleDiscriminatedUnionType2)
|
|
75091
|
+
types: schemas_exports3.record(schemas_exports3.string(), SingleDiscriminatedUnionType2),
|
|
75092
|
+
inheritedBaseProperties: schemas_exports3.list(NameAndWireValue2).optional()
|
|
75092
75093
|
});
|
|
75093
75094
|
}
|
|
75094
75095
|
});
|
|
@@ -75114,6 +75115,7 @@ var init_ObjectType2 = __esm({
|
|
|
75114
75115
|
"../../ir-sdk/lib/sdk/serialization/resources/dynamic/resources/types/types/ObjectType.js"() {
|
|
75115
75116
|
"use strict";
|
|
75116
75117
|
init_core2();
|
|
75118
|
+
init_NameAndWireValue4();
|
|
75117
75119
|
init_TypeId4();
|
|
75118
75120
|
init_Declaration4();
|
|
75119
75121
|
init_NamedParameter2();
|
|
@@ -75121,7 +75123,8 @@ var init_ObjectType2 = __esm({
|
|
|
75121
75123
|
declaration: Declaration2,
|
|
75122
75124
|
properties: schemas_exports3.list(NamedParameter),
|
|
75123
75125
|
extends: schemas_exports3.list(TypeId2).optional(),
|
|
75124
|
-
additionalProperties: schemas_exports3.boolean().optional()
|
|
75126
|
+
additionalProperties: schemas_exports3.boolean().optional(),
|
|
75127
|
+
deferredUnionBaseProperties: schemas_exports3.list(NameAndWireValue2).optional()
|
|
75125
75128
|
});
|
|
75126
75129
|
}
|
|
75127
75130
|
});
|
|
@@ -80451,13 +80454,15 @@ var init_ObjectTypeDeclaration2 = __esm({
|
|
|
80451
80454
|
"../../ir-sdk/lib/sdk/serialization/resources/types/types/ObjectTypeDeclaration.js"() {
|
|
80452
80455
|
"use strict";
|
|
80453
80456
|
init_core2();
|
|
80457
|
+
init_NameAndWireValue3();
|
|
80454
80458
|
init_DeclaredTypeName2();
|
|
80455
80459
|
init_ObjectProperty2();
|
|
80456
80460
|
ObjectTypeDeclaration = schemas_exports3.objectWithoutOptionalProperties({
|
|
80457
80461
|
extends: schemas_exports3.list(DeclaredTypeName),
|
|
80458
80462
|
properties: schemas_exports3.list(ObjectProperty),
|
|
80459
80463
|
extendedProperties: schemas_exports3.list(ObjectProperty).optional(),
|
|
80460
|
-
extraProperties: schemas_exports3.property("extra-properties", schemas_exports3.boolean())
|
|
80464
|
+
extraProperties: schemas_exports3.property("extra-properties", schemas_exports3.boolean()),
|
|
80465
|
+
deferredUnionBaseProperties: schemas_exports3.list(NameAndWireValue).optional()
|
|
80461
80466
|
});
|
|
80462
80467
|
}
|
|
80463
80468
|
});
|
|
@@ -80572,6 +80577,7 @@ var init_UnionTypeDeclaration2 = __esm({
|
|
|
80572
80577
|
"../../ir-sdk/lib/sdk/serialization/resources/types/types/UnionTypeDeclaration.js"() {
|
|
80573
80578
|
"use strict";
|
|
80574
80579
|
init_core2();
|
|
80580
|
+
init_NameAndWireValue3();
|
|
80575
80581
|
init_NameAndWireValueOrString3();
|
|
80576
80582
|
init_DeclaredTypeName2();
|
|
80577
80583
|
init_ObjectProperty2();
|
|
@@ -80582,6 +80588,7 @@ var init_UnionTypeDeclaration2 = __esm({
|
|
|
80582
80588
|
extends: schemas_exports3.list(DeclaredTypeName),
|
|
80583
80589
|
types: schemas_exports3.list(SingleUnionType),
|
|
80584
80590
|
baseProperties: schemas_exports3.list(ObjectProperty),
|
|
80591
|
+
inheritedBaseProperties: schemas_exports3.list(NameAndWireValue).optional(),
|
|
80585
80592
|
default: SingleUnionType.optional(),
|
|
80586
80593
|
discriminatorContext: UnionDiscriminatorContext4.optional()
|
|
80587
80594
|
});
|
|
@@ -267954,7 +267961,9 @@ function convertObjectTypeDeclaration({ object: object23, file: file4 }) {
|
|
|
267954
267961
|
extends: getExtensionsAsList(object23.extends).map((extended) => parseTypeName({ typeName: extended, file: file4 })),
|
|
267955
267962
|
properties: getObjectPropertiesFromRawObjectSchema(object23, file4),
|
|
267956
267963
|
extraProperties: object23["extra-properties"] ?? false,
|
|
267957
|
-
extendedProperties: void 0
|
|
267964
|
+
extendedProperties: void 0,
|
|
267965
|
+
// Populated by the computeUnionBasePropertyDedupe post-build pass; undefined here.
|
|
267966
|
+
deferredUnionBaseProperties: void 0
|
|
267958
267967
|
});
|
|
267959
267968
|
}
|
|
267960
267969
|
function getObjectPropertiesFromRawObjectSchema(object23, file4) {
|
|
@@ -268759,6 +268768,9 @@ function convertDiscriminatedUnionTypeDeclaration({ union: union23, file: file4,
|
|
|
268759
268768
|
autogeneratedExamples: {}
|
|
268760
268769
|
}
|
|
268761
268770
|
})) : [],
|
|
268771
|
+
// Populated by the computeUnionBasePropertyDedupe post-build pass once the full types map
|
|
268772
|
+
// is assembled; initialized empty here.
|
|
268773
|
+
inheritedBaseProperties: [],
|
|
268762
268774
|
types: unionTypes,
|
|
268763
268775
|
default: defaultUnionType,
|
|
268764
268776
|
discriminatorContext: getDiscriminatorContext({ union: union23 })
|
|
@@ -272478,15 +272490,18 @@ var init_DynamicSnippetsConverter = __esm({
|
|
|
272478
272490
|
declaration,
|
|
272479
272491
|
properties: properties7,
|
|
272480
272492
|
extends_: extendsTypeIds,
|
|
272481
|
-
additionalProperties: object23.extraProperties
|
|
272493
|
+
additionalProperties: object23.extraProperties,
|
|
272494
|
+
deferredUnionBaseProperties: object23.deferredUnionBaseProperties
|
|
272482
272495
|
});
|
|
272483
272496
|
}
|
|
272484
|
-
convertObjectProperties({ declaration, properties: properties7, extends_, additionalProperties: additionalProperties7 }) {
|
|
272497
|
+
convertObjectProperties({ declaration, properties: properties7, extends_, additionalProperties: additionalProperties7, deferredUnionBaseProperties }) {
|
|
272485
272498
|
return dynamic_exports.NamedType.object({
|
|
272486
272499
|
declaration,
|
|
272487
272500
|
properties: this.convertBodyPropertiesToParameters({ properties: properties7 }),
|
|
272488
272501
|
extends: extends_,
|
|
272489
|
-
additionalProperties: additionalProperties7
|
|
272502
|
+
additionalProperties: additionalProperties7,
|
|
272503
|
+
// Mirror the pre-computed regular-IR fact; computed once by the IR generator, never here.
|
|
272504
|
+
deferredUnionBaseProperties: deferredUnionBaseProperties?.map((property24) => this.inflateNameAndWireValue(property24))
|
|
272490
272505
|
});
|
|
272491
272506
|
}
|
|
272492
272507
|
convertDiscriminatedUnion({ declaration, union: union23 }) {
|
|
@@ -272494,6 +272509,8 @@ var init_DynamicSnippetsConverter = __esm({
|
|
|
272494
272509
|
return dynamic_exports.NamedType.discriminatedUnion({
|
|
272495
272510
|
declaration,
|
|
272496
272511
|
discriminant: this.inflateNameAndWireValue(union23.discriminant),
|
|
272512
|
+
// Mirror the pre-computed regular-IR fact; computed once by the IR generator, never here.
|
|
272513
|
+
inheritedBaseProperties: (union23.inheritedBaseProperties ?? []).map((property24) => this.inflateNameAndWireValue(property24)),
|
|
272497
272514
|
types: Object.fromEntries(union23.types.map((unionType2) => [
|
|
272498
272515
|
getWireValue(unionType2.discriminantValue),
|
|
272499
272516
|
this.convertDiscriminatedUnionType({
|
|
@@ -274891,7 +274908,9 @@ function convertGenericTypeDeclaration({ generic, file: file4, typeResolver }) {
|
|
|
274891
274908
|
extends: newExtends,
|
|
274892
274909
|
properties: getObjectPropertiesFromRawObjectSchema({ properties: Object.fromEntries(newProperties) }, file4),
|
|
274893
274910
|
extraProperties: resolvedBaseGeneric.declaration["extra-properties"] ?? false,
|
|
274894
|
-
extendedProperties: void 0
|
|
274911
|
+
extendedProperties: void 0,
|
|
274912
|
+
// Populated by the computeUnionBasePropertyDedupe post-build pass; undefined here.
|
|
274913
|
+
deferredUnionBaseProperties: void 0
|
|
274895
274914
|
});
|
|
274896
274915
|
}
|
|
274897
274916
|
throw new CliError({
|
|
@@ -276691,6 +276710,303 @@ var init_VariableResolver = __esm({
|
|
|
276691
276710
|
}
|
|
276692
276711
|
});
|
|
276693
276712
|
|
|
276713
|
+
// ../generation/ir-generator/lib/union-base-properties/computeUnionBasePropertyDedupe.js
|
|
276714
|
+
function collectApiSurfaceTypeReferences(value2, into) {
|
|
276715
|
+
if (Array.isArray(value2)) {
|
|
276716
|
+
for (const item of value2) {
|
|
276717
|
+
collectApiSurfaceTypeReferences(item, into);
|
|
276718
|
+
}
|
|
276719
|
+
return;
|
|
276720
|
+
}
|
|
276721
|
+
if (value2 == null || typeof value2 !== "object") {
|
|
276722
|
+
return;
|
|
276723
|
+
}
|
|
276724
|
+
for (const [key2, child] of Object.entries(value2)) {
|
|
276725
|
+
if (EXAMPLE_KEYS.has(key2)) {
|
|
276726
|
+
continue;
|
|
276727
|
+
}
|
|
276728
|
+
if (key2 === "typeId" && typeof child === "string") {
|
|
276729
|
+
into.add(child);
|
|
276730
|
+
continue;
|
|
276731
|
+
}
|
|
276732
|
+
collectApiSurfaceTypeReferences(child, into);
|
|
276733
|
+
}
|
|
276734
|
+
}
|
|
276735
|
+
function extractNamedTypeIds(typeReference2, types4, visited) {
|
|
276736
|
+
switch (typeReference2.type) {
|
|
276737
|
+
case "named": {
|
|
276738
|
+
const ids = [typeReference2.typeId];
|
|
276739
|
+
const declaration = types4[typeReference2.typeId];
|
|
276740
|
+
if (declaration?.shape.type === "alias" && !visited.has(typeReference2.typeId)) {
|
|
276741
|
+
visited.add(typeReference2.typeId);
|
|
276742
|
+
ids.push(...extractNamedTypeIds(declaration.shape.aliasOf, types4, visited));
|
|
276743
|
+
}
|
|
276744
|
+
return ids;
|
|
276745
|
+
}
|
|
276746
|
+
case "container":
|
|
276747
|
+
switch (typeReference2.container.type) {
|
|
276748
|
+
case "list":
|
|
276749
|
+
return extractNamedTypeIds(typeReference2.container.list, types4, visited);
|
|
276750
|
+
case "set":
|
|
276751
|
+
return extractNamedTypeIds(typeReference2.container.set, types4, visited);
|
|
276752
|
+
case "map":
|
|
276753
|
+
return [
|
|
276754
|
+
...extractNamedTypeIds(typeReference2.container.keyType, types4, visited),
|
|
276755
|
+
...extractNamedTypeIds(typeReference2.container.valueType, types4, visited)
|
|
276756
|
+
];
|
|
276757
|
+
case "optional":
|
|
276758
|
+
return extractNamedTypeIds(typeReference2.container.optional, types4, visited);
|
|
276759
|
+
case "nullable":
|
|
276760
|
+
return extractNamedTypeIds(typeReference2.container.nullable, types4, visited);
|
|
276761
|
+
case "literal":
|
|
276762
|
+
return [];
|
|
276763
|
+
default:
|
|
276764
|
+
return [];
|
|
276765
|
+
}
|
|
276766
|
+
case "primitive":
|
|
276767
|
+
case "unknown":
|
|
276768
|
+
return [];
|
|
276769
|
+
default:
|
|
276770
|
+
return [];
|
|
276771
|
+
}
|
|
276772
|
+
}
|
|
276773
|
+
function getOutgoingTypeReferences(typeDeclaration2, types4) {
|
|
276774
|
+
const variantEdges = [];
|
|
276775
|
+
const nonVariantEdges = [];
|
|
276776
|
+
const addNonVariant = (typeReference2) => {
|
|
276777
|
+
nonVariantEdges.push(...extractNamedTypeIds(typeReference2, types4, /* @__PURE__ */ new Set()));
|
|
276778
|
+
};
|
|
276779
|
+
typeDeclaration2.shape._visit({
|
|
276780
|
+
alias: (alias2) => {
|
|
276781
|
+
addNonVariant(alias2.aliasOf);
|
|
276782
|
+
},
|
|
276783
|
+
enum: () => void 0,
|
|
276784
|
+
object: (object23) => {
|
|
276785
|
+
for (const extended of object23.extends) {
|
|
276786
|
+
nonVariantEdges.push(extended.typeId);
|
|
276787
|
+
}
|
|
276788
|
+
for (const property24 of [...object23.properties, ...object23.extendedProperties ?? []]) {
|
|
276789
|
+
addNonVariant(property24.valueType);
|
|
276790
|
+
}
|
|
276791
|
+
},
|
|
276792
|
+
union: (union23) => {
|
|
276793
|
+
for (const extended of union23.extends) {
|
|
276794
|
+
nonVariantEdges.push(extended.typeId);
|
|
276795
|
+
}
|
|
276796
|
+
for (const baseProperty2 of union23.baseProperties) {
|
|
276797
|
+
addNonVariant(baseProperty2.valueType);
|
|
276798
|
+
}
|
|
276799
|
+
for (const unionType2 of union23.types) {
|
|
276800
|
+
unionType2.shape._visit({
|
|
276801
|
+
samePropertiesAsObject: (declaredTypeName) => {
|
|
276802
|
+
variantEdges.push(declaredTypeName.typeId);
|
|
276803
|
+
},
|
|
276804
|
+
singleProperty: (singleProperty) => {
|
|
276805
|
+
addNonVariant(singleProperty.type);
|
|
276806
|
+
},
|
|
276807
|
+
noProperties: () => void 0,
|
|
276808
|
+
_other: () => void 0
|
|
276809
|
+
});
|
|
276810
|
+
}
|
|
276811
|
+
},
|
|
276812
|
+
undiscriminatedUnion: (undiscriminatedUnion22) => {
|
|
276813
|
+
for (const member of undiscriminatedUnion22.members) {
|
|
276814
|
+
addNonVariant(member.type);
|
|
276815
|
+
}
|
|
276816
|
+
},
|
|
276817
|
+
_other: () => void 0
|
|
276818
|
+
});
|
|
276819
|
+
return { variantEdges, nonVariantEdges };
|
|
276820
|
+
}
|
|
276821
|
+
function buildTypeReferenceInfo(ir3) {
|
|
276822
|
+
const variantReferrers = /* @__PURE__ */ new Map();
|
|
276823
|
+
const nonVariantReferenced = /* @__PURE__ */ new Set();
|
|
276824
|
+
for (const [typeId, typeDeclaration2] of Object.entries(ir3.types)) {
|
|
276825
|
+
const { variantEdges, nonVariantEdges } = getOutgoingTypeReferences(typeDeclaration2, ir3.types);
|
|
276826
|
+
for (const variantTypeId of variantEdges) {
|
|
276827
|
+
const referrers = variantReferrers.get(variantTypeId) ?? /* @__PURE__ */ new Set();
|
|
276828
|
+
referrers.add(typeId);
|
|
276829
|
+
variantReferrers.set(variantTypeId, referrers);
|
|
276830
|
+
}
|
|
276831
|
+
for (const referencedTypeId of nonVariantEdges) {
|
|
276832
|
+
nonVariantReferenced.add(referencedTypeId);
|
|
276833
|
+
}
|
|
276834
|
+
}
|
|
276835
|
+
for (const apiSurface of [
|
|
276836
|
+
ir3.services,
|
|
276837
|
+
ir3.webhookGroups,
|
|
276838
|
+
ir3.websocketChannels,
|
|
276839
|
+
ir3.errors,
|
|
276840
|
+
ir3.headers,
|
|
276841
|
+
ir3.idempotencyHeaders,
|
|
276842
|
+
ir3.pathParameters,
|
|
276843
|
+
ir3.variables
|
|
276844
|
+
]) {
|
|
276845
|
+
collectApiSurfaceTypeReferences(apiSurface, nonVariantReferenced);
|
|
276846
|
+
}
|
|
276847
|
+
return { variantReferrers, nonVariantReferenced };
|
|
276848
|
+
}
|
|
276849
|
+
function resolveToObjectTypeId(typeId, types4) {
|
|
276850
|
+
const declaration = types4[typeId];
|
|
276851
|
+
if (declaration == null) {
|
|
276852
|
+
return void 0;
|
|
276853
|
+
}
|
|
276854
|
+
switch (declaration.shape.type) {
|
|
276855
|
+
case "object":
|
|
276856
|
+
return typeId;
|
|
276857
|
+
case "alias": {
|
|
276858
|
+
const resolved = declaration.shape.resolvedType;
|
|
276859
|
+
if (resolved.type === "named" && resolved.shape === "OBJECT") {
|
|
276860
|
+
return resolved.name.typeId;
|
|
276861
|
+
}
|
|
276862
|
+
return void 0;
|
|
276863
|
+
}
|
|
276864
|
+
default:
|
|
276865
|
+
return void 0;
|
|
276866
|
+
}
|
|
276867
|
+
}
|
|
276868
|
+
function getDeclaredProperties(typeId, types4) {
|
|
276869
|
+
const result = /* @__PURE__ */ new Map();
|
|
276870
|
+
const objectTypeId = resolveToObjectTypeId(typeId, types4);
|
|
276871
|
+
if (objectTypeId == null) {
|
|
276872
|
+
return result;
|
|
276873
|
+
}
|
|
276874
|
+
const declaration = types4[objectTypeId];
|
|
276875
|
+
if (declaration == null || declaration.shape.type !== "object") {
|
|
276876
|
+
return result;
|
|
276877
|
+
}
|
|
276878
|
+
for (const property24 of [...declaration.shape.properties, ...declaration.shape.extendedProperties ?? []]) {
|
|
276879
|
+
result.set(getWireValue(property24.name), {
|
|
276880
|
+
valueType: property24.valueType,
|
|
276881
|
+
name: toNameAndWireValue(property24.name)
|
|
276882
|
+
});
|
|
276883
|
+
}
|
|
276884
|
+
return result;
|
|
276885
|
+
}
|
|
276886
|
+
function typeReferencesEqual(a3, b5) {
|
|
276887
|
+
return JSON.stringify(a3) === JSON.stringify(b5);
|
|
276888
|
+
}
|
|
276889
|
+
function toNameAndWireValue(name2) {
|
|
276890
|
+
if (typeof name2 === "string") {
|
|
276891
|
+
return { wireValue: name2, name: name2 };
|
|
276892
|
+
}
|
|
276893
|
+
return name2;
|
|
276894
|
+
}
|
|
276895
|
+
function computeUnionBasePropertyDedupe(ir3) {
|
|
276896
|
+
const { types: types4 } = ir3;
|
|
276897
|
+
const inheritedBasePropertiesByUnion = /* @__PURE__ */ new Map();
|
|
276898
|
+
const deferredUnionBasePropertiesByObject = /* @__PURE__ */ new Map();
|
|
276899
|
+
const unionBaseProperties = /* @__PURE__ */ new Map();
|
|
276900
|
+
for (const [typeId, typeDeclaration2] of Object.entries(types4)) {
|
|
276901
|
+
if (typeDeclaration2.shape.type !== "union") {
|
|
276902
|
+
continue;
|
|
276903
|
+
}
|
|
276904
|
+
const union23 = typeDeclaration2.shape;
|
|
276905
|
+
if (union23.baseProperties.length === 0) {
|
|
276906
|
+
continue;
|
|
276907
|
+
}
|
|
276908
|
+
const baseByWireValue = /* @__PURE__ */ new Map();
|
|
276909
|
+
for (const baseProperty2 of union23.baseProperties) {
|
|
276910
|
+
baseByWireValue.set(getWireValue(baseProperty2.name), baseProperty2.valueType);
|
|
276911
|
+
}
|
|
276912
|
+
unionBaseProperties.set(typeId, baseByWireValue);
|
|
276913
|
+
const everyVariantIsObject = union23.types.every((variant) => variant.shape.propertiesType === "samePropertiesAsObject");
|
|
276914
|
+
if (!everyVariantIsObject) {
|
|
276915
|
+
inheritedBasePropertiesByUnion.set(typeId, []);
|
|
276916
|
+
continue;
|
|
276917
|
+
}
|
|
276918
|
+
const variantProperties = union23.types.map((variant) => variant.shape.propertiesType === "samePropertiesAsObject" ? getDeclaredProperties(variant.shape.typeId, types4) : /* @__PURE__ */ new Map());
|
|
276919
|
+
const inherited = [];
|
|
276920
|
+
for (const baseProperty2 of union23.baseProperties) {
|
|
276921
|
+
const wireValue = getWireValue(baseProperty2.name);
|
|
276922
|
+
const carriedByEveryVariant = variantProperties.every((declared) => {
|
|
276923
|
+
const match3 = declared.get(wireValue);
|
|
276924
|
+
return match3 != null && typeReferencesEqual(match3.valueType, baseProperty2.valueType);
|
|
276925
|
+
});
|
|
276926
|
+
if (carriedByEveryVariant) {
|
|
276927
|
+
inherited.push(toNameAndWireValue(baseProperty2.name));
|
|
276928
|
+
}
|
|
276929
|
+
}
|
|
276930
|
+
inheritedBasePropertiesByUnion.set(typeId, inherited);
|
|
276931
|
+
}
|
|
276932
|
+
const { variantReferrers, nonVariantReferenced } = buildTypeReferenceInfo(ir3);
|
|
276933
|
+
for (const [variantTypeId, owningUnionTypeIds] of variantReferrers) {
|
|
276934
|
+
const declaration = types4[variantTypeId];
|
|
276935
|
+
if (declaration == null || declaration.shape.type !== "object") {
|
|
276936
|
+
continue;
|
|
276937
|
+
}
|
|
276938
|
+
if (nonVariantReferenced.has(variantTypeId)) {
|
|
276939
|
+
continue;
|
|
276940
|
+
}
|
|
276941
|
+
const declaredProperties = getDeclaredProperties(variantTypeId, types4);
|
|
276942
|
+
if (declaredProperties.size === 0) {
|
|
276943
|
+
continue;
|
|
276944
|
+
}
|
|
276945
|
+
const deferred2 = [];
|
|
276946
|
+
for (const [wireValue, declared] of declaredProperties) {
|
|
276947
|
+
const deferredToEveryUnion = [...owningUnionTypeIds].every((unionTypeId) => {
|
|
276948
|
+
const baseType = unionBaseProperties.get(unionTypeId)?.get(wireValue);
|
|
276949
|
+
return baseType != null && typeReferencesEqual(baseType, declared.valueType);
|
|
276950
|
+
});
|
|
276951
|
+
if (deferredToEveryUnion) {
|
|
276952
|
+
deferred2.push(declared.name);
|
|
276953
|
+
}
|
|
276954
|
+
}
|
|
276955
|
+
if (deferred2.length > 0) {
|
|
276956
|
+
deferredUnionBasePropertiesByObject.set(variantTypeId, deferred2);
|
|
276957
|
+
}
|
|
276958
|
+
}
|
|
276959
|
+
return { inheritedBasePropertiesByUnion, deferredUnionBasePropertiesByObject };
|
|
276960
|
+
}
|
|
276961
|
+
function addUnionBasePropertyDedupeToIr(ir3) {
|
|
276962
|
+
const { inheritedBasePropertiesByUnion, deferredUnionBasePropertiesByObject } = computeUnionBasePropertyDedupe(ir3);
|
|
276963
|
+
ir3.types = Object.fromEntries(Object.entries(ir3.types).map(([typeId, typeDeclaration2]) => {
|
|
276964
|
+
switch (typeDeclaration2.shape.type) {
|
|
276965
|
+
case "union":
|
|
276966
|
+
return [
|
|
276967
|
+
typeId,
|
|
276968
|
+
{
|
|
276969
|
+
...typeDeclaration2,
|
|
276970
|
+
shape: {
|
|
276971
|
+
...typeDeclaration2.shape,
|
|
276972
|
+
inheritedBaseProperties: inheritedBasePropertiesByUnion.get(typeId) ?? []
|
|
276973
|
+
}
|
|
276974
|
+
}
|
|
276975
|
+
];
|
|
276976
|
+
case "object": {
|
|
276977
|
+
const deferred2 = deferredUnionBasePropertiesByObject.get(typeId);
|
|
276978
|
+
return [
|
|
276979
|
+
typeId,
|
|
276980
|
+
{
|
|
276981
|
+
...typeDeclaration2,
|
|
276982
|
+
shape: {
|
|
276983
|
+
...typeDeclaration2.shape,
|
|
276984
|
+
deferredUnionBaseProperties: deferred2
|
|
276985
|
+
}
|
|
276986
|
+
}
|
|
276987
|
+
];
|
|
276988
|
+
}
|
|
276989
|
+
default:
|
|
276990
|
+
return [typeId, typeDeclaration2];
|
|
276991
|
+
}
|
|
276992
|
+
}));
|
|
276993
|
+
}
|
|
276994
|
+
var EXAMPLE_KEYS;
|
|
276995
|
+
var init_computeUnionBasePropertyDedupe = __esm({
|
|
276996
|
+
"../generation/ir-generator/lib/union-base-properties/computeUnionBasePropertyDedupe.js"() {
|
|
276997
|
+
"use strict";
|
|
276998
|
+
init_lib21();
|
|
276999
|
+
EXAMPLE_KEYS = /* @__PURE__ */ new Set([
|
|
277000
|
+
"v2Examples",
|
|
277001
|
+
"autogeneratedExamples",
|
|
277002
|
+
"userSpecifiedExamples",
|
|
277003
|
+
"userProvidedExamples",
|
|
277004
|
+
"examples",
|
|
277005
|
+
"example"
|
|
277006
|
+
]);
|
|
277007
|
+
}
|
|
277008
|
+
});
|
|
277009
|
+
|
|
276694
277010
|
// ../generation/ir-generator/lib/utils/getEnvironmentsByAudience.js
|
|
276695
277011
|
function getAudienceForEnvironment(environmentId, rawEnvironments) {
|
|
276696
277012
|
if (rawEnvironments) {
|
|
@@ -277026,6 +277342,7 @@ function generateIntermediateRepresentation({ workspace, generationLanguage, key
|
|
|
277026
277342
|
});
|
|
277027
277343
|
intermediateRepresentation.serviceTypeReferenceInfo = computeServiceTypeReferenceInfo(irGraph);
|
|
277028
277344
|
addExtendedPropertiesToIr(intermediateRepresentation);
|
|
277345
|
+
addUnionBasePropertyDedupeToIr(intermediateRepresentation);
|
|
277029
277346
|
resolveGlobalParameterApplicability(intermediateRepresentation, {
|
|
277030
277347
|
onWarning: (message) => context3.logger.warn(message)
|
|
277031
277348
|
});
|
|
@@ -277195,6 +277512,7 @@ var init_generateIntermediateRepresentation = __esm({
|
|
|
277195
277512
|
init_PropertyResolver();
|
|
277196
277513
|
init_TypeResolver();
|
|
277197
277514
|
init_VariableResolver();
|
|
277515
|
+
init_computeUnionBasePropertyDedupe();
|
|
277198
277516
|
init_convertToFernFilepath();
|
|
277199
277517
|
init_getEnvironmentsByAudience();
|
|
277200
277518
|
init_getIrGenerationSettings();
|
|
@@ -344633,7 +344951,8 @@ var init_ObjectSchemaConverter = __esm({
|
|
|
344633
344951
|
properties: [],
|
|
344634
344952
|
extends: [],
|
|
344635
344953
|
extendedProperties: [],
|
|
344636
|
-
extraProperties: hasAdditionalProperties
|
|
344954
|
+
extraProperties: hasAdditionalProperties,
|
|
344955
|
+
deferredUnionBaseProperties: void 0
|
|
344637
344956
|
}),
|
|
344638
344957
|
propertiesByAudience: {},
|
|
344639
344958
|
inlinedTypes: {},
|
|
@@ -344787,7 +345106,8 @@ var init_ObjectSchemaConverter = __esm({
|
|
|
344787
345106
|
properties: properties7,
|
|
344788
345107
|
extends: extends_.map((ext2) => this.context.typeReferenceToDeclaredTypeName(ext2)).filter(isNonNullish),
|
|
344789
345108
|
extendedProperties: [],
|
|
344790
|
-
extraProperties: hasAdditionalProperties
|
|
345109
|
+
extraProperties: hasAdditionalProperties,
|
|
345110
|
+
deferredUnionBaseProperties: void 0
|
|
344791
345111
|
}),
|
|
344792
345112
|
propertiesByAudience,
|
|
344793
345113
|
referencedTypes,
|
|
@@ -345111,6 +345431,9 @@ var init_OneOfSchemaConverter = __esm({
|
|
|
345111
345431
|
return {
|
|
345112
345432
|
type: Type.union({
|
|
345113
345433
|
baseProperties,
|
|
345434
|
+
// Populated by the computeUnionBasePropertyDedupe post-build pass once the full
|
|
345435
|
+
// types map is assembled; initialized empty here.
|
|
345436
|
+
inheritedBaseProperties: [],
|
|
345114
345437
|
discriminant: this.context.casingsGenerator.generateNameAndWireValue({
|
|
345115
345438
|
name: this.schema.discriminator.propertyName,
|
|
345116
345439
|
wireValue: this.schema.discriminator.propertyName
|
|
@@ -689351,7 +689674,7 @@ var AccessTokenPosthogManager = class {
|
|
|
689351
689674
|
properties: {
|
|
689352
689675
|
...event,
|
|
689353
689676
|
...event.properties,
|
|
689354
|
-
version: "5.
|
|
689677
|
+
version: "5.71.0",
|
|
689355
689678
|
usingAccessToken: true,
|
|
689356
689679
|
...getRunIdProperties()
|
|
689357
689680
|
}
|
|
@@ -689417,7 +689740,7 @@ var UserPosthogManager = class {
|
|
|
689417
689740
|
distinctId: this.userId ?? await this.getPersistedDistinctId(),
|
|
689418
689741
|
event: "CLI",
|
|
689419
689742
|
properties: {
|
|
689420
|
-
version: "5.
|
|
689743
|
+
version: "5.71.0",
|
|
689421
689744
|
...event,
|
|
689422
689745
|
...event.properties,
|
|
689423
689746
|
usingAccessToken: false,
|
|
@@ -870518,7 +870841,7 @@ var LOCAL_STORAGE_FOLDER4 = ".fern-dev";
|
|
|
870518
870841
|
var LOGS_FOLDER_NAME = "logs";
|
|
870519
870842
|
var MAX_LOGS_DIR_SIZE_BYTES = 100 * 1024 * 1024;
|
|
870520
870843
|
function getCliSource() {
|
|
870521
|
-
const version7 = "5.
|
|
870844
|
+
const version7 = "5.71.0";
|
|
870522
870845
|
return `cli@${version7}`;
|
|
870523
870846
|
}
|
|
870524
870847
|
var DebugLogger = class {
|
|
@@ -903090,7 +903413,7 @@ var LegacyDocsPublisher = class {
|
|
|
903090
903413
|
previewId,
|
|
903091
903414
|
disableTemplates: void 0,
|
|
903092
903415
|
skipUpload,
|
|
903093
|
-
cliVersion: "5.
|
|
903416
|
+
cliVersion: "5.71.0",
|
|
903094
903417
|
loginCommand: "fern auth login"
|
|
903095
903418
|
});
|
|
903096
903419
|
if (taskContext.getResult() === TaskResult.Failure) {
|
|
@@ -966265,7 +966588,8 @@ var MessageConverter = class extends AbstractConverter {
|
|
|
966265
966588
|
properties: convertedFields,
|
|
966266
966589
|
extends: [],
|
|
966267
966590
|
extendedProperties: [],
|
|
966268
|
-
extraProperties: false
|
|
966591
|
+
extraProperties: false,
|
|
966592
|
+
deferredUnionBaseProperties: void 0
|
|
966269
966593
|
}),
|
|
966270
966594
|
referencedTypes: allReferencedTypes,
|
|
966271
966595
|
typeName: this.message.name,
|
|
@@ -969516,7 +969840,7 @@ function getAutomationContextFromEnv() {
|
|
|
969516
969840
|
config_branch: process.env.FERN_CONFIG_BRANCH,
|
|
969517
969841
|
config_pr_number: process.env.FERN_CONFIG_PR_NUMBER,
|
|
969518
969842
|
trigger: process.env.GITHUB_EVENT_NAME,
|
|
969519
|
-
cli_version: "5.
|
|
969843
|
+
cli_version: "5.71.0"
|
|
969520
969844
|
};
|
|
969521
969845
|
}
|
|
969522
969846
|
function isAutomationMode() {
|
|
@@ -970348,7 +970672,7 @@ var CliContext = class _CliContext {
|
|
|
970348
970672
|
if (false) {
|
|
970349
970673
|
this.logger.error("CLI_VERSION is not defined");
|
|
970350
970674
|
}
|
|
970351
|
-
return "5.
|
|
970675
|
+
return "5.71.0";
|
|
970352
970676
|
}
|
|
970353
970677
|
getCliName() {
|
|
970354
970678
|
if (false) {
|
package/package.json
CHANGED