@dxos/app-framework 0.7.2 → 0.7.3-staging.971cd8d
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/{chunk-EQTQGGE6.mjs → chunk-FRXJ25VI.mjs} +2 -2
- package/dist/lib/browser/chunk-FRXJ25VI.mjs.map +7 -0
- package/dist/lib/browser/{chunk-CDLQO5K2.mjs → chunk-YXM35XRE.mjs} +2 -2
- package/dist/lib/browser/{chunk-CDLQO5K2.mjs.map → chunk-YXM35XRE.mjs.map} +1 -1
- package/dist/lib/browser/index.mjs +7 -6
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{plugin-intent-Q5KFPKFA.mjs → plugin-intent-LU4KL2RO.mjs} +2 -2
- package/dist/lib/browser/{plugin-surface-ZQXFAL46.mjs → plugin-surface-LECZMKSQ.mjs} +2 -2
- package/dist/lib/node/{chunk-VOKMWTKO.cjs → chunk-QSVP5HOW.cjs} +6 -6
- package/dist/lib/node/{chunk-VOKMWTKO.cjs.map → chunk-QSVP5HOW.cjs.map} +1 -1
- package/dist/lib/node/{chunk-EF67TRWJ.cjs → chunk-SOVLKUWI.cjs} +6 -6
- package/dist/lib/node/chunk-SOVLKUWI.cjs.map +7 -0
- package/dist/lib/node/index.cjs +29 -28
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{plugin-intent-FMC4SDI3.cjs → plugin-intent-FVFR2LKB.cjs} +13 -13
- package/dist/lib/node/{plugin-intent-FMC4SDI3.cjs.map → plugin-intent-FVFR2LKB.cjs.map} +2 -2
- package/dist/lib/node/{plugin-surface-B5NHOBSW.cjs → plugin-surface-YWDRXQTD.cjs} +14 -14
- package/dist/lib/node/{plugin-surface-B5NHOBSW.cjs.map → plugin-surface-YWDRXQTD.cjs.map} +2 -2
- package/dist/lib/node-esm/{chunk-3FCLBEOX.mjs → chunk-2R4GVK7O.mjs} +2 -2
- package/dist/lib/node-esm/chunk-2R4GVK7O.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-MYNXI5VG.mjs → chunk-YFMFQBB4.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-MYNXI5VG.mjs.map → chunk-YFMFQBB4.mjs.map} +1 -1
- package/dist/lib/node-esm/index.mjs +7 -6
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{plugin-intent-KETLP7UL.mjs → plugin-intent-V7ER24Y6.mjs} +2 -2
- package/dist/lib/node-esm/{plugin-surface-QXQRR534.mjs → plugin-surface-TEU42XQN.mjs} +2 -2
- package/dist/types/src/plugins/common/navigation.d.ts +1 -1
- package/dist/types/src/plugins/common/navigation.d.ts.map +1 -1
- package/dist/types/src/plugins/plugin-intent/IntentPlugin.d.ts.map +1 -1
- package/dist/types/src/plugins/plugin-surface/SurfaceRootContext.d.ts +1 -2
- package/dist/types/src/plugins/plugin-surface/SurfaceRootContext.d.ts.map +1 -1
- package/package.json +12 -11
- package/src/plugins/common/navigation.ts +4 -2
- package/src/plugins/plugin-intent/IntentPlugin.tsx +3 -3
- package/src/plugins/plugin-surface/SurfacePlugin.tsx +1 -1
- package/src/plugins/plugin-surface/SurfaceRootContext.tsx +1 -2
- package/dist/lib/browser/chunk-EQTQGGE6.mjs.map +0 -7
- package/dist/lib/node/chunk-EF67TRWJ.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-3FCLBEOX.mjs.map +0 -7
- /package/dist/lib/browser/{plugin-intent-Q5KFPKFA.mjs.map → plugin-intent-LU4KL2RO.mjs.map} +0 -0
- /package/dist/lib/browser/{plugin-surface-ZQXFAL46.mjs.map → plugin-surface-LECZMKSQ.mjs.map} +0 -0
- /package/dist/lib/node-esm/{plugin-intent-KETLP7UL.mjs.map → plugin-intent-V7ER24Y6.mjs.map} +0 -0
- /package/dist/lib/node-esm/{plugin-surface-QXQRR534.mjs.map → plugin-surface-TEU42XQN.mjs.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/sdk/app-framework/src/plugins/common/file.ts":{"bytes":2950,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/graph.ts":{"bytes":3905,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/layout.ts":{"bytes":12113,"imports":[{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/metadata.ts":{"bytes":2094,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/navigation.ts":{"bytes":16655,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/translations.ts":{"bytes":3192,"imports":[{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/index.ts":{"bytes":954,"imports":[{"path":"packages/sdk/app-framework/src/plugins/common/file.ts","kind":"import-statement","original":"./file"},{"path":"packages/sdk/app-framework/src/plugins/common/graph.ts","kind":"import-statement","original":"./graph"},{"path":"packages/sdk/app-framework/src/plugins/common/layout.ts","kind":"import-statement","original":"./layout"},{"path":"packages/sdk/app-framework/src/plugins/common/metadata.ts","kind":"import-statement","original":"./metadata"},{"path":"packages/sdk/app-framework/src/plugins/common/navigation.ts","kind":"import-statement","original":"./navigation"},{"path":"packages/sdk/app-framework/src/plugins/common/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/helpers.ts":{"bytes":8632,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/IntentContext.tsx":{"bytes":4091,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/helpers.ts":{"bytes":1171,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/meta.ts":{"bytes":727,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/provides.ts":{"bytes":2925,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/IntentPlugin.tsx":{"bytes":19225,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/IntentContext.tsx","kind":"import-statement","original":"./IntentContext"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/provides.ts","kind":"import-statement","original":"./provides"},{"path":"packages/sdk/app-framework/src/plugins/helpers.ts","kind":"import-statement","original":"../helpers"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/intent.ts":{"bytes":4142,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts":{"bytes":979,"imports":[{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/IntentPlugin.tsx","kind":"import-statement","original":"./IntentPlugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/intent.ts","kind":"import-statement","original":"./intent"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/provides.ts","kind":"import-statement","original":"./provides"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/IntentContext.tsx","kind":"import-statement","original":"./IntentContext"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/plugin.ts":{"bytes":5033,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/PluginContainer.tsx":{"bytes":13322,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/PluginContext.tsx":{"bytes":5419,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/helpers.ts","kind":"import-statement","original":"../helpers"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx":{"bytes":3342,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/meta.ts":{"bytes":735,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/provides.ts":{"bytes":2035,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/SurfacePlugin.tsx":{"bytes":4012,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx","kind":"import-statement","original":"./SurfaceRootContext"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/provides.ts","kind":"import-statement","original":"./provides"},{"path":"packages/sdk/app-framework/src/plugins/helpers.ts","kind":"import-statement","original":"../helpers"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/helpers.ts":{"bytes":1818,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/ErrorBoundary.tsx":{"bytes":4344,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/Surface.tsx":{"bytes":16952,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/ErrorBoundary.tsx","kind":"import-statement","original":"./ErrorBoundary"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx","kind":"import-statement","original":"./SurfaceRootContext"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts":{"bytes":1193,"imports":[{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/SurfacePlugin.tsx","kind":"import-statement","original":"./SurfacePlugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/provides.ts","kind":"import-statement","original":"./provides"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/ErrorBoundary.tsx","kind":"import-statement","original":"./ErrorBoundary"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/Surface.tsx","kind":"import-statement","original":"./Surface"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx","kind":"import-statement","original":"./SurfaceRootContext"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/HostPlugin.tsx":{"bytes":9462,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/PluginContainer.tsx","kind":"import-statement","original":"./PluginContainer"},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/PluginContext.tsx","kind":"import-statement","original":"./PluginContext"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts","kind":"import-statement","original":"../plugin-surface"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/index.ts":{"bytes":715,"imports":[{"path":"packages/sdk/app-framework/src/plugins/plugin-host/plugin.ts","kind":"import-statement","original":"./plugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/HostPlugin.tsx","kind":"import-statement","original":"./HostPlugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/PluginContext.tsx","kind":"import-statement","original":"./PluginContext"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-settings/meta.ts":{"bytes":743,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-settings/SettingsPlugin.tsx":{"bytes":2052,"imports":[{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-settings/provides.ts":{"bytes":2244,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts":{"bytes":808,"imports":[{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/SettingsPlugin.tsx","kind":"import-statement","original":"./SettingsPlugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/provides.ts","kind":"import-statement","original":"./provides"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/index.ts":{"bytes":1008,"imports":[{"path":"packages/sdk/app-framework/src/plugins/common/index.ts","kind":"import-statement","original":"./common"},{"path":"packages/sdk/app-framework/src/plugins/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts","kind":"import-statement","original":"./plugin-intent"},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/index.ts","kind":"import-statement","original":"./plugin-host"},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts","kind":"import-statement","original":"./plugin-settings"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts","kind":"import-statement","original":"./plugin-surface"}],"format":"esm"},"packages/sdk/app-framework/src/App.tsx":{"bytes":7547,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/index.ts","kind":"import-statement","original":"./plugins"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/meta.ts","kind":"import-statement","original":"./plugins/plugin-intent/meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/meta.ts","kind":"import-statement","original":"./plugins/plugin-settings/meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/meta.ts","kind":"import-statement","original":"./plugins/plugin-surface/meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts","kind":"dynamic-import","original":"./plugins/plugin-intent"},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts","kind":"dynamic-import","original":"./plugins/plugin-settings"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts","kind":"dynamic-import","original":"./plugins/plugin-surface"}],"format":"esm"},"packages/sdk/app-framework/src/index.ts":{"bytes":576,"imports":[{"path":"packages/sdk/app-framework/src/plugins/index.ts","kind":"import-statement","original":"./plugins"},{"path":"packages/sdk/app-framework/src/App.tsx","kind":"import-statement","original":"./App"}],"format":"esm"}},"outputs":{"packages/sdk/app-framework/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":42985},"packages/sdk/app-framework/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-CDLQO5K2.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-EQTQGGE6.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-653Y45CL.mjs","kind":"import-statement"},{"path":"zod","kind":"import-statement","external":true},{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"zod","kind":"import-statement","external":true},{"path":"zod","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/dist/lib/browser/plugin-intent-Q5KFPKFA.mjs","kind":"dynamic-import"},{"path":"packages/sdk/app-framework/dist/lib/browser/plugin-settings-OM3G2QFY.mjs","kind":"dynamic-import"},{"path":"packages/sdk/app-framework/dist/lib/browser/plugin-surface-ZQXFAL46.mjs","kind":"dynamic-import"}],"exports":["ActiveParts","ErrorBoundary","HostPlugin","IntentAction","IntentProvider","Layout","LayoutAction","NavigationAction","Plugin","PluginProvider","Resource","ResourceKey","ResourceLanguage","SLUG_COLLECTION_INDICATOR","SLUG_ENTRY_SEPARATOR","SLUG_KEY_VALUE_SEPARATOR","SLUG_LIST_SEPARATOR","SLUG_PATH_SEPARATOR","SettingsAction","Surface","SurfaceProvider","Toast","createApp","defaultFileTypes","definePlugin","filterPlugins","findPlugin","firstIdInPart","getPlugin","indexInPart","isLayoutAdjustment","isLayoutMode","isLayoutParts","isObject","openIds","parseFileManagerPlugin","parseGraphBuilderPlugin","parseGraphPlugin","parseGraphSerializerPlugin","parseIntentPlugin","parseIntentResolverPlugin","parseLayoutPlugin","parseMetadataRecordsPlugin","parseMetadataResolverPlugin","parseNavigationPlugin","parsePluginHost","parseRootSurfacePlugin","parseSettingsPlugin","parseSurfacePlugin","parseTranslationsPlugin","partLength","resolvePlugin","useIntent","useIntentDispatcher","useIntentResolver","usePlugin","usePlugins","useResolvePlugin","useResolvePlugins","useSurface","useSurfaceRoot"],"entryPoint":"packages/sdk/app-framework/src/index.ts","inputs":{"packages/sdk/app-framework/src/plugins/common/file.ts":{"bytesInOutput":288},"packages/sdk/app-framework/src/plugins/common/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugins/common/graph.ts":{"bytesInOutput":272},"packages/sdk/app-framework/src/plugins/common/layout.ts":{"bytesInOutput":2269},"packages/sdk/app-framework/src/plugins/common/metadata.ts":{"bytesInOutput":226},"packages/sdk/app-framework/src/plugins/common/navigation.ts":{"bytesInOutput":2978},"packages/sdk/app-framework/src/plugins/common/translations.ts":{"bytesInOutput":357},"packages/sdk/app-framework/src/plugins/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugins/plugin-host/plugin.ts":{"bytesInOutput":197},"packages/sdk/app-framework/src/plugins/plugin-host/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugins/plugin-host/HostPlugin.tsx":{"bytesInOutput":1893},"packages/sdk/app-framework/src/plugins/plugin-host/PluginContainer.tsx":{"bytesInOutput":3386},"packages/sdk/app-framework/src/plugins/plugin-host/PluginContext.tsx":{"bytesInOutput":742},"packages/sdk/app-framework/src/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/App.tsx":{"bytesInOutput":1351}},"bytes":16559},"packages/sdk/app-framework/dist/lib/browser/plugin-intent-Q5KFPKFA.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/app-framework/dist/lib/browser/plugin-intent-Q5KFPKFA.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-CDLQO5K2.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"}],"exports":["IntentAction","IntentProvider","default","parseIntentPlugin","parseIntentResolverPlugin","useIntent","useIntentDispatcher","useIntentResolver"],"entryPoint":"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts","inputs":{},"bytes":476},"packages/sdk/app-framework/dist/lib/browser/chunk-CDLQO5K2.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":13613},"packages/sdk/app-framework/dist/lib/browser/chunk-CDLQO5K2.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"exports":["IntentAction","IntentProvider","meta_default","parseIntentPlugin","parseIntentResolverPlugin","plugin_intent_default","useIntent","useIntentDispatcher","useIntentResolver"],"inputs":{"packages/sdk/app-framework/src/plugins/plugin-intent/IntentPlugin.tsx":{"bytesInOutput":4541},"packages/sdk/app-framework/src/plugins/plugin-intent/IntentContext.tsx":{"bytesInOutput":637},"packages/sdk/app-framework/src/plugins/plugin-intent/helpers.ts":{"bytesInOutput":94},"packages/sdk/app-framework/src/plugins/plugin-intent/meta.ts":{"bytesInOutput":84},"packages/sdk/app-framework/src/plugins/plugin-intent/provides.ts":{"bytesInOutput":453},"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts":{"bytesInOutput":42}},"bytes":6650},"packages/sdk/app-framework/dist/lib/browser/plugin-surface-ZQXFAL46.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/app-framework/dist/lib/browser/plugin-surface-ZQXFAL46.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-EQTQGGE6.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"}],"exports":["ErrorBoundary","Surface","SurfaceProvider","default","isObject","parseRootSurfacePlugin","parseSurfacePlugin","useSurface","useSurfaceRoot"],"entryPoint":"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts","inputs":{},"bytes":475},"packages/sdk/app-framework/dist/lib/browser/chunk-EQTQGGE6.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":17817},"packages/sdk/app-framework/dist/lib/browser/chunk-EQTQGGE6.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["ErrorBoundary","Surface","SurfaceProvider","isObject","meta_default","parseRootSurfacePlugin","parseSurfacePlugin","plugin_surface_default","useSurface","useSurfaceRoot"],"inputs":{"packages/sdk/app-framework/src/plugins/plugin-surface/SurfacePlugin.tsx":{"bytesInOutput":661},"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx":{"bytesInOutput":312},"packages/sdk/app-framework/src/plugins/plugin-surface/meta.ts":{"bytesInOutput":87},"packages/sdk/app-framework/src/plugins/plugin-surface/provides.ts":{"bytesInOutput":191},"packages/sdk/app-framework/src/plugins/plugin-surface/helpers.ts":{"bytesInOutput":61},"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts":{"bytesInOutput":44},"packages/sdk/app-framework/src/plugins/plugin-surface/ErrorBoundary.tsx":{"bytesInOutput":707},"packages/sdk/app-framework/src/plugins/plugin-surface/Surface.tsx":{"bytesInOutput":3417}},"bytes":6424},"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4320},"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs":{"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"exports":["definePlugin","filterPlugins","findPlugin","getPlugin","resolvePlugin"],"inputs":{"packages/sdk/app-framework/src/plugins/helpers.ts":{"bytesInOutput":1756}},"bytes":1942},"packages/sdk/app-framework/dist/lib/browser/plugin-settings-OM3G2QFY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/app-framework/dist/lib/browser/plugin-settings-OM3G2QFY.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-653Y45CL.mjs","kind":"import-statement"}],"exports":["SettingsAction","default","parseSettingsPlugin"],"entryPoint":"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts","inputs":{},"bytes":251},"packages/sdk/app-framework/dist/lib/browser/chunk-653Y45CL.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2645},"packages/sdk/app-framework/dist/lib/browser/chunk-653Y45CL.mjs":{"imports":[{"path":"@dxos/local-storage","kind":"import-statement","external":true}],"exports":["SettingsAction","meta_default","parseSettingsPlugin","plugin_settings_default"],"inputs":{"packages/sdk/app-framework/src/plugins/plugin-settings/SettingsPlugin.tsx":{"bytesInOutput":220},"packages/sdk/app-framework/src/plugins/plugin-settings/meta.ts":{"bytesInOutput":90},"packages/sdk/app-framework/src/plugins/plugin-settings/provides.ts":{"bytesInOutput":397},"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts":{"bytesInOutput":46}},"bytes":1254}}}
|
|
1
|
+
{"inputs":{"packages/sdk/app-framework/src/plugins/common/file.ts":{"bytes":2950,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/graph.ts":{"bytes":3905,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/layout.ts":{"bytes":12113,"imports":[{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/metadata.ts":{"bytes":2094,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/navigation.ts":{"bytes":16951,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"zod","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/translations.ts":{"bytes":3192,"imports":[{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/common/index.ts":{"bytes":954,"imports":[{"path":"packages/sdk/app-framework/src/plugins/common/file.ts","kind":"import-statement","original":"./file"},{"path":"packages/sdk/app-framework/src/plugins/common/graph.ts","kind":"import-statement","original":"./graph"},{"path":"packages/sdk/app-framework/src/plugins/common/layout.ts","kind":"import-statement","original":"./layout"},{"path":"packages/sdk/app-framework/src/plugins/common/metadata.ts","kind":"import-statement","original":"./metadata"},{"path":"packages/sdk/app-framework/src/plugins/common/navigation.ts","kind":"import-statement","original":"./navigation"},{"path":"packages/sdk/app-framework/src/plugins/common/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/helpers.ts":{"bytes":8632,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/IntentContext.tsx":{"bytes":4091,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/helpers.ts":{"bytes":1171,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/meta.ts":{"bytes":727,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/provides.ts":{"bytes":2925,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/IntentPlugin.tsx":{"bytes":19221,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/IntentContext.tsx","kind":"import-statement","original":"./IntentContext"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/provides.ts","kind":"import-statement","original":"./provides"},{"path":"packages/sdk/app-framework/src/plugins/helpers.ts","kind":"import-statement","original":"../helpers"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/intent.ts":{"bytes":4142,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts":{"bytes":979,"imports":[{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/IntentPlugin.tsx","kind":"import-statement","original":"./IntentPlugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/intent.ts","kind":"import-statement","original":"./intent"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/provides.ts","kind":"import-statement","original":"./provides"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/IntentContext.tsx","kind":"import-statement","original":"./IntentContext"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/plugin.ts":{"bytes":5033,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/PluginContainer.tsx":{"bytes":13322,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/PluginContext.tsx":{"bytes":5419,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/helpers.ts","kind":"import-statement","original":"../helpers"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx":{"bytes":3334,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/meta.ts":{"bytes":735,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/provides.ts":{"bytes":2035,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/SurfacePlugin.tsx":{"bytes":4012,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx","kind":"import-statement","original":"./SurfaceRootContext"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/provides.ts","kind":"import-statement","original":"./provides"},{"path":"packages/sdk/app-framework/src/plugins/helpers.ts","kind":"import-statement","original":"../helpers"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/helpers.ts":{"bytes":1818,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/ErrorBoundary.tsx":{"bytes":4344,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/Surface.tsx":{"bytes":16952,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/ErrorBoundary.tsx","kind":"import-statement","original":"./ErrorBoundary"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx","kind":"import-statement","original":"./SurfaceRootContext"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts":{"bytes":1193,"imports":[{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/SurfacePlugin.tsx","kind":"import-statement","original":"./SurfacePlugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/provides.ts","kind":"import-statement","original":"./provides"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/ErrorBoundary.tsx","kind":"import-statement","original":"./ErrorBoundary"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/Surface.tsx","kind":"import-statement","original":"./Surface"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx","kind":"import-statement","original":"./SurfaceRootContext"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/HostPlugin.tsx":{"bytes":9462,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/PluginContainer.tsx","kind":"import-statement","original":"./PluginContainer"},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/PluginContext.tsx","kind":"import-statement","original":"./PluginContext"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts","kind":"import-statement","original":"../plugin-surface"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-host/index.ts":{"bytes":715,"imports":[{"path":"packages/sdk/app-framework/src/plugins/plugin-host/plugin.ts","kind":"import-statement","original":"./plugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/HostPlugin.tsx","kind":"import-statement","original":"./HostPlugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/PluginContext.tsx","kind":"import-statement","original":"./PluginContext"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-settings/meta.ts":{"bytes":743,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-settings/SettingsPlugin.tsx":{"bytes":2052,"imports":[{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-settings/provides.ts":{"bytes":2244,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts":{"bytes":808,"imports":[{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/SettingsPlugin.tsx","kind":"import-statement","original":"./SettingsPlugin"},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/provides.ts","kind":"import-statement","original":"./provides"}],"format":"esm"},"packages/sdk/app-framework/src/plugins/index.ts":{"bytes":1008,"imports":[{"path":"packages/sdk/app-framework/src/plugins/common/index.ts","kind":"import-statement","original":"./common"},{"path":"packages/sdk/app-framework/src/plugins/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts","kind":"import-statement","original":"./plugin-intent"},{"path":"packages/sdk/app-framework/src/plugins/plugin-host/index.ts","kind":"import-statement","original":"./plugin-host"},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts","kind":"import-statement","original":"./plugin-settings"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts","kind":"import-statement","original":"./plugin-surface"}],"format":"esm"},"packages/sdk/app-framework/src/App.tsx":{"bytes":7547,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugins/index.ts","kind":"import-statement","original":"./plugins"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/meta.ts","kind":"import-statement","original":"./plugins/plugin-intent/meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/meta.ts","kind":"import-statement","original":"./plugins/plugin-settings/meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/meta.ts","kind":"import-statement","original":"./plugins/plugin-surface/meta"},{"path":"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts","kind":"dynamic-import","original":"./plugins/plugin-intent"},{"path":"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts","kind":"dynamic-import","original":"./plugins/plugin-settings"},{"path":"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts","kind":"dynamic-import","original":"./plugins/plugin-surface"}],"format":"esm"},"packages/sdk/app-framework/src/index.ts":{"bytes":576,"imports":[{"path":"packages/sdk/app-framework/src/plugins/index.ts","kind":"import-statement","original":"./plugins"},{"path":"packages/sdk/app-framework/src/App.tsx","kind":"import-statement","original":"./App"}],"format":"esm"}},"outputs":{"packages/sdk/app-framework/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":43154},"packages/sdk/app-framework/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-YXM35XRE.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-FRXJ25VI.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-653Y45CL.mjs","kind":"import-statement"},{"path":"zod","kind":"import-statement","external":true},{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"zod","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"zod","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/dist/lib/browser/plugin-intent-LU4KL2RO.mjs","kind":"dynamic-import"},{"path":"packages/sdk/app-framework/dist/lib/browser/plugin-settings-OM3G2QFY.mjs","kind":"dynamic-import"},{"path":"packages/sdk/app-framework/dist/lib/browser/plugin-surface-LECZMKSQ.mjs","kind":"dynamic-import"}],"exports":["ActiveParts","ErrorBoundary","HostPlugin","IntentAction","IntentProvider","Layout","LayoutAction","NavigationAction","Plugin","PluginProvider","Resource","ResourceKey","ResourceLanguage","SLUG_COLLECTION_INDICATOR","SLUG_ENTRY_SEPARATOR","SLUG_KEY_VALUE_SEPARATOR","SLUG_LIST_SEPARATOR","SLUG_PATH_SEPARATOR","SettingsAction","Surface","SurfaceProvider","Toast","createApp","defaultFileTypes","definePlugin","filterPlugins","findPlugin","firstIdInPart","getPlugin","indexInPart","isLayoutAdjustment","isLayoutMode","isLayoutParts","isObject","openIds","parseFileManagerPlugin","parseGraphBuilderPlugin","parseGraphPlugin","parseGraphSerializerPlugin","parseIntentPlugin","parseIntentResolverPlugin","parseLayoutPlugin","parseMetadataRecordsPlugin","parseMetadataResolverPlugin","parseNavigationPlugin","parsePluginHost","parseRootSurfacePlugin","parseSettingsPlugin","parseSurfacePlugin","parseTranslationsPlugin","partLength","resolvePlugin","useIntent","useIntentDispatcher","useIntentResolver","usePlugin","usePlugins","useResolvePlugin","useResolvePlugins","useSurface","useSurfaceRoot"],"entryPoint":"packages/sdk/app-framework/src/index.ts","inputs":{"packages/sdk/app-framework/src/plugins/common/file.ts":{"bytesInOutput":288},"packages/sdk/app-framework/src/plugins/common/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugins/common/graph.ts":{"bytesInOutput":272},"packages/sdk/app-framework/src/plugins/common/layout.ts":{"bytesInOutput":2269},"packages/sdk/app-framework/src/plugins/common/metadata.ts":{"bytesInOutput":226},"packages/sdk/app-framework/src/plugins/common/navigation.ts":{"bytesInOutput":3050},"packages/sdk/app-framework/src/plugins/common/translations.ts":{"bytesInOutput":357},"packages/sdk/app-framework/src/plugins/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugins/plugin-host/plugin.ts":{"bytesInOutput":197},"packages/sdk/app-framework/src/plugins/plugin-host/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugins/plugin-host/HostPlugin.tsx":{"bytesInOutput":1893},"packages/sdk/app-framework/src/plugins/plugin-host/PluginContainer.tsx":{"bytesInOutput":3386},"packages/sdk/app-framework/src/plugins/plugin-host/PluginContext.tsx":{"bytesInOutput":742},"packages/sdk/app-framework/src/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/App.tsx":{"bytesInOutput":1351}},"bytes":16631},"packages/sdk/app-framework/dist/lib/browser/plugin-intent-LU4KL2RO.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/app-framework/dist/lib/browser/plugin-intent-LU4KL2RO.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-YXM35XRE.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"}],"exports":["IntentAction","IntentProvider","default","parseIntentPlugin","parseIntentResolverPlugin","useIntent","useIntentDispatcher","useIntentResolver"],"entryPoint":"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts","inputs":{},"bytes":476},"packages/sdk/app-framework/dist/lib/browser/chunk-YXM35XRE.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":13613},"packages/sdk/app-framework/dist/lib/browser/chunk-YXM35XRE.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"exports":["IntentAction","IntentProvider","meta_default","parseIntentPlugin","parseIntentResolverPlugin","plugin_intent_default","useIntent","useIntentDispatcher","useIntentResolver"],"inputs":{"packages/sdk/app-framework/src/plugins/plugin-intent/IntentPlugin.tsx":{"bytesInOutput":4541},"packages/sdk/app-framework/src/plugins/plugin-intent/IntentContext.tsx":{"bytesInOutput":637},"packages/sdk/app-framework/src/plugins/plugin-intent/helpers.ts":{"bytesInOutput":94},"packages/sdk/app-framework/src/plugins/plugin-intent/meta.ts":{"bytesInOutput":84},"packages/sdk/app-framework/src/plugins/plugin-intent/provides.ts":{"bytesInOutput":453},"packages/sdk/app-framework/src/plugins/plugin-intent/index.ts":{"bytesInOutput":42}},"bytes":6650},"packages/sdk/app-framework/dist/lib/browser/plugin-surface-LECZMKSQ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/app-framework/dist/lib/browser/plugin-surface-LECZMKSQ.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-FRXJ25VI.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"}],"exports":["ErrorBoundary","Surface","SurfaceProvider","default","isObject","parseRootSurfacePlugin","parseSurfacePlugin","useSurface","useSurfaceRoot"],"entryPoint":"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts","inputs":{},"bytes":475},"packages/sdk/app-framework/dist/lib/browser/chunk-FRXJ25VI.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":17812},"packages/sdk/app-framework/dist/lib/browser/chunk-FRXJ25VI.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["ErrorBoundary","Surface","SurfaceProvider","isObject","meta_default","parseRootSurfacePlugin","parseSurfacePlugin","plugin_surface_default","useSurface","useSurfaceRoot"],"inputs":{"packages/sdk/app-framework/src/plugins/plugin-surface/SurfacePlugin.tsx":{"bytesInOutput":661},"packages/sdk/app-framework/src/plugins/plugin-surface/SurfaceRootContext.tsx":{"bytesInOutput":312},"packages/sdk/app-framework/src/plugins/plugin-surface/meta.ts":{"bytesInOutput":87},"packages/sdk/app-framework/src/plugins/plugin-surface/provides.ts":{"bytesInOutput":191},"packages/sdk/app-framework/src/plugins/plugin-surface/helpers.ts":{"bytesInOutput":61},"packages/sdk/app-framework/src/plugins/plugin-surface/index.ts":{"bytesInOutput":44},"packages/sdk/app-framework/src/plugins/plugin-surface/ErrorBoundary.tsx":{"bytesInOutput":707},"packages/sdk/app-framework/src/plugins/plugin-surface/Surface.tsx":{"bytesInOutput":3417}},"bytes":6424},"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4320},"packages/sdk/app-framework/dist/lib/browser/chunk-3E7RY3CE.mjs":{"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"exports":["definePlugin","filterPlugins","findPlugin","getPlugin","resolvePlugin"],"inputs":{"packages/sdk/app-framework/src/plugins/helpers.ts":{"bytesInOutput":1756}},"bytes":1942},"packages/sdk/app-framework/dist/lib/browser/plugin-settings-OM3G2QFY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/app-framework/dist/lib/browser/plugin-settings-OM3G2QFY.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/browser/chunk-653Y45CL.mjs","kind":"import-statement"}],"exports":["SettingsAction","default","parseSettingsPlugin"],"entryPoint":"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts","inputs":{},"bytes":251},"packages/sdk/app-framework/dist/lib/browser/chunk-653Y45CL.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2645},"packages/sdk/app-framework/dist/lib/browser/chunk-653Y45CL.mjs":{"imports":[{"path":"@dxos/local-storage","kind":"import-statement","external":true}],"exports":["SettingsAction","meta_default","parseSettingsPlugin","plugin_settings_default"],"inputs":{"packages/sdk/app-framework/src/plugins/plugin-settings/SettingsPlugin.tsx":{"bytesInOutput":220},"packages/sdk/app-framework/src/plugins/plugin-settings/meta.ts":{"bytesInOutput":90},"packages/sdk/app-framework/src/plugins/plugin-settings/provides.ts":{"bytesInOutput":397},"packages/sdk/app-framework/src/plugins/plugin-settings/index.ts":{"bytesInOutput":46}},"bytes":1254}}}
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
useIntent,
|
|
8
8
|
useIntentDispatcher,
|
|
9
9
|
useIntentResolver
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-YXM35XRE.mjs";
|
|
11
11
|
import "./chunk-3E7RY3CE.mjs";
|
|
12
12
|
export {
|
|
13
13
|
IntentAction,
|
|
@@ -19,4 +19,4 @@ export {
|
|
|
19
19
|
useIntentDispatcher,
|
|
20
20
|
useIntentResolver
|
|
21
21
|
};
|
|
22
|
-
//# sourceMappingURL=plugin-intent-
|
|
22
|
+
//# sourceMappingURL=plugin-intent-LU4KL2RO.mjs.map
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
plugin_surface_default,
|
|
9
9
|
useSurface,
|
|
10
10
|
useSurfaceRoot
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-FRXJ25VI.mjs";
|
|
12
12
|
import "./chunk-3E7RY3CE.mjs";
|
|
13
13
|
export {
|
|
14
14
|
ErrorBoundary,
|
|
@@ -21,4 +21,4 @@ export {
|
|
|
21
21
|
useSurface,
|
|
22
22
|
useSurfaceRoot
|
|
23
23
|
};
|
|
24
|
-
//# sourceMappingURL=plugin-surface-
|
|
24
|
+
//# sourceMappingURL=plugin-surface-LECZMKSQ.mjs.map
|
|
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_QSVP5HOW_exports = {};
|
|
30
|
+
__export(chunk_QSVP5HOW_exports, {
|
|
31
31
|
IntentAction: () => IntentAction,
|
|
32
32
|
IntentProvider: () => IntentProvider,
|
|
33
33
|
meta_default: () => meta_default,
|
|
@@ -38,10 +38,10 @@ __export(chunk_VOKMWTKO_exports, {
|
|
|
38
38
|
useIntentDispatcher: () => useIntentDispatcher,
|
|
39
39
|
useIntentResolver: () => useIntentResolver
|
|
40
40
|
});
|
|
41
|
-
module.exports = __toCommonJS(
|
|
41
|
+
module.exports = __toCommonJS(chunk_QSVP5HOW_exports);
|
|
42
42
|
var import_chunk_QBM42OQ6 = require("./chunk-QBM42OQ6.cjs");
|
|
43
43
|
var import_react = __toESM(require("react"));
|
|
44
|
-
var
|
|
44
|
+
var import_live_object = require("@dxos/live-object");
|
|
45
45
|
var import_log = require("@dxos/log");
|
|
46
46
|
var import_react2 = require("react");
|
|
47
47
|
var import_react3 = require("react");
|
|
@@ -85,7 +85,7 @@ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/sdk/app-framework/src/p
|
|
|
85
85
|
var EXECUTION_LIMIT = 1e3;
|
|
86
86
|
var HISTORY_LIMIT = 100;
|
|
87
87
|
var IntentPlugin = () => {
|
|
88
|
-
const state = (0,
|
|
88
|
+
const state = (0, import_live_object.create)({
|
|
89
89
|
dispatch: async () => ({}),
|
|
90
90
|
undo: async () => ({}),
|
|
91
91
|
history: [],
|
|
@@ -235,4 +235,4 @@ var plugin_intent_default = IntentPlugin;
|
|
|
235
235
|
useIntentDispatcher,
|
|
236
236
|
useIntentResolver
|
|
237
237
|
});
|
|
238
|
-
//# sourceMappingURL=chunk-
|
|
238
|
+
//# sourceMappingURL=chunk-QSVP5HOW.cjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/plugins/plugin-intent/IntentPlugin.tsx", "../../../src/plugins/plugin-intent/IntentContext.tsx", "../../../src/plugins/plugin-intent/helpers.ts", "../../../src/plugins/plugin-intent/meta.ts", "../../../src/plugins/plugin-intent/provides.ts", "../../../src/plugins/plugin-intent/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { create } from '@dxos/
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { create } from '@dxos/live-object';\nimport { log } from '@dxos/log';\n\nimport { type IntentContext, type IntentExecution, IntentProvider } from './IntentContext';\nimport { isUndoable } from './helpers';\nimport type { Intent, IntentResolver } from './intent';\nimport IntentMeta from './meta';\nimport {\n IntentAction,\n type IntentPluginProvides,\n type IntentResolverProvides,\n parseIntentResolverPlugin,\n} from './provides';\nimport { filterPlugins, findPlugin } from '../helpers';\nimport { type PluginDefinition } from '../plugin-host';\n\nconst EXECUTION_LIMIT = 1000;\nconst HISTORY_LIMIT = 100;\n\n/**\n * Allows plugins to register intent handlers and routes sent intents to the appropriate plugin.\n * Inspired by https://developer.android.com/reference/android/content/Intent.\n */\nexport const IntentPlugin = (): PluginDefinition<IntentPluginProvides> => {\n const state = create<IntentContext>({\n dispatch: async () => ({}),\n undo: async () => ({}),\n history: [],\n registerResolver: () => () => {},\n });\n\n const dynamicResolvers = new Set<{ plugin: string; resolver: IntentResolver }>();\n\n return {\n meta: IntentMeta,\n ready: async (plugins) => {\n // Dispatch intent to associated plugin.\n const dispatch = async (intent: Intent) => {\n log('dispatch', { action: intent.action, intent });\n if (intent.plugin) {\n for (const entry of dynamicResolvers) {\n if (entry.plugin === intent.plugin) {\n const result = await entry.resolver(intent, plugins);\n if (result) {\n return result;\n }\n }\n }\n\n const plugin = findPlugin<IntentResolverProvides>(plugins, intent.plugin);\n return plugin?.provides.intent.resolver(intent, plugins);\n }\n\n for (const entry of dynamicResolvers) {\n const result = await entry.resolver(intent, plugins);\n if (result) {\n return result;\n }\n }\n\n // Return resolved value from first plugin that handles the intent.\n for (const plugin of filterPlugins(plugins, parseIntentResolverPlugin)) {\n const result = await plugin.provides.intent.resolver(intent, plugins);\n if (result) {\n return result;\n }\n }\n\n // https://vitejs.dev/guide/env-and-mode#env-variables\n // TODO(wittjosiah): How to handle this more generically?\n if (import.meta?.env?.DEV) {\n log.warn('No plugin found to handle intent', intent);\n }\n };\n\n // Sequentially dispatch array of invents.\n const dispatchChain = async (intentOrArray: Intent | Intent[], depth = 0) => {\n if (depth > EXECUTION_LIMIT) {\n return {\n error: new Error(\n `Intent execution limit exceeded (${EXECUTION_LIMIT} iterations). This is likely due to an infinite loop within intent resolvers.`,\n ),\n };\n }\n\n const executionResults: IntentExecution[] = [];\n const chain = Array.isArray(intentOrArray) ? intentOrArray : [intentOrArray];\n for (const intent of chain) {\n const { result: prevResult } = executionResults.at(-1) ?? {};\n const data = intent.data ? { result: prevResult?.data, ...intent.data } : prevResult?.data;\n const result = await dispatch({ ...intent, data });\n\n if (!result || result?.error) {\n break;\n }\n\n executionResults.push({ intent, result });\n\n // TODO(wittjosiah): How does undo work with returned intents?\n result?.intents?.forEach((intents) => {\n void dispatchChain(intents, depth + 1);\n });\n }\n\n state.history.push(executionResults);\n if (state.history.length > HISTORY_LIMIT) {\n state.history.splice(0, state.history.length - HISTORY_LIMIT);\n }\n\n if (isUndoable(executionResults)) {\n void dispatch({ action: IntentAction.SHOW_UNDO, data: { results: executionResults } });\n }\n\n return executionResults.at(-1)?.result;\n };\n\n const undo = async () => {\n const last = state.history.findLastIndex(isUndoable);\n const chain =\n last !== -1 &&\n state.history[last]?.map(({ intent, result }): Intent => {\n const data = result.undoable?.data ? { ...intent.data, ...result.undoable.data } : intent.data;\n return { ...intent, data, undo: true };\n });\n if (chain) {\n const result = await dispatchChain(chain);\n state.history = state.history.filter((_, index) => index !== last);\n return result;\n }\n };\n\n state.dispatch = dispatchChain;\n state.undo = undo;\n state.registerResolver = (plugin, resolver) => {\n const entry = { plugin, resolver };\n dynamicResolvers.add(entry);\n return () => dynamicResolvers.delete(entry);\n };\n },\n provides: {\n intent: state,\n context: ({ children }) => <IntentProvider value={state}>{children}</IntentProvider>,\n },\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Context, createContext, useContext, type Provider } from 'react';\nimport { useEffect } from 'react';\n\nimport type { UnsubscribeCallback } from '@dxos/async';\n\nimport type { Intent, IntentDispatcher, IntentResolver, IntentResult } from './intent';\n\nexport type IntentExecution = {\n intent: Intent;\n result: IntentResult;\n};\n\nexport type IntentContext = {\n dispatch: IntentDispatcher;\n undo: () => Promise<IntentResult | void>;\n history: IntentExecution[][];\n registerResolver: (pluginId: string, resolver: IntentResolver) => UnsubscribeCallback;\n};\n\nconst IntentContext: Context<IntentContext> = createContext<IntentContext>({\n dispatch: async () => ({}),\n undo: async () => ({}),\n history: [],\n registerResolver: () => () => {},\n});\n\n/**\n * @deprecated Prefer granular hooks.\n */\n// TODO(burdon): Remove. Use useIntentDispatcher.\nexport const useIntent = () => useContext(IntentContext);\n\nexport const useIntentDispatcher = (): IntentDispatcher => {\n const { dispatch } = useIntent();\n return dispatch;\n};\n\nexport const useIntentResolver = (plugin: string, resolver: IntentResolver) => {\n const { registerResolver } = useIntent();\n useEffect(() => {\n return registerResolver(plugin, resolver);\n }, [plugin, resolver]);\n};\n\nexport const IntentProvider: Provider<IntentContext> = IntentContext.Provider;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type IntentExecution } from './IntentContext';\n\n/**\n * Check if the chain of intents is undoable.\n */\nexport const isUndoable = (chain: IntentExecution[]): boolean =>\n chain.length > 0 && chain.every(({ result }) => result.undoable);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nconst IntentMeta = {\n id: 'dxos.org/plugin/intent',\n};\n\nexport default IntentMeta;\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type IntentContext } from './IntentContext';\nimport { type IntentResolver } from './intent';\nimport { type Plugin } from '../plugin-host';\n\nexport type IntentResolverProvides = {\n intent: {\n resolver: IntentResolver;\n };\n};\n\nexport type IntentPluginProvides = {\n intent: IntentContext;\n};\n\nexport const parseIntentPlugin = (plugin: Plugin) =>\n (plugin.provides as any).intent?.dispatch ? (plugin as Plugin<IntentPluginProvides>) : undefined;\n\nexport const parseIntentResolverPlugin = (plugin: Plugin) =>\n (plugin.provides as any).intent?.resolver ? (plugin as Plugin<IntentResolverProvides>) : undefined;\n\n//\n// Intents\n//\n\nconst INTENT_PLUGIN = 'dxos.org/plugin/intent';\n\nconst INTENT_ACTION = `${INTENT_PLUGIN}/action`;\n\nexport enum IntentAction {\n /**\n * Fired after an intent is dispatched if the intent is undoable.\n */\n SHOW_UNDO = `${INTENT_ACTION}/show-undo`,\n}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { IntentPlugin } from './IntentPlugin';\n\nexport * from './intent';\nexport * from './provides';\n\nexport * from './IntentContext';\n\nexport default IntentPlugin;\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["import_react", "IntentContext", "createContext", "dispatch", "undo", "history", "registerResolver", "useIntent", "useContext", "useIntentDispatcher", "useIntentResolver", "plugin", "resolver", "useEffect", "IntentProvider", "Provider", "isUndoable", "chain", "length", "every", "result", "undoable", "IntentMeta", "id", "parseIntentPlugin", "provides", "intent", "undefined", "parseIntentResolverPlugin", "INTENT_PLUGIN", "INTENT_ACTION", "IntentAction", "EXECUTION_LIMIT", "HISTORY_LIMIT", "IntentPlugin", "state", "create", "dynamicResolvers", "Set", "meta", "ready", "plugins", "log", "action", "entry", "findPlugin", "filterPlugins", "env", "DEV", "warn", "dispatchChain", "intentOrArray", "depth", "error", "Error", "executionResults", "Array", "isArray", "prevResult", "at", "data", "push", "intents", "forEach", "splice", "SHOW_UNDO", "results", "last", "findLastIndex", "map", "filter", "_", "index", "add", "delete", "context", "children", "React", "value"]
|
|
7
7
|
}
|
|
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_SOVLKUWI_exports = {};
|
|
30
|
+
__export(chunk_SOVLKUWI_exports, {
|
|
31
31
|
ErrorBoundary: () => ErrorBoundary,
|
|
32
32
|
Surface: () => Surface,
|
|
33
33
|
SurfaceProvider: () => SurfaceProvider,
|
|
@@ -39,10 +39,10 @@ __export(chunk_EF67TRWJ_exports, {
|
|
|
39
39
|
useSurface: () => useSurface,
|
|
40
40
|
useSurfaceRoot: () => useSurfaceRoot
|
|
41
41
|
});
|
|
42
|
-
module.exports = __toCommonJS(
|
|
42
|
+
module.exports = __toCommonJS(chunk_SOVLKUWI_exports);
|
|
43
43
|
var import_chunk_QBM42OQ6 = require("./chunk-QBM42OQ6.cjs");
|
|
44
44
|
var import_react = __toESM(require("react"));
|
|
45
|
-
var
|
|
45
|
+
var import_live_object = require("@dxos/live-object");
|
|
46
46
|
var import_react2 = require("react");
|
|
47
47
|
var import_debug = require("@dxos/debug");
|
|
48
48
|
var import_react3 = __toESM(require("react"));
|
|
@@ -59,7 +59,7 @@ var meta_default = SurfaceMeta;
|
|
|
59
59
|
var parseRootSurfacePlugin = (plugin) => plugin?.provides?.surface?.components ? plugin : void 0;
|
|
60
60
|
var parseSurfacePlugin = (plugin) => plugin?.provides?.surface?.component ? plugin : void 0;
|
|
61
61
|
var SurfacePlugin = () => {
|
|
62
|
-
const state = (0,
|
|
62
|
+
const state = (0, import_live_object.create)({
|
|
63
63
|
components: {},
|
|
64
64
|
debugInfo: /* @__PURE__ */ new Map()
|
|
65
65
|
});
|
|
@@ -233,4 +233,4 @@ var plugin_surface_default = SurfacePlugin;
|
|
|
233
233
|
useSurface,
|
|
234
234
|
useSurfaceRoot
|
|
235
235
|
});
|
|
236
|
-
//# sourceMappingURL=chunk-
|
|
236
|
+
//# sourceMappingURL=chunk-SOVLKUWI.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/plugins/plugin-surface/SurfacePlugin.tsx", "../../../src/plugins/plugin-surface/SurfaceRootContext.tsx", "../../../src/plugins/plugin-surface/meta.ts", "../../../src/plugins/plugin-surface/provides.ts", "../../../src/plugins/plugin-surface/helpers.ts", "../../../src/plugins/plugin-surface/ErrorBoundary.tsx", "../../../src/plugins/plugin-surface/Surface.tsx", "../../../src/plugins/plugin-surface/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { create } from '@dxos/live-object';\n\nimport { SurfaceProvider, type SurfaceRootContext } from './SurfaceRootContext';\nimport SurfaceMeta from './meta';\nimport { parseSurfacePlugin, type SurfacePluginProvides } from './provides';\nimport { filterPlugins } from '../helpers';\nimport { type PluginDefinition } from '../plugin-host';\n\n/**\n * Provides a registry of surface components.\n */\nexport const SurfacePlugin = (): PluginDefinition<SurfacePluginProvides> => {\n const state = create<SurfaceRootContext>({ components: {}, debugInfo: new Map() });\n\n return {\n meta: SurfaceMeta,\n ready: async (plugins) => {\n state.components = filterPlugins(plugins, parseSurfacePlugin).reduce((acc, plugin) => {\n return { ...acc, [plugin.meta.id]: plugin.provides.surface.component };\n }, {});\n },\n provides: {\n surface: state,\n context: ({ children }) => <SurfaceProvider value={state}>{children}</SurfaceProvider>,\n },\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { createContext, useContext, type JSX, type ForwardedRef } from 'react';\n\nimport { raise } from '@dxos/debug';\n\nimport { type SurfaceProps } from './Surface';\n\n// TODO(wittjosiah): Factor out.\ntype WithRequiredProperty<Type, Key extends keyof Type> = Type & {\n [Property in Key]-?: Type[Property];\n};\n\ntype SurfaceComponentProps = WithRequiredProperty<SurfaceProps, 'data'>;\n\n/**\n * Determines the priority of the surface when multiple components are resolved.\n */\nexport type SurfaceDisposition = 'hoist' | 'fallback';\n\n/**\n * Surface debug info.\n * NOTE: Short-term measure to track perf issues.\n */\nexport type DebugInfo = {\n id: string;\n created: number;\n renderCount: number;\n} & Pick<SurfaceProps, 'role' | 'name'>;\n\nexport type SurfaceResult = {\n node: JSX.Element;\n disposition?: SurfaceDisposition;\n};\n\n/**\n * Function that resolves a Surface.\n * If a null value is returned, the rendering is deferred to other plugins.\n */\nexport type SurfaceComponent = (\n props: SurfaceComponentProps,\n forwardedRef: ForwardedRef<HTMLElement>,\n) => JSX.Element | SurfaceResult | null;\n\nexport type SurfaceRootContext = {\n components: Record<string, SurfaceComponent>;\n\n /**\n * Debug info.\n */\n debugInfo?: Map<string, DebugInfo>;\n};\n\nconst SurfaceRootContext = createContext<SurfaceRootContext | undefined>(undefined);\n\nexport const useSurfaceRoot = () => useContext(SurfaceRootContext) ?? raise(new Error('Missing SurfaceRootContext'));\n\nexport const SurfaceProvider = SurfaceRootContext.Provider;\n", "//\n// Copyright 2023 DXOS.org\n//\n\nconst SurfaceMeta = {\n id: 'dxos.org/plugin/surface',\n};\n\nexport default SurfaceMeta;\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type SurfaceComponent, type SurfaceRootContext } from './SurfaceRootContext';\nimport { type Plugin } from '../plugin-host';\n\n// TODO(burdon): Predicate based providers?\nexport type SurfaceProvides = {\n surface: {\n /**\n * Used by the `Surface` resolver to find a component to render.\n */\n component: SurfaceComponent;\n };\n};\n\nexport type SurfacePluginProvides = {\n surface: SurfaceRootContext;\n};\n\nexport const parseRootSurfacePlugin = (plugin?: Plugin) =>\n (plugin?.provides as any)?.surface?.components ? (plugin as Plugin<SurfacePluginProvides>) : undefined;\n\nexport const parseSurfacePlugin = (plugin?: Plugin) =>\n (plugin?.provides as any)?.surface?.component ? (plugin as Plugin<SurfaceProvides>) : undefined;\n", "//\n// Copyright 2023 DXOS.org\n//\n\n/**\n * Checks if the given data is an object and not null.\n *\n * Useful inside surface component resolvers as a type guard.\n *\n * @example\n * ```ts\n * const old =\n * data.content &&\n * typeof data.content === 'object' &&\n * 'id' in data.content &&\n * typeof data.content.id === 'string';\n *\n * // becomes\n * const new = isObject(data.content) && typeof data.content.id === 'string';\n * ```\n */\nexport const isObject = (data: unknown): data is { [key: string]: unknown } => !!data && typeof data === 'object';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { Component, type FC, type PropsWithChildren } from 'react';\n\ntype Props = PropsWithChildren<{ data?: any; fallback: FC<{ data?: any; error: Error; reset: () => void }> }>;\ntype State = { error: Error | undefined };\n\n/**\n * Surface error boundary.\n *\n * For basic usage prefer providing a fallback component to `Surface`.\n *\n * For more information on error boundaries, see:\n * https://react.dev/reference/react/Component#catching-rendering-errors-with-an-error-boundary\n */\nexport class ErrorBoundary extends Component<Props, State> {\n constructor(props: Props) {\n super(props);\n this.state = { error: undefined };\n }\n\n static getDerivedStateFromError(error: Error) {\n return { error };\n }\n\n override componentDidUpdate(prevProps: Props): void {\n if (prevProps.data !== this.props.data) {\n this.resetError();\n }\n }\n\n override render() {\n if (this.state.error) {\n return <this.props.fallback data={this.props.data} error={this.state.error} reset={this.resetError} />;\n }\n\n return this.props.children;\n }\n\n private resetError() {\n this.setState({ error: undefined });\n }\n}\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport React, {\n Fragment,\n type ForwardedRef,\n type PropsWithChildren,\n type ReactNode,\n Suspense,\n createContext,\n forwardRef,\n isValidElement,\n memo,\n useContext,\n useEffect,\n useState,\n} from 'react';\n\nimport { raise } from '@dxos/debug';\nimport { log } from '@dxos/log';\n\nimport { ErrorBoundary } from './ErrorBoundary';\nimport { type SurfaceComponent, type SurfaceResult, useSurfaceRoot } from './SurfaceRootContext';\n\n/**\n * Direction determines how multiple components are laid out.\n */\nexport type Direction = 'inline' | 'inline-reverse' | 'block' | 'block-reverse';\n\n/**\n * SurfaceProps are the props that are passed to the Surface component.\n */\nexport type SurfaceProps = PropsWithChildren<{\n /**\n * Optional ID for debugging.\n */\n id?: string;\n\n /**\n * Role defines how the data should be rendered.\n */\n role?: string;\n\n /**\n * Names allow nested surfaces to be specified in the parent context, similar to a slot.\n * Defaults to the value of `role` if not specified.\n */\n name?: string;\n\n /**\n * The data to be rendered by the surface.\n */\n data?: Record<string, unknown>;\n\n /**\n * Configure nested surfaces (indexed by the surface's `name`).\n */\n surfaces?: Record<string, Pick<SurfaceProps, 'data' | 'surfaces'>>;\n\n /**\n * If specified, the Surface will be wrapped in an error boundary.\n * The fallback component will be rendered if an error occurs.\n */\n fallback?: ErrorBoundary['props']['fallback'];\n\n /**\n * If specified, the Surface will be wrapped in a suspense boundary.\n * The placeholder component will be rendered while the surface component is loading.\n */\n placeholder?: ReactNode;\n\n /**\n * If more than one component is resolved, the limit determines how many are rendered.\n */\n limit?: number | undefined;\n\n /**\n * If more than one component is resolved, the direction determines how they are laid out.\n * NOTE: This is not yet implemented.\n */\n direction?: Direction;\n\n /**\n * Additional props to pass to the component.\n * These props are not used by Surface itself but may be used by components which resolve the surface.\n */\n [key: string]: unknown;\n}>;\n\nlet count = 0;\n\n/**\n * A surface is a named region of the screen that can be populated by plugins.\n */\nexport const Surface = memo(\n forwardRef<HTMLElement, SurfaceProps>(\n ({ id: _id, role, name = role, fallback, placeholder, ...rest }, forwardedRef) => {\n const props = { role, name, fallback, ...rest };\n const { debugInfo } = useSurfaceRoot();\n\n // Track debug info.\n const [id] = useState<string>(() => _id ?? `surface-${++count}`);\n useEffect(() => {\n debugInfo?.set(id, { id, created: Date.now(), name, role, renderCount: 0 });\n return () => {\n debugInfo?.delete(id);\n };\n }, [id]);\n\n if (debugInfo?.get(id)) {\n debugInfo.get(id)!.renderCount++;\n }\n\n const context = useContext(SurfaceContext);\n const data = props.data ?? ((name && context?.surfaces?.[name]?.data) || {});\n\n const resolver = <SurfaceResolver {...props} id={id} ref={forwardedRef} />;\n const suspense = placeholder ? <Suspense fallback={placeholder}>{resolver}</Suspense> : resolver;\n\n return fallback ? (\n <ErrorBoundary data={data} fallback={fallback}>\n {suspense}\n </ErrorBoundary>\n ) : (\n suspense\n );\n },\n ),\n);\n\nconst SurfaceContext = createContext<SurfaceProps | undefined>(undefined);\n\nexport const useSurface = (): SurfaceProps =>\n useContext(SurfaceContext) ?? raise(new Error('Surface context not found'));\n\n/**\n * Root surface component.\n */\nconst SurfaceResolver = forwardRef<HTMLElement, SurfaceProps>((props, forwardedRef) => {\n const { components } = useSurfaceRoot();\n const parent = useContext(SurfaceContext);\n const nodes = resolveNodes(components, props, parent, forwardedRef);\n const currentContext: SurfaceProps = {\n ...props,\n surfaces: {\n ...((props.name && parent?.surfaces?.[props.name]?.surfaces) || {}),\n ...props.surfaces,\n },\n };\n\n return <SurfaceContext.Provider value={currentContext}>{nodes}</SurfaceContext.Provider>;\n});\n\n/**\n * Resolve surface nodes from across all component.\n */\nconst resolveNodes = (\n components: Record<string, SurfaceComponent>,\n props: SurfaceProps,\n context: SurfaceProps | undefined,\n forwardedRef: ForwardedRef<HTMLElement>,\n): ReactNode[] => {\n const data = {\n ...((props.name && context?.surfaces?.[props.name]?.data) || {}),\n ...props.data,\n };\n\n const candidates = Object.entries(components)\n .map(([key, component]): [string, SurfaceResult] | undefined => {\n // TODO(burdon): Avoid variable return types in plugin contract.\n const result = component({ ...props, data }, forwardedRef);\n if (!result || typeof result !== 'object') {\n return undefined;\n }\n\n // Normalize tuple.\n if ('node' in result) {\n return [key, result];\n } else if (isValidElement(result)) {\n return [key, { node: result }];\n } else {\n log.warn('invalid result', { result });\n return undefined;\n }\n })\n .filter((result): result is [string, SurfaceResult] => Boolean(result))\n .sort(([, { disposition: a = 'default' }], [, { disposition: b = 'default' }]) => {\n return a === b ? 0 : a === 'hoist' || b === 'fallback' ? -1 : b === 'hoist' || a === 'fallback' ? 1 : 0;\n });\n\n // TODO(burdon): Does this prematurely process the node?\n const nodes = candidates.map(([key, result]) => <Fragment key={key}>{result.node}</Fragment>);\n return props.limit ? nodes.slice(0, props.limit) : nodes;\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { SurfacePlugin } from './SurfacePlugin';\n\nexport * from './helpers';\nexport * from './provides';\n\nexport * from './ErrorBoundary';\nexport * from './Surface';\nexport * from './SurfaceRootContext';\n\nexport default SurfacePlugin;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_react", "import_debug", "SurfaceRootContext", "createContext", "undefined", "useSurfaceRoot", "useContext", "raise", "Error", "SurfaceProvider", "Provider", "SurfaceMeta", "id", "parseRootSurfacePlugin", "plugin", "provides", "surface", "components", "parseSurfacePlugin", "component", "SurfacePlugin", "state", "create", "debugInfo", "Map", "meta", "ready", "plugins", "filterPlugins", "reduce", "acc", "context", "children", "React", "value", "isObject", "data", "ErrorBoundary", "Component", "constructor", "props", "error", "getDerivedStateFromError", "componentDidUpdate", "prevProps", "resetError", "render", "this", "fallback", "reset", "setState", "count", "Surface", "memo", "forwardRef", "_id", "role", "name", "placeholder", "rest", "forwardedRef", "useState", "useEffect", "set", "created", "Date", "now", "renderCount", "delete", "get", "SurfaceContext", "surfaces", "resolver", "SurfaceResolver", "ref", "suspense", "Suspense", "useSurface", "parent", "nodes", "resolveNodes", "currentContext", "candidates", "Object", "entries", "map", "key", "result", "isValidElement", "node", "log", "warn", "filter", "Boolean", "sort", "disposition", "a", "b", "Fragment", "limit", "slice"]
|
|
7
|
+
}
|
package/dist/lib/node/index.cjs
CHANGED
|
@@ -29,10 +29,10 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
29
29
|
var node_exports = {};
|
|
30
30
|
__export(node_exports, {
|
|
31
31
|
ActiveParts: () => ActiveParts,
|
|
32
|
-
ErrorBoundary: () =>
|
|
32
|
+
ErrorBoundary: () => import_chunk_SOVLKUWI.ErrorBoundary,
|
|
33
33
|
HostPlugin: () => HostPlugin,
|
|
34
|
-
IntentAction: () =>
|
|
35
|
-
IntentProvider: () =>
|
|
34
|
+
IntentAction: () => import_chunk_QSVP5HOW.IntentAction,
|
|
35
|
+
IntentProvider: () => import_chunk_QSVP5HOW.IntentProvider,
|
|
36
36
|
Layout: () => Layout,
|
|
37
37
|
LayoutAction: () => LayoutAction,
|
|
38
38
|
NavigationAction: () => NavigationAction,
|
|
@@ -47,8 +47,8 @@ __export(node_exports, {
|
|
|
47
47
|
SLUG_LIST_SEPARATOR: () => SLUG_LIST_SEPARATOR,
|
|
48
48
|
SLUG_PATH_SEPARATOR: () => SLUG_PATH_SEPARATOR,
|
|
49
49
|
SettingsAction: () => import_chunk_JZ2JVKRY.SettingsAction,
|
|
50
|
-
Surface: () =>
|
|
51
|
-
SurfaceProvider: () =>
|
|
50
|
+
Surface: () => import_chunk_SOVLKUWI.Surface,
|
|
51
|
+
SurfaceProvider: () => import_chunk_SOVLKUWI.SurfaceProvider,
|
|
52
52
|
Toast: () => Toast,
|
|
53
53
|
createApp: () => createApp,
|
|
54
54
|
defaultFileTypes: () => defaultFileTypes,
|
|
@@ -61,43 +61,44 @@ __export(node_exports, {
|
|
|
61
61
|
isLayoutAdjustment: () => isLayoutAdjustment,
|
|
62
62
|
isLayoutMode: () => isLayoutMode,
|
|
63
63
|
isLayoutParts: () => isLayoutParts,
|
|
64
|
-
isObject: () =>
|
|
64
|
+
isObject: () => import_chunk_SOVLKUWI.isObject,
|
|
65
65
|
openIds: () => openIds,
|
|
66
66
|
parseFileManagerPlugin: () => parseFileManagerPlugin,
|
|
67
67
|
parseGraphBuilderPlugin: () => parseGraphBuilderPlugin,
|
|
68
68
|
parseGraphPlugin: () => parseGraphPlugin,
|
|
69
69
|
parseGraphSerializerPlugin: () => parseGraphSerializerPlugin,
|
|
70
|
-
parseIntentPlugin: () =>
|
|
71
|
-
parseIntentResolverPlugin: () =>
|
|
70
|
+
parseIntentPlugin: () => import_chunk_QSVP5HOW.parseIntentPlugin,
|
|
71
|
+
parseIntentResolverPlugin: () => import_chunk_QSVP5HOW.parseIntentResolverPlugin,
|
|
72
72
|
parseLayoutPlugin: () => parseLayoutPlugin,
|
|
73
73
|
parseMetadataRecordsPlugin: () => parseMetadataRecordsPlugin,
|
|
74
74
|
parseMetadataResolverPlugin: () => parseMetadataResolverPlugin,
|
|
75
75
|
parseNavigationPlugin: () => parseNavigationPlugin,
|
|
76
76
|
parsePluginHost: () => parsePluginHost,
|
|
77
|
-
parseRootSurfacePlugin: () =>
|
|
77
|
+
parseRootSurfacePlugin: () => import_chunk_SOVLKUWI.parseRootSurfacePlugin,
|
|
78
78
|
parseSettingsPlugin: () => import_chunk_JZ2JVKRY.parseSettingsPlugin,
|
|
79
|
-
parseSurfacePlugin: () =>
|
|
79
|
+
parseSurfacePlugin: () => import_chunk_SOVLKUWI.parseSurfacePlugin,
|
|
80
80
|
parseTranslationsPlugin: () => parseTranslationsPlugin,
|
|
81
81
|
partLength: () => partLength,
|
|
82
82
|
resolvePlugin: () => import_chunk_QBM42OQ6.resolvePlugin,
|
|
83
|
-
useIntent: () =>
|
|
84
|
-
useIntentDispatcher: () =>
|
|
85
|
-
useIntentResolver: () =>
|
|
83
|
+
useIntent: () => import_chunk_QSVP5HOW.useIntent,
|
|
84
|
+
useIntentDispatcher: () => import_chunk_QSVP5HOW.useIntentDispatcher,
|
|
85
|
+
useIntentResolver: () => import_chunk_QSVP5HOW.useIntentResolver,
|
|
86
86
|
usePlugin: () => usePlugin,
|
|
87
87
|
usePlugins: () => usePlugins,
|
|
88
88
|
useResolvePlugin: () => useResolvePlugin,
|
|
89
89
|
useResolvePlugins: () => useResolvePlugins,
|
|
90
|
-
useSurface: () =>
|
|
91
|
-
useSurfaceRoot: () =>
|
|
90
|
+
useSurface: () => import_chunk_SOVLKUWI.useSurface,
|
|
91
|
+
useSurfaceRoot: () => import_chunk_SOVLKUWI.useSurfaceRoot
|
|
92
92
|
});
|
|
93
93
|
module.exports = __toCommonJS(node_exports);
|
|
94
|
-
var
|
|
95
|
-
var
|
|
94
|
+
var import_chunk_QSVP5HOW = require("./chunk-QSVP5HOW.cjs");
|
|
95
|
+
var import_chunk_SOVLKUWI = require("./chunk-SOVLKUWI.cjs");
|
|
96
96
|
var import_chunk_QBM42OQ6 = require("./chunk-QBM42OQ6.cjs");
|
|
97
97
|
var import_chunk_JZ2JVKRY = require("./chunk-JZ2JVKRY.cjs");
|
|
98
98
|
var import_zod = require("zod");
|
|
99
99
|
var import_schema = require("@effect/schema");
|
|
100
100
|
var import_zod2 = require("zod");
|
|
101
|
+
var import_util = require("@dxos/util");
|
|
101
102
|
var import_zod3 = require("zod");
|
|
102
103
|
var import_react = __toESM(require("react"));
|
|
103
104
|
var import_local_storage = require("@dxos/local-storage");
|
|
@@ -105,7 +106,7 @@ var import_react2 = __toESM(require("react"));
|
|
|
105
106
|
var import_log = require("@dxos/log");
|
|
106
107
|
var import_react3 = require("react");
|
|
107
108
|
var import_debug = require("@dxos/debug");
|
|
108
|
-
var
|
|
109
|
+
var import_util2 = require("@dxos/util");
|
|
109
110
|
var import_react4 = __toESM(require("react"));
|
|
110
111
|
var import_invariant = require("@dxos/invariant");
|
|
111
112
|
var defaultFileTypes = {
|
|
@@ -246,8 +247,8 @@ var parseNavigationPlugin = (plugin) => {
|
|
|
246
247
|
}
|
|
247
248
|
return void 0;
|
|
248
249
|
};
|
|
249
|
-
var openIds = (layout) => {
|
|
250
|
-
return Object.values(layout).flatMap((part) => part?.map((entry) => entry.id) ?? []).filter((id) => id !== void 0);
|
|
250
|
+
var openIds = (layout, parts) => {
|
|
251
|
+
return Object.values(parts ? (0, import_util.pick)(layout, parts) : layout).flatMap((part) => part?.map((entry) => entry.id) ?? []).filter((id) => id !== void 0);
|
|
251
252
|
};
|
|
252
253
|
var firstIdInPart = (layout, part) => {
|
|
253
254
|
if (!layout) {
|
|
@@ -418,7 +419,7 @@ var useResolvePlugin = (predicate) => {
|
|
|
418
419
|
};
|
|
419
420
|
var useResolvePlugins = (predicate) => {
|
|
420
421
|
const { plugins } = usePlugins();
|
|
421
|
-
return (0, import_react3.useMemo)(() => plugins.map(predicate).filter(
|
|
422
|
+
return (0, import_react3.useMemo)(() => plugins.map(predicate).filter(import_util2.nonNullable), [
|
|
422
423
|
plugins,
|
|
423
424
|
predicate
|
|
424
425
|
]);
|
|
@@ -462,7 +463,7 @@ var HostPlugin = ({ plugins, meta, core, defaults = [], fallback = DefaultFallba
|
|
|
462
463
|
}, children);
|
|
463
464
|
},
|
|
464
465
|
root: () => {
|
|
465
|
-
return /* @__PURE__ */ import_react.default.createElement(
|
|
466
|
+
return /* @__PURE__ */ import_react.default.createElement(import_chunk_SOVLKUWI.ErrorBoundary, {
|
|
466
467
|
fallback
|
|
467
468
|
}, /* @__PURE__ */ import_react.default.createElement(PluginContainer, {
|
|
468
469
|
plugins,
|
|
@@ -492,20 +493,20 @@ var createApp = ({ meta, plugins, core, ...params }) => {
|
|
|
492
493
|
const hostPlugin = HostPlugin({
|
|
493
494
|
plugins: {
|
|
494
495
|
...plugins,
|
|
495
|
-
[
|
|
496
|
+
[import_chunk_QSVP5HOW.meta_default.id]: Plugin.lazy(() => import("./plugin-intent-FVFR2LKB.cjs")),
|
|
496
497
|
[import_chunk_JZ2JVKRY.meta_default.id]: Plugin.lazy(() => import("./plugin-settings-OZ6IKAE5.cjs")),
|
|
497
|
-
[
|
|
498
|
+
[import_chunk_SOVLKUWI.meta_default.id]: Plugin.lazy(() => import("./plugin-surface-YWDRXQTD.cjs"))
|
|
498
499
|
},
|
|
499
500
|
meta: [
|
|
500
|
-
|
|
501
|
+
import_chunk_QSVP5HOW.meta_default,
|
|
501
502
|
import_chunk_JZ2JVKRY.meta_default,
|
|
502
|
-
|
|
503
|
+
import_chunk_SOVLKUWI.meta_default,
|
|
503
504
|
...meta
|
|
504
505
|
],
|
|
505
506
|
core: [
|
|
506
|
-
|
|
507
|
+
import_chunk_QSVP5HOW.meta_default.id,
|
|
507
508
|
import_chunk_JZ2JVKRY.meta_default.id,
|
|
508
|
-
|
|
509
|
+
import_chunk_SOVLKUWI.meta_default.id,
|
|
509
510
|
...core
|
|
510
511
|
],
|
|
511
512
|
...params
|