@fern-api/fern-api-dev 3.68.1 → 3.69.0

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 (2) hide show
  1. package/cli.cjs +497 -7
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -1427240,7 +1427240,7 @@ var AccessTokenPosthogManager = class {
1427240
1427240
  properties: {
1427241
1427241
  ...event,
1427242
1427242
  ...event.properties,
1427243
- version: "3.68.1",
1427243
+ version: "3.69.0",
1427244
1427244
  usingAccessToken: true
1427245
1427245
  }
1427246
1427246
  });
@@ -1427339,7 +1427339,7 @@ var UserPosthogManager = class {
1427339
1427339
  distinctId: this.userId ?? await this.getPersistedDistinctId(),
1427340
1427340
  event: "CLI",
1427341
1427341
  properties: {
1427342
- version: "3.68.1",
1427342
+ version: "3.69.0",
1427343
1427343
  ...event,
1427344
1427344
  ...event.properties,
1427345
1427345
  usingAccessToken: false,
@@ -1481063,6 +1481063,7 @@ __export(schemas_exports9, {
1481063
1481063
  JsScriptStrategy: () => JsScriptStrategy2,
1481064
1481064
  Language: () => Language3,
1481065
1481065
  LanguageSwitcherThemeConfig: () => LanguageSwitcherThemeConfig,
1481066
+ LibraryLanguage: () => LibraryLanguage2,
1481066
1481067
  PageActionOption: () => PageActionOption2,
1481067
1481068
  PageActionsThemeConfig: () => PageActionsThemeConfig,
1481068
1481069
  ProductSwitcherThemeConfig: () => ProductSwitcherThemeConfig,
@@ -1481099,6 +1481100,7 @@ __export(api_exports6, {
1481099
1481100
  JsScriptStrategy: () => JsScriptStrategy2,
1481100
1481101
  Language: () => Language3,
1481101
1481102
  LanguageSwitcherThemeConfig: () => LanguageSwitcherThemeConfig,
1481103
+ LibraryLanguage: () => LibraryLanguage2,
1481102
1481104
  PageActionOption: () => PageActionOption2,
1481103
1481105
  PageActionsThemeConfig: () => PageActionsThemeConfig,
1481104
1481106
  ProductSwitcherThemeConfig: () => ProductSwitcherThemeConfig,
@@ -1481132,6 +1481134,7 @@ __export(docs_exports4, {
1481132
1481134
  JsScriptStrategy: () => JsScriptStrategy2,
1481133
1481135
  Language: () => Language3,
1481134
1481136
  LanguageSwitcherThemeConfig: () => LanguageSwitcherThemeConfig,
1481137
+ LibraryLanguage: () => LibraryLanguage2,
1481135
1481138
  PageActionOption: () => PageActionOption2,
1481136
1481139
  PageActionsThemeConfig: () => PageActionsThemeConfig,
1481137
1481140
  ProductSwitcherThemeConfig: () => ProductSwitcherThemeConfig,
@@ -1481262,6 +1481265,12 @@ var LanguageSwitcherThemeConfig = {
1481262
1481265
  Minimal: "minimal"
1481263
1481266
  };
1481264
1481267
 
1481268
+ // ../configuration/lib/docs-yml/schemas/sdk/api/resources/docs/types/LibraryLanguage.js
1481269
+ var LibraryLanguage2 = {
1481270
+ Python: "python",
1481271
+ Cpp: "cpp"
1481272
+ };
1481273
+
1481265
1481274
  // ../configuration/lib/docs-yml/schemas/sdk/api/resources/docs/types/PageActionOption.js
1481266
1481275
  var PageActionOption2 = {
1481267
1481276
  CopyPage: "copy-page",
@@ -1481601,6 +1481610,7 @@ __export(serialization_exports4, {
1481601
1481610
  FooterLinksConfig: () => FooterLinksConfig,
1481602
1481611
  FooterNavThemeConfig: () => FooterNavThemeConfig2,
1481603
1481612
  FullStoryAnalyticsConfig: () => FullStoryAnalyticsConfig,
1481613
+ GitLibraryInputSchema: () => GitLibraryInputSchema,
1481604
1481614
  GithubEditThisPageConfig: () => GithubEditThisPageConfig,
1481605
1481615
  GoogleAnalytics4Config: () => GoogleAnalytics4Config,
1481606
1481616
  GtmConfig: () => GtmConfig,
@@ -1481619,6 +1481629,12 @@ __export(serialization_exports4, {
1481619
1481629
  Language: () => Language4,
1481620
1481630
  LanguageSwitcherThemeConfig: () => LanguageSwitcherThemeConfig2,
1481621
1481631
  LayoutConfig: () => LayoutConfig,
1481632
+ LibraryConfiguration: () => LibraryConfiguration,
1481633
+ LibraryInputConfiguration: () => LibraryInputConfiguration,
1481634
+ LibraryLanguage: () => LibraryLanguage3,
1481635
+ LibraryName: () => LibraryName,
1481636
+ LibraryOutputConfiguration: () => LibraryOutputConfiguration,
1481637
+ LibraryReferenceConfiguration: () => LibraryReferenceConfiguration,
1481622
1481638
  LinkConfiguration: () => LinkConfiguration,
1481623
1481639
  LogoConfiguration: () => LogoConfiguration,
1481624
1481640
  MetadataConfig: () => MetadataConfig,
@@ -1481634,6 +1481650,7 @@ __export(serialization_exports4, {
1481634
1481650
  PageActionsConfig: () => PageActionsConfig,
1481635
1481651
  PageActionsThemeConfig: () => PageActionsThemeConfig2,
1481636
1481652
  PageConfiguration: () => PageConfiguration,
1481653
+ PathLibraryInputSchema: () => PathLibraryInputSchema,
1481637
1481654
  PlaygroundButtonSettings: () => PlaygroundButtonSettings,
1481638
1481655
  PlaygroundSettings: () => PlaygroundSettings,
1481639
1481656
  PostHogConfig: () => PostHogConfig,
@@ -1481732,6 +1481749,7 @@ __export(docs_exports5, {
1481732
1481749
  FooterLinksConfig: () => FooterLinksConfig,
1481733
1481750
  FooterNavThemeConfig: () => FooterNavThemeConfig2,
1481734
1481751
  FullStoryAnalyticsConfig: () => FullStoryAnalyticsConfig,
1481752
+ GitLibraryInputSchema: () => GitLibraryInputSchema,
1481735
1481753
  GithubEditThisPageConfig: () => GithubEditThisPageConfig,
1481736
1481754
  GoogleAnalytics4Config: () => GoogleAnalytics4Config,
1481737
1481755
  GtmConfig: () => GtmConfig,
@@ -1481750,6 +1481768,12 @@ __export(docs_exports5, {
1481750
1481768
  Language: () => Language4,
1481751
1481769
  LanguageSwitcherThemeConfig: () => LanguageSwitcherThemeConfig2,
1481752
1481770
  LayoutConfig: () => LayoutConfig,
1481771
+ LibraryConfiguration: () => LibraryConfiguration,
1481772
+ LibraryInputConfiguration: () => LibraryInputConfiguration,
1481773
+ LibraryLanguage: () => LibraryLanguage3,
1481774
+ LibraryName: () => LibraryName,
1481775
+ LibraryOutputConfiguration: () => LibraryOutputConfiguration,
1481776
+ LibraryReferenceConfiguration: () => LibraryReferenceConfiguration,
1481753
1481777
  LinkConfiguration: () => LinkConfiguration,
1481754
1481778
  LogoConfiguration: () => LogoConfiguration,
1481755
1481779
  MetadataConfig: () => MetadataConfig,
@@ -1481765,6 +1481789,7 @@ __export(docs_exports5, {
1481765
1481789
  PageActionsConfig: () => PageActionsConfig,
1481766
1481790
  PageActionsThemeConfig: () => PageActionsThemeConfig2,
1481767
1481791
  PageConfiguration: () => PageConfiguration,
1481792
+ PathLibraryInputSchema: () => PathLibraryInputSchema,
1481768
1481793
  PlaygroundButtonSettings: () => PlaygroundButtonSettings,
1481769
1481794
  PlaygroundSettings: () => PlaygroundSettings,
1481770
1481795
  PostHogConfig: () => PostHogConfig,
@@ -1483696,6 +1483721,38 @@ var LayoutConfig = schemas_exports8.object({
1483696
1483721
  hideFeedback: schemas_exports8.property("hide-feedback", schemas_exports8.boolean().optional())
1483697
1483722
  });
1483698
1483723
 
1483724
+ // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/GitLibraryInputSchema.js
1483725
+ var GitLibraryInputSchema = schemas_exports8.object({
1483726
+ git: schemas_exports8.string(),
1483727
+ subpath: schemas_exports8.string().optional()
1483728
+ });
1483729
+
1483730
+ // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/PathLibraryInputSchema.js
1483731
+ var PathLibraryInputSchema = schemas_exports8.object({
1483732
+ path: schemas_exports8.string()
1483733
+ });
1483734
+
1483735
+ // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/LibraryInputConfiguration.js
1483736
+ var LibraryInputConfiguration = schemas_exports8.undiscriminatedUnion([GitLibraryInputSchema, PathLibraryInputSchema]);
1483737
+
1483738
+ // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/LibraryLanguage.js
1483739
+ var LibraryLanguage3 = schemas_exports8.enum_(["python", "cpp"]);
1483740
+
1483741
+ // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/LibraryOutputConfiguration.js
1483742
+ var LibraryOutputConfiguration = schemas_exports8.object({
1483743
+ path: schemas_exports8.string()
1483744
+ });
1483745
+
1483746
+ // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/LibraryConfiguration.js
1483747
+ var LibraryConfiguration = schemas_exports8.object({
1483748
+ input: LibraryInputConfiguration,
1483749
+ output: LibraryOutputConfiguration,
1483750
+ lang: LibraryLanguage3
1483751
+ });
1483752
+
1483753
+ // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/LibraryName.js
1483754
+ var LibraryName = schemas_exports8.string();
1483755
+
1483699
1483756
  // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/LogoConfiguration.js
1483700
1483757
  var LogoConfiguration = schemas_exports8.object({
1483701
1483758
  dark: schemas_exports8.string().optional(),
@@ -1483952,6 +1484009,7 @@ var ThemeConfig = schemas_exports8.object({
1483952
1484009
  var DocsConfiguration = schemas_exports8.object({
1483953
1484010
  instances: schemas_exports8.list(DocsInstance),
1483954
1484011
  title: schemas_exports8.string().optional(),
1484012
+ libraries: schemas_exports8.record(LibraryName, LibraryConfiguration).optional(),
1483955
1484013
  analytics: AnalyticsConfig.optional(),
1483956
1484014
  announcement: AnnouncementConfig.optional(),
1483957
1484015
  roles: schemas_exports8.list(RoleId2).optional(),
@@ -1483999,6 +1484057,13 @@ var FolderConfiguration = schemas_exports8.object({
1483999
1484057
  availability: Availability4.optional()
1484000
1484058
  }).extend(WithPermissions).extend(WithFeatureFlags);
1484001
1484059
 
1484060
+ // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/LibraryReferenceConfiguration.js
1484061
+ var LibraryReferenceConfiguration = schemas_exports8.object({
1484062
+ library: LibraryName,
1484063
+ title: schemas_exports8.string().optional(),
1484064
+ slug: schemas_exports8.string().optional()
1484065
+ }).extend(WithPermissions).extend(WithFeatureFlags);
1484066
+
1484002
1484067
  // ../configuration/lib/docs-yml/schemas/sdk/serialization/resources/docs/types/PythonDocsConfiguration.js
1484003
1484068
  var PythonDocsConfiguration = schemas_exports8.object({
1484004
1484069
  pythonDocs: schemas_exports8.property("python-docs", schemas_exports8.string()),
@@ -1484012,6 +1484077,7 @@ var NavigationItem = schemas_exports8.undiscriminatedUnion([
1484012
1484077
  schemas_exports8.lazyObject(() => SectionConfiguration),
1484013
1484078
  ApiReferenceConfiguration,
1484014
1484079
  PythonDocsConfiguration,
1484080
+ LibraryReferenceConfiguration,
1484015
1484081
  LinkConfiguration,
1484016
1484082
  ChangelogConfiguration,
1484017
1484083
  FolderConfiguration
@@ -1508836,6 +1508902,8 @@ function getAllPagesFromNavigationItem({ item }) {
1508836
1508902
  return item.changelog;
1508837
1508903
  case "pythonDocsSection":
1508838
1508904
  return [];
1508905
+ case "librarySection":
1508906
+ return [];
1508839
1508907
  default:
1508840
1508908
  assertNever2(item);
1508841
1508909
  }
@@ -1509068,6 +1509136,8 @@ async function parseDocsConfiguration({ rawDocsConfiguration, absolutePathToFern
1509068
1509136
  // absoluteFilepath: absoluteFilepathToDocsConfig,
1509069
1509137
  instances: instances2,
1509070
1509138
  roles: rawDocsConfiguration.roles,
1509139
+ /* library documentation */
1509140
+ libraries: parseLibrariesConfiguration(rawDocsConfiguration.libraries),
1509071
1509141
  /* filepath of page to contents */
1509072
1509142
  pages,
1509073
1509143
  /* navigation */
@@ -1509791,6 +1509861,17 @@ async function convertNavigationItem({ rawConfig, absolutePathToFernFolder, abso
1509791
1509861
  slug: rawConfig.slug ?? void 0
1509792
1509862
  };
1509793
1509863
  }
1509864
+ if (isRawLibraryReferenceConfig(rawConfig)) {
1509865
+ return {
1509866
+ type: "librarySection",
1509867
+ libraryName: rawConfig.library,
1509868
+ title: rawConfig.title ?? void 0,
1509869
+ slug: rawConfig.slug ?? void 0,
1509870
+ viewers: parseRoles(rawConfig.viewers),
1509871
+ orphaned: rawConfig.orphaned,
1509872
+ featureFlags: convertFeatureFlag(rawConfig.featureFlag)
1509873
+ };
1509874
+ }
1509794
1509875
  assertNever2(rawConfig);
1509795
1509876
  }
1509796
1509877
  function parsePageConfig(item, absolutePathToConfig) {
@@ -1509934,6 +1510015,34 @@ function isRawFolderConfig(item) {
1509934
1510015
  function isRawPythonDocsSectionConfig(item) {
1509935
1510016
  return isPlainObject4(item) && typeof item.pythonDocs === "string";
1509936
1510017
  }
1510018
+ function isRawLibraryReferenceConfig(item) {
1510019
+ return isPlainObject4(item) && typeof item.library === "string";
1510020
+ }
1510021
+ function isGitLibraryInput(input3) {
1510022
+ return "git" in input3;
1510023
+ }
1510024
+ function parseLibrariesConfiguration(libraries) {
1510025
+ if (libraries == null) {
1510026
+ return void 0;
1510027
+ }
1510028
+ const result = {};
1510029
+ for (const [name3, config3] of Object.entries(libraries)) {
1510030
+ if (!isGitLibraryInput(config3.input)) {
1510031
+ throw new Error(`Library '${name3}' uses 'path' input which is not yet supported. Please use 'git' input.`);
1510032
+ }
1510033
+ result[name3] = {
1510034
+ input: {
1510035
+ git: config3.input.git,
1510036
+ subpath: config3.input.subpath
1510037
+ },
1510038
+ output: {
1510039
+ path: config3.output.path
1510040
+ },
1510041
+ lang: config3.lang
1510042
+ };
1510043
+ }
1510044
+ return result;
1510045
+ }
1509937
1510046
  function isRawApiRefSectionConfiguration(item) {
1509938
1510047
  return isPlainObject4(item) && typeof item.section === "string" && Array.isArray(item.contents);
1509939
1510048
  }
@@ -1620089,6 +1620198,19 @@ var properties4 = {
1620089
1620198
  }
1620090
1620199
  ]
1620091
1620200
  },
1620201
+ libraries: {
1620202
+ oneOf: [
1620203
+ {
1620204
+ type: "object",
1620205
+ additionalProperties: {
1620206
+ $ref: "#/definitions/docs.LibraryConfiguration"
1620207
+ }
1620208
+ },
1620209
+ {
1620210
+ type: "null"
1620211
+ }
1620212
+ ]
1620213
+ },
1620092
1620214
  analytics: {
1620093
1620215
  oneOf: [
1620094
1620216
  {
@@ -1620586,6 +1620708,89 @@ var definitions4 = {
1620586
1620708
  ],
1620587
1620709
  additionalProperties: false
1620588
1620710
  },
1620711
+ "docs.GitLibraryInputSchema": {
1620712
+ type: "object",
1620713
+ properties: {
1620714
+ git: {
1620715
+ type: "string"
1620716
+ },
1620717
+ subpath: {
1620718
+ oneOf: [
1620719
+ {
1620720
+ type: "string"
1620721
+ },
1620722
+ {
1620723
+ type: "null"
1620724
+ }
1620725
+ ]
1620726
+ }
1620727
+ },
1620728
+ required: [
1620729
+ "git"
1620730
+ ],
1620731
+ additionalProperties: false
1620732
+ },
1620733
+ "docs.PathLibraryInputSchema": {
1620734
+ type: "object",
1620735
+ properties: {
1620736
+ path: {
1620737
+ type: "string"
1620738
+ }
1620739
+ },
1620740
+ required: [
1620741
+ "path"
1620742
+ ],
1620743
+ additionalProperties: false
1620744
+ },
1620745
+ "docs.LibraryInputConfiguration": {
1620746
+ anyOf: [
1620747
+ {
1620748
+ $ref: "#/definitions/docs.GitLibraryInputSchema"
1620749
+ },
1620750
+ {
1620751
+ $ref: "#/definitions/docs.PathLibraryInputSchema"
1620752
+ }
1620753
+ ]
1620754
+ },
1620755
+ "docs.LibraryOutputConfiguration": {
1620756
+ type: "object",
1620757
+ properties: {
1620758
+ path: {
1620759
+ type: "string"
1620760
+ }
1620761
+ },
1620762
+ required: [
1620763
+ "path"
1620764
+ ],
1620765
+ additionalProperties: false
1620766
+ },
1620767
+ "docs.LibraryLanguage": {
1620768
+ type: "string",
1620769
+ enum: [
1620770
+ "python",
1620771
+ "cpp"
1620772
+ ]
1620773
+ },
1620774
+ "docs.LibraryConfiguration": {
1620775
+ type: "object",
1620776
+ properties: {
1620777
+ input: {
1620778
+ $ref: "#/definitions/docs.LibraryInputConfiguration"
1620779
+ },
1620780
+ output: {
1620781
+ $ref: "#/definitions/docs.LibraryOutputConfiguration"
1620782
+ },
1620783
+ lang: {
1620784
+ $ref: "#/definitions/docs.LibraryLanguage"
1620785
+ }
1620786
+ },
1620787
+ required: [
1620788
+ "input",
1620789
+ "output",
1620790
+ "lang"
1620791
+ ],
1620792
+ additionalProperties: false
1620793
+ },
1620589
1620794
  "docs.SegmentConfig": {
1620590
1620795
  type: "object",
1620591
1620796
  properties: {
@@ -1622439,6 +1622644,71 @@ var definitions4 = {
1622439
1622644
  ],
1622440
1622645
  additionalProperties: false
1622441
1622646
  },
1622647
+ "docs.LibraryName": {
1622648
+ type: "string"
1622649
+ },
1622650
+ "docs.LibraryReferenceConfiguration": {
1622651
+ type: "object",
1622652
+ properties: {
1622653
+ viewers: {
1622654
+ oneOf: [
1622655
+ {
1622656
+ $ref: "#/definitions/docs.Role"
1622657
+ },
1622658
+ {
1622659
+ type: "null"
1622660
+ }
1622661
+ ]
1622662
+ },
1622663
+ orphaned: {
1622664
+ oneOf: [
1622665
+ {
1622666
+ type: "boolean"
1622667
+ },
1622668
+ {
1622669
+ type: "null"
1622670
+ }
1622671
+ ]
1622672
+ },
1622673
+ "feature-flag": {
1622674
+ oneOf: [
1622675
+ {
1622676
+ $ref: "#/definitions/docs.FeatureFlagConfiguration"
1622677
+ },
1622678
+ {
1622679
+ type: "null"
1622680
+ }
1622681
+ ]
1622682
+ },
1622683
+ library: {
1622684
+ $ref: "#/definitions/docs.LibraryName"
1622685
+ },
1622686
+ title: {
1622687
+ oneOf: [
1622688
+ {
1622689
+ type: "string"
1622690
+ },
1622691
+ {
1622692
+ type: "null"
1622693
+ }
1622694
+ ]
1622695
+ },
1622696
+ slug: {
1622697
+ oneOf: [
1622698
+ {
1622699
+ type: "string"
1622700
+ },
1622701
+ {
1622702
+ type: "null"
1622703
+ }
1622704
+ ]
1622705
+ }
1622706
+ },
1622707
+ required: [
1622708
+ "library"
1622709
+ ],
1622710
+ additionalProperties: false
1622711
+ },
1622442
1622712
  "docs.ChangelogConfiguration": {
1622443
1622713
  type: "object",
1622444
1622714
  properties: {
@@ -1622664,6 +1622934,9 @@ var definitions4 = {
1622664
1622934
  {
1622665
1622935
  $ref: "#/definitions/docs.PythonDocsConfiguration"
1622666
1622936
  },
1622937
+ {
1622938
+ $ref: "#/definitions/docs.LibraryReferenceConfiguration"
1622939
+ },
1622667
1622940
  {
1622668
1622941
  $ref: "#/definitions/docs.LinkConfiguration"
1622669
1622942
  },
@@ -1670217,7 +1670490,9 @@ https://buildwithfern.com/learn/docs/getting-started/project-structure#api-defin
1670217
1670490
  changelog: async (value) => this.toChangelogNode(value, parentSlug),
1670218
1670491
  // Library sections are handled by FDR during registration
1670219
1670492
  // If handler provided (dev mode), create placeholder; otherwise skip (FDR adds generated docs)
1670220
- pythonDocsSection: async (value) => this.handlePythonDocsSection(value, parentSlug)
1670493
+ pythonDocsSection: async (value) => this.handlePythonDocsSection(value, parentSlug),
1670494
+ // Library sections are stub - actual content is generated by `fern docs md generate`
1670495
+ librarySection: async () => null
1670221
1670496
  });
1670222
1670497
  }
1670223
1670498
  async toNavigationChild({ prefix: prefix2, item, parentSlug, hideChildren, parentAvailability }) {
@@ -1670229,7 +1670504,9 @@ https://buildwithfern.com/learn/docs/getting-started/project-structure#api-defin
1670229
1670504
  changelog: async (value) => this.toChangelogNode(value, parentSlug, hideChildren),
1670230
1670505
  // Library sections are handled by FDR during registration
1670231
1670506
  // If handler provided (dev mode), create placeholder; otherwise skip (FDR adds generated docs)
1670232
- pythonDocsSection: async (value) => this.handlePythonDocsSection(value, parentSlug)
1670507
+ pythonDocsSection: async (value) => this.handlePythonDocsSection(value, parentSlug),
1670508
+ // Library sections are stub - actual content is generated by `fern docs md generate`
1670509
+ librarySection: async () => null
1670233
1670510
  });
1670234
1670511
  }
1670235
1670512
  async toApiSectionNode({ item, parentSlug, hideChildren, parentAvailability }) {
@@ -1714341,7 +1714618,7 @@ var CliContext = class {
1714341
1714618
  if (false) {
1714342
1714619
  this.logger.error("CLI_VERSION is not defined");
1714343
1714620
  }
1714344
- return "3.68.1";
1714621
+ return "3.69.0";
1714345
1714622
  }
1714346
1714623
  getCliName() {
1714347
1714624
  if (false) {
@@ -1717461,7 +1717738,7 @@ var import_path56 = __toESM(require("path"), 1);
1717461
1717738
  var LOCAL_STORAGE_FOLDER4 = ".fern-dev";
1717462
1717739
  var LOGS_FOLDER_NAME = "logs";
1717463
1717740
  function getCliSource() {
1717464
- const version7 = "3.68.1";
1717741
+ const version7 = "3.69.0";
1717465
1717742
  return `cli@${version7}`;
1717466
1717743
  }
1717467
1717744
  var DebugLogger = class {
@@ -1721741,6 +1722018,71 @@ var definitions5 = {
1721741
1722018
  ],
1721742
1722019
  additionalProperties: false
1721743
1722020
  },
1722021
+ "docs.LibraryName": {
1722022
+ type: "string"
1722023
+ },
1722024
+ "docs.LibraryReferenceConfiguration": {
1722025
+ type: "object",
1722026
+ properties: {
1722027
+ viewers: {
1722028
+ oneOf: [
1722029
+ {
1722030
+ $ref: "#/definitions/docs.Role"
1722031
+ },
1722032
+ {
1722033
+ type: "null"
1722034
+ }
1722035
+ ]
1722036
+ },
1722037
+ orphaned: {
1722038
+ oneOf: [
1722039
+ {
1722040
+ type: "boolean"
1722041
+ },
1722042
+ {
1722043
+ type: "null"
1722044
+ }
1722045
+ ]
1722046
+ },
1722047
+ "feature-flag": {
1722048
+ oneOf: [
1722049
+ {
1722050
+ $ref: "#/definitions/docs.FeatureFlagConfiguration"
1722051
+ },
1722052
+ {
1722053
+ type: "null"
1722054
+ }
1722055
+ ]
1722056
+ },
1722057
+ library: {
1722058
+ $ref: "#/definitions/docs.LibraryName"
1722059
+ },
1722060
+ title: {
1722061
+ oneOf: [
1722062
+ {
1722063
+ type: "string"
1722064
+ },
1722065
+ {
1722066
+ type: "null"
1722067
+ }
1722068
+ ]
1722069
+ },
1722070
+ slug: {
1722071
+ oneOf: [
1722072
+ {
1722073
+ type: "string"
1722074
+ },
1722075
+ {
1722076
+ type: "null"
1722077
+ }
1722078
+ ]
1722079
+ }
1722080
+ },
1722081
+ required: [
1722082
+ "library"
1722083
+ ],
1722084
+ additionalProperties: false
1722085
+ },
1721744
1722086
  "docs.ChangelogConfiguration": {
1721745
1722087
  type: "object",
1721746
1722088
  properties: {
@@ -1721966,6 +1722308,9 @@ var definitions5 = {
1721966
1722308
  {
1721967
1722309
  $ref: "#/definitions/docs.PythonDocsConfiguration"
1721968
1722310
  },
1722311
+ {
1722312
+ $ref: "#/definitions/docs.LibraryReferenceConfiguration"
1722313
+ },
1721969
1722314
  {
1721970
1722315
  $ref: "#/definitions/docs.LinkConfiguration"
1721971
1722316
  },
@@ -1723595,6 +1723940,71 @@ var definitions6 = {
1723595
1723940
  ],
1723596
1723941
  additionalProperties: false
1723597
1723942
  },
1723943
+ "docs.LibraryName": {
1723944
+ type: "string"
1723945
+ },
1723946
+ "docs.LibraryReferenceConfiguration": {
1723947
+ type: "object",
1723948
+ properties: {
1723949
+ viewers: {
1723950
+ oneOf: [
1723951
+ {
1723952
+ $ref: "#/definitions/docs.Role"
1723953
+ },
1723954
+ {
1723955
+ type: "null"
1723956
+ }
1723957
+ ]
1723958
+ },
1723959
+ orphaned: {
1723960
+ oneOf: [
1723961
+ {
1723962
+ type: "boolean"
1723963
+ },
1723964
+ {
1723965
+ type: "null"
1723966
+ }
1723967
+ ]
1723968
+ },
1723969
+ "feature-flag": {
1723970
+ oneOf: [
1723971
+ {
1723972
+ $ref: "#/definitions/docs.FeatureFlagConfiguration"
1723973
+ },
1723974
+ {
1723975
+ type: "null"
1723976
+ }
1723977
+ ]
1723978
+ },
1723979
+ library: {
1723980
+ $ref: "#/definitions/docs.LibraryName"
1723981
+ },
1723982
+ title: {
1723983
+ oneOf: [
1723984
+ {
1723985
+ type: "string"
1723986
+ },
1723987
+ {
1723988
+ type: "null"
1723989
+ }
1723990
+ ]
1723991
+ },
1723992
+ slug: {
1723993
+ oneOf: [
1723994
+ {
1723995
+ type: "string"
1723996
+ },
1723997
+ {
1723998
+ type: "null"
1723999
+ }
1724000
+ ]
1724001
+ }
1724002
+ },
1724003
+ required: [
1724004
+ "library"
1724005
+ ],
1724006
+ additionalProperties: false
1724007
+ },
1723598
1724008
  "docs.ChangelogConfiguration": {
1723599
1724009
  type: "object",
1723600
1724010
  properties: {
@@ -1723820,6 +1724230,9 @@ var definitions6 = {
1723820
1724230
  {
1723821
1724231
  $ref: "#/definitions/docs.PythonDocsConfiguration"
1723822
1724232
  },
1724233
+ {
1724234
+ $ref: "#/definitions/docs.LibraryReferenceConfiguration"
1724235
+ },
1723823
1724236
  {
1723824
1724237
  $ref: "#/definitions/docs.LinkConfiguration"
1723825
1724238
  },
@@ -1724608,7 +1725021,8 @@ async function visitDocsConfigFileYamlAst({ contents, visitor, absoluteFilepathT
1724608
1725021
  },
1724609
1725022
  roles: noop7,
1724610
1725023
  languages: noop7,
1724611
- theme: noop7
1725024
+ theme: noop7,
1725025
+ libraries: noop7
1724612
1725026
  });
1724613
1725027
  }
1724614
1725028
  async function visitFontConfig({ absoluteFilepathToConfiguration, visitor, font, nodePath }) {
@@ -1735028,6 +1735442,51 @@ async function docsDiff({
1735028
1735442
  return { diffs: results };
1735029
1735443
  }
1735030
1735444
 
1735445
+ // src/commands/docs-md-generate/generateLibraryDocs.ts
1735446
+ function isGitLibraryInput2(input3) {
1735447
+ return "git" in input3;
1735448
+ }
1735449
+ async function generateLibraryDocs({ project, cliContext, library }) {
1735450
+ const docsWorkspace = project.docsWorkspaces;
1735451
+ if (docsWorkspace == null) {
1735452
+ cliContext.failAndThrow("No docs workspace found. Make sure you have a docs.yml file.");
1735453
+ return;
1735454
+ }
1735455
+ const rawConfig = docsWorkspace.config;
1735456
+ const libraries = rawConfig.libraries;
1735457
+ if (libraries == null || Object.keys(libraries).length === 0) {
1735458
+ cliContext.failAndThrow(
1735459
+ "No libraries configured in docs.yml. Add a `libraries` section to configure library documentation."
1735460
+ );
1735461
+ return;
1735462
+ }
1735463
+ const librariesToGenerate = library != null ? { [library]: libraries[library] } : libraries;
1735464
+ if (library != null && libraries[library] == null) {
1735465
+ cliContext.failAndThrow(
1735466
+ `Library '${library}' not found in docs.yml. Available libraries: ${Object.keys(libraries).join(", ")}`
1735467
+ );
1735468
+ return;
1735469
+ }
1735470
+ for (const [name3, config3] of Object.entries(librariesToGenerate)) {
1735471
+ if (config3 == null) {
1735472
+ continue;
1735473
+ }
1735474
+ if (!isGitLibraryInput2(config3.input)) {
1735475
+ cliContext.failAndThrow(
1735476
+ `Library '${name3}' uses 'path' input which is not yet supported. Please use 'git' input.`
1735477
+ );
1735478
+ return;
1735479
+ }
1735480
+ const subpathInfo = config3.input.subpath != null ? ` (subpath: ${config3.input.subpath})` : "";
1735481
+ cliContext.logger.info(
1735482
+ `Would generate library '${name3}' from ${config3.input.git}${subpathInfo} to ${config3.output.path} (lang: ${config3.lang})`
1735483
+ );
1735484
+ }
1735485
+ cliContext.logger.info(
1735486
+ "\nStub implementation complete. Full generation will be implemented in a future iteration."
1735487
+ );
1735488
+ }
1735489
+
1735031
1735490
  // src/commands/docs-preview/deleteDocsPreview.ts
1735032
1735491
  var PREVIEW_URL_PATTERN = /^[a-z0-9-]+-preview-[a-z0-9-]+\.docs\.buildwithfern\.com$/i;
1735033
1735492
  function isPreviewUrl(url3) {
@@ -1746232,9 +1746691,40 @@ function addDocsCommand(cli, cliContext) {
1746232
1746691
  addDocsBrokenLinksCommand(yargs, cliContext);
1746233
1746692
  addDocsPreviewCommand(yargs, cliContext);
1746234
1746693
  addDocsDiffCommand(yargs, cliContext);
1746694
+ addDocsMdCommand(yargs, cliContext);
1746695
+ return yargs;
1746696
+ });
1746697
+ }
1746698
+ function addDocsMdCommand(cli, cliContext) {
1746699
+ cli.command("md", false, (yargs) => {
1746700
+ addDocsMdGenerateCommand(yargs, cliContext);
1746235
1746701
  return yargs;
1746236
1746702
  });
1746237
1746703
  }
1746704
+ function addDocsMdGenerateCommand(cli, cliContext) {
1746705
+ cli.command(
1746706
+ "generate",
1746707
+ "[Beta] Generate MDX documentation from library source code. Requires 'libraries' config in docs.yml.",
1746708
+ (yargs) => yargs.option("library", {
1746709
+ type: "string",
1746710
+ description: "Name of a specific library defined in docs.yml to generate docs for"
1746711
+ }),
1746712
+ async (argv) => {
1746713
+ await cliContext.instrumentPostHogEvent({
1746714
+ command: "fern docs md generate"
1746715
+ });
1746716
+ const project = await loadProjectAndRegisterWorkspacesWithContext(cliContext, {
1746717
+ commandLineApiWorkspace: void 0,
1746718
+ defaultToAllApiWorkspaces: true
1746719
+ });
1746720
+ await generateLibraryDocs({
1746721
+ project,
1746722
+ cliContext,
1746723
+ library: argv.library
1746724
+ });
1746725
+ }
1746726
+ );
1746727
+ }
1746238
1746728
  function addDocsDiffCommand(cli, cliContext) {
1746239
1746729
  cli.command(
1746240
1746730
  "diff <preview-url> <files..>",
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "3.68.1",
2
+ "version": "3.69.0",
3
3
  "repository": {
4
4
  "type": "git",
5
5
  "url": "git+https://github.com/fern-api/fern.git",