@burdenoff/microfe-bigconsole 2026.624.2 → 2026.625.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.
Files changed (71) hide show
  1. package/dist/bigconsole/BigConsoleRoutes.js +93 -93
  2. package/dist/bigconsole/assistant/assistantApi.js +215 -0
  3. package/dist/bigconsole/assistant/assistantApi.js.map +1 -0
  4. package/dist/bigconsole/assistant/createSandboxAssistantTransport.js +119 -0
  5. package/dist/bigconsole/assistant/createSandboxAssistantTransport.js.map +1 -0
  6. package/dist/bigconsole/assistant/index.js +2 -0
  7. package/dist/bigconsole/assistant/pageContext.js +51 -0
  8. package/dist/bigconsole/assistant/pageContext.js.map +1 -0
  9. package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js +48 -48
  10. package/dist/bigconsole/components/dashboard/DashboardToolbar.js +52 -52
  11. package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js.map +1 -1
  12. package/dist/bigconsole/components/dashboard/ExportDashboardDialog.js +33 -33
  13. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js +179 -179
  14. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js.map +1 -1
  15. package/dist/bigconsole/components/dashboard/WidgetPalette.js +38 -38
  16. package/dist/bigconsole/components/datasink/DataSinkTableViewer.js +32 -32
  17. package/dist/bigconsole/components/datasink/ExportDataSinkDialog.js +31 -31
  18. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js +98 -98
  19. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js.map +1 -1
  20. package/dist/bigconsole/components/parser/ExportParserDialog.js +31 -31
  21. package/dist/bigconsole/components/parser/ImportParserDialog.js +162 -162
  22. package/dist/bigconsole/components/parser/ImportParserDialog.js.map +1 -1
  23. package/dist/bigconsole/components/widgets/ActionConfigDialog.js +79 -79
  24. package/dist/bigconsole/components/widgets/ActionConfigDialog.js.map +1 -1
  25. package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js.map +1 -1
  26. package/dist/bigconsole/components/widgets/PropertiesPanel.js +307 -307
  27. package/dist/bigconsole/components/widgets/PropertiesPanel.js.map +1 -1
  28. package/dist/bigconsole/components/widgets/WidgetConfigDialog.js +222 -222
  29. package/dist/bigconsole/components/widgets/WidgetConfigDialog.js.map +1 -1
  30. package/dist/bigconsole/components/widgets/WidgetTypeSelector.js +23 -23
  31. package/dist/bigconsole/index.js +3 -0
  32. package/dist/bigconsole/pages/DashboardBuilderPage.js +74 -74
  33. package/dist/bigconsole/pages/DashboardBuilderPage.js.map +1 -1
  34. package/dist/bigconsole/pages/DashboardViewPage.js +168 -189
  35. package/dist/bigconsole/pages/DashboardViewPage.js.map +1 -1
  36. package/dist/bigconsole/pages/DashboardsPage.js +266 -310
  37. package/dist/bigconsole/pages/DashboardsPage.js.map +1 -1
  38. package/dist/bigconsole/pages/DataParsersPage.js +148 -194
  39. package/dist/bigconsole/pages/DataParsersPage.js.map +1 -1
  40. package/dist/bigconsole/pages/DataSinkBuilderPage.js +252 -246
  41. package/dist/bigconsole/pages/DataSinkBuilderPage.js.map +1 -1
  42. package/dist/bigconsole/pages/DataSinkViewPage.js +256 -231
  43. package/dist/bigconsole/pages/DataSinkViewPage.js.map +1 -1
  44. package/dist/bigconsole/pages/DataSinksPage.js +173 -219
  45. package/dist/bigconsole/pages/DataSinksPage.js.map +1 -1
  46. package/dist/bigconsole/pages/HomePage.js +125 -141
  47. package/dist/bigconsole/pages/HomePage.js.map +1 -1
  48. package/dist/bigconsole/pages/InsightsPage.js +159 -184
  49. package/dist/bigconsole/pages/InsightsPage.js.map +1 -1
  50. package/dist/bigconsole/pages/ParserBuilderPage.js +401 -393
  51. package/dist/bigconsole/pages/ParserBuilderPage.js.map +1 -1
  52. package/dist/bigconsole/pages/ParserViewPage.js +220 -201
  53. package/dist/bigconsole/pages/ParserViewPage.js.map +1 -1
  54. package/dist/bigconsole/pages/PipelineBuilderPage.js +212 -206
  55. package/dist/bigconsole/pages/PipelineBuilderPage.js.map +1 -1
  56. package/dist/bigconsole/pages/PipelineViewPage.js +204 -181
  57. package/dist/bigconsole/pages/PipelineViewPage.js.map +1 -1
  58. package/dist/bigconsole/pages/PipelinesPage.js +107 -150
  59. package/dist/bigconsole/pages/PipelinesPage.js.map +1 -1
  60. package/dist/bigconsole/pages/SettingsPage.js +184 -171
  61. package/dist/bigconsole/pages/SettingsPage.js.map +1 -1
  62. package/dist/bigconsole/pages/WidgetDemoPage.js +69 -81
  63. package/dist/bigconsole/pages/WidgetDemoPage.js.map +1 -1
  64. package/dist/bigconsole/pages/WorkflowViewPage.js +230 -216
  65. package/dist/bigconsole/pages/WorkflowViewPage.js.map +1 -1
  66. package/dist/bigconsole/pages/WorkflowsPage.js +106 -149
  67. package/dist/bigconsole/pages/WorkflowsPage.js.map +1 -1
  68. package/dist/generated/wspace-operations.js +87 -36
  69. package/dist/generated/wspace-operations.js.map +1 -1
  70. package/dist/index.js +3 -1
  71. package/package.json +6 -2
@@ -1,342 +1,367 @@
1
1
  import { useDataSinkStore as e } from "../store/dataSinkStore.js";
2
2
  import { useAppNavigate as t } from "../contexts/NavigationContext.js";
3
3
  import "../contexts/index.js";
4
- import n from "../hooks/useDataSinkOperations.js";
5
- import r from "../components/datasink/DataSinkStatusBadge.js";
6
- import { isNative as i, nativeConfirm as a, nativeImpact as ee, nativeNotify as o } from "../../utils/nativeBridge.js";
7
- import te from "../hooks/useDataSinkSubscription.js";
8
- import ne from "../components/datasink/DataSinkDataViewer.js";
9
- import re from "../components/datasink/DataSinkTableViewer.js";
10
- import ie from "../components/datasink/LinkedWorkflowsPanel.js";
11
- import ae from "../components/datasink/LinkedParsersPanel.js";
12
- import oe from "../components/datasink/WorkflowStatusPanel.js";
13
- import s from "../components/datasink/ExportDataSinkDialog.js";
14
- import { memo as c, useCallback as l, useEffect as se, useState as u } from "react";
15
- import { useParams as d } from "react-router-dom";
16
- import { AlertCircle as f, ArrowLeft as p, Code as ce, Database as m, Download as le, Edit as h, Eye as g, EyeOff as _, Grid3X3 as v, Loader2 as y, RefreshCw as b, Trash2 as x } from "lucide-react";
17
- import { Fragment as S, jsx as C, jsxs as w } from "react/jsx-runtime";
18
- import { Button as T, Card as E, CardContent as D, CardHeader as O, CardTitle as k } from "@burdenoff/fe-libs/ui";
19
- import { formatDistanceToNow as A } from "date-fns";
4
+ import ee from "../hooks/useDataSinkOperations.js";
5
+ import n from "../components/datasink/DataSinkStatusBadge.js";
6
+ import { isNative as r, nativeConfirm as i, nativeImpact as te, nativeNotify as a } from "../../utils/nativeBridge.js";
7
+ import ne from "../hooks/useDataSinkSubscription.js";
8
+ import re from "../components/datasink/DataSinkDataViewer.js";
9
+ import ie from "../components/datasink/DataSinkTableViewer.js";
10
+ import o from "../components/datasink/LinkedWorkflowsPanel.js";
11
+ import s from "../components/datasink/LinkedParsersPanel.js";
12
+ import c from "../components/datasink/WorkflowStatusPanel.js";
13
+ import l from "../components/datasink/ExportDataSinkDialog.js";
14
+ import { memo as u, useCallback as d, useEffect as ae, useState as f } from "react";
15
+ import { useParams as p } from "react-router-dom";
16
+ import { AlertCircle as oe, ArrowLeft as m, Code as se, Database as h, Download as g, Edit as _, Eye as v, EyeOff as y, Grid3X3 as b, Loader2 as x, RefreshCw as ce, Trash2 as le } from "lucide-react";
17
+ import { Button as S, Card as ue, CardContent as C, CardHeader as w, CardTitle as T, GlassCard as de, IllustratedEmptyState as fe, NextSteps as pe, PagePurpose as me } from "@burdenoff/fe-libs/ui";
18
+ import { Fragment as E, jsx as D, jsxs as O } from "react/jsx-runtime";
19
+ import { formatDistanceToNow as k } from "date-fns";
20
20
  //#region src/bigconsole/pages/DataSinkViewPage.tsx
21
- var j = c(function() {
22
- let { dataSinkId: c } = d(), j = t(), [M, N] = u(!1), [P, F] = u(!1), [I, L] = u(!1), [R, z] = u(!1), [B, V] = u(null), [H, U] = u(!1), [W, G] = u("table"), K = e((e) => c ? e.dataSinks.get(c) : void 0), { loading: ue, error: q, fetchDataSink: J, getDataSinkData: Y, refreshDataSink: X, deleteDataSink: Z } = n({ skipFetch: !0 });
23
- te({
24
- dataSinkId: c,
25
- enabled: !!c
26
- }), se(() => {
27
- c && J(c);
28
- }, [c, J]);
29
- let Q = l(() => {
30
- j("/datasinks");
31
- }, [j]), de = l(() => {
32
- j(`/datasinks/${c}/edit`);
33
- }, [j, c]), $ = l(async () => {
34
- if (c) {
35
- F(!0);
21
+ var A = u(function() {
22
+ let { dataSinkId: u } = p(), A = t(), [j, M] = f(!1), [N, P] = f(!1), [F, I] = f(!1), [L, R] = f(!1), [z, he] = f(null), [B, V] = f(!1), [H, U] = f("table"), W = e((e) => u ? e.dataSinks.get(u) : void 0), { loading: ge, error: G, fetchDataSink: K, getDataSinkData: q, refreshDataSink: J, deleteDataSink: Y } = ee({ skipFetch: !0 });
23
+ ne({
24
+ dataSinkId: u,
25
+ enabled: !!u
26
+ }), ae(() => {
27
+ u && K(u);
28
+ }, [u, K]);
29
+ let X = d(() => {
30
+ A("/datasinks");
31
+ }, [A]), _e = d(() => {
32
+ A(`/datasinks/${u}/edit`);
33
+ }, [A, u]), Z = d(async () => {
34
+ if (u) {
35
+ P(!0);
36
36
  try {
37
- await X({ id: c });
37
+ await J({ id: u });
38
38
  } catch {} finally {
39
- F(!1);
39
+ P(!1);
40
40
  }
41
41
  }
42
- }, [c, X]), fe = l(async () => {
43
- if (!c) return;
44
- let e = await a({
42
+ }, [u, J]), ve = d(async () => {
43
+ if (!u) return;
44
+ let e = await i({
45
45
  title: "Delete DataSink?",
46
46
  message: "Are you sure you want to delete this DataSink?",
47
47
  okButtonTitle: "Delete",
48
48
  cancelButtonTitle: "Cancel"
49
49
  });
50
50
  if (e === null ? window.confirm("Are you sure you want to delete this DataSink?") : e) {
51
- ee("medium"), L(!0);
51
+ te("medium"), I(!0);
52
52
  try {
53
- await Z(c), i() && o("success"), j("/datasinks");
53
+ await Y(u), r() && a("success"), A("/datasinks");
54
54
  } catch {
55
- i() && o("error");
55
+ r() && a("error");
56
56
  } finally {
57
- L(!1);
57
+ I(!1);
58
58
  }
59
59
  }
60
60
  }, [
61
- c,
62
- Z,
63
- j
64
- ]), pe = l(async () => {
65
- if (c) {
66
- if (M) {
67
- N(!1);
61
+ u,
62
+ Y,
63
+ A
64
+ ]), Q = d(async () => {
65
+ if (u) {
66
+ if (j) {
67
+ M(!1);
68
68
  return;
69
69
  }
70
- U(!0);
70
+ V(!0);
71
71
  try {
72
- let e = await Y({ id: c });
73
- e && V(e.raw || {}), N(!0);
72
+ let e = await q({ id: u });
73
+ e && he(e.raw || {}), M(!0);
74
74
  } catch {} finally {
75
- U(!1);
75
+ V(!1);
76
76
  }
77
77
  }
78
78
  }, [
79
- c,
80
- M,
81
- Y
82
- ]), me = l(() => {
83
- z(!0);
84
- }, []), he = l(() => {
85
- z(!1);
79
+ u,
80
+ j,
81
+ q
82
+ ]), $ = d(() => {
83
+ R(!0);
84
+ }, []), ye = d(() => {
85
+ R(!1);
86
86
  }, []);
87
- return ue && !K ? /* @__PURE__ */ C("div", {
87
+ return ge && !W ? /* @__PURE__ */ D("div", {
88
88
  className: "flex items-center justify-center min-h-[400px]",
89
- children: /* @__PURE__ */ C(y, { className: "w-8 h-8 text-text-secondary animate-spin" })
90
- }) : q ? /* @__PURE__ */ C("div", {
89
+ children: /* @__PURE__ */ D(x, { className: "w-8 h-8 text-text-secondary animate-spin" })
90
+ }) : G ? /* @__PURE__ */ D("div", {
91
91
  className: "flex items-center justify-center min-h-[400px] p-card-padding",
92
- children: /* @__PURE__ */ w("div", {
92
+ children: /* @__PURE__ */ O("div", {
93
93
  className: "text-center",
94
94
  children: [
95
- /* @__PURE__ */ C(f, { className: "w-12 h-12 text-state-error mx-auto mb-spacing-md" }),
96
- /* @__PURE__ */ C("p", {
95
+ /* @__PURE__ */ D(oe, { className: "w-12 h-12 text-state-error mx-auto mb-spacing-md" }),
96
+ /* @__PURE__ */ D("p", {
97
97
  className: "text-state-error text-body-sm font-medium mb-spacing-sm",
98
98
  children: "Failed to load DataSink"
99
99
  }),
100
- /* @__PURE__ */ C("p", {
100
+ /* @__PURE__ */ D("p", {
101
101
  className: "text-text-tertiary text-body-xs mb-spacing-lg",
102
- children: q.message
102
+ children: G.message
103
103
  }),
104
- /* @__PURE__ */ w(T, {
105
- onClick: Q,
104
+ /* @__PURE__ */ O(S, {
105
+ onClick: X,
106
106
  variant: "ghost",
107
107
  size: "sm",
108
- children: [/* @__PURE__ */ C(p, { className: "w-4 h-4 mr-2" }), "Go back"]
108
+ children: [/* @__PURE__ */ D(m, { className: "w-4 h-4 mr-2" }), "Go back"]
109
109
  })
110
110
  ]
111
111
  })
112
- }) : K ? /* @__PURE__ */ w("div", {
112
+ }) : W ? /* @__PURE__ */ O("div", {
113
113
  className: "p-card-padding space-y-spacing-lg",
114
114
  children: [
115
- /* @__PURE__ */ w("div", {
115
+ /* @__PURE__ */ O("div", {
116
116
  className: "flex flex-col sm:flex-row sm:items-start sm:justify-between gap-spacing-md",
117
- children: [/* @__PURE__ */ w("div", {
117
+ children: [/* @__PURE__ */ O("div", {
118
118
  className: "flex-1",
119
119
  children: [
120
- /* @__PURE__ */ w(T, {
121
- onClick: Q,
120
+ /* @__PURE__ */ O(S, {
121
+ onClick: X,
122
122
  variant: "ghost",
123
123
  size: "sm",
124
124
  className: "mb-spacing-md",
125
- children: [/* @__PURE__ */ C(p, { className: "w-4 h-4 mr-2" }), "Back to DataSinks"]
125
+ children: [/* @__PURE__ */ D(m, { className: "w-4 h-4 mr-2" }), "Back to DataSinks"]
126
126
  }),
127
- /* @__PURE__ */ w("div", {
127
+ /* @__PURE__ */ O("div", {
128
128
  className: "flex items-center gap-spacing-sm flex-wrap",
129
- children: [/* @__PURE__ */ C("h1", {
129
+ children: [/* @__PURE__ */ D("h1", {
130
130
  className: "text-heading-h1 font-bold text-text-primary",
131
- children: K.name || "Untitled"
132
- }), /* @__PURE__ */ C(r, { status: K.status })]
131
+ children: W.name || "Untitled"
132
+ }), /* @__PURE__ */ D(n, { status: W.status })]
133
133
  }),
134
- /* @__PURE__ */ C("p", {
134
+ /* @__PURE__ */ D("p", {
135
135
  className: "text-body-sm text-text-tertiary font-mono mt-spacing-xs",
136
- children: K.key
136
+ children: W.key
137
137
  }),
138
- K.description && /* @__PURE__ */ C("p", {
138
+ W.description && /* @__PURE__ */ D("p", {
139
139
  className: "text-body-sm text-text-secondary mt-spacing-sm",
140
- children: K.description
140
+ children: W.description
141
141
  })
142
142
  ]
143
- }), /* @__PURE__ */ w("div", {
143
+ }), /* @__PURE__ */ O("div", {
144
144
  className: "flex items-center gap-spacing-sm flex-wrap",
145
145
  children: [
146
- /* @__PURE__ */ w(T, {
147
- onClick: $,
148
- disabled: P,
146
+ /* @__PURE__ */ O(S, {
147
+ onClick: Z,
148
+ disabled: N,
149
149
  variant: "secondary",
150
150
  size: "default",
151
- children: [/* @__PURE__ */ C(b, { className: `w-4 h-4 mr-2 ${P ? "animate-spin" : ""}` }), P ? "Refreshing..." : "Refresh"]
151
+ children: [/* @__PURE__ */ D(ce, { className: `w-4 h-4 mr-2 ${N ? "animate-spin" : ""}` }), N ? "Refreshing..." : "Refresh"]
152
152
  }),
153
- /* @__PURE__ */ w(T, {
154
- onClick: me,
153
+ /* @__PURE__ */ O(S, {
154
+ onClick: $,
155
155
  variant: "secondary",
156
156
  size: "default",
157
- children: [/* @__PURE__ */ C(le, { className: "w-4 h-4 mr-2" }), "Export"]
157
+ children: [/* @__PURE__ */ D(g, { className: "w-4 h-4 mr-2" }), "Export"]
158
158
  }),
159
- /* @__PURE__ */ w(T, {
160
- onClick: de,
159
+ /* @__PURE__ */ O(S, {
160
+ onClick: _e,
161
161
  variant: "secondary",
162
162
  size: "default",
163
- children: [/* @__PURE__ */ C(h, { className: "w-4 h-4 mr-2" }), "Edit"]
163
+ children: [/* @__PURE__ */ D(_, { className: "w-4 h-4 mr-2" }), "Edit"]
164
164
  }),
165
- /* @__PURE__ */ w(T, {
166
- onClick: fe,
167
- disabled: I,
165
+ /* @__PURE__ */ O(S, {
166
+ onClick: ve,
167
+ disabled: F,
168
168
  variant: "destructive",
169
169
  size: "default",
170
- children: [/* @__PURE__ */ C(x, { className: "w-4 h-4 mr-2" }), I ? "Deleting..." : "Delete"]
170
+ children: [/* @__PURE__ */ D(le, { className: "w-4 h-4 mr-2" }), F ? "Deleting..." : "Delete"]
171
171
  })
172
172
  ]
173
173
  })]
174
174
  }),
175
- /* @__PURE__ */ w("div", {
175
+ /* @__PURE__ */ D(me, { children: "A data sink is a structured store that holds your processed data and serves it to dashboards. From here you can inspect its schema and stats, preview the cached rows, refresh it from its linked workflow, or export it." }),
176
+ /* @__PURE__ */ D(pe, {
177
+ storageKey: "bigconsole-datasink-view",
178
+ steps: [
179
+ {
180
+ id: "preview",
181
+ label: "Preview the data",
182
+ description: "Open the cached rows to confirm the sink holds what you expect.",
183
+ onClick: Q
184
+ },
185
+ {
186
+ id: "refresh",
187
+ label: "Refresh from source",
188
+ description: "Re-run the linked workflow to pull the latest data.",
189
+ onClick: Z
190
+ },
191
+ {
192
+ id: "build-dashboard",
193
+ label: "Visualize it on a dashboard",
194
+ description: "Add widgets that query this sink to see your data live.",
195
+ onClick: () => A("/dashboards")
196
+ },
197
+ {
198
+ id: "export",
199
+ label: "Export the data",
200
+ description: "Download the contents for use elsewhere.",
201
+ onClick: $
202
+ }
203
+ ]
204
+ }),
205
+ /* @__PURE__ */ O("div", {
176
206
  className: "grid gap-spacing-lg md:grid-cols-2",
177
207
  children: [
178
- /* @__PURE__ */ w(E, { children: [/* @__PURE__ */ C(O, { children: /* @__PURE__ */ C(k, { children: "Details" }) }), /* @__PURE__ */ C(D, { children: /* @__PURE__ */ w("dl", {
179
- className: "space-y-spacing-md text-body-sm",
180
- children: [
181
- /* @__PURE__ */ w("div", {
182
- className: "flex justify-between items-center",
183
- children: [/* @__PURE__ */ C("dt", {
184
- className: "text-text-secondary",
185
- children: "Status"
186
- }), /* @__PURE__ */ C("dd", { children: /* @__PURE__ */ C(r, { status: K.status }) })]
187
- }),
188
- /* @__PURE__ */ w("div", {
189
- className: "flex justify-between items-center",
190
- children: [/* @__PURE__ */ C("dt", {
191
- className: "text-text-secondary",
192
- children: "Cache TTL"
193
- }), /* @__PURE__ */ C("dd", {
194
- className: "text-text-primary font-medium",
195
- children: K.ttl ? `${K.ttl}s` : "None"
196
- })]
197
- }),
198
- /* @__PURE__ */ w("div", {
199
- className: "flex justify-between items-center",
200
- children: [/* @__PURE__ */ C("dt", {
201
- className: "text-text-secondary",
202
- children: "Refresh Type"
203
- }), /* @__PURE__ */ C("dd", {
204
- className: "text-text-primary font-medium capitalize",
205
- children: K.refresh?.type || "Manual"
206
- })]
207
- }),
208
- /* @__PURE__ */ w("div", {
209
- className: "flex justify-between items-center",
210
- children: [/* @__PURE__ */ C("dt", {
211
- className: "text-text-secondary",
212
- children: "Size"
213
- }), /* @__PURE__ */ C("dd", {
214
- className: "text-text-primary font-medium",
215
- children: K.sizeBytes ? `${(K.sizeBytes / 1024).toFixed(2)} KB` : "0 KB"
216
- })]
217
- }),
218
- /* @__PURE__ */ w("div", {
219
- className: "flex justify-between items-center",
220
- children: [/* @__PURE__ */ C("dt", {
221
- className: "text-text-secondary",
222
- children: "Version"
223
- }), /* @__PURE__ */ C("dd", {
224
- className: "text-text-primary font-medium",
225
- children: K.version || 1
226
- })]
227
- }),
228
- /* @__PURE__ */ w("div", {
229
- className: "flex justify-between items-center",
230
- children: [/* @__PURE__ */ C("dt", {
231
- className: "text-text-secondary",
232
- children: "Last Refreshed"
233
- }), /* @__PURE__ */ C("dd", {
234
- className: "text-text-primary font-medium",
235
- children: K.lastRefreshedAt ? A(new Date(K.lastRefreshedAt), { addSuffix: !0 }) : "Never"
236
- })]
237
- }),
238
- /* @__PURE__ */ w("div", {
239
- className: "flex justify-between items-center",
240
- children: [/* @__PURE__ */ C("dt", {
241
- className: "text-text-secondary",
242
- children: "Created"
243
- }), /* @__PURE__ */ C("dd", {
244
- className: "text-text-primary font-medium",
245
- children: A(new Date(K.createdAt), { addSuffix: !0 })
246
- })]
247
- })
248
- ]
249
- }) })] }),
250
- K.fluidGridsWorkflowId && /* @__PURE__ */ C(oe, {
251
- workflowId: K.fluidGridsWorkflowId,
252
- executionId: K.fluidGridsWorkflowExecutionId || void 0,
253
- lastRefreshedAt: K.lastRefreshedAt || void 0,
254
- setupState: K.setupState,
255
- status: K.status,
256
- onRerunWorkflow: $,
257
- disabled: P,
258
- isRerunning: P
208
+ /* @__PURE__ */ O(de, {
209
+ treatment: "glass",
210
+ glow: !0,
211
+ children: [/* @__PURE__ */ D(w, { children: /* @__PURE__ */ D(T, { children: "Details" }) }), /* @__PURE__ */ D(C, { children: /* @__PURE__ */ O("dl", {
212
+ className: "space-y-spacing-md text-body-sm",
213
+ children: [
214
+ /* @__PURE__ */ O("div", {
215
+ className: "flex justify-between items-center",
216
+ children: [/* @__PURE__ */ D("dt", {
217
+ className: "text-text-secondary",
218
+ children: "Status"
219
+ }), /* @__PURE__ */ D("dd", { children: /* @__PURE__ */ D(n, { status: W.status }) })]
220
+ }),
221
+ /* @__PURE__ */ O("div", {
222
+ className: "flex justify-between items-center",
223
+ children: [/* @__PURE__ */ D("dt", {
224
+ className: "text-text-secondary",
225
+ children: "Cache TTL"
226
+ }), /* @__PURE__ */ D("dd", {
227
+ className: "text-text-primary font-medium",
228
+ children: W.ttl ? `${W.ttl}s` : "None"
229
+ })]
230
+ }),
231
+ /* @__PURE__ */ O("div", {
232
+ className: "flex justify-between items-center",
233
+ children: [/* @__PURE__ */ D("dt", {
234
+ className: "text-text-secondary",
235
+ children: "Refresh Type"
236
+ }), /* @__PURE__ */ D("dd", {
237
+ className: "text-text-primary font-medium capitalize",
238
+ children: W.refresh?.type || "Manual"
239
+ })]
240
+ }),
241
+ /* @__PURE__ */ O("div", {
242
+ className: "flex justify-between items-center",
243
+ children: [/* @__PURE__ */ D("dt", {
244
+ className: "text-text-secondary",
245
+ children: "Size"
246
+ }), /* @__PURE__ */ D("dd", {
247
+ className: "text-text-primary font-medium",
248
+ children: W.sizeBytes ? `${(W.sizeBytes / 1024).toFixed(2)} KB` : "0 KB"
249
+ })]
250
+ }),
251
+ /* @__PURE__ */ O("div", {
252
+ className: "flex justify-between items-center",
253
+ children: [/* @__PURE__ */ D("dt", {
254
+ className: "text-text-secondary",
255
+ children: "Version"
256
+ }), /* @__PURE__ */ D("dd", {
257
+ className: "text-text-primary font-medium",
258
+ children: W.version || 1
259
+ })]
260
+ }),
261
+ /* @__PURE__ */ O("div", {
262
+ className: "flex justify-between items-center",
263
+ children: [/* @__PURE__ */ D("dt", {
264
+ className: "text-text-secondary",
265
+ children: "Last Refreshed"
266
+ }), /* @__PURE__ */ D("dd", {
267
+ className: "text-text-primary font-medium",
268
+ children: W.lastRefreshedAt ? k(new Date(W.lastRefreshedAt), { addSuffix: !0 }) : "Never"
269
+ })]
270
+ }),
271
+ /* @__PURE__ */ O("div", {
272
+ className: "flex justify-between items-center",
273
+ children: [/* @__PURE__ */ D("dt", {
274
+ className: "text-text-secondary",
275
+ children: "Created"
276
+ }), /* @__PURE__ */ D("dd", {
277
+ className: "text-text-primary font-medium",
278
+ children: k(new Date(W.createdAt), { addSuffix: !0 })
279
+ })]
280
+ })
281
+ ]
282
+ }) })]
283
+ }),
284
+ W.fluidGridsWorkflowId && /* @__PURE__ */ D(c, {
285
+ workflowId: W.fluidGridsWorkflowId,
286
+ executionId: W.fluidGridsWorkflowExecutionId || void 0,
287
+ lastRefreshedAt: W.lastRefreshedAt || void 0,
288
+ setupState: W.setupState,
289
+ status: W.status,
290
+ onRerunWorkflow: Z,
291
+ disabled: N,
292
+ isRerunning: N
259
293
  }),
260
- /* @__PURE__ */ C(ie, { workflowLinks: K.workflowLinks }),
261
- /* @__PURE__ */ C(ae, { dataSinkKey: K.key })
294
+ /* @__PURE__ */ D(o, { workflowLinks: W.workflowLinks }),
295
+ /* @__PURE__ */ D(s, { dataSinkKey: W.key })
262
296
  ]
263
297
  }),
264
- /* @__PURE__ */ w(E, { children: [
265
- /* @__PURE__ */ w(O, {
298
+ /* @__PURE__ */ O(ue, { children: [
299
+ /* @__PURE__ */ O(w, {
266
300
  className: "flex flex-row items-center justify-between space-y-0",
267
- children: [/* @__PURE__ */ w(k, {
301
+ children: [/* @__PURE__ */ O(T, {
268
302
  className: "flex items-center gap-spacing-sm",
269
- children: [/* @__PURE__ */ C(m, { className: "w-4 h-4 text-text-secondary" }), "Data Preview"]
270
- }), /* @__PURE__ */ w("div", {
303
+ children: [/* @__PURE__ */ D(h, { className: "w-4 h-4 text-text-secondary" }), "Data Preview"]
304
+ }), /* @__PURE__ */ O("div", {
271
305
  className: "flex items-center gap-2",
272
- children: [M && /* @__PURE__ */ w("div", {
306
+ children: [j && /* @__PURE__ */ O("div", {
273
307
  className: "flex items-center border border-border-default rounded-md overflow-hidden",
274
- children: [/* @__PURE__ */ C("button", {
308
+ children: [/* @__PURE__ */ D("button", {
275
309
  type: "button",
276
- onClick: () => G("table"),
277
- className: `p-1.5 ${W === "table" ? "bg-bg-sunken text-text-primary" : "text-text-secondary hover:text-text-primary"}`,
310
+ onClick: () => U("table"),
311
+ className: `p-1.5 ${H === "table" ? "bg-bg-sunken text-text-primary" : "text-text-secondary hover:text-text-primary"}`,
278
312
  title: "Table view",
279
- children: /* @__PURE__ */ C(v, { className: "w-4 h-4" })
280
- }), /* @__PURE__ */ C("button", {
313
+ children: /* @__PURE__ */ D(b, { className: "w-4 h-4" })
314
+ }), /* @__PURE__ */ D("button", {
281
315
  type: "button",
282
- onClick: () => G("json"),
283
- className: `p-1.5 ${W === "json" ? "bg-bg-sunken text-text-primary" : "text-text-secondary hover:text-text-primary"}`,
316
+ onClick: () => U("json"),
317
+ className: `p-1.5 ${H === "json" ? "bg-bg-sunken text-text-primary" : "text-text-secondary hover:text-text-primary"}`,
284
318
  title: "JSON view",
285
- children: /* @__PURE__ */ C(ce, { className: "w-4 h-4" })
319
+ children: /* @__PURE__ */ D(se, { className: "w-4 h-4" })
286
320
  })]
287
- }), /* @__PURE__ */ C(T, {
288
- onClick: pe,
289
- disabled: H,
290
- variant: M ? "secondary" : "default",
321
+ }), /* @__PURE__ */ D(S, {
322
+ onClick: Q,
323
+ disabled: B,
324
+ variant: j ? "secondary" : "default",
291
325
  size: "sm",
292
- children: H ? /* @__PURE__ */ w(S, { children: [/* @__PURE__ */ C(y, { className: "w-4 h-4 mr-2 animate-spin" }), "Loading..."] }) : M ? /* @__PURE__ */ w(S, { children: [/* @__PURE__ */ C(_, { className: "w-4 h-4 mr-2" }), "Hide Data"] }) : /* @__PURE__ */ w(S, { children: [/* @__PURE__ */ C(g, { className: "w-4 h-4 mr-2" }), "Show Data"] })
326
+ children: B ? /* @__PURE__ */ O(E, { children: [/* @__PURE__ */ D(x, { className: "w-4 h-4 mr-2 animate-spin" }), "Loading..."] }) : j ? /* @__PURE__ */ O(E, { children: [/* @__PURE__ */ D(y, { className: "w-4 h-4 mr-2" }), "Hide Data"] }) : /* @__PURE__ */ O(E, { children: [/* @__PURE__ */ D(v, { className: "w-4 h-4 mr-2" }), "Show Data"] })
293
327
  })]
294
328
  })]
295
329
  }),
296
- M && B && /* @__PURE__ */ C(D, { children: C(W === "table" ? re : ne, {
297
- data: B,
330
+ j && z && /* @__PURE__ */ D(C, { children: D(H === "table" ? ie : re, {
331
+ data: z,
298
332
  maxHeight: "400px"
299
333
  }) }),
300
- !M && /* @__PURE__ */ w(D, {
334
+ !j && /* @__PURE__ */ O(C, {
301
335
  className: "text-center p-spacing-xl",
302
- children: [/* @__PURE__ */ C(m, { className: "w-10 h-10 text-text-tertiary mx-auto mb-spacing-md" }), /* @__PURE__ */ C("p", {
336
+ children: [/* @__PURE__ */ D(h, { className: "w-10 h-10 text-text-tertiary mx-auto mb-spacing-md" }), /* @__PURE__ */ D("p", {
303
337
  className: "text-body-sm text-text-secondary",
304
338
  children: "Click \"Show Data\" to preview the cached data."
305
339
  })]
306
340
  })
307
341
  ] }),
308
- /* @__PURE__ */ C(s, {
309
- isOpen: R,
310
- dataSinkId: c || null,
311
- dataSinkName: K.name || K.key,
312
- onClose: he
342
+ /* @__PURE__ */ D(l, {
343
+ isOpen: L,
344
+ dataSinkId: u || null,
345
+ dataSinkName: W.name || W.key,
346
+ onClose: ye
313
347
  })
314
348
  ]
315
- }) : /* @__PURE__ */ C("div", {
349
+ }) : /* @__PURE__ */ D("div", {
316
350
  className: "flex items-center justify-center min-h-[400px] p-card-padding",
317
- children: /* @__PURE__ */ w("div", {
318
- className: "text-center",
319
- children: [
320
- /* @__PURE__ */ C(m, { className: "w-12 h-12 text-text-tertiary mx-auto mb-spacing-md" }),
321
- /* @__PURE__ */ C("p", {
322
- className: "text-text-primary text-heading-h3 font-medium mb-spacing-sm",
323
- children: "DataSink not found"
324
- }),
325
- /* @__PURE__ */ C("p", {
326
- className: "text-text-secondary text-body-sm mb-spacing-lg",
327
- children: "The DataSink you're looking for doesn't exist or has been deleted."
328
- }),
329
- /* @__PURE__ */ w(T, {
330
- onClick: Q,
331
- variant: "default",
332
- size: "default",
333
- children: [/* @__PURE__ */ C(p, { className: "w-4 h-4 mr-2" }), "Go back to DataSinks"]
334
- })
335
- ]
351
+ children: /* @__PURE__ */ D(fe, {
352
+ illustration: "empty-data",
353
+ title: "DataSink not found",
354
+ description: "The DataSink you're looking for doesn't exist or has been deleted.",
355
+ action: /* @__PURE__ */ O(S, {
356
+ onClick: X,
357
+ variant: "default",
358
+ size: "default",
359
+ children: [/* @__PURE__ */ D(m, { className: "w-4 h-4 mr-2" }), "Go back to DataSinks"]
360
+ })
336
361
  })
337
362
  });
338
363
  });
339
364
  //#endregion
340
- export { j as DataSinkViewPage, j as default };
365
+ export { A as DataSinkViewPage, A as default };
341
366
 
342
367
  //# sourceMappingURL=DataSinkViewPage.js.map