@dxos/plugin-script 0.7.5-labs.a279d8c → 0.7.5-labs.f5080a1

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 (171) hide show
  1. package/dist/lib/browser/{AutomationPanel-OOIRJFPJ.mjs → AutomationPanel-J3SZ5L3Y.mjs} +3 -3
  2. package/dist/lib/browser/{ScriptContainer-T2AOMDT3.mjs → ScriptContainer-LGW52UAJ.mjs} +67 -64
  3. package/dist/lib/browser/ScriptContainer-LGW52UAJ.mjs.map +7 -0
  4. package/dist/lib/browser/{chunk-SIOGRRPF.mjs → chunk-2UXYECEH.mjs} +19 -7
  5. package/dist/lib/browser/chunk-2UXYECEH.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-SJ4J527G.mjs → chunk-45LXDWNF.mjs} +2 -2
  7. package/dist/lib/browser/{chunk-ZM6T4HPR.mjs → chunk-6MOQ4BP3.mjs} +2 -2
  8. package/dist/lib/browser/chunk-FVVCAWNP.mjs +21 -0
  9. package/dist/lib/browser/chunk-FVVCAWNP.mjs.map +7 -0
  10. package/dist/lib/browser/{chunk-XPGBHZ3L.mjs → chunk-N46LE7FS.mjs} +2 -2
  11. package/dist/lib/browser/{chunk-REL2R7SB.mjs → chunk-VIX22OMB.mjs} +11 -3
  12. package/dist/lib/browser/chunk-VIX22OMB.mjs.map +7 -0
  13. package/dist/lib/browser/{compiler-HT53ILG7.mjs → compiler-K3FNRDDN.mjs} +3 -3
  14. package/dist/lib/browser/index.mjs +14 -12
  15. package/dist/lib/browser/index.mjs.map +3 -3
  16. package/dist/lib/browser/intent-resolver-CMKQTLBG.mjs +45 -0
  17. package/dist/lib/browser/intent-resolver-CMKQTLBG.mjs.map +7 -0
  18. package/dist/lib/browser/meta.json +1 -1
  19. package/dist/lib/browser/{react-surface-GAWVYTJ5.mjs → react-surface-XACNR5NR.mjs} +12 -14
  20. package/dist/lib/browser/react-surface-XACNR5NR.mjs.map +7 -0
  21. package/dist/lib/browser/{settings-YQQEU3DF.mjs → settings-SZCDKHWO.mjs} +3 -3
  22. package/dist/lib/browser/types.mjs +2 -2
  23. package/dist/lib/node/{AutomationPanel-EPRDDR3A.cjs → AutomationPanel-4M55FURO.cjs} +8 -8
  24. package/dist/lib/node/{ScriptContainer-BV56I4OL.cjs → ScriptContainer-UI2MDBYG.cjs} +70 -67
  25. package/dist/lib/node/ScriptContainer-UI2MDBYG.cjs.map +7 -0
  26. package/dist/lib/node/{chunk-EFTZN5X7.cjs → chunk-5UH3F7TA.cjs} +8 -5
  27. package/dist/lib/node/chunk-5UH3F7TA.cjs.map +7 -0
  28. package/dist/lib/node/{chunk-5V3XGLTR.cjs → chunk-73345ZL6.cjs} +23 -11
  29. package/dist/lib/node/chunk-73345ZL6.cjs.map +7 -0
  30. package/dist/lib/node/{chunk-A2DI2G4D.cjs → chunk-ALY3N6PW.cjs} +6 -6
  31. package/dist/lib/node/{chunk-6VKZJ4MH.cjs → chunk-DJGLGRQV.cjs} +6 -6
  32. package/dist/lib/node/{chunk-DQRAVZM7.cjs → chunk-IID7WUQS.cjs} +6 -6
  33. package/dist/lib/node/{chunk-TJ4BTPOS.cjs → chunk-PKT5DD3O.cjs} +12 -6
  34. package/dist/lib/node/chunk-PKT5DD3O.cjs.map +7 -0
  35. package/dist/lib/node/{compiler-457ZR24G.cjs → compiler-P2HQB22H.cjs} +7 -7
  36. package/dist/lib/node/index.cjs +32 -30
  37. package/dist/lib/node/index.cjs.map +3 -3
  38. package/dist/lib/node/{intent-resolver-SUAPE7H3.cjs → intent-resolver-V5ASU5DW.cjs} +31 -28
  39. package/dist/lib/node/intent-resolver-V5ASU5DW.cjs.map +7 -0
  40. package/dist/lib/node/meta.json +1 -1
  41. package/dist/lib/node/{react-surface-OMBMSFZT.cjs → react-surface-Y3RD5FW7.cjs} +23 -25
  42. package/dist/lib/node/react-surface-Y3RD5FW7.cjs.map +7 -0
  43. package/dist/lib/node/{settings-NGHDYAVK.cjs → settings-SZFSMSKM.cjs} +9 -9
  44. package/dist/lib/node/types.cjs +4 -4
  45. package/dist/lib/node/types.cjs.map +1 -1
  46. package/dist/lib/node-esm/{AutomationPanel-DMLAGQS5.mjs → AutomationPanel-W6SKG35R.mjs} +3 -3
  47. package/dist/lib/node-esm/{ScriptContainer-3S5VHJVR.mjs → ScriptContainer-F7SNP53Z.mjs} +67 -64
  48. package/dist/lib/node-esm/ScriptContainer-F7SNP53Z.mjs.map +7 -0
  49. package/dist/lib/node-esm/{chunk-XUWS7OTK.mjs → chunk-CGF7EOGD.mjs} +2 -2
  50. package/dist/lib/node-esm/{chunk-675XSDRN.mjs → chunk-CP5LXTK5.mjs} +2 -2
  51. package/dist/lib/node-esm/{chunk-JJZYWSD7.mjs → chunk-NBAL5DXN.mjs} +11 -3
  52. package/dist/lib/node-esm/chunk-NBAL5DXN.mjs.map +7 -0
  53. package/dist/lib/node-esm/{chunk-BHP545D7.mjs → chunk-P2V2Y5LV.mjs} +5 -2
  54. package/dist/lib/node-esm/chunk-P2V2Y5LV.mjs.map +7 -0
  55. package/dist/lib/node-esm/{chunk-XPIKUBGS.mjs → chunk-PRGBYF4B.mjs} +19 -7
  56. package/dist/lib/node-esm/chunk-PRGBYF4B.mjs.map +7 -0
  57. package/dist/lib/node-esm/{chunk-JHGOPQVO.mjs → chunk-UNQFIERE.mjs} +2 -2
  58. package/dist/lib/node-esm/{compiler-PEARFTFR.mjs → compiler-PDN46H4Y.mjs} +3 -3
  59. package/dist/lib/node-esm/index.mjs +14 -12
  60. package/dist/lib/node-esm/index.mjs.map +3 -3
  61. package/dist/lib/node-esm/intent-resolver-75BHFRUK.mjs +46 -0
  62. package/dist/lib/node-esm/intent-resolver-75BHFRUK.mjs.map +7 -0
  63. package/dist/lib/node-esm/meta.json +1 -1
  64. package/dist/lib/node-esm/{react-surface-J7NLV2V4.mjs → react-surface-PKUVZH4S.mjs} +12 -14
  65. package/dist/lib/node-esm/react-surface-PKUVZH4S.mjs.map +7 -0
  66. package/dist/lib/node-esm/{settings-XGXDY4NI.mjs → settings-GR4O2WHZ.mjs} +3 -3
  67. package/dist/lib/node-esm/types.mjs +2 -2
  68. package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
  69. package/dist/types/src/capabilities/index.d.ts +4 -4
  70. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  71. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  72. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  73. package/dist/types/src/components/ScriptContainer.d.ts +2 -2
  74. package/dist/types/src/components/ScriptContainer.d.ts.map +1 -1
  75. package/dist/types/src/components/ScriptSettingsPanel.d.ts.map +1 -1
  76. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +1 -1
  77. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  78. package/dist/types/src/components/index.d.ts +1 -1
  79. package/dist/types/src/components/index.d.ts.map +1 -1
  80. package/dist/types/src/hooks/deploy.d.ts.map +1 -0
  81. package/dist/types/src/hooks/format.d.ts.map +1 -0
  82. package/dist/types/src/hooks/index.d.ts +7 -0
  83. package/dist/types/src/hooks/index.d.ts.map +1 -0
  84. package/dist/types/src/{components/ScriptToolbar/templateSelect.d.ts → hooks/template.d.ts} +1 -1
  85. package/dist/types/src/hooks/template.d.ts.map +1 -0
  86. package/dist/types/src/{components/ScriptToolbar → hooks}/useToolbarAction.d.ts +1 -1
  87. package/dist/types/src/hooks/useToolbarAction.d.ts.map +1 -0
  88. package/dist/types/src/hooks/useToolbarState.d.ts.map +1 -0
  89. package/dist/types/src/hooks/view.d.ts.map +1 -0
  90. package/dist/types/src/meta.d.ts +1 -0
  91. package/dist/types/src/meta.d.ts.map +1 -1
  92. package/dist/types/src/templates/echo.d.ts.map +1 -1
  93. package/dist/types/src/templates/forex-effect.d.ts +6 -0
  94. package/dist/types/src/templates/forex-effect.d.ts.map +1 -0
  95. package/dist/types/src/templates/forex.d.ts +1 -1
  96. package/dist/types/src/templates/forex.d.ts.map +1 -1
  97. package/dist/types/src/templates/index.d.ts.map +1 -1
  98. package/dist/types/src/translations.d.ts +6 -0
  99. package/dist/types/src/translations.d.ts.map +1 -1
  100. package/dist/types/tsconfig.tsbuildinfo +1 -1
  101. package/package.json +42 -41
  102. package/src/ScriptPlugin.tsx +4 -12
  103. package/src/capabilities/intent-resolver.ts +25 -22
  104. package/src/capabilities/react-surface.tsx +8 -8
  105. package/src/components/ScriptContainer.tsx +10 -5
  106. package/src/components/ScriptSettings/ScriptSettings.tsx +3 -3
  107. package/src/components/ScriptSettingsPanel.tsx +14 -0
  108. package/src/components/ScriptToolbar/ScriptToolbar.tsx +8 -6
  109. package/src/components/TypescriptEditor/TypescriptEditor.tsx +1 -1
  110. package/src/{components/ScriptToolbar → hooks}/deploy.ts +3 -2
  111. package/src/{components/ScriptToolbar → hooks}/format.ts +1 -1
  112. package/src/hooks/index.ts +11 -0
  113. package/src/{components/ScriptToolbar/templateSelect.ts → hooks/template.ts} +2 -2
  114. package/src/{components/ScriptToolbar → hooks}/useToolbarAction.ts +1 -1
  115. package/src/{components/ScriptToolbar → hooks}/view.ts +1 -1
  116. package/src/meta.ts +3 -1
  117. package/src/templates/echo.ts +5 -1
  118. package/src/templates/forex-effect.ts +42 -0
  119. package/src/templates/forex.ts +21 -13
  120. package/src/templates/index.ts +7 -0
  121. package/src/translations.ts +2 -0
  122. package/dist/lib/browser/ScriptContainer-T2AOMDT3.mjs.map +0 -7
  123. package/dist/lib/browser/chunk-5BU5ERNU.mjs +0 -18
  124. package/dist/lib/browser/chunk-5BU5ERNU.mjs.map +0 -7
  125. package/dist/lib/browser/chunk-REL2R7SB.mjs.map +0 -7
  126. package/dist/lib/browser/chunk-SIOGRRPF.mjs.map +0 -7
  127. package/dist/lib/browser/intent-resolver-YPHT6HDZ.mjs +0 -42
  128. package/dist/lib/browser/intent-resolver-YPHT6HDZ.mjs.map +0 -7
  129. package/dist/lib/browser/react-surface-GAWVYTJ5.mjs.map +0 -7
  130. package/dist/lib/node/ScriptContainer-BV56I4OL.cjs.map +0 -7
  131. package/dist/lib/node/chunk-5V3XGLTR.cjs.map +0 -7
  132. package/dist/lib/node/chunk-EFTZN5X7.cjs.map +0 -7
  133. package/dist/lib/node/chunk-TJ4BTPOS.cjs.map +0 -7
  134. package/dist/lib/node/intent-resolver-SUAPE7H3.cjs.map +0 -7
  135. package/dist/lib/node/react-surface-OMBMSFZT.cjs.map +0 -7
  136. package/dist/lib/node-esm/ScriptContainer-3S5VHJVR.mjs.map +0 -7
  137. package/dist/lib/node-esm/chunk-BHP545D7.mjs.map +0 -7
  138. package/dist/lib/node-esm/chunk-JJZYWSD7.mjs.map +0 -7
  139. package/dist/lib/node-esm/chunk-XPIKUBGS.mjs.map +0 -7
  140. package/dist/lib/node-esm/intent-resolver-SZJXQ3CW.mjs +0 -43
  141. package/dist/lib/node-esm/intent-resolver-SZJXQ3CW.mjs.map +0 -7
  142. package/dist/lib/node-esm/react-surface-J7NLV2V4.mjs.map +0 -7
  143. package/dist/types/src/components/ScriptToolbar/deploy.d.ts.map +0 -1
  144. package/dist/types/src/components/ScriptToolbar/format.d.ts.map +0 -1
  145. package/dist/types/src/components/ScriptToolbar/templateSelect.d.ts.map +0 -1
  146. package/dist/types/src/components/ScriptToolbar/useToolbarAction.d.ts.map +0 -1
  147. package/dist/types/src/components/ScriptToolbar/useToolbarState.d.ts.map +0 -1
  148. package/dist/types/src/components/ScriptToolbar/view.d.ts.map +0 -1
  149. /package/dist/lib/browser/{AutomationPanel-OOIRJFPJ.mjs.map → AutomationPanel-J3SZ5L3Y.mjs.map} +0 -0
  150. /package/dist/lib/browser/{chunk-SJ4J527G.mjs.map → chunk-45LXDWNF.mjs.map} +0 -0
  151. /package/dist/lib/browser/{chunk-ZM6T4HPR.mjs.map → chunk-6MOQ4BP3.mjs.map} +0 -0
  152. /package/dist/lib/browser/{chunk-XPGBHZ3L.mjs.map → chunk-N46LE7FS.mjs.map} +0 -0
  153. /package/dist/lib/browser/{compiler-HT53ILG7.mjs.map → compiler-K3FNRDDN.mjs.map} +0 -0
  154. /package/dist/lib/browser/{settings-YQQEU3DF.mjs.map → settings-SZCDKHWO.mjs.map} +0 -0
  155. /package/dist/lib/node/{AutomationPanel-EPRDDR3A.cjs.map → AutomationPanel-4M55FURO.cjs.map} +0 -0
  156. /package/dist/lib/node/{chunk-A2DI2G4D.cjs.map → chunk-ALY3N6PW.cjs.map} +0 -0
  157. /package/dist/lib/node/{chunk-6VKZJ4MH.cjs.map → chunk-DJGLGRQV.cjs.map} +0 -0
  158. /package/dist/lib/node/{chunk-DQRAVZM7.cjs.map → chunk-IID7WUQS.cjs.map} +0 -0
  159. /package/dist/lib/node/{compiler-457ZR24G.cjs.map → compiler-P2HQB22H.cjs.map} +0 -0
  160. /package/dist/lib/node/{settings-NGHDYAVK.cjs.map → settings-SZFSMSKM.cjs.map} +0 -0
  161. /package/dist/lib/node-esm/{AutomationPanel-DMLAGQS5.mjs.map → AutomationPanel-W6SKG35R.mjs.map} +0 -0
  162. /package/dist/lib/node-esm/{chunk-XUWS7OTK.mjs.map → chunk-CGF7EOGD.mjs.map} +0 -0
  163. /package/dist/lib/node-esm/{chunk-675XSDRN.mjs.map → chunk-CP5LXTK5.mjs.map} +0 -0
  164. /package/dist/lib/node-esm/{chunk-JHGOPQVO.mjs.map → chunk-UNQFIERE.mjs.map} +0 -0
  165. /package/dist/lib/node-esm/{compiler-PEARFTFR.mjs.map → compiler-PDN46H4Y.mjs.map} +0 -0
  166. /package/dist/lib/node-esm/{settings-XGXDY4NI.mjs.map → settings-GR4O2WHZ.mjs.map} +0 -0
  167. /package/dist/types/src/{components/ScriptToolbar → hooks}/deploy.d.ts +0 -0
  168. /package/dist/types/src/{components/ScriptToolbar → hooks}/format.d.ts +0 -0
  169. /package/dist/types/src/{components/ScriptToolbar → hooks}/useToolbarState.d.ts +0 -0
  170. /package/dist/types/src/{components/ScriptToolbar → hooks}/view.d.ts +0 -0
  171. /package/src/{components/ScriptToolbar → hooks}/useToolbarState.ts +0 -0
@@ -3,30 +3,28 @@ import {
3
3
  ScriptContainer,
4
4
  ScriptSettings,
5
5
  ScriptSettingsPanel
6
- } from "./chunk-SIOGRRPF.mjs";
6
+ } from "./chunk-2UXYECEH.mjs";
7
7
  import {
8
8
  ScriptCapabilities
9
- } from "./chunk-ZM6T4HPR.mjs";
9
+ } from "./chunk-6MOQ4BP3.mjs";
10
10
  import {
11
11
  SCRIPT_PLUGIN
12
- } from "./chunk-5BU5ERNU.mjs";
12
+ } from "./chunk-FVVCAWNP.mjs";
13
13
 
14
14
  // packages/plugins/experimental/plugin-script/src/capabilities/react-surface.tsx
15
15
  import React from "react";
16
16
  import { Capabilities, contributes, createSurface, useCapability } from "@dxos/app-framework";
17
17
  import { ScriptType } from "@dxos/functions";
18
+ import { SettingsStore } from "@dxos/local-storage";
18
19
  import { Clipboard } from "@dxos/react-ui";
19
20
  var react_surface_default = () => contributes(Capabilities.ReactSurface, [
20
21
  createSurface({
21
22
  id: `${SCRIPT_PLUGIN}/settings`,
22
- role: "settings",
23
- filter: (data) => data.subject === SCRIPT_PLUGIN,
24
- component: () => {
25
- const settings = useCapability(Capabilities.SettingsStore).getStore(SCRIPT_PLUGIN).value;
26
- return /* @__PURE__ */ React.createElement(ScriptSettings, {
27
- settings
28
- });
29
- }
23
+ role: "article",
24
+ filter: (data) => data.subject instanceof SettingsStore && data.subject.prefix === SCRIPT_PLUGIN,
25
+ component: ({ data: { subject } }) => /* @__PURE__ */ React.createElement(ScriptSettings, {
26
+ settings: subject.value
27
+ })
30
28
  }),
31
29
  createSurface({
32
30
  id: `${SCRIPT_PLUGIN}/article`,
@@ -34,7 +32,7 @@ var react_surface_default = () => contributes(Capabilities.ReactSurface, [
34
32
  filter: (data) => data.subject instanceof ScriptType,
35
33
  component: ({ data, role }) => {
36
34
  const compiler = useCapability(ScriptCapabilities.Compiler);
37
- const settings = useCapability(Capabilities.SettingsStore).getStore(SCRIPT_PLUGIN).value;
35
+ const settings = useCapability(Capabilities.SettingsStore).getStore(SCRIPT_PLUGIN)?.value;
38
36
  return /* @__PURE__ */ React.createElement(ScriptContainer, {
39
37
  role,
40
38
  script: data.subject,
@@ -46,7 +44,7 @@ var react_surface_default = () => contributes(Capabilities.ReactSurface, [
46
44
  createSurface({
47
45
  id: `${SCRIPT_PLUGIN}/automation`,
48
46
  role: "complementary--automation",
49
- disposition: "hoist",
47
+ position: "hoist",
50
48
  filter: (data) => data.subject instanceof ScriptType,
51
49
  component: ({ data }) => /* @__PURE__ */ React.createElement(AutomationPanel, {
52
50
  subject: data.subject
@@ -64,4 +62,4 @@ var react_surface_default = () => contributes(Capabilities.ReactSurface, [
64
62
  export {
65
63
  react_surface_default as default
66
64
  };
67
- //# sourceMappingURL=react-surface-GAWVYTJ5.mjs.map
65
+ //# sourceMappingURL=react-surface-XACNR5NR.mjs.map
@@ -0,0 +1,7 @@
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 { ScriptType } from '@dxos/functions';\nimport { SettingsStore } from '@dxos/local-storage';\nimport { Clipboard } from '@dxos/react-ui';\n\nimport { ScriptCapabilities } from './capabilities';\nimport { AutomationPanel, ScriptSettings, ScriptContainer, ScriptSettingsPanel } from '../components';\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 } => data.subject instanceof ScriptType,\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 <ScriptContainer role={role} script={data.subject} settings={settings} env={compiler.environment} />;\n },\n }),\n createSurface({\n id: `${SCRIPT_PLUGIN}/automation`,\n role: 'complementary--automation',\n position: 'hoist',\n filter: (data): data is { subject: ScriptType } => data.subject instanceof ScriptType,\n component: ({ data }) => <AutomationPanel subject={data.subject} />,\n }),\n createSurface({\n id: `${SCRIPT_PLUGIN}/settings-panel`,\n role: 'complementary--settings',\n filter: (data): data is { subject: ScriptType } => data.subject instanceof ScriptType,\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,kBAAkB;AAC3B,SAASC,qBAAqB;AAC9B,SAASC,iBAAiB;AAO1B,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,SAA0CA,KAAKC,mBAAmBO;IAC3EJ,WAAW,CAAC,EAAEJ,MAAMF,KAAI,MAAE;AACxB,YAAMW,WAAWC,cAAcC,mBAAmBC,QAAQ;AAE1D,YAAMN,WAAWI,cAAcjB,aAAaS,aAAa,EAAEW,SAA8BhB,aAAAA,GAAgBU;AACzG,aAAO,sBAAA,cAACO,iBAAAA;QAAgBhB;QAAYiB,QAAQf,KAAKC;QAASK;QAAoBU,KAAKP,SAASQ;;IAC9F;EACF,CAAA;EACAtB,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNoB,UAAU;IACVnB,QAAQ,CAACC,SAA0CA,KAAKC,mBAAmBO;IAC3EJ,WAAW,CAAC,EAAEJ,KAAI,MAAO,sBAAA,cAACmB,iBAAAA;MAAgBlB,SAASD,KAAKC;;EAC1D,CAAA;EACAN,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SAA0CA,KAAKC,mBAAmBO;IAC3EJ,WAAW,CAAC,EAAEJ,KAAI,MAChB,sBAAA,cAACoB,UAAUC,UAAQ,MACjB,sBAAA,cAACC,qBAAAA;MAAoBP,QAAQf,KAAKC;;EAGxC,CAAA;CACD;",
6
+ "names": ["React", "Capabilities", "contributes", "createSurface", "useCapability", "ScriptType", "SettingsStore", "Clipboard", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "SCRIPT_PLUGIN", "role", "filter", "data", "subject", "SettingsStore", "prefix", "component", "ScriptSettings", "settings", "value", "ScriptType", "compiler", "useCapability", "ScriptCapabilities", "Compiler", "getStore", "ScriptContainer", "script", "env", "environment", "position", "AutomationPanel", "Clipboard", "Provider", "ScriptSettingsPanel"]
7
+ }
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  ScriptSettingsSchema
3
- } from "./chunk-XPGBHZ3L.mjs";
3
+ } from "./chunk-N46LE7FS.mjs";
4
4
  import {
5
5
  SCRIPT_PLUGIN
6
- } from "./chunk-5BU5ERNU.mjs";
6
+ } from "./chunk-FVVCAWNP.mjs";
7
7
 
8
8
  // packages/plugins/experimental/plugin-script/src/capabilities/settings.ts
9
9
  import { Capabilities, contributes } from "@dxos/app-framework";
@@ -21,4 +21,4 @@ var settings_default = () => {
21
21
  export {
22
22
  settings_default as default
23
23
  };
24
- //# sourceMappingURL=settings-YQQEU3DF.mjs.map
24
+ //# sourceMappingURL=settings-SZCDKHWO.mjs.map
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  ScriptAction,
3
3
  ScriptSettingsSchema
4
- } from "./chunk-XPGBHZ3L.mjs";
5
- import "./chunk-5BU5ERNU.mjs";
4
+ } from "./chunk-N46LE7FS.mjs";
5
+ import "./chunk-FVVCAWNP.mjs";
6
6
  export {
7
7
  ScriptAction,
8
8
  ScriptSettingsSchema
@@ -26,14 +26,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var AutomationPanel_EPRDDR3A_exports = {};
30
- __export(AutomationPanel_EPRDDR3A_exports, {
29
+ var AutomationPanel_4M55FURO_exports = {};
30
+ __export(AutomationPanel_4M55FURO_exports, {
31
31
  AutomationPanel: () => AutomationPanel,
32
32
  default: () => AutomationPanel_default
33
33
  });
34
- module.exports = __toCommonJS(AutomationPanel_EPRDDR3A_exports);
35
- var import_chunk_DQRAVZM7 = require("./chunk-DQRAVZM7.cjs");
36
- var import_chunk_EFTZN5X7 = require("./chunk-EFTZN5X7.cjs");
34
+ module.exports = __toCommonJS(AutomationPanel_4M55FURO_exports);
35
+ var import_chunk_IID7WUQS = require("./chunk-IID7WUQS.cjs");
36
+ var import_chunk_5UH3F7TA = require("./chunk-5UH3F7TA.cjs");
37
37
  var import_react = __toESM(require("react"));
38
38
  var import_debug = require("@dxos/debug");
39
39
  var import_functions = require("@dxos/functions");
@@ -41,7 +41,7 @@ var import_react_client = require("@dxos/react-client");
41
41
  var import_echo = require("@dxos/react-client/echo");
42
42
  var import_react_ui = require("@dxos/react-ui");
43
43
  var AutomationPanel = ({ subject }) => {
44
- const { t } = (0, import_react_ui.useTranslation)(import_chunk_EFTZN5X7.SCRIPT_PLUGIN);
44
+ const { t } = (0, import_react_ui.useTranslation)(import_chunk_5UH3F7TA.SCRIPT_PLUGIN);
45
45
  const space = (0, import_echo.getSpace)(subject);
46
46
  const functions = (0, import_echo.useQuery)(space ?? void 0, subject instanceof import_functions.ScriptType ? import_echo.Filter.schema(import_functions.FunctionType, {
47
47
  source: subject
@@ -80,7 +80,7 @@ var ChatPanel = ({ fn, subject }) => {
80
80
  space,
81
81
  subject
82
82
  ]);
83
- return /* @__PURE__ */ import_react.default.createElement(import_chunk_DQRAVZM7.DebugPanel, {
83
+ return /* @__PURE__ */ import_react.default.createElement(import_chunk_IID7WUQS.DebugPanel, {
84
84
  functionUrl,
85
85
  classNames: "flex-1"
86
86
  });
@@ -101,4 +101,4 @@ var AutomationPanel_default = AutomationPanel;
101
101
  0 && (module.exports = {
102
102
  AutomationPanel
103
103
  });
104
- //# sourceMappingURL=AutomationPanel-EPRDDR3A.cjs.map
104
+ //# sourceMappingURL=AutomationPanel-4M55FURO.cjs.map
@@ -26,16 +26,16 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var ScriptContainer_BV56I4OL_exports = {};
30
- __export(ScriptContainer_BV56I4OL_exports, {
29
+ var ScriptContainer_UI2MDBYG_exports = {};
30
+ __export(ScriptContainer_UI2MDBYG_exports, {
31
31
  ScriptContainer: () => ScriptContainer,
32
32
  default: () => ScriptContainer_default
33
33
  });
34
- module.exports = __toCommonJS(ScriptContainer_BV56I4OL_exports);
34
+ module.exports = __toCommonJS(ScriptContainer_UI2MDBYG_exports);
35
35
  var import_chunk_T4TXCRN5 = require("./chunk-T4TXCRN5.cjs");
36
- var import_chunk_TJ4BTPOS = require("./chunk-TJ4BTPOS.cjs");
37
- var import_chunk_DQRAVZM7 = require("./chunk-DQRAVZM7.cjs");
38
- var import_chunk_EFTZN5X7 = require("./chunk-EFTZN5X7.cjs");
36
+ var import_chunk_PKT5DD3O = require("./chunk-PKT5DD3O.cjs");
37
+ var import_chunk_IID7WUQS = require("./chunk-IID7WUQS.cjs");
38
+ var import_chunk_5UH3F7TA = require("./chunk-5UH3F7TA.cjs");
39
39
  var import_react = __toESM(require("react"));
40
40
  var import_echo = require("@dxos/react-client/echo");
41
41
  var import_halo = require("@dxos/react-client/halo");
@@ -64,9 +64,9 @@ var import_react5 = require("react");
64
64
  var import_functions2 = require("@dxos/functions");
65
65
  var import_live_object = require("@dxos/live-object");
66
66
  var import_react_ui_menu4 = require("@dxos/react-ui-menu");
67
+ var import_react_ui_menu5 = require("@dxos/react-ui-menu");
67
68
  var import_react6 = require("react");
68
69
  var import_log3 = require("@dxos/log");
69
- var import_react_ui_menu5 = require("@dxos/react-ui-menu");
70
70
  var import_react7 = require("react");
71
71
  var import_live_object2 = require("@dxos/live-object");
72
72
  var import_lang_javascript = require("@codemirror/lang-javascript");
@@ -81,13 +81,13 @@ var import_react8 = __toESM(require("react"));
81
81
  var import_react_ui3 = require("@dxos/react-ui");
82
82
  var import_react_ui_editor3 = require("@dxos/react-ui-editor");
83
83
  var import_util = require("@dxos/util");
84
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/deploy.ts";
84
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/hooks/deploy.ts";
85
85
  var createDeploy = (state) => {
86
86
  const errorItem = (0, import_react_ui_menu2.createMenuAction)("error", {
87
87
  label: state.error ?? [
88
88
  "no error label",
89
89
  {
90
- ns: import_chunk_EFTZN5X7.SCRIPT_PLUGIN
90
+ ns: import_chunk_5UH3F7TA.SCRIPT_PLUGIN
91
91
  }
92
92
  ],
93
93
  icon: "ph--warning-circle--regular",
@@ -98,7 +98,7 @@ var createDeploy = (state) => {
98
98
  label: [
99
99
  state.deploying ? "pending label" : "deploy label",
100
100
  {
101
- ns: import_chunk_EFTZN5X7.SCRIPT_PLUGIN
101
+ ns: import_chunk_5UH3F7TA.SCRIPT_PLUGIN
102
102
  }
103
103
  ],
104
104
  icon: state.deploying ? "ph--spinner-gap--regular" : "ph--cloud-arrow-up--regular",
@@ -110,7 +110,7 @@ var createDeploy = (state) => {
110
110
  label: [
111
111
  "copy link label",
112
112
  {
113
- ns: import_chunk_EFTZN5X7.SCRIPT_PLUGIN
113
+ ns: import_chunk_5UH3F7TA.SCRIPT_PLUGIN
114
114
  }
115
115
  ],
116
116
  icon: "ph--link--regular",
@@ -182,7 +182,7 @@ var useDeployHandler = ({ state, script }) => {
182
182
  state,
183
183
  script
184
184
  });
185
- const { t } = (0, import_react_ui2.useTranslation)(import_chunk_EFTZN5X7.SCRIPT_PLUGIN);
185
+ const { t } = (0, import_react_ui2.useTranslation)(import_chunk_5UH3F7TA.SCRIPT_PLUGIN);
186
186
  return (0, import_react3.useCallback)(async () => {
187
187
  if (!script.source || !space) {
188
188
  return;
@@ -228,6 +228,7 @@ var useDeployHandler = ({ state, script }) => {
228
228
  source: (0, import_echo3.makeRef)(script)
229
229
  }));
230
230
  script.changed = false;
231
+ deployedFunction.description = script.description;
231
232
  if (meta.inputSchema) {
232
233
  deployedFunction.inputSchema = meta.inputSchema;
233
234
  } else {
@@ -235,7 +236,7 @@ var useDeployHandler = ({ state, script }) => {
235
236
  functionId
236
237
  }, {
237
238
  F: __dxlog_file,
238
- L: 137,
239
+ L: 138,
239
240
  S: void 0,
240
241
  C: (f, a) => f(...a)
241
242
  });
@@ -245,7 +246,7 @@ var useDeployHandler = ({ state, script }) => {
245
246
  } catch (err) {
246
247
  import_log.log.catch(err, void 0, {
247
248
  F: __dxlog_file,
248
- L: 144,
249
+ L: 145,
249
250
  S: void 0,
250
251
  C: (f, a) => f(...a)
251
252
  });
@@ -271,13 +272,13 @@ var useCopyHandler = ({ state }) => (0, import_react3.useCallback)(async () => {
271
272
  }, [
272
273
  state.functionUrl
273
274
  ]);
274
- var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/format.ts";
275
+ var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/hooks/format.ts";
275
276
  var createFormat = () => {
276
277
  const formatAction = (0, import_react_ui_menu3.createMenuAction)("format", {
277
278
  label: [
278
279
  "format label",
279
280
  {
280
- ns: import_chunk_EFTZN5X7.SCRIPT_PLUGIN
281
+ ns: import_chunk_5UH3F7TA.SCRIPT_PLUGIN
281
282
  }
282
283
  ],
283
284
  icon: "ph--magic-wand--regular"
@@ -324,14 +325,14 @@ var createTemplateSelectGroup = () => {
324
325
  label: [
325
326
  "template select group label",
326
327
  {
327
- ns: import_chunk_EFTZN5X7.SCRIPT_PLUGIN
328
+ ns: import_chunk_5UH3F7TA.SCRIPT_PLUGIN
328
329
  }
329
330
  ],
330
331
  variant: "dropdownMenu"
331
332
  });
332
333
  };
333
334
  var createTemplateSelectActions = () => {
334
- return import_chunk_TJ4BTPOS.templates.map((template) => {
335
+ return import_chunk_PKT5DD3O.templates.map((template) => {
335
336
  return (0, import_react_ui_menu4.createMenuAction)(`template--${template.id}`, {
336
337
  label: template.name,
337
338
  value: template.id,
@@ -361,7 +362,7 @@ var createTemplateSelect = () => {
361
362
  };
362
363
  var useTemplateSelectHandler = ({ script }) => {
363
364
  return (0, import_react5.useCallback)((templateId) => {
364
- const template = import_chunk_TJ4BTPOS.templates.find((template2) => template2.id === templateId);
365
+ const template = import_chunk_PKT5DD3O.templates.find((template2) => template2.id === templateId);
365
366
  if (template) {
366
367
  script.name = template.name;
367
368
  script.source.target.content = template.source;
@@ -381,44 +382,6 @@ var useTemplateSelectHandler = ({ script }) => {
381
382
  script
382
383
  ]);
383
384
  };
384
- var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/useToolbarAction.ts";
385
- var useToolbarAction = (props) => {
386
- const handleTemplateSelect = useTemplateSelectHandler(props);
387
- const handleFormat = useFormatHandler(props);
388
- const handleDeploy = useDeployHandler(props);
389
- const handleCopy = useCopyHandler(props);
390
- return (0, import_react6.useCallback)((action) => {
391
- switch (action.properties.type) {
392
- case "template":
393
- handleTemplateSelect(action.properties.value);
394
- break;
395
- case "view":
396
- props.state.view = action.properties.value;
397
- break;
398
- case "format":
399
- void handleFormat();
400
- break;
401
- case "deploy":
402
- void handleDeploy();
403
- break;
404
- case "copy":
405
- void handleCopy();
406
- break;
407
- default:
408
- import_log3.log.error("Unknown action type", action, {
409
- F: __dxlog_file3,
410
- L: 49,
411
- S: void 0,
412
- C: (f, a) => f(...a)
413
- });
414
- }
415
- }, [
416
- handleTemplateSelect,
417
- handleFormat,
418
- handleDeploy,
419
- handleCopy
420
- ]);
421
- };
422
385
  var views = {
423
386
  editor: "ph--code--regular",
424
387
  split: "ph--square-split-vertical--regular",
@@ -429,7 +392,7 @@ var createViewGroupItem = (state) => {
429
392
  label: [
430
393
  "view group label",
431
394
  {
432
- ns: import_chunk_EFTZN5X7.SCRIPT_PLUGIN
395
+ ns: import_chunk_5UH3F7TA.SCRIPT_PLUGIN
433
396
  }
434
397
  ],
435
398
  variant: "dropdownMenu",
@@ -445,7 +408,7 @@ var createViewActions = (state) => {
445
408
  label: [
446
409
  `view ${viewType} label`,
447
410
  {
448
- ns: import_chunk_EFTZN5X7.SCRIPT_PLUGIN
411
+ ns: import_chunk_5UH3F7TA.SCRIPT_PLUGIN
449
412
  }
450
413
  ],
451
414
  icon,
@@ -473,6 +436,47 @@ var createView = (state) => {
473
436
  ]
474
437
  };
475
438
  };
439
+ var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/hooks/useToolbarAction.ts";
440
+ var useToolbarAction = (props) => {
441
+ const handleTemplateSelect = useTemplateSelectHandler(props);
442
+ const handleFormat = useFormatHandler(props);
443
+ const handleDeploy = useDeployHandler(props);
444
+ const handleCopy = useCopyHandler(props);
445
+ return (0, import_react6.useCallback)((action) => {
446
+ switch (action.properties.type) {
447
+ case "template":
448
+ handleTemplateSelect(action.properties.value);
449
+ break;
450
+ case "view":
451
+ props.state.view = action.properties.value;
452
+ break;
453
+ case "format":
454
+ void handleFormat();
455
+ break;
456
+ case "deploy":
457
+ void handleDeploy();
458
+ break;
459
+ case "copy":
460
+ void handleCopy();
461
+ break;
462
+ default:
463
+ import_log3.log.error("Unknown action type", action, {
464
+ F: __dxlog_file3,
465
+ L: 49,
466
+ S: void 0,
467
+ C: (f, a) => f(...a)
468
+ });
469
+ }
470
+ }, [
471
+ handleTemplateSelect,
472
+ handleFormat,
473
+ handleDeploy,
474
+ handleCopy
475
+ ]);
476
+ };
477
+ var useToolbarState = (initialState = {}) => {
478
+ return (0, import_react7.useMemo)(() => (0, import_live_object2.create)(initialState), []);
479
+ };
476
480
  var createToolbar = (state) => {
477
481
  const templateSelect = createTemplateSelect();
478
482
  const format2 = createFormat();
@@ -518,9 +522,6 @@ var ScriptToolbar = ({ script, role, state, classNames }) => {
518
522
  classNames
519
523
  }))));
520
524
  };
521
- var useToolbarState = (initialState = {}) => {
522
- return (0, import_react7.useMemo)(() => (0, import_live_object2.create)(initialState), []);
523
- };
524
525
  var TypescriptEditor = ({ id, env, className, initialValue, extensions, scrollTo, selection, toolbar, inputMode = "vscode" }) => {
525
526
  const { themeMode } = (0, import_react_ui3.useThemeContext)();
526
527
  const { parentRef, focusAttributes } = (0, import_react_ui_editor3.useTextEditor)(() => ({
@@ -615,7 +616,7 @@ var createTooltipRenderer = (themeMode) => {
615
616
  };
616
617
  return (info) => {
617
618
  const div = document.createElement("div");
618
- div.className = "p-1 rounded border border-separator bg-base xs:max-w-80 max-w-lg";
619
+ div.className = "p-1 rounded border border-separator bg-baseSurface xs:max-w-80 max-w-lg";
619
620
  if (info.quickInfo?.displayParts) {
620
621
  for (const part of info.quickInfo.displayParts) {
621
622
  const span = div.appendChild(document.createElement("span"));
@@ -628,7 +629,9 @@ var createTooltipRenderer = (themeMode) => {
628
629
  };
629
630
  };
630
631
  };
631
- var ScriptContainer = ({ role, classNames, script, settings, env }) => {
632
+ var ScriptContainer = ({ role, classNames, script, settings = {
633
+ editorInputMode: "vscode"
634
+ }, env }) => {
632
635
  const identity = (0, import_halo.useIdentity)();
633
636
  const space = (0, import_echo.getSpace)(script);
634
637
  const extensions = (0, import_react.useMemo)(() => [
@@ -654,7 +657,7 @@ var ScriptContainer = ({ role, classNames, script, settings, env }) => {
654
657
  identity
655
658
  ]);
656
659
  const state = useToolbarState({
657
- view: "split"
660
+ view: "editor"
658
661
  });
659
662
  useDeployState({
660
663
  state,
@@ -677,7 +680,7 @@ var ScriptContainer = ({ role, classNames, script, settings, env }) => {
677
680
  className: (0, import_react_ui_editor.stackItemContentEditorClassNames)(role),
678
681
  inputMode: settings.editorInputMode,
679
682
  toolbar: true
680
- }), state.view !== "editor" && /* @__PURE__ */ import_react.default.createElement(import_chunk_DQRAVZM7.DebugPanel, {
683
+ }), state.view !== "editor" && /* @__PURE__ */ import_react.default.createElement(import_chunk_IID7WUQS.DebugPanel, {
681
684
  functionUrl: state.functionUrl
682
685
  })));
683
686
  };
@@ -686,4 +689,4 @@ var ScriptContainer_default = ScriptContainer;
686
689
  0 && (module.exports = {
687
690
  ScriptContainer
688
691
  });
689
- //# sourceMappingURL=ScriptContainer-BV56I4OL.cjs.map
692
+ //# sourceMappingURL=ScriptContainer-UI2MDBYG.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/ScriptContainer.tsx", "../../../src/components/ScriptToolbar/ScriptToolbar.tsx", "../../../src/hooks/deploy.ts", "../../../src/hooks/format.ts", "../../../src/hooks/template.ts", "../../../src/hooks/view.ts", "../../../src/hooks/useToolbarAction.ts", "../../../src/hooks/useToolbarState.ts", "../../../src/components/TypescriptEditor/TypescriptEditor.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useMemo } from 'react';\n\nimport { type ScriptType } from '@dxos/functions';\nimport { createDocAccessor, getSpace } from '@dxos/react-client/echo';\nimport { useIdentity } from '@dxos/react-client/halo';\nimport { type ThemedClassName } from '@dxos/react-ui';\nimport { createDataExtensions, listener, stackItemContentEditorClassNames } from '@dxos/react-ui-editor';\nimport { StackItem } from '@dxos/react-ui-stack';\nimport { mx } from '@dxos/react-ui-theme';\n\nimport { DebugPanel } from './DebugPanel';\nimport { ScriptToolbar } from './ScriptToolbar';\nimport { TypescriptEditor, type TypescriptEditorProps } from './TypescriptEditor';\nimport { useDeployState, useToolbarState } from '../hooks';\nimport { type ScriptSettingsProps } from '../types';\n\nexport type ScriptEditorProps = ThemedClassName<{\n script: ScriptType;\n settings?: ScriptSettingsProps;\n role?: string;\n}> &\n Pick<TypescriptEditorProps, 'env'>;\n\nexport const ScriptContainer = ({\n role,\n classNames,\n script,\n settings = { editorInputMode: 'vscode' },\n env,\n}: ScriptEditorProps) => {\n const identity = useIdentity();\n const space = getSpace(script);\n\n const extensions = useMemo(\n () => [\n listener({\n onChange: (text) => {\n if (script.source.target && script.source.target.content !== text) {\n script.changed = true;\n }\n },\n }),\n createDataExtensions({\n id: script.id,\n text: script.source.target && createDocAccessor(script.source.target, ['content']),\n space,\n identity,\n }),\n ],\n [script, script.source.target, space, identity],\n );\n\n const state = useToolbarState({ view: 'editor' });\n useDeployState({ state, script });\n\n return (\n <StackItem.Content toolbar>\n <ScriptToolbar state={state} role={role} script={script} />\n <div role='none' className={mx('flex flex-col w-full overflow-hidden divide-y divide-separator', classNames)}>\n {state.view !== 'debug' && (\n <TypescriptEditor\n id={script.id}\n env={env}\n initialValue={script.source?.target?.content}\n extensions={extensions}\n className={stackItemContentEditorClassNames(role)}\n inputMode={settings.editorInputMode}\n toolbar\n />\n )}\n\n {state.view !== 'editor' && <DebugPanel functionUrl={state.functionUrl} />}\n </div>\n </StackItem.Content>\n );\n};\n\nexport default ScriptContainer;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { type ScriptType } from '@dxos/functions';\nimport { fullyQualifiedId } from '@dxos/react-client/echo';\nimport { ElevationProvider, type ThemedClassName } from '@dxos/react-ui';\nimport { stackItemContentToolbarClassNames } from '@dxos/react-ui-editor';\nimport { createGapSeparator, MenuProvider, ToolbarMenu, useMenuActions } from '@dxos/react-ui-menu';\n\nimport {\n type ScriptToolbarState,\n createDeploy,\n createFormat,\n createTemplateSelect,\n createView,\n useToolbarAction,\n} from '../../hooks';\n\nexport type ScriptToolbarProps = ThemedClassName<{\n role?: string;\n script: ScriptType;\n state: ScriptToolbarState;\n}>;\n\nconst createToolbar = (state: ScriptToolbarState) => {\n const templateSelect = createTemplateSelect();\n const format = createFormat();\n const gap = createGapSeparator();\n const deploy = createDeploy(state);\n const view = createView(state);\n return {\n nodes: [...templateSelect.nodes, ...format.nodes, ...gap.nodes, ...deploy.nodes, ...view.nodes],\n edges: [...templateSelect.edges, ...format.edges, ...gap.edges, ...deploy.edges, ...view.edges],\n };\n};\n\nexport const ScriptToolbar = ({ script, role, state, classNames }: ScriptToolbarProps) => {\n const handleAction = useToolbarAction({ state, script });\n const toolbarCreator = useCallback(() => createToolbar(state), [state]);\n const menu = useMenuActions(toolbarCreator);\n return (\n <div role='none' className={stackItemContentToolbarClassNames(role)}>\n <ElevationProvider elevation={role === 'section' ? 'positioned' : 'base'}>\n <MenuProvider {...menu} onAction={handleAction} attendableId={fullyQualifiedId(script)}>\n <ToolbarMenu classNames={classNames} />\n </MenuProvider>\n </ElevationProvider>\n </div>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useCallback, useEffect, useMemo } from 'react';\n\nimport {\n FunctionType,\n getInvocationUrl,\n getUserFunctionUrlInMetadata,\n incrementSemverPatch,\n type ScriptType,\n setUserFunctionUrlInMetadata,\n uploadWorkerFunction,\n} from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { useClient } from '@dxos/react-client';\nimport { Filter, create, getMeta, getSpace, makeRef, useQuery } from '@dxos/react-client/echo';\nimport { useTranslation } from '@dxos/react-ui';\nimport { createMenuAction } from '@dxos/react-ui-menu';\n\nimport { type ViewState } from './view';\nimport { Bundler } from '../bundler';\nimport { SCRIPT_PLUGIN } from '../meta';\n\nexport type DeployActionProperties = { type: 'deploy' } | { type: 'copy' };\n\nexport type DeployState = ViewState & {\n deploying: boolean;\n deployed: boolean;\n functionUrl: string;\n error: string;\n};\n\nexport const createDeploy = (state: Partial<DeployState>) => {\n const errorItem = createMenuAction('error', {\n label: state.error ?? ['no error label', { ns: SCRIPT_PLUGIN }],\n icon: 'ph--warning-circle--regular',\n hidden: !state.error,\n });\n\n const deployAction = createMenuAction<DeployActionProperties>('deploy', {\n type: 'deploy',\n label: [state.deploying ? 'pending label' : 'deploy label', { ns: SCRIPT_PLUGIN }],\n icon: state.deploying ? 'ph--spinner-gap--regular' : 'ph--cloud-arrow-up--regular',\n disabled: state.deploying,\n classNames: state.deploying ? '[&_svg]:animate-spin' : '',\n });\n\n const copyAction = createMenuAction<DeployActionProperties>('copy', {\n type: 'copy',\n label: ['copy link label', { ns: SCRIPT_PLUGIN }],\n icon: 'ph--link--regular',\n disabled: !state.functionUrl,\n });\n\n return {\n nodes: [errorItem, deployAction, copyAction],\n edges: [\n { source: 'root', target: 'error' },\n { source: 'root', target: 'deploy' },\n { source: 'root', target: 'copy' },\n ],\n };\n};\n\nconst useDeployDeps = ({ state, script }: { state: Partial<DeployState>; script: ScriptType }) => {\n const space = getSpace(script);\n const [fn] = useQuery(space, Filter.schema(FunctionType, { source: script }));\n const client = useClient();\n const existingFunctionUrl = useMemo(() => fn && getUserFunctionUrlInMetadata(getMeta(fn)), [fn]);\n return { space, fn, client, existingFunctionUrl };\n};\n\nexport const useDeployState = ({ state, script }: { state: Partial<DeployState>; script: ScriptType }) => {\n const { space, client, existingFunctionUrl } = useDeployDeps({ state, script });\n useEffect(() => {\n if (!existingFunctionUrl) {\n return;\n }\n\n state.functionUrl = getInvocationUrl(existingFunctionUrl, client.config.values.runtime?.services?.edge?.url ?? '', {\n spaceId: space?.id,\n });\n }, [existingFunctionUrl, space]);\n\n useEffect(() => {\n state.deployed = Boolean(existingFunctionUrl) && !script.changed;\n }, [script.changed, existingFunctionUrl]);\n};\n\nexport const useDeployHandler = ({ state, script }: { state: Partial<DeployState>; script: ScriptType }) => {\n const { space, fn, client, existingFunctionUrl } = useDeployDeps({ state, script });\n const { t } = useTranslation(SCRIPT_PLUGIN);\n\n return useCallback(async () => {\n if (!script.source || !space) {\n return;\n }\n\n state.error = undefined;\n state.deploying = true;\n\n try {\n const existingFunctionId = existingFunctionUrl?.split('/').at(-1);\n\n const bundler = new Bundler({ platform: 'browser', sandboxedModules: [], remoteModules: {} });\n const buildResult = await bundler.bundle(script.source.target!.content);\n if (buildResult.error || !buildResult.bundle) {\n throw buildResult.error;\n }\n\n const { functionId, version, meta } = await uploadWorkerFunction({\n client,\n spaceId: space.id,\n version: fn ? incrementSemverPatch(fn.version) : '0.0.1',\n functionId: existingFunctionId,\n source: buildResult.bundle,\n });\n if (functionId === undefined || version === undefined) {\n throw new Error(`Upload didn't return expected data: functionId=${functionId}, version=${version}`);\n }\n\n log.info('function uploaded', { functionId, version });\n if (fn) {\n fn.version = version;\n }\n\n const deployedFunction =\n fn ?? space.db.add(create(FunctionType, { name: functionId, version, source: makeRef(script) }));\n\n script.changed = false;\n deployedFunction.description = script.description;\n\n if (meta.inputSchema) {\n deployedFunction.inputSchema = meta.inputSchema;\n } else {\n log.verbose('no input schema in function metadata', { functionId });\n }\n\n setUserFunctionUrlInMetadata(getMeta(deployedFunction), `/${space.id}/${functionId}`);\n\n state.view = 'split';\n } catch (err: any) {\n log.catch(err);\n state.error = t('upload failed label');\n }\n state.deploying = false;\n }, [fn, client, t, existingFunctionUrl, script, script.name, script.source, space?.id ?? null]);\n};\n\nexport const useCopyHandler = ({ state }: { state: Partial<DeployState> }) =>\n useCallback(async () => {\n if (!state.functionUrl) {\n return;\n }\n await navigator.clipboard.writeText(state.functionUrl);\n }, [state.functionUrl]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { format } from 'prettier';\nimport prettierPluginEstree from 'prettier/plugins/estree';\nimport prettierPluginTypescript from 'prettier/plugins/typescript';\nimport { useCallback } from 'react';\n\nimport { type ScriptType } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { createMenuAction } from '@dxos/react-ui-menu';\n\nimport { SCRIPT_PLUGIN } from '../meta';\n\nexport type FormatActionProperties = { type: 'format' };\n\nexport const createFormat = () => {\n const formatAction = createMenuAction('format', {\n label: ['format label', { ns: SCRIPT_PLUGIN }],\n icon: 'ph--magic-wand--regular',\n });\n\n return {\n nodes: [formatAction],\n edges: [{ source: 'root', target: 'format' }],\n };\n};\n\nexport const useFormatHandler = ({ script }: { script: ScriptType }) =>\n useCallback(async () => {\n if (!script.source) {\n return;\n }\n\n try {\n script.source.target!.content = await format(script.source.target!.content, {\n parser: 'typescript',\n plugins: [prettierPluginEstree, prettierPluginTypescript],\n semi: true,\n singleQuote: true,\n });\n } catch (err: any) {\n // TODO(wittjosiah): Show error in UI.\n log.catch(err);\n }\n }, [script.source]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useCallback } from 'react';\n\nimport { FUNCTIONS_PRESET_META_KEY, type ScriptType } from '@dxos/functions';\nimport { getMeta } from '@dxos/live-object';\nimport { createMenuItemGroup, createMenuAction } from '@dxos/react-ui-menu';\n\nimport { SCRIPT_PLUGIN } from '../meta';\nimport { templates } from '../templates';\n\nexport type TemplateActionProperties = { type: 'template'; value: string };\n\nconst createTemplateSelectGroup = () => {\n return createMenuItemGroup('template-select', {\n label: ['template select group label', { ns: SCRIPT_PLUGIN }],\n variant: 'dropdownMenu',\n });\n};\n\nconst createTemplateSelectActions = () => {\n return templates.map((template) => {\n return createMenuAction<TemplateActionProperties>(`template--${template.id}`, {\n label: template.name,\n value: template.id,\n type: 'template',\n });\n });\n};\n\nexport const createTemplateSelect = () => {\n const templateSelectGroup = createTemplateSelectGroup();\n const templateSelectActions = createTemplateSelectActions();\n return {\n nodes: [templateSelectGroup, ...templateSelectActions],\n edges: [\n { source: 'root', target: 'template-select' },\n ...templateSelectActions.map((action) => ({ source: 'template-select', target: action.id })),\n ],\n };\n};\n\nexport const useTemplateSelectHandler = ({ script }: { script: ScriptType }) => {\n return useCallback(\n (templateId: string) => {\n const template = templates.find((template) => template.id === templateId);\n if (template) {\n script.name = template.name;\n script.source!.target!.content = template.source;\n const metaKeys = getMeta(script).keys;\n const oldPresetIndex = metaKeys.findIndex((key) => key.source === FUNCTIONS_PRESET_META_KEY);\n if (oldPresetIndex >= 0) {\n metaKeys.splice(oldPresetIndex, 1);\n }\n if (template.presetId) {\n metaKeys.push({ source: FUNCTIONS_PRESET_META_KEY, id: template.presetId });\n }\n }\n },\n [script],\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { createMenuAction, createMenuItemGroup } from '@dxos/react-ui-menu';\n\nimport { SCRIPT_PLUGIN } from '../meta';\n\nexport type ViewType = 'editor' | 'split' | 'debug';\n\nexport type ViewState = { view: ViewType };\n\nexport type ViewActionProperties = { type: 'view'; value: ViewType };\n\nconst views: Record<ViewType, string> = {\n editor: 'ph--code--regular',\n split: 'ph--square-split-vertical--regular',\n debug: 'ph--bug--regular',\n};\n\nconst createViewGroupItem = (state: Partial<ViewState>) => {\n return createMenuItemGroup('view', {\n label: ['view group label', { ns: SCRIPT_PLUGIN }],\n variant: 'dropdownMenu',\n applyActive: true,\n value: state.view,\n });\n};\n\nconst createViewActions = (state: Partial<ViewState>) => {\n return Object.entries(views).map(([viewType, icon]) => {\n return createMenuAction<ViewActionProperties>(`view--${viewType}`, {\n type: 'view',\n value: viewType as ViewType,\n label: [`view ${viewType} label`, { ns: SCRIPT_PLUGIN }],\n icon,\n checked: state.view === viewType,\n });\n });\n};\n\nexport const createView = (state: Partial<ViewState>) => {\n const viewGroupItem = createViewGroupItem(state);\n const viewActions = createViewActions(state);\n return {\n nodes: [viewGroupItem, ...viewActions],\n edges: [\n { source: 'root', target: 'view' },\n ...viewActions.map((action) => ({ source: 'view', target: action.id })),\n ],\n };\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useCallback } from 'react';\n\nimport { type ScriptType } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { type MenuAction, type MenuActionHandler } from '@dxos/react-ui-menu';\n\nimport { type DeployActionProperties, useDeployHandler, useCopyHandler } from './deploy';\nimport { type FormatActionProperties, useFormatHandler } from './format';\nimport { type TemplateActionProperties, useTemplateSelectHandler } from './template';\nimport { type ScriptToolbarState } from './useToolbarState';\nimport { type ViewActionProperties } from './view';\n\nexport type ScriptToolbarActionProperties =\n | TemplateActionProperties\n | ViewActionProperties\n | FormatActionProperties\n | DeployActionProperties;\n\nexport type ScriptToolbarAction = MenuAction<ScriptToolbarActionProperties>;\n\nexport const useToolbarAction = (props: { state: ScriptToolbarState; script: ScriptType }) => {\n const handleTemplateSelect = useTemplateSelectHandler(props);\n const handleFormat = useFormatHandler(props);\n const handleDeploy = useDeployHandler(props);\n const handleCopy = useCopyHandler(props);\n return useCallback(\n ((action: ScriptToolbarAction) => {\n switch (action.properties.type) {\n case 'template':\n handleTemplateSelect(action.properties.value);\n break;\n case 'view':\n props.state.view = action.properties.value;\n break;\n case 'format':\n void handleFormat();\n break;\n case 'deploy':\n void handleDeploy();\n break;\n case 'copy':\n void handleCopy();\n break;\n default:\n log.error('Unknown action type', action);\n }\n }) as MenuActionHandler,\n [handleTemplateSelect, handleFormat, handleDeploy, handleCopy],\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useMemo } from 'react';\n\nimport { create } from '@dxos/live-object';\n\nimport { type DeployState } from './deploy';\nimport { type ViewState } from './view';\n\nexport type ScriptToolbarState = Partial<DeployState & ViewState>;\n\nexport const useToolbarState = (initialState: ScriptToolbarState = {}) => {\n return useMemo(() => create<ScriptToolbarState>(initialState), []);\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { javascript } from '@codemirror/lang-javascript';\nimport { defaultHighlightStyle } from '@codemirror/language';\nimport { Prec } from '@codemirror/state';\nimport { oneDarkHighlightStyle } from '@codemirror/theme-one-dark';\nimport { keymap } from '@codemirror/view';\nimport { tags } from '@lezer/highlight';\nimport { type VirtualTypeScriptEnvironment } from '@typescript/vfs';\nimport { continueKeymap } from '@valtown/codemirror-continue';\nimport { tsSync, tsFacet, tsLinter, tsAutocomplete, tsHover, type HoverInfo } from '@valtown/codemirror-ts';\nimport React from 'react';\n\nimport { type ThemeMode, useThemeContext } from '@dxos/react-ui';\nimport {\n autocomplete,\n createBasicExtensions,\n createThemeExtensions,\n editorFullWidth,\n type EditorInputMode,\n editorMonospace,\n EditorView,\n folding,\n InputModeExtensions,\n useTextEditor,\n type UseTextEditorProps,\n} from '@dxos/react-ui-editor';\nimport { nonNullable } from '@dxos/util';\n\nexport type TypescriptEditorProps = {\n id: string;\n inputMode?: EditorInputMode;\n env?: VirtualTypeScriptEnvironment;\n toolbar?: boolean;\n} & Pick<UseTextEditorProps, 'className' | 'initialValue' | 'extensions' | 'scrollTo' | 'selection'>;\n\nexport const TypescriptEditor = ({\n id,\n env,\n className,\n initialValue,\n extensions,\n scrollTo,\n selection,\n toolbar,\n inputMode = 'vscode',\n}: TypescriptEditorProps) => {\n const { themeMode } = useThemeContext();\n const { parentRef, focusAttributes } = useTextEditor(\n () => ({\n id,\n initialValue,\n extensions: [\n extensions,\n createBasicExtensions({\n highlightActiveLine: true,\n indentWithTab: true,\n lineNumbers: true,\n lineWrapping: false,\n scrollPastEnd: true,\n }),\n createThemeExtensions({\n themeMode,\n syntaxHighlighting: true,\n slots: {\n content: { className: editorFullWidth },\n },\n }),\n // NOTE: Not using default editor gutter because folding for code works best right beside text.\n EditorView.theme({\n '.cm-gutters': {\n // Match margin from content.\n marginTop: '16px',\n },\n }),\n InputModeExtensions[inputMode],\n folding(),\n // Continues block comments when you hit Enter.\n Prec.high(keymap.of(continueKeymap)),\n // TODO(burdon): Factor out.\n [\n editorMonospace,\n javascript({ typescript: true }),\n // https://github.com/val-town/codemirror-ts\n autocomplete({ override: env ? [tsAutocomplete()] : [] }),\n env\n ? [\n tsFacet.of({ env, path: `/src/${id}.ts` }),\n tsSync(),\n tsLinter(),\n tsHover({ renderTooltip: createTooltipRenderer(themeMode) }),\n ]\n : [],\n ],\n ].filter(nonNullable),\n selection,\n scrollTo,\n }),\n [id, extensions, themeMode, inputMode, selection, scrollTo],\n );\n\n return (\n <div ref={parentRef} data-toolbar={toolbar ? 'enabled' : 'disabled'} className={className} {...focusAttributes} />\n );\n};\n\nconst createTooltipRenderer = (themeMode: ThemeMode) => {\n const theme = themeMode === 'dark' ? oneDarkHighlightStyle : defaultHighlightStyle;\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 const div = document.createElement('div');\n div.className = 'p-1 rounded border border-separator bg-baseSurface xs:max-w-80 max-w-lg';\n\n if (info.quickInfo?.displayParts) {\n for (const part of info.quickInfo.displayParts) {\n const span = div.appendChild(document.createElement('span'));\n span.className = classFromKind(part.kind);\n span.innerText = part.text;\n }\n }\n\n return { dom: div };\n };\n};\n\nexport default TypescriptEditor;\n"],
5
+ "mappings": "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",
6
+ "names": ["import_react", "import_echo", "import_react_ui_editor", "import_react_ui", "import_react_ui_menu", "import_log", "import_functions", "import_live_object", "createDeploy", "state", "errorItem", "createMenuAction", "label", "error", "ns", "SCRIPT_PLUGIN", "icon", "hidden", "deployAction", "type", "deploying", "disabled", "classNames", "copyAction", "functionUrl", "nodes", "edges", "source", "target", "useDeployDeps", "script", "space", "getSpace", "fn", "useQuery", "Filter", "schema", "FunctionType", "client", "useClient", "existingFunctionUrl", "useMemo", "getUserFunctionUrlInMetadata", "getMeta", "useDeployState", "useEffect", "getInvocationUrl", "config", "values", "runtime", "services", "edge", "url", "spaceId", "id", "deployed", "Boolean", "changed", "useDeployHandler", "t", "useTranslation", "useCallback", "undefined", "existingFunctionId", "split", "at", "bundler", "Bundler", "platform", "sandboxedModules", "remoteModules", "buildResult", "bundle", "content", "functionId", "version", "meta", "uploadWorkerFunction", "incrementSemverPatch", "Error", "log", "info", "deployedFunction", "db", "add", "create", "name", "makeRef", "description", "inputSchema", "verbose", "setUserFunctionUrlInMetadata", "view", "err", "catch", "useCopyHandler", "navigator", "clipboard", "writeText", "createFormat", "formatAction", "useFormatHandler", "format", "parser", "plugins", "prettierPluginEstree", "prettierPluginTypescript", "semi", "singleQuote", "createTemplateSelectGroup", "createMenuItemGroup", "variant", "createTemplateSelectActions", "templates", "map", "template", "value", "createTemplateSelect", "templateSelectGroup", "templateSelectActions", "action", "useTemplateSelectHandler", "templateId", "find", "metaKeys", "keys", "oldPresetIndex", "findIndex", "key", "FUNCTIONS_PRESET_META_KEY", "splice", "presetId", "push", "views", "editor", "debug", "createViewGroupItem", "applyActive", "createViewActions", "Object", "entries", "viewType", "checked", "createView", "viewGroupItem", "viewActions", "useToolbarAction", "props", "handleTemplateSelect", "handleFormat", "handleDeploy", "handleCopy", "properties", "useToolbarState", "initialState", "createToolbar", "templateSelect", "gap", "createGapSeparator", "deploy", "ScriptToolbar", "role", "handleAction", "toolbarCreator", "menu", "useMenuActions", "React", "div", "className", "stackItemContentToolbarClassNames", "ElevationProvider", "elevation", "MenuProvider", "onAction", "attendableId", "fullyQualifiedId", "ToolbarMenu", "TypescriptEditor", "env", "initialValue", "extensions", "scrollTo", "selection", "toolbar", "inputMode", "themeMode", "useThemeContext", "parentRef", "focusAttributes", "useTextEditor", "createBasicExtensions", "highlightActiveLine", "indentWithTab", "lineNumbers", "lineWrapping", "scrollPastEnd", "createThemeExtensions", "syntaxHighlighting", "slots", "editorFullWidth", "EditorView", "theme", "marginTop", "InputModeExtensions", "folding", "Prec", "high", "keymap", "of", "continueKeymap", "editorMonospace", "javascript", "typescript", "autocomplete", "override", "tsAutocomplete", "tsFacet", "path", "tsSync", "tsLinter", "tsHover", "renderTooltip", "createTooltipRenderer", "filter", "nonNullable", "ref", "data-toolbar", "oneDarkHighlightStyle", "defaultHighlightStyle", "classFromKind", "_kind", "kind", "endsWith", "validTag", "tags", "tag", "style", "document", "createElement", "quickInfo", "displayParts", "part", "span", "appendChild", "innerText", "text", "dom", "ScriptContainer", "settings", "editorInputMode", "identity", "useIdentity", "listener", "onChange", "createDataExtensions", "createDocAccessor", "StackItem", "Content", "mx", "stackItemContentEditorClassNames", "DebugPanel"]
7
+ }
@@ -16,21 +16,24 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var chunk_EFTZN5X7_exports = {};
20
- __export(chunk_EFTZN5X7_exports, {
19
+ var chunk_5UH3F7TA_exports = {};
20
+ __export(chunk_5UH3F7TA_exports, {
21
21
  SCRIPT_PLUGIN: () => SCRIPT_PLUGIN,
22
22
  meta: () => meta
23
23
  });
24
- module.exports = __toCommonJS(chunk_EFTZN5X7_exports);
24
+ module.exports = __toCommonJS(chunk_5UH3F7TA_exports);
25
25
  var SCRIPT_PLUGIN = "dxos.org/plugin/script";
26
26
  var meta = {
27
27
  id: SCRIPT_PLUGIN,
28
28
  name: "Scripts",
29
- description: "Distributed functions.",
29
+ description: "Scripts in Composer allow you to deploy custom functions that run on the edge. These functions can be referenced by your AI agent and called inside of cells in any Sheet. Use scripts to interact with API\u2019s or external data inside of Composer.",
30
30
  icon: "ph--code--regular",
31
31
  source: "https://github.com/dxos/dxos/tree/main/packages/plugins/experimental/plugin-explorer",
32
32
  tags: [
33
33
  "experimental"
34
+ ],
35
+ screenshots: [
36
+ "https://dxos.network/plugin-details-scripts-dark.png"
34
37
  ]
35
38
  };
36
39
  // Annotate the CommonJS export names for ESM import in node:
@@ -38,4 +41,4 @@ var meta = {
38
41
  SCRIPT_PLUGIN,
39
42
  meta
40
43
  });
41
- //# sourceMappingURL=chunk-EFTZN5X7.cjs.map
44
+ //# sourceMappingURL=chunk-5UH3F7TA.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/meta.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const SCRIPT_PLUGIN = 'dxos.org/plugin/script';\n\nexport const meta = {\n id: SCRIPT_PLUGIN,\n name: 'Scripts',\n description:\n 'Scripts in Composer allow you to deploy custom functions that run on the edge. These functions can be referenced by your AI agent and called inside of cells in any Sheet. Use scripts to interact with API’s or external data inside of Composer.',\n icon: 'ph--code--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/experimental/plugin-explorer',\n tags: ['experimental'],\n screenshots: ['https://dxos.network/plugin-details-scripts-dark.png'],\n} satisfies PluginMeta;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,gBAAgB;AAEtB,IAAMC,OAAO;EAClBC,IAAIF;EACJG,MAAM;EACNC,aACE;EACFC,MAAM;EACNC,QAAQ;EACRC,MAAM;IAAC;;EACPC,aAAa;IAAC;;AAChB;",
6
+ "names": ["SCRIPT_PLUGIN", "meta", "id", "name", "description", "icon", "source", "tags", "screenshots"]
7
+ }