@burdenoff/microfe-workflows 2026.922.8 → 2026.923.2

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.
@@ -4,113 +4,127 @@ import { WorkflowsRoutes as n } from "./WorkflowsRoutes.js";
4
4
  import { useEffect as r } from "react";
5
5
  import { ErrorBoundary as i } from "@burdenoff/fe-libs/shared/components";
6
6
  import { AuroraBackground as a, Button as o, IllustratedEmptyState as s } from "@burdenoff/fe-libs/ui";
7
- import { Boxes as c, FileCode2 as l, History as u, LayoutDashboard as d, Network as f, PlayCircle as p, RefreshCw as m, Settings as h, Variable as g, Workflow as _ } from "lucide-react";
8
- import { jsx as v, jsxs as y } from "react/jsx-runtime";
7
+ import { BarChart3 as c, Boxes as l, Database as u, FileCode2 as d, History as f, LayoutDashboard as p, Network as m, PlayCircle as h, RefreshCw as g, Settings as _, Variable as v, Workflow as y } from "lucide-react";
8
+ import { jsx as b, jsxs as x } from "react/jsx-runtime";
9
9
  //#region src/WorkflowsRoot.tsx
10
- function b(b) {
11
- let { basePath: x = "/", registerNavItems: S, registerFooterItems: C } = b, w = e();
10
+ function S(S) {
11
+ let { basePath: C = "/", registerNavItems: w, registerFooterItems: T } = S, E = e();
12
12
  return r(() => {
13
- if (!S) return;
13
+ if (!w) return;
14
14
  let e = (e, t) => `${e.endsWith("/") ? e.slice(0, -1) : e}/${t}`, t = [
15
15
  {
16
16
  id: "workflows-list",
17
- label: w("workflows.nav.myWorkflows", "My Workflows"),
18
- path: e(x, "list"),
19
- icon: /* @__PURE__ */ v(_, { size: 18 }),
17
+ label: E("workflows.nav.myWorkflows", "My Workflows"),
18
+ path: e(C, "list"),
19
+ icon: /* @__PURE__ */ b(y, { size: 18 }),
20
20
  order: 2
21
21
  },
22
22
  {
23
23
  id: "workflows-builder",
24
- label: w("workflows.nav.builder", "Builder"),
25
- path: e(x, "new"),
26
- icon: /* @__PURE__ */ v(c, { size: 18 }),
24
+ label: E("workflows.nav.builder", "Builder"),
25
+ path: e(C, "new"),
26
+ icon: /* @__PURE__ */ b(l, { size: 18 }),
27
27
  order: 3
28
28
  },
29
29
  {
30
30
  id: "workflows-runs",
31
- label: w("workflows.nav.runs", "Runs"),
32
- path: e(x, "runs"),
33
- icon: /* @__PURE__ */ v(p, { size: 18 }),
31
+ label: E("workflows.nav.runs", "Runs"),
32
+ path: e(C, "runs"),
33
+ icon: /* @__PURE__ */ b(h, { size: 18 }),
34
34
  order: 4
35
35
  },
36
36
  {
37
- id: "workflows-history",
38
- label: w("workflows.nav.history", "History"),
39
- path: e(x, "history"),
40
- icon: /* @__PURE__ */ v(u, { size: 18 }),
37
+ id: "workflows-insights",
38
+ label: E("workflows.nav.insights", "Insights"),
39
+ path: e(C, "insights"),
40
+ icon: /* @__PURE__ */ b(c, { size: 18 }),
41
41
  order: 5
42
42
  },
43
43
  {
44
- id: "workflows-templates",
45
- label: w("workflows.nav.templates", "Templates"),
46
- path: e(x, "templates"),
47
- icon: /* @__PURE__ */ v(d, { size: 18 }),
44
+ id: "workflows-data-sinks",
45
+ label: E("workflows.nav.dataSinks", "DataSinks"),
46
+ path: e(C, "data-sinks"),
47
+ icon: /* @__PURE__ */ b(u, { size: 18 }),
48
48
  order: 6
49
49
  },
50
50
  {
51
- id: "workflows-nodes",
52
- label: w("workflows.nav.nodes", "Nodes"),
53
- path: e(x, "nodes"),
54
- icon: /* @__PURE__ */ v(f, { size: 18 }),
51
+ id: "workflows-history",
52
+ label: E("workflows.nav.history", "History"),
53
+ path: e(C, "history"),
54
+ icon: /* @__PURE__ */ b(f, { size: 18 }),
55
55
  order: 7
56
56
  },
57
57
  {
58
- id: "workflows-variables",
59
- label: w("workflows.nav.variables", "Variables"),
60
- path: e(x, "variables"),
61
- icon: /* @__PURE__ */ v(g, { size: 18 }),
58
+ id: "workflows-templates",
59
+ label: E("workflows.nav.templates", "Templates"),
60
+ path: e(C, "templates"),
61
+ icon: /* @__PURE__ */ b(p, { size: 18 }),
62
62
  order: 8
63
63
  },
64
64
  {
65
- id: "workflows-settings",
66
- label: w("workflows.nav.settings", "Settings"),
67
- path: e(x, "settings"),
68
- icon: /* @__PURE__ */ v(h, { size: 18 }),
65
+ id: "workflows-nodes",
66
+ label: E("workflows.nav.nodes", "Nodes"),
67
+ path: e(C, "nodes"),
68
+ icon: /* @__PURE__ */ b(m, { size: 18 }),
69
69
  order: 9
70
+ },
71
+ {
72
+ id: "workflows-variables",
73
+ label: E("workflows.nav.variables", "Variables"),
74
+ path: e(C, "variables"),
75
+ icon: /* @__PURE__ */ b(v, { size: 18 }),
76
+ order: 10
77
+ },
78
+ {
79
+ id: "workflows-settings",
80
+ label: E("workflows.nav.settings", "Settings"),
81
+ path: e(C, "settings"),
82
+ icon: /* @__PURE__ */ b(_, { size: 18 }),
83
+ order: 11
70
84
  }
71
85
  ];
72
- return S([{
86
+ return w([{
73
87
  id: "workflows",
74
- label: w("workflows.nav.title", "Workflows"),
75
- path: x,
76
- icon: /* @__PURE__ */ v(l, { size: 20 }),
88
+ label: E("workflows.nav.title", "Workflows"),
89
+ path: C,
90
+ icon: /* @__PURE__ */ b(d, { size: 20 }),
77
91
  order: 200,
78
92
  group: "workflows",
79
93
  children: t
80
94
  }]);
81
95
  }, [
82
- S,
83
- x,
84
- w
96
+ w,
97
+ C,
98
+ E
85
99
  ]), r(() => {
86
- if (C) return C([{
100
+ if (T) return T([{
87
101
  id: "workflows-status",
88
- label: w("workflows.footer.status", "Workflows Ready"),
102
+ label: E("workflows.footer.status", "Workflows Ready"),
89
103
  type: "status",
90
104
  order: 10,
91
105
  section: "left"
92
106
  }]);
93
- }, [C, w]), /* @__PURE__ */ v(i, {
94
- fallback: /* @__PURE__ */ y("div", {
107
+ }, [T, E]), /* @__PURE__ */ b(i, {
108
+ fallback: /* @__PURE__ */ x("div", {
95
109
  className: "relative flex min-h-[60vh] w-full items-center justify-center overflow-hidden px-4 py-10",
96
- children: [/* @__PURE__ */ v(a, { intensity: "subtle" }), /* @__PURE__ */ v(s, {
110
+ children: [/* @__PURE__ */ b(a, { intensity: "subtle" }), /* @__PURE__ */ b(s, {
97
111
  illustration: "empty-generic",
98
- title: w("workflows.error.title", "Workflows hit a snag"),
99
- description: w("workflows.error.loadFailed", "Something went wrong loading this module. Please refresh the page."),
100
- action: /* @__PURE__ */ y(o, {
112
+ title: E("workflows.error.title", "Workflows hit a snag"),
113
+ description: E("workflows.error.loadFailed", "Something went wrong loading this module. Please refresh the page."),
114
+ action: /* @__PURE__ */ x(o, {
101
115
  onClick: () => window.location.reload(),
102
- children: [/* @__PURE__ */ v(m, {
116
+ children: [/* @__PURE__ */ b(g, {
103
117
  className: "size-4",
104
118
  "aria-hidden": "true"
105
- }), w("workflows.error.refresh", "Refresh page")]
119
+ }), E("workflows.error.refresh", "Refresh page")]
106
120
  })
107
121
  })]
108
122
  }),
109
- children: /* @__PURE__ */ v(t, {
110
- ...b,
111
- children: /* @__PURE__ */ v(n, {})
123
+ children: /* @__PURE__ */ b(t, {
124
+ ...S,
125
+ children: /* @__PURE__ */ b(n, {})
112
126
  })
113
127
  });
114
128
  }
115
129
  //#endregion
116
- export { b as WorkflowsRoot };
130
+ export { S as WorkflowsRoot };
@@ -3,36 +3,36 @@ import { WORKFLOW_PERMISSIONS as t } from "./constants/permissions.js";
3
3
  import { Suspense as n } from "react";
4
4
  import { AccessDenied as r, PermissionGate as i } from "@burdenoff/fe-libs/shared/components";
5
5
  import { GlassCard as a } from "@burdenoff/fe-libs/ui";
6
- import { ApprovalInboxPage as o, ExecutionDetailPage as s, ExecutionsListPage as c, HistoryPage as l, NodesPage as u, SettingsPage as d, TemplatePreview as f, TemplatesPage as p, VariablesPage as m, WorkflowBuilderPage as h, WorkflowSearchRedirect as g, WorkflowsList as _ } from "@burdenoff/fluidgrids-fe-sdk";
7
- import { jsx as v, jsxs as y } from "react/jsx-runtime";
8
- import { Navigate as b, Route as x, Routes as S, useParams as C } from "react-router";
6
+ import { ApprovalInboxPage as o, DataSinkDashboardPage as s, ErrorAnalyticsPage as c, ExecutionDetailPage as l, ExecutionsListPage as u, HistoryPage as d, InsightsPage as f, NodesPage as p, SettingsPage as m, TemplatePreview as h, TemplatesPage as g, VariablesPage as _, WorkflowBuilderPage as v, WorkflowSearchRedirect as y, WorkflowsList as b } from "@burdenoff/fluidgrids-fe-sdk";
7
+ import { jsx as x, jsxs as S } from "react/jsx-runtime";
8
+ import { Navigate as C, Route as w, Routes as T, useParams as E } from "react-router";
9
9
  //#region src/WorkflowsRoutes.tsx
10
- function w() {
10
+ function D() {
11
11
  let t = e();
12
- return /* @__PURE__ */ y("div", {
12
+ return /* @__PURE__ */ S("div", {
13
13
  className: "mx-auto flex w-full max-w-6xl flex-col gap-6 px-4 py-6 sm:px-6",
14
14
  role: "status",
15
15
  "aria-live": "polite",
16
16
  "aria-busy": "true",
17
17
  "aria-label": t("workflows.routes.loading.ariaLabel", "Loading workflow page"),
18
18
  children: [
19
- /* @__PURE__ */ y("div", {
19
+ /* @__PURE__ */ S("div", {
20
20
  className: "flex flex-col gap-3",
21
- children: [/* @__PURE__ */ v("div", { className: "h-7 w-48 rounded-md bg-muted/60 motion-safe:animate-vc-shimmer" }), /* @__PURE__ */ v("div", { className: "h-4 w-72 max-w-full rounded bg-muted/40 motion-safe:animate-vc-shimmer" })]
21
+ children: [/* @__PURE__ */ x("div", { className: "h-7 w-48 rounded-md bg-muted/60 motion-safe:animate-vc-shimmer" }), /* @__PURE__ */ x("div", { className: "h-4 w-72 max-w-full rounded bg-muted/40 motion-safe:animate-vc-shimmer" })]
22
22
  }),
23
- /* @__PURE__ */ v("div", {
23
+ /* @__PURE__ */ x("div", {
24
24
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
25
25
  children: [
26
26
  0,
27
27
  1,
28
28
  2
29
- ].map((e) => /* @__PURE__ */ y(a, {
29
+ ].map((e) => /* @__PURE__ */ S(a, {
30
30
  treatment: "metric",
31
31
  className: "flex flex-col gap-3 border-border-seam p-5",
32
- children: [/* @__PURE__ */ v("div", { className: "h-3 w-20 rounded bg-muted/50 motion-safe:animate-vc-shimmer" }), /* @__PURE__ */ v("div", { className: "h-8 w-24 rounded-md bg-muted/60 motion-safe:animate-vc-shimmer" })]
32
+ children: [/* @__PURE__ */ x("div", { className: "h-3 w-20 rounded bg-muted/50 motion-safe:animate-vc-shimmer" }), /* @__PURE__ */ x("div", { className: "h-8 w-24 rounded-md bg-muted/60 motion-safe:animate-vc-shimmer" })]
33
33
  }, e))
34
34
  }),
35
- /* @__PURE__ */ v(a, {
35
+ /* @__PURE__ */ x(a, {
36
36
  treatment: "glass",
37
37
  className: "flex flex-col gap-4 border-border-seam p-6",
38
38
  children: [
@@ -40,142 +40,162 @@ function w() {
40
40
  1,
41
41
  2,
42
42
  3
43
- ].map((e) => /* @__PURE__ */ y("div", {
43
+ ].map((e) => /* @__PURE__ */ S("div", {
44
44
  className: "flex items-center gap-4",
45
- children: [/* @__PURE__ */ v("div", { className: "h-10 w-10 shrink-0 rounded-full bg-muted/50 motion-safe:animate-vc-shimmer" }), /* @__PURE__ */ y("div", {
45
+ children: [/* @__PURE__ */ x("div", { className: "h-10 w-10 shrink-0 rounded-full bg-muted/50 motion-safe:animate-vc-shimmer" }), /* @__PURE__ */ S("div", {
46
46
  className: "flex flex-1 flex-col gap-2",
47
- children: [/* @__PURE__ */ v("div", { className: "h-4 w-1/3 rounded bg-muted/50 motion-safe:animate-vc-shimmer" }), /* @__PURE__ */ v("div", { className: "h-3 w-2/3 rounded bg-muted/30 motion-safe:animate-vc-shimmer" })]
47
+ children: [/* @__PURE__ */ x("div", { className: "h-4 w-1/3 rounded bg-muted/50 motion-safe:animate-vc-shimmer" }), /* @__PURE__ */ x("div", { className: "h-3 w-2/3 rounded bg-muted/30 motion-safe:animate-vc-shimmer" })]
48
48
  })]
49
49
  }, e))
50
50
  }),
51
- /* @__PURE__ */ v("p", {
51
+ /* @__PURE__ */ x("p", {
52
52
  className: "text-center text-sm text-text-secondary",
53
53
  children: t("workflows.routes.loading.message", "Loading workflow page...")
54
54
  })
55
55
  ]
56
56
  });
57
57
  }
58
- function T() {
59
- let { runId: e } = C();
60
- return /* @__PURE__ */ v(b, {
58
+ function O() {
59
+ let { runId: e } = E();
60
+ return /* @__PURE__ */ x(C, {
61
61
  to: `../runs/${e}`,
62
62
  replace: !0
63
63
  });
64
64
  }
65
- function E() {
66
- return /* @__PURE__ */ v(n, {
67
- fallback: /* @__PURE__ */ v(w, {}),
68
- children: /* @__PURE__ */ y(S, { children: [
69
- /* @__PURE__ */ v(x, {
65
+ function k() {
66
+ return /* @__PURE__ */ x(n, {
67
+ fallback: /* @__PURE__ */ x(D, {}),
68
+ children: /* @__PURE__ */ S(T, { children: [
69
+ /* @__PURE__ */ x(w, {
70
70
  index: !0,
71
- element: /* @__PURE__ */ v(b, {
71
+ element: /* @__PURE__ */ x(C, {
72
72
  to: "list",
73
73
  replace: !0
74
74
  })
75
75
  }),
76
- /* @__PURE__ */ v(x, {
76
+ /* @__PURE__ */ x(w, {
77
77
  path: "list",
78
- element: /* @__PURE__ */ v(_, {})
78
+ element: /* @__PURE__ */ x(b, {})
79
79
  }),
80
- /* @__PURE__ */ v(x, {
80
+ /* @__PURE__ */ x(w, {
81
81
  path: "new",
82
- element: /* @__PURE__ */ v(h, {})
82
+ element: /* @__PURE__ */ x(v, {})
83
83
  }),
84
- /* @__PURE__ */ v(x, {
84
+ /* @__PURE__ */ x(w, {
85
85
  path: "workflow/:id/:version",
86
- element: /* @__PURE__ */ v(h, {})
86
+ element: /* @__PURE__ */ x(v, {})
87
87
  }),
88
- /* @__PURE__ */ v(x, {
88
+ /* @__PURE__ */ x(w, {
89
89
  path: "builder",
90
- element: /* @__PURE__ */ v(b, {
90
+ element: /* @__PURE__ */ x(C, {
91
91
  to: "../new",
92
92
  replace: !0
93
93
  })
94
94
  }),
95
- /* @__PURE__ */ v(x, {
95
+ /* @__PURE__ */ x(w, {
96
96
  path: "builder/:id/:version",
97
- element: /* @__PURE__ */ v(h, {})
97
+ element: /* @__PURE__ */ x(v, {})
98
98
  }),
99
- /* @__PURE__ */ v(x, {
99
+ /* @__PURE__ */ x(w, {
100
100
  path: "resolve/:id",
101
- element: /* @__PURE__ */ v(g, {})
101
+ element: /* @__PURE__ */ x(y, {})
102
102
  }),
103
- /* @__PURE__ */ v(x, {
103
+ /* @__PURE__ */ x(w, {
104
104
  path: "runs",
105
- element: /* @__PURE__ */ v(c, {})
105
+ element: /* @__PURE__ */ x(u, {})
106
106
  }),
107
- /* @__PURE__ */ v(x, {
107
+ /* @__PURE__ */ x(w, {
108
108
  path: "runs/:runId",
109
- element: /* @__PURE__ */ v(s, {})
109
+ element: /* @__PURE__ */ x(l, {})
110
110
  }),
111
- /* @__PURE__ */ v(x, {
111
+ /* @__PURE__ */ x(w, {
112
+ path: "insights",
113
+ element: /* @__PURE__ */ x(f, {})
114
+ }),
115
+ /* @__PURE__ */ x(w, {
116
+ path: "insights/errors",
117
+ element: /* @__PURE__ */ x(c, {})
118
+ }),
119
+ /* @__PURE__ */ x(w, {
120
+ path: "data-sinks",
121
+ element: /* @__PURE__ */ x(s, {})
122
+ }),
123
+ /* @__PURE__ */ x(w, {
112
124
  path: "approvals",
113
- element: /* @__PURE__ */ v(i, {
125
+ element: /* @__PURE__ */ x(i, {
114
126
  permission: t.WORKFLOW_RUN_READ,
115
- fallback: /* @__PURE__ */ v(r, {}),
116
- children: /* @__PURE__ */ v(o, {})
127
+ fallback: /* @__PURE__ */ x(r, {}),
128
+ children: /* @__PURE__ */ x(o, {})
117
129
  })
118
130
  }),
119
- /* @__PURE__ */ v(x, {
131
+ /* @__PURE__ */ x(w, {
120
132
  path: "history",
121
- element: /* @__PURE__ */ v(l, {})
133
+ element: /* @__PURE__ */ x(d, {})
122
134
  }),
123
- /* @__PURE__ */ v(x, {
135
+ /* @__PURE__ */ x(w, {
124
136
  path: "templates",
125
- element: /* @__PURE__ */ v(p, {})
137
+ element: /* @__PURE__ */ x(g, {})
126
138
  }),
127
- /* @__PURE__ */ v(x, {
139
+ /* @__PURE__ */ x(w, {
128
140
  path: "templates/:productId/preview",
129
- element: /* @__PURE__ */ v(f, {})
141
+ element: /* @__PURE__ */ x(h, {})
130
142
  }),
131
- /* @__PURE__ */ v(x, {
143
+ /* @__PURE__ */ x(w, {
132
144
  path: "nodes",
133
- element: /* @__PURE__ */ v(u, {})
145
+ element: /* @__PURE__ */ x(p, {})
134
146
  }),
135
- /* @__PURE__ */ v(x, {
147
+ /* @__PURE__ */ x(w, {
136
148
  path: "settings",
137
- element: /* @__PURE__ */ v(i, {
149
+ element: /* @__PURE__ */ x(i, {
150
+ permission: t.SYSTEM_CONFIG_READ,
151
+ fallback: /* @__PURE__ */ x(r, {}),
152
+ children: /* @__PURE__ */ x(m, {})
153
+ })
154
+ }),
155
+ /* @__PURE__ */ x(w, {
156
+ path: "settings/:workflowKey",
157
+ element: /* @__PURE__ */ x(i, {
138
158
  permission: t.SYSTEM_CONFIG_READ,
139
- fallback: /* @__PURE__ */ v(r, {}),
140
- children: /* @__PURE__ */ v(d, {})
159
+ fallback: /* @__PURE__ */ x(r, {}),
160
+ children: /* @__PURE__ */ x(m, {})
141
161
  })
142
162
  }),
143
- /* @__PURE__ */ v(x, {
163
+ /* @__PURE__ */ x(w, {
144
164
  path: "variables",
145
- element: /* @__PURE__ */ v(i, {
165
+ element: /* @__PURE__ */ x(i, {
146
166
  permission: t.VARIABLE_READ,
147
- fallback: /* @__PURE__ */ v(r, {}),
148
- children: /* @__PURE__ */ v(m, {})
167
+ fallback: /* @__PURE__ */ x(r, {}),
168
+ children: /* @__PURE__ */ x(_, {})
149
169
  })
150
170
  }),
151
- /* @__PURE__ */ v(x, {
171
+ /* @__PURE__ */ x(w, {
152
172
  path: "executions",
153
- element: /* @__PURE__ */ v(b, {
173
+ element: /* @__PURE__ */ x(C, {
154
174
  to: "../runs",
155
175
  replace: !0
156
176
  })
157
177
  }),
158
- /* @__PURE__ */ v(x, {
178
+ /* @__PURE__ */ x(w, {
159
179
  path: "executions/:runId",
160
- element: /* @__PURE__ */ v(T, {})
180
+ element: /* @__PURE__ */ x(O, {})
161
181
  }),
162
- /* @__PURE__ */ v(x, {
182
+ /* @__PURE__ */ x(w, {
163
183
  path: "credentials",
164
- element: /* @__PURE__ */ v(b, {
184
+ element: /* @__PURE__ */ x(C, {
165
185
  to: "/integrations/connections",
166
186
  replace: !0
167
187
  })
168
188
  }),
169
- /* @__PURE__ */ v(x, {
189
+ /* @__PURE__ */ x(w, {
170
190
  path: "oauth/callback",
171
- element: /* @__PURE__ */ v(b, {
191
+ element: /* @__PURE__ */ x(C, {
172
192
  to: "/integrations/connections",
173
193
  replace: !0
174
194
  })
175
195
  }),
176
- /* @__PURE__ */ v(x, {
196
+ /* @__PURE__ */ x(w, {
177
197
  path: "*",
178
- element: /* @__PURE__ */ v(b, {
198
+ element: /* @__PURE__ */ x(C, {
179
199
  to: "list",
180
200
  replace: !0
181
201
  })
@@ -184,4 +204,4 @@ function E() {
184
204
  });
185
205
  }
186
206
  //#endregion
187
- export { E as WorkflowsRoutes };
207
+ export { k as WorkflowsRoutes };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/microfe-workflows",
3
- "version": "2026.922.8",
3
+ "version": "2026.923.2",
4
4
  "description": "Workflows microfrontend for Burdenoff products - thin shell over @burdenoff/fluidgrids-fe-sdk",
5
5
  "type": "module",
6
6
  "exports": {
@@ -35,7 +35,7 @@
35
35
  "react-router": "^8.3.0"
36
36
  },
37
37
  "devDependencies": {
38
- "@burdenoff/fluidgrids-fe-sdk": "2026.922.13",
38
+ "@burdenoff/fluidgrids-fe-sdk": "2026.923.1",
39
39
  "@eslint/js": "^9.39.2",
40
40
  "@types/react": "^19.0.2",
41
41
  "@types/react-dom": "^19.0.2",
@@ -55,7 +55,7 @@
55
55
  "vite-plugin-dts": "3.9.1"
56
56
  },
57
57
  "peerDependencies": {
58
- "@burdenoff/fluidgrids-fe-sdk": "2026.922.13",
58
+ "@burdenoff/fluidgrids-fe-sdk": "2026.923.1",
59
59
  "react": "^19.0.0",
60
60
  "react-dom": "^19.0.0"
61
61
  },