@burdenoff/fluidgrids-fe-sdk 2026.1111.16 → 2026.1111.17
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/README.md +41 -0
- package/dist/AiStudioPage-kJHSsIcj.js +774 -0
- package/dist/ApprovalInboxPage-dbBDSJ-f.js +558 -0
- package/dist/DataSinkDashboardPage-1h2QsMzH.js +270 -0
- package/dist/DataTablesPage-BZy2z0LB.js +1690 -0
- package/dist/EntityTagPicker-BqRNsLCQ.js +135 -0
- package/dist/{ExecutionDetailPage-D-0_POAf.js → ExecutionDetailPage-BdcZmLT4.js} +799 -4420
- package/dist/ExecutionDetailPage-DvQ667OE.d.ts +10 -0
- package/dist/ExecutionsListPage-BCUJoAIE.js +2742 -0
- package/dist/{FailureTriagePanel-BHiduL7A.js → FailureTriagePanel-B9hDQymi.js} +4 -97
- package/dist/{FluidGridsProvider-DmvFADFa.js → FluidGridsProvider-dvZSNtSW.js} +10 -350
- package/dist/HistoryPage-BLoRpJ1R.d.ts +6 -0
- package/dist/{HistoryPage-BbUgxx1I.js → HistoryPage-U0tqupBN.js} +6 -4
- package/dist/HumanRequestCard-D-ooVPDn.js +439 -0
- package/dist/{InsightsPage-s6f5bU-8.js → InsightsPage-CALo16eB.js} +17 -328
- package/dist/ManagedAiPolicyAuthority-BxwJ3ptd.js +40 -0
- package/dist/{ManagedAiPolicyAuthority-CGux_DaV.d.ts → ManagedAiPolicyAuthority-DM3t3wNr.d.ts} +1 -5
- package/dist/ManagedAiPolicyAuthorityContext-CNkxIOZ1.js +10 -0
- package/dist/{MissingNodesInstallModal-B-9gHy2K.js → MissingNodesInstallModal-CMybsI8h.js} +3 -2
- package/dist/{NodesPage-ClvhUfbh.js → NodesPage-Bf5PhfBK.js} +7 -3
- package/dist/NodesPage-DEbnz9iU.d.ts +6 -0
- package/dist/{PublishCustomNodeAction-D2F7oN0S.js → PublishCustomNodeAction-5XXnSA3H.js} +3 -45
- package/dist/QuotaExhaustedDialog-7IFSaLyi.js +54 -0
- package/dist/RunnerStatusPill-Ctg4TJcP.js +187 -0
- package/dist/RunnersPage-CLCOCclc.js +467 -0
- package/dist/{ManagedAiPolicyAuthority-DsSaz-vg.js → SettingsPage-CgkRlCM5.js} +19 -50
- package/dist/SettingsPage-DMHQFj5-.d.ts +9 -0
- package/dist/TagFilterSelect-DCBOH6Ou.js +41 -0
- package/dist/TaskQueuesPage-9VgSnLdL.js +951 -0
- package/dist/TemplateCard-DsC0KNH1.js +1416 -0
- package/dist/{TemplateConfigurationModal-D_Mvgxqa.js → TemplateConfigurationModal-BhGWIzpm.js} +3 -2
- package/dist/{TemplateDetailPanel-DfFfUcOe.js → TemplateDetailPanel-D4cUVr-m.js} +3 -3
- package/dist/TemplatePreview-GthzCOSo.js +231 -0
- package/dist/TemplatesPage-BG3H-6v6.d.ts +10 -0
- package/dist/{TemplatesPage-Cku13bav.js → TemplatesPage-CsDNT54N.js} +11 -228
- package/dist/VariablesPage-67WR_lVE.js +949 -0
- package/dist/{VersionDiffDialog-Dq2xlPFI.js → VersionDiffDialog-DSN0mU0f.js} +2 -1
- package/dist/WorkflowBuilder-DEi_9YOb.js +555 -0
- package/dist/{WorkflowSearchRedirect-CaoOOpEl.js → WorkflowBuilder-iPqXgbYr.js} +19 -585
- package/dist/{WorkflowProposalCard-8Vr56kQa.js → WorkflowProposalCard-qrEeNyYG.js} +4 -405
- package/dist/WorkflowSearchRedirect-DwDNZ_q5.js +36 -0
- package/dist/{WorkflowShareDialog-6RRDe-_v.js → WorkflowShareDialog-B_gn968c.js} +6 -52
- package/dist/{WorkflowsList-B2j1Pehb.js → WorkflowsList-CA20dVIl.js} +11 -6
- package/dist/WorkflowsList-CcNDQge5.d.ts +6 -0
- package/dist/agent-form-Bfvm32j1.js +83 -0
- package/dist/{agentTools-DJ5o2ekg.js → agentTools-CkRJB7r5.js} +3 -2
- package/dist/{ai-usage-D5p7ZeRR.js → ai-usage-glCwHyQz.js} +1 -1
- package/dist/api-BrCHB5oA.js +224 -0
- package/dist/api-C8e0iV-Q.js +55 -0
- package/dist/button-DG7y_FVJ.js +48 -0
- package/dist/{canvasNoteTools-D3zUdEeg.js → canvasNoteTools-CQIc7Oxg.js} +2 -2
- package/dist/client-C9XSzSXr.js +1147 -0
- package/dist/{codec-client-DstqyzTN.js → codec-client-CJ95Rmqo.js} +1 -1
- package/dist/constants-B2lhWNoN.js +202 -0
- package/dist/constants-XdvUxeWK.d.ts +162 -0
- package/dist/dialog-Cjb4lB4D.js +105 -0
- package/dist/executions.d.ts +1 -1
- package/dist/executions.js +2 -1
- package/dist/feature-flags-DM5myWaD.js +296 -0
- package/dist/flags.d.ts +3 -0
- package/dist/flags.js +4 -0
- package/dist/{flow-builder-DEzT8TQu.js → flow-builder-y2Y1iG4Y.js} +70 -1731
- package/dist/{node-endpoint-configs-DHFGA5MQ.js → graphql-operation-types-kX-MMjgW.js} +1 -1194
- package/dist/{graphql-types-XcDLtFwU.js → graphql-types-CDKVWH2R.js} +2 -202
- package/dist/history.d.ts +1 -1
- package/dist/history.js +1 -1
- package/dist/index-72XFgvbn.d.ts +132 -0
- package/dist/index-BcdtKBM-.d.ts +56 -0
- package/dist/{index-B3BWqafN.d.ts → index-DjiFgEQl.d.ts} +5 -131
- package/dist/{index-DRf25-D3.d.ts → index-W2o__Nm6.d.ts} +32 -214
- package/dist/index.d.ts +13 -9
- package/dist/index.js +50 -5300
- package/dist/{node-detail-view-LNqeIqN-.js → node-detail-view-B91kXzIy.js} +11 -8
- package/dist/node-endpoint-configs-B5bjNMDW.js +37 -0
- package/dist/node-registry-refresh-Dy0uRg9f.js +84 -0
- package/dist/nodes.d.ts +1 -1
- package/dist/nodes.js +1 -1
- package/dist/observability.d.ts +1 -1
- package/dist/observability.js +2 -1
- package/dist/{quick-config-panel-D3ogsaFL.js → quick-config-panel-DggPl1vY.js} +2 -2
- package/dist/rolldown-runtime-hDbaFkMy.js +18 -0
- package/dist/run-display-BycKYSU0.js +46 -0
- package/dist/run-list-links-ByYC0OlV.js +98 -0
- package/dist/settings.d.ts +2 -1
- package/dist/settings.js +2 -1
- package/dist/shared-CMfn30xT.js +196 -0
- package/dist/templates.d.ts +1 -1
- package/dist/templates.js +2 -1
- package/dist/theme-provider-B3mIuz2d.js +11 -0
- package/dist/{useAgentDefinitions-NFtLytDR.js → useAgentDefinitions-Dpz0HDTq.js} +2 -1
- package/dist/useDurableParity-CzUQMFJ3.js +415 -0
- package/dist/useEntityTags-DhnsZcTl.js +236 -0
- package/dist/{useExecutions-DAzeWHS6.js → useExecutions-9aLuOt1c.js} +4 -3
- package/dist/{useObservability-COCZ0hUS.js → useObservability-CfEw3ZFD.js} +2 -2
- package/dist/{useRunHistory-CsYUbouO.js → useRunHistory-B1xJDwl1.js} +4 -3
- package/dist/{useWorkflows-w4Dx2fF2.js → useWorkflows-BlVVu8NM.js} +3 -2
- package/dist/utils-uaL5UVxb.js +65 -0
- package/dist/workflow-builder.d.ts +1 -1
- package/dist/workflow-builder.js +4 -2
- package/dist/workflow-host.d.ts +6 -0
- package/dist/workflow-host.js +9 -0
- package/dist/workflow-pages.d.ts +55 -0
- package/dist/workflow-pages.js +113 -0
- package/dist/workflows-list.d.ts +1 -1
- package/dist/workflows-list.js +1 -1
- package/package.json +13 -1
- package/dist/ExecutionDetailPage-MvsnOnE1.d.ts +0 -4
- package/dist/HistoryPage-BqUizaFv.d.ts +0 -3
- package/dist/NodesPage-C97-9K2Y.d.ts +0 -3
- package/dist/TemplatesPage-D0qnXzHh.d.ts +0 -4
- package/dist/WorkflowsList-0d5GSKdh.d.ts +0 -3
- package/dist/agent-form-BvMWhQ42.js +0 -496
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { x as getFluidGridsConfig } from "./client-C9XSzSXr.js";
|
|
3
|
+
import { d as useUntagEntity, s as useEntityTags, u as useTagEntity } from "./useEntityTags-DhnsZcTl.js";
|
|
4
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
import { TagBadge, TagsWidget } from "@burdenoff/fe-libs/tag";
|
|
7
|
+
|
|
8
|
+
// src/components/shared/EntityTagPicker.tsx
|
|
9
|
+
/**
|
|
10
|
+
* EntityTagPicker — universal tag strip for FluidGrids entities.
|
|
11
|
+
*
|
|
12
|
+
* Reuse-first: the shared `TagsWidget` from `@burdenoff/fe-libs/tag` supplies
|
|
13
|
+
* the search/create/vocabulary UX and the tags-svc graph sync; this wrapper
|
|
14
|
+
* only owns persistence, which goes through the FluidGrids tag API
|
|
15
|
+
* (`tagFluidgridsEntity` / `untagFluidgridsEntity` → wspace-tags-svc
|
|
16
|
+
* assignment rows). We never stand up a parallel tag store.
|
|
17
|
+
*
|
|
18
|
+
* Workflows are tagged by `workflowKey`, not the version row id — pass the key
|
|
19
|
+
* as `entityId` so every version of a workflow shares one tag set. Runs, data
|
|
20
|
+
* tables, triggers and schedules are tagged by their id.
|
|
21
|
+
*
|
|
22
|
+
* Draft mode: omit `entityId` (create forms). Nothing is fetched or persisted;
|
|
23
|
+
* selections are emitted through `onDraftChange` for the parent to flush with
|
|
24
|
+
* `useDraftEntityTags` once the entity exists.
|
|
25
|
+
*/
|
|
26
|
+
function toTagItem(assignment) {
|
|
27
|
+
return {
|
|
28
|
+
id: assignment.tagId,
|
|
29
|
+
key: assignment.tagInfo?.key ?? assignment.tagId,
|
|
30
|
+
label: assignment.tagInfo?.label ?? assignment.tagInfo?.key ?? "Tag",
|
|
31
|
+
color: assignment.tagInfo?.color ?? null
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
function EntityTagPicker({ entityType, entityId, onDraftChange, readOnly = false, onChange, className }) {
|
|
35
|
+
const draftMode = !entityId;
|
|
36
|
+
const { workspaceId } = getFluidGridsConfig();
|
|
37
|
+
const { tags: assignments, refetch } = useEntityTags(entityType, entityId);
|
|
38
|
+
const tagEntity = useTagEntity();
|
|
39
|
+
const untagEntity = useUntagEntity();
|
|
40
|
+
const [current, setCurrent] = useState([]);
|
|
41
|
+
const currentRef = useRef([]);
|
|
42
|
+
const assignmentKey = assignments.map((a) => a.tagId).join("|");
|
|
43
|
+
const syncedKey = useRef(null);
|
|
44
|
+
useEffect(() => {
|
|
45
|
+
if (draftMode || syncedKey.current === assignmentKey) return;
|
|
46
|
+
syncedKey.current = assignmentKey;
|
|
47
|
+
const synced = assignments.map(toTagItem);
|
|
48
|
+
currentRef.current = synced;
|
|
49
|
+
setCurrent(synced);
|
|
50
|
+
}, [
|
|
51
|
+
assignmentKey,
|
|
52
|
+
assignments,
|
|
53
|
+
draftMode
|
|
54
|
+
]);
|
|
55
|
+
const handleAdd = useCallback(async (tag) => {
|
|
56
|
+
if (currentRef.current.some((t) => t.id === tag.id)) return;
|
|
57
|
+
const next = [...currentRef.current, tag];
|
|
58
|
+
currentRef.current = next;
|
|
59
|
+
setCurrent(next);
|
|
60
|
+
if (draftMode) {
|
|
61
|
+
onDraftChange?.(next.map((t) => t.id));
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
try {
|
|
65
|
+
await tagEntity(entityType, entityId, tag.id);
|
|
66
|
+
await refetch();
|
|
67
|
+
onChange?.();
|
|
68
|
+
} catch {
|
|
69
|
+
const rolledBack = currentRef.current.filter((t) => t.id !== tag.id);
|
|
70
|
+
currentRef.current = rolledBack;
|
|
71
|
+
setCurrent(rolledBack);
|
|
72
|
+
}
|
|
73
|
+
}, [
|
|
74
|
+
draftMode,
|
|
75
|
+
entityId,
|
|
76
|
+
entityType,
|
|
77
|
+
onChange,
|
|
78
|
+
onDraftChange,
|
|
79
|
+
refetch,
|
|
80
|
+
tagEntity
|
|
81
|
+
]);
|
|
82
|
+
const handleRemove = useCallback(async (tagId) => {
|
|
83
|
+
const removed = currentRef.current.find((t) => t.id === tagId);
|
|
84
|
+
const next = currentRef.current.filter((t) => t.id !== tagId);
|
|
85
|
+
currentRef.current = next;
|
|
86
|
+
setCurrent(next);
|
|
87
|
+
if (draftMode) {
|
|
88
|
+
onDraftChange?.(next.map((t) => t.id));
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
try {
|
|
92
|
+
await untagEntity(entityType, entityId, tagId);
|
|
93
|
+
await refetch();
|
|
94
|
+
onChange?.();
|
|
95
|
+
} catch {
|
|
96
|
+
if (removed) {
|
|
97
|
+
const rolledBack = [...currentRef.current, removed];
|
|
98
|
+
currentRef.current = rolledBack;
|
|
99
|
+
setCurrent(rolledBack);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}, [
|
|
103
|
+
draftMode,
|
|
104
|
+
entityId,
|
|
105
|
+
entityType,
|
|
106
|
+
onChange,
|
|
107
|
+
onDraftChange,
|
|
108
|
+
refetch,
|
|
109
|
+
untagEntity
|
|
110
|
+
]);
|
|
111
|
+
if (readOnly) {
|
|
112
|
+
if (current.length === 0) return null;
|
|
113
|
+
return /* @__PURE__ */ jsx("div", {
|
|
114
|
+
className: `flex flex-wrap items-center gap-1 ${className ?? ""}`,
|
|
115
|
+
children: current.map((tag) => /* @__PURE__ */ jsx(TagBadge, {
|
|
116
|
+
id: tag.id,
|
|
117
|
+
label: tag.label,
|
|
118
|
+
color: tag.color ?? void 0,
|
|
119
|
+
size: "sm"
|
|
120
|
+
}, tag.id))
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
return /* @__PURE__ */ jsx(TagsWidget, {
|
|
124
|
+
entityType,
|
|
125
|
+
entityId: entityId ?? "",
|
|
126
|
+
workspaceId: workspaceId || void 0,
|
|
127
|
+
tags: current,
|
|
128
|
+
onAdd: handleAdd,
|
|
129
|
+
onRemove: handleRemove,
|
|
130
|
+
syncGraphNotifications: !draftMode,
|
|
131
|
+
className
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
export { EntityTagPicker as t };
|