@dxos/plugin-script 0.8.1-staging.5be625a → 0.8.1-staging.97aedb1

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
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Octokit } from '@octokit/core';\n\nimport { contributes, Capabilities, createResolver } from '@dxos/app-framework';\nimport { ScriptType } from '@dxos/functions/types';\nimport { create, makeRef } from '@dxos/live-object';\nimport { TextType } from '@dxos/schema';\n\nimport { templates } from '../templates';\nimport { ScriptAction } from '../types';\n\nexport default () =>\n contributes(\n Capabilities.IntentResolver,\n createResolver({\n intent: ScriptAction.Create,\n resolve: async ({ name, gistUrl }) => {\n let content = templates[0].source;\n const gistId = gistUrl?.split('/').at(-1);\n if (gistId) {\n // TODO(wittjosiah): Capability which contributes Octokit?\n // NOTE: AccessToken not needed to read public gists.\n const octokit = new Octokit();\n const response = await octokit.request('GET /gists/{gist_id}', {\n gist_id: gistId,\n });\n const gistContent = Object.values(response.data.files ?? {})[0]?.content;\n if (gistContent) {\n content = gistContent;\n }\n }\n\n return {\n data: {\n object: create(ScriptType, {\n name,\n source: makeRef(create(TextType, { content })),\n }),\n },\n };\n },\n }),\n );\n"],
5
- "mappings": ";;;;;;;;;;AAIA,SAASA,eAAe;AAExB,SAASC,aAAaC,cAAcC,sBAAsB;AAC1D,SAASC,kBAAkB;AAC3B,SAASC,QAAQC,eAAe;AAChC,SAASC,gBAAgB;AAKzB,IAAA,0BAAe,MACbC,YACEC,aAAaC,gBACbC,eAAe;EACbC,QAAQC,aAAaC;EACrBC,SAAS,OAAO,EAAEC,MAAMC,QAAO,MAAE;AAC/B,QAAIC,UAAUC,UAAU,CAAA,EAAGC;AAC3B,UAAMC,SAASJ,SAASK,MAAM,GAAA,EAAKC,GAAG,EAAC;AACvC,QAAIF,QAAQ;AAGV,YAAMG,UAAU,IAAIC,QAAAA;AACpB,YAAMC,WAAW,MAAMF,QAAQG,QAAQ,wBAAwB;QAC7DC,SAASP;MACX,CAAA;AACA,YAAMQ,cAAcC,OAAOC,OAAOL,SAASM,KAAKC,SAAS,CAAC,CAAA,EAAG,CAAA,GAAIf;AACjE,UAAIW,aAAa;AACfX,kBAAUW;MACZ;IACF;AAEA,WAAO;MACLG,MAAM;QACJE,QAAQC,OAAOC,YAAY;UACzBpB;UACAI,QAAQiB,QAAQF,OAAOG,UAAU;YAAEpB;UAAQ,CAAA,CAAA;QAC7C,CAAA;MACF;IACF;EACF;AACF,CAAA,CAAA;",
6
- "names": ["Octokit", "contributes", "Capabilities", "createResolver", "ScriptType", "create", "makeRef", "TextType", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "ScriptAction", "Create", "resolve", "name", "gistUrl", "content", "templates", "source", "gistId", "split", "at", "octokit", "Octokit", "response", "request", "gist_id", "gistContent", "Object", "values", "data", "files", "object", "create", "ScriptType", "makeRef", "TextType"]
7
- }
@@ -1,80 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- DebugPanel,
4
- ScriptContainer,
5
- ScriptSettings,
6
- ScriptSettingsPanel
7
- } from "./chunk-BIFA5BEB.mjs";
8
- import {
9
- ScriptCapabilities
10
- } from "./chunk-MFXRE7ZD.mjs";
11
- import {
12
- useDeployState,
13
- useToolbarState
14
- } from "./chunk-F2O475DQ.mjs";
15
- import "./chunk-4YUSGXJ2.mjs";
16
- import {
17
- SCRIPT_PLUGIN
18
- } from "./chunk-5S2KBIMH.mjs";
19
-
20
- // packages/plugins/experimental/plugin-script/src/capabilities/react-surface.tsx
21
- import React from "react";
22
- import { Capabilities, contributes, createSurface, useCapability } from "@dxos/app-framework";
23
- import { isInstanceOf } from "@dxos/echo-schema";
24
- import { ScriptType } from "@dxos/functions/types";
25
- import { SettingsStore } from "@dxos/local-storage";
26
- import { Clipboard } from "@dxos/react-ui";
27
- var react_surface_default = () => contributes(Capabilities.ReactSurface, [
28
- createSurface({
29
- id: `${SCRIPT_PLUGIN}/settings`,
30
- role: "article",
31
- filter: (data) => data.subject instanceof SettingsStore && data.subject.prefix === SCRIPT_PLUGIN,
32
- component: ({ data: { subject } }) => /* @__PURE__ */ React.createElement(ScriptSettings, {
33
- settings: subject.value
34
- })
35
- }),
36
- createSurface({
37
- id: `${SCRIPT_PLUGIN}/article`,
38
- role: "article",
39
- filter: (data) => isInstanceOf(ScriptType, data.subject),
40
- component: ({ data, role }) => {
41
- const compiler = useCapability(ScriptCapabilities.Compiler);
42
- const settings = useCapability(Capabilities.SettingsStore).getStore(SCRIPT_PLUGIN)?.value;
43
- return /* @__PURE__ */ React.createElement(ScriptContainer, {
44
- role,
45
- script: data.subject,
46
- variant: data.variant,
47
- settings,
48
- env: compiler.environment
49
- });
50
- }
51
- }),
52
- createSurface({
53
- id: `${SCRIPT_PLUGIN}/automation`,
54
- role: "complementary--function",
55
- position: "hoist",
56
- filter: (data) => isInstanceOf(ScriptType, data.subject),
57
- component: ({ data }) => {
58
- const state = useToolbarState();
59
- useDeployState({
60
- state,
61
- script: data.subject
62
- });
63
- return /* @__PURE__ */ React.createElement(DebugPanel, {
64
- functionUrl: state.functionUrl
65
- });
66
- }
67
- }),
68
- createSurface({
69
- id: `${SCRIPT_PLUGIN}/settings-panel`,
70
- role: "complementary--settings",
71
- filter: (data) => isInstanceOf(ScriptType, data.subject),
72
- component: ({ data }) => /* @__PURE__ */ React.createElement(Clipboard.Provider, null, /* @__PURE__ */ React.createElement(ScriptSettingsPanel, {
73
- script: data.subject
74
- }))
75
- })
76
- ]);
77
- export {
78
- react_surface_default as default
79
- };
80
- //# sourceMappingURL=react-surface-EXSKKZNP.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/react-surface.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, createSurface, useCapability } from '@dxos/app-framework';\nimport { isInstanceOf } from '@dxos/echo-schema';\nimport { ScriptType } from '@dxos/functions/types';\nimport { SettingsStore } from '@dxos/local-storage';\nimport { Clipboard } from '@dxos/react-ui';\n\nimport { ScriptCapabilities } from './capabilities';\nimport { DebugPanel, ScriptSettings, ScriptContainer, ScriptSettingsPanel } from '../components';\nimport { useDeployState, useToolbarState } from '../hooks';\nimport { SCRIPT_PLUGIN } from '../meta';\nimport { type ScriptSettingsProps } from '../types';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${SCRIPT_PLUGIN}/settings`,\n role: 'article',\n filter: (data): data is { subject: SettingsStore<ScriptSettingsProps> } =>\n data.subject instanceof SettingsStore && data.subject.prefix === SCRIPT_PLUGIN,\n component: ({ data: { subject } }) => <ScriptSettings settings={subject.value} />,\n }),\n createSurface({\n id: `${SCRIPT_PLUGIN}/article`,\n role: 'article',\n filter: (data): data is { subject: ScriptType; variant: 'logs' | undefined } =>\n isInstanceOf(ScriptType, data.subject),\n component: ({ data, role }) => {\n const compiler = useCapability(ScriptCapabilities.Compiler);\n // TODO(dmaretskyi): Since settings store is not reactive, this would break on the script plugin being enabled without a page reload.\n const settings = useCapability(Capabilities.SettingsStore).getStore<ScriptSettingsProps>(SCRIPT_PLUGIN)?.value;\n return (\n <ScriptContainer\n role={role}\n script={data.subject}\n variant={data.variant}\n settings={settings}\n env={compiler.environment}\n />\n );\n },\n }),\n createSurface({\n id: `${SCRIPT_PLUGIN}/automation`,\n role: 'complementary--function',\n position: 'hoist',\n filter: (data): data is { subject: ScriptType } => isInstanceOf(ScriptType, data.subject),\n component: ({ data }) => {\n // TODO(wittjosiah): Decouple hooks from toolbar state.\n const state = useToolbarState();\n useDeployState({ state, script: data.subject });\n return <DebugPanel functionUrl={state.functionUrl} />;\n },\n }),\n createSurface({\n id: `${SCRIPT_PLUGIN}/settings-panel`,\n role: 'complementary--settings',\n filter: (data): data is { subject: ScriptType } => isInstanceOf(ScriptType, data.subject),\n component: ({ data }) => (\n <Clipboard.Provider>\n <ScriptSettingsPanel script={data.subject} />\n </Clipboard.Provider>\n ),\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,aAAaC,eAAeC,qBAAqB;AACxE,SAASC,oBAAoB;AAC7B,SAASC,kBAAkB;AAC3B,SAASC,qBAAqB;AAC9B,SAASC,iBAAiB;AAQ1B,IAAA,wBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SACPA,KAAKC,mBAAmBC,iBAAiBF,KAAKC,QAAQE,WAAWN;IACnEO,WAAW,CAAC,EAAEJ,MAAM,EAAEC,QAAO,EAAE,MAAO,sBAAA,cAACI,gBAAAA;MAAeC,UAAUL,QAAQM;;EAC1E,CAAA;EACAZ,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SACPQ,aAAaC,YAAYT,KAAKC,OAAO;IACvCG,WAAW,CAAC,EAAEJ,MAAMF,KAAI,MAAE;AACxB,YAAMY,WAAWC,cAAcC,mBAAmBC,QAAQ;AAE1D,YAAMP,WAAWK,cAAclB,aAAaS,aAAa,EAAEY,SAA8BjB,aAAAA,GAAgBU;AACzG,aACE,sBAAA,cAACQ,iBAAAA;QACCjB;QACAkB,QAAQhB,KAAKC;QACbgB,SAASjB,KAAKiB;QACdX;QACAY,KAAKR,SAASS;;IAGpB;EACF,CAAA;EACAxB,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNsB,UAAU;IACVrB,QAAQ,CAACC,SAA0CQ,aAAaC,YAAYT,KAAKC,OAAO;IACxFG,WAAW,CAAC,EAAEJ,KAAI,MAAE;AAElB,YAAMqB,QAAQC,gBAAAA;AACdC,qBAAe;QAAEF;QAAOL,QAAQhB,KAAKC;MAAQ,CAAA;AAC7C,aAAO,sBAAA,cAACuB,YAAAA;QAAWC,aAAaJ,MAAMI;;IACxC;EACF,CAAA;EACA9B,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SAA0CQ,aAAaC,YAAYT,KAAKC,OAAO;IACxFG,WAAW,CAAC,EAAEJ,KAAI,MAChB,sBAAA,cAAC0B,UAAUC,UAAQ,MACjB,sBAAA,cAACC,qBAAAA;MAAoBZ,QAAQhB,KAAKC;;EAGxC,CAAA;CACD;",
6
- "names": ["React", "Capabilities", "contributes", "createSurface", "useCapability", "isInstanceOf", "ScriptType", "SettingsStore", "Clipboard", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "SCRIPT_PLUGIN", "role", "filter", "data", "subject", "SettingsStore", "prefix", "component", "ScriptSettings", "settings", "value", "isInstanceOf", "ScriptType", "compiler", "useCapability", "ScriptCapabilities", "Compiler", "getStore", "ScriptContainer", "script", "variant", "env", "environment", "position", "state", "useToolbarState", "useDeployState", "DebugPanel", "functionUrl", "Clipboard", "Provider", "ScriptSettingsPanel"]
7
- }
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { type ThemedClassName } from '@dxos/react-ui';
3
- export type DebugPanelProps = ThemedClassName<{
4
- functionUrl?: string;
5
- }>;
6
- export declare const DebugPanel: ({ classNames, functionUrl }: DebugPanelProps) => React.JSX.Element;
7
- //# sourceMappingURL=DebugPanel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DebugPanel.d.ts","sourceRoot":"","sources":["../../../../../src/components/DebugPanel/DebugPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAGvE,OAAO,EAAuB,KAAK,eAAe,EAA2B,MAAM,gBAAgB,CAAC;AAapG,MAAM,MAAM,eAAe,GAAG,eAAe,CAAC;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC,CAAC;AAEH,eAAO,MAAM,UAAU,gCAAiC,eAAe,sBAgKtE,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './DebugPanel';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/DebugPanel/index.ts"],"names":[],"mappings":"AAIA,cAAc,cAAc,CAAC"}
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- import { type ScriptType } from '@dxos/functions/types';
3
- import { type ThemedClassName } from '@dxos/react-ui';
4
- export type LogsPanelProps = ThemedClassName<{
5
- script: ScriptType;
6
- }>;
7
- export declare const LogsPanel: ({ script, classNames }: LogsPanelProps) => React.JSX.Element;
8
- //# sourceMappingURL=LogsPanel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LogsPanel.d.ts","sourceRoot":"","sources":["../../../../../src/components/LogsPanel/LogsPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAG9D,OAAO,EAEL,KAAK,UAAU,EAIhB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAwC,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAM5F,MAAM,MAAM,cAAc,GAAG,eAAe,CAAC;IAC3C,MAAM,EAAE,UAAU,CAAC;CACpB,CAAC,CAAC;AAEH,eAAO,MAAM,SAAS,2BAA4B,cAAc,sBAoC/D,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './LogsPanel';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/LogsPanel/index.ts"],"names":[],"mappings":"AAIA,cAAc,aAAa,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScriptSettings.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScriptSettings/ScriptSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,eAAO,MAAM,cAAc,iBAAkB;IAAE,QAAQ,EAAE,mBAAmB,CAAA;CAAE,sBAuD7E,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './ScriptSettings';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScriptSettings/index.ts"],"names":[],"mappings":"AAIA,cAAc,kBAAkB,CAAC"}
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { type ScriptType } from '@dxos/functions/types';
3
- export type ScriptSettingsPanelProps = {
4
- script: ScriptType;
5
- };
6
- export declare const ScriptSettingsPanel: ({ script }: ScriptSettingsPanelProps) => React.JSX.Element;
7
- //# sourceMappingURL=ScriptSettingsPanel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScriptSettingsPanel.d.ts","sourceRoot":"","sources":["../../../../src/components/ScriptSettingsPanel.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA6D,MAAM,OAAO,CAAC;AAGlF,OAAO,EAAgB,KAAK,UAAU,EAAkD,MAAM,uBAAuB,CAAC;AAatH,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAAgB,wBAAwB,sBAkKvE,CAAC"}
@@ -1,21 +0,0 @@
1
- export type ViewType = 'logs';
2
- export type ViewState = {
3
- view: ViewType;
4
- };
5
- export type ViewActionProperties = {
6
- type: 'view';
7
- value: ViewType;
8
- };
9
- export declare const createView: (state: Partial<ViewState>) => {
10
- nodes: {
11
- id: string;
12
- type: string;
13
- properties: ViewActionProperties & import("@dxos/react-ui-menu").MenuActionProperties;
14
- data: () => void;
15
- }[];
16
- edges: {
17
- source: string;
18
- target: string;
19
- }[];
20
- };
21
- //# sourceMappingURL=view.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../src/hooks/view.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,QAAQ,GAA8B,MAAM,CAAC;AAEzD,MAAM,MAAM,SAAS,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAE3C,MAAM,MAAM,oBAAoB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,CAAC;AAmBrE,eAAO,MAAM,UAAU,UAAW,OAAO,CAAC,SAAS,CAAC;;;;;;;;;;;CAMnD,CAAC"}
@@ -1,5 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- export * from './DebugPanel';
@@ -1,116 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- import React, { useCallback, useMemo, useState } from 'react';
6
-
7
- import { decodeReference } from '@dxos/echo-protocol';
8
- import {
9
- type InvocationTraceEvent,
10
- type ScriptType,
11
- type TraceEvent,
12
- type InvocationSpan,
13
- createInvocationSpans,
14
- } from '@dxos/functions/types';
15
- import { useQueue } from '@dxos/react-client/echo';
16
- import { Icon, List, ListItem, useTranslation, type ThemedClassName } from '@dxos/react-ui';
17
- import { mx } from '@dxos/react-ui-theme';
18
-
19
- import { useDeployDeps } from '../../hooks';
20
- import { SCRIPT_PLUGIN } from '../../meta';
21
-
22
- export type LogsPanelProps = ThemedClassName<{
23
- script: ScriptType;
24
- }>;
25
-
26
- export const LogsPanel = ({ script, classNames }: LogsPanelProps) => {
27
- const { t } = useTranslation(SCRIPT_PLUGIN);
28
- // TODO(wittjosiah): Refactor these hooks.
29
- const { space, existingFunctionUrl } = useDeployDeps({ script });
30
- const invocationTraceQueue = useQueue<InvocationTraceEvent>(space?.properties.invocationTraceQueue?.dxn, {
31
- pollInterval: 500,
32
- });
33
- const invocationSpans = useMemo(
34
- () => createInvocationSpans(invocationTraceQueue?.items),
35
- [invocationTraceQueue?.items ?? []],
36
- );
37
- const [selected, setSelected] = useState<InvocationSpan>();
38
- const workerDxn = `dxn:worker:${existingFunctionUrl?.split('/').at(-1)}`;
39
-
40
- if (!invocationTraceQueue) {
41
- return <div>{t('no invocations message')}</div>;
42
- }
43
-
44
- const handleOpenChange = useCallback((trace: InvocationSpan, open: boolean) => {
45
- setSelected(open ? trace : undefined);
46
- }, []);
47
-
48
- return (
49
- <List classNames={mx('overflow-y-auto', classNames)}>
50
- {invocationSpans
51
- .filter((trace) => decodeReference(trace.invocationTarget).dxn?.toString() === workerDxn)
52
- .map((trace) => (
53
- <InvocationTraceItem
54
- key={trace.id}
55
- trace={trace}
56
- open={selected?.id === trace.id}
57
- setOpen={handleOpenChange}
58
- />
59
- ))}
60
- </List>
61
- );
62
- };
63
-
64
- const InvocationTraceItem = ({
65
- trace,
66
- open,
67
- setOpen,
68
- }: {
69
- trace: InvocationSpan;
70
- open?: boolean;
71
- setOpen?: (trace: InvocationSpan, open: boolean) => void;
72
- }) => {
73
- const eventQueue = useQueue<TraceEvent>(open ? decodeReference(trace.invocationTraceQueue).dxn : undefined);
74
-
75
- const handleOpenChange = useCallback(
76
- (open: boolean) => {
77
- setOpen?.(trace, open);
78
- },
79
- [trace, setOpen],
80
- );
81
-
82
- const logs = useMemo(() => eventQueue?.items.flatMap((event) => event.logs), [eventQueue?.items]);
83
- const heading =
84
- 'bodyText' in trace.input && typeof trace.input.bodyText === 'string'
85
- ? trace.input.bodyText
86
- : JSON.stringify(trace.input);
87
-
88
- return (
89
- <ListItem.Root key={trace.id} collapsible open={open} onOpenChange={handleOpenChange}>
90
- <div className='flex items-center gap-2'>
91
- <ListItem.OpenTrigger />
92
- <ListItem.Endcap classNames='flex items-center justify-center'>
93
- <Icon icon={trace.outcome === 'success' ? 'ph--check--regular' : 'ph--x--regular'} size={5} />
94
- </ListItem.Endcap>
95
- <ListItem.Heading classNames='flex-1 flex items-center gap-2 truncate'>
96
- <span>{new Date(trace.timestampMs).toLocaleString()}</span>
97
- <span>{heading}</span>
98
- </ListItem.Heading>
99
- </div>
100
- {logs && (
101
- <ListItem.CollapsibleContent>
102
- <div className='flex items-center gap-2'>
103
- <span>Duration:</span>
104
- <span>{trace.durationMs}ms</span>
105
- </div>
106
- <pre>
107
- <div>{JSON.stringify(trace.input, null, 2)}</div>
108
- {logs.map((log, index) => {
109
- return <div key={index}>{JSON.stringify(log, null, 2)}</div>;
110
- })}
111
- </pre>
112
- </ListItem.CollapsibleContent>
113
- )}
114
- </ListItem.Root>
115
- );
116
- };
@@ -1,5 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- export * from './ScriptSettings';
package/src/hooks/view.ts DELETED
@@ -1,38 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { createMenuAction } from '@dxos/react-ui-menu';
6
-
7
- import { SCRIPT_PLUGIN } from '../meta';
8
-
9
- export type ViewType = /* 'editor' | 'split' | */ 'logs';
10
-
11
- export type ViewState = { view: ViewType };
12
-
13
- export type ViewActionProperties = { type: 'view'; value: ViewType };
14
-
15
- const views: Record<ViewType, string> = {
16
- // editor: 'ph--code--regular',
17
- // split: 'ph--square-split-vertical--regular',
18
- logs: 'ph--clock-counter-clockwise--regular',
19
- };
20
-
21
- const createViewActions = (state: Partial<ViewState>) => {
22
- return Object.entries(views).map(([viewType, icon]) => {
23
- return createMenuAction<ViewActionProperties>(`view--${viewType}`, {
24
- type: 'view',
25
- value: viewType as ViewType,
26
- label: [`view ${viewType} label`, { ns: SCRIPT_PLUGIN }],
27
- icon,
28
- });
29
- });
30
- };
31
-
32
- export const createView = (state: Partial<ViewState>) => {
33
- const viewActions = createViewActions(state);
34
- return {
35
- nodes: viewActions,
36
- edges: viewActions.map((action) => ({ source: 'root', target: action.id })),
37
- };
38
- };