@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
@@ -7464,6 +7464,7 @@ __export(api_definition_exports, {
7464
7464
  WithDescriptionSchema: () => WithDescriptionSchema,
7465
7465
  WithNamespaceSchema: () => WithNamespaceSchema,
7466
7466
  buildEndpointUrl: () => buildEndpointUrl,
7467
+ buildGraphqlExamplesForOperation: () => buildGraphqlExamplesForOperation,
7467
7468
  buildRequestUrl: () => buildRequestUrl,
7468
7469
  buildSdkSnippetRequest: () => buildSdkSnippetRequest,
7469
7470
  cleanLanguage: () => cleanLanguage,
@@ -10620,6 +10621,25 @@ function getHarRequestBasicAuth(endpoint, auths) {
10620
10621
  }
10621
10622
 
10622
10623
  // src/api-definition/snippets/graphql-snippets.ts
10624
+ function buildGraphqlExamplesForOperation(operation, types) {
10625
+ if (operation.examples != null && operation.examples.length > 0) {
10626
+ return operation.examples.map((ex) => ({
10627
+ name: ex.name ?? void 0,
10628
+ description: ex.description ?? void 0,
10629
+ query: ex.query,
10630
+ variables: ex.variables ?? void 0,
10631
+ response: ex.response
10632
+ }));
10633
+ }
10634
+ const generated = generateGraphQlSnippet({ operation, types });
10635
+ return [
10636
+ {
10637
+ query: generated.query,
10638
+ variables: Object.keys(generated.variables).length > 0 ? generated.variables : void 0,
10639
+ response: generated.response
10640
+ }
10641
+ ];
10642
+ }
10623
10643
  var snippetCache = /* @__PURE__ */ new WeakMap();
10624
10644
  function generateGraphQlSnippet(context) {
10625
10645
  const cached = snippetCache.get(context.operation);
@@ -15704,8 +15724,10 @@ __export(utils_exports, {
15704
15724
  createBreadcrumb: () => createBreadcrumb,
15705
15725
  findNode: () => findNode,
15706
15726
  getApiReferenceId: () => getApiReferenceId,
15727
+ getEnclosingTabbedNode: () => getEnclosingTabbedNode,
15707
15728
  getNoIndexFromFrontmatter: () => getNoIndexFromFrontmatter,
15708
15729
  mutableUpdatePointsTo: () => mutableUpdatePointsTo,
15730
+ resolveCurrentTab: () => resolveCurrentTab,
15709
15731
  stripSyntheticSegments: () => stripSyntheticSegments,
15710
15732
  toApis: () => toApis,
15711
15733
  toPages: () => toPages,
@@ -15851,6 +15873,41 @@ function createBreadcrumb(nodes) {
15851
15873
 
15852
15874
  // src/navigation/utils/findNode.ts
15853
15875
  var import_string6 = require("es-toolkit/string");
15876
+
15877
+ // src/navigation/utils/resolveCurrentTab.ts
15878
+ var isHeaderTab = (child) => child.type === "tab" || child.type === "changelog";
15879
+ function getEnclosingTabbedNode(parents) {
15880
+ const versionChild = (parents.find(isVersionNode) ?? parents.find(isUnversionedNode))?.child;
15881
+ return parents.find(isTabbedNode) ?? (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
15882
+ }
15883
+ function resolveCurrentTab(node, parents) {
15884
+ const tabbedNode = getEnclosingTabbedNode(parents);
15885
+ if (tabbedNode == null) {
15886
+ return void 0;
15887
+ }
15888
+ const parentsAndNode = [...parents, node];
15889
+ const tabbedNodeIndex = parentsAndNode.indexOf(tabbedNode);
15890
+ const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
15891
+ let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
15892
+ if (currentTab == null) {
15893
+ for (const tab of tabbedNode.children) {
15894
+ if (tab.type === "tab" && tab.pointsTo === node.slug) {
15895
+ currentTab = tab;
15896
+ break;
15897
+ }
15898
+ if (tab.type === "changelog" && tab.slug === node.slug) {
15899
+ currentTab = tab;
15900
+ break;
15901
+ }
15902
+ }
15903
+ if (currentTab == null && node.type === "landingPage") {
15904
+ currentTab = tabbedNode.children.find(isHeaderTab);
15905
+ }
15906
+ }
15907
+ return currentTab;
15908
+ }
15909
+
15910
+ // src/navigation/utils/findNode.ts
15854
15911
  function findNode(root, slug) {
15855
15912
  const collector = NodeCollector.collect(root);
15856
15913
  const found = collector.getSlugMapWithParents().get(canonicalSlugKey(slug));
@@ -15884,7 +15941,6 @@ function findNode(root, slug) {
15884
15941
  const currentProduct = found.parents.find(isProductNode);
15885
15942
  const currentVersion = found.parents.find(isVersionNode);
15886
15943
  const unversionedNode = found.parents.find(isUnversionedNode);
15887
- const versionChild = (currentVersion ?? unversionedNode)?.child;
15888
15944
  const currentVariant = found.parents.find(isVariantNode);
15889
15945
  if (!sidebar && currentVersion != null) {
15890
15946
  if (isSidebarRootNode(currentVersion.child)) {
@@ -15892,13 +15948,9 @@ function findNode(root, slug) {
15892
15948
  }
15893
15949
  }
15894
15950
  const landingPage = (currentProductGroup ?? currentVersion ?? unversionedNode)?.landingPage;
15895
- const tabbedNode = found.parents.find(isTabbedNode) ?? // fallback to the version child because the current node may be a landing page
15896
- (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
15951
+ const tabbedNode = getEnclosingTabbedNode(found.parents);
15897
15952
  const apiReference = found.parents.find(isApiReferenceNode) ?? (found.node.type === "apiReference" ? found.node : void 0);
15898
15953
  if (navigation_exports.isPage(found.node)) {
15899
- const parentsAndNode = [...found.parents, found.node];
15900
- const tabbedNodeIndex = parentsAndNode.findIndex((node) => node === tabbedNode);
15901
- const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
15902
15954
  const products = collector.getProductNodes().map((node) => {
15903
15955
  if (node.default) {
15904
15956
  if (node.id === currentProduct?.id) {
@@ -15926,25 +15978,7 @@ function findNode(root, slug) {
15926
15978
  }
15927
15979
  return node;
15928
15980
  });
15929
- let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
15930
- if (currentTab == null && tabbedNode != null) {
15931
- for (const tab of tabbedNode.children) {
15932
- if (tab.type === "tab" && tab.pointsTo === found.node.slug) {
15933
- currentTab = tab;
15934
- break;
15935
- }
15936
- if (tab.type === "changelog" && tab.slug === found.node.slug) {
15937
- currentTab = tab;
15938
- break;
15939
- }
15940
- }
15941
- if (currentTab == null && found.node.type === "landingPage") {
15942
- const firstTab = tabbedNode.children.find((tab) => tab.type === "tab" || tab.type === "changelog");
15943
- if (firstTab != null && (firstTab.type === "tab" || firstTab.type === "changelog")) {
15944
- currentTab = firstTab;
15945
- }
15946
- }
15947
- }
15981
+ const currentTab = resolveCurrentTab(found.node, found.parents);
15948
15982
  const slugPrefix = currentVariant?.slug ?? (currentProduct?.type === "product" ? currentProduct.slug : void 0) ?? currentVersion?.slug ?? root.slug;
15949
15983
  const unversionedSlug = navigation_exports.Slug(
15950
15984
  found.node.slug.replace(new RegExp(`^${(0, import_string6.escapeRegExp)(slugPrefix)}/`), "")