@dxos/app-framework 0.8.3 → 0.8.4-main.1068cf700f

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 (663) hide show
  1. package/.storybook/main.mts +11 -0
  2. package/.storybook/preview.mts +8 -0
  3. package/.swc/plugins/linux_x86_64_19.0.0/727453fb3a62f7f1d952a41e051ca8a6f88cadc45cee43c6a4d1aa45f9b75665.wasmer-v7 +0 -0
  4. package/README.md +0 -8
  5. package/dist/lib/browser/capability-7LE5X2NH.mjs +37 -0
  6. package/dist/lib/browser/capability-7LE5X2NH.mjs.map +7 -0
  7. package/dist/lib/browser/capability-DU35RXMD.mjs +34 -0
  8. package/dist/lib/browser/capability-DU35RXMD.mjs.map +7 -0
  9. package/dist/lib/browser/chunk-4DQMLMGU.mjs +44 -0
  10. package/dist/lib/browser/chunk-4DQMLMGU.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-EIFGKQSA.mjs +170 -0
  12. package/dist/lib/browser/chunk-EIFGKQSA.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-FHQTHCX7.mjs +8 -0
  14. package/dist/lib/browser/chunk-FHQTHCX7.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-IGRQWMWW.mjs +80 -0
  16. package/dist/lib/browser/chunk-IGRQWMWW.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  18. package/dist/lib/browser/chunk-KWP6PKIU.mjs +145 -0
  19. package/dist/lib/browser/chunk-KWP6PKIU.mjs.map +7 -0
  20. package/dist/lib/browser/chunk-NPUEVX42.mjs +34 -0
  21. package/dist/lib/browser/chunk-NPUEVX42.mjs.map +7 -0
  22. package/dist/lib/browser/chunk-PKQT6C53.mjs +47 -0
  23. package/dist/lib/browser/chunk-PKQT6C53.mjs.map +7 -0
  24. package/dist/lib/browser/chunk-WGWEEBUV.mjs +807 -0
  25. package/dist/lib/browser/chunk-WGWEEBUV.mjs.map +7 -0
  26. package/dist/lib/browser/chunk-YAFEA4GV.mjs +1 -0
  27. package/dist/lib/browser/chunk-YZQ6NFG4.mjs +781 -0
  28. package/dist/lib/browser/chunk-YZQ6NFG4.mjs.map +7 -0
  29. package/dist/lib/browser/chunk-ZQO3UZ4R.mjs +77 -0
  30. package/dist/lib/browser/chunk-ZQO3UZ4R.mjs.map +7 -0
  31. package/dist/lib/browser/cli/index.mjs +89 -0
  32. package/dist/lib/browser/cli/index.mjs.map +7 -0
  33. package/dist/lib/browser/common/activation-events.mjs +23 -0
  34. package/dist/lib/browser/common/capabilities.mjs +45 -0
  35. package/dist/lib/browser/core/activation-event.mjs +20 -0
  36. package/dist/lib/browser/core/activation-event.mjs.map +7 -0
  37. package/dist/lib/browser/core/capability.mjs +28 -0
  38. package/dist/lib/browser/core/capability.mjs.map +7 -0
  39. package/dist/lib/browser/core/plugin-manager.mjs +15 -0
  40. package/dist/lib/browser/core/plugin-manager.mjs.map +7 -0
  41. package/dist/lib/browser/core/plugin.mjs +27 -0
  42. package/dist/lib/browser/core/plugin.mjs.map +7 -0
  43. package/dist/lib/browser/index.mjs +87 -156
  44. package/dist/lib/browser/index.mjs.map +4 -4
  45. package/dist/lib/browser/invoker-capability-7QW56NOM.mjs +36 -0
  46. package/dist/lib/browser/invoker-capability-7QW56NOM.mjs.map +7 -0
  47. package/dist/lib/browser/meta.json +1 -1
  48. package/dist/lib/browser/testing/index.mjs +84 -38
  49. package/dist/lib/browser/testing/index.mjs.map +4 -4
  50. package/dist/lib/browser/ui/index.mjs +49 -0
  51. package/dist/lib/browser/ui/index.mjs.map +7 -0
  52. package/dist/lib/node-esm/capability-OSVYGK4X.mjs +38 -0
  53. package/dist/lib/node-esm/capability-OSVYGK4X.mjs.map +7 -0
  54. package/dist/lib/node-esm/capability-SR2EIZFP.mjs +35 -0
  55. package/dist/lib/node-esm/capability-SR2EIZFP.mjs.map +7 -0
  56. package/dist/lib/node-esm/chunk-64IMLAS2.mjs +78 -0
  57. package/dist/lib/node-esm/chunk-64IMLAS2.mjs.map +7 -0
  58. package/dist/lib/node-esm/chunk-7OWSHPYK.mjs +48 -0
  59. package/dist/lib/node-esm/chunk-7OWSHPYK.mjs.map +7 -0
  60. package/dist/lib/node-esm/chunk-DHSHRYIB.mjs +171 -0
  61. package/dist/lib/node-esm/chunk-DHSHRYIB.mjs.map +7 -0
  62. package/dist/lib/node-esm/chunk-DZ2XLAGI.mjs +146 -0
  63. package/dist/lib/node-esm/chunk-DZ2XLAGI.mjs.map +7 -0
  64. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  65. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  66. package/dist/lib/node-esm/chunk-J2PHTRHC.mjs +45 -0
  67. package/dist/lib/node-esm/chunk-J2PHTRHC.mjs.map +7 -0
  68. package/dist/lib/node-esm/chunk-JAZVHID3.mjs +35 -0
  69. package/dist/lib/node-esm/chunk-JAZVHID3.mjs.map +7 -0
  70. package/dist/lib/node-esm/chunk-OQYHRZYF.mjs +81 -0
  71. package/dist/lib/node-esm/chunk-OQYHRZYF.mjs.map +7 -0
  72. package/dist/lib/node-esm/chunk-UEWJDI2L.mjs +10 -0
  73. package/dist/lib/node-esm/chunk-UEWJDI2L.mjs.map +7 -0
  74. package/dist/lib/node-esm/chunk-VV4YHPQQ.mjs +782 -0
  75. package/dist/lib/node-esm/chunk-VV4YHPQQ.mjs.map +7 -0
  76. package/dist/lib/node-esm/chunk-XHAKT6UD.mjs +808 -0
  77. package/dist/lib/node-esm/chunk-XHAKT6UD.mjs.map +7 -0
  78. package/dist/lib/node-esm/chunk-Z4TJPSMP.mjs +2 -0
  79. package/dist/lib/node-esm/chunk-Z4TJPSMP.mjs.map +7 -0
  80. package/dist/lib/node-esm/cli/index.mjs +90 -0
  81. package/dist/lib/node-esm/cli/index.mjs.map +7 -0
  82. package/dist/lib/node-esm/common/activation-events.mjs +24 -0
  83. package/dist/lib/node-esm/common/activation-events.mjs.map +7 -0
  84. package/dist/lib/node-esm/common/capabilities.mjs +46 -0
  85. package/dist/lib/node-esm/common/capabilities.mjs.map +7 -0
  86. package/dist/lib/node-esm/core/activation-event.mjs +21 -0
  87. package/dist/lib/node-esm/core/activation-event.mjs.map +7 -0
  88. package/dist/lib/node-esm/core/capability.mjs +29 -0
  89. package/dist/lib/node-esm/core/capability.mjs.map +7 -0
  90. package/dist/lib/node-esm/core/plugin-manager.mjs +16 -0
  91. package/dist/lib/node-esm/core/plugin-manager.mjs.map +7 -0
  92. package/dist/lib/node-esm/core/plugin.mjs +28 -0
  93. package/dist/lib/node-esm/core/plugin.mjs.map +7 -0
  94. package/dist/lib/node-esm/index.mjs +87 -156
  95. package/dist/lib/node-esm/index.mjs.map +4 -4
  96. package/dist/lib/node-esm/invoker-capability-CK4AMF2R.mjs +37 -0
  97. package/dist/lib/node-esm/invoker-capability-CK4AMF2R.mjs.map +7 -0
  98. package/dist/lib/node-esm/meta.json +1 -1
  99. package/dist/lib/node-esm/testing/index.mjs +84 -38
  100. package/dist/lib/node-esm/testing/index.mjs.map +4 -4
  101. package/dist/lib/node-esm/ui/index.mjs +50 -0
  102. package/dist/lib/node-esm/ui/index.mjs.map +7 -0
  103. package/dist/types/src/cli/cli.d.ts +39 -0
  104. package/dist/types/src/cli/cli.d.ts.map +1 -0
  105. package/dist/types/src/cli/index.d.ts +2 -0
  106. package/dist/types/src/cli/index.d.ts.map +1 -0
  107. package/dist/types/src/common/activation-events.d.ts +27 -0
  108. package/dist/types/src/common/activation-events.d.ts.map +1 -0
  109. package/dist/types/src/common/capabilities.d.ts +114 -121
  110. package/dist/types/src/common/capabilities.d.ts.map +1 -1
  111. package/dist/types/src/common/index.d.ts +4 -8
  112. package/dist/types/src/common/index.d.ts.map +1 -1
  113. package/dist/types/src/common/operations.d.ts +33 -0
  114. package/dist/types/src/common/operations.d.ts.map +1 -0
  115. package/dist/types/src/common/translations.d.ts +8 -8
  116. package/dist/types/src/common/translations.d.ts.map +1 -1
  117. package/dist/types/src/context.d.ts +5 -0
  118. package/dist/types/src/context.d.ts.map +1 -0
  119. package/dist/types/src/core/{events.d.ts → activation-event.d.ts} +6 -6
  120. package/dist/types/src/core/activation-event.d.ts.map +1 -0
  121. package/dist/types/src/core/capability-manager.d.ts +43 -0
  122. package/dist/types/src/core/capability-manager.d.ts.map +1 -0
  123. package/dist/types/src/core/capability-manager.test.d.ts +2 -0
  124. package/dist/types/src/core/capability-manager.test.d.ts.map +1 -0
  125. package/dist/types/src/core/capability.d.ts +150 -0
  126. package/dist/types/src/core/capability.d.ts.map +1 -0
  127. package/dist/types/src/core/index.d.ts +5 -4
  128. package/dist/types/src/core/index.d.ts.map +1 -1
  129. package/dist/types/src/core/plugin-manager.d.ts +66 -0
  130. package/dist/types/src/core/plugin-manager.d.ts.map +1 -0
  131. package/dist/types/src/core/plugin-manager.test.d.ts +2 -0
  132. package/dist/types/src/core/plugin-manager.test.d.ts.map +1 -0
  133. package/dist/types/src/core/plugin.d.ts +97 -32
  134. package/dist/types/src/core/plugin.d.ts.map +1 -1
  135. package/dist/types/src/index.d.ts +3 -4
  136. package/dist/types/src/index.d.ts.map +1 -1
  137. package/dist/types/src/plugin-operation/OperationPlugin.d.ts +3 -0
  138. package/dist/types/src/plugin-operation/OperationPlugin.d.ts.map +1 -0
  139. package/dist/types/src/plugin-operation/history/capability.d.ts +7 -0
  140. package/dist/types/src/plugin-operation/history/capability.d.ts.map +1 -0
  141. package/dist/types/src/plugin-operation/history/errors.d.ts +5 -0
  142. package/dist/types/src/plugin-operation/history/errors.d.ts.map +1 -0
  143. package/dist/types/src/plugin-operation/history/history-tracker.d.ts +18 -0
  144. package/dist/types/src/plugin-operation/history/history-tracker.d.ts.map +1 -0
  145. package/dist/types/src/plugin-operation/history/history-tracker.test.d.ts +2 -0
  146. package/dist/types/src/plugin-operation/history/history-tracker.test.d.ts.map +1 -0
  147. package/dist/types/src/plugin-operation/history/index.d.ts +6 -0
  148. package/dist/types/src/plugin-operation/history/index.d.ts.map +1 -0
  149. package/dist/types/src/plugin-operation/history/types.d.ts +13 -0
  150. package/dist/types/src/plugin-operation/history/types.d.ts.map +1 -0
  151. package/dist/types/src/plugin-operation/history/undo-mapping.d.ts +101 -0
  152. package/dist/types/src/plugin-operation/history/undo-mapping.d.ts.map +1 -0
  153. package/dist/types/src/plugin-operation/history/undo-registry.d.ts +23 -0
  154. package/dist/types/src/plugin-operation/history/undo-registry.d.ts.map +1 -0
  155. package/dist/types/src/plugin-operation/history/undo-registry.test.d.ts +2 -0
  156. package/dist/types/src/plugin-operation/history/undo-registry.test.d.ts.map +1 -0
  157. package/dist/types/src/plugin-operation/index.d.ts +3 -0
  158. package/dist/types/src/plugin-operation/index.d.ts.map +1 -0
  159. package/dist/types/src/plugin-operation/invoker-capability.d.ts +6 -0
  160. package/dist/types/src/plugin-operation/invoker-capability.d.ts.map +1 -0
  161. package/dist/types/src/plugin-operation/meta.d.ts +3 -0
  162. package/dist/types/src/plugin-operation/meta.d.ts.map +1 -0
  163. package/dist/types/src/plugin-operation/testing.d.ts +109 -0
  164. package/dist/types/src/plugin-operation/testing.d.ts.map +1 -0
  165. package/dist/types/src/plugin-runtime/RuntimePlugin.d.ts +3 -0
  166. package/dist/types/src/plugin-runtime/RuntimePlugin.d.ts.map +1 -0
  167. package/dist/types/src/plugin-runtime/capability.d.ts +6 -0
  168. package/dist/types/src/plugin-runtime/capability.d.ts.map +1 -0
  169. package/dist/types/src/plugin-runtime/index.d.ts +2 -0
  170. package/dist/types/src/plugin-runtime/index.d.ts.map +1 -0
  171. package/dist/types/src/plugin-runtime/meta.d.ts +3 -0
  172. package/dist/types/src/plugin-runtime/meta.d.ts.map +1 -0
  173. package/dist/types/src/testing/index.d.ts +1 -0
  174. package/dist/types/src/testing/index.d.ts.map +1 -1
  175. package/dist/types/src/testing/service.d.ts +8 -0
  176. package/dist/types/src/testing/service.d.ts.map +1 -0
  177. package/dist/types/src/testing/withPluginManager.d.ts +11 -10
  178. package/dist/types/src/testing/withPluginManager.d.ts.map +1 -1
  179. package/dist/types/src/testing/withPluginManager.stories.d.ts +9 -3
  180. package/dist/types/src/testing/withPluginManager.stories.d.ts.map +1 -1
  181. package/dist/types/src/ui/components/App.d.ts +8 -0
  182. package/dist/types/src/ui/components/App.d.ts.map +1 -0
  183. package/dist/types/src/ui/components/App.stories.d.ts +14 -0
  184. package/dist/types/src/ui/components/App.stories.d.ts.map +1 -0
  185. package/dist/types/src/ui/components/DefaultFallback.d.ts +8 -0
  186. package/dist/types/src/ui/components/DefaultFallback.d.ts.map +1 -0
  187. package/dist/types/src/ui/components/ErrorBoundary.d.ts +30 -0
  188. package/dist/types/src/ui/components/ErrorBoundary.d.ts.map +1 -0
  189. package/dist/types/src/ui/components/PluginManagerContext.stories.d.ts +13 -0
  190. package/dist/types/src/ui/components/PluginManagerContext.stories.d.ts.map +1 -0
  191. package/dist/types/src/ui/components/PluginManagerProvider.d.ts +10 -0
  192. package/dist/types/src/ui/components/PluginManagerProvider.d.ts.map +1 -0
  193. package/dist/types/src/ui/components/index.d.ts +5 -0
  194. package/dist/types/src/ui/components/index.d.ts.map +1 -0
  195. package/dist/types/src/ui/components/surface/SurfaceComponent.d.ts +12 -0
  196. package/dist/types/src/ui/components/surface/SurfaceComponent.d.ts.map +1 -0
  197. package/dist/types/src/ui/components/surface/SurfaceComponent.stories.d.ts +14 -0
  198. package/dist/types/src/ui/components/surface/SurfaceComponent.stories.d.ts.map +1 -0
  199. package/dist/types/src/ui/components/surface/SurfaceInfo.d.ts +11 -0
  200. package/dist/types/src/ui/components/surface/SurfaceInfo.d.ts.map +1 -0
  201. package/dist/types/src/ui/components/surface/context.d.ts +5 -0
  202. package/dist/types/src/ui/components/surface/context.d.ts.map +1 -0
  203. package/dist/types/src/ui/components/surface/index.d.ts +5 -0
  204. package/dist/types/src/ui/components/surface/index.d.ts.map +1 -0
  205. package/dist/types/src/ui/components/surface/types.d.ts +94 -0
  206. package/dist/types/src/ui/components/surface/types.d.ts.map +1 -0
  207. package/dist/types/src/ui/hooks/index.d.ts +7 -0
  208. package/dist/types/src/ui/hooks/index.d.ts.map +1 -0
  209. package/dist/types/src/{App.d.ts → ui/hooks/useApp.d.ts} +16 -9
  210. package/dist/types/src/ui/hooks/useApp.d.ts.map +1 -0
  211. package/dist/types/src/ui/hooks/useCapabilities.d.ts +31 -0
  212. package/dist/types/src/ui/hooks/useCapabilities.d.ts.map +1 -0
  213. package/dist/types/src/ui/hooks/useLoading.d.ts +18 -0
  214. package/dist/types/src/ui/hooks/useLoading.d.ts.map +1 -0
  215. package/dist/types/src/ui/hooks/useOperationResolver.d.ts +19 -0
  216. package/dist/types/src/ui/hooks/useOperationResolver.d.ts.map +1 -0
  217. package/dist/types/src/ui/hooks/useSettingsState.d.ts +10 -0
  218. package/dist/types/src/ui/hooks/useSettingsState.d.ts.map +1 -0
  219. package/dist/types/src/ui/hooks/useSurface.d.ts +3 -0
  220. package/dist/types/src/ui/hooks/useSurface.d.ts.map +1 -0
  221. package/dist/types/src/ui/index.d.ts +4 -0
  222. package/dist/types/src/ui/index.d.ts.map +1 -0
  223. package/dist/types/tsconfig.tsbuildinfo +1 -1
  224. package/moon.yml +25 -0
  225. package/package.json +113 -45
  226. package/src/cli/cli.ts +107 -0
  227. package/src/{playground/layout → cli}/index.ts +1 -1
  228. package/src/common/activation-events.ts +44 -0
  229. package/src/common/capabilities.ts +174 -108
  230. package/src/common/index.ts +4 -8
  231. package/src/common/operations.ts +38 -0
  232. package/src/common/translations.ts +18 -10
  233. package/src/context.ts +9 -0
  234. package/src/core/{events.ts → activation-event.ts} +5 -5
  235. package/src/core/capability-manager.test.ts +151 -0
  236. package/src/core/capability-manager.ts +171 -0
  237. package/src/core/capability.ts +236 -0
  238. package/src/core/index.ts +5 -4
  239. package/src/core/plugin-manager.test.ts +845 -0
  240. package/src/core/plugin-manager.ts +696 -0
  241. package/src/core/plugin.ts +229 -36
  242. package/src/helpers.test.ts +1 -1
  243. package/src/index.ts +3 -4
  244. package/src/plugin-operation/OperationPlugin.ts +25 -0
  245. package/src/plugin-operation/history/capability.ts +37 -0
  246. package/src/plugin-operation/history/errors.ts +11 -0
  247. package/src/plugin-operation/history/history-tracker.test.ts +380 -0
  248. package/src/plugin-operation/history/history-tracker.ts +129 -0
  249. package/src/plugin-operation/history/index.ts +9 -0
  250. package/src/plugin-operation/history/types.ts +17 -0
  251. package/src/plugin-operation/history/undo-mapping.ts +135 -0
  252. package/src/plugin-operation/history/undo-registry.test.ts +73 -0
  253. package/src/plugin-operation/history/undo-registry.ts +54 -0
  254. package/src/plugin-operation/index.ts +6 -0
  255. package/src/plugin-operation/invoker-capability.ts +40 -0
  256. package/src/plugin-operation/meta.ts +11 -0
  257. package/src/plugin-operation/testing.ts +174 -0
  258. package/src/plugin-runtime/RuntimePlugin.ts +20 -0
  259. package/src/plugin-runtime/capability.ts +53 -0
  260. package/src/{playground/logger → plugin-runtime}/index.ts +1 -1
  261. package/src/plugin-runtime/meta.ts +11 -0
  262. package/src/testing/index.ts +1 -0
  263. package/src/testing/service.ts +52 -0
  264. package/src/testing/withPluginManager.stories.tsx +15 -11
  265. package/src/testing/withPluginManager.tsx +43 -44
  266. package/src/ui/components/App.stories.tsx +62 -0
  267. package/src/ui/components/App.tsx +57 -0
  268. package/src/ui/components/DefaultFallback.tsx +26 -0
  269. package/src/ui/components/ErrorBoundary.tsx +56 -0
  270. package/src/ui/components/PluginManagerContext.stories.tsx +183 -0
  271. package/src/{react → ui/components}/PluginManagerProvider.ts +3 -3
  272. package/src/ui/components/index.ts +8 -0
  273. package/src/ui/components/surface/SurfaceComponent.stories.tsx +142 -0
  274. package/src/ui/components/surface/SurfaceComponent.tsx +262 -0
  275. package/src/ui/components/surface/SurfaceInfo.tsx +107 -0
  276. package/src/ui/components/surface/context.ts +12 -0
  277. package/src/ui/components/surface/index.ts +8 -0
  278. package/src/ui/components/surface/types.ts +119 -0
  279. package/src/ui/hooks/index.ts +10 -0
  280. package/src/ui/hooks/useApp.tsx +215 -0
  281. package/src/ui/hooks/useCapabilities.ts +67 -0
  282. package/src/ui/hooks/useLoading.tsx +68 -0
  283. package/src/ui/hooks/useOperationResolver.ts +40 -0
  284. package/src/ui/hooks/useSettingsState.ts +26 -0
  285. package/src/ui/hooks/useSurface.ts +13 -0
  286. package/src/ui/index.ts +7 -0
  287. package/tsconfig.json +13 -29
  288. package/vitest.config.ts +8 -3
  289. package/.eslintrc.cjs +0 -9
  290. package/README.yml +0 -5
  291. package/dist/lib/browser/app-graph-builder-BI4VVKSW.mjs +0 -137
  292. package/dist/lib/browser/app-graph-builder-BI4VVKSW.mjs.map +0 -7
  293. package/dist/lib/browser/chunk-DIBVO47Z.mjs +0 -406
  294. package/dist/lib/browser/chunk-DIBVO47Z.mjs.map +0 -7
  295. package/dist/lib/browser/chunk-EHM4UI3V.mjs +0 -1518
  296. package/dist/lib/browser/chunk-EHM4UI3V.mjs.map +0 -7
  297. package/dist/lib/browser/chunk-WWEJRWFX.mjs +0 -32
  298. package/dist/lib/browser/chunk-WWEJRWFX.mjs.map +0 -7
  299. package/dist/lib/browser/intent-dispatcher-XVBOMF2Y.mjs +0 -11
  300. package/dist/lib/browser/intent-resolver-3QMBXLIY.mjs +0 -39
  301. package/dist/lib/browser/intent-resolver-3QMBXLIY.mjs.map +0 -7
  302. package/dist/lib/browser/store-5H7XPJGA.mjs +0 -30
  303. package/dist/lib/browser/store-5H7XPJGA.mjs.map +0 -7
  304. package/dist/lib/browser/worker.mjs +0 -79
  305. package/dist/lib/node/app-graph-builder-H7QVE4MJ.cjs +0 -146
  306. package/dist/lib/node/app-graph-builder-H7QVE4MJ.cjs.map +0 -7
  307. package/dist/lib/node/chunk-G774ASXO.cjs +0 -58
  308. package/dist/lib/node/chunk-G774ASXO.cjs.map +0 -7
  309. package/dist/lib/node/chunk-VSOSVDQ3.cjs +0 -1551
  310. package/dist/lib/node/chunk-VSOSVDQ3.cjs.map +0 -7
  311. package/dist/lib/node/chunk-YGAY3H34.cjs +0 -429
  312. package/dist/lib/node/chunk-YGAY3H34.cjs.map +0 -7
  313. package/dist/lib/node/index.cjs +0 -193
  314. package/dist/lib/node/index.cjs.map +0 -7
  315. package/dist/lib/node/intent-dispatcher-C3SVKJ62.cjs +0 -32
  316. package/dist/lib/node/intent-dispatcher-C3SVKJ62.cjs.map +0 -7
  317. package/dist/lib/node/intent-resolver-IOJDYO34.cjs +0 -46
  318. package/dist/lib/node/intent-resolver-IOJDYO34.cjs.map +0 -7
  319. package/dist/lib/node/meta.json +0 -1
  320. package/dist/lib/node/store-ESF5VR57.cjs +0 -45
  321. package/dist/lib/node/store-ESF5VR57.cjs.map +0 -7
  322. package/dist/lib/node/testing/index.cjs +0 -119
  323. package/dist/lib/node/testing/index.cjs.map +0 -7
  324. package/dist/lib/node/worker.cjs +0 -101
  325. package/dist/lib/node/worker.cjs.map +0 -7
  326. package/dist/lib/node-esm/app-graph-builder-NROP6RPQ.mjs +0 -138
  327. package/dist/lib/node-esm/app-graph-builder-NROP6RPQ.mjs.map +0 -7
  328. package/dist/lib/node-esm/chunk-2J6FVECI.mjs +0 -1520
  329. package/dist/lib/node-esm/chunk-2J6FVECI.mjs.map +0 -7
  330. package/dist/lib/node-esm/chunk-FHNZZWP4.mjs +0 -407
  331. package/dist/lib/node-esm/chunk-FHNZZWP4.mjs.map +0 -7
  332. package/dist/lib/node-esm/chunk-I6BVZMAH.mjs +0 -34
  333. package/dist/lib/node-esm/chunk-I6BVZMAH.mjs.map +0 -7
  334. package/dist/lib/node-esm/intent-dispatcher-7JPGLCQ5.mjs +0 -12
  335. package/dist/lib/node-esm/intent-resolver-VY4X5UHN.mjs +0 -40
  336. package/dist/lib/node-esm/intent-resolver-VY4X5UHN.mjs.map +0 -7
  337. package/dist/lib/node-esm/store-UKD2R2KA.mjs +0 -31
  338. package/dist/lib/node-esm/store-UKD2R2KA.mjs.map +0 -7
  339. package/dist/lib/node-esm/worker.mjs +0 -80
  340. package/dist/types/src/App.d.ts.map +0 -1
  341. package/dist/types/src/common/collaboration.d.ts +0 -19
  342. package/dist/types/src/common/collaboration.d.ts.map +0 -1
  343. package/dist/types/src/common/events.d.ts +0 -52
  344. package/dist/types/src/common/events.d.ts.map +0 -1
  345. package/dist/types/src/common/file.d.ts +0 -14
  346. package/dist/types/src/common/file.d.ts.map +0 -1
  347. package/dist/types/src/common/graph.d.ts +0 -21
  348. package/dist/types/src/common/graph.d.ts.map +0 -1
  349. package/dist/types/src/common/layout.d.ts +0 -281
  350. package/dist/types/src/common/layout.d.ts.map +0 -1
  351. package/dist/types/src/common/surface.d.ts +0 -65
  352. package/dist/types/src/common/surface.d.ts.map +0 -1
  353. package/dist/types/src/core/capabilities.d.ts +0 -114
  354. package/dist/types/src/core/capabilities.d.ts.map +0 -1
  355. package/dist/types/src/core/capabilities.test.d.ts +0 -2
  356. package/dist/types/src/core/capabilities.test.d.ts.map +0 -1
  357. package/dist/types/src/core/events.d.ts.map +0 -1
  358. package/dist/types/src/core/manager.d.ts +0 -122
  359. package/dist/types/src/core/manager.d.ts.map +0 -1
  360. package/dist/types/src/core/manager.test.d.ts +0 -2
  361. package/dist/types/src/core/manager.test.d.ts.map +0 -1
  362. package/dist/types/src/playground/debug/Debug.d.ts +0 -6
  363. package/dist/types/src/playground/debug/Debug.d.ts.map +0 -1
  364. package/dist/types/src/playground/debug/index.d.ts +0 -2
  365. package/dist/types/src/playground/debug/index.d.ts.map +0 -1
  366. package/dist/types/src/playground/debug/plugin.d.ts +0 -2
  367. package/dist/types/src/playground/debug/plugin.d.ts.map +0 -1
  368. package/dist/types/src/playground/generator/Main.d.ts +0 -6
  369. package/dist/types/src/playground/generator/Main.d.ts.map +0 -1
  370. package/dist/types/src/playground/generator/Toolbar.d.ts +0 -6
  371. package/dist/types/src/playground/generator/Toolbar.d.ts.map +0 -1
  372. package/dist/types/src/playground/generator/generator.d.ts +0 -7
  373. package/dist/types/src/playground/generator/generator.d.ts.map +0 -1
  374. package/dist/types/src/playground/generator/index.d.ts +0 -3
  375. package/dist/types/src/playground/generator/index.d.ts.map +0 -1
  376. package/dist/types/src/playground/generator/plugin.d.ts +0 -2
  377. package/dist/types/src/playground/generator/plugin.d.ts.map +0 -1
  378. package/dist/types/src/playground/layout/Layout.d.ts +0 -8
  379. package/dist/types/src/playground/layout/Layout.d.ts.map +0 -1
  380. package/dist/types/src/playground/layout/index.d.ts +0 -2
  381. package/dist/types/src/playground/layout/index.d.ts.map +0 -1
  382. package/dist/types/src/playground/layout/plugin.d.ts +0 -2
  383. package/dist/types/src/playground/layout/plugin.d.ts.map +0 -1
  384. package/dist/types/src/playground/logger/Toolbar.d.ts +0 -6
  385. package/dist/types/src/playground/logger/Toolbar.d.ts.map +0 -1
  386. package/dist/types/src/playground/logger/index.d.ts +0 -2
  387. package/dist/types/src/playground/logger/index.d.ts.map +0 -1
  388. package/dist/types/src/playground/logger/plugin.d.ts +0 -2
  389. package/dist/types/src/playground/logger/plugin.d.ts.map +0 -1
  390. package/dist/types/src/playground/logger/schema.d.ts +0 -13
  391. package/dist/types/src/playground/logger/schema.d.ts.map +0 -1
  392. package/dist/types/src/playground/playground.stories.d.ts +0 -10
  393. package/dist/types/src/playground/playground.stories.d.ts.map +0 -1
  394. package/dist/types/src/plugin-intent/IntentPlugin.d.ts +0 -2
  395. package/dist/types/src/plugin-intent/IntentPlugin.d.ts.map +0 -1
  396. package/dist/types/src/plugin-intent/actions.d.ts +0 -38
  397. package/dist/types/src/plugin-intent/actions.d.ts.map +0 -1
  398. package/dist/types/src/plugin-intent/errors.d.ts +0 -16
  399. package/dist/types/src/plugin-intent/errors.d.ts.map +0 -1
  400. package/dist/types/src/plugin-intent/index.d.ts +0 -5
  401. package/dist/types/src/plugin-intent/index.d.ts.map +0 -1
  402. package/dist/types/src/plugin-intent/intent-dispatcher.d.ts +0 -139
  403. package/dist/types/src/plugin-intent/intent-dispatcher.d.ts.map +0 -1
  404. package/dist/types/src/plugin-intent/intent-dispatcher.test.d.ts +0 -2
  405. package/dist/types/src/plugin-intent/intent-dispatcher.test.d.ts.map +0 -1
  406. package/dist/types/src/plugin-intent/intent.d.ts +0 -63
  407. package/dist/types/src/plugin-intent/intent.d.ts.map +0 -1
  408. package/dist/types/src/plugin-settings/SettingsPlugin.d.ts +0 -2
  409. package/dist/types/src/plugin-settings/SettingsPlugin.d.ts.map +0 -1
  410. package/dist/types/src/plugin-settings/actions.d.ts +0 -27
  411. package/dist/types/src/plugin-settings/actions.d.ts.map +0 -1
  412. package/dist/types/src/plugin-settings/app-graph-builder.d.ts +0 -4
  413. package/dist/types/src/plugin-settings/app-graph-builder.d.ts.map +0 -1
  414. package/dist/types/src/plugin-settings/index.d.ts +0 -3
  415. package/dist/types/src/plugin-settings/index.d.ts.map +0 -1
  416. package/dist/types/src/plugin-settings/intent-resolver.d.ts +0 -4
  417. package/dist/types/src/plugin-settings/intent-resolver.d.ts.map +0 -1
  418. package/dist/types/src/plugin-settings/store.d.ts +0 -5
  419. package/dist/types/src/plugin-settings/store.d.ts.map +0 -1
  420. package/dist/types/src/plugin-settings/translations.d.ts +0 -11
  421. package/dist/types/src/plugin-settings/translations.d.ts.map +0 -1
  422. package/dist/types/src/react/ErrorBoundary.d.ts +0 -31
  423. package/dist/types/src/react/ErrorBoundary.d.ts.map +0 -1
  424. package/dist/types/src/react/IntentContext.d.ts +0 -8
  425. package/dist/types/src/react/IntentContext.d.ts.map +0 -1
  426. package/dist/types/src/react/PluginManagerProvider.d.ts +0 -10
  427. package/dist/types/src/react/PluginManagerProvider.d.ts.map +0 -1
  428. package/dist/types/src/react/Surface.d.ts +0 -12
  429. package/dist/types/src/react/Surface.d.ts.map +0 -1
  430. package/dist/types/src/react/Surface.stories.d.ts +0 -16
  431. package/dist/types/src/react/Surface.stories.d.ts.map +0 -1
  432. package/dist/types/src/react/common.d.ts +0 -13
  433. package/dist/types/src/react/common.d.ts.map +0 -1
  434. package/dist/types/src/react/index.d.ts +0 -7
  435. package/dist/types/src/react/index.d.ts.map +0 -1
  436. package/dist/types/src/react/useCapabilities.d.ts +0 -13
  437. package/dist/types/src/react/useCapabilities.d.ts.map +0 -1
  438. package/dist/types/src/react/useIntentResolver.d.ts +0 -3
  439. package/dist/types/src/react/useIntentResolver.d.ts.map +0 -1
  440. package/dist/types/src/worker.d.ts +0 -4
  441. package/dist/types/src/worker.d.ts.map +0 -1
  442. package/project.json +0 -29
  443. package/src/App.tsx +0 -276
  444. package/src/common/collaboration.ts +0 -21
  445. package/src/common/events.ts +0 -77
  446. package/src/common/file.ts +0 -22
  447. package/src/common/graph.ts +0 -30
  448. package/src/common/layout.ts +0 -278
  449. package/src/common/surface.ts +0 -86
  450. package/src/core/capabilities.test.ts +0 -136
  451. package/src/core/capabilities.ts +0 -254
  452. package/src/core/manager.test.ts +0 -516
  453. package/src/core/manager.ts +0 -519
  454. package/src/playground/debug/Debug.tsx +0 -39
  455. package/src/playground/debug/index.ts +0 -5
  456. package/src/playground/debug/plugin.ts +0 -17
  457. package/src/playground/generator/Main.tsx +0 -71
  458. package/src/playground/generator/Toolbar.tsx +0 -46
  459. package/src/playground/generator/generator.ts +0 -48
  460. package/src/playground/generator/index.ts +0 -6
  461. package/src/playground/generator/plugin.ts +0 -23
  462. package/src/playground/layout/Layout.tsx +0 -33
  463. package/src/playground/layout/plugin.ts +0 -17
  464. package/src/playground/logger/Toolbar.tsx +0 -29
  465. package/src/playground/logger/plugin.ts +0 -36
  466. package/src/playground/logger/schema.ts +0 -12
  467. package/src/playground/playground.stories.tsx +0 -42
  468. package/src/plugin-intent/IntentPlugin.ts +0 -20
  469. package/src/plugin-intent/actions.ts +0 -33
  470. package/src/plugin-intent/errors.ts +0 -39
  471. package/src/plugin-intent/index.ts +0 -8
  472. package/src/plugin-intent/intent-dispatcher.test.ts +0 -279
  473. package/src/plugin-intent/intent-dispatcher.ts +0 -333
  474. package/src/plugin-intent/intent.ts +0 -154
  475. package/src/plugin-settings/SettingsPlugin.ts +0 -35
  476. package/src/plugin-settings/actions.ts +0 -29
  477. package/src/plugin-settings/app-graph-builder.ts +0 -157
  478. package/src/plugin-settings/index.ts +0 -6
  479. package/src/plugin-settings/intent-resolver.ts +0 -34
  480. package/src/plugin-settings/store.ts +0 -33
  481. package/src/plugin-settings/translations.ts +0 -17
  482. package/src/react/ErrorBoundary.tsx +0 -45
  483. package/src/react/IntentContext.tsx +0 -34
  484. package/src/react/Surface.stories.tsx +0 -96
  485. package/src/react/Surface.tsx +0 -77
  486. package/src/react/common.ts +0 -12
  487. package/src/react/index.ts +0 -10
  488. package/src/react/useCapabilities.ts +0 -30
  489. package/src/react/useIntentResolver.ts +0 -22
  490. package/src/worker.ts +0 -11
  491. package/typedoc/.nojekyll +0 -1
  492. package/typedoc/assets/hierarchy.js +0 -1
  493. package/typedoc/assets/highlight.css +0 -106
  494. package/typedoc/assets/icons.js +0 -18
  495. package/typedoc/assets/icons.svg +0 -1
  496. package/typedoc/assets/main.js +0 -60
  497. package/typedoc/assets/navigation.js +0 -1
  498. package/typedoc/assets/search.js +0 -1
  499. package/typedoc/assets/style.css +0 -1640
  500. package/typedoc/classes/CollaborationActions.InsertContent.html +0 -421
  501. package/typedoc/classes/ErrorBoundary.html +0 -125
  502. package/typedoc/classes/IntentAction.ShowUndo.html +0 -227
  503. package/typedoc/classes/IntentAction.Track.html +0 -266
  504. package/typedoc/classes/LayoutAction.AddToast.html +0 -265
  505. package/typedoc/classes/LayoutAction.Close.html +0 -382
  506. package/typedoc/classes/LayoutAction.Expose.html +0 -265
  507. package/typedoc/classes/LayoutAction.Open.html +0 -1123
  508. package/typedoc/classes/LayoutAction.RevertWorkspace.html +0 -343
  509. package/typedoc/classes/LayoutAction.ScrollIntoView.html +0 -460
  510. package/typedoc/classes/LayoutAction.Set.html +0 -460
  511. package/typedoc/classes/LayoutAction.SetLayoutMode.html +0 -499
  512. package/typedoc/classes/LayoutAction.SwitchWorkspace.html +0 -265
  513. package/typedoc/classes/LayoutAction.UpdateComplementary.html +0 -616
  514. package/typedoc/classes/LayoutAction.UpdateDialog.html +0 -1123
  515. package/typedoc/classes/LayoutAction.UpdateLayout.html +0 -461
  516. package/typedoc/classes/LayoutAction.UpdatePopover.html +0 -1435
  517. package/typedoc/classes/LayoutAction.UpdateSidebar.html +0 -616
  518. package/typedoc/classes/Plugin.html +0 -6
  519. package/typedoc/classes/PluginContext.html +0 -38
  520. package/typedoc/classes/PluginManager.html +0 -43
  521. package/typedoc/classes/PluginModule.html +0 -18
  522. package/typedoc/classes/SettingsAction.Open.html +0 -226
  523. package/typedoc/classes/SettingsAction.OpenPluginRegistry.html +0 -265
  524. package/typedoc/functions/Events.createStateEvent.html +0 -2
  525. package/typedoc/functions/IntentPlugin.html +0 -1
  526. package/typedoc/functions/SettingsPlugin.html +0 -1
  527. package/typedoc/functions/allOf.html +0 -2
  528. package/typedoc/functions/chain.html +0 -3
  529. package/typedoc/functions/contributes.html +0 -2
  530. package/typedoc/functions/createDispatcher.html +0 -3
  531. package/typedoc/functions/createIntent.html +0 -6
  532. package/typedoc/functions/createResolver.html +0 -2
  533. package/typedoc/functions/createSurface.html +0 -2
  534. package/typedoc/functions/defineCapability.html +0 -2
  535. package/typedoc/functions/defineEvent.html +0 -2
  536. package/typedoc/functions/defineModule.html +0 -2
  537. package/typedoc/functions/definePlugin.html +0 -2
  538. package/typedoc/functions/eventKey.html +0 -2
  539. package/typedoc/functions/getEvents.html +0 -2
  540. package/typedoc/functions/isAllOf.html +0 -2
  541. package/typedoc/functions/isOneOf.html +0 -2
  542. package/typedoc/functions/isSurfaceAvailable.html +0 -2
  543. package/typedoc/functions/lazy.html +0 -2
  544. package/typedoc/functions/oneOf.html +0 -2
  545. package/typedoc/functions/useApp.html +0 -6
  546. package/typedoc/functions/useAppGraph.html +0 -1
  547. package/typedoc/functions/useCapabilities.html +0 -3
  548. package/typedoc/functions/useCapability.html +0 -4
  549. package/typedoc/functions/useIntentDispatcher.html +0 -1
  550. package/typedoc/functions/useIntentResolver.html +0 -1
  551. package/typedoc/functions/useLayout.html +0 -1
  552. package/typedoc/functions/usePluginManager.html +0 -2
  553. package/typedoc/hierarchy.html +0 -1
  554. package/typedoc/index.html +0 -16
  555. package/typedoc/interfaces/LayoutAction.Toast.html +0 -10
  556. package/typedoc/media/LICENSE +0 -8
  557. package/typedoc/modules/Capabilities.html +0 -1
  558. package/typedoc/modules/CollaborationActions.html +0 -1
  559. package/typedoc/modules/Events.html +0 -1
  560. package/typedoc/modules/IntentAction.html +0 -1
  561. package/typedoc/modules/LayoutAction.html +0 -2
  562. package/typedoc/modules/SettingsAction.html +0 -1
  563. package/typedoc/modules.html +0 -1
  564. package/typedoc/types/ActivationEvent.html +0 -8
  565. package/typedoc/types/ActivationEvents.html +0 -2
  566. package/typedoc/types/AnyCapability.html +0 -1
  567. package/typedoc/types/AnyIntent.html +0 -1
  568. package/typedoc/types/AnyIntentChain.html +0 -1
  569. package/typedoc/types/AnyIntentEffectResult.html +0 -1
  570. package/typedoc/types/AnyIntentResolver.html +0 -1
  571. package/typedoc/types/AnyIntentResult.html +0 -1
  572. package/typedoc/types/Capabilities.FileUploader.html +0 -1
  573. package/typedoc/types/Capabilities.IntentResolver.html +0 -1
  574. package/typedoc/types/Capabilities.Layout.html +0 -1
  575. package/typedoc/types/Capabilities.Metadata.html +0 -1
  576. package/typedoc/types/Capabilities.ReactContext.html +0 -1
  577. package/typedoc/types/Capabilities.ReactRoot.html +0 -1
  578. package/typedoc/types/Capabilities.ReactSurface.html +0 -1
  579. package/typedoc/types/Capabilities.Settings.html +0 -4
  580. package/typedoc/types/Capability.html +0 -9
  581. package/typedoc/types/CreateAppOptions.html +0 -10
  582. package/typedoc/types/FileInfo.html +0 -1
  583. package/typedoc/types/Intent.html +0 -10
  584. package/typedoc/types/IntentChain.html +0 -6
  585. package/typedoc/types/IntentContext.html +0 -5
  586. package/typedoc/types/IntentData.html +0 -1
  587. package/typedoc/types/IntentDispatcher.html +0 -2
  588. package/typedoc/types/IntentDispatcherResult.html +0 -2
  589. package/typedoc/types/IntentEffectDefinition.html +0 -2
  590. package/typedoc/types/IntentEffectResult.html +0 -15
  591. package/typedoc/types/IntentParams.html +0 -3
  592. package/typedoc/types/IntentResolver.html +0 -2
  593. package/typedoc/types/IntentResultData.html +0 -1
  594. package/typedoc/types/IntentSchema.html +0 -1
  595. package/typedoc/types/IntentUndo.html +0 -2
  596. package/typedoc/types/InterfaceDef.html +0 -4
  597. package/typedoc/types/Label.html +0 -1
  598. package/typedoc/types/NodeSerializer.html +0 -8
  599. package/typedoc/types/PluginManagerOptions.html +0 -6
  600. package/typedoc/types/PluginMeta.html +0 -21
  601. package/typedoc/types/PromiseIntentDispatcher.html +0 -2
  602. package/typedoc/types/PromiseIntentUndo.html +0 -2
  603. package/typedoc/types/Resource.html +0 -1
  604. package/typedoc/types/ResourceKey.html +0 -1
  605. package/typedoc/types/ResourceLanguage.html +0 -1
  606. package/typedoc/types/SerializedNode.html +0 -4
  607. package/typedoc/types/SurfaceComponent.html +0 -2
  608. package/typedoc/types/SurfaceDefinition.html +0 -2
  609. package/typedoc/types/SurfaceProps.html +0 -4
  610. package/typedoc/variables/Capabilities.AnchorSort.html +0 -1
  611. package/typedoc/variables/Capabilities.AppGraph.html +0 -1
  612. package/typedoc/variables/Capabilities.AppGraphBuilder.html +0 -1
  613. package/typedoc/variables/Capabilities.AppGraphSerializer.html +0 -1
  614. package/typedoc/variables/Capabilities.ArtifactDefinition.html +0 -1
  615. package/typedoc/variables/Capabilities.FileUploader.html +0 -1
  616. package/typedoc/variables/Capabilities.IntentDispatcher.html +0 -1
  617. package/typedoc/variables/Capabilities.IntentResolver.html +0 -1
  618. package/typedoc/variables/Capabilities.Layout.html +0 -1
  619. package/typedoc/variables/Capabilities.Metadata.html +0 -1
  620. package/typedoc/variables/Capabilities.Null.html +0 -1
  621. package/typedoc/variables/Capabilities.PluginManager.html +0 -1
  622. package/typedoc/variables/Capabilities.ReactContext.html +0 -1
  623. package/typedoc/variables/Capabilities.ReactRoot.html +0 -1
  624. package/typedoc/variables/Capabilities.ReactSurface.html +0 -1
  625. package/typedoc/variables/Capabilities.RxRegistry.html +0 -1
  626. package/typedoc/variables/Capabilities.Settings.html +0 -1
  627. package/typedoc/variables/Capabilities.SettingsStore.html +0 -1
  628. package/typedoc/variables/Capabilities.Tools.html +0 -1
  629. package/typedoc/variables/Capabilities.Translations.html +0 -1
  630. package/typedoc/variables/Events.AppGraphReady.html +0 -2
  631. package/typedoc/variables/Events.DispatcherReady.html +0 -2
  632. package/typedoc/variables/Events.LayoutReady.html +0 -1
  633. package/typedoc/variables/Events.SettingsReady.html +0 -2
  634. package/typedoc/variables/Events.SetupAppGraph.html +0 -2
  635. package/typedoc/variables/Events.SetupArtifactDefinition.html +0 -2
  636. package/typedoc/variables/Events.SetupIntentResolver.html +0 -2
  637. package/typedoc/variables/Events.SetupMetadata.html +0 -2
  638. package/typedoc/variables/Events.SetupReactSurface.html +0 -2
  639. package/typedoc/variables/Events.SetupSettings.html +0 -2
  640. package/typedoc/variables/Events.SetupTranslations.html +0 -2
  641. package/typedoc/variables/Events.Startup.html +0 -2
  642. package/typedoc/variables/FileInfoSchema.html +0 -1
  643. package/typedoc/variables/INTENT_ACTION.html +0 -1
  644. package/typedoc/variables/INTENT_PLUGIN.html +0 -1
  645. package/typedoc/variables/LAYOUT_ACTION.html +0 -1
  646. package/typedoc/variables/LAYOUT_PLUGIN.html +0 -1
  647. package/typedoc/variables/Label.html +0 -1
  648. package/typedoc/variables/LayoutAction.Toast.html +0 -1
  649. package/typedoc/variables/LayoutAction.UPDATE_LAYOUT.html +0 -1
  650. package/typedoc/variables/PluginManagerProvider.html +0 -2
  651. package/typedoc/variables/Resource.html +0 -2
  652. package/typedoc/variables/ResourceKey.html +0 -1
  653. package/typedoc/variables/ResourceLanguage.html +0 -1
  654. package/typedoc/variables/SETTINGS_ACTION.html +0 -1
  655. package/typedoc/variables/SETTINGS_ID.html +0 -1
  656. package/typedoc/variables/SETTINGS_KEY.html +0 -1
  657. package/typedoc/variables/SETTINGS_PLUGIN.html +0 -1
  658. package/typedoc/variables/Surface.html +0 -2
  659. package/typedoc/variables/defaultFileTypes.html +0 -1
  660. /package/dist/lib/browser/{intent-dispatcher-XVBOMF2Y.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
  661. /package/dist/lib/browser/{worker.mjs.map → chunk-YAFEA4GV.mjs.map} +0 -0
  662. /package/dist/lib/{node-esm/intent-dispatcher-7JPGLCQ5.mjs.map → browser/common/activation-events.mjs.map} +0 -0
  663. /package/dist/lib/{node-esm/worker.mjs.map → browser/common/capabilities.mjs.map} +0 -0
@@ -0,0 +1,808 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ eventKey,
4
+ getEvents,
5
+ isAllOf
6
+ } from "./chunk-7OWSHPYK.mjs";
7
+ import {
8
+ Service as Service2
9
+ } from "./chunk-DZ2XLAGI.mjs";
10
+ import {
11
+ Service
12
+ } from "./chunk-64IMLAS2.mjs";
13
+ import {
14
+ __export
15
+ } from "./chunk-HSLMI22Q.mjs";
16
+
17
+ // src/core/plugin-manager.ts
18
+ var plugin_manager_exports = {};
19
+ __export(plugin_manager_exports, {
20
+ ManagerTypeId: () => ManagerTypeId,
21
+ isManager: () => isManager,
22
+ make: () => make5
23
+ });
24
+ import { Atom as Atom2, Registry } from "@effect-atom/atom-react";
25
+ import * as Array from "effect/Array";
26
+ import * as Cause from "effect/Cause";
27
+ import * as Deferred2 from "effect/Deferred";
28
+ import * as Duration from "effect/Duration";
29
+ import * as Effect2 from "effect/Effect";
30
+ import * as Fiber from "effect/Fiber";
31
+ import * as Function from "effect/Function";
32
+ import * as HashSet from "effect/HashSet";
33
+ import * as PubSub from "effect/PubSub";
34
+ import * as Ref from "effect/Ref";
35
+ import { runAndForwardErrors } from "@dxos/effect";
36
+ import { log as log2 } from "@dxos/log";
37
+
38
+ // src/core/capability-manager.ts
39
+ var capability_manager_exports = {};
40
+ __export(capability_manager_exports, {
41
+ make: () => make2
42
+ });
43
+ import { Atom } from "@effect-atom/atom-react";
44
+ import * as Deferred from "effect/Deferred";
45
+ import * as Effect from "effect/Effect";
46
+ import { invariant } from "@dxos/invariant";
47
+ import { log } from "@dxos/log";
48
+ var __dxlog_file = "/__w/dxos/dxos/packages/sdk/app-framework/src/core/capability-manager.ts";
49
+ var CapabilityManagerImpl = class {
50
+ _registry;
51
+ _capabilityEntries = Atom.family(() => {
52
+ return Atom.make([]).pipe(Atom.keepAlive);
53
+ });
54
+ _capabilities = Atom.family((id) => {
55
+ return Atom.make((get) => {
56
+ const current = get(this._capabilityEntries(id));
57
+ return current.map((c) => c.implementation);
58
+ });
59
+ });
60
+ _capability = Atom.family((id) => {
61
+ return Atom.make((get) => {
62
+ const current = get(this._capabilities(id));
63
+ invariant(current.length > 0, `No capability found for ${id}`, {
64
+ F: __dxlog_file,
65
+ L: 84,
66
+ S: this,
67
+ A: [
68
+ "current.length > 0",
69
+ "`No capability found for ${id}`"
70
+ ]
71
+ });
72
+ return current[0];
73
+ });
74
+ });
75
+ constructor({ registry }) {
76
+ this._registry = registry;
77
+ }
78
+ contribute({ module: moduleId, interface: interfaceDef, implementation }) {
79
+ const current = this._registry.get(this._capabilityEntries(interfaceDef.identifier));
80
+ const isDuplicate = current.some((c) => c.moduleId === moduleId && c.implementation === implementation);
81
+ if (isDuplicate) {
82
+ log("capability already contributed, skipping", {
83
+ id: interfaceDef.identifier,
84
+ moduleId
85
+ }, {
86
+ F: __dxlog_file,
87
+ L: 105,
88
+ S: this,
89
+ C: (f, a) => f(...a)
90
+ });
91
+ return;
92
+ }
93
+ const entry = {
94
+ moduleId,
95
+ implementation
96
+ };
97
+ this._registry.set(this._capabilityEntries(interfaceDef.identifier), [
98
+ ...current,
99
+ entry
100
+ ]);
101
+ log("capability contributed", {
102
+ id: interfaceDef.identifier,
103
+ moduleId,
104
+ count: current.length
105
+ }, {
106
+ F: __dxlog_file,
107
+ L: 111,
108
+ S: this,
109
+ C: (f, a) => f(...a)
110
+ });
111
+ }
112
+ remove(interfaceDef, implementation) {
113
+ const current = this._registry.get(this._capabilityEntries(interfaceDef.identifier));
114
+ if (current.length === 0) {
115
+ return;
116
+ }
117
+ const next = current.filter((c) => c.implementation !== implementation);
118
+ if (next.length !== current.length) {
119
+ this._registry.set(this._capabilityEntries(interfaceDef.identifier), next);
120
+ log("capability removed", {
121
+ id: interfaceDef.identifier,
122
+ count: current.length
123
+ }, {
124
+ F: __dxlog_file,
125
+ L: 127,
126
+ S: this,
127
+ C: (f, a) => f(...a)
128
+ });
129
+ } else {
130
+ log.warn("capability not removed", {
131
+ id: interfaceDef.identifier
132
+ }, {
133
+ F: __dxlog_file,
134
+ L: 129,
135
+ S: this,
136
+ C: (f, a) => f(...a)
137
+ });
138
+ }
139
+ }
140
+ atom(interfaceDef) {
141
+ return this._capabilities(interfaceDef.identifier);
142
+ }
143
+ getAll(interfaceDef) {
144
+ return this._registry.get(this.atom(interfaceDef));
145
+ }
146
+ get(interfaceDef) {
147
+ const capabilities = this.getAll(interfaceDef);
148
+ invariant(capabilities.length > 0, `No capability found for ${interfaceDef.identifier}`, {
149
+ F: __dxlog_file,
150
+ L: 144,
151
+ S: this,
152
+ A: [
153
+ "capabilities.length > 0",
154
+ "`No capability found for ${interfaceDef.identifier}`"
155
+ ]
156
+ });
157
+ return capabilities[0];
158
+ }
159
+ waitFor(interfaceDef) {
160
+ return Effect.gen(this, function* () {
161
+ const [capability] = this.getAll(interfaceDef);
162
+ if (capability) {
163
+ return capability;
164
+ }
165
+ const deferred = yield* Deferred.make();
166
+ const cancel = this._registry.subscribe(this.atom(interfaceDef), (capabilities) => {
167
+ if (capabilities.length > 0) {
168
+ Effect.runSync(Deferred.succeed(deferred, capabilities[0]));
169
+ }
170
+ });
171
+ const result = yield* Deferred.await(deferred);
172
+ cancel();
173
+ return result;
174
+ });
175
+ }
176
+ };
177
+ var make2 = (options) => new CapabilityManagerImpl(options);
178
+
179
+ // src/core/plugin-manager.ts
180
+ var __dxlog_file2 = "/__w/dxos/dxos/packages/sdk/app-framework/src/core/plugin-manager.ts";
181
+ var ManagerTypeId = Symbol.for("@dxos/app-framework/Manager");
182
+ var isManager = (value) => {
183
+ return typeof value === "object" && value !== null && ManagerTypeId in value;
184
+ };
185
+ var ManagerImpl = class {
186
+ [ManagerTypeId] = ManagerTypeId;
187
+ activation = Effect2.runSync(PubSub.unbounded());
188
+ capabilities;
189
+ registry;
190
+ _pluginsAtom;
191
+ _coreAtom;
192
+ _enabledAtom;
193
+ _modulesAtom;
194
+ _activeAtom;
195
+ _eventsFiredAtom;
196
+ _pendingResetAtom;
197
+ _pluginLoader;
198
+ _capabilities = /* @__PURE__ */ new Map();
199
+ _moduleMemoMap = /* @__PURE__ */ new Map();
200
+ _moduleSemaphores = /* @__PURE__ */ new Map();
201
+ _activatingEvents = Effect2.runSync(Ref.make([]));
202
+ _activatingModules = Effect2.runSync(Ref.make([]));
203
+ constructor({ pluginLoader, plugins = [], core = plugins.map(({ meta }) => meta.id), enabled = [], registry }) {
204
+ this.registry = registry ?? Registry.make();
205
+ this.capabilities = make2({
206
+ registry: this.registry
207
+ });
208
+ this._pluginLoader = pluginLoader;
209
+ this._pluginsAtom = Atom2.make(plugins).pipe(Atom2.keepAlive);
210
+ this._coreAtom = Atom2.make(core).pipe(Atom2.keepAlive);
211
+ this._enabledAtom = Atom2.make(enabled).pipe(Atom2.keepAlive);
212
+ this._modulesAtom = Atom2.make([]).pipe(Atom2.keepAlive);
213
+ this._activeAtom = Atom2.make([]).pipe(Atom2.keepAlive);
214
+ this._eventsFiredAtom = Atom2.make([]).pipe(Atom2.keepAlive);
215
+ this._pendingResetAtom = Atom2.make([]).pipe(Atom2.keepAlive);
216
+ plugins.forEach((plugin) => this._addPlugin(plugin));
217
+ void Effect2.all([
218
+ ...core,
219
+ ...enabled
220
+ ].map((id) => this.enable(id))).pipe(runAndForwardErrors);
221
+ }
222
+ get plugins() {
223
+ return this._pluginsAtom;
224
+ }
225
+ get core() {
226
+ return this._coreAtom;
227
+ }
228
+ /**
229
+ * Ids of plugins that are currently enabled.
230
+ */
231
+ get enabled() {
232
+ return this._enabledAtom;
233
+ }
234
+ /**
235
+ * Modules of plugins which are currently enabled.
236
+ */
237
+ get modules() {
238
+ return this._modulesAtom;
239
+ }
240
+ /**
241
+ * Ids of modules which are currently active.
242
+ */
243
+ get active() {
244
+ return this._activeAtom;
245
+ }
246
+ /**
247
+ * Ids of events which have been fired.
248
+ */
249
+ get eventsFired() {
250
+ return this._eventsFiredAtom;
251
+ }
252
+ /**
253
+ * Ids of modules which are pending reset.
254
+ */
255
+ get pendingReset() {
256
+ return this._pendingResetAtom;
257
+ }
258
+ getPlugins() {
259
+ return this._get(this._pluginsAtom);
260
+ }
261
+ getCore() {
262
+ return this._get(this._coreAtom);
263
+ }
264
+ getEnabled() {
265
+ return this._get(this._enabledAtom);
266
+ }
267
+ getModules() {
268
+ return this._get(this._modulesAtom);
269
+ }
270
+ getActive() {
271
+ return this._get(this._activeAtom);
272
+ }
273
+ getEventsFired() {
274
+ return this._get(this._eventsFiredAtom);
275
+ }
276
+ getPendingReset() {
277
+ return this._get(this._pendingResetAtom);
278
+ }
279
+ /**
280
+ * Adds a plugin to the manager via the plugin loader.
281
+ * @param id The id of the plugin.
282
+ */
283
+ add(id) {
284
+ return Effect2.gen(this, function* () {
285
+ log2("add plugin", {
286
+ id
287
+ }, {
288
+ F: __dxlog_file2,
289
+ L: 210,
290
+ S: this,
291
+ C: (f, a) => f(...a)
292
+ });
293
+ const plugin = yield* this._pluginLoader(id);
294
+ this._addPlugin(plugin);
295
+ return yield* this.enable(id);
296
+ });
297
+ }
298
+ /**
299
+ * Enables a plugin.
300
+ * @param id The id of the plugin.
301
+ */
302
+ enable(id) {
303
+ return Effect2.gen(this, function* () {
304
+ log2("enable plugin", {
305
+ id
306
+ }, {
307
+ F: __dxlog_file2,
308
+ L: 223,
309
+ S: this,
310
+ C: (f, a) => f(...a)
311
+ });
312
+ const plugin = this._getPlugin(id);
313
+ if (!plugin) {
314
+ return false;
315
+ }
316
+ this._update(this._enabledAtom, (enabled) => enabled.includes(id) ? enabled : [
317
+ ...enabled,
318
+ id
319
+ ]);
320
+ plugin.modules.forEach((module) => {
321
+ this._addModule(module);
322
+ this._setPendingResetByModule(module);
323
+ });
324
+ log2("pending reset", {
325
+ events: [
326
+ ...this.getPendingReset()
327
+ ]
328
+ }, {
329
+ F: __dxlog_file2,
330
+ L: 236,
331
+ S: this,
332
+ C: (f, a) => f(...a)
333
+ });
334
+ yield* Effect2.all(this.getPendingReset().map((event) => this.activate(event)), {
335
+ concurrency: "unbounded"
336
+ });
337
+ return true;
338
+ });
339
+ }
340
+ /**
341
+ * Removes a plugin from the manager.
342
+ * @param id The id of the plugin.
343
+ */
344
+ remove(id) {
345
+ log2("remove plugin", {
346
+ id
347
+ }, {
348
+ F: __dxlog_file2,
349
+ L: 251,
350
+ S: this,
351
+ C: (f, a) => f(...a)
352
+ });
353
+ const result = this.disable(id);
354
+ if (!result) {
355
+ return false;
356
+ }
357
+ this._removePlugin(id);
358
+ return true;
359
+ }
360
+ /**
361
+ * Disables a plugin.
362
+ * @param id The id of the plugin.
363
+ */
364
+ disable(id) {
365
+ return Effect2.gen(this, function* () {
366
+ log2("disable plugin", {
367
+ id
368
+ }, {
369
+ F: __dxlog_file2,
370
+ L: 267,
371
+ S: this,
372
+ C: (f, a) => f(...a)
373
+ });
374
+ if (this._get(this._coreAtom).includes(id)) {
375
+ return false;
376
+ }
377
+ const plugin = this._getPlugin(id);
378
+ if (!plugin) {
379
+ return false;
380
+ }
381
+ const enabledIndex = this._get(this._enabledAtom).findIndex((enabled) => enabled === id);
382
+ if (enabledIndex !== -1) {
383
+ this._update(this._enabledAtom, (enabled) => enabled.filter((item) => item !== id));
384
+ yield* this.deactivate(id);
385
+ plugin.modules.forEach((module) => {
386
+ this._removeModule(module.id);
387
+ });
388
+ }
389
+ return true;
390
+ });
391
+ }
392
+ /**
393
+ * Activates plugins based on the activation event.
394
+ * @param event The activation event.
395
+ * @returns Whether the activation was successful.
396
+ */
397
+ activate(event, params) {
398
+ const key = typeof event === "string" ? event : eventKey(event);
399
+ return Effect2.gen(this, function* () {
400
+ log2("activating", {
401
+ key,
402
+ ...params
403
+ }, {
404
+ F: __dxlog_file2,
405
+ L: 302,
406
+ S: this,
407
+ C: (f, a) => f(...a)
408
+ });
409
+ yield* Ref.update(this._activatingEvents, (activating) => Array.append(activating, key));
410
+ const pendingIndex = this._get(this._pendingResetAtom).findIndex((event2) => event2 === key);
411
+ if (pendingIndex !== -1) {
412
+ this._update(this._pendingResetAtom, (pending) => pending.filter((event2) => event2 !== key));
413
+ }
414
+ const activatingEvents = yield* this._activatingEvents;
415
+ const activatingModules = yield* this._activatingModules;
416
+ const modules = this._getInactiveModulesByEvent(key).filter((module) => {
417
+ const allOf = isAllOf(module.activatesOn);
418
+ if (!allOf) {
419
+ return true;
420
+ }
421
+ const events = getEvents(module.activatesOn).filter((event2) => eventKey(event2) !== key);
422
+ return events.every((event2) => this._get(this._eventsFiredAtom).includes(eventKey(event2)) || activatingEvents.includes(eventKey(event2))) && !activatingModules.includes(module.id);
423
+ });
424
+ yield* Ref.update(this._activatingModules, (activating) => Array.appendAll(activating, modules.map((module) => module.id)));
425
+ if (modules.length === 0) {
426
+ log2("no modules to activate", {
427
+ key
428
+ }, {
429
+ F: __dxlog_file2,
430
+ L: 337,
431
+ S: this,
432
+ C: (f, a) => f(...a)
433
+ });
434
+ if (!this._get(this._eventsFiredAtom).includes(key)) {
435
+ this._update(this._eventsFiredAtom, (events) => [
436
+ ...events,
437
+ key
438
+ ]);
439
+ }
440
+ return false;
441
+ }
442
+ log2("activating modules", {
443
+ key,
444
+ modules: modules.map((module) => module.id)
445
+ }, {
446
+ F: __dxlog_file2,
447
+ L: 344,
448
+ S: this,
449
+ C: (f, a) => f(...a)
450
+ });
451
+ yield* PubSub.publish(this.activation, {
452
+ event: key,
453
+ state: "activating"
454
+ });
455
+ const beforeEvents = Function.pipe(modules, Array.flatMap((module) => module.activatesBefore ?? []), HashSet.fromIterable, HashSet.toValues, Array.filter((event2) => !activatingEvents.includes(eventKey(event2))));
456
+ yield* Function.pipe(beforeEvents, Array.map((event2) => this.activate(event2, {
457
+ before: key
458
+ })), Effect2.allWith({
459
+ concurrency: "unbounded"
460
+ }), together(Effect2.sleep(Duration.seconds(10)).pipe(Effect2.andThen(Effect2.sync(() => log2.warn("activatesBefore is taking a long time", {
461
+ event: key,
462
+ beforeEvents: beforeEvents.map(eventKey)
463
+ }, {
464
+ F: __dxlog_file2,
465
+ L: 363,
466
+ S: this,
467
+ C: (f, a) => f(...a)
468
+ }))))));
469
+ const getCapabilities = yield* Function.pipe(modules, Array.map((mod) => this._loadModule(mod)), Effect2.allWith({
470
+ concurrency: "unbounded"
471
+ }), Effect2.catchAll((error) => {
472
+ return Effect2.gen(this, function* () {
473
+ yield* PubSub.publish(this.activation, {
474
+ event: key,
475
+ state: "error",
476
+ error
477
+ });
478
+ return yield* Effect2.fail(error);
479
+ });
480
+ }));
481
+ yield* Function.pipe(
482
+ modules,
483
+ Array.zip(getCapabilities),
484
+ Array.map(([module, capabilities]) => this._contributeCapabilities(module, capabilities)),
485
+ Effect2.all
486
+ );
487
+ const afterEvents = Function.pipe(modules, Array.flatMap((module) => module.activatesAfter ?? []), HashSet.fromIterable, HashSet.toValues, Array.filter((event2) => !activatingEvents.includes(eventKey(event2))));
488
+ yield* Function.pipe(afterEvents, Array.map((event2) => this.activate(event2, {
489
+ after: key
490
+ })), Effect2.allWith({
491
+ concurrency: "unbounded"
492
+ }), together(Effect2.sleep(Duration.seconds(10)).pipe(Effect2.andThen(Effect2.sync(() => log2.warn("activatesAfter is taking a long time", {
493
+ event: key,
494
+ afterEvents: afterEvents.map(eventKey)
495
+ }, {
496
+ F: __dxlog_file2,
497
+ L: 412,
498
+ S: this,
499
+ C: (f, a) => f(...a)
500
+ }))))));
501
+ yield* Ref.update(this._activatingEvents, (activating) => Array.filter(activating, (event2) => event2 !== key));
502
+ yield* Ref.update(this._activatingModules, (activating) => Array.filter(activating, (module) => !modules.map((module2) => module2.id).includes(module)));
503
+ if (!this._get(this._eventsFiredAtom).includes(key)) {
504
+ this._update(this._eventsFiredAtom, (events) => [
505
+ ...events,
506
+ key
507
+ ]);
508
+ }
509
+ yield* PubSub.publish(this.activation, {
510
+ event: key,
511
+ state: "activated"
512
+ });
513
+ log2("activated", {
514
+ key
515
+ }, {
516
+ F: __dxlog_file2,
517
+ L: 432,
518
+ S: this,
519
+ C: (f, a) => f(...a)
520
+ });
521
+ return true;
522
+ }).pipe(together(Effect2.sleep(Duration.seconds(15)).pipe(Effect2.andThen(Effect2.sync(() => log2.warn("event activation is taking a long time", {
523
+ event: key
524
+ }, {
525
+ F: __dxlog_file2,
526
+ L: 438,
527
+ S: this,
528
+ C: (f, a) => f(...a)
529
+ }))))));
530
+ }
531
+ /**
532
+ * Deactivates all of the modules for a plugin.
533
+ * @param id The id of the plugin.
534
+ * @returns Whether the deactivation was successful.
535
+ */
536
+ deactivate(id) {
537
+ return Effect2.gen(this, function* () {
538
+ const plugin = this._getPlugin(id);
539
+ if (!plugin) {
540
+ return false;
541
+ }
542
+ const modules = plugin.modules;
543
+ const results = yield* Effect2.all(modules.map((module) => this._deactivateModule(module)), {
544
+ concurrency: "unbounded"
545
+ });
546
+ return results.every((result) => result);
547
+ });
548
+ }
549
+ /**
550
+ * Re-activates the modules that were activated by the event.
551
+ * @param event The activation event.
552
+ * @returns Whether the reset was successful.
553
+ */
554
+ reset(event) {
555
+ return Effect2.gen(this, function* () {
556
+ const key = typeof event === "string" ? event : eventKey(event);
557
+ log2("reset", {
558
+ key
559
+ }, {
560
+ F: __dxlog_file2,
561
+ L: 473,
562
+ S: this,
563
+ C: (f, a) => f(...a)
564
+ });
565
+ const modules = this._getActiveModulesByEvent(key);
566
+ const results = yield* Effect2.all(modules.map((module) => this._deactivateModule(module)), {
567
+ concurrency: "unbounded"
568
+ });
569
+ if (results.every((result) => result)) {
570
+ return yield* this.activate(key);
571
+ } else {
572
+ return false;
573
+ }
574
+ });
575
+ }
576
+ _get(atom) {
577
+ return this.registry.get(atom);
578
+ }
579
+ _set(atom, value) {
580
+ this.registry.set(atom, value);
581
+ }
582
+ _update(atom, updater) {
583
+ this._set(atom, updater(this._get(atom)));
584
+ }
585
+ _addPlugin(plugin) {
586
+ log2("add plugin", {
587
+ id: plugin.meta.id
588
+ }, {
589
+ F: __dxlog_file2,
590
+ L: 501,
591
+ S: this,
592
+ C: (f, a) => f(...a)
593
+ });
594
+ this._update(this._pluginsAtom, (plugins) => plugins.includes(plugin) ? plugins : [
595
+ ...plugins,
596
+ plugin
597
+ ]);
598
+ }
599
+ _removePlugin(id) {
600
+ log2("remove plugin", {
601
+ id
602
+ }, {
603
+ F: __dxlog_file2,
604
+ L: 507,
605
+ S: this,
606
+ C: (f, a) => f(...a)
607
+ });
608
+ this._update(this._pluginsAtom, (plugins) => plugins.filter((plugin) => plugin.meta.id !== id));
609
+ }
610
+ _addModule(module) {
611
+ log2("add module", {
612
+ id: module.id
613
+ }, {
614
+ F: __dxlog_file2,
615
+ L: 512,
616
+ S: this,
617
+ C: (f, a) => f(...a)
618
+ });
619
+ this._update(this._modulesAtom, (modules) => modules.includes(module) ? modules : [
620
+ ...modules,
621
+ module
622
+ ]);
623
+ }
624
+ _removeModule(id) {
625
+ log2("remove module", {
626
+ id
627
+ }, {
628
+ F: __dxlog_file2,
629
+ L: 518,
630
+ S: this,
631
+ C: (f, a) => f(...a)
632
+ });
633
+ this._update(this._modulesAtom, (modules) => modules.filter((module) => module.id !== id));
634
+ }
635
+ _getPlugin(id) {
636
+ return this._get(this._pluginsAtom).find((plugin) => plugin.meta.id === id);
637
+ }
638
+ _getActiveModules() {
639
+ const active = this._get(this._activeAtom);
640
+ return this._get(this._modulesAtom).filter((module) => active.includes(module.id));
641
+ }
642
+ _getInactiveModules() {
643
+ const active = this._get(this._activeAtom);
644
+ return this._get(this._modulesAtom).filter((module) => !active.includes(module.id));
645
+ }
646
+ _getActiveModulesByEvent(key) {
647
+ return this._getActiveModules().filter((module) => getEvents(module.activatesOn).map(eventKey).includes(key));
648
+ }
649
+ _getInactiveModulesByEvent(key) {
650
+ return this._getInactiveModules().filter((module) => getEvents(module.activatesOn).map(eventKey).includes(key));
651
+ }
652
+ _setPendingResetByModule(module) {
653
+ const activationEvents = getEvents(module.activatesOn).map(eventKey).filter((key) => this._get(this._eventsFiredAtom).includes(key));
654
+ const pendingReset = Array.fromIterable(new Set(activationEvents)).filter((event) => {
655
+ const pending = this._get(this._pendingResetAtom);
656
+ return !pending.includes(event);
657
+ });
658
+ if (pendingReset.length > 0) {
659
+ log2("pending reset", {
660
+ events: pendingReset
661
+ }, {
662
+ F: __dxlog_file2,
663
+ L: 558,
664
+ S: this,
665
+ C: (f, a) => f(...a)
666
+ });
667
+ this._update(this._pendingResetAtom, (current) => [
668
+ ...current,
669
+ ...pendingReset
670
+ ]);
671
+ }
672
+ }
673
+ _getModuleSemaphore(moduleId) {
674
+ let semaphore = this._moduleSemaphores.get(moduleId);
675
+ if (!semaphore) {
676
+ semaphore = Effect2.runSync(Effect2.makeSemaphore(1));
677
+ this._moduleSemaphores.set(moduleId, semaphore);
678
+ }
679
+ return semaphore;
680
+ }
681
+ _loadModule = (module) => Effect2.gen(this, function* () {
682
+ const semaphore = this._getModuleSemaphore(module.id);
683
+ const deferredToAwait = yield* Effect2.gen(this, function* () {
684
+ const existing = this._moduleMemoMap.get(module.id);
685
+ if (existing) {
686
+ return existing;
687
+ }
688
+ const deferred = yield* Deferred2.make();
689
+ this._moduleMemoMap.set(module.id, deferred);
690
+ const loadEffect = Effect2.gen(this, function* () {
691
+ log2("loading module", {
692
+ module: module.id
693
+ }, {
694
+ F: __dxlog_file2,
695
+ L: 588,
696
+ S: this,
697
+ C: (f, a) => f(...a)
698
+ });
699
+ const [duration, capabilities] = yield* module.activate().pipe(Effect2.provideService(Service, this.capabilities), Effect2.provideService(Service2, this), Effect2.timed);
700
+ const normalized = capabilities == null ? [] : Array.isArray(capabilities) ? capabilities : [
701
+ capabilities
702
+ ];
703
+ log2("loaded module", {
704
+ module: module.id,
705
+ elapsed: Duration.toMillis(duration),
706
+ failed: false
707
+ }, {
708
+ F: __dxlog_file2,
709
+ L: 597,
710
+ S: this,
711
+ C: (f, a) => f(...a)
712
+ });
713
+ return normalized;
714
+ }).pipe(Effect2.withSpan("PluginManager._loadModule"), together(Effect2.sleep(Duration.seconds(10)).pipe(Effect2.andThen(Effect2.sync(() => log2.warn(`module is taking a long time to activate`, {
715
+ module: module.id
716
+ }, {
717
+ F: __dxlog_file2,
718
+ L: 608,
719
+ S: this,
720
+ C: (f, a) => f(...a)
721
+ }))))));
722
+ yield* Effect2.forkDaemon(loadEffect.pipe(Effect2.tap((result) => Deferred2.succeed(deferred, result)), Effect2.catchAllCause((cause) => {
723
+ const error = Cause.squash(cause);
724
+ log2.error("module failed to activate", {
725
+ module: module.id,
726
+ error: error instanceof Error ? error.message : String(error),
727
+ stack: error instanceof Error ? error.stack : void 0,
728
+ isDefect: !Cause.isFailure(cause)
729
+ }, {
730
+ F: __dxlog_file2,
731
+ L: 620,
732
+ S: this,
733
+ C: (f, a) => f(...a)
734
+ });
735
+ return Deferred2.fail(deferred, error instanceof Error ? error : new Error(String(error)));
736
+ })));
737
+ return deferred;
738
+ }).pipe(semaphore.withPermits(1));
739
+ return yield* Deferred2.await(deferredToAwait);
740
+ });
741
+ _contributeCapabilities(module, capabilities) {
742
+ return Effect2.gen(this, function* () {
743
+ capabilities.forEach((capability) => {
744
+ this.capabilities.contribute({
745
+ module: module.id,
746
+ ...capability
747
+ });
748
+ });
749
+ this._update(this._activeAtom, (active) => [
750
+ ...active,
751
+ module.id
752
+ ]);
753
+ this._capabilities.set(module.id, capabilities);
754
+ });
755
+ }
756
+ _deactivateModule(module) {
757
+ return Effect2.gen(this, function* () {
758
+ const id = module.id;
759
+ log2("deactivating", {
760
+ id
761
+ }, {
762
+ F: __dxlog_file2,
763
+ L: 654,
764
+ S: this,
765
+ C: (f, a) => f(...a)
766
+ });
767
+ this._moduleMemoMap.delete(id);
768
+ const capabilities = this._capabilities.get(id);
769
+ if (capabilities) {
770
+ for (const capability of capabilities) {
771
+ this.capabilities.remove(capability.interface, capability.implementation);
772
+ const program = capability.deactivate?.() ?? Effect2.succeed(void 0);
773
+ yield* program;
774
+ }
775
+ this._capabilities.delete(id);
776
+ }
777
+ const activeIndex = this._get(this._activeAtom).findIndex((event) => event === id);
778
+ if (activeIndex !== -1) {
779
+ this._update(this._activeAtom, (active) => active.filter((event) => event !== id));
780
+ }
781
+ log2("deactivated", {
782
+ id
783
+ }, {
784
+ F: __dxlog_file2,
785
+ L: 672,
786
+ S: this,
787
+ C: (f, a) => f(...a)
788
+ });
789
+ return true;
790
+ });
791
+ }
792
+ };
793
+ var make5 = (options) => new ManagerImpl(options);
794
+ var together = (togetherEffect) => (effect) => Effect2.gen(function* () {
795
+ const togetherFiber = yield* Effect2.fork(togetherEffect);
796
+ const result = yield* effect;
797
+ yield* Fiber.interrupt(togetherFiber);
798
+ return result;
799
+ });
800
+
801
+ export {
802
+ capability_manager_exports,
803
+ ManagerTypeId,
804
+ isManager,
805
+ make5 as make,
806
+ plugin_manager_exports
807
+ };
808
+ //# sourceMappingURL=chunk-XHAKT6UD.mjs.map