@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
@@ -7425,6 +7425,7 @@ __export(api_definition_exports, {
7425
7425
  WithDescriptionSchema: () => WithDescriptionSchema,
7426
7426
  WithNamespaceSchema: () => WithNamespaceSchema,
7427
7427
  buildEndpointUrl: () => buildEndpointUrl,
7428
+ buildGraphqlExamplesForOperation: () => buildGraphqlExamplesForOperation,
7428
7429
  buildRequestUrl: () => buildRequestUrl,
7429
7430
  buildSdkSnippetRequest: () => buildSdkSnippetRequest,
7430
7431
  cleanLanguage: () => cleanLanguage,
@@ -10581,6 +10582,25 @@ function getHarRequestBasicAuth(endpoint, auths) {
10581
10582
  }
10582
10583
 
10583
10584
  // src/api-definition/snippets/graphql-snippets.ts
10585
+ function buildGraphqlExamplesForOperation(operation, types) {
10586
+ if (operation.examples != null && operation.examples.length > 0) {
10587
+ return operation.examples.map((ex) => ({
10588
+ name: ex.name ?? void 0,
10589
+ description: ex.description ?? void 0,
10590
+ query: ex.query,
10591
+ variables: ex.variables ?? void 0,
10592
+ response: ex.response
10593
+ }));
10594
+ }
10595
+ const generated = generateGraphQlSnippet({ operation, types });
10596
+ return [
10597
+ {
10598
+ query: generated.query,
10599
+ variables: Object.keys(generated.variables).length > 0 ? generated.variables : void 0,
10600
+ response: generated.response
10601
+ }
10602
+ ];
10603
+ }
10584
10604
  var snippetCache = /* @__PURE__ */ new WeakMap();
10585
10605
  function generateGraphQlSnippet(context) {
10586
10606
  const cached = snippetCache.get(context.operation);
@@ -15665,8 +15685,10 @@ __export(utils_exports, {
15665
15685
  createBreadcrumb: () => createBreadcrumb,
15666
15686
  findNode: () => findNode,
15667
15687
  getApiReferenceId: () => getApiReferenceId,
15688
+ getEnclosingTabbedNode: () => getEnclosingTabbedNode,
15668
15689
  getNoIndexFromFrontmatter: () => getNoIndexFromFrontmatter,
15669
15690
  mutableUpdatePointsTo: () => mutableUpdatePointsTo,
15691
+ resolveCurrentTab: () => resolveCurrentTab,
15670
15692
  stripSyntheticSegments: () => stripSyntheticSegments,
15671
15693
  toApis: () => toApis,
15672
15694
  toPages: () => toPages,
@@ -15812,6 +15834,41 @@ function createBreadcrumb(nodes) {
15812
15834
 
15813
15835
  // src/navigation/utils/findNode.ts
15814
15836
  import { escapeRegExp as escapeRegExp3 } from "es-toolkit/string";
15837
+
15838
+ // src/navigation/utils/resolveCurrentTab.ts
15839
+ var isHeaderTab = (child) => child.type === "tab" || child.type === "changelog";
15840
+ function getEnclosingTabbedNode(parents) {
15841
+ const versionChild = (parents.find(isVersionNode) ?? parents.find(isUnversionedNode))?.child;
15842
+ return parents.find(isTabbedNode) ?? (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
15843
+ }
15844
+ function resolveCurrentTab(node, parents) {
15845
+ const tabbedNode = getEnclosingTabbedNode(parents);
15846
+ if (tabbedNode == null) {
15847
+ return void 0;
15848
+ }
15849
+ const parentsAndNode = [...parents, node];
15850
+ const tabbedNodeIndex = parentsAndNode.indexOf(tabbedNode);
15851
+ const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
15852
+ let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
15853
+ if (currentTab == null) {
15854
+ for (const tab of tabbedNode.children) {
15855
+ if (tab.type === "tab" && tab.pointsTo === node.slug) {
15856
+ currentTab = tab;
15857
+ break;
15858
+ }
15859
+ if (tab.type === "changelog" && tab.slug === node.slug) {
15860
+ currentTab = tab;
15861
+ break;
15862
+ }
15863
+ }
15864
+ if (currentTab == null && node.type === "landingPage") {
15865
+ currentTab = tabbedNode.children.find(isHeaderTab);
15866
+ }
15867
+ }
15868
+ return currentTab;
15869
+ }
15870
+
15871
+ // src/navigation/utils/findNode.ts
15815
15872
  function findNode(root, slug) {
15816
15873
  const collector = NodeCollector.collect(root);
15817
15874
  const found = collector.getSlugMapWithParents().get(canonicalSlugKey(slug));
@@ -15845,7 +15902,6 @@ function findNode(root, slug) {
15845
15902
  const currentProduct = found.parents.find(isProductNode);
15846
15903
  const currentVersion = found.parents.find(isVersionNode);
15847
15904
  const unversionedNode = found.parents.find(isUnversionedNode);
15848
- const versionChild = (currentVersion ?? unversionedNode)?.child;
15849
15905
  const currentVariant = found.parents.find(isVariantNode);
15850
15906
  if (!sidebar && currentVersion != null) {
15851
15907
  if (isSidebarRootNode(currentVersion.child)) {
@@ -15853,13 +15909,9 @@ function findNode(root, slug) {
15853
15909
  }
15854
15910
  }
15855
15911
  const landingPage = (currentProductGroup ?? currentVersion ?? unversionedNode)?.landingPage;
15856
- const tabbedNode = found.parents.find(isTabbedNode) ?? // fallback to the version child because the current node may be a landing page
15857
- (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
15912
+ const tabbedNode = getEnclosingTabbedNode(found.parents);
15858
15913
  const apiReference = found.parents.find(isApiReferenceNode) ?? (found.node.type === "apiReference" ? found.node : void 0);
15859
15914
  if (navigation_exports.isPage(found.node)) {
15860
- const parentsAndNode = [...found.parents, found.node];
15861
- const tabbedNodeIndex = parentsAndNode.findIndex((node) => node === tabbedNode);
15862
- const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
15863
15915
  const products = collector.getProductNodes().map((node) => {
15864
15916
  if (node.default) {
15865
15917
  if (node.id === currentProduct?.id) {
@@ -15887,25 +15939,7 @@ function findNode(root, slug) {
15887
15939
  }
15888
15940
  return node;
15889
15941
  });
15890
- let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
15891
- if (currentTab == null && tabbedNode != null) {
15892
- for (const tab of tabbedNode.children) {
15893
- if (tab.type === "tab" && tab.pointsTo === found.node.slug) {
15894
- currentTab = tab;
15895
- break;
15896
- }
15897
- if (tab.type === "changelog" && tab.slug === found.node.slug) {
15898
- currentTab = tab;
15899
- break;
15900
- }
15901
- }
15902
- if (currentTab == null && found.node.type === "landingPage") {
15903
- const firstTab = tabbedNode.children.find((tab) => tab.type === "tab" || tab.type === "changelog");
15904
- if (firstTab != null && (firstTab.type === "tab" || firstTab.type === "changelog")) {
15905
- currentTab = firstTab;
15906
- }
15907
- }
15908
- }
15942
+ const currentTab = resolveCurrentTab(found.node, found.parents);
15909
15943
  const slugPrefix = currentVariant?.slug ?? (currentProduct?.type === "product" ? currentProduct.slug : void 0) ?? currentVersion?.slug ?? root.slug;
15910
15944
  const unversionedSlug = navigation_exports.Slug(
15911
15945
  found.node.slug.replace(new RegExp(`^${escapeRegExp3(slugPrefix)}/`), "")