@dxos/plugin-script 0.8.0 → 0.8.1-main.013e445
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.
- package/dist/lib/browser/{ScriptContainer-3RFMYKTV.mjs → ScriptContainer-DDXZNAPF.mjs} +18 -21
- package/dist/lib/browser/ScriptContainer-DDXZNAPF.mjs.map +7 -0
- package/dist/lib/browser/{artifact-definition-4LWPD3DH.mjs → artifact-definition-GYCZJGR4.mjs} +8 -7
- package/dist/lib/browser/artifact-definition-GYCZJGR4.mjs.map +7 -0
- package/dist/lib/browser/{chunk-FVVCAWNP.mjs → chunk-27LV6ARH.mjs} +1 -1
- package/dist/lib/browser/chunk-27LV6ARH.mjs.map +7 -0
- package/dist/lib/browser/{chunk-PZPYF7M4.mjs → chunk-4SSKJNMZ.mjs} +2 -2
- package/dist/lib/browser/chunk-4SSKJNMZ.mjs.map +7 -0
- package/dist/lib/browser/{chunk-N46LE7FS.mjs → chunk-AJNRPWAA.mjs} +4 -4
- package/dist/lib/browser/{chunk-N46LE7FS.mjs.map → chunk-AJNRPWAA.mjs.map} +1 -1
- package/dist/lib/browser/{chunk-6MOQ4BP3.mjs → chunk-FG66JYON.mjs} +2 -2
- package/dist/lib/browser/{chunk-G2FYNDU4.mjs → chunk-LJN26TSM.mjs} +100 -49
- package/dist/lib/browser/chunk-LJN26TSM.mjs.map +7 -0
- package/dist/lib/browser/chunk-T7XG5GED.mjs +467 -0
- package/dist/lib/browser/chunk-T7XG5GED.mjs.map +7 -0
- package/dist/lib/browser/{compiler-YY2XSKHQ.mjs → compiler-ZQLHHJ5P.mjs} +3 -3
- package/dist/lib/browser/index.mjs +23 -28
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-D6FPY5ZA.mjs → intent-resolver-3B3Z67FP.mjs} +5 -5
- package/dist/lib/browser/{intent-resolver-D6FPY5ZA.mjs.map → intent-resolver-3B3Z67FP.mjs.map} +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-G4C2PZ2K.mjs → react-surface-ICXHFHN7.mjs} +14 -16
- package/dist/lib/browser/react-surface-ICXHFHN7.mjs.map +7 -0
- package/dist/lib/browser/{settings-SZCDKHWO.mjs → settings-467GVEBU.mjs} +3 -3
- package/dist/lib/browser/types.mjs +2 -2
- package/dist/lib/node/{ScriptContainer-G6FZU4AM.cjs → ScriptContainer-DM4WSS4Y.cjs} +26 -28
- package/dist/lib/node/ScriptContainer-DM4WSS4Y.cjs.map +7 -0
- package/dist/lib/node/{artifact-definition-BXQCFPAH.cjs → artifact-definition-3SNVJ34V.cjs} +20 -19
- package/dist/lib/node/artifact-definition-3SNVJ34V.cjs.map +7 -0
- package/dist/lib/node/{chunk-5UH3F7TA.cjs → chunk-2XX4L67K.cjs} +4 -4
- package/dist/lib/node/chunk-2XX4L67K.cjs.map +7 -0
- package/dist/lib/node/{chunk-ALY3N6PW.cjs → chunk-AOKGOI5J.cjs} +6 -6
- package/dist/lib/node/{chunk-XKYJYY3T.cjs → chunk-I5Z6TRZY.cjs} +111 -61
- package/dist/lib/node/chunk-I5Z6TRZY.cjs.map +7 -0
- package/dist/lib/node/chunk-VLQUYHPB.cjs +493 -0
- package/dist/lib/node/chunk-VLQUYHPB.cjs.map +7 -0
- package/dist/lib/node/{chunk-ITAJ3WRW.cjs → chunk-XCQNFRZ6.cjs} +5 -5
- package/dist/lib/node/chunk-XCQNFRZ6.cjs.map +7 -0
- package/dist/lib/node/{chunk-DJGLGRQV.cjs → chunk-XFB6JL2G.cjs} +10 -10
- package/dist/lib/node/chunk-XFB6JL2G.cjs.map +7 -0
- package/dist/lib/node/{compiler-UIBLKJKG.cjs → compiler-5ALLTH2B.cjs} +7 -7
- package/dist/lib/node/index.cjs +49 -54
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-NYJFPD5B.cjs → intent-resolver-CN5WMMAD.cjs} +11 -11
- package/dist/lib/node/intent-resolver-CN5WMMAD.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-EGSE3FMN.cjs → react-surface-IER3VEZR.cjs} +28 -29
- package/dist/lib/node/react-surface-IER3VEZR.cjs.map +7 -0
- package/dist/lib/node/{settings-SZFSMSKM.cjs → settings-WLYT2XQF.cjs} +9 -9
- package/dist/lib/node/types.cjs +4 -4
- package/dist/lib/node/types.cjs.map +1 -1
- package/dist/lib/node-esm/{ScriptContainer-7FTCFIF3.mjs → ScriptContainer-HWCHDARL.mjs} +18 -21
- package/dist/lib/node-esm/ScriptContainer-HWCHDARL.mjs.map +7 -0
- package/dist/lib/node-esm/{artifact-definition-KT4DK2LQ.mjs → artifact-definition-VAFNV62U.mjs} +8 -7
- package/dist/lib/node-esm/artifact-definition-VAFNV62U.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-YIWRJ25J.mjs → chunk-4YUSGXJ2.mjs} +2 -2
- package/dist/lib/node-esm/chunk-4YUSGXJ2.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-P2V2Y5LV.mjs → chunk-5S2KBIMH.mjs} +1 -1
- package/dist/lib/node-esm/chunk-5S2KBIMH.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-BIFA5BEB.mjs +468 -0
- package/dist/lib/node-esm/chunk-BIFA5BEB.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-NRICF4KE.mjs → chunk-F2O475DQ.mjs} +100 -49
- package/dist/lib/node-esm/chunk-F2O475DQ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-CP5LXTK5.mjs → chunk-MFXRE7ZD.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-UNQFIERE.mjs → chunk-WQ4YIZ2L.mjs} +4 -4
- package/dist/lib/node-esm/{chunk-UNQFIERE.mjs.map → chunk-WQ4YIZ2L.mjs.map} +1 -1
- package/dist/lib/node-esm/{compiler-XTXFGZJM.mjs → compiler-K7GYROAO.mjs} +3 -3
- package/dist/lib/node-esm/index.mjs +23 -28
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-KLBHSMW4.mjs → intent-resolver-6F7CVQEX.mjs} +5 -5
- package/dist/lib/node-esm/{intent-resolver-KLBHSMW4.mjs.map → intent-resolver-6F7CVQEX.mjs.map} +1 -1
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-7YSGHZQM.mjs → react-surface-EXSKKZNP.mjs} +14 -16
- package/dist/lib/node-esm/react-surface-EXSKKZNP.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-GR4O2WHZ.mjs → settings-DR3B6GHE.mjs} +3 -3
- package/dist/lib/node-esm/types.mjs +2 -2
- package/dist/types/src/ScriptPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/components/DebugPanel/DebugPanel.d.ts +2 -1
- package/dist/types/src/components/DebugPanel/DebugPanel.d.ts.map +1 -1
- package/dist/types/src/components/FrameContainer/FrameContainer.d.ts +2 -1
- package/dist/types/src/components/FrameContainer/FrameContainer.d.ts.map +1 -1
- package/dist/types/src/components/LogsPanel/LogsPanel.d.ts +8 -0
- package/dist/types/src/components/LogsPanel/LogsPanel.d.ts.map +1 -0
- package/dist/types/src/components/LogsPanel/index.d.ts +2 -0
- package/dist/types/src/components/LogsPanel/index.d.ts.map +1 -0
- package/dist/types/src/components/ScriptContainer.d.ts +4 -2
- package/dist/types/src/components/ScriptContainer.d.ts.map +1 -1
- package/dist/types/src/components/ScriptSettings/ScriptSettings.d.ts +2 -1
- package/dist/types/src/components/ScriptSettings/ScriptSettings.d.ts.map +1 -1
- package/dist/types/src/components/ScriptSettingsPanel.d.ts +3 -2
- package/dist/types/src/components/ScriptSettingsPanel.d.ts.map +1 -1
- package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +3 -2
- package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
- package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts +2 -1
- package/dist/types/src/components/TypescriptEditor/TypescriptEditor.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +2 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/hooks/deploy.d.ts +24 -0
- package/dist/types/src/hooks/deploy.d.ts.map +1 -1
- package/dist/types/src/hooks/format.d.ts +1 -1
- package/dist/types/src/hooks/format.d.ts.map +1 -1
- package/dist/types/src/hooks/template.d.ts +1 -1
- package/dist/types/src/hooks/template.d.ts.map +1 -1
- package/dist/types/src/hooks/useToolbarAction.d.ts +1 -1
- package/dist/types/src/hooks/useToolbarAction.d.ts.map +1 -1
- package/dist/types/src/hooks/useToolbarState.d.ts +2 -8
- package/dist/types/src/hooks/useToolbarState.d.ts.map +1 -1
- package/dist/types/src/hooks/view.d.ts +3 -15
- package/dist/types/src/hooks/view.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +2 -9
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/templates/discord.d.ts.map +1 -1
- package/dist/types/src/templates/index.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +8 -12
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types.d.ts +8 -2
- package/dist/types/src/types.d.ts.map +1 -1
- package/package.json +47 -43
- package/src/ScriptPlugin.tsx +3 -3
- package/src/capabilities/artifact-definition.ts +2 -1
- package/src/capabilities/intent-resolver.ts +1 -1
- package/src/capabilities/react-surface.tsx +16 -6
- package/src/components/LogsPanel/LogsPanel.tsx +116 -0
- package/src/components/LogsPanel/index.ts +5 -0
- package/src/components/ScriptContainer.tsx +18 -12
- package/src/components/ScriptSettingsPanel.tsx +1 -1
- package/src/components/ScriptToolbar/ScriptToolbar.tsx +1 -1
- package/src/components/TypescriptEditor/TypescriptEditor.tsx +1 -0
- package/src/components/index.ts +1 -0
- package/src/hooks/deploy.ts +4 -5
- package/src/hooks/format.ts +1 -1
- package/src/hooks/template.ts +1 -1
- package/src/hooks/useToolbarAction.ts +13 -4
- package/src/hooks/useToolbarState.ts +2 -2
- package/src/hooks/view.ts +7 -24
- package/src/meta.ts +2 -2
- package/src/templates/discord.ts +12 -5
- package/src/templates/index.ts +0 -7
- package/src/translations.ts +4 -7
- package/src/types.ts +2 -2
- package/src/vite-env.d.ts +20 -0
- package/dist/lib/browser/ScriptContainer-3RFMYKTV.mjs.map +0 -7
- package/dist/lib/browser/artifact-definition-4LWPD3DH.mjs.map +0 -7
- package/dist/lib/browser/chunk-5SXOHNAK.mjs +0 -240
- package/dist/lib/browser/chunk-5SXOHNAK.mjs.map +0 -7
- package/dist/lib/browser/chunk-FVVCAWNP.mjs.map +0 -7
- package/dist/lib/browser/chunk-G2FYNDU4.mjs.map +0 -7
- package/dist/lib/browser/chunk-PZPYF7M4.mjs.map +0 -7
- package/dist/lib/browser/chunk-VTWBVFBK.mjs +0 -234
- package/dist/lib/browser/chunk-VTWBVFBK.mjs.map +0 -7
- package/dist/lib/browser/react-surface-G4C2PZ2K.mjs.map +0 -7
- package/dist/lib/node/ScriptContainer-G6FZU4AM.cjs.map +0 -7
- package/dist/lib/node/artifact-definition-BXQCFPAH.cjs.map +0 -7
- package/dist/lib/node/chunk-5UH3F7TA.cjs.map +0 -7
- package/dist/lib/node/chunk-DJGLGRQV.cjs.map +0 -7
- package/dist/lib/node/chunk-ITAJ3WRW.cjs.map +0 -7
- package/dist/lib/node/chunk-K3ZZWVXS.cjs +0 -269
- package/dist/lib/node/chunk-K3ZZWVXS.cjs.map +0 -7
- package/dist/lib/node/chunk-TOXBGIEI.cjs +0 -261
- package/dist/lib/node/chunk-TOXBGIEI.cjs.map +0 -7
- package/dist/lib/node/chunk-XKYJYY3T.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-NYJFPD5B.cjs.map +0 -7
- package/dist/lib/node/react-surface-EGSE3FMN.cjs.map +0 -7
- package/dist/lib/node-esm/ScriptContainer-7FTCFIF3.mjs.map +0 -7
- package/dist/lib/node-esm/artifact-definition-KT4DK2LQ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2AFXX34U.mjs +0 -241
- package/dist/lib/node-esm/chunk-2AFXX34U.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-NRICF4KE.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-P2V2Y5LV.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-S64WSJQK.mjs +0 -235
- package/dist/lib/node-esm/chunk-S64WSJQK.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-YIWRJ25J.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-7YSGHZQM.mjs.map +0 -7
- /package/dist/lib/browser/{chunk-6MOQ4BP3.mjs.map → chunk-FG66JYON.mjs.map} +0 -0
- /package/dist/lib/browser/{compiler-YY2XSKHQ.mjs.map → compiler-ZQLHHJ5P.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-SZCDKHWO.mjs.map → settings-467GVEBU.mjs.map} +0 -0
- /package/dist/lib/node/{chunk-ALY3N6PW.cjs.map → chunk-AOKGOI5J.cjs.map} +0 -0
- /package/dist/lib/node/{compiler-UIBLKJKG.cjs.map → compiler-5ALLTH2B.cjs.map} +0 -0
- /package/dist/lib/node/{settings-SZFSMSKM.cjs.map → settings-WLYT2XQF.cjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-CP5LXTK5.mjs.map → chunk-MFXRE7ZD.mjs.map} +0 -0
- /package/dist/lib/node-esm/{compiler-XTXFGZJM.mjs.map → compiler-K7GYROAO.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-GR4O2WHZ.mjs.map → settings-DR3B6GHE.mjs.map} +0 -0
|
@@ -26,8 +26,9 @@ 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
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_I5Z6TRZY_exports = {};
|
|
30
|
+
__export(chunk_I5Z6TRZY_exports, {
|
|
31
|
+
LogsPanel: () => LogsPanel,
|
|
31
32
|
createDeploy: () => createDeploy,
|
|
32
33
|
createFormat: () => createFormat,
|
|
33
34
|
createTemplateSelect: () => createTemplateSelect,
|
|
@@ -36,9 +37,9 @@ __export(chunk_XKYJYY3T_exports, {
|
|
|
36
37
|
useToolbarAction: () => useToolbarAction,
|
|
37
38
|
useToolbarState: () => useToolbarState
|
|
38
39
|
});
|
|
39
|
-
module.exports = __toCommonJS(
|
|
40
|
-
var
|
|
41
|
-
var
|
|
40
|
+
module.exports = __toCommonJS(chunk_I5Z6TRZY_exports);
|
|
41
|
+
var import_chunk_XCQNFRZ6 = require("./chunk-XCQNFRZ6.cjs");
|
|
42
|
+
var import_chunk_2XX4L67K = require("./chunk-2XX4L67K.cjs");
|
|
42
43
|
var import_react = require("react");
|
|
43
44
|
var import_functions = require("@dxos/functions");
|
|
44
45
|
var import_bundler = require("@dxos/functions/bundler");
|
|
@@ -56,19 +57,28 @@ var import_react3 = require("react");
|
|
|
56
57
|
var import_log2 = require("@dxos/log");
|
|
57
58
|
var import_react_ui_menu2 = require("@dxos/react-ui-menu");
|
|
58
59
|
var import_react4 = require("react");
|
|
59
|
-
var
|
|
60
|
+
var import_types = require("@dxos/functions/types");
|
|
60
61
|
var import_live_object2 = require("@dxos/live-object");
|
|
61
62
|
var import_react_ui_menu3 = require("@dxos/react-ui-menu");
|
|
62
63
|
var import_react_ui_menu4 = require("@dxos/react-ui-menu");
|
|
63
64
|
var import_react5 = require("react");
|
|
65
|
+
var import_app_framework = require("@dxos/app-framework");
|
|
64
66
|
var import_log3 = require("@dxos/log");
|
|
67
|
+
var import_types2 = require("@dxos/plugin-deck/types");
|
|
68
|
+
var import_echo2 = require("@dxos/react-client/echo");
|
|
69
|
+
var import_react6 = __toESM(require("react"));
|
|
70
|
+
var import_echo_protocol = require("@dxos/echo-protocol");
|
|
71
|
+
var import_types3 = require("@dxos/functions/types");
|
|
72
|
+
var import_echo3 = require("@dxos/react-client/echo");
|
|
73
|
+
var import_react_ui2 = require("@dxos/react-ui");
|
|
74
|
+
var import_react_ui_theme = require("@dxos/react-ui-theme");
|
|
65
75
|
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/hooks/deploy.ts";
|
|
66
76
|
var createDeploy = (state) => {
|
|
67
77
|
const errorItem = (0, import_react_ui_menu.createMenuAction)("error", {
|
|
68
78
|
label: state.error ?? [
|
|
69
79
|
"no error label",
|
|
70
80
|
{
|
|
71
|
-
ns:
|
|
81
|
+
ns: import_chunk_2XX4L67K.SCRIPT_PLUGIN
|
|
72
82
|
}
|
|
73
83
|
],
|
|
74
84
|
icon: "ph--warning-circle--regular",
|
|
@@ -79,7 +89,7 @@ var createDeploy = (state) => {
|
|
|
79
89
|
label: [
|
|
80
90
|
state.deploying ? "pending label" : "deploy label",
|
|
81
91
|
{
|
|
82
|
-
ns:
|
|
92
|
+
ns: import_chunk_2XX4L67K.SCRIPT_PLUGIN
|
|
83
93
|
}
|
|
84
94
|
],
|
|
85
95
|
icon: state.deploying ? "ph--spinner-gap--regular" : "ph--cloud-arrow-up--regular",
|
|
@@ -91,7 +101,7 @@ var createDeploy = (state) => {
|
|
|
91
101
|
label: [
|
|
92
102
|
"copy link label",
|
|
93
103
|
{
|
|
94
|
-
ns:
|
|
104
|
+
ns: import_chunk_2XX4L67K.SCRIPT_PLUGIN
|
|
95
105
|
}
|
|
96
106
|
],
|
|
97
107
|
icon: "ph--link--regular",
|
|
@@ -119,7 +129,7 @@ var createDeploy = (state) => {
|
|
|
119
129
|
]
|
|
120
130
|
};
|
|
121
131
|
};
|
|
122
|
-
var useDeployDeps = ({
|
|
132
|
+
var useDeployDeps = ({ script }) => {
|
|
123
133
|
const space = (0, import_echo.getSpace)(script);
|
|
124
134
|
const [fn] = (0, import_echo.useQuery)(space, import_echo.Filter.schema(import_functions.FunctionType, {
|
|
125
135
|
source: script
|
|
@@ -137,7 +147,6 @@ var useDeployDeps = ({ state, script }) => {
|
|
|
137
147
|
};
|
|
138
148
|
var useDeployState = ({ state, script }) => {
|
|
139
149
|
const { space, client, existingFunctionUrl } = useDeployDeps({
|
|
140
|
-
state,
|
|
141
150
|
script
|
|
142
151
|
});
|
|
143
152
|
(0, import_react.useEffect)(() => {
|
|
@@ -160,10 +169,9 @@ var useDeployState = ({ state, script }) => {
|
|
|
160
169
|
};
|
|
161
170
|
var useDeployHandler = ({ state, script }) => {
|
|
162
171
|
const { space, fn, client, existingFunctionUrl } = useDeployDeps({
|
|
163
|
-
state,
|
|
164
172
|
script
|
|
165
173
|
});
|
|
166
|
-
const { t } = (0, import_react_ui.useTranslation)(
|
|
174
|
+
const { t } = (0, import_react_ui.useTranslation)(import_chunk_2XX4L67K.SCRIPT_PLUGIN);
|
|
167
175
|
return (0, import_react.useCallback)(async () => {
|
|
168
176
|
if (!script.source || !space) {
|
|
169
177
|
return;
|
|
@@ -244,17 +252,16 @@ var useDeployHandler = ({ state, script }) => {
|
|
|
244
252
|
functionId
|
|
245
253
|
}, {
|
|
246
254
|
F: __dxlog_file,
|
|
247
|
-
L:
|
|
255
|
+
L: 150,
|
|
248
256
|
S: void 0,
|
|
249
257
|
C: (f, a) => f(...a)
|
|
250
258
|
});
|
|
251
259
|
}
|
|
252
260
|
(0, import_functions.setUserFunctionUrlInMetadata)((0, import_echo.getMeta)(deployedFunction), `/${space.id}/${functionId}`);
|
|
253
|
-
state.view = "split";
|
|
254
261
|
} catch (err) {
|
|
255
262
|
import_log.log.catch(err, void 0, {
|
|
256
263
|
F: __dxlog_file,
|
|
257
|
-
L:
|
|
264
|
+
L: 155,
|
|
258
265
|
S: void 0,
|
|
259
266
|
C: (f, a) => f(...a)
|
|
260
267
|
});
|
|
@@ -289,7 +296,7 @@ var createFormat = () => {
|
|
|
289
296
|
label: [
|
|
290
297
|
"format label",
|
|
291
298
|
{
|
|
292
|
-
ns:
|
|
299
|
+
ns: import_chunk_2XX4L67K.SCRIPT_PLUGIN
|
|
293
300
|
}
|
|
294
301
|
],
|
|
295
302
|
icon: "ph--magic-wand--regular"
|
|
@@ -336,14 +343,14 @@ var createTemplateSelectGroup = () => {
|
|
|
336
343
|
label: [
|
|
337
344
|
"template select group label",
|
|
338
345
|
{
|
|
339
|
-
ns:
|
|
346
|
+
ns: import_chunk_2XX4L67K.SCRIPT_PLUGIN
|
|
340
347
|
}
|
|
341
348
|
],
|
|
342
349
|
variant: "dropdownMenu"
|
|
343
350
|
});
|
|
344
351
|
};
|
|
345
352
|
var createTemplateSelectActions = () => {
|
|
346
|
-
return
|
|
353
|
+
return import_chunk_XCQNFRZ6.templates.map((template) => {
|
|
347
354
|
return (0, import_react_ui_menu3.createMenuAction)(`template--${template.id}`, {
|
|
348
355
|
label: template.name,
|
|
349
356
|
value: template.id,
|
|
@@ -373,18 +380,18 @@ var createTemplateSelect = () => {
|
|
|
373
380
|
};
|
|
374
381
|
var useTemplateSelectHandler = ({ script }) => {
|
|
375
382
|
return (0, import_react4.useCallback)((templateId) => {
|
|
376
|
-
const template =
|
|
383
|
+
const template = import_chunk_XCQNFRZ6.templates.find((template2) => template2.id === templateId);
|
|
377
384
|
if (template) {
|
|
378
385
|
script.name = template.name;
|
|
379
386
|
script.source.target.content = template.source;
|
|
380
387
|
const metaKeys = (0, import_live_object2.getMeta)(script).keys;
|
|
381
|
-
const oldPresetIndex = metaKeys.findIndex((key) => key.source ===
|
|
388
|
+
const oldPresetIndex = metaKeys.findIndex((key) => key.source === import_types.FUNCTIONS_PRESET_META_KEY);
|
|
382
389
|
if (oldPresetIndex >= 0) {
|
|
383
390
|
metaKeys.splice(oldPresetIndex, 1);
|
|
384
391
|
}
|
|
385
392
|
if (template.presetId) {
|
|
386
393
|
metaKeys.push({
|
|
387
|
-
source:
|
|
394
|
+
source: import_types.FUNCTIONS_PRESET_META_KEY,
|
|
388
395
|
id: template.presetId
|
|
389
396
|
});
|
|
390
397
|
}
|
|
@@ -394,22 +401,9 @@ var useTemplateSelectHandler = ({ script }) => {
|
|
|
394
401
|
]);
|
|
395
402
|
};
|
|
396
403
|
var views = {
|
|
397
|
-
editor:
|
|
398
|
-
split:
|
|
399
|
-
|
|
400
|
-
};
|
|
401
|
-
var createViewGroupItem = (state) => {
|
|
402
|
-
return (0, import_react_ui_menu4.createMenuItemGroup)("view", {
|
|
403
|
-
label: [
|
|
404
|
-
"view group label",
|
|
405
|
-
{
|
|
406
|
-
ns: import_chunk_5UH3F7TA.SCRIPT_PLUGIN
|
|
407
|
-
}
|
|
408
|
-
],
|
|
409
|
-
variant: "dropdownMenu",
|
|
410
|
-
applyActive: true,
|
|
411
|
-
value: state.view
|
|
412
|
-
});
|
|
404
|
+
// editor: 'ph--code--regular',
|
|
405
|
+
// split: 'ph--square-split-vertical--regular',
|
|
406
|
+
logs: "ph--clock-counter-clockwise--regular"
|
|
413
407
|
};
|
|
414
408
|
var createViewActions = (state) => {
|
|
415
409
|
return Object.entries(views).map(([viewType, icon]) => {
|
|
@@ -419,32 +413,21 @@ var createViewActions = (state) => {
|
|
|
419
413
|
label: [
|
|
420
414
|
`view ${viewType} label`,
|
|
421
415
|
{
|
|
422
|
-
ns:
|
|
416
|
+
ns: import_chunk_2XX4L67K.SCRIPT_PLUGIN
|
|
423
417
|
}
|
|
424
418
|
],
|
|
425
|
-
icon
|
|
426
|
-
checked: state.view === viewType
|
|
419
|
+
icon
|
|
427
420
|
});
|
|
428
421
|
});
|
|
429
422
|
};
|
|
430
423
|
var createView = (state) => {
|
|
431
|
-
const viewGroupItem = createViewGroupItem(state);
|
|
432
424
|
const viewActions = createViewActions(state);
|
|
433
425
|
return {
|
|
434
|
-
nodes:
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
{
|
|
440
|
-
source: "root",
|
|
441
|
-
target: "view"
|
|
442
|
-
},
|
|
443
|
-
...viewActions.map((action) => ({
|
|
444
|
-
source: "view",
|
|
445
|
-
target: action.id
|
|
446
|
-
}))
|
|
447
|
-
]
|
|
426
|
+
nodes: viewActions,
|
|
427
|
+
edges: viewActions.map((action) => ({
|
|
428
|
+
source: "root",
|
|
429
|
+
target: action.id
|
|
430
|
+
}))
|
|
448
431
|
};
|
|
449
432
|
};
|
|
450
433
|
var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-script/src/hooks/useToolbarAction.ts";
|
|
@@ -453,14 +436,18 @@ var useToolbarAction = (props) => {
|
|
|
453
436
|
const handleFormat = useFormatHandler(props);
|
|
454
437
|
const handleDeploy = useDeployHandler(props);
|
|
455
438
|
const handleCopy = useCopyHandler(props);
|
|
439
|
+
const { dispatchPromise: dispatch } = (0, import_app_framework.useIntentDispatcher)();
|
|
456
440
|
return (0, import_react5.useCallback)((action) => {
|
|
457
441
|
switch (action.properties.type) {
|
|
442
|
+
case "view":
|
|
443
|
+
void dispatch((0, import_app_framework.createIntent)(import_types2.DeckAction.ChangeCompanion, {
|
|
444
|
+
primary: (0, import_echo2.fullyQualifiedId)(props.script),
|
|
445
|
+
companion: (0, import_types2.surfaceVariant)("logs")
|
|
446
|
+
}));
|
|
447
|
+
break;
|
|
458
448
|
case "template":
|
|
459
449
|
handleTemplateSelect(action.properties.value);
|
|
460
450
|
break;
|
|
461
|
-
case "view":
|
|
462
|
-
props.state.view = action.properties.value;
|
|
463
|
-
break;
|
|
464
451
|
case "format":
|
|
465
452
|
void handleFormat();
|
|
466
453
|
break;
|
|
@@ -473,7 +460,7 @@ var useToolbarAction = (props) => {
|
|
|
473
460
|
default:
|
|
474
461
|
import_log3.log.error("Unknown action type", action, {
|
|
475
462
|
F: __dxlog_file3,
|
|
476
|
-
L:
|
|
463
|
+
L: 58,
|
|
477
464
|
S: void 0,
|
|
478
465
|
C: (f, a) => f(...a)
|
|
479
466
|
});
|
|
@@ -485,8 +472,71 @@ var useToolbarAction = (props) => {
|
|
|
485
472
|
handleCopy
|
|
486
473
|
]);
|
|
487
474
|
};
|
|
475
|
+
var LogsPanel = ({ script, classNames }) => {
|
|
476
|
+
const { t } = (0, import_react_ui2.useTranslation)(import_chunk_2XX4L67K.SCRIPT_PLUGIN);
|
|
477
|
+
const { space, existingFunctionUrl } = useDeployDeps({
|
|
478
|
+
script
|
|
479
|
+
});
|
|
480
|
+
const invocationTraceQueue = (0, import_echo3.useQueue)(space?.properties.invocationTraceQueue?.dxn, {
|
|
481
|
+
pollInterval: 500
|
|
482
|
+
});
|
|
483
|
+
const invocationSpans = (0, import_react6.useMemo)(() => (0, import_types3.createInvocationSpans)(invocationTraceQueue?.items), [
|
|
484
|
+
invocationTraceQueue?.items ?? []
|
|
485
|
+
]);
|
|
486
|
+
const [selected, setSelected] = (0, import_react6.useState)();
|
|
487
|
+
const workerDxn = `dxn:worker:${existingFunctionUrl?.split("/").at(-1)}`;
|
|
488
|
+
if (!invocationTraceQueue) {
|
|
489
|
+
return /* @__PURE__ */ import_react6.default.createElement("div", null, t("no invocations message"));
|
|
490
|
+
}
|
|
491
|
+
const handleOpenChange = (0, import_react6.useCallback)((trace, open) => {
|
|
492
|
+
setSelected(open ? trace : void 0);
|
|
493
|
+
}, []);
|
|
494
|
+
return /* @__PURE__ */ import_react6.default.createElement(import_react_ui2.List, {
|
|
495
|
+
classNames: (0, import_react_ui_theme.mx)("overflow-y-auto", classNames)
|
|
496
|
+
}, invocationSpans.filter((trace) => (0, import_echo_protocol.decodeReference)(trace.invocationTarget).dxn?.toString() === workerDxn).map((trace) => /* @__PURE__ */ import_react6.default.createElement(InvocationTraceItem, {
|
|
497
|
+
key: trace.id,
|
|
498
|
+
trace,
|
|
499
|
+
open: selected?.id === trace.id,
|
|
500
|
+
setOpen: handleOpenChange
|
|
501
|
+
})));
|
|
502
|
+
};
|
|
503
|
+
var InvocationTraceItem = ({ trace, open, setOpen }) => {
|
|
504
|
+
const eventQueue = (0, import_echo3.useQueue)(open ? (0, import_echo_protocol.decodeReference)(trace.invocationTraceQueue).dxn : void 0);
|
|
505
|
+
const handleOpenChange = (0, import_react6.useCallback)((open2) => {
|
|
506
|
+
setOpen?.(trace, open2);
|
|
507
|
+
}, [
|
|
508
|
+
trace,
|
|
509
|
+
setOpen
|
|
510
|
+
]);
|
|
511
|
+
const logs = (0, import_react6.useMemo)(() => eventQueue?.items.flatMap((event) => event.logs), [
|
|
512
|
+
eventQueue?.items
|
|
513
|
+
]);
|
|
514
|
+
const heading = "bodyText" in trace.input && typeof trace.input.bodyText === "string" ? trace.input.bodyText : JSON.stringify(trace.input);
|
|
515
|
+
return /* @__PURE__ */ import_react6.default.createElement(import_react_ui2.ListItem.Root, {
|
|
516
|
+
key: trace.id,
|
|
517
|
+
collapsible: true,
|
|
518
|
+
open,
|
|
519
|
+
onOpenChange: handleOpenChange
|
|
520
|
+
}, /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
521
|
+
className: "flex items-center gap-2"
|
|
522
|
+
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui2.ListItem.OpenTrigger, null), /* @__PURE__ */ import_react6.default.createElement(import_react_ui2.ListItem.Endcap, {
|
|
523
|
+
classNames: "flex items-center justify-center"
|
|
524
|
+
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui2.Icon, {
|
|
525
|
+
icon: trace.outcome === "success" ? "ph--check--regular" : "ph--x--regular",
|
|
526
|
+
size: 5
|
|
527
|
+
})), /* @__PURE__ */ import_react6.default.createElement(import_react_ui2.ListItem.Heading, {
|
|
528
|
+
classNames: "flex-1 flex items-center gap-2 truncate"
|
|
529
|
+
}, /* @__PURE__ */ import_react6.default.createElement("span", null, new Date(trace.timestampMs).toLocaleString()), /* @__PURE__ */ import_react6.default.createElement("span", null, heading))), logs && /* @__PURE__ */ import_react6.default.createElement(import_react_ui2.ListItem.CollapsibleContent, null, /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
530
|
+
className: "flex items-center gap-2"
|
|
531
|
+
}, /* @__PURE__ */ import_react6.default.createElement("span", null, "Duration:"), /* @__PURE__ */ import_react6.default.createElement("span", null, trace.durationMs, "ms")), /* @__PURE__ */ import_react6.default.createElement("pre", null, /* @__PURE__ */ import_react6.default.createElement("div", null, JSON.stringify(trace.input, null, 2)), logs.map((log4, index) => {
|
|
532
|
+
return /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
533
|
+
key: index
|
|
534
|
+
}, JSON.stringify(log4, null, 2));
|
|
535
|
+
}))));
|
|
536
|
+
};
|
|
488
537
|
// Annotate the CommonJS export names for ESM import in node:
|
|
489
538
|
0 && (module.exports = {
|
|
539
|
+
LogsPanel,
|
|
490
540
|
createDeploy,
|
|
491
541
|
createFormat,
|
|
492
542
|
createTemplateSelect,
|
|
@@ -495,4 +545,4 @@ var useToolbarAction = (props) => {
|
|
|
495
545
|
useToolbarAction,
|
|
496
546
|
useToolbarState
|
|
497
547
|
});
|
|
498
|
-
//# sourceMappingURL=chunk-
|
|
548
|
+
//# sourceMappingURL=chunk-I5Z6TRZY.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/hooks/deploy.ts", "../../../src/hooks/useToolbarState.ts", "../../../src/hooks/format.ts", "../../../src/hooks/template.ts", "../../../src/hooks/view.ts", "../../../src/hooks/useToolbarAction.ts", "../../../src/components/LogsPanel/LogsPanel.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { useCallback, useEffect, useMemo } from 'react';\n\nimport {\n FunctionType,\n type ScriptType,\n getInvocationUrl,\n getUserFunctionUrlInMetadata,\n incrementSemverPatch,\n setUserFunctionUrlInMetadata,\n uploadWorkerFunction,\n} from '@dxos/functions';\nimport { Bundler } from '@dxos/functions/bundler';\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 { 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\nexport const useDeployDeps = ({ script }: { 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({ 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({ 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({ source: 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 if (script.description !== undefined && script.description.trim() !== '') {\n deployedFunction.description = script.description;\n } else if (meta.description) {\n deployedFunction.description = meta.description;\n } else {\n log.verbose('no description in function metadata', { functionId });\n }\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 if (meta.outputSchema) {\n deployedFunction.outputSchema = meta.outputSchema;\n } else {\n log.verbose('no output schema in function metadata', { functionId });\n }\n\n setUserFunctionUrlInMetadata(getMeta(deployedFunction), `/${space.id}/${functionId}`);\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 { useMemo } from 'react';\n\nimport { create } from '@dxos/live-object';\n\nimport { type DeployState } from './deploy';\n\nexport type ScriptToolbarState = Partial<DeployState>;\n\n// TODO(burdon): Replace with context provider?\nexport const useToolbarState = (initialState: ScriptToolbarState = {}) => {\n return useMemo(() => create<ScriptToolbarState>(initialState), []);\n};\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/types';\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/types';\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 } from '@dxos/react-ui-menu';\n\nimport { SCRIPT_PLUGIN } from '../meta';\n\nexport type ViewType = /* 'editor' | 'split' | */ 'logs';\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 logs: 'ph--clock-counter-clockwise--regular',\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 });\n });\n};\n\nexport const createView = (state: Partial<ViewState>) => {\n const viewActions = createViewActions(state);\n return {\n nodes: viewActions,\n edges: viewActions.map((action) => ({ source: 'root', target: action.id })),\n };\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useCallback } from 'react';\n\nimport { createIntent, useIntentDispatcher } from '@dxos/app-framework';\nimport { type ScriptType } from '@dxos/functions/types';\nimport { log } from '@dxos/log';\nimport { DeckAction, surfaceVariant } from '@dxos/plugin-deck/types';\nimport { fullyQualifiedId } from '@dxos/react-client/echo';\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 const { dispatchPromise: dispatch } = useIntentDispatcher();\n return useCallback(\n ((action: ScriptToolbarAction) => {\n switch (action.properties.type) {\n case 'view':\n void dispatch(\n createIntent(DeckAction.ChangeCompanion, {\n primary: fullyQualifiedId(props.script),\n companion: surfaceVariant('logs'),\n }),\n );\n break;\n case 'template':\n handleTemplateSelect(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 2024 DXOS.org\n//\n\nimport React, { useCallback, useMemo, useState } from 'react';\n\nimport { decodeReference } from '@dxos/echo-protocol';\nimport {\n type InvocationTraceEvent,\n type ScriptType,\n type TraceEvent,\n type InvocationSpan,\n createInvocationSpans,\n} from '@dxos/functions/types';\nimport { useQueue } from '@dxos/react-client/echo';\nimport { Icon, List, ListItem, useTranslation, type ThemedClassName } from '@dxos/react-ui';\nimport { mx } from '@dxos/react-ui-theme';\n\nimport { useDeployDeps } from '../../hooks';\nimport { SCRIPT_PLUGIN } from '../../meta';\n\nexport type LogsPanelProps = ThemedClassName<{\n script: ScriptType;\n}>;\n\nexport const LogsPanel = ({ script, classNames }: LogsPanelProps) => {\n const { t } = useTranslation(SCRIPT_PLUGIN);\n // TODO(wittjosiah): Refactor these hooks.\n const { space, existingFunctionUrl } = useDeployDeps({ script });\n const invocationTraceQueue = useQueue<InvocationTraceEvent>(space?.properties.invocationTraceQueue?.dxn, {\n pollInterval: 500,\n });\n const invocationSpans = useMemo(\n () => createInvocationSpans(invocationTraceQueue?.items),\n [invocationTraceQueue?.items ?? []],\n );\n const [selected, setSelected] = useState<InvocationSpan>();\n const workerDxn = `dxn:worker:${existingFunctionUrl?.split('/').at(-1)}`;\n\n if (!invocationTraceQueue) {\n return <div>{t('no invocations message')}</div>;\n }\n\n const handleOpenChange = useCallback((trace: InvocationSpan, open: boolean) => {\n setSelected(open ? trace : undefined);\n }, []);\n\n return (\n <List classNames={mx('overflow-y-auto', classNames)}>\n {invocationSpans\n .filter((trace) => decodeReference(trace.invocationTarget).dxn?.toString() === workerDxn)\n .map((trace) => (\n <InvocationTraceItem\n key={trace.id}\n trace={trace}\n open={selected?.id === trace.id}\n setOpen={handleOpenChange}\n />\n ))}\n </List>\n );\n};\n\nconst InvocationTraceItem = ({\n trace,\n open,\n setOpen,\n}: {\n trace: InvocationSpan;\n open?: boolean;\n setOpen?: (trace: InvocationSpan, open: boolean) => void;\n}) => {\n const eventQueue = useQueue<TraceEvent>(open ? decodeReference(trace.invocationTraceQueue).dxn : undefined);\n\n const handleOpenChange = useCallback(\n (open: boolean) => {\n setOpen?.(trace, open);\n },\n [trace, setOpen],\n );\n\n const logs = useMemo(() => eventQueue?.items.flatMap((event) => event.logs), [eventQueue?.items]);\n const heading =\n 'bodyText' in trace.input && typeof trace.input.bodyText === 'string'\n ? trace.input.bodyText\n : JSON.stringify(trace.input);\n\n return (\n <ListItem.Root key={trace.id} collapsible open={open} onOpenChange={handleOpenChange}>\n <div className='flex items-center gap-2'>\n <ListItem.OpenTrigger />\n <ListItem.Endcap classNames='flex items-center justify-center'>\n <Icon icon={trace.outcome === 'success' ? 'ph--check--regular' : 'ph--x--regular'} size={5} />\n </ListItem.Endcap>\n <ListItem.Heading classNames='flex-1 flex items-center gap-2 truncate'>\n <span>{new Date(trace.timestampMs).toLocaleString()}</span>\n <span>{heading}</span>\n </ListItem.Heading>\n </div>\n {logs && (\n <ListItem.CollapsibleContent>\n <div className='flex items-center gap-2'>\n <span>Duration:</span>\n <span>{trace.durationMs}ms</span>\n </div>\n <pre>\n <div>{JSON.stringify(trace.input, null, 2)}</div>\n {logs.map((log, index) => {\n return <div key={index}>{JSON.stringify(log, null, 2)}</div>;\n })}\n </pre>\n </ListItem.CollapsibleContent>\n )}\n </ListItem.Root>\n );\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_react", "import_log", "import_react_ui_menu", "import_live_object", "import_types", "import_echo", "import_react_ui", "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", "trim", "verbose", "inputSchema", "outputSchema", "setUserFunctionUrlInMetadata", "err", "catch", "useCopyHandler", "navigator", "clipboard", "writeText", "useToolbarState", "initialState", "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", "logs", "createViewActions", "Object", "entries", "viewType", "createView", "viewActions", "useToolbarAction", "props", "handleTemplateSelect", "handleFormat", "handleDeploy", "handleCopy", "dispatchPromise", "dispatch", "useIntentDispatcher", "properties", "createIntent", "DeckAction", "ChangeCompanion", "primary", "fullyQualifiedId", "companion", "surfaceVariant", "LogsPanel", "invocationTraceQueue", "useQueue", "dxn", "pollInterval", "invocationSpans", "createInvocationSpans", "items", "selected", "setSelected", "useState", "workerDxn", "React", "div", "handleOpenChange", "trace", "open", "List", "mx", "filter", "decodeReference", "invocationTarget", "toString", "InvocationTraceItem", "setOpen", "eventQueue", "flatMap", "event", "heading", "input", "bodyText", "JSON", "stringify", "ListItem", "Root", "collapsible", "onOpenChange", "className", "OpenTrigger", "Endcap", "Icon", "outcome", "size", "Heading", "span", "Date", "timestampMs", "toLocaleString", "CollapsibleContent", "durationMs", "pre", "index"]
|
|
7
|
+
}
|