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,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The child that pre-bundles a catalogue's dependencies on a first start (`prebundleStart.ts`), and ends: what
|
|
3
|
+
* rolldown took goes back with it. Its exit code tells the server whether the work is done.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import { enableCompileCache } from "node:module";
|
|
8
|
+
import { loadConfigFile } from "../../src/vite/configFile.js";
|
|
9
|
+
import { FRAMES_MODES, withFramePort, withFramesMode } from "./catalogueVite.js";
|
|
10
|
+
import { compileCacheFolder } from "./compileCache.js";
|
|
11
|
+
import { prebundle } from "./prebundleRun.js";
|
|
12
|
+
const folder = compileCacheFolder(import.meta.dirname);
|
|
13
|
+
if (folder !== undefined)
|
|
14
|
+
enableCompileCache(folder);
|
|
15
|
+
/**
|
|
16
|
+
* Whether the parent's JSON is what it sends.
|
|
17
|
+
*
|
|
18
|
+
* @param value - the JSON, parsed.
|
|
19
|
+
*/
|
|
20
|
+
const isChildData = (value) => typeof value === "object" &&
|
|
21
|
+
value !== null &&
|
|
22
|
+
"configFile" in value &&
|
|
23
|
+
typeof value.configFile === "string" &&
|
|
24
|
+
"isForced" in value &&
|
|
25
|
+
typeof value.isForced === "boolean" &&
|
|
26
|
+
(!("frames" in value) || FRAMES_MODES.some((mode) => mode === value.frames)) &&
|
|
27
|
+
(!("framePort" in value) || typeof value.framePort === "string");
|
|
28
|
+
const data = JSON.parse(process.argv[2] ?? "null");
|
|
29
|
+
if (!isChildData(data))
|
|
30
|
+
throw new Error("The pre-bundling child was started without what it needs");
|
|
31
|
+
const config = withFramePort(withFramesMode(await loadConfigFile(data.configFile), data.frames), data.framePort);
|
|
32
|
+
await prebundle(config, data.isForced);
|
|
33
|
+
// done: a handle a plugin left open would keep the server waiting for this process
|
|
34
|
+
process.exit(0);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ResolvedConfig } from "../../src/vite/configFile.ts";
|
|
2
|
+
/**
|
|
3
|
+
* The imports Vite's error names as unresolved, when it is that error; its colours, which Vite adds on Windows and in
|
|
4
|
+
* CI, taken out first.
|
|
5
|
+
*
|
|
6
|
+
* @param error - what `optimizeDeps` threw.
|
|
7
|
+
*/
|
|
8
|
+
export declare const unresolvedOf: (error: unknown) => string[];
|
|
9
|
+
/**
|
|
10
|
+
* Pre-bundles a catalogue's dependencies in this process.
|
|
11
|
+
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* Vite's `optimizeDeps` fails on an import it cannot resolve (stories that import a package not installed), where a
|
|
14
|
+
* dev server only warns and pre-bundles the rest. So a failure that names such imports is tried once more with them
|
|
15
|
+
* left out too, kept in a file every later server of the catalogue reads (`unresolvedFile`), which is what the server
|
|
16
|
+
* would have done; any other failure is thrown, and the server does the work, as it always could. What an earlier
|
|
17
|
+
* pre-bundling left out stays out unless it is forced: it is part of the pre-bundle's hash.
|
|
18
|
+
*
|
|
19
|
+
* @param config - the catalogue's configuration, read.
|
|
20
|
+
* @param isForced - whether to pre-bundle whatever is there, finding again what does not resolve.
|
|
21
|
+
*/
|
|
22
|
+
export declare const prebundle: (config: ResolvedConfig, isForced: boolean) => Promise<void>;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A catalogue's dependencies pre-bundled as `forgebook dev` would on a first start: what the pre-bundling child runs
|
|
3
|
+
* (`prebundleChild.ts`), and `forgebook prebundle`.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import { rmSync } from "node:fs";
|
|
8
|
+
import { stripVTControlCharacters } from "node:util";
|
|
9
|
+
import { catalogueVite } from "./catalogueVite.js";
|
|
10
|
+
import { keepUnresolved, unresolvedFile, unresolvedImports } from "./viteCache.js";
|
|
11
|
+
/** A line of Vite's error about imports it cannot resolve: the name, then the file that imports it. */
|
|
12
|
+
const UNRESOLVED_LINE = /^\s+(\S+) \(imported by /gm;
|
|
13
|
+
/**
|
|
14
|
+
* The imports Vite's error names as unresolved, when it is that error; its colours, which Vite adds on Windows and in
|
|
15
|
+
* CI, taken out first.
|
|
16
|
+
*
|
|
17
|
+
* @param error - what `optimizeDeps` threw.
|
|
18
|
+
*/
|
|
19
|
+
export const unresolvedOf = (error) => error instanceof Error
|
|
20
|
+
? [...stripVTControlCharacters(error.message).matchAll(UNRESOLVED_LINE)].flatMap((match) => match[1] ?? [])
|
|
21
|
+
: [];
|
|
22
|
+
/**
|
|
23
|
+
* Pre-bundles a catalogue's dependencies in this process.
|
|
24
|
+
*
|
|
25
|
+
* @remarks
|
|
26
|
+
* Vite's `optimizeDeps` fails on an import it cannot resolve (stories that import a package not installed), where a
|
|
27
|
+
* dev server only warns and pre-bundles the rest. So a failure that names such imports is tried once more with them
|
|
28
|
+
* left out too, kept in a file every later server of the catalogue reads (`unresolvedFile`), which is what the server
|
|
29
|
+
* would have done; any other failure is thrown, and the server does the work, as it always could. What an earlier
|
|
30
|
+
* pre-bundling left out stays out unless it is forced: it is part of the pre-bundle's hash.
|
|
31
|
+
*
|
|
32
|
+
* @param config - the catalogue's configuration, read.
|
|
33
|
+
* @param isForced - whether to pre-bundle whatever is there, finding again what does not resolve.
|
|
34
|
+
*/
|
|
35
|
+
export const prebundle = async (config, isForced) => {
|
|
36
|
+
const { optimizeDeps, resolveConfig } = await import("vite");
|
|
37
|
+
if (isForced)
|
|
38
|
+
rmSync(unresolvedFile(config.dir), { force: true });
|
|
39
|
+
try {
|
|
40
|
+
await optimizeDeps(await resolveConfig(await catalogueVite(config, {}), "serve"), isForced);
|
|
41
|
+
}
|
|
42
|
+
catch (error) {
|
|
43
|
+
const unresolved = unresolvedOf(error);
|
|
44
|
+
if (unresolved.length === 0)
|
|
45
|
+
throw error;
|
|
46
|
+
keepUnresolved(config.dir, [...new Set([...unresolvedImports(config.dir), ...unresolved])]);
|
|
47
|
+
await optimizeDeps(await resolveConfig(await catalogueVite(config, {}), "serve"), isForced);
|
|
48
|
+
}
|
|
49
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { FramesMode } from "./catalogueVite.ts";
|
|
2
|
+
/** What the child is started with, as JSON: what `forgebook dev` was given that the pre-bundle depends on. */
|
|
3
|
+
export type PrebundleChildData = {
|
|
4
|
+
/** The catalogue's configuration file. */
|
|
5
|
+
readonly configFile: string;
|
|
6
|
+
/** Whether to pre-bundle whatever is there (`--force`). */
|
|
7
|
+
readonly isForced: boolean;
|
|
8
|
+
/** Where the stories' frames run for this run (`--frames`); the configuration's when none. */
|
|
9
|
+
readonly frames?: FramesMode;
|
|
10
|
+
/** The frames' port (`--frame-port`); the configuration's when none. */
|
|
11
|
+
readonly framePort?: string;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Pre-bundles a catalogue's dependencies in a child, unless they are there already; a second call for the same
|
|
15
|
+
* run waits for the first.
|
|
16
|
+
*
|
|
17
|
+
* @param data - what the child pre-bundles for.
|
|
18
|
+
* @returns a promise of whether the child pre-bundled them: `false` when it failed, or was not needed.
|
|
19
|
+
*/
|
|
20
|
+
export declare const prebundleInChild: (data: PrebundleChildData) => Promise<boolean>;
|
|
21
|
+
/** The options of `forgebook dev` the pre-bundling reads. */
|
|
22
|
+
export type DevPrebundleOptions = {
|
|
23
|
+
/** `--force`. */
|
|
24
|
+
readonly force?: boolean | undefined;
|
|
25
|
+
/** `--frames`. */
|
|
26
|
+
readonly frames?: FramesMode | undefined;
|
|
27
|
+
/** `--frame-port`. */
|
|
28
|
+
readonly "frame-port"?: string | undefined;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* The pre-bundling of a `forgebook dev` run: the one its entry started, or one started now.
|
|
32
|
+
*
|
|
33
|
+
* @param configFile - the catalogue's configuration file; none when there is none, which pre-bundles nothing.
|
|
34
|
+
* @param options - the run's options.
|
|
35
|
+
* @returns a promise of whether the child pre-bundled the dependencies.
|
|
36
|
+
*/
|
|
37
|
+
export declare const prebundleForDev: (configFile: string | undefined, options: DevPrebundleOptions) => Promise<boolean>;
|
|
38
|
+
/**
|
|
39
|
+
* Starts the pre-bundling before the commands load, for `forgebook dev` run in the catalogue's folder. Any other form
|
|
40
|
+
* (`--config`, `--force`, the frames' options) is left to the command, which starts it once it has read its options.
|
|
41
|
+
*
|
|
42
|
+
* @param args - the command line's arguments.
|
|
43
|
+
*/
|
|
44
|
+
export declare const prebundleEarly: (args: readonly string[]) => void;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Starts a first start's pre-bundling in a child process (`prebundleChild.ts`), from the command's entry or from
|
|
3
|
+
* `forgebook dev`; light, so the entry can start it before the commands load.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Vite pre-bundles a catalogue's dependencies once. Rolldown's allocator keeps what it took, a hundred megabytes and
|
|
7
|
+
* more that the server would hold for as long as it runs, on top of what a first start needs for the docs. In a child
|
|
8
|
+
* they go back when it ends. The child starts as the command does (`prebundleEarly`), so it works while this process
|
|
9
|
+
* loads the commands, the configuration and Vite, and the server waits for it before it reads the cache folder. Should
|
|
10
|
+
* the child fail, the server pre-bundles as it always could.
|
|
11
|
+
*
|
|
12
|
+
* Whether there is anything to do is told by the pre-bundle's metadata in Vite's default cache folder: a catalogue
|
|
13
|
+
* whose framework moves the cache folder starts the child on every start, which finds the work done and ends.
|
|
14
|
+
*
|
|
15
|
+
* @module
|
|
16
|
+
*/
|
|
17
|
+
import { spawn } from "node:child_process";
|
|
18
|
+
import { existsSync } from "node:fs";
|
|
19
|
+
import { dirname, extname, join } from "node:path";
|
|
20
|
+
import { fileURLToPath } from "node:url";
|
|
21
|
+
import { findConfigFile } from "../../src/vite/configFile.js";
|
|
22
|
+
import { viteCacheDir } from "./viteCache.js";
|
|
23
|
+
/** The child's entry, beside this module and with its extension (`.ts` in the sources, `.js` once built). */
|
|
24
|
+
const CHILD_URL = new URL(`./prebundleChild${extname(import.meta.url)}`, import.meta.url);
|
|
25
|
+
/** The pre-bundling started, by what it was started for: the command finds the one its entry started. */
|
|
26
|
+
let started;
|
|
27
|
+
/**
|
|
28
|
+
* Pre-bundles a catalogue's dependencies in a child, unless they are there already; a second call for the same
|
|
29
|
+
* run waits for the first.
|
|
30
|
+
*
|
|
31
|
+
* @param data - what the child pre-bundles for.
|
|
32
|
+
* @returns a promise of whether the child pre-bundled them: `false` when it failed, or was not needed.
|
|
33
|
+
*/
|
|
34
|
+
export const prebundleInChild = (data) => {
|
|
35
|
+
const key = JSON.stringify(data);
|
|
36
|
+
if (started?.key === key)
|
|
37
|
+
return started.done;
|
|
38
|
+
const metadata = join(viteCacheDir({ root: dirname(data.configFile) }), "deps", "_metadata.json");
|
|
39
|
+
if (existsSync(metadata) && !data.isForced)
|
|
40
|
+
return Promise.resolve(false);
|
|
41
|
+
const done = new Promise((resolve) => {
|
|
42
|
+
const child = spawn(process.execPath, [fileURLToPath(CHILD_URL), JSON.stringify(data)], {
|
|
43
|
+
stdio: "ignore"
|
|
44
|
+
});
|
|
45
|
+
child.once("error", () => resolve(false));
|
|
46
|
+
child.once("exit", (code) => resolve(code === 0));
|
|
47
|
+
});
|
|
48
|
+
started = { key, done };
|
|
49
|
+
return done;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* The pre-bundling of a `forgebook dev` run: the one its entry started, or one started now.
|
|
53
|
+
*
|
|
54
|
+
* @param configFile - the catalogue's configuration file; none when there is none, which pre-bundles nothing.
|
|
55
|
+
* @param options - the run's options.
|
|
56
|
+
* @returns a promise of whether the child pre-bundled the dependencies.
|
|
57
|
+
*/
|
|
58
|
+
export const prebundleForDev = (configFile, options) => configFile === undefined
|
|
59
|
+
? Promise.resolve(false)
|
|
60
|
+
: prebundleInChild({
|
|
61
|
+
configFile,
|
|
62
|
+
isForced: options.force === true,
|
|
63
|
+
...(options.frames === undefined ? {} : { frames: options.frames }),
|
|
64
|
+
...(options["frame-port"] === undefined ? {} : { framePort: options["frame-port"] })
|
|
65
|
+
});
|
|
66
|
+
/** The options of `forgebook dev` that change what it pre-bundles, or whose meaning only the command knows. */
|
|
67
|
+
const LEFT_TO_THE_COMMAND = ["--config", "--frames", "--frame-port", "--force", "--help", "-h"];
|
|
68
|
+
/**
|
|
69
|
+
* Starts the pre-bundling before the commands load, for `forgebook dev` run in the catalogue's folder. Any other form
|
|
70
|
+
* (`--config`, `--force`, the frames' options) is left to the command, which starts it once it has read its options.
|
|
71
|
+
*
|
|
72
|
+
* @param args - the command line's arguments.
|
|
73
|
+
*/
|
|
74
|
+
export const prebundleEarly = (args) => {
|
|
75
|
+
if (args[0] !== "dev")
|
|
76
|
+
return;
|
|
77
|
+
if (args.some((arg) => LEFT_TO_THE_COMMAND.some((option) => arg === option || arg.startsWith(`${option}=`))))
|
|
78
|
+
return;
|
|
79
|
+
const configFile = findConfigFile(process.cwd());
|
|
80
|
+
if (configFile !== undefined)
|
|
81
|
+
void prebundleInChild({ configFile, isForced: false });
|
|
82
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The options that name the model `--semantic` asks, shared by `forgebook check` and `forgebook mcp`: read from the
|
|
3
|
+
* environment, so a key stays out of the project's files and of the command line.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import type { SemanticModel } from "../../src/storyCheck.ts";
|
|
8
|
+
/** The options. */
|
|
9
|
+
export declare const SEMANTIC_OPTIONS: {
|
|
10
|
+
readonly "semantic-url": {
|
|
11
|
+
readonly type: "string";
|
|
12
|
+
readonly env: "FORGEBOOK_SEMANTIC_URL";
|
|
13
|
+
readonly valueName: "address";
|
|
14
|
+
readonly description: "The OpenAI-compatible API --semantic asks.";
|
|
15
|
+
};
|
|
16
|
+
readonly "semantic-model": {
|
|
17
|
+
readonly type: "string";
|
|
18
|
+
readonly env: "FORGEBOOK_SEMANTIC_MODEL";
|
|
19
|
+
readonly valueName: "name";
|
|
20
|
+
readonly description: "The model --semantic asks.";
|
|
21
|
+
};
|
|
22
|
+
readonly "semantic-key": {
|
|
23
|
+
readonly type: "string";
|
|
24
|
+
readonly env: "FORGEBOOK_SEMANTIC_KEY";
|
|
25
|
+
readonly valueName: "key";
|
|
26
|
+
readonly description: "Its key, when it needs one: better in the environment than here.";
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
/** What those options give a command. */
|
|
30
|
+
type SemanticOptions = {
|
|
31
|
+
/** The API's address. */
|
|
32
|
+
readonly "semantic-url"?: string | undefined;
|
|
33
|
+
/** The model's name. */
|
|
34
|
+
readonly "semantic-model"?: string | undefined;
|
|
35
|
+
/** Its key. */
|
|
36
|
+
readonly "semantic-key"?: string | undefined;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* The model the options name.
|
|
40
|
+
*
|
|
41
|
+
* @param options - the command's options.
|
|
42
|
+
* @returns the model, or what to set.
|
|
43
|
+
*/
|
|
44
|
+
export declare const semanticModelOf: (options: SemanticOptions) => SemanticModel | string;
|
|
45
|
+
export {};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** The options. */
|
|
2
|
+
export const SEMANTIC_OPTIONS = {
|
|
3
|
+
"semantic-url": {
|
|
4
|
+
type: "string",
|
|
5
|
+
env: "FORGEBOOK_SEMANTIC_URL",
|
|
6
|
+
valueName: "address",
|
|
7
|
+
description: "The OpenAI-compatible API --semantic asks."
|
|
8
|
+
},
|
|
9
|
+
"semantic-model": {
|
|
10
|
+
type: "string",
|
|
11
|
+
env: "FORGEBOOK_SEMANTIC_MODEL",
|
|
12
|
+
valueName: "name",
|
|
13
|
+
description: "The model --semantic asks."
|
|
14
|
+
},
|
|
15
|
+
"semantic-key": {
|
|
16
|
+
type: "string",
|
|
17
|
+
env: "FORGEBOOK_SEMANTIC_KEY",
|
|
18
|
+
valueName: "key",
|
|
19
|
+
description: "Its key, when it needs one: better in the environment than here."
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* The model the options name.
|
|
24
|
+
*
|
|
25
|
+
* @param options - the command's options.
|
|
26
|
+
* @returns the model, or what to set.
|
|
27
|
+
*/
|
|
28
|
+
export const semanticModelOf = (options) => {
|
|
29
|
+
const url = options["semantic-url"];
|
|
30
|
+
const name = options["semantic-model"];
|
|
31
|
+
const key = options["semantic-key"];
|
|
32
|
+
if (url === undefined || name === undefined) {
|
|
33
|
+
return "Set FORGEBOOK_SEMANTIC_URL (an OpenAI-compatible API) and FORGEBOOK_SEMANTIC_MODEL, with FORGEBOOK_SEMANTIC_KEY when it needs one";
|
|
34
|
+
}
|
|
35
|
+
return { url, name, ...(key === undefined ? {} : { key }) };
|
|
36
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `forgebook check`: the catalogue's checks on a story in a browser, with the model's judgement when asked.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import type { CommandNode, CommandScope } from "@ensiria/cli-kit/commands.types";
|
|
7
|
+
import { type ForgebookOptions } from "./catalogueCommands.ts";
|
|
8
|
+
/**
|
|
9
|
+
* The command.
|
|
10
|
+
*
|
|
11
|
+
* @param forgebook - the scope of the `forgebook` command, whose options every command takes.
|
|
12
|
+
*/
|
|
13
|
+
export declare const storyCheckCommands: (forgebook: CommandScope<ForgebookOptions>) => Readonly<Record<string, CommandNode>>;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { EXIT } from "@ensiria/cli-kit/constants";
|
|
2
|
+
import { formatJson } from "@ensiria/cli-kit/files";
|
|
3
|
+
import { ScriptError } from "@ensiria/cli-kit/script";
|
|
4
|
+
import { checkText } from "./agentText.js";
|
|
5
|
+
import { COMMAND, configOf } from "./catalogueCommands.js";
|
|
6
|
+
import { SEMANTIC_OPTIONS, semanticModelOf } from "./semanticOptions.js";
|
|
7
|
+
import { runStoryCheck } from "./storyCheckRun.js";
|
|
8
|
+
/**
|
|
9
|
+
* The command.
|
|
10
|
+
*
|
|
11
|
+
* @param forgebook - the scope of the `forgebook` command, whose options every command takes.
|
|
12
|
+
*/
|
|
13
|
+
export const storyCheckCommands = (forgebook) => ({
|
|
14
|
+
check: forgebook.command({
|
|
15
|
+
summary: "Run the catalogue's checks on a story in a browser: accessibility, spills, overlays, errors.",
|
|
16
|
+
json: true,
|
|
17
|
+
options: {
|
|
18
|
+
view: {
|
|
19
|
+
type: "string",
|
|
20
|
+
multiple: true,
|
|
21
|
+
valueName: "query",
|
|
22
|
+
description: "A view to check it in, as the catalogue's address writes it (theme=dark&width=360); the default view when none."
|
|
23
|
+
},
|
|
24
|
+
"all-variants": {
|
|
25
|
+
type: "boolean",
|
|
26
|
+
description: "Check every variant the catalogue's browser tests check."
|
|
27
|
+
},
|
|
28
|
+
semantic: {
|
|
29
|
+
type: "boolean",
|
|
30
|
+
description: "Also ask the configured model, sending it each story's tree and picture."
|
|
31
|
+
},
|
|
32
|
+
...SEMANTIC_OPTIONS,
|
|
33
|
+
url: {
|
|
34
|
+
type: "string",
|
|
35
|
+
env: "FORGEBOOK_URL",
|
|
36
|
+
valueName: "address",
|
|
37
|
+
description: "Where forgebook dev runs, when not at Vite's default address (http://localhost:5173)."
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
positionals: [
|
|
41
|
+
{ name: "id", description: "A story's id, or a component's for its listed stories.", required: true }
|
|
42
|
+
],
|
|
43
|
+
examples: [
|
|
44
|
+
{
|
|
45
|
+
command: `${COMMAND} check kit:inputs-select--overview`,
|
|
46
|
+
description: "One story, in the default view."
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
command: `${COMMAND} check kit:inputs-select --view "theme=dark" --json`,
|
|
50
|
+
description: "Every story of a component, in the dark theme, as JSON."
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
run: async ({ args, options, io, isJson, style }) => {
|
|
54
|
+
const config = await configOf(options.config);
|
|
55
|
+
const report = await runStoryCheck(config, options.url, {
|
|
56
|
+
id: args.id,
|
|
57
|
+
views: options.view ?? [],
|
|
58
|
+
isAllVariants: options["all-variants"] === true,
|
|
59
|
+
isSemantic: options.semantic === true
|
|
60
|
+
}, semanticModelOf(options));
|
|
61
|
+
if (typeof report === "string")
|
|
62
|
+
throw new ScriptError(report);
|
|
63
|
+
io.stdout.write(isJson ? formatJson(report) : `${checkText(report, style)}\n`);
|
|
64
|
+
const problems = report.results.reduce((count, result) => count + result.problems.length, 0);
|
|
65
|
+
if (problems > 0)
|
|
66
|
+
throw new ScriptError(`${problems} problems`, { exitCode: EXIT.failure, isReported: true });
|
|
67
|
+
}
|
|
68
|
+
})
|
|
69
|
+
});
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
import type
|
|
1
|
+
import { type DeviceDefault } from "../../src/deviceView.ts";
|
|
2
|
+
import { type SemanticModel, type StoryCheckReport, type StoryCheckStory, type StoryDiffReport, type StoryDiffRequest, type StoryShotReport } from "../../src/storyCheck.ts";
|
|
3
|
+
import type { StoriesDocument } from "../../src/vite/agent.types.ts";
|
|
3
4
|
import type { ResolvedConfig } from "../../src/vite/configFile.ts";
|
|
4
5
|
/** What a run is asked: the id, the views and whether to run every variant. */
|
|
5
6
|
export type StoryCheckInput = {
|
|
@@ -9,14 +10,18 @@ export type StoryCheckInput = {
|
|
|
9
10
|
readonly views: readonly string[];
|
|
10
11
|
/** Run every variant the catalogue's browser tests check. */
|
|
11
12
|
readonly isAllVariants: boolean;
|
|
13
|
+
/** Ask the configured model too: it sends each story's tree and picture to that address. */
|
|
14
|
+
readonly isSemantic?: boolean;
|
|
12
15
|
};
|
|
13
16
|
/**
|
|
14
|
-
* The stories an id names: the story itself, or a component's listed stories
|
|
17
|
+
* The stories an id names, as a check reads them: the story itself, or a component's listed stories; by their ids, or
|
|
18
|
+
* by the ids an earlier rule gave them.
|
|
15
19
|
*
|
|
16
20
|
* @param document - the catalogue's stories.
|
|
17
21
|
* @param id - the id.
|
|
22
|
+
* @param catalogueDevice - the catalogue's default device; none by default.
|
|
18
23
|
*/
|
|
19
|
-
export declare const storiesNamed: (document: StoriesDocument, id: string) =>
|
|
24
|
+
export declare const storiesNamed: (document: StoriesDocument, id: string, catalogueDevice?: DeviceDefault) => StoryCheckStory[];
|
|
20
25
|
/**
|
|
21
26
|
* A function the testing package exports, resolved from the catalogue's folder as the project's own code would: the
|
|
22
27
|
* check, the pictures, the touch window.
|
|
@@ -33,9 +38,10 @@ export declare const testingFunction: (dir: string, specifier: string, name: str
|
|
|
33
38
|
* @param config - the catalogue's configuration.
|
|
34
39
|
* @param url - where `forgebook dev` runs, when not at Vite's default address.
|
|
35
40
|
* @param input - the id, the views and whether to check every variant.
|
|
41
|
+
* @param model - the model `isSemantic` asks, or what to set to have one.
|
|
36
42
|
* @returns the report, or why the check could not run.
|
|
37
43
|
*/
|
|
38
|
-
export declare const runStoryCheck: (config: ResolvedConfig, url: string | undefined, input: StoryCheckInput) => Promise<StoryCheckReport | string>;
|
|
44
|
+
export declare const runStoryCheck: (config: ResolvedConfig, url: string | undefined, input: StoryCheckInput, model?: SemanticModel | string) => Promise<StoryCheckReport | string>;
|
|
39
45
|
/**
|
|
40
46
|
* Takes the stories' pictures.
|
|
41
47
|
*
|
|
@@ -46,4 +52,32 @@ export declare const runStoryCheck: (config: ResolvedConfig, url: string | undef
|
|
|
46
52
|
* @returns the pictures, or why they could not be taken.
|
|
47
53
|
*/
|
|
48
54
|
export declare const runStoryShot: (config: ResolvedConfig, url: string | undefined, input: StoryCheckInput, outDir: string) => Promise<StoryShotReport | string>;
|
|
49
|
-
|
|
55
|
+
/**
|
|
56
|
+
* The component a comparison names, by its current id and the one the former rule gave it, so its baselines under
|
|
57
|
+
* either are its own; none when the id names a story.
|
|
58
|
+
*
|
|
59
|
+
* @param document - the catalogue's stories.
|
|
60
|
+
* @param id - the id asked for, current or former.
|
|
61
|
+
*/
|
|
62
|
+
export declare const diffedComponent: (document: StoriesDocument, id: string) => Pick<StoryDiffRequest, "component" | "formerComponent">;
|
|
63
|
+
/**
|
|
64
|
+
* Compares the stories' pictures with their baselines.
|
|
65
|
+
*
|
|
66
|
+
* @param config - the catalogue's configuration.
|
|
67
|
+
* @param url - where `forgebook dev` runs, when not at Vite's default address.
|
|
68
|
+
* @param input - the id, the views and whether to compare every variant.
|
|
69
|
+
* @param folders - the baselines' folder and the one the new pictures go in, absolute.
|
|
70
|
+
* @returns the results, or why they could not be had.
|
|
71
|
+
*/
|
|
72
|
+
export declare const runStoryDiff: (config: ResolvedConfig, url: string | undefined, input: StoryCheckInput, folders: {
|
|
73
|
+
readonly baselines: string;
|
|
74
|
+
readonly outDir: string;
|
|
75
|
+
}) => Promise<StoryDiffReport | string>;
|
|
76
|
+
/**
|
|
77
|
+
* Checks pages of an application.
|
|
78
|
+
*
|
|
79
|
+
* @param config - the catalogue's configuration: its accessibility rules, and the folder the testing package is in.
|
|
80
|
+
* @param addresses - the pages' addresses.
|
|
81
|
+
* @returns the report, or why the check could not run.
|
|
82
|
+
*/
|
|
83
|
+
export declare const runPageCheck: (config: ResolvedConfig, addresses: readonly string[]) => Promise<StoryCheckReport | string>;
|
|
@@ -22,25 +22,50 @@ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExte
|
|
|
22
22
|
import { createRequire } from "node:module";
|
|
23
23
|
import { join } from "node:path";
|
|
24
24
|
import { pathToFileURL } from "node:url";
|
|
25
|
-
import {
|
|
25
|
+
import { deviceDefaultOf, NO_DEVICE } from "../../src/deviceView.js";
|
|
26
|
+
import { isStoryCheckReport, isStoryDiffReport, isStoryShotReport } from "../../src/storyCheck.js";
|
|
27
|
+
import { formerComponentId } from "../../src/storyTree.js";
|
|
26
28
|
import { catalogueSwitches } from "../../src/switches.js";
|
|
27
29
|
import { viewQuery } from "../../src/viewWords.js";
|
|
28
30
|
import { isStoriesDocument } from "../../src/vite/agentApi.js";
|
|
31
|
+
import { formerIdOf, namedComponent, namedStory } from "../../src/vite/agentIds.js";
|
|
29
32
|
import { AGENT_API } from "../../src/vite/agentRoutes.js";
|
|
30
33
|
import { servedCatalogue } from "./agentClient.js";
|
|
31
34
|
/** What the project installs to run the stories in a browser, and how. */
|
|
32
35
|
const INSTALL = "Stories run in a browser with @forgebook/testing: npm install -D @forgebook/testing @playwright/test, then npx playwright install chromium";
|
|
33
36
|
/**
|
|
34
|
-
*
|
|
37
|
+
* A story of the document as a check reads it.
|
|
38
|
+
*
|
|
39
|
+
* @param component - its component.
|
|
40
|
+
* @param story - the story.
|
|
41
|
+
* @param catalogueDevice - the catalogue's default device, under the story's.
|
|
42
|
+
*/
|
|
43
|
+
const checkedStory = (component, story, catalogueDevice) => {
|
|
44
|
+
const formerId = formerIdOf(component, story);
|
|
45
|
+
return {
|
|
46
|
+
id: story.id,
|
|
47
|
+
...(formerId === undefined ? {} : { formerId }),
|
|
48
|
+
...(story.height === undefined ? {} : { height: story.height }),
|
|
49
|
+
...(story.isLogic ? { isLogic: true } : {}),
|
|
50
|
+
...(deviceDefaultOf(catalogueDevice, story.device).isEdgeToEdge ? { isEdgeToEdge: true } : {})
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* The stories an id names, as a check reads them: the story itself, or a component's listed stories; by their ids, or
|
|
55
|
+
* by the ids an earlier rule gave them.
|
|
35
56
|
*
|
|
36
57
|
* @param document - the catalogue's stories.
|
|
37
58
|
* @param id - the id.
|
|
59
|
+
* @param catalogueDevice - the catalogue's default device; none by default.
|
|
38
60
|
*/
|
|
39
|
-
export const storiesNamed = (document, id) => {
|
|
40
|
-
const component = document
|
|
61
|
+
export const storiesNamed = (document, id, catalogueDevice = NO_DEVICE) => {
|
|
62
|
+
const component = namedComponent(document, id);
|
|
41
63
|
if (component !== undefined)
|
|
42
|
-
return component.stories
|
|
43
|
-
|
|
64
|
+
return component.stories
|
|
65
|
+
.filter((story) => !story.isUnlisted)
|
|
66
|
+
.map((story) => checkedStory(component, story, catalogueDevice));
|
|
67
|
+
const named = namedStory(document, id);
|
|
68
|
+
return named === undefined ? [] : [checkedStory(named.component, named.story, catalogueDevice)];
|
|
44
69
|
};
|
|
45
70
|
/**
|
|
46
71
|
* The views in the address's form, or why one cannot be read.
|
|
@@ -118,22 +143,18 @@ const runOnStories = async (config, url, input, run) => {
|
|
|
118
143
|
const document = await storiesAt(served.origin);
|
|
119
144
|
if (typeof document === "string")
|
|
120
145
|
return document;
|
|
121
|
-
const stories = storiesNamed(document, input.id);
|
|
146
|
+
const stories = storiesNamed(document, input.id, deviceDefaultOf(NO_DEVICE, config.lists.device));
|
|
122
147
|
if (stories.length === 0)
|
|
123
148
|
return `No story or component "${input.id}"`;
|
|
124
149
|
const request = {
|
|
125
150
|
frameUrl: `${served.origin}/frame.html`,
|
|
126
|
-
stories
|
|
127
|
-
id: story.id,
|
|
128
|
-
...(story.height === undefined ? {} : { height: story.height }),
|
|
129
|
-
...(story.isLogic ? { isLogic: true } : {})
|
|
130
|
-
})),
|
|
151
|
+
stories,
|
|
131
152
|
switches,
|
|
132
153
|
lists: config.lists,
|
|
133
154
|
views,
|
|
134
155
|
isAllVariants: input.isAllVariants
|
|
135
156
|
};
|
|
136
|
-
return await call({ ...request, ...run.extra });
|
|
157
|
+
return await call({ ...request, ...run.extra(document) });
|
|
137
158
|
}
|
|
138
159
|
finally {
|
|
139
160
|
await served.close();
|
|
@@ -145,13 +166,17 @@ const runOnStories = async (config, url, input, run) => {
|
|
|
145
166
|
* @param config - the catalogue's configuration.
|
|
146
167
|
* @param url - where `forgebook dev` runs, when not at Vite's default address.
|
|
147
168
|
* @param input - the id, the views and whether to check every variant.
|
|
169
|
+
* @param model - the model `isSemantic` asks, or what to set to have one.
|
|
148
170
|
* @returns the report, or why the check could not run.
|
|
149
171
|
*/
|
|
150
|
-
export const runStoryCheck = async (config, url, input) => {
|
|
172
|
+
export const runStoryCheck = async (config, url, input, model) => {
|
|
173
|
+
const semantic = input.isSemantic === true ? model : undefined;
|
|
174
|
+
if (typeof semantic === "string")
|
|
175
|
+
return semantic;
|
|
151
176
|
const answer = await runOnStories(config, url, input, {
|
|
152
177
|
specifier: "@forgebook/testing/check",
|
|
153
178
|
name: "checkStories",
|
|
154
|
-
extra: {}
|
|
179
|
+
extra: () => (semantic === undefined ? {} : { semantic })
|
|
155
180
|
});
|
|
156
181
|
if (typeof answer === "string" || isStoryCheckReport(answer))
|
|
157
182
|
return answer;
|
|
@@ -170,10 +195,58 @@ export const runStoryShot = async (config, url, input, outDir) => {
|
|
|
170
195
|
const answer = await runOnStories(config, url, input, {
|
|
171
196
|
specifier: "@forgebook/testing/shot",
|
|
172
197
|
name: "shotStories",
|
|
173
|
-
extra: { outDir }
|
|
198
|
+
extra: () => ({ outDir })
|
|
174
199
|
});
|
|
175
200
|
if (typeof answer === "string" || isStoryShotReport(answer))
|
|
176
201
|
return answer;
|
|
177
202
|
return "@forgebook/testing/shot answered something that is not a picture run's report";
|
|
178
203
|
};
|
|
179
|
-
|
|
204
|
+
/**
|
|
205
|
+
* The component a comparison names, by its current id and the one the former rule gave it, so its baselines under
|
|
206
|
+
* either are its own; none when the id names a story.
|
|
207
|
+
*
|
|
208
|
+
* @param document - the catalogue's stories.
|
|
209
|
+
* @param id - the id asked for, current or former.
|
|
210
|
+
*/
|
|
211
|
+
export const diffedComponent = (document, id) => {
|
|
212
|
+
const component = namedComponent(document, id);
|
|
213
|
+
if (component === undefined)
|
|
214
|
+
return {};
|
|
215
|
+
const former = formerComponentId(component.source, component.title);
|
|
216
|
+
return { component: component.id, ...(former === component.id ? {} : { formerComponent: former }) };
|
|
217
|
+
};
|
|
218
|
+
/**
|
|
219
|
+
* Compares the stories' pictures with their baselines.
|
|
220
|
+
*
|
|
221
|
+
* @param config - the catalogue's configuration.
|
|
222
|
+
* @param url - where `forgebook dev` runs, when not at Vite's default address.
|
|
223
|
+
* @param input - the id, the views and whether to compare every variant.
|
|
224
|
+
* @param folders - the baselines' folder and the one the new pictures go in, absolute.
|
|
225
|
+
* @returns the results, or why they could not be had.
|
|
226
|
+
*/
|
|
227
|
+
export const runStoryDiff = async (config, url, input, folders) => {
|
|
228
|
+
const answer = await runOnStories(config, url, input, {
|
|
229
|
+
specifier: "@forgebook/testing/diff",
|
|
230
|
+
name: "diffStories",
|
|
231
|
+
extra: (document) => ({ ...folders, ...diffedComponent(document, input.id) })
|
|
232
|
+
});
|
|
233
|
+
if (typeof answer === "string" || isStoryDiffReport(answer))
|
|
234
|
+
return answer;
|
|
235
|
+
return "@forgebook/testing/diff answered something that is not a comparison's report";
|
|
236
|
+
};
|
|
237
|
+
/**
|
|
238
|
+
* Checks pages of an application.
|
|
239
|
+
*
|
|
240
|
+
* @param config - the catalogue's configuration: its accessibility rules, and the folder the testing package is in.
|
|
241
|
+
* @param addresses - the pages' addresses.
|
|
242
|
+
* @returns the report, or why the check could not run.
|
|
243
|
+
*/
|
|
244
|
+
export const runPageCheck = async (config, addresses) => {
|
|
245
|
+
const check = await testingFunction(config.dir, "@forgebook/testing/check-page", "checkPages");
|
|
246
|
+
if (typeof check === "string")
|
|
247
|
+
return check;
|
|
248
|
+
const answer = await check({ addresses, lists: config.lists });
|
|
249
|
+
return isStoryCheckReport(answer)
|
|
250
|
+
? answer
|
|
251
|
+
: "@forgebook/testing/check-page answered something that is not a report";
|
|
252
|
+
};
|