@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,5 +1,7 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export * from './
|
|
3
|
-
export * from './manager';
|
|
4
|
-
export * from './plugin';
|
|
1
|
+
export * as ActivationEvent from './activation-event';
|
|
2
|
+
export * as Capability from './capability';
|
|
3
|
+
export * as CapabilityManager from './capability-manager';
|
|
4
|
+
export * as Plugin from './plugin';
|
|
5
|
+
export * as PluginManager from './plugin-manager';
|
|
6
|
+
export * as UrlLoader from './url-loader';
|
|
5
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/index.ts"],"names":[],"mappings":"AAIA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,eAAe,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,iBAAiB,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { Atom, Registry } from '@effect-atom/atom-react';
|
|
2
|
+
import * as Effect from 'effect/Effect';
|
|
3
|
+
import * as PubSub from 'effect/PubSub';
|
|
4
|
+
import * as ActivationEvent from './activation-event';
|
|
5
|
+
import * as CapabilityManager from './capability-manager';
|
|
6
|
+
import * as Plugin from './plugin';
|
|
7
|
+
/**
|
|
8
|
+
* Identifier denoting a Manager.
|
|
9
|
+
*/
|
|
10
|
+
export declare const ManagerTypeId: unique symbol;
|
|
11
|
+
export type ManagerTypeId = typeof ManagerTypeId;
|
|
12
|
+
export type ManagerOptions = {
|
|
13
|
+
pluginLoader: (id: string) => Effect.Effect<Plugin.Plugin, Error>;
|
|
14
|
+
plugins?: Plugin.Plugin[];
|
|
15
|
+
core?: string[];
|
|
16
|
+
enabled?: string[];
|
|
17
|
+
registry?: Registry.Registry;
|
|
18
|
+
};
|
|
19
|
+
export type ActivationMessage = {
|
|
20
|
+
event: string;
|
|
21
|
+
state: 'activating' | 'activated' | 'error';
|
|
22
|
+
/** Module ID when the message pertains to a specific module activation. */
|
|
23
|
+
module?: string;
|
|
24
|
+
error?: Error;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Interface for the Plugin Manager.
|
|
28
|
+
*/
|
|
29
|
+
export interface PluginManager {
|
|
30
|
+
readonly [ManagerTypeId]: ManagerTypeId;
|
|
31
|
+
readonly activation: PubSub.PubSub<ActivationMessage>;
|
|
32
|
+
readonly capabilities: CapabilityManager.CapabilityManager;
|
|
33
|
+
readonly registry: Registry.Registry;
|
|
34
|
+
readonly plugins: Atom.Atom<readonly Plugin.Plugin[]>;
|
|
35
|
+
readonly core: Atom.Atom<readonly string[]>;
|
|
36
|
+
readonly enabled: Atom.Atom<readonly string[]>;
|
|
37
|
+
readonly modules: Atom.Atom<readonly Plugin.PluginModule[]>;
|
|
38
|
+
readonly active: Atom.Atom<readonly string[]>;
|
|
39
|
+
readonly eventsFired: Atom.Atom<readonly string[]>;
|
|
40
|
+
readonly pendingReset: Atom.Atom<readonly string[]>;
|
|
41
|
+
getPlugins(): readonly Plugin.Plugin[];
|
|
42
|
+
getCore(): readonly string[];
|
|
43
|
+
getEnabled(): readonly string[];
|
|
44
|
+
getModules(): readonly Plugin.PluginModule[];
|
|
45
|
+
getActive(): readonly string[];
|
|
46
|
+
getEventsFired(): readonly string[];
|
|
47
|
+
getPendingReset(): readonly string[];
|
|
48
|
+
add(id: string): Effect.Effect<boolean, Error>;
|
|
49
|
+
enable(id: string): Effect.Effect<boolean, Error>;
|
|
50
|
+
remove(id: string): boolean;
|
|
51
|
+
disable(id: string): Effect.Effect<boolean, Error>;
|
|
52
|
+
activate(event: ActivationEvent.ActivationEvent | string, params?: {
|
|
53
|
+
before?: string;
|
|
54
|
+
after?: string;
|
|
55
|
+
}): Effect.Effect<boolean, Error>;
|
|
56
|
+
deactivate(id: string): Effect.Effect<boolean, Error>;
|
|
57
|
+
reset(event: ActivationEvent.ActivationEvent | string): Effect.Effect<boolean, Error>;
|
|
58
|
+
/**
|
|
59
|
+
* Shuts down the manager by deactivating all active modules in reverse activation order,
|
|
60
|
+
* clearing all capabilities, and resetting lifecycle bookkeeping.
|
|
61
|
+
* Plugins, core, enabled, and modules remain intact so the manager can be reused.
|
|
62
|
+
*/
|
|
63
|
+
shutdown(): Effect.Effect<boolean, Error>;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Type guard to check if a value is a PluginManager.
|
|
67
|
+
*/
|
|
68
|
+
export declare const isManager: (value: unknown) => value is PluginManager;
|
|
69
|
+
/**
|
|
70
|
+
* Creates a new Plugin Manager instance.
|
|
71
|
+
*/
|
|
72
|
+
export declare const make: (options: ManagerOptions) => PluginManager;
|
|
73
|
+
//# sourceMappingURL=plugin-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-manager.d.ts","sourceRoot":"","sources":["../../../../src/core/plugin-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-manager.test.d.ts","sourceRoot":"","sources":["../../../../src/core/plugin-manager.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,7 +1,50 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
1
|
+
import * as Context from 'effect/Context';
|
|
2
|
+
import * as Effect from 'effect/Effect';
|
|
3
|
+
import * as Pipeable from 'effect/Pipeable';
|
|
4
|
+
import type * as ActivationEvent from './activation-event';
|
|
5
|
+
import * as Capability from './capability';
|
|
6
|
+
import type * as PluginManager from './plugin-manager';
|
|
7
|
+
declare const Service_base: Context.TagClass<Service, "@dxos/app-framework/PluginManager", PluginManager.PluginManager>;
|
|
8
|
+
/**
|
|
9
|
+
* Effect Context.Tag for accessing PluginManager via the Effect layer system.
|
|
10
|
+
* This allows lifecycle operations to access the plugin manager without having it passed as an argument.
|
|
11
|
+
*/
|
|
12
|
+
export declare class Service extends Service_base {
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Activates plugins based on the activation event.
|
|
16
|
+
* Accesses the PluginManager via the Effect layer system.
|
|
17
|
+
* @param event The activation event.
|
|
18
|
+
* @returns Whether the activation was successful.
|
|
19
|
+
*/
|
|
20
|
+
export declare const activate: (event: ActivationEvent.ActivationEvent) => Effect.Effect<boolean, Error, Service>;
|
|
21
|
+
/**
|
|
22
|
+
* Re-activates the modules that were activated by the event.
|
|
23
|
+
* Accesses the PluginManager via the Effect layer system.
|
|
24
|
+
* @param event The activation event.
|
|
25
|
+
* @returns Whether the reset was successful.
|
|
26
|
+
*/
|
|
27
|
+
export declare const reset: (event: ActivationEvent.ActivationEvent) => Effect.Effect<boolean, Error, Service>;
|
|
28
|
+
/**
|
|
29
|
+
* Shuts down the plugin manager, deactivating all active modules and clearing lifecycle state.
|
|
30
|
+
* Accesses the PluginManager via the Effect layer system.
|
|
31
|
+
*/
|
|
32
|
+
export declare const shutdown: () => Effect.Effect<boolean, Error, Service>;
|
|
33
|
+
/**
|
|
34
|
+
* Identifier denoting a PluginModule.
|
|
35
|
+
*/
|
|
36
|
+
export declare const PluginModuleTypeId: unique symbol;
|
|
37
|
+
export type PluginModuleTypeId = typeof PluginModuleTypeId;
|
|
38
|
+
/**
|
|
39
|
+
* Type guard to check if a value is a PluginModule.
|
|
40
|
+
*/
|
|
41
|
+
export declare const isPluginModule: (value: unknown) => value is PluginModule;
|
|
42
|
+
/**
|
|
43
|
+
* A unit of containment of modular functionality that can be provided to an application.
|
|
44
|
+
* Activation of a module is async allowing for code to split and loaded lazily.
|
|
45
|
+
*/
|
|
46
|
+
export interface PluginModule {
|
|
47
|
+
readonly [PluginModuleTypeId]: PluginModuleTypeId;
|
|
5
48
|
/**
|
|
6
49
|
* Unique id of the module.
|
|
7
50
|
*/
|
|
@@ -9,47 +52,36 @@ interface PluginModuleInterface {
|
|
|
9
52
|
/**
|
|
10
53
|
* Events for which the module will be activated.
|
|
11
54
|
*/
|
|
12
|
-
activatesOn:
|
|
55
|
+
activatesOn: ActivationEvent.Events;
|
|
13
56
|
/**
|
|
14
57
|
* Events which the plugin depends on being activated.
|
|
15
58
|
* Plugin is marked as needing reset a plugin activated by a dependent event is removed.
|
|
16
59
|
* Events are automatically activated before activation of the plugin.
|
|
17
60
|
*/
|
|
18
|
-
activatesBefore?: ActivationEvent[];
|
|
61
|
+
activatesBefore?: ActivationEvent.ActivationEvent[];
|
|
19
62
|
/**
|
|
20
63
|
* Events which this plugin triggers upon activation.
|
|
21
64
|
*/
|
|
22
|
-
activatesAfter?: ActivationEvent[];
|
|
65
|
+
activatesAfter?: ActivationEvent.ActivationEvent[];
|
|
23
66
|
/**
|
|
24
67
|
* Called when the module is activated.
|
|
25
|
-
*
|
|
68
|
+
* CapabilityManager is accessed via the Effect layer system (Capability.Service).
|
|
69
|
+
* PluginManager is accessed via Plugin.Service.
|
|
70
|
+
* @param props Optional props passed to the module.
|
|
26
71
|
* @returns The capabilities of the module.
|
|
27
72
|
*/
|
|
28
|
-
activate: (
|
|
73
|
+
activate: (props?: any) => Effect.Effect<Capability.ModuleReturn, Error, Capability.Service | Service | never>;
|
|
29
74
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
export declare class PluginModule implements PluginModuleInterface {
|
|
35
|
-
readonly id: PluginModuleInterface['id'];
|
|
36
|
-
readonly activatesOn: PluginModuleInterface['activatesOn'];
|
|
37
|
-
readonly activatesBefore?: PluginModuleInterface['activatesBefore'];
|
|
38
|
-
readonly activatesAfter?: PluginModuleInterface['activatesAfter'];
|
|
39
|
-
readonly activate: PluginModuleInterface['activate'];
|
|
40
|
-
constructor(options: PluginModuleInterface);
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Helper to define a module.
|
|
44
|
-
*/
|
|
45
|
-
export declare const defineModule: (options: PluginModuleInterface) => PluginModule;
|
|
46
|
-
export type PluginMeta = {
|
|
75
|
+
export type PluginModuleOptions = Omit<PluginModule, 'id' | typeof PluginModuleTypeId> & {
|
|
76
|
+
id?: string;
|
|
77
|
+
};
|
|
78
|
+
export type Meta = {
|
|
47
79
|
/**
|
|
48
80
|
* Globally unique ID.
|
|
49
81
|
*
|
|
50
82
|
* Expected to be in the form of a valid URL.
|
|
51
83
|
*
|
|
52
|
-
* @example dxos.
|
|
84
|
+
* @example org.dxos.plugin.example
|
|
53
85
|
*/
|
|
54
86
|
id: string;
|
|
55
87
|
/**
|
|
@@ -80,19 +112,57 @@ export type PluginMeta = {
|
|
|
80
112
|
* A grep-able symbol string which can be resolved to an icon asset by @ch-ui/icons, via @ch-ui/vite-plugin-icons.
|
|
81
113
|
*/
|
|
82
114
|
icon?: string;
|
|
115
|
+
/**
|
|
116
|
+
* Icon hue (ChromaticPalette).
|
|
117
|
+
*/
|
|
118
|
+
iconHue?: string;
|
|
83
119
|
};
|
|
120
|
+
/**
|
|
121
|
+
* Identifier denoting a Plugin.
|
|
122
|
+
*/
|
|
123
|
+
export declare const PluginTypeId: unique symbol;
|
|
124
|
+
export type PluginTypeId = typeof PluginTypeId;
|
|
125
|
+
/**
|
|
126
|
+
* Type guard to check if a value is a Plugin.
|
|
127
|
+
*/
|
|
128
|
+
export declare const isPlugin: (value: unknown) => value is Plugin;
|
|
84
129
|
/**
|
|
85
130
|
* A collection of modules that are be enabled/disabled as a unit.
|
|
86
131
|
* Plugins provide things such as components, state, actions, etc. to the application.
|
|
87
132
|
*/
|
|
88
|
-
export
|
|
89
|
-
readonly
|
|
90
|
-
readonly
|
|
91
|
-
|
|
133
|
+
export interface Plugin {
|
|
134
|
+
readonly [PluginTypeId]: PluginTypeId;
|
|
135
|
+
readonly meta: Readonly<Meta>;
|
|
136
|
+
readonly modules: ReadonlyArray<PluginModule>;
|
|
92
137
|
}
|
|
93
138
|
/**
|
|
94
|
-
*
|
|
139
|
+
* Builder interface for creating plugins incrementally.
|
|
140
|
+
*/
|
|
141
|
+
export interface PluginBuilder<T = void> extends Pipeable.Pipeable {
|
|
142
|
+
readonly meta: Meta;
|
|
143
|
+
readonly modules: ReadonlyArray<PluginModuleOptions | ((options: T) => PluginModuleOptions)>;
|
|
144
|
+
addModule(moduleOptions: PluginModuleOptions | ((options: T) => PluginModuleOptions)): PluginBuilder<T>;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Creates a new PluginBuilder to start building a plugin.
|
|
148
|
+
*/
|
|
149
|
+
export declare const define: <T = void>(meta: Meta) => PluginBuilder<T>;
|
|
150
|
+
/**
|
|
151
|
+
* Adds a module to a plugin builder.
|
|
152
|
+
* Supports both pipeline and direct call styles.
|
|
153
|
+
* Modules can be either PluginModuleOptions or functions that receive options.
|
|
154
|
+
*/
|
|
155
|
+
export declare function addModule<T>(moduleOptions: PluginModuleOptions | ((options: T) => PluginModuleOptions)): (builder: PluginBuilder<T>) => PluginBuilder<T>;
|
|
156
|
+
export declare function addModule<T>(builder: PluginBuilder<T>, moduleOptions: PluginModuleOptions | ((options: T) => PluginModuleOptions)): PluginBuilder<T>;
|
|
157
|
+
export type PluginFactory<T = void> = ((options: T) => Plugin) & {
|
|
158
|
+
meta: Meta;
|
|
159
|
+
};
|
|
160
|
+
/**
|
|
161
|
+
* Creates a Plugin from a builder.
|
|
162
|
+
* Supports both pipeline and direct call styles.
|
|
163
|
+
* Always returns a factory function (options: T) => Plugin.
|
|
164
|
+
* When T is void, the function takes no arguments: () => Plugin.
|
|
95
165
|
*/
|
|
96
|
-
export declare
|
|
166
|
+
export declare function make<T>(builder: PluginBuilder<T>): PluginFactory<T>;
|
|
97
167
|
export {};
|
|
98
168
|
//# sourceMappingURL=plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/core/plugin.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/core/plugin.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAI5C,OAAO,KAAK,KAAK,eAAe,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,aAAa,MAAM,kBAAkB,CAAC;;AAMvD;;;GAGG;AACH,qBAAa,OAAQ,SAAQ,YAAwF;CAAG;AAMxH;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,eAAe,CAAC,eAAe,KAAG,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CACxC,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,OAAO,eAAe,CAAC,eAAe,KAAG,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CACxC,CAAC;AAE7D;;;GAGG;AACH,eAAO,MAAM,QAAQ,QAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CACP,CAAC;AAS3D;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,OAAO,MAAuD,CAAC;AAChG,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,YAExD,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAClD;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,WAAW,EAAE,eAAe,CAAC,MAAM,CAAC;IAEpC;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC,eAAe,EAAE,CAAC;IAEpD;;OAEG;IACH,cAAc,CAAC,EAAE,eAAe,CAAC,eAAe,EAAE,CAAC;IAEnD;;;;;;OAMG;IACH,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,EAAE,KAAK,EAAE,UAAU,CAAC,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC,CAAC;CAChH;AAED,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,OAAO,kBAAkB,CAAC,GAAG;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAmBzG,MAAM,MAAM,IAAI,GAAG;IACjB;;;;;;OAMG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,MAAiD,CAAC;AACpF,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAElD,CAAC;AAEF;;;GAGG;AAEH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;CAC/C;AAuBD;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,QAAQ,CAAC,QAAQ;IAChE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,mBAAmB,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,mBAAmB,CAAC,CAAC,CAAC;IAC7F,SAAS,CAAC,aAAa,EAAE,mBAAmB,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,mBAAmB,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;CACzG;AA4BD;;GAEG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,GAAG,IAAI,EAAE,MAAM,IAAI,KAAG,aAAa,CAAC,CAAC,CAAmC,CAAC;AAEjG;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EACzB,aAAa,EAAE,mBAAmB,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,mBAAmB,CAAC,GACzE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC;AACnD,wBAAgB,SAAS,CAAC,CAAC,EACzB,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,aAAa,EAAE,mBAAmB,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,mBAAmB,CAAC,GACzE,aAAa,CAAC,CAAC,CAAC,CAAC;AAcpB,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,MAAM,CAAC,GAAG;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC;AAwBhF;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as Effect from 'effect/Effect';
|
|
2
|
+
import * as Plugin from './plugin';
|
|
3
|
+
/**
|
|
4
|
+
* Abstraction over key-value storage (defaults to localStorage).
|
|
5
|
+
*/
|
|
6
|
+
export type Storage = {
|
|
7
|
+
get(key: string): string | null;
|
|
8
|
+
set(key: string, value: string): void;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Options for configuring the URL loader.
|
|
12
|
+
*/
|
|
13
|
+
export type Options = {
|
|
14
|
+
storage?: Storage;
|
|
15
|
+
key?: string;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Preloads previously persisted remote plugins from storage.
|
|
19
|
+
*/
|
|
20
|
+
export declare const preload: (options?: Options) => Promise<Plugin.Plugin[]>;
|
|
21
|
+
/**
|
|
22
|
+
* Creates a plugin loader that resolves built-in plugins by ID or loads remote plugins from URLs.
|
|
23
|
+
*/
|
|
24
|
+
export declare const make: (builtinPlugins: Plugin.Plugin[], options?: Options) => (locator: string) => Effect.Effect<Plugin.Plugin, Error>;
|
|
25
|
+
//# sourceMappingURL=url-loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url-loader.d.ts","sourceRoot":"","sources":["../../../../src/core/url-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAInC;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAmEF;;GAEG;AACH,eAAO,MAAM,OAAO,GAAU,UAAS,OAAY,KAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAoB5E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,IAAI,GAAI,gBAAgB,MAAM,CAAC,MAAM,EAAE,EAAE,UAAS,OAAY,MAIjE,SAAS,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAsB7D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url-loader.test.d.ts","sourceRoot":"","sources":["../../../../src/core/url-loader.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
export * from './App';
|
|
2
1
|
export * from './common';
|
|
2
|
+
export * from './context';
|
|
3
3
|
export * from './core';
|
|
4
|
-
export * from './plugin-
|
|
5
|
-
export * from './plugin-
|
|
6
|
-
export * from './react';
|
|
4
|
+
export * from './plugin-operation';
|
|
5
|
+
export * from './plugin-runtime';
|
|
7
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OperationPlugin.d.ts","sourceRoot":"","sources":["../../../../src/plugin-operation/OperationPlugin.ts"],"names":[],"mappings":"AAKA,OAAO,EAAc,MAAM,EAAE,MAAM,SAAS,CAAC;AAO7C,eAAO,MAAM,eAAe,4BAY3B,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as Effect from 'effect/Effect';
|
|
2
|
+
import { Capability } from '../../core';
|
|
3
|
+
import * as HistoryTracker from './history-tracker';
|
|
4
|
+
import * as UndoRegistry from './undo-registry';
|
|
5
|
+
declare const _default: (props: void) => Effect.Effect<[Capability.Capability<Capability.InterfaceDef<UndoRegistry.UndoRegistry>>, Capability.Capability<Capability.InterfaceDef<HistoryTracker.HistoryTracker>>], Error, Capability.Service>;
|
|
6
|
+
export default _default;
|
|
7
|
+
//# sourceMappingURL=capability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../../../../../src/plugin-operation/history/capability.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;;AAMhD,wBAkBE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { BaseError } from '@dxos/errors';
|
|
2
|
+
declare const EmptyHistoryError_base: {
|
|
3
|
+
new (options?: import("@dxos/errors").BaseErrorOptions): {
|
|
4
|
+
name: "EmptyHistoryError";
|
|
5
|
+
context: Record<string, unknown>;
|
|
6
|
+
readonly message: string;
|
|
7
|
+
readonly _tag: "EmptyHistoryError";
|
|
8
|
+
stack?: string;
|
|
9
|
+
cause?: unknown;
|
|
10
|
+
};
|
|
11
|
+
name: "EmptyHistoryError";
|
|
12
|
+
is(error: unknown): error is BaseError;
|
|
13
|
+
wrap(options?: Omit<import("@dxos/errors").BaseErrorOptions, "cause"> & {
|
|
14
|
+
ifTypeDiffers?: boolean;
|
|
15
|
+
}): (error: unknown) => {
|
|
16
|
+
name: "EmptyHistoryError";
|
|
17
|
+
context: Record<string, unknown>;
|
|
18
|
+
readonly message: string;
|
|
19
|
+
readonly _tag: "EmptyHistoryError";
|
|
20
|
+
stack?: string;
|
|
21
|
+
cause?: unknown;
|
|
22
|
+
};
|
|
23
|
+
extend<Name extends string = string>(name: Name, message?: string): any;
|
|
24
|
+
isError(error: unknown): error is Error;
|
|
25
|
+
captureStackTrace(targetObject: object, constructorOpt?: Function): void;
|
|
26
|
+
prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
|
|
27
|
+
stackTraceLimit: number;
|
|
28
|
+
};
|
|
29
|
+
export declare class EmptyHistoryError extends EmptyHistoryError_base {
|
|
30
|
+
}
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/plugin-operation/history/errors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;;;;;;;;;;;;;qBAG23B,CAAC;;;;;;;;;;;;;;;AADr6B,qBAAa,iBAAkB,SAAQ,sBAAuE;CAAG"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as Effect from 'effect/Effect';
|
|
2
|
+
import { type OperationInvoker } from '@dxos/operation';
|
|
3
|
+
import type { UndoRegistry } from './undo-registry';
|
|
4
|
+
/**
|
|
5
|
+
* HistoryTracker interface - tracks operation history and provides undo.
|
|
6
|
+
*/
|
|
7
|
+
export interface HistoryTracker {
|
|
8
|
+
undo: () => Effect.Effect<void, Error>;
|
|
9
|
+
undoPromise: () => Promise<{
|
|
10
|
+
error?: Error;
|
|
11
|
+
}>;
|
|
12
|
+
canUndo: () => boolean;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Creates a HistoryTracker that subscribes to invocation events and provides undo.
|
|
16
|
+
*/
|
|
17
|
+
export declare const make: (invoker: OperationInvoker.OperationInvokerInternal, undoRegistry: UndoRegistry) => HistoryTracker;
|
|
18
|
+
//# sourceMappingURL=history-tracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history-tracker.d.ts","sourceRoot":"","sources":["../../../../../src/plugin-operation/history/history-tracker.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAOxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAQpD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACvC,WAAW,EAAE,MAAM,OAAO,CAAC;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,CAAC,CAAC;IAC9C,OAAO,EAAE,MAAM,OAAO,CAAC;CACxB;AAMD;;GAEG;AACH,eAAO,MAAM,IAAI,GACf,SAAS,gBAAgB,CAAC,wBAAwB,EAClD,cAAc,YAAY,KACzB,cAqFF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history-tracker.test.d.ts","sourceRoot":"","sources":["../../../../../src/plugin-operation/history/history-tracker.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/plugin-operation/history/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Operation } from '@dxos/operation';
|
|
2
|
+
/**
|
|
3
|
+
* History entry stored by HistoryTracker.
|
|
4
|
+
*/
|
|
5
|
+
export type HistoryEntry = {
|
|
6
|
+
operation: Operation.Definition<any, any>;
|
|
7
|
+
input: any;
|
|
8
|
+
output: any;
|
|
9
|
+
inverse: Operation.Definition<any, any>;
|
|
10
|
+
inverseInput: any;
|
|
11
|
+
timestamp: number;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/plugin-operation/history/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1C,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,GAAG,CAAC;IACZ,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxC,YAAY,EAAE,GAAG,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import type { Operation } from '@dxos/operation';
|
|
2
|
+
/**
|
|
3
|
+
* Label type for translatable text (canonical definition in @dxos/app-toolkit).
|
|
4
|
+
*/
|
|
5
|
+
type Label = string | [string, {
|
|
6
|
+
ns: string;
|
|
7
|
+
count?: number;
|
|
8
|
+
defaultValue?: string;
|
|
9
|
+
}];
|
|
10
|
+
/**
|
|
11
|
+
* Extract the input type from an OperationDefinition.
|
|
12
|
+
*/
|
|
13
|
+
export type InputOf<T> = T extends Operation.Definition<infer I, any> ? I : never;
|
|
14
|
+
/**
|
|
15
|
+
* Extract the output type from an OperationDefinition.
|
|
16
|
+
*/
|
|
17
|
+
export type OutputOf<T> = T extends Operation.Definition<any, infer O> ? O : never;
|
|
18
|
+
/**
|
|
19
|
+
* Message provider for undo toast.
|
|
20
|
+
* Can be a static Label or a function that derives the message from input/output.
|
|
21
|
+
*/
|
|
22
|
+
export type MessageProvider<Op extends Operation.Definition<any, any>> = Label | ((input: InputOf<Op>, output: OutputOf<Op>) => Label);
|
|
23
|
+
/**
|
|
24
|
+
* Undo mapping that links a forward operation to its inverse.
|
|
25
|
+
* Type parameters ensure deriveContext has correctly typed arguments.
|
|
26
|
+
*
|
|
27
|
+
* @template Op - The forward operation definition type.
|
|
28
|
+
* @template Inv - The inverse operation definition type.
|
|
29
|
+
*/
|
|
30
|
+
export interface UndoMapping<Op extends Operation.Definition<any, any> = Operation.Definition<any, any>, Inv extends Operation.Definition<any, any> = Operation.Definition<any, any>> {
|
|
31
|
+
/** The forward operation. */
|
|
32
|
+
readonly operation: Op;
|
|
33
|
+
/** The inverse operation to invoke for undo. */
|
|
34
|
+
readonly inverse: Inv;
|
|
35
|
+
/**
|
|
36
|
+
* Derives the input for the inverse operation from the forward operation's input and output.
|
|
37
|
+
* @param input - The input that was passed to the forward operation.
|
|
38
|
+
* @param output - The output that was returned by the forward operation.
|
|
39
|
+
* @returns The input to pass to the inverse operation, or undefined to indicate the operation is not undoable.
|
|
40
|
+
*/
|
|
41
|
+
readonly deriveContext: (input: InputOf<Op>, output: OutputOf<Op>) => InputOf<Inv> | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* Optional message to show in the undo toast.
|
|
44
|
+
* Can be a static Label or a function that derives the message from input/output.
|
|
45
|
+
*/
|
|
46
|
+
readonly message?: MessageProvider<Op>;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Props for creating an UndoMapping.
|
|
50
|
+
*/
|
|
51
|
+
export interface UndoMappingProps<Op extends Operation.Definition<any, any>, Inv extends Operation.Definition<any, any>> {
|
|
52
|
+
/** The forward operation. */
|
|
53
|
+
operation: Op;
|
|
54
|
+
/** The inverse operation to invoke for undo. */
|
|
55
|
+
inverse: Inv;
|
|
56
|
+
/**
|
|
57
|
+
* Derives the input for the inverse operation from the forward operation's input and output.
|
|
58
|
+
* Return undefined to indicate the operation is not undoable.
|
|
59
|
+
*/
|
|
60
|
+
deriveContext: (input: InputOf<Op>, output: OutputOf<Op>) => InputOf<Inv> | undefined;
|
|
61
|
+
/**
|
|
62
|
+
* Optional message to show in the undo toast.
|
|
63
|
+
* Can be a static Label or a function that derives the message from input/output.
|
|
64
|
+
*/
|
|
65
|
+
message?: MessageProvider<Op>;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Creates a type-safe undo mapping.
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```ts
|
|
72
|
+
* // Static message
|
|
73
|
+
* const mapping = UndoMapping.make({
|
|
74
|
+
* operation: DeleteThread,
|
|
75
|
+
* inverse: RestoreThread,
|
|
76
|
+
* deriveContext: (input, output) => ({
|
|
77
|
+
* thread: output.thread,
|
|
78
|
+
* anchor: output.anchor,
|
|
79
|
+
* }),
|
|
80
|
+
* message: ['thread deleted label', { ns: '@dxos/plugin-thread' }],
|
|
81
|
+
* });
|
|
82
|
+
*
|
|
83
|
+
* // Dynamic message based on input/output
|
|
84
|
+
* const mapping = UndoMapping.make({
|
|
85
|
+
* operation: RemoveObjects,
|
|
86
|
+
* inverse: RestoreObjects,
|
|
87
|
+
* deriveContext: (_input, output) => output,
|
|
88
|
+
* message: (input, _output) =>
|
|
89
|
+
* input.objects.length === 1
|
|
90
|
+
* ? ['object deleted label', { ns: getTypename(input.objects[0]) }]
|
|
91
|
+
* : ['objects deleted label', { ns: '@dxos/plugin-space' }],
|
|
92
|
+
* });
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
95
|
+
export declare const make: <Op extends Operation.Definition<any, any>, Inv extends Operation.Definition<any, any>>(props: UndoMappingProps<Op, Inv>) => UndoMapping<Op, Inv>;
|
|
96
|
+
/**
|
|
97
|
+
* Resolves a message provider to a Label.
|
|
98
|
+
*/
|
|
99
|
+
export declare const resolveMessage: <Op extends Operation.Definition<any, any>>(message: MessageProvider<Op> | undefined, input: InputOf<Op>, output: OutputOf<Op>) => Label | undefined;
|
|
100
|
+
export {};
|
|
101
|
+
//# sourceMappingURL=undo-mapping.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"undo-mapping.d.ts","sourceRoot":"","sources":["../../../../../src/plugin-operation/history/undo-mapping.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { Operation } from '@dxos/operation';
|
|
2
|
+
import type * as UndoMapping from './undo-mapping';
|
|
3
|
+
/**
|
|
4
|
+
* Lookup result from UndoRegistry.
|
|
5
|
+
*/
|
|
6
|
+
export type UndoMappingResult = {
|
|
7
|
+
inverse: Operation.Definition<any, any>;
|
|
8
|
+
/** Returns undefined to indicate the operation is not undoable. */
|
|
9
|
+
deriveContext: (input: any, output: any) => any | undefined;
|
|
10
|
+
/** Message provider - may be a static Label or a function. */
|
|
11
|
+
message?: UndoMapping.MessageProvider<Operation.Definition<any, any>>;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* UndoRegistry interface - looks up inverse operations.
|
|
15
|
+
*/
|
|
16
|
+
export interface UndoRegistry {
|
|
17
|
+
lookup: (operation: Operation.Definition<any, any>) => UndoMappingResult | undefined;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Creates an UndoRegistry that looks up inverse operations.
|
|
21
|
+
*/
|
|
22
|
+
export declare const make: (getMappings: () => UndoMapping.UndoMapping[]) => UndoRegistry;
|
|
23
|
+
//# sourceMappingURL=undo-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"undo-registry.d.ts","sourceRoot":"","sources":["../../../../../src/plugin-operation/history/undo-registry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,KAAK,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAMnD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxC,mEAAmE;IACnE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,GAAG,SAAS,CAAC;IAC5D,8DAA8D;IAC9D,OAAO,CAAC,EAAE,WAAW,CAAC,eAAe,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;CACvE,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,iBAAiB,GAAG,SAAS,CAAC;CACtF;AAMD;;GAEG;AACH,eAAO,MAAM,IAAI,GAAI,aAAa,MAAM,WAAW,CAAC,WAAW,EAAE,KAAG,YAgBnE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"undo-registry.test.d.ts","sourceRoot":"","sources":["../../../../../src/plugin-operation/history/undo-registry.test.ts"],"names":[],"mappings":""}
|