@fern-api/fdr-sdk 1.2.80-7b2d1af0a2 → 1.2.81-d31daf360a

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 (92) hide show
  1. package/dist/api-definition/snippets/graphql-snippets.d.ts +19 -0
  2. package/dist/api-definition/snippets/graphql-snippets.d.ts.map +1 -1
  3. package/dist/api-definition/snippets/graphql-snippets.js +25 -0
  4. package/dist/api-definition/snippets/graphql-snippets.js.map +1 -1
  5. package/dist/js/api-definition/index.js +21 -0
  6. package/dist/js/api-definition/index.js.map +1 -1
  7. package/dist/js/api-definition/index.mjs +20 -0
  8. package/dist/js/api-definition/index.mjs.map +1 -1
  9. package/dist/js/client/FdrClient.js +13 -3
  10. package/dist/js/client/FdrClient.js.map +1 -1
  11. package/dist/js/client/FdrClient.mjs +13 -3
  12. package/dist/js/client/FdrClient.mjs.map +1 -1
  13. package/dist/js/client/types.js.map +1 -1
  14. package/dist/js/client/types.mjs.map +1 -1
  15. package/dist/js/converters/index.js +59 -25
  16. package/dist/js/converters/index.js.map +1 -1
  17. package/dist/js/converters/index.mjs +59 -25
  18. package/dist/js/converters/index.mjs.map +1 -1
  19. package/dist/js/index.js +72 -28
  20. package/dist/js/index.js.map +1 -1
  21. package/dist/js/index.mjs +72 -28
  22. package/dist/js/index.mjs.map +1 -1
  23. package/dist/js/navigation/index.js +59 -25
  24. package/dist/js/navigation/index.js.map +1 -1
  25. package/dist/js/navigation/index.mjs +59 -25
  26. package/dist/js/navigation/index.mjs.map +1 -1
  27. package/dist/js/navigation/ledger-root-builder.js +29 -5
  28. package/dist/js/navigation/ledger-root-builder.js.map +1 -1
  29. package/dist/js/navigation/ledger-root-builder.mjs +29 -5
  30. package/dist/js/navigation/ledger-root-builder.mjs.map +1 -1
  31. package/dist/js/navigation/types/latest.js.map +1 -1
  32. package/dist/js/navigation/types/latest.mjs.map +1 -1
  33. package/dist/js/navigation/types/v1.js.map +1 -1
  34. package/dist/js/navigation/types/v1.mjs.map +1 -1
  35. package/dist/js/orpc-client.js +13 -3
  36. package/dist/js/orpc-client.js.map +1 -1
  37. package/dist/js/orpc-client.mjs +13 -3
  38. package/dist/js/orpc-client.mjs.map +1 -1
  39. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts +2 -0
  40. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts.map +1 -0
  41. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.js +185 -0
  42. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.js.map +1 -0
  43. package/dist/navigation/ledger-root-builder.d.ts.map +1 -1
  44. package/dist/navigation/ledger-root-builder.js +41 -5
  45. package/dist/navigation/ledger-root-builder.js.map +1 -1
  46. package/dist/navigation/types/latest.d.ts +1 -0
  47. package/dist/navigation/types/latest.d.ts.map +1 -1
  48. package/dist/navigation/types/v1.d.ts +1 -0
  49. package/dist/navigation/types/v1.d.ts.map +1 -1
  50. package/dist/navigation/utils/__test__/resolveCurrentTab.test.d.ts +2 -0
  51. package/dist/navigation/utils/__test__/resolveCurrentTab.test.d.ts.map +1 -0
  52. package/dist/navigation/utils/__test__/resolveCurrentTab.test.js +70 -0
  53. package/dist/navigation/utils/__test__/resolveCurrentTab.test.js.map +1 -0
  54. package/dist/navigation/utils/findNode.d.ts.map +1 -1
  55. package/dist/navigation/utils/findNode.js +3 -30
  56. package/dist/navigation/utils/findNode.js.map +1 -1
  57. package/dist/navigation/utils/index.d.ts +1 -0
  58. package/dist/navigation/utils/index.d.ts.map +1 -1
  59. package/dist/navigation/utils/index.js +1 -0
  60. package/dist/navigation/utils/index.js.map +1 -1
  61. package/dist/navigation/utils/resolveCurrentTab.d.ts +26 -0
  62. package/dist/navigation/utils/resolveCurrentTab.d.ts.map +1 -0
  63. package/dist/navigation/utils/resolveCurrentTab.js +60 -0
  64. package/dist/navigation/utils/resolveCurrentTab.js.map +1 -0
  65. package/dist/orpc-client/docs-ledger/contract.d.ts +5126 -0
  66. package/dist/orpc-client/docs-ledger/contract.d.ts.map +1 -1
  67. package/dist/orpc-client/docs-ledger/contract.js +17 -3
  68. package/dist/orpc-client/docs-ledger/contract.js.map +1 -1
  69. package/dist/orpc-client/docs-ledger/ledger-manifest.d.ts +7356 -0
  70. package/dist/orpc-client/docs-ledger/ledger-manifest.d.ts.map +1 -1
  71. package/dist/types/api-definition/snippets/graphql-snippets.d.ts +19 -0
  72. package/dist/types/api-definition/snippets/graphql-snippets.d.ts.map +1 -1
  73. package/dist/types/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts +2 -0
  74. package/dist/types/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts.map +1 -0
  75. package/dist/types/navigation/ledger-root-builder.d.ts.map +1 -1
  76. package/dist/types/navigation/types/latest.d.ts +1 -0
  77. package/dist/types/navigation/types/latest.d.ts.map +1 -1
  78. package/dist/types/navigation/types/v1.d.ts +1 -0
  79. package/dist/types/navigation/types/v1.d.ts.map +1 -1
  80. package/dist/types/navigation/utils/__test__/resolveCurrentTab.test.d.ts +2 -0
  81. package/dist/types/navigation/utils/__test__/resolveCurrentTab.test.d.ts.map +1 -0
  82. package/dist/types/navigation/utils/findNode.d.ts.map +1 -1
  83. package/dist/types/navigation/utils/index.d.ts +1 -0
  84. package/dist/types/navigation/utils/index.d.ts.map +1 -1
  85. package/dist/types/navigation/utils/resolveCurrentTab.d.ts +26 -0
  86. package/dist/types/navigation/utils/resolveCurrentTab.d.ts.map +1 -0
  87. package/dist/types/orpc-client/docs-ledger/contract.d.ts +5126 -0
  88. package/dist/types/orpc-client/docs-ledger/contract.d.ts.map +1 -1
  89. package/dist/types/orpc-client/docs-ledger/ledger-manifest.d.ts +7356 -0
  90. package/dist/types/orpc-client/docs-ledger/ledger-manifest.d.ts.map +1 -1
  91. package/package.json +2 -2
  92. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -2384,6 +2384,7 @@ __export(api_definition_exports, {
2384
2384
  WithDescriptionSchema: () => WithDescriptionSchema,
2385
2385
  WithNamespaceSchema: () => WithNamespaceSchema,
2386
2386
  buildEndpointUrl: () => buildEndpointUrl,
2387
+ buildGraphqlExamplesForOperation: () => buildGraphqlExamplesForOperation,
2387
2388
  buildRequestUrl: () => buildRequestUrl,
2388
2389
  buildSdkSnippetRequest: () => buildSdkSnippetRequest,
2389
2390
  cleanLanguage: () => cleanLanguage,
@@ -6260,6 +6261,25 @@ function getHarRequestBasicAuth(endpoint, auths) {
6260
6261
  }
6261
6262
 
6262
6263
  // src/api-definition/snippets/graphql-snippets.ts
6264
+ function buildGraphqlExamplesForOperation(operation, types) {
6265
+ if (operation.examples != null && operation.examples.length > 0) {
6266
+ return operation.examples.map((ex) => ({
6267
+ name: ex.name ?? void 0,
6268
+ description: ex.description ?? void 0,
6269
+ query: ex.query,
6270
+ variables: ex.variables ?? void 0,
6271
+ response: ex.response
6272
+ }));
6273
+ }
6274
+ const generated = generateGraphQlSnippet({ operation, types });
6275
+ return [
6276
+ {
6277
+ query: generated.query,
6278
+ variables: Object.keys(generated.variables).length > 0 ? generated.variables : void 0,
6279
+ response: generated.response
6280
+ }
6281
+ ];
6282
+ }
6263
6283
  var snippetCache = /* @__PURE__ */ new WeakMap();
6264
6284
  function generateGraphQlSnippet(context) {
6265
6285
  const cached = snippetCache.get(context.operation);
@@ -14390,8 +14410,10 @@ __export(utils_exports, {
14390
14410
  createBreadcrumb: () => createBreadcrumb,
14391
14411
  findNode: () => findNode,
14392
14412
  getApiReferenceId: () => getApiReferenceId,
14413
+ getEnclosingTabbedNode: () => getEnclosingTabbedNode,
14393
14414
  getNoIndexFromFrontmatter: () => getNoIndexFromFrontmatter,
14394
14415
  mutableUpdatePointsTo: () => mutableUpdatePointsTo,
14416
+ resolveCurrentTab: () => resolveCurrentTab,
14395
14417
  stripSyntheticSegments: () => stripSyntheticSegments,
14396
14418
  toApis: () => toApis,
14397
14419
  toPages: () => toPages,
@@ -14537,6 +14559,41 @@ function createBreadcrumb(nodes) {
14537
14559
 
14538
14560
  // src/navigation/utils/findNode.ts
14539
14561
  var import_string5 = require("es-toolkit/string");
14562
+
14563
+ // src/navigation/utils/resolveCurrentTab.ts
14564
+ var isHeaderTab = (child) => child.type === "tab" || child.type === "changelog";
14565
+ function getEnclosingTabbedNode(parents) {
14566
+ const versionChild = (parents.find(isVersionNode) ?? parents.find(isUnversionedNode))?.child;
14567
+ return parents.find(isTabbedNode) ?? (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
14568
+ }
14569
+ function resolveCurrentTab(node, parents) {
14570
+ const tabbedNode = getEnclosingTabbedNode(parents);
14571
+ if (tabbedNode == null) {
14572
+ return void 0;
14573
+ }
14574
+ const parentsAndNode = [...parents, node];
14575
+ const tabbedNodeIndex = parentsAndNode.indexOf(tabbedNode);
14576
+ const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
14577
+ let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
14578
+ if (currentTab == null) {
14579
+ for (const tab of tabbedNode.children) {
14580
+ if (tab.type === "tab" && tab.pointsTo === node.slug) {
14581
+ currentTab = tab;
14582
+ break;
14583
+ }
14584
+ if (tab.type === "changelog" && tab.slug === node.slug) {
14585
+ currentTab = tab;
14586
+ break;
14587
+ }
14588
+ }
14589
+ if (currentTab == null && node.type === "landingPage") {
14590
+ currentTab = tabbedNode.children.find(isHeaderTab);
14591
+ }
14592
+ }
14593
+ return currentTab;
14594
+ }
14595
+
14596
+ // src/navigation/utils/findNode.ts
14540
14597
  function findNode(root, slug) {
14541
14598
  const collector = NodeCollector.collect(root);
14542
14599
  const found = collector.getSlugMapWithParents().get(canonicalSlugKey(slug));
@@ -14570,7 +14627,6 @@ function findNode(root, slug) {
14570
14627
  const currentProduct = found.parents.find(isProductNode);
14571
14628
  const currentVersion = found.parents.find(isVersionNode);
14572
14629
  const unversionedNode = found.parents.find(isUnversionedNode);
14573
- const versionChild = (currentVersion ?? unversionedNode)?.child;
14574
14630
  const currentVariant = found.parents.find(isVariantNode);
14575
14631
  if (!sidebar && currentVersion != null) {
14576
14632
  if (isSidebarRootNode(currentVersion.child)) {
@@ -14578,13 +14634,9 @@ function findNode(root, slug) {
14578
14634
  }
14579
14635
  }
14580
14636
  const landingPage = (currentProductGroup ?? currentVersion ?? unversionedNode)?.landingPage;
14581
- const tabbedNode = found.parents.find(isTabbedNode) ?? // fallback to the version child because the current node may be a landing page
14582
- (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
14637
+ const tabbedNode = getEnclosingTabbedNode(found.parents);
14583
14638
  const apiReference = found.parents.find(isApiReferenceNode) ?? (found.node.type === "apiReference" ? found.node : void 0);
14584
14639
  if (navigation_exports.isPage(found.node)) {
14585
- const parentsAndNode = [...found.parents, found.node];
14586
- const tabbedNodeIndex = parentsAndNode.findIndex((node) => node === tabbedNode);
14587
- const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
14588
14640
  const products = collector.getProductNodes().map((node) => {
14589
14641
  if (node.default) {
14590
14642
  if (node.id === currentProduct?.id) {
@@ -14612,25 +14664,7 @@ function findNode(root, slug) {
14612
14664
  }
14613
14665
  return node;
14614
14666
  });
14615
- let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
14616
- if (currentTab == null && tabbedNode != null) {
14617
- for (const tab of tabbedNode.children) {
14618
- if (tab.type === "tab" && tab.pointsTo === found.node.slug) {
14619
- currentTab = tab;
14620
- break;
14621
- }
14622
- if (tab.type === "changelog" && tab.slug === found.node.slug) {
14623
- currentTab = tab;
14624
- break;
14625
- }
14626
- }
14627
- if (currentTab == null && found.node.type === "landingPage") {
14628
- const firstTab = tabbedNode.children.find((tab) => tab.type === "tab" || tab.type === "changelog");
14629
- if (firstTab != null && (firstTab.type === "tab" || firstTab.type === "changelog")) {
14630
- currentTab = firstTab;
14631
- }
14632
- }
14633
- }
14667
+ const currentTab = resolveCurrentTab(found.node, found.parents);
14634
14668
  const slugPrefix = currentVariant?.slug ?? (currentProduct?.type === "product" ? currentProduct.slug : void 0) ?? currentVersion?.slug ?? root.slug;
14635
14669
  const unversionedSlug = navigation_exports.Slug(
14636
14670
  found.node.slug.replace(new RegExp(`^${(0, import_string5.escapeRegExp)(slugPrefix)}/`), "")