@dxos/plugin-script 0.8.4-main.f9ba587 → 0.8.4-staging.60fe92afc8

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 (550) hide show
  1. package/LICENSE +102 -5
  2. package/PLUGIN.mdl +515 -0
  3. package/README.md +15 -13
  4. package/dist/lib/neutral/DeploymentDialog-M3AFYQHC.mjs +114 -0
  5. package/dist/lib/neutral/DeploymentDialog-M3AFYQHC.mjs.map +7 -0
  6. package/dist/lib/neutral/NotebookArticle-NV4AHOOS.mjs +763 -0
  7. package/dist/lib/neutral/NotebookArticle-NV4AHOOS.mjs.map +7 -0
  8. package/dist/lib/neutral/ScriptArticle-QW26LOKU.mjs +79 -0
  9. package/dist/lib/neutral/ScriptArticle-QW26LOKU.mjs.map +7 -0
  10. package/dist/lib/neutral/ScriptPlugin.mjs +51 -0
  11. package/dist/lib/neutral/ScriptPlugin.mjs.map +7 -0
  12. package/dist/lib/neutral/ScriptPlugin.node.mjs +27 -0
  13. package/dist/lib/neutral/ScriptPlugin.node.mjs.map +7 -0
  14. package/dist/lib/neutral/ScriptPlugin.workerd.mjs +21 -0
  15. package/dist/lib/neutral/ScriptPlugin.workerd.mjs.map +7 -0
  16. package/dist/lib/neutral/ScriptPluginSettings-T4JMUSHN.mjs +31 -0
  17. package/dist/lib/neutral/ScriptPluginSettings-T4JMUSHN.mjs.map +7 -0
  18. package/dist/lib/neutral/ScriptProperties-RLXNAN3N.mjs +297 -0
  19. package/dist/lib/neutral/ScriptProperties-RLXNAN3N.mjs.map +7 -0
  20. package/dist/lib/neutral/TestContainer-AFVTBYSJ.mjs +44 -0
  21. package/dist/lib/neutral/TestContainer-AFVTBYSJ.mjs.map +7 -0
  22. package/dist/lib/neutral/app-graph-builder-7AWFCEQF.mjs +52 -0
  23. package/dist/lib/neutral/app-graph-builder-7AWFCEQF.mjs.map +7 -0
  24. package/dist/lib/neutral/blueprint-definition-PJ7I3JIQ.mjs +15 -0
  25. package/dist/lib/neutral/blueprint-definition-PJ7I3JIQ.mjs.map +7 -0
  26. package/dist/lib/neutral/blueprints/index.mjs +10 -0
  27. package/dist/lib/neutral/capabilities/index.mjs +21 -0
  28. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  29. package/dist/lib/neutral/capabilities/node.mjs +17 -0
  30. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  31. package/dist/lib/neutral/chunk-2REUEDUA.mjs +56 -0
  32. package/dist/lib/neutral/chunk-2REUEDUA.mjs.map +7 -0
  33. package/dist/lib/neutral/chunk-BDHDBPVM.mjs +52 -0
  34. package/dist/lib/neutral/chunk-BDHDBPVM.mjs.map +7 -0
  35. package/dist/lib/neutral/chunk-BKXYHCJ6.mjs +8 -0
  36. package/dist/lib/neutral/chunk-BKXYHCJ6.mjs.map +7 -0
  37. package/dist/lib/neutral/chunk-HABDH5SS.mjs +123 -0
  38. package/dist/lib/neutral/chunk-HABDH5SS.mjs.map +7 -0
  39. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  40. package/dist/lib/neutral/chunk-PHKPB5JN.mjs +96 -0
  41. package/dist/lib/neutral/chunk-PHKPB5JN.mjs.map +7 -0
  42. package/dist/lib/neutral/chunk-TRKXIP2Q.mjs +345 -0
  43. package/dist/lib/neutral/chunk-TRKXIP2Q.mjs.map +7 -0
  44. package/dist/lib/neutral/chunk-UA3BWOCZ.mjs +38 -0
  45. package/dist/lib/neutral/chunk-UA3BWOCZ.mjs.map +7 -0
  46. package/dist/lib/neutral/chunk-VXDJH6OL.mjs +150 -0
  47. package/dist/lib/neutral/chunk-VXDJH6OL.mjs.map +7 -0
  48. package/dist/lib/neutral/chunk-XFM63AKT.mjs +8 -0
  49. package/dist/lib/neutral/chunk-XFM63AKT.mjs.map +7 -0
  50. package/dist/lib/neutral/compiler-ODK4UA2N.mjs +101 -0
  51. package/dist/lib/neutral/compiler-ODK4UA2N.mjs.map +7 -0
  52. package/dist/lib/neutral/components/index.mjs +664 -0
  53. package/dist/lib/neutral/components/index.mjs.map +7 -0
  54. package/dist/lib/neutral/containers/index.mjs +17 -0
  55. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  56. package/dist/lib/neutral/create-AAA53WDL.mjs +46 -0
  57. package/dist/lib/neutral/create-AAA53WDL.mjs.map +7 -0
  58. package/dist/lib/neutral/create-object-FZM5ASWM.mjs +45 -0
  59. package/dist/lib/neutral/create-object-FZM5ASWM.mjs.map +7 -0
  60. package/dist/lib/neutral/create-script-P46JOEHH.mjs +45 -0
  61. package/dist/lib/neutral/create-script-P46JOEHH.mjs.map +7 -0
  62. package/dist/lib/neutral/delete-HCQIQFVP.mjs +21 -0
  63. package/dist/lib/neutral/delete-HCQIQFVP.mjs.map +7 -0
  64. package/dist/lib/neutral/deploy-7JVMMHSH.mjs +63 -0
  65. package/dist/lib/neutral/deploy-7JVMMHSH.mjs.map +7 -0
  66. package/dist/lib/neutral/hooks/index.mjs +369 -0
  67. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  68. package/dist/lib/neutral/index.mjs +41 -0
  69. package/dist/lib/neutral/inspect-invocations-TAOYDT4H.mjs +59 -0
  70. package/dist/lib/neutral/inspect-invocations-TAOYDT4H.mjs.map +7 -0
  71. package/dist/lib/neutral/install-function-FJIE2JAI.mjs +49 -0
  72. package/dist/lib/neutral/install-function-FJIE2JAI.mjs.map +7 -0
  73. package/dist/lib/neutral/invoke-3HVWY2KF.mjs +32 -0
  74. package/dist/lib/neutral/invoke-3HVWY2KF.mjs.map +7 -0
  75. package/dist/lib/neutral/meta.json +1 -0
  76. package/dist/lib/neutral/meta.mjs +10 -0
  77. package/dist/lib/neutral/operation-handler-YMUADD7Y.mjs +18 -0
  78. package/dist/lib/neutral/operation-handler-YMUADD7Y.mjs.map +7 -0
  79. package/dist/lib/neutral/operations/index.mjs +8 -0
  80. package/dist/lib/neutral/operations/index.mjs.map +7 -0
  81. package/dist/lib/neutral/plugin.mjs +16 -0
  82. package/dist/lib/neutral/plugin.mjs.map +7 -0
  83. package/dist/lib/neutral/query-deployed-functions-F4FHJNWO.mjs +34 -0
  84. package/dist/lib/neutral/query-deployed-functions-F4FHJNWO.mjs.map +7 -0
  85. package/dist/lib/neutral/react-surface-ACNZ35FV.mjs +121 -0
  86. package/dist/lib/neutral/react-surface-ACNZ35FV.mjs.map +7 -0
  87. package/dist/lib/neutral/read-RQESBAQI.mjs +26 -0
  88. package/dist/lib/neutral/read-RQESBAQI.mjs.map +7 -0
  89. package/dist/lib/neutral/settings-VJBW4OMK.mjs +30 -0
  90. package/dist/lib/neutral/settings-VJBW4OMK.mjs.map +7 -0
  91. package/dist/lib/neutral/templates/index.mjs +10 -0
  92. package/dist/lib/neutral/templates/index.mjs.map +7 -0
  93. package/dist/lib/neutral/translations.mjs +105 -0
  94. package/dist/lib/neutral/translations.mjs.map +7 -0
  95. package/dist/lib/neutral/types/index.mjs +17 -0
  96. package/dist/lib/neutral/types/index.mjs.map +7 -0
  97. package/dist/lib/neutral/update-CO7B6UBS.mjs +63 -0
  98. package/dist/lib/neutral/update-CO7B6UBS.mjs.map +7 -0
  99. package/dist/types/src/ScriptPlugin.d.ts +3 -1
  100. package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
  101. package/dist/types/src/ScriptPlugin.node.d.ts +4 -0
  102. package/dist/types/src/ScriptPlugin.node.d.ts.map +1 -0
  103. package/dist/types/src/ScriptPlugin.test.d.ts +2 -0
  104. package/dist/types/src/ScriptPlugin.test.d.ts.map +1 -0
  105. package/dist/types/src/ScriptPlugin.workerd.d.ts +4 -0
  106. package/dist/types/src/ScriptPlugin.workerd.d.ts.map +1 -0
  107. package/dist/types/src/blueprints/functions/create.d.ts +11 -0
  108. package/dist/types/src/blueprints/functions/create.d.ts.map +1 -0
  109. package/dist/types/src/blueprints/functions/definitions.d.ts +135 -0
  110. package/dist/types/src/blueprints/functions/definitions.d.ts.map +1 -0
  111. package/dist/types/src/blueprints/functions/delete.d.ts +17 -0
  112. package/dist/types/src/blueprints/functions/delete.d.ts.map +1 -0
  113. package/dist/types/src/blueprints/functions/deploy.d.ts +21 -0
  114. package/dist/types/src/blueprints/functions/deploy.d.ts.map +1 -0
  115. package/dist/types/src/blueprints/functions/index.d.ts +4 -0
  116. package/dist/types/src/blueprints/functions/index.d.ts.map +1 -0
  117. package/dist/types/src/blueprints/functions/inspect-invocations.d.ts +28 -0
  118. package/dist/types/src/blueprints/functions/inspect-invocations.d.ts.map +1 -0
  119. package/dist/types/src/blueprints/functions/install-function.d.ts +11 -0
  120. package/dist/types/src/blueprints/functions/install-function.d.ts.map +1 -0
  121. package/dist/types/src/blueprints/functions/invoke.d.ts +21 -0
  122. package/dist/types/src/blueprints/functions/invoke.d.ts.map +1 -0
  123. package/dist/types/src/blueprints/functions/query-deployed-functions.d.ts +13 -0
  124. package/dist/types/src/blueprints/functions/query-deployed-functions.d.ts.map +1 -0
  125. package/dist/types/src/blueprints/functions/read.d.ts +21 -0
  126. package/dist/types/src/blueprints/functions/read.d.ts.map +1 -0
  127. package/dist/types/src/blueprints/functions/update.d.ts +26 -0
  128. package/dist/types/src/blueprints/functions/update.d.ts.map +1 -0
  129. package/dist/types/src/blueprints/index.d.ts +2 -0
  130. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  131. package/dist/types/src/blueprints/script-blueprint.d.ts +4 -0
  132. package/dist/types/src/blueprints/script-blueprint.d.ts.map +1 -0
  133. package/dist/types/src/capabilities/app-graph-builder.d.ts +4 -2
  134. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  135. package/dist/types/src/capabilities/blueprint-definition.d.ts +6 -0
  136. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  137. package/dist/types/src/capabilities/compiler.d.ts +3 -1
  138. package/dist/types/src/capabilities/compiler.d.ts.map +1 -1
  139. package/dist/types/src/capabilities/create-object.d.ts +16 -0
  140. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  141. package/dist/types/src/capabilities/index.d.ts +20 -7
  142. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  143. package/dist/types/src/capabilities/node.d.ts +19 -0
  144. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  145. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  146. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  147. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  148. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  149. package/dist/types/src/capabilities/settings.d.ts +5 -2
  150. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  151. package/dist/types/src/compiler/compiler.d.ts +1 -1
  152. package/dist/types/src/compiler/compiler.d.ts.map +1 -1
  153. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts +15 -0
  154. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts.map +1 -0
  155. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts +9 -0
  156. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts.map +1 -0
  157. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts +16 -0
  158. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts.map +1 -0
  159. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts +240 -0
  160. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts.map +1 -0
  161. package/dist/types/src/components/NotebookStack/index.d.ts +3 -0
  162. package/dist/types/src/components/NotebookStack/index.d.ts.map +1 -0
  163. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts +5 -0
  164. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts.map +1 -0
  165. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts +13 -0
  166. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts.map +1 -0
  167. package/dist/types/src/components/QueryEditor/index.d.ts +2 -0
  168. package/dist/types/src/components/QueryEditor/index.d.ts.map +1 -0
  169. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.d.ts +8 -0
  170. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.d.ts.map +1 -0
  171. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.stories.d.ts +241 -0
  172. package/dist/types/src/components/ScriptPluginSettings/ScriptPluginSettings.stories.d.ts.map +1 -0
  173. package/dist/types/src/components/ScriptPluginSettings/index.d.ts +2 -0
  174. package/dist/types/src/components/ScriptPluginSettings/index.d.ts.map +1 -0
  175. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +10 -9
  176. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  177. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts +237 -10
  178. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts.map +1 -1
  179. package/dist/types/src/components/TestPanel/TestPanel.d.ts +4 -2
  180. package/dist/types/src/components/TestPanel/TestPanel.d.ts.map +1 -1
  181. package/dist/types/src/components/TestPanel/index.d.ts +0 -1
  182. package/dist/types/src/components/TestPanel/index.d.ts.map +1 -1
  183. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts +8 -2
  184. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts.map +1 -1
  185. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts +13 -4
  186. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts.map +1 -1
  187. package/dist/types/src/components/index.d.ts +6 -7
  188. package/dist/types/src/components/index.d.ts.map +1 -1
  189. package/dist/types/src/constants.d.ts +3 -0
  190. package/dist/types/src/constants.d.ts.map +1 -0
  191. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.d.ts +9 -0
  192. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.d.ts.map +1 -0
  193. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.stories.d.ts +240 -0
  194. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.stories.d.ts.map +1 -0
  195. package/dist/types/src/containers/DeploymentDialog/index.d.ts +2 -0
  196. package/dist/types/src/containers/DeploymentDialog/index.d.ts.map +1 -0
  197. package/dist/types/src/containers/NotebookArticle/NotebookArticle.d.ts +7 -0
  198. package/dist/types/src/containers/NotebookArticle/NotebookArticle.d.ts.map +1 -0
  199. package/dist/types/src/containers/NotebookArticle/NotebookArticle.stories.d.ts +7 -0
  200. package/dist/types/src/containers/NotebookArticle/NotebookArticle.stories.d.ts.map +1 -0
  201. package/dist/types/src/containers/NotebookArticle/index.d.ts +2 -0
  202. package/dist/types/src/containers/NotebookArticle/index.d.ts.map +1 -0
  203. package/dist/types/src/containers/ScriptArticle/ScriptArticle.d.ts +10 -0
  204. package/dist/types/src/containers/ScriptArticle/ScriptArticle.d.ts.map +1 -0
  205. package/dist/types/src/containers/ScriptArticle/ScriptArticle.stories.d.ts +242 -0
  206. package/dist/types/src/containers/ScriptArticle/ScriptArticle.stories.d.ts.map +1 -0
  207. package/dist/types/src/containers/ScriptArticle/index.d.ts +2 -0
  208. package/dist/types/src/containers/ScriptArticle/index.d.ts.map +1 -0
  209. package/dist/types/src/containers/ScriptProperties/BlueprintEditor.d.ts +7 -0
  210. package/dist/types/src/containers/ScriptProperties/BlueprintEditor.d.ts.map +1 -0
  211. package/dist/types/src/containers/ScriptProperties/FunctionBinding.d.ts +7 -0
  212. package/dist/types/src/containers/ScriptProperties/FunctionBinding.d.ts.map +1 -0
  213. package/dist/types/src/containers/ScriptProperties/FunctionPublishing.d.ts +7 -0
  214. package/dist/types/src/containers/ScriptProperties/FunctionPublishing.d.ts.map +1 -0
  215. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts +6 -0
  216. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts.map +1 -0
  217. package/dist/types/src/containers/ScriptProperties/ScriptProperties.stories.d.ts +242 -0
  218. package/dist/types/src/containers/ScriptProperties/ScriptProperties.stories.d.ts.map +1 -0
  219. package/dist/types/src/containers/ScriptProperties/index.d.ts +2 -0
  220. package/dist/types/src/containers/ScriptProperties/index.d.ts.map +1 -0
  221. package/dist/types/src/containers/TestContainer/TestContainer.d.ts +8 -0
  222. package/dist/types/src/containers/TestContainer/TestContainer.d.ts.map +1 -0
  223. package/dist/types/src/containers/TestContainer/index.d.ts +2 -0
  224. package/dist/types/src/containers/TestContainer/index.d.ts.map +1 -0
  225. package/dist/types/src/containers/index.d.ts +7 -0
  226. package/dist/types/src/containers/index.d.ts.map +1 -0
  227. package/dist/types/src/e2e/ai.test.d.ts +2 -0
  228. package/dist/types/src/e2e/ai.test.d.ts.map +1 -0
  229. package/dist/types/src/e2e/deploy.test.d.ts +2 -0
  230. package/dist/types/src/e2e/deploy.test.d.ts.map +1 -0
  231. package/dist/types/src/hooks/deploy.d.ts +31 -33
  232. package/dist/types/src/hooks/deploy.d.ts.map +1 -1
  233. package/dist/types/src/hooks/format.d.ts +5 -4
  234. package/dist/types/src/hooks/format.d.ts.map +1 -1
  235. package/dist/types/src/hooks/index.d.ts +1 -0
  236. package/dist/types/src/hooks/index.d.ts.map +1 -1
  237. package/dist/types/src/hooks/template.d.ts +7 -16
  238. package/dist/types/src/hooks/template.d.ts.map +1 -1
  239. package/dist/types/src/hooks/useCompiler.d.ts +7 -0
  240. package/dist/types/src/hooks/useCompiler.d.ts.map +1 -0
  241. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts.map +1 -1
  242. package/dist/types/src/hooks/useToolbarState.d.ts +8 -1
  243. package/dist/types/src/hooks/useToolbarState.d.ts.map +1 -1
  244. package/dist/types/src/index.d.ts +3 -3
  245. package/dist/types/src/index.d.ts.map +1 -1
  246. package/dist/types/src/meta.d.ts +2 -3
  247. package/dist/types/src/meta.d.ts.map +1 -1
  248. package/dist/types/src/notebook/compute-graph.d.ts +58 -0
  249. package/dist/types/src/notebook/compute-graph.d.ts.map +1 -0
  250. package/dist/types/src/notebook/compute-graph.test.d.ts +2 -0
  251. package/dist/types/src/notebook/compute-graph.test.d.ts.map +1 -0
  252. package/dist/types/src/notebook/eval.d.ts +13 -0
  253. package/dist/types/src/notebook/eval.d.ts.map +1 -0
  254. package/dist/types/src/notebook/index.d.ts +2 -0
  255. package/dist/types/src/notebook/index.d.ts.map +1 -0
  256. package/dist/types/src/notebook/vfs-parser.d.ts +74 -0
  257. package/dist/types/src/notebook/vfs-parser.d.ts.map +1 -0
  258. package/dist/types/src/notebook/vfs-parser.test.d.ts +2 -0
  259. package/dist/types/src/notebook/vfs-parser.test.d.ts.map +1 -0
  260. package/dist/types/src/operations/create-script.d.ts +5 -0
  261. package/dist/types/src/operations/create-script.d.ts.map +1 -0
  262. package/dist/types/src/operations/index.d.ts +3 -0
  263. package/dist/types/src/operations/index.d.ts.map +1 -0
  264. package/dist/types/src/plugin.d.ts +4 -0
  265. package/dist/types/src/plugin.d.ts.map +1 -0
  266. package/dist/types/src/templates/anthropic.d.ts +7 -0
  267. package/dist/types/src/templates/anthropic.d.ts.map +1 -0
  268. package/dist/types/src/templates/chess-bot.d.ts +14 -0
  269. package/dist/types/src/templates/chess-bot.d.ts.map +1 -0
  270. package/dist/types/src/templates/commentary.d.ts +15 -0
  271. package/dist/types/src/templates/commentary.d.ts.map +1 -0
  272. package/dist/types/src/templates/data-generator.d.ts.map +1 -1
  273. package/dist/types/src/templates/discord.d.ts.map +1 -1
  274. package/dist/types/src/templates/email.d.ts.map +1 -1
  275. package/dist/types/src/templates/forex-effect.d.ts +5 -1
  276. package/dist/types/src/templates/forex-effect.d.ts.map +1 -1
  277. package/dist/types/src/templates/forex.d.ts +5 -1
  278. package/dist/types/src/templates/forex.d.ts.map +1 -1
  279. package/dist/types/src/templates/gmail.d.ts.map +1 -1
  280. package/dist/types/src/templates/index.d.ts +49 -1
  281. package/dist/types/src/templates/index.d.ts.map +1 -1
  282. package/dist/types/src/templates/ping.d.ts +4 -0
  283. package/dist/types/src/templates/ping.d.ts.map +1 -0
  284. package/dist/types/src/testing/index.d.ts +3 -0
  285. package/dist/types/src/testing/index.d.ts.map +1 -0
  286. package/dist/types/src/testing/simulator.test.d.ts +2 -0
  287. package/dist/types/src/testing/simulator.test.d.ts.map +1 -0
  288. package/dist/types/src/testing/test-notebook.d.ts +3 -0
  289. package/dist/types/src/testing/test-notebook.d.ts.map +1 -0
  290. package/dist/types/src/testing/test-script.d.ts +7 -0
  291. package/dist/types/src/testing/test-script.d.ts.map +1 -0
  292. package/dist/types/src/translations.d.ts +222 -63
  293. package/dist/types/src/translations.d.ts.map +1 -1
  294. package/dist/types/src/types/Notebook.d.ts +101 -0
  295. package/dist/types/src/types/Notebook.d.ts.map +1 -0
  296. package/dist/types/src/types/ScriptCapabilities.d.ts +6 -0
  297. package/dist/types/src/types/ScriptCapabilities.d.ts.map +1 -0
  298. package/dist/types/src/types/ScriptEvents.d.ts +3 -0
  299. package/dist/types/src/types/ScriptEvents.d.ts.map +1 -0
  300. package/dist/types/src/types/ScriptOperation.d.ts +29 -0
  301. package/dist/types/src/types/ScriptOperation.d.ts.map +1 -0
  302. package/dist/types/src/types/Settings.d.ts +7 -0
  303. package/dist/types/src/types/Settings.d.ts.map +1 -0
  304. package/dist/types/src/types/index.d.ts +6 -0
  305. package/dist/types/src/types/index.d.ts.map +1 -0
  306. package/dist/types/src/types/types.d.ts +2 -0
  307. package/dist/types/src/types/types.d.ts.map +1 -0
  308. package/dist/types/src/util/deploy.d.ts +7 -7
  309. package/dist/types/src/util/deploy.d.ts.map +1 -1
  310. package/dist/types/src/util/functions.d.ts +6 -3
  311. package/dist/types/src/util/functions.d.ts.map +1 -1
  312. package/dist/types/tsconfig.tsbuildinfo +1 -1
  313. package/package.json +191 -95
  314. package/src/ScriptPlugin.node.ts +21 -0
  315. package/src/ScriptPlugin.test.ts +31 -0
  316. package/src/ScriptPlugin.tsx +36 -81
  317. package/src/ScriptPlugin.workerd.ts +18 -0
  318. package/src/blueprints/functions/create.ts +47 -0
  319. package/src/blueprints/functions/definitions.ts +332 -0
  320. package/src/blueprints/functions/delete.ts +23 -0
  321. package/src/blueprints/functions/deploy.ts +71 -0
  322. package/src/blueprints/functions/index.ts +19 -0
  323. package/src/blueprints/functions/inspect-invocations.ts +56 -0
  324. package/src/blueprints/functions/install-function.ts +56 -0
  325. package/src/blueprints/functions/invoke.ts +34 -0
  326. package/src/blueprints/functions/query-deployed-functions.ts +35 -0
  327. package/src/blueprints/functions/read.ts +29 -0
  328. package/src/blueprints/functions/update.ts +68 -0
  329. package/src/blueprints/index.ts +5 -0
  330. package/src/blueprints/script-blueprint.ts +55 -0
  331. package/src/capabilities/app-graph-builder.ts +40 -57
  332. package/src/capabilities/blueprint-definition.ts +19 -0
  333. package/src/capabilities/compiler.ts +100 -22
  334. package/src/capabilities/create-object.ts +49 -0
  335. package/src/capabilities/index.ts +18 -9
  336. package/src/capabilities/node.ts +21 -0
  337. package/src/capabilities/operation-handler.ts +21 -0
  338. package/src/capabilities/react-surface.tsx +121 -80
  339. package/src/capabilities/settings.ts +26 -14
  340. package/src/compiler/compiler.ts +22 -4
  341. package/src/components/NotebookStack/NotebookCell.tsx +226 -0
  342. package/src/components/NotebookStack/NotebookMenu.tsx +47 -0
  343. package/src/components/NotebookStack/NotebookStack.stories.tsx +53 -0
  344. package/src/components/NotebookStack/NotebookStack.tsx +97 -0
  345. package/src/components/NotebookStack/index.ts +6 -0
  346. package/src/components/QueryEditor/QueryEditor.stories.tsx +96 -0
  347. package/src/components/QueryEditor/QueryEditor.tsx +49 -0
  348. package/src/components/QueryEditor/index.ts +5 -0
  349. package/src/components/ScriptPluginSettings/ScriptPluginSettings.stories.tsx +32 -0
  350. package/src/components/ScriptPluginSettings/ScriptPluginSettings.tsx +42 -0
  351. package/src/components/ScriptPluginSettings/index.ts +5 -0
  352. package/src/components/ScriptToolbar/ScriptToolbar.stories.tsx +56 -17
  353. package/src/components/ScriptToolbar/ScriptToolbar.tsx +43 -41
  354. package/src/components/TestPanel/TestPanel.tsx +125 -185
  355. package/src/components/TestPanel/index.ts +0 -1
  356. package/src/components/TypescriptEditor/TypescriptEditor.stories.tsx +89 -34
  357. package/src/components/TypescriptEditor/TypescriptEditor.tsx +88 -78
  358. package/src/components/index.ts +6 -5
  359. package/src/constants.ts +9 -0
  360. package/src/containers/DeploymentDialog/DeploymentDialog.stories.tsx +63 -0
  361. package/src/containers/DeploymentDialog/DeploymentDialog.tsx +99 -0
  362. package/src/containers/DeploymentDialog/index.ts +5 -0
  363. package/src/containers/NotebookArticle/NotebookArticle.stories.tsx +85 -0
  364. package/src/containers/NotebookArticle/NotebookArticle.tsx +255 -0
  365. package/src/containers/NotebookArticle/index.ts +5 -0
  366. package/src/containers/ScriptArticle/ScriptArticle.stories.tsx +107 -0
  367. package/src/containers/ScriptArticle/ScriptArticle.tsx +85 -0
  368. package/src/containers/ScriptArticle/index.ts +5 -0
  369. package/src/containers/ScriptProperties/BlueprintEditor.tsx +102 -0
  370. package/src/containers/ScriptProperties/FunctionBinding.tsx +83 -0
  371. package/src/containers/ScriptProperties/FunctionPublishing.tsx +121 -0
  372. package/src/containers/ScriptProperties/ScriptProperties.stories.tsx +76 -0
  373. package/src/containers/ScriptProperties/ScriptProperties.tsx +24 -0
  374. package/src/containers/ScriptProperties/index.ts +5 -0
  375. package/src/containers/TestContainer/TestContainer.tsx +44 -0
  376. package/src/containers/TestContainer/index.ts +5 -0
  377. package/src/containers/index.ts +11 -0
  378. package/src/e2e/ai.test.ts +93 -0
  379. package/src/e2e/deploy.test.ts +66 -0
  380. package/src/hooks/deploy.ts +54 -45
  381. package/src/hooks/format.ts +10 -5
  382. package/src/hooks/index.ts +1 -0
  383. package/src/hooks/template.ts +23 -25
  384. package/src/hooks/useCompiler.ts +25 -0
  385. package/src/hooks/useCreateAndDeployScriptTemplates.ts +16 -16
  386. package/src/hooks/useToolbarState.ts +29 -4
  387. package/src/index.ts +3 -4
  388. package/src/meta.ts +17 -9
  389. package/src/notebook/compute-graph.test.ts +82 -0
  390. package/src/notebook/compute-graph.ts +230 -0
  391. package/src/notebook/eval.ts +105 -0
  392. package/src/notebook/index.ts +5 -0
  393. package/src/notebook/vfs-parser.test.ts +149 -0
  394. package/src/notebook/vfs-parser.ts +458 -0
  395. package/src/operations/create-script.ts +46 -0
  396. package/src/operations/index.ts +7 -0
  397. package/src/plugin.ts +11 -0
  398. package/src/templates/anthropic.ts +50 -0
  399. package/src/templates/chess-bot.ts +63 -0
  400. package/src/templates/commentary.ts +252 -0
  401. package/src/templates/data-generator.ts +11 -5
  402. package/src/templates/discord.ts +18 -10
  403. package/src/templates/forex-effect.ts +36 -25
  404. package/src/templates/forex.ts +28 -15
  405. package/src/templates/gmail.ts +42 -72
  406. package/src/templates/index.ts +36 -28
  407. package/src/templates/ping.ts +26 -0
  408. package/src/testing/index.ts +6 -0
  409. package/src/testing/simulator.test.ts +39 -0
  410. package/src/testing/test-notebook.ts +71 -0
  411. package/src/testing/test-script.ts +28 -0
  412. package/src/translations.ts +93 -63
  413. package/src/types/Notebook.ts +39 -0
  414. package/src/types/ScriptCapabilities.ts +18 -0
  415. package/src/types/ScriptEvents.ts +11 -0
  416. package/src/types/ScriptOperation.ts +42 -0
  417. package/src/types/Settings.ts +20 -0
  418. package/src/types/index.ts +10 -0
  419. package/src/types/types.ts +5 -0
  420. package/src/util/deploy.ts +41 -62
  421. package/src/util/functions.ts +60 -26
  422. package/src/vite-env.d.ts +7 -0
  423. package/dist/lib/browser/DeploymentDialog-RIGSJM6A.mjs +0 -12
  424. package/dist/lib/browser/ScriptContainer-BAN4WZHG.mjs +0 -261
  425. package/dist/lib/browser/ScriptContainer-BAN4WZHG.mjs.map +0 -7
  426. package/dist/lib/browser/app-graph-builder-HLQ7K3BT.mjs +0 -64
  427. package/dist/lib/browser/app-graph-builder-HLQ7K3BT.mjs.map +0 -7
  428. package/dist/lib/browser/artifact-definition-KMBAZFRR.mjs +0 -249
  429. package/dist/lib/browser/artifact-definition-KMBAZFRR.mjs.map +0 -7
  430. package/dist/lib/browser/chunk-5TVBECWH.mjs +0 -15
  431. package/dist/lib/browser/chunk-5TVBECWH.mjs.map +0 -7
  432. package/dist/lib/browser/chunk-7CIKV2MG.mjs +0 -364
  433. package/dist/lib/browser/chunk-7CIKV2MG.mjs.map +0 -7
  434. package/dist/lib/browser/chunk-EEL5O3IC.mjs +0 -40
  435. package/dist/lib/browser/chunk-EEL5O3IC.mjs.map +0 -7
  436. package/dist/lib/browser/chunk-OORJVKHC.mjs +0 -233
  437. package/dist/lib/browser/chunk-OORJVKHC.mjs.map +0 -7
  438. package/dist/lib/browser/chunk-QHVTSNHD.mjs +0 -153
  439. package/dist/lib/browser/chunk-QHVTSNHD.mjs.map +0 -7
  440. package/dist/lib/browser/chunk-QYAREHGH.mjs +0 -28
  441. package/dist/lib/browser/chunk-QYAREHGH.mjs.map +0 -7
  442. package/dist/lib/browser/chunk-QYLAH5AK.mjs +0 -557
  443. package/dist/lib/browser/chunk-QYLAH5AK.mjs.map +0 -7
  444. package/dist/lib/browser/compiler-CXCUA4UQ.mjs +0 -82
  445. package/dist/lib/browser/compiler-CXCUA4UQ.mjs.map +0 -7
  446. package/dist/lib/browser/index.mjs +0 -206
  447. package/dist/lib/browser/index.mjs.map +0 -7
  448. package/dist/lib/browser/intent-resolver-HQRUYTML.mjs +0 -90
  449. package/dist/lib/browser/intent-resolver-HQRUYTML.mjs.map +0 -7
  450. package/dist/lib/browser/meta.json +0 -1
  451. package/dist/lib/browser/react-surface-FNLARN5M.mjs +0 -105
  452. package/dist/lib/browser/react-surface-FNLARN5M.mjs.map +0 -7
  453. package/dist/lib/browser/settings-XU54CGQD.mjs +0 -24
  454. package/dist/lib/browser/settings-XU54CGQD.mjs.map +0 -7
  455. package/dist/lib/browser/types.mjs +0 -13
  456. package/dist/lib/node-esm/DeploymentDialog-6Z7JH3VO.mjs +0 -13
  457. package/dist/lib/node-esm/ScriptContainer-RB5CSIZ7.mjs +0 -262
  458. package/dist/lib/node-esm/ScriptContainer-RB5CSIZ7.mjs.map +0 -7
  459. package/dist/lib/node-esm/app-graph-builder-7EYIHWH4.mjs +0 -65
  460. package/dist/lib/node-esm/app-graph-builder-7EYIHWH4.mjs.map +0 -7
  461. package/dist/lib/node-esm/artifact-definition-EBLXG5AR.mjs +0 -250
  462. package/dist/lib/node-esm/artifact-definition-EBLXG5AR.mjs.map +0 -7
  463. package/dist/lib/node-esm/chunk-35M3CHYE.mjs +0 -16
  464. package/dist/lib/node-esm/chunk-35M3CHYE.mjs.map +0 -7
  465. package/dist/lib/node-esm/chunk-ABAPR7VQ.mjs +0 -234
  466. package/dist/lib/node-esm/chunk-ABAPR7VQ.mjs.map +0 -7
  467. package/dist/lib/node-esm/chunk-AHXJ6NQU.mjs +0 -30
  468. package/dist/lib/node-esm/chunk-AHXJ6NQU.mjs.map +0 -7
  469. package/dist/lib/node-esm/chunk-HD6MDK3H.mjs +0 -558
  470. package/dist/lib/node-esm/chunk-HD6MDK3H.mjs.map +0 -7
  471. package/dist/lib/node-esm/chunk-ORZMINLO.mjs +0 -365
  472. package/dist/lib/node-esm/chunk-ORZMINLO.mjs.map +0 -7
  473. package/dist/lib/node-esm/chunk-OVSJYR6O.mjs +0 -41
  474. package/dist/lib/node-esm/chunk-OVSJYR6O.mjs.map +0 -7
  475. package/dist/lib/node-esm/chunk-YVJGDDNV.mjs +0 -154
  476. package/dist/lib/node-esm/chunk-YVJGDDNV.mjs.map +0 -7
  477. package/dist/lib/node-esm/compiler-EPFKQXPE.mjs +0 -83
  478. package/dist/lib/node-esm/compiler-EPFKQXPE.mjs.map +0 -7
  479. package/dist/lib/node-esm/index.mjs +0 -207
  480. package/dist/lib/node-esm/index.mjs.map +0 -7
  481. package/dist/lib/node-esm/intent-resolver-XLV6FPWH.mjs +0 -91
  482. package/dist/lib/node-esm/intent-resolver-XLV6FPWH.mjs.map +0 -7
  483. package/dist/lib/node-esm/meta.json +0 -1
  484. package/dist/lib/node-esm/react-surface-BTYC7MGG.mjs +0 -106
  485. package/dist/lib/node-esm/react-surface-BTYC7MGG.mjs.map +0 -7
  486. package/dist/lib/node-esm/settings-QCMDG2MZ.mjs +0 -25
  487. package/dist/lib/node-esm/settings-QCMDG2MZ.mjs.map +0 -7
  488. package/dist/lib/node-esm/types.mjs +0 -14
  489. package/dist/types/src/capabilities/artifact-definition.d.ts +0 -11
  490. package/dist/types/src/capabilities/artifact-definition.d.ts.map +0 -1
  491. package/dist/types/src/capabilities/capabilities.d.ts +0 -5
  492. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  493. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  494. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  495. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts +0 -11
  496. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts.map +0 -1
  497. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts +0 -18
  498. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts.map +0 -1
  499. package/dist/types/src/components/DeploymentDialog/index.d.ts +0 -4
  500. package/dist/types/src/components/DeploymentDialog/index.d.ts.map +0 -1
  501. package/dist/types/src/components/FrameContainer/FrameContainer.d.ts +0 -12
  502. package/dist/types/src/components/FrameContainer/FrameContainer.d.ts.map +0 -1
  503. package/dist/types/src/components/FrameContainer/frame.d.ts +0 -2
  504. package/dist/types/src/components/FrameContainer/frame.d.ts.map +0 -1
  505. package/dist/types/src/components/FrameContainer/index.d.ts +0 -2
  506. package/dist/types/src/components/FrameContainer/index.d.ts.map +0 -1
  507. package/dist/types/src/components/ScriptContainer.d.ts +0 -12
  508. package/dist/types/src/components/ScriptContainer.d.ts.map +0 -1
  509. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts +0 -8
  510. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts.map +0 -1
  511. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts +0 -6
  512. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts.map +0 -1
  513. package/dist/types/src/components/Settings/index.d.ts +0 -3
  514. package/dist/types/src/components/Settings/index.d.ts.map +0 -1
  515. package/dist/types/src/components/TestPanel/TestContainer.d.ts +0 -8
  516. package/dist/types/src/components/TestPanel/TestContainer.d.ts.map +0 -1
  517. package/dist/types/src/events.d.ts +0 -4
  518. package/dist/types/src/events.d.ts.map +0 -1
  519. package/dist/types/src/templates/chat.d.ts +0 -6
  520. package/dist/types/src/templates/chat.d.ts.map +0 -1
  521. package/dist/types/src/templates/chess.d.ts +0 -3
  522. package/dist/types/src/templates/chess.d.ts.map +0 -1
  523. package/dist/types/src/templates/echo.d.ts +0 -6
  524. package/dist/types/src/templates/echo.d.ts.map +0 -1
  525. package/dist/types/src/types.d.ts +0 -40
  526. package/dist/types/src/types.d.ts.map +0 -1
  527. package/src/capabilities/artifact-definition.ts +0 -228
  528. package/src/capabilities/capabilities.ts +0 -12
  529. package/src/capabilities/intent-resolver.ts +0 -80
  530. package/src/components/DeploymentDialog/DeploymentDialog.stories.tsx +0 -39
  531. package/src/components/DeploymentDialog/DeploymentDialog.tsx +0 -112
  532. package/src/components/DeploymentDialog/index.ts +0 -9
  533. package/src/components/FrameContainer/FrameContainer.tsx +0 -83
  534. package/src/components/FrameContainer/frame.html +0 -25
  535. package/src/components/FrameContainer/frame.tsx +0 -51
  536. package/src/components/FrameContainer/index.ts +0 -5
  537. package/src/components/ScriptContainer.tsx +0 -67
  538. package/src/components/Settings/ScriptObjectSettings.tsx +0 -206
  539. package/src/components/Settings/ScriptPluginSettings.tsx +0 -71
  540. package/src/components/Settings/index.ts +0 -6
  541. package/src/components/TestPanel/TestContainer.tsx +0 -26
  542. package/src/events.ts +0 -11
  543. package/src/templates/chat.ts +0 -96
  544. package/src/templates/chess.ts +0 -47
  545. package/src/templates/echo.ts +0 -8
  546. package/src/types.ts +0 -42
  547. /package/dist/lib/{browser/DeploymentDialog-RIGSJM6A.mjs.map → neutral/blueprints/index.mjs.map} +0 -0
  548. /package/dist/lib/{browser/types.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  549. /package/dist/lib/{node-esm/DeploymentDialog-6Z7JH3VO.mjs.map → neutral/index.mjs.map} +0 -0
  550. /package/dist/lib/{node-esm/types.mjs.map → neutral/meta.mjs.map} +0 -0
@@ -1,51 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
- import { createRoot } from 'react-dom/client';
7
-
8
- import { ClientProvider } from '@dxos/react-client';
9
-
10
- const init = async (f: () => Promise<Record<string, any>>) =>
11
- Object.entries(await f()).reduce<Record<string, any>>((map, [key, module]) => {
12
- map[key] = module;
13
- return map;
14
- }, {});
15
-
16
- const main = async () => {
17
- const { ClientServicesProxy } = await import('@dxos/react-client');
18
- const { createIFramePort } = await import('@dxos/rpc-tunnel');
19
-
20
- // @ts-ignore
21
- window.__DXOS_SANDBOX_MODULES__ = await init(async () => ({
22
- // prettier-ignore
23
- 'react': await import('react'),
24
- 'react-dom/client': await import('react-dom/client'),
25
- '@dxos/client': await import('@dxos/client'),
26
- '@dxos/react-client': await import('@dxos/react-client'),
27
- '@dxos/react-client/echo': await import('@dxos/react-client/echo'),
28
- '@dxos/plugin-explorer': await import('@dxos/plugin-explorer'),
29
- }));
30
-
31
- // eslint-disable-next-line no-new-func
32
- const Component = Function('React', "return React.lazy(() => import('@frame/bundle'))")(React);
33
-
34
- const services = new ClientServicesProxy(
35
- createIFramePort({
36
- channel: 'frame',
37
- origin: '*',
38
- }),
39
- );
40
-
41
- // TODO(burdon): Error handling.
42
- createRoot(document.getElementById('root')!).render(
43
- <div className='flex fixed inset-0'>
44
- <ClientProvider services={() => services}>
45
- <Component />
46
- </ClientProvider>
47
- </div>,
48
- );
49
- };
50
-
51
- void main();
@@ -1,5 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- export * from './FrameContainer';
@@ -1,67 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import React, { useMemo } from 'react';
6
-
7
- import { type ScriptType } from '@dxos/functions';
8
- import { createDocAccessor, getSpace } from '@dxos/react-client/echo';
9
- import { useIdentity } from '@dxos/react-client/halo';
10
- import { createDataExtensions, listener, stackItemContentEditorClassNames } from '@dxos/react-ui-editor';
11
- import { StackItem, type StackItemContentProps } from '@dxos/react-ui-stack';
12
-
13
- import { ScriptToolbar } from './ScriptToolbar';
14
- import { TypescriptEditor, type TypescriptEditorProps } from './TypescriptEditor';
15
- import { useDeployState, useToolbarState } from '../hooks';
16
- import { type ScriptSettingsProps } from '../types';
17
-
18
- export type ScriptEditorProps = Pick<StackItemContentProps, 'role'> & {
19
- script: ScriptType;
20
- settings?: ScriptSettingsProps;
21
- } & Pick<TypescriptEditorProps, 'env'>;
22
-
23
- export const ScriptContainer = ({ role, script, settings = { editorInputMode: 'vscode' }, env }: ScriptEditorProps) => {
24
- const identity = useIdentity();
25
- const space = getSpace(script);
26
- const state = useToolbarState();
27
- useDeployState({ state, script });
28
-
29
- const extensions = useMemo(
30
- () =>
31
- script.source.target
32
- ? [
33
- listener({
34
- onChange: (text) => {
35
- if (script.source.target?.content !== text) {
36
- script.changed = true;
37
- }
38
- },
39
- }),
40
- createDataExtensions({
41
- id: script.id,
42
- text: createDocAccessor(script.source.target, ['content']),
43
- space,
44
- identity,
45
- }),
46
- ]
47
- : [],
48
- [identity, space, script, script.source.target],
49
- );
50
-
51
- return (
52
- <StackItem.Content toolbar>
53
- <ScriptToolbar state={state} role={role} script={script} />
54
- <TypescriptEditor
55
- id={script.id}
56
- env={env}
57
- initialValue={script.source?.target?.content}
58
- extensions={extensions}
59
- classNames={stackItemContentEditorClassNames(role)}
60
- inputMode={settings.editorInputMode}
61
- toolbar
62
- />
63
- </StackItem.Content>
64
- );
65
- };
66
-
67
- export default ScriptContainer;
@@ -1,206 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- import { Octokit } from '@octokit/core';
6
- import React, { type ChangeEvent, useCallback, useEffect, useState } from 'react';
7
-
8
- import { createIntent, SettingsAction, useIntentDispatcher } from '@dxos/app-framework';
9
- import { FunctionType, type ScriptType, getInvocationUrl, getUserFunctionUrlInMetadata } from '@dxos/functions';
10
- import { log } from '@dxos/log';
11
- import { useClient } from '@dxos/react-client';
12
- import { Filter, getMeta, getSpace, Ref, useQuery } from '@dxos/react-client/echo';
13
- import { Button, Clipboard, Input, useControlledState, useTranslation } from '@dxos/react-ui';
14
- import { DataType } from '@dxos/schema';
15
-
16
- import { SCRIPT_PLUGIN } from '../../meta';
17
-
18
- export type ScriptObjectSettingsProps = {
19
- object: ScriptType;
20
- };
21
-
22
- export const ScriptObjectSettings = ({ object }: ScriptObjectSettingsProps) => {
23
- return (
24
- <>
25
- <Binding object={object} />
26
- <Publishing object={object} />
27
- </>
28
- );
29
- };
30
-
31
- export const ScriptProperties = ({ object }: ScriptObjectSettingsProps) => {
32
- const { t } = useTranslation(SCRIPT_PLUGIN);
33
- return (
34
- <Input.Root>
35
- <Input.Label>{t('description label')}</Input.Label>
36
- <Input.TextInput
37
- placeholder={t('description placeholder')}
38
- value={object.description ?? ''}
39
- onChange={(event) => {
40
- object.description = event.target.value;
41
- }}
42
- />
43
- </Input.Root>
44
- );
45
- };
46
-
47
- const Binding = ({ object }: ScriptObjectSettingsProps) => {
48
- const { t } = useTranslation(SCRIPT_PLUGIN);
49
- const client = useClient();
50
- const space = getSpace(object);
51
- const [fn] = useQuery(space, Filter.type(FunctionType, { source: Ref.make(object) }));
52
-
53
- const functionPath = fn && getUserFunctionUrlInMetadata(getMeta(fn));
54
- const functionUrl =
55
- functionPath &&
56
- getInvocationUrl(functionPath, client.config.values.runtime?.services?.edge?.url ?? '', {
57
- spaceId: space?.id,
58
- });
59
-
60
- const [binding, setBinding] = useControlledState(fn?.binding ?? '');
61
- const handleBindingChange = useCallback(
62
- (event: ChangeEvent<HTMLInputElement>) => {
63
- setBinding(event.target.value);
64
- },
65
- [setBinding],
66
- );
67
-
68
- const handleBindingBlur = useCallback(() => {
69
- fn.binding = binding;
70
- }, [fn, binding]);
71
-
72
- if (!fn || !functionUrl) {
73
- return null;
74
- }
75
-
76
- // TODO(burdon): Use form.
77
- return (
78
- <div role='form' className='flex flex-col gap-2 mlb-cardSpacingBlock'>
79
- <h2>{t('remote function settings heading')}</h2>
80
- <Input.Root>
81
- <div role='none' className='flex flex-col gap-1'>
82
- <Input.Label>{t('function url label')}</Input.Label>
83
- <div role='none' className='flex gap-1'>
84
- <Input.TextInput
85
- disabled
86
- value={functionUrl}
87
- onChange={(event) => {
88
- fn.name = event.target.value;
89
- }}
90
- />
91
- <Clipboard.IconButton value={functionUrl} />
92
- </div>
93
- </div>
94
- </Input.Root>
95
- <Input.Root>
96
- <div role='none' className='flex flex-col gap-1'>
97
- <Input.Label>{t('function binding label')}</Input.Label>
98
- <Input.TextInput
99
- placeholder={t('function binding placeholder')}
100
- value={binding}
101
- onChange={handleBindingChange}
102
- onBlur={handleBindingBlur}
103
- />
104
- </div>
105
- </Input.Root>
106
- </div>
107
- );
108
- };
109
-
110
- // TODO(burdon): Move to separate tab?
111
- const Publishing = ({ object }: ScriptObjectSettingsProps) => {
112
- const { t } = useTranslation(SCRIPT_PLUGIN);
113
- const { dispatchPromise: dispatch } = useIntentDispatcher();
114
- const space = getSpace(object);
115
- const [githubToken] = useQuery(space, Filter.type(DataType.AccessToken, { source: 'github.com' }));
116
- const gistKey = getMeta(object).keys.find(({ source }) => source === 'github.com');
117
- const [gistUrl, setGistUrl] = useState<string | undefined>();
118
-
119
- useEffect(() => {
120
- const token = githubToken?.token;
121
- const gistId = gistKey?.id;
122
- if (!token || !gistId) {
123
- setGistUrl(undefined);
124
- return;
125
- }
126
-
127
- const timeout = setTimeout(async () => {
128
- try {
129
- const octokit = new Octokit({ auth: githubToken.token });
130
- const response = await octokit.request('GET /gists/{gist_id}', {
131
- gist_id: gistId,
132
- });
133
- setGistUrl(response.data.html_url);
134
- } catch (err) {
135
- log.catch(err);
136
- setGistUrl(undefined);
137
- }
138
- });
139
-
140
- return () => clearTimeout(timeout);
141
- }, [githubToken, gistKey]);
142
-
143
- const handleOpenTokenManager = useCallback(
144
- () => dispatch(createIntent(SettingsAction.Open, { plugin: 'dxos.org/plugin/token-manager' })),
145
- [],
146
- );
147
-
148
- const [publishing, setPublishing] = useState(false);
149
- const handlePublish = useCallback(async () => {
150
- setPublishing(true);
151
- const octokit = new Octokit({ auth: githubToken.token });
152
- const source = await object.source.load();
153
- const filename = object.name ? kebabize(object.name) : 'composer-script';
154
- const files = { [`${filename}.ts`]: { content: source.content } };
155
-
156
- try {
157
- // TODO(wittjosiah): Factor out to intent.
158
- const meta = getMeta(object);
159
- const githubKey = meta.keys.find(({ source }) => source === 'github.com');
160
- const gistId = githubKey?.id;
161
- if (gistId) {
162
- await octokit.request('PATCH /gists/{gist_id}', {
163
- gist_id: gistId,
164
- files,
165
- });
166
- } else {
167
- const response = await octokit.request('POST /gists', {
168
- public: true,
169
- files,
170
- });
171
- if (response.data.id) {
172
- meta.keys.push({ source: 'github.com', id: response.data.id });
173
- }
174
- }
175
- } finally {
176
- setPublishing(false);
177
- }
178
- }, [object, githubToken]);
179
-
180
- return (
181
- <div className='flex flex-col gap-4 mlb-cardSpacingBlock'>
182
- <div>
183
- <h2>{t('script publish settings label')}</h2>
184
- <p className='text-description text-sm'>{t('script publish settings description')}</p>
185
- </div>
186
- {!githubToken && (
187
- <div className='flex flex-col gap-2'>
188
- <span>{t('no github token label')}</span>
189
- <Button onClick={handleOpenTokenManager}>{t('open token manager label')}</Button>
190
- </div>
191
- )}
192
- {githubToken && (
193
- <div className='flex justify-end gap-2'>
194
- {gistUrl && <Clipboard.IconButton value={gistUrl} />}
195
- <Button disabled={publishing} onClick={handlePublish}>
196
- {t(publishing ? 'publishing label' : 'publish label')}
197
- </Button>
198
- </div>
199
- )}
200
- </div>
201
- );
202
- };
203
-
204
- // TODO(wittjosiah): Factor out.
205
- // From https://stackoverflow.com/a/67243723/2804332
206
- const kebabize = (str: string) => str.replace(/[A-Z]+(?![a-z])|[A-Z]/g, ($, ofs) => (ofs ? '-' : '') + $.toLowerCase());
@@ -1,71 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
-
7
- import { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';
8
- import { useClient } from '@dxos/react-client';
9
- import { Button, Select, useTranslation } from '@dxos/react-ui';
10
- import { type EditorInputMode, EditorInputModes } from '@dxos/react-ui-editor';
11
- import { DeprecatedFormContainer, DeprecatedFormInput } from '@dxos/react-ui-form';
12
-
13
- import { meta } from '../../meta';
14
- import { type ScriptSettingsProps } from '../../types';
15
-
16
- export const ScriptPluginSettings = ({ settings }: { settings: ScriptSettingsProps }) => {
17
- const { t } = useTranslation(meta.id);
18
- const client = useClient();
19
-
20
- // TODO(burdon): Check token.
21
- const handleAuthenticate = async () => {
22
- const { identityKey } = client.halo.identity.get()!;
23
- await client.halo.writeCredentials([
24
- {
25
- issuer: identityKey,
26
- issuanceDate: new Date(),
27
- subject: {
28
- id: identityKey,
29
- assertion: {
30
- '@type': 'dxos.halo.credentials.ServiceAccess',
31
- serverName: 'hub.dxos.network',
32
- serverKey: identityKey,
33
- identityKey,
34
- capabilities: ['composer:beta'],
35
- },
36
- },
37
- } satisfies Credential,
38
- ]);
39
- };
40
-
41
- return (
42
- <DeprecatedFormContainer>
43
- {/* TODO(wittjosiah): Hide outside of dev environments. */}
44
- <DeprecatedFormInput label={t('authenticate action label')}>
45
- <Button onClick={handleAuthenticate}>{t('authenticate button label')}</Button>
46
- </DeprecatedFormInput>
47
-
48
- <DeprecatedFormInput label={t('editor input mode label')}>
49
- <Select.Root
50
- value={settings.editorInputMode ?? 'default'}
51
- onValueChange={(value) => {
52
- settings.editorInputMode = value as EditorInputMode;
53
- }}
54
- >
55
- <Select.TriggerButton placeholder={t('select editor input mode placeholder')} />
56
- <Select.Portal>
57
- <Select.Content>
58
- <Select.Viewport>
59
- {EditorInputModes.map((mode) => (
60
- <Select.Option key={mode} value={mode}>
61
- {t(`settings editor input mode ${mode} label`)}
62
- </Select.Option>
63
- ))}
64
- </Select.Viewport>
65
- </Select.Content>
66
- </Select.Portal>
67
- </Select.Root>
68
- </DeprecatedFormInput>
69
- </DeprecatedFormContainer>
70
- );
71
- };
@@ -1,6 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- export * from './ScriptObjectSettings';
6
- export * from './ScriptPluginSettings';
@@ -1,26 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
-
7
- import { type ScriptType } from '@dxos/functions';
8
- import { StackItem } from '@dxos/react-ui-stack';
9
-
10
- import { TestPanel } from './TestPanel';
11
- import { useDeployState, useToolbarState } from '../../hooks';
12
-
13
- export type TestContainerProps = {
14
- role: string;
15
- script: ScriptType;
16
- };
17
-
18
- export const TestContainer = ({ script, role }: TestContainerProps) => {
19
- const state = useToolbarState();
20
- useDeployState({ state, script });
21
- return (
22
- <StackItem.Content role={role}>
23
- <TestPanel functionUrl={state.functionUrl} />
24
- </StackItem.Content>
25
- );
26
- };
package/src/events.ts DELETED
@@ -1,11 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { defineEvent } from '@dxos/app-framework';
6
-
7
- import { SCRIPT_PLUGIN } from './meta';
8
-
9
- export namespace ScriptEvents {
10
- export const SetupCompiler = defineEvent(`${SCRIPT_PLUGIN}/event/setup-compiler`);
11
- }
@@ -1,96 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- // @ts-ignore
6
- import { transformServerSentEvents } from 'https://esm.sh/@dxos/script-toolbox?bundle=false';
7
-
8
- /**
9
- * Chatbot that answers questions based on the context data.
10
- */
11
- export default async ({ data: { bodyText }, context: { space, ai } }: any) => {
12
- let parsedRequest: any;
13
- try {
14
- parsedRequest = JSON.parse(bodyText);
15
- } catch (err) {
16
- const answer = await ai.run('@cf/meta/llama-3.1-8b-instruct', {
17
- stream: true,
18
- prompt: `
19
- Using only the context data below to answer the user's question.
20
- If you cannot answer the question from the provided content, then reply with "I don't know."
21
-
22
- CONTEXT:
23
- ${await getContext({ space })}
24
-
25
- QUESTION:
26
- ${bodyText}
27
- `,
28
- });
29
- return new Response(transformServerSentEvents(answer));
30
- }
31
-
32
- const promptId = parsedRequest.trigger.promptId;
33
- const promptObject = await space.crud.query({ id: promptId }).first();
34
-
35
- if (parsedRequest.data.objects.length !== 1) {
36
- return new Response('Message batches not supported.');
37
- }
38
-
39
- const messageId = parsedRequest.data.objects[0];
40
- let message;
41
- try {
42
- message = await space.crud.query({ id: messageId }).first();
43
- } catch (err) {
44
- return new Response('Message not replicated yet.', { status: 409 });
45
- }
46
-
47
- if (message.text.includes('--------')) {
48
- return new Response('Message was already processed.');
49
- }
50
-
51
- let prompt = promptObject.template;
52
- for (const input of promptObject.inputs) {
53
- let value: string | null = null;
54
- if (input.type === TemplateInputType.VALUE) {
55
- value = String(input.value);
56
- } else if (input.type === TemplateInputType.RETRIEVER) {
57
- value = await getContext({ space });
58
- } else if (input.type === TemplateInputType.PASS_THROUGH) {
59
- value = message.text;
60
- }
61
- if (value) {
62
- prompt = prompt.replaceAll(`{${input.name}}`, value);
63
- }
64
- }
65
-
66
- const answer = await ai.run('@cf/meta/llama-3.1-8b-instruct', {
67
- stream: false,
68
- prompt,
69
- });
70
- const response = { response: answer.response, prompt, message };
71
- const textWithAnswer = message.text + '\n--------\n\n' + answer.response;
72
- await space.crud.update({ id: messageId }, { text: textWithAnswer });
73
-
74
- return new Response(JSON.stringify(response));
75
- };
76
-
77
- const getContext = async ({ space }: any) => {
78
- let context = '';
79
- const { objects: docs } = await space.crud.query({ __typename: 'dxos.org/type/Document' }).run();
80
- for (const doc of docs) {
81
- const { content } = await space.crud.query({ id: doc.content }).first();
82
- context += content + '\n\n';
83
- }
84
- return context;
85
- };
86
-
87
- enum TemplateInputType {
88
- VALUE = 0,
89
- PASS_THROUGH = 1,
90
- RETRIEVER = 2,
91
- FUNCTION = 3,
92
- QUERY = 4,
93
- RESOLVER = 5,
94
- CONTEXT = 6,
95
- SCHEMA = 7,
96
- }
@@ -1,47 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- // @ts-ignore
6
- import { defineFunction, S } from 'dxos:functions';
7
- // @ts-ignore
8
- import { Chess } from 'https://esm.sh/chess.js@0.13.1?bundle=false';
9
-
10
- export default defineFunction({
11
- description: 'Plays a random move in a chess game.',
12
-
13
- inputSchema: S.Struct({
14
- changedObjectId: S.String.annotations({
15
- description: 'The objects to play the game on.',
16
- }),
17
- player: S.optional(S.Literal('w', 'b')).annotations({
18
- description: 'The player to play the game as.',
19
- }),
20
- }),
21
-
22
- outputSchema: S.Struct({
23
- state: S.String.annotations({
24
- description: 'The state of the game as an ASCII art board.',
25
- }),
26
- }),
27
-
28
- handler: async ({ data: { changedObjectId, player = 'b' }, context: { space } }: any) => {
29
- const { pgn } = await space.db.query({ id: changedObjectId }).first();
30
- const game = new Chess();
31
- game.load_pgn(pgn);
32
- if (game.turn() !== player) {
33
- return new Response('Invalid turn', { status: 409 });
34
- }
35
-
36
- const moves = game.moves();
37
- const move = moves[Math.floor(Math.random() * moves.length)];
38
- if (!move) {
39
- return new Response('No legal moves', { status: 406 });
40
- }
41
-
42
- game.move(move);
43
- const newPgn = game.pgn();
44
- await space.db.update({ id: changedObjectId }, { pgn: newPgn, fen: game.fen() });
45
- return { state: game.ascii() };
46
- },
47
- });
@@ -1,8 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- /**
6
- * Echos the request data.
7
- */
8
- export default async ({ data }: any) => data;
package/src/types.ts DELETED
@@ -1,42 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import { Schema } from 'effect';
6
-
7
- import { SpaceSchema } from '@dxos/client/echo';
8
- import { ScriptType } from '@dxos/functions';
9
- import { EditorInputMode } from '@dxos/react-ui-editor';
10
-
11
- import { SCRIPT_PLUGIN } from './meta';
12
-
13
- // TODO(burdon): Standardize export (e.g., @dxos/plugin-script/meta)?
14
- export { SCRIPT_PLUGIN };
15
-
16
- export namespace ScriptAction {
17
- const SCRIPT_ACTION = `${SCRIPT_PLUGIN}/action`;
18
-
19
- export const CreateScriptSchema = Schema.Struct({
20
- name: Schema.optional(Schema.String),
21
- // TODO(wittjosiah): Placeholder annotation?
22
- gistUrl: Schema.optional(Schema.String.annotations({ title: 'Import from Gist (url)' })),
23
- initialTemplateId: Schema.optional(Schema.String),
24
- });
25
-
26
- export type CreateScriptProps = Schema.Schema.Type<typeof CreateScriptSchema>;
27
-
28
- export class Create extends Schema.TaggedClass<Create>()(`${SCRIPT_ACTION}/create`, {
29
- input: Schema.extend(CreateScriptSchema, Schema.Struct({ space: SpaceSchema })),
30
- output: Schema.Struct({
31
- object: ScriptType,
32
- }),
33
- }) {}
34
- }
35
-
36
- export const ScriptSettingsSchema = Schema.mutable(
37
- Schema.Struct({
38
- editorInputMode: EditorInputMode,
39
- }),
40
- );
41
-
42
- export type ScriptSettingsProps = Schema.Schema.Type<typeof ScriptSettingsSchema>;