@dxos/plugin-testing 0.0.0 → 0.8.4-main.1c7ec43d41
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/dist/lib/browser/harness.mjs +35 -0
- package/dist/lib/browser/harness.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +41 -0
- package/dist/lib/browser/index.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -0
- package/dist/lib/node-esm/harness.mjs +37 -0
- package/dist/lib/node-esm/harness.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +43 -0
- package/dist/lib/node-esm/index.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -0
- package/dist/types/src/StorybookPlugin.d.ts +8 -0
- package/dist/types/src/StorybookPlugin.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +16 -0
- package/dist/types/src/capabilities/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
- package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
- package/dist/types/src/capabilities/state.d.ts +18 -0
- package/dist/types/src/capabilities/state.d.ts.map +1 -0
- package/dist/types/src/components/Layout/Layout.d.ts +6 -0
- package/dist/types/src/components/Layout/Layout.d.ts.map +1 -0
- package/dist/types/src/components/Layout/index.d.ts +2 -0
- package/dist/types/src/components/Layout/index.d.ts.map +1 -0
- package/dist/types/src/components/index.d.ts +2 -0
- package/dist/types/src/components/index.d.ts.map +1 -0
- package/dist/types/src/core.d.ts +8 -0
- package/dist/types/src/core.d.ts.map +1 -0
- package/dist/types/src/harness.d.ts +20 -0
- package/dist/types/src/harness.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +6 -0
- package/dist/types/src/index.d.ts.map +1 -0
- package/dist/types/src/meta.d.ts +3 -0
- package/dist/types/src/meta.d.ts.map +1 -0
- package/dist/types/src/operations/add-toast.d.ts +5 -0
- package/dist/types/src/operations/add-toast.d.ts.map +1 -0
- package/dist/types/src/operations/close.d.ts +5 -0
- package/dist/types/src/operations/close.d.ts.map +1 -0
- package/dist/types/src/operations/index.d.ts +3 -0
- package/dist/types/src/operations/index.d.ts.map +1 -0
- package/dist/types/src/operations/open.d.ts +5 -0
- package/dist/types/src/operations/open.d.ts.map +1 -0
- package/dist/types/src/operations/scroll-into-view.d.ts +5 -0
- package/dist/types/src/operations/scroll-into-view.d.ts.map +1 -0
- package/dist/types/src/operations/set-layout-mode.d.ts +5 -0
- package/dist/types/src/operations/set-layout-mode.d.ts.map +1 -0
- package/dist/types/src/operations/switch-workspace.d.ts +5 -0
- package/dist/types/src/operations/switch-workspace.d.ts.map +1 -0
- package/dist/types/src/operations/update-complementary.d.ts +5 -0
- package/dist/types/src/operations/update-complementary.d.ts.map +1 -0
- package/dist/types/src/operations/update-dialog.d.ts +5 -0
- package/dist/types/src/operations/update-dialog.d.ts.map +1 -0
- package/dist/types/src/operations/update-popover.d.ts +5 -0
- package/dist/types/src/operations/update-popover.d.ts.map +1 -0
- package/dist/types/src/operations/update-sidebar.d.ts +5 -0
- package/dist/types/src/operations/update-sidebar.d.ts.map +1 -0
- package/dist/types/src/operations/update-state.d.ts +5 -0
- package/dist/types/src/operations/update-state.d.ts.map +1 -0
- package/dist/types/src/types/capabilities.d.ts +27 -0
- package/dist/types/src/types/capabilities.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +2 -0
- package/dist/types/src/types/index.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/package.json +37 -17
- package/src/StorybookPlugin.ts +20 -17
- package/src/capabilities/index.ts +8 -2
- package/src/capabilities/operation-handler.ts +16 -0
- package/src/capabilities/state.tsx +42 -0
- package/src/components/Layout/Layout.tsx +236 -0
- package/src/components/Layout/index.ts +5 -0
- package/src/core.ts +20 -16
- package/src/harness.ts +52 -0
- package/src/index.ts +6 -1
- package/src/meta.ts +1 -1
- package/src/operations/add-toast.ts +22 -0
- package/src/operations/close.ts +14 -0
- package/src/operations/index.ts +18 -0
- package/src/operations/open.ts +18 -0
- package/src/operations/scroll-into-view.ts +14 -0
- package/src/operations/set-layout-mode.ts +14 -0
- package/src/operations/switch-workspace.ts +20 -0
- package/src/operations/update-complementary.ts +27 -0
- package/src/operations/update-dialog.ts +27 -0
- package/src/operations/update-popover.ts +37 -0
- package/src/operations/update-sidebar.ts +26 -0
- package/src/operations/update-state.ts +17 -0
- package/src/types/capabilities.ts +11 -3
- package/src/capabilities/operation-resolver/index.ts +0 -7
- package/src/capabilities/operation-resolver/operation-resolver.ts +0 -82
- package/src/capabilities/state/index.ts +0 -7
- package/src/capabilities/state/state.tsx +0 -53
- package/src/components/Layout.tsx +0 -132
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// src/harness.ts
|
|
2
|
+
import { OperationPlugin, RuntimePlugin } from "@dxos/app-framework";
|
|
3
|
+
import { createTestApp } from "@dxos/app-framework/testing";
|
|
4
|
+
import { AttentionPlugin } from "@dxos/plugin-attention";
|
|
5
|
+
import { GraphPlugin } from "@dxos/plugin-graph";
|
|
6
|
+
import { SettingsPlugin } from "@dxos/plugin-settings";
|
|
7
|
+
var headlessCorePlugins = () => [
|
|
8
|
+
AttentionPlugin(),
|
|
9
|
+
GraphPlugin(),
|
|
10
|
+
OperationPlugin(),
|
|
11
|
+
RuntimePlugin(),
|
|
12
|
+
SettingsPlugin()
|
|
13
|
+
];
|
|
14
|
+
var createComposerTestApp = async (opts = {}) => {
|
|
15
|
+
const { plugins = [], theme = false, ...rest } = opts;
|
|
16
|
+
const core = headlessCorePlugins();
|
|
17
|
+
if (theme) {
|
|
18
|
+
const { ThemePlugin } = await import("@dxos/plugin-theme");
|
|
19
|
+
const { defaultTx } = await import("@dxos/ui-theme");
|
|
20
|
+
core.push(ThemePlugin({
|
|
21
|
+
tx: defaultTx
|
|
22
|
+
}));
|
|
23
|
+
}
|
|
24
|
+
return createTestApp({
|
|
25
|
+
...rest,
|
|
26
|
+
plugins: [
|
|
27
|
+
...core,
|
|
28
|
+
...plugins
|
|
29
|
+
]
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
export {
|
|
33
|
+
createComposerTestApp
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=harness.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/harness.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport { OperationPlugin, type Plugin, RuntimePlugin } from '@dxos/app-framework';\nimport { createTestApp, type TestAppOptions, type TestHarness } from '@dxos/app-framework/testing';\nimport { AttentionPlugin } from '@dxos/plugin-attention';\nimport { GraphPlugin } from '@dxos/plugin-graph';\nimport { SettingsPlugin } from '@dxos/plugin-settings';\n\nexport type ComposerTestAppOptions = Omit<TestAppOptions, 'plugins'> & {\n /** Plugins to register in addition to the Composer core plugins. */\n plugins?: Plugin.Plugin[];\n /**\n * Whether to include `ThemePlugin` in the core plugin set.\n * Defaults to `false` — `ThemePlugin` requires a browser DOM and breaks Node-only tests.\n * Set to `true` (with jsdom/happy-dom) when rendering React surfaces.\n */\n theme?: boolean;\n};\n\n/**\n * Headless core plugins for the test harness — the subset of `corePlugins()`\n * that can be activated without a browser DOM.\n */\nconst headlessCorePlugins = (): Plugin.Plugin[] => [\n AttentionPlugin(),\n GraphPlugin(),\n OperationPlugin(),\n RuntimePlugin(),\n SettingsPlugin(),\n];\n\n/**\n * Creates a TestHarness pre-loaded with the Composer core plugins\n * (Attention, Graph, Operation, Runtime, Settings, optionally Theme).\n *\n * For a ClientPlugin-backed harness, pass `ClientPlugin({ ... })` via `plugins`.\n */\nexport const createComposerTestApp = async (opts: ComposerTestAppOptions = {}): Promise<TestHarness> => {\n const { plugins = [], theme = false, ...rest } = opts;\n const core = headlessCorePlugins();\n if (theme) {\n const { ThemePlugin } = await import('@dxos/plugin-theme');\n const { defaultTx } = await import('@dxos/ui-theme');\n core.push(ThemePlugin({ tx: defaultTx }));\n }\n return createTestApp({\n ...rest,\n plugins: [...core, ...plugins],\n });\n};\n"],
|
|
5
|
+
"mappings": ";AAIA,SAASA,iBAA8BC,qBAAqB;AAC5D,SAASC,qBAA4D;AACrE,SAASC,uBAAuB;AAChC,SAASC,mBAAmB;AAC5B,SAASC,sBAAsB;AAiB/B,IAAMC,sBAAsB,MAAuB;EACjDH,gBAAAA;EACAC,YAAAA;EACAJ,gBAAAA;EACAC,cAAAA;EACAI,eAAAA;;AASK,IAAME,wBAAwB,OAAOC,OAA+B,CAAC,MAAC;AAC3E,QAAM,EAAEC,UAAU,CAAA,GAAIC,QAAQ,OAAO,GAAGC,KAAAA,IAASH;AACjD,QAAMI,OAAON,oBAAAA;AACb,MAAII,OAAO;AACT,UAAM,EAAEG,YAAW,IAAK,MAAM,OAAO,oBAAA;AACrC,UAAM,EAAEC,UAAS,IAAK,MAAM,OAAO,gBAAA;AACnCF,SAAKG,KAAKF,YAAY;MAAEG,IAAIF;IAAU,CAAA,CAAA;EACxC;AACA,SAAOZ,cAAc;IACnB,GAAGS;IACHF,SAAS;SAAIG;SAASH;;EACxB,CAAA;AACF;",
|
|
6
|
+
"names": ["OperationPlugin", "RuntimePlugin", "createTestApp", "AttentionPlugin", "GraphPlugin", "SettingsPlugin", "headlessCorePlugins", "createComposerTestApp", "opts", "plugins", "theme", "rest", "core", "ThemePlugin", "defaultTx", "push", "tx"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// src/index.ts
|
|
2
|
+
import { Plugin } from "@dxos/app-framework";
|
|
3
|
+
|
|
4
|
+
// src/meta.ts
|
|
5
|
+
import { trim } from "@dxos/util";
|
|
6
|
+
var meta = {
|
|
7
|
+
id: "org.dxos.plugin.storybook-layout",
|
|
8
|
+
name: "Storybook",
|
|
9
|
+
description: trim`
|
|
10
|
+
Development layout optimized for Storybook component testing and documentation.
|
|
11
|
+
Provides specialized views for component development and design system exploration.
|
|
12
|
+
`,
|
|
13
|
+
source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-testing"
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
// src/core.ts
|
|
17
|
+
import { OperationPlugin, RuntimePlugin } from "@dxos/app-framework";
|
|
18
|
+
import { AttentionPlugin } from "@dxos/plugin-attention/plugin";
|
|
19
|
+
import { GraphPlugin } from "@dxos/plugin-graph/plugin";
|
|
20
|
+
import { SettingsPlugin } from "@dxos/plugin-settings/plugin";
|
|
21
|
+
import { ThemePlugin } from "@dxos/plugin-theme/plugin";
|
|
22
|
+
import { defaultTx } from "@dxos/ui-theme";
|
|
23
|
+
var corePlugins = () => [
|
|
24
|
+
AttentionPlugin(),
|
|
25
|
+
GraphPlugin(),
|
|
26
|
+
OperationPlugin(),
|
|
27
|
+
RuntimePlugin(),
|
|
28
|
+
SettingsPlugin(),
|
|
29
|
+
ThemePlugin({
|
|
30
|
+
tx: defaultTx
|
|
31
|
+
})
|
|
32
|
+
];
|
|
33
|
+
|
|
34
|
+
// src/index.ts
|
|
35
|
+
var StorybookPlugin = Plugin.lazy(meta, () => import("#plugin"));
|
|
36
|
+
export {
|
|
37
|
+
StorybookPlugin,
|
|
38
|
+
corePlugins,
|
|
39
|
+
meta
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/index.ts", "../../../src/meta.ts", "../../../src/core.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Plugin } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport * from './core';\nexport * from './meta';\n\nexport const StorybookPlugin = Plugin.lazy(meta, () => import('#plugin'));\nexport type { StorybookPluginOptions } from '#plugin';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: Plugin.Meta = {\n id: 'org.dxos.plugin.storybook-layout',\n name: 'Storybook',\n description: trim`\n Development layout optimized for Storybook component testing and documentation.\n Provides specialized views for component development and design system exploration.\n `,\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-testing',\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { OperationPlugin, type Plugin, RuntimePlugin } from '@dxos/app-framework';\n// `/plugin` entrypoints — `@dxos/plugin-attention/plugin`, `/plugin-client/plugin`,\n// `/plugin-graph/plugin`, `/plugin-preview/plugin`, `/plugin-settings/plugin`,\n// `/plugin-space/plugin`, `/plugin-theme/plugin` — re-export the plugin eagerly\n// (without `Plugin.lazy`). The default `.` export wraps each plugin in a lazy\n// stub (`() => import('./XPlugin')`), which webkit cannot reliably resolve\n// under vite-dev: the dynamic-import promise can settle with a\n// partially-evaluated namespace, throwing `ReferenceError: Cannot access\n// 'default' before initialization` from the loader's `mod.default` access.\n// Storybook runs inside `storybook dev` (vite-dev) and is currently the only\n// host that hits this. Production hosts (composer-app via `vite preview`)\n// keep using the lazy `.` exports and their associated code splitting.\n//\n// Use these `/plugin` entrypoints from any storybook `withPluginManager`\n// setup. The single-line `export * from './XPlugin'` re-exports avoid the\n// dynamic-import path entirely — see e.g. `plugin-attention/src/plugin.ts`.\nimport { AttentionPlugin } from '@dxos/plugin-attention/plugin';\nimport { GraphPlugin } from '@dxos/plugin-graph/plugin';\nimport { SettingsPlugin } from '@dxos/plugin-settings/plugin';\nimport { ThemePlugin } from '@dxos/plugin-theme/plugin';\nimport { defaultTx } from '@dxos/ui-theme';\n\n/**\n * Core plugins for testing/storybook environments.\n * NOTE: Does not include SpacePlugin to avoid circular dependencies.\n * Import SpacePlugin directly in your stories if needed.\n */\nexport const corePlugins = (): Plugin.Plugin[] => [\n AttentionPlugin(),\n GraphPlugin(),\n OperationPlugin(),\n RuntimePlugin(),\n SettingsPlugin(),\n ThemePlugin({ tx: defaultTx }),\n];\n"],
|
|
5
|
+
"mappings": ";AAIA,SAASA,cAAc;;;ACCvB,SAASC,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,aAAaJ;;;;EAIbK,QAAQ;AACV;;;ACXA,SAASC,iBAA8BC,qBAAqB;AAgB5D,SAASC,uBAAuB;AAChC,SAASC,mBAAmB;AAC5B,SAASC,sBAAsB;AAC/B,SAASC,mBAAmB;AAC5B,SAASC,iBAAiB;AAOnB,IAAMC,cAAc,MAAuB;EAChDL,gBAAAA;EACAC,YAAAA;EACAH,gBAAAA;EACAC,cAAAA;EACAG,eAAAA;EACAC,YAAY;IAAEG,IAAIF;EAAU,CAAA;;;;AF1BvB,IAAMG,kBAAkBC,OAAOC,KAAKC,MAAM,MAAM,OAAO,SAAA,CAAA;",
|
|
6
|
+
"names": ["Plugin", "trim", "meta", "id", "name", "description", "source", "OperationPlugin", "RuntimePlugin", "AttentionPlugin", "GraphPlugin", "SettingsPlugin", "ThemePlugin", "defaultTx", "corePlugins", "tx", "StorybookPlugin", "Plugin", "lazy", "meta"]
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"inputs":{"src/meta.ts":{"bytes":1576,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/core.ts":{"bytes":5426,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-theme/plugin","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true}],"format":"esm"},"src/index.ts":{"bytes":1102,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/core.ts","kind":"import-statement","original":"./core"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"#plugin","kind":"dynamic-import","external":true}],"format":"esm"},"src/harness.ts":{"bytes":5175,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/testing","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings","kind":"import-statement","external":true},{"path":"@dxos/plugin-theme","kind":"dynamic-import","external":true},{"path":"@dxos/ui-theme","kind":"dynamic-import","external":true}],"format":"esm"}},"outputs":{"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3548},"dist/lib/browser/index.mjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-theme/plugin","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"#plugin","kind":"dynamic-import","external":true}],"exports":["StorybookPlugin","corePlugins","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":112},"src/meta.ts":{"bytesInOutput":395},"src/core.ts":{"bytesInOutput":522}},"bytes":1182},"dist/lib/browser/harness.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2767},"dist/lib/browser/harness.mjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/testing","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings","kind":"import-statement","external":true},{"path":"@dxos/plugin-theme","kind":"dynamic-import","external":true},{"path":"@dxos/ui-theme","kind":"dynamic-import","external":true}],"exports":["createComposerTestApp"],"entryPoint":"src/harness.ts","inputs":{"src/harness.ts":{"bytesInOutput":873}},"bytes":964}}}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
|
|
3
|
+
// src/harness.ts
|
|
4
|
+
import { OperationPlugin, RuntimePlugin } from "@dxos/app-framework";
|
|
5
|
+
import { createTestApp } from "@dxos/app-framework/testing";
|
|
6
|
+
import { AttentionPlugin } from "@dxos/plugin-attention";
|
|
7
|
+
import { GraphPlugin } from "@dxos/plugin-graph";
|
|
8
|
+
import { SettingsPlugin } from "@dxos/plugin-settings";
|
|
9
|
+
var headlessCorePlugins = () => [
|
|
10
|
+
AttentionPlugin(),
|
|
11
|
+
GraphPlugin(),
|
|
12
|
+
OperationPlugin(),
|
|
13
|
+
RuntimePlugin(),
|
|
14
|
+
SettingsPlugin()
|
|
15
|
+
];
|
|
16
|
+
var createComposerTestApp = async (opts = {}) => {
|
|
17
|
+
const { plugins = [], theme = false, ...rest } = opts;
|
|
18
|
+
const core = headlessCorePlugins();
|
|
19
|
+
if (theme) {
|
|
20
|
+
const { ThemePlugin } = await import("@dxos/plugin-theme");
|
|
21
|
+
const { defaultTx } = await import("@dxos/ui-theme");
|
|
22
|
+
core.push(ThemePlugin({
|
|
23
|
+
tx: defaultTx
|
|
24
|
+
}));
|
|
25
|
+
}
|
|
26
|
+
return createTestApp({
|
|
27
|
+
...rest,
|
|
28
|
+
plugins: [
|
|
29
|
+
...core,
|
|
30
|
+
...plugins
|
|
31
|
+
]
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
export {
|
|
35
|
+
createComposerTestApp
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=harness.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/harness.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport { OperationPlugin, type Plugin, RuntimePlugin } from '@dxos/app-framework';\nimport { createTestApp, type TestAppOptions, type TestHarness } from '@dxos/app-framework/testing';\nimport { AttentionPlugin } from '@dxos/plugin-attention';\nimport { GraphPlugin } from '@dxos/plugin-graph';\nimport { SettingsPlugin } from '@dxos/plugin-settings';\n\nexport type ComposerTestAppOptions = Omit<TestAppOptions, 'plugins'> & {\n /** Plugins to register in addition to the Composer core plugins. */\n plugins?: Plugin.Plugin[];\n /**\n * Whether to include `ThemePlugin` in the core plugin set.\n * Defaults to `false` — `ThemePlugin` requires a browser DOM and breaks Node-only tests.\n * Set to `true` (with jsdom/happy-dom) when rendering React surfaces.\n */\n theme?: boolean;\n};\n\n/**\n * Headless core plugins for the test harness — the subset of `corePlugins()`\n * that can be activated without a browser DOM.\n */\nconst headlessCorePlugins = (): Plugin.Plugin[] => [\n AttentionPlugin(),\n GraphPlugin(),\n OperationPlugin(),\n RuntimePlugin(),\n SettingsPlugin(),\n];\n\n/**\n * Creates a TestHarness pre-loaded with the Composer core plugins\n * (Attention, Graph, Operation, Runtime, Settings, optionally Theme).\n *\n * For a ClientPlugin-backed harness, pass `ClientPlugin({ ... })` via `plugins`.\n */\nexport const createComposerTestApp = async (opts: ComposerTestAppOptions = {}): Promise<TestHarness> => {\n const { plugins = [], theme = false, ...rest } = opts;\n const core = headlessCorePlugins();\n if (theme) {\n const { ThemePlugin } = await import('@dxos/plugin-theme');\n const { defaultTx } = await import('@dxos/ui-theme');\n core.push(ThemePlugin({ tx: defaultTx }));\n }\n return createTestApp({\n ...rest,\n plugins: [...core, ...plugins],\n });\n};\n"],
|
|
5
|
+
"mappings": ";;;AAIA,SAASA,iBAA8BC,qBAAqB;AAC5D,SAASC,qBAA4D;AACrE,SAASC,uBAAuB;AAChC,SAASC,mBAAmB;AAC5B,SAASC,sBAAsB;AAiB/B,IAAMC,sBAAsB,MAAuB;EACjDH,gBAAAA;EACAC,YAAAA;EACAJ,gBAAAA;EACAC,cAAAA;EACAI,eAAAA;;AASK,IAAME,wBAAwB,OAAOC,OAA+B,CAAC,MAAC;AAC3E,QAAM,EAAEC,UAAU,CAAA,GAAIC,QAAQ,OAAO,GAAGC,KAAAA,IAASH;AACjD,QAAMI,OAAON,oBAAAA;AACb,MAAII,OAAO;AACT,UAAM,EAAEG,YAAW,IAAK,MAAM,OAAO,oBAAA;AACrC,UAAM,EAAEC,UAAS,IAAK,MAAM,OAAO,gBAAA;AACnCF,SAAKG,KAAKF,YAAY;MAAEG,IAAIF;IAAU,CAAA,CAAA;EACxC;AACA,SAAOZ,cAAc;IACnB,GAAGS;IACHF,SAAS;SAAIG;SAASH;;EACxB,CAAA;AACF;",
|
|
6
|
+
"names": ["OperationPlugin", "RuntimePlugin", "createTestApp", "AttentionPlugin", "GraphPlugin", "SettingsPlugin", "headlessCorePlugins", "createComposerTestApp", "opts", "plugins", "theme", "rest", "core", "ThemePlugin", "defaultTx", "push", "tx"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
|
|
3
|
+
// src/index.ts
|
|
4
|
+
import { Plugin } from "@dxos/app-framework";
|
|
5
|
+
|
|
6
|
+
// src/meta.ts
|
|
7
|
+
import { trim } from "@dxos/util";
|
|
8
|
+
var meta = {
|
|
9
|
+
id: "org.dxos.plugin.storybook-layout",
|
|
10
|
+
name: "Storybook",
|
|
11
|
+
description: trim`
|
|
12
|
+
Development layout optimized for Storybook component testing and documentation.
|
|
13
|
+
Provides specialized views for component development and design system exploration.
|
|
14
|
+
`,
|
|
15
|
+
source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-testing"
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
// src/core.ts
|
|
19
|
+
import { OperationPlugin, RuntimePlugin } from "@dxos/app-framework";
|
|
20
|
+
import { AttentionPlugin } from "@dxos/plugin-attention/plugin";
|
|
21
|
+
import { GraphPlugin } from "@dxos/plugin-graph/plugin";
|
|
22
|
+
import { SettingsPlugin } from "@dxos/plugin-settings/plugin";
|
|
23
|
+
import { ThemePlugin } from "@dxos/plugin-theme/plugin";
|
|
24
|
+
import { defaultTx } from "@dxos/ui-theme";
|
|
25
|
+
var corePlugins = () => [
|
|
26
|
+
AttentionPlugin(),
|
|
27
|
+
GraphPlugin(),
|
|
28
|
+
OperationPlugin(),
|
|
29
|
+
RuntimePlugin(),
|
|
30
|
+
SettingsPlugin(),
|
|
31
|
+
ThemePlugin({
|
|
32
|
+
tx: defaultTx
|
|
33
|
+
})
|
|
34
|
+
];
|
|
35
|
+
|
|
36
|
+
// src/index.ts
|
|
37
|
+
var StorybookPlugin = Plugin.lazy(meta, () => import("#plugin"));
|
|
38
|
+
export {
|
|
39
|
+
StorybookPlugin,
|
|
40
|
+
corePlugins,
|
|
41
|
+
meta
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/index.ts", "../../../src/meta.ts", "../../../src/core.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Plugin } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport * from './core';\nexport * from './meta';\n\nexport const StorybookPlugin = Plugin.lazy(meta, () => import('#plugin'));\nexport type { StorybookPluginOptions } from '#plugin';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: Plugin.Meta = {\n id: 'org.dxos.plugin.storybook-layout',\n name: 'Storybook',\n description: trim`\n Development layout optimized for Storybook component testing and documentation.\n Provides specialized views for component development and design system exploration.\n `,\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-testing',\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { OperationPlugin, type Plugin, RuntimePlugin } from '@dxos/app-framework';\n// `/plugin` entrypoints — `@dxos/plugin-attention/plugin`, `/plugin-client/plugin`,\n// `/plugin-graph/plugin`, `/plugin-preview/plugin`, `/plugin-settings/plugin`,\n// `/plugin-space/plugin`, `/plugin-theme/plugin` — re-export the plugin eagerly\n// (without `Plugin.lazy`). The default `.` export wraps each plugin in a lazy\n// stub (`() => import('./XPlugin')`), which webkit cannot reliably resolve\n// under vite-dev: the dynamic-import promise can settle with a\n// partially-evaluated namespace, throwing `ReferenceError: Cannot access\n// 'default' before initialization` from the loader's `mod.default` access.\n// Storybook runs inside `storybook dev` (vite-dev) and is currently the only\n// host that hits this. Production hosts (composer-app via `vite preview`)\n// keep using the lazy `.` exports and their associated code splitting.\n//\n// Use these `/plugin` entrypoints from any storybook `withPluginManager`\n// setup. The single-line `export * from './XPlugin'` re-exports avoid the\n// dynamic-import path entirely — see e.g. `plugin-attention/src/plugin.ts`.\nimport { AttentionPlugin } from '@dxos/plugin-attention/plugin';\nimport { GraphPlugin } from '@dxos/plugin-graph/plugin';\nimport { SettingsPlugin } from '@dxos/plugin-settings/plugin';\nimport { ThemePlugin } from '@dxos/plugin-theme/plugin';\nimport { defaultTx } from '@dxos/ui-theme';\n\n/**\n * Core plugins for testing/storybook environments.\n * NOTE: Does not include SpacePlugin to avoid circular dependencies.\n * Import SpacePlugin directly in your stories if needed.\n */\nexport const corePlugins = (): Plugin.Plugin[] => [\n AttentionPlugin(),\n GraphPlugin(),\n OperationPlugin(),\n RuntimePlugin(),\n SettingsPlugin(),\n ThemePlugin({ tx: defaultTx }),\n];\n"],
|
|
5
|
+
"mappings": ";;;AAIA,SAASA,cAAc;;;ACCvB,SAASC,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,aAAaJ;;;;EAIbK,QAAQ;AACV;;;ACXA,SAASC,iBAA8BC,qBAAqB;AAgB5D,SAASC,uBAAuB;AAChC,SAASC,mBAAmB;AAC5B,SAASC,sBAAsB;AAC/B,SAASC,mBAAmB;AAC5B,SAASC,iBAAiB;AAOnB,IAAMC,cAAc,MAAuB;EAChDL,gBAAAA;EACAC,YAAAA;EACAH,gBAAAA;EACAC,cAAAA;EACAG,eAAAA;EACAC,YAAY;IAAEG,IAAIF;EAAU,CAAA;;;;AF1BvB,IAAMG,kBAAkBC,OAAOC,KAAKC,MAAM,MAAM,OAAO,SAAA,CAAA;",
|
|
6
|
+
"names": ["Plugin", "trim", "meta", "id", "name", "description", "source", "OperationPlugin", "RuntimePlugin", "AttentionPlugin", "GraphPlugin", "SettingsPlugin", "ThemePlugin", "defaultTx", "corePlugins", "tx", "StorybookPlugin", "Plugin", "lazy", "meta"]
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"inputs":{"src/meta.ts":{"bytes":1576,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/core.ts":{"bytes":5426,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-theme/plugin","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true}],"format":"esm"},"src/index.ts":{"bytes":1102,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/core.ts","kind":"import-statement","original":"./core"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"#plugin","kind":"dynamic-import","external":true}],"format":"esm"},"src/harness.ts":{"bytes":5175,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/testing","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings","kind":"import-statement","external":true},{"path":"@dxos/plugin-theme","kind":"dynamic-import","external":true},{"path":"@dxos/ui-theme","kind":"dynamic-import","external":true}],"format":"esm"}},"outputs":{"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3550},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings/plugin","kind":"import-statement","external":true},{"path":"@dxos/plugin-theme/plugin","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"#plugin","kind":"dynamic-import","external":true}],"exports":["StorybookPlugin","corePlugins","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":112},"src/meta.ts":{"bytesInOutput":395},"src/core.ts":{"bytesInOutput":522}},"bytes":1275},"dist/lib/node-esm/harness.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2769},"dist/lib/node-esm/harness.mjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/testing","kind":"import-statement","external":true},{"path":"@dxos/plugin-attention","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-settings","kind":"import-statement","external":true},{"path":"@dxos/plugin-theme","kind":"dynamic-import","external":true},{"path":"@dxos/ui-theme","kind":"dynamic-import","external":true}],"exports":["createComposerTestApp"],"entryPoint":"src/harness.ts","inputs":{"src/harness.ts":{"bytesInOutput":873}},"bytes":1057}}}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Plugin } from '@dxos/app-framework';
|
|
2
|
+
import { type LayoutStateProps } from '#types';
|
|
3
|
+
export type StorybookPluginOptions = {
|
|
4
|
+
initialState?: Partial<LayoutStateProps>;
|
|
5
|
+
};
|
|
6
|
+
export declare const StorybookPlugin: Plugin.PluginFactory<StorybookPluginOptions>;
|
|
7
|
+
export default StorybookPlugin;
|
|
8
|
+
//# sourceMappingURL=StorybookPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StorybookPlugin.d.ts","sourceRoot":"","sources":["../../../src/StorybookPlugin.ts"],"names":[],"mappings":"AAMA,OAAO,EAA8C,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAMzF,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE/C,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC1C,CAAC;AAEF,eAAO,MAAM,eAAe,8CAoB3B,CAAC;eAEa,eAAe"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Capability } from '@dxos/app-framework';
|
|
2
|
+
import { OperationHandlerSet } from '@dxos/compute';
|
|
3
|
+
export declare const OperationHandler: Capability.LazyCapability<OperationHandlerSet.OperationHandlerSet, Capability.ModuleReturn, Error>;
|
|
4
|
+
export declare const State: Capability.LazyCapability<{
|
|
5
|
+
initialState?: Partial<import("../types").LayoutStateProps>;
|
|
6
|
+
} | undefined, [Capability.Capability<Capability.InterfaceDef<import("@effect-atom/atom/Atom").Writable<import("../types").LayoutStateProps, import("../types").LayoutStateProps>>>, Capability.Capability<Capability.InterfaceDef<import("@effect-atom/atom/Atom").Atom<Readonly<{
|
|
7
|
+
mode: string;
|
|
8
|
+
dialogOpen: boolean;
|
|
9
|
+
sidebarOpen: boolean;
|
|
10
|
+
complementarySidebarOpen: boolean;
|
|
11
|
+
workspace: string;
|
|
12
|
+
active: string[];
|
|
13
|
+
inactive: string[];
|
|
14
|
+
scrollIntoView: string | undefined;
|
|
15
|
+
}>>>>], Error>;
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,gBAAgB,oGAG5B,CAAC;AACF,eAAO,MAAM,KAAK;;;;;;;;;;;cAAoD,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as Effect from 'effect/Effect';
|
|
2
|
+
import { Capability } from '@dxos/app-framework';
|
|
3
|
+
import type { OperationHandlerSet } from '@dxos/compute';
|
|
4
|
+
declare const _default: (props: OperationHandlerSet.OperationHandlerSet) => Effect.Effect<Capability.ModuleReturn, Error, Capability.Service>;
|
|
5
|
+
export default _default;
|
|
6
|
+
//# sourceMappingURL=operation-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operation-handler.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/operation-handler.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Atom } from '@effect-atom/atom-react';
|
|
2
|
+
import * as Effect from 'effect/Effect';
|
|
3
|
+
import { Capability } from '@dxos/app-framework';
|
|
4
|
+
import { type LayoutStateProps } from '#types';
|
|
5
|
+
declare const _default: (props: {
|
|
6
|
+
initialState?: Partial<LayoutStateProps>;
|
|
7
|
+
} | undefined) => Effect.Effect<[Capability.Capability<Capability.InterfaceDef<Atom.Writable<LayoutStateProps, LayoutStateProps>>>, Capability.Capability<Capability.InterfaceDef<Atom.Atom<Readonly<{
|
|
8
|
+
mode: string;
|
|
9
|
+
dialogOpen: boolean;
|
|
10
|
+
sidebarOpen: boolean;
|
|
11
|
+
complementarySidebarOpen: boolean;
|
|
12
|
+
workspace: string;
|
|
13
|
+
active: string[];
|
|
14
|
+
inactive: string[];
|
|
15
|
+
scrollIntoView: string | undefined;
|
|
16
|
+
}>>>>], never, never>;
|
|
17
|
+
export default _default;
|
|
18
|
+
//# sourceMappingURL=state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/state.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,QAAQ,CAAC;;mBAWJ,OAAO,CAAC,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import React, { type PropsWithChildren } from 'react';
|
|
2
|
+
export declare const Layout: ({ children }: PropsWithChildren<{}>) => React.JSX.Element;
|
|
3
|
+
export declare const ErrorFallback: ({ error }: {
|
|
4
|
+
error?: Error;
|
|
5
|
+
}) => React.JSX.Element;
|
|
6
|
+
//# sourceMappingURL=Layout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Layout.d.ts","sourceRoot":"","sources":["../../../../../src/components/Layout/Layout.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAwD,MAAM,OAAO,CAAC;AAgE5G,eAAO,MAAM,MAAM,iBAAkB,iBAAiB,CAAC,EAAE,CAAC,sBAsJzD,CAAC;AAEF,eAAO,MAAM,aAAa,cAAe;IAAE,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,sBAczD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/Layout/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type Plugin } from '@dxos/app-framework';
|
|
2
|
+
/**
|
|
3
|
+
* Core plugins for testing/storybook environments.
|
|
4
|
+
* NOTE: Does not include SpacePlugin to avoid circular dependencies.
|
|
5
|
+
* Import SpacePlugin directly in your stories if needed.
|
|
6
|
+
*/
|
|
7
|
+
export declare const corePlugins: () => Plugin.Plugin[];
|
|
8
|
+
//# sourceMappingURL=core.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/core.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,KAAK,MAAM,EAAiB,MAAM,qBAAqB,CAAC;AAsBlF;;;;GAIG;AACH,eAAO,MAAM,WAAW,QAAO,MAAM,CAAC,MAAM,EAO3C,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type Plugin } from '@dxos/app-framework';
|
|
2
|
+
import { type TestAppOptions, type TestHarness } from '@dxos/app-framework/testing';
|
|
3
|
+
export type ComposerTestAppOptions = Omit<TestAppOptions, 'plugins'> & {
|
|
4
|
+
/** Plugins to register in addition to the Composer core plugins. */
|
|
5
|
+
plugins?: Plugin.Plugin[];
|
|
6
|
+
/**
|
|
7
|
+
* Whether to include `ThemePlugin` in the core plugin set.
|
|
8
|
+
* Defaults to `false` — `ThemePlugin` requires a browser DOM and breaks Node-only tests.
|
|
9
|
+
* Set to `true` (with jsdom/happy-dom) when rendering React surfaces.
|
|
10
|
+
*/
|
|
11
|
+
theme?: boolean;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Creates a TestHarness pre-loaded with the Composer core plugins
|
|
15
|
+
* (Attention, Graph, Operation, Runtime, Settings, optionally Theme).
|
|
16
|
+
*
|
|
17
|
+
* For a ClientPlugin-backed harness, pass `ClientPlugin({ ... })` via `plugins`.
|
|
18
|
+
*/
|
|
19
|
+
export declare const createComposerTestApp: (opts?: ComposerTestAppOptions) => Promise<TestHarness>;
|
|
20
|
+
//# sourceMappingURL=harness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"harness.d.ts","sourceRoot":"","sources":["../../../src/harness.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,KAAK,MAAM,EAAiB,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAiB,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAKnG,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,GAAG;IACrE,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAcF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,UAAgB,sBAAsB,KAAQ,OAAO,CAAC,WAAW,CAYlG,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Plugin } from '@dxos/app-framework';
|
|
2
|
+
export * from './core';
|
|
3
|
+
export * from './meta';
|
|
4
|
+
export declare const StorybookPlugin: Plugin.PluginFactory<import("#plugin").StorybookPluginOptions>;
|
|
5
|
+
export type { StorybookPluginOptions } from '#plugin';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAI7C,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AAEvB,eAAO,MAAM,eAAe,gEAA6C,CAAC;AAC1E,YAAY,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,IAQzB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-toast.d.ts","sourceRoot":"","sources":["../../../../src/operations/add-toast.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,QAAQ,CAQnE,CAAC;eAEa,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"close.d.ts","sourceRoot":"","sources":["../../../../src/operations/close.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,KAAK,CAEhE,CAAC;eAEa,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/operations/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,0BAA0B,yCAWtC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../../src/operations/open.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,IAAI,CAM/D,CAAC;eAEa,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scroll-into-view.d.ts","sourceRoot":"","sources":["../../../../src/operations/scroll-into-view.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,cAAc,CAEzE,CAAC;eAEa,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-layout-mode.d.ts","sourceRoot":"","sources":["../../../../src/operations/set-layout-mode.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,aAAa,CAExE,CAAC;eAEa,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switch-workspace.d.ts","sourceRoot":"","sources":["../../../../src/operations/switch-workspace.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,eAAe,CAM1E,CAAC;eAEa,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-complementary.d.ts","sourceRoot":"","sources":["../../../../src/operations/update-complementary.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,mBAAmB,CAa5E,CAAC;eAEW,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-dialog.d.ts","sourceRoot":"","sources":["../../../../src/operations/update-dialog.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,YAAY,CAavE,CAAC;eAEa,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-popover.d.ts","sourceRoot":"","sources":["../../../../src/operations/update-popover.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAK1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,aAAa,CAsBxE,CAAC;eAEa,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-sidebar.d.ts","sourceRoot":"","sources":["../../../../src/operations/update-sidebar.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,aAAa,CAYxE,CAAC;eAEa,OAAO"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import * as Effect from 'effect/Effect';
|
|
2
|
+
import { Capability } from '@dxos/app-framework';
|
|
3
|
+
import { type LayoutStateProps } from '../types';
|
|
4
|
+
export declare const updateState: (fn: (state: LayoutStateProps) => Partial<LayoutStateProps>) => Effect.Effect<void, Error, Capability.Service>;
|
|
5
|
+
//# sourceMappingURL=update-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-state.d.ts","sourceRoot":"","sources":["../../../../src/operations/update-state.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE9D,eAAO,MAAM,WAAW,OAAQ,CAAC,KAAK,EAAE,gBAAgB,KAAK,OAAO,CAAC,gBAAgB,CAAC,mDAMlF,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type Atom } from '@effect-atom/atom-react';
|
|
2
|
+
import { Capability } from '@dxos/app-framework';
|
|
3
|
+
import { type LayoutOperation } from '@dxos/app-toolkit';
|
|
4
|
+
import { type Label } from '@dxos/react-ui';
|
|
5
|
+
export type LayoutStateProps = {
|
|
6
|
+
sidebarState?: 'expanded' | 'collapsed' | 'closed';
|
|
7
|
+
complementarySidebarState?: 'expanded' | 'collapsed' | 'closed';
|
|
8
|
+
dialogOpen: boolean;
|
|
9
|
+
dialogType?: 'default' | 'alert';
|
|
10
|
+
dialogBlockAlign?: 'start' | 'center' | 'end';
|
|
11
|
+
dialogOverlayClasses?: string;
|
|
12
|
+
dialogOverlayStyle?: Record<string, any>;
|
|
13
|
+
/** Data to be passed to the dialog Surface. */
|
|
14
|
+
dialogContent?: any;
|
|
15
|
+
popoverOpen?: boolean;
|
|
16
|
+
popoverSide?: 'top' | 'right' | 'bottom' | 'left';
|
|
17
|
+
popoverVariant?: 'virtual' | 'react';
|
|
18
|
+
popoverAnchor?: HTMLButtonElement;
|
|
19
|
+
popoverAnchorId?: string;
|
|
20
|
+
popoverKind?: 'base' | 'card';
|
|
21
|
+
popoverTitle?: Label;
|
|
22
|
+
popoverContent?: any;
|
|
23
|
+
toasts: LayoutOperation.Toast[];
|
|
24
|
+
workspace: string;
|
|
25
|
+
};
|
|
26
|
+
export declare const LayoutState: Capability.InterfaceDef<Atom.Writable<LayoutStateProps, LayoutStateProps>>;
|
|
27
|
+
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../../src/types/capabilities.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAI5C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,YAAY,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;IACnD,yBAAyB,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;IAEhE,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC,gBAAgB,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IAC9C,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzC,+CAA+C;IAC/C,aAAa,CAAC,EAAE,GAAG,CAAC;IAEpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAClD,cAAc,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACrC,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,cAAc,CAAC,EAAE,GAAG,CAAC;IAErB,MAAM,EAAE,eAAe,CAAC,KAAK,EAAE,CAAC;IAEhC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,WAAW,4EAAuE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC"}
|