forgebook 0.1.8 → 0.2.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 (1124) hide show
  1. package/README.md +875 -23
  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 +161 -40
  6. package/dist/bin/forgebook/agentText.d.ts +74 -3
  7. package/dist/bin/forgebook/agentText.js +192 -8
  8. package/dist/bin/forgebook/agents.md +141 -7
  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 +23 -11
  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/audiences.d.ts +17 -0
  114. package/dist/src/audiences.js +15 -0
  115. package/dist/src/backdrops.d.ts +39 -40
  116. package/dist/src/backdrops.js +37 -174
  117. package/dist/src/catalogue.d.ts +56 -20
  118. package/dist/src/catalogue.js +33 -14
  119. package/dist/src/codeLiteral.d.ts +41 -0
  120. package/dist/src/codeLiteral.js +51 -0
  121. package/dist/src/componentDocs.d.ts +57 -1
  122. package/dist/src/componentDocs.js +20 -3
  123. package/dist/src/controlKeys.d.ts +0 -1
  124. package/dist/src/controlKeys.js +0 -1
  125. package/dist/src/deviceDrawing.d.ts +114 -0
  126. package/dist/src/deviceDrawing.js +358 -0
  127. package/dist/src/deviceMenuView.d.ts +17 -0
  128. package/dist/src/deviceMenuView.js +22 -0
  129. package/dist/src/devicePicture.d.ts +57 -0
  130. package/dist/src/devicePicture.js +104 -0
  131. package/dist/src/deviceView.d.ts +172 -0
  132. package/dist/src/deviceView.js +111 -0
  133. package/dist/src/devices.d.ts +115 -0
  134. package/dist/src/devices.js +135 -0
  135. package/dist/src/docAnchors.d.ts +27 -0
  136. package/dist/src/docAnchors.js +33 -0
  137. package/dist/src/docPages.d.ts +203 -0
  138. package/dist/src/docPages.js +169 -0
  139. package/dist/src/embed.d.ts +32 -0
  140. package/dist/src/embed.js +24 -0
  141. package/dist/src/embedCode.d.ts +31 -0
  142. package/dist/src/embedCode.js +88 -0
  143. package/dist/src/frame/backdropPictures.d.ts +29 -0
  144. package/dist/src/frame/backdropPictures.js +187 -0
  145. package/dist/src/frame/checkStory.d.ts +6 -3
  146. package/dist/src/frame/checkStory.js +76 -5
  147. package/dist/src/frame/followTouch.d.ts +9 -0
  148. package/dist/src/frame/followTouch.js +43 -0
  149. package/dist/src/frame/frame.css +8 -3
  150. package/dist/src/frame/frameClock.d.ts +0 -1
  151. package/dist/src/frame/frameClock.js +0 -1
  152. package/dist/src/frame/frameStatus.d.ts +2 -1
  153. package/dist/src/frame/frameStatus.js +2 -1
  154. package/dist/src/frame/frameView.d.ts +0 -1
  155. package/dist/src/frame/frameView.js +1 -2
  156. package/dist/src/frame/matrixLayout.d.ts +0 -1
  157. package/dist/src/frame/matrixLayout.js +0 -1
  158. package/dist/src/frame/measureTools.d.ts +0 -1
  159. package/dist/src/frame/measureTools.js +0 -1
  160. package/dist/src/frame/mountFrame.d.ts +10 -3
  161. package/dist/src/frame/mountFrame.js +162 -63
  162. package/dist/src/frame/playStory.d.ts +0 -1
  163. package/dist/src/frame/playStory.js +0 -1
  164. package/dist/src/frame/pluginFrames.d.ts +31 -0
  165. package/dist/src/frame/pluginFrames.js +23 -0
  166. package/dist/src/frame/renderer.d.ts +50 -12
  167. package/dist/src/frame/renderer.js +27 -6
  168. package/dist/src/frame/settle.d.ts +0 -1
  169. package/dist/src/frame/settle.js +0 -1
  170. package/dist/src/frame/shellChannel.d.ts +47 -0
  171. package/dist/src/frame/shellChannel.js +39 -0
  172. package/dist/src/frame/spillOutline.d.ts +0 -1
  173. package/dist/src/frame/spillOutline.js +0 -1
  174. package/dist/src/frame/staleModule.d.ts +14 -2
  175. package/dist/src/frame/staleModule.js +19 -2
  176. package/dist/src/frame/storyCanvas.d.ts +0 -1
  177. package/dist/src/frame/storyCanvas.js +0 -1
  178. package/dist/src/frame/storyHooks.d.ts +0 -1
  179. package/dist/src/frame/storyHooks.js +0 -1
  180. package/dist/src/frame/storyModule.d.ts +13 -2
  181. package/dist/src/frame/storyModule.js +45 -3
  182. package/dist/src/frame/storyRun.d.ts +21 -4
  183. package/dist/src/frame/storyRun.js +100 -19
  184. package/dist/src/frame/touchDots.d.ts +0 -1
  185. package/dist/src/frame/touchDots.js +0 -1
  186. package/dist/src/frame/touchEvents.d.ts +0 -1
  187. package/dist/src/frame/touchEvents.js +0 -1
  188. package/dist/src/frame/touchGesture.d.ts +0 -1
  189. package/dist/src/frame/touchGesture.js +0 -1
  190. package/dist/src/frame/touchLayer.d.ts +3 -3
  191. package/dist/src/frame/touchLayer.js +4 -30
  192. package/dist/src/frame/touchScroll.d.ts +0 -1
  193. package/dist/src/frame/touchScroll.js +0 -1
  194. package/dist/src/frameOrigins.d.ts +62 -0
  195. package/dist/src/frameOrigins.js +49 -0
  196. package/dist/src/hotModules.d.ts +48 -0
  197. package/dist/src/hotModules.js +53 -0
  198. package/dist/src/jsxCode.d.ts +22 -0
  199. package/dist/src/jsxCode.js +36 -0
  200. package/dist/src/languages.d.ts +0 -1
  201. package/dist/src/languages.js +0 -1
  202. package/dist/src/liveErrors.d.ts +0 -1
  203. package/dist/src/liveErrors.js +0 -1
  204. package/dist/src/matrix.d.ts +0 -1
  205. package/dist/src/matrix.js +0 -1
  206. package/dist/src/messages.d.ts +28 -2
  207. package/dist/src/messages.js +24 -3
  208. package/dist/src/namedValues.d.ts +11 -1
  209. package/dist/src/namedValues.js +25 -2
  210. package/dist/src/namedViews.d.ts +1 -13
  211. package/dist/src/namedViews.js +30 -7
  212. package/dist/src/packedText.d.ts +21 -0
  213. package/dist/src/packedText.js +36 -0
  214. package/dist/src/pageAddress.d.ts +26 -0
  215. package/dist/src/pageAddress.js +39 -0
  216. package/dist/src/pageConfig.d.ts +3 -1
  217. package/dist/src/pageConfig.js +0 -1
  218. package/dist/src/pageTree.d.ts +79 -0
  219. package/dist/src/pageTree.js +108 -0
  220. package/dist/src/playTrace.d.ts +0 -1
  221. package/dist/src/playTrace.js +0 -1
  222. package/dist/src/plugin.d.ts +230 -0
  223. package/dist/src/plugin.js +12 -0
  224. package/dist/src/pluginReact.d.ts +23 -0
  225. package/dist/src/pluginReact.js +24 -0
  226. package/dist/src/previewRelay.d.ts +40 -0
  227. package/dist/src/previewRelay.js +69 -0
  228. package/dist/src/previewTexts.d.ts +26 -0
  229. package/dist/src/previewTexts.js +33 -0
  230. package/dist/src/previewView.d.ts +31 -0
  231. package/dist/src/previewView.js +264 -0
  232. package/dist/src/propGroups.d.ts +46 -0
  233. package/dist/src/propGroups.js +59 -0
  234. package/dist/src/realTouch.d.ts +1 -2
  235. package/dist/src/realTouch.js +1 -2
  236. package/dist/src/safeAreaParameter.d.ts +42 -0
  237. package/dist/src/safeAreaParameter.js +50 -0
  238. package/dist/src/search.d.ts +154 -0
  239. package/dist/src/search.js +265 -0
  240. package/dist/src/searchIndex.d.ts +61 -0
  241. package/dist/src/searchIndex.js +55 -0
  242. package/dist/src/searchMarks.d.ts +29 -0
  243. package/dist/src/searchMarks.js +165 -0
  244. package/dist/src/searchMatch.d.ts +58 -0
  245. package/dist/src/searchMatch.js +127 -0
  246. package/dist/src/shell/A11yTab.d.ts +0 -7
  247. package/dist/src/shell/A11yTab.js +4 -15
  248. package/dist/src/shell/AnchorScroll.d.ts +25 -0
  249. package/dist/src/shell/AnchorScroll.js +10 -0
  250. package/dist/src/shell/ApiReference.d.ts +11 -4
  251. package/dist/src/shell/ApiReference.js +73 -19
  252. package/dist/src/shell/AppearanceMenu.d.ts +1 -2
  253. package/dist/src/shell/AppearanceMenu.js +8 -5
  254. package/dist/src/shell/AudienceSections.d.ts +106 -0
  255. package/dist/src/shell/AudienceSections.js +154 -0
  256. package/dist/src/shell/AuthoredHome.d.ts +37 -0
  257. package/dist/src/shell/AuthoredHome.js +96 -0
  258. package/dist/src/shell/BoxWidth.d.ts +0 -1
  259. package/dist/src/shell/BoxWidth.js +0 -1
  260. package/dist/src/shell/ClockBar.d.ts +19 -0
  261. package/dist/src/shell/ClockBar.js +15 -0
  262. package/dist/src/shell/ClockControls.d.ts +5 -9
  263. package/dist/src/shell/ClockControls.js +13 -16
  264. package/dist/src/shell/Code.d.ts +0 -1
  265. package/dist/src/shell/Code.js +0 -1
  266. package/dist/src/shell/CodeTab.d.ts +0 -1
  267. package/dist/src/shell/CodeTab.js +2 -2
  268. package/dist/src/shell/CodeText.d.ts +0 -1
  269. package/dist/src/shell/CodeText.js +0 -1
  270. package/dist/src/shell/CompareGrid.d.ts +37 -0
  271. package/dist/src/shell/CompareGrid.js +24 -0
  272. package/dist/src/shell/ComponentPage.d.ts +45 -7
  273. package/dist/src/shell/ComponentPage.js +105 -49
  274. package/dist/src/shell/ControlKeyField.d.ts +0 -1
  275. package/dist/src/shell/ControlKeyField.js +3 -4
  276. package/dist/src/shell/ControlRow.d.ts +4 -4
  277. package/dist/src/shell/ControlRow.js +5 -5
  278. package/dist/src/shell/DeviceControl.d.ts +31 -0
  279. package/dist/src/shell/DeviceControl.js +33 -0
  280. package/dist/src/shell/DeviceSlot.d.ts +114 -0
  281. package/dist/src/shell/DeviceSlot.js +134 -0
  282. package/dist/src/shell/DocBlocks.d.ts +100 -0
  283. package/dist/src/shell/DocBlocks.js +206 -0
  284. package/dist/src/shell/DocContainers.d.ts +70 -0
  285. package/dist/src/shell/DocContainers.js +94 -0
  286. package/dist/src/shell/DocContents.d.ts +29 -0
  287. package/dist/src/shell/DocContents.js +88 -0
  288. package/dist/src/shell/DocPage.d.ts +69 -0
  289. package/dist/src/shell/DocPage.js +141 -0
  290. package/dist/src/shell/Dock.d.ts +1 -2
  291. package/dist/src/shell/Dock.js +1 -2
  292. package/dist/src/shell/DroppedArgsList.d.ts +26 -0
  293. package/dist/src/shell/DroppedArgsList.js +8 -0
  294. package/dist/src/shell/DroppedArgsNote.d.ts +14 -0
  295. package/dist/src/shell/DroppedArgsNote.js +10 -0
  296. package/dist/src/shell/EmbedButton.d.ts +19 -0
  297. package/dist/src/shell/EmbedButton.js +96 -0
  298. package/dist/src/shell/EmbedPage.d.ts +23 -0
  299. package/dist/src/shell/EmbedPage.js +168 -0
  300. package/dist/src/shell/EmbedPanel.d.ts +25 -0
  301. package/dist/src/shell/EmbedPanel.js +46 -0
  302. package/dist/src/shell/EventsTab.d.ts +0 -1
  303. package/dist/src/shell/EventsTab.js +2 -3
  304. package/dist/src/shell/Example.d.ts +20 -2
  305. package/dist/src/shell/Example.js +75 -22
  306. package/dist/src/shell/FrameView.d.ts +1 -2
  307. package/dist/src/shell/FrameView.js +4 -4
  308. package/dist/src/shell/HomePage.d.ts +78 -4
  309. package/dist/src/shell/HomePage.js +53 -14
  310. package/dist/src/shell/HomePieces.d.ts +40 -0
  311. package/dist/src/shell/HomePieces.js +29 -0
  312. package/dist/src/shell/InfoTip.d.ts +0 -1
  313. package/dist/src/shell/InfoTip.js +0 -1
  314. package/dist/src/shell/InteractionsTab.d.ts +0 -7
  315. package/dist/src/shell/InteractionsTab.js +3 -9
  316. package/dist/src/shell/LazyHost.d.ts +16 -0
  317. package/dist/src/shell/LazyHost.js +42 -0
  318. package/dist/src/shell/LazyPage.d.ts +24 -0
  319. package/dist/src/shell/LazyPage.js +9 -0
  320. package/dist/src/shell/LogicMark.d.ts +0 -1
  321. package/dist/src/shell/LogicMark.js +0 -1
  322. package/dist/src/shell/MatrixPicker.d.ts +0 -1
  323. package/dist/src/shell/MatrixPicker.js +0 -1
  324. package/dist/src/shell/NamedViews.d.ts +0 -1
  325. package/dist/src/shell/NamedViews.js +4 -5
  326. package/dist/src/shell/PackageHtml.d.ts +0 -1
  327. package/dist/src/shell/PackageHtml.js +0 -1
  328. package/dist/src/shell/PartsTab.d.ts +0 -7
  329. package/dist/src/shell/PartsTab.js +3 -13
  330. package/dist/src/shell/PinnedControl.d.ts +0 -1
  331. package/dist/src/shell/PinnedControl.js +2 -2
  332. package/dist/src/shell/PluginBlockHost.d.ts +46 -0
  333. package/dist/src/shell/PluginBlockHost.js +39 -0
  334. package/dist/src/shell/PluginTabHost.d.ts +32 -0
  335. package/dist/src/shell/PluginTabHost.js +25 -0
  336. package/dist/src/shell/PluginViewHost.d.ts +37 -0
  337. package/dist/src/shell/PluginViewHost.js +89 -0
  338. package/dist/src/shell/PropFields.d.ts +0 -1
  339. package/dist/src/shell/PropFields.js +0 -1
  340. package/dist/src/shell/PropsTab.d.ts +11 -2
  341. package/dist/src/shell/PropsTab.js +31 -5
  342. package/dist/src/shell/SearchPanel.d.ts +63 -0
  343. package/dist/src/shell/SearchPanel.js +209 -0
  344. package/dist/src/shell/Segmented.d.ts +0 -1
  345. package/dist/src/shell/Segmented.js +0 -1
  346. package/dist/src/shell/Shell.d.ts +34 -6
  347. package/dist/src/shell/Shell.js +271 -70
  348. package/dist/src/shell/Sidebar.d.ts +20 -5
  349. package/dist/src/shell/Sidebar.js +23 -56
  350. package/dist/src/shell/SidebarDocs.d.ts +38 -0
  351. package/dist/src/shell/SidebarDocs.js +30 -0
  352. package/dist/src/shell/SidebarEntries.d.ts +9 -1
  353. package/dist/src/shell/SidebarEntries.js +1 -2
  354. package/dist/src/shell/SidebarHandle.d.ts +0 -1
  355. package/dist/src/shell/SidebarHandle.js +0 -1
  356. package/dist/src/shell/SidebarSearch.d.ts +40 -0
  357. package/dist/src/shell/SidebarSearch.js +85 -0
  358. package/dist/src/shell/SignatureReference.d.ts +0 -1
  359. package/dist/src/shell/SignatureReference.js +1 -2
  360. package/dist/src/shell/Stage.d.ts +9 -4
  361. package/dist/src/shell/Stage.js +112 -59
  362. package/dist/src/shell/StageCompare.d.ts +14 -0
  363. package/dist/src/shell/StageCompare.js +11 -0
  364. package/dist/src/shell/StageTools.d.ts +0 -1
  365. package/dist/src/shell/StageTools.js +0 -1
  366. package/dist/src/shell/StageViewport.d.ts +7 -3
  367. package/dist/src/shell/StageViewport.js +4 -5
  368. package/dist/src/shell/StoryBar.d.ts +40 -0
  369. package/dist/src/shell/StoryBar.js +23 -0
  370. package/dist/src/shell/StoryCodeBlock.d.ts +1 -2
  371. package/dist/src/shell/StoryCodeBlock.js +0 -1
  372. package/dist/src/shell/StoryCoverage.d.ts +36 -0
  373. package/dist/src/shell/StoryCoverage.js +126 -0
  374. package/dist/src/shell/StoryPicker.d.ts +0 -1
  375. package/dist/src/shell/StoryPicker.js +0 -1
  376. package/dist/src/shell/Toolbar.d.ts +7 -3
  377. package/dist/src/shell/Toolbar.js +6 -6
  378. package/dist/src/shell/ToolbarControl.d.ts +6 -8
  379. package/dist/src/shell/ToolbarControl.js +28 -20
  380. package/dist/src/shell/UsedIn.d.ts +5 -6
  381. package/dist/src/shell/UsedIn.js +7 -20
  382. package/dist/src/shell/ViewMenu.d.ts +7 -7
  383. package/dist/src/shell/ViewMenu.js +61 -176
  384. package/dist/src/shell/ViewMenuPanel.d.ts +41 -0
  385. package/dist/src/shell/ViewMenuPanel.js +199 -0
  386. package/dist/src/shell/WidthField.d.ts +3 -2
  387. package/dist/src/shell/WidthField.js +2 -3
  388. package/dist/src/shell/asideStory.d.ts +34 -0
  389. package/dist/src/shell/asideStory.js +55 -0
  390. package/dist/src/shell/audienceLayout.d.ts +39 -0
  391. package/dist/src/shell/audienceLayout.js +33 -0
  392. package/dist/src/shell/audiencePage.d.ts +113 -0
  393. package/dist/src/shell/audiencePage.js +144 -0
  394. package/dist/src/shell/audienceSections.css +95 -0
  395. package/dist/src/shell/catalogueContext.d.ts +24 -2
  396. package/dist/src/shell/catalogueContext.js +12 -9
  397. package/dist/src/shell/codeTokens.d.ts +0 -1
  398. package/dist/src/shell/codeTokens.js +0 -1
  399. package/dist/src/shell/codeWriter.d.ts +0 -1
  400. package/dist/src/shell/codeWriter.js +0 -1
  401. package/dist/src/shell/compareVariants.d.ts +0 -1
  402. package/dist/src/shell/compareVariants.js +2 -2
  403. package/dist/src/shell/controlCycle.d.ts +0 -1
  404. package/dist/src/shell/controlCycle.js +13 -1
  405. package/dist/src/shell/controlLabel.d.ts +7 -0
  406. package/dist/src/shell/controlLabel.js +17 -0
  407. package/dist/src/shell/device/deviceFrame.css +42 -0
  408. package/dist/src/shell/device/deviceParts.d.ts +90 -0
  409. package/dist/src/shell/device/deviceParts.js +120 -0
  410. package/dist/src/shell/docPage.css +451 -0
  411. package/dist/src/shell/dockTabs.d.ts +13 -5
  412. package/dist/src/shell/dockTabs.js +40 -18
  413. package/dist/src/shell/embed.css +74 -0
  414. package/dist/src/shell/filesCode.d.ts +21 -0
  415. package/dist/src/shell/filesCode.js +37 -0
  416. package/dist/src/shell/forgebookMark.d.ts +15 -0
  417. package/dist/src/shell/forgebookMark.js +28 -0
  418. package/dist/src/shell/framesOrigin.d.ts +23 -0
  419. package/dist/src/shell/framesOrigin.js +69 -0
  420. package/dist/src/shell/icons.d.ts +3 -1
  421. package/dist/src/shell/icons.js +3 -1
  422. package/dist/src/shell/keyboard.d.ts +0 -1
  423. package/dist/src/shell/keyboard.js +0 -1
  424. package/dist/src/shell/laterStrings.d.ts +91 -0
  425. package/dist/src/shell/laterStrings.js +102 -0
  426. package/dist/src/shell/lazyModule.d.ts +49 -0
  427. package/dist/src/shell/lazyModule.js +72 -0
  428. package/dist/src/shell/lazyTab.d.ts +21 -0
  429. package/dist/src/shell/lazyTab.js +9 -0
  430. package/dist/src/shell/logicView.d.ts +0 -12
  431. package/dist/src/shell/logicView.js +2 -2
  432. package/dist/src/shell/mountShell.d.ts +5 -3
  433. package/dist/src/shell/mountShell.js +43 -12
  434. package/dist/src/shell/pageStrings.d.ts +24 -0
  435. package/dist/src/shell/pageStrings.js +26 -0
  436. package/dist/src/shell/pluginHosts.d.ts +9 -0
  437. package/dist/src/shell/pluginHosts.js +6 -0
  438. package/dist/src/shell/pluginHostsContext.d.ts +20 -0
  439. package/dist/src/shell/pluginHostsContext.js +16 -0
  440. package/dist/src/shell/pluginTabs.d.ts +63 -0
  441. package/dist/src/shell/pluginTabs.js +60 -0
  442. package/dist/src/shell/search.css +172 -0
  443. package/dist/src/shell/searchStrings.d.ts +24 -0
  444. package/dist/src/shell/searchStrings.js +31 -0
  445. package/dist/src/shell/shell.css +285 -139
  446. package/dist/src/shell/shellScheme.d.ts +37 -0
  447. package/dist/src/shell/shellScheme.js +32 -0
  448. package/dist/src/shell/storyTouch.d.ts +19 -6
  449. package/dist/src/shell/storyTouch.js +26 -4
  450. package/dist/src/shell/strings.d.ts +56 -80
  451. package/dist/src/shell/strings.js +53 -78
  452. package/dist/src/shell/switchView.d.ts +0 -1
  453. package/dist/src/shell/switchView.js +0 -1
  454. package/dist/src/shell/tabSummaries.d.ts +31 -0
  455. package/dist/src/shell/tabSummaries.js +27 -0
  456. package/dist/src/shell/treeSearch.d.ts +39 -3
  457. package/dist/src/shell/treeSearch.js +27 -1
  458. package/dist/src/shell/useAddressArgs.d.ts +55 -0
  459. package/dist/src/shell/useAddressArgs.js +62 -0
  460. package/dist/src/shell/useAnchorScroll.d.ts +24 -0
  461. package/dist/src/shell/useAnchorScroll.js +90 -0
  462. package/dist/src/shell/useAppearance.d.ts +7 -2
  463. package/dist/src/shell/useAppearance.js +14 -5
  464. package/dist/src/shell/useComponentDocs.d.ts +0 -1
  465. package/dist/src/shell/useComponentDocs.js +0 -1
  466. package/dist/src/shell/useControlKeys.d.ts +2 -1
  467. package/dist/src/shell/useControlKeys.js +2 -3
  468. package/dist/src/shell/useCopy.d.ts +2 -1
  469. package/dist/src/shell/useCopy.js +11 -6
  470. package/dist/src/shell/useFold.d.ts +0 -1
  471. package/dist/src/shell/useFold.js +0 -1
  472. package/dist/src/shell/useFrameMessages.d.ts +19 -4
  473. package/dist/src/shell/useFrameMessages.js +23 -7
  474. package/dist/src/shell/useFrameQueue.d.ts +7 -3
  475. package/dist/src/shell/useFrameQueue.js +39 -22
  476. package/dist/src/shell/useFullPage.d.ts +0 -1
  477. package/dist/src/shell/useFullPage.js +0 -1
  478. package/dist/src/shell/useLiveView.d.ts +0 -1
  479. package/dist/src/shell/useLiveView.js +0 -1
  480. package/dist/src/shell/useLoaded.d.ts +1 -2
  481. package/dist/src/shell/useLoaded.js +28 -6
  482. package/dist/src/shell/usePageDoc.d.ts +0 -1
  483. package/dist/src/shell/usePageDoc.js +0 -1
  484. package/dist/src/shell/usePageFrames.d.ts +46 -0
  485. package/dist/src/shell/usePageFrames.js +50 -0
  486. package/dist/src/shell/usePluginTabs.d.ts +18 -0
  487. package/dist/src/shell/usePluginTabs.js +45 -0
  488. package/dist/src/shell/usePopover.d.ts +0 -1
  489. package/dist/src/shell/usePopover.js +0 -1
  490. package/dist/src/shell/useProseLinks.d.ts +14 -0
  491. package/dist/src/shell/useProseLinks.js +30 -0
  492. package/dist/src/shell/useRecentPages.d.ts +3 -4
  493. package/dist/src/shell/useRecentPages.js +1 -2
  494. package/dist/src/shell/useScrollMemory.d.ts +9 -1
  495. package/dist/src/shell/useScrollMemory.js +2 -3
  496. package/dist/src/shell/useSearchIndex.d.ts +24 -0
  497. package/dist/src/shell/useSearchIndex.js +51 -0
  498. package/dist/src/shell/useShownView.d.ts +3 -1
  499. package/dist/src/shell/useShownView.js +5 -5
  500. package/dist/src/shell/useSidebarLayout.d.ts +0 -1
  501. package/dist/src/shell/useSidebarLayout.js +0 -1
  502. package/dist/src/shell/useStored.d.ts +13 -1
  503. package/dist/src/shell/useStored.js +13 -5
  504. package/dist/src/shell/useStoryCheck.d.ts +20 -0
  505. package/dist/src/shell/useStoryCheck.js +33 -0
  506. package/dist/src/shell/useStoryCode.d.ts +0 -1
  507. package/dist/src/shell/useStoryCode.js +0 -1
  508. package/dist/src/shell/useStoryHeights.d.ts +0 -1
  509. package/dist/src/shell/useStoryHeights.js +0 -1
  510. package/dist/src/shell/useStoryIdsElement.d.ts +0 -1
  511. package/dist/src/shell/useStoryIdsElement.js +0 -1
  512. package/dist/src/shell/useStoryKeys.d.ts +0 -1
  513. package/dist/src/shell/useStoryKeys.js +0 -1
  514. package/dist/src/shell/useSyncedTab.d.ts +8 -0
  515. package/dist/src/shell/useSyncedTab.js +60 -0
  516. package/dist/src/shell/useSystemDark.d.ts +0 -1
  517. package/dist/src/shell/useSystemDark.js +0 -1
  518. package/dist/src/shell/useToolbarLayout.d.ts +0 -1
  519. package/dist/src/shell/useToolbarLayout.js +0 -1
  520. package/dist/src/shell/useToolbarOverflow.d.ts +0 -1
  521. package/dist/src/shell/useToolbarOverflow.js +0 -1
  522. package/dist/src/shell/useWorstCase.d.ts +0 -1
  523. package/dist/src/shell/useWorstCase.js +2 -2
  524. package/dist/src/shell/worstArgs.d.ts +0 -1
  525. package/dist/src/shell/worstArgs.js +0 -1
  526. package/dist/src/shellTheme.d.ts +64 -0
  527. package/dist/src/shellTheme.js +274 -0
  528. package/dist/src/shellTheme.types.d.ts +93 -0
  529. package/dist/src/shellTheme.types.js +10 -0
  530. package/dist/src/sourceFiles.d.ts +17 -3
  531. package/dist/src/sourceFiles.js +27 -1
  532. package/dist/src/spills.d.ts +0 -1
  533. package/dist/src/spills.js +0 -1
  534. package/dist/src/storyBackground.d.ts +0 -1
  535. package/dist/src/storyBackground.js +0 -1
  536. package/dist/src/storyCheck.d.ts +86 -2
  537. package/dist/src/storyCheck.js +12 -2
  538. package/dist/src/storyClock.d.ts +0 -1
  539. package/dist/src/storyClock.js +0 -1
  540. package/dist/src/storyGlobals.d.ts +0 -1
  541. package/dist/src/storyGlobals.js +0 -1
  542. package/dist/src/storyHeights.d.ts +0 -1
  543. package/dist/src/storyHeights.js +0 -1
  544. package/dist/src/storyIds.d.ts +36 -0
  545. package/dist/src/storyIds.js +52 -0
  546. package/dist/src/storyIdsElement.d.ts +0 -1
  547. package/dist/src/storyIdsElement.js +0 -1
  548. package/dist/src/storyTexts.d.ts +11 -5
  549. package/dist/src/storyTexts.js +16 -5
  550. package/dist/src/storyTree.d.ts +79 -25
  551. package/dist/src/storyTree.js +211 -127
  552. package/dist/src/switches.d.ts +0 -1
  553. package/dist/src/switches.js +6 -2
  554. package/dist/src/toolbarLayout.d.ts +0 -1
  555. package/dist/src/toolbarLayout.js +0 -1
  556. package/dist/src/treePlaces.d.ts +60 -0
  557. package/dist/src/treePlaces.js +89 -0
  558. package/dist/src/usedIn.d.ts +28 -1
  559. package/dist/src/usedIn.js +93 -3
  560. package/dist/src/viewState.d.ts +37 -9
  561. package/dist/src/viewState.js +67 -9
  562. package/dist/src/viewWords.d.ts +0 -13
  563. package/dist/src/viewWords.js +41 -3
  564. package/dist/src/vite/adapter.d.ts +62 -1
  565. package/dist/src/vite/adapter.js +20 -2
  566. package/dist/src/vite/agent.types.d.ts +279 -7
  567. package/dist/src/vite/agent.types.js +11 -1
  568. package/dist/src/vite/agentApi.d.ts +55 -2
  569. package/dist/src/vite/agentApi.js +130 -8
  570. package/dist/src/vite/agentIds.d.ts +25 -0
  571. package/dist/src/vite/agentIds.js +41 -0
  572. package/dist/src/vite/agentIndex.d.ts +63 -0
  573. package/dist/src/vite/agentIndex.js +91 -0
  574. package/dist/src/vite/agentIndexRoute.d.ts +10 -0
  575. package/dist/src/vite/agentIndexRoute.js +35 -0
  576. package/dist/src/vite/agentRoutes.d.ts +80 -19
  577. package/dist/src/vite/agentRoutes.js +167 -24
  578. package/dist/src/vite/autoTitle.d.ts +0 -1
  579. package/dist/src/vite/autoTitle.js +0 -1
  580. package/dist/src/vite/axeScript.d.ts +20 -0
  581. package/dist/src/vite/axeScript.js +60 -0
  582. package/dist/src/vite/builtTexts.d.ts +75 -0
  583. package/dist/src/vite/builtTexts.js +142 -0
  584. package/dist/src/vite/catalogueConfig.d.ts +10 -0
  585. package/dist/src/vite/catalogueConfig.js +64 -0
  586. package/dist/src/vite/checkCode.d.ts +67 -0
  587. package/dist/src/vite/checkCode.js +145 -0
  588. package/dist/src/vite/closeWatch.d.ts +96 -0
  589. package/dist/src/vite/closeWatch.js +219 -0
  590. package/dist/src/vite/codeFence.d.ts +78 -0
  591. package/dist/src/vite/codeFence.js +267 -0
  592. package/dist/src/vite/componentImport.d.ts +8 -0
  593. package/dist/src/vite/componentImport.js +35 -0
  594. package/dist/src/vite/componentPage.d.ts +15 -2
  595. package/dist/src/vite/componentPage.js +55 -16
  596. package/dist/src/vite/config.d.ts +51 -3
  597. package/dist/src/vite/config.js +0 -1
  598. package/dist/src/vite/configFile.d.ts +65 -9
  599. package/dist/src/vite/configFile.js +182 -28
  600. package/dist/src/vite/designTokens.d.ts +75 -0
  601. package/dist/src/vite/designTokens.js +382 -0
  602. package/dist/src/vite/diskCache.d.ts +51 -0
  603. package/dist/src/vite/diskCache.js +211 -0
  604. package/dist/src/vite/docDirectives.d.ts +116 -0
  605. package/dist/src/vite/docDirectives.js +425 -0
  606. package/dist/src/vite/docMarkdown.d.ts +76 -0
  607. package/dist/src/vite/docMarkdown.js +150 -0
  608. package/dist/src/vite/docPageBlocks.d.ts +64 -0
  609. package/dist/src/vite/docPageBlocks.js +322 -0
  610. package/dist/src/vite/docPageLinks.d.ts +72 -0
  611. package/dist/src/vite/docPageLinks.js +135 -0
  612. package/dist/src/vite/docPageMarkdown.d.ts +86 -0
  613. package/dist/src/vite/docPageMarkdown.js +133 -0
  614. package/dist/src/vite/docPageRender.d.ts +27 -0
  615. package/dist/src/vite/docPageRender.js +199 -0
  616. package/dist/src/vite/docPageTokens.d.ts +91 -0
  617. package/dist/src/vite/docPageTokens.js +186 -0
  618. package/dist/src/vite/docPagesModule.d.ts +50 -0
  619. package/dist/src/vite/docPagesModule.js +118 -0
  620. package/dist/src/vite/docPagesRoute.d.ts +38 -0
  621. package/dist/src/vite/docPagesRoute.js +154 -0
  622. package/dist/src/vite/docsDependencies.d.ts +6 -0
  623. package/dist/src/vite/docsDependencies.js +150 -0
  624. package/dist/src/vite/docsExtractor.d.ts +44 -3
  625. package/dist/src/vite/docsExtractor.js +160 -26
  626. package/dist/src/vite/docsProgram.d.ts +89 -9
  627. package/dist/src/vite/docsProgram.js +413 -50
  628. package/dist/src/vite/docsWorker.d.ts +0 -1
  629. package/dist/src/vite/docsWorker.js +49 -15
  630. package/dist/src/vite/figmaLink.d.ts +26 -0
  631. package/dist/src/vite/figmaLink.js +92 -0
  632. package/dist/src/vite/findComponent.d.ts +32 -0
  633. package/dist/src/vite/findComponent.js +52 -0
  634. package/dist/src/vite/findRoute.d.ts +14 -0
  635. package/dist/src/vite/findRoute.js +62 -0
  636. package/dist/src/vite/forcedStates.d.ts +0 -1
  637. package/dist/src/vite/forcedStates.js +0 -1
  638. package/dist/src/vite/forgebookPlugin.d.ts +1 -2
  639. package/dist/src/vite/forgebookPlugin.js +321 -263
  640. package/dist/src/vite/framesConfig.d.ts +89 -0
  641. package/dist/src/vite/framesConfig.js +149 -0
  642. package/dist/src/vite/framesServer.d.ts +43 -0
  643. package/dist/src/vite/framesServer.js +326 -0
  644. package/dist/src/vite/functionComponentDocs.d.ts +26 -0
  645. package/dist/src/vite/functionComponentDocs.js +193 -0
  646. package/dist/src/vite/gitChange.d.ts +56 -0
  647. package/dist/src/vite/gitChange.js +86 -0
  648. package/dist/src/vite/heightsRoute.d.ts +0 -1
  649. package/dist/src/vite/heightsRoute.js +0 -1
  650. package/dist/src/vite/highlightCode.d.ts +0 -1
  651. package/dist/src/vite/highlightCode.js +8 -27
  652. package/dist/src/vite/hotSnippets.d.ts +86 -0
  653. package/dist/src/vite/hotSnippets.js +168 -0
  654. package/dist/src/vite/indexFields.d.ts +61 -0
  655. package/dist/src/vite/indexFields.js +149 -0
  656. package/dist/src/vite/indexStoryFile.d.ts +19 -18
  657. package/dist/src/vite/indexStoryFile.js +165 -221
  658. package/dist/src/vite/indexedParameters.d.ts +10 -0
  659. package/dist/src/vite/indexedParameters.js +110 -0
  660. package/dist/src/vite/mcpProtocol.d.ts +36 -2
  661. package/dist/src/vite/mcpProtocol.js +100 -15
  662. package/dist/src/vite/moduleSummary.d.ts +17 -0
  663. package/dist/src/vite/moduleSummary.js +40 -0
  664. package/dist/src/vite/nearestToken.d.ts +50 -0
  665. package/dist/src/vite/nearestToken.js +295 -0
  666. package/dist/src/vite/originGuard.d.ts +87 -0
  667. package/dist/src/vite/originGuard.js +163 -0
  668. package/dist/src/vite/packedModule.d.ts +40 -0
  669. package/dist/src/vite/packedModule.js +74 -0
  670. package/dist/src/vite/pages.d.ts +63 -10
  671. package/dist/src/vite/pages.js +264 -33
  672. package/dist/src/vite/parsedFiles.d.ts +18 -0
  673. package/dist/src/vite/parsedFiles.js +91 -0
  674. package/dist/src/vite/plainGrammars.d.ts +20 -0
  675. package/dist/src/vite/plainGrammars.js +113 -0
  676. package/dist/src/vite/pluginConfig.d.ts +47 -0
  677. package/dist/src/vite/pluginConfig.js +220 -0
  678. package/dist/src/vite/pluginIds.d.ts +20 -0
  679. package/dist/src/vite/pluginIds.js +61 -0
  680. package/dist/src/vite/pluginModules.d.ts +140 -0
  681. package/dist/src/vite/pluginModules.js +176 -0
  682. package/dist/src/vite/prebundled.d.ts +18 -5
  683. package/dist/src/vite/prebundled.js +28 -18
  684. package/dist/src/vite/previewPages.d.ts +14 -0
  685. package/dist/src/vite/previewPages.js +81 -0
  686. package/dist/src/vite/previewRoute.d.ts +8 -0
  687. package/dist/src/vite/previewRoute.js +8 -0
  688. package/dist/src/vite/previewRunner.d.ts +56 -0
  689. package/dist/src/vite/previewRunner.js +207 -0
  690. package/dist/src/vite/propDocs.d.ts +60 -0
  691. package/dist/src/vite/propDocs.js +387 -0
  692. package/dist/src/vite/searchModule.d.ts +40 -0
  693. package/dist/src/vite/searchModule.js +212 -0
  694. package/dist/src/vite/searchRoute.d.ts +7 -0
  695. package/dist/src/vite/searchRoute.js +79 -0
  696. package/dist/src/vite/serverConditions.d.ts +31 -0
  697. package/dist/src/vite/serverConditions.js +69 -0
  698. package/dist/src/vite/signatureDocs.d.ts +18 -0
  699. package/dist/src/vite/signatureDocs.js +64 -0
  700. package/dist/src/vite/sourceTokens.d.ts +57 -0
  701. package/dist/src/vite/sourceTokens.js +164 -0
  702. package/dist/src/vite/storyCode.d.ts +0 -1
  703. package/dist/src/vite/storyCode.js +2 -3
  704. package/dist/src/vite/storyExports.d.ts +32 -0
  705. package/dist/src/vite/storyExports.js +27 -0
  706. package/dist/src/vite/storyFilesModule.d.ts +56 -4
  707. package/dist/src/vite/storyFilesModule.js +122 -34
  708. package/dist/src/vite/storyMeta.d.ts +20 -11
  709. package/dist/src/vite/storyMeta.js +74 -38
  710. package/dist/src/vite/storyParse.d.ts +18 -0
  711. package/dist/src/vite/storyParse.js +20 -0
  712. package/dist/src/vite/storyPlay.d.ts +29 -0
  713. package/dist/src/vite/storyPlay.js +54 -0
  714. package/dist/src/vite/storyReach.d.ts +42 -0
  715. package/dist/src/vite/storyReach.js +43 -0
  716. package/dist/src/vite/storylessRoutes.d.ts +29 -0
  717. package/dist/src/vite/storylessRoutes.js +126 -0
  718. package/dist/src/vite/textModules.d.ts +63 -0
  719. package/dist/src/vite/textModules.js +132 -0
  720. package/dist/src/vite/textQueries.d.ts +20 -0
  721. package/dist/src/vite/textQueries.js +20 -0
  722. package/dist/src/vite/themeFromTokens.d.ts +35 -0
  723. package/dist/src/vite/themeFromTokens.js +73 -0
  724. package/dist/src/vite/tokenAnswers.d.ts +20 -0
  725. package/dist/src/vite/tokenAnswers.js +86 -0
  726. package/dist/src/vite/tokenClashes.d.ts +44 -0
  727. package/dist/src/vite/tokenClashes.js +45 -0
  728. package/dist/src/vite/touchMedia.d.ts +0 -1
  729. package/dist/src/vite/touchMedia.js +0 -1
  730. package/dist/src/vite/typeScriptPieces.d.ts +0 -1
  731. package/dist/src/vite/typeScriptPieces.js +2 -3
  732. package/dist/src/vite/usageGraph.d.ts +6 -1
  733. package/dist/src/vite/usageGraph.js +41 -7
  734. package/dist/src/vite/usageGuidance.d.ts +33 -0
  735. package/dist/src/vite/usageGuidance.js +45 -0
  736. package/dist/src/vite/usageModule.d.ts +0 -1
  737. package/dist/src/vite/usageModule.js +0 -1
  738. package/dist/src/vite/vitePaths.d.ts +53 -0
  739. package/dist/src/vite/vitePaths.js +53 -0
  740. package/dist/src/worstCase.d.ts +0 -1
  741. package/dist/src/worstCase.js +0 -1
  742. package/package.json +68 -5
  743. package/dist/bin/forgebook/agentClient.d.ts.map +0 -1
  744. package/dist/bin/forgebook/agentClient.js.map +0 -1
  745. package/dist/bin/forgebook/agentLoopCommands.d.mts.map +0 -1
  746. package/dist/bin/forgebook/agentLoopCommands.mjs.map +0 -1
  747. package/dist/bin/forgebook/agentText.d.ts.map +0 -1
  748. package/dist/bin/forgebook/agentText.js.map +0 -1
  749. package/dist/bin/forgebook/agentsText.d.ts.map +0 -1
  750. package/dist/bin/forgebook/agentsText.js.map +0 -1
  751. package/dist/bin/forgebook/catalogueCommands.d.ts.map +0 -1
  752. package/dist/bin/forgebook/catalogueCommands.js.map +0 -1
  753. package/dist/bin/forgebook/catalogueVite.d.ts.map +0 -1
  754. package/dist/bin/forgebook/catalogueVite.js.map +0 -1
  755. package/dist/bin/forgebook/errorsRun.d.ts.map +0 -1
  756. package/dist/bin/forgebook/errorsRun.js.map +0 -1
  757. package/dist/bin/forgebook/forgebook.d.mts.map +0 -1
  758. package/dist/bin/forgebook/forgebook.mjs.map +0 -1
  759. package/dist/bin/forgebook/importers/storybook.d.ts.map +0 -1
  760. package/dist/bin/forgebook/importers/storybook.js.map +0 -1
  761. package/dist/bin/forgebook/initCommands.d.mts.map +0 -1
  762. package/dist/bin/forgebook/initCommands.mjs.map +0 -1
  763. package/dist/bin/forgebook/initConfig.d.ts.map +0 -1
  764. package/dist/bin/forgebook/initConfig.js.map +0 -1
  765. package/dist/bin/forgebook/mcpTools.d.ts.map +0 -1
  766. package/dist/bin/forgebook/mcpTools.js.map +0 -1
  767. package/dist/bin/forgebook/newStories.d.ts.map +0 -1
  768. package/dist/bin/forgebook/newStories.js.map +0 -1
  769. package/dist/bin/forgebook/newStoriesFile.d.ts.map +0 -1
  770. package/dist/bin/forgebook/newStoriesFile.js.map +0 -1
  771. package/dist/bin/forgebook/storyCheckRun.d.ts.map +0 -1
  772. package/dist/bin/forgebook/storyCheckRun.js.map +0 -1
  773. package/dist/bin/forgebook/touchWindowRun.d.ts.map +0 -1
  774. package/dist/bin/forgebook/touchWindowRun.js.map +0 -1
  775. package/dist/bin/forgebook-docs/catalogueDocs.d.ts.map +0 -1
  776. package/dist/bin/forgebook-docs/catalogueDocs.js.map +0 -1
  777. package/dist/bin/forgebook-docs/catalogueDocs.types.d.ts.map +0 -1
  778. package/dist/bin/forgebook-docs/catalogueDocs.types.js.map +0 -1
  779. package/dist/bin/forgebook-docs/catalogueMarkdown.d.ts.map +0 -1
  780. package/dist/bin/forgebook-docs/catalogueMarkdown.js.map +0 -1
  781. package/dist/bin/forgebook-docs/catalogueOptions.d.ts.map +0 -1
  782. package/dist/bin/forgebook-docs/catalogueOptions.js.map +0 -1
  783. package/dist/bin/forgebook-docs/collectDocs.d.ts.map +0 -1
  784. package/dist/bin/forgebook-docs/collectDocs.js.map +0 -1
  785. package/dist/bin/forgebook-docs/forgebook-docs.d.mts.map +0 -1
  786. package/dist/bin/forgebook-docs/forgebook-docs.mjs.map +0 -1
  787. package/dist/bin/forgebook-docs/llmsText.d.ts.map +0 -1
  788. package/dist/bin/forgebook-docs/llmsText.js.map +0 -1
  789. package/dist/bin/forgebook-docs/moduleDocs.d.ts.map +0 -1
  790. package/dist/bin/forgebook-docs/moduleDocs.js.map +0 -1
  791. package/dist/bin/forgebook-docs/sassDocs.d.ts.map +0 -1
  792. package/dist/bin/forgebook-docs/sassDocs.js.map +0 -1
  793. package/dist/bin/forgebook-docs/sourceId.d.ts +0 -9
  794. package/dist/bin/forgebook-docs/sourceId.d.ts.map +0 -1
  795. package/dist/bin/forgebook-docs/sourceId.js +0 -45
  796. package/dist/bin/forgebook-docs/sourceId.js.map +0 -1
  797. package/dist/bin/forgebook-texts/forgebook-texts.d.mts.map +0 -1
  798. package/dist/bin/forgebook-texts/forgebook-texts.mjs.map +0 -1
  799. package/dist/bin/forgebook-texts/storyTextsReport.d.ts.map +0 -1
  800. package/dist/bin/forgebook-texts/storyTextsReport.js.map +0 -1
  801. package/dist/bin/forgebook-texts/storyTextsReport.types.d.ts.map +0 -1
  802. package/dist/bin/forgebook-texts/storyTextsReport.types.js.map +0 -1
  803. package/dist/bin/frameworkDocs.d.ts.map +0 -1
  804. package/dist/bin/frameworkDocs.js.map +0 -1
  805. package/dist/src/a11y.d.ts.map +0 -1
  806. package/dist/src/a11y.js.map +0 -1
  807. package/dist/src/argTypes.d.ts.map +0 -1
  808. package/dist/src/argTypes.js.map +0 -1
  809. package/dist/src/backdrops.d.ts.map +0 -1
  810. package/dist/src/backdrops.js.map +0 -1
  811. package/dist/src/catalogue.d.ts.map +0 -1
  812. package/dist/src/catalogue.js.map +0 -1
  813. package/dist/src/componentDocs.d.ts.map +0 -1
  814. package/dist/src/componentDocs.js.map +0 -1
  815. package/dist/src/controlKeys.d.ts.map +0 -1
  816. package/dist/src/controlKeys.js.map +0 -1
  817. package/dist/src/frame/checkStory.d.ts.map +0 -1
  818. package/dist/src/frame/checkStory.js.map +0 -1
  819. package/dist/src/frame/frameClock.d.ts.map +0 -1
  820. package/dist/src/frame/frameClock.js.map +0 -1
  821. package/dist/src/frame/frameStatus.d.ts.map +0 -1
  822. package/dist/src/frame/frameStatus.js.map +0 -1
  823. package/dist/src/frame/frameView.d.ts.map +0 -1
  824. package/dist/src/frame/frameView.js.map +0 -1
  825. package/dist/src/frame/matrixLayout.d.ts.map +0 -1
  826. package/dist/src/frame/matrixLayout.js.map +0 -1
  827. package/dist/src/frame/measureTools.d.ts.map +0 -1
  828. package/dist/src/frame/measureTools.js.map +0 -1
  829. package/dist/src/frame/mountFrame.d.ts.map +0 -1
  830. package/dist/src/frame/mountFrame.js.map +0 -1
  831. package/dist/src/frame/playStory.d.ts.map +0 -1
  832. package/dist/src/frame/playStory.js.map +0 -1
  833. package/dist/src/frame/renderer.d.ts.map +0 -1
  834. package/dist/src/frame/renderer.js.map +0 -1
  835. package/dist/src/frame/settle.d.ts.map +0 -1
  836. package/dist/src/frame/settle.js.map +0 -1
  837. package/dist/src/frame/spillOutline.d.ts.map +0 -1
  838. package/dist/src/frame/spillOutline.js.map +0 -1
  839. package/dist/src/frame/staleModule.d.ts.map +0 -1
  840. package/dist/src/frame/staleModule.js.map +0 -1
  841. package/dist/src/frame/storyCanvas.d.ts.map +0 -1
  842. package/dist/src/frame/storyCanvas.js.map +0 -1
  843. package/dist/src/frame/storyHooks.d.ts.map +0 -1
  844. package/dist/src/frame/storyHooks.js.map +0 -1
  845. package/dist/src/frame/storyModule.d.ts.map +0 -1
  846. package/dist/src/frame/storyModule.js.map +0 -1
  847. package/dist/src/frame/storyRun.d.ts.map +0 -1
  848. package/dist/src/frame/storyRun.js.map +0 -1
  849. package/dist/src/frame/touchDots.d.ts.map +0 -1
  850. package/dist/src/frame/touchDots.js.map +0 -1
  851. package/dist/src/frame/touchEvents.d.ts.map +0 -1
  852. package/dist/src/frame/touchEvents.js.map +0 -1
  853. package/dist/src/frame/touchGesture.d.ts.map +0 -1
  854. package/dist/src/frame/touchGesture.js.map +0 -1
  855. package/dist/src/frame/touchLayer.d.ts.map +0 -1
  856. package/dist/src/frame/touchLayer.js.map +0 -1
  857. package/dist/src/frame/touchScroll.d.ts.map +0 -1
  858. package/dist/src/frame/touchScroll.js.map +0 -1
  859. package/dist/src/languages.d.ts.map +0 -1
  860. package/dist/src/languages.js.map +0 -1
  861. package/dist/src/liveErrors.d.ts.map +0 -1
  862. package/dist/src/liveErrors.js.map +0 -1
  863. package/dist/src/matrix.d.ts.map +0 -1
  864. package/dist/src/matrix.js.map +0 -1
  865. package/dist/src/messages.d.ts.map +0 -1
  866. package/dist/src/messages.js.map +0 -1
  867. package/dist/src/namedValues.d.ts.map +0 -1
  868. package/dist/src/namedValues.js.map +0 -1
  869. package/dist/src/namedViews.d.ts.map +0 -1
  870. package/dist/src/namedViews.js.map +0 -1
  871. package/dist/src/pageConfig.d.ts.map +0 -1
  872. package/dist/src/pageConfig.js.map +0 -1
  873. package/dist/src/playTrace.d.ts.map +0 -1
  874. package/dist/src/playTrace.js.map +0 -1
  875. package/dist/src/realTouch.d.ts.map +0 -1
  876. package/dist/src/realTouch.js.map +0 -1
  877. package/dist/src/shell/A11yTab.d.ts.map +0 -1
  878. package/dist/src/shell/A11yTab.js.map +0 -1
  879. package/dist/src/shell/ApiReference.d.ts.map +0 -1
  880. package/dist/src/shell/ApiReference.js.map +0 -1
  881. package/dist/src/shell/AppearanceMenu.d.ts.map +0 -1
  882. package/dist/src/shell/AppearanceMenu.js.map +0 -1
  883. package/dist/src/shell/BoxWidth.d.ts.map +0 -1
  884. package/dist/src/shell/BoxWidth.js.map +0 -1
  885. package/dist/src/shell/ClockControls.d.ts.map +0 -1
  886. package/dist/src/shell/ClockControls.js.map +0 -1
  887. package/dist/src/shell/Code.d.ts.map +0 -1
  888. package/dist/src/shell/Code.js.map +0 -1
  889. package/dist/src/shell/CodeTab.d.ts.map +0 -1
  890. package/dist/src/shell/CodeTab.js.map +0 -1
  891. package/dist/src/shell/CodeText.d.ts.map +0 -1
  892. package/dist/src/shell/CodeText.js.map +0 -1
  893. package/dist/src/shell/ComponentPage.d.ts.map +0 -1
  894. package/dist/src/shell/ComponentPage.js.map +0 -1
  895. package/dist/src/shell/ControlKeyField.d.ts.map +0 -1
  896. package/dist/src/shell/ControlKeyField.js.map +0 -1
  897. package/dist/src/shell/ControlRow.d.ts.map +0 -1
  898. package/dist/src/shell/ControlRow.js.map +0 -1
  899. package/dist/src/shell/Dock.d.ts.map +0 -1
  900. package/dist/src/shell/Dock.js.map +0 -1
  901. package/dist/src/shell/EventsTab.d.ts.map +0 -1
  902. package/dist/src/shell/EventsTab.js.map +0 -1
  903. package/dist/src/shell/Example.d.ts.map +0 -1
  904. package/dist/src/shell/Example.js.map +0 -1
  905. package/dist/src/shell/FrameView.d.ts.map +0 -1
  906. package/dist/src/shell/FrameView.js.map +0 -1
  907. package/dist/src/shell/HomePage.d.ts.map +0 -1
  908. package/dist/src/shell/HomePage.js.map +0 -1
  909. package/dist/src/shell/InfoTip.d.ts.map +0 -1
  910. package/dist/src/shell/InfoTip.js.map +0 -1
  911. package/dist/src/shell/InteractionsTab.d.ts.map +0 -1
  912. package/dist/src/shell/InteractionsTab.js.map +0 -1
  913. package/dist/src/shell/LogicMark.d.ts.map +0 -1
  914. package/dist/src/shell/LogicMark.js.map +0 -1
  915. package/dist/src/shell/MatrixPicker.d.ts.map +0 -1
  916. package/dist/src/shell/MatrixPicker.js.map +0 -1
  917. package/dist/src/shell/NamedViews.d.ts.map +0 -1
  918. package/dist/src/shell/NamedViews.js.map +0 -1
  919. package/dist/src/shell/PackageHtml.d.ts.map +0 -1
  920. package/dist/src/shell/PackageHtml.js.map +0 -1
  921. package/dist/src/shell/PartsTab.d.ts.map +0 -1
  922. package/dist/src/shell/PartsTab.js.map +0 -1
  923. package/dist/src/shell/PinnedControl.d.ts.map +0 -1
  924. package/dist/src/shell/PinnedControl.js.map +0 -1
  925. package/dist/src/shell/PropFields.d.ts.map +0 -1
  926. package/dist/src/shell/PropFields.js.map +0 -1
  927. package/dist/src/shell/PropsTab.d.ts.map +0 -1
  928. package/dist/src/shell/PropsTab.js.map +0 -1
  929. package/dist/src/shell/Segmented.d.ts.map +0 -1
  930. package/dist/src/shell/Segmented.js.map +0 -1
  931. package/dist/src/shell/Shell.d.ts.map +0 -1
  932. package/dist/src/shell/Shell.js.map +0 -1
  933. package/dist/src/shell/Sidebar.d.ts.map +0 -1
  934. package/dist/src/shell/Sidebar.js.map +0 -1
  935. package/dist/src/shell/SidebarEntries.d.ts.map +0 -1
  936. package/dist/src/shell/SidebarEntries.js.map +0 -1
  937. package/dist/src/shell/SidebarHandle.d.ts.map +0 -1
  938. package/dist/src/shell/SidebarHandle.js.map +0 -1
  939. package/dist/src/shell/SignatureReference.d.ts.map +0 -1
  940. package/dist/src/shell/SignatureReference.js.map +0 -1
  941. package/dist/src/shell/Stage.d.ts.map +0 -1
  942. package/dist/src/shell/Stage.js.map +0 -1
  943. package/dist/src/shell/StageTools.d.ts.map +0 -1
  944. package/dist/src/shell/StageTools.js.map +0 -1
  945. package/dist/src/shell/StageViewport.d.ts.map +0 -1
  946. package/dist/src/shell/StageViewport.js.map +0 -1
  947. package/dist/src/shell/StoryCodeBlock.d.ts.map +0 -1
  948. package/dist/src/shell/StoryCodeBlock.js.map +0 -1
  949. package/dist/src/shell/StoryPicker.d.ts.map +0 -1
  950. package/dist/src/shell/StoryPicker.js.map +0 -1
  951. package/dist/src/shell/Toolbar.d.ts.map +0 -1
  952. package/dist/src/shell/Toolbar.js.map +0 -1
  953. package/dist/src/shell/ToolbarControl.d.ts.map +0 -1
  954. package/dist/src/shell/ToolbarControl.js.map +0 -1
  955. package/dist/src/shell/UsedIn.d.ts.map +0 -1
  956. package/dist/src/shell/UsedIn.js.map +0 -1
  957. package/dist/src/shell/ViewMenu.d.ts.map +0 -1
  958. package/dist/src/shell/ViewMenu.js.map +0 -1
  959. package/dist/src/shell/WidthField.d.ts.map +0 -1
  960. package/dist/src/shell/WidthField.js.map +0 -1
  961. package/dist/src/shell/catalogueContext.d.ts.map +0 -1
  962. package/dist/src/shell/catalogueContext.js.map +0 -1
  963. package/dist/src/shell/codeTokens.d.ts.map +0 -1
  964. package/dist/src/shell/codeTokens.js.map +0 -1
  965. package/dist/src/shell/codeWriter.d.ts.map +0 -1
  966. package/dist/src/shell/codeWriter.js.map +0 -1
  967. package/dist/src/shell/compareVariants.d.ts.map +0 -1
  968. package/dist/src/shell/compareVariants.js.map +0 -1
  969. package/dist/src/shell/controlCycle.d.ts.map +0 -1
  970. package/dist/src/shell/controlCycle.js.map +0 -1
  971. package/dist/src/shell/dockTabs.d.ts.map +0 -1
  972. package/dist/src/shell/dockTabs.js.map +0 -1
  973. package/dist/src/shell/icons.d.ts.map +0 -1
  974. package/dist/src/shell/icons.js.map +0 -1
  975. package/dist/src/shell/keyboard.d.ts.map +0 -1
  976. package/dist/src/shell/keyboard.js.map +0 -1
  977. package/dist/src/shell/logicView.d.ts.map +0 -1
  978. package/dist/src/shell/logicView.js.map +0 -1
  979. package/dist/src/shell/mountShell.d.ts.map +0 -1
  980. package/dist/src/shell/mountShell.js.map +0 -1
  981. package/dist/src/shell/storyTouch.d.ts.map +0 -1
  982. package/dist/src/shell/storyTouch.js.map +0 -1
  983. package/dist/src/shell/strings.d.ts.map +0 -1
  984. package/dist/src/shell/strings.js.map +0 -1
  985. package/dist/src/shell/switchView.d.ts.map +0 -1
  986. package/dist/src/shell/switchView.js.map +0 -1
  987. package/dist/src/shell/treeSearch.d.ts.map +0 -1
  988. package/dist/src/shell/treeSearch.js.map +0 -1
  989. package/dist/src/shell/useAppearance.d.ts.map +0 -1
  990. package/dist/src/shell/useAppearance.js.map +0 -1
  991. package/dist/src/shell/useComponentDocs.d.ts.map +0 -1
  992. package/dist/src/shell/useComponentDocs.js.map +0 -1
  993. package/dist/src/shell/useControlKeys.d.ts.map +0 -1
  994. package/dist/src/shell/useControlKeys.js.map +0 -1
  995. package/dist/src/shell/useCopy.d.ts.map +0 -1
  996. package/dist/src/shell/useCopy.js.map +0 -1
  997. package/dist/src/shell/useFold.d.ts.map +0 -1
  998. package/dist/src/shell/useFold.js.map +0 -1
  999. package/dist/src/shell/useFrameMessages.d.ts.map +0 -1
  1000. package/dist/src/shell/useFrameMessages.js.map +0 -1
  1001. package/dist/src/shell/useFrameQueue.d.ts.map +0 -1
  1002. package/dist/src/shell/useFrameQueue.js.map +0 -1
  1003. package/dist/src/shell/useFullPage.d.ts.map +0 -1
  1004. package/dist/src/shell/useFullPage.js.map +0 -1
  1005. package/dist/src/shell/useLiveView.d.ts.map +0 -1
  1006. package/dist/src/shell/useLiveView.js.map +0 -1
  1007. package/dist/src/shell/useLoaded.d.ts.map +0 -1
  1008. package/dist/src/shell/useLoaded.js.map +0 -1
  1009. package/dist/src/shell/usePageDoc.d.ts.map +0 -1
  1010. package/dist/src/shell/usePageDoc.js.map +0 -1
  1011. package/dist/src/shell/usePopover.d.ts.map +0 -1
  1012. package/dist/src/shell/usePopover.js.map +0 -1
  1013. package/dist/src/shell/useRecentPages.d.ts.map +0 -1
  1014. package/dist/src/shell/useRecentPages.js.map +0 -1
  1015. package/dist/src/shell/useScrollMemory.d.ts.map +0 -1
  1016. package/dist/src/shell/useScrollMemory.js.map +0 -1
  1017. package/dist/src/shell/useShownView.d.ts.map +0 -1
  1018. package/dist/src/shell/useShownView.js.map +0 -1
  1019. package/dist/src/shell/useSidebarLayout.d.ts.map +0 -1
  1020. package/dist/src/shell/useSidebarLayout.js.map +0 -1
  1021. package/dist/src/shell/useStored.d.ts.map +0 -1
  1022. package/dist/src/shell/useStored.js.map +0 -1
  1023. package/dist/src/shell/useStoryCode.d.ts.map +0 -1
  1024. package/dist/src/shell/useStoryCode.js.map +0 -1
  1025. package/dist/src/shell/useStoryHeights.d.ts.map +0 -1
  1026. package/dist/src/shell/useStoryHeights.js.map +0 -1
  1027. package/dist/src/shell/useStoryIdsElement.d.ts.map +0 -1
  1028. package/dist/src/shell/useStoryIdsElement.js.map +0 -1
  1029. package/dist/src/shell/useStoryKeys.d.ts.map +0 -1
  1030. package/dist/src/shell/useStoryKeys.js.map +0 -1
  1031. package/dist/src/shell/useSystemDark.d.ts.map +0 -1
  1032. package/dist/src/shell/useSystemDark.js.map +0 -1
  1033. package/dist/src/shell/useToolbarLayout.d.ts.map +0 -1
  1034. package/dist/src/shell/useToolbarLayout.js.map +0 -1
  1035. package/dist/src/shell/useToolbarOverflow.d.ts.map +0 -1
  1036. package/dist/src/shell/useToolbarOverflow.js.map +0 -1
  1037. package/dist/src/shell/useWorstCase.d.ts.map +0 -1
  1038. package/dist/src/shell/useWorstCase.js.map +0 -1
  1039. package/dist/src/shell/worstArgs.d.ts.map +0 -1
  1040. package/dist/src/shell/worstArgs.js.map +0 -1
  1041. package/dist/src/sourceFiles.d.ts.map +0 -1
  1042. package/dist/src/sourceFiles.js.map +0 -1
  1043. package/dist/src/spills.d.ts.map +0 -1
  1044. package/dist/src/spills.js.map +0 -1
  1045. package/dist/src/storyBackground.d.ts.map +0 -1
  1046. package/dist/src/storyBackground.js.map +0 -1
  1047. package/dist/src/storyCheck.d.ts.map +0 -1
  1048. package/dist/src/storyCheck.js.map +0 -1
  1049. package/dist/src/storyClock.d.ts.map +0 -1
  1050. package/dist/src/storyClock.js.map +0 -1
  1051. package/dist/src/storyGlobals.d.ts.map +0 -1
  1052. package/dist/src/storyGlobals.js.map +0 -1
  1053. package/dist/src/storyHeights.d.ts.map +0 -1
  1054. package/dist/src/storyHeights.js.map +0 -1
  1055. package/dist/src/storyIdsElement.d.ts.map +0 -1
  1056. package/dist/src/storyIdsElement.js.map +0 -1
  1057. package/dist/src/storyTexts.d.ts.map +0 -1
  1058. package/dist/src/storyTexts.js.map +0 -1
  1059. package/dist/src/storyTree.d.ts.map +0 -1
  1060. package/dist/src/storyTree.js.map +0 -1
  1061. package/dist/src/switches.d.ts.map +0 -1
  1062. package/dist/src/switches.js.map +0 -1
  1063. package/dist/src/toolbarLayout.d.ts.map +0 -1
  1064. package/dist/src/toolbarLayout.js.map +0 -1
  1065. package/dist/src/usedIn.d.ts.map +0 -1
  1066. package/dist/src/usedIn.js.map +0 -1
  1067. package/dist/src/viewState.d.ts.map +0 -1
  1068. package/dist/src/viewState.js.map +0 -1
  1069. package/dist/src/viewWords.d.ts.map +0 -1
  1070. package/dist/src/viewWords.js.map +0 -1
  1071. package/dist/src/vite/adapter.d.ts.map +0 -1
  1072. package/dist/src/vite/adapter.js.map +0 -1
  1073. package/dist/src/vite/agent.types.d.ts.map +0 -1
  1074. package/dist/src/vite/agent.types.js.map +0 -1
  1075. package/dist/src/vite/agentApi.d.ts.map +0 -1
  1076. package/dist/src/vite/agentApi.js.map +0 -1
  1077. package/dist/src/vite/agentRoutes.d.ts.map +0 -1
  1078. package/dist/src/vite/agentRoutes.js.map +0 -1
  1079. package/dist/src/vite/autoTitle.d.ts.map +0 -1
  1080. package/dist/src/vite/autoTitle.js.map +0 -1
  1081. package/dist/src/vite/componentPage.d.ts.map +0 -1
  1082. package/dist/src/vite/componentPage.js.map +0 -1
  1083. package/dist/src/vite/config.d.ts.map +0 -1
  1084. package/dist/src/vite/config.js.map +0 -1
  1085. package/dist/src/vite/configFile.d.ts.map +0 -1
  1086. package/dist/src/vite/configFile.js.map +0 -1
  1087. package/dist/src/vite/docsExtractor.d.ts.map +0 -1
  1088. package/dist/src/vite/docsExtractor.js.map +0 -1
  1089. package/dist/src/vite/docsProgram.d.ts.map +0 -1
  1090. package/dist/src/vite/docsProgram.js.map +0 -1
  1091. package/dist/src/vite/docsWorker.d.ts.map +0 -1
  1092. package/dist/src/vite/docsWorker.js.map +0 -1
  1093. package/dist/src/vite/forcedStates.d.ts.map +0 -1
  1094. package/dist/src/vite/forcedStates.js.map +0 -1
  1095. package/dist/src/vite/forgebookPlugin.d.ts.map +0 -1
  1096. package/dist/src/vite/forgebookPlugin.js.map +0 -1
  1097. package/dist/src/vite/heightsRoute.d.ts.map +0 -1
  1098. package/dist/src/vite/heightsRoute.js.map +0 -1
  1099. package/dist/src/vite/highlightCode.d.ts.map +0 -1
  1100. package/dist/src/vite/highlightCode.js.map +0 -1
  1101. package/dist/src/vite/indexStoryFile.d.ts.map +0 -1
  1102. package/dist/src/vite/indexStoryFile.js.map +0 -1
  1103. package/dist/src/vite/mcpProtocol.d.ts.map +0 -1
  1104. package/dist/src/vite/mcpProtocol.js.map +0 -1
  1105. package/dist/src/vite/pages.d.ts.map +0 -1
  1106. package/dist/src/vite/pages.js.map +0 -1
  1107. package/dist/src/vite/prebundled.d.ts.map +0 -1
  1108. package/dist/src/vite/prebundled.js.map +0 -1
  1109. package/dist/src/vite/storyCode.d.ts.map +0 -1
  1110. package/dist/src/vite/storyCode.js.map +0 -1
  1111. package/dist/src/vite/storyFilesModule.d.ts.map +0 -1
  1112. package/dist/src/vite/storyFilesModule.js.map +0 -1
  1113. package/dist/src/vite/storyMeta.d.ts.map +0 -1
  1114. package/dist/src/vite/storyMeta.js.map +0 -1
  1115. package/dist/src/vite/touchMedia.d.ts.map +0 -1
  1116. package/dist/src/vite/touchMedia.js.map +0 -1
  1117. package/dist/src/vite/typeScriptPieces.d.ts.map +0 -1
  1118. package/dist/src/vite/typeScriptPieces.js.map +0 -1
  1119. package/dist/src/vite/usageGraph.d.ts.map +0 -1
  1120. package/dist/src/vite/usageGraph.js.map +0 -1
  1121. package/dist/src/vite/usageModule.d.ts.map +0 -1
  1122. package/dist/src/vite/usageModule.js.map +0 -1
  1123. package/dist/src/worstCase.d.ts.map +0 -1
  1124. package/dist/src/worstCase.js.map +0 -1
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Finds a component or a story of the stories' document by an id, the id an earlier rule gave it included, for the
3
+ * commands that read the document rather than the tree (`forgebook check`, `forgebook shot`, `forgebook diff`, the
4
+ * `story_links` tool).
5
+ *
6
+ * @remarks
7
+ * The tree finds a former id itself (`findStory`); the document carries only the current ids, so the former ones are
8
+ * worked out from each component's source and title and each story's export, by the same rule. Pure.
9
+ *
10
+ * @module
11
+ */
12
+ import { formerComponentId, formerStoryId } from "../storyTree.js";
13
+ /**
14
+ * The component an id names: by its id, else by the id the former rule gave it.
15
+ *
16
+ * @param document - the catalogue's stories.
17
+ * @param id - the id.
18
+ */
19
+ export const namedComponent = (document, id) => document.components.find((component) => component.id === id) ??
20
+ document.components.find((component) => formerComponentId(component.source, component.title) === id);
21
+ /**
22
+ * The story an id names, with its component: by its id, else by the id the former rule gave it.
23
+ *
24
+ * @param document - the catalogue's stories.
25
+ * @param id - the id.
26
+ */
27
+ export const namedStory = (document, id) => {
28
+ const stories = document.components.flatMap((component) => component.stories.map((story) => ({ component, story })));
29
+ return (stories.find(({ story }) => story.id === id) ??
30
+ stories.find(({ component, story }) => formerStoryId(component.source, component.title, story.exportName) === id));
31
+ };
32
+ /**
33
+ * The id the former rule gave a story of the document, when it differs from its id: its pictures may still carry it.
34
+ *
35
+ * @param component - the story's component.
36
+ * @param story - the story.
37
+ */
38
+ export const formerIdOf = (component, story) => {
39
+ const former = formerStoryId(component.source, component.title, story.exportName);
40
+ return former === story.id ? undefined : former;
41
+ };
@@ -0,0 +1,63 @@
1
+ /**
2
+ * The catalogue as a file, for `forgebook mcp --from`: what its read-only tools answer with no dev server and no repository.
3
+ *
4
+ * @remarks
5
+ * `forgebook build --agent-index` writes it beside the pages. It holds what the dev server's answers hold (stories, their
6
+ * props and docs, tokens), and the links are made when it is read, since only the reader knows where the catalogue is
7
+ * served. The questions run the code the dev server runs, so a built catalogue answers as a running one does.
8
+ *
9
+ * @module
10
+ */
11
+ import type { UsageGuidance } from "../componentDocs.ts";
12
+ import type { StoriesDocument, StoryDocument } from "./agent.types.ts";
13
+ import { type CataloguePages } from "./agentApi.ts";
14
+ import type { AgentAnswer } from "./agentRoutes.ts";
15
+ import { type FindableComponent } from "./findComponent.ts";
16
+ import { type TokenReading } from "./tokenAnswers.ts";
17
+ /** The file's name in the built catalogue. */
18
+ export declare const AGENT_INDEX_FILE = "forgebook-agent.json";
19
+ /** A component as a search finds it, with what its answer carries. */
20
+ export type IndexedComponent = FindableComponent & {
21
+ /** Its first story's id. */
22
+ readonly story: string | undefined;
23
+ /** When to use it and when not, when its TSDoc says. */
24
+ readonly guidance?: UsageGuidance;
25
+ };
26
+ /** The file. */
27
+ export type AgentIndex = {
28
+ /** The shape's version. */
29
+ readonly schema: 1;
30
+ /** The list of stories, with "Used in" where the catalogue offers it. */
31
+ readonly stories: StoriesDocument;
32
+ /** Each story in detail, by id. */
33
+ readonly details: Readonly<Record<string, StoryDocument>>;
34
+ /** What the intent search reads. */
35
+ readonly findable: readonly IndexedComponent[];
36
+ /** The tokens. */
37
+ readonly tokens: TokenReading;
38
+ /** The stories that could not be read when it was written. */
39
+ readonly problems: readonly string[];
40
+ };
41
+ /**
42
+ * Everything the index says went wrong while it was written, for whoever builds it: a story that failed to load is an
43
+ * answer with problems, not a missing one.
44
+ *
45
+ * @param index - the file.
46
+ */
47
+ export declare const indexProblems: (index: AgentIndex) => readonly string[];
48
+ /**
49
+ * Whether a value is an index this version reads.
50
+ *
51
+ * @param value - the parsed file.
52
+ */
53
+ export declare const isAgentIndex: (value: unknown) => value is AgentIndex;
54
+ /**
55
+ * Answers one of the API's paths from the file.
56
+ *
57
+ * @param index - the file.
58
+ * @param pages - where the catalogue is served, for the links.
59
+ * @param route - the path, as a dev server takes it.
60
+ * @param params - the query.
61
+ * @returns the same answer a dev server gives, or a 404 for what only a dev server can do.
62
+ */
63
+ export declare const indexAnswer: (index: AgentIndex, pages: CataloguePages, route: string, params: URLSearchParams) => AgentAnswer;
@@ -0,0 +1,91 @@
1
+ import { storyLinks } from "./agentApi.js";
2
+ import { findComponents } from "./findComponent.js";
3
+ import { TOKEN_ANSWERS } from "./tokenAnswers.js";
4
+ /** The file's name in the built catalogue. */
5
+ export const AGENT_INDEX_FILE = "forgebook-agent.json";
6
+ /**
7
+ * Everything the index says went wrong while it was written, for whoever builds it: a story that failed to load is an
8
+ * answer with problems, not a missing one.
9
+ *
10
+ * @param index - the file.
11
+ */
12
+ export const indexProblems = (index) => [
13
+ ...index.problems,
14
+ ...index.stories.problems,
15
+ ...index.tokens.unread,
16
+ ...index.tokens.problems,
17
+ ...Object.entries(index.details).flatMap(([id, detail]) => detail.problems.map((problem) => `${id}: ${problem}`))
18
+ ];
19
+ /** Whether a value is a plain object. */
20
+ const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
21
+ /**
22
+ * Whether a value is an index this version reads.
23
+ *
24
+ * @param value - the parsed file.
25
+ */
26
+ export const isAgentIndex = (value) => isRecord(value) &&
27
+ value["schema"] === 1 &&
28
+ isRecord(value["stories"]) &&
29
+ isRecord(value["details"]) &&
30
+ Array.isArray(value["findable"]) &&
31
+ isRecord(value["tokens"]) &&
32
+ Array.isArray(value["problems"]);
33
+ /** The list with the links of where the reader finds the catalogue, and "Used in" only when asked for. */
34
+ const storiesAnswer = ({ stories }, pages, params) => {
35
+ const view = params.get("view") ?? "";
36
+ const isUsageAsked = params.get("usedIn") === "true";
37
+ const components = stories.components.map(({ usedIn, ...component }) => ({
38
+ ...component,
39
+ ...(isUsageAsked && usedIn !== undefined ? { usedIn } : {}),
40
+ stories: component.stories.map((story) => ({ ...story, links: storyLinks(pages, story.id, view) }))
41
+ }));
42
+ return { status: 200, body: { ...stories, components } };
43
+ };
44
+ /** One story, with the same links. */
45
+ const storyAnswer = ({ details }, pages, params) => {
46
+ const id = params.get("id") ?? "";
47
+ const detail = Object.hasOwn(details, id) ? details[id] : undefined;
48
+ if (detail === undefined)
49
+ return { status: 404, body: { error: `No story "${id}"` } };
50
+ const links = storyLinks(pages, id, params.get("view") ?? "");
51
+ return { status: 200, body: { ...detail, story: { ...detail.story, links } } };
52
+ };
53
+ /** The components a description fits. */
54
+ const findAnswer = ({ findable }, pages, params) => {
55
+ const query = params.get("query") ?? "";
56
+ if (query.trim() === "")
57
+ return { status: 400, body: { error: "No words to look for" } };
58
+ const components = findComponents(findable, query).map((found) => {
59
+ const component = findable.find((each) => each.id === found.id);
60
+ const story = component?.story;
61
+ return {
62
+ ...found,
63
+ story,
64
+ links: story === undefined ? undefined : storyLinks(pages, story, ""),
65
+ ...(component?.guidance === undefined ? {} : { guidance: component.guidance })
66
+ };
67
+ });
68
+ const body = { schema: 1, query, components };
69
+ return { status: 200, body };
70
+ };
71
+ /**
72
+ * Answers one of the API's paths from the file.
73
+ *
74
+ * @param index - the file.
75
+ * @param pages - where the catalogue is served, for the links.
76
+ * @param route - the path, as a dev server takes it.
77
+ * @param params - the query.
78
+ * @returns the same answer a dev server gives, or a 404 for what only a dev server can do.
79
+ */
80
+ export const indexAnswer = (index, pages, route, params) => {
81
+ if (route === "stories")
82
+ return storiesAnswer(index, pages, params);
83
+ if (route === "story")
84
+ return storyAnswer(index, pages, params);
85
+ if (route === "find")
86
+ return findAnswer(index, pages, params);
87
+ const tokenAnswer = Object.hasOwn(TOKEN_ANSWERS, route) ? TOKEN_ANSWERS[route] : undefined;
88
+ if (tokenAnswer !== undefined)
89
+ return tokenAnswer(index.tokens, params);
90
+ return { status: 404, body: { error: `A built catalogue cannot answer "${route}"` } };
91
+ };
@@ -0,0 +1,10 @@
1
+ import { type AgentAnswer, type RouteContext } from "./agentRoutes.ts";
2
+ import type { TokenReading } from "./tokenAnswers.ts";
3
+ /**
4
+ * The whole catalogue, as one document.
5
+ *
6
+ * @param context - what the routes read.
7
+ * @param tokens - the tokens, read.
8
+ * @returns the index, with the stories that could not be answered at all in its problems.
9
+ */
10
+ export declare const agentIndexAnswer: (context: RouteContext, tokens: TokenReading) => Promise<AgentAnswer>;
@@ -0,0 +1,35 @@
1
+ import { isStoriesDocument, isStoryDocument } from "./agentApi.js";
2
+ import { storiesAnswer, storyAnswer } from "./agentRoutes.js";
3
+ import { indexedComponents } from "./findRoute.js";
4
+ /**
5
+ * The whole catalogue, as one document.
6
+ *
7
+ * @param context - what the routes read.
8
+ * @param tokens - the tokens, read.
9
+ * @returns the index, with the stories that could not be answered at all in its problems.
10
+ */
11
+ export const agentIndexAnswer = async (context, tokens) => {
12
+ const listed = await storiesAnswer({ ...context, params: new URLSearchParams({ usedIn: "true" }) });
13
+ if (!isStoriesDocument(listed.body))
14
+ return listed;
15
+ const stories = listed.body;
16
+ const ids = stories.components.flatMap((component) => component.stories.map((story) => story.id));
17
+ const details = {};
18
+ const problems = [];
19
+ for (const id of ids) {
20
+ const answer = await storyAnswer({ ...context, params: new URLSearchParams({ id }) });
21
+ if (answer.status === 200 && isStoryDocument(answer.body))
22
+ details[id] = answer.body;
23
+ else
24
+ problems.push(`${id}: ${JSON.stringify(answer.body)}`);
25
+ }
26
+ const body = {
27
+ schema: 1,
28
+ stories,
29
+ details,
30
+ findable: await indexedComponents(context),
31
+ tokens,
32
+ problems
33
+ };
34
+ return { status: 200, body };
35
+ };
@@ -1,21 +1,53 @@
1
- /**
2
- * The dev server's answers to tools and agents, under `/__forgebook/api/`: `stories` (every story) and `story?id=…`
3
- * (one in detail), each with an optional `view` (the view's query, `theme=dark&lang=it`) the links open in.
4
- *
5
- * @remarks
6
- * The server loads the sources and the previews with the same imports the pages use (`AGENT_SOURCES_FILE`), so a tool
7
- * sees what the shell shows. A story module that fails on Node (it reads `window` while it loads) gives its story a
8
- * problem in the answer instead of an error. Served by the dev server only, where Vite listens (localhost by default);
9
- * a build has none of it.
10
- *
11
- * @module
12
- */
13
1
  import type { IncomingMessage, ServerResponse } from "node:http";
14
- import type { ViteDevServer } from "vite";
2
+ import type { StorySource } from "@forgebook/story-format/source";
3
+ import { type ViteDevServer } from "vite";
4
+ import { type LoadedPreview } from "../frame/storyModule.ts";
5
+ import type { FramesPlacement, PageOrigins } from "../frameOrigins.ts";
15
6
  import type { LiveErrors } from "../liveErrors.ts";
7
+ import { type StoryTree } from "../storyTree.ts";
8
+ import { type CataloguePages, type LoadedStoryParts } from "./agentApi.ts";
16
9
  import type { ResolvedConfig } from "./configFile.ts";
17
10
  /** The path the answers live under. */
18
11
  export declare const AGENT_API = "/__forgebook/api/";
12
+ /**
13
+ * The pages under `AGENT_API` another origin's page may frame: a client's inline preview. They show a story and act on
14
+ * nothing, so the catalogue's guard lets another origin open them, as it does the catalogue's page.
15
+ */
16
+ export declare const FRAMED_AGENT_PAGES: ReadonlySet<string>;
17
+ /** What the agent module gives: the sources and the previews merged. */
18
+ type AgentModule = {
19
+ /** The catalogue's sources, in its order. */
20
+ readonly sources: readonly StorySource[];
21
+ /** Its previews merged. */
22
+ readonly preview: LoadedPreview;
23
+ /** Why a preview was left out: it could not load on the server. */
24
+ readonly problems: readonly string[];
25
+ };
26
+ /**
27
+ * The agent module read with the catalogue's previews, or why it is not what the plugin generates.
28
+ *
29
+ * @param module - the module of `AGENT_SOURCES_FILE`, as the server loaded it.
30
+ * @param previews - what loads each preview, in the configuration's order.
31
+ */
32
+ export declare const agentModuleOf: (module: unknown, previews: readonly (() => Promise<unknown>)[]) => Promise<AgentModule>;
33
+ /** A loader's value, or why it failed. */
34
+ export declare const settled: (load: (() => Promise<unknown>) | undefined) => Promise<LoadedStoryParts["docs"]>;
35
+ /** What an answer asks of the dev server. */
36
+ export type AgentServer = {
37
+ /** Loads a module on the server. */
38
+ readonly load: (id: string) => Promise<unknown>;
39
+ /** Loads a preview on the server, with what only a browser can load left as placeholders (`previewRunner.ts`). */
40
+ readonly loadPreview: (file: string) => Promise<unknown>;
41
+ /** The file a source's module specifier leads to, as the pages' imports find it; none when nothing does. */
42
+ readonly resolveSource: (specifier: string) => Promise<string | undefined>;
43
+ };
44
+ /**
45
+ * What the answers ask of a dev server.
46
+ *
47
+ * @param server - the dev server.
48
+ * @param config - the catalogue's configuration, whose generated module the sources are imported from.
49
+ */
50
+ export declare const agentServer: (server: ViteDevServer, config: ResolvedConfig) => AgentServer;
19
51
  /** An answer: its HTTP status and its JSON body. */
20
52
  export type AgentAnswer = {
21
53
  /** 200, 404 for a story or a path that does not exist, 500 when the sources fail to load. */
@@ -32,26 +64,55 @@ export declare const ROOT_HEADER = "forgebook-root";
32
64
  * @param dir - the catalogue's folder.
33
65
  */
34
66
  export declare const rootHeaderValue: (dir: string) => string;
67
+ /** What every route reads: the catalogue's sources and tree, its configuration, the query and the links' pages. */
68
+ export type RouteContext = {
69
+ /** The sources and the preview, as the dev server loaded them. */
70
+ readonly loaded: AgentModule;
71
+ /** The sources' story tree. */
72
+ readonly tree: StoryTree;
73
+ /** The catalogue's configuration. */
74
+ readonly config: ResolvedConfig;
75
+ /** The query. */
76
+ readonly params: URLSearchParams;
77
+ /** Where the catalogue is served, for the links. */
78
+ readonly pages: CataloguePages;
79
+ /** The view the links open in; empty for the default view. */
80
+ readonly view: string;
81
+ };
82
+ /**
83
+ * The stories, with each component's "Used in" when asked for and offered.
84
+ *
85
+ * @param context - what the routes read.
86
+ */
87
+ export declare const storiesAnswer: (context: RouteContext) => Promise<AgentAnswer>;
88
+ /**
89
+ * One story in detail, its component's "Used in" when offered.
90
+ *
91
+ * @param context - what the routes read.
92
+ */
93
+ export declare const storyAnswer: (context: RouteContext) => Promise<AgentAnswer>;
35
94
  /**
36
95
  * Answers one of the API's paths.
37
96
  *
38
- * @param load - loads a module on the server (the dev server's `ssrLoadModule`).
97
+ * @param server - what the answers ask of the dev server.
39
98
  * @param config - the catalogue's configuration.
40
99
  * @param route - the path under `AGENT_API` (`stories`, `story`).
41
- * @param params - the query: `id` for a story, `view` for the links, `usedIn=true` for the list's "Used in" (a
100
+ * @param params - the query: `id` for a story, `view` for the links, `category`, `name`, `value` and `type` for the
101
+ * tokens, `query` and `limit` for a search, `usedIn=true` for the list's "Used in" (a
42
102
  * story's comes with it when the catalogue offers it).
43
- * @param origin - where the catalogue is served (`http://localhost:5173`), for the links.
103
+ * @param origins - where the catalogue is served (`http://localhost:5173`) and where its frames are, for the links.
44
104
  * @param live - the errors the open frames reported, on a dev server a browser uses; none for a server of the
45
105
  * command's own, which no frame reports to.
46
106
  */
47
- export declare const agentAnswer: (load: (id: string) => Promise<unknown>, config: ResolvedConfig, route: string, params: URLSearchParams, origin: string, live?: LiveErrors) => Promise<AgentAnswer>;
107
+ export declare const agentAnswer: (server: AgentServer, config: ResolvedConfig, route: string, params: URLSearchParams, origins: PageOrigins, live?: LiveErrors) => Promise<AgentAnswer>;
48
108
  /**
49
109
  * The middleware that answers under `AGENT_API`, for a catalogue's dev server.
50
110
  *
51
111
  * @param server - the dev server, which loads the modules.
52
112
  * @param config - the catalogue's configuration.
53
113
  * @param live - the errors the open frames report.
114
+ * @param placement - where the frames run, for the links to them.
54
115
  * @returns a Connect middleware: it answers its own paths and passes every other request on.
55
116
  */
56
- export declare const agentMiddleware: (server: ViteDevServer, config: ResolvedConfig, live: LiveErrors) => (request: IncomingMessage, response: ServerResponse, next: (error?: unknown) => void) => void;
57
- //# sourceMappingURL=agentRoutes.d.ts.map
117
+ export declare const agentMiddleware: (server: ViteDevServer, config: ResolvedConfig, live: LiveErrors, placement: () => Promise<FramesPlacement>) => (request: IncomingMessage, response: ServerResponse, next: (error?: unknown) => void) => void;
118
+ export {};
@@ -1,12 +1,47 @@
1
- import { join } from "node:path";
2
- import { mergedPreviews, readPreview } from "../frame/storyModule.js";
1
+ /**
2
+ * The dev server's answers to tools and agents, under `/__forgebook/api/`: `stories` (every story) and `story?id=…`
3
+ * (one in detail), `pages` and `page?id=…` (the docs pages), `search?query=…` (everything, by its text), each with an
4
+ * optional `view` (the view's query, `theme=dark&lang=it`) the links open in; and `preview?id=…`, the page that shows a
5
+ * story inside a client that renders apps, the one answer that is not JSON.
6
+ *
7
+ * @remarks
8
+ * The server loads the sources with the same imports the pages use (`AGENT_SOURCES_FILE`), so a tool sees what the
9
+ * shell shows. A story module that fails on Node (it reads `window` while it loads) gives its story a problem in the
10
+ * answer instead of an error. A preview is written for a browser, and only its args and parameters are read here: it
11
+ * loads with what it imports that needs a browser left as placeholders (`previewRunner.ts`), and one that still fails is
12
+ * left out of the answers and named among their problems, so it costs a tool neither the catalogue nor answers changed
13
+ * without a word. Served by the dev server only, where
14
+ * Vite listens (localhost by default); a build has none of it.
15
+ *
16
+ * @module
17
+ */
18
+ import { realpath } from "node:fs/promises";
19
+ import { createIdResolver } from "vite";
20
+ import { mergedPreviews, NO_PREVIEW, readPreview } from "../frame/storyModule.js";
3
21
  import { sourceFiles } from "../sourceFiles.js";
4
- import { findStory, storyTree } from "../storyTree.js";
22
+ import { findComponentByTitle, findStory, storyTree } from "../storyTree.js";
5
23
  import { sourceUsage } from "../usedIn.js";
6
- import { storiesDocument, storyDocument } from "./agentApi.js";
7
- import { AGENT_SOURCES_FILE } from "./pages.js";
24
+ import { frameAddressOf } from "../viewState.js";
25
+ import { storiesDocument, storyDocument, storyLinks } from "./agentApi.js";
26
+ import { agentIndexAnswer } from "./agentIndexRoute.js";
27
+ import { pageAnswer, pagesAnswer } from "./docPagesRoute.js";
28
+ import { findAnswer } from "./findRoute.js";
29
+ import { framesOriginOf } from "./framesConfig.js";
30
+ import { hostOf } from "./framesServer.js";
31
+ import { catalogueChangedFiles, changeBase, changedFiles } from "./gitChange.js";
32
+ import { AGENT_SOURCES_FILE, pageModulePath } from "./pages.js";
33
+ import { PREVIEW_ROUTE } from "./previewRoute.js";
34
+ import { loadPreview } from "./previewRunner.js";
35
+ import { searchAnswer } from "./searchRoute.js";
36
+ import { catalogueTokens, STORYLESS_ROUTES } from "./storylessRoutes.js";
37
+ import { affectedStories } from "./storyReach.js";
8
38
  /** The path the answers live under. */
9
39
  export const AGENT_API = "/__forgebook/api/";
40
+ /**
41
+ * The pages under `AGENT_API` another origin's page may frame: a client's inline preview. They show a story and act on
42
+ * nothing, so the catalogue's guard lets another origin open them, as it does the catalogue's page.
43
+ */
44
+ export const FRAMED_AGENT_PAGES = new Set([`${AGENT_API}${PREVIEW_ROUTE}`]);
10
45
  /** Whether a value is a plain object. */
11
46
  const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
12
47
  /** Whether a value is a source, as far as the answers read one: its id, name and story files. */
@@ -14,15 +49,35 @@ const isStorySource = (value) => isRecord(value) &&
14
49
  typeof value["id"] === "string" &&
15
50
  typeof value["name"] === "string" &&
16
51
  Array.isArray(value["files"]);
17
- /** The agent module read, or why it is not what the plugin generates. */
18
- const agentModuleOf = (module) => {
19
- if (!isRecord(module) || !Array.isArray(module["sources"]) || !Array.isArray(module["previews"]))
52
+ /** A preview, read from what loads it, or why it cannot load on the server. */
53
+ const loadedPreview = async (load) => {
54
+ try {
55
+ return readPreview(await load());
56
+ }
57
+ catch (error) {
58
+ const message = error instanceof Error ? error.message : String(error);
59
+ return `a preview did not load on the server, so its args and parameters are left out of these answers: ${message}`;
60
+ }
61
+ };
62
+ /**
63
+ * The agent module read with the catalogue's previews, or why it is not what the plugin generates.
64
+ *
65
+ * @param module - the module of `AGENT_SOURCES_FILE`, as the server loaded it.
66
+ * @param previews - what loads each preview, in the configuration's order.
67
+ */
68
+ export const agentModuleOf = async (module, previews) => {
69
+ if (!isRecord(module) || !Array.isArray(module["sources"]))
20
70
  throw new Error("The catalogue's sources did not load");
21
71
  const sources = module["sources"].filter(isStorySource);
22
- return { sources, preview: mergedPreviews(module["previews"].map(readPreview)) };
72
+ const loaded = await Promise.all(previews.map(loadedPreview));
73
+ return {
74
+ sources,
75
+ preview: mergedPreviews(loaded.map((each) => (typeof each === "string" ? NO_PREVIEW : each))),
76
+ problems: loaded.filter((each) => typeof each === "string")
77
+ };
23
78
  };
24
79
  /** A loader's value, or why it failed. */
25
- const settled = async (load) => {
80
+ export const settled = async (load) => {
26
81
  if (load === undefined)
27
82
  return { value: { name: null } };
28
83
  try {
@@ -41,6 +96,22 @@ const usageBySource = async (sources) => {
41
96
  const answers = await Promise.all(sources.map(async (source) => [source.id, await sourceUsage(source)]));
42
97
  return new Map(answers.flatMap(([id, index]) => (typeof index === "string" ? [] : [[id, index]])));
43
98
  };
99
+ /**
100
+ * What the answers ask of a dev server.
101
+ *
102
+ * @param server - the dev server.
103
+ * @param config - the catalogue's configuration, whose generated module the sources are imported from.
104
+ */
105
+ export const agentServer = (server, config) => {
106
+ // Vite's resolver, not Node's: a catalogue's aliases and a package's export conditions lead to the same file; `scan`
107
+ // keeps it on the package's own file and away from the optimizer, which would answer with a prebundle
108
+ const resolveId = createIdResolver(server.config, { scan: true });
109
+ return {
110
+ load: (id) => server.ssrLoadModule(id),
111
+ loadPreview: (file) => loadPreview(server.environments.ssr, file),
112
+ resolveSource: (specifier) => resolveId(server.environments.client, specifier, pageModulePath(config.dir, AGENT_SOURCES_FILE))
113
+ };
114
+ };
44
115
  /** The header that names the catalogue's folder, so a client knows the server it found serves its catalogue. */
45
116
  export const ROOT_HEADER = "forgebook-root";
46
117
  /**
@@ -71,19 +142,47 @@ const errorsAnswer = (context, live) => {
71
142
  *
72
143
  * @param context - what the routes read.
73
144
  */
74
- const storiesAnswer = async (context) => {
145
+ export const storiesAnswer = async (context) => {
75
146
  const { config, params, tree, pages, view, loaded } = context;
76
147
  const usage = config.lists.usedIn !== false && params.get("usedIn") === "true"
77
148
  ? await usageBySource(loaded.sources)
78
149
  : undefined;
79
150
  return { status: 200, body: storiesDocument(config.title, tree, pages, view, usage) };
80
151
  };
152
+ /** Whether a value is a list of stories with what they reach. */
153
+ const isReach = (value) => Array.isArray(value);
154
+ /**
155
+ * The stories a change touches, read from the files git names and the import graph "Used in" reads.
156
+ *
157
+ * @param context - what the routes read.
158
+ */
159
+ const changedAnswer = async ({ config, loaded, tree, params, pages, view }) => {
160
+ const since = params.get("since") || "HEAD";
161
+ const base = await changeBase(config.dir, since);
162
+ if (base === undefined)
163
+ return { status: 400, body: { error: `"${since}" names no commit here` } };
164
+ const { root, files } = await changedFiles(config.dir, base);
165
+ const reaches = await Promise.all(loaded.sources.flatMap((source) => source.files.map(async (group) => {
166
+ const reach = await group.reach?.();
167
+ return { source: source.id, reach: isReach(reach) ? reach : [] };
168
+ })));
169
+ const changed = catalogueChangedFiles(config.dir, await realpath(config.dir), root, files);
170
+ const stories = reaches.flatMap(({ source, reach }) => affectedStories(reach, changed).flatMap((story) => {
171
+ const component = findComponentByTitle(tree, source, story.title)?.component;
172
+ const found = [...(component?.stories ?? []), ...(component?.unlisted ?? [])].find((each) => each.exportName === story.exportName);
173
+ return found === undefined
174
+ ? []
175
+ : [{ id: found.id, title: story.title, links: storyLinks(pages, found.id, view) }];
176
+ }));
177
+ const body = { schema: 1, since, files, stories, problems: [] };
178
+ return { status: 200, body };
179
+ };
81
180
  /**
82
181
  * One story in detail, its component's "Used in" when offered.
83
182
  *
84
183
  * @param context - what the routes read.
85
184
  */
86
- const storyAnswer = async (context) => {
185
+ export const storyAnswer = async (context) => {
87
186
  const { config, params, tree, pages, view, loaded } = context;
88
187
  const id = params.get("id") ?? "";
89
188
  const location = findStory(tree, id);
@@ -91,7 +190,8 @@ const storyAnswer = async (context) => {
91
190
  if (location === undefined || source === undefined)
92
191
  return { status: 404, body: { error: `No story "${id}"` } };
93
192
  const files = sourceFiles(source);
94
- const file = location.component.file;
193
+ // the story's own file: its module, and the docs of the component its meta names, which its args are for
194
+ const file = location.story.file;
95
195
  const parts = {
96
196
  module: await settled(files.stories[file]),
97
197
  docs: await settled(files.docs[file]),
@@ -105,24 +205,29 @@ const storyAnswer = async (context) => {
105
205
  /**
106
206
  * Answers one of the API's paths.
107
207
  *
108
- * @param load - loads a module on the server (the dev server's `ssrLoadModule`).
208
+ * @param server - what the answers ask of the dev server.
109
209
  * @param config - the catalogue's configuration.
110
210
  * @param route - the path under `AGENT_API` (`stories`, `story`).
111
- * @param params - the query: `id` for a story, `view` for the links, `usedIn=true` for the list's "Used in" (a
211
+ * @param params - the query: `id` for a story, `view` for the links, `category`, `name`, `value` and `type` for the
212
+ * tokens, `query` and `limit` for a search, `usedIn=true` for the list's "Used in" (a
112
213
  * story's comes with it when the catalogue offers it).
113
- * @param origin - where the catalogue is served (`http://localhost:5173`), for the links.
214
+ * @param origins - where the catalogue is served (`http://localhost:5173`) and where its frames are, for the links.
114
215
  * @param live - the errors the open frames reported, on a dev server a browser uses; none for a server of the
115
216
  * command's own, which no frame reports to.
116
217
  */
117
- export const agentAnswer = async (load, config, route, params, origin, live) => {
218
+ export const agentAnswer = async (server, config, route, params, origins, live) => {
118
219
  try {
119
- const loaded = agentModuleOf(await load(join(config.dir, AGENT_SOURCES_FILE)));
220
+ const answerAlone = STORYLESS_ROUTES[route];
221
+ if (answerAlone !== undefined)
222
+ return await answerAlone(config, params, server.resolveSource);
223
+ const loaded = await agentModuleOf(await server.load(pageModulePath(config.dir, AGENT_SOURCES_FILE)), config.previews.map((file) => () => server.loadPreview(file)));
224
+ const tree = storyTree(loaded.sources);
120
225
  const context = {
121
226
  loaded,
122
- tree: storyTree(loaded.sources),
227
+ tree: { ...tree, problems: [...loaded.problems, ...tree.problems] },
123
228
  config,
124
229
  params,
125
- pages: { page: `${origin}/`, frame: `${origin}/frame.html` },
230
+ pages: { page: `${origins.catalogue}/`, frame: `${origins.frames}/frame.html` },
126
231
  view: params.get("view") ?? ""
127
232
  };
128
233
  if (route === "errors")
@@ -131,28 +236,67 @@ export const agentAnswer = async (load, config, route, params, origin, live) =>
131
236
  return await storiesAnswer(context);
132
237
  if (route === "story")
133
238
  return await storyAnswer(context);
239
+ if (route === "find")
240
+ return await findAnswer(context);
241
+ if (route === "search")
242
+ return await searchAnswer(context);
243
+ if (route === "pages")
244
+ return await pagesAnswer(context);
245
+ if (route === "page")
246
+ return await pageAnswer(context);
247
+ if (route === "changed")
248
+ return await changedAnswer(context);
249
+ if (route === "agent-index")
250
+ return await agentIndexAnswer(context, await catalogueTokens(config, server.resolveSource));
134
251
  return { status: 404, body: { error: `No answer at ${AGENT_API}${route}` } };
135
252
  }
136
253
  catch (error) {
137
254
  return { status: 500, body: { error: error instanceof Error ? error.message : String(error) } };
138
255
  }
139
256
  };
257
+ /**
258
+ * Answers a story's preview page. Its code is read here, on the first request for one: a dev server no client asks for a
259
+ * preview never loads it.
260
+ *
261
+ * @param url - the request's address: `id` and `view` in its query.
262
+ * @param framesOrigin - the frames' origin, where the page loads the story's frame.
263
+ * @param response - the answer.
264
+ */
265
+ const answerPreview = async (url, framesOrigin, response) => {
266
+ const { previewRelayPage } = await import("./previewPages.js");
267
+ const id = url.searchParams.get("id") ?? "";
268
+ const frame = frameAddressOf(`${framesOrigin}/frame.html`, id, url.searchParams.get("view") ?? "");
269
+ response.setHeader("Content-Type", "text/html");
270
+ response.setHeader("Cache-Control", "no-store");
271
+ response.end(previewRelayPage(frame, id));
272
+ };
140
273
  /**
141
274
  * The middleware that answers under `AGENT_API`, for a catalogue's dev server.
142
275
  *
143
276
  * @param server - the dev server, which loads the modules.
144
277
  * @param config - the catalogue's configuration.
145
278
  * @param live - the errors the open frames report.
279
+ * @param placement - where the frames run, for the links to them.
146
280
  * @returns a Connect middleware: it answers its own paths and passes every other request on.
147
281
  */
148
- export const agentMiddleware = (server, config, live) => (request, response, next) => {
149
- const url = new URL(request.url ?? "/", `http://${request.headers.host ?? "localhost"}`);
282
+ export const agentMiddleware = (server, config, live, placement) => (request, response, next) => {
283
+ const scheme = server.config.server.https === undefined ? "http:" : "https:";
284
+ const url = new URL(request.url ?? "/", `${scheme}//${hostOf(request) ?? "localhost"}`);
150
285
  if (!url.pathname.startsWith(AGENT_API)) {
151
286
  next();
152
287
  return;
153
288
  }
154
289
  const route = url.pathname.slice(AGENT_API.length);
155
- void agentAnswer((id) => server.ssrLoadModule(id), config, route, url.searchParams, url.origin, live)
290
+ const origins = placement().then((frames) => ({
291
+ catalogue: url.origin,
292
+ frames: framesOriginOf(frames, url.href) ?? url.origin
293
+ }));
294
+ if (route === PREVIEW_ROUTE) {
295
+ void origins.then((each) => answerPreview(url, each.frames, response)).catch(next);
296
+ return;
297
+ }
298
+ void origins
299
+ .then((each) => agentAnswer(agentServer(server, config), config, route, url.searchParams, each, live))
156
300
  .then(({ status, body }) => {
157
301
  response.statusCode = status;
158
302
  response.setHeader("Content-Type", "application/json");
@@ -165,4 +309,3 @@ export const agentMiddleware = (server, config, live) => (request, response, nex
165
309
  response.end(`${JSON.stringify({ error: error instanceof Error ? error.message : String(error) })}\n`);
166
310
  });
167
311
  };
168
- //# sourceMappingURL=agentRoutes.js.map