@burdenoff/fluidgrids-fe-sdk 2026.701.7 → 2026.702.1
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/{WorkflowBuilder-ZX7WXPTM.js → WorkflowBuilder-5D7ZOMHN.js} +4 -4
- package/dist/{WorkflowBuilder-ZX7WXPTM.js.map → WorkflowBuilder-5D7ZOMHN.js.map} +1 -1
- package/dist/{chunk-Z24M3SR3.js → chunk-WPCOE4Z5.js} +178 -51
- package/dist/chunk-WPCOE4Z5.js.map +1 -0
- package/dist/index.d.ts +13 -4
- package/dist/index.js +4 -4
- package/package.json +1 -1
- package/dist/chunk-Z24M3SR3.js.map +0 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export { WorkflowBuilder } from './chunk-
|
|
1
|
+
export { WorkflowBuilder } from './chunk-WPCOE4Z5.js';
|
|
2
2
|
import './chunk-7VEOUEIN.js';
|
|
3
3
|
import './chunk-BQXHJIER.js';
|
|
4
|
+
import './chunk-LUGJJ7LL.js';
|
|
4
5
|
import './chunk-KU64CCSV.js';
|
|
5
6
|
import './chunk-4FFPGQD3.js';
|
|
6
7
|
import './chunk-FGYVIXQ7.js';
|
|
7
8
|
import './chunk-5BDQNSP3.js';
|
|
8
9
|
import './chunk-WWU2O2SR.js';
|
|
9
|
-
import './chunk-LUGJJ7LL.js';
|
|
10
10
|
import './chunk-XQP33UJR.js';
|
|
11
11
|
import './chunk-Z54K22LP.js';
|
|
12
|
-
//# sourceMappingURL=WorkflowBuilder-
|
|
13
|
-
//# sourceMappingURL=WorkflowBuilder-
|
|
12
|
+
//# sourceMappingURL=WorkflowBuilder-5D7ZOMHN.js.map
|
|
13
|
+
//# sourceMappingURL=WorkflowBuilder-5D7ZOMHN.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"WorkflowBuilder-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"WorkflowBuilder-5D7ZOMHN.js"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Dialog as Dialog$1, DialogContent as DialogContent$1, DialogHeader as DialogHeader$1, DialogTitle as DialogTitle$1, DialogDescription as DialogDescription$1, DialogFooter, Input as Input$1 } from './chunk-7VEOUEIN.js';
|
|
2
|
-
import { getGlobalStoreClient, createGlobalStoreClient } from './chunk-BQXHJIER.js';
|
|
2
|
+
import { getGlobalStoreClient, createGlobalStoreClient, setGlobalStoreClient, resetGlobalStoreClient } from './chunk-BQXHJIER.js';
|
|
3
|
+
import { GetMyNodeInstallationsDocument, BrowseWorkflowTemplatesDocument, InstallWorkflowNodeDocument, InstallPurchasedNodeDocument, BrowseWorkflowNodesDocument, UninstallWorkflowNodeDocument, CreateStoreOrderDocument } from './chunk-LUGJJ7LL.js';
|
|
3
4
|
import { useFlowStore } from './chunk-KU64CCSV.js';
|
|
4
5
|
import { useLazyWorkflowDefinition, useCreateWorkflow, useWorkflowVersions, useRestoreWorkflowVersion, useActivateWorkflow, useDeactivateWorkflow } from './chunk-4FFPGQD3.js';
|
|
5
6
|
import { NodeEndpointConfigsDocument, NodeManifestDocument, UpdateWorkflowDefinitionDocument, CreateWorkflowDefinitionDocument, CreateWorkflowVersionDocument, TriggerWorkflowDocument, WorkflowRunDocument, NodeSchemaIntrospectionDocument, NodeUsageStatusDocument, RemoveNodeFromWorkflowsDocument } from './chunk-FGYVIXQ7.js';
|
|
6
7
|
import { waitForFluidGridsClient, getFluidGridsClient, createFluidGridsClient, setFluidGridsClient, resetFluidGridsClient } from './chunk-5BDQNSP3.js';
|
|
7
8
|
import { config, getFluidGridsConfig, validateTrustedOrigin, setFluidGridsConfig, resetFluidGridsConfig } from './chunk-WWU2O2SR.js';
|
|
8
|
-
import { GetMyNodeInstallationsDocument, BrowseWorkflowTemplatesDocument, InstallWorkflowNodeDocument, InstallPurchasedNodeDocument, BrowseWorkflowNodesDocument, UninstallWorkflowNodeDocument, CreateStoreOrderDocument } from './chunk-LUGJJ7LL.js';
|
|
9
9
|
import { deepClone, applyTemplateInputs } from './chunk-XQP33UJR.js';
|
|
10
10
|
import { cn as cn$1, Badge as Badge$1, Button as Button$1 } from './chunk-Z54K22LP.js';
|
|
11
11
|
import { ThemeProvider as ThemeProvider$1 } from '@burdenoff/fe-libs/shared/providers/shell';
|
|
@@ -18,7 +18,7 @@ import { Handle, Position, getBezierPath, MarkerType, useStore, useReactFlow, ge
|
|
|
18
18
|
import { produce } from 'immer';
|
|
19
19
|
import { nanoid } from 'nanoid/non-secure';
|
|
20
20
|
import { cn } from '@burdenoff/fe-libs/utils';
|
|
21
|
-
import { Textarea, Input, Button, Card, Badge, CardContent as CardContent$1, Dialog, DialogTrigger, DialogContent, DialogHeader, DialogTitle, DialogDescription,
|
|
21
|
+
import { Textarea, Input, Button, Card, Badge, CardContent as CardContent$1, Dialog, DialogTrigger, DialogContent, DialogHeader, DialogTitle, DialogDescription, DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuLabel, DropdownMenuItem, DropdownMenuSeparator, Sheet, SheetTrigger, SheetContent, SheetHeader, SheetTitle, Popover, PopoverTrigger, PopoverContent, Toaster, Tabs, TabsList, TabsTrigger, TabsContent, CardHeader as CardHeader$1, CardTitle as CardTitle$1, CardDescription as CardDescription$1, ScrollArea, TooltipProvider, Tooltip, TooltipTrigger, TooltipContent, Label, Select, SelectTrigger, SelectValue, SelectContent, SelectItem } from '@burdenoff/fe-libs/ui';
|
|
22
22
|
import { Icon } from '@iconify/react';
|
|
23
23
|
import * as AdaptiveCards from 'adaptivecards';
|
|
24
24
|
import { formatDistanceToNow } from 'date-fns';
|
|
@@ -7313,6 +7313,19 @@ function ArrayField({
|
|
|
7313
7313
|
description && /* @__PURE__ */ jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: description })
|
|
7314
7314
|
] });
|
|
7315
7315
|
}
|
|
7316
|
+
function slimNodeDataToCurrentOperation(data) {
|
|
7317
|
+
const nodeData = data.nodeData;
|
|
7318
|
+
if (!nodeData) return data;
|
|
7319
|
+
const opName = data.operation_name;
|
|
7320
|
+
const rawOps = nodeData.operations;
|
|
7321
|
+
const opsArray = Array.isArray(rawOps) ? rawOps : Array.isArray(rawOps?.operations) ? rawOps.operations : [];
|
|
7322
|
+
const current = opName ? opsArray.find((o) => o?.name === opName) : void 0;
|
|
7323
|
+
if (!current) {
|
|
7324
|
+
const { nodeData: _omit, ...rest } = data;
|
|
7325
|
+
return rest;
|
|
7326
|
+
}
|
|
7327
|
+
return { ...data, nodeData: { ...nodeData, operations: [current] } };
|
|
7328
|
+
}
|
|
7316
7329
|
function useSaveWorkflow() {
|
|
7317
7330
|
const [isSaving, setIsSaving] = useState(false);
|
|
7318
7331
|
const params = useParams();
|
|
@@ -7335,9 +7348,12 @@ function useSaveWorkflow() {
|
|
|
7335
7348
|
const preparedWorkflow = {
|
|
7336
7349
|
...workflow,
|
|
7337
7350
|
nodes: workflow.nodes?.map((n) => {
|
|
7338
|
-
const
|
|
7339
|
-
|
|
7340
|
-
|
|
7351
|
+
const slimData = slimNodeDataToCurrentOperation(
|
|
7352
|
+
n.data ?? {}
|
|
7353
|
+
);
|
|
7354
|
+
const { nodeData: _slimNodeData, ...flattenedData } = slimData;
|
|
7355
|
+
void _slimNodeData;
|
|
7356
|
+
return { ...n, data: slimData, ...flattenedData };
|
|
7341
7357
|
})
|
|
7342
7358
|
};
|
|
7343
7359
|
const definitionJson = {
|
|
@@ -8773,7 +8789,7 @@ var getNodeMetadata = (value) => {
|
|
|
8773
8789
|
}, [data?.isAdapterInstance, edges, id, nodeLookup]);
|
|
8774
8790
|
const nodeType = value?.type;
|
|
8775
8791
|
const meta = useMemo(() => getNodeDetail(nodeType), [nodeType]);
|
|
8776
|
-
const {
|
|
8792
|
+
const { setNodes } = useReactFlow();
|
|
8777
8793
|
const [
|
|
8778
8794
|
showNodePropertiesOf,
|
|
8779
8795
|
isExecuting,
|
|
@@ -8859,44 +8875,15 @@ var getNodeMetadata = (value) => {
|
|
|
8859
8875
|
const explicitRole = data.args?.state?.role;
|
|
8860
8876
|
const isAction = explicitRole === "action" || !explicitRole && edges.some((e) => e.target === id);
|
|
8861
8877
|
return isAction ? "Send Message" : "Receive Messages";
|
|
8862
|
-
})() : "Store & Forward" }) }) :
|
|
8863
|
-
|
|
8864
|
-
|
|
8865
|
-
|
|
8866
|
-
|
|
8867
|
-
|
|
8868
|
-
|
|
8869
|
-
|
|
8870
|
-
|
|
8871
|
-
);
|
|
8872
|
-
if (op) {
|
|
8873
|
-
updateNode(id, {
|
|
8874
|
-
data: {
|
|
8875
|
-
...getNode(id)?.data,
|
|
8876
|
-
operation_name: op.name,
|
|
8877
|
-
operation_type: op.type,
|
|
8878
|
-
args: {
|
|
8879
|
-
state: { ...op?.adaptive_card?.defaultValue },
|
|
8880
|
-
context: getNode(id)?.data?.args?.context
|
|
8881
|
-
}
|
|
8882
|
-
}
|
|
8883
|
-
});
|
|
8884
|
-
}
|
|
8885
|
-
},
|
|
8886
|
-
children: [
|
|
8887
|
-
/* @__PURE__ */ jsx(SelectTrigger, { children: /* @__PURE__ */ jsx(SelectValue, { placeholder: "Select Operation" }) }),
|
|
8888
|
-
/* @__PURE__ */ jsx(SelectContent, { children: value?.operations?.map((operation) => /* @__PURE__ */ jsx(
|
|
8889
|
-
SelectItem,
|
|
8890
|
-
{
|
|
8891
|
-
value: operation.name,
|
|
8892
|
-
children: operation.name
|
|
8893
|
-
},
|
|
8894
|
-
operation.name
|
|
8895
|
-
)) })
|
|
8896
|
-
]
|
|
8897
|
-
}
|
|
8898
|
-
) })
|
|
8899
|
-
] }),
|
|
8878
|
+
})() : "Store & Forward" }) }) : (
|
|
8879
|
+
// Operation is chosen in the Node Store (drag a specific
|
|
8880
|
+
// operation onto the canvas), so the card just shows which one
|
|
8881
|
+
// this node is pinned to — no in-card operation dropdown.
|
|
8882
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col p-4", children: [
|
|
8883
|
+
/* @__PURE__ */ jsx("div", { className: "text-xs font-medium text-muted-foreground", children: "Operation" }),
|
|
8884
|
+
/* @__PURE__ */ jsx("div", { className: "text-sm font-medium text-card-foreground mt-0.5 truncate", children: data?.operation_name || "Not configured" })
|
|
8885
|
+
] })
|
|
8886
|
+
),
|
|
8900
8887
|
/* @__PURE__ */ jsx(NodeCardDescription, { description: meta?.description ?? "" }),
|
|
8901
8888
|
/* @__PURE__ */ jsx(NodeCardFooter, { nodeId: id })
|
|
8902
8889
|
] }),
|
|
@@ -9423,6 +9410,15 @@ function FluidGridsProvider({
|
|
|
9423
9410
|
resetFluidGridsClient();
|
|
9424
9411
|
};
|
|
9425
9412
|
}, [workspaceClient]);
|
|
9413
|
+
useEffect(() => {
|
|
9414
|
+
setGlobalStoreClient(globalClient ?? null);
|
|
9415
|
+
if (globalClient) {
|
|
9416
|
+
void refetchStoreNodes();
|
|
9417
|
+
}
|
|
9418
|
+
return () => {
|
|
9419
|
+
resetGlobalStoreClient();
|
|
9420
|
+
};
|
|
9421
|
+
}, [globalClient]);
|
|
9426
9422
|
useEffect(() => {
|
|
9427
9423
|
setFluidGridsConfig({
|
|
9428
9424
|
apiGatewayUrl,
|
|
@@ -11444,6 +11440,7 @@ gql$1`
|
|
|
11444
11440
|
|
|
11445
11441
|
// src/builder/contants/symbols.ts
|
|
11446
11442
|
var NODE_TYPE_DRAG_DATA_FORMAT = "application/flow-builder.node-type";
|
|
11443
|
+
var NODE_OPERATION_DRAG_DATA_FORMAT = "application/flow-builder.node-operation";
|
|
11447
11444
|
function StoreNodeListItem({
|
|
11448
11445
|
name,
|
|
11449
11446
|
description,
|
|
@@ -11843,6 +11840,99 @@ var UninstallNodeDialog = ({
|
|
|
11843
11840
|
] })
|
|
11844
11841
|
] }) });
|
|
11845
11842
|
};
|
|
11843
|
+
function isTriggerOperation(op) {
|
|
11844
|
+
return op.role === "trigger" || !!op.delivery || op.type === "subscription";
|
|
11845
|
+
}
|
|
11846
|
+
function StoreNodeOperations({ nodeType }) {
|
|
11847
|
+
const [, bump] = useState(0);
|
|
11848
|
+
useEffect(() => onNodeTypesUpdate(() => bump((n) => n + 1)), []);
|
|
11849
|
+
const config2 = nodeType ? NODE_CONFIGS.find((c) => c.type === nodeType) : void 0;
|
|
11850
|
+
const operations = config2?.operations ?? [];
|
|
11851
|
+
const handleDragStart = useCallback(
|
|
11852
|
+
(e, opName) => {
|
|
11853
|
+
if (!nodeType) return;
|
|
11854
|
+
e.dataTransfer.setData(NODE_TYPE_DRAG_DATA_FORMAT, nodeType);
|
|
11855
|
+
if (opName)
|
|
11856
|
+
e.dataTransfer.setData(NODE_OPERATION_DRAG_DATA_FORMAT, opName);
|
|
11857
|
+
e.dataTransfer.effectAllowed = "move";
|
|
11858
|
+
},
|
|
11859
|
+
[nodeType]
|
|
11860
|
+
);
|
|
11861
|
+
if (!nodeType) return null;
|
|
11862
|
+
if (operations.length === 0) {
|
|
11863
|
+
return /* @__PURE__ */ jsx("div", { className: "px-3 pt-3 pb-1", children: /* @__PURE__ */ jsxs(
|
|
11864
|
+
"button",
|
|
11865
|
+
{
|
|
11866
|
+
draggable: true,
|
|
11867
|
+
onDragStart: (e) => handleDragStart(e),
|
|
11868
|
+
title: "Drag to add to canvas",
|
|
11869
|
+
className: "w-full flex items-center gap-2.5 px-2 py-2 rounded-md hover:bg-muted/60 transition-colors text-left group",
|
|
11870
|
+
style: { cursor: "grab" },
|
|
11871
|
+
children: [
|
|
11872
|
+
/* @__PURE__ */ jsx("div", { className: "size-7 shrink-0 rounded-md bg-muted flex items-center justify-center", children: /* @__PURE__ */ jsx(Icon, { icon: "mynaui:plus", className: "size-3.5 text-primary" }) }),
|
|
11873
|
+
/* @__PURE__ */ jsx("span", { className: "flex-1 text-sm font-medium text-foreground group-hover:text-primary transition-colors", children: "Add to canvas" }),
|
|
11874
|
+
/* @__PURE__ */ jsx(
|
|
11875
|
+
Icon,
|
|
11876
|
+
{
|
|
11877
|
+
icon: "mynaui:drag-dots-vertical",
|
|
11878
|
+
className: "size-4 shrink-0 text-foreground/40 group-hover:text-primary transition-colors"
|
|
11879
|
+
}
|
|
11880
|
+
)
|
|
11881
|
+
]
|
|
11882
|
+
}
|
|
11883
|
+
) });
|
|
11884
|
+
}
|
|
11885
|
+
return /* @__PURE__ */ jsxs("div", { className: "px-3 pt-3 pb-1", children: [
|
|
11886
|
+
/* @__PURE__ */ jsx("p", { className: "px-1 pb-2 text-xs font-medium text-muted-foreground", children: "Operations \u2014 drag one onto the canvas" }),
|
|
11887
|
+
/* @__PURE__ */ jsx("div", { className: "flex flex-col gap-0.5", children: operations.map((op) => {
|
|
11888
|
+
const isTrigger = isTriggerOperation(op);
|
|
11889
|
+
return /* @__PURE__ */ jsxs(
|
|
11890
|
+
"button",
|
|
11891
|
+
{
|
|
11892
|
+
draggable: true,
|
|
11893
|
+
onDragStart: (e) => handleDragStart(e, op.name),
|
|
11894
|
+
title: `${op.name} \u2014 drag to add to canvas`,
|
|
11895
|
+
className: "w-full flex items-center gap-2.5 px-2 py-2 rounded-md hover:bg-muted/60 transition-colors text-left group",
|
|
11896
|
+
style: { cursor: "grab" },
|
|
11897
|
+
children: [
|
|
11898
|
+
/* @__PURE__ */ jsx("div", { className: "size-7 shrink-0 rounded-md bg-muted flex items-center justify-center", children: /* @__PURE__ */ jsx(
|
|
11899
|
+
Icon,
|
|
11900
|
+
{
|
|
11901
|
+
icon: isTrigger ? "solar:play-bold" : "mynaui:bolt",
|
|
11902
|
+
className: "size-3.5 text-primary"
|
|
11903
|
+
}
|
|
11904
|
+
) }),
|
|
11905
|
+
/* @__PURE__ */ jsxs("div", { className: "flex-1 min-w-0", children: [
|
|
11906
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5", children: [
|
|
11907
|
+
/* @__PURE__ */ jsx("span", { className: "text-sm font-medium text-foreground group-hover:text-primary transition-colors truncate", children: op.name }),
|
|
11908
|
+
/* @__PURE__ */ jsx(
|
|
11909
|
+
"span",
|
|
11910
|
+
{
|
|
11911
|
+
className: "shrink-0 inline-flex items-center px-1.5 py-0.5 rounded text-[10px] font-semibold",
|
|
11912
|
+
style: {
|
|
11913
|
+
background: isTrigger ? "var(--color-status-info-bgSubtle)" : "var(--color-status-neutral-bgSubtle, var(--muted))",
|
|
11914
|
+
color: isTrigger ? "var(--color-status-info-text)" : "var(--muted-foreground)"
|
|
11915
|
+
},
|
|
11916
|
+
children: isTrigger ? "Trigger" : "Action"
|
|
11917
|
+
}
|
|
11918
|
+
)
|
|
11919
|
+
] }),
|
|
11920
|
+
op.description && /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground truncate mt-0.5 leading-snug", children: op.description })
|
|
11921
|
+
] }),
|
|
11922
|
+
/* @__PURE__ */ jsx(
|
|
11923
|
+
Icon,
|
|
11924
|
+
{
|
|
11925
|
+
icon: "mynaui:drag-dots-vertical",
|
|
11926
|
+
className: "size-4 shrink-0 text-foreground/40 group-hover:text-primary transition-colors"
|
|
11927
|
+
}
|
|
11928
|
+
)
|
|
11929
|
+
]
|
|
11930
|
+
},
|
|
11931
|
+
op.name
|
|
11932
|
+
);
|
|
11933
|
+
}) })
|
|
11934
|
+
] });
|
|
11935
|
+
}
|
|
11846
11936
|
function formatDownloads(count2) {
|
|
11847
11937
|
if (count2 >= 1e6) return `${(count2 / 1e6).toFixed(1)}M`;
|
|
11848
11938
|
if (count2 >= 1e3) return `${(count2 / 1e3).toFixed(1)}k`;
|
|
@@ -11868,6 +11958,8 @@ function StoreNodeDetail({ node, onBack }) {
|
|
|
11868
11958
|
const context = useContext(FluidGridsContext);
|
|
11869
11959
|
const workspaceId = context?.workspaceId ?? getFluidGridsConfig().workspaceId;
|
|
11870
11960
|
const isInstalled = installedAppIds.has(node.id);
|
|
11961
|
+
const manifestNodeType = node.manifest?.nodeType;
|
|
11962
|
+
const nodeType = manifestNodeType ?? (isInstalled ? `store/${node.slug}` : void 0);
|
|
11871
11963
|
const installation = installationsMap.get(node.id);
|
|
11872
11964
|
const installedVersion = installation?.installedVersion;
|
|
11873
11965
|
const installationId = installation?.installationId;
|
|
@@ -12084,6 +12176,7 @@ function StoreNodeDetail({ node, onBack }) {
|
|
|
12084
12176
|
] })
|
|
12085
12177
|
] }),
|
|
12086
12178
|
node.description && /* @__PURE__ */ jsx("p", { className: "text-sm text-foreground/80 leading-relaxed mb-4", children: node.description }),
|
|
12179
|
+
isInstalled && /* @__PURE__ */ jsx("div", { className: "mb-4 -mx-3 rounded-lg border border-border/50", children: /* @__PURE__ */ jsx(StoreNodeOperations, { nodeType }) }),
|
|
12087
12180
|
node.publisher && /* @__PURE__ */ jsxs("div", { className: "mb-4 p-2.5 rounded-lg bg-muted/50 flex items-center gap-2", children: [
|
|
12088
12181
|
/* @__PURE__ */ jsx("div", { className: "size-6 rounded bg-muted flex items-center justify-center shrink-0", children: /* @__PURE__ */ jsx("span", { className: "text-xs font-bold text-muted-foreground", children: node.publisher.name.charAt(0) }) }),
|
|
12089
12182
|
/* @__PURE__ */ jsx("span", { className: "text-xs text-foreground font-medium flex-1 min-w-0 truncate", children: node.publisher.name }),
|
|
@@ -19123,10 +19216,31 @@ var useAddNodeOnEdgeDropStore = create()(
|
|
|
19123
19216
|
}
|
|
19124
19217
|
})
|
|
19125
19218
|
);
|
|
19219
|
+
function buildOperationSeed(type, operationName, existingData) {
|
|
19220
|
+
const config2 = NODE_CONFIGS.find((c) => c.type === type);
|
|
19221
|
+
if (!config2) return null;
|
|
19222
|
+
const operations = config2.operations ?? [];
|
|
19223
|
+
const op = operations.find((o) => o.name === operationName);
|
|
19224
|
+
if (!op) return null;
|
|
19225
|
+
const manifest = config2.defaultData?.nodeData;
|
|
19226
|
+
const prevArgs = existingData.args ?? {};
|
|
19227
|
+
return {
|
|
19228
|
+
...existingData,
|
|
19229
|
+
operation_name: op.name,
|
|
19230
|
+
operation_type: op.type,
|
|
19231
|
+
args: {
|
|
19232
|
+
// Preserve default context/credentials; seed state from the op defaults.
|
|
19233
|
+
...prevArgs,
|
|
19234
|
+
state: { ...op.adaptive_card?.defaultValue ?? {} }
|
|
19235
|
+
},
|
|
19236
|
+
// Slim manifest: keep node-level metadata but only the pinned operation.
|
|
19237
|
+
nodeData: { ...manifest ?? {}, operations: [op] }
|
|
19238
|
+
};
|
|
19239
|
+
}
|
|
19126
19240
|
function useInsertNode() {
|
|
19127
19241
|
const { addNodes, screenToFlowPosition, getNodes, updateNode } = useReactFlow();
|
|
19128
19242
|
return useCallback(
|
|
19129
|
-
(type, pos) => {
|
|
19243
|
+
(type, pos, operationName) => {
|
|
19130
19244
|
const _pos = pos || screenToFlowPosition({
|
|
19131
19245
|
x: window.innerWidth / 2,
|
|
19132
19246
|
y: window.innerHeight / 2
|
|
@@ -19140,6 +19254,14 @@ function useInsertNode() {
|
|
|
19140
19254
|
position: _pos,
|
|
19141
19255
|
selected: true
|
|
19142
19256
|
});
|
|
19257
|
+
if (operationName) {
|
|
19258
|
+
const seeded = buildOperationSeed(
|
|
19259
|
+
type,
|
|
19260
|
+
operationName,
|
|
19261
|
+
newNode.data ?? {}
|
|
19262
|
+
);
|
|
19263
|
+
if (seeded) newNode.data = seeded;
|
|
19264
|
+
}
|
|
19143
19265
|
addNodes(newNode);
|
|
19144
19266
|
return newNode;
|
|
19145
19267
|
},
|
|
@@ -19245,12 +19367,14 @@ function useDragDropFlowBuilder() {
|
|
|
19245
19367
|
e.preventDefault();
|
|
19246
19368
|
const type = e.dataTransfer.getData(NODE_TYPE_DRAG_DATA_FORMAT);
|
|
19247
19369
|
if (typeof type === "undefined" || !type) return;
|
|
19370
|
+
const operationName = e.dataTransfer.getData(NODE_OPERATION_DRAG_DATA_FORMAT) || void 0;
|
|
19248
19371
|
insertNode(
|
|
19249
19372
|
type,
|
|
19250
19373
|
screenToFlowPosition({
|
|
19251
19374
|
x: e.clientX,
|
|
19252
19375
|
y: e.clientY
|
|
19253
|
-
})
|
|
19376
|
+
}),
|
|
19377
|
+
operationName
|
|
19254
19378
|
);
|
|
19255
19379
|
},
|
|
19256
19380
|
[insertNode, screenToFlowPosition]
|
|
@@ -19541,9 +19665,12 @@ function AddNodeFloatingMenu({
|
|
|
19541
19665
|
};
|
|
19542
19666
|
});
|
|
19543
19667
|
const fromHandleId = _incomingNodeMetadetails?.fromHandle?.id;
|
|
19668
|
+
const connectableNodes = AVAILABLE_NODES.filter(
|
|
19669
|
+
(node) => node.publishType !== "STORE"
|
|
19670
|
+
);
|
|
19544
19671
|
return {
|
|
19545
19672
|
availableNodes: mapNodesWithMetadata(
|
|
19546
|
-
fromHandleId === "source" || fromHandleId === "target" ?
|
|
19673
|
+
fromHandleId === "source" || fromHandleId === "target" ? connectableNodes.map((node) => node.type) : connectableNodes.filter(
|
|
19547
19674
|
(node) => node?.manifest?.kind?.includes(fromHandleId ?? "")
|
|
19548
19675
|
).map((node) => node.type)
|
|
19549
19676
|
),
|
|
@@ -22026,6 +22153,6 @@ function WorkflowBuilder() {
|
|
|
22026
22153
|
);
|
|
22027
22154
|
}
|
|
22028
22155
|
|
|
22029
|
-
export { Card2 as Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, ConfigSchemaForm, ConnectionFormDialog, ConnectionSelector, FluidGridsProvider, ProviderPicker, TemplateCard, WorkflowBuilder, getProviderForm, listCustomBlocks, registerCustomBlock, resolveUiSpec, stripSubmitActions, useConnection, useConnectionDialog, useConnections, useConnectionsByProvider, useCreateConnection, useFluidGridsContext, useImportWorkflowTemplate, useInitiateOAuth, useNodeExecution, useProviderByKey, useProviderCatalog, useProviders, useWorkflowTemplates };
|
|
22030
|
-
//# sourceMappingURL=chunk-
|
|
22031
|
-
//# sourceMappingURL=chunk-
|
|
22156
|
+
export { Card2 as Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, ConfigSchemaForm, ConnectionFormDialog, ConnectionSelector, FluidGridsProvider, ProviderPicker, TemplateCard, WorkflowBuilder, getProviderForm, listCustomBlocks, refetchStoreNodes, registerCustomBlock, resolveUiSpec, stripSubmitActions, useConnection, useConnectionDialog, useConnections, useConnectionsByProvider, useCreateConnection, useFluidGridsContext, useImportWorkflowTemplate, useInitiateOAuth, useNodeExecution, useProviderByKey, useProviderCatalog, useProviders, useWorkflowTemplates };
|
|
22157
|
+
//# sourceMappingURL=chunk-WPCOE4Z5.js.map
|
|
22158
|
+
//# sourceMappingURL=chunk-WPCOE4Z5.js.map
|