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

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 (346) hide show
  1. package/dist/lib/browser/DeploymentDialog-XUAFCNI7.mjs +14 -0
  2. package/dist/lib/browser/{NotebookContainer-GL2Z5I5Q.mjs → NotebookContainer-UQ4I24R6.mjs} +266 -238
  3. package/dist/lib/browser/NotebookContainer-UQ4I24R6.mjs.map +7 -0
  4. package/dist/lib/browser/ScriptContainer-NB76645V.mjs +149 -0
  5. package/dist/lib/browser/ScriptContainer-NB76645V.mjs.map +7 -0
  6. package/dist/lib/browser/app-graph-builder-66ZDI72K.mjs +69 -0
  7. package/dist/lib/browser/app-graph-builder-66ZDI72K.mjs.map +7 -0
  8. package/dist/lib/browser/blueprint-definition-5RFKE7VK.mjs +18 -0
  9. package/dist/lib/browser/blueprint-definition-5RFKE7VK.mjs.map +7 -0
  10. package/dist/lib/browser/blueprints/index.mjs +8 -0
  11. package/dist/lib/browser/chunk-3BSF5BIA.mjs +113 -0
  12. package/dist/lib/browser/chunk-3BSF5BIA.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-S22N3BUR.mjs → chunk-4N5TLXEJ.mjs} +26 -9
  14. package/dist/lib/browser/chunk-4N5TLXEJ.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-BKGEAUUH.mjs +270 -0
  16. package/dist/lib/browser/chunk-BKGEAUUH.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-BU6CGVU2.mjs +137 -0
  18. package/dist/lib/browser/chunk-BU6CGVU2.mjs.map +7 -0
  19. package/dist/lib/browser/chunk-F3QKSKSF.mjs +35 -0
  20. package/dist/lib/browser/chunk-F3QKSKSF.mjs.map +7 -0
  21. package/dist/lib/browser/chunk-I7CSE6T3.mjs +110 -0
  22. package/dist/lib/browser/chunk-I7CSE6T3.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-LYMPME7J.mjs +609 -0
  24. package/dist/lib/browser/chunk-LYMPME7J.mjs.map +7 -0
  25. package/dist/lib/browser/{chunk-UGDRMROB.mjs → chunk-WWCDIB6Z.mjs} +160 -145
  26. package/dist/lib/browser/chunk-WWCDIB6Z.mjs.map +7 -0
  27. package/dist/lib/browser/{chunk-EB6AXFXO.mjs → chunk-WYR4QHPE.mjs} +1 -1
  28. package/dist/lib/browser/chunk-WYR4QHPE.mjs.map +7 -0
  29. package/dist/lib/browser/{compiler-2HV5KXV4.mjs → compiler-VPUVTFQD.mjs} +40 -22
  30. package/dist/lib/browser/compiler-VPUVTFQD.mjs.map +7 -0
  31. package/dist/lib/browser/index.mjs +93 -103
  32. package/dist/lib/browser/index.mjs.map +4 -4
  33. package/dist/lib/browser/meta.json +1 -1
  34. package/dist/lib/browser/operation-resolver-NYDY7GDT.mjs +83 -0
  35. package/dist/lib/browser/operation-resolver-NYDY7GDT.mjs.map +7 -0
  36. package/dist/lib/browser/{react-surface-ASV2KBRA.mjs → react-surface-FYOQSC6S.mjs} +48 -36
  37. package/dist/lib/browser/react-surface-FYOQSC6S.mjs.map +7 -0
  38. package/dist/lib/browser/settings-5SF77MRH.mjs +36 -0
  39. package/dist/lib/browser/settings-5SF77MRH.mjs.map +7 -0
  40. package/dist/lib/browser/templates/index.mjs +1 -1
  41. package/dist/lib/browser/types/index.mjs +9 -5
  42. package/dist/lib/node-esm/{DeploymentDialog-5EN2KZE5.mjs → DeploymentDialog-GGWDQMEB.mjs} +6 -7
  43. package/dist/lib/node-esm/DeploymentDialog-GGWDQMEB.mjs.map +7 -0
  44. package/dist/lib/node-esm/{NotebookContainer-7RCEXND7.mjs → NotebookContainer-DQGZ6QHI.mjs} +266 -238
  45. package/dist/lib/node-esm/NotebookContainer-DQGZ6QHI.mjs.map +7 -0
  46. package/dist/lib/node-esm/ScriptContainer-PCNJFUWX.mjs +150 -0
  47. package/dist/lib/node-esm/ScriptContainer-PCNJFUWX.mjs.map +7 -0
  48. package/dist/lib/node-esm/app-graph-builder-IGAZTJ45.mjs +70 -0
  49. package/dist/lib/node-esm/app-graph-builder-IGAZTJ45.mjs.map +7 -0
  50. package/dist/lib/node-esm/blueprint-definition-EYL5GNDC.mjs +19 -0
  51. package/dist/lib/node-esm/blueprint-definition-EYL5GNDC.mjs.map +7 -0
  52. package/dist/lib/node-esm/blueprints/index.mjs +9 -0
  53. package/dist/lib/node-esm/blueprints/index.mjs.map +7 -0
  54. package/dist/lib/node-esm/chunk-3CKQUF55.mjs +610 -0
  55. package/dist/lib/node-esm/chunk-3CKQUF55.mjs.map +7 -0
  56. package/dist/lib/node-esm/chunk-3QBXN6QC.mjs +271 -0
  57. package/dist/lib/node-esm/chunk-3QBXN6QC.mjs.map +7 -0
  58. package/dist/lib/node-esm/{chunk-IBV2DR36.mjs → chunk-5HSJPAK7.mjs} +1 -1
  59. package/dist/lib/node-esm/chunk-5HSJPAK7.mjs.map +7 -0
  60. package/dist/lib/node-esm/{chunk-4VVV5L5A.mjs → chunk-ECRSTVR6.mjs} +160 -145
  61. package/dist/lib/node-esm/chunk-ECRSTVR6.mjs.map +7 -0
  62. package/dist/lib/node-esm/chunk-KRVL7UYI.mjs +114 -0
  63. package/dist/lib/node-esm/chunk-KRVL7UYI.mjs.map +7 -0
  64. package/dist/lib/node-esm/chunk-SLU3KRV3.mjs +112 -0
  65. package/dist/lib/node-esm/chunk-SLU3KRV3.mjs.map +7 -0
  66. package/dist/lib/node-esm/chunk-U6PXM2HT.mjs +138 -0
  67. package/dist/lib/node-esm/chunk-U6PXM2HT.mjs.map +7 -0
  68. package/dist/lib/node-esm/{chunk-2S43VHAM.mjs → chunk-V37R7KB5.mjs} +26 -9
  69. package/dist/lib/node-esm/chunk-V37R7KB5.mjs.map +7 -0
  70. package/dist/lib/node-esm/chunk-Y3G5NCTP.mjs +36 -0
  71. package/dist/lib/node-esm/chunk-Y3G5NCTP.mjs.map +7 -0
  72. package/dist/lib/node-esm/{compiler-KPEZKEHC.mjs → compiler-WUOSY6MS.mjs} +40 -22
  73. package/dist/lib/node-esm/compiler-WUOSY6MS.mjs.map +7 -0
  74. package/dist/lib/node-esm/index.mjs +93 -103
  75. package/dist/lib/node-esm/index.mjs.map +4 -4
  76. package/dist/lib/node-esm/meta.json +1 -1
  77. package/dist/lib/node-esm/operation-resolver-AJNJXGCE.mjs +84 -0
  78. package/dist/lib/node-esm/operation-resolver-AJNJXGCE.mjs.map +7 -0
  79. package/dist/lib/node-esm/{react-surface-NXBO7VYB.mjs → react-surface-LREMOVNJ.mjs} +48 -36
  80. package/dist/lib/node-esm/react-surface-LREMOVNJ.mjs.map +7 -0
  81. package/dist/lib/node-esm/settings-ILI762CY.mjs +37 -0
  82. package/dist/lib/node-esm/settings-ILI762CY.mjs.map +7 -0
  83. package/dist/lib/node-esm/templates/index.mjs +1 -1
  84. package/dist/lib/node-esm/types/index.mjs +9 -5
  85. package/dist/types/src/ScriptPlugin.d.ts +2 -1
  86. package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
  87. package/dist/types/src/blueprints/index.d.ts +2 -0
  88. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  89. package/dist/types/src/blueprints/script-blueprint.d.ts +22 -0
  90. package/dist/types/src/blueprints/script-blueprint.d.ts.map +1 -0
  91. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
  92. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
  93. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
  94. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
  95. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts +12 -0
  96. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +1 -0
  97. package/dist/types/src/capabilities/artifact-definition/index.d.ts +3 -0
  98. package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +1 -0
  99. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +10 -0
  100. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
  101. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +3 -0
  102. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
  103. package/dist/types/src/capabilities/compiler/compiler.d.ts +6 -0
  104. package/dist/types/src/capabilities/compiler/compiler.d.ts.map +1 -0
  105. package/dist/types/src/capabilities/compiler/index.d.ts +3 -0
  106. package/dist/types/src/capabilities/compiler/index.d.ts.map +1 -0
  107. package/dist/types/src/capabilities/index.d.ts +6 -7
  108. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  109. package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
  110. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
  111. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
  112. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
  113. package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
  114. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  115. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
  116. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  117. package/dist/types/src/capabilities/settings/index.d.ts +7 -0
  118. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
  119. package/dist/types/src/capabilities/settings/settings.d.ts +10 -0
  120. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
  121. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts.map +1 -1
  122. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts +1 -3
  123. package/dist/types/src/components/DeploymentDialog/DeploymentDialog.stories.d.ts.map +1 -1
  124. package/dist/types/src/components/NotebookContainer.d.ts +3 -5
  125. package/dist/types/src/components/NotebookContainer.d.ts.map +1 -1
  126. package/dist/types/src/components/NotebookContainer.stories.d.ts +3 -250
  127. package/dist/types/src/components/NotebookContainer.stories.d.ts.map +1 -1
  128. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts +3 -3
  129. package/dist/types/src/components/NotebookStack/NotebookCell.d.ts.map +1 -1
  130. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts +1 -1
  131. package/dist/types/src/components/NotebookStack/NotebookStack.d.ts.map +1 -1
  132. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts +2 -1
  133. package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts.map +1 -1
  134. package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts.map +1 -1
  135. package/dist/types/src/components/ScriptContainer.d.ts +4 -5
  136. package/dist/types/src/components/ScriptContainer.d.ts.map +1 -1
  137. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +2 -2
  138. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  139. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts +2 -1
  140. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts.map +1 -1
  141. package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts.map +1 -1
  142. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts +4 -2
  143. package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts.map +1 -1
  144. package/dist/types/src/components/TestPanel/TestContainer.d.ts +1 -1
  145. package/dist/types/src/components/TestPanel/TestContainer.d.ts.map +1 -1
  146. package/dist/types/src/components/TestPanel/TestPanel.d.ts.map +1 -1
  147. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts +3 -2
  148. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts.map +1 -1
  149. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts +1 -1
  150. package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts.map +1 -1
  151. package/dist/types/src/components/index.d.ts +2 -2
  152. package/dist/types/src/components/index.d.ts.map +1 -1
  153. package/dist/types/src/e2e/ai.test.d.ts +2 -0
  154. package/dist/types/src/e2e/ai.test.d.ts.map +1 -0
  155. package/dist/types/src/hooks/deploy.d.ts +7 -6
  156. package/dist/types/src/hooks/deploy.d.ts.map +1 -1
  157. package/dist/types/src/hooks/format.d.ts +2 -2
  158. package/dist/types/src/hooks/format.d.ts.map +1 -1
  159. package/dist/types/src/hooks/template.d.ts +2 -2
  160. package/dist/types/src/hooks/template.d.ts.map +1 -1
  161. package/dist/types/src/hooks/useCompiler.d.ts.map +1 -1
  162. package/dist/types/src/hooks/useCreateAndDeployScriptTemplates.d.ts.map +1 -1
  163. package/dist/types/src/hooks/useToolbarState.d.ts +8 -1
  164. package/dist/types/src/hooks/useToolbarState.d.ts.map +1 -1
  165. package/dist/types/src/index.d.ts +1 -1
  166. package/dist/types/src/index.d.ts.map +1 -1
  167. package/dist/types/src/meta.d.ts +2 -2
  168. package/dist/types/src/meta.d.ts.map +1 -1
  169. package/dist/types/src/notebook/compute-graph.d.ts +24 -11
  170. package/dist/types/src/notebook/compute-graph.d.ts.map +1 -1
  171. package/dist/types/src/templates/anthropic.d.ts +8 -0
  172. package/dist/types/src/templates/anthropic.d.ts.map +1 -0
  173. package/dist/types/src/templates/chess-bot.d.ts +16 -0
  174. package/dist/types/src/templates/chess-bot.d.ts.map +1 -0
  175. package/dist/types/src/templates/commentary.d.ts +16 -0
  176. package/dist/types/src/templates/commentary.d.ts.map +1 -0
  177. package/dist/types/src/templates/index.d.ts +12 -3
  178. package/dist/types/src/templates/index.d.ts.map +1 -1
  179. package/dist/types/src/templates/ping.d.ts +1 -4
  180. package/dist/types/src/templates/ping.d.ts.map +1 -1
  181. package/dist/types/src/types/Notebook.d.ts +88 -19
  182. package/dist/types/src/types/Notebook.d.ts.map +1 -1
  183. package/dist/types/src/types/actions.d.ts +30 -44
  184. package/dist/types/src/types/actions.d.ts.map +1 -1
  185. package/dist/types/src/types/capabilities.d.ts +12 -0
  186. package/dist/types/src/types/capabilities.d.ts.map +1 -0
  187. package/dist/types/src/types/events.d.ts +5 -0
  188. package/dist/types/src/types/events.d.ts.map +1 -0
  189. package/dist/types/src/types/index.d.ts +2 -0
  190. package/dist/types/src/types/index.d.ts.map +1 -1
  191. package/dist/types/src/util/deploy.d.ts.map +1 -1
  192. package/dist/types/src/util/functions.d.ts.map +1 -1
  193. package/dist/types/tsconfig.tsbuildinfo +1 -1
  194. package/package.json +113 -90
  195. package/src/ScriptPlugin.tsx +38 -61
  196. package/src/blueprints/index.ts +5 -0
  197. package/src/blueprints/script-blueprint.ts +24 -0
  198. package/src/capabilities/app-graph-builder/app-graph-builder.ts +56 -0
  199. package/src/capabilities/app-graph-builder/index.ts +7 -0
  200. package/src/capabilities/{artifact-definition.ts → artifact-definition/artifact-definition.ts} +88 -85
  201. package/src/capabilities/artifact-definition/index.ts +7 -0
  202. package/src/capabilities/blueprint-definition/blueprint-definition.ts +24 -0
  203. package/src/capabilities/blueprint-definition/index.ts +7 -0
  204. package/src/capabilities/compiler/compiler.ts +103 -0
  205. package/src/capabilities/compiler/index.ts +7 -0
  206. package/src/capabilities/index.ts +6 -10
  207. package/src/capabilities/operation-resolver/index.ts +7 -0
  208. package/src/capabilities/operation-resolver/operation-resolver.ts +75 -0
  209. package/src/capabilities/react-surface/index.ts +7 -0
  210. package/src/capabilities/react-surface/react-surface.tsx +119 -0
  211. package/src/capabilities/settings/index.ts +7 -0
  212. package/src/capabilities/settings/settings.ts +33 -0
  213. package/src/components/DeploymentDialog/DeploymentDialog.stories.tsx +28 -24
  214. package/src/components/DeploymentDialog/DeploymentDialog.tsx +22 -42
  215. package/src/components/FrameContainer/FrameContainer.tsx +1 -1
  216. package/src/components/NotebookContainer.stories.tsx +24 -20
  217. package/src/components/NotebookContainer.tsx +49 -38
  218. package/src/components/NotebookStack/NotebookCell.tsx +18 -17
  219. package/src/components/NotebookStack/NotebookStack.stories.tsx +20 -19
  220. package/src/components/NotebookStack/NotebookStack.tsx +4 -4
  221. package/src/components/QueryEditor/QueryEditor.stories.tsx +18 -7
  222. package/src/components/ScriptContainer.tsx +46 -32
  223. package/src/components/ScriptToolbar/ScriptToolbar.stories.tsx +39 -16
  224. package/src/components/ScriptToolbar/ScriptToolbar.tsx +14 -17
  225. package/src/components/Settings/ScriptObjectSettings.tsx +40 -29
  226. package/src/components/Settings/ScriptPluginSettings.tsx +19 -14
  227. package/src/components/TestPanel/TestContainer.tsx +5 -5
  228. package/src/components/TestPanel/TestPanel.tsx +25 -23
  229. package/src/components/TypescriptEditor/TypescriptEditor.stories.tsx +12 -7
  230. package/src/components/TypescriptEditor/TypescriptEditor.tsx +69 -68
  231. package/src/e2e/ai.test.ts +92 -0
  232. package/src/hooks/deploy.ts +33 -26
  233. package/src/hooks/format.ts +5 -1
  234. package/src/hooks/template.ts +15 -9
  235. package/src/hooks/useCompiler.ts +5 -4
  236. package/src/hooks/useCreateAndDeployScriptTemplates.ts +13 -19
  237. package/src/hooks/useToolbarState.ts +29 -4
  238. package/src/index.ts +1 -1
  239. package/src/meta.ts +2 -2
  240. package/src/notebook/compute-graph.test.ts +20 -8
  241. package/src/notebook/compute-graph.ts +45 -21
  242. package/src/templates/anthropic.ts +42 -0
  243. package/src/templates/chess-bot.ts +58 -0
  244. package/src/templates/commentary.ts +230 -0
  245. package/src/templates/forex-effect.ts +1 -1
  246. package/src/templates/index.ts +18 -5
  247. package/src/templates/ping.ts +14 -5
  248. package/src/types/Notebook.ts +7 -8
  249. package/src/types/actions.ts +17 -25
  250. package/src/types/capabilities.ts +17 -0
  251. package/src/types/events.ts +11 -0
  252. package/src/types/index.ts +2 -0
  253. package/src/types/types.ts +1 -1
  254. package/src/util/deploy.ts +6 -2
  255. package/src/util/functions.ts +24 -22
  256. package/dist/lib/browser/DeploymentDialog-FIHD4UVK.mjs +0 -15
  257. package/dist/lib/browser/NotebookContainer-GL2Z5I5Q.mjs.map +0 -7
  258. package/dist/lib/browser/ScriptContainer-F4OK3OG6.mjs +0 -149
  259. package/dist/lib/browser/ScriptContainer-F4OK3OG6.mjs.map +0 -7
  260. package/dist/lib/browser/app-graph-builder-2WR2ATTJ.mjs +0 -66
  261. package/dist/lib/browser/app-graph-builder-2WR2ATTJ.mjs.map +0 -7
  262. package/dist/lib/browser/blueprint-definition-6PZWZM2Y.mjs +0 -30
  263. package/dist/lib/browser/blueprint-definition-6PZWZM2Y.mjs.map +0 -7
  264. package/dist/lib/browser/chunk-2SXDKBM7.mjs +0 -304
  265. package/dist/lib/browser/chunk-2SXDKBM7.mjs.map +0 -7
  266. package/dist/lib/browser/chunk-6X7QVTRB.mjs +0 -112
  267. package/dist/lib/browser/chunk-6X7QVTRB.mjs.map +0 -7
  268. package/dist/lib/browser/chunk-75RTLLH4.mjs +0 -155
  269. package/dist/lib/browser/chunk-75RTLLH4.mjs.map +0 -7
  270. package/dist/lib/browser/chunk-7WFISUBY.mjs +0 -647
  271. package/dist/lib/browser/chunk-7WFISUBY.mjs.map +0 -7
  272. package/dist/lib/browser/chunk-EB6AXFXO.mjs.map +0 -7
  273. package/dist/lib/browser/chunk-MQHBMJLH.mjs +0 -103
  274. package/dist/lib/browser/chunk-MQHBMJLH.mjs.map +0 -7
  275. package/dist/lib/browser/chunk-S22N3BUR.mjs.map +0 -7
  276. package/dist/lib/browser/chunk-UGDRMROB.mjs.map +0 -7
  277. package/dist/lib/browser/chunk-UOQ6NCH3.mjs +0 -15
  278. package/dist/lib/browser/chunk-UOQ6NCH3.mjs.map +0 -7
  279. package/dist/lib/browser/compiler-2HV5KXV4.mjs.map +0 -7
  280. package/dist/lib/browser/intent-resolver-3B4ESSCU.mjs +0 -105
  281. package/dist/lib/browser/intent-resolver-3B4ESSCU.mjs.map +0 -7
  282. package/dist/lib/browser/react-surface-ASV2KBRA.mjs.map +0 -7
  283. package/dist/lib/browser/settings-4NKLTJTT.mjs +0 -26
  284. package/dist/lib/browser/settings-4NKLTJTT.mjs.map +0 -7
  285. package/dist/lib/node-esm/NotebookContainer-7RCEXND7.mjs.map +0 -7
  286. package/dist/lib/node-esm/ScriptContainer-763IAKOD.mjs +0 -150
  287. package/dist/lib/node-esm/ScriptContainer-763IAKOD.mjs.map +0 -7
  288. package/dist/lib/node-esm/app-graph-builder-NCVLUL5R.mjs +0 -67
  289. package/dist/lib/node-esm/app-graph-builder-NCVLUL5R.mjs.map +0 -7
  290. package/dist/lib/node-esm/blueprint-definition-5R6YCSZZ.mjs +0 -31
  291. package/dist/lib/node-esm/blueprint-definition-5R6YCSZZ.mjs.map +0 -7
  292. package/dist/lib/node-esm/chunk-2S43VHAM.mjs.map +0 -7
  293. package/dist/lib/node-esm/chunk-32AMTGGN.mjs +0 -104
  294. package/dist/lib/node-esm/chunk-32AMTGGN.mjs.map +0 -7
  295. package/dist/lib/node-esm/chunk-4VVV5L5A.mjs.map +0 -7
  296. package/dist/lib/node-esm/chunk-535YDI5V.mjs +0 -156
  297. package/dist/lib/node-esm/chunk-535YDI5V.mjs.map +0 -7
  298. package/dist/lib/node-esm/chunk-55JZVM6K.mjs +0 -16
  299. package/dist/lib/node-esm/chunk-55JZVM6K.mjs.map +0 -7
  300. package/dist/lib/node-esm/chunk-6H4FYMCX.mjs +0 -114
  301. package/dist/lib/node-esm/chunk-6H4FYMCX.mjs.map +0 -7
  302. package/dist/lib/node-esm/chunk-DKS2EQW6.mjs +0 -648
  303. package/dist/lib/node-esm/chunk-DKS2EQW6.mjs.map +0 -7
  304. package/dist/lib/node-esm/chunk-IBV2DR36.mjs.map +0 -7
  305. package/dist/lib/node-esm/chunk-NQN3JE2R.mjs +0 -305
  306. package/dist/lib/node-esm/chunk-NQN3JE2R.mjs.map +0 -7
  307. package/dist/lib/node-esm/compiler-KPEZKEHC.mjs.map +0 -7
  308. package/dist/lib/node-esm/intent-resolver-GIACMXI4.mjs +0 -106
  309. package/dist/lib/node-esm/intent-resolver-GIACMXI4.mjs.map +0 -7
  310. package/dist/lib/node-esm/react-surface-NXBO7VYB.mjs.map +0 -7
  311. package/dist/lib/node-esm/settings-PW5NXWLW.mjs +0 -27
  312. package/dist/lib/node-esm/settings-PW5NXWLW.mjs.map +0 -7
  313. package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
  314. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
  315. package/dist/types/src/capabilities/artifact-definition.d.ts +0 -11
  316. package/dist/types/src/capabilities/artifact-definition.d.ts.map +0 -1
  317. package/dist/types/src/capabilities/blueprint-definition.d.ts +0 -5
  318. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +0 -1
  319. package/dist/types/src/capabilities/capabilities.d.ts +0 -5
  320. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  321. package/dist/types/src/capabilities/compiler.d.ts +0 -4
  322. package/dist/types/src/capabilities/compiler.d.ts.map +0 -1
  323. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  324. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  325. package/dist/types/src/capabilities/react-surface.d.ts +0 -4
  326. package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
  327. package/dist/types/src/capabilities/settings.d.ts +0 -4
  328. package/dist/types/src/capabilities/settings.d.ts.map +0 -1
  329. package/dist/types/src/events.d.ts +0 -4
  330. package/dist/types/src/events.d.ts.map +0 -1
  331. package/dist/types/src/templates/chess.d.ts +0 -8
  332. package/dist/types/src/templates/chess.d.ts.map +0 -1
  333. package/dist/types/src/testing/deploy.test.d.ts +0 -2
  334. package/dist/types/src/testing/deploy.test.d.ts.map +0 -1
  335. package/src/capabilities/app-graph-builder.ts +0 -65
  336. package/src/capabilities/blueprint-definition.ts +0 -30
  337. package/src/capabilities/capabilities.ts +0 -12
  338. package/src/capabilities/compiler.ts +0 -84
  339. package/src/capabilities/intent-resolver.ts +0 -86
  340. package/src/capabilities/react-surface.tsx +0 -102
  341. package/src/capabilities/settings.ts +0 -21
  342. package/src/events.ts +0 -11
  343. package/src/templates/chess.ts +0 -50
  344. package/src/testing/deploy.test.ts +0 -63
  345. /package/dist/lib/browser/{DeploymentDialog-FIHD4UVK.mjs.map → DeploymentDialog-XUAFCNI7.mjs.map} +0 -0
  346. /package/dist/lib/{node-esm/DeploymentDialog-5EN2KZE5.mjs.map → browser/blueprints/index.mjs.map} +0 -0
@@ -1,66 +0,0 @@
1
- import {
2
- meta
3
- } from "./chunk-EB6AXFXO.mjs";
4
- import "./chunk-J5LGTIGS.mjs";
5
-
6
- // src/capabilities/app-graph-builder.ts
7
- import { Atom } from "@effect-atom/atom-react";
8
- import * as Function from "effect/Function";
9
- import * as Option from "effect/Option";
10
- import { Capabilities, contributes } from "@dxos/app-framework";
11
- import { Obj } from "@dxos/echo";
12
- import { Script } from "@dxos/functions";
13
- import { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from "@dxos/plugin-deck/types";
14
- import { createExtension } from "@dxos/plugin-graph";
15
- var app_graph_builder_default = ((context) => contributes(Capabilities.AppGraphBuilder, [
16
- createExtension({
17
- id: `${meta.id}/execute`,
18
- connector: (node) => Atom.make((get) => Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(Script.Script, node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
19
- {
20
- id: [
21
- node2.id,
22
- "execute"
23
- ].join(ATTENDABLE_PATH_SEPARATOR),
24
- type: PLANK_COMPANION_TYPE,
25
- data: "execute",
26
- properties: {
27
- label: [
28
- "script test label",
29
- {
30
- ns: meta.id
31
- }
32
- ],
33
- icon: "ph--terminal--regular",
34
- disposition: "hidden"
35
- }
36
- }
37
- ]), Option.getOrElse(() => [])))
38
- }),
39
- createExtension({
40
- id: `${meta.id}/logs`,
41
- connector: (node) => Atom.make((get) => Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(Script.Script, node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
42
- {
43
- id: [
44
- node2.id,
45
- "logs"
46
- ].join(ATTENDABLE_PATH_SEPARATOR),
47
- type: PLANK_COMPANION_TYPE,
48
- data: "logs",
49
- properties: {
50
- label: [
51
- "script logs label",
52
- {
53
- ns: meta.id
54
- }
55
- ],
56
- icon: "ph--clock-countdown--regular",
57
- disposition: "hidden"
58
- }
59
- }
60
- ]), Option.getOrElse(() => [])))
61
- })
62
- ]));
63
- export {
64
- app_graph_builder_default as default
65
- };
66
- //# sourceMappingURL=app-graph-builder-2WR2ATTJ.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Atom } from '@effect-atom/atom-react';\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\n\nimport { Capabilities, type PluginContext, contributes } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { Script } from '@dxos/functions';\nimport { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { createExtension } from '@dxos/plugin-graph';\n\nimport { meta } from '../meta';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${meta.id}/execute`,\n connector: (node) =>\n Atom.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(Script.Script, node.data) ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: [node.id, 'execute'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'execute',\n properties: {\n label: ['script test label', { ns: meta.id }],\n icon: 'ph--terminal--regular',\n disposition: 'hidden',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n createExtension({\n id: `${meta.id}/logs`,\n connector: (node) =>\n Atom.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(Script.Script, node.data) ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: [node.id, 'logs'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'logs',\n properties: {\n label: ['script logs label', { ns: meta.id }],\n icon: 'ph--clock-countdown--regular',\n disposition: 'hidden',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n ]);\n"],
5
- "mappings": ";;;;;;AAIA,SAASA,YAAY;AACrB,YAAYC,cAAc;AAC1B,YAAYC,YAAY;AAExB,SAASC,cAAkCC,mBAAmB;AAC9D,SAASC,WAAW;AACpB,SAASC,cAAc;AACvB,SAASC,2BAA2BC,4BAA4B;AAChE,SAASC,uBAAuB;AAIhC,IAAA,6BAAe,CAACC,YACdC,YAAYC,aAAaC,iBAAiB;EACxCC,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,KAAKC,KAAK,CAACC,QACAC,cACPD,IAAIH,IAAAA,GACGK,eAAQ,CAACL,UAAUM,IAAIC,WAAWC,OAAOA,QAAQR,MAAKS,IAAI,IAAWC,YAAKV,KAAAA,IAAeW,YAAI,CAAA,GAC7FC,WAAI,CAACZ,UAAS;MACnB;QACEH,IAAI;UAACG,MAAKH;UAAI;UAAWgB,KAAKC,yBAAAA;QAC9BC,MAAMC;QACNP,MAAM;QACNQ,YAAY;UACVC,OAAO;YAAC;YAAqB;cAAEC,IAAIrB,KAAKD;YAAG;;UAC3CuB,MAAM;UACNC,aAAa;QACf;MACF;KACD,GACMC,iBAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EACA1B,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,KAAKC,KAAK,CAACC,QACAC,cACPD,IAAIH,IAAAA,GACGK,eAAQ,CAACL,UAAUM,IAAIC,WAAWC,OAAOA,QAAQR,MAAKS,IAAI,IAAWC,YAAKV,KAAAA,IAAeW,YAAI,CAAA,GAC7FC,WAAI,CAACZ,UAAS;MACnB;QACEH,IAAI;UAACG,MAAKH;UAAI;UAAQgB,KAAKC,yBAAAA;QAC3BC,MAAMC;QACNP,MAAM;QACNQ,YAAY;UACVC,OAAO;YAAC;YAAqB;cAAEC,IAAIrB,KAAKD;YAAG;;UAC3CuB,MAAM;UACNC,aAAa;QACf;MACF;KACD,GACMC,iBAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;CACD;",
6
- "names": ["Atom", "Function", "Option", "Capabilities", "contributes", "Obj", "Script", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "createExtension", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "meta", "connector", "node", "Atom", "make", "get", "pipe", "flatMap", "Obj", "instanceOf", "Script", "data", "some", "none", "map", "join", "ATTENDABLE_PATH_SEPARATOR", "type", "PLANK_COMPANION_TYPE", "properties", "label", "ns", "icon", "disposition", "getOrElse"]
7
- }
@@ -1,30 +0,0 @@
1
- import "./chunk-J5LGTIGS.mjs";
2
-
3
- // src/capabilities/blueprint-definition.ts
4
- import { Capabilities, contributes } from "@dxos/app-framework";
5
- import { Blueprint, Template } from "@dxos/blueprints";
6
- import { trim } from "@dxos/util";
7
- var functions = [];
8
- var tools = [];
9
- var blueprint_definition_default = (() => {
10
- return [
11
- contributes(Capabilities.Functions, functions),
12
- contributes(Capabilities.BlueprintDefinition, Blueprint.make({
13
- key: "dxos.org/blueprint/script",
14
- name: "Script",
15
- tools: Blueprint.toolDefinitions({
16
- functions,
17
- tools
18
- }),
19
- instructions: Template.make({
20
- source: trim`
21
- You can create and update scripts which contain Typescript code.
22
- `
23
- })
24
- }))
25
- ];
26
- });
27
- export {
28
- blueprint_definition_default as default
29
- };
30
- //# sourceMappingURL=blueprint-definition-6PZWZM2Y.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/blueprint-definition.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes } from '@dxos/app-framework';\nimport { Blueprint, Template } from '@dxos/blueprints';\nimport { type FunctionDefinition } from '@dxos/functions';\nimport { trim } from '@dxos/util';\n\nconst functions: FunctionDefinition[] = [];\nconst tools: string[] = [];\n\nexport default () => {\n return [\n contributes(Capabilities.Functions, functions),\n contributes(\n Capabilities.BlueprintDefinition,\n Blueprint.make({\n key: 'dxos.org/blueprint/script',\n name: 'Script',\n tools: Blueprint.toolDefinitions({ functions, tools }),\n instructions: Template.make({\n source: trim`\n You can create and update scripts which contain Typescript code.\n `,\n }),\n }),\n ),\n ];\n};\n"],
5
- "mappings": ";;;AAIA,SAASA,cAAcC,mBAAmB;AAC1C,SAASC,WAAWC,gBAAgB;AAEpC,SAASC,YAAY;AAErB,IAAMC,YAAkC,CAAA;AACxC,IAAMC,QAAkB,CAAA;AAExB,IAAA,gCAAe,MAAA;AACb,SAAO;IACLC,YAAYC,aAAaC,WAAWJ,SAAAA;IACpCE,YACEC,aAAaE,qBACbC,UAAUC,KAAK;MACbC,KAAK;MACLC,MAAM;MACNR,OAAOK,UAAUI,gBAAgB;QAAEV;QAAWC;MAAM,CAAA;MACpDU,cAAcC,SAASL,KAAK;QAC1BM,QAAQC;;;MAGV,CAAA;IACF,CAAA,CAAA;;AAGN;",
6
- "names": ["Capabilities", "contributes", "Blueprint", "Template", "trim", "functions", "tools", "contributes", "Capabilities", "Functions", "BlueprintDefinition", "Blueprint", "make", "key", "name", "toolDefinitions", "instructions", "Template", "source", "trim"]
7
- }
@@ -1,304 +0,0 @@
1
- import {
2
- TypescriptEditor
3
- } from "./chunk-6X7QVTRB.mjs";
4
- import {
5
- meta
6
- } from "./chunk-EB6AXFXO.mjs";
7
-
8
- // src/components/NotebookStack/NotebookMenu.tsx
9
- import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
10
- import React from "react";
11
- import { DropdownMenu, useTranslation } from "@dxos/react-ui";
12
- var NotebookMenu = ({ cell, onCellInsert, onCellDelete }) => {
13
- var _effect = _useSignals();
14
- try {
15
- const { t } = useTranslation(meta.id);
16
- return /* @__PURE__ */ React.createElement(DropdownMenu.Portal, null, /* @__PURE__ */ React.createElement(DropdownMenu.Content, null, /* @__PURE__ */ React.createElement(DropdownMenu.Viewport, null, /* @__PURE__ */ React.createElement(DropdownMenu.Item, {
17
- onClick: () => onCellInsert?.("script", cell?.id)
18
- }, t("notebook cell insert script label")), /* @__PURE__ */ React.createElement(DropdownMenu.Item, {
19
- onClick: () => onCellInsert?.("prompt", cell?.id)
20
- }, t("notebook cell insert prompt label")), /* @__PURE__ */ React.createElement(DropdownMenu.Item, {
21
- onClick: () => onCellInsert?.("query", cell?.id)
22
- }, t("notebook cell insert query label")), /* @__PURE__ */ React.createElement(DropdownMenu.Item, {
23
- onClick: () => onCellInsert?.("markdown", cell?.id)
24
- }, t("notebook cell insert markdown label")), cell && onCellDelete && /* @__PURE__ */ React.createElement(DropdownMenu.Item, {
25
- onClick: () => onCellDelete?.(cell.id)
26
- }, t("notebook cell delete label"))), /* @__PURE__ */ React.createElement(DropdownMenu.Arrow, null)));
27
- } finally {
28
- _effect.f();
29
- }
30
- };
31
-
32
- // src/components/NotebookStack/NotebookStack.tsx
33
- import { useSignals as _useSignals3 } from "@preact-signals/safe-react/tracking";
34
- import React3 from "react";
35
- import { DropdownMenu as DropdownMenu2, IconButton, useTranslation as useTranslation3 } from "@dxos/react-ui";
36
- import { Stack, StackItem } from "@dxos/react-ui-stack";
37
-
38
- // src/components/NotebookStack/NotebookCell.tsx
39
- import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
40
- import React2, { useCallback, useMemo } from "react";
41
- import { Surface } from "@dxos/app-framework/react";
42
- import { createDocAccessor } from "@dxos/echo-db";
43
- import { invariant } from "@dxos/invariant";
44
- import { TemplateEditor } from "@dxos/plugin-assistant";
45
- import { useThemeContext, useTranslation as useTranslation2 } from "@dxos/react-ui";
46
- import { QueryEditor } from "@dxos/react-ui-components";
47
- import { EditorContent, createBasicExtensions, createDataExtensions, createMarkdownExtensions, createThemeExtensions, decorateMarkdown } from "@dxos/react-ui-editor";
48
- import { mx } from "@dxos/react-ui-theme";
49
- import { isNonNullable } from "@dxos/util";
50
- var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-script/src/components/NotebookStack/NotebookCell.tsx";
51
- var editorStyles = "p-2 pis-3";
52
- var valueStyles = "p-1 pis-3";
53
- var NotebookCell = ({ space, graph, dragging, cell, promptResults, env }) => {
54
- var _effect = _useSignals2();
55
- try {
56
- const { t } = useTranslation2(meta.id);
57
- const extensions = useMemo(() => {
58
- return cell.source?.target ? [
59
- createDataExtensions({
60
- id: cell.id,
61
- text: createDocAccessor(cell.source.target, [
62
- "content"
63
- ])
64
- })
65
- ].filter(isNonNullable) : [];
66
- }, [
67
- cell.source?.target
68
- ]);
69
- const explorerGraph = cell.graph?.target;
70
- const handleQueryChange = useCallback((value) => {
71
- invariant(cell.source?.target, void 0, {
72
- F: __dxlog_file,
73
- L: 64,
74
- S: void 0,
75
- A: [
76
- "cell.source?.target",
77
- ""
78
- ]
79
- });
80
- cell.source.target.content = value;
81
- }, [
82
- cell
83
- ]);
84
- switch (cell.type) {
85
- case "markdown":
86
- if (!cell.source?.target) {
87
- return null;
88
- }
89
- return /* @__PURE__ */ React2.createElement(NotebookTextEditor, {
90
- id: cell.id,
91
- classNames: editorStyles,
92
- initialValue: cell.source.target.content,
93
- extensions
94
- });
95
- case "script":
96
- if (!cell.source?.target) {
97
- return null;
98
- }
99
- return /* @__PURE__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement(TypescriptEditor, {
100
- id: cell.id,
101
- role: "section",
102
- classNames: editorStyles,
103
- initialValue: cell.source.target.content,
104
- extensions,
105
- env,
106
- options: {
107
- placeholder: t("notebook cell placeholder"),
108
- highlightActiveLine: false,
109
- lineNumbers: false
110
- }
111
- }), /* @__PURE__ */ React2.createElement(NotebookCellValue, {
112
- cell,
113
- graph
114
- }));
115
- case "query":
116
- if (!cell.source?.target) {
117
- return null;
118
- }
119
- return /* @__PURE__ */ React2.createElement("div", {
120
- className: mx("bs-full overflow-hidden grid", explorerGraph && !dragging && "grid-rows-[min-content_1fr]")
121
- }, /* @__PURE__ */ React2.createElement(QueryEditor, {
122
- id: cell.id,
123
- classNames: [
124
- editorStyles,
125
- "border-be border-subduedSeparator"
126
- ],
127
- db: space?.db,
128
- value: cell.source.target.content,
129
- onChange: handleQueryChange
130
- }), explorerGraph && !dragging && /* @__PURE__ */ React2.createElement(Surface, {
131
- role: "section",
132
- limit: 1,
133
- data: {
134
- subject: explorerGraph
135
- }
136
- }));
137
- // TODO(burdon): Use streaming response from Chat.
138
- case "prompt":
139
- if (!cell.prompt?.target) {
140
- return null;
141
- }
142
- return /* @__PURE__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement(TemplateEditor, {
143
- id: cell.id,
144
- template: cell.prompt.target.instructions,
145
- lineNumbers: false,
146
- classNames: editorStyles
147
- }), /* @__PURE__ */ React2.createElement(NotebookPromptResult, {
148
- cell,
149
- promptResults
150
- }));
151
- default:
152
- return null;
153
- }
154
- } finally {
155
- _effect.f();
156
- }
157
- };
158
- var NotebookCellValue = ({ cell, graph }) => {
159
- var _effect = _useSignals2();
160
- try {
161
- const name = graph?.expressions.value[cell.id]?.name;
162
- const value = graph?.getValue(cell.id);
163
- if (value == null) {
164
- return null;
165
- }
166
- return /* @__PURE__ */ React2.createElement("div", {
167
- className: mx("flex is-full bg-groupSurface border-t border-subduedSeparator text-description font-mono", valueStyles)
168
- }, name && /* @__PURE__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement("span", {
169
- className: "text-successText"
170
- }, name), /* @__PURE__ */ React2.createElement("span", {
171
- className: "text-description"
172
- }, "\xA0=\xA0")), /* @__PURE__ */ React2.createElement("span", null, value));
173
- } finally {
174
- _effect.f();
175
- }
176
- };
177
- var NotebookPromptResult = ({ cell, promptResults }) => {
178
- var _effect = _useSignals2();
179
- try {
180
- if (!cell.prompt) {
181
- return null;
182
- }
183
- const value = promptResults?.[cell.prompt.dxn.toString()];
184
- if (value == null) {
185
- return null;
186
- }
187
- return /* @__PURE__ */ React2.createElement("div", {
188
- className: mx("flex is-full bg-groupSurface text-description border-t border-subduedSeparator", valueStyles)
189
- }, /* @__PURE__ */ React2.createElement(NotebookTextEditor, {
190
- readOnly: true,
191
- value
192
- }));
193
- } finally {
194
- _effect.f();
195
- }
196
- };
197
- var NotebookTextEditor = ({ extensions: extensionsParam, readOnly, ...props }) => {
198
- var _effect = _useSignals2();
199
- try {
200
- const { t } = useTranslation2(meta.id);
201
- const { themeMode } = useThemeContext();
202
- const extensions = useMemo(() => {
203
- return [
204
- createBasicExtensions({
205
- placeholder: t("notebook markdown placeholder"),
206
- readOnly
207
- }),
208
- createThemeExtensions({
209
- themeMode,
210
- syntaxHighlighting: true
211
- }),
212
- createMarkdownExtensions(),
213
- decorateMarkdown(),
214
- extensionsParam
215
- ].filter(isNonNullable);
216
- }, [
217
- extensionsParam
218
- ]);
219
- return /* @__PURE__ */ React2.createElement(EditorContent, {
220
- ...props,
221
- extensions,
222
- selectionEnd: true
223
- });
224
- } finally {
225
- _effect.f();
226
- }
227
- };
228
-
229
- // src/components/NotebookStack/NotebookStack.tsx
230
- var minSectionHeight = "min-bs-[16rem]";
231
- var NotebookStack = ({ classNames, notebook, onRearrange, ...props }) => {
232
- var _effect = _useSignals3();
233
- try {
234
- return /* @__PURE__ */ React3.createElement(Stack, {
235
- classNames,
236
- orientation: "vertical",
237
- size: "contain",
238
- rail: true,
239
- onRearrange
240
- }, notebook?.cells.map((cell, i) => /* @__PURE__ */ React3.createElement(NotebookSection, {
241
- key: i,
242
- cell,
243
- ...props
244
- })));
245
- } finally {
246
- _effect.f();
247
- }
248
- };
249
- var NotebookSection = ({ cell, space, env, promptResults, onCellInsert, onCellDelete, ...props }) => {
250
- var _effect = _useSignals3();
251
- try {
252
- const { t } = useTranslation3(meta.id);
253
- const resizable = cell.type === "query";
254
- return /* @__PURE__ */ React3.createElement(StackItem.Root, {
255
- role: "section",
256
- item: cell,
257
- draggable: true,
258
- classNames: resizable && minSectionHeight
259
- }, /* @__PURE__ */ React3.createElement(StackItem.Heading, {
260
- classNames: "bs-full p-1 justify-between attention-surface"
261
- }, /* @__PURE__ */ React3.createElement(StackItem.DragHandle, {
262
- asChild: true
263
- }, /* @__PURE__ */ React3.createElement(IconButton, {
264
- variant: "ghost",
265
- icon: "ph--dots-six-vertical--regular",
266
- iconOnly: true,
267
- label: "Drag handle"
268
- })), /* @__PURE__ */ React3.createElement(DropdownMenu2.Root, null, /* @__PURE__ */ React3.createElement(DropdownMenu2.Trigger, {
269
- asChild: true
270
- }, /* @__PURE__ */ React3.createElement(IconButton, {
271
- variant: "ghost",
272
- icon: "ph--dots-three--regular",
273
- iconOnly: true,
274
- label: t("notebook cell insert label")
275
- })), /* @__PURE__ */ React3.createElement(NotebookMenu, {
276
- cell,
277
- onCellInsert,
278
- onCellDelete
279
- })), resizable && /* @__PURE__ */ React3.createElement(StackItem.ResizeHandle, null)), /* @__PURE__ */ React3.createElement(StackItem.DragPreview, null, ({ item: cell2 }) => /* @__PURE__ */ React3.createElement(StackItem.Content, {
280
- classNames: "overflow-visible bg-groupSurface border border-subduedSeparator"
281
- }, /* @__PURE__ */ React3.createElement(NotebookCell, {
282
- space,
283
- cell: cell2,
284
- env,
285
- dragging: true
286
- }))), /* @__PURE__ */ React3.createElement(StackItem.Content, {
287
- classNames: "overflow-visible"
288
- }, /* @__PURE__ */ React3.createElement(NotebookCell, {
289
- space,
290
- cell,
291
- env,
292
- promptResults,
293
- ...props
294
- })));
295
- } finally {
296
- _effect.f();
297
- }
298
- };
299
-
300
- export {
301
- NotebookMenu,
302
- NotebookStack
303
- };
304
- //# sourceMappingURL=chunk-2SXDKBM7.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/NotebookStack/NotebookMenu.tsx", "../../../src/components/NotebookStack/NotebookStack.tsx", "../../../src/components/NotebookStack/NotebookCell.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { DropdownMenu, useTranslation } from '@dxos/react-ui';\n\nimport { meta } from '../../meta';\nimport { type Notebook } from '../../types';\n\nexport type NotebookMenuProps = {\n cell?: Notebook.Cell;\n onCellInsert?: (type: Notebook.CellType, after: string | undefined) => void;\n onCellDelete?: (id: string) => void;\n};\n\n// TODO(burdon): Better way to organize menu?\nexport const NotebookMenu = ({ cell, onCellInsert, onCellDelete }: NotebookMenuProps) => {\n const { t } = useTranslation(meta.id);\n return (\n <DropdownMenu.Portal>\n <DropdownMenu.Content>\n <DropdownMenu.Viewport>\n <DropdownMenu.Item onClick={() => onCellInsert?.('script', cell?.id)}>\n {t('notebook cell insert script label')}\n </DropdownMenu.Item>\n <DropdownMenu.Item onClick={() => onCellInsert?.('prompt', cell?.id)}>\n {t('notebook cell insert prompt label')}\n </DropdownMenu.Item>\n <DropdownMenu.Item onClick={() => onCellInsert?.('query', cell?.id)}>\n {t('notebook cell insert query label')}\n </DropdownMenu.Item>\n <DropdownMenu.Item onClick={() => onCellInsert?.('markdown', cell?.id)}>\n {t('notebook cell insert markdown label')}\n </DropdownMenu.Item>\n {cell && onCellDelete && (\n <DropdownMenu.Item onClick={() => onCellDelete?.(cell.id)}>\n {t('notebook cell delete label')}\n </DropdownMenu.Item>\n )}\n </DropdownMenu.Viewport>\n <DropdownMenu.Arrow />\n </DropdownMenu.Content>\n </DropdownMenu.Portal>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { DropdownMenu, IconButton, type ThemedClassName, useTranslation } from '@dxos/react-ui';\nimport { Stack, StackItem, type StackProps } from '@dxos/react-ui-stack';\n\nimport { meta } from '../../meta';\nimport { type Notebook } from '../../types';\nimport { type TypescriptEditorProps } from '../TypescriptEditor';\n\nimport { NotebookCell, type NotebookCellProps } from './NotebookCell';\nimport { NotebookMenu } from './NotebookMenu';\n\nconst minSectionHeight = 'min-bs-[16rem]';\n\nexport type NotebookStackProps = ThemedClassName<\n {\n notebook?: Notebook.Notebook;\n onRearrange?: StackProps['onRearrange'];\n } & (Pick<NotebookSectionProps, 'space' | 'graph' | 'promptResults' | 'onCellInsert' | 'onCellDelete'> &\n Pick<TypescriptEditorProps, 'env'>)\n>;\n\n// TODO(burdon): Option for narrow rail (with compact buttons that align with first button in toolbar).\nexport const NotebookStack = ({ classNames, notebook, onRearrange, ...props }: NotebookStackProps) => {\n return (\n <Stack classNames={classNames} orientation='vertical' size='contain' rail onRearrange={onRearrange}>\n {notebook?.cells.map((cell, i) => (\n <NotebookSection key={i} cell={cell} {...props} />\n ))}\n </Stack>\n );\n};\n\ntype NotebookSectionProps = NotebookCellProps;\n\nconst NotebookSection = ({\n cell,\n space,\n env,\n promptResults,\n onCellInsert,\n onCellDelete,\n ...props\n}: NotebookSectionProps) => {\n const { t } = useTranslation(meta.id);\n const resizable = cell.type === 'query';\n\n return (\n <StackItem.Root role='section' item={cell} draggable classNames={resizable && minSectionHeight}>\n <StackItem.Heading classNames='bs-full p-1 justify-between attention-surface'>\n <StackItem.DragHandle asChild>\n <IconButton variant='ghost' icon='ph--dots-six-vertical--regular' iconOnly label='Drag handle' />\n </StackItem.DragHandle>\n <DropdownMenu.Root>\n <DropdownMenu.Trigger asChild>\n <IconButton\n variant='ghost'\n icon='ph--dots-three--regular'\n iconOnly\n label={t('notebook cell insert label')}\n />\n </DropdownMenu.Trigger>\n <NotebookMenu cell={cell} onCellInsert={onCellInsert} onCellDelete={onCellDelete} />\n </DropdownMenu.Root>\n {resizable && <StackItem.ResizeHandle />}\n </StackItem.Heading>\n\n {/* TODO(burdon): Move drag preview to outer stack (uniformly). */}\n <StackItem.DragPreview>\n {({ item: cell }) => (\n <StackItem.Content classNames='overflow-visible bg-groupSurface border border-subduedSeparator'>\n <NotebookCell space={space} cell={cell} env={env} dragging />\n </StackItem.Content>\n )}\n </StackItem.DragPreview>\n\n <StackItem.Content classNames='overflow-visible'>\n <NotebookCell space={space} cell={cell} env={env} promptResults={promptResults} {...props} />\n </StackItem.Content>\n </StackItem.Root>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback, useMemo } from 'react';\n\nimport { Surface } from '@dxos/app-framework/react';\nimport { createDocAccessor } from '@dxos/echo-db';\nimport { invariant } from '@dxos/invariant';\nimport { TemplateEditor } from '@dxos/plugin-assistant';\nimport { type Space } from '@dxos/react-client/echo';\nimport { useThemeContext, useTranslation } from '@dxos/react-ui';\nimport { QueryEditor, type QueryEditorProps } from '@dxos/react-ui-components';\nimport {\n type BasicExtensionsOptions,\n EditorContent,\n type EditorContentProps,\n createBasicExtensions,\n createDataExtensions,\n createMarkdownExtensions,\n createThemeExtensions,\n decorateMarkdown,\n} from '@dxos/react-ui-editor';\nimport { mx } from '@dxos/react-ui-theme';\nimport { isNonNullable } from '@dxos/util';\n\nimport { meta } from '../../meta';\nimport { type ComputeGraph } from '../../notebook';\nimport { type Notebook } from '../../types';\nimport { TypescriptEditor, type TypescriptEditorProps } from '../TypescriptEditor';\n\nimport { type NotebookMenuProps } from './NotebookMenu';\n\nconst editorStyles = 'p-2 pis-3';\nconst valueStyles = 'p-1 pis-3';\n\nexport type NotebookCellProps = {\n space?: Space;\n graph?: ComputeGraph;\n dragging?: boolean;\n cell: Notebook.Cell;\n promptResults?: Record<string, string>;\n} & (Pick<NotebookMenuProps, 'onCellInsert' | 'onCellDelete'> & Pick<TypescriptEditorProps, 'env'>);\n\n// TODO(burdon): Show evaluation errors.\nexport const NotebookCell = ({ space, graph, dragging, cell, promptResults, env }: NotebookCellProps) => {\n const { t } = useTranslation(meta.id);\n\n const extensions = useMemo(() => {\n return cell.source?.target\n ? [\n createDataExtensions({\n id: cell.id,\n text: createDocAccessor(cell.source.target, ['content']),\n }),\n ].filter(isNonNullable)\n : [];\n }, [cell.source?.target]);\n\n const explorerGraph = cell.graph?.target;\n\n const handleQueryChange = useCallback<NonNullable<QueryEditorProps['onChange']>>(\n (value: string) => {\n invariant(cell.source?.target);\n cell.source.target.content = value;\n },\n [cell],\n );\n\n switch (cell.type) {\n case 'markdown':\n if (!cell.source?.target) {\n return null;\n }\n\n return (\n <NotebookTextEditor\n id={cell.id}\n classNames={editorStyles}\n initialValue={cell.source.target.content}\n extensions={extensions}\n />\n );\n\n case 'script':\n if (!cell.source?.target) {\n return null;\n }\n\n return (\n <>\n <TypescriptEditor\n id={cell.id}\n role='section'\n classNames={editorStyles}\n initialValue={cell.source.target.content}\n extensions={extensions}\n env={env}\n options={{\n placeholder: t('notebook cell placeholder'),\n highlightActiveLine: false,\n lineNumbers: false,\n }}\n />\n <NotebookCellValue cell={cell} graph={graph} />\n </>\n );\n\n case 'query':\n if (!cell.source?.target) {\n return null;\n }\n\n // TODO(burdon): Remove app-framework deps (via render prop).\n return (\n <div\n className={mx('bs-full overflow-hidden grid', explorerGraph && !dragging && 'grid-rows-[min-content_1fr]')}\n >\n <QueryEditor\n id={cell.id}\n classNames={[editorStyles, 'border-be border-subduedSeparator']}\n db={space?.db}\n value={cell.source.target.content}\n onChange={handleQueryChange}\n />\n {explorerGraph && !dragging && <Surface role='section' limit={1} data={{ subject: explorerGraph }} />}\n </div>\n );\n\n // TODO(burdon): Use streaming response from Chat.\n case 'prompt':\n if (!cell.prompt?.target) {\n return null;\n }\n\n return (\n <>\n <TemplateEditor\n id={cell.id}\n template={cell.prompt.target.instructions}\n lineNumbers={false}\n classNames={editorStyles}\n />\n <NotebookPromptResult cell={cell} promptResults={promptResults} />\n </>\n );\n\n default:\n return null;\n }\n};\n\nconst NotebookCellValue = ({ cell, graph }: NotebookCellProps) => {\n const name = graph?.expressions.value[cell.id]?.name;\n const value = graph?.getValue(cell.id);\n if (value == null) {\n return null;\n }\n\n return (\n <div\n className={mx(\n 'flex is-full bg-groupSurface border-t border-subduedSeparator text-description font-mono',\n valueStyles,\n )}\n >\n {name && (\n <>\n <span className='text-successText'>{name}</span>\n <span className='text-description'>&nbsp;=&nbsp;</span>\n </>\n )}\n <span>{value}</span>\n </div>\n );\n};\n\nconst NotebookPromptResult = ({ cell, promptResults }: NotebookCellProps) => {\n if (!cell.prompt) {\n return null;\n }\n\n const value = promptResults?.[cell.prompt.dxn.toString()];\n if (value == null) {\n return null;\n }\n\n return (\n <div className={mx('flex is-full bg-groupSurface text-description border-t border-subduedSeparator', valueStyles)}>\n <NotebookTextEditor readOnly value={value} />\n </div>\n );\n};\n\nconst NotebookTextEditor = ({\n extensions: extensionsParam,\n readOnly,\n ...props\n}: EditorContentProps & Pick<BasicExtensionsOptions, 'readOnly'>) => {\n const { t } = useTranslation(meta.id);\n const { themeMode } = useThemeContext();\n const extensions = useMemo(() => {\n return [\n createBasicExtensions({\n placeholder: t('notebook markdown placeholder'),\n readOnly,\n }),\n createThemeExtensions({ themeMode, syntaxHighlighting: true }),\n createMarkdownExtensions(),\n decorateMarkdown(),\n extensionsParam,\n ].filter(isNonNullable);\n }, [extensionsParam]);\n\n return <EditorContent {...props} extensions={extensions} selectionEnd />;\n};\n"],
5
- "mappings": ";;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,sBAAsB;AAYtC,IAAMC,eAAe,CAAC,EAAEC,MAAMC,cAAcC,aAAY,MAAqB;;;AAClF,UAAM,EAAEC,EAAC,IAAKC,eAAeC,KAAKC,EAAE;AACpC,WACE,sBAAA,cAACC,aAAaC,QAAM,MAClB,sBAAA,cAACD,aAAaE,SAAO,MACnB,sBAAA,cAACF,aAAaG,UAAQ,MACpB,sBAAA,cAACH,aAAaI,MAAI;MAACC,SAAS,MAAMX,eAAe,UAAUD,MAAMM,EAAAA;OAC9DH,EAAE,mCAAA,CAAA,GAEL,sBAAA,cAACI,aAAaI,MAAI;MAACC,SAAS,MAAMX,eAAe,UAAUD,MAAMM,EAAAA;OAC9DH,EAAE,mCAAA,CAAA,GAEL,sBAAA,cAACI,aAAaI,MAAI;MAACC,SAAS,MAAMX,eAAe,SAASD,MAAMM,EAAAA;OAC7DH,EAAE,kCAAA,CAAA,GAEL,sBAAA,cAACI,aAAaI,MAAI;MAACC,SAAS,MAAMX,eAAe,YAAYD,MAAMM,EAAAA;OAChEH,EAAE,qCAAA,CAAA,GAEJH,QAAQE,gBACP,sBAAA,cAACK,aAAaI,MAAI;MAACC,SAAS,MAAMV,eAAeF,KAAKM,EAAE;OACrDH,EAAE,4BAAA,CAAA,CAAA,GAIT,sBAAA,cAACI,aAAaM,OAAK,IAAA,CAAA,CAAA;;;;AAI3B;;;;AC1CA,OAAOC,YAAW;AAElB,SAASC,gBAAAA,eAAcC,YAAkCC,kBAAAA,uBAAsB;AAC/E,SAASC,OAAOC,iBAAkC;;;;ACHlD,OAAOC,UAASC,aAAaC,eAAe;AAE5C,SAASC,eAAe;AACxB,SAASC,yBAAyB;AAClC,SAASC,iBAAiB;AAC1B,SAASC,sBAAsB;AAE/B,SAASC,iBAAiBC,kBAAAA,uBAAsB;AAChD,SAASC,mBAA0C;AACnD,SAEEC,eAEAC,uBACAC,sBACAC,0BACAC,uBACAC,wBACK;AACP,SAASC,UAAU;AACnB,SAASC,qBAAqB;;AAS9B,IAAMC,eAAe;AACrB,IAAMC,cAAc;AAWb,IAAMC,eAAe,CAAC,EAAEC,OAAOC,OAAOC,UAAUC,MAAMC,eAAeC,IAAG,MAAqB;;;AAClG,UAAM,EAAEC,EAAC,IAAKC,gBAAeC,KAAKC,EAAE;AAEpC,UAAMC,aAAaC,QAAQ,MAAA;AACzB,aAAOR,KAAKS,QAAQC,SAChB;QACEC,qBAAqB;UACnBL,IAAIN,KAAKM;UACTM,MAAMC,kBAAkBb,KAAKS,OAAOC,QAAQ;YAAC;WAAU;QACzD,CAAA;QACAI,OAAOC,aAAAA,IACT,CAAA;IACN,GAAG;MAACf,KAAKS,QAAQC;KAAO;AAExB,UAAMM,gBAAgBhB,KAAKF,OAAOY;AAElC,UAAMO,oBAAoBC,YACxB,CAACC,UAAAA;AACCC,gBAAUpB,KAAKS,QAAQC,QAAAA,QAAAA;;;;;;;;;AACvBV,WAAKS,OAAOC,OAAOW,UAAUF;IAC/B,GACA;MAACnB;KAAK;AAGR,YAAQA,KAAKsB,MAAI;MACf,KAAK;AACH,YAAI,CAACtB,KAAKS,QAAQC,QAAQ;AACxB,iBAAO;QACT;AAEA,eACE,gBAAAa,OAAA,cAACC,oBAAAA;UACClB,IAAIN,KAAKM;UACTmB,YAAY/B;UACZgC,cAAc1B,KAAKS,OAAOC,OAAOW;UACjCd;;MAIN,KAAK;AACH,YAAI,CAACP,KAAKS,QAAQC,QAAQ;AACxB,iBAAO;QACT;AAEA,eACE,gBAAAa,OAAA,cAAAA,OAAA,UAAA,MACE,gBAAAA,OAAA,cAACI,kBAAAA;UACCrB,IAAIN,KAAKM;UACTsB,MAAK;UACLH,YAAY/B;UACZgC,cAAc1B,KAAKS,OAAOC,OAAOW;UACjCd;UACAL;UACA2B,SAAS;YACPC,aAAa3B,EAAE,2BAAA;YACf4B,qBAAqB;YACrBC,aAAa;UACf;YAEF,gBAAAT,OAAA,cAACU,mBAAAA;UAAkBjC;UAAYF;;MAIrC,KAAK;AACH,YAAI,CAACE,KAAKS,QAAQC,QAAQ;AACxB,iBAAO;QACT;AAGA,eACE,gBAAAa,OAAA,cAACW,OAAAA;UACCC,WAAWC,GAAG,gCAAgCpB,iBAAiB,CAACjB,YAAY,6BAAA;WAE5E,gBAAAwB,OAAA,cAACc,aAAAA;UACC/B,IAAIN,KAAKM;UACTmB,YAAY;YAAC/B;YAAc;;UAC3B4C,IAAIzC,OAAOyC;UACXnB,OAAOnB,KAAKS,OAAOC,OAAOW;UAC1BkB,UAAUtB;YAEXD,iBAAiB,CAACjB,YAAY,gBAAAwB,OAAA,cAACiB,SAAAA;UAAQZ,MAAK;UAAUa,OAAO;UAAGC,MAAM;YAAEC,SAAS3B;UAAc;;;MAKtG,KAAK;AACH,YAAI,CAAChB,KAAK4C,QAAQlC,QAAQ;AACxB,iBAAO;QACT;AAEA,eACE,gBAAAa,OAAA,cAAAA,OAAA,UAAA,MACE,gBAAAA,OAAA,cAACsB,gBAAAA;UACCvC,IAAIN,KAAKM;UACTwC,UAAU9C,KAAK4C,OAAOlC,OAAOqC;UAC7Bf,aAAa;UACbP,YAAY/B;YAEd,gBAAA6B,OAAA,cAACyB,sBAAAA;UAAqBhD;UAAYC;;MAIxC;AACE,eAAO;IACX;;;;AACF;AAEA,IAAMgC,oBAAoB,CAAC,EAAEjC,MAAMF,MAAK,MAAqB;;;AAC3D,UAAMmD,OAAOnD,OAAOoD,YAAY/B,MAAMnB,KAAKM,EAAE,GAAG2C;AAChD,UAAM9B,QAAQrB,OAAOqD,SAASnD,KAAKM,EAAE;AACrC,QAAIa,SAAS,MAAM;AACjB,aAAO;IACT;AAEA,WACE,gBAAAI,OAAA,cAACW,OAAAA;MACCC,WAAWC,GACT,4FACAzC,WAAAA;OAGDsD,QACC,gBAAA1B,OAAA,cAAAA,OAAA,UAAA,MACE,gBAAAA,OAAA,cAAC6B,QAAAA;MAAKjB,WAAU;OAAoBc,IAAAA,GACpC,gBAAA1B,OAAA,cAAC6B,QAAAA;MAAKjB,WAAU;OAAmB,WAAA,CAAA,GAGvC,gBAAAZ,OAAA,cAAC6B,QAAAA,MAAMjC,KAAAA,CAAAA;;;;AAGb;AAEA,IAAM6B,uBAAuB,CAAC,EAAEhD,MAAMC,cAAa,MAAqB;;;AACtE,QAAI,CAACD,KAAK4C,QAAQ;AAChB,aAAO;IACT;AAEA,UAAMzB,QAAQlB,gBAAgBD,KAAK4C,OAAOS,IAAIC,SAAQ,CAAA;AACtD,QAAInC,SAAS,MAAM;AACjB,aAAO;IACT;AAEA,WACE,gBAAAI,OAAA,cAACW,OAAAA;MAAIC,WAAWC,GAAG,kFAAkFzC,WAAAA;OACnG,gBAAA4B,OAAA,cAACC,oBAAAA;MAAmB+B,UAAAA;MAASpC;;;;;AAGnC;AAEA,IAAMK,qBAAqB,CAAC,EAC1BjB,YAAYiD,iBACZD,UACA,GAAGE,MAAAA,MAC2D;;;AAC9D,UAAM,EAAEtD,EAAC,IAAKC,gBAAeC,KAAKC,EAAE;AACpC,UAAM,EAAEoD,UAAS,IAAKC,gBAAAA;AACtB,UAAMpD,aAAaC,QAAQ,MAAA;AACzB,aAAO;QACLoD,sBAAsB;UACpB9B,aAAa3B,EAAE,+BAAA;UACfoD;QACF,CAAA;QACAM,sBAAsB;UAAEH;UAAWI,oBAAoB;QAAK,CAAA;QAC5DC,yBAAAA;QACAC,iBAAAA;QACAR;QACA1C,OAAOC,aAAAA;IACX,GAAG;MAACyC;KAAgB;AAEpB,WAAO,gBAAAjC,OAAA,cAAC0C,eAAAA;MAAe,GAAGR;MAAOlD;MAAwB2D,cAAAA;;;;;AAC3D;;;ADvMA,IAAMC,mBAAmB;AAWlB,IAAMC,gBAAgB,CAAC,EAAEC,YAAYC,UAAUC,aAAa,GAAGC,MAAAA,MAA2B;;;AAC/F,WACE,gBAAAC,OAAA,cAACC,OAAAA;MAAML;MAAwBM,aAAY;MAAWC,MAAK;MAAUC,MAAAA;MAAKN;OACvED,UAAUQ,MAAMC,IAAI,CAACC,MAAMC,MAC1B,gBAAAR,OAAA,cAACS,iBAAAA;MAAgBC,KAAKF;MAAGD;MAAa,GAAGR;;;;;AAIjD;AAIA,IAAMU,kBAAkB,CAAC,EACvBF,MACAI,OACAC,KACAC,eACAC,cACAC,cACA,GAAGhB,MAAAA,MACkB;;;AACrB,UAAM,EAAEiB,EAAC,IAAKC,gBAAeC,KAAKC,EAAE;AACpC,UAAMC,YAAYb,KAAKc,SAAS;AAEhC,WACE,gBAAArB,OAAA,cAACsB,UAAUC,MAAI;MAACC,MAAK;MAAUC,MAAMlB;MAAMmB,WAAAA;MAAU9B,YAAYwB,aAAa1B;OAC5E,gBAAAM,OAAA,cAACsB,UAAUK,SAAO;MAAC/B,YAAW;OAC5B,gBAAAI,OAAA,cAACsB,UAAUM,YAAU;MAACC,SAAAA;OACpB,gBAAA7B,OAAA,cAAC8B,YAAAA;MAAWC,SAAQ;MAAQC,MAAK;MAAiCC,UAAAA;MAASC,OAAM;SAEnF,gBAAAlC,OAAA,cAACmC,cAAaZ,MAAI,MAChB,gBAAAvB,OAAA,cAACmC,cAAaC,SAAO;MAACP,SAAAA;OACpB,gBAAA7B,OAAA,cAAC8B,YAAAA;MACCC,SAAQ;MACRC,MAAK;MACLC,UAAAA;MACAC,OAAOlB,EAAE,4BAAA;SAGb,gBAAAhB,OAAA,cAACqC,cAAAA;MAAa9B;MAAYO;MAA4BC;SAEvDK,aAAa,gBAAApB,OAAA,cAACsB,UAAUgB,cAAY,IAAA,CAAA,GAIvC,gBAAAtC,OAAA,cAACsB,UAAUiB,aAAW,MACnB,CAAC,EAAEd,MAAMlB,MAAI,MACZ,gBAAAP,OAAA,cAACsB,UAAUkB,SAAO;MAAC5C,YAAW;OAC5B,gBAAAI,OAAA,cAACyC,cAAAA;MAAa9B;MAAcJ,MAAMA;MAAMK;MAAU8B,UAAAA;UAKxD,gBAAA1C,OAAA,cAACsB,UAAUkB,SAAO;MAAC5C,YAAW;OAC5B,gBAAAI,OAAA,cAACyC,cAAAA;MAAa9B;MAAcJ;MAAYK;MAAUC;MAA+B,GAAGd;;;;;AAI5F;",
6
- "names": ["React", "DropdownMenu", "useTranslation", "NotebookMenu", "cell", "onCellInsert", "onCellDelete", "t", "useTranslation", "meta", "id", "DropdownMenu", "Portal", "Content", "Viewport", "Item", "onClick", "Arrow", "React", "DropdownMenu", "IconButton", "useTranslation", "Stack", "StackItem", "React", "useCallback", "useMemo", "Surface", "createDocAccessor", "invariant", "TemplateEditor", "useThemeContext", "useTranslation", "QueryEditor", "EditorContent", "createBasicExtensions", "createDataExtensions", "createMarkdownExtensions", "createThemeExtensions", "decorateMarkdown", "mx", "isNonNullable", "editorStyles", "valueStyles", "NotebookCell", "space", "graph", "dragging", "cell", "promptResults", "env", "t", "useTranslation", "meta", "id", "extensions", "useMemo", "source", "target", "createDataExtensions", "text", "createDocAccessor", "filter", "isNonNullable", "explorerGraph", "handleQueryChange", "useCallback", "value", "invariant", "content", "type", "React", "NotebookTextEditor", "classNames", "initialValue", "TypescriptEditor", "role", "options", "placeholder", "highlightActiveLine", "lineNumbers", "NotebookCellValue", "div", "className", "mx", "QueryEditor", "db", "onChange", "Surface", "limit", "data", "subject", "prompt", "TemplateEditor", "template", "instructions", "NotebookPromptResult", "name", "expressions", "getValue", "span", "dxn", "toString", "readOnly", "extensionsParam", "props", "themeMode", "useThemeContext", "createBasicExtensions", "createThemeExtensions", "syntaxHighlighting", "createMarkdownExtensions", "decorateMarkdown", "EditorContent", "selectionEnd", "minSectionHeight", "NotebookStack", "classNames", "notebook", "onRearrange", "props", "React", "Stack", "orientation", "size", "rail", "cells", "map", "cell", "i", "NotebookSection", "key", "space", "env", "promptResults", "onCellInsert", "onCellDelete", "t", "useTranslation", "meta", "id", "resizable", "type", "StackItem", "Root", "role", "item", "draggable", "Heading", "DragHandle", "asChild", "IconButton", "variant", "icon", "iconOnly", "label", "DropdownMenu", "Trigger", "NotebookMenu", "ResizeHandle", "DragPreview", "Content", "NotebookCell", "dragging"]
7
- }
@@ -1,112 +0,0 @@
1
- // src/components/TypescriptEditor/TypescriptEditor.tsx
2
- import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
3
- import { autocompletion, completionKeymap } from "@codemirror/autocomplete";
4
- import { javascript } from "@codemirror/lang-javascript";
5
- import { HighlightStyle } from "@codemirror/language";
6
- import { lintKeymap } from "@codemirror/lint";
7
- import { Prec } from "@codemirror/state";
8
- import { keymap } from "@codemirror/view";
9
- import { tags } from "@lezer/highlight";
10
- import { continueKeymap } from "@valtown/codemirror-continue";
11
- import { tsAutocomplete, tsFacet, tsHover, tsLinter, tsSync } from "@valtown/codemirror-ts";
12
- import React from "react";
13
- import { Domino, useThemeContext } from "@dxos/react-ui";
14
- import { InputModeExtensions, createBasicExtensions, createThemeExtensions, defaultStyles, useTextEditor } from "@dxos/react-ui-editor";
15
- import { mx } from "@dxos/react-ui-theme";
16
- import { isNonNullable } from "@dxos/util";
17
- var TypescriptEditor = ({ classNames, id, role = "article", inputMode = "vscode", env, options, initialValue, extensions, scrollTo, selection }) => {
18
- var _effect = _useSignals();
19
- try {
20
- const { themeMode } = useThemeContext();
21
- const { parentRef, focusAttributes } = useTextEditor(() => ({
22
- id,
23
- initialValue,
24
- selection,
25
- scrollTo,
26
- extensions: [
27
- extensions,
28
- createBasicExtensions({
29
- highlightActiveLine: true,
30
- indentWithTab: true,
31
- lineNumbers: true,
32
- lineWrapping: false,
33
- scrollPastEnd: role !== "section",
34
- search: true,
35
- ...options
36
- }),
37
- createThemeExtensions({
38
- monospace: true,
39
- themeMode,
40
- syntaxHighlighting: true
41
- }),
42
- InputModeExtensions[inputMode],
43
- javascript({
44
- typescript: true
45
- }),
46
- autocompletion({
47
- override: env ? [
48
- tsAutocomplete()
49
- ] : void 0
50
- }),
51
- // Continues block comments when pressing Enter.
52
- Prec.high(keymap.of(continueKeymap)),
53
- keymap.of(completionKeymap),
54
- keymap.of(lintKeymap),
55
- // https://github.com/val-town/codemirror-ts
56
- env && [
57
- tsFacet.of({
58
- env,
59
- path: `./src/${id}.ts`
60
- }),
61
- tsSync(),
62
- tsLinter(),
63
- tsHover({
64
- renderTooltip: createTooltipRenderer(themeMode)
65
- })
66
- ]
67
- ].filter(isNonNullable)
68
- }), [
69
- id,
70
- extensions,
71
- themeMode,
72
- inputMode,
73
- selection,
74
- scrollTo,
75
- env
76
- ]);
77
- return /* @__PURE__ */ React.createElement("div", {
78
- ref: parentRef,
79
- className: mx(classNames),
80
- ...focusAttributes
81
- });
82
- } finally {
83
- _effect.f();
84
- }
85
- };
86
- var createTooltipRenderer = (themeMode) => {
87
- const theme = HighlightStyle.define(themeMode === "dark" ? defaultStyles.dark : defaultStyles.light);
88
- const classFromKind = (_kind) => {
89
- const kind = _kind.endsWith("Name") ? "name" : _kind;
90
- const validTag = kind in tags;
91
- if (!validTag) {
92
- return "";
93
- }
94
- const tag = tags[kind];
95
- if (typeof tag === "function") {
96
- return "";
97
- }
98
- return theme.style([
99
- tag
100
- ]) ?? "";
101
- };
102
- return (info) => {
103
- return {
104
- dom: Domino.of("div").classNames("xs:max-is-80 max-is-lg p-1 bg-baseSurface rounded border border-separator").children(...info.quickInfo?.displayParts?.map(({ kind, text }) => Domino.of("span").classNames(classFromKind(kind)).text(text)) ?? []).build()
105
- };
106
- };
107
- };
108
-
109
- export {
110
- TypescriptEditor
111
- };
112
- //# sourceMappingURL=chunk-6X7QVTRB.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/TypescriptEditor/TypescriptEditor.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { autocompletion, completionKeymap } from '@codemirror/autocomplete';\nimport { javascript } from '@codemirror/lang-javascript';\nimport { HighlightStyle } from '@codemirror/language';\nimport { lintKeymap } from '@codemirror/lint';\nimport { Prec } from '@codemirror/state';\nimport { keymap } from '@codemirror/view';\nimport { tags } from '@lezer/highlight';\nimport { type VirtualTypeScriptEnvironment } from '@typescript/vfs';\nimport { continueKeymap } from '@valtown/codemirror-continue';\nimport { type HoverInfo, tsAutocomplete, tsFacet, tsHover, tsLinter, tsSync } from '@valtown/codemirror-ts';\nimport React from 'react';\n\nimport { Domino, type ThemeMode, type ThemedClassName, useThemeContext } from '@dxos/react-ui';\nimport {\n type BasicExtensionsOptions,\n type EditorInputMode,\n InputModeExtensions,\n type UseTextEditorProps,\n createBasicExtensions,\n createThemeExtensions,\n defaultStyles,\n useTextEditor,\n} from '@dxos/react-ui-editor';\nimport { mx } from '@dxos/react-ui-theme';\nimport { isNonNullable } from '@dxos/util';\n\nexport type TypescriptEditorProps = ThemedClassName<\n {\n id: string;\n role?: string;\n inputMode?: EditorInputMode;\n toolbar?: boolean;\n env?: VirtualTypeScriptEnvironment;\n options?: BasicExtensionsOptions;\n } & Pick<UseTextEditorProps, 'initialValue' | 'extensions' | 'scrollTo' | 'selection'>\n>;\n\nexport const TypescriptEditor = ({\n classNames,\n id,\n role = 'article',\n inputMode = 'vscode',\n env,\n options,\n initialValue,\n extensions,\n scrollTo,\n selection,\n}: TypescriptEditorProps) => {\n const { themeMode } = useThemeContext();\n const { parentRef, focusAttributes } = useTextEditor(\n () => ({\n id,\n initialValue,\n selection,\n scrollTo,\n extensions: [\n extensions,\n createBasicExtensions({\n highlightActiveLine: true,\n indentWithTab: true,\n lineNumbers: true,\n lineWrapping: false,\n scrollPastEnd: role !== 'section',\n search: true,\n ...options,\n }),\n createThemeExtensions({\n monospace: true,\n themeMode,\n syntaxHighlighting: true,\n }),\n InputModeExtensions[inputMode],\n\n javascript({ typescript: true }),\n autocompletion({ override: env ? [tsAutocomplete()] : undefined }),\n\n // Continues block comments when pressing Enter.\n Prec.high(keymap.of(continueKeymap)),\n keymap.of(completionKeymap),\n keymap.of(lintKeymap),\n\n // https://github.com/val-town/codemirror-ts\n env && [\n tsFacet.of({ env, path: `./src/${id}.ts` }),\n tsSync(),\n tsLinter(),\n tsHover({ renderTooltip: createTooltipRenderer(themeMode) }),\n ],\n ].filter(isNonNullable),\n }),\n [id, extensions, themeMode, inputMode, selection, scrollTo, env],\n );\n\n // TODO(brudon): Use react-ui-editor's Editor component.\n return <div ref={parentRef} className={mx(classNames)} {...focusAttributes} />;\n};\n\n// TODO(burdon): Factor out (react-ui-editor).\nconst createTooltipRenderer = (themeMode: ThemeMode) => {\n const theme = HighlightStyle.define(themeMode === 'dark' ? defaultStyles.dark : defaultStyles.light);\n\n const classFromKind = (_kind: string) => {\n // E.g., localName, methodName, parameterName, etc.\n const kind = _kind.endsWith('Name') ? 'name' : _kind;\n const validTag = kind in tags;\n if (!validTag) {\n return '';\n }\n\n const tag = tags[kind as keyof typeof tags];\n if (typeof tag === 'function') {\n return '';\n }\n\n return theme.style([tag]) ?? '';\n };\n\n return (info: HoverInfo) => {\n return {\n dom: Domino.of('div')\n .classNames('xs:max-is-80 max-is-lg p-1 bg-baseSurface rounded border border-separator')\n .children(\n ...(info.quickInfo?.displayParts?.map(({ kind, text }) =>\n Domino.of('span').classNames(classFromKind(kind)).text(text),\n ) ?? []),\n )\n .build(),\n };\n };\n};\n\nexport default TypescriptEditor;\n"],
5
- "mappings": ";;AAIA,SAASA,gBAAgBC,wBAAwB;AACjD,SAASC,kBAAkB;AAC3B,SAASC,sBAAsB;AAC/B,SAASC,kBAAkB;AAC3B,SAASC,YAAY;AACrB,SAASC,cAAc;AACvB,SAASC,YAAY;AAErB,SAASC,sBAAsB;AAC/B,SAAyBC,gBAAgBC,SAASC,SAASC,UAAUC,cAAc;AACnF,OAAOC,WAAW;AAElB,SAASC,QAA8CC,uBAAuB;AAC9E,SAGEC,qBAEAC,uBACAC,uBACAC,eACAC,qBACK;AACP,SAASC,UAAU;AACnB,SAASC,qBAAqB;AAavB,IAAMC,mBAAmB,CAAC,EAC/BC,YACAC,IACAC,OAAO,WACPC,YAAY,UACZC,KACAC,SACAC,cACAC,YACAC,UACAC,UAAS,MACa;;;AACtB,UAAM,EAAEC,UAAS,IAAKC,gBAAAA;AACtB,UAAM,EAAEC,WAAWC,gBAAe,IAAKC,cACrC,OAAO;MACLb;MACAK;MACAG;MACAD;MACAD,YAAY;QACVA;QACAQ,sBAAsB;UACpBC,qBAAqB;UACrBC,eAAe;UACfC,aAAa;UACbC,cAAc;UACdC,eAAelB,SAAS;UACxBmB,QAAQ;UACR,GAAGhB;QACL,CAAA;QACAiB,sBAAsB;UACpBC,WAAW;UACXb;UACAc,oBAAoB;QACtB,CAAA;QACAC,oBAAoBtB,SAAAA;QAEpBuB,WAAW;UAAEC,YAAY;QAAK,CAAA;QAC9BC,eAAe;UAAEC,UAAUzB,MAAM;YAAC0B,eAAAA;cAAoBC;QAAU,CAAA;;QAGhEC,KAAKC,KAAKC,OAAOC,GAAGC,cAAAA,CAAAA;QACpBF,OAAOC,GAAGE,gBAAAA;QACVH,OAAOC,GAAGG,UAAAA;;QAGVlC,OAAO;UACLmC,QAAQJ,GAAG;YAAE/B;YAAKoC,MAAM,SAASvC,EAAAA;UAAQ,CAAA;UACzCwC,OAAAA;UACAC,SAAAA;UACAC,QAAQ;YAAEC,eAAeC,sBAAsBnC,SAAAA;UAAW,CAAA;;QAE5DoC,OAAOC,aAAAA;IACX,IACA;MAAC9C;MAAIM;MAAYG;MAAWP;MAAWM;MAAWD;MAAUJ;KAAI;AAIlE,WAAO,sBAAA,cAAC4C,OAAAA;MAAIC,KAAKrC;MAAWsC,WAAWC,GAAGnD,UAAAA;MAAc,GAAGa;;;;;AAC7D;AAGA,IAAMgC,wBAAwB,CAACnC,cAAAA;AAC7B,QAAM0C,QAAQC,eAAeC,OAAO5C,cAAc,SAAS6C,cAAcC,OAAOD,cAAcE,KAAK;AAEnG,QAAMC,gBAAgB,CAACC,UAAAA;AAErB,UAAMC,OAAOD,MAAME,SAAS,MAAA,IAAU,SAASF;AAC/C,UAAMG,WAAWF,QAAQG;AACzB,QAAI,CAACD,UAAU;AACb,aAAO;IACT;AAEA,UAAME,MAAMD,KAAKH,IAAAA;AACjB,QAAI,OAAOI,QAAQ,YAAY;AAC7B,aAAO;IACT;AAEA,WAAOZ,MAAMa,MAAM;MAACD;KAAI,KAAK;EAC/B;AAEA,SAAO,CAACE,SAAAA;AACN,WAAO;MACLC,KAAKC,OAAOjC,GAAG,KAAA,EACZnC,WAAW,2EAAA,EACXqE,SAAQ,GACHH,KAAKI,WAAWC,cAAcC,IAAI,CAAC,EAAEZ,MAAMa,KAAI,MACjDL,OAAOjC,GAAG,MAAA,EAAQnC,WAAW0D,cAAcE,IAAAA,CAAAA,EAAOa,KAAKA,IAAAA,CAAAA,KACpD,CAAA,CAAE,EAERC,MAAK;IACV;EACF;AACF;",
6
- "names": ["autocompletion", "completionKeymap", "javascript", "HighlightStyle", "lintKeymap", "Prec", "keymap", "tags", "continueKeymap", "tsAutocomplete", "tsFacet", "tsHover", "tsLinter", "tsSync", "React", "Domino", "useThemeContext", "InputModeExtensions", "createBasicExtensions", "createThemeExtensions", "defaultStyles", "useTextEditor", "mx", "isNonNullable", "TypescriptEditor", "classNames", "id", "role", "inputMode", "env", "options", "initialValue", "extensions", "scrollTo", "selection", "themeMode", "useThemeContext", "parentRef", "focusAttributes", "useTextEditor", "createBasicExtensions", "highlightActiveLine", "indentWithTab", "lineNumbers", "lineWrapping", "scrollPastEnd", "search", "createThemeExtensions", "monospace", "syntaxHighlighting", "InputModeExtensions", "javascript", "typescript", "autocompletion", "override", "tsAutocomplete", "undefined", "Prec", "high", "keymap", "of", "continueKeymap", "completionKeymap", "lintKeymap", "tsFacet", "path", "tsSync", "tsLinter", "tsHover", "renderTooltip", "createTooltipRenderer", "filter", "isNonNullable", "div", "ref", "className", "mx", "theme", "HighlightStyle", "define", "defaultStyles", "dark", "light", "classFromKind", "_kind", "kind", "endsWith", "validTag", "tags", "tag", "style", "info", "dom", "Domino", "children", "quickInfo", "displayParts", "map", "text", "build"]
7
- }