forgebook 0.1.8 → 0.3.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 (1144) hide show
  1. package/README.md +987 -28
  2. package/dist/bin/forgebook/agentClient.d.ts +30 -1
  3. package/dist/bin/forgebook/agentClient.js +155 -14
  4. package/dist/bin/forgebook/agentLoopCommands.d.mts +0 -1
  5. package/dist/bin/forgebook/agentLoopCommands.mjs +164 -40
  6. package/dist/bin/forgebook/agentText.d.ts +76 -5
  7. package/dist/bin/forgebook/agentText.js +197 -11
  8. package/dist/bin/forgebook/agents.md +158 -9
  9. package/dist/bin/forgebook/agentsText.d.ts +7 -3
  10. package/dist/bin/forgebook/agentsText.js +7 -3
  11. package/dist/bin/forgebook/builtCatalogue.d.ts +31 -0
  12. package/dist/bin/forgebook/builtCatalogue.js +96 -0
  13. package/dist/bin/forgebook/catalogueCommands.d.ts +22 -3
  14. package/dist/bin/forgebook/catalogueCommands.js +21 -2
  15. package/dist/bin/forgebook/catalogueVite.d.ts +51 -9
  16. package/dist/bin/forgebook/catalogueVite.js +95 -9
  17. package/dist/bin/forgebook/checkCodeRun.d.ts +8 -0
  18. package/dist/bin/forgebook/checkCodeRun.js +27 -0
  19. package/dist/bin/forgebook/commandServer.d.ts +11 -0
  20. package/dist/bin/forgebook/commandServer.js +39 -0
  21. package/dist/bin/forgebook/compileCache.d.ts +7 -0
  22. package/dist/bin/forgebook/compileCache.js +24 -0
  23. package/dist/bin/forgebook/devCommands.d.mts +14 -0
  24. package/dist/bin/forgebook/devCommands.mjs +104 -0
  25. package/dist/bin/forgebook/errorsRun.d.ts +0 -1
  26. package/dist/bin/forgebook/errorsRun.js +0 -1
  27. package/dist/bin/forgebook/forgebook.d.mts +0 -1
  28. package/dist/bin/forgebook/forgebook.mjs +18 -302
  29. package/dist/bin/forgebook/forgebookCommands.d.mts +1 -0
  30. package/dist/bin/forgebook/forgebookCommands.mjs +292 -0
  31. package/dist/bin/forgebook/importers/storybook.d.ts +10 -4
  32. package/dist/bin/forgebook/importers/storybook.js +71 -45
  33. package/dist/bin/forgebook/importers/storybookAngular.d.ts +15 -0
  34. package/dist/bin/forgebook/importers/storybookAngular.js +97 -0
  35. package/dist/bin/forgebook/importers/storybookFrameworks.d.ts +53 -0
  36. package/dist/bin/forgebook/importers/storybookFrameworks.js +180 -0
  37. package/dist/bin/forgebook/importers/storybookReactNative.d.ts +40 -0
  38. package/dist/bin/forgebook/importers/storybookReactNative.js +179 -0
  39. package/dist/bin/forgebook/initCommands.d.mts +0 -1
  40. package/dist/bin/forgebook/initCommands.mjs +23 -12
  41. package/dist/bin/forgebook/initConfig.d.ts +0 -1
  42. package/dist/bin/forgebook/initConfig.js +17 -3
  43. package/dist/bin/forgebook/mcpCommand.d.mts +8 -0
  44. package/dist/bin/forgebook/mcpCommand.mjs +99 -0
  45. package/dist/bin/forgebook/mcpPreview.d.ts +32 -0
  46. package/dist/bin/forgebook/mcpPreview.js +107 -0
  47. package/dist/bin/forgebook/mcpToolParts.d.ts +28 -0
  48. package/dist/bin/forgebook/mcpToolParts.js +24 -0
  49. package/dist/bin/forgebook/mcpTools.d.ts +12 -6
  50. package/dist/bin/forgebook/mcpTools.js +148 -27
  51. package/dist/bin/forgebook/newStories.d.ts +2 -3
  52. package/dist/bin/forgebook/newStories.js +4 -3
  53. package/dist/bin/forgebook/newStoriesFile.d.ts +3 -4
  54. package/dist/bin/forgebook/newStoriesFile.js +30 -13
  55. package/dist/bin/forgebook/pageTools.d.ts +8 -0
  56. package/dist/bin/forgebook/pageTools.js +71 -0
  57. package/dist/bin/forgebook/pagesCommands.d.mts +14 -0
  58. package/dist/bin/forgebook/pagesCommands.mjs +109 -0
  59. package/dist/bin/forgebook/prebundleChild.d.ts +1 -0
  60. package/dist/bin/forgebook/prebundleChild.js +34 -0
  61. package/dist/bin/forgebook/prebundleRun.d.ts +22 -0
  62. package/dist/bin/forgebook/prebundleRun.js +49 -0
  63. package/dist/bin/forgebook/prebundleStart.d.ts +44 -0
  64. package/dist/bin/forgebook/prebundleStart.js +82 -0
  65. package/dist/bin/forgebook/semanticOptions.d.ts +45 -0
  66. package/dist/bin/forgebook/semanticOptions.js +36 -0
  67. package/dist/bin/forgebook/storyCheckCommands.d.mts +13 -0
  68. package/dist/bin/forgebook/storyCheckCommands.mjs +69 -0
  69. package/dist/bin/forgebook/storyCheckRun.d.ts +40 -6
  70. package/dist/bin/forgebook/storyCheckRun.js +90 -17
  71. package/dist/bin/forgebook/tokensRun.d.ts +41 -0
  72. package/dist/bin/forgebook/tokensRun.js +42 -0
  73. package/dist/bin/forgebook/touchWindowRun.d.ts +0 -1
  74. package/dist/bin/forgebook/touchWindowRun.js +0 -1
  75. package/dist/bin/forgebook/visualCommands.d.mts +37 -0
  76. package/dist/bin/forgebook/visualCommands.mjs +162 -0
  77. package/dist/bin/forgebook/viteCache.d.ts +48 -0
  78. package/dist/bin/forgebook/viteCache.js +112 -0
  79. package/dist/bin/forgebook-docs/catalogueDocs.d.ts +1 -2
  80. package/dist/bin/forgebook-docs/catalogueDocs.js +8 -5
  81. package/dist/bin/forgebook-docs/catalogueDocs.types.d.ts +22 -3
  82. package/dist/bin/forgebook-docs/catalogueDocs.types.js +0 -1
  83. package/dist/bin/forgebook-docs/catalogueMarkdown.d.ts +0 -1
  84. package/dist/bin/forgebook-docs/catalogueMarkdown.js +67 -19
  85. package/dist/bin/forgebook-docs/catalogueOptions.d.ts +1 -2
  86. package/dist/bin/forgebook-docs/catalogueOptions.js +8 -2
  87. package/dist/bin/forgebook-docs/collectDocs.d.ts +4 -4
  88. package/dist/bin/forgebook-docs/collectDocs.js +122 -30
  89. package/dist/bin/forgebook-docs/forgebook-docs.d.mts +0 -1
  90. package/dist/bin/forgebook-docs/forgebook-docs.mjs +0 -1
  91. package/dist/bin/forgebook-docs/llmsText.d.ts +5 -1
  92. package/dist/bin/forgebook-docs/llmsText.js +5 -2
  93. package/dist/bin/forgebook-docs/moduleDocs.d.ts +0 -1
  94. package/dist/bin/forgebook-docs/moduleDocs.js +0 -1
  95. package/dist/bin/forgebook-docs/sassDocs.d.ts +0 -1
  96. package/dist/bin/forgebook-docs/sassDocs.js +0 -1
  97. package/dist/bin/forgebook-texts/forgebook-texts.d.mts +0 -1
  98. package/dist/bin/forgebook-texts/forgebook-texts.mjs +1 -2
  99. package/dist/bin/forgebook-texts/storyTextsReport.d.ts +0 -1
  100. package/dist/bin/forgebook-texts/storyTextsReport.js +0 -1
  101. package/dist/bin/forgebook-texts/storyTextsReport.types.d.ts +0 -1
  102. package/dist/bin/forgebook-texts/storyTextsReport.types.js +0 -1
  103. package/dist/bin/frameworkDocs.d.ts +0 -1
  104. package/dist/bin/frameworkDocs.js +0 -1
  105. package/dist/src/a11y.d.ts +0 -1
  106. package/dist/src/a11y.js +0 -1
  107. package/dist/src/addressArgs.d.ts +74 -0
  108. package/dist/src/addressArgs.js +109 -0
  109. package/dist/src/addressTexts.d.ts +35 -0
  110. package/dist/src/addressTexts.js +51 -0
  111. package/dist/src/argTypes.d.ts +0 -1
  112. package/dist/src/argTypes.js +2 -2
  113. package/dist/src/argsProps.d.ts +32 -0
  114. package/dist/src/argsProps.js +69 -0
  115. package/dist/src/audiences.d.ts +17 -0
  116. package/dist/src/audiences.js +15 -0
  117. package/dist/src/backdrops.d.ts +39 -40
  118. package/dist/src/backdrops.js +37 -174
  119. package/dist/src/catalogue.d.ts +103 -24
  120. package/dist/src/catalogue.js +78 -20
  121. package/dist/src/codeLiteral.d.ts +41 -0
  122. package/dist/src/codeLiteral.js +51 -0
  123. package/dist/src/componentDocs.d.ts +57 -1
  124. package/dist/src/componentDocs.js +20 -3
  125. package/dist/src/controlKeys.d.ts +0 -1
  126. package/dist/src/controlKeys.js +0 -1
  127. package/dist/src/deviceDrawing.d.ts +114 -0
  128. package/dist/src/deviceDrawing.js +358 -0
  129. package/dist/src/deviceMenuView.d.ts +17 -0
  130. package/dist/src/deviceMenuView.js +22 -0
  131. package/dist/src/devicePicture.d.ts +57 -0
  132. package/dist/src/devicePicture.js +104 -0
  133. package/dist/src/deviceView.d.ts +172 -0
  134. package/dist/src/deviceView.js +111 -0
  135. package/dist/src/devices.d.ts +115 -0
  136. package/dist/src/devices.js +135 -0
  137. package/dist/src/docAnchors.d.ts +27 -0
  138. package/dist/src/docAnchors.js +33 -0
  139. package/dist/src/docPages.d.ts +203 -0
  140. package/dist/src/docPages.js +169 -0
  141. package/dist/src/embed.d.ts +32 -0
  142. package/dist/src/embed.js +24 -0
  143. package/dist/src/embedCode.d.ts +31 -0
  144. package/dist/src/embedCode.js +88 -0
  145. package/dist/src/frame/backdropPictures.d.ts +29 -0
  146. package/dist/src/frame/backdropPictures.js +187 -0
  147. package/dist/src/frame/checkStory.d.ts +6 -3
  148. package/dist/src/frame/checkStory.js +76 -5
  149. package/dist/src/frame/followTouch.d.ts +9 -0
  150. package/dist/src/frame/followTouch.js +43 -0
  151. package/dist/src/frame/frame.css +8 -3
  152. package/dist/src/frame/frameClock.d.ts +0 -1
  153. package/dist/src/frame/frameClock.js +0 -1
  154. package/dist/src/frame/frameStatus.d.ts +2 -1
  155. package/dist/src/frame/frameStatus.js +2 -1
  156. package/dist/src/frame/frameView.d.ts +0 -1
  157. package/dist/src/frame/frameView.js +1 -2
  158. package/dist/src/frame/matrixLayout.d.ts +0 -1
  159. package/dist/src/frame/matrixLayout.js +0 -1
  160. package/dist/src/frame/measureTools.d.ts +0 -1
  161. package/dist/src/frame/measureTools.js +0 -1
  162. package/dist/src/frame/mountFrame.d.ts +10 -3
  163. package/dist/src/frame/mountFrame.js +184 -66
  164. package/dist/src/frame/playStory.d.ts +0 -1
  165. package/dist/src/frame/playStory.js +0 -1
  166. package/dist/src/frame/pluginFrames.d.ts +31 -0
  167. package/dist/src/frame/pluginFrames.js +23 -0
  168. package/dist/src/frame/renderer.d.ts +50 -12
  169. package/dist/src/frame/renderer.js +27 -6
  170. package/dist/src/frame/settle.d.ts +0 -1
  171. package/dist/src/frame/settle.js +0 -1
  172. package/dist/src/frame/shellChannel.d.ts +47 -0
  173. package/dist/src/frame/shellChannel.js +39 -0
  174. package/dist/src/frame/spillOutline.d.ts +0 -1
  175. package/dist/src/frame/spillOutline.js +0 -1
  176. package/dist/src/frame/staleModule.d.ts +14 -2
  177. package/dist/src/frame/staleModule.js +19 -2
  178. package/dist/src/frame/storyCanvas.d.ts +0 -1
  179. package/dist/src/frame/storyCanvas.js +0 -1
  180. package/dist/src/frame/storyHooks.d.ts +0 -1
  181. package/dist/src/frame/storyHooks.js +0 -1
  182. package/dist/src/frame/storyModule.d.ts +13 -2
  183. package/dist/src/frame/storyModule.js +45 -3
  184. package/dist/src/frame/storyRun.d.ts +21 -4
  185. package/dist/src/frame/storyRun.js +100 -19
  186. package/dist/src/frame/touchCaret.d.ts +43 -0
  187. package/dist/src/frame/touchCaret.js +195 -0
  188. package/dist/src/frame/touchDots.d.ts +0 -1
  189. package/dist/src/frame/touchDots.js +0 -1
  190. package/dist/src/frame/touchEvents.d.ts +3 -3
  191. package/dist/src/frame/touchEvents.js +17 -19
  192. package/dist/src/frame/touchGesture.d.ts +0 -1
  193. package/dist/src/frame/touchGesture.js +0 -1
  194. package/dist/src/frame/touchLayer.d.ts +3 -3
  195. package/dist/src/frame/touchLayer.js +52 -37
  196. package/dist/src/frame/touchScroll.d.ts +0 -1
  197. package/dist/src/frame/touchScroll.js +0 -1
  198. package/dist/src/frameOrigins.d.ts +62 -0
  199. package/dist/src/frameOrigins.js +49 -0
  200. package/dist/src/hotModules.d.ts +48 -0
  201. package/dist/src/hotModules.js +53 -0
  202. package/dist/src/jsxCode.d.ts +22 -0
  203. package/dist/src/jsxCode.js +36 -0
  204. package/dist/src/languages.d.ts +0 -1
  205. package/dist/src/languages.js +0 -1
  206. package/dist/src/liveErrors.d.ts +0 -1
  207. package/dist/src/liveErrors.js +0 -1
  208. package/dist/src/matrix.d.ts +0 -1
  209. package/dist/src/matrix.js +0 -1
  210. package/dist/src/messages.d.ts +28 -2
  211. package/dist/src/messages.js +24 -3
  212. package/dist/src/namedValues.d.ts +11 -1
  213. package/dist/src/namedValues.js +25 -2
  214. package/dist/src/namedViews.d.ts +1 -13
  215. package/dist/src/namedViews.js +30 -7
  216. package/dist/src/packedText.d.ts +21 -0
  217. package/dist/src/packedText.js +36 -0
  218. package/dist/src/pageAddress.d.ts +26 -0
  219. package/dist/src/pageAddress.js +39 -0
  220. package/dist/src/pageConfig.d.ts +3 -1
  221. package/dist/src/pageConfig.js +0 -1
  222. package/dist/src/pageTree.d.ts +79 -0
  223. package/dist/src/pageTree.js +108 -0
  224. package/dist/src/playTrace.d.ts +0 -1
  225. package/dist/src/playTrace.js +0 -1
  226. package/dist/src/plugin.d.ts +230 -0
  227. package/dist/src/plugin.js +12 -0
  228. package/dist/src/pluginReact.d.ts +23 -0
  229. package/dist/src/pluginReact.js +24 -0
  230. package/dist/src/previewRelay.d.ts +40 -0
  231. package/dist/src/previewRelay.js +69 -0
  232. package/dist/src/previewTexts.d.ts +26 -0
  233. package/dist/src/previewTexts.js +33 -0
  234. package/dist/src/previewView.d.ts +31 -0
  235. package/dist/src/previewView.js +264 -0
  236. package/dist/src/propGroups.d.ts +109 -0
  237. package/dist/src/propGroups.js +113 -0
  238. package/dist/src/realTouch.d.ts +1 -2
  239. package/dist/src/realTouch.js +1 -2
  240. package/dist/src/safeAreaParameter.d.ts +42 -0
  241. package/dist/src/safeAreaParameter.js +50 -0
  242. package/dist/src/search.d.ts +154 -0
  243. package/dist/src/search.js +265 -0
  244. package/dist/src/searchIndex.d.ts +61 -0
  245. package/dist/src/searchIndex.js +55 -0
  246. package/dist/src/searchMarks.d.ts +29 -0
  247. package/dist/src/searchMarks.js +165 -0
  248. package/dist/src/searchMatch.d.ts +58 -0
  249. package/dist/src/searchMatch.js +127 -0
  250. package/dist/src/shell/A11yTab.d.ts +0 -7
  251. package/dist/src/shell/A11yTab.js +4 -15
  252. package/dist/src/shell/AnchorScroll.d.ts +25 -0
  253. package/dist/src/shell/AnchorScroll.js +10 -0
  254. package/dist/src/shell/ApiReference.d.ts +16 -4
  255. package/dist/src/shell/ApiReference.js +82 -20
  256. package/dist/src/shell/AppearanceMenu.d.ts +1 -2
  257. package/dist/src/shell/AppearanceMenu.js +8 -5
  258. package/dist/src/shell/AudienceSections.d.ts +106 -0
  259. package/dist/src/shell/AudienceSections.js +154 -0
  260. package/dist/src/shell/AuthoredHome.d.ts +37 -0
  261. package/dist/src/shell/AuthoredHome.js +96 -0
  262. package/dist/src/shell/BoxWidth.d.ts +0 -1
  263. package/dist/src/shell/BoxWidth.js +0 -1
  264. package/dist/src/shell/ClockBar.d.ts +19 -0
  265. package/dist/src/shell/ClockBar.js +15 -0
  266. package/dist/src/shell/ClockControls.d.ts +5 -9
  267. package/dist/src/shell/ClockControls.js +13 -16
  268. package/dist/src/shell/Code.d.ts +0 -1
  269. package/dist/src/shell/Code.js +0 -1
  270. package/dist/src/shell/CodeTab.d.ts +0 -1
  271. package/dist/src/shell/CodeTab.js +2 -2
  272. package/dist/src/shell/CodeText.d.ts +0 -1
  273. package/dist/src/shell/CodeText.js +0 -1
  274. package/dist/src/shell/CompareGrid.d.ts +37 -0
  275. package/dist/src/shell/CompareGrid.js +24 -0
  276. package/dist/src/shell/ComponentPage.d.ts +48 -7
  277. package/dist/src/shell/ComponentPage.js +101 -59
  278. package/dist/src/shell/ControlKeyField.d.ts +0 -1
  279. package/dist/src/shell/ControlKeyField.js +3 -4
  280. package/dist/src/shell/ControlRow.d.ts +4 -4
  281. package/dist/src/shell/ControlRow.js +5 -5
  282. package/dist/src/shell/DeviceControl.d.ts +31 -0
  283. package/dist/src/shell/DeviceControl.js +33 -0
  284. package/dist/src/shell/DeviceSlot.d.ts +114 -0
  285. package/dist/src/shell/DeviceSlot.js +134 -0
  286. package/dist/src/shell/DocBlocks.d.ts +100 -0
  287. package/dist/src/shell/DocBlocks.js +206 -0
  288. package/dist/src/shell/DocContainers.d.ts +70 -0
  289. package/dist/src/shell/DocContainers.js +94 -0
  290. package/dist/src/shell/DocContents.d.ts +29 -0
  291. package/dist/src/shell/DocContents.js +88 -0
  292. package/dist/src/shell/DocPage.d.ts +69 -0
  293. package/dist/src/shell/DocPage.js +141 -0
  294. package/dist/src/shell/Dock.d.ts +1 -2
  295. package/dist/src/shell/Dock.js +1 -2
  296. package/dist/src/shell/DroppedArgsList.d.ts +26 -0
  297. package/dist/src/shell/DroppedArgsList.js +8 -0
  298. package/dist/src/shell/DroppedArgsNote.d.ts +14 -0
  299. package/dist/src/shell/DroppedArgsNote.js +10 -0
  300. package/dist/src/shell/EmbedButton.d.ts +19 -0
  301. package/dist/src/shell/EmbedButton.js +96 -0
  302. package/dist/src/shell/EmbedPage.d.ts +23 -0
  303. package/dist/src/shell/EmbedPage.js +168 -0
  304. package/dist/src/shell/EmbedPanel.d.ts +25 -0
  305. package/dist/src/shell/EmbedPanel.js +46 -0
  306. package/dist/src/shell/EventsTab.d.ts +0 -1
  307. package/dist/src/shell/EventsTab.js +2 -3
  308. package/dist/src/shell/Example.d.ts +20 -2
  309. package/dist/src/shell/Example.js +75 -22
  310. package/dist/src/shell/FrameView.d.ts +1 -2
  311. package/dist/src/shell/FrameView.js +4 -4
  312. package/dist/src/shell/HomePage.d.ts +78 -4
  313. package/dist/src/shell/HomePage.js +53 -14
  314. package/dist/src/shell/HomePieces.d.ts +40 -0
  315. package/dist/src/shell/HomePieces.js +29 -0
  316. package/dist/src/shell/InfoTip.d.ts +0 -1
  317. package/dist/src/shell/InfoTip.js +0 -1
  318. package/dist/src/shell/InteractionsTab.d.ts +0 -7
  319. package/dist/src/shell/InteractionsTab.js +3 -9
  320. package/dist/src/shell/LazyHost.d.ts +16 -0
  321. package/dist/src/shell/LazyHost.js +42 -0
  322. package/dist/src/shell/LazyPage.d.ts +24 -0
  323. package/dist/src/shell/LazyPage.js +9 -0
  324. package/dist/src/shell/LogicMark.d.ts +0 -1
  325. package/dist/src/shell/LogicMark.js +0 -1
  326. package/dist/src/shell/MatrixPicker.d.ts +0 -1
  327. package/dist/src/shell/MatrixPicker.js +0 -1
  328. package/dist/src/shell/NamedViews.d.ts +0 -1
  329. package/dist/src/shell/NamedViews.js +4 -5
  330. package/dist/src/shell/PackageHtml.d.ts +0 -1
  331. package/dist/src/shell/PackageHtml.js +0 -1
  332. package/dist/src/shell/PartsTab.d.ts +0 -7
  333. package/dist/src/shell/PartsTab.js +3 -13
  334. package/dist/src/shell/PinnedControl.d.ts +0 -1
  335. package/dist/src/shell/PinnedControl.js +2 -2
  336. package/dist/src/shell/PluginBlockHost.d.ts +46 -0
  337. package/dist/src/shell/PluginBlockHost.js +39 -0
  338. package/dist/src/shell/PluginTabHost.d.ts +32 -0
  339. package/dist/src/shell/PluginTabHost.js +25 -0
  340. package/dist/src/shell/PluginViewHost.d.ts +37 -0
  341. package/dist/src/shell/PluginViewHost.js +89 -0
  342. package/dist/src/shell/PropFields.d.ts +0 -1
  343. package/dist/src/shell/PropFields.js +0 -1
  344. package/dist/src/shell/PropRows.d.ts +42 -0
  345. package/dist/src/shell/PropRows.js +60 -0
  346. package/dist/src/shell/PropsTab.d.ts +24 -11
  347. package/dist/src/shell/PropsTab.js +31 -45
  348. package/dist/src/shell/RequiredFirstSwitch.d.ts +16 -0
  349. package/dist/src/shell/RequiredFirstSwitch.js +8 -0
  350. package/dist/src/shell/SearchPanel.d.ts +63 -0
  351. package/dist/src/shell/SearchPanel.js +209 -0
  352. package/dist/src/shell/Segmented.d.ts +0 -1
  353. package/dist/src/shell/Segmented.js +0 -1
  354. package/dist/src/shell/Shell.d.ts +34 -6
  355. package/dist/src/shell/Shell.js +271 -70
  356. package/dist/src/shell/Sidebar.d.ts +20 -5
  357. package/dist/src/shell/Sidebar.js +23 -56
  358. package/dist/src/shell/SidebarDocs.d.ts +38 -0
  359. package/dist/src/shell/SidebarDocs.js +30 -0
  360. package/dist/src/shell/SidebarEntries.d.ts +9 -1
  361. package/dist/src/shell/SidebarEntries.js +1 -2
  362. package/dist/src/shell/SidebarHandle.d.ts +0 -1
  363. package/dist/src/shell/SidebarHandle.js +0 -1
  364. package/dist/src/shell/SidebarSearch.d.ts +40 -0
  365. package/dist/src/shell/SidebarSearch.js +85 -0
  366. package/dist/src/shell/SignatureReference.d.ts +0 -1
  367. package/dist/src/shell/SignatureReference.js +1 -2
  368. package/dist/src/shell/Stage.d.ts +9 -4
  369. package/dist/src/shell/Stage.js +116 -75
  370. package/dist/src/shell/StageCompare.d.ts +14 -0
  371. package/dist/src/shell/StageCompare.js +11 -0
  372. package/dist/src/shell/StageTools.d.ts +0 -1
  373. package/dist/src/shell/StageTools.js +0 -1
  374. package/dist/src/shell/StageViewport.d.ts +7 -3
  375. package/dist/src/shell/StageViewport.js +4 -5
  376. package/dist/src/shell/StoryBar.d.ts +40 -0
  377. package/dist/src/shell/StoryBar.js +23 -0
  378. package/dist/src/shell/StoryCodeBlock.d.ts +1 -2
  379. package/dist/src/shell/StoryCodeBlock.js +0 -1
  380. package/dist/src/shell/StoryCoverage.d.ts +36 -0
  381. package/dist/src/shell/StoryCoverage.js +129 -0
  382. package/dist/src/shell/StoryPicker.d.ts +0 -1
  383. package/dist/src/shell/StoryPicker.js +0 -1
  384. package/dist/src/shell/Toolbar.d.ts +7 -3
  385. package/dist/src/shell/Toolbar.js +6 -6
  386. package/dist/src/shell/ToolbarControl.d.ts +6 -8
  387. package/dist/src/shell/ToolbarControl.js +28 -20
  388. package/dist/src/shell/UsedIn.d.ts +5 -6
  389. package/dist/src/shell/UsedIn.js +7 -20
  390. package/dist/src/shell/ViewMenu.d.ts +7 -7
  391. package/dist/src/shell/ViewMenu.js +61 -176
  392. package/dist/src/shell/ViewMenuPanel.d.ts +41 -0
  393. package/dist/src/shell/ViewMenuPanel.js +199 -0
  394. package/dist/src/shell/WidthField.d.ts +3 -2
  395. package/dist/src/shell/WidthField.js +2 -3
  396. package/dist/src/shell/asideStory.d.ts +34 -0
  397. package/dist/src/shell/asideStory.js +55 -0
  398. package/dist/src/shell/audienceLayout.d.ts +39 -0
  399. package/dist/src/shell/audienceLayout.js +33 -0
  400. package/dist/src/shell/audiencePage.d.ts +113 -0
  401. package/dist/src/shell/audiencePage.js +144 -0
  402. package/dist/src/shell/audienceSections.css +95 -0
  403. package/dist/src/shell/catalogueContext.d.ts +24 -2
  404. package/dist/src/shell/catalogueContext.js +12 -9
  405. package/dist/src/shell/codeTokens.d.ts +0 -1
  406. package/dist/src/shell/codeTokens.js +0 -1
  407. package/dist/src/shell/codeWriter.d.ts +0 -1
  408. package/dist/src/shell/codeWriter.js +0 -1
  409. package/dist/src/shell/compareVariants.d.ts +0 -1
  410. package/dist/src/shell/compareVariants.js +2 -2
  411. package/dist/src/shell/controlCycle.d.ts +0 -1
  412. package/dist/src/shell/controlCycle.js +13 -1
  413. package/dist/src/shell/controlLabel.d.ts +7 -0
  414. package/dist/src/shell/controlLabel.js +17 -0
  415. package/dist/src/shell/device/deviceFrame.css +42 -0
  416. package/dist/src/shell/device/deviceParts.d.ts +90 -0
  417. package/dist/src/shell/device/deviceParts.js +120 -0
  418. package/dist/src/shell/docPage.css +457 -0
  419. package/dist/src/shell/dockTabs.d.ts +20 -10
  420. package/dist/src/shell/dockTabs.js +42 -20
  421. package/dist/src/shell/embed.css +74 -0
  422. package/dist/src/shell/filesCode.d.ts +21 -0
  423. package/dist/src/shell/filesCode.js +37 -0
  424. package/dist/src/shell/forgebookMark.d.ts +15 -0
  425. package/dist/src/shell/forgebookMark.js +28 -0
  426. package/dist/src/shell/framesOrigin.d.ts +23 -0
  427. package/dist/src/shell/framesOrigin.js +69 -0
  428. package/dist/src/shell/icons.d.ts +3 -1
  429. package/dist/src/shell/icons.js +3 -1
  430. package/dist/src/shell/keyboard.d.ts +0 -1
  431. package/dist/src/shell/keyboard.js +0 -1
  432. package/dist/src/shell/laterStrings.d.ts +91 -0
  433. package/dist/src/shell/laterStrings.js +102 -0
  434. package/dist/src/shell/lazyModule.d.ts +49 -0
  435. package/dist/src/shell/lazyModule.js +72 -0
  436. package/dist/src/shell/lazyTab.d.ts +21 -0
  437. package/dist/src/shell/lazyTab.js +9 -0
  438. package/dist/src/shell/logicView.d.ts +0 -12
  439. package/dist/src/shell/logicView.js +2 -2
  440. package/dist/src/shell/mountShell.d.ts +5 -3
  441. package/dist/src/shell/mountShell.js +43 -12
  442. package/dist/src/shell/pageStrings.d.ts +24 -0
  443. package/dist/src/shell/pageStrings.js +26 -0
  444. package/dist/src/shell/pluginHosts.d.ts +9 -0
  445. package/dist/src/shell/pluginHosts.js +6 -0
  446. package/dist/src/shell/pluginHostsContext.d.ts +20 -0
  447. package/dist/src/shell/pluginHostsContext.js +16 -0
  448. package/dist/src/shell/pluginTabs.d.ts +63 -0
  449. package/dist/src/shell/pluginTabs.js +60 -0
  450. package/dist/src/shell/reportedPanel.d.ts +12 -0
  451. package/dist/src/shell/reportedPanel.js +19 -0
  452. package/dist/src/shell/search.css +172 -0
  453. package/dist/src/shell/searchStrings.d.ts +24 -0
  454. package/dist/src/shell/searchStrings.js +31 -0
  455. package/dist/src/shell/shell.css +341 -140
  456. package/dist/src/shell/shellScheme.d.ts +37 -0
  457. package/dist/src/shell/shellScheme.js +32 -0
  458. package/dist/src/shell/storyTouch.d.ts +19 -6
  459. package/dist/src/shell/storyTouch.js +26 -4
  460. package/dist/src/shell/strings.d.ts +58 -80
  461. package/dist/src/shell/strings.js +55 -78
  462. package/dist/src/shell/switchView.d.ts +0 -1
  463. package/dist/src/shell/switchView.js +0 -1
  464. package/dist/src/shell/tabSummaries.d.ts +31 -0
  465. package/dist/src/shell/tabSummaries.js +27 -0
  466. package/dist/src/shell/treeSearch.d.ts +39 -3
  467. package/dist/src/shell/treeSearch.js +27 -1
  468. package/dist/src/shell/useAddressArgs.d.ts +55 -0
  469. package/dist/src/shell/useAddressArgs.js +62 -0
  470. package/dist/src/shell/useAnchorScroll.d.ts +24 -0
  471. package/dist/src/shell/useAnchorScroll.js +90 -0
  472. package/dist/src/shell/useAppearance.d.ts +7 -2
  473. package/dist/src/shell/useAppearance.js +14 -5
  474. package/dist/src/shell/useComponentDocs.d.ts +0 -1
  475. package/dist/src/shell/useComponentDocs.js +0 -1
  476. package/dist/src/shell/useControlKeys.d.ts +2 -1
  477. package/dist/src/shell/useControlKeys.js +2 -3
  478. package/dist/src/shell/useCopy.d.ts +2 -1
  479. package/dist/src/shell/useCopy.js +11 -6
  480. package/dist/src/shell/useFold.d.ts +0 -1
  481. package/dist/src/shell/useFold.js +0 -1
  482. package/dist/src/shell/useFrameMessages.d.ts +19 -4
  483. package/dist/src/shell/useFrameMessages.js +23 -7
  484. package/dist/src/shell/useFrameQueue.d.ts +7 -3
  485. package/dist/src/shell/useFrameQueue.js +39 -22
  486. package/dist/src/shell/useFullPage.d.ts +0 -1
  487. package/dist/src/shell/useFullPage.js +0 -1
  488. package/dist/src/shell/useLiveView.d.ts +0 -1
  489. package/dist/src/shell/useLiveView.js +0 -1
  490. package/dist/src/shell/useLoaded.d.ts +1 -2
  491. package/dist/src/shell/useLoaded.js +28 -6
  492. package/dist/src/shell/usePageDoc.d.ts +0 -1
  493. package/dist/src/shell/usePageDoc.js +0 -1
  494. package/dist/src/shell/usePageFrames.d.ts +46 -0
  495. package/dist/src/shell/usePageFrames.js +50 -0
  496. package/dist/src/shell/usePanelDocs.d.ts +11 -0
  497. package/dist/src/shell/usePanelDocs.js +29 -0
  498. package/dist/src/shell/usePluginTabs.d.ts +18 -0
  499. package/dist/src/shell/usePluginTabs.js +45 -0
  500. package/dist/src/shell/usePopover.d.ts +0 -1
  501. package/dist/src/shell/usePopover.js +0 -1
  502. package/dist/src/shell/useProseLinks.d.ts +14 -0
  503. package/dist/src/shell/useProseLinks.js +30 -0
  504. package/dist/src/shell/useRecentPages.d.ts +3 -4
  505. package/dist/src/shell/useRecentPages.js +1 -2
  506. package/dist/src/shell/useRequiredFirst.d.ts +27 -0
  507. package/dist/src/shell/useRequiredFirst.js +67 -0
  508. package/dist/src/shell/useScrollMemory.d.ts +9 -1
  509. package/dist/src/shell/useScrollMemory.js +2 -3
  510. package/dist/src/shell/useSearchIndex.d.ts +24 -0
  511. package/dist/src/shell/useSearchIndex.js +51 -0
  512. package/dist/src/shell/useShownView.d.ts +3 -1
  513. package/dist/src/shell/useShownView.js +5 -5
  514. package/dist/src/shell/useSidebarLayout.d.ts +0 -1
  515. package/dist/src/shell/useSidebarLayout.js +0 -1
  516. package/dist/src/shell/useStored.d.ts +13 -1
  517. package/dist/src/shell/useStored.js +13 -5
  518. package/dist/src/shell/useStoryCheck.d.ts +20 -0
  519. package/dist/src/shell/useStoryCheck.js +33 -0
  520. package/dist/src/shell/useStoryCode.d.ts +0 -1
  521. package/dist/src/shell/useStoryCode.js +0 -1
  522. package/dist/src/shell/useStoryHeights.d.ts +0 -1
  523. package/dist/src/shell/useStoryHeights.js +0 -1
  524. package/dist/src/shell/useStoryIdsElement.d.ts +0 -1
  525. package/dist/src/shell/useStoryIdsElement.js +0 -1
  526. package/dist/src/shell/useStoryKeys.d.ts +0 -1
  527. package/dist/src/shell/useStoryKeys.js +0 -1
  528. package/dist/src/shell/useSyncedTab.d.ts +8 -0
  529. package/dist/src/shell/useSyncedTab.js +60 -0
  530. package/dist/src/shell/useSystemDark.d.ts +0 -1
  531. package/dist/src/shell/useSystemDark.js +0 -1
  532. package/dist/src/shell/useToolbarLayout.d.ts +0 -1
  533. package/dist/src/shell/useToolbarLayout.js +0 -1
  534. package/dist/src/shell/useToolbarOverflow.d.ts +0 -1
  535. package/dist/src/shell/useToolbarOverflow.js +0 -1
  536. package/dist/src/shell/useWorstCase.d.ts +0 -1
  537. package/dist/src/shell/useWorstCase.js +2 -2
  538. package/dist/src/shell/worstArgs.d.ts +0 -1
  539. package/dist/src/shell/worstArgs.js +0 -1
  540. package/dist/src/shellTheme.d.ts +64 -0
  541. package/dist/src/shellTheme.js +274 -0
  542. package/dist/src/shellTheme.types.d.ts +93 -0
  543. package/dist/src/shellTheme.types.js +10 -0
  544. package/dist/src/sourceFiles.d.ts +17 -3
  545. package/dist/src/sourceFiles.js +27 -1
  546. package/dist/src/spills.d.ts +0 -1
  547. package/dist/src/spills.js +0 -1
  548. package/dist/src/storyBackground.d.ts +0 -1
  549. package/dist/src/storyBackground.js +0 -1
  550. package/dist/src/storyCheck.d.ts +88 -2
  551. package/dist/src/storyCheck.js +14 -3
  552. package/dist/src/storyClock.d.ts +0 -1
  553. package/dist/src/storyClock.js +0 -1
  554. package/dist/src/storyGlobals.d.ts +0 -1
  555. package/dist/src/storyGlobals.js +2 -2
  556. package/dist/src/storyHeights.d.ts +0 -1
  557. package/dist/src/storyHeights.js +0 -1
  558. package/dist/src/storyIds.d.ts +36 -0
  559. package/dist/src/storyIds.js +52 -0
  560. package/dist/src/storyIdsElement.d.ts +0 -1
  561. package/dist/src/storyIdsElement.js +0 -1
  562. package/dist/src/storyTexts.d.ts +11 -5
  563. package/dist/src/storyTexts.js +16 -5
  564. package/dist/src/storyTree.d.ts +89 -25
  565. package/dist/src/storyTree.js +213 -127
  566. package/dist/src/switches.d.ts +0 -1
  567. package/dist/src/switches.js +6 -2
  568. package/dist/src/toolbarLayout.d.ts +0 -1
  569. package/dist/src/toolbarLayout.js +0 -1
  570. package/dist/src/treePlaces.d.ts +60 -0
  571. package/dist/src/treePlaces.js +89 -0
  572. package/dist/src/usedIn.d.ts +28 -1
  573. package/dist/src/usedIn.js +93 -3
  574. package/dist/src/viewState.d.ts +44 -9
  575. package/dist/src/viewState.js +80 -9
  576. package/dist/src/viewWords.d.ts +0 -13
  577. package/dist/src/viewWords.js +41 -3
  578. package/dist/src/vite/adapter.d.ts +62 -1
  579. package/dist/src/vite/adapter.js +20 -2
  580. package/dist/src/vite/agent.types.d.ts +291 -7
  581. package/dist/src/vite/agent.types.js +11 -1
  582. package/dist/src/vite/agentApi.d.ts +55 -2
  583. package/dist/src/vite/agentApi.js +136 -9
  584. package/dist/src/vite/agentIds.d.ts +25 -0
  585. package/dist/src/vite/agentIds.js +41 -0
  586. package/dist/src/vite/agentIndex.d.ts +63 -0
  587. package/dist/src/vite/agentIndex.js +91 -0
  588. package/dist/src/vite/agentIndexRoute.d.ts +10 -0
  589. package/dist/src/vite/agentIndexRoute.js +35 -0
  590. package/dist/src/vite/agentRoutes.d.ts +80 -19
  591. package/dist/src/vite/agentRoutes.js +184 -27
  592. package/dist/src/vite/autoTitle.d.ts +0 -1
  593. package/dist/src/vite/autoTitle.js +0 -1
  594. package/dist/src/vite/axeScript.d.ts +20 -0
  595. package/dist/src/vite/axeScript.js +60 -0
  596. package/dist/src/vite/builtTexts.d.ts +75 -0
  597. package/dist/src/vite/builtTexts.js +143 -0
  598. package/dist/src/vite/catalogueConfig.d.ts +10 -0
  599. package/dist/src/vite/catalogueConfig.js +64 -0
  600. package/dist/src/vite/checkCode.d.ts +67 -0
  601. package/dist/src/vite/checkCode.js +145 -0
  602. package/dist/src/vite/closeWatch.d.ts +96 -0
  603. package/dist/src/vite/closeWatch.js +219 -0
  604. package/dist/src/vite/codeFence.d.ts +78 -0
  605. package/dist/src/vite/codeFence.js +267 -0
  606. package/dist/src/vite/componentImport.d.ts +8 -0
  607. package/dist/src/vite/componentImport.js +35 -0
  608. package/dist/src/vite/componentPage.d.ts +15 -2
  609. package/dist/src/vite/componentPage.js +55 -16
  610. package/dist/src/vite/config.d.ts +51 -3
  611. package/dist/src/vite/config.js +0 -1
  612. package/dist/src/vite/configFile.d.ts +66 -9
  613. package/dist/src/vite/configFile.js +236 -33
  614. package/dist/src/vite/designTokens.d.ts +75 -0
  615. package/dist/src/vite/designTokens.js +382 -0
  616. package/dist/src/vite/diskCache.d.ts +51 -0
  617. package/dist/src/vite/diskCache.js +211 -0
  618. package/dist/src/vite/docDirectives.d.ts +116 -0
  619. package/dist/src/vite/docDirectives.js +425 -0
  620. package/dist/src/vite/docMarkdown.d.ts +76 -0
  621. package/dist/src/vite/docMarkdown.js +150 -0
  622. package/dist/src/vite/docPageBlocks.d.ts +64 -0
  623. package/dist/src/vite/docPageBlocks.js +322 -0
  624. package/dist/src/vite/docPageLinks.d.ts +72 -0
  625. package/dist/src/vite/docPageLinks.js +135 -0
  626. package/dist/src/vite/docPageMarkdown.d.ts +86 -0
  627. package/dist/src/vite/docPageMarkdown.js +133 -0
  628. package/dist/src/vite/docPageRender.d.ts +27 -0
  629. package/dist/src/vite/docPageRender.js +199 -0
  630. package/dist/src/vite/docPageTokens.d.ts +91 -0
  631. package/dist/src/vite/docPageTokens.js +186 -0
  632. package/dist/src/vite/docPagesModule.d.ts +53 -0
  633. package/dist/src/vite/docPagesModule.js +121 -0
  634. package/dist/src/vite/docPagesRoute.d.ts +38 -0
  635. package/dist/src/vite/docPagesRoute.js +154 -0
  636. package/dist/src/vite/docsDependencies.d.ts +6 -0
  637. package/dist/src/vite/docsDependencies.js +150 -0
  638. package/dist/src/vite/docsExtractor.d.ts +50 -3
  639. package/dist/src/vite/docsExtractor.js +173 -26
  640. package/dist/src/vite/docsProgram.d.ts +89 -9
  641. package/dist/src/vite/docsProgram.js +413 -50
  642. package/dist/src/vite/docsWorker.d.ts +0 -1
  643. package/dist/src/vite/docsWorker.js +49 -15
  644. package/dist/src/vite/figmaLink.d.ts +26 -0
  645. package/dist/src/vite/figmaLink.js +92 -0
  646. package/dist/src/vite/fileAccess.d.ts +51 -0
  647. package/dist/src/vite/fileAccess.js +109 -0
  648. package/dist/src/vite/findComponent.d.ts +32 -0
  649. package/dist/src/vite/findComponent.js +52 -0
  650. package/dist/src/vite/findRoute.d.ts +14 -0
  651. package/dist/src/vite/findRoute.js +62 -0
  652. package/dist/src/vite/forcedStates.d.ts +0 -1
  653. package/dist/src/vite/forcedStates.js +0 -1
  654. package/dist/src/vite/forgebookPlugin.d.ts +0 -1
  655. package/dist/src/vite/forgebookPlugin.js +305 -282
  656. package/dist/src/vite/framesConfig.d.ts +89 -0
  657. package/dist/src/vite/framesConfig.js +149 -0
  658. package/dist/src/vite/framesServer.d.ts +43 -0
  659. package/dist/src/vite/framesServer.js +342 -0
  660. package/dist/src/vite/functionComponentDocs.d.ts +26 -0
  661. package/dist/src/vite/functionComponentDocs.js +193 -0
  662. package/dist/src/vite/generatedModules.d.ts +23 -0
  663. package/dist/src/vite/generatedModules.js +58 -0
  664. package/dist/src/vite/gitChange.d.ts +56 -0
  665. package/dist/src/vite/gitChange.js +86 -0
  666. package/dist/src/vite/heightsRoute.d.ts +0 -1
  667. package/dist/src/vite/heightsRoute.js +0 -1
  668. package/dist/src/vite/highlightCode.d.ts +0 -1
  669. package/dist/src/vite/highlightCode.js +8 -27
  670. package/dist/src/vite/hotSnippets.d.ts +86 -0
  671. package/dist/src/vite/hotSnippets.js +172 -0
  672. package/dist/src/vite/indexFields.d.ts +61 -0
  673. package/dist/src/vite/indexFields.js +149 -0
  674. package/dist/src/vite/indexStoryFile.d.ts +19 -18
  675. package/dist/src/vite/indexStoryFile.js +165 -221
  676. package/dist/src/vite/indexedParameters.d.ts +10 -0
  677. package/dist/src/vite/indexedParameters.js +130 -0
  678. package/dist/src/vite/mcpProtocol.d.ts +36 -2
  679. package/dist/src/vite/mcpProtocol.js +100 -15
  680. package/dist/src/vite/moduleSummary.d.ts +17 -0
  681. package/dist/src/vite/moduleSummary.js +40 -0
  682. package/dist/src/vite/nearestToken.d.ts +50 -0
  683. package/dist/src/vite/nearestToken.js +295 -0
  684. package/dist/src/vite/originGuard.d.ts +97 -0
  685. package/dist/src/vite/originGuard.js +172 -0
  686. package/dist/src/vite/packedModule.d.ts +40 -0
  687. package/dist/src/vite/packedModule.js +74 -0
  688. package/dist/src/vite/pages.d.ts +64 -10
  689. package/dist/src/vite/pages.js +278 -40
  690. package/dist/src/vite/parsedFiles.d.ts +18 -0
  691. package/dist/src/vite/parsedFiles.js +91 -0
  692. package/dist/src/vite/plainGrammars.d.ts +20 -0
  693. package/dist/src/vite/plainGrammars.js +113 -0
  694. package/dist/src/vite/pluginConfig.d.ts +47 -0
  695. package/dist/src/vite/pluginConfig.js +220 -0
  696. package/dist/src/vite/pluginIds.d.ts +27 -0
  697. package/dist/src/vite/pluginIds.js +76 -0
  698. package/dist/src/vite/pluginModules.d.ts +169 -0
  699. package/dist/src/vite/pluginModules.js +221 -0
  700. package/dist/src/vite/prebundled.d.ts +18 -5
  701. package/dist/src/vite/prebundled.js +29 -18
  702. package/dist/src/vite/previewPages.d.ts +14 -0
  703. package/dist/src/vite/previewPages.js +81 -0
  704. package/dist/src/vite/previewRoute.d.ts +8 -0
  705. package/dist/src/vite/previewRoute.js +8 -0
  706. package/dist/src/vite/previewRunner.d.ts +56 -0
  707. package/dist/src/vite/previewRunner.js +207 -0
  708. package/dist/src/vite/propDocs.d.ts +60 -0
  709. package/dist/src/vite/propDocs.js +387 -0
  710. package/dist/src/vite/searchModule.d.ts +42 -0
  711. package/dist/src/vite/searchModule.js +213 -0
  712. package/dist/src/vite/searchRoute.d.ts +7 -0
  713. package/dist/src/vite/searchRoute.js +79 -0
  714. package/dist/src/vite/serverConditions.d.ts +31 -0
  715. package/dist/src/vite/serverConditions.js +69 -0
  716. package/dist/src/vite/signatureDocs.d.ts +18 -0
  717. package/dist/src/vite/signatureDocs.js +64 -0
  718. package/dist/src/vite/sourceTokens.d.ts +57 -0
  719. package/dist/src/vite/sourceTokens.js +164 -0
  720. package/dist/src/vite/storyCode.d.ts +0 -1
  721. package/dist/src/vite/storyCode.js +2 -3
  722. package/dist/src/vite/storyExports.d.ts +32 -0
  723. package/dist/src/vite/storyExports.js +27 -0
  724. package/dist/src/vite/storyFilesModule.d.ts +104 -20
  725. package/dist/src/vite/storyFilesModule.js +178 -60
  726. package/dist/src/vite/storyMeta.d.ts +20 -11
  727. package/dist/src/vite/storyMeta.js +74 -38
  728. package/dist/src/vite/storyParse.d.ts +18 -0
  729. package/dist/src/vite/storyParse.js +20 -0
  730. package/dist/src/vite/storyPatterns.d.ts +39 -0
  731. package/dist/src/vite/storyPatterns.js +100 -0
  732. package/dist/src/vite/storyPlay.d.ts +29 -0
  733. package/dist/src/vite/storyPlay.js +54 -0
  734. package/dist/src/vite/storyReach.d.ts +42 -0
  735. package/dist/src/vite/storyReach.js +43 -0
  736. package/dist/src/vite/storylessRoutes.d.ts +29 -0
  737. package/dist/src/vite/storylessRoutes.js +126 -0
  738. package/dist/src/vite/textModules.d.ts +63 -0
  739. package/dist/src/vite/textModules.js +132 -0
  740. package/dist/src/vite/textQueries.d.ts +26 -0
  741. package/dist/src/vite/textQueries.js +26 -0
  742. package/dist/src/vite/themeFromTokens.d.ts +35 -0
  743. package/dist/src/vite/themeFromTokens.js +73 -0
  744. package/dist/src/vite/tokenAnswers.d.ts +20 -0
  745. package/dist/src/vite/tokenAnswers.js +86 -0
  746. package/dist/src/vite/tokenClashes.d.ts +44 -0
  747. package/dist/src/vite/tokenClashes.js +45 -0
  748. package/dist/src/vite/touchMedia.d.ts +0 -1
  749. package/dist/src/vite/touchMedia.js +0 -1
  750. package/dist/src/vite/typeScriptPieces.d.ts +0 -1
  751. package/dist/src/vite/typeScriptPieces.js +2 -3
  752. package/dist/src/vite/usageGraph.d.ts +6 -1
  753. package/dist/src/vite/usageGraph.js +41 -7
  754. package/dist/src/vite/usageGuidance.d.ts +33 -0
  755. package/dist/src/vite/usageGuidance.js +45 -0
  756. package/dist/src/vite/usageModule.d.ts +0 -1
  757. package/dist/src/vite/usageModule.js +0 -1
  758. package/dist/src/vite/vitePaths.d.ts +53 -0
  759. package/dist/src/vite/vitePaths.js +53 -0
  760. package/dist/src/worstCase.d.ts +0 -1
  761. package/dist/src/worstCase.js +0 -1
  762. package/package.json +68 -5
  763. package/dist/bin/forgebook/agentClient.d.ts.map +0 -1
  764. package/dist/bin/forgebook/agentClient.js.map +0 -1
  765. package/dist/bin/forgebook/agentLoopCommands.d.mts.map +0 -1
  766. package/dist/bin/forgebook/agentLoopCommands.mjs.map +0 -1
  767. package/dist/bin/forgebook/agentText.d.ts.map +0 -1
  768. package/dist/bin/forgebook/agentText.js.map +0 -1
  769. package/dist/bin/forgebook/agentsText.d.ts.map +0 -1
  770. package/dist/bin/forgebook/agentsText.js.map +0 -1
  771. package/dist/bin/forgebook/catalogueCommands.d.ts.map +0 -1
  772. package/dist/bin/forgebook/catalogueCommands.js.map +0 -1
  773. package/dist/bin/forgebook/catalogueVite.d.ts.map +0 -1
  774. package/dist/bin/forgebook/catalogueVite.js.map +0 -1
  775. package/dist/bin/forgebook/errorsRun.d.ts.map +0 -1
  776. package/dist/bin/forgebook/errorsRun.js.map +0 -1
  777. package/dist/bin/forgebook/forgebook.d.mts.map +0 -1
  778. package/dist/bin/forgebook/forgebook.mjs.map +0 -1
  779. package/dist/bin/forgebook/importers/storybook.d.ts.map +0 -1
  780. package/dist/bin/forgebook/importers/storybook.js.map +0 -1
  781. package/dist/bin/forgebook/initCommands.d.mts.map +0 -1
  782. package/dist/bin/forgebook/initCommands.mjs.map +0 -1
  783. package/dist/bin/forgebook/initConfig.d.ts.map +0 -1
  784. package/dist/bin/forgebook/initConfig.js.map +0 -1
  785. package/dist/bin/forgebook/mcpTools.d.ts.map +0 -1
  786. package/dist/bin/forgebook/mcpTools.js.map +0 -1
  787. package/dist/bin/forgebook/newStories.d.ts.map +0 -1
  788. package/dist/bin/forgebook/newStories.js.map +0 -1
  789. package/dist/bin/forgebook/newStoriesFile.d.ts.map +0 -1
  790. package/dist/bin/forgebook/newStoriesFile.js.map +0 -1
  791. package/dist/bin/forgebook/storyCheckRun.d.ts.map +0 -1
  792. package/dist/bin/forgebook/storyCheckRun.js.map +0 -1
  793. package/dist/bin/forgebook/touchWindowRun.d.ts.map +0 -1
  794. package/dist/bin/forgebook/touchWindowRun.js.map +0 -1
  795. package/dist/bin/forgebook-docs/catalogueDocs.d.ts.map +0 -1
  796. package/dist/bin/forgebook-docs/catalogueDocs.js.map +0 -1
  797. package/dist/bin/forgebook-docs/catalogueDocs.types.d.ts.map +0 -1
  798. package/dist/bin/forgebook-docs/catalogueDocs.types.js.map +0 -1
  799. package/dist/bin/forgebook-docs/catalogueMarkdown.d.ts.map +0 -1
  800. package/dist/bin/forgebook-docs/catalogueMarkdown.js.map +0 -1
  801. package/dist/bin/forgebook-docs/catalogueOptions.d.ts.map +0 -1
  802. package/dist/bin/forgebook-docs/catalogueOptions.js.map +0 -1
  803. package/dist/bin/forgebook-docs/collectDocs.d.ts.map +0 -1
  804. package/dist/bin/forgebook-docs/collectDocs.js.map +0 -1
  805. package/dist/bin/forgebook-docs/forgebook-docs.d.mts.map +0 -1
  806. package/dist/bin/forgebook-docs/forgebook-docs.mjs.map +0 -1
  807. package/dist/bin/forgebook-docs/llmsText.d.ts.map +0 -1
  808. package/dist/bin/forgebook-docs/llmsText.js.map +0 -1
  809. package/dist/bin/forgebook-docs/moduleDocs.d.ts.map +0 -1
  810. package/dist/bin/forgebook-docs/moduleDocs.js.map +0 -1
  811. package/dist/bin/forgebook-docs/sassDocs.d.ts.map +0 -1
  812. package/dist/bin/forgebook-docs/sassDocs.js.map +0 -1
  813. package/dist/bin/forgebook-docs/sourceId.d.ts +0 -9
  814. package/dist/bin/forgebook-docs/sourceId.d.ts.map +0 -1
  815. package/dist/bin/forgebook-docs/sourceId.js +0 -45
  816. package/dist/bin/forgebook-docs/sourceId.js.map +0 -1
  817. package/dist/bin/forgebook-texts/forgebook-texts.d.mts.map +0 -1
  818. package/dist/bin/forgebook-texts/forgebook-texts.mjs.map +0 -1
  819. package/dist/bin/forgebook-texts/storyTextsReport.d.ts.map +0 -1
  820. package/dist/bin/forgebook-texts/storyTextsReport.js.map +0 -1
  821. package/dist/bin/forgebook-texts/storyTextsReport.types.d.ts.map +0 -1
  822. package/dist/bin/forgebook-texts/storyTextsReport.types.js.map +0 -1
  823. package/dist/bin/frameworkDocs.d.ts.map +0 -1
  824. package/dist/bin/frameworkDocs.js.map +0 -1
  825. package/dist/src/a11y.d.ts.map +0 -1
  826. package/dist/src/a11y.js.map +0 -1
  827. package/dist/src/argTypes.d.ts.map +0 -1
  828. package/dist/src/argTypes.js.map +0 -1
  829. package/dist/src/backdrops.d.ts.map +0 -1
  830. package/dist/src/backdrops.js.map +0 -1
  831. package/dist/src/catalogue.d.ts.map +0 -1
  832. package/dist/src/catalogue.js.map +0 -1
  833. package/dist/src/componentDocs.d.ts.map +0 -1
  834. package/dist/src/componentDocs.js.map +0 -1
  835. package/dist/src/controlKeys.d.ts.map +0 -1
  836. package/dist/src/controlKeys.js.map +0 -1
  837. package/dist/src/frame/checkStory.d.ts.map +0 -1
  838. package/dist/src/frame/checkStory.js.map +0 -1
  839. package/dist/src/frame/frameClock.d.ts.map +0 -1
  840. package/dist/src/frame/frameClock.js.map +0 -1
  841. package/dist/src/frame/frameStatus.d.ts.map +0 -1
  842. package/dist/src/frame/frameStatus.js.map +0 -1
  843. package/dist/src/frame/frameView.d.ts.map +0 -1
  844. package/dist/src/frame/frameView.js.map +0 -1
  845. package/dist/src/frame/matrixLayout.d.ts.map +0 -1
  846. package/dist/src/frame/matrixLayout.js.map +0 -1
  847. package/dist/src/frame/measureTools.d.ts.map +0 -1
  848. package/dist/src/frame/measureTools.js.map +0 -1
  849. package/dist/src/frame/mountFrame.d.ts.map +0 -1
  850. package/dist/src/frame/mountFrame.js.map +0 -1
  851. package/dist/src/frame/playStory.d.ts.map +0 -1
  852. package/dist/src/frame/playStory.js.map +0 -1
  853. package/dist/src/frame/renderer.d.ts.map +0 -1
  854. package/dist/src/frame/renderer.js.map +0 -1
  855. package/dist/src/frame/settle.d.ts.map +0 -1
  856. package/dist/src/frame/settle.js.map +0 -1
  857. package/dist/src/frame/spillOutline.d.ts.map +0 -1
  858. package/dist/src/frame/spillOutline.js.map +0 -1
  859. package/dist/src/frame/staleModule.d.ts.map +0 -1
  860. package/dist/src/frame/staleModule.js.map +0 -1
  861. package/dist/src/frame/storyCanvas.d.ts.map +0 -1
  862. package/dist/src/frame/storyCanvas.js.map +0 -1
  863. package/dist/src/frame/storyHooks.d.ts.map +0 -1
  864. package/dist/src/frame/storyHooks.js.map +0 -1
  865. package/dist/src/frame/storyModule.d.ts.map +0 -1
  866. package/dist/src/frame/storyModule.js.map +0 -1
  867. package/dist/src/frame/storyRun.d.ts.map +0 -1
  868. package/dist/src/frame/storyRun.js.map +0 -1
  869. package/dist/src/frame/touchDots.d.ts.map +0 -1
  870. package/dist/src/frame/touchDots.js.map +0 -1
  871. package/dist/src/frame/touchEvents.d.ts.map +0 -1
  872. package/dist/src/frame/touchEvents.js.map +0 -1
  873. package/dist/src/frame/touchGesture.d.ts.map +0 -1
  874. package/dist/src/frame/touchGesture.js.map +0 -1
  875. package/dist/src/frame/touchLayer.d.ts.map +0 -1
  876. package/dist/src/frame/touchLayer.js.map +0 -1
  877. package/dist/src/frame/touchScroll.d.ts.map +0 -1
  878. package/dist/src/frame/touchScroll.js.map +0 -1
  879. package/dist/src/languages.d.ts.map +0 -1
  880. package/dist/src/languages.js.map +0 -1
  881. package/dist/src/liveErrors.d.ts.map +0 -1
  882. package/dist/src/liveErrors.js.map +0 -1
  883. package/dist/src/matrix.d.ts.map +0 -1
  884. package/dist/src/matrix.js.map +0 -1
  885. package/dist/src/messages.d.ts.map +0 -1
  886. package/dist/src/messages.js.map +0 -1
  887. package/dist/src/namedValues.d.ts.map +0 -1
  888. package/dist/src/namedValues.js.map +0 -1
  889. package/dist/src/namedViews.d.ts.map +0 -1
  890. package/dist/src/namedViews.js.map +0 -1
  891. package/dist/src/pageConfig.d.ts.map +0 -1
  892. package/dist/src/pageConfig.js.map +0 -1
  893. package/dist/src/playTrace.d.ts.map +0 -1
  894. package/dist/src/playTrace.js.map +0 -1
  895. package/dist/src/realTouch.d.ts.map +0 -1
  896. package/dist/src/realTouch.js.map +0 -1
  897. package/dist/src/shell/A11yTab.d.ts.map +0 -1
  898. package/dist/src/shell/A11yTab.js.map +0 -1
  899. package/dist/src/shell/ApiReference.d.ts.map +0 -1
  900. package/dist/src/shell/ApiReference.js.map +0 -1
  901. package/dist/src/shell/AppearanceMenu.d.ts.map +0 -1
  902. package/dist/src/shell/AppearanceMenu.js.map +0 -1
  903. package/dist/src/shell/BoxWidth.d.ts.map +0 -1
  904. package/dist/src/shell/BoxWidth.js.map +0 -1
  905. package/dist/src/shell/ClockControls.d.ts.map +0 -1
  906. package/dist/src/shell/ClockControls.js.map +0 -1
  907. package/dist/src/shell/Code.d.ts.map +0 -1
  908. package/dist/src/shell/Code.js.map +0 -1
  909. package/dist/src/shell/CodeTab.d.ts.map +0 -1
  910. package/dist/src/shell/CodeTab.js.map +0 -1
  911. package/dist/src/shell/CodeText.d.ts.map +0 -1
  912. package/dist/src/shell/CodeText.js.map +0 -1
  913. package/dist/src/shell/ComponentPage.d.ts.map +0 -1
  914. package/dist/src/shell/ComponentPage.js.map +0 -1
  915. package/dist/src/shell/ControlKeyField.d.ts.map +0 -1
  916. package/dist/src/shell/ControlKeyField.js.map +0 -1
  917. package/dist/src/shell/ControlRow.d.ts.map +0 -1
  918. package/dist/src/shell/ControlRow.js.map +0 -1
  919. package/dist/src/shell/Dock.d.ts.map +0 -1
  920. package/dist/src/shell/Dock.js.map +0 -1
  921. package/dist/src/shell/EventsTab.d.ts.map +0 -1
  922. package/dist/src/shell/EventsTab.js.map +0 -1
  923. package/dist/src/shell/Example.d.ts.map +0 -1
  924. package/dist/src/shell/Example.js.map +0 -1
  925. package/dist/src/shell/FrameView.d.ts.map +0 -1
  926. package/dist/src/shell/FrameView.js.map +0 -1
  927. package/dist/src/shell/HomePage.d.ts.map +0 -1
  928. package/dist/src/shell/HomePage.js.map +0 -1
  929. package/dist/src/shell/InfoTip.d.ts.map +0 -1
  930. package/dist/src/shell/InfoTip.js.map +0 -1
  931. package/dist/src/shell/InteractionsTab.d.ts.map +0 -1
  932. package/dist/src/shell/InteractionsTab.js.map +0 -1
  933. package/dist/src/shell/LogicMark.d.ts.map +0 -1
  934. package/dist/src/shell/LogicMark.js.map +0 -1
  935. package/dist/src/shell/MatrixPicker.d.ts.map +0 -1
  936. package/dist/src/shell/MatrixPicker.js.map +0 -1
  937. package/dist/src/shell/NamedViews.d.ts.map +0 -1
  938. package/dist/src/shell/NamedViews.js.map +0 -1
  939. package/dist/src/shell/PackageHtml.d.ts.map +0 -1
  940. package/dist/src/shell/PackageHtml.js.map +0 -1
  941. package/dist/src/shell/PartsTab.d.ts.map +0 -1
  942. package/dist/src/shell/PartsTab.js.map +0 -1
  943. package/dist/src/shell/PinnedControl.d.ts.map +0 -1
  944. package/dist/src/shell/PinnedControl.js.map +0 -1
  945. package/dist/src/shell/PropFields.d.ts.map +0 -1
  946. package/dist/src/shell/PropFields.js.map +0 -1
  947. package/dist/src/shell/PropsTab.d.ts.map +0 -1
  948. package/dist/src/shell/PropsTab.js.map +0 -1
  949. package/dist/src/shell/Segmented.d.ts.map +0 -1
  950. package/dist/src/shell/Segmented.js.map +0 -1
  951. package/dist/src/shell/Shell.d.ts.map +0 -1
  952. package/dist/src/shell/Shell.js.map +0 -1
  953. package/dist/src/shell/Sidebar.d.ts.map +0 -1
  954. package/dist/src/shell/Sidebar.js.map +0 -1
  955. package/dist/src/shell/SidebarEntries.d.ts.map +0 -1
  956. package/dist/src/shell/SidebarEntries.js.map +0 -1
  957. package/dist/src/shell/SidebarHandle.d.ts.map +0 -1
  958. package/dist/src/shell/SidebarHandle.js.map +0 -1
  959. package/dist/src/shell/SignatureReference.d.ts.map +0 -1
  960. package/dist/src/shell/SignatureReference.js.map +0 -1
  961. package/dist/src/shell/Stage.d.ts.map +0 -1
  962. package/dist/src/shell/Stage.js.map +0 -1
  963. package/dist/src/shell/StageTools.d.ts.map +0 -1
  964. package/dist/src/shell/StageTools.js.map +0 -1
  965. package/dist/src/shell/StageViewport.d.ts.map +0 -1
  966. package/dist/src/shell/StageViewport.js.map +0 -1
  967. package/dist/src/shell/StoryCodeBlock.d.ts.map +0 -1
  968. package/dist/src/shell/StoryCodeBlock.js.map +0 -1
  969. package/dist/src/shell/StoryPicker.d.ts.map +0 -1
  970. package/dist/src/shell/StoryPicker.js.map +0 -1
  971. package/dist/src/shell/Toolbar.d.ts.map +0 -1
  972. package/dist/src/shell/Toolbar.js.map +0 -1
  973. package/dist/src/shell/ToolbarControl.d.ts.map +0 -1
  974. package/dist/src/shell/ToolbarControl.js.map +0 -1
  975. package/dist/src/shell/UsedIn.d.ts.map +0 -1
  976. package/dist/src/shell/UsedIn.js.map +0 -1
  977. package/dist/src/shell/ViewMenu.d.ts.map +0 -1
  978. package/dist/src/shell/ViewMenu.js.map +0 -1
  979. package/dist/src/shell/WidthField.d.ts.map +0 -1
  980. package/dist/src/shell/WidthField.js.map +0 -1
  981. package/dist/src/shell/catalogueContext.d.ts.map +0 -1
  982. package/dist/src/shell/catalogueContext.js.map +0 -1
  983. package/dist/src/shell/codeTokens.d.ts.map +0 -1
  984. package/dist/src/shell/codeTokens.js.map +0 -1
  985. package/dist/src/shell/codeWriter.d.ts.map +0 -1
  986. package/dist/src/shell/codeWriter.js.map +0 -1
  987. package/dist/src/shell/compareVariants.d.ts.map +0 -1
  988. package/dist/src/shell/compareVariants.js.map +0 -1
  989. package/dist/src/shell/controlCycle.d.ts.map +0 -1
  990. package/dist/src/shell/controlCycle.js.map +0 -1
  991. package/dist/src/shell/dockTabs.d.ts.map +0 -1
  992. package/dist/src/shell/dockTabs.js.map +0 -1
  993. package/dist/src/shell/icons.d.ts.map +0 -1
  994. package/dist/src/shell/icons.js.map +0 -1
  995. package/dist/src/shell/keyboard.d.ts.map +0 -1
  996. package/dist/src/shell/keyboard.js.map +0 -1
  997. package/dist/src/shell/logicView.d.ts.map +0 -1
  998. package/dist/src/shell/logicView.js.map +0 -1
  999. package/dist/src/shell/mountShell.d.ts.map +0 -1
  1000. package/dist/src/shell/mountShell.js.map +0 -1
  1001. package/dist/src/shell/storyTouch.d.ts.map +0 -1
  1002. package/dist/src/shell/storyTouch.js.map +0 -1
  1003. package/dist/src/shell/strings.d.ts.map +0 -1
  1004. package/dist/src/shell/strings.js.map +0 -1
  1005. package/dist/src/shell/switchView.d.ts.map +0 -1
  1006. package/dist/src/shell/switchView.js.map +0 -1
  1007. package/dist/src/shell/treeSearch.d.ts.map +0 -1
  1008. package/dist/src/shell/treeSearch.js.map +0 -1
  1009. package/dist/src/shell/useAppearance.d.ts.map +0 -1
  1010. package/dist/src/shell/useAppearance.js.map +0 -1
  1011. package/dist/src/shell/useComponentDocs.d.ts.map +0 -1
  1012. package/dist/src/shell/useComponentDocs.js.map +0 -1
  1013. package/dist/src/shell/useControlKeys.d.ts.map +0 -1
  1014. package/dist/src/shell/useControlKeys.js.map +0 -1
  1015. package/dist/src/shell/useCopy.d.ts.map +0 -1
  1016. package/dist/src/shell/useCopy.js.map +0 -1
  1017. package/dist/src/shell/useFold.d.ts.map +0 -1
  1018. package/dist/src/shell/useFold.js.map +0 -1
  1019. package/dist/src/shell/useFrameMessages.d.ts.map +0 -1
  1020. package/dist/src/shell/useFrameMessages.js.map +0 -1
  1021. package/dist/src/shell/useFrameQueue.d.ts.map +0 -1
  1022. package/dist/src/shell/useFrameQueue.js.map +0 -1
  1023. package/dist/src/shell/useFullPage.d.ts.map +0 -1
  1024. package/dist/src/shell/useFullPage.js.map +0 -1
  1025. package/dist/src/shell/useLiveView.d.ts.map +0 -1
  1026. package/dist/src/shell/useLiveView.js.map +0 -1
  1027. package/dist/src/shell/useLoaded.d.ts.map +0 -1
  1028. package/dist/src/shell/useLoaded.js.map +0 -1
  1029. package/dist/src/shell/usePageDoc.d.ts.map +0 -1
  1030. package/dist/src/shell/usePageDoc.js.map +0 -1
  1031. package/dist/src/shell/usePopover.d.ts.map +0 -1
  1032. package/dist/src/shell/usePopover.js.map +0 -1
  1033. package/dist/src/shell/useRecentPages.d.ts.map +0 -1
  1034. package/dist/src/shell/useRecentPages.js.map +0 -1
  1035. package/dist/src/shell/useScrollMemory.d.ts.map +0 -1
  1036. package/dist/src/shell/useScrollMemory.js.map +0 -1
  1037. package/dist/src/shell/useShownView.d.ts.map +0 -1
  1038. package/dist/src/shell/useShownView.js.map +0 -1
  1039. package/dist/src/shell/useSidebarLayout.d.ts.map +0 -1
  1040. package/dist/src/shell/useSidebarLayout.js.map +0 -1
  1041. package/dist/src/shell/useStored.d.ts.map +0 -1
  1042. package/dist/src/shell/useStored.js.map +0 -1
  1043. package/dist/src/shell/useStoryCode.d.ts.map +0 -1
  1044. package/dist/src/shell/useStoryCode.js.map +0 -1
  1045. package/dist/src/shell/useStoryHeights.d.ts.map +0 -1
  1046. package/dist/src/shell/useStoryHeights.js.map +0 -1
  1047. package/dist/src/shell/useStoryIdsElement.d.ts.map +0 -1
  1048. package/dist/src/shell/useStoryIdsElement.js.map +0 -1
  1049. package/dist/src/shell/useStoryKeys.d.ts.map +0 -1
  1050. package/dist/src/shell/useStoryKeys.js.map +0 -1
  1051. package/dist/src/shell/useSystemDark.d.ts.map +0 -1
  1052. package/dist/src/shell/useSystemDark.js.map +0 -1
  1053. package/dist/src/shell/useToolbarLayout.d.ts.map +0 -1
  1054. package/dist/src/shell/useToolbarLayout.js.map +0 -1
  1055. package/dist/src/shell/useToolbarOverflow.d.ts.map +0 -1
  1056. package/dist/src/shell/useToolbarOverflow.js.map +0 -1
  1057. package/dist/src/shell/useWorstCase.d.ts.map +0 -1
  1058. package/dist/src/shell/useWorstCase.js.map +0 -1
  1059. package/dist/src/shell/worstArgs.d.ts.map +0 -1
  1060. package/dist/src/shell/worstArgs.js.map +0 -1
  1061. package/dist/src/sourceFiles.d.ts.map +0 -1
  1062. package/dist/src/sourceFiles.js.map +0 -1
  1063. package/dist/src/spills.d.ts.map +0 -1
  1064. package/dist/src/spills.js.map +0 -1
  1065. package/dist/src/storyBackground.d.ts.map +0 -1
  1066. package/dist/src/storyBackground.js.map +0 -1
  1067. package/dist/src/storyCheck.d.ts.map +0 -1
  1068. package/dist/src/storyCheck.js.map +0 -1
  1069. package/dist/src/storyClock.d.ts.map +0 -1
  1070. package/dist/src/storyClock.js.map +0 -1
  1071. package/dist/src/storyGlobals.d.ts.map +0 -1
  1072. package/dist/src/storyGlobals.js.map +0 -1
  1073. package/dist/src/storyHeights.d.ts.map +0 -1
  1074. package/dist/src/storyHeights.js.map +0 -1
  1075. package/dist/src/storyIdsElement.d.ts.map +0 -1
  1076. package/dist/src/storyIdsElement.js.map +0 -1
  1077. package/dist/src/storyTexts.d.ts.map +0 -1
  1078. package/dist/src/storyTexts.js.map +0 -1
  1079. package/dist/src/storyTree.d.ts.map +0 -1
  1080. package/dist/src/storyTree.js.map +0 -1
  1081. package/dist/src/switches.d.ts.map +0 -1
  1082. package/dist/src/switches.js.map +0 -1
  1083. package/dist/src/toolbarLayout.d.ts.map +0 -1
  1084. package/dist/src/toolbarLayout.js.map +0 -1
  1085. package/dist/src/usedIn.d.ts.map +0 -1
  1086. package/dist/src/usedIn.js.map +0 -1
  1087. package/dist/src/viewState.d.ts.map +0 -1
  1088. package/dist/src/viewState.js.map +0 -1
  1089. package/dist/src/viewWords.d.ts.map +0 -1
  1090. package/dist/src/viewWords.js.map +0 -1
  1091. package/dist/src/vite/adapter.d.ts.map +0 -1
  1092. package/dist/src/vite/adapter.js.map +0 -1
  1093. package/dist/src/vite/agent.types.d.ts.map +0 -1
  1094. package/dist/src/vite/agent.types.js.map +0 -1
  1095. package/dist/src/vite/agentApi.d.ts.map +0 -1
  1096. package/dist/src/vite/agentApi.js.map +0 -1
  1097. package/dist/src/vite/agentRoutes.d.ts.map +0 -1
  1098. package/dist/src/vite/agentRoutes.js.map +0 -1
  1099. package/dist/src/vite/autoTitle.d.ts.map +0 -1
  1100. package/dist/src/vite/autoTitle.js.map +0 -1
  1101. package/dist/src/vite/componentPage.d.ts.map +0 -1
  1102. package/dist/src/vite/componentPage.js.map +0 -1
  1103. package/dist/src/vite/config.d.ts.map +0 -1
  1104. package/dist/src/vite/config.js.map +0 -1
  1105. package/dist/src/vite/configFile.d.ts.map +0 -1
  1106. package/dist/src/vite/configFile.js.map +0 -1
  1107. package/dist/src/vite/docsExtractor.d.ts.map +0 -1
  1108. package/dist/src/vite/docsExtractor.js.map +0 -1
  1109. package/dist/src/vite/docsProgram.d.ts.map +0 -1
  1110. package/dist/src/vite/docsProgram.js.map +0 -1
  1111. package/dist/src/vite/docsWorker.d.ts.map +0 -1
  1112. package/dist/src/vite/docsWorker.js.map +0 -1
  1113. package/dist/src/vite/forcedStates.d.ts.map +0 -1
  1114. package/dist/src/vite/forcedStates.js.map +0 -1
  1115. package/dist/src/vite/forgebookPlugin.d.ts.map +0 -1
  1116. package/dist/src/vite/forgebookPlugin.js.map +0 -1
  1117. package/dist/src/vite/heightsRoute.d.ts.map +0 -1
  1118. package/dist/src/vite/heightsRoute.js.map +0 -1
  1119. package/dist/src/vite/highlightCode.d.ts.map +0 -1
  1120. package/dist/src/vite/highlightCode.js.map +0 -1
  1121. package/dist/src/vite/indexStoryFile.d.ts.map +0 -1
  1122. package/dist/src/vite/indexStoryFile.js.map +0 -1
  1123. package/dist/src/vite/mcpProtocol.d.ts.map +0 -1
  1124. package/dist/src/vite/mcpProtocol.js.map +0 -1
  1125. package/dist/src/vite/pages.d.ts.map +0 -1
  1126. package/dist/src/vite/pages.js.map +0 -1
  1127. package/dist/src/vite/prebundled.d.ts.map +0 -1
  1128. package/dist/src/vite/prebundled.js.map +0 -1
  1129. package/dist/src/vite/storyCode.d.ts.map +0 -1
  1130. package/dist/src/vite/storyCode.js.map +0 -1
  1131. package/dist/src/vite/storyFilesModule.d.ts.map +0 -1
  1132. package/dist/src/vite/storyFilesModule.js.map +0 -1
  1133. package/dist/src/vite/storyMeta.d.ts.map +0 -1
  1134. package/dist/src/vite/storyMeta.js.map +0 -1
  1135. package/dist/src/vite/touchMedia.d.ts.map +0 -1
  1136. package/dist/src/vite/touchMedia.js.map +0 -1
  1137. package/dist/src/vite/typeScriptPieces.d.ts.map +0 -1
  1138. package/dist/src/vite/typeScriptPieces.js.map +0 -1
  1139. package/dist/src/vite/usageGraph.d.ts.map +0 -1
  1140. package/dist/src/vite/usageGraph.js.map +0 -1
  1141. package/dist/src/vite/usageModule.d.ts.map +0 -1
  1142. package/dist/src/vite/usageModule.js.map +0 -1
  1143. package/dist/src/worstCase.d.ts.map +0 -1
  1144. package/dist/src/worstCase.js.map +0 -1
@@ -1,22 +1,31 @@
1
1
  import type { StoryFileIndex } from "@forgebook/story-format/source";
2
- /** A pattern of story files and the folder it is read from: the declaring module's folder, the import's pattern. */
2
+ import { type DiskCache } from "./diskCache.ts";
3
+ /**
4
+ * A group of story files and the folder its patterns are read from: the declaring module's folder, the import's
5
+ * patterns.
6
+ */
3
7
  export type StoryFilesGroup = {
4
8
  /** The declaring module's folder, absolute: the files' keys are relative to it. */
5
9
  readonly root: string;
6
- /** The pattern relative to it, its leading `./` dropped (`../src/**\/*.stories.tsx`). */
7
- readonly pattern: string;
10
+ /**
11
+ * The patterns relative to it, their leading `./` dropped (`../src/**\/*.stories.tsx`), and the `!` ones that leave
12
+ * files out (`listedFiles`).
13
+ */
14
+ readonly patterns: readonly string[];
8
15
  };
16
+ /** Between a group's parts in a module's id: no path or pattern holds it. */
17
+ export declare const GROUP_SEPARATOR = "::";
9
18
  /**
10
- * A `?forgebook-files` group written for a module's id: the folder, how many folders the pattern climbs, and the rest
11
- * of the pattern. A Vite module's id is served under a URL path, whose normalisation would let a `..` remove the part
12
- * before it (`app::../storybook`: the folder and the separator), so the pattern's leading `../` are counted, never
19
+ * A group of story files written for a module's id: the folder, then for each pattern how many folders it climbs and
20
+ * the rest of it. A Vite module's id is served under a URL path, whose normalisation would let a `..` remove the part
21
+ * before it (`app::../storybook`: the folder and the separator), so a pattern's leading `../` are counted, never
13
22
  * written. The files keep their keys relative to the declaring module (`../src/x.stories.tsx`), unique in a source and
14
23
  * the testing package's too.
15
24
  *
16
25
  * @param folder - the declaring module's folder.
17
- * @param pattern - the pattern as the import writes it (`../src/**\/*.stories.tsx`).
26
+ * @param patterns - the patterns as the import or the configuration writes them (`../src/**\/*.stories.tsx`).
18
27
  */
19
- export declare const storyFilesGroupText: (folder: string, pattern: string) => string;
28
+ export declare const storyFilesGroupText: (folder: string, patterns: readonly string[]) => string;
20
29
  /**
21
30
  * A group read back from a module's id (`storyFilesGroupText`).
22
31
  *
@@ -24,43 +33,118 @@ export declare const storyFilesGroupText: (folder: string, pattern: string) => s
24
33
  */
25
34
  export declare const storyFilesGroupOf: (text: string) => StoryFilesGroup;
26
35
  /**
27
- * The story files patterns match, as paths relative to `root` starting with `./` or `../`, sorted.
36
+ * Whether a file a group lists may be read. A dev server refuses what `server.fs.deny` names (`fileAccess.ts`).
37
+ *
38
+ * @param file - the file, absolute in Vite's form.
39
+ */
40
+ export type IsFileKept = (file: string) => boolean;
41
+ /** Every file a group lists: a build's, and a test's that reads the files from the disk. */
42
+ export declare const EVERY_FILE: IsFileKept;
43
+ /**
44
+ * The story files patterns list, as paths relative to `root` starting with `./` or `../`, each once, sorted: the union
45
+ * of the patterns less what the `!` ones match (`listedFiles`).
28
46
  *
29
47
  * @param root - the folder the patterns are relative to: the declaring module's.
30
- * @param patterns - the patterns (`../src/**\/*.stories.tsx`).
48
+ * @param patterns - the patterns (`../src/**\/*.stories.tsx`, `!../src/**\/legacy/*`).
49
+ * @param isKept - whether a listed file may be read; every one by default.
50
+ * @throws when every pattern is a `!` one.
31
51
  */
32
- export declare const storyFileKeys: (root: string, patterns: readonly string[]) => string[];
52
+ export declare const storyFileKeys: (root: string, patterns: readonly string[], isKept?: IsFileKept) => string[];
53
+ /**
54
+ * The specifier prefix of a group of story files named by its patterns, the group following (`storyFilesGroupText`):
55
+ * how the module generated for a catalogue's `stories` imports them as one group, `!` patterns included, which a
56
+ * `?forgebook-files` import of one pattern cannot say.
57
+ */
58
+ export declare const FILES_SPECIFIER_PREFIX = "virtual:forgebook-files:";
59
+ /** The specifier prefix of a group of docs pages named by its patterns, the same way: a catalogue's `docs`. */
60
+ export declare const DOCS_PAGES_SPECIFIER_PREFIX = "virtual:forgebook-docs-pages:";
33
61
  /**
34
62
  * The id prefix of a group's "Used in" module: the group follows (`storyFilesGroupText`), as in a `?forgebook-files`
35
63
  * module's id. The plugin answers it (`usageModule.ts`) only when a page asks.
36
64
  */
37
65
  export declare const USAGE_PREFIX = "virtual:forgebook-usage:";
38
- /** A story file a pattern matches, with its key and its index. */
66
+ /**
67
+ * The id prefix of a group's search index: the group follows (`storyFilesGroupText`). The plugin answers it
68
+ * (`searchModule.ts`) only when a page asks, on the first search.
69
+ */
70
+ export declare const SEARCH_PREFIX = "virtual:forgebook-search:";
71
+ /** The id prefix of a docs pages' search index, the same way: the plugin answers it only on the first search. */
72
+ export declare const PAGES_SEARCH_PREFIX = "virtual:forgebook-search-pages:";
73
+ /**
74
+ * The id prefix of a group's texts module, the same way: a build's, imported by the group's module, which holds each
75
+ * file's docs, code and page as data (`builtTexts.ts`).
76
+ */
77
+ export declare const TEXTS_PREFIX = "virtual:forgebook-texts:";
78
+ /**
79
+ * The id prefix of a group's reach module, what each story reaches, the same way: only the dev server's tools ask for
80
+ * it, so a page that shows "Used in" never downloads it.
81
+ */
82
+ export declare const REACH_PREFIX = "virtual:forgebook-reach:";
83
+ /** A story file a group lists, with its key, the pattern that lists it and its index. */
39
84
  export type IndexedStoryFile = {
40
85
  /** Its path relative to the declaring module (`../src/x.stories.tsx`). */
41
86
  readonly key: string;
87
+ /** The group's first pattern that lists it, whose static start begins its title when its meta writes none. */
88
+ readonly pattern: string;
42
89
  /** Its absolute path. */
43
90
  readonly file: string;
44
91
  /** Its index. */
45
92
  readonly index: StoryFileIndex;
46
93
  };
94
+ /** A group's index as it is kept between starts, by file key. */
95
+ export type KeptIndex = Readonly<Record<string, StoryFileIndex>>;
96
+ /** Whether what a cache file holds is a group's index. */
97
+ export declare const isKeptIndex: (value: unknown) => value is KeptIndex;
98
+ /**
99
+ * One story file a pattern lists, indexed from its text on disk, with the title its path makes when it writes none.
100
+ *
101
+ * @internal
102
+ * @param root - the declaring module's folder.
103
+ * @param pattern - the pattern that lists it.
104
+ * @param key - the file's path relative to the declaring module.
105
+ * @returns the index, or a message saying why the file cannot be indexed.
106
+ */
107
+ export declare const storyFileIndex: (root: string, pattern: string, key: string) => StoryFileIndex | string;
47
108
  /**
48
- * Every story file a pattern matches, indexed.
109
+ * Every story file a group's patterns list, indexed.
49
110
  *
50
111
  * @param root - the declaring module's folder.
51
- * @param pattern - the pattern.
112
+ * @param patterns - the patterns (`storyFileKeys`).
52
113
  * @param watch - adds a file whose edit renews the module that read it.
114
+ * @param cache - the index kept between starts, which holds while the files it came from do; none reads them all.
115
+ * @param isKept - whether a listed file may be read; every one by default.
53
116
  * @throws when a story file cannot be indexed.
54
117
  */
55
- export declare const indexedStoryFiles: (root: string, pattern: string, watch: (file: string) => void) => IndexedStoryFile[];
118
+ export declare const indexedStoryFiles: (root: string, patterns: readonly string[], watch: (file: string) => void, cache?: DiskCache<KeptIndex>, isKept?: IsFileKept) => IndexedStoryFile[];
119
+ /** The loaders a group offers besides its story files'. */
120
+ export type GroupLoaders = {
121
+ /** Whether it offers each story file's component docs (the catalogue reads them); `true` by default. */
122
+ readonly hasDocs?: boolean;
123
+ /** Whether it offers its "Used in" (the catalogue did not turn it off). */
124
+ readonly hasUsage: boolean;
125
+ /** Whether it offers what each story reaches: only on a dev server, for its tools. */
126
+ readonly hasReach: boolean;
127
+ };
56
128
  /**
57
- * The code of the module for one pattern.
129
+ * The code of the module for one group.
58
130
  *
59
131
  * @param root - the declaring module's folder.
60
- * @param pattern - the pattern before `?forgebook-files`.
132
+ * @param patterns - the group's patterns.
61
133
  * @param watch - adds a file whose edit renews the module (each story file: its index is in the module).
62
- * @param hasUsage - whether the group offers its "Used in" loader (the catalogue did not turn it off).
134
+ * @param loaders - the group's loaders besides its story files'; all of them by default.
135
+ * @param cache - the index kept between starts.
63
136
  * @returns the module's code, or a message saying which file cannot be indexed.
64
137
  */
65
- export declare const storyFilesModule: (root: string, pattern: string, watch: (file: string) => void, hasUsage?: boolean) => string;
66
- //# sourceMappingURL=storyFilesModule.d.ts.map
138
+ export declare const storyFilesModule: (root: string, patterns: readonly string[], watch: (file: string) => void, loaders?: GroupLoaders, cache?: DiskCache<KeptIndex>) => string;
139
+ /**
140
+ * The code of the module for one group, from its story files indexed.
141
+ *
142
+ * @internal
143
+ * @param root - the declaring module's folder.
144
+ * @param patterns - the group's patterns.
145
+ * @param files - the story files it lists, indexed.
146
+ * @param loaders - the group's loaders besides its story files'.
147
+ * @param hasTexts - a build's: whether each file's docs, code and page come from the group's texts module, in the
148
+ * rows' order (`TEXTS_PREFIX`), and not each from its query.
149
+ */
150
+ export declare const storyFilesCode: (root: string, patterns: readonly string[], files: readonly IndexedStoryFile[], loaders: GroupLoaders, hasTexts?: boolean) => string;
@@ -1,111 +1,229 @@
1
1
  /**
2
- * The module that answers a `?forgebook-files` import: every story file a pattern matches, as one module with each
3
- * file's index (read from its source, never run), the loaders of its module, its component's docs and its code, and
4
- * the group's "Used in" loader.
2
+ * The module that answers a group of story files: a `?forgebook-files` import's pattern, or a catalogue's `stories`
3
+ * list (`FILES_SPECIFIER_PREFIX`). Every story file the group lists, as one module with each file's index (read from
4
+ * its source, never run), the loaders of its module, its component's docs and its code, and the group's "Used in"
5
+ * loader.
5
6
  *
6
7
  * @remarks
7
- * One module per pattern, instead of an import per file: in development the browser fetched every index module one by
8
- * one, a few hundred requests per frame. The keys are the files' paths relative to the declaring module
9
- * (`../src/x.stories.tsx`), the same keys `storyFileKeys` gives the tests that read the files from the disk.
8
+ * One module per group, instead of an import per file: in development the browser fetched every index module one by
9
+ * one, a few hundred requests per frame. A catalogue's `stories` are one group, not one per pattern: its `!` patterns
10
+ * leave files out of what all the others list, a file two patterns list is listed once, and "Used in" joins stories
11
+ * across every pattern. The keys are the files' paths relative to the declaring module
12
+ * (`../src/x.stories.tsx`), the same keys `storyFileKeys` gives the tests that read the files from the disk. A build
13
+ * takes each file's docs, code and page from the group's texts module, written as data, instead of their loaders'
14
+ * imports (`builtTexts.ts`).
10
15
  *
11
16
  * @module
12
17
  */
13
- import { globSync, readFileSync } from "node:fs";
14
- import { join, relative, resolve } from "node:path";
18
+ import { readFileSync } from "node:fs";
19
+ import { codeLiteral } from "../codeLiteral.js";
15
20
  import { autoTitle, patternBase } from "./autoTitle.js";
21
+ import { isSettledSince, nowNs, stampPaths } from "./diskCache.js";
16
22
  import { indexStoryFile } from "./indexStoryFile.js";
23
+ import { isNegated, listedFiles } from "./storyPatterns.js";
24
+ import { VITE_PATHS } from "./vitePaths.js";
17
25
  /** Between a group's parts in a module's id: no path or pattern holds it. */
18
- const GROUP_SEPARATOR = "::";
26
+ export const GROUP_SEPARATOR = "::";
27
+ /** Before a pattern's count of climbed folders in a module's id, when it is a `!` pattern. */
28
+ const NEGATED_MARK = "!";
19
29
  /**
20
- * A `?forgebook-files` group written for a module's id: the folder, how many folders the pattern climbs, and the rest
21
- * of the pattern. A Vite module's id is served under a URL path, whose normalisation would let a `..` remove the part
22
- * before it (`app::../storybook`: the folder and the separator), so the pattern's leading `../` are counted, never
23
- * written. The files keep their keys relative to the declaring module (`../src/x.stories.tsx`), unique in a source and
24
- * the testing package's too.
30
+ * One pattern written for a module's id: whether it leaves files out and how many folders it climbs, then the rest of
31
+ * it. The mark goes with the count, never with the rest, which may start with an extglob's `!(…)`.
25
32
  *
26
- * @param folder - the declaring module's folder.
27
33
  * @param pattern - the pattern as the import writes it (`../src/**\/*.stories.tsx`).
28
34
  */
29
- export const storyFilesGroupText = (folder, pattern) => {
30
- const segments = pattern.split("/");
35
+ const patternParts = (pattern) => {
36
+ const isLeftOut = isNegated(pattern);
37
+ const segments = (isLeftOut ? pattern.slice(1) : pattern).split("/");
31
38
  const firstOwn = segments.findIndex((segment) => segment !== "." && segment !== "..");
32
39
  const climbed = firstOwn === -1 ? segments : segments.slice(0, firstOwn);
33
40
  const own = firstOwn === -1 ? [] : segments.slice(firstOwn);
34
41
  const up = climbed.filter((segment) => segment === "..").length;
35
- return [folder, String(up), own.join("/")].join(GROUP_SEPARATOR);
42
+ return [`${isLeftOut ? NEGATED_MARK : ""}${up}`, own.join("/")];
36
43
  };
44
+ /**
45
+ * A group of story files written for a module's id: the folder, then for each pattern how many folders it climbs and
46
+ * the rest of it. A Vite module's id is served under a URL path, whose normalisation would let a `..` remove the part
47
+ * before it (`app::../storybook`: the folder and the separator), so a pattern's leading `../` are counted, never
48
+ * written. The files keep their keys relative to the declaring module (`../src/x.stories.tsx`), unique in a source and
49
+ * the testing package's too.
50
+ *
51
+ * @param folder - the declaring module's folder.
52
+ * @param patterns - the patterns as the import or the configuration writes them (`../src/**\/*.stories.tsx`).
53
+ */
54
+ export const storyFilesGroupText = (folder, patterns) => [folder, ...patterns.flatMap(patternParts)].join(GROUP_SEPARATOR);
37
55
  /**
38
56
  * A group read back from a module's id (`storyFilesGroupText`).
39
57
  *
40
58
  * @param text - the id's group part.
41
59
  */
42
60
  export const storyFilesGroupOf = (text) => {
43
- const [root = "", up = "0", own = ""] = text.split(GROUP_SEPARATOR);
44
- return { root, pattern: `${"../".repeat(Number(up))}${own}` };
61
+ const [root = "", ...parts] = text.split(GROUP_SEPARATOR);
62
+ const patterns = [];
63
+ for (let at = 0; at < parts.length; at += 2) {
64
+ const count = parts[at] ?? "0";
65
+ const isLeftOut = count.startsWith(NEGATED_MARK);
66
+ const up = Number(isLeftOut ? count.slice(NEGATED_MARK.length) : count);
67
+ patterns.push(`${isLeftOut ? "!" : ""}${"../".repeat(up)}${parts[at + 1] ?? ""}`);
68
+ }
69
+ return { root, patterns };
45
70
  };
71
+ /** Every file a group lists: a build's, and a test's that reads the files from the disk. */
72
+ export const EVERY_FILE = () => true;
46
73
  /**
47
- * The story files patterns match, as paths relative to `root` starting with `./` or `../`, sorted.
74
+ * The story files patterns list, as paths relative to `root` starting with `./` or `../`, each once, sorted: the union
75
+ * of the patterns less what the `!` ones match (`listedFiles`).
48
76
  *
49
77
  * @param root - the folder the patterns are relative to: the declaring module's.
50
- * @param patterns - the patterns (`../src/**\/*.stories.tsx`).
78
+ * @param patterns - the patterns (`../src/**\/*.stories.tsx`, `!../src/**\/legacy/*`).
79
+ * @param isKept - whether a listed file may be read; every one by default.
80
+ * @throws when every pattern is a `!` one.
81
+ */
82
+ export const storyFileKeys = (root, patterns, isKept = EVERY_FILE) => listedFiles(root, patterns)
83
+ .map((file) => file.key)
84
+ .filter((key) => isKept(VITE_PATHS.resolve(root, key)));
85
+ /**
86
+ * The specifier prefix of a group of story files named by its patterns, the group following (`storyFilesGroupText`):
87
+ * how the module generated for a catalogue's `stories` imports them as one group, `!` patterns included, which a
88
+ * `?forgebook-files` import of one pattern cannot say.
51
89
  */
52
- export const storyFileKeys = (root, patterns) => patterns
53
- .flatMap((pattern) => globSync(pattern, { cwd: root }))
54
- .map((file) => {
55
- const path = relative(root, join(root, file)).split("\\").join("/");
56
- return path.startsWith(".") ? path : `./${path}`;
57
- })
58
- .sort();
90
+ export const FILES_SPECIFIER_PREFIX = "virtual:forgebook-files:";
91
+ /** The specifier prefix of a group of docs pages named by its patterns, the same way: a catalogue's `docs`. */
92
+ export const DOCS_PAGES_SPECIFIER_PREFIX = "virtual:forgebook-docs-pages:";
59
93
  /**
60
94
  * The id prefix of a group's "Used in" module: the group follows (`storyFilesGroupText`), as in a `?forgebook-files`
61
95
  * module's id. The plugin answers it (`usageModule.ts`) only when a page asks.
62
96
  */
63
97
  export const USAGE_PREFIX = "virtual:forgebook-usage:";
64
98
  /**
65
- * Every story file a pattern matches, indexed.
99
+ * The id prefix of a group's search index: the group follows (`storyFilesGroupText`). The plugin answers it
100
+ * (`searchModule.ts`) only when a page asks, on the first search.
101
+ */
102
+ export const SEARCH_PREFIX = "virtual:forgebook-search:";
103
+ /** The id prefix of a docs pages' search index, the same way: the plugin answers it only on the first search. */
104
+ export const PAGES_SEARCH_PREFIX = "virtual:forgebook-search-pages:";
105
+ /**
106
+ * The id prefix of a group's texts module, the same way: a build's, imported by the group's module, which holds each
107
+ * file's docs, code and page as data (`builtTexts.ts`).
108
+ */
109
+ export const TEXTS_PREFIX = "virtual:forgebook-texts:";
110
+ /**
111
+ * The id prefix of a group's reach module, what each story reaches, the same way: only the dev server's tools ask for
112
+ * it, so a page that shows "Used in" never downloads it.
113
+ */
114
+ export const REACH_PREFIX = "virtual:forgebook-reach:";
115
+ /** Whether what a cache file holds is a group's index. */
116
+ export const isKeptIndex = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
117
+ /**
118
+ * One story file a pattern lists, indexed from its text on disk, with the title its path makes when it writes none.
119
+ *
120
+ * @internal
121
+ * @param root - the declaring module's folder.
122
+ * @param pattern - the pattern that lists it.
123
+ * @param key - the file's path relative to the declaring module.
124
+ * @returns the index, or a message saying why the file cannot be indexed.
125
+ */
126
+ export const storyFileIndex = (root, pattern, key) => {
127
+ const file = VITE_PATHS.resolve(root, key);
128
+ const title = autoTitle(patternBase(pattern), key);
129
+ return indexStoryFile(file, readFileSync(file, "utf8"), title === undefined ? {} : { autoTitle: title });
130
+ };
131
+ /**
132
+ * Every story file a group's patterns list, indexed.
66
133
  *
67
134
  * @param root - the declaring module's folder.
68
- * @param pattern - the pattern.
135
+ * @param patterns - the patterns (`storyFileKeys`).
69
136
  * @param watch - adds a file whose edit renews the module that read it.
137
+ * @param cache - the index kept between starts, which holds while the files it came from do; none reads them all.
138
+ * @param isKept - whether a listed file may be read; every one by default.
70
139
  * @throws when a story file cannot be indexed.
71
140
  */
72
- export const indexedStoryFiles = (root, pattern, watch) => storyFileKeys(root, [pattern]).map((key) => {
73
- const file = resolve(root, key);
74
- watch(file);
75
- const title = autoTitle(patternBase(pattern), key);
76
- const index = indexStoryFile(file, readFileSync(file, "utf8"), title === undefined ? {} : { autoTitle: title });
77
- if (typeof index === "string")
78
- throw new Error(index);
79
- return { key, file, index };
80
- });
81
- /** An object literal of a key per file, each value written by `value`. */
82
- const objectOf = (keys, value) => `{${keys.map((key) => `${JSON.stringify(key)}: ${value(key)}`).join(",\n")}}`;
141
+ export const indexedStoryFiles = (root, patterns, watch, cache, isKept = EVERY_FILE) => {
142
+ const name = storyFilesGroupText(VITE_PATHS.normalize(root), patterns);
143
+ const since = nowNs();
144
+ const kept = cache?.read(name);
145
+ const listed = listedFiles(root, patterns).filter(({ key }) => isKept(VITE_PATHS.resolve(root, key)));
146
+ const files = listed.map(({ key, pattern }) => {
147
+ const file = VITE_PATHS.resolve(root, key);
148
+ watch(file);
149
+ const known = kept?.[key];
150
+ if (known !== undefined)
151
+ return { key, pattern, file, index: known };
152
+ const index = storyFileIndex(root, pattern, key);
153
+ if (typeof index === "string")
154
+ throw new Error(index);
155
+ return { key, pattern, file, index };
156
+ });
157
+ // kept again when anything was read anew: a file added, or the kept index out of date
158
+ if (cache !== undefined && files.some(({ key }) => kept?.[key] === undefined)) {
159
+ const stamps = stampPaths(files.map((each) => each.file));
160
+ const index = Object.fromEntries(files.map((each) => [each.key, each.index]));
161
+ if (isSettledSince(stamps, since))
162
+ cache.write(name, index, stamps);
163
+ }
164
+ return files;
165
+ };
83
166
  /**
84
- * The code of the module for one pattern.
167
+ * The code of the module for one group.
85
168
  *
86
169
  * @param root - the declaring module's folder.
87
- * @param pattern - the pattern before `?forgebook-files`.
170
+ * @param patterns - the group's patterns.
88
171
  * @param watch - adds a file whose edit renews the module (each story file: its index is in the module).
89
- * @param hasUsage - whether the group offers its "Used in" loader (the catalogue did not turn it off).
172
+ * @param loaders - the group's loaders besides its story files'; all of them by default.
173
+ * @param cache - the index kept between starts.
90
174
  * @returns the module's code, or a message saying which file cannot be indexed.
91
175
  */
92
- export const storyFilesModule = (root, pattern, watch, hasUsage = true) => {
93
- const files = indexedStoryFiles(root, pattern, watch);
94
- const keys = files.map((file) => file.key);
95
- const index = Object.fromEntries(files.map((file) => [file.key, file.index]));
96
- const usage = JSON.stringify(`${USAGE_PREFIX}${storyFilesGroupText(root, pattern)}`);
97
- // absolute paths: the module has no folder of its own; Vite serves them under /@fs/ in development
98
- const path = (key) => JSON.stringify(resolve(root, key));
99
- const query = (key, name) => JSON.stringify(`${resolve(root, key)}?${name}`);
176
+ export const storyFilesModule = (root, patterns, watch, loaders = { hasUsage: true, hasReach: true }, cache) => storyFilesCode(root, patterns, indexedStoryFiles(root, patterns, watch, cache), loaders);
177
+ /**
178
+ * The code of the module for one group, from its story files indexed.
179
+ *
180
+ * @internal
181
+ * @param root - the declaring module's folder.
182
+ * @param patterns - the group's patterns.
183
+ * @param files - the story files it lists, indexed.
184
+ * @param loaders - the group's loaders besides its story files'.
185
+ * @param hasTexts - a build's: whether each file's docs, code and page come from the group's texts module, in the
186
+ * rows' order (`TEXTS_PREFIX`), and not each from its query.
187
+ */
188
+ export const storyFilesCode = (root, patterns, files, loaders, hasTexts = false) => {
189
+ const { hasDocs = true, hasUsage, hasReach } = loaders;
190
+ // the group's id in Vite's form, as the plugin names the declaring module's folder
191
+ const folder = VITE_PATHS.normalize(root);
192
+ const usage = codeLiteral(`${USAGE_PREFIX}${storyFilesGroupText(folder, patterns)}`);
193
+ const search = codeLiteral(`${SEARCH_PREFIX}${storyFilesGroupText(folder, patterns)}`);
194
+ const reach = codeLiteral(`${REACH_PREFIX}${storyFilesGroupText(folder, patterns)}`);
195
+ const texts = codeLiteral(`${TEXTS_PREFIX}${storyFilesGroupText(folder, patterns)}`);
196
+ // absolute paths in Vite's form: the module has no folder of its own, Vite serves them under /@fs/ in development,
197
+ // and the queries' ids come back to the plugin as written here
198
+ const absolute = (key) => VITE_PATHS.resolve(folder, key);
199
+ const path = (key) => codeLiteral(absolute(key));
200
+ const query = (key, name) => `() => import(${codeLiteral(`${absolute(key)}?${name}`)}).then((module) => module.default)`;
201
+ const textLoaders = (key) => hasTexts
202
+ ? []
203
+ : // the docs' place is kept without them, so every row's columns stay where the module reads them
204
+ [
205
+ hasDocs ? query(key, "forgebook-docs") : "null",
206
+ query(key, "forgebook-code"),
207
+ query(key, "forgebook-page")
208
+ ];
209
+ // a row per file, its name written once and not once per column (its index, each loader): a large catalogue's
210
+ // names are a tenth of its index
211
+ const rows = files.map(({ key, index }) => [codeLiteral(key), codeLiteral(index), `() => import(${path(key)})`, ...textLoaders(key)].join(", "));
212
+ const written = `[${rows.map((row) => `[${row}]`).join(",\n")}]`;
100
213
  return [
214
+ ...(hasTexts ? [`import texts from ${texts};`] : []),
215
+ // a build's texts are their module's rows, in the same order: each joins its file's
216
+ `const rows = ${hasTexts ? `${written}.map((row, at) => row.concat(texts[at]))` : written};`,
217
+ "const column = (at) => Object.fromEntries(rows.map((row) => [row[0], row[at]]));",
101
218
  "export default {",
102
- `index: ${JSON.stringify(index)},`,
103
- `stories: ${objectOf(keys, (key) => `() => import(${path(key)})`)},`,
104
- `docs: ${objectOf(keys, (key) => `() => import(${query(key, "forgebook-docs")}).then((module) => module.default)`)},`,
105
- `code: ${objectOf(keys, (key) => `() => import(${query(key, "forgebook-code")}).then((module) => module.default)`)},`,
106
- `pages: ${objectOf(keys, (key) => `() => import(${query(key, "forgebook-page")}).then((module) => module.default)`)}${hasUsage ? "," : ""}`,
107
- ...(hasUsage ? [`usage: () => import(${usage}).then((module) => module.default)`] : []),
219
+ "index: column(1),",
220
+ "stories: column(2),",
221
+ hasDocs ? "docs: column(3)," : "docs: {},",
222
+ "code: column(4),",
223
+ "pages: column(5),",
224
+ `search: () => import(${search}).then((module) => module.default),`,
225
+ ...(hasUsage ? [`usage: () => import(${usage}).then((module) => module.default),`] : []),
226
+ ...(hasReach ? [`reach: () => import(${reach}).then((module) => module.default),`] : []),
108
227
  "};"
109
228
  ].join("\n");
110
229
  };
111
- //# sourceMappingURL=storyFilesModule.js.map
@@ -1,10 +1,11 @@
1
1
  /**
2
- * A story file's meta, read from its source with the TypeScript compiler's parser: the value of one of its fields, the
3
- * component it names and the module it imports that component from.
2
+ * A story file's meta, read from its source with the TypeScript compiler's parser, for the docs: the value of one of its
3
+ * fields, the component it names and its subcomponents.
4
4
  *
5
5
  * @remarks
6
- * CSF is the same whatever framework a story is written for, so the plugin, `forgebook-docs` and every framework's
7
- * docs extractor read the meta through this module. Pure: a parsed file in, nodes or a specifier out.
6
+ * CSF is the same whatever framework a story is written for, so `forgebook-docs` and every framework's docs extractor
7
+ * read the meta through this module, inside their TypeScript program. The plugin's own reading, outside any program,
8
+ * is `componentImport.ts`. Pure: a parsed file in, nodes out.
8
9
  *
9
10
  * @module
10
11
  */
@@ -22,13 +23,21 @@ export declare const metaField: (source: ts.SourceFile, name: string) => ts.Expr
22
23
  * @param source - the story file, parsed.
23
24
  */
24
25
  export declare const metaComponent: (source: ts.SourceFile) => ts.Expression | undefined;
26
+ /** An expression without the wrappers around a literal list (`as const`, `satisfies`, parentheses). */
27
+ export declare const unwrapped: (expression: ts.Expression) => ts.Expression;
28
+ /** A subcomponent the meta names: the name it gives it, and where the code names its value. */
29
+ export type MetaSubcomponent = {
30
+ /** Its key in `subcomponents`. */
31
+ readonly name: string;
32
+ /** The expression that names the component, the location the checker reads its type at. */
33
+ readonly expression: ts.Expression;
34
+ /** The component's symbol as written there; a shorthand (`{ ChipList }`) names the value, not the key. */
35
+ readonly symbol: ts.Symbol | undefined;
36
+ };
25
37
  /**
26
- * The module a story file imports its meta's component from (`./Button`), read from the file alone: no program, so
27
- * it answers at once, where the docs need the package's program.
38
+ * The subcomponents the meta names, in the order it writes them: `subcomponents: { ChipList, Items: MenuItem }`.
28
39
  *
29
- * @param storyFile - the story file's path, for the parser.
30
- * @param text - the story file's text.
31
- * @returns the import's module specifier, or none when the meta names no imported component.
40
+ * @param source - the story file, parsed.
41
+ * @param checker - the program's checker.
32
42
  */
33
- export declare const componentImport: (storyFile: string, text: string) => string | undefined;
34
- //# sourceMappingURL=storyMeta.d.ts.map
43
+ export declare const metaSubcomponents: (source: ts.SourceFile, checker: ts.TypeChecker) => MetaSubcomponent[];