@fern-api/fdr-sdk 0.138.0-615cc987f → 0.138.0-9a1be9c78

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 (30) hide show
  1. package/dist/api-definition/migrators/v1ToV2.d.ts.map +1 -1
  2. package/dist/api-definition/migrators/v1ToV2.js +7 -0
  3. package/dist/api-definition/snippets/backfill.test.d.ts +2 -0
  4. package/dist/api-definition/snippets/backfill.test.d.ts.map +1 -0
  5. package/dist/api-definition/snippets/backfill.test.js +129 -0
  6. package/dist/api-definition/snippets/get-har-request.d.ts.map +1 -1
  7. package/dist/api-definition/snippets/get-har-request.js +7 -5
  8. package/dist/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/NullableType.d.ts +8 -0
  9. package/dist/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/NullableType.d.ts.map +1 -0
  10. package/dist/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/NullableType.js +4 -0
  11. package/dist/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/TypeReference.d.ts +4 -1
  12. package/dist/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/TypeReference.d.ts.map +1 -1
  13. package/dist/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/index.d.ts +1 -0
  14. package/dist/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/index.d.ts.map +1 -1
  15. package/dist/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/index.js +1 -0
  16. package/dist/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/NullableType.d.ts +8 -0
  17. package/dist/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/NullableType.d.ts.map +1 -0
  18. package/dist/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/NullableType.js +4 -0
  19. package/dist/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/TypeReference.d.ts +4 -1
  20. package/dist/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/TypeReference.d.ts.map +1 -1
  21. package/dist/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/index.d.ts +1 -0
  22. package/dist/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/index.d.ts.map +1 -1
  23. package/dist/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/index.js +1 -0
  24. package/dist/converters/db/examples/generateHttpBodyExample.d.ts.map +1 -1
  25. package/dist/converters/db/examples/generateHttpBodyExample.js +12 -0
  26. package/dist/navigation/ApiTypeIdVisitor.d.ts.map +1 -1
  27. package/dist/navigation/ApiTypeIdVisitor.js +1 -0
  28. package/dist/navigation/migrators/v1ToV2.d.ts.map +1 -1
  29. package/dist/navigation/migrators/v1ToV2.js +47 -11
  30. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"v1ToV2.d.ts","sourceRoot":"","sources":["../../../src/api-definition/migrators/v1ToV2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"v1ToV2.d.ts","sourceRoot":"","sources":["../../../src/api-definition/migrators/v1ToV2.ts"],"names":[],"mappings":"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"}
@@ -211,6 +211,13 @@ export class ApiDefinitionV1ToLatest {
211
211
  default: value.default,
212
212
  }),
213
213
  primitive: (value) => value,
214
+ nullable: (value) => ({
215
+ type: "nullable",
216
+ shape: {
217
+ type: "alias",
218
+ value: this.migrateTypeReference(value.itemType),
219
+ },
220
+ }),
214
221
  optional: (value) => ({
215
222
  type: "optional",
216
223
  shape: {
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=backfill.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backfill.test.d.ts","sourceRoot":"","sources":["../../../src/api-definition/snippets/backfill.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,129 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { ApiDefinitionId, EndpointId, EnvironmentId, } from "../latest";
3
+ import { backfillSnippets } from "./backfill";
4
+ describe("backfillSnippets", () => {
5
+ it("should backfill snippets for a search endpoint example", async () => {
6
+ const apiDefinition = {
7
+ id: ApiDefinitionId("test-api"),
8
+ endpoints: {
9
+ [EndpointId("search")]: {
10
+ id: EndpointId("search"),
11
+ method: "POST",
12
+ path: [{ type: "literal", value: "/" }],
13
+ displayName: undefined,
14
+ operationId: undefined,
15
+ auth: undefined,
16
+ defaultEnvironment: undefined,
17
+ environments: [
18
+ {
19
+ id: EnvironmentId("default"),
20
+ baseUrl: "https://api.example.com/v1",
21
+ },
22
+ ],
23
+ pathParameters: undefined,
24
+ queryParameters: undefined,
25
+ requestHeaders: undefined,
26
+ responseHeaders: undefined,
27
+ requests: undefined,
28
+ responses: undefined,
29
+ errors: undefined,
30
+ snippetTemplates: undefined,
31
+ protocol: undefined,
32
+ description: undefined,
33
+ availability: undefined,
34
+ namespace: undefined,
35
+ examples: [
36
+ {
37
+ name: "Basic Search",
38
+ description: "",
39
+ path: "/",
40
+ pathParameters: {},
41
+ queryParameters: {},
42
+ headers: {},
43
+ requestBody: {
44
+ type: "json",
45
+ value: {
46
+ RecordCount: 50,
47
+ DocumentSearchParams: {
48
+ SearchTerms: {
49
+ All: ["data security"],
50
+ Any: ["cyberattack", "breach"],
51
+ None: ["ransomware"],
52
+ },
53
+ DocumentDateRangeStart: "2023-01-01T00:00:00Z",
54
+ DocumentDateRangeEnd: "2023-12-31T23:59:59Z",
55
+ },
56
+ },
57
+ },
58
+ responseStatusCode: 200,
59
+ responseBody: {
60
+ type: "json",
61
+ value: {
62
+ TotalDocumentCount: 833494,
63
+ NotReturnedDocumentCount: 0,
64
+ ReturnedDocumentCount: 2,
65
+ TruncatedDocumentCount: 0,
66
+ Documents: [
67
+ {
68
+ IsTruncated: false,
69
+ DocumentID: 77187402516,
70
+ DocumentType: "NEWS",
71
+ UploadDate: "2024-10-22T16:54:36Z",
72
+ DocumentDate: "2024-10-22T15:17:54Z",
73
+ DocumentName: "Wall Street Continues to See Recent Rally Cooling",
74
+ DocumentText: "U.S. stocks dropped again on Tuesday...",
75
+ AuthorName: "Natalie Venegas",
76
+ DocumentSourceURL: "https://www.newsweek.com/wall-street-continues-see-recent-rally-cooling-1972948",
77
+ DocumentImageURL: "https://d.newsweek.com/en/full/2501402/new-york-stock-exchange.jpg",
78
+ LanguageID: "en",
79
+ DocumentSentimentScore: "-13",
80
+ ContainsViolence: true,
81
+ },
82
+ ],
83
+ FavIcons: {
84
+ NEWS: "https://d1hgo075dbsz4i.cloudfront.net/21f4f43585ea45aa539034866e692e21/a/News/dsicon",
85
+ },
86
+ },
87
+ },
88
+ snippets: undefined,
89
+ },
90
+ ],
91
+ },
92
+ },
93
+ auths: {},
94
+ websockets: {},
95
+ webhooks: {},
96
+ types: {},
97
+ globalHeaders: [],
98
+ subpackages: {},
99
+ snippetsConfiguration: undefined,
100
+ };
101
+ const flags = {
102
+ usesApplicationJsonInFormDataValue: false,
103
+ isHttpSnippetsEnabled: true,
104
+ alwaysEnableJavaScriptFetch: true,
105
+ };
106
+ const result = await backfillSnippets(apiDefinition, flags);
107
+ // Verify the result has the expected structure
108
+ const endpoint = result.endpoints[EndpointId("search")];
109
+ expect(endpoint).toBeDefined();
110
+ const examples = endpoint?.examples;
111
+ expect(examples).toHaveLength(1);
112
+ const example = examples?.[0];
113
+ expect(example).toBeDefined();
114
+ // Verify snippets were generated
115
+ const snippets = example?.snippets;
116
+ expect(snippets).toBeDefined();
117
+ const curlSnippets = snippets?.curl;
118
+ expect(curlSnippets).toBeDefined();
119
+ expect(curlSnippets).toHaveLength(1);
120
+ // Verify curl snippet contains expected content
121
+ const curlSnippet = curlSnippets?.[0];
122
+ expect(curlSnippet?.language).toBe("curl");
123
+ expect(curlSnippet?.code).toContain("curl");
124
+ expect(curlSnippet?.code).toContain("POST");
125
+ expect(curlSnippet?.code).toContain('"RecordCount": 50');
126
+ expect(curlSnippet?.code).toContain('"data security"');
127
+ expect(example?.snippets).toMatchSnapshot();
128
+ });
129
+ });
@@ -1 +1 @@
1
- {"version":3,"file":"get-har-request.d.ts","sourceRoot":"","sources":["../../../src/api-definition/snippets/get-har-request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAOnD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAE5B,MAAM,KAAK,CAAC;AACb,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,mBAAmB,EAC5B,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,EACpC,WAAW,EAAE,sBAAsB,GAAG,SAAS,GAC9C,UAAU,CA6JZ"}
1
+ {"version":3,"file":"get-har-request.d.ts","sourceRoot":"","sources":["../../../src/api-definition/snippets/get-har-request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAOnD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAE5B,MAAM,KAAK,CAAC;AACb,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,mBAAmB,EAC5B,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,EACpC,WAAW,EAAE,sBAAsB,GAAG,SAAS,GAC9C,UAAU,CA+JZ"}
@@ -39,12 +39,14 @@ export function getHarRequest(endpoint, example, auths, requestBody) {
39
39
  // filter out request parameters that have no value and are not an array
40
40
  if (requestBody.value && typeof requestBody.value === "object") {
41
41
  requestBody.value = Object.fromEntries(Object.entries(requestBody.value).filter(([_, valueObj]) => {
42
- if (typeof valueObj === "object" &&
43
- valueObj != null &&
44
- !Array.isArray(valueObj)) {
45
- return "value" in valueObj;
42
+ // Keep arrays and primitive values
43
+ if (Array.isArray(valueObj) ||
44
+ typeof valueObj !== "object" ||
45
+ valueObj === null) {
46
+ return true;
46
47
  }
47
- return true;
48
+ // For objects, only filter out empty objects without a value property
49
+ return Object.keys(valueObj).length > 0;
48
50
  }));
49
51
  }
50
52
  if (requestBody.type === "json") {
@@ -0,0 +1,8 @@
1
+ /**
2
+ * This file was auto-generated by Fern from our API Definition.
3
+ */
4
+ import * as FernRegistry from "../../../../../../../../../index";
5
+ export interface NullableType {
6
+ itemType: FernRegistry.api.v1.read.TypeReference;
7
+ }
8
+ //# sourceMappingURL=NullableType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NullableType.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/NullableType.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AAEjE,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC;CACpD"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * This file was auto-generated by Fern from our API Definition.
3
+ */
4
+ export {};
@@ -2,7 +2,7 @@
2
2
  * This file was auto-generated by Fern from our API Definition.
3
3
  */
4
4
  import * as FernRegistry from "../../../../../../../../../index";
5
- export type TypeReference = FernRegistry.api.v1.read.TypeReference.Id | FernRegistry.api.v1.read.TypeReference.Primitive | FernRegistry.api.v1.read.TypeReference.Optional | FernRegistry.api.v1.read.TypeReference.List | FernRegistry.api.v1.read.TypeReference.Set | FernRegistry.api.v1.read.TypeReference.Map | FernRegistry.api.v1.read.TypeReference.Literal | FernRegistry.api.v1.read.TypeReference.Unknown;
5
+ export type TypeReference = FernRegistry.api.v1.read.TypeReference.Id | FernRegistry.api.v1.read.TypeReference.Primitive | FernRegistry.api.v1.read.TypeReference.Optional | FernRegistry.api.v1.read.TypeReference.Nullable | FernRegistry.api.v1.read.TypeReference.List | FernRegistry.api.v1.read.TypeReference.Set | FernRegistry.api.v1.read.TypeReference.Map | FernRegistry.api.v1.read.TypeReference.Literal | FernRegistry.api.v1.read.TypeReference.Unknown;
6
6
  export declare namespace TypeReference {
7
7
  interface Id extends FernRegistry.api.v1.read.TypeReferenceId {
8
8
  type: "id";
@@ -14,6 +14,9 @@ export declare namespace TypeReference {
14
14
  interface Optional extends FernRegistry.api.v1.read.OptionalType {
15
15
  type: "optional";
16
16
  }
17
+ interface Nullable extends FernRegistry.api.v1.read.NullableType {
18
+ type: "nullable";
19
+ }
17
20
  interface List extends FernRegistry.api.v1.read.ListType {
18
21
  type: "list";
19
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TypeReference.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/TypeReference.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AAEjE,MAAM,MAAM,aAAa,GACnB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,GACzC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,GAChD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,GAC/C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,GAC3C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,GAC1C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,GAC1C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,GAC9C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;AAErD,yBAAiB,aAAa,CAAC;IAC3B,UAAiB,EAAG,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe;QAChE,IAAI,EAAE,IAAI,CAAC;KACd;IAED,UAAiB,SAAS;QACtB,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC;KACjD;IAED,UAAiB,QAAS,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY;QACnE,IAAI,EAAE,UAAU,CAAC;KACpB;IAED,UAAiB,IAAK,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ;QAC3D,IAAI,EAAE,MAAM,CAAC;KAChB;IAED,UAAiB,GAAI,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO;QACzD,IAAI,EAAE,KAAK,CAAC;KACf;IAED,UAAiB,GAAI,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO;QACzD,IAAI,EAAE,KAAK,CAAC;KACf;IAED,UAAiB,OAAO;QACpB,IAAI,EAAE,SAAS,CAAC;QAChB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC;KAC/C;IAED,UAAiB,OAAO;QACpB,IAAI,EAAE,SAAS,CAAC;KACnB;CACJ"}
1
+ {"version":3,"file":"TypeReference.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/TypeReference.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AAEjE,MAAM,MAAM,aAAa,GACnB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,GACzC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,GAChD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,GAC/C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,GAC/C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,GAC3C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,GAC1C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,GAC1C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,GAC9C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;AAErD,yBAAiB,aAAa,CAAC;IAC3B,UAAiB,EAAG,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe;QAChE,IAAI,EAAE,IAAI,CAAC;KACd;IAED,UAAiB,SAAS;QACtB,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC;KACjD;IAED,UAAiB,QAAS,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY;QACnE,IAAI,EAAE,UAAU,CAAC;KACpB;IAED,UAAiB,QAAS,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY;QACnE,IAAI,EAAE,UAAU,CAAC;KACpB;IAED,UAAiB,IAAK,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ;QAC3D,IAAI,EAAE,MAAM,CAAC;KAChB;IAED,UAAiB,GAAI,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO;QACzD,IAAI,EAAE,KAAK,CAAC;KACf;IAED,UAAiB,GAAI,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO;QACzD,IAAI,EAAE,KAAK,CAAC;KACf;IAED,UAAiB,OAAO;QACpB,IAAI,EAAE,SAAS,CAAC;QAChB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC;KAC/C;IAED,UAAiB,OAAO;QACpB,IAAI,EAAE,SAAS,CAAC;KACnB;CACJ"}
@@ -18,6 +18,7 @@ export * from "./Base64Type";
18
18
  export * from "./DateType";
19
19
  export * from "./BigIntegerType";
20
20
  export * from "./OptionalType";
21
+ export * from "./NullableType";
21
22
  export * from "./ListType";
22
23
  export * from "./SetType";
23
24
  export * from "./MapType";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/read/resources/type/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
@@ -18,6 +18,7 @@ export * from "./Base64Type";
18
18
  export * from "./DateType";
19
19
  export * from "./BigIntegerType";
20
20
  export * from "./OptionalType";
21
+ export * from "./NullableType";
21
22
  export * from "./ListType";
22
23
  export * from "./SetType";
23
24
  export * from "./MapType";
@@ -0,0 +1,8 @@
1
+ /**
2
+ * This file was auto-generated by Fern from our API Definition.
3
+ */
4
+ import * as FernRegistry from "../../../../../../../../../index";
5
+ export interface NullableType {
6
+ itemType: FernRegistry.api.v1.register.TypeReference;
7
+ }
8
+ //# sourceMappingURL=NullableType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NullableType.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/NullableType.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AAEjE,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;CACxD"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * This file was auto-generated by Fern from our API Definition.
3
+ */
4
+ export {};
@@ -2,7 +2,7 @@
2
2
  * This file was auto-generated by Fern from our API Definition.
3
3
  */
4
4
  import * as FernRegistry from "../../../../../../../../../index";
5
- export type TypeReference = FernRegistry.api.v1.register.TypeReference.Id | FernRegistry.api.v1.register.TypeReference.Primitive | FernRegistry.api.v1.register.TypeReference.Optional | FernRegistry.api.v1.register.TypeReference.List | FernRegistry.api.v1.register.TypeReference.Set | FernRegistry.api.v1.register.TypeReference.Map | FernRegistry.api.v1.register.TypeReference.Literal | FernRegistry.api.v1.register.TypeReference.Unknown;
5
+ export type TypeReference = FernRegistry.api.v1.register.TypeReference.Id | FernRegistry.api.v1.register.TypeReference.Primitive | FernRegistry.api.v1.register.TypeReference.Optional | FernRegistry.api.v1.register.TypeReference.Nullable | FernRegistry.api.v1.register.TypeReference.List | FernRegistry.api.v1.register.TypeReference.Set | FernRegistry.api.v1.register.TypeReference.Map | FernRegistry.api.v1.register.TypeReference.Literal | FernRegistry.api.v1.register.TypeReference.Unknown;
6
6
  export declare namespace TypeReference {
7
7
  interface Id extends FernRegistry.api.v1.register.TypeReferenceId {
8
8
  type: "id";
@@ -14,6 +14,9 @@ export declare namespace TypeReference {
14
14
  interface Optional extends FernRegistry.api.v1.register.OptionalType {
15
15
  type: "optional";
16
16
  }
17
+ interface Nullable extends FernRegistry.api.v1.register.NullableType {
18
+ type: "nullable";
19
+ }
17
20
  interface List extends FernRegistry.api.v1.register.ListType {
18
21
  type: "list";
19
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TypeReference.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/TypeReference.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AAEjE,MAAM,MAAM,aAAa,GACnB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,GAC7C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,GACpD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,GACnD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,GAC/C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,GAC9C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,GAC9C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,GAClD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;AAEzD,yBAAiB,aAAa,CAAC;IAC3B,UAAiB,EAAG,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,eAAe;QACpE,IAAI,EAAE,IAAI,CAAC;KACd;IAED,UAAiB,SAAS;QACtB,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;KACrD;IAED,UAAiB,QAAS,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,YAAY;QACvE,IAAI,EAAE,UAAU,CAAC;KACpB;IAED,UAAiB,IAAK,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ;QAC/D,IAAI,EAAE,MAAM,CAAC;KAChB;IAED,UAAiB,GAAI,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO;QAC7D,IAAI,EAAE,KAAK,CAAC;KACf;IAED,UAAiB,GAAI,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO;QAC7D,IAAI,EAAE,KAAK,CAAC;KACf;IAED,UAAiB,OAAO;QACpB,IAAI,EAAE,SAAS,CAAC;QAChB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;KACnD;IAED,UAAiB,OAAO;QACpB,IAAI,EAAE,SAAS,CAAC;KACnB;CACJ"}
1
+ {"version":3,"file":"TypeReference.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/TypeReference.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AAEjE,MAAM,MAAM,aAAa,GACnB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,GAC7C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,GACpD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,GACnD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,GACnD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,GAC/C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,GAC9C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,GAC9C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,GAClD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;AAEzD,yBAAiB,aAAa,CAAC;IAC3B,UAAiB,EAAG,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,eAAe;QACpE,IAAI,EAAE,IAAI,CAAC;KACd;IAED,UAAiB,SAAS;QACtB,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;KACrD;IAED,UAAiB,QAAS,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,YAAY;QACvE,IAAI,EAAE,UAAU,CAAC;KACpB;IAED,UAAiB,QAAS,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,YAAY;QACvE,IAAI,EAAE,UAAU,CAAC;KACpB;IAED,UAAiB,IAAK,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ;QAC/D,IAAI,EAAE,MAAM,CAAC;KAChB;IAED,UAAiB,GAAI,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO;QAC7D,IAAI,EAAE,KAAK,CAAC;KACf;IAED,UAAiB,GAAI,SAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO;QAC7D,IAAI,EAAE,KAAK,CAAC;KACf;IAED,UAAiB,OAAO;QACpB,IAAI,EAAE,SAAS,CAAC;QAChB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;KACnD;IAED,UAAiB,OAAO;QACpB,IAAI,EAAE,SAAS,CAAC;KACnB;CACJ"}
@@ -18,6 +18,7 @@ export * from "./Base64Type";
18
18
  export * from "./DateType";
19
19
  export * from "./BigIntegerType";
20
20
  export * from "./OptionalType";
21
+ export * from "./NullableType";
21
22
  export * from "./ListType";
22
23
  export * from "./SetType";
23
24
  export * from "./MapType";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../../src/client/generated/api/resources/api/resources/v1/resources/register/resources/type/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
@@ -18,6 +18,7 @@ export * from "./Base64Type";
18
18
  export * from "./DateType";
19
19
  export * from "./BigIntegerType";
20
20
  export * from "./OptionalType";
21
+ export * from "./NullableType";
21
22
  export * from "./ListType";
22
23
  export * from "./SetType";
23
24
  export * from "./MapType";
@@ -1 +1 @@
1
- {"version":3,"file":"generateHttpBodyExample.d.ts","sourceRoot":"","sources":["../../../../src/converters/db/examples/generateHttpBodyExample.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,MAAM,eAAe,GAAG,CAC5B,MAAM,EAAE,UAAU,CAAC,MAAM,KACtB,UAAU,CAAC,cAAc,CAAC;AAE/B,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,UAAU,CAAC,mBAAmB,EACrC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAeT;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,UAAU,CAAC,oBAAoB,EACrC,eAAe,EAAE,eAAe,GAC/B,UAAU,CAAC,sBAAsB,GAAG,SAAS,CAuC/C;AA+ED,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,UAAU,CAAC,qBAAqB,EACtC,eAAe,EAAE,eAAe,GAC/B,UAAU,CAAC,uBAAuB,GAAG,SAAS,CA4DhD;AAyBD,wBAAgB,gCAAgC,CAC9C,SAAS,EAAE,UAAU,CAAC,aAAa,EACnC,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,OAAO,EACxB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAmGT;AAmBD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,UAAU,CAAC,SAAS,EAC3B,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,OAAO,EACxB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CA8CT;AAED,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,UAAU,CAAC,WAAW,GAChC,OAAO,GAAG,MAAM,CAElB"}
1
+ {"version":3,"file":"generateHttpBodyExample.d.ts","sourceRoot":"","sources":["../../../../src/converters/db/examples/generateHttpBodyExample.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,MAAM,eAAe,GAAG,CAC5B,MAAM,EAAE,UAAU,CAAC,MAAM,KACtB,UAAU,CAAC,cAAc,CAAC;AAE/B,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,UAAU,CAAC,mBAAmB,EACrC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAeT;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,UAAU,CAAC,oBAAoB,EACrC,eAAe,EAAE,eAAe,GAC/B,UAAU,CAAC,sBAAsB,GAAG,SAAS,CAuC/C;AA+ED,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,UAAU,CAAC,qBAAqB,EACtC,eAAe,EAAE,eAAe,GAC/B,UAAU,CAAC,uBAAuB,GAAG,SAAS,CA4DhD;AAyBD,wBAAgB,gCAAgC,CAC9C,SAAS,EAAE,UAAU,CAAC,aAAa,EACnC,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,OAAO,EACxB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAoHT;AAmBD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,UAAU,CAAC,SAAS,EAC3B,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,OAAO,EACxB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CA8CT;AAED,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,UAAU,CAAC,WAAW,GAChC,OAAO,GAAG,MAAM,CAElB"}
@@ -164,6 +164,18 @@ export function generateExampleFromTypeReference(reference, resolveTypeById, ign
164
164
  generateExampleFromTypeReference(reference.itemType, resolveTypeById, ignoreOptionals, visited, depth);
165
165
  }
166
166
  break;
167
+ case "nullable":
168
+ if (reference.itemType.type === "id") {
169
+ if (visited.has(reference.itemType.value)) {
170
+ example = undefined;
171
+ break;
172
+ }
173
+ else {
174
+ visited.add(reference.itemType.value);
175
+ }
176
+ }
177
+ example = generateExampleFromTypeReference(reference.itemType, resolveTypeById, ignoreOptionals, visited, depth);
178
+ break;
167
179
  case "list":
168
180
  if (reference.itemType.type === "id") {
169
181
  if (visited.has(reference.itemType.value)) {
@@ -1 +1 @@
1
- {"version":3,"file":"ApiTypeIdVisitor.d.ts","sourceRoot":"","sources":["../../src/navigation/ApiTypeIdVisitor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,qBAAa,gBAAgB;WACb,uBAAuB,CACnC,QAAQ,EAAE,SAAS,CAAC,kBAAkB,EACtC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WA4BO,qBAAqB,CACjC,OAAO,EAAE,SAAS,CAAC,gBAAgB,EACnC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAeO,sBAAsB,CAClC,OAAO,EAAE,SAAS,CAAC,iBAAiB,EACpC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAOO,yBAAyB,CACrC,SAAS,EAAE,SAAS,CAAC,oBAAoB,EACzC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAcO,0BAA0B,CACtC,SAAS,EAAE,SAAS,CAAC,qBAAqB,EAC1C,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAmBO,sBAAsB,CAClC,SAAS,EAAE,SAAS,CAAC,aAAa,EAClC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAQO,oBAAoB,CAChC,cAAc,EAAE,SAAS,CAAC,eAAe,EACzC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAUO,mBAAmB,CAC/B,cAAc,EAAE,SAAS,CAAC,cAAc,EACxC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAIO,cAAc,CAC1B,SAAS,EAAE,SAAS,CAAC,SAAS,EAC9B,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAgBO,eAAe,CAC3B,SAAS,EAAE,SAAS,CAAC,UAAU,EAC/B,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAOO,kBAAkB,CAC9B,aAAa,EAAE,SAAS,CAAC,aAAa,EACtC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;CAkBR"}
1
+ {"version":3,"file":"ApiTypeIdVisitor.d.ts","sourceRoot":"","sources":["../../src/navigation/ApiTypeIdVisitor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,qBAAa,gBAAgB;WACb,uBAAuB,CACnC,QAAQ,EAAE,SAAS,CAAC,kBAAkB,EACtC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WA4BO,qBAAqB,CACjC,OAAO,EAAE,SAAS,CAAC,gBAAgB,EACnC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAeO,sBAAsB,CAClC,OAAO,EAAE,SAAS,CAAC,iBAAiB,EACpC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAOO,yBAAyB,CACrC,SAAS,EAAE,SAAS,CAAC,oBAAoB,EACzC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAcO,0BAA0B,CACtC,SAAS,EAAE,SAAS,CAAC,qBAAqB,EAC1C,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAmBO,sBAAsB,CAClC,SAAS,EAAE,SAAS,CAAC,aAAa,EAClC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAQO,oBAAoB,CAChC,cAAc,EAAE,SAAS,CAAC,eAAe,EACzC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAUO,mBAAmB,CAC/B,cAAc,EAAE,SAAS,CAAC,cAAc,EACxC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAIO,cAAc,CAC1B,SAAS,EAAE,SAAS,CAAC,SAAS,EAC9B,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAgBO,eAAe,CAC3B,SAAS,EAAE,SAAS,CAAC,UAAU,EAC/B,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;WAOO,kBAAkB,CAC9B,aAAa,EAAE,SAAS,CAAC,aAAa,EACtC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,GACxC,IAAI;CAoBR"}
@@ -103,6 +103,7 @@ export class ApiTypeIdVisitor {
103
103
  return visitDiscriminatedUnion(typeReference)._visit({
104
104
  id: (value) => visit(value.value),
105
105
  primitive: noop,
106
+ nullable: (value) => ApiTypeIdVisitor.visitTypeReference(value.itemType, visit),
106
107
  optional: (value) => ApiTypeIdVisitor.visitTypeReference(value.itemType, visit),
107
108
  list: (value) => ApiTypeIdVisitor.visitTypeReference(value.itemType, visit),
108
109
  set: (value) => ApiTypeIdVisitor.visitTypeReference(value.itemType, visit),
@@ -1 +1 @@
1
- {"version":3,"file":"v1ToV2.d.ts","sourceRoot":"","sources":["../../../src/navigation/migrators/v1ToV2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"v1ToV2.d.ts","sourceRoot":"","sources":["../../../src/navigation/migrators/v1ToV2.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,16 @@ export class FernNavigationV1ToLatest {
11
11
  return new FernNavigationV1ToLatest();
12
12
  }
13
13
  constructor() { }
14
+ // store the base slug
15
+ #baseUrl;
16
+ // this will store the product slug we are currently parsing
17
+ // to be used when setting the canonical URL
18
+ #currentProductSlug;
19
+ // this will store the product slug we are currently parsing
20
+ // to be used when setting the canonical URL
21
+ #currentDefaultVersionSlug;
14
22
  root = (node) => {
23
+ this.#baseUrl = FernNavigation.Slug(node.slug);
15
24
  const latest = {
16
25
  type: "root",
17
26
  child: visitDiscriminatedUnion(node.child)._visit({
@@ -54,6 +63,7 @@ export class FernNavigationV1ToLatest {
54
63
  if (!defaultVersionV1) {
55
64
  throw new Error("default version is undefined");
56
65
  }
66
+ this.#currentDefaultVersionSlug = FernNavigation.Slug(defaultVersionV1.slug);
57
67
  const defaultVersion = this.version(defaultVersionV1, [...parents, node]);
58
68
  /**
59
69
  * visit the rest of the children, but splice the default version in its original position
@@ -221,6 +231,7 @@ export class FernNavigationV1ToLatest {
221
231
  return latest;
222
232
  };
223
233
  product = (node, parents) => {
234
+ this.#currentProductSlug = node.slug;
224
235
  const latest = {
225
236
  type: "product",
226
237
  id: FernNavigation.NodeId(node.id),
@@ -594,25 +605,50 @@ export class FernNavigationV1ToLatest {
594
605
  }
595
606
  }
596
607
  #canonicalSlugs = new Map();
608
+ // return a match found with any key
609
+ #getCanonicalSlug = (keyOrKeys) => {
610
+ if (typeof keyOrKeys === "string") {
611
+ return this.#canonicalSlugs.get(keyOrKeys);
612
+ }
613
+ for (const key of keyOrKeys) {
614
+ const existing = this.#canonicalSlugs.get(key);
615
+ // explicitly check for undefined because empty string is valid
616
+ if (existing !== undefined) {
617
+ return existing;
618
+ }
619
+ }
620
+ return undefined;
621
+ };
622
+ // set all keys to use the same canonical url
623
+ #setCanonicalSlug = (keyOrKeys, fullCanonical) => {
624
+ const baseSlug = this.#currentProductSlug ?? "" + this.#baseUrl;
625
+ // if the canonical slug includes the default version, prefer an unversioned slug
626
+ const normalizedCanonical = this.#currentDefaultVersionSlug
627
+ ? fullCanonical.replace(new RegExp(`(^|/)${this.#currentDefaultVersionSlug}(/|$)`, "g"), `$1${baseSlug}$2`)
628
+ : fullCanonical;
629
+ // canonical slug should always begin without a slash
630
+ const canonicalSlug = FernNavigation.Slug(normalizedCanonical.replace(/^\//, ""));
631
+ if (typeof keyOrKeys === "string") {
632
+ this.#canonicalSlugs.set(keyOrKeys, canonicalSlug);
633
+ return canonicalSlug;
634
+ }
635
+ // canonical slug should apply to all keys of a given page
636
+ for (const key of keyOrKeys) {
637
+ this.#canonicalSlugs.set(key, canonicalSlug);
638
+ }
639
+ return canonicalSlug;
640
+ };
597
641
  // TODO: canonical url logic should account for RBAC, since we should always prefer the publicly available url over the private one (for SEO)
598
642
  #getAndSetCanonicalSlug = (keyOrKeys, slug) => {
599
643
  if (keyOrKeys == null) {
600
644
  return undefined;
601
645
  }
602
- if (Array.isArray(keyOrKeys)) {
603
- /**
604
- * This will set the canonical slug to each of the keys in the array, and return the first non-null slug
605
- */
606
- return keyOrKeys
607
- .map((key) => this.#getAndSetCanonicalSlug(key, slug))
608
- .find((s) => s != null);
609
- }
610
- const existing = this.#canonicalSlugs.get(keyOrKeys);
646
+ const existing = this.#getCanonicalSlug(keyOrKeys);
611
647
  if (existing != null) {
612
648
  return existing;
613
649
  }
614
- this.#canonicalSlugs.set(keyOrKeys, slug);
615
- return undefined;
650
+ const canonicalSlug = this.#setCanonicalSlug(keyOrKeys, slug);
651
+ return canonicalSlug;
616
652
  };
617
653
  #createTitleDisambiguationKey = (node, parents) => {
618
654
  const unversionedParents = this.#findUnversionedParents(parents);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fern-api/fdr-sdk",
3
- "version": "0.138.0-615cc987f",
3
+ "version": "0.138.0-9a1be9c78",
4
4
  "sideEffects": false,
5
5
  "type": "module",
6
6
  "exports": {
@@ -49,7 +49,7 @@
49
49
  "test:update": "vitest --run --passWithNoTests --globals -u"
50
50
  },
51
51
  "dependencies": {
52
- "@fern-api/ui-core-utils": "0.138.0-615cc987f*",
52
+ "@fern-api/ui-core-utils": "0.138.0-9a1be9c78*",
53
53
  "@ungap/structured-clone": "^1.2.0",
54
54
  "dayjs": "^1.11.11",
55
55
  "es-toolkit": "^1.32.0",
@@ -68,7 +68,7 @@
68
68
  "@babel/core": "^7.26.9",
69
69
  "@babel/preset-env": "^7.26.0",
70
70
  "@babel/preset-typescript": "^7.26.0",
71
- "@fern-platform/configs": "0.138.0-615cc987f*",
71
+ "@fern-platform/configs": "0.138.0-9a1be9c78*",
72
72
  "@types/node-fetch": "2.6.9",
73
73
  "@types/qs": "6.9.14",
74
74
  "@types/tinycolor2": "^1.4.6",