forgebook 0.1.8 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +875 -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 +141 -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 -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/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 +56 -20
- package/dist/src/catalogue.js +33 -14
- 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 +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 +11 -4
- package/dist/src/shell/ApiReference.js +73 -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 +105 -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 +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/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 +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 +112 -59
- 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 +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 +451 -0
- package/dist/src/shell/dockTabs.d.ts +13 -5
- package/dist/src/shell/dockTabs.js +40 -18
- 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/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 +285 -139
- 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 +56 -80
- package/dist/src/shell/strings.js +53 -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/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 +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 +86 -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 +79 -25
- package/dist/src/storyTree.js +211 -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 +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 +279 -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 +130 -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 +321 -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 +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 +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 +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 +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 +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,40 @@
|
|
|
1
|
+
import type { DocBlock } from "../docPages.ts";
|
|
2
|
+
import type { SearchSection } from "../searchIndex.ts";
|
|
3
|
+
import type { DocsResult } from "./docsExtractor.ts";
|
|
4
|
+
import type { PackJson } from "./packedModule.ts";
|
|
5
|
+
/**
|
|
6
|
+
* HTML as stretches of documentation, one per heading that carries an anchor.
|
|
7
|
+
*
|
|
8
|
+
* @param html - the HTML.
|
|
9
|
+
* @returns the stretches, those with neither a heading nor a text left out.
|
|
10
|
+
*/
|
|
11
|
+
export declare const htmlSections: (html: string) => SearchSection[];
|
|
12
|
+
/**
|
|
13
|
+
* A docs page's blocks as stretches of documentation, one per heading: a code block belongs to the heading above it.
|
|
14
|
+
* A live story or an API table adds no text: what they show is found under its own name.
|
|
15
|
+
*
|
|
16
|
+
* @param blocks - the page's blocks.
|
|
17
|
+
*/
|
|
18
|
+
export declare const blockSections: (blocks: readonly DocBlock[]) => SearchSection[];
|
|
19
|
+
/**
|
|
20
|
+
* A group of story files' search index, as the code of its module.
|
|
21
|
+
*
|
|
22
|
+
* @param root - the declaring module's folder.
|
|
23
|
+
* @param pattern - the pattern.
|
|
24
|
+
* @param watch - adds a file whose edit renews the module.
|
|
25
|
+
* @param extract - reads a story file's component.
|
|
26
|
+
* @param isServing - whether a dev server runs: only its tools read the problems, which name files on this computer, so
|
|
27
|
+
* a static build leaves them out.
|
|
28
|
+
* @param pack - writes the index's JSON as the module's value: as it is, or in a gzipped file of a build's own, which
|
|
29
|
+
* few visits read.
|
|
30
|
+
*/
|
|
31
|
+
export declare const storySearchModule: (root: string, pattern: string, watch: (file: string) => void, extract: (storyFile: string) => Promise<DocsResult>, isServing: boolean, pack: PackJson) => Promise<string>;
|
|
32
|
+
/**
|
|
33
|
+
* A group of docs pages' search index, as the code of its module.
|
|
34
|
+
*
|
|
35
|
+
* @param root - the declaring module's folder.
|
|
36
|
+
* @param pattern - the pattern.
|
|
37
|
+
* @param watch - adds a file whose edit renews the module.
|
|
38
|
+
* @param pack - writes the index's JSON as the module's value.
|
|
39
|
+
*/
|
|
40
|
+
export declare const pagesSearchModule: (root: string, pattern: string, watch: (file: string) => void, pack: PackJson) => string;
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The modules that answer a group's search index: what the search reads that the tree does not hold, built at build time
|
|
3
|
+
* and loaded by the page on the first search, so nobody who never searches pays for it.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* A docs page's and a component's text come from the HTML the pages themselves are drawn from, so a heading's anchor here
|
|
7
|
+
* is the one on the page by construction, and whatever a page renders is what is searched. Props come from the docs the
|
|
8
|
+
* page reads too. Each stretch of text is kept whole, so a sentence is found and shown as written: it weighs little
|
|
9
|
+
* next to the code, and repeats well under compression.
|
|
10
|
+
*
|
|
11
|
+
* @module
|
|
12
|
+
*/
|
|
13
|
+
import { readFileSync } from "node:fs";
|
|
14
|
+
import { componentPage } from "./componentPage.js";
|
|
15
|
+
import { compiledDocPage } from "./docPageMarkdown.js";
|
|
16
|
+
import { indexedDocPages } from "./docPagesModule.js";
|
|
17
|
+
import { indexedStoryFiles } from "./storyFilesModule.js";
|
|
18
|
+
/** A heading of the pages' HTML: its anchor, and what is inside it. */
|
|
19
|
+
const HEADING = /<h[1-6] id="doc-([^"]*)"[^>]*>([\s\S]*?)<\/h[1-6]>/g;
|
|
20
|
+
/** A tag: `>` inside a quoted attribute does not end it. */
|
|
21
|
+
const TAG = /<\/?([a-z][a-z0-9]*)(?:"[^"]*"|'[^']*'|[^'">])*>/gi;
|
|
22
|
+
/** The tags inside a line of text: taking one out joins what it wrote apart, as coloured code is. */
|
|
23
|
+
const INLINE_TAG = /^(a|abbr|b|code|del|em|i|kbd|mark|s|small|span|strong|sub|sup|u)$/i;
|
|
24
|
+
/** The entities the Markdown renderer writes, and the space a page writes by hand; `&` comes last. */
|
|
25
|
+
const ENTITIES = [
|
|
26
|
+
["<", "<"],
|
|
27
|
+
[">", ">"],
|
|
28
|
+
[""", '"'],
|
|
29
|
+
[" ", " "],
|
|
30
|
+
["&", "&"]
|
|
31
|
+
];
|
|
32
|
+
/** HTML's text: its tags out, and what a comment or a raw `<style>` or `<script>` holds, which nobody reads. */
|
|
33
|
+
const plainText = (html) => {
|
|
34
|
+
const words = html
|
|
35
|
+
.replace(/<!--[\s\S]*?-->/g, " ")
|
|
36
|
+
.replace(/<(style|script)\b[\s\S]*?<\/\1>/gi, " ")
|
|
37
|
+
.replace(TAG, (_tag, name) => (INLINE_TAG.test(name) ? "" : " "))
|
|
38
|
+
.replace(/\s+/g, " ")
|
|
39
|
+
.replace(/ ([.,;:!?)])/g, "$1")
|
|
40
|
+
.trim();
|
|
41
|
+
const numbered = words.replace(/&#(\d+);/g, (_entity, code) => String.fromCodePoint(Number(code)));
|
|
42
|
+
return ENTITIES.reduce((text, [entity, character]) => text.replaceAll(entity, character), numbered);
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* HTML as stretches of documentation, one per heading that carries an anchor.
|
|
46
|
+
*
|
|
47
|
+
* @param html - the HTML.
|
|
48
|
+
* @returns the stretches, those with neither a heading nor a text left out.
|
|
49
|
+
*/
|
|
50
|
+
export const htmlSections = (html) => {
|
|
51
|
+
const sections = [];
|
|
52
|
+
let reached = 0;
|
|
53
|
+
let open = {};
|
|
54
|
+
const close = (end) => {
|
|
55
|
+
const text = plainText(html.slice(reached, end));
|
|
56
|
+
if (text !== "" || open.heading !== undefined)
|
|
57
|
+
sections.push({ ...open, text });
|
|
58
|
+
};
|
|
59
|
+
for (const heading of html.matchAll(HEADING)) {
|
|
60
|
+
close(heading.index);
|
|
61
|
+
reached = heading.index + heading[0].length;
|
|
62
|
+
open = { anchor: heading[1] ?? "", heading: plainText(heading[2] ?? "") };
|
|
63
|
+
}
|
|
64
|
+
close(html.length);
|
|
65
|
+
return sections;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* A text added to the stretch it follows: a page's text goes on after a code block or a live story under the same
|
|
69
|
+
* heading.
|
|
70
|
+
*
|
|
71
|
+
* @param sections - the stretches so far; the last one changes.
|
|
72
|
+
* @param text - the text.
|
|
73
|
+
*/
|
|
74
|
+
const continueSection = (sections, text) => {
|
|
75
|
+
const last = sections.pop();
|
|
76
|
+
if (last === undefined)
|
|
77
|
+
sections.push({ text });
|
|
78
|
+
else
|
|
79
|
+
sections.push({ ...last, text: `${last.text} ${text}`.trim() });
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* A docs page's blocks as stretches of documentation, one per heading: a code block belongs to the heading above it.
|
|
83
|
+
* A live story or an API table adds no text: what they show is found under its own name.
|
|
84
|
+
*
|
|
85
|
+
* @param blocks - the page's blocks.
|
|
86
|
+
*/
|
|
87
|
+
export const blockSections = (blocks) => {
|
|
88
|
+
const sections = [];
|
|
89
|
+
for (const block of blocks) {
|
|
90
|
+
if (block.kind === "code")
|
|
91
|
+
continueSection(sections, block.text.replace(/\s+/g, " ").trim());
|
|
92
|
+
if (block.kind !== "text")
|
|
93
|
+
continue;
|
|
94
|
+
const [first, ...rest] = htmlSections(block.html);
|
|
95
|
+
if (first?.heading === undefined && first !== undefined)
|
|
96
|
+
continueSection(sections, first.text);
|
|
97
|
+
else if (first !== undefined)
|
|
98
|
+
sections.push(first);
|
|
99
|
+
sections.push(...rest);
|
|
100
|
+
}
|
|
101
|
+
return sections;
|
|
102
|
+
};
|
|
103
|
+
/** Everything that is not an empty text, as one text. */
|
|
104
|
+
const joinedText = (texts) => [...new Set(texts.filter((text) => text !== undefined && text !== ""))].join(" ");
|
|
105
|
+
/** What a component's docs say of it, the rule of when to use it included. */
|
|
106
|
+
const leadOf = ({ summary, description, guidance }) => joinedText([
|
|
107
|
+
summary,
|
|
108
|
+
description,
|
|
109
|
+
...(guidance?.useWhen ?? []),
|
|
110
|
+
...(guidance?.avoidWhen ?? []),
|
|
111
|
+
guidance?.deprecated
|
|
112
|
+
]);
|
|
113
|
+
/** A list of a component's props as the index holds them. */
|
|
114
|
+
const propsOf = (props, part) => props.map(({ name, description, kind }) => ({
|
|
115
|
+
name,
|
|
116
|
+
text: description,
|
|
117
|
+
...(part === undefined ? {} : { part }),
|
|
118
|
+
...(kind === "event" ? { isEvent: true } : {})
|
|
119
|
+
}));
|
|
120
|
+
/**
|
|
121
|
+
* What the page lists of a component, in the same terms: a hook's or a function's parameters, else its props, and its
|
|
122
|
+
* parts with theirs.
|
|
123
|
+
*
|
|
124
|
+
* @param docs - the component's docs.
|
|
125
|
+
* @param isLogic - whether its stories are about logic.
|
|
126
|
+
*/
|
|
127
|
+
const componentProps = (docs, isLogic) => {
|
|
128
|
+
const isCall = isLogic && docs.signature !== undefined;
|
|
129
|
+
// the page draws no reference at all for a component with no props of its own, its parts' included
|
|
130
|
+
if (!isCall && docs.props.length === 0)
|
|
131
|
+
return [];
|
|
132
|
+
return [
|
|
133
|
+
...(isCall
|
|
134
|
+
? (docs.signature?.parameters ?? []).map(({ name, description }) => ({ name, text: description }))
|
|
135
|
+
: propsOf(docs.props, undefined)),
|
|
136
|
+
...docs.subcomponents.flatMap((subcomponent) => [
|
|
137
|
+
{ name: subcomponent.name, text: subcomponent.description },
|
|
138
|
+
...propsOf(subcomponent.props, subcomponent.name)
|
|
139
|
+
])
|
|
140
|
+
];
|
|
141
|
+
};
|
|
142
|
+
/** The fields of a component's entry that say something, so an empty one weighs nothing. */
|
|
143
|
+
const componentEntry = (docs, isLogic, sections) => {
|
|
144
|
+
const lead = docs === undefined ? "" : leadOf(docs);
|
|
145
|
+
const props = docs === undefined ? [] : componentProps(docs, isLogic);
|
|
146
|
+
return {
|
|
147
|
+
...(lead === "" ? {} : { lead }),
|
|
148
|
+
...(props.length === 0 ? {} : { props }),
|
|
149
|
+
...(sections.length === 0 ? {} : { sections })
|
|
150
|
+
};
|
|
151
|
+
};
|
|
152
|
+
/** Whether a story file's stories are all about logic: the page then documents its call, not its props. */
|
|
153
|
+
const isLogicFile = ({ index }) => index.stories.length > 0 && index.stories.every((story) => story.isLogic ?? index.isLogic ?? false);
|
|
154
|
+
/** Whether what a framework read is a component's docs. */
|
|
155
|
+
const isComponent = (docs) => docs.name !== null;
|
|
156
|
+
/**
|
|
157
|
+
* A component's entry and, when its docs cannot be read, why: its documentation file is searched either way.
|
|
158
|
+
*
|
|
159
|
+
* @param file - the story file.
|
|
160
|
+
* @param read - what the framework read of its component.
|
|
161
|
+
* @param watch - adds a file whose edit renews the module.
|
|
162
|
+
*/
|
|
163
|
+
const entryOf = (file, read, watch) => {
|
|
164
|
+
const page = componentPage(file.file);
|
|
165
|
+
if (page !== undefined)
|
|
166
|
+
watch(page.file);
|
|
167
|
+
const sections = page === undefined ? [] : htmlSections(page.html);
|
|
168
|
+
if (typeof read === "string")
|
|
169
|
+
return { entry: componentEntry(undefined, false, sections), problem: `${file.key}: ${read}` };
|
|
170
|
+
if ("sources" in read)
|
|
171
|
+
for (const source of read.sources)
|
|
172
|
+
watch(source);
|
|
173
|
+
const docs = isComponent(read.docs) ? read.docs : undefined;
|
|
174
|
+
return { entry: componentEntry(docs, isLogicFile(file), sections) };
|
|
175
|
+
};
|
|
176
|
+
/**
|
|
177
|
+
* A group of story files' search index, as the code of its module.
|
|
178
|
+
*
|
|
179
|
+
* @param root - the declaring module's folder.
|
|
180
|
+
* @param pattern - the pattern.
|
|
181
|
+
* @param watch - adds a file whose edit renews the module.
|
|
182
|
+
* @param extract - reads a story file's component.
|
|
183
|
+
* @param isServing - whether a dev server runs: only its tools read the problems, which name files on this computer, so
|
|
184
|
+
* a static build leaves them out.
|
|
185
|
+
* @param pack - writes the index's JSON as the module's value: as it is, or in a gzipped file of a build's own, which
|
|
186
|
+
* few visits read.
|
|
187
|
+
*/
|
|
188
|
+
export const storySearchModule = async (root, pattern, watch, extract, isServing, pack) => {
|
|
189
|
+
const files = indexedStoryFiles(root, pattern, watch);
|
|
190
|
+
const entries = await Promise.all(files.map(async (file) => ({ file, ...entryOf(file, await extract(file.file), watch) })));
|
|
191
|
+
const problems = entries.flatMap(({ problem }) => problem ?? []);
|
|
192
|
+
const index = {
|
|
193
|
+
components: Object.fromEntries(entries.filter(({ entry }) => Object.keys(entry).length > 0).map(({ file, entry }) => [file.key, entry])),
|
|
194
|
+
...(problems.length === 0 || !isServing ? {} : { problems })
|
|
195
|
+
};
|
|
196
|
+
return `export default ${pack(JSON.stringify(index))};`;
|
|
197
|
+
};
|
|
198
|
+
/**
|
|
199
|
+
* A group of docs pages' search index, as the code of its module.
|
|
200
|
+
*
|
|
201
|
+
* @param root - the declaring module's folder.
|
|
202
|
+
* @param pattern - the pattern.
|
|
203
|
+
* @param watch - adds a file whose edit renews the module.
|
|
204
|
+
* @param pack - writes the index's JSON as the module's value.
|
|
205
|
+
*/
|
|
206
|
+
export const pagesSearchModule = (root, pattern, watch, pack) => {
|
|
207
|
+
const pages = indexedDocPages(root, pattern, watch).map(({ key, file }) => [
|
|
208
|
+
key,
|
|
209
|
+
blockSections(compiledDocPage(file, readFileSync(file, "utf8")).blocks)
|
|
210
|
+
]);
|
|
211
|
+
return `export default ${pack(JSON.stringify({ pages: Object.fromEntries(pages) }))};`;
|
|
212
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type AgentAnswer, type RouteContext } from "./agentRoutes.ts";
|
|
2
|
+
/**
|
|
3
|
+
* What a query finds across the catalogue.
|
|
4
|
+
*
|
|
5
|
+
* @param context - what the routes read.
|
|
6
|
+
*/
|
|
7
|
+
export declare const searchAnswer: ({ tree, params, pages, view, loaded }: RouteContext) => Promise<AgentAnswer>;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { searchables, searchCatalogue } from "../search.js";
|
|
2
|
+
import { isSearchIndex, mergedSearchIndex } from "../searchIndex.js";
|
|
3
|
+
import { sourceSearchLoaders } from "../sourceFiles.js";
|
|
4
|
+
import { componentAddressOf, docPageAddressOf, storyAddressOf } from "../viewState.js";
|
|
5
|
+
import { settled } from "./agentRoutes.js";
|
|
6
|
+
/** How many results an answer gives unless asked: agents degrade with long context. */
|
|
7
|
+
const DEFAULT_LIMIT = 8;
|
|
8
|
+
/** How many results an answer can give. */
|
|
9
|
+
const MAX_LIMIT = 50;
|
|
10
|
+
/** How many hits each result lists. */
|
|
11
|
+
const HITS = 3;
|
|
12
|
+
/** A marked text as plain text. */
|
|
13
|
+
const plain = (text) => text.map((piece) => piece.text).join("");
|
|
14
|
+
/** The address a search's target opens. */
|
|
15
|
+
const addressOf = (target, pages, view) => {
|
|
16
|
+
if (target.kind === "story")
|
|
17
|
+
return storyAddressOf(pages.page, target.id, view);
|
|
18
|
+
const address = target.kind === "page"
|
|
19
|
+
? docPageAddressOf(pages.page, target.id, view)
|
|
20
|
+
: componentAddressOf(pages.page, target.id, view);
|
|
21
|
+
return target.anchor === undefined ? address : `${address}#${encodeURIComponent(target.anchor)}`;
|
|
22
|
+
};
|
|
23
|
+
/** A hit as the document gives it. */
|
|
24
|
+
const agentHit = (hit, pages, view) => ({
|
|
25
|
+
kind: hit.kind,
|
|
26
|
+
...(hit.label === undefined ? {} : { name: plain(hit.label) }),
|
|
27
|
+
text: plain(hit.snippet),
|
|
28
|
+
address: addressOf(hit.target, pages, view)
|
|
29
|
+
});
|
|
30
|
+
/** A result as the document gives it. */
|
|
31
|
+
const agentResult = (result, pages, view) => ({
|
|
32
|
+
kind: result.kind,
|
|
33
|
+
id: result.target.id,
|
|
34
|
+
name: plain(result.name),
|
|
35
|
+
place: result.place,
|
|
36
|
+
score: result.score,
|
|
37
|
+
matched: result.matched,
|
|
38
|
+
missed: result.missed,
|
|
39
|
+
reasons: result.reasons,
|
|
40
|
+
hits: result.hits.map((hit) => agentHit(hit, pages, view)),
|
|
41
|
+
hitCount: result.hitCount,
|
|
42
|
+
address: addressOf(result.target, pages, view)
|
|
43
|
+
});
|
|
44
|
+
/** A source's index, every group's read, with why one could not be. */
|
|
45
|
+
const indexOf = async (source) => {
|
|
46
|
+
const read = await Promise.all(sourceSearchLoaders(source).map((load) => settled(load)));
|
|
47
|
+
const problems = read.flatMap((each) => ("error" in each ? [`${source.name}: ${each.error}`] : []));
|
|
48
|
+
const indexes = read.flatMap((each) => ("value" in each && isSearchIndex(each.value) ? [each.value] : []));
|
|
49
|
+
return { index: mergedSearchIndex(indexes), problems };
|
|
50
|
+
};
|
|
51
|
+
/** The limit asked for, within what an answer can give. */
|
|
52
|
+
const limitOf = (text) => {
|
|
53
|
+
const limit = Number(text ?? DEFAULT_LIMIT);
|
|
54
|
+
return Number.isInteger(limit) && limit > 0 ? Math.min(limit, MAX_LIMIT) : DEFAULT_LIMIT;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* What a query finds across the catalogue.
|
|
58
|
+
*
|
|
59
|
+
* @param context - what the routes read.
|
|
60
|
+
*/
|
|
61
|
+
export const searchAnswer = async ({ tree, params, pages, view, loaded }) => {
|
|
62
|
+
const query = params.get("query") ?? "";
|
|
63
|
+
if (query.trim() === "")
|
|
64
|
+
return { status: 400, body: { error: "No words to look for" } };
|
|
65
|
+
const read = await Promise.all(loaded.sources.map(async (source) => ({ id: source.id, ...(await indexOf(source)) })));
|
|
66
|
+
const indexes = new Map(read.map(({ id, index }) => [id, index]));
|
|
67
|
+
const answer = searchCatalogue(searchables(tree, indexes), query, {
|
|
68
|
+
results: limitOf(params.get("limit")),
|
|
69
|
+
hits: HITS
|
|
70
|
+
});
|
|
71
|
+
const body = {
|
|
72
|
+
schema: 1,
|
|
73
|
+
query,
|
|
74
|
+
total: answer.total,
|
|
75
|
+
results: answer.results.map((result) => agentResult(result, pages, view)),
|
|
76
|
+
problems: read.flatMap(({ index, problems }) => [...problems, ...(index.problems ?? [])])
|
|
77
|
+
};
|
|
78
|
+
return { status: 200, body };
|
|
79
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Makes the dev server resolve a package on Node with the export conditions its pages resolve it with, so the stories
|
|
3
|
+
* and previews it loads for tools are the files the frames draw.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Vite gives its server environment conditions of its own (`module`, `node`): a catalogue's `resolve.conditions`
|
|
7
|
+
* reaches the pages only. A monorepo that points its packages at their sources with a condition (`source`) is then
|
|
8
|
+
* read from their builds on the server, or not at all where nothing is built, and a preview that imports one cannot
|
|
9
|
+
* load there. So the server takes the pages' conditions too, except those of another runtime (`browser`, which would
|
|
10
|
+
* pick a package's browser build on Node, `worker`, `react-native`). A plugin that names the server's conditions
|
|
11
|
+
* itself (`ssr.resolve.conditions`, `environments.ssr.resolve.conditions`) keeps them. The hook runs after every other
|
|
12
|
+
* plugin's, so the conditions a framework's or the catalogue's plugins add are read as well; one a plugin sets in its
|
|
13
|
+
* `configEnvironment` hook is not. Only the `forgebook` command's server has it: an app that runs the catalogue's
|
|
14
|
+
* plugin in a Vite configuration of its own names the server's conditions there.
|
|
15
|
+
*
|
|
16
|
+
* @module
|
|
17
|
+
*/
|
|
18
|
+
import { type Plugin, type UserConfig } from "vite";
|
|
19
|
+
/**
|
|
20
|
+
* The conditions the server resolves with for this configuration, or `undefined` to leave Vite's: none named for the
|
|
21
|
+
* pages, the server's named, or a server that runs as a web worker, which Vite gives the pages' conditions already.
|
|
22
|
+
*
|
|
23
|
+
* @param config - Vite's configuration, every plugin's included.
|
|
24
|
+
*/
|
|
25
|
+
export declare const serverConditionsOf: (config: UserConfig) => readonly string[] | undefined;
|
|
26
|
+
/**
|
|
27
|
+
* The plugin.
|
|
28
|
+
*
|
|
29
|
+
* @returns a plugin that sets the server environment's conditions after the other plugins set theirs.
|
|
30
|
+
*/
|
|
31
|
+
export declare const serverConditions: () => Plugin;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Makes the dev server resolve a package on Node with the export conditions its pages resolve it with, so the stories
|
|
3
|
+
* and previews it loads for tools are the files the frames draw.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Vite gives its server environment conditions of its own (`module`, `node`): a catalogue's `resolve.conditions`
|
|
7
|
+
* reaches the pages only. A monorepo that points its packages at their sources with a condition (`source`) is then
|
|
8
|
+
* read from their builds on the server, or not at all where nothing is built, and a preview that imports one cannot
|
|
9
|
+
* load there. So the server takes the pages' conditions too, except those of another runtime (`browser`, which would
|
|
10
|
+
* pick a package's browser build on Node, `worker`, `react-native`). A plugin that names the server's conditions
|
|
11
|
+
* itself (`ssr.resolve.conditions`, `environments.ssr.resolve.conditions`) keeps them. The hook runs after every other
|
|
12
|
+
* plugin's, so the conditions a framework's or the catalogue's plugins add are read as well; one a plugin sets in its
|
|
13
|
+
* `configEnvironment` hook is not. Only the `forgebook` command's server has it: an app that runs the catalogue's
|
|
14
|
+
* plugin in a Vite configuration of its own names the server's conditions there.
|
|
15
|
+
*
|
|
16
|
+
* @module
|
|
17
|
+
*/
|
|
18
|
+
import { defaultServerConditions } from "vite";
|
|
19
|
+
/**
|
|
20
|
+
* The conditions that name a build for another runtime than Node's: a package's browser build, a worker's, a native
|
|
21
|
+
* app's, another server runtime's. Node cannot run them, so the server leaves them out.
|
|
22
|
+
*/
|
|
23
|
+
const OTHER_RUNTIMES = new Set([
|
|
24
|
+
"browser",
|
|
25
|
+
"worker",
|
|
26
|
+
"react-native",
|
|
27
|
+
"deno",
|
|
28
|
+
"bun",
|
|
29
|
+
"workerd",
|
|
30
|
+
"edge-light"
|
|
31
|
+
]);
|
|
32
|
+
/**
|
|
33
|
+
* The conditions the server resolves with for this configuration, or `undefined` to leave Vite's: none named for the
|
|
34
|
+
* pages, the server's named, or a server that runs as a web worker, which Vite gives the pages' conditions already.
|
|
35
|
+
*
|
|
36
|
+
* @param config - Vite's configuration, every plugin's included.
|
|
37
|
+
*/
|
|
38
|
+
export const serverConditionsOf = (config) => {
|
|
39
|
+
const pages = config.environments?.["client"]?.resolve?.conditions ?? config.resolve?.conditions;
|
|
40
|
+
if (pages === undefined)
|
|
41
|
+
return undefined;
|
|
42
|
+
if (config.ssr?.target === "webworker")
|
|
43
|
+
return undefined;
|
|
44
|
+
if (config.ssr?.resolve?.conditions !== undefined)
|
|
45
|
+
return undefined;
|
|
46
|
+
if (config.environments?.["ssr"]?.resolve?.conditions !== undefined)
|
|
47
|
+
return undefined;
|
|
48
|
+
const forNode = pages.filter((condition) => !OTHER_RUNTIMES.has(condition));
|
|
49
|
+
return [...new Set([...forNode, ...defaultServerConditions])];
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* The plugin.
|
|
53
|
+
*
|
|
54
|
+
* @returns a plugin that sets the server environment's conditions after the other plugins set theirs.
|
|
55
|
+
*/
|
|
56
|
+
export const serverConditions = () => ({
|
|
57
|
+
name: "forgebook:server-conditions",
|
|
58
|
+
// a build loads nothing on the server, and an environment added to it would reach every plugin's hooks
|
|
59
|
+
apply: "serve",
|
|
60
|
+
config: {
|
|
61
|
+
order: "post",
|
|
62
|
+
handler: (config) => {
|
|
63
|
+
const conditions = serverConditionsOf(config);
|
|
64
|
+
return conditions === undefined
|
|
65
|
+
? undefined
|
|
66
|
+
: { environments: { ssr: { resolve: { conditions: [...conditions] } } } };
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A hook's or a function's signature, read from its types and TSDoc: what a story about logic documents first. Shared
|
|
3
|
+
* by the frameworks' docs modules.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import ts from "typescript-6";
|
|
8
|
+
import type { FunctionSignatureDocs } from "../componentDocs.ts";
|
|
9
|
+
/**
|
|
10
|
+
* A hook's or a function's signature, read at the expression that names it: its type parameters, each parameter as
|
|
11
|
+
* the source writes it (a destructured one by its pattern, a rest one marked) with its `@param` text, and the return
|
|
12
|
+
* type with its `@returns` text. An overloaded function gives its first signature.
|
|
13
|
+
*
|
|
14
|
+
* @param symbol - the function's declared symbol.
|
|
15
|
+
* @param expression - where the code names it.
|
|
16
|
+
* @param checker - the program's checker.
|
|
17
|
+
*/
|
|
18
|
+
export declare const signatureDocs: (symbol: ts.Symbol, expression: ts.Expression, checker: ts.TypeChecker) => FunctionSignatureDocs | undefined;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A hook's or a function's signature, read from its types and TSDoc: what a story about logic documents first. Shared
|
|
3
|
+
* by the frameworks' docs modules.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import ts from "typescript-6";
|
|
8
|
+
/**
|
|
9
|
+
* A type as the source writes it, on one line.
|
|
10
|
+
*
|
|
11
|
+
* @param node - the type's node.
|
|
12
|
+
*/
|
|
13
|
+
const writtenText = (node) => node.getText().replace(/\s+/g, " ").trim();
|
|
14
|
+
/**
|
|
15
|
+
* A JSDoc tag's text on one line.
|
|
16
|
+
*
|
|
17
|
+
* @param comment - the tag's comment.
|
|
18
|
+
*/
|
|
19
|
+
const tagText = (comment) => (ts.getTextOfJSDocComment(comment) ?? "").replace(/^-\s*/, "").replace(/\s+/g, " ").trim();
|
|
20
|
+
/**
|
|
21
|
+
* A hook's or a function's signature, read at the expression that names it: its type parameters, each parameter as
|
|
22
|
+
* the source writes it (a destructured one by its pattern, a rest one marked) with its `@param` text, and the return
|
|
23
|
+
* type with its `@returns` text. An overloaded function gives its first signature.
|
|
24
|
+
*
|
|
25
|
+
* @param symbol - the function's declared symbol.
|
|
26
|
+
* @param expression - where the code names it.
|
|
27
|
+
* @param checker - the program's checker.
|
|
28
|
+
*/
|
|
29
|
+
export const signatureDocs = (symbol, expression, checker) => {
|
|
30
|
+
const [signature] = checker.getTypeOfSymbolAtLocation(symbol, expression).getCallSignatures();
|
|
31
|
+
if (signature === undefined)
|
|
32
|
+
return undefined;
|
|
33
|
+
// a signature the checker made (a mapped or an intersected type) has no declaration
|
|
34
|
+
const declaration = signature.getDeclaration();
|
|
35
|
+
// a hook typed through an alias (`const useX: UseX = …`) has its comment on its own declaration, not the alias's
|
|
36
|
+
const ownTags = (symbol.declarations ?? []).flatMap((each) => [...ts.getJSDocTags(each)]);
|
|
37
|
+
const ownParameterTag = (name) => ownTags.filter(ts.isJSDocParameterTag).find((tag) => tag.name.getText() === name);
|
|
38
|
+
const parameters = signature.parameters.map((parameter) => {
|
|
39
|
+
const node = parameter.valueDeclaration;
|
|
40
|
+
const written = node !== undefined && ts.isParameter(node) ? node : undefined;
|
|
41
|
+
const tag = (written === undefined ? undefined : ts.getJSDocParameterTags(written)[0]) ??
|
|
42
|
+
ownParameterTag(parameter.getName());
|
|
43
|
+
return {
|
|
44
|
+
// a destructured parameter has no name of its own: the checker calls it `__0`
|
|
45
|
+
name: written === undefined || ts.isIdentifier(written.name)
|
|
46
|
+
? parameter.getName()
|
|
47
|
+
: writtenText(written.name),
|
|
48
|
+
type: written?.type === undefined
|
|
49
|
+
? checker.typeToString(checker.getTypeOfSymbolAtLocation(parameter, expression))
|
|
50
|
+
: writtenText(written.type),
|
|
51
|
+
description: tagText(tag?.comment),
|
|
52
|
+
isOptional: written?.questionToken !== undefined || written?.initializer !== undefined,
|
|
53
|
+
isRest: written?.dotDotDotToken !== undefined
|
|
54
|
+
};
|
|
55
|
+
});
|
|
56
|
+
const returnType = declaration?.type;
|
|
57
|
+
return {
|
|
58
|
+
typeParameters: (declaration?.typeParameters ?? []).map(writtenText),
|
|
59
|
+
parameters,
|
|
60
|
+
returns: returnType === undefined ? checker.typeToString(signature.getReturnType()) : writtenText(returnType),
|
|
61
|
+
returnsDescription: tagText(((declaration === undefined ? undefined : ts.getJSDocReturnTag(declaration)) ??
|
|
62
|
+
ownTags.find(ts.isJSDocReturnTag))?.comment)
|
|
63
|
+
};
|
|
64
|
+
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { type ParsedTokens } from "./designTokens.ts";
|
|
2
|
+
/** What a source's module says of its tokens, its paths as written. */
|
|
3
|
+
export type DeclaredSource = {
|
|
4
|
+
/** The source's id, when written plainly. */
|
|
5
|
+
readonly id: string | undefined;
|
|
6
|
+
/** Its tokens files, the base first. */
|
|
7
|
+
readonly tokens: readonly {
|
|
8
|
+
readonly file: string;
|
|
9
|
+
readonly mode: string | undefined;
|
|
10
|
+
}[];
|
|
11
|
+
/** What cannot be read of tokens it does declare. */
|
|
12
|
+
readonly problems: readonly string[];
|
|
13
|
+
/** Why the module could not be read, so whether it declares tokens is not known. */
|
|
14
|
+
readonly unread?: string;
|
|
15
|
+
};
|
|
16
|
+
/** A tokens file to read. */
|
|
17
|
+
export type TokensFileToRead = {
|
|
18
|
+
/** Its absolute path. */
|
|
19
|
+
readonly path: string;
|
|
20
|
+
/** The theme it belongs to; none for the base. */
|
|
21
|
+
readonly mode: string | undefined;
|
|
22
|
+
/** What a problem calls it. */
|
|
23
|
+
readonly label: string;
|
|
24
|
+
/** The source it comes from; none for the catalogue's own. */
|
|
25
|
+
readonly source?: string;
|
|
26
|
+
};
|
|
27
|
+
/** A source's tokens files, ready to read. */
|
|
28
|
+
export type SourceTokens = {
|
|
29
|
+
/** Its id, when written plainly. */
|
|
30
|
+
readonly id: string | undefined;
|
|
31
|
+
/** Its tokens files. */
|
|
32
|
+
readonly files: readonly TokensFileToRead[];
|
|
33
|
+
/** What cannot be read of tokens it does declare. */
|
|
34
|
+
readonly problems: readonly string[];
|
|
35
|
+
/** Why its module could not be read, so whether it declares tokens is not known. */
|
|
36
|
+
readonly unread?: string;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* What a source's module declares, from its text.
|
|
40
|
+
*
|
|
41
|
+
* @param file - the module's path, for the parser (its extension says TypeScript or JSX).
|
|
42
|
+
* @param text - the module's text.
|
|
43
|
+
*/
|
|
44
|
+
export declare const declaredSource: (file: string, text: string) => DeclaredSource;
|
|
45
|
+
/**
|
|
46
|
+
* What the source in a module gives, its paths absolute.
|
|
47
|
+
*
|
|
48
|
+
* @param file - the module's absolute path.
|
|
49
|
+
* @param name - what names the module, for the problems and the files' labels (`@acme/ui/stories`).
|
|
50
|
+
*/
|
|
51
|
+
export declare const sourceTokensIn: (file: string, name: string) => SourceTokens;
|
|
52
|
+
/**
|
|
53
|
+
* Reads tokens files from disk.
|
|
54
|
+
*
|
|
55
|
+
* @param files - the files: each source's, then the catalogue's own.
|
|
56
|
+
*/
|
|
57
|
+
export declare const readTokenFiles: (files: readonly TokensFileToRead[]) => ParsedTokens;
|