forgebook 0.1.7 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +906 -23
- 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 +161 -40
- package/dist/bin/forgebook/agentText.d.ts +74 -3
- package/dist/bin/forgebook/agentText.js +192 -8
- package/dist/bin/forgebook/agents.md +145 -7
- 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 +23 -11
- 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 -16
- 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 +24 -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 +88 -24
- 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 +128 -29
- 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/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 +57 -21
- package/dist/src/catalogue.js +34 -15
- package/dist/src/codeLiteral.d.ts +41 -0
- package/dist/src/codeLiteral.js +51 -0
- package/dist/src/componentDocs.d.ts +86 -1
- package/dist/src/componentDocs.js +33 -3
- package/dist/src/controlKeys.d.ts +0 -1
- package/dist/src/controlKeys.js +2 -2
- 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 +162 -63
- 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/touchDots.d.ts +0 -1
- package/dist/src/frame/touchDots.js +0 -1
- package/dist/src/frame/touchEvents.d.ts +0 -1
- package/dist/src/frame/touchEvents.js +0 -1
- 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 +4 -30
- 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 +46 -0
- package/dist/src/propGroups.js +59 -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 +12 -4
- package/dist/src/shell/ApiReference.js +74 -19
- 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 +45 -7
- package/dist/src/shell/ComponentPage.js +107 -49
- 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 +9 -0
- package/dist/src/shell/LogicMark.js +5 -0
- 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/PropsTab.d.ts +11 -2
- package/dist/src/shell/PropsTab.js +31 -5
- 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 +292 -84
- 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 +10 -2
- package/dist/src/shell/SidebarEntries.js +3 -3
- 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 +25 -0
- package/dist/src/shell/SignatureReference.js +25 -0
- package/dist/src/shell/Stage.d.ts +9 -4
- package/dist/src/shell/Stage.js +121 -60
- 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 +126 -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 +9 -3
- package/dist/src/shell/Toolbar.js +12 -7
- 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 +3 -3
- package/dist/src/shell/compareVariants.js +6 -5
- 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 +451 -0
- package/dist/src/shell/dockTabs.d.ts +15 -4
- package/dist/src/shell/dockTabs.js +69 -26
- 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 +4 -1
- package/dist/src/shell/icons.js +4 -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 +24 -0
- package/dist/src/shell/logicView.js +39 -0
- 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/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 +310 -136
- 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 +62 -80
- package/dist/src/shell/strings.js +60 -79
- 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/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/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 +35 -0
- package/dist/src/shell/useShownView.js +36 -0
- 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 +12 -2
- 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 +0 -1
- 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 +88 -25
- package/dist/src/storyTree.js +219 -126
- 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 +37 -9
- package/dist/src/viewState.js +67 -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 +281 -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 +131 -8
- 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 +167 -24
- 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 +142 -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 +65 -9
- package/dist/src/vite/configFile.js +182 -28
- 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 +50 -0
- package/dist/src/vite/docPagesModule.js +118 -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 +44 -3
- package/dist/src/vite/docsExtractor.js +160 -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/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 +1 -2
- package/dist/src/vite/forgebookPlugin.js +330 -263
- 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 +326 -0
- package/dist/src/vite/functionComponentDocs.d.ts +26 -0
- package/dist/src/vite/functionComponentDocs.js +193 -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 +24 -0
- package/dist/src/vite/heightsRoute.js +42 -0
- 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 +168 -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 +20 -19
- package/dist/src/vite/indexStoryFile.js +172 -201
- package/dist/src/vite/indexedParameters.d.ts +10 -0
- package/dist/src/vite/indexedParameters.js +110 -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 +87 -0
- package/dist/src/vite/originGuard.js +163 -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 +63 -10
- package/dist/src/vite/pages.js +264 -33
- 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 +20 -0
- package/dist/src/vite/pluginIds.js +61 -0
- package/dist/src/vite/pluginModules.d.ts +140 -0
- package/dist/src/vite/pluginModules.js +176 -0
- package/dist/src/vite/prebundled.d.ts +18 -5
- package/dist/src/vite/prebundled.js +28 -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 +40 -0
- package/dist/src/vite/searchModule.js +212 -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 +56 -4
- package/dist/src/vite/storyFilesModule.js +122 -34
- 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/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 +20 -0
- package/dist/src/vite/textQueries.js +20 -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 +66 -3
- 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/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/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/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/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/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,113 @@
|
|
|
1
|
+
/** A quoted string, either quote, on one line. */
|
|
2
|
+
const QUOTED = /"(?:[^"\\\n]|\\.)*"|'(?:[^'\\\n]|\\.)*'/y;
|
|
3
|
+
/** A number, with a CSS unit when it has one. */
|
|
4
|
+
const NUMBER = /-?\b\d+(?:\.\d+)?(?:[a-zA-Z]+|%)?/y;
|
|
5
|
+
/** The rules of CSS, which SCSS extends. */
|
|
6
|
+
const CSS_RULES = [
|
|
7
|
+
[/\/\*[\s\S]*?\*\//y, "comment"],
|
|
8
|
+
[QUOTED, "string"],
|
|
9
|
+
[/@[\w-]+/y, "keyword"],
|
|
10
|
+
[/#[0-9a-fA-F]{3,8}\b/y, "number"],
|
|
11
|
+
[/[.#][a-zA-Z_][\w-]*/y, "type"],
|
|
12
|
+
[/--[\w-]+/y, "property"],
|
|
13
|
+
[/[a-zA-Z-]+(?=[ \t]*:[ \t])/y, "property"],
|
|
14
|
+
[NUMBER, "number"]
|
|
15
|
+
];
|
|
16
|
+
/** The rules of SCSS: line comments and variables on top of CSS. */
|
|
17
|
+
const SCSS_RULES = [
|
|
18
|
+
[/\/\/[^\n]*/y, "comment"],
|
|
19
|
+
[/\$[\w-]+/y, "property"],
|
|
20
|
+
...CSS_RULES
|
|
21
|
+
];
|
|
22
|
+
/** The rules of JSON: a string before a colon is a key. */
|
|
23
|
+
const JSON_RULES = [
|
|
24
|
+
[/"(?:[^"\\\n]|\\.)*"(?=[ \t]*:)/y, "property"],
|
|
25
|
+
[QUOTED, "string"],
|
|
26
|
+
[/\b(?:true|false|null)\b/y, "keyword"],
|
|
27
|
+
[NUMBER, "number"]
|
|
28
|
+
];
|
|
29
|
+
/** The rules of a shell. */
|
|
30
|
+
const SHELL_RULES = [
|
|
31
|
+
[/(?<![^\s])#[^\n]*/y, "comment"],
|
|
32
|
+
[QUOTED, "string"],
|
|
33
|
+
[/\$\{[^}\n]*\}|\$\w+/y, "property"],
|
|
34
|
+
[/\b(?:if|then|else|elif|fi|for|in|do|done|while|case|esac|function|export|return|cd|echo)\b/y, "keyword"]
|
|
35
|
+
];
|
|
36
|
+
/** The rules inside an HTML tag, whose name comes first. */
|
|
37
|
+
const TAG_RULES = [
|
|
38
|
+
[/(?<=<\/?)[\w:.-]+/y, "tag"],
|
|
39
|
+
[QUOTED, "string"],
|
|
40
|
+
[/[\w:.-]+(?==)/y, "attribute"]
|
|
41
|
+
];
|
|
42
|
+
/** The grammars, by the names a Markdown fence gives them. */
|
|
43
|
+
const GRAMMARS = {
|
|
44
|
+
css: CSS_RULES,
|
|
45
|
+
scss: SCSS_RULES,
|
|
46
|
+
json: JSON_RULES,
|
|
47
|
+
bash: SHELL_RULES,
|
|
48
|
+
sh: SHELL_RULES,
|
|
49
|
+
shell: SHELL_RULES,
|
|
50
|
+
zsh: SHELL_RULES
|
|
51
|
+
};
|
|
52
|
+
/** The names of HTML. */
|
|
53
|
+
const HTML_NAMES = new Set(["html", "xml", "svg"]);
|
|
54
|
+
/** The rule that matches at a position, with its length. */
|
|
55
|
+
const matchAt = (code, index, rules) => {
|
|
56
|
+
for (const [pattern, role] of rules) {
|
|
57
|
+
pattern.lastIndex = index;
|
|
58
|
+
const found = pattern.exec(code);
|
|
59
|
+
if (found !== null && found[0] !== "")
|
|
60
|
+
return { role, length: found[0].length };
|
|
61
|
+
}
|
|
62
|
+
return undefined;
|
|
63
|
+
};
|
|
64
|
+
/** Pieces with the plain text between them joined, so an example makes few spans. */
|
|
65
|
+
const piecesOf = (code, rules) => {
|
|
66
|
+
const pieces = [];
|
|
67
|
+
let plainFrom = 0;
|
|
68
|
+
let index = 0;
|
|
69
|
+
while (index < code.length) {
|
|
70
|
+
const match = matchAt(code, index, rules);
|
|
71
|
+
if (match === undefined) {
|
|
72
|
+
index += 1;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
if (plainFrom < index)
|
|
76
|
+
pieces.push({ text: code.slice(plainFrom, index) });
|
|
77
|
+
pieces.push({ text: code.slice(index, index + match.length), role: match.role });
|
|
78
|
+
index += match.length;
|
|
79
|
+
plainFrom = index;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
if (plainFrom < code.length)
|
|
83
|
+
pieces.push({ text: code.slice(plainFrom) });
|
|
84
|
+
return pieces;
|
|
85
|
+
};
|
|
86
|
+
/** HTML: comments and tags are coloured, and the text between them is left as it is. */
|
|
87
|
+
const htmlPieces = (code) => {
|
|
88
|
+
const pieces = [];
|
|
89
|
+
let index = 0;
|
|
90
|
+
for (const part of code.matchAll(/<!--[\s\S]*?-->|<[^>]*>/g)) {
|
|
91
|
+
if (part.index > index)
|
|
92
|
+
pieces.push({ text: code.slice(index, part.index) });
|
|
93
|
+
const isComment = part[0].startsWith("<!--");
|
|
94
|
+
pieces.push(...(isComment ? [{ text: part[0], role: "comment" }] : piecesOf(part[0], TAG_RULES)));
|
|
95
|
+
index = part.index + part[0].length;
|
|
96
|
+
}
|
|
97
|
+
if (index < code.length)
|
|
98
|
+
pieces.push({ text: code.slice(index) });
|
|
99
|
+
return pieces;
|
|
100
|
+
};
|
|
101
|
+
/**
|
|
102
|
+
* A piece of documentation's code as coloured pieces.
|
|
103
|
+
*
|
|
104
|
+
* @param code - the code.
|
|
105
|
+
* @param language - its language, as a Markdown fence names it.
|
|
106
|
+
* @returns the pieces, or none for a language with no grammar here.
|
|
107
|
+
*/
|
|
108
|
+
export const grammarPieces = (code, language) => {
|
|
109
|
+
if (HTML_NAMES.has(language))
|
|
110
|
+
return htmlPieces(code);
|
|
111
|
+
const rules = Object.hasOwn(GRAMMARS, language) ? GRAMMARS[language] : undefined;
|
|
112
|
+
return rules === undefined ? undefined : piecesOf(code, rules);
|
|
113
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { ForgebookPlugin } from "../plugin.ts";
|
|
2
|
+
import { type ViewSwitch } from "../switches.ts";
|
|
3
|
+
import type { PluginsDocument } from "./agent.types.ts";
|
|
4
|
+
/** The versions of the contract this Forgebook speaks. */
|
|
5
|
+
export declare const SUPPORTED_PLUGIN_API_VERSIONS: readonly number[];
|
|
6
|
+
/**
|
|
7
|
+
* The module a plugin runs in a catalogue's frames, or none.
|
|
8
|
+
*
|
|
9
|
+
* @param plugin - the plugin.
|
|
10
|
+
* @param framework - the catalogue's framework.
|
|
11
|
+
*/
|
|
12
|
+
export declare const pluginFrameModule: (plugin: ForgebookPlugin, framework: string) => string | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* Why a list of plugins cannot be used, or none.
|
|
15
|
+
*
|
|
16
|
+
* @param plugins - the configuration's plugins.
|
|
17
|
+
* @param framework - the catalogue's framework.
|
|
18
|
+
* @param dir - the configuration's folder.
|
|
19
|
+
*/
|
|
20
|
+
export declare const pluginsProblem: (plugins: readonly ForgebookPlugin[], framework: string, dir: string) => string | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* The catalogue's switches with the plugins' after them: a plugin adds to the catalogue's and never takes the place of
|
|
23
|
+
* the theme and the contrast it would have by default. The catalogue's own switch of the same id wins.
|
|
24
|
+
*
|
|
25
|
+
* @param switches - the catalogue's, merged with its presets'; none when neither declares any.
|
|
26
|
+
* @param plugins - the plugins.
|
|
27
|
+
*/
|
|
28
|
+
export declare const withPluginSwitches: (switches: readonly ViewSwitch[] | undefined, plugins: readonly ForgebookPlugin[]) => readonly ViewSwitch[] | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* Every module of the plugins that pages import, for pre-bundling an installed plugin.
|
|
31
|
+
*
|
|
32
|
+
* @param plugins - the plugins.
|
|
33
|
+
* @param framework - the catalogue's framework.
|
|
34
|
+
*/
|
|
35
|
+
export declare const pluginModules: (plugins: readonly ForgebookPlugin[], framework: string) => string[];
|
|
36
|
+
/**
|
|
37
|
+
* The fences the plugins add, for the docs pages' compiler.
|
|
38
|
+
*
|
|
39
|
+
* @param plugins - the plugins.
|
|
40
|
+
*/
|
|
41
|
+
export declare const pluginFences: (plugins: readonly ForgebookPlugin[]) => readonly string[];
|
|
42
|
+
/**
|
|
43
|
+
* The plugins as tools and agents read them.
|
|
44
|
+
*
|
|
45
|
+
* @param plugins - the plugins.
|
|
46
|
+
*/
|
|
47
|
+
export declare const pluginsDocument: (plugins: readonly ForgebookPlugin[]) => PluginsDocument;
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The plugins a configuration lists, checked on Node before anything is generated from them, and what they add to it.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* A configuration is code nobody type-checked against this version, and what it names ends up in generated imports and
|
|
6
|
+
* in the address, so every plugin is read as `unknown`-shaped data here: one whose contract this Forgebook does not
|
|
7
|
+
* speak, or that collides with another or with Forgebook itself, stops the catalogue with a message that names it,
|
|
8
|
+
* rather than breaking a page later.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
import { existsSync } from "node:fs";
|
|
13
|
+
import { createRequire } from "node:module";
|
|
14
|
+
import { join, resolve } from "node:path";
|
|
15
|
+
import { PANEL_TAB_IDS } from "../catalogue.js";
|
|
16
|
+
import { DEFAULT_SWITCHES } from "../switches.js";
|
|
17
|
+
/** The versions of the contract this Forgebook speaks. */
|
|
18
|
+
export const SUPPORTED_PLUGIN_API_VERSIONS = [1];
|
|
19
|
+
/**
|
|
20
|
+
* The fences a plugin may not take: a page's own, and the languages people write code in, which would stop being code on
|
|
21
|
+
* every page of the catalogue.
|
|
22
|
+
*/
|
|
23
|
+
const OWN_FENCES = [
|
|
24
|
+
...[
|
|
25
|
+
"story",
|
|
26
|
+
"props",
|
|
27
|
+
"bash",
|
|
28
|
+
"c",
|
|
29
|
+
"cpp",
|
|
30
|
+
"css",
|
|
31
|
+
"diff",
|
|
32
|
+
"go",
|
|
33
|
+
"html",
|
|
34
|
+
"java",
|
|
35
|
+
"js",
|
|
36
|
+
"json",
|
|
37
|
+
"jsx",
|
|
38
|
+
"kotlin"
|
|
39
|
+
],
|
|
40
|
+
...["markdown", "md", "mdx", "php", "python", "py", "ruby", "rust", "scss", "sh", "shell", "sql", "swift"],
|
|
41
|
+
...["text", "toml", "ts", "tsx", "txt", "xml", "yaml", "yml"]
|
|
42
|
+
];
|
|
43
|
+
/** A plugin's id: lower-case words and hyphens. */
|
|
44
|
+
const NAME = /^[a-z][a-z0-9-]*$/;
|
|
45
|
+
/**
|
|
46
|
+
* The first of some names that is there twice, or not one of the plugin's.
|
|
47
|
+
*
|
|
48
|
+
* @param plugin - the plugin's id.
|
|
49
|
+
* @param names - the names.
|
|
50
|
+
* @param seen - the names of every plugin so far.
|
|
51
|
+
* @param what - what a name names, for the message.
|
|
52
|
+
*/
|
|
53
|
+
const namesProblem = (plugin, names, seen, what) => {
|
|
54
|
+
for (const name of names) {
|
|
55
|
+
if (name !== plugin && !(name.startsWith(`${plugin}-`) && NAME.test(name)))
|
|
56
|
+
return `${what} "${name}" must be "${plugin}", or start with "${plugin}-"`;
|
|
57
|
+
if (seen.has(name))
|
|
58
|
+
return `${what} "${name}" is given twice`;
|
|
59
|
+
seen.add(name);
|
|
60
|
+
}
|
|
61
|
+
return undefined;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* The module a plugin runs in a catalogue's frames, or none.
|
|
65
|
+
*
|
|
66
|
+
* @param plugin - the plugin.
|
|
67
|
+
* @param framework - the catalogue's framework.
|
|
68
|
+
*/
|
|
69
|
+
export const pluginFrameModule = (plugin, framework) => typeof plugin.frame === "object" ? plugin.frame[framework] : plugin.frame;
|
|
70
|
+
/** A package's name, from a specifier of it (`@acme/ui/browser` → `@acme/ui`). */
|
|
71
|
+
const packageOf = (specifier) => specifier
|
|
72
|
+
.split("/")
|
|
73
|
+
.slice(0, specifier.startsWith("@") ? 2 : 1)
|
|
74
|
+
.join("/");
|
|
75
|
+
/**
|
|
76
|
+
* Whether a project installs a package, by its folder: a browser-only package may hide even its manifest from Node.
|
|
77
|
+
*
|
|
78
|
+
* @param dir - the configuration's folder.
|
|
79
|
+
* @param name - the package.
|
|
80
|
+
*/
|
|
81
|
+
const isPackageInstalled = (dir, name) => (createRequire(resolve(dir, "package.json")).resolve.paths(name) ?? []).some((folder) => existsSync(join(folder, name)));
|
|
82
|
+
/**
|
|
83
|
+
* Why a plugin's fields do not have their shape, or none: a configuration is not type-checked, and a field read as
|
|
84
|
+
* what it is not would otherwise stop the catalogue with a bare `TypeError`.
|
|
85
|
+
*
|
|
86
|
+
* @param plugin - the plugin.
|
|
87
|
+
*/
|
|
88
|
+
const shapeProblem = (plugin) => {
|
|
89
|
+
const lists = [
|
|
90
|
+
plugin.tabs,
|
|
91
|
+
plugin.switches,
|
|
92
|
+
plugin.docBlocks,
|
|
93
|
+
plugin.browserDependencies
|
|
94
|
+
];
|
|
95
|
+
if (lists.some((list) => list !== undefined && !Array.isArray(list)))
|
|
96
|
+
return `the plugin "${plugin.id}" gives a list that is no list`;
|
|
97
|
+
const named = [
|
|
98
|
+
...(plugin.tabs ?? []).map((tab) => tab?.id),
|
|
99
|
+
...(plugin.switches ?? []).map((each) => each?.id),
|
|
100
|
+
...(plugin.docBlocks ?? []).map((block) => block?.fence)
|
|
101
|
+
];
|
|
102
|
+
if (named.some((name) => typeof name !== "string"))
|
|
103
|
+
return `the plugin "${plugin.id}" adds something with no id`;
|
|
104
|
+
const { frame } = plugin;
|
|
105
|
+
const isFrame = frame === undefined || typeof frame === "string" || (typeof frame === "object" && frame !== null);
|
|
106
|
+
return isFrame ? undefined : `the plugin "${plugin.id}" names a frame that is no specifier`;
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* Why one plugin cannot be used, or none.
|
|
110
|
+
*
|
|
111
|
+
* @param plugin - the plugin.
|
|
112
|
+
* @param framework - the catalogue's framework.
|
|
113
|
+
* @param dir - the configuration's folder.
|
|
114
|
+
*/
|
|
115
|
+
const pluginProblem = (plugin, framework, dir) => {
|
|
116
|
+
if (!SUPPORTED_PLUGIN_API_VERSIONS.includes(plugin.apiVersion)) {
|
|
117
|
+
return (`the plugin "${plugin.id}" is written for version ${String(plugin.apiVersion)} of the plugin API, and this ` +
|
|
118
|
+
`Forgebook speaks version ${SUPPORTED_PLUGIN_API_VERSIONS.join(", ")}: update one of them`);
|
|
119
|
+
}
|
|
120
|
+
if (typeof plugin.frame === "object" && plugin.frame[framework] === undefined) {
|
|
121
|
+
const frameworks = Object.keys(plugin.frame).join(", ");
|
|
122
|
+
return `the plugin "${plugin.id}" runs in frames of ${frameworks}, and this catalogue is ${framework}`;
|
|
123
|
+
}
|
|
124
|
+
const modules = [
|
|
125
|
+
...(plugin.tabs ?? []).map((tab) => tab.view),
|
|
126
|
+
...(plugin.docBlocks ?? []).map((block) => block.view),
|
|
127
|
+
...(plugin.frame === undefined ? [] : [pluginFrameModule(plugin, framework)])
|
|
128
|
+
];
|
|
129
|
+
if (modules.some((module) => typeof module !== "string" || module === ""))
|
|
130
|
+
return `the plugin "${plugin.id}" names a module that is no specifier`;
|
|
131
|
+
const missing = (plugin.browserDependencies ?? [])
|
|
132
|
+
.map(packageOf)
|
|
133
|
+
.find((name) => !isPackageInstalled(dir, name));
|
|
134
|
+
return missing === undefined
|
|
135
|
+
? undefined
|
|
136
|
+
: `the plugin "${plugin.id}" needs the package ${missing}, which this project does not install`;
|
|
137
|
+
};
|
|
138
|
+
/**
|
|
139
|
+
* Why a list of plugins cannot be used, or none.
|
|
140
|
+
*
|
|
141
|
+
* @param plugins - the configuration's plugins.
|
|
142
|
+
* @param framework - the catalogue's framework.
|
|
143
|
+
* @param dir - the configuration's folder.
|
|
144
|
+
*/
|
|
145
|
+
export const pluginsProblem = (plugins, framework, dir) => {
|
|
146
|
+
const ids = new Set();
|
|
147
|
+
const tabs = new Set(PANEL_TAB_IDS);
|
|
148
|
+
const switches = new Set();
|
|
149
|
+
const fences = new Set(OWN_FENCES);
|
|
150
|
+
for (const plugin of plugins) {
|
|
151
|
+
const { id } = plugin;
|
|
152
|
+
if (typeof id !== "string" || !NAME.test(id))
|
|
153
|
+
return `the plugin "${String(id)}" must be lower-case words and hyphens`;
|
|
154
|
+
if (ids.has(id))
|
|
155
|
+
return `the plugin "${id}" is given twice`;
|
|
156
|
+
ids.add(id);
|
|
157
|
+
const problem = shapeProblem(plugin) ??
|
|
158
|
+
pluginProblem(plugin, framework, dir) ??
|
|
159
|
+
namesProblem(id, (plugin.tabs ?? []).map((tab) => tab.id), tabs, "the tab") ??
|
|
160
|
+
namesProblem(id, (plugin.switches ?? []).map((each) => each.id), switches, "the switch") ??
|
|
161
|
+
namesProblem(id, (plugin.docBlocks ?? []).map((block) => block.fence), fences, "the docs block");
|
|
162
|
+
if (problem !== undefined)
|
|
163
|
+
return problem;
|
|
164
|
+
}
|
|
165
|
+
return undefined;
|
|
166
|
+
};
|
|
167
|
+
/**
|
|
168
|
+
* The catalogue's switches with the plugins' after them: a plugin adds to the catalogue's and never takes the place of
|
|
169
|
+
* the theme and the contrast it would have by default. The catalogue's own switch of the same id wins.
|
|
170
|
+
*
|
|
171
|
+
* @param switches - the catalogue's, merged with its presets'; none when neither declares any.
|
|
172
|
+
* @param plugins - the plugins.
|
|
173
|
+
*/
|
|
174
|
+
export const withPluginSwitches = (switches, plugins) => {
|
|
175
|
+
const added = plugins.flatMap((plugin) => plugin.switches ?? []);
|
|
176
|
+
if (added.length === 0)
|
|
177
|
+
return switches;
|
|
178
|
+
const own = switches ?? DEFAULT_SWITCHES;
|
|
179
|
+
return [...own, ...added.filter((each) => !own.some((other) => other.id === each.id))];
|
|
180
|
+
};
|
|
181
|
+
/**
|
|
182
|
+
* Every module of the plugins that pages import, for pre-bundling an installed plugin.
|
|
183
|
+
*
|
|
184
|
+
* @param plugins - the plugins.
|
|
185
|
+
* @param framework - the catalogue's framework.
|
|
186
|
+
*/
|
|
187
|
+
export const pluginModules = (plugins, framework) => plugins.flatMap((plugin) => {
|
|
188
|
+
const frame = pluginFrameModule(plugin, framework);
|
|
189
|
+
return [
|
|
190
|
+
...(plugin.tabs ?? []).map((tab) => tab.view),
|
|
191
|
+
...(plugin.docBlocks ?? []).map((block) => block.view),
|
|
192
|
+
...(frame === undefined ? [] : [frame])
|
|
193
|
+
];
|
|
194
|
+
});
|
|
195
|
+
/**
|
|
196
|
+
* The fences the plugins add, for the docs pages' compiler.
|
|
197
|
+
*
|
|
198
|
+
* @param plugins - the plugins.
|
|
199
|
+
*/
|
|
200
|
+
export const pluginFences = (plugins) => plugins.flatMap((plugin) => (plugin.docBlocks ?? []).map((block) => block.fence));
|
|
201
|
+
/**
|
|
202
|
+
* The plugins as tools and agents read them.
|
|
203
|
+
*
|
|
204
|
+
* @param plugins - the plugins.
|
|
205
|
+
*/
|
|
206
|
+
export const pluginsDocument = (plugins) => ({
|
|
207
|
+
schema: 1,
|
|
208
|
+
apiVersions: SUPPORTED_PLUGIN_API_VERSIONS,
|
|
209
|
+
plugins: plugins.map((plugin) => ({
|
|
210
|
+
id: plugin.id,
|
|
211
|
+
tabs: (plugin.tabs ?? []).map((tab) => ({
|
|
212
|
+
id: tab.id,
|
|
213
|
+
label: tab.label,
|
|
214
|
+
...(tab.when === undefined ? {} : { when: tab.when })
|
|
215
|
+
})),
|
|
216
|
+
switches: (plugin.switches ?? []).map((each) => each.id),
|
|
217
|
+
docBlocks: (plugin.docBlocks ?? []).map((block) => block.fence),
|
|
218
|
+
runsInFrames: plugin.frame !== undefined
|
|
219
|
+
}))
|
|
220
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** The id of a pattern's docs pages: virtual, with the declaring module's folder and the pattern after it. */
|
|
2
|
+
export declare const DOCS_PAGES_PREFIX = "\0forgebook-docs-pages:";
|
|
3
|
+
/**
|
|
4
|
+
* The id of a pattern's module, when an import asks for one: its story files, or its docs pages.
|
|
5
|
+
*
|
|
6
|
+
* @param source - the import's specifier.
|
|
7
|
+
* @param folder - the importing module's folder.
|
|
8
|
+
*/
|
|
9
|
+
export declare const patternId: (source: string, folder: string) => string | null;
|
|
10
|
+
/**
|
|
11
|
+
* The id of a virtual module the plugin makes (the configuration's data, the tokens, a group's "Used in", reach,
|
|
12
|
+
* search indexes or texts), when the import names one.
|
|
13
|
+
*
|
|
14
|
+
* @param source - the import's specifier.
|
|
15
|
+
*/
|
|
16
|
+
export declare const virtualId: (source: string) => string | undefined;
|
|
17
|
+
/** The resolved id of the configuration's data module. */
|
|
18
|
+
export declare const CONFIG_ID = "\0virtual:forgebook/config";
|
|
19
|
+
/** The resolved id of the design tokens' module. */
|
|
20
|
+
export declare const TOKENS_ID = "\0virtual:forgebook/tokens";
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The ids of the modules the plugin makes: a pattern's story files or docs pages, the configuration's data, the design
|
|
3
|
+
* tokens, a group's "Used in", reach and texts. Pure: a specifier in, an id out.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import { CONFIG_MODULE, TOKENS_MODULE } from "./pages.js";
|
|
8
|
+
import { FILES_PREFIX } from "./pluginModules.js";
|
|
9
|
+
import { PAGES_SEARCH_PREFIX, REACH_PREFIX, SEARCH_PREFIX, storyFilesGroupText, TEXTS_PREFIX, USAGE_PREFIX } from "./storyFilesModule.js";
|
|
10
|
+
/** The query that asks for the story files a pattern matches (`../src/**\/*.stories.tsx?forgebook-files`). */
|
|
11
|
+
const FILES_QUERY = "?forgebook-files";
|
|
12
|
+
/** The query that asks for the docs pages a pattern matches (`./docs/*.md?forgebook-docs-pages`). */
|
|
13
|
+
const DOCS_PAGES_QUERY = "?forgebook-docs-pages";
|
|
14
|
+
/** The id of a pattern's docs pages: virtual, with the declaring module's folder and the pattern after it. */
|
|
15
|
+
export const DOCS_PAGES_PREFIX = "\0forgebook-docs-pages:";
|
|
16
|
+
/**
|
|
17
|
+
* The id of a `?forgebook-files` module: its prefix, then its group (`storyFilesGroupText`), which holds no `..`.
|
|
18
|
+
*
|
|
19
|
+
* @param folder - the importing module's folder.
|
|
20
|
+
* @param pattern - the pattern as the import writes it.
|
|
21
|
+
*/
|
|
22
|
+
const filesId = (folder, pattern) => `${FILES_PREFIX}${storyFilesGroupText(folder, pattern)}`;
|
|
23
|
+
/**
|
|
24
|
+
* The id of a pattern's module, when an import asks for one: its story files, or its docs pages.
|
|
25
|
+
*
|
|
26
|
+
* @param source - the import's specifier.
|
|
27
|
+
* @param folder - the importing module's folder.
|
|
28
|
+
*/
|
|
29
|
+
export const patternId = (source, folder) => {
|
|
30
|
+
if (source.endsWith(FILES_QUERY))
|
|
31
|
+
return filesId(folder, source.slice(0, -FILES_QUERY.length));
|
|
32
|
+
if (!source.endsWith(DOCS_PAGES_QUERY))
|
|
33
|
+
return null;
|
|
34
|
+
const pattern = source.slice(0, -DOCS_PAGES_QUERY.length);
|
|
35
|
+
return `${DOCS_PAGES_PREFIX}${storyFilesGroupText(folder, pattern)}`;
|
|
36
|
+
};
|
|
37
|
+
/** The specifiers' prefixes of a group's virtual modules: its "Used in", its reach, its search indexes, its texts. */
|
|
38
|
+
const VIRTUAL_PREFIXES = [
|
|
39
|
+
USAGE_PREFIX,
|
|
40
|
+
REACH_PREFIX,
|
|
41
|
+
SEARCH_PREFIX,
|
|
42
|
+
PAGES_SEARCH_PREFIX,
|
|
43
|
+
TEXTS_PREFIX
|
|
44
|
+
];
|
|
45
|
+
/**
|
|
46
|
+
* The id of a virtual module the plugin makes (the configuration's data, the tokens, a group's "Used in", reach,
|
|
47
|
+
* search indexes or texts), when the import names one.
|
|
48
|
+
*
|
|
49
|
+
* @param source - the import's specifier.
|
|
50
|
+
*/
|
|
51
|
+
export const virtualId = (source) => {
|
|
52
|
+
if (source === CONFIG_MODULE)
|
|
53
|
+
return CONFIG_ID;
|
|
54
|
+
if (source === TOKENS_MODULE)
|
|
55
|
+
return TOKENS_ID;
|
|
56
|
+
return VIRTUAL_PREFIXES.some((prefix) => source.startsWith(prefix)) ? `\0${source}` : undefined;
|
|
57
|
+
};
|
|
58
|
+
/** The resolved id of the configuration's data module. */
|
|
59
|
+
export const CONFIG_ID = `\0${CONFIG_MODULE}`;
|
|
60
|
+
/** The resolved id of the design tokens' module. */
|
|
61
|
+
export const TOKENS_ID = `\0${TOKENS_MODULE}`;
|
|
@@ -0,0 +1,140 @@
|
|
|
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 KeptIndex } from "./storyFilesModule.ts";
|
|
15
|
+
/** The id of a pattern's module: virtual, with the declaring module's folder and the pattern after it. */
|
|
16
|
+
export declare const FILES_PREFIX = "\0forgebook-files:";
|
|
17
|
+
/** The resolved id of a group's "Used in" module: Rollup's mark of a virtual module, then its import's specifier. */
|
|
18
|
+
export declare const USAGE_ID_PREFIX = "\0virtual:forgebook-usage:";
|
|
19
|
+
/** The resolved id of a group's reach module, the same way. */
|
|
20
|
+
export declare const REACH_ID_PREFIX = "\0virtual:forgebook-reach:";
|
|
21
|
+
/** The resolved id of a group's texts module, a build's, the same way. */
|
|
22
|
+
export declare const TEXTS_ID_PREFIX = "\0virtual:forgebook-texts:";
|
|
23
|
+
/** The resolved id of a group of story files' search index. */
|
|
24
|
+
export declare const SEARCH_ID_PREFIX = "\0virtual:forgebook-search:";
|
|
25
|
+
/** The resolved id of a group of docs pages' search index. */
|
|
26
|
+
export declare const PAGES_SEARCH_ID_PREFIX = "\0virtual:forgebook-search-pages:";
|
|
27
|
+
/**
|
|
28
|
+
* A story file's component docs as the panel reads them, or `{ error }`.
|
|
29
|
+
*
|
|
30
|
+
* @param component - what the extractor read for the story file.
|
|
31
|
+
* @param watch - adds a file whose edit renews what holds them.
|
|
32
|
+
*/
|
|
33
|
+
export declare const docsValue: (component: DocsResult, watch: (file: string) => void) => unknown;
|
|
34
|
+
/**
|
|
35
|
+
* The module that answers a `?forgebook-docs` import: the story file's component docs, or `{ error }` for the panel.
|
|
36
|
+
*
|
|
37
|
+
* @param component - what the extractor read for the story file.
|
|
38
|
+
* @param watch - adds a file whose edit renews the module.
|
|
39
|
+
*/
|
|
40
|
+
export declare const docsModule: (component: DocsResult, watch: (file: string) => void) => {
|
|
41
|
+
code: string;
|
|
42
|
+
moduleType: "js";
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* The module of a `?forgebook-files` pattern: every matched story file's index and loaders; with the files, indexed,
|
|
46
|
+
* which the dev server keeps to tell an edit that changes the list.
|
|
47
|
+
*
|
|
48
|
+
* @param id - the module's id (`FILES_PREFIX`, then the group: `storyFilesGroupText`).
|
|
49
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
50
|
+
* @param loaders - the group's loaders besides its story files'.
|
|
51
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
52
|
+
* @param warm - starts reading the docs of a story file ahead of its request; none in a test run.
|
|
53
|
+
* @param startTexts - a build's: starts reading the files' docs, code and pages, which the module imports from the
|
|
54
|
+
* group's texts module (`builtTexts.ts`); none imports each from its query.
|
|
55
|
+
* @throws when a story file cannot be indexed.
|
|
56
|
+
*/
|
|
57
|
+
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) => {
|
|
58
|
+
code: string;
|
|
59
|
+
moduleType: "js";
|
|
60
|
+
files: readonly IndexedStoryFile[];
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* A group's "Used in" module: for each component, the components that use it, packed once per title and list of
|
|
64
|
+
* stories (`packedUsage`), which a page reads.
|
|
65
|
+
*
|
|
66
|
+
* @param id - the module's id (`USAGE_ID_PREFIX`, then the group: `storyFilesGroupText`).
|
|
67
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
68
|
+
* @param usage - reads the facts in the docs worker.
|
|
69
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
70
|
+
* @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.
|
|
71
|
+
*/
|
|
72
|
+
export declare const usageModule: (id: string, watch: (file: string) => void, usage: DocsExtractor["usage"], cache: DiskCache<KeptIndex> | undefined, pack: PackJson) => Promise<{
|
|
73
|
+
code: string;
|
|
74
|
+
moduleType: "js";
|
|
75
|
+
}>;
|
|
76
|
+
/**
|
|
77
|
+
* A group's reach module: the files each story reaches, which only the dev server's tools read (a check of what a
|
|
78
|
+
* change touches). A module of its own, since a large library's stories reach thousands of files each, which a page
|
|
79
|
+
* showing "Used in" must not download.
|
|
80
|
+
*
|
|
81
|
+
* @param id - the module's id (`REACH_ID_PREFIX`, then the group: `storyFilesGroupText`).
|
|
82
|
+
* @param watch - adds a file whose edit renews the module (each story file).
|
|
83
|
+
* @param usage - reads the facts in the docs worker.
|
|
84
|
+
* @param cache - the pattern's index kept between starts; none reads every file.
|
|
85
|
+
*/
|
|
86
|
+
export declare const reachModule: (id: string, watch: (file: string) => void, usage: DocsExtractor["usage"], cache: DiskCache<KeptIndex> | undefined) => Promise<{
|
|
87
|
+
code: string;
|
|
88
|
+
moduleType: "js";
|
|
89
|
+
}>;
|
|
90
|
+
/** A search index, made: its module, and whether it is a group of docs pages' (renewed as pages come and go). */
|
|
91
|
+
export type SearchIndexModule = {
|
|
92
|
+
/** The module. */
|
|
93
|
+
readonly module: {
|
|
94
|
+
readonly code: string;
|
|
95
|
+
readonly moduleType: "js";
|
|
96
|
+
};
|
|
97
|
+
/** Whether it indexes docs pages, not story files. */
|
|
98
|
+
readonly isPages: boolean;
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* A group's search index, when the id names one: its story files' (what their components' docs and pages say) or its
|
|
102
|
+
* docs pages'. The search's code, and the Markdown reader it needs, load with the first.
|
|
103
|
+
*
|
|
104
|
+
* @param id - the module's id.
|
|
105
|
+
* @param watch - adds a file whose edit renews the module.
|
|
106
|
+
* @param read - a story file's component docs, and how the module writes its JSON.
|
|
107
|
+
* @returns the index; none for another id.
|
|
108
|
+
*/
|
|
109
|
+
export declare const searchIndexModule: (id: string, watch: (file: string) => void, read: {
|
|
110
|
+
readonly docsOf: (storyFile: string) => Promise<DocsResult>;
|
|
111
|
+
readonly isServing: boolean;
|
|
112
|
+
readonly pack: PackJson;
|
|
113
|
+
}) => Promise<SearchIndexModule | undefined>;
|
|
114
|
+
/** What a catalogue's search indexes read and tell: what `searchIndexes` makes. */
|
|
115
|
+
export type SearchIndexes = {
|
|
116
|
+
/** A story file's component docs: a dev server reads them again each time, as they change while it runs. */
|
|
117
|
+
readonly docsOf: (storyFile: string) => Promise<DocsResult>;
|
|
118
|
+
/**
|
|
119
|
+
* A group's search index, when the id names one; none for another id.
|
|
120
|
+
*
|
|
121
|
+
* @param id - the module's id.
|
|
122
|
+
* @param watch - adds a file whose edit renews the module.
|
|
123
|
+
* @param pack - writes the index's JSON as the module's value.
|
|
124
|
+
*/
|
|
125
|
+
readonly moduleOf: (id: string, watch: (file: string) => void, pack: PackJson) => Promise<{
|
|
126
|
+
code: string;
|
|
127
|
+
moduleType: "js";
|
|
128
|
+
} | undefined>;
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* The search's indexes of a plugin: a build reads each component's docs once, for its page and its index.
|
|
132
|
+
*
|
|
133
|
+
* @param read - reads a story file's component docs, says whether a dev server runs, and keeps each index's id with the
|
|
134
|
+
* modules an edit renews (a docs pages' index with the docs pages').
|
|
135
|
+
*/
|
|
136
|
+
export declare const searchIndexes: (read: {
|
|
137
|
+
readonly extract: (storyFile: string) => Promise<DocsResult>;
|
|
138
|
+
readonly isServing: () => boolean;
|
|
139
|
+
readonly track: (id: string, isPages: boolean) => void;
|
|
140
|
+
}) => SearchIndexes;
|