@dxos/app-framework 0.8.4-main.f9ba587 → 0.8.4-main.fcfe5033a5

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 (701) hide show
  1. package/.storybook/main.mts +9 -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/dist/lib/browser/capability-EYY7KYU5.mjs +35 -0
  5. package/dist/lib/browser/capability-EYY7KYU5.mjs.map +7 -0
  6. package/dist/lib/browser/capability-W7NPZR6A.mjs +38 -0
  7. package/dist/lib/browser/capability-W7NPZR6A.mjs.map +7 -0
  8. package/dist/lib/browser/chunk-2CKCJ6PN.mjs +79 -0
  9. package/dist/lib/browser/chunk-2CKCJ6PN.mjs.map +7 -0
  10. package/dist/lib/browser/chunk-4D6YAWLP.mjs +393 -0
  11. package/dist/lib/browser/chunk-4D6YAWLP.mjs.map +7 -0
  12. package/dist/lib/browser/chunk-56CEL32L.mjs +963 -0
  13. package/dist/lib/browser/chunk-56CEL32L.mjs.map +7 -0
  14. package/dist/lib/browser/chunk-F7FW2RK2.mjs +167 -0
  15. package/dist/lib/browser/chunk-F7FW2RK2.mjs.map +7 -0
  16. package/dist/lib/browser/chunk-I34GF4NG.mjs +34 -0
  17. package/dist/lib/browser/chunk-I34GF4NG.mjs.map +7 -0
  18. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  19. package/dist/lib/browser/chunk-JKWMHZP6.mjs +80 -0
  20. package/dist/lib/browser/chunk-JKWMHZP6.mjs.map +7 -0
  21. package/dist/lib/browser/chunk-QRTB4Q3U.mjs +594 -0
  22. package/dist/lib/browser/chunk-QRTB4Q3U.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-QSXYHXCE.mjs +48 -0
  24. package/dist/lib/browser/chunk-QSXYHXCE.mjs.map +7 -0
  25. package/dist/lib/browser/chunk-RFSO3JRG.mjs +1 -0
  26. package/dist/lib/browser/chunk-RHQGPRWN.mjs +174 -0
  27. package/dist/lib/browser/chunk-RHQGPRWN.mjs.map +7 -0
  28. package/dist/lib/browser/chunk-T3Y4AEKX.mjs +42 -0
  29. package/dist/lib/browser/chunk-T3Y4AEKX.mjs.map +7 -0
  30. package/dist/lib/browser/chunk-TGX63LTL.mjs +8 -0
  31. package/dist/lib/browser/chunk-TGX63LTL.mjs.map +7 -0
  32. package/dist/lib/browser/chunk-ZBA6IH6L.mjs +148 -0
  33. package/dist/lib/browser/chunk-ZBA6IH6L.mjs.map +7 -0
  34. package/dist/lib/browser/cli/index.mjs +90 -0
  35. package/dist/lib/browser/cli/index.mjs.map +7 -0
  36. package/dist/lib/browser/common/activation-events.mjs +24 -0
  37. package/dist/lib/browser/common/capabilities.mjs +46 -0
  38. package/dist/lib/browser/core/activation-event.mjs +20 -0
  39. package/dist/lib/browser/core/activation-event.mjs.map +7 -0
  40. package/dist/lib/browser/core/capability.mjs +30 -0
  41. package/dist/lib/browser/core/capability.mjs.map +7 -0
  42. package/dist/lib/browser/core/plugin-manager.mjs +15 -0
  43. package/dist/lib/browser/core/plugin-manager.mjs.map +7 -0
  44. package/dist/lib/browser/core/plugin.mjs +29 -0
  45. package/dist/lib/browser/core/plugin.mjs.map +7 -0
  46. package/dist/lib/browser/core/url-loader.mjs +16 -0
  47. package/dist/lib/browser/core/url-loader.mjs.map +7 -0
  48. package/dist/lib/browser/index.mjs +91 -156
  49. package/dist/lib/browser/index.mjs.map +4 -4
  50. package/dist/lib/browser/invoker-capability-35BJSGXJ.mjs +43 -0
  51. package/dist/lib/browser/invoker-capability-35BJSGXJ.mjs.map +7 -0
  52. package/dist/lib/browser/meta.json +1 -1
  53. package/dist/lib/browser/testing/index.mjs +248 -51
  54. package/dist/lib/browser/testing/index.mjs.map +4 -4
  55. package/dist/lib/browser/testing/react.mjs +78 -0
  56. package/dist/lib/browser/testing/react.mjs.map +7 -0
  57. package/dist/lib/browser/ui/index.mjs +46 -0
  58. package/dist/lib/browser/ui/index.mjs.map +7 -0
  59. package/dist/lib/node-esm/capability-IY3YIHIO.mjs +39 -0
  60. package/dist/lib/node-esm/capability-IY3YIHIO.mjs.map +7 -0
  61. package/dist/lib/node-esm/capability-RDCTCARS.mjs +36 -0
  62. package/dist/lib/node-esm/capability-RDCTCARS.mjs.map +7 -0
  63. package/dist/lib/node-esm/chunk-42KBWDE4.mjs +80 -0
  64. package/dist/lib/node-esm/chunk-42KBWDE4.mjs.map +7 -0
  65. package/dist/lib/node-esm/chunk-DAYWQOOQ.mjs +149 -0
  66. package/dist/lib/node-esm/chunk-DAYWQOOQ.mjs.map +7 -0
  67. package/dist/lib/node-esm/chunk-DER2JDBT.mjs +175 -0
  68. package/dist/lib/node-esm/chunk-DER2JDBT.mjs.map +7 -0
  69. package/dist/lib/node-esm/chunk-EL3R25OQ.mjs +2 -0
  70. package/dist/lib/node-esm/chunk-EL3R25OQ.mjs.map +7 -0
  71. package/dist/lib/node-esm/chunk-FKE4Z3D6.mjs +10 -0
  72. package/dist/lib/node-esm/chunk-FKE4Z3D6.mjs.map +7 -0
  73. package/dist/lib/node-esm/chunk-G3RTFSNG.mjs +81 -0
  74. package/dist/lib/node-esm/chunk-G3RTFSNG.mjs.map +7 -0
  75. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  76. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  77. package/dist/lib/node-esm/chunk-JPWVIQ5I.mjs +595 -0
  78. package/dist/lib/node-esm/chunk-JPWVIQ5I.mjs.map +7 -0
  79. package/dist/lib/node-esm/chunk-LX6YJOSO.mjs +394 -0
  80. package/dist/lib/node-esm/chunk-LX6YJOSO.mjs.map +7 -0
  81. package/dist/lib/node-esm/chunk-URWHJQT2.mjs +168 -0
  82. package/dist/lib/node-esm/chunk-URWHJQT2.mjs.map +7 -0
  83. package/dist/lib/node-esm/chunk-VKHGNEDB.mjs +43 -0
  84. package/dist/lib/node-esm/chunk-VKHGNEDB.mjs.map +7 -0
  85. package/dist/lib/node-esm/chunk-W4K4RU4S.mjs +964 -0
  86. package/dist/lib/node-esm/chunk-W4K4RU4S.mjs.map +7 -0
  87. package/dist/lib/node-esm/chunk-WZCSOX5Q.mjs +35 -0
  88. package/dist/lib/node-esm/chunk-WZCSOX5Q.mjs.map +7 -0
  89. package/dist/lib/node-esm/chunk-ZZ7CKK6W.mjs +49 -0
  90. package/dist/lib/node-esm/chunk-ZZ7CKK6W.mjs.map +7 -0
  91. package/dist/lib/node-esm/cli/index.mjs +91 -0
  92. package/dist/lib/node-esm/cli/index.mjs.map +7 -0
  93. package/dist/lib/node-esm/common/activation-events.mjs +25 -0
  94. package/dist/lib/node-esm/common/activation-events.mjs.map +7 -0
  95. package/dist/lib/node-esm/common/capabilities.mjs +47 -0
  96. package/dist/lib/node-esm/common/capabilities.mjs.map +7 -0
  97. package/dist/lib/node-esm/core/activation-event.mjs +21 -0
  98. package/dist/lib/node-esm/core/activation-event.mjs.map +7 -0
  99. package/dist/lib/node-esm/core/capability.mjs +31 -0
  100. package/dist/lib/node-esm/core/capability.mjs.map +7 -0
  101. package/dist/lib/node-esm/core/plugin-manager.mjs +16 -0
  102. package/dist/lib/node-esm/core/plugin-manager.mjs.map +7 -0
  103. package/dist/lib/node-esm/core/plugin.mjs +30 -0
  104. package/dist/lib/node-esm/core/plugin.mjs.map +7 -0
  105. package/dist/lib/node-esm/core/url-loader.mjs +17 -0
  106. package/dist/lib/node-esm/core/url-loader.mjs.map +7 -0
  107. package/dist/lib/node-esm/index.mjs +91 -156
  108. package/dist/lib/node-esm/index.mjs.map +4 -4
  109. package/dist/lib/node-esm/invoker-capability-3QWBSM5Q.mjs +44 -0
  110. package/dist/lib/node-esm/invoker-capability-3QWBSM5Q.mjs.map +7 -0
  111. package/dist/lib/node-esm/meta.json +1 -1
  112. package/dist/lib/node-esm/testing/index.mjs +248 -51
  113. package/dist/lib/node-esm/testing/index.mjs.map +4 -4
  114. package/dist/lib/node-esm/testing/react.mjs +79 -0
  115. package/dist/lib/node-esm/testing/react.mjs.map +7 -0
  116. package/dist/lib/node-esm/ui/index.mjs +47 -0
  117. package/dist/lib/node-esm/ui/index.mjs.map +7 -0
  118. package/dist/plugin/node-esm/index.mjs +730 -0
  119. package/dist/plugin/node-esm/index.mjs.map +7 -0
  120. package/dist/plugin/node-esm/meta.json +1 -0
  121. package/dist/types/src/cli/cli.d.ts +39 -0
  122. package/dist/types/src/cli/cli.d.ts.map +1 -0
  123. package/dist/types/src/cli/index.d.ts +2 -0
  124. package/dist/types/src/cli/index.d.ts.map +1 -0
  125. package/dist/types/src/common/activation-events.d.ts +27 -0
  126. package/dist/types/src/common/activation-events.d.ts.map +1 -0
  127. package/dist/types/src/common/capabilities.d.ts +109 -121
  128. package/dist/types/src/common/capabilities.d.ts.map +1 -1
  129. package/dist/types/src/common/index.d.ts +4 -8
  130. package/dist/types/src/common/index.d.ts.map +1 -1
  131. package/dist/types/src/common/operations.d.ts +19 -0
  132. package/dist/types/src/common/operations.d.ts.map +1 -0
  133. package/dist/types/src/common/translations.d.ts +8 -8
  134. package/dist/types/src/common/translations.d.ts.map +1 -1
  135. package/dist/types/src/context.d.ts +5 -0
  136. package/dist/types/src/context.d.ts.map +1 -0
  137. package/dist/types/src/core/{events.d.ts → activation-event.d.ts} +7 -7
  138. package/dist/types/src/core/activation-event.d.ts.map +1 -0
  139. package/dist/types/src/core/capability-manager.d.ts +48 -0
  140. package/dist/types/src/core/capability-manager.d.ts.map +1 -0
  141. package/dist/types/src/core/capability-manager.test.d.ts +2 -0
  142. package/dist/types/src/core/capability-manager.test.d.ts.map +1 -0
  143. package/dist/types/src/core/capability.d.ts +156 -0
  144. package/dist/types/src/core/capability.d.ts.map +1 -0
  145. package/dist/types/src/core/index.d.ts +6 -4
  146. package/dist/types/src/core/index.d.ts.map +1 -1
  147. package/dist/types/src/core/plugin-manager.d.ts +73 -0
  148. package/dist/types/src/core/plugin-manager.d.ts.map +1 -0
  149. package/dist/types/src/core/plugin-manager.test.d.ts +2 -0
  150. package/dist/types/src/core/plugin-manager.test.d.ts.map +1 -0
  151. package/dist/types/src/core/plugin.d.ts +124 -37
  152. package/dist/types/src/core/plugin.d.ts.map +1 -1
  153. package/dist/types/src/core/url-loader.d.ts +42 -0
  154. package/dist/types/src/core/url-loader.d.ts.map +1 -0
  155. package/dist/types/src/core/url-loader.test.d.ts +2 -0
  156. package/dist/types/src/core/url-loader.test.d.ts.map +1 -0
  157. package/dist/types/src/index.d.ts +3 -4
  158. package/dist/types/src/index.d.ts.map +1 -1
  159. package/dist/types/src/plugin-operation/OperationPlugin.d.ts +3 -0
  160. package/dist/types/src/plugin-operation/OperationPlugin.d.ts.map +1 -0
  161. package/dist/types/src/plugin-operation/history/capability.d.ts +7 -0
  162. package/dist/types/src/plugin-operation/history/capability.d.ts.map +1 -0
  163. package/dist/types/src/plugin-operation/history/errors.d.ts +32 -0
  164. package/dist/types/src/plugin-operation/history/errors.d.ts.map +1 -0
  165. package/dist/types/src/plugin-operation/history/history-tracker.d.ts +18 -0
  166. package/dist/types/src/plugin-operation/history/history-tracker.d.ts.map +1 -0
  167. package/dist/types/src/plugin-operation/history/history-tracker.test.d.ts +2 -0
  168. package/dist/types/src/plugin-operation/history/history-tracker.test.d.ts.map +1 -0
  169. package/dist/types/src/plugin-operation/history/index.d.ts +6 -0
  170. package/dist/types/src/plugin-operation/history/index.d.ts.map +1 -0
  171. package/dist/types/src/plugin-operation/history/types.d.ts +13 -0
  172. package/dist/types/src/plugin-operation/history/types.d.ts.map +1 -0
  173. package/dist/types/src/plugin-operation/history/undo-mapping.d.ts +101 -0
  174. package/dist/types/src/plugin-operation/history/undo-mapping.d.ts.map +1 -0
  175. package/dist/types/src/plugin-operation/history/undo-registry.d.ts +23 -0
  176. package/dist/types/src/plugin-operation/history/undo-registry.d.ts.map +1 -0
  177. package/dist/types/src/plugin-operation/history/undo-registry.test.d.ts +2 -0
  178. package/dist/types/src/plugin-operation/history/undo-registry.test.d.ts.map +1 -0
  179. package/dist/types/src/plugin-operation/index.d.ts +3 -0
  180. package/dist/types/src/plugin-operation/index.d.ts.map +1 -0
  181. package/dist/types/src/plugin-operation/invoker-capability.d.ts +6 -0
  182. package/dist/types/src/plugin-operation/invoker-capability.d.ts.map +1 -0
  183. package/dist/types/src/plugin-operation/meta.d.ts +3 -0
  184. package/dist/types/src/plugin-operation/meta.d.ts.map +1 -0
  185. package/dist/types/src/plugin-operation/testing.d.ts +58 -0
  186. package/dist/types/src/plugin-operation/testing.d.ts.map +1 -0
  187. package/dist/types/src/plugin-runtime/RuntimePlugin.d.ts +3 -0
  188. package/dist/types/src/plugin-runtime/RuntimePlugin.d.ts.map +1 -0
  189. package/dist/types/src/plugin-runtime/capability.d.ts +6 -0
  190. package/dist/types/src/plugin-runtime/capability.d.ts.map +1 -0
  191. package/dist/types/src/plugin-runtime/index.d.ts +2 -0
  192. package/dist/types/src/plugin-runtime/index.d.ts.map +1 -0
  193. package/dist/types/src/plugin-runtime/meta.d.ts +3 -0
  194. package/dist/types/src/plugin-runtime/meta.d.ts.map +1 -0
  195. package/dist/types/src/testing/harness.d.ts +67 -0
  196. package/dist/types/src/testing/harness.d.ts.map +1 -0
  197. package/dist/types/src/testing/index.d.ts +2 -0
  198. package/dist/types/src/testing/index.d.ts.map +1 -1
  199. package/dist/types/src/testing/react.d.ts +27 -0
  200. package/dist/types/src/testing/react.d.ts.map +1 -0
  201. package/dist/types/src/testing/react.test.d.ts +2 -0
  202. package/dist/types/src/testing/react.test.d.ts.map +1 -0
  203. package/dist/types/src/testing/service.d.ts +8 -0
  204. package/dist/types/src/testing/service.d.ts.map +1 -0
  205. package/dist/types/src/testing/withPluginManager.d.ts +11 -10
  206. package/dist/types/src/testing/withPluginManager.d.ts.map +1 -1
  207. package/dist/types/src/testing/withPluginManager.stories.d.ts +9 -3
  208. package/dist/types/src/testing/withPluginManager.stories.d.ts.map +1 -1
  209. package/dist/types/src/ui/components/App/App.d.ts +9 -0
  210. package/dist/types/src/ui/components/App/App.d.ts.map +1 -0
  211. package/dist/types/src/ui/components/App/App.stories.d.ts +19 -0
  212. package/dist/types/src/ui/components/App/App.stories.d.ts.map +1 -0
  213. package/dist/types/src/ui/components/App/index.d.ts +2 -0
  214. package/dist/types/src/ui/components/App/index.d.ts.map +1 -0
  215. package/dist/types/src/ui/components/PluginManager/PluginManagerContext.stories.d.ts +13 -0
  216. package/dist/types/src/ui/components/PluginManager/PluginManagerContext.stories.d.ts.map +1 -0
  217. package/dist/types/src/ui/components/PluginManager/PluginManagerProvider.d.ts +10 -0
  218. package/dist/types/src/ui/components/PluginManager/PluginManagerProvider.d.ts.map +1 -0
  219. package/dist/types/src/ui/components/PluginManager/index.d.ts +2 -0
  220. package/dist/types/src/ui/components/PluginManager/index.d.ts.map +1 -0
  221. package/dist/types/src/ui/components/Surface/SurfaceComponent.d.ts +24 -0
  222. package/dist/types/src/ui/components/Surface/SurfaceComponent.d.ts.map +1 -0
  223. package/dist/types/src/ui/components/Surface/SurfaceComponent.stories.d.ts +14 -0
  224. package/dist/types/src/ui/components/Surface/SurfaceComponent.stories.d.ts.map +1 -0
  225. package/dist/types/src/ui/components/Surface/SurfaceInfo.d.ts +11 -0
  226. package/dist/types/src/ui/components/Surface/SurfaceInfo.d.ts.map +1 -0
  227. package/dist/types/src/ui/components/Surface/SurfaceProfilerContext.d.ts +48 -0
  228. package/dist/types/src/ui/components/Surface/SurfaceProfilerContext.d.ts.map +1 -0
  229. package/dist/types/src/ui/components/Surface/context.d.ts +5 -0
  230. package/dist/types/src/ui/components/Surface/context.d.ts.map +1 -0
  231. package/dist/types/src/ui/components/Surface/index.d.ts +36 -0
  232. package/dist/types/src/ui/components/Surface/index.d.ts.map +1 -0
  233. package/dist/types/src/ui/components/Surface/types.d.ts +197 -0
  234. package/dist/types/src/ui/components/Surface/types.d.ts.map +1 -0
  235. package/dist/types/src/ui/components/Surface/types.test.d.ts +2 -0
  236. package/dist/types/src/ui/components/Surface/types.test.d.ts.map +1 -0
  237. package/dist/types/src/ui/components/index.d.ts +4 -0
  238. package/dist/types/src/ui/components/index.d.ts.map +1 -0
  239. package/dist/types/src/ui/hooks/index.d.ts +6 -0
  240. package/dist/types/src/ui/hooks/index.d.ts.map +1 -0
  241. package/dist/types/src/ui/hooks/useApp.d.ts +62 -0
  242. package/dist/types/src/ui/hooks/useApp.d.ts.map +1 -0
  243. package/dist/types/src/ui/hooks/useApp.test.d.ts +2 -0
  244. package/dist/types/src/ui/hooks/useApp.test.d.ts.map +1 -0
  245. package/dist/types/src/ui/hooks/useCapabilities.d.ts +31 -0
  246. package/dist/types/src/ui/hooks/useCapabilities.d.ts.map +1 -0
  247. package/dist/types/src/ui/hooks/useLoading.d.ts +18 -0
  248. package/dist/types/src/ui/hooks/useLoading.d.ts.map +1 -0
  249. package/dist/types/src/ui/hooks/useSettingsState.d.ts +10 -0
  250. package/dist/types/src/ui/hooks/useSettingsState.d.ts.map +1 -0
  251. package/dist/types/src/ui/hooks/useSurface.d.ts +3 -0
  252. package/dist/types/src/ui/hooks/useSurface.d.ts.map +1 -0
  253. package/dist/types/src/ui/index.d.ts +3 -0
  254. package/dist/types/src/ui/index.d.ts.map +1 -0
  255. package/dist/types/src/vite-plugin/composer-plugin.d.ts +34 -0
  256. package/dist/types/src/vite-plugin/composer-plugin.d.ts.map +1 -0
  257. package/dist/types/src/vite-plugin/import-map-plugin.d.ts +16 -0
  258. package/dist/types/src/vite-plugin/import-map-plugin.d.ts.map +1 -0
  259. package/dist/types/src/vite-plugin/index.d.ts +4 -0
  260. package/dist/types/src/vite-plugin/index.d.ts.map +1 -0
  261. package/dist/types/src/vite-plugin/manifest.d.ts +16 -0
  262. package/dist/types/src/vite-plugin/manifest.d.ts.map +1 -0
  263. package/dist/types/src/vite-plugin/manifest.test.d.ts +2 -0
  264. package/dist/types/src/vite-plugin/manifest.test.d.ts.map +1 -0
  265. package/dist/types/src/vite-plugin/packages.d.ts +13 -0
  266. package/dist/types/src/vite-plugin/packages.d.ts.map +1 -0
  267. package/dist/types/tsconfig.tsbuildinfo +1 -1
  268. package/moon.yml +26 -3
  269. package/package.json +144 -44
  270. package/src/cli/cli.ts +107 -0
  271. package/src/{playground/layout → cli}/index.ts +1 -1
  272. package/src/common/activation-events.ts +44 -0
  273. package/src/common/capabilities.ts +168 -109
  274. package/src/common/index.ts +4 -8
  275. package/src/common/operations.ts +35 -0
  276. package/src/common/translations.ts +18 -10
  277. package/src/context.ts +9 -0
  278. package/src/core/{events.ts → activation-event.ts} +10 -7
  279. package/src/core/capability-manager.test.ts +151 -0
  280. package/src/core/capability-manager.ts +192 -0
  281. package/src/core/capability.ts +247 -0
  282. package/src/core/index.ts +6 -4
  283. package/src/core/plugin-manager.test.ts +1113 -0
  284. package/src/core/plugin-manager.ts +883 -0
  285. package/src/core/plugin.ts +261 -43
  286. package/src/core/url-loader.test.ts +112 -0
  287. package/src/core/url-loader.ts +178 -0
  288. package/src/helpers.test.ts +1 -1
  289. package/src/index.ts +3 -4
  290. package/src/plugin-operation/OperationPlugin.ts +24 -0
  291. package/src/plugin-operation/history/capability.ts +36 -0
  292. package/src/plugin-operation/history/errors.ts +7 -0
  293. package/src/plugin-operation/history/history-tracker.test.ts +373 -0
  294. package/src/plugin-operation/history/history-tracker.ts +128 -0
  295. package/src/plugin-operation/history/index.ts +9 -0
  296. package/src/plugin-operation/history/types.ts +17 -0
  297. package/src/plugin-operation/history/undo-mapping.ts +135 -0
  298. package/src/plugin-operation/history/undo-registry.test.ts +72 -0
  299. package/src/plugin-operation/history/undo-registry.ts +54 -0
  300. package/src/plugin-operation/index.ts +6 -0
  301. package/src/plugin-operation/invoker-capability.ts +54 -0
  302. package/src/plugin-operation/meta.ts +11 -0
  303. package/src/plugin-operation/testing.ts +154 -0
  304. package/src/plugin-runtime/RuntimePlugin.ts +19 -0
  305. package/src/plugin-runtime/capability.ts +53 -0
  306. package/src/{playground/debug → plugin-runtime}/index.ts +1 -1
  307. package/src/plugin-runtime/meta.ts +11 -0
  308. package/src/testing/harness.ts +229 -0
  309. package/src/testing/index.ts +2 -0
  310. package/src/testing/react.test.tsx +48 -0
  311. package/src/testing/react.tsx +113 -0
  312. package/src/testing/service.ts +52 -0
  313. package/src/testing/withPluginManager.stories.tsx +14 -11
  314. package/src/testing/withPluginManager.tsx +78 -54
  315. package/src/ui/components/App/App.stories.tsx +92 -0
  316. package/src/ui/components/App/App.tsx +58 -0
  317. package/src/{playground/logger → ui/components/App}/index.ts +1 -1
  318. package/src/ui/components/PluginManager/PluginManagerContext.stories.tsx +183 -0
  319. package/src/{react → ui/components/PluginManager}/PluginManagerProvider.ts +3 -3
  320. package/src/ui/components/PluginManager/index.ts +5 -0
  321. package/src/ui/components/Surface/SurfaceComponent.stories.tsx +144 -0
  322. package/src/ui/components/Surface/SurfaceComponent.tsx +303 -0
  323. package/src/ui/components/Surface/SurfaceInfo.tsx +107 -0
  324. package/src/ui/components/Surface/SurfaceProfilerContext.tsx +207 -0
  325. package/src/ui/components/Surface/context.ts +12 -0
  326. package/src/ui/components/Surface/index.ts +54 -0
  327. package/src/ui/components/Surface/types.test.ts +126 -0
  328. package/src/ui/components/Surface/types.ts +269 -0
  329. package/src/ui/components/index.ts +7 -0
  330. package/src/ui/hooks/index.ts +9 -0
  331. package/src/ui/hooks/useApp.test.tsx +159 -0
  332. package/src/ui/hooks/useApp.tsx +289 -0
  333. package/src/ui/hooks/useCapabilities.ts +67 -0
  334. package/src/ui/hooks/useLoading.tsx +68 -0
  335. package/src/ui/hooks/useSettingsState.ts +26 -0
  336. package/src/ui/hooks/useSurface.ts +13 -0
  337. package/src/ui/index.ts +6 -0
  338. package/src/vite-plugin/composer-plugin.ts +284 -0
  339. package/src/vite-plugin/import-map-plugin.ts +490 -0
  340. package/src/vite-plugin/index.ts +7 -0
  341. package/src/vite-plugin/manifest.test.ts +23 -0
  342. package/src/vite-plugin/manifest.ts +20 -0
  343. package/src/vite-plugin/packages.ts +181 -0
  344. package/tsconfig.json +15 -25
  345. package/tsconfig.node.json +2 -4
  346. package/typedoc.json +2 -4
  347. package/vitest.config.ts +8 -6
  348. package/.eslintrc.cjs +0 -9
  349. package/.swc/plugins/v7_linux_x86_64_13.0.0/f45bdff002284d9e8f9ef3f0be909de12da36c049cbcf261ac78fc00abb09a2d +0 -0
  350. package/.swc/plugins/v7_linux_x86_64_13.0.0/fce1bdb8e20a094e4af08bad09cc81497ed0e2e7c51223b07d371063cca18429 +0 -0
  351. package/dist/lib/browser/app-graph-builder-BGGXLD6T.mjs +0 -137
  352. package/dist/lib/browser/app-graph-builder-BGGXLD6T.mjs.map +0 -7
  353. package/dist/lib/browser/chunk-2636QSIK.mjs +0 -1518
  354. package/dist/lib/browser/chunk-2636QSIK.mjs.map +0 -7
  355. package/dist/lib/browser/chunk-DHZB7HG7.mjs +0 -413
  356. package/dist/lib/browser/chunk-DHZB7HG7.mjs.map +0 -7
  357. package/dist/lib/browser/chunk-ORWHM7CO.mjs +0 -32
  358. package/dist/lib/browser/chunk-ORWHM7CO.mjs.map +0 -7
  359. package/dist/lib/browser/intent-dispatcher-TWKB22NI.mjs +0 -11
  360. package/dist/lib/browser/intent-resolver-O67UANYP.mjs +0 -39
  361. package/dist/lib/browser/intent-resolver-O67UANYP.mjs.map +0 -7
  362. package/dist/lib/browser/store-LFKDWHUQ.mjs +0 -30
  363. package/dist/lib/browser/store-LFKDWHUQ.mjs.map +0 -7
  364. package/dist/lib/browser/worker.mjs +0 -79
  365. package/dist/lib/node-esm/app-graph-builder-QHIJUYYW.mjs +0 -138
  366. package/dist/lib/node-esm/app-graph-builder-QHIJUYYW.mjs.map +0 -7
  367. package/dist/lib/node-esm/chunk-NJAFK626.mjs +0 -414
  368. package/dist/lib/node-esm/chunk-NJAFK626.mjs.map +0 -7
  369. package/dist/lib/node-esm/chunk-UMZQERLE.mjs +0 -34
  370. package/dist/lib/node-esm/chunk-UMZQERLE.mjs.map +0 -7
  371. package/dist/lib/node-esm/chunk-VSKRV3NW.mjs +0 -1520
  372. package/dist/lib/node-esm/chunk-VSKRV3NW.mjs.map +0 -7
  373. package/dist/lib/node-esm/intent-dispatcher-5PRM3KGH.mjs +0 -12
  374. package/dist/lib/node-esm/intent-resolver-K3D4BXQQ.mjs +0 -40
  375. package/dist/lib/node-esm/intent-resolver-K3D4BXQQ.mjs.map +0 -7
  376. package/dist/lib/node-esm/store-53XDUBMD.mjs +0 -31
  377. package/dist/lib/node-esm/store-53XDUBMD.mjs.map +0 -7
  378. package/dist/lib/node-esm/worker.mjs +0 -80
  379. package/dist/types/src/App.d.ts +0 -43
  380. package/dist/types/src/App.d.ts.map +0 -1
  381. package/dist/types/src/common/collaboration.d.ts +0 -19
  382. package/dist/types/src/common/collaboration.d.ts.map +0 -1
  383. package/dist/types/src/common/events.d.ts +0 -52
  384. package/dist/types/src/common/events.d.ts.map +0 -1
  385. package/dist/types/src/common/file.d.ts +0 -14
  386. package/dist/types/src/common/file.d.ts.map +0 -1
  387. package/dist/types/src/common/graph.d.ts +0 -21
  388. package/dist/types/src/common/graph.d.ts.map +0 -1
  389. package/dist/types/src/common/layout.d.ts +0 -281
  390. package/dist/types/src/common/layout.d.ts.map +0 -1
  391. package/dist/types/src/common/surface.d.ts +0 -65
  392. package/dist/types/src/common/surface.d.ts.map +0 -1
  393. package/dist/types/src/core/capabilities.d.ts +0 -114
  394. package/dist/types/src/core/capabilities.d.ts.map +0 -1
  395. package/dist/types/src/core/capabilities.test.d.ts +0 -2
  396. package/dist/types/src/core/capabilities.test.d.ts.map +0 -1
  397. package/dist/types/src/core/events.d.ts.map +0 -1
  398. package/dist/types/src/core/manager.d.ts +0 -122
  399. package/dist/types/src/core/manager.d.ts.map +0 -1
  400. package/dist/types/src/core/manager.test.d.ts +0 -2
  401. package/dist/types/src/core/manager.test.d.ts.map +0 -1
  402. package/dist/types/src/playground/debug/Debug.d.ts +0 -6
  403. package/dist/types/src/playground/debug/Debug.d.ts.map +0 -1
  404. package/dist/types/src/playground/debug/index.d.ts +0 -2
  405. package/dist/types/src/playground/debug/index.d.ts.map +0 -1
  406. package/dist/types/src/playground/debug/plugin.d.ts +0 -2
  407. package/dist/types/src/playground/debug/plugin.d.ts.map +0 -1
  408. package/dist/types/src/playground/generator/Main.d.ts +0 -6
  409. package/dist/types/src/playground/generator/Main.d.ts.map +0 -1
  410. package/dist/types/src/playground/generator/Toolbar.d.ts +0 -6
  411. package/dist/types/src/playground/generator/Toolbar.d.ts.map +0 -1
  412. package/dist/types/src/playground/generator/generator.d.ts +0 -7
  413. package/dist/types/src/playground/generator/generator.d.ts.map +0 -1
  414. package/dist/types/src/playground/generator/index.d.ts +0 -3
  415. package/dist/types/src/playground/generator/index.d.ts.map +0 -1
  416. package/dist/types/src/playground/generator/plugin.d.ts +0 -2
  417. package/dist/types/src/playground/generator/plugin.d.ts.map +0 -1
  418. package/dist/types/src/playground/layout/Layout.d.ts +0 -8
  419. package/dist/types/src/playground/layout/Layout.d.ts.map +0 -1
  420. package/dist/types/src/playground/layout/index.d.ts +0 -2
  421. package/dist/types/src/playground/layout/index.d.ts.map +0 -1
  422. package/dist/types/src/playground/layout/plugin.d.ts +0 -2
  423. package/dist/types/src/playground/layout/plugin.d.ts.map +0 -1
  424. package/dist/types/src/playground/logger/Toolbar.d.ts +0 -6
  425. package/dist/types/src/playground/logger/Toolbar.d.ts.map +0 -1
  426. package/dist/types/src/playground/logger/index.d.ts +0 -2
  427. package/dist/types/src/playground/logger/index.d.ts.map +0 -1
  428. package/dist/types/src/playground/logger/plugin.d.ts +0 -2
  429. package/dist/types/src/playground/logger/plugin.d.ts.map +0 -1
  430. package/dist/types/src/playground/logger/schema.d.ts +0 -13
  431. package/dist/types/src/playground/logger/schema.d.ts.map +0 -1
  432. package/dist/types/src/playground/playground.stories.d.ts +0 -10
  433. package/dist/types/src/playground/playground.stories.d.ts.map +0 -1
  434. package/dist/types/src/plugin-intent/IntentPlugin.d.ts +0 -2
  435. package/dist/types/src/plugin-intent/IntentPlugin.d.ts.map +0 -1
  436. package/dist/types/src/plugin-intent/actions.d.ts +0 -38
  437. package/dist/types/src/plugin-intent/actions.d.ts.map +0 -1
  438. package/dist/types/src/plugin-intent/errors.d.ts +0 -16
  439. package/dist/types/src/plugin-intent/errors.d.ts.map +0 -1
  440. package/dist/types/src/plugin-intent/index.d.ts +0 -5
  441. package/dist/types/src/plugin-intent/index.d.ts.map +0 -1
  442. package/dist/types/src/plugin-intent/intent-dispatcher.d.ts +0 -139
  443. package/dist/types/src/plugin-intent/intent-dispatcher.d.ts.map +0 -1
  444. package/dist/types/src/plugin-intent/intent-dispatcher.test.d.ts +0 -2
  445. package/dist/types/src/plugin-intent/intent-dispatcher.test.d.ts.map +0 -1
  446. package/dist/types/src/plugin-intent/intent.d.ts +0 -63
  447. package/dist/types/src/plugin-intent/intent.d.ts.map +0 -1
  448. package/dist/types/src/plugin-settings/SettingsPlugin.d.ts +0 -2
  449. package/dist/types/src/plugin-settings/SettingsPlugin.d.ts.map +0 -1
  450. package/dist/types/src/plugin-settings/actions.d.ts +0 -27
  451. package/dist/types/src/plugin-settings/actions.d.ts.map +0 -1
  452. package/dist/types/src/plugin-settings/app-graph-builder.d.ts +0 -4
  453. package/dist/types/src/plugin-settings/app-graph-builder.d.ts.map +0 -1
  454. package/dist/types/src/plugin-settings/index.d.ts +0 -3
  455. package/dist/types/src/plugin-settings/index.d.ts.map +0 -1
  456. package/dist/types/src/plugin-settings/intent-resolver.d.ts +0 -4
  457. package/dist/types/src/plugin-settings/intent-resolver.d.ts.map +0 -1
  458. package/dist/types/src/plugin-settings/store.d.ts +0 -5
  459. package/dist/types/src/plugin-settings/store.d.ts.map +0 -1
  460. package/dist/types/src/plugin-settings/translations.d.ts +0 -10
  461. package/dist/types/src/plugin-settings/translations.d.ts.map +0 -1
  462. package/dist/types/src/react/ErrorBoundary.d.ts +0 -31
  463. package/dist/types/src/react/ErrorBoundary.d.ts.map +0 -1
  464. package/dist/types/src/react/IntentContext.d.ts +0 -8
  465. package/dist/types/src/react/IntentContext.d.ts.map +0 -1
  466. package/dist/types/src/react/PluginManagerProvider.d.ts +0 -10
  467. package/dist/types/src/react/PluginManagerProvider.d.ts.map +0 -1
  468. package/dist/types/src/react/Surface.d.ts +0 -12
  469. package/dist/types/src/react/Surface.d.ts.map +0 -1
  470. package/dist/types/src/react/Surface.stories.d.ts +0 -16
  471. package/dist/types/src/react/Surface.stories.d.ts.map +0 -1
  472. package/dist/types/src/react/common.d.ts +0 -13
  473. package/dist/types/src/react/common.d.ts.map +0 -1
  474. package/dist/types/src/react/index.d.ts +0 -7
  475. package/dist/types/src/react/index.d.ts.map +0 -1
  476. package/dist/types/src/react/useCapabilities.d.ts +0 -13
  477. package/dist/types/src/react/useCapabilities.d.ts.map +0 -1
  478. package/dist/types/src/react/useIntentResolver.d.ts +0 -3
  479. package/dist/types/src/react/useIntentResolver.d.ts.map +0 -1
  480. package/dist/types/src/worker.d.ts +0 -4
  481. package/dist/types/src/worker.d.ts.map +0 -1
  482. package/src/App.tsx +0 -276
  483. package/src/common/collaboration.ts +0 -21
  484. package/src/common/events.ts +0 -77
  485. package/src/common/file.ts +0 -22
  486. package/src/common/graph.ts +0 -30
  487. package/src/common/layout.ts +0 -278
  488. package/src/common/surface.ts +0 -86
  489. package/src/core/capabilities.test.ts +0 -136
  490. package/src/core/capabilities.ts +0 -254
  491. package/src/core/manager.test.ts +0 -515
  492. package/src/core/manager.ts +0 -519
  493. package/src/playground/debug/Debug.tsx +0 -39
  494. package/src/playground/debug/plugin.ts +0 -17
  495. package/src/playground/generator/Main.tsx +0 -71
  496. package/src/playground/generator/Toolbar.tsx +0 -46
  497. package/src/playground/generator/generator.ts +0 -48
  498. package/src/playground/generator/index.ts +0 -6
  499. package/src/playground/generator/plugin.ts +0 -23
  500. package/src/playground/layout/Layout.tsx +0 -33
  501. package/src/playground/layout/plugin.ts +0 -17
  502. package/src/playground/logger/Toolbar.tsx +0 -29
  503. package/src/playground/logger/plugin.ts +0 -36
  504. package/src/playground/logger/schema.ts +0 -12
  505. package/src/playground/playground.stories.tsx +0 -42
  506. package/src/plugin-intent/IntentPlugin.ts +0 -20
  507. package/src/plugin-intent/actions.ts +0 -33
  508. package/src/plugin-intent/errors.ts +0 -39
  509. package/src/plugin-intent/index.ts +0 -8
  510. package/src/plugin-intent/intent-dispatcher.test.ts +0 -279
  511. package/src/plugin-intent/intent-dispatcher.ts +0 -333
  512. package/src/plugin-intent/intent.ts +0 -154
  513. package/src/plugin-settings/SettingsPlugin.ts +0 -35
  514. package/src/plugin-settings/actions.ts +0 -29
  515. package/src/plugin-settings/app-graph-builder.ts +0 -157
  516. package/src/plugin-settings/index.ts +0 -6
  517. package/src/plugin-settings/intent-resolver.ts +0 -34
  518. package/src/plugin-settings/store.ts +0 -33
  519. package/src/plugin-settings/translations.ts +0 -19
  520. package/src/react/ErrorBoundary.tsx +0 -45
  521. package/src/react/IntentContext.tsx +0 -34
  522. package/src/react/Surface.stories.tsx +0 -96
  523. package/src/react/Surface.tsx +0 -77
  524. package/src/react/common.ts +0 -12
  525. package/src/react/index.ts +0 -10
  526. package/src/react/useCapabilities.ts +0 -30
  527. package/src/react/useIntentResolver.ts +0 -22
  528. package/src/worker.ts +0 -11
  529. package/typedoc/.nojekyll +0 -1
  530. package/typedoc/assets/hierarchy.js +0 -1
  531. package/typedoc/assets/highlight.css +0 -106
  532. package/typedoc/assets/icons.js +0 -18
  533. package/typedoc/assets/icons.svg +0 -1
  534. package/typedoc/assets/main.js +0 -60
  535. package/typedoc/assets/navigation.js +0 -1
  536. package/typedoc/assets/search.js +0 -1
  537. package/typedoc/assets/style.css +0 -1640
  538. package/typedoc/classes/CollaborationActions.InsertContent.html +0 -421
  539. package/typedoc/classes/ErrorBoundary.html +0 -125
  540. package/typedoc/classes/IntentAction.ShowUndo.html +0 -227
  541. package/typedoc/classes/IntentAction.Track.html +0 -266
  542. package/typedoc/classes/LayoutAction.AddToast.html +0 -265
  543. package/typedoc/classes/LayoutAction.Close.html +0 -382
  544. package/typedoc/classes/LayoutAction.Expose.html +0 -265
  545. package/typedoc/classes/LayoutAction.Open.html +0 -1123
  546. package/typedoc/classes/LayoutAction.RevertWorkspace.html +0 -343
  547. package/typedoc/classes/LayoutAction.ScrollIntoView.html +0 -460
  548. package/typedoc/classes/LayoutAction.Set.html +0 -460
  549. package/typedoc/classes/LayoutAction.SetLayoutMode.html +0 -499
  550. package/typedoc/classes/LayoutAction.SwitchWorkspace.html +0 -265
  551. package/typedoc/classes/LayoutAction.UpdateComplementary.html +0 -616
  552. package/typedoc/classes/LayoutAction.UpdateDialog.html +0 -1123
  553. package/typedoc/classes/LayoutAction.UpdateLayout.html +0 -461
  554. package/typedoc/classes/LayoutAction.UpdatePopover.html +0 -1435
  555. package/typedoc/classes/LayoutAction.UpdateSidebar.html +0 -616
  556. package/typedoc/classes/Plugin.html +0 -6
  557. package/typedoc/classes/PluginContext.html +0 -38
  558. package/typedoc/classes/PluginManager.html +0 -43
  559. package/typedoc/classes/PluginModule.html +0 -18
  560. package/typedoc/classes/SettingsAction.Open.html +0 -226
  561. package/typedoc/classes/SettingsAction.OpenPluginRegistry.html +0 -265
  562. package/typedoc/functions/Events.createStateEvent.html +0 -2
  563. package/typedoc/functions/IntentPlugin.html +0 -1
  564. package/typedoc/functions/SettingsPlugin.html +0 -1
  565. package/typedoc/functions/allOf.html +0 -2
  566. package/typedoc/functions/chain.html +0 -3
  567. package/typedoc/functions/contributes.html +0 -2
  568. package/typedoc/functions/createDispatcher.html +0 -3
  569. package/typedoc/functions/createIntent.html +0 -6
  570. package/typedoc/functions/createResolver.html +0 -2
  571. package/typedoc/functions/createSurface.html +0 -2
  572. package/typedoc/functions/defineCapability.html +0 -2
  573. package/typedoc/functions/defineEvent.html +0 -2
  574. package/typedoc/functions/defineModule.html +0 -2
  575. package/typedoc/functions/definePlugin.html +0 -2
  576. package/typedoc/functions/eventKey.html +0 -2
  577. package/typedoc/functions/getEvents.html +0 -2
  578. package/typedoc/functions/isAllOf.html +0 -2
  579. package/typedoc/functions/isOneOf.html +0 -2
  580. package/typedoc/functions/isSurfaceAvailable.html +0 -2
  581. package/typedoc/functions/lazy.html +0 -2
  582. package/typedoc/functions/oneOf.html +0 -2
  583. package/typedoc/functions/useApp.html +0 -6
  584. package/typedoc/functions/useAppGraph.html +0 -1
  585. package/typedoc/functions/useCapabilities.html +0 -3
  586. package/typedoc/functions/useCapability.html +0 -4
  587. package/typedoc/functions/useIntentDispatcher.html +0 -1
  588. package/typedoc/functions/useIntentResolver.html +0 -1
  589. package/typedoc/functions/useLayout.html +0 -1
  590. package/typedoc/functions/usePluginManager.html +0 -2
  591. package/typedoc/hierarchy.html +0 -1
  592. package/typedoc/index.html +0 -12
  593. package/typedoc/interfaces/LayoutAction.Toast.html +0 -10
  594. package/typedoc/media/LICENSE +0 -8
  595. package/typedoc/modules/Capabilities.html +0 -1
  596. package/typedoc/modules/CollaborationActions.html +0 -1
  597. package/typedoc/modules/Events.html +0 -1
  598. package/typedoc/modules/IntentAction.html +0 -1
  599. package/typedoc/modules/LayoutAction.html +0 -2
  600. package/typedoc/modules/SettingsAction.html +0 -1
  601. package/typedoc/modules.html +0 -1
  602. package/typedoc/types/ActivationEvent.html +0 -8
  603. package/typedoc/types/ActivationEvents.html +0 -2
  604. package/typedoc/types/AnyCapability.html +0 -1
  605. package/typedoc/types/AnyIntent.html +0 -1
  606. package/typedoc/types/AnyIntentChain.html +0 -1
  607. package/typedoc/types/AnyIntentEffectResult.html +0 -1
  608. package/typedoc/types/AnyIntentResolver.html +0 -1
  609. package/typedoc/types/AnyIntentResult.html +0 -1
  610. package/typedoc/types/Capabilities.FileUploader.html +0 -1
  611. package/typedoc/types/Capabilities.IntentResolver.html +0 -1
  612. package/typedoc/types/Capabilities.Layout.html +0 -1
  613. package/typedoc/types/Capabilities.Metadata.html +0 -1
  614. package/typedoc/types/Capabilities.ReactContext.html +0 -1
  615. package/typedoc/types/Capabilities.ReactRoot.html +0 -1
  616. package/typedoc/types/Capabilities.ReactSurface.html +0 -1
  617. package/typedoc/types/Capabilities.Settings.html +0 -4
  618. package/typedoc/types/Capability.html +0 -9
  619. package/typedoc/types/CreateAppOptions.html +0 -10
  620. package/typedoc/types/FileInfo.html +0 -1
  621. package/typedoc/types/Intent.html +0 -10
  622. package/typedoc/types/IntentChain.html +0 -6
  623. package/typedoc/types/IntentContext.html +0 -5
  624. package/typedoc/types/IntentData.html +0 -1
  625. package/typedoc/types/IntentDispatcher.html +0 -2
  626. package/typedoc/types/IntentDispatcherResult.html +0 -2
  627. package/typedoc/types/IntentEffectDefinition.html +0 -2
  628. package/typedoc/types/IntentEffectResult.html +0 -15
  629. package/typedoc/types/IntentParams.html +0 -3
  630. package/typedoc/types/IntentResolver.html +0 -2
  631. package/typedoc/types/IntentResultData.html +0 -1
  632. package/typedoc/types/IntentSchema.html +0 -1
  633. package/typedoc/types/IntentUndo.html +0 -2
  634. package/typedoc/types/InterfaceDef.html +0 -4
  635. package/typedoc/types/Label.html +0 -1
  636. package/typedoc/types/NodeSerializer.html +0 -8
  637. package/typedoc/types/PluginManagerOptions.html +0 -6
  638. package/typedoc/types/PluginMeta.html +0 -21
  639. package/typedoc/types/PromiseIntentDispatcher.html +0 -2
  640. package/typedoc/types/PromiseIntentUndo.html +0 -2
  641. package/typedoc/types/Resource.html +0 -1
  642. package/typedoc/types/ResourceKey.html +0 -1
  643. package/typedoc/types/ResourceLanguage.html +0 -1
  644. package/typedoc/types/SerializedNode.html +0 -4
  645. package/typedoc/types/SurfaceComponent.html +0 -2
  646. package/typedoc/types/SurfaceDefinition.html +0 -2
  647. package/typedoc/types/SurfaceProps.html +0 -4
  648. package/typedoc/variables/Capabilities.AnchorSort.html +0 -1
  649. package/typedoc/variables/Capabilities.AppGraph.html +0 -1
  650. package/typedoc/variables/Capabilities.AppGraphBuilder.html +0 -1
  651. package/typedoc/variables/Capabilities.AppGraphSerializer.html +0 -1
  652. package/typedoc/variables/Capabilities.ArtifactDefinition.html +0 -1
  653. package/typedoc/variables/Capabilities.FileUploader.html +0 -1
  654. package/typedoc/variables/Capabilities.IntentDispatcher.html +0 -1
  655. package/typedoc/variables/Capabilities.IntentResolver.html +0 -1
  656. package/typedoc/variables/Capabilities.Layout.html +0 -1
  657. package/typedoc/variables/Capabilities.Metadata.html +0 -1
  658. package/typedoc/variables/Capabilities.Null.html +0 -1
  659. package/typedoc/variables/Capabilities.PluginManager.html +0 -1
  660. package/typedoc/variables/Capabilities.ReactContext.html +0 -1
  661. package/typedoc/variables/Capabilities.ReactRoot.html +0 -1
  662. package/typedoc/variables/Capabilities.ReactSurface.html +0 -1
  663. package/typedoc/variables/Capabilities.RxRegistry.html +0 -1
  664. package/typedoc/variables/Capabilities.Settings.html +0 -1
  665. package/typedoc/variables/Capabilities.SettingsStore.html +0 -1
  666. package/typedoc/variables/Capabilities.Tools.html +0 -1
  667. package/typedoc/variables/Capabilities.Translations.html +0 -1
  668. package/typedoc/variables/Events.AppGraphReady.html +0 -2
  669. package/typedoc/variables/Events.DispatcherReady.html +0 -2
  670. package/typedoc/variables/Events.LayoutReady.html +0 -1
  671. package/typedoc/variables/Events.SettingsReady.html +0 -2
  672. package/typedoc/variables/Events.SetupAppGraph.html +0 -2
  673. package/typedoc/variables/Events.SetupArtifactDefinition.html +0 -2
  674. package/typedoc/variables/Events.SetupIntentResolver.html +0 -2
  675. package/typedoc/variables/Events.SetupMetadata.html +0 -2
  676. package/typedoc/variables/Events.SetupReactSurface.html +0 -2
  677. package/typedoc/variables/Events.SetupSettings.html +0 -2
  678. package/typedoc/variables/Events.SetupTranslations.html +0 -2
  679. package/typedoc/variables/Events.Startup.html +0 -2
  680. package/typedoc/variables/FileInfoSchema.html +0 -1
  681. package/typedoc/variables/INTENT_ACTION.html +0 -1
  682. package/typedoc/variables/INTENT_PLUGIN.html +0 -1
  683. package/typedoc/variables/LAYOUT_ACTION.html +0 -1
  684. package/typedoc/variables/LAYOUT_PLUGIN.html +0 -1
  685. package/typedoc/variables/Label.html +0 -1
  686. package/typedoc/variables/LayoutAction.Toast.html +0 -1
  687. package/typedoc/variables/LayoutAction.UPDATE_LAYOUT.html +0 -1
  688. package/typedoc/variables/PluginManagerProvider.html +0 -2
  689. package/typedoc/variables/Resource.html +0 -2
  690. package/typedoc/variables/ResourceKey.html +0 -1
  691. package/typedoc/variables/ResourceLanguage.html +0 -1
  692. package/typedoc/variables/SETTINGS_ACTION.html +0 -1
  693. package/typedoc/variables/SETTINGS_ID.html +0 -1
  694. package/typedoc/variables/SETTINGS_KEY.html +0 -1
  695. package/typedoc/variables/SETTINGS_PLUGIN.html +0 -1
  696. package/typedoc/variables/Surface.html +0 -2
  697. package/typedoc/variables/defaultFileTypes.html +0 -1
  698. /package/dist/lib/browser/{intent-dispatcher-TWKB22NI.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
  699. /package/dist/lib/browser/{worker.mjs.map → chunk-RFSO3JRG.mjs.map} +0 -0
  700. /package/dist/lib/{node-esm/intent-dispatcher-5PRM3KGH.mjs.map → browser/common/activation-events.mjs.map} +0 -0
  701. /package/dist/lib/{node-esm/worker.mjs.map → browser/common/capabilities.mjs.map} +0 -0
@@ -0,0 +1,730 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+
3
+ // src/vite-plugin/composer-plugin.ts
4
+ import cssInjectedByJs from "vite-plugin-css-injected-by-js";
5
+
6
+ // src/vite-plugin/manifest.ts
7
+ var MANIFEST_ASSET_NAME = "manifest.json";
8
+ var serializeManifest = (meta, { moduleFile }) => JSON.stringify({
9
+ ...meta,
10
+ moduleFile
11
+ }, null, 2);
12
+
13
+ // src/vite-plugin/packages.ts
14
+ var THIRD_PARTY_SHARED_PACKAGES = [
15
+ "@effect-atom/atom",
16
+ "@effect-atom/atom-react",
17
+ "@effect/platform",
18
+ "effect",
19
+ "lit",
20
+ "react",
21
+ "react-dom",
22
+ "solid-js"
23
+ ];
24
+ var DEFAULT_PACKAGES = [
25
+ // packages/common
26
+ "@dxos/async",
27
+ "@dxos/codec-protobuf",
28
+ "@dxos/context",
29
+ "@dxos/crypto",
30
+ "@dxos/debug",
31
+ "@dxos/display-name",
32
+ "@dxos/effect",
33
+ "@dxos/effect-atom-solid",
34
+ "@dxos/errors",
35
+ "@dxos/feed-store",
36
+ "@dxos/graph",
37
+ "@dxos/hypercore",
38
+ "@dxos/invariant",
39
+ "@dxos/keyboard",
40
+ "@dxos/keys",
41
+ "@dxos/kv-store",
42
+ "@dxos/log",
43
+ "@dxos/merkle-search-tree",
44
+ "@dxos/random",
45
+ "@dxos/random-access-storage",
46
+ "@dxos/timeframe",
47
+ "@dxos/tracing",
48
+ "@dxos/util",
49
+ "@dxos/web-context",
50
+ "@dxos/web-context-react",
51
+ "@dxos/web-context-solid",
52
+ // packages/core/echo
53
+ "@dxos/echo",
54
+ "@dxos/echo-atom",
55
+ "@dxos/echo-db",
56
+ "@dxos/echo-pipeline",
57
+ "@dxos/echo-protocol",
58
+ "@dxos/echo-query",
59
+ "@dxos/echo-react",
60
+ "@dxos/echo-solid",
61
+ "@dxos/feed",
62
+ "@dxos/index-core",
63
+ // packages/core/halo
64
+ "@dxos/credentials",
65
+ "@dxos/keyring",
66
+ // packages/core/mesh
67
+ "@dxos/edge-client",
68
+ "@dxos/messaging",
69
+ "@dxos/network-manager",
70
+ "@dxos/rpc",
71
+ "@dxos/rpc-tunnel",
72
+ "@dxos/teleport",
73
+ "@dxos/teleport-extension-automerge-replicator",
74
+ "@dxos/teleport-extension-gossip",
75
+ "@dxos/teleport-extension-object-sync",
76
+ "@dxos/teleport-extension-replicator",
77
+ "@dxos/websocket-rpc",
78
+ // packages/core
79
+ "@dxos/ai",
80
+ "@dxos/assistant",
81
+ "@dxos/assistant-toolkit",
82
+ "@dxos/blueprints",
83
+ "@dxos/compute",
84
+ "@dxos/conductor",
85
+ "@dxos/functions",
86
+ "@dxos/functions-runtime",
87
+ "@dxos/mcp-client",
88
+ "@dxos/operation",
89
+ "@dxos/protocols",
90
+ // packages/devtools
91
+ "@dxos/devtools",
92
+ // packages/sdk
93
+ "@dxos/app-framework",
94
+ "@dxos/app-graph",
95
+ "@dxos/app-solid",
96
+ "@dxos/app-toolkit",
97
+ "@dxos/client",
98
+ "@dxos/client-protocol",
99
+ "@dxos/client-services",
100
+ "@dxos/config",
101
+ "@dxos/migrations",
102
+ "@dxos/observability",
103
+ "@dxos/react-client",
104
+ "@dxos/react-edge-client",
105
+ "@dxos/schema",
106
+ "@dxos/types",
107
+ // packages/ui
108
+ "@dxos/lit-grid",
109
+ "@dxos/lit-ui",
110
+ "@dxos/react-hooks",
111
+ "@dxos/react-ui",
112
+ "@dxos/react-ui-attention",
113
+ "@dxos/react-ui-board",
114
+ "@dxos/react-ui-calendar",
115
+ "@dxos/react-ui-canvas",
116
+ "@dxos/react-ui-canvas-compute",
117
+ "@dxos/react-ui-canvas-editor",
118
+ "@dxos/react-ui-chat",
119
+ "@dxos/react-ui-components",
120
+ "@dxos/react-ui-dnd",
121
+ "@dxos/react-ui-editor",
122
+ "@dxos/react-ui-form",
123
+ "@dxos/react-ui-gameboard",
124
+ "@dxos/react-ui-geo",
125
+ "@dxos/react-ui-graph",
126
+ "@dxos/react-ui-grid",
127
+ "@dxos/react-ui-list",
128
+ "@dxos/react-ui-markdown",
129
+ "@dxos/react-ui-masonry",
130
+ "@dxos/react-ui-menu",
131
+ "@dxos/react-ui-mosaic",
132
+ "@dxos/react-ui-pickers",
133
+ "@dxos/react-ui-search",
134
+ "@dxos/react-ui-sfx",
135
+ "@dxos/react-ui-stack",
136
+ "@dxos/react-ui-syntax-highlighter",
137
+ "@dxos/react-ui-table",
138
+ "@dxos/react-ui-tabs",
139
+ "@dxos/react-ui-text-tooltip",
140
+ "@dxos/react-ui-thread",
141
+ "@dxos/solid-ui",
142
+ "@dxos/solid-ui-geo",
143
+ "@dxos/ui",
144
+ "@dxos/ui-editor",
145
+ "@dxos/ui-theme",
146
+ "@dxos/ui-types",
147
+ // third-party
148
+ ...THIRD_PARTY_SHARED_PACKAGES
149
+ ];
150
+ var isSharedPackage = (id) => DEFAULT_PACKAGES.some((pkg) => id === pkg || id.startsWith(`${pkg}/`));
151
+
152
+ // src/vite-plugin/composer-plugin.ts
153
+ var JSX_DEV_RUNTIME = "react/jsx-dev-runtime";
154
+ var DEFAULT_MODULE_FILE = "plugin.mjs";
155
+ var isExternal = (id) => id !== JSX_DEV_RUNTIME && isSharedPackage(id);
156
+ var REQUIRE_SHIM_BANNER = [
157
+ "// --- composer-plugin: CJS require shim ---",
158
+ "// See @dxos/app-framework/vite-plugin/composer-plugin.ts for rationale.",
159
+ "import * as __composerReact from 'react';",
160
+ "import * as __composerReactDom from 'react-dom';",
161
+ "import * as __composerReactJsxRuntime from 'react/jsx-runtime';",
162
+ "const __composerRequireShim = new Map([",
163
+ " ['react', __composerReact.default ?? __composerReact],",
164
+ " ['react-dom', __composerReactDom.default ?? __composerReactDom],",
165
+ " ['react/jsx-runtime', __composerReactJsxRuntime],",
166
+ "]);",
167
+ "// Module-local binding: rolldown's CJS fallback does a `typeof require` check",
168
+ "// and uses whichever `require` is in lexical scope. Declaring this as `const`",
169
+ "// (instead of `globalThis.require ??=`) keeps each bundle's shim isolated from",
170
+ "// the host page and from other plugins sharing the window.",
171
+ "const require = (id) => {",
172
+ " if (__composerRequireShim.has(id)) return __composerRequireShim.get(id);",
173
+ " throw new Error('composer-plugin: unsupported CJS require at runtime: ' + id);",
174
+ "};",
175
+ "// --- end CJS require shim ---"
176
+ ].join("\n");
177
+ var composerPlugin = (options) => {
178
+ const entry = options?.entry ?? "src/plugin.tsx";
179
+ const port = options?.port ?? 3967;
180
+ const moduleFile = options?.moduleFile ?? DEFAULT_MODULE_FILE;
181
+ const meta = options?.meta;
182
+ const resolved = /* @__PURE__ */ new Set();
183
+ let base = "/";
184
+ const plugins = [
185
+ // Inline every imported stylesheet into the bundled module. Each community plugin
186
+ // is distributed as a single GitHub Release asset (per {@link moduleFile}); a sibling
187
+ // `.css` file would silently be dropped at runtime because Composer only fetches the
188
+ // module URL the registry advertises.
189
+ // TODO(wittjosiah): Once the registry supports multi-asset releases, move CSS (and
190
+ // fonts/images/wasm) back to sibling assets so plugins don't ship stylesheets inside
191
+ // their JS bundle.
192
+ ...cssInjectedByJs(),
193
+ // Configure vite for library-mode builds with externalized deps.
194
+ {
195
+ name: "composer-plugin",
196
+ config: () => ({
197
+ server: {
198
+ port,
199
+ // Allow the Composer host (different origin) to dynamically import plugin modules.
200
+ cors: true
201
+ },
202
+ preview: {
203
+ port
204
+ },
205
+ build: {
206
+ sourcemap: true,
207
+ // Transitively-bundled WASM modules (automerge, tiktoken, …) emit top-level
208
+ // await; `esnext` lets rolldown pass that through without an explicit polyfill.
209
+ target: "esnext",
210
+ lib: {
211
+ entry,
212
+ formats: [
213
+ "es"
214
+ ],
215
+ fileName: () => moduleFile
216
+ },
217
+ // Inline every asset as a data URL. GitHub Releases sign each asset with a
218
+ // per-file URL, so sibling-file imports from the plugin module can't resolve.
219
+ // TODO(wittjosiah): Drop once the registry can serve multi-asset releases and
220
+ // plugins can ship fonts/images/wasm as siblings of plugin.mjs.
221
+ assetsInlineLimit: () => true,
222
+ rolldownOptions: {
223
+ external: (id) => isExternal(id),
224
+ output: {
225
+ // Produce a single bundle per plugin for GitHub Release distribution.
226
+ // TODO(wittjosiah): Drop once the registry can serve multi-asset releases.
227
+ inlineDynamicImports: true,
228
+ // Install the CJS require shim at the top of plugin.mjs so transitively
229
+ // bundled CJS helpers (that call `require('react')` et al. at runtime) can
230
+ // resolve against the host-provided externals instead of throwing.
231
+ banner: REQUIRE_SHIM_BANNER
232
+ }
233
+ }
234
+ }
235
+ })
236
+ },
237
+ // Dev-time externalization.
238
+ // Vite's dev server doesn't use rollup externals, so we need to handle it manually.
239
+ // We intercept imports of shared deps at resolve time, mark them external, and then
240
+ // strip the `/@id/` prefix that Vite's import analysis injects for external modules.
241
+ {
242
+ name: "composer-plugin:externalize",
243
+ enforce: "pre",
244
+ apply: "serve",
245
+ // Exclude shared packages from Vite's dependency pre-bundling.
246
+ config: () => ({
247
+ optimizeDeps: {
248
+ exclude: DEFAULT_PACKAGES
249
+ }
250
+ }),
251
+ // Mark shared deps as external so Vite doesn't try to bundle them.
252
+ resolveId: (id) => {
253
+ if (isExternal(id)) {
254
+ resolved.add(id);
255
+ return {
256
+ id,
257
+ external: true
258
+ };
259
+ }
260
+ },
261
+ // Return a stub for any externalized module that Vite tries to load directly.
262
+ load: (id) => {
263
+ if (resolved.has(id)) {
264
+ return {
265
+ code: "export default {};"
266
+ };
267
+ }
268
+ },
269
+ // After all plugins are resolved, inject a late-stage transform plugin that strips
270
+ // the `/@id/` prefix from externalized bare specifiers in the output.
271
+ // This must run after Vite's internal import analysis which rewrites bare specifiers.
272
+ configResolved: (config) => {
273
+ base = config.base ?? "/";
274
+ config.plugins.push({
275
+ name: "composer-plugin:strip-prefix",
276
+ transform: (code) => {
277
+ if (resolved.size === 0) {
278
+ return;
279
+ }
280
+ const escaped = [
281
+ ...resolved
282
+ ].map((s) => s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")).join("|");
283
+ const pattern = new RegExp(`${base}@id/(${escaped})`, "g");
284
+ if (pattern.test(code)) {
285
+ return code.replace(pattern, (_, dep) => dep);
286
+ }
287
+ }
288
+ });
289
+ }
290
+ },
291
+ // JSX dev runtime shim.
292
+ // React refresh (used by @vitejs/plugin-react) imports from `react/jsx-dev-runtime`,
293
+ // but the externalized React only exposes `react/jsx-runtime`. This virtual module
294
+ // bridges the gap by re-exporting jsx-runtime's functions under jsx-dev-runtime's API.
295
+ {
296
+ name: "composer-plugin:jsx-dev-shim",
297
+ enforce: "pre",
298
+ apply: "serve",
299
+ resolveId: (id) => id === JSX_DEV_RUNTIME ? `\0${JSX_DEV_RUNTIME}` : void 0,
300
+ load: (id) => id === `\0${JSX_DEV_RUNTIME}` ? [
301
+ 'import { jsx, jsxs, Fragment } from "react/jsx-runtime";',
302
+ "export { Fragment };",
303
+ "export function jsxDEV(type, props, key, isStaticChildren) {",
304
+ " return isStaticChildren ? jsxs(type, props, key) : jsx(type, props, key);",
305
+ "}"
306
+ ].join("\n") : void 0
307
+ },
308
+ // React Refresh preamble stub.
309
+ //
310
+ // @vitejs/plugin-react's JSX transform prepends a runtime check to every module:
311
+ // if (!window.$RefreshReg$) throw new Error("@vitejs/plugin-react can't detect preamble…");
312
+ // In a normal single-origin app, vite injects a `<script type="module">` preamble
313
+ // into `index.html` that sets up `$RefreshReg$` / `$RefreshSig$` on `window` before any
314
+ // app code runs. When a community plugin is dev-served at its own origin and then
315
+ // dynamic-imported into the Composer host at a different origin, the host's window
316
+ // never receives that preamble, so every JSX module throws on first import.
317
+ //
318
+ // Inject a no-op refresh shim on the host's window from the plugin's entrypoint: fast-
319
+ // refresh itself doesn't work cross-origin anyway, so silencing the check lets the
320
+ // plugin load and ordinary page reloads take care of picking up edits. Production
321
+ // builds are untouched (`apply: 'serve'`).
322
+ {
323
+ name: "composer-plugin:react-refresh-shim",
324
+ enforce: "pre",
325
+ apply: "serve",
326
+ transform(code, id) {
327
+ if (!id.endsWith(entry.replace(/^\.?\//, "/"))) {
328
+ return;
329
+ }
330
+ const shim = [
331
+ "// composer-plugin: no-op React Refresh shim so cross-origin plugin modules",
332
+ "// don't throw the @vitejs/plugin-react preamble check at dynamic-import time.",
333
+ 'if (typeof window !== "undefined") {',
334
+ " window.$RefreshReg$ = window.$RefreshReg$ || (() => {});",
335
+ " window.$RefreshSig$ = window.$RefreshSig$ || (() => (type) => type);",
336
+ " window.__vite_plugin_react_preamble_installed__ = true;",
337
+ "}",
338
+ ""
339
+ ].join("\n");
340
+ return {
341
+ code: shim + code,
342
+ map: null
343
+ };
344
+ }
345
+ }
346
+ ];
347
+ if (meta) {
348
+ plugins.push({
349
+ name: "composer-plugin:emit-manifest",
350
+ apply: "build",
351
+ generateBundle() {
352
+ this.emitFile({
353
+ type: "asset",
354
+ fileName: MANIFEST_ASSET_NAME,
355
+ source: serializeManifest(meta, {
356
+ moduleFile
357
+ })
358
+ });
359
+ }
360
+ });
361
+ }
362
+ return plugins;
363
+ };
364
+
365
+ // src/vite-plugin/import-map-plugin.ts
366
+ import { init as initCjsLexer, parse as parseCjs } from "cjs-module-lexer";
367
+ import { existsSync, readFileSync, readdirSync, statSync } from "node:fs";
368
+ import { createRequire as nodeCreateRequire } from "node:module";
369
+ import path from "node:path";
370
+ var require2 = nodeCreateRequire(import.meta.url);
371
+ var trimQueryString = (id) => id.replace(/\?.*$/, "");
372
+ var resolvedIdIsEsmModule = (resolvedId) => {
373
+ const file = trimQueryString(resolvedId);
374
+ if (file.endsWith(".mjs") || file.endsWith(".mts")) {
375
+ return true;
376
+ }
377
+ if (file.endsWith(".cjs") || file.endsWith(".cts")) {
378
+ return false;
379
+ }
380
+ let directory = path.dirname(file);
381
+ while (directory !== path.dirname(directory)) {
382
+ const packageJsonPath = path.join(directory, "package.json");
383
+ if (existsSync(packageJsonPath)) {
384
+ try {
385
+ const pkg = JSON.parse(readFileSync(packageJsonPath, "utf8"));
386
+ return pkg.type === "module";
387
+ } catch {
388
+ return false;
389
+ }
390
+ }
391
+ directory = path.dirname(directory);
392
+ }
393
+ return false;
394
+ };
395
+ var findPackageJsonPath = (resolvedId, packageName) => {
396
+ let directory = path.dirname(trimQueryString(resolvedId));
397
+ while (directory !== path.dirname(directory)) {
398
+ const packageJsonPath = path.join(directory, "package.json");
399
+ if (existsSync(packageJsonPath)) {
400
+ try {
401
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, "utf8"));
402
+ if (packageJson.name === packageName) {
403
+ return packageJsonPath;
404
+ }
405
+ } catch {
406
+ }
407
+ }
408
+ directory = path.dirname(directory);
409
+ }
410
+ return void 0;
411
+ };
412
+ var resolvePackageJsonPath = (packageName) => {
413
+ try {
414
+ return findPackageJsonPath(require2.resolve(packageName), packageName);
415
+ } catch {
416
+ return void 0;
417
+ }
418
+ };
419
+ var resolvePackageJsonPathViaContext = async (ctx, packageName) => {
420
+ try {
421
+ const resolved = await ctx.resolve(packageName);
422
+ if (resolved) {
423
+ const viaResolved = findPackageJsonPath(resolved.id, packageName);
424
+ if (viaResolved) {
425
+ return viaResolved;
426
+ }
427
+ }
428
+ } catch {
429
+ }
430
+ return resolvePackageJsonPath(packageName);
431
+ };
432
+ var importMapExcludedSubpaths = {
433
+ "@dxos/app-framework": /* @__PURE__ */ new Set([
434
+ "vite-plugin"
435
+ ]),
436
+ // `@dxos/lit-grid/testing` re-exports a playwright page-object manager and pulls
437
+ // `@playwright/test` (and transitive playwright-core) into the browser bundle.
438
+ "@dxos/lit-grid": /* @__PURE__ */ new Set([
439
+ "testing"
440
+ ]),
441
+ "@dxos/react-ui-mosaic": /* @__PURE__ */ new Set([
442
+ "playwright"
443
+ ]),
444
+ "@dxos/react-ui-stack": /* @__PURE__ */ new Set([
445
+ "playwright"
446
+ ]),
447
+ "@dxos/react-ui-table": /* @__PURE__ */ new Set([
448
+ "playwright"
449
+ ]),
450
+ "@dxos/ui-theme": /* @__PURE__ */ new Set([
451
+ "plugin"
452
+ ]),
453
+ // `solid-js/web/storage` is a server-only helper that pulls
454
+ // `node:async_hooks` (AsyncLocalStorage) and has no browser shim. Client
455
+ // code imports `solid-js`, `solid-js/store`, and `solid-js/web` only.
456
+ "solid-js": /* @__PURE__ */ new Set([
457
+ "web/storage"
458
+ ])
459
+ };
460
+ var GLOBALLY_EXCLUDED_SUBPATHS = /* @__PURE__ */ new Set([
461
+ "playwright",
462
+ "testing"
463
+ ]);
464
+ var BUILD_TOOL_SUBPATH = /^(vite-plugin|esbuild-plugin|rollup-plugin|plugin)$/;
465
+ var ASSET_SUBPATH = /\.(css|pcss|scss|sass|less|json|node|wasm|html|svg|png|jpe?g|gif|webp|ico)$/;
466
+ var isAssetSubpath = (specifier) => ASSET_SUBPATH.test(specifier);
467
+ var walkDirectoryForExtension = (baseDir, extension) => {
468
+ if (!existsSync(baseDir)) {
469
+ return [];
470
+ }
471
+ const results = [];
472
+ const walk = (dir) => {
473
+ let entries;
474
+ try {
475
+ entries = readdirSync(dir);
476
+ } catch {
477
+ return;
478
+ }
479
+ for (const entry of entries) {
480
+ const full = path.join(dir, entry);
481
+ let stat;
482
+ try {
483
+ stat = statSync(full);
484
+ } catch {
485
+ continue;
486
+ }
487
+ if (stat.isDirectory()) {
488
+ walk(full);
489
+ } else if (entry.endsWith(extension)) {
490
+ results.push(path.relative(baseDir, full).slice(0, -extension.length));
491
+ }
492
+ }
493
+ };
494
+ walk(baseDir);
495
+ return results;
496
+ };
497
+ var pickPatternTarget = (value) => {
498
+ if (typeof value === "string") {
499
+ return value;
500
+ }
501
+ if (value && typeof value === "object") {
502
+ const obj = value;
503
+ const preferred = obj.browser ?? obj.import ?? obj.default ?? obj.module;
504
+ return typeof preferred === "string" ? preferred : void 0;
505
+ }
506
+ return void 0;
507
+ };
508
+ var expandWildcardExport = (packageName, packageJsonDir, exportKey, exportValue) => {
509
+ const target = pickPatternTarget(exportValue);
510
+ if (!target || !target.includes("*")) {
511
+ return [];
512
+ }
513
+ const keyStarIndex = exportKey.indexOf("*");
514
+ const targetStarIndex = target.indexOf("*");
515
+ if (keyStarIndex === -1 || targetStarIndex === -1) {
516
+ return [];
517
+ }
518
+ const keyPrefix = exportKey.slice(2, keyStarIndex);
519
+ const targetPrefix = target.slice(2, targetStarIndex);
520
+ const targetSuffix = target.slice(targetStarIndex + 1);
521
+ const baseDir = path.resolve(packageJsonDir, targetPrefix);
522
+ const files = walkDirectoryForExtension(baseDir, targetSuffix || ".js");
523
+ return files.map((relativeNoExt) => `${packageName}/${keyPrefix}${relativeNoExt}`);
524
+ };
525
+ var getPackageEntrypoints = (packageName, packageJsonPath) => {
526
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, "utf8"));
527
+ const exportsField = packageJson.exports;
528
+ if (!exportsField || typeof exportsField === "string" || Array.isArray(exportsField)) {
529
+ return [
530
+ packageName
531
+ ];
532
+ }
533
+ const exportKeys = Object.keys(exportsField);
534
+ if (!exportKeys.some((key) => key.startsWith("."))) {
535
+ return [
536
+ packageName
537
+ ];
538
+ }
539
+ const excluded = importMapExcludedSubpaths[packageName];
540
+ const packageJsonDir = path.dirname(packageJsonPath);
541
+ const modules = exportKeys.flatMap((key) => {
542
+ if (key === ".") {
543
+ return [
544
+ packageName
545
+ ];
546
+ }
547
+ if (!key.startsWith("./") || key === "./package.json") {
548
+ return [];
549
+ }
550
+ if (key.endsWith(".d.ts")) {
551
+ return [];
552
+ }
553
+ if (key.includes("*")) {
554
+ return expandWildcardExport(packageName, packageJsonDir, key, exportsField[key]);
555
+ }
556
+ const subpath = key.slice(2);
557
+ if (excluded?.has(subpath) || GLOBALLY_EXCLUDED_SUBPATHS.has(subpath) || BUILD_TOOL_SUBPATH.test(subpath)) {
558
+ return [];
559
+ }
560
+ return [
561
+ `${packageName}/${subpath}`
562
+ ];
563
+ });
564
+ return modules.length > 0 ? modules : [
565
+ packageName
566
+ ];
567
+ };
568
+ var getCjsNamedExports = (filePath, seen = /* @__PURE__ */ new Set()) => {
569
+ const normalized = trimQueryString(filePath);
570
+ if (seen.has(normalized)) {
571
+ return [];
572
+ }
573
+ seen.add(normalized);
574
+ try {
575
+ const source = readFileSync(normalized, "utf8");
576
+ const { exports: directExports, reexports } = parseCjs(source);
577
+ const reexportedNames = reexports.flatMap((reexport) => {
578
+ const resolved = path.resolve(path.dirname(normalized), reexport);
579
+ const candidates = [
580
+ resolved,
581
+ `${resolved}.js`,
582
+ `${resolved}.cjs`
583
+ ];
584
+ const found = candidates.find((candidate) => existsSync(candidate));
585
+ return found ? getCjsNamedExports(found, seen) : [];
586
+ });
587
+ return [
588
+ .../* @__PURE__ */ new Set([
589
+ ...directExports,
590
+ ...reexportedNames
591
+ ])
592
+ ].filter((name) => name !== "default" && name !== "__esModule");
593
+ } catch {
594
+ return [];
595
+ }
596
+ };
597
+ var importMapPlugin = (options) => {
598
+ const packages = options?.packages ?? DEFAULT_PACKAGES;
599
+ const WRAPPER_PREFIX = "\0import-map:";
600
+ const chunkRefIds = {};
601
+ const resolvedIds = {};
602
+ let imports = {};
603
+ let modules = [];
604
+ let importMapIsDev = false;
605
+ let base = "/";
606
+ return [
607
+ // Phase 1: Resolve all package entrypoints and emit chunks (or record dev paths).
608
+ {
609
+ name: "import-map:get-chunk-ref-ids",
610
+ configResolved(config) {
611
+ base = config.base ?? "/";
612
+ },
613
+ async buildStart() {
614
+ importMapIsDev = this.environment.mode === "dev";
615
+ await initCjsLexer();
616
+ modules = [
617
+ ...new Set((await Promise.all(packages.map(async (packageName) => {
618
+ const packageJsonPath = await resolvePackageJsonPathViaContext(this, packageName);
619
+ if (!packageJsonPath) {
620
+ this.warn(`Unable to locate package.json for import map package: ${packageName}`);
621
+ return [
622
+ packageName
623
+ ];
624
+ }
625
+ return getPackageEntrypoints(packageName, packageJsonPath);
626
+ }))).flat())
627
+ ];
628
+ for (const specifier of modules) {
629
+ if (isAssetSubpath(specifier)) {
630
+ imports[specifier] = "data:text/javascript;charset=utf-8,export%20%7B%7D%3B";
631
+ continue;
632
+ }
633
+ const resolved = await this.resolve(specifier);
634
+ if (!resolved) {
635
+ this.warn(`Import map: unable to resolve "${specifier}"; omitting from import map.`);
636
+ continue;
637
+ }
638
+ if (importMapIsDev) {
639
+ const filePath = trimQueryString(resolved.id);
640
+ imports[specifier] = filePath.startsWith("/") ? `/@fs${filePath}` : filePath;
641
+ } else {
642
+ resolvedIds[specifier] = resolved.id;
643
+ chunkRefIds[specifier] = this.emitFile({
644
+ type: "chunk",
645
+ id: `${WRAPPER_PREFIX}${specifier}`,
646
+ preserveSignature: "strict"
647
+ });
648
+ }
649
+ }
650
+ },
651
+ // Intercept virtual wrapper IDs so Rollup doesn't try to resolve them as files.
652
+ resolveId(id) {
653
+ if (id.startsWith(WRAPPER_PREFIX)) {
654
+ return id;
655
+ }
656
+ },
657
+ // Generate the source for each virtual wrapper module.
658
+ // For CJS packages, explicitly re-export named exports (discovered via static analysis)
659
+ // because Rollup's `export *` interop doesn't preserve them for CJS.
660
+ load(id) {
661
+ if (!id.startsWith(WRAPPER_PREFIX)) {
662
+ return;
663
+ }
664
+ const specifier = id.slice(WRAPPER_PREFIX.length);
665
+ const resolvedId = resolvedIds[specifier];
666
+ if (!resolvedId) {
667
+ return `export * from ${JSON.stringify(specifier)};
668
+ `;
669
+ }
670
+ const filePath = trimQueryString(resolvedId);
671
+ const isCjs = filePath.endsWith(".cjs") || !filePath.endsWith(".mjs") && !resolvedIdIsEsmModule(filePath);
672
+ if (isCjs) {
673
+ const named = getCjsNamedExports(filePath);
674
+ if (named.length > 0) {
675
+ return `export { default, ${named.join(", ")} } from ${JSON.stringify(specifier)};
676
+ `;
677
+ }
678
+ }
679
+ return `export * from ${JSON.stringify(specifier)};
680
+ `;
681
+ },
682
+ // After bundling, map each specifier to the URL of its emitted chunk. Preserves
683
+ // asset-subpath entries already written to `imports` during `buildStart` (those
684
+ // use an inline data URL rather than an emitted chunk).
685
+ generateBundle() {
686
+ if (importMapIsDev) {
687
+ return;
688
+ }
689
+ imports = {
690
+ ...imports,
691
+ ...Object.fromEntries(modules.filter((specifier) => chunkRefIds[specifier] !== void 0).map((specifier) => [
692
+ specifier,
693
+ `${base}${this.getFileName(chunkRefIds[specifier])}`
694
+ ]))
695
+ };
696
+ }
697
+ },
698
+ // Phase 2: Inject the import map into the HTML as a <script type="importmap"> tag.
699
+ {
700
+ name: "import-map:transform-index-html",
701
+ enforce: "post",
702
+ transformIndexHtml(html) {
703
+ const tags = [
704
+ {
705
+ tag: "script",
706
+ attrs: {
707
+ type: "importmap"
708
+ },
709
+ children: JSON.stringify({
710
+ imports
711
+ }, null, 2)
712
+ }
713
+ ];
714
+ return {
715
+ html,
716
+ tags
717
+ };
718
+ }
719
+ }
720
+ ];
721
+ };
722
+ export {
723
+ DEFAULT_PACKAGES,
724
+ MANIFEST_ASSET_NAME,
725
+ composerPlugin,
726
+ importMapPlugin,
727
+ isSharedPackage,
728
+ serializeManifest
729
+ };
730
+ //# sourceMappingURL=index.mjs.map