@patternfly/patternfly-doc-core 1.15.4 → 1.15.5

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 (312) hide show
  1. package/.astro/content-modules.mjs +124 -124
  2. package/README.mdx +1 -0
  3. package/cli/cli.ts +54 -35
  4. package/{src → dist}/apiIndex.json +94 -94
  5. package/dist/cli/cli.js +48 -30
  6. package/dist/docs/_worker.js/chunks/fetch_CoXtH9RF.mjs +12 -0
  7. package/dist/docs/_worker.js/chunks/getConfig_DO3RhTb7.mjs +18 -0
  8. package/dist/docs/_worker.js/index.js +11 -9
  9. package/dist/docs/_worker.js/manifest_DIDAejNV.mjs +100 -0
  10. package/dist/docs/_worker.js/pages/api/_version_/_section_/_page_.astro.mjs +18 -10
  11. package/dist/docs/_worker.js/pages/api/_version_/_section_.astro.mjs +17 -8
  12. package/dist/docs/_worker.js/pages/api/_version_.astro.mjs +15 -8
  13. package/dist/docs/_worker.js/pages/api/openapi.json.astro.mjs +14 -3
  14. package/dist/docs/_worker.js/pages/api/versions.astro.mjs +11 -4
  15. package/dist/docs/_worker.js/pages/apiindex.json.astro.mjs +1 -0
  16. package/dist/docs/_worker.js/pages/props.astro.mjs +1 -16
  17. package/dist/docs/apiIndex.json +561 -0
  18. package/dist/docs/components/about-modal/html/index.html +8 -8
  19. package/dist/docs/components/about-modal/html-demos/index.html +4 -4
  20. package/dist/docs/components/about-modal/index.html +5 -5
  21. package/dist/docs/components/accordion/html/index.html +22 -22
  22. package/dist/docs/components/accordion/index.html +7 -7
  23. package/dist/docs/components/action-list/html/index.html +11 -11
  24. package/dist/docs/components/action-list/index.html +9 -9
  25. package/dist/docs/components/alert/html/index.html +31 -31
  26. package/dist/docs/components/alert/html-demos/index.html +10 -10
  27. package/dist/docs/components/alert/index.html +83 -83
  28. package/dist/docs/components/alert/react/index.html +83 -83
  29. package/dist/docs/components/avatar/html/index.html +16 -16
  30. package/dist/docs/components/avatar/index.html +8 -8
  31. package/dist/docs/components/avatar/react/index.html +5 -5
  32. package/dist/docs/components/back-to-top/html/index.html +9 -9
  33. package/dist/docs/components/back-to-top/html-demos/index.html +4 -4
  34. package/dist/docs/components/back-to-top/index.html +8 -8
  35. package/dist/docs/components/back-to-top/react/index.html +8 -8
  36. package/dist/docs/components/backdrop/html/index.html +11 -11
  37. package/dist/docs/components/backdrop/index.html +6 -6
  38. package/dist/docs/components/backdrop/react/index.html +6 -6
  39. package/dist/docs/components/background-image/html/index.html +11 -11
  40. package/dist/docs/components/background-image/index.html +6 -6
  41. package/dist/docs/components/background-image/react/index.html +6 -6
  42. package/dist/docs/components/badge/html/index.html +12 -12
  43. package/dist/docs/components/badge/index.html +8 -8
  44. package/dist/docs/components/badge/react/index.html +8 -8
  45. package/dist/docs/components/banner/html/index.html +12 -12
  46. package/dist/docs/components/banner/html-demos/index.html +9 -9
  47. package/dist/docs/components/banner/index.html +11 -11
  48. package/dist/docs/components/banner/react/index.html +11 -11
  49. package/dist/docs/components/brand/html/index.html +10 -10
  50. package/dist/docs/components/brand/index.html +6 -6
  51. package/dist/docs/components/breadcrumb/html/index.html +15 -15
  52. package/dist/docs/components/breadcrumb/index.html +6 -6
  53. package/dist/docs/components/breadcrumb/react/index.html +9 -9
  54. package/dist/docs/components/button/html/index.html +26 -26
  55. package/dist/docs/components/button/html-demos/index.html +5 -5
  56. package/dist/docs/components/button/index.html +34 -34
  57. package/dist/docs/components/button/react/index.html +37 -37
  58. package/dist/docs/components/calendar-month/html/index.html +9 -9
  59. package/dist/docs/components/calendar-month/index.html +6 -6
  60. package/dist/docs/components/calendar-month/react/index.html +9 -9
  61. package/dist/docs/components/card/html/index.html +37 -37
  62. package/dist/docs/components/card/html-demos/index.html +25 -25
  63. package/dist/docs/components/card/index.html +52 -52
  64. package/dist/docs/components/card/react/index.html +55 -55
  65. package/dist/docs/components/checkbox/html/index.html +21 -21
  66. package/dist/docs/components/checkbox/index.html +16 -16
  67. package/dist/docs/components/checkbox/react/index.html +13 -13
  68. package/dist/docs/components/chip/index.html +11 -11
  69. package/dist/docs/components/chip/react-deprecated/index.html +11 -11
  70. package/dist/docs/components/clipboard-copy/html/index.html +12 -12
  71. package/dist/docs/components/clipboard-copy/index.html +15 -15
  72. package/dist/docs/components/clipboard-copy/react/index.html +15 -15
  73. package/dist/docs/components/code-block/html/index.html +10 -10
  74. package/dist/docs/components/code-block/index.html +9 -9
  75. package/dist/docs/components/code-block/react/index.html +6 -6
  76. package/dist/docs/components/code-editor/html/index.html +16 -16
  77. package/dist/docs/components/code-editor/index.html +16 -16
  78. package/dist/docs/components/content/html/index.html +21 -21
  79. package/dist/docs/components/content/index.html +19 -19
  80. package/dist/docs/components/data-list/html/index.html +38 -38
  81. package/dist/docs/components/data-list/html-demos/index.html +12 -12
  82. package/dist/docs/components/data-list/index.html +21 -21
  83. package/dist/docs/components/date-picker/html/index.html +11 -11
  84. package/dist/docs/components/date-picker/index.html +14 -14
  85. package/dist/docs/components/date-picker/react/index.html +17 -17
  86. package/dist/docs/components/description-list/html/index.html +41 -41
  87. package/dist/docs/components/description-list/html-demos/index.html +8 -8
  88. package/dist/docs/components/description-list/index.html +36 -36
  89. package/dist/docs/components/description-list/react/index.html +39 -39
  90. package/dist/docs/components/divider/html/index.html +18 -18
  91. package/dist/docs/components/divider/index.html +11 -11
  92. package/dist/docs/components/drag-and-drop/html/index.html +11 -11
  93. package/dist/docs/components/drag-and-drop/index.html +9 -9
  94. package/dist/docs/components/drag-and-drop/react-deprecated/index.html +9 -9
  95. package/dist/docs/components/drawer/html/index.html +27 -27
  96. package/dist/docs/components/drawer/html-demos/index.html +16 -16
  97. package/dist/docs/components/drawer/index.html +25 -25
  98. package/dist/docs/components/dual-list-selector/html/index.html +13 -13
  99. package/dist/docs/components/dual-list-selector/index.html +17 -17
  100. package/dist/docs/components/empty-state/html/index.html +14 -14
  101. package/dist/docs/components/empty-state/index.html +13 -13
  102. package/dist/docs/components/empty-state/react/index.html +13 -13
  103. package/dist/docs/components/expandable-section/html/index.html +17 -17
  104. package/dist/docs/components/expandable-section/index.html +18 -18
  105. package/dist/docs/components/expandable-section/react/index.html +15 -15
  106. package/dist/docs/components/form/html/index.html +19 -19
  107. package/dist/docs/components/form/html-demos/index.html +6 -6
  108. package/dist/docs/components/form/index.html +19 -19
  109. package/dist/docs/components/form/react/index.html +19 -19
  110. package/dist/docs/components/form-control/html/index.html +12 -12
  111. package/dist/docs/components/form-control/index.html +12 -12
  112. package/dist/docs/components/form-select/index.html +9 -9
  113. package/dist/docs/components/form-select/react/index.html +9 -9
  114. package/dist/docs/components/helper-text/html/index.html +11 -11
  115. package/dist/docs/components/helper-text/html-demos/index.html +7 -7
  116. package/dist/docs/components/helper-text/index.html +9 -9
  117. package/dist/docs/components/hint/html/index.html +7 -7
  118. package/dist/docs/components/hint/index.html +8 -8
  119. package/dist/docs/components/hint/react/index.html +11 -11
  120. package/dist/docs/components/icon/html/index.html +16 -16
  121. package/dist/docs/components/icon/index.html +17 -17
  122. package/dist/docs/components/icon/react/index.html +20 -20
  123. package/dist/docs/components/inline-edit/html/index.html +29 -29
  124. package/dist/docs/components/inline-edit/index.html +29 -29
  125. package/dist/docs/components/input-group/html/index.html +12 -12
  126. package/dist/docs/components/input-group/index.html +12 -12
  127. package/dist/docs/components/input-group/react/index.html +12 -12
  128. package/dist/docs/components/jump-links/html/index.html +17 -17
  129. package/dist/docs/components/jump-links/html-demos/index.html +13 -13
  130. package/dist/docs/components/jump-links/index.html +9 -9
  131. package/dist/docs/components/jump-links/react/index.html +12 -12
  132. package/dist/docs/components/label/html/index.html +44 -44
  133. package/dist/docs/components/label/index.html +28 -28
  134. package/dist/docs/components/list/html/index.html +13 -13
  135. package/dist/docs/components/list/index.html +9 -9
  136. package/dist/docs/components/login-page/html/index.html +17 -17
  137. package/dist/docs/components/login-page/index.html +13 -13
  138. package/dist/docs/components/masthead/html/index.html +13 -13
  139. package/dist/docs/components/masthead/html-demos/index.html +20 -20
  140. package/dist/docs/components/masthead/index.html +18 -18
  141. package/dist/docs/components/menu/html/index.html +46 -46
  142. package/dist/docs/components/menu/index.html +68 -68
  143. package/dist/docs/components/menu/react/index.html +68 -68
  144. package/dist/docs/components/menu-toggle/html/index.html +35 -35
  145. package/dist/docs/components/menu-toggle/index.html +66 -66
  146. package/dist/docs/components/menu-toggle/react/index.html +66 -66
  147. package/dist/docs/components/modal/html/index.html +45 -45
  148. package/dist/docs/components/modal/html-demos/index.html +16 -16
  149. package/dist/docs/components/modal/index.html +41 -41
  150. package/dist/docs/components/multiple-file-upload/html/index.html +11 -11
  151. package/dist/docs/components/multiple-file-upload/index.html +26 -26
  152. package/dist/docs/components/navigation/html/index.html +26 -26
  153. package/dist/docs/components/navigation/html-demos/index.html +16 -16
  154. package/dist/docs/components/navigation/index.html +18 -18
  155. package/dist/docs/components/navigation/react/index.html +21 -21
  156. package/dist/docs/components/notification-badge/index.html +16 -16
  157. package/dist/docs/components/notification-badge/react/index.html +16 -16
  158. package/dist/docs/components/notification-drawer/html/index.html +9 -9
  159. package/dist/docs/components/notification-drawer/html-demos/index.html +13 -13
  160. package/dist/docs/components/notification-drawer/index.html +8 -8
  161. package/dist/docs/components/notification-drawer/react/index.html +8 -8
  162. package/dist/docs/components/number-input/html/index.html +12 -12
  163. package/dist/docs/components/number-input/index.html +11 -11
  164. package/dist/docs/components/number-input/react/index.html +14 -14
  165. package/dist/docs/components/overflow-menu/html/index.html +18 -18
  166. package/dist/docs/components/overflow-menu/index.html +9 -9
  167. package/dist/docs/components/overflow-menu/react/index.html +12 -12
  168. package/dist/docs/components/page/html/index.html +18 -18
  169. package/dist/docs/components/page/html-demos/index.html +32 -32
  170. package/dist/docs/components/page/index.html +50 -50
  171. package/dist/docs/components/page/react/index.html +50 -50
  172. package/dist/docs/components/pagination/html/index.html +20 -20
  173. package/dist/docs/components/pagination/index.html +17 -17
  174. package/dist/docs/components/pagination/react/index.html +14 -14
  175. package/dist/docs/components/panel/html/index.html +14 -14
  176. package/dist/docs/components/panel/html-demos/index.html +5 -5
  177. package/dist/docs/components/panel/index.html +22 -22
  178. package/dist/docs/components/password-generator/html-demos/index.html +4 -4
  179. package/dist/docs/components/password-generator/index.html +4 -4
  180. package/dist/docs/components/password-strength/html-demos/index.html +7 -7
  181. package/dist/docs/components/password-strength/index.html +7 -7
  182. package/dist/docs/components/popover/html/index.html +44 -44
  183. package/dist/docs/components/popover/index.html +20 -20
  184. package/dist/docs/components/popover/react/index.html +23 -23
  185. package/dist/docs/components/progress/html/index.html +31 -31
  186. package/dist/docs/components/progress/index.html +23 -23
  187. package/dist/docs/components/progress/react/index.html +23 -23
  188. package/dist/docs/components/progress-stepper/html/index.html +27 -27
  189. package/dist/docs/components/progress-stepper/index.html +16 -16
  190. package/dist/docs/components/progress-stepper/react/index.html +16 -16
  191. package/dist/docs/components/radio/html/index.html +20 -20
  192. package/dist/docs/components/radio/index.html +15 -15
  193. package/dist/docs/components/radio/react/index.html +15 -15
  194. package/dist/docs/components/sidebar/html/index.html +21 -21
  195. package/dist/docs/components/sidebar/index.html +17 -17
  196. package/dist/docs/components/simple-file-upload/html/index.html +15 -15
  197. package/dist/docs/components/simple-file-upload/index.html +32 -32
  198. package/dist/docs/components/simple-file-upload/react/index.html +32 -32
  199. package/dist/docs/components/simple-list/html/index.html +11 -11
  200. package/dist/docs/components/simple-list/index.html +9 -9
  201. package/dist/docs/components/simple-list/react/index.html +6 -6
  202. package/dist/docs/components/skeleton/html/index.html +13 -13
  203. package/dist/docs/components/skeleton/html-demos/index.html +3 -3
  204. package/dist/docs/components/skeleton/index.html +10 -10
  205. package/dist/docs/components/skeleton/react/index.html +10 -10
  206. package/dist/docs/components/skip-to-content/html/index.html +13 -13
  207. package/dist/docs/components/skip-to-content/index.html +6 -6
  208. package/dist/docs/components/skip-to-content/react/index.html +6 -6
  209. package/dist/docs/components/slider/html/index.html +14 -14
  210. package/dist/docs/components/slider/index.html +22 -22
  211. package/dist/docs/components/slider/react/index.html +22 -22
  212. package/dist/docs/components/spinner/html/index.html +16 -16
  213. package/dist/docs/components/spinner/index.html +9 -9
  214. package/dist/docs/components/spinner/react/index.html +6 -6
  215. package/dist/docs/components/switch/html/index.html +17 -17
  216. package/dist/docs/components/switch/index.html +12 -12
  217. package/dist/docs/components/switch/react/index.html +12 -12
  218. package/dist/docs/components/table/html/index.html +129 -129
  219. package/dist/docs/components/table/html-demos/index.html +33 -33
  220. package/dist/docs/components/table/index.html +129 -129
  221. package/dist/docs/components/tabs/html/index.html +67 -67
  222. package/dist/docs/components/tabs/html-demos/index.html +13 -13
  223. package/dist/docs/components/tabs/index.html +77 -77
  224. package/dist/docs/components/tabs/react/index.html +77 -77
  225. package/dist/docs/components/text-input/index.html +13 -13
  226. package/dist/docs/components/text-input/react/index.html +13 -13
  227. package/dist/docs/components/text-input-group/html/index.html +27 -27
  228. package/dist/docs/components/text-input-group/index.html +16 -16
  229. package/dist/docs/components/tile/html-deprecated/index.html +11 -11
  230. package/dist/docs/components/tile/index.html +23 -23
  231. package/dist/docs/components/tile/react-deprecated/index.html +26 -26
  232. package/dist/docs/components/time-picker/index.html +13 -13
  233. package/dist/docs/components/time-picker/react/index.html +13 -13
  234. package/dist/docs/components/timestamp/html/index.html +8 -8
  235. package/dist/docs/components/timestamp/index.html +21 -21
  236. package/dist/docs/components/timestamp/react/index.html +21 -21
  237. package/dist/docs/components/title/html/index.html +10 -10
  238. package/dist/docs/components/title/index.html +4 -4
  239. package/dist/docs/components/toggle-group/html/index.html +9 -9
  240. package/dist/docs/components/toggle-group/index.html +18 -18
  241. package/dist/docs/components/toolbar/html/index.html +55 -55
  242. package/dist/docs/components/toolbar/html-demos/index.html +12 -12
  243. package/dist/docs/components/toolbar/index.html +42 -42
  244. package/dist/docs/components/tooltip/html/index.html +17 -17
  245. package/dist/docs/components/tooltip/index.html +12 -12
  246. package/dist/docs/components/tree-view/html/index.html +21 -21
  247. package/dist/docs/components/tree-view/index.html +23 -23
  248. package/dist/docs/components/truncate/html/index.html +13 -13
  249. package/dist/docs/components/truncate/index.html +13 -13
  250. package/dist/docs/components/wizard/html/index.html +29 -29
  251. package/dist/docs/components/wizard/html-demos/index.html +22 -22
  252. package/dist/docs/components/wizard/index.html +32 -32
  253. package/dist/docs/components/wizard/react-deprecated/index.html +22 -22
  254. package/dist/docs/layouts/bullseye/html/index.html +11 -11
  255. package/dist/docs/layouts/bullseye/index.html +11 -11
  256. package/dist/docs/layouts/flex/html/index.html +87 -87
  257. package/dist/docs/layouts/flex/index.html +87 -87
  258. package/dist/docs/layouts/gallery/html/index.html +17 -17
  259. package/dist/docs/layouts/gallery/index.html +17 -17
  260. package/dist/docs/layouts/grid/html/index.html +22 -22
  261. package/dist/docs/layouts/grid/index.html +22 -22
  262. package/dist/docs/layouts/level/html/index.html +10 -10
  263. package/dist/docs/layouts/level/index.html +10 -10
  264. package/dist/docs/layouts/split/html/index.html +13 -13
  265. package/dist/docs/layouts/split/index.html +13 -13
  266. package/dist/docs/layouts/stack/html/index.html +12 -12
  267. package/dist/docs/layouts/stack/index.html +12 -12
  268. package/dist/docs/patterns/card-view/html-demos/index.html +4 -4
  269. package/dist/docs/patterns/card-view/index.html +4 -4
  270. package/dist/docs/patterns/dashboard/html-demos/index.html +4 -4
  271. package/dist/docs/patterns/dashboard/index.html +4 -4
  272. package/dist/docs/patterns/primary-detail/html-demos/index.html +17 -17
  273. package/dist/docs/patterns/primary-detail/index.html +17 -17
  274. package/dist/docs/utility-classes/accessibility/html/index.html +11 -11
  275. package/dist/docs/utility-classes/accessibility/index.html +11 -11
  276. package/dist/docs/utility-classes/alignment/html/index.html +7 -7
  277. package/dist/docs/utility-classes/alignment/index.html +7 -7
  278. package/dist/docs/utility-classes/background-color/html/index.html +9 -9
  279. package/dist/docs/utility-classes/background-color/index.html +9 -9
  280. package/dist/docs/utility-classes/box-shadow/html/index.html +12 -12
  281. package/dist/docs/utility-classes/box-shadow/index.html +12 -12
  282. package/dist/docs/utility-classes/display/html/index.html +18 -18
  283. package/dist/docs/utility-classes/display/index.html +18 -18
  284. package/dist/docs/utility-classes/flex/html/index.html +17 -17
  285. package/dist/docs/utility-classes/flex/index.html +17 -17
  286. package/dist/docs/utility-classes/float/html/index.html +7 -7
  287. package/dist/docs/utility-classes/float/index.html +7 -7
  288. package/dist/docs/utility-classes/sizing/html/index.html +28 -28
  289. package/dist/docs/utility-classes/sizing/index.html +28 -28
  290. package/dist/docs/utility-classes/spacing/html/index.html +12 -12
  291. package/dist/docs/utility-classes/spacing/index.html +12 -12
  292. package/dist/docs/utility-classes/text/html/index.html +18 -18
  293. package/dist/docs/utility-classes/text/index.html +18 -18
  294. package/jest.config.ts +1 -1
  295. package/package.json +5 -4
  296. package/src/pages/api/[version]/[section]/[page]/[tab].ts +11 -3
  297. package/src/pages/api/[version]/[section]/[page].ts +19 -11
  298. package/src/pages/api/[version]/[section].ts +18 -9
  299. package/src/pages/api/[version].ts +16 -9
  300. package/src/pages/api/openapi.json.ts +14 -3
  301. package/src/pages/api/versions.ts +11 -5
  302. package/src/pages/apiIndex.json.ts +27 -0
  303. package/src/utils/apiIndex/fetch.ts +20 -0
  304. package/src/utils/apiIndex/generate.ts +9 -5
  305. package/src/utils/apiIndex/get.ts +3 -1
  306. package/src/utils/getOutputDir.ts +19 -0
  307. package/src/utils/packageUtils.ts +5 -3
  308. package/tsconfig.json +9 -4
  309. package/dist/docs/_worker.js/chunks/apiIndex_rjiPwa_V.mjs +0 -9
  310. package/dist/docs/_worker.js/manifest_BOIk4wkr.mjs +0 -100
  311. /package/dist/docs/_worker.js/chunks/{_astro_data-layer-content_BIIrAXF8.mjs → _astro_data-layer-content_DGZXfKa-.mjs} +0 -0
  312. /package/dist/docs/_worker.js/chunks/{content-modules_BnWiSXLh.mjs → content-modules_Db1avyLw.mjs} +0 -0
@@ -0,0 +1,20 @@
1
+ import type { ApiIndex } from './generate'
2
+
3
+ /**
4
+ * Fetches the API index from the server as a static asset
5
+ * Used by API routes at runtime instead of importing the JSON statically
6
+ *
7
+ * @param url - The URL object from the API route context
8
+ * @returns Promise resolving to the API index structure
9
+ */
10
+ export async function fetchApiIndex(url: URL): Promise<ApiIndex> {
11
+ const apiIndexUrl = new URL('/apiIndex.json', url.origin)
12
+ const response = await fetch(apiIndexUrl)
13
+
14
+ if (!response.ok) {
15
+ throw new Error(`Failed to load API index: ${response.status} ${response.statusText}`)
16
+ }
17
+
18
+ const data = (await response.json()) as ApiIndex
19
+ return data
20
+ }
@@ -1,10 +1,12 @@
1
1
  /* eslint-disable no-console */
2
2
  import { join } from 'path'
3
- import { writeFile } from 'fs/promises'
3
+ import { writeFile, mkdir } from 'fs/promises'
4
4
  import { getCollection } from 'astro:content'
5
5
  import type { CollectionKey } from 'astro:content'
6
6
  import { content } from '../../content'
7
- import { kebabCase, getDefaultTab, addDemosOrDeprecated } from '../index'
7
+ import { kebabCase, addDemosOrDeprecated } from '../index'
8
+ import { getDefaultTabForApi } from '../packageUtils'
9
+ import { getOutputDir } from '../getOutputDir'
8
10
 
9
11
  const SOURCE_ORDER: Record<string, number> = {
10
12
  react: 1,
@@ -107,7 +109,7 @@ export async function generateApiIndex(): Promise<ApiIndex> {
107
109
 
108
110
  // Collect tab
109
111
  const entryTab =
110
- entry.data.tab || entry.data.source || getDefaultTab(entry.filePath)
112
+ entry.data.tab || entry.data.source || getDefaultTabForApi(entry.filePath)
111
113
  const tab = addDemosOrDeprecated(entryTab, entry.id)
112
114
  if (!pageTabs[pageKey]) {
113
115
  pageTabs[pageKey] = new Set()
@@ -131,15 +133,17 @@ export async function generateApiIndex(): Promise<ApiIndex> {
131
133
  }
132
134
 
133
135
  /**
134
- * Writes API index to src/apiIndex.json
136
+ * Writes API index to a apiIndex.json file in the user defined output directory
135
137
  * This file is used by server-side API routes to avoid runtime getCollection() calls
136
138
  *
137
139
  * @param index - The API index structure to write
138
140
  */
139
141
  export async function writeApiIndex(index: ApiIndex): Promise<void> {
140
- const indexPath = join(process.cwd(), 'src', 'apiIndex.json')
142
+ const outputDir = await getOutputDir()
143
+ const indexPath = join(outputDir, 'apiIndex.json')
141
144
 
142
145
  try {
146
+ await mkdir(outputDir, { recursive: true })
143
147
  await writeFile(indexPath, JSON.stringify(index, null, 2))
144
148
  console.log(`✓ Generated API index with ${index.versions.length} versions`)
145
149
  } catch (error) {
@@ -1,6 +1,7 @@
1
1
  import { join } from 'path'
2
2
  import { readFile } from 'fs/promises'
3
3
  import type { ApiIndex } from './generate'
4
+ import { getOutputDir } from '../getOutputDir'
4
5
 
5
6
  /**
6
7
  * Reads and parses the API index file
@@ -10,7 +11,8 @@ import type { ApiIndex } from './generate'
10
11
  * @throws Error if index file is not found, contains invalid JSON, or has invalid structure
11
12
  */
12
13
  export async function getApiIndex(): Promise<ApiIndex> {
13
- const indexPath = join(process.cwd(), 'src', 'apiIndex.json')
14
+ const outputDir = await getOutputDir()
15
+ const indexPath = join(outputDir, 'apiIndex.json')
14
16
 
15
17
  try {
16
18
  const content = await readFile(indexPath, 'utf-8')
@@ -0,0 +1,19 @@
1
+ import { join } from 'path'
2
+ import { getConfig } from '../../cli/getConfig'
3
+
4
+ export async function getOutputDir(): Promise<string> {
5
+ const config = await getConfig(join(process.cwd(), 'pf-docs.config.mjs'))
6
+ if (!config) {
7
+ throw new Error(
8
+ 'No config found, please run the `setup` command or manually create a pf-docs.config.mjs file',
9
+ )
10
+ }
11
+
12
+ if (!config.outputDir) {
13
+ throw new Error(
14
+ 'No outputDir found in config file, an output directory must be defined in your config file e.g. "dist"',
15
+ )
16
+ }
17
+
18
+ return config.outputDir
19
+ }
@@ -61,7 +61,9 @@ export const getDefaultTab = (filePath?: string): string => {
61
61
  const packageName = getPackageName(filePath)
62
62
  const tabBase = getTabBase(packageName)
63
63
 
64
- const tab = addDemosOrDeprecated(tabBase, filePath)
65
-
66
- return tab
64
+ return addDemosOrDeprecated(tabBase, filePath)
67
65
  }
66
+
67
+ // This function is specifically for API routes where we need a fallback tab name
68
+ // to ensure content is always accessible even when the default tab logic doesn't apply
69
+ export const getDefaultTabForApi = (filePath?: string): string => getDefaultTab(filePath) || 'text'
package/tsconfig.json CHANGED
@@ -7,8 +7,13 @@
7
7
  "module": "ESNext",
8
8
  "moduleResolution": "bundler",
9
9
  "importHelpers": true,
10
- "verbatimModuleSyntax": false,
10
+ "verbatimModuleSyntax": false
11
11
  },
12
- "include": [".astro/types.d.ts", "**/*"],
13
- "exclude": ["dist"]
14
- }
12
+ "include": [
13
+ ".astro/types.d.ts",
14
+ "**/*"
15
+ ],
16
+ "exclude": [
17
+ "dist"
18
+ ]
19
+ }
@@ -1,9 +0,0 @@
1
- globalThis.process ??= {}; globalThis.process.env ??= {};
2
- const versions = [];
3
- const sections = {};
4
- const pages = {};
5
- const tabs = {};
6
- const index = {
7
- versions};
8
-
9
- export { index as i, pages as p, sections as s, tabs as t, versions as v };