forgebook 0.1.8 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +987 -28
- package/dist/bin/forgebook/agentClient.d.ts +30 -1
- package/dist/bin/forgebook/agentClient.js +155 -14
- package/dist/bin/forgebook/agentLoopCommands.d.mts +0 -1
- package/dist/bin/forgebook/agentLoopCommands.mjs +164 -40
- package/dist/bin/forgebook/agentText.d.ts +76 -5
- package/dist/bin/forgebook/agentText.js +197 -11
- package/dist/bin/forgebook/agents.md +158 -9
- package/dist/bin/forgebook/agentsText.d.ts +7 -3
- package/dist/bin/forgebook/agentsText.js +7 -3
- package/dist/bin/forgebook/builtCatalogue.d.ts +31 -0
- package/dist/bin/forgebook/builtCatalogue.js +96 -0
- package/dist/bin/forgebook/catalogueCommands.d.ts +22 -3
- package/dist/bin/forgebook/catalogueCommands.js +21 -2
- package/dist/bin/forgebook/catalogueVite.d.ts +51 -9
- package/dist/bin/forgebook/catalogueVite.js +95 -9
- package/dist/bin/forgebook/checkCodeRun.d.ts +8 -0
- package/dist/bin/forgebook/checkCodeRun.js +27 -0
- package/dist/bin/forgebook/commandServer.d.ts +11 -0
- package/dist/bin/forgebook/commandServer.js +39 -0
- package/dist/bin/forgebook/compileCache.d.ts +7 -0
- package/dist/bin/forgebook/compileCache.js +24 -0
- package/dist/bin/forgebook/devCommands.d.mts +14 -0
- package/dist/bin/forgebook/devCommands.mjs +104 -0
- package/dist/bin/forgebook/errorsRun.d.ts +0 -1
- package/dist/bin/forgebook/errorsRun.js +0 -1
- package/dist/bin/forgebook/forgebook.d.mts +0 -1
- package/dist/bin/forgebook/forgebook.mjs +18 -302
- package/dist/bin/forgebook/forgebookCommands.d.mts +1 -0
- package/dist/bin/forgebook/forgebookCommands.mjs +292 -0
- package/dist/bin/forgebook/importers/storybook.d.ts +10 -4
- package/dist/bin/forgebook/importers/storybook.js +71 -45
- package/dist/bin/forgebook/importers/storybookAngular.d.ts +15 -0
- package/dist/bin/forgebook/importers/storybookAngular.js +97 -0
- package/dist/bin/forgebook/importers/storybookFrameworks.d.ts +53 -0
- package/dist/bin/forgebook/importers/storybookFrameworks.js +180 -0
- package/dist/bin/forgebook/importers/storybookReactNative.d.ts +40 -0
- package/dist/bin/forgebook/importers/storybookReactNative.js +179 -0
- package/dist/bin/forgebook/initCommands.d.mts +0 -1
- package/dist/bin/forgebook/initCommands.mjs +23 -12
- package/dist/bin/forgebook/initConfig.d.ts +0 -1
- package/dist/bin/forgebook/initConfig.js +17 -3
- package/dist/bin/forgebook/mcpCommand.d.mts +8 -0
- package/dist/bin/forgebook/mcpCommand.mjs +99 -0
- package/dist/bin/forgebook/mcpPreview.d.ts +32 -0
- package/dist/bin/forgebook/mcpPreview.js +107 -0
- package/dist/bin/forgebook/mcpToolParts.d.ts +28 -0
- package/dist/bin/forgebook/mcpToolParts.js +24 -0
- package/dist/bin/forgebook/mcpTools.d.ts +12 -6
- package/dist/bin/forgebook/mcpTools.js +148 -27
- package/dist/bin/forgebook/newStories.d.ts +2 -3
- package/dist/bin/forgebook/newStories.js +4 -3
- package/dist/bin/forgebook/newStoriesFile.d.ts +3 -4
- package/dist/bin/forgebook/newStoriesFile.js +30 -13
- package/dist/bin/forgebook/pageTools.d.ts +8 -0
- package/dist/bin/forgebook/pageTools.js +71 -0
- package/dist/bin/forgebook/pagesCommands.d.mts +14 -0
- package/dist/bin/forgebook/pagesCommands.mjs +109 -0
- package/dist/bin/forgebook/prebundleChild.d.ts +1 -0
- package/dist/bin/forgebook/prebundleChild.js +34 -0
- package/dist/bin/forgebook/prebundleRun.d.ts +22 -0
- package/dist/bin/forgebook/prebundleRun.js +49 -0
- package/dist/bin/forgebook/prebundleStart.d.ts +44 -0
- package/dist/bin/forgebook/prebundleStart.js +82 -0
- package/dist/bin/forgebook/semanticOptions.d.ts +45 -0
- package/dist/bin/forgebook/semanticOptions.js +36 -0
- package/dist/bin/forgebook/storyCheckCommands.d.mts +13 -0
- package/dist/bin/forgebook/storyCheckCommands.mjs +69 -0
- package/dist/bin/forgebook/storyCheckRun.d.ts +40 -6
- package/dist/bin/forgebook/storyCheckRun.js +90 -17
- package/dist/bin/forgebook/tokensRun.d.ts +41 -0
- package/dist/bin/forgebook/tokensRun.js +42 -0
- package/dist/bin/forgebook/touchWindowRun.d.ts +0 -1
- package/dist/bin/forgebook/touchWindowRun.js +0 -1
- package/dist/bin/forgebook/visualCommands.d.mts +37 -0
- package/dist/bin/forgebook/visualCommands.mjs +162 -0
- package/dist/bin/forgebook/viteCache.d.ts +48 -0
- package/dist/bin/forgebook/viteCache.js +112 -0
- package/dist/bin/forgebook-docs/catalogueDocs.d.ts +1 -2
- package/dist/bin/forgebook-docs/catalogueDocs.js +8 -5
- package/dist/bin/forgebook-docs/catalogueDocs.types.d.ts +22 -3
- package/dist/bin/forgebook-docs/catalogueDocs.types.js +0 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.d.ts +0 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.js +67 -19
- package/dist/bin/forgebook-docs/catalogueOptions.d.ts +1 -2
- package/dist/bin/forgebook-docs/catalogueOptions.js +8 -2
- package/dist/bin/forgebook-docs/collectDocs.d.ts +4 -4
- package/dist/bin/forgebook-docs/collectDocs.js +122 -30
- package/dist/bin/forgebook-docs/forgebook-docs.d.mts +0 -1
- package/dist/bin/forgebook-docs/forgebook-docs.mjs +0 -1
- package/dist/bin/forgebook-docs/llmsText.d.ts +5 -1
- package/dist/bin/forgebook-docs/llmsText.js +5 -2
- package/dist/bin/forgebook-docs/moduleDocs.d.ts +0 -1
- package/dist/bin/forgebook-docs/moduleDocs.js +0 -1
- package/dist/bin/forgebook-docs/sassDocs.d.ts +0 -1
- package/dist/bin/forgebook-docs/sassDocs.js +0 -1
- package/dist/bin/forgebook-texts/forgebook-texts.d.mts +0 -1
- package/dist/bin/forgebook-texts/forgebook-texts.mjs +1 -2
- package/dist/bin/forgebook-texts/storyTextsReport.d.ts +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.js +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.types.d.ts +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.types.js +0 -1
- package/dist/bin/frameworkDocs.d.ts +0 -1
- package/dist/bin/frameworkDocs.js +0 -1
- package/dist/src/a11y.d.ts +0 -1
- package/dist/src/a11y.js +0 -1
- package/dist/src/addressArgs.d.ts +74 -0
- package/dist/src/addressArgs.js +109 -0
- package/dist/src/addressTexts.d.ts +35 -0
- package/dist/src/addressTexts.js +51 -0
- package/dist/src/argTypes.d.ts +0 -1
- package/dist/src/argTypes.js +2 -2
- package/dist/src/argsProps.d.ts +32 -0
- package/dist/src/argsProps.js +69 -0
- package/dist/src/audiences.d.ts +17 -0
- package/dist/src/audiences.js +15 -0
- package/dist/src/backdrops.d.ts +39 -40
- package/dist/src/backdrops.js +37 -174
- package/dist/src/catalogue.d.ts +103 -24
- package/dist/src/catalogue.js +78 -20
- package/dist/src/codeLiteral.d.ts +41 -0
- package/dist/src/codeLiteral.js +51 -0
- package/dist/src/componentDocs.d.ts +57 -1
- package/dist/src/componentDocs.js +20 -3
- package/dist/src/controlKeys.d.ts +0 -1
- package/dist/src/controlKeys.js +0 -1
- package/dist/src/deviceDrawing.d.ts +114 -0
- package/dist/src/deviceDrawing.js +358 -0
- package/dist/src/deviceMenuView.d.ts +17 -0
- package/dist/src/deviceMenuView.js +22 -0
- package/dist/src/devicePicture.d.ts +57 -0
- package/dist/src/devicePicture.js +104 -0
- package/dist/src/deviceView.d.ts +172 -0
- package/dist/src/deviceView.js +111 -0
- package/dist/src/devices.d.ts +115 -0
- package/dist/src/devices.js +135 -0
- package/dist/src/docAnchors.d.ts +27 -0
- package/dist/src/docAnchors.js +33 -0
- package/dist/src/docPages.d.ts +203 -0
- package/dist/src/docPages.js +169 -0
- package/dist/src/embed.d.ts +32 -0
- package/dist/src/embed.js +24 -0
- package/dist/src/embedCode.d.ts +31 -0
- package/dist/src/embedCode.js +88 -0
- package/dist/src/frame/backdropPictures.d.ts +29 -0
- package/dist/src/frame/backdropPictures.js +187 -0
- package/dist/src/frame/checkStory.d.ts +6 -3
- package/dist/src/frame/checkStory.js +76 -5
- package/dist/src/frame/followTouch.d.ts +9 -0
- package/dist/src/frame/followTouch.js +43 -0
- package/dist/src/frame/frame.css +8 -3
- package/dist/src/frame/frameClock.d.ts +0 -1
- package/dist/src/frame/frameClock.js +0 -1
- package/dist/src/frame/frameStatus.d.ts +2 -1
- package/dist/src/frame/frameStatus.js +2 -1
- package/dist/src/frame/frameView.d.ts +0 -1
- package/dist/src/frame/frameView.js +1 -2
- package/dist/src/frame/matrixLayout.d.ts +0 -1
- package/dist/src/frame/matrixLayout.js +0 -1
- package/dist/src/frame/measureTools.d.ts +0 -1
- package/dist/src/frame/measureTools.js +0 -1
- package/dist/src/frame/mountFrame.d.ts +10 -3
- package/dist/src/frame/mountFrame.js +184 -66
- package/dist/src/frame/playStory.d.ts +0 -1
- package/dist/src/frame/playStory.js +0 -1
- package/dist/src/frame/pluginFrames.d.ts +31 -0
- package/dist/src/frame/pluginFrames.js +23 -0
- package/dist/src/frame/renderer.d.ts +50 -12
- package/dist/src/frame/renderer.js +27 -6
- package/dist/src/frame/settle.d.ts +0 -1
- package/dist/src/frame/settle.js +0 -1
- package/dist/src/frame/shellChannel.d.ts +47 -0
- package/dist/src/frame/shellChannel.js +39 -0
- package/dist/src/frame/spillOutline.d.ts +0 -1
- package/dist/src/frame/spillOutline.js +0 -1
- package/dist/src/frame/staleModule.d.ts +14 -2
- package/dist/src/frame/staleModule.js +19 -2
- package/dist/src/frame/storyCanvas.d.ts +0 -1
- package/dist/src/frame/storyCanvas.js +0 -1
- package/dist/src/frame/storyHooks.d.ts +0 -1
- package/dist/src/frame/storyHooks.js +0 -1
- package/dist/src/frame/storyModule.d.ts +13 -2
- package/dist/src/frame/storyModule.js +45 -3
- package/dist/src/frame/storyRun.d.ts +21 -4
- package/dist/src/frame/storyRun.js +100 -19
- package/dist/src/frame/touchCaret.d.ts +43 -0
- package/dist/src/frame/touchCaret.js +195 -0
- package/dist/src/frame/touchDots.d.ts +0 -1
- package/dist/src/frame/touchDots.js +0 -1
- package/dist/src/frame/touchEvents.d.ts +3 -3
- package/dist/src/frame/touchEvents.js +17 -19
- package/dist/src/frame/touchGesture.d.ts +0 -1
- package/dist/src/frame/touchGesture.js +0 -1
- package/dist/src/frame/touchLayer.d.ts +3 -3
- package/dist/src/frame/touchLayer.js +52 -37
- package/dist/src/frame/touchScroll.d.ts +0 -1
- package/dist/src/frame/touchScroll.js +0 -1
- package/dist/src/frameOrigins.d.ts +62 -0
- package/dist/src/frameOrigins.js +49 -0
- package/dist/src/hotModules.d.ts +48 -0
- package/dist/src/hotModules.js +53 -0
- package/dist/src/jsxCode.d.ts +22 -0
- package/dist/src/jsxCode.js +36 -0
- package/dist/src/languages.d.ts +0 -1
- package/dist/src/languages.js +0 -1
- package/dist/src/liveErrors.d.ts +0 -1
- package/dist/src/liveErrors.js +0 -1
- package/dist/src/matrix.d.ts +0 -1
- package/dist/src/matrix.js +0 -1
- package/dist/src/messages.d.ts +28 -2
- package/dist/src/messages.js +24 -3
- package/dist/src/namedValues.d.ts +11 -1
- package/dist/src/namedValues.js +25 -2
- package/dist/src/namedViews.d.ts +1 -13
- package/dist/src/namedViews.js +30 -7
- package/dist/src/packedText.d.ts +21 -0
- package/dist/src/packedText.js +36 -0
- package/dist/src/pageAddress.d.ts +26 -0
- package/dist/src/pageAddress.js +39 -0
- package/dist/src/pageConfig.d.ts +3 -1
- package/dist/src/pageConfig.js +0 -1
- package/dist/src/pageTree.d.ts +79 -0
- package/dist/src/pageTree.js +108 -0
- package/dist/src/playTrace.d.ts +0 -1
- package/dist/src/playTrace.js +0 -1
- package/dist/src/plugin.d.ts +230 -0
- package/dist/src/plugin.js +12 -0
- package/dist/src/pluginReact.d.ts +23 -0
- package/dist/src/pluginReact.js +24 -0
- package/dist/src/previewRelay.d.ts +40 -0
- package/dist/src/previewRelay.js +69 -0
- package/dist/src/previewTexts.d.ts +26 -0
- package/dist/src/previewTexts.js +33 -0
- package/dist/src/previewView.d.ts +31 -0
- package/dist/src/previewView.js +264 -0
- package/dist/src/propGroups.d.ts +109 -0
- package/dist/src/propGroups.js +113 -0
- package/dist/src/realTouch.d.ts +1 -2
- package/dist/src/realTouch.js +1 -2
- package/dist/src/safeAreaParameter.d.ts +42 -0
- package/dist/src/safeAreaParameter.js +50 -0
- package/dist/src/search.d.ts +154 -0
- package/dist/src/search.js +265 -0
- package/dist/src/searchIndex.d.ts +61 -0
- package/dist/src/searchIndex.js +55 -0
- package/dist/src/searchMarks.d.ts +29 -0
- package/dist/src/searchMarks.js +165 -0
- package/dist/src/searchMatch.d.ts +58 -0
- package/dist/src/searchMatch.js +127 -0
- package/dist/src/shell/A11yTab.d.ts +0 -7
- package/dist/src/shell/A11yTab.js +4 -15
- package/dist/src/shell/AnchorScroll.d.ts +25 -0
- package/dist/src/shell/AnchorScroll.js +10 -0
- package/dist/src/shell/ApiReference.d.ts +16 -4
- package/dist/src/shell/ApiReference.js +82 -20
- package/dist/src/shell/AppearanceMenu.d.ts +1 -2
- package/dist/src/shell/AppearanceMenu.js +8 -5
- package/dist/src/shell/AudienceSections.d.ts +106 -0
- package/dist/src/shell/AudienceSections.js +154 -0
- package/dist/src/shell/AuthoredHome.d.ts +37 -0
- package/dist/src/shell/AuthoredHome.js +96 -0
- package/dist/src/shell/BoxWidth.d.ts +0 -1
- package/dist/src/shell/BoxWidth.js +0 -1
- package/dist/src/shell/ClockBar.d.ts +19 -0
- package/dist/src/shell/ClockBar.js +15 -0
- package/dist/src/shell/ClockControls.d.ts +5 -9
- package/dist/src/shell/ClockControls.js +13 -16
- package/dist/src/shell/Code.d.ts +0 -1
- package/dist/src/shell/Code.js +0 -1
- package/dist/src/shell/CodeTab.d.ts +0 -1
- package/dist/src/shell/CodeTab.js +2 -2
- package/dist/src/shell/CodeText.d.ts +0 -1
- package/dist/src/shell/CodeText.js +0 -1
- package/dist/src/shell/CompareGrid.d.ts +37 -0
- package/dist/src/shell/CompareGrid.js +24 -0
- package/dist/src/shell/ComponentPage.d.ts +48 -7
- package/dist/src/shell/ComponentPage.js +101 -59
- package/dist/src/shell/ControlKeyField.d.ts +0 -1
- package/dist/src/shell/ControlKeyField.js +3 -4
- package/dist/src/shell/ControlRow.d.ts +4 -4
- package/dist/src/shell/ControlRow.js +5 -5
- package/dist/src/shell/DeviceControl.d.ts +31 -0
- package/dist/src/shell/DeviceControl.js +33 -0
- package/dist/src/shell/DeviceSlot.d.ts +114 -0
- package/dist/src/shell/DeviceSlot.js +134 -0
- package/dist/src/shell/DocBlocks.d.ts +100 -0
- package/dist/src/shell/DocBlocks.js +206 -0
- package/dist/src/shell/DocContainers.d.ts +70 -0
- package/dist/src/shell/DocContainers.js +94 -0
- package/dist/src/shell/DocContents.d.ts +29 -0
- package/dist/src/shell/DocContents.js +88 -0
- package/dist/src/shell/DocPage.d.ts +69 -0
- package/dist/src/shell/DocPage.js +141 -0
- package/dist/src/shell/Dock.d.ts +1 -2
- package/dist/src/shell/Dock.js +1 -2
- package/dist/src/shell/DroppedArgsList.d.ts +26 -0
- package/dist/src/shell/DroppedArgsList.js +8 -0
- package/dist/src/shell/DroppedArgsNote.d.ts +14 -0
- package/dist/src/shell/DroppedArgsNote.js +10 -0
- package/dist/src/shell/EmbedButton.d.ts +19 -0
- package/dist/src/shell/EmbedButton.js +96 -0
- package/dist/src/shell/EmbedPage.d.ts +23 -0
- package/dist/src/shell/EmbedPage.js +168 -0
- package/dist/src/shell/EmbedPanel.d.ts +25 -0
- package/dist/src/shell/EmbedPanel.js +46 -0
- package/dist/src/shell/EventsTab.d.ts +0 -1
- package/dist/src/shell/EventsTab.js +2 -3
- package/dist/src/shell/Example.d.ts +20 -2
- package/dist/src/shell/Example.js +75 -22
- package/dist/src/shell/FrameView.d.ts +1 -2
- package/dist/src/shell/FrameView.js +4 -4
- package/dist/src/shell/HomePage.d.ts +78 -4
- package/dist/src/shell/HomePage.js +53 -14
- package/dist/src/shell/HomePieces.d.ts +40 -0
- package/dist/src/shell/HomePieces.js +29 -0
- package/dist/src/shell/InfoTip.d.ts +0 -1
- package/dist/src/shell/InfoTip.js +0 -1
- package/dist/src/shell/InteractionsTab.d.ts +0 -7
- package/dist/src/shell/InteractionsTab.js +3 -9
- package/dist/src/shell/LazyHost.d.ts +16 -0
- package/dist/src/shell/LazyHost.js +42 -0
- package/dist/src/shell/LazyPage.d.ts +24 -0
- package/dist/src/shell/LazyPage.js +9 -0
- package/dist/src/shell/LogicMark.d.ts +0 -1
- package/dist/src/shell/LogicMark.js +0 -1
- package/dist/src/shell/MatrixPicker.d.ts +0 -1
- package/dist/src/shell/MatrixPicker.js +0 -1
- package/dist/src/shell/NamedViews.d.ts +0 -1
- package/dist/src/shell/NamedViews.js +4 -5
- package/dist/src/shell/PackageHtml.d.ts +0 -1
- package/dist/src/shell/PackageHtml.js +0 -1
- package/dist/src/shell/PartsTab.d.ts +0 -7
- package/dist/src/shell/PartsTab.js +3 -13
- package/dist/src/shell/PinnedControl.d.ts +0 -1
- package/dist/src/shell/PinnedControl.js +2 -2
- package/dist/src/shell/PluginBlockHost.d.ts +46 -0
- package/dist/src/shell/PluginBlockHost.js +39 -0
- package/dist/src/shell/PluginTabHost.d.ts +32 -0
- package/dist/src/shell/PluginTabHost.js +25 -0
- package/dist/src/shell/PluginViewHost.d.ts +37 -0
- package/dist/src/shell/PluginViewHost.js +89 -0
- package/dist/src/shell/PropFields.d.ts +0 -1
- package/dist/src/shell/PropFields.js +0 -1
- package/dist/src/shell/PropRows.d.ts +42 -0
- package/dist/src/shell/PropRows.js +60 -0
- package/dist/src/shell/PropsTab.d.ts +24 -11
- package/dist/src/shell/PropsTab.js +31 -45
- package/dist/src/shell/RequiredFirstSwitch.d.ts +16 -0
- package/dist/src/shell/RequiredFirstSwitch.js +8 -0
- package/dist/src/shell/SearchPanel.d.ts +63 -0
- package/dist/src/shell/SearchPanel.js +209 -0
- package/dist/src/shell/Segmented.d.ts +0 -1
- package/dist/src/shell/Segmented.js +0 -1
- package/dist/src/shell/Shell.d.ts +34 -6
- package/dist/src/shell/Shell.js +271 -70
- package/dist/src/shell/Sidebar.d.ts +20 -5
- package/dist/src/shell/Sidebar.js +23 -56
- package/dist/src/shell/SidebarDocs.d.ts +38 -0
- package/dist/src/shell/SidebarDocs.js +30 -0
- package/dist/src/shell/SidebarEntries.d.ts +9 -1
- package/dist/src/shell/SidebarEntries.js +1 -2
- package/dist/src/shell/SidebarHandle.d.ts +0 -1
- package/dist/src/shell/SidebarHandle.js +0 -1
- package/dist/src/shell/SidebarSearch.d.ts +40 -0
- package/dist/src/shell/SidebarSearch.js +85 -0
- package/dist/src/shell/SignatureReference.d.ts +0 -1
- package/dist/src/shell/SignatureReference.js +1 -2
- package/dist/src/shell/Stage.d.ts +9 -4
- package/dist/src/shell/Stage.js +116 -75
- package/dist/src/shell/StageCompare.d.ts +14 -0
- package/dist/src/shell/StageCompare.js +11 -0
- package/dist/src/shell/StageTools.d.ts +0 -1
- package/dist/src/shell/StageTools.js +0 -1
- package/dist/src/shell/StageViewport.d.ts +7 -3
- package/dist/src/shell/StageViewport.js +4 -5
- package/dist/src/shell/StoryBar.d.ts +40 -0
- package/dist/src/shell/StoryBar.js +23 -0
- package/dist/src/shell/StoryCodeBlock.d.ts +1 -2
- package/dist/src/shell/StoryCodeBlock.js +0 -1
- package/dist/src/shell/StoryCoverage.d.ts +36 -0
- package/dist/src/shell/StoryCoverage.js +129 -0
- package/dist/src/shell/StoryPicker.d.ts +0 -1
- package/dist/src/shell/StoryPicker.js +0 -1
- package/dist/src/shell/Toolbar.d.ts +7 -3
- package/dist/src/shell/Toolbar.js +6 -6
- package/dist/src/shell/ToolbarControl.d.ts +6 -8
- package/dist/src/shell/ToolbarControl.js +28 -20
- package/dist/src/shell/UsedIn.d.ts +5 -6
- package/dist/src/shell/UsedIn.js +7 -20
- package/dist/src/shell/ViewMenu.d.ts +7 -7
- package/dist/src/shell/ViewMenu.js +61 -176
- package/dist/src/shell/ViewMenuPanel.d.ts +41 -0
- package/dist/src/shell/ViewMenuPanel.js +199 -0
- package/dist/src/shell/WidthField.d.ts +3 -2
- package/dist/src/shell/WidthField.js +2 -3
- package/dist/src/shell/asideStory.d.ts +34 -0
- package/dist/src/shell/asideStory.js +55 -0
- package/dist/src/shell/audienceLayout.d.ts +39 -0
- package/dist/src/shell/audienceLayout.js +33 -0
- package/dist/src/shell/audiencePage.d.ts +113 -0
- package/dist/src/shell/audiencePage.js +144 -0
- package/dist/src/shell/audienceSections.css +95 -0
- package/dist/src/shell/catalogueContext.d.ts +24 -2
- package/dist/src/shell/catalogueContext.js +12 -9
- package/dist/src/shell/codeTokens.d.ts +0 -1
- package/dist/src/shell/codeTokens.js +0 -1
- package/dist/src/shell/codeWriter.d.ts +0 -1
- package/dist/src/shell/codeWriter.js +0 -1
- package/dist/src/shell/compareVariants.d.ts +0 -1
- package/dist/src/shell/compareVariants.js +2 -2
- package/dist/src/shell/controlCycle.d.ts +0 -1
- package/dist/src/shell/controlCycle.js +13 -1
- package/dist/src/shell/controlLabel.d.ts +7 -0
- package/dist/src/shell/controlLabel.js +17 -0
- package/dist/src/shell/device/deviceFrame.css +42 -0
- package/dist/src/shell/device/deviceParts.d.ts +90 -0
- package/dist/src/shell/device/deviceParts.js +120 -0
- package/dist/src/shell/docPage.css +457 -0
- package/dist/src/shell/dockTabs.d.ts +20 -10
- package/dist/src/shell/dockTabs.js +42 -20
- package/dist/src/shell/embed.css +74 -0
- package/dist/src/shell/filesCode.d.ts +21 -0
- package/dist/src/shell/filesCode.js +37 -0
- package/dist/src/shell/forgebookMark.d.ts +15 -0
- package/dist/src/shell/forgebookMark.js +28 -0
- package/dist/src/shell/framesOrigin.d.ts +23 -0
- package/dist/src/shell/framesOrigin.js +69 -0
- package/dist/src/shell/icons.d.ts +3 -1
- package/dist/src/shell/icons.js +3 -1
- package/dist/src/shell/keyboard.d.ts +0 -1
- package/dist/src/shell/keyboard.js +0 -1
- package/dist/src/shell/laterStrings.d.ts +91 -0
- package/dist/src/shell/laterStrings.js +102 -0
- package/dist/src/shell/lazyModule.d.ts +49 -0
- package/dist/src/shell/lazyModule.js +72 -0
- package/dist/src/shell/lazyTab.d.ts +21 -0
- package/dist/src/shell/lazyTab.js +9 -0
- package/dist/src/shell/logicView.d.ts +0 -12
- package/dist/src/shell/logicView.js +2 -2
- package/dist/src/shell/mountShell.d.ts +5 -3
- package/dist/src/shell/mountShell.js +43 -12
- package/dist/src/shell/pageStrings.d.ts +24 -0
- package/dist/src/shell/pageStrings.js +26 -0
- package/dist/src/shell/pluginHosts.d.ts +9 -0
- package/dist/src/shell/pluginHosts.js +6 -0
- package/dist/src/shell/pluginHostsContext.d.ts +20 -0
- package/dist/src/shell/pluginHostsContext.js +16 -0
- package/dist/src/shell/pluginTabs.d.ts +63 -0
- package/dist/src/shell/pluginTabs.js +60 -0
- package/dist/src/shell/reportedPanel.d.ts +12 -0
- package/dist/src/shell/reportedPanel.js +19 -0
- package/dist/src/shell/search.css +172 -0
- package/dist/src/shell/searchStrings.d.ts +24 -0
- package/dist/src/shell/searchStrings.js +31 -0
- package/dist/src/shell/shell.css +341 -140
- package/dist/src/shell/shellScheme.d.ts +37 -0
- package/dist/src/shell/shellScheme.js +32 -0
- package/dist/src/shell/storyTouch.d.ts +19 -6
- package/dist/src/shell/storyTouch.js +26 -4
- package/dist/src/shell/strings.d.ts +58 -80
- package/dist/src/shell/strings.js +55 -78
- package/dist/src/shell/switchView.d.ts +0 -1
- package/dist/src/shell/switchView.js +0 -1
- package/dist/src/shell/tabSummaries.d.ts +31 -0
- package/dist/src/shell/tabSummaries.js +27 -0
- package/dist/src/shell/treeSearch.d.ts +39 -3
- package/dist/src/shell/treeSearch.js +27 -1
- package/dist/src/shell/useAddressArgs.d.ts +55 -0
- package/dist/src/shell/useAddressArgs.js +62 -0
- package/dist/src/shell/useAnchorScroll.d.ts +24 -0
- package/dist/src/shell/useAnchorScroll.js +90 -0
- package/dist/src/shell/useAppearance.d.ts +7 -2
- package/dist/src/shell/useAppearance.js +14 -5
- package/dist/src/shell/useComponentDocs.d.ts +0 -1
- package/dist/src/shell/useComponentDocs.js +0 -1
- package/dist/src/shell/useControlKeys.d.ts +2 -1
- package/dist/src/shell/useControlKeys.js +2 -3
- package/dist/src/shell/useCopy.d.ts +2 -1
- package/dist/src/shell/useCopy.js +11 -6
- package/dist/src/shell/useFold.d.ts +0 -1
- package/dist/src/shell/useFold.js +0 -1
- package/dist/src/shell/useFrameMessages.d.ts +19 -4
- package/dist/src/shell/useFrameMessages.js +23 -7
- package/dist/src/shell/useFrameQueue.d.ts +7 -3
- package/dist/src/shell/useFrameQueue.js +39 -22
- package/dist/src/shell/useFullPage.d.ts +0 -1
- package/dist/src/shell/useFullPage.js +0 -1
- package/dist/src/shell/useLiveView.d.ts +0 -1
- package/dist/src/shell/useLiveView.js +0 -1
- package/dist/src/shell/useLoaded.d.ts +1 -2
- package/dist/src/shell/useLoaded.js +28 -6
- package/dist/src/shell/usePageDoc.d.ts +0 -1
- package/dist/src/shell/usePageDoc.js +0 -1
- package/dist/src/shell/usePageFrames.d.ts +46 -0
- package/dist/src/shell/usePageFrames.js +50 -0
- package/dist/src/shell/usePanelDocs.d.ts +11 -0
- package/dist/src/shell/usePanelDocs.js +29 -0
- package/dist/src/shell/usePluginTabs.d.ts +18 -0
- package/dist/src/shell/usePluginTabs.js +45 -0
- package/dist/src/shell/usePopover.d.ts +0 -1
- package/dist/src/shell/usePopover.js +0 -1
- package/dist/src/shell/useProseLinks.d.ts +14 -0
- package/dist/src/shell/useProseLinks.js +30 -0
- package/dist/src/shell/useRecentPages.d.ts +3 -4
- package/dist/src/shell/useRecentPages.js +1 -2
- package/dist/src/shell/useRequiredFirst.d.ts +27 -0
- package/dist/src/shell/useRequiredFirst.js +67 -0
- package/dist/src/shell/useScrollMemory.d.ts +9 -1
- package/dist/src/shell/useScrollMemory.js +2 -3
- package/dist/src/shell/useSearchIndex.d.ts +24 -0
- package/dist/src/shell/useSearchIndex.js +51 -0
- package/dist/src/shell/useShownView.d.ts +3 -1
- package/dist/src/shell/useShownView.js +5 -5
- package/dist/src/shell/useSidebarLayout.d.ts +0 -1
- package/dist/src/shell/useSidebarLayout.js +0 -1
- package/dist/src/shell/useStored.d.ts +13 -1
- package/dist/src/shell/useStored.js +13 -5
- package/dist/src/shell/useStoryCheck.d.ts +20 -0
- package/dist/src/shell/useStoryCheck.js +33 -0
- package/dist/src/shell/useStoryCode.d.ts +0 -1
- package/dist/src/shell/useStoryCode.js +0 -1
- package/dist/src/shell/useStoryHeights.d.ts +0 -1
- package/dist/src/shell/useStoryHeights.js +0 -1
- package/dist/src/shell/useStoryIdsElement.d.ts +0 -1
- package/dist/src/shell/useStoryIdsElement.js +0 -1
- package/dist/src/shell/useStoryKeys.d.ts +0 -1
- package/dist/src/shell/useStoryKeys.js +0 -1
- package/dist/src/shell/useSyncedTab.d.ts +8 -0
- package/dist/src/shell/useSyncedTab.js +60 -0
- package/dist/src/shell/useSystemDark.d.ts +0 -1
- package/dist/src/shell/useSystemDark.js +0 -1
- package/dist/src/shell/useToolbarLayout.d.ts +0 -1
- package/dist/src/shell/useToolbarLayout.js +0 -1
- package/dist/src/shell/useToolbarOverflow.d.ts +0 -1
- package/dist/src/shell/useToolbarOverflow.js +0 -1
- package/dist/src/shell/useWorstCase.d.ts +0 -1
- package/dist/src/shell/useWorstCase.js +2 -2
- package/dist/src/shell/worstArgs.d.ts +0 -1
- package/dist/src/shell/worstArgs.js +0 -1
- package/dist/src/shellTheme.d.ts +64 -0
- package/dist/src/shellTheme.js +274 -0
- package/dist/src/shellTheme.types.d.ts +93 -0
- package/dist/src/shellTheme.types.js +10 -0
- package/dist/src/sourceFiles.d.ts +17 -3
- package/dist/src/sourceFiles.js +27 -1
- package/dist/src/spills.d.ts +0 -1
- package/dist/src/spills.js +0 -1
- package/dist/src/storyBackground.d.ts +0 -1
- package/dist/src/storyBackground.js +0 -1
- package/dist/src/storyCheck.d.ts +88 -2
- package/dist/src/storyCheck.js +14 -3
- package/dist/src/storyClock.d.ts +0 -1
- package/dist/src/storyClock.js +0 -1
- package/dist/src/storyGlobals.d.ts +0 -1
- package/dist/src/storyGlobals.js +2 -2
- package/dist/src/storyHeights.d.ts +0 -1
- package/dist/src/storyHeights.js +0 -1
- package/dist/src/storyIds.d.ts +36 -0
- package/dist/src/storyIds.js +52 -0
- package/dist/src/storyIdsElement.d.ts +0 -1
- package/dist/src/storyIdsElement.js +0 -1
- package/dist/src/storyTexts.d.ts +11 -5
- package/dist/src/storyTexts.js +16 -5
- package/dist/src/storyTree.d.ts +89 -25
- package/dist/src/storyTree.js +213 -127
- package/dist/src/switches.d.ts +0 -1
- package/dist/src/switches.js +6 -2
- package/dist/src/toolbarLayout.d.ts +0 -1
- package/dist/src/toolbarLayout.js +0 -1
- package/dist/src/treePlaces.d.ts +60 -0
- package/dist/src/treePlaces.js +89 -0
- package/dist/src/usedIn.d.ts +28 -1
- package/dist/src/usedIn.js +93 -3
- package/dist/src/viewState.d.ts +44 -9
- package/dist/src/viewState.js +80 -9
- package/dist/src/viewWords.d.ts +0 -13
- package/dist/src/viewWords.js +41 -3
- package/dist/src/vite/adapter.d.ts +62 -1
- package/dist/src/vite/adapter.js +20 -2
- package/dist/src/vite/agent.types.d.ts +291 -7
- package/dist/src/vite/agent.types.js +11 -1
- package/dist/src/vite/agentApi.d.ts +55 -2
- package/dist/src/vite/agentApi.js +136 -9
- package/dist/src/vite/agentIds.d.ts +25 -0
- package/dist/src/vite/agentIds.js +41 -0
- package/dist/src/vite/agentIndex.d.ts +63 -0
- package/dist/src/vite/agentIndex.js +91 -0
- package/dist/src/vite/agentIndexRoute.d.ts +10 -0
- package/dist/src/vite/agentIndexRoute.js +35 -0
- package/dist/src/vite/agentRoutes.d.ts +80 -19
- package/dist/src/vite/agentRoutes.js +184 -27
- package/dist/src/vite/autoTitle.d.ts +0 -1
- package/dist/src/vite/autoTitle.js +0 -1
- package/dist/src/vite/axeScript.d.ts +20 -0
- package/dist/src/vite/axeScript.js +60 -0
- package/dist/src/vite/builtTexts.d.ts +75 -0
- package/dist/src/vite/builtTexts.js +143 -0
- package/dist/src/vite/catalogueConfig.d.ts +10 -0
- package/dist/src/vite/catalogueConfig.js +64 -0
- package/dist/src/vite/checkCode.d.ts +67 -0
- package/dist/src/vite/checkCode.js +145 -0
- package/dist/src/vite/closeWatch.d.ts +96 -0
- package/dist/src/vite/closeWatch.js +219 -0
- package/dist/src/vite/codeFence.d.ts +78 -0
- package/dist/src/vite/codeFence.js +267 -0
- package/dist/src/vite/componentImport.d.ts +8 -0
- package/dist/src/vite/componentImport.js +35 -0
- package/dist/src/vite/componentPage.d.ts +15 -2
- package/dist/src/vite/componentPage.js +55 -16
- package/dist/src/vite/config.d.ts +51 -3
- package/dist/src/vite/config.js +0 -1
- package/dist/src/vite/configFile.d.ts +66 -9
- package/dist/src/vite/configFile.js +236 -33
- package/dist/src/vite/designTokens.d.ts +75 -0
- package/dist/src/vite/designTokens.js +382 -0
- package/dist/src/vite/diskCache.d.ts +51 -0
- package/dist/src/vite/diskCache.js +211 -0
- package/dist/src/vite/docDirectives.d.ts +116 -0
- package/dist/src/vite/docDirectives.js +425 -0
- package/dist/src/vite/docMarkdown.d.ts +76 -0
- package/dist/src/vite/docMarkdown.js +150 -0
- package/dist/src/vite/docPageBlocks.d.ts +64 -0
- package/dist/src/vite/docPageBlocks.js +322 -0
- package/dist/src/vite/docPageLinks.d.ts +72 -0
- package/dist/src/vite/docPageLinks.js +135 -0
- package/dist/src/vite/docPageMarkdown.d.ts +86 -0
- package/dist/src/vite/docPageMarkdown.js +133 -0
- package/dist/src/vite/docPageRender.d.ts +27 -0
- package/dist/src/vite/docPageRender.js +199 -0
- package/dist/src/vite/docPageTokens.d.ts +91 -0
- package/dist/src/vite/docPageTokens.js +186 -0
- package/dist/src/vite/docPagesModule.d.ts +53 -0
- package/dist/src/vite/docPagesModule.js +121 -0
- package/dist/src/vite/docPagesRoute.d.ts +38 -0
- package/dist/src/vite/docPagesRoute.js +154 -0
- package/dist/src/vite/docsDependencies.d.ts +6 -0
- package/dist/src/vite/docsDependencies.js +150 -0
- package/dist/src/vite/docsExtractor.d.ts +50 -3
- package/dist/src/vite/docsExtractor.js +173 -26
- package/dist/src/vite/docsProgram.d.ts +89 -9
- package/dist/src/vite/docsProgram.js +413 -50
- package/dist/src/vite/docsWorker.d.ts +0 -1
- package/dist/src/vite/docsWorker.js +49 -15
- package/dist/src/vite/figmaLink.d.ts +26 -0
- package/dist/src/vite/figmaLink.js +92 -0
- package/dist/src/vite/fileAccess.d.ts +51 -0
- package/dist/src/vite/fileAccess.js +109 -0
- package/dist/src/vite/findComponent.d.ts +32 -0
- package/dist/src/vite/findComponent.js +52 -0
- package/dist/src/vite/findRoute.d.ts +14 -0
- package/dist/src/vite/findRoute.js +62 -0
- package/dist/src/vite/forcedStates.d.ts +0 -1
- package/dist/src/vite/forcedStates.js +0 -1
- package/dist/src/vite/forgebookPlugin.d.ts +0 -1
- package/dist/src/vite/forgebookPlugin.js +305 -282
- package/dist/src/vite/framesConfig.d.ts +89 -0
- package/dist/src/vite/framesConfig.js +149 -0
- package/dist/src/vite/framesServer.d.ts +43 -0
- package/dist/src/vite/framesServer.js +342 -0
- package/dist/src/vite/functionComponentDocs.d.ts +26 -0
- package/dist/src/vite/functionComponentDocs.js +193 -0
- package/dist/src/vite/generatedModules.d.ts +23 -0
- package/dist/src/vite/generatedModules.js +58 -0
- package/dist/src/vite/gitChange.d.ts +56 -0
- package/dist/src/vite/gitChange.js +86 -0
- package/dist/src/vite/heightsRoute.d.ts +0 -1
- package/dist/src/vite/heightsRoute.js +0 -1
- package/dist/src/vite/highlightCode.d.ts +0 -1
- package/dist/src/vite/highlightCode.js +8 -27
- package/dist/src/vite/hotSnippets.d.ts +86 -0
- package/dist/src/vite/hotSnippets.js +172 -0
- package/dist/src/vite/indexFields.d.ts +61 -0
- package/dist/src/vite/indexFields.js +149 -0
- package/dist/src/vite/indexStoryFile.d.ts +19 -18
- package/dist/src/vite/indexStoryFile.js +165 -221
- package/dist/src/vite/indexedParameters.d.ts +10 -0
- package/dist/src/vite/indexedParameters.js +130 -0
- package/dist/src/vite/mcpProtocol.d.ts +36 -2
- package/dist/src/vite/mcpProtocol.js +100 -15
- package/dist/src/vite/moduleSummary.d.ts +17 -0
- package/dist/src/vite/moduleSummary.js +40 -0
- package/dist/src/vite/nearestToken.d.ts +50 -0
- package/dist/src/vite/nearestToken.js +295 -0
- package/dist/src/vite/originGuard.d.ts +97 -0
- package/dist/src/vite/originGuard.js +172 -0
- package/dist/src/vite/packedModule.d.ts +40 -0
- package/dist/src/vite/packedModule.js +74 -0
- package/dist/src/vite/pages.d.ts +64 -10
- package/dist/src/vite/pages.js +278 -40
- package/dist/src/vite/parsedFiles.d.ts +18 -0
- package/dist/src/vite/parsedFiles.js +91 -0
- package/dist/src/vite/plainGrammars.d.ts +20 -0
- package/dist/src/vite/plainGrammars.js +113 -0
- package/dist/src/vite/pluginConfig.d.ts +47 -0
- package/dist/src/vite/pluginConfig.js +220 -0
- package/dist/src/vite/pluginIds.d.ts +27 -0
- package/dist/src/vite/pluginIds.js +76 -0
- package/dist/src/vite/pluginModules.d.ts +169 -0
- package/dist/src/vite/pluginModules.js +221 -0
- package/dist/src/vite/prebundled.d.ts +18 -5
- package/dist/src/vite/prebundled.js +29 -18
- package/dist/src/vite/previewPages.d.ts +14 -0
- package/dist/src/vite/previewPages.js +81 -0
- package/dist/src/vite/previewRoute.d.ts +8 -0
- package/dist/src/vite/previewRoute.js +8 -0
- package/dist/src/vite/previewRunner.d.ts +56 -0
- package/dist/src/vite/previewRunner.js +207 -0
- package/dist/src/vite/propDocs.d.ts +60 -0
- package/dist/src/vite/propDocs.js +387 -0
- package/dist/src/vite/searchModule.d.ts +42 -0
- package/dist/src/vite/searchModule.js +213 -0
- package/dist/src/vite/searchRoute.d.ts +7 -0
- package/dist/src/vite/searchRoute.js +79 -0
- package/dist/src/vite/serverConditions.d.ts +31 -0
- package/dist/src/vite/serverConditions.js +69 -0
- package/dist/src/vite/signatureDocs.d.ts +18 -0
- package/dist/src/vite/signatureDocs.js +64 -0
- package/dist/src/vite/sourceTokens.d.ts +57 -0
- package/dist/src/vite/sourceTokens.js +164 -0
- package/dist/src/vite/storyCode.d.ts +0 -1
- package/dist/src/vite/storyCode.js +2 -3
- package/dist/src/vite/storyExports.d.ts +32 -0
- package/dist/src/vite/storyExports.js +27 -0
- package/dist/src/vite/storyFilesModule.d.ts +104 -20
- package/dist/src/vite/storyFilesModule.js +178 -60
- package/dist/src/vite/storyMeta.d.ts +20 -11
- package/dist/src/vite/storyMeta.js +74 -38
- package/dist/src/vite/storyParse.d.ts +18 -0
- package/dist/src/vite/storyParse.js +20 -0
- package/dist/src/vite/storyPatterns.d.ts +39 -0
- package/dist/src/vite/storyPatterns.js +100 -0
- package/dist/src/vite/storyPlay.d.ts +29 -0
- package/dist/src/vite/storyPlay.js +54 -0
- package/dist/src/vite/storyReach.d.ts +42 -0
- package/dist/src/vite/storyReach.js +43 -0
- package/dist/src/vite/storylessRoutes.d.ts +29 -0
- package/dist/src/vite/storylessRoutes.js +126 -0
- package/dist/src/vite/textModules.d.ts +63 -0
- package/dist/src/vite/textModules.js +132 -0
- package/dist/src/vite/textQueries.d.ts +26 -0
- package/dist/src/vite/textQueries.js +26 -0
- package/dist/src/vite/themeFromTokens.d.ts +35 -0
- package/dist/src/vite/themeFromTokens.js +73 -0
- package/dist/src/vite/tokenAnswers.d.ts +20 -0
- package/dist/src/vite/tokenAnswers.js +86 -0
- package/dist/src/vite/tokenClashes.d.ts +44 -0
- package/dist/src/vite/tokenClashes.js +45 -0
- package/dist/src/vite/touchMedia.d.ts +0 -1
- package/dist/src/vite/touchMedia.js +0 -1
- package/dist/src/vite/typeScriptPieces.d.ts +0 -1
- package/dist/src/vite/typeScriptPieces.js +2 -3
- package/dist/src/vite/usageGraph.d.ts +6 -1
- package/dist/src/vite/usageGraph.js +41 -7
- package/dist/src/vite/usageGuidance.d.ts +33 -0
- package/dist/src/vite/usageGuidance.js +45 -0
- package/dist/src/vite/usageModule.d.ts +0 -1
- package/dist/src/vite/usageModule.js +0 -1
- package/dist/src/vite/vitePaths.d.ts +53 -0
- package/dist/src/vite/vitePaths.js +53 -0
- package/dist/src/worstCase.d.ts +0 -1
- package/dist/src/worstCase.js +0 -1
- package/package.json +68 -5
- package/dist/bin/forgebook/agentClient.d.ts.map +0 -1
- package/dist/bin/forgebook/agentClient.js.map +0 -1
- package/dist/bin/forgebook/agentLoopCommands.d.mts.map +0 -1
- package/dist/bin/forgebook/agentLoopCommands.mjs.map +0 -1
- package/dist/bin/forgebook/agentText.d.ts.map +0 -1
- package/dist/bin/forgebook/agentText.js.map +0 -1
- package/dist/bin/forgebook/agentsText.d.ts.map +0 -1
- package/dist/bin/forgebook/agentsText.js.map +0 -1
- package/dist/bin/forgebook/catalogueCommands.d.ts.map +0 -1
- package/dist/bin/forgebook/catalogueCommands.js.map +0 -1
- package/dist/bin/forgebook/catalogueVite.d.ts.map +0 -1
- package/dist/bin/forgebook/catalogueVite.js.map +0 -1
- package/dist/bin/forgebook/errorsRun.d.ts.map +0 -1
- package/dist/bin/forgebook/errorsRun.js.map +0 -1
- package/dist/bin/forgebook/forgebook.d.mts.map +0 -1
- package/dist/bin/forgebook/forgebook.mjs.map +0 -1
- package/dist/bin/forgebook/importers/storybook.d.ts.map +0 -1
- package/dist/bin/forgebook/importers/storybook.js.map +0 -1
- package/dist/bin/forgebook/initCommands.d.mts.map +0 -1
- package/dist/bin/forgebook/initCommands.mjs.map +0 -1
- package/dist/bin/forgebook/initConfig.d.ts.map +0 -1
- package/dist/bin/forgebook/initConfig.js.map +0 -1
- package/dist/bin/forgebook/mcpTools.d.ts.map +0 -1
- package/dist/bin/forgebook/mcpTools.js.map +0 -1
- package/dist/bin/forgebook/newStories.d.ts.map +0 -1
- package/dist/bin/forgebook/newStories.js.map +0 -1
- package/dist/bin/forgebook/newStoriesFile.d.ts.map +0 -1
- package/dist/bin/forgebook/newStoriesFile.js.map +0 -1
- package/dist/bin/forgebook/storyCheckRun.d.ts.map +0 -1
- package/dist/bin/forgebook/storyCheckRun.js.map +0 -1
- package/dist/bin/forgebook/touchWindowRun.d.ts.map +0 -1
- package/dist/bin/forgebook/touchWindowRun.js.map +0 -1
- package/dist/bin/forgebook-docs/catalogueDocs.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/catalogueDocs.js.map +0 -1
- package/dist/bin/forgebook-docs/catalogueDocs.types.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/catalogueDocs.types.js.map +0 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.js.map +0 -1
- package/dist/bin/forgebook-docs/catalogueOptions.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/catalogueOptions.js.map +0 -1
- package/dist/bin/forgebook-docs/collectDocs.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/collectDocs.js.map +0 -1
- package/dist/bin/forgebook-docs/forgebook-docs.d.mts.map +0 -1
- package/dist/bin/forgebook-docs/forgebook-docs.mjs.map +0 -1
- package/dist/bin/forgebook-docs/llmsText.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/llmsText.js.map +0 -1
- package/dist/bin/forgebook-docs/moduleDocs.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/moduleDocs.js.map +0 -1
- package/dist/bin/forgebook-docs/sassDocs.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/sassDocs.js.map +0 -1
- package/dist/bin/forgebook-docs/sourceId.d.ts +0 -9
- package/dist/bin/forgebook-docs/sourceId.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/sourceId.js +0 -45
- package/dist/bin/forgebook-docs/sourceId.js.map +0 -1
- package/dist/bin/forgebook-texts/forgebook-texts.d.mts.map +0 -1
- package/dist/bin/forgebook-texts/forgebook-texts.mjs.map +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.d.ts.map +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.js.map +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.types.d.ts.map +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.types.js.map +0 -1
- package/dist/bin/frameworkDocs.d.ts.map +0 -1
- package/dist/bin/frameworkDocs.js.map +0 -1
- package/dist/src/a11y.d.ts.map +0 -1
- package/dist/src/a11y.js.map +0 -1
- package/dist/src/argTypes.d.ts.map +0 -1
- package/dist/src/argTypes.js.map +0 -1
- package/dist/src/backdrops.d.ts.map +0 -1
- package/dist/src/backdrops.js.map +0 -1
- package/dist/src/catalogue.d.ts.map +0 -1
- package/dist/src/catalogue.js.map +0 -1
- package/dist/src/componentDocs.d.ts.map +0 -1
- package/dist/src/componentDocs.js.map +0 -1
- package/dist/src/controlKeys.d.ts.map +0 -1
- package/dist/src/controlKeys.js.map +0 -1
- package/dist/src/frame/checkStory.d.ts.map +0 -1
- package/dist/src/frame/checkStory.js.map +0 -1
- package/dist/src/frame/frameClock.d.ts.map +0 -1
- package/dist/src/frame/frameClock.js.map +0 -1
- package/dist/src/frame/frameStatus.d.ts.map +0 -1
- package/dist/src/frame/frameStatus.js.map +0 -1
- package/dist/src/frame/frameView.d.ts.map +0 -1
- package/dist/src/frame/frameView.js.map +0 -1
- package/dist/src/frame/matrixLayout.d.ts.map +0 -1
- package/dist/src/frame/matrixLayout.js.map +0 -1
- package/dist/src/frame/measureTools.d.ts.map +0 -1
- package/dist/src/frame/measureTools.js.map +0 -1
- package/dist/src/frame/mountFrame.d.ts.map +0 -1
- package/dist/src/frame/mountFrame.js.map +0 -1
- package/dist/src/frame/playStory.d.ts.map +0 -1
- package/dist/src/frame/playStory.js.map +0 -1
- package/dist/src/frame/renderer.d.ts.map +0 -1
- package/dist/src/frame/renderer.js.map +0 -1
- package/dist/src/frame/settle.d.ts.map +0 -1
- package/dist/src/frame/settle.js.map +0 -1
- package/dist/src/frame/spillOutline.d.ts.map +0 -1
- package/dist/src/frame/spillOutline.js.map +0 -1
- package/dist/src/frame/staleModule.d.ts.map +0 -1
- package/dist/src/frame/staleModule.js.map +0 -1
- package/dist/src/frame/storyCanvas.d.ts.map +0 -1
- package/dist/src/frame/storyCanvas.js.map +0 -1
- package/dist/src/frame/storyHooks.d.ts.map +0 -1
- package/dist/src/frame/storyHooks.js.map +0 -1
- package/dist/src/frame/storyModule.d.ts.map +0 -1
- package/dist/src/frame/storyModule.js.map +0 -1
- package/dist/src/frame/storyRun.d.ts.map +0 -1
- package/dist/src/frame/storyRun.js.map +0 -1
- package/dist/src/frame/touchDots.d.ts.map +0 -1
- package/dist/src/frame/touchDots.js.map +0 -1
- package/dist/src/frame/touchEvents.d.ts.map +0 -1
- package/dist/src/frame/touchEvents.js.map +0 -1
- package/dist/src/frame/touchGesture.d.ts.map +0 -1
- package/dist/src/frame/touchGesture.js.map +0 -1
- package/dist/src/frame/touchLayer.d.ts.map +0 -1
- package/dist/src/frame/touchLayer.js.map +0 -1
- package/dist/src/frame/touchScroll.d.ts.map +0 -1
- package/dist/src/frame/touchScroll.js.map +0 -1
- package/dist/src/languages.d.ts.map +0 -1
- package/dist/src/languages.js.map +0 -1
- package/dist/src/liveErrors.d.ts.map +0 -1
- package/dist/src/liveErrors.js.map +0 -1
- package/dist/src/matrix.d.ts.map +0 -1
- package/dist/src/matrix.js.map +0 -1
- package/dist/src/messages.d.ts.map +0 -1
- package/dist/src/messages.js.map +0 -1
- package/dist/src/namedValues.d.ts.map +0 -1
- package/dist/src/namedValues.js.map +0 -1
- package/dist/src/namedViews.d.ts.map +0 -1
- package/dist/src/namedViews.js.map +0 -1
- package/dist/src/pageConfig.d.ts.map +0 -1
- package/dist/src/pageConfig.js.map +0 -1
- package/dist/src/playTrace.d.ts.map +0 -1
- package/dist/src/playTrace.js.map +0 -1
- package/dist/src/realTouch.d.ts.map +0 -1
- package/dist/src/realTouch.js.map +0 -1
- package/dist/src/shell/A11yTab.d.ts.map +0 -1
- package/dist/src/shell/A11yTab.js.map +0 -1
- package/dist/src/shell/ApiReference.d.ts.map +0 -1
- package/dist/src/shell/ApiReference.js.map +0 -1
- package/dist/src/shell/AppearanceMenu.d.ts.map +0 -1
- package/dist/src/shell/AppearanceMenu.js.map +0 -1
- package/dist/src/shell/BoxWidth.d.ts.map +0 -1
- package/dist/src/shell/BoxWidth.js.map +0 -1
- package/dist/src/shell/ClockControls.d.ts.map +0 -1
- package/dist/src/shell/ClockControls.js.map +0 -1
- package/dist/src/shell/Code.d.ts.map +0 -1
- package/dist/src/shell/Code.js.map +0 -1
- package/dist/src/shell/CodeTab.d.ts.map +0 -1
- package/dist/src/shell/CodeTab.js.map +0 -1
- package/dist/src/shell/CodeText.d.ts.map +0 -1
- package/dist/src/shell/CodeText.js.map +0 -1
- package/dist/src/shell/ComponentPage.d.ts.map +0 -1
- package/dist/src/shell/ComponentPage.js.map +0 -1
- package/dist/src/shell/ControlKeyField.d.ts.map +0 -1
- package/dist/src/shell/ControlKeyField.js.map +0 -1
- package/dist/src/shell/ControlRow.d.ts.map +0 -1
- package/dist/src/shell/ControlRow.js.map +0 -1
- package/dist/src/shell/Dock.d.ts.map +0 -1
- package/dist/src/shell/Dock.js.map +0 -1
- package/dist/src/shell/EventsTab.d.ts.map +0 -1
- package/dist/src/shell/EventsTab.js.map +0 -1
- package/dist/src/shell/Example.d.ts.map +0 -1
- package/dist/src/shell/Example.js.map +0 -1
- package/dist/src/shell/FrameView.d.ts.map +0 -1
- package/dist/src/shell/FrameView.js.map +0 -1
- package/dist/src/shell/HomePage.d.ts.map +0 -1
- package/dist/src/shell/HomePage.js.map +0 -1
- package/dist/src/shell/InfoTip.d.ts.map +0 -1
- package/dist/src/shell/InfoTip.js.map +0 -1
- package/dist/src/shell/InteractionsTab.d.ts.map +0 -1
- package/dist/src/shell/InteractionsTab.js.map +0 -1
- package/dist/src/shell/LogicMark.d.ts.map +0 -1
- package/dist/src/shell/LogicMark.js.map +0 -1
- package/dist/src/shell/MatrixPicker.d.ts.map +0 -1
- package/dist/src/shell/MatrixPicker.js.map +0 -1
- package/dist/src/shell/NamedViews.d.ts.map +0 -1
- package/dist/src/shell/NamedViews.js.map +0 -1
- package/dist/src/shell/PackageHtml.d.ts.map +0 -1
- package/dist/src/shell/PackageHtml.js.map +0 -1
- package/dist/src/shell/PartsTab.d.ts.map +0 -1
- package/dist/src/shell/PartsTab.js.map +0 -1
- package/dist/src/shell/PinnedControl.d.ts.map +0 -1
- package/dist/src/shell/PinnedControl.js.map +0 -1
- package/dist/src/shell/PropFields.d.ts.map +0 -1
- package/dist/src/shell/PropFields.js.map +0 -1
- package/dist/src/shell/PropsTab.d.ts.map +0 -1
- package/dist/src/shell/PropsTab.js.map +0 -1
- package/dist/src/shell/Segmented.d.ts.map +0 -1
- package/dist/src/shell/Segmented.js.map +0 -1
- package/dist/src/shell/Shell.d.ts.map +0 -1
- package/dist/src/shell/Shell.js.map +0 -1
- package/dist/src/shell/Sidebar.d.ts.map +0 -1
- package/dist/src/shell/Sidebar.js.map +0 -1
- package/dist/src/shell/SidebarEntries.d.ts.map +0 -1
- package/dist/src/shell/SidebarEntries.js.map +0 -1
- package/dist/src/shell/SidebarHandle.d.ts.map +0 -1
- package/dist/src/shell/SidebarHandle.js.map +0 -1
- package/dist/src/shell/SignatureReference.d.ts.map +0 -1
- package/dist/src/shell/SignatureReference.js.map +0 -1
- package/dist/src/shell/Stage.d.ts.map +0 -1
- package/dist/src/shell/Stage.js.map +0 -1
- package/dist/src/shell/StageTools.d.ts.map +0 -1
- package/dist/src/shell/StageTools.js.map +0 -1
- package/dist/src/shell/StageViewport.d.ts.map +0 -1
- package/dist/src/shell/StageViewport.js.map +0 -1
- package/dist/src/shell/StoryCodeBlock.d.ts.map +0 -1
- package/dist/src/shell/StoryCodeBlock.js.map +0 -1
- package/dist/src/shell/StoryPicker.d.ts.map +0 -1
- package/dist/src/shell/StoryPicker.js.map +0 -1
- package/dist/src/shell/Toolbar.d.ts.map +0 -1
- package/dist/src/shell/Toolbar.js.map +0 -1
- package/dist/src/shell/ToolbarControl.d.ts.map +0 -1
- package/dist/src/shell/ToolbarControl.js.map +0 -1
- package/dist/src/shell/UsedIn.d.ts.map +0 -1
- package/dist/src/shell/UsedIn.js.map +0 -1
- package/dist/src/shell/ViewMenu.d.ts.map +0 -1
- package/dist/src/shell/ViewMenu.js.map +0 -1
- package/dist/src/shell/WidthField.d.ts.map +0 -1
- package/dist/src/shell/WidthField.js.map +0 -1
- package/dist/src/shell/catalogueContext.d.ts.map +0 -1
- package/dist/src/shell/catalogueContext.js.map +0 -1
- package/dist/src/shell/codeTokens.d.ts.map +0 -1
- package/dist/src/shell/codeTokens.js.map +0 -1
- package/dist/src/shell/codeWriter.d.ts.map +0 -1
- package/dist/src/shell/codeWriter.js.map +0 -1
- package/dist/src/shell/compareVariants.d.ts.map +0 -1
- package/dist/src/shell/compareVariants.js.map +0 -1
- package/dist/src/shell/controlCycle.d.ts.map +0 -1
- package/dist/src/shell/controlCycle.js.map +0 -1
- package/dist/src/shell/dockTabs.d.ts.map +0 -1
- package/dist/src/shell/dockTabs.js.map +0 -1
- package/dist/src/shell/icons.d.ts.map +0 -1
- package/dist/src/shell/icons.js.map +0 -1
- package/dist/src/shell/keyboard.d.ts.map +0 -1
- package/dist/src/shell/keyboard.js.map +0 -1
- package/dist/src/shell/logicView.d.ts.map +0 -1
- package/dist/src/shell/logicView.js.map +0 -1
- package/dist/src/shell/mountShell.d.ts.map +0 -1
- package/dist/src/shell/mountShell.js.map +0 -1
- package/dist/src/shell/storyTouch.d.ts.map +0 -1
- package/dist/src/shell/storyTouch.js.map +0 -1
- package/dist/src/shell/strings.d.ts.map +0 -1
- package/dist/src/shell/strings.js.map +0 -1
- package/dist/src/shell/switchView.d.ts.map +0 -1
- package/dist/src/shell/switchView.js.map +0 -1
- package/dist/src/shell/treeSearch.d.ts.map +0 -1
- package/dist/src/shell/treeSearch.js.map +0 -1
- package/dist/src/shell/useAppearance.d.ts.map +0 -1
- package/dist/src/shell/useAppearance.js.map +0 -1
- package/dist/src/shell/useComponentDocs.d.ts.map +0 -1
- package/dist/src/shell/useComponentDocs.js.map +0 -1
- package/dist/src/shell/useControlKeys.d.ts.map +0 -1
- package/dist/src/shell/useControlKeys.js.map +0 -1
- package/dist/src/shell/useCopy.d.ts.map +0 -1
- package/dist/src/shell/useCopy.js.map +0 -1
- package/dist/src/shell/useFold.d.ts.map +0 -1
- package/dist/src/shell/useFold.js.map +0 -1
- package/dist/src/shell/useFrameMessages.d.ts.map +0 -1
- package/dist/src/shell/useFrameMessages.js.map +0 -1
- package/dist/src/shell/useFrameQueue.d.ts.map +0 -1
- package/dist/src/shell/useFrameQueue.js.map +0 -1
- package/dist/src/shell/useFullPage.d.ts.map +0 -1
- package/dist/src/shell/useFullPage.js.map +0 -1
- package/dist/src/shell/useLiveView.d.ts.map +0 -1
- package/dist/src/shell/useLiveView.js.map +0 -1
- package/dist/src/shell/useLoaded.d.ts.map +0 -1
- package/dist/src/shell/useLoaded.js.map +0 -1
- package/dist/src/shell/usePageDoc.d.ts.map +0 -1
- package/dist/src/shell/usePageDoc.js.map +0 -1
- package/dist/src/shell/usePopover.d.ts.map +0 -1
- package/dist/src/shell/usePopover.js.map +0 -1
- package/dist/src/shell/useRecentPages.d.ts.map +0 -1
- package/dist/src/shell/useRecentPages.js.map +0 -1
- package/dist/src/shell/useScrollMemory.d.ts.map +0 -1
- package/dist/src/shell/useScrollMemory.js.map +0 -1
- package/dist/src/shell/useShownView.d.ts.map +0 -1
- package/dist/src/shell/useShownView.js.map +0 -1
- package/dist/src/shell/useSidebarLayout.d.ts.map +0 -1
- package/dist/src/shell/useSidebarLayout.js.map +0 -1
- package/dist/src/shell/useStored.d.ts.map +0 -1
- package/dist/src/shell/useStored.js.map +0 -1
- package/dist/src/shell/useStoryCode.d.ts.map +0 -1
- package/dist/src/shell/useStoryCode.js.map +0 -1
- package/dist/src/shell/useStoryHeights.d.ts.map +0 -1
- package/dist/src/shell/useStoryHeights.js.map +0 -1
- package/dist/src/shell/useStoryIdsElement.d.ts.map +0 -1
- package/dist/src/shell/useStoryIdsElement.js.map +0 -1
- package/dist/src/shell/useStoryKeys.d.ts.map +0 -1
- package/dist/src/shell/useStoryKeys.js.map +0 -1
- package/dist/src/shell/useSystemDark.d.ts.map +0 -1
- package/dist/src/shell/useSystemDark.js.map +0 -1
- package/dist/src/shell/useToolbarLayout.d.ts.map +0 -1
- package/dist/src/shell/useToolbarLayout.js.map +0 -1
- package/dist/src/shell/useToolbarOverflow.d.ts.map +0 -1
- package/dist/src/shell/useToolbarOverflow.js.map +0 -1
- package/dist/src/shell/useWorstCase.d.ts.map +0 -1
- package/dist/src/shell/useWorstCase.js.map +0 -1
- package/dist/src/shell/worstArgs.d.ts.map +0 -1
- package/dist/src/shell/worstArgs.js.map +0 -1
- package/dist/src/sourceFiles.d.ts.map +0 -1
- package/dist/src/sourceFiles.js.map +0 -1
- package/dist/src/spills.d.ts.map +0 -1
- package/dist/src/spills.js.map +0 -1
- package/dist/src/storyBackground.d.ts.map +0 -1
- package/dist/src/storyBackground.js.map +0 -1
- package/dist/src/storyCheck.d.ts.map +0 -1
- package/dist/src/storyCheck.js.map +0 -1
- package/dist/src/storyClock.d.ts.map +0 -1
- package/dist/src/storyClock.js.map +0 -1
- package/dist/src/storyGlobals.d.ts.map +0 -1
- package/dist/src/storyGlobals.js.map +0 -1
- package/dist/src/storyHeights.d.ts.map +0 -1
- package/dist/src/storyHeights.js.map +0 -1
- package/dist/src/storyIdsElement.d.ts.map +0 -1
- package/dist/src/storyIdsElement.js.map +0 -1
- package/dist/src/storyTexts.d.ts.map +0 -1
- package/dist/src/storyTexts.js.map +0 -1
- package/dist/src/storyTree.d.ts.map +0 -1
- package/dist/src/storyTree.js.map +0 -1
- package/dist/src/switches.d.ts.map +0 -1
- package/dist/src/switches.js.map +0 -1
- package/dist/src/toolbarLayout.d.ts.map +0 -1
- package/dist/src/toolbarLayout.js.map +0 -1
- package/dist/src/usedIn.d.ts.map +0 -1
- package/dist/src/usedIn.js.map +0 -1
- package/dist/src/viewState.d.ts.map +0 -1
- package/dist/src/viewState.js.map +0 -1
- package/dist/src/viewWords.d.ts.map +0 -1
- package/dist/src/viewWords.js.map +0 -1
- package/dist/src/vite/adapter.d.ts.map +0 -1
- package/dist/src/vite/adapter.js.map +0 -1
- package/dist/src/vite/agent.types.d.ts.map +0 -1
- package/dist/src/vite/agent.types.js.map +0 -1
- package/dist/src/vite/agentApi.d.ts.map +0 -1
- package/dist/src/vite/agentApi.js.map +0 -1
- package/dist/src/vite/agentRoutes.d.ts.map +0 -1
- package/dist/src/vite/agentRoutes.js.map +0 -1
- package/dist/src/vite/autoTitle.d.ts.map +0 -1
- package/dist/src/vite/autoTitle.js.map +0 -1
- package/dist/src/vite/componentPage.d.ts.map +0 -1
- package/dist/src/vite/componentPage.js.map +0 -1
- package/dist/src/vite/config.d.ts.map +0 -1
- package/dist/src/vite/config.js.map +0 -1
- package/dist/src/vite/configFile.d.ts.map +0 -1
- package/dist/src/vite/configFile.js.map +0 -1
- package/dist/src/vite/docsExtractor.d.ts.map +0 -1
- package/dist/src/vite/docsExtractor.js.map +0 -1
- package/dist/src/vite/docsProgram.d.ts.map +0 -1
- package/dist/src/vite/docsProgram.js.map +0 -1
- package/dist/src/vite/docsWorker.d.ts.map +0 -1
- package/dist/src/vite/docsWorker.js.map +0 -1
- package/dist/src/vite/forcedStates.d.ts.map +0 -1
- package/dist/src/vite/forcedStates.js.map +0 -1
- package/dist/src/vite/forgebookPlugin.d.ts.map +0 -1
- package/dist/src/vite/forgebookPlugin.js.map +0 -1
- package/dist/src/vite/heightsRoute.d.ts.map +0 -1
- package/dist/src/vite/heightsRoute.js.map +0 -1
- package/dist/src/vite/highlightCode.d.ts.map +0 -1
- package/dist/src/vite/highlightCode.js.map +0 -1
- package/dist/src/vite/indexStoryFile.d.ts.map +0 -1
- package/dist/src/vite/indexStoryFile.js.map +0 -1
- package/dist/src/vite/mcpProtocol.d.ts.map +0 -1
- package/dist/src/vite/mcpProtocol.js.map +0 -1
- package/dist/src/vite/pages.d.ts.map +0 -1
- package/dist/src/vite/pages.js.map +0 -1
- package/dist/src/vite/prebundled.d.ts.map +0 -1
- package/dist/src/vite/prebundled.js.map +0 -1
- package/dist/src/vite/storyCode.d.ts.map +0 -1
- package/dist/src/vite/storyCode.js.map +0 -1
- package/dist/src/vite/storyFilesModule.d.ts.map +0 -1
- package/dist/src/vite/storyFilesModule.js.map +0 -1
- package/dist/src/vite/storyMeta.d.ts.map +0 -1
- package/dist/src/vite/storyMeta.js.map +0 -1
- package/dist/src/vite/touchMedia.d.ts.map +0 -1
- package/dist/src/vite/touchMedia.js.map +0 -1
- package/dist/src/vite/typeScriptPieces.d.ts.map +0 -1
- package/dist/src/vite/typeScriptPieces.js.map +0 -1
- package/dist/src/vite/usageGraph.d.ts.map +0 -1
- package/dist/src/vite/usageGraph.js.map +0 -1
- package/dist/src/vite/usageModule.d.ts.map +0 -1
- package/dist/src/vite/usageModule.js.map +0 -1
- package/dist/src/worstCase.d.ts.map +0 -1
- package/dist/src/worstCase.js.map +0 -1
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The modules the plugin answers from what it read of the story files: a story file's component docs, a pattern's
|
|
3
|
+
* index and loaders, a group's "Used in" and what its stories reach.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* The modules made from a file's text (a story's code, a component's page, Markdown) are `textModules.ts`, which the
|
|
7
|
+
* plugin loads on their first query: what they need is heavy, and a story's page needs none of it.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import type { DiskCache } from "./diskCache.ts";
|
|
12
|
+
import type { DocsExtractor, DocsResult } from "./docsExtractor.ts";
|
|
13
|
+
import type { PackJson } from "./packedModule.ts";
|
|
14
|
+
import { type GroupLoaders, type IndexedStoryFile, type IsFileKept, type KeptIndex } from "./storyFilesModule.ts";
|
|
15
|
+
/**
|
|
16
|
+
* The id of a group of story files' module: virtual, with the declaring module's folder and the patterns after it,
|
|
17
|
+
* whether a `?forgebook-files` import or the group's specifier (`FILES_SPECIFIER_PREFIX`) names it.
|
|
18
|
+
*/
|
|
19
|
+
export declare const FILES_PREFIX = "\0virtual:forgebook-files:";
|
|
20
|
+
/** The resolved id of a group's "Used in" module: Rollup's mark of a virtual module, then its import's specifier. */
|
|
21
|
+
export declare const USAGE_ID_PREFIX = "\0virtual:forgebook-usage:";
|
|
22
|
+
/** The resolved id of a group's reach module, the same way. */
|
|
23
|
+
export declare const REACH_ID_PREFIX = "\0virtual:forgebook-reach:";
|
|
24
|
+
/** The resolved id of a group's texts module, a build's, the same way. */
|
|
25
|
+
export declare const TEXTS_ID_PREFIX = "\0virtual:forgebook-texts:";
|
|
26
|
+
/** The resolved id of a group of story files' search index. */
|
|
27
|
+
export declare const SEARCH_ID_PREFIX = "\0virtual:forgebook-search:";
|
|
28
|
+
/** The resolved id of a group of docs pages' search index. */
|
|
29
|
+
export declare const PAGES_SEARCH_ID_PREFIX = "\0virtual:forgebook-search-pages:";
|
|
30
|
+
/**
|
|
31
|
+
* A story file's component docs as the panel reads them, or `{ error }`.
|
|
32
|
+
*
|
|
33
|
+
* @param component - what the extractor read for the story file.
|
|
34
|
+
* @param watch - adds a file whose edit renews what holds them.
|
|
35
|
+
*/
|
|
36
|
+
export declare const docsValue: (component: DocsResult, watch: (file: string) => void) => unknown;
|
|
37
|
+
/**
|
|
38
|
+
* The module that answers a `?forgebook-docs` import: the story file's component docs, or `{ error }` for the panel.
|
|
39
|
+
*
|
|
40
|
+
* @param component - what the extractor read for the story file.
|
|
41
|
+
* @param watch - adds a file whose edit renews the module.
|
|
42
|
+
*/
|
|
43
|
+
export declare const docsModule: (component: DocsResult, watch: (file: string) => void) => {
|
|
44
|
+
code: string;
|
|
45
|
+
moduleType: "js";
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* The module of a group of story files: every listed story file's index and loaders; with the files, indexed,
|
|
49
|
+
* which the dev server keeps to tell an edit that changes the list.
|
|
50
|
+
*
|
|
51
|
+
* @param id - the module's id (`FILES_PREFIX`, then the group: `storyFilesGroupText`).
|
|
52
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
53
|
+
* @param loaders - the group's loaders besides its story files'.
|
|
54
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
55
|
+
* @param warm - starts reading the docs of a story file ahead of its request; none in a test run.
|
|
56
|
+
* @param startTexts - a build's: starts reading the files' docs, code and pages, which the module imports from the
|
|
57
|
+
* group's texts module (`builtTexts.ts`); none imports each from its query.
|
|
58
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
59
|
+
* @throws when a story file cannot be indexed.
|
|
60
|
+
*/
|
|
61
|
+
export declare const patternModule: (id: string, watch: (file: string) => void, loaders: GroupLoaders, cache: DiskCache<KeptIndex> | undefined, warm: ((storyFile: string) => void) | undefined, startTexts?: (files: readonly IndexedStoryFile[]) => void, isKept?: IsFileKept) => {
|
|
62
|
+
code: string;
|
|
63
|
+
moduleType: "js";
|
|
64
|
+
files: readonly IndexedStoryFile[];
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Whether a story file added or removed changes what a group of story files lists: listed now and not when its module
|
|
68
|
+
* was served, or the other way round. A file no pattern lists, or one a `!` pattern leaves out, changes nothing, so
|
|
69
|
+
* the pages need no reload for it.
|
|
70
|
+
*
|
|
71
|
+
* @param id - the group's module's id (`FILES_PREFIX`, then the group).
|
|
72
|
+
* @param listed - the files its module listed when served, absolute in Vite's form; none when it could not be made.
|
|
73
|
+
* @param file - the file added or removed.
|
|
74
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
75
|
+
*/
|
|
76
|
+
export declare const isListingChanged: (id: string, listed: ReadonlySet<string> | undefined, file: string, isKept?: IsFileKept) => boolean;
|
|
77
|
+
/**
|
|
78
|
+
* The modules a story file added or removed renews: the groups whose list it changes (`isListingChanged`) and, with
|
|
79
|
+
* them, the modules that read their files; none when it changes no list.
|
|
80
|
+
*
|
|
81
|
+
* @param served - the groups' modules, with the files each listed when served.
|
|
82
|
+
* @param file - the file added or removed.
|
|
83
|
+
* @param readers - the modules that read the groups' files: their "Used in" and search indexes.
|
|
84
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
85
|
+
*/
|
|
86
|
+
export declare const listingRenewals: (served: ReadonlyMap<string, ReadonlySet<string> | undefined>, file: string, readers: readonly string[], isKept?: IsFileKept) => readonly string[] | undefined;
|
|
87
|
+
/**
|
|
88
|
+
* A group's "Used in" module: for each component, the components that use it, packed once per title and list of
|
|
89
|
+
* stories (`packedUsage`), which a page reads.
|
|
90
|
+
*
|
|
91
|
+
* @param id - the module's id (`USAGE_ID_PREFIX`, then the group: `storyFilesGroupText`).
|
|
92
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
93
|
+
* @param usage - reads the facts in the docs worker.
|
|
94
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
95
|
+
* @param pack - writes the module's JSON as its value: as it is on a dev server, in a gzipped file of a build's.
|
|
96
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
97
|
+
*/
|
|
98
|
+
export declare const usageModule: (id: string, watch: (file: string) => void, usage: DocsExtractor["usage"], cache: DiskCache<KeptIndex> | undefined, pack: PackJson, isKept?: IsFileKept) => Promise<{
|
|
99
|
+
code: string;
|
|
100
|
+
moduleType: "js";
|
|
101
|
+
}>;
|
|
102
|
+
/**
|
|
103
|
+
* A group's reach module: the files each story reaches, which only the dev server's tools read (a check of what a
|
|
104
|
+
* change touches). A module of its own, since a large library's stories reach thousands of files each, which a page
|
|
105
|
+
* showing "Used in" must not download.
|
|
106
|
+
*
|
|
107
|
+
* @param id - the module's id (`REACH_ID_PREFIX`, then the group: `storyFilesGroupText`).
|
|
108
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
109
|
+
* @param usage - reads the facts in the docs worker.
|
|
110
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
111
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
112
|
+
*/
|
|
113
|
+
export declare const reachModule: (id: string, watch: (file: string) => void, usage: DocsExtractor["usage"], cache: DiskCache<KeptIndex> | undefined, isKept?: IsFileKept) => Promise<{
|
|
114
|
+
code: string;
|
|
115
|
+
moduleType: "js";
|
|
116
|
+
}>;
|
|
117
|
+
/** A search index, made: its module, and whether it is a group of docs pages' (renewed as pages come and go). */
|
|
118
|
+
export type SearchIndexModule = {
|
|
119
|
+
/** The module. */
|
|
120
|
+
readonly module: {
|
|
121
|
+
readonly code: string;
|
|
122
|
+
readonly moduleType: "js";
|
|
123
|
+
};
|
|
124
|
+
/** Whether it indexes docs pages, not story files. */
|
|
125
|
+
readonly isPages: boolean;
|
|
126
|
+
};
|
|
127
|
+
/**
|
|
128
|
+
* A group's search index, when the id names one: its story files' (what their components' docs and pages say) or its
|
|
129
|
+
* docs pages'. The search's code, and the Markdown reader it needs, load with the first.
|
|
130
|
+
*
|
|
131
|
+
* @param id - the module's id.
|
|
132
|
+
* @param watch - adds a file whose edit renews the module.
|
|
133
|
+
* @param read - a story file's component docs, how the module writes its JSON, and which listed files may be read.
|
|
134
|
+
* @returns the index; none for another id.
|
|
135
|
+
*/
|
|
136
|
+
export declare const searchIndexModule: (id: string, watch: (file: string) => void, read: {
|
|
137
|
+
readonly docsOf: (storyFile: string) => Promise<DocsResult>;
|
|
138
|
+
readonly isServing: boolean;
|
|
139
|
+
readonly pack: PackJson;
|
|
140
|
+
readonly isKept: IsFileKept;
|
|
141
|
+
}) => Promise<SearchIndexModule | undefined>;
|
|
142
|
+
/** What a catalogue's search indexes read and tell: what `searchIndexes` makes. */
|
|
143
|
+
export type SearchIndexes = {
|
|
144
|
+
/** A story file's component docs: a dev server reads them again each time, as they change while it runs. */
|
|
145
|
+
readonly docsOf: (storyFile: string) => Promise<DocsResult>;
|
|
146
|
+
/**
|
|
147
|
+
* A group's search index, when the id names one; none for another id.
|
|
148
|
+
*
|
|
149
|
+
* @param id - the module's id.
|
|
150
|
+
* @param watch - adds a file whose edit renews the module.
|
|
151
|
+
* @param pack - writes the index's JSON as the module's value.
|
|
152
|
+
*/
|
|
153
|
+
readonly moduleOf: (id: string, watch: (file: string) => void, pack: PackJson) => Promise<{
|
|
154
|
+
code: string;
|
|
155
|
+
moduleType: "js";
|
|
156
|
+
} | undefined>;
|
|
157
|
+
};
|
|
158
|
+
/**
|
|
159
|
+
* The search's indexes of a plugin: a build reads each component's docs once, for its page and its index.
|
|
160
|
+
*
|
|
161
|
+
* @param read - reads a story file's component docs, says whether a dev server runs, keeps each index's id with the
|
|
162
|
+
* modules an edit renews (a docs pages' index with the docs pages'), and says which listed files may be read.
|
|
163
|
+
*/
|
|
164
|
+
export declare const searchIndexes: (read: {
|
|
165
|
+
readonly extract: (storyFile: string) => Promise<DocsResult>;
|
|
166
|
+
readonly isServing: () => boolean;
|
|
167
|
+
readonly track: (id: string, isPages: boolean) => void;
|
|
168
|
+
readonly isKept: IsFileKept;
|
|
169
|
+
}) => SearchIndexes;
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The modules the plugin answers from what it read of the story files: a story file's component docs, a pattern's
|
|
3
|
+
* index and loaders, a group's "Used in" and what its stories reach.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* The modules made from a file's text (a story's code, a component's page, Markdown) are `textModules.ts`, which the
|
|
7
|
+
* plugin loads on their first query: what they need is heavy, and a story's page needs none of it.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import { codeLiteral } from "../codeLiteral.js";
|
|
12
|
+
import { packedUsage } from "../usedIn.js";
|
|
13
|
+
import { EVERY_FILE, FILES_SPECIFIER_PREFIX, indexedStoryFiles, PAGES_SEARCH_PREFIX, REACH_PREFIX, SEARCH_PREFIX, storyFileKeys, storyFilesCode, storyFilesGroupOf, TEXTS_PREFIX, USAGE_PREFIX } from "./storyFilesModule.js";
|
|
14
|
+
import { storyReach } from "./storyReach.js";
|
|
15
|
+
import { joinedUsage } from "./usageModule.js";
|
|
16
|
+
import { VITE_PATHS } from "./vitePaths.js";
|
|
17
|
+
/**
|
|
18
|
+
* The id of a group of story files' module: virtual, with the declaring module's folder and the patterns after it,
|
|
19
|
+
* whether a `?forgebook-files` import or the group's specifier (`FILES_SPECIFIER_PREFIX`) names it.
|
|
20
|
+
*/
|
|
21
|
+
export const FILES_PREFIX = `\0${FILES_SPECIFIER_PREFIX}`;
|
|
22
|
+
/** The resolved id of a group's "Used in" module: Rollup's mark of a virtual module, then its import's specifier. */
|
|
23
|
+
export const USAGE_ID_PREFIX = `\0${USAGE_PREFIX}`;
|
|
24
|
+
/** The resolved id of a group's reach module, the same way. */
|
|
25
|
+
export const REACH_ID_PREFIX = `\0${REACH_PREFIX}`;
|
|
26
|
+
/** The resolved id of a group's texts module, a build's, the same way. */
|
|
27
|
+
export const TEXTS_ID_PREFIX = `\0${TEXTS_PREFIX}`;
|
|
28
|
+
/** The resolved id of a group of story files' search index. */
|
|
29
|
+
export const SEARCH_ID_PREFIX = `\0${SEARCH_PREFIX}`;
|
|
30
|
+
/** The resolved id of a group of docs pages' search index. */
|
|
31
|
+
export const PAGES_SEARCH_ID_PREFIX = `\0${PAGES_SEARCH_PREFIX}`;
|
|
32
|
+
/**
|
|
33
|
+
* A story file's component docs as the panel reads them, or `{ error }`.
|
|
34
|
+
*
|
|
35
|
+
* @param component - what the extractor read for the story file.
|
|
36
|
+
* @param watch - adds a file whose edit renews what holds them.
|
|
37
|
+
*/
|
|
38
|
+
export const docsValue = (component, watch) => {
|
|
39
|
+
// the docs come from the component's files, not the story file the id names: Vite renews them on an edit only if
|
|
40
|
+
// it watches those files too
|
|
41
|
+
if (typeof component !== "string" && "sources" in component) {
|
|
42
|
+
for (const file of component.sources)
|
|
43
|
+
watch(file);
|
|
44
|
+
}
|
|
45
|
+
return typeof component === "string" ? { error: component } : component.docs;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* The module that answers a `?forgebook-docs` import: the story file's component docs, or `{ error }` for the panel.
|
|
49
|
+
*
|
|
50
|
+
* @param component - what the extractor read for the story file.
|
|
51
|
+
* @param watch - adds a file whose edit renews the module.
|
|
52
|
+
*/
|
|
53
|
+
export const docsModule = (component, watch) => ({
|
|
54
|
+
code: `export default ${codeLiteral(docsValue(component, watch))};`,
|
|
55
|
+
moduleType: "js"
|
|
56
|
+
});
|
|
57
|
+
/**
|
|
58
|
+
* The module of a group of story files: every listed story file's index and loaders; with the files, indexed,
|
|
59
|
+
* which the dev server keeps to tell an edit that changes the list.
|
|
60
|
+
*
|
|
61
|
+
* @param id - the module's id (`FILES_PREFIX`, then the group: `storyFilesGroupText`).
|
|
62
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
63
|
+
* @param loaders - the group's loaders besides its story files'.
|
|
64
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
65
|
+
* @param warm - starts reading the docs of a story file ahead of its request; none in a test run.
|
|
66
|
+
* @param startTexts - a build's: starts reading the files' docs, code and pages, which the module imports from the
|
|
67
|
+
* group's texts module (`builtTexts.ts`); none imports each from its query.
|
|
68
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
69
|
+
* @throws when a story file cannot be indexed.
|
|
70
|
+
*/
|
|
71
|
+
export const patternModule = (id, watch, loaders, cache, warm, startTexts, isKept = EVERY_FILE) => {
|
|
72
|
+
const { root, patterns } = storyFilesGroupOf(id.slice(FILES_PREFIX.length));
|
|
73
|
+
const files = indexedStoryFiles(root, patterns, watch, cache, isKept);
|
|
74
|
+
const [first] = files;
|
|
75
|
+
if (first !== undefined)
|
|
76
|
+
warm?.(first.file);
|
|
77
|
+
startTexts?.(files);
|
|
78
|
+
const code = storyFilesCode(root, patterns, files, loaders, startTexts !== undefined);
|
|
79
|
+
return { code, moduleType: "js", files };
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Whether a story file added or removed changes what a group of story files lists: listed now and not when its module
|
|
83
|
+
* was served, or the other way round. A file no pattern lists, or one a `!` pattern leaves out, changes nothing, so
|
|
84
|
+
* the pages need no reload for it.
|
|
85
|
+
*
|
|
86
|
+
* @param id - the group's module's id (`FILES_PREFIX`, then the group).
|
|
87
|
+
* @param listed - the files its module listed when served, absolute in Vite's form; none when it could not be made.
|
|
88
|
+
* @param file - the file added or removed.
|
|
89
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
90
|
+
*/
|
|
91
|
+
export const isListingChanged = (id, listed, file, isKept = EVERY_FILE) => {
|
|
92
|
+
if (listed === undefined)
|
|
93
|
+
return true;
|
|
94
|
+
const { root, patterns } = storyFilesGroupOf(id.slice(FILES_PREFIX.length));
|
|
95
|
+
const isListed = storyFileKeys(root, patterns, isKept).includes(VITE_PATHS.relativeKey(root, file));
|
|
96
|
+
return isListed !== listed.has(VITE_PATHS.normalize(file));
|
|
97
|
+
};
|
|
98
|
+
/**
|
|
99
|
+
* The modules a story file added or removed renews: the groups whose list it changes (`isListingChanged`) and, with
|
|
100
|
+
* them, the modules that read their files; none when it changes no list.
|
|
101
|
+
*
|
|
102
|
+
* @param served - the groups' modules, with the files each listed when served.
|
|
103
|
+
* @param file - the file added or removed.
|
|
104
|
+
* @param readers - the modules that read the groups' files: their "Used in" and search indexes.
|
|
105
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
106
|
+
*/
|
|
107
|
+
export const listingRenewals = (served, file, readers, isKept = EVERY_FILE) => {
|
|
108
|
+
const changed = [...served]
|
|
109
|
+
.filter(([id, listed]) => isListingChanged(id, listed, file, isKept))
|
|
110
|
+
.map(([id]) => id);
|
|
111
|
+
return changed.length === 0 ? undefined : [...changed, ...readers];
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* A group's facts: its story files indexed, what their stories render read in the docs worker.
|
|
115
|
+
*
|
|
116
|
+
* @param group - the group (`storyFilesGroupText`).
|
|
117
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
118
|
+
* @param usage - reads the facts in the docs worker.
|
|
119
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
120
|
+
* @param isKept - whether a listed file may be read.
|
|
121
|
+
*/
|
|
122
|
+
const groupUsage = async (group, watch, usage, cache, isKept) => {
|
|
123
|
+
const { root, patterns } = storyFilesGroupOf(group);
|
|
124
|
+
const files = indexedStoryFiles(root, patterns, watch, cache, isKept);
|
|
125
|
+
const graph = await usage(files.map((file) => ({
|
|
126
|
+
storyFile: file.file,
|
|
127
|
+
exports: file.index.stories.map((story) => story.exportName)
|
|
128
|
+
})));
|
|
129
|
+
return { files, graph };
|
|
130
|
+
};
|
|
131
|
+
/**
|
|
132
|
+
* A group's "Used in" module: for each component, the components that use it, packed once per title and list of
|
|
133
|
+
* stories (`packedUsage`), which a page reads.
|
|
134
|
+
*
|
|
135
|
+
* @param id - the module's id (`USAGE_ID_PREFIX`, then the group: `storyFilesGroupText`).
|
|
136
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
137
|
+
* @param usage - reads the facts in the docs worker.
|
|
138
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
139
|
+
* @param pack - writes the module's JSON as its value: as it is on a dev server, in a gzipped file of a build's.
|
|
140
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
141
|
+
*/
|
|
142
|
+
export const usageModule = async (id, watch, usage, cache, pack, isKept = EVERY_FILE) => {
|
|
143
|
+
const { files, graph } = await groupUsage(id.slice(USAGE_ID_PREFIX.length), watch, usage, cache, isKept);
|
|
144
|
+
const answer = typeof graph === "string"
|
|
145
|
+
? { error: graph }
|
|
146
|
+
: packedUsage(joinedUsage(graph, files.map((file) => ({
|
|
147
|
+
storyFile: file.file,
|
|
148
|
+
title: file.index.title,
|
|
149
|
+
related: file.index.related ?? []
|
|
150
|
+
}))));
|
|
151
|
+
return { code: `export default ${pack(JSON.stringify(answer))};`, moduleType: "js" };
|
|
152
|
+
};
|
|
153
|
+
/**
|
|
154
|
+
* A group's reach module: the files each story reaches, which only the dev server's tools read (a check of what a
|
|
155
|
+
* change touches). A module of its own, since a large library's stories reach thousands of files each, which a page
|
|
156
|
+
* showing "Used in" must not download.
|
|
157
|
+
*
|
|
158
|
+
* @param id - the module's id (`REACH_ID_PREFIX`, then the group: `storyFilesGroupText`).
|
|
159
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
160
|
+
* @param usage - reads the facts in the docs worker.
|
|
161
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
162
|
+
* @param isKept - whether a listed file may be read; every one by default.
|
|
163
|
+
*/
|
|
164
|
+
export const reachModule = async (id, watch, usage, cache, isKept = EVERY_FILE) => {
|
|
165
|
+
const { files, graph } = await groupUsage(id.slice(REACH_ID_PREFIX.length), watch, usage, cache, isKept);
|
|
166
|
+
const reach = typeof graph === "string"
|
|
167
|
+
? []
|
|
168
|
+
: storyReach(graph, files.map((file) => ({ storyFile: file.file, title: file.index.title })));
|
|
169
|
+
return { code: `export default ${codeLiteral(reach)};`, moduleType: "js" };
|
|
170
|
+
};
|
|
171
|
+
/**
|
|
172
|
+
* A group's search index, when the id names one: its story files' (what their components' docs and pages say) or its
|
|
173
|
+
* docs pages'. The search's code, and the Markdown reader it needs, load with the first.
|
|
174
|
+
*
|
|
175
|
+
* @param id - the module's id.
|
|
176
|
+
* @param watch - adds a file whose edit renews the module.
|
|
177
|
+
* @param read - a story file's component docs, how the module writes its JSON, and which listed files may be read.
|
|
178
|
+
* @returns the index; none for another id.
|
|
179
|
+
*/
|
|
180
|
+
export const searchIndexModule = async (id, watch, read) => {
|
|
181
|
+
const isPages = id.startsWith(PAGES_SEARCH_ID_PREFIX);
|
|
182
|
+
if (!isPages && !id.startsWith(SEARCH_ID_PREFIX))
|
|
183
|
+
return undefined;
|
|
184
|
+
const { storySearchModule, pagesSearchModule } = await import("./searchModule.js");
|
|
185
|
+
const { root, patterns } = storyFilesGroupOf(id.slice((isPages ? PAGES_SEARCH_ID_PREFIX : SEARCH_ID_PREFIX).length));
|
|
186
|
+
const code = isPages
|
|
187
|
+
? pagesSearchModule(root, patterns, watch, read.pack, read.isKept)
|
|
188
|
+
: await storySearchModule(root, patterns, watch, read.docsOf, read.isServing, read.pack, read.isKept);
|
|
189
|
+
return { module: { code, moduleType: "js" }, isPages };
|
|
190
|
+
};
|
|
191
|
+
/**
|
|
192
|
+
* The search's indexes of a plugin: a build reads each component's docs once, for its page and its index.
|
|
193
|
+
*
|
|
194
|
+
* @param read - reads a story file's component docs, says whether a dev server runs, keeps each index's id with the
|
|
195
|
+
* modules an edit renews (a docs pages' index with the docs pages'), and says which listed files may be read.
|
|
196
|
+
*/
|
|
197
|
+
export const searchIndexes = (read) => {
|
|
198
|
+
const built = new Map();
|
|
199
|
+
const docsOf = (storyFile) => {
|
|
200
|
+
if (read.isServing())
|
|
201
|
+
return read.extract(storyFile);
|
|
202
|
+
const docs = built.get(storyFile) ?? read.extract(storyFile);
|
|
203
|
+
built.set(storyFile, docs);
|
|
204
|
+
return docs;
|
|
205
|
+
};
|
|
206
|
+
return {
|
|
207
|
+
docsOf,
|
|
208
|
+
moduleOf: async (id, watch, pack) => {
|
|
209
|
+
const search = await searchIndexModule(id, watch, {
|
|
210
|
+
docsOf,
|
|
211
|
+
isServing: read.isServing(),
|
|
212
|
+
pack,
|
|
213
|
+
isKept: read.isKept
|
|
214
|
+
});
|
|
215
|
+
if (search === undefined)
|
|
216
|
+
return undefined;
|
|
217
|
+
read.track(id, search.isPages);
|
|
218
|
+
return search.module;
|
|
219
|
+
}
|
|
220
|
+
};
|
|
221
|
+
};
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The packages Vite pre-bundles, and the story files it scans, before the catalogue's first page opens, so the pages
|
|
3
|
+
* never reload while they load.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Vite finds what to pre-bundle by scanning the app's HTML and entries on disk; a catalogue's pages and their entries
|
|
7
|
+
* are generated (`pages.ts`), so without this list Vite discovers each package as a page imports it, pre-bundles it
|
|
8
|
+
* then, and reloads the page, more than once on a first start. The list is the shell's and the frame's packages (the
|
|
9
|
+
* shell is React), the framework's, Testing Library's when the project installs it, what the plugins name, and
|
|
10
|
+
* Forgebook's own modules and the plugins' when they come from an installed package (a linked one is source, which Vite
|
|
11
|
+
* does not pre-bundle). axe is not among them: the frame loads it as a script (`axeScript.ts`). A package the project
|
|
12
|
+
* cannot resolve is left out, since Vite fails on one it cannot find. Pure: a resolver in, names out.
|
|
13
|
+
*
|
|
14
|
+
* @module
|
|
15
|
+
*/
|
|
1
16
|
import { type ResolvedConfig } from "./configFile.ts";
|
|
2
17
|
/**
|
|
3
18
|
* Resolves a package as Node would from the catalogue's folder: its file's real path, or none when it is not there.
|
|
@@ -10,13 +25,12 @@ export type Resolve = (name: string) => string | undefined;
|
|
|
10
25
|
*
|
|
11
26
|
* @param config - the catalogue's configuration.
|
|
12
27
|
* @param resolve - resolves a package from the catalogue's folder.
|
|
13
|
-
* @param resolveOwn - resolves a package from the core's own folder.
|
|
14
28
|
*/
|
|
15
|
-
export declare const prebundled: (config: ResolvedConfig, resolve: Resolve
|
|
29
|
+
export declare const prebundled: (config: ResolvedConfig, resolve: Resolve) => string[];
|
|
16
30
|
/**
|
|
17
31
|
* The story files Vite scans for what their components import, before the first page opens: the project's own
|
|
18
|
-
* patterns,
|
|
19
|
-
* the project cannot resolve, or read, adds none.
|
|
32
|
+
* patterns, each source's, read from its module's `?forgebook-files` imports (relative to the module), and the
|
|
33
|
+
* previews. A source the project cannot resolve, or read, adds none.
|
|
20
34
|
*
|
|
21
35
|
* @remarks
|
|
22
36
|
* Without the sources' files, a package a source's stories import (`storybook/test`, a component's own dependency) is
|
|
@@ -27,4 +41,3 @@ export declare const prebundled: (config: ResolvedConfig, resolve: Resolve, reso
|
|
|
27
41
|
* @param readText - reads a file's text; none when it cannot.
|
|
28
42
|
*/
|
|
29
43
|
export declare const scannedEntries: (config: ResolvedConfig, resolve: Resolve, readText: (file: string) => string | undefined) => string[];
|
|
30
|
-
//# sourceMappingURL=prebundled.d.ts.map
|
|
@@ -6,14 +6,17 @@
|
|
|
6
6
|
* Vite finds what to pre-bundle by scanning the app's HTML and entries on disk; a catalogue's pages and their entries
|
|
7
7
|
* are generated (`pages.ts`), so without this list Vite discovers each package as a page imports it, pre-bundles it
|
|
8
8
|
* then, and reloads the page, more than once on a first start. The list is the shell's and the frame's packages (the
|
|
9
|
-
* shell is React), the framework's, Testing Library's when the project installs it,
|
|
10
|
-
* they come from an installed package (a linked one is source, which Vite
|
|
9
|
+
* shell is React), the framework's, Testing Library's when the project installs it, what the plugins name, and
|
|
10
|
+
* Forgebook's own modules and the plugins' when they come from an installed package (a linked one is source, which Vite
|
|
11
|
+
* does not pre-bundle). axe is not among them: the frame loads it as a script (`axeScript.ts`). A package the project
|
|
11
12
|
* cannot resolve is left out, since Vite fails on one it cannot find. Pure: a resolver in, names out.
|
|
12
13
|
*
|
|
13
14
|
* @module
|
|
14
15
|
*/
|
|
15
|
-
import { dirname, join } from "node:path";
|
|
16
16
|
import { PLAY_TOOLS_PACKAGES } from "./configFile.js";
|
|
17
|
+
import { hasPluginViews, PLUGIN_HOSTS_MODULE, WRITTEN_HOME_MODULE } from "./pages.js";
|
|
18
|
+
import { pluginModules } from "./pluginConfig.js";
|
|
19
|
+
import { VITE_PATHS } from "./vitePaths.js";
|
|
17
20
|
/** What the shell and the frame import in the browser from the project's packages (React is a peer of the core). */
|
|
18
21
|
const CORE_BROWSER_DEPENDENCIES = [
|
|
19
22
|
"react",
|
|
@@ -21,11 +24,6 @@ const CORE_BROWSER_DEPENDENCIES = [
|
|
|
21
24
|
"react/jsx-dev-runtime",
|
|
22
25
|
"react-dom/client"
|
|
23
26
|
];
|
|
24
|
-
/**
|
|
25
|
-
* What the frame imports in the browser from the core's own dependencies: named through the core, as
|
|
26
|
-
* `forgebook > axe-core`, since a project need not be able to resolve them itself.
|
|
27
|
-
*/
|
|
28
|
-
const CORE_OWN_DEPENDENCIES = ["axe-core"];
|
|
29
27
|
/** Forgebook's modules the generated pages import, besides the framework's. */
|
|
30
28
|
const PAGE_MODULES = ["forgebook/shell"];
|
|
31
29
|
/** Whether a resolved file comes from an installed package rather than a linked one. */
|
|
@@ -35,30 +33,42 @@ const isInstalled = (file) => file.split(/[\\/]/).includes("node_modules");
|
|
|
35
33
|
*
|
|
36
34
|
* @param config - the catalogue's configuration.
|
|
37
35
|
* @param resolve - resolves a package from the catalogue's folder.
|
|
38
|
-
* @param resolveOwn - resolves a package from the core's own folder.
|
|
39
36
|
*/
|
|
40
|
-
export const prebundled = (config, resolve
|
|
41
|
-
const pageModules = [
|
|
37
|
+
export const prebundled = (config, resolve) => {
|
|
38
|
+
const pageModules = [
|
|
39
|
+
...PAGE_MODULES,
|
|
40
|
+
// imported on first use, so the scanner never sees it: named, or the first home would wait for the optimizer
|
|
41
|
+
...(config.home === undefined ? [] : [WRITTEN_HOME_MODULE]),
|
|
42
|
+
...(hasPluginViews(config) ? [PLUGIN_HOSTS_MODULE] : []),
|
|
43
|
+
config.framework.pages.frame,
|
|
44
|
+
config.framework.pages.code,
|
|
45
|
+
...pluginModules(config.plugins, config.framework.name)
|
|
46
|
+
];
|
|
42
47
|
const candidates = [
|
|
43
48
|
...CORE_BROWSER_DEPENDENCIES,
|
|
44
49
|
...(config.framework.browserDependencies ?? []),
|
|
45
50
|
...(config.hasPlayTools ? PLAY_TOOLS_PACKAGES : [])
|
|
46
51
|
];
|
|
52
|
+
// named without resolving them: a browser-only module (`msw/browser`) cannot be resolved by Node though it is installed
|
|
53
|
+
const pluginDependencies = config.plugins.flatMap((plugin) => plugin.browserDependencies ?? []);
|
|
47
54
|
const installedPages = pageModules.filter((name) => {
|
|
48
55
|
const file = resolve(name);
|
|
49
56
|
return file !== undefined && isInstalled(file);
|
|
50
57
|
});
|
|
51
|
-
const own = CORE_OWN_DEPENDENCIES.filter((name) => resolveOwn(name) !== undefined).map((name) => `forgebook > ${name}`);
|
|
52
58
|
return [
|
|
53
|
-
...new Set([
|
|
59
|
+
...new Set([
|
|
60
|
+
...candidates.filter((name) => resolve(name) !== undefined),
|
|
61
|
+
...pluginDependencies,
|
|
62
|
+
...installedPages
|
|
63
|
+
])
|
|
54
64
|
];
|
|
55
65
|
};
|
|
56
66
|
/** A `?forgebook-files` import of a source module: its pattern, before the query. */
|
|
57
67
|
const FILES_IMPORT = /["']([^"']+)\?forgebook-files["']/g;
|
|
58
68
|
/**
|
|
59
69
|
* The story files Vite scans for what their components import, before the first page opens: the project's own
|
|
60
|
-
* patterns,
|
|
61
|
-
* the project cannot resolve, or read, adds none.
|
|
70
|
+
* patterns, each source's, read from its module's `?forgebook-files` imports (relative to the module), and the
|
|
71
|
+
* previews. A source the project cannot resolve, or read, adds none.
|
|
62
72
|
*
|
|
63
73
|
* @remarks
|
|
64
74
|
* Without the sources' files, a package a source's stories import (`storybook/test`, a component's own dependency) is
|
|
@@ -74,8 +84,9 @@ export const scannedEntries = (config, resolve, readText) => {
|
|
|
74
84
|
const text = file === undefined ? undefined : readText(file);
|
|
75
85
|
if (file === undefined || text === undefined)
|
|
76
86
|
return [];
|
|
77
|
-
return [...text.matchAll(FILES_IMPORT)].flatMap((match) => match[1] === undefined ? [] : [join(dirname(file), match[1])
|
|
87
|
+
return [...text.matchAll(FILES_IMPORT)].flatMap((match) => match[1] === undefined ? [] : [VITE_PATHS.join(VITE_PATHS.dirname(file), match[1])]);
|
|
78
88
|
});
|
|
79
|
-
|
|
89
|
+
// the previews too: what they import loads with the first story, and found then it reloads the page; the project's
|
|
90
|
+
// `!` patterns stay as they are, which Vite's scanner reads as fast-glob does, from the same folder
|
|
91
|
+
return [...config.stories, ...fromSources, ...config.previews];
|
|
80
92
|
};
|
|
81
|
-
//# sourceMappingURL=prebundled.js.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type PreviewViewOptions } from "../previewView.ts";
|
|
2
|
+
/**
|
|
3
|
+
* The app's page, one HTML5 document.
|
|
4
|
+
*
|
|
5
|
+
* @param options - what its script is given.
|
|
6
|
+
*/
|
|
7
|
+
export declare const previewViewPage: (options: Omit<PreviewViewOptions, "loadingClass">) => string;
|
|
8
|
+
/**
|
|
9
|
+
* The relay's page.
|
|
10
|
+
*
|
|
11
|
+
* @param frameAddress - the story's frame.
|
|
12
|
+
* @param title - the frame's name for a screen reader.
|
|
13
|
+
*/
|
|
14
|
+
export declare const previewRelayPage: (frameAddress: string, title: string) => string;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The two pages of a story's preview in a client that renders apps, as text: the app's own (`previewView.ts`), which the
|
|
3
|
+
* MCP server gives as a resource, and the relay (`previewRelay.ts`), which the dev server serves.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Each page's script is the source of a typed function that takes no import, the way `page.evaluate` runs one, so it is
|
|
7
|
+
* checked as the rest of the code is and needs no bundling step: what Node runs and what `dist` holds both print as
|
|
8
|
+
* JavaScript. Loaded only when a preview is asked for.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
import { codeLiteral } from "../codeLiteral.js";
|
|
13
|
+
import { previewRelay } from "../previewRelay.js";
|
|
14
|
+
import { PREVIEW_ELEMENTS, previewView } from "../previewView.js";
|
|
15
|
+
/** The class of a frame still loading. */
|
|
16
|
+
const LOADING_CLASS = "loading";
|
|
17
|
+
/** The app's look: the host's variables, with defaults for a host that gives none, in its appearance. */
|
|
18
|
+
const VIEW_STYLE = `
|
|
19
|
+
:root { color-scheme: light dark; }
|
|
20
|
+
html, body { margin: 0; }
|
|
21
|
+
body {
|
|
22
|
+
display: flex; flex-direction: column; min-height: 0;
|
|
23
|
+
color: var(--color-text-primary, CanvasText);
|
|
24
|
+
background: var(--color-background-primary, Canvas);
|
|
25
|
+
font: 14px/1.4 var(--font-sans, system-ui, sans-serif);
|
|
26
|
+
}
|
|
27
|
+
header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 12px; }
|
|
28
|
+
#${PREVIEW_ELEMENTS.title} { font-family: var(--font-mono, ui-monospace, monospace); overflow-wrap: anywhere; }
|
|
29
|
+
#${PREVIEW_ELEMENTS.status} { margin: 0; padding: 8px 12px; color: var(--color-text-secondary, GrayText); }
|
|
30
|
+
#${PREVIEW_ELEMENTS.open} {
|
|
31
|
+
flex: none; padding: 4px 10px; font: inherit; color: inherit; background: transparent;
|
|
32
|
+
border: 1px solid var(--color-border-primary, GrayText); border-radius: var(--border-radius-sm, 6px); cursor: pointer;
|
|
33
|
+
}
|
|
34
|
+
#${PREVIEW_ELEMENTS.open}:focus-visible { outline: 2px solid var(--color-ring-primary, Highlight); outline-offset: 2px; }
|
|
35
|
+
#${PREVIEW_ELEMENTS.frame} { display: block; width: 100%; height: 240px; border: 0; }
|
|
36
|
+
#${PREVIEW_ELEMENTS.picture} { display: block; max-width: 100%; height: auto; }
|
|
37
|
+
.${LOADING_CLASS} { position: absolute; top: 0; left: 0; visibility: hidden; pointer-events: none; }
|
|
38
|
+
[hidden] { display: none !important; }
|
|
39
|
+
`;
|
|
40
|
+
/**
|
|
41
|
+
* The app's page, one HTML5 document.
|
|
42
|
+
*
|
|
43
|
+
* @param options - what its script is given.
|
|
44
|
+
*/
|
|
45
|
+
export const previewViewPage = (options) => `<!DOCTYPE html>
|
|
46
|
+
<html lang="en">
|
|
47
|
+
<head>
|
|
48
|
+
<meta charset="utf-8">
|
|
49
|
+
<title>Forgebook</title>
|
|
50
|
+
<style>${VIEW_STYLE}</style>
|
|
51
|
+
</head>
|
|
52
|
+
<body>
|
|
53
|
+
<header>
|
|
54
|
+
<span id="${PREVIEW_ELEMENTS.title}"></span>
|
|
55
|
+
<button id="${PREVIEW_ELEMENTS.open}" type="button" hidden></button>
|
|
56
|
+
</header>
|
|
57
|
+
<p id="${PREVIEW_ELEMENTS.status}" role="status"></p>
|
|
58
|
+
<iframe id="${PREVIEW_ELEMENTS.frame}" hidden></iframe>
|
|
59
|
+
<img id="${PREVIEW_ELEMENTS.picture}" alt="" hidden>
|
|
60
|
+
<script>(${previewView.toString()})(${codeLiteral({ ...options, loadingClass: LOADING_CLASS })}, ${codeLiteral(PREVIEW_ELEMENTS)});</script>
|
|
61
|
+
</body>
|
|
62
|
+
</html>
|
|
63
|
+
`;
|
|
64
|
+
/**
|
|
65
|
+
* The relay's page.
|
|
66
|
+
*
|
|
67
|
+
* @param frameAddress - the story's frame.
|
|
68
|
+
* @param title - the frame's name for a screen reader.
|
|
69
|
+
*/
|
|
70
|
+
export const previewRelayPage = (frameAddress, title) => `<!DOCTYPE html>
|
|
71
|
+
<html lang="en">
|
|
72
|
+
<head>
|
|
73
|
+
<meta charset="utf-8">
|
|
74
|
+
<title>Forgebook</title>
|
|
75
|
+
<style>html, body { margin: 0; background: transparent; }</style>
|
|
76
|
+
</head>
|
|
77
|
+
<body>
|
|
78
|
+
<script>(${previewRelay.toString()})(${codeLiteral(frameAddress)}, ${codeLiteral(title)});</script>
|
|
79
|
+
</body>
|
|
80
|
+
</html>
|
|
81
|
+
`;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The name of the dev server's preview page under its answers' path, apart from the page's code so that the plugin can
|
|
3
|
+
* know the route without loading it.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
/** The path of a story's preview page under `AGENT_API`. */
|
|
8
|
+
export declare const PREVIEW_ROUTE = "preview";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The name of the dev server's preview page under its answers' path, apart from the page's code so that the plugin can
|
|
3
|
+
* know the route without loading it.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
/** The path of a story's preview page under `AGENT_API`. */
|
|
8
|
+
export const PREVIEW_ROUTE = "preview";
|