forgebook 0.3.3 → 0.4.1
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 +994 -72
- package/dist/bin/forgebook/agentClient.d.ts +2 -1
- package/dist/bin/forgebook/agentClient.js +13 -6
- package/dist/bin/forgebook/agentGuide.d.ts +59 -0
- package/dist/bin/forgebook/agentGuide.js +203 -0
- package/dist/bin/forgebook/agentLoopCommands.mjs +22 -42
- package/dist/bin/forgebook/agentSetup/agentFiles.d.ts +55 -0
- package/dist/bin/forgebook/agentSetup/agentFiles.js +319 -0
- package/dist/bin/forgebook/agentSetup/assistantHooks.d.ts +71 -0
- package/dist/bin/forgebook/agentSetup/assistantHooks.js +125 -0
- package/dist/bin/forgebook/agentSetup/ciWorkflow.d.ts +23 -0
- package/dist/bin/forgebook/agentSetup/ciWorkflow.js +55 -0
- package/dist/bin/forgebook/agentSetup/drawCandidates.d.ts +25 -0
- package/dist/bin/forgebook/agentSetup/drawCandidates.js +116 -0
- package/dist/bin/forgebook/agentSetup/drawDiagnosis.d.ts +28 -0
- package/dist/bin/forgebook/agentSetup/drawDiagnosis.js +134 -0
- package/dist/bin/forgebook/agentSetup/drawRun.d.ts +91 -0
- package/dist/bin/forgebook/agentSetup/drawRun.js +353 -0
- package/dist/bin/forgebook/agentSetup/hookNames.d.ts +7 -0
- package/dist/bin/forgebook/agentSetup/hookNames.js +7 -0
- package/dist/bin/forgebook/agentSetup/initAgentSteps.d.ts +48 -0
- package/dist/bin/forgebook/agentSetup/initAgentSteps.js +104 -0
- package/dist/bin/forgebook/agentSetup/liftedProviders.d.ts +17 -0
- package/dist/bin/forgebook/agentSetup/liftedProviders.js +186 -0
- package/dist/bin/forgebook/agentSetup/projectRunner.d.ts +46 -0
- package/dist/bin/forgebook/agentSetup/projectRunner.js +85 -0
- package/dist/bin/forgebook/agentSetup/stopHook.d.ts +65 -0
- package/dist/bin/forgebook/agentSetup/stopHook.js +202 -0
- package/dist/bin/forgebook/agentSetup/uniformPicture.d.ts +7 -0
- package/dist/bin/forgebook/agentSetup/uniformPicture.js +98 -0
- package/dist/bin/forgebook/agentSetupCommands.d.mts +14 -0
- package/dist/bin/forgebook/agentSetupCommands.mjs +98 -0
- package/dist/bin/forgebook/agentText.d.ts +23 -3
- package/dist/bin/forgebook/agentText.js +182 -28
- package/dist/bin/forgebook/agents.md +20 -191
- package/dist/bin/forgebook/agentsText.js +2 -1
- package/dist/bin/forgebook/appBuild/appBuild.d.ts +59 -0
- package/dist/bin/forgebook/appBuild/appBuild.js +213 -0
- package/dist/bin/forgebook/appBuild/appViteConfig.d.ts +96 -0
- package/dist/bin/forgebook/appBuild/appViteConfig.js +320 -0
- package/dist/bin/forgebook/appBuild/tsconfigPaths.d.ts +14 -0
- package/dist/bin/forgebook/appBuild/tsconfigPaths.js +80 -0
- package/dist/bin/forgebook/auditCommand.d.mts +8 -0
- package/dist/bin/forgebook/auditCommand.mjs +75 -0
- package/dist/bin/forgebook/auditRun.d.ts +95 -0
- package/dist/bin/forgebook/auditRun.js +270 -0
- package/dist/bin/forgebook/browserRun.d.ts +21 -0
- package/dist/bin/forgebook/browserRun.js +57 -0
- package/dist/bin/forgebook/buildFailure.d.ts +7 -0
- package/dist/bin/forgebook/buildFailure.js +47 -0
- package/dist/bin/forgebook/buildWatch.d.ts +52 -0
- package/dist/bin/forgebook/buildWatch.js +137 -0
- package/dist/bin/forgebook/builtCatalogue.js +9 -5
- package/dist/bin/forgebook/catalogueCommands.d.ts +9 -0
- package/dist/bin/forgebook/catalogueCommands.js +23 -0
- package/dist/bin/forgebook/catalogueVite.d.ts +5 -1
- package/dist/bin/forgebook/catalogueVite.js +14 -6
- package/dist/bin/forgebook/commandCacheClaim.d.ts +18 -0
- package/dist/bin/forgebook/commandCacheClaim.js +170 -0
- package/dist/bin/forgebook/commandServer.d.ts +8 -0
- package/dist/bin/forgebook/commandServer.js +61 -13
- package/dist/bin/forgebook/forgebookCommands.mjs +105 -28
- package/dist/bin/forgebook/graphCommand.d.mts +8 -0
- package/dist/bin/forgebook/graphCommand.mjs +84 -0
- package/dist/bin/forgebook/guide/commands.md +62 -0
- package/dist/bin/forgebook/guide/devices.md +17 -0
- package/dist/bin/forgebook/guide/docs-pages.md +13 -0
- package/dist/bin/forgebook/guide/frameworks/angular.md +22 -0
- package/dist/bin/forgebook/guide/frameworks/html.md +22 -0
- package/dist/bin/forgebook/guide/frameworks/nextjs.md +23 -0
- package/dist/bin/forgebook/guide/frameworks/nuxt.md +22 -0
- package/dist/bin/forgebook/guide/frameworks/preact.md +16 -0
- package/dist/bin/forgebook/guide/frameworks/react-native-web.md +21 -0
- package/dist/bin/forgebook/guide/frameworks/react.md +16 -0
- package/dist/bin/forgebook/guide/frameworks/solid.md +18 -0
- package/dist/bin/forgebook/guide/frameworks/svelte.md +18 -0
- package/dist/bin/forgebook/guide/frameworks/sveltekit.md +23 -0
- package/dist/bin/forgebook/guide/frameworks/vue.md +18 -0
- package/dist/bin/forgebook/guide/frameworks/web-components.md +21 -0
- package/dist/bin/forgebook/guide/links.md +29 -0
- package/dist/bin/forgebook/guide/setup.md +23 -0
- package/dist/bin/forgebook/guide/stories.md +95 -0
- package/dist/bin/forgebook/guide/switches.md +43 -0
- package/dist/bin/forgebook/guideCommand.d.mts +13 -0
- package/dist/bin/forgebook/guideCommand.mjs +37 -0
- package/dist/bin/forgebook/importers/storybook.d.ts +21 -0
- package/dist/bin/forgebook/importers/storybook.js +11 -5
- package/dist/bin/forgebook/importers/storybookFrameworks.js +1 -1
- package/dist/bin/forgebook/initCommands.d.mts +11 -0
- package/dist/bin/forgebook/initCommands.mjs +51 -78
- package/dist/bin/forgebook/initConfig.d.ts +5 -3
- package/dist/bin/forgebook/initConfig.js +6 -3
- package/dist/bin/forgebook/initInstall.d.ts +15 -0
- package/dist/bin/forgebook/initInstall.js +77 -0
- package/dist/bin/forgebook/initPrint.d.ts +9 -0
- package/dist/bin/forgebook/initPrint.js +60 -0
- package/dist/bin/forgebook/initRefusals.d.ts +45 -0
- package/dist/bin/forgebook/initRefusals.js +91 -0
- package/dist/bin/forgebook/initRun.d.ts +28 -0
- package/dist/bin/forgebook/initRun.js +311 -0
- package/dist/bin/forgebook/mcpCommand.mjs +38 -4
- package/dist/bin/forgebook/mcpGraph.d.ts +13 -0
- package/dist/bin/forgebook/mcpGraph.js +24 -0
- package/dist/bin/forgebook/mcpTokens.d.ts +14 -0
- package/dist/bin/forgebook/mcpTokens.js +58 -0
- package/dist/bin/forgebook/mcpToolParts.d.ts +7 -0
- package/dist/bin/forgebook/mcpToolParts.js +10 -0
- package/dist/bin/forgebook/mcpTools.d.ts +13 -6
- package/dist/bin/forgebook/mcpTools.js +57 -90
- package/dist/bin/forgebook/mcpVerify.d.ts +16 -0
- package/dist/bin/forgebook/mcpVerify.js +36 -0
- package/dist/bin/forgebook/migrate/codemods.d.ts +11 -0
- package/dist/bin/forgebook/migrate/codemods.js +61 -0
- package/dist/bin/forgebook/migrate/migrate.types.d.ts +117 -0
- package/dist/bin/forgebook/migrate/migrate.types.js +5 -0
- package/dist/bin/forgebook/migrate/migrateCommand.d.mts +8 -0
- package/dist/bin/forgebook/migrate/migrateCommand.mjs +76 -0
- package/dist/bin/forgebook/migrate/migrateRun.d.ts +61 -0
- package/dist/bin/forgebook/migrate/migrateRun.js +210 -0
- package/dist/bin/forgebook/migrate/migrateText.d.ts +12 -0
- package/dist/bin/forgebook/migrate/migrateText.js +30 -0
- package/dist/bin/forgebook/migrate/migrateWrite.d.ts +27 -0
- package/dist/bin/forgebook/migrate/migrateWrite.js +66 -0
- package/dist/bin/forgebook/migrate/objectEdits.d.ts +70 -0
- package/dist/bin/forgebook/migrate/objectEdits.js +241 -0
- package/dist/bin/forgebook/migrate/playOnInBuilds.d.ts +3 -0
- package/dist/bin/forgebook/migrate/playOnInBuilds.js +86 -0
- package/dist/bin/forgebook/migrate/propGroupStrings.d.ts +5 -0
- package/dist/bin/forgebook/migrate/propGroupStrings.js +81 -0
- package/dist/bin/forgebook/newProject/newProject.d.ts +39 -0
- package/dist/bin/forgebook/newProject/newProject.js +180 -0
- package/dist/bin/forgebook/newProject/newProject.types.d.ts +97 -0
- package/dist/bin/forgebook/newProject/newProject.types.js +6 -0
- package/dist/bin/forgebook/newProject/packageManagers.d.ts +51 -0
- package/dist/bin/forgebook/newProject/packageManagers.js +121 -0
- package/dist/bin/forgebook/newProject/projectEntries.d.ts +62 -0
- package/dist/bin/forgebook/newProject/projectEntries.js +191 -0
- package/dist/bin/forgebook/newProject/projectFrameworks.d.ts +57 -0
- package/dist/bin/forgebook/newProject/projectFrameworks.js +148 -0
- package/dist/bin/forgebook/newProject/projectLook.d.ts +23 -0
- package/dist/bin/forgebook/newProject/projectLook.js +293 -0
- package/dist/bin/forgebook/newProject/projectPackages.d.ts +66 -0
- package/dist/bin/forgebook/newProject/projectPackages.js +178 -0
- package/dist/bin/forgebook/newRepair.d.ts +45 -0
- package/dist/bin/forgebook/newRepair.js +157 -0
- package/dist/bin/forgebook/newRepairRun.d.ts +69 -0
- package/dist/bin/forgebook/newRepairRun.js +148 -0
- package/dist/bin/forgebook/newStories.d.ts +23 -1
- package/dist/bin/forgebook/newStories.js +101 -11
- package/dist/bin/forgebook/newStoriesFile.d.ts +20 -1
- package/dist/bin/forgebook/newStoriesFile.js +43 -4
- package/dist/bin/forgebook/prebundleRun.d.ts +3 -1
- package/dist/bin/forgebook/prebundleRun.js +28 -8
- package/dist/bin/forgebook/proofCommand.d.mts +15 -0
- package/dist/bin/forgebook/proofCommand.mjs +212 -0
- package/dist/bin/forgebook/proofRun.d.ts +63 -0
- package/dist/bin/forgebook/proofRun.js +412 -0
- package/dist/bin/forgebook/proofText.d.ts +36 -0
- package/dist/bin/forgebook/proofText.js +131 -0
- package/dist/bin/forgebook/proofWorkflow.d.ts +29 -0
- package/dist/bin/forgebook/proofWorkflow.js +205 -0
- package/dist/bin/forgebook/setArgsTool.d.ts +8 -0
- package/dist/bin/forgebook/setArgsTool.js +70 -0
- package/dist/bin/forgebook/storyCheckCommands.mjs +42 -3
- package/dist/bin/forgebook/storyCheckRun.d.ts +50 -0
- package/dist/bin/forgebook/storyCheckRun.js +83 -9
- package/dist/bin/forgebook/storyFileIds.d.ts +15 -0
- package/dist/bin/forgebook/storyFileIds.js +14 -0
- package/dist/bin/forgebook/stressCases.d.ts +31 -0
- package/dist/bin/forgebook/stressCases.js +79 -0
- package/dist/bin/forgebook/stressRun.d.ts +12 -0
- package/dist/bin/forgebook/stressRun.js +61 -0
- package/dist/bin/forgebook/stressText.d.ts +27 -0
- package/dist/bin/forgebook/stressText.js +46 -0
- package/dist/bin/forgebook/verifyBase.d.ts +45 -0
- package/dist/bin/forgebook/verifyBase.js +204 -0
- package/dist/bin/forgebook/verifyCommand.d.mts +13 -0
- package/dist/bin/forgebook/verifyCommand.mjs +125 -0
- package/dist/bin/forgebook/verifyRun.d.ts +63 -0
- package/dist/bin/forgebook/verifyRun.js +108 -0
- package/dist/bin/forgebook/verifyVerdict.d.ts +40 -0
- package/dist/bin/forgebook/verifyVerdict.js +323 -0
- package/dist/bin/forgebook/workflowActions.d.ts +23 -0
- package/dist/bin/forgebook/workflowActions.js +23 -0
- package/dist/bin/forgebook-docs/catalogueMarkdown.js +12 -1
- package/dist/src/addressArgs.d.ts +29 -5
- package/dist/src/addressArgs.js +58 -16
- package/dist/src/addressArgsParam.d.ts +54 -0
- package/dist/src/addressArgsParam.js +51 -0
- package/dist/src/addressTexts.d.ts +14 -0
- package/dist/src/addressTexts.js +28 -21
- package/dist/src/agentIndexFile.d.ts +11 -0
- package/dist/src/agentIndexFile.js +11 -0
- package/dist/src/argConditions.d.ts +52 -0
- package/dist/src/argConditions.js +80 -0
- package/dist/src/argControl.d.ts +148 -0
- package/dist/src/argControl.js +0 -0
- package/dist/src/argExpression.d.ts +21 -0
- package/dist/src/argExpression.js +30 -0
- package/dist/src/argTypes.d.ts +40 -51
- package/dist/src/argTypes.js +69 -185
- package/dist/src/argsProps.d.ts +3 -3
- package/dist/src/argsProps.js +11 -5
- package/dist/src/bundlerErrors.d.ts +29 -0
- package/dist/src/bundlerErrors.js +49 -0
- package/dist/src/catalogue.d.ts +31 -0
- package/dist/src/catalogue.js +13 -2
- package/dist/src/catalogueRefs.d.ts +75 -0
- package/dist/src/catalogueRefs.js +122 -0
- package/dist/src/componentDocs.d.ts +83 -0
- package/dist/src/componentDocs.js +20 -3
- package/dist/src/controlCode.d.ts +27 -0
- package/dist/src/controlCode.js +41 -0
- package/dist/src/frame/callValues.d.ts +19 -0
- package/dist/src/frame/callValues.js +58 -0
- package/dist/src/frame/canvasScheme.d.ts +33 -0
- package/dist/src/frame/canvasScheme.js +67 -0
- package/dist/src/frame/controlValues.d.ts +39 -0
- package/dist/src/frame/controlValues.js +143 -0
- package/dist/src/frame/frame.css +36 -3
- package/dist/src/frame/frameStatus.d.ts +16 -1
- package/dist/src/frame/frameStatus.js +16 -1
- package/dist/src/frame/frameView.js +4 -3
- package/dist/src/frame/mountFrame.d.ts +10 -1
- package/dist/src/frame/mountFrame.js +160 -55
- package/dist/src/frame/panelControls.d.ts +67 -0
- package/dist/src/frame/panelControls.js +110 -0
- package/dist/src/frame/panelValues.d.ts +35 -0
- package/dist/src/frame/panelValues.js +127 -0
- package/dist/src/frame/playActions.d.ts +39 -0
- package/dist/src/frame/playActions.js +98 -0
- package/dist/src/frame/playStepper.d.ts +28 -0
- package/dist/src/frame/playStepper.js +38 -0
- package/dist/src/frame/playStory.d.ts +9 -1
- package/dist/src/frame/playStory.js +49 -3
- package/dist/src/frame/renderer.d.ts +34 -1
- package/dist/src/frame/renderer.js +24 -0
- package/dist/src/frame/shellChannel.d.ts +1 -1
- package/dist/src/frame/shellChannel.js +1 -1
- package/dist/src/frame/shellCheck.d.ts +17 -0
- package/dist/src/frame/shellCheck.js +25 -0
- package/dist/src/frame/shellMessageCheck.d.ts +7 -0
- package/dist/src/frame/shellMessageCheck.js +53 -0
- package/dist/src/frame/storyContent.d.ts +50 -0
- package/dist/src/frame/storyContent.js +73 -0
- package/dist/src/frame/storyModule.d.ts +9 -0
- package/dist/src/frame/storyModule.js +20 -2
- package/dist/src/frame/storyRun.d.ts +15 -7
- package/dist/src/frame/storyRun.js +64 -15
- package/dist/src/frame/valueSheets.d.ts +35 -0
- package/dist/src/frame/valueSheets.js +99 -0
- package/dist/src/hotModules.d.ts +20 -0
- package/dist/src/hotModules.js +23 -0
- package/dist/src/jsxCode.d.ts +1 -14
- package/dist/src/jsxCode.js +46 -10
- package/dist/src/liveErrors.d.ts +30 -4
- package/dist/src/liveErrors.js +18 -3
- package/dist/src/messages.d.ts +77 -27
- package/dist/src/messages.js +58 -100
- package/dist/src/namedValues.d.ts +2 -26
- package/dist/src/namedValues.js +0 -47
- package/dist/src/pageConfig.d.ts +2 -0
- package/dist/src/playTrace.d.ts +19 -2
- package/dist/src/playTrace.js +10 -5
- package/dist/src/plugin.d.ts +10 -3
- package/dist/src/previewRelay.js +9 -1
- package/dist/src/printable.d.ts +12 -0
- package/dist/src/printable.js +22 -0
- package/dist/src/propsSignature.d.ts +37 -0
- package/dist/src/propsSignature.js +40 -0
- package/dist/src/search.d.ts +41 -5
- package/dist/src/search.js +93 -23
- package/dist/src/searchMatch.d.ts +4 -1
- package/dist/src/searchMatch.js +26 -5
- package/dist/src/searchTypos.d.ts +88 -0
- package/dist/src/searchTypos.js +178 -0
- package/dist/src/shapeValues.d.ts +86 -0
- package/dist/src/shapeValues.js +295 -0
- package/dist/src/shell/ApiReference.js +6 -3
- package/dist/src/shell/ApiTableBox.d.ts +15 -0
- package/dist/src/shell/ApiTableBox.js +11 -0
- package/dist/src/shell/AppearanceMenu.d.ts +4 -1
- package/dist/src/shell/AppearanceMenu.js +9 -6
- package/dist/src/shell/AuthoredHome.js +3 -1
- package/dist/src/shell/CodeTab.d.ts +12 -6
- package/dist/src/shell/CodeTab.js +47 -3
- package/dist/src/shell/CodeText.d.ts +1 -1
- package/dist/src/shell/CodeText.js +2 -3
- package/dist/src/shell/CompareGrid.js +1 -1
- package/dist/src/shell/ComponentPage.d.ts +6 -6
- package/dist/src/shell/ComponentPage.js +8 -2
- package/dist/src/shell/CustomControl.d.ts +34 -0
- package/dist/src/shell/CustomControl.js +125 -0
- package/dist/src/shell/DocContainers.js +1 -1
- package/dist/src/shell/DocPage.js +2 -2
- package/dist/src/shell/DroppedArgsList.d.ts +2 -2
- package/dist/src/shell/DroppedArgsList.js +1 -1
- package/dist/src/shell/EmbedPage.js +30 -12
- package/dist/src/shell/Example.d.ts +5 -1
- package/dist/src/shell/Example.js +16 -8
- package/dist/src/shell/FrameView.d.ts +6 -3
- package/dist/src/shell/FrameView.js +2 -2
- package/dist/src/shell/HomePage.d.ts +3 -1
- package/dist/src/shell/HomePage.js +18 -6
- package/dist/src/shell/InfoTip.js +2 -2
- package/dist/src/shell/InteractionsTab.d.ts +11 -4
- package/dist/src/shell/InteractionsTab.js +18 -2
- package/dist/src/shell/LazyPage.js +1 -1
- package/dist/src/shell/PackageHtml.js +3 -1
- package/dist/src/shell/PageWidth.d.ts +29 -0
- package/dist/src/shell/PageWidth.js +18 -0
- package/dist/src/shell/PinnedControl.js +14 -62
- package/dist/src/shell/PinnedControlMenu.d.ts +44 -0
- package/dist/src/shell/PinnedControlMenu.js +72 -0
- package/dist/src/shell/PropFields.d.ts +3 -1
- package/dist/src/shell/PropFields.js +9 -6
- package/dist/src/shell/PropRows.d.ts +22 -11
- package/dist/src/shell/PropRows.js +62 -24
- package/dist/src/shell/PropsTab.d.ts +12 -5
- package/dist/src/shell/PropsTab.js +9 -22
- package/dist/src/shell/RefStoryPage.d.ts +33 -0
- package/dist/src/shell/RefStoryPage.js +123 -0
- package/dist/src/shell/SearchPanel.js +51 -24
- package/dist/src/shell/Shell.d.ts +18 -0
- package/dist/src/shell/Shell.js +141 -23
- package/dist/src/shell/ShortcutHelp.d.ts +22 -0
- package/dist/src/shell/ShortcutHelp.js +66 -0
- package/dist/src/shell/Sidebar.d.ts +17 -4
- package/dist/src/shell/Sidebar.js +92 -41
- package/dist/src/shell/SidebarDocs.js +2 -2
- package/dist/src/shell/SidebarEntries.js +5 -3
- package/dist/src/shell/SidebarHandle.d.ts +3 -5
- package/dist/src/shell/SidebarHandle.js +4 -4
- package/dist/src/shell/SidebarRefs.d.ts +39 -0
- package/dist/src/shell/SidebarRefs.js +99 -0
- package/dist/src/shell/SidebarSearch.js +37 -9
- package/dist/src/shell/SignatureReference.js +3 -1
- package/dist/src/shell/Stage.d.ts +10 -2
- package/dist/src/shell/Stage.js +29 -49
- package/dist/src/shell/StatusBadges.d.ts +54 -0
- package/dist/src/shell/StatusBadges.js +77 -0
- package/dist/src/shell/StoryCodeBlock.d.ts +8 -19
- package/dist/src/shell/StoryCodeBlock.js +7 -6
- package/dist/src/shell/StoryPicker.d.ts +4 -2
- package/dist/src/shell/StoryPicker.js +3 -3
- package/dist/src/shell/Switch.d.ts +29 -0
- package/dist/src/shell/Switch.js +11 -0
- package/dist/src/shell/SwitchGallery.d.ts +36 -0
- package/dist/src/shell/SwitchGallery.js +17 -0
- package/dist/src/shell/SwitchGalleryPanel.d.ts +37 -0
- package/dist/src/shell/SwitchGalleryPanel.js +99 -0
- package/dist/src/shell/TagFilter.d.ts +24 -0
- package/dist/src/shell/TagFilter.js +45 -0
- package/dist/src/shell/TagViews.d.ts +39 -0
- package/dist/src/shell/TagViews.js +20 -0
- package/dist/src/shell/Toolbar.d.ts +4 -1
- package/dist/src/shell/Toolbar.js +17 -7
- package/dist/src/shell/ToolbarControl.d.ts +3 -0
- package/dist/src/shell/ToolbarControl.js +23 -6
- package/dist/src/shell/ViewMenuPanel.js +6 -1
- package/dist/src/shell/argChecks.d.ts +22 -0
- package/dist/src/shell/argChecks.js +20 -0
- package/dist/src/shell/asideStory.js +7 -2
- package/dist/src/shell/audienceSections.css +9 -9
- package/dist/src/shell/catalogueContext.d.ts +1 -1
- package/dist/src/shell/catalogueContext.js +6 -1
- package/dist/src/shell/codeSpans.d.ts +27 -0
- package/dist/src/shell/codeSpans.js +76 -0
- package/dist/src/shell/compareVariants.d.ts +4 -2
- package/dist/src/shell/compareVariants.js +16 -8
- package/dist/src/shell/composition.d.ts +23 -0
- package/dist/src/shell/composition.js +26 -0
- package/dist/src/shell/controlCycle.d.ts +1 -1
- package/dist/src/shell/controlCycle.js +3 -2
- package/dist/src/shell/customControls.d.ts +62 -0
- package/dist/src/shell/customControls.js +81 -0
- package/dist/src/shell/docPage.css +22 -22
- package/dist/src/shell/dockTabs.d.ts +19 -3
- package/dist/src/shell/dockTabs.js +29 -20
- package/dist/src/shell/embed.css +7 -7
- package/dist/src/shell/frameOrder.d.ts +35 -0
- package/dist/src/shell/frameOrder.js +45 -0
- package/dist/src/shell/framesOrigin.d.ts +7 -0
- package/dist/src/shell/framesOrigin.js +1 -1
- package/dist/src/shell/galleryPlace.d.ts +20 -0
- package/dist/src/shell/galleryPlace.js +26 -0
- package/dist/src/shell/icons.d.ts +1 -0
- package/dist/src/shell/icons.js +1 -0
- package/dist/src/shell/keyboard.d.ts +14 -12
- package/dist/src/shell/keyboard.js +21 -6
- package/dist/src/shell/laterStrings.d.ts +30 -0
- package/dist/src/shell/laterStrings.js +43 -3
- package/dist/src/shell/mountShell.js +3 -0
- package/dist/src/shell/pageStrings.d.ts +4 -0
- package/dist/src/shell/pageStrings.js +4 -0
- package/dist/src/shell/pageTagView.d.ts +18 -0
- package/dist/src/shell/pageTagView.js +10 -0
- package/dist/src/shell/playMemory.d.ts +14 -0
- package/dist/src/shell/playMemory.js +8 -0
- package/dist/src/shell/propNotes.d.ts +23 -0
- package/dist/src/shell/propNotes.js +37 -0
- package/dist/src/shell/refIndexLoad.d.ts +17 -0
- package/dist/src/shell/refIndexLoad.js +38 -0
- package/dist/src/shell/refParts.d.ts +34 -0
- package/dist/src/shell/refParts.js +9 -0
- package/dist/src/shell/refStory.css +21 -0
- package/dist/src/shell/refStrings.d.ts +13 -0
- package/dist/src/shell/refStrings.js +21 -0
- package/dist/src/shell/search.css +11 -11
- package/dist/src/shell/shell.css +376 -169
- package/dist/src/shell/shellScheme.js +2 -2
- package/dist/src/shell/shortcutHelp.css +64 -0
- package/dist/src/shell/stageArgs.d.ts +53 -0
- package/dist/src/shell/stageArgs.js +64 -0
- package/dist/src/shell/statusBadges.css +51 -0
- package/dist/src/shell/strings.d.ts +7 -16
- package/dist/src/shell/strings.js +12 -17
- package/dist/src/shell/switchGallery.css +104 -0
- package/dist/src/shell/tagFilter.css +46 -0
- package/dist/src/shell/tagView.d.ts +20 -0
- package/dist/src/shell/tagView.js +10 -0
- package/dist/src/shell/useAddressArgs.d.ts +9 -0
- package/dist/src/shell/useAddressArgs.js +56 -11
- package/dist/src/shell/useControlKeys.js +2 -2
- package/dist/src/shell/useEditedProblems.d.ts +6 -0
- package/dist/src/shell/useEditedProblems.js +40 -0
- package/dist/src/shell/useFrameMessages.js +3 -0
- package/dist/src/shell/useFrameQueue.d.ts +8 -3
- package/dist/src/shell/useFrameQueue.js +42 -12
- package/dist/src/shell/useListedTree.d.ts +13 -0
- package/dist/src/shell/useListedTree.js +32 -0
- package/dist/src/shell/usePageFrames.js +2 -2
- package/dist/src/shell/usePopover.d.ts +5 -0
- package/dist/src/shell/usePopover.js +7 -1
- package/dist/src/shell/useRefIndex.d.ts +22 -0
- package/dist/src/shell/useRefIndex.js +36 -0
- package/dist/src/shell/useScrollSettled.d.ts +18 -0
- package/dist/src/shell/useScrollSettled.js +56 -0
- package/dist/src/shell/useScrollStops.d.ts +20 -0
- package/dist/src/shell/useScrollStops.js +41 -0
- package/dist/src/shell/useShortcutHelp.d.ts +18 -0
- package/dist/src/shell/useShortcutHelp.js +32 -0
- package/dist/src/shell/useSidebarOverlay.d.ts +2 -1
- package/dist/src/shell/useSidebarOverlay.js +12 -4
- package/dist/src/shell/useStoryCode.d.ts +2 -1
- package/dist/src/shell/useStoryCode.js +12 -7
- package/dist/src/shell/useToolbarLayout.d.ts +5 -1
- package/dist/src/shell/useToolbarLayout.js +2 -2
- package/dist/src/shell/useWorstCase.d.ts +8 -2
- package/dist/src/shell/useWorstCase.js +2 -2
- package/dist/src/shell/valueEditors/FileEditor.d.ts +28 -0
- package/dist/src/shell/valueEditors/FileEditor.js +66 -0
- package/dist/src/shell/valueEditors/JsonEditor.d.ts +14 -0
- package/dist/src/shell/valueEditors/JsonEditor.js +53 -0
- package/dist/src/shell/valueEditors/ListEditor.d.ts +24 -0
- package/dist/src/shell/valueEditors/ListEditor.js +82 -0
- package/dist/src/shell/valueEditors/ObjectEditor.d.ts +32 -0
- package/dist/src/shell/valueEditors/ObjectEditor.js +70 -0
- package/dist/src/shell/valueEditors/PropEditor.d.ts +37 -0
- package/dist/src/shell/valueEditors/PropEditor.js +53 -0
- package/dist/src/shell/valueEditors/RecordEditor.d.ts +20 -0
- package/dist/src/shell/valueEditors/RecordEditor.js +84 -0
- package/dist/src/shell/valueEditors/SearchSelect.d.ts +42 -0
- package/dist/src/shell/valueEditors/SearchSelect.js +80 -0
- package/dist/src/shell/valueEditors/TokenEditor.d.ts +49 -0
- package/dist/src/shell/valueEditors/TokenEditor.js +74 -0
- package/dist/src/shell/valueEditors/UnionEditor.d.ts +20 -0
- package/dist/src/shell/valueEditors/UnionEditor.js +64 -0
- package/dist/src/shell/valueEditors/ValueField.d.ts +15 -0
- package/dist/src/shell/valueEditors/ValueField.js +148 -0
- package/dist/src/shell/valueEditors/editorStrings.d.ts +56 -0
- package/dist/src/shell/valueEditors/editorStrings.js +66 -0
- package/dist/src/shell/valueEditors/fieldTypes.d.ts +31 -0
- package/dist/src/shell/valueEditors/fieldTypes.js +0 -0
- package/dist/src/shell/valueEditors/valueEditors.css +153 -0
- package/dist/src/shell/worstArgs.d.ts +8 -5
- package/dist/src/shell/worstArgs.js +14 -7
- package/dist/src/shellTheme.d.ts +1 -1
- package/dist/src/shellTheme.js +15 -1
- package/dist/src/shellTheme.types.d.ts +4 -0
- package/dist/src/shellWord.d.ts +12 -0
- package/dist/src/shellWord.js +15 -0
- package/dist/src/sourceFiles.js +2 -1
- package/dist/src/storyArgTypes.d.ts +57 -0
- package/dist/src/storyArgTypes.js +195 -0
- package/dist/src/storyBackground.js +14 -3
- package/dist/src/storyCheck.d.ts +99 -3
- package/dist/src/storyCheck.js +39 -1
- package/dist/src/storyCodeText.d.ts +52 -0
- package/dist/src/storyCodeText.js +30 -0
- package/dist/src/storyControls.d.ts +103 -0
- package/dist/src/storyControls.js +100 -0
- package/dist/src/storyStatuses.d.ts +55 -0
- package/dist/src/storyStatuses.js +104 -0
- package/dist/src/storyTagNames.d.ts +25 -0
- package/dist/src/storyTagNames.js +25 -0
- package/dist/src/storyTags.d.ts +29 -0
- package/dist/src/storyTags.js +85 -0
- package/dist/src/storyTree.d.ts +13 -0
- package/dist/src/storyTree.js +24 -4
- package/dist/src/storybookArgs.d.ts +24 -0
- package/dist/src/storybookArgs.js +185 -0
- package/dist/src/switches.d.ts +66 -3
- package/dist/src/switches.js +42 -1
- package/dist/src/valueSchema.d.ts +28 -0
- package/dist/src/valueSchema.js +196 -0
- package/dist/src/valueShape.d.ts +94 -0
- package/dist/src/valueShape.js +25 -0
- package/dist/src/viewState.d.ts +8 -3
- package/dist/src/viewState.js +27 -10
- package/dist/src/vite/adapter.d.ts +40 -2
- package/dist/src/vite/adapter.js +1 -0
- package/dist/src/vite/agent.types.d.ts +354 -7
- package/dist/src/vite/agentApi.d.ts +23 -0
- package/dist/src/vite/agentApi.js +90 -17
- package/dist/src/vite/agentIndex.d.ts +0 -2
- package/dist/src/vite/agentIndex.js +5 -6
- package/dist/src/vite/agentRoutes.d.ts +20 -1
- package/dist/src/vite/agentRoutes.js +135 -66
- package/dist/src/vite/agentStatuses.d.ts +42 -0
- package/dist/src/vite/agentStatuses.js +67 -0
- package/dist/src/vite/agentStoryCode.d.ts +51 -0
- package/dist/src/vite/agentStoryCode.js +44 -0
- package/dist/src/vite/agentVisibility.d.ts +47 -0
- package/dist/src/vite/agentVisibility.js +174 -0
- package/dist/src/vite/appAudit.d.ts +134 -0
- package/dist/src/vite/appAudit.js +333 -0
- package/dist/src/vite/appBuildOption.d.ts +53 -0
- package/dist/src/vite/appBuildOption.js +55 -0
- package/dist/src/vite/appTokenFiles.d.ts +92 -0
- package/dist/src/vite/appTokenFiles.js +433 -0
- package/dist/src/vite/appTokens.d.ts +23 -0
- package/dist/src/vite/appTokens.js +275 -0
- package/dist/src/vite/argControlsConfig.d.ts +30 -0
- package/dist/src/vite/argControlsConfig.js +176 -0
- package/dist/src/vite/builtTexts.d.ts +10 -0
- package/dist/src/vite/builtTexts.js +59 -22
- package/dist/src/vite/catalogueConfig.d.ts +3 -1
- package/dist/src/vite/catalogueConfig.js +21 -4
- package/dist/src/vite/changeCoverage.d.ts +74 -0
- package/dist/src/vite/changeCoverage.js +120 -0
- package/dist/src/vite/changedRoute.d.ts +30 -0
- package/dist/src/vite/changedRoute.js +197 -0
- package/dist/src/vite/checkCode.d.ts +105 -3
- package/dist/src/vite/checkCode.js +323 -36
- package/dist/src/vite/checkoutWatch.d.ts +97 -0
- package/dist/src/vite/checkoutWatch.js +287 -0
- package/dist/src/vite/closeWatch.d.ts +8 -0
- package/dist/src/vite/closeWatch.js +1 -1
- package/dist/src/vite/componentCache.d.ts +8 -0
- package/dist/src/vite/componentCache.js +66 -0
- package/dist/src/vite/componentGraph.d.ts +71 -0
- package/dist/src/vite/componentGraph.js +133 -0
- package/dist/src/vite/componentRules.d.ts +33 -0
- package/dist/src/vite/componentRules.js +105 -0
- package/dist/src/vite/componentScan.d.ts +69 -0
- package/dist/src/vite/componentScan.js +418 -0
- package/dist/src/vite/compositionCheck.d.ts +15 -0
- package/dist/src/vite/compositionCheck.js +243 -0
- package/dist/src/vite/config.d.ts +67 -1
- package/dist/src/vite/configFile.d.ts +15 -2
- package/dist/src/vite/configFile.js +109 -40
- package/dist/src/vite/configKeys.d.ts +15 -0
- package/dist/src/vite/configKeys.js +172 -0
- package/dist/src/vite/configLoadError.d.ts +23 -0
- package/dist/src/vite/configLoadError.js +71 -0
- package/dist/src/vite/cssDeclarations.d.ts +71 -0
- package/dist/src/vite/cssDeclarations.js +290 -0
- package/dist/src/vite/cssImports.d.ts +14 -0
- package/dist/src/vite/cssImports.js +48 -0
- package/dist/src/vite/cssReferences.d.ts +54 -0
- package/dist/src/vite/cssReferences.js +157 -0
- package/dist/src/vite/cssTokenValues.d.ts +50 -0
- package/dist/src/vite/cssTokenValues.js +233 -0
- package/dist/src/vite/designTokens.d.ts +24 -0
- package/dist/src/vite/designTokens.js +5 -1
- package/dist/src/vite/docsExtractor.d.ts +9 -3
- package/dist/src/vite/docsExtractor.js +11 -3
- package/dist/src/vite/docsProgram.d.ts +17 -4
- package/dist/src/vite/docsProgram.js +52 -11
- package/dist/src/vite/docsWorker.js +7 -2
- package/dist/src/vite/emptyStoryGlobs.d.ts +41 -0
- package/dist/src/vite/emptyStoryGlobs.js +52 -0
- package/dist/src/vite/fileImports.d.ts +17 -0
- package/dist/src/vite/fileImports.js +57 -0
- package/dist/src/vite/findComponent.d.ts +10 -2
- package/dist/src/vite/findComponent.js +27 -22
- package/dist/src/vite/findRoute.js +3 -2
- package/dist/src/vite/forcedStates.d.ts +9 -2
- package/dist/src/vite/forcedStates.js +12 -3
- package/dist/src/vite/forgebookPlugin.d.ts +2 -0
- package/dist/src/vite/forgebookPlugin.js +55 -73
- package/dist/src/vite/frameErrors.d.ts +19 -0
- package/dist/src/vite/frameErrors.js +70 -0
- package/dist/src/vite/framesServer.d.ts +12 -0
- package/dist/src/vite/framesServer.js +21 -4
- package/dist/src/vite/functionComponentDocs.js +81 -12
- package/dist/src/vite/generatedModules.js +4 -2
- package/dist/src/vite/gitChange.d.ts +38 -5
- package/dist/src/vite/gitChange.js +71 -11
- package/dist/src/vite/hiddenStoryFiles.d.ts +23 -0
- package/dist/src/vite/hiddenStoryFiles.js +107 -0
- package/dist/src/vite/hotSnippets.d.ts +38 -14
- package/dist/src/vite/hotSnippets.js +137 -39
- package/dist/src/vite/importedNames.d.ts +37 -0
- package/dist/src/vite/importedNames.js +138 -0
- package/dist/src/vite/indexFields.d.ts +6 -0
- package/dist/src/vite/indexFields.js +21 -0
- package/dist/src/vite/indexStoryFile.d.ts +8 -1
- package/dist/src/vite/indexStoryFile.js +22 -157
- package/dist/src/vite/jsxCallSites.d.ts +33 -0
- package/dist/src/vite/jsxCallSites.js +200 -0
- package/dist/src/vite/jsxInScripts.d.ts +67 -0
- package/dist/src/vite/jsxInScripts.js +138 -0
- package/dist/src/vite/jsxTree.d.ts +20 -0
- package/dist/src/vite/jsxTree.js +163 -0
- package/dist/src/vite/lineAndColumn.d.ts +13 -0
- package/dist/src/vite/lineAndColumn.js +18 -0
- package/dist/src/vite/lookAlikes.d.ts +65 -0
- package/dist/src/vite/lookAlikes.js +228 -0
- package/dist/src/vite/nearestToken.d.ts +17 -0
- package/dist/src/vite/nearestToken.js +9 -2
- package/dist/src/vite/packageEntries.d.ts +42 -0
- package/dist/src/vite/packageEntries.js +127 -0
- package/dist/src/vite/pages.d.ts +9 -1
- package/dist/src/vite/pages.js +119 -4
- package/dist/src/vite/pluginConfig.js +4 -0
- package/dist/src/vite/pluginIds.d.ts +2 -0
- package/dist/src/vite/pluginIds.js +5 -1
- package/dist/src/vite/pluginModules.d.ts +81 -11
- package/dist/src/vite/pluginModules.js +109 -21
- package/dist/src/vite/prebundled.d.ts +57 -15
- package/dist/src/vite/prebundled.js +80 -0
- package/dist/src/vite/previewTags.d.ts +25 -0
- package/dist/src/vite/previewTags.js +56 -0
- package/dist/src/vite/projectFiles.d.ts +54 -0
- package/dist/src/vite/projectFiles.js +116 -0
- package/dist/src/vite/projectPostcss.d.ts +70 -0
- package/dist/src/vite/projectPostcss.js +250 -0
- package/dist/src/vite/propDocs.d.ts +12 -0
- package/dist/src/vite/propDocs.js +187 -60
- package/dist/src/vite/propKind.d.ts +40 -0
- package/dist/src/vite/propKind.js +71 -0
- package/dist/src/vite/propTypeNotes.d.ts +22 -0
- package/dist/src/vite/propTypeNotes.js +51 -0
- package/dist/src/vite/publishedExports.d.ts +27 -0
- package/dist/src/vite/publishedExports.js +298 -0
- package/dist/src/vite/realFolder.d.ts +6 -0
- package/dist/src/vite/realFolder.js +25 -0
- package/dist/src/vite/refsConfig.d.ts +39 -0
- package/dist/src/vite/refsConfig.js +54 -0
- package/dist/src/vite/reuseCheck.d.ts +45 -0
- package/dist/src/vite/reuseCheck.js +260 -0
- package/dist/src/vite/runningVersions.d.ts +33 -0
- package/dist/src/vite/runningVersions.js +25 -0
- package/dist/src/vite/scriptProblems.d.ts +60 -0
- package/dist/src/vite/scriptProblems.js +155 -0
- package/dist/src/vite/searchModule.js +3 -2
- package/dist/src/vite/searchRoute.js +4 -2
- package/dist/src/vite/shapeDocs.d.ts +36 -0
- package/dist/src/vite/shapeDocs.js +177 -0
- package/dist/src/vite/singleFileComponent.d.ts +17 -0
- package/dist/src/vite/singleFileComponent.js +83 -0
- package/dist/src/vite/sourceText.d.ts +34 -0
- package/dist/src/vite/sourceText.js +72 -0
- package/dist/src/vite/sourceTokens.d.ts +7 -0
- package/dist/src/vite/sourceTokens.js +7 -2
- package/dist/src/vite/stackLines.d.ts +49 -0
- package/dist/src/vite/stackLines.js +96 -0
- package/dist/src/vite/storyCode.d.ts +22 -7
- package/dist/src/vite/storyCode.js +263 -37
- package/dist/src/vite/storyCoverage.d.ts +48 -0
- package/dist/src/vite/storyCoverage.js +179 -0
- package/dist/src/vite/storyFilesModule.d.ts +48 -3
- package/dist/src/vite/storyFilesModule.js +105 -15
- package/dist/src/vite/storyPatterns.d.ts +31 -0
- package/dist/src/vite/storyPatterns.js +140 -5
- package/dist/src/vite/storyReach.d.ts +10 -2
- package/dist/src/vite/storyReach.js +15 -11
- package/dist/src/vite/storyTopLevel.d.ts +51 -0
- package/dist/src/vite/storyTopLevel.js +146 -0
- package/dist/src/vite/storylessRoutes.d.ts +4 -3
- package/dist/src/vite/storylessRoutes.js +210 -19
- package/dist/src/vite/switchValuesCheck.d.ts +19 -0
- package/dist/src/vite/switchValuesCheck.js +164 -0
- package/dist/src/vite/switchesDocument.d.ts +15 -0
- package/dist/src/vite/switchesDocument.js +47 -0
- package/dist/src/vite/tailwindConfigTokens.d.ts +41 -0
- package/dist/src/vite/tailwindConfigTokens.js +306 -0
- package/dist/src/vite/textImports.d.ts +15 -0
- package/dist/src/vite/textImports.js +58 -0
- package/dist/src/vite/textModules.d.ts +6 -5
- package/dist/src/vite/textModules.js +13 -8
- package/dist/src/vite/tokenAnswers.d.ts +6 -2
- package/dist/src/vite/tokenAnswers.js +11 -7
- package/dist/src/vite/typeParameters.d.ts +83 -0
- package/dist/src/vite/typeParameters.js +270 -0
- package/dist/src/vite/typedControls.d.ts +31 -0
- package/dist/src/vite/typedControls.js +66 -0
- package/dist/src/vite/unionProps.d.ts +37 -0
- package/dist/src/vite/unionProps.js +121 -0
- package/dist/src/vite/unresolvedTokens.d.ts +20 -0
- package/dist/src/vite/unresolvedTokens.js +193 -0
- package/dist/src/vite/usageGraph.js +10 -52
- package/dist/src/vite/usageGuidance.d.ts +9 -2
- package/dist/src/vite/usageGuidance.js +36 -8
- package/dist/src/vite/usageImports.d.ts +35 -0
- package/dist/src/vite/usageImports.js +280 -0
- package/dist/src/vite/visibilityRoute.d.ts +16 -0
- package/dist/src/vite/visibilityRoute.js +320 -0
- package/dist/src/worstCase.d.ts +2 -0
- package/dist/src/worstCase.js +2 -0
- package/package.json +28 -8
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* @module
|
|
10
10
|
*/
|
|
11
11
|
import { APPEARANCES } from "../catalogue.js";
|
|
12
|
-
import { switchValueOf, switchWithRole } from "../switches.js";
|
|
12
|
+
import { shownSwitches, switchValueOf, switchWithRole } from "../switches.js";
|
|
13
13
|
/**
|
|
14
14
|
* Whether the shell draws in its dark palette.
|
|
15
15
|
*
|
|
@@ -21,7 +21,7 @@ export const shellIsDark = ({ appearance, values, switches, isSystemDark, isComp
|
|
|
21
21
|
const scheme = switchWithRole(switches, "colorScheme");
|
|
22
22
|
if (appearance === "system" || isComparing || scheme === undefined)
|
|
23
23
|
return isSystemDark;
|
|
24
|
-
const shown = switchValueOf(scheme, values[scheme.id]
|
|
24
|
+
const shown = switchValueOf(scheme, shownSwitches(values, switches)[scheme.id])?.scheme;
|
|
25
25
|
return shown === undefined || shown === "system" ? isSystemDark : shown === "dark";
|
|
26
26
|
};
|
|
27
27
|
/**
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
@layer catalogue {
|
|
2
|
+
.forgebook-keys {
|
|
3
|
+
box-sizing: border-box;
|
|
4
|
+
width: min(28rem, 100vw - 2rem);
|
|
5
|
+
max-height: calc(100dvh - 2rem);
|
|
6
|
+
padding: 0.875rem;
|
|
7
|
+
border: 0;
|
|
8
|
+
border-radius: var(--forgebook-radius-card);
|
|
9
|
+
background: var(--forgebook-surface);
|
|
10
|
+
box-shadow: 0 0 0 1px var(--forgebook-edge), 0 18px 48px var(--forgebook-shadow-deep), 0 4px 12px var(--forgebook-shadow-lift);
|
|
11
|
+
color: var(--forgebook-text);
|
|
12
|
+
overflow-y: auto;
|
|
13
|
+
}
|
|
14
|
+
.forgebook-keys::backdrop {
|
|
15
|
+
background: rgba(0, 0, 0, 0.4);
|
|
16
|
+
}
|
|
17
|
+
.forgebook-keys__title {
|
|
18
|
+
margin: 0 0 0.375rem;
|
|
19
|
+
font: var(--forgebook-text-row-compact);
|
|
20
|
+
font-weight: 600;
|
|
21
|
+
}
|
|
22
|
+
.forgebook-keys__note {
|
|
23
|
+
display: block;
|
|
24
|
+
margin: 0;
|
|
25
|
+
font: var(--forgebook-text-row-compact);
|
|
26
|
+
color: var(--forgebook-text-secondary);
|
|
27
|
+
}
|
|
28
|
+
.forgebook-keys__list {
|
|
29
|
+
margin: 0.75rem 0;
|
|
30
|
+
}
|
|
31
|
+
.forgebook-keys__row {
|
|
32
|
+
display: flex;
|
|
33
|
+
gap: 0.75rem;
|
|
34
|
+
align-items: baseline;
|
|
35
|
+
padding-block: 0.25rem;
|
|
36
|
+
font: var(--forgebook-text-row-compact);
|
|
37
|
+
}
|
|
38
|
+
.forgebook-keys__row dt {
|
|
39
|
+
display: flex;
|
|
40
|
+
flex: none;
|
|
41
|
+
gap: 0.25rem;
|
|
42
|
+
width: 6rem;
|
|
43
|
+
}
|
|
44
|
+
.forgebook-keys__row dd {
|
|
45
|
+
margin: 0;
|
|
46
|
+
}
|
|
47
|
+
.forgebook-keys__key {
|
|
48
|
+
padding: 0 0.25rem;
|
|
49
|
+
border-radius: var(--forgebook-radius-control);
|
|
50
|
+
background: var(--forgebook-fill);
|
|
51
|
+
font: inherit;
|
|
52
|
+
}
|
|
53
|
+
.forgebook-keys__switch {
|
|
54
|
+
display: flex;
|
|
55
|
+
gap: 0.375rem;
|
|
56
|
+
align-items: flex-start;
|
|
57
|
+
font: var(--forgebook-text-row-compact);
|
|
58
|
+
}
|
|
59
|
+
.forgebook-keys__foot {
|
|
60
|
+
display: flex;
|
|
61
|
+
justify-content: flex-end;
|
|
62
|
+
margin-top: 0.75rem;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The stage's reading of a story's args: the values shown once the panel's are over the story's own, a change of one
|
|
3
|
+
* value, and what an embed of the story keeps of them.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* What the panel leaves without a value (`UnsetArg`) is no value from here on: only the address and the frames need to say
|
|
7
|
+
* so. The tab and the code read what the story receives.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import { type ArgValue, type PanelArgs } from "../messages.ts";
|
|
12
|
+
import type { TreeStory } from "../storyTree.ts";
|
|
13
|
+
import type { ViewSwitch } from "../switches.ts";
|
|
14
|
+
import { type ViewState } from "../viewState.ts";
|
|
15
|
+
/** The stage's values. */
|
|
16
|
+
export type PanelValues = {
|
|
17
|
+
/** The values shown: the story's own, with the panel's over them. */
|
|
18
|
+
readonly values: PanelArgs;
|
|
19
|
+
/** Sets one value: `undefined` takes the panel's away, `UNSET_ARG` leaves the prop with none. */
|
|
20
|
+
readonly change: (name: string, value: ArgValue | undefined) => void;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* The stage's values.
|
|
24
|
+
*
|
|
25
|
+
* @param accepted - the panel's values, once checked.
|
|
26
|
+
* @param own - the story's own args.
|
|
27
|
+
* @param onChange - sets the panel's values.
|
|
28
|
+
*/
|
|
29
|
+
export declare const usePanelValues: (accepted: PanelArgs, own: PanelArgs, onChange: (args: PanelArgs) => void) => PanelValues;
|
|
30
|
+
/**
|
|
31
|
+
* Whether a story's args change what it draws: not for a story of fixed examples, nor for one about logic, whose scene
|
|
32
|
+
* takes none.
|
|
33
|
+
*
|
|
34
|
+
* @param story - the story.
|
|
35
|
+
*/
|
|
36
|
+
export declare const takesArgs: (story: Pick<TreeStory, "isLogic" | "controls">) => boolean;
|
|
37
|
+
/**
|
|
38
|
+
* What an embed of the story keeps of the page: its view and the values set in the panel. An embed draws no device
|
|
39
|
+
* frame, so the device chosen is left out: the embed is the story at the width its iframe gives it.
|
|
40
|
+
*
|
|
41
|
+
* @param view - the reader's view, without what the story fixes, which the story fixes again.
|
|
42
|
+
* @param panelArgs - the values set in the panel, once checked: typed, and only those the story takes.
|
|
43
|
+
* @param switches - the catalogue's switches.
|
|
44
|
+
*/
|
|
45
|
+
export declare const embedQuery: (view: ViewState, panelArgs: PanelArgs, switches: readonly ViewSwitch[]) => string;
|
|
46
|
+
/**
|
|
47
|
+
* The height an embed's iframe starts at: as tall as the frame is on the stage.
|
|
48
|
+
*
|
|
49
|
+
* @param view - the view, with the height set on the stage.
|
|
50
|
+
* @param contentHeight - the story's content, in CSS px.
|
|
51
|
+
* @param story - the story, with the height its scene declares.
|
|
52
|
+
*/
|
|
53
|
+
export declare const embedHeight: (view: ViewState, contentHeight: number, story: Pick<TreeStory, "height">) => number;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The stage's reading of a story's args: the values shown once the panel's are over the story's own, a change of one
|
|
3
|
+
* value, and what an embed of the story keeps of them.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* What the panel leaves without a value (`UnsetArg`) is no value from here on: only the address and the frames need to say
|
|
7
|
+
* so. The tab and the code read what the story receives.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import { isUnsetArg, panelArgsParam } from "../messages.js";
|
|
12
|
+
import { viewParams } from "../viewState.js";
|
|
13
|
+
/**
|
|
14
|
+
* The stage's values.
|
|
15
|
+
*
|
|
16
|
+
* @param accepted - the panel's values, once checked.
|
|
17
|
+
* @param own - the story's own args.
|
|
18
|
+
* @param onChange - sets the panel's values.
|
|
19
|
+
*/
|
|
20
|
+
export const usePanelValues = (accepted, own, onChange) => {
|
|
21
|
+
return {
|
|
22
|
+
values: Object.fromEntries(Object.entries({ ...own, ...accepted }).filter(([, value]) => !isUnsetArg(value))),
|
|
23
|
+
// a change starts from the values the story takes: one the address named and the story does not is let go
|
|
24
|
+
change: (name, value) => {
|
|
25
|
+
const { [name]: _removed, ...rest } = accepted;
|
|
26
|
+
// a prop the story gives nothing has no value already, and the address stays short for it
|
|
27
|
+
const isNothing = value === undefined || (isUnsetArg(value) && own[name] === undefined);
|
|
28
|
+
onChange(isNothing ? rest : { ...rest, [name]: value });
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Whether a story's args change what it draws: not for a story of fixed examples, nor for one about logic, whose scene
|
|
34
|
+
* takes none.
|
|
35
|
+
*
|
|
36
|
+
* @param story - the story.
|
|
37
|
+
*/
|
|
38
|
+
export const takesArgs = (story) => !story.isLogic && (story.controls === "all" || story.controls.length > 0);
|
|
39
|
+
/**
|
|
40
|
+
* What an embed of the story keeps of the page: its view and the values set in the panel. An embed draws no device
|
|
41
|
+
* frame, so the device chosen is left out: the embed is the story at the width its iframe gives it.
|
|
42
|
+
*
|
|
43
|
+
* @param view - the reader's view, without what the story fixes, which the story fixes again.
|
|
44
|
+
* @param panelArgs - the values set in the panel, once checked: typed, and only those the story takes.
|
|
45
|
+
* @param switches - the catalogue's switches.
|
|
46
|
+
*/
|
|
47
|
+
export const embedQuery = (view, panelArgs, switches) => {
|
|
48
|
+
const params = viewParams({ ...view, device: "auto", orientation: "auto" }, switches);
|
|
49
|
+
// said out loud: an embed has no switch to turn on what its catalogue's readers start without
|
|
50
|
+
if (view.play === "on")
|
|
51
|
+
params.set("play", "on");
|
|
52
|
+
const args = panelArgsParam(panelArgs);
|
|
53
|
+
if (args !== "")
|
|
54
|
+
params.set("args", args);
|
|
55
|
+
return params.toString();
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* The height an embed's iframe starts at: as tall as the frame is on the stage.
|
|
59
|
+
*
|
|
60
|
+
* @param view - the view, with the height set on the stage.
|
|
61
|
+
* @param contentHeight - the story's content, in CSS px.
|
|
62
|
+
* @param story - the story, with the height its scene declares.
|
|
63
|
+
*/
|
|
64
|
+
export const embedHeight = (view, contentHeight, story) => (view.height === "auto" ? Math.max(contentHeight, story.height ?? 0) : view.height);
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
@layer catalogue {
|
|
2
|
+
.forgebook-status-badges {
|
|
3
|
+
display: inline-flex;
|
|
4
|
+
flex: none;
|
|
5
|
+
align-items: center;
|
|
6
|
+
gap: 0.25rem;
|
|
7
|
+
min-width: 0;
|
|
8
|
+
}
|
|
9
|
+
.forgebook-status {
|
|
10
|
+
--forgebook-status-tone: var(--forgebook-text-secondary);
|
|
11
|
+
display: inline-block;
|
|
12
|
+
max-width: 7rem;
|
|
13
|
+
padding: 0 0.375rem;
|
|
14
|
+
overflow: hidden;
|
|
15
|
+
border-radius: 999px;
|
|
16
|
+
box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--forgebook-status-tone) 45%, transparent);
|
|
17
|
+
background: color-mix(in srgb, var(--forgebook-status-tone) 9%, transparent);
|
|
18
|
+
font: var(--forgebook-text-caption);
|
|
19
|
+
font-weight: 500;
|
|
20
|
+
color: var(--forgebook-status-tone);
|
|
21
|
+
white-space: nowrap;
|
|
22
|
+
text-overflow: ellipsis;
|
|
23
|
+
}
|
|
24
|
+
.forgebook-status[data-tone=info] {
|
|
25
|
+
--forgebook-status-tone: var(--forgebook-accent-text);
|
|
26
|
+
}
|
|
27
|
+
.forgebook-status[data-tone=positive] {
|
|
28
|
+
--forgebook-status-tone: var(--forgebook-positive-text);
|
|
29
|
+
}
|
|
30
|
+
.forgebook-status[data-tone=caution] {
|
|
31
|
+
--forgebook-status-tone: var(--forgebook-caution-text);
|
|
32
|
+
}
|
|
33
|
+
.forgebook-status[data-tone=critical] {
|
|
34
|
+
--forgebook-status-tone: var(--forgebook-danger-text);
|
|
35
|
+
}
|
|
36
|
+
.forgebook-status-badges--page {
|
|
37
|
+
display: flex;
|
|
38
|
+
flex-wrap: wrap;
|
|
39
|
+
}
|
|
40
|
+
.forgebook-status-badges--page .forgebook-status {
|
|
41
|
+
max-width: none;
|
|
42
|
+
line-height: 1.6;
|
|
43
|
+
}
|
|
44
|
+
.forgebook-status-badges--story {
|
|
45
|
+
margin-inline-start: 0.5rem;
|
|
46
|
+
vertical-align: middle;
|
|
47
|
+
}
|
|
48
|
+
.forgebook-tag-filter__name .forgebook-status {
|
|
49
|
+
vertical-align: middle;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
@@ -20,7 +20,6 @@ declare const shellStrings: {
|
|
|
20
20
|
searchPlaceholder: string;
|
|
21
21
|
searchLabel: string;
|
|
22
22
|
componentsNav: string;
|
|
23
|
-
docsNav: string;
|
|
24
23
|
sidebarWidth: string;
|
|
25
24
|
hideSidebar: string;
|
|
26
25
|
showSidebar: string;
|
|
@@ -37,7 +36,6 @@ declare const shellStrings: {
|
|
|
37
36
|
compareError: string;
|
|
38
37
|
controlChanged: (control: string) => string;
|
|
39
38
|
cycleKey: (control: string, key: string) => string;
|
|
40
|
-
aboutControl: (control: string) => string;
|
|
41
39
|
backdrop: string;
|
|
42
40
|
backdropPlain: string;
|
|
43
41
|
sheets: string;
|
|
@@ -48,10 +46,6 @@ declare const shellStrings: {
|
|
|
48
46
|
};
|
|
49
47
|
text: string;
|
|
50
48
|
textScale: (scale: TextScale) => string;
|
|
51
|
-
controlMenu: (label: string) => string;
|
|
52
|
-
unpinControl: string;
|
|
53
|
-
hideInView: string;
|
|
54
|
-
showInView: string;
|
|
55
49
|
compare: string;
|
|
56
50
|
compareOff: string;
|
|
57
51
|
compareText: string;
|
|
@@ -65,6 +59,7 @@ declare const shellStrings: {
|
|
|
65
59
|
embedFailed: string;
|
|
66
60
|
embedPanelFailed: string;
|
|
67
61
|
clearSearch: string;
|
|
62
|
+
keys: string;
|
|
68
63
|
fromTexts: string;
|
|
69
64
|
backToText: string;
|
|
70
65
|
widthTyped: string;
|
|
@@ -106,13 +101,11 @@ declare const shellStrings: {
|
|
|
106
101
|
openInFigma: string;
|
|
107
102
|
logic: string;
|
|
108
103
|
logicHint: string;
|
|
109
|
-
signatureParameter: string;
|
|
110
|
-
signatureReturns: string;
|
|
111
|
-
signatureNone: string;
|
|
112
104
|
playStatus: {
|
|
113
105
|
running: string;
|
|
114
106
|
passed: string;
|
|
115
107
|
failed: string;
|
|
108
|
+
off: string;
|
|
116
109
|
};
|
|
117
110
|
fixedExamples: string;
|
|
118
111
|
allProps: string;
|
|
@@ -129,8 +122,6 @@ declare const shellStrings: {
|
|
|
129
122
|
a11yCount: (count: number) => string;
|
|
130
123
|
replay: string;
|
|
131
124
|
loadingStory: string;
|
|
132
|
-
apiType: string;
|
|
133
|
-
apiWhat: string;
|
|
134
125
|
propCount: (count: number) => string;
|
|
135
126
|
audience: string;
|
|
136
127
|
audiences: {
|
|
@@ -147,18 +138,18 @@ declare const shellStrings: {
|
|
|
147
138
|
unknownPage: (id: string) => string;
|
|
148
139
|
unknownComponent: (id: string) => string;
|
|
149
140
|
props: string;
|
|
150
|
-
propGroups: {
|
|
151
|
-
choice: string;
|
|
152
|
-
text: string;
|
|
153
|
-
toggle: string;
|
|
154
|
-
};
|
|
155
141
|
otherProps: string;
|
|
156
142
|
unset: string;
|
|
143
|
+
unsetProp: (prop: string) => string;
|
|
144
|
+
resetProp: (prop: string) => string;
|
|
145
|
+
stateUnset: string;
|
|
146
|
+
stateEmpty: string;
|
|
157
147
|
unsetDefault: (value: string) => string;
|
|
158
148
|
defaultIs: string;
|
|
159
149
|
pickColor: (prop: string) => string;
|
|
160
150
|
rangeValue: (prop: string) => string;
|
|
161
151
|
setByStory: string;
|
|
152
|
+
setBy: string;
|
|
162
153
|
required: string;
|
|
163
154
|
requiredFirst: string;
|
|
164
155
|
requiredFirstHint: string;
|
|
@@ -4,7 +4,6 @@ const shellStrings = {
|
|
|
4
4
|
searchPlaceholder: "Search",
|
|
5
5
|
searchLabel: "Search components, stories, props and docs",
|
|
6
6
|
componentsNav: "Components",
|
|
7
|
-
docsNav: "Docs",
|
|
8
7
|
sidebarWidth: "Sidebar width",
|
|
9
8
|
hideSidebar: "Hide the sidebar",
|
|
10
9
|
showSidebar: "Show the sidebar",
|
|
@@ -21,17 +20,12 @@ const shellStrings = {
|
|
|
21
20
|
compareError: "The comparison could not be loaded",
|
|
22
21
|
controlChanged: (control) => `${control}: changed`,
|
|
23
22
|
cycleKey: (control, key) => `${control}: press ${key} for the next value, Shift+${key} for the one before`,
|
|
24
|
-
aboutControl: (control) => `About ${control}`,
|
|
25
23
|
backdrop: "Background",
|
|
26
24
|
backdropPlain: "Plain",
|
|
27
25
|
sheets: "Styles",
|
|
28
26
|
sheetChoices: { full: "Full", structure: "Structure only", restyled: "Restyled" },
|
|
29
27
|
text: "Text",
|
|
30
28
|
textScale: (scale) => `${scale}%`,
|
|
31
|
-
controlMenu: (label) => `${label} on the toolbar`,
|
|
32
|
-
unpinControl: "Remove from the toolbar",
|
|
33
|
-
hideInView: "Hide in View",
|
|
34
|
-
showInView: "Show in View",
|
|
35
29
|
compare: "Compare",
|
|
36
30
|
compareOff: "Off",
|
|
37
31
|
compareText: "Text sizes",
|
|
@@ -45,6 +39,7 @@ const shellStrings = {
|
|
|
45
39
|
embedFailed: "This story could not be shown.",
|
|
46
40
|
embedPanelFailed: "This could not load: reload the page to try again.",
|
|
47
41
|
clearSearch: "Clear the search",
|
|
42
|
+
keys: "Keyboard keys",
|
|
48
43
|
fromTexts: "From the story's texts:",
|
|
49
44
|
backToText: "Back to the text",
|
|
50
45
|
widthTyped: "Width in px",
|
|
@@ -86,10 +81,7 @@ const shellStrings = {
|
|
|
86
81
|
openInFigma: "Open in Figma",
|
|
87
82
|
logic: "Logic",
|
|
88
83
|
logicHint: "About logic, not looks: a scene that uses the hook or the function",
|
|
89
|
-
|
|
90
|
-
signatureReturns: "Returns",
|
|
91
|
-
signatureNone: "It takes no parameters.",
|
|
92
|
-
playStatus: { running: "running", passed: "passed", failed: "failed" },
|
|
84
|
+
playStatus: { running: "running", passed: "passed", failed: "failed", off: "not run" },
|
|
93
85
|
fixedExamples: "This story draws fixed examples: its props are not set from here. Every prop, for reading:",
|
|
94
86
|
allProps: "Props",
|
|
95
87
|
openFrame: "Open in a new tab",
|
|
@@ -105,8 +97,6 @@ const shellStrings = {
|
|
|
105
97
|
a11yCount: (count) => `${count} ${count === 1 ? "problem" : "problems"}`,
|
|
106
98
|
replay: "Replay",
|
|
107
99
|
loadingStory: "Loading the story…",
|
|
108
|
-
apiType: "Type",
|
|
109
|
-
apiWhat: "What it does",
|
|
110
100
|
propCount: (count) => `${count} ${count === 1 ? "prop" : "props"}`,
|
|
111
101
|
audience: "Reading for",
|
|
112
102
|
audiences: { everyone: "Everyone", designer: "Designers", coder: "Coders", tester: "Testers" },
|
|
@@ -118,20 +108,25 @@ const shellStrings = {
|
|
|
118
108
|
unknownPage: (id) => `No page "${id}": it may have been renamed. Pick one in the sidebar.`,
|
|
119
109
|
unknownComponent: (id) => `No component "${id}": it may have been renamed. Pick one in the sidebar.`,
|
|
120
110
|
props: "Props",
|
|
121
|
-
propGroups: { choice: "Choices", text: "Text and numbers", toggle: "Toggles" },
|
|
122
111
|
otherProps: "Other props",
|
|
123
112
|
unset: "—",
|
|
113
|
+
unsetProp: (prop) => `${prop}: leave without a value`,
|
|
114
|
+
resetProp: (prop) => `${prop}: back to the story's value`,
|
|
115
|
+
stateUnset: "no value",
|
|
116
|
+
stateEmpty: "empty text",
|
|
124
117
|
unsetDefault: (value) => `— (${value})`,
|
|
125
118
|
defaultIs: "Default:",
|
|
126
119
|
pickColor: (prop) => `${prop}: pick a colour`,
|
|
127
120
|
rangeValue: (prop) => `${prop}: value`,
|
|
128
121
|
setByStory: "Set by the story",
|
|
122
|
+
setBy: "Set by {value}",
|
|
129
123
|
required: "Required",
|
|
130
124
|
requiredFirst: "Required first",
|
|
131
125
|
requiredFirstHint: "Every component's required props before the others; kept in this browser",
|
|
132
126
|
resetArgs: "Reset",
|
|
133
|
-
|
|
134
|
-
|
|
127
|
+
// not "Appearance": a catalogue's own switch may bear that name, and this one colours the catalogue, never the story
|
|
128
|
+
appearance: "Interface",
|
|
129
|
+
appearanceOf: (name) => `${STRINGS.appearance}: ${name}`,
|
|
135
130
|
appearances: { light: "Light", dark: "Dark", system: "System", story: "Follow the story" },
|
|
136
131
|
worstCase: "Worst case",
|
|
137
132
|
worstCaseHint: "Long texts with a word too long to break, huge numbers: the elements that spill are outlined",
|
|
@@ -146,9 +141,9 @@ const shellStrings = {
|
|
|
146
141
|
docsLoading: "Reading the component…",
|
|
147
142
|
tabLoading: "Loading the tab…",
|
|
148
143
|
tabError: "The tab could not be loaded",
|
|
149
|
-
pageLoadError: "The page could not be loaded",
|
|
144
|
+
pageLoadError: "The page could not be loaded: reload the page to try again",
|
|
150
145
|
docsError: "The component could not be read",
|
|
151
|
-
indexProblems: "Some story files could not be placed"
|
|
146
|
+
indexProblems: "Some story files could not be read or placed"
|
|
152
147
|
};
|
|
153
148
|
/** The shell's texts, as shown. */
|
|
154
149
|
export const STRINGS = shellStrings;
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
@layer catalogue {
|
|
2
|
+
.forgebook-gallery {
|
|
3
|
+
position: fixed;
|
|
4
|
+
inset: auto;
|
|
5
|
+
box-sizing: border-box;
|
|
6
|
+
width: min(24rem, 100vw - 0.75rem);
|
|
7
|
+
max-height: min(32rem, 100vh - 0.75rem);
|
|
8
|
+
margin: 0;
|
|
9
|
+
padding: 0.5rem;
|
|
10
|
+
overflow: auto;
|
|
11
|
+
border: 0;
|
|
12
|
+
border-radius: var(--forgebook-radius-card);
|
|
13
|
+
background: var(--forgebook-surface);
|
|
14
|
+
box-shadow: 0 0 0 1px var(--forgebook-edge), 0 18px 48px var(--forgebook-shadow-deep), 0 4px 12px var(--forgebook-shadow-lift);
|
|
15
|
+
color: var(--forgebook-text);
|
|
16
|
+
white-space: normal;
|
|
17
|
+
}
|
|
18
|
+
.forgebook-gallery__grid {
|
|
19
|
+
display: grid;
|
|
20
|
+
grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr));
|
|
21
|
+
gap: 0.25rem;
|
|
22
|
+
margin: 0;
|
|
23
|
+
padding: 0;
|
|
24
|
+
border: 0;
|
|
25
|
+
}
|
|
26
|
+
.forgebook-gallery__item {
|
|
27
|
+
position: relative;
|
|
28
|
+
display: grid;
|
|
29
|
+
gap: 0.25rem;
|
|
30
|
+
padding: 0.25rem;
|
|
31
|
+
border-radius: var(--forgebook-radius-control);
|
|
32
|
+
cursor: pointer;
|
|
33
|
+
}
|
|
34
|
+
.forgebook-gallery__item:hover {
|
|
35
|
+
background: var(--forgebook-hover);
|
|
36
|
+
}
|
|
37
|
+
.forgebook-gallery__item:has(input:checked) .forgebook-gallery__preview {
|
|
38
|
+
box-shadow: 0 0 0 2px var(--forgebook-accent);
|
|
39
|
+
}
|
|
40
|
+
.forgebook-gallery__item:has(input:focus-visible) {
|
|
41
|
+
outline: 2px solid var(--forgebook-accent);
|
|
42
|
+
outline-offset: 1px;
|
|
43
|
+
}
|
|
44
|
+
.forgebook-gallery__preview {
|
|
45
|
+
display: flex;
|
|
46
|
+
flex-direction: column;
|
|
47
|
+
justify-content: space-between;
|
|
48
|
+
box-sizing: border-box;
|
|
49
|
+
aspect-ratio: 16/9;
|
|
50
|
+
gap: 0.25rem;
|
|
51
|
+
padding: 0.5rem;
|
|
52
|
+
overflow: hidden;
|
|
53
|
+
border-radius: var(--forgebook-radius-control-small);
|
|
54
|
+
background: var(--forgebook-hover);
|
|
55
|
+
box-shadow: inset 0 0 0 1px var(--forgebook-edge);
|
|
56
|
+
}
|
|
57
|
+
.forgebook-gallery__preview:has(.forgebook-gallery__image) {
|
|
58
|
+
padding: 0;
|
|
59
|
+
}
|
|
60
|
+
.forgebook-gallery__image {
|
|
61
|
+
display: block;
|
|
62
|
+
width: 100%;
|
|
63
|
+
height: 100%;
|
|
64
|
+
object-fit: cover;
|
|
65
|
+
}
|
|
66
|
+
.forgebook-gallery__swatches {
|
|
67
|
+
display: flex;
|
|
68
|
+
flex: 1;
|
|
69
|
+
min-height: 0;
|
|
70
|
+
overflow: hidden;
|
|
71
|
+
border-radius: var(--forgebook-radius-control-small);
|
|
72
|
+
box-shadow: inset 0 0 0 1px var(--forgebook-edge);
|
|
73
|
+
}
|
|
74
|
+
.forgebook-gallery__swatches span {
|
|
75
|
+
flex: 1;
|
|
76
|
+
}
|
|
77
|
+
.forgebook-gallery__font {
|
|
78
|
+
overflow: hidden;
|
|
79
|
+
font-size: 0.75rem;
|
|
80
|
+
line-height: 1.2;
|
|
81
|
+
color: var(--forgebook-text-secondary);
|
|
82
|
+
text-overflow: ellipsis;
|
|
83
|
+
white-space: nowrap;
|
|
84
|
+
}
|
|
85
|
+
.forgebook-gallery__letter {
|
|
86
|
+
margin: auto;
|
|
87
|
+
font-size: 1.5rem;
|
|
88
|
+
line-height: 1;
|
|
89
|
+
color: var(--forgebook-text-tertiary);
|
|
90
|
+
}
|
|
91
|
+
.forgebook-gallery__name {
|
|
92
|
+
display: flex;
|
|
93
|
+
align-items: center;
|
|
94
|
+
gap: 0.25rem;
|
|
95
|
+
min-height: 1rem;
|
|
96
|
+
font: var(--forgebook-text-control);
|
|
97
|
+
color: var(--forgebook-text);
|
|
98
|
+
overflow-wrap: anywhere;
|
|
99
|
+
}
|
|
100
|
+
.forgebook-gallery__name svg {
|
|
101
|
+
flex: none;
|
|
102
|
+
color: var(--forgebook-accent-text);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
@layer catalogue {
|
|
2
|
+
.forgebook-tag-filter {
|
|
3
|
+
flex: none;
|
|
4
|
+
}
|
|
5
|
+
.forgebook-tag-filter .forgebook-icon-button[data-on] {
|
|
6
|
+
width: auto;
|
|
7
|
+
min-width: 1.625rem;
|
|
8
|
+
padding-inline: 0.25rem;
|
|
9
|
+
color: var(--forgebook-accent-text);
|
|
10
|
+
}
|
|
11
|
+
.forgebook-tag-filter__count {
|
|
12
|
+
margin-inline-start: 0.125rem;
|
|
13
|
+
font: var(--forgebook-text-row-compact);
|
|
14
|
+
}
|
|
15
|
+
.forgebook-tag-filter__panel {
|
|
16
|
+
right: 0;
|
|
17
|
+
white-space: normal;
|
|
18
|
+
}
|
|
19
|
+
.forgebook-tag-filter__list {
|
|
20
|
+
margin: 0 0 0.375rem;
|
|
21
|
+
padding: 0;
|
|
22
|
+
max-height: 18rem;
|
|
23
|
+
overflow-y: auto;
|
|
24
|
+
list-style: none;
|
|
25
|
+
}
|
|
26
|
+
.forgebook-tag-filter__row {
|
|
27
|
+
display: flex;
|
|
28
|
+
align-items: center;
|
|
29
|
+
gap: 0.375rem;
|
|
30
|
+
}
|
|
31
|
+
.forgebook-tag-filter__tag {
|
|
32
|
+
display: flex;
|
|
33
|
+
flex: 1;
|
|
34
|
+
align-items: center;
|
|
35
|
+
gap: 0.375rem;
|
|
36
|
+
min-width: 0;
|
|
37
|
+
min-height: 1.75rem;
|
|
38
|
+
font: var(--forgebook-text-row-compact);
|
|
39
|
+
color: var(--forgebook-text);
|
|
40
|
+
}
|
|
41
|
+
.forgebook-tag-filter__name {
|
|
42
|
+
flex: 1;
|
|
43
|
+
min-width: 0;
|
|
44
|
+
overflow-wrap: anywhere;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where a story's tags draw something: the sidebar's tag filter, a status's badges in a component's entry and beside a
|
|
3
|
+
* page's title. Their code and styles load the first time one is drawn, which only a catalogue whose stories have tags
|
|
4
|
+
* does (`TagViews.tsx`).
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* A status is a tag (`storyStatuses.ts`), so a catalogue with no tags has neither filter nor badges, and its first
|
|
8
|
+
* load carries these few lines and not their code. Until it arrives nothing is drawn: each comes last on its row, so
|
|
9
|
+
* nothing beside it moves. A chunk gone after a new deployment leaves them out.
|
|
10
|
+
*
|
|
11
|
+
* @module
|
|
12
|
+
*/
|
|
13
|
+
import type { ReactNode } from "react";
|
|
14
|
+
import type { TagViewProps } from "./TagViews.tsx";
|
|
15
|
+
/**
|
|
16
|
+
* What the tags draw in one place, once its code is there.
|
|
17
|
+
*
|
|
18
|
+
* @param props - the place, and what it reads.
|
|
19
|
+
*/
|
|
20
|
+
export declare const TagViewSlot: (props: TagViewProps) => ReactNode;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { LazyView, lazyModule } from "./lazyModule.js";
|
|
3
|
+
/** What the tags draw, loaded on first use; not through `Suspense`, which would hold it back 300 ms (`lazyModule.tsx`). */
|
|
4
|
+
const TAG_VIEW = lazyModule(() => import("./TagViews.js").then((module) => module.TagView));
|
|
5
|
+
/**
|
|
6
|
+
* What the tags draw in one place, once its code is there.
|
|
7
|
+
*
|
|
8
|
+
* @param props - the place, and what it reads.
|
|
9
|
+
*/
|
|
10
|
+
export const TagViewSlot = (props) => (_jsx(LazyView, { module: TAG_VIEW, props: props, loading: null, failed: () => null }));
|
|
@@ -11,9 +11,12 @@
|
|
|
11
11
|
*/
|
|
12
12
|
import { type RefObject } from "react";
|
|
13
13
|
import { type AcceptedArgs, type ArgDeclaration, type DroppedArg } from "../addressArgs.ts";
|
|
14
|
+
import type { AddressLink } from "../addressArgsParam.ts";
|
|
14
15
|
import type { ComponentDocs } from "../componentDocs.ts";
|
|
15
16
|
import { type PanelArgs } from "../messages.ts";
|
|
16
17
|
import type { NamedValues } from "../namedValues.ts";
|
|
18
|
+
import type { LoadedChecks } from "./argChecks.ts";
|
|
19
|
+
import type { ArgControlLoaders } from "./customControls.ts";
|
|
17
20
|
import type { ReadyMessage } from "./useFrameMessages.ts";
|
|
18
21
|
import type { Loaded } from "./useLoaded.ts";
|
|
19
22
|
/** What the story's frame reported that the check reads: its own args, its `argTypes` and its controls. */
|
|
@@ -31,6 +34,8 @@ export declare const declarationOf: (docs: Loaded<ComponentDocs>, ready: ReadyDe
|
|
|
31
34
|
export type AddressArgsInput = {
|
|
32
35
|
/** The values the address names. */
|
|
33
36
|
readonly panelArgs: PanelArgs;
|
|
37
|
+
/** What else the address says of them: how to type them, and which could not be read. */
|
|
38
|
+
readonly link: AddressLink | undefined;
|
|
34
39
|
/** The component's docs. */
|
|
35
40
|
readonly docs: Loaded<ComponentDocs>;
|
|
36
41
|
/** The story's own args its frame reported; none before it is ready. */
|
|
@@ -41,6 +46,8 @@ export type AddressArgsInput = {
|
|
|
41
46
|
readonly controls: ReadyDeclaration["controls"];
|
|
42
47
|
/** The source's named values; none when it has none. */
|
|
43
48
|
readonly namedValues: NamedValues | undefined;
|
|
49
|
+
/** The catalogue's custom controls; none when it has none. */
|
|
50
|
+
readonly argControls: ArgControlLoaders | undefined;
|
|
44
51
|
/** The element that holds the story's frames, which hear each change of the checked values. */
|
|
45
52
|
readonly frames: RefObject<HTMLElement | null>;
|
|
46
53
|
};
|
|
@@ -62,6 +69,8 @@ export type AddressArgs = {
|
|
|
62
69
|
* updates after; none while the docs load.
|
|
63
70
|
*/
|
|
64
71
|
readonly acceptedFor: (ready: ReadyDeclaration) => AcceptedArgs | undefined;
|
|
72
|
+
/** Gives a prop with a shape its worst value, once a prop that needs the checks asked for them. */
|
|
73
|
+
readonly worstOfShape: LoadedChecks["worstOfShape"] | undefined;
|
|
65
74
|
};
|
|
66
75
|
/**
|
|
67
76
|
* The address's values, checked against what the story declares.
|