@dxos/react-ui-canvas-compute 0.8.0 → 0.8.1-main.303c73a
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/index.mjs +81 -30
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +208 -158
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +81 -30
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/types/src/components/DiagnosticOverlay.d.ts +2 -1
- package/dist/types/src/components/DiagnosticOverlay.d.ts.map +1 -1
- package/dist/types/src/compute.stories.d.ts +2 -1
- package/dist/types/src/compute.stories.d.ts.map +1 -1
- package/dist/types/src/graph/controller.d.ts +11 -11
- package/dist/types/src/graph/controller.d.ts.map +1 -1
- package/dist/types/src/hooks/index.d.ts +1 -0
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useComputeGraphController.d.ts +10 -0
- package/dist/types/src/hooks/useComputeGraphController.d.ts.map +1 -0
- package/dist/types/src/shapes/Append.d.ts +2 -1
- package/dist/types/src/shapes/Append.d.ts.map +1 -1
- package/dist/types/src/shapes/Array.d.ts +2 -1
- package/dist/types/src/shapes/Array.d.ts.map +1 -1
- package/dist/types/src/shapes/Audio.d.ts +2 -1
- package/dist/types/src/shapes/Audio.d.ts.map +1 -1
- package/dist/types/src/shapes/Beacon.d.ts +2 -1
- package/dist/types/src/shapes/Beacon.d.ts.map +1 -1
- package/dist/types/src/shapes/Boolean.d.ts.map +1 -1
- package/dist/types/src/shapes/Chat.d.ts +2 -1
- package/dist/types/src/shapes/Chat.d.ts.map +1 -1
- package/dist/types/src/shapes/Constant.d.ts +2 -1
- package/dist/types/src/shapes/Constant.d.ts.map +1 -1
- package/dist/types/src/shapes/Database.d.ts +2 -1
- package/dist/types/src/shapes/Database.d.ts.map +1 -1
- package/dist/types/src/shapes/Function.d.ts.map +1 -1
- package/dist/types/src/shapes/Gpt.d.ts +2 -1
- package/dist/types/src/shapes/Gpt.d.ts.map +1 -1
- package/dist/types/src/shapes/GptRealtime.d.ts +2 -1
- package/dist/types/src/shapes/GptRealtime.d.ts.map +1 -1
- package/dist/types/src/shapes/Json.d.ts +3 -2
- package/dist/types/src/shapes/Json.d.ts.map +1 -1
- package/dist/types/src/shapes/Logic.d.ts +3 -2
- package/dist/types/src/shapes/Logic.d.ts.map +1 -1
- package/dist/types/src/shapes/Queue.d.ts +3 -2
- package/dist/types/src/shapes/Queue.d.ts.map +1 -1
- package/dist/types/src/shapes/RNG.d.ts +2 -1
- package/dist/types/src/shapes/RNG.d.ts.map +1 -1
- package/dist/types/src/shapes/Scope.d.ts +2 -1
- package/dist/types/src/shapes/Scope.d.ts.map +1 -1
- package/dist/types/src/shapes/Surface.d.ts +2 -1
- package/dist/types/src/shapes/Surface.d.ts.map +1 -1
- package/dist/types/src/shapes/Switch.d.ts +2 -1
- package/dist/types/src/shapes/Switch.d.ts.map +1 -1
- package/dist/types/src/shapes/Table.d.ts +2 -1
- package/dist/types/src/shapes/Table.d.ts.map +1 -1
- package/dist/types/src/shapes/Template.d.ts.map +1 -1
- package/dist/types/src/shapes/Text.d.ts +2 -1
- package/dist/types/src/shapes/Text.d.ts.map +1 -1
- package/dist/types/src/shapes/TextToImage.d.ts +2 -1
- package/dist/types/src/shapes/TextToImage.d.ts.map +1 -1
- package/dist/types/src/shapes/Thread.d.ts +3 -2
- package/dist/types/src/shapes/Thread.d.ts.map +1 -1
- package/dist/types/src/shapes/Trigger.d.ts +2 -1
- package/dist/types/src/shapes/Trigger.d.ts.map +1 -1
- package/dist/types/src/shapes/common/FunctionBody.d.ts +1 -1
- package/dist/types/src/shapes/common/FunctionBody.d.ts.map +1 -1
- package/dist/types/src/shapes/common/TypeSelect.d.ts +2 -1
- package/dist/types/src/shapes/common/TypeSelect.d.ts.map +1 -1
- package/dist/types/src/shapes/defs.d.ts +1 -1
- package/dist/types/src/shapes/defs.d.ts.map +1 -1
- package/dist/types/src/testing/circuits.d.ts +20 -3
- package/dist/types/src/testing/circuits.d.ts.map +1 -1
- package/package.json +40 -41
- package/src/compute.stories.tsx +20 -51
- package/src/hooks/index.ts +1 -0
- package/src/hooks/useComputeGraphController.ts +65 -0
- package/src/shapes/defs.ts +1 -1
- package/src/testing/circuits.ts +12 -5
package/dist/lib/node/index.cjs
CHANGED
|
@@ -161,6 +161,7 @@ __export(node_exports, {
|
|
|
161
161
|
threadShape: () => threadShape,
|
|
162
162
|
triggerShape: () => triggerShape,
|
|
163
163
|
useComputeContext: () => useComputeContext,
|
|
164
|
+
useComputeGraphController: () => useComputeGraphController,
|
|
164
165
|
useComputeNodeState: () => useComputeNodeState,
|
|
165
166
|
useGraphMonitor: () => useGraphMonitor
|
|
166
167
|
});
|
|
@@ -178,9 +179,10 @@ var import_invariant = require("@dxos/invariant");
|
|
|
178
179
|
var import_react = require("react");
|
|
179
180
|
var import_debug2 = require("@dxos/debug");
|
|
180
181
|
var import_react2 = require("react");
|
|
182
|
+
var import_react3 = require("react");
|
|
181
183
|
var import_echo_schema2 = require("@dxos/echo-schema");
|
|
182
184
|
var import_invariant2 = require("@dxos/invariant");
|
|
183
|
-
var
|
|
185
|
+
var import_react4 = require("react");
|
|
184
186
|
var import_conductor3 = require("@dxos/conductor");
|
|
185
187
|
var import_echo_schema3 = require("@dxos/echo-schema");
|
|
186
188
|
var import_invariant3 = require("@dxos/invariant");
|
|
@@ -188,128 +190,128 @@ var import_keys = require("@dxos/keys");
|
|
|
188
190
|
var import_echo = require("@dxos/react-client/echo");
|
|
189
191
|
var import_util = require("@dxos/util");
|
|
190
192
|
var import_react_ui_canvas_editor = require("@dxos/react-ui-canvas-editor");
|
|
191
|
-
var
|
|
193
|
+
var import_react5 = __toESM(require("react"));
|
|
192
194
|
var import_invariant4 = require("@dxos/invariant");
|
|
193
195
|
var import_react_ui = require("@dxos/react-ui");
|
|
194
196
|
var import_react_ui_canvas_editor2 = require("@dxos/react-ui-canvas-editor");
|
|
195
197
|
var import_react_ui_theme = require("@dxos/react-ui-theme");
|
|
196
|
-
var
|
|
198
|
+
var import_react6 = __toESM(require("react"));
|
|
197
199
|
var import_conductor4 = require("@dxos/conductor");
|
|
198
200
|
var import_echo_schema4 = require("@dxos/echo-schema");
|
|
199
201
|
var import_react_ui_canvas = require("@dxos/react-ui-canvas");
|
|
200
202
|
var import_react_ui_canvas_editor3 = require("@dxos/react-ui-canvas-editor");
|
|
201
|
-
var
|
|
203
|
+
var import_effect2 = require("effect");
|
|
202
204
|
var import_conductor5 = require("@dxos/conductor");
|
|
203
205
|
var import_echo_schema5 = require("@dxos/echo-schema");
|
|
204
206
|
var import_react_ui_canvas_editor4 = require("@dxos/react-ui-canvas-editor");
|
|
205
|
-
var
|
|
207
|
+
var import_react7 = __toESM(require("react"));
|
|
206
208
|
var import_conductor6 = require("@dxos/conductor");
|
|
207
209
|
var import_react_ui2 = require("@dxos/react-ui");
|
|
208
|
-
var
|
|
210
|
+
var import_react8 = __toESM(require("react"));
|
|
209
211
|
var import_conductor7 = require("@dxos/conductor");
|
|
210
212
|
var import_echo_schema6 = require("@dxos/echo-schema");
|
|
211
|
-
var
|
|
213
|
+
var import_react9 = __toESM(require("react"));
|
|
212
214
|
var import_conductor8 = require("@dxos/conductor");
|
|
213
215
|
var import_echo_schema7 = require("@dxos/echo-schema");
|
|
214
|
-
var
|
|
216
|
+
var import_react10 = __toESM(require("react"));
|
|
215
217
|
var import_echo_schema8 = require("@dxos/echo-schema");
|
|
216
218
|
var import_react_ui3 = require("@dxos/react-ui");
|
|
217
219
|
var import_react_ui_canvas_editor5 = require("@dxos/react-ui-canvas-editor");
|
|
218
|
-
var
|
|
220
|
+
var import_react11 = __toESM(require("react"));
|
|
219
221
|
var import_conductor9 = require("@dxos/conductor");
|
|
220
222
|
var import_echo_schema9 = require("@dxos/echo-schema");
|
|
221
223
|
var import_react_ui4 = require("@dxos/react-ui");
|
|
222
224
|
var import_react_ui_canvas_editor6 = require("@dxos/react-ui-canvas-editor");
|
|
223
225
|
var import_react_ui_theme2 = require("@dxos/react-ui-theme");
|
|
224
|
-
var
|
|
226
|
+
var import_react12 = __toESM(require("react"));
|
|
225
227
|
var import_echo_schema10 = require("@dxos/echo-schema");
|
|
226
228
|
var import_react_ui_canvas_editor7 = require("@dxos/react-ui-canvas-editor");
|
|
227
|
-
var
|
|
229
|
+
var import_react13 = __toESM(require("react"));
|
|
228
230
|
var import_conductor10 = require("@dxos/conductor");
|
|
229
231
|
var import_echo_schema11 = require("@dxos/echo-schema");
|
|
230
232
|
var import_react_ui_canvas_editor8 = require("@dxos/react-ui-canvas-editor");
|
|
231
233
|
var import_react_ui_canvas_editor9 = require("@dxos/react-ui-canvas-editor");
|
|
232
|
-
var
|
|
234
|
+
var import_react14 = __toESM(require("react"));
|
|
233
235
|
var import_conductor11 = require("@dxos/conductor");
|
|
234
236
|
var import_echo_schema12 = require("@dxos/echo-schema");
|
|
235
237
|
var import_react_ui5 = require("@dxos/react-ui");
|
|
236
238
|
var import_react_ui_canvas_editor10 = require("@dxos/react-ui-canvas-editor");
|
|
237
239
|
var import_react_ui_canvas_editor11 = require("@dxos/react-ui-canvas-editor");
|
|
238
240
|
var import_util2 = require("@dxos/util");
|
|
239
|
-
var
|
|
241
|
+
var import_react15 = __toESM(require("react"));
|
|
240
242
|
var import_echo_schema13 = require("@dxos/echo-schema");
|
|
241
243
|
var import_react_ui_canvas_editor12 = require("@dxos/react-ui-canvas-editor");
|
|
242
|
-
var
|
|
244
|
+
var import_react16 = __toESM(require("react"));
|
|
243
245
|
var import_conductor12 = require("@dxos/conductor");
|
|
244
246
|
var import_echo_schema14 = require("@dxos/echo-schema");
|
|
245
247
|
var import_functions = require("@dxos/functions");
|
|
246
248
|
var import_react_client = require("@dxos/react-client");
|
|
247
249
|
var import_echo2 = require("@dxos/react-client/echo");
|
|
248
250
|
var import_react_ui_canvas_editor13 = require("@dxos/react-ui-canvas-editor");
|
|
249
|
-
var
|
|
251
|
+
var import_react17 = __toESM(require("react"));
|
|
250
252
|
var import_conductor13 = require("@dxos/conductor");
|
|
251
253
|
var import_echo_schema15 = require("@dxos/echo-schema");
|
|
252
|
-
var
|
|
254
|
+
var import_react18 = __toESM(require("react"));
|
|
253
255
|
var import_conductor14 = require("@dxos/conductor");
|
|
254
256
|
var import_echo_schema16 = require("@dxos/echo-schema");
|
|
255
257
|
var import_react_ui_canvas_editor14 = require("@dxos/react-ui-canvas-editor");
|
|
256
258
|
var import_react_ui_syntax_highlighter = require("@dxos/react-ui-syntax-highlighter");
|
|
257
|
-
var
|
|
259
|
+
var import_react19 = __toESM(require("react"));
|
|
258
260
|
var import_conductor15 = require("@dxos/conductor");
|
|
259
261
|
var import_echo_schema17 = require("@dxos/echo-schema");
|
|
260
|
-
var
|
|
262
|
+
var import_react20 = __toESM(require("react"));
|
|
261
263
|
var import_conductor16 = require("@dxos/conductor");
|
|
262
264
|
var import_echo_schema18 = require("@dxos/echo-schema");
|
|
263
265
|
var import_react_ui_theme3 = require("@dxos/react-ui-theme");
|
|
264
|
-
var
|
|
266
|
+
var import_react21 = __toESM(require("react"));
|
|
265
267
|
var import_conductor17 = require("@dxos/conductor");
|
|
266
268
|
var import_echo_schema19 = require("@dxos/echo-schema");
|
|
267
269
|
var import_react_ui6 = require("@dxos/react-ui");
|
|
268
270
|
var import_react_ui_canvas_editor15 = require("@dxos/react-ui-canvas-editor");
|
|
269
271
|
var import_react_ui_theme4 = require("@dxos/react-ui-theme");
|
|
270
|
-
var
|
|
272
|
+
var import_react22 = __toESM(require("react"));
|
|
271
273
|
var import_conductor18 = require("@dxos/conductor");
|
|
272
274
|
var import_echo_schema20 = require("@dxos/echo-schema");
|
|
273
275
|
var import_react_ui_canvas_editor16 = require("@dxos/react-ui-canvas-editor");
|
|
274
276
|
var import_react_ui_sfx = require("@dxos/react-ui-sfx");
|
|
275
|
-
var
|
|
277
|
+
var import_react23 = __toESM(require("react"));
|
|
276
278
|
var import_app_framework = require("@dxos/app-framework");
|
|
277
279
|
var import_conductor19 = require("@dxos/conductor");
|
|
278
280
|
var import_echo_schema21 = require("@dxos/echo-schema");
|
|
279
281
|
var import_react_ui_canvas_editor17 = require("@dxos/react-ui-canvas-editor");
|
|
280
|
-
var
|
|
282
|
+
var import_react24 = __toESM(require("react"));
|
|
281
283
|
var import_conductor20 = require("@dxos/conductor");
|
|
282
284
|
var import_echo_schema22 = require("@dxos/echo-schema");
|
|
283
285
|
var import_react_ui7 = require("@dxos/react-ui");
|
|
284
286
|
var import_react_ui_canvas_editor18 = require("@dxos/react-ui-canvas-editor");
|
|
285
|
-
var
|
|
287
|
+
var import_react25 = __toESM(require("react"));
|
|
286
288
|
var import_conductor21 = require("@dxos/conductor");
|
|
287
289
|
var import_echo_schema23 = require("@dxos/echo-schema");
|
|
288
|
-
var
|
|
290
|
+
var import_react26 = __toESM(require("react"));
|
|
289
291
|
var import_conductor22 = require("@dxos/conductor");
|
|
290
292
|
var import_echo_schema24 = require("@dxos/echo-schema");
|
|
291
293
|
var import_invariant5 = require("@dxos/invariant");
|
|
292
294
|
var import_react_ui_canvas_editor19 = require("@dxos/react-ui-canvas-editor");
|
|
293
|
-
var
|
|
295
|
+
var import_react27 = __toESM(require("react"));
|
|
294
296
|
var import_conductor23 = require("@dxos/conductor");
|
|
295
297
|
var import_echo_schema25 = require("@dxos/echo-schema");
|
|
296
298
|
var import_react_ui_canvas_editor20 = require("@dxos/react-ui-canvas-editor");
|
|
297
299
|
var import_react_ui_canvas_editor21 = require("@dxos/react-ui-canvas-editor");
|
|
298
|
-
var
|
|
300
|
+
var import_react28 = __toESM(require("react"));
|
|
299
301
|
var import_conductor24 = require("@dxos/conductor");
|
|
300
302
|
var import_echo_schema26 = require("@dxos/echo-schema");
|
|
301
303
|
var import_react_ui_theme5 = require("@dxos/react-ui-theme");
|
|
302
|
-
var
|
|
304
|
+
var import_react29 = __toESM(require("react"));
|
|
303
305
|
var import_echo_schema27 = require("@dxos/echo-schema");
|
|
304
306
|
var import_react_ui_canvas_editor22 = require("@dxos/react-ui-canvas-editor");
|
|
305
|
-
var
|
|
307
|
+
var import_react30 = __toESM(require("react"));
|
|
306
308
|
var import_conductor25 = require("@dxos/conductor");
|
|
307
309
|
var import_echo_schema28 = require("@dxos/echo-schema");
|
|
308
310
|
var import_functions2 = require("@dxos/functions");
|
|
309
311
|
var import_keys2 = require("@dxos/keys");
|
|
310
312
|
var import_echo3 = require("@dxos/react-client/echo");
|
|
311
313
|
var import_react_ui8 = require("@dxos/react-ui");
|
|
312
|
-
var
|
|
314
|
+
var import_react31 = __toESM(require("react"));
|
|
313
315
|
var import_echo_schema29 = require("@dxos/echo-schema");
|
|
314
316
|
var import_log2 = require("@dxos/log");
|
|
315
317
|
var import_react_client2 = require("@dxos/react-client");
|
|
@@ -390,6 +392,53 @@ var ComputeContext = (0, import_react.createContext)(null);
|
|
|
390
392
|
var useComputeContext = () => {
|
|
391
393
|
return (0, import_react.useContext)(ComputeContext) ?? (0, import_debug2.raise)(new Error("Missing ComputeContext"));
|
|
392
394
|
};
|
|
395
|
+
var combine = (...cbs) => {
|
|
396
|
+
return () => {
|
|
397
|
+
for (const cb of cbs) {
|
|
398
|
+
cb();
|
|
399
|
+
}
|
|
400
|
+
};
|
|
401
|
+
};
|
|
402
|
+
var useComputeGraphController = ({ controller, graph, editorRef }) => {
|
|
403
|
+
const [, forceUpdate] = (0, import_react2.useState)({});
|
|
404
|
+
(0, import_react2.useEffect)(() => {
|
|
405
|
+
if (!controller || !graph) {
|
|
406
|
+
return;
|
|
407
|
+
}
|
|
408
|
+
void controller.open();
|
|
409
|
+
const off = combine(
|
|
410
|
+
controller.update.on(() => {
|
|
411
|
+
void editorRef.current?.update();
|
|
412
|
+
forceUpdate({});
|
|
413
|
+
}),
|
|
414
|
+
// TODO(burdon): Every node is called on every update.
|
|
415
|
+
controller.output.on(({ nodeId, property, value }) => {
|
|
416
|
+
if (value.type === "not-executed") {
|
|
417
|
+
return;
|
|
418
|
+
}
|
|
419
|
+
const edge = graph.edges.find((edge2) => {
|
|
420
|
+
const source = graph.getNode(edge2.source);
|
|
421
|
+
return source.node === nodeId && edge2.output === property;
|
|
422
|
+
});
|
|
423
|
+
if (edge) {
|
|
424
|
+
void editorRef.current?.action?.({
|
|
425
|
+
type: "trigger",
|
|
426
|
+
edges: [
|
|
427
|
+
edge
|
|
428
|
+
]
|
|
429
|
+
});
|
|
430
|
+
}
|
|
431
|
+
})
|
|
432
|
+
);
|
|
433
|
+
return () => {
|
|
434
|
+
void controller.close();
|
|
435
|
+
off();
|
|
436
|
+
};
|
|
437
|
+
}, [
|
|
438
|
+
graph,
|
|
439
|
+
controller
|
|
440
|
+
]);
|
|
441
|
+
};
|
|
393
442
|
var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/ui/react-ui-canvas-compute/src/hooks/useComputeNodeState.ts";
|
|
394
443
|
var useComputeNodeState = (shape) => {
|
|
395
444
|
const { controller } = useComputeContext();
|
|
@@ -402,8 +451,8 @@ var useComputeNodeState = (shape) => {
|
|
|
402
451
|
""
|
|
403
452
|
]
|
|
404
453
|
});
|
|
405
|
-
const [meta, setMeta] = (0,
|
|
406
|
-
(0,
|
|
454
|
+
const [meta, setMeta] = (0, import_react3.useState)();
|
|
455
|
+
(0, import_react3.useEffect)(() => {
|
|
407
456
|
let disposed = false;
|
|
408
457
|
queueMicrotask(async () => {
|
|
409
458
|
(0, import_invariant2.invariant)(shape.node, "Node not specified", {
|
|
@@ -428,12 +477,12 @@ var useComputeNodeState = (shape) => {
|
|
|
428
477
|
}, [
|
|
429
478
|
shape.node
|
|
430
479
|
]);
|
|
431
|
-
const evalNode = (0,
|
|
480
|
+
const evalNode = (0, import_react3.useCallback)(() => {
|
|
432
481
|
return controller.evalNode(shape.node);
|
|
433
482
|
}, [
|
|
434
483
|
shape.node
|
|
435
484
|
]);
|
|
436
|
-
const subscribeToEventLog = (0,
|
|
485
|
+
const subscribeToEventLog = (0, import_react3.useCallback)((cb) => {
|
|
437
486
|
return controller.events.on((ev) => {
|
|
438
487
|
if (ev.nodeId === shape.node) {
|
|
439
488
|
cb(ev);
|
|
@@ -490,7 +539,7 @@ var mapEdge = (graph, { source, target, output = import_conductor3.DEFAULT_OUTPU
|
|
|
490
539
|
};
|
|
491
540
|
};
|
|
492
541
|
var useGraphMonitor = (model) => {
|
|
493
|
-
return (0,
|
|
542
|
+
return (0, import_react4.useMemo)(() => {
|
|
494
543
|
return {
|
|
495
544
|
onCreate: ({ node }) => {
|
|
496
545
|
if (!model) {
|
|
@@ -881,7 +930,7 @@ var computeValueBag = (bag) => {
|
|
|
881
930
|
var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/ui/react-ui-canvas-compute/src/shapes/common/Box.tsx";
|
|
882
931
|
var headerHeight = 32;
|
|
883
932
|
var footerHeight = 32;
|
|
884
|
-
var Box = /* @__PURE__ */ (0,
|
|
933
|
+
var Box = /* @__PURE__ */ (0, import_react5.forwardRef)(({ children, classNames, shape, title, status, open, onAction }, forwardedRef) => {
|
|
885
934
|
(0, import_invariant4.invariant)(shape.type, void 0, {
|
|
886
935
|
F: __dxlog_file5,
|
|
887
936
|
L: 30,
|
|
@@ -895,17 +944,17 @@ var Box = /* @__PURE__ */ (0, import_react4.forwardRef)(({ children, classNames,
|
|
|
895
944
|
icon: "ph--placeholder--regular"
|
|
896
945
|
};
|
|
897
946
|
const { debug } = (0, import_react_ui_canvas_editor2.useEditorContext)();
|
|
898
|
-
return /* @__PURE__ */
|
|
947
|
+
return /* @__PURE__ */ import_react5.default.createElement("div", {
|
|
899
948
|
ref: forwardedRef,
|
|
900
949
|
className: "flex flex-col h-full w-full justify-between"
|
|
901
|
-
}, /* @__PURE__ */
|
|
950
|
+
}, /* @__PURE__ */ import_react5.default.createElement("div", {
|
|
902
951
|
className: "flex shrink-0 w-full justify-between items-center h-[32px] bg-hoverSurface"
|
|
903
|
-
}, /* @__PURE__ */
|
|
952
|
+
}, /* @__PURE__ */ import_react5.default.createElement(import_react_ui.Icon, {
|
|
904
953
|
icon,
|
|
905
954
|
classNames: "mx-2"
|
|
906
|
-
}), /* @__PURE__ */
|
|
955
|
+
}), /* @__PURE__ */ import_react5.default.createElement("div", {
|
|
907
956
|
className: "grow text-sm truncate"
|
|
908
|
-
}, debug ? shape.type : name ?? shape.text ?? title), /* @__PURE__ */
|
|
957
|
+
}, debug ? shape.type : name ?? shape.text ?? title), /* @__PURE__ */ import_react5.default.createElement(import_react_ui.IconButton, {
|
|
909
958
|
classNames: "p-1 text-green-500",
|
|
910
959
|
variant: "ghost",
|
|
911
960
|
icon: "ph--play--regular",
|
|
@@ -917,13 +966,13 @@ var Box = /* @__PURE__ */ (0, import_react4.forwardRef)(({ children, classNames,
|
|
|
917
966
|
ev.stopPropagation();
|
|
918
967
|
onAction?.("run");
|
|
919
968
|
}
|
|
920
|
-
})), /* @__PURE__ */
|
|
969
|
+
})), /* @__PURE__ */ import_react5.default.createElement("div", {
|
|
921
970
|
className: (0, import_react_ui_theme.mx)("flex flex-col h-full grow overflow-hidden", classNames)
|
|
922
|
-
}, children), /* @__PURE__ */
|
|
971
|
+
}, children), /* @__PURE__ */ import_react5.default.createElement("div", {
|
|
923
972
|
className: "flex shrink-0 w-full justify-between items-center h-[32px] bg-hoverSurface"
|
|
924
|
-
}, /* @__PURE__ */
|
|
973
|
+
}, /* @__PURE__ */ import_react5.default.createElement("div", {
|
|
925
974
|
className: "grow px-2 text-sm truncate"
|
|
926
|
-
}, debug ? shape.id : status), openable && /* @__PURE__ */
|
|
975
|
+
}, debug ? shape.id : status), openable && /* @__PURE__ */ import_react5.default.createElement(import_react_ui.IconButton, {
|
|
927
976
|
classNames: "p-1",
|
|
928
977
|
variant: "ghost",
|
|
929
978
|
icon: open ? "ph--caret-up--regular" : "ph--caret-down--regular",
|
|
@@ -936,7 +985,7 @@ var Box = /* @__PURE__ */ (0, import_react4.forwardRef)(({ children, classNames,
|
|
|
936
985
|
}
|
|
937
986
|
})));
|
|
938
987
|
});
|
|
939
|
-
var getProperties = (ast) =>
|
|
988
|
+
var getProperties = (ast) => import_effect2.SchemaAST.getPropertySignatures(ast).map(({ name }) => ({
|
|
940
989
|
name: name.toString()
|
|
941
990
|
}));
|
|
942
991
|
var createAnchorId = (kind, property = kind === "input" ? import_conductor5.DEFAULT_INPUT : import_conductor5.DEFAULT_OUTPUT) => [
|
|
@@ -953,7 +1002,7 @@ var parseAnchorId = (id) => {
|
|
|
953
1002
|
var ComputeShape = import_echo_schema5.S.extend(import_react_ui_canvas_editor4.Polygon, import_echo_schema5.S.Struct({
|
|
954
1003
|
// TODO(burdon): Rename computeNode?
|
|
955
1004
|
node: import_echo_schema5.S.optional(import_echo_schema5.ObjectId.annotations({
|
|
956
|
-
[
|
|
1005
|
+
[import_effect2.SchemaAST.DescriptionAnnotationId]: "Compute node id"
|
|
957
1006
|
}))
|
|
958
1007
|
}).pipe(import_echo_schema5.S.mutable));
|
|
959
1008
|
var createShape = ({ id, ...rest }) => {
|
|
@@ -966,8 +1015,8 @@ var bodyPadding = 8;
|
|
|
966
1015
|
var expandedHeight = 200;
|
|
967
1016
|
var FunctionBody = ({ shape, name, content, inputSchema = import_conductor4.VoidInput, outputSchema = import_conductor4.VoidOutput, ...props }) => {
|
|
968
1017
|
const { scale } = (0, import_react_ui_canvas.useCanvasContext)();
|
|
969
|
-
const rootRef = (0,
|
|
970
|
-
const [open, setOpen] = (0,
|
|
1018
|
+
const rootRef = (0, import_react6.useRef)(null);
|
|
1019
|
+
const [open, setOpen] = (0, import_react6.useState)(false);
|
|
971
1020
|
const handleAction = (action) => {
|
|
972
1021
|
if (!rootRef.current) {
|
|
973
1022
|
return;
|
|
@@ -991,7 +1040,7 @@ var FunctionBody = ({ shape, name, content, inputSchema = import_conductor4.Void
|
|
|
991
1040
|
const inputs = getProperties(inputSchema.ast);
|
|
992
1041
|
const outputs = getProperties(outputSchema.ast);
|
|
993
1042
|
const columnCount = inputs.length && outputs.length ? 2 : 1;
|
|
994
|
-
return /* @__PURE__ */
|
|
1043
|
+
return /* @__PURE__ */ import_react6.default.createElement(Box, {
|
|
995
1044
|
ref: rootRef,
|
|
996
1045
|
shape,
|
|
997
1046
|
title: name,
|
|
@@ -999,29 +1048,29 @@ var FunctionBody = ({ shape, name, content, inputSchema = import_conductor4.Void
|
|
|
999
1048
|
open,
|
|
1000
1049
|
onAction: handleAction,
|
|
1001
1050
|
...props
|
|
1002
|
-
}, /* @__PURE__ */
|
|
1051
|
+
}, /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
1003
1052
|
className: `grid grid-cols-${columnCount} items-center`,
|
|
1004
1053
|
style: {
|
|
1005
1054
|
paddingTop: bodyPadding,
|
|
1006
1055
|
paddingBottom: bodyPadding
|
|
1007
1056
|
}
|
|
1008
|
-
}, (inputs?.length ?? 0) > 0 && /* @__PURE__ */
|
|
1057
|
+
}, (inputs?.length ?? 0) > 0 && /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
1009
1058
|
className: "flex flex-col"
|
|
1010
|
-
}, inputs?.map(({ name: name2 }) => /* @__PURE__ */
|
|
1059
|
+
}, inputs?.map(({ name: name2 }) => /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
1011
1060
|
key: name2,
|
|
1012
1061
|
className: "px-2 truncate text-sm font-mono items-center",
|
|
1013
1062
|
style: {
|
|
1014
1063
|
height: import_react_ui_canvas_editor3.rowHeight
|
|
1015
1064
|
}
|
|
1016
|
-
}, name2))), (outputs?.length ?? 0) > 0 && /* @__PURE__ */
|
|
1065
|
+
}, name2))), (outputs?.length ?? 0) > 0 && /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
1017
1066
|
className: "flex flex-col"
|
|
1018
|
-
}, outputs?.map(({ name: name2 }) => /* @__PURE__ */
|
|
1067
|
+
}, outputs?.map(({ name: name2 }) => /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
1019
1068
|
key: name2,
|
|
1020
1069
|
className: "px-2 truncate text-sm font-mono items-center text-right",
|
|
1021
1070
|
style: {
|
|
1022
1071
|
height: import_react_ui_canvas_editor3.rowHeight
|
|
1023
1072
|
}
|
|
1024
|
-
}, name2)))), open && /* @__PURE__ */
|
|
1073
|
+
}, name2)))), open && /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
1025
1074
|
className: "flex flex-col grow overflow-hidden"
|
|
1026
1075
|
}, content));
|
|
1027
1076
|
};
|
|
@@ -1043,22 +1092,22 @@ var createFunctionAnchors = (shape, input = import_conductor4.VoidInput, output
|
|
|
1043
1092
|
});
|
|
1044
1093
|
};
|
|
1045
1094
|
var TypeSelect = ({ value, onValueChange }) => {
|
|
1046
|
-
return /* @__PURE__ */
|
|
1095
|
+
return /* @__PURE__ */ import_react7.default.createElement(import_react_ui2.Select.Root, {
|
|
1047
1096
|
value,
|
|
1048
1097
|
onValueChange
|
|
1049
|
-
}, /* @__PURE__ */
|
|
1098
|
+
}, /* @__PURE__ */ import_react7.default.createElement(import_react_ui2.Select.TriggerButton, {
|
|
1050
1099
|
variant: "ghost",
|
|
1051
1100
|
classNames: "w-full !px-0"
|
|
1052
|
-
}), /* @__PURE__ */
|
|
1101
|
+
}), /* @__PURE__ */ import_react7.default.createElement(import_react_ui2.Select.Portal, null, /* @__PURE__ */ import_react7.default.createElement(import_react_ui2.Select.Content, null, /* @__PURE__ */ import_react7.default.createElement(import_react_ui2.Select.ScrollUpButton, null), /* @__PURE__ */ import_react7.default.createElement(import_react_ui2.Select.Viewport, null, import_conductor6.ComputeValueType.literals.map((type) => /* @__PURE__ */ import_react7.default.createElement(import_react_ui2.Select.Option, {
|
|
1053
1102
|
key: type,
|
|
1054
1103
|
value: type
|
|
1055
|
-
}, type))), /* @__PURE__ */
|
|
1104
|
+
}, type))), /* @__PURE__ */ import_react7.default.createElement(import_react_ui2.Select.ScrollDownButton, null), /* @__PURE__ */ import_react7.default.createElement(import_react_ui2.Select.Arrow, null))));
|
|
1056
1105
|
};
|
|
1057
1106
|
var ReducerShape = import_echo_schema6.S.extend(ComputeShape, import_echo_schema6.S.Struct({
|
|
1058
1107
|
type: import_echo_schema6.S.Literal("reducer")
|
|
1059
1108
|
}));
|
|
1060
1109
|
var ReducerComponent = ({ shape }) => {
|
|
1061
|
-
return /* @__PURE__ */
|
|
1110
|
+
return /* @__PURE__ */ import_react8.default.createElement(FunctionBody, {
|
|
1062
1111
|
shape,
|
|
1063
1112
|
inputSchema: import_conductor7.ReducerInput,
|
|
1064
1113
|
outputSchema: import_conductor7.ReducerOutput
|
|
@@ -1076,7 +1125,7 @@ var reducerShape = {
|
|
|
1076
1125
|
type: "reducer",
|
|
1077
1126
|
name: "Reducer",
|
|
1078
1127
|
icon: "ph--repeat--regular",
|
|
1079
|
-
component: (props) => /* @__PURE__ */
|
|
1128
|
+
component: (props) => /* @__PURE__ */ import_react8.default.createElement(ReducerComponent, props),
|
|
1080
1129
|
createShape: createReducer,
|
|
1081
1130
|
getAnchors: (shape) => createFunctionAnchors(shape, import_conductor7.ReducerInput, import_conductor7.ReducerOutput)
|
|
1082
1131
|
};
|
|
@@ -1092,7 +1141,7 @@ var createAppend = (props) => createShape({
|
|
|
1092
1141
|
...props
|
|
1093
1142
|
});
|
|
1094
1143
|
var AppendComponent = ({ shape }) => {
|
|
1095
|
-
return /* @__PURE__ */
|
|
1144
|
+
return /* @__PURE__ */ import_react9.default.createElement(FunctionBody, {
|
|
1096
1145
|
shape,
|
|
1097
1146
|
inputSchema: import_conductor8.AppendInput
|
|
1098
1147
|
});
|
|
@@ -1118,15 +1167,15 @@ var createAudio = (props) => createShape({
|
|
|
1118
1167
|
});
|
|
1119
1168
|
var AudioComponent = ({ shape }) => {
|
|
1120
1169
|
const { node } = useComputeNodeState(shape);
|
|
1121
|
-
const [active, setActive] = (0,
|
|
1122
|
-
(0,
|
|
1170
|
+
const [active, setActive] = (0, import_react10.useState)(false);
|
|
1171
|
+
(0, import_react10.useEffect)(() => {
|
|
1123
1172
|
node.value = active;
|
|
1124
1173
|
}, [
|
|
1125
1174
|
active
|
|
1126
1175
|
]);
|
|
1127
|
-
return /* @__PURE__ */
|
|
1176
|
+
return /* @__PURE__ */ import_react10.default.createElement("div", {
|
|
1128
1177
|
className: "flex w-full justify-center items-center"
|
|
1129
|
-
}, /* @__PURE__ */
|
|
1178
|
+
}, /* @__PURE__ */ import_react10.default.createElement(import_react_ui3.Icon, {
|
|
1130
1179
|
icon: active ? "ph--microphone--regular" : "ph--microphone-slash--regular",
|
|
1131
1180
|
classNames: [
|
|
1132
1181
|
"transition opacity-20 duration-1000",
|
|
@@ -1164,9 +1213,9 @@ var BeaconComponent = ({ shape }) => {
|
|
|
1164
1213
|
const { runtime } = useComputeNodeState(shape);
|
|
1165
1214
|
const input = runtime.inputs[import_conductor9.DEFAULT_INPUT];
|
|
1166
1215
|
const value = input?.type === "executed" ? input.value : false;
|
|
1167
|
-
return /* @__PURE__ */
|
|
1216
|
+
return /* @__PURE__ */ import_react11.default.createElement("div", {
|
|
1168
1217
|
className: "flex w-full justify-center items-center"
|
|
1169
|
-
}, /* @__PURE__ */
|
|
1218
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui4.Icon, {
|
|
1170
1219
|
icon: "ph--sun--regular",
|
|
1171
1220
|
classNames: (0, import_react_ui_theme2.mx)("transition opacity-20 duration-1000", (0, import_conductor9.isTruthy)(value) && "opacity-100 text-yellow-500"),
|
|
1172
1221
|
size: 8
|
|
@@ -1196,9 +1245,9 @@ var createGate = (props) => createShape({
|
|
|
1196
1245
|
...props
|
|
1197
1246
|
});
|
|
1198
1247
|
var GateComponent = (Symbol22) => () => {
|
|
1199
|
-
return /* @__PURE__ */
|
|
1248
|
+
return /* @__PURE__ */ import_react12.default.createElement("div", {
|
|
1200
1249
|
className: "flex w-full justify-center items-center"
|
|
1201
|
-
}, /* @__PURE__ */
|
|
1250
|
+
}, /* @__PURE__ */ import_react12.default.createElement(Symbol22, null));
|
|
1202
1251
|
};
|
|
1203
1252
|
var defineShape = ({ type, name, icon, Symbol: Symbol22, createShape: createShape2, inputs, outputs = [
|
|
1204
1253
|
createAnchorId("output")
|
|
@@ -1229,13 +1278,13 @@ var Symbol2 = (pathConstructor, inputs) => ({
|
|
|
1229
1278
|
endX,
|
|
1230
1279
|
height
|
|
1231
1280
|
});
|
|
1232
|
-
return /* @__PURE__ */
|
|
1281
|
+
return /* @__PURE__ */ import_react12.default.createElement("svg", {
|
|
1233
1282
|
viewBox: `0 0 ${width} ${height}`,
|
|
1234
1283
|
className: "w-full h-full"
|
|
1235
1284
|
}, (0, import_react_ui_canvas_editor7.getAnchorPoints)({
|
|
1236
1285
|
x: 0,
|
|
1237
1286
|
y: centerY
|
|
1238
|
-
}, inputs).map(({ x, y }, i) => /* @__PURE__ */
|
|
1287
|
+
}, inputs).map(({ x, y }, i) => /* @__PURE__ */ import_react12.default.createElement("line", {
|
|
1239
1288
|
key: i,
|
|
1240
1289
|
x1: x,
|
|
1241
1290
|
y1: y,
|
|
@@ -1243,14 +1292,14 @@ var Symbol2 = (pathConstructor, inputs) => ({
|
|
|
1243
1292
|
y2: y,
|
|
1244
1293
|
strokeWidth,
|
|
1245
1294
|
className
|
|
1246
|
-
})), /* @__PURE__ */
|
|
1295
|
+
})), /* @__PURE__ */ import_react12.default.createElement("line", {
|
|
1247
1296
|
x1: endX,
|
|
1248
1297
|
y1: centerY,
|
|
1249
1298
|
x2: width,
|
|
1250
1299
|
y2: centerY,
|
|
1251
1300
|
strokeWidth,
|
|
1252
1301
|
className
|
|
1253
|
-
}), paths.map((path, i) => /* @__PURE__ */
|
|
1302
|
+
}), paths.map((path, i) => /* @__PURE__ */ import_react12.default.createElement("path", {
|
|
1254
1303
|
key: i,
|
|
1255
1304
|
d: path,
|
|
1256
1305
|
strokeWidth,
|
|
@@ -1356,7 +1405,7 @@ var ChatShape = import_echo_schema11.S.extend(ComputeShape, import_echo_schema11
|
|
|
1356
1405
|
}));
|
|
1357
1406
|
var TextInputComponent = ({ shape, title, ...props }) => {
|
|
1358
1407
|
const { runtime } = useComputeNodeState(shape);
|
|
1359
|
-
const inputRef = (0,
|
|
1408
|
+
const inputRef = (0, import_react13.useRef)(null);
|
|
1360
1409
|
const handleEnter = (text) => {
|
|
1361
1410
|
const value = text.trim();
|
|
1362
1411
|
if (value.length) {
|
|
@@ -1364,10 +1413,10 @@ var TextInputComponent = ({ shape, title, ...props }) => {
|
|
|
1364
1413
|
inputRef.current?.setText("");
|
|
1365
1414
|
}
|
|
1366
1415
|
};
|
|
1367
|
-
return /* @__PURE__ */
|
|
1416
|
+
return /* @__PURE__ */ import_react13.default.createElement(Box, {
|
|
1368
1417
|
shape,
|
|
1369
1418
|
title
|
|
1370
|
-
}, /* @__PURE__ */
|
|
1419
|
+
}, /* @__PURE__ */ import_react13.default.createElement(import_react_ui_canvas_editor8.TextBox, {
|
|
1371
1420
|
ref: inputRef,
|
|
1372
1421
|
onEnter: handleEnter,
|
|
1373
1422
|
...props
|
|
@@ -1385,7 +1434,7 @@ var chatShape = {
|
|
|
1385
1434
|
type: "chat",
|
|
1386
1435
|
name: "Chat",
|
|
1387
1436
|
icon: "ph--textbox--regular",
|
|
1388
|
-
component: (props) => /* @__PURE__ */
|
|
1437
|
+
component: (props) => /* @__PURE__ */ import_react13.default.createElement(TextInputComponent, {
|
|
1389
1438
|
...props,
|
|
1390
1439
|
title: "Prompt",
|
|
1391
1440
|
placeholder: "Message"
|
|
@@ -1416,9 +1465,9 @@ var inferType = (value) => {
|
|
|
1416
1465
|
};
|
|
1417
1466
|
var ConstantComponent = ({ shape, title, chat, ...props }) => {
|
|
1418
1467
|
const { node } = useComputeNodeState(shape);
|
|
1419
|
-
const [type, setType] = (0,
|
|
1420
|
-
const inputRef = (0,
|
|
1421
|
-
const handleEnter = (0,
|
|
1468
|
+
const [type, setType] = (0, import_react14.useState)(inferType(node.value) ?? import_conductor11.ComputeValueType.literals[0]);
|
|
1469
|
+
const inputRef = (0, import_react14.useRef)(null);
|
|
1470
|
+
const handleEnter = (0, import_react14.useCallback)((text) => {
|
|
1422
1471
|
const value = text.trim();
|
|
1423
1472
|
if (value.length) {
|
|
1424
1473
|
if (type === "number") {
|
|
@@ -1436,26 +1485,26 @@ var ConstantComponent = ({ shape, title, chat, ...props }) => {
|
|
|
1436
1485
|
}, [
|
|
1437
1486
|
type
|
|
1438
1487
|
]);
|
|
1439
|
-
return /* @__PURE__ */
|
|
1488
|
+
return /* @__PURE__ */ import_react14.default.createElement(Box, {
|
|
1440
1489
|
shape,
|
|
1441
1490
|
title,
|
|
1442
|
-
status: /* @__PURE__ */
|
|
1491
|
+
status: /* @__PURE__ */ import_react14.default.createElement(TypeSelect, {
|
|
1443
1492
|
value: type,
|
|
1444
1493
|
onValueChange: setType
|
|
1445
1494
|
})
|
|
1446
|
-
}, (type === "string" || type === "number") && /* @__PURE__ */
|
|
1495
|
+
}, (type === "string" || type === "number") && /* @__PURE__ */ import_react14.default.createElement(import_react_ui_canvas_editor10.TextBox, {
|
|
1447
1496
|
...props,
|
|
1448
1497
|
ref: inputRef,
|
|
1449
1498
|
value: node.value,
|
|
1450
1499
|
onEnter: handleEnter
|
|
1451
|
-
}), type === "object" && /* @__PURE__ */
|
|
1500
|
+
}), type === "object" && /* @__PURE__ */ import_react14.default.createElement(import_react_ui_canvas_editor10.TextBox, {
|
|
1452
1501
|
...props,
|
|
1453
1502
|
ref: inputRef,
|
|
1454
1503
|
value: JSON.stringify(node.value, null, 2),
|
|
1455
1504
|
language: "json"
|
|
1456
|
-
}), type === "boolean" && /* @__PURE__ */
|
|
1505
|
+
}), type === "boolean" && /* @__PURE__ */ import_react14.default.createElement("div", {
|
|
1457
1506
|
className: "flex grow justify-center items-center"
|
|
1458
|
-
}, /* @__PURE__ */
|
|
1507
|
+
}, /* @__PURE__ */ import_react14.default.createElement(import_react_ui5.Input.Root, null, /* @__PURE__ */ import_react14.default.createElement(import_react_ui5.Input.Switch, {
|
|
1459
1508
|
checked: node.value,
|
|
1460
1509
|
onCheckedChange: (value) => {
|
|
1461
1510
|
node.value = value;
|
|
@@ -1474,7 +1523,7 @@ var constantShape = {
|
|
|
1474
1523
|
type: "constant",
|
|
1475
1524
|
name: "Value",
|
|
1476
1525
|
icon: "ph--dots-three-circle--regular",
|
|
1477
|
-
component: (props) => /* @__PURE__ */
|
|
1526
|
+
component: (props) => /* @__PURE__ */ import_react14.default.createElement(ConstantComponent, {
|
|
1478
1527
|
...props,
|
|
1479
1528
|
placeholder: "Constant"
|
|
1480
1529
|
}),
|
|
@@ -1499,7 +1548,7 @@ var createDatabase = (props) => createShape({
|
|
|
1499
1548
|
...props
|
|
1500
1549
|
});
|
|
1501
1550
|
var DatabaseComponent = ({ shape }) => {
|
|
1502
|
-
return /* @__PURE__ */
|
|
1551
|
+
return /* @__PURE__ */ import_react15.default.createElement(Box, {
|
|
1503
1552
|
shape
|
|
1504
1553
|
});
|
|
1505
1554
|
};
|
|
@@ -1530,8 +1579,8 @@ var createFunction = (props) => createShape({
|
|
|
1530
1579
|
var TextInputComponent2 = ({ shape, title, ...props }) => {
|
|
1531
1580
|
const client = (0, import_react_client.useClient)();
|
|
1532
1581
|
const { node, runtime } = useComputeNodeState(shape);
|
|
1533
|
-
const inputRef = (0,
|
|
1534
|
-
const handleEnter = (0,
|
|
1582
|
+
const inputRef = (0, import_react16.useRef)(null);
|
|
1583
|
+
const handleEnter = (0, import_react16.useCallback)(async (text) => {
|
|
1535
1584
|
const value = text.trim();
|
|
1536
1585
|
const { spaceId, objectId } = (0, import_echo2.parseId)(value);
|
|
1537
1586
|
if (!spaceId || !objectId) {
|
|
@@ -1556,7 +1605,7 @@ var TextInputComponent2 = ({ shape, title, ...props }) => {
|
|
|
1556
1605
|
client,
|
|
1557
1606
|
node
|
|
1558
1607
|
]);
|
|
1559
|
-
const handleAction = (0,
|
|
1608
|
+
const handleAction = (0, import_react16.useCallback)((action) => {
|
|
1560
1609
|
if (action !== "run") {
|
|
1561
1610
|
return;
|
|
1562
1611
|
}
|
|
@@ -1564,11 +1613,11 @@ var TextInputComponent2 = ({ shape, title, ...props }) => {
|
|
|
1564
1613
|
}, [
|
|
1565
1614
|
runtime
|
|
1566
1615
|
]);
|
|
1567
|
-
return /* @__PURE__ */
|
|
1616
|
+
return /* @__PURE__ */ import_react16.default.createElement(Box, {
|
|
1568
1617
|
shape,
|
|
1569
1618
|
title: "Function",
|
|
1570
1619
|
onAction: handleAction
|
|
1571
|
-
}, /* @__PURE__ */
|
|
1620
|
+
}, /* @__PURE__ */ import_react16.default.createElement(import_react_ui_canvas_editor13.TextBox, {
|
|
1572
1621
|
...props,
|
|
1573
1622
|
ref: inputRef,
|
|
1574
1623
|
value: node.value,
|
|
@@ -1598,9 +1647,9 @@ var createGpt = (props) => createShape({
|
|
|
1598
1647
|
});
|
|
1599
1648
|
var GptComponent = ({ shape }) => {
|
|
1600
1649
|
const { meta, runtime } = useComputeNodeState(shape);
|
|
1601
|
-
const [text, setText] = (0,
|
|
1602
|
-
const [tokens, setTokens] = (0,
|
|
1603
|
-
(0,
|
|
1650
|
+
const [text, setText] = (0, import_react17.useState)("");
|
|
1651
|
+
const [tokens, setTokens] = (0, import_react17.useState)(0);
|
|
1652
|
+
(0, import_react17.useEffect)(() => {
|
|
1604
1653
|
return runtime.subscribeToEventLog((ev) => {
|
|
1605
1654
|
switch (ev.type) {
|
|
1606
1655
|
case "begin-compute": {
|
|
@@ -1631,9 +1680,9 @@ var GptComponent = ({ shape }) => {
|
|
|
1631
1680
|
}, [
|
|
1632
1681
|
runtime?.subscribeToEventLog
|
|
1633
1682
|
]);
|
|
1634
|
-
return /* @__PURE__ */
|
|
1683
|
+
return /* @__PURE__ */ import_react17.default.createElement(FunctionBody, {
|
|
1635
1684
|
shape,
|
|
1636
|
-
content: /* @__PURE__ */
|
|
1685
|
+
content: /* @__PURE__ */ import_react17.default.createElement("div", {
|
|
1637
1686
|
className: "px-2 py-1 overflow-y-scroll"
|
|
1638
1687
|
}, text),
|
|
1639
1688
|
status: `${tokens} tokens`,
|
|
@@ -1660,15 +1709,15 @@ var JsonComponent = ({ shape, ...props }) => {
|
|
|
1660
1709
|
const { runtime } = useComputeNodeState(shape);
|
|
1661
1710
|
const input = runtime.inputs[import_conductor14.DEFAULT_INPUT];
|
|
1662
1711
|
const value = input?.type === "executed" ? input.value : void 0;
|
|
1663
|
-
return /* @__PURE__ */
|
|
1712
|
+
return /* @__PURE__ */ import_react18.default.createElement(Box, {
|
|
1664
1713
|
shape
|
|
1665
|
-
}, /* @__PURE__ */
|
|
1714
|
+
}, /* @__PURE__ */ import_react18.default.createElement(import_react_ui_syntax_highlighter.JsonFilter, {
|
|
1666
1715
|
data: value,
|
|
1667
1716
|
classNames: "text-xs"
|
|
1668
1717
|
}));
|
|
1669
1718
|
};
|
|
1670
1719
|
var JsonTransformComponent = ({ shape, ...props }) => {
|
|
1671
|
-
return /* @__PURE__ */
|
|
1720
|
+
return /* @__PURE__ */ import_react18.default.createElement(Box, {
|
|
1672
1721
|
shape
|
|
1673
1722
|
});
|
|
1674
1723
|
};
|
|
@@ -1684,7 +1733,7 @@ var jsonShape = {
|
|
|
1684
1733
|
type: "json",
|
|
1685
1734
|
name: "JSON",
|
|
1686
1735
|
icon: "ph--code--regular",
|
|
1687
|
-
component: (props) => /* @__PURE__ */
|
|
1736
|
+
component: (props) => /* @__PURE__ */ import_react18.default.createElement(JsonComponent, props),
|
|
1688
1737
|
createShape: createJson,
|
|
1689
1738
|
getAnchors: (shape) => (0, import_react_ui_canvas_editor14.createAnchorMap)(shape, {
|
|
1690
1739
|
[createAnchorId("input")]: {
|
|
@@ -1710,7 +1759,7 @@ var jsonTransformShape = {
|
|
|
1710
1759
|
type: "json-transform",
|
|
1711
1760
|
name: "Transform",
|
|
1712
1761
|
icon: "ph--shuffle-simple--regular",
|
|
1713
|
-
component: (props) => /* @__PURE__ */
|
|
1762
|
+
component: (props) => /* @__PURE__ */ import_react18.default.createElement(JsonTransformComponent, props),
|
|
1714
1763
|
createShape: createJsonTransform,
|
|
1715
1764
|
getAnchors: (shape) => createFunctionAnchors(shape, import_conductor14.JsonTransformInput, import_conductor14.DefaultOutput),
|
|
1716
1765
|
resizable: true
|
|
@@ -1722,14 +1771,14 @@ var IfElseShape = import_echo_schema17.S.extend(ComputeShape, import_echo_schema
|
|
|
1722
1771
|
type: import_echo_schema17.S.Literal("if-else")
|
|
1723
1772
|
}));
|
|
1724
1773
|
var IfComponent = ({ shape, ...props }) => {
|
|
1725
|
-
return /* @__PURE__ */
|
|
1774
|
+
return /* @__PURE__ */ import_react19.default.createElement(FunctionBody, {
|
|
1726
1775
|
shape,
|
|
1727
1776
|
inputSchema: import_conductor15.IfInput,
|
|
1728
1777
|
outputSchema: import_conductor15.IfOutput
|
|
1729
1778
|
});
|
|
1730
1779
|
};
|
|
1731
1780
|
var IfElseComponent = ({ shape, ...props }) => {
|
|
1732
|
-
return /* @__PURE__ */
|
|
1781
|
+
return /* @__PURE__ */ import_react19.default.createElement(FunctionBody, {
|
|
1733
1782
|
shape,
|
|
1734
1783
|
inputSchema: import_conductor15.IfElseInput,
|
|
1735
1784
|
outputSchema: import_conductor15.IfElseOutput
|
|
@@ -1747,7 +1796,7 @@ var ifShape = {
|
|
|
1747
1796
|
type: "if",
|
|
1748
1797
|
name: "IF",
|
|
1749
1798
|
icon: "ph--arrows-split--regular",
|
|
1750
|
-
component: (props) => /* @__PURE__ */
|
|
1799
|
+
component: (props) => /* @__PURE__ */ import_react19.default.createElement(IfComponent, props),
|
|
1751
1800
|
createShape: createIf,
|
|
1752
1801
|
getAnchors: (shape) => createFunctionAnchors(shape, import_conductor15.IfInput, import_conductor15.IfOutput)
|
|
1753
1802
|
};
|
|
@@ -1763,7 +1812,7 @@ var ifElseShape = {
|
|
|
1763
1812
|
type: "if-else",
|
|
1764
1813
|
name: "IF/ELSE",
|
|
1765
1814
|
icon: "ph--arrows-merge--regular",
|
|
1766
|
-
component: (props) => /* @__PURE__ */
|
|
1815
|
+
component: (props) => /* @__PURE__ */ import_react19.default.createElement(IfElseComponent, props),
|
|
1767
1816
|
createShape: createIfElse,
|
|
1768
1817
|
getAnchors: (shape) => createFunctionAnchors(shape, import_conductor15.IfElseInput, import_conductor15.IfElseOutput)
|
|
1769
1818
|
};
|
|
@@ -1786,15 +1835,15 @@ var QueueComponent = ({ shape }) => {
|
|
|
1786
1835
|
runtime.evalNode();
|
|
1787
1836
|
}
|
|
1788
1837
|
};
|
|
1789
|
-
return /* @__PURE__ */
|
|
1838
|
+
return /* @__PURE__ */ import_react20.default.createElement(Box, {
|
|
1790
1839
|
shape,
|
|
1791
1840
|
status: `${items.length} items`,
|
|
1792
1841
|
onAction: handleAction
|
|
1793
|
-
}, /* @__PURE__ */
|
|
1842
|
+
}, /* @__PURE__ */ import_react20.default.createElement("div", {
|
|
1794
1843
|
className: "flex flex-col w-full overflow-y-scroll divide-y divide-separator"
|
|
1795
1844
|
}, [
|
|
1796
1845
|
...items
|
|
1797
|
-
].map((item, i) => /* @__PURE__ */
|
|
1846
|
+
].map((item, i) => /* @__PURE__ */ import_react20.default.createElement(QueueItem, {
|
|
1798
1847
|
key: i,
|
|
1799
1848
|
classNames: "p-1 px-2",
|
|
1800
1849
|
item
|
|
@@ -1802,17 +1851,17 @@ var QueueComponent = ({ shape }) => {
|
|
|
1802
1851
|
};
|
|
1803
1852
|
var QueueItem = ({ classNames, item }) => {
|
|
1804
1853
|
if (typeof item !== "object") {
|
|
1805
|
-
return /* @__PURE__ */
|
|
1854
|
+
return /* @__PURE__ */ import_react20.default.createElement("div", {
|
|
1806
1855
|
className: (0, import_react_ui_theme3.mx)(classNames, "whitespace-pre-wrap")
|
|
1807
1856
|
}, item);
|
|
1808
1857
|
}
|
|
1809
|
-
return /* @__PURE__ */
|
|
1858
|
+
return /* @__PURE__ */ import_react20.default.createElement("div", {
|
|
1810
1859
|
className: (0, import_react_ui_theme3.mx)("grid grid-cols-[80px,1fr]", classNames)
|
|
1811
|
-
}, Object.entries(item).map(([key, value]) => /* @__PURE__ */
|
|
1860
|
+
}, Object.entries(item).map(([key, value]) => /* @__PURE__ */ import_react20.default.createElement(import_react20.Fragment, {
|
|
1812
1861
|
key
|
|
1813
|
-
}, /* @__PURE__ */
|
|
1862
|
+
}, /* @__PURE__ */ import_react20.default.createElement("div", {
|
|
1814
1863
|
className: "p-1 text-xs text-subdued"
|
|
1815
|
-
}, key), /* @__PURE__ */
|
|
1864
|
+
}, key), /* @__PURE__ */ import_react20.default.createElement("div", null, typeof value === "string" ? value : JSON.stringify(value)))));
|
|
1816
1865
|
};
|
|
1817
1866
|
var queueShape = {
|
|
1818
1867
|
type: "queue",
|
|
@@ -1847,9 +1896,9 @@ var icons = [
|
|
|
1847
1896
|
var pickIcon = () => icons[Math.floor(Math.random() * icons.length)];
|
|
1848
1897
|
var RandomComponent = ({ shape }) => {
|
|
1849
1898
|
const { runtime } = useComputeNodeState(shape);
|
|
1850
|
-
const [spin, setSpin] = (0,
|
|
1851
|
-
const [icon, setIcon] = (0,
|
|
1852
|
-
(0,
|
|
1899
|
+
const [spin, setSpin] = (0, import_react21.useState)(false);
|
|
1900
|
+
const [icon, setIcon] = (0, import_react21.useState)(pickIcon());
|
|
1901
|
+
(0, import_react21.useEffect)(() => {
|
|
1853
1902
|
if (!spin) {
|
|
1854
1903
|
return;
|
|
1855
1904
|
}
|
|
@@ -1869,9 +1918,9 @@ var RandomComponent = ({ shape }) => {
|
|
|
1869
1918
|
runtime.setOutput(import_conductor17.DEFAULT_OUTPUT, Math.random());
|
|
1870
1919
|
setSpin(true);
|
|
1871
1920
|
};
|
|
1872
|
-
return /* @__PURE__ */
|
|
1921
|
+
return /* @__PURE__ */ import_react21.default.createElement("div", {
|
|
1873
1922
|
className: "flex grow items-center justify-center"
|
|
1874
|
-
}, /* @__PURE__ */
|
|
1923
|
+
}, /* @__PURE__ */ import_react21.default.createElement(import_react_ui6.Icon, {
|
|
1875
1924
|
icon,
|
|
1876
1925
|
classNames: (0, import_react_ui_theme4.mx)(spin && "animate-[spin_1s]"),
|
|
1877
1926
|
size: 10,
|
|
@@ -1908,9 +1957,9 @@ var ScopeComponent = ({ shape }) => {
|
|
|
1908
1957
|
const input = runtime.inputs[import_conductor18.DEFAULT_INPUT];
|
|
1909
1958
|
const active = input?.type === "executed" ? input.value : false;
|
|
1910
1959
|
const { getAverage } = (0, import_react_ui_sfx.useAudioStream)(active);
|
|
1911
|
-
return /* @__PURE__ */
|
|
1960
|
+
return /* @__PURE__ */ import_react22.default.createElement("div", {
|
|
1912
1961
|
className: "flex w-full justify-center items-center bg-black"
|
|
1913
|
-
}, /* @__PURE__ */
|
|
1962
|
+
}, /* @__PURE__ */ import_react22.default.createElement(import_react_ui_sfx.Chaos, {
|
|
1914
1963
|
active,
|
|
1915
1964
|
getValue: getAverage,
|
|
1916
1965
|
options: {
|
|
@@ -1952,10 +2001,10 @@ var SurfaceComponent = ({ shape }) => {
|
|
|
1952
2001
|
runtime.evalNode();
|
|
1953
2002
|
}
|
|
1954
2003
|
};
|
|
1955
|
-
return /* @__PURE__ */
|
|
2004
|
+
return /* @__PURE__ */ import_react23.default.createElement(Box, {
|
|
1956
2005
|
shape,
|
|
1957
2006
|
onAction: handleAction
|
|
1958
|
-
}, value !== null && /* @__PURE__ */
|
|
2007
|
+
}, value !== null && /* @__PURE__ */ import_react23.default.createElement(import_app_framework.Surface, {
|
|
1959
2008
|
role: "canvas-node",
|
|
1960
2009
|
data: {
|
|
1961
2010
|
value
|
|
@@ -1990,16 +2039,16 @@ var createSwitch = (props) => createShape({
|
|
|
1990
2039
|
});
|
|
1991
2040
|
var SwitchComponent = ({ shape }) => {
|
|
1992
2041
|
const { runtime } = useComputeNodeState(shape);
|
|
1993
|
-
const [value, setValue] = (0,
|
|
1994
|
-
(0,
|
|
2042
|
+
const [value, setValue] = (0, import_react24.useState)(false);
|
|
2043
|
+
(0, import_react24.useEffect)(() => {
|
|
1995
2044
|
runtime.setOutput(import_conductor20.DEFAULT_OUTPUT, value);
|
|
1996
2045
|
}, [
|
|
1997
2046
|
value
|
|
1998
2047
|
]);
|
|
1999
|
-
return /* @__PURE__ */
|
|
2048
|
+
return /* @__PURE__ */ import_react24.default.createElement("div", {
|
|
2000
2049
|
className: "flex w-full justify-center items-center",
|
|
2001
2050
|
onClick: (ev) => ev.stopPropagation()
|
|
2002
|
-
}, /* @__PURE__ */
|
|
2051
|
+
}, /* @__PURE__ */ import_react24.default.createElement(import_react_ui7.Input.Root, null, /* @__PURE__ */ import_react24.default.createElement(import_react_ui7.Input.Switch, {
|
|
2003
2052
|
checked: value,
|
|
2004
2053
|
onCheckedChange: (value2) => setValue(value2)
|
|
2005
2054
|
})));
|
|
@@ -2031,7 +2080,7 @@ var createTable = (props) => createShape({
|
|
|
2031
2080
|
...props
|
|
2032
2081
|
});
|
|
2033
2082
|
var TableComponent = ({ shape }) => {
|
|
2034
|
-
return /* @__PURE__ */
|
|
2083
|
+
return /* @__PURE__ */ import_react25.default.createElement(Box, {
|
|
2035
2084
|
shape
|
|
2036
2085
|
});
|
|
2037
2086
|
};
|
|
@@ -2051,7 +2100,7 @@ var TemplateShape = import_echo_schema24.S.extend(ComputeShape, import_echo_sche
|
|
|
2051
2100
|
}));
|
|
2052
2101
|
var TextInputComponent3 = ({ shape, title, ...props }) => {
|
|
2053
2102
|
const { node } = useComputeNodeState(shape);
|
|
2054
|
-
const inputRef = (0,
|
|
2103
|
+
const inputRef = (0, import_react26.useRef)(null);
|
|
2055
2104
|
const handleEnter = (text) => {
|
|
2056
2105
|
const value = text.trim();
|
|
2057
2106
|
if (value.length) {
|
|
@@ -2073,14 +2122,14 @@ var TextInputComponent3 = ({ shape, title, ...props }) => {
|
|
|
2073
2122
|
node.valueType = newType;
|
|
2074
2123
|
node.inputSchema = (0, import_echo_schema24.toJsonSchema)((0, import_conductor22.getTemplateInputSchema)(node));
|
|
2075
2124
|
};
|
|
2076
|
-
return /* @__PURE__ */
|
|
2125
|
+
return /* @__PURE__ */ import_react26.default.createElement(Box, {
|
|
2077
2126
|
shape,
|
|
2078
2127
|
title: "Template",
|
|
2079
|
-
status: /* @__PURE__ */
|
|
2128
|
+
status: /* @__PURE__ */ import_react26.default.createElement(TypeSelect, {
|
|
2080
2129
|
value: node.valueType ?? "string",
|
|
2081
2130
|
onValueChange: handleTypeChange
|
|
2082
2131
|
})
|
|
2083
|
-
}, /* @__PURE__ */
|
|
2132
|
+
}, /* @__PURE__ */ import_react26.default.createElement(import_react_ui_canvas_editor19.TextBox, {
|
|
2084
2133
|
...props,
|
|
2085
2134
|
ref: inputRef,
|
|
2086
2135
|
value: node.value,
|
|
@@ -2101,7 +2150,7 @@ var templateShape = {
|
|
|
2101
2150
|
type: "template",
|
|
2102
2151
|
name: "Template",
|
|
2103
2152
|
icon: "ph--article--regular",
|
|
2104
|
-
component: (props) => /* @__PURE__ */
|
|
2153
|
+
component: (props) => /* @__PURE__ */ import_react26.default.createElement(TextInputComponent3, {
|
|
2105
2154
|
...props,
|
|
2106
2155
|
placeholder: "Prompt"
|
|
2107
2156
|
}),
|
|
@@ -2129,10 +2178,10 @@ var TextComponent = ({ shape }) => {
|
|
|
2129
2178
|
runtime.evalNode();
|
|
2130
2179
|
}
|
|
2131
2180
|
};
|
|
2132
|
-
return /* @__PURE__ */
|
|
2181
|
+
return /* @__PURE__ */ import_react27.default.createElement(Box, {
|
|
2133
2182
|
shape,
|
|
2134
2183
|
onAction: handleAction
|
|
2135
|
-
}, /* @__PURE__ */
|
|
2184
|
+
}, /* @__PURE__ */ import_react27.default.createElement(import_react_ui_canvas_editor20.TextBox, {
|
|
2136
2185
|
value
|
|
2137
2186
|
}));
|
|
2138
2187
|
};
|
|
@@ -2165,36 +2214,36 @@ var createThread = (props) => createShape({
|
|
|
2165
2214
|
});
|
|
2166
2215
|
var ThreadComponent = ({ shape }) => {
|
|
2167
2216
|
const items = [];
|
|
2168
|
-
const scrollRef = (0,
|
|
2169
|
-
(0,
|
|
2217
|
+
const scrollRef = (0, import_react28.useRef)(null);
|
|
2218
|
+
(0, import_react28.useEffect)(() => {
|
|
2170
2219
|
if (scrollRef.current) {
|
|
2171
2220
|
scrollRef.current.scrollTop = scrollRef.current.scrollHeight;
|
|
2172
2221
|
}
|
|
2173
2222
|
}, [
|
|
2174
2223
|
items
|
|
2175
2224
|
]);
|
|
2176
|
-
return /* @__PURE__ */
|
|
2225
|
+
return /* @__PURE__ */ import_react28.default.createElement(Box, {
|
|
2177
2226
|
shape
|
|
2178
|
-
}, /* @__PURE__ */
|
|
2227
|
+
}, /* @__PURE__ */ import_react28.default.createElement("div", {
|
|
2179
2228
|
ref: scrollRef,
|
|
2180
2229
|
className: "flex flex-col w-full overflow-y-scroll gap-2 p-2"
|
|
2181
2230
|
}, [
|
|
2182
2231
|
...items
|
|
2183
|
-
].map((item, i) => /* @__PURE__ */
|
|
2232
|
+
].map((item, i) => /* @__PURE__ */ import_react28.default.createElement(ThreadItem, {
|
|
2184
2233
|
key: i,
|
|
2185
2234
|
item
|
|
2186
2235
|
}))));
|
|
2187
2236
|
};
|
|
2188
2237
|
var ThreadItem = ({ classNames, item }) => {
|
|
2189
2238
|
if (typeof item !== "object") {
|
|
2190
|
-
return /* @__PURE__ */
|
|
2239
|
+
return /* @__PURE__ */ import_react28.default.createElement("div", {
|
|
2191
2240
|
className: (0, import_react_ui_theme5.mx)(classNames)
|
|
2192
2241
|
}, item);
|
|
2193
2242
|
}
|
|
2194
2243
|
const { role, message } = item;
|
|
2195
|
-
return /* @__PURE__ */
|
|
2244
|
+
return /* @__PURE__ */ import_react28.default.createElement("div", {
|
|
2196
2245
|
className: (0, import_react_ui_theme5.mx)("flex", classNames, role === "user" && "justify-end")
|
|
2197
|
-
}, /* @__PURE__ */
|
|
2246
|
+
}, /* @__PURE__ */ import_react28.default.createElement("div", {
|
|
2198
2247
|
className: (0, import_react_ui_theme5.mx)("block rounded-md p-1 px-2 text-sm", role === "user" ? "bg-blue-100 dark:bg-blue-800" : role === "system" ? "bg-red-100, dark:bg-red-800" : "whitespace-pre-wrap bg-neutral-50 dark:bg-neutral-800")
|
|
2199
2248
|
}, message));
|
|
2200
2249
|
};
|
|
@@ -2219,7 +2268,7 @@ var createTextToImage = (props) => createShape({
|
|
|
2219
2268
|
...props
|
|
2220
2269
|
});
|
|
2221
2270
|
var TextToImageComponent = ({ shape }) => {
|
|
2222
|
-
return /* @__PURE__ */
|
|
2271
|
+
return /* @__PURE__ */ import_react29.default.createElement(Box, {
|
|
2223
2272
|
shape
|
|
2224
2273
|
});
|
|
2225
2274
|
};
|
|
@@ -2258,7 +2307,7 @@ var createTrigger = (props) => {
|
|
|
2258
2307
|
var TriggerComponent = ({ shape }) => {
|
|
2259
2308
|
const space = (0, import_echo3.useSpace)();
|
|
2260
2309
|
const functionTrigger = shape.functionTrigger?.target;
|
|
2261
|
-
(0,
|
|
2310
|
+
(0, import_react30.useEffect)(() => {
|
|
2262
2311
|
if (functionTrigger && !functionTrigger.spec) {
|
|
2263
2312
|
functionTrigger.spec = createTriggerSpec({
|
|
2264
2313
|
triggerKind: import_functions2.TriggerKind.Email,
|
|
@@ -2269,7 +2318,7 @@ var TriggerComponent = ({ shape }) => {
|
|
|
2269
2318
|
functionTrigger,
|
|
2270
2319
|
functionTrigger?.spec
|
|
2271
2320
|
]);
|
|
2272
|
-
(0,
|
|
2321
|
+
(0, import_react30.useEffect)(() => {
|
|
2273
2322
|
shape.size.height = getHeight(getOutputSchema(functionTrigger?.spec?.type ?? import_functions2.TriggerKind.Email));
|
|
2274
2323
|
}, [
|
|
2275
2324
|
functionTrigger?.spec?.type
|
|
@@ -2285,9 +2334,9 @@ var TriggerComponent = ({ shape }) => {
|
|
|
2285
2334
|
if (!functionTrigger?.spec) {
|
|
2286
2335
|
return;
|
|
2287
2336
|
}
|
|
2288
|
-
return /* @__PURE__ */
|
|
2337
|
+
return /* @__PURE__ */ import_react30.default.createElement(FunctionBody, {
|
|
2289
2338
|
shape,
|
|
2290
|
-
status: /* @__PURE__ */
|
|
2339
|
+
status: /* @__PURE__ */ import_react30.default.createElement(TriggerKindSelect, {
|
|
2291
2340
|
value: functionTrigger.spec?.type,
|
|
2292
2341
|
onValueChange: (kind) => setKind(kind)
|
|
2293
2342
|
}),
|
|
@@ -2296,16 +2345,16 @@ var TriggerComponent = ({ shape }) => {
|
|
|
2296
2345
|
});
|
|
2297
2346
|
};
|
|
2298
2347
|
var TriggerKindSelect = ({ value, onValueChange }) => {
|
|
2299
|
-
return /* @__PURE__ */
|
|
2348
|
+
return /* @__PURE__ */ import_react30.default.createElement(import_react_ui8.Select.Root, {
|
|
2300
2349
|
value,
|
|
2301
2350
|
onValueChange
|
|
2302
|
-
}, /* @__PURE__ */
|
|
2351
|
+
}, /* @__PURE__ */ import_react30.default.createElement(import_react_ui8.Select.TriggerButton, {
|
|
2303
2352
|
variant: "ghost",
|
|
2304
2353
|
classNames: "w-full !px-0"
|
|
2305
|
-
}), /* @__PURE__ */
|
|
2354
|
+
}), /* @__PURE__ */ import_react30.default.createElement(import_react_ui8.Select.Portal, null, /* @__PURE__ */ import_react30.default.createElement(import_react_ui8.Select.Content, null, /* @__PURE__ */ import_react30.default.createElement(import_react_ui8.Select.ScrollUpButton, null), /* @__PURE__ */ import_react30.default.createElement(import_react_ui8.Select.Viewport, null, Object.values(import_functions2.TriggerKind).map((type) => /* @__PURE__ */ import_react30.default.createElement(import_react_ui8.Select.Option, {
|
|
2306
2355
|
key: type,
|
|
2307
2356
|
value: type
|
|
2308
|
-
}, type))), /* @__PURE__ */
|
|
2357
|
+
}, type))), /* @__PURE__ */ import_react30.default.createElement(import_react_ui8.Select.ScrollDownButton, null), /* @__PURE__ */ import_react30.default.createElement(import_react_ui8.Select.Arrow, null))));
|
|
2309
2358
|
};
|
|
2310
2359
|
var createTriggerSpec = (props) => {
|
|
2311
2360
|
const kind = props.triggerKind ?? import_functions2.TriggerKind.Email;
|
|
@@ -2373,8 +2422,8 @@ var createGptRealtime = (props) => createShape({
|
|
|
2373
2422
|
...props
|
|
2374
2423
|
});
|
|
2375
2424
|
var GptRealtimeComponent = ({ shape }) => {
|
|
2376
|
-
const [isLive, setIsLive] = (0,
|
|
2377
|
-
const [isReady, setIsReady] = (0,
|
|
2425
|
+
const [isLive, setIsLive] = (0, import_react31.useState)(false);
|
|
2426
|
+
const [isReady, setIsReady] = (0, import_react31.useState)(false);
|
|
2378
2427
|
const config = (0, import_react_client2.useConfig)();
|
|
2379
2428
|
const start = async () => {
|
|
2380
2429
|
setIsLive(true);
|
|
@@ -2459,9 +2508,9 @@ var GptRealtimeComponent = ({ shape }) => {
|
|
|
2459
2508
|
throw error;
|
|
2460
2509
|
}
|
|
2461
2510
|
};
|
|
2462
|
-
return /* @__PURE__ */
|
|
2511
|
+
return /* @__PURE__ */ import_react31.default.createElement("div", {
|
|
2463
2512
|
className: "flex w-full justify-center items-center"
|
|
2464
|
-
}, /* @__PURE__ */
|
|
2513
|
+
}, /* @__PURE__ */ import_react31.default.createElement(import_react_ui9.Icon, {
|
|
2465
2514
|
icon: isReady ? "ph--waveform--regular" : isLive ? "ph--pulse--regular" : "ph--play--regular",
|
|
2466
2515
|
size: 16,
|
|
2467
2516
|
classNames: !isLive && "cursor-pointer",
|
|
@@ -2696,6 +2745,7 @@ var ComputeShapeLayout = class extends import_react_ui_canvas_editor23.ShapeLayo
|
|
|
2696
2745
|
threadShape,
|
|
2697
2746
|
triggerShape,
|
|
2698
2747
|
useComputeContext,
|
|
2748
|
+
useComputeGraphController,
|
|
2699
2749
|
useComputeNodeState,
|
|
2700
2750
|
useGraphMonitor
|
|
2701
2751
|
});
|