@dxos/plugin-script 0.7.5-labs.e27f9b9 → 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 (124) hide show
  1. package/dist/lib/browser/{AutomationPanel-OOIRJFPJ.mjs → AutomationPanel-J3SZ5L3Y.mjs} +3 -3
  2. package/dist/lib/browser/{ScriptContainer-EBER222J.mjs → ScriptContainer-LGW52UAJ.mjs} +62 -60
  3. package/dist/lib/browser/ScriptContainer-LGW52UAJ.mjs.map +7 -0
  4. package/dist/lib/browser/{chunk-PEYUXEY6.mjs → chunk-2UXYECEH.mjs} +4 -4
  5. package/dist/lib/browser/{chunk-SJ4J527G.mjs → chunk-45LXDWNF.mjs} +2 -2
  6. package/dist/lib/browser/{chunk-ZM6T4HPR.mjs → chunk-6MOQ4BP3.mjs} +2 -2
  7. package/dist/lib/browser/chunk-FVVCAWNP.mjs +21 -0
  8. package/dist/lib/browser/chunk-FVVCAWNP.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-XPGBHZ3L.mjs → chunk-N46LE7FS.mjs} +2 -2
  10. package/dist/lib/browser/{compiler-HT53ILG7.mjs → compiler-K3FNRDDN.mjs} +3 -3
  11. package/dist/lib/browser/index.mjs +8 -8
  12. package/dist/lib/browser/{intent-resolver-G2REMZHC.mjs → intent-resolver-CMKQTLBG.mjs} +3 -3
  13. package/dist/lib/browser/meta.json +1 -1
  14. package/dist/lib/browser/{react-surface-GH4LL6CF.mjs → react-surface-XACNR5NR.mjs} +5 -5
  15. package/dist/lib/browser/{react-surface-GH4LL6CF.mjs.map → react-surface-XACNR5NR.mjs.map} +2 -2
  16. package/dist/lib/browser/{settings-YQQEU3DF.mjs → settings-SZCDKHWO.mjs} +3 -3
  17. package/dist/lib/browser/types.mjs +2 -2
  18. package/dist/lib/node/{AutomationPanel-EPRDDR3A.cjs → AutomationPanel-4M55FURO.cjs} +8 -8
  19. package/dist/lib/node/{ScriptContainer-UXMQLKDV.cjs → ScriptContainer-UI2MDBYG.cjs} +63 -61
  20. package/dist/lib/node/ScriptContainer-UI2MDBYG.cjs.map +7 -0
  21. package/dist/lib/node/{chunk-EFTZN5X7.cjs → chunk-5UH3F7TA.cjs} +8 -5
  22. package/dist/lib/node/chunk-5UH3F7TA.cjs.map +7 -0
  23. package/dist/lib/node/{chunk-UAHKFS7F.cjs → chunk-73345ZL6.cjs} +9 -9
  24. package/dist/lib/node/{chunk-A2DI2G4D.cjs → chunk-ALY3N6PW.cjs} +6 -6
  25. package/dist/lib/node/{chunk-6VKZJ4MH.cjs → chunk-DJGLGRQV.cjs} +6 -6
  26. package/dist/lib/node/{chunk-DQRAVZM7.cjs → chunk-IID7WUQS.cjs} +6 -6
  27. package/dist/lib/node/{compiler-457ZR24G.cjs → compiler-P2HQB22H.cjs} +7 -7
  28. package/dist/lib/node/index.cjs +27 -27
  29. package/dist/lib/node/{intent-resolver-IWGK77AZ.cjs → intent-resolver-V5ASU5DW.cjs} +7 -7
  30. package/dist/lib/node/meta.json +1 -1
  31. package/dist/lib/node/{react-surface-3JKCVT5O.cjs → react-surface-Y3RD5FW7.cjs} +18 -18
  32. package/dist/lib/node/{react-surface-3JKCVT5O.cjs.map → react-surface-Y3RD5FW7.cjs.map} +2 -2
  33. package/dist/lib/node/{settings-NGHDYAVK.cjs → settings-SZFSMSKM.cjs} +9 -9
  34. package/dist/lib/node/types.cjs +4 -4
  35. package/dist/lib/node/types.cjs.map +1 -1
  36. package/dist/lib/node-esm/{AutomationPanel-DMLAGQS5.mjs → AutomationPanel-W6SKG35R.mjs} +3 -3
  37. package/dist/lib/node-esm/{ScriptContainer-56ES2HQ5.mjs → ScriptContainer-F7SNP53Z.mjs} +62 -60
  38. package/dist/lib/node-esm/ScriptContainer-F7SNP53Z.mjs.map +7 -0
  39. package/dist/lib/node-esm/{chunk-XUWS7OTK.mjs → chunk-CGF7EOGD.mjs} +2 -2
  40. package/dist/lib/node-esm/{chunk-675XSDRN.mjs → chunk-CP5LXTK5.mjs} +2 -2
  41. package/dist/lib/node-esm/{chunk-BHP545D7.mjs → chunk-P2V2Y5LV.mjs} +5 -2
  42. package/dist/lib/node-esm/chunk-P2V2Y5LV.mjs.map +7 -0
  43. package/dist/lib/node-esm/{chunk-TYGM5YLW.mjs → chunk-PRGBYF4B.mjs} +4 -4
  44. package/dist/lib/node-esm/{chunk-JHGOPQVO.mjs → chunk-UNQFIERE.mjs} +2 -2
  45. package/dist/lib/node-esm/{compiler-PEARFTFR.mjs → compiler-PDN46H4Y.mjs} +3 -3
  46. package/dist/lib/node-esm/index.mjs +8 -8
  47. package/dist/lib/node-esm/{intent-resolver-KGADFH3H.mjs → intent-resolver-75BHFRUK.mjs} +3 -3
  48. package/dist/lib/node-esm/meta.json +1 -1
  49. package/dist/lib/node-esm/{react-surface-JW776PVP.mjs → react-surface-PKUVZH4S.mjs} +5 -5
  50. package/dist/lib/node-esm/{react-surface-JW776PVP.mjs.map → react-surface-PKUVZH4S.mjs.map} +2 -2
  51. package/dist/lib/node-esm/{settings-XGXDY4NI.mjs → settings-GR4O2WHZ.mjs} +3 -3
  52. package/dist/lib/node-esm/types.mjs +2 -2
  53. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  54. package/dist/types/src/components/ScriptContainer.d.ts +2 -2
  55. package/dist/types/src/components/ScriptContainer.d.ts.map +1 -1
  56. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +1 -1
  57. package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
  58. package/dist/types/src/components/index.d.ts +1 -1
  59. package/dist/types/src/components/index.d.ts.map +1 -1
  60. package/dist/types/src/hooks/deploy.d.ts.map +1 -0
  61. package/dist/types/src/hooks/format.d.ts.map +1 -0
  62. package/dist/types/src/hooks/index.d.ts +7 -0
  63. package/dist/types/src/hooks/index.d.ts.map +1 -0
  64. package/dist/types/src/{components/ScriptToolbar/templateSelect.d.ts → hooks/template.d.ts} +1 -1
  65. package/dist/types/src/hooks/template.d.ts.map +1 -0
  66. package/dist/types/src/{components/ScriptToolbar → hooks}/useToolbarAction.d.ts +1 -1
  67. package/dist/types/src/hooks/useToolbarAction.d.ts.map +1 -0
  68. package/dist/types/src/hooks/useToolbarState.d.ts.map +1 -0
  69. package/dist/types/src/hooks/view.d.ts.map +1 -0
  70. package/dist/types/src/meta.d.ts +1 -0
  71. package/dist/types/src/meta.d.ts.map +1 -1
  72. package/package.json +42 -42
  73. package/src/capabilities/react-surface.tsx +2 -1
  74. package/src/components/ScriptContainer.tsx +10 -5
  75. package/src/components/ScriptToolbar/ScriptToolbar.tsx +8 -6
  76. package/src/{components/ScriptToolbar → hooks}/deploy.ts +2 -2
  77. package/src/{components/ScriptToolbar → hooks}/format.ts +1 -1
  78. package/src/hooks/index.ts +11 -0
  79. package/src/{components/ScriptToolbar/templateSelect.ts → hooks/template.ts} +2 -2
  80. package/src/{components/ScriptToolbar → hooks}/useToolbarAction.ts +1 -1
  81. package/src/{components/ScriptToolbar → hooks}/view.ts +1 -1
  82. package/src/meta.ts +3 -1
  83. package/dist/lib/browser/ScriptContainer-EBER222J.mjs.map +0 -7
  84. package/dist/lib/browser/chunk-5BU5ERNU.mjs +0 -18
  85. package/dist/lib/browser/chunk-5BU5ERNU.mjs.map +0 -7
  86. package/dist/lib/node/ScriptContainer-UXMQLKDV.cjs.map +0 -7
  87. package/dist/lib/node/chunk-EFTZN5X7.cjs.map +0 -7
  88. package/dist/lib/node-esm/ScriptContainer-56ES2HQ5.mjs.map +0 -7
  89. package/dist/lib/node-esm/chunk-BHP545D7.mjs.map +0 -7
  90. package/dist/types/src/components/ScriptToolbar/deploy.d.ts.map +0 -1
  91. package/dist/types/src/components/ScriptToolbar/format.d.ts.map +0 -1
  92. package/dist/types/src/components/ScriptToolbar/templateSelect.d.ts.map +0 -1
  93. package/dist/types/src/components/ScriptToolbar/useToolbarAction.d.ts.map +0 -1
  94. package/dist/types/src/components/ScriptToolbar/useToolbarState.d.ts.map +0 -1
  95. package/dist/types/src/components/ScriptToolbar/view.d.ts.map +0 -1
  96. /package/dist/lib/browser/{AutomationPanel-OOIRJFPJ.mjs.map → AutomationPanel-J3SZ5L3Y.mjs.map} +0 -0
  97. /package/dist/lib/browser/{chunk-PEYUXEY6.mjs.map → chunk-2UXYECEH.mjs.map} +0 -0
  98. /package/dist/lib/browser/{chunk-SJ4J527G.mjs.map → chunk-45LXDWNF.mjs.map} +0 -0
  99. /package/dist/lib/browser/{chunk-ZM6T4HPR.mjs.map → chunk-6MOQ4BP3.mjs.map} +0 -0
  100. /package/dist/lib/browser/{chunk-XPGBHZ3L.mjs.map → chunk-N46LE7FS.mjs.map} +0 -0
  101. /package/dist/lib/browser/{compiler-HT53ILG7.mjs.map → compiler-K3FNRDDN.mjs.map} +0 -0
  102. /package/dist/lib/browser/{intent-resolver-G2REMZHC.mjs.map → intent-resolver-CMKQTLBG.mjs.map} +0 -0
  103. /package/dist/lib/browser/{settings-YQQEU3DF.mjs.map → settings-SZCDKHWO.mjs.map} +0 -0
  104. /package/dist/lib/node/{AutomationPanel-EPRDDR3A.cjs.map → AutomationPanel-4M55FURO.cjs.map} +0 -0
  105. /package/dist/lib/node/{chunk-UAHKFS7F.cjs.map → chunk-73345ZL6.cjs.map} +0 -0
  106. /package/dist/lib/node/{chunk-A2DI2G4D.cjs.map → chunk-ALY3N6PW.cjs.map} +0 -0
  107. /package/dist/lib/node/{chunk-6VKZJ4MH.cjs.map → chunk-DJGLGRQV.cjs.map} +0 -0
  108. /package/dist/lib/node/{chunk-DQRAVZM7.cjs.map → chunk-IID7WUQS.cjs.map} +0 -0
  109. /package/dist/lib/node/{compiler-457ZR24G.cjs.map → compiler-P2HQB22H.cjs.map} +0 -0
  110. /package/dist/lib/node/{intent-resolver-IWGK77AZ.cjs.map → intent-resolver-V5ASU5DW.cjs.map} +0 -0
  111. /package/dist/lib/node/{settings-NGHDYAVK.cjs.map → settings-SZFSMSKM.cjs.map} +0 -0
  112. /package/dist/lib/node-esm/{AutomationPanel-DMLAGQS5.mjs.map → AutomationPanel-W6SKG35R.mjs.map} +0 -0
  113. /package/dist/lib/node-esm/{chunk-XUWS7OTK.mjs.map → chunk-CGF7EOGD.mjs.map} +0 -0
  114. /package/dist/lib/node-esm/{chunk-675XSDRN.mjs.map → chunk-CP5LXTK5.mjs.map} +0 -0
  115. /package/dist/lib/node-esm/{chunk-TYGM5YLW.mjs.map → chunk-PRGBYF4B.mjs.map} +0 -0
  116. /package/dist/lib/node-esm/{chunk-JHGOPQVO.mjs.map → chunk-UNQFIERE.mjs.map} +0 -0
  117. /package/dist/lib/node-esm/{compiler-PEARFTFR.mjs.map → compiler-PDN46H4Y.mjs.map} +0 -0
  118. /package/dist/lib/node-esm/{intent-resolver-KGADFH3H.mjs.map → intent-resolver-75BHFRUK.mjs.map} +0 -0
  119. /package/dist/lib/node-esm/{settings-XGXDY4NI.mjs.map → settings-GR4O2WHZ.mjs.map} +0 -0
  120. /package/dist/types/src/{components/ScriptToolbar → hooks}/deploy.d.ts +0 -0
  121. /package/dist/types/src/{components/ScriptToolbar → hooks}/format.d.ts +0 -0
  122. /package/dist/types/src/{components/ScriptToolbar → hooks}/useToolbarState.d.ts +0 -0
  123. /package/dist/types/src/{components/ScriptToolbar → hooks}/view.d.ts +0 -0
  124. /package/src/{components/ScriptToolbar → hooks}/useToolbarState.ts +0 -0
@@ -16,23 +16,23 @@ 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 settings_NGHDYAVK_exports = {};
20
- __export(settings_NGHDYAVK_exports, {
19
+ var settings_SZFSMSKM_exports = {};
20
+ __export(settings_SZFSMSKM_exports, {
21
21
  default: () => settings_default
22
22
  });
23
- module.exports = __toCommonJS(settings_NGHDYAVK_exports);
24
- var import_chunk_6VKZJ4MH = require("./chunk-6VKZJ4MH.cjs");
25
- var import_chunk_EFTZN5X7 = require("./chunk-EFTZN5X7.cjs");
23
+ module.exports = __toCommonJS(settings_SZFSMSKM_exports);
24
+ var import_chunk_DJGLGRQV = require("./chunk-DJGLGRQV.cjs");
25
+ var import_chunk_5UH3F7TA = require("./chunk-5UH3F7TA.cjs");
26
26
  var import_app_framework = require("@dxos/app-framework");
27
27
  var import_live_object = require("@dxos/live-object");
28
28
  var settings_default = () => {
29
- const settings = (0, import_live_object.create)(import_chunk_6VKZJ4MH.ScriptSettingsSchema, {
29
+ const settings = (0, import_live_object.create)(import_chunk_DJGLGRQV.ScriptSettingsSchema, {
30
30
  editorInputMode: "vscode"
31
31
  });
32
32
  return (0, import_app_framework.contributes)(import_app_framework.Capabilities.Settings, {
33
- schema: import_chunk_6VKZJ4MH.ScriptSettingsSchema,
34
- prefix: import_chunk_EFTZN5X7.SCRIPT_PLUGIN,
33
+ schema: import_chunk_DJGLGRQV.ScriptSettingsSchema,
34
+ prefix: import_chunk_5UH3F7TA.SCRIPT_PLUGIN,
35
35
  value: settings
36
36
  });
37
37
  };
38
- //# sourceMappingURL=settings-NGHDYAVK.cjs.map
38
+ //# sourceMappingURL=settings-SZFSMSKM.cjs.map
@@ -18,12 +18,12 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var types_exports = {};
20
20
  __export(types_exports, {
21
- ScriptAction: () => import_chunk_6VKZJ4MH.ScriptAction,
22
- ScriptSettingsSchema: () => import_chunk_6VKZJ4MH.ScriptSettingsSchema
21
+ ScriptAction: () => import_chunk_DJGLGRQV.ScriptAction,
22
+ ScriptSettingsSchema: () => import_chunk_DJGLGRQV.ScriptSettingsSchema
23
23
  });
24
24
  module.exports = __toCommonJS(types_exports);
25
- var import_chunk_6VKZJ4MH = require("./chunk-6VKZJ4MH.cjs");
26
- var import_chunk_EFTZN5X7 = require("./chunk-EFTZN5X7.cjs");
25
+ var import_chunk_DJGLGRQV = require("./chunk-DJGLGRQV.cjs");
26
+ var import_chunk_5UH3F7TA = require("./chunk-5UH3F7TA.cjs");
27
27
  // Annotate the CommonJS export names for ESM import in node:
28
28
  0 && (module.exports = {
29
29
  ScriptAction,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["types.cjs"],
4
- "sourcesContent": ["import {\n ScriptAction,\n ScriptSettingsSchema\n} from \"./chunk-6VKZJ4MH.cjs\";\nimport \"./chunk-EFTZN5X7.cjs\";\nexport {\n ScriptAction,\n ScriptSettingsSchema\n};\n//# sourceMappingURL=types.cjs.map\n"],
4
+ "sourcesContent": ["import {\n ScriptAction,\n ScriptSettingsSchema\n} from \"./chunk-DJGLGRQV.cjs\";\nimport \"./chunk-5UH3F7TA.cjs\";\nexport {\n ScriptAction,\n ScriptSettingsSchema\n};\n//# sourceMappingURL=types.cjs.map\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAGO;AACP,4BAAO;",
6
6
  "names": []
7
7
  }
@@ -1,10 +1,10 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  DebugPanel
4
- } from "./chunk-XUWS7OTK.mjs";
4
+ } from "./chunk-CGF7EOGD.mjs";
5
5
  import {
6
6
  SCRIPT_PLUGIN
7
- } from "./chunk-BHP545D7.mjs";
7
+ } from "./chunk-P2V2Y5LV.mjs";
8
8
 
9
9
  // packages/plugins/experimental/plugin-script/src/components/AutomationPanel/AutomationPanel.tsx
10
10
  import React, { useMemo, useState } from "react";
@@ -76,4 +76,4 @@ export {
76
76
  AutomationPanel,
77
77
  AutomationPanel_default as default
78
78
  };
79
- //# sourceMappingURL=AutomationPanel-DMLAGQS5.mjs.map
79
+ //# sourceMappingURL=AutomationPanel-W6SKG35R.mjs.map
@@ -7,10 +7,10 @@ import {
7
7
  } from "./chunk-NBAL5DXN.mjs";
8
8
  import {
9
9
  DebugPanel
10
- } from "./chunk-XUWS7OTK.mjs";
10
+ } from "./chunk-CGF7EOGD.mjs";
11
11
  import {
12
12
  SCRIPT_PLUGIN
13
- } from "./chunk-BHP545D7.mjs";
13
+ } from "./chunk-P2V2Y5LV.mjs";
14
14
 
15
15
  // packages/plugins/experimental/plugin-script/src/components/ScriptContainer.tsx
16
16
  import React3, { useMemo as useMemo3 } from "react";
@@ -27,7 +27,7 @@ import { ElevationProvider } from "@dxos/react-ui";
27
27
  import { stackItemContentToolbarClassNames } from "@dxos/react-ui-editor";
28
28
  import { createGapSeparator, MenuProvider, ToolbarMenu, useMenuActions } from "@dxos/react-ui-menu";
29
29
 
30
- // packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/deploy.ts
30
+ // packages/plugins/experimental/plugin-script/src/hooks/deploy.ts
31
31
  import { useCallback, useEffect, useMemo } from "react";
32
32
  import { FunctionType, getInvocationUrl, getUserFunctionUrlInMetadata, incrementSemverPatch, setUserFunctionUrlInMetadata, uploadWorkerFunction } from "@dxos/functions";
33
33
  import { log } from "@dxos/log";
@@ -35,7 +35,7 @@ import { useClient } from "@dxos/react-client";
35
35
  import { Filter, create, getMeta, getSpace, makeRef, useQuery } from "@dxos/react-client/echo";
36
36
  import { useTranslation } from "@dxos/react-ui";
37
37
  import { createMenuAction } from "@dxos/react-ui-menu";
38
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/deploy.ts";
38
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/hooks/deploy.ts";
39
39
  var createDeploy = (state) => {
40
40
  const errorItem = createMenuAction("error", {
41
41
  label: state.error ?? [
@@ -227,14 +227,14 @@ var useCopyHandler = ({ state }) => useCallback(async () => {
227
227
  state.functionUrl
228
228
  ]);
229
229
 
230
- // packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/format.ts
230
+ // packages/plugins/experimental/plugin-script/src/hooks/format.ts
231
231
  import { format } from "prettier";
232
232
  import prettierPluginEstree from "prettier/plugins/estree";
233
233
  import prettierPluginTypescript from "prettier/plugins/typescript";
234
234
  import { useCallback as useCallback2 } from "react";
235
235
  import { log as log2 } from "@dxos/log";
236
236
  import { createMenuAction as createMenuAction2 } from "@dxos/react-ui-menu";
237
- var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/format.ts";
237
+ var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/hooks/format.ts";
238
238
  var createFormat = () => {
239
239
  const formatAction = createMenuAction2("format", {
240
240
  label: [
@@ -283,7 +283,7 @@ var useFormatHandler = ({ script }) => useCallback2(async () => {
283
283
  script.source
284
284
  ]);
285
285
 
286
- // packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/templateSelect.ts
286
+ // packages/plugins/experimental/plugin-script/src/hooks/template.ts
287
287
  import { useCallback as useCallback3 } from "react";
288
288
  import { FUNCTIONS_PRESET_META_KEY } from "@dxos/functions";
289
289
  import { getMeta as getMeta2 } from "@dxos/live-object";
@@ -351,49 +351,7 @@ var useTemplateSelectHandler = ({ script }) => {
351
351
  ]);
352
352
  };
353
353
 
354
- // packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/useToolbarAction.ts
355
- import { useCallback as useCallback4 } from "react";
356
- import { log as log3 } from "@dxos/log";
357
- var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/useToolbarAction.ts";
358
- var useToolbarAction = (props) => {
359
- const handleTemplateSelect = useTemplateSelectHandler(props);
360
- const handleFormat = useFormatHandler(props);
361
- const handleDeploy = useDeployHandler(props);
362
- const handleCopy = useCopyHandler(props);
363
- return useCallback4((action) => {
364
- switch (action.properties.type) {
365
- case "template":
366
- handleTemplateSelect(action.properties.value);
367
- break;
368
- case "view":
369
- props.state.view = action.properties.value;
370
- break;
371
- case "format":
372
- void handleFormat();
373
- break;
374
- case "deploy":
375
- void handleDeploy();
376
- break;
377
- case "copy":
378
- void handleCopy();
379
- break;
380
- default:
381
- log3.error("Unknown action type", action, {
382
- F: __dxlog_file3,
383
- L: 49,
384
- S: void 0,
385
- C: (f, a) => f(...a)
386
- });
387
- }
388
- }, [
389
- handleTemplateSelect,
390
- handleFormat,
391
- handleDeploy,
392
- handleCopy
393
- ]);
394
- };
395
-
396
- // packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/view.ts
354
+ // packages/plugins/experimental/plugin-script/src/hooks/view.ts
397
355
  import { createMenuAction as createMenuAction4, createMenuItemGroup as createMenuItemGroup2 } from "@dxos/react-ui-menu";
398
356
  var views = {
399
357
  editor: "ph--code--regular",
@@ -450,6 +408,55 @@ var createView = (state) => {
450
408
  };
451
409
  };
452
410
 
411
+ // packages/plugins/experimental/plugin-script/src/hooks/useToolbarAction.ts
412
+ import { useCallback as useCallback4 } from "react";
413
+ import { log as log3 } from "@dxos/log";
414
+ var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/hooks/useToolbarAction.ts";
415
+ var useToolbarAction = (props) => {
416
+ const handleTemplateSelect = useTemplateSelectHandler(props);
417
+ const handleFormat = useFormatHandler(props);
418
+ const handleDeploy = useDeployHandler(props);
419
+ const handleCopy = useCopyHandler(props);
420
+ return useCallback4((action) => {
421
+ switch (action.properties.type) {
422
+ case "template":
423
+ handleTemplateSelect(action.properties.value);
424
+ break;
425
+ case "view":
426
+ props.state.view = action.properties.value;
427
+ break;
428
+ case "format":
429
+ void handleFormat();
430
+ break;
431
+ case "deploy":
432
+ void handleDeploy();
433
+ break;
434
+ case "copy":
435
+ void handleCopy();
436
+ break;
437
+ default:
438
+ log3.error("Unknown action type", action, {
439
+ F: __dxlog_file3,
440
+ L: 49,
441
+ S: void 0,
442
+ C: (f, a) => f(...a)
443
+ });
444
+ }
445
+ }, [
446
+ handleTemplateSelect,
447
+ handleFormat,
448
+ handleDeploy,
449
+ handleCopy
450
+ ]);
451
+ };
452
+
453
+ // packages/plugins/experimental/plugin-script/src/hooks/useToolbarState.ts
454
+ import { useMemo as useMemo2 } from "react";
455
+ import { create as create2 } from "@dxos/live-object";
456
+ var useToolbarState = (initialState = {}) => {
457
+ return useMemo2(() => create2(initialState), []);
458
+ };
459
+
453
460
  // packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/ScriptToolbar.tsx
454
461
  var createToolbar = (state) => {
455
462
  const templateSelect = createTemplateSelect();
@@ -497,13 +504,6 @@ var ScriptToolbar = ({ script, role, state, classNames }) => {
497
504
  }))));
498
505
  };
499
506
 
500
- // packages/plugins/experimental/plugin-script/src/components/ScriptToolbar/useToolbarState.ts
501
- import { useMemo as useMemo2 } from "react";
502
- import { create as create2 } from "@dxos/live-object";
503
- var useToolbarState = (initialState = {}) => {
504
- return useMemo2(() => create2(initialState), []);
505
- };
506
-
507
507
  // packages/plugins/experimental/plugin-script/src/components/TypescriptEditor/TypescriptEditor.tsx
508
508
  import { javascript } from "@codemirror/lang-javascript";
509
509
  import { defaultHighlightStyle } from "@codemirror/language";
@@ -626,7 +626,9 @@ var createTooltipRenderer = (themeMode) => {
626
626
  };
627
627
 
628
628
  // packages/plugins/experimental/plugin-script/src/components/ScriptContainer.tsx
629
- var ScriptContainer = ({ role, classNames, script, settings, env }) => {
629
+ var ScriptContainer = ({ role, classNames, script, settings = {
630
+ editorInputMode: "vscode"
631
+ }, env }) => {
630
632
  const identity = useIdentity();
631
633
  const space = getSpace2(script);
632
634
  const extensions = useMemo3(() => [
@@ -652,7 +654,7 @@ var ScriptContainer = ({ role, classNames, script, settings, env }) => {
652
654
  identity
653
655
  ]);
654
656
  const state = useToolbarState({
655
- view: "split"
657
+ view: "editor"
656
658
  });
657
659
  useDeployState({
658
660
  state,
@@ -684,4 +686,4 @@ export {
684
686
  ScriptContainer,
685
687
  ScriptContainer_default as default
686
688
  };
687
- //# sourceMappingURL=ScriptContainer-56ES2HQ5.mjs.map
689
+ //# sourceMappingURL=ScriptContainer-F7SNP53Z.mjs.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": ["React", "useMemo", "createDocAccessor", "getSpace", "useIdentity", "createDataExtensions", "listener", "stackItemContentEditorClassNames", "StackItem", "mx", "React", "useCallback", "fullyQualifiedId", "ElevationProvider", "stackItemContentToolbarClassNames", "createGapSeparator", "MenuProvider", "ToolbarMenu", "useMenuActions", "useCallback", "useEffect", "useMemo", "FunctionType", "getInvocationUrl", "getUserFunctionUrlInMetadata", "incrementSemverPatch", "setUserFunctionUrlInMetadata", "uploadWorkerFunction", "log", "useClient", "Filter", "create", "getMeta", "getSpace", "makeRef", "useQuery", "useTranslation", "createMenuAction", "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", "format", "prettierPluginEstree", "prettierPluginTypescript", "useCallback", "log", "createMenuAction", "createFormat", "formatAction", "createMenuAction", "label", "ns", "SCRIPT_PLUGIN", "icon", "nodes", "edges", "source", "target", "useFormatHandler", "script", "useCallback", "content", "format", "parser", "plugins", "prettierPluginEstree", "prettierPluginTypescript", "semi", "singleQuote", "err", "log", "catch", "useCallback", "FUNCTIONS_PRESET_META_KEY", "getMeta", "createMenuItemGroup", "createMenuAction", "createTemplateSelectGroup", "createMenuItemGroup", "label", "ns", "SCRIPT_PLUGIN", "variant", "createTemplateSelectActions", "templates", "map", "template", "createMenuAction", "id", "name", "value", "type", "createTemplateSelect", "templateSelectGroup", "templateSelectActions", "nodes", "edges", "source", "target", "action", "useTemplateSelectHandler", "script", "useCallback", "templateId", "find", "content", "metaKeys", "getMeta", "keys", "oldPresetIndex", "findIndex", "key", "FUNCTIONS_PRESET_META_KEY", "splice", "presetId", "push", "createMenuAction", "createMenuItemGroup", "views", "editor", "split", "debug", "createViewGroupItem", "state", "createMenuItemGroup", "label", "ns", "SCRIPT_PLUGIN", "variant", "applyActive", "value", "view", "createViewActions", "Object", "entries", "map", "viewType", "icon", "createMenuAction", "type", "checked", "createView", "viewGroupItem", "viewActions", "nodes", "edges", "source", "target", "action", "id", "useCallback", "log", "useToolbarAction", "props", "handleTemplateSelect", "useTemplateSelectHandler", "handleFormat", "useFormatHandler", "handleDeploy", "useDeployHandler", "handleCopy", "useCopyHandler", "useCallback", "action", "properties", "type", "value", "state", "view", "log", "error", "useMemo", "create", "useToolbarState", "initialState", "useMemo", "create", "createToolbar", "state", "templateSelect", "createTemplateSelect", "format", "createFormat", "gap", "createGapSeparator", "deploy", "createDeploy", "view", "createView", "nodes", "edges", "ScriptToolbar", "script", "role", "classNames", "handleAction", "useToolbarAction", "toolbarCreator", "useCallback", "menu", "useMenuActions", "div", "className", "stackItemContentToolbarClassNames", "ElevationProvider", "elevation", "MenuProvider", "onAction", "attendableId", "fullyQualifiedId", "ToolbarMenu", "javascript", "defaultHighlightStyle", "Prec", "oneDarkHighlightStyle", "keymap", "tags", "continueKeymap", "tsSync", "tsFacet", "tsLinter", "tsAutocomplete", "tsHover", "React", "useThemeContext", "autocomplete", "createBasicExtensions", "createThemeExtensions", "editorFullWidth", "editorMonospace", "EditorView", "folding", "InputModeExtensions", "useTextEditor", "nonNullable", "TypescriptEditor", "id", "env", "className", "initialValue", "extensions", "scrollTo", "selection", "toolbar", "inputMode", "themeMode", "useThemeContext", "parentRef", "focusAttributes", "useTextEditor", "createBasicExtensions", "highlightActiveLine", "indentWithTab", "lineNumbers", "lineWrapping", "scrollPastEnd", "createThemeExtensions", "syntaxHighlighting", "slots", "content", "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", "React", "div", "ref", "data-toolbar", "oneDarkHighlightStyle", "defaultHighlightStyle", "classFromKind", "_kind", "kind", "endsWith", "validTag", "tags", "tag", "style", "info", "document", "createElement", "quickInfo", "displayParts", "part", "span", "appendChild", "innerText", "text", "dom", "ScriptContainer", "role", "classNames", "script", "settings", "editorInputMode", "env", "identity", "useIdentity", "space", "getSpace", "extensions", "useMemo", "listener", "onChange", "text", "source", "target", "content", "changed", "createDataExtensions", "id", "createDocAccessor", "state", "useToolbarState", "view", "useDeployState", "React", "StackItem", "Content", "toolbar", "ScriptToolbar", "div", "className", "mx", "TypescriptEditor", "initialValue", "stackItemContentEditorClassNames", "inputMode", "DebugPanel", "functionUrl"]
7
+ }
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SCRIPT_PLUGIN
4
- } from "./chunk-BHP545D7.mjs";
4
+ } from "./chunk-P2V2Y5LV.mjs";
5
5
 
6
6
  // packages/plugins/experimental/plugin-script/src/components/DebugPanel/DebugPanel.tsx
7
7
  import React, { forwardRef, useEffect, useRef, useState } from "react";
@@ -238,4 +238,4 @@ var RobotAvatar = () => /* @__PURE__ */ React.createElement(Avatar.Root, {
238
238
  export {
239
239
  DebugPanel
240
240
  };
241
- //# sourceMappingURL=chunk-XUWS7OTK.mjs.map
241
+ //# sourceMappingURL=chunk-CGF7EOGD.mjs.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SCRIPT_PLUGIN
4
- } from "./chunk-BHP545D7.mjs";
4
+ } from "./chunk-P2V2Y5LV.mjs";
5
5
 
6
6
  // packages/plugins/experimental/plugin-script/src/capabilities/capabilities.ts
7
7
  import { defineCapability } from "@dxos/app-framework";
@@ -13,4 +13,4 @@ var ScriptCapabilities;
13
13
  export {
14
14
  ScriptCapabilities
15
15
  };
16
- //# sourceMappingURL=chunk-675XSDRN.mjs.map
16
+ //# sourceMappingURL=chunk-CP5LXTK5.mjs.map
@@ -5,11 +5,14 @@ var SCRIPT_PLUGIN = "dxos.org/plugin/script";
5
5
  var meta = {
6
6
  id: SCRIPT_PLUGIN,
7
7
  name: "Scripts",
8
- description: "Distributed functions.",
8
+ 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.",
9
9
  icon: "ph--code--regular",
10
10
  source: "https://github.com/dxos/dxos/tree/main/packages/plugins/experimental/plugin-explorer",
11
11
  tags: [
12
12
  "experimental"
13
+ ],
14
+ screenshots: [
15
+ "https://dxos.network/plugin-details-scripts-dark.png"
13
16
  ]
14
17
  };
15
18
 
@@ -17,4 +20,4 @@ export {
17
20
  SCRIPT_PLUGIN,
18
21
  meta
19
22
  };
20
- //# sourceMappingURL=chunk-BHP545D7.mjs.map
23
+ //# sourceMappingURL=chunk-P2V2Y5LV.mjs.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
+ }
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SCRIPT_PLUGIN
4
- } from "./chunk-BHP545D7.mjs";
4
+ } from "./chunk-P2V2Y5LV.mjs";
5
5
 
6
6
  // packages/plugins/experimental/plugin-script/src/components/ScriptSettings/ScriptSettings.tsx
7
7
  import React from "react";
@@ -225,8 +225,8 @@ var ScriptSettingsPanel = ({ script }) => {
225
225
 
226
226
  // packages/plugins/experimental/plugin-script/src/components/index.ts
227
227
  import { lazy } from "react";
228
- var AutomationPanel = lazy(() => import("./AutomationPanel-DMLAGQS5.mjs"));
229
- var ScriptContainer = lazy(() => import("./ScriptContainer-56ES2HQ5.mjs"));
228
+ var AutomationPanel = lazy(() => import("./AutomationPanel-W6SKG35R.mjs"));
229
+ var ScriptContainer = lazy(() => import("./ScriptContainer-F7SNP53Z.mjs"));
230
230
 
231
231
  export {
232
232
  ScriptSettings,
@@ -234,4 +234,4 @@ export {
234
234
  AutomationPanel,
235
235
  ScriptContainer
236
236
  };
237
- //# sourceMappingURL=chunk-TYGM5YLW.mjs.map
237
+ //# sourceMappingURL=chunk-PRGBYF4B.mjs.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SCRIPT_PLUGIN
4
- } from "./chunk-BHP545D7.mjs";
4
+ } from "./chunk-P2V2Y5LV.mjs";
5
5
 
6
6
  // packages/plugins/experimental/plugin-script/src/types.ts
7
7
  import { TitleAnnotationId } from "@effect/schema/AST";
@@ -38,4 +38,4 @@ export {
38
38
  ScriptAction,
39
39
  ScriptSettingsSchema
40
40
  };
41
- //# sourceMappingURL=chunk-JHGOPQVO.mjs.map
41
+ //# sourceMappingURL=chunk-UNQFIERE.mjs.map
@@ -4,8 +4,8 @@ import {
4
4
  } from "./chunk-G76M6O46.mjs";
5
5
  import {
6
6
  ScriptCapabilities
7
- } from "./chunk-675XSDRN.mjs";
8
- import "./chunk-BHP545D7.mjs";
7
+ } from "./chunk-CP5LXTK5.mjs";
8
+ import "./chunk-P2V2Y5LV.mjs";
9
9
 
10
10
  // packages/plugins/experimental/plugin-script/src/capabilities/compiler.ts
11
11
  import wasmUrl from "esbuild-wasm/esbuild.wasm?url";
@@ -82,4 +82,4 @@ var compiler_default = async () => {
82
82
  export {
83
83
  compiler_default as default
84
84
  };
85
- //# sourceMappingURL=compiler-PEARFTFR.mjs.map
85
+ //# sourceMappingURL=compiler-PDN46H4Y.mjs.map
@@ -8,24 +8,24 @@ import {
8
8
  ScriptContainer,
9
9
  ScriptSettings,
10
10
  ScriptSettingsPanel
11
- } from "./chunk-TYGM5YLW.mjs";
11
+ } from "./chunk-PRGBYF4B.mjs";
12
12
  import {
13
13
  ScriptCapabilities
14
- } from "./chunk-675XSDRN.mjs";
14
+ } from "./chunk-CP5LXTK5.mjs";
15
15
  import {
16
16
  ScriptAction
17
- } from "./chunk-JHGOPQVO.mjs";
17
+ } from "./chunk-UNQFIERE.mjs";
18
18
  import {
19
19
  SCRIPT_PLUGIN,
20
20
  meta
21
- } from "./chunk-BHP545D7.mjs";
21
+ } from "./chunk-P2V2Y5LV.mjs";
22
22
 
23
23
  // packages/plugins/experimental/plugin-script/src/capabilities/index.ts
24
24
  import { lazy } from "@dxos/app-framework";
25
- var Compiler = lazy(() => import("./compiler-PEARFTFR.mjs"));
26
- var IntentResolver = lazy(() => import("./intent-resolver-KGADFH3H.mjs"));
27
- var ReactSurface = lazy(() => import("./react-surface-JW776PVP.mjs"));
28
- var ScriptSettings2 = lazy(() => import("./settings-XGXDY4NI.mjs"));
25
+ var Compiler = lazy(() => import("./compiler-PDN46H4Y.mjs"));
26
+ var IntentResolver = lazy(() => import("./intent-resolver-75BHFRUK.mjs"));
27
+ var ReactSurface = lazy(() => import("./react-surface-PKUVZH4S.mjs"));
28
+ var ScriptSettings2 = lazy(() => import("./settings-GR4O2WHZ.mjs"));
29
29
 
30
30
  // packages/plugins/experimental/plugin-script/src/ScriptPlugin.tsx
31
31
  import { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from "@dxos/app-framework";
@@ -4,8 +4,8 @@ import {
4
4
  } from "./chunk-NBAL5DXN.mjs";
5
5
  import {
6
6
  ScriptAction
7
- } from "./chunk-JHGOPQVO.mjs";
8
- import "./chunk-BHP545D7.mjs";
7
+ } from "./chunk-UNQFIERE.mjs";
8
+ import "./chunk-P2V2Y5LV.mjs";
9
9
 
10
10
  // packages/plugins/experimental/plugin-script/src/capabilities/intent-resolver.ts
11
11
  import { Octokit } from "@octokit/core";
@@ -43,4 +43,4 @@ var intent_resolver_default = () => contributes(Capabilities.IntentResolver, cre
43
43
  export {
44
44
  intent_resolver_default as default
45
45
  };
46
- //# sourceMappingURL=intent-resolver-KGADFH3H.mjs.map
46
+ //# sourceMappingURL=intent-resolver-75BHFRUK.mjs.map