forgebook 0.1.2 → 0.1.4
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 +94 -5
- package/dist/bin/forgebook/agentClient.d.ts +39 -0
- package/dist/bin/forgebook/agentClient.d.ts.map +1 -0
- package/dist/bin/forgebook/agentClient.js +91 -0
- package/dist/bin/forgebook/agentClient.js.map +1 -0
- 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 +54 -0
- package/dist/bin/forgebook/agentText.d.ts.map +1 -0
- package/dist/bin/forgebook/agentText.js +91 -0
- package/dist/bin/forgebook/agentText.js.map +1 -0
- package/dist/bin/forgebook/agents.md +46 -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 +283 -79
- 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 +38 -0
- package/dist/bin/forgebook/mcpTools.d.ts.map +1 -0
- package/dist/bin/forgebook/mcpTools.js +212 -0
- package/dist/bin/forgebook/mcpTools.js.map +1 -0
- 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 +39 -0
- package/dist/bin/forgebook/storyCheckRun.d.ts.map +1 -0
- package/dist/bin/forgebook/storyCheckRun.js +177 -0
- package/dist/bin/forgebook/storyCheckRun.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 +26 -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/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/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 +27 -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/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 +81 -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 +216 -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 +6 -0
- package/dist/src/shell/icons.d.ts.map +1 -1
- package/dist/src/shell/icons.js +7 -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 +826 -243
- package/dist/src/shell/strings.d.ts +45 -0
- package/dist/src/shell/strings.d.ts.map +1 -1
- package/dist/src/shell/strings.js +45 -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 +16 -4
- package/dist/src/switches.d.ts.map +1 -1
- package/dist/src/switches.js +30 -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 +15 -10
- package/dist/src/viewState.d.ts.map +1 -1
- package/dist/src/viewState.js +35 -18
- 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 +120 -0
- package/dist/src/vite/agent.types.d.ts.map +1 -0
- package/dist/src/vite/agent.types.js +1 -0
- package/dist/src/vite/agent.types.js.map +1 -0
- package/dist/src/vite/agentApi.d.ts +106 -0
- package/dist/src/vite/agentApi.d.ts.map +1 -0
- package/dist/src/vite/agentApi.js +216 -0
- package/dist/src/vite/agentApi.js.map +1 -0
- package/dist/src/vite/agentRoutes.d.ts +50 -0
- package/dist/src/vite/agentRoutes.d.ts.map +1 -0
- package/dist/src/vite/agentRoutes.js +155 -0
- package/dist/src/vite/agentRoutes.js.map +1 -0
- 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/forgebookPlugin.d.ts.map +1 -1
- package/dist/src/vite/forgebookPlugin.js +116 -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 +82 -0
- package/dist/src/vite/mcpProtocol.d.ts.map +1 -0
- package/dist/src/vite/mcpProtocol.js +184 -0
- package/dist/src/vite/mcpProtocol.js.map +1 -0
- package/dist/src/vite/pages.d.ts +12 -0
- package/dist/src/vite/pages.d.ts.map +1 -1
- package/dist/src/vite/pages.js +21 -0
- package/dist/src/vite/pages.js.map +1 -1
- package/dist/src/vite/storyFilesModule.d.ts +28 -1
- package/dist/src/vite/storyFilesModule.d.ts.map +1 -1
- package/dist/src/vite/storyFilesModule.js +34 -14
- package/dist/src/vite/storyFilesModule.js.map +1 -1
- 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 @@
|
|
|
1
|
+
{"version":3,"file":"agentApi.js","sourceRoot":"","sources":["../../../src/vite/agentApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The dev server's answers to tools and agents, under `/__forgebook/api/`: `stories` (every story) and `story?id=…`
|
|
3
|
+
* (one in detail), each with an optional `view` (the view's query, `theme=dark&lang=it`) the links open in.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* The server loads the sources and the previews with the same imports the pages use (`AGENT_SOURCES_FILE`), so a tool
|
|
7
|
+
* sees what the shell shows. A story module that fails on Node (it reads `window` while it loads) gives its story a
|
|
8
|
+
* problem in the answer instead of an error. Served by the dev server only, where Vite listens (localhost by default);
|
|
9
|
+
* a build has none of it.
|
|
10
|
+
*
|
|
11
|
+
* @module
|
|
12
|
+
*/
|
|
13
|
+
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
14
|
+
import type { ViteDevServer } from "vite";
|
|
15
|
+
import type { LiveErrors } from "../liveErrors.ts";
|
|
16
|
+
import type { ResolvedConfig } from "./configFile.ts";
|
|
17
|
+
/** The path the answers live under. */
|
|
18
|
+
export declare const AGENT_API = "/__forgebook/api/";
|
|
19
|
+
/** An answer: its HTTP status and its JSON body. */
|
|
20
|
+
export type AgentAnswer = {
|
|
21
|
+
/** 200, 404 for a story or a path that does not exist, 500 when the sources fail to load. */
|
|
22
|
+
readonly status: number;
|
|
23
|
+
/** The document, or `{ error }`. */
|
|
24
|
+
readonly body: unknown;
|
|
25
|
+
};
|
|
26
|
+
/** The header that names the catalogue's folder, so a client knows the server it found serves its catalogue. */
|
|
27
|
+
export declare const ROOT_HEADER = "forgebook-root";
|
|
28
|
+
/**
|
|
29
|
+
* Answers one of the API's paths.
|
|
30
|
+
*
|
|
31
|
+
* @param load - loads a module on the server (the dev server's `ssrLoadModule`).
|
|
32
|
+
* @param config - the catalogue's configuration.
|
|
33
|
+
* @param route - the path under `AGENT_API` (`stories`, `story`).
|
|
34
|
+
* @param params - the query: `id` for a story, `view` for the links, `usedIn=true` for the list's "Used in" (a
|
|
35
|
+
* story's comes with it when the catalogue offers it).
|
|
36
|
+
* @param origin - where the catalogue is served (`http://localhost:5173`), for the links.
|
|
37
|
+
* @param live - the errors the open frames reported, on a dev server a browser uses; none for a server of the
|
|
38
|
+
* command's own, which no frame reports to.
|
|
39
|
+
*/
|
|
40
|
+
export declare const agentAnswer: (load: (id: string) => Promise<unknown>, config: ResolvedConfig, route: string, params: URLSearchParams, origin: string, live?: LiveErrors) => Promise<AgentAnswer>;
|
|
41
|
+
/**
|
|
42
|
+
* The middleware that answers under `AGENT_API`, for a catalogue's dev server.
|
|
43
|
+
*
|
|
44
|
+
* @param server - the dev server, which loads the modules.
|
|
45
|
+
* @param config - the catalogue's configuration.
|
|
46
|
+
* @param live - the errors the open frames report.
|
|
47
|
+
* @returns a Connect middleware: it answers its own paths and passes every other request on.
|
|
48
|
+
*/
|
|
49
|
+
export declare const agentMiddleware: (server: ViteDevServer, config: ResolvedConfig, live: LiveErrors) => (request: IncomingMessage, response: ServerResponse, next: (error?: unknown) => void) => void;
|
|
50
|
+
//# sourceMappingURL=agentRoutes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agentRoutes.d.ts","sourceRoot":"","sources":["../../../src/vite/agentRoutes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAIjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAG1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAMnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGtD,uCAAuC;AACvC,eAAO,MAAM,SAAS,sBAAsB,CAAC;AAuD7C,oDAAoD;AACpD,MAAM,MAAM,WAAW,GAAG;IACxB,6FAA6F;IAC7F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,oCAAoC;IACpC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,gHAAgH;AAChH,eAAO,MAAM,WAAW,mBAAmB,CAAC;AA0E5C;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,WAAW,GACtB,MAAM,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,EACtC,QAAQ,cAAc,EACtB,OAAO,MAAM,EACb,QAAQ,eAAe,EACvB,QAAQ,MAAM,EACd,OAAO,UAAU,KAChB,OAAO,CAAC,WAAW,CAkBrB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GACzB,QAAQ,aAAa,EAAE,QAAQ,cAAc,EAAE,MAAM,UAAU,MAC/D,SAAS,eAAe,EAAE,UAAU,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,KAAG,IAoBtF,CAAC"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { join } from "node:path";
|
|
2
|
+
import { mergedPreviews, readPreview } from "../frame/storyModule.js";
|
|
3
|
+
import { sourceFiles } from "../sourceFiles.js";
|
|
4
|
+
import { findStory, storyTree } from "../storyTree.js";
|
|
5
|
+
import { sourceUsage } from "../usedIn.js";
|
|
6
|
+
import { storiesDocument, storyDocument } from "./agentApi.js";
|
|
7
|
+
import { AGENT_SOURCES_FILE } from "./pages.js";
|
|
8
|
+
/** The path the answers live under. */
|
|
9
|
+
export const AGENT_API = "/__forgebook/api/";
|
|
10
|
+
/** Whether a value is a plain object. */
|
|
11
|
+
const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
12
|
+
/** Whether a value is a source, as far as the answers read one: its id, name and story files. */
|
|
13
|
+
const isStorySource = (value) => isRecord(value) &&
|
|
14
|
+
typeof value["id"] === "string" &&
|
|
15
|
+
typeof value["name"] === "string" &&
|
|
16
|
+
Array.isArray(value["files"]);
|
|
17
|
+
/** The agent module read, or why it is not what the plugin generates. */
|
|
18
|
+
const agentModuleOf = (module) => {
|
|
19
|
+
if (!isRecord(module) || !Array.isArray(module["sources"]) || !Array.isArray(module["previews"]))
|
|
20
|
+
throw new Error("The catalogue's sources did not load");
|
|
21
|
+
const sources = module["sources"].filter(isStorySource);
|
|
22
|
+
return { sources, preview: mergedPreviews(module["previews"].map(readPreview)) };
|
|
23
|
+
};
|
|
24
|
+
/** A loader's value, or why it failed. */
|
|
25
|
+
const settled = async (load) => {
|
|
26
|
+
if (load === undefined)
|
|
27
|
+
return { value: { name: null } };
|
|
28
|
+
try {
|
|
29
|
+
return { value: await load() };
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
return { error: error instanceof Error ? error.message : String(error) };
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Each source's "Used in", by source id; a source whose usage cannot be read is left out.
|
|
37
|
+
*
|
|
38
|
+
* @param sources - the sources.
|
|
39
|
+
*/
|
|
40
|
+
const usageBySource = async (sources) => {
|
|
41
|
+
const answers = await Promise.all(sources.map(async (source) => [source.id, await sourceUsage(source)]));
|
|
42
|
+
return new Map(answers.flatMap(([id, index]) => (typeof index === "string" ? [] : [[id, index]])));
|
|
43
|
+
};
|
|
44
|
+
/** The header that names the catalogue's folder, so a client knows the server it found serves its catalogue. */
|
|
45
|
+
export const ROOT_HEADER = "forgebook-root";
|
|
46
|
+
/**
|
|
47
|
+
* The errors the open frames reported after the number asked for, and the index's problems.
|
|
48
|
+
*
|
|
49
|
+
* @param context - what the routes read.
|
|
50
|
+
* @param live - the errors, when frames report to this server.
|
|
51
|
+
*/
|
|
52
|
+
const errorsAnswer = (context, live) => {
|
|
53
|
+
const since = Number(context.params.get("since") ?? "0");
|
|
54
|
+
const body = {
|
|
55
|
+
schema: 1,
|
|
56
|
+
errors: live?.since(Number.isFinite(since) ? since : 0) ?? [],
|
|
57
|
+
last: live?.last() ?? 0,
|
|
58
|
+
problems: context.tree.problems
|
|
59
|
+
};
|
|
60
|
+
return { status: 200, body };
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* The stories, with each component's "Used in" when asked for and offered.
|
|
64
|
+
*
|
|
65
|
+
* @param context - what the routes read.
|
|
66
|
+
*/
|
|
67
|
+
const storiesAnswer = async (context) => {
|
|
68
|
+
const { config, params, tree, pages, view, loaded } = context;
|
|
69
|
+
const usage = config.lists.usedIn !== false && params.get("usedIn") === "true"
|
|
70
|
+
? await usageBySource(loaded.sources)
|
|
71
|
+
: undefined;
|
|
72
|
+
return { status: 200, body: storiesDocument(config.title, tree, pages, view, usage) };
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* One story in detail, its component's "Used in" when offered.
|
|
76
|
+
*
|
|
77
|
+
* @param context - what the routes read.
|
|
78
|
+
*/
|
|
79
|
+
const storyAnswer = async (context) => {
|
|
80
|
+
const { config, params, tree, pages, view, loaded } = context;
|
|
81
|
+
const id = params.get("id") ?? "";
|
|
82
|
+
const location = findStory(tree, id);
|
|
83
|
+
const source = loaded.sources.find((each) => each.id === location?.source.id);
|
|
84
|
+
if (location === undefined || source === undefined)
|
|
85
|
+
return { status: 404, body: { error: `No story "${id}"` } };
|
|
86
|
+
const files = sourceFiles(source);
|
|
87
|
+
const file = location.component.file;
|
|
88
|
+
const parts = {
|
|
89
|
+
module: await settled(files.stories[file]),
|
|
90
|
+
docs: await settled(files.docs[file]),
|
|
91
|
+
preview: loaded.preview
|
|
92
|
+
};
|
|
93
|
+
const index = config.lists.usedIn === false ? undefined : await sourceUsage(source);
|
|
94
|
+
// a usage that cannot be read leaves "Used in" out, never the story
|
|
95
|
+
const usage = index === undefined || typeof index === "string" ? undefined : { tree, index };
|
|
96
|
+
return { status: 200, body: storyDocument(location, parts, pages, view, usage) };
|
|
97
|
+
};
|
|
98
|
+
/**
|
|
99
|
+
* Answers one of the API's paths.
|
|
100
|
+
*
|
|
101
|
+
* @param load - loads a module on the server (the dev server's `ssrLoadModule`).
|
|
102
|
+
* @param config - the catalogue's configuration.
|
|
103
|
+
* @param route - the path under `AGENT_API` (`stories`, `story`).
|
|
104
|
+
* @param params - the query: `id` for a story, `view` for the links, `usedIn=true` for the list's "Used in" (a
|
|
105
|
+
* story's comes with it when the catalogue offers it).
|
|
106
|
+
* @param origin - where the catalogue is served (`http://localhost:5173`), for the links.
|
|
107
|
+
* @param live - the errors the open frames reported, on a dev server a browser uses; none for a server of the
|
|
108
|
+
* command's own, which no frame reports to.
|
|
109
|
+
*/
|
|
110
|
+
export const agentAnswer = async (load, config, route, params, origin, live) => {
|
|
111
|
+
try {
|
|
112
|
+
const loaded = agentModuleOf(await load(join(config.dir, AGENT_SOURCES_FILE)));
|
|
113
|
+
const context = {
|
|
114
|
+
loaded,
|
|
115
|
+
tree: storyTree(loaded.sources),
|
|
116
|
+
config,
|
|
117
|
+
params,
|
|
118
|
+
pages: { page: `${origin}/`, frame: `${origin}/frame.html` },
|
|
119
|
+
view: params.get("view") ?? ""
|
|
120
|
+
};
|
|
121
|
+
if (route === "errors")
|
|
122
|
+
return errorsAnswer(context, live);
|
|
123
|
+
if (route === "stories")
|
|
124
|
+
return await storiesAnswer(context);
|
|
125
|
+
if (route === "story")
|
|
126
|
+
return await storyAnswer(context);
|
|
127
|
+
return { status: 404, body: { error: `No answer at ${AGENT_API}${route}` } };
|
|
128
|
+
}
|
|
129
|
+
catch (error) {
|
|
130
|
+
return { status: 500, body: { error: error instanceof Error ? error.message : String(error) } };
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
/**
|
|
134
|
+
* The middleware that answers under `AGENT_API`, for a catalogue's dev server.
|
|
135
|
+
*
|
|
136
|
+
* @param server - the dev server, which loads the modules.
|
|
137
|
+
* @param config - the catalogue's configuration.
|
|
138
|
+
* @param live - the errors the open frames report.
|
|
139
|
+
* @returns a Connect middleware: it answers its own paths and passes every other request on.
|
|
140
|
+
*/
|
|
141
|
+
export const agentMiddleware = (server, config, live) => (request, response, next) => {
|
|
142
|
+
const url = new URL(request.url ?? "/", `http://${request.headers.host ?? "localhost"}`);
|
|
143
|
+
if (!url.pathname.startsWith(AGENT_API)) {
|
|
144
|
+
next();
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
const route = url.pathname.slice(AGENT_API.length);
|
|
148
|
+
void agentAnswer((id) => server.ssrLoadModule(id), config, route, url.searchParams, url.origin, live).then(({ status, body }) => {
|
|
149
|
+
response.statusCode = status;
|
|
150
|
+
response.setHeader("Content-Type", "application/json");
|
|
151
|
+
response.setHeader(ROOT_HEADER, config.dir);
|
|
152
|
+
response.end(`${JSON.stringify(body)}\n`);
|
|
153
|
+
});
|
|
154
|
+
};
|
|
155
|
+
//# sourceMappingURL=agentRoutes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agentRoutes.js","sourceRoot":"","sources":["../../../src/vite/agentRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,7 +53,8 @@ export declare const findConfigFile: (dir: string) => string | undefined;
|
|
|
53
53
|
/**
|
|
54
54
|
* The lists of the presets and the catalogue, in that order, merged: a single value (a width range, the grid's step)
|
|
55
55
|
* the last that gives one; the backgrounds, the story groups and the texts entry by entry, a later one replacing an
|
|
56
|
-
* earlier one with the same id or name; the tabs
|
|
56
|
+
* earlier one with the same id or name; the tabs, the controls and the rules turned off by any; the toolbar the last
|
|
57
|
+
* that names one.
|
|
57
58
|
*
|
|
58
59
|
* @param all - the presets' lists, then the catalogue's.
|
|
59
60
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configFile.d.ts","sourceRoot":"","sources":["../../../src/vite/configFile.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,KAAK,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"configFile.d.ts","sourceRoot":"","sources":["../../../src/vite/configFile.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,KAAK,EAAE,cAAc,EAAgC,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,iFAAiF;AACjF,eAAO,MAAM,YAAY,UAAyE,CAAC;AAKnG,+FAA+F;AAC/F,MAAM,MAAM,cAAc,GAAG;IAC3B,4DAA4D;IAC5D,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,qBAAqB;IACrB,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,4BAA4B;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,yDAAyD;IACzD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,sCAAsC;IACtC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,6FAA6F;IAC7F,QAAQ,CAAC,QAAQ,EAAE,SAAS,UAAU,EAAE,GAAG,SAAS,CAAC;IACrD,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,EAAE,SAAS,aAAa,EAAE,CAAC;IAC7C,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,2CAA2C;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,+FAA+F;IAC/F,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,6GAA6G;IAC7G,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;CAChC,CAAC;AAEF,gFAAgF;AAChF,eAAO,MAAM,mBAAmB,kEAAmE,CAAC;AAEpG;;;;GAIG;AACH,eAAO,MAAM,eAAe,GACzB,KAAK,MAAM,MACX,MAAM,MAAM,KAAG,MAAM,GAAG,SAOxB,CAAC;AAYJ;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,MAAM,GAAG,SAC2B,CAAC;AAiClF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,SAAS,cAAc,EAAE,KAAG,cAiC5D,CAAC;AA2BF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GAAI,QAAQ,eAAe,EAAE,KAAK,MAAM,KAAG,cAgCpE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAU,MAAM,MAAM,KAAG,OAAO,CAAC,cAAc,CAMzE,CAAC"}
|
|
@@ -69,29 +69,43 @@ const mergedById = (lists) => {
|
|
|
69
69
|
merged.set(entry.id, entry);
|
|
70
70
|
return [...merged.values()];
|
|
71
71
|
};
|
|
72
|
+
/**
|
|
73
|
+
* The single values a list gives (an id, a width range, the grid's step, the toolbar…), without those it leaves out,
|
|
74
|
+
* so a later list replaces only what it gives.
|
|
75
|
+
*
|
|
76
|
+
* @param lists - one list.
|
|
77
|
+
*/
|
|
78
|
+
const singleValues = (lists) => ({
|
|
79
|
+
...(lists.id === undefined ? {} : { id: lists.id }),
|
|
80
|
+
...(lists.widths === undefined ? {} : { widths: lists.widths }),
|
|
81
|
+
...(lists.widthRange === undefined ? {} : { widthRange: lists.widthRange }),
|
|
82
|
+
...(lists.zooms === undefined ? {} : { zooms: lists.zooms }),
|
|
83
|
+
...(lists.textSizes === undefined ? {} : { textSizes: lists.textSizes }),
|
|
84
|
+
...(lists.gridStep === undefined ? {} : { gridStep: lists.gridStep }),
|
|
85
|
+
...(lists.toolbar === undefined ? {} : { toolbar: lists.toolbar }),
|
|
86
|
+
...(lists.usedIn === undefined ? {} : { usedIn: lists.usedIn }),
|
|
87
|
+
...(lists.appearance === undefined ? {} : { appearance: lists.appearance })
|
|
88
|
+
});
|
|
72
89
|
/**
|
|
73
90
|
* The lists of the presets and the catalogue, in that order, merged: a single value (a width range, the grid's step)
|
|
74
91
|
* the last that gives one; the backgrounds, the story groups and the texts entry by entry, a later one replacing an
|
|
75
|
-
* earlier one with the same id or name; the tabs
|
|
92
|
+
* earlier one with the same id or name; the tabs, the controls and the rules turned off by any; the toolbar the last
|
|
93
|
+
* that names one.
|
|
76
94
|
*
|
|
77
95
|
* @param all - the presets' lists, then the catalogue's.
|
|
78
96
|
*/
|
|
79
97
|
export const mergedLists = (all) => {
|
|
80
98
|
const tabs = {};
|
|
99
|
+
const controls = {};
|
|
81
100
|
const strings = {};
|
|
101
|
+
const keys = {};
|
|
82
102
|
let merged = {};
|
|
83
103
|
for (const lists of all) {
|
|
84
104
|
Object.assign(tabs, lists.tabs);
|
|
105
|
+
Object.assign(controls, lists.controls);
|
|
85
106
|
Object.assign(strings, lists.strings);
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
...(lists.id === undefined ? {} : { id: lists.id }),
|
|
89
|
-
...(lists.widths === undefined ? {} : { widths: lists.widths }),
|
|
90
|
-
...(lists.widthRange === undefined ? {} : { widthRange: lists.widthRange }),
|
|
91
|
-
...(lists.zooms === undefined ? {} : { zooms: lists.zooms }),
|
|
92
|
-
...(lists.textSizes === undefined ? {} : { textSizes: lists.textSizes }),
|
|
93
|
-
...(lists.gridStep === undefined ? {} : { gridStep: lists.gridStep })
|
|
94
|
-
};
|
|
107
|
+
Object.assign(keys, lists.keys);
|
|
108
|
+
merged = { ...merged, ...singleValues(lists) };
|
|
95
109
|
}
|
|
96
110
|
const builtIn = all.findLast((lists) => lists.backgrounds?.builtIn !== undefined)?.backgrounds?.builtIn;
|
|
97
111
|
const tags = all.findLast((lists) => lists.a11y?.tags !== undefined)?.a11y?.tags;
|
|
@@ -103,11 +117,15 @@ export const mergedLists = (all) => {
|
|
|
103
117
|
},
|
|
104
118
|
storyGroups: mergedById(all.map((lists) => lists.storyGroups)),
|
|
105
119
|
tabs,
|
|
120
|
+
controls,
|
|
106
121
|
a11y: {
|
|
107
122
|
...(tags === undefined ? {} : { tags }),
|
|
108
123
|
disabledRules: [...new Set(all.flatMap((lists) => lists.a11y?.disabledRules ?? []))]
|
|
109
124
|
},
|
|
110
|
-
strings
|
|
125
|
+
strings,
|
|
126
|
+
keys,
|
|
127
|
+
// a later list's view of the same name replaces an earlier one's, where it was
|
|
128
|
+
views: [...new Map(all.flatMap((lists) => lists.views ?? []).map((view) => [view.name, view])).values()]
|
|
111
129
|
};
|
|
112
130
|
};
|
|
113
131
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configFile.js","sourceRoot":"","sources":["../../../src/vite/configFile.ts"],"names":[],"mappings":";;;;;;;;AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAKzC,OAAO,EAAE,eAAe,EAAmB,MAAM,gBAAgB,CAAC;AAIlE,iFAAiF;AACjF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,qBAAqB,EAAE,sBAAsB,EAAE,qBAAqB,CAAC,CAAC;AAEnG,+FAA+F;AAC/F,MAAM,aAAa,GAAG,CAAC,sBAAsB,EAAE,uBAAuB,EAAE,sBAAsB,CAAC,CAAC;AAkChG,gFAAgF;AAChF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,sBAAsB,EAAE,6BAA6B,CAAU,CAAC;AAEpG;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAC1B,CAAC,GAAW,EAAE,EAAE,CAChB,CAAC,IAAY,EAAsB,EAAE;IACnC,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC;IAC5D,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC,CAAC;AAEJ;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,GAAW,EAAW,EAAE;IAC9C,MAAM,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAC5C,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC;AACjF,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAW,EAAsB,EAAE,CAChE,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAElF;;;;GAIG;AACH,MAAM,UAAU,GAAG,CACjB,KAAiD,EACvC,EAAE;IACZ,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,KAAK,MAAM,KAAK,IAAI,IAAI,IAAI,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACtF,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"configFile.js","sourceRoot":"","sources":["../../../src/vite/configFile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import type { StoryComponentResult } from "./adapter.ts";
|
|
2
|
+
import type { UsageGraph, UsageRequestFile } from "./usageGraph.ts";
|
|
2
3
|
/** What the extractor answers for a story file: its component's docs, none, or why it cannot be read. */
|
|
3
4
|
export type DocsResult = StoryComponentResult;
|
|
4
|
-
/**
|
|
5
|
+
/** What the worker answers for a group of story files' usage: its facts, or why they cannot be read. */
|
|
6
|
+
export type UsageResult = UsageGraph | string;
|
|
7
|
+
/**
|
|
8
|
+
* A message to the worker: a story file's docs to read, a group of story files' usage to read, or the news that a
|
|
9
|
+
* source file changed.
|
|
10
|
+
*/
|
|
5
11
|
export type DocsRequest = {
|
|
6
12
|
/** Read a story file's docs. */
|
|
7
13
|
readonly kind: "extract";
|
|
@@ -9,21 +15,39 @@ export type DocsRequest = {
|
|
|
9
15
|
readonly id: number;
|
|
10
16
|
/** The story file's absolute path. */
|
|
11
17
|
readonly storyFile: string;
|
|
18
|
+
} | {
|
|
19
|
+
/** Read what a group of story files' stories render, and the import graph they reach. */
|
|
20
|
+
readonly kind: "usage";
|
|
21
|
+
/** The request's number, repeated in its answer. */
|
|
22
|
+
readonly id: number;
|
|
23
|
+
/** The story files and their stories' exports. */
|
|
24
|
+
readonly files: readonly UsageRequestFile[];
|
|
12
25
|
} | {
|
|
13
26
|
/** A source file changed: the programs are renewed on their next read. */
|
|
14
27
|
readonly kind: "changed";
|
|
15
28
|
};
|
|
16
|
-
/** The worker's answer to a request. */
|
|
29
|
+
/** The worker's answer to a request, of the request's kind. */
|
|
17
30
|
export type DocsResponse = {
|
|
31
|
+
/** A story file's docs. */
|
|
32
|
+
readonly kind: "extract";
|
|
18
33
|
/** The request's number. */
|
|
19
34
|
readonly id: number;
|
|
20
35
|
/** The extractor's result. */
|
|
21
36
|
readonly result: DocsResult;
|
|
37
|
+
} | {
|
|
38
|
+
/** A group of story files' usage. */
|
|
39
|
+
readonly kind: "usage";
|
|
40
|
+
/** The request's number. */
|
|
41
|
+
readonly id: number;
|
|
42
|
+
/** The facts, or why they cannot be read. */
|
|
43
|
+
readonly result: UsageResult;
|
|
22
44
|
};
|
|
23
45
|
/** The docs, read off the dev server's thread. */
|
|
24
46
|
export type DocsExtractor = {
|
|
25
47
|
/** The component docs of a story file. */
|
|
26
48
|
readonly extract: (storyFile: string) => Promise<DocsResult>;
|
|
49
|
+
/** What a group of story files' stories render, and the import graph they reach. */
|
|
50
|
+
readonly usage: (files: readonly UsageRequestFile[]) => Promise<UsageResult>;
|
|
27
51
|
/** Builds the program that holds a story file, ahead of its first read. */
|
|
28
52
|
readonly warm: (storyFile: string) => void;
|
|
29
53
|
/** Tells the worker a source file changed, so the next read sees it. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docsExtractor.d.ts","sourceRoot":"","sources":["../../../src/vite/docsExtractor.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"docsExtractor.d.ts","sourceRoot":"","sources":["../../../src/vite/docsExtractor.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEpE,yGAAyG;AACzG,MAAM,MAAM,UAAU,GAAG,oBAAoB,CAAC;AAE9C,wGAAwG;AACxG,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;AAE9C;;;GAGG;AACH,MAAM,MAAM,WAAW,GACnB;IACE,gCAAgC;IAChC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B,GACD;IACE,yFAAyF;IACzF,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,kDAAkD;IAClD,QAAQ,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAC7C,GACD;IACE,0EAA0E;IAC1E,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;CAC1B,CAAC;AAEN,+DAA+D;AAC/D,MAAM,MAAM,YAAY,GACpB;IACE,2BAA2B;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B,GACD;IACE,qCAAqC;IACrC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B,CAAC;AAEN,kDAAkD;AAClD,MAAM,MAAM,aAAa,GAAG;IAC1B,0CAA0C;IAC1C,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7D,oFAAoF;IACpF,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7E,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,wEAAwE;IACxE,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;IAC7B,yDAAyD;IACzD,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC,CAAC;AAQF,4GAA4G;AAC5G,MAAM,MAAM,cAAc,GAAG;IAC3B,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,YAAY,MAAM,KAAG,aAsExD,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The story files' component docs,
|
|
3
|
-
* a package's TypeScript program is built.
|
|
2
|
+
* The story files' component docs, and the facts "Used in" is joined from (`usageGraph.ts`), read in a worker thread
|
|
3
|
+
* (`docsWorker.ts`) so the dev server keeps answering while a package's TypeScript program is built.
|
|
4
4
|
*
|
|
5
5
|
* @remarks
|
|
6
6
|
* One worker per plugin, started on the first request and kept: its programs make every later read quick, until a
|
|
@@ -39,7 +39,7 @@ export const createDocsExtractor = (docsModule) => {
|
|
|
39
39
|
const created = new Worker(WORKER_URL, { workerData });
|
|
40
40
|
created.unref();
|
|
41
41
|
created.on("message", (response) => {
|
|
42
|
-
pending.get(response.id)?.(response
|
|
42
|
+
pending.get(response.id)?.(response);
|
|
43
43
|
pending.delete(response.id);
|
|
44
44
|
sendWarmUp();
|
|
45
45
|
});
|
|
@@ -53,21 +53,24 @@ export const createDocsExtractor = (docsModule) => {
|
|
|
53
53
|
worker = created;
|
|
54
54
|
return created;
|
|
55
55
|
};
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
56
|
+
// a request's answer, or why the worker stopped before giving it
|
|
57
|
+
const send = (request, resolve) => {
|
|
58
|
+
if (request.kind === "changed")
|
|
59
|
+
return;
|
|
60
|
+
pending.set(request.id, resolve);
|
|
60
61
|
started().postMessage(request);
|
|
61
62
|
};
|
|
63
|
+
const extract = (storyFile, resolve) => send({ kind: "extract", id: nextId++, storyFile }, (response) => resolve(typeof response === "string" || response.kind !== "extract" ? String(response) : response.result));
|
|
62
64
|
const sendWarmUp = () => {
|
|
63
65
|
if (pending.size > 0)
|
|
64
66
|
return;
|
|
65
67
|
const storyFile = warmUps.shift();
|
|
66
68
|
if (storyFile !== undefined)
|
|
67
|
-
|
|
69
|
+
extract(storyFile, () => undefined);
|
|
68
70
|
};
|
|
69
71
|
return {
|
|
70
|
-
extract: (storyFile) => new Promise((resolve) =>
|
|
72
|
+
extract: (storyFile) => new Promise((resolve) => extract(storyFile, resolve)),
|
|
73
|
+
usage: (files) => new Promise((resolve) => send({ kind: "usage", id: nextId++, files }, (response) => resolve(typeof response === "string" || response.kind !== "usage" ? String(response) : response.result))),
|
|
71
74
|
warm: (storyFile) => {
|
|
72
75
|
warmUps.push(storyFile);
|
|
73
76
|
sendWarmUp();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docsExtractor.js","sourceRoot":"","sources":["../../../src/vite/docsExtractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"docsExtractor.js","sourceRoot":"","sources":["../../../src/vite/docsExtractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,8 @@ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExte
|
|
|
14
14
|
* @remarks
|
|
15
15
|
* Started by `docsExtractor.ts` with the framework's docs module (`adapter.ts`), which it loads once; it keeps the
|
|
16
16
|
* programs of `docsProgram.ts` between requests, so only a package's first
|
|
17
|
-
* read builds one, and a changed source file (`{ kind: "changed" }`) renews them on their next read. A request
|
|
17
|
+
* read builds one, and a changed source file (`{ kind: "changed" }`) renews them on their next read. A usage request
|
|
18
|
+
* (`{ kind: "usage", id, files }`) is answered from the same programs (`usageGraph.ts`). A request is `{ id, storyFile }`, the answer `{ id, result }`, `extractStoryComponent`'s result as
|
|
18
19
|
* it is (plain data); a warm-up is a request whose answer nobody reads.
|
|
19
20
|
*
|
|
20
21
|
* @module
|
|
@@ -22,6 +23,7 @@ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExte
|
|
|
22
23
|
import { parentPort, workerData } from "node:worker_threads";
|
|
23
24
|
import { isDocsModule } from "./adapter.js";
|
|
24
25
|
import { markSourcesChanged } from "./docsProgram.js";
|
|
26
|
+
import { usageGraph } from "./usageGraph.js";
|
|
25
27
|
/** Whether the worker's data names a docs module. */
|
|
26
28
|
const isWorkerData = (value) => typeof value === "object" &&
|
|
27
29
|
value !== null &&
|
|
@@ -55,13 +57,27 @@ const extracted = async (storyFile) => {
|
|
|
55
57
|
return `${storyFile}: the docs could not be read: ${error instanceof Error ? error.message : String(error)}`;
|
|
56
58
|
}
|
|
57
59
|
};
|
|
60
|
+
/** A group of story files' usage, or why it threw: a throw would end the worker and every request waiting on it. */
|
|
61
|
+
const usage = (files) => {
|
|
62
|
+
try {
|
|
63
|
+
return usageGraph(files);
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
return `The stories' usage could not be read: ${error instanceof Error ? error.message : String(error)}`;
|
|
67
|
+
}
|
|
68
|
+
};
|
|
58
69
|
parentPort?.on("message", (request) => {
|
|
59
70
|
if (request.kind === "changed") {
|
|
60
71
|
markSourcesChanged();
|
|
61
72
|
return;
|
|
62
73
|
}
|
|
74
|
+
if (request.kind === "usage") {
|
|
75
|
+
const response = { kind: "usage", id: request.id, result: usage(request.files) };
|
|
76
|
+
parentPort?.postMessage(response);
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
63
79
|
void extracted(request.storyFile).then((result) => {
|
|
64
|
-
const response = { id: request.id, result };
|
|
80
|
+
const response = { kind: "extract", id: request.id, result };
|
|
65
81
|
parentPort?.postMessage(response);
|
|
66
82
|
});
|
|
67
83
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docsWorker.js","sourceRoot":"","sources":["../../../src/vite/docsWorker.ts"],"names":[],"mappings":";;;;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"docsWorker.js","sourceRoot":"","sources":["../../../src/vite/docsWorker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forgebookPlugin.d.ts","sourceRoot":"","sources":["../../../src/vite/forgebookPlugin.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,MAAM,EAA6B,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"forgebookPlugin.d.ts","sourceRoot":"","sources":["../../../src/vite/forgebookPlugin.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,MAAM,EAA6B,MAAM,MAAM,CAAC;AAG9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAIrD,OAAO,EAAmD,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AA2EvG,4BAA4B;AAC5B,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC;IACtC,8GAA8G;IAC9G,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC,CAAC;AAyPF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAAI,UAAS,sBAA2B,KAAG,MAgMtE,CAAC"}
|