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,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a build keeps gzipped, unpacked in the page when it is asked for: what a static catalogue weighs most and reads
|
|
3
|
+
* least (axe's script, "Used in"). A build names such files `.bin`, since `.gz` makes some hosts send them with
|
|
4
|
+
* `Content-Encoding: gzip`, which the browser would unpack before the page does.
|
|
5
|
+
*
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* A gzipped file's content, unpacked.
|
|
10
|
+
*
|
|
11
|
+
* @param address - the file's address.
|
|
12
|
+
* @throws when it cannot be fetched.
|
|
13
|
+
*/
|
|
14
|
+
const unpacked = async (address) => {
|
|
15
|
+
const response = await fetch(address);
|
|
16
|
+
if (!response.ok || response.body === null)
|
|
17
|
+
throw new Error(`${address} could not be loaded (${response.status})`);
|
|
18
|
+
return new Response(response.body.pipeThrough(new DecompressionStream("gzip")));
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* A gzipped script, at an address a script element can load: a blob URL, which its loader revokes once it ran.
|
|
22
|
+
*
|
|
23
|
+
* @param address - the file's address.
|
|
24
|
+
* @throws when it cannot be fetched.
|
|
25
|
+
*/
|
|
26
|
+
export const unpackedScript = async (address) => {
|
|
27
|
+
const script = await (await unpacked(address)).arrayBuffer();
|
|
28
|
+
return URL.createObjectURL(new Blob([script], { type: "text/javascript" }));
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* A gzipped JSON document, parsed.
|
|
32
|
+
*
|
|
33
|
+
* @param address - the file's address.
|
|
34
|
+
* @throws when it cannot be fetched, or is not JSON.
|
|
35
|
+
*/
|
|
36
|
+
export const packedJson = async (address) => (await unpacked(address)).json();
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How a docs page is named in an address: its slug and a heading's anchor.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* Apart from the rest of what the plugin and the shell share (`docPages.ts`) because the tree and the address need these
|
|
6
|
+
* on every catalogue's first load, and a catalogue that opens no page must not pay for the rest. Pure.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* A fragment read back as a heading's anchor: a `%` that encodes nothing stays as written.
|
|
12
|
+
*
|
|
13
|
+
* @param fragment - the fragment, without its `#`; none when there is none.
|
|
14
|
+
* @returns the anchor; none for an empty fragment.
|
|
15
|
+
*/
|
|
16
|
+
export declare const anchorOf: (fragment: string | undefined) => string | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* A page's slug: the part of its id after the source's, from its title.
|
|
19
|
+
*
|
|
20
|
+
* @remarks
|
|
21
|
+
* As CSF writes ids (`kebab`), keeping every language's letters: a title in Japanese would otherwise have no slug at
|
|
22
|
+
* all, and two such pages would collide. For a Latin title the two agree.
|
|
23
|
+
*
|
|
24
|
+
* @param title - the page's title.
|
|
25
|
+
*/
|
|
26
|
+
export declare const pageSlug: (title: string) => string;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How a docs page is named in an address: its slug and a heading's anchor.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* Apart from the rest of what the plugin and the shell share (`docPages.ts`) because the tree and the address need these
|
|
6
|
+
* on every catalogue's first load, and a catalogue that opens no page must not pay for the rest. Pure.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* A fragment read back as a heading's anchor: a `%` that encodes nothing stays as written.
|
|
12
|
+
*
|
|
13
|
+
* @param fragment - the fragment, without its `#`; none when there is none.
|
|
14
|
+
* @returns the anchor; none for an empty fragment.
|
|
15
|
+
*/
|
|
16
|
+
export const anchorOf = (fragment) => {
|
|
17
|
+
if (fragment === undefined || fragment === "")
|
|
18
|
+
return undefined;
|
|
19
|
+
try {
|
|
20
|
+
return decodeURIComponent(fragment);
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
return fragment;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* A page's slug: the part of its id after the source's, from its title.
|
|
28
|
+
*
|
|
29
|
+
* @remarks
|
|
30
|
+
* As CSF writes ids (`kebab`), keeping every language's letters: a title in Japanese would otherwise have no slug at
|
|
31
|
+
* all, and two such pages would collide. For a Latin title the two agree.
|
|
32
|
+
*
|
|
33
|
+
* @param title - the page's title.
|
|
34
|
+
*/
|
|
35
|
+
export const pageSlug = (title) => title
|
|
36
|
+
.replace(/([a-z0-9])([A-Z])/g, "$1-$2")
|
|
37
|
+
.toLowerCase()
|
|
38
|
+
.replace(/[^\p{L}\p{N}]+/gu, "-")
|
|
39
|
+
.replace(/^-|-$/g, "");
|
package/dist/src/pageConfig.d.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { StoryLanguage } from "@forgebook/story-format/source";
|
|
8
8
|
import type { CatalogueLists } from "./catalogue.ts";
|
|
9
|
+
import type { FramesPlacement } from "./frameOrigins.ts";
|
|
9
10
|
import type { ViewSwitch } from "./switches.ts";
|
|
10
11
|
/** What the shell and the frame pages read of a configuration: data, as the plugin hands it to them. */
|
|
11
12
|
export type PageConfig = {
|
|
@@ -19,5 +20,6 @@ export type PageConfig = {
|
|
|
19
20
|
readonly languages: readonly StoryLanguage[];
|
|
20
21
|
/** The lists (widths, backgrounds, story groups, texts…), the presets' and the catalogue's merged. */
|
|
21
22
|
readonly lists: CatalogueLists;
|
|
23
|
+
/** Where the frames run: the shell loads them there, and each side hears only the other's origin. */
|
|
24
|
+
readonly frames: FramesPlacement;
|
|
22
25
|
};
|
|
23
|
-
//# sourceMappingURL=pageConfig.d.ts.map
|
package/dist/src/pageConfig.js
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=pageConfig.js.map
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A catalogue's docs pages in its tree: their ids, their places and reading order, built from the sources' indexes, and
|
|
3
|
+
* what they name that the tree does not have.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* A page's place comes from its title, as a component's does: `Guides/Theming` is a page of the group Guides, so the
|
|
7
|
+
* sidebar needs no list kept by hand. Its id is the title in kebab case, prefixed by the source's id. Pure.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import type { StorySource } from "@forgebook/story-format/source";
|
|
12
|
+
import type { StoryTree, TreeSource } from "./storyTree.ts";
|
|
13
|
+
/** One docs page. */
|
|
14
|
+
export type TreePage = {
|
|
15
|
+
/** `<source>:<slug>`: the URL's `page` parameter. */
|
|
16
|
+
readonly id: string;
|
|
17
|
+
/** The part of its id after the source's: what a link between two pages of a source names. */
|
|
18
|
+
readonly slug: string;
|
|
19
|
+
/** The last segment of the title (`Theming`). */
|
|
20
|
+
readonly name: string;
|
|
21
|
+
/** The whole title (`Guides/Theming`). */
|
|
22
|
+
readonly title: string;
|
|
23
|
+
/** The segments before the name; none for a page outside any group. */
|
|
24
|
+
readonly group: string | undefined;
|
|
25
|
+
/** Its file, a key of the source's pages. */
|
|
26
|
+
readonly file: string;
|
|
27
|
+
/** What it is about, in a sentence; none when it does not say. */
|
|
28
|
+
readonly description: string | undefined;
|
|
29
|
+
/** The ids of the stories it shows. */
|
|
30
|
+
readonly stories: readonly string[];
|
|
31
|
+
/** The ids of the components whose API tables it shows. */
|
|
32
|
+
readonly components: readonly string[];
|
|
33
|
+
/** The slugs of the pages it links to. */
|
|
34
|
+
readonly links: readonly string[];
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* The docs pages of one source, from their index; a title that cannot be placed, or is taken, is a problem.
|
|
38
|
+
*
|
|
39
|
+
* @param source - the source.
|
|
40
|
+
* @param problems - receives the problems.
|
|
41
|
+
*/
|
|
42
|
+
export declare const treePages: (source: StorySource, problems: string[]) => TreePage[];
|
|
43
|
+
/**
|
|
44
|
+
* What the docs pages name that the tree does not have: a story or a component renamed under a page must fail the
|
|
45
|
+
* index, or the page would break unseen.
|
|
46
|
+
*
|
|
47
|
+
* @param sources - the tree's sources.
|
|
48
|
+
* @param stories - the ids of its stories.
|
|
49
|
+
* @param components - the ids of its components.
|
|
50
|
+
*/
|
|
51
|
+
export declare const pageProblems: (sources: readonly TreeSource[], stories: ReadonlySet<string>, components: ReadonlySet<string>) => string[];
|
|
52
|
+
/** Where a docs page is. */
|
|
53
|
+
export type PageLocation = {
|
|
54
|
+
/** Its source. */
|
|
55
|
+
readonly source: TreeSource;
|
|
56
|
+
/** The page. */
|
|
57
|
+
readonly page: TreePage;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Finds a docs page by its id.
|
|
61
|
+
*
|
|
62
|
+
* @param tree - the tree.
|
|
63
|
+
* @param id - the page's id.
|
|
64
|
+
*/
|
|
65
|
+
export declare const findPage: (tree: StoryTree, id: string) => PageLocation | undefined;
|
|
66
|
+
/** A source's docs pages under one heading. */
|
|
67
|
+
export type PageGroup = {
|
|
68
|
+
/** The heading; none for pages outside any group. */
|
|
69
|
+
readonly name: string | undefined;
|
|
70
|
+
/** Its pages, in their order. */
|
|
71
|
+
readonly pages: readonly TreePage[];
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* Pages under their headings, in reading order: a named group sits where its first page is and takes all its pages, and
|
|
75
|
+
* pages without a group stay between the groups where their order puts them.
|
|
76
|
+
*
|
|
77
|
+
* @param pages - the pages, in their order.
|
|
78
|
+
*/
|
|
79
|
+
export declare const pageGroups: (pages: readonly TreePage[]) => PageGroup[];
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { pageSlug } from "./pageAddress.js";
|
|
2
|
+
import { sourcePages } from "./sourceFiles.js";
|
|
3
|
+
/**
|
|
4
|
+
* A page's place, from its title: the last segment its name, the ones before its group. An empty segment is a problem.
|
|
5
|
+
*
|
|
6
|
+
* @param title - the page's title.
|
|
7
|
+
*/
|
|
8
|
+
const pagePlace = (title) => {
|
|
9
|
+
const segments = title.split("/").map((segment) => segment.trim());
|
|
10
|
+
if (segments.some((segment) => segment === ""))
|
|
11
|
+
return `"${title}" has an empty segment`;
|
|
12
|
+
const name = segments.at(-1) ?? title;
|
|
13
|
+
const group = segments.slice(0, -1).join(" / ");
|
|
14
|
+
return { name, group: group === "" ? undefined : group };
|
|
15
|
+
};
|
|
16
|
+
/** A page's position: its `order`, or after every page with one. */
|
|
17
|
+
const orderOf = (entry) => entry.order ?? Number.POSITIVE_INFINITY;
|
|
18
|
+
/**
|
|
19
|
+
* The docs pages of one source, from their index; a title that cannot be placed, or is taken, is a problem.
|
|
20
|
+
*
|
|
21
|
+
* @param source - the source.
|
|
22
|
+
* @param problems - receives the problems.
|
|
23
|
+
*/
|
|
24
|
+
export const treePages = (source, problems) => {
|
|
25
|
+
const seen = new Map();
|
|
26
|
+
const entries = Object.entries(sourcePages(source).index).sort(([, left], [, right]) => orderOf(left) - orderOf(right) || left.title.localeCompare(right.title));
|
|
27
|
+
return entries.flatMap(([file, entry]) => {
|
|
28
|
+
for (const note of entry.notes ?? [])
|
|
29
|
+
problems.push(`${source.name}: ${file}: ${note}`);
|
|
30
|
+
const place = pagePlace(entry.title);
|
|
31
|
+
if (typeof place === "string") {
|
|
32
|
+
problems.push(`${source.name}: ${file}: ${place}`);
|
|
33
|
+
return [];
|
|
34
|
+
}
|
|
35
|
+
const slug = pageSlug(entry.title);
|
|
36
|
+
const other = seen.get(slug);
|
|
37
|
+
if (other !== undefined) {
|
|
38
|
+
problems.push(`${source.name}: ${file} and ${other} have the same title "${entry.title}"`);
|
|
39
|
+
return [];
|
|
40
|
+
}
|
|
41
|
+
seen.set(slug, file);
|
|
42
|
+
return [
|
|
43
|
+
{
|
|
44
|
+
id: `${source.id}:${slug}`,
|
|
45
|
+
slug,
|
|
46
|
+
title: entry.title,
|
|
47
|
+
...place,
|
|
48
|
+
file,
|
|
49
|
+
description: entry.description,
|
|
50
|
+
stories: entry.stories,
|
|
51
|
+
components: entry.components,
|
|
52
|
+
links: entry.links
|
|
53
|
+
}
|
|
54
|
+
];
|
|
55
|
+
});
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* What the docs pages name that the tree does not have: a story or a component renamed under a page must fail the
|
|
59
|
+
* index, or the page would break unseen.
|
|
60
|
+
*
|
|
61
|
+
* @param sources - the tree's sources.
|
|
62
|
+
* @param stories - the ids of its stories.
|
|
63
|
+
* @param components - the ids of its components.
|
|
64
|
+
*/
|
|
65
|
+
export const pageProblems = (sources, stories, components) => sources.flatMap((source) => source.pages.flatMap((page) => [
|
|
66
|
+
...page.stories
|
|
67
|
+
.filter((id) => !stories.has(id))
|
|
68
|
+
.map((id) => `${source.name}: ${page.file} shows the story "${id}": no such story`),
|
|
69
|
+
...page.components
|
|
70
|
+
.filter((id) => !components.has(id))
|
|
71
|
+
.map((id) => `${source.name}: ${page.file} shows the component "${id}": no such component`),
|
|
72
|
+
...page.links
|
|
73
|
+
.filter((slug) => !source.pages.some((other) => other.slug === slug))
|
|
74
|
+
.map((slug) => `${source.name}: ${page.file} links to "${slug}": no such page`)
|
|
75
|
+
]));
|
|
76
|
+
/**
|
|
77
|
+
* Finds a docs page by its id.
|
|
78
|
+
*
|
|
79
|
+
* @param tree - the tree.
|
|
80
|
+
* @param id - the page's id.
|
|
81
|
+
*/
|
|
82
|
+
export const findPage = (tree, id) => {
|
|
83
|
+
for (const source of tree.sources) {
|
|
84
|
+
const page = source.pages.find((candidate) => candidate.id === id);
|
|
85
|
+
if (page !== undefined)
|
|
86
|
+
return { source, page };
|
|
87
|
+
}
|
|
88
|
+
return undefined;
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* Pages under their headings, in reading order: a named group sits where its first page is and takes all its pages, and
|
|
92
|
+
* pages without a group stay between the groups where their order puts them.
|
|
93
|
+
*
|
|
94
|
+
* @param pages - the pages, in their order.
|
|
95
|
+
*/
|
|
96
|
+
export const pageGroups = (pages) => {
|
|
97
|
+
const groups = [];
|
|
98
|
+
for (const page of pages) {
|
|
99
|
+
const named = groups.find((group) => page.group !== undefined && group.name === page.group);
|
|
100
|
+
const last = groups.at(-1);
|
|
101
|
+
const group = page.group === undefined && last?.name === undefined ? last : named;
|
|
102
|
+
if (group === undefined)
|
|
103
|
+
groups.push({ name: page.group, pages: [page] });
|
|
104
|
+
else
|
|
105
|
+
group.pages.push(page);
|
|
106
|
+
}
|
|
107
|
+
return groups;
|
|
108
|
+
};
|
package/dist/src/playTrace.d.ts
CHANGED
package/dist/src/playTrace.js
CHANGED
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The plugin API: what a package gives a catalogue. Version 1 of a public contract; `PLUGINS.md` beside the package's
|
|
3
|
+
* README states it, with what it leaves out.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* A plugin is plain data, read on Node from the configuration's `plugins`: everything that runs in a page is a module
|
|
7
|
+
* it names, so a catalogue that lists none has nothing to load, and a tab's code loads the first time the tab opens.
|
|
8
|
+
* There are four places to add to, and no other: a panel tab, a switch of the toolbar and the View menu, a block of a
|
|
9
|
+
* docs page, and what runs around a story in its frame.
|
|
10
|
+
*
|
|
11
|
+
* A view (a tab, a block) is handed an element and draws in it with whatever it likes. The contract never names React:
|
|
12
|
+
* the shell's own components, hooks and state stay free to change, and `forgebook/plugin-react` is the few lines a
|
|
13
|
+
* React view needs. Everything a view may read arrives in its context; the messages between the shell and the frames
|
|
14
|
+
* stay private, so a plugin reaches its frame module through `report` alone.
|
|
15
|
+
*
|
|
16
|
+
* Runs on Node and in both pages: this module imports nothing of either.
|
|
17
|
+
*
|
|
18
|
+
* @module
|
|
19
|
+
*/
|
|
20
|
+
import type { FigmaLink } from "@forgebook/story-format/source";
|
|
21
|
+
import type { LoadedBeforeEach, LoadedDecorator } from "./frame/storyModule.ts";
|
|
22
|
+
import type { ViewSwitch } from "./switches.ts";
|
|
23
|
+
/**
|
|
24
|
+
* A version of this contract. A plugin writes the number itself, not a constant of this package: a constant would read
|
|
25
|
+
* as whichever Forgebook is installed, and no plugin could ever be refused.
|
|
26
|
+
*/
|
|
27
|
+
export type PluginApiVersion = 1;
|
|
28
|
+
/** A value that crosses between a frame and the shell, and stays what it was: JSON. */
|
|
29
|
+
export type JsonValue = string | number | boolean | null | readonly JsonValue[] | {
|
|
30
|
+
readonly [key: string]: JsonValue;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* When a tab is offered. `parameter` is known once the story's frame ran, so such a tab comes in then, and not at all
|
|
34
|
+
* for a story that fails before it. `design` is known at once: the index reads it, and offers the tab only for a link
|
|
35
|
+
* that passed its check.
|
|
36
|
+
*/
|
|
37
|
+
export type PluginCondition = {
|
|
38
|
+
/** The story's parameter, a top-level name (`msw`). */
|
|
39
|
+
readonly parameter: string;
|
|
40
|
+
} | {
|
|
41
|
+
/** The design tool the story must have a link to. */
|
|
42
|
+
readonly design: "figma";
|
|
43
|
+
};
|
|
44
|
+
/** A panel tab. */
|
|
45
|
+
export type PluginTab = {
|
|
46
|
+
/**
|
|
47
|
+
* Its id, in the address (`?tab=figma`) and in the catalogue's `tabs`: the plugin's id, or that and a hyphen and a
|
|
48
|
+
* word, so no later tab of Forgebook's or another plugin's can take it.
|
|
49
|
+
*/
|
|
50
|
+
readonly id: string;
|
|
51
|
+
/** Its name, in English; a catalogue replaces it as any tab's (`strings: { "tabs.figma": "…" }`). */
|
|
52
|
+
readonly label: string;
|
|
53
|
+
/** The module that draws it, as a specifier the catalogue's folder resolves: it exports a `PluginView` as `view`. */
|
|
54
|
+
readonly view: string;
|
|
55
|
+
/** When it is offered; for every story by default. */
|
|
56
|
+
readonly when?: PluginCondition;
|
|
57
|
+
};
|
|
58
|
+
/** A block of a docs page, written as a fenced block named after it, at the page's top level. */
|
|
59
|
+
export type PluginDocBlock = {
|
|
60
|
+
/** The fence's name, which a page writes after its opening backticks: named as a tab's id is. */
|
|
61
|
+
readonly fence: string;
|
|
62
|
+
/** The module that draws it, as a specifier the catalogue's folder resolves: it exports a `PluginView` as `view`. */
|
|
63
|
+
readonly view: string;
|
|
64
|
+
};
|
|
65
|
+
/** A switch a plugin adds: a catalogue's, without the roles the catalogue itself reads, which stay the catalogue's. */
|
|
66
|
+
export type PluginSwitch = Omit<ViewSwitch, "role">;
|
|
67
|
+
/** What a package gives a catalogue. */
|
|
68
|
+
export type ForgebookPlugin = {
|
|
69
|
+
/** The contract it is written for: the number, written out. */
|
|
70
|
+
readonly apiVersion: PluginApiVersion;
|
|
71
|
+
/** Its id (`figma`), lower-case words and hyphens: it starts the ids of what it adds, and names its texts. */
|
|
72
|
+
readonly id: string;
|
|
73
|
+
/** The tabs it adds to the panel, after Code and before Accessibility, in the order of `plugins`. */
|
|
74
|
+
readonly tabs?: readonly PluginTab[];
|
|
75
|
+
/** The switches it adds, after the catalogue's own, each id named as a tab's is. */
|
|
76
|
+
readonly switches?: readonly PluginSwitch[];
|
|
77
|
+
/** The blocks it adds to docs pages. */
|
|
78
|
+
readonly docBlocks?: readonly PluginDocBlock[];
|
|
79
|
+
/**
|
|
80
|
+
* The module that runs in every frame, as a specifier the catalogue's folder resolves: it exports what
|
|
81
|
+
* `definePluginFrame` makes as `frame`. One module for every framework, or one per framework by the adapter's name
|
|
82
|
+
* (`{ react: "…" }`), since what a decorator returns is the framework's; a catalogue of another framework refuses the
|
|
83
|
+
* plugin. It loads with every story, so a heavy tool is imported inside its `prepare`.
|
|
84
|
+
*/
|
|
85
|
+
readonly frame?: string | Readonly<Record<string, string>>;
|
|
86
|
+
/** The packages its modules import in the browser: pre-bundled, and a catalogue without one is told at once. */
|
|
87
|
+
readonly browserDependencies?: readonly string[];
|
|
88
|
+
};
|
|
89
|
+
/** What every view is told. */
|
|
90
|
+
export type PluginViewContext = {
|
|
91
|
+
/** The shell's appearance now: a view that follows it draws itself again on `update`. */
|
|
92
|
+
readonly appearance: "light" | "dark";
|
|
93
|
+
/**
|
|
94
|
+
* A text the view shows: the catalogue's replacement (`strings: { "plugin.figma.compare": "…" }`), or the English
|
|
95
|
+
* given, with `{name}` replaced by its value. The same function for the view's whole life.
|
|
96
|
+
*
|
|
97
|
+
* @param key - the text's name within the plugin (`compare`).
|
|
98
|
+
* @param fallback - the text in English.
|
|
99
|
+
* @param values - what its `{name}`s stand for.
|
|
100
|
+
*/
|
|
101
|
+
readonly text: (key: string, fallback: string, values?: Readonly<Record<string, string>>) => string;
|
|
102
|
+
};
|
|
103
|
+
/** The story a tab is shown for. */
|
|
104
|
+
export type PluginStory = {
|
|
105
|
+
/** The story's id (`kit:inputs-select--overview`). */
|
|
106
|
+
readonly id: string;
|
|
107
|
+
/** The story's name. */
|
|
108
|
+
readonly name: string;
|
|
109
|
+
/** The component's title, its place in the sidebar. */
|
|
110
|
+
readonly title: string;
|
|
111
|
+
/** The component's name. */
|
|
112
|
+
readonly componentName: string;
|
|
113
|
+
/** Its design, by tool: only a link that passed the check. */
|
|
114
|
+
readonly design: {
|
|
115
|
+
/** Its node or file in Figma. */
|
|
116
|
+
readonly figma?: FigmaLink;
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
/** A story's second frame, drawn in an element of a view. */
|
|
120
|
+
export type PluginStoryFrame = {
|
|
121
|
+
/** Takes it away. */
|
|
122
|
+
readonly remove: () => void;
|
|
123
|
+
};
|
|
124
|
+
/** What a tab is told. */
|
|
125
|
+
export type PluginTabContext = PluginViewContext & {
|
|
126
|
+
/** The story shown. A view lives for one story: another story mounts it anew. */
|
|
127
|
+
readonly story: PluginStory;
|
|
128
|
+
/**
|
|
129
|
+
* The last value the plugin's frame module reported for this story; none before it reported, and none in the
|
|
130
|
+
* compare view, where no frame is the story's.
|
|
131
|
+
*/
|
|
132
|
+
readonly report: JsonValue | undefined;
|
|
133
|
+
/**
|
|
134
|
+
* Draws the story again in an element of the view, at the stage's width, with the panel's values and the view of
|
|
135
|
+
* this moment; a second frame, which tells the stage nothing. The same function for the view's whole life.
|
|
136
|
+
*
|
|
137
|
+
* @param target - the element.
|
|
138
|
+
* @param options - the frame's accessible name.
|
|
139
|
+
*/
|
|
140
|
+
readonly showStory: (target: HTMLElement, options: {
|
|
141
|
+
/** The frame's accessible name. */
|
|
142
|
+
readonly title: string;
|
|
143
|
+
}) => PluginStoryFrame;
|
|
144
|
+
};
|
|
145
|
+
/** What a docs block is told. */
|
|
146
|
+
export type PluginDocBlockContext = PluginViewContext & {
|
|
147
|
+
/** What the fence's line says after the block's name. */
|
|
148
|
+
readonly argument: string;
|
|
149
|
+
/** The text inside the fence. */
|
|
150
|
+
readonly body: string;
|
|
151
|
+
/**
|
|
152
|
+
* Draws a story in an element of the block, in the page's view. The same function for the view's whole life.
|
|
153
|
+
*
|
|
154
|
+
* @param target - the element.
|
|
155
|
+
* @param options - the frame's accessible name, and the story.
|
|
156
|
+
* @throws when the catalogue has no such story.
|
|
157
|
+
*/
|
|
158
|
+
readonly showStory: (target: HTMLElement, options: {
|
|
159
|
+
/** The frame's accessible name. */
|
|
160
|
+
readonly title: string;
|
|
161
|
+
/** The story's id. */
|
|
162
|
+
readonly storyId: string;
|
|
163
|
+
}) => PluginStoryFrame;
|
|
164
|
+
};
|
|
165
|
+
/** A view that is drawing, as the shell keeps it. */
|
|
166
|
+
export type PluginViewHandle<TContext extends PluginViewContext> = {
|
|
167
|
+
/** Draws it again with a new context. */
|
|
168
|
+
readonly update: (context: TContext) => void;
|
|
169
|
+
/** Takes it away from its element. */
|
|
170
|
+
readonly unmount: () => void;
|
|
171
|
+
};
|
|
172
|
+
/**
|
|
173
|
+
* A tab or a docs block: the `view` export of the module its declaration names.
|
|
174
|
+
*
|
|
175
|
+
* @param target - the element it draws in, which it owns; it has no box of its own (`display: contents`).
|
|
176
|
+
* @param context - what it is told.
|
|
177
|
+
* @returns what the shell keeps of it.
|
|
178
|
+
*/
|
|
179
|
+
export type PluginView<TContext extends PluginViewContext> = (target: HTMLElement, context: TContext) => PluginViewHandle<TContext>;
|
|
180
|
+
/** What goes with a report. */
|
|
181
|
+
export type PluginReportOptions = {
|
|
182
|
+
/** A short note beside a tab's name (a count); none shows nothing. */
|
|
183
|
+
readonly hint?: string;
|
|
184
|
+
/** The tab the note is for, by id; the plugin's first by default. */
|
|
185
|
+
readonly tab?: string;
|
|
186
|
+
};
|
|
187
|
+
/** What a plugin's frame module is given. */
|
|
188
|
+
export type PluginFrameHost = {
|
|
189
|
+
/**
|
|
190
|
+
* Tells the plugin's tabs about this story. The value replaces the last one, so it holds all they need (a log is sent
|
|
191
|
+
* whole, kept short).
|
|
192
|
+
*
|
|
193
|
+
* @param value - what a tab receives as `report`.
|
|
194
|
+
* @param options - a note beside a tab's name.
|
|
195
|
+
*/
|
|
196
|
+
readonly report: (value: JsonValue, options?: PluginReportOptions) => void;
|
|
197
|
+
};
|
|
198
|
+
/** What `prepare` is told: the context of a CSF `beforeEach`. */
|
|
199
|
+
export type PluginPrepareContext = Parameters<LoadedBeforeEach>[0];
|
|
200
|
+
/** What a plugin runs around a story, in its frame. */
|
|
201
|
+
export type PluginFrame = {
|
|
202
|
+
/** Wrap every story, outside the catalogue's own. What one returns is the framework's. */
|
|
203
|
+
readonly decorators?: readonly LoadedDecorator[];
|
|
204
|
+
/**
|
|
205
|
+
* Runs before every mount, ahead of the story's loaders, with the context of a CSF `beforeEach`; what it returns runs
|
|
206
|
+
* when the story is mounted again or left, and the next mount waits for it, two seconds at most. What it throws
|
|
207
|
+
* is shown as the story's error.
|
|
208
|
+
*/
|
|
209
|
+
readonly prepare?: LoadedBeforeEach;
|
|
210
|
+
};
|
|
211
|
+
/**
|
|
212
|
+
* The `frame` export of a plugin's frame module, called once per frame. What it throws is shown in place of the story,
|
|
213
|
+
* in every frame.
|
|
214
|
+
*
|
|
215
|
+
* @param host - how it reaches its tabs.
|
|
216
|
+
* @returns what it runs around the story.
|
|
217
|
+
*/
|
|
218
|
+
export type CreatePluginFrame = (host: PluginFrameHost) => PluginFrame;
|
|
219
|
+
/**
|
|
220
|
+
* A plugin, typed: what a plugin package's main export returns.
|
|
221
|
+
*
|
|
222
|
+
* @param plugin - the plugin.
|
|
223
|
+
*/
|
|
224
|
+
export declare const definePlugin: (plugin: ForgebookPlugin) => ForgebookPlugin;
|
|
225
|
+
/**
|
|
226
|
+
* A plugin's frame module, typed.
|
|
227
|
+
*
|
|
228
|
+
* @param create - makes what runs around the story, once per frame.
|
|
229
|
+
*/
|
|
230
|
+
export declare const definePluginFrame: (create: CreatePluginFrame) => CreatePluginFrame;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A plugin, typed: what a plugin package's main export returns.
|
|
3
|
+
*
|
|
4
|
+
* @param plugin - the plugin.
|
|
5
|
+
*/
|
|
6
|
+
export const definePlugin = (plugin) => plugin;
|
|
7
|
+
/**
|
|
8
|
+
* A plugin's frame module, typed.
|
|
9
|
+
*
|
|
10
|
+
* @param create - makes what runs around the story, once per frame.
|
|
11
|
+
*/
|
|
12
|
+
export const definePluginFrame = (create) => create;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A plugin's view written in React: the few lines between the contract, which hands a view an element, and a component.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* The view gets a React root of its own, so nothing of the shell's reaches it but its context. An error it does not
|
|
6
|
+
* catch would otherwise leave its panel empty, so it is said in place. The root goes away a moment after the shell asks:
|
|
7
|
+
* the shell asks while React commits, when a root cannot be unmounted.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import type { ComponentType } from "react";
|
|
12
|
+
import type { PluginView, PluginViewContext } from "./plugin.ts";
|
|
13
|
+
/** The props of a view written in React. */
|
|
14
|
+
export type PluginViewProps<TContext extends PluginViewContext> = {
|
|
15
|
+
/** What the view is told, new on every change. */
|
|
16
|
+
readonly context: TContext;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* A component as a view: what a tab's or a block's module exports as `view`.
|
|
20
|
+
*
|
|
21
|
+
* @param View - the component.
|
|
22
|
+
*/
|
|
23
|
+
export declare const reactView: <TContext extends PluginViewContext>(View: ComponentType<PluginViewProps<TContext>>) => PluginView<TContext>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createRoot } from "react-dom/client";
|
|
3
|
+
/**
|
|
4
|
+
* A component as a view: what a tab's or a block's module exports as `view`.
|
|
5
|
+
*
|
|
6
|
+
* @param View - the component.
|
|
7
|
+
*/
|
|
8
|
+
export const reactView = (View) => (target, context) => {
|
|
9
|
+
const root = createRoot(target, {
|
|
10
|
+
onUncaughtError: (error) => {
|
|
11
|
+
const problem = target.ownerDocument.createElement("p");
|
|
12
|
+
problem.className = "forgebook-problems";
|
|
13
|
+
problem.setAttribute("role", "alert");
|
|
14
|
+
problem.textContent = error instanceof Error ? error.message : String(error);
|
|
15
|
+
target.replaceChildren(problem);
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
const draw = (next) => _jsx(View, { context: next });
|
|
19
|
+
root.render(draw(context));
|
|
20
|
+
return {
|
|
21
|
+
update: (next) => root.render(draw(next)),
|
|
22
|
+
unmount: () => queueMicrotask(() => root.unmount())
|
|
23
|
+
};
|
|
24
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The page between a client's app and a story's frame: it shows the frame and says when the story is up and how tall.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* The app runs on an origin the host chooses, so a frame cannot talk to it: a frame posts to the catalogue's origin
|
|
6
|
+
* only, which keeps its messages (a story's args among them) from any page that embeds it. This page is on the
|
|
7
|
+
* catalogue's origin, reads the messages of the frame, on the frames' origin, as the shell does, and passes the app
|
|
8
|
+
* three facts and nothing else: that it runs, that something was drawn, and the height. A page that embeds it learns no
|
|
9
|
+
* more than that, so it can post to any origin, as it has to: the app's may be opaque. A story that fails counts as
|
|
10
|
+
* drawn, as the frame shows the error itself.
|
|
11
|
+
*
|
|
12
|
+
* A frame opened alone on a cold dev server can stay blank: when the server prepares a dependency again, a static import
|
|
13
|
+
* of the frame's own entry fails before any of its code runs, so its reload for a stale module never happens and no
|
|
14
|
+
* shell is there to load it again. So the relay does, once, when the frame loaded and has said nothing at all, by
|
|
15
|
+
* loading its address again: the frame's own `location` is another origin's, which this page may not reload.
|
|
16
|
+
*
|
|
17
|
+
* Runs in the page, written into it by its source (`previewPages.ts`), so it takes no import.
|
|
18
|
+
*
|
|
19
|
+
* @module
|
|
20
|
+
*/
|
|
21
|
+
/** What the relay tells the app. */
|
|
22
|
+
export type PreviewRelayMessage = {
|
|
23
|
+
/** The relay runs: the host let the frame in, so it is worth waiting for the story. */
|
|
24
|
+
readonly type: "forgebook:preview-started";
|
|
25
|
+
} | {
|
|
26
|
+
/** The story was drawn, or its error was. */
|
|
27
|
+
readonly type: "forgebook:preview-ready";
|
|
28
|
+
} | {
|
|
29
|
+
/** The story's height changed. */
|
|
30
|
+
readonly type: "forgebook:preview-size";
|
|
31
|
+
/** The height, in CSS px. */
|
|
32
|
+
readonly height: number;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Shows a story's frame and tells the embedding app about it.
|
|
36
|
+
*
|
|
37
|
+
* @param frameAddress - the story's frame, on the frames' origin.
|
|
38
|
+
* @param title - the frame's name for a screen reader: the story's id.
|
|
39
|
+
*/
|
|
40
|
+
export declare const previewRelay: (frameAddress: string, title: string) => void;
|