forgebook 0.1.7 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +906 -23
- package/dist/bin/forgebook/agentClient.d.ts +30 -1
- package/dist/bin/forgebook/agentClient.js +155 -14
- package/dist/bin/forgebook/agentLoopCommands.d.mts +0 -1
- package/dist/bin/forgebook/agentLoopCommands.mjs +161 -40
- package/dist/bin/forgebook/agentText.d.ts +74 -3
- package/dist/bin/forgebook/agentText.js +192 -8
- package/dist/bin/forgebook/agents.md +145 -7
- package/dist/bin/forgebook/agentsText.d.ts +7 -3
- package/dist/bin/forgebook/agentsText.js +7 -3
- package/dist/bin/forgebook/builtCatalogue.d.ts +31 -0
- package/dist/bin/forgebook/builtCatalogue.js +96 -0
- package/dist/bin/forgebook/catalogueCommands.d.ts +22 -3
- package/dist/bin/forgebook/catalogueCommands.js +21 -2
- package/dist/bin/forgebook/catalogueVite.d.ts +51 -9
- package/dist/bin/forgebook/catalogueVite.js +95 -9
- package/dist/bin/forgebook/checkCodeRun.d.ts +8 -0
- package/dist/bin/forgebook/checkCodeRun.js +27 -0
- package/dist/bin/forgebook/commandServer.d.ts +11 -0
- package/dist/bin/forgebook/commandServer.js +39 -0
- package/dist/bin/forgebook/compileCache.d.ts +7 -0
- package/dist/bin/forgebook/compileCache.js +24 -0
- package/dist/bin/forgebook/devCommands.d.mts +14 -0
- package/dist/bin/forgebook/devCommands.mjs +104 -0
- package/dist/bin/forgebook/errorsRun.d.ts +0 -1
- package/dist/bin/forgebook/errorsRun.js +0 -1
- package/dist/bin/forgebook/forgebook.d.mts +0 -1
- package/dist/bin/forgebook/forgebook.mjs +18 -302
- package/dist/bin/forgebook/forgebookCommands.d.mts +1 -0
- package/dist/bin/forgebook/forgebookCommands.mjs +292 -0
- package/dist/bin/forgebook/importers/storybook.d.ts +10 -4
- package/dist/bin/forgebook/importers/storybook.js +71 -45
- package/dist/bin/forgebook/importers/storybookAngular.d.ts +15 -0
- package/dist/bin/forgebook/importers/storybookAngular.js +97 -0
- package/dist/bin/forgebook/importers/storybookFrameworks.d.ts +53 -0
- package/dist/bin/forgebook/importers/storybookFrameworks.js +180 -0
- package/dist/bin/forgebook/importers/storybookReactNative.d.ts +40 -0
- package/dist/bin/forgebook/importers/storybookReactNative.js +179 -0
- package/dist/bin/forgebook/initCommands.d.mts +0 -1
- package/dist/bin/forgebook/initCommands.mjs +23 -12
- package/dist/bin/forgebook/initConfig.d.ts +0 -1
- package/dist/bin/forgebook/initConfig.js +17 -3
- package/dist/bin/forgebook/mcpCommand.d.mts +8 -0
- package/dist/bin/forgebook/mcpCommand.mjs +99 -0
- package/dist/bin/forgebook/mcpPreview.d.ts +32 -0
- package/dist/bin/forgebook/mcpPreview.js +107 -0
- package/dist/bin/forgebook/mcpToolParts.d.ts +28 -0
- package/dist/bin/forgebook/mcpToolParts.js +24 -0
- package/dist/bin/forgebook/mcpTools.d.ts +12 -6
- package/dist/bin/forgebook/mcpTools.js +148 -27
- package/dist/bin/forgebook/newStories.d.ts +2 -3
- package/dist/bin/forgebook/newStories.js +4 -3
- package/dist/bin/forgebook/newStoriesFile.d.ts +3 -4
- package/dist/bin/forgebook/newStoriesFile.js +23 -11
- package/dist/bin/forgebook/pageTools.d.ts +8 -0
- package/dist/bin/forgebook/pageTools.js +71 -0
- package/dist/bin/forgebook/pagesCommands.d.mts +14 -0
- package/dist/bin/forgebook/pagesCommands.mjs +109 -0
- package/dist/bin/forgebook/prebundleChild.d.ts +1 -0
- package/dist/bin/forgebook/prebundleChild.js +34 -0
- package/dist/bin/forgebook/prebundleRun.d.ts +22 -0
- package/dist/bin/forgebook/prebundleRun.js +49 -0
- package/dist/bin/forgebook/prebundleStart.d.ts +44 -0
- package/dist/bin/forgebook/prebundleStart.js +82 -0
- package/dist/bin/forgebook/semanticOptions.d.ts +45 -0
- package/dist/bin/forgebook/semanticOptions.js +36 -0
- package/dist/bin/forgebook/storyCheckCommands.d.mts +13 -0
- package/dist/bin/forgebook/storyCheckCommands.mjs +69 -0
- package/dist/bin/forgebook/storyCheckRun.d.ts +40 -6
- package/dist/bin/forgebook/storyCheckRun.js +90 -16
- package/dist/bin/forgebook/tokensRun.d.ts +41 -0
- package/dist/bin/forgebook/tokensRun.js +42 -0
- package/dist/bin/forgebook/touchWindowRun.d.ts +0 -1
- package/dist/bin/forgebook/touchWindowRun.js +0 -1
- package/dist/bin/forgebook/visualCommands.d.mts +37 -0
- package/dist/bin/forgebook/visualCommands.mjs +162 -0
- package/dist/bin/forgebook/viteCache.d.ts +48 -0
- package/dist/bin/forgebook/viteCache.js +112 -0
- package/dist/bin/forgebook-docs/catalogueDocs.d.ts +1 -2
- package/dist/bin/forgebook-docs/catalogueDocs.js +8 -5
- package/dist/bin/forgebook-docs/catalogueDocs.types.d.ts +24 -3
- package/dist/bin/forgebook-docs/catalogueDocs.types.js +0 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.d.ts +0 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.js +88 -24
- package/dist/bin/forgebook-docs/catalogueOptions.d.ts +1 -2
- package/dist/bin/forgebook-docs/catalogueOptions.js +8 -2
- package/dist/bin/forgebook-docs/collectDocs.d.ts +4 -4
- package/dist/bin/forgebook-docs/collectDocs.js +128 -29
- package/dist/bin/forgebook-docs/forgebook-docs.d.mts +0 -1
- package/dist/bin/forgebook-docs/forgebook-docs.mjs +0 -1
- package/dist/bin/forgebook-docs/llmsText.d.ts +5 -1
- package/dist/bin/forgebook-docs/llmsText.js +5 -2
- package/dist/bin/forgebook-docs/moduleDocs.d.ts +0 -1
- package/dist/bin/forgebook-docs/moduleDocs.js +0 -1
- package/dist/bin/forgebook-docs/sassDocs.d.ts +0 -1
- package/dist/bin/forgebook-docs/sassDocs.js +0 -1
- package/dist/bin/forgebook-texts/forgebook-texts.d.mts +0 -1
- package/dist/bin/forgebook-texts/forgebook-texts.mjs +1 -2
- package/dist/bin/forgebook-texts/storyTextsReport.d.ts +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.js +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.types.d.ts +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.types.js +0 -1
- package/dist/bin/frameworkDocs.d.ts +0 -1
- package/dist/bin/frameworkDocs.js +0 -1
- package/dist/src/a11y.d.ts +0 -1
- package/dist/src/a11y.js +0 -1
- package/dist/src/addressArgs.d.ts +74 -0
- package/dist/src/addressArgs.js +109 -0
- package/dist/src/addressTexts.d.ts +35 -0
- package/dist/src/addressTexts.js +51 -0
- package/dist/src/argTypes.d.ts +0 -1
- package/dist/src/argTypes.js +2 -2
- package/dist/src/audiences.d.ts +17 -0
- package/dist/src/audiences.js +15 -0
- package/dist/src/backdrops.d.ts +39 -40
- package/dist/src/backdrops.js +37 -174
- package/dist/src/catalogue.d.ts +57 -21
- package/dist/src/catalogue.js +34 -15
- package/dist/src/codeLiteral.d.ts +41 -0
- package/dist/src/codeLiteral.js +51 -0
- package/dist/src/componentDocs.d.ts +86 -1
- package/dist/src/componentDocs.js +33 -3
- package/dist/src/controlKeys.d.ts +0 -1
- package/dist/src/controlKeys.js +2 -2
- package/dist/src/deviceDrawing.d.ts +114 -0
- package/dist/src/deviceDrawing.js +358 -0
- package/dist/src/deviceMenuView.d.ts +17 -0
- package/dist/src/deviceMenuView.js +22 -0
- package/dist/src/devicePicture.d.ts +57 -0
- package/dist/src/devicePicture.js +104 -0
- package/dist/src/deviceView.d.ts +172 -0
- package/dist/src/deviceView.js +111 -0
- package/dist/src/devices.d.ts +115 -0
- package/dist/src/devices.js +135 -0
- package/dist/src/docAnchors.d.ts +27 -0
- package/dist/src/docAnchors.js +33 -0
- package/dist/src/docPages.d.ts +203 -0
- package/dist/src/docPages.js +169 -0
- package/dist/src/embed.d.ts +32 -0
- package/dist/src/embed.js +24 -0
- package/dist/src/embedCode.d.ts +31 -0
- package/dist/src/embedCode.js +88 -0
- package/dist/src/frame/backdropPictures.d.ts +29 -0
- package/dist/src/frame/backdropPictures.js +187 -0
- package/dist/src/frame/checkStory.d.ts +6 -3
- package/dist/src/frame/checkStory.js +76 -5
- package/dist/src/frame/followTouch.d.ts +9 -0
- package/dist/src/frame/followTouch.js +43 -0
- package/dist/src/frame/frame.css +8 -3
- package/dist/src/frame/frameClock.d.ts +0 -1
- package/dist/src/frame/frameClock.js +0 -1
- package/dist/src/frame/frameStatus.d.ts +2 -1
- package/dist/src/frame/frameStatus.js +2 -1
- package/dist/src/frame/frameView.d.ts +0 -1
- package/dist/src/frame/frameView.js +1 -2
- package/dist/src/frame/matrixLayout.d.ts +0 -1
- package/dist/src/frame/matrixLayout.js +0 -1
- package/dist/src/frame/measureTools.d.ts +0 -1
- package/dist/src/frame/measureTools.js +0 -1
- package/dist/src/frame/mountFrame.d.ts +10 -3
- package/dist/src/frame/mountFrame.js +162 -63
- package/dist/src/frame/playStory.d.ts +0 -1
- package/dist/src/frame/playStory.js +0 -1
- package/dist/src/frame/pluginFrames.d.ts +31 -0
- package/dist/src/frame/pluginFrames.js +23 -0
- package/dist/src/frame/renderer.d.ts +50 -12
- package/dist/src/frame/renderer.js +27 -6
- package/dist/src/frame/settle.d.ts +0 -1
- package/dist/src/frame/settle.js +0 -1
- package/dist/src/frame/shellChannel.d.ts +47 -0
- package/dist/src/frame/shellChannel.js +39 -0
- package/dist/src/frame/spillOutline.d.ts +0 -1
- package/dist/src/frame/spillOutline.js +0 -1
- package/dist/src/frame/staleModule.d.ts +14 -2
- package/dist/src/frame/staleModule.js +19 -2
- package/dist/src/frame/storyCanvas.d.ts +0 -1
- package/dist/src/frame/storyCanvas.js +0 -1
- package/dist/src/frame/storyHooks.d.ts +0 -1
- package/dist/src/frame/storyHooks.js +0 -1
- package/dist/src/frame/storyModule.d.ts +13 -2
- package/dist/src/frame/storyModule.js +45 -3
- package/dist/src/frame/storyRun.d.ts +21 -4
- package/dist/src/frame/storyRun.js +100 -19
- package/dist/src/frame/touchDots.d.ts +0 -1
- package/dist/src/frame/touchDots.js +0 -1
- package/dist/src/frame/touchEvents.d.ts +0 -1
- package/dist/src/frame/touchEvents.js +0 -1
- package/dist/src/frame/touchGesture.d.ts +0 -1
- package/dist/src/frame/touchGesture.js +0 -1
- package/dist/src/frame/touchLayer.d.ts +3 -3
- package/dist/src/frame/touchLayer.js +4 -30
- package/dist/src/frame/touchScroll.d.ts +0 -1
- package/dist/src/frame/touchScroll.js +0 -1
- package/dist/src/frameOrigins.d.ts +62 -0
- package/dist/src/frameOrigins.js +49 -0
- package/dist/src/hotModules.d.ts +48 -0
- package/dist/src/hotModules.js +53 -0
- package/dist/src/jsxCode.d.ts +22 -0
- package/dist/src/jsxCode.js +36 -0
- package/dist/src/languages.d.ts +0 -1
- package/dist/src/languages.js +0 -1
- package/dist/src/liveErrors.d.ts +0 -1
- package/dist/src/liveErrors.js +0 -1
- package/dist/src/matrix.d.ts +0 -1
- package/dist/src/matrix.js +0 -1
- package/dist/src/messages.d.ts +28 -2
- package/dist/src/messages.js +24 -3
- package/dist/src/namedValues.d.ts +11 -1
- package/dist/src/namedValues.js +25 -2
- package/dist/src/namedViews.d.ts +1 -13
- package/dist/src/namedViews.js +30 -7
- package/dist/src/packedText.d.ts +21 -0
- package/dist/src/packedText.js +36 -0
- package/dist/src/pageAddress.d.ts +26 -0
- package/dist/src/pageAddress.js +39 -0
- package/dist/src/pageConfig.d.ts +3 -1
- package/dist/src/pageConfig.js +0 -1
- package/dist/src/pageTree.d.ts +79 -0
- package/dist/src/pageTree.js +108 -0
- package/dist/src/playTrace.d.ts +0 -1
- package/dist/src/playTrace.js +0 -1
- package/dist/src/plugin.d.ts +230 -0
- package/dist/src/plugin.js +12 -0
- package/dist/src/pluginReact.d.ts +23 -0
- package/dist/src/pluginReact.js +24 -0
- package/dist/src/previewRelay.d.ts +40 -0
- package/dist/src/previewRelay.js +69 -0
- package/dist/src/previewTexts.d.ts +26 -0
- package/dist/src/previewTexts.js +33 -0
- package/dist/src/previewView.d.ts +31 -0
- package/dist/src/previewView.js +264 -0
- package/dist/src/propGroups.d.ts +46 -0
- package/dist/src/propGroups.js +59 -0
- package/dist/src/realTouch.d.ts +1 -2
- package/dist/src/realTouch.js +1 -2
- package/dist/src/safeAreaParameter.d.ts +42 -0
- package/dist/src/safeAreaParameter.js +50 -0
- package/dist/src/search.d.ts +154 -0
- package/dist/src/search.js +265 -0
- package/dist/src/searchIndex.d.ts +61 -0
- package/dist/src/searchIndex.js +55 -0
- package/dist/src/searchMarks.d.ts +29 -0
- package/dist/src/searchMarks.js +165 -0
- package/dist/src/searchMatch.d.ts +58 -0
- package/dist/src/searchMatch.js +127 -0
- package/dist/src/shell/A11yTab.d.ts +0 -7
- package/dist/src/shell/A11yTab.js +4 -15
- package/dist/src/shell/AnchorScroll.d.ts +25 -0
- package/dist/src/shell/AnchorScroll.js +10 -0
- package/dist/src/shell/ApiReference.d.ts +12 -4
- package/dist/src/shell/ApiReference.js +74 -19
- package/dist/src/shell/AppearanceMenu.d.ts +1 -2
- package/dist/src/shell/AppearanceMenu.js +8 -5
- package/dist/src/shell/AudienceSections.d.ts +106 -0
- package/dist/src/shell/AudienceSections.js +154 -0
- package/dist/src/shell/AuthoredHome.d.ts +37 -0
- package/dist/src/shell/AuthoredHome.js +96 -0
- package/dist/src/shell/BoxWidth.d.ts +0 -1
- package/dist/src/shell/BoxWidth.js +0 -1
- package/dist/src/shell/ClockBar.d.ts +19 -0
- package/dist/src/shell/ClockBar.js +15 -0
- package/dist/src/shell/ClockControls.d.ts +5 -9
- package/dist/src/shell/ClockControls.js +13 -16
- package/dist/src/shell/Code.d.ts +0 -1
- package/dist/src/shell/Code.js +0 -1
- package/dist/src/shell/CodeTab.d.ts +0 -1
- package/dist/src/shell/CodeTab.js +2 -2
- package/dist/src/shell/CodeText.d.ts +0 -1
- package/dist/src/shell/CodeText.js +0 -1
- package/dist/src/shell/CompareGrid.d.ts +37 -0
- package/dist/src/shell/CompareGrid.js +24 -0
- package/dist/src/shell/ComponentPage.d.ts +45 -7
- package/dist/src/shell/ComponentPage.js +107 -49
- package/dist/src/shell/ControlKeyField.d.ts +0 -1
- package/dist/src/shell/ControlKeyField.js +3 -4
- package/dist/src/shell/ControlRow.d.ts +4 -4
- package/dist/src/shell/ControlRow.js +5 -5
- package/dist/src/shell/DeviceControl.d.ts +31 -0
- package/dist/src/shell/DeviceControl.js +33 -0
- package/dist/src/shell/DeviceSlot.d.ts +114 -0
- package/dist/src/shell/DeviceSlot.js +134 -0
- package/dist/src/shell/DocBlocks.d.ts +100 -0
- package/dist/src/shell/DocBlocks.js +206 -0
- package/dist/src/shell/DocContainers.d.ts +70 -0
- package/dist/src/shell/DocContainers.js +94 -0
- package/dist/src/shell/DocContents.d.ts +29 -0
- package/dist/src/shell/DocContents.js +88 -0
- package/dist/src/shell/DocPage.d.ts +69 -0
- package/dist/src/shell/DocPage.js +141 -0
- package/dist/src/shell/Dock.d.ts +1 -2
- package/dist/src/shell/Dock.js +1 -2
- package/dist/src/shell/DroppedArgsList.d.ts +26 -0
- package/dist/src/shell/DroppedArgsList.js +8 -0
- package/dist/src/shell/DroppedArgsNote.d.ts +14 -0
- package/dist/src/shell/DroppedArgsNote.js +10 -0
- package/dist/src/shell/EmbedButton.d.ts +19 -0
- package/dist/src/shell/EmbedButton.js +96 -0
- package/dist/src/shell/EmbedPage.d.ts +23 -0
- package/dist/src/shell/EmbedPage.js +168 -0
- package/dist/src/shell/EmbedPanel.d.ts +25 -0
- package/dist/src/shell/EmbedPanel.js +46 -0
- package/dist/src/shell/EventsTab.d.ts +0 -1
- package/dist/src/shell/EventsTab.js +2 -3
- package/dist/src/shell/Example.d.ts +20 -2
- package/dist/src/shell/Example.js +75 -22
- package/dist/src/shell/FrameView.d.ts +1 -2
- package/dist/src/shell/FrameView.js +4 -4
- package/dist/src/shell/HomePage.d.ts +78 -4
- package/dist/src/shell/HomePage.js +53 -14
- package/dist/src/shell/HomePieces.d.ts +40 -0
- package/dist/src/shell/HomePieces.js +29 -0
- package/dist/src/shell/InfoTip.d.ts +0 -1
- package/dist/src/shell/InfoTip.js +0 -1
- package/dist/src/shell/InteractionsTab.d.ts +0 -7
- package/dist/src/shell/InteractionsTab.js +3 -9
- package/dist/src/shell/LazyHost.d.ts +16 -0
- package/dist/src/shell/LazyHost.js +42 -0
- package/dist/src/shell/LazyPage.d.ts +24 -0
- package/dist/src/shell/LazyPage.js +9 -0
- package/dist/src/shell/LogicMark.d.ts +9 -0
- package/dist/src/shell/LogicMark.js +5 -0
- package/dist/src/shell/MatrixPicker.d.ts +0 -1
- package/dist/src/shell/MatrixPicker.js +0 -1
- package/dist/src/shell/NamedViews.d.ts +0 -1
- package/dist/src/shell/NamedViews.js +4 -5
- package/dist/src/shell/PackageHtml.d.ts +0 -1
- package/dist/src/shell/PackageHtml.js +0 -1
- package/dist/src/shell/PartsTab.d.ts +0 -7
- package/dist/src/shell/PartsTab.js +3 -13
- package/dist/src/shell/PinnedControl.d.ts +0 -1
- package/dist/src/shell/PinnedControl.js +2 -2
- package/dist/src/shell/PluginBlockHost.d.ts +46 -0
- package/dist/src/shell/PluginBlockHost.js +39 -0
- package/dist/src/shell/PluginTabHost.d.ts +32 -0
- package/dist/src/shell/PluginTabHost.js +25 -0
- package/dist/src/shell/PluginViewHost.d.ts +37 -0
- package/dist/src/shell/PluginViewHost.js +89 -0
- package/dist/src/shell/PropFields.d.ts +0 -1
- package/dist/src/shell/PropFields.js +0 -1
- package/dist/src/shell/PropsTab.d.ts +11 -2
- package/dist/src/shell/PropsTab.js +31 -5
- package/dist/src/shell/SearchPanel.d.ts +63 -0
- package/dist/src/shell/SearchPanel.js +209 -0
- package/dist/src/shell/Segmented.d.ts +0 -1
- package/dist/src/shell/Segmented.js +0 -1
- package/dist/src/shell/Shell.d.ts +34 -6
- package/dist/src/shell/Shell.js +292 -84
- package/dist/src/shell/Sidebar.d.ts +20 -5
- package/dist/src/shell/Sidebar.js +23 -56
- package/dist/src/shell/SidebarDocs.d.ts +38 -0
- package/dist/src/shell/SidebarDocs.js +30 -0
- package/dist/src/shell/SidebarEntries.d.ts +10 -2
- package/dist/src/shell/SidebarEntries.js +3 -3
- package/dist/src/shell/SidebarHandle.d.ts +0 -1
- package/dist/src/shell/SidebarHandle.js +0 -1
- package/dist/src/shell/SidebarSearch.d.ts +40 -0
- package/dist/src/shell/SidebarSearch.js +85 -0
- package/dist/src/shell/SignatureReference.d.ts +25 -0
- package/dist/src/shell/SignatureReference.js +25 -0
- package/dist/src/shell/Stage.d.ts +9 -4
- package/dist/src/shell/Stage.js +121 -60
- package/dist/src/shell/StageCompare.d.ts +14 -0
- package/dist/src/shell/StageCompare.js +11 -0
- package/dist/src/shell/StageTools.d.ts +0 -1
- package/dist/src/shell/StageTools.js +0 -1
- package/dist/src/shell/StageViewport.d.ts +7 -3
- package/dist/src/shell/StageViewport.js +4 -5
- package/dist/src/shell/StoryBar.d.ts +40 -0
- package/dist/src/shell/StoryBar.js +23 -0
- package/dist/src/shell/StoryCodeBlock.d.ts +1 -2
- package/dist/src/shell/StoryCodeBlock.js +0 -1
- package/dist/src/shell/StoryCoverage.d.ts +36 -0
- package/dist/src/shell/StoryCoverage.js +126 -0
- package/dist/src/shell/StoryPicker.d.ts +0 -1
- package/dist/src/shell/StoryPicker.js +0 -1
- package/dist/src/shell/Toolbar.d.ts +9 -3
- package/dist/src/shell/Toolbar.js +12 -7
- package/dist/src/shell/ToolbarControl.d.ts +6 -8
- package/dist/src/shell/ToolbarControl.js +28 -20
- package/dist/src/shell/UsedIn.d.ts +5 -6
- package/dist/src/shell/UsedIn.js +7 -20
- package/dist/src/shell/ViewMenu.d.ts +7 -7
- package/dist/src/shell/ViewMenu.js +61 -176
- package/dist/src/shell/ViewMenuPanel.d.ts +41 -0
- package/dist/src/shell/ViewMenuPanel.js +199 -0
- package/dist/src/shell/WidthField.d.ts +3 -2
- package/dist/src/shell/WidthField.js +2 -3
- package/dist/src/shell/asideStory.d.ts +34 -0
- package/dist/src/shell/asideStory.js +55 -0
- package/dist/src/shell/audienceLayout.d.ts +39 -0
- package/dist/src/shell/audienceLayout.js +33 -0
- package/dist/src/shell/audiencePage.d.ts +113 -0
- package/dist/src/shell/audiencePage.js +144 -0
- package/dist/src/shell/audienceSections.css +95 -0
- package/dist/src/shell/catalogueContext.d.ts +24 -2
- package/dist/src/shell/catalogueContext.js +12 -9
- package/dist/src/shell/codeTokens.d.ts +0 -1
- package/dist/src/shell/codeTokens.js +0 -1
- package/dist/src/shell/codeWriter.d.ts +0 -1
- package/dist/src/shell/codeWriter.js +0 -1
- package/dist/src/shell/compareVariants.d.ts +3 -3
- package/dist/src/shell/compareVariants.js +6 -5
- package/dist/src/shell/controlCycle.d.ts +0 -1
- package/dist/src/shell/controlCycle.js +13 -1
- package/dist/src/shell/controlLabel.d.ts +7 -0
- package/dist/src/shell/controlLabel.js +17 -0
- package/dist/src/shell/device/deviceFrame.css +42 -0
- package/dist/src/shell/device/deviceParts.d.ts +90 -0
- package/dist/src/shell/device/deviceParts.js +120 -0
- package/dist/src/shell/docPage.css +451 -0
- package/dist/src/shell/dockTabs.d.ts +15 -4
- package/dist/src/shell/dockTabs.js +69 -26
- package/dist/src/shell/embed.css +74 -0
- package/dist/src/shell/filesCode.d.ts +21 -0
- package/dist/src/shell/filesCode.js +37 -0
- package/dist/src/shell/forgebookMark.d.ts +15 -0
- package/dist/src/shell/forgebookMark.js +28 -0
- package/dist/src/shell/framesOrigin.d.ts +23 -0
- package/dist/src/shell/framesOrigin.js +69 -0
- package/dist/src/shell/icons.d.ts +4 -1
- package/dist/src/shell/icons.js +4 -1
- package/dist/src/shell/keyboard.d.ts +0 -1
- package/dist/src/shell/keyboard.js +0 -1
- package/dist/src/shell/laterStrings.d.ts +91 -0
- package/dist/src/shell/laterStrings.js +102 -0
- package/dist/src/shell/lazyModule.d.ts +49 -0
- package/dist/src/shell/lazyModule.js +72 -0
- package/dist/src/shell/lazyTab.d.ts +21 -0
- package/dist/src/shell/lazyTab.js +9 -0
- package/dist/src/shell/logicView.d.ts +24 -0
- package/dist/src/shell/logicView.js +39 -0
- package/dist/src/shell/mountShell.d.ts +5 -3
- package/dist/src/shell/mountShell.js +43 -12
- package/dist/src/shell/pageStrings.d.ts +24 -0
- package/dist/src/shell/pageStrings.js +26 -0
- package/dist/src/shell/pluginHosts.d.ts +9 -0
- package/dist/src/shell/pluginHosts.js +6 -0
- package/dist/src/shell/pluginHostsContext.d.ts +20 -0
- package/dist/src/shell/pluginHostsContext.js +16 -0
- package/dist/src/shell/pluginTabs.d.ts +63 -0
- package/dist/src/shell/pluginTabs.js +60 -0
- package/dist/src/shell/search.css +172 -0
- package/dist/src/shell/searchStrings.d.ts +24 -0
- package/dist/src/shell/searchStrings.js +31 -0
- package/dist/src/shell/shell.css +310 -136
- package/dist/src/shell/shellScheme.d.ts +37 -0
- package/dist/src/shell/shellScheme.js +32 -0
- package/dist/src/shell/storyTouch.d.ts +19 -6
- package/dist/src/shell/storyTouch.js +26 -4
- package/dist/src/shell/strings.d.ts +62 -80
- package/dist/src/shell/strings.js +60 -79
- package/dist/src/shell/switchView.d.ts +0 -1
- package/dist/src/shell/switchView.js +0 -1
- package/dist/src/shell/tabSummaries.d.ts +31 -0
- package/dist/src/shell/tabSummaries.js +27 -0
- package/dist/src/shell/treeSearch.d.ts +39 -3
- package/dist/src/shell/treeSearch.js +27 -1
- package/dist/src/shell/useAddressArgs.d.ts +55 -0
- package/dist/src/shell/useAddressArgs.js +62 -0
- package/dist/src/shell/useAnchorScroll.d.ts +24 -0
- package/dist/src/shell/useAnchorScroll.js +90 -0
- package/dist/src/shell/useAppearance.d.ts +7 -2
- package/dist/src/shell/useAppearance.js +14 -5
- package/dist/src/shell/useComponentDocs.d.ts +0 -1
- package/dist/src/shell/useComponentDocs.js +0 -1
- package/dist/src/shell/useControlKeys.d.ts +2 -1
- package/dist/src/shell/useControlKeys.js +2 -3
- package/dist/src/shell/useCopy.d.ts +2 -1
- package/dist/src/shell/useCopy.js +11 -6
- package/dist/src/shell/useFold.d.ts +0 -1
- package/dist/src/shell/useFold.js +0 -1
- package/dist/src/shell/useFrameMessages.d.ts +19 -4
- package/dist/src/shell/useFrameMessages.js +23 -7
- package/dist/src/shell/useFrameQueue.d.ts +7 -3
- package/dist/src/shell/useFrameQueue.js +39 -22
- package/dist/src/shell/useFullPage.d.ts +0 -1
- package/dist/src/shell/useFullPage.js +0 -1
- package/dist/src/shell/useLiveView.d.ts +0 -1
- package/dist/src/shell/useLiveView.js +0 -1
- package/dist/src/shell/useLoaded.d.ts +1 -2
- package/dist/src/shell/useLoaded.js +28 -6
- package/dist/src/shell/usePageDoc.d.ts +0 -1
- package/dist/src/shell/usePageDoc.js +0 -1
- package/dist/src/shell/usePageFrames.d.ts +46 -0
- package/dist/src/shell/usePageFrames.js +50 -0
- package/dist/src/shell/usePluginTabs.d.ts +18 -0
- package/dist/src/shell/usePluginTabs.js +45 -0
- package/dist/src/shell/usePopover.d.ts +0 -1
- package/dist/src/shell/usePopover.js +0 -1
- package/dist/src/shell/useProseLinks.d.ts +14 -0
- package/dist/src/shell/useProseLinks.js +30 -0
- package/dist/src/shell/useRecentPages.d.ts +3 -4
- package/dist/src/shell/useRecentPages.js +1 -2
- package/dist/src/shell/useScrollMemory.d.ts +9 -1
- package/dist/src/shell/useScrollMemory.js +2 -3
- package/dist/src/shell/useSearchIndex.d.ts +24 -0
- package/dist/src/shell/useSearchIndex.js +51 -0
- package/dist/src/shell/useShownView.d.ts +35 -0
- package/dist/src/shell/useShownView.js +36 -0
- package/dist/src/shell/useSidebarLayout.d.ts +0 -1
- package/dist/src/shell/useSidebarLayout.js +0 -1
- package/dist/src/shell/useStored.d.ts +13 -1
- package/dist/src/shell/useStored.js +13 -5
- package/dist/src/shell/useStoryCheck.d.ts +20 -0
- package/dist/src/shell/useStoryCheck.js +33 -0
- package/dist/src/shell/useStoryCode.d.ts +0 -1
- package/dist/src/shell/useStoryCode.js +0 -1
- package/dist/src/shell/useStoryHeights.d.ts +0 -1
- package/dist/src/shell/useStoryHeights.js +0 -1
- package/dist/src/shell/useStoryIdsElement.d.ts +0 -1
- package/dist/src/shell/useStoryIdsElement.js +0 -1
- package/dist/src/shell/useStoryKeys.d.ts +0 -1
- package/dist/src/shell/useStoryKeys.js +0 -1
- package/dist/src/shell/useSyncedTab.d.ts +8 -0
- package/dist/src/shell/useSyncedTab.js +60 -0
- package/dist/src/shell/useSystemDark.d.ts +0 -1
- package/dist/src/shell/useSystemDark.js +0 -1
- package/dist/src/shell/useToolbarLayout.d.ts +0 -1
- package/dist/src/shell/useToolbarLayout.js +0 -1
- package/dist/src/shell/useToolbarOverflow.d.ts +0 -1
- package/dist/src/shell/useToolbarOverflow.js +0 -1
- package/dist/src/shell/useWorstCase.d.ts +0 -1
- package/dist/src/shell/useWorstCase.js +2 -2
- package/dist/src/shell/worstArgs.d.ts +0 -1
- package/dist/src/shell/worstArgs.js +0 -1
- package/dist/src/shellTheme.d.ts +64 -0
- package/dist/src/shellTheme.js +274 -0
- package/dist/src/shellTheme.types.d.ts +93 -0
- package/dist/src/shellTheme.types.js +10 -0
- package/dist/src/sourceFiles.d.ts +17 -3
- package/dist/src/sourceFiles.js +27 -1
- package/dist/src/spills.d.ts +0 -1
- package/dist/src/spills.js +0 -1
- package/dist/src/storyBackground.d.ts +0 -1
- package/dist/src/storyBackground.js +0 -1
- package/dist/src/storyCheck.d.ts +88 -2
- package/dist/src/storyCheck.js +12 -2
- package/dist/src/storyClock.d.ts +0 -1
- package/dist/src/storyClock.js +0 -1
- package/dist/src/storyGlobals.d.ts +0 -1
- package/dist/src/storyGlobals.js +0 -1
- package/dist/src/storyHeights.d.ts +0 -1
- package/dist/src/storyHeights.js +0 -1
- package/dist/src/storyIds.d.ts +36 -0
- package/dist/src/storyIds.js +52 -0
- package/dist/src/storyIdsElement.d.ts +0 -1
- package/dist/src/storyIdsElement.js +0 -1
- package/dist/src/storyTexts.d.ts +11 -5
- package/dist/src/storyTexts.js +16 -5
- package/dist/src/storyTree.d.ts +88 -25
- package/dist/src/storyTree.js +219 -126
- package/dist/src/switches.d.ts +0 -1
- package/dist/src/switches.js +6 -2
- package/dist/src/toolbarLayout.d.ts +0 -1
- package/dist/src/toolbarLayout.js +0 -1
- package/dist/src/treePlaces.d.ts +60 -0
- package/dist/src/treePlaces.js +89 -0
- package/dist/src/usedIn.d.ts +28 -1
- package/dist/src/usedIn.js +93 -3
- package/dist/src/viewState.d.ts +37 -9
- package/dist/src/viewState.js +67 -9
- package/dist/src/viewWords.d.ts +0 -13
- package/dist/src/viewWords.js +41 -3
- package/dist/src/vite/adapter.d.ts +62 -1
- package/dist/src/vite/adapter.js +20 -2
- package/dist/src/vite/agent.types.d.ts +281 -7
- package/dist/src/vite/agent.types.js +11 -1
- package/dist/src/vite/agentApi.d.ts +55 -2
- package/dist/src/vite/agentApi.js +131 -8
- package/dist/src/vite/agentIds.d.ts +25 -0
- package/dist/src/vite/agentIds.js +41 -0
- package/dist/src/vite/agentIndex.d.ts +63 -0
- package/dist/src/vite/agentIndex.js +91 -0
- package/dist/src/vite/agentIndexRoute.d.ts +10 -0
- package/dist/src/vite/agentIndexRoute.js +35 -0
- package/dist/src/vite/agentRoutes.d.ts +80 -19
- package/dist/src/vite/agentRoutes.js +167 -24
- package/dist/src/vite/autoTitle.d.ts +0 -1
- package/dist/src/vite/autoTitle.js +0 -1
- package/dist/src/vite/axeScript.d.ts +20 -0
- package/dist/src/vite/axeScript.js +60 -0
- package/dist/src/vite/builtTexts.d.ts +75 -0
- package/dist/src/vite/builtTexts.js +142 -0
- package/dist/src/vite/catalogueConfig.d.ts +10 -0
- package/dist/src/vite/catalogueConfig.js +64 -0
- package/dist/src/vite/checkCode.d.ts +67 -0
- package/dist/src/vite/checkCode.js +145 -0
- package/dist/src/vite/closeWatch.d.ts +96 -0
- package/dist/src/vite/closeWatch.js +219 -0
- package/dist/src/vite/codeFence.d.ts +78 -0
- package/dist/src/vite/codeFence.js +267 -0
- package/dist/src/vite/componentImport.d.ts +8 -0
- package/dist/src/vite/componentImport.js +35 -0
- package/dist/src/vite/componentPage.d.ts +15 -2
- package/dist/src/vite/componentPage.js +55 -16
- package/dist/src/vite/config.d.ts +51 -3
- package/dist/src/vite/config.js +0 -1
- package/dist/src/vite/configFile.d.ts +65 -9
- package/dist/src/vite/configFile.js +182 -28
- package/dist/src/vite/designTokens.d.ts +75 -0
- package/dist/src/vite/designTokens.js +382 -0
- package/dist/src/vite/diskCache.d.ts +51 -0
- package/dist/src/vite/diskCache.js +211 -0
- package/dist/src/vite/docDirectives.d.ts +116 -0
- package/dist/src/vite/docDirectives.js +425 -0
- package/dist/src/vite/docMarkdown.d.ts +76 -0
- package/dist/src/vite/docMarkdown.js +150 -0
- package/dist/src/vite/docPageBlocks.d.ts +64 -0
- package/dist/src/vite/docPageBlocks.js +322 -0
- package/dist/src/vite/docPageLinks.d.ts +72 -0
- package/dist/src/vite/docPageLinks.js +135 -0
- package/dist/src/vite/docPageMarkdown.d.ts +86 -0
- package/dist/src/vite/docPageMarkdown.js +133 -0
- package/dist/src/vite/docPageRender.d.ts +27 -0
- package/dist/src/vite/docPageRender.js +199 -0
- package/dist/src/vite/docPageTokens.d.ts +91 -0
- package/dist/src/vite/docPageTokens.js +186 -0
- package/dist/src/vite/docPagesModule.d.ts +50 -0
- package/dist/src/vite/docPagesModule.js +118 -0
- package/dist/src/vite/docPagesRoute.d.ts +38 -0
- package/dist/src/vite/docPagesRoute.js +154 -0
- package/dist/src/vite/docsDependencies.d.ts +6 -0
- package/dist/src/vite/docsDependencies.js +150 -0
- package/dist/src/vite/docsExtractor.d.ts +44 -3
- package/dist/src/vite/docsExtractor.js +160 -26
- package/dist/src/vite/docsProgram.d.ts +89 -9
- package/dist/src/vite/docsProgram.js +413 -50
- package/dist/src/vite/docsWorker.d.ts +0 -1
- package/dist/src/vite/docsWorker.js +49 -15
- package/dist/src/vite/figmaLink.d.ts +26 -0
- package/dist/src/vite/figmaLink.js +92 -0
- package/dist/src/vite/findComponent.d.ts +32 -0
- package/dist/src/vite/findComponent.js +52 -0
- package/dist/src/vite/findRoute.d.ts +14 -0
- package/dist/src/vite/findRoute.js +62 -0
- package/dist/src/vite/forcedStates.d.ts +0 -1
- package/dist/src/vite/forcedStates.js +0 -1
- package/dist/src/vite/forgebookPlugin.d.ts +1 -2
- package/dist/src/vite/forgebookPlugin.js +330 -263
- package/dist/src/vite/framesConfig.d.ts +89 -0
- package/dist/src/vite/framesConfig.js +149 -0
- package/dist/src/vite/framesServer.d.ts +43 -0
- package/dist/src/vite/framesServer.js +326 -0
- package/dist/src/vite/functionComponentDocs.d.ts +26 -0
- package/dist/src/vite/functionComponentDocs.js +193 -0
- package/dist/src/vite/gitChange.d.ts +56 -0
- package/dist/src/vite/gitChange.js +86 -0
- package/dist/src/vite/heightsRoute.d.ts +24 -0
- package/dist/src/vite/heightsRoute.js +42 -0
- package/dist/src/vite/highlightCode.d.ts +0 -1
- package/dist/src/vite/highlightCode.js +8 -27
- package/dist/src/vite/hotSnippets.d.ts +86 -0
- package/dist/src/vite/hotSnippets.js +168 -0
- package/dist/src/vite/indexFields.d.ts +61 -0
- package/dist/src/vite/indexFields.js +149 -0
- package/dist/src/vite/indexStoryFile.d.ts +20 -19
- package/dist/src/vite/indexStoryFile.js +172 -201
- package/dist/src/vite/indexedParameters.d.ts +10 -0
- package/dist/src/vite/indexedParameters.js +110 -0
- package/dist/src/vite/mcpProtocol.d.ts +36 -2
- package/dist/src/vite/mcpProtocol.js +100 -15
- package/dist/src/vite/moduleSummary.d.ts +17 -0
- package/dist/src/vite/moduleSummary.js +40 -0
- package/dist/src/vite/nearestToken.d.ts +50 -0
- package/dist/src/vite/nearestToken.js +295 -0
- package/dist/src/vite/originGuard.d.ts +87 -0
- package/dist/src/vite/originGuard.js +163 -0
- package/dist/src/vite/packedModule.d.ts +40 -0
- package/dist/src/vite/packedModule.js +74 -0
- package/dist/src/vite/pages.d.ts +63 -10
- package/dist/src/vite/pages.js +264 -33
- package/dist/src/vite/parsedFiles.d.ts +18 -0
- package/dist/src/vite/parsedFiles.js +91 -0
- package/dist/src/vite/plainGrammars.d.ts +20 -0
- package/dist/src/vite/plainGrammars.js +113 -0
- package/dist/src/vite/pluginConfig.d.ts +47 -0
- package/dist/src/vite/pluginConfig.js +220 -0
- package/dist/src/vite/pluginIds.d.ts +20 -0
- package/dist/src/vite/pluginIds.js +61 -0
- package/dist/src/vite/pluginModules.d.ts +140 -0
- package/dist/src/vite/pluginModules.js +176 -0
- package/dist/src/vite/prebundled.d.ts +18 -5
- package/dist/src/vite/prebundled.js +28 -18
- package/dist/src/vite/previewPages.d.ts +14 -0
- package/dist/src/vite/previewPages.js +81 -0
- package/dist/src/vite/previewRoute.d.ts +8 -0
- package/dist/src/vite/previewRoute.js +8 -0
- package/dist/src/vite/previewRunner.d.ts +56 -0
- package/dist/src/vite/previewRunner.js +207 -0
- package/dist/src/vite/propDocs.d.ts +60 -0
- package/dist/src/vite/propDocs.js +387 -0
- package/dist/src/vite/searchModule.d.ts +40 -0
- package/dist/src/vite/searchModule.js +212 -0
- package/dist/src/vite/searchRoute.d.ts +7 -0
- package/dist/src/vite/searchRoute.js +79 -0
- package/dist/src/vite/serverConditions.d.ts +31 -0
- package/dist/src/vite/serverConditions.js +69 -0
- package/dist/src/vite/signatureDocs.d.ts +18 -0
- package/dist/src/vite/signatureDocs.js +64 -0
- package/dist/src/vite/sourceTokens.d.ts +57 -0
- package/dist/src/vite/sourceTokens.js +164 -0
- package/dist/src/vite/storyCode.d.ts +0 -1
- package/dist/src/vite/storyCode.js +2 -3
- package/dist/src/vite/storyExports.d.ts +32 -0
- package/dist/src/vite/storyExports.js +27 -0
- package/dist/src/vite/storyFilesModule.d.ts +56 -4
- package/dist/src/vite/storyFilesModule.js +122 -34
- package/dist/src/vite/storyMeta.d.ts +20 -11
- package/dist/src/vite/storyMeta.js +74 -38
- package/dist/src/vite/storyParse.d.ts +18 -0
- package/dist/src/vite/storyParse.js +20 -0
- package/dist/src/vite/storyPlay.d.ts +29 -0
- package/dist/src/vite/storyPlay.js +54 -0
- package/dist/src/vite/storyReach.d.ts +42 -0
- package/dist/src/vite/storyReach.js +43 -0
- package/dist/src/vite/storylessRoutes.d.ts +29 -0
- package/dist/src/vite/storylessRoutes.js +126 -0
- package/dist/src/vite/textModules.d.ts +63 -0
- package/dist/src/vite/textModules.js +132 -0
- package/dist/src/vite/textQueries.d.ts +20 -0
- package/dist/src/vite/textQueries.js +20 -0
- package/dist/src/vite/themeFromTokens.d.ts +35 -0
- package/dist/src/vite/themeFromTokens.js +73 -0
- package/dist/src/vite/tokenAnswers.d.ts +20 -0
- package/dist/src/vite/tokenAnswers.js +86 -0
- package/dist/src/vite/tokenClashes.d.ts +44 -0
- package/dist/src/vite/tokenClashes.js +45 -0
- package/dist/src/vite/touchMedia.d.ts +0 -1
- package/dist/src/vite/touchMedia.js +0 -1
- package/dist/src/vite/typeScriptPieces.d.ts +0 -1
- package/dist/src/vite/typeScriptPieces.js +2 -3
- package/dist/src/vite/usageGraph.d.ts +6 -1
- package/dist/src/vite/usageGraph.js +41 -7
- package/dist/src/vite/usageGuidance.d.ts +33 -0
- package/dist/src/vite/usageGuidance.js +45 -0
- package/dist/src/vite/usageModule.d.ts +0 -1
- package/dist/src/vite/usageModule.js +0 -1
- package/dist/src/vite/vitePaths.d.ts +53 -0
- package/dist/src/vite/vitePaths.js +53 -0
- package/dist/src/worstCase.d.ts +0 -1
- package/dist/src/worstCase.js +0 -1
- package/package.json +66 -3
- package/dist/bin/forgebook/agentClient.d.ts.map +0 -1
- package/dist/bin/forgebook/agentClient.js.map +0 -1
- package/dist/bin/forgebook/agentLoopCommands.d.mts.map +0 -1
- package/dist/bin/forgebook/agentLoopCommands.mjs.map +0 -1
- package/dist/bin/forgebook/agentText.d.ts.map +0 -1
- package/dist/bin/forgebook/agentText.js.map +0 -1
- package/dist/bin/forgebook/agentsText.d.ts.map +0 -1
- package/dist/bin/forgebook/agentsText.js.map +0 -1
- package/dist/bin/forgebook/catalogueCommands.d.ts.map +0 -1
- package/dist/bin/forgebook/catalogueCommands.js.map +0 -1
- package/dist/bin/forgebook/catalogueVite.d.ts.map +0 -1
- package/dist/bin/forgebook/catalogueVite.js.map +0 -1
- package/dist/bin/forgebook/errorsRun.d.ts.map +0 -1
- package/dist/bin/forgebook/errorsRun.js.map +0 -1
- package/dist/bin/forgebook/forgebook.d.mts.map +0 -1
- package/dist/bin/forgebook/forgebook.mjs.map +0 -1
- package/dist/bin/forgebook/importers/storybook.d.ts.map +0 -1
- package/dist/bin/forgebook/importers/storybook.js.map +0 -1
- package/dist/bin/forgebook/initCommands.d.mts.map +0 -1
- package/dist/bin/forgebook/initCommands.mjs.map +0 -1
- package/dist/bin/forgebook/initConfig.d.ts.map +0 -1
- package/dist/bin/forgebook/initConfig.js.map +0 -1
- package/dist/bin/forgebook/mcpTools.d.ts.map +0 -1
- package/dist/bin/forgebook/mcpTools.js.map +0 -1
- package/dist/bin/forgebook/newStories.d.ts.map +0 -1
- package/dist/bin/forgebook/newStories.js.map +0 -1
- package/dist/bin/forgebook/newStoriesFile.d.ts.map +0 -1
- package/dist/bin/forgebook/newStoriesFile.js.map +0 -1
- package/dist/bin/forgebook/storyCheckRun.d.ts.map +0 -1
- package/dist/bin/forgebook/storyCheckRun.js.map +0 -1
- package/dist/bin/forgebook/touchWindowRun.d.ts.map +0 -1
- package/dist/bin/forgebook/touchWindowRun.js.map +0 -1
- package/dist/bin/forgebook-docs/catalogueDocs.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/catalogueDocs.js.map +0 -1
- package/dist/bin/forgebook-docs/catalogueDocs.types.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/catalogueDocs.types.js.map +0 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.js.map +0 -1
- package/dist/bin/forgebook-docs/catalogueOptions.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/catalogueOptions.js.map +0 -1
- package/dist/bin/forgebook-docs/collectDocs.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/collectDocs.js.map +0 -1
- package/dist/bin/forgebook-docs/forgebook-docs.d.mts.map +0 -1
- package/dist/bin/forgebook-docs/forgebook-docs.mjs.map +0 -1
- package/dist/bin/forgebook-docs/llmsText.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/llmsText.js.map +0 -1
- package/dist/bin/forgebook-docs/moduleDocs.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/moduleDocs.js.map +0 -1
- package/dist/bin/forgebook-docs/sassDocs.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/sassDocs.js.map +0 -1
- package/dist/bin/forgebook-docs/sourceId.d.ts +0 -9
- package/dist/bin/forgebook-docs/sourceId.d.ts.map +0 -1
- package/dist/bin/forgebook-docs/sourceId.js +0 -45
- package/dist/bin/forgebook-docs/sourceId.js.map +0 -1
- package/dist/bin/forgebook-texts/forgebook-texts.d.mts.map +0 -1
- package/dist/bin/forgebook-texts/forgebook-texts.mjs.map +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.d.ts.map +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.js.map +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.types.d.ts.map +0 -1
- package/dist/bin/forgebook-texts/storyTextsReport.types.js.map +0 -1
- package/dist/bin/frameworkDocs.d.ts.map +0 -1
- package/dist/bin/frameworkDocs.js.map +0 -1
- package/dist/src/a11y.d.ts.map +0 -1
- package/dist/src/a11y.js.map +0 -1
- package/dist/src/argTypes.d.ts.map +0 -1
- package/dist/src/argTypes.js.map +0 -1
- package/dist/src/backdrops.d.ts.map +0 -1
- package/dist/src/backdrops.js.map +0 -1
- package/dist/src/catalogue.d.ts.map +0 -1
- package/dist/src/catalogue.js.map +0 -1
- package/dist/src/componentDocs.d.ts.map +0 -1
- package/dist/src/componentDocs.js.map +0 -1
- package/dist/src/controlKeys.d.ts.map +0 -1
- package/dist/src/controlKeys.js.map +0 -1
- package/dist/src/frame/checkStory.d.ts.map +0 -1
- package/dist/src/frame/checkStory.js.map +0 -1
- package/dist/src/frame/frameClock.d.ts.map +0 -1
- package/dist/src/frame/frameClock.js.map +0 -1
- package/dist/src/frame/frameStatus.d.ts.map +0 -1
- package/dist/src/frame/frameStatus.js.map +0 -1
- package/dist/src/frame/frameView.d.ts.map +0 -1
- package/dist/src/frame/frameView.js.map +0 -1
- package/dist/src/frame/matrixLayout.d.ts.map +0 -1
- package/dist/src/frame/matrixLayout.js.map +0 -1
- package/dist/src/frame/measureTools.d.ts.map +0 -1
- package/dist/src/frame/measureTools.js.map +0 -1
- package/dist/src/frame/mountFrame.d.ts.map +0 -1
- package/dist/src/frame/mountFrame.js.map +0 -1
- package/dist/src/frame/playStory.d.ts.map +0 -1
- package/dist/src/frame/playStory.js.map +0 -1
- package/dist/src/frame/renderer.d.ts.map +0 -1
- package/dist/src/frame/renderer.js.map +0 -1
- package/dist/src/frame/settle.d.ts.map +0 -1
- package/dist/src/frame/settle.js.map +0 -1
- package/dist/src/frame/spillOutline.d.ts.map +0 -1
- package/dist/src/frame/spillOutline.js.map +0 -1
- package/dist/src/frame/staleModule.d.ts.map +0 -1
- package/dist/src/frame/staleModule.js.map +0 -1
- package/dist/src/frame/storyCanvas.d.ts.map +0 -1
- package/dist/src/frame/storyCanvas.js.map +0 -1
- package/dist/src/frame/storyHooks.d.ts.map +0 -1
- package/dist/src/frame/storyHooks.js.map +0 -1
- package/dist/src/frame/storyModule.d.ts.map +0 -1
- package/dist/src/frame/storyModule.js.map +0 -1
- package/dist/src/frame/storyRun.d.ts.map +0 -1
- package/dist/src/frame/storyRun.js.map +0 -1
- package/dist/src/frame/touchDots.d.ts.map +0 -1
- package/dist/src/frame/touchDots.js.map +0 -1
- package/dist/src/frame/touchEvents.d.ts.map +0 -1
- package/dist/src/frame/touchEvents.js.map +0 -1
- package/dist/src/frame/touchGesture.d.ts.map +0 -1
- package/dist/src/frame/touchGesture.js.map +0 -1
- package/dist/src/frame/touchLayer.d.ts.map +0 -1
- package/dist/src/frame/touchLayer.js.map +0 -1
- package/dist/src/frame/touchScroll.d.ts.map +0 -1
- package/dist/src/frame/touchScroll.js.map +0 -1
- package/dist/src/languages.d.ts.map +0 -1
- package/dist/src/languages.js.map +0 -1
- package/dist/src/liveErrors.d.ts.map +0 -1
- package/dist/src/liveErrors.js.map +0 -1
- package/dist/src/matrix.d.ts.map +0 -1
- package/dist/src/matrix.js.map +0 -1
- package/dist/src/messages.d.ts.map +0 -1
- package/dist/src/messages.js.map +0 -1
- package/dist/src/namedValues.d.ts.map +0 -1
- package/dist/src/namedValues.js.map +0 -1
- package/dist/src/namedViews.d.ts.map +0 -1
- package/dist/src/namedViews.js.map +0 -1
- package/dist/src/pageConfig.d.ts.map +0 -1
- package/dist/src/pageConfig.js.map +0 -1
- package/dist/src/playTrace.d.ts.map +0 -1
- package/dist/src/playTrace.js.map +0 -1
- package/dist/src/realTouch.d.ts.map +0 -1
- package/dist/src/realTouch.js.map +0 -1
- package/dist/src/shell/A11yTab.d.ts.map +0 -1
- package/dist/src/shell/A11yTab.js.map +0 -1
- package/dist/src/shell/ApiReference.d.ts.map +0 -1
- package/dist/src/shell/ApiReference.js.map +0 -1
- package/dist/src/shell/AppearanceMenu.d.ts.map +0 -1
- package/dist/src/shell/AppearanceMenu.js.map +0 -1
- package/dist/src/shell/BoxWidth.d.ts.map +0 -1
- package/dist/src/shell/BoxWidth.js.map +0 -1
- package/dist/src/shell/ClockControls.d.ts.map +0 -1
- package/dist/src/shell/ClockControls.js.map +0 -1
- package/dist/src/shell/Code.d.ts.map +0 -1
- package/dist/src/shell/Code.js.map +0 -1
- package/dist/src/shell/CodeTab.d.ts.map +0 -1
- package/dist/src/shell/CodeTab.js.map +0 -1
- package/dist/src/shell/CodeText.d.ts.map +0 -1
- package/dist/src/shell/CodeText.js.map +0 -1
- package/dist/src/shell/ComponentPage.d.ts.map +0 -1
- package/dist/src/shell/ComponentPage.js.map +0 -1
- package/dist/src/shell/ControlKeyField.d.ts.map +0 -1
- package/dist/src/shell/ControlKeyField.js.map +0 -1
- package/dist/src/shell/ControlRow.d.ts.map +0 -1
- package/dist/src/shell/ControlRow.js.map +0 -1
- package/dist/src/shell/Dock.d.ts.map +0 -1
- package/dist/src/shell/Dock.js.map +0 -1
- package/dist/src/shell/EventsTab.d.ts.map +0 -1
- package/dist/src/shell/EventsTab.js.map +0 -1
- package/dist/src/shell/Example.d.ts.map +0 -1
- package/dist/src/shell/Example.js.map +0 -1
- package/dist/src/shell/FrameView.d.ts.map +0 -1
- package/dist/src/shell/FrameView.js.map +0 -1
- package/dist/src/shell/HomePage.d.ts.map +0 -1
- package/dist/src/shell/HomePage.js.map +0 -1
- package/dist/src/shell/InfoTip.d.ts.map +0 -1
- package/dist/src/shell/InfoTip.js.map +0 -1
- package/dist/src/shell/InteractionsTab.d.ts.map +0 -1
- package/dist/src/shell/InteractionsTab.js.map +0 -1
- package/dist/src/shell/MatrixPicker.d.ts.map +0 -1
- package/dist/src/shell/MatrixPicker.js.map +0 -1
- package/dist/src/shell/NamedViews.d.ts.map +0 -1
- package/dist/src/shell/NamedViews.js.map +0 -1
- package/dist/src/shell/PackageHtml.d.ts.map +0 -1
- package/dist/src/shell/PackageHtml.js.map +0 -1
- package/dist/src/shell/PartsTab.d.ts.map +0 -1
- package/dist/src/shell/PartsTab.js.map +0 -1
- package/dist/src/shell/PinnedControl.d.ts.map +0 -1
- package/dist/src/shell/PinnedControl.js.map +0 -1
- package/dist/src/shell/PropFields.d.ts.map +0 -1
- package/dist/src/shell/PropFields.js.map +0 -1
- package/dist/src/shell/PropsTab.d.ts.map +0 -1
- package/dist/src/shell/PropsTab.js.map +0 -1
- package/dist/src/shell/Segmented.d.ts.map +0 -1
- package/dist/src/shell/Segmented.js.map +0 -1
- package/dist/src/shell/Shell.d.ts.map +0 -1
- package/dist/src/shell/Shell.js.map +0 -1
- package/dist/src/shell/Sidebar.d.ts.map +0 -1
- package/dist/src/shell/Sidebar.js.map +0 -1
- package/dist/src/shell/SidebarEntries.d.ts.map +0 -1
- package/dist/src/shell/SidebarEntries.js.map +0 -1
- package/dist/src/shell/SidebarHandle.d.ts.map +0 -1
- package/dist/src/shell/SidebarHandle.js.map +0 -1
- package/dist/src/shell/Stage.d.ts.map +0 -1
- package/dist/src/shell/Stage.js.map +0 -1
- package/dist/src/shell/StageTools.d.ts.map +0 -1
- package/dist/src/shell/StageTools.js.map +0 -1
- package/dist/src/shell/StageViewport.d.ts.map +0 -1
- package/dist/src/shell/StageViewport.js.map +0 -1
- package/dist/src/shell/StoryCodeBlock.d.ts.map +0 -1
- package/dist/src/shell/StoryCodeBlock.js.map +0 -1
- package/dist/src/shell/StoryPicker.d.ts.map +0 -1
- package/dist/src/shell/StoryPicker.js.map +0 -1
- package/dist/src/shell/Toolbar.d.ts.map +0 -1
- package/dist/src/shell/Toolbar.js.map +0 -1
- package/dist/src/shell/ToolbarControl.d.ts.map +0 -1
- package/dist/src/shell/ToolbarControl.js.map +0 -1
- package/dist/src/shell/UsedIn.d.ts.map +0 -1
- package/dist/src/shell/UsedIn.js.map +0 -1
- package/dist/src/shell/ViewMenu.d.ts.map +0 -1
- package/dist/src/shell/ViewMenu.js.map +0 -1
- package/dist/src/shell/WidthField.d.ts.map +0 -1
- package/dist/src/shell/WidthField.js.map +0 -1
- package/dist/src/shell/catalogueContext.d.ts.map +0 -1
- package/dist/src/shell/catalogueContext.js.map +0 -1
- package/dist/src/shell/codeTokens.d.ts.map +0 -1
- package/dist/src/shell/codeTokens.js.map +0 -1
- package/dist/src/shell/codeWriter.d.ts.map +0 -1
- package/dist/src/shell/codeWriter.js.map +0 -1
- package/dist/src/shell/compareVariants.d.ts.map +0 -1
- package/dist/src/shell/compareVariants.js.map +0 -1
- package/dist/src/shell/controlCycle.d.ts.map +0 -1
- package/dist/src/shell/controlCycle.js.map +0 -1
- package/dist/src/shell/dockTabs.d.ts.map +0 -1
- package/dist/src/shell/dockTabs.js.map +0 -1
- package/dist/src/shell/icons.d.ts.map +0 -1
- package/dist/src/shell/icons.js.map +0 -1
- package/dist/src/shell/keyboard.d.ts.map +0 -1
- package/dist/src/shell/keyboard.js.map +0 -1
- package/dist/src/shell/mountShell.d.ts.map +0 -1
- package/dist/src/shell/mountShell.js.map +0 -1
- package/dist/src/shell/storyTouch.d.ts.map +0 -1
- package/dist/src/shell/storyTouch.js.map +0 -1
- package/dist/src/shell/strings.d.ts.map +0 -1
- package/dist/src/shell/strings.js.map +0 -1
- package/dist/src/shell/switchView.d.ts.map +0 -1
- package/dist/src/shell/switchView.js.map +0 -1
- package/dist/src/shell/treeSearch.d.ts.map +0 -1
- package/dist/src/shell/treeSearch.js.map +0 -1
- package/dist/src/shell/useAppearance.d.ts.map +0 -1
- package/dist/src/shell/useAppearance.js.map +0 -1
- package/dist/src/shell/useComponentDocs.d.ts.map +0 -1
- package/dist/src/shell/useComponentDocs.js.map +0 -1
- package/dist/src/shell/useControlKeys.d.ts.map +0 -1
- package/dist/src/shell/useControlKeys.js.map +0 -1
- package/dist/src/shell/useCopy.d.ts.map +0 -1
- package/dist/src/shell/useCopy.js.map +0 -1
- package/dist/src/shell/useFold.d.ts.map +0 -1
- package/dist/src/shell/useFold.js.map +0 -1
- package/dist/src/shell/useFrameMessages.d.ts.map +0 -1
- package/dist/src/shell/useFrameMessages.js.map +0 -1
- package/dist/src/shell/useFrameQueue.d.ts.map +0 -1
- package/dist/src/shell/useFrameQueue.js.map +0 -1
- package/dist/src/shell/useFullPage.d.ts.map +0 -1
- package/dist/src/shell/useFullPage.js.map +0 -1
- package/dist/src/shell/useLiveView.d.ts.map +0 -1
- package/dist/src/shell/useLiveView.js.map +0 -1
- package/dist/src/shell/useLoaded.d.ts.map +0 -1
- package/dist/src/shell/useLoaded.js.map +0 -1
- package/dist/src/shell/usePageDoc.d.ts.map +0 -1
- package/dist/src/shell/usePageDoc.js.map +0 -1
- package/dist/src/shell/usePopover.d.ts.map +0 -1
- package/dist/src/shell/usePopover.js.map +0 -1
- package/dist/src/shell/useRecentPages.d.ts.map +0 -1
- package/dist/src/shell/useRecentPages.js.map +0 -1
- package/dist/src/shell/useScrollMemory.d.ts.map +0 -1
- package/dist/src/shell/useScrollMemory.js.map +0 -1
- package/dist/src/shell/useSidebarLayout.d.ts.map +0 -1
- package/dist/src/shell/useSidebarLayout.js.map +0 -1
- package/dist/src/shell/useStored.d.ts.map +0 -1
- package/dist/src/shell/useStored.js.map +0 -1
- package/dist/src/shell/useStoryCode.d.ts.map +0 -1
- package/dist/src/shell/useStoryCode.js.map +0 -1
- package/dist/src/shell/useStoryHeights.d.ts.map +0 -1
- package/dist/src/shell/useStoryHeights.js.map +0 -1
- package/dist/src/shell/useStoryIdsElement.d.ts.map +0 -1
- package/dist/src/shell/useStoryIdsElement.js.map +0 -1
- package/dist/src/shell/useStoryKeys.d.ts.map +0 -1
- package/dist/src/shell/useStoryKeys.js.map +0 -1
- package/dist/src/shell/useSystemDark.d.ts.map +0 -1
- package/dist/src/shell/useSystemDark.js.map +0 -1
- package/dist/src/shell/useToolbarLayout.d.ts.map +0 -1
- package/dist/src/shell/useToolbarLayout.js.map +0 -1
- package/dist/src/shell/useToolbarOverflow.d.ts.map +0 -1
- package/dist/src/shell/useToolbarOverflow.js.map +0 -1
- package/dist/src/shell/useWorstCase.d.ts.map +0 -1
- package/dist/src/shell/useWorstCase.js.map +0 -1
- package/dist/src/shell/worstArgs.d.ts.map +0 -1
- package/dist/src/shell/worstArgs.js.map +0 -1
- package/dist/src/sourceFiles.d.ts.map +0 -1
- package/dist/src/sourceFiles.js.map +0 -1
- package/dist/src/spills.d.ts.map +0 -1
- package/dist/src/spills.js.map +0 -1
- package/dist/src/storyBackground.d.ts.map +0 -1
- package/dist/src/storyBackground.js.map +0 -1
- package/dist/src/storyCheck.d.ts.map +0 -1
- package/dist/src/storyCheck.js.map +0 -1
- package/dist/src/storyClock.d.ts.map +0 -1
- package/dist/src/storyClock.js.map +0 -1
- package/dist/src/storyGlobals.d.ts.map +0 -1
- package/dist/src/storyGlobals.js.map +0 -1
- package/dist/src/storyHeights.d.ts.map +0 -1
- package/dist/src/storyHeights.js.map +0 -1
- package/dist/src/storyIdsElement.d.ts.map +0 -1
- package/dist/src/storyIdsElement.js.map +0 -1
- package/dist/src/storyTexts.d.ts.map +0 -1
- package/dist/src/storyTexts.js.map +0 -1
- package/dist/src/storyTree.d.ts.map +0 -1
- package/dist/src/storyTree.js.map +0 -1
- package/dist/src/switches.d.ts.map +0 -1
- package/dist/src/switches.js.map +0 -1
- package/dist/src/toolbarLayout.d.ts.map +0 -1
- package/dist/src/toolbarLayout.js.map +0 -1
- package/dist/src/usedIn.d.ts.map +0 -1
- package/dist/src/usedIn.js.map +0 -1
- package/dist/src/viewState.d.ts.map +0 -1
- package/dist/src/viewState.js.map +0 -1
- package/dist/src/viewWords.d.ts.map +0 -1
- package/dist/src/viewWords.js.map +0 -1
- package/dist/src/vite/adapter.d.ts.map +0 -1
- package/dist/src/vite/adapter.js.map +0 -1
- package/dist/src/vite/agent.types.d.ts.map +0 -1
- package/dist/src/vite/agent.types.js.map +0 -1
- package/dist/src/vite/agentApi.d.ts.map +0 -1
- package/dist/src/vite/agentApi.js.map +0 -1
- package/dist/src/vite/agentRoutes.d.ts.map +0 -1
- package/dist/src/vite/agentRoutes.js.map +0 -1
- package/dist/src/vite/autoTitle.d.ts.map +0 -1
- package/dist/src/vite/autoTitle.js.map +0 -1
- package/dist/src/vite/componentPage.d.ts.map +0 -1
- package/dist/src/vite/componentPage.js.map +0 -1
- package/dist/src/vite/config.d.ts.map +0 -1
- package/dist/src/vite/config.js.map +0 -1
- package/dist/src/vite/configFile.d.ts.map +0 -1
- package/dist/src/vite/configFile.js.map +0 -1
- package/dist/src/vite/docsExtractor.d.ts.map +0 -1
- package/dist/src/vite/docsExtractor.js.map +0 -1
- package/dist/src/vite/docsProgram.d.ts.map +0 -1
- package/dist/src/vite/docsProgram.js.map +0 -1
- package/dist/src/vite/docsWorker.d.ts.map +0 -1
- package/dist/src/vite/docsWorker.js.map +0 -1
- package/dist/src/vite/forcedStates.d.ts.map +0 -1
- package/dist/src/vite/forcedStates.js.map +0 -1
- package/dist/src/vite/forgebookPlugin.d.ts.map +0 -1
- package/dist/src/vite/forgebookPlugin.js.map +0 -1
- package/dist/src/vite/highlightCode.d.ts.map +0 -1
- package/dist/src/vite/highlightCode.js.map +0 -1
- package/dist/src/vite/indexStoryFile.d.ts.map +0 -1
- package/dist/src/vite/indexStoryFile.js.map +0 -1
- package/dist/src/vite/mcpProtocol.d.ts.map +0 -1
- package/dist/src/vite/mcpProtocol.js.map +0 -1
- package/dist/src/vite/pages.d.ts.map +0 -1
- package/dist/src/vite/pages.js.map +0 -1
- package/dist/src/vite/prebundled.d.ts.map +0 -1
- package/dist/src/vite/prebundled.js.map +0 -1
- package/dist/src/vite/storyCode.d.ts.map +0 -1
- package/dist/src/vite/storyCode.js.map +0 -1
- package/dist/src/vite/storyFilesModule.d.ts.map +0 -1
- package/dist/src/vite/storyFilesModule.js.map +0 -1
- package/dist/src/vite/storyMeta.d.ts.map +0 -1
- package/dist/src/vite/storyMeta.js.map +0 -1
- package/dist/src/vite/touchMedia.d.ts.map +0 -1
- package/dist/src/vite/touchMedia.js.map +0 -1
- package/dist/src/vite/typeScriptPieces.d.ts.map +0 -1
- package/dist/src/vite/typeScriptPieces.js.map +0 -1
- package/dist/src/vite/usageGraph.d.ts.map +0 -1
- package/dist/src/vite/usageGraph.js.map +0 -1
- package/dist/src/vite/usageModule.d.ts.map +0 -1
- package/dist/src/vite/usageModule.js.map +0 -1
- package/dist/src/worstCase.d.ts.map +0 -1
- package/dist/src/worstCase.js.map +0 -1
package/dist/src/storyTree.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
|
+
import { pageProblems, treePages } from "./pageTree.js";
|
|
1
2
|
import { sourceFiles } from "./sourceFiles.js";
|
|
3
|
+
import { csfStoryId, exportWords, idPart } from "./storyIds.js";
|
|
4
|
+
import { groupAt, metaList, placeAliases, relatedTitles } from "./treePlaces.js";
|
|
2
5
|
/**
|
|
3
|
-
* A text in lower-case kebab case,
|
|
6
|
+
* A text in lower-case kebab case, split at its case changes: the rule ids had before they followed Storybook's, kept
|
|
7
|
+
* to find a story by an id written then (`formerStoryId`).
|
|
4
8
|
*
|
|
5
9
|
* @param text - any text.
|
|
6
10
|
*/
|
|
@@ -10,34 +14,48 @@ export const kebab = (text) => text
|
|
|
10
14
|
.replace(/[^a-z0-9]+/g, "-")
|
|
11
15
|
.replace(/^-|-$/g, "");
|
|
12
16
|
/**
|
|
13
|
-
* A story's id.
|
|
17
|
+
* A story's id: the source's id, then Storybook's id of the story.
|
|
14
18
|
*
|
|
15
19
|
* @param sourceId - the source's id (`acme-ui`).
|
|
16
|
-
* @param
|
|
20
|
+
* @param component - the meta's `id` when it writes one, else the title.
|
|
17
21
|
* @param exportName - the story's export.
|
|
18
22
|
*/
|
|
19
|
-
export const storyId = (sourceId,
|
|
23
|
+
export const storyId = (sourceId, component, exportName) => `${sourceId}:${csfStoryId(component, exportName)}`;
|
|
20
24
|
/**
|
|
21
|
-
* A component's id: its source and
|
|
25
|
+
* A component's id: its source and Storybook's id of the component, the part of its stories' ids before `--`.
|
|
22
26
|
*
|
|
23
27
|
* @param sourceId - the source's id (`acme-ui`).
|
|
24
|
-
* @param
|
|
28
|
+
* @param component - the meta's `id` when it writes one, else the title.
|
|
25
29
|
*/
|
|
26
|
-
export const componentId = (sourceId,
|
|
30
|
+
export const componentId = (sourceId, component) => `${sourceId}:${idPart(component)}`;
|
|
27
31
|
/**
|
|
28
|
-
*
|
|
32
|
+
* The id a component had under the former rule (`kebab`), which an address written then still names.
|
|
33
|
+
*
|
|
34
|
+
* @param sourceId - the source's id.
|
|
35
|
+
* @param title - the component's title.
|
|
36
|
+
*/
|
|
37
|
+
export const formerComponentId = (sourceId, title) => `${sourceId}:${kebab(title)}`;
|
|
38
|
+
/**
|
|
39
|
+
* The id a story had under the former rule (`kebab`), which an address written then still names.
|
|
40
|
+
*
|
|
41
|
+
* @param sourceId - the source's id.
|
|
42
|
+
* @param title - the component's title.
|
|
43
|
+
* @param exportName - the story's export.
|
|
44
|
+
*/
|
|
45
|
+
export const formerStoryId = (sourceId, title, exportName) => `${formerComponentId(sourceId, title)}--${kebab(exportName)}`;
|
|
46
|
+
/**
|
|
47
|
+
* A story's name from its export: its words as Storybook splits them (`exportWords`), in sentence case, a word written
|
|
48
|
+
* in capitals kept so: `KeyboardOpen` → "Keyboard open", `CustomSVGIcon` → "Custom SVG icon", `Size2X` → "Size 2 X".
|
|
29
49
|
*
|
|
30
50
|
* @param exportName - the named export.
|
|
31
51
|
*/
|
|
32
|
-
export const storyName = (exportName) =>
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
.
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
return words.charAt(0).toUpperCase() + words.slice(1);
|
|
40
|
-
};
|
|
52
|
+
export const storyName = (exportName) => exportWords(exportName)
|
|
53
|
+
.map((word, index) => {
|
|
54
|
+
if (index === 0)
|
|
55
|
+
return word.charAt(0).toUpperCase() + word.slice(1);
|
|
56
|
+
return word === word.toUpperCase() ? word : word.toLowerCase();
|
|
57
|
+
})
|
|
58
|
+
.join(" ");
|
|
41
59
|
/**
|
|
42
60
|
* Where a title places its component, or why it cannot be placed.
|
|
43
61
|
*
|
|
@@ -79,127 +97,157 @@ const byGroup = (order) => (left, right) => {
|
|
|
79
97
|
return 1;
|
|
80
98
|
return rankIn(order, left) - rankIn(order, right) || left.localeCompare(right);
|
|
81
99
|
};
|
|
82
|
-
/**
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
100
|
+
/**
|
|
101
|
+
* The component a file's title starts, or why it cannot: its title has no place, or makes no id, or an id another
|
|
102
|
+
* title already has (Storybook would merge their stories under one id; the catalogue could open only one).
|
|
103
|
+
*
|
|
104
|
+
* @param source - the source.
|
|
105
|
+
* @param file - the file.
|
|
106
|
+
* @param entry - its index.
|
|
107
|
+
* @param titlesById - the titles of the source's components so far, by id.
|
|
108
|
+
*/
|
|
109
|
+
const startedComponent = (source, file, entry, titlesById) => {
|
|
110
|
+
const place = titlePlace(entry.title);
|
|
111
|
+
if (typeof place === "string")
|
|
112
|
+
return place;
|
|
113
|
+
const component = entry.id ?? entry.title;
|
|
114
|
+
if (idPart(component) === "")
|
|
115
|
+
return `"${component}" makes no id: it needs a letter or a digit`;
|
|
116
|
+
const id = componentId(source.id, component);
|
|
117
|
+
const other = titlesById.get(id);
|
|
118
|
+
if (other !== undefined)
|
|
119
|
+
return `"${entry.title}" has the id "${id}" of "${other}"`;
|
|
120
|
+
return { title: entry.title, id, files: [{ file, entry }], ...place };
|
|
121
|
+
};
|
|
122
|
+
/**
|
|
123
|
+
* The components of one source, its files placed by their titles and merged when they share one; a title that cannot
|
|
124
|
+
* be placed, or that makes no id or a taken one, is a problem.
|
|
125
|
+
*/
|
|
126
|
+
const placedComponents = (source, problems) => {
|
|
127
|
+
const byTitle = new Map();
|
|
128
|
+
const titlesById = new Map();
|
|
129
|
+
const index = sourceFiles(source).index;
|
|
130
|
+
// sorted, so a component's files, and so its stories, its docs and a clash's winner, never depend on the groups' order
|
|
131
|
+
for (const file of Object.keys(index).sort()) {
|
|
132
|
+
const entry = index[file];
|
|
133
|
+
if (entry === undefined)
|
|
134
|
+
continue;
|
|
87
135
|
for (const note of entry.notes ?? [])
|
|
88
136
|
problems.push(`${source.name}: ${file}: ${note}`);
|
|
89
|
-
const
|
|
90
|
-
if (
|
|
91
|
-
|
|
137
|
+
const placed = byTitle.get(entry.title);
|
|
138
|
+
if (placed !== undefined) {
|
|
139
|
+
placed.files = [...placed.files, { file, entry }];
|
|
92
140
|
continue;
|
|
93
141
|
}
|
|
94
|
-
const
|
|
95
|
-
if (
|
|
96
|
-
problems.push(`${source.name}: ${file}
|
|
142
|
+
const started = startedComponent(source, file, entry, titlesById);
|
|
143
|
+
if (typeof started === "string") {
|
|
144
|
+
problems.push(`${source.name}: ${file}: ${started}`);
|
|
97
145
|
continue;
|
|
98
146
|
}
|
|
99
|
-
|
|
100
|
-
|
|
147
|
+
byTitle.set(entry.title, started);
|
|
148
|
+
titlesById.set(started.id, entry.title);
|
|
101
149
|
}
|
|
102
|
-
return
|
|
150
|
+
return [...byTitle.values()];
|
|
103
151
|
};
|
|
152
|
+
/** Whether a story is kept out of the catalogue's lists: tagged `!dev`, as Storybook's sidebar leaves it out. */
|
|
153
|
+
const isUnlisted = (story) => story.tags.includes("!dev");
|
|
104
154
|
/**
|
|
105
|
-
*
|
|
106
|
-
*
|
|
155
|
+
* A story of the tree: its index entry under its file's meta.
|
|
156
|
+
*
|
|
157
|
+
* @param id - its id.
|
|
158
|
+
* @param file - its file.
|
|
159
|
+
* @param entry - its file's index.
|
|
160
|
+
* @param story - its entry in the index.
|
|
161
|
+
* @param design - its design: its own, else its file's meta's.
|
|
107
162
|
*/
|
|
108
|
-
const
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
if (
|
|
138
|
-
return
|
|
139
|
-
|
|
140
|
-
};
|
|
141
|
-
|
|
142
|
-
const groupAt = (families, family, group) => {
|
|
143
|
-
const groups = families.get(family) ?? new Map();
|
|
144
|
-
families.set(family, groups);
|
|
145
|
-
const found = groups.get(group) ?? { components: [], aliases: [] };
|
|
146
|
-
groups.set(group, found);
|
|
147
|
-
return found;
|
|
163
|
+
const treeStory = (id, file, entry, story, design) => ({
|
|
164
|
+
id,
|
|
165
|
+
file,
|
|
166
|
+
name: story.name ?? storyName(story.exportName),
|
|
167
|
+
exportName: story.exportName,
|
|
168
|
+
controls: story.controls ?? entry.controls ?? "all",
|
|
169
|
+
group: story.group,
|
|
170
|
+
description: story.description,
|
|
171
|
+
isMain: story.isMain === true,
|
|
172
|
+
isTouch: story.isTouch ?? entry.isTouch ?? false,
|
|
173
|
+
isLogic: story.isLogic ?? entry.isLogic ?? false,
|
|
174
|
+
height: story.height ?? entry.height,
|
|
175
|
+
device: entry.device === undefined && story.device === undefined
|
|
176
|
+
? undefined
|
|
177
|
+
: { ...entry.device, ...story.device },
|
|
178
|
+
design,
|
|
179
|
+
tags: story.tags ?? [],
|
|
180
|
+
hasPlay: story.hasPlay === true
|
|
181
|
+
});
|
|
182
|
+
/**
|
|
183
|
+
* A story's id: the one it writes, else the one its meta and its export make; or why it has none.
|
|
184
|
+
*
|
|
185
|
+
* @param sourceId - the source's id.
|
|
186
|
+
* @param entry - its file's index.
|
|
187
|
+
* @param story - its entry in the index.
|
|
188
|
+
*/
|
|
189
|
+
const treeStoryId = (sourceId, entry, story) => {
|
|
190
|
+
if (story.id === "")
|
|
191
|
+
return new Error(`story ${story.exportName} writes an empty id (\`parameters.__id\`)`);
|
|
192
|
+
if (story.id !== undefined)
|
|
193
|
+
return `${sourceId}:${story.id}`;
|
|
194
|
+
if (idPart(exportWords(story.exportName).join(" ")) === "")
|
|
195
|
+
return new Error(`story ${story.exportName} makes no id: its name needs a letter or a digit`);
|
|
196
|
+
return storyId(sourceId, entry.id ?? entry.title, story.exportName);
|
|
148
197
|
};
|
|
149
198
|
/**
|
|
150
|
-
*
|
|
151
|
-
*
|
|
199
|
+
* The stories of a component's files, each meta's settings under its own stories. A story whose id is empty or taken
|
|
200
|
+
* (by any story of the source: Storybook refuses both) is a problem, and left out.
|
|
201
|
+
*
|
|
202
|
+
* @param source - the source.
|
|
203
|
+
* @param component - the component.
|
|
204
|
+
* @param seenIds - the ids of the source's stories so far, with their files; the new ones are added.
|
|
205
|
+
* @param problems - where a problem goes.
|
|
152
206
|
*/
|
|
153
|
-
const
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
problems.push(`${source.name}: ${file} is also in "${place}", its own place`);
|
|
163
|
-
continue;
|
|
164
|
-
}
|
|
165
|
-
const target = groupAt(families, at.family, at.group);
|
|
166
|
-
if ([...target.components, ...target.aliases].some((other) => other.name === name)) {
|
|
167
|
-
problems.push(`${source.name}: ${file} is also in "${place}", which already lists a ${name}`);
|
|
168
|
-
continue;
|
|
169
|
-
}
|
|
170
|
-
target.aliases.push({ name, title: entry.title });
|
|
171
|
-
}
|
|
207
|
+
const componentStories = (source, component, seenIds, problems) => component.files.flatMap(({ file, entry }) => entry.stories.flatMap((story) => {
|
|
208
|
+
const id = treeStoryId(source.id, entry, story);
|
|
209
|
+
const other = typeof id === "string" ? seenIds.get(id) : undefined;
|
|
210
|
+
if (id instanceof Error || other !== undefined) {
|
|
211
|
+
const problem = id instanceof Error
|
|
212
|
+
? id.message
|
|
213
|
+
: `story ${story.exportName} has the id "${id}" of a story in ${other}`;
|
|
214
|
+
problems.push(`${source.name}: ${file}: ${problem}`);
|
|
215
|
+
return [];
|
|
172
216
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
const
|
|
217
|
+
seenIds.set(id, file);
|
|
218
|
+
// its own link, else its file's meta's; `null` is its own link the index refused, which stays refused
|
|
219
|
+
const design = story.design === undefined ? entry.design : (story.design ?? undefined);
|
|
220
|
+
return [treeStory(id, file, entry, story, design)];
|
|
221
|
+
}));
|
|
222
|
+
/**
|
|
223
|
+
* A component's design: its first file's meta's, as its docs are.
|
|
224
|
+
*
|
|
225
|
+
* @param component - the component.
|
|
226
|
+
*/
|
|
227
|
+
const componentDesign = (component) => component.files[0]?.entry.design;
|
|
176
228
|
/** The families of one source, from its files. */
|
|
177
229
|
const sourceFamilies = (source, problems) => {
|
|
178
|
-
const placed =
|
|
230
|
+
const placed = placedComponents(source, problems);
|
|
179
231
|
const related = relatedTitles(source, placed, problems);
|
|
180
232
|
const families = new Map();
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
exportName: story.exportName,
|
|
186
|
-
controls: story.controls ?? entry.controls ?? "all",
|
|
187
|
-
group: story.group,
|
|
188
|
-
description: story.description,
|
|
189
|
-
isMain: story.isMain === true,
|
|
190
|
-
isTouch: story.isTouch ?? entry.isTouch ?? false,
|
|
191
|
-
height: story.height ?? entry.height,
|
|
192
|
-
tags: story.tags ?? []
|
|
193
|
-
}));
|
|
233
|
+
const seenIds = new Map();
|
|
234
|
+
for (const component of placed) {
|
|
235
|
+
const { title, family, group, name, files } = component;
|
|
236
|
+
const stories = componentStories(source, component, seenIds, problems);
|
|
194
237
|
groupAt(families, family, group).components.push({
|
|
238
|
+
id: component.id,
|
|
195
239
|
name,
|
|
196
|
-
title
|
|
197
|
-
file,
|
|
240
|
+
title,
|
|
241
|
+
file: files[0]?.file ?? "",
|
|
242
|
+
files: files.map((each) => each.file),
|
|
198
243
|
stories: stories.filter((story) => !isUnlisted(story)),
|
|
199
244
|
unlisted: stories.filter(isUnlisted),
|
|
200
|
-
alsoIn:
|
|
201
|
-
related: related.get(
|
|
202
|
-
keywords:
|
|
245
|
+
alsoIn: metaList(component, "alsoIn"),
|
|
246
|
+
related: related.get(title) ?? [],
|
|
247
|
+
keywords: metaList(component, "keywords"),
|
|
248
|
+
design: componentDesign(component),
|
|
249
|
+
// its first file's, as its docs are
|
|
250
|
+
propGroups: component.files[0]?.entry.propGroups ?? []
|
|
203
251
|
});
|
|
204
252
|
}
|
|
205
253
|
placeAliases(source, placed, families, problems);
|
|
@@ -221,6 +269,16 @@ const sourceFamilies = (source, problems) => {
|
|
|
221
269
|
};
|
|
222
270
|
});
|
|
223
271
|
};
|
|
272
|
+
/**
|
|
273
|
+
* The ids a docs page may name the sources' components by: their own, and the ones the former rule gave them
|
|
274
|
+
* (`formerComponentId`), which a page written then still uses.
|
|
275
|
+
*/
|
|
276
|
+
const componentIds = (sources) => sources.flatMap((source) => source.families.flatMap((family) => family.groups.flatMap((group) => group.components.flatMap((component) => [component.id, formerComponentId(source.id, component.title)]))));
|
|
277
|
+
/** The ids a docs page may name the sources' stories by: their own, and their former ones (`formerStoryId`). */
|
|
278
|
+
const storyIds = (sources) => storyLocations({ sources, problems: [] }).flatMap(({ source, component, story }) => [
|
|
279
|
+
story.id,
|
|
280
|
+
formerStoryId(source.id, component.title, story.exportName)
|
|
281
|
+
]);
|
|
224
282
|
/**
|
|
225
283
|
* The catalogue's tree from the sources.
|
|
226
284
|
*
|
|
@@ -233,10 +291,23 @@ export const storyTree = (sources) => {
|
|
|
233
291
|
name: source.name,
|
|
234
292
|
logo: source.logo,
|
|
235
293
|
background: source.background,
|
|
236
|
-
families: sourceFamilies(source, problems)
|
|
294
|
+
families: sourceFamilies(source, problems),
|
|
295
|
+
pages: treePages(source, problems)
|
|
237
296
|
}));
|
|
238
|
-
|
|
297
|
+
const shown = tree.filter((source) => source.families.length > 0 || source.pages.length > 0);
|
|
298
|
+
return {
|
|
299
|
+
sources: shown,
|
|
300
|
+
problems: [...problems, ...pageProblems(shown, new Set(storyIds(shown)), new Set(componentIds(shown)))]
|
|
301
|
+
};
|
|
239
302
|
};
|
|
303
|
+
/**
|
|
304
|
+
* Whether a component is about logic: it lists a story, and every story of its file is (`parameters.logic`), the
|
|
305
|
+
* unlisted ones too, so its page documents a hook's or a function's signature and the sidebar marks it.
|
|
306
|
+
*
|
|
307
|
+
* @param component - the component.
|
|
308
|
+
*/
|
|
309
|
+
export const isLogicComponent = (component) => component.stories.length > 0 &&
|
|
310
|
+
[...component.stories, ...component.unlisted].every((story) => story.isLogic);
|
|
240
311
|
/**
|
|
241
312
|
* Every story of the tree with its place: each component's listed stories in the sidebar's order, then its unlisted
|
|
242
313
|
* ones.
|
|
@@ -258,23 +329,46 @@ export const storyLocations = (tree) => tree.sources.flatMap((source) => source.
|
|
|
258
329
|
*/
|
|
259
330
|
export const testedStoryLocations = (tree) => storyLocations(tree).filter((location) => !location.story.tags.includes("!test"));
|
|
260
331
|
/**
|
|
261
|
-
* Where a story sits
|
|
332
|
+
* Where a story sits: the story with this id, else the one an earlier rule gave this id (`formerStoryId`), so an
|
|
333
|
+
* address written then still opens it.
|
|
262
334
|
*
|
|
263
335
|
* @param tree - the tree.
|
|
264
336
|
* @param id - the story's id.
|
|
265
337
|
* @returns its place, or `undefined` when no story has this id.
|
|
266
338
|
*/
|
|
267
|
-
export const findStory = (tree, id) =>
|
|
339
|
+
export const findStory = (tree, id) => {
|
|
340
|
+
const locations = storyLocations(tree);
|
|
341
|
+
return (locations.find((location) => location.story.id === id) ??
|
|
342
|
+
locations.find(({ source, component, story }) => formerStoryId(source.id, component.title, story.exportName) === id));
|
|
343
|
+
};
|
|
268
344
|
/**
|
|
269
|
-
*
|
|
345
|
+
* Every component of the tree with its place.
|
|
270
346
|
*
|
|
271
347
|
* @param tree - the tree.
|
|
272
|
-
|
|
348
|
+
*/
|
|
349
|
+
const componentLocations = (tree) => tree.sources.flatMap((source) => source.families.flatMap((family) => family.groups.flatMap((group) => group.components.map((component) => ({ source, family, group, component })))));
|
|
350
|
+
/**
|
|
351
|
+
* Where a component sits: the component with this id, else the one an earlier rule gave this id (its title in
|
|
352
|
+
* `kebab`), so an address written then still opens it.
|
|
353
|
+
*
|
|
354
|
+
* @param tree - the tree.
|
|
355
|
+
* @param id - the component's id (`TreeComponent.id`).
|
|
273
356
|
* @returns its place, or `undefined` when no component has this id.
|
|
274
357
|
*/
|
|
275
|
-
export const findComponent = (tree, id) =>
|
|
276
|
-
|
|
277
|
-
.find((location) =>
|
|
358
|
+
export const findComponent = (tree, id) => {
|
|
359
|
+
const locations = componentLocations(tree);
|
|
360
|
+
return (locations.find((location) => location.component.id === id) ??
|
|
361
|
+
locations.find(({ source, component }) => formerComponentId(source.id, component.title) === id));
|
|
362
|
+
};
|
|
363
|
+
/**
|
|
364
|
+
* Where the component with a title sits, in one source: what a meta's `related` or `alsoIn`, or "Used in", names.
|
|
365
|
+
*
|
|
366
|
+
* @param tree - the tree.
|
|
367
|
+
* @param sourceId - the source's id.
|
|
368
|
+
* @param title - the component's title.
|
|
369
|
+
* @returns its place, or `undefined` when the source has no component with this title.
|
|
370
|
+
*/
|
|
371
|
+
export const findComponentByTitle = (tree, sourceId, title) => componentLocations(tree).find((location) => location.source.id === sourceId && location.component.title === title);
|
|
278
372
|
/**
|
|
279
373
|
* A component's stories by group: the ungrouped ones first, then the groups the catalogue names in its order, then
|
|
280
374
|
* the groups it does not name, by id; empty groups are left out.
|
|
@@ -306,4 +400,3 @@ export const sidebarStoryIds = (tree, order) => tree.sources.flatMap((source) =>
|
|
|
306
400
|
export const mainStory = (component) => component.stories.find((story) => story.isMain) ??
|
|
307
401
|
component.stories.find((story) => story.exportName === "Overview") ??
|
|
308
402
|
component.stories[0];
|
|
309
|
-
//# sourceMappingURL=storyTree.js.map
|
package/dist/src/switches.d.ts
CHANGED
|
@@ -191,4 +191,3 @@ export type GlobalTypesOptions = {
|
|
|
191
191
|
* @param options - the preview's `initialGlobals`, and what a switch takes besides its `globalType`.
|
|
192
192
|
*/
|
|
193
193
|
export declare const switchesFromGlobalTypes: (globalTypes: Readonly<Record<string, unknown>>, options?: GlobalTypesOptions) => ViewSwitch[];
|
|
194
|
-
//# sourceMappingURL=switches.d.ts.map
|
package/dist/src/switches.js
CHANGED
|
@@ -12,8 +12,10 @@
|
|
|
12
12
|
*
|
|
13
13
|
* @module
|
|
14
14
|
*/
|
|
15
|
+
import { DEVICE_PARAMETER, ORIENTATION_PARAMETER } from "./deviceView.js";
|
|
15
16
|
/** The address's own parameters: a switch may not take their names. */
|
|
16
17
|
const RESERVED_IDS = [
|
|
18
|
+
"embed",
|
|
17
19
|
"story",
|
|
18
20
|
"component",
|
|
19
21
|
"backdrop",
|
|
@@ -26,9 +28,12 @@ const RESERVED_IDS = [
|
|
|
26
28
|
"tab",
|
|
27
29
|
"zoom",
|
|
28
30
|
"tools",
|
|
31
|
+
DEVICE_PARAMETER,
|
|
32
|
+
ORIENTATION_PARAMETER,
|
|
29
33
|
"args",
|
|
30
34
|
"matrix",
|
|
31
|
-
"clock"
|
|
35
|
+
"clock",
|
|
36
|
+
"audience"
|
|
32
37
|
];
|
|
33
38
|
/**
|
|
34
39
|
* Why a list of switches cannot be used, or none: ids unique and not the address's own, a default among the values,
|
|
@@ -253,4 +258,3 @@ export const switchesFromGlobalTypes = (globalTypes, options = {}) => Object.ent
|
|
|
253
258
|
}
|
|
254
259
|
];
|
|
255
260
|
});
|
|
256
|
-
//# sourceMappingURL=switches.js.map
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A source's components placed by their titles, before they become the tree's: their files, the lists their metas
|
|
3
|
+
* write merged over the files, the related components named both ways, and the aliases listed in other places.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Kept apart from `storyTree.ts`, which builds the tree from them. Pure.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
import type { StoryFileIndex, StorySource } from "@forgebook/story-format/source";
|
|
11
|
+
import type { TreeAlias, TreeComponent } from "./storyTree.ts";
|
|
12
|
+
/** A story file with its index. */
|
|
13
|
+
export type IndexedFile = {
|
|
14
|
+
/** The file, a key of the source's `index`. */
|
|
15
|
+
readonly file: string;
|
|
16
|
+
/** Its index. */
|
|
17
|
+
readonly entry: StoryFileIndex;
|
|
18
|
+
};
|
|
19
|
+
/** A component placed by its title, with its files, before its related components are known. */
|
|
20
|
+
export type PlacedComponent = {
|
|
21
|
+
/** The title its files share. */
|
|
22
|
+
readonly title: string;
|
|
23
|
+
/** Its id (`componentId`), from its first file's meta. */
|
|
24
|
+
readonly id: string;
|
|
25
|
+
/** Its files, in the order of their paths. */
|
|
26
|
+
readonly files: readonly IndexedFile[];
|
|
27
|
+
/** The title's family, its first segment. */
|
|
28
|
+
readonly family: string;
|
|
29
|
+
/** The title's group in its family, when it has one. */
|
|
30
|
+
readonly group: string | undefined;
|
|
31
|
+
/** The title's last segment. */
|
|
32
|
+
readonly name: string;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* A meta's list, merged over a component's files: what each file's meta writes, each once.
|
|
36
|
+
*
|
|
37
|
+
* @param component - the component.
|
|
38
|
+
* @param list - which list.
|
|
39
|
+
*/
|
|
40
|
+
export declare const metaList: (component: PlacedComponent, list: "alsoIn" | "related" | "keywords") => readonly string[];
|
|
41
|
+
/**
|
|
42
|
+
* Each component's related titles, both ways, by its title: a link written in one meta reaches both pages. A title
|
|
43
|
+
* that names no component of the source, or the component itself, is a problem.
|
|
44
|
+
*/
|
|
45
|
+
export declare const relatedTitles: (source: StorySource, placed: readonly PlacedComponent[], problems: string[]) => ReadonlyMap<string, readonly string[]>;
|
|
46
|
+
/** The groups of the families as they are being built: by family, then by group. */
|
|
47
|
+
export type GroupsByFamily = Map<string, Map<string | undefined, {
|
|
48
|
+
components: TreeComponent[];
|
|
49
|
+
aliases: TreeAlias[];
|
|
50
|
+
}>>;
|
|
51
|
+
/** A family's group as it is being built, created when it is not there yet. */
|
|
52
|
+
export declare const groupAt: (families: GroupsByFamily, family: string, group: string | undefined) => {
|
|
53
|
+
components: TreeComponent[];
|
|
54
|
+
aliases: TreeAlias[];
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Lists each component in the other places its meta names, beside the components that live there. A place that is
|
|
58
|
+
* the component's own, or that already holds a component of the same name, is a problem.
|
|
59
|
+
*/
|
|
60
|
+
export declare const placeAliases: (source: StorySource, placed: readonly PlacedComponent[], families: GroupsByFamily, problems: string[]) => void;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The strings of several lists, each once, in the order first seen.
|
|
3
|
+
*
|
|
4
|
+
* @param lists - the lists.
|
|
5
|
+
*/
|
|
6
|
+
const unionOf = (lists) => [
|
|
7
|
+
...new Set(lists.flatMap((list) => list ?? []))
|
|
8
|
+
];
|
|
9
|
+
/**
|
|
10
|
+
* A meta's list, merged over a component's files: what each file's meta writes, each once.
|
|
11
|
+
*
|
|
12
|
+
* @param component - the component.
|
|
13
|
+
* @param list - which list.
|
|
14
|
+
*/
|
|
15
|
+
export const metaList = (component, list) => unionOf(component.files.map(({ entry }) => entry[list]));
|
|
16
|
+
/**
|
|
17
|
+
* Each component's related titles, both ways, by its title: a link written in one meta reaches both pages. A title
|
|
18
|
+
* that names no component of the source, or the component itself, is a problem.
|
|
19
|
+
*/
|
|
20
|
+
export const relatedTitles = (source, placed, problems) => {
|
|
21
|
+
const names = new Map(placed.map((component) => [component.title, component.name]));
|
|
22
|
+
const links = new Map();
|
|
23
|
+
const link = (from, to) => {
|
|
24
|
+
links.set(from, (links.get(from) ?? new Set()).add(to));
|
|
25
|
+
};
|
|
26
|
+
for (const component of placed) {
|
|
27
|
+
const { title, files } = component;
|
|
28
|
+
const where = files[0]?.file ?? title;
|
|
29
|
+
for (const related of metaList(component, "related")) {
|
|
30
|
+
if (related === title)
|
|
31
|
+
problems.push(`${source.name}: ${where} names itself as related`);
|
|
32
|
+
else if (!names.has(related))
|
|
33
|
+
problems.push(`${source.name}: ${where} names "${related}" as related: no such title`);
|
|
34
|
+
else {
|
|
35
|
+
link(title, related);
|
|
36
|
+
link(related, title);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return new Map([...links.entries()].map(([title, others]) => [
|
|
41
|
+
title,
|
|
42
|
+
[...others].sort((left, right) => (names.get(left) ?? left).localeCompare(names.get(right) ?? right))
|
|
43
|
+
]));
|
|
44
|
+
};
|
|
45
|
+
/** The family and group a place of `alsoIn` names (`Data/Tables`, `Data`), or why it cannot be one. */
|
|
46
|
+
const aliasPlace = (place) => {
|
|
47
|
+
const segments = place.split("/").map((segment) => segment.trim());
|
|
48
|
+
if (segments.some((segment) => segment === ""))
|
|
49
|
+
return `"${place}" has an empty segment`;
|
|
50
|
+
const [family = "", group, ...rest] = segments;
|
|
51
|
+
if (rest.length > 0)
|
|
52
|
+
return `"${place}" is not Family or Family/Group`;
|
|
53
|
+
return { family, group };
|
|
54
|
+
};
|
|
55
|
+
/** A family's group as it is being built, created when it is not there yet. */
|
|
56
|
+
export const groupAt = (families, family, group) => {
|
|
57
|
+
const groups = families.get(family) ?? new Map();
|
|
58
|
+
families.set(family, groups);
|
|
59
|
+
const found = groups.get(group) ?? { components: [], aliases: [] };
|
|
60
|
+
groups.set(group, found);
|
|
61
|
+
return found;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Lists each component in the other places its meta names, beside the components that live there. A place that is
|
|
65
|
+
* the component's own, or that already holds a component of the same name, is a problem.
|
|
66
|
+
*/
|
|
67
|
+
export const placeAliases = (source, placed, families, problems) => {
|
|
68
|
+
for (const component of placed) {
|
|
69
|
+
const { title, family, group, name } = component;
|
|
70
|
+
const where = component.files[0]?.file ?? title;
|
|
71
|
+
for (const place of metaList(component, "alsoIn")) {
|
|
72
|
+
const at = aliasPlace(place);
|
|
73
|
+
if (typeof at === "string") {
|
|
74
|
+
problems.push(`${source.name}: ${where}: also in ${at}`);
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
if (at.family === family && at.group === group) {
|
|
78
|
+
problems.push(`${source.name}: ${where} is also in "${place}", its own place`);
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
const target = groupAt(families, at.family, at.group);
|
|
82
|
+
if ([...target.components, ...target.aliases].some((other) => other.name === name)) {
|
|
83
|
+
problems.push(`${source.name}: ${where} is also in "${place}", which already lists a ${name}`);
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
target.aliases.push({ name, title });
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
};
|