@dxos/app-framework 0.8.2-main.5885341 → 0.8.2-main.600d381

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.
Files changed (278) hide show
  1. package/dist/lib/browser/{app-graph-builder-OHM2Z6YQ.mjs → app-graph-builder-OWHVEAHP.mjs} +7 -5
  2. package/dist/lib/browser/app-graph-builder-OWHVEAHP.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-X2YC645Z.mjs → chunk-A7XUUTJN.mjs} +2 -2
  4. package/dist/lib/browser/{chunk-SFPT4Z2C.mjs → chunk-KPRHX73H.mjs} +9 -9
  5. package/dist/lib/browser/chunk-KPRHX73H.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-DVNSCQJ5.mjs → chunk-M6UBP7YP.mjs} +163 -163
  7. package/dist/lib/browser/chunk-M6UBP7YP.mjs.map +7 -0
  8. package/dist/lib/browser/index.mjs +6 -6
  9. package/dist/lib/browser/{intent-dispatcher-J7QIFHLO.mjs → intent-dispatcher-SICNXT2G.mjs} +2 -2
  10. package/dist/lib/browser/{intent-resolver-QV5MDMDV.mjs → intent-resolver-2K6LNSUE.mjs} +3 -3
  11. package/dist/lib/browser/meta.json +1 -1
  12. package/dist/lib/browser/{store-XMPVLJOQ.mjs → store-P4XZF26P.mjs} +2 -2
  13. package/dist/lib/browser/testing/index.mjs +7 -3
  14. package/dist/lib/browser/testing/index.mjs.map +3 -3
  15. package/dist/lib/browser/worker.mjs +1 -1
  16. package/dist/lib/node/{app-graph-builder-Z45FKS52.cjs → app-graph-builder-43JOK25K.cjs} +32 -30
  17. package/dist/lib/node/app-graph-builder-43JOK25K.cjs.map +7 -0
  18. package/dist/lib/node/{chunk-JUSEAFDU.cjs → chunk-JQMNABMK.cjs} +4 -4
  19. package/dist/lib/node/chunk-JQMNABMK.cjs.map +7 -0
  20. package/dist/lib/node/{chunk-I3CJYEBC.cjs → chunk-LPUJODXZ.cjs} +5 -5
  21. package/dist/lib/node/chunk-LPUJODXZ.cjs.map +7 -0
  22. package/dist/lib/node/{chunk-5UOVF3OR.cjs → chunk-MTROSTO7.cjs} +19 -19
  23. package/dist/lib/node/index.cjs +79 -79
  24. package/dist/lib/node/{intent-dispatcher-FQPJNKIZ.cjs → intent-dispatcher-XXFKXEHF.cjs} +8 -8
  25. package/dist/lib/node/{intent-dispatcher-FQPJNKIZ.cjs.map → intent-dispatcher-XXFKXEHF.cjs.map} +2 -2
  26. package/dist/lib/node/{intent-resolver-PBAOGJS6.cjs → intent-resolver-ZP6S7QKG.cjs} +12 -12
  27. package/dist/lib/node/meta.json +1 -1
  28. package/dist/lib/node/{store-N7JLYYDI.cjs → store-MALHSPHZ.cjs} +7 -7
  29. package/dist/lib/node/testing/index.cjs +14 -9
  30. package/dist/lib/node/testing/index.cjs.map +3 -3
  31. package/dist/lib/node/worker.cjs +38 -38
  32. package/dist/lib/node/worker.cjs.map +1 -1
  33. package/dist/lib/node-esm/{app-graph-builder-OMH534A4.mjs → app-graph-builder-WE4IBY3S.mjs} +7 -5
  34. package/dist/lib/node-esm/app-graph-builder-WE4IBY3S.mjs.map +7 -0
  35. package/dist/lib/node-esm/{chunk-PHOUQACM.mjs → chunk-JUJF5L4G.mjs} +9 -9
  36. package/dist/lib/node-esm/chunk-JUJF5L4G.mjs.map +7 -0
  37. package/dist/lib/node-esm/{chunk-QHXUTJHE.mjs → chunk-MX6ITPIG.mjs} +2 -2
  38. package/dist/lib/node-esm/{chunk-GSDBF2CK.mjs → chunk-OZD32CQN.mjs} +163 -163
  39. package/dist/lib/node-esm/chunk-OZD32CQN.mjs.map +7 -0
  40. package/dist/lib/node-esm/index.mjs +6 -6
  41. package/dist/lib/node-esm/{intent-dispatcher-QDUGA7NT.mjs → intent-dispatcher-FF5HNHPQ.mjs} +2 -2
  42. package/dist/lib/node-esm/{intent-resolver-P7TC5RBD.mjs → intent-resolver-QWIKXIGI.mjs} +3 -3
  43. package/dist/lib/node-esm/meta.json +1 -1
  44. package/dist/lib/node-esm/{store-M2BYJL6K.mjs → store-3NM6AWB4.mjs} +2 -2
  45. package/dist/lib/node-esm/testing/index.mjs +7 -3
  46. package/dist/lib/node-esm/testing/index.mjs.map +3 -3
  47. package/dist/lib/node-esm/worker.mjs +1 -1
  48. package/dist/types/src/App.d.ts.map +1 -1
  49. package/dist/types/src/common/capabilities.d.ts +2 -2
  50. package/dist/types/src/common/capabilities.d.ts.map +1 -1
  51. package/dist/types/src/common/collaboration.d.ts +7 -7
  52. package/dist/types/src/common/collaboration.d.ts.map +1 -1
  53. package/dist/types/src/common/events.d.ts.map +1 -1
  54. package/dist/types/src/common/file.d.ts +7 -7
  55. package/dist/types/src/common/file.d.ts.map +1 -1
  56. package/dist/types/src/common/layout.d.ts +163 -163
  57. package/dist/types/src/common/layout.d.ts.map +1 -1
  58. package/dist/types/src/common/surface.d.ts.map +1 -1
  59. package/dist/types/src/common/translations.d.ts +7 -7
  60. package/dist/types/src/common/translations.d.ts.map +1 -1
  61. package/dist/types/src/core/capabilities.d.ts.map +1 -1
  62. package/dist/types/src/core/events.d.ts.map +1 -1
  63. package/dist/types/src/core/plugin.d.ts.map +1 -1
  64. package/dist/types/src/helpers.d.ts.map +1 -1
  65. package/dist/types/src/playground/generator/generator.d.ts.map +1 -1
  66. package/dist/types/src/playground/logger/schema.d.ts +6 -6
  67. package/dist/types/src/playground/logger/schema.d.ts.map +1 -1
  68. package/dist/types/src/plugin-intent/actions.d.ts +14 -14
  69. package/dist/types/src/plugin-intent/actions.d.ts.map +1 -1
  70. package/dist/types/src/plugin-intent/intent-dispatcher.d.ts.map +1 -1
  71. package/dist/types/src/plugin-intent/intent.d.ts +12 -12
  72. package/dist/types/src/plugin-intent/intent.d.ts.map +1 -1
  73. package/dist/types/src/plugin-settings/actions.d.ts +10 -10
  74. package/dist/types/src/plugin-settings/actions.d.ts.map +1 -1
  75. package/dist/types/src/plugin-settings/app-graph-builder.d.ts.map +1 -1
  76. package/dist/types/src/plugin-settings/store.d.ts.map +1 -1
  77. package/dist/types/src/react/IntentContext.d.ts.map +1 -1
  78. package/dist/types/src/react/Surface.d.ts.map +1 -1
  79. package/dist/types/src/react/useCapabilities.d.ts.map +1 -1
  80. package/dist/types/src/react/useIntentResolver.d.ts.map +1 -1
  81. package/dist/types/src/testing/withPluginManager.d.ts +5 -2
  82. package/dist/types/src/testing/withPluginManager.d.ts.map +1 -1
  83. package/dist/types/src/testing/withPluginManager.stories.d.ts.map +1 -1
  84. package/dist/types/tsconfig.tsbuildinfo +1 -1
  85. package/package.json +18 -18
  86. package/src/common/capabilities.ts +2 -2
  87. package/src/common/collaboration.ts +7 -6
  88. package/src/common/file.ts +7 -7
  89. package/src/common/layout.ts +148 -136
  90. package/src/common/translations.ts +7 -7
  91. package/src/playground/generator/generator.ts +4 -4
  92. package/src/playground/logger/schema.ts +5 -5
  93. package/src/playground/playground.stories.tsx +1 -1
  94. package/src/plugin-intent/actions.ts +9 -9
  95. package/src/plugin-intent/intent-dispatcher.test.ts +23 -23
  96. package/src/plugin-intent/intent.ts +20 -11
  97. package/src/plugin-settings/actions.ts +8 -8
  98. package/src/plugin-settings/app-graph-builder.ts +3 -1
  99. package/src/react/Surface.stories.tsx +1 -1
  100. package/src/testing/withPluginManager.stories.tsx +0 -1
  101. package/src/testing/withPluginManager.tsx +11 -3
  102. package/typedoc/classes/CollaborationActions.InsertContent.html +236 -197
  103. package/typedoc/classes/ErrorBoundary.html +6 -6
  104. package/typedoc/classes/IntentAction.ShowUndo.html +120 -120
  105. package/typedoc/classes/IntentAction.Track.html +234 -234
  106. package/typedoc/classes/LayoutAction.AddToast.html +158 -158
  107. package/typedoc/classes/LayoutAction.Close.html +347 -347
  108. package/typedoc/classes/LayoutAction.Expose.html +233 -233
  109. package/typedoc/classes/LayoutAction.Open.html +899 -743
  110. package/typedoc/classes/LayoutAction.RevertWorkspace.html +236 -236
  111. package/typedoc/classes/LayoutAction.ScrollIntoView.html +275 -275
  112. package/typedoc/classes/LayoutAction.Set.html +427 -349
  113. package/typedoc/classes/LayoutAction.SetLayoutMode.html +464 -386
  114. package/typedoc/classes/LayoutAction.SwitchWorkspace.html +233 -233
  115. package/typedoc/classes/LayoutAction.UpdateComplementary.html +353 -353
  116. package/typedoc/classes/LayoutAction.UpdateDialog.html +548 -470
  117. package/typedoc/classes/LayoutAction.UpdateLayout.html +276 -276
  118. package/typedoc/classes/LayoutAction.UpdatePopover.html +821 -821
  119. package/typedoc/classes/LayoutAction.UpdateSidebar.html +392 -314
  120. package/typedoc/classes/Plugin.html +3 -3
  121. package/typedoc/classes/PluginManager.html +16 -16
  122. package/typedoc/classes/PluginModule.html +8 -8
  123. package/typedoc/classes/PluginsContext.html +8 -8
  124. package/typedoc/classes/SettingsAction.Open.html +194 -194
  125. package/typedoc/classes/SettingsAction.OpenPluginRegistry.html +119 -119
  126. package/typedoc/functions/Events.createStateEvent.html +2 -2
  127. package/typedoc/functions/IntentPlugin.html +1 -1
  128. package/typedoc/functions/SettingsPlugin.html +1 -1
  129. package/typedoc/functions/allOf.html +2 -2
  130. package/typedoc/functions/chain.html +2 -2
  131. package/typedoc/functions/contributes.html +2 -2
  132. package/typedoc/functions/createApp.html +2 -2
  133. package/typedoc/functions/createDispatcher.html +2 -2
  134. package/typedoc/functions/createIntent.html +2 -2
  135. package/typedoc/functions/createResolver.html +2 -2
  136. package/typedoc/functions/createSurface.html +2 -2
  137. package/typedoc/functions/defineCapability.html +2 -2
  138. package/typedoc/functions/defineEvent.html +2 -2
  139. package/typedoc/functions/defineModule.html +2 -2
  140. package/typedoc/functions/definePlugin.html +2 -2
  141. package/typedoc/functions/eventKey.html +2 -2
  142. package/typedoc/functions/getEvents.html +2 -2
  143. package/typedoc/functions/isAllOf.html +2 -2
  144. package/typedoc/functions/isOneOf.html +2 -2
  145. package/typedoc/functions/isSurfaceAvailable.html +2 -2
  146. package/typedoc/functions/lazy.html +2 -2
  147. package/typedoc/functions/oneOf.html +2 -2
  148. package/typedoc/functions/useAppGraph.html +1 -1
  149. package/typedoc/functions/useCapabilities.html +2 -2
  150. package/typedoc/functions/useCapability.html +2 -2
  151. package/typedoc/functions/useIntentDispatcher.html +1 -1
  152. package/typedoc/functions/useIntentResolver.html +1 -1
  153. package/typedoc/functions/useLayout.html +1 -1
  154. package/typedoc/functions/usePluginManager.html +2 -2
  155. package/typedoc/hierarchy.html +1 -1
  156. package/typedoc/index.html +2 -2
  157. package/typedoc/interfaces/LayoutAction.Toast.html +2 -2
  158. package/typedoc/modules/Capabilities.html +1 -1
  159. package/typedoc/modules/CollaborationActions.html +1 -1
  160. package/typedoc/modules/Events.html +1 -1
  161. package/typedoc/modules/IntentAction.html +1 -1
  162. package/typedoc/modules/LayoutAction.html +2 -2
  163. package/typedoc/modules/SettingsAction.html +1 -1
  164. package/typedoc/modules.html +1 -1
  165. package/typedoc/types/ActivationEvent.html +3 -3
  166. package/typedoc/types/ActivationEvents.html +2 -2
  167. package/typedoc/types/AnyCapability.html +1 -1
  168. package/typedoc/types/AnyIntent.html +1 -1
  169. package/typedoc/types/AnyIntentChain.html +1 -1
  170. package/typedoc/types/AnyIntentEffectResult.html +1 -1
  171. package/typedoc/types/AnyIntentResolver.html +1 -1
  172. package/typedoc/types/AnyIntentResult.html +1 -1
  173. package/typedoc/types/Capabilities.FileUploader.html +1 -1
  174. package/typedoc/types/Capabilities.IntentResolver.html +1 -1
  175. package/typedoc/types/Capabilities.Layout.html +1 -1
  176. package/typedoc/types/Capabilities.Metadata.html +1 -1
  177. package/typedoc/types/Capabilities.ReactContext.html +1 -1
  178. package/typedoc/types/Capabilities.ReactRoot.html +1 -1
  179. package/typedoc/types/Capabilities.ReactSurface.html +1 -1
  180. package/typedoc/types/Capabilities.Settings.html +2 -2
  181. package/typedoc/types/Capability.html +5 -5
  182. package/typedoc/types/CreateAppOptions.html +2 -2
  183. package/typedoc/types/FileInfo.html +1 -1
  184. package/typedoc/types/Intent.html +7 -7
  185. package/typedoc/types/IntentChain.html +3 -3
  186. package/typedoc/types/IntentContext.html +2 -2
  187. package/typedoc/types/IntentData.html +1 -1
  188. package/typedoc/types/IntentDispatcher.html +2 -2
  189. package/typedoc/types/IntentDispatcherResult.html +2 -2
  190. package/typedoc/types/IntentEffectDefinition.html +2 -2
  191. package/typedoc/types/IntentEffectResult.html +6 -6
  192. package/typedoc/types/IntentParams.html +2 -2
  193. package/typedoc/types/IntentResolver.html +2 -2
  194. package/typedoc/types/IntentResultData.html +1 -1
  195. package/typedoc/types/IntentSchema.html +1 -1
  196. package/typedoc/types/IntentUndo.html +2 -2
  197. package/typedoc/types/InterfaceDef.html +3 -3
  198. package/typedoc/types/Label.html +1 -1
  199. package/typedoc/types/NodeSerializer.html +3 -3
  200. package/typedoc/types/PluginManagerOptions.html +2 -2
  201. package/typedoc/types/PluginMeta.html +9 -9
  202. package/typedoc/types/PromiseIntentDispatcher.html +2 -2
  203. package/typedoc/types/PromiseIntentUndo.html +2 -2
  204. package/typedoc/types/Resource.html +1 -1
  205. package/typedoc/types/ResourceKey.html +1 -1
  206. package/typedoc/types/ResourceLanguage.html +1 -1
  207. package/typedoc/types/SerializedNode.html +2 -2
  208. package/typedoc/types/SurfaceComponent.html +2 -2
  209. package/typedoc/types/SurfaceDefinition.html +2 -2
  210. package/typedoc/types/SurfaceProps.html +2 -2
  211. package/typedoc/variables/Capabilities.AppGraph.html +1 -1
  212. package/typedoc/variables/Capabilities.AppGraphBuilder.html +1 -1
  213. package/typedoc/variables/Capabilities.AppGraphSerializer.html +1 -1
  214. package/typedoc/variables/Capabilities.ArtifactDefinition.html +1 -1
  215. package/typedoc/variables/Capabilities.FileUploader.html +1 -1
  216. package/typedoc/variables/Capabilities.IntentDispatcher.html +1 -1
  217. package/typedoc/variables/Capabilities.IntentResolver.html +1 -1
  218. package/typedoc/variables/Capabilities.Layout.html +1 -1
  219. package/typedoc/variables/Capabilities.Metadata.html +1 -1
  220. package/typedoc/variables/Capabilities.Null.html +1 -1
  221. package/typedoc/variables/Capabilities.PluginManager.html +1 -1
  222. package/typedoc/variables/Capabilities.ReactContext.html +1 -1
  223. package/typedoc/variables/Capabilities.ReactRoot.html +1 -1
  224. package/typedoc/variables/Capabilities.ReactSurface.html +1 -1
  225. package/typedoc/variables/Capabilities.Settings.html +1 -1
  226. package/typedoc/variables/Capabilities.SettingsStore.html +1 -1
  227. package/typedoc/variables/Capabilities.Tools.html +1 -1
  228. package/typedoc/variables/Capabilities.Translations.html +1 -1
  229. package/typedoc/variables/Events.AppGraphReady.html +2 -2
  230. package/typedoc/variables/Events.DispatcherReady.html +2 -2
  231. package/typedoc/variables/Events.LayoutReady.html +1 -1
  232. package/typedoc/variables/Events.SettingsReady.html +2 -2
  233. package/typedoc/variables/Events.SetupAppGraph.html +2 -2
  234. package/typedoc/variables/Events.SetupArtifactDefinition.html +2 -2
  235. package/typedoc/variables/Events.SetupIntentResolver.html +2 -2
  236. package/typedoc/variables/Events.SetupMetadata.html +2 -2
  237. package/typedoc/variables/Events.SetupReactSurface.html +2 -2
  238. package/typedoc/variables/Events.SetupSettings.html +2 -2
  239. package/typedoc/variables/Events.SetupTranslations.html +2 -2
  240. package/typedoc/variables/Events.Startup.html +2 -2
  241. package/typedoc/variables/FileInfoSchema.html +1 -1
  242. package/typedoc/variables/INTENT_ACTION.html +1 -1
  243. package/typedoc/variables/INTENT_PLUGIN.html +1 -1
  244. package/typedoc/variables/LAYOUT_ACTION.html +1 -1
  245. package/typedoc/variables/LAYOUT_PLUGIN.html +1 -1
  246. package/typedoc/variables/Label.html +1 -1
  247. package/typedoc/variables/LayoutAction.Toast.html +1 -1
  248. package/typedoc/variables/LayoutAction.UPDATE_LAYOUT.html +1 -1
  249. package/typedoc/variables/PluginManagerProvider.html +2 -2
  250. package/typedoc/variables/Resource.html +2 -2
  251. package/typedoc/variables/ResourceKey.html +1 -1
  252. package/typedoc/variables/ResourceLanguage.html +1 -1
  253. package/typedoc/variables/SETTINGS_ACTION.html +1 -1
  254. package/typedoc/variables/SETTINGS_ID.html +1 -1
  255. package/typedoc/variables/SETTINGS_KEY.html +1 -1
  256. package/typedoc/variables/SETTINGS_PLUGIN.html +1 -1
  257. package/typedoc/variables/Surface.html +2 -2
  258. package/typedoc/variables/defaultFileTypes.html +1 -1
  259. package/dist/lib/browser/app-graph-builder-OHM2Z6YQ.mjs.map +0 -7
  260. package/dist/lib/browser/chunk-DVNSCQJ5.mjs.map +0 -7
  261. package/dist/lib/browser/chunk-SFPT4Z2C.mjs.map +0 -7
  262. package/dist/lib/node/app-graph-builder-Z45FKS52.cjs.map +0 -7
  263. package/dist/lib/node/chunk-I3CJYEBC.cjs.map +0 -7
  264. package/dist/lib/node/chunk-JUSEAFDU.cjs.map +0 -7
  265. package/dist/lib/node-esm/app-graph-builder-OMH534A4.mjs.map +0 -7
  266. package/dist/lib/node-esm/chunk-GSDBF2CK.mjs.map +0 -7
  267. package/dist/lib/node-esm/chunk-PHOUQACM.mjs.map +0 -7
  268. /package/dist/lib/browser/{chunk-X2YC645Z.mjs.map → chunk-A7XUUTJN.mjs.map} +0 -0
  269. /package/dist/lib/browser/{intent-dispatcher-J7QIFHLO.mjs.map → intent-dispatcher-SICNXT2G.mjs.map} +0 -0
  270. /package/dist/lib/browser/{intent-resolver-QV5MDMDV.mjs.map → intent-resolver-2K6LNSUE.mjs.map} +0 -0
  271. /package/dist/lib/browser/{store-XMPVLJOQ.mjs.map → store-P4XZF26P.mjs.map} +0 -0
  272. /package/dist/lib/node/{chunk-5UOVF3OR.cjs.map → chunk-MTROSTO7.cjs.map} +0 -0
  273. /package/dist/lib/node/{intent-resolver-PBAOGJS6.cjs.map → intent-resolver-ZP6S7QKG.cjs.map} +0 -0
  274. /package/dist/lib/node/{store-N7JLYYDI.cjs.map → store-MALHSPHZ.cjs.map} +0 -0
  275. /package/dist/lib/node-esm/{chunk-QHXUTJHE.mjs.map → chunk-MX6ITPIG.mjs.map} +0 -0
  276. /package/dist/lib/node-esm/{intent-dispatcher-QDUGA7NT.mjs.map → intent-dispatcher-FF5HNHPQ.mjs.map} +0 -0
  277. /package/dist/lib/node-esm/{intent-resolver-P7TC5RBD.mjs.map → intent-resolver-QWIKXIGI.mjs.map} +0 -0
  278. /package/dist/lib/node-esm/{store-M2BYJL6K.mjs.map → store-3NM6AWB4.mjs.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  Capabilities,
3
3
  contributes
4
- } from "./chunk-DVNSCQJ5.mjs";
4
+ } from "./chunk-M6UBP7YP.mjs";
5
5
 
6
6
  // packages/sdk/app-framework/src/plugin-settings/store.ts
7
7
  import { effect } from "@preact/signals-core";
@@ -26,4 +26,4 @@ var store_default = (context) => {
26
26
  export {
27
27
  store_default as default
28
28
  };
29
- //# sourceMappingURL=store-XMPVLJOQ.mjs.map
29
+ //# sourceMappingURL=store-P4XZF26P.mjs.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createApp
3
- } from "../chunk-X2YC645Z.mjs";
3
+ } from "../chunk-A7XUUTJN.mjs";
4
4
  import {
5
5
  Capabilities,
6
6
  Events,
@@ -8,11 +8,14 @@ import {
8
8
  contributes,
9
9
  defineModule,
10
10
  definePlugin
11
- } from "../chunk-DVNSCQJ5.mjs";
11
+ } from "../chunk-M6UBP7YP.mjs";
12
12
 
13
13
  // packages/sdk/app-framework/src/testing/withPluginManager.tsx
14
14
  import React, { useEffect } from "react";
15
15
  import { raise } from "@dxos/debug";
16
+ var getValue = (providerOrValue, context) => {
17
+ return typeof providerOrValue === "function" ? providerOrValue(context) : providerOrValue;
18
+ };
16
19
  var setupPluginManager = ({ capabilities, plugins = [], core = plugins.map(({ meta }) => meta.id), ...options } = {}) => {
17
20
  const pluginManager = new PluginManager({
18
21
  pluginLoader: () => raise(new Error("Not implemented")),
@@ -27,7 +30,7 @@ var setupPluginManager = ({ capabilities, plugins = [], core = plugins.map(({ me
27
30
  ...options
28
31
  });
29
32
  if (capabilities) {
30
- capabilities.forEach((capability) => {
33
+ getValue(capabilities, pluginManager.context).forEach((capability) => {
31
34
  pluginManager.context.contributeCapability({
32
35
  interface: capability.interface,
33
36
  implementation: capability.implementation,
@@ -72,6 +75,7 @@ var StoryPlugin = () => definePlugin({
72
75
  })
73
76
  ]);
74
77
  export {
78
+ getValue,
75
79
  setupPluginManager,
76
80
  withPluginManager
77
81
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/testing/withPluginManager.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Decorator } from '@storybook/react';\nimport React, { useEffect } from 'react';\n\nimport { raise } from '@dxos/debug';\n\nimport { createApp, type CreateAppOptions } from '../App';\nimport { Capabilities, Events } from '../common';\nimport {\n type ActivationEvent,\n type AnyCapability,\n contributes,\n defineModule,\n definePlugin,\n PluginManager,\n} from '../core';\n\n/**\n * @internal\n */\nexport const setupPluginManager = ({\n capabilities,\n plugins = [],\n core = plugins.map(({ meta }) => meta.id),\n ...options\n}: CreateAppOptions & { capabilities?: AnyCapability[] } = {}) => {\n const pluginManager = new PluginManager({\n pluginLoader: () => raise(new Error('Not implemented')),\n plugins: [StoryPlugin(), ...plugins],\n core: [STORY_PLUGIN, ...core],\n ...options,\n });\n\n if (capabilities) {\n capabilities.forEach((capability) => {\n pluginManager.context.contributeCapability({\n interface: capability.interface,\n implementation: capability.implementation,\n module: 'story',\n });\n });\n }\n\n return pluginManager;\n};\n\nexport type WithPluginManagerOptions = CreateAppOptions & {\n capabilities?: AnyCapability[];\n fireEvents?: (ActivationEvent | string)[];\n};\n\n/**\n * Wraps a story with a plugin manager.\n */\nexport const withPluginManager = (options: WithPluginManagerOptions = {}): Decorator => {\n const pluginManager = setupPluginManager(options);\n const App = createApp({ pluginManager });\n\n options.fireEvents?.forEach((event) => {\n void pluginManager.activate(event);\n });\n\n return (Story, context) => {\n useEffect(() => {\n const capability = contributes(Capabilities.ReactRoot, {\n id: context.id,\n root: () => <Story />,\n });\n\n pluginManager.context.contributeCapability({\n ...capability,\n module: 'dxos.org/app-framework/withPluginManager',\n });\n\n return () => pluginManager.context.removeCapability(capability.interface, capability.implementation);\n }, []);\n\n return <App />;\n };\n};\n\n// No-op plugin to ensure there exists at least one plugin for the startup event.\n// This is necessary because `createApp` expects the startup event to complete before the app is ready.\nconst STORY_PLUGIN = 'dxos.org/app-framework/story';\nconst StoryPlugin = () =>\n definePlugin({ id: STORY_PLUGIN, name: 'Story' }, [\n defineModule({ id: STORY_PLUGIN, activatesOn: Events.Startup, activate: () => [] }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;;;AAKA,OAAOA,SAASC,iBAAiB;AAEjC,SAASC,aAAa;AAgBf,IAAMC,qBAAqB,CAAC,EACjCC,cACAC,UAAU,CAAA,GACVC,OAAOD,QAAQE,IAAI,CAAC,EAAEC,KAAI,MAAOA,KAAKC,EAAE,GACxC,GAAGC,QAAAA,IACsD,CAAC,MAAC;AAC3D,QAAMC,gBAAgB,IAAIC,cAAc;IACtCC,cAAc,MAAMC,MAAM,IAAIC,MAAM,iBAAA,CAAA;IACpCV,SAAS;MAACW,YAAAA;SAAkBX;;IAC5BC,MAAM;MAACW;SAAiBX;;IACxB,GAAGI;EACL,CAAA;AAEA,MAAIN,cAAc;AAChBA,iBAAac,QAAQ,CAACC,eAAAA;AACpBR,oBAAcS,QAAQC,qBAAqB;QACzCC,WAAWH,WAAWG;QACtBC,gBAAgBJ,WAAWI;QAC3BC,QAAQ;MACV,CAAA;IACF,CAAA;EACF;AAEA,SAAOb;AACT;AAUO,IAAMc,oBAAoB,CAACf,UAAoC,CAAC,MAAC;AACtE,QAAMC,gBAAgBR,mBAAmBO,OAAAA;AACzC,QAAMgB,MAAMC,UAAU;IAAEhB;EAAc,CAAA;AAEtCD,UAAQkB,YAAYV,QAAQ,CAACW,UAAAA;AAC3B,SAAKlB,cAAcmB,SAASD,KAAAA;EAC9B,CAAA;AAEA,SAAO,CAACE,OAAOX,YAAAA;AACbY,cAAU,MAAA;AACR,YAAMb,aAAac,YAAYC,aAAaC,WAAW;QACrD1B,IAAIW,QAAQX;QACZ2B,MAAM,MAAM,sBAAA,cAACL,OAAAA,IAAAA;MACf,CAAA;AAEApB,oBAAcS,QAAQC,qBAAqB;QACzC,GAAGF;QACHK,QAAQ;MACV,CAAA;AAEA,aAAO,MAAMb,cAAcS,QAAQiB,iBAAiBlB,WAAWG,WAAWH,WAAWI,cAAc;IACrG,GAAG,CAAA,CAAE;AAEL,WAAO,sBAAA,cAACG,KAAAA,IAAAA;EACV;AACF;AAIA,IAAMT,eAAe;AACrB,IAAMD,cAAc,MAClBsB,aAAa;EAAE7B,IAAIQ;EAAcsB,MAAM;AAAQ,GAAG;EAChDC,aAAa;IAAE/B,IAAIQ;IAAcwB,aAAaC,OAAOC;IAASb,UAAU,MAAM,CAAA;EAAG,CAAA;CAClF;",
6
- "names": ["React", "useEffect", "raise", "setupPluginManager", "capabilities", "plugins", "core", "map", "meta", "id", "options", "pluginManager", "PluginManager", "pluginLoader", "raise", "Error", "StoryPlugin", "STORY_PLUGIN", "forEach", "capability", "context", "contributeCapability", "interface", "implementation", "module", "withPluginManager", "App", "createApp", "fireEvents", "event", "activate", "Story", "useEffect", "contributes", "Capabilities", "ReactRoot", "root", "removeCapability", "definePlugin", "name", "defineModule", "activatesOn", "Events", "Startup"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Decorator } from '@storybook/react';\nimport React, { useEffect } from 'react';\n\nimport { raise } from '@dxos/debug';\n\nimport { createApp, type CreateAppOptions } from '../App';\nimport { Capabilities, Events } from '../common';\nimport {\n type ActivationEvent,\n type AnyCapability,\n contributes,\n defineModule,\n definePlugin,\n PluginManager,\n type PluginsContext,\n} from '../core';\n\n// TODO(burdon): Factor out (use consistently in plugin framework?)\nexport type Provider<C, R> = (context: C) => R;\nexport type ProviderOrValue<C, R> = Provider<C, R> | R;\nexport const getValue = <C, R>(providerOrValue: ProviderOrValue<C, R>, context: C): R => {\n return typeof providerOrValue === 'function' ? (providerOrValue as Provider<C, R>)(context) : providerOrValue;\n};\n\n/**\n * @internal\n */\nexport const setupPluginManager = ({\n capabilities,\n plugins = [],\n core = plugins.map(({ meta }) => meta.id),\n ...options\n}: CreateAppOptions & Pick<WithPluginManagerOptions, 'capabilities'> = {}) => {\n const pluginManager = new PluginManager({\n pluginLoader: () => raise(new Error('Not implemented')),\n plugins: [StoryPlugin(), ...plugins],\n core: [STORY_PLUGIN, ...core],\n ...options,\n });\n\n if (capabilities) {\n getValue(capabilities, pluginManager.context).forEach((capability) => {\n pluginManager.context.contributeCapability({\n interface: capability.interface,\n implementation: capability.implementation,\n module: 'story',\n });\n });\n }\n\n return pluginManager;\n};\n\nexport type WithPluginManagerOptions = CreateAppOptions & {\n capabilities?: ProviderOrValue<PluginsContext, AnyCapability[]>;\n fireEvents?: (ActivationEvent | string)[];\n};\n\n/**\n * Wraps a story with a plugin manager.\n */\nexport const withPluginManager = (options: WithPluginManagerOptions = {}): Decorator => {\n const pluginManager = setupPluginManager(options);\n const App = createApp({ pluginManager });\n\n options.fireEvents?.forEach((event) => {\n void pluginManager.activate(event);\n });\n\n return (Story, context) => {\n useEffect(() => {\n const capability = contributes(Capabilities.ReactRoot, {\n id: context.id,\n root: () => <Story />,\n });\n\n pluginManager.context.contributeCapability({\n ...capability,\n module: 'dxos.org/app-framework/withPluginManager',\n });\n\n return () => pluginManager.context.removeCapability(capability.interface, capability.implementation);\n }, []);\n\n return <App />;\n };\n};\n\n// No-op plugin to ensure there exists at least one plugin for the startup event.\n// This is necessary because `createApp` expects the startup event to complete before the app is ready.\nconst STORY_PLUGIN = 'dxos.org/app-framework/story';\nconst StoryPlugin = () =>\n definePlugin({ id: STORY_PLUGIN, name: 'Story' }, [\n defineModule({ id: STORY_PLUGIN, activatesOn: Events.Startup, activate: () => [] }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;;;AAKA,OAAOA,SAASC,iBAAiB;AAEjC,SAASC,aAAa;AAiBf,IAAMC,WAAW,CAAOC,iBAAwCC,YAAAA;AACrE,SAAO,OAAOD,oBAAoB,aAAcA,gBAAmCC,OAAAA,IAAWD;AAChG;AAKO,IAAME,qBAAqB,CAAC,EACjCC,cACAC,UAAU,CAAA,GACVC,OAAOD,QAAQE,IAAI,CAAC,EAAEC,KAAI,MAAOA,KAAKC,EAAE,GACxC,GAAGC,QAAAA,IACkE,CAAC,MAAC;AACvE,QAAMC,gBAAgB,IAAIC,cAAc;IACtCC,cAAc,MAAMC,MAAM,IAAIC,MAAM,iBAAA,CAAA;IACpCV,SAAS;MAACW,YAAAA;SAAkBX;;IAC5BC,MAAM;MAACW;SAAiBX;;IACxB,GAAGI;EACL,CAAA;AAEA,MAAIN,cAAc;AAChBJ,aAASI,cAAcO,cAAcT,OAAO,EAAEgB,QAAQ,CAACC,eAAAA;AACrDR,oBAAcT,QAAQkB,qBAAqB;QACzCC,WAAWF,WAAWE;QACtBC,gBAAgBH,WAAWG;QAC3BC,QAAQ;MACV,CAAA;IACF,CAAA;EACF;AAEA,SAAOZ;AACT;AAUO,IAAMa,oBAAoB,CAACd,UAAoC,CAAC,MAAC;AACtE,QAAMC,gBAAgBR,mBAAmBO,OAAAA;AACzC,QAAMe,MAAMC,UAAU;IAAEf;EAAc,CAAA;AAEtCD,UAAQiB,YAAYT,QAAQ,CAACU,UAAAA;AAC3B,SAAKjB,cAAckB,SAASD,KAAAA;EAC9B,CAAA;AAEA,SAAO,CAACE,OAAO5B,YAAAA;AACb6B,cAAU,MAAA;AACR,YAAMZ,aAAaa,YAAYC,aAAaC,WAAW;QACrDzB,IAAIP,QAAQO;QACZ0B,MAAM,MAAM,sBAAA,cAACL,OAAAA,IAAAA;MACf,CAAA;AAEAnB,oBAAcT,QAAQkB,qBAAqB;QACzC,GAAGD;QACHI,QAAQ;MACV,CAAA;AAEA,aAAO,MAAMZ,cAAcT,QAAQkC,iBAAiBjB,WAAWE,WAAWF,WAAWG,cAAc;IACrG,GAAG,CAAA,CAAE;AAEL,WAAO,sBAAA,cAACG,KAAAA,IAAAA;EACV;AACF;AAIA,IAAMR,eAAe;AACrB,IAAMD,cAAc,MAClBqB,aAAa;EAAE5B,IAAIQ;EAAcqB,MAAM;AAAQ,GAAG;EAChDC,aAAa;IAAE9B,IAAIQ;IAAcuB,aAAaC,OAAOC;IAASb,UAAU,MAAM,CAAA;EAAG,CAAA;CAClF;",
6
+ "names": ["React", "useEffect", "raise", "getValue", "providerOrValue", "context", "setupPluginManager", "capabilities", "plugins", "core", "map", "meta", "id", "options", "pluginManager", "PluginManager", "pluginLoader", "raise", "Error", "StoryPlugin", "STORY_PLUGIN", "forEach", "capability", "contributeCapability", "interface", "implementation", "module", "withPluginManager", "App", "createApp", "fireEvents", "event", "activate", "Story", "useEffect", "contributes", "Capabilities", "ReactRoot", "root", "removeCapability", "definePlugin", "name", "defineModule", "activatesOn", "Events", "Startup"]
7
7
  }
@@ -36,7 +36,7 @@ import {
36
36
  isOneOf,
37
37
  lazy,
38
38
  oneOf
39
- } from "./chunk-DVNSCQJ5.mjs";
39
+ } from "./chunk-M6UBP7YP.mjs";
40
40
  export {
41
41
  Capabilities,
42
42
  CollaborationActions,
@@ -16,34 +16,35 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var app_graph_builder_Z45FKS52_exports = {};
20
- __export(app_graph_builder_Z45FKS52_exports, {
19
+ var app_graph_builder_43JOK25K_exports = {};
20
+ __export(app_graph_builder_43JOK25K_exports, {
21
21
  default: () => app_graph_builder_default
22
22
  });
23
- module.exports = __toCommonJS(app_graph_builder_Z45FKS52_exports);
24
- var import_chunk_JUSEAFDU = require("./chunk-JUSEAFDU.cjs");
25
- var import_chunk_I3CJYEBC = require("./chunk-I3CJYEBC.cjs");
23
+ module.exports = __toCommonJS(app_graph_builder_43JOK25K_exports);
24
+ var import_chunk_JQMNABMK = require("./chunk-JQMNABMK.cjs");
25
+ var import_chunk_LPUJODXZ = require("./chunk-LPUJODXZ.cjs");
26
26
  var import_app_graph = require("@dxos/app-graph");
27
27
  var import_util = require("@dxos/util");
28
- var app_graph_builder_default = (context) => (0, import_chunk_I3CJYEBC.contributes)(import_chunk_I3CJYEBC.Capabilities.AppGraphBuilder, [
28
+ var app_graph_builder_default = (context) => (0, import_chunk_LPUJODXZ.contributes)(import_chunk_LPUJODXZ.Capabilities.AppGraphBuilder, [
29
29
  (0, import_app_graph.createExtension)({
30
- id: `${import_chunk_JUSEAFDU.SETTINGS_PLUGIN}/action`,
30
+ id: `${import_chunk_JQMNABMK.SETTINGS_PLUGIN}/action`,
31
31
  filter: (node) => node.id === "root",
32
32
  actions: () => [
33
33
  {
34
- id: import_chunk_JUSEAFDU.SETTINGS_PLUGIN,
34
+ id: import_chunk_JQMNABMK.SETTINGS_PLUGIN,
35
35
  data: async () => {
36
- const { dispatchPromise: dispatch } = context.requestCapability(import_chunk_I3CJYEBC.Capabilities.IntentDispatcher);
37
- await dispatch((0, import_chunk_I3CJYEBC.createIntent)(import_chunk_JUSEAFDU.SettingsAction.Open));
36
+ const { dispatchPromise: dispatch } = context.requestCapability(import_chunk_LPUJODXZ.Capabilities.IntentDispatcher);
37
+ await dispatch((0, import_chunk_LPUJODXZ.createIntent)(import_chunk_JQMNABMK.SettingsAction.Open));
38
38
  },
39
39
  properties: {
40
40
  label: [
41
41
  "open settings label",
42
42
  {
43
- ns: import_chunk_JUSEAFDU.SETTINGS_PLUGIN
43
+ ns: import_chunk_JQMNABMK.SETTINGS_PLUGIN
44
44
  }
45
45
  ],
46
46
  icon: "ph--gear--regular",
47
+ disposition: "menu",
47
48
  keyBinding: {
48
49
  macos: "meta+,",
49
50
  windows: "alt+,"
@@ -53,17 +54,17 @@ var app_graph_builder_default = (context) => (0, import_chunk_I3CJYEBC.contribut
53
54
  ]
54
55
  }),
55
56
  (0, import_app_graph.createExtension)({
56
- id: `${import_chunk_JUSEAFDU.SETTINGS_PLUGIN}/core`,
57
+ id: `${import_chunk_JQMNABMK.SETTINGS_PLUGIN}/core`,
57
58
  filter: (node) => node.id === "root",
58
59
  connector: () => [
59
60
  {
60
- id: import_chunk_JUSEAFDU.SETTINGS_ID,
61
- type: import_chunk_JUSEAFDU.SETTINGS_PLUGIN,
61
+ id: import_chunk_JQMNABMK.SETTINGS_ID,
62
+ type: import_chunk_JQMNABMK.SETTINGS_PLUGIN,
62
63
  properties: {
63
64
  label: [
64
65
  "app settings label",
65
66
  {
66
- ns: import_chunk_JUSEAFDU.SETTINGS_PLUGIN
67
+ ns: import_chunk_JQMNABMK.SETTINGS_PLUGIN
67
68
  }
68
69
  ],
69
70
  icon: "ph--gear--regular",
@@ -75,11 +76,11 @@ var app_graph_builder_default = (context) => (0, import_chunk_I3CJYEBC.contribut
75
76
  ]
76
77
  }),
77
78
  (0, import_app_graph.createExtension)({
78
- id: `${import_chunk_JUSEAFDU.SETTINGS_PLUGIN}/core-plugins`,
79
- filter: (node) => node.id === import_chunk_JUSEAFDU.SETTINGS_ID,
79
+ id: `${import_chunk_JQMNABMK.SETTINGS_PLUGIN}/core-plugins`,
80
+ filter: (node) => node.id === import_chunk_JQMNABMK.SETTINGS_ID,
80
81
  connector: () => {
81
- const manager = context.requestCapability(import_chunk_I3CJYEBC.Capabilities.PluginManager);
82
- const [settingsStore] = context.requestCapabilities(import_chunk_I3CJYEBC.Capabilities.SettingsStore);
82
+ const manager = context.requestCapability(import_chunk_LPUJODXZ.Capabilities.PluginManager);
83
+ const [settingsStore] = context.requestCapabilities(import_chunk_LPUJODXZ.Capabilities.SettingsStore);
83
84
  return [
84
85
  ...manager.plugins.filter((plugin) => manager.core.includes(plugin.meta.id)).map((plugin) => {
85
86
  const settings = settingsStore?.getStore(plugin.meta.id);
@@ -91,7 +92,7 @@ var app_graph_builder_default = (context) => (0, import_chunk_I3CJYEBC.contribut
91
92
  settings
92
93
  ];
93
94
  }).filter(import_util.isNonNullable).map(([meta, settings]) => ({
94
- id: `${import_chunk_JUSEAFDU.SETTINGS_KEY}:${meta.id.replaceAll("/", ":")}`,
95
+ id: `${import_chunk_JQMNABMK.SETTINGS_KEY}:${meta.id.replaceAll("/", ":")}`,
95
96
  type: "category",
96
97
  data: settings,
97
98
  properties: {
@@ -100,28 +101,29 @@ var app_graph_builder_default = (context) => (0, import_chunk_I3CJYEBC.contribut
100
101
  }
101
102
  })),
102
103
  {
103
- id: `${import_chunk_JUSEAFDU.SETTINGS_KEY}:custom-plugins`,
104
- type: "collection",
104
+ id: `${import_chunk_JQMNABMK.SETTINGS_KEY}:custom-plugins`,
105
+ type: "category",
105
106
  properties: {
106
107
  label: [
107
108
  "custom plugins label",
108
109
  {
109
- ns: import_chunk_JUSEAFDU.SETTINGS_PLUGIN
110
+ ns: import_chunk_JQMNABMK.SETTINGS_PLUGIN
110
111
  }
111
112
  ],
112
113
  icon: "ph--squares-four--regular",
113
- role: "branch"
114
+ role: "branch",
115
+ disposition: "collection"
114
116
  }
115
117
  }
116
118
  ];
117
119
  }
118
120
  }),
119
121
  (0, import_app_graph.createExtension)({
120
- id: `${import_chunk_JUSEAFDU.SETTINGS_PLUGIN}/custom-plugins`,
121
- filter: (node) => node.id === `${import_chunk_JUSEAFDU.SETTINGS_KEY}:custom-plugins`,
122
+ id: `${import_chunk_JQMNABMK.SETTINGS_PLUGIN}/custom-plugins`,
123
+ filter: (node) => node.id === `${import_chunk_JQMNABMK.SETTINGS_KEY}:custom-plugins`,
122
124
  connector: () => {
123
- const manager = context.requestCapability(import_chunk_I3CJYEBC.Capabilities.PluginManager);
124
- const [settingsStore] = context.requestCapabilities(import_chunk_I3CJYEBC.Capabilities.SettingsStore);
125
+ const manager = context.requestCapability(import_chunk_LPUJODXZ.Capabilities.PluginManager);
126
+ const [settingsStore] = context.requestCapabilities(import_chunk_LPUJODXZ.Capabilities.SettingsStore);
125
127
  return manager.plugins.filter((plugin) => !manager.core.includes(plugin.meta.id)).map((plugin) => {
126
128
  const settings = settingsStore?.getStore(plugin.meta.id);
127
129
  if (!settings) {
@@ -132,7 +134,7 @@ var app_graph_builder_default = (context) => (0, import_chunk_I3CJYEBC.contribut
132
134
  settings
133
135
  ];
134
136
  }).filter(import_util.isNonNullable).map(([meta, settings]) => ({
135
- id: `${import_chunk_JUSEAFDU.SETTINGS_KEY}:${meta.id.replaceAll("/", ":")}`,
137
+ id: `${import_chunk_JQMNABMK.SETTINGS_KEY}:${meta.id.replaceAll("/", ":")}`,
136
138
  type: "category",
137
139
  data: settings,
138
140
  properties: {
@@ -143,4 +145,4 @@ var app_graph_builder_default = (context) => (0, import_chunk_I3CJYEBC.contribut
143
145
  }
144
146
  })
145
147
  ]);
146
- //# sourceMappingURL=app-graph-builder-Z45FKS52.cjs.map
148
+ //# sourceMappingURL=app-graph-builder-43JOK25K.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/plugin-settings/app-graph-builder.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { createExtension, type Node } from '@dxos/app-graph';\nimport { type SettingsStore, type SettingsValue } from '@dxos/local-storage';\nimport { isNonNullable } from '@dxos/util';\n\nimport { SETTINGS_ID, SETTINGS_KEY, SETTINGS_PLUGIN, SettingsAction } from './actions';\nimport { Capabilities } from '../common';\nimport { contributes, type PluginMeta, type PluginsContext } from '../core';\nimport { createIntent } from '../plugin-intent';\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${SETTINGS_PLUGIN}/action`,\n filter: (node): node is Node<null> => node.id === 'root',\n actions: () => [\n {\n id: SETTINGS_PLUGIN,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n await dispatch(createIntent(SettingsAction.Open));\n },\n properties: {\n label: ['open settings label', { ns: SETTINGS_PLUGIN }],\n icon: 'ph--gear--regular',\n disposition: 'menu',\n keyBinding: {\n macos: 'meta+,',\n windows: 'alt+,',\n },\n },\n },\n ],\n }),\n createExtension({\n id: `${SETTINGS_PLUGIN}/core`,\n filter: (node): node is Node<null> => node.id === 'root',\n connector: () => [\n {\n id: SETTINGS_ID,\n type: SETTINGS_PLUGIN,\n properties: {\n label: ['app settings label', { ns: SETTINGS_PLUGIN }],\n icon: 'ph--gear--regular',\n disposition: 'pin-end',\n position: 'hoist',\n testId: 'treeView.appSettings',\n },\n },\n ],\n }),\n createExtension({\n id: `${SETTINGS_PLUGIN}/core-plugins`,\n filter: (node): node is Node<null> => node.id === SETTINGS_ID,\n connector: () => {\n const manager = context.requestCapability(Capabilities.PluginManager);\n const [settingsStore] = context.requestCapabilities(Capabilities.SettingsStore);\n return [\n ...manager.plugins\n .filter((plugin) => manager.core.includes(plugin.meta.id))\n .map((plugin): [PluginMeta, SettingsStore<SettingsValue>] | null => {\n const settings = settingsStore?.getStore(plugin.meta.id);\n if (!settings) {\n return null;\n }\n\n return [plugin.meta, settings];\n })\n .filter(isNonNullable)\n .map(([meta, settings]) => ({\n id: `${SETTINGS_KEY}:${meta.id.replaceAll('/', ':')}`,\n type: 'category',\n data: settings,\n properties: {\n label: meta.name ?? meta.id,\n icon: meta.icon ?? 'ph--circle--regular',\n },\n })),\n\n {\n id: `${SETTINGS_KEY}:custom-plugins`,\n type: 'category',\n properties: {\n label: ['custom plugins label', { ns: SETTINGS_PLUGIN }],\n icon: 'ph--squares-four--regular',\n role: 'branch',\n disposition: 'collection',\n },\n },\n ];\n },\n }),\n createExtension({\n id: `${SETTINGS_PLUGIN}/custom-plugins`,\n filter: (node): node is Node<null> => node.id === `${SETTINGS_KEY}:custom-plugins`,\n connector: () => {\n const manager = context.requestCapability(Capabilities.PluginManager);\n const [settingsStore] = context.requestCapabilities(Capabilities.SettingsStore);\n return manager.plugins\n .filter((plugin) => !manager.core.includes(plugin.meta.id))\n .map((plugin): [PluginMeta, SettingsStore<SettingsValue>] | null => {\n const settings = settingsStore?.getStore(plugin.meta.id);\n if (!settings) {\n return null;\n }\n\n return [plugin.meta, settings];\n })\n .filter(isNonNullable)\n .map(([meta, settings]) => ({\n id: `${SETTINGS_KEY}:${meta.id.replaceAll('/', ':')}`,\n type: 'category',\n data: settings,\n properties: {\n label: meta.name ?? meta.id,\n icon: meta.icon ?? 'ph--circle--regular',\n },\n }));\n },\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,uBAA2C;AAE3C,kBAA8B;AAO9B,IAAA,4BAAe,CAACA,gBACdC,mCAAYC,mCAAaC,iBAAiB;MACxCC,kCAAgB;IACdC,IAAI,GAAGC,qCAAAA;IACPC,QAAQ,CAACC,SAA6BA,KAAKH,OAAO;IAClDI,SAAS,MAAM;MACb;QACEJ,IAAIC;QACJI,MAAM,YAAA;AACJ,gBAAM,EAAEC,iBAAiBC,SAAQ,IAAKZ,QAAQa,kBAAkBX,mCAAaY,gBAAgB;AAC7F,gBAAMF,aAASG,oCAAaC,qCAAeC,IAAI,CAAA;QACjD;QACAC,YAAY;UACVC,OAAO;YAAC;YAAuB;cAAEC,IAAId;YAAgB;;UACrDe,MAAM;UACNC,aAAa;UACbC,YAAY;YACVC,OAAO;YACPC,SAAS;UACX;QACF;MACF;;EAEJ,CAAA;MACArB,kCAAgB;IACdC,IAAI,GAAGC,qCAAAA;IACPC,QAAQ,CAACC,SAA6BA,KAAKH,OAAO;IAClDqB,WAAW,MAAM;MACf;QACErB,IAAIsB;QACJC,MAAMtB;QACNY,YAAY;UACVC,OAAO;YAAC;YAAsB;cAAEC,IAAId;YAAgB;;UACpDe,MAAM;UACNC,aAAa;UACbO,UAAU;UACVC,QAAQ;QACV;MACF;;EAEJ,CAAA;MACA1B,kCAAgB;IACdC,IAAI,GAAGC,qCAAAA;IACPC,QAAQ,CAACC,SAA6BA,KAAKH,OAAOsB;IAClDD,WAAW,MAAA;AACT,YAAMK,UAAU/B,QAAQa,kBAAkBX,mCAAa8B,aAAa;AACpE,YAAM,CAACC,aAAAA,IAAiBjC,QAAQkC,oBAAoBhC,mCAAaiC,aAAa;AAC9E,aAAO;WACFJ,QAAQK,QACR7B,OAAO,CAAC8B,WAAWN,QAAQO,KAAKC,SAASF,OAAOG,KAAKnC,EAAE,CAAA,EACvDoC,IAAI,CAACJ,WAAAA;AACJ,gBAAMK,WAAWT,eAAeU,SAASN,OAAOG,KAAKnC,EAAE;AACvD,cAAI,CAACqC,UAAU;AACb,mBAAO;UACT;AAEA,iBAAO;YAACL,OAAOG;YAAME;;QACvB,CAAA,EACCnC,OAAOqC,yBAAAA,EACPH,IAAI,CAAC,CAACD,MAAME,QAAAA,OAAe;UAC1BrC,IAAI,GAAGwC,kCAAAA,IAAgBL,KAAKnC,GAAGyC,WAAW,KAAK,GAAA,CAAA;UAC/ClB,MAAM;UACNlB,MAAMgC;UACNxB,YAAY;YACVC,OAAOqB,KAAKO,QAAQP,KAAKnC;YACzBgB,MAAMmB,KAAKnB,QAAQ;UACrB;QACF,EAAA;QAEF;UACEhB,IAAI,GAAGwC,kCAAAA;UACPjB,MAAM;UACNV,YAAY;YACVC,OAAO;cAAC;cAAwB;gBAAEC,IAAId;cAAgB;;YACtDe,MAAM;YACN2B,MAAM;YACN1B,aAAa;UACf;QACF;;IAEJ;EACF,CAAA;MACAlB,kCAAgB;IACdC,IAAI,GAAGC,qCAAAA;IACPC,QAAQ,CAACC,SAA6BA,KAAKH,OAAO,GAAGwC,kCAAAA;IACrDnB,WAAW,MAAA;AACT,YAAMK,UAAU/B,QAAQa,kBAAkBX,mCAAa8B,aAAa;AACpE,YAAM,CAACC,aAAAA,IAAiBjC,QAAQkC,oBAAoBhC,mCAAaiC,aAAa;AAC9E,aAAOJ,QAAQK,QACZ7B,OAAO,CAAC8B,WAAW,CAACN,QAAQO,KAAKC,SAASF,OAAOG,KAAKnC,EAAE,CAAA,EACxDoC,IAAI,CAACJ,WAAAA;AACJ,cAAMK,WAAWT,eAAeU,SAASN,OAAOG,KAAKnC,EAAE;AACvD,YAAI,CAACqC,UAAU;AACb,iBAAO;QACT;AAEA,eAAO;UAACL,OAAOG;UAAME;;MACvB,CAAA,EACCnC,OAAOqC,yBAAAA,EACPH,IAAI,CAAC,CAACD,MAAME,QAAAA,OAAe;QAC1BrC,IAAI,GAAGwC,kCAAAA,IAAgBL,KAAKnC,GAAGyC,WAAW,KAAK,GAAA,CAAA;QAC/ClB,MAAM;QACNlB,MAAMgC;QACNxB,YAAY;UACVC,OAAOqB,KAAKO,QAAQP,KAAKnC;UACzBgB,MAAMmB,KAAKnB,QAAQ;QACrB;MACF,EAAA;IACJ;EACF,CAAA;CACD;",
6
+ "names": ["context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "SETTINGS_PLUGIN", "filter", "node", "actions", "data", "dispatchPromise", "dispatch", "requestCapability", "IntentDispatcher", "createIntent", "SettingsAction", "Open", "properties", "label", "ns", "icon", "disposition", "keyBinding", "macos", "windows", "connector", "SETTINGS_ID", "type", "position", "testId", "manager", "PluginManager", "settingsStore", "requestCapabilities", "SettingsStore", "plugins", "plugin", "core", "includes", "meta", "map", "settings", "getStore", "isNonNullable", "SETTINGS_KEY", "replaceAll", "name", "role"]
7
+ }
@@ -16,15 +16,15 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var chunk_JUSEAFDU_exports = {};
20
- __export(chunk_JUSEAFDU_exports, {
19
+ var chunk_JQMNABMK_exports = {};
20
+ __export(chunk_JQMNABMK_exports, {
21
21
  SETTINGS_ACTION: () => SETTINGS_ACTION,
22
22
  SETTINGS_ID: () => SETTINGS_ID,
23
23
  SETTINGS_KEY: () => SETTINGS_KEY,
24
24
  SETTINGS_PLUGIN: () => SETTINGS_PLUGIN,
25
25
  SettingsAction: () => SettingsAction
26
26
  });
27
- module.exports = __toCommonJS(chunk_JUSEAFDU_exports);
27
+ module.exports = __toCommonJS(chunk_JQMNABMK_exports);
28
28
  var import_effect = require("effect");
29
29
  var SETTINGS_PLUGIN = "dxos.org/plugin/settings";
30
30
  var SETTINGS_ACTION = `${SETTINGS_PLUGIN}/action`;
@@ -55,4 +55,4 @@ var SettingsAction;
55
55
  SETTINGS_PLUGIN,
56
56
  SettingsAction
57
57
  });
58
- //# sourceMappingURL=chunk-JUSEAFDU.cjs.map
58
+ //# sourceMappingURL=chunk-JQMNABMK.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/plugin-settings/actions.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nexport const SETTINGS_PLUGIN = 'dxos.org/plugin/settings';\nexport const SETTINGS_ACTION = `${SETTINGS_PLUGIN}/action`;\n// TODO(wittjosiah): This is a hack to prevent the previous deck from being set for pinned items.\n// Ideally this should be worked into the data model in a generic way.\nexport const SETTINGS_ID = '!dxos:settings';\nexport const SETTINGS_KEY = 'settings';\n\nexport namespace SettingsAction {\n export class Open extends Schema.TaggedClass<Open>()(`${SETTINGS_ACTION}/open`, {\n input: Schema.Struct({\n plugin: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n }) {}\n\n export class OpenPluginRegistry extends Schema.TaggedClass<OpenPluginRegistry>()(\n `${SETTINGS_ACTION}/open-plugin-registry`,\n {\n input: Schema.Void,\n output: Schema.Void,\n },\n ) {}\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,oBAAuB;AAEhB,IAAMA,kBAAkB;AACxB,IAAMC,kBAAkB,GAAGD,eAAAA;AAG3B,IAAME,cAAc;AACpB,IAAMC,eAAe;;UAEXC,iBAAAA;EACR,MAAMC,aAAaC,qBAAOC,YAAW,EAAS,GAAGN,eAAAA,SAAwB;IAC9EO,OAAOF,qBAAOG,OAAO;MACnBC,QAAQJ,qBAAOK,SAASL,qBAAOM,MAAM;IACvC,CAAA;IACAC,QAAQP,qBAAOQ;EACjB,CAAA,EAAA;EAAI;kBALST,OAAAA;EAON,MAAMU,2BAA2BT,qBAAOC,YAAW,EACxD,GAAGN,eAAAA,yBACH;IACEO,OAAOF,qBAAOQ;IACdD,QAAQP,qBAAOQ;EACjB,CAAA,EAAA;EACC;kBANUC,qBAAAA;AAOf,GAfiBX,mBAAAA,iBAAAA,CAAAA,EAAAA;",
6
+ "names": ["SETTINGS_PLUGIN", "SETTINGS_ACTION", "SETTINGS_ID", "SETTINGS_KEY", "SettingsAction", "Open", "Schema", "TaggedClass", "input", "Struct", "plugin", "optional", "String", "output", "Void", "OpenPluginRegistry"]
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 chunk_I3CJYEBC_exports = {};
30
- __export(chunk_I3CJYEBC_exports, {
29
+ var chunk_LPUJODXZ_exports = {};
30
+ __export(chunk_LPUJODXZ_exports, {
31
31
  Capabilities: () => Capabilities,
32
32
  CollaborationActions: () => CollaborationActions,
33
33
  Events: () => Events,
@@ -67,7 +67,7 @@ __export(chunk_I3CJYEBC_exports, {
67
67
  lazy: () => lazy,
68
68
  oneOf: () => oneOf
69
69
  });
70
- module.exports = __toCommonJS(chunk_I3CJYEBC_exports);
70
+ module.exports = __toCommonJS(chunk_LPUJODXZ_exports);
71
71
  var import_effect = require("effect");
72
72
  var import_live_object = require("@dxos/live-object");
73
73
  var import_log = require("@dxos/log");
@@ -979,7 +979,7 @@ var IntentPlugin = () => definePlugin({
979
979
  activatesAfter: [
980
980
  Events.DispatcherReady
981
981
  ],
982
- activate: lazy(() => import("./intent-dispatcher-FQPJNKIZ.cjs"))
982
+ activate: lazy(() => import("./intent-dispatcher-XXFKXEHF.cjs"))
983
983
  })
984
984
  ]);
985
985
  var LAYOUT_PLUGIN = "dxos.org/plugin/layout";
@@ -1513,4 +1513,4 @@ var intent_dispatcher_default = (context) => {
1513
1513
  lazy,
1514
1514
  oneOf
1515
1515
  });
1516
- //# sourceMappingURL=chunk-I3CJYEBC.cjs.map
1516
+ //# sourceMappingURL=chunk-LPUJODXZ.cjs.map