@burdenoff/microfe-bigconsole 2026.1011.10 → 2026.1012.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.
- package/README.md +19 -0
- package/dist/bigconsole/BigConsoleRoot.js +88 -82
- package/dist/bigconsole/BigConsoleRoutes.js +163 -136
- package/dist/bigconsole/assistant/assistantProduct.js +1 -4
- package/dist/bigconsole/assistant/pageContext.d.ts +0 -14
- package/dist/bigconsole/assistant/pageContext.js +1 -6
- package/dist/bigconsole/assistant/recordAdapters.js +26 -27
- package/dist/bigconsole/components/builder/inspector/DataBindingSection.js +31 -31
- package/dist/bigconsole/components/common/index.d.ts +0 -1
- package/dist/bigconsole/components/common/index.js +0 -1
- package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js +44 -44
- package/dist/bigconsole/components/dashboard/DashboardCanvas.js +36 -36
- package/dist/bigconsole/components/dashboard/DashboardToolbar.js +59 -59
- package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js +58 -57
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js +30 -30
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js +41 -41
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js +34 -34
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js +34 -34
- package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js +110 -110
- package/dist/bigconsole/components/dashboard/PublishToStoreDialog.js +21 -21
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js +46 -46
- package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.js +164 -173
- package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.js +101 -101
- package/dist/bigconsole/components/dashboard/TemplateInstallOptions.js +31 -31
- package/dist/bigconsole/components/dashboard/TemplateLayoutPreview.js +15 -15
- package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.js +1 -1
- package/dist/bigconsole/components/dashboard/WidgetPalette.js +165 -163
- package/dist/bigconsole/components/datasink/AlertExecutionHistory.js +37 -37
- package/dist/bigconsole/components/datasink/AlertRuleEditor.js +66 -66
- package/dist/bigconsole/components/datasink/CacheTTLSelector.js +35 -35
- package/dist/bigconsole/components/datasink/DataSinkCard.js +50 -51
- package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js +18 -18
- package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js +20 -20
- package/dist/bigconsole/components/datasink/ImportDataGuideDialog.js +47 -47
- package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js +91 -91
- package/dist/bigconsole/components/datasink/RefreshTypeSelector.js +35 -35
- package/dist/bigconsole/components/parser/DataSinkSelector.js +40 -40
- package/dist/bigconsole/components/parser/ImportParserDialog.js +120 -120
- package/dist/bigconsole/components/parser/ParserSelector.js +51 -51
- package/dist/bigconsole/components/pipeline/PipelineScopePicker.js +10 -10
- package/dist/bigconsole/components/preview/AiPreviewMiniPanel.js +76 -77
- package/dist/bigconsole/components/preview/AiPreviewPanel.js +95 -96
- package/dist/bigconsole/components/widgets/ActionConfigDialog.js +4 -4
- package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js +93 -93
- package/dist/bigconsole/components/widgets/PropertiesPanel.js +499 -507
- package/dist/bigconsole/components/widgets/WidgetRegistry.js +0 -1
- package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js +4 -4
- package/dist/bigconsole/components/widgets/chart/ChartConfig.js +48 -48
- package/dist/bigconsole/components/widgets/comments/WidgetComments.js +46 -46
- package/dist/bigconsole/components/widgets/custom/CustomWidget.js +73 -131
- package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js +61 -61
- package/dist/bigconsole/components/widgets/form/FormWidget.js +36 -36
- package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js +42 -42
- package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.js +25 -25
- package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.d.ts +28 -9
- package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.js +115 -42
- package/dist/bigconsole/components/widgets/iframe-widget/framePolicy.d.ts +20 -0
- package/dist/bigconsole/components/widgets/iframe-widget/framePolicy.js +10 -0
- package/dist/bigconsole/components/widgets/iframe-widget/index.d.ts +2 -1
- package/dist/bigconsole/components/widgets/iframe-widget/index.js +3 -2
- package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js +4 -4
- package/dist/bigconsole/components/widgets/list/ListConfig.js +30 -30
- package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js +38 -38
- package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js +9 -9
- package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js +9 -9
- package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js +49 -49
- package/dist/bigconsole/components/widgets/progress/ProgressConfig.js +39 -39
- package/dist/bigconsole/components/widgets/table/TableConfig.js +73 -73
- package/dist/bigconsole/components/widgets/text-widget/TextWidget.js +110 -27
- package/dist/bigconsole/components/widgets/text-widget/textData.d.ts +6 -0
- package/dist/bigconsole/components/widgets/text-widget/textData.js +17 -14
- package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js +64 -64
- package/dist/bigconsole/components/workflow/WorkflowOpenGuard.js +15 -15
- package/dist/bigconsole/components/workflow/WorkflowSinkLinkForm.js +15 -15
- package/dist/bigconsole/context/BigConsoleContext.d.ts +10 -0
- package/dist/bigconsole/context/BigConsoleContext.js +47 -30
- package/dist/bigconsole/context/index.d.ts +1 -1
- package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js +58 -49
- package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js +74 -72
- package/dist/bigconsole/customWidget/proposalPreview.d.ts +5 -0
- package/dist/bigconsole/customWidget/proposalPreview.js +31 -0
- package/dist/bigconsole/hooks/useDataSinkAlerts.d.ts +0 -23
- package/dist/bigconsole/hooks/useDataSinkAlerts.js +113 -138
- package/dist/bigconsole/hooks/useDataSinkOperations.d.ts +7 -0
- package/dist/bigconsole/hooks/useDataSinkOperations.js +109 -98
- package/dist/bigconsole/hooks/useDataSinkSubscription.js +0 -1
- package/dist/bigconsole/hooks/useDrilldown.js +68 -67
- package/dist/bigconsole/hooks/useExportDataSink.js +1 -1
- package/dist/bigconsole/hooks/useGlobalFilters.js +3 -3
- package/dist/bigconsole/hooks/useImportDataSink.js +102 -90
- package/dist/bigconsole/pages/AdminPage.js +130 -130
- package/dist/bigconsole/pages/DashboardBuilderPage.js +60 -72
- package/dist/bigconsole/pages/DashboardViewPage.js +235 -258
- package/dist/bigconsole/pages/DashboardsPage.js +221 -269
- package/dist/bigconsole/pages/DataParsersPage.js +157 -180
- package/dist/bigconsole/pages/DataSinkAlertsPage.js +55 -62
- package/dist/bigconsole/pages/DataSinkBuilderPage.js +318 -295
- package/dist/bigconsole/pages/DataSinkViewPage.js +256 -255
- package/dist/bigconsole/pages/DataSinksPage.js +216 -251
- package/dist/bigconsole/pages/DataSourcesPage.js +5 -5
- package/dist/bigconsole/pages/InsightsPage.js +265 -279
- package/dist/bigconsole/pages/OverviewPage.js +47 -47
- package/dist/bigconsole/pages/ParserBuilderPage.js +213 -229
- package/dist/bigconsole/pages/ParserViewPage.js +97 -97
- package/dist/bigconsole/pages/PipelineBuilderPage.js +214 -256
- package/dist/bigconsole/pages/PipelineViewPage.js +146 -146
- package/dist/bigconsole/pages/PipelinesPage.js +88 -107
- package/dist/bigconsole/pages/SettingsPage.js +173 -179
- package/dist/bigconsole/pages/WidgetDemoPage.js +42 -42
- package/dist/bigconsole/pages/WorkflowViewPage.js +1 -1
- package/dist/bigconsole/pages/WorkflowsPage.js +141 -141
- package/dist/bigconsole/providers/BigConsoleQuotaProvider.js +12 -12
- package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js +235 -122
- package/dist/bigconsole/renderers/adapters/BlockKitRenderer.d.ts +6 -1
- package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js +151 -151
- package/dist/bigconsole/renderers/adapters/CustomRenderer.js +46 -46
- package/dist/bigconsole/renderers/adapters/adaptiveCardContent.d.ts +29 -0
- package/dist/bigconsole/renderers/adapters/adaptiveCardContent.js +51 -0
- package/dist/bigconsole/store/widgetStore.d.ts +0 -12
- package/dist/bigconsole/store/widgetStore.js +1 -3
- package/dist/bigconsole/types/index.d.ts +17 -2
- package/dist/bigconsole/utils/backendError.d.ts +0 -18
- package/dist/bigconsole/utils/dataSinkPayload.d.ts +48 -0
- package/dist/bigconsole/utils/dataSinkPayload.js +38 -0
- package/dist/bigconsole/utils/index.d.ts +2 -0
- package/dist/bigconsole/utils/safeUrl.d.ts +79 -0
- package/dist/bigconsole/utils/safeUrl.js +93 -0
- package/dist/bigconsole/utils/sanitizeHtml.d.ts +16 -0
- package/dist/bigconsole/utils/sanitizeHtml.js +67 -0
- package/dist/bigconsole/workflowOpen.js +14 -15
- package/dist/generated/wspace-operations.d.ts +138 -8
- package/dist/generated/wspace-operations.js +281 -240
- package/dist/node_modules/dompurify/dist/purify.es.js +800 -0
- package/package.json +9 -5
- package/dist/bigconsole/assistant/displayCopy.d.ts +0 -32
- package/dist/bigconsole/assistant/pageControls.d.ts +0 -81
- package/dist/bigconsole/assistant/pageControls.js +0 -169
- package/dist/bigconsole/assistant/previewControl.d.ts +0 -16
- package/dist/bigconsole/assistant/previewControl.js +0 -10
- package/dist/bigconsole/assistant/usePreviewControl.d.ts +0 -2
- package/dist/bigconsole/assistant/usePreviewControl.js +0 -20
- package/dist/bigconsole/components/common/SortBySelect.d.ts +0 -11
- package/dist/bigconsole/components/common/SortBySelect.js +0 -29
- package/dist/bigconsole/constants/backendErrors.js +0 -94
- package/dist/bigconsole/hooks/useDashboardLayoutBaseline.d.ts +0 -14
- package/dist/bigconsole/hooks/useDashboardLayoutBaseline.js +0 -32
- package/dist/bigconsole/utils/backendError.js +0 -42
- package/dist/bigconsole/utils/dashboardList.d.ts +0 -28
- package/dist/bigconsole/utils/dashboardList.js +0 -15
- package/dist/bigconsole/utils/dataSinkList.d.ts +0 -15
- package/dist/bigconsole/utils/dataSinkList.js +0 -15
- package/dist/bigconsole/utils/formDirty.d.ts +0 -82
- package/dist/bigconsole/utils/formDirty.js +0 -21
- package/dist/bigconsole/utils/insightsDraft.d.ts +0 -29
- package/dist/bigconsole/utils/insightsDraft.js +0 -8
- package/dist/bigconsole/utils/layoutBaseline.d.ts +0 -130
- package/dist/bigconsole/utils/layoutBaseline.js +0 -96
- package/dist/bigconsole/utils/listSort.d.ts +0 -80
- package/dist/bigconsole/utils/listSort.js +0 -85
- package/dist/bigconsole/utils/widgetFormDirty.d.ts +0 -16
- package/dist/bigconsole/utils/widgetFormDirty.js +0 -13
|
@@ -11,6 +11,7 @@ import re from "../hooks/useDataSinkOperations.js";
|
|
|
11
11
|
import { BIGCONSOLE_PERMISSIONS as i } from "../../constants/permissions.js";
|
|
12
12
|
import a from "../components/datasink/DataSinkStatusBadge.js";
|
|
13
13
|
import { isNative as o, nativeConfirm as ie, nativeImpact as ae, nativeNotify as s } from "../../utils/nativeBridge.js";
|
|
14
|
+
import { hasDataSinkPayload as c } from "../utils/dataSinkPayload.js";
|
|
14
15
|
import oe from "../hooks/useDataSinkSubscription.js";
|
|
15
16
|
import { formatByteSize as se } from "../utils/format.js";
|
|
16
17
|
import ce from "../components/datasink/DataSinkDataViewer.js";
|
|
@@ -19,495 +20,495 @@ import ue from "../components/datasink/LinkedParsersPanel.js";
|
|
|
19
20
|
import de from "../components/datasink/WorkflowStatusPanel.js";
|
|
20
21
|
import fe from "../components/datasink/ExportDataSinkDialog.js";
|
|
21
22
|
import pe from "../components/datasink/ImportDataGuideDialog.js";
|
|
22
|
-
import { memo as
|
|
23
|
+
import { memo as l, useCallback as u, useEffect as me, useState as d } from "react";
|
|
23
24
|
import { useParams as he } from "react-router";
|
|
24
|
-
import { AccessDenied as ge, PermissionButton as
|
|
25
|
+
import { AccessDenied as ge, PermissionButton as f } from "@burdenoff/fe-libs/shared/components";
|
|
25
26
|
import { usePermissions as _e } from "@burdenoff/fe-libs/shared/providers/shell";
|
|
26
|
-
import { AlertCircle as ve, ArrowLeft as
|
|
27
|
-
import { Button as
|
|
27
|
+
import { AlertCircle as ve, ArrowLeft as p, Bell as ye, Code as be, Database as m, Download as xe, Edit as Se, Eye as Ce, EyeOff as we, Grid3X3 as Te, Loader2 as h, RefreshCw as Ee, Trash2 as De, Upload as g } from "lucide-react";
|
|
28
|
+
import { Button as _, IllustratedEmptyState as Oe, NextSteps as ke, PagePurpose as Ae } from "@burdenoff/fe-libs/ui";
|
|
29
|
+
import { Fragment as v, jsx as y, jsxs as b } from "react/jsx-runtime";
|
|
28
30
|
import { useI18n as je } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
29
|
-
import {
|
|
30
|
-
import { formatDistanceToNow as b } from "date-fns";
|
|
31
|
+
import { formatDistanceToNow as x } from "date-fns";
|
|
31
32
|
//#region src/bigconsole/pages/DataSinkViewPage.tsx
|
|
32
|
-
var
|
|
33
|
-
let { dataSinkId:
|
|
33
|
+
var S = "focus-visible:ring-inset focus-visible:ring-offset-0", C = l(function() {
|
|
34
|
+
let { dataSinkId: l } = he(), C = t(), { t: w } = je(), { hasPermission: Me, isLoading: Ne } = _e(), Pe = Me(i.DATASINK_READ), [T, E] = d(!1), [D, O] = d(!1), [k, A] = d(!1), [Fe, j] = d(!1), [Ie, M] = d(!1), [N, Le] = d(null), [P, F] = d(!1), [I, L] = d("table"), [R, Re] = d(100), [z, ze] = d(0), [B, Be] = d(null), [Ve, He] = d(!1), V = e((e) => l ? e.dataSinks.get(l) : void 0), { loading: Ue, error: H, fetchDataSink: U, getDataSinkData: W, refreshDataSink: G, updateDataSink: K, deleteDataSink: q } = re({ skipFetch: !0 });
|
|
34
35
|
oe({
|
|
35
|
-
dataSinkId:
|
|
36
|
-
enabled: !!
|
|
36
|
+
dataSinkId: l,
|
|
37
|
+
enabled: !!l
|
|
37
38
|
}), me(() => {
|
|
38
|
-
|
|
39
|
-
}, [
|
|
40
|
-
let
|
|
41
|
-
|
|
42
|
-
}, [
|
|
43
|
-
|
|
44
|
-
}, [
|
|
45
|
-
if (
|
|
46
|
-
|
|
39
|
+
l && U(l);
|
|
40
|
+
}, [l, U]);
|
|
41
|
+
let J = u(() => {
|
|
42
|
+
C("/datasinks");
|
|
43
|
+
}, [C]), We = u(() => {
|
|
44
|
+
C(`/datasinks/${l}/edit`);
|
|
45
|
+
}, [C, l]), Y = u(async () => {
|
|
46
|
+
if (l) {
|
|
47
|
+
O(!0);
|
|
47
48
|
try {
|
|
48
|
-
await
|
|
49
|
+
await G({ id: l });
|
|
49
50
|
} catch {} finally {
|
|
50
|
-
|
|
51
|
+
O(!1);
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
|
-
}, [
|
|
54
|
-
if (!
|
|
54
|
+
}, [l, G]), Ge = u(async () => {
|
|
55
|
+
if (!l) return;
|
|
55
56
|
let e = await ie({
|
|
56
|
-
title:
|
|
57
|
-
message:
|
|
58
|
-
okButtonTitle:
|
|
59
|
-
cancelButtonTitle:
|
|
57
|
+
title: w("bigconsole.dataSinks.view.deleteConfirmTitle", "Delete DataSink?"),
|
|
58
|
+
message: w("bigconsole.dataSinks.view.deleteConfirmMessage", "Are you sure you want to delete this DataSink?"),
|
|
59
|
+
okButtonTitle: w("bigconsole.dataSinks.view.delete", "Delete"),
|
|
60
|
+
cancelButtonTitle: w("bigconsole.dataSinks.view.cancel", "Cancel")
|
|
60
61
|
});
|
|
61
|
-
if (e === null ? window.confirm(
|
|
62
|
-
ae("medium"),
|
|
62
|
+
if (e === null ? window.confirm(w("bigconsole.dataSinks.view.deleteConfirmMessage", "Are you sure you want to delete this DataSink?")) : e) {
|
|
63
|
+
ae("medium"), A(!0);
|
|
63
64
|
try {
|
|
64
|
-
await
|
|
65
|
+
await q(l), o() && s("success"), C("/datasinks");
|
|
65
66
|
} catch {
|
|
66
67
|
o() && s("error");
|
|
67
68
|
} finally {
|
|
68
|
-
|
|
69
|
+
A(!1);
|
|
69
70
|
}
|
|
70
71
|
}
|
|
71
72
|
}, [
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
]),
|
|
77
|
-
if (
|
|
78
|
-
|
|
73
|
+
l,
|
|
74
|
+
q,
|
|
75
|
+
C,
|
|
76
|
+
w
|
|
77
|
+
]), X = u(async (e, t) => {
|
|
78
|
+
if (l) {
|
|
79
|
+
F(!0);
|
|
79
80
|
try {
|
|
80
|
-
let n = await
|
|
81
|
+
let n = await W({ id: l }, {
|
|
81
82
|
limit: t,
|
|
82
83
|
offset: e
|
|
83
84
|
});
|
|
84
85
|
n && (Le(n.raw || {}), Be(typeof n.totalCount == "number" ? n.totalCount : null), He(!!n.hasMore), ze(e));
|
|
85
86
|
} catch {} finally {
|
|
86
|
-
|
|
87
|
+
F(!1);
|
|
87
88
|
}
|
|
88
89
|
}
|
|
89
|
-
}, [
|
|
90
|
-
if (
|
|
91
|
-
if (
|
|
92
|
-
|
|
90
|
+
}, [l, W]), Z = u(async () => {
|
|
91
|
+
if (l) {
|
|
92
|
+
if (T) {
|
|
93
|
+
E(!1);
|
|
93
94
|
return;
|
|
94
95
|
}
|
|
95
|
-
await
|
|
96
|
+
await X(0, R), E(!0);
|
|
96
97
|
}
|
|
97
98
|
}, [
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
]), Ke =
|
|
103
|
-
Re(e),
|
|
104
|
-
}, [
|
|
105
|
-
A(!0);
|
|
106
|
-
}, []), Q = l(() => {
|
|
107
|
-
A(!1);
|
|
108
|
-
}, []), $ = l(() => {
|
|
99
|
+
l,
|
|
100
|
+
T,
|
|
101
|
+
X,
|
|
102
|
+
R
|
|
103
|
+
]), Ke = u((e) => {
|
|
104
|
+
Re(e), X(0, e);
|
|
105
|
+
}, [X]), Q = u(() => {
|
|
109
106
|
j(!0);
|
|
110
|
-
}, []), qe =
|
|
107
|
+
}, []), qe = u(() => {
|
|
111
108
|
j(!1);
|
|
112
|
-
}, []),
|
|
113
|
-
|
|
114
|
-
}, [
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
109
|
+
}, []), $ = u(() => {
|
|
110
|
+
M(!0);
|
|
111
|
+
}, []), Je = u(() => {
|
|
112
|
+
M(!1);
|
|
113
|
+
}, []), Ye = u(() => {
|
|
114
|
+
M(!1), C(ee(), n);
|
|
115
|
+
}, [C]), Xe = u(async (e) => {
|
|
116
|
+
if (!V || !await K({
|
|
117
|
+
id: V.id,
|
|
118
|
+
version: V.version,
|
|
118
119
|
data: e
|
|
119
120
|
})) return !1;
|
|
120
121
|
try {
|
|
121
|
-
await
|
|
122
|
+
await X(0, R), E(!0);
|
|
122
123
|
} catch {}
|
|
123
124
|
return !0;
|
|
124
125
|
}, [
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
126
|
+
V,
|
|
127
|
+
K,
|
|
128
|
+
X,
|
|
129
|
+
R
|
|
129
130
|
]);
|
|
130
|
-
return Ue && !
|
|
131
|
+
return Ue && !V ? /* @__PURE__ */ y("div", {
|
|
131
132
|
className: "flex min-h-[240px] items-center justify-center p-card-padding",
|
|
132
|
-
children: /* @__PURE__ */
|
|
133
|
-
}) :
|
|
133
|
+
children: /* @__PURE__ */ y(h, { className: "h-icon-lg w-icon-lg animate-spin text-text-secondary" })
|
|
134
|
+
}) : H && !V ? /* @__PURE__ */ y("div", {
|
|
134
135
|
className: "p-card-padding",
|
|
135
|
-
children: /* @__PURE__ */
|
|
136
|
+
children: /* @__PURE__ */ y(r, {
|
|
136
137
|
tone: "danger",
|
|
137
138
|
headingLevel: 2,
|
|
138
|
-
title:
|
|
139
|
-
description:
|
|
140
|
-
icon: /* @__PURE__ */
|
|
141
|
-
actions: /* @__PURE__ */
|
|
142
|
-
onClick:
|
|
139
|
+
title: w("bigconsole.dataSinks.view.loadError", "Failed to load DataSink"),
|
|
140
|
+
description: H.message,
|
|
141
|
+
icon: /* @__PURE__ */ y(ve, { className: "h-icon-sm w-icon-sm" }),
|
|
142
|
+
actions: /* @__PURE__ */ b(_, {
|
|
143
|
+
onClick: J,
|
|
143
144
|
variant: "secondary",
|
|
144
145
|
size: "sm",
|
|
145
|
-
children: [/* @__PURE__ */
|
|
146
|
+
children: [/* @__PURE__ */ y(p, { className: "w-4 h-4 mr-2" }), w("bigconsole.dataSinks.view.goBack", "Go back")]
|
|
146
147
|
})
|
|
147
148
|
})
|
|
148
|
-
}) : !Ne && !Pe ? /* @__PURE__ */
|
|
149
|
-
title:
|
|
150
|
-
description:
|
|
151
|
-
}) :
|
|
149
|
+
}) : !Ne && !Pe ? /* @__PURE__ */ y(ge, {
|
|
150
|
+
title: w("bigconsole.dataSinks.view.accessDeniedTitle", "Access Denied"),
|
|
151
|
+
description: w("bigconsole.dataSinks.view.accessDeniedDescription", "You don't have permission to view this data sink.")
|
|
152
|
+
}) : V ? /* @__PURE__ */ b("div", {
|
|
152
153
|
className: "min-w-0 p-card-padding",
|
|
153
154
|
children: [
|
|
154
|
-
/* @__PURE__ */
|
|
155
|
+
/* @__PURE__ */ b("header", {
|
|
155
156
|
className: "mb-section-gap flex flex-col gap-form-gap sm:flex-row sm:items-start sm:justify-between",
|
|
156
|
-
children: [/* @__PURE__ */
|
|
157
|
+
children: [/* @__PURE__ */ b("div", {
|
|
157
158
|
className: "min-w-0 flex-1",
|
|
158
159
|
children: [
|
|
159
|
-
/* @__PURE__ */
|
|
160
|
-
onClick:
|
|
160
|
+
/* @__PURE__ */ b(_, {
|
|
161
|
+
onClick: J,
|
|
161
162
|
variant: "ghost",
|
|
162
163
|
size: "sm",
|
|
163
164
|
className: "mb-4",
|
|
164
|
-
children: [/* @__PURE__ */
|
|
165
|
+
children: [/* @__PURE__ */ y(p, { className: "w-4 h-4 mr-2" }), w("bigconsole.dataSinks.view.backToDataSinks", "Back to DataSinks")]
|
|
165
166
|
}),
|
|
166
|
-
/* @__PURE__ */
|
|
167
|
+
/* @__PURE__ */ b("div", {
|
|
167
168
|
className: "flex flex-wrap items-center gap-2",
|
|
168
169
|
children: [
|
|
169
|
-
/* @__PURE__ */
|
|
170
|
+
/* @__PURE__ */ y("h1", {
|
|
170
171
|
className: "text-2xl font-bold text-text-primary",
|
|
171
|
-
children:
|
|
172
|
+
children: V.name || w("bigconsole.dataSinks.view.untitled", "Untitled")
|
|
172
173
|
}),
|
|
173
|
-
/* @__PURE__ */
|
|
174
|
-
/* @__PURE__ */
|
|
174
|
+
/* @__PURE__ */ y(a, { status: V.status }),
|
|
175
|
+
/* @__PURE__ */ b("span", {
|
|
175
176
|
className: "rounded-pill border border-border-subtle px-2 py-1 text-xs text-text-secondary",
|
|
176
|
-
children: ["v",
|
|
177
|
+
children: ["v", V.version]
|
|
177
178
|
})
|
|
178
179
|
]
|
|
179
180
|
}),
|
|
180
|
-
/* @__PURE__ */
|
|
181
|
+
/* @__PURE__ */ y("p", {
|
|
181
182
|
className: "mt-1 break-all font-mono text-sm text-text-muted",
|
|
182
|
-
children:
|
|
183
|
+
children: V.key
|
|
183
184
|
}),
|
|
184
|
-
|
|
185
|
+
V.description && /* @__PURE__ */ y("p", {
|
|
185
186
|
className: "mt-2 text-sm text-text-secondary",
|
|
186
|
-
children:
|
|
187
|
+
children: V.description
|
|
187
188
|
})
|
|
188
189
|
]
|
|
189
|
-
}), /* @__PURE__ */
|
|
190
|
+
}), /* @__PURE__ */ b("div", {
|
|
190
191
|
className: "flex flex-wrap items-center gap-2",
|
|
191
192
|
children: [
|
|
192
|
-
/* @__PURE__ */
|
|
193
|
+
/* @__PURE__ */ y(f, {
|
|
193
194
|
permission: i.DATASINK_EXECUTE,
|
|
194
195
|
deniedBehavior: "disable",
|
|
195
|
-
children: /* @__PURE__ */
|
|
196
|
-
onClick:
|
|
197
|
-
disabled:
|
|
196
|
+
children: /* @__PURE__ */ b(_, {
|
|
197
|
+
onClick: Y,
|
|
198
|
+
disabled: D,
|
|
198
199
|
variant: "default",
|
|
199
200
|
size: "default",
|
|
200
|
-
children: [/* @__PURE__ */
|
|
201
|
+
children: [/* @__PURE__ */ y(Ee, { className: `w-4 h-4 mr-2 ${D ? "animate-spin" : ""}` }), D ? w("bigconsole.dataSinks.view.refreshing", "Refreshing...") : w("bigconsole.dataSinks.view.refresh", "Refresh")]
|
|
201
202
|
})
|
|
202
203
|
}),
|
|
203
|
-
/* @__PURE__ */
|
|
204
|
+
/* @__PURE__ */ b(_, {
|
|
204
205
|
onClick: $,
|
|
205
206
|
variant: "secondary",
|
|
206
207
|
size: "default",
|
|
207
|
-
children: [/* @__PURE__ */
|
|
208
|
+
children: [/* @__PURE__ */ y(g, { className: "w-4 h-4 mr-2" }), w("bigconsole.dataSinks.view.importData", "Import Data")]
|
|
208
209
|
}),
|
|
209
|
-
/* @__PURE__ */
|
|
210
|
-
onClick:
|
|
210
|
+
/* @__PURE__ */ b(_, {
|
|
211
|
+
onClick: Q,
|
|
211
212
|
variant: "secondary",
|
|
212
213
|
size: "default",
|
|
213
|
-
children: [/* @__PURE__ */
|
|
214
|
+
children: [/* @__PURE__ */ y(xe, { className: "w-4 h-4 mr-2" }), w("bigconsole.dataSinks.view.export", "Export")]
|
|
214
215
|
}),
|
|
215
|
-
/* @__PURE__ */
|
|
216
|
-
onClick: () =>
|
|
216
|
+
/* @__PURE__ */ b(_, {
|
|
217
|
+
onClick: () => C(`/datasinks/${l}/alerts`),
|
|
217
218
|
variant: "secondary",
|
|
218
219
|
size: "default",
|
|
219
|
-
children: [/* @__PURE__ */
|
|
220
|
+
children: [/* @__PURE__ */ y(ye, { className: "w-4 h-4 mr-2" }), w("bigconsole.alerts.title", "Alerts")]
|
|
220
221
|
}),
|
|
221
|
-
/* @__PURE__ */
|
|
222
|
+
/* @__PURE__ */ y(f, {
|
|
222
223
|
permission: i.DATASINK_UPDATE,
|
|
223
224
|
deniedBehavior: "disable",
|
|
224
|
-
children: /* @__PURE__ */
|
|
225
|
+
children: /* @__PURE__ */ b(_, {
|
|
225
226
|
onClick: We,
|
|
226
227
|
variant: "secondary",
|
|
227
228
|
size: "default",
|
|
228
|
-
children: [/* @__PURE__ */
|
|
229
|
+
children: [/* @__PURE__ */ y(Se, { className: "w-4 h-4 mr-2" }), w("bigconsole.dataSinks.view.edit", "Edit")]
|
|
229
230
|
})
|
|
230
231
|
}),
|
|
231
|
-
/* @__PURE__ */
|
|
232
|
+
/* @__PURE__ */ y(f, {
|
|
232
233
|
permission: i.DATASINK_DELETE,
|
|
233
234
|
deniedBehavior: "hide",
|
|
234
|
-
children: /* @__PURE__ */
|
|
235
|
+
children: /* @__PURE__ */ b(_, {
|
|
235
236
|
onClick: Ge,
|
|
236
|
-
disabled:
|
|
237
|
+
disabled: k,
|
|
237
238
|
variant: "destructive",
|
|
238
239
|
size: "default",
|
|
239
|
-
children: [/* @__PURE__ */
|
|
240
|
+
children: [/* @__PURE__ */ y(De, { className: "w-4 h-4 mr-2" }), k ? w("bigconsole.dataSinks.view.deleting", "Deleting...") : w("bigconsole.dataSinks.view.delete", "Delete")]
|
|
240
241
|
})
|
|
241
242
|
})
|
|
242
243
|
]
|
|
243
244
|
})]
|
|
244
245
|
}),
|
|
245
|
-
/* @__PURE__ */
|
|
246
|
+
/* @__PURE__ */ y(Ae, {
|
|
246
247
|
className: "mb-section-gap",
|
|
247
|
-
children:
|
|
248
|
+
children: w("bigconsole.dataSinks.view.pagePurpose", "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.")
|
|
248
249
|
}),
|
|
249
|
-
/* @__PURE__ */
|
|
250
|
+
/* @__PURE__ */ b(te, {
|
|
250
251
|
className: "mt-section-gap",
|
|
251
|
-
children: [/* @__PURE__ */
|
|
252
|
+
children: [/* @__PURE__ */ b("div", {
|
|
252
253
|
className: "grid min-w-0 gap-section-gap lg:grid-cols-[minmax(0,2fr)_minmax(0,3fr)]",
|
|
253
|
-
children: [/* @__PURE__ */
|
|
254
|
+
children: [/* @__PURE__ */ y(r, {
|
|
254
255
|
headingLevel: 2,
|
|
255
|
-
title:
|
|
256
|
+
title: w("bigconsole.dataSinks.view.details", "Details"),
|
|
256
257
|
description: "Cache, refresh and storage settings for this sink.",
|
|
257
|
-
children: /* @__PURE__ */
|
|
258
|
+
children: /* @__PURE__ */ b("dl", {
|
|
258
259
|
className: "divide-y divide-[var(--color-border-subtle)] text-sm",
|
|
259
260
|
children: [
|
|
260
|
-
/* @__PURE__ */
|
|
261
|
+
/* @__PURE__ */ b("div", {
|
|
261
262
|
className: "flex flex-wrap items-center justify-between gap-x-form-gap gap-y-1 py-2 first:pt-0",
|
|
262
|
-
children: [/* @__PURE__ */
|
|
263
|
+
children: [/* @__PURE__ */ y("dt", {
|
|
263
264
|
className: "min-w-0 text-text-secondary",
|
|
264
|
-
children:
|
|
265
|
-
}), /* @__PURE__ */
|
|
266
|
-
status:
|
|
265
|
+
children: w("bigconsole.dataSinks.view.status", "Status")
|
|
266
|
+
}), /* @__PURE__ */ y("dd", { children: /* @__PURE__ */ y(a, {
|
|
267
|
+
status: V.status,
|
|
267
268
|
size: "sm"
|
|
268
269
|
}) })]
|
|
269
270
|
}),
|
|
270
|
-
/* @__PURE__ */
|
|
271
|
+
/* @__PURE__ */ b("div", {
|
|
271
272
|
className: "flex flex-wrap items-center justify-between gap-x-form-gap gap-y-1 py-2",
|
|
272
|
-
children: [/* @__PURE__ */
|
|
273
|
+
children: [/* @__PURE__ */ y("dt", {
|
|
273
274
|
className: "min-w-0 text-text-secondary",
|
|
274
|
-
children:
|
|
275
|
-
}), /* @__PURE__ */
|
|
275
|
+
children: w("bigconsole.dataSinks.view.cacheTtl", "Cache TTL")
|
|
276
|
+
}), /* @__PURE__ */ y("dd", {
|
|
276
277
|
className: "font-medium text-text-primary",
|
|
277
|
-
children:
|
|
278
|
+
children: V.ttl ? `${V.ttl}s` : w("bigconsole.dataSinks.view.none", "None")
|
|
278
279
|
})]
|
|
279
280
|
}),
|
|
280
|
-
/* @__PURE__ */
|
|
281
|
+
/* @__PURE__ */ b("div", {
|
|
281
282
|
className: "flex flex-wrap items-center justify-between gap-x-form-gap gap-y-1 py-2",
|
|
282
|
-
children: [/* @__PURE__ */
|
|
283
|
+
children: [/* @__PURE__ */ y("dt", {
|
|
283
284
|
className: "min-w-0 text-text-secondary",
|
|
284
|
-
children:
|
|
285
|
-
}), /* @__PURE__ */
|
|
285
|
+
children: w("bigconsole.dataSinks.view.refreshType", "Refresh Type")
|
|
286
|
+
}), /* @__PURE__ */ y("dd", {
|
|
286
287
|
className: "font-medium capitalize text-text-primary",
|
|
287
|
-
children:
|
|
288
|
+
children: V.refresh?.type || w("bigconsole.dataSinks.view.manual", "Manual")
|
|
288
289
|
})]
|
|
289
290
|
}),
|
|
290
|
-
/* @__PURE__ */
|
|
291
|
+
/* @__PURE__ */ b("div", {
|
|
291
292
|
className: "flex flex-wrap items-center justify-between gap-x-form-gap gap-y-1 py-2",
|
|
292
|
-
children: [/* @__PURE__ */
|
|
293
|
+
children: [/* @__PURE__ */ y("dt", {
|
|
293
294
|
className: "min-w-0 text-text-secondary",
|
|
294
|
-
children:
|
|
295
|
-
}), /* @__PURE__ */
|
|
295
|
+
children: w("bigconsole.dataSinks.view.size", "Size")
|
|
296
|
+
}), /* @__PURE__ */ y("dd", {
|
|
296
297
|
className: "font-medium text-text-primary",
|
|
297
|
-
children: se(
|
|
298
|
+
children: se(V.sizeBytes || 0)
|
|
298
299
|
})]
|
|
299
300
|
}),
|
|
300
|
-
/* @__PURE__ */
|
|
301
|
+
/* @__PURE__ */ b("div", {
|
|
301
302
|
className: "flex flex-wrap items-center justify-between gap-x-form-gap gap-y-1 py-2",
|
|
302
|
-
children: [/* @__PURE__ */
|
|
303
|
+
children: [/* @__PURE__ */ y("dt", {
|
|
303
304
|
className: "min-w-0 text-text-secondary",
|
|
304
|
-
children:
|
|
305
|
-
}), /* @__PURE__ */
|
|
305
|
+
children: w("bigconsole.dataSinks.view.version", "Version")
|
|
306
|
+
}), /* @__PURE__ */ y("dd", {
|
|
306
307
|
className: "font-medium text-text-primary",
|
|
307
|
-
children:
|
|
308
|
+
children: V.version || 1
|
|
308
309
|
})]
|
|
309
310
|
}),
|
|
310
|
-
/* @__PURE__ */
|
|
311
|
+
/* @__PURE__ */ b("div", {
|
|
311
312
|
className: "flex flex-wrap items-center justify-between gap-x-form-gap gap-y-1 py-2",
|
|
312
|
-
children: [/* @__PURE__ */
|
|
313
|
+
children: [/* @__PURE__ */ y("dt", {
|
|
313
314
|
className: "min-w-0 text-text-secondary",
|
|
314
|
-
children:
|
|
315
|
-
}), /* @__PURE__ */
|
|
315
|
+
children: w("bigconsole.dataSinks.view.lastRefreshed", "Last Refreshed")
|
|
316
|
+
}), /* @__PURE__ */ y("dd", {
|
|
316
317
|
className: "font-medium text-text-primary",
|
|
317
|
-
children:
|
|
318
|
+
children: V.lastRefreshedAt ? x(new Date(V.lastRefreshedAt), { addSuffix: !0 }) : w("bigconsole.dataSinks.view.never", "Never")
|
|
318
319
|
})]
|
|
319
320
|
}),
|
|
320
|
-
/* @__PURE__ */
|
|
321
|
+
/* @__PURE__ */ b("div", {
|
|
321
322
|
className: "flex flex-wrap items-center justify-between gap-x-form-gap gap-y-1 py-2 last:pb-0",
|
|
322
|
-
children: [/* @__PURE__ */
|
|
323
|
+
children: [/* @__PURE__ */ y("dt", {
|
|
323
324
|
className: "min-w-0 text-text-secondary",
|
|
324
|
-
children:
|
|
325
|
-
}), /* @__PURE__ */
|
|
325
|
+
children: w("bigconsole.dataSinks.view.created", "Created")
|
|
326
|
+
}), /* @__PURE__ */ y("dd", {
|
|
326
327
|
className: "font-medium text-text-primary",
|
|
327
|
-
children:
|
|
328
|
+
children: x(new Date(V.createdAt), { addSuffix: !0 })
|
|
328
329
|
})]
|
|
329
330
|
})
|
|
330
331
|
]
|
|
331
332
|
})
|
|
332
|
-
}), /* @__PURE__ */
|
|
333
|
+
}), /* @__PURE__ */ b(r, {
|
|
333
334
|
emphasis: "primary",
|
|
334
335
|
headingLevel: 2,
|
|
335
|
-
title:
|
|
336
|
+
title: w("bigconsole.dataSinks.view.dataPreview", "Data Preview"),
|
|
336
337
|
description: "The rows this sink is currently serving to dashboards.",
|
|
337
|
-
icon: /* @__PURE__ */
|
|
338
|
-
actions: /* @__PURE__ */
|
|
338
|
+
icon: /* @__PURE__ */ y(m, { className: "h-icon-sm w-icon-sm" }),
|
|
339
|
+
actions: /* @__PURE__ */ b(v, { children: [T && /* @__PURE__ */ b("div", {
|
|
339
340
|
role: "group",
|
|
340
|
-
"aria-label":
|
|
341
|
+
"aria-label": w("bigconsole.dataSinks.view.dataPreview", "Data Preview"),
|
|
341
342
|
className: "flex items-center overflow-hidden rounded-button border border-[var(--color-border-default)]",
|
|
342
|
-
children: [/* @__PURE__ */
|
|
343
|
+
children: [/* @__PURE__ */ y("button", {
|
|
343
344
|
type: "button",
|
|
344
|
-
onClick: () =>
|
|
345
|
-
"aria-pressed":
|
|
346
|
-
className: `flex h-control-md w-[var(--size-controlHeight-md)] items-center justify-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface ${
|
|
347
|
-
title:
|
|
348
|
-
children: /* @__PURE__ */
|
|
349
|
-
}), /* @__PURE__ */
|
|
345
|
+
onClick: () => L("table"),
|
|
346
|
+
"aria-pressed": I === "table",
|
|
347
|
+
className: `flex h-control-md w-[var(--size-controlHeight-md)] items-center justify-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface ${S} ${I === "table" ? "bg-bg-sunken text-text-primary" : "text-text-secondary hover:text-text-primary"}`,
|
|
348
|
+
title: w("bigconsole.dataSinks.view.tableView", "Table view"),
|
|
349
|
+
children: /* @__PURE__ */ y(Te, { className: "w-4 h-4" })
|
|
350
|
+
}), /* @__PURE__ */ y("button", {
|
|
350
351
|
type: "button",
|
|
351
|
-
onClick: () =>
|
|
352
|
-
"aria-pressed":
|
|
353
|
-
className: `flex h-control-md w-[var(--size-controlHeight-md)] items-center justify-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface ${
|
|
354
|
-
title:
|
|
355
|
-
children: /* @__PURE__ */
|
|
352
|
+
onClick: () => L("json"),
|
|
353
|
+
"aria-pressed": I === "json",
|
|
354
|
+
className: `flex h-control-md w-[var(--size-controlHeight-md)] items-center justify-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface ${S} ${I === "json" ? "bg-bg-sunken text-text-primary" : "text-text-secondary hover:text-text-primary"}`,
|
|
355
|
+
title: w("bigconsole.dataSinks.view.jsonView", "JSON view"),
|
|
356
|
+
children: /* @__PURE__ */ y(be, { className: "w-4 h-4" })
|
|
356
357
|
})]
|
|
357
|
-
}), /* @__PURE__ */
|
|
358
|
-
onClick:
|
|
359
|
-
disabled:
|
|
360
|
-
variant:
|
|
358
|
+
}), /* @__PURE__ */ y(_, {
|
|
359
|
+
onClick: Z,
|
|
360
|
+
disabled: P,
|
|
361
|
+
variant: T ? "secondary" : "default",
|
|
361
362
|
size: "sm",
|
|
362
|
-
children:
|
|
363
|
+
children: P ? /* @__PURE__ */ b(v, { children: [/* @__PURE__ */ y(h, { className: "w-4 h-4 mr-2 animate-spin" }), w("bigconsole.dataSinks.view.loading", "Loading...")] }) : T ? /* @__PURE__ */ b(v, { children: [/* @__PURE__ */ y(we, { className: "w-4 h-4 mr-2" }), w("bigconsole.dataSinks.view.hideData", "Hide Data")] }) : /* @__PURE__ */ b(v, { children: [/* @__PURE__ */ y(Ce, { className: "w-4 h-4 mr-2" }), w("bigconsole.dataSinks.view.showData", "Show Data")] })
|
|
363
364
|
})] }),
|
|
364
|
-
children: [
|
|
365
|
-
data:
|
|
365
|
+
children: [T && N && /* @__PURE__ */ b(v, { children: [y(I === "table" ? ne : ce, {
|
|
366
|
+
data: N,
|
|
366
367
|
maxHeight: "400px"
|
|
367
|
-
}),
|
|
368
|
+
}), B !== null && /* @__PURE__ */ b("div", {
|
|
368
369
|
className: "mt-form-gap flex flex-wrap items-center justify-between gap-form-gap border-t border-[var(--color-border-subtle)] pt-form-gap",
|
|
369
|
-
children: [/* @__PURE__ */
|
|
370
|
+
children: [/* @__PURE__ */ b("label", {
|
|
370
371
|
className: "flex items-center gap-2 text-sm text-text-secondary",
|
|
371
|
-
children: [/* @__PURE__ */
|
|
372
|
-
"aria-label":
|
|
372
|
+
children: [/* @__PURE__ */ y("span", { children: w("bigconsole.dataSinks.view.rowsPerPage", "Rows per page") }), /* @__PURE__ */ y("select", {
|
|
373
|
+
"aria-label": w("bigconsole.dataSinks.view.rowsPerPage", "Rows per page"),
|
|
373
374
|
className: "h-control-md rounded-input border border-[var(--color-border-default)] bg-bg-canvas px-2 text-text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface",
|
|
374
|
-
value:
|
|
375
|
+
value: R,
|
|
375
376
|
onChange: (e) => Ke(Number(e.target.value)),
|
|
376
377
|
children: [
|
|
377
378
|
100,
|
|
378
379
|
500,
|
|
379
380
|
1e3
|
|
380
|
-
].map((e) => /* @__PURE__ */
|
|
381
|
+
].map((e) => /* @__PURE__ */ y("option", {
|
|
381
382
|
value: e,
|
|
382
383
|
children: e
|
|
383
384
|
}, e))
|
|
384
385
|
})]
|
|
385
|
-
}), /* @__PURE__ */
|
|
386
|
+
}), /* @__PURE__ */ b("div", {
|
|
386
387
|
className: "flex flex-wrap items-center gap-control-gap text-sm text-text-secondary",
|
|
387
388
|
children: [
|
|
388
|
-
/* @__PURE__ */
|
|
389
|
-
start:
|
|
390
|
-
end: Math.min(
|
|
391
|
-
total:
|
|
389
|
+
/* @__PURE__ */ y("span", { children: B === 0 ? w("bigconsole.dataSinks.view.zeroRows", "0 rows") : w("bigconsole.dataSinks.view.rowRange", "{{start}}–{{end}} of {{total}}", {
|
|
390
|
+
start: z + 1,
|
|
391
|
+
end: Math.min(z + R, B),
|
|
392
|
+
total: B
|
|
392
393
|
}) }),
|
|
393
|
-
/* @__PURE__ */
|
|
394
|
+
/* @__PURE__ */ y(_, {
|
|
394
395
|
variant: "secondary",
|
|
395
396
|
size: "sm",
|
|
396
|
-
disabled:
|
|
397
|
-
onClick: () => void
|
|
398
|
-
children:
|
|
397
|
+
disabled: z === 0 || P,
|
|
398
|
+
onClick: () => void X(Math.max(0, z - R), R),
|
|
399
|
+
children: w("bigconsole.dataSinks.view.previous", "Previous")
|
|
399
400
|
}),
|
|
400
|
-
/* @__PURE__ */
|
|
401
|
+
/* @__PURE__ */ y(_, {
|
|
401
402
|
variant: "secondary",
|
|
402
403
|
size: "sm",
|
|
403
|
-
disabled: !Ve ||
|
|
404
|
-
onClick: () => void
|
|
405
|
-
children:
|
|
404
|
+
disabled: !Ve || P,
|
|
405
|
+
onClick: () => void X(z + R, R),
|
|
406
|
+
children: w("bigconsole.dataSinks.view.next", "Next")
|
|
406
407
|
})
|
|
407
408
|
]
|
|
408
409
|
})]
|
|
409
|
-
})] }), !
|
|
410
|
+
})] }), !T && (c(V) ? /* @__PURE__ */ b("p", {
|
|
410
411
|
className: "flex items-center gap-icon-gap text-sm text-text-secondary",
|
|
411
|
-
children: [/* @__PURE__ */
|
|
412
|
+
children: [/* @__PURE__ */ y(m, {
|
|
412
413
|
"aria-hidden": "true",
|
|
413
414
|
className: "h-icon-sm w-icon-sm shrink-0 text-text-muted"
|
|
414
|
-
}),
|
|
415
|
-
}) : /* @__PURE__ */
|
|
415
|
+
}), w("bigconsole.dataSinks.view.showDataHint", "Click \"Show Data\" to preview the cached data.")]
|
|
416
|
+
}) : /* @__PURE__ */ b("div", {
|
|
416
417
|
className: "flex flex-col items-center gap-form-gap py-form-gap text-center",
|
|
417
418
|
children: [
|
|
418
|
-
/* @__PURE__ */
|
|
419
|
+
/* @__PURE__ */ y(m, {
|
|
419
420
|
"aria-hidden": "true",
|
|
420
421
|
className: "h-icon-lg w-icon-lg text-text-muted"
|
|
421
422
|
}),
|
|
422
|
-
/* @__PURE__ */
|
|
423
|
+
/* @__PURE__ */ y("p", {
|
|
423
424
|
className: "text-sm text-text-secondary",
|
|
424
|
-
children:
|
|
425
|
+
children: w("bigconsole.dataSinks.view.noDataYet", "This data sink has no data yet. Upload a CSV or build a workflow to import data.")
|
|
425
426
|
}),
|
|
426
|
-
/* @__PURE__ */
|
|
427
|
+
/* @__PURE__ */ b(_, {
|
|
427
428
|
onClick: $,
|
|
428
429
|
variant: "default",
|
|
429
430
|
size: "sm",
|
|
430
|
-
children: [/* @__PURE__ */
|
|
431
|
+
children: [/* @__PURE__ */ y(g, { className: "w-4 h-4 mr-2" }), w("bigconsole.dataSinks.view.importData", "Import Data")]
|
|
431
432
|
})
|
|
432
433
|
]
|
|
433
434
|
}))]
|
|
434
435
|
})]
|
|
435
|
-
}), /* @__PURE__ */
|
|
436
|
+
}), /* @__PURE__ */ b("div", {
|
|
436
437
|
className: "grid min-w-0 gap-section-gap md:grid-cols-2",
|
|
437
438
|
children: [
|
|
438
|
-
|
|
439
|
-
workflowId:
|
|
440
|
-
executionId:
|
|
441
|
-
lastRefreshedAt:
|
|
442
|
-
setupState:
|
|
443
|
-
status:
|
|
444
|
-
onRerunWorkflow:
|
|
445
|
-
disabled:
|
|
446
|
-
isRerunning:
|
|
439
|
+
V.fluidGridsWorkflowId && /* @__PURE__ */ y(de, {
|
|
440
|
+
workflowId: V.fluidGridsWorkflowId,
|
|
441
|
+
executionId: V.fluidGridsWorkflowExecutionId || void 0,
|
|
442
|
+
lastRefreshedAt: V.lastRefreshedAt || void 0,
|
|
443
|
+
setupState: V.setupState,
|
|
444
|
+
status: V.status,
|
|
445
|
+
onRerunWorkflow: Y,
|
|
446
|
+
disabled: D,
|
|
447
|
+
isRerunning: D
|
|
447
448
|
}),
|
|
448
|
-
/* @__PURE__ */
|
|
449
|
-
/* @__PURE__ */
|
|
449
|
+
/* @__PURE__ */ y(le, { workflowLinks: V.workflowLinks }),
|
|
450
|
+
/* @__PURE__ */ y(ue, { dataSinkKey: V.key })
|
|
450
451
|
]
|
|
451
452
|
})]
|
|
452
453
|
}),
|
|
453
|
-
/* @__PURE__ */
|
|
454
|
+
/* @__PURE__ */ y(ke, {
|
|
454
455
|
storageKey: "bigconsole-datasink-view",
|
|
455
456
|
steps: [
|
|
456
457
|
{
|
|
457
458
|
id: "preview",
|
|
458
|
-
label:
|
|
459
|
-
description:
|
|
460
|
-
onClick:
|
|
459
|
+
label: w("bigconsole.dataSinks.view.nextSteps.previewLabel", "Preview the data"),
|
|
460
|
+
description: w("bigconsole.dataSinks.view.nextSteps.previewDescription", "Open the cached rows to confirm the sink holds what you expect."),
|
|
461
|
+
onClick: Z
|
|
461
462
|
},
|
|
462
463
|
{
|
|
463
464
|
id: "refresh",
|
|
464
|
-
label:
|
|
465
|
-
description:
|
|
466
|
-
onClick:
|
|
465
|
+
label: w("bigconsole.dataSinks.view.nextSteps.refreshLabel", "Refresh from source"),
|
|
466
|
+
description: w("bigconsole.dataSinks.view.nextSteps.refreshDescription", "Re-run the linked workflow to pull the latest data."),
|
|
467
|
+
onClick: Y
|
|
467
468
|
},
|
|
468
469
|
{
|
|
469
470
|
id: "build-dashboard",
|
|
470
|
-
label:
|
|
471
|
-
description:
|
|
472
|
-
onClick: () =>
|
|
471
|
+
label: w("bigconsole.dataSinks.view.nextSteps.dashboardLabel", "Visualize it on a dashboard"),
|
|
472
|
+
description: w("bigconsole.dataSinks.view.nextSteps.dashboardDescription", "Add widgets that query this sink to see your data live."),
|
|
473
|
+
onClick: () => C("/dashboards")
|
|
473
474
|
},
|
|
474
475
|
{
|
|
475
476
|
id: "export",
|
|
476
|
-
label:
|
|
477
|
-
description:
|
|
478
|
-
onClick:
|
|
477
|
+
label: w("bigconsole.dataSinks.view.nextSteps.exportLabel", "Export the data"),
|
|
478
|
+
description: w("bigconsole.dataSinks.view.nextSteps.exportDescription", "Download the contents for use elsewhere."),
|
|
479
|
+
onClick: Q
|
|
479
480
|
}
|
|
480
481
|
]
|
|
481
482
|
}),
|
|
482
|
-
/* @__PURE__ */
|
|
483
|
+
/* @__PURE__ */ y(fe, {
|
|
483
484
|
isOpen: Fe,
|
|
484
|
-
dataSinkId:
|
|
485
|
-
dataSinkName:
|
|
486
|
-
onClose:
|
|
485
|
+
dataSinkId: l || null,
|
|
486
|
+
dataSinkName: V.name || V.key,
|
|
487
|
+
onClose: qe
|
|
487
488
|
}),
|
|
488
|
-
/* @__PURE__ */
|
|
489
|
+
/* @__PURE__ */ y(pe, {
|
|
489
490
|
isOpen: Ie,
|
|
490
|
-
dataSinkName:
|
|
491
|
-
hasExistingData:
|
|
492
|
-
onClose:
|
|
493
|
-
onGoToWorkflows:
|
|
494
|
-
onImportCsv:
|
|
491
|
+
dataSinkName: V.name || V.key,
|
|
492
|
+
hasExistingData: c(V),
|
|
493
|
+
onClose: Je,
|
|
494
|
+
onGoToWorkflows: Ye,
|
|
495
|
+
onImportCsv: Xe
|
|
495
496
|
})
|
|
496
497
|
]
|
|
497
|
-
}) : /* @__PURE__ */
|
|
498
|
+
}) : /* @__PURE__ */ y("div", {
|
|
498
499
|
className: "flex min-h-[240px] items-center justify-center p-card-padding",
|
|
499
|
-
children: /* @__PURE__ */
|
|
500
|
+
children: /* @__PURE__ */ y(Oe, {
|
|
500
501
|
illustration: "empty-data",
|
|
501
|
-
title:
|
|
502
|
-
description:
|
|
503
|
-
action: /* @__PURE__ */
|
|
504
|
-
onClick:
|
|
502
|
+
title: w("bigconsole.dataSinks.view.notFoundTitle", "DataSink not found"),
|
|
503
|
+
description: w("bigconsole.dataSinks.view.notFoundDescription", "The DataSink you're looking for doesn't exist or has been deleted."),
|
|
504
|
+
action: /* @__PURE__ */ b(_, {
|
|
505
|
+
onClick: J,
|
|
505
506
|
variant: "default",
|
|
506
507
|
size: "default",
|
|
507
|
-
children: [/* @__PURE__ */
|
|
508
|
+
children: [/* @__PURE__ */ y(p, { className: "w-4 h-4 mr-2" }), w("bigconsole.dataSinks.view.goBackToDataSinks", "Go back to DataSinks")]
|
|
508
509
|
})
|
|
509
510
|
})
|
|
510
511
|
});
|
|
511
512
|
});
|
|
512
513
|
//#endregion
|
|
513
|
-
export {
|
|
514
|
+
export { C as DataSinkViewPage, C as default };
|