@dxos/plugin-script 0.8.4-main.c4373fc → 0.8.4-main.c85a9c8dae

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 (512) hide show
  1. package/README.md +15 -13
  2. package/dist/lib/browser/DeploymentDialog-IIOXAS47.mjs +138 -0
  3. package/dist/lib/browser/DeploymentDialog-IIOXAS47.mjs.map +7 -0
  4. package/dist/lib/browser/NotebookContainer-VVZOKGRC.mjs +850 -0
  5. package/dist/lib/browser/NotebookContainer-VVZOKGRC.mjs.map +7 -0
  6. package/dist/lib/browser/ScriptContainer-A5SSIUH6.mjs +93 -0
  7. package/dist/lib/browser/ScriptContainer-A5SSIUH6.mjs.map +7 -0
  8. package/dist/lib/browser/ScriptObjectSettings-HYYC7KXC.mjs +294 -0
  9. package/dist/lib/browser/ScriptObjectSettings-HYYC7KXC.mjs.map +7 -0
  10. package/dist/lib/browser/ScriptPluginSettings-UTWA7CBT.mjs +55 -0
  11. package/dist/lib/browser/ScriptPluginSettings-UTWA7CBT.mjs.map +7 -0
  12. package/dist/lib/browser/ScriptProperties-HREPUE65.mjs +28 -0
  13. package/dist/lib/browser/ScriptProperties-HREPUE65.mjs.map +7 -0
  14. package/dist/lib/browser/TestContainer-D4Y2K2TT.mjs +39 -0
  15. package/dist/lib/browser/TestContainer-D4Y2K2TT.mjs.map +7 -0
  16. package/dist/lib/browser/app-graph-builder-66ZDI72K.mjs +69 -0
  17. package/dist/lib/browser/app-graph-builder-66ZDI72K.mjs.map +7 -0
  18. package/dist/lib/browser/blueprint-definition-YMZEJBAZ.mjs +17 -0
  19. package/dist/lib/browser/blueprint-definition-YMZEJBAZ.mjs.map +7 -0
  20. package/dist/lib/browser/blueprints/index.mjs +8 -0
  21. package/dist/lib/browser/chunk-6IXFDTAI.mjs +113 -0
  22. package/dist/lib/browser/chunk-6IXFDTAI.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-ATTZUDT7.mjs +67 -0
  24. package/dist/lib/browser/chunk-ATTZUDT7.mjs.map +7 -0
  25. package/dist/lib/browser/chunk-G3XIOLLI.mjs +174 -0
  26. package/dist/lib/browser/chunk-G3XIOLLI.mjs.map +7 -0
  27. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  28. package/dist/lib/browser/chunk-J7PGML5B.mjs +105 -0
  29. package/dist/lib/browser/chunk-J7PGML5B.mjs.map +7 -0
  30. package/dist/lib/browser/chunk-MUEVLYXJ.mjs +397 -0
  31. package/dist/lib/browser/chunk-MUEVLYXJ.mjs.map +7 -0
  32. package/dist/lib/browser/chunk-PLDBKKYO.mjs +789 -0
  33. package/dist/lib/browser/chunk-PLDBKKYO.mjs.map +7 -0
  34. package/dist/lib/browser/chunk-Q66L5EUR.mjs +20 -0
  35. package/dist/lib/browser/chunk-Q66L5EUR.mjs.map +7 -0
  36. package/dist/lib/browser/chunk-TW27W3EL.mjs +29 -0
  37. package/dist/lib/browser/chunk-TW27W3EL.mjs.map +7 -0
  38. package/dist/lib/browser/{chunk-EZVXV6DA.mjs → chunk-WYR4QHPE.mjs} +7 -2
  39. package/dist/lib/browser/chunk-WYR4QHPE.mjs.map +7 -0
  40. package/dist/lib/browser/chunk-ZYU2LP6U.mjs +11 -0
  41. package/dist/lib/browser/chunk-ZYU2LP6U.mjs.map +7 -0
  42. package/dist/lib/browser/compiler-53G6ZHQM.mjs +99 -0
  43. package/dist/lib/browser/compiler-53G6ZHQM.mjs.map +7 -0
  44. package/dist/lib/browser/index.mjs +120 -136
  45. package/dist/lib/browser/index.mjs.map +4 -4
  46. package/dist/lib/browser/meta.json +1 -1
  47. package/dist/lib/browser/operation-resolver-CYEISDDK.mjs +79 -0
  48. package/dist/lib/browser/operation-resolver-CYEISDDK.mjs.map +7 -0
  49. package/dist/lib/browser/react-surface-26P6HAFD.mjs +141 -0
  50. package/dist/lib/browser/react-surface-26P6HAFD.mjs.map +7 -0
  51. package/dist/lib/browser/settings-76UM7442.mjs +36 -0
  52. package/dist/lib/browser/settings-76UM7442.mjs.map +7 -0
  53. package/dist/lib/browser/templates/index.mjs +2 -1
  54. package/dist/lib/browser/types/index.mjs +12 -6
  55. package/dist/lib/node-esm/DeploymentDialog-ZHPHEV2H.mjs +139 -0
  56. package/dist/lib/node-esm/DeploymentDialog-ZHPHEV2H.mjs.map +7 -0
  57. package/dist/lib/node-esm/NotebookContainer-ZLWTNMQA.mjs +851 -0
  58. package/dist/lib/node-esm/NotebookContainer-ZLWTNMQA.mjs.map +7 -0
  59. package/dist/lib/node-esm/ScriptContainer-S4UKQAWP.mjs +94 -0
  60. package/dist/lib/node-esm/ScriptContainer-S4UKQAWP.mjs.map +7 -0
  61. package/dist/lib/node-esm/ScriptObjectSettings-C5QBRERY.mjs +295 -0
  62. package/dist/lib/node-esm/ScriptObjectSettings-C5QBRERY.mjs.map +7 -0
  63. package/dist/lib/node-esm/ScriptPluginSettings-MFACDW4R.mjs +56 -0
  64. package/dist/lib/node-esm/ScriptPluginSettings-MFACDW4R.mjs.map +7 -0
  65. package/dist/lib/node-esm/ScriptProperties-FMNIX3KU.mjs +29 -0
  66. package/dist/lib/node-esm/ScriptProperties-FMNIX3KU.mjs.map +7 -0
  67. package/dist/lib/node-esm/TestContainer-AO45YPGV.mjs +40 -0
  68. package/dist/lib/node-esm/TestContainer-AO45YPGV.mjs.map +7 -0
  69. package/dist/lib/node-esm/app-graph-builder-IGAZTJ45.mjs +70 -0
  70. package/dist/lib/node-esm/app-graph-builder-IGAZTJ45.mjs.map +7 -0
  71. package/dist/lib/node-esm/blueprint-definition-5MGY6BRQ.mjs +18 -0
  72. package/dist/lib/node-esm/blueprint-definition-5MGY6BRQ.mjs.map +7 -0
  73. package/dist/lib/node-esm/blueprints/index.mjs +9 -0
  74. package/dist/lib/node-esm/blueprints/index.mjs.map +7 -0
  75. package/dist/lib/node-esm/chunk-5BG7OJGQ.mjs +176 -0
  76. package/dist/lib/node-esm/chunk-5BG7OJGQ.mjs.map +7 -0
  77. package/dist/lib/node-esm/{chunk-OG2SIKHE.mjs → chunk-5HSJPAK7.mjs} +7 -2
  78. package/dist/lib/node-esm/chunk-5HSJPAK7.mjs.map +7 -0
  79. package/dist/lib/node-esm/chunk-H46R2RS5.mjs +790 -0
  80. package/dist/lib/node-esm/chunk-H46R2RS5.mjs.map +7 -0
  81. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  82. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  83. package/dist/lib/node-esm/chunk-JGN7TDJH.mjs +69 -0
  84. package/dist/lib/node-esm/chunk-JGN7TDJH.mjs.map +7 -0
  85. package/dist/lib/node-esm/{chunk-OQGBKNYU.mjs → chunk-QG6ANK4B.mjs} +34 -17
  86. package/dist/lib/node-esm/chunk-QG6ANK4B.mjs.map +7 -0
  87. package/dist/lib/node-esm/chunk-S7DSCLOW.mjs +31 -0
  88. package/dist/lib/node-esm/chunk-S7DSCLOW.mjs.map +7 -0
  89. package/dist/lib/node-esm/chunk-TZ2EBTPQ.mjs +22 -0
  90. package/dist/lib/node-esm/chunk-TZ2EBTPQ.mjs.map +7 -0
  91. package/dist/lib/node-esm/chunk-UFBVE33O.mjs +12 -0
  92. package/dist/lib/node-esm/chunk-UFBVE33O.mjs.map +7 -0
  93. package/dist/lib/node-esm/chunk-WWD5LUU6.mjs +114 -0
  94. package/dist/lib/node-esm/chunk-WWD5LUU6.mjs.map +7 -0
  95. package/dist/lib/node-esm/chunk-ZDJ2FI7E.mjs +398 -0
  96. package/dist/lib/node-esm/chunk-ZDJ2FI7E.mjs.map +7 -0
  97. package/dist/lib/node-esm/compiler-HHQW7EP3.mjs +100 -0
  98. package/dist/lib/node-esm/compiler-HHQW7EP3.mjs.map +7 -0
  99. package/dist/lib/node-esm/index.mjs +120 -136
  100. package/dist/lib/node-esm/index.mjs.map +4 -4
  101. package/dist/lib/node-esm/meta.json +1 -1
  102. package/dist/lib/node-esm/operation-resolver-HFFDXWND.mjs +80 -0
  103. package/dist/lib/node-esm/operation-resolver-HFFDXWND.mjs.map +7 -0
  104. package/dist/lib/node-esm/react-surface-THCIK266.mjs +142 -0
  105. package/dist/lib/node-esm/react-surface-THCIK266.mjs.map +7 -0
  106. package/dist/lib/node-esm/settings-CCHDPLFJ.mjs +37 -0
  107. package/dist/lib/node-esm/settings-CCHDPLFJ.mjs.map +7 -0
  108. package/dist/lib/node-esm/templates/index.mjs +2 -1
  109. package/dist/lib/node-esm/types/index.mjs +12 -6
  110. package/dist/types/src/ScriptPlugin.d.ts +2 -1
  111. package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
  112. package/dist/types/src/blueprints/index.d.ts +2 -0
  113. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  114. package/dist/types/src/blueprints/script-blueprint.d.ts +4 -0
  115. package/dist/types/src/blueprints/script-blueprint.d.ts.map +1 -0
  116. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
  117. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
  118. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
  119. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
  120. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts +12 -0
  121. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +1 -0
  122. package/dist/types/src/capabilities/artifact-definition/index.d.ts +3 -0
  123. package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +1 -0
  124. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +6 -0
  125. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
  126. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +3 -0
  127. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
  128. package/dist/types/src/capabilities/compiler/compiler.d.ts +6 -0
  129. package/dist/types/src/capabilities/compiler/compiler.d.ts.map +1 -0
  130. package/dist/types/src/capabilities/compiler/index.d.ts +3 -0
  131. package/dist/types/src/capabilities/compiler/index.d.ts.map +1 -0
  132. package/dist/types/src/capabilities/index.d.ts +6 -7
  133. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  134. package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
  135. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
  136. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
  137. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
  138. package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
  139. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  140. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
  141. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  142. package/dist/types/src/capabilities/settings/index.d.ts +7 -0
  143. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
  144. package/dist/types/src/capabilities/settings/settings.d.ts +10 -0
  145. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
  146. package/dist/types/src/compiler/compiler.d.ts +1 -1
  147. package/dist/types/src/compiler/compiler.d.ts.map +1 -1
  148. package/dist/types/src/components/FrameContainer/FrameContainer.d.ts +1 -1
  149. package/dist/types/src/components/FrameContainer/FrameContainer.d.ts.map +1 -1
  150. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts +15 -0
  151. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts.map +1 -0
  152. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts +9 -0
  153. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts.map +1 -0
  154. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts +8 -10
  155. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts.map +1 -1
  156. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts +26 -8
  157. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts.map +1 -1
  158. package/dist/types/src/components/NotebookStack/index.d.ts +1 -0
  159. package/dist/types/src/components/NotebookStack/index.d.ts.map +1 -1
  160. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts +5 -0
  161. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts.map +1 -0
  162. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts +13 -0
  163. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts.map +1 -0
  164. package/dist/types/src/components/QueryEditor/index.d.ts +2 -0
  165. package/dist/types/src/components/QueryEditor/index.d.ts.map +1 -0
  166. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +8 -8
  167. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  168. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts +27 -8
  169. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts.map +1 -1
  170. package/dist/types/src/components/TestPanel/TestPanel.d.ts.map +1 -1
  171. package/dist/types/src/components/TestPanel/index.d.ts +0 -1
  172. package/dist/types/src/components/TestPanel/index.d.ts.map +1 -1
  173. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts +3 -2
  174. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts.map +1 -1
  175. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts +1 -7
  176. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts.map +1 -1
  177. package/dist/types/src/components/index.d.ts +4 -5
  178. package/dist/types/src/components/index.d.ts.map +1 -1
  179. package/dist/types/src/constants.d.ts +2 -0
  180. package/dist/types/src/constants.d.ts.map +1 -0
  181. package/dist/types/src/{components → containers}/DeploymentDialog/DeploymentDialog.d.ts +2 -4
  182. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.d.ts.map +1 -0
  183. package/dist/types/src/{components → containers}/DeploymentDialog/DeploymentDialog.stories.d.ts +25 -6
  184. package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.stories.d.ts.map +1 -0
  185. package/dist/types/src/containers/DeploymentDialog/index.d.ts +3 -0
  186. package/dist/types/src/containers/DeploymentDialog/index.d.ts.map +1 -0
  187. package/dist/types/src/containers/NotebookContainer/NotebookContainer.d.ts +7 -0
  188. package/dist/types/src/containers/NotebookContainer/NotebookContainer.d.ts.map +1 -0
  189. package/dist/types/src/containers/NotebookContainer/NotebookContainer.stories.d.ts +7 -0
  190. package/dist/types/src/containers/NotebookContainer/NotebookContainer.stories.d.ts.map +1 -0
  191. package/dist/types/src/containers/NotebookContainer/index.d.ts +3 -0
  192. package/dist/types/src/containers/NotebookContainer/index.d.ts.map +1 -0
  193. package/dist/types/src/containers/ScriptContainer/ScriptContainer.d.ts +10 -0
  194. package/dist/types/src/containers/ScriptContainer/ScriptContainer.d.ts.map +1 -0
  195. package/dist/types/src/containers/ScriptContainer/index.d.ts +3 -0
  196. package/dist/types/src/containers/ScriptContainer/index.d.ts.map +1 -0
  197. package/dist/types/src/containers/ScriptObjectSettings/ScriptObjectSettings.d.ts +7 -0
  198. package/dist/types/src/containers/ScriptObjectSettings/ScriptObjectSettings.d.ts.map +1 -0
  199. package/dist/types/src/containers/ScriptObjectSettings/index.d.ts +3 -0
  200. package/dist/types/src/containers/ScriptObjectSettings/index.d.ts.map +1 -0
  201. package/dist/types/src/containers/ScriptPluginSettings/ScriptPluginSettings.d.ts +8 -0
  202. package/dist/types/src/containers/ScriptPluginSettings/ScriptPluginSettings.d.ts.map +1 -0
  203. package/dist/types/src/containers/ScriptPluginSettings/index.d.ts +3 -0
  204. package/dist/types/src/containers/ScriptPluginSettings/index.d.ts.map +1 -0
  205. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts +7 -0
  206. package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts.map +1 -0
  207. package/dist/types/src/containers/ScriptProperties/index.d.ts +3 -0
  208. package/dist/types/src/containers/ScriptProperties/index.d.ts.map +1 -0
  209. package/dist/types/src/containers/TestContainer/TestContainer.d.ts +8 -0
  210. package/dist/types/src/containers/TestContainer/TestContainer.d.ts.map +1 -0
  211. package/dist/types/src/containers/TestContainer/index.d.ts +3 -0
  212. package/dist/types/src/containers/TestContainer/index.d.ts.map +1 -0
  213. package/dist/types/src/containers/index.d.ts +9 -0
  214. package/dist/types/src/containers/index.d.ts.map +1 -0
  215. package/dist/types/src/e2e/ai.test.d.ts +2 -0
  216. package/dist/types/src/e2e/ai.test.d.ts.map +1 -0
  217. package/dist/types/src/e2e/deploy.test.d.ts +2 -0
  218. package/dist/types/src/e2e/deploy.test.d.ts.map +1 -0
  219. package/dist/types/src/hooks/deploy.d.ts +17 -31
  220. package/dist/types/src/hooks/deploy.d.ts.map +1 -1
  221. package/dist/types/src/hooks/format.d.ts +5 -4
  222. package/dist/types/src/hooks/format.d.ts.map +1 -1
  223. package/dist/types/src/hooks/index.d.ts +1 -0
  224. package/dist/types/src/hooks/index.d.ts.map +1 -1
  225. package/dist/types/src/hooks/template.d.ts +7 -16
  226. package/dist/types/src/hooks/template.d.ts.map +1 -1
  227. package/dist/types/src/hooks/useCompiler.d.ts +7 -0
  228. package/dist/types/src/hooks/useCompiler.d.ts.map +1 -0
  229. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts.map +1 -1
  230. package/dist/types/src/hooks/useToolbarState.d.ts +8 -1
  231. package/dist/types/src/hooks/useToolbarState.d.ts.map +1 -1
  232. package/dist/types/src/index.d.ts +2 -1
  233. package/dist/types/src/index.d.ts.map +1 -1
  234. package/dist/types/src/meta.d.ts +2 -2
  235. package/dist/types/src/meta.d.ts.map +1 -1
  236. package/dist/types/src/notebook/compute-graph.d.ts +58 -0
  237. package/dist/types/src/notebook/compute-graph.d.ts.map +1 -0
  238. package/dist/types/src/notebook/compute-graph.test.d.ts +2 -0
  239. package/dist/types/src/notebook/compute-graph.test.d.ts.map +1 -0
  240. package/dist/types/src/notebook/eval.d.ts +13 -0
  241. package/dist/types/src/notebook/eval.d.ts.map +1 -0
  242. package/dist/types/src/notebook/index.d.ts +1 -1
  243. package/dist/types/src/notebook/index.d.ts.map +1 -1
  244. package/dist/types/src/notebook/vfs-parser.d.ts.map +1 -1
  245. package/dist/types/src/templates/anthropic.d.ts +8 -0
  246. package/dist/types/src/templates/anthropic.d.ts.map +1 -0
  247. package/dist/types/src/templates/chess-bot.d.ts +16 -0
  248. package/dist/types/src/templates/chess-bot.d.ts.map +1 -0
  249. package/dist/types/src/templates/commentary.d.ts +16 -0
  250. package/dist/types/src/templates/commentary.d.ts.map +1 -0
  251. package/dist/types/src/templates/forex-effect.d.ts +4 -1
  252. package/dist/types/src/templates/forex-effect.d.ts.map +1 -1
  253. package/dist/types/src/templates/forex.d.ts +4 -1
  254. package/dist/types/src/templates/forex.d.ts.map +1 -1
  255. package/dist/types/src/templates/index.d.ts +52 -1
  256. package/dist/types/src/templates/index.d.ts.map +1 -1
  257. package/dist/types/src/templates/ping.d.ts +3 -0
  258. package/dist/types/src/templates/ping.d.ts.map +1 -0
  259. package/dist/types/src/testing/data.d.ts +2 -9
  260. package/dist/types/src/testing/data.d.ts.map +1 -1
  261. package/dist/types/src/testing/simulator.test.d.ts +2 -0
  262. package/dist/types/src/testing/simulator.test.d.ts.map +1 -0
  263. package/dist/types/src/translations.d.ts +11 -3
  264. package/dist/types/src/translations.d.ts.map +1 -1
  265. package/dist/types/src/types/Notebook.d.ts +108 -0
  266. package/dist/types/src/types/Notebook.d.ts.map +1 -0
  267. package/dist/types/src/types/actions.d.ts +30 -48
  268. package/dist/types/src/types/actions.d.ts.map +1 -1
  269. package/dist/types/src/types/capabilities.d.ts +12 -0
  270. package/dist/types/src/types/capabilities.d.ts.map +1 -0
  271. package/dist/types/src/types/events.d.ts +5 -0
  272. package/dist/types/src/types/events.d.ts.map +1 -0
  273. package/dist/types/src/types/index.d.ts +4 -1
  274. package/dist/types/src/types/index.d.ts.map +1 -1
  275. package/dist/types/src/types/types.d.ts +6 -0
  276. package/dist/types/src/types/types.d.ts.map +1 -0
  277. package/dist/types/src/util/deploy.d.ts +4 -4
  278. package/dist/types/src/util/deploy.d.ts.map +1 -1
  279. package/dist/types/src/util/functions.d.ts +3 -3
  280. package/dist/types/src/util/functions.d.ts.map +1 -1
  281. package/dist/types/tsconfig.tsbuildinfo +1 -1
  282. package/package.json +114 -79
  283. package/src/ScriptPlugin.tsx +44 -85
  284. package/src/blueprints/index.ts +5 -0
  285. package/src/blueprints/script-blueprint.ts +31 -0
  286. package/src/capabilities/app-graph-builder/app-graph-builder.ts +56 -0
  287. package/src/capabilities/app-graph-builder/index.ts +7 -0
  288. package/src/capabilities/{artifact-definition.ts → artifact-definition/artifact-definition.ts} +97 -95
  289. package/src/capabilities/artifact-definition/index.ts +7 -0
  290. package/src/capabilities/blueprint-definition/blueprint-definition.ts +17 -0
  291. package/src/capabilities/blueprint-definition/index.ts +7 -0
  292. package/src/capabilities/compiler/compiler.ts +103 -0
  293. package/src/capabilities/compiler/index.ts +7 -0
  294. package/src/capabilities/index.ts +6 -10
  295. package/src/capabilities/operation-resolver/index.ts +7 -0
  296. package/src/capabilities/operation-resolver/operation-resolver.ts +75 -0
  297. package/src/capabilities/react-surface/index.ts +7 -0
  298. package/src/capabilities/react-surface/react-surface.tsx +121 -0
  299. package/src/capabilities/settings/index.ts +7 -0
  300. package/src/capabilities/settings/settings.ts +33 -0
  301. package/src/compiler/compiler.ts +10 -3
  302. package/src/components/FrameContainer/FrameContainer.tsx +6 -5
  303. package/src/components/FrameContainer/frame.html +21 -21
  304. package/src/components/NotebookStack/NotebookCell.tsx +215 -0
  305. package/src/components/NotebookStack/NotebookMenu.tsx +47 -0
  306. package/src/components/NotebookStack/NotebookStack.stories.tsx +33 -15
  307. package/src/components/NotebookStack/NotebookStack.tsx +55 -82
  308. package/src/components/NotebookStack/index.ts +1 -0
  309. package/src/components/QueryEditor/QueryEditor.stories.tsx +102 -0
  310. package/src/components/QueryEditor/QueryEditor.tsx +47 -0
  311. package/src/components/QueryEditor/index.ts +5 -0
  312. package/src/components/ScriptToolbar/ScriptToolbar.stories.tsx +46 -23
  313. package/src/components/ScriptToolbar/ScriptToolbar.tsx +28 -31
  314. package/src/components/TestPanel/TestPanel.tsx +61 -36
  315. package/src/components/TestPanel/index.ts +0 -1
  316. package/src/components/TypescriptEditor/TypescriptEditor.stories.tsx +26 -25
  317. package/src/components/TypescriptEditor/TypescriptEditor.tsx +70 -74
  318. package/src/components/index.ts +4 -9
  319. package/src/constants.ts +7 -0
  320. package/src/containers/DeploymentDialog/DeploymentDialog.stories.tsx +61 -0
  321. package/src/containers/DeploymentDialog/DeploymentDialog.tsx +99 -0
  322. package/src/containers/DeploymentDialog/index.ts +7 -0
  323. package/src/containers/NotebookContainer/NotebookContainer.stories.tsx +87 -0
  324. package/src/containers/NotebookContainer/NotebookContainer.tsx +268 -0
  325. package/src/containers/NotebookContainer/index.ts +7 -0
  326. package/src/containers/ScriptContainer/ScriptContainer.tsx +84 -0
  327. package/src/containers/ScriptContainer/index.ts +7 -0
  328. package/src/{components/Settings → containers/ScriptObjectSettings}/ScriptObjectSettings.tsx +55 -50
  329. package/src/containers/ScriptObjectSettings/index.ts +7 -0
  330. package/src/{components/Settings → containers/ScriptPluginSettings}/ScriptPluginSettings.tsx +19 -14
  331. package/src/containers/ScriptPluginSettings/index.ts +7 -0
  332. package/src/containers/ScriptProperties/ScriptProperties.tsx +33 -0
  333. package/src/containers/ScriptProperties/index.ts +7 -0
  334. package/src/containers/TestContainer/TestContainer.tsx +28 -0
  335. package/src/containers/TestContainer/index.ts +7 -0
  336. package/src/containers/index.ts +13 -0
  337. package/src/e2e/ai.test.ts +92 -0
  338. package/src/e2e/deploy.test.ts +64 -0
  339. package/src/hooks/deploy.ts +43 -35
  340. package/src/hooks/format.ts +8 -3
  341. package/src/hooks/index.ts +1 -0
  342. package/src/hooks/template.ts +22 -26
  343. package/src/hooks/useCompiler.ts +24 -0
  344. package/src/hooks/useCreateAndDeployScriptTemplates.ts +14 -16
  345. package/src/hooks/useToolbarState.ts +29 -4
  346. package/src/index.ts +2 -1
  347. package/src/meta.ts +8 -4
  348. package/src/notebook/compute-graph.test.ts +82 -0
  349. package/src/notebook/{notebook.ts → compute-graph.ts} +75 -33
  350. package/src/notebook/eval.ts +105 -0
  351. package/src/notebook/index.ts +1 -1
  352. package/src/notebook/vfs-parser.ts +43 -82
  353. package/src/templates/anthropic.ts +42 -0
  354. package/src/templates/chess-bot.ts +58 -0
  355. package/src/templates/commentary.ts +231 -0
  356. package/src/templates/data-generator.ts +1 -1
  357. package/src/templates/forex-effect.ts +22 -27
  358. package/src/templates/forex.ts +7 -6
  359. package/src/templates/gmail.ts +1 -2
  360. package/src/templates/index.ts +24 -11
  361. package/src/templates/ping.ts +17 -0
  362. package/src/testing/data.ts +43 -8
  363. package/src/testing/simulator.test.ts +40 -0
  364. package/src/translations.ts +11 -3
  365. package/src/types/Notebook.ts +41 -0
  366. package/src/types/actions.ts +23 -27
  367. package/src/types/capabilities.ts +17 -0
  368. package/src/types/events.ts +11 -0
  369. package/src/types/index.ts +4 -1
  370. package/src/types/types.ts +15 -0
  371. package/src/util/deploy.ts +30 -40
  372. package/src/util/functions.ts +32 -28
  373. package/src/vite-env.d.ts +2 -0
  374. package/dist/lib/browser/DeploymentDialog-7FNPALCV.mjs +0 -12
  375. package/dist/lib/browser/NotebookContainer-ZSXYRRZB.mjs +0 -578
  376. package/dist/lib/browser/NotebookContainer-ZSXYRRZB.mjs.map +0 -7
  377. package/dist/lib/browser/ScriptContainer-24LLLTLB.mjs +0 -149
  378. package/dist/lib/browser/ScriptContainer-24LLLTLB.mjs.map +0 -7
  379. package/dist/lib/browser/app-graph-builder-DPYULSME.mjs +0 -65
  380. package/dist/lib/browser/app-graph-builder-DPYULSME.mjs.map +0 -7
  381. package/dist/lib/browser/blueprint-definition-ET5KZ46I.mjs +0 -28
  382. package/dist/lib/browser/blueprint-definition-ET5KZ46I.mjs.map +0 -7
  383. package/dist/lib/browser/chunk-DXWTBOND.mjs +0 -282
  384. package/dist/lib/browser/chunk-DXWTBOND.mjs.map +0 -7
  385. package/dist/lib/browser/chunk-ETFBQURU.mjs +0 -254
  386. package/dist/lib/browser/chunk-ETFBQURU.mjs.map +0 -7
  387. package/dist/lib/browser/chunk-EZVXV6DA.mjs.map +0 -7
  388. package/dist/lib/browser/chunk-I3THDIT5.mjs +0 -90
  389. package/dist/lib/browser/chunk-I3THDIT5.mjs.map +0 -7
  390. package/dist/lib/browser/chunk-N6M34EUC.mjs +0 -112
  391. package/dist/lib/browser/chunk-N6M34EUC.mjs.map +0 -7
  392. package/dist/lib/browser/chunk-NNYSARXK.mjs +0 -153
  393. package/dist/lib/browser/chunk-NNYSARXK.mjs.map +0 -7
  394. package/dist/lib/browser/chunk-OKXN2N7M.mjs +0 -15
  395. package/dist/lib/browser/chunk-OKXN2N7M.mjs.map +0 -7
  396. package/dist/lib/browser/chunk-SRSEZWDY.mjs +0 -646
  397. package/dist/lib/browser/chunk-SRSEZWDY.mjs.map +0 -7
  398. package/dist/lib/browser/chunk-SWBZUZDX.mjs +0 -80
  399. package/dist/lib/browser/chunk-SWBZUZDX.mjs.map +0 -7
  400. package/dist/lib/browser/chunk-VFJJA4WR.mjs +0 -88
  401. package/dist/lib/browser/chunk-VFJJA4WR.mjs.map +0 -7
  402. package/dist/lib/browser/compiler-G2N2CG63.mjs +0 -98
  403. package/dist/lib/browser/compiler-G2N2CG63.mjs.map +0 -7
  404. package/dist/lib/browser/intent-resolver-FYZRLYNT.mjs +0 -105
  405. package/dist/lib/browser/intent-resolver-FYZRLYNT.mjs.map +0 -7
  406. package/dist/lib/browser/react-surface-CFRYAL2P.mjs +0 -127
  407. package/dist/lib/browser/react-surface-CFRYAL2P.mjs.map +0 -7
  408. package/dist/lib/browser/settings-L3HCZRBP.mjs +0 -24
  409. package/dist/lib/browser/settings-L3HCZRBP.mjs.map +0 -7
  410. package/dist/lib/node-esm/DeploymentDialog-AKAGR37W.mjs +0 -13
  411. package/dist/lib/node-esm/NotebookContainer-2O3N3XPE.mjs +0 -579
  412. package/dist/lib/node-esm/NotebookContainer-2O3N3XPE.mjs.map +0 -7
  413. package/dist/lib/node-esm/ScriptContainer-IKOB6FHQ.mjs +0 -150
  414. package/dist/lib/node-esm/ScriptContainer-IKOB6FHQ.mjs.map +0 -7
  415. package/dist/lib/node-esm/app-graph-builder-UXJGHXSL.mjs +0 -66
  416. package/dist/lib/node-esm/app-graph-builder-UXJGHXSL.mjs.map +0 -7
  417. package/dist/lib/node-esm/blueprint-definition-AIYFOT7Q.mjs +0 -30
  418. package/dist/lib/node-esm/blueprint-definition-AIYFOT7Q.mjs.map +0 -7
  419. package/dist/lib/node-esm/chunk-5IKGUOMI.mjs +0 -154
  420. package/dist/lib/node-esm/chunk-5IKGUOMI.mjs.map +0 -7
  421. package/dist/lib/node-esm/chunk-7MR2L4T3.mjs +0 -283
  422. package/dist/lib/node-esm/chunk-7MR2L4T3.mjs.map +0 -7
  423. package/dist/lib/node-esm/chunk-C33FKUSC.mjs +0 -91
  424. package/dist/lib/node-esm/chunk-C33FKUSC.mjs.map +0 -7
  425. package/dist/lib/node-esm/chunk-NUXZQQ6P.mjs +0 -16
  426. package/dist/lib/node-esm/chunk-NUXZQQ6P.mjs.map +0 -7
  427. package/dist/lib/node-esm/chunk-OG2SIKHE.mjs.map +0 -7
  428. package/dist/lib/node-esm/chunk-OQGBKNYU.mjs.map +0 -7
  429. package/dist/lib/node-esm/chunk-PMQ3D535.mjs +0 -647
  430. package/dist/lib/node-esm/chunk-PMQ3D535.mjs.map +0 -7
  431. package/dist/lib/node-esm/chunk-U4CZGISN.mjs +0 -255
  432. package/dist/lib/node-esm/chunk-U4CZGISN.mjs.map +0 -7
  433. package/dist/lib/node-esm/chunk-VRSDE4CI.mjs +0 -114
  434. package/dist/lib/node-esm/chunk-VRSDE4CI.mjs.map +0 -7
  435. package/dist/lib/node-esm/chunk-ZF5ULKED.mjs +0 -81
  436. package/dist/lib/node-esm/chunk-ZF5ULKED.mjs.map +0 -7
  437. package/dist/lib/node-esm/compiler-PLDAZ5GJ.mjs +0 -99
  438. package/dist/lib/node-esm/compiler-PLDAZ5GJ.mjs.map +0 -7
  439. package/dist/lib/node-esm/intent-resolver-6J3CFL5T.mjs +0 -106
  440. package/dist/lib/node-esm/intent-resolver-6J3CFL5T.mjs.map +0 -7
  441. package/dist/lib/node-esm/react-surface-NPKEO7SA.mjs +0 -128
  442. package/dist/lib/node-esm/react-surface-NPKEO7SA.mjs.map +0 -7
  443. package/dist/lib/node-esm/settings-YWGZP4EW.mjs +0 -25
  444. package/dist/lib/node-esm/settings-YWGZP4EW.mjs.map +0 -7
  445. package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
  446. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
  447. package/dist/types/src/capabilities/artifact-definition.d.ts +0 -11
  448. package/dist/types/src/capabilities/artifact-definition.d.ts.map +0 -1
  449. package/dist/types/src/capabilities/blueprint-definition.d.ts +0 -5
  450. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +0 -1
  451. package/dist/types/src/capabilities/capabilities.d.ts +0 -5
  452. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  453. package/dist/types/src/capabilities/compiler.d.ts +0 -4
  454. package/dist/types/src/capabilities/compiler.d.ts.map +0 -1
  455. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  456. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  457. package/dist/types/src/capabilities/react-surface.d.ts +0 -4
  458. package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
  459. package/dist/types/src/capabilities/settings.d.ts +0 -4
  460. package/dist/types/src/capabilities/settings.d.ts.map +0 -1
  461. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts.map +0 -1
  462. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts.map +0 -1
  463. package/dist/types/src/components/DeploymentDialog/index.d.ts +0 -4
  464. package/dist/types/src/components/DeploymentDialog/index.d.ts.map +0 -1
  465. package/dist/types/src/components/NotebookContainer.d.ts +0 -10
  466. package/dist/types/src/components/NotebookContainer.d.ts.map +0 -1
  467. package/dist/types/src/components/NotebookContainer.stories.d.ts +0 -231
  468. package/dist/types/src/components/NotebookContainer.stories.d.ts.map +0 -1
  469. package/dist/types/src/components/ScriptContainer.d.ts +0 -12
  470. package/dist/types/src/components/ScriptContainer.d.ts.map +0 -1
  471. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts +0 -8
  472. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts.map +0 -1
  473. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts +0 -6
  474. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts.map +0 -1
  475. package/dist/types/src/components/Settings/index.d.ts +0 -3
  476. package/dist/types/src/components/Settings/index.d.ts.map +0 -1
  477. package/dist/types/src/components/TestPanel/TestContainer.d.ts +0 -8
  478. package/dist/types/src/components/TestPanel/TestContainer.d.ts.map +0 -1
  479. package/dist/types/src/events.d.ts +0 -4
  480. package/dist/types/src/events.d.ts.map +0 -1
  481. package/dist/types/src/notebook/notebook.d.ts +0 -39
  482. package/dist/types/src/notebook/notebook.d.ts.map +0 -1
  483. package/dist/types/src/notebook/notebook.test.d.ts +0 -2
  484. package/dist/types/src/notebook/notebook.test.d.ts.map +0 -1
  485. package/dist/types/src/templates/chess.d.ts +0 -3
  486. package/dist/types/src/templates/chess.d.ts.map +0 -1
  487. package/dist/types/src/templates/echo.d.ts +0 -6
  488. package/dist/types/src/templates/echo.d.ts.map +0 -1
  489. package/dist/types/src/types/schema.d.ts +0 -35
  490. package/dist/types/src/types/schema.d.ts.map +0 -1
  491. package/src/capabilities/app-graph-builder.ts +0 -65
  492. package/src/capabilities/blueprint-definition.ts +0 -30
  493. package/src/capabilities/capabilities.ts +0 -12
  494. package/src/capabilities/compiler.ts +0 -34
  495. package/src/capabilities/intent-resolver.ts +0 -87
  496. package/src/capabilities/react-surface.tsx +0 -102
  497. package/src/capabilities/settings.ts +0 -21
  498. package/src/components/DeploymentDialog/DeploymentDialog.stories.tsx +0 -53
  499. package/src/components/DeploymentDialog/DeploymentDialog.tsx +0 -106
  500. package/src/components/DeploymentDialog/index.ts +0 -9
  501. package/src/components/NotebookContainer.stories.tsx +0 -36
  502. package/src/components/NotebookContainer.tsx +0 -82
  503. package/src/components/ScriptContainer.tsx +0 -69
  504. package/src/components/Settings/index.ts +0 -6
  505. package/src/components/TestPanel/TestContainer.tsx +0 -27
  506. package/src/events.ts +0 -11
  507. package/src/notebook/notebook.test.ts +0 -38
  508. package/src/templates/chess.ts +0 -49
  509. package/src/templates/echo.ts +0 -8
  510. package/src/types/schema.ts +0 -42
  511. /package/dist/lib/browser/{DeploymentDialog-7FNPALCV.mjs.map → blueprints/index.mjs.map} +0 -0
  512. /package/dist/lib/{node-esm/DeploymentDialog-AKAGR37W.mjs.map → browser/chunk-J5LGTIGS.mjs.map} +0 -0
@@ -1,87 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Octokit } from '@octokit/core';
6
- import * as Predicate from 'effect/Predicate';
7
-
8
- import { Capabilities, LayoutAction, contributes, createIntent, createResolver } from '@dxos/app-framework';
9
- import { Obj, Ref } from '@dxos/echo';
10
- import { ScriptType } from '@dxos/functions';
11
- import { TokenManagerAction } from '@dxos/plugin-token-manager/types';
12
- import { DataType } from '@dxos/schema';
13
-
14
- import { DEPLOYMENT_DIALOG } from '../components';
15
- import { defaultScriptsForIntegration } from '../meta';
16
- import { templates } from '../templates';
17
- import { Notebook, ScriptAction } from '../types';
18
-
19
- export default () =>
20
- contributes(Capabilities.IntentResolver, [
21
- createResolver({
22
- intent: ScriptAction.CreateScript,
23
- resolve: async ({ name, gistUrl, initialTemplateId }) => {
24
- let content = templates[0].source;
25
-
26
- const gistId = gistUrl?.split('/').at(-1);
27
- if (gistId) {
28
- // TODO(wittjosiah): Capability which contributes Octokit?
29
- // NOTE: AccessToken not needed to read public gists.
30
- const octokit = new Octokit();
31
- const response = await octokit.request('GET /gists/{gist_id}', {
32
- gist_id: gistId,
33
- });
34
- const gistContent = Object.values(response.data.files ?? {})[0]?.content;
35
- if (gistContent) {
36
- content = gistContent;
37
- }
38
- }
39
-
40
- if (initialTemplateId) {
41
- const template = templates.find((template) => template.id === initialTemplateId);
42
- if (template) {
43
- content = template.source;
44
- name = template.name;
45
- }
46
- }
47
-
48
- return {
49
- data: {
50
- object: Obj.make(ScriptType, { name, source: Ref.make(DataType.makeText(content)) }),
51
- },
52
- };
53
- },
54
- }),
55
- createResolver({
56
- intent: ScriptAction.CreateNotebook,
57
- resolve: async ({ name }) => {
58
- return {
59
- data: {
60
- object: Obj.make(Notebook.Notebook, { name, cells: [] }),
61
- },
62
- };
63
- },
64
- }),
65
- createResolver({
66
- intent: TokenManagerAction.AccessTokenCreated,
67
- resolve: async ({ accessToken }) => {
68
- const scriptTemplates = (defaultScriptsForIntegration[accessToken.source] ?? [])
69
- .map((id) => templates.find((t) => t.id === id))
70
- .filter(Predicate.isNotNullable);
71
-
72
- if (scriptTemplates.length > 0) {
73
- return {
74
- intents: [
75
- createIntent(LayoutAction.UpdateDialog, {
76
- part: 'dialog',
77
- subject: DEPLOYMENT_DIALOG,
78
- options: { blockAlign: 'start', state: true, props: { accessToken, scriptTemplates } },
79
- }),
80
- ],
81
- };
82
- }
83
-
84
- return { data: undefined };
85
- },
86
- }),
87
- ]);
@@ -1,102 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
-
7
- import { Capabilities, contributes, createSurface, useCapability } from '@dxos/app-framework';
8
- import { InvocationTraceContainer } from '@dxos/devtools';
9
- import { Obj } from '@dxos/echo';
10
- import { ScriptType } from '@dxos/functions';
11
- import { SettingsStore } from '@dxos/local-storage';
12
- import { getSpace } from '@dxos/react-client/echo';
13
- import { StackItem } from '@dxos/react-ui-stack';
14
- import { type DataType } from '@dxos/schema';
15
-
16
- import {
17
- DEPLOYMENT_DIALOG,
18
- DeploymentDialog,
19
- NotebookContainer,
20
- ScriptContainer,
21
- ScriptObjectSettings,
22
- ScriptPluginSettings,
23
- ScriptProperties,
24
- TestContainer,
25
- } from '../components';
26
- import { meta } from '../meta';
27
- import { Notebook, type ScriptSettings } from '../types';
28
-
29
- import { ScriptCapabilities } from './capabilities';
30
-
31
- export default () =>
32
- contributes(Capabilities.ReactSurface, [
33
- createSurface({
34
- id: `${meta.id}/plugin-settings`,
35
- role: 'article',
36
- filter: (data): data is { subject: SettingsStore<ScriptSettings> } =>
37
- data.subject instanceof SettingsStore && data.subject.prefix === meta.id,
38
- component: ({ data: { subject } }) => <ScriptPluginSettings settings={subject.value} />,
39
- }),
40
- createSurface({
41
- id: `${meta.id}/script/article`,
42
- role: ['article', 'section'],
43
- filter: (data): data is { subject: ScriptType } => Obj.instanceOf(ScriptType, data.subject),
44
- component: ({ data, role }) => {
45
- const compiler = useCapability(ScriptCapabilities.Compiler);
46
- // TODO(dmaretskyi): Since settings store is not reactive, this would break on the script plugin being enabled without a page reload.
47
- const settings = useCapability(Capabilities.SettingsStore).getStore<ScriptSettings>(meta.id)?.value;
48
- return <ScriptContainer role={role} script={data.subject} settings={settings} env={compiler.environment} />;
49
- },
50
- }),
51
- createSurface({
52
- id: `${meta.id}/notebook/article`,
53
- role: 'article',
54
- filter: (data): data is { subject: Notebook.Notebook } => Obj.instanceOf(Notebook.Notebook, data.subject),
55
- component: ({ data, role }) => {
56
- const compiler = useCapability(ScriptCapabilities.Compiler);
57
- return <NotebookContainer role={role} notebook={data.subject} env={compiler.environment} />;
58
- },
59
- }),
60
- // TODO(burdon): Standardize PluginSettings vs ObjectSettings.
61
- // TODO(burdon): Why is ScriptProperties different from ScriptObjectSettings?
62
- createSurface({
63
- id: `${meta.id}/companion/base-settings`,
64
- role: 'base-object-settings',
65
- filter: (data): data is { subject: ScriptType } => Obj.instanceOf(ScriptType, data.subject),
66
- component: ({ data }) => <ScriptProperties object={data.subject} />,
67
- }),
68
- createSurface({
69
- id: `${meta.id}/companion/settings`,
70
- role: 'object-settings',
71
- filter: (data): data is { subject: ScriptType } => Obj.instanceOf(ScriptType, data.subject),
72
- component: ({ data }) => <ScriptObjectSettings object={data.subject} />,
73
- }),
74
- createSurface({
75
- id: `${meta.id}/companion/execute`,
76
- role: 'article',
77
- filter: (data): data is { companionTo: ScriptType } =>
78
- Obj.instanceOf(ScriptType, data.companionTo) && data.subject === 'execute',
79
- component: ({ data, role }) => <TestContainer script={data.companionTo} role={role} />,
80
- }),
81
- createSurface({
82
- id: `${meta.id}/companion/logs`,
83
- role: 'article',
84
- filter: (data): data is { companionTo: ScriptType } =>
85
- Obj.instanceOf(ScriptType, data.companionTo) && data.subject === 'logs',
86
- component: ({ data, role }) => {
87
- const space = getSpace(data.companionTo);
88
- return (
89
- <StackItem.Content>
90
- <InvocationTraceContainer space={space} target={data.companionTo} detailAxis='block' />
91
- </StackItem.Content>
92
- );
93
- },
94
- }),
95
- createSurface({
96
- id: DEPLOYMENT_DIALOG,
97
- role: 'dialog',
98
- filter: (data): data is { props: { accessToken: DataType.AccessToken; scriptTemplates: any } } =>
99
- data.component === DEPLOYMENT_DIALOG,
100
- component: ({ data }) => <DeploymentDialog {...data.props} />,
101
- }),
102
- ]);
@@ -1,21 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capabilities, contributes } from '@dxos/app-framework';
6
- import { live } from '@dxos/live-object';
7
-
8
- import { meta } from '../meta';
9
- import { ScriptSettings } from '../types';
10
-
11
- export default () => {
12
- const settings = live<ScriptSettings>({
13
- editorInputMode: 'vscode',
14
- });
15
-
16
- return contributes(Capabilities.Settings, {
17
- prefix: meta.id,
18
- schema: ScriptSettings,
19
- value: settings,
20
- });
21
- };
@@ -1,53 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import { type Meta, type StoryObj } from '@storybook/react-vite';
6
- import React from 'react';
7
-
8
- import { IntentPlugin } from '@dxos/app-framework';
9
- import { withPluginManager } from '@dxos/app-framework/testing';
10
- import { Obj } from '@dxos/echo';
11
- import { ClientPlugin } from '@dxos/plugin-client';
12
- import { Dialog } from '@dxos/react-ui';
13
- import { withTheme } from '@dxos/react-ui/testing';
14
- import { DataType } from '@dxos/schema';
15
-
16
- import { translations } from '../../translations';
17
-
18
- import { DeploymentDialog, type DeploymentDialogProps } from './DeploymentDialog';
19
-
20
- const DefaultStory = (props: DeploymentDialogProps) => {
21
- return (
22
- <Dialog.Root defaultOpen={true}>
23
- <DeploymentDialog {...props} />
24
- </Dialog.Root>
25
- );
26
- };
27
-
28
- const meta = {
29
- title: 'plugins/plugin-script/DeploymentDialog',
30
- component: DeploymentDialog,
31
- render: DefaultStory,
32
- parameters: { translations },
33
- // TODO(wittjosiah): Try to write story which does not depend on plugin manager.
34
- decorators: [withTheme, withPluginManager({ plugins: [IntentPlugin(), ClientPlugin({})] })],
35
- } satisfies Meta<typeof DefaultStory>;
36
-
37
- export default meta;
38
-
39
- type Story = StoryObj<typeof meta>;
40
-
41
- export const Default: Story = {
42
- args: {
43
- accessToken: Obj.make(DataType.AccessToken, {
44
- source: 'example.com',
45
- token: 'example-token',
46
- }),
47
- scriptTemplates: [
48
- { id: 't-1', name: 'Script 1', source: 'template1' },
49
- { id: 't-2', name: 'Script 2', source: 'template2' },
50
- { id: 't-3', name: 'Script 3', source: 'template3' },
51
- ],
52
- },
53
- };
@@ -1,106 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React, { useEffect, useMemo } from 'react';
6
-
7
- import { LayoutAction, createIntent, useIntentDispatcher } from '@dxos/app-framework';
8
- import { getSpace } from '@dxos/react-client/echo';
9
- import { Button, Dialog, Icon, useTranslation } from '@dxos/react-ui';
10
- import { type DataType } from '@dxos/schema';
11
-
12
- import { useCreateAndDeployScriptTemplates } from '../../hooks/useCreateAndDeployScriptTemplates';
13
- import { meta } from '../../meta';
14
- import { type Template } from '../../templates';
15
-
16
- export const DEPLOYMENT_DIALOG = `${meta.id}/deployment/dialog`;
17
-
18
- // TODO(ZaymonFC):
19
- // - Show activity and feedback to the user.
20
- // - Only take an array of templateIds and get the name from the data.
21
- // - Pending / onError states.
22
-
23
- export type DeploymentDialogProps = {
24
- accessToken: DataType.AccessToken;
25
- scriptTemplates: Template[];
26
- };
27
-
28
- export const DeploymentDialog = ({ accessToken, scriptTemplates }: DeploymentDialogProps) => {
29
- const { t } = useTranslation(meta.id);
30
- const space = useMemo(() => getSpace(accessToken), [accessToken]);
31
-
32
- // TODO(ZaymonFC): Thinking further. All of this should get moved to intents to run async in the background.
33
- // Deployment shouldn't be tied to the lifecycle of the dialogue component.
34
- const { handleCreateAndDeployScripts, status } = useCreateAndDeployScriptTemplates(space, scriptTemplates);
35
- const { dispatchPromise: dispatch } = useIntentDispatcher();
36
-
37
- useEffect(() => {
38
- if (status === 'success') {
39
- // TODO(ZaymonFC): We can probably re-use this toast for normal script deployment.
40
- void dispatch(
41
- createIntent(LayoutAction.AddToast, {
42
- part: 'toast',
43
- subject: {
44
- id: `${meta.id}/deployment-success`,
45
- icon: 'ph--check--regular',
46
- duration: Infinity,
47
- title: ['script deployment toast label', { ns: meta.id, count: scriptTemplates.length }],
48
- description: ['script deployment toast description', { ns: meta.id, count: scriptTemplates.length }],
49
- closeLabel: ['script deployment toast close label', { ns: meta.id, count: scriptTemplates.length }],
50
- },
51
- }),
52
- );
53
- void dispatch(createIntent(LayoutAction.UpdateDialog, { part: 'dialog', options: { state: false } }));
54
- }
55
- if (status === 'error') {
56
- void dispatch(createIntent(LayoutAction.UpdateDialog, { part: 'dialog', options: { state: false } }));
57
- void dispatch(
58
- createIntent(LayoutAction.AddToast, {
59
- part: 'toast',
60
- subject: {
61
- id: `${meta.id}/deployment-error`,
62
- icon: 'ph--warning--regular',
63
- duration: Infinity,
64
- title: ['script deployment error toast label', { ns: meta.id, count: scriptTemplates.length }],
65
- description: ['script deployment error toast description', { ns: meta.id, count: scriptTemplates.length }],
66
- closeLabel: ['script deployment error toast close label', { ns: meta.id, count: scriptTemplates.length }],
67
- },
68
- }),
69
- );
70
- }
71
- }, [status, dispatch]);
72
-
73
- return (
74
- <Dialog.Content>
75
- <div className='flex justify-between items-center'>
76
- <Dialog.Title>{t('deployment dialog title')}</Dialog.Title>
77
- <Dialog.Close asChild>
78
- <Button density='fine' variant='ghost'>
79
- <Icon icon='ph--x--regular' size={4} />
80
- </Button>
81
- </Dialog.Close>
82
- </div>
83
- <div role='none' className='plb-4'>
84
- {/* TODO: Implement deployment logic and UI. */}
85
- <p>{t('deployment dialog scripts found message', { count: scriptTemplates.length })}</p>
86
- <ul className='pbs-2'>
87
- {scriptTemplates.map((template) => {
88
- return <li key={template.id}>{template.name}</li>;
89
- })}
90
- </ul>
91
- </div>
92
- <div role='none' className='flex flex-row-reverse gap-1'>
93
- <Button variant='primary' onClick={handleCreateAndDeployScripts} disabled={status === 'pending'}>
94
- {status === 'pending'
95
- ? t('deployment dialog deploy functions pending button label', { count: scriptTemplates.length })
96
- : t('deployment dialog deploy functions button label', { count: scriptTemplates.length })}
97
- </Button>
98
- <Dialog.Close asChild disabled={status === 'pending'}>
99
- <Button disabled={status === 'pending'}>{t('deployment dialog skip button label')}</Button>
100
- </Dialog.Close>
101
- </div>
102
- </Dialog.Content>
103
- );
104
- };
105
-
106
- export default DeploymentDialog;
@@ -1,9 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { DEPLOYMENT_DIALOG, DeploymentDialog } from './DeploymentDialog';
6
-
7
- export { DEPLOYMENT_DIALOG };
8
-
9
- export default DeploymentDialog;
@@ -1,36 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import { type Meta, type StoryObj } from '@storybook/react-vite';
6
-
7
- import { withClientProvider } from '@dxos/react-client/testing';
8
- import { withTheme } from '@dxos/react-ui/testing';
9
-
10
- import { createNotebook } from '../testing';
11
- import { translations } from '../translations';
12
-
13
- import { NotebookContainer } from './NotebookContainer';
14
-
15
- const meta = {
16
- title: 'plugins/plugin-script/NotebookContainer',
17
- component: NotebookContainer,
18
- decorators: [withTheme, withClientProvider()],
19
- parameters: {
20
- layout: {
21
- type: 'column',
22
- className: 'is-prose',
23
- },
24
- translations,
25
- },
26
- } satisfies Meta<typeof NotebookContainer>;
27
-
28
- export default meta;
29
-
30
- type Story = StoryObj<typeof meta>;
31
-
32
- export const Default: Story = {
33
- args: {
34
- notebook: createNotebook(),
35
- },
36
- };
@@ -1,82 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React, { useCallback, useMemo } from 'react';
6
-
7
- import { Ref } from '@dxos/echo';
8
- import { Toolbar, useTranslation } from '@dxos/react-ui';
9
- import { StackItem } from '@dxos/react-ui-stack';
10
- import { DataType } from '@dxos/schema';
11
-
12
- import { meta } from '../meta';
13
- import { ComputeGraph } from '../notebook';
14
- import { type Notebook } from '../types';
15
-
16
- import { NotebookStack, type NotebookStackProps } from './NotebookStack';
17
- import { type TypescriptEditorProps } from './TypescriptEditor';
18
-
19
- export type NotebookContainerProps = {
20
- role?: string;
21
- notebook?: Notebook.Notebook;
22
- } & Pick<TypescriptEditorProps, 'env'>;
23
-
24
- export const NotebookContainer = ({ notebook, env }: NotebookContainerProps) => {
25
- const { t } = useTranslation(meta.id);
26
-
27
- const graph = useMemo(() => notebook && new ComputeGraph(notebook), [notebook]);
28
-
29
- const handleCompute = useCallback(() => {
30
- graph?.evaluate();
31
- }, [graph]);
32
-
33
- const handleCellInsert = useCallback<NonNullable<NotebookStackProps['onCellInsert']>>(
34
- (after) => {
35
- const idx = after ? notebook!.cells.findIndex((cell) => cell.id === after) : notebook!.cells.length;
36
- notebook?.cells.splice(idx, 0, {
37
- id: crypto.randomUUID(),
38
- script: Ref.make(DataType.makeText('\n\n\n')),
39
- });
40
- },
41
- [notebook],
42
- );
43
-
44
- const handleCellDelete = useCallback<NonNullable<NotebookStackProps['onCellDelete']>>(
45
- (id: string) => {
46
- const idx = notebook!.cells.findIndex((cell) => cell.id === id);
47
- if (idx !== -1) {
48
- notebook!.cells.splice(idx, 1);
49
- }
50
- },
51
- [notebook],
52
- );
53
-
54
- return (
55
- <StackItem.Content classNames='container-max-width border-l border-r border-subduedSeparator' toolbar>
56
- <Toolbar.Root>
57
- <Toolbar.IconButton
58
- icon='ph--plus--regular'
59
- iconOnly
60
- label={t('add cell label')}
61
- onClick={() => handleCellInsert('')}
62
- />
63
- <Toolbar.IconButton
64
- icon='ph--play--fill'
65
- iconOnly
66
- label={t('compute label')}
67
- classNames='text-green-500'
68
- onClick={handleCompute}
69
- />
70
- </Toolbar.Root>
71
- <NotebookStack
72
- notebook={notebook}
73
- graph={graph}
74
- env={env}
75
- onCellInsert={handleCellInsert}
76
- onCellDelete={handleCellDelete}
77
- />
78
- </StackItem.Content>
79
- );
80
- };
81
-
82
- export default NotebookContainer;
@@ -1,69 +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 } from '@dxos/react-ui-stack';
12
-
13
- import { useDeployState, useToolbarState } from '../hooks';
14
- import { type ScriptSettings } from '../types';
15
-
16
- import { ScriptToolbar } from './ScriptToolbar';
17
- import { TypescriptEditor, type TypescriptEditorProps } from './TypescriptEditor';
18
-
19
- export type ScriptEditorProps = {
20
- role: string;
21
- script: ScriptType;
22
- settings?: ScriptSettings;
23
- } & Pick<TypescriptEditorProps, 'env'>;
24
-
25
- export const ScriptContainer = ({ role, script, settings = { editorInputMode: 'vscode' }, env }: ScriptEditorProps) => {
26
- const identity = useIdentity();
27
- const space = getSpace(script);
28
- const state = useToolbarState();
29
- useDeployState({ state, script });
30
-
31
- const extensions = useMemo(
32
- () =>
33
- script.source.target
34
- ? [
35
- listener({
36
- onChange: (text) => {
37
- if (script.source.target?.content !== text) {
38
- script.changed = true;
39
- }
40
- },
41
- }),
42
- createDataExtensions({
43
- id: script.id,
44
- text: createDocAccessor(script.source.target, ['content']),
45
- space,
46
- identity,
47
- }),
48
- ]
49
- : [],
50
- [identity, space, script, script.source.target],
51
- );
52
-
53
- return (
54
- <StackItem.Content toolbar>
55
- <ScriptToolbar state={state} role={role} script={script} />
56
- <TypescriptEditor
57
- id={script.id}
58
- env={env}
59
- initialValue={script.source?.target?.content}
60
- extensions={extensions}
61
- classNames={stackItemContentEditorClassNames(role)}
62
- inputMode={settings.editorInputMode}
63
- toolbar
64
- />
65
- </StackItem.Content>
66
- );
67
- };
68
-
69
- export default ScriptContainer;
@@ -1,6 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- export * from './ScriptObjectSettings';
6
- export * from './ScriptPluginSettings';
@@ -1,27 +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 { useDeployState, useToolbarState } from '../../hooks';
11
-
12
- import { TestPanel } from './TestPanel';
13
-
14
- export type TestContainerProps = {
15
- role: string;
16
- script: ScriptType;
17
- };
18
-
19
- export const TestContainer = ({ script }: TestContainerProps) => {
20
- const state = useToolbarState();
21
- useDeployState({ state, script });
22
- return (
23
- <StackItem.Content>
24
- <TestPanel functionUrl={state.functionUrl} />
25
- </StackItem.Content>
26
- );
27
- };
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 { meta } from './meta';
8
-
9
- export namespace ScriptEvents {
10
- export const SetupCompiler = defineEvent(`${meta.id}/event/setup-compiler`);
11
- }
@@ -1,38 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { describe, expect, test } from 'vitest';
6
-
7
- import { createNotebook } from '../testing';
8
-
9
- import { ComputeGraph } from './notebook';
10
-
11
- // TODO(burdon): Create test where one cell could be a AI prompt that references other cells.
12
- // TODO(burdon): UI cells: Value, Query, TS Expression, Prompt (show input and output).
13
-
14
- describe('notebook', () => {
15
- test('parse dependency graph', () => {
16
- const notebook = createNotebook();
17
- const computer = new ComputeGraph(notebook);
18
- const result = computer.parse();
19
-
20
- const getId = (i: number) => notebook.cells[i].id;
21
-
22
- // Check dependencies.
23
- expect(result.dependencyGraph).toMatchObject({
24
- [getId(0)]: [getId(1), getId(2)],
25
- [getId(3)]: [getId(1)],
26
- [getId(4)]: [getId(0), getId(3)],
27
- });
28
-
29
- // Compute values.
30
- const values = computer.evaluate();
31
- expect(values).toEqual({
32
- [getId(0)]: 300,
33
- [getId(2)]: 200,
34
- [getId(3)]: 200,
35
- [getId(4)]: 500,
36
- });
37
- });
38
- });