@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
@@ -14366,8 +14366,10 @@ __export(utils_exports, {
14366
14366
  createBreadcrumb: () => createBreadcrumb,
14367
14367
  findNode: () => findNode,
14368
14368
  getApiReferenceId: () => getApiReferenceId,
14369
+ getEnclosingTabbedNode: () => getEnclosingTabbedNode,
14369
14370
  getNoIndexFromFrontmatter: () => getNoIndexFromFrontmatter,
14370
14371
  mutableUpdatePointsTo: () => mutableUpdatePointsTo,
14372
+ resolveCurrentTab: () => resolveCurrentTab,
14371
14373
  stripSyntheticSegments: () => stripSyntheticSegments,
14372
14374
  toApis: () => toApis,
14373
14375
  toPages: () => toPages,
@@ -14513,6 +14515,41 @@ function createBreadcrumb(nodes) {
14513
14515
 
14514
14516
  // src/navigation/utils/findNode.ts
14515
14517
  import { escapeRegExp as escapeRegExp3 } from "es-toolkit/string";
14518
+
14519
+ // src/navigation/utils/resolveCurrentTab.ts
14520
+ var isHeaderTab = (child) => child.type === "tab" || child.type === "changelog";
14521
+ function getEnclosingTabbedNode(parents) {
14522
+ const versionChild = (parents.find(isVersionNode) ?? parents.find(isUnversionedNode))?.child;
14523
+ return parents.find(isTabbedNode) ?? (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
14524
+ }
14525
+ function resolveCurrentTab(node, parents) {
14526
+ const tabbedNode = getEnclosingTabbedNode(parents);
14527
+ if (tabbedNode == null) {
14528
+ return void 0;
14529
+ }
14530
+ const parentsAndNode = [...parents, node];
14531
+ const tabbedNodeIndex = parentsAndNode.indexOf(tabbedNode);
14532
+ const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
14533
+ let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
14534
+ if (currentTab == null) {
14535
+ for (const tab of tabbedNode.children) {
14536
+ if (tab.type === "tab" && tab.pointsTo === node.slug) {
14537
+ currentTab = tab;
14538
+ break;
14539
+ }
14540
+ if (tab.type === "changelog" && tab.slug === node.slug) {
14541
+ currentTab = tab;
14542
+ break;
14543
+ }
14544
+ }
14545
+ if (currentTab == null && node.type === "landingPage") {
14546
+ currentTab = tabbedNode.children.find(isHeaderTab);
14547
+ }
14548
+ }
14549
+ return currentTab;
14550
+ }
14551
+
14552
+ // src/navigation/utils/findNode.ts
14516
14553
  function findNode(root, slug) {
14517
14554
  const collector = NodeCollector.collect(root);
14518
14555
  const found = collector.getSlugMapWithParents().get(canonicalSlugKey(slug));
@@ -14546,7 +14583,6 @@ function findNode(root, slug) {
14546
14583
  const currentProduct = found.parents.find(isProductNode);
14547
14584
  const currentVersion = found.parents.find(isVersionNode);
14548
14585
  const unversionedNode = found.parents.find(isUnversionedNode);
14549
- const versionChild = (currentVersion ?? unversionedNode)?.child;
14550
14586
  const currentVariant = found.parents.find(isVariantNode);
14551
14587
  if (!sidebar && currentVersion != null) {
14552
14588
  if (isSidebarRootNode(currentVersion.child)) {
@@ -14554,13 +14590,9 @@ function findNode(root, slug) {
14554
14590
  }
14555
14591
  }
14556
14592
  const landingPage = (currentProductGroup ?? currentVersion ?? unversionedNode)?.landingPage;
14557
- const tabbedNode = found.parents.find(isTabbedNode) ?? // fallback to the version child because the current node may be a landing page
14558
- (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
14593
+ const tabbedNode = getEnclosingTabbedNode(found.parents);
14559
14594
  const apiReference = found.parents.find(isApiReferenceNode) ?? (found.node.type === "apiReference" ? found.node : void 0);
14560
14595
  if (navigation_exports.isPage(found.node)) {
14561
- const parentsAndNode = [...found.parents, found.node];
14562
- const tabbedNodeIndex = parentsAndNode.findIndex((node) => node === tabbedNode);
14563
- const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
14564
14596
  const products = collector.getProductNodes().map((node) => {
14565
14597
  if (node.default) {
14566
14598
  if (node.id === currentProduct?.id) {
@@ -14588,25 +14620,7 @@ function findNode(root, slug) {
14588
14620
  }
14589
14621
  return node;
14590
14622
  });
14591
- let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
14592
- if (currentTab == null && tabbedNode != null) {
14593
- for (const tab of tabbedNode.children) {
14594
- if (tab.type === "tab" && tab.pointsTo === found.node.slug) {
14595
- currentTab = tab;
14596
- break;
14597
- }
14598
- if (tab.type === "changelog" && tab.slug === found.node.slug) {
14599
- currentTab = tab;
14600
- break;
14601
- }
14602
- }
14603
- if (currentTab == null && found.node.type === "landingPage") {
14604
- const firstTab = tabbedNode.children.find((tab) => tab.type === "tab" || tab.type === "changelog");
14605
- if (firstTab != null && (firstTab.type === "tab" || firstTab.type === "changelog")) {
14606
- currentTab = firstTab;
14607
- }
14608
- }
14609
- }
14623
+ const currentTab = resolveCurrentTab(found.node, found.parents);
14610
14624
  const slugPrefix = currentVariant?.slug ?? (currentProduct?.type === "product" ? currentProduct.slug : void 0) ?? currentVersion?.slug ?? root.slug;
14611
14625
  const unversionedSlug = navigation_exports.Slug(
14612
14626
  found.node.slug.replace(new RegExp(`^${escapeRegExp3(slugPrefix)}/`), "")