@fern-api/fdr-sdk 1.2.78-edf564e509 → 1.2.80-06ea5f3a9e

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 (68) hide show
  1. package/dist/js/client/FdrClient.js +12 -3
  2. package/dist/js/client/FdrClient.js.map +1 -1
  3. package/dist/js/client/FdrClient.mjs +12 -3
  4. package/dist/js/client/FdrClient.mjs.map +1 -1
  5. package/dist/js/converters/index.js +39 -25
  6. package/dist/js/converters/index.js.map +1 -1
  7. package/dist/js/converters/index.mjs +39 -25
  8. package/dist/js/converters/index.mjs.map +1 -1
  9. package/dist/js/index.js +51 -28
  10. package/dist/js/index.js.map +1 -1
  11. package/dist/js/index.mjs +51 -28
  12. package/dist/js/index.mjs.map +1 -1
  13. package/dist/js/navigation/index.js +39 -25
  14. package/dist/js/navigation/index.js.map +1 -1
  15. package/dist/js/navigation/index.mjs +39 -25
  16. package/dist/js/navigation/index.mjs.map +1 -1
  17. package/dist/js/navigation/ledger-root-builder.js +28 -5
  18. package/dist/js/navigation/ledger-root-builder.js.map +1 -1
  19. package/dist/js/navigation/ledger-root-builder.mjs +28 -5
  20. package/dist/js/navigation/ledger-root-builder.mjs.map +1 -1
  21. package/dist/js/orpc-client.js +12 -3
  22. package/dist/js/orpc-client.js.map +1 -1
  23. package/dist/js/orpc-client.mjs +12 -3
  24. package/dist/js/orpc-client.mjs.map +1 -1
  25. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts +2 -0
  26. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts.map +1 -0
  27. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.js +154 -0
  28. package/dist/navigation/__test__/ledger-root-builder.playgroundPreservation.test.js.map +1 -0
  29. package/dist/navigation/ledger-root-builder.d.ts.map +1 -1
  30. package/dist/navigation/ledger-root-builder.js +40 -5
  31. package/dist/navigation/ledger-root-builder.js.map +1 -1
  32. package/dist/navigation/utils/__test__/resolveCurrentTab.test.d.ts +2 -0
  33. package/dist/navigation/utils/__test__/resolveCurrentTab.test.d.ts.map +1 -0
  34. package/dist/navigation/utils/__test__/resolveCurrentTab.test.js +70 -0
  35. package/dist/navigation/utils/__test__/resolveCurrentTab.test.js.map +1 -0
  36. package/dist/navigation/utils/findNode.d.ts.map +1 -1
  37. package/dist/navigation/utils/findNode.js +3 -30
  38. package/dist/navigation/utils/findNode.js.map +1 -1
  39. package/dist/navigation/utils/index.d.ts +1 -0
  40. package/dist/navigation/utils/index.d.ts.map +1 -1
  41. package/dist/navigation/utils/index.js +1 -0
  42. package/dist/navigation/utils/index.js.map +1 -1
  43. package/dist/navigation/utils/resolveCurrentTab.d.ts +26 -0
  44. package/dist/navigation/utils/resolveCurrentTab.d.ts.map +1 -0
  45. package/dist/navigation/utils/resolveCurrentTab.js +60 -0
  46. package/dist/navigation/utils/resolveCurrentTab.js.map +1 -0
  47. package/dist/orpc-client/docs-ledger/contract.d.ts +4591 -0
  48. package/dist/orpc-client/docs-ledger/contract.d.ts.map +1 -1
  49. package/dist/orpc-client/docs-ledger/contract.js +16 -3
  50. package/dist/orpc-client/docs-ledger/contract.js.map +1 -1
  51. package/dist/orpc-client/docs-ledger/ledger-manifest.d.ts +6584 -0
  52. package/dist/orpc-client/docs-ledger/ledger-manifest.d.ts.map +1 -1
  53. package/dist/tsconfig.tsbuildinfo +1 -1
  54. package/dist/types/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts +2 -0
  55. package/dist/types/navigation/__test__/ledger-root-builder.playgroundPreservation.test.d.ts.map +1 -0
  56. package/dist/types/navigation/ledger-root-builder.d.ts.map +1 -1
  57. package/dist/types/navigation/utils/__test__/resolveCurrentTab.test.d.ts +2 -0
  58. package/dist/types/navigation/utils/__test__/resolveCurrentTab.test.d.ts.map +1 -0
  59. package/dist/types/navigation/utils/findNode.d.ts.map +1 -1
  60. package/dist/types/navigation/utils/index.d.ts +1 -0
  61. package/dist/types/navigation/utils/index.d.ts.map +1 -1
  62. package/dist/types/navigation/utils/resolveCurrentTab.d.ts +26 -0
  63. package/dist/types/navigation/utils/resolveCurrentTab.d.ts.map +1 -0
  64. package/dist/types/orpc-client/docs-ledger/contract.d.ts +4591 -0
  65. package/dist/types/orpc-client/docs-ledger/contract.d.ts.map +1 -1
  66. package/dist/types/orpc-client/docs-ledger/ledger-manifest.d.ts +6584 -0
  67. package/dist/types/orpc-client/docs-ledger/ledger-manifest.d.ts.map +1 -1
  68. package/package.json +1 -1
package/dist/js/index.js CHANGED
@@ -9423,6 +9423,12 @@ var FeatureFlagMetadataSchema = z21.array(
9423
9423
  );
9424
9424
  var LinkTargetSchema2 = z21.enum(["_blank", "_self", "_parent", "_top"]);
9425
9425
  var CollapsedSchema = z21.union([z21.boolean(), z21.literal("open-by-default")]);
9426
+ var PlaygroundSettingsSchema = z21.object({
9427
+ hidden: z21.boolean().optional(),
9428
+ environments: z21.array(z21.string()).optional(),
9429
+ button: z21.object({ href: z21.string().optional() }).optional(),
9430
+ "limit-websocket-messages-per-connection": z21.number().optional()
9431
+ });
9426
9432
  var LedgerAvailabilitySchema = z21.union([
9427
9433
  AvailabilitySchema,
9428
9434
  z21.enum([
@@ -9464,7 +9470,8 @@ var NodeMetadataFields = {
9464
9470
  var ApiNodeMetadataFields = {
9465
9471
  ...NodeMetadataFields,
9466
9472
  apiDefinitionId: z21.string(),
9467
- availability: LedgerAvailabilitySchema.optional()
9473
+ availability: LedgerAvailabilitySchema.optional(),
9474
+ playground: PlaygroundSettingsSchema.optional()
9468
9475
  };
9469
9476
  var LedgerSegmentDetailMetadataObjectSchema = LedgerMetadataBaseSchema.extend({
9470
9477
  slug: z21.string().optional(),
@@ -9514,7 +9521,8 @@ var LedgerSegmentMetadataObjectSchema = z21.discriminatedUnion("type", [
9514
9521
  hideTitle: z21.boolean().optional(),
9515
9522
  viewers: MetadataStringArraySchema.optional(),
9516
9523
  orphaned: z21.boolean().optional(),
9517
- featureFlags: FeatureFlagMetadataSchema.optional()
9524
+ featureFlags: FeatureFlagMetadataSchema.optional(),
9525
+ playground: PlaygroundSettingsSchema.optional()
9518
9526
  }),
9519
9527
  LedgerMetadataBaseSchema.extend({
9520
9528
  type: z21.literal("apiPackage"),
@@ -9528,7 +9536,8 @@ var LedgerSegmentMetadataObjectSchema = z21.discriminatedUnion("type", [
9528
9536
  pointsTo: z21.string().optional(),
9529
9537
  viewers: MetadataStringArraySchema.optional(),
9530
9538
  orphaned: z21.boolean().optional(),
9531
- featureFlags: FeatureFlagMetadataSchema.optional()
9539
+ featureFlags: FeatureFlagMetadataSchema.optional(),
9540
+ playground: PlaygroundSettingsSchema.optional()
9532
9541
  }),
9533
9542
  LedgerMetadataBaseSchema.extend({
9534
9543
  type: z21.literal("changelog"),
@@ -19698,8 +19707,10 @@ __export(utils_exports, {
19698
19707
  createBreadcrumb: () => createBreadcrumb,
19699
19708
  findNode: () => findNode,
19700
19709
  getApiReferenceId: () => getApiReferenceId,
19710
+ getEnclosingTabbedNode: () => getEnclosingTabbedNode,
19701
19711
  getNoIndexFromFrontmatter: () => getNoIndexFromFrontmatter,
19702
19712
  mutableUpdatePointsTo: () => mutableUpdatePointsTo,
19713
+ resolveCurrentTab: () => resolveCurrentTab,
19703
19714
  stripSyntheticSegments: () => stripSyntheticSegments,
19704
19715
  toApis: () => toApis,
19705
19716
  toPages: () => toPages,
@@ -19845,6 +19856,41 @@ function createBreadcrumb(nodes) {
19845
19856
 
19846
19857
  // src/navigation/utils/findNode.ts
19847
19858
  var import_string8 = require("es-toolkit/string");
19859
+
19860
+ // src/navigation/utils/resolveCurrentTab.ts
19861
+ var isHeaderTab = (child) => child.type === "tab" || child.type === "changelog";
19862
+ function getEnclosingTabbedNode(parents) {
19863
+ const versionChild = (parents.find(isVersionNode) ?? parents.find(isUnversionedNode))?.child;
19864
+ return parents.find(isTabbedNode) ?? (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
19865
+ }
19866
+ function resolveCurrentTab(node, parents) {
19867
+ const tabbedNode = getEnclosingTabbedNode(parents);
19868
+ if (tabbedNode == null) {
19869
+ return void 0;
19870
+ }
19871
+ const parentsAndNode = [...parents, node];
19872
+ const tabbedNodeIndex = parentsAndNode.indexOf(tabbedNode);
19873
+ const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
19874
+ let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
19875
+ if (currentTab == null) {
19876
+ for (const tab of tabbedNode.children) {
19877
+ if (tab.type === "tab" && tab.pointsTo === node.slug) {
19878
+ currentTab = tab;
19879
+ break;
19880
+ }
19881
+ if (tab.type === "changelog" && tab.slug === node.slug) {
19882
+ currentTab = tab;
19883
+ break;
19884
+ }
19885
+ }
19886
+ if (currentTab == null && node.type === "landingPage") {
19887
+ currentTab = tabbedNode.children.find(isHeaderTab);
19888
+ }
19889
+ }
19890
+ return currentTab;
19891
+ }
19892
+
19893
+ // src/navigation/utils/findNode.ts
19848
19894
  function findNode(root, slug) {
19849
19895
  const collector = NodeCollector.collect(root);
19850
19896
  const found = collector.getSlugMapWithParents().get(canonicalSlugKey(slug));
@@ -19878,7 +19924,6 @@ function findNode(root, slug) {
19878
19924
  const currentProduct = found.parents.find(isProductNode);
19879
19925
  const currentVersion = found.parents.find(isVersionNode);
19880
19926
  const unversionedNode = found.parents.find(isUnversionedNode);
19881
- const versionChild = (currentVersion ?? unversionedNode)?.child;
19882
19927
  const currentVariant = found.parents.find(isVariantNode);
19883
19928
  if (!sidebar && currentVersion != null) {
19884
19929
  if (isSidebarRootNode(currentVersion.child)) {
@@ -19886,13 +19931,9 @@ function findNode(root, slug) {
19886
19931
  }
19887
19932
  }
19888
19933
  const landingPage = (currentProductGroup ?? currentVersion ?? unversionedNode)?.landingPage;
19889
- const tabbedNode = found.parents.find(isTabbedNode) ?? // fallback to the version child because the current node may be a landing page
19890
- (versionChild != null && isTabbedNode(versionChild) ? versionChild : void 0);
19934
+ const tabbedNode = getEnclosingTabbedNode(found.parents);
19891
19935
  const apiReference = found.parents.find(isApiReferenceNode) ?? (found.node.type === "apiReference" ? found.node : void 0);
19892
19936
  if (navigation_exports.isPage(found.node)) {
19893
- const parentsAndNode = [...found.parents, found.node];
19894
- const tabbedNodeIndex = parentsAndNode.findIndex((node) => node === tabbedNode);
19895
- const currentTabNode = tabbedNodeIndex !== -1 ? parentsAndNode[tabbedNodeIndex + 1] : void 0;
19896
19937
  const products = collector.getProductNodes().map((node) => {
19897
19938
  if (node.default) {
19898
19939
  if (node.id === currentProduct?.id) {
@@ -19920,25 +19961,7 @@ function findNode(root, slug) {
19920
19961
  }
19921
19962
  return node;
19922
19963
  });
19923
- let currentTab = currentTabNode?.type === "tab" || currentTabNode?.type === "changelog" ? currentTabNode : void 0;
19924
- if (currentTab == null && tabbedNode != null) {
19925
- for (const tab of tabbedNode.children) {
19926
- if (tab.type === "tab" && tab.pointsTo === found.node.slug) {
19927
- currentTab = tab;
19928
- break;
19929
- }
19930
- if (tab.type === "changelog" && tab.slug === found.node.slug) {
19931
- currentTab = tab;
19932
- break;
19933
- }
19934
- }
19935
- if (currentTab == null && found.node.type === "landingPage") {
19936
- const firstTab = tabbedNode.children.find((tab) => tab.type === "tab" || tab.type === "changelog");
19937
- if (firstTab != null && (firstTab.type === "tab" || firstTab.type === "changelog")) {
19938
- currentTab = firstTab;
19939
- }
19940
- }
19941
- }
19964
+ const currentTab = resolveCurrentTab(found.node, found.parents);
19942
19965
  const slugPrefix = currentVariant?.slug ?? (currentProduct?.type === "product" ? currentProduct.slug : void 0) ?? currentVersion?.slug ?? root.slug;
19943
19966
  const unversionedSlug = navigation_exports.Slug(
19944
19967
  found.node.slug.replace(new RegExp(`^${(0, import_string8.escapeRegExp)(slugPrefix)}/`), "")