forgebook 0.1.3 → 0.1.5
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 +99 -6
- package/dist/bin/forgebook/agentClient.d.ts +17 -0
- package/dist/bin/forgebook/agentClient.d.ts.map +1 -1
- package/dist/bin/forgebook/agentClient.js +21 -0
- package/dist/bin/forgebook/agentClient.js.map +1 -1
- package/dist/bin/forgebook/agentLoopCommands.d.mts +9 -0
- package/dist/bin/forgebook/agentLoopCommands.d.mts.map +1 -0
- package/dist/bin/forgebook/agentLoopCommands.mjs +217 -0
- package/dist/bin/forgebook/agentLoopCommands.mjs.map +1 -0
- package/dist/bin/forgebook/agentText.d.ts +37 -1
- package/dist/bin/forgebook/agentText.d.ts.map +1 -1
- package/dist/bin/forgebook/agentText.js +49 -2
- package/dist/bin/forgebook/agentText.js.map +1 -1
- package/dist/bin/forgebook/agents.md +51 -0
- package/dist/bin/forgebook/agentsText.d.ts +29 -0
- package/dist/bin/forgebook/agentsText.d.ts.map +1 -0
- package/dist/bin/forgebook/agentsText.js +48 -0
- package/dist/bin/forgebook/agentsText.js.map +1 -0
- package/dist/bin/forgebook/catalogueCommands.d.ts +51 -0
- package/dist/bin/forgebook/catalogueCommands.d.ts.map +1 -0
- package/dist/bin/forgebook/catalogueCommands.js +90 -0
- package/dist/bin/forgebook/catalogueCommands.js.map +1 -0
- package/dist/bin/forgebook/errorsRun.d.ts +27 -0
- package/dist/bin/forgebook/errorsRun.d.ts.map +1 -0
- package/dist/bin/forgebook/errorsRun.js +60 -0
- package/dist/bin/forgebook/errorsRun.js.map +1 -0
- package/dist/bin/forgebook/forgebook.mjs +121 -86
- package/dist/bin/forgebook/forgebook.mjs.map +1 -1
- package/dist/bin/forgebook/importers/storybook.d.ts +53 -0
- package/dist/bin/forgebook/importers/storybook.d.ts.map +1 -0
- package/dist/bin/forgebook/importers/storybook.js +318 -0
- package/dist/bin/forgebook/importers/storybook.js.map +1 -0
- package/dist/bin/forgebook/initCommands.d.mts +9 -0
- package/dist/bin/forgebook/initCommands.d.mts.map +1 -0
- package/dist/bin/forgebook/initCommands.mjs +86 -0
- package/dist/bin/forgebook/initCommands.mjs.map +1 -0
- package/dist/bin/forgebook/initConfig.d.ts +22 -0
- package/dist/bin/forgebook/initConfig.d.ts.map +1 -0
- package/dist/bin/forgebook/initConfig.js +51 -0
- package/dist/bin/forgebook/initConfig.js.map +1 -0
- package/dist/bin/forgebook/mcpTools.d.ts +29 -3
- package/dist/bin/forgebook/mcpTools.d.ts.map +1 -1
- package/dist/bin/forgebook/mcpTools.js +130 -7
- package/dist/bin/forgebook/mcpTools.js.map +1 -1
- package/dist/bin/forgebook/newStories.d.ts +27 -0
- package/dist/bin/forgebook/newStories.d.ts.map +1 -0
- package/dist/bin/forgebook/newStories.js +109 -0
- package/dist/bin/forgebook/newStories.js.map +1 -0
- package/dist/bin/forgebook/newStoriesFile.d.ts +18 -0
- package/dist/bin/forgebook/newStoriesFile.d.ts.map +1 -0
- package/dist/bin/forgebook/newStoriesFile.js +58 -0
- package/dist/bin/forgebook/newStoriesFile.js.map +1 -0
- package/dist/bin/forgebook/storyCheckRun.d.ts +49 -0
- package/dist/bin/forgebook/storyCheckRun.d.ts.map +1 -0
- package/dist/bin/forgebook/storyCheckRun.js +178 -0
- package/dist/bin/forgebook/storyCheckRun.js.map +1 -0
- package/dist/bin/forgebook/touchWindowRun.d.ts +17 -0
- package/dist/bin/forgebook/touchWindowRun.d.ts.map +1 -0
- package/dist/bin/forgebook/touchWindowRun.js +21 -0
- package/dist/bin/forgebook/touchWindowRun.js.map +1 -0
- package/dist/bin/forgebook-docs/catalogueDocs.d.ts +24 -0
- package/dist/bin/forgebook-docs/catalogueDocs.d.ts.map +1 -0
- package/dist/bin/forgebook-docs/catalogueDocs.js +71 -0
- package/dist/bin/forgebook-docs/catalogueDocs.js.map +1 -0
- package/dist/bin/forgebook-docs/catalogueDocs.types.d.ts +8 -0
- package/dist/bin/forgebook-docs/catalogueDocs.types.d.ts.map +1 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.d.ts +3 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.d.ts.map +1 -1
- package/dist/bin/forgebook-docs/catalogueMarkdown.js +62 -42
- package/dist/bin/forgebook-docs/catalogueMarkdown.js.map +1 -1
- package/dist/bin/forgebook-docs/catalogueOptions.d.ts +39 -0
- package/dist/bin/forgebook-docs/catalogueOptions.d.ts.map +1 -0
- package/dist/bin/forgebook-docs/catalogueOptions.js +76 -0
- package/dist/bin/forgebook-docs/catalogueOptions.js.map +1 -0
- package/dist/bin/forgebook-docs/collectDocs.d.ts +3 -1
- package/dist/bin/forgebook-docs/collectDocs.d.ts.map +1 -1
- package/dist/bin/forgebook-docs/collectDocs.js +37 -13
- package/dist/bin/forgebook-docs/collectDocs.js.map +1 -1
- package/dist/bin/forgebook-docs/forgebook-docs.mjs +17 -80
- package/dist/bin/forgebook-docs/forgebook-docs.mjs.map +1 -1
- package/dist/bin/forgebook-docs/llmsText.d.ts +24 -0
- package/dist/bin/forgebook-docs/llmsText.d.ts.map +1 -0
- package/dist/bin/forgebook-docs/llmsText.js +33 -0
- package/dist/bin/forgebook-docs/llmsText.js.map +1 -0
- package/dist/bin/forgebook-docs/sourceId.d.ts +9 -0
- package/dist/bin/forgebook-docs/sourceId.d.ts.map +1 -0
- package/dist/bin/forgebook-docs/sourceId.js +45 -0
- package/dist/bin/forgebook-docs/sourceId.js.map +1 -0
- package/dist/bin/frameworkDocs.d.ts +10 -0
- package/dist/bin/frameworkDocs.d.ts.map +1 -0
- package/dist/bin/frameworkDocs.js +43 -0
- package/dist/bin/frameworkDocs.js.map +1 -0
- package/dist/src/argTypes.d.ts +23 -0
- package/dist/src/argTypes.d.ts.map +1 -1
- package/dist/src/argTypes.js +27 -0
- package/dist/src/argTypes.js.map +1 -1
- package/dist/src/catalogue.d.ts +70 -3
- package/dist/src/catalogue.d.ts.map +1 -1
- package/dist/src/catalogue.js +85 -3
- package/dist/src/catalogue.js.map +1 -1
- package/dist/src/controlKeys.d.ts +85 -0
- package/dist/src/controlKeys.d.ts.map +1 -0
- package/dist/src/controlKeys.js +118 -0
- package/dist/src/controlKeys.js.map +1 -0
- package/dist/src/frame/frame.css +33 -2
- package/dist/src/frame/frameView.d.ts +2 -2
- package/dist/src/frame/frameView.d.ts.map +1 -1
- package/dist/src/frame/frameView.js +7 -3
- package/dist/src/frame/frameView.js.map +1 -1
- package/dist/src/frame/mountFrame.d.ts.map +1 -1
- package/dist/src/frame/mountFrame.js +30 -2
- package/dist/src/frame/mountFrame.js.map +1 -1
- package/dist/src/frame/spillOutline.d.ts +10 -0
- package/dist/src/frame/spillOutline.d.ts.map +1 -0
- package/dist/src/frame/spillOutline.js +80 -0
- package/dist/src/frame/spillOutline.js.map +1 -0
- package/dist/src/frame/touchDots.d.ts +32 -0
- package/dist/src/frame/touchDots.d.ts.map +1 -0
- package/dist/src/frame/touchDots.js +52 -0
- package/dist/src/frame/touchDots.js.map +1 -0
- package/dist/src/frame/touchEvents.d.ts +66 -0
- package/dist/src/frame/touchEvents.d.ts.map +1 -0
- package/dist/src/frame/touchEvents.js +152 -0
- package/dist/src/frame/touchEvents.js.map +1 -0
- package/dist/src/frame/touchGesture.d.ts +80 -0
- package/dist/src/frame/touchGesture.d.ts.map +1 -0
- package/dist/src/frame/touchGesture.js +87 -0
- package/dist/src/frame/touchGesture.js.map +1 -0
- package/dist/src/frame/touchLayer.d.ts +7 -0
- package/dist/src/frame/touchLayer.d.ts.map +1 -0
- package/dist/src/frame/touchLayer.js +399 -0
- package/dist/src/frame/touchLayer.js.map +1 -0
- package/dist/src/frame/touchScroll.d.ts +51 -0
- package/dist/src/frame/touchScroll.d.ts.map +1 -0
- package/dist/src/frame/touchScroll.js +137 -0
- package/dist/src/frame/touchScroll.js.map +1 -0
- package/dist/src/liveErrors.d.ts +57 -0
- package/dist/src/liveErrors.d.ts.map +1 -0
- package/dist/src/liveErrors.js +52 -0
- package/dist/src/liveErrors.js.map +1 -0
- package/dist/src/messages.d.ts +12 -0
- package/dist/src/messages.d.ts.map +1 -1
- package/dist/src/messages.js +4 -0
- package/dist/src/messages.js.map +1 -1
- package/dist/src/namedViews.d.ts +80 -0
- package/dist/src/namedViews.d.ts.map +1 -0
- package/dist/src/namedViews.js +88 -0
- package/dist/src/namedViews.js.map +1 -0
- package/dist/src/realTouch.d.ts +21 -0
- package/dist/src/realTouch.d.ts.map +1 -0
- package/dist/src/realTouch.js +16 -0
- package/dist/src/realTouch.js.map +1 -0
- package/dist/src/shell/AppearanceMenu.d.ts +15 -0
- package/dist/src/shell/AppearanceMenu.d.ts.map +1 -0
- package/dist/src/shell/AppearanceMenu.js +28 -0
- package/dist/src/shell/AppearanceMenu.js.map +1 -0
- package/dist/src/shell/BoxWidth.d.ts +40 -0
- package/dist/src/shell/BoxWidth.d.ts.map +1 -0
- package/dist/src/shell/BoxWidth.js +56 -0
- package/dist/src/shell/BoxWidth.js.map +1 -0
- package/dist/src/shell/ComponentPage.d.ts +17 -1
- package/dist/src/shell/ComponentPage.d.ts.map +1 -1
- package/dist/src/shell/ComponentPage.js +19 -54
- package/dist/src/shell/ComponentPage.js.map +1 -1
- package/dist/src/shell/ControlKeyField.d.ts +21 -0
- package/dist/src/shell/ControlKeyField.d.ts.map +1 -0
- package/dist/src/shell/ControlKeyField.js +46 -0
- package/dist/src/shell/ControlKeyField.js.map +1 -0
- package/dist/src/shell/ControlRow.d.ts +31 -0
- package/dist/src/shell/ControlRow.d.ts.map +1 -0
- package/dist/src/shell/ControlRow.js +30 -0
- package/dist/src/shell/ControlRow.js.map +1 -0
- package/dist/src/shell/Example.d.ts +58 -0
- package/dist/src/shell/Example.d.ts.map +1 -0
- package/dist/src/shell/Example.js +89 -0
- package/dist/src/shell/Example.js.map +1 -0
- package/dist/src/shell/InfoTip.d.ts +23 -0
- package/dist/src/shell/InfoTip.d.ts.map +1 -0
- package/dist/src/shell/InfoTip.js +51 -0
- package/dist/src/shell/InfoTip.js.map +1 -0
- package/dist/src/shell/NamedViews.d.ts +23 -0
- package/dist/src/shell/NamedViews.d.ts.map +1 -0
- package/dist/src/shell/NamedViews.js +49 -0
- package/dist/src/shell/NamedViews.js.map +1 -0
- package/dist/src/shell/PinnedControl.d.ts +25 -0
- package/dist/src/shell/PinnedControl.d.ts.map +1 -0
- package/dist/src/shell/PinnedControl.js +82 -0
- package/dist/src/shell/PinnedControl.js.map +1 -0
- package/dist/src/shell/PropsTab.d.ts +5 -2
- package/dist/src/shell/PropsTab.d.ts.map +1 -1
- package/dist/src/shell/PropsTab.js +12 -15
- package/dist/src/shell/PropsTab.js.map +1 -1
- package/dist/src/shell/Shell.d.ts.map +1 -1
- package/dist/src/shell/Shell.js +27 -2
- package/dist/src/shell/Shell.js.map +1 -1
- package/dist/src/shell/Sidebar.d.ts +11 -9
- package/dist/src/shell/Sidebar.d.ts.map +1 -1
- package/dist/src/shell/Sidebar.js +48 -42
- package/dist/src/shell/Sidebar.js.map +1 -1
- package/dist/src/shell/SidebarEntries.d.ts +50 -0
- package/dist/src/shell/SidebarEntries.d.ts.map +1 -0
- package/dist/src/shell/SidebarEntries.js +51 -0
- package/dist/src/shell/SidebarEntries.js.map +1 -0
- package/dist/src/shell/Stage.d.ts.map +1 -1
- package/dist/src/shell/Stage.js +19 -2
- package/dist/src/shell/Stage.js.map +1 -1
- package/dist/src/shell/Toolbar.d.ts +7 -3
- package/dist/src/shell/Toolbar.d.ts.map +1 -1
- package/dist/src/shell/Toolbar.js +38 -68
- package/dist/src/shell/Toolbar.js.map +1 -1
- package/dist/src/shell/ToolbarControl.d.ts +47 -0
- package/dist/src/shell/ToolbarControl.d.ts.map +1 -0
- package/dist/src/shell/ToolbarControl.js +150 -0
- package/dist/src/shell/ToolbarControl.js.map +1 -0
- package/dist/src/shell/UsedIn.d.ts +38 -0
- package/dist/src/shell/UsedIn.d.ts.map +1 -0
- package/dist/src/shell/UsedIn.js +77 -0
- package/dist/src/shell/UsedIn.js.map +1 -0
- package/dist/src/shell/ViewMenu.d.ts +37 -0
- package/dist/src/shell/ViewMenu.d.ts.map +1 -0
- package/dist/src/shell/ViewMenu.js +219 -0
- package/dist/src/shell/ViewMenu.js.map +1 -0
- package/dist/src/shell/controlCycle.d.ts +28 -0
- package/dist/src/shell/controlCycle.d.ts.map +1 -0
- package/dist/src/shell/controlCycle.js +51 -0
- package/dist/src/shell/controlCycle.js.map +1 -0
- package/dist/src/shell/dockTabs.d.ts +3 -0
- package/dist/src/shell/dockTabs.d.ts.map +1 -1
- package/dist/src/shell/dockTabs.js +1 -1
- package/dist/src/shell/dockTabs.js.map +1 -1
- package/dist/src/shell/icons.d.ts +7 -0
- package/dist/src/shell/icons.d.ts.map +1 -1
- package/dist/src/shell/icons.js +8 -1
- package/dist/src/shell/icons.js.map +1 -1
- package/dist/src/shell/keyboard.d.ts +2 -1
- package/dist/src/shell/keyboard.d.ts.map +1 -1
- package/dist/src/shell/keyboard.js +5 -2
- package/dist/src/shell/keyboard.js.map +1 -1
- package/dist/src/shell/shell.css +876 -244
- package/dist/src/shell/strings.d.ts +46 -0
- package/dist/src/shell/strings.d.ts.map +1 -1
- package/dist/src/shell/strings.js +46 -0
- package/dist/src/shell/strings.js.map +1 -1
- package/dist/src/shell/useAppearance.d.ts +17 -0
- package/dist/src/shell/useAppearance.d.ts.map +1 -0
- package/dist/src/shell/useAppearance.js +36 -0
- package/dist/src/shell/useAppearance.js.map +1 -0
- package/dist/src/shell/useControlKeys.d.ts +23 -0
- package/dist/src/shell/useControlKeys.d.ts.map +1 -0
- package/dist/src/shell/useControlKeys.js +44 -0
- package/dist/src/shell/useControlKeys.js.map +1 -0
- package/dist/src/shell/useFold.d.ts +27 -0
- package/dist/src/shell/useFold.d.ts.map +1 -0
- package/dist/src/shell/useFold.js +87 -0
- package/dist/src/shell/useFold.js.map +1 -0
- package/dist/src/shell/useFrameMessages.d.ts +2 -0
- package/dist/src/shell/useFrameMessages.d.ts.map +1 -1
- package/dist/src/shell/useFrameMessages.js +3 -0
- package/dist/src/shell/useFrameMessages.js.map +1 -1
- package/dist/src/shell/useFullPage.d.ts +45 -0
- package/dist/src/shell/useFullPage.d.ts.map +1 -0
- package/dist/src/shell/useFullPage.js +149 -0
- package/dist/src/shell/useFullPage.js.map +1 -0
- package/dist/src/shell/usePopover.d.ts +17 -3
- package/dist/src/shell/usePopover.d.ts.map +1 -1
- package/dist/src/shell/usePopover.js +65 -4
- package/dist/src/shell/usePopover.js.map +1 -1
- package/dist/src/shell/useStored.d.ts +13 -2
- package/dist/src/shell/useStored.d.ts.map +1 -1
- package/dist/src/shell/useStored.js +1 -1
- package/dist/src/shell/useStored.js.map +1 -1
- package/dist/src/shell/useToolbarLayout.d.ts +39 -0
- package/dist/src/shell/useToolbarLayout.d.ts.map +1 -0
- package/dist/src/shell/useToolbarLayout.js +58 -0
- package/dist/src/shell/useToolbarLayout.js.map +1 -0
- package/dist/src/shell/useToolbarOverflow.d.ts +31 -0
- package/dist/src/shell/useToolbarOverflow.d.ts.map +1 -0
- package/dist/src/shell/useToolbarOverflow.js +62 -0
- package/dist/src/shell/useToolbarOverflow.js.map +1 -0
- package/dist/src/shell/useWorstCase.d.ts +46 -0
- package/dist/src/shell/useWorstCase.d.ts.map +1 -0
- package/dist/src/shell/useWorstCase.js +42 -0
- package/dist/src/shell/useWorstCase.js.map +1 -0
- package/dist/src/shell/worstArgs.d.ts +42 -0
- package/dist/src/shell/worstArgs.d.ts.map +1 -0
- package/dist/src/shell/worstArgs.js +47 -0
- package/dist/src/shell/worstArgs.js.map +1 -0
- package/dist/src/spills.d.ts +31 -0
- package/dist/src/spills.d.ts.map +1 -0
- package/dist/src/spills.js +65 -0
- package/dist/src/spills.js.map +1 -0
- package/dist/src/storyCheck.d.ts +105 -0
- package/dist/src/storyCheck.d.ts.map +1 -0
- package/dist/src/storyCheck.js +63 -0
- package/dist/src/storyCheck.js.map +1 -0
- package/dist/src/switches.d.ts +26 -4
- package/dist/src/switches.d.ts.map +1 -1
- package/dist/src/switches.js +50 -5
- package/dist/src/switches.js.map +1 -1
- package/dist/src/toolbarLayout.d.ts +119 -0
- package/dist/src/toolbarLayout.d.ts.map +1 -0
- package/dist/src/toolbarLayout.js +155 -0
- package/dist/src/toolbarLayout.js.map +1 -0
- package/dist/src/usedIn.d.ts +60 -0
- package/dist/src/usedIn.d.ts.map +1 -0
- package/dist/src/usedIn.js +92 -0
- package/dist/src/usedIn.js.map +1 -0
- package/dist/src/viewState.d.ts +9 -11
- package/dist/src/viewState.d.ts.map +1 -1
- package/dist/src/viewState.js +24 -20
- package/dist/src/viewState.js.map +1 -1
- package/dist/src/viewWords.d.ts +26 -0
- package/dist/src/viewWords.d.ts.map +1 -0
- package/dist/src/viewWords.js +29 -0
- package/dist/src/viewWords.js.map +1 -0
- package/dist/src/vite/adapter.d.ts +13 -4
- package/dist/src/vite/adapter.d.ts.map +1 -1
- package/dist/src/vite/adapter.js +4 -2
- package/dist/src/vite/adapter.js.map +1 -1
- package/dist/src/vite/agent.types.d.ts +32 -2
- package/dist/src/vite/agent.types.d.ts.map +1 -1
- package/dist/src/vite/agentApi.d.ts +15 -3
- package/dist/src/vite/agentApi.d.ts.map +1 -1
- package/dist/src/vite/agentApi.js +63 -9
- package/dist/src/vite/agentApi.js.map +1 -1
- package/dist/src/vite/agentRoutes.d.ts +8 -3
- package/dist/src/vite/agentRoutes.d.ts.map +1 -1
- package/dist/src/vite/agentRoutes.js +84 -23
- package/dist/src/vite/agentRoutes.js.map +1 -1
- package/dist/src/vite/configFile.d.ts +2 -1
- package/dist/src/vite/configFile.d.ts.map +1 -1
- package/dist/src/vite/configFile.js +29 -11
- package/dist/src/vite/configFile.js.map +1 -1
- package/dist/src/vite/docsExtractor.d.ts +26 -2
- package/dist/src/vite/docsExtractor.d.ts.map +1 -1
- package/dist/src/vite/docsExtractor.js +12 -9
- package/dist/src/vite/docsExtractor.js.map +1 -1
- package/dist/src/vite/docsWorker.js +18 -2
- package/dist/src/vite/docsWorker.js.map +1 -1
- package/dist/src/vite/forcedStates.d.ts +6 -2
- package/dist/src/vite/forcedStates.d.ts.map +1 -1
- package/dist/src/vite/forcedStates.js +20 -4
- package/dist/src/vite/forcedStates.js.map +1 -1
- package/dist/src/vite/forgebookPlugin.d.ts.map +1 -1
- package/dist/src/vite/forgebookPlugin.js +104 -16
- package/dist/src/vite/forgebookPlugin.js.map +1 -1
- package/dist/src/vite/indexStoryFile.d.ts +14 -0
- package/dist/src/vite/indexStoryFile.d.ts.map +1 -1
- package/dist/src/vite/indexStoryFile.js +13 -4
- package/dist/src/vite/indexStoryFile.js.map +1 -1
- package/dist/src/vite/mcpProtocol.d.ts +9 -0
- package/dist/src/vite/mcpProtocol.d.ts.map +1 -1
- package/dist/src/vite/mcpProtocol.js +6 -3
- package/dist/src/vite/mcpProtocol.js.map +1 -1
- package/dist/src/vite/storyFilesModule.d.ts +44 -1
- package/dist/src/vite/storyFilesModule.d.ts.map +1 -1
- package/dist/src/vite/storyFilesModule.js +49 -14
- package/dist/src/vite/storyFilesModule.js.map +1 -1
- package/dist/src/vite/touchMedia.d.ts +35 -0
- package/dist/src/vite/touchMedia.d.ts.map +1 -0
- package/dist/src/vite/touchMedia.js +187 -0
- package/dist/src/vite/touchMedia.js.map +1 -0
- package/dist/src/vite/usageGraph.d.ts +45 -0
- package/dist/src/vite/usageGraph.d.ts.map +1 -0
- package/dist/src/vite/usageGraph.js +246 -0
- package/dist/src/vite/usageGraph.js.map +1 -0
- package/dist/src/vite/usageModule.d.ts +33 -0
- package/dist/src/vite/usageModule.d.ts.map +1 -0
- package/dist/src/vite/usageModule.js +135 -0
- package/dist/src/vite/usageModule.js.map +1 -0
- package/dist/src/worstCase.d.ts +16 -0
- package/dist/src/worstCase.d.ts.map +1 -0
- package/dist/src/worstCase.js +16 -0
- package/dist/src/worstCase.js.map +1 -0
- package/package.json +18 -2
- package/dist/src/shell/SchemeSwitches.d.ts +0 -24
- package/dist/src/shell/SchemeSwitches.d.ts.map +0 -1
- package/dist/src/shell/SchemeSwitches.js +0 -36
- package/dist/src/shell/SchemeSwitches.js.map +0 -1
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* The View menu: every control the person did not hide in it, in their order, each with its value, a handle to move
|
|
4
|
+
* it, a pin that puts it on the toolbar and a button that hides it here (a pinned one stays on the toolbar); at its
|
|
5
|
+
* foot the hidden controls, the wrap choice, the values' reset and the toolbar's reset.
|
|
6
|
+
*
|
|
7
|
+
* @remarks
|
|
8
|
+
* The order is set here only, and the toolbar shows the pinned controls in it: nothing is dragged on the toolbar. A row
|
|
9
|
+
* follows the pointer one to one while it is dragged, and the others move out of its way animated; with the keyboard,
|
|
10
|
+
* the handle moves its row with the arrow keys and the new position is announced.
|
|
11
|
+
*
|
|
12
|
+
* @module
|
|
13
|
+
*/
|
|
14
|
+
import { useEffect, useId, useLayoutEffect, useRef, useState } from "react";
|
|
15
|
+
import { DEFAULT_VIEW, hasViewChanges } from "../viewState.js";
|
|
16
|
+
import { ControlRow } from "./ControlRow.js";
|
|
17
|
+
import { useCatalogue } from "./catalogueContext.js";
|
|
18
|
+
import { Icon } from "./icons.js";
|
|
19
|
+
import { NamedViews } from "./NamedViews.js";
|
|
20
|
+
import { STRINGS } from "./strings.js";
|
|
21
|
+
import { controlLabel, ToolbarControl } from "./ToolbarControl.js";
|
|
22
|
+
import { usePopover } from "./usePopover.js";
|
|
23
|
+
/** The room the menu keeps from the window's right edge, in CSS px. */
|
|
24
|
+
const EDGE_PX = 12;
|
|
25
|
+
/** How long the rows take to move out of a dragged row's way, in ms: the shell's `$duration-quick`. */
|
|
26
|
+
const SHIFT_MS = 150;
|
|
27
|
+
/** How they move: the shell's `$ease-out`, decelerating. */
|
|
28
|
+
const SHIFT_EASING = "cubic-bezier(0.22, 1, 0.36, 1)";
|
|
29
|
+
/**
|
|
30
|
+
* The ids of the controls whose values the View menu answers for: those not on the toolbar (in it, or hidden, whose
|
|
31
|
+
* value still applies), the stage's width aside, which is not a view setting.
|
|
32
|
+
*
|
|
33
|
+
* @param placed - the placed controls.
|
|
34
|
+
*/
|
|
35
|
+
export const menuControlIds = (placed) => placed.filter((each) => !each.isPinned && each.control.id !== "width").map((each) => each.control.id);
|
|
36
|
+
/**
|
|
37
|
+
* The view with the given controls' values back at their defaults.
|
|
38
|
+
*
|
|
39
|
+
* @param view - the view.
|
|
40
|
+
* @param switches - the catalogue's switches.
|
|
41
|
+
* @param ids - the controls' ids.
|
|
42
|
+
*/
|
|
43
|
+
const withDefaults = (view, switches, ids) => ({
|
|
44
|
+
...view,
|
|
45
|
+
switches: {
|
|
46
|
+
...view.switches,
|
|
47
|
+
...Object.fromEntries(switches.filter((each) => ids.includes(each.id)).map((each) => [each.id, each.default]))
|
|
48
|
+
},
|
|
49
|
+
backdrop: ids.includes("backdrop") ? DEFAULT_VIEW.backdrop : view.backdrop,
|
|
50
|
+
sheets: ids.includes("sheets") ? DEFAULT_VIEW.sheets : view.sheets,
|
|
51
|
+
text: ids.includes("text") ? DEFAULT_VIEW.text : view.text
|
|
52
|
+
});
|
|
53
|
+
/**
|
|
54
|
+
* Moves the rows out of the way animated when the order changes: each row starts from where it was drawn and slides
|
|
55
|
+
* to its new place (the dragged row aside, which follows the pointer); without motion they jump.
|
|
56
|
+
*
|
|
57
|
+
* @param list - the list.
|
|
58
|
+
* @param order - the rows' ids in their order.
|
|
59
|
+
* @param draggedId - the dragged row's id, if one is dragged.
|
|
60
|
+
*/
|
|
61
|
+
const useShiftedRows = (list, order, draggedId) => {
|
|
62
|
+
const tops = useRef(new Map());
|
|
63
|
+
// biome-ignore lint/correctness/useExhaustiveDependencies: the rows are measured again whenever their order changes
|
|
64
|
+
useLayoutEffect(() => {
|
|
65
|
+
const rows = [...(list.current?.querySelectorAll("[data-control]") ?? [])];
|
|
66
|
+
const isReduced = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
67
|
+
for (const row of rows) {
|
|
68
|
+
const id = row.dataset["control"] ?? "";
|
|
69
|
+
const before = tops.current.get(id);
|
|
70
|
+
tops.current.set(id, row.offsetTop);
|
|
71
|
+
if (before === undefined || id === draggedId || isReduced)
|
|
72
|
+
continue;
|
|
73
|
+
// where the row is drawn now: its last place plus what a running move still shifts it by
|
|
74
|
+
const shift = new DOMMatrixReadOnly(getComputedStyle(row).transform).m42;
|
|
75
|
+
const start = before + shift - row.offsetTop;
|
|
76
|
+
for (const running of row.getAnimations())
|
|
77
|
+
running.cancel();
|
|
78
|
+
if (start === 0)
|
|
79
|
+
continue;
|
|
80
|
+
row.animate([{ transform: `translateY(${start}px)` }, { transform: "translateY(0)" }], {
|
|
81
|
+
duration: SHIFT_MS,
|
|
82
|
+
easing: SHIFT_EASING
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}, [order]);
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* The controls hidden in the menu, at its foot: their count, which opens them as rows like the others, each one usable
|
|
89
|
+
* while it stays hidden, with its pin (a hidden control may still sit on the toolbar) and a button that shows it
|
|
90
|
+
* again in its place.
|
|
91
|
+
*
|
|
92
|
+
* @param props - the hidden controls, the arrangement, and what every control shares.
|
|
93
|
+
*/
|
|
94
|
+
const HiddenControls = ({ hidden, layout, ...context }) => {
|
|
95
|
+
const [isOpen, setIsOpen] = useState(false);
|
|
96
|
+
const listId = useId();
|
|
97
|
+
if (hidden.length === 0)
|
|
98
|
+
return null;
|
|
99
|
+
return (_jsxs("div", { className: "forgebook-hidden-controls", children: [_jsxs("button", { type: "button", className: "forgebook-text-button", "aria-expanded": isOpen, "aria-controls": listId, onClick: () => setIsOpen(!isOpen), children: [STRINGS.hiddenControls(hidden.length, hidden.filter((each) => each.isPinned).length), _jsx(Icon, { name: isOpen ? "chevronDown" : "chevronRight", size: 12 })] }), isOpen ? (_jsx("ul", { id: listId, className: "forgebook-arrange-list", children: hidden.map(({ control, isPinned }) => {
|
|
100
|
+
const label = controlLabel(control);
|
|
101
|
+
return (_jsxs("li", { className: "forgebook-arrange", "data-control": control.id, "data-hidden": "", children: [_jsx("span", { className: "forgebook-arrange__no-handle" }), _jsx("span", { className: "forgebook-popover__label", children: label }), _jsx("div", { className: "forgebook-arrange__control", children: _jsx(ToolbarControl, { control: control, form: "row", ...context }) }), _jsx("button", { type: "button", className: "forgebook-icon-button", "aria-label": STRINGS.pinControl(label), title: STRINGS.pinControl(label), "aria-pressed": isPinned, onClick: () => layout.pin(control.id, !isPinned), children: _jsx(Icon, { name: "pin", size: 14 }) }), _jsx("button", { type: "button", className: "forgebook-icon-button", "aria-label": STRINGS.showControl(label), title: STRINGS.showControl(label), onClick: () => layout.hide(control.id, false), children: _jsx(Icon, { name: "eye", size: 14 }) })] }, control.id));
|
|
102
|
+
}) })) : null] }));
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* The View menu.
|
|
106
|
+
*
|
|
107
|
+
* @param props - the arrangement, whether the person changed one of the menu's values, and what every control shares.
|
|
108
|
+
*/
|
|
109
|
+
export const ViewMenu = ({ layout, ownView, movedIds, ...context }) => {
|
|
110
|
+
const { isOpen, isDrawn, setIsOpen, buttonRef, panelRef, panelId } = usePopover();
|
|
111
|
+
const { switches } = useCatalogue();
|
|
112
|
+
const listRef = useRef(null);
|
|
113
|
+
const drag = useRef(undefined);
|
|
114
|
+
const [draggedId, setDraggedId] = useState(undefined);
|
|
115
|
+
const [announced, setAnnounced] = useState("");
|
|
116
|
+
const hintId = useId();
|
|
117
|
+
const shown = layout.placed.filter((each) => !each.isHidden);
|
|
118
|
+
const hidden = layout.placed.filter((each) => each.isHidden);
|
|
119
|
+
const ids = menuControlIds(layout.placed);
|
|
120
|
+
const order = shown.map((each) => each.control.id).join(",");
|
|
121
|
+
useShiftedRows(listRef, order, draggedId);
|
|
122
|
+
// the menu never runs past the window's edges: a narrow window keeps it inside, its widest values then scroll; a
|
|
123
|
+
// short one scrolls its rows, the foot staying in sight
|
|
124
|
+
useLayoutEffect(() => {
|
|
125
|
+
const panel = panelRef.current;
|
|
126
|
+
if (!isDrawn || panel === null)
|
|
127
|
+
return;
|
|
128
|
+
const keepInside = () => {
|
|
129
|
+
const box = panel.getBoundingClientRect();
|
|
130
|
+
panel.style.maxWidth = `${window.innerWidth - box.left - EDGE_PX}px`;
|
|
131
|
+
panel.style.maxHeight = `${window.innerHeight - box.top - EDGE_PX}px`;
|
|
132
|
+
};
|
|
133
|
+
keepInside();
|
|
134
|
+
window.addEventListener("resize", keepInside);
|
|
135
|
+
return () => window.removeEventListener("resize", keepInside);
|
|
136
|
+
}, [isDrawn, panelRef]);
|
|
137
|
+
/** Keeps the dragged row under the pointer, from where its row is drawn now. */
|
|
138
|
+
const follow = () => {
|
|
139
|
+
const current = drag.current;
|
|
140
|
+
const row = listRef.current?.querySelector(`[data-control="${current?.id}"]`);
|
|
141
|
+
if (current === undefined || row === null || row === undefined)
|
|
142
|
+
return;
|
|
143
|
+
const offset = current.pointerY - current.startY - (row.offsetTop - current.startTop);
|
|
144
|
+
row.style.transform = `translateY(${offset}px)`;
|
|
145
|
+
};
|
|
146
|
+
// after a move, the dragged row is drawn at its new place: it stays under the pointer
|
|
147
|
+
// biome-ignore lint/correctness/useExhaustiveDependencies: follows each new order while a row is dragged
|
|
148
|
+
useLayoutEffect(follow, [order]);
|
|
149
|
+
/** The list's rows as they are drawn now. */
|
|
150
|
+
const rowsNow = () => [
|
|
151
|
+
...(listRef.current?.querySelectorAll("[data-control]") ?? [])
|
|
152
|
+
];
|
|
153
|
+
/**
|
|
154
|
+
* Where the dragged row goes: past every other row whose middle its own middle passed, both read from the layout
|
|
155
|
+
* (never from how a running move draws them, which would move the target under the pointer and back).
|
|
156
|
+
*
|
|
157
|
+
* @param id - the dragged row's id.
|
|
158
|
+
* @param current - the drag.
|
|
159
|
+
*/
|
|
160
|
+
const targetIndex = (id, current) => {
|
|
161
|
+
const rows = rowsNow();
|
|
162
|
+
const row = rows.find((each) => each.dataset["control"] === id);
|
|
163
|
+
if (row === undefined)
|
|
164
|
+
return 0;
|
|
165
|
+
const center = current.startTop + (current.pointerY - current.startY) + row.offsetHeight / 2;
|
|
166
|
+
return rows.filter((each) => each !== row && center > each.offsetTop + each.offsetHeight / 2).length;
|
|
167
|
+
};
|
|
168
|
+
// a menu closed while a row is dragged ends the drag
|
|
169
|
+
const stopDrag = useRef(undefined);
|
|
170
|
+
useEffect(() => () => stopDrag.current?.(), []);
|
|
171
|
+
const grab = (event, id) => {
|
|
172
|
+
const row = event.currentTarget.closest("[data-control]");
|
|
173
|
+
if (row === null || event.button !== 0)
|
|
174
|
+
return;
|
|
175
|
+
// no text selection while dragging; the handle still takes the focus, so the arrow keys move its row next
|
|
176
|
+
event.preventDefault();
|
|
177
|
+
event.currentTarget.focus();
|
|
178
|
+
window.getSelection()?.removeAllRanges();
|
|
179
|
+
drag.current = { id, startY: event.clientY, startTop: row.offsetTop, pointerY: event.clientY };
|
|
180
|
+
setDraggedId(id);
|
|
181
|
+
// the window, not the handle, follows the pointer: moving the row in the page takes the handle's pointer capture
|
|
182
|
+
// away, and the release would never arrive
|
|
183
|
+
const moveTo = (moved) => {
|
|
184
|
+
const current = drag.current;
|
|
185
|
+
if (current === undefined)
|
|
186
|
+
return;
|
|
187
|
+
current.pointerY = moved.clientY;
|
|
188
|
+
follow();
|
|
189
|
+
const index = targetIndex(id, current);
|
|
190
|
+
if (index !== rowsNow().findIndex((each) => each.dataset["control"] === id))
|
|
191
|
+
layout.move(id, index);
|
|
192
|
+
};
|
|
193
|
+
const drop = () => {
|
|
194
|
+
window.removeEventListener("pointermove", moveTo);
|
|
195
|
+
window.removeEventListener("pointerup", drop);
|
|
196
|
+
window.removeEventListener("pointercancel", drop);
|
|
197
|
+
stopDrag.current = undefined;
|
|
198
|
+
drag.current = undefined;
|
|
199
|
+
setDraggedId(undefined);
|
|
200
|
+
// the row settles into its place from where the pointer left it
|
|
201
|
+
const dropped = rowsNow().find((each) => each.dataset["control"] === id);
|
|
202
|
+
if (dropped === undefined)
|
|
203
|
+
return;
|
|
204
|
+
const from = dropped.style.transform;
|
|
205
|
+
dropped.style.transform = "";
|
|
206
|
+
if (from !== "" && !window.matchMedia("(prefers-reduced-motion: reduce)").matches)
|
|
207
|
+
dropped.animate([{ transform: from }, { transform: "translateY(0)" }], {
|
|
208
|
+
duration: SHIFT_MS,
|
|
209
|
+
easing: SHIFT_EASING
|
|
210
|
+
});
|
|
211
|
+
};
|
|
212
|
+
stopDrag.current = drop;
|
|
213
|
+
window.addEventListener("pointermove", moveTo);
|
|
214
|
+
window.addEventListener("pointerup", drop);
|
|
215
|
+
window.addEventListener("pointercancel", drop);
|
|
216
|
+
};
|
|
217
|
+
return (_jsxs("div", { className: "forgebook-view-menu", children: [_jsxs("button", { ref: buttonRef, type: "button", className: "forgebook-button", "aria-expanded": isOpen, "aria-controls": panelId, onClick: (event) => setIsOpen(!isOpen, event), children: [_jsx(Icon, { name: "sliders", size: 14 }), STRINGS.view, hasViewChanges(ownView, switches, ids) ? (_jsx("span", { className: "forgebook-dot", role: "img", "aria-label": STRINGS.viewChanged })) : null, _jsx(Icon, { name: "chevronDown", size: 12 })] }), isDrawn ? (_jsxs("div", { ref: panelRef, id: panelId, className: "forgebook-popover forgebook-popover--arrange", role: "dialog", "aria-label": STRINGS.view, children: [_jsxs("div", { className: "forgebook-popover__body", children: [_jsx(NamedViews, { view: context.view, ownView: ownView, onViewChange: context.onViewChange }), _jsx("ol", { ref: listRef, className: "forgebook-arrange-list", "data-dragging": draggedId === undefined ? undefined : "", children: shown.map((each, index) => (_jsx(ControlRow, { each: each, index: index, count: shown.length, isDragged: each.control.id === draggedId, isMoved: movedIds.includes(each.control.id), isChanged: hasViewChanges(ownView, switches, [each.control.id]), layout: layout, hintId: hintId, onGrab: grab, onAnnounce: setAnnounced, ...context }, each.control.id))) }), _jsx("span", { id: hintId, className: "forgebook-visually-hidden", children: STRINGS.moveControlHint }), _jsx("span", { className: "forgebook-visually-hidden", "aria-live": "polite", children: announced }), _jsx(HiddenControls, { hidden: hidden, layout: layout, ...context }), _jsxs("label", { className: "forgebook-wrap-choice", children: [_jsx("input", { type: "checkbox", role: "switch", "aria-checked": layout.isWrapped, className: "forgebook-switch", checked: layout.isWrapped, onChange: (event) => layout.setIsWrapped(event.currentTarget.checked) }), STRINGS.wrapToolbar] })] }), _jsxs("div", { className: "forgebook-popover__foot", children: [_jsx("button", { type: "button", className: "forgebook-text-button", onClick: () => context.onViewChange(withDefaults(context.view, switches, ids)), children: STRINGS.resetView }), _jsx("button", { type: "button", className: "forgebook-text-button", title: STRINGS.toolbarInBrowser, disabled: !layout.isArranged, onClick: layout.reset, children: STRINGS.resetToolbar }), _jsx("span", { className: "forgebook-popover__note", children: STRINGS.viewInAddress })] })] })) : null] }));
|
|
218
|
+
};
|
|
219
|
+
//# sourceMappingURL=ViewMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ViewMenu.js","sourceRoot":"","sources":["../../../src/shell/ViewMenu.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAML,SAAS,EACT,KAAK,EACL,eAAe,EACf,MAAM,EACN,QAAQ,EACT,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,YAAY,EAAE,cAAc,EAAkB,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAa,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAkB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAuB,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAsB,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,uEAAuE;AACvE,MAAM,OAAO,GAAG,EAAE,CAAC;AAEnB,uGAAuG;AACvG,MAAM,QAAQ,GAAG,GAAG,CAAC;AAErB,4DAA4D;AAC5D,MAAM,YAAY,GAAG,gCAAgC,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAgC,EAAY,EAAE,CAC3E,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAExG;;;;;;GAMG;AACH,MAAM,YAAY,GAAG,CACnB,IAAe,EACf,QAA+B,EAC/B,GAAsB,EACX,EAAE,CAAC,CAAC;IACf,GAAG,IAAI;IACP,QAAQ,EAAE;QACR,GAAG,IAAI,CAAC,QAAQ;QAChB,GAAG,MAAM,CAAC,WAAW,CACnB,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CACxF;KACF;IACD,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ;IAC1E,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM;IAClE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;CAC3D,CAAC,CAAC;AAUH;;;;;;;GAOG;AACH,MAAM,cAAc,GAAG,CACrB,IAAwC,EACxC,KAAa,EACb,SAA6B,EACvB,EAAE;IACR,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,GAAG,EAAkB,CAAC,CAAC;IAC/C,oHAAoH;IACpH,eAAe,CAAC,GAAG,EAAE;QACnB,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAc,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACxF,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC,OAAO,CAAC;QAChF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;YACpC,IAAI,MAAM,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,IAAI,SAAS;gBAAE,SAAS;YACpE,yFAAyF;YACzF,MAAM,KAAK,GAAG,IAAI,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC;YACzE,MAAM,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,GAAG,CAAC,SAAS,CAAC;YAC7C,KAAK,MAAM,OAAO,IAAI,GAAG,CAAC,aAAa,EAAE;gBAAE,OAAO,CAAC,MAAM,EAAE,CAAC;YAC5D,IAAI,KAAK,KAAK,CAAC;gBAAE,SAAS;YAC1B,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,KAAK,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,EAAE;gBACrF,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,YAAY;aACrB,CAAC,CAAC;QACL,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AACd,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,cAAc,GAAG,CAAC,EACtB,MAAM,EACN,MAAM,EACN,GAAG,OAAO,EAIX,EAAa,EAAE;IACd,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC;IACvB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,OAAO,CACL,eAAK,SAAS,EAAC,2BAA2B,aACxC,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,uBAAuB,mBAClB,MAAM,mBACN,MAAM,EACrB,OAAO,EAAE,GAAS,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,aAEtC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EACrF,KAAC,IAAI,IAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,GAAI,IAC1D,EACR,MAAM,CAAC,CAAC,CAAC,CACR,aAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAC,wBAAwB,YAC/C,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;oBACpC,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;oBACpC,OAAO,CACL,cAAqB,SAAS,EAAC,mBAAmB,kBAAe,OAAO,CAAC,EAAE,iBAAc,EAAE,aAEzF,eAAM,SAAS,EAAC,8BAA8B,GAAG,EACjD,eAAM,SAAS,EAAC,0BAA0B,YAAE,KAAK,GAAQ,EACzD,cAAK,SAAS,EAAC,4BAA4B,YACzC,KAAC,cAAc,IAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,KAAK,KAAK,OAAO,GAAI,GACxD,EACN,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,uBAAuB,gBACrB,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EACrC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,kBAClB,QAAQ,EACtB,OAAO,EAAE,GAAS,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,YAEtD,KAAC,IAAI,IAAC,IAAI,EAAC,KAAK,EAAC,IAAI,EAAE,EAAE,GAAI,GACtB,EACT,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,uBAAuB,gBACrB,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EACtC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EACjC,OAAO,EAAE,GAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,YAEnD,KAAC,IAAI,IAAC,IAAI,EAAC,KAAK,EAAC,IAAI,EAAE,EAAE,GAAI,GACtB,KAzBF,OAAO,CAAC,EAAE,CA0Bd,CACN,CAAC;gBACJ,CAAC,CAAC,GACC,CACN,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACvB,MAAM,EACN,OAAO,EACP,QAAQ,EACR,GAAG,OAAO,EAOX,EAAa,EAAE;IACd,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAAC;IAClF,MAAM,EAAE,QAAQ,EAAE,GAAG,YAAY,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,MAAM,CAAmB,SAAS,CAAC,CAAC;IACjD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAqB,SAAS,CAAC,CAAC;IAC1E,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC;IACvB,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7D,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAC1C,iHAAiH;IACjH,wDAAwD;IACxD,eAAe,CAAC,GAAG,EAAE;QACnB,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,OAAO,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO;QACvC,MAAM,UAAU,GAAG,GAAS,EAAE;YAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC;YAC1C,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,GAAG,OAAO,IAAI,CAAC;YACrE,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,GAAG,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,GAAG,GAAG,OAAO,IAAI,CAAC;QACxE,CAAC,CAAC;QACF,UAAU,EAAE,CAAC;QACb,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC9C,OAAO,GAAS,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IAExB,gFAAgF;IAChF,MAAM,MAAM,GAAG,GAAS,EAAE;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,aAAa,CAAc,kBAAkB,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3F,IAAI,OAAO,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO;QACvE,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtF,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,cAAc,MAAM,KAAK,CAAC;IAClD,CAAC,CAAC;IACF,sFAAsF;IACtF,yGAAyG;IACzG,eAAe,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEjC,6CAA6C;IAC7C,MAAM,OAAO,GAAG,GAAkB,EAAE,CAAC;QACnC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,gBAAgB,CAAc,gBAAgB,CAAC,IAAI,EAAE,CAAC;KAC5E,CAAC;IAEF;;;;;;OAMG;IACH,MAAM,WAAW,GAAG,CAAC,EAAU,EAAE,OAAa,EAAU,EAAE;QACxD,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAChE,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC;QAC7F,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IACvG,CAAC,CAAC;IAEF,qDAAqD;IACrD,MAAM,QAAQ,GAAG,MAAM,CAA2B,SAAS,CAAC,CAAC;IAC7D,SAAS,CAAC,GAAG,EAAE,CAAC,GAAS,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAEtD,MAAM,IAAI,GAAG,CAAC,KAAsC,EAAE,EAAU,EAAQ,EAAE;QACxE,MAAM,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAc,gBAAgB,CAAC,CAAC;QACvE,IAAI,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC/C,0GAA0G;QAC1G,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,CAAC,YAAY,EAAE,EAAE,eAAe,EAAE,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QAC/F,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,iHAAiH;QACjH,2CAA2C;QAC3C,MAAM,MAAM,GAAG,CAAC,KAA8B,EAAQ,EAAE;YACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAC7B,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO;YAClC,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;YACjC,MAAM,EAAE,CAAC;YACT,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACvC,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACtG,CAAC,CAAC;QACF,MAAM,IAAI,GAAG,GAAS,EAAE;YACtB,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAClD,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC9C,MAAM,CAAC,mBAAmB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;YAClD,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC;YAC7B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,gEAAgE;YAChE,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;YACzE,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO;YAClC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC;YAC7B,IAAI,IAAI,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC,OAAO;gBAC/E,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,EAAE;oBACrE,QAAQ,EAAE,QAAQ;oBAClB,MAAM,EAAE,YAAY;iBACrB,CAAC,CAAC;QACP,CAAC,CAAC;QACF,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,gBAAgB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,qBAAqB,aAClC,kBACE,GAAG,EAAE,SAAS,EACd,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,kBAAkB,mBACb,MAAM,mBACN,OAAO,EACtB,OAAO,EAAE,CAAC,KAAoC,EAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,aAElF,KAAC,IAAI,IAAC,IAAI,EAAC,SAAS,EAAC,IAAI,EAAE,EAAE,GAAI,EAChC,OAAO,CAAC,IAAI,EACZ,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CACxC,eAAM,SAAS,EAAC,eAAe,EAAC,IAAI,EAAC,KAAK,gBAAa,OAAO,CAAC,WAAW,GAAI,CAC/E,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,IAAI,IAAC,IAAI,EAAC,aAAa,EAAC,IAAI,EAAE,EAAE,GAAI,IAC9B,EACR,OAAO,CAAC,CAAC,CAAC,CACT,eACE,GAAG,EAAE,QAAQ,EACb,EAAE,EAAE,OAAO,EACX,SAAS,EAAC,8CAA8C,EACxD,IAAI,EAAC,QAAQ,gBACD,OAAO,CAAC,IAAI,aAGxB,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,UAAU,IAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,GAAI,EACxF,aACE,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,wBAAwB,mBACnB,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,YAEtD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAC1B,KAAC,UAAU,IAET,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,CAAC,MAAM,EACnB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,EACxC,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAC3C,SAAS,EAAE,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAC/D,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,YAAY,KACpB,OAAO,IAXN,IAAI,CAAC,OAAO,CAAC,EAAE,CAYpB,CACH,CAAC,GACC,EACL,eAAM,EAAE,EAAE,MAAM,EAAE,SAAS,EAAC,2BAA2B,YACpD,OAAO,CAAC,eAAe,GACnB,EACP,eAAM,SAAS,EAAC,2BAA2B,eAAW,QAAQ,YAC3D,SAAS,GACL,EACP,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAM,OAAO,GAAI,EAC/D,iBAAO,SAAS,EAAC,uBAAuB,aACtC,gBACE,IAAI,EAAC,UAAU,EACf,IAAI,EAAC,QAAQ,kBACC,MAAM,CAAC,SAAS,EAC9B,SAAS,EAAC,kBAAkB,EAC5B,OAAO,EAAE,MAAM,CAAC,SAAS,EACzB,QAAQ,EAAE,CAAC,KAAoC,EAAQ,EAAE,CACvD,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,GAElD,EACD,OAAO,CAAC,WAAW,IACd,IACJ,EACN,eAAK,SAAS,EAAC,yBAAyB,aACtC,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,uBAAuB,EACjC,OAAO,EAAE,GAAS,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,YAEnF,OAAO,CAAC,SAAS,GACX,EACT,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,uBAAuB,EACjC,KAAK,EAAE,OAAO,CAAC,gBAAgB,EAC/B,QAAQ,EAAE,CAAC,MAAM,CAAC,UAAU,EAC5B,OAAO,EAAE,MAAM,CAAC,KAAK,YAEpB,OAAO,CAAC,YAAY,GACd,EACT,eAAM,SAAS,EAAC,yBAAyB,YAAE,OAAO,CAAC,aAAa,GAAQ,IACpE,IACF,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A control's next value, for its key: the view with one control moved on by a step through its values, as its
|
|
3
|
+
* toolbar control would set it.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Pure. A control its toolbar control leaves disabled is left as it is here too: a switch or a background the story
|
|
7
|
+
* fixes (or a width), and a control the compare view draws side by side.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import type { CatalogueSettings } from "../catalogue.ts";
|
|
12
|
+
import type { FixedView } from "../storyGlobals.ts";
|
|
13
|
+
import { type ViewState } from "../viewState.ts";
|
|
14
|
+
/** What a cycle reads of the catalogue: its controls' values. */
|
|
15
|
+
type CycledCatalogue = Pick<CatalogueSettings, "switches" | "backdrops" | "textSizes" | "widths">;
|
|
16
|
+
/**
|
|
17
|
+
* The view with a control moved on by a step, or none when the control cannot be set now.
|
|
18
|
+
*
|
|
19
|
+
* @param view - the view shown.
|
|
20
|
+
* @param id - the control's id.
|
|
21
|
+
* @param step - 1 forward, -1 back.
|
|
22
|
+
* @param catalogue - the controls' values.
|
|
23
|
+
* @param fixed - what the shown story fixes of the view.
|
|
24
|
+
* @param isStoryPage - whether a story's page is shown (the compare view draws there).
|
|
25
|
+
*/
|
|
26
|
+
export declare const cycledView: (view: ViewState, id: string, step: 1 | -1, catalogue: CycledCatalogue, fixed: FixedView, isStoryPage: boolean) => ViewState | undefined;
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=controlCycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"controlCycle.d.ts","sourceRoot":"","sources":["../../../src/shell/controlCycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAmD,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGlG,iEAAiE;AACjE,KAAK,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC,CAAC;AA2BlG;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,GACrB,MAAM,SAAS,EACf,IAAI,MAAM,EACV,MAAM,CAAC,GAAG,CAAC,CAAC,EACZ,WAAW,eAAe,EAC1B,OAAO,SAAS,EAChB,aAAa,OAAO,KACnB,SAAS,GAAG,SAYd,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { cycledValue, switchValues } from "../controlKeys.js";
|
|
2
|
+
import { PLAIN_BACKDROP, SHEETS_CHOICES } from "../viewState.js";
|
|
3
|
+
import { withSwitch } from "./switchView.js";
|
|
4
|
+
/**
|
|
5
|
+
* The view with one of Forgebook's own controls moved on.
|
|
6
|
+
*
|
|
7
|
+
* @param view - the view.
|
|
8
|
+
* @param id - the control's id.
|
|
9
|
+
* @param step - 1 forward, -1 back.
|
|
10
|
+
* @param catalogue - the controls' values.
|
|
11
|
+
*/
|
|
12
|
+
const cycledOwn = (view, id, step, catalogue) => {
|
|
13
|
+
if (id === "backdrop") {
|
|
14
|
+
const backdrops = [PLAIN_BACKDROP, ...catalogue.backdrops.map((backdrop) => backdrop.id)];
|
|
15
|
+
return { ...view, backdrop: cycledValue(backdrops, view.backdrop, step) };
|
|
16
|
+
}
|
|
17
|
+
if (id === "sheets")
|
|
18
|
+
return { ...view, sheets: cycledValue(SHEETS_CHOICES, view.sheets, step) };
|
|
19
|
+
if (id === "text")
|
|
20
|
+
return { ...view, text: cycledValue(catalogue.textSizes, view.text, step) };
|
|
21
|
+
if (id !== "width")
|
|
22
|
+
return undefined;
|
|
23
|
+
const widths = ["fill", ...catalogue.widths.map((preset) => preset.width)];
|
|
24
|
+
return { ...view, width: cycledValue(widths, view.width, step) };
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* The view with a control moved on by a step, or none when the control cannot be set now.
|
|
28
|
+
*
|
|
29
|
+
* @param view - the view shown.
|
|
30
|
+
* @param id - the control's id.
|
|
31
|
+
* @param step - 1 forward, -1 back.
|
|
32
|
+
* @param catalogue - the controls' values.
|
|
33
|
+
* @param fixed - what the shown story fixes of the view.
|
|
34
|
+
* @param isStoryPage - whether a story's page is shown (the compare view draws there).
|
|
35
|
+
*/
|
|
36
|
+
export const cycledView = (view, id, step, catalogue, fixed, isStoryPage) => {
|
|
37
|
+
if (isStoryPage && view.compare.includes(id))
|
|
38
|
+
return undefined;
|
|
39
|
+
const each = catalogue.switches.find((candidate) => candidate.id === id);
|
|
40
|
+
if (each !== undefined) {
|
|
41
|
+
if (fixed.switches[id] !== undefined)
|
|
42
|
+
return undefined;
|
|
43
|
+
const current = view.switches[id] ?? each.default;
|
|
44
|
+
return withSwitch(view, each, cycledValue(switchValues(each), current, step));
|
|
45
|
+
}
|
|
46
|
+
const isFixed = (id === "backdrop" && fixed.backdrop !== undefined) || (id === "width" && fixed.width !== undefined);
|
|
47
|
+
if (isFixed)
|
|
48
|
+
return undefined;
|
|
49
|
+
return cycledOwn(view, id, step, catalogue);
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=controlCycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"controlCycle.js","sourceRoot":"","sources":["../../../src/shell/controlCycle.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,cAAc,EAAmC,MAAM,iBAAiB,CAAC;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAK7C;;;;;;;GAOG;AACH,MAAM,SAAS,GAAG,CAChB,IAAe,EACf,EAAU,EACV,IAAY,EACZ,SAA0B,EACH,EAAE;IACzB,IAAI,EAAE,KAAK,UAAU,EAAE,CAAC;QACtB,MAAM,SAAS,GAAG,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1F,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,EAAE,KAAK,QAAQ;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;IAChG,IAAI,EAAE,KAAK,MAAM;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;IAC/F,IAAI,EAAE,KAAK,OAAO;QAAE,OAAO,SAAS,CAAC;IACrC,MAAM,MAAM,GAAiB,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACzF,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;AACnE,CAAC,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,IAAe,EACf,EAAU,EACV,IAAY,EACZ,SAA0B,EAC1B,KAAgB,EAChB,WAAoB,EACG,EAAE;IACzB,IAAI,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/D,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACzE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC;QAClD,OAAO,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,OAAO,GACX,CAAC,EAAE,KAAK,UAAU,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;IACvG,IAAI,OAAO;QAAE,OAAO,SAAS,CAAC;IAC9B,OAAO,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;AAC9C,CAAC,CAAC"}
|
|
@@ -15,6 +15,7 @@ import type { DockTab } from "./Dock.tsx";
|
|
|
15
15
|
import { type TextArgNote } from "./PropsTab.tsx";
|
|
16
16
|
import type { EventCall } from "./useFrameMessages.ts";
|
|
17
17
|
import type { Loaded } from "./useLoaded.ts";
|
|
18
|
+
import type { WorstCaseState } from "./worstArgs.ts";
|
|
18
19
|
/** What the tabs are built from. */
|
|
19
20
|
export type DockTabsInput = {
|
|
20
21
|
/** The component's docs, as loaded. */
|
|
@@ -37,6 +38,8 @@ export type DockTabsInput = {
|
|
|
37
38
|
readonly onValueChange: (name: string, value: ArgValue | undefined) => void;
|
|
38
39
|
/** Removes every value the panel set. */
|
|
39
40
|
readonly onReset: () => void;
|
|
41
|
+
/** The worst case: whether it can be set, whether it is on, and the spills the frame counts. */
|
|
42
|
+
readonly worstCase: WorstCaseState;
|
|
40
43
|
/** The values the source names for types the panel cannot write. */
|
|
41
44
|
readonly namedValues: NamedValues | undefined;
|
|
42
45
|
/** The props the story gives a text by its key, by name. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dockTabs.d.ts","sourceRoot":"","sources":["../../../src/shell/dockTabs.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG1F,OAAO,EAAE,KAAK,aAAa,EAA8B,MAAM,gBAAgB,CAAC;AAChF,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAI1C,OAAO,EAAY,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"dockTabs.d.ts","sourceRoot":"","sources":["../../../src/shell/dockTabs.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG1F,OAAO,EAAE,KAAK,aAAa,EAA8B,MAAM,gBAAgB,CAAC;AAChF,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAI1C,OAAO,EAAY,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,oCAAoC;AACpC,MAAM,MAAM,aAAa,GAAG;IAC1B,uCAAuC;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACrC,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACrC,+BAA+B;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,kFAAkF;IAClF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,8CAA8C;IAC9C,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,mFAAmF;IACnF,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,4GAA4G;IAC5G,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,0EAA0E;IAC1E,QAAQ,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,SAAS,KAAK,IAAI,CAAC;IAC5E,yCAAyC;IACzC,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;IAC7B,gGAAgG;IAChG,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,oEAAoE;IACpE,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IAC9C,4DAA4D;IAC5D,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IACzD,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAC;IACrC,wBAAwB;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC;IAClC,qFAAqF;IACrF,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,CAAC;IACtC,2BAA2B;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC;IACjC,+BAA+B;IAC/B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;CAC5C,CAAC;AAqJF;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,aAAa,KAAG,OAAO,EAStD,CAAC"}
|
|
@@ -20,7 +20,7 @@ const propsTab = (input, props) => props.some((prop) => prop.kind !== "event")
|
|
|
20
20
|
{
|
|
21
21
|
id: "props",
|
|
22
22
|
label: STRINGS.tabs.props,
|
|
23
|
-
content: (_jsx(PropsTab, { props: props, values: input.values, controls: input.controls, onValueChange: input.onValueChange, onReset: input.onReset, namedValues: input.namedValues, textArgs: input.textArgs }))
|
|
23
|
+
content: (_jsx(PropsTab, { props: props, values: input.values, controls: input.controls, onValueChange: input.onValueChange, onReset: input.onReset, worstCase: input.worstCase, namedValues: input.namedValues, textArgs: input.textArgs }))
|
|
24
24
|
}
|
|
25
25
|
]
|
|
26
26
|
: [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dockTabs.js","sourceRoot":"","sources":["../../../src/shell/dockTabs.tsx"],"names":[],"mappings":";AAUA,OAAO,EAAsC,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAKhF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAmB,MAAM,cAAe,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAe,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,sBAAuB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,eAAgB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAoB,MAAM,eAAgB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"dockTabs.js","sourceRoot":"","sources":["../../../src/shell/dockTabs.tsx"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,13 @@ declare const PATHS: {
|
|
|
31
31
|
readonly minus: "M3.5 8h9";
|
|
32
32
|
readonly hash: "M6 2.5 5 13.5M11 2.5l-1 11M3 6h10.5M2.5 10H13";
|
|
33
33
|
readonly check: "m3.5 8.5 3 3 6-7";
|
|
34
|
+
readonly expand: "M9.5 2.5h4v4M6.5 13.5h-4v-4M13.5 2.5 9 7M2.5 13.5 7 9";
|
|
35
|
+
readonly collapse: "M13.5 6.5h-4v-4M2.5 9.5h4v4M9.5 6.5 14 2M6.5 9.5 2 14";
|
|
36
|
+
readonly grip: "M6 4h0M10 4h0M6 8h0M10 8h0M6 12h0M10 12h0";
|
|
37
|
+
readonly pin: "M6 2.5h4M7 2.5V6.5L4.5 9.5h7L9 6.5V2.5M8 9.5v4";
|
|
38
|
+
readonly eye: "M2 8s2.2-4 6-4 6 4 6 4-2.2 4-6 4-6-4-6-4ZM8 6.5a1.5 1.5 0 1 0 0 3a1.5 1.5 0 0 0 0-3Z";
|
|
39
|
+
readonly info: "M8 1.75a6.25 6.25 0 1 0 0 12.5a6.25 6.25 0 0 0 0-12.5ZM8 7.25v4M8 4.9v.1";
|
|
40
|
+
readonly eyeOff: "M2 8s2.2-4 6-4 6 4 6 4-2.2 4-6 4-6-4-6-4ZM8 6.5a1.5 1.5 0 1 0 0 3a1.5 1.5 0 0 0 0-3ZM3 13 13 3";
|
|
34
41
|
};
|
|
35
42
|
/** An icon's name. */
|
|
36
43
|
export type IconName = keyof typeof PATHS;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../src/shell/icons.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,0BAA0B;AAC1B,QAAA,MAAM,KAAK
|
|
1
|
+
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../src/shell/icons.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,0BAA0B;AAC1B,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCD,CAAC;AAEX,sBAAsB;AACtB,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,KAAK,CAAC;AAE1C;;;;GAIG;AACH,eAAO,MAAM,IAAI,GAAI,gBAAqB;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,KAAG,SAc/F,CAAC"}
|
package/dist/src/shell/icons.js
CHANGED
|
@@ -25,7 +25,14 @@ const PATHS = {
|
|
|
25
25
|
plus: "M8 3.5v9M3.5 8h9",
|
|
26
26
|
minus: "M3.5 8h9",
|
|
27
27
|
hash: "M6 2.5 5 13.5M11 2.5l-1 11M3 6h10.5M2.5 10H13",
|
|
28
|
-
check: "m3.5 8.5 3 3 6-7"
|
|
28
|
+
check: "m3.5 8.5 3 3 6-7",
|
|
29
|
+
expand: "M9.5 2.5h4v4M6.5 13.5h-4v-4M13.5 2.5 9 7M2.5 13.5 7 9",
|
|
30
|
+
collapse: "M13.5 6.5h-4v-4M2.5 9.5h4v4M9.5 6.5 14 2M6.5 9.5 2 14",
|
|
31
|
+
grip: "M6 4h0M10 4h0M6 8h0M10 8h0M6 12h0M10 12h0",
|
|
32
|
+
pin: "M6 2.5h4M7 2.5V6.5L4.5 9.5h7L9 6.5V2.5M8 9.5v4",
|
|
33
|
+
eye: "M2 8s2.2-4 6-4 6 4 6 4-2.2 4-6 4-6-4-6-4ZM8 6.5a1.5 1.5 0 1 0 0 3a1.5 1.5 0 0 0 0-3Z",
|
|
34
|
+
info: "M8 1.75a6.25 6.25 0 1 0 0 12.5a6.25 6.25 0 0 0 0-12.5ZM8 7.25v4M8 4.9v.1",
|
|
35
|
+
eyeOff: "M2 8s2.2-4 6-4 6 4 6 4-2.2 4-6 4-6-4-6-4ZM8 6.5a1.5 1.5 0 1 0 0 3a1.5 1.5 0 0 0 0-3ZM3 13 13 3"
|
|
29
36
|
};
|
|
30
37
|
/**
|
|
31
38
|
* One icon, 16 px by default, in the current colour.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icons.js","sourceRoot":"","sources":["../../../src/shell/icons.tsx"],"names":[],"mappings":";AAOA,0BAA0B;AAC1B,MAAM,KAAK,GAAG;IACZ,GAAG,EAAE,2HAA2H;IAChI,IAAI,EAAE,oDAAoD;IAC1D,OAAO,EAAE,4BAA4B;IACrC,QAAQ,EAAE,2CAA2C;IACrD,OAAO,EAAE,yEAAyE;IAClF,WAAW,EAAE,cAAc;IAC3B,YAAY,EAAE,cAAc;IAC5B,OAAO,EAAE,8CAA8C;IACvD,MAAM,EAAE,4CAA4C;IACpD,OAAO,EAAE,+CAA+C;IACxD,KAAK,EAAE,uBAAuB;IAC9B,IAAI,EAAE,mBAAmB;IACzB,MAAM,EAAE,2DAA2D;IACnE,KAAK,EAAE,wBAAwB;IAC/B,OAAO,EAAE,gCAAgC;IACzC,IAAI,EAAE,6CAA6C;IACnD,KAAK,EAAE,gEAAgE;IACvE,OAAO,EAAE,sBAAsB;IAC/B,KAAK,EAAE,oBAAoB;IAC3B,QAAQ,EAAE,8CAA8C;IACxD,KAAK,EAAE,gEAAgE;IACvE,IAAI,EAAE,kBAAkB;IACxB,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,+CAA+C;IACrD,KAAK,EAAE,kBAAkB;
|
|
1
|
+
{"version":3,"file":"icons.js","sourceRoot":"","sources":["../../../src/shell/icons.tsx"],"names":[],"mappings":";AAOA,0BAA0B;AAC1B,MAAM,KAAK,GAAG;IACZ,GAAG,EAAE,2HAA2H;IAChI,IAAI,EAAE,oDAAoD;IAC1D,OAAO,EAAE,4BAA4B;IACrC,QAAQ,EAAE,2CAA2C;IACrD,OAAO,EAAE,yEAAyE;IAClF,WAAW,EAAE,cAAc;IAC3B,YAAY,EAAE,cAAc;IAC5B,OAAO,EAAE,8CAA8C;IACvD,MAAM,EAAE,4CAA4C;IACpD,OAAO,EAAE,+CAA+C;IACxD,KAAK,EAAE,uBAAuB;IAC9B,IAAI,EAAE,mBAAmB;IACzB,MAAM,EAAE,2DAA2D;IACnE,KAAK,EAAE,wBAAwB;IAC/B,OAAO,EAAE,gCAAgC;IACzC,IAAI,EAAE,6CAA6C;IACnD,KAAK,EAAE,gEAAgE;IACvE,OAAO,EAAE,sBAAsB;IAC/B,KAAK,EAAE,oBAAoB;IAC3B,QAAQ,EAAE,8CAA8C;IACxD,KAAK,EAAE,gEAAgE;IACvE,IAAI,EAAE,kBAAkB;IACxB,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,+CAA+C;IACrD,KAAK,EAAE,kBAAkB;IACzB,MAAM,EAAE,uDAAuD;IAC/D,QAAQ,EAAE,uDAAuD;IACjE,IAAI,EAAE,2CAA2C;IACjD,GAAG,EAAE,gDAAgD;IACrD,GAAG,EAAE,sFAAsF;IAC3F,IAAI,EAAE,0EAA0E;IAChF,MAAM,EAAE,gGAAgG;CAChG,CAAC;AAKX;;;;GAIG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAuD,EAAa,EAAE,CAAC,CAC3G,cACE,KAAK,EAAE,IAAI,EACX,MAAM,EAAE,IAAI,EACZ,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,YAElB,eAAM,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,GAAI,GACpB,CACP,CAAC"}
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
* @module
|
|
10
10
|
*/
|
|
11
11
|
/**
|
|
12
|
-
* Whether a key event happens while the user types: in a field, a select or editable content.
|
|
12
|
+
* Whether a key event happens while the user types: in a field that takes text, a select or editable content. A
|
|
13
|
+
* toolbar's segment (a radio) or a toggle keeps the page's keys, so they work right after a press on one.
|
|
13
14
|
*
|
|
14
15
|
* @param target - the event's target.
|
|
15
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard.d.ts","sourceRoot":"","sources":["../../../src/shell/keyboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"keyboard.d.ts","sourceRoot":"","sources":["../../../src/shell/keyboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,QAAQ,WAAW,GAAG,IAAI,KAAG,OAMd,CAAC;AAEzC,sDAAsD;AACtD,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAE/B;;;;GAIG;AACH,eAAO,MAAM,SAAS,GACpB,OAAO,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC,KAC9E,SAAS,GAAG,SAKd,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GACvB,KAAK,SAAS,MAAM,EAAE,EACtB,WAAW,MAAM,GAAG,SAAS,EAC7B,MAAM,SAAS,EACf,aAAa,MAAM,GAAG,SAAS,KAC9B,MAAM,GAAG,SAIX,CAAC"}
|
|
@@ -8,15 +8,18 @@
|
|
|
8
8
|
*
|
|
9
9
|
* @module
|
|
10
10
|
*/
|
|
11
|
+
/** The inputs that take no text: a key pressed on one is the page's, not the field's. */
|
|
12
|
+
const NOT_TEXT_INPUTS = ["checkbox", "radio", "button", "submit", "reset", "range", "color", "file"];
|
|
11
13
|
/**
|
|
12
|
-
* Whether a key event happens while the user types: in a field, a select or editable content.
|
|
14
|
+
* Whether a key event happens while the user types: in a field that takes text, a select or editable content. A
|
|
15
|
+
* toolbar's segment (a radio) or a toggle keeps the page's keys, so they work right after a press on one.
|
|
13
16
|
*
|
|
14
17
|
* @param target - the event's target.
|
|
15
18
|
*/
|
|
16
19
|
export const isTyping = (target) => typeof HTMLElement !== "undefined" &&
|
|
17
20
|
target instanceof HTMLElement &&
|
|
18
21
|
(target.isContentEditable ||
|
|
19
|
-
target instanceof HTMLInputElement ||
|
|
22
|
+
(target instanceof HTMLInputElement && !NOT_TEXT_INPUTS.includes(target.type)) ||
|
|
20
23
|
target instanceof HTMLTextAreaElement ||
|
|
21
24
|
target instanceof HTMLSelectElement);
|
|
22
25
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard.js","sourceRoot":"","sources":["../../../src/shell/keyboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH
|
|
1
|
+
{"version":3,"file":"keyboard.js","sourceRoot":"","sources":["../../../src/shell/keyboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,yFAAyF;AACzF,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAErG;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAA0B,EAAW,EAAE,CAC9D,OAAO,WAAW,KAAK,WAAW;IAClC,MAAM,YAAY,WAAW;IAC7B,CAAC,MAAM,CAAC,iBAAiB;QACvB,CAAC,MAAM,YAAY,gBAAgB,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9E,MAAM,YAAY,mBAAmB;QACrC,MAAM,YAAY,iBAAiB,CAAC,CAAC;AAKzC;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,KAA+E,EACxD,EAAE;IACzB,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/F,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG;QAAE,OAAO,CAAC,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG;QAAE,OAAO,CAAC,CAAC;IAChC,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,GAAsB,EACtB,SAA6B,EAC7B,IAAe,EACf,WAA+B,EACX,EAAE;IACtB,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,WAAW,CAAC;IAChD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;AACtD,CAAC,CAAC"}
|