@dxos/app-framework 0.7.5-main.9d2a38b → 0.7.5-main.e9bb01b
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/app-graph-builder-F7VZ6LRN.mjs +137 -0
- package/dist/lib/browser/app-graph-builder-F7VZ6LRN.mjs.map +7 -0
- package/dist/lib/browser/{chunk-GNLU3GAU.mjs → chunk-ATRNTMSS.mjs} +623 -819
- package/dist/lib/browser/chunk-ATRNTMSS.mjs.map +7 -0
- package/dist/lib/browser/chunk-LDJ3T4V3.mjs +32 -0
- package/dist/lib/browser/chunk-LDJ3T4V3.mjs.map +7 -0
- package/dist/lib/browser/chunk-WS6SU6HI.mjs +285 -0
- package/dist/lib/browser/chunk-WS6SU6HI.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +57 -74
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/intent-dispatcher-E6J7E5Y5.mjs +11 -0
- package/dist/lib/browser/intent-dispatcher-E6J7E5Y5.mjs.map +7 -0
- package/dist/lib/browser/intent-resolver-XLE4L3LS.mjs +38 -0
- package/dist/lib/browser/intent-resolver-XLE4L3LS.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/store-QU2IKFAI.mjs +19 -0
- package/dist/lib/browser/store-QU2IKFAI.mjs.map +7 -0
- package/dist/lib/browser/testing/index.mjs +10 -3
- package/dist/lib/browser/testing/index.mjs.map +3 -3
- package/dist/lib/browser/worker.mjs +77 -0
- package/dist/lib/browser/worker.mjs.map +7 -0
- package/dist/lib/node/app-graph-builder-JGBADFF7.cjs +146 -0
- package/dist/lib/node/app-graph-builder-JGBADFF7.cjs.map +7 -0
- package/dist/lib/node/chunk-QLVQ6PND.cjs +58 -0
- package/dist/lib/node/chunk-QLVQ6PND.cjs.map +7 -0
- package/dist/lib/node/chunk-WKC6YMEQ.cjs +1433 -0
- package/dist/lib/node/chunk-WKC6YMEQ.cjs.map +7 -0
- package/dist/lib/node/chunk-WRWRZKZU.cjs +308 -0
- package/dist/lib/node/chunk-WRWRZKZU.cjs.map +7 -0
- package/dist/lib/node/index.cjs +106 -118
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/intent-dispatcher-CFBKDZQR.cjs +32 -0
- package/dist/lib/node/intent-dispatcher-CFBKDZQR.cjs.map +7 -0
- package/dist/lib/node/intent-resolver-3TKCXP4S.cjs +45 -0
- package/dist/lib/node/intent-resolver-3TKCXP4S.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/store-4QMUUU2A.cjs +34 -0
- package/dist/lib/node/store-4QMUUU2A.cjs.map +7 -0
- package/dist/lib/node/testing/index.cjs +15 -8
- package/dist/lib/node/testing/index.cjs.map +3 -3
- package/dist/lib/node/worker.cjs +99 -0
- package/dist/lib/node/worker.cjs.map +7 -0
- package/dist/lib/node-esm/app-graph-builder-2QEX57NX.mjs +138 -0
- package/dist/lib/node-esm/app-graph-builder-2QEX57NX.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-KPMTPXQI.mjs → chunk-44J2VZBB.mjs} +623 -819
- package/dist/lib/node-esm/chunk-44J2VZBB.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-CNJYZNSL.mjs +34 -0
- package/dist/lib/node-esm/chunk-CNJYZNSL.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-HTLXL32I.mjs +286 -0
- package/dist/lib/node-esm/chunk-HTLXL32I.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +57 -74
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/intent-dispatcher-LDQGDZ62.mjs +12 -0
- package/dist/lib/node-esm/intent-dispatcher-LDQGDZ62.mjs.map +7 -0
- package/dist/lib/node-esm/intent-resolver-7VJWN67U.mjs +39 -0
- package/dist/lib/node-esm/intent-resolver-7VJWN67U.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/store-VWDAYUQY.mjs +20 -0
- package/dist/lib/node-esm/store-VWDAYUQY.mjs.map +7 -0
- package/dist/lib/node-esm/testing/index.mjs +10 -3
- package/dist/lib/node-esm/testing/index.mjs.map +3 -3
- package/dist/lib/node-esm/worker.mjs +78 -0
- package/dist/lib/node-esm/worker.mjs.map +7 -0
- package/dist/types/src/App.d.ts.map +1 -1
- package/dist/types/src/common/capabilities.d.ts +63 -110
- package/dist/types/src/common/capabilities.d.ts.map +1 -1
- package/dist/types/src/common/events.d.ts +8 -1
- package/dist/types/src/common/events.d.ts.map +1 -1
- package/dist/types/src/common/file.d.ts +1 -1
- package/dist/types/src/common/file.d.ts.map +1 -1
- package/dist/types/src/common/graph.d.ts +2 -2
- package/dist/types/src/common/graph.d.ts.map +1 -1
- package/dist/types/src/common/index.d.ts +0 -1
- package/dist/types/src/common/index.d.ts.map +1 -1
- package/dist/types/src/common/layout.d.ts +204 -121
- package/dist/types/src/common/layout.d.ts.map +1 -1
- package/dist/types/src/common/surface.d.ts +3 -3
- package/dist/types/src/common/surface.d.ts.map +1 -1
- package/dist/types/src/common/translations.d.ts +7 -7
- package/dist/types/src/common/translations.d.ts.map +1 -1
- package/dist/types/src/core/capabilities.d.ts +6 -2
- package/dist/types/src/core/capabilities.d.ts.map +1 -1
- package/dist/types/src/core/manager.d.ts +2 -9
- package/dist/types/src/core/manager.d.ts.map +1 -1
- package/dist/types/src/core/plugin.d.ts +5 -2
- package/dist/types/src/core/plugin.d.ts.map +1 -1
- package/dist/types/src/playground/generator/Toolbar.d.ts.map +1 -1
- package/dist/types/src/playground/generator/generator.d.ts +2 -0
- package/dist/types/src/playground/generator/generator.d.ts.map +1 -1
- package/dist/types/src/playground/generator/plugin.d.ts.map +1 -1
- package/dist/types/src/playground/logger/Toolbar.d.ts.map +1 -1
- package/dist/types/src/playground/logger/plugin.d.ts.map +1 -1
- package/dist/types/src/playground/logger/schema.d.ts +1 -1
- package/dist/types/src/playground/logger/schema.d.ts.map +1 -1
- package/dist/types/src/plugin-intent/IntentPlugin.d.ts.map +1 -1
- package/dist/types/src/plugin-intent/actions.d.ts +1 -1
- package/dist/types/src/plugin-intent/actions.d.ts.map +1 -1
- package/dist/types/src/plugin-intent/index.d.ts +0 -1
- package/dist/types/src/plugin-intent/index.d.ts.map +1 -1
- package/dist/types/src/plugin-intent/intent-dispatcher.d.ts +27 -20
- package/dist/types/src/plugin-intent/intent-dispatcher.d.ts.map +1 -1
- package/dist/types/src/plugin-intent/intent.d.ts +3 -3
- package/dist/types/src/plugin-intent/intent.d.ts.map +1 -1
- package/dist/types/src/plugin-settings/SettingsPlugin.d.ts.map +1 -1
- package/dist/types/src/plugin-settings/actions.d.ts +11 -1
- package/dist/types/src/plugin-settings/actions.d.ts.map +1 -1
- package/dist/types/src/plugin-settings/app-graph-builder.d.ts +197 -0
- package/dist/types/src/plugin-settings/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/plugin-settings/intent-resolver.d.ts +4 -0
- package/dist/types/src/plugin-settings/intent-resolver.d.ts.map +1 -0
- package/dist/types/src/plugin-settings/store.d.ts +5 -0
- package/dist/types/src/plugin-settings/store.d.ts.map +1 -0
- package/dist/types/src/plugin-settings/translations.d.ts +11 -0
- package/dist/types/src/plugin-settings/translations.d.ts.map +1 -0
- package/dist/types/src/{plugin-intent → react}/IntentContext.d.ts +1 -1
- package/dist/types/src/react/IntentContext.d.ts.map +1 -0
- package/dist/types/src/react/Surface.d.ts.map +1 -1
- package/dist/types/src/react/Surface.stories.d.ts +16 -0
- package/dist/types/src/react/Surface.stories.d.ts.map +1 -0
- package/dist/types/src/react/common.d.ts +12 -0
- package/dist/types/src/react/common.d.ts.map +1 -0
- package/dist/types/src/react/index.d.ts +2 -0
- package/dist/types/src/react/index.d.ts.map +1 -1
- package/dist/types/src/react/useIntentResolver.d.ts +3 -0
- package/dist/types/src/react/useIntentResolver.d.ts.map +1 -0
- package/dist/types/src/testing/withPluginManager.d.ts +1 -1
- package/dist/types/src/testing/withPluginManager.d.ts.map +1 -1
- package/dist/types/src/worker.d.ts +4 -0
- package/dist/types/src/worker.d.ts.map +1 -0
- package/package.json +26 -20
- package/project.json +3 -3
- package/src/App.tsx +15 -14
- package/src/common/capabilities.ts +20 -11
- package/src/common/events.ts +10 -1
- package/src/common/file.ts +1 -1
- package/src/common/graph.ts +2 -2
- package/src/common/index.ts +0 -1
- package/src/common/layout.ts +194 -126
- package/src/common/surface.ts +2 -2
- package/src/common/translations.ts +7 -8
- package/src/core/capabilities.ts +16 -7
- package/src/core/manager.test.ts +22 -73
- package/src/core/manager.ts +105 -91
- package/src/core/plugin.ts +6 -3
- package/src/playground/debug/plugin.ts +1 -1
- package/src/playground/generator/Toolbar.tsx +11 -11
- package/src/playground/generator/generator.ts +25 -0
- package/src/playground/generator/plugin.ts +6 -1
- package/src/playground/layout/plugin.ts +1 -1
- package/src/playground/logger/Toolbar.tsx +2 -1
- package/src/playground/logger/plugin.ts +6 -3
- package/src/playground/logger/schema.ts +1 -1
- package/src/plugin-intent/IntentPlugin.tsx +3 -43
- package/src/plugin-intent/actions.ts +1 -1
- package/src/plugin-intent/index.ts +0 -1
- package/src/plugin-intent/intent-dispatcher.test.ts +48 -29
- package/src/plugin-intent/intent-dispatcher.ts +76 -41
- package/src/plugin-intent/intent.ts +5 -5
- package/src/plugin-settings/SettingsPlugin.ts +19 -13
- package/src/plugin-settings/actions.ts +11 -1
- package/src/plugin-settings/app-graph-builder.ts +122 -0
- package/src/plugin-settings/intent-resolver.ts +28 -0
- package/src/plugin-settings/store.ts +20 -0
- package/src/plugin-settings/translations.ts +17 -0
- package/src/{plugin-intent → react}/IntentContext.tsx +2 -2
- package/src/react/Surface.stories.tsx +96 -0
- package/src/react/Surface.tsx +11 -8
- package/src/react/common.ts +12 -0
- package/src/react/index.ts +2 -0
- package/src/react/useIntentResolver.ts +22 -0
- package/src/testing/withPluginManager.tsx +11 -3
- package/src/worker.ts +11 -0
- package/tsconfig.json +3 -3
- package/dist/lib/browser/chunk-GNLU3GAU.mjs.map +0 -7
- package/dist/lib/node/chunk-FBA4BB3J.cjs +0 -1639
- package/dist/lib/node/chunk-FBA4BB3J.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-KPMTPXQI.mjs.map +0 -7
- package/dist/types/src/common/navigation.d.ts +0 -241
- package/dist/types/src/common/navigation.d.ts.map +0 -1
- package/dist/types/src/plugin-intent/IntentContext.d.ts.map +0 -1
- package/src/common/navigation.ts +0 -199
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/react/PluginManagerProvider.ts", "../../../src/react/useCapabilities.ts", "../../../src/react/common.ts", "../../../src/react/ErrorBoundary.tsx", "../../../src/react/Surface.tsx", "../../../src/react/useIntentResolver.ts", "../../../src/App.tsx", "../../../src/helpers.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { createContext, useContext } from 'react';\n\nimport { raise } from '@dxos/debug';\n\nimport { type PluginManager } from '../core';\n\nconst PluginManagerContext = createContext<PluginManager | undefined>(undefined);\n\n/**\n * Get the plugin manager.\n */\nexport const usePluginManager = (): PluginManager =>\n useContext(PluginManagerContext) ?? raise(new Error('Missing PluginManagerContext'));\n\n/**\n * Context provider for a plugin manager.\n */\nexport const PluginManagerProvider = PluginManagerContext.Provider;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { computed } from '@preact/signals-core';\nimport { useMemo } from 'react';\n\nimport { usePluginManager } from './PluginManagerProvider';\nimport { type InterfaceDef } from '../core';\n\n/**\n * Hook to request capabilities from the plugin context.\n * @returns An array of capabilities.\n */\nexport const useCapabilities = <T, U extends T = T>(\n interfaceDef: InterfaceDef<T>,\n filter?: (capability: T, moduleId: string) => capability is U,\n) => {\n const manager = usePluginManager();\n const signal = useMemo(\n () => computed(() => manager.context.requestCapabilities(interfaceDef, filter)),\n [interfaceDef],\n );\n return signal.value;\n};\n\n/**\n * Hook to request a capability from the plugin context.\n * @returns The capability.\n * @throws If no capability is found.\n */\nexport const useCapability = <T, U extends T = T>(\n interfaceDef: InterfaceDef<T>,\n filter?: (capability: T, moduleId: string) => capability is U,\n) => {\n const manager = usePluginManager();\n const signal = useMemo(() => computed(() => manager.context.requestCapability(interfaceDef, filter)), [interfaceDef]);\n return signal.value;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useCapability } from './useCapabilities';\nimport { Capabilities } from '../common';\n\nexport const useIntentDispatcher = () => useCapability(Capabilities.IntentDispatcher);\n\nexport const useAppGraph = () => useCapability(Capabilities.AppGraph);\n\nexport const useLayout = () => useCapability(Capabilities.Layout);\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 2025 DXOS.org\n//\n\nimport React, { memo, forwardRef, Suspense, useMemo } from 'react';\n\nimport { useDefaultValue } from '@dxos/react-hooks';\nimport { byPosition } from '@dxos/util';\n\nimport { ErrorBoundary } from './ErrorBoundary';\nimport { useCapabilities } from './useCapabilities';\nimport { Capabilities, type SurfaceDefinition, type SurfaceProps } from '../common';\nimport { type PluginsContext } from '../core';\n\n/**\n * @internal\n */\nexport const useSurfaces = () => {\n const surfaces = useCapabilities(Capabilities.ReactSurface);\n return useMemo(() => surfaces.flat(), [surfaces]);\n};\n\nconst findCandidates = (surfaces: SurfaceDefinition[], { role, data }: Pick<SurfaceProps, 'role' | 'data'>) => {\n return Object.values(surfaces)\n .filter((definition) =>\n Array.isArray(definition.role) ? definition.role.includes(role) : definition.role === role,\n )\n .filter(({ filter }) => (filter ? filter(data ?? {}) : true))\n .toSorted(byPosition);\n};\n\n/**\n * @returns `true` if there is a contributed surface which matches the specified role & data, `false` otherwise.\n */\nexport const isSurfaceAvailable = (context: PluginsContext, { role, data }: Pick<SurfaceProps, 'role' | 'data'>) => {\n const surfaces = context.requestCapabilities(Capabilities.ReactSurface);\n const candidates = findCandidates(surfaces.flat(), { role, data });\n return candidates.length > 0;\n};\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, data: _data, limit, fallback, placeholder, ...rest }, forwardedRef) => {\n // TODO(wittjosiah): This will make all surfaces depend on a single signal.\n // This isn't ideal because it means that any change to the data will cause all surfaces to re-render.\n // This effectively means that plugin modules which contribute surfaces need to all be activated at startup.\n // This should be fine for now because it's how it worked prior to capabilities api anyways.\n // In the future, it would be nice to be able to bucket the surface contributions by role.\n const surfaces = useSurfaces();\n const data = useDefaultValue(_data, () => ({}));\n\n // NOTE: Memoizing the candidates makes the surface not re-render based on reactivity within data.\n const definitions = findCandidates(surfaces, { role, data });\n const candidates = limit ? definitions.slice(0, limit) : definitions;\n const nodes = candidates.map(({ component: Component, id }) => (\n <Component ref={forwardedRef} key={id} id={id} role={role} data={data} limit={limit} {...rest} />\n ));\n\n const suspense = placeholder ? <Suspense fallback={placeholder}>{nodes}</Suspense> : nodes;\n\n return fallback ? (\n <ErrorBoundary data={data} fallback={fallback}>\n {suspense}\n </ErrorBoundary>\n ) : (\n suspense\n );\n },\n ),\n);\n\nSurface.displayName = 'Surface';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { useEffect } from 'react';\n\nimport { Capabilities } from '../common';\nimport { type AnyIntentResolver } from '../plugin-intent';\nimport { usePluginManager } from '../react';\n\nexport const useIntentResolver = (module: string, resolver: AnyIntentResolver) => {\n const manager = usePluginManager();\n useEffect(() => {\n manager.context.contributeCapability({\n module,\n interface: Capabilities.IntentResolver,\n implementation: resolver,\n });\n\n return () => manager.context.removeCapability(Capabilities.IntentResolver, resolver);\n }, [module, resolver]);\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { effect } from '@preact/signals-core';\nimport React, { type PropsWithChildren, type ReactNode } from 'react';\n\nimport { invariant } from '@dxos/invariant';\nimport { create } from '@dxos/live-object';\n\nimport { Capabilities, Events } from './common';\nimport { PluginManager, type PluginManagerOptions, type Plugin } from './core';\nimport { topologicalSort } from './helpers';\nimport { ErrorBoundary, PluginManagerProvider, useCapabilities } from './react';\n\nconst ENABLED_KEY = 'dxos.org/app-framework/enabled';\n\nexport type CreateAppOptions = {\n pluginManager?: PluginManager;\n pluginLoader?: PluginManagerOptions['pluginLoader'];\n plugins?: Plugin[];\n core?: string[];\n defaults?: string[];\n placeholder?: ReactNode;\n fallback?: ErrorBoundary['props']['fallback'];\n cacheEnabled?: boolean;\n};\n\n/**\n * Expected usage is for this to be the entrypoint of the application.\n * Initializes plugins and renders the root components.\n *\n * @example\n * const plugins = [LayoutPlugin(), MyPlugin()];\n * const core = [LayoutPluginId];\n * const default = [MyPluginId];\n * const fallback = <div>Initializing Plugins...</div>;\n * const App = createApp({ plugins, core, default, fallback });\n * createRoot(document.getElementById('root')!).render(\n * <StrictMode>\n * <App />\n * </StrictMode>,\n * );\n *\n * @param params.pluginLoader A function which loads new plugins.\n * @param params.plugins All plugins available to the application.\n * @param params.core Core plugins which will always be enabled.\n * @param params.defaults Default plugins are enabled by default but can be disabled by the user.\n * @param params.placeholder Placeholder component to render during startup.\n * @param params.fallback Fallback component to render if an error occurs during startup.\n * @param params.cacheEnabled Whether to cache enabled plugins in localStorage.\n */\nexport const createApp = ({\n pluginManager,\n pluginLoader: _pluginLoader,\n plugins = [],\n core = plugins.map(({ meta }) => meta.id),\n defaults = [],\n placeholder = null,\n fallback = DefaultFallback,\n cacheEnabled = false,\n}: CreateAppOptions) => {\n // TODO(wittjosiah): Provide a custom plugin loader which supports loading via url.\n const pluginLoader =\n _pluginLoader ??\n ((id: string) => {\n const plugin = plugins.find((plugin) => plugin.meta.id === id);\n invariant(plugin, `Plugin not found: ${id}`);\n return plugin;\n });\n\n const state = create({ ready: false, error: null });\n const cached: string[] = JSON.parse(localStorage.getItem(ENABLED_KEY) ?? '[]');\n const enabled = cacheEnabled && cached.length > 0 ? cached : defaults;\n const manager = pluginManager ?? new PluginManager({ pluginLoader, plugins, core, enabled });\n\n manager.activation.on(({ event, state: _state, error }) => {\n if (event === Events.Startup.id) {\n state.ready = _state === 'activated';\n }\n\n if (error && !state.ready && !state.error) {\n state.error = error;\n }\n });\n\n effect(() => {\n cacheEnabled && localStorage.setItem(ENABLED_KEY, JSON.stringify(manager.enabled));\n });\n\n manager.context.contributeCapability({\n interface: Capabilities.PluginManager,\n implementation: manager,\n module: 'dxos.org/app-framework/plugin-manager',\n });\n\n setupDevtools(manager);\n\n // TODO(wittjosiah): Factor out such that this could be called per surface role when attempting to render.\n void manager.activate(Events.SetupSurfaces);\n void manager.activate(Events.Startup);\n\n return () => (\n <ErrorBoundary fallback={fallback}>\n <PluginManagerProvider value={manager}>\n <App placeholder={placeholder} state={state} />\n </PluginManagerProvider>\n </ErrorBoundary>\n );\n};\n\ntype AppProps = Required<Pick<CreateAppOptions, 'placeholder'>> & {\n state: { ready: boolean; error: unknown };\n};\n\nconst App = ({ placeholder, state }: AppProps) => {\n const reactContexts = useCapabilities(Capabilities.ReactContext);\n const reactRoots = useCapabilities(Capabilities.ReactRoot);\n\n if (state.error) {\n // This trigger the error boundary to provide UI feedback for the startup error.\n throw state.error;\n }\n\n // TODO(wittjosiah): Consider using Suspense instead?\n if (!state.ready) {\n return <>{placeholder}</>;\n }\n\n const ComposedContext = composeContexts(reactContexts);\n return (\n <ComposedContext>\n {reactRoots.map(({ id, root: Component }) => (\n <Component key={id} />\n ))}\n </ComposedContext>\n );\n};\n\n// Default fallback does not use tailwind or theme.\nconst DefaultFallback = ({ error }: { error: Error }) => {\n return (\n <div style={{ padding: '1rem' }}>\n {/* TODO(wittjosiah): Link to docs for replacing default. */}\n <h1 style={{ fontSize: '1.2rem', fontWeight: 700, margin: '0.5rem 0' }}>{error.message}</h1>\n <pre>{error.stack}</pre>\n </div>\n );\n};\n\nconst composeContexts = (contexts: Capabilities.ReactContext[]) => {\n if (contexts.length === 0) {\n return ({ children }: PropsWithChildren) => <>{children}</>;\n }\n\n return topologicalSort(contexts)\n .map(({ context }) => context)\n .reduce((Acc, Next) => ({ children }) => (\n <Acc>\n <Next>{children}</Next>\n </Acc>\n ));\n};\n\nconst setupDevtools = (manager: PluginManager) => {\n (globalThis as any).composer ??= {};\n (globalThis as any).composer.manager = manager;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\ntype DependencyNode = {\n id: string;\n dependsOn?: string[];\n};\n\n/**\n * Topologically sorts a list of nodes based on their dependencies.\n */\n// TODO(wittjosiah): Factor out?\nexport const topologicalSort = <T extends DependencyNode>(nodes: T[]): T[] => {\n const getDependencies = (nodeId: string, seen = new Set<string>(), path = new Set<string>()): string[] => {\n if (path.has(nodeId)) {\n throw new Error(`Circular dependency detected involving ${nodeId}`);\n }\n if (seen.has(nodeId)) {\n return [];\n }\n\n const node = nodes.find((n) => n.id === nodeId);\n if (!node) {\n throw new Error(`Node ${nodeId} not found but is listed as a dependency`);\n }\n\n const newPath = new Set([...path, nodeId]);\n const newSeen = new Set([...seen, nodeId]);\n\n const dependsOn = node.dependsOn ?? [];\n return [...dependsOn.flatMap((depId) => getDependencies(depId, newSeen, newPath)), nodeId];\n };\n\n // Get all unique dependencies.\n const allDependencies = nodes\n .map((node) => node.id)\n .flatMap((id) => getDependencies(id))\n .filter((id, index, self) => self.indexOf(id) === index);\n\n // Map back to original nodes\n return allDependencies\n .map((id) => nodes.find((node) => node.id === id))\n .filter((node): node is T => node !== undefined);\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["createContext", "useContext", "raise", "PluginManagerContext", "createContext", "undefined", "usePluginManager", "useContext", "raise", "Error", "PluginManagerProvider", "Provider", "computed", "useMemo", "useCapabilities", "interfaceDef", "filter", "manager", "usePluginManager", "signal", "useMemo", "computed", "context", "requestCapabilities", "value", "useCapability", "requestCapability", "useIntentDispatcher", "useCapability", "Capabilities", "IntentDispatcher", "useAppGraph", "AppGraph", "useLayout", "Layout", "React", "Component", "ErrorBoundary", "Component", "constructor", "props", "state", "error", "undefined", "getDerivedStateFromError", "componentDidUpdate", "prevProps", "data", "resetError", "render", "this", "fallback", "reset", "children", "setState", "React", "memo", "forwardRef", "Suspense", "useMemo", "useDefaultValue", "byPosition", "useSurfaces", "surfaces", "useCapabilities", "Capabilities", "ReactSurface", "useMemo", "flat", "findCandidates", "role", "data", "Object", "values", "filter", "definition", "Array", "isArray", "includes", "toSorted", "byPosition", "isSurfaceAvailable", "context", "requestCapabilities", "candidates", "length", "Surface", "memo", "forwardRef", "id", "_id", "_data", "limit", "fallback", "placeholder", "rest", "forwardedRef", "useDefaultValue", "definitions", "slice", "nodes", "map", "component", "Component", "React", "ref", "key", "suspense", "Suspense", "ErrorBoundary", "displayName", "useEffect", "useIntentResolver", "module", "resolver", "manager", "usePluginManager", "useEffect", "context", "contributeCapability", "interface", "Capabilities", "IntentResolver", "implementation", "removeCapability", "effect", "React", "invariant", "create", "topologicalSort", "nodes", "getDependencies", "nodeId", "seen", "Set", "path", "has", "Error", "node", "find", "n", "id", "newPath", "newSeen", "dependsOn", "flatMap", "depId", "allDependencies", "map", "filter", "index", "self", "indexOf", "undefined", "ENABLED_KEY", "createApp", "pluginManager", "pluginLoader", "_pluginLoader", "plugins", "core", "map", "meta", "id", "defaults", "placeholder", "fallback", "DefaultFallback", "cacheEnabled", "plugin", "find", "invariant", "state", "create", "ready", "error", "cached", "JSON", "parse", "localStorage", "getItem", "enabled", "length", "manager", "PluginManager", "activation", "on", "event", "_state", "Events", "Startup", "effect", "setItem", "stringify", "context", "contributeCapability", "interface", "Capabilities", "implementation", "module", "setupDevtools", "activate", "SetupSurfaces", "React", "ErrorBoundary", "PluginManagerProvider", "value", "App", "reactContexts", "useCapabilities", "ReactContext", "reactRoots", "ReactRoot", "ComposedContext", "composeContexts", "root", "Component", "key", "div", "style", "padding", "h1", "fontSize", "fontWeight", "margin", "message", "pre", "stack", "contexts", "children", "topologicalSort", "reduce", "Acc", "Next", "globalThis", "composer"]
|
|
7
|
+
}
|
|
@@ -1,42 +1,48 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
|
-
ActiveParts,
|
|
4
|
-
Capabilities,
|
|
5
3
|
ErrorBoundary,
|
|
4
|
+
PluginManagerProvider,
|
|
5
|
+
Surface,
|
|
6
|
+
createApp,
|
|
7
|
+
isSurfaceAvailable,
|
|
8
|
+
useAppGraph,
|
|
9
|
+
useCapabilities,
|
|
10
|
+
useCapability,
|
|
11
|
+
useIntentDispatcher,
|
|
12
|
+
useIntentResolver,
|
|
13
|
+
useLayout,
|
|
14
|
+
usePluginManager,
|
|
15
|
+
useSurfaces
|
|
16
|
+
} from "./chunk-HTLXL32I.mjs";
|
|
17
|
+
import {
|
|
18
|
+
SETTINGS_ACTION,
|
|
19
|
+
SETTINGS_ID,
|
|
20
|
+
SETTINGS_KEY,
|
|
21
|
+
SETTINGS_PLUGIN,
|
|
22
|
+
SettingsAction
|
|
23
|
+
} from "./chunk-CNJYZNSL.mjs";
|
|
24
|
+
import {
|
|
25
|
+
Capabilities,
|
|
6
26
|
Events,
|
|
7
27
|
FileInfoSchema,
|
|
8
28
|
INTENT_ACTION,
|
|
9
29
|
INTENT_PLUGIN,
|
|
10
30
|
IntentAction,
|
|
11
31
|
IntentPlugin,
|
|
12
|
-
IntentProvider,
|
|
13
32
|
LAYOUT_ACTION,
|
|
14
33
|
LAYOUT_PLUGIN,
|
|
15
34
|
Label,
|
|
16
|
-
Layout,
|
|
17
35
|
LayoutAction,
|
|
18
|
-
NAVIGATION_ACTION,
|
|
19
|
-
NAVIGATION_PLUGIN,
|
|
20
|
-
NavigationAction,
|
|
21
36
|
Plugin,
|
|
22
37
|
PluginManager,
|
|
23
|
-
PluginManagerProvider,
|
|
24
38
|
PluginModule,
|
|
25
39
|
PluginsContext,
|
|
26
40
|
Resource,
|
|
27
41
|
ResourceKey,
|
|
28
42
|
ResourceLanguage,
|
|
29
|
-
SLUG_COLLECTION_INDICATOR,
|
|
30
|
-
SLUG_ENTRY_SEPARATOR,
|
|
31
|
-
SLUG_KEY_VALUE_SEPARATOR,
|
|
32
|
-
SLUG_LIST_SEPARATOR,
|
|
33
|
-
SLUG_PATH_SEPARATOR,
|
|
34
|
-
Surface,
|
|
35
|
-
Toast,
|
|
36
43
|
allOf,
|
|
37
44
|
chain,
|
|
38
45
|
contributes,
|
|
39
|
-
createApp,
|
|
40
46
|
createDispatcher,
|
|
41
47
|
createIntent,
|
|
42
48
|
createResolver,
|
|
@@ -47,44 +53,27 @@ import {
|
|
|
47
53
|
defineModule,
|
|
48
54
|
definePlugin,
|
|
49
55
|
eventKey,
|
|
50
|
-
firstIdInPart,
|
|
51
56
|
getEvents,
|
|
52
|
-
indexInPart,
|
|
53
57
|
isAllOf,
|
|
54
|
-
isLayoutAdjustment,
|
|
55
|
-
isLayoutMode,
|
|
56
|
-
isLayoutParts,
|
|
57
58
|
isOneOf,
|
|
58
|
-
isSurfaceAvailable,
|
|
59
59
|
lazy,
|
|
60
|
-
oneOf
|
|
61
|
-
|
|
62
|
-
partLength,
|
|
63
|
-
useCapabilities,
|
|
64
|
-
useCapability,
|
|
65
|
-
useIntentDispatcher,
|
|
66
|
-
useIntentResolver,
|
|
67
|
-
usePluginManager
|
|
68
|
-
} from "./chunk-KPMTPXQI.mjs";
|
|
60
|
+
oneOf
|
|
61
|
+
} from "./chunk-44J2VZBB.mjs";
|
|
69
62
|
|
|
70
|
-
// packages/sdk/app-framework/src/plugin-settings/
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
}
|
|
80
|
-
output: S.Void
|
|
81
|
-
}) {
|
|
63
|
+
// packages/sdk/app-framework/src/plugin-settings/translations.ts
|
|
64
|
+
var translations_default = [
|
|
65
|
+
{
|
|
66
|
+
"en-US": {
|
|
67
|
+
[SETTINGS_PLUGIN]: {
|
|
68
|
+
"open settings label": "Open settings",
|
|
69
|
+
"app settings label": "Settings",
|
|
70
|
+
"custom plugins label": "Plugins"
|
|
71
|
+
}
|
|
72
|
+
}
|
|
82
73
|
}
|
|
83
|
-
|
|
84
|
-
})(SettingsAction || (SettingsAction = {}));
|
|
74
|
+
];
|
|
85
75
|
|
|
86
76
|
// packages/sdk/app-framework/src/plugin-settings/SettingsPlugin.ts
|
|
87
|
-
import { RootSettingsStore } from "@dxos/local-storage";
|
|
88
77
|
var SettingsPlugin = () => definePlugin({
|
|
89
78
|
id: SETTINGS_PLUGIN
|
|
90
79
|
}, [
|
|
@@ -97,18 +86,25 @@ var SettingsPlugin = () => definePlugin({
|
|
|
97
86
|
activatesAfter: [
|
|
98
87
|
Events.SettingsReady
|
|
99
88
|
],
|
|
100
|
-
activate: (
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
89
|
+
activate: lazy(() => import("./store-VWDAYUQY.mjs"))
|
|
90
|
+
}),
|
|
91
|
+
defineModule({
|
|
92
|
+
id: `${SETTINGS_PLUGIN}/module/translations`,
|
|
93
|
+
activatesOn: Events.SetupTranslations,
|
|
94
|
+
activate: () => contributes(Capabilities.Translations, translations_default)
|
|
95
|
+
}),
|
|
96
|
+
defineModule({
|
|
97
|
+
id: `${SETTINGS_PLUGIN}/module/intent-resolver`,
|
|
98
|
+
activatesOn: Events.SetupIntents,
|
|
99
|
+
activate: lazy(() => import("./intent-resolver-7VJWN67U.mjs"))
|
|
100
|
+
}),
|
|
101
|
+
defineModule({
|
|
102
|
+
id: `${SETTINGS_PLUGIN}/module/app-graph-builder`,
|
|
103
|
+
activatesOn: Events.SetupAppGraph,
|
|
104
|
+
activate: lazy(() => import("./app-graph-builder-2QEX57NX.mjs"))
|
|
108
105
|
})
|
|
109
106
|
]);
|
|
110
107
|
export {
|
|
111
|
-
ActiveParts,
|
|
112
108
|
Capabilities,
|
|
113
109
|
ErrorBoundary,
|
|
114
110
|
Events,
|
|
@@ -117,15 +113,10 @@ export {
|
|
|
117
113
|
INTENT_PLUGIN,
|
|
118
114
|
IntentAction,
|
|
119
115
|
IntentPlugin,
|
|
120
|
-
IntentProvider,
|
|
121
116
|
LAYOUT_ACTION,
|
|
122
117
|
LAYOUT_PLUGIN,
|
|
123
118
|
Label,
|
|
124
|
-
Layout,
|
|
125
119
|
LayoutAction,
|
|
126
|
-
NAVIGATION_ACTION,
|
|
127
|
-
NAVIGATION_PLUGIN,
|
|
128
|
-
NavigationAction,
|
|
129
120
|
Plugin,
|
|
130
121
|
PluginManager,
|
|
131
122
|
PluginManagerProvider,
|
|
@@ -135,16 +126,12 @@ export {
|
|
|
135
126
|
ResourceKey,
|
|
136
127
|
ResourceLanguage,
|
|
137
128
|
SETTINGS_ACTION,
|
|
129
|
+
SETTINGS_ID,
|
|
130
|
+
SETTINGS_KEY,
|
|
138
131
|
SETTINGS_PLUGIN,
|
|
139
|
-
SLUG_COLLECTION_INDICATOR,
|
|
140
|
-
SLUG_ENTRY_SEPARATOR,
|
|
141
|
-
SLUG_KEY_VALUE_SEPARATOR,
|
|
142
|
-
SLUG_LIST_SEPARATOR,
|
|
143
|
-
SLUG_PATH_SEPARATOR,
|
|
144
132
|
SettingsAction,
|
|
145
133
|
SettingsPlugin,
|
|
146
134
|
Surface,
|
|
147
|
-
Toast,
|
|
148
135
|
allOf,
|
|
149
136
|
chain,
|
|
150
137
|
contributes,
|
|
@@ -159,23 +146,19 @@ export {
|
|
|
159
146
|
defineModule,
|
|
160
147
|
definePlugin,
|
|
161
148
|
eventKey,
|
|
162
|
-
firstIdInPart,
|
|
163
149
|
getEvents,
|
|
164
|
-
indexInPart,
|
|
165
150
|
isAllOf,
|
|
166
|
-
isLayoutAdjustment,
|
|
167
|
-
isLayoutMode,
|
|
168
|
-
isLayoutParts,
|
|
169
151
|
isOneOf,
|
|
170
152
|
isSurfaceAvailable,
|
|
171
153
|
lazy,
|
|
172
154
|
oneOf,
|
|
173
|
-
|
|
174
|
-
partLength,
|
|
155
|
+
useAppGraph,
|
|
175
156
|
useCapabilities,
|
|
176
157
|
useCapability,
|
|
177
158
|
useIntentDispatcher,
|
|
178
159
|
useIntentResolver,
|
|
179
|
-
|
|
160
|
+
useLayout,
|
|
161
|
+
usePluginManager,
|
|
162
|
+
useSurfaces
|
|
180
163
|
};
|
|
181
164
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/plugin-settings/
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport {
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["
|
|
3
|
+
"sources": ["../../../src/plugin-settings/translations.ts", "../../../src/plugin-settings/SettingsPlugin.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { SETTINGS_PLUGIN } from './actions';\n\nexport default [\n {\n 'en-US': {\n [SETTINGS_PLUGIN]: {\n 'open settings label': 'Open settings',\n 'app settings label': 'Settings',\n 'custom plugins label': 'Plugins',\n },\n },\n },\n];\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { SETTINGS_PLUGIN } from './actions';\nimport translations from './translations';\nimport { Capabilities, Events } from '../common';\nimport { contributes, defineModule, definePlugin, lazy } from '../core';\n\n// TODO(wittjosiah): Add options to exclude some modules.\nexport const SettingsPlugin = () =>\n definePlugin({ id: SETTINGS_PLUGIN }, [\n defineModule({\n id: `${SETTINGS_PLUGIN}/module/store`,\n activatesOn: Events.Startup,\n activatesBefore: [Events.SetupSettings],\n activatesAfter: [Events.SettingsReady],\n activate: lazy(() => import('./store')),\n }),\n defineModule({\n id: `${SETTINGS_PLUGIN}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${SETTINGS_PLUGIN}/module/intent-resolver`,\n activatesOn: Events.SetupIntents,\n activate: lazy(() => import('./intent-resolver')),\n }),\n defineModule({\n id: `${SETTINGS_PLUGIN}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: lazy(() => import('./app-graph-builder')),\n }),\n ]);\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACA,eAAAA,GAAkB;QACjB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;MAC1B;IACF;EACF;;;;ACLK,IAAMC,iBAAiB,MAC5BC,aAAa;EAAEC,IAAIC;AAAgB,GAAG;EACpCC,aAAa;IACXF,IAAI,GAAGC,eAAAA;IACPE,aAAaC,OAAOC;IACpBC,iBAAiB;MAACF,OAAOG;;IACzBC,gBAAgB;MAACJ,OAAOK;;IACxBC,UAAUC,KAAK,MAAM,OAAO,sBAAA,CAAA;EAC9B,CAAA;EACAT,aAAa;IACXF,IAAI,GAAGC,eAAAA;IACPE,aAAaC,OAAOQ;IACpBF,UAAU,MAAMG,YAAYC,aAAaC,cAAcC,oBAAAA;EACzD,CAAA;EACAd,aAAa;IACXF,IAAI,GAAGC,eAAAA;IACPE,aAAaC,OAAOa;IACpBP,UAAUC,KAAK,MAAM,OAAO,gCAAA,CAAA;EAC9B,CAAA;EACAT,aAAa;IACXF,IAAI,GAAGC,eAAAA;IACPE,aAAaC,OAAOc;IACpBR,UAAUC,KAAK,MAAM,OAAO,kCAAA,CAAA;EAC9B,CAAA;CACD;",
|
|
6
|
+
"names": ["SETTINGS_PLUGIN", "SettingsPlugin", "definePlugin", "id", "SETTINGS_PLUGIN", "defineModule", "activatesOn", "Events", "Startup", "activatesBefore", "SetupSettings", "activatesAfter", "SettingsReady", "activate", "lazy", "SetupTranslations", "contributes", "Capabilities", "Translations", "translations", "SetupIntents", "SetupAppGraph"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
createDispatcher,
|
|
4
|
+
createResolver,
|
|
5
|
+
intent_dispatcher_default
|
|
6
|
+
} from "./chunk-44J2VZBB.mjs";
|
|
7
|
+
export {
|
|
8
|
+
createDispatcher,
|
|
9
|
+
createResolver,
|
|
10
|
+
intent_dispatcher_default as default
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=intent-dispatcher-LDQGDZ62.mjs.map
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
SETTINGS_ID,
|
|
4
|
+
SETTINGS_KEY,
|
|
5
|
+
SettingsAction
|
|
6
|
+
} from "./chunk-CNJYZNSL.mjs";
|
|
7
|
+
import {
|
|
8
|
+
Capabilities,
|
|
9
|
+
LayoutAction,
|
|
10
|
+
chain,
|
|
11
|
+
contributes,
|
|
12
|
+
createIntent,
|
|
13
|
+
createResolver
|
|
14
|
+
} from "./chunk-44J2VZBB.mjs";
|
|
15
|
+
|
|
16
|
+
// packages/sdk/app-framework/src/plugin-settings/intent-resolver.ts
|
|
17
|
+
import { pipe } from "effect";
|
|
18
|
+
var intent_resolver_default = () => contributes(Capabilities.IntentResolver, createResolver({
|
|
19
|
+
intent: SettingsAction.Open,
|
|
20
|
+
resolve: ({ plugin }) => {
|
|
21
|
+
return {
|
|
22
|
+
intents: [
|
|
23
|
+
pipe(createIntent(LayoutAction.SwitchWorkspace, {
|
|
24
|
+
part: "workspace",
|
|
25
|
+
subject: SETTINGS_ID
|
|
26
|
+
}), chain(LayoutAction.Open, {
|
|
27
|
+
part: "main",
|
|
28
|
+
subject: [
|
|
29
|
+
`${SETTINGS_KEY}:${plugin.replaceAll("/", ":")}`
|
|
30
|
+
]
|
|
31
|
+
}))
|
|
32
|
+
]
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
}));
|
|
36
|
+
export {
|
|
37
|
+
intent_resolver_default as default
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=intent-resolver-7VJWN67U.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/plugin-settings/intent-resolver.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { pipe } from 'effect';\n\nimport { SETTINGS_ID, SETTINGS_KEY, SettingsAction } from './actions';\nimport { Capabilities, LayoutAction } from '../common';\nimport { contributes } from '../core';\nimport { createResolver, createIntent, chain } from '../plugin-intent';\n\nexport default () =>\n contributes(\n Capabilities.IntentResolver,\n createResolver({\n intent: SettingsAction.Open,\n resolve: ({ plugin }) => {\n return {\n intents: [\n pipe(\n createIntent(LayoutAction.SwitchWorkspace, { part: 'workspace', subject: SETTINGS_ID }),\n chain(LayoutAction.Open, { part: 'main', subject: [`${SETTINGS_KEY}:${plugin.replaceAll('/', ':')}`] }),\n ),\n ],\n };\n },\n }),\n );\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;AAIA,SAASA,YAAY;AAOrB,IAAA,0BAAe,MACbC,YACEC,aAAaC,gBACbC,eAAe;EACbC,QAAQC,eAAeC;EACvBC,SAAS,CAAC,EAAEC,OAAM,MAAE;AAClB,WAAO;MACLC,SAAS;QACPC,KACEC,aAAaC,aAAaC,iBAAiB;UAAEC,MAAM;UAAaC,SAASC;QAAY,CAAA,GACrFC,MAAML,aAAaN,MAAM;UAAEQ,MAAM;UAAQC,SAAS;YAAC,GAAGG,YAAAA,IAAgBV,OAAOW,WAAW,KAAK,GAAA,CAAA;;QAAQ,CAAA,CAAA;;IAG3G;EACF;AACF,CAAA,CAAA;",
|
|
6
|
+
"names": ["pipe", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "SettingsAction", "Open", "resolve", "plugin", "intents", "pipe", "createIntent", "LayoutAction", "SwitchWorkspace", "part", "subject", "SETTINGS_ID", "chain", "SETTINGS_KEY", "replaceAll"]
|
|
7
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/sdk/app-framework/src/core/capabilities.ts":{"bytes":18598,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/core/events.ts":{"bytes":5043,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/core/manager.ts":{"bytes":52473,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/async","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/core/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/sdk/app-framework/src/core/events.ts","kind":"import-statement","original":"./events"}],"format":"esm"},"packages/sdk/app-framework/src/core/plugin.ts":{"bytes":7160,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/core/index.ts":{"bytes":770,"imports":[{"path":"packages/sdk/app-framework/src/core/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/sdk/app-framework/src/core/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/sdk/app-framework/src/core/manager.ts","kind":"import-statement","original":"./manager"},{"path":"packages/sdk/app-framework/src/core/plugin.ts","kind":"import-statement","original":"./plugin"}],"format":"esm"},"packages/sdk/app-framework/src/common/capabilities.ts":{"bytes":8987,"imports":[{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/common/events.ts":{"bytes":5581,"imports":[{"path":"packages/sdk/app-framework/src/common/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/common/file.ts":{"bytes":2491,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/common/graph.ts":{"bytes":1434,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/intent.ts":{"bytes":9998,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/actions.ts":{"bytes":2292,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-intent/intent.ts","kind":"import-statement","original":"./intent"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/errors.ts":{"bytes":3766,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/intent-dispatcher.ts":{"bytes":24579,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-intent/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/plugin-intent/errors.ts","kind":"import-statement","original":"./errors"},{"path":"packages/sdk/app-framework/src/plugin-intent/intent.ts","kind":"import-statement","original":"./intent"}],"format":"esm"},"packages/sdk/app-framework/src/react/ErrorBoundary.tsx":{"bytes":4327,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/react/PluginManagerProvider.ts":{"bytes":2070,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/react/useCapabilities.ts":{"bytes":3770,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/react/PluginManagerProvider.ts","kind":"import-statement","original":"./PluginManagerProvider"}],"format":"esm"},"packages/sdk/app-framework/src/react/Surface.tsx":{"bytes":10128,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/react/ErrorBoundary.tsx","kind":"import-statement","original":"./ErrorBoundary"},{"path":"packages/sdk/app-framework/src/react/useCapabilities.ts","kind":"import-statement","original":"./useCapabilities"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"}],"format":"esm"},"packages/sdk/app-framework/src/react/index.ts":{"bytes":836,"imports":[{"path":"packages/sdk/app-framework/src/react/ErrorBoundary.tsx","kind":"import-statement","original":"./ErrorBoundary"},{"path":"packages/sdk/app-framework/src/react/PluginManagerProvider.ts","kind":"import-statement","original":"./PluginManagerProvider"},{"path":"packages/sdk/app-framework/src/react/Surface.tsx","kind":"import-statement","original":"./Surface"},{"path":"packages/sdk/app-framework/src/react/useCapabilities.ts","kind":"import-statement","original":"./useCapabilities"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/IntentContext.tsx":{"bytes":4333,"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/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/react/index.ts","kind":"import-statement","original":"../react"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/IntentPlugin.tsx":{"bytes":8427,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-intent/IntentContext.tsx","kind":"import-statement","original":"./IntentContext"},{"path":"packages/sdk/app-framework/src/plugin-intent/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/plugin-intent/intent-dispatcher.ts","kind":"import-statement","original":"./intent-dispatcher"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/index.ts":{"bytes":911,"imports":[{"path":"packages/sdk/app-framework/src/plugin-intent/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/plugin-intent/intent.ts","kind":"import-statement","original":"./intent"},{"path":"packages/sdk/app-framework/src/plugin-intent/intent-dispatcher.ts","kind":"import-statement","original":"./intent-dispatcher"},{"path":"packages/sdk/app-framework/src/plugin-intent/IntentContext.tsx","kind":"import-statement","original":"./IntentContext"},{"path":"packages/sdk/app-framework/src/plugin-intent/IntentPlugin.tsx","kind":"import-statement","original":"./IntentPlugin"}],"format":"esm"},"packages/sdk/app-framework/src/common/layout.ts":{"bytes":14897,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-intent/index.ts","kind":"import-statement","original":"../plugin-intent"}],"format":"esm"},"packages/sdk/app-framework/src/common/navigation.ts":{"bytes":20526,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/common/surface.ts":{"bytes":4014,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/common/translations.ts":{"bytes":1867,"imports":[{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/common/index.ts":{"bytes":1131,"imports":[{"path":"packages/sdk/app-framework/src/common/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/sdk/app-framework/src/common/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/sdk/app-framework/src/common/file.ts","kind":"import-statement","original":"./file"},{"path":"packages/sdk/app-framework/src/common/graph.ts","kind":"import-statement","original":"./graph"},{"path":"packages/sdk/app-framework/src/common/layout.ts","kind":"import-statement","original":"./layout"},{"path":"packages/sdk/app-framework/src/common/navigation.ts","kind":"import-statement","original":"./navigation"},{"path":"packages/sdk/app-framework/src/common/surface.ts","kind":"import-statement","original":"./surface"},{"path":"packages/sdk/app-framework/src/common/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/sdk/app-framework/src/helpers.ts":{"bytes":5078,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/App.tsx":{"bytes":17781,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"./common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"./core"},{"path":"packages/sdk/app-framework/src/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/app-framework/src/react/index.ts","kind":"import-statement","original":"./react"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/actions.ts":{"bytes":2059,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/SettingsPlugin.ts":{"bytes":3899,"imports":[{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-settings/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/index.ts":{"bytes":619,"imports":[{"path":"packages/sdk/app-framework/src/plugin-settings/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/plugin-settings/SettingsPlugin.ts","kind":"import-statement","original":"./SettingsPlugin"}],"format":"esm"},"packages/sdk/app-framework/src/index.ts":{"bytes":944,"imports":[{"path":"packages/sdk/app-framework/src/App.tsx","kind":"import-statement","original":"./App"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"./common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"./core"},{"path":"packages/sdk/app-framework/src/plugin-intent/index.ts","kind":"import-statement","original":"./plugin-intent"},{"path":"packages/sdk/app-framework/src/plugin-settings/index.ts","kind":"import-statement","original":"./plugin-settings"},{"path":"packages/sdk/app-framework/src/react/index.ts","kind":"import-statement","original":"./react"}],"format":"esm"},"packages/sdk/app-framework/src/testing/withPluginManager.tsx":{"bytes":7593,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/App.tsx","kind":"import-statement","original":"../App"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/testing/index.ts":{"bytes":531,"imports":[{"path":"packages/sdk/app-framework/src/testing/withPluginManager.tsx","kind":"import-statement","original":"./withPluginManager"}],"format":"esm"}},"outputs":{"packages/sdk/app-framework/dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2853},"packages/sdk/app-framework/dist/lib/node-esm/index.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-KPMTPXQI.mjs","kind":"import-statement"},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/local-storage","kind":"import-statement","external":true}],"exports":["ActiveParts","Capabilities","ErrorBoundary","Events","FileInfoSchema","INTENT_ACTION","INTENT_PLUGIN","IntentAction","IntentPlugin","IntentProvider","LAYOUT_ACTION","LAYOUT_PLUGIN","Label","Layout","LayoutAction","NAVIGATION_ACTION","NAVIGATION_PLUGIN","NavigationAction","Plugin","PluginManager","PluginManagerProvider","PluginModule","PluginsContext","Resource","ResourceKey","ResourceLanguage","SETTINGS_ACTION","SETTINGS_PLUGIN","SLUG_COLLECTION_INDICATOR","SLUG_ENTRY_SEPARATOR","SLUG_KEY_VALUE_SEPARATOR","SLUG_LIST_SEPARATOR","SLUG_PATH_SEPARATOR","SettingsAction","SettingsPlugin","Surface","Toast","allOf","chain","contributes","createApp","createDispatcher","createIntent","createResolver","createSurface","defaultFileTypes","defineCapability","defineEvent","defineModule","definePlugin","eventKey","firstIdInPart","getEvents","indexInPart","isAllOf","isLayoutAdjustment","isLayoutMode","isLayoutParts","isOneOf","isSurfaceAvailable","lazy","oneOf","openIds","partLength","useCapabilities","useCapability","useIntentDispatcher","useIntentResolver","usePluginManager"],"entryPoint":"packages/sdk/app-framework/src/index.ts","inputs":{"packages/sdk/app-framework/src/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugin-settings/actions.ts":{"bytesInOutput":426},"packages/sdk/app-framework/src/plugin-settings/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugin-settings/SettingsPlugin.ts":{"bytesInOutput":671}},"bytes":3625},"packages/sdk/app-framework/dist/lib/node-esm/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3752},"packages/sdk/app-framework/dist/lib/node-esm/testing/index.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-KPMTPXQI.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"exports":["withPluginManager"],"entryPoint":"packages/sdk/app-framework/src/testing/index.ts","inputs":{"packages/sdk/app-framework/src/testing/withPluginManager.tsx":{"bytesInOutput":1511},"packages/sdk/app-framework/src/testing/index.ts":{"bytesInOutput":0}},"bytes":1878},"packages/sdk/app-framework/dist/lib/node-esm/chunk-KPMTPXQI.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":120887},"packages/sdk/app-framework/dist/lib/node-esm/chunk-KPMTPXQI.mjs":{"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/util","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":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/util","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":"@dxos/util","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"zod","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["ActiveParts","Capabilities","ErrorBoundary","Events","FileInfoSchema","INTENT_ACTION","INTENT_PLUGIN","IntentAction","IntentPlugin","IntentProvider","LAYOUT_ACTION","LAYOUT_PLUGIN","Label","Layout","LayoutAction","NAVIGATION_ACTION","NAVIGATION_PLUGIN","NavigationAction","Plugin","PluginManager","PluginManagerProvider","PluginModule","PluginsContext","Resource","ResourceKey","ResourceLanguage","SLUG_COLLECTION_INDICATOR","SLUG_ENTRY_SEPARATOR","SLUG_KEY_VALUE_SEPARATOR","SLUG_LIST_SEPARATOR","SLUG_PATH_SEPARATOR","Surface","Toast","allOf","chain","contributes","createApp","createDispatcher","createIntent","createResolver","createSurface","defaultFileTypes","defineCapability","defineEvent","defineModule","definePlugin","eventKey","firstIdInPart","getEvents","indexInPart","isAllOf","isLayoutAdjustment","isLayoutMode","isLayoutParts","isOneOf","isSurfaceAvailable","lazy","oneOf","openIds","partLength","useCapabilities","useCapability","useIntentDispatcher","useIntentResolver","usePluginManager"],"inputs":{"packages/sdk/app-framework/src/core/capabilities.ts":{"bytesInOutput":3883},"packages/sdk/app-framework/src/core/events.ts":{"bytesInOutput":512},"packages/sdk/app-framework/src/core/manager.ts":{"bytesInOutput":13877},"packages/sdk/app-framework/src/core/plugin.ts":{"bytesInOutput":516},"packages/sdk/app-framework/src/core/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/common/capabilities.ts":{"bytesInOutput":1938},"packages/sdk/app-framework/src/common/events.ts":{"bytesInOutput":1015},"packages/sdk/app-framework/src/common/file.ts":{"bytesInOutput":361},"packages/sdk/app-framework/src/plugin-intent/intent.ts":{"bytesInOutput":816},"packages/sdk/app-framework/src/plugin-intent/actions.ts":{"bytesInOutput":418},"packages/sdk/app-framework/src/plugin-intent/intent-dispatcher.ts":{"bytesInOutput":3977},"packages/sdk/app-framework/src/plugin-intent/errors.ts":{"bytesInOutput":632},"packages/sdk/app-framework/src/react/ErrorBoundary.tsx":{"bytesInOutput":705},"packages/sdk/app-framework/src/react/PluginManagerProvider.ts":{"bytesInOutput":312},"packages/sdk/app-framework/src/react/useCapabilities.ts":{"bytesInOutput":568},"packages/sdk/app-framework/src/react/Surface.tsx":{"bytesInOutput":1831},"packages/sdk/app-framework/src/common/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/common/layout.ts":{"bytesInOutput":3513},"packages/sdk/app-framework/src/plugin-intent/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugin-intent/IntentContext.tsx":{"bytesInOutput":861},"packages/sdk/app-framework/src/react/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugin-intent/IntentPlugin.tsx":{"bytesInOutput":1767},"packages/sdk/app-framework/src/common/navigation.ts":{"bytesInOutput":3827},"packages/sdk/app-framework/src/common/surface.ts":{"bytesInOutput":48},"packages/sdk/app-framework/src/common/translations.ts":{"bytesInOutput":180},"packages/sdk/app-framework/src/App.tsx":{"bytesInOutput":3561},"packages/sdk/app-framework/src/helpers.ts":{"bytesInOutput":1049}},"bytes":48900}}}
|
|
1
|
+
{"inputs":{"packages/sdk/app-framework/src/core/capabilities.ts":{"bytes":19658,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/core/events.ts":{"bytes":5043,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/core/manager.ts":{"bytes":54827,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/async","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/core/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/sdk/app-framework/src/core/events.ts","kind":"import-statement","original":"./events"}],"format":"esm"},"packages/sdk/app-framework/src/core/plugin.ts":{"bytes":7200,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/core/index.ts":{"bytes":770,"imports":[{"path":"packages/sdk/app-framework/src/core/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/sdk/app-framework/src/core/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/sdk/app-framework/src/core/manager.ts","kind":"import-statement","original":"./manager"},{"path":"packages/sdk/app-framework/src/core/plugin.ts","kind":"import-statement","original":"./plugin"}],"format":"esm"},"packages/sdk/app-framework/src/common/capabilities.ts":{"bytes":8433,"imports":[{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/common/events.ts":{"bytes":6123,"imports":[{"path":"packages/sdk/app-framework/src/common/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/common/file.ts":{"bytes":2530,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/common/graph.ts":{"bytes":1434,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/intent.ts":{"bytes":10001,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/actions.ts":{"bytes":2327,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-intent/intent.ts","kind":"import-statement","original":"./intent"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/errors.ts":{"bytes":3766,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/intent-dispatcher.ts":{"bytes":29137,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-intent/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/plugin-intent/errors.ts","kind":"import-statement","original":"./errors"},{"path":"packages/sdk/app-framework/src/plugin-intent/intent.ts","kind":"import-statement","original":"./intent"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/IntentPlugin.tsx":{"bytes":2997,"imports":[{"path":"packages/sdk/app-framework/src/plugin-intent/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"},{"path":"packages/sdk/app-framework/src/plugin-intent/intent-dispatcher.ts","kind":"dynamic-import","original":"./intent-dispatcher"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-intent/index.ts":{"bytes":810,"imports":[{"path":"packages/sdk/app-framework/src/plugin-intent/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/plugin-intent/intent.ts","kind":"import-statement","original":"./intent"},{"path":"packages/sdk/app-framework/src/plugin-intent/intent-dispatcher.ts","kind":"import-statement","original":"./intent-dispatcher"},{"path":"packages/sdk/app-framework/src/plugin-intent/IntentPlugin.tsx","kind":"import-statement","original":"./IntentPlugin"}],"format":"esm"},"packages/sdk/app-framework/src/common/layout.ts":{"bytes":35554,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-intent/index.ts","kind":"import-statement","original":"../plugin-intent"}],"format":"esm"},"packages/sdk/app-framework/src/common/surface.ts":{"bytes":4002,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/common/translations.ts":{"bytes":2192,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/common/index.ts":{"bytes":1037,"imports":[{"path":"packages/sdk/app-framework/src/common/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/sdk/app-framework/src/common/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/sdk/app-framework/src/common/file.ts","kind":"import-statement","original":"./file"},{"path":"packages/sdk/app-framework/src/common/graph.ts","kind":"import-statement","original":"./graph"},{"path":"packages/sdk/app-framework/src/common/layout.ts","kind":"import-statement","original":"./layout"},{"path":"packages/sdk/app-framework/src/common/surface.ts","kind":"import-statement","original":"./surface"},{"path":"packages/sdk/app-framework/src/common/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/sdk/app-framework/src/helpers.ts":{"bytes":5078,"imports":[],"format":"esm"},"packages/sdk/app-framework/src/react/PluginManagerProvider.ts":{"bytes":2070,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/react/useCapabilities.ts":{"bytes":3770,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/react/PluginManagerProvider.ts","kind":"import-statement","original":"./PluginManagerProvider"}],"format":"esm"},"packages/sdk/app-framework/src/react/common.ts":{"bytes":1609,"imports":[{"path":"packages/sdk/app-framework/src/react/useCapabilities.ts","kind":"import-statement","original":"./useCapabilities"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"}],"format":"esm"},"packages/sdk/app-framework/src/react/ErrorBoundary.tsx":{"bytes":4327,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/react/Surface.tsx":{"bytes":10288,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/react/ErrorBoundary.tsx","kind":"import-statement","original":"./ErrorBoundary"},{"path":"packages/sdk/app-framework/src/react/useCapabilities.ts","kind":"import-statement","original":"./useCapabilities"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"}],"format":"esm"},"packages/sdk/app-framework/src/react/useIntentResolver.ts":{"bytes":2530,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/react/index.ts","kind":"import-statement","original":"../react"}],"format":"esm"},"packages/sdk/app-framework/src/react/index.ts":{"bytes":1035,"imports":[{"path":"packages/sdk/app-framework/src/react/common.ts","kind":"import-statement","original":"./common"},{"path":"packages/sdk/app-framework/src/react/ErrorBoundary.tsx","kind":"import-statement","original":"./ErrorBoundary"},{"path":"packages/sdk/app-framework/src/react/PluginManagerProvider.ts","kind":"import-statement","original":"./PluginManagerProvider"},{"path":"packages/sdk/app-framework/src/react/Surface.tsx","kind":"import-statement","original":"./Surface"},{"path":"packages/sdk/app-framework/src/react/useCapabilities.ts","kind":"import-statement","original":"./useCapabilities"},{"path":"packages/sdk/app-framework/src/react/useIntentResolver.ts","kind":"import-statement","original":"./useIntentResolver"}],"format":"esm"},"packages/sdk/app-framework/src/App.tsx":{"bytes":17999,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"./common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"./core"},{"path":"packages/sdk/app-framework/src/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/app-framework/src/react/index.ts","kind":"import-statement","original":"./react"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/actions.ts":{"bytes":3121,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/translations.ts":{"bytes":1354,"imports":[{"path":"packages/sdk/app-framework/src/plugin-settings/actions.ts","kind":"import-statement","original":"./actions"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/store.ts":{"bytes":2467,"imports":[{"path":"@dxos/local-storage","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/intent-resolver.ts":{"bytes":3523,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-settings/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"},{"path":"packages/sdk/app-framework/src/plugin-intent/index.ts","kind":"import-statement","original":"../plugin-intent"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/app-graph-builder.ts":{"bytes":16303,"imports":[{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/plugin-settings/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"},{"path":"packages/sdk/app-framework/src/plugin-intent/index.ts","kind":"import-statement","original":"../plugin-intent"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/SettingsPlugin.ts":{"bytes":4859,"imports":[{"path":"packages/sdk/app-framework/src/plugin-settings/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/plugin-settings/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"},{"path":"packages/sdk/app-framework/src/plugin-settings/store.ts","kind":"dynamic-import","original":"./store"},{"path":"packages/sdk/app-framework/src/plugin-settings/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/sdk/app-framework/src/plugin-settings/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"}],"format":"esm"},"packages/sdk/app-framework/src/plugin-settings/index.ts":{"bytes":619,"imports":[{"path":"packages/sdk/app-framework/src/plugin-settings/actions.ts","kind":"import-statement","original":"./actions"},{"path":"packages/sdk/app-framework/src/plugin-settings/SettingsPlugin.ts","kind":"import-statement","original":"./SettingsPlugin"}],"format":"esm"},"packages/sdk/app-framework/src/index.ts":{"bytes":944,"imports":[{"path":"packages/sdk/app-framework/src/App.tsx","kind":"import-statement","original":"./App"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"./common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"./core"},{"path":"packages/sdk/app-framework/src/plugin-intent/index.ts","kind":"import-statement","original":"./plugin-intent"},{"path":"packages/sdk/app-framework/src/plugin-settings/index.ts","kind":"import-statement","original":"./plugin-settings"},{"path":"packages/sdk/app-framework/src/react/index.ts","kind":"import-statement","original":"./react"}],"format":"esm"},"packages/sdk/app-framework/src/testing/withPluginManager.tsx":{"bytes":8218,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/src/App.tsx","kind":"import-statement","original":"../App"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"../common"},{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"../core"}],"format":"esm"},"packages/sdk/app-framework/src/testing/index.ts":{"bytes":531,"imports":[{"path":"packages/sdk/app-framework/src/testing/withPluginManager.tsx","kind":"import-statement","original":"./withPluginManager"}],"format":"esm"},"packages/sdk/app-framework/src/worker.ts":{"bytes":1287,"imports":[{"path":"packages/sdk/app-framework/src/core/index.ts","kind":"import-statement","original":"./core"},{"path":"packages/sdk/app-framework/src/common/index.ts","kind":"import-statement","original":"./common"},{"path":"packages/sdk/app-framework/src/plugin-intent/index.ts","kind":"import-statement","original":"./plugin-intent"}],"format":"esm"}},"outputs":{"packages/sdk/app-framework/dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2781},"packages/sdk/app-framework/dist/lib/node-esm/index.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-HTLXL32I.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-CNJYZNSL.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/node-esm/store-VWDAYUQY.mjs","kind":"dynamic-import"},{"path":"packages/sdk/app-framework/dist/lib/node-esm/intent-resolver-7VJWN67U.mjs","kind":"dynamic-import"},{"path":"packages/sdk/app-framework/dist/lib/node-esm/app-graph-builder-2QEX57NX.mjs","kind":"dynamic-import"}],"exports":["Capabilities","ErrorBoundary","Events","FileInfoSchema","INTENT_ACTION","INTENT_PLUGIN","IntentAction","IntentPlugin","LAYOUT_ACTION","LAYOUT_PLUGIN","Label","LayoutAction","Plugin","PluginManager","PluginManagerProvider","PluginModule","PluginsContext","Resource","ResourceKey","ResourceLanguage","SETTINGS_ACTION","SETTINGS_ID","SETTINGS_KEY","SETTINGS_PLUGIN","SettingsAction","SettingsPlugin","Surface","allOf","chain","contributes","createApp","createDispatcher","createIntent","createResolver","createSurface","defaultFileTypes","defineCapability","defineEvent","defineModule","definePlugin","eventKey","getEvents","isAllOf","isOneOf","isSurfaceAvailable","lazy","oneOf","useAppGraph","useCapabilities","useCapability","useIntentDispatcher","useIntentResolver","useLayout","usePluginManager","useSurfaces"],"entryPoint":"packages/sdk/app-framework/src/index.ts","inputs":{"packages/sdk/app-framework/src/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugin-settings/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugin-settings/translations.ts":{"bytesInOutput":228},"packages/sdk/app-framework/src/plugin-settings/SettingsPlugin.ts":{"bytesInOutput":905}},"bytes":3242},"packages/sdk/app-framework/dist/lib/node-esm/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4088},"packages/sdk/app-framework/dist/lib/node-esm/testing/index.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-HTLXL32I.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"exports":["setupPluginManager","withPluginManager"],"entryPoint":"packages/sdk/app-framework/src/testing/index.ts","inputs":{"packages/sdk/app-framework/src/testing/withPluginManager.tsx":{"bytesInOutput":1636},"packages/sdk/app-framework/src/testing/index.ts":{"bytesInOutput":0}},"bytes":2065},"packages/sdk/app-framework/dist/lib/node-esm/chunk-HTLXL32I.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":23454},"packages/sdk/app-framework/dist/lib/node-esm/chunk-HTLXL32I.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true}],"exports":["ErrorBoundary","PluginManagerProvider","Surface","createApp","isSurfaceAvailable","useAppGraph","useCapabilities","useCapability","useIntentDispatcher","useIntentResolver","useLayout","usePluginManager","useSurfaces"],"inputs":{"packages/sdk/app-framework/src/react/PluginManagerProvider.ts":{"bytesInOutput":312},"packages/sdk/app-framework/src/react/useCapabilities.ts":{"bytesInOutput":568},"packages/sdk/app-framework/src/react/common.ts":{"bytesInOutput":198},"packages/sdk/app-framework/src/react/ErrorBoundary.tsx":{"bytesInOutput":705},"packages/sdk/app-framework/src/react/Surface.tsx":{"bytesInOutput":1746},"packages/sdk/app-framework/src/react/useIntentResolver.ts":{"bytesInOutput":414},"packages/sdk/app-framework/src/react/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/App.tsx":{"bytesInOutput":3505},"packages/sdk/app-framework/src/helpers.ts":{"bytesInOutput":1049}},"bytes":9441},"packages/sdk/app-framework/dist/lib/node-esm/worker.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/app-framework/dist/lib/node-esm/worker.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs","kind":"import-statement"}],"exports":["Capabilities","Events","FileInfoSchema","INTENT_ACTION","INTENT_PLUGIN","IntentAction","IntentPlugin","LAYOUT_ACTION","LAYOUT_PLUGIN","Label","LayoutAction","Plugin","PluginManager","PluginModule","PluginsContext","Resource","ResourceKey","ResourceLanguage","allOf","chain","contributes","createDispatcher","createIntent","createResolver","createSurface","defaultFileTypes","defineCapability","defineEvent","defineModule","definePlugin","eventKey","getEvents","isAllOf","isOneOf","lazy","oneOf"],"entryPoint":"packages/sdk/app-framework/src/worker.ts","inputs":{"packages/sdk/app-framework/src/worker.ts":{"bytesInOutput":0}},"bytes":1242},"packages/sdk/app-framework/dist/lib/node-esm/intent-dispatcher-LDQGDZ62.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/app-framework/dist/lib/node-esm/intent-dispatcher-LDQGDZ62.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs","kind":"import-statement"}],"exports":["createDispatcher","createResolver","default"],"entryPoint":"packages/sdk/app-framework/src/plugin-intent/intent-dispatcher.ts","inputs":{},"bytes":343},"packages/sdk/app-framework/dist/lib/node-esm/store-VWDAYUQY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1230},"packages/sdk/app-framework/dist/lib/node-esm/store-VWDAYUQY.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs","kind":"import-statement"},{"path":"@dxos/local-storage","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/sdk/app-framework/src/plugin-settings/store.ts","inputs":{"packages/sdk/app-framework/src/plugin-settings/store.ts":{"bytesInOutput":366}},"bytes":671},"packages/sdk/app-framework/dist/lib/node-esm/intent-resolver-7VJWN67U.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1602},"packages/sdk/app-framework/dist/lib/node-esm/intent-resolver-7VJWN67U.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-CNJYZNSL.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/sdk/app-framework/src/plugin-settings/intent-resolver.ts","inputs":{"packages/sdk/app-framework/src/plugin-settings/intent-resolver.ts":{"bytesInOutput":526}},"bytes":1008},"packages/sdk/app-framework/dist/lib/node-esm/app-graph-builder-2QEX57NX.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7437},"packages/sdk/app-framework/dist/lib/node-esm/app-graph-builder-2QEX57NX.mjs":{"imports":[{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-CNJYZNSL.mjs","kind":"import-statement"},{"path":"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs","kind":"import-statement"},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/sdk/app-framework/src/plugin-settings/app-graph-builder.ts","inputs":{"packages/sdk/app-framework/src/plugin-settings/app-graph-builder.ts":{"bytesInOutput":3622}},"bytes":4086},"packages/sdk/app-framework/dist/lib/node-esm/chunk-CNJYZNSL.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1523},"packages/sdk/app-framework/dist/lib/node-esm/chunk-CNJYZNSL.mjs":{"imports":[{"path":"@effect/schema","kind":"import-statement","external":true}],"exports":["SETTINGS_ACTION","SETTINGS_ID","SETTINGS_KEY","SETTINGS_PLUGIN","SettingsAction"],"inputs":{"packages/sdk/app-framework/src/plugin-settings/actions.ts":{"bytesInOutput":703}},"bytes":1000},"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":97351},"packages/sdk/app-framework/dist/lib/node-esm/chunk-44J2VZBB.mjs":{"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"packages/sdk/app-framework/dist/lib/node-esm/intent-dispatcher-LDQGDZ62.mjs","kind":"dynamic-import"},{"path":"@effect/schema","kind":"import-statement","external":true}],"exports":["Capabilities","Events","FileInfoSchema","INTENT_ACTION","INTENT_PLUGIN","IntentAction","IntentPlugin","LAYOUT_ACTION","LAYOUT_PLUGIN","Label","LayoutAction","Plugin","PluginManager","PluginModule","PluginsContext","Resource","ResourceKey","ResourceLanguage","allOf","chain","contributes","createDispatcher","createIntent","createResolver","createSurface","defaultFileTypes","defineCapability","defineEvent","defineModule","definePlugin","eventKey","getEvents","intent_dispatcher_default","isAllOf","isOneOf","lazy","oneOf"],"inputs":{"packages/sdk/app-framework/src/plugin-intent/intent-dispatcher.ts":{"bytesInOutput":4995},"packages/sdk/app-framework/src/plugin-intent/actions.ts":{"bytesInOutput":420},"packages/sdk/app-framework/src/plugin-intent/intent.ts":{"bytesInOutput":798},"packages/sdk/app-framework/src/plugin-intent/errors.ts":{"bytesInOutput":632},"packages/sdk/app-framework/src/core/capabilities.ts":{"bytesInOutput":4123},"packages/sdk/app-framework/src/core/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/core/events.ts":{"bytesInOutput":512},"packages/sdk/app-framework/src/core/manager.ts":{"bytesInOutput":14797},"packages/sdk/app-framework/src/core/plugin.ts":{"bytesInOutput":516},"packages/sdk/app-framework/src/common/capabilities.ts":{"bytesInOutput":1655},"packages/sdk/app-framework/src/common/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/common/events.ts":{"bytesInOutput":1101},"packages/sdk/app-framework/src/common/file.ts":{"bytesInOutput":376},"packages/sdk/app-framework/src/common/layout.ts":{"bytesInOutput":9981},"packages/sdk/app-framework/src/plugin-intent/index.ts":{"bytesInOutput":0},"packages/sdk/app-framework/src/plugin-intent/IntentPlugin.tsx":{"bytesInOutput":602},"packages/sdk/app-framework/src/common/surface.ts":{"bytesInOutput":48},"packages/sdk/app-framework/src/common/translations.ts":{"bytesInOutput":289}},"bytes":42580}}}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
Capabilities,
|
|
4
|
+
contributes
|
|
5
|
+
} from "./chunk-44J2VZBB.mjs";
|
|
6
|
+
|
|
7
|
+
// packages/sdk/app-framework/src/plugin-settings/store.ts
|
|
8
|
+
import { RootSettingsStore } from "@dxos/local-storage";
|
|
9
|
+
var store_default = (context) => {
|
|
10
|
+
const allSettings = context.requestCapabilities(Capabilities.Settings);
|
|
11
|
+
const settingsStore = new RootSettingsStore();
|
|
12
|
+
allSettings.forEach((setting) => {
|
|
13
|
+
settingsStore.createStore(setting);
|
|
14
|
+
});
|
|
15
|
+
return contributes(Capabilities.SettingsStore, settingsStore);
|
|
16
|
+
};
|
|
17
|
+
export {
|
|
18
|
+
store_default as default
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=store-VWDAYUQY.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/plugin-settings/store.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { RootSettingsStore } from '@dxos/local-storage';\n\nimport { Capabilities } from '../common';\nimport { contributes, type PluginsContext } from '../core';\n\nexport default (context: PluginsContext) => {\n // TODO(wittjosiah): This should subscribe to capabilities and create stores for newly added settings objects.\n const allSettings = context.requestCapabilities(Capabilities.Settings);\n const settingsStore = new RootSettingsStore();\n\n allSettings.forEach((setting) => {\n settingsStore.createStore(setting as any);\n });\n\n return contributes(Capabilities.SettingsStore, settingsStore);\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;AAIA,SAASA,yBAAyB;AAKlC,IAAA,gBAAe,CAACC,YAAAA;AAEd,QAAMC,cAAcD,QAAQE,oBAAoBC,aAAaC,QAAQ;AACrE,QAAMC,gBAAgB,IAAIC,kBAAAA;AAE1BL,cAAYM,QAAQ,CAACC,YAAAA;AACnBH,kBAAcI,YAAYD,OAAAA;EAC5B,CAAA;AAEA,SAAOE,YAAYP,aAAaQ,eAAeN,aAAAA;AACjD;",
|
|
6
|
+
"names": ["RootSettingsStore", "context", "allSettings", "requestCapabilities", "Capabilities", "Settings", "settingsStore", "RootSettingsStore", "forEach", "setting", "createStore", "contributes", "SettingsStore"]
|
|
7
|
+
}
|