@burdenoff/microfe-bigconsole 2026.805.2 → 2026.805.3
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/bigconsole/components/builder/inspector/DataBindingSection.js +109 -113
- package/dist/bigconsole/components/builder/inspector/DataBindingSection.js.map +1 -1
- package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js +115 -113
- package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js.map +1 -1
- package/dist/bigconsole/components/dashboard/DashboardCanvas.js +71 -62
- package/dist/bigconsole/components/dashboard/DashboardCanvas.js.map +1 -1
- package/dist/bigconsole/components/dashboard/DashboardToolbar.js +90 -89
- package/dist/bigconsole/components/dashboard/DashboardToolbar.js.map +1 -1
- package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js +56 -54
- package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js.map +1 -1
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js +126 -125
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js.map +1 -1
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js +151 -150
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js.map +1 -1
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js +77 -76
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js.map +1 -1
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js +97 -96
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js.map +1 -1
- package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js +172 -191
- package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js.map +1 -1
- package/dist/bigconsole/components/dashboard/PublishToStoreDialog.js +75 -83
- package/dist/bigconsole/components/dashboard/PublishToStoreDialog.js.map +1 -1
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js +151 -154
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js.map +1 -1
- package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.js +181 -190
- package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.js.map +1 -1
- package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.js +1 -0
- package/dist/bigconsole/components/dashboard/WidgetPalette.js +110 -108
- package/dist/bigconsole/components/dashboard/WidgetPalette.js.map +1 -1
- package/dist/bigconsole/components/datasink/CacheTTLSelector.js +102 -103
- package/dist/bigconsole/components/datasink/CacheTTLSelector.js.map +1 -1
- package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js +36 -41
- package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js.map +1 -1
- package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js +38 -37
- package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js.map +1 -1
- package/dist/bigconsole/components/datasink/ImportDataGuideDialog.js +113 -117
- package/dist/bigconsole/components/datasink/ImportDataGuideDialog.js.map +1 -1
- package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js +182 -197
- package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js.map +1 -1
- package/dist/bigconsole/components/datasink/RefreshTypeSelector.js +166 -168
- package/dist/bigconsole/components/datasink/RefreshTypeSelector.js.map +1 -1
- package/dist/bigconsole/components/parser/DataSinkSelector.js +87 -86
- package/dist/bigconsole/components/parser/DataSinkSelector.js.map +1 -1
- package/dist/bigconsole/components/parser/ImportParserDialog.js +196 -211
- package/dist/bigconsole/components/parser/ImportParserDialog.js.map +1 -1
- package/dist/bigconsole/components/parser/ParserSelector.js +130 -128
- package/dist/bigconsole/components/parser/ParserSelector.js.map +1 -1
- package/dist/bigconsole/components/preview/AiPreviewMiniPanel.js +66 -63
- package/dist/bigconsole/components/preview/AiPreviewMiniPanel.js.map +1 -1
- package/dist/bigconsole/components/preview/AiPreviewPanel.js +95 -91
- package/dist/bigconsole/components/preview/AiPreviewPanel.js.map +1 -1
- package/dist/bigconsole/components/widgets/ActionConfigDialog.js +222 -215
- package/dist/bigconsole/components/widgets/ActionConfigDialog.js.map +1 -1
- package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js +149 -145
- package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js.map +1 -1
- package/dist/bigconsole/components/widgets/PropertiesPanel.js +504 -470
- package/dist/bigconsole/components/widgets/PropertiesPanel.js.map +1 -1
- package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js +44 -47
- package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js.map +1 -1
- package/dist/bigconsole/components/widgets/chart/ChartConfig.js +143 -142
- package/dist/bigconsole/components/widgets/chart/ChartConfig.js.map +1 -1
- package/dist/bigconsole/components/widgets/comments/WidgetComments.js +101 -88
- package/dist/bigconsole/components/widgets/comments/WidgetComments.js.map +1 -1
- package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js +135 -134
- package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js.map +1 -1
- package/dist/bigconsole/components/widgets/form/FormWidget.js +167 -159
- package/dist/bigconsole/components/widgets/form/FormWidget.js.map +1 -1
- package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js +69 -68
- package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js.map +1 -1
- package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.js +64 -72
- package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.js.map +1 -1
- package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js +60 -59
- package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js.map +1 -1
- package/dist/bigconsole/components/widgets/list/ListConfig.js +57 -56
- package/dist/bigconsole/components/widgets/list/ListConfig.js.map +1 -1
- package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js +70 -69
- package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js.map +1 -1
- package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js +35 -34
- package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js.map +1 -1
- package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js +20 -19
- package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js.map +1 -1
- package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js +178 -177
- package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js.map +1 -1
- package/dist/bigconsole/components/widgets/progress/ProgressConfig.js +76 -75
- package/dist/bigconsole/components/widgets/progress/ProgressConfig.js.map +1 -1
- package/dist/bigconsole/components/widgets/table/TableConfig.js +183 -168
- package/dist/bigconsole/components/widgets/table/TableConfig.js.map +1 -1
- package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js +187 -180
- package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js.map +1 -1
- package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js +40 -38
- package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js.map +1 -1
- package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js +150 -148
- package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js.map +1 -1
- package/dist/bigconsole/pages/DashboardBuilderPage.js +181 -176
- package/dist/bigconsole/pages/DashboardBuilderPage.js.map +1 -1
- package/dist/bigconsole/pages/DashboardViewPage.js +196 -192
- package/dist/bigconsole/pages/DashboardViewPage.js.map +1 -1
- package/dist/bigconsole/pages/DashboardsPage.js +223 -219
- package/dist/bigconsole/pages/DashboardsPage.js.map +1 -1
- package/dist/bigconsole/pages/DataParsersPage.js +167 -170
- package/dist/bigconsole/pages/DataParsersPage.js.map +1 -1
- package/dist/bigconsole/pages/DataSinkBuilderPage.js +204 -189
- package/dist/bigconsole/pages/DataSinkBuilderPage.js.map +1 -1
- package/dist/bigconsole/pages/DataSinkViewPage.js +175 -169
- package/dist/bigconsole/pages/DataSinkViewPage.js.map +1 -1
- package/dist/bigconsole/pages/DataSourcesPage.js +8 -7
- package/dist/bigconsole/pages/DataSourcesPage.js.map +1 -1
- package/dist/bigconsole/pages/InsightsPage.js +238 -208
- package/dist/bigconsole/pages/InsightsPage.js.map +1 -1
- package/dist/bigconsole/pages/ParserBuilderPage.js +464 -412
- package/dist/bigconsole/pages/ParserBuilderPage.js.map +1 -1
- package/dist/bigconsole/pages/ParserViewPage.js +92 -90
- package/dist/bigconsole/pages/ParserViewPage.js.map +1 -1
- package/dist/bigconsole/pages/PipelineBuilderPage.js +221 -194
- package/dist/bigconsole/pages/PipelineBuilderPage.js.map +1 -1
- package/dist/bigconsole/pages/PipelineViewPage.js +181 -184
- package/dist/bigconsole/pages/PipelineViewPage.js.map +1 -1
- package/dist/bigconsole/pages/PipelinesPage.js +128 -127
- package/dist/bigconsole/pages/PipelinesPage.js.map +1 -1
- package/dist/bigconsole/pages/SettingsPage.js +177 -172
- package/dist/bigconsole/pages/SettingsPage.js.map +1 -1
- package/dist/bigconsole/pages/WidgetDemoPage.js +121 -83
- package/dist/bigconsole/pages/WidgetDemoPage.js.map +1 -1
- package/dist/bigconsole/pages/WorkflowViewPage.js +199 -193
- package/dist/bigconsole/pages/WorkflowViewPage.js.map +1 -1
- package/dist/bigconsole/pages/WorkflowsPage.js +129 -128
- package/dist/bigconsole/pages/WorkflowsPage.js.map +1 -1
- package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js +111 -109
- package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js.map +1 -1
- package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js +127 -126
- package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js.map +1 -1
- package/dist/bigconsole/renderers/adapters/CustomRenderer.js +103 -103
- package/dist/bigconsole/renderers/adapters/CustomRenderer.js.map +1 -1
- package/package.json +2 -1
|
@@ -5,35 +5,36 @@ import { BIGCONSOLE_PERMISSIONS as n } from "../../constants/permissions.js";
|
|
|
5
5
|
import { isNative as ee, nativeCopyText as te, nativeToast as ne } from "../../utils/nativeBridge.js";
|
|
6
6
|
import r from "../components/datasink/CacheTTLSelector.js";
|
|
7
7
|
import re from "../components/datasink/RefreshTypeSelector.js";
|
|
8
|
-
import { memo as i, useCallback as a, useEffect as o, useMemo as
|
|
9
|
-
import { useParams as
|
|
10
|
-
import { AccessDenied as
|
|
11
|
-
import { usePermissions as
|
|
12
|
-
import { AlertCircle as
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
8
|
+
import { memo as i, useCallback as a, useEffect as o, useMemo as s, useState as c } from "react";
|
|
9
|
+
import { useParams as l } from "react-router";
|
|
10
|
+
import { AccessDenied as ie, PermissionButton as ae } from "@burdenoff/fe-libs/shared/components";
|
|
11
|
+
import { usePermissions as oe } from "@burdenoff/fe-libs/shared/providers/shell";
|
|
12
|
+
import { AlertCircle as u, ArrowLeft as se, Check as ce, Copy as le, Database as d, Eye as f, Loader2 as p, Save as ue, Settings as de } from "lucide-react";
|
|
13
|
+
import { useI18n as fe } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
14
|
+
import { Button as m, Card as h, CardContent as g, CardHeader as _, CardTitle as v, GlassCard as pe, IllustratedEmptyState as me, Input as y, Label as b, PagePurpose as he, Textarea as x } from "@burdenoff/fe-libs/ui";
|
|
15
|
+
import { Fragment as S, jsx as C, jsxs as w } from "react/jsx-runtime";
|
|
15
16
|
//#region src/bigconsole/pages/DataSinkBuilderPage.tsx
|
|
16
|
-
function
|
|
17
|
+
function ge(e) {
|
|
17
18
|
return e.toLowerCase().replace(/[^a-z0-9]+/g, "_").replace(/^_+|_+$/g, "").substring(0, 64);
|
|
18
19
|
}
|
|
19
|
-
function
|
|
20
|
-
let
|
|
21
|
-
if (e.name.trim() ? e.name.length < 2 ?
|
|
20
|
+
function _e(e, t) {
|
|
21
|
+
let n = {};
|
|
22
|
+
if (e.name.trim() ? e.name.length < 2 ? n.name = t("bigconsole.dataSinks.builder.validation.nameMinLength", "Name must be at least 2 characters") : e.name.length > 100 && (n.name = t("bigconsole.dataSinks.builder.validation.nameMaxLength", "Name must be less than 100 characters")) : n.name = t("bigconsole.dataSinks.builder.validation.nameRequired", "Name is required"), e.key.trim() ? /^[a-z0-9_]+$/.test(e.key) ? e.key.length > 64 && (n.key = t("bigconsole.dataSinks.builder.validation.keyMaxLength", "Key must be less than 64 characters")) : n.key = t("bigconsole.dataSinks.builder.validation.keyFormat", "Key can only contain lowercase letters, numbers, and underscores") : n.key = t("bigconsole.dataSinks.builder.validation.keyRequired", "Key is required"), e.data && e.data.trim()) try {
|
|
22
23
|
JSON.parse(e.data);
|
|
23
24
|
} catch {
|
|
24
|
-
|
|
25
|
+
n.data = t("bigconsole.dataSinks.builder.validation.invalidJson", "Invalid JSON format");
|
|
25
26
|
}
|
|
26
|
-
return
|
|
27
|
+
return n;
|
|
27
28
|
}
|
|
28
|
-
var
|
|
29
|
-
let { dataSinkId: i } =
|
|
29
|
+
var T = i(function() {
|
|
30
|
+
let { dataSinkId: i } = l(), T = e(), { t: E } = fe(), D = i !== "new" && !!i, { hasPermission: ve, isLoading: ye } = oe(), be = ve(n.DATASINK_READ), xe = D ? n.DATASINK_UPDATE : n.DATASINK_CREATE, [O, k] = c({
|
|
30
31
|
name: "",
|
|
31
32
|
key: "",
|
|
32
33
|
description: "",
|
|
33
34
|
ttl: 300,
|
|
34
35
|
refresh: { type: "manual" },
|
|
35
36
|
data: "{}"
|
|
36
|
-
}), [A, j] =
|
|
37
|
+
}), [A, j] = c({}), [M, N] = c(!1), [P, F] = c(!1), [I, L] = c(null), [Se, R] = c(!1), [z, B] = c(!1), [V, H] = c(null), [U, W] = c(null), { loading: Ce, error: G, dataSinks: we, fetchDataSink: K, createDataSink: q, updateDataSink: J, getDataSinkData: Y } = t({ skipFetch: !0 }), X = D ? we.find((e) => e.id === i) : null;
|
|
37
38
|
o(() => {
|
|
38
39
|
D && i && !X && K(i);
|
|
39
40
|
}, [
|
|
@@ -42,7 +43,7 @@ var E = i(function() {
|
|
|
42
43
|
X,
|
|
43
44
|
K
|
|
44
45
|
]);
|
|
45
|
-
let [Z,
|
|
46
|
+
let [Z, Te] = c(!1);
|
|
46
47
|
o(() => {
|
|
47
48
|
if (X && !Z) {
|
|
48
49
|
let e = "";
|
|
@@ -67,20 +68,20 @@ var E = i(function() {
|
|
|
67
68
|
} : void 0
|
|
68
69
|
} : { type: "manual" },
|
|
69
70
|
data: e
|
|
70
|
-
}), N(!0),
|
|
71
|
+
}), N(!0), Te(!0), j({});
|
|
71
72
|
}
|
|
72
73
|
}, [X, Z]);
|
|
73
|
-
let
|
|
74
|
+
let Ee = a((e) => {
|
|
74
75
|
let t = e.target.value;
|
|
75
76
|
k((e) => ({
|
|
76
77
|
...e,
|
|
77
78
|
name: t,
|
|
78
|
-
key: M ? e.key :
|
|
79
|
+
key: M ? e.key : ge(t)
|
|
79
80
|
})), j((e) => ({
|
|
80
81
|
...e,
|
|
81
82
|
name: void 0
|
|
82
83
|
}));
|
|
83
|
-
}, [M]),
|
|
84
|
+
}, [M]), De = a((e) => {
|
|
84
85
|
let t = e.target.value.toLowerCase().replace(/[^a-z0-9_]/g, "");
|
|
85
86
|
k((e) => ({
|
|
86
87
|
...e,
|
|
@@ -89,22 +90,22 @@ var E = i(function() {
|
|
|
89
90
|
...e,
|
|
90
91
|
key: void 0
|
|
91
92
|
}));
|
|
92
|
-
}, []),
|
|
93
|
+
}, []), Oe = a((e) => {
|
|
93
94
|
k((t) => ({
|
|
94
95
|
...t,
|
|
95
96
|
description: e.target.value
|
|
96
97
|
}));
|
|
97
|
-
}, []),
|
|
98
|
+
}, []), Q = a((e) => {
|
|
98
99
|
k((t) => ({
|
|
99
100
|
...t,
|
|
100
101
|
ttl: e || 0
|
|
101
102
|
}));
|
|
102
|
-
}, []),
|
|
103
|
+
}, []), ke = a((e) => {
|
|
103
104
|
k((t) => ({
|
|
104
105
|
...t,
|
|
105
106
|
refresh: e
|
|
106
107
|
}));
|
|
107
|
-
}, []),
|
|
108
|
+
}, []), Ae = a((e) => {
|
|
108
109
|
k((t) => ({
|
|
109
110
|
...t,
|
|
110
111
|
data: e.target.value
|
|
@@ -112,7 +113,7 @@ var E = i(function() {
|
|
|
112
113
|
...e,
|
|
113
114
|
data: void 0
|
|
114
115
|
}));
|
|
115
|
-
}, []),
|
|
116
|
+
}, []), je = a(() => {
|
|
116
117
|
try {
|
|
117
118
|
let e = JSON.parse(O.data);
|
|
118
119
|
k((t) => ({
|
|
@@ -125,21 +126,21 @@ var E = i(function() {
|
|
|
125
126
|
} catch {
|
|
126
127
|
j((e) => ({
|
|
127
128
|
...e,
|
|
128
|
-
data: "Invalid JSON format"
|
|
129
|
+
data: E("bigconsole.dataSinks.builder.validation.invalidJson", "Invalid JSON format")
|
|
129
130
|
}));
|
|
130
131
|
}
|
|
131
|
-
}, [O.data]),
|
|
132
|
-
O.key && (await te(O.key), R(!0), ee() && ne("Key copied"), setTimeout(() => R(!1), 2e3));
|
|
133
|
-
}, [O.key]), $ = a(() => {
|
|
134
|
-
|
|
135
|
-
}, [
|
|
132
|
+
}, [O.data, E]), Me = a(async () => {
|
|
133
|
+
O.key && (await te(O.key), R(!0), ee() && ne(E("bigconsole.dataSinks.builder.toolbar.keyCopied", "Key copied")), setTimeout(() => R(!1), 2e3));
|
|
134
|
+
}, [O.key, E]), $ = a(() => {
|
|
135
|
+
T("/datasinks");
|
|
136
|
+
}, [T]), Ne = a(async () => {
|
|
136
137
|
if (!(!D || !X)) {
|
|
137
138
|
B(!0), W(null);
|
|
138
139
|
try {
|
|
139
140
|
let e = await Y({ key: X.key });
|
|
140
141
|
e?.raw ? H(Array.isArray(e.raw) ? e.raw.slice(0, 20) : [e.raw]) : H([]);
|
|
141
142
|
} catch (e) {
|
|
142
|
-
W(e instanceof Error ? e.message : "Failed to load data");
|
|
143
|
+
W(e instanceof Error ? e.message : E("bigconsole.dataSinks.builder.errors.loadDataFailed", "Failed to load data"));
|
|
143
144
|
} finally {
|
|
144
145
|
B(!1);
|
|
145
146
|
}
|
|
@@ -147,10 +148,11 @@ var E = i(function() {
|
|
|
147
148
|
}, [
|
|
148
149
|
D,
|
|
149
150
|
X,
|
|
150
|
-
Y
|
|
151
|
-
|
|
151
|
+
Y,
|
|
152
|
+
E
|
|
153
|
+
]), Pe = a(async (e) => {
|
|
152
154
|
e.preventDefault(), L(null);
|
|
153
|
-
let t =
|
|
155
|
+
let t = _e(O, E);
|
|
154
156
|
if (Object.keys(t).length > 0) {
|
|
155
157
|
j(t);
|
|
156
158
|
return;
|
|
@@ -163,7 +165,7 @@ var E = i(function() {
|
|
|
163
165
|
} catch {
|
|
164
166
|
j((e) => ({
|
|
165
167
|
...e,
|
|
166
|
-
data: "Invalid JSON format"
|
|
168
|
+
data: E("bigconsole.dataSinks.builder.validation.invalidJson", "Invalid JSON format")
|
|
167
169
|
})), F(!1);
|
|
168
170
|
return;
|
|
169
171
|
}
|
|
@@ -179,7 +181,7 @@ var E = i(function() {
|
|
|
179
181
|
schedule: O.refresh.schedule
|
|
180
182
|
},
|
|
181
183
|
data: e
|
|
182
|
-
})) throw Error("Failed to update DataSink");
|
|
184
|
+
})) throw Error(E("bigconsole.dataSinks.builder.errors.updateFailed", "Failed to update DataSink"));
|
|
183
185
|
} else if (!await q({
|
|
184
186
|
key: O.key,
|
|
185
187
|
name: O.name,
|
|
@@ -190,10 +192,10 @@ var E = i(function() {
|
|
|
190
192
|
schedule: O.refresh.schedule
|
|
191
193
|
},
|
|
192
194
|
data: e
|
|
193
|
-
})) throw Error("Failed to create DataSink");
|
|
194
|
-
|
|
195
|
+
})) throw Error(E("bigconsole.dataSinks.builder.errors.createFailed", "Failed to create DataSink"));
|
|
196
|
+
T("/datasinks");
|
|
195
197
|
} catch (e) {
|
|
196
|
-
L(e instanceof Error ? e.message : "Failed to save DataSink");
|
|
198
|
+
L(e instanceof Error ? e.message : E("bigconsole.dataSinks.builder.errors.saveFailed", "Failed to save DataSink"));
|
|
197
199
|
} finally {
|
|
198
200
|
F(!1);
|
|
199
201
|
}
|
|
@@ -203,8 +205,9 @@ var E = i(function() {
|
|
|
203
205
|
X,
|
|
204
206
|
q,
|
|
205
207
|
J,
|
|
208
|
+
T,
|
|
206
209
|
E
|
|
207
|
-
]),
|
|
210
|
+
]), Fe = s(() => {
|
|
208
211
|
let e = O.name.trim().length >= 2, t = O.key.trim().length > 0, n = !0;
|
|
209
212
|
if (O.data && O.data.trim()) try {
|
|
210
213
|
JSON.parse(O.data);
|
|
@@ -217,165 +220,173 @@ var E = i(function() {
|
|
|
217
220
|
O.key,
|
|
218
221
|
O.data
|
|
219
222
|
]);
|
|
220
|
-
return
|
|
223
|
+
return Ce && D ? /* @__PURE__ */ C("div", {
|
|
221
224
|
className: "flex items-center justify-center min-h-[400px]",
|
|
222
|
-
children: /* @__PURE__ */
|
|
223
|
-
}) : G ? /* @__PURE__ */
|
|
225
|
+
children: /* @__PURE__ */ C(p, { className: "w-8 h-8 text-text-secondary animate-spin" })
|
|
226
|
+
}) : G ? /* @__PURE__ */ C("div", {
|
|
224
227
|
className: "flex items-center justify-center min-h-[400px] p-card-padding",
|
|
225
|
-
children: /* @__PURE__ */
|
|
228
|
+
children: /* @__PURE__ */ w("div", {
|
|
226
229
|
className: "text-center",
|
|
227
230
|
children: [
|
|
228
|
-
/* @__PURE__ */
|
|
229
|
-
/* @__PURE__ */
|
|
231
|
+
/* @__PURE__ */ C(u, { className: "w-12 h-12 text-status-error-text mx-auto mb-4" }),
|
|
232
|
+
/* @__PURE__ */ C("p", {
|
|
230
233
|
className: "text-status-error-text text-body-sm font-medium mb-2",
|
|
231
|
-
children: "Failed to load DataSink"
|
|
234
|
+
children: E("bigconsole.dataSinks.builder.errors.loadFailed", "Failed to load DataSink")
|
|
232
235
|
}),
|
|
233
|
-
/* @__PURE__ */
|
|
236
|
+
/* @__PURE__ */ C("p", {
|
|
234
237
|
className: "text-text-tertiary text-body-xs",
|
|
235
238
|
children: G.message
|
|
236
239
|
})
|
|
237
240
|
]
|
|
238
241
|
})
|
|
239
|
-
}) : D && !
|
|
240
|
-
title: "Access Denied",
|
|
241
|
-
description: "You don't have permission to view this data sink."
|
|
242
|
-
}) : /* @__PURE__ */
|
|
242
|
+
}) : D && !ye && !be ? /* @__PURE__ */ C(ie, {
|
|
243
|
+
title: E("bigconsole.dataSinks.builder.accessDenied.title", "Access Denied"),
|
|
244
|
+
description: E("bigconsole.dataSinks.builder.accessDenied.description", "You don't have permission to view this data sink.")
|
|
245
|
+
}) : /* @__PURE__ */ C("div", {
|
|
243
246
|
className: "min-h-screen bg-bg-canvas",
|
|
244
|
-
children: /* @__PURE__ */
|
|
247
|
+
children: /* @__PURE__ */ w("div", {
|
|
245
248
|
className: "max-w-3xl mx-auto p-card-padding",
|
|
246
249
|
children: [
|
|
247
|
-
/* @__PURE__ */
|
|
250
|
+
/* @__PURE__ */ w("div", {
|
|
248
251
|
className: "mb-6",
|
|
249
252
|
children: [
|
|
250
|
-
/* @__PURE__ */
|
|
253
|
+
/* @__PURE__ */ w(m, {
|
|
251
254
|
onClick: $,
|
|
252
255
|
variant: "ghost",
|
|
253
256
|
size: "sm",
|
|
254
257
|
className: "mb-4",
|
|
255
|
-
children: [/* @__PURE__ */
|
|
258
|
+
children: [/* @__PURE__ */ C(se, { className: "w-4 h-4 mr-2" }), E("bigconsole.dataSinks.builder.header.backToDataSinks", "Back to DataSinks")]
|
|
256
259
|
}),
|
|
257
|
-
/* @__PURE__ */
|
|
260
|
+
/* @__PURE__ */ C("h1", {
|
|
258
261
|
className: "text-heading-h1 font-bold text-text-primary",
|
|
259
|
-
children: D ? "Edit DataSink" : "Create DataSink"
|
|
262
|
+
children: D ? E("bigconsole.dataSinks.builder.header.editTitle", "Edit DataSink") : E("bigconsole.dataSinks.builder.header.createTitle", "Create DataSink")
|
|
260
263
|
}),
|
|
261
|
-
/* @__PURE__ */
|
|
264
|
+
/* @__PURE__ */ C("p", {
|
|
262
265
|
className: "text-body-sm text-text-secondary mt-1",
|
|
263
|
-
children: D ? "Update the DataSink configuration." : "Create a new DataSink to store and cache data. Use the unique key to connect workflows."
|
|
266
|
+
children: D ? E("bigconsole.dataSinks.builder.header.editSubtitle", "Update the DataSink configuration.") : E("bigconsole.dataSinks.builder.header.createSubtitle", "Create a new DataSink to store and cache data. Use the unique key to connect workflows.")
|
|
264
267
|
})
|
|
265
268
|
]
|
|
266
269
|
}),
|
|
267
|
-
I && /* @__PURE__ */
|
|
270
|
+
I && /* @__PURE__ */ w("div", {
|
|
268
271
|
className: "mb-6 p-4 bg-status-error-bg/10 border border-status-error-border/30 rounded-lg flex items-start gap-3",
|
|
269
|
-
children: [/* @__PURE__ */
|
|
272
|
+
children: [/* @__PURE__ */ C(u, { className: "w-5 h-5 text-status-error-text flex-shrink-0 mt-0.5" }), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
270
273
|
className: "text-sm font-medium text-status-error-text",
|
|
271
|
-
children: "Failed to save DataSink"
|
|
272
|
-
}), /* @__PURE__ */
|
|
274
|
+
children: E("bigconsole.dataSinks.builder.errors.saveFailed", "Failed to save DataSink")
|
|
275
|
+
}), /* @__PURE__ */ C("p", {
|
|
273
276
|
className: "text-xs text-status-error-text/80 mt-1",
|
|
274
277
|
children: I
|
|
275
278
|
})] })]
|
|
276
279
|
}),
|
|
277
|
-
/* @__PURE__ */
|
|
280
|
+
/* @__PURE__ */ C(he, {
|
|
278
281
|
className: "mb-6",
|
|
279
|
-
children: "A data sink is the named, structured store your dashboards read from. Give it a unique key, configure how long data is cached and how it refreshes, then point a workflow at that key to push data in. Get the basics right here and everything downstream connects to it."
|
|
282
|
+
children: E("bigconsole.dataSinks.builder.header.purpose", "A data sink is the named, structured store your dashboards read from. Give it a unique key, configure how long data is cached and how it refreshes, then point a workflow at that key to push data in. Get the basics right here and everything downstream connects to it.")
|
|
280
283
|
}),
|
|
281
|
-
/* @__PURE__ */
|
|
282
|
-
onSubmit:
|
|
284
|
+
/* @__PURE__ */ w("form", {
|
|
285
|
+
onSubmit: Pe,
|
|
283
286
|
className: "space-y-6",
|
|
284
287
|
children: [
|
|
285
|
-
/* @__PURE__ */
|
|
288
|
+
/* @__PURE__ */ w(pe, {
|
|
286
289
|
treatment: "glass",
|
|
287
290
|
glow: !0,
|
|
288
|
-
children: [/* @__PURE__ */
|
|
291
|
+
children: [/* @__PURE__ */ C(_, {
|
|
289
292
|
className: "pb-4",
|
|
290
|
-
children: /* @__PURE__ */
|
|
293
|
+
children: /* @__PURE__ */ w("div", {
|
|
291
294
|
className: "flex items-center gap-3",
|
|
292
|
-
children: [/* @__PURE__ */
|
|
295
|
+
children: [/* @__PURE__ */ C("div", {
|
|
293
296
|
className: "w-8 h-8 rounded-full bg-action-primary-bg/10 flex items-center justify-center",
|
|
294
|
-
children: /* @__PURE__ */
|
|
295
|
-
}), /* @__PURE__ */
|
|
297
|
+
children: /* @__PURE__ */ C(d, { className: "w-4 h-4 text-action-primary-bg" })
|
|
298
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C(v, {
|
|
296
299
|
className: "text-base",
|
|
297
|
-
children: "Basic Information"
|
|
298
|
-
}), /* @__PURE__ */
|
|
300
|
+
children: E("bigconsole.dataSinks.builder.basicInfo.title", "Basic Information")
|
|
301
|
+
}), /* @__PURE__ */ C("p", {
|
|
299
302
|
className: "text-xs text-text-secondary mt-0.5",
|
|
300
|
-
children: "Essential details for your DataSink"
|
|
303
|
+
children: E("bigconsole.dataSinks.builder.basicInfo.subtitle", "Essential details for your DataSink")
|
|
301
304
|
})] })]
|
|
302
305
|
})
|
|
303
|
-
}), /* @__PURE__ */
|
|
306
|
+
}), /* @__PURE__ */ w(g, {
|
|
304
307
|
className: "space-y-5",
|
|
305
308
|
children: [
|
|
306
|
-
/* @__PURE__ */
|
|
309
|
+
/* @__PURE__ */ w("div", {
|
|
307
310
|
className: "space-y-2",
|
|
308
311
|
children: [
|
|
309
|
-
/* @__PURE__ */
|
|
312
|
+
/* @__PURE__ */ w(b, {
|
|
310
313
|
htmlFor: "name",
|
|
311
|
-
children: [
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
314
|
+
children: [
|
|
315
|
+
E("bigconsole.dataSinks.builder.basicInfo.nameLabel", "Name"),
|
|
316
|
+
" ",
|
|
317
|
+
/* @__PURE__ */ C("span", {
|
|
318
|
+
className: "text-status-error-text",
|
|
319
|
+
children: "*"
|
|
320
|
+
})
|
|
321
|
+
]
|
|
315
322
|
}),
|
|
316
|
-
/* @__PURE__ */
|
|
323
|
+
/* @__PURE__ */ C(y, {
|
|
317
324
|
id: "name",
|
|
318
325
|
type: "text",
|
|
319
326
|
value: O.name,
|
|
320
|
-
onChange:
|
|
321
|
-
placeholder: "e.g., Sales Metrics",
|
|
327
|
+
onChange: Ee,
|
|
328
|
+
placeholder: E("bigconsole.dataSinks.builder.basicInfo.namePlaceholder", "e.g., Sales Metrics"),
|
|
322
329
|
className: A.name ? "border-status-error-border" : ""
|
|
323
330
|
}),
|
|
324
|
-
A.name && /* @__PURE__ */
|
|
331
|
+
A.name && /* @__PURE__ */ C("p", {
|
|
325
332
|
className: "text-body-xs text-status-error-text",
|
|
326
333
|
children: A.name
|
|
327
334
|
})
|
|
328
335
|
]
|
|
329
336
|
}),
|
|
330
|
-
/* @__PURE__ */
|
|
337
|
+
/* @__PURE__ */ w("div", {
|
|
331
338
|
className: "space-y-2",
|
|
332
339
|
children: [
|
|
333
|
-
/* @__PURE__ */
|
|
340
|
+
/* @__PURE__ */ w(b, {
|
|
334
341
|
htmlFor: "key",
|
|
335
|
-
children: [
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
342
|
+
children: [
|
|
343
|
+
E("bigconsole.dataSinks.builder.basicInfo.keyLabel", "Unique Key"),
|
|
344
|
+
" ",
|
|
345
|
+
/* @__PURE__ */ C("span", {
|
|
346
|
+
className: "text-status-error-text",
|
|
347
|
+
children: "*"
|
|
348
|
+
})
|
|
349
|
+
]
|
|
339
350
|
}),
|
|
340
|
-
/* @__PURE__ */
|
|
351
|
+
/* @__PURE__ */ w("div", {
|
|
341
352
|
className: "flex gap-2",
|
|
342
|
-
children: [/* @__PURE__ */
|
|
353
|
+
children: [/* @__PURE__ */ C(y, {
|
|
343
354
|
id: "key",
|
|
344
355
|
type: "text",
|
|
345
356
|
value: O.key,
|
|
346
|
-
onChange:
|
|
347
|
-
placeholder: "sales_metrics",
|
|
357
|
+
onChange: De,
|
|
358
|
+
placeholder: E("bigconsole.dataSinks.builder.basicInfo.keyPlaceholder", "sales_metrics"),
|
|
348
359
|
disabled: D,
|
|
349
360
|
className: `font-mono flex-1 ${A.key ? "border-status-error-border" : ""}`
|
|
350
|
-
}), O.key && /* @__PURE__ */
|
|
361
|
+
}), O.key && /* @__PURE__ */ C(m, {
|
|
351
362
|
type: "button",
|
|
352
|
-
onClick:
|
|
363
|
+
onClick: Me,
|
|
353
364
|
variant: "outline",
|
|
354
365
|
size: "sm",
|
|
355
366
|
className: "px-3",
|
|
356
|
-
children:
|
|
367
|
+
children: Se ? /* @__PURE__ */ C(ce, { className: "w-4 h-4 text-status-success-text" }) : /* @__PURE__ */ C(le, { className: "w-4 h-4" })
|
|
357
368
|
})]
|
|
358
369
|
}),
|
|
359
|
-
A.key && /* @__PURE__ */
|
|
370
|
+
A.key && /* @__PURE__ */ C("p", {
|
|
360
371
|
className: "text-body-xs text-status-error-text",
|
|
361
372
|
children: A.key
|
|
362
373
|
}),
|
|
363
|
-
/* @__PURE__ */
|
|
374
|
+
/* @__PURE__ */ C("p", {
|
|
364
375
|
className: "text-body-xs text-text-tertiary",
|
|
365
|
-
children: D ? "Key cannot be changed. Use this key in your workflows to push data." : "Auto-generated from name. This key will be used by workflows to push data."
|
|
376
|
+
children: D ? E("bigconsole.dataSinks.builder.basicInfo.keyHelpEdit", "Key cannot be changed. Use this key in your workflows to push data.") : E("bigconsole.dataSinks.builder.basicInfo.keyHelpCreate", "Auto-generated from name. This key will be used by workflows to push data.")
|
|
366
377
|
})
|
|
367
378
|
]
|
|
368
379
|
}),
|
|
369
|
-
/* @__PURE__ */
|
|
380
|
+
/* @__PURE__ */ w("div", {
|
|
370
381
|
className: "space-y-2",
|
|
371
|
-
children: [/* @__PURE__ */
|
|
382
|
+
children: [/* @__PURE__ */ C(b, {
|
|
372
383
|
htmlFor: "description",
|
|
373
|
-
children: "Description"
|
|
374
|
-
}), /* @__PURE__ */
|
|
384
|
+
children: E("bigconsole.dataSinks.builder.basicInfo.descriptionLabel", "Description")
|
|
385
|
+
}), /* @__PURE__ */ C(x, {
|
|
375
386
|
id: "description",
|
|
376
387
|
value: O.description,
|
|
377
|
-
onChange:
|
|
378
|
-
placeholder: "Describe what data this sink stores...",
|
|
388
|
+
onChange: Oe,
|
|
389
|
+
placeholder: E("bigconsole.dataSinks.builder.basicInfo.descriptionPlaceholder", "Describe what data this sink stores..."),
|
|
379
390
|
rows: 2,
|
|
380
391
|
className: "resize-none"
|
|
381
392
|
})]
|
|
@@ -383,163 +394,167 @@ var E = i(function() {
|
|
|
383
394
|
]
|
|
384
395
|
})]
|
|
385
396
|
}),
|
|
386
|
-
/* @__PURE__ */
|
|
397
|
+
/* @__PURE__ */ w(h, { children: [/* @__PURE__ */ C(_, {
|
|
387
398
|
className: "pb-4",
|
|
388
|
-
children: /* @__PURE__ */
|
|
399
|
+
children: /* @__PURE__ */ w("div", {
|
|
389
400
|
className: "flex items-center gap-3",
|
|
390
|
-
children: [/* @__PURE__ */
|
|
401
|
+
children: [/* @__PURE__ */ C("div", {
|
|
391
402
|
className: "w-8 h-8 rounded-full bg-action-primary-bg/10 flex items-center justify-center",
|
|
392
|
-
children: /* @__PURE__ */
|
|
393
|
-
}), /* @__PURE__ */
|
|
403
|
+
children: /* @__PURE__ */ C(de, { className: "w-4 h-4 text-action-primary-bg" })
|
|
404
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C(v, {
|
|
394
405
|
className: "text-base",
|
|
395
|
-
children: "Configuration"
|
|
396
|
-
}), /* @__PURE__ */
|
|
406
|
+
children: E("bigconsole.dataSinks.builder.config.title", "Configuration")
|
|
407
|
+
}), /* @__PURE__ */ C("p", {
|
|
397
408
|
className: "text-xs text-text-secondary mt-0.5",
|
|
398
|
-
children: "Cache and refresh settings"
|
|
409
|
+
children: E("bigconsole.dataSinks.builder.config.subtitle", "Cache and refresh settings")
|
|
399
410
|
})] })]
|
|
400
411
|
})
|
|
401
|
-
}), /* @__PURE__ */
|
|
412
|
+
}), /* @__PURE__ */ w(g, {
|
|
402
413
|
className: "space-y-5",
|
|
403
|
-
children: [/* @__PURE__ */
|
|
414
|
+
children: [/* @__PURE__ */ w("div", {
|
|
404
415
|
className: "space-y-2",
|
|
405
416
|
children: [
|
|
406
|
-
/* @__PURE__ */
|
|
407
|
-
/* @__PURE__ */
|
|
417
|
+
/* @__PURE__ */ C(b, { children: E("bigconsole.dataSinks.builder.config.cacheDurationLabel", "Cache Duration") }),
|
|
418
|
+
/* @__PURE__ */ C(r, {
|
|
408
419
|
value: O.ttl,
|
|
409
|
-
onChange:
|
|
420
|
+
onChange: Q
|
|
410
421
|
}),
|
|
411
|
-
/* @__PURE__ */
|
|
422
|
+
/* @__PURE__ */ C("p", {
|
|
412
423
|
className: "text-body-xs text-text-tertiary",
|
|
413
|
-
children: "How long cached data remains valid before requiring refresh."
|
|
424
|
+
children: E("bigconsole.dataSinks.builder.config.cacheDurationHelp", "How long cached data remains valid before requiring refresh.")
|
|
414
425
|
})
|
|
415
426
|
]
|
|
416
|
-
}), /* @__PURE__ */
|
|
427
|
+
}), /* @__PURE__ */ C(re, {
|
|
417
428
|
value: O.refresh,
|
|
418
|
-
onChange:
|
|
429
|
+
onChange: ke
|
|
419
430
|
})]
|
|
420
431
|
})] }),
|
|
421
|
-
/* @__PURE__ */
|
|
432
|
+
/* @__PURE__ */ w(h, { children: [/* @__PURE__ */ C(_, {
|
|
422
433
|
className: "pb-4",
|
|
423
|
-
children: /* @__PURE__ */
|
|
434
|
+
children: /* @__PURE__ */ w("div", {
|
|
424
435
|
className: "flex items-center justify-between",
|
|
425
|
-
children: [/* @__PURE__ */
|
|
436
|
+
children: [/* @__PURE__ */ w("div", {
|
|
426
437
|
className: "flex items-center gap-3",
|
|
427
|
-
children: [/* @__PURE__ */
|
|
438
|
+
children: [/* @__PURE__ */ C("div", {
|
|
428
439
|
className: "w-8 h-8 rounded-full bg-action-primary-bg/10 flex items-center justify-center",
|
|
429
|
-
children: /* @__PURE__ */
|
|
430
|
-
}), /* @__PURE__ */
|
|
440
|
+
children: /* @__PURE__ */ C(d, { className: "w-4 h-4 text-action-primary-bg" })
|
|
441
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C(v, {
|
|
431
442
|
className: "text-base",
|
|
432
|
-
children: "Data Payload"
|
|
433
|
-
}), /* @__PURE__ */
|
|
443
|
+
children: E("bigconsole.dataSinks.builder.dataPayload.title", "Data Payload")
|
|
444
|
+
}), /* @__PURE__ */ C("p", {
|
|
434
445
|
className: "text-xs text-text-secondary mt-0.5",
|
|
435
|
-
children: D ? "Edit the JSON data stored in this DataSink" : "Optional initial data (JSON format)"
|
|
446
|
+
children: D ? E("bigconsole.dataSinks.builder.dataPayload.subtitleEdit", "Edit the JSON data stored in this DataSink") : E("bigconsole.dataSinks.builder.dataPayload.subtitleCreate", "Optional initial data (JSON format)")
|
|
436
447
|
})] })]
|
|
437
|
-
}), /* @__PURE__ */
|
|
448
|
+
}), /* @__PURE__ */ C(m, {
|
|
438
449
|
type: "button",
|
|
439
|
-
onClick:
|
|
450
|
+
onClick: je,
|
|
440
451
|
variant: "outline",
|
|
441
452
|
size: "sm",
|
|
442
|
-
children: "Format JSON"
|
|
453
|
+
children: E("bigconsole.dataSinks.builder.dataPayload.formatJson", "Format JSON")
|
|
443
454
|
})]
|
|
444
455
|
})
|
|
445
|
-
}), /* @__PURE__ */
|
|
456
|
+
}), /* @__PURE__ */ C(g, { children: /* @__PURE__ */ w("div", {
|
|
446
457
|
className: "space-y-2",
|
|
447
458
|
children: [
|
|
448
|
-
/* @__PURE__ */
|
|
459
|
+
/* @__PURE__ */ C(x, {
|
|
449
460
|
value: O.data,
|
|
450
|
-
onChange:
|
|
451
|
-
placeholder: "{\"key\": \"value\"}",
|
|
461
|
+
onChange: Ae,
|
|
462
|
+
placeholder: E("bigconsole.dataSinks.builder.dataPayload.dataPlaceholder", "{\"key\": \"value\"}"),
|
|
452
463
|
rows: 10,
|
|
453
464
|
className: `font-mono text-xs resize-y ${A.data ? "border-status-error-border" : ""}`
|
|
454
465
|
}),
|
|
455
|
-
A.data && /* @__PURE__ */
|
|
466
|
+
A.data && /* @__PURE__ */ C("p", {
|
|
456
467
|
className: "text-body-xs text-status-error-text",
|
|
457
468
|
children: A.data
|
|
458
469
|
}),
|
|
459
|
-
/* @__PURE__ */
|
|
470
|
+
/* @__PURE__ */ C("p", {
|
|
460
471
|
className: "text-body-xs text-text-tertiary",
|
|
461
|
-
children: "Enter valid JSON data. This data will be stored and can be accessed by widgets via parsers."
|
|
472
|
+
children: E("bigconsole.dataSinks.builder.dataPayload.help", "Enter valid JSON data. This data will be stored and can be accessed by widgets via parsers.")
|
|
462
473
|
})
|
|
463
474
|
]
|
|
464
475
|
}) })] }),
|
|
465
|
-
D && X && /* @__PURE__ */
|
|
476
|
+
D && X && /* @__PURE__ */ w(h, { children: [/* @__PURE__ */ C(_, {
|
|
466
477
|
className: "pb-4",
|
|
467
|
-
children: /* @__PURE__ */
|
|
478
|
+
children: /* @__PURE__ */ w("div", {
|
|
468
479
|
className: "flex items-center justify-between",
|
|
469
|
-
children: [/* @__PURE__ */
|
|
480
|
+
children: [/* @__PURE__ */ w("div", {
|
|
470
481
|
className: "flex items-center gap-3",
|
|
471
|
-
children: [/* @__PURE__ */
|
|
482
|
+
children: [/* @__PURE__ */ C("div", {
|
|
472
483
|
className: "w-8 h-8 rounded-full bg-action-primary-bg/10 flex items-center justify-center",
|
|
473
|
-
children: /* @__PURE__ */
|
|
474
|
-
}), /* @__PURE__ */
|
|
484
|
+
children: /* @__PURE__ */ C(f, { className: "w-4 h-4 text-action-primary-bg" })
|
|
485
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C(v, {
|
|
475
486
|
className: "text-base",
|
|
476
|
-
children: "Data Preview"
|
|
477
|
-
}), /* @__PURE__ */
|
|
487
|
+
children: E("bigconsole.dataSinks.builder.preview.title", "Data Preview")
|
|
488
|
+
}), /* @__PURE__ */ C("p", {
|
|
478
489
|
className: "text-xs text-text-secondary mt-0.5",
|
|
479
|
-
children: "Preview the first 20 records"
|
|
490
|
+
children: E("bigconsole.dataSinks.builder.preview.subtitle", "Preview the first 20 records")
|
|
480
491
|
})] })]
|
|
481
|
-
}), /* @__PURE__ */
|
|
492
|
+
}), /* @__PURE__ */ C(m, {
|
|
482
493
|
type: "button",
|
|
483
|
-
onClick:
|
|
494
|
+
onClick: Ne,
|
|
484
495
|
variant: "outline",
|
|
485
496
|
size: "sm",
|
|
486
497
|
disabled: z,
|
|
487
|
-
children: z ? /* @__PURE__ */
|
|
498
|
+
children: z ? /* @__PURE__ */ w(S, { children: [/* @__PURE__ */ C(p, { className: "w-4 h-4 mr-2 animate-spin" }), E("bigconsole.dataSinks.builder.preview.loading", "Loading...")] }) : /* @__PURE__ */ w(S, { children: [/* @__PURE__ */ C(f, { className: "w-4 h-4 mr-2" }), E("bigconsole.dataSinks.builder.preview.showData", "Show Data")] })
|
|
488
499
|
})]
|
|
489
500
|
})
|
|
490
|
-
}), (V || U) && /* @__PURE__ */
|
|
501
|
+
}), (V || U) && /* @__PURE__ */ C(g, { children: U ? /* @__PURE__ */ C("div", {
|
|
491
502
|
className: "p-4 bg-status-error-bg/10 border border-status-error-border/30 rounded-md",
|
|
492
|
-
children: /* @__PURE__ */
|
|
503
|
+
children: /* @__PURE__ */ C("p", {
|
|
493
504
|
className: "text-sm text-status-error-text",
|
|
494
505
|
children: U
|
|
495
506
|
})
|
|
496
|
-
}) : V && V.length > 0 ? /* @__PURE__ */
|
|
507
|
+
}) : V && V.length > 0 ? /* @__PURE__ */ C("pre", {
|
|
497
508
|
className: "p-4 bg-bg-sunken rounded-md overflow-auto max-h-[300px] text-xs font-mono",
|
|
498
509
|
children: JSON.stringify(V, null, 2)
|
|
499
|
-
}) : /* @__PURE__ */
|
|
510
|
+
}) : /* @__PURE__ */ C(me, {
|
|
500
511
|
illustration: "empty-generic",
|
|
501
|
-
title: "No data available yet",
|
|
502
|
-
description: "Connect a workflow to this sink's key to start pushing data."
|
|
512
|
+
title: E("bigconsole.dataSinks.builder.preview.emptyTitle", "No data available yet"),
|
|
513
|
+
description: E("bigconsole.dataSinks.builder.preview.emptyDescription", "Connect a workflow to this sink's key to start pushing data.")
|
|
503
514
|
}) })] }),
|
|
504
|
-
/* @__PURE__ */
|
|
515
|
+
/* @__PURE__ */ w("div", {
|
|
505
516
|
className: "flex items-center justify-end gap-4 pt-4",
|
|
506
|
-
children: [/* @__PURE__ */
|
|
517
|
+
children: [/* @__PURE__ */ C(m, {
|
|
507
518
|
type: "button",
|
|
508
519
|
onClick: $,
|
|
509
520
|
variant: "secondary",
|
|
510
|
-
children: "Cancel"
|
|
511
|
-
}), /* @__PURE__ */
|
|
512
|
-
permission:
|
|
521
|
+
children: E("bigconsole.dataSinks.builder.actions.cancel", "Cancel")
|
|
522
|
+
}), /* @__PURE__ */ C(ae, {
|
|
523
|
+
permission: xe,
|
|
513
524
|
deniedBehavior: "disable",
|
|
514
|
-
children: /* @__PURE__ */
|
|
525
|
+
children: /* @__PURE__ */ C(m, {
|
|
515
526
|
type: "submit",
|
|
516
|
-
disabled: !
|
|
527
|
+
disabled: !Fe || P,
|
|
517
528
|
variant: "default",
|
|
518
|
-
children: P ? /* @__PURE__ */
|
|
529
|
+
children: P ? /* @__PURE__ */ w(S, { children: [/* @__PURE__ */ C(p, { className: "w-4 h-4 mr-2 animate-spin" }), E("bigconsole.dataSinks.builder.actions.saving", "Saving...")] }) : /* @__PURE__ */ w(S, { children: [/* @__PURE__ */ C(ue, { className: "w-4 h-4 mr-2" }), D ? E("bigconsole.dataSinks.builder.actions.saveChanges", "Save Changes") : E("bigconsole.dataSinks.builder.actions.create", "Create DataSink")] })
|
|
519
530
|
})
|
|
520
531
|
})]
|
|
521
532
|
})
|
|
522
533
|
]
|
|
523
534
|
}),
|
|
524
|
-
!D && /* @__PURE__ */
|
|
535
|
+
!D && /* @__PURE__ */ w("div", {
|
|
525
536
|
className: "mt-6 p-4 bg-bg-sunken rounded-lg border border-border-default",
|
|
526
|
-
children: [/* @__PURE__ */
|
|
537
|
+
children: [/* @__PURE__ */ C("h3", {
|
|
527
538
|
className: "text-sm font-medium text-text-primary mb-2",
|
|
528
|
-
children: "What's Next?"
|
|
529
|
-
}), /* @__PURE__ */
|
|
539
|
+
children: E("bigconsole.dataSinks.builder.whatsNext.title", "What's Next?")
|
|
540
|
+
}), /* @__PURE__ */ w("ol", {
|
|
530
541
|
className: "list-decimal list-inside text-xs text-text-secondary space-y-1",
|
|
531
542
|
children: [
|
|
532
|
-
/* @__PURE__ */
|
|
533
|
-
/* @__PURE__ */
|
|
534
|
-
"Go to
|
|
535
|
-
|
|
536
|
-
"
|
|
543
|
+
/* @__PURE__ */ C("li", { children: E("bigconsole.dataSinks.builder.whatsNext.step1", "Create this DataSink to get your unique key") }),
|
|
544
|
+
/* @__PURE__ */ w("li", { children: [
|
|
545
|
+
E("bigconsole.dataSinks.builder.whatsNext.step2Prefix", "Go to"),
|
|
546
|
+
" ",
|
|
547
|
+
/* @__PURE__ */ C("strong", { children: E("bigconsole.dataSinks.builder.whatsNext.workflows", "Workflows") }),
|
|
548
|
+
" ",
|
|
549
|
+
E("bigconsole.dataSinks.builder.whatsNext.step2Suffix", "and create a FluidGrids workflow")
|
|
537
550
|
] }),
|
|
538
|
-
/* @__PURE__ */
|
|
539
|
-
/* @__PURE__ */
|
|
540
|
-
"
|
|
541
|
-
|
|
542
|
-
|
|
551
|
+
/* @__PURE__ */ C("li", { children: E("bigconsole.dataSinks.builder.whatsNext.step3", "Use the unique key in your workflow to push data to this DataSink") }),
|
|
552
|
+
/* @__PURE__ */ w("li", { children: [
|
|
553
|
+
E("bigconsole.dataSinks.builder.whatsNext.step4Prefix", "Create"),
|
|
554
|
+
" ",
|
|
555
|
+
/* @__PURE__ */ C("strong", { children: E("bigconsole.dataSinks.builder.whatsNext.parsers", "Parsers") }),
|
|
556
|
+
" ",
|
|
557
|
+
E("bigconsole.dataSinks.builder.whatsNext.step4Suffix", "to transform the data using JQ or JSONata")
|
|
543
558
|
] })
|
|
544
559
|
]
|
|
545
560
|
})]
|
|
@@ -549,6 +564,6 @@ var E = i(function() {
|
|
|
549
564
|
});
|
|
550
565
|
});
|
|
551
566
|
//#endregion
|
|
552
|
-
export {
|
|
567
|
+
export { T as DataSinkBuilderPage, T as default };
|
|
553
568
|
|
|
554
569
|
//# sourceMappingURL=DataSinkBuilderPage.js.map
|