forgebook 0.1.7 → 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 (1114) hide show
  1. package/README.md +906 -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 +145 -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 -16
  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 +24 -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 +88 -24
  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 +128 -29
  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 +57 -21
  118. package/dist/src/catalogue.js +34 -15
  119. package/dist/src/codeLiteral.d.ts +41 -0
  120. package/dist/src/codeLiteral.js +51 -0
  121. package/dist/src/componentDocs.d.ts +86 -1
  122. package/dist/src/componentDocs.js +33 -3
  123. package/dist/src/controlKeys.d.ts +0 -1
  124. package/dist/src/controlKeys.js +2 -2
  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 +12 -4
  251. package/dist/src/shell/ApiReference.js +74 -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 +107 -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 +9 -0
  321. package/dist/src/shell/LogicMark.js +5 -0
  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 +292 -84
  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 +10 -2
  353. package/dist/src/shell/SidebarEntries.js +3 -3
  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 +25 -0
  359. package/dist/src/shell/SignatureReference.js +25 -0
  360. package/dist/src/shell/Stage.d.ts +9 -4
  361. package/dist/src/shell/Stage.js +121 -60
  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 +9 -3
  377. package/dist/src/shell/Toolbar.js +12 -7
  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 +3 -3
  402. package/dist/src/shell/compareVariants.js +6 -5
  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 +15 -4
  412. package/dist/src/shell/dockTabs.js +69 -26
  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 +4 -1
  421. package/dist/src/shell/icons.js +4 -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 +24 -0
  431. package/dist/src/shell/logicView.js +39 -0
  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 +310 -136
  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 +62 -80
  451. package/dist/src/shell/strings.js +60 -79
  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 +35 -0
  499. package/dist/src/shell/useShownView.js +36 -0
  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 +88 -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 +88 -25
  551. package/dist/src/storyTree.js +219 -126
  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 +281 -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 +131 -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 +330 -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 +24 -0
  649. package/dist/src/vite/heightsRoute.js +42 -0
  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 +20 -19
  657. package/dist/src/vite/indexStoryFile.js +172 -201
  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 +66 -3
  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/MatrixPicker.d.ts.map +0 -1
  914. package/dist/src/shell/MatrixPicker.js.map +0 -1
  915. package/dist/src/shell/NamedViews.d.ts.map +0 -1
  916. package/dist/src/shell/NamedViews.js.map +0 -1
  917. package/dist/src/shell/PackageHtml.d.ts.map +0 -1
  918. package/dist/src/shell/PackageHtml.js.map +0 -1
  919. package/dist/src/shell/PartsTab.d.ts.map +0 -1
  920. package/dist/src/shell/PartsTab.js.map +0 -1
  921. package/dist/src/shell/PinnedControl.d.ts.map +0 -1
  922. package/dist/src/shell/PinnedControl.js.map +0 -1
  923. package/dist/src/shell/PropFields.d.ts.map +0 -1
  924. package/dist/src/shell/PropFields.js.map +0 -1
  925. package/dist/src/shell/PropsTab.d.ts.map +0 -1
  926. package/dist/src/shell/PropsTab.js.map +0 -1
  927. package/dist/src/shell/Segmented.d.ts.map +0 -1
  928. package/dist/src/shell/Segmented.js.map +0 -1
  929. package/dist/src/shell/Shell.d.ts.map +0 -1
  930. package/dist/src/shell/Shell.js.map +0 -1
  931. package/dist/src/shell/Sidebar.d.ts.map +0 -1
  932. package/dist/src/shell/Sidebar.js.map +0 -1
  933. package/dist/src/shell/SidebarEntries.d.ts.map +0 -1
  934. package/dist/src/shell/SidebarEntries.js.map +0 -1
  935. package/dist/src/shell/SidebarHandle.d.ts.map +0 -1
  936. package/dist/src/shell/SidebarHandle.js.map +0 -1
  937. package/dist/src/shell/Stage.d.ts.map +0 -1
  938. package/dist/src/shell/Stage.js.map +0 -1
  939. package/dist/src/shell/StageTools.d.ts.map +0 -1
  940. package/dist/src/shell/StageTools.js.map +0 -1
  941. package/dist/src/shell/StageViewport.d.ts.map +0 -1
  942. package/dist/src/shell/StageViewport.js.map +0 -1
  943. package/dist/src/shell/StoryCodeBlock.d.ts.map +0 -1
  944. package/dist/src/shell/StoryCodeBlock.js.map +0 -1
  945. package/dist/src/shell/StoryPicker.d.ts.map +0 -1
  946. package/dist/src/shell/StoryPicker.js.map +0 -1
  947. package/dist/src/shell/Toolbar.d.ts.map +0 -1
  948. package/dist/src/shell/Toolbar.js.map +0 -1
  949. package/dist/src/shell/ToolbarControl.d.ts.map +0 -1
  950. package/dist/src/shell/ToolbarControl.js.map +0 -1
  951. package/dist/src/shell/UsedIn.d.ts.map +0 -1
  952. package/dist/src/shell/UsedIn.js.map +0 -1
  953. package/dist/src/shell/ViewMenu.d.ts.map +0 -1
  954. package/dist/src/shell/ViewMenu.js.map +0 -1
  955. package/dist/src/shell/WidthField.d.ts.map +0 -1
  956. package/dist/src/shell/WidthField.js.map +0 -1
  957. package/dist/src/shell/catalogueContext.d.ts.map +0 -1
  958. package/dist/src/shell/catalogueContext.js.map +0 -1
  959. package/dist/src/shell/codeTokens.d.ts.map +0 -1
  960. package/dist/src/shell/codeTokens.js.map +0 -1
  961. package/dist/src/shell/codeWriter.d.ts.map +0 -1
  962. package/dist/src/shell/codeWriter.js.map +0 -1
  963. package/dist/src/shell/compareVariants.d.ts.map +0 -1
  964. package/dist/src/shell/compareVariants.js.map +0 -1
  965. package/dist/src/shell/controlCycle.d.ts.map +0 -1
  966. package/dist/src/shell/controlCycle.js.map +0 -1
  967. package/dist/src/shell/dockTabs.d.ts.map +0 -1
  968. package/dist/src/shell/dockTabs.js.map +0 -1
  969. package/dist/src/shell/icons.d.ts.map +0 -1
  970. package/dist/src/shell/icons.js.map +0 -1
  971. package/dist/src/shell/keyboard.d.ts.map +0 -1
  972. package/dist/src/shell/keyboard.js.map +0 -1
  973. package/dist/src/shell/mountShell.d.ts.map +0 -1
  974. package/dist/src/shell/mountShell.js.map +0 -1
  975. package/dist/src/shell/storyTouch.d.ts.map +0 -1
  976. package/dist/src/shell/storyTouch.js.map +0 -1
  977. package/dist/src/shell/strings.d.ts.map +0 -1
  978. package/dist/src/shell/strings.js.map +0 -1
  979. package/dist/src/shell/switchView.d.ts.map +0 -1
  980. package/dist/src/shell/switchView.js.map +0 -1
  981. package/dist/src/shell/treeSearch.d.ts.map +0 -1
  982. package/dist/src/shell/treeSearch.js.map +0 -1
  983. package/dist/src/shell/useAppearance.d.ts.map +0 -1
  984. package/dist/src/shell/useAppearance.js.map +0 -1
  985. package/dist/src/shell/useComponentDocs.d.ts.map +0 -1
  986. package/dist/src/shell/useComponentDocs.js.map +0 -1
  987. package/dist/src/shell/useControlKeys.d.ts.map +0 -1
  988. package/dist/src/shell/useControlKeys.js.map +0 -1
  989. package/dist/src/shell/useCopy.d.ts.map +0 -1
  990. package/dist/src/shell/useCopy.js.map +0 -1
  991. package/dist/src/shell/useFold.d.ts.map +0 -1
  992. package/dist/src/shell/useFold.js.map +0 -1
  993. package/dist/src/shell/useFrameMessages.d.ts.map +0 -1
  994. package/dist/src/shell/useFrameMessages.js.map +0 -1
  995. package/dist/src/shell/useFrameQueue.d.ts.map +0 -1
  996. package/dist/src/shell/useFrameQueue.js.map +0 -1
  997. package/dist/src/shell/useFullPage.d.ts.map +0 -1
  998. package/dist/src/shell/useFullPage.js.map +0 -1
  999. package/dist/src/shell/useLiveView.d.ts.map +0 -1
  1000. package/dist/src/shell/useLiveView.js.map +0 -1
  1001. package/dist/src/shell/useLoaded.d.ts.map +0 -1
  1002. package/dist/src/shell/useLoaded.js.map +0 -1
  1003. package/dist/src/shell/usePageDoc.d.ts.map +0 -1
  1004. package/dist/src/shell/usePageDoc.js.map +0 -1
  1005. package/dist/src/shell/usePopover.d.ts.map +0 -1
  1006. package/dist/src/shell/usePopover.js.map +0 -1
  1007. package/dist/src/shell/useRecentPages.d.ts.map +0 -1
  1008. package/dist/src/shell/useRecentPages.js.map +0 -1
  1009. package/dist/src/shell/useScrollMemory.d.ts.map +0 -1
  1010. package/dist/src/shell/useScrollMemory.js.map +0 -1
  1011. package/dist/src/shell/useSidebarLayout.d.ts.map +0 -1
  1012. package/dist/src/shell/useSidebarLayout.js.map +0 -1
  1013. package/dist/src/shell/useStored.d.ts.map +0 -1
  1014. package/dist/src/shell/useStored.js.map +0 -1
  1015. package/dist/src/shell/useStoryCode.d.ts.map +0 -1
  1016. package/dist/src/shell/useStoryCode.js.map +0 -1
  1017. package/dist/src/shell/useStoryHeights.d.ts.map +0 -1
  1018. package/dist/src/shell/useStoryHeights.js.map +0 -1
  1019. package/dist/src/shell/useStoryIdsElement.d.ts.map +0 -1
  1020. package/dist/src/shell/useStoryIdsElement.js.map +0 -1
  1021. package/dist/src/shell/useStoryKeys.d.ts.map +0 -1
  1022. package/dist/src/shell/useStoryKeys.js.map +0 -1
  1023. package/dist/src/shell/useSystemDark.d.ts.map +0 -1
  1024. package/dist/src/shell/useSystemDark.js.map +0 -1
  1025. package/dist/src/shell/useToolbarLayout.d.ts.map +0 -1
  1026. package/dist/src/shell/useToolbarLayout.js.map +0 -1
  1027. package/dist/src/shell/useToolbarOverflow.d.ts.map +0 -1
  1028. package/dist/src/shell/useToolbarOverflow.js.map +0 -1
  1029. package/dist/src/shell/useWorstCase.d.ts.map +0 -1
  1030. package/dist/src/shell/useWorstCase.js.map +0 -1
  1031. package/dist/src/shell/worstArgs.d.ts.map +0 -1
  1032. package/dist/src/shell/worstArgs.js.map +0 -1
  1033. package/dist/src/sourceFiles.d.ts.map +0 -1
  1034. package/dist/src/sourceFiles.js.map +0 -1
  1035. package/dist/src/spills.d.ts.map +0 -1
  1036. package/dist/src/spills.js.map +0 -1
  1037. package/dist/src/storyBackground.d.ts.map +0 -1
  1038. package/dist/src/storyBackground.js.map +0 -1
  1039. package/dist/src/storyCheck.d.ts.map +0 -1
  1040. package/dist/src/storyCheck.js.map +0 -1
  1041. package/dist/src/storyClock.d.ts.map +0 -1
  1042. package/dist/src/storyClock.js.map +0 -1
  1043. package/dist/src/storyGlobals.d.ts.map +0 -1
  1044. package/dist/src/storyGlobals.js.map +0 -1
  1045. package/dist/src/storyHeights.d.ts.map +0 -1
  1046. package/dist/src/storyHeights.js.map +0 -1
  1047. package/dist/src/storyIdsElement.d.ts.map +0 -1
  1048. package/dist/src/storyIdsElement.js.map +0 -1
  1049. package/dist/src/storyTexts.d.ts.map +0 -1
  1050. package/dist/src/storyTexts.js.map +0 -1
  1051. package/dist/src/storyTree.d.ts.map +0 -1
  1052. package/dist/src/storyTree.js.map +0 -1
  1053. package/dist/src/switches.d.ts.map +0 -1
  1054. package/dist/src/switches.js.map +0 -1
  1055. package/dist/src/toolbarLayout.d.ts.map +0 -1
  1056. package/dist/src/toolbarLayout.js.map +0 -1
  1057. package/dist/src/usedIn.d.ts.map +0 -1
  1058. package/dist/src/usedIn.js.map +0 -1
  1059. package/dist/src/viewState.d.ts.map +0 -1
  1060. package/dist/src/viewState.js.map +0 -1
  1061. package/dist/src/viewWords.d.ts.map +0 -1
  1062. package/dist/src/viewWords.js.map +0 -1
  1063. package/dist/src/vite/adapter.d.ts.map +0 -1
  1064. package/dist/src/vite/adapter.js.map +0 -1
  1065. package/dist/src/vite/agent.types.d.ts.map +0 -1
  1066. package/dist/src/vite/agent.types.js.map +0 -1
  1067. package/dist/src/vite/agentApi.d.ts.map +0 -1
  1068. package/dist/src/vite/agentApi.js.map +0 -1
  1069. package/dist/src/vite/agentRoutes.d.ts.map +0 -1
  1070. package/dist/src/vite/agentRoutes.js.map +0 -1
  1071. package/dist/src/vite/autoTitle.d.ts.map +0 -1
  1072. package/dist/src/vite/autoTitle.js.map +0 -1
  1073. package/dist/src/vite/componentPage.d.ts.map +0 -1
  1074. package/dist/src/vite/componentPage.js.map +0 -1
  1075. package/dist/src/vite/config.d.ts.map +0 -1
  1076. package/dist/src/vite/config.js.map +0 -1
  1077. package/dist/src/vite/configFile.d.ts.map +0 -1
  1078. package/dist/src/vite/configFile.js.map +0 -1
  1079. package/dist/src/vite/docsExtractor.d.ts.map +0 -1
  1080. package/dist/src/vite/docsExtractor.js.map +0 -1
  1081. package/dist/src/vite/docsProgram.d.ts.map +0 -1
  1082. package/dist/src/vite/docsProgram.js.map +0 -1
  1083. package/dist/src/vite/docsWorker.d.ts.map +0 -1
  1084. package/dist/src/vite/docsWorker.js.map +0 -1
  1085. package/dist/src/vite/forcedStates.d.ts.map +0 -1
  1086. package/dist/src/vite/forcedStates.js.map +0 -1
  1087. package/dist/src/vite/forgebookPlugin.d.ts.map +0 -1
  1088. package/dist/src/vite/forgebookPlugin.js.map +0 -1
  1089. package/dist/src/vite/highlightCode.d.ts.map +0 -1
  1090. package/dist/src/vite/highlightCode.js.map +0 -1
  1091. package/dist/src/vite/indexStoryFile.d.ts.map +0 -1
  1092. package/dist/src/vite/indexStoryFile.js.map +0 -1
  1093. package/dist/src/vite/mcpProtocol.d.ts.map +0 -1
  1094. package/dist/src/vite/mcpProtocol.js.map +0 -1
  1095. package/dist/src/vite/pages.d.ts.map +0 -1
  1096. package/dist/src/vite/pages.js.map +0 -1
  1097. package/dist/src/vite/prebundled.d.ts.map +0 -1
  1098. package/dist/src/vite/prebundled.js.map +0 -1
  1099. package/dist/src/vite/storyCode.d.ts.map +0 -1
  1100. package/dist/src/vite/storyCode.js.map +0 -1
  1101. package/dist/src/vite/storyFilesModule.d.ts.map +0 -1
  1102. package/dist/src/vite/storyFilesModule.js.map +0 -1
  1103. package/dist/src/vite/storyMeta.d.ts.map +0 -1
  1104. package/dist/src/vite/storyMeta.js.map +0 -1
  1105. package/dist/src/vite/touchMedia.d.ts.map +0 -1
  1106. package/dist/src/vite/touchMedia.js.map +0 -1
  1107. package/dist/src/vite/typeScriptPieces.d.ts.map +0 -1
  1108. package/dist/src/vite/typeScriptPieces.js.map +0 -1
  1109. package/dist/src/vite/usageGraph.d.ts.map +0 -1
  1110. package/dist/src/vite/usageGraph.js.map +0 -1
  1111. package/dist/src/vite/usageModule.d.ts.map +0 -1
  1112. package/dist/src/vite/usageModule.js.map +0 -1
  1113. package/dist/src/worstCase.d.ts.map +0 -1
  1114. package/dist/src/worstCase.js.map +0 -1
@@ -1,38 +1,58 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useEffect, useMemo, useRef, useState } from "react";
3
- import { catalogueSettings } from "../catalogue.js";
2
+ import { useCallback, useEffect, useMemo, useRef, useState } from "react";
3
+ import { addressArgsFor } from "../addressTexts.js";
4
+ import { deviceDefaultOf, pageDeviceDefault } from "../deviceView.js";
4
5
  import { panelArgsParam, parsePanelArgsParam } from "../messages.js";
6
+ import { anchorOf } from "../pageAddress.js";
7
+ import { findPage } from "../pageTree.js";
5
8
  import { sourceFiles } from "../sourceFiles.js";
6
9
  import { storyBackground } from "../storyBackground.js";
7
10
  import { NOT_FIXED } from "../storyGlobals.js";
8
11
  import { knownHeight } from "../storyHeights.js";
9
- import { componentId, findComponent, findStory, sidebarStoryIds, storyTree } from "../storyTree.js";
10
- import { catalogueSwitches } from "../switches.js";
11
- import { usageLoader } from "../usedIn.js";
12
+ import { componentId, findComponent, findComponentByTitle, findStory, isLogicComponent, sidebarStoryIds, storyTree } from "../storyTree.js";
12
13
  import { parseView, viewParams } from "../viewState.js";
13
- import { ComponentPage } from "./ComponentPage.js";
14
- import { CatalogueContext, useCatalogue } from "./catalogueContext.js";
15
- import { HomePage } from "./HomePage.js";
14
+ import { CatalogueContext, NO_PLUGINS, useCatalogue, useConfiguredCatalogue } from "./catalogueContext.js";
15
+ import { filesCodeLoader } from "./filesCode.js";
16
+ import { Icon } from "./icons.js";
17
+ import { LazyPage } from "./LazyPage.js";
18
+ import { LogicMark } from "./LogicMark.js";
19
+ import { lazyModule } from "./lazyModule.js";
20
+ import { PluginHostsContext } from "./pluginHostsContext.js";
16
21
  import { Sidebar } from "./Sidebar.js";
17
22
  import { SidebarHandle } from "./SidebarHandle.js";
18
23
  import { Stage } from "./Stage.js";
19
24
  import { StoryPicker } from "./StoryPicker.js";
20
- import { storyTouchesOf, storyViewChange, touchedView } from "./storyTouch.js";
21
25
  import { STRINGS } from "./strings.js";
22
26
  import { ShowSidebarButton, Toolbar } from "./Toolbar.js";
23
27
  import { useAppearance } from "./useAppearance.js";
24
28
  import { useRecentPages } from "./useRecentPages.js";
29
+ import { useShownView } from "./useShownView.js";
25
30
  import { useSidebarLayout } from "./useSidebarLayout.js";
26
31
  import { useStoryHeights } from "./useStoryHeights.js";
27
32
  import { useStoryIdsElement } from "./useStoryIdsElement.js";
28
33
  import { useStoryKeys } from "./useStoryKeys.js";
29
34
  import { useSystemDark } from "./useSystemDark.js";
30
- /** No languages: a catalogue that offers none. */
31
- const NO_LANGUAGES = [];
35
+ /** A docs page, loaded on first use: a catalogue may have none. */
36
+ const DOC_PAGE = lazyModule(() => import("./DocPage.js").then((module) => module.DocPage));
37
+ /** The home, loaded when it is opened. */
38
+ const HOME_PAGE = lazyModule(() => import("./HomePage.js").then((module) => module.HomePage));
39
+ /** A component's page, loaded when one is opened. */
40
+ const COMPONENT_PAGE = lazyModule(() => import("./ComponentPage.js").then((module) => module.ComponentPage));
41
+ /**
42
+ * The home: the catalogue's written one when it has one, the generated one otherwise, each loaded when first opened.
43
+ *
44
+ * @param props - the written home's module, if any, and each home's props.
45
+ */
46
+ const ShellHome = ({ written, home, writtenProps }) => written === undefined ? (_jsx(LazyPage, { module: HOME_PAGE, header: home.header, pageProps: home })) : (_jsx(LazyPage, { module: written, header: home.header, pageProps: writtenProps }));
32
47
  /** The home. */
33
48
  const HOME = { kind: "home" };
34
49
  /** A page's key: the same for every view of it. */
35
- const pageKey = (page) => (page.kind === "home" ? page.kind : `${page.kind}:${page.id}`);
50
+ const pageKey = (page) => {
51
+ if (page.kind === "home")
52
+ return page.kind;
53
+ // a heading is a place of its own in the history: Back from it returns to where the reader was
54
+ return page.kind === "story" ? `story:${page.id}` : `${page.kind}:${page.id}#${page.anchor ?? ""}`;
55
+ };
36
56
  /**
37
57
  * A visit of the page an address shows.
38
58
  *
@@ -63,27 +83,38 @@ const drawnWidth = (width, fill) => (width === "fill" ? fill : width);
63
83
  * @param shownWidth - the width the stage measured for Fill; none before it measured.
64
84
  */
65
85
  const stageHeight = (heights, storyId, width, shownWidth) => knownHeight(heights, storyId, drawnWidth(width, shownWidth ?? FILL_WIDTH));
66
- /** The page of the address's `story` and `component` parameters: a story wins, none is the home. */
67
- const pageOf = (story, component) => {
86
+ /**
87
+ * The page an address's query and fragment name: a story wins, then a component, then a docs page; none is the home.
88
+ *
89
+ * @param search - the address's query.
90
+ * @param hash - its fragment.
91
+ */
92
+ const pageOf = (search, hash) => {
93
+ const params = new URLSearchParams(search);
94
+ const story = params.get("story");
95
+ const component = params.get("component");
96
+ const page = params.get("page");
68
97
  if (story !== null)
69
98
  return { kind: "story", id: story };
99
+ const anchor = anchorOf(hash.replace(/^#/, ""));
70
100
  if (component !== null)
71
- return { kind: "component", id: component };
101
+ return { kind: "component", id: component, anchor };
102
+ if (page !== null)
103
+ return { kind: "page", id: page, anchor };
72
104
  return HOME;
73
105
  };
74
106
  /**
75
107
  * The current address.
76
108
  *
77
109
  * @param catalogue - the catalogue's switches and lists, for the view's values.
110
+ * @param addressTexts - how the framework's stories take the texts of the panel's values.
78
111
  */
79
- const readAddress = (catalogue) => {
112
+ const readAddress = (catalogue, addressTexts) => {
80
113
  const params = new URLSearchParams(window.location.search);
81
- const story = params.get("story");
82
- const component = params.get("component");
83
114
  return {
84
- page: pageOf(story, component),
115
+ page: pageOf(window.location.search, window.location.hash),
85
116
  view: parseView(window.location.search, catalogue),
86
- panelArgs: parsePanelArgsParam(params.get("args")),
117
+ panelArgs: addressArgsFor(parsePanelArgsParam(params.get("args")), addressTexts),
87
118
  matrix: (params.get("matrix") ?? "").split(",").filter((name) => name !== "")
88
119
  };
89
120
  };
@@ -91,21 +122,27 @@ const readAddress = (catalogue) => {
91
122
  * The query of an address.
92
123
  *
93
124
  * @param address - the page, the view, the panel's values and the matrix's axes.
94
- * @param switches - the catalogue's switches, for the view's values.
125
+ * @param catalogue - the catalogue's switches and default audience, for the view's values.
95
126
  */
96
- const addressQuery = ({ page, view, panelArgs, matrix }, switches) => {
97
- const params = viewParams(view, switches);
127
+ const addressQuery = ({ page, view, panelArgs, matrix }, catalogue) => {
128
+ const params = viewParams(view, catalogue.switches, catalogue.audience);
98
129
  if (page.kind === "story")
99
130
  params.set("story", page.id);
100
131
  if (page.kind === "component")
101
132
  params.set("component", page.id);
133
+ if (page.kind === "page")
134
+ params.set("page", page.id);
102
135
  const args = page.kind === "story" ? panelArgsParam(panelArgs) : "";
103
136
  if (args !== "")
104
137
  params.set("args", args);
105
138
  if (page.kind === "story" && matrix.length > 0)
106
139
  params.set("matrix", matrix.join(","));
107
140
  const query = params.toString();
108
- return query === "" ? window.location.pathname : `?${query}`;
141
+ // the fragment is part of what is written back on every change of the view, or a change would lose the heading
142
+ const fragment = (page.kind === "page" || page.kind === "component") && page.anchor !== undefined
143
+ ? `#${encodeURIComponent(page.anchor)}`
144
+ : "";
145
+ return `${query === "" ? window.location.pathname : `?${query}`}${fragment}`;
109
146
  };
110
147
  /** What the address's page shows: a story or a component that is not there (renamed, removed) says so, never another. */
111
148
  const shownPage = (tree, page) => {
@@ -119,7 +156,13 @@ const shownPage = (tree, page) => {
119
156
  const location = findComponent(tree, page.id);
120
157
  return location === undefined
121
158
  ? { kind: "missing", message: STRINGS.unknownComponent(page.id) }
122
- : { kind: "component", location };
159
+ : { kind: "component", location, anchor: page.anchor };
160
+ }
161
+ if (page.kind === "page") {
162
+ const location = findPage(tree, page.id);
163
+ return location === undefined
164
+ ? { kind: "missing", message: STRINGS.unknownPage(page.id) }
165
+ : { kind: "page", location, anchor: page.anchor };
123
166
  }
124
167
  return { kind: "home" };
125
168
  };
@@ -128,14 +171,44 @@ const recentPageOf = (shown) => {
128
171
  if (shown.kind === "story")
129
172
  return { kind: "story", id: shown.location.story.id };
130
173
  if (shown.kind === "component") {
131
- return { kind: "component", id: componentId(shown.location.source.id, shown.location.component.title) };
174
+ return { kind: "component", id: shown.location.component.id };
132
175
  }
133
- return undefined;
176
+ return shown.kind === "page" ? { kind: "page", id: shown.location.page.id } : undefined;
134
177
  };
178
+ /**
179
+ * Whether the shown page is about logic: a story about logic, or a component whose stories all are.
180
+ *
181
+ * @param shown - the shown page.
182
+ */
183
+ const isLogicPage = (shown) => {
184
+ if (shown.kind === "story")
185
+ return shown.location.story.isLogic;
186
+ return shown.kind === "component" && isLogicComponent(shown.location.component);
187
+ };
188
+ /** The shown component's place, a story's too; none on any other page. */
189
+ const componentLocationOf = (shown) => shown.kind === "story" || shown.kind === "component" ? shown.location : undefined;
190
+ /** The shown docs page's place; none on any other page. */
191
+ const pageLocationOf = (shown) => shown.kind === "page" ? shown.location : undefined;
192
+ /** Whether nothing shown follows the view's switches: the home, or a docs page without a story. */
193
+ const hasNoStories = (shown) => shown.kind === "home" || (shown.kind === "page" && shown.location.page.stories.length === 0);
135
194
  /** What the sidebar marks: the shown component and story; none on the home or a missing page. */
136
195
  const sidebarCurrent = (location, storyId) => location === undefined
137
196
  ? undefined
138
197
  : { sourceId: location.source.id, title: location.component.title, storyId };
198
+ /**
199
+ * The page's default device for the toolbar: the shown story's, a component's stories' on its page (`pageDeviceDefault`),
200
+ * the catalogue's elsewhere.
201
+ *
202
+ * @param catalogueDevice - the catalogue's default.
203
+ * @param shown - the page shown.
204
+ */
205
+ const deviceOfShown = (catalogueDevice, shown) => {
206
+ if (shown.kind === "story")
207
+ return deviceDefaultOf(catalogueDevice, shown.location.story.device);
208
+ if (shown.kind === "component")
209
+ return pageDeviceDefault(catalogueDevice, shown.location.component.stories.map((story) => story.device));
210
+ return catalogueDevice;
211
+ };
139
212
  /**
140
213
  * What the shown story fixes of the view, for the toolbar; nothing on any other page.
141
214
  *
@@ -150,10 +223,52 @@ const fixedOfShown = (fixedViews, shown) => shown.kind === "story" ? (fixedViews
150
223
  * @param props - whether the home is shown, and the toolbar's props.
151
224
  */
152
225
  const ShellBar = ({ isHome, ...toolbar }) => isHome ? (_jsx("div", { className: "forgebook-toolbar", children: toolbar.onShowSidebar === undefined ? null : (_jsx(ShowSidebarButton, { onShowSidebar: toolbar.onShowSidebar })) })) : (_jsx(Toolbar, { ...toolbar }));
153
- /** A component's page, by its title. */
154
- const componentPage = (sourceId, title) => ({
226
+ /**
227
+ * What a component's page loads: its first file's docs and page, as Storybook's docs come from the first file of a
228
+ * title, and the code of every file, for each example's Code card.
229
+ *
230
+ * @param files - the source's files; none without a source.
231
+ * @param component - the component.
232
+ */
233
+ const componentLoaders = (files, component) => ({
234
+ loadDocs: files?.docs[component.file],
235
+ loadCode: files === undefined ? undefined : filesCodeLoader(files.code, component.files),
236
+ loadPage: files?.pages[component.file]
237
+ });
238
+ /**
239
+ * What a story's page loads: its own file's code, and the docs of the component its file's meta names, which its
240
+ * controls are for.
241
+ *
242
+ * @param files - the source's files; none without a source.
243
+ * @param story - the story.
244
+ */
245
+ const storyLoaders = (files, story) => ({
246
+ loadDocs: files?.docs[story.file],
247
+ loadCode: files?.code[story.file]
248
+ });
249
+ /** A component's page. */
250
+ const componentPage = (component) => ({ kind: "component", id: component.id });
251
+ /**
252
+ * Each component's id by its source and title, made once per tree: the sidebar names a component by its title, for
253
+ * every component on every render.
254
+ *
255
+ * @param tree - the tree.
256
+ */
257
+ const componentIdsByTitle = (tree) => new Map(tree.sources.flatMap((source) => source.families.flatMap((family) => family.groups.flatMap((group) => group.components.map((component) => [
258
+ `${source.id}\n${component.title}`,
259
+ component.id
260
+ ])))));
261
+ /**
262
+ * The page of a source's component with a title, as the sidebar names a component and an alias its place; a title no
263
+ * component has gives the id it would have, which the page reports as missing.
264
+ *
265
+ * @param idsByTitle - the components' ids by source and title (`componentIdsByTitle`).
266
+ * @param sourceId - the source's id.
267
+ * @param title - the component's title.
268
+ */
269
+ const titledPage = (idsByTitle, sourceId, title) => ({
155
270
  kind: "component",
156
- id: componentId(sourceId, title)
271
+ id: idsByTitle.get(`${sourceId}\n${title}`) ?? componentId(sourceId, title)
157
272
  });
158
273
  /**
159
274
  * What "Used in" reads and opens on a source's component pages: its usage, its components by title, and their pages;
@@ -167,10 +282,10 @@ const componentPage = (sourceId, title) => ({
167
282
  const usedInLinks = (source, isOffered, tree, pages) => source === undefined || !isOffered
168
283
  ? undefined
169
284
  : {
170
- load: usageLoader(source),
171
- componentOf: (title) => findComponent(tree, componentId(source.id, title))?.component,
172
- componentHrefOf: (component) => pages.hrefOf(componentPage(source.id, component.title)),
173
- onOpenComponent: (component) => pages.onOpen(componentPage(source.id, component.title)),
285
+ source,
286
+ componentOf: (title) => findComponentByTitle(tree, source.id, title)?.component,
287
+ componentHrefOf: (component) => pages.hrefOf(componentPage(component)),
288
+ onOpenComponent: (component) => pages.onOpen(componentPage(component)),
174
289
  storyHrefOf: (story) => pages.hrefOf(storyPage(story)),
175
290
  onOpenStory: (story) => pages.onOpen(storyPage(story))
176
291
  };
@@ -183,10 +298,8 @@ const usedInLinks = (source, isOffered, tree, pages) => source === undefined ||
183
298
  const relatedComponents = (tree, location) => (location?.component.related ?? []).flatMap((title) => {
184
299
  if (location === undefined)
185
300
  return [];
186
- const found = findComponent(tree, componentId(location.source.id, title));
187
- return found === undefined
188
- ? []
189
- : [{ page: componentPage(location.source.id, title), name: found.component.name }];
301
+ const found = findComponentByTitle(tree, location.source.id, title);
302
+ return found === undefined ? [] : [{ page: componentPage(found.component), name: found.component.name }];
190
303
  });
191
304
  /**
192
305
  * The links to the related components, at the top of the page; nothing when there are none.
@@ -200,7 +313,8 @@ const RelatedLinks = ({ related, hrefOf, onOpen }) => related.length === 0 ? nul
200
313
  onOpen(component.page);
201
314
  }, children: component.name }, component.name)))] }));
202
315
  /**
203
- * What scrolls above a page: the index's problems, and the component's place and name, or why nothing is shown.
316
+ * What scrolls above a page: the index's problems, and the component's or the docs page's place and name, or why
317
+ * nothing is shown.
204
318
  *
205
319
  * @remarks
206
320
  * The place is always where the component lives, with the other places it is listed in, so a page opened from an
@@ -209,25 +323,39 @@ const RelatedLinks = ({ related, hrefOf, onOpen }) => related.length === 0 ? nul
209
323
  * @param props - the problems, the shown component's place, the message when a named page is missing, the picker
210
324
  * of the component's stories, and the related components.
211
325
  */
212
- const ShellHeader = ({ problems, location, message, picker, related }) => (_jsxs(_Fragment, { children: [problems.length > 0 ? (_jsxs("div", { className: "forgebook-problems", role: "alert", children: [_jsx("strong", { children: STRINGS.indexProblems }), _jsx("ul", { children: problems.map((problem) => (_jsx("li", { children: problem }, problem))) })] })) : null, message === undefined ? null : (_jsx("p", { className: "forgebook-empty", role: "alert", children: message })), location === undefined ? null : (_jsxs("header", { className: "forgebook-header", children: [_jsxs("p", { className: "forgebook-header__path", children: [[location.source.name, location.family.name, location.group.name]
326
+ const ShellHeader = ({ problems, location, page, message, picker, related, isLogic }) => (_jsxs(_Fragment, { children: [problems.length > 0 ? (_jsxs("div", { className: "forgebook-problems", role: "alert", children: [_jsx("strong", { children: STRINGS.indexProblems }), _jsx("ul", { children: problems.map((problem) => (_jsx("li", { children: problem }, problem))) })] })) : null, message === undefined ? null : (_jsx("p", { className: "forgebook-empty", role: "alert", children: message })), location === undefined ? null : (_jsxs("header", { className: "forgebook-header", children: [_jsxs("p", { className: "forgebook-header__path", children: [[location.source.name, location.family.name, location.group.name]
213
327
  .filter((part) => part !== undefined)
214
- .join(" · "), location.component.alsoIn.length === 0 ? null : (_jsxs("span", { className: "forgebook-header__also-in", children: [" · ", STRINGS.alsoIn(location.component.alsoIn.map((place) => place.split("/").join(" › ")).join(", "))] }))] }), _jsxs("div", { className: "forgebook-header__row", children: [_jsx("h1", { className: "forgebook-header__title", children: location.component.name }), picker] }), related] }))] }));
328
+ .join(" · "), location.component.alsoIn.length === 0 ? null : (_jsxs("span", { className: "forgebook-header__also-in", children: [" · ", STRINGS.alsoIn(location.component.alsoIn.map((place) => place.split("/").join(" › ")).join(", "))] }))] }), _jsxs("div", { className: "forgebook-header__row", children: [_jsx("h1", { className: "forgebook-header__title", children: location.component.name }), isLogic ? _jsx(LogicMark, {}) : null, picker, location.component.design === undefined ? null : (_jsxs("a", { className: "forgebook-button", href: location.component.design.url, target: "_blank", rel: "noopener noreferrer", children: [_jsx(Icon, { name: "external", size: 14 }), STRINGS.openInFigma] }))] }), related] })), page === undefined ? null : (_jsxs("header", { className: "forgebook-header", children: [_jsx("p", { className: "forgebook-header__path", children: [page.source.name, page.page.group].filter((part) => part !== undefined).join(" · ") }), _jsx("div", { className: "forgebook-header__row", children: _jsx("h1", { className: "forgebook-header__title", children: page.page.name }) })] }))] }));
215
329
  /** A story's page. */
216
330
  const storyPage = (story) => ({ kind: "story", id: story.id });
331
+ /**
332
+ * Opens the page an address of the catalogue names, written in a docs page's text.
333
+ *
334
+ * @param href - the address.
335
+ * @param openPage - opens a page.
336
+ * @returns whether it names one.
337
+ */
338
+ const openLinkedPage = (href, openPage) => {
339
+ const { search, hash } = new URL(href, window.location.href);
340
+ const page = pageOf(search, hash);
341
+ if (page.kind === "home")
342
+ return false;
343
+ openPage(page);
344
+ return true;
345
+ };
217
346
  /** The address, read again when the history goes back or forth. */
218
- const useAddress = (catalogue) => {
219
- const { switches } = catalogue;
220
- const [address, setAddress] = useState(() => readAddress(catalogue));
347
+ const useAddress = (catalogue, addressTexts) => {
348
+ const [address, setAddress] = useState(() => readAddress(catalogue, addressTexts));
221
349
  const [visit, setVisit] = useState(() => visitOf(address, false));
222
350
  useEffect(() => {
223
351
  const onBack = () => {
224
- const next = readAddress(catalogue);
352
+ const next = readAddress(catalogue, addressTexts);
225
353
  setAddress(next);
226
354
  setVisit(visitOf(next, true));
227
355
  };
228
356
  window.addEventListener("popstate", onBack);
229
357
  return () => window.removeEventListener("popstate", onBack);
230
- }, [catalogue]);
358
+ }, [catalogue, addressTexts]);
231
359
  // a height set with the foot handle belongs to the story it was set on: another page starts at its own
232
360
  const pageAddress = (page) => ({
233
361
  page,
@@ -235,34 +363,62 @@ const useAddress = (catalogue) => {
235
363
  panelArgs: {},
236
364
  matrix: []
237
365
  });
366
+ const open = (page, movesFocus) => {
367
+ const next = pageAddress(page);
368
+ window.history.pushState(null, "", addressQuery(next, catalogue));
369
+ setAddress(next);
370
+ setVisit({ ...visitOf(next, false), movesFocus });
371
+ };
238
372
  return {
239
373
  address,
240
374
  visit,
241
375
  pageAddress,
242
- openPage: (page) => {
243
- const next = pageAddress(page);
244
- window.history.pushState(null, "", addressQuery(next, switches));
376
+ openPage: (page) => open(page, false),
377
+ openFound: (page) => open(page, true),
378
+ openAnchor: (anchor) => {
379
+ if (address.page.kind !== "page")
380
+ return;
381
+ const next = { ...address, page: { ...address.page, anchor } };
382
+ window.history.pushState(null, "", addressQuery(next, catalogue));
245
383
  setAddress(next);
246
- setVisit(visitOf(next, false));
384
+ setVisit({ ...visitOf(next, false), isInPage: true });
247
385
  },
248
386
  replaceAddress: (next) => {
249
- window.history.replaceState(null, "", addressQuery(next, switches));
387
+ window.history.replaceState(null, "", addressQuery(next, catalogue));
250
388
  setAddress(next);
251
389
  }
252
390
  };
253
391
  };
392
+ /**
393
+ * Writes the shown page's own id into the address when the address named it by a former id (`formerStoryId`), as a
394
+ * redirect would: a link written then keeps opening its page, and the address then shown is the page's own.
395
+ *
396
+ * @param address - the address.
397
+ * @param ownPage - the shown page by its own id; none on the home or a missing page.
398
+ * @param replaceAddress - changes the address in place.
399
+ */
400
+ const useOwnPageId = (address, ownPage, replaceAddress) => {
401
+ useEffect(() => {
402
+ if (ownPage === undefined || address.page.kind === "home" || ownPage.id === address.page.id)
403
+ return;
404
+ replaceAddress({ ...address, page: { ...address.page, id: ownPage.id } });
405
+ }, [address, ownPage, replaceAddress]);
406
+ };
254
407
  /**
255
408
  * The catalogue's page inside its settings: everything below reads them, the shell's own hooks (the sidebar's width,
256
409
  * the keys, the recent pages) included.
257
410
  *
258
411
  * @param props - the configuration.
259
412
  */
260
- const ShellPage = ({ title, logo, heights, sources, frameUrl }) => {
413
+ const ShellPage = ({ title, logo, hasBranding, heights, sources, frameUrl, addressTexts = "any", plugins = NO_PLUGINS, loadTokens, home }) => {
261
414
  const tree = useMemo(() => storyTree(sources), [sources]);
415
+ // the written home's module, loaded when the home is first opened
416
+ const writtenHome = useMemo(() => (home === undefined ? undefined : lazyModule(home)), [home]);
417
+ const idsByTitle = useMemo(() => componentIdsByTitle(tree), [tree]);
262
418
  const { width: sidebarWidth, setWidth: setSidebarWidth, isOpen: isSidebarOpen, setIsOpen: setIsSidebarOpen } = useSidebarLayout();
419
+ const showSidebar = useCallback(() => setIsSidebarOpen(true), [setIsSidebarOpen]);
263
420
  const catalogue = useCatalogue();
264
- const { switches } = catalogue;
265
- const { address, visit, pageAddress, openPage, replaceAddress } = useAddress(catalogue);
421
+ const { address, visit, pageAddress, openPage, openFound, openAnchor, replaceAddress } = useAddress(catalogue, addressTexts);
266
422
  // each page's last scroll position, kept across the component pages and the stage
267
423
  const scrollPositions = useRef(new Map());
268
424
  const scroll = { visit, positions: scrollPositions.current };
@@ -275,38 +431,95 @@ const ShellPage = ({ title, logo, heights, sources, frameUrl }) => {
275
431
  const [touchOverrides, setTouchOverrides] = useState(new Map());
276
432
  const setTouchOverride = (storyId, isTouch) => setTouchOverrides((current) => new Map(current).set(storyId, isTouch));
277
433
  const isSystemDark = useSystemDark();
278
- const appearance = useAppearance();
434
+ const appearance = useAppearance(address.view, catalogue.switches);
279
435
  useStoryIdsElement(useMemo(() => sidebarStoryIds(tree, catalogue.storyGroups.map((group) => group.id)), [tree, catalogue.storyGroups]));
280
436
  const shown = shownPage(tree, address.page);
281
- const location = shown.kind === "story" || shown.kind === "component" ? shown.location : undefined;
282
- const recent = useRecentPages(recentPageOf(shown));
437
+ const location = componentLocationOf(shown);
438
+ const ownPage = recentPageOf(shown);
439
+ const recent = useRecentPages(ownPage);
440
+ useOwnPageId(address, ownPage, replaceAddress);
441
+ const shownPageLocation = pageLocationOf(shown);
442
+ const pageName = shownPageLocation?.page.name ?? location?.component.name;
283
443
  useEffect(() => {
284
- document.title = location === undefined ? title : `${location.component.name} · ${title}`;
285
- }, [location, title]);
444
+ document.title = pageName === undefined ? title : `${pageName} · ${title}`;
445
+ }, [pageName, title]);
286
446
  const changeView = (view) => replaceAddress({ ...address, view });
287
- const shownStoryId = shown.kind === "story" ? shown.location.story.id : undefined;
288
- // a story marked for a phone has its own Touch on its page: the toolbar and the stage show it and change it
289
- // kept while nothing it is made of changes: a new switches' object would send the frame the view again
447
+ // a story marked for a phone has its own Touch on its page, and a story about logic is never compared
290
448
  const shownStory = shown.kind === "story" ? shown.location.story : undefined;
291
- const shownView = useMemo(() => touchedView(address.view, shownStory?.id, storyTouchesOf(shownStory === undefined ? [] : [shownStory], touchOverrides), catalogue.touch), [address.view, shownStory, touchOverrides, catalogue.touch]);
292
- const changeShownView = (view) => {
293
- if (shown.kind !== "story") {
294
- changeView(view);
295
- return;
296
- }
297
- const change = storyViewChange(view, address.view, shown.location.story, catalogue.touch);
298
- if (change.isTouch !== undefined)
299
- setTouchOverride(shown.location.story.id, change.isTouch);
300
- changeView(change.view);
301
- };
449
+ const shownStoryId = shownStory?.id;
450
+ const { view: shownView, onViewChange: changeShownView } = useShownView({
451
+ addressView: address.view,
452
+ story: shownStory,
453
+ touchOverrides,
454
+ onTouchChange: setTouchOverride,
455
+ touch: catalogue.touch,
456
+ catalogueDevice: catalogue.device,
457
+ onAddressViewChange: changeView
458
+ });
302
459
  useStoryKeys(tree, shownStoryId, shown.kind === "component" ? shown.location.component.stories[0]?.id : undefined, (id) => openPage({ kind: "story", id }));
303
460
  const source = sources.find((candidate) => candidate.id === location?.source.id);
304
461
  const files = source === undefined ? undefined : sourceFiles(source);
305
- const header = (_jsx(ShellHeader, { problems: tree.problems, location: location, message: shown.kind === "missing" ? shown.message : undefined, picker: location === undefined ? null : (_jsx(StoryPicker, { component: location.component, currentStoryId: shownStoryId, onOpenComponent: () => openPage(componentPage(location.source.id, location.component.title)), onOpenStory: (story) => openPage(storyPage(story)) })), related: _jsx(RelatedLinks, { related: relatedComponents(tree, location), hrefOf: (page) => addressQuery(pageAddress(page), switches), onOpen: openPage }) }));
306
- return (_jsxs("div", { className: "catalogue", children: [_jsx(Sidebar, { width: sidebarWidth, isOpen: isSidebarOpen, onHide: () => setIsSidebarOpen(false), appearance: appearance, title: title, logo: logo, tree: tree, isHome: shown.kind === "home", homeHref: addressQuery(pageAddress(HOME), switches), onOpenHome: () => openPage(HOME), current: sidebarCurrent(location, shownStoryId), componentHref: (sourceId, componentTitle) => addressQuery(pageAddress(componentPage(sourceId, componentTitle)), switches), onOpenComponent: (sourceId, componentTitle) => openPage(componentPage(sourceId, componentTitle)) }), isSidebarOpen ? _jsx(SidebarHandle, { width: sidebarWidth, onWidthChange: setSidebarWidth }) : null, _jsxs("main", { className: "forgebook-main", children: [_jsx(ShellBar, { isHome: shown.kind === "home", view: shownView, onViewChange: changeShownView, isStoryPage: shown.kind === "story", onShowSidebar: isSidebarOpen ? undefined : () => setIsSidebarOpen(true), shownWidth: shown.kind === "story" ? shownWidth : undefined, fixed: fixedOfShown(fixedViews, shown) }), shown.kind === "home" ? (_jsx(HomePage, { title: title, tree: tree, sources: sources, recent: recent, hrefOf: (page) => addressQuery(pageAddress(page), switches), onOpen: (page) => openPage(page), header: header })) : null, shown.kind === "component" ? (_jsx(ComponentPage, { component: shown.location.component, view: address.view, touchOverrides: touchOverrides, onTouchChange: setTouchOverride, frameUrl: frameUrl, hrefOf: (story) => addressQuery(pageAddress(storyPage(story)), switches), onOpen: (story) => openPage(storyPage(story)), loadDocs: files?.docs[shown.location.component.file], loadCode: files?.code[shown.location.component.file], loadPage: files?.pages[shown.location.component.file], background: storyBackground(shown.location.source.background, address.view, catalogue, isSystemDark), heightOf: (storyId) => knownHeight(storyHeights, storyId, drawnWidth(address.view.width, PAGE_COLUMN_WIDTH)), header: header, scroll: scroll, usedIn: usedInLinks(source, catalogue.hasUsedIn, tree, {
307
- hrefOf: (page) => addressQuery(pageAddress(page), switches),
308
- onOpen: openPage
309
- }) })) : null, shown.kind === "story" ? (_jsx(Stage, { component: shown.location.component, story: shown.location.story, view: shownView, onViewChange: changeShownView, onFixedChange: (storyId, fixed) => setFixedViews((current) => new Map(current).set(storyId, fixed)), panelArgs: address.panelArgs, onPanelArgsChange: (panelArgs) => replaceAddress({ ...address, panelArgs }), matrixAxes: address.matrix, onMatrixAxesChange: (matrix) => replaceAddress({ ...address, matrix }), frameUrl: frameUrl, loadCode: files?.code[shown.location.component.file], loadDocs: files?.docs[shown.location.component.file], namedValues: source?.namedValues, header: header, onShownWidthChange: setShownWidth, scroll: scroll, backgroundOf: (view) => storyBackground(shown.location.source.background, view, catalogue, isSystemDark), measuredHeight: stageHeight(storyHeights, shown.location.story.id, address.view.width, shownWidth) })) : null, shown.kind === "missing" ? header : null] })] }));
462
+ const storyHrefOf = (story) => addressQuery(pageAddress(storyPage(story)), catalogue);
463
+ const columnHeightOf = (storyId) => knownHeight(storyHeights, storyId, drawnWidth(address.view.width, PAGE_COLUMN_WIDTH));
464
+ const header = (_jsx(ShellHeader, { problems: tree.problems, location: location, page: shownPageLocation, isLogic: isLogicPage(shown), message: shown.kind === "missing" ? shown.message : undefined, picker: location === undefined ? null : (_jsx(StoryPicker, { component: location.component, currentStoryId: shownStoryId, onOpenComponent: () => openPage(componentPage(location.component)), onOpenStory: (story) => openPage(storyPage(story)) })), related: _jsx(RelatedLinks, { related: relatedComponents(tree, location), hrefOf: (page) => addressQuery(pageAddress(page), catalogue), onOpen: openPage }) }));
465
+ const homeProps = {
466
+ title,
467
+ tree,
468
+ sources,
469
+ recent,
470
+ hrefOf: (page) => addressQuery(pageAddress(page), catalogue),
471
+ onOpen: (page) => openPage(page),
472
+ header
473
+ };
474
+ const docProps = {
475
+ title,
476
+ plugins,
477
+ tree,
478
+ sources,
479
+ view: address.view,
480
+ touchOverrides,
481
+ onTouchChange: setTouchOverride,
482
+ frameUrl,
483
+ storyHrefOf,
484
+ onOpenStory: (story) => openPage(storyPage(story)),
485
+ pageHrefOf: (id, anchor) => addressQuery(pageAddress({ kind: "page", id, anchor }), catalogue),
486
+ onOpenAddress: (href) => openLinkedPage(href, openPage),
487
+ heightOf: columnHeightOf,
488
+ backgroundOf: (pageSource) => storyBackground(pageSource.background, address.view, catalogue, isSystemDark),
489
+ header,
490
+ scroll
491
+ };
492
+ return (_jsxs("div", { className: "catalogue", children: [_jsx(Sidebar, { width: sidebarWidth, isOpen: isSidebarOpen, onHide: () => setIsSidebarOpen(false), onShow: showSidebar, appearance: appearance, title: title, logo: logo, hasBranding: hasBranding !== false, tree: tree, sources: sources, searchHref: (target) => addressQuery(pageAddress(target), catalogue), onOpenResult: openFound, isHome: shown.kind === "home", homeHref: addressQuery(pageAddress(HOME), catalogue), onOpenHome: () => openPage(HOME), current: sidebarCurrent(location, shownStoryId), currentPageId: shownPageLocation?.page.id, pageHref: (id) => addressQuery(pageAddress({ kind: "page", id }), catalogue), onOpenPage: (id) => openPage({ kind: "page", id }), componentHref: (sourceId, componentTitle) => addressQuery(pageAddress(titledPage(idsByTitle, sourceId, componentTitle)), catalogue), onOpenComponent: (sourceId, componentTitle) => openPage(titledPage(idsByTitle, sourceId, componentTitle)) }), isSidebarOpen ? _jsx(SidebarHandle, { width: sidebarWidth, onWidthChange: setSidebarWidth }) : null, _jsxs("main", { className: "forgebook-main", children: [_jsx(ShellBar, { isHome: hasNoStories(shown), view: shownView, onViewChange: changeShownView, isStoryPage: shown.kind === "story", isComponentPage: shown.kind === "component", isLogic: isLogicPage(shown), onShowSidebar: isSidebarOpen ? undefined : () => setIsSidebarOpen(true), shownWidth: shown.kind === "story" ? shownWidth : undefined, fixed: fixedOfShown(fixedViews, shown), deviceDefault: deviceOfShown(catalogue.device, shown) }), shown.kind === "component" ? (_jsx(LazyPage, { module: COMPONENT_PAGE, header: header, pageProps: {
493
+ component: shown.location.component,
494
+ anchor: shown.anchor,
495
+ view: address.view,
496
+ touchOverrides,
497
+ onTouchChange: setTouchOverride,
498
+ frameUrl,
499
+ hrefOf: storyHrefOf,
500
+ onOpen: (story) => openPage(storyPage(story)),
501
+ ...componentLoaders(files, shown.location.component),
502
+ background: storyBackground(shown.location.source.background, address.view, catalogue, isSystemDark),
503
+ heightOf: columnHeightOf,
504
+ header,
505
+ scroll,
506
+ usedIn: usedInLinks(source, catalogue.hasUsedIn, tree, {
507
+ hrefOf: (page) => addressQuery(pageAddress(page), catalogue),
508
+ onOpen: openPage
509
+ }),
510
+ onViewChange: changeView,
511
+ tree,
512
+ componentId: shown.location.component.id,
513
+ pageHrefOf: (id) => addressQuery(pageAddress({ kind: "page", id }), catalogue),
514
+ onOpenPage: (id) => openPage({ kind: "page", id }),
515
+ loadTokens
516
+ } })) : null, shown.kind === "home" ? (_jsx(ShellHome, { written: writtenHome, home: homeProps, writtenProps: { ...homeProps, ...docProps } })) : null, shown.kind === "page" ? (_jsx(LazyPage, { module: DOC_PAGE, header: header, pageProps: {
517
+ ...docProps,
518
+ location: shown.location,
519
+ anchor: shown.anchor,
520
+ onOpenPage: (id) => openPage({ kind: "page", id }),
521
+ onOpenAnchor: openAnchor
522
+ } }, shown.location.page.id)) : null, shown.kind === "story" ? (_jsx(Stage, { component: shown.location.component, story: shown.location.story, view: shownView, onViewChange: changeShownView, onFixedChange: (storyId, fixed) => setFixedViews((current) => new Map(current).set(storyId, fixed)), panelArgs: address.panelArgs, onPanelArgsChange: (panelArgs) => replaceAddress({ ...address, panelArgs }), matrixAxes: address.matrix, onMatrixAxesChange: (matrix) => replaceAddress({ ...address, matrix }), frameUrl: frameUrl, plugins: plugins, ...storyLoaders(files, shown.location.story), namedValues: source?.namedValues, header: header, onShownWidthChange: setShownWidth, scroll: scroll, backgroundOf: (view) => storyBackground(shown.location.source.background, view, catalogue, isSystemDark), measuredHeight: stageHeight(storyHeights, shown.location.story.id, address.view.width, shownWidth) })) : null, shown.kind === "missing" ? header : null] })] }));
310
523
  };
311
524
  /**
312
525
  * The catalogue's page: its settings computed once from the configuration (its switches, its languages' switch, its
@@ -314,9 +527,4 @@ const ShellPage = ({ title, logo, heights, sources, frameUrl }) => {
314
527
  *
315
528
  * @param props - the configuration.
316
529
  */
317
- export const Shell = (props) => {
318
- const { title, switches, languages = NO_LANGUAGES, lists } = props;
319
- const catalogue = useMemo(() => catalogueSettings(title, catalogueSwitches(switches, languages, lists?.controls), lists), [title, switches, languages, lists]);
320
- return (_jsx(CatalogueContext.Provider, { value: catalogue, children: _jsx(ShellPage, { ...props }) }));
321
- };
322
- //# sourceMappingURL=Shell.js.map
530
+ export const Shell = (props) => (_jsx(CatalogueContext.Provider, { value: useConfiguredCatalogue(props), children: _jsx(PluginHostsContext.Provider, { value: props.pluginHosts, children: _jsx(ShellPage, { ...props }) }) }));
@@ -5,22 +5,34 @@
5
5
  * the pointer. A family or a group stays open once opened; a search opens every one it finds something in, and finds a
6
6
  * component by its
7
7
  * name, its place, its meta's search words or its stories' names and descriptions. A component listed in other places too (`alsoIn`) has an
8
- * alias entry in each, beside the components that live there, which says where it lives and opens its page.
8
+ * alias entry in each, beside the components that live there, which says where it lives and opens its page. Docs pages
9
+ * come first, in a section of their own (`SidebarDocs.tsx`).
9
10
  *
10
11
  * @module
11
12
  */
13
+ import type { StorySource } from "@forgebook/story-format/source";
12
14
  import { type ReactNode } from "react";
15
+ import type { SearchTarget } from "../search.ts";
13
16
  import type { StoryTree } from "../storyTree.ts";
17
+ import { type SidebarPageLinks } from "./SidebarDocs.tsx";
14
18
  import { type ShownComponent } from "./SidebarEntries.tsx";
15
19
  import type { AppearanceState } from "./useAppearance.ts";
16
20
  /** The sidebar's props. */
17
- export type SidebarProps = {
21
+ export type SidebarProps = SidebarPageLinks & {
18
22
  /** The catalogue's name. */
19
23
  readonly title: string;
20
- /** The catalogue's logo, the URL of a square image; none shows the catalogue's own mark. */
24
+ /** The catalogue's logo, the URL of a square image; none shows Forgebook's mark, or the name alone without branding. */
21
25
  readonly logo: string | undefined;
26
+ /** Whether a catalogue without a logo shows Forgebook's mark. */
27
+ readonly hasBranding: boolean;
22
28
  /** The tree. */
23
29
  readonly tree: StoryTree;
30
+ /** The sources, for the search's index. */
31
+ readonly sources: readonly StorySource[];
32
+ /** The address of a search's result. */
33
+ readonly searchHref: (target: SearchTarget) => string;
34
+ /** Goes to a search's result. */
35
+ readonly onOpenResult: (target: SearchTarget) => void;
24
36
  /** Whether the home is shown: the logo, its link, is then the current page. */
25
37
  readonly isHome: boolean;
26
38
  /** The home's address, for the logo's link. */
@@ -32,6 +44,8 @@ export type SidebarProps = {
32
44
  * home.
33
45
  */
34
46
  readonly current: ShownComponent | undefined;
47
+ /** The shown docs page's id; none on any other page. */
48
+ readonly currentPageId: string | undefined;
35
49
  /** The address of a component's page, by its title, for its link. */
36
50
  readonly componentHref: (sourceId: string, title: string) => string;
37
51
  /** Opens a component's page, by its title. */
@@ -42,6 +56,8 @@ export type SidebarProps = {
42
56
  readonly isOpen: boolean;
43
57
  /** Hides the sidebar. */
44
58
  readonly onHide: () => void;
59
+ /** Shows it again. */
60
+ readonly onShow: () => void;
45
61
  /** The shell's appearance and its setter, for the menu at the foot. */
46
62
  readonly appearance: AppearanceState;
47
63
  };
@@ -50,5 +66,4 @@ export type SidebarProps = {
50
66
  *
51
67
  * @param props - the tree, the shown component and how to open one.
52
68
  */
53
- export declare const Sidebar: ({ title, logo, tree, isHome, homeHref, onOpenHome, current, width, isOpen, onHide, appearance, ...links }: SidebarProps) => ReactNode;
54
- //# sourceMappingURL=Sidebar.d.ts.map
69
+ export declare const Sidebar: ({ title, logo, hasBranding, tree, sources: storySources, searchHref, onOpenResult, isHome, homeHref, onOpenHome, current, currentPageId, pageHref, onOpenPage, width, isOpen, onHide, onShow, appearance, ...links }: SidebarProps) => ReactNode;