@burdenoff/fluidgrids-fe-sdk 2026.1114.5 → 2026.1114.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/{AiStudioPage-C2SBRqab.js → AiStudioPage-DLl4ld32.js} +2 -2
  2. package/dist/{ExecutionDetailPage-heD4wBjg.js → ExecutionDetailPage-DxeySgR3.js} +110 -13
  3. package/dist/{ExecutionsListPage-Ky3TAL9U.js → ExecutionsListPage-CMrOaFKQ.js} +2 -2
  4. package/dist/FileDownloadUrlDocument-CVOYKcL5.js +92 -0
  5. package/dist/NodeUsageStatusDocument-B-XguSjm.js +531 -0
  6. package/dist/{OpenTemplateAsCodeButton-pepQUqje.js → OpenTemplateAsCodeButton-Cjnagq9H.js} +2 -2
  7. package/dist/{PaidTemplateConfirm-BJCcJh5t.js → PaidTemplateConfirm-IWOHVR6s.js} +1 -1
  8. package/dist/{SettingsPage-BSucNHrq.js → SettingsPage-DwA2ZjyH.js} +4 -4
  9. package/dist/{TaskQueuesPage-WMJz9imi.js → TaskQueuesPage-BuWQwT5I.js} +2 -2
  10. package/dist/{TemplateCard-Cx_eZr9q.js → TemplateCard-9Beuqm5_.js} +19 -3
  11. package/dist/{TemplateConfigurationModal-D2i7ZXOM.js → TemplateConfigurationModal-B_ME8M-1.js} +1 -1
  12. package/dist/{TemplatePreview-DwdGa8bH.js → TemplatePreview-Bi6LSeH8.js} +5 -5
  13. package/dist/{TemplatesPage-DF5PK7CB.js → TemplatesPage-D9fOKAn4.js} +355 -13
  14. package/dist/{WorkflowBuilder-CjsO7i-D.js → WorkflowBuilder-Bzx-e5lX.js} +2 -2
  15. package/dist/{WorkflowBuilder-DkzzbrNn.js → WorkflowBuilder-CdcGE0Mf.js} +3 -3
  16. package/dist/{WorkflowsList-4VADoiz_.js → WorkflowsList-CBqxxI44.js} +3 -4
  17. package/dist/{api-DKfMt0IX.js → api-CEzqoN5H.js} +1 -1
  18. package/dist/{api-CEnNq15C.js → api-o5UUDbr8.js} +1 -1
  19. package/dist/executions.js +2 -2
  20. package/dist/{flow-builder-CIV6u8y-.js → flow-builder-CbF9P7cI.js} +9 -24
  21. package/dist/{index-BY0V255h.d.ts → index-D10JzNP1.d.ts} +4 -2
  22. package/dist/index.d.ts +1 -1
  23. package/dist/index.js +30 -27
  24. package/dist/{node-detail-view-DkajTGfb.js → node-detail-view-CP6sq02c.js} +7 -217
  25. package/dist/{node-editor-tab-body-ChLrBfKp.js → node-editor-tab-body-B6kxLf6Q.js} +1 -1
  26. package/dist/observability.d.ts +1 -1
  27. package/dist/{popover-CCJlf41J.js → popover-9gY3-2dY.js} +2 -2
  28. package/dist/{quick-config-panel-Bq_uF9XF.js → quick-config-panel-TGCW64qe.js} +2 -2
  29. package/dist/{schedule-panel-7TtPt1t_.js → schedule-panel-zrFYGtkx.js} +4 -4
  30. package/dist/settings.js +1 -1
  31. package/dist/{shared-C0LCTtyh.js → shared-mbyvDPde.js} +2 -24
  32. package/dist/{sidebar-node-editor-n-7ux5IN.js → sidebar-node-editor-BPg2NKzJ.js} +2 -2
  33. package/dist/{template-code-B3cMigJS.js → template-code-B7x-XMAm.js} +9 -2
  34. package/dist/templates.js +2 -2
  35. package/dist/typed-calls-BqokR321.js +26 -0
  36. package/dist/{WorkflowEditLeaseStatusDocument-Dp62med3.js → use-workflow-code-editor-CBOkjntt.js} +216 -90
  37. package/dist/{useAgentDefinitions-Daa3fGVg.js → useAgentDefinitions-9pmnEpb8.js} +1 -1
  38. package/dist/useConnections-CmnwGk09.js +439 -0
  39. package/dist/{useWorkflowCodeExport-lRmbjY49.js → useWorkflowCodeExport-ChAzmhi6.js} +78 -114
  40. package/dist/workflow-builder.js +2 -2
  41. package/dist/workflow-description-ReGwCZXS.js +123 -0
  42. package/dist/workflow-pages.d.ts +1 -1
  43. package/dist/workflow-pages.js +9 -9
  44. package/dist/{workflow-code-transfer-BsLPUrKP.js → workflow-transfer-CktP7o1c.js} +103 -1
  45. package/dist/workflows-list.js +1 -1
  46. package/package.json +1 -1
  47. package/dist/QuotaExhaustedDialog-YjKgRTmu.js +0 -55
  48. package/dist/useConnections-BlB0gbOB.js +0 -931
  49. package/dist/workflow-transfer-CQnQC-ke.js +0 -104
@@ -1,104 +0,0 @@
1
- "use client";
2
- // src/utils/workflow-transfer.ts
3
- function asRecord(value) {
4
- return typeof value === "object" && value !== null && !Array.isArray(value) ? value : null;
5
- }
6
- function collectWorkflowNodeReferences(definition) {
7
- const nodes = asRecord(asRecord(definition)?.data)?.nodes;
8
- if (!Array.isArray(nodes)) return [];
9
- const seen = /* @__PURE__ */ new Set();
10
- const references = [];
11
- for (const candidate of nodes) {
12
- const node = asRecord(candidate);
13
- const nodeData = asRecord(node?.data);
14
- const nodeId = typeof node?.id === "string" ? node.id : null;
15
- const nodeType = typeof nodeData?.nodeId === "string" ? nodeData.nodeId : node?.type;
16
- if (!nodeId || typeof nodeType !== "string") continue;
17
- const nodeVersion = typeof nodeData?.nodeVersion === "string" ? nodeData.nodeVersion : null;
18
- const key = `${nodeId}:${nodeType}:${nodeVersion ?? ""}`;
19
- if (seen.has(key)) continue;
20
- seen.add(key);
21
- references.push({
22
- nodeId,
23
- nodeType,
24
- nodeVersion
25
- });
26
- }
27
- return references;
28
- }
29
- function createWorkflowExportPayload(workflow) {
30
- const definitionJson = asRecord(workflow.definitionJson);
31
- if (!definitionJson) throw new Error("Workflow definition JSON must be an object");
32
- return {
33
- format: "fluidgrids.workflow",
34
- schemaVersion: 1,
35
- exportedAt: (/* @__PURE__ */ new Date()).toISOString(),
36
- workflowKey: workflow.workflowKey,
37
- version: workflow.version,
38
- name: workflow.name,
39
- description: workflow.description ?? null,
40
- definitionJson,
41
- context: asRecord(workflow.context),
42
- tags: workflow.tags,
43
- tagsV2: workflow.tagsV2,
44
- icon: workflow.icon ?? null,
45
- category: workflow.category ?? null,
46
- nodeReferences: collectWorkflowNodeReferences(definitionJson)
47
- };
48
- }
49
- /** Saves a blob through a temporary object URL and anchor click. */
50
- function downloadBlob(filename, blob) {
51
- const url = URL.createObjectURL(blob);
52
- const anchor = document.createElement("a");
53
- anchor.href = url;
54
- anchor.download = filename;
55
- anchor.click();
56
- URL.revokeObjectURL(url);
57
- }
58
- function downloadWorkflowExport(workflow) {
59
- const payload = createWorkflowExportPayload(workflow);
60
- const blob = new Blob([JSON.stringify(payload, null, 2)], { type: "application/json" });
61
- downloadBlob(`${workflow.workflowKey}-${workflow.version}.fluidgrids.json`, blob);
62
- }
63
- function isN8nNodeType(type) {
64
- return typeof type === "string" && (type.startsWith("n8n-nodes-") || type.startsWith("@n8n/"));
65
- }
66
- /**
67
- * Whether a JSON document is an n8n workflow export (as exported, or copied
68
- * from the n8n canvas): a `nodes` list of named n8n nodes and a
69
- * `connections` object. The service applies the same test (BOFF-9730).
70
- */
71
- function isN8nWorkflowJson(value) {
72
- const root = asRecord(value);
73
- if (!root || !Array.isArray(root.nodes) || root.nodes.length === 0) return false;
74
- if (root.connections !== void 0 && !asRecord(root.connections)) return false;
75
- const nodes = root.nodes.map(asRecord);
76
- return nodes.every((node) => node !== null && typeof node.name === "string" && typeof node.type === "string" && node.type.length > 0) && nodes.some((node) => isN8nNodeType(node?.type));
77
- }
78
- function parseWorkflowImport(raw) {
79
- const root = asRecord(JSON.parse(raw));
80
- if (!root) throw new Error("Import must contain a JSON object");
81
- if (isN8nWorkflowJson(root)) return {
82
- source: "n8n",
83
- definitionJson: root,
84
- name: typeof root.name === "string" && root.name.trim() ? root.name.trim() : "Imported n8n workflow",
85
- nodeReferences: []
86
- };
87
- const definitionJson = asRecord(root.definitionJson) ?? root;
88
- return {
89
- source: "fluidgrids",
90
- definitionJson,
91
- name: typeof root.name === "string" && root.name.trim() ? root.name : "Imported workflow",
92
- workflowKey: typeof root.workflowKey === "string" ? root.workflowKey : void 0,
93
- version: typeof root.version === "string" ? root.version : void 0,
94
- description: typeof root.description === "string" ? root.description : void 0,
95
- context: asRecord(root.context) ?? void 0,
96
- tags: Array.isArray(root.tags) && root.tags.every((tag) => typeof tag === "string") ? root.tags : void 0,
97
- tagsV2: root.tagsV2,
98
- icon: typeof root.icon === "string" ? root.icon : void 0,
99
- category: typeof root.category === "string" ? root.category : void 0,
100
- nodeReferences: Array.isArray(root.nodeReferences) ? root.nodeReferences : collectWorkflowNodeReferences(definitionJson)
101
- };
102
- }
103
-
104
- export { downloadWorkflowExport as n, parseWorkflowImport as r, downloadBlob as t };