forgebook 0.3.3 → 0.4.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 +914 -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 +175 -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 +57 -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 +90 -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 +196 -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 +297 -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 +100 -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 +66 -184
- 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 +71 -0
- package/dist/src/componentDocs.js +15 -2
- 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/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 +7 -1
- package/dist/src/frame/mountFrame.js +153 -46
- 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/CodeTab.d.ts +3 -2
- package/dist/src/shell/CodeTab.js +3 -2
- 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 +1 -1
- package/dist/src/shell/ComponentPage.js +5 -1
- package/dist/src/shell/CustomControl.d.ts +34 -0
- package/dist/src/shell/CustomControl.js +132 -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 +16 -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/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 +23 -2
- package/dist/src/shell/PropRows.js +58 -19
- package/dist/src/shell/PropsTab.d.ts +12 -5
- package/dist/src/shell/PropsTab.js +9 -21
- 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 +137 -22
- 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/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 +55 -0
- package/dist/src/shell/customControls.js +70 -0
- package/dist/src/shell/docPage.css +22 -22
- package/dist/src/shell/dockTabs.d.ts +19 -3
- package/dist/src/shell/dockTabs.js +28 -20
- package/dist/src/shell/embed.css +7 -7
- 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 +29 -0
- package/dist/src/shell/laterStrings.js +42 -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 +348 -168
- 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/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/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 +147 -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 +85 -3
- package/dist/src/storyCheck.js +23 -1
- package/dist/src/storyCodeText.d.ts +46 -0
- package/dist/src/storyCodeText.js +27 -0
- package/dist/src/storyControls.d.ts +100 -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 +347 -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 +106 -65
- package/dist/src/vite/agentStatuses.d.ts +42 -0
- package/dist/src/vite/agentStatuses.js +67 -0
- package/dist/src/vite/agentStoryCode.d.ts +48 -0
- package/dist/src/vite/agentStoryCode.js +38 -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/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 +15 -3
- 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 +32 -1
- package/dist/src/vite/configFile.d.ts +14 -2
- package/dist/src/vite/configFile.js +124 -40
- package/dist/src/vite/configKeys.d.ts +15 -0
- package/dist/src/vite/configKeys.js +171 -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 +52 -72
- 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 +108 -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 +130 -58
- 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/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
|
@@ -1,34 +1,49 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The shell's keys: `/` goes to the search, `[` and `]` open the previous and the next story in the sidebar's order
|
|
3
|
-
* A key typed into a field, or with a modifier, is
|
|
2
|
+
* The shell's keys: `/` goes to the search, `[` and `]` open the previous and the next story in the sidebar's order,
|
|
3
|
+
* `?` lists them. A key typed into a field or a custom element, or with a modifier, is theirs or the browser's; a reader
|
|
4
|
+
* can turn every key without a modifier off.
|
|
4
5
|
*
|
|
5
6
|
* @remarks
|
|
6
7
|
* The keys work while the shell has the focus; a frame keeps its own keys, so a story's keyboard behaviour is never
|
|
7
|
-
* taken over. Pure, apart from reading the event's target.
|
|
8
|
+
* taken over. Pure, apart from reading the event's target and the reader's choice.
|
|
8
9
|
*
|
|
9
10
|
* @module
|
|
10
11
|
*/
|
|
12
|
+
import { readStored } from "./useStored.js";
|
|
13
|
+
/** Where this browser keeps the reader's choice: a person's habit, the same in every catalogue of an origin. */
|
|
14
|
+
export const SINGLE_KEYS_STORED = "forgebook-single-keys";
|
|
15
|
+
/** Whether the reader left the keys without a modifier on, as they are unless turned off. */
|
|
16
|
+
const areSingleKeysOn = () => readStored(SINGLE_KEYS_STORED) !== "off";
|
|
11
17
|
/** The inputs that take no text: a key pressed on one is the page's, not the field's. */
|
|
12
18
|
const NOT_TEXT_INPUTS = ["checkbox", "radio", "button", "submit", "reset", "range", "color", "file"];
|
|
13
19
|
/**
|
|
14
|
-
* Whether a key event happens while the user types: in a field that takes text, a select or editable content
|
|
15
|
-
*
|
|
20
|
+
* Whether a key event happens while the user types: in a field that takes text, a select or editable content, or in a
|
|
21
|
+
* custom element (a catalogue's control, a plugin's panel), whose keys are its own whatever it draws. A toolbar's segment
|
|
22
|
+
* (a radio) or a toggle keeps the page's keys, so they work right after a press on one.
|
|
16
23
|
*
|
|
17
24
|
* @param target - the event's target.
|
|
18
25
|
*/
|
|
19
26
|
export const isTyping = (target) => typeof HTMLElement !== "undefined" &&
|
|
20
27
|
target instanceof HTMLElement &&
|
|
21
28
|
(target.isContentEditable ||
|
|
29
|
+
target.localName.includes("-") ||
|
|
22
30
|
(target instanceof HTMLInputElement && !NOT_TEXT_INPUTS.includes(target.type)) ||
|
|
23
31
|
target instanceof HTMLTextAreaElement ||
|
|
24
32
|
target instanceof HTMLSelectElement);
|
|
33
|
+
/**
|
|
34
|
+
* Whether a key without a modifier is the shell's: the reader left them on and nothing is typed into. The whole path of
|
|
35
|
+
* the event is read: from inside a shadow root it names only the host, and a custom element keeps what is pressed in it.
|
|
36
|
+
*
|
|
37
|
+
* @param event - the key's event.
|
|
38
|
+
*/
|
|
39
|
+
export const isSingleKeyFree = (event) => areSingleKeysOn() && !(event.composedPath?.() ?? [event.target]).some(isTyping);
|
|
25
40
|
/**
|
|
26
41
|
* The step a key asks for: `[` the previous story, `]` the next; none for any other key or one with a modifier.
|
|
27
42
|
*
|
|
28
43
|
* @param event - the key, its modifiers and its target.
|
|
29
44
|
*/
|
|
30
45
|
export const storyStep = (event) => {
|
|
31
|
-
if (event.metaKey || event.ctrlKey || event.altKey ||
|
|
46
|
+
if (event.metaKey || event.ctrlKey || event.altKey || !isSingleKeyFree(event))
|
|
32
47
|
return undefined;
|
|
33
48
|
if (event.key === "[")
|
|
34
49
|
return -1;
|
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
/** The later parts' texts, as shown: Forgebook's, with the catalogue's replacements. */
|
|
2
2
|
export declare const LATER_STRINGS: {
|
|
3
|
+
docsNav: string;
|
|
4
|
+
aboutControl: (control: string) => string;
|
|
5
|
+
signatureParameter: string;
|
|
6
|
+
signatureReturns: string;
|
|
7
|
+
signatureNone: string;
|
|
8
|
+
apiType: string;
|
|
9
|
+
apiWhat: string;
|
|
3
10
|
audienceError: string;
|
|
11
|
+
controlMenu: (label: string) => string;
|
|
12
|
+
unpinControl: string;
|
|
13
|
+
hideInView: string;
|
|
14
|
+
showInView: string;
|
|
4
15
|
controlKey: (control: string, key: string | undefined) => string;
|
|
5
16
|
changeKey: string;
|
|
6
17
|
pressAKey: string;
|
|
@@ -36,6 +47,14 @@ export declare const LATER_STRINGS: {
|
|
|
36
47
|
playTitle: string;
|
|
37
48
|
playTime: (ms: number) => string;
|
|
38
49
|
playAgain: string;
|
|
50
|
+
playRun: string;
|
|
51
|
+
playOnOpen: string;
|
|
52
|
+
playOff: string;
|
|
53
|
+
playStepThrough: string;
|
|
54
|
+
playNext: string;
|
|
55
|
+
playContinue: string;
|
|
56
|
+
playPaused: (action: string) => string;
|
|
57
|
+
playActionsNote: string;
|
|
39
58
|
playNoSteps: string;
|
|
40
59
|
codeFromArgs: string;
|
|
41
60
|
codeRender: string;
|
|
@@ -59,6 +78,13 @@ export declare const LATER_STRINGS: {
|
|
|
59
78
|
apiMember: string;
|
|
60
79
|
memberCount: (count: number) => string;
|
|
61
80
|
membersOf: (type: string) => string;
|
|
81
|
+
propOnlyWhen: (prop: string, values: readonly string[], orOmitted: boolean) => string;
|
|
82
|
+
propGeneric: (parameter: string, type: string, shownAs: "constraint" | "default" | "unknown") => string;
|
|
83
|
+
propUnresolved: (name: string) => string;
|
|
84
|
+
propAny: string;
|
|
85
|
+
propsUntyped: string;
|
|
86
|
+
propsNoSignature: string;
|
|
87
|
+
propsOutsidePackage: (count: number) => string;
|
|
62
88
|
showCode: string;
|
|
63
89
|
hideCode: string;
|
|
64
90
|
openStory: string;
|
|
@@ -79,6 +105,9 @@ export declare const LATER_STRINGS: {
|
|
|
79
105
|
droppedArgReasons: {
|
|
80
106
|
undeclared: string;
|
|
81
107
|
type: string;
|
|
108
|
+
unreadable: string;
|
|
109
|
+
markup: string;
|
|
110
|
+
control: string;
|
|
82
111
|
};
|
|
83
112
|
removeDroppedArgs: string;
|
|
84
113
|
events: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The texts of the shell's parts that load after the first screen, but for the home and the docs pages
|
|
3
|
-
* (`pageStrings.ts`): a component's page, the panel's tabs but Props, the View menu's panel, the embed panel and page,
|
|
3
|
+
* (`pageStrings.ts`): a component's page, the panel's tabs but Props, the View menu's panel, a pinned control's menu, the embed panel and page,
|
|
4
4
|
* the comparison, the story clock's bar, the plugins' hosts and the note on args a link dropped. They load with the
|
|
5
5
|
* first of those parts, so a first load carries none of them.
|
|
6
6
|
*
|
|
@@ -14,7 +14,18 @@
|
|
|
14
14
|
import { lateStrings } from "./strings.js";
|
|
15
15
|
/** The later parts' texts, as shown: Forgebook's, with the catalogue's replacements. */
|
|
16
16
|
export const LATER_STRINGS = lateStrings({
|
|
17
|
+
docsNav: "Docs",
|
|
18
|
+
aboutControl: (control) => `About ${control}`,
|
|
19
|
+
signatureParameter: "Parameter",
|
|
20
|
+
signatureReturns: "Returns",
|
|
21
|
+
signatureNone: "It takes no parameters.",
|
|
22
|
+
apiType: "Type",
|
|
23
|
+
apiWhat: "What it does",
|
|
17
24
|
audienceError: "This part of the page could not be loaded",
|
|
25
|
+
controlMenu: (label) => `${label} on the toolbar`,
|
|
26
|
+
unpinControl: "Remove from the toolbar",
|
|
27
|
+
hideInView: "Hide in View",
|
|
28
|
+
showInView: "Show in View",
|
|
18
29
|
controlKey: (control, key) => key === undefined ? `${control}: no key` : `${control}: key ${key.toUpperCase()}`,
|
|
19
30
|
changeKey: "Change the key: press it, then the new key; Backspace takes it away",
|
|
20
31
|
pressAKey: "Press a key",
|
|
@@ -50,6 +61,14 @@ export const LATER_STRINGS = lateStrings({
|
|
|
50
61
|
playTitle: "Play function",
|
|
51
62
|
playTime: (ms) => `${ms} ms`,
|
|
52
63
|
playAgain: "Run again",
|
|
64
|
+
playRun: "Run",
|
|
65
|
+
playOnOpen: "Play stories when they open",
|
|
66
|
+
playOff: "This story has a play function. It has not run: run it, or have stories play when they open.",
|
|
67
|
+
playStepThrough: "Step through",
|
|
68
|
+
playNext: "Next",
|
|
69
|
+
playContinue: "Continue",
|
|
70
|
+
playPaused: (action) => `Next: ${action}`,
|
|
71
|
+
playActionsNote: "The log and the stepping follow the canvas and userEvent of the play's context; what a play imports itself runs unrecorded.",
|
|
53
72
|
playNoSteps: "The play names no steps: wrap its parts in step(label, run) to see them here.",
|
|
54
73
|
codeFromArgs: "from the args",
|
|
55
74
|
codeRender: "the story's render",
|
|
@@ -73,6 +92,20 @@ export const LATER_STRINGS = lateStrings({
|
|
|
73
92
|
apiMember: "Member",
|
|
74
93
|
memberCount: (count) => `${count} ${count === 1 ? "member" : "members"}`,
|
|
75
94
|
membersOf: (type) => `Members of ${type}`,
|
|
95
|
+
// the names and types below come written as code spans (`codeSpans.ts`), since a type may hold backticks
|
|
96
|
+
propOnlyWhen: (prop, values, orOmitted) => {
|
|
97
|
+
if (values.length === 0)
|
|
98
|
+
return `Only when ${prop} is left out.`;
|
|
99
|
+
return `Only when ${prop} is ${values.join(" or ")}${orOmitted ? ", or left out" : ""}.`;
|
|
100
|
+
},
|
|
101
|
+
propGeneric: (parameter, type, shownAs) => shownAs === "unknown"
|
|
102
|
+
? `${parameter} is generic, with no constraint: shown as \`unknown\`.`
|
|
103
|
+
: `${parameter} is generic: shown as its ${shownAs}, ${type}.`,
|
|
104
|
+
propUnresolved: (name) => `${name} cannot be found, so this type is read as \`any\`.`,
|
|
105
|
+
propAny: "Typed `any`: nothing is known of its values.",
|
|
106
|
+
propsUntyped: "Its props are typed `any`, so none can be listed.",
|
|
107
|
+
propsNoSignature: "Its type cannot be called with props, so none can be listed.",
|
|
108
|
+
propsOutsidePackage: (count) => `${count === 1 ? "Its one prop comes" : `All ${count} of its props come`} from outside its package (an element's attributes), which the reference leaves out.`,
|
|
76
109
|
showCode: "Show code",
|
|
77
110
|
hideCode: "Hide code",
|
|
78
111
|
openStory: "Open the story",
|
|
@@ -86,11 +119,17 @@ export const LATER_STRINGS = lateStrings({
|
|
|
86
119
|
fillPage: "Fill the page",
|
|
87
120
|
fillPageNamed: (name) => `Fill the page with ${name}`,
|
|
88
121
|
backToPlace: "Back to its place",
|
|
89
|
-
backToPlaceNamed: (name) => `
|
|
122
|
+
backToPlaceNamed: (name) => `Back to its place: ${name}`,
|
|
90
123
|
examples: "Examples",
|
|
91
124
|
pageError: "The component's page could not be read",
|
|
92
125
|
droppedArgs: "The link sets values this story does not take; they were left out:",
|
|
93
|
-
droppedArgReasons: {
|
|
126
|
+
droppedArgReasons: {
|
|
127
|
+
undeclared: "not one of its props",
|
|
128
|
+
type: "not of the prop's type",
|
|
129
|
+
unreadable: "its value could not be read",
|
|
130
|
+
markup: "this framework writes it into HTML, so a link may give only plain text",
|
|
131
|
+
control: "its control refuses it, or could not be loaded"
|
|
132
|
+
},
|
|
94
133
|
removeDroppedArgs: "Remove them from the address",
|
|
95
134
|
events: "Events",
|
|
96
135
|
calls: "Calls",
|
|
@@ -10,6 +10,7 @@ import { createRoot } from "react-dom/client";
|
|
|
10
10
|
import { isEmbedAddress } from "../embed.js";
|
|
11
11
|
import { framePageAddress, pageOrigins, SAME_ORIGIN } from "../frameOrigins.js";
|
|
12
12
|
import { CodeWriterContext } from "./codeWriter.js";
|
|
13
|
+
import { HAS_REFS, setShellRefs } from "./composition.js";
|
|
13
14
|
import { FORGEBOOK_MARK_URL } from "./forgebookMark.js";
|
|
14
15
|
import { setFramesOrigin } from "./framesOrigin.js";
|
|
15
16
|
import { Shell } from "./Shell.js";
|
|
@@ -57,6 +58,8 @@ export const mountShell = (container, config) => {
|
|
|
57
58
|
// set before anything renders, the embed included: its story's frame runs on the frames' origin too
|
|
58
59
|
const origins = pageOrigins(frames, window.location, "catalogue");
|
|
59
60
|
setFramesOrigin(origins.frames);
|
|
61
|
+
if (HAS_REFS)
|
|
62
|
+
setShellRefs(config.refs);
|
|
60
63
|
const shell = {
|
|
61
64
|
...page,
|
|
62
65
|
frameUrl: framePageAddress(page.frameUrl, origins.frames, window.location.pathname)
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
/** The texts of the home and the docs pages, the catalogue's replacements applied. */
|
|
2
2
|
export declare const PAGE_STRINGS: {
|
|
3
3
|
homeEmpty: string;
|
|
4
|
+
homeNoStoryTitle: string;
|
|
5
|
+
homeNoStoryLead: string;
|
|
6
|
+
homeNoStoryHelp: string;
|
|
7
|
+
homeNoStoryCommand: string;
|
|
4
8
|
homeSummary: (components: number, sources: number) => string;
|
|
5
9
|
homeIntroError: string;
|
|
6
10
|
recentlyOpened: string;
|
|
@@ -9,6 +9,10 @@ import { lateStrings } from "./strings.js";
|
|
|
9
9
|
/** The texts of the home and the docs pages, the catalogue's replacements applied. */
|
|
10
10
|
export const PAGE_STRINGS = lateStrings({
|
|
11
11
|
homeEmpty: "No stories yet: a source with story files shows its families here.",
|
|
12
|
+
homeNoStoryTitle: "No stories yet",
|
|
13
|
+
homeNoStoryLead: "This catalogue lists the story files these patterns match, and none is there yet:",
|
|
14
|
+
homeNoStoryHelp: "Save a file one of them matches, and it shows here. To have one written from a component, run:",
|
|
15
|
+
homeNoStoryCommand: "npx forgebook new src/Button.tsx",
|
|
12
16
|
homeSummary: (components, sources) => `${components} ${components === 1 ? "component" : "components"} in ${sources} ${sources === 1 ? "library" : "libraries"}.`,
|
|
13
17
|
homeIntroError: "The library's introduction could not be read",
|
|
14
18
|
recentlyOpened: "Recently opened",
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a story's tags draw on a component's page (its status, a story's own), loaded from the page's own chunk with the
|
|
3
|
+
* same module as the sidebar's (`TagViews.tsx`).
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Kept apart from `tagView.tsx`, which the first load carries: imported by the pages that load later too, that module
|
|
7
|
+
* would be split out of the first load's chunk into one of its own, a request and some bytes more on every first load.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import type { ReactNode } from "react";
|
|
12
|
+
import type { TagViewProps } from "./TagViews.tsx";
|
|
13
|
+
/**
|
|
14
|
+
* What the tags draw in one place of a component's page, once its code is there.
|
|
15
|
+
*
|
|
16
|
+
* @param props - the place, and what it reads.
|
|
17
|
+
*/
|
|
18
|
+
export declare const PageTagView: (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 on the page, loaded on first use. */
|
|
4
|
+
const PAGE_TAG_VIEW = lazyModule(() => import("./TagViews.js").then((module) => module.TagView));
|
|
5
|
+
/**
|
|
6
|
+
* What the tags draw in one place of a component's page, once its code is there.
|
|
7
|
+
*
|
|
8
|
+
* @param props - the place, and what it reads.
|
|
9
|
+
*/
|
|
10
|
+
export const PageTagView = (props) => (_jsx(LazyView, { module: PAGE_TAG_VIEW, props: props, loading: null, failed: () => null }));
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Keeps a reader's play switch for their next visits, on what a browser keeps for a catalogue. Loaded with the parts that
|
|
3
|
+
* show the switch; the shell reads the choice back with its settings (`catalogueContext.ts`).
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import type { CatalogueSettings, PlaySwitch } from "../catalogue.ts";
|
|
8
|
+
/**
|
|
9
|
+
* Keeps a reader's choice.
|
|
10
|
+
*
|
|
11
|
+
* @param catalogue - the catalogue, whose id the choice is kept under.
|
|
12
|
+
* @param play - the choice.
|
|
13
|
+
*/
|
|
14
|
+
export declare const rememberPlay: (catalogue: Pick<CatalogueSettings, "id">, play: PlaySwitch) => void;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { writeStored } from "./useStored.js";
|
|
2
|
+
/**
|
|
3
|
+
* Keeps a reader's choice.
|
|
4
|
+
*
|
|
5
|
+
* @param catalogue - the catalogue, whose id the choice is kept under.
|
|
6
|
+
* @param play - the choice.
|
|
7
|
+
*/
|
|
8
|
+
export const rememberPlay = (catalogue, play) => writeStored(`${catalogue.id}:play`, play);
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The sentences the API reference writes under a prop, and under a component that lists none: when a variant's prop can
|
|
3
|
+
* be passed, why a type is not the one its source writes, why no props are listed. Used by `ApiReference.tsx`.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* The shell checks these fields loosely when the docs arrive, so a reason it does not know is left out here rather
|
|
7
|
+
* than drawn wrong.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import type { ComponentDocs, PropDocs } from "../componentDocs.ts";
|
|
12
|
+
/**
|
|
13
|
+
* A prop's notes, in the order they are drawn: when it can be passed, then each note on its type.
|
|
14
|
+
*
|
|
15
|
+
* @param prop - the prop's condition and notes.
|
|
16
|
+
*/
|
|
17
|
+
export declare const propNoteTexts: (prop: Pick<PropDocs, "onlyWhen" | "notes">) => string[];
|
|
18
|
+
/**
|
|
19
|
+
* Why a component lists no props, or none when its props are read.
|
|
20
|
+
*
|
|
21
|
+
* @param docs - the component's docs.
|
|
22
|
+
*/
|
|
23
|
+
export declare const propsNoteText: (docs: Pick<ComponentDocs, "propsNote">) => string | undefined;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { codeSpan } from "./codeSpans.js";
|
|
2
|
+
import { LATER_STRINGS } from "./laterStrings.js";
|
|
3
|
+
/**
|
|
4
|
+
* A prop's notes, in the order they are drawn: when it can be passed, then each note on its type.
|
|
5
|
+
*
|
|
6
|
+
* @param prop - the prop's condition and notes.
|
|
7
|
+
*/
|
|
8
|
+
export const propNoteTexts = (prop) => {
|
|
9
|
+
const { onlyWhen } = prop;
|
|
10
|
+
const condition = onlyWhen === undefined
|
|
11
|
+
? []
|
|
12
|
+
: [
|
|
13
|
+
LATER_STRINGS.propOnlyWhen(codeSpan(onlyWhen.prop), onlyWhen.values.map((value) => codeSpan(typeof value === "string" ? JSON.stringify(value) : String(value))), onlyWhen.orOmitted === true)
|
|
14
|
+
];
|
|
15
|
+
const types = (prop.notes ?? []).flatMap((note) => {
|
|
16
|
+
if (note.reason === "generic") {
|
|
17
|
+
return [LATER_STRINGS.propGeneric(codeSpan(note.parameter), codeSpan(note.type), note.shownAs)];
|
|
18
|
+
}
|
|
19
|
+
if (note.reason === "unresolved")
|
|
20
|
+
return [LATER_STRINGS.propUnresolved(codeSpan(note.name))];
|
|
21
|
+
return note.reason === "any" ? [LATER_STRINGS.propAny] : [];
|
|
22
|
+
});
|
|
23
|
+
return [...condition, ...types];
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Why a component lists no props, or none when its props are read.
|
|
27
|
+
*
|
|
28
|
+
* @param docs - the component's docs.
|
|
29
|
+
*/
|
|
30
|
+
export const propsNoteText = (docs) => {
|
|
31
|
+
const note = docs.propsNote;
|
|
32
|
+
if (note?.reason === "untyped")
|
|
33
|
+
return LATER_STRINGS.propsUntyped;
|
|
34
|
+
if (note?.reason === "no-signature")
|
|
35
|
+
return LATER_STRINGS.propsNoSignature;
|
|
36
|
+
return note?.reason === "outside-package" ? LATER_STRINGS.propsOutsidePackage(note.count) : undefined;
|
|
37
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A composed catalogue's index, fetched once per page when its section is first opened or one of its stories is shown.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* Read with no credentials: the index is public, and a cookie of the other host has nothing to do with it. A failure is
|
|
6
|
+
* kept too, so a section opened again says why without asking again; the page's next load tries once more.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
import { type CatalogueRef, type RefIndex } from "../catalogueRefs.ts";
|
|
11
|
+
/**
|
|
12
|
+
* A composed catalogue's index.
|
|
13
|
+
*
|
|
14
|
+
* @param ref - the composed catalogue.
|
|
15
|
+
* @returns the index; rejected with the reason it could not be read.
|
|
16
|
+
*/
|
|
17
|
+
export declare const loadRefIndex: (ref: CatalogueRef) => Promise<RefIndex>;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A composed catalogue's index, fetched once per page when its section is first opened or one of its stories is shown.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* Read with no credentials: the index is public, and a cookie of the other host has nothing to do with it. A failure is
|
|
6
|
+
* kept too, so a section opened again says why without asking again; the page's next load tries once more.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
import { refIndexAddress, refIndexOf } from "../catalogueRefs.js";
|
|
11
|
+
import { REF_STRINGS } from "./refStrings.js";
|
|
12
|
+
/** Each composed catalogue's index, by its address, as fetched once. */
|
|
13
|
+
const loads = new Map();
|
|
14
|
+
/** Fetches and reads an index. */
|
|
15
|
+
const fetchIndex = async (address) => {
|
|
16
|
+
const answer = await fetch(address, { credentials: "omit" });
|
|
17
|
+
if (!answer.ok)
|
|
18
|
+
throw new Error(`${answer.status} ${answer.statusText}`.trim());
|
|
19
|
+
const index = refIndexOf(await answer.json());
|
|
20
|
+
if (index === undefined)
|
|
21
|
+
throw new Error(REF_STRINGS.notIndex);
|
|
22
|
+
return index;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* A composed catalogue's index.
|
|
26
|
+
*
|
|
27
|
+
* @param ref - the composed catalogue.
|
|
28
|
+
* @returns the index; rejected with the reason it could not be read.
|
|
29
|
+
*/
|
|
30
|
+
export const loadRefIndex = (ref) => {
|
|
31
|
+
const address = refIndexAddress(ref);
|
|
32
|
+
const known = loads.get(address);
|
|
33
|
+
if (known !== undefined)
|
|
34
|
+
return known;
|
|
35
|
+
const load = fetchIndex(address);
|
|
36
|
+
loads.set(address, load);
|
|
37
|
+
return load;
|
|
38
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What the shell draws of the composed catalogues (`refs`): their sidebar sections and the page of one of their stories.
|
|
3
|
+
* The generated page imports it (`forgebook/shell/refs`) only for a catalogue that composes one, so the others' first
|
|
4
|
+
* load carries not even the way to it.
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* One module for both places, so a catalogue that composes others loads one chunk for them, and the shell keeps one
|
|
8
|
+
* slot type: a part drawn with the place it is drawn in.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
import type { ComponentType, ReactNode } from "react";
|
|
13
|
+
import type { CatalogueRef } from "../catalogueRefs.ts";
|
|
14
|
+
import { type RefStoryPageProps } from "./RefStoryPage.tsx";
|
|
15
|
+
import { type SidebarRefsProps } from "./SidebarRefs.tsx";
|
|
16
|
+
/** A part of the composed catalogues, with the place it is drawn in. */
|
|
17
|
+
export type RefPartProps = ({
|
|
18
|
+
readonly place: "sidebar";
|
|
19
|
+
} & SidebarRefsProps) | ({
|
|
20
|
+
readonly place: "page";
|
|
21
|
+
} & RefStoryPageProps);
|
|
22
|
+
/** The composed catalogues, as the generated page hands them to the shell. */
|
|
23
|
+
export type ShellRefs = {
|
|
24
|
+
/** The catalogues, in the configuration's order. */
|
|
25
|
+
readonly catalogues: readonly CatalogueRef[];
|
|
26
|
+
/** Loads what draws them (`RefPart`). */
|
|
27
|
+
readonly load: () => Promise<ComponentType<RefPartProps>>;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* A part of the composed catalogues: the sidebar's sections, or a story's page.
|
|
31
|
+
*
|
|
32
|
+
* @param props - the place, and that part's props.
|
|
33
|
+
*/
|
|
34
|
+
export declare const RefPart: (props: RefPartProps) => ReactNode;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { RefStoryPage } from "./RefStoryPage.js";
|
|
3
|
+
import { SidebarRefs } from "./SidebarRefs.js";
|
|
4
|
+
/**
|
|
5
|
+
* A part of the composed catalogues: the sidebar's sections, or a story's page.
|
|
6
|
+
*
|
|
7
|
+
* @param props - the place, and that part's props.
|
|
8
|
+
*/
|
|
9
|
+
export const RefPart = (props) => props.place === "sidebar" ? _jsx(SidebarRefs, { ...props }) : _jsx(RefStoryPage, { ...props });
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
@layer catalogue {
|
|
2
|
+
.forgebook-ref-story {
|
|
3
|
+
overflow: auto;
|
|
4
|
+
}
|
|
5
|
+
.forgebook-ref-story__note {
|
|
6
|
+
margin: 0.25rem 0 0;
|
|
7
|
+
font: var(--forgebook-text-caption);
|
|
8
|
+
color: var(--forgebook-text-secondary);
|
|
9
|
+
}
|
|
10
|
+
.forgebook-ref-story__stage {
|
|
11
|
+
padding: 1rem;
|
|
12
|
+
}
|
|
13
|
+
.forgebook-ref-story__frame {
|
|
14
|
+
display: block;
|
|
15
|
+
width: 100%;
|
|
16
|
+
border: 0;
|
|
17
|
+
border-radius: var(--forgebook-radius-card);
|
|
18
|
+
box-shadow: 0 0 0 1px var(--forgebook-card-edge), 0 1px 3px var(--forgebook-shadow-soft);
|
|
19
|
+
background: var(--forgebook-surface);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** The composed catalogues' texts, as shown: Forgebook's, with the catalogue's replacements. */
|
|
2
|
+
export declare const REF_STRINGS: {
|
|
3
|
+
section: (title: string) => string;
|
|
4
|
+
loading: string;
|
|
5
|
+
empty: string;
|
|
6
|
+
unreadable: (title: string, reason: string) => string;
|
|
7
|
+
notIndex: string;
|
|
8
|
+
storyTitle: (story: string, catalogue: string) => string;
|
|
9
|
+
openThere: (catalogue: string) => string;
|
|
10
|
+
readOnly: string;
|
|
11
|
+
onFramesOrigin: (title: string) => string;
|
|
12
|
+
unknownRef: (id: string) => string;
|
|
13
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The words of the composed catalogues (`refs`): their sidebar section and their story's page, loaded with them, so a
|
|
3
|
+
* catalogue that composes none carries none. A catalogue replaces them as any other text of the shell
|
|
4
|
+
* (`strings: { "refs.loading": "Caricamento…" }`).
|
|
5
|
+
*
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
import { textsOfGroup } from "./strings.js";
|
|
9
|
+
/** The composed catalogues' texts, as shown: Forgebook's, with the catalogue's replacements. */
|
|
10
|
+
export const REF_STRINGS = textsOfGroup("refs", {
|
|
11
|
+
section: (title) => `${title}, another catalogue`,
|
|
12
|
+
loading: "Loading its stories…",
|
|
13
|
+
empty: "It lists no story",
|
|
14
|
+
unreadable: (title, reason) => `${title} could not be read: ${reason}. It is built with forgebook build --agent-index, and its host lets this catalogue fetch its index (CORS).`,
|
|
15
|
+
notIndex: "its forgebook-agent.json is not an index this version reads",
|
|
16
|
+
storyTitle: (story, catalogue) => `${story}, from ${catalogue}`,
|
|
17
|
+
openThere: (catalogue) => `Open in ${catalogue}`,
|
|
18
|
+
readOnly: "Shown from another catalogue, read-only: its controls and panel are in its own page.",
|
|
19
|
+
onFramesOrigin: (title) => `${title} is served on the origin this catalogue's stories run on, where it would share their storage: serve it elsewhere.`,
|
|
20
|
+
unknownRef: (id) => `No composed catalogue "${id}" in this configuration: it may have been removed. Pick one in the sidebar.`
|
|
21
|
+
});
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
gap: 0.75rem;
|
|
39
39
|
margin: 0;
|
|
40
40
|
padding: 0.5rem 0.75rem;
|
|
41
|
-
font:
|
|
41
|
+
font: var(--forgebook-text-caption);
|
|
42
42
|
color: var(--forgebook-text-secondary);
|
|
43
43
|
box-shadow: inset 0 -1px 0 var(--forgebook-separator);
|
|
44
44
|
}
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
flex: none;
|
|
60
60
|
margin: 0;
|
|
61
61
|
padding: 0.375rem 0.75rem;
|
|
62
|
-
font:
|
|
62
|
+
font: var(--forgebook-text-caption);
|
|
63
63
|
color: var(--forgebook-text-tertiary);
|
|
64
64
|
box-shadow: inset 0 1px 0 var(--forgebook-separator);
|
|
65
65
|
}
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
padding: 0 0.25rem;
|
|
68
68
|
border-radius: var(--forgebook-radius-control-small);
|
|
69
69
|
box-shadow: inset 0 0 0 1px var(--forgebook-edge);
|
|
70
|
-
font:
|
|
70
|
+
font: var(--forgebook-text-mono-small);
|
|
71
71
|
}
|
|
72
72
|
@media (hover: none) {
|
|
73
73
|
.forgebook-search-panel__keys {
|
|
@@ -100,26 +100,26 @@
|
|
|
100
100
|
margin-inline-start: 0.75rem;
|
|
101
101
|
}
|
|
102
102
|
.forgebook-result__name {
|
|
103
|
-
font:
|
|
103
|
+
font: var(--forgebook-text-row-label);
|
|
104
104
|
}
|
|
105
105
|
.forgebook-result__place {
|
|
106
106
|
flex: 1;
|
|
107
107
|
min-width: 0;
|
|
108
108
|
overflow: hidden;
|
|
109
|
-
font:
|
|
109
|
+
font: var(--forgebook-text-caption);
|
|
110
110
|
color: var(--forgebook-text-tertiary);
|
|
111
111
|
text-overflow: ellipsis;
|
|
112
112
|
white-space: nowrap;
|
|
113
113
|
}
|
|
114
114
|
.forgebook-result__kind {
|
|
115
115
|
flex: none;
|
|
116
|
-
font:
|
|
116
|
+
font: var(--forgebook-text-caption);
|
|
117
117
|
color: var(--forgebook-text-tertiary);
|
|
118
118
|
}
|
|
119
119
|
.forgebook-result__why {
|
|
120
120
|
flex: none;
|
|
121
121
|
min-width: 3.5rem;
|
|
122
|
-
font:
|
|
122
|
+
font: var(--forgebook-text-caption);
|
|
123
123
|
color: var(--forgebook-text-secondary);
|
|
124
124
|
}
|
|
125
125
|
.forgebook-result__own .forgebook-result__why {
|
|
@@ -135,14 +135,14 @@
|
|
|
135
135
|
min-width: 0;
|
|
136
136
|
}
|
|
137
137
|
.forgebook-result__label {
|
|
138
|
-
font:
|
|
138
|
+
font: var(--forgebook-text-row-compact);
|
|
139
139
|
overflow-wrap: anywhere;
|
|
140
140
|
}
|
|
141
141
|
.forgebook-result__label[data-code] {
|
|
142
|
-
font:
|
|
142
|
+
font: var(--forgebook-text-mono);
|
|
143
143
|
}
|
|
144
144
|
.forgebook-result__snippet {
|
|
145
|
-
font:
|
|
145
|
+
font: var(--forgebook-text-caption);
|
|
146
146
|
color: var(--forgebook-text-secondary);
|
|
147
147
|
overflow-wrap: anywhere;
|
|
148
148
|
}
|
|
@@ -151,7 +151,7 @@
|
|
|
151
151
|
gap: 0.75rem;
|
|
152
152
|
margin: 0;
|
|
153
153
|
padding: 0 0.5rem 0.25rem calc(0.75rem + 0.5rem);
|
|
154
|
-
font:
|
|
154
|
+
font: var(--forgebook-text-caption);
|
|
155
155
|
color: var(--forgebook-text-tertiary);
|
|
156
156
|
}
|
|
157
157
|
.forgebook-search-panel mark {
|