@dxos/plugin-script 0.7.5-main.b19bfc8 → 0.7.5-main.d9d2d4e
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 +258 -0
- package/dist/lib/browser/ScriptContainer-3RFMYKTV.mjs.map +7 -0
- package/dist/lib/browser/{artifact-definition-NAWYXFF5.mjs → artifact-definition-4LWPD3DH.mjs} +22 -14
- package/dist/lib/browser/artifact-definition-4LWPD3DH.mjs.map +7 -0
- package/dist/lib/browser/{ScriptContainer-U3BFT76B.mjs → chunk-G2FYNDU4.mjs} +15 -253
- package/dist/lib/browser/chunk-G2FYNDU4.mjs.map +7 -0
- package/dist/lib/browser/{chunk-HJNS3BBK.mjs → chunk-VTWBVFBK.mjs} +2 -4
- package/dist/lib/browser/{chunk-HJNS3BBK.mjs.map → chunk-VTWBVFBK.mjs.map} +3 -3
- package/dist/lib/browser/index.mjs +31 -15
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-DIXYM2HA.mjs → react-surface-G4C2PZ2K.mjs} +23 -7
- package/dist/lib/browser/react-surface-G4C2PZ2K.mjs.map +7 -0
- package/dist/lib/node/ScriptContainer-G6FZU4AM.cjs +274 -0
- package/dist/lib/node/ScriptContainer-G6FZU4AM.cjs.map +7 -0
- package/dist/lib/node/{artifact-definition-7AANUS3X.cjs → artifact-definition-BXQCFPAH.cjs} +22 -17
- package/dist/lib/node/artifact-definition-BXQCFPAH.cjs.map +7 -0
- package/dist/lib/node/{chunk-2UNNYU2C.cjs → chunk-TOXBGIEI.cjs} +5 -8
- package/dist/lib/node/{chunk-2UNNYU2C.cjs.map → chunk-TOXBGIEI.cjs.map} +3 -3
- package/dist/lib/node/{ScriptContainer-PSLB34RX.cjs → chunk-XKYJYY3T.cjs} +56 -277
- package/dist/lib/node/chunk-XKYJYY3T.cjs.map +7 -0
- package/dist/lib/node/index.cjs +31 -16
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-JOMWTFI2.cjs → react-surface-EGSE3FMN.cjs} +24 -12
- package/dist/lib/node/react-surface-EGSE3FMN.cjs.map +7 -0
- package/dist/lib/node-esm/ScriptContainer-7FTCFIF3.mjs +259 -0
- package/dist/lib/node-esm/ScriptContainer-7FTCFIF3.mjs.map +7 -0
- package/dist/lib/node-esm/{artifact-definition-KBASPVMM.mjs → artifact-definition-KT4DK2LQ.mjs} +21 -14
- package/dist/lib/node-esm/artifact-definition-KT4DK2LQ.mjs.map +7 -0
- package/dist/lib/node-esm/{ScriptContainer-E4J6XXE6.mjs → chunk-NRICF4KE.mjs} +15 -253
- package/dist/lib/node-esm/chunk-NRICF4KE.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-4OCRARHP.mjs → chunk-S64WSJQK.mjs} +2 -4
- package/dist/lib/node-esm/{chunk-4OCRARHP.mjs.map → chunk-S64WSJQK.mjs.map} +3 -3
- package/dist/lib/node-esm/index.mjs +31 -15
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-OLH7N3DK.mjs → react-surface-7YSGHZQM.mjs} +23 -7
- package/dist/lib/node-esm/react-surface-7YSGHZQM.mjs.map +7 -0
- 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/index.d.ts +1 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/hooks/view.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +3 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/package.json +42 -41
- package/src/ScriptPlugin.tsx +16 -7
- package/src/capabilities/artifact-definition.ts +14 -9
- package/src/capabilities/react-surface.tsx +9 -3
- package/src/components/index.ts +1 -1
- package/src/hooks/view.ts +4 -1
- package/src/translations.ts +3 -0
- package/dist/lib/browser/AutomationPanel-6HFRNRWV.mjs +0 -78
- package/dist/lib/browser/AutomationPanel-6HFRNRWV.mjs.map +0 -7
- package/dist/lib/browser/ScriptContainer-U3BFT76B.mjs.map +0 -7
- package/dist/lib/browser/artifact-definition-NAWYXFF5.mjs.map +0 -7
- package/dist/lib/browser/react-surface-DIXYM2HA.mjs.map +0 -7
- package/dist/lib/node/AutomationPanel-RBQ4DODN.cjs +0 -104
- package/dist/lib/node/AutomationPanel-RBQ4DODN.cjs.map +0 -7
- package/dist/lib/node/ScriptContainer-PSLB34RX.cjs.map +0 -7
- package/dist/lib/node/artifact-definition-7AANUS3X.cjs.map +0 -7
- package/dist/lib/node/react-surface-JOMWTFI2.cjs.map +0 -7
- package/dist/lib/node-esm/AutomationPanel-WTVVVMRH.mjs +0 -79
- package/dist/lib/node-esm/AutomationPanel-WTVVVMRH.mjs.map +0 -7
- package/dist/lib/node-esm/ScriptContainer-E4J6XXE6.mjs.map +0 -7
- package/dist/lib/node-esm/artifact-definition-KBASPVMM.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-OLH7N3DK.mjs.map +0 -7
- package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +0 -16
- package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +0 -1
- package/dist/types/src/components/AutomationPanel/index.d.ts +0 -4
- package/dist/types/src/components/AutomationPanel/index.d.ts.map +0 -1
- package/src/components/AutomationPanel/AutomationPanel.tsx +0 -104
- package/src/components/AutomationPanel/index.ts +0 -9
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2024 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
import React, { useMemo, useState } from 'react';
|
|
6
|
-
|
|
7
|
-
import { failUndefined } from '@dxos/debug';
|
|
8
|
-
import { FunctionType, ScriptType, getInvocationUrl, getUserFunctionUrlInMetadata } from '@dxos/functions';
|
|
9
|
-
import { useClient } from '@dxos/react-client';
|
|
10
|
-
import { Filter, getMeta, getSpace, type ReactiveEchoObject, useQuery } from '@dxos/react-client/echo';
|
|
11
|
-
import { Select, useTranslation } from '@dxos/react-ui';
|
|
12
|
-
|
|
13
|
-
import { SCRIPT_PLUGIN } from '../../meta';
|
|
14
|
-
import { DebugPanel } from '../DebugPanel';
|
|
15
|
-
|
|
16
|
-
export interface AutomationPanelProps {
|
|
17
|
-
subject: ReactiveEchoObject<any>;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export const AutomationPanel = ({ subject }: AutomationPanelProps) => {
|
|
21
|
-
const { t } = useTranslation(SCRIPT_PLUGIN);
|
|
22
|
-
const space = getSpace(subject);
|
|
23
|
-
|
|
24
|
-
// TODO(dmaretskyi): Parametric query.
|
|
25
|
-
const functions = useQuery(
|
|
26
|
-
space ?? undefined,
|
|
27
|
-
subject instanceof ScriptType
|
|
28
|
-
? Filter.schema(FunctionType, { source: subject })
|
|
29
|
-
: Filter.schema(FunctionType, (fn) => fn.binding != null),
|
|
30
|
-
{},
|
|
31
|
-
[subject],
|
|
32
|
-
);
|
|
33
|
-
|
|
34
|
-
const [selectedFunction, setSelectedFunction] = useState<FunctionType | null>(null);
|
|
35
|
-
const chatFunction = subject instanceof ScriptType ? functions[0] : selectedFunction;
|
|
36
|
-
|
|
37
|
-
return (
|
|
38
|
-
<div className='h-full flex flex-col'>
|
|
39
|
-
{!(subject instanceof ScriptType) && (
|
|
40
|
-
<BindingSelect
|
|
41
|
-
selectedFunction={selectedFunction}
|
|
42
|
-
setSelectedFunction={setSelectedFunction}
|
|
43
|
-
functions={functions}
|
|
44
|
-
/>
|
|
45
|
-
)}
|
|
46
|
-
{chatFunction && <ChatPanel fn={chatFunction} subject={subject} />}
|
|
47
|
-
{subject instanceof ScriptType && functions.length === 0 && <div className='p-1'>{t('not deployed')}</div>}
|
|
48
|
-
</div>
|
|
49
|
-
);
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
export interface ChatPanelProps {
|
|
53
|
-
fn: FunctionType;
|
|
54
|
-
subject: ReactiveEchoObject<any>;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
const ChatPanel = ({ fn, subject }: ChatPanelProps) => {
|
|
58
|
-
const client = useClient();
|
|
59
|
-
const space = getSpace(fn);
|
|
60
|
-
const existingFunctionUrl = getUserFunctionUrlInMetadata(getMeta(fn));
|
|
61
|
-
const functionUrl = useMemo(() => {
|
|
62
|
-
if (!existingFunctionUrl) {
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
return getInvocationUrl(existingFunctionUrl, client.config.values.runtime?.services?.edge?.url ?? '', {
|
|
67
|
-
spaceId: space?.id,
|
|
68
|
-
subjectId: subject?.id,
|
|
69
|
-
});
|
|
70
|
-
}, [existingFunctionUrl, space, subject]);
|
|
71
|
-
|
|
72
|
-
return <DebugPanel functionUrl={functionUrl} classNames='flex-1' />;
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
export interface BindingSelectProps {
|
|
76
|
-
selectedFunction: FunctionType | null;
|
|
77
|
-
setSelectedFunction: (fn: FunctionType) => void;
|
|
78
|
-
functions: FunctionType[];
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
const BindingSelect = ({ selectedFunction, setSelectedFunction, functions }: BindingSelectProps) => {
|
|
82
|
-
return (
|
|
83
|
-
<Select.Root
|
|
84
|
-
value={selectedFunction?.id}
|
|
85
|
-
onValueChange={(id) => setSelectedFunction(functions.find((fn) => fn.id === id) ?? failUndefined())}
|
|
86
|
-
>
|
|
87
|
-
<Select.TriggerButton placeholder='Select value' />
|
|
88
|
-
<Select.Portal>
|
|
89
|
-
<Select.Content>
|
|
90
|
-
<Select.ScrollUpButton />
|
|
91
|
-
<Select.Viewport>
|
|
92
|
-
{functions.map(({ id, binding }) => (
|
|
93
|
-
<Select.Option key={id} value={id}>
|
|
94
|
-
{binding}
|
|
95
|
-
</Select.Option>
|
|
96
|
-
))}
|
|
97
|
-
</Select.Viewport>
|
|
98
|
-
<Select.ScrollDownButton />
|
|
99
|
-
<Select.Arrow />
|
|
100
|
-
</Select.Content>
|
|
101
|
-
</Select.Portal>
|
|
102
|
-
</Select.Root>
|
|
103
|
-
);
|
|
104
|
-
};
|