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,109 @@
|
|
|
1
|
+
import { panelProps, settableProps } from "./argTypes.js";
|
|
2
|
+
import { isChoiceList, isNamedArg } from "./messages.js";
|
|
3
|
+
import { namedValueOf } from "./namedValues.js";
|
|
4
|
+
/** A prop made from one of the story's own args, for an arg neither the types nor the `argTypes` name. */
|
|
5
|
+
const propOfStoryArg = (name, value) => {
|
|
6
|
+
const prop = { name, type: "", description: "", isRequired: false };
|
|
7
|
+
if (typeof value === "string")
|
|
8
|
+
return { ...prop, kind: "text" };
|
|
9
|
+
if (typeof value === "number")
|
|
10
|
+
return { ...prop, kind: "number" };
|
|
11
|
+
if (typeof value === "boolean")
|
|
12
|
+
return { ...prop, kind: "toggle" };
|
|
13
|
+
// a named value keeps the type it is offered for, so only another value named for it is taken
|
|
14
|
+
if (isNamedArg(value))
|
|
15
|
+
return { ...prop, kind: "other", type: value.of };
|
|
16
|
+
// a list's options and a `null`'s type are not known: nothing the address names is taken for them
|
|
17
|
+
return undefined;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* The props the panel sets for a story, whatever the address says: the component's props with the `argTypes` over
|
|
21
|
+
* them and the args only the `argTypes` name, then the story's own args the two leave out, each kept only when the
|
|
22
|
+
* story's controls let the panel set it.
|
|
23
|
+
*
|
|
24
|
+
* @param declaration - what the story declares.
|
|
25
|
+
*/
|
|
26
|
+
export const declaredArgProps = (declaration) => {
|
|
27
|
+
const { props, argTypes, controls, storyArgs, namedValues } = declaration;
|
|
28
|
+
const named = new Set([...props.map((prop) => prop.name), ...Object.keys(argTypes)]);
|
|
29
|
+
const ownProps = Object.entries(storyArgs).flatMap(([name, value]) => {
|
|
30
|
+
if (named.has(name))
|
|
31
|
+
return [];
|
|
32
|
+
const prop = propOfStoryArg(name, value);
|
|
33
|
+
return prop === undefined ? [] : [prop];
|
|
34
|
+
});
|
|
35
|
+
return settableProps([...panelProps(props, argTypes), ...ownProps], controls, namedValues);
|
|
36
|
+
};
|
|
37
|
+
/** Whether a value is a finite number: what a number field sets (an address's JSON has no `NaN` anyway). */
|
|
38
|
+
const isFiniteNumber = (value) => typeof value === "number" && Number.isFinite(value);
|
|
39
|
+
/** Whether a value is one of a choice's options. */
|
|
40
|
+
const isOption = (prop, value) => (typeof value === "string" || typeof value === "number") && (prop.choices ?? []).includes(value);
|
|
41
|
+
/**
|
|
42
|
+
* Whether a value is one the panel could set for a prop: of the control the `argTypes` name, otherwise of the prop's
|
|
43
|
+
* kind.
|
|
44
|
+
*
|
|
45
|
+
* @param prop - a prop the panel sets.
|
|
46
|
+
* @param value - the address's value.
|
|
47
|
+
* @param namedValues - the source's named values.
|
|
48
|
+
*/
|
|
49
|
+
export const isValueOfProp = (prop, value, namedValues) => {
|
|
50
|
+
switch (prop.control) {
|
|
51
|
+
case "select":
|
|
52
|
+
case "radio":
|
|
53
|
+
return isOption(prop, value);
|
|
54
|
+
case "check":
|
|
55
|
+
case "multi-select":
|
|
56
|
+
return isChoiceList(value) && value.every((item) => isOption(prop, item));
|
|
57
|
+
case "boolean":
|
|
58
|
+
return typeof value === "boolean";
|
|
59
|
+
case "text":
|
|
60
|
+
case "color":
|
|
61
|
+
return typeof value === "string";
|
|
62
|
+
case "number":
|
|
63
|
+
case "range":
|
|
64
|
+
case "date":
|
|
65
|
+
return isFiniteNumber(value);
|
|
66
|
+
case "none":
|
|
67
|
+
return false;
|
|
68
|
+
case undefined:
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
switch (prop.kind) {
|
|
72
|
+
case "choice":
|
|
73
|
+
return isOption(prop, value);
|
|
74
|
+
case "text":
|
|
75
|
+
return typeof value === "string";
|
|
76
|
+
case "number":
|
|
77
|
+
return isFiniteNumber(value);
|
|
78
|
+
case "toggle":
|
|
79
|
+
return typeof value === "boolean";
|
|
80
|
+
case "other":
|
|
81
|
+
if (isNamedArg(value)) {
|
|
82
|
+
return value.of === prop.type && namedValueOf(namedValues, value.of, value.named) !== undefined;
|
|
83
|
+
}
|
|
84
|
+
return prop.canTakeText === true && typeof value === "string";
|
|
85
|
+
case "event":
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
/**
|
|
90
|
+
* The address's values the story receives, and those left out with the reason.
|
|
91
|
+
*
|
|
92
|
+
* @param args - the values the address names.
|
|
93
|
+
* @param declaration - what the story declares.
|
|
94
|
+
*/
|
|
95
|
+
export const checkedAddressArgs = (args, declaration) => {
|
|
96
|
+
const declared = declaredArgProps(declaration);
|
|
97
|
+
const accepted = [];
|
|
98
|
+
const dropped = [];
|
|
99
|
+
for (const [name, value] of Object.entries(args)) {
|
|
100
|
+
const prop = declared.find((each) => each.name === name);
|
|
101
|
+
if (prop === undefined)
|
|
102
|
+
dropped.push({ name, reason: "undeclared" });
|
|
103
|
+
else if (!isValueOfProp(prop, value, declaration.namedValues))
|
|
104
|
+
dropped.push({ name, reason: "type" });
|
|
105
|
+
else
|
|
106
|
+
accepted.push([name, value]);
|
|
107
|
+
}
|
|
108
|
+
return { accepted: Object.fromEntries(accepted), dropped };
|
|
109
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The texts a catalogue's address may hand a story whose framework writes texts into markup: plain words only.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* A link shares the props panel's values in its address (`?args=`), so whoever writes the link chooses them, and the
|
|
6
|
+
* frame runs on the catalogue's own origin. React and Vue put a text into the page as text; a plain HTML story
|
|
7
|
+
* writes it into an HTML string (`<button class="${tone}">${label}</button>` in a template literal), where `<`, a
|
|
8
|
+
* quote or a `javascript:` address becomes markup or code. So for a framework that says its texts may become markup
|
|
9
|
+
* (`FrameworkAdapter.addressTexts`), a value the address carries reaches the story only when its name and its texts
|
|
10
|
+
* are plain: letters and digits of any script, spaces and a few marks that close no tag, attribute or address. The
|
|
11
|
+
* panel's own edits are the person's and are not checked; a link, or a reload of an edit with markup, falls back to
|
|
12
|
+
* the story's own value, as Storybook's address does. Pure.
|
|
13
|
+
*
|
|
14
|
+
* @module
|
|
15
|
+
*/
|
|
16
|
+
import { type PanelArgs } from "./messages.ts";
|
|
17
|
+
/**
|
|
18
|
+
* How a framework's stories take the texts an address carries: `any` where a text stays text (React, Vue), `plain`
|
|
19
|
+
* where a story may write it into markup (an HTML string).
|
|
20
|
+
*/
|
|
21
|
+
export type AddressTexts = "any" | "plain";
|
|
22
|
+
/**
|
|
23
|
+
* Whether a text can become nothing but text wherever an HTML string puts it: between tags, inside a quoted or bare
|
|
24
|
+
* attribute, as an address.
|
|
25
|
+
*
|
|
26
|
+
* @param text - the text.
|
|
27
|
+
*/
|
|
28
|
+
export declare const isPlainText: (text: string) => boolean;
|
|
29
|
+
/**
|
|
30
|
+
* The address's values a story receives under a framework's rule: all of them, or only those whose texts are plain.
|
|
31
|
+
*
|
|
32
|
+
* @param args - the values the address names.
|
|
33
|
+
* @param addressTexts - the framework's rule.
|
|
34
|
+
*/
|
|
35
|
+
export declare const addressArgsFor: (args: PanelArgs, addressTexts: AddressTexts) => PanelArgs;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The texts a catalogue's address may hand a story whose framework writes texts into markup: plain words only.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* A link shares the props panel's values in its address (`?args=`), so whoever writes the link chooses them, and the
|
|
6
|
+
* frame runs on the catalogue's own origin. React and Vue put a text into the page as text; a plain HTML story
|
|
7
|
+
* writes it into an HTML string (`<button class="${tone}">${label}</button>` in a template literal), where `<`, a
|
|
8
|
+
* quote or a `javascript:` address becomes markup or code. So for a framework that says its texts may become markup
|
|
9
|
+
* (`FrameworkAdapter.addressTexts`), a value the address carries reaches the story only when its name and its texts
|
|
10
|
+
* are plain: letters and digits of any script, spaces and a few marks that close no tag, attribute or address. The
|
|
11
|
+
* panel's own edits are the person's and are not checked; a link, or a reload of an edit with markup, falls back to
|
|
12
|
+
* the story's own value, as Storybook's address does. Pure.
|
|
13
|
+
*
|
|
14
|
+
* @module
|
|
15
|
+
*/
|
|
16
|
+
import { isNamedArg } from "./messages.js";
|
|
17
|
+
/** A plain text: letters, marks and digits of any script, spaces, and `_ . , ! ? # % + -`. */
|
|
18
|
+
const PLAIN_TEXT = /^[\p{L}\p{M}\p{N} _.,!?#%+-]*$/u;
|
|
19
|
+
/** A plain name: what a script and an attribute both write bare (`label`, `item-count`, `$size`). */
|
|
20
|
+
const PLAIN_NAME = /^[A-Za-z_$][\w$-]*$/;
|
|
21
|
+
/**
|
|
22
|
+
* Whether a text can become nothing but text wherever an HTML string puts it: between tags, inside a quoted or bare
|
|
23
|
+
* attribute, as an address.
|
|
24
|
+
*
|
|
25
|
+
* @param text - the text.
|
|
26
|
+
*/
|
|
27
|
+
export const isPlainText = (text) => PLAIN_TEXT.test(text);
|
|
28
|
+
/**
|
|
29
|
+
* Whether an address's value can reach a story whose texts may become markup: every text in it plain. A named value is
|
|
30
|
+
* looked up among the source's own values, so its name is never written into the page.
|
|
31
|
+
*
|
|
32
|
+
* @param value - the value.
|
|
33
|
+
*/
|
|
34
|
+
const isPlainValue = (value) => {
|
|
35
|
+
if (typeof value === "string")
|
|
36
|
+
return isPlainText(value);
|
|
37
|
+
if (Array.isArray(value))
|
|
38
|
+
return value.every((item) => typeof item !== "string" || isPlainText(item));
|
|
39
|
+
return value === null || isNamedArg(value) || typeof value !== "object";
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* The address's values a story receives under a framework's rule: all of them, or only those whose texts are plain.
|
|
43
|
+
*
|
|
44
|
+
* @param args - the values the address names.
|
|
45
|
+
* @param addressTexts - the framework's rule.
|
|
46
|
+
*/
|
|
47
|
+
export const addressArgsFor = (args, addressTexts) => addressTexts === "any"
|
|
48
|
+
? args
|
|
49
|
+
: Object.fromEntries(
|
|
50
|
+
// a name is checked too: a story that spreads its args into attributes writes it into the markup
|
|
51
|
+
Object.entries(args).filter(([name, value]) => PLAIN_NAME.test(name) && isPlainValue(value)));
|
package/dist/src/argTypes.d.ts
CHANGED
|
@@ -134,4 +134,3 @@ export declare const isPanelArgTypes: (value: unknown) => value is PanelArgTypes
|
|
|
134
134
|
* @param argTypes - the merged `argTypes`.
|
|
135
135
|
*/
|
|
136
136
|
export declare const actionNames: (args: Readonly<Record<string, unknown>>, argTypes: Readonly<Record<string, Readonly<Record<string, unknown>>>>) => readonly string[];
|
|
137
|
-
//# sourceMappingURL=argTypes.d.ts.map
|
package/dist/src/argTypes.js
CHANGED
|
@@ -166,7 +166,8 @@ export const mappedArgs = (args, argTypes) => Object.fromEntries(Object.entries(
|
|
|
166
166
|
if (!isRecord(mapping) || (typeof value !== "string" && typeof value !== "number"))
|
|
167
167
|
return [name, value];
|
|
168
168
|
const key = String(value);
|
|
169
|
-
|
|
169
|
+
// the mapping's own keys only: a value a shared link chose (`constructor`) never reaches its prototype
|
|
170
|
+
return [name, Object.hasOwn(mapping, key) ? mapping[key] : value];
|
|
170
171
|
}));
|
|
171
172
|
/** The prop kind a control sets, for the panel's groups. */
|
|
172
173
|
const KIND_OF_CONTROL = {
|
|
@@ -278,4 +279,3 @@ export const actionNames = (args, argTypes) => [
|
|
|
278
279
|
...Object.entries(argTypes).flatMap(([name, entry]) => typeof entry["action"] === "string" || entry["action"] === true ? [name] : [])
|
|
279
280
|
])
|
|
280
281
|
];
|
|
281
|
-
//# sourceMappingURL=argTypes.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Who a component's page is read by: the address's `audience` and a catalogue's default. Each audience is the same page
|
|
3
|
+
* reordered and filtered (`shell/audienceLayout.ts`), never a page of its own.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* `everyone` is the page as a catalogue that sets nothing has always drawn it. The list is short on purpose: each
|
|
7
|
+
* audience answers a different question of the page, and a catalogue renames one with `strings`. Pure, and read by the
|
|
8
|
+
* frame's `parseView` too, so it holds the ids and nothing else.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
/** Every audience, in the order the control lists them. */
|
|
13
|
+
export declare const AUDIENCE_IDS: readonly ["everyone", "designer", "coder", "tester"];
|
|
14
|
+
/** Who a component's page is read by. */
|
|
15
|
+
export type AudienceId = (typeof AUDIENCE_IDS)[number];
|
|
16
|
+
/** The audience of a catalogue that names none. */
|
|
17
|
+
export declare const DEFAULT_AUDIENCE: AudienceId;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Who a component's page is read by: the address's `audience` and a catalogue's default. Each audience is the same page
|
|
3
|
+
* reordered and filtered (`shell/audienceLayout.ts`), never a page of its own.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* `everyone` is the page as a catalogue that sets nothing has always drawn it. The list is short on purpose: each
|
|
7
|
+
* audience answers a different question of the page, and a catalogue renames one with `strings`. Pure, and read by the
|
|
8
|
+
* frame's `parseView` too, so it holds the ids and nothing else.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
/** Every audience, in the order the control lists them. */
|
|
13
|
+
export const AUDIENCE_IDS = ["everyone", "designer", "coder", "tester"];
|
|
14
|
+
/** The audience of a catalogue that names none. */
|
|
15
|
+
export const DEFAULT_AUDIENCE = "everyone";
|
package/dist/src/backdrops.d.ts
CHANGED
|
@@ -4,38 +4,49 @@
|
|
|
4
4
|
* surface (a menu's or a popover's glass, its blur) does, which the page's plain colour hides.
|
|
5
5
|
*
|
|
6
6
|
* @remarks
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* With forced colours nothing is drawn: the system's palette decides the page. Pure.
|
|
7
|
+
* What the shell needs of a backdrop lives here: its id, its name and the colour under its picture, which the box a
|
|
8
|
+
* story waits in takes while it loads (`backdropColor`). Forgebook's own pictures are drawn by the frame alone
|
|
9
|
+
* (`backdropPictures.ts`, with the style sheet that puts them behind the story), so the shell's first load carries
|
|
10
|
+
* none of them. The desktop pictures are fixed whatever the theme; the page of content follows the theme, as an app's
|
|
11
|
+
* page would. Pure.
|
|
13
12
|
*
|
|
14
13
|
* @module
|
|
15
14
|
*/
|
|
16
|
-
/** A
|
|
17
|
-
export type
|
|
18
|
-
/** The
|
|
19
|
-
readonly
|
|
20
|
-
/** The
|
|
21
|
-
readonly
|
|
15
|
+
/** A value for each colour scheme: the light one's and the dark one's, the same when it does not follow the theme. */
|
|
16
|
+
export type SchemePair = {
|
|
17
|
+
/** The value in the light scheme. */
|
|
18
|
+
readonly light: string;
|
|
19
|
+
/** The value in the dark scheme. */
|
|
20
|
+
readonly dark: string;
|
|
22
21
|
};
|
|
23
|
-
/**
|
|
24
|
-
export type
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
readonly
|
|
29
|
-
};
|
|
30
|
-
/** A backdrop the View menu offers: its id (the address's `backdrop`), its name, its look. */
|
|
31
|
-
export type Backdrop = {
|
|
22
|
+
/** The ids of the backdrops Forgebook draws, as the address writes them. */
|
|
23
|
+
export type BuiltInBackdropId = "checkerboard" | "gradient" | "lightDesktop" | "darkDesktop" | "content";
|
|
24
|
+
/** One of Forgebook's backdrops: the frame draws its picture (`backdropPictures.ts`). */
|
|
25
|
+
export type BuiltInBackdrop = {
|
|
26
|
+
/** Forgebook's own. */
|
|
27
|
+
readonly kind: "builtIn";
|
|
32
28
|
/** Its id, as the address writes it (`checkerboard`). */
|
|
29
|
+
readonly id: BuiltInBackdropId;
|
|
30
|
+
/** Its name in the View menu. */
|
|
31
|
+
readonly label: string;
|
|
32
|
+
/** The colour under its picture, in each scheme. */
|
|
33
|
+
readonly colors: SchemePair;
|
|
34
|
+
};
|
|
35
|
+
/** A catalogue's own backdrop: a colour and the CSS layers over it, in each scheme. */
|
|
36
|
+
export type OwnBackdrop = {
|
|
37
|
+
/** The catalogue's. */
|
|
38
|
+
readonly kind: "own";
|
|
39
|
+
/** Its id, as the address writes it. */
|
|
33
40
|
readonly id: string;
|
|
34
41
|
/** Its name in the View menu. */
|
|
35
42
|
readonly label: string;
|
|
36
|
-
/**
|
|
37
|
-
readonly
|
|
43
|
+
/** The colour under its layers, in each scheme. */
|
|
44
|
+
readonly colors: SchemePair;
|
|
45
|
+
/** Its layers, as the `background` shorthand writes them (image, position, size, repeat), top first; `none` for none. */
|
|
46
|
+
readonly layers: SchemePair;
|
|
38
47
|
};
|
|
48
|
+
/** A backdrop the View menu offers. */
|
|
49
|
+
export type Backdrop = BuiltInBackdrop | OwnBackdrop;
|
|
39
50
|
/**
|
|
40
51
|
* A catalogue's own backdrop, as its configuration writes it: a colour and, optionally, CSS layers over it, for the
|
|
41
52
|
* light scheme and, when it differs, the dark one.
|
|
@@ -56,14 +67,16 @@ export type CustomBackdrop = {
|
|
|
56
67
|
readonly layers?: string;
|
|
57
68
|
};
|
|
58
69
|
};
|
|
70
|
+
/** The colour under each of Forgebook's pictures: the page of content's follows the theme, the others' do not. */
|
|
71
|
+
export declare const BUILT_IN_COLORS: Readonly<Record<BuiltInBackdropId, SchemePair>>;
|
|
59
72
|
/** The backdrops Forgebook draws, in the View menu's order: every one but the page's own colour. */
|
|
60
|
-
export declare const BUILT_IN_BACKDROPS: readonly
|
|
73
|
+
export declare const BUILT_IN_BACKDROPS: readonly BuiltInBackdrop[];
|
|
61
74
|
/**
|
|
62
|
-
* A catalogue's own backdrop,
|
|
75
|
+
* A catalogue's own backdrop, offered as the built-in ones are.
|
|
63
76
|
*
|
|
64
77
|
* @param custom - the backdrop as the configuration writes it.
|
|
65
78
|
*/
|
|
66
|
-
export declare const customBackdrop: (custom: CustomBackdrop) =>
|
|
79
|
+
export declare const customBackdrop: (custom: CustomBackdrop) => OwnBackdrop;
|
|
67
80
|
/**
|
|
68
81
|
* The colour a backdrop is drawn on, which the box of a loading story waits on.
|
|
69
82
|
*
|
|
@@ -72,17 +85,3 @@ export declare const customBackdrop: (custom: CustomBackdrop) => Backdrop;
|
|
|
72
85
|
* @returns the CSS colour; none for the page's own colour.
|
|
73
86
|
*/
|
|
74
87
|
export declare const backdropColor: (backdrop: Backdrop | undefined, isDark: boolean) => string | undefined;
|
|
75
|
-
/**
|
|
76
|
-
* The style sheet that draws a backdrop behind a frame's story.
|
|
77
|
-
*
|
|
78
|
-
* @remarks
|
|
79
|
-
* The rule sits on `body`, where the sources set their page colour, and wins over it with `!important`, so the
|
|
80
|
-
* story's own elements keep every colour they set. The dark look follows the scheme the view draws in (its colour
|
|
81
|
-
* scheme switch's, `switches.ts`), the system's preference for `system`; with forced colours the sheet draws nothing.
|
|
82
|
-
*
|
|
83
|
-
* @param backdrop - the backdrop; none for the page's own colour.
|
|
84
|
-
* @param scheme - the scheme the story is drawn in.
|
|
85
|
-
* @returns the CSS; empty for the page's own colour.
|
|
86
|
-
*/
|
|
87
|
-
export declare const backdropSheet: (backdrop: Backdrop | undefined, scheme: "light" | "dark" | "system") => string;
|
|
88
|
-
//# sourceMappingURL=backdrops.d.ts.map
|
package/dist/src/backdrops.js
CHANGED
|
@@ -1,167 +1,58 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* The backdrops Forgebook draws behind a story in place of its page's colour: a checkerboard, a vivid
|
|
3
|
+
* abstract picture, a light and a dark desktop-like picture, a page of content, and a catalogue's own. They show what a translucent
|
|
4
|
+
* surface (a menu's or a popover's glass, its blur) does, which the page's plain colour hides.
|
|
3
5
|
*
|
|
4
|
-
* @
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* What the shell needs of a backdrop lives here: its id, its name and the colour under its picture, which the box a
|
|
8
|
+
* story waits in takes while it loads (`backdropColor`). Forgebook's own pictures are drawn by the frame alone
|
|
9
|
+
* (`backdropPictures.ts`, with the style sheet that puts them behind the story), so the shell's first load carries
|
|
10
|
+
* none of them. The desktop pictures are fixed whatever the theme; the page of content follows the theme, as an app's
|
|
11
|
+
* page would. Pure.
|
|
9
12
|
*
|
|
10
|
-
* @
|
|
11
|
-
* @param height - the picture's height, in its own units.
|
|
12
|
-
* @param content - the SVG elements inside the root.
|
|
13
|
-
*/
|
|
14
|
-
const svgImage = (width, height, content) => {
|
|
15
|
-
const svg = `<svg xmlns="http://www.w3.org/2000/svg" width="${width}" height="${height}" ` +
|
|
16
|
-
`viewBox="0 0 ${width} ${height}" preserveAspectRatio="xMidYMid slice">${content}</svg>`;
|
|
17
|
-
return `url("data:image/svg+xml,${encodeURIComponent(svg)}")`;
|
|
18
|
-
};
|
|
19
|
-
/** The same look in both themes: a backdrop that does not follow the theme. */
|
|
20
|
-
const fixed = (look) => ({ light: look, dark: look });
|
|
21
|
-
/** The checkerboard: grey and white squares of 8 px, the usual sign of a transparent picture. */
|
|
22
|
-
const CHECKERBOARD = {
|
|
23
|
-
color: "#ffffff",
|
|
24
|
-
layers: "repeating-conic-gradient(#d6d6d6 0% 25%, #ffffff 0% 50%) 0 0 / 16px 16px"
|
|
25
|
-
};
|
|
26
|
-
/** The vivid picture's shapes, in its tile of 480 px. */
|
|
27
|
-
const VIVID_SHAPES = svgImage(480, 480, '<circle cx="96" cy="104" r="64" fill="#ffd60a"/>' +
|
|
28
|
-
'<circle cx="372" cy="336" r="88" fill="#22d3ee"/>' +
|
|
29
|
-
'<rect x="248" y="56" width="176" height="56" rx="28" fill="#ffffff" fill-opacity="0.85"/>' +
|
|
30
|
-
'<rect x="40" y="300" width="56" height="140" rx="12" fill="#34d399"/>' +
|
|
31
|
-
'<path d="M150 240 L330 240 L240 420 Z" fill="#ff4d8d"/>' +
|
|
32
|
-
'<g stroke="#111827" stroke-width="10" stroke-opacity="0.55">' +
|
|
33
|
-
'<line x1="300" y1="160" x2="460" y2="160"/><line x1="300" y1="190" x2="460" y2="190"/>' +
|
|
34
|
-
'<line x1="300" y1="220" x2="460" y2="220"/></g>');
|
|
35
|
-
/**
|
|
36
|
-
* The vivid picture: crisp circles, bars and stripes on a saturated gradient, the shapes repeated every 480 px, so a
|
|
37
|
-
* surface's blur shows on sharp edges wherever it sits.
|
|
13
|
+
* @module
|
|
38
14
|
*/
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
15
|
+
/** The colour under each of Forgebook's pictures: the page of content's follows the theme, the others' do not. */
|
|
16
|
+
export const BUILT_IN_COLORS = {
|
|
17
|
+
checkerboard: { light: "#ffffff", dark: "#ffffff" },
|
|
18
|
+
gradient: { light: "#7c3aed", dark: "#7c3aed" },
|
|
19
|
+
lightDesktop: { light: "#e4ecf8", dark: "#e4ecf8" },
|
|
20
|
+
darkDesktop: { light: "#0d1226", dark: "#0d1226" },
|
|
21
|
+
content: { light: "#ffffff", dark: "#16181d" }
|
|
42
22
|
};
|
|
43
23
|
/**
|
|
44
|
-
*
|
|
24
|
+
* One of Forgebook's backdrops.
|
|
45
25
|
*
|
|
46
|
-
* @param
|
|
26
|
+
* @param id - its id.
|
|
27
|
+
* @param label - its name in the View menu.
|
|
47
28
|
*/
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
'<rect width="1600" height="1000" fill="url(#glow)"/>' +
|
|
55
|
-
`<path d="M0 560 C260 470 520 640 820 560 S1360 430 1600 520 L1600 1000 L0 1000 Z" fill="${colors.hills[0]}"/>` +
|
|
56
|
-
`<path d="M0 700 C320 600 640 780 960 690 S1420 600 1600 660 L1600 1000 L0 1000 Z" fill="${colors.hills[1]}"/>` +
|
|
57
|
-
`<path d="M0 840 C360 760 700 900 1040 830 S1460 760 1600 800 L1600 1000 L0 1000 Z" fill="${colors.hills[2]}"/>`);
|
|
58
|
-
/** The light desktop: pale hills under a morning sky. */
|
|
59
|
-
const LIGHT_DESKTOP = {
|
|
60
|
-
color: "#e4ecf8",
|
|
61
|
-
layers: `${hills({
|
|
62
|
-
skyTop: "#cfe0fa",
|
|
63
|
-
skyBottom: "#f8e6ee",
|
|
64
|
-
glow: "#fff4d6",
|
|
65
|
-
hills: ["#b7cdf0", "#e8b9cf", "#9fc9b4"]
|
|
66
|
-
})} center / cover no-repeat`
|
|
67
|
-
};
|
|
68
|
-
/** The dark desktop: deep hills under a night sky with a violet glow. */
|
|
69
|
-
const DARK_DESKTOP = {
|
|
70
|
-
color: "#0d1226",
|
|
71
|
-
layers: `${hills({
|
|
72
|
-
skyTop: "#070b1a",
|
|
73
|
-
skyBottom: "#1d1547",
|
|
74
|
-
glow: "#7c3aed",
|
|
75
|
-
hills: ["#23306b", "#3b2a7a", "#0f3a55"]
|
|
76
|
-
})} center / cover no-repeat`
|
|
77
|
-
};
|
|
78
|
-
/** A paragraph of the page, one line per entry: SVG text does not wrap. */
|
|
79
|
-
const PARAGRAPH = [
|
|
80
|
-
"Start the tomatoes indoors six weeks before the last frost, then move",
|
|
81
|
-
"them out once the nights stay warm. Keep the herbs near the kitchen",
|
|
82
|
-
"door, where they are easy to reach, and the squash at the far end."
|
|
83
|
-
];
|
|
84
|
-
/** The rows of the page: a title, a line under it, a value at the end. */
|
|
85
|
-
const ROWS = [
|
|
86
|
-
["Seed trays", "Delivered on Tuesday", "12"],
|
|
87
|
-
["Watering schedule", "Every other morning", "3 zones"],
|
|
88
|
-
["Compost bins", "Turned last week", "2"],
|
|
89
|
-
["Tool shed", "Needs a new hinge", "1 task"]
|
|
90
|
-
];
|
|
91
|
-
/** The font of the page's text: the system's, the only one a picture drawn as an image can use. */
|
|
92
|
-
const PAGE_FONT = "system-ui, -apple-system, Segoe UI, sans-serif";
|
|
93
|
-
/**
|
|
94
|
-
* A page of content as an app shows it, in a tile of 720 × 600 px repeated: a heading, a paragraph, a coloured
|
|
95
|
-
* picture and a list of rows.
|
|
96
|
-
*
|
|
97
|
-
* @param palette - the theme's colours.
|
|
98
|
-
*/
|
|
99
|
-
const contentPage = (palette) => {
|
|
100
|
-
const paragraph = PARAGRAPH.map((line, index) => `<text x="40" y="${104 + index * 24}" font-size="15" fill="${palette.text}">${xmlText(line)}</text>`).join("");
|
|
101
|
-
const rows = ROWS.map(([title, detail, value], index) => {
|
|
102
|
-
const top = 312 + index * 68;
|
|
103
|
-
const icon = palette.icons[index] ?? palette.secondary;
|
|
104
|
-
return (`<rect x="40" y="${top + 12}" width="36" height="36" rx="8" fill="${icon}"/>` +
|
|
105
|
-
`<text x="92" y="${top + 27}" font-size="15" font-weight="600" fill="${palette.text}">${xmlText(title)}</text>` +
|
|
106
|
-
`<text x="92" y="${top + 47}" font-size="13" fill="${palette.secondary}">${xmlText(detail)}</text>` +
|
|
107
|
-
`<text x="680" y="${top + 36}" font-size="14" text-anchor="end" fill="${palette.secondary}">` +
|
|
108
|
-
`${xmlText(value)}</text>` +
|
|
109
|
-
`<line x1="40" y1="${top + 64}" x2="680" y2="${top + 64}" stroke="${palette.divider}"/>`);
|
|
110
|
-
}).join("");
|
|
111
|
-
return {
|
|
112
|
-
color: palette.page,
|
|
113
|
-
layers: `${svgImage(720, 600, `<rect width="720" height="600" fill="${palette.page}"/>` +
|
|
114
|
-
`<g font-family="${PAGE_FONT}">` +
|
|
115
|
-
`<text x="40" y="64" font-size="26" font-weight="700" fill="${palette.text}">Spring garden plan</text>` +
|
|
116
|
-
paragraph +
|
|
117
|
-
'<defs><linearGradient id="picture" x1="0" y1="0" x2="1" y2="1">' +
|
|
118
|
-
'<stop offset="0" stop-color="#4f7cff"/><stop offset="0.5" stop-color="#a855f7"/>' +
|
|
119
|
-
'<stop offset="1" stop-color="#f97316"/></linearGradient></defs>' +
|
|
120
|
-
'<rect x="40" y="184" width="640" height="104" rx="12" fill="url(#picture)"/>' +
|
|
121
|
-
'<circle cx="600" cy="236" r="30" fill="#ffd60a"/>' +
|
|
122
|
-
rows +
|
|
123
|
-
"</g>")} 0 0 / 720px 600px repeat`
|
|
124
|
-
};
|
|
125
|
-
};
|
|
126
|
-
/** The page of content, in both schemes. */
|
|
127
|
-
const CONTENT = {
|
|
128
|
-
light: contentPage({
|
|
129
|
-
page: "#ffffff",
|
|
130
|
-
text: "#1f2328",
|
|
131
|
-
secondary: "#656d76",
|
|
132
|
-
divider: "#d8dee4",
|
|
133
|
-
icons: ["#4f7cff", "#22c55e", "#f59e0b", "#ec4899"]
|
|
134
|
-
}),
|
|
135
|
-
dark: contentPage({
|
|
136
|
-
page: "#16181d",
|
|
137
|
-
text: "#e6e8eb",
|
|
138
|
-
secondary: "#9aa1ab",
|
|
139
|
-
divider: "#2d3139",
|
|
140
|
-
icons: ["#6b8cff", "#34d399", "#fbbf24", "#f472b6"]
|
|
141
|
-
})
|
|
142
|
-
};
|
|
29
|
+
const builtIn = (id, label) => ({
|
|
30
|
+
kind: "builtIn",
|
|
31
|
+
id,
|
|
32
|
+
label,
|
|
33
|
+
colors: BUILT_IN_COLORS[id]
|
|
34
|
+
});
|
|
143
35
|
/** The backdrops Forgebook draws, in the View menu's order: every one but the page's own colour. */
|
|
144
36
|
export const BUILT_IN_BACKDROPS = [
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
37
|
+
builtIn("checkerboard", "Checkerboard"),
|
|
38
|
+
builtIn("gradient", "Vivid picture"),
|
|
39
|
+
builtIn("lightDesktop", "Light desktop"),
|
|
40
|
+
builtIn("darkDesktop", "Dark desktop"),
|
|
41
|
+
builtIn("content", "Page of content")
|
|
150
42
|
];
|
|
151
43
|
/**
|
|
152
|
-
* A catalogue's own backdrop,
|
|
44
|
+
* A catalogue's own backdrop, offered as the built-in ones are.
|
|
153
45
|
*
|
|
154
46
|
* @param custom - the backdrop as the configuration writes it.
|
|
155
47
|
*/
|
|
156
48
|
export const customBackdrop = (custom) => {
|
|
157
|
-
const
|
|
158
|
-
color: written.color,
|
|
159
|
-
layers: written.layers ?? "none"
|
|
160
|
-
});
|
|
49
|
+
const dark = custom.dark ?? custom.light;
|
|
161
50
|
return {
|
|
51
|
+
kind: "own",
|
|
162
52
|
id: custom.id,
|
|
163
53
|
label: custom.label,
|
|
164
|
-
|
|
54
|
+
colors: { light: custom.light.color, dark: dark.color },
|
|
55
|
+
layers: { light: custom.light.layers ?? "none", dark: dark.layers ?? "none" }
|
|
165
56
|
};
|
|
166
57
|
};
|
|
167
58
|
/**
|
|
@@ -171,32 +62,4 @@ export const customBackdrop = (custom) => {
|
|
|
171
62
|
* @param isDark - whether the story is drawn in the dark scheme (a backdrop may follow it).
|
|
172
63
|
* @returns the CSS colour; none for the page's own colour.
|
|
173
64
|
*/
|
|
174
|
-
export const backdropColor = (backdrop, isDark) => backdrop
|
|
175
|
-
/** A `body` rule that draws a look over whatever background the source's sheets set. */
|
|
176
|
-
const bodyRule = (selector, look) => `${selector} { background: ${look.layers}, ${look.color} !important; }`;
|
|
177
|
-
/**
|
|
178
|
-
* The style sheet that draws a backdrop behind a frame's story.
|
|
179
|
-
*
|
|
180
|
-
* @remarks
|
|
181
|
-
* The rule sits on `body`, where the sources set their page colour, and wins over it with `!important`, so the
|
|
182
|
-
* story's own elements keep every colour they set. The dark look follows the scheme the view draws in (its colour
|
|
183
|
-
* scheme switch's, `switches.ts`), the system's preference for `system`; with forced colours the sheet draws nothing.
|
|
184
|
-
*
|
|
185
|
-
* @param backdrop - the backdrop; none for the page's own colour.
|
|
186
|
-
* @param scheme - the scheme the story is drawn in.
|
|
187
|
-
* @returns the CSS; empty for the page's own colour.
|
|
188
|
-
*/
|
|
189
|
-
export const backdropSheet = (backdrop, scheme) => {
|
|
190
|
-
if (backdrop === undefined)
|
|
191
|
-
return "";
|
|
192
|
-
const { light, dark } = backdrop.drawn;
|
|
193
|
-
if (light === dark || scheme === "light")
|
|
194
|
-
return `@media (forced-colors: none) { ${bodyRule("body", light)} }`;
|
|
195
|
-
if (scheme === "dark")
|
|
196
|
-
return `@media (forced-colors: none) { ${bodyRule("body", dark)} }`;
|
|
197
|
-
return [
|
|
198
|
-
`@media (forced-colors: none) { ${bodyRule("body", light)} }`,
|
|
199
|
-
`@media (forced-colors: none) and (prefers-color-scheme: dark) { ${bodyRule("body", dark)} }`
|
|
200
|
-
].join("\n");
|
|
201
|
-
};
|
|
202
|
-
//# sourceMappingURL=backdrops.js.map
|
|
65
|
+
export const backdropColor = (backdrop, isDark) => backdrop?.colors[isDark ? "dark" : "light"];
|