@dxos/plugin-script 0.8.4-main.2e9d522 → 0.8.4-main.3c1ae3b

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 (337) hide show
  1. package/dist/lib/browser/DeploymentDialog-FIHD4UVK.mjs +15 -0
  2. package/dist/lib/browser/NotebookContainer-GL2Z5I5Q.mjs +817 -0
  3. package/dist/lib/browser/NotebookContainer-GL2Z5I5Q.mjs.map +7 -0
  4. package/dist/lib/browser/ScriptContainer-F4OK3OG6.mjs +149 -0
  5. package/dist/lib/browser/ScriptContainer-F4OK3OG6.mjs.map +7 -0
  6. package/dist/lib/browser/{app-graph-builder-HLQ7K3BT.mjs → app-graph-builder-2WR2ATTJ.mjs} +12 -10
  7. package/dist/lib/browser/app-graph-builder-2WR2ATTJ.mjs.map +7 -0
  8. package/dist/lib/browser/blueprint-definition-6PZWZM2Y.mjs +30 -0
  9. package/dist/lib/browser/blueprint-definition-6PZWZM2Y.mjs.map +7 -0
  10. package/dist/lib/browser/chunk-2SXDKBM7.mjs +304 -0
  11. package/dist/lib/browser/chunk-2SXDKBM7.mjs.map +7 -0
  12. package/dist/lib/browser/chunk-6X7QVTRB.mjs +112 -0
  13. package/dist/lib/browser/chunk-6X7QVTRB.mjs.map +7 -0
  14. package/dist/lib/browser/{chunk-P4HQKUCP.mjs → chunk-75RTLLH4.mjs} +23 -21
  15. package/dist/lib/browser/chunk-75RTLLH4.mjs.map +7 -0
  16. package/dist/lib/browser/{chunk-FIM2MVNJ.mjs → chunk-7WFISUBY.mjs} +182 -90
  17. package/dist/lib/browser/chunk-7WFISUBY.mjs.map +7 -0
  18. package/dist/lib/browser/{chunk-QYAREHGH.mjs → chunk-EB6AXFXO.mjs} +8 -5
  19. package/dist/lib/browser/chunk-EB6AXFXO.mjs.map +7 -0
  20. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  21. package/dist/lib/browser/chunk-MQHBMJLH.mjs +103 -0
  22. package/dist/lib/browser/chunk-MQHBMJLH.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-S22N3BUR.mjs +88 -0
  24. package/dist/lib/browser/chunk-S22N3BUR.mjs.map +7 -0
  25. package/dist/lib/browser/chunk-UGDRMROB.mjs +542 -0
  26. package/dist/lib/browser/chunk-UGDRMROB.mjs.map +7 -0
  27. package/dist/lib/browser/{chunk-5TVBECWH.mjs → chunk-UOQ6NCH3.mjs} +2 -2
  28. package/dist/lib/browser/compiler-2HV5KXV4.mjs +143 -0
  29. package/dist/lib/browser/compiler-2HV5KXV4.mjs.map +7 -0
  30. package/dist/lib/browser/index.mjs +113 -67
  31. package/dist/lib/browser/index.mjs.map +4 -4
  32. package/dist/lib/browser/{intent-resolver-7B77IG3N.mjs → intent-resolver-3B4ESSCU.mjs} +40 -26
  33. package/dist/lib/browser/intent-resolver-3B4ESSCU.mjs.map +7 -0
  34. package/dist/lib/browser/meta.json +1 -1
  35. package/dist/lib/browser/{react-surface-FYYXZA7C.mjs → react-surface-ASV2KBRA.mjs} +49 -25
  36. package/dist/lib/browser/react-surface-ASV2KBRA.mjs.map +7 -0
  37. package/dist/lib/browser/{settings-KCTBK5TY.mjs → settings-4NKLTJTT.mjs} +10 -8
  38. package/dist/lib/browser/settings-4NKLTJTT.mjs.map +7 -0
  39. package/dist/lib/browser/templates/index.mjs +2 -1
  40. package/dist/lib/browser/types/index.mjs +8 -4
  41. package/dist/lib/node-esm/DeploymentDialog-5EN2KZE5.mjs +16 -0
  42. package/dist/lib/node-esm/DeploymentDialog-5EN2KZE5.mjs.map +7 -0
  43. package/dist/lib/node-esm/NotebookContainer-7RCEXND7.mjs +818 -0
  44. package/dist/lib/node-esm/NotebookContainer-7RCEXND7.mjs.map +7 -0
  45. package/dist/lib/node-esm/ScriptContainer-763IAKOD.mjs +150 -0
  46. package/dist/lib/node-esm/ScriptContainer-763IAKOD.mjs.map +7 -0
  47. package/dist/lib/node-esm/{app-graph-builder-7EYIHWH4.mjs → app-graph-builder-NCVLUL5R.mjs} +12 -10
  48. package/dist/lib/node-esm/app-graph-builder-NCVLUL5R.mjs.map +7 -0
  49. package/dist/lib/node-esm/blueprint-definition-5R6YCSZZ.mjs +31 -0
  50. package/dist/lib/node-esm/blueprint-definition-5R6YCSZZ.mjs.map +7 -0
  51. package/dist/lib/node-esm/chunk-2S43VHAM.mjs +90 -0
  52. package/dist/lib/node-esm/chunk-2S43VHAM.mjs.map +7 -0
  53. package/dist/lib/node-esm/chunk-32AMTGGN.mjs +104 -0
  54. package/dist/lib/node-esm/chunk-32AMTGGN.mjs.map +7 -0
  55. package/dist/lib/node-esm/chunk-4VVV5L5A.mjs +543 -0
  56. package/dist/lib/node-esm/chunk-4VVV5L5A.mjs.map +7 -0
  57. package/dist/lib/node-esm/{chunk-QKK3NDHW.mjs → chunk-535YDI5V.mjs} +23 -21
  58. package/dist/lib/node-esm/chunk-535YDI5V.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-35M3CHYE.mjs → chunk-55JZVM6K.mjs} +2 -2
  60. package/dist/lib/node-esm/chunk-6H4FYMCX.mjs +114 -0
  61. package/dist/lib/node-esm/chunk-6H4FYMCX.mjs.map +7 -0
  62. package/dist/lib/node-esm/{chunk-7NMI4CEU.mjs → chunk-DKS2EQW6.mjs} +182 -90
  63. package/dist/lib/node-esm/chunk-DKS2EQW6.mjs.map +7 -0
  64. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  65. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  66. package/dist/lib/node-esm/{chunk-AHXJ6NQU.mjs → chunk-IBV2DR36.mjs} +8 -5
  67. package/dist/lib/node-esm/chunk-IBV2DR36.mjs.map +7 -0
  68. package/dist/lib/node-esm/chunk-NQN3JE2R.mjs +305 -0
  69. package/dist/lib/node-esm/chunk-NQN3JE2R.mjs.map +7 -0
  70. package/dist/lib/node-esm/compiler-KPEZKEHC.mjs +144 -0
  71. package/dist/lib/node-esm/compiler-KPEZKEHC.mjs.map +7 -0
  72. package/dist/lib/node-esm/index.mjs +113 -67
  73. package/dist/lib/node-esm/index.mjs.map +4 -4
  74. package/dist/lib/node-esm/{intent-resolver-FRZGS4TB.mjs → intent-resolver-GIACMXI4.mjs} +40 -26
  75. package/dist/lib/node-esm/intent-resolver-GIACMXI4.mjs.map +7 -0
  76. package/dist/lib/node-esm/meta.json +1 -1
  77. package/dist/lib/node-esm/{react-surface-V32NWHKN.mjs → react-surface-NXBO7VYB.mjs} +49 -25
  78. package/dist/lib/node-esm/react-surface-NXBO7VYB.mjs.map +7 -0
  79. package/dist/lib/node-esm/{settings-DXZ334A3.mjs → settings-PW5NXWLW.mjs} +10 -8
  80. package/dist/lib/node-esm/settings-PW5NXWLW.mjs.map +7 -0
  81. package/dist/lib/node-esm/templates/index.mjs +2 -1
  82. package/dist/lib/node-esm/types/index.mjs +8 -4
  83. package/dist/types/src/ScriptPlugin.d.ts +1 -1
  84. package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
  85. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  86. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  87. package/dist/types/src/capabilities/artifact-definition.d.ts +1 -1
  88. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -1
  89. package/dist/types/src/capabilities/blueprint-definition.d.ts +5 -0
  90. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  91. package/dist/types/src/capabilities/compiler.d.ts +1 -1
  92. package/dist/types/src/capabilities/compiler.d.ts.map +1 -1
  93. package/dist/types/src/capabilities/index.d.ts +6 -6
  94. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  96. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  97. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  98. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/settings.d.ts +1 -1
  100. package/dist/types/src/compiler/compiler.d.ts +1 -1
  101. package/dist/types/src/compiler/compiler.d.ts.map +1 -1
  102. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts +4 -4
  103. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts.map +1 -1
  104. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts +246 -13
  105. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts.map +1 -1
  106. package/dist/types/src/components/DeploymentDialog/index.d.ts +1 -1
  107. package/dist/types/src/components/DeploymentDialog/index.d.ts.map +1 -1
  108. package/dist/types/src/components/FrameContainer/FrameContainer.d.ts +1 -1
  109. package/dist/types/src/components/FrameContainer/FrameContainer.d.ts.map +1 -1
  110. package/dist/types/src/components/NotebookContainer.d.ts +10 -0
  111. package/dist/types/src/components/NotebookContainer.d.ts.map +1 -0
  112. package/dist/types/src/components/NotebookContainer.stories.d.ts +254 -0
  113. package/dist/types/src/components/NotebookContainer.stories.d.ts.map +1 -0
  114. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts +15 -0
  115. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts.map +1 -0
  116. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts +9 -0
  117. package/dist/types/src/components/NotebookStack/NotebookMenu.d.ts.map +1 -0
  118. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts +14 -0
  119. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts.map +1 -0
  120. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts +248 -0
  121. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts.map +1 -0
  122. package/dist/types/src/components/NotebookStack/index.d.ts +3 -0
  123. package/dist/types/src/components/NotebookStack/index.d.ts.map +1 -0
  124. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts +5 -0
  125. package/dist/types/src/components/QueryEditor/QueryEditor.d.ts.map +1 -0
  126. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts +13 -0
  127. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts.map +1 -0
  128. package/dist/types/src/components/QueryEditor/index.d.ts +2 -0
  129. package/dist/types/src/components/QueryEditor/index.d.ts.map +1 -0
  130. package/dist/types/src/components/ScriptContainer.d.ts +4 -4
  131. package/dist/types/src/components/ScriptContainer.d.ts.map +1 -1
  132. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +5 -6
  133. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  134. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts +245 -10
  135. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts.map +1 -1
  136. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts +2 -2
  137. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts.map +1 -1
  138. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts +2 -2
  139. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts.map +1 -1
  140. package/dist/types/src/components/TestPanel/TestContainer.d.ts +2 -2
  141. package/dist/types/src/components/TestPanel/TestContainer.d.ts.map +1 -1
  142. package/dist/types/src/components/TestPanel/TestPanel.d.ts.map +1 -1
  143. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts +4 -2
  144. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts.map +1 -1
  145. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts +11 -4
  146. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts.map +1 -1
  147. package/dist/types/src/components/index.d.ts +3 -4
  148. package/dist/types/src/components/index.d.ts.map +1 -1
  149. package/dist/types/src/e2e/deploy.test.d.ts +2 -0
  150. package/dist/types/src/e2e/deploy.test.d.ts.map +1 -0
  151. package/dist/types/src/events.d.ts.map +1 -1
  152. package/dist/types/src/hooks/deploy.d.ts +11 -26
  153. package/dist/types/src/hooks/deploy.d.ts.map +1 -1
  154. package/dist/types/src/hooks/format.d.ts +2 -2
  155. package/dist/types/src/hooks/format.d.ts.map +1 -1
  156. package/dist/types/src/hooks/index.d.ts +1 -0
  157. package/dist/types/src/hooks/index.d.ts.map +1 -1
  158. package/dist/types/src/hooks/template.d.ts +4 -14
  159. package/dist/types/src/hooks/template.d.ts.map +1 -1
  160. package/dist/types/src/hooks/useCompiler.d.ts +7 -0
  161. package/dist/types/src/hooks/useCompiler.d.ts.map +1 -0
  162. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts.map +1 -1
  163. package/dist/types/src/index.d.ts +1 -0
  164. package/dist/types/src/index.d.ts.map +1 -1
  165. package/dist/types/src/meta.d.ts +0 -1
  166. package/dist/types/src/meta.d.ts.map +1 -1
  167. package/dist/types/src/notebook/compute-graph.d.ts +45 -0
  168. package/dist/types/src/notebook/compute-graph.d.ts.map +1 -0
  169. package/dist/types/src/notebook/compute-graph.test.d.ts +2 -0
  170. package/dist/types/src/notebook/compute-graph.test.d.ts.map +1 -0
  171. package/dist/types/src/notebook/eval.d.ts +13 -0
  172. package/dist/types/src/notebook/eval.d.ts.map +1 -0
  173. package/dist/types/src/notebook/index.d.ts +2 -0
  174. package/dist/types/src/notebook/index.d.ts.map +1 -0
  175. package/dist/types/src/notebook/vfs-parser.d.ts +74 -0
  176. package/dist/types/src/notebook/vfs-parser.d.ts.map +1 -0
  177. package/dist/types/src/notebook/vfs-parser.test.d.ts +2 -0
  178. package/dist/types/src/notebook/vfs-parser.test.d.ts.map +1 -0
  179. package/dist/types/src/templates/chess.d.ts +6 -1
  180. package/dist/types/src/templates/chess.d.ts.map +1 -1
  181. package/dist/types/src/templates/data-generator.d.ts.map +1 -1
  182. package/dist/types/src/templates/discord.d.ts.map +1 -1
  183. package/dist/types/src/templates/forex-effect.d.ts +4 -1
  184. package/dist/types/src/templates/forex-effect.d.ts.map +1 -1
  185. package/dist/types/src/templates/forex.d.ts +4 -1
  186. package/dist/types/src/templates/forex.d.ts.map +1 -1
  187. package/dist/types/src/templates/gmail.d.ts.map +1 -1
  188. package/dist/types/src/templates/index.d.ts +43 -1
  189. package/dist/types/src/templates/index.d.ts.map +1 -1
  190. package/dist/types/src/templates/{echo.d.ts → ping.d.ts} +1 -1
  191. package/dist/types/src/templates/ping.d.ts.map +1 -0
  192. package/dist/types/src/testing/data.d.ts +3 -0
  193. package/dist/types/src/testing/data.d.ts.map +1 -0
  194. package/dist/types/src/testing/deploy.test.d.ts +2 -0
  195. package/dist/types/src/testing/deploy.test.d.ts.map +1 -0
  196. package/dist/types/src/testing/index.d.ts +2 -0
  197. package/dist/types/src/testing/index.d.ts.map +1 -0
  198. package/dist/types/src/testing/simulator.test.d.ts +2 -0
  199. package/dist/types/src/testing/simulator.test.d.ts.map +1 -0
  200. package/dist/types/src/translations.d.ts +32 -5
  201. package/dist/types/src/translations.d.ts.map +1 -1
  202. package/dist/types/src/types/Notebook.d.ts +31 -0
  203. package/dist/types/src/types/Notebook.d.ts.map +1 -0
  204. package/dist/types/src/types/actions.d.ts +54 -0
  205. package/dist/types/src/types/actions.d.ts.map +1 -0
  206. package/dist/types/src/types/index.d.ts +3 -1
  207. package/dist/types/src/types/index.d.ts.map +1 -1
  208. package/dist/types/src/types/types.d.ts +6 -0
  209. package/dist/types/src/types/types.d.ts.map +1 -0
  210. package/dist/types/src/util/deploy.d.ts +7 -7
  211. package/dist/types/src/util/deploy.d.ts.map +1 -1
  212. package/dist/types/src/util/functions.d.ts +6 -3
  213. package/dist/types/src/util/functions.d.ts.map +1 -1
  214. package/dist/types/tsconfig.tsbuildinfo +1 -1
  215. package/package.json +87 -71
  216. package/src/ScriptPlugin.tsx +79 -75
  217. package/src/capabilities/app-graph-builder.ts +12 -11
  218. package/src/capabilities/artifact-definition.ts +19 -24
  219. package/src/capabilities/blueprint-definition.ts +30 -0
  220. package/src/capabilities/compiler.ts +69 -18
  221. package/src/capabilities/index.ts +1 -1
  222. package/src/capabilities/intent-resolver.ts +21 -15
  223. package/src/capabilities/react-surface.tsx +34 -21
  224. package/src/capabilities/settings.ts +3 -3
  225. package/src/compiler/compiler.ts +11 -4
  226. package/src/components/DeploymentDialog/DeploymentDialog.stories.tsx +39 -20
  227. package/src/components/DeploymentDialog/DeploymentDialog.tsx +45 -34
  228. package/src/components/DeploymentDialog/index.ts +1 -1
  229. package/src/components/FrameContainer/FrameContainer.tsx +7 -4
  230. package/src/components/NotebookContainer.stories.tsx +83 -0
  231. package/src/components/NotebookContainer.tsx +260 -0
  232. package/src/components/NotebookStack/NotebookCell.tsx +216 -0
  233. package/src/components/NotebookStack/NotebookMenu.tsx +47 -0
  234. package/src/components/NotebookStack/NotebookStack.stories.tsx +54 -0
  235. package/src/components/NotebookStack/NotebookStack.tsx +86 -0
  236. package/src/components/NotebookStack/index.ts +6 -0
  237. package/src/components/QueryEditor/QueryEditor.stories.tsx +89 -0
  238. package/src/components/QueryEditor/QueryEditor.tsx +47 -0
  239. package/src/components/QueryEditor/index.ts +5 -0
  240. package/src/components/ScriptContainer.tsx +10 -8
  241. package/src/components/ScriptToolbar/ScriptToolbar.stories.tsx +34 -17
  242. package/src/components/ScriptToolbar/ScriptToolbar.tsx +37 -30
  243. package/src/components/Settings/ScriptObjectSettings.tsx +130 -38
  244. package/src/components/Settings/ScriptPluginSettings.tsx +37 -47
  245. package/src/components/TestPanel/TestContainer.tsx +4 -3
  246. package/src/components/TestPanel/TestPanel.tsx +42 -19
  247. package/src/components/TypescriptEditor/TypescriptEditor.stories.tsx +79 -31
  248. package/src/components/TypescriptEditor/TypescriptEditor.tsx +39 -37
  249. package/src/components/index.ts +3 -0
  250. package/src/e2e/deploy.test.ts +64 -0
  251. package/src/events.ts +2 -2
  252. package/src/hooks/deploy.ts +24 -24
  253. package/src/hooks/format.ts +4 -4
  254. package/src/hooks/index.ts +1 -0
  255. package/src/hooks/template.ts +6 -15
  256. package/src/hooks/useCompiler.ts +23 -0
  257. package/src/hooks/useCreateAndDeployScriptTemplates.ts +11 -6
  258. package/src/index.ts +1 -0
  259. package/src/meta.ts +7 -5
  260. package/src/notebook/compute-graph.test.ts +70 -0
  261. package/src/notebook/compute-graph.ts +206 -0
  262. package/src/notebook/eval.ts +105 -0
  263. package/src/notebook/index.ts +5 -0
  264. package/src/notebook/vfs-parser.test.ts +149 -0
  265. package/src/notebook/vfs-parser.ts +451 -0
  266. package/src/templates/chess.ts +11 -8
  267. package/src/templates/data-generator.ts +10 -4
  268. package/src/templates/discord.ts +12 -4
  269. package/src/templates/forex-effect.ts +24 -25
  270. package/src/templates/forex.ts +9 -6
  271. package/src/templates/gmail.ts +34 -64
  272. package/src/templates/index.ts +6 -6
  273. package/src/testing/data.ts +72 -0
  274. package/src/testing/deploy.test.ts +63 -0
  275. package/src/testing/index.ts +5 -0
  276. package/src/testing/simulator.test.ts +40 -0
  277. package/src/translations.ts +35 -7
  278. package/src/types/Notebook.ts +42 -0
  279. package/src/types/actions.ts +53 -0
  280. package/src/types/index.ts +3 -1
  281. package/src/types/types.ts +15 -0
  282. package/src/util/deploy.ts +33 -60
  283. package/src/util/functions.ts +39 -8
  284. package/src/vite-env.d.ts +2 -0
  285. package/dist/lib/browser/DeploymentDialog-M4QIHTDR.mjs +0 -12
  286. package/dist/lib/browser/ScriptContainer-Z6SIGRRC.mjs +0 -262
  287. package/dist/lib/browser/ScriptContainer-Z6SIGRRC.mjs.map +0 -7
  288. package/dist/lib/browser/app-graph-builder-HLQ7K3BT.mjs.map +0 -7
  289. package/dist/lib/browser/artifact-definition-24Q3IHOU.mjs +0 -249
  290. package/dist/lib/browser/artifact-definition-24Q3IHOU.mjs.map +0 -7
  291. package/dist/lib/browser/chunk-3U6DTUH3.mjs +0 -283
  292. package/dist/lib/browser/chunk-3U6DTUH3.mjs.map +0 -7
  293. package/dist/lib/browser/chunk-FIM2MVNJ.mjs.map +0 -7
  294. package/dist/lib/browser/chunk-FMDXKOP7.mjs +0 -233
  295. package/dist/lib/browser/chunk-FMDXKOP7.mjs.map +0 -7
  296. package/dist/lib/browser/chunk-IS4OG2UW.mjs +0 -39
  297. package/dist/lib/browser/chunk-IS4OG2UW.mjs.map +0 -7
  298. package/dist/lib/browser/chunk-P4HQKUCP.mjs.map +0 -7
  299. package/dist/lib/browser/chunk-QYAREHGH.mjs.map +0 -7
  300. package/dist/lib/browser/chunk-R4R7VOFY.mjs +0 -88
  301. package/dist/lib/browser/chunk-R4R7VOFY.mjs.map +0 -7
  302. package/dist/lib/browser/compiler-CXCUA4UQ.mjs +0 -82
  303. package/dist/lib/browser/compiler-CXCUA4UQ.mjs.map +0 -7
  304. package/dist/lib/browser/intent-resolver-7B77IG3N.mjs.map +0 -7
  305. package/dist/lib/browser/react-surface-FYYXZA7C.mjs.map +0 -7
  306. package/dist/lib/browser/settings-KCTBK5TY.mjs.map +0 -7
  307. package/dist/lib/node-esm/DeploymentDialog-3KPRWFE7.mjs +0 -13
  308. package/dist/lib/node-esm/ScriptContainer-KPU75HHI.mjs +0 -263
  309. package/dist/lib/node-esm/ScriptContainer-KPU75HHI.mjs.map +0 -7
  310. package/dist/lib/node-esm/app-graph-builder-7EYIHWH4.mjs.map +0 -7
  311. package/dist/lib/node-esm/artifact-definition-WAJFALUI.mjs +0 -250
  312. package/dist/lib/node-esm/artifact-definition-WAJFALUI.mjs.map +0 -7
  313. package/dist/lib/node-esm/chunk-7NMI4CEU.mjs.map +0 -7
  314. package/dist/lib/node-esm/chunk-AHXJ6NQU.mjs.map +0 -7
  315. package/dist/lib/node-esm/chunk-F5GFJ3PY.mjs +0 -90
  316. package/dist/lib/node-esm/chunk-F5GFJ3PY.mjs.map +0 -7
  317. package/dist/lib/node-esm/chunk-JIPFLBYA.mjs +0 -40
  318. package/dist/lib/node-esm/chunk-JIPFLBYA.mjs.map +0 -7
  319. package/dist/lib/node-esm/chunk-QKK3NDHW.mjs.map +0 -7
  320. package/dist/lib/node-esm/chunk-RT43MACC.mjs +0 -284
  321. package/dist/lib/node-esm/chunk-RT43MACC.mjs.map +0 -7
  322. package/dist/lib/node-esm/chunk-XJPK3IYI.mjs +0 -234
  323. package/dist/lib/node-esm/chunk-XJPK3IYI.mjs.map +0 -7
  324. package/dist/lib/node-esm/compiler-EPFKQXPE.mjs +0 -83
  325. package/dist/lib/node-esm/compiler-EPFKQXPE.mjs.map +0 -7
  326. package/dist/lib/node-esm/intent-resolver-FRZGS4TB.mjs.map +0 -7
  327. package/dist/lib/node-esm/react-surface-V32NWHKN.mjs.map +0 -7
  328. package/dist/lib/node-esm/settings-DXZ334A3.mjs.map +0 -7
  329. package/dist/types/src/templates/echo.d.ts.map +0 -1
  330. package/dist/types/src/types/schema.d.ts +0 -38
  331. package/dist/types/src/types/schema.d.ts.map +0 -1
  332. package/src/types/schema.ts +0 -37
  333. /package/dist/lib/browser/{DeploymentDialog-M4QIHTDR.mjs.map → DeploymentDialog-FIHD4UVK.mjs.map} +0 -0
  334. /package/dist/lib/{node-esm/DeploymentDialog-3KPRWFE7.mjs.map → browser/chunk-J5LGTIGS.mjs.map} +0 -0
  335. /package/dist/lib/browser/{chunk-5TVBECWH.mjs.map → chunk-UOQ6NCH3.mjs.map} +0 -0
  336. /package/dist/lib/node-esm/{chunk-35M3CHYE.mjs.map → chunk-55JZVM6K.mjs.map} +0 -0
  337. /package/src/templates/{echo.ts → ping.ts} +0 -0
@@ -1,40 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- meta
4
- } from "./chunk-AHXJ6NQU.mjs";
5
-
6
- // src/types/schema.ts
7
- import { Schema } from "effect";
8
- import { SpaceSchema } from "@dxos/client/echo";
9
- import { ScriptType } from "@dxos/functions";
10
- import { EditorInputMode } from "@dxos/react-ui-editor";
11
- (function(ScriptAction2) {
12
- ScriptAction2.CreateScriptSchema = Schema.Struct({
13
- name: Schema.optional(Schema.String),
14
- // TODO(wittjosiah): Placeholder annotation?
15
- gistUrl: Schema.optional(Schema.String.annotations({
16
- title: "Import from Gist (url)"
17
- })),
18
- initialTemplateId: Schema.optional(Schema.String)
19
- });
20
- class Create extends Schema.TaggedClass()(`${meta.id}/action/create`, {
21
- input: Schema.extend(ScriptAction2.CreateScriptSchema, Schema.Struct({
22
- space: SpaceSchema
23
- })),
24
- output: Schema.Struct({
25
- object: ScriptType
26
- })
27
- }) {
28
- }
29
- ScriptAction2.Create = Create;
30
- })(ScriptAction || (ScriptAction = {}));
31
- var ScriptSettingsSchema = Schema.mutable(Schema.Struct({
32
- editorInputMode: EditorInputMode
33
- }));
34
- var ScriptAction;
35
-
36
- export {
37
- ScriptSettingsSchema,
38
- ScriptAction
39
- };
40
- //# sourceMappingURL=chunk-JIPFLBYA.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/types/schema.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { SpaceSchema } from '@dxos/client/echo';\nimport { ScriptType } from '@dxos/functions';\nimport { EditorInputMode } from '@dxos/react-ui-editor';\n\nimport { meta } from '../meta';\n\nexport namespace ScriptAction {\n export const CreateScriptSchema = Schema.Struct({\n name: Schema.optional(Schema.String),\n // TODO(wittjosiah): Placeholder annotation?\n gistUrl: Schema.optional(Schema.String.annotations({ title: 'Import from Gist (url)' })),\n initialTemplateId: Schema.optional(Schema.String),\n });\n\n export type CreateScriptProps = Schema.Schema.Type<typeof CreateScriptSchema>;\n\n export class Create extends Schema.TaggedClass<Create>()(`${meta.id}/action/create`, {\n input: Schema.extend(CreateScriptSchema, Schema.Struct({ space: SpaceSchema })),\n output: Schema.Struct({\n object: ScriptType,\n }),\n }) {}\n}\n\nexport const ScriptSettingsSchema = Schema.mutable(\n Schema.Struct({\n editorInputMode: EditorInputMode,\n }),\n);\n\nexport type ScriptSettingsProps = Schema.Schema.Type<typeof ScriptSettingsSchema>;\n"],
5
- "mappings": ";;;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,mBAAmB;AAC5B,SAASC,kBAAkB;AAC3B,SAASC,uBAAuB;UAIfC,eAAAA;gBACFC,qBAAqBC,OAAOC,OAAO;IAC9CC,MAAMF,OAAOG,SAASH,OAAOI,MAAM;;IAEnCC,SAASL,OAAOG,SAASH,OAAOI,OAAOE,YAAY;MAAEC,OAAO;IAAyB,CAAA,CAAA;IACrFC,mBAAmBR,OAAOG,SAASH,OAAOI,MAAM;EAClD,CAAA;EAIO,MAAMK,eAAeT,OAAOU,YAAW,EAAW,GAAGC,KAAKC,EAAE,kBAAkB;IACnFC,OAAOb,OAAOc,OAAMhB,cAACC,oBAAoBC,OAAOC,OAAO;MAAEc,OAAOC;IAAY,CAAA,CAAA;IAC5EC,QAAQjB,OAAOC,OAAO;MACpBiB,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;gBALSV,SAAAA;AAMf,GAhBiBX,iBAAAA,eAAAA,CAAAA,EAAAA;AAkBV,IAAMsB,uBAAuBpB,OAAOqB,QACzCrB,OAAOC,OAAO;EACZqB,iBAAiBC;AACnB,CAAA,CAAA;;",
6
- "names": ["Schema", "SpaceSchema", "ScriptType", "EditorInputMode", "ScriptAction", "CreateScriptSchema", "Schema", "Struct", "name", "optional", "String", "gistUrl", "annotations", "title", "initialTemplateId", "Create", "TaggedClass", "meta", "id", "input", "extend", "space", "SpaceSchema", "output", "object", "ScriptType", "ScriptSettingsSchema", "mutable", "editorInputMode", "EditorInputMode"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/DeploymentDialog/DeploymentDialog.tsx", "../../../src/components/DeploymentDialog/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useEffect, useMemo } from 'react';\n\nimport { createIntent, LayoutAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { getSpace } from '@dxos/react-client/echo';\nimport { Button, Dialog, Icon, useTranslation } from '@dxos/react-ui';\nimport { type DataType } from '@dxos/schema';\n\nimport { useCreateAndDeployScriptTemplates } from '../../hooks/useCreateAndDeployScriptTemplates';\nimport { SCRIPT_PLUGIN } from '../../meta';\nimport { type Template } from '../../templates';\n\nexport const DEPLOYMENT_DIALOG = `${SCRIPT_PLUGIN}/deployment/dialog`;\n\n// TODO(ZaymonFC):\n// - Show activity and feedback to the user.\n// - Only take an array of templateIds and get the name from the data.\n// - Pending / onError states.\n\ntype DeploymentDialogProps = {\n accessToken: DataType.AccessToken;\n scriptTemplates: Template[];\n};\n\nexport const DeploymentDialog = ({ accessToken, scriptTemplates }: DeploymentDialogProps) => {\n const { t } = useTranslation(SCRIPT_PLUGIN);\n const space = useMemo(() => getSpace(accessToken), [accessToken]);\n\n // TODO(ZaymonFC): Thinking further. All of this should get moved to intents to run async in the background.\n // Deployment shouldn't be tied to the lifecycle of the dialogue component.\n const { handleCreateAndDeployScripts, status } = useCreateAndDeployScriptTemplates(space, scriptTemplates);\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n\n useEffect(() => {\n if (status === 'success') {\n // TODO(ZaymonFC): We can probably re-use this toast for normal script deployment.\n void dispatch(\n createIntent(LayoutAction.AddToast, {\n part: 'toast',\n subject: {\n id: `${SCRIPT_PLUGIN}/deployment-success`,\n icon: 'ph--check--regular',\n duration: Infinity,\n title: ['script deployment toast label', { ns: SCRIPT_PLUGIN, count: scriptTemplates.length }],\n description: ['script deployment toast description', { ns: SCRIPT_PLUGIN, count: scriptTemplates.length }],\n closeLabel: ['script deployment toast close label', { ns: SCRIPT_PLUGIN, count: scriptTemplates.length }],\n },\n }),\n );\n void dispatch(createIntent(LayoutAction.UpdateDialog, { part: 'dialog', options: { state: false } }));\n }\n if (status === 'error') {\n void dispatch(createIntent(LayoutAction.UpdateDialog, { part: 'dialog', options: { state: false } }));\n void dispatch(\n createIntent(LayoutAction.AddToast, {\n part: 'toast',\n subject: {\n id: `${SCRIPT_PLUGIN}/deployment-error`,\n icon: 'ph--warning--regular',\n duration: Infinity,\n title: ['script deployment error toast label', { ns: SCRIPT_PLUGIN, count: scriptTemplates.length }],\n description: [\n 'script deployment error toast description',\n { ns: SCRIPT_PLUGIN, count: scriptTemplates.length },\n ],\n closeLabel: [\n 'script deployment error toast close label',\n { ns: SCRIPT_PLUGIN, count: scriptTemplates.length },\n ],\n },\n }),\n );\n }\n }, [status, dispatch]);\n\n return (\n <Dialog.Content>\n <div className='flex justify-between items-center'>\n <Dialog.Title>{t('deployment dialog title')}</Dialog.Title>\n <Dialog.Close asChild>\n <Button density='fine' variant='ghost'>\n <Icon icon='ph--x--regular' size={4} />\n </Button>\n </Dialog.Close>\n </div>\n <div role='none' className='plb-4'>\n {/* TODO: Implement deployment logic and UI. */}\n <p>{t('deployment dialog scripts found message', { count: scriptTemplates.length })}</p>\n <ul className='pbs-2'>\n {scriptTemplates.map((template) => {\n return <li key={template.id}>{template.name}</li>;\n })}\n </ul>\n </div>\n <div role='none' className='flex flex-row-reverse gap-1'>\n <Button variant='primary' onClick={handleCreateAndDeployScripts} disabled={status === 'pending'}>\n {status === 'pending'\n ? t('deployment dialog deploy functions pending button label', { count: scriptTemplates.length })\n : t('deployment dialog deploy functions button label', { count: scriptTemplates.length })}\n </Button>\n <Dialog.Close asChild disabled={status === 'pending'}>\n <Button disabled={status === 'pending'}>{t('deployment dialog skip button label')}</Button>\n </Dialog.Close>\n </div>\n </Dialog.Content>\n );\n};\n\nexport default DeploymentDialog;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { DeploymentDialog, DEPLOYMENT_DIALOG } from './DeploymentDialog';\n\nexport { DEPLOYMENT_DIALOG };\n\nexport default DeploymentDialog;\n"],
5
- "mappings": "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",
6
- "names": ["React", "useEffect", "useMemo", "createIntent", "LayoutAction", "useIntentDispatcher", "getSpace", "Button", "Dialog", "Icon", "useTranslation", "DEPLOYMENT_DIALOG", "SCRIPT_PLUGIN", "DeploymentDialog", "accessToken", "scriptTemplates", "t", "useTranslation", "space", "useMemo", "getSpace", "handleCreateAndDeployScripts", "status", "useCreateAndDeployScriptTemplates", "dispatchPromise", "dispatch", "useIntentDispatcher", "useEffect", "createIntent", "LayoutAction", "AddToast", "part", "subject", "id", "icon", "duration", "Infinity", "title", "ns", "count", "length", "description", "closeLabel", "UpdateDialog", "options", "state", "Dialog", "Content", "div", "className", "Title", "Close", "asChild", "Button", "density", "variant", "Icon", "size", "role", "p", "ul", "map", "template", "li", "key", "name", "onClick", "disabled", "DeploymentDialog"]
7
- }
@@ -1,284 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- templates
4
- } from "./chunk-F5GFJ3PY.mjs";
5
- import {
6
- deployScript,
7
- getFunctionUrl,
8
- isScriptDeployed
9
- } from "./chunk-XJPK3IYI.mjs";
10
- import {
11
- SCRIPT_PLUGIN
12
- } from "./chunk-AHXJ6NQU.mjs";
13
-
14
- // src/hooks/deploy.ts
15
- import { useEffect, useMemo } from "react";
16
- import { FunctionType, getUserFunctionUrlInMetadata } from "@dxos/functions";
17
- import { log } from "@dxos/log";
18
- import { useClient } from "@dxos/react-client";
19
- import { getMeta, getSpace, Query, Ref, useQuery } from "@dxos/react-client/echo";
20
- import { createMenuAction } from "@dxos/react-ui-menu";
21
- import { errorMessageColors } from "@dxos/react-ui-theme";
22
- var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-script/src/hooks/deploy.ts";
23
- var createDeploy = ({ state, script, space, fn, client, existingFunctionUrl, t }) => {
24
- const errorItem = createMenuAction("error", () => {
25
- }, {
26
- label: state.error ?? [
27
- "no error label",
28
- {
29
- ns: SCRIPT_PLUGIN
30
- }
31
- ],
32
- icon: "ph--warning-circle--regular",
33
- hidden: !state.error,
34
- classNames: state.error && errorMessageColors
35
- });
36
- const deployAction = createMenuAction("deploy", async () => {
37
- if (!script.source || !space) {
38
- return;
39
- }
40
- state.error = void 0;
41
- state.deploying = true;
42
- const result = await deployScript({
43
- script,
44
- client,
45
- space,
46
- fn,
47
- existingFunctionUrl
48
- });
49
- if (!result.success) {
50
- log.catch(result.error, void 0, {
51
- F: __dxlog_file,
52
- L: 59,
53
- S: void 0,
54
- C: (f, a) => f(...a)
55
- });
56
- state.error = t("upload failed label");
57
- }
58
- state.deploying = false;
59
- }, {
60
- type: "deploy",
61
- label: [
62
- state.deploying ? "pending label" : "deploy label",
63
- {
64
- ns: SCRIPT_PLUGIN
65
- }
66
- ],
67
- icon: state.deploying ? "ph--spinner-gap--regular" : "ph--cloud-arrow-up--regular",
68
- disabled: state.deploying,
69
- classNames: state.deploying ? "[&_svg]:animate-spin" : ""
70
- });
71
- const copyAction = createMenuAction("copy", async () => {
72
- if (!state.functionUrl) {
73
- return;
74
- }
75
- await navigator.clipboard.writeText(state.functionUrl);
76
- }, {
77
- type: "copy",
78
- label: [
79
- "copy link label",
80
- {
81
- ns: SCRIPT_PLUGIN
82
- }
83
- ],
84
- icon: "ph--link--regular",
85
- disabled: !state.functionUrl
86
- });
87
- return {
88
- nodes: [
89
- errorItem,
90
- deployAction,
91
- copyAction
92
- ],
93
- edges: [
94
- {
95
- source: "root",
96
- target: "error"
97
- },
98
- {
99
- source: "root",
100
- target: "deploy"
101
- },
102
- {
103
- source: "root",
104
- target: "copy"
105
- }
106
- ]
107
- };
108
- };
109
- var useDeployState = ({ state, script }) => {
110
- const { space, client, fn, existingFunctionUrl } = useDeployDeps({
111
- script
112
- });
113
- useEffect(() => {
114
- if (!existingFunctionUrl) {
115
- return;
116
- }
117
- state.functionUrl = getFunctionUrl({
118
- script,
119
- fn,
120
- edgeUrl: client.config.values.runtime?.services?.edge?.url ?? ""
121
- });
122
- }, [
123
- existingFunctionUrl,
124
- space,
125
- fn,
126
- script,
127
- client.config.values.runtime?.services?.edge?.url
128
- ]);
129
- useEffect(() => {
130
- state.deployed = isScriptDeployed({
131
- script,
132
- fn
133
- });
134
- }, [
135
- script.changed,
136
- existingFunctionUrl,
137
- fn,
138
- script
139
- ]);
140
- };
141
- var useDeployDeps = ({ script }) => {
142
- const space = getSpace(script);
143
- const [fn] = useQuery(space, Query.type(FunctionType, {
144
- source: Ref.make(script)
145
- }));
146
- const client = useClient();
147
- const existingFunctionUrl = useMemo(() => fn && getUserFunctionUrlInMetadata(getMeta(fn)), [
148
- fn
149
- ]);
150
- return {
151
- space,
152
- fn,
153
- client,
154
- existingFunctionUrl
155
- };
156
- };
157
-
158
- // src/hooks/useToolbarState.ts
159
- import { useMemo as useMemo2 } from "react";
160
- import { live } from "@dxos/live-object";
161
- var useToolbarState = (initialState = {}) => {
162
- return useMemo2(() => live(initialState), []);
163
- };
164
-
165
- // src/hooks/format.ts
166
- import { format } from "prettier";
167
- import prettierPluginEstree from "prettier/plugins/estree";
168
- import prettierPluginTypescript from "prettier/plugins/typescript";
169
- import { log as log2 } from "@dxos/log";
170
- import { createMenuAction as createMenuAction2 } from "@dxos/react-ui-menu";
171
- var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-script/src/hooks/format.ts";
172
- var createFormat = (script) => {
173
- const formatAction = createMenuAction2("format", async () => {
174
- if (!script.source) {
175
- return;
176
- }
177
- try {
178
- script.source.target.content = await format(script.source.target.content, {
179
- parser: "typescript",
180
- plugins: [
181
- prettierPluginEstree,
182
- prettierPluginTypescript
183
- ],
184
- semi: true,
185
- singleQuote: true
186
- });
187
- } catch (err) {
188
- log2.catch(err, void 0, {
189
- F: __dxlog_file2,
190
- L: 34,
191
- S: void 0,
192
- C: (f, a) => f(...a)
193
- });
194
- }
195
- }, {
196
- label: [
197
- "format label",
198
- {
199
- ns: SCRIPT_PLUGIN
200
- }
201
- ],
202
- icon: "ph--magic-wand--regular"
203
- });
204
- return {
205
- nodes: [
206
- formatAction
207
- ],
208
- edges: [
209
- {
210
- source: "root",
211
- target: "format"
212
- }
213
- ]
214
- };
215
- };
216
-
217
- // src/hooks/template.ts
218
- import { Obj } from "@dxos/echo";
219
- import { FUNCTIONS_PRESET_META_KEY } from "@dxos/functions";
220
- import { createMenuItemGroup, createMenuAction as createMenuAction3 } from "@dxos/react-ui-menu";
221
- var createTemplateSelectGroup = () => {
222
- return createMenuItemGroup("template-select", {
223
- label: [
224
- "template select group label",
225
- {
226
- ns: SCRIPT_PLUGIN
227
- }
228
- ],
229
- variant: "dropdownMenu"
230
- });
231
- };
232
- var createTemplateSelectActions = (script) => {
233
- return templates.map((template) => {
234
- return createMenuAction3(`template--${template.id}`, () => {
235
- script.name = template.name;
236
- script.source.target.content = template.source;
237
- const metaKeys = Obj.getMeta(script).keys;
238
- const oldPresetIndex = metaKeys.findIndex((key) => key.source === FUNCTIONS_PRESET_META_KEY);
239
- if (oldPresetIndex >= 0) {
240
- metaKeys.splice(oldPresetIndex, 1);
241
- }
242
- if (template.presetId) {
243
- metaKeys.push({
244
- source: FUNCTIONS_PRESET_META_KEY,
245
- id: template.presetId
246
- });
247
- }
248
- }, {
249
- label: template.name,
250
- value: template.id,
251
- type: "template"
252
- });
253
- });
254
- };
255
- var createTemplateSelect = (script) => {
256
- const templateSelectGroup = createTemplateSelectGroup();
257
- const templateSelectActions = createTemplateSelectActions(script);
258
- return {
259
- nodes: [
260
- templateSelectGroup,
261
- ...templateSelectActions
262
- ],
263
- edges: [
264
- {
265
- source: "root",
266
- target: "template-select"
267
- },
268
- ...templateSelectActions.map((action) => ({
269
- source: "template-select",
270
- target: action.id
271
- }))
272
- ]
273
- };
274
- };
275
-
276
- export {
277
- createDeploy,
278
- useDeployState,
279
- useDeployDeps,
280
- createFormat,
281
- createTemplateSelect,
282
- useToolbarState
283
- };
284
- //# sourceMappingURL=chunk-RT43MACC.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/hooks/deploy.ts", "../../../src/hooks/useToolbarState.ts", "../../../src/hooks/format.ts", "../../../src/hooks/template.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { useEffect, useMemo } from 'react';\n\nimport { FunctionType, type ScriptType, getUserFunctionUrlInMetadata } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { type Client, useClient } from '@dxos/react-client';\nimport { getMeta, getSpace, Query, Ref, type Space, useQuery } from '@dxos/react-client/echo';\nimport { type TFunction } from '@dxos/react-ui';\nimport { createMenuAction } from '@dxos/react-ui-menu';\nimport { errorMessageColors } from '@dxos/react-ui-theme';\n\nimport { SCRIPT_PLUGIN } from '../meta';\nimport { deployScript, getFunctionUrl, isScriptDeployed } from '../util';\n\nexport type DeployActionProperties = { type: 'deploy' } | { type: 'copy' };\n\nexport type DeployState = {\n deploying: boolean;\n deployed: boolean;\n functionUrl: string;\n error: string;\n};\n\nexport type CreateDeployOptions = {\n state: Partial<DeployState>;\n script: ScriptType;\n fn: FunctionType;\n space?: Space;\n existingFunctionUrl?: string;\n client: Client;\n t: TFunction;\n};\n\nexport const createDeploy = ({ state, script, space, fn, client, existingFunctionUrl, t }: CreateDeployOptions) => {\n // TODO(wittjosiah): Should this be an action?\n const errorItem = createMenuAction('error', () => {}, {\n label: state.error ?? ['no error label', { ns: SCRIPT_PLUGIN }],\n icon: 'ph--warning-circle--regular',\n hidden: !state.error,\n classNames: state.error && errorMessageColors,\n });\n\n const deployAction = createMenuAction<DeployActionProperties>(\n 'deploy',\n async () => {\n if (!script.source || !space) {\n return;\n }\n\n state.error = undefined;\n state.deploying = true;\n\n const result = await deployScript({ script, client, space, fn, existingFunctionUrl });\n\n if (!result.success) {\n log.catch(result.error);\n state.error = t('upload failed label');\n }\n\n state.deploying = false;\n },\n {\n type: 'deploy',\n label: [state.deploying ? 'pending label' : 'deploy label', { ns: SCRIPT_PLUGIN }],\n icon: state.deploying ? 'ph--spinner-gap--regular' : 'ph--cloud-arrow-up--regular',\n disabled: state.deploying,\n classNames: state.deploying ? '[&_svg]:animate-spin' : '',\n },\n );\n\n const copyAction = createMenuAction<DeployActionProperties>(\n 'copy',\n async () => {\n if (!state.functionUrl) {\n return;\n }\n await navigator.clipboard.writeText(state.functionUrl);\n },\n {\n type: 'copy',\n label: ['copy link label', { ns: SCRIPT_PLUGIN }],\n icon: 'ph--link--regular',\n disabled: !state.functionUrl,\n },\n );\n\n return {\n nodes: [errorItem, deployAction, copyAction],\n edges: [\n { source: 'root', target: 'error' },\n { source: 'root', target: 'deploy' },\n { source: 'root', target: 'copy' },\n ],\n };\n};\n\nexport const useDeployState = ({ state, script }: { state: Partial<DeployState>; script: ScriptType }) => {\n const { space, client, fn, existingFunctionUrl } = useDeployDeps({ script });\n useEffect(() => {\n if (!existingFunctionUrl) {\n return;\n }\n\n state.functionUrl = getFunctionUrl({\n script,\n fn,\n edgeUrl: client.config.values.runtime?.services?.edge?.url ?? '',\n });\n }, [existingFunctionUrl, space, fn, script, client.config.values.runtime?.services?.edge?.url]);\n\n useEffect(() => {\n state.deployed = isScriptDeployed({ script, fn });\n }, [script.changed, existingFunctionUrl, fn, script]);\n};\n\nexport const useDeployDeps = ({ script }: { script: ScriptType }) => {\n const space = getSpace(script);\n const [fn] = useQuery(space, Query.type(FunctionType, { source: Ref.make(script) }));\n const client = useClient();\n const existingFunctionUrl = useMemo(() => fn && getUserFunctionUrlInMetadata(getMeta(fn)), [fn]);\n return { space, fn, client, existingFunctionUrl };\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useMemo } from 'react';\n\nimport { live } from '@dxos/live-object';\n\nimport { type DeployState } from './deploy';\n\nexport type ScriptToolbarState = Partial<DeployState>;\n\n// TODO(burdon): Replace with context provider?\nexport const useToolbarState = (initialState: ScriptToolbarState = {}) => {\n return useMemo(() => live<ScriptToolbarState>(initialState), []);\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { format } from 'prettier';\nimport prettierPluginEstree from 'prettier/plugins/estree';\nimport prettierPluginTypescript from 'prettier/plugins/typescript';\n\nimport { type ScriptType } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { createMenuAction } from '@dxos/react-ui-menu';\n\nimport { SCRIPT_PLUGIN } from '../meta';\n\nexport type FormatActionProperties = { type: 'format' };\n\nexport const createFormat = (script: ScriptType) => {\n const formatAction = createMenuAction(\n 'format',\n async () => {\n if (!script.source) {\n return;\n }\n\n try {\n script.source.target!.content = await format(script.source.target!.content, {\n parser: 'typescript',\n plugins: [prettierPluginEstree, prettierPluginTypescript],\n semi: true,\n singleQuote: true,\n });\n } catch (err: any) {\n // TODO(wittjosiah): Show error in UI.\n log.catch(err);\n }\n },\n {\n label: ['format label', { ns: SCRIPT_PLUGIN }],\n icon: 'ph--magic-wand--regular',\n },\n );\n\n return {\n nodes: [formatAction],\n edges: [\n {\n source: 'root',\n target: 'format',\n },\n ],\n };\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Obj } from '@dxos/echo';\nimport { FUNCTIONS_PRESET_META_KEY, type ScriptType } from '@dxos/functions';\nimport { createMenuItemGroup, createMenuAction } from '@dxos/react-ui-menu';\n\nimport { SCRIPT_PLUGIN } from '../meta';\nimport { templates } from '../templates';\n\nexport type TemplateActionProperties = { type: 'template'; value: string };\n\nconst createTemplateSelectGroup = () => {\n return createMenuItemGroup('template-select', {\n label: ['template select group label', { ns: SCRIPT_PLUGIN }],\n variant: 'dropdownMenu',\n });\n};\n\nconst createTemplateSelectActions = (script: ScriptType) => {\n return templates.map((template) => {\n return createMenuAction<TemplateActionProperties>(\n `template--${template.id}`,\n () => {\n script.name = template.name;\n script.source!.target!.content = template.source;\n const metaKeys = Obj.getMeta(script).keys;\n const oldPresetIndex = metaKeys.findIndex((key) => key.source === FUNCTIONS_PRESET_META_KEY);\n if (oldPresetIndex >= 0) {\n metaKeys.splice(oldPresetIndex, 1);\n }\n if (template.presetId) {\n metaKeys.push({ source: FUNCTIONS_PRESET_META_KEY, id: template.presetId });\n }\n },\n {\n label: template.name,\n value: template.id,\n type: 'template',\n },\n );\n });\n};\n\nexport const createTemplateSelect = (script: ScriptType) => {\n const templateSelectGroup = createTemplateSelectGroup();\n const templateSelectActions = createTemplateSelectActions(script);\n return {\n nodes: [templateSelectGroup, ...templateSelectActions],\n edges: [\n { source: 'root', target: 'template-select' },\n ...templateSelectActions.map((action) => ({ source: 'template-select', target: action.id })),\n ],\n };\n};\n"],
5
- "mappings": "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",
6
- "names": ["useEffect", "useMemo", "FunctionType", "getUserFunctionUrlInMetadata", "log", "useClient", "getMeta", "getSpace", "Query", "Ref", "useQuery", "createMenuAction", "errorMessageColors", "createDeploy", "state", "script", "space", "fn", "client", "existingFunctionUrl", "t", "errorItem", "createMenuAction", "label", "error", "ns", "SCRIPT_PLUGIN", "icon", "hidden", "classNames", "errorMessageColors", "deployAction", "source", "undefined", "deploying", "result", "deployScript", "success", "log", "catch", "type", "disabled", "copyAction", "functionUrl", "navigator", "clipboard", "writeText", "nodes", "edges", "target", "useDeployState", "useDeployDeps", "useEffect", "getFunctionUrl", "edgeUrl", "config", "values", "runtime", "services", "edge", "url", "deployed", "isScriptDeployed", "changed", "getSpace", "useQuery", "Query", "FunctionType", "Ref", "make", "useClient", "useMemo", "getUserFunctionUrlInMetadata", "getMeta", "useMemo", "live", "useToolbarState", "initialState", "useMemo", "live", "format", "prettierPluginEstree", "prettierPluginTypescript", "log", "createMenuAction", "createFormat", "script", "formatAction", "createMenuAction", "source", "target", "content", "format", "parser", "plugins", "prettierPluginEstree", "prettierPluginTypescript", "semi", "singleQuote", "err", "log", "catch", "label", "ns", "SCRIPT_PLUGIN", "icon", "nodes", "edges", "Obj", "FUNCTIONS_PRESET_META_KEY", "createMenuItemGroup", "createMenuAction", "createTemplateSelectGroup", "createMenuItemGroup", "label", "ns", "SCRIPT_PLUGIN", "variant", "createTemplateSelectActions", "script", "templates", "map", "template", "createMenuAction", "id", "name", "source", "target", "content", "metaKeys", "Obj", "getMeta", "keys", "oldPresetIndex", "findIndex", "key", "FUNCTIONS_PRESET_META_KEY", "splice", "presetId", "push", "value", "type", "createTemplateSelect", "templateSelectGroup", "templateSelectActions", "nodes", "edges", "action"]
7
- }
@@ -1,234 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- ScriptAction
4
- } from "./chunk-JIPFLBYA.mjs";
5
-
6
- // src/util/functions.ts
7
- import { getInvocationUrl, getUserFunctionUrlInMetadata } from "@dxos/functions";
8
- import { log } from "@dxos/log";
9
- import { getMeta, getSpace } from "@dxos/react-client/echo";
10
- var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-script/src/util/functions.ts";
11
- var getFunctionUrl = ({ script, fn, edgeUrl }) => {
12
- const space = getSpace(script);
13
- const existingFunctionUrl = fn && getUserFunctionUrlInMetadata(getMeta(fn));
14
- if (!existingFunctionUrl) {
15
- return void 0;
16
- }
17
- return getInvocationUrl(existingFunctionUrl, edgeUrl, {
18
- spaceId: space?.id
19
- });
20
- };
21
- var updateFunctionMetadata = (script, storedFunction, meta, functionId) => {
22
- if (script.description !== void 0 && script.description.trim() !== "") {
23
- storedFunction.description = script.description;
24
- } else if (meta.description) {
25
- storedFunction.description = meta.description;
26
- } else {
27
- log.verbose("no description in function metadata", {
28
- functionId
29
- }, {
30
- F: __dxlog_file,
31
- L: 39,
32
- S: void 0,
33
- C: (f, a) => f(...a)
34
- });
35
- }
36
- if (meta.inputSchema) {
37
- storedFunction.inputSchema = meta.inputSchema;
38
- } else {
39
- log.verbose("no input schema in function metadata", {
40
- functionId
41
- }, {
42
- F: __dxlog_file,
43
- L: 45,
44
- S: void 0,
45
- C: (f, a) => f(...a)
46
- });
47
- }
48
- if (meta.outputSchema) {
49
- storedFunction.outputSchema = meta.outputSchema;
50
- } else {
51
- log.verbose("no output schema in function metadata", {
52
- functionId
53
- }, {
54
- F: __dxlog_file,
55
- L: 51,
56
- S: void 0,
57
- C: (f, a) => f(...a)
58
- });
59
- }
60
- };
61
-
62
- // src/util/deploy.ts
63
- import { Obj, Ref } from "@dxos/echo";
64
- import { FunctionType, getUserFunctionUrlInMetadata as getUserFunctionUrlInMetadata2, makeFunctionUrl, setUserFunctionUrlInMetadata } from "@dxos/functions";
65
- import { Bundler } from "@dxos/functions/bundler";
66
- import { incrementSemverPatch, uploadWorkerFunction } from "@dxos/functions/edge";
67
- import { log as log2 } from "@dxos/log";
68
- var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-script/src/util/deploy.ts";
69
- var isScriptDeployed = ({ script, fn }) => {
70
- const existingFunctionUrl = fn && getUserFunctionUrlInMetadata2(Obj.getMeta(fn));
71
- return Boolean(existingFunctionUrl) && !script.changed;
72
- };
73
- var deployScript = async ({ script, client, space, fn, existingFunctionUrl }) => {
74
- const validationError = validateDeployInputs(script, space);
75
- if (validationError) {
76
- return {
77
- success: false,
78
- error: validationError
79
- };
80
- }
81
- try {
82
- const existingFunctionId = extractFunctionId(existingFunctionUrl);
83
- const { bundle, error } = await bundleScript(script.source.target.content);
84
- if (error || !bundle) {
85
- throw error || new Error("Bundle creation failed");
86
- }
87
- const { functionId, version, meta } = await uploadWorkerFunction({
88
- client,
89
- ownerPublicKey: space.key,
90
- version: fn ? incrementSemverPatch(fn.version) : "0.0.1",
91
- functionId: existingFunctionId,
92
- source: bundle
93
- });
94
- if (functionId === void 0 || version === void 0) {
95
- throw new Error(`Upload didn't return expected data: ${JSON.stringify({
96
- functionId,
97
- version
98
- })}`);
99
- }
100
- const storedFunction = createOrUpdateFunctionInSpace(space, fn, script, functionId, version);
101
- script.changed = false;
102
- updateFunctionMetadata(script, storedFunction, meta, functionId);
103
- const functionUrl = makeFunctionUrl({
104
- functionId
105
- });
106
- setUserFunctionUrlInMetadata(Obj.getMeta(storedFunction), functionUrl);
107
- return {
108
- success: true,
109
- functionUrl
110
- };
111
- } catch (err) {
112
- log2.catch(err, void 0, {
113
- F: __dxlog_file2,
114
- L: 80,
115
- S: void 0,
116
- C: (f, a) => f(...a)
117
- });
118
- return {
119
- success: false,
120
- error: err
121
- };
122
- }
123
- };
124
- var validateDeployInputs = (script, space) => {
125
- if (!script.source || !space) {
126
- return new Error("Script source or space not available");
127
- }
128
- return null;
129
- };
130
- var extractFunctionId = (functionUrl) => {
131
- return functionUrl?.split("/").at(-1);
132
- };
133
- var bundleScript = async (source) => {
134
- const bundler = new Bundler({
135
- platform: "browser",
136
- sandboxedModules: [],
137
- remoteModules: {}
138
- });
139
- const buildResult = await bundler.bundle({
140
- source
141
- });
142
- if (buildResult.error || !buildResult.bundle) {
143
- return {
144
- error: buildResult.error || new Error("Bundle creation failed")
145
- };
146
- }
147
- return {
148
- bundle: buildResult.bundle
149
- };
150
- };
151
- var createOrUpdateFunctionInSpace = (space, fn, script, functionId, version) => {
152
- if (fn) {
153
- fn.version = version;
154
- return fn;
155
- } else {
156
- return space.db.add(Obj.make(FunctionType, {
157
- name: functionId,
158
- version,
159
- source: Ref.make(script)
160
- }));
161
- }
162
- };
163
-
164
- // src/hooks/useCreateAndDeployScriptTemplates.ts
165
- import { pipe } from "effect/Function";
166
- import { useCallback, useState } from "react";
167
- import { chain, createIntent, useIntentDispatcher } from "@dxos/app-framework";
168
- import { Obj as Obj2 } from "@dxos/echo";
169
- import { ScriptType } from "@dxos/functions";
170
- import { invariant } from "@dxos/invariant";
171
- import { SpaceAction } from "@dxos/plugin-space/types";
172
- import { useClient } from "@dxos/react-client";
173
- var __dxlog_file3 = "/__w/dxos/dxos/packages/plugins/plugin-script/src/hooks/useCreateAndDeployScriptTemplates.ts";
174
- var useCreateAndDeployScriptTemplates = (space, scriptTemplates) => {
175
- const { dispatchPromise: dispatch } = useIntentDispatcher();
176
- const client = useClient();
177
- const [status, setStatus] = useState("idle");
178
- const [error, setError] = useState(void 0);
179
- const handleCreateAndDeployScripts = useCallback(async () => {
180
- invariant(space, void 0, {
181
- F: __dxlog_file3,
182
- L: 36,
183
- S: void 0,
184
- A: [
185
- "space",
186
- ""
187
- ]
188
- });
189
- setStatus("pending");
190
- setError(void 0);
191
- const deploymentResults = await Promise.all(scriptTemplates.map(async (template) => {
192
- const result = await dispatch(pipe(createIntent(ScriptAction.Create, {
193
- space,
194
- initialTemplateId: template.id
195
- }), chain(SpaceAction.AddObject, {
196
- target: space
197
- })));
198
- invariant(Obj2.instanceOf(ScriptType, result.data?.object), void 0, {
199
- F: __dxlog_file3,
200
- L: 48,
201
- S: void 0,
202
- A: [
203
- "Obj.instanceOf(ScriptType, result.data?.object)",
204
- ""
205
- ]
206
- });
207
- return deployScript({
208
- space,
209
- client,
210
- script: result.data.object
211
- });
212
- }));
213
- const hasErrors = deploymentResults.some((result) => !result.success);
214
- setStatus(hasErrors ? "error" : "success");
215
- }, [
216
- space,
217
- dispatch,
218
- client,
219
- scriptTemplates
220
- ]);
221
- return {
222
- handleCreateAndDeployScripts,
223
- status,
224
- error
225
- };
226
- };
227
-
228
- export {
229
- getFunctionUrl,
230
- isScriptDeployed,
231
- deployScript,
232
- useCreateAndDeployScriptTemplates
233
- };
234
- //# sourceMappingURL=chunk-XJPK3IYI.mjs.map