@dxos/app-framework 0.8.4-main.b97322e → 0.8.4-main.bcb3aa67d6
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/.storybook/main.mts +9 -0
- package/.storybook/preview.mts +8 -0
- package/.swc/plugins/linux_x86_64_19.0.0/727453fb3a62f7f1d952a41e051ca8a6f88cadc45cee43c6a4d1aa45f9b75665.wasmer-v7 +0 -0
- package/dist/lib/browser/capability-4NSF2SOO.mjs +38 -0
- package/dist/lib/browser/capability-4NSF2SOO.mjs.map +7 -0
- package/dist/lib/browser/capability-EB3UKSKA.mjs +35 -0
- package/dist/lib/browser/capability-EB3UKSKA.mjs.map +7 -0
- package/dist/lib/browser/chunk-27FZETIA.mjs +950 -0
- package/dist/lib/browser/chunk-27FZETIA.mjs.map +7 -0
- package/dist/lib/browser/chunk-CV7I2AAB.mjs +80 -0
- package/dist/lib/browser/chunk-CV7I2AAB.mjs.map +7 -0
- package/dist/lib/browser/chunk-FL2XTEJH.mjs +76 -0
- package/dist/lib/browser/chunk-FL2XTEJH.mjs.map +7 -0
- package/dist/lib/browser/chunk-H7OMDDGW.mjs +42 -0
- package/dist/lib/browser/chunk-H7OMDDGW.mjs.map +7 -0
- package/dist/lib/browser/chunk-HDQXX5DC.mjs +157 -0
- package/dist/lib/browser/chunk-HDQXX5DC.mjs.map +7 -0
- package/dist/lib/browser/chunk-I34GF4NG.mjs +34 -0
- package/dist/lib/browser/chunk-I34GF4NG.mjs.map +7 -0
- package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/browser/chunk-KNBRTZVK.mjs +892 -0
- package/dist/lib/browser/chunk-KNBRTZVK.mjs.map +7 -0
- package/dist/lib/browser/chunk-NO7R7QHA.mjs +167 -0
- package/dist/lib/browser/chunk-NO7R7QHA.mjs.map +7 -0
- package/dist/lib/browser/chunk-P2E7VMRF.mjs +148 -0
- package/dist/lib/browser/chunk-P2E7VMRF.mjs.map +7 -0
- package/dist/lib/browser/chunk-QSXYHXCE.mjs +48 -0
- package/dist/lib/browser/chunk-QSXYHXCE.mjs.map +7 -0
- package/dist/lib/browser/chunk-RFSO3JRG.mjs +1 -0
- package/dist/lib/browser/chunk-TGX63LTL.mjs +8 -0
- package/dist/lib/browser/chunk-TGX63LTL.mjs.map +7 -0
- package/dist/lib/browser/cli/index.mjs +90 -0
- package/dist/lib/browser/cli/index.mjs.map +7 -0
- package/dist/lib/browser/common/activation-events.mjs +24 -0
- package/dist/lib/browser/common/capabilities.mjs +46 -0
- package/dist/lib/browser/core/activation-event.mjs +20 -0
- package/dist/lib/browser/core/activation-event.mjs.map +7 -0
- package/dist/lib/browser/core/capability.mjs +28 -0
- package/dist/lib/browser/core/capability.mjs.map +7 -0
- package/dist/lib/browser/core/plugin-manager.mjs +15 -0
- package/dist/lib/browser/core/plugin-manager.mjs.map +7 -0
- package/dist/lib/browser/core/plugin.mjs +29 -0
- package/dist/lib/browser/core/plugin.mjs.map +7 -0
- package/dist/lib/browser/core/url-loader.mjs +12 -0
- package/dist/lib/browser/core/url-loader.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +91 -156
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/invoker-capability-P7KPBTP3.mjs +43 -0
- package/dist/lib/browser/invoker-capability-P7KPBTP3.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +115 -51
- package/dist/lib/browser/testing/index.mjs.map +4 -4
- package/dist/lib/browser/ui/index.mjs +44 -0
- package/dist/lib/browser/ui/index.mjs.map +7 -0
- package/dist/lib/node-esm/capability-CB3MNEI3.mjs +39 -0
- package/dist/lib/node-esm/capability-CB3MNEI3.mjs.map +7 -0
- package/dist/lib/node-esm/capability-CMROGK7R.mjs +36 -0
- package/dist/lib/node-esm/capability-CMROGK7R.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-37NG7SIN.mjs +77 -0
- package/dist/lib/node-esm/chunk-37NG7SIN.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-7JPKC7OM.mjs +893 -0
- package/dist/lib/node-esm/chunk-7JPKC7OM.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-7PPVTBYR.mjs +81 -0
- package/dist/lib/node-esm/chunk-7PPVTBYR.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-BQ56U4QX.mjs +43 -0
- package/dist/lib/node-esm/chunk-BQ56U4QX.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-CG6UBBZZ.mjs +149 -0
- package/dist/lib/node-esm/chunk-CG6UBBZZ.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-EL3R25OQ.mjs +2 -0
- package/dist/lib/node-esm/chunk-EL3R25OQ.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-EXYTXQ47.mjs +168 -0
- package/dist/lib/node-esm/chunk-EXYTXQ47.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-FKE4Z3D6.mjs +10 -0
- package/dist/lib/node-esm/chunk-FKE4Z3D6.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-OXXXRCQX.mjs +158 -0
- package/dist/lib/node-esm/chunk-OXXXRCQX.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-WZCSOX5Q.mjs +35 -0
- package/dist/lib/node-esm/chunk-WZCSOX5Q.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-YH44RHP6.mjs +951 -0
- package/dist/lib/node-esm/chunk-YH44RHP6.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-ZZ7CKK6W.mjs +49 -0
- package/dist/lib/node-esm/chunk-ZZ7CKK6W.mjs.map +7 -0
- package/dist/lib/node-esm/cli/index.mjs +91 -0
- package/dist/lib/node-esm/cli/index.mjs.map +7 -0
- package/dist/lib/node-esm/common/activation-events.mjs +25 -0
- package/dist/lib/node-esm/common/activation-events.mjs.map +7 -0
- package/dist/lib/node-esm/common/capabilities.mjs +47 -0
- package/dist/lib/node-esm/common/capabilities.mjs.map +7 -0
- package/dist/lib/node-esm/core/activation-event.mjs +21 -0
- package/dist/lib/node-esm/core/activation-event.mjs.map +7 -0
- package/dist/lib/node-esm/core/capability.mjs +29 -0
- package/dist/lib/node-esm/core/capability.mjs.map +7 -0
- package/dist/lib/node-esm/core/plugin-manager.mjs +16 -0
- package/dist/lib/node-esm/core/plugin-manager.mjs.map +7 -0
- package/dist/lib/node-esm/core/plugin.mjs +30 -0
- package/dist/lib/node-esm/core/plugin.mjs.map +7 -0
- package/dist/lib/node-esm/core/url-loader.mjs +13 -0
- package/dist/lib/node-esm/core/url-loader.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +91 -156
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/invoker-capability-3C5H46ZY.mjs +44 -0
- package/dist/lib/node-esm/invoker-capability-3C5H46ZY.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +115 -51
- package/dist/lib/node-esm/testing/index.mjs.map +4 -4
- package/dist/lib/node-esm/ui/index.mjs +45 -0
- package/dist/lib/node-esm/ui/index.mjs.map +7 -0
- package/dist/plugin/node-esm/index.mjs +384 -0
- package/dist/plugin/node-esm/index.mjs.map +7 -0
- package/dist/plugin/node-esm/meta.json +1 -0
- package/dist/types/src/cli/cli.d.ts +39 -0
- package/dist/types/src/cli/cli.d.ts.map +1 -0
- package/dist/types/src/cli/index.d.ts +2 -0
- package/dist/types/src/cli/index.d.ts.map +1 -0
- package/dist/types/src/common/activation-events.d.ts +27 -0
- package/dist/types/src/common/activation-events.d.ts.map +1 -0
- package/dist/types/src/common/capabilities.d.ts +109 -123
- package/dist/types/src/common/capabilities.d.ts.map +1 -1
- package/dist/types/src/common/index.d.ts +4 -8
- package/dist/types/src/common/index.d.ts.map +1 -1
- package/dist/types/src/common/operations.d.ts +19 -0
- package/dist/types/src/common/operations.d.ts.map +1 -0
- package/dist/types/src/common/translations.d.ts +8 -8
- package/dist/types/src/common/translations.d.ts.map +1 -1
- package/dist/types/src/context.d.ts +5 -0
- package/dist/types/src/context.d.ts.map +1 -0
- package/dist/types/src/core/{events.d.ts → activation-event.d.ts} +7 -7
- package/dist/types/src/core/activation-event.d.ts.map +1 -0
- package/dist/types/src/core/capability-manager.d.ts +43 -0
- package/dist/types/src/core/capability-manager.d.ts.map +1 -0
- package/dist/types/src/core/capability-manager.test.d.ts +2 -0
- package/dist/types/src/core/capability-manager.test.d.ts.map +1 -0
- package/dist/types/src/core/capability.d.ts +150 -0
- package/dist/types/src/core/capability.d.ts.map +1 -0
- package/dist/types/src/core/index.d.ts +6 -4
- package/dist/types/src/core/index.d.ts.map +1 -1
- package/dist/types/src/core/plugin-manager.d.ts +73 -0
- package/dist/types/src/core/plugin-manager.d.ts.map +1 -0
- package/dist/types/src/core/plugin-manager.test.d.ts +2 -0
- package/dist/types/src/core/plugin-manager.test.d.ts.map +1 -0
- package/dist/types/src/core/plugin.d.ts +103 -33
- package/dist/types/src/core/plugin.d.ts.map +1 -1
- package/dist/types/src/core/url-loader.d.ts +25 -0
- package/dist/types/src/core/url-loader.d.ts.map +1 -0
- package/dist/types/src/core/url-loader.test.d.ts +2 -0
- package/dist/types/src/core/url-loader.test.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +3 -4
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/plugin-operation/OperationPlugin.d.ts +3 -0
- package/dist/types/src/plugin-operation/OperationPlugin.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/history/capability.d.ts +7 -0
- package/dist/types/src/plugin-operation/history/capability.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/history/errors.d.ts +32 -0
- package/dist/types/src/plugin-operation/history/errors.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/history/history-tracker.d.ts +18 -0
- package/dist/types/src/plugin-operation/history/history-tracker.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/history/history-tracker.test.d.ts +2 -0
- package/dist/types/src/plugin-operation/history/history-tracker.test.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/history/index.d.ts +6 -0
- package/dist/types/src/plugin-operation/history/index.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/history/types.d.ts +13 -0
- package/dist/types/src/plugin-operation/history/types.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/history/undo-mapping.d.ts +101 -0
- package/dist/types/src/plugin-operation/history/undo-mapping.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/history/undo-registry.d.ts +23 -0
- package/dist/types/src/plugin-operation/history/undo-registry.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/history/undo-registry.test.d.ts +2 -0
- package/dist/types/src/plugin-operation/history/undo-registry.test.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/index.d.ts +3 -0
- package/dist/types/src/plugin-operation/index.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/invoker-capability.d.ts +6 -0
- package/dist/types/src/plugin-operation/invoker-capability.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/meta.d.ts +3 -0
- package/dist/types/src/plugin-operation/meta.d.ts.map +1 -0
- package/dist/types/src/plugin-operation/testing.d.ts +58 -0
- package/dist/types/src/plugin-operation/testing.d.ts.map +1 -0
- package/dist/types/src/plugin-runtime/RuntimePlugin.d.ts +3 -0
- package/dist/types/src/plugin-runtime/RuntimePlugin.d.ts.map +1 -0
- package/dist/types/src/plugin-runtime/capability.d.ts +6 -0
- package/dist/types/src/plugin-runtime/capability.d.ts.map +1 -0
- package/dist/types/src/plugin-runtime/index.d.ts +2 -0
- package/dist/types/src/plugin-runtime/index.d.ts.map +1 -0
- package/dist/types/src/plugin-runtime/meta.d.ts +3 -0
- package/dist/types/src/plugin-runtime/meta.d.ts.map +1 -0
- package/dist/types/src/testing/index.d.ts +1 -0
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/testing/service.d.ts +8 -0
- package/dist/types/src/testing/service.d.ts.map +1 -0
- package/dist/types/src/testing/withPluginManager.d.ts +11 -10
- package/dist/types/src/testing/withPluginManager.d.ts.map +1 -1
- package/dist/types/src/testing/withPluginManager.stories.d.ts +9 -3
- package/dist/types/src/testing/withPluginManager.stories.d.ts.map +1 -1
- package/dist/types/src/ui/components/App/App.d.ts +9 -0
- package/dist/types/src/ui/components/App/App.d.ts.map +1 -0
- package/dist/types/src/ui/components/App/App.stories.d.ts +19 -0
- package/dist/types/src/ui/components/App/App.stories.d.ts.map +1 -0
- package/dist/types/src/ui/components/App/index.d.ts +2 -0
- package/dist/types/src/ui/components/App/index.d.ts.map +1 -0
- package/dist/types/src/ui/components/PluginManager/PluginManagerContext.stories.d.ts +13 -0
- package/dist/types/src/ui/components/PluginManager/PluginManagerContext.stories.d.ts.map +1 -0
- package/dist/types/src/ui/components/PluginManager/PluginManagerProvider.d.ts +10 -0
- package/dist/types/src/ui/components/PluginManager/PluginManagerProvider.d.ts.map +1 -0
- package/dist/types/src/ui/components/PluginManager/index.d.ts +2 -0
- package/dist/types/src/ui/components/PluginManager/index.d.ts.map +1 -0
- package/dist/types/src/ui/components/Surface/SurfaceComponent.d.ts +12 -0
- package/dist/types/src/ui/components/Surface/SurfaceComponent.d.ts.map +1 -0
- package/dist/types/src/ui/components/Surface/SurfaceComponent.stories.d.ts +14 -0
- package/dist/types/src/ui/components/Surface/SurfaceComponent.stories.d.ts.map +1 -0
- package/dist/types/src/ui/components/Surface/SurfaceInfo.d.ts +11 -0
- package/dist/types/src/ui/components/Surface/SurfaceInfo.d.ts.map +1 -0
- package/dist/types/src/ui/components/Surface/SurfaceProfilerContext.d.ts +48 -0
- package/dist/types/src/ui/components/Surface/SurfaceProfilerContext.d.ts.map +1 -0
- package/dist/types/src/ui/components/Surface/context.d.ts +5 -0
- package/dist/types/src/ui/components/Surface/context.d.ts.map +1 -0
- package/dist/types/src/ui/components/Surface/index.d.ts +26 -0
- package/dist/types/src/ui/components/Surface/index.d.ts.map +1 -0
- package/dist/types/src/ui/components/Surface/types.d.ts +96 -0
- package/dist/types/src/ui/components/Surface/types.d.ts.map +1 -0
- package/dist/types/src/ui/components/index.d.ts +4 -0
- package/dist/types/src/ui/components/index.d.ts.map +1 -0
- package/dist/types/src/ui/hooks/index.d.ts +6 -0
- package/dist/types/src/ui/hooks/index.d.ts.map +1 -0
- package/dist/types/src/ui/hooks/useApp.d.ts +62 -0
- package/dist/types/src/ui/hooks/useApp.d.ts.map +1 -0
- package/dist/types/src/ui/hooks/useApp.test.d.ts +2 -0
- package/dist/types/src/ui/hooks/useApp.test.d.ts.map +1 -0
- package/dist/types/src/ui/hooks/useCapabilities.d.ts +31 -0
- package/dist/types/src/ui/hooks/useCapabilities.d.ts.map +1 -0
- package/dist/types/src/ui/hooks/useLoading.d.ts +18 -0
- package/dist/types/src/ui/hooks/useLoading.d.ts.map +1 -0
- package/dist/types/src/ui/hooks/useSettingsState.d.ts +10 -0
- package/dist/types/src/ui/hooks/useSettingsState.d.ts.map +1 -0
- package/dist/types/src/ui/hooks/useSurface.d.ts +3 -0
- package/dist/types/src/ui/hooks/useSurface.d.ts.map +1 -0
- package/dist/types/src/ui/index.d.ts +3 -0
- package/dist/types/src/ui/index.d.ts.map +1 -0
- package/dist/types/src/vite-plugin/composer-plugin.d.ts +18 -0
- package/dist/types/src/vite-plugin/composer-plugin.d.ts.map +1 -0
- package/dist/types/src/vite-plugin/import-map-plugin.d.ts +16 -0
- package/dist/types/src/vite-plugin/import-map-plugin.d.ts.map +1 -0
- package/dist/types/src/vite-plugin/index.d.ts +3 -0
- package/dist/types/src/vite-plugin/index.d.ts.map +1 -0
- package/dist/types/src/vite-plugin/packages.d.ts +7 -0
- package/dist/types/src/vite-plugin/packages.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/moon.yml +25 -3
- package/package.json +132 -44
- package/src/cli/cli.ts +107 -0
- package/src/{playground/layout → cli}/index.ts +1 -1
- package/src/common/activation-events.ts +44 -0
- package/src/common/capabilities.ts +168 -114
- package/src/common/index.ts +4 -8
- package/src/common/operations.ts +36 -0
- package/src/common/translations.ts +18 -10
- package/src/context.ts +9 -0
- package/src/core/{events.ts → activation-event.ts} +10 -7
- package/src/core/capability-manager.test.ts +151 -0
- package/src/core/capability-manager.ts +171 -0
- package/src/core/capability.ts +237 -0
- package/src/core/index.ts +6 -4
- package/src/core/plugin-manager.test.ts +1114 -0
- package/src/core/plugin-manager.ts +883 -0
- package/src/core/plugin.ts +238 -37
- package/src/core/url-loader.test.ts +79 -0
- package/src/core/url-loader.ts +148 -0
- package/src/helpers.test.ts +1 -1
- package/src/index.ts +3 -4
- package/src/plugin-operation/OperationPlugin.ts +25 -0
- package/src/plugin-operation/history/capability.ts +37 -0
- package/src/plugin-operation/history/errors.ts +7 -0
- package/src/plugin-operation/history/history-tracker.test.ts +374 -0
- package/src/plugin-operation/history/history-tracker.ts +129 -0
- package/src/plugin-operation/history/index.ts +9 -0
- package/src/plugin-operation/history/types.ts +17 -0
- package/src/plugin-operation/history/undo-mapping.ts +135 -0
- package/src/plugin-operation/history/undo-registry.test.ts +73 -0
- package/src/plugin-operation/history/undo-registry.ts +54 -0
- package/src/plugin-operation/index.ts +6 -0
- package/src/plugin-operation/invoker-capability.ts +54 -0
- package/src/plugin-operation/meta.ts +11 -0
- package/src/plugin-operation/testing.ts +154 -0
- package/src/plugin-runtime/RuntimePlugin.ts +20 -0
- package/src/plugin-runtime/capability.ts +53 -0
- package/src/{playground/debug → plugin-runtime}/index.ts +1 -1
- package/src/plugin-runtime/meta.ts +11 -0
- package/src/testing/index.ts +1 -0
- package/src/testing/service.ts +52 -0
- package/src/testing/withPluginManager.stories.tsx +15 -11
- package/src/testing/withPluginManager.tsx +80 -54
- package/src/ui/components/App/App.stories.tsx +92 -0
- package/src/ui/components/App/App.tsx +58 -0
- package/src/{playground/logger → ui/components/App}/index.ts +1 -1
- package/src/ui/components/PluginManager/PluginManagerContext.stories.tsx +183 -0
- package/src/{react → ui/components/PluginManager}/PluginManagerProvider.ts +3 -3
- package/src/ui/components/PluginManager/index.ts +5 -0
- package/src/ui/components/Surface/SurfaceComponent.stories.tsx +145 -0
- package/src/ui/components/Surface/SurfaceComponent.tsx +257 -0
- package/src/ui/components/Surface/SurfaceInfo.tsx +107 -0
- package/src/ui/components/Surface/SurfaceProfilerContext.tsx +207 -0
- package/src/ui/components/Surface/context.ts +12 -0
- package/src/ui/components/Surface/index.ts +35 -0
- package/src/ui/components/Surface/types.ts +117 -0
- package/src/ui/components/index.ts +7 -0
- package/src/ui/hooks/index.ts +9 -0
- package/src/ui/hooks/useApp.test.tsx +159 -0
- package/src/ui/hooks/useApp.tsx +289 -0
- package/src/ui/hooks/useCapabilities.ts +67 -0
- package/src/ui/hooks/useLoading.tsx +68 -0
- package/src/ui/hooks/useSettingsState.ts +26 -0
- package/src/ui/hooks/useSurface.ts +13 -0
- package/src/ui/index.ts +6 -0
- package/src/vite-plugin/composer-plugin.ts +128 -0
- package/src/vite-plugin/import-map-plugin.ts +315 -0
- package/src/vite-plugin/index.ts +6 -0
- package/src/vite-plugin/packages.ts +29 -0
- package/tsconfig.json +15 -28
- package/tsconfig.node.json +2 -4
- package/typedoc.json +2 -4
- package/vitest.config.ts +8 -6
- package/.swc/plugins/v7_linux_x86_64_13.0.0/f45bdff002284d9e8f9ef3f0be909de12da36c049cbcf261ac78fc00abb09a2d +0 -0
- package/.swc/plugins/v7_linux_x86_64_13.0.0/fce1bdb8e20a094e4af08bad09cc81497ed0e2e7c51223b07d371063cca18429 +0 -0
- package/dist/lib/browser/app-graph-builder-LYF7EKNN.mjs +0 -137
- package/dist/lib/browser/app-graph-builder-LYF7EKNN.mjs.map +0 -7
- package/dist/lib/browser/chunk-FMN65HSW.mjs +0 -1519
- package/dist/lib/browser/chunk-FMN65HSW.mjs.map +0 -7
- package/dist/lib/browser/chunk-FO2PH7M3.mjs +0 -415
- package/dist/lib/browser/chunk-FO2PH7M3.mjs.map +0 -7
- package/dist/lib/browser/chunk-ORWHM7CO.mjs +0 -32
- package/dist/lib/browser/chunk-ORWHM7CO.mjs.map +0 -7
- package/dist/lib/browser/intent-dispatcher-LSYQZSEB.mjs +0 -11
- package/dist/lib/browser/intent-resolver-ZTNOSO3A.mjs +0 -39
- package/dist/lib/browser/intent-resolver-ZTNOSO3A.mjs.map +0 -7
- package/dist/lib/browser/store-KML2R4IE.mjs +0 -30
- package/dist/lib/browser/store-KML2R4IE.mjs.map +0 -7
- package/dist/lib/browser/worker.mjs +0 -79
- package/dist/lib/node-esm/app-graph-builder-SAOWGJDK.mjs +0 -138
- package/dist/lib/node-esm/app-graph-builder-SAOWGJDK.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-73HGSHKE.mjs +0 -416
- package/dist/lib/node-esm/chunk-73HGSHKE.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-UMZQERLE.mjs +0 -34
- package/dist/lib/node-esm/chunk-UMZQERLE.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-ZEZ4FVEU.mjs +0 -1521
- package/dist/lib/node-esm/chunk-ZEZ4FVEU.mjs.map +0 -7
- package/dist/lib/node-esm/intent-dispatcher-6CYNGPSW.mjs +0 -12
- package/dist/lib/node-esm/intent-resolver-W7Z7WFFM.mjs +0 -40
- package/dist/lib/node-esm/intent-resolver-W7Z7WFFM.mjs.map +0 -7
- package/dist/lib/node-esm/store-QEXGXLWZ.mjs +0 -31
- package/dist/lib/node-esm/store-QEXGXLWZ.mjs.map +0 -7
- package/dist/lib/node-esm/worker.mjs +0 -80
- package/dist/types/src/App.d.ts +0 -43
- package/dist/types/src/App.d.ts.map +0 -1
- package/dist/types/src/common/collaboration.d.ts +0 -19
- package/dist/types/src/common/collaboration.d.ts.map +0 -1
- package/dist/types/src/common/events.d.ts +0 -52
- package/dist/types/src/common/events.d.ts.map +0 -1
- package/dist/types/src/common/file.d.ts +0 -14
- package/dist/types/src/common/file.d.ts.map +0 -1
- package/dist/types/src/common/graph.d.ts +0 -21
- package/dist/types/src/common/graph.d.ts.map +0 -1
- package/dist/types/src/common/layout.d.ts +0 -281
- package/dist/types/src/common/layout.d.ts.map +0 -1
- package/dist/types/src/common/surface.d.ts +0 -65
- package/dist/types/src/common/surface.d.ts.map +0 -1
- package/dist/types/src/core/capabilities.d.ts +0 -114
- package/dist/types/src/core/capabilities.d.ts.map +0 -1
- package/dist/types/src/core/capabilities.test.d.ts +0 -2
- package/dist/types/src/core/capabilities.test.d.ts.map +0 -1
- package/dist/types/src/core/events.d.ts.map +0 -1
- package/dist/types/src/core/manager.d.ts +0 -122
- package/dist/types/src/core/manager.d.ts.map +0 -1
- package/dist/types/src/core/manager.test.d.ts +0 -2
- package/dist/types/src/core/manager.test.d.ts.map +0 -1
- package/dist/types/src/playground/debug/Debug.d.ts +0 -6
- package/dist/types/src/playground/debug/Debug.d.ts.map +0 -1
- package/dist/types/src/playground/debug/index.d.ts +0 -2
- package/dist/types/src/playground/debug/index.d.ts.map +0 -1
- package/dist/types/src/playground/debug/plugin.d.ts +0 -2
- package/dist/types/src/playground/debug/plugin.d.ts.map +0 -1
- package/dist/types/src/playground/generator/Main.d.ts +0 -6
- package/dist/types/src/playground/generator/Main.d.ts.map +0 -1
- package/dist/types/src/playground/generator/Toolbar.d.ts +0 -6
- package/dist/types/src/playground/generator/Toolbar.d.ts.map +0 -1
- package/dist/types/src/playground/generator/generator.d.ts +0 -7
- package/dist/types/src/playground/generator/generator.d.ts.map +0 -1
- package/dist/types/src/playground/generator/index.d.ts +0 -3
- package/dist/types/src/playground/generator/index.d.ts.map +0 -1
- package/dist/types/src/playground/generator/plugin.d.ts +0 -2
- package/dist/types/src/playground/generator/plugin.d.ts.map +0 -1
- package/dist/types/src/playground/layout/Layout.d.ts +0 -8
- package/dist/types/src/playground/layout/Layout.d.ts.map +0 -1
- package/dist/types/src/playground/layout/index.d.ts +0 -2
- package/dist/types/src/playground/layout/index.d.ts.map +0 -1
- package/dist/types/src/playground/layout/plugin.d.ts +0 -2
- package/dist/types/src/playground/layout/plugin.d.ts.map +0 -1
- package/dist/types/src/playground/logger/Toolbar.d.ts +0 -6
- package/dist/types/src/playground/logger/Toolbar.d.ts.map +0 -1
- package/dist/types/src/playground/logger/index.d.ts +0 -2
- package/dist/types/src/playground/logger/index.d.ts.map +0 -1
- package/dist/types/src/playground/logger/plugin.d.ts +0 -2
- package/dist/types/src/playground/logger/plugin.d.ts.map +0 -1
- package/dist/types/src/playground/logger/schema.d.ts +0 -13
- package/dist/types/src/playground/logger/schema.d.ts.map +0 -1
- package/dist/types/src/playground/playground.stories.d.ts +0 -10
- package/dist/types/src/playground/playground.stories.d.ts.map +0 -1
- package/dist/types/src/plugin-intent/IntentPlugin.d.ts +0 -2
- package/dist/types/src/plugin-intent/IntentPlugin.d.ts.map +0 -1
- package/dist/types/src/plugin-intent/actions.d.ts +0 -38
- package/dist/types/src/plugin-intent/actions.d.ts.map +0 -1
- package/dist/types/src/plugin-intent/errors.d.ts +0 -16
- package/dist/types/src/plugin-intent/errors.d.ts.map +0 -1
- package/dist/types/src/plugin-intent/index.d.ts +0 -5
- package/dist/types/src/plugin-intent/index.d.ts.map +0 -1
- package/dist/types/src/plugin-intent/intent-dispatcher.d.ts +0 -139
- package/dist/types/src/plugin-intent/intent-dispatcher.d.ts.map +0 -1
- package/dist/types/src/plugin-intent/intent-dispatcher.test.d.ts +0 -2
- package/dist/types/src/plugin-intent/intent-dispatcher.test.d.ts.map +0 -1
- package/dist/types/src/plugin-intent/intent.d.ts +0 -63
- package/dist/types/src/plugin-intent/intent.d.ts.map +0 -1
- package/dist/types/src/plugin-settings/SettingsPlugin.d.ts +0 -2
- package/dist/types/src/plugin-settings/SettingsPlugin.d.ts.map +0 -1
- package/dist/types/src/plugin-settings/actions.d.ts +0 -27
- package/dist/types/src/plugin-settings/actions.d.ts.map +0 -1
- package/dist/types/src/plugin-settings/app-graph-builder.d.ts +0 -4
- package/dist/types/src/plugin-settings/app-graph-builder.d.ts.map +0 -1
- package/dist/types/src/plugin-settings/index.d.ts +0 -3
- package/dist/types/src/plugin-settings/index.d.ts.map +0 -1
- package/dist/types/src/plugin-settings/intent-resolver.d.ts +0 -4
- package/dist/types/src/plugin-settings/intent-resolver.d.ts.map +0 -1
- package/dist/types/src/plugin-settings/store.d.ts +0 -5
- package/dist/types/src/plugin-settings/store.d.ts.map +0 -1
- package/dist/types/src/plugin-settings/translations.d.ts +0 -10
- package/dist/types/src/plugin-settings/translations.d.ts.map +0 -1
- package/dist/types/src/react/ErrorBoundary.d.ts +0 -31
- package/dist/types/src/react/ErrorBoundary.d.ts.map +0 -1
- package/dist/types/src/react/IntentContext.d.ts +0 -8
- package/dist/types/src/react/IntentContext.d.ts.map +0 -1
- package/dist/types/src/react/PluginManagerProvider.d.ts +0 -10
- package/dist/types/src/react/PluginManagerProvider.d.ts.map +0 -1
- package/dist/types/src/react/Surface.d.ts +0 -12
- package/dist/types/src/react/Surface.d.ts.map +0 -1
- package/dist/types/src/react/Surface.stories.d.ts +0 -16
- package/dist/types/src/react/Surface.stories.d.ts.map +0 -1
- package/dist/types/src/react/common.d.ts +0 -13
- package/dist/types/src/react/common.d.ts.map +0 -1
- package/dist/types/src/react/index.d.ts +0 -7
- package/dist/types/src/react/index.d.ts.map +0 -1
- package/dist/types/src/react/useCapabilities.d.ts +0 -13
- package/dist/types/src/react/useCapabilities.d.ts.map +0 -1
- package/dist/types/src/react/useIntentResolver.d.ts +0 -3
- package/dist/types/src/react/useIntentResolver.d.ts.map +0 -1
- package/dist/types/src/worker.d.ts +0 -4
- package/dist/types/src/worker.d.ts.map +0 -1
- package/src/App.tsx +0 -276
- package/src/common/collaboration.ts +0 -21
- package/src/common/events.ts +0 -77
- package/src/common/file.ts +0 -22
- package/src/common/graph.ts +0 -30
- package/src/common/layout.ts +0 -278
- package/src/common/surface.ts +0 -86
- package/src/core/capabilities.test.ts +0 -136
- package/src/core/capabilities.ts +0 -254
- package/src/core/manager.test.ts +0 -515
- package/src/core/manager.ts +0 -519
- package/src/playground/debug/Debug.tsx +0 -39
- package/src/playground/debug/plugin.ts +0 -17
- package/src/playground/generator/Main.tsx +0 -71
- package/src/playground/generator/Toolbar.tsx +0 -46
- package/src/playground/generator/generator.ts +0 -48
- package/src/playground/generator/index.ts +0 -6
- package/src/playground/generator/plugin.ts +0 -23
- package/src/playground/layout/Layout.tsx +0 -33
- package/src/playground/layout/plugin.ts +0 -17
- package/src/playground/logger/Toolbar.tsx +0 -29
- package/src/playground/logger/plugin.ts +0 -36
- package/src/playground/logger/schema.ts +0 -12
- package/src/playground/playground.stories.tsx +0 -42
- package/src/plugin-intent/IntentPlugin.ts +0 -20
- package/src/plugin-intent/actions.ts +0 -33
- package/src/plugin-intent/errors.ts +0 -39
- package/src/plugin-intent/index.ts +0 -8
- package/src/plugin-intent/intent-dispatcher.test.ts +0 -279
- package/src/plugin-intent/intent-dispatcher.ts +0 -333
- package/src/plugin-intent/intent.ts +0 -154
- package/src/plugin-settings/SettingsPlugin.ts +0 -35
- package/src/plugin-settings/actions.ts +0 -29
- package/src/plugin-settings/app-graph-builder.ts +0 -157
- package/src/plugin-settings/index.ts +0 -6
- package/src/plugin-settings/intent-resolver.ts +0 -34
- package/src/plugin-settings/store.ts +0 -33
- package/src/plugin-settings/translations.ts +0 -19
- package/src/react/ErrorBoundary.tsx +0 -45
- package/src/react/IntentContext.tsx +0 -34
- package/src/react/Surface.stories.tsx +0 -96
- package/src/react/Surface.tsx +0 -77
- package/src/react/common.ts +0 -12
- package/src/react/index.ts +0 -10
- package/src/react/useCapabilities.ts +0 -30
- package/src/react/useIntentResolver.ts +0 -22
- package/src/worker.ts +0 -11
- /package/dist/lib/browser/{intent-dispatcher-LSYQZSEB.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
- /package/dist/lib/browser/{worker.mjs.map → chunk-RFSO3JRG.mjs.map} +0 -0
- /package/dist/lib/{node-esm/intent-dispatcher-6CYNGPSW.mjs.map → browser/common/activation-events.mjs.map} +0 -0
- /package/dist/lib/{node-esm/worker.mjs.map → browser/common/capabilities.mjs.map} +0 -0
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { type Context, type Provider } from 'react';
|
|
2
|
-
import { type AnyIntentResolver, type IntentContext } from '../plugin-intent';
|
|
3
|
-
declare const IntentContext: Context<IntentContext | undefined>;
|
|
4
|
-
export declare const useIntentDispatcher: () => Pick<IntentContext, "dispatch" | "dispatchPromise">;
|
|
5
|
-
export declare const useIntentResolver: (module: string, resolver: AnyIntentResolver) => void;
|
|
6
|
-
export declare const IntentProvider: Provider<IntentContext | undefined>;
|
|
7
|
-
export {};
|
|
8
|
-
//# sourceMappingURL=IntentContext.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IntentContext.d.ts","sourceRoot":"","sources":["../../../../src/react/IntentContext.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAA6B,KAAK,QAAQ,EAAa,MAAM,OAAO,CAAC;AAO1F,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE9E,QAAA,MAAM,aAAa,EAAE,OAAO,CAAC,aAAa,GAAG,SAAS,CAAuD,CAAC;AAE9G,eAAO,MAAM,mBAAmB,QAAO,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,iBAAiB,CAGxF,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,EAAE,UAAU,iBAAiB,SAW5E,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAA0B,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { type PluginManager } from '../core';
|
|
2
|
-
/**
|
|
3
|
-
* Get the plugin manager.
|
|
4
|
-
*/
|
|
5
|
-
export declare const usePluginManager: () => PluginManager;
|
|
6
|
-
/**
|
|
7
|
-
* Context provider for a plugin manager.
|
|
8
|
-
*/
|
|
9
|
-
export declare const PluginManagerProvider: import("react").Provider<PluginManager | undefined>;
|
|
10
|
-
//# sourceMappingURL=PluginManagerProvider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PluginManagerProvider.d.ts","sourceRoot":"","sources":["../../../../src/react/PluginManagerProvider.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAI7C;;GAEG;AACH,eAAO,MAAM,gBAAgB,QAAO,aACkD,CAAC;AAEvF;;GAEG;AACH,eAAO,MAAM,qBAAqB,qDAAgC,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { type SurfaceProps } from '../common';
|
|
3
|
-
import { type PluginContext } from '../core';
|
|
4
|
-
/**
|
|
5
|
-
* @returns `true` if there is a contributed surface which matches the specified role & data, `false` otherwise.
|
|
6
|
-
*/
|
|
7
|
-
export declare const isSurfaceAvailable: (context: PluginContext, { role, data }: Pick<SurfaceProps, "role" | "data">) => boolean;
|
|
8
|
-
/**
|
|
9
|
-
* A surface is a named region of the screen that can be populated by plugins.
|
|
10
|
-
*/
|
|
11
|
-
export declare const Surface: React.MemoExoticComponent<React.ForwardRefExoticComponent<Omit<SurfaceProps, "ref"> & React.RefAttributes<HTMLElement>>>;
|
|
12
|
-
//# sourceMappingURL=Surface.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Surface.d.ts","sourceRoot":"","sources":["../../../../src/react/Surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAwD,MAAM,OAAO,CAAC;AAO7E,OAAO,EAAwC,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AACpF,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAqB7C;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,SAAS,aAAa,EAAE,gBAAgB,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,YAI7G,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,0HA6BnB,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import '@dxos-theme';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import { type PluginManager } from '../core';
|
|
4
|
-
declare const _default: {
|
|
5
|
-
title: string;
|
|
6
|
-
render: ({ manager }: {
|
|
7
|
-
manager: PluginManager;
|
|
8
|
-
}) => React.JSX.Element;
|
|
9
|
-
decorators: import("@storybook/react").Decorator[];
|
|
10
|
-
args: {
|
|
11
|
-
manager: PluginManager;
|
|
12
|
-
};
|
|
13
|
-
};
|
|
14
|
-
export default _default;
|
|
15
|
-
export declare const Default: {};
|
|
16
|
-
//# sourceMappingURL=Surface.stories.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Surface.stories.d.ts","sourceRoot":"","sources":["../../../../src/react/Surface.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,KAAgC,MAAM,OAAO,CAAC;AASrD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;;;0BAkErB;QAAE,OAAO,EAAE,aAAa,CAAA;KAAE;;;;;;AAFlD,wBAcE;AAEF,eAAO,MAAM,OAAO,IAAK,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export declare const useIntentDispatcher: () => import("..").IntentContext;
|
|
2
|
-
export declare const useAppGraph: () => Readonly<Pick<import("@dxos/app-graph").GraphBuilder, "graph" | "explore">>;
|
|
3
|
-
export declare const useLayout: () => Readonly<{
|
|
4
|
-
mode: string;
|
|
5
|
-
dialogOpen: boolean;
|
|
6
|
-
sidebarOpen: boolean;
|
|
7
|
-
complementarySidebarOpen: boolean;
|
|
8
|
-
workspace: string;
|
|
9
|
-
active: string[];
|
|
10
|
-
inactive: string[];
|
|
11
|
-
scrollIntoView: string | undefined;
|
|
12
|
-
}>;
|
|
13
|
-
//# sourceMappingURL=common.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/react/common.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,mBAAmB,kCAAqD,CAAC;AAEtF,eAAO,MAAM,WAAW,mFAA6C,CAAC;AAEtE,eAAO,MAAM,SAAS;;;;;;;;;EAA2C,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { type InterfaceDef } from '../core';
|
|
2
|
-
/**
|
|
3
|
-
* Hook to request capabilities from the plugin context.
|
|
4
|
-
* @returns An array of capabilities.
|
|
5
|
-
*/
|
|
6
|
-
export declare const useCapabilities: <T>(interfaceDef: InterfaceDef<T>) => T[];
|
|
7
|
-
/**
|
|
8
|
-
* Hook to request a capability from the plugin context.
|
|
9
|
-
* @returns The capability.
|
|
10
|
-
* @throws If no capability is found.
|
|
11
|
-
*/
|
|
12
|
-
export declare const useCapability: <T>(interfaceDef: InterfaceDef<T>) => T;
|
|
13
|
-
//# sourceMappingURL=useCapabilities.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCapabilities.d.ts","sourceRoot":"","sources":["../../../../src/react/useCapabilities.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,EAAE,cAAc,YAAY,CAAC,CAAC,CAAC,QAG/D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,CAAC,EAAE,cAAc,YAAY,CAAC,CAAC,CAAC,MAI7D,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useIntentResolver.d.ts","sourceRoot":"","sources":["../../../../src/react/useIntentResolver.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,EAAE,UAAU,iBAAiB,SAW5E,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../src/worker.ts"],"names":[],"mappings":"AAOA,cAAc,QAAQ,CAAC;AAEvB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC"}
|
package/src/App.tsx
DELETED
|
@@ -1,276 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2025 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
import { RegistryContext } from '@effect-rx/rx-react';
|
|
6
|
-
import { effect } from '@preact/signals-core';
|
|
7
|
-
import React, { useCallback, useEffect, useMemo, useState, type FC, type PropsWithChildren } from 'react';
|
|
8
|
-
|
|
9
|
-
import { invariant } from '@dxos/invariant';
|
|
10
|
-
import { live } from '@dxos/live-object';
|
|
11
|
-
import { useDefaultValue } from '@dxos/react-hooks';
|
|
12
|
-
|
|
13
|
-
import { Capabilities, Events } from './common';
|
|
14
|
-
import { PluginManager, type PluginManagerOptions, type Plugin } from './core';
|
|
15
|
-
import { topologicalSort } from './helpers';
|
|
16
|
-
import { ErrorBoundary, PluginManagerProvider, useCapabilities } from './react';
|
|
17
|
-
|
|
18
|
-
const ENABLED_KEY = 'dxos.org/app-framework/enabled';
|
|
19
|
-
|
|
20
|
-
export type CreateAppOptions = {
|
|
21
|
-
pluginManager?: PluginManager;
|
|
22
|
-
pluginLoader?: PluginManagerOptions['pluginLoader'];
|
|
23
|
-
plugins?: Plugin[];
|
|
24
|
-
core?: string[];
|
|
25
|
-
defaults?: string[];
|
|
26
|
-
placeholder?: FC<{ stage: number }>;
|
|
27
|
-
fallback?: ErrorBoundary['props']['fallback'];
|
|
28
|
-
cacheEnabled?: boolean;
|
|
29
|
-
safeMode?: boolean;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Expected usage is for this to be the entrypoint of the application.
|
|
34
|
-
* Initializes plugins and renders the root components.
|
|
35
|
-
*
|
|
36
|
-
* @example
|
|
37
|
-
* const plugins = [LayoutPlugin(), MyPlugin()];
|
|
38
|
-
* const core = [LayoutPluginId];
|
|
39
|
-
* const default = [MyPluginId];
|
|
40
|
-
* const fallback = <div>Initializing Plugins...</div>;
|
|
41
|
-
* const App = createApp({ plugins, core, default, fallback });
|
|
42
|
-
* createRoot(document.getElementById('root')!).render(
|
|
43
|
-
* <StrictMode>
|
|
44
|
-
* <App />
|
|
45
|
-
* </StrictMode>,
|
|
46
|
-
* );
|
|
47
|
-
*
|
|
48
|
-
* @param params.pluginLoader A function which loads new plugins.
|
|
49
|
-
* @param params.plugins All plugins available to the application.
|
|
50
|
-
* @param params.core Core plugins which will always be enabled.
|
|
51
|
-
* @param params.defaults Default plugins are enabled by default but can be disabled by the user.
|
|
52
|
-
* @param params.placeholder Placeholder component to render during startup.
|
|
53
|
-
* @param params.fallback Fallback component to render if an error occurs during startup.
|
|
54
|
-
* @param params.cacheEnabled Whether to cache enabled plugins in localStorage.
|
|
55
|
-
* @param params.safeMode Whether to enable safe mode, which disables optional plugins.
|
|
56
|
-
*/
|
|
57
|
-
export const useApp = ({
|
|
58
|
-
pluginManager,
|
|
59
|
-
pluginLoader: _pluginLoader,
|
|
60
|
-
plugins: _plugins,
|
|
61
|
-
core: _core,
|
|
62
|
-
defaults: _defaults,
|
|
63
|
-
placeholder,
|
|
64
|
-
fallback = DefaultFallback,
|
|
65
|
-
cacheEnabled = false,
|
|
66
|
-
safeMode = false,
|
|
67
|
-
}: CreateAppOptions) => {
|
|
68
|
-
const plugins = useDefaultValue(_plugins, () => []);
|
|
69
|
-
const core = useDefaultValue(_core, () => plugins.map(({ meta }) => meta.id));
|
|
70
|
-
const defaults = useDefaultValue(_defaults, () => []);
|
|
71
|
-
|
|
72
|
-
// TODO(wittjosiah): Provide a custom plugin loader which supports loading via url.
|
|
73
|
-
const pluginLoader = useMemo(
|
|
74
|
-
() =>
|
|
75
|
-
_pluginLoader ??
|
|
76
|
-
((id: string) => {
|
|
77
|
-
const plugin = plugins.find((plugin) => plugin.meta.id === id);
|
|
78
|
-
invariant(plugin, `Plugin not found: ${id}`);
|
|
79
|
-
return plugin;
|
|
80
|
-
}),
|
|
81
|
-
[_pluginLoader, plugins],
|
|
82
|
-
);
|
|
83
|
-
|
|
84
|
-
const state = useMemo(() => live({ ready: false, error: null }), []);
|
|
85
|
-
const cached: string[] = useMemo(() => JSON.parse(localStorage.getItem(ENABLED_KEY) ?? '[]'), []);
|
|
86
|
-
const enabled = useMemo(
|
|
87
|
-
() => (safeMode ? [] : cacheEnabled && cached.length > 0 ? cached : defaults),
|
|
88
|
-
[safeMode, cacheEnabled, cached, defaults],
|
|
89
|
-
);
|
|
90
|
-
const manager = useMemo(
|
|
91
|
-
() => pluginManager ?? new PluginManager({ pluginLoader, plugins, core, enabled }),
|
|
92
|
-
[pluginManager, pluginLoader, plugins, core, enabled],
|
|
93
|
-
);
|
|
94
|
-
|
|
95
|
-
useEffect(() => {
|
|
96
|
-
return manager.activation.on(({ event, state: _state, error }) => {
|
|
97
|
-
// Once the app is ready the first time, don't show the fallback again.
|
|
98
|
-
if (!state.ready && event === Events.Startup.id) {
|
|
99
|
-
state.ready = _state === 'activated';
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
if (error && !state.ready && !state.error) {
|
|
103
|
-
state.error = error;
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
}, [manager, state]);
|
|
107
|
-
|
|
108
|
-
useEffect(() => {
|
|
109
|
-
effect(() => {
|
|
110
|
-
cacheEnabled && localStorage.setItem(ENABLED_KEY, JSON.stringify(manager.enabled));
|
|
111
|
-
});
|
|
112
|
-
}, [cacheEnabled, manager]);
|
|
113
|
-
|
|
114
|
-
useEffect(() => {
|
|
115
|
-
manager.context.contributeCapability({
|
|
116
|
-
interface: Capabilities.PluginManager,
|
|
117
|
-
implementation: manager,
|
|
118
|
-
module: 'dxos.org/app-framework/plugin-manager',
|
|
119
|
-
});
|
|
120
|
-
|
|
121
|
-
manager.context.contributeCapability({
|
|
122
|
-
interface: Capabilities.RxRegistry,
|
|
123
|
-
implementation: manager.registry,
|
|
124
|
-
module: 'dxos.org/app-framework/rx-registry',
|
|
125
|
-
});
|
|
126
|
-
|
|
127
|
-
return () => {
|
|
128
|
-
manager.context.removeCapability(Capabilities.PluginManager, manager);
|
|
129
|
-
manager.context.removeCapability(Capabilities.RxRegistry, manager.registry);
|
|
130
|
-
};
|
|
131
|
-
}, [manager]);
|
|
132
|
-
|
|
133
|
-
useEffect(() => {
|
|
134
|
-
setupDevtools(manager);
|
|
135
|
-
}, [manager]);
|
|
136
|
-
|
|
137
|
-
useEffect(() => {
|
|
138
|
-
const timeout = setTimeout(async () => {
|
|
139
|
-
await Promise.all([
|
|
140
|
-
// TODO(wittjosiah): Factor out such that this could be called per surface role when attempting to render.
|
|
141
|
-
manager.activate(Events.SetupReactSurface),
|
|
142
|
-
manager.activate(Events.Startup),
|
|
143
|
-
]);
|
|
144
|
-
});
|
|
145
|
-
|
|
146
|
-
return () => clearTimeout(timeout);
|
|
147
|
-
}, [manager]);
|
|
148
|
-
|
|
149
|
-
return useCallback(
|
|
150
|
-
() => (
|
|
151
|
-
<ErrorBoundary fallback={fallback}>
|
|
152
|
-
<PluginManagerProvider value={manager}>
|
|
153
|
-
<RegistryContext.Provider value={manager.registry}>
|
|
154
|
-
<App placeholder={placeholder} state={state} />
|
|
155
|
-
</RegistryContext.Provider>
|
|
156
|
-
</PluginManagerProvider>
|
|
157
|
-
</ErrorBoundary>
|
|
158
|
-
),
|
|
159
|
-
[fallback, manager, placeholder, state],
|
|
160
|
-
);
|
|
161
|
-
};
|
|
162
|
-
|
|
163
|
-
const DELAY_PLACEHOLDER = 2_000;
|
|
164
|
-
|
|
165
|
-
enum LoadingState {
|
|
166
|
-
Loading = 0,
|
|
167
|
-
FadeIn = 1,
|
|
168
|
-
FadeOut = 2,
|
|
169
|
-
Done = 3,
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
/**
|
|
173
|
-
* To avoid "flashing" the placeholder, we wait a period of time before starting the loading animation.
|
|
174
|
-
* If loading completes during this time the placehoder is not shown, otherwise is it displayed for a minimum period of time.
|
|
175
|
-
*
|
|
176
|
-
* States:
|
|
177
|
-
* 0: Loading - Wait for a period of time before starting the loading animation.
|
|
178
|
-
* 1: Fade-in - Display a loading animation.
|
|
179
|
-
* 2: Fade-out - Fade out the loading animation.
|
|
180
|
-
* 3: Done - Remove the placeholder.
|
|
181
|
-
*/
|
|
182
|
-
const useLoading = (state: AppProps['state']) => {
|
|
183
|
-
const [stage, setStage] = useState<LoadingState>(LoadingState.Loading);
|
|
184
|
-
useEffect(() => {
|
|
185
|
-
const i = setInterval(() => {
|
|
186
|
-
setStage((tick) => {
|
|
187
|
-
switch (tick) {
|
|
188
|
-
case LoadingState.Loading:
|
|
189
|
-
if (!state.ready) {
|
|
190
|
-
return LoadingState.FadeIn;
|
|
191
|
-
} else {
|
|
192
|
-
clearInterval(i);
|
|
193
|
-
return LoadingState.Done;
|
|
194
|
-
}
|
|
195
|
-
case LoadingState.FadeIn:
|
|
196
|
-
if (state.ready) {
|
|
197
|
-
return LoadingState.FadeOut;
|
|
198
|
-
}
|
|
199
|
-
break;
|
|
200
|
-
case LoadingState.FadeOut:
|
|
201
|
-
clearInterval(i);
|
|
202
|
-
return LoadingState.Done;
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
return tick;
|
|
206
|
-
});
|
|
207
|
-
}, DELAY_PLACEHOLDER);
|
|
208
|
-
|
|
209
|
-
return () => clearInterval(i);
|
|
210
|
-
}, []);
|
|
211
|
-
|
|
212
|
-
return stage;
|
|
213
|
-
};
|
|
214
|
-
|
|
215
|
-
type AppProps = Pick<CreateAppOptions, 'placeholder'> & {
|
|
216
|
-
state: { ready: boolean; error: unknown };
|
|
217
|
-
};
|
|
218
|
-
|
|
219
|
-
const App = ({ placeholder: Placeholder, state }: AppProps) => {
|
|
220
|
-
const reactContexts = useCapabilities(Capabilities.ReactContext);
|
|
221
|
-
const reactRoots = useCapabilities(Capabilities.ReactRoot);
|
|
222
|
-
const stage = useLoading(state);
|
|
223
|
-
|
|
224
|
-
if (state.error) {
|
|
225
|
-
// This triggers the error boundary to provide UI feedback for the startup error.
|
|
226
|
-
throw state.error;
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
// TODO(wittjosiah): Consider using Suspense instead?
|
|
230
|
-
if (stage < LoadingState.Done) {
|
|
231
|
-
if (!Placeholder) {
|
|
232
|
-
return null;
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
return <Placeholder stage={stage} />;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
const ComposedContext = composeContexts(reactContexts);
|
|
239
|
-
return (
|
|
240
|
-
<ComposedContext>
|
|
241
|
-
{reactRoots.map(({ id, root: Component }) => (
|
|
242
|
-
<Component key={id} />
|
|
243
|
-
))}
|
|
244
|
-
</ComposedContext>
|
|
245
|
-
);
|
|
246
|
-
};
|
|
247
|
-
|
|
248
|
-
// Default fallback does not use tailwind or theme.
|
|
249
|
-
const DefaultFallback = ({ error }: { error: Error }) => {
|
|
250
|
-
return (
|
|
251
|
-
<div style={{ margin: '0.5rem', padding: '1rem', overflow: 'hidden', border: '1px solid red' }}>
|
|
252
|
-
{/* TODO(wittjosiah): Link to docs for replacing default. */}
|
|
253
|
-
<h1 style={{ margin: '0.5rem 0', fontSize: '1.2rem' }}>[ERROR]: {error.message}</h1>
|
|
254
|
-
<pre style={{ overflow: 'auto', fontSize: '1rem', whiteSpace: 'pre-wrap', color: '#888888' }}>{error.stack}</pre>
|
|
255
|
-
</div>
|
|
256
|
-
);
|
|
257
|
-
};
|
|
258
|
-
|
|
259
|
-
const composeContexts = (contexts: Capabilities.ReactContext[]) => {
|
|
260
|
-
if (contexts.length === 0) {
|
|
261
|
-
return ({ children }: PropsWithChildren) => <>{children}</>;
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
return topologicalSort(contexts)
|
|
265
|
-
.map(({ context }) => context)
|
|
266
|
-
.reduce((Acc, Next) => ({ children }) => (
|
|
267
|
-
<Acc>
|
|
268
|
-
<Next>{children}</Next>
|
|
269
|
-
</Acc>
|
|
270
|
-
));
|
|
271
|
-
};
|
|
272
|
-
|
|
273
|
-
const setupDevtools = (manager: PluginManager) => {
|
|
274
|
-
(globalThis as any).composer ??= {};
|
|
275
|
-
(globalThis as any).composer.manager = manager;
|
|
276
|
-
};
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2025 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
import { Schema } from 'effect';
|
|
6
|
-
|
|
7
|
-
import { Expando, Ref } from '@dxos/echo-schema';
|
|
8
|
-
|
|
9
|
-
export namespace CollaborationActions {
|
|
10
|
-
export class InsertContent extends Schema.TaggedClass<InsertContent>()('assistant/intent-content', {
|
|
11
|
-
input: Schema.Struct({
|
|
12
|
-
target: Expando,
|
|
13
|
-
object: Ref(Expando),
|
|
14
|
-
at: Schema.optional(Schema.String),
|
|
15
|
-
label: Schema.String.pipe(Schema.optional),
|
|
16
|
-
}).annotations({
|
|
17
|
-
description: 'Enables plugins to inject content blocks or references into a related entity.',
|
|
18
|
-
}),
|
|
19
|
-
output: Schema.Void,
|
|
20
|
-
}) {}
|
|
21
|
-
}
|
package/src/common/events.ts
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2025 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
import { Capabilities } from './capabilities';
|
|
6
|
-
import { defineEvent } from '../core';
|
|
7
|
-
|
|
8
|
-
export namespace Events {
|
|
9
|
-
/**
|
|
10
|
-
* Fired when the app is started.
|
|
11
|
-
*/
|
|
12
|
-
export const Startup = defineEvent('dxos.org/app-framework/event/startup');
|
|
13
|
-
|
|
14
|
-
//
|
|
15
|
-
// Dependent Events
|
|
16
|
-
//
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Fired to load any newly available surfaces.
|
|
20
|
-
*/
|
|
21
|
-
export const SetupReactSurface = defineEvent('dxos.org/app-framework/event/setup-react-surface');
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Fired to load any newly available metadata.
|
|
25
|
-
*/
|
|
26
|
-
export const SetupMetadata = defineEvent('dxos.org/app-framework/event/setup-metadata');
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Fired before the intent dispatcher is activated.
|
|
30
|
-
*/
|
|
31
|
-
export const SetupIntentResolver = defineEvent('dxos.org/app-framework/event/setup-intent-resolver');
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Fired before the settings store is activated.
|
|
35
|
-
*/
|
|
36
|
-
export const SetupSettings = defineEvent('dxos.org/app-framework/event/setup-settings');
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Fired before the graph is created.
|
|
40
|
-
*/
|
|
41
|
-
export const SetupAppGraph = defineEvent('dxos.org/app-framework/event/setup-graph');
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Fired before the translations provider is created.
|
|
45
|
-
*/
|
|
46
|
-
export const SetupTranslations = defineEvent('dxos.org/app-framework/event/setup-translations');
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Fired to load any newly available artifacts definitions.
|
|
50
|
-
*/
|
|
51
|
-
export const SetupArtifactDefinition = defineEvent('dxos.org/app-framework/event/setup-artifact-definition');
|
|
52
|
-
|
|
53
|
-
//
|
|
54
|
-
// Triggered Events
|
|
55
|
-
//
|
|
56
|
-
|
|
57
|
-
/**
|
|
58
|
-
* Fired after the intent dispatcher is ready.
|
|
59
|
-
*/
|
|
60
|
-
export const DispatcherReady = defineEvent('dxos.org/app-framework/event/dispatcher-ready');
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Fired after the settings store is ready.
|
|
64
|
-
*/
|
|
65
|
-
export const SettingsReady = defineEvent('dxos.org/app-framework/event/settings-ready');
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Fired when the graph is ready.
|
|
69
|
-
*/
|
|
70
|
-
export const AppGraphReady = defineEvent('dxos.org/app-framework/event/graph-ready');
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* Fired when plugin state is ready.
|
|
74
|
-
*/
|
|
75
|
-
export const createStateEvent = (specifier: string) => defineEvent('dxos.org/app-framework/event/state', specifier);
|
|
76
|
-
export const LayoutReady = createStateEvent(Capabilities.Layout.identifier);
|
|
77
|
-
}
|
package/src/common/file.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2024 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
import { Schema } from 'effect';
|
|
6
|
-
|
|
7
|
-
// TODO(burdon): See Accept attribute (uses MIME types).
|
|
8
|
-
// E.g., 'image/*': ['.jpg', '.jpeg', '.png', '.gif'],
|
|
9
|
-
export const defaultFileTypes = {
|
|
10
|
-
images: ['png', 'jpg', 'jpeg', 'gif'],
|
|
11
|
-
media: ['mp3', 'mp4', 'mov', 'avi'],
|
|
12
|
-
text: ['pdf', 'txt', 'md'],
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
export const FileInfoSchema = Schema.Struct({
|
|
16
|
-
name: Schema.String,
|
|
17
|
-
type: Schema.String,
|
|
18
|
-
url: Schema.optional(Schema.String),
|
|
19
|
-
cid: Schema.optional(Schema.String), // TODO(burdon): Meta key? Or other common properties with other file management system? (e.g., WNFS).
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
export type FileInfo = Schema.Schema.Type<typeof FileInfoSchema>;
|
package/src/common/graph.ts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2023 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
import type { Node } from '@dxos/app-graph';
|
|
6
|
-
import { type MaybePromise, type Position } from '@dxos/util';
|
|
7
|
-
|
|
8
|
-
// TODO(wittjosiah): Factor out.
|
|
9
|
-
export type SerializedNode = {
|
|
10
|
-
name: string;
|
|
11
|
-
data: string;
|
|
12
|
-
type?: string;
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
// TODO(wittjosiah): Factor out.
|
|
16
|
-
export type NodeSerializer<T = any> = {
|
|
17
|
-
inputType: string;
|
|
18
|
-
outputType: string;
|
|
19
|
-
position?: Position;
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Takes a node and serializes it into a format that can be stored.
|
|
23
|
-
*/
|
|
24
|
-
serialize: (node: Node<T>) => MaybePromise<SerializedNode>;
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Takes a serialized node and deserializes it into the application.
|
|
28
|
-
*/
|
|
29
|
-
deserialize: (data: SerializedNode, ancestors: unknown[]) => MaybePromise<T>;
|
|
30
|
-
};
|