@dxos/app-framework 0.8.2-staging.7ac8446 → 0.8.2

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 (331) hide show
  1. package/dist/lib/browser/{app-graph-builder-576BHZC7.mjs → app-graph-builder-DYEAGZPS.mjs} +23 -23
  2. package/dist/lib/browser/app-graph-builder-DYEAGZPS.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-6AVTZPMT.mjs → chunk-5GE2ERNU.mjs} +340 -275
  4. package/dist/lib/browser/chunk-5GE2ERNU.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-SFPT4Z2C.mjs → chunk-WWEJRWFX.mjs} +10 -10
  6. package/dist/lib/browser/chunk-WWEJRWFX.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-PPIBZ5N4.mjs → chunk-ZMXJV64L.mjs} +123 -63
  8. package/dist/lib/browser/chunk-ZMXJV64L.mjs.map +7 -0
  9. package/dist/lib/browser/index.mjs +12 -10
  10. package/dist/lib/browser/index.mjs.map +1 -1
  11. package/dist/lib/browser/{intent-dispatcher-3Q67MHZZ.mjs → intent-dispatcher-ELZN5EM7.mjs} +2 -2
  12. package/dist/lib/browser/{intent-resolver-O763LCLG.mjs → intent-resolver-SGWLINTO.mjs} +3 -3
  13. package/dist/lib/browser/meta.json +1 -1
  14. package/dist/lib/browser/{store-URSN7DZI.mjs → store-YIU6IPZ2.mjs} +7 -6
  15. package/dist/lib/browser/store-YIU6IPZ2.mjs.map +7 -0
  16. package/dist/lib/browser/testing/index.mjs +30 -14
  17. package/dist/lib/browser/testing/index.mjs.map +3 -3
  18. package/dist/lib/browser/worker.mjs +5 -3
  19. package/dist/lib/node/app-graph-builder-GBLISL7L.cjs +146 -0
  20. package/dist/lib/node/app-graph-builder-GBLISL7L.cjs.map +7 -0
  21. package/dist/lib/node/{chunk-JUSEAFDU.cjs → chunk-G774ASXO.cjs} +5 -5
  22. package/dist/lib/node/chunk-G774ASXO.cjs.map +7 -0
  23. package/dist/lib/node/{chunk-YIFTVCOR.cjs → chunk-HIVITTZD.cjs} +319 -255
  24. package/dist/lib/node/chunk-HIVITTZD.cjs.map +7 -0
  25. package/dist/lib/node/{chunk-YNTKVTVX.cjs → chunk-Z2PMVDJ5.cjs} +155 -95
  26. package/dist/lib/node/chunk-Z2PMVDJ5.cjs.map +7 -0
  27. package/dist/lib/node/index.cjs +82 -80
  28. package/dist/lib/node/index.cjs.map +1 -1
  29. package/dist/lib/node/{intent-dispatcher-H334XLFD.cjs → intent-dispatcher-LFXZJTAS.cjs} +8 -8
  30. package/dist/lib/node/{intent-dispatcher-H334XLFD.cjs.map → intent-dispatcher-LFXZJTAS.cjs.map} +2 -2
  31. package/dist/lib/node/{intent-resolver-3F4POWAM.cjs → intent-resolver-EPSFTHL6.cjs} +12 -12
  32. package/dist/lib/node/meta.json +1 -1
  33. package/dist/lib/node/{store-OFDHTDCB.cjs → store-CVVRXUTH.cjs} +10 -9
  34. package/dist/lib/node/store-CVVRXUTH.cjs.map +7 -0
  35. package/dist/lib/node/testing/index.cjs +34 -17
  36. package/dist/lib/node/testing/index.cjs.map +3 -3
  37. package/dist/lib/node/worker.cjs +40 -38
  38. package/dist/lib/node/worker.cjs.map +2 -2
  39. package/dist/lib/node-esm/{app-graph-builder-VYKLSMSZ.mjs → app-graph-builder-LUBDEIT6.mjs} +23 -23
  40. package/dist/lib/node-esm/app-graph-builder-LUBDEIT6.mjs.map +7 -0
  41. package/dist/lib/node-esm/{chunk-R6A7Z4LU.mjs → chunk-6IKYKERU.mjs} +123 -63
  42. package/dist/lib/node-esm/chunk-6IKYKERU.mjs.map +7 -0
  43. package/dist/lib/node-esm/{chunk-PHOUQACM.mjs → chunk-I6BVZMAH.mjs} +10 -10
  44. package/dist/lib/node-esm/chunk-I6BVZMAH.mjs.map +7 -0
  45. package/dist/lib/node-esm/{chunk-AHKIPS2L.mjs → chunk-Z2ZHH4HN.mjs} +340 -275
  46. package/dist/lib/node-esm/chunk-Z2ZHH4HN.mjs.map +7 -0
  47. package/dist/lib/node-esm/index.mjs +12 -10
  48. package/dist/lib/node-esm/index.mjs.map +1 -1
  49. package/dist/lib/node-esm/{intent-dispatcher-YDE2ONZA.mjs → intent-dispatcher-A2JCMWRD.mjs} +2 -2
  50. package/dist/lib/node-esm/{intent-resolver-LAGJ7LXM.mjs → intent-resolver-5C4O43GK.mjs} +3 -3
  51. package/dist/lib/node-esm/meta.json +1 -1
  52. package/dist/lib/node-esm/{store-EYSUVNCS.mjs → store-HRZXZ2D2.mjs} +7 -6
  53. package/dist/lib/node-esm/store-HRZXZ2D2.mjs.map +7 -0
  54. package/dist/lib/node-esm/testing/index.mjs +30 -14
  55. package/dist/lib/node-esm/testing/index.mjs.map +3 -3
  56. package/dist/lib/node-esm/worker.mjs +5 -3
  57. package/dist/types/src/App.d.ts +3 -1
  58. package/dist/types/src/App.d.ts.map +1 -1
  59. package/dist/types/src/common/capabilities.d.ts +40 -222
  60. package/dist/types/src/common/capabilities.d.ts.map +1 -1
  61. package/dist/types/src/common/collaboration.d.ts +19 -0
  62. package/dist/types/src/common/collaboration.d.ts.map +1 -0
  63. package/dist/types/src/common/events.d.ts.map +1 -1
  64. package/dist/types/src/common/file.d.ts +7 -7
  65. package/dist/types/src/common/file.d.ts.map +1 -1
  66. package/dist/types/src/common/index.d.ts +1 -0
  67. package/dist/types/src/common/index.d.ts.map +1 -1
  68. package/dist/types/src/common/layout.d.ts +166 -158
  69. package/dist/types/src/common/layout.d.ts.map +1 -1
  70. package/dist/types/src/common/surface.d.ts.map +1 -1
  71. package/dist/types/src/common/translations.d.ts +7 -7
  72. package/dist/types/src/common/translations.d.ts.map +1 -1
  73. package/dist/types/src/core/capabilities.d.ts +33 -15
  74. package/dist/types/src/core/capabilities.d.ts.map +1 -1
  75. package/dist/types/src/core/events.d.ts +4 -1
  76. package/dist/types/src/core/events.d.ts.map +1 -1
  77. package/dist/types/src/core/manager.d.ts +14 -11
  78. package/dist/types/src/core/manager.d.ts.map +1 -1
  79. package/dist/types/src/core/plugin.d.ts +4 -3
  80. package/dist/types/src/core/plugin.d.ts.map +1 -1
  81. package/dist/types/src/helpers.d.ts.map +1 -1
  82. package/dist/types/src/playground/generator/generator.d.ts.map +1 -1
  83. package/dist/types/src/playground/logger/schema.d.ts +6 -6
  84. package/dist/types/src/playground/logger/schema.d.ts.map +1 -1
  85. package/dist/types/src/playground/playground.stories.d.ts.map +1 -1
  86. package/dist/types/src/plugin-intent/actions.d.ts +14 -14
  87. package/dist/types/src/plugin-intent/actions.d.ts.map +1 -1
  88. package/dist/types/src/plugin-intent/intent-dispatcher.d.ts +29 -3
  89. package/dist/types/src/plugin-intent/intent-dispatcher.d.ts.map +1 -1
  90. package/dist/types/src/plugin-intent/intent.d.ts +14 -20
  91. package/dist/types/src/plugin-intent/intent.d.ts.map +1 -1
  92. package/dist/types/src/plugin-settings/actions.d.ts +10 -10
  93. package/dist/types/src/plugin-settings/actions.d.ts.map +1 -1
  94. package/dist/types/src/plugin-settings/app-graph-builder.d.ts +2 -195
  95. package/dist/types/src/plugin-settings/app-graph-builder.d.ts.map +1 -1
  96. package/dist/types/src/plugin-settings/store.d.ts +2 -2
  97. package/dist/types/src/plugin-settings/store.d.ts.map +1 -1
  98. package/dist/types/src/react/ErrorBoundary.d.ts +1 -1
  99. package/dist/types/src/react/ErrorBoundary.d.ts.map +1 -1
  100. package/dist/types/src/react/IntentContext.d.ts.map +1 -1
  101. package/dist/types/src/react/Surface.d.ts +2 -2
  102. package/dist/types/src/react/Surface.d.ts.map +1 -1
  103. package/dist/types/src/react/useCapabilities.d.ts +2 -2
  104. package/dist/types/src/react/useCapabilities.d.ts.map +1 -1
  105. package/dist/types/src/react/useIntentResolver.d.ts.map +1 -1
  106. package/dist/types/src/testing/withPluginManager.d.ts +6 -2
  107. package/dist/types/src/testing/withPluginManager.d.ts.map +1 -1
  108. package/dist/types/src/testing/withPluginManager.stories.d.ts.map +1 -1
  109. package/dist/types/tsconfig.tsbuildinfo +1 -1
  110. package/package.json +32 -21
  111. package/project.json +2 -1
  112. package/src/App.tsx +98 -48
  113. package/src/common/capabilities.ts +18 -7
  114. package/src/common/collaboration.ts +21 -0
  115. package/src/common/file.ts +7 -7
  116. package/src/common/index.ts +1 -0
  117. package/src/common/layout.ts +167 -128
  118. package/src/common/translations.ts +7 -7
  119. package/src/core/capabilities.test.ts +55 -36
  120. package/src/core/capabilities.ts +84 -60
  121. package/src/core/events.ts +4 -1
  122. package/src/core/manager.test.ts +22 -22
  123. package/src/core/manager.ts +34 -26
  124. package/src/core/plugin.ts +4 -3
  125. package/src/playground/generator/generator.ts +4 -4
  126. package/src/playground/logger/schema.ts +5 -5
  127. package/src/playground/playground.stories.tsx +13 -9
  128. package/src/plugin-intent/actions.ts +9 -9
  129. package/src/plugin-intent/intent-dispatcher.test.ts +23 -42
  130. package/src/plugin-intent/intent-dispatcher.ts +25 -13
  131. package/src/plugin-intent/intent.ts +22 -20
  132. package/src/plugin-settings/actions.ts +8 -8
  133. package/src/plugin-settings/app-graph-builder.ts +129 -94
  134. package/src/plugin-settings/store.ts +20 -17
  135. package/src/react/ErrorBoundary.tsx +3 -3
  136. package/src/react/Surface.stories.tsx +1 -1
  137. package/src/react/Surface.tsx +3 -3
  138. package/src/react/useCapabilities.ts +9 -19
  139. package/src/testing/withPluginManager.stories.tsx +0 -1
  140. package/src/testing/withPluginManager.tsx +35 -16
  141. package/tsconfig.json +1 -53
  142. package/typedoc/.nojekyll +1 -0
  143. package/typedoc/assets/hierarchy.js +1 -0
  144. package/typedoc/assets/highlight.css +106 -0
  145. package/typedoc/assets/icons.js +18 -0
  146. package/typedoc/assets/icons.svg +1 -0
  147. package/typedoc/assets/main.js +60 -0
  148. package/typedoc/assets/navigation.js +1 -0
  149. package/typedoc/assets/search.js +1 -0
  150. package/typedoc/assets/style.css +1640 -0
  151. package/typedoc/classes/CollaborationActions.InsertContent.html +421 -0
  152. package/typedoc/classes/ErrorBoundary.html +125 -0
  153. package/typedoc/classes/IntentAction.ShowUndo.html +227 -0
  154. package/typedoc/classes/IntentAction.Track.html +266 -0
  155. package/typedoc/classes/LayoutAction.AddToast.html +265 -0
  156. package/typedoc/classes/LayoutAction.Close.html +382 -0
  157. package/typedoc/classes/LayoutAction.Expose.html +265 -0
  158. package/typedoc/classes/LayoutAction.Open.html +1123 -0
  159. package/typedoc/classes/LayoutAction.RevertWorkspace.html +343 -0
  160. package/typedoc/classes/LayoutAction.ScrollIntoView.html +460 -0
  161. package/typedoc/classes/LayoutAction.Set.html +460 -0
  162. package/typedoc/classes/LayoutAction.SetLayoutMode.html +499 -0
  163. package/typedoc/classes/LayoutAction.SwitchWorkspace.html +265 -0
  164. package/typedoc/classes/LayoutAction.UpdateComplementary.html +616 -0
  165. package/typedoc/classes/LayoutAction.UpdateDialog.html +1123 -0
  166. package/typedoc/classes/LayoutAction.UpdateLayout.html +461 -0
  167. package/typedoc/classes/LayoutAction.UpdatePopover.html +1435 -0
  168. package/typedoc/classes/LayoutAction.UpdateSidebar.html +616 -0
  169. package/typedoc/classes/Plugin.html +6 -0
  170. package/typedoc/classes/PluginContext.html +38 -0
  171. package/typedoc/classes/PluginManager.html +43 -0
  172. package/typedoc/classes/PluginModule.html +18 -0
  173. package/typedoc/classes/SettingsAction.Open.html +226 -0
  174. package/typedoc/classes/SettingsAction.OpenPluginRegistry.html +265 -0
  175. package/typedoc/functions/Events.createStateEvent.html +2 -0
  176. package/typedoc/functions/IntentPlugin.html +1 -0
  177. package/typedoc/functions/SettingsPlugin.html +1 -0
  178. package/typedoc/functions/allOf.html +2 -0
  179. package/typedoc/functions/chain.html +3 -0
  180. package/typedoc/functions/contributes.html +2 -0
  181. package/typedoc/functions/createDispatcher.html +3 -0
  182. package/typedoc/functions/createIntent.html +6 -0
  183. package/typedoc/functions/createResolver.html +2 -0
  184. package/typedoc/functions/createSurface.html +2 -0
  185. package/typedoc/functions/defineCapability.html +2 -0
  186. package/typedoc/functions/defineEvent.html +2 -0
  187. package/typedoc/functions/defineModule.html +2 -0
  188. package/typedoc/functions/definePlugin.html +2 -0
  189. package/typedoc/functions/eventKey.html +2 -0
  190. package/typedoc/functions/getEvents.html +2 -0
  191. package/typedoc/functions/isAllOf.html +2 -0
  192. package/typedoc/functions/isOneOf.html +2 -0
  193. package/typedoc/functions/isSurfaceAvailable.html +2 -0
  194. package/typedoc/functions/lazy.html +2 -0
  195. package/typedoc/functions/oneOf.html +2 -0
  196. package/typedoc/functions/useApp.html +6 -0
  197. package/typedoc/functions/useAppGraph.html +1 -0
  198. package/typedoc/functions/useCapabilities.html +3 -0
  199. package/typedoc/functions/useCapability.html +4 -0
  200. package/typedoc/functions/useIntentDispatcher.html +1 -0
  201. package/typedoc/functions/useIntentResolver.html +1 -0
  202. package/typedoc/functions/useLayout.html +1 -0
  203. package/typedoc/functions/usePluginManager.html +2 -0
  204. package/typedoc/hierarchy.html +1 -0
  205. package/typedoc/index.html +16 -0
  206. package/typedoc/interfaces/LayoutAction.Toast.html +10 -0
  207. package/typedoc/media/LICENSE +8 -0
  208. package/typedoc/modules/Capabilities.html +1 -0
  209. package/typedoc/modules/CollaborationActions.html +1 -0
  210. package/typedoc/modules/Events.html +1 -0
  211. package/typedoc/modules/IntentAction.html +1 -0
  212. package/typedoc/modules/LayoutAction.html +2 -0
  213. package/typedoc/modules/SettingsAction.html +1 -0
  214. package/typedoc/modules.html +1 -0
  215. package/typedoc/types/ActivationEvent.html +8 -0
  216. package/typedoc/types/ActivationEvents.html +2 -0
  217. package/typedoc/types/AnyCapability.html +1 -0
  218. package/typedoc/types/AnyIntent.html +1 -0
  219. package/typedoc/types/AnyIntentChain.html +1 -0
  220. package/typedoc/types/AnyIntentEffectResult.html +1 -0
  221. package/typedoc/types/AnyIntentResolver.html +1 -0
  222. package/typedoc/types/AnyIntentResult.html +1 -0
  223. package/typedoc/types/Capabilities.FileUploader.html +1 -0
  224. package/typedoc/types/Capabilities.IntentResolver.html +1 -0
  225. package/typedoc/types/Capabilities.Layout.html +1 -0
  226. package/typedoc/types/Capabilities.Metadata.html +1 -0
  227. package/typedoc/types/Capabilities.ReactContext.html +1 -0
  228. package/typedoc/types/Capabilities.ReactRoot.html +1 -0
  229. package/typedoc/types/Capabilities.ReactSurface.html +1 -0
  230. package/typedoc/types/Capabilities.Settings.html +4 -0
  231. package/typedoc/types/Capability.html +9 -0
  232. package/typedoc/types/CreateAppOptions.html +10 -0
  233. package/typedoc/types/FileInfo.html +1 -0
  234. package/typedoc/types/Intent.html +10 -0
  235. package/typedoc/types/IntentChain.html +6 -0
  236. package/typedoc/types/IntentContext.html +5 -0
  237. package/typedoc/types/IntentData.html +1 -0
  238. package/typedoc/types/IntentDispatcher.html +2 -0
  239. package/typedoc/types/IntentDispatcherResult.html +2 -0
  240. package/typedoc/types/IntentEffectDefinition.html +2 -0
  241. package/typedoc/types/IntentEffectResult.html +15 -0
  242. package/typedoc/types/IntentParams.html +3 -0
  243. package/typedoc/types/IntentResolver.html +2 -0
  244. package/typedoc/types/IntentResultData.html +1 -0
  245. package/typedoc/types/IntentSchema.html +1 -0
  246. package/typedoc/types/IntentUndo.html +2 -0
  247. package/typedoc/types/InterfaceDef.html +4 -0
  248. package/typedoc/types/Label.html +1 -0
  249. package/typedoc/types/NodeSerializer.html +8 -0
  250. package/typedoc/types/PluginManagerOptions.html +6 -0
  251. package/typedoc/types/PluginMeta.html +21 -0
  252. package/typedoc/types/PromiseIntentDispatcher.html +2 -0
  253. package/typedoc/types/PromiseIntentUndo.html +2 -0
  254. package/typedoc/types/Resource.html +1 -0
  255. package/typedoc/types/ResourceKey.html +1 -0
  256. package/typedoc/types/ResourceLanguage.html +1 -0
  257. package/typedoc/types/SerializedNode.html +4 -0
  258. package/typedoc/types/SurfaceComponent.html +2 -0
  259. package/typedoc/types/SurfaceDefinition.html +2 -0
  260. package/typedoc/types/SurfaceProps.html +4 -0
  261. package/typedoc/variables/Capabilities.AnchorSort.html +1 -0
  262. package/typedoc/variables/Capabilities.AppGraph.html +1 -0
  263. package/typedoc/variables/Capabilities.AppGraphBuilder.html +1 -0
  264. package/typedoc/variables/Capabilities.AppGraphSerializer.html +1 -0
  265. package/typedoc/variables/Capabilities.ArtifactDefinition.html +1 -0
  266. package/typedoc/variables/Capabilities.FileUploader.html +1 -0
  267. package/typedoc/variables/Capabilities.IntentDispatcher.html +1 -0
  268. package/typedoc/variables/Capabilities.IntentResolver.html +1 -0
  269. package/typedoc/variables/Capabilities.Layout.html +1 -0
  270. package/typedoc/variables/Capabilities.Metadata.html +1 -0
  271. package/typedoc/variables/Capabilities.Null.html +1 -0
  272. package/typedoc/variables/Capabilities.PluginManager.html +1 -0
  273. package/typedoc/variables/Capabilities.ReactContext.html +1 -0
  274. package/typedoc/variables/Capabilities.ReactRoot.html +1 -0
  275. package/typedoc/variables/Capabilities.ReactSurface.html +1 -0
  276. package/typedoc/variables/Capabilities.RxRegistry.html +1 -0
  277. package/typedoc/variables/Capabilities.Settings.html +1 -0
  278. package/typedoc/variables/Capabilities.SettingsStore.html +1 -0
  279. package/typedoc/variables/Capabilities.Tools.html +1 -0
  280. package/typedoc/variables/Capabilities.Translations.html +1 -0
  281. package/typedoc/variables/Events.AppGraphReady.html +2 -0
  282. package/typedoc/variables/Events.DispatcherReady.html +2 -0
  283. package/typedoc/variables/Events.LayoutReady.html +1 -0
  284. package/typedoc/variables/Events.SettingsReady.html +2 -0
  285. package/typedoc/variables/Events.SetupAppGraph.html +2 -0
  286. package/typedoc/variables/Events.SetupArtifactDefinition.html +2 -0
  287. package/typedoc/variables/Events.SetupIntentResolver.html +2 -0
  288. package/typedoc/variables/Events.SetupMetadata.html +2 -0
  289. package/typedoc/variables/Events.SetupReactSurface.html +2 -0
  290. package/typedoc/variables/Events.SetupSettings.html +2 -0
  291. package/typedoc/variables/Events.SetupTranslations.html +2 -0
  292. package/typedoc/variables/Events.Startup.html +2 -0
  293. package/typedoc/variables/FileInfoSchema.html +1 -0
  294. package/typedoc/variables/INTENT_ACTION.html +1 -0
  295. package/typedoc/variables/INTENT_PLUGIN.html +1 -0
  296. package/typedoc/variables/LAYOUT_ACTION.html +1 -0
  297. package/typedoc/variables/LAYOUT_PLUGIN.html +1 -0
  298. package/typedoc/variables/Label.html +1 -0
  299. package/typedoc/variables/LayoutAction.Toast.html +1 -0
  300. package/typedoc/variables/LayoutAction.UPDATE_LAYOUT.html +1 -0
  301. package/typedoc/variables/PluginManagerProvider.html +2 -0
  302. package/typedoc/variables/Resource.html +2 -0
  303. package/typedoc/variables/ResourceKey.html +1 -0
  304. package/typedoc/variables/ResourceLanguage.html +1 -0
  305. package/typedoc/variables/SETTINGS_ACTION.html +1 -0
  306. package/typedoc/variables/SETTINGS_ID.html +1 -0
  307. package/typedoc/variables/SETTINGS_KEY.html +1 -0
  308. package/typedoc/variables/SETTINGS_PLUGIN.html +1 -0
  309. package/typedoc/variables/Surface.html +2 -0
  310. package/typedoc/variables/defaultFileTypes.html +1 -0
  311. package/dist/lib/browser/app-graph-builder-576BHZC7.mjs.map +0 -7
  312. package/dist/lib/browser/chunk-6AVTZPMT.mjs.map +0 -7
  313. package/dist/lib/browser/chunk-PPIBZ5N4.mjs.map +0 -7
  314. package/dist/lib/browser/chunk-SFPT4Z2C.mjs.map +0 -7
  315. package/dist/lib/browser/store-URSN7DZI.mjs.map +0 -7
  316. package/dist/lib/node/app-graph-builder-JZCSKYPY.cjs +0 -146
  317. package/dist/lib/node/app-graph-builder-JZCSKYPY.cjs.map +0 -7
  318. package/dist/lib/node/chunk-JUSEAFDU.cjs.map +0 -7
  319. package/dist/lib/node/chunk-YIFTVCOR.cjs.map +0 -7
  320. package/dist/lib/node/chunk-YNTKVTVX.cjs.map +0 -7
  321. package/dist/lib/node/store-OFDHTDCB.cjs.map +0 -7
  322. package/dist/lib/node-esm/app-graph-builder-VYKLSMSZ.mjs.map +0 -7
  323. package/dist/lib/node-esm/chunk-AHKIPS2L.mjs.map +0 -7
  324. package/dist/lib/node-esm/chunk-PHOUQACM.mjs.map +0 -7
  325. package/dist/lib/node-esm/chunk-R6A7Z4LU.mjs.map +0 -7
  326. package/dist/lib/node-esm/store-EYSUVNCS.mjs.map +0 -7
  327. /package/dist/lib/browser/{intent-dispatcher-3Q67MHZZ.mjs.map → intent-dispatcher-ELZN5EM7.mjs.map} +0 -0
  328. /package/dist/lib/browser/{intent-resolver-O763LCLG.mjs.map → intent-resolver-SGWLINTO.mjs.map} +0 -0
  329. /package/dist/lib/node/{intent-resolver-3F4POWAM.cjs.map → intent-resolver-EPSFTHL6.cjs.map} +0 -0
  330. /package/dist/lib/node-esm/{intent-dispatcher-YDE2ONZA.mjs.map → intent-dispatcher-A2JCMWRD.mjs.map} +0 -0
  331. /package/dist/lib/node-esm/{intent-resolver-LAGJ7LXM.mjs.map → intent-resolver-5C4O43GK.mjs.map} +0 -0
@@ -1,197 +1,4 @@
1
- import { type Node } from '@dxos/app-graph';
2
- import { type PluginsContext } from '../core';
3
- declare const _default: (context: PluginsContext) => import("..").Capability<Readonly<{
4
- id: string;
5
- position: import("@dxos/util").Position;
6
- resolver?: import("@dxos/app-graph").ResolverExtension;
7
- connector?: import("@dxos/app-graph").ConnectorExtension;
8
- relation?: import("@dxos/app-graph").Relation;
9
- type?: string;
10
- filter?: (node: Node) => boolean;
11
- }> | Readonly<{
12
- id: string;
13
- position: import("@dxos/util").Position;
14
- resolver?: import("@dxos/app-graph").ResolverExtension;
15
- connector?: import("@dxos/app-graph").ConnectorExtension;
16
- relation?: import("@dxos/app-graph").Relation;
17
- type?: string;
18
- filter?: (node: Node) => boolean;
19
- }>[] | (Readonly<{
20
- id: string;
21
- position: import("@dxos/util").Position;
22
- resolver?: import("@dxos/app-graph").ResolverExtension;
23
- connector?: import("@dxos/app-graph").ConnectorExtension;
24
- relation?: import("@dxos/app-graph").Relation;
25
- type?: string;
26
- filter?: (node: Node) => boolean;
27
- }> | Readonly<{
28
- id: string;
29
- position: import("@dxos/util").Position;
30
- resolver?: import("@dxos/app-graph").ResolverExtension;
31
- connector?: import("@dxos/app-graph").ConnectorExtension;
32
- relation?: import("@dxos/app-graph").Relation;
33
- type?: string;
34
- filter?: (node: Node) => boolean;
35
- }>[] | (Readonly<{
36
- id: string;
37
- position: import("@dxos/util").Position;
38
- resolver?: import("@dxos/app-graph").ResolverExtension;
39
- connector?: import("@dxos/app-graph").ConnectorExtension;
40
- relation?: import("@dxos/app-graph").Relation;
41
- type?: string;
42
- filter?: (node: Node) => boolean;
43
- }> | Readonly<{
44
- id: string;
45
- position: import("@dxos/util").Position;
46
- resolver?: import("@dxos/app-graph").ResolverExtension;
47
- connector?: import("@dxos/app-graph").ConnectorExtension;
48
- relation?: import("@dxos/app-graph").Relation;
49
- type?: string;
50
- filter?: (node: Node) => boolean;
51
- }>[] | (Readonly<{
52
- id: string;
53
- position: import("@dxos/util").Position;
54
- resolver?: import("@dxos/app-graph").ResolverExtension;
55
- connector?: import("@dxos/app-graph").ConnectorExtension;
56
- relation?: import("@dxos/app-graph").Relation;
57
- type?: string;
58
- filter?: (node: Node) => boolean;
59
- }> | Readonly<{
60
- id: string;
61
- position: import("@dxos/util").Position;
62
- resolver?: import("@dxos/app-graph").ResolverExtension;
63
- connector?: import("@dxos/app-graph").ConnectorExtension;
64
- relation?: import("@dxos/app-graph").Relation;
65
- type?: string;
66
- filter?: (node: Node) => boolean;
67
- }>[] | (Readonly<{
68
- id: string;
69
- position: import("@dxos/util").Position;
70
- resolver?: import("@dxos/app-graph").ResolverExtension;
71
- connector?: import("@dxos/app-graph").ConnectorExtension;
72
- relation?: import("@dxos/app-graph").Relation;
73
- type?: string;
74
- filter?: (node: Node) => boolean;
75
- }> | Readonly<{
76
- id: string;
77
- position: import("@dxos/util").Position;
78
- resolver?: import("@dxos/app-graph").ResolverExtension;
79
- connector?: import("@dxos/app-graph").ConnectorExtension;
80
- relation?: import("@dxos/app-graph").Relation;
81
- type?: string;
82
- filter?: (node: Node) => boolean;
83
- }>[] | (Readonly<{
84
- id: string;
85
- position: import("@dxos/util").Position;
86
- resolver?: import("@dxos/app-graph").ResolverExtension;
87
- connector?: import("@dxos/app-graph").ConnectorExtension;
88
- relation?: import("@dxos/app-graph").Relation;
89
- type?: string;
90
- filter?: (node: Node) => boolean;
91
- }> | Readonly<{
92
- id: string;
93
- position: import("@dxos/util").Position;
94
- resolver?: import("@dxos/app-graph").ResolverExtension;
95
- connector?: import("@dxos/app-graph").ConnectorExtension;
96
- relation?: import("@dxos/app-graph").Relation;
97
- type?: string;
98
- filter?: (node: Node) => boolean;
99
- }>[] | (Readonly<{
100
- id: string;
101
- position: import("@dxos/util").Position;
102
- resolver?: import("@dxos/app-graph").ResolverExtension;
103
- connector?: import("@dxos/app-graph").ConnectorExtension;
104
- relation?: import("@dxos/app-graph").Relation;
105
- type?: string;
106
- filter?: (node: Node) => boolean;
107
- }> | Readonly<{
108
- id: string;
109
- position: import("@dxos/util").Position;
110
- resolver?: import("@dxos/app-graph").ResolverExtension;
111
- connector?: import("@dxos/app-graph").ConnectorExtension;
112
- relation?: import("@dxos/app-graph").Relation;
113
- type?: string;
114
- filter?: (node: Node) => boolean;
115
- }>[] | (Readonly<{
116
- id: string;
117
- position: import("@dxos/util").Position;
118
- resolver?: import("@dxos/app-graph").ResolverExtension;
119
- connector?: import("@dxos/app-graph").ConnectorExtension;
120
- relation?: import("@dxos/app-graph").Relation;
121
- type?: string;
122
- filter?: (node: Node) => boolean;
123
- }> | Readonly<{
124
- id: string;
125
- position: import("@dxos/util").Position;
126
- resolver?: import("@dxos/app-graph").ResolverExtension;
127
- connector?: import("@dxos/app-graph").ConnectorExtension;
128
- relation?: import("@dxos/app-graph").Relation;
129
- type?: string;
130
- filter?: (node: Node) => boolean;
131
- }>[] | (Readonly<{
132
- id: string;
133
- position: import("@dxos/util").Position;
134
- resolver?: import("@dxos/app-graph").ResolverExtension;
135
- connector?: import("@dxos/app-graph").ConnectorExtension;
136
- relation?: import("@dxos/app-graph").Relation;
137
- type?: string;
138
- filter?: (node: Node) => boolean;
139
- }> | Readonly<{
140
- id: string;
141
- position: import("@dxos/util").Position;
142
- resolver?: import("@dxos/app-graph").ResolverExtension;
143
- connector?: import("@dxos/app-graph").ConnectorExtension;
144
- relation?: import("@dxos/app-graph").Relation;
145
- type?: string;
146
- filter?: (node: Node) => boolean;
147
- }>[] | (Readonly<{
148
- id: string;
149
- position: import("@dxos/util").Position;
150
- resolver?: import("@dxos/app-graph").ResolverExtension;
151
- connector?: import("@dxos/app-graph").ConnectorExtension;
152
- relation?: import("@dxos/app-graph").Relation;
153
- type?: string;
154
- filter?: (node: Node) => boolean;
155
- }> | Readonly<{
156
- id: string;
157
- position: import("@dxos/util").Position;
158
- resolver?: import("@dxos/app-graph").ResolverExtension;
159
- connector?: import("@dxos/app-graph").ConnectorExtension;
160
- relation?: import("@dxos/app-graph").Relation;
161
- type?: string;
162
- filter?: (node: Node) => boolean;
163
- }>[] | (Readonly<{
164
- id: string;
165
- position: import("@dxos/util").Position;
166
- resolver?: import("@dxos/app-graph").ResolverExtension;
167
- connector?: import("@dxos/app-graph").ConnectorExtension;
168
- relation?: import("@dxos/app-graph").Relation;
169
- type?: string;
170
- filter?: (node: Node) => boolean;
171
- }> | Readonly<{
172
- id: string;
173
- position: import("@dxos/util").Position;
174
- resolver?: import("@dxos/app-graph").ResolverExtension;
175
- connector?: import("@dxos/app-graph").ConnectorExtension;
176
- relation?: import("@dxos/app-graph").Relation;
177
- type?: string;
178
- filter?: (node: Node) => boolean;
179
- }>[] | (Readonly<{
180
- id: string;
181
- position: import("@dxos/util").Position;
182
- resolver?: import("@dxos/app-graph").ResolverExtension;
183
- connector?: import("@dxos/app-graph").ConnectorExtension;
184
- relation?: import("@dxos/app-graph").Relation;
185
- type?: string;
186
- filter?: (node: Node) => boolean;
187
- }> | Readonly<{
188
- id: string;
189
- position: import("@dxos/util").Position;
190
- resolver?: import("@dxos/app-graph").ResolverExtension;
191
- connector?: import("@dxos/app-graph").ConnectorExtension;
192
- relation?: import("@dxos/app-graph").Relation;
193
- type?: string;
194
- filter?: (node: Node) => boolean;
195
- }>[] | /*elided*/ any)[])[])[])[])[])[])[])[])[])[])[]>;
1
+ import { type PluginContext } from '../core';
2
+ declare const _default: (context: PluginContext) => import("..").Capability<import("@dxos/app-graph").BuilderExtensions>;
196
3
  export default _default;
197
4
  //# sourceMappingURL=app-graph-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../src/plugin-settings/app-graph-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,KAAK,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAM7D,OAAO,EAAgC,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;kCAGnD,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAvC,wBA4GK"}
1
+ {"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../src/plugin-settings/app-graph-builder.ts"],"names":[],"mappings":"AAaA,OAAO,EAAgC,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;yBAG3D,SAAS,aAAa;AAAtC,wBA4IK"}
@@ -1,5 +1,5 @@
1
1
  import { RootSettingsStore } from '@dxos/local-storage';
2
- import { type PluginsContext } from '../core';
3
- declare const _default: (context: PluginsContext) => import("..").Capability<RootSettingsStore>;
2
+ import { type PluginContext } from '../core';
3
+ declare const _default: (context: PluginContext) => import("..").Capability<RootSettingsStore>;
4
4
  export default _default;
5
5
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/plugin-settings/store.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAe,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;kCAElC,cAAc;AAAvC,wBAkBE"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/plugin-settings/store.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;yBAE1C,SAAS,aAAa;AAAtC,wBAuBE"}
@@ -24,7 +24,7 @@ export declare class ErrorBoundary extends Component<Props, State> {
24
24
  error: Error;
25
25
  };
26
26
  componentDidUpdate(prevProps: Props): void;
27
- render(): string | number | boolean | Iterable<React.ReactNode> | React.JSX.Element | null | undefined;
27
+ render(): string | number | boolean | React.JSX.Element | Iterable<React.ReactNode> | null | undefined;
28
28
  private resetError;
29
29
  }
30
30
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorBoundary.d.ts","sourceRoot":"","sources":["../../../../src/react/ErrorBoundary.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAE1E,KAAK,KAAK,GAAG,iBAAiB,CAAC;IAAE,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,EAAE,CAAC;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAAC;AAC9G,KAAK,KAAK,GAAG;IAAE,KAAK,EAAE,KAAK,GAAG,SAAS,CAAA;CAAE,CAAC;AAE1C;;;;;;;GAOG;AACH,qBAAa,aAAc,SAAQ,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;gBAC5C,KAAK,EAAE,KAAK;IAKxB,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK;;;IAInC,kBAAkB,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI;IAM1C,MAAM;IAQf,OAAO,CAAC,UAAU;CAGnB"}
1
+ {"version":3,"file":"ErrorBoundary.d.ts","sourceRoot":"","sources":["../../../../src/react/ErrorBoundary.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAE1E,KAAK,KAAK,GAAG,iBAAiB,CAAC;IAAE,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,EAAE,CAAC;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAAC;AAC9G,KAAK,KAAK,GAAG;IAAE,KAAK,EAAE,KAAK,GAAG,SAAS,CAAA;CAAE,CAAC;AAE1C;;;;;;;GAOG;AACH,qBAAa,aAAc,SAAQ,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;gBAC5C,KAAK,EAAE,KAAK;IAKxB,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE;IAItD,kBAAkB,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI;IAM1C,MAAM,IAAI,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS;IAQ/G,OAAO,CAAC,UAAU;CAGnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"IntentContext.d.ts","sourceRoot":"","sources":["../../../../src/react/IntentContext.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAA6B,KAAK,QAAQ,EAAa,MAAM,OAAO,CAAC;AAO1F,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE9E,QAAA,MAAM,aAAa,EAAE,OAAO,CAAC,aAAa,GAAG,SAAS,CAAuD,CAAC;AAE9G,eAAO,MAAM,mBAAmB,QAAO,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,iBAAiB,CAGxF,CAAC;AAEF,eAAO,MAAM,iBAAiB,WAAY,MAAM,YAAY,iBAAiB,SAW5E,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAA0B,CAAC"}
1
+ {"version":3,"file":"IntentContext.d.ts","sourceRoot":"","sources":["../../../../src/react/IntentContext.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAA6B,KAAK,QAAQ,EAAa,MAAM,OAAO,CAAC;AAO1F,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE9E,QAAA,MAAM,aAAa,EAAE,OAAO,CAAC,aAAa,GAAG,SAAS,CAAuD,CAAC;AAE9G,eAAO,MAAM,mBAAmB,QAAO,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,iBAAiB,CAGxF,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,EAAE,UAAU,iBAAiB,SAW5E,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAA0B,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import React from 'react';
2
2
  import { type SurfaceProps } from '../common';
3
- import { type PluginsContext } from '../core';
3
+ import { type PluginContext } from '../core';
4
4
  /**
5
5
  * @returns `true` if there is a contributed surface which matches the specified role & data, `false` otherwise.
6
6
  */
7
- export declare const isSurfaceAvailable: (context: PluginsContext, { role, data }: Pick<SurfaceProps, "role" | "data">) => boolean;
7
+ export declare const isSurfaceAvailable: (context: PluginContext, { role, data }: Pick<SurfaceProps, "role" | "data">) => boolean;
8
8
  /**
9
9
  * A surface is a named region of the screen that can be populated by plugins.
10
10
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Surface.d.ts","sourceRoot":"","sources":["../../../../src/react/Surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAwD,MAAM,OAAO,CAAC;AAO7E,OAAO,EAAwC,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AACpF,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAqB9C;;GAEG;AACH,eAAO,MAAM,kBAAkB,YAAa,cAAc,kBAAkB,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,YAI9G,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,0HA6BnB,CAAC"}
1
+ {"version":3,"file":"Surface.d.ts","sourceRoot":"","sources":["../../../../src/react/Surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAwD,MAAM,OAAO,CAAC;AAO7E,OAAO,EAAwC,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AACpF,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAqB7C;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,SAAS,aAAa,EAAE,gBAAgB,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,YAI7G,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,0HA6BnB,CAAC"}
@@ -3,11 +3,11 @@ import { type InterfaceDef } from '../core';
3
3
  * Hook to request capabilities from the plugin context.
4
4
  * @returns An array of capabilities.
5
5
  */
6
- export declare const useCapabilities: <T, U extends T = T>(interfaceDef: InterfaceDef<T>, filter?: (capability: T, moduleId: string) => capability is U) => U[];
6
+ export declare const useCapabilities: <T>(interfaceDef: InterfaceDef<T>) => T[];
7
7
  /**
8
8
  * Hook to request a capability from the plugin context.
9
9
  * @returns The capability.
10
10
  * @throws If no capability is found.
11
11
  */
12
- export declare const useCapability: <T, U extends T = T>(interfaceDef: InterfaceDef<T>, filter?: (capability: T, moduleId: string) => capability is U) => U;
12
+ export declare const useCapability: <T>(interfaceDef: InterfaceDef<T>) => T;
13
13
  //# sourceMappingURL=useCapabilities.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCapabilities.d.ts","sourceRoot":"","sources":["../../../../src/react/useCapabilities.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,EAAE,CAAC,SAAS,CAAC,oBAC9B,YAAY,CAAC,CAAC,CAAC,WACpB,CAAC,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,KAAK,UAAU,IAAI,CAAC,QAS9D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,CAAC,EAAE,CAAC,SAAS,CAAC,oBAC5B,YAAY,CAAC,CAAC,CAAC,WACpB,CAAC,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,KAAK,UAAU,IAAI,CAAC,MAK9D,CAAC"}
1
+ {"version":3,"file":"useCapabilities.d.ts","sourceRoot":"","sources":["../../../../src/react/useCapabilities.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,EAAE,cAAc,YAAY,CAAC,CAAC,CAAC,QAG/D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,CAAC,EAAE,cAAc,YAAY,CAAC,CAAC,CAAC,MAI7D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIntentResolver.d.ts","sourceRoot":"","sources":["../../../../src/react/useIntentResolver.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,eAAO,MAAM,iBAAiB,WAAY,MAAM,YAAY,iBAAiB,SAW5E,CAAC"}
1
+ {"version":3,"file":"useIntentResolver.d.ts","sourceRoot":"","sources":["../../../../src/react/useIntentResolver.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,EAAE,UAAU,iBAAiB,SAW5E,CAAC"}
@@ -1,12 +1,16 @@
1
1
  import { type Decorator } from '@storybook/react';
2
2
  import { type CreateAppOptions } from '../App';
3
- import { type ActivationEvent, type AnyCapability } from '../core';
3
+ import { type ActivationEvent, type AnyCapability, type PluginContext } from '../core';
4
+ export type Provider<C, R> = (context: C) => R;
5
+ export type ProviderOrValue<C, R> = Provider<C, R> | R;
6
+ export declare const getValue: <C, R>(providerOrValue: ProviderOrValue<C, R>, context: C) => R;
4
7
  export type WithPluginManagerOptions = CreateAppOptions & {
5
- capabilities?: AnyCapability[];
8
+ capabilities?: ProviderOrValue<PluginContext, AnyCapability[]>;
6
9
  fireEvents?: (ActivationEvent | string)[];
7
10
  };
8
11
  /**
9
12
  * Wraps a story with a plugin manager.
13
+ * NOTE: This builds up and tears down the plugin manager on every render.
10
14
  */
11
15
  export declare const withPluginManager: (options?: WithPluginManagerOptions) => Decorator;
12
16
  //# sourceMappingURL=withPluginManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"withPluginManager.d.ts","sourceRoot":"","sources":["../../../../src/testing/withPluginManager.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAKlD,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE1D,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,aAAa,EAKnB,MAAM,SAAS,CAAC;AA+BjB,MAAM,MAAM,wBAAwB,GAAG,gBAAgB,GAAG;IACxD,YAAY,CAAC,EAAE,aAAa,EAAE,CAAC;IAC/B,UAAU,CAAC,EAAE,CAAC,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC;CAC3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,aAAa,wBAAwB,KAAQ,SAyB1E,CAAC"}
1
+ {"version":3,"file":"withPluginManager.d.ts","sourceRoot":"","sources":["../../../../src/testing/withPluginManager.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAKlD,OAAO,EAAU,KAAK,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAEvD,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,aAAa,EAElB,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAGjB,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;AAC/C,MAAM,MAAM,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACvD,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,CAAC,EAAE,iBAAiB,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,KAAG,CAEnF,CAAC;AA+BF,MAAM,MAAM,wBAAwB,GAAG,gBAAgB,GAAG;IACxD,YAAY,CAAC,EAAE,eAAe,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC,CAAC;IAC/D,UAAU,CAAC,EAAE,CAAC,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC;CAC3C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,UAAS,wBAA6B,KAAG,SAmC1E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"withPluginManager.stories.d.ts","sourceRoot":"","sources":["../../../../src/testing/withPluginManager.stories.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAa,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAiB7D,QAAA,MAAM,IAAI,EAAE,IAkBX,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,IAAK,CAAC"}
1
+ {"version":3,"file":"withPluginManager.stories.d.ts","sourceRoot":"","sources":["../../../../src/testing/withPluginManager.stories.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAa,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAiB7D,QAAA,MAAM,IAAI,EAAE,IAkBX,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,IAAK,CAAC"}
@@ -1 +1 @@
1
- {"version":"5.7.3"}
1
+ {"version":"5.8.3"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/app-framework",
3
- "version": "0.8.2-staging.7ac8446",
3
+ "version": "0.8.2",
4
4
  "description": "A framework for building applications from composible plugins.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -37,36 +37,47 @@
37
37
  }
38
38
  },
39
39
  "dependencies": {
40
- "@preact/signals-core": "^1.6.0",
41
- "@dxos/app-graph": "0.8.2-staging.7ac8446",
42
- "@dxos/async": "0.8.2-staging.7ac8446",
43
- "@dxos/debug": "0.8.2-staging.7ac8446",
44
- "@dxos/artifact": "0.8.2-staging.7ac8446",
45
- "@dxos/client-protocol": "0.8.2-staging.7ac8446",
46
- "@dxos/invariant": "0.8.2-staging.7ac8446",
47
- "@dxos/live-object": "0.8.2-staging.7ac8446",
48
- "@dxos/local-storage": "0.8.2-staging.7ac8446",
49
- "@dxos/log": "0.8.2-staging.7ac8446",
50
- "@dxos/util": "0.8.2-staging.7ac8446",
51
- "@dxos/react-hooks": "0.8.2-staging.7ac8446"
40
+ "@preact/signals-core": "^1.9.0",
41
+ "@dxos/ai": "0.8.2",
42
+ "@dxos/app-graph": "0.8.2",
43
+ "@dxos/async": "0.8.2",
44
+ "@dxos/artifact": "0.8.2",
45
+ "@dxos/client-protocol": "0.8.2",
46
+ "@dxos/debug": "0.8.2",
47
+ "@dxos/echo-schema": "0.8.2",
48
+ "@dxos/invariant": "0.8.2",
49
+ "@dxos/keys": "0.8.2",
50
+ "@dxos/local-storage": "0.8.2",
51
+ "@dxos/live-object": "0.8.2",
52
+ "@dxos/log": "0.8.2",
53
+ "@dxos/react-hooks": "0.8.2",
54
+ "@dxos/util": "0.8.2",
55
+ "@dxos/schema": "0.8.2"
52
56
  },
53
57
  "devDependencies": {
58
+ "@effect-rx/rx-react": "^0.34.1",
59
+ "@effect/platform": "0.80.12",
54
60
  "@phosphor-icons/react": "^2.1.5",
55
61
  "@types/react": "~18.2.0",
56
- "effect": "3.13.3",
62
+ "effect": "3.14.21",
57
63
  "react": "~18.2.0",
58
- "@dxos/echo-schema": "0.8.2-staging.7ac8446",
59
- "@dxos/echo-signals": "0.8.2-staging.7ac8446",
60
- "@dxos/random": "0.8.2-staging.7ac8446",
61
- "@dxos/react-ui": "0.8.2-staging.7ac8446",
62
- "@dxos/react-ui-syntax-highlighter": "0.8.2-staging.7ac8446",
63
- "@dxos/storybook-utils": "0.8.2-staging.7ac8446"
64
+ "typedoc": "0.28.1",
65
+ "@dxos/echo-signals": "0.8.2",
66
+ "@dxos/random": "0.8.2",
67
+ "@dxos/react-ui-syntax-highlighter": "0.8.2",
68
+ "@dxos/react-ui": "0.8.2",
69
+ "@dxos/storybook-utils": "0.8.2"
64
70
  },
65
71
  "peerDependencies": {
66
- "effect": "3.13.3",
72
+ "@effect-rx/rx-react": "^0.34.1",
73
+ "@effect/platform": "0.80.12",
74
+ "effect": "^3.13.3",
67
75
  "react": "~18.2.0"
68
76
  },
69
77
  "publishConfig": {
70
78
  "access": "public"
79
+ },
80
+ "scripts": {
81
+ "typedoc": "typedoc --out typedoc"
71
82
  }
72
83
  }
package/project.json CHANGED
@@ -19,7 +19,8 @@
19
19
  },
20
20
  "lint": {},
21
21
  "pack": {},
22
- "test": {}
22
+ "test": {},
23
+ "typedoc": {}
23
24
  },
24
25
  "implicitDependencies": [
25
26
  "esbuild"
package/src/App.tsx CHANGED
@@ -2,11 +2,13 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
+ import { RegistryContext } from '@effect-rx/rx-react';
5
6
  import { effect } from '@preact/signals-core';
6
- import React, { useEffect, useState, type FC, type PropsWithChildren } from 'react';
7
+ import React, { useCallback, useEffect, useMemo, useState, type FC, type PropsWithChildren } from 'react';
7
8
 
8
9
  import { invariant } from '@dxos/invariant';
9
- import { create } from '@dxos/live-object';
10
+ import { live } from '@dxos/live-object';
11
+ import { useDefaultValue } from '@dxos/react-hooks';
10
12
 
11
13
  import { Capabilities, Events } from './common';
12
14
  import { PluginManager, type PluginManagerOptions, type Plugin } from './core';
@@ -24,6 +26,7 @@ export type CreateAppOptions = {
24
26
  placeholder?: FC<{ stage: number }>;
25
27
  fallback?: ErrorBoundary['props']['fallback'];
26
28
  cacheEnabled?: boolean;
29
+ safeMode?: boolean;
27
30
  };
28
31
 
29
32
  /**
@@ -49,64 +52,111 @@ export type CreateAppOptions = {
49
52
  * @param params.placeholder Placeholder component to render during startup.
50
53
  * @param params.fallback Fallback component to render if an error occurs during startup.
51
54
  * @param params.cacheEnabled Whether to cache enabled plugins in localStorage.
55
+ * @param params.safeMode Whether to enable safe mode, which disables optional plugins.
52
56
  */
53
- export const createApp = ({
57
+ export const useApp = ({
54
58
  pluginManager,
55
59
  pluginLoader: _pluginLoader,
56
- plugins = [],
57
- core = plugins.map(({ meta }) => meta.id),
58
- defaults = [],
60
+ plugins: _plugins,
61
+ core: _core,
62
+ defaults: _defaults,
59
63
  placeholder,
60
64
  fallback = DefaultFallback,
61
65
  cacheEnabled = false,
66
+ safeMode = false,
62
67
  }: CreateAppOptions) => {
68
+ const plugins = useDefaultValue(_plugins, () => []);
69
+ const core = useDefaultValue(_core, () => plugins.map(({ meta }) => meta.id));
70
+ const defaults = useDefaultValue(_defaults, () => []);
71
+
63
72
  // TODO(wittjosiah): Provide a custom plugin loader which supports loading via url.
64
- const pluginLoader =
65
- _pluginLoader ??
66
- ((id: string) => {
67
- const plugin = plugins.find((plugin) => plugin.meta.id === id);
68
- invariant(plugin, `Plugin not found: ${id}`);
69
- return plugin;
73
+ const pluginLoader = useMemo(
74
+ () =>
75
+ _pluginLoader ??
76
+ ((id: string) => {
77
+ const plugin = plugins.find((plugin) => plugin.meta.id === id);
78
+ invariant(plugin, `Plugin not found: ${id}`);
79
+ return plugin;
80
+ }),
81
+ [_pluginLoader, plugins],
82
+ );
83
+
84
+ const state = useMemo(() => live({ ready: false, error: null }), []);
85
+ const cached: string[] = useMemo(() => JSON.parse(localStorage.getItem(ENABLED_KEY) ?? '[]'), []);
86
+ const enabled = useMemo(
87
+ () => (safeMode ? [] : cacheEnabled && cached.length > 0 ? cached : defaults),
88
+ [safeMode, cacheEnabled, cached, defaults],
89
+ );
90
+ const manager = useMemo(
91
+ () => pluginManager ?? new PluginManager({ pluginLoader, plugins, core, enabled }),
92
+ [pluginManager, pluginLoader, plugins, core, enabled],
93
+ );
94
+
95
+ useEffect(() => {
96
+ return manager.activation.on(({ event, state: _state, error }) => {
97
+ // Once the app is ready the first time, don't show the fallback again.
98
+ if (!state.ready && event === Events.Startup.id) {
99
+ state.ready = _state === 'activated';
100
+ }
101
+
102
+ if (error && !state.ready && !state.error) {
103
+ state.error = error;
104
+ }
70
105
  });
106
+ }, [manager, state]);
71
107
 
72
- const state = create({ ready: false, error: null });
73
- const cached: string[] = JSON.parse(localStorage.getItem(ENABLED_KEY) ?? '[]');
74
- const enabled = cacheEnabled && cached.length > 0 ? cached : defaults;
75
- const manager = pluginManager ?? new PluginManager({ pluginLoader, plugins, core, enabled });
108
+ useEffect(() => {
109
+ effect(() => {
110
+ cacheEnabled && localStorage.setItem(ENABLED_KEY, JSON.stringify(manager.enabled));
111
+ });
112
+ }, [cacheEnabled, manager]);
76
113
 
77
- manager.activation.on(({ event, state: _state, error }) => {
78
- // Once the app is ready the first time, don't show the fallback again.
79
- if (!state.ready && event === Events.Startup.id) {
80
- state.ready = _state === 'activated';
81
- }
114
+ useEffect(() => {
115
+ manager.context.contributeCapability({
116
+ interface: Capabilities.PluginManager,
117
+ implementation: manager,
118
+ module: 'dxos.org/app-framework/plugin-manager',
119
+ });
82
120
 
83
- if (error && !state.ready && !state.error) {
84
- state.error = error;
85
- }
86
- });
87
-
88
- effect(() => {
89
- cacheEnabled && localStorage.setItem(ENABLED_KEY, JSON.stringify(manager.enabled));
90
- });
91
-
92
- manager.context.contributeCapability({
93
- interface: Capabilities.PluginManager,
94
- implementation: manager,
95
- module: 'dxos.org/app-framework/plugin-manager',
96
- });
97
-
98
- setupDevtools(manager);
99
-
100
- // TODO(wittjosiah): Factor out such that this could be called per surface role when attempting to render.
101
- void manager.activate(Events.SetupReactSurface);
102
- void manager.activate(Events.Startup);
103
-
104
- return () => (
105
- <ErrorBoundary fallback={fallback}>
106
- <PluginManagerProvider value={manager}>
107
- <App placeholder={placeholder} state={state} />
108
- </PluginManagerProvider>
109
- </ErrorBoundary>
121
+ manager.context.contributeCapability({
122
+ interface: Capabilities.RxRegistry,
123
+ implementation: manager.registry,
124
+ module: 'dxos.org/app-framework/rx-registry',
125
+ });
126
+
127
+ return () => {
128
+ manager.context.removeCapability(Capabilities.PluginManager, manager);
129
+ manager.context.removeCapability(Capabilities.RxRegistry, manager.registry);
130
+ };
131
+ }, [manager]);
132
+
133
+ useEffect(() => {
134
+ setupDevtools(manager);
135
+ }, [manager]);
136
+
137
+ useEffect(() => {
138
+ const timeout = setTimeout(async () => {
139
+ await Promise.all([
140
+ // TODO(wittjosiah): Factor out such that this could be called per surface role when attempting to render.
141
+ manager.activate(Events.SetupReactSurface),
142
+ manager.activate(Events.Startup),
143
+ ]);
144
+ });
145
+
146
+ return () => clearTimeout(timeout);
147
+ }, [manager]);
148
+
149
+ return useCallback(
150
+ () => (
151
+ <ErrorBoundary fallback={fallback}>
152
+ <PluginManagerProvider value={manager}>
153
+ <RegistryContext.Provider value={manager.registry}>
154
+ <App placeholder={placeholder} state={state} />
155
+ </RegistryContext.Provider>
156
+ </PluginManagerProvider>
157
+ </ErrorBoundary>
158
+ ),
159
+ [fallback, manager, placeholder, state],
110
160
  );
111
161
  };
112
162