@fern-api/fdr-sdk 1.2.78-edf564e509 → 1.2.80-050d6c9417

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 (82) hide show
  1. package/dist/js/client/FdrClient.js +13 -3
  2. package/dist/js/client/FdrClient.js.map +1 -1
  3. package/dist/js/client/FdrClient.mjs +13 -3
  4. package/dist/js/client/FdrClient.mjs.map +1 -1
  5. package/dist/js/client/types.js.map +1 -1
  6. package/dist/js/client/types.mjs.map +1 -1
  7. package/dist/js/converters/index.js +39 -25
  8. package/dist/js/converters/index.js.map +1 -1
  9. package/dist/js/converters/index.mjs +39 -25
  10. package/dist/js/converters/index.mjs.map +1 -1
  11. package/dist/js/index.js +52 -28
  12. package/dist/js/index.js.map +1 -1
  13. package/dist/js/index.mjs +52 -28
  14. package/dist/js/index.mjs.map +1 -1
  15. package/dist/js/navigation/index.js +39 -25
  16. package/dist/js/navigation/index.js.map +1 -1
  17. package/dist/js/navigation/index.mjs +39 -25
  18. package/dist/js/navigation/index.mjs.map +1 -1
  19. package/dist/js/navigation/ledger-root-builder.js +29 -5
  20. package/dist/js/navigation/ledger-root-builder.js.map +1 -1
  21. package/dist/js/navigation/ledger-root-builder.mjs +29 -5
  22. package/dist/js/navigation/ledger-root-builder.mjs.map +1 -1
  23. package/dist/js/navigation/types/latest.js.map +1 -1
  24. package/dist/js/navigation/types/latest.mjs.map +1 -1
  25. package/dist/js/navigation/types/v1.js.map +1 -1
  26. package/dist/js/navigation/types/v1.mjs.map +1 -1
  27. package/dist/js/orpc-client.js +13 -3
  28. package/dist/js/orpc-client.js.map +1 -1
  29. package/dist/js/orpc-client.mjs +13 -3
  30. package/dist/js/orpc-client.mjs.map +1 -1
  31. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts +2 -0
  32. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts.map +1 -0
  33. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.js +185 -0
  34. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.js.map +1 -0
  35. package/dist/navigation/ledger-root-builder.d.ts.map +1 -1
  36. package/dist/navigation/ledger-root-builder.js +41 -5
  37. package/dist/navigation/ledger-root-builder.js.map +1 -1
  38. package/dist/navigation/types/latest.d.ts +1 -0
  39. package/dist/navigation/types/latest.d.ts.map +1 -1
  40. package/dist/navigation/types/v1.d.ts +1 -0
  41. package/dist/navigation/types/v1.d.ts.map +1 -1
  42. package/dist/navigation/utils/__test__/resolveCurrentTab.test.d.ts +2 -0
  43. package/dist/navigation/utils/__test__/resolveCurrentTab.test.d.ts.map +1 -0
  44. package/dist/navigation/utils/__test__/resolveCurrentTab.test.js +70 -0
  45. package/dist/navigation/utils/__test__/resolveCurrentTab.test.js.map +1 -0
  46. package/dist/navigation/utils/findNode.d.ts.map +1 -1
  47. package/dist/navigation/utils/findNode.js +3 -30
  48. package/dist/navigation/utils/findNode.js.map +1 -1
  49. package/dist/navigation/utils/index.d.ts +1 -0
  50. package/dist/navigation/utils/index.d.ts.map +1 -1
  51. package/dist/navigation/utils/index.js +1 -0
  52. package/dist/navigation/utils/index.js.map +1 -1
  53. package/dist/navigation/utils/resolveCurrentTab.d.ts +26 -0
  54. package/dist/navigation/utils/resolveCurrentTab.d.ts.map +1 -0
  55. package/dist/navigation/utils/resolveCurrentTab.js +60 -0
  56. package/dist/navigation/utils/resolveCurrentTab.js.map +1 -0
  57. package/dist/orpc-client/docs-ledger/contract.d.ts +5126 -0
  58. package/dist/orpc-client/docs-ledger/contract.d.ts.map +1 -1
  59. package/dist/orpc-client/docs-ledger/contract.js +17 -3
  60. package/dist/orpc-client/docs-ledger/contract.js.map +1 -1
  61. package/dist/orpc-client/docs-ledger/ledger-manifest.d.ts +7356 -0
  62. package/dist/orpc-client/docs-ledger/ledger-manifest.d.ts.map +1 -1
  63. package/dist/tsconfig.tsbuildinfo +1 -1
  64. package/dist/types/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts +2 -0
  65. package/dist/types/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts.map +1 -0
  66. package/dist/types/navigation/ledger-root-builder.d.ts.map +1 -1
  67. package/dist/types/navigation/types/latest.d.ts +1 -0
  68. package/dist/types/navigation/types/latest.d.ts.map +1 -1
  69. package/dist/types/navigation/types/v1.d.ts +1 -0
  70. package/dist/types/navigation/types/v1.d.ts.map +1 -1
  71. package/dist/types/navigation/utils/__test__/resolveCurrentTab.test.d.ts +2 -0
  72. package/dist/types/navigation/utils/__test__/resolveCurrentTab.test.d.ts.map +1 -0
  73. package/dist/types/navigation/utils/findNode.d.ts.map +1 -1
  74. package/dist/types/navigation/utils/index.d.ts +1 -0
  75. package/dist/types/navigation/utils/index.d.ts.map +1 -1
  76. package/dist/types/navigation/utils/resolveCurrentTab.d.ts +26 -0
  77. package/dist/types/navigation/utils/resolveCurrentTab.d.ts.map +1 -0
  78. package/dist/types/orpc-client/docs-ledger/contract.d.ts +5126 -0
  79. package/dist/types/orpc-client/docs-ledger/contract.d.ts.map +1 -1
  80. package/dist/types/orpc-client/docs-ledger/ledger-manifest.d.ts +7356 -0
  81. package/dist/types/orpc-client/docs-ledger/ledger-manifest.d.ts.map +1 -1
  82. package/package.json +1 -1
@@ -15665,8 +15665,10 @@ __export(utils_exports, {
15665
15665
  createBreadcrumb: () => createBreadcrumb,
15666
15666
  findNode: () => findNode,
15667
15667
  getApiReferenceId: () => getApiReferenceId,
15668
+ getEnclosingTabbedNode: () => getEnclosingTabbedNode,
15668
15669
  getNoIndexFromFrontmatter: () => getNoIndexFromFrontmatter,
15669
15670
  mutableUpdatePointsTo: () => mutableUpdatePointsTo,
15671
+ resolveCurrentTab: () => resolveCurrentTab,
15670
15672
  stripSyntheticSegments: () => stripSyntheticSegments,
15671
15673
  toApis: () => toApis,
15672
15674
  toPages: () => toPages,
@@ -15812,6 +15814,41 @@ function createBreadcrumb(nodes) {
15812
15814
 
15813
15815
  // src/navigation/utils/findNode.ts
15814
15816
  import { escapeRegExp as escapeRegExp3 } from "es-toolkit/string";
15817
+
15818
+ // src/navigation/utils/resolveCurrentTab.ts
15819
+ var isHeaderTab = (child) => child.type === "tab" || child.type === "changelog";
15820
+ function getEnclosingTabbedNode(parents) {
15821
+ const versionChild = (parents.find(isVersionNode) ?? parents.find(isUnversionedNode))?.child;
15822
+ return parents.find(isTabbedNode) ?? (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
15823
+ }
15824
+ function resolveCurrentTab(node, parents) {
15825
+ const tabbedNode = getEnclosingTabbedNode(parents);
15826
+ if (tabbedNode == null) {
15827
+ return void 0;
15828
+ }
15829
+ const parentsAndNode = [...parents, node];
15830
+ const tabbedNodeIndex = parentsAndNode.indexOf(tabbedNode);
15831
+ const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
15832
+ let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
15833
+ if (currentTab == null) {
15834
+ for (const tab of tabbedNode.children) {
15835
+ if (tab.type === "tab" && tab.pointsTo === node.slug) {
15836
+ currentTab = tab;
15837
+ break;
15838
+ }
15839
+ if (tab.type === "changelog" && tab.slug === node.slug) {
15840
+ currentTab = tab;
15841
+ break;
15842
+ }
15843
+ }
15844
+ if (currentTab == null && node.type === "landingPage") {
15845
+ currentTab = tabbedNode.children.find(isHeaderTab);
15846
+ }
15847
+ }
15848
+ return currentTab;
15849
+ }
15850
+
15851
+ // src/navigation/utils/findNode.ts
15815
15852
  function findNode(root, slug) {
15816
15853
  const collector = NodeCollector.collect(root);
15817
15854
  const found = collector.getSlugMapWithParents().get(canonicalSlugKey(slug));
@@ -15845,7 +15882,6 @@ function findNode(root, slug) {
15845
15882
  const currentProduct = found.parents.find(isProductNode);
15846
15883
  const currentVersion = found.parents.find(isVersionNode);
15847
15884
  const unversionedNode = found.parents.find(isUnversionedNode);
15848
- const versionChild = (currentVersion ?? unversionedNode)?.child;
15849
15885
  const currentVariant = found.parents.find(isVariantNode);
15850
15886
  if (!sidebar && currentVersion != null) {
15851
15887
  if (isSidebarRootNode(currentVersion.child)) {
@@ -15853,13 +15889,9 @@ function findNode(root, slug) {
15853
15889
  }
15854
15890
  }
15855
15891
  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);
15892
+ const tabbedNode = getEnclosingTabbedNode(found.parents);
15858
15893
  const apiReference = found.parents.find(isApiReferenceNode) ?? (found.node.type === "apiReference" ? found.node : void 0);
15859
15894
  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
15895
  const products = collector.getProductNodes().map((node) => {
15864
15896
  if (node.default) {
15865
15897
  if (node.id === currentProduct?.id) {
@@ -15887,25 +15919,7 @@ function findNode(root, slug) {
15887
15919
  }
15888
15920
  return node;
15889
15921
  });
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
- }
15922
+ const currentTab = resolveCurrentTab(found.node, found.parents);
15909
15923
  const slugPrefix = currentVariant?.slug ?? (currentProduct?.type === "product" ? currentProduct.slug : void 0) ?? currentVersion?.slug ?? root.slug;
15910
15924
  const unversionedSlug = navigation_exports.Slug(
15911
15925
  found.node.slug.replace(new RegExp(`^${escapeRegExp3(slugPrefix)}/`), "")