@dxos/plugin-script 0.8.1-staging.5be625a → 0.8.1-staging.9eaf14f

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 (257) hide show
  1. package/dist/lib/browser/DeploymentDialog-AEPYJKPO.mjs +12 -0
  2. package/dist/lib/browser/DeploymentDialog-AEPYJKPO.mjs.map +7 -0
  3. package/dist/lib/browser/{ScriptContainer-DDXZNAPF.mjs → ScriptContainer-R25PRK2D.mjs} +26 -33
  4. package/dist/lib/browser/ScriptContainer-R25PRK2D.mjs.map +7 -0
  5. package/dist/lib/browser/app-graph-builder-RRLY67QC.mjs +64 -0
  6. package/dist/lib/browser/app-graph-builder-RRLY67QC.mjs.map +7 -0
  7. package/dist/lib/browser/{artifact-definition-GYCZJGR4.mjs → artifact-definition-WXFYD2V5.mjs} +5 -5
  8. package/dist/lib/browser/artifact-definition-WXFYD2V5.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-T7XG5GED.mjs → chunk-2CGZFDCR.mjs} +290 -277
  10. package/dist/lib/browser/chunk-2CGZFDCR.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-4VD3K3PY.mjs +15 -0
  12. package/dist/lib/browser/{chunk-FG66JYON.mjs.map → chunk-4VD3K3PY.mjs.map} +3 -3
  13. package/dist/lib/browser/chunk-CSZXPLYY.mjs +147 -0
  14. package/dist/lib/browser/chunk-CSZXPLYY.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-KLEOGVXY.mjs +352 -0
  16. package/dist/lib/browser/chunk-KLEOGVXY.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-MQZQB5VD.mjs +233 -0
  18. package/dist/lib/browser/chunk-MQZQB5VD.mjs.map +7 -0
  19. package/dist/lib/browser/{chunk-AJNRPWAA.mjs → chunk-R2CHVWJ2.mjs} +5 -4
  20. package/dist/lib/browser/chunk-R2CHVWJ2.mjs.map +7 -0
  21. package/dist/lib/browser/chunk-SUCBNCEQ.mjs +87 -0
  22. package/dist/lib/browser/chunk-SUCBNCEQ.mjs.map +7 -0
  23. package/dist/lib/browser/{chunk-27LV6ARH.mjs → chunk-WSK3YQXI.mjs} +9 -3
  24. package/dist/lib/browser/{chunk-27LV6ARH.mjs.map → chunk-WSK3YQXI.mjs.map} +3 -3
  25. package/dist/lib/browser/{compiler-ZQLHHJ5P.mjs → compiler-56LTBEQB.mjs} +7 -7
  26. package/dist/lib/browser/index.mjs +62 -52
  27. package/dist/lib/browser/index.mjs.map +3 -3
  28. package/dist/lib/browser/intent-resolver-WCVXKRBR.mjs +90 -0
  29. package/dist/lib/browser/intent-resolver-WCVXKRBR.mjs.map +7 -0
  30. package/dist/lib/browser/meta.json +1 -1
  31. package/dist/lib/browser/react-surface-WXZVPNGI.mjs +117 -0
  32. package/dist/lib/browser/react-surface-WXZVPNGI.mjs.map +7 -0
  33. package/dist/lib/browser/{settings-467GVEBU.mjs → settings-Z7B37V2I.mjs} +6 -6
  34. package/dist/lib/browser/{settings-467GVEBU.mjs.map → settings-Z7B37V2I.mjs.map} +3 -3
  35. package/dist/lib/browser/types.mjs +5 -2
  36. package/dist/lib/node/DeploymentDialog-O4MU4OMF.cjs +33 -0
  37. package/dist/lib/node/DeploymentDialog-O4MU4OMF.cjs.map +7 -0
  38. package/dist/lib/node/{ScriptContainer-DM4WSS4Y.cjs → ScriptContainer-5KY6ZOQD.cjs} +29 -34
  39. package/dist/lib/node/ScriptContainer-5KY6ZOQD.cjs.map +7 -0
  40. package/dist/lib/node/app-graph-builder-6I2BWD46.cjs +80 -0
  41. package/dist/lib/node/app-graph-builder-6I2BWD46.cjs.map +7 -0
  42. package/dist/lib/node/{artifact-definition-3SNVJ34V.cjs → artifact-definition-6NVXEHJD.cjs} +11 -11
  43. package/dist/lib/node/artifact-definition-6NVXEHJD.cjs.map +7 -0
  44. package/dist/lib/node/chunk-65MIJR3Q.cjs +173 -0
  45. package/dist/lib/node/chunk-65MIJR3Q.cjs.map +7 -0
  46. package/dist/lib/node/chunk-F4DP7WON.cjs +372 -0
  47. package/dist/lib/node/chunk-F4DP7WON.cjs.map +7 -0
  48. package/dist/lib/node/{chunk-AOKGOI5J.cjs → chunk-JICWAOWZ.cjs} +6 -6
  49. package/dist/lib/node/{chunk-AOKGOI5J.cjs.map → chunk-JICWAOWZ.cjs.map} +3 -3
  50. package/dist/lib/node/{chunk-VLQUYHPB.cjs → chunk-SLDJM45C.cjs} +286 -272
  51. package/dist/lib/node/chunk-SLDJM45C.cjs.map +7 -0
  52. package/dist/lib/node/chunk-VYBEBLDO.cjs +251 -0
  53. package/dist/lib/node/chunk-VYBEBLDO.cjs.map +7 -0
  54. package/dist/lib/node/chunk-X7MHLHHS.cjs +91 -0
  55. package/dist/lib/node/chunk-X7MHLHHS.cjs.map +7 -0
  56. package/dist/lib/node/{chunk-XFB6JL2G.cjs → chunk-XFZPWFEG.cjs} +8 -7
  57. package/dist/lib/node/chunk-XFZPWFEG.cjs.map +7 -0
  58. package/dist/lib/node/{chunk-2XX4L67K.cjs → chunk-YJQZHKKA.cjs} +11 -4
  59. package/dist/lib/node/{chunk-2XX4L67K.cjs.map → chunk-YJQZHKKA.cjs.map} +3 -3
  60. package/dist/lib/node/{compiler-5ALLTH2B.cjs → compiler-W2RU3M7U.cjs} +8 -8
  61. package/dist/lib/node/index.cjs +72 -62
  62. package/dist/lib/node/index.cjs.map +3 -3
  63. package/dist/lib/node/intent-resolver-J4NBDNFH.cjs +100 -0
  64. package/dist/lib/node/intent-resolver-J4NBDNFH.cjs.map +7 -0
  65. package/dist/lib/node/meta.json +1 -1
  66. package/dist/lib/node/react-surface-27KTUBIZ.cjs +129 -0
  67. package/dist/lib/node/react-surface-27KTUBIZ.cjs.map +7 -0
  68. package/dist/lib/node/{settings-WLYT2XQF.cjs → settings-EI6VPNKN.cjs} +9 -9
  69. package/dist/lib/node/{settings-WLYT2XQF.cjs.map → settings-EI6VPNKN.cjs.map} +3 -3
  70. package/dist/lib/node/types.cjs +6 -4
  71. package/dist/lib/node/types.cjs.map +2 -2
  72. package/dist/lib/node-esm/DeploymentDialog-SSQSWLHX.mjs +13 -0
  73. package/dist/lib/node-esm/DeploymentDialog-SSQSWLHX.mjs.map +7 -0
  74. package/dist/lib/node-esm/{ScriptContainer-HWCHDARL.mjs → ScriptContainer-W2F4FGDV.mjs} +26 -33
  75. package/dist/lib/node-esm/ScriptContainer-W2F4FGDV.mjs.map +7 -0
  76. package/dist/lib/node-esm/app-graph-builder-H5XLRVX3.mjs +65 -0
  77. package/dist/lib/node-esm/app-graph-builder-H5XLRVX3.mjs.map +7 -0
  78. package/dist/lib/node-esm/{artifact-definition-VAFNV62U.mjs → artifact-definition-KQ64AYBP.mjs} +5 -5
  79. package/dist/lib/node-esm/artifact-definition-KQ64AYBP.mjs.map +7 -0
  80. package/dist/lib/node-esm/{chunk-BIFA5BEB.mjs → chunk-4MTPYMV2.mjs} +290 -277
  81. package/dist/lib/node-esm/chunk-4MTPYMV2.mjs.map +7 -0
  82. package/dist/lib/node-esm/{chunk-MFXRE7ZD.mjs → chunk-EB5DSAD4.mjs} +5 -5
  83. package/dist/lib/node-esm/{chunk-MFXRE7ZD.mjs.map → chunk-EB5DSAD4.mjs.map} +3 -3
  84. package/dist/lib/node-esm/chunk-F4HA5C34.mjs +234 -0
  85. package/dist/lib/node-esm/chunk-F4HA5C34.mjs.map +7 -0
  86. package/dist/lib/node-esm/{chunk-5S2KBIMH.mjs → chunk-FDEAVT67.mjs} +9 -3
  87. package/dist/lib/node-esm/{chunk-5S2KBIMH.mjs.map → chunk-FDEAVT67.mjs.map} +3 -3
  88. package/dist/lib/node-esm/chunk-MU3JKVL2.mjs +148 -0
  89. package/dist/lib/node-esm/chunk-MU3JKVL2.mjs.map +7 -0
  90. package/dist/lib/node-esm/chunk-PBGVTGL2.mjs +353 -0
  91. package/dist/lib/node-esm/chunk-PBGVTGL2.mjs.map +7 -0
  92. package/dist/lib/node-esm/chunk-QDYGTY4L.mjs +89 -0
  93. package/dist/lib/node-esm/chunk-QDYGTY4L.mjs.map +7 -0
  94. package/dist/lib/node-esm/{chunk-WQ4YIZ2L.mjs → chunk-RW2APVMV.mjs} +5 -4
  95. package/dist/lib/node-esm/chunk-RW2APVMV.mjs.map +7 -0
  96. package/dist/lib/node-esm/{compiler-K7GYROAO.mjs → compiler-VT5C2Z3T.mjs} +7 -7
  97. package/dist/lib/node-esm/index.mjs +62 -52
  98. package/dist/lib/node-esm/index.mjs.map +3 -3
  99. package/dist/lib/node-esm/intent-resolver-PDZ2A26X.mjs +91 -0
  100. package/dist/lib/node-esm/intent-resolver-PDZ2A26X.mjs.map +7 -0
  101. package/dist/lib/node-esm/meta.json +1 -1
  102. package/dist/lib/node-esm/react-surface-UCUVDVSH.mjs +118 -0
  103. package/dist/lib/node-esm/react-surface-UCUVDVSH.mjs.map +7 -0
  104. package/dist/lib/node-esm/{settings-DR3B6GHE.mjs → settings-HU5UEFRF.mjs} +6 -6
  105. package/dist/lib/node-esm/{settings-DR3B6GHE.mjs.map → settings-HU5UEFRF.mjs.map} +3 -3
  106. package/dist/lib/node-esm/types.mjs +5 -2
  107. package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/app-graph-builder.d.ts +181 -0
  109. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  110. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  111. package/dist/types/src/capabilities/index.d.ts +178 -1
  112. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  113. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  114. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  115. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts +11 -0
  116. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts.map +1 -0
  117. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts +18 -0
  118. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts.map +1 -0
  119. package/dist/types/src/components/DeploymentDialog/index.d.ts +4 -0
  120. package/dist/types/src/components/DeploymentDialog/index.d.ts.map +1 -0
  121. package/dist/types/src/components/ScriptContainer.d.ts +3 -4
  122. package/dist/types/src/components/ScriptContainer.d.ts.map +1 -1
  123. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  124. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts +8 -0
  125. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts.map +1 -0
  126. package/dist/types/src/components/{ScriptSettings/ScriptSettings.d.ts → Settings/ScriptPluginSettings.d.ts} +2 -2
  127. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts.map +1 -0
  128. package/dist/types/src/components/Settings/index.d.ts +3 -0
  129. package/dist/types/src/components/Settings/index.d.ts.map +1 -0
  130. package/dist/types/src/components/TestPanel/TestPanel.d.ts +7 -0
  131. package/dist/types/src/components/TestPanel/TestPanel.d.ts.map +1 -0
  132. package/dist/types/src/components/TestPanel/index.d.ts +2 -0
  133. package/dist/types/src/components/TestPanel/index.d.ts.map +1 -0
  134. package/dist/types/src/components/index.d.ts +8 -5
  135. package/dist/types/src/components/index.d.ts.map +1 -1
  136. package/dist/types/src/hooks/deploy.d.ts +10 -7
  137. package/dist/types/src/hooks/deploy.d.ts.map +1 -1
  138. package/dist/types/src/hooks/index.d.ts +1 -1
  139. package/dist/types/src/hooks/index.d.ts.map +1 -1
  140. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts +17 -0
  141. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts.map +1 -0
  142. package/dist/types/src/hooks/useToolbarAction.d.ts +2 -3
  143. package/dist/types/src/hooks/useToolbarAction.d.ts.map +1 -1
  144. package/dist/types/src/meta.d.ts +1 -0
  145. package/dist/types/src/meta.d.ts.map +1 -1
  146. package/dist/types/src/templates/chess.d.ts.map +1 -1
  147. package/dist/types/src/templates/data-generator.d.ts +10 -0
  148. package/dist/types/src/templates/data-generator.d.ts.map +1 -0
  149. package/dist/types/src/templates/forex-effect.d.ts.map +1 -1
  150. package/dist/types/src/templates/gmail.d.ts +3 -0
  151. package/dist/types/src/templates/gmail.d.ts.map +1 -0
  152. package/dist/types/src/templates/index.d.ts.map +1 -1
  153. package/dist/types/src/translations.d.ts +66 -15
  154. package/dist/types/src/translations.d.ts.map +1 -1
  155. package/dist/types/src/types.d.ts +4 -0
  156. package/dist/types/src/types.d.ts.map +1 -1
  157. package/dist/types/src/util/deploy.d.ts +25 -0
  158. package/dist/types/src/util/deploy.d.ts.map +1 -0
  159. package/dist/types/src/util/functions.d.ts +11 -0
  160. package/dist/types/src/util/functions.d.ts.map +1 -0
  161. package/dist/types/src/util/index.d.ts +3 -0
  162. package/dist/types/src/util/index.d.ts.map +1 -0
  163. package/package.json +51 -49
  164. package/src/ScriptPlugin.tsx +12 -17
  165. package/src/capabilities/app-graph-builder.ts +47 -0
  166. package/src/capabilities/artifact-definition.ts +1 -1
  167. package/src/capabilities/capabilities.ts +2 -2
  168. package/src/capabilities/index.ts +2 -1
  169. package/src/capabilities/intent-resolver.ts +39 -5
  170. package/src/capabilities/react-surface.tsx +62 -33
  171. package/src/capabilities/settings.ts +2 -2
  172. package/src/components/DeploymentDialog/DeploymentDialog.stories.tsx +39 -0
  173. package/src/components/DeploymentDialog/DeploymentDialog.tsx +112 -0
  174. package/src/components/DeploymentDialog/index.ts +9 -0
  175. package/src/components/ScriptContainer.tsx +22 -35
  176. package/src/components/ScriptToolbar/ScriptToolbar.tsx +3 -4
  177. package/src/components/{ScriptSettingsPanel.tsx → Settings/ScriptObjectSettings.tsx} +120 -102
  178. package/src/components/{ScriptSettings/ScriptSettings.tsx → Settings/ScriptPluginSettings.tsx} +3 -3
  179. package/src/components/Settings/index.ts +6 -0
  180. package/src/components/{DebugPanel/DebugPanel.tsx → TestPanel/TestPanel.tsx} +8 -14
  181. package/src/components/{LogsPanel → TestPanel}/index.ts +1 -1
  182. package/src/components/index.ts +4 -4
  183. package/src/hooks/deploy.ts +31 -80
  184. package/src/hooks/index.ts +1 -1
  185. package/src/hooks/useCreateAndDeployScriptTemplates.ts +59 -0
  186. package/src/hooks/useToolbarAction.ts +9 -22
  187. package/src/meta.ts +5 -0
  188. package/src/templates/chess.ts +4 -0
  189. package/src/templates/data-generator.ts +73 -0
  190. package/src/templates/discord.ts +1 -1
  191. package/src/templates/forex-effect.ts +2 -1
  192. package/src/templates/gmail.ts +244 -0
  193. package/src/templates/index.ts +14 -0
  194. package/src/translations.ts +27 -8
  195. package/src/types.ts +4 -0
  196. package/src/util/deploy.ts +126 -0
  197. package/src/util/functions.ts +53 -0
  198. package/src/util/index.ts +6 -0
  199. package/dist/lib/browser/ScriptContainer-DDXZNAPF.mjs.map +0 -7
  200. package/dist/lib/browser/artifact-definition-GYCZJGR4.mjs.map +0 -7
  201. package/dist/lib/browser/chunk-4SSKJNMZ.mjs +0 -69
  202. package/dist/lib/browser/chunk-4SSKJNMZ.mjs.map +0 -7
  203. package/dist/lib/browser/chunk-AJNRPWAA.mjs.map +0 -7
  204. package/dist/lib/browser/chunk-FG66JYON.mjs +0 -15
  205. package/dist/lib/browser/chunk-LJN26TSM.mjs +0 -526
  206. package/dist/lib/browser/chunk-LJN26TSM.mjs.map +0 -7
  207. package/dist/lib/browser/chunk-T7XG5GED.mjs.map +0 -7
  208. package/dist/lib/browser/intent-resolver-3B3Z67FP.mjs +0 -45
  209. package/dist/lib/browser/intent-resolver-3B3Z67FP.mjs.map +0 -7
  210. package/dist/lib/browser/react-surface-ICXHFHN7.mjs +0 -79
  211. package/dist/lib/browser/react-surface-ICXHFHN7.mjs.map +0 -7
  212. package/dist/lib/node/ScriptContainer-DM4WSS4Y.cjs.map +0 -7
  213. package/dist/lib/node/artifact-definition-3SNVJ34V.cjs.map +0 -7
  214. package/dist/lib/node/chunk-I5Z6TRZY.cjs +0 -548
  215. package/dist/lib/node/chunk-I5Z6TRZY.cjs.map +0 -7
  216. package/dist/lib/node/chunk-VLQUYHPB.cjs.map +0 -7
  217. package/dist/lib/node/chunk-XCQNFRZ6.cjs +0 -77
  218. package/dist/lib/node/chunk-XCQNFRZ6.cjs.map +0 -7
  219. package/dist/lib/node/chunk-XFB6JL2G.cjs.map +0 -7
  220. package/dist/lib/node/intent-resolver-CN5WMMAD.cjs +0 -59
  221. package/dist/lib/node/intent-resolver-CN5WMMAD.cjs.map +0 -7
  222. package/dist/lib/node/react-surface-IER3VEZR.cjs +0 -95
  223. package/dist/lib/node/react-surface-IER3VEZR.cjs.map +0 -7
  224. package/dist/lib/node-esm/ScriptContainer-HWCHDARL.mjs.map +0 -7
  225. package/dist/lib/node-esm/artifact-definition-VAFNV62U.mjs.map +0 -7
  226. package/dist/lib/node-esm/chunk-4YUSGXJ2.mjs +0 -71
  227. package/dist/lib/node-esm/chunk-4YUSGXJ2.mjs.map +0 -7
  228. package/dist/lib/node-esm/chunk-BIFA5BEB.mjs.map +0 -7
  229. package/dist/lib/node-esm/chunk-F2O475DQ.mjs +0 -527
  230. package/dist/lib/node-esm/chunk-F2O475DQ.mjs.map +0 -7
  231. package/dist/lib/node-esm/chunk-WQ4YIZ2L.mjs.map +0 -7
  232. package/dist/lib/node-esm/intent-resolver-6F7CVQEX.mjs +0 -46
  233. package/dist/lib/node-esm/intent-resolver-6F7CVQEX.mjs.map +0 -7
  234. package/dist/lib/node-esm/react-surface-EXSKKZNP.mjs +0 -80
  235. package/dist/lib/node-esm/react-surface-EXSKKZNP.mjs.map +0 -7
  236. package/dist/types/src/components/DebugPanel/DebugPanel.d.ts +0 -7
  237. package/dist/types/src/components/DebugPanel/DebugPanel.d.ts.map +0 -1
  238. package/dist/types/src/components/DebugPanel/index.d.ts +0 -2
  239. package/dist/types/src/components/DebugPanel/index.d.ts.map +0 -1
  240. package/dist/types/src/components/LogsPanel/LogsPanel.d.ts +0 -8
  241. package/dist/types/src/components/LogsPanel/LogsPanel.d.ts.map +0 -1
  242. package/dist/types/src/components/LogsPanel/index.d.ts +0 -2
  243. package/dist/types/src/components/LogsPanel/index.d.ts.map +0 -1
  244. package/dist/types/src/components/ScriptSettings/ScriptSettings.d.ts.map +0 -1
  245. package/dist/types/src/components/ScriptSettings/index.d.ts +0 -2
  246. package/dist/types/src/components/ScriptSettings/index.d.ts.map +0 -1
  247. package/dist/types/src/components/ScriptSettingsPanel.d.ts +0 -7
  248. package/dist/types/src/components/ScriptSettingsPanel.d.ts.map +0 -1
  249. package/dist/types/src/hooks/view.d.ts +0 -21
  250. package/dist/types/src/hooks/view.d.ts.map +0 -1
  251. package/src/components/DebugPanel/index.ts +0 -5
  252. package/src/components/LogsPanel/LogsPanel.tsx +0 -116
  253. package/src/components/ScriptSettings/index.ts +0 -5
  254. package/src/hooks/view.ts +0 -38
  255. /package/dist/lib/browser/{compiler-ZQLHHJ5P.mjs.map → compiler-56LTBEQB.mjs.map} +0 -0
  256. /package/dist/lib/node/{compiler-5ALLTH2B.cjs.map → compiler-W2RU3M7U.cjs.map} +0 -0
  257. /package/dist/lib/node-esm/{compiler-K7GYROAO.mjs.map → compiler-VT5C2Z3T.mjs.map} +0 -0
@@ -26,51 +26,268 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_VLQUYHPB_exports = {};
30
- __export(chunk_VLQUYHPB_exports, {
31
- DebugPanel: () => DebugPanel,
29
+ var chunk_SLDJM45C_exports = {};
30
+ __export(chunk_SLDJM45C_exports, {
31
+ DeploymentDialog: () => DeploymentDialog,
32
32
  ScriptContainer: () => ScriptContainer,
33
- ScriptSettings: () => ScriptSettings,
34
- ScriptSettingsPanel: () => ScriptSettingsPanel
33
+ ScriptObjectSettings: () => ScriptObjectSettings,
34
+ ScriptPluginSettings: () => ScriptPluginSettings,
35
+ ScriptProperties: () => ScriptProperties,
36
+ TestPanel: () => TestPanel
35
37
  });
36
- module.exports = __toCommonJS(chunk_VLQUYHPB_exports);
37
- var import_chunk_2XX4L67K = require("./chunk-2XX4L67K.cjs");
38
+ module.exports = __toCommonJS(chunk_SLDJM45C_exports);
39
+ var import_chunk_YJQZHKKA = require("./chunk-YJQZHKKA.cjs");
40
+ var import_core = require("@octokit/core");
38
41
  var import_react = __toESM(require("react"));
42
+ var import_app_framework = require("@dxos/app-framework");
43
+ var import_types = require("@dxos/functions/types");
39
44
  var import_log = require("@dxos/log");
45
+ var import_react_client = require("@dxos/react-client");
46
+ var import_echo = require("@dxos/react-client/echo");
40
47
  var import_react_ui = require("@dxos/react-ui");
41
- var import_react_ui_syntax_highlighter = require("@dxos/react-ui-syntax-highlighter");
42
- var import_react_ui_theme = require("@dxos/react-ui-theme");
48
+ var import_schema = require("@dxos/schema");
43
49
  var import_react2 = __toESM(require("react"));
44
- var import_react_client = require("@dxos/react-client");
50
+ var import_react_client2 = require("@dxos/react-client");
45
51
  var import_react_ui2 = require("@dxos/react-ui");
46
52
  var import_react_ui_editor = require("@dxos/react-ui-editor");
47
53
  var import_react_ui_form = require("@dxos/react-ui-form");
48
- var import_core = require("@octokit/core");
49
54
  var import_react3 = __toESM(require("react"));
50
- var import_app_framework = require("@dxos/app-framework");
51
- var import_types = require("@dxos/functions/types");
52
55
  var import_log2 = require("@dxos/log");
53
- var import_react_client2 = require("@dxos/react-client");
54
- var import_echo = require("@dxos/react-client/echo");
55
56
  var import_react_ui3 = require("@dxos/react-ui");
56
- var import_schema = require("@dxos/schema");
57
+ var import_react_ui_syntax_highlighter = require("@dxos/react-ui-syntax-highlighter");
58
+ var import_react_ui_theme = require("@dxos/react-ui-theme");
57
59
  var import_react4 = require("react");
58
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/components/DebugPanel/DebugPanel.tsx";
59
- var DebugPanel = ({ classNames, functionUrl }) => {
60
- const { t } = (0, import_react_ui.useTranslation)(import_chunk_2XX4L67K.SCRIPT_PLUGIN);
61
- const inputRef = (0, import_react.useRef)(null);
62
- const [input, setInput] = (0, import_react.useState)("");
63
- const [result, setResult] = (0, import_react.useState)("");
64
- const [state, setState] = (0, import_react.useState)(null);
65
- const [history, setHistory] = (0, import_react.useState)([]);
66
- const scrollerRef = (0, import_react.useRef)(null);
60
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-script/src/components/Settings/ScriptObjectSettings.tsx";
61
+ var ScriptObjectSettings = ({ object }) => {
62
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(Binding, {
63
+ object
64
+ }), /* @__PURE__ */ import_react.default.createElement(Publishing, {
65
+ object
66
+ }));
67
+ };
68
+ var ScriptProperties = ({ object }) => {
69
+ const { t } = (0, import_react_ui.useTranslation)(import_chunk_YJQZHKKA.SCRIPT_PLUGIN);
70
+ return /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.Root, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.Label, null, t("description label")), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.TextInput, {
71
+ placeholder: t("description placeholder"),
72
+ value: object.description ?? "",
73
+ onChange: (event) => {
74
+ object.description = event.target.value;
75
+ }
76
+ }));
77
+ };
78
+ var Binding = ({ object }) => {
79
+ const { t } = (0, import_react_ui.useTranslation)(import_chunk_YJQZHKKA.SCRIPT_PLUGIN);
80
+ const client = (0, import_react_client.useClient)();
81
+ const space = (0, import_echo.getSpace)(object);
82
+ const [fn] = (0, import_echo.useQuery)(space, import_echo.Filter.schema(import_types.FunctionType, {
83
+ source: object
84
+ }));
85
+ const functionPath = fn && (0, import_types.getUserFunctionUrlInMetadata)((0, import_echo.getMeta)(fn));
86
+ const functionUrl = functionPath && (0, import_types.getInvocationUrl)(functionPath, client.config.values.runtime?.services?.edge?.url ?? "", {
87
+ spaceId: space?.id
88
+ });
89
+ const [binding, setBinding] = (0, import_react_ui.useControlledState)(fn?.binding ?? "");
90
+ const handleBindingChange = (0, import_react.useCallback)((event) => {
91
+ setBinding(event.target.value);
92
+ }, [
93
+ setBinding
94
+ ]);
95
+ const handleBindingBlur = (0, import_react.useCallback)(() => {
96
+ fn.binding = binding;
97
+ }, [
98
+ fn,
99
+ binding
100
+ ]);
101
+ if (!fn || !functionUrl) {
102
+ return null;
103
+ }
104
+ return /* @__PURE__ */ import_react.default.createElement("div", {
105
+ role: "form",
106
+ className: "flex flex-col p-2 gap-2"
107
+ }, /* @__PURE__ */ import_react.default.createElement("h2", null, t("remote function settings heading")), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.Root, null, /* @__PURE__ */ import_react.default.createElement("div", {
108
+ role: "none",
109
+ className: "flex flex-col gap-1"
110
+ }, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.Label, null, t("function url label")), /* @__PURE__ */ import_react.default.createElement("div", {
111
+ role: "none",
112
+ className: "flex gap-1"
113
+ }, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.TextInput, {
114
+ disabled: true,
115
+ value: functionUrl,
116
+ onChange: (event) => {
117
+ fn.name = event.target.value;
118
+ }
119
+ }), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Clipboard.IconButton, {
120
+ value: functionUrl
121
+ })))), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.Root, null, /* @__PURE__ */ import_react.default.createElement("div", {
122
+ role: "none",
123
+ className: "flex flex-col gap-1"
124
+ }, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.Label, null, t("function binding label")), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.TextInput, {
125
+ placeholder: t("function binding placeholder"),
126
+ value: binding,
127
+ onChange: handleBindingChange,
128
+ onBlur: handleBindingBlur
129
+ }))));
130
+ };
131
+ var Publishing = ({ object }) => {
132
+ const { t } = (0, import_react_ui.useTranslation)(import_chunk_YJQZHKKA.SCRIPT_PLUGIN);
133
+ const { dispatchPromise: dispatch } = (0, import_app_framework.useIntentDispatcher)();
134
+ const space = (0, import_echo.getSpace)(object);
135
+ const [githubToken] = (0, import_echo.useQuery)(space, import_echo.Filter.schema(import_schema.AccessTokenType, {
136
+ source: "github.com"
137
+ }));
138
+ const gistKey = (0, import_echo.getMeta)(object).keys.find(({ source }) => source === "github.com");
139
+ const [gistUrl, setGistUrl] = (0, import_react.useState)();
140
+ (0, import_react.useEffect)(() => {
141
+ const token = githubToken?.token;
142
+ const gistId = gistKey?.id;
143
+ if (!token || !gistId) {
144
+ setGistUrl(void 0);
145
+ return;
146
+ }
147
+ const timeout = setTimeout(async () => {
148
+ try {
149
+ const octokit = new import_core.Octokit({
150
+ auth: githubToken.token
151
+ });
152
+ const response = await octokit.request("GET /gists/{gist_id}", {
153
+ gist_id: gistId
154
+ });
155
+ setGistUrl(response.data.html_url);
156
+ } catch (err) {
157
+ import_log.log.catch(err, void 0, {
158
+ F: __dxlog_file,
159
+ L: 135,
160
+ S: void 0,
161
+ C: (f, a) => f(...a)
162
+ });
163
+ setGistUrl(void 0);
164
+ }
165
+ });
166
+ return () => clearTimeout(timeout);
167
+ }, [
168
+ githubToken,
169
+ gistKey
170
+ ]);
171
+ const handleOpenTokenManager = (0, import_react.useCallback)(() => dispatch((0, import_app_framework.createIntent)(import_app_framework.SettingsAction.Open, {
172
+ plugin: "dxos.org/plugin/token-manager"
173
+ })), []);
174
+ const [publishing, setPublishing] = (0, import_react.useState)(false);
175
+ const handlePublish = (0, import_react.useCallback)(async () => {
176
+ setPublishing(true);
177
+ const octokit = new import_core.Octokit({
178
+ auth: githubToken.token
179
+ });
180
+ const source = await object.source.load();
181
+ const filename = object.name ? kebabize(object.name) : "composer-script";
182
+ const files = {
183
+ [`${filename}.ts`]: {
184
+ content: source.content
185
+ }
186
+ };
187
+ try {
188
+ const meta2 = (0, import_echo.getMeta)(object);
189
+ const githubKey = meta2.keys.find(({ source: source2 }) => source2 === "github.com");
190
+ const gistId = githubKey?.id;
191
+ if (gistId) {
192
+ await octokit.request("PATCH /gists/{gist_id}", {
193
+ gist_id: gistId,
194
+ files
195
+ });
196
+ } else {
197
+ const response = await octokit.request("POST /gists", {
198
+ public: true,
199
+ files
200
+ });
201
+ if (response.data.id) {
202
+ meta2.keys.push({
203
+ source: "github.com",
204
+ id: response.data.id
205
+ });
206
+ }
207
+ }
208
+ } finally {
209
+ setPublishing(false);
210
+ }
211
+ }, [
212
+ object,
213
+ githubToken
214
+ ]);
215
+ return /* @__PURE__ */ import_react.default.createElement("div", {
216
+ className: "flex flex-col p-2 gap-4"
217
+ }, /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement("h2", null, t("script publish settings label")), /* @__PURE__ */ import_react.default.createElement("p", {
218
+ className: "text-description text-sm"
219
+ }, t("script publish settings description"))), !githubToken && /* @__PURE__ */ import_react.default.createElement("div", {
220
+ className: "flex flex-col gap-2"
221
+ }, /* @__PURE__ */ import_react.default.createElement("span", null, t("no github token label")), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Button, {
222
+ onClick: handleOpenTokenManager
223
+ }, t("open token manager label"))), githubToken && /* @__PURE__ */ import_react.default.createElement("div", {
224
+ className: "flex justify-end gap-2"
225
+ }, gistUrl && /* @__PURE__ */ import_react.default.createElement(import_react_ui.Clipboard.IconButton, {
226
+ value: gistUrl
227
+ }), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Button, {
228
+ disabled: publishing,
229
+ onClick: handlePublish
230
+ }, t(publishing ? "publishing label" : "publish label"))));
231
+ };
232
+ var kebabize = (str) => str.replace(/[A-Z]+(?![a-z])|[A-Z]/g, ($, ofs) => (ofs ? "-" : "") + $.toLowerCase());
233
+ var ScriptPluginSettings = ({ settings }) => {
234
+ const { t } = (0, import_react_ui2.useTranslation)(import_chunk_YJQZHKKA.meta.id);
235
+ const client = (0, import_react_client2.useClient)();
236
+ const handleAuthenticate = async () => {
237
+ const { identityKey } = client.halo.identity.get();
238
+ await client.halo.writeCredentials([
239
+ {
240
+ issuer: identityKey,
241
+ issuanceDate: /* @__PURE__ */ new Date(),
242
+ subject: {
243
+ id: identityKey,
244
+ assertion: {
245
+ "@type": "dxos.halo.credentials.ServiceAccess",
246
+ serverName: "hub.dxos.network",
247
+ serverKey: identityKey,
248
+ identityKey,
249
+ capabilities: [
250
+ "composer:beta"
251
+ ]
252
+ }
253
+ }
254
+ }
255
+ ]);
256
+ };
257
+ return /* @__PURE__ */ import_react2.default.createElement(import_react_ui_form.DeprecatedFormContainer, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui_form.DeprecatedFormInput, {
258
+ label: t("authenticate action label")
259
+ }, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Button, {
260
+ onClick: handleAuthenticate
261
+ }, t("authenticate button label"))), /* @__PURE__ */ import_react2.default.createElement(import_react_ui_form.DeprecatedFormInput, {
262
+ label: t("editor input mode label")
263
+ }, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Root, {
264
+ value: settings.editorInputMode ?? "default",
265
+ onValueChange: (value) => {
266
+ settings.editorInputMode = value;
267
+ }
268
+ }, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.TriggerButton, {
269
+ placeholder: t("select editor input mode placeholder")
270
+ }), /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Portal, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Content, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Viewport, null, import_react_ui_editor.EditorInputModes.map((mode) => /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Option, {
271
+ key: mode,
272
+ value: mode
273
+ }, t(`settings editor input mode ${mode} label`)))))))));
274
+ };
275
+ var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-script/src/components/TestPanel/TestPanel.tsx";
276
+ var TestPanel = ({ classNames, functionUrl }) => {
277
+ const { t } = (0, import_react_ui3.useTranslation)(import_chunk_YJQZHKKA.SCRIPT_PLUGIN);
278
+ const inputRef = (0, import_react3.useRef)(null);
279
+ const [input, setInput] = (0, import_react3.useState)("");
280
+ const [result, setResult] = (0, import_react3.useState)("");
281
+ const [state, setState] = (0, import_react3.useState)(null);
282
+ const [history, setHistory] = (0, import_react3.useState)([]);
283
+ const scrollerRef = (0, import_react3.useRef)(null);
67
284
  const handleScroll = () => {
68
285
  if (scrollerRef.current) {
69
286
  scrollerRef.current.scrollTop = scrollerRef.current.scrollHeight;
70
287
  }
71
288
  };
72
- const controller = (0, import_react.useRef)();
73
- (0, import_react.useEffect)(() => {
289
+ const controller = (0, import_react3.useRef)();
290
+ (0, import_react3.useEffect)(() => {
74
291
  return () => {
75
292
  handleStop();
76
293
  };
@@ -170,9 +387,9 @@ var DebugPanel = ({ classNames, functionUrl }) => {
170
387
  };
171
388
  void reader.read().then(pump).catch((err) => {
172
389
  if (err.name !== "AbortError") {
173
- import_log.log.catch(err, void 0, {
174
- F: __dxlog_file,
175
- L: 146,
390
+ import_log2.log.catch(err, void 0, {
391
+ F: __dxlog_file2,
392
+ L: 147,
176
393
  S: void 0,
177
394
  C: (f, a) => f(...a)
178
395
  });
@@ -184,9 +401,9 @@ var DebugPanel = ({ classNames, functionUrl }) => {
184
401
  handleResponse({
185
402
  error
186
403
  });
187
- import_log.log.catch(err, void 0, {
188
- F: __dxlog_file,
189
- L: 153,
404
+ import_log2.log.catch(err, void 0, {
405
+ F: __dxlog_file2,
406
+ L: 154,
190
407
  S: void 0,
191
408
  C: (f, a) => f(...a)
192
409
  });
@@ -195,65 +412,62 @@ var DebugPanel = ({ classNames, functionUrl }) => {
195
412
  }
196
413
  }
197
414
  };
198
- return /* @__PURE__ */ import_react.default.createElement("div", {
415
+ return /* @__PURE__ */ import_react3.default.createElement("div", {
199
416
  className: (0, import_react_ui_theme.mx)("flex flex-col h-full overflow-hidden", classNames)
200
- }, /* @__PURE__ */ import_react.default.createElement(MessageThread, {
417
+ }, /* @__PURE__ */ import_react3.default.createElement(MessageThread, {
201
418
  ref: scrollerRef,
202
419
  state,
203
420
  result,
204
421
  history
205
- }), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Toolbar.Root, {
206
- classNames: "p-1"
207
- }, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.Root, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.TextInput, {
422
+ }), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Toolbar.Root, {
423
+ classNames: "p-2"
424
+ }, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.Root, null, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.TextInput, {
208
425
  ref: inputRef,
209
426
  autoFocus: true,
210
427
  placeholder: t("function request placeholder"),
211
428
  value: input,
212
429
  onChange: (ev) => setInput(ev.target.value),
213
430
  onKeyDown: (ev) => ev.key === "Enter" && handleRequest(input)
214
- })), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Toolbar.Button, {
431
+ })), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Toolbar.Button, {
215
432
  onClick: () => handleRequest(input)
216
- }, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Icon, {
433
+ }, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Icon, {
217
434
  icon: "ph--play--regular",
218
435
  size: 4
219
- })), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Toolbar.Button, {
436
+ })), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Toolbar.Button, {
220
437
  onClick: () => state ? handleStop() : handleClear()
221
- }, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Icon, {
438
+ }, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Icon, {
222
439
  icon: state ? "ph--stop--regular" : "ph--trash--regular",
223
440
  size: 4
224
441
  }))));
225
442
  };
226
- var MessageThread = /* @__PURE__ */ (0, import_react.forwardRef)(({ state, history, result }, forwardedRef) => {
227
- if (!history.length && !result.length) {
228
- return null;
229
- }
230
- return /* @__PURE__ */ import_react.default.createElement("div", {
443
+ var MessageThread = /* @__PURE__ */ (0, import_react3.forwardRef)(({ state, history, result }, forwardedRef) => {
444
+ return /* @__PURE__ */ import_react3.default.createElement("div", {
231
445
  ref: forwardedRef,
232
446
  className: "flex flex-col gap-6 h-full p-2 overflow-x-hidden overflow-y-auto"
233
- }, history.map((message, i) => /* @__PURE__ */ import_react.default.createElement("div", {
447
+ }, history.map((message, i) => /* @__PURE__ */ import_react3.default.createElement("div", {
234
448
  key: i,
235
449
  className: "grid grid-cols-[2rem_1fr_2rem]"
236
- }, /* @__PURE__ */ import_react.default.createElement("div", {
450
+ }, /* @__PURE__ */ import_react3.default.createElement("div", {
237
451
  className: "p-1"
238
- }, message.type === "response" && /* @__PURE__ */ import_react.default.createElement(RobotAvatar, null)), /* @__PURE__ */ import_react.default.createElement("div", {
452
+ }, message.type === "response" && /* @__PURE__ */ import_react3.default.createElement(RobotAvatar, null)), /* @__PURE__ */ import_react3.default.createElement("div", {
239
453
  className: "overflow-auto"
240
- }, /* @__PURE__ */ import_react.default.createElement(MessageItem, {
454
+ }, /* @__PURE__ */ import_react3.default.createElement(MessageItem, {
241
455
  message
242
- })))), result?.length > 0 && /* @__PURE__ */ import_react.default.createElement("div", {
456
+ })))), result?.length > 0 && /* @__PURE__ */ import_react3.default.createElement("div", {
243
457
  className: "grid grid-cols-[2rem_1fr_2rem]"
244
- }, /* @__PURE__ */ import_react.default.createElement("div", {
458
+ }, /* @__PURE__ */ import_react3.default.createElement("div", {
245
459
  className: "p-1"
246
- }, state === "pending" && /* @__PURE__ */ import_react.default.createElement(import_react_ui.Icon, {
460
+ }, state === "pending" && /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Icon, {
247
461
  icon: "ph--spinner--regular",
248
462
  size: 6,
249
463
  classNames: "animate-spin"
250
- }) || /* @__PURE__ */ import_react.default.createElement(import_react_ui.Icon, {
464
+ }) || /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Icon, {
251
465
  icon: "ph--robot--regular",
252
466
  size: 6,
253
467
  classNames: "animate-[pulse_1s_ease-in-out_infinite]"
254
- })), /* @__PURE__ */ import_react.default.createElement("div", {
468
+ })), /* @__PURE__ */ import_react3.default.createElement("div", {
255
469
  className: "overflow-auto"
256
- }, /* @__PURE__ */ import_react.default.createElement(MessageItem, {
470
+ }, /* @__PURE__ */ import_react3.default.createElement(MessageItem, {
257
471
  message: {
258
472
  type: "response",
259
473
  text: result
@@ -263,231 +477,31 @@ var MessageThread = /* @__PURE__ */ (0, import_react.forwardRef)(({ state, histo
263
477
  var MessageItem = ({ classNames, message }) => {
264
478
  const { type, text, data, error } = message;
265
479
  const wrapper = "p-1 px-2 rounded-lg bg-hoverSurface overflow-auto";
266
- return /* @__PURE__ */ import_react.default.createElement("div", {
480
+ return /* @__PURE__ */ import_react3.default.createElement("div", {
267
481
  className: (0, import_react_ui_theme.mx)("flex", type === "request" ? "ml-[1rem] justify-end" : "mr-[1rem]", classNames)
268
- }, error && /* @__PURE__ */ import_react.default.createElement("div", {
482
+ }, error && /* @__PURE__ */ import_react3.default.createElement("div", {
269
483
  className: (0, import_react_ui_theme.mx)(wrapper, "whitespace-pre", import_react_ui_theme.errorText)
270
- }, String(error)), text !== void 0 && /* @__PURE__ */ import_react.default.createElement("div", {
484
+ }, String(error)), text !== void 0 && /* @__PURE__ */ import_react3.default.createElement("div", {
271
485
  className: (0, import_react_ui_theme.mx)(wrapper, type === "request" && "bg-primary-400 dark:bg-primary-600")
272
- }, text || "\xD8"), data && /* @__PURE__ */ import_react.default.createElement(import_react_ui_syntax_highlighter.SyntaxHighlighter, {
486
+ }, text || "\xD8"), data && /* @__PURE__ */ import_react3.default.createElement(import_react_ui_syntax_highlighter.SyntaxHighlighter, {
273
487
  language: "json",
274
488
  className: (0, import_react_ui_theme.mx)(wrapper, "px-8 py-2 text-xs")
275
489
  }, JSON.stringify(data, null, 2)));
276
490
  };
277
- var RobotAvatar = () => /* @__PURE__ */ import_react.default.createElement(import_react_ui.Avatar.Root, {
491
+ var RobotAvatar = () => /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Avatar.Root, null, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Avatar.Content, {
278
492
  size: 6,
279
- variant: "circle"
280
- }, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Avatar.Frame, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Avatar.Icon, {
493
+ variant: "circle",
281
494
  icon: "ph--robot--regular"
282
- })));
283
- var ScriptSettings = ({ settings }) => {
284
- const { t } = (0, import_react_ui2.useTranslation)(import_chunk_2XX4L67K.SCRIPT_PLUGIN);
285
- const client = (0, import_react_client.useClient)();
286
- const handleAuthenticate = async () => {
287
- const { identityKey } = client.halo.identity.get();
288
- await client.halo.writeCredentials([
289
- {
290
- issuer: identityKey,
291
- issuanceDate: /* @__PURE__ */ new Date(),
292
- subject: {
293
- id: identityKey,
294
- assertion: {
295
- "@type": "dxos.halo.credentials.ServiceAccess",
296
- serverName: "hub.dxos.network",
297
- serverKey: identityKey,
298
- identityKey,
299
- capabilities: [
300
- "composer:beta"
301
- ]
302
- }
303
- }
304
- }
305
- ]);
306
- };
307
- return /* @__PURE__ */ import_react2.default.createElement(import_react_ui_form.DeprecatedFormContainer, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui_form.DeprecatedFormInput, {
308
- label: t("authenticate action label")
309
- }, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Button, {
310
- onClick: handleAuthenticate
311
- }, t("authenticate button label"))), /* @__PURE__ */ import_react2.default.createElement(import_react_ui_form.DeprecatedFormInput, {
312
- label: t("editor input mode label")
313
- }, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Root, {
314
- value: settings.editorInputMode ?? "default",
315
- onValueChange: (value) => {
316
- settings.editorInputMode = value;
317
- }
318
- }, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.TriggerButton, {
319
- placeholder: t("select editor input mode placeholder")
320
- }), /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Portal, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Content, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Viewport, null, import_react_ui_editor.EditorInputModes.map((mode) => /* @__PURE__ */ import_react2.default.createElement(import_react_ui2.Select.Option, {
321
- key: mode,
322
- value: mode
323
- }, t(`settings editor input mode ${mode} label`)))))))));
324
- };
325
- var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/components/ScriptSettingsPanel.tsx";
326
- var kebabize = (str) => str.replace(/[A-Z]+(?![a-z])|[A-Z]/g, ($, ofs) => (ofs ? "-" : "") + $.toLowerCase());
327
- var ScriptSettingsPanel = ({ script }) => {
328
- const { t } = (0, import_react_ui3.useTranslation)(import_chunk_2XX4L67K.SCRIPT_PLUGIN);
329
- const { dispatchPromise: dispatch } = (0, import_app_framework.useIntentDispatcher)();
330
- const client = (0, import_react_client2.useClient)();
331
- const space = (0, import_echo.getSpace)(script);
332
- const [fn] = (0, import_echo.useQuery)(space, import_echo.Filter.schema(import_types.FunctionType, {
333
- source: script
334
- }));
335
- const [githubToken] = (0, import_echo.useQuery)(space, import_echo.Filter.schema(import_schema.AccessTokenType, {
336
- source: "github.com"
337
- }));
338
- const gistKey = (0, import_echo.getMeta)(script).keys.find(({ source }) => source === "github.com");
339
- const [gistUrl, setGistUrl] = (0, import_react3.useState)();
340
- (0, import_react3.useEffect)(() => {
341
- const token = githubToken?.token;
342
- const gistId = gistKey?.id;
343
- if (!token || !gistId) {
344
- setGistUrl(void 0);
345
- return;
346
- }
347
- const timeout = setTimeout(async () => {
348
- try {
349
- const octokit = new import_core.Octokit({
350
- auth: githubToken.token
351
- });
352
- const response = await octokit.request("GET /gists/{gist_id}", {
353
- gist_id: gistId
354
- });
355
- setGistUrl(response.data.html_url);
356
- } catch (err) {
357
- import_log2.log.catch(err, void 0, {
358
- F: __dxlog_file2,
359
- L: 52,
360
- S: void 0,
361
- C: (f, a) => f(...a)
362
- });
363
- setGistUrl(void 0);
364
- }
365
- });
366
- return () => clearTimeout(timeout);
367
- }, [
368
- githubToken,
369
- gistKey
370
- ]);
371
- const [binding, setBinding] = (0, import_react_ui3.useControlledState)(fn?.binding ?? "");
372
- const handleBindingChange = (0, import_react3.useCallback)((event) => {
373
- setBinding(event.target.value);
374
- }, [
375
- setBinding
376
- ]);
377
- const handleBindingBlur = (0, import_react3.useCallback)(() => {
378
- fn.binding = binding;
379
- }, [
380
- fn,
381
- binding
382
- ]);
383
- const functionPath = fn && (0, import_types.getUserFunctionUrlInMetadata)((0, import_echo.getMeta)(fn));
384
- const functionUrl = functionPath && (0, import_types.getInvocationUrl)(functionPath, client.config.values.runtime?.services?.edge?.url ?? "", {
385
- spaceId: space?.id
386
- });
387
- const handleOpenTokenManager = (0, import_react3.useCallback)(() => dispatch((0, import_app_framework.createIntent)(import_app_framework.SettingsAction.Open, {
388
- plugin: "dxos.org/plugin/token-manager"
389
- })), []);
390
- const [publishing, setPublishing] = (0, import_react3.useState)(false);
391
- const handlePublish = (0, import_react3.useCallback)(async () => {
392
- setPublishing(true);
393
- const octokit = new import_core.Octokit({
394
- auth: githubToken.token
395
- });
396
- const source = await script.source.load();
397
- const filename = script.name ? kebabize(script.name) : "composer-script";
398
- const files = {
399
- [`${filename}.ts`]: {
400
- content: source.content
401
- }
402
- };
403
- try {
404
- const meta = (0, import_echo.getMeta)(script);
405
- const githubKey = meta.keys.find(({ source: source2 }) => source2 === "github.com");
406
- const gistId = githubKey?.id;
407
- if (gistId) {
408
- await octokit.request("PATCH /gists/{gist_id}", {
409
- gist_id: gistId,
410
- files
411
- });
412
- } else {
413
- const response = await octokit.request("POST /gists", {
414
- public: true,
415
- files
416
- });
417
- if (response.data.id) {
418
- meta.keys.push({
419
- source: "github.com",
420
- id: response.data.id
421
- });
422
- }
423
- }
424
- } finally {
425
- setPublishing(false);
426
- }
427
- }, [
428
- script,
429
- githubToken
430
- ]);
431
- return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, /* @__PURE__ */ import_react3.default.createElement("div", {
432
- role: "form",
433
- className: "flex flex-col w-full p-2 gap-4"
434
- }, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.Root, null, /* @__PURE__ */ import_react3.default.createElement("div", {
435
- role: "none",
436
- className: "flex flex-col gap-1"
437
- }, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.Label, null, t("description label")), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.TextInput, {
438
- placeholder: t("description placeholder"),
439
- value: script.description ?? "",
440
- onChange: (event) => {
441
- script.description = event.target.value;
442
- }
443
- })))), fn && functionUrl && /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Separator, null), /* @__PURE__ */ import_react3.default.createElement("div", {
444
- role: "form",
445
- className: "flex flex-col w-full p-2 gap-4"
446
- }, /* @__PURE__ */ import_react3.default.createElement("h2", null, t("remote function settings heading")), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.Root, null, /* @__PURE__ */ import_react3.default.createElement("div", {
447
- role: "none",
448
- className: "flex flex-col gap-1"
449
- }, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.Label, null, t("function url label")), /* @__PURE__ */ import_react3.default.createElement("div", {
450
- role: "none",
451
- className: "flex gap-1"
452
- }, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.TextInput, {
453
- disabled: true,
454
- value: functionUrl,
455
- onChange: (event) => {
456
- fn.name = event.target.value;
457
- }
458
- }), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Clipboard.IconButton, {
459
- value: functionUrl
460
- })))), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.Root, null, /* @__PURE__ */ import_react3.default.createElement("div", {
461
- role: "none",
462
- className: "flex flex-col gap-1"
463
- }, /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.Label, null, t("function binding label")), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Input.TextInput, {
464
- placeholder: t("function binding placeholder"),
465
- value: binding,
466
- onChange: handleBindingChange,
467
- onBlur: handleBindingBlur
468
- }))))), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Separator, null), /* @__PURE__ */ import_react3.default.createElement("div", {
469
- className: "flex flex-col w-full p-2 gap-4"
470
- }, /* @__PURE__ */ import_react3.default.createElement("div", null, /* @__PURE__ */ import_react3.default.createElement("h2", null, t("script publish settings label")), /* @__PURE__ */ import_react3.default.createElement("p", {
471
- className: "text-description text-sm"
472
- }, t("script publish settings description"))), !githubToken && /* @__PURE__ */ import_react3.default.createElement("div", {
473
- className: "flex flex-col items-center justify-center gap-2"
474
- }, /* @__PURE__ */ import_react3.default.createElement("span", null, t("no github token label")), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Button, {
475
- onClick: handleOpenTokenManager
476
- }, t("open token manager label"))), githubToken && /* @__PURE__ */ import_react3.default.createElement("div", {
477
- className: "flex justify-end gap-2"
478
- }, gistUrl && /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Clipboard.IconButton, {
479
- value: gistUrl
480
- }), /* @__PURE__ */ import_react3.default.createElement(import_react_ui3.Button, {
481
- disabled: publishing,
482
- onClick: handlePublish
483
- }, t(publishing ? "publishing label" : "publish label")))));
484
- };
485
- var ScriptContainer = (0, import_react4.lazy)(() => import("./ScriptContainer-DM4WSS4Y.cjs"));
495
+ }));
496
+ var ScriptContainer = (0, import_react4.lazy)(() => import("./ScriptContainer-5KY6ZOQD.cjs"));
497
+ var DeploymentDialog = (0, import_react4.lazy)(() => import("./DeploymentDialog-O4MU4OMF.cjs"));
486
498
  // Annotate the CommonJS export names for ESM import in node:
487
499
  0 && (module.exports = {
488
- DebugPanel,
500
+ DeploymentDialog,
489
501
  ScriptContainer,
490
- ScriptSettings,
491
- ScriptSettingsPanel
502
+ ScriptObjectSettings,
503
+ ScriptPluginSettings,
504
+ ScriptProperties,
505
+ TestPanel
492
506
  });
493
- //# sourceMappingURL=chunk-VLQUYHPB.cjs.map
507
+ //# sourceMappingURL=chunk-SLDJM45C.cjs.map