@dxos/plugin-script 0.8.4-main.9735255 → 0.8.4-main.abd8ff62ef

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 (536) hide show
  1. package/README.md +15 -13
  2. package/dist/lib/browser/DeploymentDialog-6DBF3V6C.mjs +112 -0
  3. package/dist/lib/browser/DeploymentDialog-6DBF3V6C.mjs.map +7 -0
  4. package/dist/lib/browser/{NotebookContainer-NBAXYESH.mjs → NotebookContainer-RO4NJRYH.mjs} +59 -144
  5. package/dist/lib/browser/NotebookContainer-RO4NJRYH.mjs.map +7 -0
  6. package/dist/lib/browser/ScriptContainer-2OPBAXFB.mjs +79 -0
  7. package/dist/lib/browser/ScriptContainer-2OPBAXFB.mjs.map +7 -0
  8. package/dist/lib/browser/ScriptProperties-NRXG4PBX.mjs +304 -0
  9. package/dist/lib/browser/ScriptProperties-NRXG4PBX.mjs.map +7 -0
  10. package/dist/lib/browser/TestContainer-JNFPLAJX.mjs +44 -0
  11. package/dist/lib/browser/TestContainer-JNFPLAJX.mjs.map +7 -0
  12. package/dist/lib/browser/access-token-created-MSWZWZCT.mjs +37 -0
  13. package/dist/lib/browser/access-token-created-MSWZWZCT.mjs.map +7 -0
  14. package/dist/lib/browser/blueprints/index.mjs +53 -3
  15. package/dist/lib/browser/blueprints/index.mjs.map +4 -4
  16. package/dist/lib/browser/chunk-KF6H7J5N.mjs +81 -0
  17. package/dist/lib/browser/chunk-KF6H7J5N.mjs.map +7 -0
  18. package/dist/lib/browser/chunk-MI6X5CTJ.mjs +336 -0
  19. package/dist/lib/browser/chunk-MI6X5CTJ.mjs.map +7 -0
  20. package/dist/lib/browser/{chunk-UX4GHJ5E.mjs → chunk-NSAF3763.mjs} +29 -29
  21. package/dist/lib/browser/chunk-NSAF3763.mjs.map +7 -0
  22. package/dist/lib/browser/chunk-RQ5LDVFK.mjs +49 -0
  23. package/dist/lib/browser/chunk-RQ5LDVFK.mjs.map +7 -0
  24. package/dist/lib/browser/containers/index.mjs +17 -0
  25. package/dist/lib/browser/containers/index.mjs.map +7 -0
  26. package/dist/lib/browser/create-JDXWBARB.mjs +44 -0
  27. package/dist/lib/browser/create-JDXWBARB.mjs.map +7 -0
  28. package/dist/lib/browser/create-script-Q7B3CFAP.mjs +45 -0
  29. package/dist/lib/browser/create-script-Q7B3CFAP.mjs.map +7 -0
  30. package/dist/lib/browser/delete-PAUWA2QM.mjs +21 -0
  31. package/dist/lib/browser/delete-PAUWA2QM.mjs.map +7 -0
  32. package/dist/lib/browser/deploy-CXVW54JJ.mjs +62 -0
  33. package/dist/lib/browser/deploy-CXVW54JJ.mjs.map +7 -0
  34. package/dist/lib/browser/index.mjs +169 -220
  35. package/dist/lib/browser/index.mjs.map +4 -4
  36. package/dist/lib/browser/inspect-invocations-LEOEP5I2.mjs +59 -0
  37. package/dist/lib/browser/inspect-invocations-LEOEP5I2.mjs.map +7 -0
  38. package/dist/lib/browser/install-function-5N24Q45W.mjs +51 -0
  39. package/dist/lib/browser/install-function-5N24Q45W.mjs.map +7 -0
  40. package/dist/lib/browser/invoke-5QVEZ3X5.mjs +33 -0
  41. package/dist/lib/browser/invoke-5QVEZ3X5.mjs.map +7 -0
  42. package/dist/lib/browser/meta.json +1 -1
  43. package/dist/lib/browser/operations/index.mjs +14 -0
  44. package/dist/lib/browser/operations/index.mjs.map +7 -0
  45. package/dist/lib/browser/query-deployed-functions-FVD7NYPA.mjs +30 -0
  46. package/dist/lib/browser/query-deployed-functions-FVD7NYPA.mjs.map +7 -0
  47. package/dist/lib/browser/read-FFOSK6A3.mjs +26 -0
  48. package/dist/lib/browser/read-FFOSK6A3.mjs.map +7 -0
  49. package/dist/lib/browser/templates/index.mjs +1 -1
  50. package/dist/lib/browser/translations.mjs +104 -0
  51. package/dist/lib/browser/translations.mjs.map +7 -0
  52. package/dist/lib/browser/types/index.mjs +3 -7
  53. package/dist/lib/browser/update-PJS5GG3Y.mjs +63 -0
  54. package/dist/lib/browser/update-PJS5GG3Y.mjs.map +7 -0
  55. package/dist/lib/node-esm/DeploymentDialog-A5BZHUJB.mjs +113 -0
  56. package/dist/lib/node-esm/DeploymentDialog-A5BZHUJB.mjs.map +7 -0
  57. package/dist/lib/node-esm/{NotebookContainer-IUAYVJSD.mjs → NotebookContainer-DPT65MA7.mjs} +59 -144
  58. package/dist/lib/node-esm/NotebookContainer-DPT65MA7.mjs.map +7 -0
  59. package/dist/lib/node-esm/ScriptContainer-UKD7QORM.mjs +80 -0
  60. package/dist/lib/node-esm/ScriptContainer-UKD7QORM.mjs.map +7 -0
  61. package/dist/lib/node-esm/ScriptProperties-FQXEOJKG.mjs +305 -0
  62. package/dist/lib/node-esm/ScriptProperties-FQXEOJKG.mjs.map +7 -0
  63. package/dist/lib/node-esm/TestContainer-Y4XVV7KQ.mjs +45 -0
  64. package/dist/lib/node-esm/TestContainer-Y4XVV7KQ.mjs.map +7 -0
  65. package/dist/lib/node-esm/access-token-created-DCD6LYQC.mjs +38 -0
  66. package/dist/lib/node-esm/access-token-created-DCD6LYQC.mjs.map +7 -0
  67. package/dist/lib/node-esm/blueprints/index.mjs +53 -3
  68. package/dist/lib/node-esm/blueprints/index.mjs.map +4 -4
  69. package/dist/lib/node-esm/chunk-2DZNF5NG.mjs +82 -0
  70. package/dist/lib/node-esm/chunk-2DZNF5NG.mjs.map +7 -0
  71. package/dist/lib/node-esm/chunk-C55UYWN4.mjs +50 -0
  72. package/dist/lib/node-esm/chunk-C55UYWN4.mjs.map +7 -0
  73. package/dist/lib/node-esm/{chunk-4F5FJZ36.mjs → chunk-EW63XFRQ.mjs} +29 -29
  74. package/dist/lib/node-esm/chunk-EW63XFRQ.mjs.map +7 -0
  75. package/dist/lib/node-esm/chunk-XFM2BEHY.mjs +338 -0
  76. package/dist/lib/node-esm/chunk-XFM2BEHY.mjs.map +7 -0
  77. package/dist/lib/node-esm/containers/index.mjs +18 -0
  78. package/dist/lib/node-esm/containers/index.mjs.map +7 -0
  79. package/dist/lib/node-esm/create-D2JDNXY6.mjs +45 -0
  80. package/dist/lib/node-esm/create-D2JDNXY6.mjs.map +7 -0
  81. package/dist/lib/node-esm/create-script-4AB4G7GQ.mjs +46 -0
  82. package/dist/lib/node-esm/create-script-4AB4G7GQ.mjs.map +7 -0
  83. package/dist/lib/node-esm/delete-YXLT7J27.mjs +22 -0
  84. package/dist/lib/node-esm/delete-YXLT7J27.mjs.map +7 -0
  85. package/dist/lib/node-esm/deploy-MXVZXAUC.mjs +63 -0
  86. package/dist/lib/node-esm/deploy-MXVZXAUC.mjs.map +7 -0
  87. package/dist/lib/node-esm/index.mjs +169 -220
  88. package/dist/lib/node-esm/index.mjs.map +4 -4
  89. package/dist/lib/node-esm/inspect-invocations-TVAKGYX5.mjs +60 -0
  90. package/dist/lib/node-esm/inspect-invocations-TVAKGYX5.mjs.map +7 -0
  91. package/dist/lib/node-esm/install-function-ST3VABJH.mjs +52 -0
  92. package/dist/lib/node-esm/install-function-ST3VABJH.mjs.map +7 -0
  93. package/dist/lib/node-esm/invoke-64WDU55Y.mjs +34 -0
  94. package/dist/lib/node-esm/invoke-64WDU55Y.mjs.map +7 -0
  95. package/dist/lib/node-esm/meta.json +1 -1
  96. package/dist/lib/node-esm/operations/index.mjs +15 -0
  97. package/dist/lib/node-esm/operations/index.mjs.map +7 -0
  98. package/dist/lib/node-esm/query-deployed-functions-2VCNGQ7X.mjs +31 -0
  99. package/dist/lib/node-esm/query-deployed-functions-2VCNGQ7X.mjs.map +7 -0
  100. package/dist/lib/node-esm/read-PECQUAPS.mjs +27 -0
  101. package/dist/lib/node-esm/read-PECQUAPS.mjs.map +7 -0
  102. package/dist/lib/node-esm/templates/index.mjs +1 -1
  103. package/dist/lib/node-esm/translations.mjs +105 -0
  104. package/dist/lib/node-esm/translations.mjs.map +7 -0
  105. package/dist/lib/node-esm/types/index.mjs +3 -7
  106. package/dist/lib/node-esm/update-XDFTGSPP.mjs +64 -0
  107. package/dist/lib/node-esm/update-XDFTGSPP.mjs.map +7 -0
  108. package/dist/types/src/ScriptPlugin.d.ts +1 -0
  109. package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
  110. package/dist/types/src/ScriptPlugin.node.d.ts +4 -0
  111. package/dist/types/src/ScriptPlugin.node.d.ts.map +1 -0
  112. package/dist/types/src/ScriptPlugin.test.d.ts +2 -0
  113. package/dist/types/src/ScriptPlugin.test.d.ts.map +1 -0
  114. package/dist/types/src/blueprints/functions/create.d.ts +11 -0
  115. package/dist/types/src/blueprints/functions/create.d.ts.map +1 -0
  116. package/dist/types/src/blueprints/functions/definitions.d.ts +141 -0
  117. package/dist/types/src/blueprints/functions/definitions.d.ts.map +1 -0
  118. package/dist/types/src/blueprints/functions/delete.d.ts +18 -0
  119. package/dist/types/src/blueprints/functions/delete.d.ts.map +1 -0
  120. package/dist/types/src/blueprints/functions/deploy.d.ts +22 -0
  121. package/dist/types/src/blueprints/functions/deploy.d.ts.map +1 -0
  122. package/dist/types/src/blueprints/functions/index.d.ts +4 -0
  123. package/dist/types/src/blueprints/functions/index.d.ts.map +1 -0
  124. package/dist/types/src/blueprints/functions/inspect-invocations.d.ts +29 -0
  125. package/dist/types/src/blueprints/functions/inspect-invocations.d.ts.map +1 -0
  126. package/dist/types/src/blueprints/functions/install-function.d.ts +11 -0
  127. package/dist/types/src/blueprints/functions/install-function.d.ts.map +1 -0
  128. package/dist/types/src/blueprints/functions/invoke.d.ts +22 -0
  129. package/dist/types/src/blueprints/functions/invoke.d.ts.map +1 -0
  130. package/dist/types/src/blueprints/functions/query-deployed-functions.d.ts +13 -0
  131. package/dist/types/src/blueprints/functions/query-deployed-functions.d.ts.map +1 -0
  132. package/dist/types/src/blueprints/functions/read.d.ts +22 -0
  133. package/dist/types/src/blueprints/functions/read.d.ts.map +1 -0
  134. package/dist/types/src/blueprints/functions/update.d.ts +27 -0
  135. package/dist/types/src/blueprints/functions/update.d.ts.map +1 -0
  136. package/dist/types/src/blueprints/index.d.ts +1 -1
  137. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  138. package/dist/types/src/blueprints/script-blueprint.d.ts +3 -21
  139. package/dist/types/src/blueprints/script-blueprint.d.ts.map +1 -1
  140. package/dist/types/src/capabilities/app-graph-builder.d.ts +6 -0
  141. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  142. package/dist/types/src/capabilities/{artifact-definition/artifact-definition.d.ts → artifact-definition.d.ts} +1 -1
  143. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -0
  144. package/dist/types/src/capabilities/blueprint-definition.d.ts +6 -0
  145. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  146. package/dist/types/src/capabilities/compiler.d.ts +6 -0
  147. package/dist/types/src/capabilities/compiler.d.ts.map +1 -0
  148. package/dist/types/src/capabilities/index.d.ts +8 -6
  149. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  150. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  151. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  152. package/dist/types/src/capabilities/react-surface.d.ts +5 -0
  153. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  154. package/dist/types/src/capabilities/settings.d.ts +7 -0
  155. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  156. package/dist/types/src/compiler/compiler.d.ts.map +1 -1
  157. package/dist/types/src/components/{FrameContainer/FrameContainer.d.ts → FramePanel/FramePanel.d.ts} +3 -3
  158. package/dist/types/src/components/FramePanel/FramePanel.d.ts.map +1 -0
  159. package/dist/types/src/components/FramePanel/index.d.ts +2 -0
  160. package/dist/types/src/components/FramePanel/index.d.ts.map +1 -0
  161. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts +1 -1
  162. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts.map +1 -1
  163. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts +1 -1
  164. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts.map +1 -1
  165. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts +4 -2
  166. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts.map +1 -1
  167. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts +219 -228
  168. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts.map +1 -1
  169. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts.map +1 -1
  170. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts.map +1 -1
  171. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.d.ts +8 -0
  172. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.d.ts.map +1 -0
  173. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.stories.d.ts +241 -0
  174. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.stories.d.ts.map +1 -0
  175. package/dist/types/src/components/ScriptPluginSettings/index.d.ts +2 -0
  176. package/dist/types/src/components/ScriptPluginSettings/index.d.ts.map +1 -0
  177. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +7 -5
  178. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  179. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts +219 -228
  180. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts.map +1 -1
  181. package/dist/types/src/components/TestPanel/TestPanel.d.ts +4 -2
  182. package/dist/types/src/components/TestPanel/TestPanel.d.ts.map +1 -1
  183. package/dist/types/src/components/TestPanel/index.d.ts +0 -1
  184. package/dist/types/src/components/TestPanel/index.d.ts.map +1 -1
  185. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts +5 -2
  186. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts.map +1 -1
  187. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts +3 -1
  188. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts.map +1 -1
  189. package/dist/types/src/components/index.d.ts +6 -5
  190. package/dist/types/src/components/index.d.ts.map +1 -1
  191. package/dist/types/src/constants.d.ts +2 -0
  192. package/dist/types/src/constants.d.ts.map +1 -0
  193. package/dist/types/src/{components → containers}/DeploymentDialog/DeploymentDialog.d.ts +0 -2
  194. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.d.ts.map +1 -0
  195. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.stories.d.ts +240 -0
  196. package/dist/types/src/{components → containers}/DeploymentDialog/DeploymentDialog.stories.d.ts.map +1 -1
  197. package/dist/types/src/containers/DeploymentDialog/index.d.ts +2 -0
  198. package/dist/types/src/containers/DeploymentDialog/index.d.ts.map +1 -0
  199. package/dist/types/src/containers/NotebookContainer/NotebookContainer.d.ts +7 -0
  200. package/dist/types/src/containers/NotebookContainer/NotebookContainer.d.ts.map +1 -0
  201. package/dist/types/src/containers/NotebookContainer/NotebookContainer.stories.d.ts.map +1 -0
  202. package/dist/types/src/containers/NotebookContainer/index.d.ts +2 -0
  203. package/dist/types/src/containers/NotebookContainer/index.d.ts.map +1 -0
  204. package/dist/types/src/containers/ScriptContainer/ScriptContainer.d.ts +10 -0
  205. package/dist/types/src/containers/ScriptContainer/ScriptContainer.d.ts.map +1 -0
  206. package/dist/types/src/containers/ScriptContainer/ScriptContainer.stories.d.ts +242 -0
  207. package/dist/types/src/containers/ScriptContainer/ScriptContainer.stories.d.ts.map +1 -0
  208. package/dist/types/src/containers/ScriptContainer/index.d.ts +2 -0
  209. package/dist/types/src/containers/ScriptContainer/index.d.ts.map +1 -0
  210. package/dist/types/src/containers/ScriptProperties/BlueprintEditor.d.ts +7 -0
  211. package/dist/types/src/containers/ScriptProperties/BlueprintEditor.d.ts.map +1 -0
  212. package/dist/types/src/containers/ScriptProperties/FunctionBinding.d.ts +7 -0
  213. package/dist/types/src/containers/ScriptProperties/FunctionBinding.d.ts.map +1 -0
  214. package/dist/types/src/containers/ScriptProperties/FunctionPublishing.d.ts +7 -0
  215. package/dist/types/src/containers/ScriptProperties/FunctionPublishing.d.ts.map +1 -0
  216. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts +6 -0
  217. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts.map +1 -0
  218. package/dist/types/src/containers/ScriptProperties/ScriptProperties.stories.d.ts +242 -0
  219. package/dist/types/src/containers/ScriptProperties/ScriptProperties.stories.d.ts.map +1 -0
  220. package/dist/types/src/containers/ScriptProperties/index.d.ts +2 -0
  221. package/dist/types/src/containers/ScriptProperties/index.d.ts.map +1 -0
  222. package/dist/types/src/{components/TestPanel → containers/TestContainer}/TestContainer.d.ts +1 -1
  223. package/dist/types/src/containers/TestContainer/TestContainer.d.ts.map +1 -0
  224. package/dist/types/src/containers/TestContainer/index.d.ts +2 -0
  225. package/dist/types/src/containers/TestContainer/index.d.ts.map +1 -0
  226. package/dist/types/src/containers/index.d.ts +7 -0
  227. package/dist/types/src/containers/index.d.ts.map +1 -0
  228. package/dist/types/src/hooks/deploy.d.ts +18 -5
  229. package/dist/types/src/hooks/deploy.d.ts.map +1 -1
  230. package/dist/types/src/hooks/format.d.ts +2 -1
  231. package/dist/types/src/hooks/format.d.ts.map +1 -1
  232. package/dist/types/src/hooks/template.d.ts +2 -1
  233. package/dist/types/src/hooks/template.d.ts.map +1 -1
  234. package/dist/types/src/hooks/useCompiler.d.ts.map +1 -1
  235. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts.map +1 -1
  236. package/dist/types/src/hooks/useToolbarState.d.ts.map +1 -1
  237. package/dist/types/src/index.d.ts +2 -2
  238. package/dist/types/src/index.d.ts.map +1 -1
  239. package/dist/types/src/notebook/compute-graph.d.ts +1 -1
  240. package/dist/types/src/notebook/compute-graph.d.ts.map +1 -1
  241. package/dist/types/src/notebook/eval.d.ts.map +1 -1
  242. package/dist/types/src/notebook/vfs-parser.d.ts.map +1 -1
  243. package/dist/types/src/operations/access-token-created.d.ts +5 -0
  244. package/dist/types/src/operations/access-token-created.d.ts.map +1 -0
  245. package/dist/types/src/operations/create-script.d.ts +5 -0
  246. package/dist/types/src/operations/create-script.d.ts.map +1 -0
  247. package/dist/types/src/operations/definitions.d.ts +29 -0
  248. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  249. package/dist/types/src/operations/index.d.ts +4 -0
  250. package/dist/types/src/operations/index.d.ts.map +1 -0
  251. package/dist/types/src/templates/anthropic.d.ts +4 -5
  252. package/dist/types/src/templates/anthropic.d.ts.map +1 -1
  253. package/dist/types/src/templates/chat.d.ts.map +1 -1
  254. package/dist/types/src/templates/chess-bot.d.ts +5 -3
  255. package/dist/types/src/templates/chess-bot.d.ts.map +1 -1
  256. package/dist/types/src/templates/commentary.d.ts +5 -2
  257. package/dist/types/src/templates/commentary.d.ts.map +1 -1
  258. package/dist/types/src/templates/data-generator.d.ts.map +1 -1
  259. package/dist/types/src/templates/discord.d.ts.map +1 -1
  260. package/dist/types/src/templates/email.d.ts.map +1 -1
  261. package/dist/types/src/templates/forex-effect.d.ts +3 -2
  262. package/dist/types/src/templates/forex-effect.d.ts.map +1 -1
  263. package/dist/types/src/templates/forex.d.ts +3 -2
  264. package/dist/types/src/templates/forex.d.ts.map +1 -1
  265. package/dist/types/src/templates/gmail.d.ts.map +1 -1
  266. package/dist/types/src/templates/index.d.ts +29 -29
  267. package/dist/types/src/templates/index.d.ts.map +1 -1
  268. package/dist/types/src/templates/ping.d.ts +2 -1
  269. package/dist/types/src/templates/ping.d.ts.map +1 -1
  270. package/dist/types/src/testing/index.d.ts +2 -1
  271. package/dist/types/src/testing/index.d.ts.map +1 -1
  272. package/dist/types/src/testing/test-notebook.d.ts +3 -0
  273. package/dist/types/src/testing/test-notebook.d.ts.map +1 -0
  274. package/dist/types/src/testing/test-script.d.ts +7 -0
  275. package/dist/types/src/testing/test-script.d.ts.map +1 -0
  276. package/dist/types/src/translations.d.ts +222 -92
  277. package/dist/types/src/translations.d.ts.map +1 -1
  278. package/dist/types/src/types/Notebook.d.ts +42 -26
  279. package/dist/types/src/types/Notebook.d.ts.map +1 -1
  280. package/dist/types/src/types/Settings.d.ts +7 -0
  281. package/dist/types/src/types/Settings.d.ts.map +1 -0
  282. package/dist/types/src/types/capabilities.d.ts +2 -5
  283. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  284. package/dist/types/src/types/events.d.ts.map +1 -1
  285. package/dist/types/src/types/index.d.ts +0 -1
  286. package/dist/types/src/types/index.d.ts.map +1 -1
  287. package/dist/types/src/types/types.d.ts +1 -5
  288. package/dist/types/src/types/types.d.ts.map +1 -1
  289. package/dist/types/src/util/deploy.d.ts +2 -2
  290. package/dist/types/src/util/deploy.d.ts.map +1 -1
  291. package/dist/types/src/util/functions.d.ts +2 -2
  292. package/dist/types/src/util/functions.d.ts.map +1 -1
  293. package/dist/types/tsconfig.tsbuildinfo +1 -1
  294. package/package.json +121 -99
  295. package/src/ScriptPlugin.node.ts +70 -0
  296. package/src/ScriptPlugin.test.ts +31 -0
  297. package/src/ScriptPlugin.tsx +52 -34
  298. package/src/blueprints/functions/create.ts +47 -0
  299. package/src/blueprints/functions/definitions.ts +323 -0
  300. package/src/blueprints/functions/delete.ts +23 -0
  301. package/src/blueprints/functions/deploy.ts +70 -0
  302. package/src/blueprints/functions/index.ts +19 -0
  303. package/src/blueprints/functions/inspect-invocations.ts +56 -0
  304. package/src/blueprints/functions/install-function.ts +56 -0
  305. package/src/blueprints/functions/invoke.ts +35 -0
  306. package/src/blueprints/functions/query-deployed-functions.ts +31 -0
  307. package/src/blueprints/functions/read.ts +29 -0
  308. package/src/blueprints/functions/update.ts +68 -0
  309. package/src/blueprints/index.ts +1 -1
  310. package/src/blueprints/script-blueprint.ts +40 -9
  311. package/src/capabilities/app-graph-builder.ts +47 -0
  312. package/src/capabilities/{artifact-definition/artifact-definition.ts → artifact-definition.ts} +2 -3
  313. package/src/capabilities/blueprint-definition.ts +19 -0
  314. package/src/capabilities/{compiler/compiler.ts → compiler.ts} +17 -9
  315. package/src/capabilities/index.ts +13 -6
  316. package/src/capabilities/operation-handler.ts +21 -0
  317. package/src/capabilities/react-surface.tsx +130 -0
  318. package/src/capabilities/{settings/settings.ts → settings.ts} +7 -6
  319. package/src/compiler/compiler.ts +8 -1
  320. package/src/components/{FrameContainer/FrameContainer.tsx → FramePanel/FramePanel.tsx} +4 -5
  321. package/src/components/{FrameContainer → FramePanel}/index.ts +1 -1
  322. package/src/components/NotebookStack/NotebookCell.tsx +31 -22
  323. package/src/components/NotebookStack/NotebookMenu.tsx +7 -7
  324. package/src/components/NotebookStack/NotebookStack.stories.tsx +7 -9
  325. package/src/components/NotebookStack/NotebookStack.tsx +27 -16
  326. package/src/components/QueryEditor/QueryEditor.stories.tsx +18 -22
  327. package/src/components/ScriptPluginSettings/ScriptPluginSettings.stories.tsx +32 -0
  328. package/src/components/ScriptPluginSettings/ScriptPluginSettings.tsx +42 -0
  329. package/src/components/ScriptPluginSettings/index.ts +5 -0
  330. package/src/components/ScriptToolbar/ScriptToolbar.stories.tsx +8 -9
  331. package/src/components/ScriptToolbar/ScriptToolbar.tsx +24 -26
  332. package/src/components/TestPanel/TestPanel.tsx +110 -194
  333. package/src/components/TestPanel/index.ts +0 -1
  334. package/src/components/TypescriptEditor/TypescriptEditor.stories.tsx +17 -15
  335. package/src/components/TypescriptEditor/TypescriptEditor.tsx +26 -19
  336. package/src/components/index.ts +6 -7
  337. package/src/constants.ts +7 -0
  338. package/src/{components → containers}/DeploymentDialog/DeploymentDialog.stories.tsx +8 -7
  339. package/src/{components → containers}/DeploymentDialog/DeploymentDialog.tsx +33 -37
  340. package/src/containers/DeploymentDialog/index.ts +5 -0
  341. package/src/{components → containers/NotebookContainer}/NotebookContainer.stories.tsx +18 -20
  342. package/src/{components → containers/NotebookContainer}/NotebookContainer.tsx +59 -76
  343. package/src/containers/NotebookContainer/index.ts +5 -0
  344. package/src/containers/ScriptContainer/ScriptContainer.stories.tsx +106 -0
  345. package/src/{components → containers/ScriptContainer}/ScriptContainer.tsx +28 -27
  346. package/src/containers/ScriptContainer/index.ts +5 -0
  347. package/src/containers/ScriptProperties/BlueprintEditor.tsx +101 -0
  348. package/src/containers/ScriptProperties/FunctionBinding.tsx +83 -0
  349. package/src/containers/ScriptProperties/FunctionPublishing.tsx +121 -0
  350. package/src/containers/ScriptProperties/ScriptProperties.stories.tsx +75 -0
  351. package/src/containers/ScriptProperties/ScriptProperties.tsx +24 -0
  352. package/src/containers/ScriptProperties/index.ts +5 -0
  353. package/src/containers/TestContainer/TestContainer.tsx +44 -0
  354. package/src/containers/TestContainer/index.ts +5 -0
  355. package/src/containers/index.ts +11 -0
  356. package/src/e2e/ai.test.ts +7 -6
  357. package/src/e2e/deploy.test.ts +5 -5
  358. package/src/hooks/deploy.ts +15 -13
  359. package/src/hooks/format.ts +6 -5
  360. package/src/hooks/template.ts +9 -8
  361. package/src/hooks/useCompiler.ts +4 -3
  362. package/src/hooks/useCreateAndDeployScriptTemplates.ts +5 -4
  363. package/src/hooks/useToolbarState.ts +7 -6
  364. package/src/index.ts +6 -3
  365. package/src/meta.ts +2 -2
  366. package/src/notebook/compute-graph.test.ts +7 -7
  367. package/src/notebook/compute-graph.ts +1 -1
  368. package/src/notebook/vfs-parser.ts +10 -3
  369. package/src/operations/access-token-created.ts +37 -0
  370. package/src/operations/create-script.ts +46 -0
  371. package/src/operations/definitions.ts +40 -0
  372. package/src/operations/index.ts +12 -0
  373. package/src/templates/anthropic.ts +19 -12
  374. package/src/templates/chat.ts +1 -1
  375. package/src/templates/chess-bot.ts +37 -34
  376. package/src/templates/commentary.ts +178 -162
  377. package/src/templates/data-generator.ts +1 -1
  378. package/src/templates/discord.ts +3 -3
  379. package/src/templates/forex-effect.ts +30 -19
  380. package/src/templates/forex.ts +24 -15
  381. package/src/templates/gmail.ts +4 -4
  382. package/src/templates/index.ts +18 -18
  383. package/src/templates/ping.ts +16 -8
  384. package/src/testing/index.ts +2 -1
  385. package/src/testing/simulator.test.ts +3 -4
  386. package/src/testing/{data.ts → test-notebook.ts} +4 -5
  387. package/src/testing/test-script.ts +29 -0
  388. package/src/translations.ts +86 -87
  389. package/src/types/Notebook.ts +10 -6
  390. package/src/types/Settings.ts +20 -0
  391. package/src/types/capabilities.ts +5 -5
  392. package/src/types/events.ts +2 -2
  393. package/src/types/index.ts +0 -1
  394. package/src/types/types.ts +1 -11
  395. package/src/util/deploy.ts +13 -11
  396. package/src/util/functions.ts +9 -8
  397. package/dist/lib/browser/DeploymentDialog-OSL6RMPA.mjs +0 -14
  398. package/dist/lib/browser/DeploymentDialog-OSL6RMPA.mjs.map +0 -7
  399. package/dist/lib/browser/NotebookContainer-NBAXYESH.mjs.map +0 -7
  400. package/dist/lib/browser/ScriptContainer-WD33CJMI.mjs +0 -149
  401. package/dist/lib/browser/ScriptContainer-WD33CJMI.mjs.map +0 -7
  402. package/dist/lib/browser/app-graph-builder-7VO7AUI6.mjs +0 -68
  403. package/dist/lib/browser/app-graph-builder-7VO7AUI6.mjs.map +0 -7
  404. package/dist/lib/browser/blueprint-definition-OSOUYI7A.mjs +0 -17
  405. package/dist/lib/browser/blueprint-definition-OSOUYI7A.mjs.map +0 -7
  406. package/dist/lib/browser/chunk-BTWHM6FH.mjs +0 -270
  407. package/dist/lib/browser/chunk-BTWHM6FH.mjs.map +0 -7
  408. package/dist/lib/browser/chunk-C53UJGSU.mjs +0 -557
  409. package/dist/lib/browser/chunk-C53UJGSU.mjs.map +0 -7
  410. package/dist/lib/browser/chunk-F3QKSKSF.mjs +0 -35
  411. package/dist/lib/browser/chunk-F3QKSKSF.mjs.map +0 -7
  412. package/dist/lib/browser/chunk-I7CSE6T3.mjs +0 -110
  413. package/dist/lib/browser/chunk-I7CSE6T3.mjs.map +0 -7
  414. package/dist/lib/browser/chunk-TWX2NMZN.mjs +0 -137
  415. package/dist/lib/browser/chunk-TWX2NMZN.mjs.map +0 -7
  416. package/dist/lib/browser/chunk-UUR4JNNB.mjs +0 -113
  417. package/dist/lib/browser/chunk-UUR4JNNB.mjs.map +0 -7
  418. package/dist/lib/browser/chunk-UX4GHJ5E.mjs.map +0 -7
  419. package/dist/lib/browser/chunk-WYR4QHPE.mjs +0 -31
  420. package/dist/lib/browser/chunk-WYR4QHPE.mjs.map +0 -7
  421. package/dist/lib/browser/chunk-XCN4D3Z5.mjs +0 -606
  422. package/dist/lib/browser/chunk-XCN4D3Z5.mjs.map +0 -7
  423. package/dist/lib/browser/compiler-76F3QAXC.mjs +0 -161
  424. package/dist/lib/browser/compiler-76F3QAXC.mjs.map +0 -7
  425. package/dist/lib/browser/operation-resolver-HUILPPKT.mjs +0 -82
  426. package/dist/lib/browser/operation-resolver-HUILPPKT.mjs.map +0 -7
  427. package/dist/lib/browser/react-surface-O6GKHB2J.mjs +0 -139
  428. package/dist/lib/browser/react-surface-O6GKHB2J.mjs.map +0 -7
  429. package/dist/lib/browser/settings-3ENI25PI.mjs +0 -35
  430. package/dist/lib/browser/settings-3ENI25PI.mjs.map +0 -7
  431. package/dist/lib/node-esm/DeploymentDialog-OGBJPVIX.mjs +0 -15
  432. package/dist/lib/node-esm/DeploymentDialog-OGBJPVIX.mjs.map +0 -7
  433. package/dist/lib/node-esm/NotebookContainer-IUAYVJSD.mjs.map +0 -7
  434. package/dist/lib/node-esm/ScriptContainer-K7JCEU5Z.mjs +0 -150
  435. package/dist/lib/node-esm/ScriptContainer-K7JCEU5Z.mjs.map +0 -7
  436. package/dist/lib/node-esm/app-graph-builder-NVE3EVBG.mjs +0 -69
  437. package/dist/lib/node-esm/app-graph-builder-NVE3EVBG.mjs.map +0 -7
  438. package/dist/lib/node-esm/blueprint-definition-NC7NNJGI.mjs +0 -18
  439. package/dist/lib/node-esm/blueprint-definition-NC7NNJGI.mjs.map +0 -7
  440. package/dist/lib/node-esm/chunk-4F5FJZ36.mjs.map +0 -7
  441. package/dist/lib/node-esm/chunk-4QNZMXW6.mjs +0 -607
  442. package/dist/lib/node-esm/chunk-4QNZMXW6.mjs.map +0 -7
  443. package/dist/lib/node-esm/chunk-5HSJPAK7.mjs +0 -33
  444. package/dist/lib/node-esm/chunk-5HSJPAK7.mjs.map +0 -7
  445. package/dist/lib/node-esm/chunk-BX5PP6AW.mjs +0 -558
  446. package/dist/lib/node-esm/chunk-BX5PP6AW.mjs.map +0 -7
  447. package/dist/lib/node-esm/chunk-G3J76DWP.mjs +0 -114
  448. package/dist/lib/node-esm/chunk-G3J76DWP.mjs.map +0 -7
  449. package/dist/lib/node-esm/chunk-SLU3KRV3.mjs +0 -112
  450. package/dist/lib/node-esm/chunk-SLU3KRV3.mjs.map +0 -7
  451. package/dist/lib/node-esm/chunk-VQPIA4VF.mjs +0 -138
  452. package/dist/lib/node-esm/chunk-VQPIA4VF.mjs.map +0 -7
  453. package/dist/lib/node-esm/chunk-VWOLKNMO.mjs +0 -271
  454. package/dist/lib/node-esm/chunk-VWOLKNMO.mjs.map +0 -7
  455. package/dist/lib/node-esm/chunk-Y3G5NCTP.mjs +0 -36
  456. package/dist/lib/node-esm/chunk-Y3G5NCTP.mjs.map +0 -7
  457. package/dist/lib/node-esm/compiler-FNZH6TFN.mjs +0 -162
  458. package/dist/lib/node-esm/compiler-FNZH6TFN.mjs.map +0 -7
  459. package/dist/lib/node-esm/operation-resolver-JTCIY6HU.mjs +0 -83
  460. package/dist/lib/node-esm/operation-resolver-JTCIY6HU.mjs.map +0 -7
  461. package/dist/lib/node-esm/react-surface-RLANMVMB.mjs +0 -140
  462. package/dist/lib/node-esm/react-surface-RLANMVMB.mjs.map +0 -7
  463. package/dist/lib/node-esm/settings-7AYC5VXN.mjs +0 -36
  464. package/dist/lib/node-esm/settings-7AYC5VXN.mjs.map +0 -7
  465. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +0 -6
  466. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
  467. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
  468. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
  469. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +0 -1
  470. package/dist/types/src/capabilities/artifact-definition/index.d.ts +0 -3
  471. package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +0 -1
  472. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +0 -9
  473. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +0 -1
  474. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +0 -3
  475. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +0 -1
  476. package/dist/types/src/capabilities/compiler/compiler.d.ts +0 -6
  477. package/dist/types/src/capabilities/compiler/compiler.d.ts.map +0 -1
  478. package/dist/types/src/capabilities/compiler/index.d.ts +0 -3
  479. package/dist/types/src/capabilities/compiler/index.d.ts.map +0 -1
  480. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  481. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  482. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  483. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  484. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  485. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  486. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
  487. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  488. package/dist/types/src/capabilities/settings/index.d.ts +0 -7
  489. package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
  490. package/dist/types/src/capabilities/settings/settings.d.ts +0 -9
  491. package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
  492. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts.map +0 -1
  493. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts +0 -249
  494. package/dist/types/src/components/DeploymentDialog/index.d.ts +0 -4
  495. package/dist/types/src/components/DeploymentDialog/index.d.ts.map +0 -1
  496. package/dist/types/src/components/FrameContainer/FrameContainer.d.ts.map +0 -1
  497. package/dist/types/src/components/FrameContainer/frame.d.ts +0 -2
  498. package/dist/types/src/components/FrameContainer/frame.d.ts.map +0 -1
  499. package/dist/types/src/components/FrameContainer/index.d.ts +0 -2
  500. package/dist/types/src/components/FrameContainer/index.d.ts.map +0 -1
  501. package/dist/types/src/components/NotebookContainer.d.ts +0 -8
  502. package/dist/types/src/components/NotebookContainer.d.ts.map +0 -1
  503. package/dist/types/src/components/NotebookContainer.stories.d.ts.map +0 -1
  504. package/dist/types/src/components/ScriptContainer.d.ts +0 -11
  505. package/dist/types/src/components/ScriptContainer.d.ts.map +0 -1
  506. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts +0 -8
  507. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts.map +0 -1
  508. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts +0 -8
  509. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts.map +0 -1
  510. package/dist/types/src/components/Settings/index.d.ts +0 -3
  511. package/dist/types/src/components/Settings/index.d.ts.map +0 -1
  512. package/dist/types/src/components/TestPanel/TestContainer.d.ts.map +0 -1
  513. package/dist/types/src/testing/data.d.ts +0 -3
  514. package/dist/types/src/testing/data.d.ts.map +0 -1
  515. package/dist/types/src/types/actions.d.ts +0 -40
  516. package/dist/types/src/types/actions.d.ts.map +0 -1
  517. package/src/capabilities/app-graph-builder/app-graph-builder.ts +0 -55
  518. package/src/capabilities/app-graph-builder/index.ts +0 -7
  519. package/src/capabilities/artifact-definition/index.ts +0 -7
  520. package/src/capabilities/blueprint-definition/blueprint-definition.ts +0 -23
  521. package/src/capabilities/blueprint-definition/index.ts +0 -7
  522. package/src/capabilities/compiler/index.ts +0 -7
  523. package/src/capabilities/operation-resolver/index.ts +0 -7
  524. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -74
  525. package/src/capabilities/react-surface/index.ts +0 -7
  526. package/src/capabilities/react-surface/react-surface.tsx +0 -118
  527. package/src/capabilities/settings/index.ts +0 -7
  528. package/src/components/DeploymentDialog/index.ts +0 -9
  529. package/src/components/FrameContainer/frame.html +0 -25
  530. package/src/components/FrameContainer/frame.tsx +0 -51
  531. package/src/components/Settings/ScriptObjectSettings.tsx +0 -309
  532. package/src/components/Settings/ScriptPluginSettings.tsx +0 -66
  533. package/src/components/Settings/index.ts +0 -6
  534. package/src/components/TestPanel/TestContainer.tsx +0 -27
  535. package/src/types/actions.ts +0 -45
  536. /package/dist/types/src/{components → containers/NotebookContainer}/NotebookContainer.stories.d.ts +0 -0
@@ -6,12 +6,12 @@ import { format } from 'prettier';
6
6
  import prettierPluginEstree from 'prettier/plugins/estree';
7
7
  import prettierPluginTypescript from 'prettier/plugins/typescript';
8
8
 
9
+ import { type Script } from '@dxos/compute';
9
10
  import { Obj } from '@dxos/echo';
10
- import { type Script } from '@dxos/functions';
11
11
  import { log } from '@dxos/log';
12
12
  import { createMenuAction } from '@dxos/react-ui-menu';
13
13
 
14
- import { meta } from '../meta';
14
+ import { meta } from '#meta';
15
15
 
16
16
  export type FormatActionProperties = { type: 'format' };
17
17
 
@@ -30,8 +30,8 @@ export const createFormat = (script: Script.Script) => {
30
30
  semi: true,
31
31
  singleQuote: true,
32
32
  });
33
- Obj.change(script.source.target!, (s) => {
34
- s.content = formatted;
33
+ Obj.update(script.source.target!, (obj) => {
34
+ obj.content = formatted;
35
35
  });
36
36
  } catch (err: any) {
37
37
  // TODO(wittjosiah): Show error in UI.
@@ -39,7 +39,7 @@ export const createFormat = (script: Script.Script) => {
39
39
  }
40
40
  },
41
41
  {
42
- label: ['format label', { ns: meta.id }],
42
+ label: ['format.label', { ns: meta.id }],
43
43
  icon: 'ph--magic-wand--regular',
44
44
  },
45
45
  );
@@ -50,6 +50,7 @@ export const createFormat = (script: Script.Script) => {
50
50
  {
51
51
  source: 'root',
52
52
  target: 'format',
53
+ relation: 'child',
53
54
  },
54
55
  ],
55
56
  };
@@ -2,8 +2,9 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
+ import { Script } from '@dxos/compute';
5
6
  import { Obj } from '@dxos/echo';
6
- import { FUNCTIONS_PRESET_META_KEY, type Script } from '@dxos/functions';
7
+ import { FUNCTIONS_PRESET_META_KEY } from '@dxos/functions';
7
8
  import { createMenuAction } from '@dxos/react-ui-menu';
8
9
 
9
10
  import { templates } from '../templates';
@@ -15,9 +16,9 @@ const createTemplateSelectActions = (script: Script.Script) => {
15
16
  return createMenuAction<TemplateActionProperties>(
16
17
  `template--${template.id}`,
17
18
  () => {
18
- Obj.change(script, (s) => {
19
- s.name = template.name;
20
- const meta = Obj.getMeta(s);
19
+ Obj.update(script, (script) => {
20
+ script.name = template.name;
21
+ const meta = Obj.getMeta(script);
21
22
  const oldPresetIndex = meta.keys.findIndex((key) => key.source === FUNCTIONS_PRESET_META_KEY);
22
23
  if (oldPresetIndex >= 0) {
23
24
  meta.keys.splice(oldPresetIndex, 1);
@@ -27,8 +28,8 @@ const createTemplateSelectActions = (script: Script.Script) => {
27
28
  }
28
29
  });
29
30
  if (script.source?.target) {
30
- Obj.change(script.source.target, (s) => {
31
- s.content = template.source;
31
+ Obj.update(script.source.target, (obj) => {
32
+ obj.content = template.source;
32
33
  });
33
34
  }
34
35
  },
@@ -46,8 +47,8 @@ export const createTemplateSelect = (script: Script.Script) => {
46
47
  return {
47
48
  nodes: [...templateSelectActions],
48
49
  edges: [
49
- { source: 'root', target: 'template-select' },
50
- ...templateSelectActions.map((action) => ({ source: 'template-select', target: action.id })),
50
+ { source: 'root', target: 'template-select', relation: 'child' },
51
+ ...templateSelectActions.map((action) => ({ source: 'template-select', target: action.id, relation: 'child' })),
51
52
  ],
52
53
  };
53
54
  };
@@ -2,13 +2,14 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { useCapabilities, usePluginManager } from '@dxos/app-framework/react';
5
+ import { useCapabilities, usePluginManager } from '@dxos/app-framework/ui';
6
6
  import { runAndForwardErrors } from '@dxos/effect';
7
7
  import { useAsyncEffect } from '@dxos/react-ui';
8
8
 
9
+ import { ScriptEvents } from '#types';
10
+ import { ScriptCapabilities } from '#types';
11
+
9
12
  import type { Compiler } from '../compiler';
10
- import { ScriptEvents } from '../types';
11
- import { ScriptCapabilities } from '../types';
12
13
 
13
14
  /**
14
15
  * Asynchronously sets up the compiler and returns it.
@@ -4,16 +4,17 @@
4
4
 
5
5
  import { useCallback, useState } from 'react';
6
6
 
7
- import { useOperationInvoker } from '@dxos/app-framework/react';
7
+ import { useOperationInvoker } from '@dxos/app-framework/ui';
8
+ import { Script } from '@dxos/compute';
8
9
  import { Obj } from '@dxos/echo';
9
- import { Script } from '@dxos/functions';
10
10
  import { invariant } from '@dxos/invariant';
11
- import { SpaceOperation } from '@dxos/plugin-space/types';
11
+ import { SpaceOperation } from '@dxos/plugin-space/operations';
12
12
  import { useClient } from '@dxos/react-client';
13
13
  import { type Space } from '@dxos/react-client/echo';
14
14
 
15
+ import { ScriptOperation } from '#operations';
16
+
15
17
  import { type Template } from '../templates';
16
- import { ScriptOperation } from '../types';
17
18
  import { deployScript } from '../util';
18
19
 
19
20
  type DeploymentStatus = 'idle' | 'pending' | 'success' | 'error';
@@ -2,8 +2,11 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { Atom, RegistryContext, useAtomValue } from '@effect-atom/atom-react';
6
- import { useContext, useMemo } from 'react';
5
+ import { Atom } from '@effect-atom/atom-react';
6
+ import { useMemo } from 'react';
7
+
8
+ import { Capabilities } from '@dxos/app-framework';
9
+ import { useCapability } from '@dxos/app-framework/ui';
7
10
 
8
11
  import { type DeployState } from './deploy';
9
12
 
@@ -16,11 +19,9 @@ export type ScriptToolbarStateStore = {
16
19
  set: <K extends keyof ScriptToolbarState>(key: K, value: ScriptToolbarState[K]) => void;
17
20
  };
18
21
 
19
- // TODO(burdon): Replace with context provider?
20
22
  export const useToolbarState = (initialState: ScriptToolbarState = {}): ScriptToolbarStateStore => {
21
- const registry = useContext(RegistryContext);
23
+ const registry = useCapability(Capabilities.AtomRegistry);
22
24
  const atom = useMemo(() => Atom.make<ScriptToolbarState>(initialState), []);
23
- const value = useAtomValue(atom);
24
25
 
25
26
  return useMemo(
26
27
  () => ({
@@ -35,6 +36,6 @@ export const useToolbarState = (initialState: ScriptToolbarState = {}): ScriptTo
35
36
  registry.set(atom, { ...registry.get(atom), [key]: v });
36
37
  },
37
38
  }),
38
- [atom, registry, value],
39
+ [atom, registry],
39
40
  );
40
41
  };
package/src/index.ts CHANGED
@@ -2,9 +2,12 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
+ import { Plugin } from '@dxos/app-framework';
6
+
7
+ import { meta } from './meta';
8
+
9
+ export const ScriptPlugin = Plugin.lazy(meta, () => import('#plugin'));
10
+
5
11
  export { ScriptCapabilities, ScriptEvents } from './types';
6
- export * from './components';
7
12
  export * from './meta';
8
13
  export * from './util';
9
-
10
- export * from './ScriptPlugin';
package/src/meta.ts CHANGED
@@ -6,7 +6,7 @@ import { type Plugin } from '@dxos/app-framework';
6
6
  import { trim } from '@dxos/util';
7
7
 
8
8
  export const meta: Plugin.Meta = {
9
- id: 'dxos.org/plugin/script',
9
+ id: 'org.dxos.plugin.script',
10
10
  name: 'Scripts',
11
11
  description: trim`
12
12
  Write and deploy custom JavaScript functions that extend your workspace capabilities.
@@ -22,5 +22,5 @@ export const meta: Plugin.Meta = {
22
22
  // TODO(ZaymonFC): Configure by scopes?
23
23
  export const defaultScriptsForIntegration: Record<string, string[]> = {
24
24
  // TODO(wittjosiah): Also include content extraction scripts in the default set.
25
- 'gmail.com': ['dxos.org/script/gmail'],
25
+ 'gmail.com': ['org.dxos.script.gmail'],
26
26
  };
@@ -7,7 +7,7 @@ import { describe, expect, test } from 'vitest';
7
7
 
8
8
  import { Obj } from '@dxos/echo';
9
9
 
10
- import { createNotebook } from '../testing';
10
+ import { createNotebook } from '#testing';
11
11
 
12
12
  import { ComputeGraph } from './compute-graph';
13
13
 
@@ -43,8 +43,8 @@ describe('notebook', () => {
43
43
  // Replace one of the cells with code that tries to access window/document.
44
44
  const sourceTarget = notebook.cells[2].source?.target;
45
45
  if (sourceTarget) {
46
- Obj.change(sourceTarget, (t) => {
47
- t.content = 'b = typeof window';
46
+ Obj.update(sourceTarget, (sourceTarget) => {
47
+ sourceTarget.content = 'b = typeof window';
48
48
  });
49
49
  }
50
50
 
@@ -57,8 +57,8 @@ describe('notebook', () => {
57
57
 
58
58
  // Test document access.
59
59
  if (sourceTarget) {
60
- Obj.change(sourceTarget, (t) => {
61
- t.content = 'b = typeof document';
60
+ Obj.update(sourceTarget, (sourceTarget) => {
61
+ sourceTarget.content = 'b = typeof document';
62
62
  });
63
63
  }
64
64
  graph.parse();
@@ -69,8 +69,8 @@ describe('notebook', () => {
69
69
 
70
70
  // Test that safe globals still work.
71
71
  if (sourceTarget) {
72
- Obj.change(sourceTarget, (t) => {
73
- t.content = 'b = Math.max(100, 200)';
72
+ Obj.update(sourceTarget, (sourceTarget) => {
73
+ sourceTarget.content = 'b = Math.max(100, 200)';
74
74
  });
75
75
  }
76
76
  graph.parse();
@@ -6,7 +6,7 @@ import { Atom, type Registry } from '@effect-atom/atom-react';
6
6
 
7
7
  import { log } from '@dxos/log';
8
8
 
9
- import { type Notebook } from '../types';
9
+ import { type Notebook } from '#types';
10
10
 
11
11
  import { evalScript } from './eval';
12
12
  import { type ParsedExpression, VirtualTypeScriptParser } from './vfs-parser';
@@ -42,6 +42,7 @@ export class VirtualTypeScriptParser {
42
42
  protected compilerOptions: ts.CompilerOptions = {
43
43
  target: ts.ScriptTarget.ES2020,
44
44
  module: ts.ModuleKind.ESNext,
45
+ moduleResolution: ts.ModuleResolutionKind.Bundler,
45
46
  strict: true,
46
47
  esModuleInterop: true,
47
48
  skipLibCheck: true,
@@ -91,7 +92,9 @@ export class VirtualTypeScriptParser {
91
92
  // Analyze each file.
92
93
  files.forEach((file) => {
93
94
  const sourceFile = env.getSourceFile(file.filename);
94
- if (!sourceFile || !typeChecker) return;
95
+ if (!sourceFile || !typeChecker) {
96
+ return;
97
+ }
95
98
 
96
99
  const fileResults = this.analyzeSourceFile(sourceFile, typeChecker);
97
100
  results.push(...fileResults);
@@ -207,7 +210,9 @@ export class VirtualTypeScriptParser {
207
210
  signature: ts.Signature | undefined,
208
211
  typeChecker: ts.TypeChecker,
209
212
  ): Array<{ name: string; type: string }> {
210
- if (!signature) return [];
213
+ if (!signature) {
214
+ return [];
215
+ }
211
216
 
212
217
  return signature.parameters.map((param) => ({
213
218
  name: param.getName(),
@@ -429,7 +434,9 @@ export class NotebookVirtualParser extends VirtualTypeScriptParser {
429
434
  const previousExports = new Set<string>();
430
435
  for (const [_prevCellId, prevAnalysis] of cellAnalysis) {
431
436
  prevAnalysis.exports.forEach((exp) => {
432
- if (exp.name) previousExports.add(exp.name);
437
+ if (exp.name) {
438
+ previousExports.add(exp.name);
439
+ }
433
440
  });
434
441
  }
435
442
 
@@ -0,0 +1,37 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+ import * as Predicate from 'effect/Predicate';
7
+
8
+ import { LayoutOperation } from '@dxos/app-toolkit';
9
+ import { Operation } from '@dxos/compute';
10
+ import { IntegrationOperation } from '@dxos/plugin-integration/operations';
11
+
12
+ import { defaultScriptsForIntegration } from '#meta';
13
+
14
+ import { DEPLOYMENT_DIALOG } from '../constants';
15
+ import { templates } from '../templates';
16
+
17
+ const handler: Operation.WithHandler<typeof IntegrationOperation.AccessTokenCreated> =
18
+ IntegrationOperation.AccessTokenCreated.pipe(
19
+ Operation.withHandler(
20
+ Effect.fnUntraced(function* ({ accessToken }) {
21
+ const scriptTemplates = (defaultScriptsForIntegration[accessToken.source] ?? [])
22
+ .map((id) => templates.find((t) => t.id === id))
23
+ .filter(Predicate.isNotNullable);
24
+
25
+ if (scriptTemplates.length > 0) {
26
+ yield* Operation.invoke(LayoutOperation.UpdateDialog, {
27
+ subject: DEPLOYMENT_DIALOG,
28
+ blockAlign: 'start',
29
+ state: true,
30
+ props: { accessToken, scriptTemplates },
31
+ });
32
+ }
33
+ }),
34
+ ),
35
+ );
36
+
37
+ export default handler;
@@ -0,0 +1,46 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { Octokit } from '@octokit/core';
6
+ import * as Effect from 'effect/Effect';
7
+
8
+ import { Script, Operation } from '@dxos/compute';
9
+
10
+ import { templates } from '../templates';
11
+ import { CreateScript } from './definitions';
12
+
13
+ const handler: Operation.WithHandler<typeof CreateScript> = CreateScript.pipe(
14
+ Operation.withHandler(
15
+ Effect.fnUntraced(function* ({ name, gistUrl, initialTemplateId }) {
16
+ let source = templates[0].source;
17
+ let scriptName = name;
18
+
19
+ const gistId = gistUrl?.split('/').at(-1);
20
+ if (gistId) {
21
+ const octokit = new Octokit();
22
+ const response = yield* Effect.promise(() =>
23
+ octokit.request('GET /gists/{gist_id}', {
24
+ gist_id: gistId,
25
+ }),
26
+ );
27
+ const gistContent = Object.values(response.data.files ?? {})[0]?.content;
28
+ if (gistContent) {
29
+ source = gistContent;
30
+ }
31
+ }
32
+
33
+ if (initialTemplateId) {
34
+ const template = templates.find((template) => template.id === initialTemplateId);
35
+ if (template) {
36
+ source = template.source;
37
+ scriptName = scriptName || template.name;
38
+ }
39
+ }
40
+
41
+ return { object: Script.make({ name: scriptName, source }) };
42
+ }),
43
+ ),
44
+ );
45
+
46
+ export default handler;
@@ -0,0 +1,40 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Schema from 'effect/Schema';
6
+
7
+ import { Script, Operation } from '@dxos/compute';
8
+ import { Database } from '@dxos/echo';
9
+
10
+ import { meta } from '#meta';
11
+
12
+ import { templates } from '../templates';
13
+
14
+ const SCRIPT_OPERATION = `${meta.id}.operation`;
15
+
16
+ export const ScriptProps = Schema.Struct({
17
+ name: Schema.optional(Schema.String),
18
+ gistUrl: Schema.optional(Schema.String.annotations({ title: 'Import from Gist (url)' })),
19
+ initialTemplateId: Schema.Literal(...templates.map(({ id }) => id)).pipe(
20
+ Schema.annotations({ title: 'Template' }),
21
+ Schema.optional,
22
+ ),
23
+ });
24
+
25
+ export const NotebookProps = Schema.Struct({
26
+ name: Schema.optional(Schema.String),
27
+ });
28
+
29
+ export const CreateScript = Operation.make({
30
+ meta: { key: `${SCRIPT_OPERATION}.create-script`, name: 'Create Script' },
31
+ input: Schema.extend(
32
+ ScriptProps,
33
+ Schema.Struct({
34
+ db: Database.Database,
35
+ }),
36
+ ),
37
+ output: Schema.Struct({
38
+ object: Script.Script,
39
+ }),
40
+ });
@@ -0,0 +1,12 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { OperationHandlerSet } from '@dxos/compute';
6
+
7
+ export * as ScriptOperation from './definitions';
8
+
9
+ export const ScriptOperationHandlerSet = OperationHandlerSet.lazy(
10
+ () => import('./access-token-created'),
11
+ () => import('./create-script'),
12
+ );
@@ -9,23 +9,30 @@ import * as Schema from 'effect/Schema';
9
9
  import * as Stream from 'effect/Stream';
10
10
 
11
11
  import { AiService } from '@dxos/ai';
12
- import { defineFunction } from '@dxos/functions';
12
+ import { Operation } from '@dxos/compute';
13
13
 
14
- export default defineFunction({
15
- key: 'dxos.org/script/anthropic',
16
- name: 'Anthropic Chat',
17
- description: 'Chat with Anthropic',
18
- inputSchema: Schema.Struct({
14
+ const Anthropic = Operation.make({
15
+ meta: {
16
+ key: 'org.dxos.script.anthropic',
17
+ name: 'Anthropic Chat',
18
+ description: 'Chat with Anthropic',
19
+ },
20
+ input: Schema.Struct({
19
21
  message: Schema.String,
20
22
  }),
23
+ output: Schema.Any,
21
24
  services: [AiService.AiService],
22
- handler: ({ data }) => {
23
- return Effect.gen(function* () {
25
+ });
26
+
27
+ export default Anthropic.pipe(
28
+ Operation.withHandler(
29
+ Effect.fn(function* ({ message }) {
24
30
  const model = (yield* AiService.AiService).model('@anthropic/claude-sonnet-4-5');
31
+
25
32
  //
26
33
  // Basic example.
27
34
  //
28
- const { text } = yield* LanguageModel.generateText({ prompt: data.message }).pipe(Effect.provide(model));
35
+ const { text } = yield* LanguageModel.generateText({ prompt: message }).pipe(Effect.provide(model));
29
36
 
30
37
  //
31
38
  // Streaming example.
@@ -37,6 +44,6 @@ export default defineFunction({
37
44
  const fullText = textDeltas.map((p) => (p as { delta: string }).delta).join('');
38
45
 
39
46
  return { response: text, streamText: fullText };
40
- });
41
- },
42
- });
47
+ }),
48
+ ),
49
+ );
@@ -76,7 +76,7 @@ export default async ({ data: { bodyText }, context: { space, ai } }: any) => {
76
76
 
77
77
  const getContext = async ({ space }: any) => {
78
78
  let context = '';
79
- const { objects: docs } = await space.crud.query({ __typename: 'dxos.org/type/Document' }).run();
79
+ const { objects: docs } = await space.crud.query({ __typename: 'org.dxos.type.document' }).run();
80
80
  for (const doc of docs) {
81
81
  const { content } = await space.crud.query({ id: doc.content }).first();
82
82
  context += content + '\n\n';
@@ -6,53 +6,56 @@ import { Chess as ChessJS } from 'chess.js';
6
6
  import * as Effect from 'effect/Effect';
7
7
  import * as Schema from 'effect/Schema';
8
8
 
9
- import { Database, Obj, Type } from '@dxos/echo';
10
- import { defineFunction } from '@dxos/functions';
9
+ import { Operation } from '@dxos/compute';
10
+ import { Database, Obj, Ref } from '@dxos/echo';
11
11
  import { Chess } from '@dxos/plugin-chess/types';
12
12
 
13
- export default defineFunction({
14
- key: 'dxos.org/script/chess-bot',
15
- name: 'Chess Bot',
16
- description: 'Plays a random move in a chess game.',
17
-
18
- inputSchema: Schema.Struct({
19
- game: Type.Ref(Chess.Game).annotations({
13
+ const ChessBot = Operation.make({
14
+ meta: {
15
+ key: 'org.dxos.script.chess-bot',
16
+ name: 'Chess Bot',
17
+ description: 'Plays a random move in a chess game.',
18
+ },
19
+ input: Schema.Struct({
20
+ game: Ref.Ref(Chess.Game).annotations({
20
21
  description: 'The chess game to comment on.',
21
22
  }),
22
23
  player: Schema.optional(Schema.Literal('white', 'black')).annotations({
23
24
  description: 'The player to play the game as.',
24
25
  }),
25
26
  }),
26
-
27
- outputSchema: Schema.Struct({
27
+ output: Schema.Struct({
28
28
  state: Schema.String.annotations({
29
29
  description: 'The state of the game as an ASCII art board.',
30
30
  }),
31
31
  }),
32
-
33
32
  types: [Chess.Game],
34
33
  services: [Database.Service],
34
+ });
35
35
 
36
- handler: Effect.fnUntraced(function* ({ data: { game, player = 'black' } }) {
37
- const loadedGame = yield* Database.Service.load(game);
38
- const chess = new ChessJS();
39
- chess.loadPgn(loadedGame.pgn ?? '');
40
- if (chess.turn() !== (player === 'white' ? 'w' : 'b')) {
41
- return { state: chess.ascii() };
42
- }
43
-
44
- const moves = chess.moves({ verbose: true });
45
- const move = moves[Math.floor(Math.random() * moves.length)];
46
- if (!move) {
36
+ export default ChessBot.pipe(
37
+ Operation.withHandler(
38
+ Effect.fnUntraced(function* ({ game, player = 'black' }) {
39
+ const loadedGame = yield* Database.load(game);
40
+ const chess = new ChessJS();
41
+ chess.loadPgn(loadedGame.pgn ?? '');
42
+ if (chess.turn() !== (player === 'white' ? 'w' : 'b')) {
43
+ return { state: chess.ascii() };
44
+ }
45
+
46
+ const moves = chess.moves({ verbose: true });
47
+ const move = moves[Math.floor(Math.random() * moves.length)];
48
+ if (!move) {
49
+ return { state: chess.ascii() };
50
+ }
51
+
52
+ chess.move(move.san);
53
+ const newPgn = chess.pgn();
54
+ Obj.update(loadedGame, (loadedGame) => {
55
+ loadedGame.pgn = newPgn;
56
+ });
57
+ yield* Database.flush();
47
58
  return { state: chess.ascii() };
48
- }
49
-
50
- chess.move(move.san);
51
- const newPgn = chess.pgn();
52
- Obj.change(loadedGame, (g) => {
53
- g.pgn = newPgn;
54
- });
55
- yield* Database.Service.flush();
56
- return { state: chess.ascii() };
57
- }),
58
- });
59
+ }),
60
+ ),
61
+ );