@dxos/plugin-script 0.12.0-next-73daef452f1464b62efdbca75fb0067c1066f264 → 0.13.0

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 (329) hide show
  1. package/PLUGIN.mdl +93 -17
  2. package/README.md +1 -1
  3. package/dist/lib/Notebook.mjs +4 -5
  4. package/dist/lib/Notebook.mjs.map +1 -1
  5. package/dist/lib/ScriptCapabilities.mjs.map +1 -1
  6. package/dist/lib/ScriptOperation.mjs +1 -1
  7. package/dist/lib/ScriptOperation.mjs.map +1 -1
  8. package/dist/lib/ScriptOperationHandlerSet.mjs.map +1 -1
  9. package/dist/lib/ScriptSkill.mjs +1 -1
  10. package/dist/lib/ScriptSkill.mjs.map +1 -1
  11. package/dist/lib/capabilities.browser.mjs +51 -0
  12. package/dist/lib/capabilities.browser.mjs.map +1 -0
  13. package/dist/lib/capabilities.mjs +17 -7
  14. package/dist/lib/capabilities.mjs.map +1 -1
  15. package/dist/lib/capabilities.node.mjs +16 -4
  16. package/dist/lib/capabilities.node.mjs.map +1 -1
  17. package/dist/lib/capabilities.tauri.mjs +51 -0
  18. package/dist/lib/capabilities.tauri.mjs.map +1 -0
  19. package/dist/lib/capabilities.workerd.mjs +1 -1
  20. package/dist/lib/capabilities.workerd.mjs.map +1 -1
  21. package/dist/lib/chunk-DeploymentDialog.mjs +12 -9
  22. package/dist/lib/chunk-DeploymentDialog.mjs.map +1 -1
  23. package/dist/lib/chunk-NotebookArticle.mjs +37 -36
  24. package/dist/lib/chunk-NotebookArticle.mjs.map +1 -1
  25. package/dist/lib/chunk-PLUGIN.mjs +6 -0
  26. package/dist/lib/chunk-PLUGIN.mjs.map +1 -0
  27. package/dist/lib/chunk-ScriptArticle.mjs +14 -15
  28. package/dist/lib/chunk-ScriptArticle.mjs.map +1 -1
  29. package/dist/lib/chunk-ScriptProperties.mjs +91 -94
  30. package/dist/lib/chunk-ScriptProperties.mjs.map +1 -1
  31. package/dist/lib/chunk-ScriptSettings.mjs +11 -8
  32. package/dist/lib/chunk-ScriptSettings.mjs.map +1 -1
  33. package/dist/lib/chunk-TestContainer.mjs +5 -5
  34. package/dist/lib/chunk-TestContainer.mjs.map +1 -1
  35. package/dist/lib/chunk-app-graph-builder.mjs +2 -0
  36. package/dist/lib/chunk-app-graph-builder.mjs.map +1 -1
  37. package/dist/lib/chunk-compiler.mjs +87 -4
  38. package/dist/lib/chunk-compiler.mjs.map +1 -1
  39. package/dist/lib/chunk-create-object.mjs +1 -1
  40. package/dist/lib/chunk-create-script.mjs.map +1 -1
  41. package/dist/lib/chunk-create.mjs +4 -4
  42. package/dist/lib/chunk-create.mjs.map +1 -1
  43. package/dist/lib/chunk-definitions.mjs +246 -0
  44. package/dist/lib/chunk-definitions.mjs.map +1 -0
  45. package/dist/lib/chunk-delete.mjs +2 -2
  46. package/dist/lib/chunk-delete.mjs.map +1 -1
  47. package/dist/lib/chunk-deploy.mjs +16 -12
  48. package/dist/lib/chunk-deploy.mjs.map +1 -1
  49. package/dist/lib/chunk-errors.mjs +8 -0
  50. package/dist/lib/chunk-errors.mjs.map +1 -0
  51. package/dist/lib/chunk-functions.mjs +66 -246
  52. package/dist/lib/chunk-functions.mjs.map +1 -1
  53. package/dist/lib/chunk-inspect-invocations.mjs +3 -3
  54. package/dist/lib/chunk-inspect-invocations.mjs.map +1 -1
  55. package/dist/lib/chunk-install-function.mjs +11 -11
  56. package/dist/lib/chunk-install-function.mjs.map +1 -1
  57. package/dist/lib/chunk-invoke.mjs +6 -6
  58. package/dist/lib/chunk-invoke.mjs.map +1 -1
  59. package/dist/lib/chunk-operation-handler.mjs +16 -2
  60. package/dist/lib/chunk-operation-handler.mjs.map +1 -1
  61. package/dist/lib/chunk-query-deployed-functions.mjs +5 -6
  62. package/dist/lib/chunk-query-deployed-functions.mjs.map +1 -1
  63. package/dist/lib/chunk-react-surface.mjs +14 -10
  64. package/dist/lib/chunk-react-surface.mjs.map +1 -1
  65. package/dist/lib/chunk-read.mjs +4 -3
  66. package/dist/lib/chunk-read.mjs.map +1 -1
  67. package/dist/lib/chunk-settings.mjs +2 -2
  68. package/dist/lib/chunk-settings.mjs.map +1 -1
  69. package/dist/lib/chunk-skill-definition.mjs +1 -1
  70. package/dist/lib/chunk-templates.mjs +3 -3
  71. package/dist/lib/chunk-update.mjs +4 -3
  72. package/dist/lib/chunk-update.mjs.map +1 -1
  73. package/dist/lib/components.mjs +114 -123
  74. package/dist/lib/components.mjs.map +1 -1
  75. package/dist/lib/containers.mjs.map +1 -1
  76. package/dist/lib/hooks.mjs +96 -16
  77. package/dist/lib/hooks.mjs.map +1 -1
  78. package/dist/lib/index.mjs +5 -3
  79. package/dist/lib/meta.mjs.map +1 -1
  80. package/dist/lib/ns/ScriptFunction.mjs +12 -0
  81. package/dist/lib/ns/ScriptFunction.mjs.map +1 -0
  82. package/dist/lib/ns/Templates.mjs +11 -0
  83. package/dist/lib/ns/Templates.mjs.map +1 -0
  84. package/dist/lib/testing.mjs +1 -1
  85. package/dist/lib/translations.mjs +2 -1
  86. package/dist/lib/translations.mjs.map +1 -1
  87. package/dist/types/src/ScriptFunction.d.ts +2 -0
  88. package/dist/types/src/ScriptFunction.d.ts.map +1 -0
  89. package/dist/types/src/Templates.d.ts +2 -0
  90. package/dist/types/src/Templates.d.ts.map +1 -0
  91. package/dist/types/src/capabilities/ScriptSurfaces.d.ts.map +1 -1
  92. package/dist/types/src/capabilities/compiler.d.ts +2 -1
  93. package/dist/types/src/capabilities/compiler.d.ts.map +1 -1
  94. package/dist/types/src/capabilities/errors.d.ts +33 -0
  95. package/dist/types/src/capabilities/errors.d.ts.map +1 -0
  96. package/dist/types/src/capabilities/gen/browser.d.ts +12 -0
  97. package/dist/types/src/capabilities/gen/browser.d.ts.map +1 -0
  98. package/dist/types/src/capabilities/gen/node.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/gen/tauri.d.ts +12 -0
  100. package/dist/types/src/capabilities/gen/tauri.d.ts.map +1 -0
  101. package/dist/types/src/capabilities/gen/workerd.d.ts.map +1 -1
  102. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  103. package/dist/types/src/compiler/index.d.ts +1 -1
  104. package/dist/types/src/compiler/index.d.ts.map +1 -1
  105. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts +3 -3
  106. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts.map +1 -1
  107. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts.map +1 -1
  108. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts +4 -4
  109. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts.map +1 -1
  110. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts +10 -0
  111. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts.map +1 -1
  112. package/dist/types/src/components/NotebookStack/index.d.ts +2 -2
  113. package/dist/types/src/components/NotebookStack/index.d.ts.map +1 -1
  114. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +2 -2
  115. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  116. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts +10 -0
  117. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts.map +1 -1
  118. package/dist/types/src/components/ScriptToolbar/index.d.ts +1 -1
  119. package/dist/types/src/components/ScriptToolbar/index.d.ts.map +1 -1
  120. package/dist/types/src/components/TestPanel/TestPanel.d.ts +2 -2
  121. package/dist/types/src/components/TestPanel/TestPanel.d.ts.map +1 -1
  122. package/dist/types/src/components/TestPanel/index.d.ts +1 -1
  123. package/dist/types/src/components/TestPanel/index.d.ts.map +1 -1
  124. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts +2 -2
  125. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts.map +1 -1
  126. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts +1 -1
  127. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts.map +1 -1
  128. package/dist/types/src/components/TypescriptEditor/index.d.ts +1 -1
  129. package/dist/types/src/components/TypescriptEditor/index.d.ts.map +1 -1
  130. package/dist/types/src/components/index.d.ts +4 -5
  131. package/dist/types/src/components/index.d.ts.map +1 -1
  132. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.d.ts +1 -1
  133. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.d.ts.map +1 -1
  134. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.stories.d.ts +10 -0
  135. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.stories.d.ts.map +1 -1
  136. package/dist/types/src/containers/DeploymentDialog/index.d.ts +1 -1
  137. package/dist/types/src/containers/DeploymentDialog/index.d.ts.map +1 -1
  138. package/dist/types/src/containers/NotebookArticle/NotebookArticle.d.ts +1 -1
  139. package/dist/types/src/containers/NotebookArticle/NotebookArticle.d.ts.map +1 -1
  140. package/dist/types/src/containers/NotebookArticle/NotebookArticle.stories.d.ts +1 -1
  141. package/dist/types/src/containers/NotebookArticle/NotebookArticle.stories.d.ts.map +1 -1
  142. package/dist/types/src/containers/NotebookArticle/index.d.ts +1 -1
  143. package/dist/types/src/containers/NotebookArticle/index.d.ts.map +1 -1
  144. package/dist/types/src/containers/ScriptArticle/ScriptArticle.d.ts +1 -1
  145. package/dist/types/src/containers/ScriptArticle/ScriptArticle.d.ts.map +1 -1
  146. package/dist/types/src/containers/ScriptArticle/ScriptArticle.stories.d.ts +10 -0
  147. package/dist/types/src/containers/ScriptArticle/ScriptArticle.stories.d.ts.map +1 -1
  148. package/dist/types/src/containers/ScriptArticle/index.d.ts +1 -1
  149. package/dist/types/src/containers/ScriptArticle/index.d.ts.map +1 -1
  150. package/dist/types/src/containers/ScriptProperties/FunctionBinding.d.ts.map +1 -1
  151. package/dist/types/src/containers/ScriptProperties/FunctionPublishing.d.ts.map +1 -1
  152. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts +1 -1
  153. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts.map +1 -1
  154. package/dist/types/src/containers/ScriptProperties/ScriptProperties.stories.d.ts +10 -0
  155. package/dist/types/src/containers/ScriptProperties/ScriptProperties.stories.d.ts.map +1 -1
  156. package/dist/types/src/containers/ScriptProperties/SkillEditor.d.ts.map +1 -1
  157. package/dist/types/src/containers/ScriptProperties/index.d.ts +1 -1
  158. package/dist/types/src/containers/ScriptProperties/index.d.ts.map +1 -1
  159. package/dist/types/src/containers/ScriptSettings/ScriptSettings.d.ts +2 -2
  160. package/dist/types/src/containers/ScriptSettings/ScriptSettings.d.ts.map +1 -1
  161. package/dist/types/src/containers/ScriptSettings/ScriptSettings.stories.d.ts +11 -1
  162. package/dist/types/src/containers/ScriptSettings/ScriptSettings.stories.d.ts.map +1 -1
  163. package/dist/types/src/containers/ScriptSettings/index.d.ts +1 -1
  164. package/dist/types/src/containers/ScriptSettings/index.d.ts.map +1 -1
  165. package/dist/types/src/containers/TestContainer/index.d.ts +1 -1
  166. package/dist/types/src/containers/TestContainer/index.d.ts.map +1 -1
  167. package/dist/types/src/containers/index.d.ts.map +1 -1
  168. package/dist/types/src/hooks/deploy.d.ts +3 -3
  169. package/dist/types/src/hooks/deploy.d.ts.map +1 -1
  170. package/dist/types/src/hooks/index.d.ts +6 -6
  171. package/dist/types/src/hooks/index.d.ts.map +1 -1
  172. package/dist/types/src/hooks/useCompiler.d.ts +1 -1
  173. package/dist/types/src/hooks/useCompiler.d.ts.map +1 -1
  174. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts +1 -1
  175. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts.map +1 -1
  176. package/dist/types/src/hooks/useToolbarState.d.ts +2 -2
  177. package/dist/types/src/hooks/useToolbarState.d.ts.map +1 -1
  178. package/dist/types/src/index.d.ts +5 -3
  179. package/dist/types/src/index.d.ts.map +1 -1
  180. package/dist/types/src/notebook/compute-graph.d.ts +3 -3
  181. package/dist/types/src/notebook/compute-graph.d.ts.map +1 -1
  182. package/dist/types/src/notebook/index.d.ts +1 -1
  183. package/dist/types/src/notebook/index.d.ts.map +1 -1
  184. package/dist/types/src/operations/ScriptOperationHandlerSet.d.ts.map +1 -1
  185. package/dist/types/src/operations/index.d.ts +1 -1
  186. package/dist/types/src/operations/index.d.ts.map +1 -1
  187. package/dist/types/src/skills/ScriptSkill.d.ts.map +1 -1
  188. package/dist/types/src/skills/functions/definitions.d.ts +8 -6
  189. package/dist/types/src/skills/functions/definitions.d.ts.map +1 -1
  190. package/dist/types/src/skills/functions/deploy.d.ts +4 -2
  191. package/dist/types/src/skills/functions/deploy.d.ts.map +1 -1
  192. package/dist/types/src/skills/functions/errors.d.ts +33 -0
  193. package/dist/types/src/skills/functions/errors.d.ts.map +1 -0
  194. package/dist/types/src/skills/functions/index.d.ts +1 -1
  195. package/dist/types/src/skills/functions/index.d.ts.map +1 -1
  196. package/dist/types/src/skills/functions/install-function.d.ts +3 -2
  197. package/dist/types/src/skills/functions/install-function.d.ts.map +1 -1
  198. package/dist/types/src/skills/functions/invoke.d.ts +2 -2
  199. package/dist/types/src/skills/functions/invoke.d.ts.map +1 -1
  200. package/dist/types/src/skills/functions/query-deployed-functions.d.ts +2 -2
  201. package/dist/types/src/skills/functions/query-deployed-functions.d.ts.map +1 -1
  202. package/dist/types/src/skills/index.d.ts +1 -1
  203. package/dist/types/src/skills/index.d.ts.map +1 -1
  204. package/dist/types/src/templates/forex-effect.d.ts.map +1 -1
  205. package/dist/types/src/testing/index.d.ts +2 -2
  206. package/dist/types/src/testing/index.d.ts.map +1 -1
  207. package/dist/types/src/translations.d.ts +10 -0
  208. package/dist/types/src/translations.d.ts.map +1 -1
  209. package/dist/types/src/types/Notebook.d.ts.map +1 -1
  210. package/dist/types/src/types/ScriptCapabilities.d.ts +3 -3
  211. package/dist/types/src/types/ScriptCapabilities.d.ts.map +1 -1
  212. package/dist/types/src/types/index.d.ts +5 -5
  213. package/dist/types/src/types/index.d.ts.map +1 -1
  214. package/dist/types/src/util/deploy.d.ts +6 -3
  215. package/dist/types/src/util/deploy.d.ts.map +1 -1
  216. package/dist/types/src/util/functions.d.ts +1 -1
  217. package/dist/types/src/util/functions.d.ts.map +1 -1
  218. package/dist/types/src/util/index.d.ts +2 -2
  219. package/dist/types/src/util/index.d.ts.map +1 -1
  220. package/dist/types/tsconfig.tsbuildinfo +1 -1
  221. package/package.json +106 -96
  222. package/src/ScriptFunction.ts +7 -0
  223. package/src/Templates.ts +7 -0
  224. package/src/capabilities/ScriptSurfaces.tsx +19 -10
  225. package/src/capabilities/app-graph-builder.ts +2 -0
  226. package/src/capabilities/compiler.ts +6 -5
  227. package/src/capabilities/errors.ts +8 -0
  228. package/src/capabilities/gen/browser.ts +62 -0
  229. package/src/capabilities/gen/node.ts +10 -10
  230. package/src/capabilities/gen/tauri.ts +62 -0
  231. package/src/capabilities/gen/workerd.ts +4 -4
  232. package/src/capabilities/index.ts +11 -11
  233. package/src/capabilities/operation-handler.ts +1 -1
  234. package/src/capabilities/react-surface.ts +4 -4
  235. package/src/capabilities/settings.ts +2 -2
  236. package/src/compiler/compiler.browser.test.ts +1 -1
  237. package/src/compiler/index.ts +1 -1
  238. package/src/components/NotebookStack/NotebookCell.tsx +35 -29
  239. package/src/components/NotebookStack/NotebookMenu.tsx +27 -26
  240. package/src/components/NotebookStack/NotebookStack.stories.tsx +3 -3
  241. package/src/components/NotebookStack/NotebookStack.tsx +20 -17
  242. package/src/components/NotebookStack/index.ts +2 -2
  243. package/src/components/ScriptToolbar/ScriptToolbar.stories.tsx +5 -5
  244. package/src/components/ScriptToolbar/ScriptToolbar.tsx +14 -15
  245. package/src/components/ScriptToolbar/index.ts +1 -1
  246. package/src/components/TestPanel/TestPanel.tsx +29 -23
  247. package/src/components/TestPanel/index.ts +1 -1
  248. package/src/components/TypescriptEditor/TypescriptEditor.stories.tsx +10 -8
  249. package/src/components/TypescriptEditor/TypescriptEditor.tsx +11 -7
  250. package/src/components/TypescriptEditor/index.ts +1 -1
  251. package/src/components/index.ts +4 -5
  252. package/src/containers/DeploymentDialog/DeploymentDialog.stories.tsx +5 -7
  253. package/src/containers/DeploymentDialog/DeploymentDialog.tsx +18 -15
  254. package/src/containers/DeploymentDialog/index.ts +1 -1
  255. package/src/containers/NotebookArticle/NotebookArticle.stories.tsx +6 -6
  256. package/src/containers/NotebookArticle/NotebookArticle.tsx +25 -21
  257. package/src/containers/NotebookArticle/index.ts +1 -1
  258. package/src/containers/ScriptArticle/ScriptArticle.stories.tsx +3 -3
  259. package/src/containers/ScriptArticle/ScriptArticle.tsx +13 -11
  260. package/src/containers/ScriptArticle/index.ts +1 -1
  261. package/src/containers/ScriptProperties/FunctionBinding.tsx +18 -18
  262. package/src/containers/ScriptProperties/FunctionPublishing.tsx +22 -22
  263. package/src/containers/ScriptProperties/ScriptProperties.stories.tsx +3 -3
  264. package/src/containers/ScriptProperties/ScriptProperties.tsx +10 -10
  265. package/src/containers/ScriptProperties/SkillEditor.tsx +16 -14
  266. package/src/containers/ScriptProperties/index.ts +1 -1
  267. package/src/containers/ScriptSettings/ScriptSettings.stories.tsx +1 -1
  268. package/src/containers/ScriptSettings/ScriptSettings.tsx +16 -11
  269. package/src/containers/ScriptSettings/index.ts +1 -1
  270. package/src/containers/TestContainer/TestContainer.tsx +4 -4
  271. package/src/containers/TestContainer/index.ts +1 -1
  272. package/src/containers/index.ts +6 -6
  273. package/src/e2e/ai.test.ts +1 -1
  274. package/src/hooks/deploy.ts +12 -5
  275. package/src/hooks/index.ts +6 -6
  276. package/src/hooks/template.ts +1 -1
  277. package/src/hooks/useCompiler.ts +8 -7
  278. package/src/hooks/useCreateAndDeployScriptTemplates.ts +10 -5
  279. package/src/hooks/useToolbarState.ts +4 -4
  280. package/src/index.ts +5 -3
  281. package/src/meta.ts +1 -1
  282. package/src/notebook/compute-graph.test.ts +2 -2
  283. package/src/notebook/compute-graph.ts +4 -4
  284. package/src/notebook/index.ts +1 -1
  285. package/src/notebook/vfs-parser.test.ts +1 -1
  286. package/src/notebook/vfs-parser.ts +1 -1
  287. package/src/operations/ScriptOperationHandlerSet.ts +3 -1
  288. package/src/operations/create-script.ts +1 -1
  289. package/src/operations/index.ts +1 -1
  290. package/src/plugin.test.ts +2 -2
  291. package/src/skills/ScriptSkill.ts +3 -1
  292. package/src/skills/functions/create.ts +4 -4
  293. package/src/skills/functions/definitions.ts +8 -6
  294. package/src/skills/functions/delete.ts +1 -1
  295. package/src/skills/functions/deploy.ts +13 -9
  296. package/src/skills/functions/errors.ts +8 -0
  297. package/src/skills/functions/index.ts +11 -11
  298. package/src/skills/functions/inspect-invocations.ts +1 -1
  299. package/src/skills/functions/install-function.ts +11 -14
  300. package/src/skills/functions/invoke.ts +5 -5
  301. package/src/skills/functions/query-deployed-functions.ts +3 -4
  302. package/src/skills/functions/read.ts +3 -2
  303. package/src/skills/functions/update.ts +3 -2
  304. package/src/skills/index.ts +1 -1
  305. package/src/templates/anthropic.ts +2 -2
  306. package/src/templates/commentary.ts +1 -1
  307. package/src/templates/forex-effect.ts +7 -4
  308. package/src/testing/index.ts +2 -2
  309. package/src/translations.ts +4 -2
  310. package/src/types/Notebook.ts +6 -4
  311. package/src/types/ScriptCapabilities.ts +3 -3
  312. package/src/types/ScriptOperation.ts +1 -1
  313. package/src/types/index.ts +5 -5
  314. package/src/util/deploy.ts +10 -7
  315. package/src/util/functions.ts +24 -15
  316. package/src/util/index.ts +2 -2
  317. package/dist/lib/chunk-compiler2.mjs +0 -76
  318. package/dist/lib/chunk-compiler2.mjs.map +0 -1
  319. package/dist/lib/chunk-util.mjs +0 -146
  320. package/dist/lib/chunk-util.mjs.map +0 -1
  321. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts +0 -5
  322. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts.map +0 -1
  323. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts +0 -14
  324. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts.map +0 -1
  325. package/dist/types/src/components/QueryEditor/index.d.ts +0 -2
  326. package/dist/types/src/components/QueryEditor/index.d.ts.map +0 -1
  327. package/src/components/QueryEditor/QueryEditor.stories.tsx +0 -91
  328. package/src/components/QueryEditor/QueryEditor.tsx +0 -50
  329. package/src/components/QueryEditor/index.ts +0 -5
@@ -2,4 +2,4 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- export { ScriptArticle as default } from './ScriptArticle';
5
+ export { ScriptArticle as default } from './ScriptArticle.tsx';
@@ -4,22 +4,24 @@
4
4
 
5
5
  import React, { type ChangeEvent, useCallback } from 'react';
6
6
 
7
- import { getUserFunctionIdInMetadata } from '@dxos/compute-runtime';
8
- import { getInvocationUrl } from '@dxos/compute-runtime';
7
+ import { getInvocationUrl, getUserFunctionIdInMetadata } from '@dxos/compute-runtime';
9
8
  import * as Operation from '@dxos/compute/Operation';
10
9
  import type * as Script from '@dxos/compute/Script';
11
10
  import { Filter, Obj, Ref } from '@dxos/echo';
12
11
  import { useQuery } from '@dxos/echo-react';
13
12
  import { useClient } from '@dxos/react-client';
14
- import { Clipboard, Flex, Input, useControlledState, useTranslation } from '@dxos/react-ui';
15
13
  import { Form } from '@dxos/react-ui-form';
14
+ import * as Field from '@dxos/react-ui/Field';
15
+ import * as Hooks from '@dxos/react-ui/Hooks';
16
+ import * as Input from '@dxos/react-ui/Input';
17
+ import * as SystemButton from '@dxos/react-ui/SystemButton';
16
18
 
17
19
  import { meta } from '#meta';
18
20
 
19
21
  export type FunctionBindingProps = { object: Script.Script };
20
22
 
21
23
  export const FunctionBinding = ({ object }: FunctionBindingProps) => {
22
- const { t } = useTranslation(meta.profile.key);
24
+ const { t } = Hooks.useTranslation(meta.profile.key);
23
25
  const client = useClient();
24
26
  const db = Obj.getDatabase(object);
25
27
 
@@ -31,7 +33,7 @@ export const FunctionBinding = ({ object }: FunctionBindingProps) => {
31
33
  spaceId: db?.spaceId,
32
34
  });
33
35
 
34
- const [binding, setBinding] = useControlledState(fn?.binding ?? '');
36
+ const [binding, setBinding] = Hooks.useControlledState(fn?.binding ?? '');
35
37
  const handleBindingChange = useCallback(
36
38
  (event: ChangeEvent<HTMLInputElement>) => setBinding(event.target.value),
37
39
  [setBinding],
@@ -50,13 +52,11 @@ export const FunctionBinding = ({ object }: FunctionBindingProps) => {
50
52
  }
51
53
 
52
54
  return (
53
- <Flex column>
54
- <Form.Section title={t('remote-function-settings.heading')} />
55
-
55
+ <Form.FieldSet label={t('remote-function-settings.heading')}>
56
56
  {functionUrl && (
57
- <Input.Root>
58
- <Input.Label>{t('function-url.label')}</Input.Label>
59
- <Input.TextInput
57
+ <Field.Root>
58
+ <Field.Label>{t('function-url.label')}</Field.Label>
59
+ <Input.Root
60
60
  disabled
61
61
  value={functionUrl}
62
62
  onChange={(event) => {
@@ -65,20 +65,20 @@ export const FunctionBinding = ({ object }: FunctionBindingProps) => {
65
65
  });
66
66
  }}
67
67
  />
68
- <Clipboard.IconButton value={functionUrl} />
69
- </Input.Root>
68
+ <SystemButton.Clipboard iconOnly value={functionUrl} />
69
+ </Field.Root>
70
70
  )}
71
71
 
72
- <Input.Root>
73
- <Input.Label>{t('function-binding.label')}</Input.Label>
74
- <Input.TextInput
72
+ <Field.Root>
73
+ <Field.Label>{t('function-binding.label')}</Field.Label>
74
+ <Input.Root
75
75
  placeholder={t('function-binding.placeholder')}
76
76
  value={binding}
77
77
  onChange={handleBindingChange}
78
78
  onBlur={handleBindingBlur}
79
79
  />
80
- </Input.Root>
81
- </Flex>
80
+ </Field.Root>
81
+ </Form.FieldSet>
82
82
  );
83
83
  };
84
84
 
@@ -5,15 +5,19 @@
5
5
  import { Octokit } from '@octokit/core';
6
6
  import React, { useCallback, useState } from 'react';
7
7
 
8
- import { useOperationInvoker } from '@dxos/app-framework/ui';
8
+ import * as Hooks from '@dxos/app-framework/Hooks';
9
9
  import * as SettingsOperation from '@dxos/app-toolkit/SettingsOperation';
10
10
  import type * as Script from '@dxos/compute/Script';
11
11
  import { Filter, Obj } from '@dxos/echo';
12
12
  import { useQuery } from '@dxos/echo-react';
13
13
  import { AccessToken } from '@dxos/link';
14
14
  import { log } from '@dxos/log';
15
- import { Banner, Button, Clipboard, Flex, useAsyncEffect, useTranslation } from '@dxos/react-ui';
16
15
  import { Form } from '@dxos/react-ui-form';
16
+ import * as Banner from '@dxos/react-ui/Banner';
17
+ import * as Button from '@dxos/react-ui/Button';
18
+ import * as UiHooks from '@dxos/react-ui/Hooks';
19
+ import * as Layout from '@dxos/react-ui/Layout';
20
+ import * as SystemButton from '@dxos/react-ui/SystemButton';
17
21
  import { kebabize } from '@dxos/util';
18
22
 
19
23
  import { meta } from '#meta';
@@ -22,15 +26,15 @@ export type FunctionPublishingProps = { object: Script.Script };
22
26
 
23
27
  // TODO(burdon): Move to separate tab?
24
28
  export const FunctionPublishing = ({ object }: FunctionPublishingProps) => {
25
- const { t } = useTranslation(meta.profile.key);
26
- const { invokePromise } = useOperationInvoker();
29
+ const { t } = UiHooks.useTranslation(meta.profile.key);
30
+ const { invokePromise } = Hooks.useOperationInvoker();
27
31
  const db = Obj.getDatabase(object);
28
32
 
29
33
  const [githubToken] = useQuery(db, Filter.type(AccessToken.AccessToken, { source: 'github.com' }));
30
34
  const gistKey = Obj.getMeta(object).keys.find(({ source }) => source === 'github.com');
31
35
  const [gistUrl, setGistUrl] = useState<string | undefined>();
32
36
 
33
- useAsyncEffect(async () => {
37
+ UiHooks.useAsyncEffect(async () => {
34
38
  const token = githubToken?.token;
35
39
  const gistId = gistKey?.id;
36
40
  if (!token || !gistId) {
@@ -94,31 +98,27 @@ export const FunctionPublishing = ({ object }: FunctionPublishingProps) => {
94
98
  }, [object, githubToken]);
95
99
 
96
100
  return (
97
- <Flex column>
98
- <Form.Section title={t('script-publish-settings.label')} description={t('script-publish-settings.description')} />
99
-
101
+ <Form.FieldSet label={t('script-publish-settings.label')} description={t('script-publish-settings.description')}>
100
102
  {!githubToken && (
101
- <Flex column classNames='py-form-gap'>
103
+ <Layout.Flex column classNames='py-form-gap'>
102
104
  <Banner.Root valence='info'>
103
- <Banner.Content>
104
- <Banner.Title>{t('no-github-token.label')}</Banner.Title>
105
- </Banner.Content>
105
+ <Banner.Title>{t('no-github-token.label')}</Banner.Title>
106
106
  </Banner.Root>
107
- <Flex classNames='pt-form-gap'>
108
- <Button onClick={handleOpenTokenManager}>{t('open-token-manager.label')}</Button>
109
- </Flex>
110
- </Flex>
107
+ <Layout.Flex classNames='pt-form-gap'>
108
+ <Button.Root onClick={handleOpenTokenManager}>{t('open-token-manager.label')}</Button.Root>
109
+ </Layout.Flex>
110
+ </Layout.Flex>
111
111
  )}
112
112
 
113
113
  {githubToken && (
114
- <Flex gap='sm' justify='end'>
115
- {gistUrl && <Clipboard.IconButton value={gistUrl} />}
116
- <Button disabled={publishing} onClick={handlePublish}>
114
+ <Layout.Flex gap='sm' justify='end'>
115
+ {gistUrl && <SystemButton.Clipboard iconOnly value={gistUrl} />}
116
+ <Button.Root disabled={publishing} onClick={handlePublish}>
117
117
  {t('publish.label')}
118
- </Button>
119
- </Flex>
118
+ </Button.Root>
119
+ </Layout.Flex>
120
120
  )}
121
- </Flex>
121
+ </Form.FieldSet>
122
122
  );
123
123
  };
124
124
 
@@ -14,7 +14,7 @@ import { Filter } from '@dxos/echo';
14
14
  import { useQuery } from '@dxos/echo-react';
15
15
  import { ClientPlugin } from '@dxos/plugin-client/testing';
16
16
  import { initializeIdentity } from '@dxos/plugin-client/testing';
17
- import { corePlugins } from '@dxos/plugin-testing';
17
+ import * as CorePlugins from '@dxos/plugin-testing/CorePlugins';
18
18
  import * as StorybookPlugin from '@dxos/plugin-testing/StorybookPlugin';
19
19
  import { useSpaces } from '@dxos/react-client/echo';
20
20
  import { ObjectProperties } from '@dxos/react-ui-form';
@@ -24,7 +24,7 @@ import { Text } from '@dxos/schema';
24
24
  import { createScript } from '#testing';
25
25
  import { translations } from '#translations';
26
26
 
27
- import { ScriptProperties } from './ScriptProperties';
27
+ import { ScriptProperties } from './ScriptProperties.tsx';
28
28
 
29
29
  type StoryArgs = {};
30
30
 
@@ -50,7 +50,7 @@ const meta = {
50
50
  withLayout({ layout: 'column' }),
51
51
  withPluginManager({
52
52
  plugins: [
53
- ...corePlugins(),
53
+ ...CorePlugins.make(),
54
54
  ClientPlugin.make({
55
55
  types: [Script.Script, Operation.PersistentOperation, Skill.Skill, Text.Text],
56
56
  onClientInitialized: ({ client }) =>
@@ -4,28 +4,28 @@
4
4
 
5
5
  import React from 'react';
6
6
 
7
- import { type AppSurface } from '@dxos/app-toolkit/ui';
7
+ import type * as AppSurface from '@dxos/app-toolkit/AppSurface';
8
8
  import type * as Script from '@dxos/compute/Script';
9
9
  import { Form } from '@dxos/react-ui-form';
10
10
 
11
- import { FunctionBinding } from './FunctionBinding';
12
- import { FunctionPublishing } from './FunctionPublishing';
13
- import { SkillEditor } from './SkillEditor';
11
+ import { FunctionBinding } from './FunctionBinding.tsx';
12
+ import { FunctionPublishing } from './FunctionPublishing.tsx';
13
+ import { SkillEditor } from './SkillEditor.tsx';
14
14
 
15
15
  export type ScriptPropertiesProps = AppSurface.ObjectPropertiesProps<Script.Script>;
16
16
 
17
17
  export const ScriptProperties = ({ subject: object }: ScriptPropertiesProps) => {
18
18
  return (
19
19
  <>
20
- <Form.Section>
20
+ <Form.FieldSet>
21
21
  <FunctionBinding object={object} />
22
- </Form.Section>
23
- <Form.Section>
22
+ </Form.FieldSet>
23
+ <Form.FieldSet>
24
24
  <SkillEditor object={object} />
25
- </Form.Section>
26
- <Form.Section>
25
+ </Form.FieldSet>
26
+ <Form.FieldSet>
27
27
  <FunctionPublishing object={object} />
28
- </Form.Section>
28
+ </Form.FieldSet>
29
29
  </>
30
30
  );
31
31
  };
@@ -11,8 +11,11 @@ import * as Skill from '@dxos/compute/Skill';
11
11
  import * as Template from '@dxos/compute/Template';
12
12
  import { Filter, Obj, Ref } from '@dxos/echo';
13
13
  import { useQuery } from '@dxos/echo-react';
14
- import { Button, Flex, Input, useAsyncEffect, useTranslation } from '@dxos/react-ui';
15
14
  import { Form } from '@dxos/react-ui-form';
15
+ import * as Button from '@dxos/react-ui/Button';
16
+ import * as Field from '@dxos/react-ui/Field';
17
+ import * as Hooks from '@dxos/react-ui/Hooks';
18
+ import * as Input from '@dxos/react-ui/Input';
16
19
  import { kebabize } from '@dxos/util';
17
20
 
18
21
  import { meta } from '#meta';
@@ -20,7 +23,7 @@ import { meta } from '#meta';
20
23
  export type SkillEditorProps = { object: Script.Script };
21
24
 
22
25
  export const SkillEditor = ({ object }: SkillEditorProps) => {
23
- const { t } = useTranslation(meta.profile.key);
26
+ const { t } = Hooks.useTranslation(meta.profile.key);
24
27
  const db = Obj.getDatabase(object);
25
28
  const [fn] = useQuery(db, Filter.type(Operation.PersistentOperation, { source: Ref.make(object) }));
26
29
  const skills = useQuery(db, Filter.type(Skill.Skill));
@@ -32,7 +35,7 @@ export const SkillEditor = ({ object }: SkillEditorProps) => {
32
35
  const existingSkill = skills.find((bp) => Obj.getMeta(bp).key === skillKey);
33
36
  const fnKey = fn ? Obj.getMeta(fn).key : undefined;
34
37
 
35
- useAsyncEffect(async () => {
38
+ Hooks.useAsyncEffect(async () => {
36
39
  if (!existingSkill) {
37
40
  return;
38
41
  }
@@ -58,7 +61,8 @@ export const SkillEditor = ({ object }: SkillEditorProps) => {
58
61
  const toolId = ToolId.make(fnKey);
59
62
  if (!existingSkill.tools?.includes(toolId)) {
60
63
  Obj.update(existingSkill, (existingSkill) => {
61
- existingSkill.tools = [...(existingSkill.tools ?? []), toolId];
64
+ existingSkill.tools ??= [];
65
+ existingSkill.tools.push(toolId);
62
66
  });
63
67
  }
64
68
  }
@@ -79,26 +83,24 @@ export const SkillEditor = ({ object }: SkillEditorProps) => {
79
83
  }, [db, existingSkill, fnKey, skillKey, object.name, instructions]);
80
84
 
81
85
  return (
82
- <Flex column>
83
- <Form.Section title={t('skill-editor.label')} description={t('skill-editor.description')} />
84
-
85
- <Input.Root>
86
- <Input.Label>{t('skill-instructions.label')}</Input.Label>
87
- <Input.TextArea
86
+ <Form.FieldSet label={t('skill-editor.label')} description={t('skill-editor.description')}>
87
+ <Field.Root>
88
+ <Field.Label>{t('skill-instructions.label')}</Field.Label>
89
+ <Input.Textarea
88
90
  placeholder={t('skill-instructions.placeholder')}
89
91
  rows={6}
90
92
  value={instructions}
91
93
  onChange={(event) => setInstructions(event.target.value)}
92
94
  classNames='resize-y'
93
95
  />
94
- </Input.Root>
96
+ </Field.Root>
95
97
 
96
98
  <div className='pt-2'>
97
- <Button disabled={(!existingSkill && !fnKey) || creating} onClick={handleSave}>
99
+ <Button.Root disabled={(!existingSkill && !fnKey) || creating} onClick={handleSave}>
98
100
  {t(existingSkill ? 'update-skill.label' : 'create-skill.label')}
99
- </Button>
101
+ </Button.Root>
100
102
  </div>
101
- </Flex>
103
+ </Form.FieldSet>
102
104
  );
103
105
  };
104
106
 
@@ -2,4 +2,4 @@
2
2
  // Copyright 2024 DXOS.org
3
3
  //
4
4
 
5
- export { ScriptProperties as default } from './ScriptProperties';
5
+ export { ScriptProperties as default } from './ScriptProperties.tsx';
@@ -8,7 +8,7 @@ import { withLayout, withTheme } from '@dxos/react-ui/testing';
8
8
 
9
9
  import { translations } from '#translations';
10
10
 
11
- import { ScriptSettings } from './ScriptSettings';
11
+ import { ScriptSettings } from './ScriptSettings.tsx';
12
12
 
13
13
  const meta = {
14
14
  title: 'plugins/plugin-script/containers/ScriptSettings',
@@ -4,9 +4,10 @@
4
4
 
5
5
  import React from 'react';
6
6
 
7
- import { type AppSurface } from '@dxos/app-toolkit/ui';
8
- import { Button, useTranslation } from '@dxos/react-ui';
7
+ import type * as AppSurface from '@dxos/app-toolkit/AppSurface';
9
8
  import { Form } from '@dxos/react-ui-form';
9
+ import * as Button from '@dxos/react-ui/Button';
10
+ import * as Hooks from '@dxos/react-ui/Hooks';
10
11
 
11
12
  import { meta } from '#meta';
12
13
  import { Settings } from '#types';
@@ -18,8 +19,8 @@ export type ScriptSettingsProps = AppSurface.SettingsProps<
18
19
  }
19
20
  >;
20
21
 
21
- export const ScriptSettings = ({ settings, onSettingsChange, onAuthenticate }: ScriptSettingsProps) => {
22
- const { t } = useTranslation(meta.profile.key);
22
+ export const ScriptSettings = ({ settings, onSettingsChange, scope, onAuthenticate }: ScriptSettingsProps) => {
23
+ const { t } = Hooks.useTranslation(meta.profile.key);
23
24
 
24
25
  return (
25
26
  <Form.Root
@@ -31,15 +32,19 @@ export const ScriptSettings = ({ settings, onSettingsChange, onAuthenticate }: S
31
32
  >
32
33
  <Form.Viewport scroll>
33
34
  <Form.Content>
34
- <Form.Section title={meta.profile.name ?? meta.profile.key}>
35
+ <Form.FieldSet label={meta.profile.name ?? meta.profile.key} actions={scope}>
35
36
  {/* TODO(wittjosiah): Hide outside of dev environments. */}
36
- <Form.Row label={t('authenticate-action.label')} description={t('authenticate-action.description')}>
37
- <Button disabled={!onSettingsChange} onClick={onAuthenticate}>
37
+ <Form.Field
38
+ standalone
39
+ label={t('authenticate-action.label')}
40
+ description={t('authenticate-action.description')}
41
+ >
42
+ <Button.Root disabled={!onSettingsChange} onClick={onAuthenticate}>
38
43
  {t('authenticate-button.label')}
39
- </Button>
40
- </Form.Row>
41
- <Form.FieldSet />
42
- </Form.Section>
44
+ </Button.Root>
45
+ </Form.Field>
46
+ <Form.Fields />
47
+ </Form.FieldSet>
43
48
  </Form.Content>
44
49
  </Form.Viewport>
45
50
  </Form.Root>
@@ -2,4 +2,4 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- export { ScriptSettings as default } from './ScriptSettings';
5
+ export { ScriptSettings as default } from './ScriptSettings.tsx';
@@ -8,7 +8,7 @@ import type * as Script from '@dxos/compute/Script';
8
8
  import { Context } from '@dxos/context';
9
9
  import { Obj } from '@dxos/echo';
10
10
  import { FunctionsServiceClient } from '@dxos/edge-compute';
11
- import { Panel } from '@dxos/react-ui';
11
+ import * as Panel from '@dxos/react-ui/Panel';
12
12
 
13
13
  import { TestPanel } from '#components';
14
14
  import { useDeployDeps } from '#hooks';
@@ -35,10 +35,10 @@ export const TestContainer = ({ role, script }: TestContainerProps) => {
35
35
  );
36
36
 
37
37
  return (
38
- <Panel.Root role={role} classNames='dx-document'>
39
- <Panel.Content asChild>
38
+ <Panel.Root role={role} width='document'>
39
+ <Panel.Body asChild>
40
40
  <TestPanel onInvoke={existingFunctionId ? handleInvoke : undefined} />
41
- </Panel.Content>
41
+ </Panel.Body>
42
42
  </Panel.Root>
43
43
  );
44
44
  };
@@ -2,4 +2,4 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- export { TestContainer as default } from './TestContainer';
5
+ export { TestContainer as default } from './TestContainer.tsx';
@@ -4,9 +4,9 @@
4
4
 
5
5
  import { type ComponentType, lazy } from 'react';
6
6
 
7
- export const DeploymentDialog: ComponentType<any> = lazy(() => import('./DeploymentDialog'));
8
- export const NotebookArticle: ComponentType<any> = lazy(() => import('./NotebookArticle'));
9
- export const ScriptArticle: ComponentType<any> = lazy(() => import('./ScriptArticle'));
10
- export const ScriptProperties: ComponentType<any> = lazy(() => import('./ScriptProperties'));
11
- export const ScriptSettings: ComponentType<any> = lazy(() => import('./ScriptSettings'));
12
- export const TestContainer: ComponentType<any> = lazy(() => import('./TestContainer'));
7
+ export const DeploymentDialog: ComponentType<any> = lazy(() => import('./DeploymentDialog/index.ts'));
8
+ export const NotebookArticle: ComponentType<any> = lazy(() => import('./NotebookArticle/index.ts'));
9
+ export const ScriptArticle: ComponentType<any> = lazy(() => import('./ScriptArticle/index.ts'));
10
+ export const ScriptProperties: ComponentType<any> = lazy(() => import('./ScriptProperties/index.ts'));
11
+ export const ScriptSettings: ComponentType<any> = lazy(() => import('./ScriptSettings/index.ts'));
12
+ export const TestContainer: ComponentType<any> = lazy(() => import('./TestContainer/index.ts'));
@@ -14,7 +14,7 @@ import { FunctionsServiceClient } from '@dxos/edge-compute';
14
14
  import { bundleFunction } from '@dxos/edge-compute/native';
15
15
  import { failedInvariant } from '@dxos/invariant';
16
16
  import { FunctionRuntimeKind } from '@dxos/protocols';
17
- import { EdgeReplicationSetting } from '@dxos/protocols/proto/dxos/echo/metadata';
17
+ import { EdgeReplicationSetting } from '@dxos/protocols/buf/dxos/echo/metadata_pb';
18
18
 
19
19
  // To heavy to run in CI.
20
20
  describe.skip('Function', { tags: ['functions-e2e'] }, () => {
@@ -11,13 +11,13 @@ import { type Database, Obj, Query, Ref } from '@dxos/echo';
11
11
  import { useQuery } from '@dxos/echo-react';
12
12
  import { log } from '@dxos/log';
13
13
  import { type Client, useClient } from '@dxos/react-client';
14
- import { type TFunction } from '@dxos/react-ui';
15
14
  import { type ActionGraphProps, createMenuAction } from '@dxos/react-ui-menu';
15
+ import type * as Theme from '@dxos/react-ui/Theme';
16
16
  import { messageValence } from '@dxos/ui-theme';
17
17
 
18
18
  import { meta } from '#meta';
19
19
 
20
- import { deployScript, getFunctionUrl, isScriptDeployed } from '../util';
20
+ import { deployScript, getFunctionUrl, isScriptDeployed } from '../util/index.ts';
21
21
 
22
22
  export type DeployActionProperties = { type: 'deploy' } | { type: 'copy' };
23
23
 
@@ -28,7 +28,7 @@ export type DeployState = {
28
28
  error: string;
29
29
  };
30
30
 
31
- import { type ScriptToolbarStateStore } from './useToolbarState';
31
+ import { type ScriptToolbarStateStore } from './useToolbarState.ts';
32
32
 
33
33
  export type CreateDeployOptions = {
34
34
  state: ScriptToolbarStateStore;
@@ -37,7 +37,7 @@ export type CreateDeployOptions = {
37
37
  db?: Database.Database;
38
38
  existingFunctionId?: string;
39
39
  client: Client;
40
- t: TFunction;
40
+ t: Theme.TFunction;
41
41
  };
42
42
 
43
43
  export const createDeploy = ({
@@ -69,7 +69,14 @@ export const createDeploy = ({
69
69
  state.set('error', undefined);
70
70
  state.set('deploying', true);
71
71
 
72
- const result = await deployScript({ script, client, db, fn, existingFunctionId });
72
+ const result = await deployScript({
73
+ script,
74
+ getEdgeHttpClient: () => client.edge.http,
75
+ ownerDid: client.halo.identity.get()?.did,
76
+ db,
77
+ fn,
78
+ existingFunctionId,
79
+ });
73
80
 
74
81
  if (!result.success) {
75
82
  log.catch(result.error);
@@ -2,10 +2,10 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- export * from './deploy';
6
- export * from './format';
7
- export * from './template';
5
+ export * from './deploy.ts';
6
+ export * from './format.ts';
7
+ export * from './template.ts';
8
8
 
9
- export * from './useCreateAndDeployScriptTemplates';
10
- export * from './useToolbarState';
11
- export * from './useCompiler';
9
+ export * from './useCreateAndDeployScriptTemplates.ts';
10
+ export * from './useToolbarState.ts';
11
+ export * from './useCompiler.ts';
@@ -7,7 +7,7 @@ import * as Script from '@dxos/compute/Script';
7
7
  import { Obj } from '@dxos/echo';
8
8
  import { type ActionGraphProps, createMenuAction } from '@dxos/react-ui-menu';
9
9
 
10
- import { templates } from '../templates';
10
+ import { templates } from '../templates/index.ts';
11
11
 
12
12
  export type TemplateActionProperties = { type: 'template'; value: string };
13
13
 
@@ -2,23 +2,24 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { useCapabilities, usePluginManager } from '@dxos/app-framework/ui';
6
- import { EffectEx } from '@dxos/effect';
7
- import { useAsyncEffect } from '@dxos/react-ui';
5
+ import * as Hooks from '@dxos/app-framework/Hooks';
6
+ import * as PluginManagerProvider from '@dxos/app-framework/PluginManagerProvider';
7
+ import * as EffectEx from '@dxos/effect/EffectEx';
8
+ import * as UiHooks from '@dxos/react-ui/Hooks';
8
9
 
9
10
  import { ScriptCapabilities, ScriptEvents } from '#types';
10
11
 
11
- import type { Compiler } from '../compiler';
12
+ import type { Compiler } from '../compiler/index.ts';
12
13
 
13
14
  /**
14
15
  * Asynchronously sets up the compiler and returns it.
15
16
  * @returns The compiler instance or undefined if it is not ready.
16
17
  */
17
18
  export const useCompiler = (): Compiler | undefined => {
18
- const manager = usePluginManager();
19
- useAsyncEffect(async () => {
19
+ const manager = PluginManagerProvider.usePluginManager();
20
+ UiHooks.useAsyncEffect(async () => {
20
21
  await manager.activate(ScriptEvents.SetupCompiler).pipe(EffectEx.runAndForwardErrors);
21
22
  }, [manager]);
22
- const [compiler] = useCapabilities(ScriptCapabilities.Compiler);
23
+ const [compiler] = Hooks.useCapabilities(ScriptCapabilities.Compiler);
23
24
  return compiler;
24
25
  };
@@ -4,7 +4,7 @@
4
4
 
5
5
  import { useCallback, useState } from 'react';
6
6
 
7
- import { useOperationInvoker } from '@dxos/app-framework/ui';
7
+ import * as Hooks from '@dxos/app-framework/Hooks';
8
8
  import * as Script from '@dxos/compute/Script';
9
9
  import { type Database, Obj } from '@dxos/echo';
10
10
  import { invariant } from '@dxos/invariant';
@@ -13,8 +13,8 @@ import { useClient } from '@dxos/react-client';
13
13
 
14
14
  import { ScriptOperation } from '#types';
15
15
 
16
- import { type Template } from '../templates';
17
- import { deployScript } from '../util';
16
+ import { type Template } from '../templates/index.ts';
17
+ import { deployScript } from '../util/index.ts';
18
18
 
19
19
  type DeploymentStatus = 'idle' | 'pending' | 'success' | 'error';
20
20
 
@@ -26,7 +26,7 @@ type DeploymentStatus = 'idle' | 'pending' | 'success' | 'error';
26
26
  * All creation / deployment operations run concurrently for improved performance.
27
27
  */
28
28
  export const useCreateAndDeployScriptTemplates = (db: Database.Database | undefined, scriptTemplates: Template[]) => {
29
- const { invokePromise } = useOperationInvoker();
29
+ const { invokePromise } = Hooks.useOperationInvoker();
30
30
  const client = useClient();
31
31
  const [status, setStatus] = useState<DeploymentStatus>('idle');
32
32
  const [error, setError] = useState<Error | undefined>(undefined);
@@ -45,7 +45,12 @@ export const useCreateAndDeployScriptTemplates = (db: Database.Database | undefi
45
45
  invariant(Obj.instanceOf(Script.Script, createResult.data?.object));
46
46
  await invokePromise(SpaceOperation.AddObject, { object: createResult.data.object }, { spaceId: db.spaceId });
47
47
 
48
- return deployScript({ db, client, script: createResult.data.object });
48
+ return deployScript({
49
+ db,
50
+ getEdgeHttpClient: () => client.edge.http,
51
+ ownerDid: client.halo.identity.get()?.did,
52
+ script: createResult.data.object,
53
+ });
49
54
  }),
50
55
  );
51
56
 
@@ -2,13 +2,13 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import * as Atom from 'effect/unstable/reactivity/Atom';
5
+ import * as Atom from 'effect/reactivity/Atom';
6
6
  import { useMemo } from 'react';
7
7
 
8
8
  import * as Capabilities from '@dxos/app-framework/Capabilities';
9
- import { useCapability } from '@dxos/app-framework/ui';
9
+ import * as Hooks from '@dxos/app-framework/Hooks';
10
10
 
11
- import { type DeployState } from './deploy';
11
+ import { type DeployState } from './deploy.ts';
12
12
 
13
13
  export type ScriptToolbarState = Partial<DeployState>;
14
14
 
@@ -20,7 +20,7 @@ export type ScriptToolbarStateStore = {
20
20
  };
21
21
 
22
22
  export const useToolbarState = (initialState: ScriptToolbarState = {}): ScriptToolbarStateStore => {
23
- const registry = useCapability(Capabilities.AtomRegistry);
23
+ const registry = Hooks.useCapability(Capabilities.AtomRegistry);
24
24
  const atom = useMemo(() => Atom.make<ScriptToolbarState>(initialState), []);
25
25
 
26
26
  return useMemo(
package/src/index.ts CHANGED
@@ -2,7 +2,9 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- export * as ScriptPlugin from './ScriptPlugin';
6
- export * from '#meta';
5
+ export * as ScriptPlugin from './ScriptPlugin.ts';
7
6
  export * from '#types';
8
- export * from './util';
7
+ export * as ScriptFunction from './ScriptFunction.ts';
8
+ export * as Templates from './Templates.ts';
9
+ export * from '#operations';
10
+ export * from '#skills';