@burdenoff/microfe-bigconsole 2026.1012.4 → 2026.1012.5
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/BigConsoleRoutes.js +149 -140
- package/dist/bigconsole/assistant/assistantProduct.js +4 -1
- package/dist/bigconsole/assistant/displayCopy.d.ts +32 -0
- package/dist/bigconsole/assistant/pageContext.d.ts +14 -0
- package/dist/bigconsole/assistant/pageContext.js +6 -1
- package/dist/bigconsole/assistant/pageControls.d.ts +81 -0
- package/dist/bigconsole/assistant/pageControls.js +169 -0
- package/dist/bigconsole/assistant/previewControl.d.ts +16 -0
- package/dist/bigconsole/assistant/previewControl.js +10 -0
- package/dist/bigconsole/assistant/recordAdapters.js +27 -26
- package/dist/bigconsole/assistant/usePreviewControl.d.ts +2 -0
- package/dist/bigconsole/assistant/usePreviewControl.js +20 -0
- package/dist/bigconsole/components/builder/inspector/AppearanceSection.js +9 -9
- package/dist/bigconsole/components/builder/inspector/DataBindingSection.js +31 -31
- package/dist/bigconsole/components/common/SortBySelect.d.ts +11 -0
- package/dist/bigconsole/components/common/SortBySelect.js +29 -0
- package/dist/bigconsole/components/common/index.d.ts +1 -0
- package/dist/bigconsole/components/common/index.js +1 -0
- 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 +15 -15
- 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 +153 -153
- 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 +134 -134
- 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 +46 -46
- 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 +51 -50
- 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 +77 -76
- package/dist/bigconsole/components/preview/AiPreviewPanel.js +96 -95
- 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 +507 -499
- package/dist/bigconsole/components/widgets/advanced/AdvancedWidgetConfig.js +14 -14
- package/dist/bigconsole/components/widgets/advanced/AdvancedWidgets.js +68 -67
- package/dist/bigconsole/components/widgets/advanced/boxPlotDescription.d.ts +7 -0
- package/dist/bigconsole/components/widgets/advanced/boxPlotDescription.js +12 -0
- 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/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/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/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/constants/backendErrors.js +94 -0
- package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js +10 -10
- package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js +67 -67
- package/dist/bigconsole/hooks/useDashboardLayoutBaseline.d.ts +14 -0
- package/dist/bigconsole/hooks/useDashboardLayoutBaseline.js +32 -0
- package/dist/bigconsole/hooks/useDataSinkAlerts.d.ts +23 -0
- package/dist/bigconsole/hooks/useDataSinkAlerts.js +138 -113
- package/dist/bigconsole/hooks/useDrilldown.js +3 -3
- package/dist/bigconsole/hooks/useGlobalFilters.js +3 -3
- package/dist/bigconsole/pages/AdminPage.js +130 -130
- package/dist/bigconsole/pages/DashboardBuilderPage.js +72 -60
- package/dist/bigconsole/pages/DashboardViewPage.js +244 -221
- package/dist/bigconsole/pages/DashboardsPage.js +269 -221
- package/dist/bigconsole/pages/DataParsersPage.js +180 -157
- package/dist/bigconsole/pages/DataSinkAlertsPage.js +62 -55
- package/dist/bigconsole/pages/DataSinkBuilderPage.js +252 -234
- package/dist/bigconsole/pages/DataSinkViewPage.js +1 -1
- package/dist/bigconsole/pages/DataSinksPage.js +335 -299
- package/dist/bigconsole/pages/DataSourcesPage.js +5 -5
- package/dist/bigconsole/pages/InsightsPage.js +279 -265
- package/dist/bigconsole/pages/OverviewPage.js +47 -47
- package/dist/bigconsole/pages/ParserBuilderPage.js +229 -213
- package/dist/bigconsole/pages/ParserViewPage.js +97 -97
- package/dist/bigconsole/pages/PipelineBuilderPage.js +256 -214
- package/dist/bigconsole/pages/PipelineViewPage.js +146 -146
- package/dist/bigconsole/pages/PipelinesPage.js +107 -88
- package/dist/bigconsole/pages/SettingsPage.js +179 -173
- 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 +34 -34
- package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js +69 -69
- package/dist/bigconsole/renderers/adapters/CustomRenderer.js +46 -46
- package/dist/bigconsole/store/widgetStore.d.ts +12 -0
- package/dist/bigconsole/store/widgetStore.js +3 -1
- package/dist/bigconsole/utils/backendError.d.ts +18 -0
- package/dist/bigconsole/utils/backendError.js +42 -0
- package/dist/bigconsole/utils/dashboardList.d.ts +28 -0
- package/dist/bigconsole/utils/dashboardList.js +15 -0
- package/dist/bigconsole/utils/dataSinkList.d.ts +15 -0
- package/dist/bigconsole/utils/dataSinkList.js +15 -0
- package/dist/bigconsole/utils/formDirty.d.ts +82 -0
- package/dist/bigconsole/utils/formDirty.js +21 -0
- package/dist/bigconsole/utils/insightsDraft.d.ts +29 -0
- package/dist/bigconsole/utils/insightsDraft.js +8 -0
- package/dist/bigconsole/utils/layoutBaseline.d.ts +130 -0
- package/dist/bigconsole/utils/layoutBaseline.js +96 -0
- package/dist/bigconsole/utils/listSort.d.ts +80 -0
- package/dist/bigconsole/utils/listSort.js +85 -0
- package/dist/bigconsole/utils/widgetFormDirty.d.ts +16 -0
- package/dist/bigconsole/utils/widgetFormDirty.js +13 -0
- package/dist/bigconsole/workflowOpen.js +15 -14
- package/package.json +3 -3
|
@@ -6,16 +6,16 @@ import "../common/index.js";
|
|
|
6
6
|
import r from "../../hooks/useBigConsoleAnalytics.js";
|
|
7
7
|
import i from "../../hooks/useImportDashboard.js";
|
|
8
8
|
import "../../hooks/index.js";
|
|
9
|
-
import { memo as a, useCallback as o, useLayoutEffect as
|
|
10
|
-
import { AlertTriangle as
|
|
11
|
-
import { Badge as
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
9
|
+
import { memo as a, useCallback as o, useLayoutEffect as ee, useRef as s, useState as c } from "react";
|
|
10
|
+
import { AlertTriangle as l, ArrowLeft as u, Check as d, FileJson as te, Info as ne, Upload as f, XCircle as re } from "lucide-react";
|
|
11
|
+
import { Badge as p, Button as m, Card as h, CardContent as g, Checkbox as _, Dialog as v, DialogContent as y, DialogDescription as b, DialogFooter as x, DialogHeader as ie, DialogTitle as ae, Input as oe, Label as S, Spinner as se } from "@burdenoff/fe-libs/ui";
|
|
12
|
+
import { useI18n as ce } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
13
|
+
import { Fragment as C, jsx as w, jsxs as T } from "react/jsx-runtime";
|
|
14
14
|
//#region src/bigconsole/components/dashboard/ImportDashboardDialog.tsx
|
|
15
|
-
var
|
|
16
|
-
let { t:
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
var E = a(function({ isOpen: a, onClose: E, onSuccess: D }) {
|
|
16
|
+
let { t: O } = ce(), [k, A] = c("select"), [j, M] = c(null), N = s(0), { currentUser: le, workspaceId: P } = e(), F = `${le?.id ?? ""}|${P ?? ""}`, [I, L] = c(null), [R, z] = c(""), [B, V] = c("PRIVATE"), [H, U] = c(!1), W = s(null), { loading: G, error: K, validationResult: q, importResult: J, validateImport: Y, importDashboard: X, clearState: Z } = i(), Q = r();
|
|
17
|
+
ee(() => (N.current++, Z(), a && (A("select"), M(null), L(null), z(""), V("PRIVATE"), U(!1)), () => {
|
|
18
|
+
N.current++;
|
|
19
19
|
}), [
|
|
20
20
|
a,
|
|
21
21
|
F,
|
|
@@ -24,9 +24,9 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
24
24
|
let ue = o((e) => {
|
|
25
25
|
let t = e.target.files?.[0];
|
|
26
26
|
if (!t) return;
|
|
27
|
-
let n = ++
|
|
28
|
-
if (Z(),
|
|
29
|
-
|
|
27
|
+
let n = ++N.current, r = () => N.current === n;
|
|
28
|
+
if (Z(), A("select"), M(null), L(null), z(""), V("PRIVATE"), U(!1), !t.name.toLowerCase().endsWith(".json")) {
|
|
29
|
+
M(O("bigconsole.dashboards.import.selectJsonFile", "Please select a JSON file"));
|
|
30
30
|
return;
|
|
31
31
|
}
|
|
32
32
|
let i = new FileReader();
|
|
@@ -34,19 +34,19 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
34
34
|
if (!r()) return;
|
|
35
35
|
let t = e.target?.result;
|
|
36
36
|
if (typeof t != "string") {
|
|
37
|
-
|
|
37
|
+
M(O("bigconsole.dashboards.import.failedToReadFile", "Failed to read file"));
|
|
38
38
|
return;
|
|
39
39
|
}
|
|
40
40
|
L(t);
|
|
41
41
|
let n = await Y(t);
|
|
42
|
-
r() && (n ? (
|
|
42
|
+
r() && (n ? (A("preview"), z(n.dashboardInfo?.name ?? "")) : W.current && (W.current.value = ""));
|
|
43
43
|
}, i.onerror = () => {
|
|
44
|
-
r() &&
|
|
44
|
+
r() && M(O("bigconsole.dashboards.import.failedToReadFile", "Failed to read file"));
|
|
45
45
|
}, i.readAsText(t);
|
|
46
46
|
}, [
|
|
47
47
|
Z,
|
|
48
48
|
Y,
|
|
49
|
-
|
|
49
|
+
O
|
|
50
50
|
]), de = o((e) => {
|
|
51
51
|
e.preventDefault();
|
|
52
52
|
let t = e.dataTransfer.files?.[0];
|
|
@@ -56,8 +56,8 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
56
56
|
}
|
|
57
57
|
}, []), fe = o(async () => {
|
|
58
58
|
if (!I) return;
|
|
59
|
-
let e =
|
|
60
|
-
|
|
59
|
+
let e = N.current;
|
|
60
|
+
A("importing");
|
|
61
61
|
let n = {
|
|
62
62
|
name: R.trim() || void 0,
|
|
63
63
|
visibility: B,
|
|
@@ -66,83 +66,83 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
66
66
|
Q("bigconsole.dashboard.import_clicked", { source: "import" });
|
|
67
67
|
try {
|
|
68
68
|
let t = await X(I, n);
|
|
69
|
-
if (
|
|
70
|
-
t?.success && t.dashboard ? (
|
|
69
|
+
if (N.current !== e) return;
|
|
70
|
+
t?.success && t.dashboard ? (A("complete"), Q("bigconsole.dashboard.imported", {
|
|
71
71
|
dashboardId: t.dashboard.id,
|
|
72
72
|
source: "import",
|
|
73
73
|
originalUpdated: !1
|
|
74
|
-
}),
|
|
74
|
+
}), D?.(t.dashboard.id, t.dashboard.name, !1)) : A("preview");
|
|
75
75
|
} catch (n) {
|
|
76
|
-
if (
|
|
76
|
+
if (N.current !== e) return;
|
|
77
77
|
if (t(n, "project")) {
|
|
78
|
-
|
|
78
|
+
E();
|
|
79
79
|
return;
|
|
80
80
|
}
|
|
81
|
-
|
|
81
|
+
A("preview");
|
|
82
82
|
}
|
|
83
83
|
}, [
|
|
84
84
|
Q,
|
|
85
85
|
I,
|
|
86
86
|
X,
|
|
87
87
|
R,
|
|
88
|
-
T,
|
|
89
88
|
E,
|
|
89
|
+
D,
|
|
90
90
|
H,
|
|
91
91
|
B
|
|
92
|
-
]), $ = !G &&
|
|
93
|
-
return /* @__PURE__ */
|
|
92
|
+
]), $ = !G && k !== "importing";
|
|
93
|
+
return /* @__PURE__ */ w(v, {
|
|
94
94
|
open: a,
|
|
95
|
-
onOpenChange: (e) => !e && $ &&
|
|
96
|
-
children: /* @__PURE__ */
|
|
95
|
+
onOpenChange: (e) => !e && $ && E(),
|
|
96
|
+
children: /* @__PURE__ */ T(y, {
|
|
97
97
|
className: "sm:max-w-lg flex max-h-[calc(100dvh-3rem)] flex-col overflow-hidden",
|
|
98
98
|
children: [
|
|
99
|
-
/* @__PURE__ */
|
|
99
|
+
/* @__PURE__ */ T(ie, {
|
|
100
100
|
className: "shrink-0",
|
|
101
|
-
children: [/* @__PURE__ */
|
|
101
|
+
children: [/* @__PURE__ */ T("div", {
|
|
102
102
|
className: "flex items-center gap-3",
|
|
103
|
-
children: [/* @__PURE__ */
|
|
103
|
+
children: [/* @__PURE__ */ w("div", {
|
|
104
104
|
className: "flex size-10 items-center justify-center rounded-lg bg-action-primary-bg/10",
|
|
105
|
-
children: /* @__PURE__ */
|
|
106
|
-
}), /* @__PURE__ */
|
|
107
|
-
}), /* @__PURE__ */
|
|
105
|
+
children: /* @__PURE__ */ w(f, { className: "size-5 text-primary" })
|
|
106
|
+
}), /* @__PURE__ */ w(ae, { children: O("bigconsole.dashboards.import.title", "Import Dashboard") })]
|
|
107
|
+
}), /* @__PURE__ */ w(b, { children: O("bigconsole.dashboards.import.description", "Upload a Dashboard export file to create a new copy in this workspace.") })]
|
|
108
108
|
}),
|
|
109
|
-
/* @__PURE__ */
|
|
109
|
+
/* @__PURE__ */ T("div", {
|
|
110
110
|
className: "min-h-0 flex-1 overflow-y-auto py-4 space-y-4",
|
|
111
111
|
children: [
|
|
112
|
-
|
|
112
|
+
k === "select" && /* @__PURE__ */ T("div", {
|
|
113
113
|
onDragOver: (e) => e.preventDefault(),
|
|
114
114
|
onDrop: de,
|
|
115
115
|
className: "border-2 border-dashed rounded-lg p-8 text-center hover:border-primary transition-colors",
|
|
116
116
|
children: [
|
|
117
|
-
/* @__PURE__ */
|
|
118
|
-
/* @__PURE__ */
|
|
117
|
+
/* @__PURE__ */ w(te, { className: "size-12 mx-auto text-text-secondary mb-4" }),
|
|
118
|
+
/* @__PURE__ */ w("p", {
|
|
119
119
|
className: "text-sm mb-2",
|
|
120
|
-
children:
|
|
120
|
+
children: O("bigconsole.dashboards.import.dropzoneTitle", "Drag and drop a dashboard export file here")
|
|
121
121
|
}),
|
|
122
|
-
/* @__PURE__ */
|
|
122
|
+
/* @__PURE__ */ w("p", {
|
|
123
123
|
className: "text-xs text-text-secondary mb-4",
|
|
124
|
-
children:
|
|
124
|
+
children: O("bigconsole.dashboards.import.or", "or")
|
|
125
125
|
}),
|
|
126
|
-
/* @__PURE__ */
|
|
126
|
+
/* @__PURE__ */ w("input", {
|
|
127
127
|
ref: W,
|
|
128
128
|
type: "file",
|
|
129
129
|
accept: ".json",
|
|
130
130
|
onChange: ue,
|
|
131
131
|
className: "hidden"
|
|
132
132
|
}),
|
|
133
|
-
/* @__PURE__ */
|
|
133
|
+
/* @__PURE__ */ w(m, {
|
|
134
134
|
onClick: () => W.current?.click(),
|
|
135
135
|
disabled: G,
|
|
136
|
-
children:
|
|
136
|
+
children: O("bigconsole.dashboards.import.browseFiles", "Browse Files")
|
|
137
137
|
}),
|
|
138
|
-
/* @__PURE__ */
|
|
138
|
+
/* @__PURE__ */ w("p", {
|
|
139
139
|
className: "text-xs text-text-secondary mt-4",
|
|
140
|
-
children:
|
|
140
|
+
children: O("bigconsole.dashboards.import.supportedFilesHint", "Only .json files exported from BigConsole are supported")
|
|
141
141
|
})
|
|
142
142
|
]
|
|
143
143
|
}),
|
|
144
|
-
(
|
|
145
|
-
/* @__PURE__ */
|
|
144
|
+
(k === "preview" || k === "importing") && q && /* @__PURE__ */ T(C, { children: [
|
|
145
|
+
/* @__PURE__ */ T(n, {
|
|
146
146
|
headingLevel: 3,
|
|
147
147
|
emphasis: "muted",
|
|
148
148
|
padding: "compact",
|
|
@@ -150,80 +150,80 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
150
150
|
"data-testid": "import-summary",
|
|
151
151
|
bodyClassName: "space-y-2",
|
|
152
152
|
children: [
|
|
153
|
-
/* @__PURE__ */
|
|
153
|
+
/* @__PURE__ */ T("div", {
|
|
154
154
|
className: "flex items-center justify-between",
|
|
155
|
-
children: [/* @__PURE__ */
|
|
155
|
+
children: [/* @__PURE__ */ w("span", {
|
|
156
156
|
className: "text-sm text-text-secondary",
|
|
157
|
-
children:
|
|
158
|
-
}), /* @__PURE__ */
|
|
157
|
+
children: O("bigconsole.dashboards.import.fieldDashboard", "Dashboard")
|
|
158
|
+
}), /* @__PURE__ */ w("span", {
|
|
159
159
|
className: "text-sm font-medium",
|
|
160
160
|
children: q.dashboardInfo.name
|
|
161
161
|
})]
|
|
162
162
|
}),
|
|
163
|
-
q.dashboardInfo.description && /* @__PURE__ */
|
|
163
|
+
q.dashboardInfo.description && /* @__PURE__ */ T("div", {
|
|
164
164
|
className: "flex items-start justify-between",
|
|
165
|
-
children: [/* @__PURE__ */
|
|
165
|
+
children: [/* @__PURE__ */ w("span", {
|
|
166
166
|
className: "text-sm text-text-secondary",
|
|
167
|
-
children:
|
|
168
|
-
}), /* @__PURE__ */
|
|
167
|
+
children: O("bigconsole.dashboards.import.fieldDescription", "Description")
|
|
168
|
+
}), /* @__PURE__ */ w("span", {
|
|
169
169
|
className: "text-sm text-right max-w-[60%] truncate",
|
|
170
170
|
children: q.dashboardInfo.description
|
|
171
171
|
})]
|
|
172
172
|
}),
|
|
173
|
-
/* @__PURE__ */
|
|
173
|
+
/* @__PURE__ */ T("div", {
|
|
174
174
|
className: "flex items-center justify-between",
|
|
175
|
-
children: [/* @__PURE__ */
|
|
175
|
+
children: [/* @__PURE__ */ w("span", {
|
|
176
176
|
className: "text-sm text-text-secondary",
|
|
177
|
-
children:
|
|
178
|
-
}), /* @__PURE__ */
|
|
177
|
+
children: O("bigconsole.dashboards.import.fieldPages", "Pages")
|
|
178
|
+
}), /* @__PURE__ */ w(p, {
|
|
179
179
|
variant: "secondary",
|
|
180
180
|
children: q.dashboardInfo.pageCount
|
|
181
181
|
})]
|
|
182
182
|
}),
|
|
183
|
-
/* @__PURE__ */
|
|
183
|
+
/* @__PURE__ */ T("div", {
|
|
184
184
|
className: "flex items-center justify-between",
|
|
185
|
-
children: [/* @__PURE__ */
|
|
185
|
+
children: [/* @__PURE__ */ w("span", {
|
|
186
186
|
className: "text-sm text-text-secondary",
|
|
187
|
-
children:
|
|
188
|
-
}), /* @__PURE__ */
|
|
187
|
+
children: O("bigconsole.dashboards.import.fieldWidgets", "Widgets")
|
|
188
|
+
}), /* @__PURE__ */ w(p, {
|
|
189
189
|
variant: "secondary",
|
|
190
190
|
children: q.dashboardInfo.widgetCount
|
|
191
191
|
})]
|
|
192
192
|
}),
|
|
193
|
-
q.dashboardInfo.exportedFrom && /* @__PURE__ */
|
|
193
|
+
q.dashboardInfo.exportedFrom && /* @__PURE__ */ T("div", {
|
|
194
194
|
className: "flex items-center justify-between",
|
|
195
|
-
children: [/* @__PURE__ */
|
|
195
|
+
children: [/* @__PURE__ */ w("span", {
|
|
196
196
|
className: "text-sm text-text-secondary",
|
|
197
|
-
children:
|
|
198
|
-
}), /* @__PURE__ */
|
|
197
|
+
children: O("bigconsole.dashboards.import.fieldSourceId", "Source ID")
|
|
198
|
+
}), /* @__PURE__ */ w("span", {
|
|
199
199
|
className: "text-xs text-text-secondary font-mono truncate max-w-[180px]",
|
|
200
200
|
children: q.dashboardInfo.exportedFrom
|
|
201
201
|
})]
|
|
202
202
|
}),
|
|
203
|
-
/* @__PURE__ */
|
|
203
|
+
/* @__PURE__ */ T("div", {
|
|
204
204
|
className: "flex flex-wrap items-center justify-between gap-x-4",
|
|
205
|
-
children: [/* @__PURE__ */
|
|
205
|
+
children: [/* @__PURE__ */ w("span", {
|
|
206
206
|
className: "text-sm text-text-secondary",
|
|
207
|
-
children:
|
|
208
|
-
}), /* @__PURE__ */
|
|
207
|
+
children: O("bigconsole.dashboards.import.fieldSchemaVersion", "Schema Version")
|
|
208
|
+
}), /* @__PURE__ */ w("span", {
|
|
209
209
|
className: "text-xs text-text-secondary",
|
|
210
210
|
children: q.dashboardInfo.schemaVersion
|
|
211
211
|
})]
|
|
212
212
|
})
|
|
213
213
|
]
|
|
214
214
|
}),
|
|
215
|
-
q.errors.length > 0 && /* @__PURE__ */
|
|
215
|
+
q.errors.length > 0 && /* @__PURE__ */ w(n, {
|
|
216
216
|
headingLevel: 3,
|
|
217
217
|
tone: "danger",
|
|
218
218
|
padding: "compact",
|
|
219
|
-
icon: /* @__PURE__ */
|
|
220
|
-
title:
|
|
219
|
+
icon: /* @__PURE__ */ w(re, { className: "size-4" }),
|
|
220
|
+
title: O("bigconsole.dashboards.import.errorsCount", "Errors ({{count}})", { count: q.errors.length }),
|
|
221
221
|
description: "These must be fixed in the export file before it can be imported.",
|
|
222
222
|
"data-testid": "import-errors",
|
|
223
|
-
children: /* @__PURE__ */
|
|
223
|
+
children: /* @__PURE__ */ w("ul", {
|
|
224
224
|
className: "space-y-1 text-xs text-status-error-text",
|
|
225
|
-
children: q.errors.map((e) => /* @__PURE__ */
|
|
226
|
-
/* @__PURE__ */
|
|
225
|
+
children: q.errors.map((e) => /* @__PURE__ */ T("li", { children: [
|
|
226
|
+
/* @__PURE__ */ T("span", {
|
|
227
227
|
className: "font-mono",
|
|
228
228
|
children: [
|
|
229
229
|
"[",
|
|
@@ -236,20 +236,20 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
236
236
|
] }, `${e.code}-${e.message}`))
|
|
237
237
|
})
|
|
238
238
|
}),
|
|
239
|
-
q.warnings.length > 0 && /* @__PURE__ */
|
|
239
|
+
q.warnings.length > 0 && /* @__PURE__ */ w(n, {
|
|
240
240
|
headingLevel: 3,
|
|
241
241
|
tone: "warning",
|
|
242
242
|
padding: "compact",
|
|
243
|
-
icon: /* @__PURE__ */
|
|
244
|
-
title:
|
|
243
|
+
icon: /* @__PURE__ */ w(l, { className: "size-4" }),
|
|
244
|
+
title: O("bigconsole.dashboards.import.warningsCount", "Warnings ({{count}})", { count: q.warnings.length }),
|
|
245
245
|
description: "Advisory only — acknowledge them below to continue.",
|
|
246
246
|
"data-testid": "import-warnings",
|
|
247
|
-
children: /* @__PURE__ */
|
|
247
|
+
children: /* @__PURE__ */ w("ul", {
|
|
248
248
|
className: "space-y-1 text-xs text-[var(--color-status-warning-text)]",
|
|
249
|
-
children: q.warnings.map((e) => /* @__PURE__ */
|
|
249
|
+
children: q.warnings.map((e) => /* @__PURE__ */ T("li", {
|
|
250
250
|
className: "break-words",
|
|
251
251
|
children: [
|
|
252
|
-
/* @__PURE__ */
|
|
252
|
+
/* @__PURE__ */ T("span", {
|
|
253
253
|
className: "font-mono",
|
|
254
254
|
children: [
|
|
255
255
|
"[",
|
|
@@ -259,7 +259,7 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
259
259
|
}),
|
|
260
260
|
" ",
|
|
261
261
|
e.message,
|
|
262
|
-
e.suggestion && /* @__PURE__ */
|
|
262
|
+
e.suggestion && /* @__PURE__ */ w("p", {
|
|
263
263
|
className: "mt-1",
|
|
264
264
|
children: e.suggestion
|
|
265
265
|
})
|
|
@@ -267,142 +267,142 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
267
267
|
}, `${e.code}-${e.message}`))
|
|
268
268
|
})
|
|
269
269
|
}),
|
|
270
|
-
q.isValid && /* @__PURE__ */
|
|
270
|
+
q.isValid && /* @__PURE__ */ T(n, {
|
|
271
271
|
headingLevel: 3,
|
|
272
|
-
title:
|
|
272
|
+
title: O("bigconsole.dashboards.import.optionsTitle", "Import Options"),
|
|
273
273
|
description: "How this file lands in the workspace.",
|
|
274
274
|
"data-testid": "import-options",
|
|
275
275
|
bodyClassName: "space-y-4",
|
|
276
276
|
children: [
|
|
277
|
-
/* @__PURE__ */
|
|
277
|
+
/* @__PURE__ */ w(n, {
|
|
278
278
|
headingLevel: 4,
|
|
279
279
|
tone: "info",
|
|
280
|
-
"aria-label":
|
|
280
|
+
"aria-label": O("bigconsole.dashboards.import.infoRegionLabel", "What this import will do"),
|
|
281
281
|
padding: "compact",
|
|
282
282
|
"data-testid": "import-info",
|
|
283
|
-
children: /* @__PURE__ */
|
|
283
|
+
children: /* @__PURE__ */ T("div", {
|
|
284
284
|
className: "flex items-start gap-2",
|
|
285
|
-
children: [/* @__PURE__ */
|
|
285
|
+
children: [/* @__PURE__ */ w(ne, { className: "size-4 mt-0.5 shrink-0 text-[var(--color-status-info-text)]" }), /* @__PURE__ */ T("div", {
|
|
286
286
|
className: "text-xs text-[var(--color-status-info-text)]",
|
|
287
|
-
children: [/* @__PURE__ */
|
|
287
|
+
children: [/* @__PURE__ */ w("p", {
|
|
288
288
|
className: "font-medium mb-1",
|
|
289
|
-
children:
|
|
290
|
-
}), /* @__PURE__ */
|
|
289
|
+
children: O("bigconsole.dashboards.import.newDashboardTitle", "A new dashboard will be created")
|
|
290
|
+
}), /* @__PURE__ */ w("p", { children: O("bigconsole.dashboards.import.newDashboardBody", "Import as a new dashboard with the specified configuration.") })]
|
|
291
291
|
})]
|
|
292
292
|
})
|
|
293
293
|
}),
|
|
294
|
-
/* @__PURE__ */
|
|
294
|
+
/* @__PURE__ */ T("div", {
|
|
295
295
|
className: "space-y-2",
|
|
296
|
-
children: [/* @__PURE__ */ S
|
|
296
|
+
children: [/* @__PURE__ */ w(S, {
|
|
297
297
|
htmlFor: "import-name",
|
|
298
|
-
children:
|
|
299
|
-
}), /* @__PURE__ */
|
|
298
|
+
children: O("bigconsole.dashboards.import.dashboardNameLabel", "Dashboard Name")
|
|
299
|
+
}), /* @__PURE__ */ w(oe, {
|
|
300
300
|
id: "import-name",
|
|
301
301
|
type: "text",
|
|
302
302
|
value: R,
|
|
303
303
|
onChange: (e) => z(e.target.value),
|
|
304
304
|
placeholder: q.dashboardInfo.name,
|
|
305
|
-
disabled:
|
|
305
|
+
disabled: k === "importing"
|
|
306
306
|
})]
|
|
307
307
|
}),
|
|
308
|
-
/* @__PURE__ */
|
|
308
|
+
/* @__PURE__ */ T("div", {
|
|
309
309
|
className: "space-y-2",
|
|
310
|
-
children: [/* @__PURE__ */ S
|
|
310
|
+
children: [/* @__PURE__ */ w(S, { children: O("bigconsole.dashboards.import.visibilityLabel", "Visibility") }), /* @__PURE__ */ w("div", {
|
|
311
311
|
className: "flex flex-wrap gap-2",
|
|
312
312
|
children: [
|
|
313
313
|
"PRIVATE",
|
|
314
314
|
"WORKSPACE",
|
|
315
315
|
"PUBLIC"
|
|
316
|
-
].map((e) => /* @__PURE__ */
|
|
316
|
+
].map((e) => /* @__PURE__ */ w(m, {
|
|
317
317
|
type: "button",
|
|
318
318
|
variant: B === e ? "default" : "outline",
|
|
319
319
|
size: "sm",
|
|
320
320
|
onClick: () => V(e),
|
|
321
|
-
disabled:
|
|
322
|
-
children: e === "PRIVATE" ?
|
|
321
|
+
disabled: k === "importing",
|
|
322
|
+
children: e === "PRIVATE" ? O("bigconsole.dashboards.import.visibilityPrivate", "Private") : e === "WORKSPACE" ? O("bigconsole.dashboards.import.visibilityWorkspace", "Workspace") : O("bigconsole.dashboards.import.visibilityPublic", "Public")
|
|
323
323
|
}, e))
|
|
324
324
|
})]
|
|
325
325
|
}),
|
|
326
|
-
q.warnings.length > 0 && /* @__PURE__ */
|
|
326
|
+
q.warnings.length > 0 && /* @__PURE__ */ T("div", {
|
|
327
327
|
className: "flex items-start space-x-3",
|
|
328
|
-
children: [/* @__PURE__ */
|
|
328
|
+
children: [/* @__PURE__ */ w(_, {
|
|
329
329
|
id: "skipWarnings",
|
|
330
330
|
checked: H,
|
|
331
331
|
onCheckedChange: (e) => U(e === !0),
|
|
332
|
-
disabled:
|
|
333
|
-
}), /* @__PURE__ */
|
|
332
|
+
disabled: k === "importing"
|
|
333
|
+
}), /* @__PURE__ */ w("div", {
|
|
334
334
|
className: "grid gap-1.5 leading-none",
|
|
335
|
-
children: /* @__PURE__ */ S
|
|
335
|
+
children: /* @__PURE__ */ w(S, {
|
|
336
336
|
htmlFor: "skipWarnings",
|
|
337
337
|
className: "cursor-pointer",
|
|
338
|
-
children:
|
|
338
|
+
children: O("bigconsole.dashboards.import.acknowledgeWarnings", "Acknowledge warnings and proceed")
|
|
339
339
|
})
|
|
340
340
|
})]
|
|
341
341
|
})
|
|
342
342
|
]
|
|
343
343
|
})
|
|
344
344
|
] }),
|
|
345
|
-
|
|
345
|
+
k === "complete" && J?.success && /* @__PURE__ */ w("div", {
|
|
346
346
|
className: "text-center py-6",
|
|
347
|
-
children: /* @__PURE__ */ C
|
|
348
|
-
/* @__PURE__ */
|
|
347
|
+
children: /* @__PURE__ */ T(C, { children: [
|
|
348
|
+
/* @__PURE__ */ w("div", {
|
|
349
349
|
className: "mx-auto mb-4 flex size-16 items-center justify-center rounded-full bg-[var(--color-status-success-bgSubtle)]",
|
|
350
|
-
children: /* @__PURE__ */
|
|
350
|
+
children: /* @__PURE__ */ w(d, { className: "size-8 text-status-success-text" })
|
|
351
351
|
}),
|
|
352
|
-
/* @__PURE__ */
|
|
352
|
+
/* @__PURE__ */ w("h3", {
|
|
353
353
|
className: "text-lg font-medium mb-2",
|
|
354
|
-
children:
|
|
354
|
+
children: O("bigconsole.dashboards.import.successTitle", "Import Successful!")
|
|
355
355
|
}),
|
|
356
|
-
/* @__PURE__ */
|
|
356
|
+
/* @__PURE__ */ w("p", {
|
|
357
357
|
className: "text-sm text-text-secondary mb-4",
|
|
358
|
-
children:
|
|
358
|
+
children: O("bigconsole.dashboards.import.successBody", "Dashboard \"{{name}}\" has been created.", { name: J.dashboard?.name ?? "" })
|
|
359
359
|
}),
|
|
360
|
-
J.stats && /* @__PURE__ */
|
|
360
|
+
J.stats && /* @__PURE__ */ w(h, {
|
|
361
361
|
className: "inline-block text-left",
|
|
362
|
-
children: /* @__PURE__ */
|
|
362
|
+
children: /* @__PURE__ */ T(g, {
|
|
363
363
|
className: "p-4",
|
|
364
|
-
children: [/* @__PURE__ */
|
|
364
|
+
children: [/* @__PURE__ */ w("p", {
|
|
365
365
|
className: "text-xs font-medium text-text-secondary mb-2",
|
|
366
|
-
children:
|
|
367
|
-
}), /* @__PURE__ */
|
|
366
|
+
children: O("bigconsole.dashboards.import.summaryTitle", "Import Summary")
|
|
367
|
+
}), /* @__PURE__ */ T("div", {
|
|
368
368
|
className: "grid grid-cols-2 gap-x-6 gap-y-1 text-xs",
|
|
369
369
|
children: [
|
|
370
|
-
/* @__PURE__ */
|
|
370
|
+
/* @__PURE__ */ w("span", {
|
|
371
371
|
className: "text-text-secondary",
|
|
372
|
-
children:
|
|
372
|
+
children: O("bigconsole.dashboards.import.summaryPages", "Pages:")
|
|
373
373
|
}),
|
|
374
|
-
/* @__PURE__ */
|
|
375
|
-
/* @__PURE__ */
|
|
374
|
+
/* @__PURE__ */ w("span", { children: J.stats.pagesCreated }),
|
|
375
|
+
/* @__PURE__ */ w("span", {
|
|
376
376
|
className: "text-text-secondary",
|
|
377
|
-
children:
|
|
377
|
+
children: O("bigconsole.dashboards.import.summaryWidgets", "Widgets:")
|
|
378
378
|
}),
|
|
379
|
-
/* @__PURE__ */
|
|
380
|
-
/* @__PURE__ */
|
|
379
|
+
/* @__PURE__ */ w("span", { children: J.stats.widgetsCreated }),
|
|
380
|
+
/* @__PURE__ */ w("span", {
|
|
381
381
|
className: "text-text-secondary",
|
|
382
|
-
children:
|
|
382
|
+
children: O("bigconsole.dashboards.import.summaryActions", "Actions:")
|
|
383
383
|
}),
|
|
384
|
-
/* @__PURE__ */
|
|
384
|
+
/* @__PURE__ */ w("span", { children: J.stats.actionsCreated })
|
|
385
385
|
]
|
|
386
386
|
})]
|
|
387
387
|
})
|
|
388
388
|
})
|
|
389
389
|
] })
|
|
390
390
|
}),
|
|
391
|
-
|
|
391
|
+
j && /* @__PURE__ */ w(n, {
|
|
392
392
|
headingLevel: 3,
|
|
393
393
|
tone: "danger",
|
|
394
394
|
padding: "compact",
|
|
395
395
|
title: "Import failed",
|
|
396
|
-
description:
|
|
396
|
+
description: j
|
|
397
397
|
}),
|
|
398
|
-
K && /* @__PURE__ */
|
|
398
|
+
K && /* @__PURE__ */ w(n, {
|
|
399
399
|
headingLevel: 3,
|
|
400
400
|
tone: "danger",
|
|
401
401
|
padding: "compact",
|
|
402
402
|
title: "Import failed",
|
|
403
403
|
description: K.message
|
|
404
404
|
}),
|
|
405
|
-
J && !J.success && J.errorMessage && /* @__PURE__ */
|
|
405
|
+
J && !J.success && J.errorMessage && /* @__PURE__ */ w(n, {
|
|
406
406
|
headingLevel: 3,
|
|
407
407
|
tone: "danger",
|
|
408
408
|
padding: "compact",
|
|
@@ -411,36 +411,36 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
411
411
|
})
|
|
412
412
|
]
|
|
413
413
|
}),
|
|
414
|
-
/* @__PURE__ */
|
|
414
|
+
/* @__PURE__ */ T(x, {
|
|
415
415
|
className: "shrink-0 flex-wrap gap-2 sm:justify-between",
|
|
416
|
-
children: [/* @__PURE__ */
|
|
416
|
+
children: [/* @__PURE__ */ w("div", { children: k === "preview" && /* @__PURE__ */ T(m, {
|
|
417
417
|
variant: "ghost",
|
|
418
418
|
onClick: () => {
|
|
419
|
-
|
|
419
|
+
N.current++, A("select"), M(null), z(""), V("PRIVATE"), U(!1), L(null), Z();
|
|
420
420
|
},
|
|
421
421
|
disabled: G,
|
|
422
|
-
children: [/* @__PURE__ */
|
|
423
|
-
}) }), /* @__PURE__ */
|
|
422
|
+
children: [/* @__PURE__ */ w(u, { className: "size-4" }), O("bigconsole.dashboards.import.back", "Back")]
|
|
423
|
+
}) }), /* @__PURE__ */ T("div", {
|
|
424
424
|
className: "flex flex-wrap items-center gap-2",
|
|
425
425
|
children: [
|
|
426
|
-
|
|
426
|
+
k !== "complete" && /* @__PURE__ */ w(m, {
|
|
427
427
|
variant: "outline",
|
|
428
|
-
onClick:
|
|
428
|
+
onClick: E,
|
|
429
429
|
disabled: !$,
|
|
430
|
-
children:
|
|
430
|
+
children: O("bigconsole.dashboards.import.cancel", "Cancel")
|
|
431
431
|
}),
|
|
432
|
-
|
|
432
|
+
k === "preview" && q?.isValid && /* @__PURE__ */ T(m, {
|
|
433
433
|
onClick: fe,
|
|
434
434
|
disabled: G || q.warnings.length > 0 && !H,
|
|
435
|
-
children: [/* @__PURE__ */
|
|
435
|
+
children: [/* @__PURE__ */ w(f, { className: "size-4" }), O("bigconsole.dashboards.import.importButton", "Import Dashboard")]
|
|
436
436
|
}),
|
|
437
|
-
|
|
437
|
+
k === "importing" && /* @__PURE__ */ T("div", {
|
|
438
438
|
className: "flex items-center gap-2 text-sm text-text-secondary",
|
|
439
|
-
children: [/* @__PURE__ */
|
|
439
|
+
children: [/* @__PURE__ */ w(se, { className: "size-4" }), O("bigconsole.dashboards.import.importing", "Importing...")]
|
|
440
440
|
}),
|
|
441
|
-
|
|
442
|
-
onClick:
|
|
443
|
-
children:
|
|
441
|
+
k === "complete" && /* @__PURE__ */ w(m, {
|
|
442
|
+
onClick: E,
|
|
443
|
+
children: O("bigconsole.dashboards.import.done", "Done")
|
|
444
444
|
})
|
|
445
445
|
]
|
|
446
446
|
})]
|
|
@@ -450,4 +450,4 @@ var T = a(function({ isOpen: a, onClose: T, onSuccess: E }) {
|
|
|
450
450
|
});
|
|
451
451
|
});
|
|
452
452
|
//#endregion
|
|
453
|
-
export {
|
|
453
|
+
export { E as default };
|