@dxos/plugin-script 0.8.4-main.e8ec1fe → 0.8.4-main.effb148878

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 (555) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +15 -13
  3. package/dist/lib/neutral/DeploymentDialog-M3AFYQHC.mjs +114 -0
  4. package/dist/lib/neutral/DeploymentDialog-M3AFYQHC.mjs.map +7 -0
  5. package/dist/lib/{browser/NotebookContainer-RTESC4OV.mjs → neutral/NotebookArticle-NV4AHOOS.mjs} +245 -299
  6. package/dist/lib/neutral/NotebookArticle-NV4AHOOS.mjs.map +7 -0
  7. package/dist/lib/neutral/ScriptArticle-UBT27SB6.mjs +79 -0
  8. package/dist/lib/neutral/ScriptArticle-UBT27SB6.mjs.map +7 -0
  9. package/dist/lib/neutral/ScriptPlugin.mjs +39 -0
  10. package/dist/lib/neutral/ScriptPlugin.mjs.map +7 -0
  11. package/dist/lib/neutral/ScriptPlugin.node.mjs +27 -0
  12. package/dist/lib/neutral/ScriptPlugin.node.mjs.map +7 -0
  13. package/dist/lib/neutral/ScriptPlugin.workerd.mjs +21 -0
  14. package/dist/lib/neutral/ScriptPlugin.workerd.mjs.map +7 -0
  15. package/dist/lib/neutral/ScriptPluginSettings-T4JMUSHN.mjs +31 -0
  16. package/dist/lib/neutral/ScriptPluginSettings-T4JMUSHN.mjs.map +7 -0
  17. package/dist/lib/neutral/ScriptProperties-RLXNAN3N.mjs +297 -0
  18. package/dist/lib/neutral/ScriptProperties-RLXNAN3N.mjs.map +7 -0
  19. package/dist/lib/neutral/TestContainer-AFVTBYSJ.mjs +44 -0
  20. package/dist/lib/neutral/TestContainer-AFVTBYSJ.mjs.map +7 -0
  21. package/dist/lib/neutral/app-graph-builder-7AWFCEQF.mjs +52 -0
  22. package/dist/lib/neutral/app-graph-builder-7AWFCEQF.mjs.map +7 -0
  23. package/dist/lib/neutral/blueprint-definition-T33SBPP2.mjs +15 -0
  24. package/dist/lib/neutral/blueprint-definition-T33SBPP2.mjs.map +7 -0
  25. package/dist/lib/neutral/blueprints/index.mjs +10 -0
  26. package/dist/lib/neutral/capabilities/index.mjs +21 -0
  27. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  28. package/dist/lib/neutral/capabilities/node.mjs +17 -0
  29. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  30. package/dist/lib/neutral/chunk-2REUEDUA.mjs +56 -0
  31. package/dist/lib/neutral/chunk-2REUEDUA.mjs.map +7 -0
  32. package/dist/lib/neutral/chunk-4H6UOE5J.mjs +123 -0
  33. package/dist/lib/neutral/chunk-4H6UOE5J.mjs.map +7 -0
  34. package/dist/lib/neutral/chunk-6XGGYOY2.mjs +36 -0
  35. package/dist/lib/neutral/chunk-6XGGYOY2.mjs.map +7 -0
  36. package/dist/lib/neutral/chunk-GD5SNDAA.mjs +8 -0
  37. package/dist/lib/neutral/chunk-GD5SNDAA.mjs.map +7 -0
  38. package/dist/lib/neutral/chunk-GYQPDUTK.mjs +105 -0
  39. package/dist/lib/neutral/chunk-GYQPDUTK.mjs.map +7 -0
  40. package/dist/lib/neutral/chunk-HJ4BY42S.mjs +8 -0
  41. package/dist/lib/neutral/chunk-HJ4BY42S.mjs.map +7 -0
  42. package/dist/lib/neutral/chunk-VXDJH6OL.mjs +150 -0
  43. package/dist/lib/neutral/chunk-VXDJH6OL.mjs.map +7 -0
  44. package/dist/lib/neutral/chunk-WEIU4BCS.mjs +52 -0
  45. package/dist/lib/neutral/chunk-WEIU4BCS.mjs.map +7 -0
  46. package/dist/lib/neutral/chunk-Y3O3YZSE.mjs +345 -0
  47. package/dist/lib/neutral/chunk-Y3O3YZSE.mjs.map +7 -0
  48. package/dist/lib/neutral/compiler-ODK4UA2N.mjs +101 -0
  49. package/dist/lib/neutral/compiler-ODK4UA2N.mjs.map +7 -0
  50. package/dist/lib/neutral/components/index.mjs +722 -0
  51. package/dist/lib/neutral/components/index.mjs.map +7 -0
  52. package/dist/lib/neutral/containers/index.mjs +17 -0
  53. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  54. package/dist/lib/neutral/create-32MZYUAA.mjs +46 -0
  55. package/dist/lib/neutral/create-32MZYUAA.mjs.map +7 -0
  56. package/dist/lib/neutral/create-object-FZM5ASWM.mjs +45 -0
  57. package/dist/lib/neutral/create-object-FZM5ASWM.mjs.map +7 -0
  58. package/dist/lib/neutral/create-script-6HWJMXMD.mjs +45 -0
  59. package/dist/lib/neutral/create-script-6HWJMXMD.mjs.map +7 -0
  60. package/dist/lib/neutral/delete-475DHFZO.mjs +21 -0
  61. package/dist/lib/neutral/delete-475DHFZO.mjs.map +7 -0
  62. package/dist/lib/neutral/deploy-VMPGXUR2.mjs +63 -0
  63. package/dist/lib/neutral/deploy-VMPGXUR2.mjs.map +7 -0
  64. package/dist/lib/neutral/hooks/index.mjs +369 -0
  65. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  66. package/dist/lib/neutral/index.mjs +41 -0
  67. package/dist/lib/neutral/inspect-invocations-IHZDHE27.mjs +59 -0
  68. package/dist/lib/neutral/inspect-invocations-IHZDHE27.mjs.map +7 -0
  69. package/dist/lib/neutral/install-function-UJWJMTZY.mjs +49 -0
  70. package/dist/lib/neutral/install-function-UJWJMTZY.mjs.map +7 -0
  71. package/dist/lib/neutral/invoke-M7J6LRZB.mjs +32 -0
  72. package/dist/lib/neutral/invoke-M7J6LRZB.mjs.map +7 -0
  73. package/dist/lib/neutral/meta.json +1 -0
  74. package/dist/lib/neutral/meta.mjs +10 -0
  75. package/dist/lib/neutral/operation-handler-MOATB7ZI.mjs +18 -0
  76. package/dist/lib/neutral/operation-handler-MOATB7ZI.mjs.map +7 -0
  77. package/dist/lib/neutral/operations/index.mjs +8 -0
  78. package/dist/lib/neutral/plugin.mjs +16 -0
  79. package/dist/lib/neutral/plugin.mjs.map +7 -0
  80. package/dist/lib/neutral/query-deployed-functions-MZUBGLJG.mjs +34 -0
  81. package/dist/lib/neutral/query-deployed-functions-MZUBGLJG.mjs.map +7 -0
  82. package/dist/lib/neutral/react-surface-DPK6XU2Y.mjs +120 -0
  83. package/dist/lib/neutral/react-surface-DPK6XU2Y.mjs.map +7 -0
  84. package/dist/lib/neutral/read-LWLI7RB2.mjs +26 -0
  85. package/dist/lib/neutral/read-LWLI7RB2.mjs.map +7 -0
  86. package/dist/lib/neutral/settings-VJBW4OMK.mjs +30 -0
  87. package/dist/lib/neutral/settings-VJBW4OMK.mjs.map +7 -0
  88. package/dist/lib/{browser → neutral}/templates/index.mjs +1 -1
  89. package/dist/lib/neutral/translations.mjs +105 -0
  90. package/dist/lib/neutral/translations.mjs.map +7 -0
  91. package/dist/lib/neutral/types/index.mjs +17 -0
  92. package/dist/lib/neutral/update-HTFIQY2Z.mjs +63 -0
  93. package/dist/lib/neutral/update-HTFIQY2Z.mjs.map +7 -0
  94. package/dist/types/src/ScriptPlugin.d.ts +3 -1
  95. package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
  96. package/dist/types/src/ScriptPlugin.node.d.ts +4 -0
  97. package/dist/types/src/ScriptPlugin.node.d.ts.map +1 -0
  98. package/dist/types/src/ScriptPlugin.test.d.ts +2 -0
  99. package/dist/types/src/ScriptPlugin.test.d.ts.map +1 -0
  100. package/dist/types/src/ScriptPlugin.workerd.d.ts +4 -0
  101. package/dist/types/src/ScriptPlugin.workerd.d.ts.map +1 -0
  102. package/dist/types/src/blueprints/functions/create.d.ts +11 -0
  103. package/dist/types/src/blueprints/functions/create.d.ts.map +1 -0
  104. package/dist/types/src/blueprints/functions/definitions.d.ts +135 -0
  105. package/dist/types/src/blueprints/functions/definitions.d.ts.map +1 -0
  106. package/dist/types/src/blueprints/functions/delete.d.ts +17 -0
  107. package/dist/types/src/blueprints/functions/delete.d.ts.map +1 -0
  108. package/dist/types/src/blueprints/functions/deploy.d.ts +21 -0
  109. package/dist/types/src/blueprints/functions/deploy.d.ts.map +1 -0
  110. package/dist/types/src/blueprints/functions/index.d.ts +4 -0
  111. package/dist/types/src/blueprints/functions/index.d.ts.map +1 -0
  112. package/dist/types/src/blueprints/functions/inspect-invocations.d.ts +28 -0
  113. package/dist/types/src/blueprints/functions/inspect-invocations.d.ts.map +1 -0
  114. package/dist/types/src/blueprints/functions/install-function.d.ts +11 -0
  115. package/dist/types/src/blueprints/functions/install-function.d.ts.map +1 -0
  116. package/dist/types/src/blueprints/functions/invoke.d.ts +21 -0
  117. package/dist/types/src/blueprints/functions/invoke.d.ts.map +1 -0
  118. package/dist/types/src/blueprints/functions/query-deployed-functions.d.ts +13 -0
  119. package/dist/types/src/blueprints/functions/query-deployed-functions.d.ts.map +1 -0
  120. package/dist/types/src/blueprints/functions/read.d.ts +21 -0
  121. package/dist/types/src/blueprints/functions/read.d.ts.map +1 -0
  122. package/dist/types/src/blueprints/functions/update.d.ts +26 -0
  123. package/dist/types/src/blueprints/functions/update.d.ts.map +1 -0
  124. package/dist/types/src/blueprints/index.d.ts +2 -0
  125. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  126. package/dist/types/src/blueprints/script-blueprint.d.ts +4 -0
  127. package/dist/types/src/blueprints/script-blueprint.d.ts.map +1 -0
  128. package/dist/types/src/capabilities/app-graph-builder.d.ts +4 -2
  129. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  130. package/dist/types/src/capabilities/artifact-definition.d.ts +3 -2
  131. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -1
  132. package/dist/types/src/capabilities/blueprint-definition.d.ts +5 -4
  133. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -1
  134. package/dist/types/src/capabilities/compiler.d.ts +3 -1
  135. package/dist/types/src/capabilities/compiler.d.ts.map +1 -1
  136. package/dist/types/src/capabilities/create-object.d.ts +16 -0
  137. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  138. package/dist/types/src/capabilities/index.d.ts +19 -7
  139. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  140. package/dist/types/src/capabilities/node.d.ts +18 -0
  141. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  142. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  143. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  144. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  145. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  146. package/dist/types/src/capabilities/settings.d.ts +5 -2
  147. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  148. package/dist/types/src/compiler/compiler.d.ts +1 -1
  149. package/dist/types/src/compiler/compiler.d.ts.map +1 -1
  150. package/dist/types/src/components/{FrameContainer/FrameContainer.d.ts → FramePanel/FramePanel.d.ts} +3 -3
  151. package/dist/types/src/components/FramePanel/FramePanel.d.ts.map +1 -0
  152. package/dist/types/src/components/FramePanel/index.d.ts +2 -0
  153. package/dist/types/src/components/FramePanel/index.d.ts.map +1 -0
  154. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts +4 -4
  155. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts.map +1 -1
  156. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts +1 -1
  157. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts.map +1 -1
  158. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts +5 -3
  159. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts.map +1 -1
  160. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts +221 -226
  161. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts.map +1 -1
  162. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts +5 -0
  163. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts.map +1 -0
  164. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts +13 -0
  165. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts.map +1 -0
  166. package/dist/types/src/components/QueryEditor/index.d.ts +2 -0
  167. package/dist/types/src/components/QueryEditor/index.d.ts.map +1 -0
  168. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.d.ts +8 -0
  169. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.d.ts.map +1 -0
  170. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.stories.d.ts +241 -0
  171. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.stories.d.ts.map +1 -0
  172. package/dist/types/src/components/ScriptPluginSettings/index.d.ts +2 -0
  173. package/dist/types/src/components/ScriptPluginSettings/index.d.ts.map +1 -0
  174. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +8 -6
  175. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  176. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts +221 -226
  177. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts.map +1 -1
  178. package/dist/types/src/components/TestPanel/TestPanel.d.ts +4 -2
  179. package/dist/types/src/components/TestPanel/TestPanel.d.ts.map +1 -1
  180. package/dist/types/src/components/TestPanel/index.d.ts +0 -1
  181. package/dist/types/src/components/TestPanel/index.d.ts.map +1 -1
  182. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts +6 -2
  183. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts.map +1 -1
  184. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts +3 -1
  185. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts.map +1 -1
  186. package/dist/types/src/components/index.d.ts +6 -5
  187. package/dist/types/src/components/index.d.ts.map +1 -1
  188. package/dist/types/src/constants.d.ts +2 -0
  189. package/dist/types/src/constants.d.ts.map +1 -0
  190. package/dist/types/src/{components → containers}/DeploymentDialog/DeploymentDialog.d.ts +0 -2
  191. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.d.ts.map +1 -0
  192. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.stories.d.ts +240 -0
  193. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.stories.d.ts.map +1 -0
  194. package/dist/types/src/containers/DeploymentDialog/index.d.ts +2 -0
  195. package/dist/types/src/containers/DeploymentDialog/index.d.ts.map +1 -0
  196. package/dist/types/src/containers/NotebookArticle/NotebookArticle.d.ts +7 -0
  197. package/dist/types/src/containers/NotebookArticle/NotebookArticle.d.ts.map +1 -0
  198. package/dist/types/src/containers/NotebookArticle/NotebookArticle.stories.d.ts +7 -0
  199. package/dist/types/src/containers/NotebookArticle/NotebookArticle.stories.d.ts.map +1 -0
  200. package/dist/types/src/containers/NotebookArticle/index.d.ts +2 -0
  201. package/dist/types/src/containers/NotebookArticle/index.d.ts.map +1 -0
  202. package/dist/types/src/containers/ScriptArticle/ScriptArticle.d.ts +10 -0
  203. package/dist/types/src/containers/ScriptArticle/ScriptArticle.d.ts.map +1 -0
  204. package/dist/types/src/containers/ScriptArticle/ScriptArticle.stories.d.ts +242 -0
  205. package/dist/types/src/containers/ScriptArticle/ScriptArticle.stories.d.ts.map +1 -0
  206. package/dist/types/src/containers/ScriptArticle/index.d.ts +2 -0
  207. package/dist/types/src/containers/ScriptArticle/index.d.ts.map +1 -0
  208. package/dist/types/src/containers/ScriptProperties/BlueprintEditor.d.ts +7 -0
  209. package/dist/types/src/containers/ScriptProperties/BlueprintEditor.d.ts.map +1 -0
  210. package/dist/types/src/containers/ScriptProperties/FunctionBinding.d.ts +7 -0
  211. package/dist/types/src/containers/ScriptProperties/FunctionBinding.d.ts.map +1 -0
  212. package/dist/types/src/containers/ScriptProperties/FunctionPublishing.d.ts +7 -0
  213. package/dist/types/src/containers/ScriptProperties/FunctionPublishing.d.ts.map +1 -0
  214. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts +6 -0
  215. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts.map +1 -0
  216. package/dist/types/src/containers/ScriptProperties/ScriptProperties.stories.d.ts +242 -0
  217. package/dist/types/src/containers/ScriptProperties/ScriptProperties.stories.d.ts.map +1 -0
  218. package/dist/types/src/containers/ScriptProperties/index.d.ts +2 -0
  219. package/dist/types/src/containers/ScriptProperties/index.d.ts.map +1 -0
  220. package/dist/types/src/containers/TestContainer/TestContainer.d.ts +8 -0
  221. package/dist/types/src/containers/TestContainer/TestContainer.d.ts.map +1 -0
  222. package/dist/types/src/containers/TestContainer/index.d.ts +2 -0
  223. package/dist/types/src/containers/TestContainer/index.d.ts.map +1 -0
  224. package/dist/types/src/containers/index.d.ts +7 -0
  225. package/dist/types/src/containers/index.d.ts.map +1 -0
  226. package/dist/types/src/e2e/ai.test.d.ts +2 -0
  227. package/dist/types/src/e2e/ai.test.d.ts.map +1 -0
  228. package/dist/types/src/e2e/deploy.test.d.ts +2 -0
  229. package/dist/types/src/e2e/deploy.test.d.ts.map +1 -0
  230. package/dist/types/src/hooks/deploy.d.ts +24 -29
  231. package/dist/types/src/hooks/deploy.d.ts.map +1 -1
  232. package/dist/types/src/hooks/format.d.ts +4 -3
  233. package/dist/types/src/hooks/format.d.ts.map +1 -1
  234. package/dist/types/src/hooks/index.d.ts +1 -0
  235. package/dist/types/src/hooks/index.d.ts.map +1 -1
  236. package/dist/types/src/hooks/template.d.ts +4 -3
  237. package/dist/types/src/hooks/template.d.ts.map +1 -1
  238. package/dist/types/src/hooks/useCompiler.d.ts +7 -0
  239. package/dist/types/src/hooks/useCompiler.d.ts.map +1 -0
  240. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts.map +1 -1
  241. package/dist/types/src/hooks/useToolbarState.d.ts +8 -1
  242. package/dist/types/src/hooks/useToolbarState.d.ts.map +1 -1
  243. package/dist/types/src/index.d.ts +2 -3
  244. package/dist/types/src/index.d.ts.map +1 -1
  245. package/dist/types/src/meta.d.ts +2 -2
  246. package/dist/types/src/meta.d.ts.map +1 -1
  247. package/dist/types/src/notebook/compute-graph.d.ts +25 -12
  248. package/dist/types/src/notebook/compute-graph.d.ts.map +1 -1
  249. package/dist/types/src/notebook/eval.d.ts.map +1 -1
  250. package/dist/types/src/notebook/vfs-parser.d.ts.map +1 -1
  251. package/dist/types/src/operations/create-script.d.ts +5 -0
  252. package/dist/types/src/operations/create-script.d.ts.map +1 -0
  253. package/dist/types/src/operations/index.d.ts +3 -0
  254. package/dist/types/src/operations/index.d.ts.map +1 -0
  255. package/dist/types/src/plugin.d.ts +4 -0
  256. package/dist/types/src/plugin.d.ts.map +1 -0
  257. package/dist/types/src/templates/anthropic.d.ts +7 -0
  258. package/dist/types/src/templates/anthropic.d.ts.map +1 -0
  259. package/dist/types/src/templates/chat.d.ts.map +1 -1
  260. package/dist/types/src/templates/chess-bot.d.ts +14 -0
  261. package/dist/types/src/templates/chess-bot.d.ts.map +1 -0
  262. package/dist/types/src/templates/commentary.d.ts +15 -0
  263. package/dist/types/src/templates/commentary.d.ts.map +1 -0
  264. package/dist/types/src/templates/data-generator.d.ts.map +1 -1
  265. package/dist/types/src/templates/discord.d.ts.map +1 -1
  266. package/dist/types/src/templates/email.d.ts.map +1 -1
  267. package/dist/types/src/templates/forex-effect.d.ts +5 -1
  268. package/dist/types/src/templates/forex-effect.d.ts.map +1 -1
  269. package/dist/types/src/templates/forex.d.ts +5 -1
  270. package/dist/types/src/templates/forex.d.ts.map +1 -1
  271. package/dist/types/src/templates/gmail.d.ts.map +1 -1
  272. package/dist/types/src/templates/index.d.ts +33 -24
  273. package/dist/types/src/templates/index.d.ts.map +1 -1
  274. package/dist/types/src/templates/ping.d.ts +2 -4
  275. package/dist/types/src/templates/ping.d.ts.map +1 -1
  276. package/dist/types/src/testing/index.d.ts +2 -1
  277. package/dist/types/src/testing/index.d.ts.map +1 -1
  278. package/dist/types/src/testing/simulator.test.d.ts +2 -0
  279. package/dist/types/src/testing/simulator.test.d.ts.map +1 -0
  280. package/dist/types/src/testing/test-notebook.d.ts +3 -0
  281. package/dist/types/src/testing/test-notebook.d.ts.map +1 -0
  282. package/dist/types/src/testing/test-script.d.ts +7 -0
  283. package/dist/types/src/testing/test-script.d.ts.map +1 -0
  284. package/dist/types/src/translations.d.ts +222 -90
  285. package/dist/types/src/translations.d.ts.map +1 -1
  286. package/dist/types/src/types/Notebook.d.ts +110 -24
  287. package/dist/types/src/types/Notebook.d.ts.map +1 -1
  288. package/dist/types/src/types/ScriptCapabilities.d.ts +6 -0
  289. package/dist/types/src/types/ScriptCapabilities.d.ts.map +1 -0
  290. package/dist/types/src/types/ScriptEvents.d.ts +3 -0
  291. package/dist/types/src/types/ScriptEvents.d.ts.map +1 -0
  292. package/dist/types/src/types/ScriptOperation.d.ts +29 -0
  293. package/dist/types/src/types/ScriptOperation.d.ts.map +1 -0
  294. package/dist/types/src/types/Settings.d.ts +7 -0
  295. package/dist/types/src/types/Settings.d.ts.map +1 -0
  296. package/dist/types/src/types/index.d.ts +4 -2
  297. package/dist/types/src/types/index.d.ts.map +1 -1
  298. package/dist/types/src/types/types.d.ts +1 -5
  299. package/dist/types/src/types/types.d.ts.map +1 -1
  300. package/dist/types/src/util/deploy.d.ts +2 -2
  301. package/dist/types/src/util/deploy.d.ts.map +1 -1
  302. package/dist/types/src/util/functions.d.ts +2 -2
  303. package/dist/types/src/util/functions.d.ts.map +1 -1
  304. package/dist/types/tsconfig.tsbuildinfo +1 -1
  305. package/package.json +185 -107
  306. package/src/ScriptPlugin.node.ts +21 -0
  307. package/src/ScriptPlugin.test.ts +31 -0
  308. package/src/ScriptPlugin.tsx +24 -94
  309. package/src/ScriptPlugin.workerd.ts +18 -0
  310. package/src/blueprints/functions/create.ts +47 -0
  311. package/src/blueprints/functions/definitions.ts +332 -0
  312. package/src/blueprints/functions/delete.ts +23 -0
  313. package/src/blueprints/functions/deploy.ts +71 -0
  314. package/src/blueprints/functions/index.ts +19 -0
  315. package/src/blueprints/functions/inspect-invocations.ts +56 -0
  316. package/src/blueprints/functions/install-function.ts +56 -0
  317. package/src/blueprints/functions/invoke.ts +34 -0
  318. package/src/blueprints/functions/query-deployed-functions.ts +35 -0
  319. package/src/blueprints/functions/read.ts +29 -0
  320. package/src/blueprints/functions/update.ts +68 -0
  321. package/src/blueprints/index.ts +5 -0
  322. package/src/blueprints/script-blueprint.ts +55 -0
  323. package/src/capabilities/app-graph-builder.ts +40 -58
  324. package/src/capabilities/artifact-definition.ts +99 -97
  325. package/src/capabilities/blueprint-definition.ts +13 -24
  326. package/src/capabilities/compiler.ts +99 -22
  327. package/src/capabilities/create-object.ts +49 -0
  328. package/src/capabilities/index.ts +13 -9
  329. package/src/capabilities/node.ts +16 -0
  330. package/src/capabilities/operation-handler.ts +21 -0
  331. package/src/capabilities/react-surface.tsx +120 -93
  332. package/src/capabilities/settings.ts +26 -14
  333. package/src/compiler/compiler.ts +21 -3
  334. package/src/components/{FrameContainer/FrameContainer.tsx → FramePanel/FramePanel.tsx} +7 -6
  335. package/src/components/{FrameContainer → FramePanel}/index.ts +1 -1
  336. package/src/components/NotebookStack/NotebookCell.tsx +45 -33
  337. package/src/components/NotebookStack/NotebookMenu.tsx +7 -7
  338. package/src/components/NotebookStack/NotebookStack.stories.tsx +24 -25
  339. package/src/components/NotebookStack/NotebookStack.tsx +31 -20
  340. package/src/components/QueryEditor/QueryEditor.stories.tsx +96 -0
  341. package/src/components/QueryEditor/QueryEditor.tsx +49 -0
  342. package/src/components/QueryEditor/index.ts +5 -0
  343. package/src/components/ScriptPluginSettings/ScriptPluginSettings.stories.tsx +32 -0
  344. package/src/components/ScriptPluginSettings/ScriptPluginSettings.tsx +42 -0
  345. package/src/components/ScriptPluginSettings/index.ts +5 -0
  346. package/src/components/ScriptToolbar/ScriptToolbar.stories.tsx +42 -20
  347. package/src/components/ScriptToolbar/ScriptToolbar.tsx +38 -43
  348. package/src/components/TestPanel/TestPanel.tsx +111 -194
  349. package/src/components/TestPanel/index.ts +0 -1
  350. package/src/components/TypescriptEditor/TypescriptEditor.stories.tsx +25 -18
  351. package/src/components/TypescriptEditor/TypescriptEditor.tsx +74 -66
  352. package/src/components/index.ts +6 -7
  353. package/src/constants.ts +7 -0
  354. package/src/containers/DeploymentDialog/DeploymentDialog.stories.tsx +63 -0
  355. package/src/containers/DeploymentDialog/DeploymentDialog.tsx +99 -0
  356. package/src/containers/DeploymentDialog/index.ts +5 -0
  357. package/src/containers/NotebookArticle/NotebookArticle.stories.tsx +85 -0
  358. package/src/containers/NotebookArticle/NotebookArticle.tsx +255 -0
  359. package/src/containers/NotebookArticle/index.ts +5 -0
  360. package/src/containers/ScriptArticle/ScriptArticle.stories.tsx +107 -0
  361. package/src/containers/ScriptArticle/ScriptArticle.tsx +85 -0
  362. package/src/containers/ScriptArticle/index.ts +5 -0
  363. package/src/containers/ScriptProperties/BlueprintEditor.tsx +102 -0
  364. package/src/containers/ScriptProperties/FunctionBinding.tsx +83 -0
  365. package/src/containers/ScriptProperties/FunctionPublishing.tsx +121 -0
  366. package/src/containers/ScriptProperties/ScriptProperties.stories.tsx +76 -0
  367. package/src/containers/ScriptProperties/ScriptProperties.tsx +24 -0
  368. package/src/containers/ScriptProperties/index.ts +5 -0
  369. package/src/containers/TestContainer/TestContainer.tsx +44 -0
  370. package/src/containers/TestContainer/index.ts +5 -0
  371. package/src/containers/index.ts +11 -0
  372. package/src/e2e/ai.test.ts +93 -0
  373. package/src/e2e/deploy.test.ts +66 -0
  374. package/src/hooks/deploy.ts +45 -35
  375. package/src/hooks/format.ts +9 -4
  376. package/src/hooks/index.ts +1 -0
  377. package/src/hooks/template.ts +19 -12
  378. package/src/hooks/useCompiler.ts +25 -0
  379. package/src/hooks/useCreateAndDeployScriptTemplates.ts +15 -20
  380. package/src/hooks/useToolbarState.ts +29 -4
  381. package/src/index.ts +2 -4
  382. package/src/meta.ts +11 -6
  383. package/src/notebook/compute-graph.test.ts +21 -9
  384. package/src/notebook/compute-graph.ts +46 -22
  385. package/src/notebook/vfs-parser.ts +10 -3
  386. package/src/operations/create-script.ts +46 -0
  387. package/src/operations/index.ts +7 -0
  388. package/src/plugin.ts +11 -0
  389. package/src/templates/anthropic.ts +49 -0
  390. package/src/templates/chat.ts +1 -1
  391. package/src/templates/chess-bot.ts +63 -0
  392. package/src/templates/commentary.ts +248 -0
  393. package/src/templates/data-generator.ts +2 -2
  394. package/src/templates/discord.ts +5 -5
  395. package/src/templates/forex-effect.ts +35 -29
  396. package/src/templates/forex.ts +27 -17
  397. package/src/templates/gmail.ts +6 -6
  398. package/src/templates/index.ts +31 -18
  399. package/src/templates/ping.ts +22 -5
  400. package/src/testing/index.ts +2 -1
  401. package/src/testing/simulator.test.ts +39 -0
  402. package/src/testing/{data.ts → test-notebook.ts} +12 -13
  403. package/src/testing/test-script.ts +28 -0
  404. package/src/translations.ts +89 -87
  405. package/src/types/Notebook.ts +20 -19
  406. package/src/types/ScriptCapabilities.ts +18 -0
  407. package/src/types/ScriptEvents.ts +11 -0
  408. package/src/types/ScriptOperation.ts +42 -0
  409. package/src/types/Settings.ts +20 -0
  410. package/src/types/index.ts +5 -2
  411. package/src/types/types.ts +1 -11
  412. package/src/util/deploy.ts +29 -33
  413. package/src/util/functions.ts +32 -28
  414. package/src/vite-env.d.ts +2 -0
  415. package/dist/lib/browser/DeploymentDialog-MZX4T77L.mjs +0 -14
  416. package/dist/lib/browser/NotebookContainer-RTESC4OV.mjs.map +0 -7
  417. package/dist/lib/browser/ScriptContainer-T2BAZDJ4.mjs +0 -147
  418. package/dist/lib/browser/ScriptContainer-T2BAZDJ4.mjs.map +0 -7
  419. package/dist/lib/browser/app-graph-builder-2WR2ATTJ.mjs +0 -66
  420. package/dist/lib/browser/app-graph-builder-2WR2ATTJ.mjs.map +0 -7
  421. package/dist/lib/browser/blueprint-definition-6PZWZM2Y.mjs +0 -30
  422. package/dist/lib/browser/blueprint-definition-6PZWZM2Y.mjs.map +0 -7
  423. package/dist/lib/browser/chunk-2G2NA6DQ.mjs +0 -88
  424. package/dist/lib/browser/chunk-2G2NA6DQ.mjs.map +0 -7
  425. package/dist/lib/browser/chunk-3IJASGG5.mjs +0 -155
  426. package/dist/lib/browser/chunk-3IJASGG5.mjs.map +0 -7
  427. package/dist/lib/browser/chunk-4M7U2WVT.mjs +0 -304
  428. package/dist/lib/browser/chunk-4M7U2WVT.mjs.map +0 -7
  429. package/dist/lib/browser/chunk-5JSNQYZZ.mjs +0 -517
  430. package/dist/lib/browser/chunk-5JSNQYZZ.mjs.map +0 -7
  431. package/dist/lib/browser/chunk-EB6AXFXO.mjs +0 -31
  432. package/dist/lib/browser/chunk-EB6AXFXO.mjs.map +0 -7
  433. package/dist/lib/browser/chunk-GAFCKEII.mjs +0 -646
  434. package/dist/lib/browser/chunk-GAFCKEII.mjs.map +0 -7
  435. package/dist/lib/browser/chunk-LNNCD2H4.mjs +0 -102
  436. package/dist/lib/browser/chunk-LNNCD2H4.mjs.map +0 -7
  437. package/dist/lib/browser/chunk-M6KJPUJK.mjs +0 -111
  438. package/dist/lib/browser/chunk-M6KJPUJK.mjs.map +0 -7
  439. package/dist/lib/browser/chunk-UOQ6NCH3.mjs +0 -15
  440. package/dist/lib/browser/chunk-UOQ6NCH3.mjs.map +0 -7
  441. package/dist/lib/browser/compiler-4KHRSX7J.mjs +0 -86
  442. package/dist/lib/browser/compiler-4KHRSX7J.mjs.map +0 -7
  443. package/dist/lib/browser/index.mjs +0 -273
  444. package/dist/lib/browser/index.mjs.map +0 -7
  445. package/dist/lib/browser/intent-resolver-AFJ575VK.mjs +0 -104
  446. package/dist/lib/browser/intent-resolver-AFJ575VK.mjs.map +0 -7
  447. package/dist/lib/browser/meta.json +0 -1
  448. package/dist/lib/browser/react-surface-QEQ3QUQA.mjs +0 -128
  449. package/dist/lib/browser/react-surface-QEQ3QUQA.mjs.map +0 -7
  450. package/dist/lib/browser/settings-LNLSTZM4.mjs +0 -26
  451. package/dist/lib/browser/settings-LNLSTZM4.mjs.map +0 -7
  452. package/dist/lib/browser/types/index.mjs +0 -14
  453. package/dist/lib/node-esm/DeploymentDialog-GL5AUWMR.mjs +0 -15
  454. package/dist/lib/node-esm/NotebookContainer-SVD3A3D6.mjs +0 -818
  455. package/dist/lib/node-esm/NotebookContainer-SVD3A3D6.mjs.map +0 -7
  456. package/dist/lib/node-esm/ScriptContainer-2CE3H3JJ.mjs +0 -148
  457. package/dist/lib/node-esm/ScriptContainer-2CE3H3JJ.mjs.map +0 -7
  458. package/dist/lib/node-esm/app-graph-builder-NCVLUL5R.mjs +0 -67
  459. package/dist/lib/node-esm/app-graph-builder-NCVLUL5R.mjs.map +0 -7
  460. package/dist/lib/node-esm/blueprint-definition-5R6YCSZZ.mjs +0 -31
  461. package/dist/lib/node-esm/blueprint-definition-5R6YCSZZ.mjs.map +0 -7
  462. package/dist/lib/node-esm/chunk-55JZVM6K.mjs +0 -16
  463. package/dist/lib/node-esm/chunk-55JZVM6K.mjs.map +0 -7
  464. package/dist/lib/node-esm/chunk-57JA6XL5.mjs +0 -90
  465. package/dist/lib/node-esm/chunk-57JA6XL5.mjs.map +0 -7
  466. package/dist/lib/node-esm/chunk-HDKR5WCD.mjs +0 -113
  467. package/dist/lib/node-esm/chunk-HDKR5WCD.mjs.map +0 -7
  468. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  469. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +0 -7
  470. package/dist/lib/node-esm/chunk-IBV2DR36.mjs +0 -33
  471. package/dist/lib/node-esm/chunk-IBV2DR36.mjs.map +0 -7
  472. package/dist/lib/node-esm/chunk-IQTBVH4L.mjs +0 -518
  473. package/dist/lib/node-esm/chunk-IQTBVH4L.mjs.map +0 -7
  474. package/dist/lib/node-esm/chunk-KJKZ4KNO.mjs +0 -647
  475. package/dist/lib/node-esm/chunk-KJKZ4KNO.mjs.map +0 -7
  476. package/dist/lib/node-esm/chunk-NNHWLRHT.mjs +0 -103
  477. package/dist/lib/node-esm/chunk-NNHWLRHT.mjs.map +0 -7
  478. package/dist/lib/node-esm/chunk-RIE676OW.mjs +0 -156
  479. package/dist/lib/node-esm/chunk-RIE676OW.mjs.map +0 -7
  480. package/dist/lib/node-esm/chunk-YRTA4EHU.mjs +0 -305
  481. package/dist/lib/node-esm/chunk-YRTA4EHU.mjs.map +0 -7
  482. package/dist/lib/node-esm/compiler-DU5NQISX.mjs +0 -87
  483. package/dist/lib/node-esm/compiler-DU5NQISX.mjs.map +0 -7
  484. package/dist/lib/node-esm/index.mjs +0 -274
  485. package/dist/lib/node-esm/index.mjs.map +0 -7
  486. package/dist/lib/node-esm/intent-resolver-A5VVK746.mjs +0 -105
  487. package/dist/lib/node-esm/intent-resolver-A5VVK746.mjs.map +0 -7
  488. package/dist/lib/node-esm/meta.json +0 -1
  489. package/dist/lib/node-esm/react-surface-U77YT7VF.mjs +0 -129
  490. package/dist/lib/node-esm/react-surface-U77YT7VF.mjs.map +0 -7
  491. package/dist/lib/node-esm/settings-IUFMOCXY.mjs +0 -27
  492. package/dist/lib/node-esm/settings-IUFMOCXY.mjs.map +0 -7
  493. package/dist/lib/node-esm/templates/index.mjs +0 -11
  494. package/dist/lib/node-esm/types/index.mjs +0 -15
  495. package/dist/types/src/capabilities/capabilities.d.ts +0 -5
  496. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  497. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  498. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  499. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts.map +0 -1
  500. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts +0 -248
  501. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts.map +0 -1
  502. package/dist/types/src/components/DeploymentDialog/index.d.ts +0 -4
  503. package/dist/types/src/components/DeploymentDialog/index.d.ts.map +0 -1
  504. package/dist/types/src/components/FrameContainer/FrameContainer.d.ts.map +0 -1
  505. package/dist/types/src/components/FrameContainer/frame.d.ts +0 -2
  506. package/dist/types/src/components/FrameContainer/frame.d.ts.map +0 -1
  507. package/dist/types/src/components/FrameContainer/index.d.ts +0 -2
  508. package/dist/types/src/components/FrameContainer/index.d.ts.map +0 -1
  509. package/dist/types/src/components/NotebookContainer.d.ts +0 -10
  510. package/dist/types/src/components/NotebookContainer.d.ts.map +0 -1
  511. package/dist/types/src/components/NotebookContainer.stories.d.ts +0 -251
  512. package/dist/types/src/components/NotebookContainer.stories.d.ts.map +0 -1
  513. package/dist/types/src/components/ScriptContainer.d.ts +0 -12
  514. package/dist/types/src/components/ScriptContainer.d.ts.map +0 -1
  515. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts +0 -8
  516. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts.map +0 -1
  517. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts +0 -6
  518. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts.map +0 -1
  519. package/dist/types/src/components/Settings/index.d.ts +0 -3
  520. package/dist/types/src/components/Settings/index.d.ts.map +0 -1
  521. package/dist/types/src/components/TestPanel/TestContainer.d.ts +0 -8
  522. package/dist/types/src/components/TestPanel/TestContainer.d.ts.map +0 -1
  523. package/dist/types/src/events.d.ts +0 -4
  524. package/dist/types/src/events.d.ts.map +0 -1
  525. package/dist/types/src/templates/chess.d.ts +0 -3
  526. package/dist/types/src/templates/chess.d.ts.map +0 -1
  527. package/dist/types/src/testing/data.d.ts +0 -3
  528. package/dist/types/src/testing/data.d.ts.map +0 -1
  529. package/dist/types/src/types/actions.d.ts +0 -54
  530. package/dist/types/src/types/actions.d.ts.map +0 -1
  531. package/src/capabilities/capabilities.ts +0 -12
  532. package/src/capabilities/intent-resolver.ts +0 -86
  533. package/src/components/DeploymentDialog/DeploymentDialog.stories.tsx +0 -58
  534. package/src/components/DeploymentDialog/DeploymentDialog.tsx +0 -123
  535. package/src/components/DeploymentDialog/index.ts +0 -9
  536. package/src/components/FrameContainer/frame.html +0 -25
  537. package/src/components/FrameContainer/frame.tsx +0 -51
  538. package/src/components/NotebookContainer.stories.tsx +0 -83
  539. package/src/components/NotebookContainer.tsx +0 -263
  540. package/src/components/ScriptContainer.tsx +0 -69
  541. package/src/components/Settings/ScriptObjectSettings.tsx +0 -297
  542. package/src/components/Settings/ScriptPluginSettings.tsx +0 -61
  543. package/src/components/Settings/index.ts +0 -6
  544. package/src/components/TestPanel/TestContainer.tsx +0 -27
  545. package/src/events.ts +0 -11
  546. package/src/templates/chess.ts +0 -49
  547. package/src/types/actions.ts +0 -53
  548. /package/dist/lib/{browser/templates → neutral/blueprints}/index.mjs.map +0 -0
  549. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  550. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs.map +0 -0
  551. /package/dist/lib/{browser/types → neutral}/index.mjs.map +0 -0
  552. /package/dist/lib/{browser/DeploymentDialog-MZX4T77L.mjs.map → neutral/meta.mjs.map} +0 -0
  553. /package/dist/lib/{node-esm/templates → neutral/operations}/index.mjs.map +0 -0
  554. /package/dist/lib/{node-esm/types → neutral/templates}/index.mjs.map +0 -0
  555. /package/dist/lib/{node-esm/DeploymentDialog-GL5AUWMR.mjs.map → neutral/types/index.mjs.map} +0 -0
@@ -2,51 +2,50 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { Prompt } from '@dxos/blueprints';
6
- import { Ref } from '@dxos/echo';
5
+ import { Routine } from '@dxos/compute';
6
+ import { Ref, Type } from '@dxos/echo';
7
7
  import { createObject } from '@dxos/echo-db';
8
8
  import { PublicKey } from '@dxos/keys';
9
- import { Markdown } from '@dxos/plugin-markdown/types';
9
+ import { Markdown } from '@dxos/plugin-markdown';
10
10
  import { Text } from '@dxos/schema';
11
11
 
12
- import { Notebook } from '../types';
12
+ import { Notebook } from '#types';
13
13
 
14
14
  // TODO(burdon): NOTE: createObject is required for tests.
15
-
16
15
  export const createNotebook = (): Notebook.Notebook =>
17
16
  Notebook.make({
18
17
  cells: [
19
18
  {
20
19
  id: PublicKey.random().toString(),
21
20
  type: 'script',
22
- source: Ref.make(createObject(Text.make('c = a() + b'))),
21
+ source: Ref.make(createObject(Text.make({ content: 'c = a() + b' }))),
23
22
  },
24
23
  {
25
24
  id: PublicKey.random().toString(),
26
25
  type: 'script',
27
- source: Ref.make(createObject(Text.make('a = () => 100'))),
26
+ source: Ref.make(createObject(Text.make({ content: 'a = () => 100' }))),
28
27
  },
29
28
  {
30
29
  id: PublicKey.random().toString(),
31
30
  type: 'script',
32
- source: Ref.make(createObject(Text.make('b = 200'))),
31
+ source: Ref.make(createObject(Text.make({ content: 'b = 200' }))),
33
32
  },
34
33
  {
35
34
  id: PublicKey.random().toString(),
36
35
  type: 'script',
37
- source: Ref.make(createObject(Text.make('d = a() * 2'))),
36
+ source: Ref.make(createObject(Text.make({ content: 'd = a() * 2' }))),
38
37
  },
39
38
  {
40
39
  id: PublicKey.random().toString(),
41
40
  type: 'script',
42
- source: Ref.make(createObject(Text.make('c + d'))),
41
+ source: Ref.make(createObject(Text.make({ content: 'c + d' }))),
43
42
  },
44
43
  {
45
44
  id: PublicKey.random().toString(),
46
45
  type: 'prompt',
47
46
  prompt: Ref.make(
48
47
  createObject(
49
- Prompt.make({
48
+ Routine.make({
50
49
  instructions: 'Very briefly, what colors are associated with the numbers {{a}} and {{b}}.',
51
50
  }),
52
51
  ),
@@ -55,14 +54,14 @@ export const createNotebook = (): Notebook.Notebook =>
55
54
  {
56
55
  id: PublicKey.random().toString(),
57
56
  type: 'query',
58
- source: Ref.make(createObject(Text.make(`docs = (type: ${Markdown.Document.typename})`))),
57
+ source: Ref.make(createObject(Text.make({ content: `docs = (type: ${Type.getTypename(Markdown.Document)})` }))),
59
58
  },
60
59
  {
61
60
  id: PublicKey.random().toString(),
62
61
  type: 'prompt',
63
62
  prompt: Ref.make(
64
63
  createObject(
65
- Prompt.make({
64
+ Routine.make({
66
65
  instructions: 'Very briefly, summarize the documents: {{docs}}',
67
66
  }),
68
67
  ),
@@ -0,0 +1,28 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import { Script, Operation } from '@dxos/compute';
6
+ import { Obj, Ref } from '@dxos/echo';
7
+ import { type Space } from '@dxos/react-client/echo';
8
+
9
+ /**
10
+ * Seeds a script and linked persistent operation for Storybook stories.
11
+ */
12
+ export const createScript = (space: Space): Script.Script => {
13
+ const script = Script.make({
14
+ name: 'Test',
15
+ source: 'export default () => 42;',
16
+ });
17
+
18
+ space.db.add(script);
19
+ space.db.add(
20
+ Obj.make(Operation.PersistentOperation, {
21
+ [Obj.Meta]: { key: 'org.dxos.script.story-fn', version: '0.1.0' },
22
+ name: 'Test',
23
+ source: Ref.make(script),
24
+ }),
25
+ );
26
+
27
+ return script;
28
+ };
@@ -2,105 +2,107 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { Script } from '@dxos/functions';
5
+ import { Script } from '@dxos/compute';
6
+ import { Type } from '@dxos/echo';
6
7
  import { type Resource } from '@dxos/react-ui';
7
8
 
8
- import { meta } from './meta';
9
- import { Notebook } from './types';
9
+ import { meta } from '#meta';
10
+ import { Notebook } from '#types';
10
11
 
11
12
  export const translations = [
12
13
  {
13
14
  'en-US': {
14
- [Script.Script.typename]: {
15
- 'typename label': 'Script',
16
- 'typename label_zero': 'Scripts',
17
- 'typename label_one': 'Script',
18
- 'typename label_other': 'Scripts',
19
- 'object name placeholder': 'New script',
20
- 'rename object label': 'Rename script',
21
- 'delete object label': 'Delete script',
15
+ [Type.getTypename(Script.Script)]: {
16
+ 'typename.label': 'Script',
17
+ 'typename.label_zero': 'Scripts',
18
+ 'typename.label_one': 'Script',
19
+ 'typename.label_other': 'Scripts',
20
+ 'object-name.placeholder': 'New script',
21
+ 'add-object.label': 'Add script',
22
+ 'rename-object.label': 'Rename script',
23
+ 'delete-object.label': 'Delete script',
24
+ 'object-deleted.label': 'Script deleted',
22
25
  },
23
- [Notebook.Notebook.typename]: {
24
- 'typename label': 'Notebook',
25
- 'typename label_zero': 'Notebooks',
26
- 'typename label_one': 'Notebook',
27
- 'typename label_other': 'Notebooks',
28
- 'object name placeholder': 'New notebook',
29
- 'rename object label': 'Rename notebook',
30
- 'delete object label': 'Delete notebook',
26
+ [Type.getTypename(Notebook.Notebook)]: {
27
+ 'typename.label': 'Notebook',
28
+ 'typename.label_zero': 'Notebooks',
29
+ 'typename.label_one': 'Notebook',
30
+ 'typename.label_other': 'Notebooks',
31
+ 'object-name.placeholder': 'New notebook',
32
+ 'add-object.label': 'Add notebook',
33
+ 'rename-object.label': 'Rename notebook',
34
+ 'delete-object.label': 'Delete notebook',
35
+ 'object-deleted.label': 'Notebook deleted',
31
36
  },
32
37
  [meta.id]: {
33
- 'plugin name': 'Scripts',
34
- 'settings title': 'Scripts plugin settings',
35
- 'description label': 'Description',
36
- 'description placeholder': 'Enter description',
37
- 'binding placeholder': 'Function name',
38
- 'function request placeholder': 'Function request',
39
- 'deploy label': 'Deploy',
40
- 'deployed label': 'Current version of the script is deployed',
41
- 'upload failed label': 'Upload failed',
42
- 'copy link label': 'Copy function link',
43
- 'format label': 'Format',
44
- 'toggle details label': 'Toggle details panel',
45
- 'authenticate action label': 'Authenticate functions service',
46
- 'authenticate button label': 'Authenticate',
47
- 'name label': 'Name',
48
- 'remote function settings heading': 'Remote Function',
49
- 'function url label': 'Invocation URL',
50
- 'function binding label': 'Function binding',
51
- 'function binding placeholder': 'Enter binding name (e.g., NAME)',
52
- 'script publish settings label': 'Publishing',
53
- 'script publish settings description': 'Scripts can be shared publicly as Github gists.',
54
- 'no github token label': 'This space has no GitHub access token available.',
55
- 'open token manager label': 'Open Token Manager',
56
- 'publish label': 'Publish',
57
- 'publishing label': 'Publishing',
58
- 'blueprint editor label': 'Blueprint',
59
- 'blueprint editor description': 'Create a blueprint that exposes this script as a tool.',
60
- 'blueprint instructions label': 'Instructions',
61
- 'blueprint instructions placeholder': 'Describe how this tool should be used.',
62
- 'create blueprint label': 'Create blueprint',
63
- 'creating label': 'Creating…',
64
- 'editor input mode label': 'Editor input mode',
65
- 'select editor input mode placeholder': 'Select editor input mode…',
66
- 'settings editor input mode default label': 'Default',
67
- 'settings editor input mode vim label': 'Vim',
68
- 'settings editor input mode vscode label': 'VS Code',
69
- 'function panel label': 'Debug Function',
70
- 'script test label': 'Test',
71
- 'script logs label': 'Logs',
38
+ 'plugin.name': 'Scripts',
39
+ 'settings.title': 'Scripts settings',
40
+ 'description.label': 'Description',
41
+ 'description.placeholder': 'Enter description',
42
+ 'binding.placeholder': 'Function name',
43
+ 'function-request.placeholder': 'Function request',
44
+ 'deploy.label': 'Deploy',
45
+ 'deployed.label': 'Current version of the script is deployed',
46
+ 'upload-failed.label': 'Upload failed',
47
+ 'copy-link.label': 'Copy function link',
48
+ 'format.label': 'Format',
49
+ 'toggle-details.label': 'Toggle details panel',
50
+ 'authenticate-action.label': 'Authenticate functions service',
51
+ 'authenticate-action.description':
52
+ 'Sign in to the remote functions service to enable script deployment and execution.',
53
+ 'authenticate-button.label': 'Authenticate',
54
+ 'name.label': 'Name',
55
+ 'remote-function-settings.heading': 'Remote Function',
56
+ 'function-url.label': 'Invocation URL',
57
+ 'function-binding.label': 'Function binding',
58
+ 'function-binding.placeholder': 'Enter binding name (e.g., NAME)',
59
+ 'script-publish-settings.label': 'Publishing',
60
+ 'script-publish-settings.description': 'Scripts can be shared publicly as Github gists.',
61
+ 'no-github-token.label': 'This space has no GitHub access token available.',
62
+ 'open-token-manager.label': 'Open Token Manager',
63
+ 'publish.label': 'Publish',
64
+ 'blueprint-editor.label': 'Blueprint',
65
+ 'blueprint-editor.description': 'Create a blueprint that exposes this script as a tool.',
66
+ 'blueprint-instructions.label': 'Instructions',
67
+ 'blueprint-instructions.placeholder': 'Describe how this tool should be used.',
68
+ 'create-blueprint.label': 'Create blueprint',
69
+ 'update-blueprint.label': 'Update blueprint',
70
+ 'function-panel.label': 'Debug Function',
71
+ 'script-test.label': 'Test',
72
+ 'script-logs.label': 'Logs',
73
+ 'compute.label': 'Compute',
72
74
 
73
- 'deployment dialog title': 'Default Scripts',
74
- 'deployment dialog scripts found message': 'Script templates:',
75
- 'deployment dialog deploy functions button label_one': 'Create and deploy script',
76
- 'deployment dialog deploy functions button label_other': 'Create and deploy scripts',
77
- 'deployment dialog deploy functions pending button label_one': 'Deploying script',
78
- 'deployment dialog deploy functions pending button label_other': 'Deploying scripts',
79
- 'deployment dialog skip button label': 'Skip',
75
+ 'deployment-dialog.title': 'Default Scripts',
76
+ 'deployment-dialog-scripts-found.message': 'Script templates:',
77
+ 'deployment-dialog-deploy-functions-button.label_one': 'Create and deploy script',
78
+ 'deployment-dialog-deploy-functions-button.label_other': 'Create and deploy scripts',
79
+ 'deployment-dialog-deploy-functions-pending-button.label_one': 'Deploying script',
80
+ 'deployment-dialog-deploy-functions-pending-button.label_other': 'Deploying scripts',
81
+ 'deployment-dialog-skip-button.label': 'Skip',
80
82
 
81
- 'script deployment toast label_one': 'Script deployed',
82
- 'script deployment toast label_other': 'Scripts deployed',
83
- 'script deployment toast description_one': 'Your script has been deployed successfully.',
84
- 'script deployment toast description_other': 'Your scripts have been deployed successfully.',
85
- 'script deployment toast close label_one': 'Close',
86
- 'script deployment toast close label_other': 'Close',
87
- 'script deployment error toast label_one': 'Script deployment failed',
88
- 'script deployment error toast label_other': 'Scripts deployment failed',
89
- 'script deployment error toast description_one': 'There was an error deploying your script.',
90
- 'script deployment error toast description_other': 'There was an error deploying your scripts.',
91
- 'script deployment error toast close label_one': 'Close',
92
- 'script deployment error toast close label_other': 'Close',
83
+ 'script-deployment-toast.label_one': 'Script deployed',
84
+ 'script-deployment-toast.label_other': 'Scripts deployed',
85
+ 'script-deployment-toast.description_one': 'Your script has been deployed successfully.',
86
+ 'script-deployment-toast.description_other': 'Your scripts have been deployed successfully.',
87
+ 'script-deployment-toast-close.label_one': 'Close',
88
+ 'script-deployment-toast-close.label_other': 'Close',
89
+ 'script-deployment-error-toast.label_one': 'Script deployment failed',
90
+ 'script-deployment-error-toast.label_other': 'Scripts deployment failed',
91
+ 'script-deployment-error-toast.description_one': 'There was an error deploying your script.',
92
+ 'script-deployment-error-toast.description_other': 'There was an error deploying your scripts.',
93
+ 'script-deployment-error-toast-close.label_one': 'Close',
94
+ 'script-deployment-error-toast-close.label_other': 'Close',
93
95
 
94
- 'notebook cell placeholder': 'Enter script',
95
- 'notebook cell delete label': 'Delete cell',
96
- 'notebook cell prompt run label': 'Run',
97
- 'notebook cell insert markdown label': 'Insert Markdown',
98
- 'notebook cell insert script label': 'Insert Script',
99
- 'notebook cell insert prompt label': 'Insert Prompt',
100
- 'notebook cell insert query label': 'Insert Query',
101
- 'notebook markdown placeholder': 'Enter Markdown',
102
- 'notebook prompt placeholder': 'Enter prompt',
103
- 'notebook cell insert label': 'Insert cell',
96
+ 'notebook-cell.placeholder': 'Enter script',
97
+ 'notebook-cell-delete.label': 'Delete cell',
98
+ 'notebook-cell-prompt-run.label': 'Run',
99
+ 'notebook-cell-insert-markdown.label': 'Insert Markdown',
100
+ 'notebook-cell-insert-script.label': 'Insert Script',
101
+ 'notebook-cell-insert-prompt.label': 'Insert Prompt',
102
+ 'notebook-cell-insert-query.label': 'Insert Query',
103
+ 'notebook-markdown.placeholder': 'Enter Markdown',
104
+ 'notebook-prompt.placeholder': 'Enter prompt',
105
+ 'notebook-cell-insert.label': 'Insert cell',
104
106
  },
105
107
  },
106
108
  },
@@ -4,38 +4,39 @@
4
4
 
5
5
  import * as Schema from 'effect/Schema';
6
6
 
7
- import { Prompt } from '@dxos/blueprints';
8
- import { Obj, Type } from '@dxos/echo';
9
- import { FormAnnotation } from '@dxos/echo/internal';
7
+ import { Routine } from '@dxos/compute';
8
+ import { DXN, Annotation, Obj, Ref, Type } from '@dxos/echo';
9
+ import { FormInputAnnotation } from '@dxos/echo/internal';
10
10
  import { LabelAnnotation } from '@dxos/echo/internal';
11
- import { Text, View } from '@dxos/schema';
11
+ import { Graph } from '@dxos/plugin-explorer';
12
+ import { Text } from '@dxos/schema';
12
13
 
13
14
  export type CellType = 'markdown' | 'script' | 'query' | 'prompt' | 'view';
14
15
 
15
- const Cell_ = Schema.Struct({
16
+ export const Cell = Schema.Struct({
16
17
  id: Schema.String,
17
18
  type: Schema.String,
18
19
  name: Schema.optional(Schema.String),
19
20
  // TODO(burdon): Union type.
20
- source: Schema.optional(Type.Ref(Text.Text)),
21
- prompt: Schema.optional(Type.Ref(Prompt.Prompt)),
22
- view: Schema.optional(Type.Ref(View.View)),
23
- }).pipe(Schema.mutable);
24
- export interface Cell extends Schema.Schema.Type<typeof Cell_> {}
25
- export interface Cell_Encoded extends Schema.Schema.Encoded<typeof Cell_> {}
26
- export const Cell: Schema.Schema<Cell, Cell_Encoded> = Cell_;
21
+ source: Schema.optional(Ref.Ref(Text.Text)),
22
+ prompt: Schema.optional(Ref.Ref(Routine.Routine)),
23
+ graph: Schema.optional(Ref.Ref(Graph.Graph)),
24
+ });
25
+
26
+ export type Cell = Schema.Schema.Type<typeof Cell>;
27
27
 
28
28
  export const Notebook = Schema.Struct({
29
29
  name: Schema.String.pipe(Schema.optional),
30
- cells: Cell.pipe(Schema.Array, Schema.mutable, FormAnnotation.set(false)),
30
+ cells: Cell.pipe(Schema.Array, FormInputAnnotation.set(false)),
31
31
  }).pipe(
32
- Type.Obj({
33
- typename: 'dxos.org/type/Notebook',
34
- version: '0.1.0',
35
- }),
36
32
  LabelAnnotation.set(['name']),
33
+ Annotation.IconAnnotation.set({
34
+ icon: 'ph--notebook--regular',
35
+ hue: 'sky',
36
+ }),
37
+ Type.makeObject(DXN.make('org.dxos.type.notebook', '0.1.0')),
37
38
  );
38
39
 
39
- export type Notebook = Schema.Schema.Type<typeof Notebook>;
40
+ export type Notebook = Type.InstanceType<typeof Notebook>;
40
41
 
41
- export const make = (props: Obj.MakeProps<typeof Notebook> = { cells: [] }) => Obj.make(Notebook, props);
42
+ export const make = (props: Obj.MakeProps<typeof Notebook> = { cells: [] }): Notebook => Obj.make(Notebook, props);
@@ -0,0 +1,18 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ // @import-as-namespace
6
+
7
+ import { type Atom } from '@effect-atom/atom-react';
8
+
9
+ import { Capability } from '@dxos/app-framework';
10
+
11
+ import { meta } from '#meta';
12
+
13
+ import { type Compiler as CompilerType } from '../compiler';
14
+
15
+ // Inline import to avoid `Settings` namespace alias colliding with the
16
+ // `Settings` capability export below.
17
+ export const Settings = Capability.make<Atom.Writable<import('./Settings').Settings>>(`${meta.id}.capability.settings`);
18
+ export const Compiler = Capability.make<CompilerType>(`${meta.id}.capability.compiler`);
@@ -0,0 +1,11 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ // @import-as-namespace
6
+
7
+ import { ActivationEvent } from '@dxos/app-framework';
8
+
9
+ import { meta } from '#meta';
10
+
11
+ export const SetupCompiler = ActivationEvent.make(`${meta.id}.event.setup-compiler`);
@@ -0,0 +1,42 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ // @import-as-namespace
6
+
7
+ import * as Schema from 'effect/Schema';
8
+
9
+ import { Script, Operation } from '@dxos/compute';
10
+ import { Database, Type } from '@dxos/echo';
11
+
12
+ import { meta } from '#meta';
13
+
14
+ import { templates } from '../templates';
15
+
16
+ const SCRIPT_OPERATION = `${meta.id}.operation`;
17
+
18
+ export const ScriptProps = Schema.Struct({
19
+ name: Schema.optional(Schema.String),
20
+ gistUrl: Schema.optional(Schema.String.annotations({ title: 'Import from Gist (url)' })),
21
+ initialTemplateId: Schema.Literal(...templates.map(({ id }) => id)).pipe(
22
+ Schema.annotations({ title: 'Template' }),
23
+ Schema.optional,
24
+ ),
25
+ });
26
+
27
+ export const NotebookProps = Schema.Struct({
28
+ name: Schema.optional(Schema.String),
29
+ });
30
+
31
+ export const CreateScript = Operation.make({
32
+ meta: { key: `${SCRIPT_OPERATION}.create-script`, name: 'Create Script', icon: 'ph--code--regular' },
33
+ input: Schema.extend(
34
+ ScriptProps,
35
+ Schema.Struct({
36
+ db: Database.Database,
37
+ }),
38
+ ),
39
+ output: Schema.Struct({
40
+ object: Type.getSchema(Script.Script),
41
+ }),
42
+ });
@@ -0,0 +1,20 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ // @import-as-namespace
6
+
7
+ import * as Schema from 'effect/Schema';
8
+
9
+ import { EditorInputMode } from '@dxos/ui-editor/types';
10
+
11
+ export const Settings = Schema.mutable(
12
+ Schema.Struct({
13
+ editorInputMode: EditorInputMode.annotations({
14
+ title: 'Editor input mode',
15
+ description: 'Choose the keybinding style for the script editor.',
16
+ }),
17
+ }),
18
+ );
19
+
20
+ export interface Settings extends Schema.Schema.Type<typeof Settings> {}
@@ -2,6 +2,9 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- export * from './actions';
6
- export * as Notebook from './Notebook';
7
5
  export * from './types';
6
+
7
+ export * as Notebook from './Notebook';
8
+ export * as ScriptCapabilities from './ScriptCapabilities';
9
+ export * as ScriptEvents from './ScriptEvents';
10
+ export * as ScriptOperation from './ScriptOperation';
@@ -2,14 +2,4 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import * as Schema from 'effect/Schema';
6
-
7
- import { EditorInputMode } from '@dxos/react-ui-editor';
8
-
9
- export const ScriptSettings = Schema.mutable(
10
- Schema.Struct({
11
- editorInputMode: EditorInputMode,
12
- }),
13
- );
14
-
15
- export type ScriptSettings = Schema.Schema.Type<typeof ScriptSettings>;
5
+ export * as Settings from './Settings';
@@ -3,15 +3,15 @@
3
3
  //
4
4
 
5
5
  import { type Client } from '@dxos/client';
6
+ import { Script, Operation } from '@dxos/compute';
7
+ import { Context } from '@dxos/context';
6
8
  import { Obj, Ref } from '@dxos/echo';
7
- import { Function, type Script, getUserFunctionIdInMetadata, setUserFunctionIdInMetadata } from '@dxos/functions';
8
- import { Bundler } from '@dxos/functions-runtime/bundler';
9
- import { incrementSemverPatch, uploadWorkerFunction } from '@dxos/functions-runtime/edge';
9
+ import { getUserFunctionIdInMetadata } from '@dxos/functions';
10
+ import { bundleFunction } from '@dxos/functions-runtime/bundler';
11
+ import { FunctionsServiceClient, incrementSemverPatch } from '@dxos/functions-runtime/edge';
10
12
  import { log } from '@dxos/log';
13
+ import { FunctionRuntimeKind } from '@dxos/protocols';
11
14
  import { type Space } from '@dxos/react-client/echo';
12
- import { isNode } from '@dxos/util';
13
-
14
- import { updateFunctionMetadata } from './functions';
15
15
 
16
16
  export const isScriptDeployed = ({ script, fn }: { script: Script.Script; fn: any }): boolean => {
17
17
  const existingFunctionId = fn && getUserFunctionIdInMetadata(Obj.getMeta(fn));
@@ -22,7 +22,7 @@ type DeployScriptProps = {
22
22
  script: Script.Script;
23
23
  client: Client;
24
24
  space: Space;
25
- fn?: Function.Function;
25
+ fn?: Operation.PersistentOperation;
26
26
  existingFunctionId?: string;
27
27
  };
28
28
 
@@ -44,32 +44,30 @@ export const deployScript = async ({
44
44
  }
45
45
 
46
46
  try {
47
- const bundler = new Bundler({ platform: isNode() ? 'node' : 'browser', sandboxedModules: [], remoteModules: {} });
48
- const buildResult = await bundler.bundle({ source: script.source!.target!.content });
47
+ const buildResult = await bundleFunction({
48
+ source: script.source!.target!.content,
49
+ });
49
50
  if ('error' in buildResult) {
50
51
  throw buildResult.error || new Error('Bundle creation failed');
51
52
  }
52
53
 
53
- const { functionId, version, meta } = await uploadWorkerFunction({
54
- client,
54
+ const functionsServiceClient = FunctionsServiceClient.fromClient(client);
55
+ const newFunction = await functionsServiceClient.deploy(Context.default(), {
56
+ // TODO(dmaretskyi): Space key or identity key.
55
57
  ownerPublicKey: space.key,
56
- version: fn ? incrementSemverPatch(fn.version) : '0.0.1',
58
+ version: fn ? incrementSemverPatch(Obj.getMeta(fn).version ?? '0.0.0') : '0.0.1',
57
59
  functionId: existingFunctionId,
58
60
  entryPoint: buildResult.entryPoint,
59
- assets: { [buildResult.entryPoint]: buildResult.asset },
61
+ assets: buildResult.assets,
62
+ runtime: FunctionRuntimeKind.enums.WORKER_LOADER,
60
63
  });
61
64
 
62
- if (functionId === undefined || version === undefined) {
63
- throw new Error(`Upload didn't return expected data: ${JSON.stringify({ functionId, version })}`);
64
- }
65
-
66
- const storedFunction = createOrUpdateFunctionInSpace(space, fn, script, functionId, version);
67
- script.changed = false;
68
- updateFunctionMetadata(script, storedFunction, meta, functionId);
69
-
70
- setUserFunctionIdInMetadata(Obj.getMeta(storedFunction), functionId);
65
+ const storedFunction = createOrUpdateFunctionInSpace(space, fn, script, newFunction);
66
+ Obj.update(script, (script) => {
67
+ script.changed = false;
68
+ });
71
69
 
72
- return { success: true, functionId };
70
+ return { success: true, functionId: getUserFunctionIdInMetadata(Obj.getMeta(storedFunction)) };
73
71
  } catch (err: any) {
74
72
  log.catch(err);
75
73
  return { success: false, error: err };
@@ -88,19 +86,17 @@ const validateDeployInputs = (script: Script.Script, space: Space): Error | null
88
86
 
89
87
  const createOrUpdateFunctionInSpace = (
90
88
  space: Space,
91
- fn: Function.Function | undefined,
89
+ fn: Operation.PersistentOperation | undefined,
92
90
  script: Script.Script,
93
- functionId: string,
94
- version: string,
95
- ): Function.Function => {
91
+ newFunction: Operation.PersistentOperation,
92
+ ): Operation.PersistentOperation => {
96
93
  if (fn) {
97
- fn.name = script.name ?? 'New Function';
98
- fn.version = version;
94
+ Operation.setFrom(fn, newFunction);
99
95
  return fn;
100
96
  } else {
101
- const fn = Function.make({ name: script.name ?? 'New Function', version, source: Ref.make(script) });
102
- space.db.add(fn);
103
- setUserFunctionIdInMetadata(Obj.getMeta(fn), functionId);
104
- return fn;
97
+ Obj.update(newFunction, (newFunction) => {
98
+ newFunction.source = Ref.make(script);
99
+ });
100
+ return space.db.add(newFunction);
105
101
  }
106
102
  };