@burdenoff/microfe-bigconsole 2026.1010.12 → 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.
Files changed (161) hide show
  1. package/README.md +19 -0
  2. package/dist/bigconsole/BigConsoleRoot.js +88 -82
  3. package/dist/bigconsole/BigConsoleRoutes.js +163 -136
  4. package/dist/bigconsole/assistant/assistantProduct.js +1 -4
  5. package/dist/bigconsole/assistant/pageContext.d.ts +0 -14
  6. package/dist/bigconsole/assistant/pageContext.js +1 -6
  7. package/dist/bigconsole/assistant/recordAdapters.js +26 -27
  8. package/dist/bigconsole/components/builder/inspector/DataBindingSection.js +31 -31
  9. package/dist/bigconsole/components/common/index.d.ts +0 -1
  10. package/dist/bigconsole/components/common/index.js +0 -1
  11. package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js +44 -44
  12. package/dist/bigconsole/components/dashboard/DashboardCanvas.js +36 -36
  13. package/dist/bigconsole/components/dashboard/DashboardToolbar.js +59 -59
  14. package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js +58 -57
  15. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js +30 -30
  16. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js +41 -41
  17. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js +34 -34
  18. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js +34 -34
  19. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js +110 -110
  20. package/dist/bigconsole/components/dashboard/PublishToStoreDialog.js +21 -21
  21. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js +46 -46
  22. package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.js +164 -173
  23. package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.js +101 -101
  24. package/dist/bigconsole/components/dashboard/TemplateInstallOptions.js +31 -31
  25. package/dist/bigconsole/components/dashboard/TemplateLayoutPreview.js +15 -15
  26. package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.js +1 -1
  27. package/dist/bigconsole/components/dashboard/WidgetPalette.js +165 -163
  28. package/dist/bigconsole/components/datasink/AlertExecutionHistory.js +37 -37
  29. package/dist/bigconsole/components/datasink/AlertRuleEditor.js +66 -66
  30. package/dist/bigconsole/components/datasink/CacheTTLSelector.js +35 -35
  31. package/dist/bigconsole/components/datasink/DataSinkCard.js +50 -51
  32. package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js +18 -18
  33. package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js +20 -20
  34. package/dist/bigconsole/components/datasink/ImportDataGuideDialog.js +47 -47
  35. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js +91 -91
  36. package/dist/bigconsole/components/datasink/RefreshTypeSelector.js +35 -35
  37. package/dist/bigconsole/components/parser/DataSinkSelector.js +40 -40
  38. package/dist/bigconsole/components/parser/ImportParserDialog.js +120 -120
  39. package/dist/bigconsole/components/parser/ParserSelector.js +51 -51
  40. package/dist/bigconsole/components/pipeline/PipelineScopePicker.js +10 -10
  41. package/dist/bigconsole/components/preview/AiPreviewMiniPanel.js +76 -77
  42. package/dist/bigconsole/components/preview/AiPreviewPanel.js +95 -96
  43. package/dist/bigconsole/components/widgets/ActionConfigDialog.js +4 -4
  44. package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js +93 -93
  45. package/dist/bigconsole/components/widgets/PropertiesPanel.js +499 -507
  46. package/dist/bigconsole/components/widgets/WidgetRegistry.js +0 -1
  47. package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js +4 -4
  48. package/dist/bigconsole/components/widgets/chart/ChartConfig.js +48 -48
  49. package/dist/bigconsole/components/widgets/comments/WidgetComments.js +46 -46
  50. package/dist/bigconsole/components/widgets/custom/CustomWidget.js +73 -131
  51. package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js +61 -61
  52. package/dist/bigconsole/components/widgets/form/FormWidget.js +36 -36
  53. package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js +42 -42
  54. package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.js +25 -25
  55. package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.d.ts +28 -9
  56. package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.js +115 -42
  57. package/dist/bigconsole/components/widgets/iframe-widget/framePolicy.d.ts +20 -0
  58. package/dist/bigconsole/components/widgets/iframe-widget/framePolicy.js +10 -0
  59. package/dist/bigconsole/components/widgets/iframe-widget/index.d.ts +2 -1
  60. package/dist/bigconsole/components/widgets/iframe-widget/index.js +3 -2
  61. package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js +4 -4
  62. package/dist/bigconsole/components/widgets/list/ListConfig.js +30 -30
  63. package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js +38 -38
  64. package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js +9 -9
  65. package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js +9 -9
  66. package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js +49 -49
  67. package/dist/bigconsole/components/widgets/progress/ProgressConfig.js +39 -39
  68. package/dist/bigconsole/components/widgets/table/TableConfig.js +73 -73
  69. package/dist/bigconsole/components/widgets/text-widget/TextWidget.js +110 -27
  70. package/dist/bigconsole/components/widgets/text-widget/textData.d.ts +6 -0
  71. package/dist/bigconsole/components/widgets/text-widget/textData.js +17 -14
  72. package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js +64 -64
  73. package/dist/bigconsole/components/workflow/WorkflowOpenGuard.js +15 -15
  74. package/dist/bigconsole/components/workflow/WorkflowSinkLinkForm.js +15 -15
  75. package/dist/bigconsole/context/BigConsoleContext.d.ts +10 -0
  76. package/dist/bigconsole/context/BigConsoleContext.js +47 -30
  77. package/dist/bigconsole/context/index.d.ts +1 -1
  78. package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js +58 -49
  79. package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js +74 -72
  80. package/dist/bigconsole/customWidget/proposalPreview.d.ts +5 -0
  81. package/dist/bigconsole/customWidget/proposalPreview.js +31 -0
  82. package/dist/bigconsole/hooks/useDataSinkAlerts.d.ts +0 -23
  83. package/dist/bigconsole/hooks/useDataSinkAlerts.js +113 -138
  84. package/dist/bigconsole/hooks/useDataSinkOperations.d.ts +7 -0
  85. package/dist/bigconsole/hooks/useDataSinkOperations.js +109 -98
  86. package/dist/bigconsole/hooks/useDataSinkSubscription.js +0 -1
  87. package/dist/bigconsole/hooks/useDrilldown.js +68 -67
  88. package/dist/bigconsole/hooks/useExportDataSink.js +1 -1
  89. package/dist/bigconsole/hooks/useGlobalFilters.js +3 -3
  90. package/dist/bigconsole/hooks/useImportDataSink.js +102 -90
  91. package/dist/bigconsole/pages/AdminPage.js +130 -130
  92. package/dist/bigconsole/pages/DashboardBuilderPage.js +60 -72
  93. package/dist/bigconsole/pages/DashboardViewPage.js +235 -258
  94. package/dist/bigconsole/pages/DashboardsPage.js +221 -269
  95. package/dist/bigconsole/pages/DataParsersPage.js +157 -180
  96. package/dist/bigconsole/pages/DataSinkAlertsPage.js +55 -62
  97. package/dist/bigconsole/pages/DataSinkBuilderPage.js +318 -295
  98. package/dist/bigconsole/pages/DataSinkViewPage.js +256 -255
  99. package/dist/bigconsole/pages/DataSinksPage.js +216 -251
  100. package/dist/bigconsole/pages/DataSourcesPage.js +5 -5
  101. package/dist/bigconsole/pages/InsightsPage.js +265 -279
  102. package/dist/bigconsole/pages/OverviewPage.js +47 -47
  103. package/dist/bigconsole/pages/ParserBuilderPage.js +213 -229
  104. package/dist/bigconsole/pages/ParserViewPage.js +97 -97
  105. package/dist/bigconsole/pages/PipelineBuilderPage.js +214 -256
  106. package/dist/bigconsole/pages/PipelineViewPage.js +146 -146
  107. package/dist/bigconsole/pages/PipelinesPage.js +88 -107
  108. package/dist/bigconsole/pages/SettingsPage.js +173 -179
  109. package/dist/bigconsole/pages/WidgetDemoPage.js +42 -42
  110. package/dist/bigconsole/pages/WorkflowViewPage.js +1 -1
  111. package/dist/bigconsole/pages/WorkflowsPage.js +141 -141
  112. package/dist/bigconsole/providers/BigConsoleQuotaProvider.js +12 -12
  113. package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js +235 -122
  114. package/dist/bigconsole/renderers/adapters/BlockKitRenderer.d.ts +6 -1
  115. package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js +151 -151
  116. package/dist/bigconsole/renderers/adapters/CustomRenderer.js +46 -46
  117. package/dist/bigconsole/renderers/adapters/adaptiveCardContent.d.ts +29 -0
  118. package/dist/bigconsole/renderers/adapters/adaptiveCardContent.js +51 -0
  119. package/dist/bigconsole/store/widgetStore.d.ts +0 -12
  120. package/dist/bigconsole/store/widgetStore.js +1 -3
  121. package/dist/bigconsole/types/index.d.ts +17 -2
  122. package/dist/bigconsole/utils/backendError.d.ts +0 -18
  123. package/dist/bigconsole/utils/dataSinkPayload.d.ts +48 -0
  124. package/dist/bigconsole/utils/dataSinkPayload.js +38 -0
  125. package/dist/bigconsole/utils/index.d.ts +2 -0
  126. package/dist/bigconsole/utils/safeUrl.d.ts +79 -0
  127. package/dist/bigconsole/utils/safeUrl.js +93 -0
  128. package/dist/bigconsole/utils/sanitizeHtml.d.ts +16 -0
  129. package/dist/bigconsole/utils/sanitizeHtml.js +67 -0
  130. package/dist/bigconsole/workflowOpen.js +14 -15
  131. package/dist/generated/wspace-operations.d.ts +138 -8
  132. package/dist/generated/wspace-operations.js +281 -240
  133. package/dist/node_modules/dompurify/dist/purify.es.js +800 -0
  134. package/package.json +9 -5
  135. package/dist/bigconsole/assistant/displayCopy.d.ts +0 -32
  136. package/dist/bigconsole/assistant/pageControls.d.ts +0 -81
  137. package/dist/bigconsole/assistant/pageControls.js +0 -169
  138. package/dist/bigconsole/assistant/previewControl.d.ts +0 -16
  139. package/dist/bigconsole/assistant/previewControl.js +0 -10
  140. package/dist/bigconsole/assistant/usePreviewControl.d.ts +0 -2
  141. package/dist/bigconsole/assistant/usePreviewControl.js +0 -20
  142. package/dist/bigconsole/components/common/SortBySelect.d.ts +0 -11
  143. package/dist/bigconsole/components/common/SortBySelect.js +0 -29
  144. package/dist/bigconsole/constants/backendErrors.js +0 -94
  145. package/dist/bigconsole/hooks/useDashboardLayoutBaseline.d.ts +0 -14
  146. package/dist/bigconsole/hooks/useDashboardLayoutBaseline.js +0 -32
  147. package/dist/bigconsole/utils/backendError.js +0 -42
  148. package/dist/bigconsole/utils/dashboardList.d.ts +0 -28
  149. package/dist/bigconsole/utils/dashboardList.js +0 -15
  150. package/dist/bigconsole/utils/dataSinkList.d.ts +0 -15
  151. package/dist/bigconsole/utils/dataSinkList.js +0 -15
  152. package/dist/bigconsole/utils/formDirty.d.ts +0 -82
  153. package/dist/bigconsole/utils/formDirty.js +0 -21
  154. package/dist/bigconsole/utils/insightsDraft.d.ts +0 -29
  155. package/dist/bigconsole/utils/insightsDraft.js +0 -8
  156. package/dist/bigconsole/utils/layoutBaseline.d.ts +0 -130
  157. package/dist/bigconsole/utils/layoutBaseline.js +0 -96
  158. package/dist/bigconsole/utils/listSort.d.ts +0 -80
  159. package/dist/bigconsole/utils/listSort.js +0 -85
  160. package/dist/bigconsole/utils/widgetFormDirty.d.ts +0 -16
  161. package/dist/bigconsole/utils/widgetFormDirty.js +0 -13
@@ -2,31 +2,26 @@ import { useBigConsoleNavigate as e } from "../context/BigConsoleContext.js";
2
2
  import "../context/index.js";
3
3
  import { reportBigConsoleQuotaError as t } from "../utils/quota.js";
4
4
  import { Section as n, SectionStack as r } from "../components/common/Section.js";
5
- import { SortBySelect as i } from "../components/common/SortBySelect.js";
6
5
  import "../components/common/index.js";
7
- import a from "../hooks/useDashboardOperations.js";
6
+ import i from "../hooks/useDashboardOperations.js";
8
7
  import "../hooks/index.js";
9
- import { BIGCONSOLE_PERMISSIONS as o } from "../../constants/permissions.js";
10
- import { useTr as s } from "../../shared/hooks/useTr.js";
8
+ import { BIGCONSOLE_PERMISSIONS as a } from "../../constants/permissions.js";
9
+ import { useTr as o } from "../../shared/hooks/useTr.js";
11
10
  import ee from "../components/dashboard/CreateDashboardDialog.js";
12
- import c, { useDashboardStatusLabel as te } from "../components/dashboard/DashboardStatusPill.js";
13
- import { isNative as l, nativeConfirm as ne, nativeImpact as u, nativeNotify as d } from "../../utils/nativeBridge.js";
14
- import re from "../components/dashboard/ImportDashboardDialog.js";
15
- import { LIST_SORT_COPY as ie, listSortOptions as ae } from "../utils/listSort.js";
16
- import { dashboardsListControls as oe } from "../assistant/pageControls.js";
17
- import { selectDashboards as se } from "../utils/dashboardList.js";
18
- import { resolveCreateParam as ce, withoutCreateParam as le } from "../utils/createDialogParam.js";
19
- import { memo as f, useCallback as p, useEffect as m, useMemo as h, useState as g } from "react";
20
- import { useSearchParams as ue } from "react-router";
21
- import { AccessDenied as de, PermissionButton as _ } from "@burdenoff/fe-libs/shared/components";
22
- import { usePermissions as fe } from "@burdenoff/fe-libs/shared/providers/shell";
23
- import { Calendar as pe, ChevronLeft as me, ChevronRight as he, Copy as ge, FileText as _e, Layers as ve, LayoutDashboard as v, LayoutGrid as ye, List as be, Pencil as xe, Plus as Se, Search as Ce, Trash2 as we, Upload as Te } from "lucide-react";
24
- import { AuroraBackground as y, Badge as b, Button as x, CTAOverflowMenu as S, Card as Ee, CardContent as De, GlassCard as Oe, GradientText as C, IllustratedEmptyState as ke, Input as Ae, PagePurpose as je, Spinner as w } from "@burdenoff/fe-libs/ui";
11
+ import s, { useDashboardStatusLabel as te } from "../components/dashboard/DashboardStatusPill.js";
12
+ import { isNative as c, nativeConfirm as ne, nativeImpact as re, nativeNotify as l } from "../../utils/nativeBridge.js";
13
+ import ie from "../components/dashboard/ImportDashboardDialog.js";
14
+ import { resolveCreateParam as ae, withoutCreateParam as oe } from "../utils/createDialogParam.js";
15
+ import { memo as u, useCallback as d, useEffect as f, useState as p } from "react";
16
+ import { useSearchParams as se } from "react-router";
17
+ import { AccessDenied as ce, PermissionButton as m } from "@burdenoff/fe-libs/shared/components";
18
+ import { usePermissions as le } from "@burdenoff/fe-libs/shared/providers/shell";
19
+ import { Calendar as ue, ChevronLeft as de, ChevronRight as fe, Copy as pe, FileText as h, Layers as me, LayoutDashboard as g, LayoutGrid as he, List as ge, Pencil as _, Plus as v, Search as _e, Trash2 as ve, Upload as ye } from "lucide-react";
20
+ import { AuroraBackground as y, Badge as b, Button as x, CTAOverflowMenu as S, Card as be, CardContent as xe, GlassCard as Se, GradientText as C, IllustratedEmptyState as Ce, Input as we, PagePurpose as Te, Spinner as w } from "@burdenoff/fe-libs/ui";
25
21
  import { jsx as T, jsxs as E } from "react/jsx-runtime";
26
- import { useAssistantPageControls as Me } from "@burdenoff/fe-libs/shared/assistant/appControls/useAssistantControl";
27
22
  //#region src/bigconsole/pages/DashboardsPage.tsx
28
23
  var D = "bf-bigconsole-dashboards-view", O = 12, k = 7;
29
- function Ne(e, t) {
24
+ function Ee(e, t) {
30
25
  if (t <= k) return Array.from({ length: t }, (e, t) => t + 1);
31
26
  let n = new Set([
32
27
  1,
@@ -39,7 +34,7 @@ function Ne(e, t) {
39
34
  t > 0 && e - r[t - 1] > 1 && i.push(null), i.push(e);
40
35
  }), i;
41
36
  }
42
- var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onCreate: i, onImport: a, canCreate: o, canImport: s }) {
37
+ var De = u(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onCreate: i, onImport: a, canCreate: o, canImport: ee }) {
43
38
  return /* @__PURE__ */ E("div", {
44
39
  className: "relative overflow-hidden border-b border-[var(--color-border-seam)] bg-[image:var(--gradient-gloss-card)]",
45
40
  children: [/* @__PURE__ */ T(y, { intensity: "subtle" }), /* @__PURE__ */ T("div", {
@@ -70,7 +65,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
70
65
  borderRadius: "var(--radius-card)",
71
66
  backgroundColor: "var(--color-action-primary-bg)"
72
67
  },
73
- children: /* @__PURE__ */ T(v, { style: {
68
+ children: /* @__PURE__ */ T(g, { style: {
74
69
  height: "var(--size-icon-lg)",
75
70
  width: "var(--size-icon-lg)",
76
71
  color: "var(--color-action-primary-text)"
@@ -101,7 +96,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
101
96
  label: n,
102
97
  onSelect: i,
103
98
  disabled: !o,
104
- icon: /* @__PURE__ */ T(Se, { style: {
99
+ icon: /* @__PURE__ */ T(v, { style: {
105
100
  marginRight: "var(--space-iconGap)",
106
101
  height: "var(--size-icon-sm)",
107
102
  width: "var(--size-icon-sm)"
@@ -110,8 +105,8 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
110
105
  actions: [{
111
106
  label: r,
112
107
  onSelect: a,
113
- disabled: !s,
114
- icon: /* @__PURE__ */ T(Te, { style: {
108
+ disabled: !ee,
109
+ icon: /* @__PURE__ */ T(ye, { style: {
115
110
  height: "var(--size-icon-sm)",
116
111
  width: "var(--size-icon-sm)"
117
112
  } })
@@ -121,88 +116,80 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
121
116
  })
122
117
  })]
123
118
  });
124
- }), A = f(function() {
125
- let f = e(), y = s(), [S, C] = g(""), [k, A] = g(""), [j, Fe] = g(""), [M, Ie] = g("default"), [N, P] = g(1), [Le, F] = g(!1), [I, Re] = g(!1), [ze, Be] = g(!1), [L, Ve] = g(() => {
119
+ }), A = u(function() {
120
+ let u = e(), y = o(), [S, C] = p(""), [k, A] = p(""), [j, Oe] = p(""), [M, N] = p(1), [ke, P] = p(!1), [F, I] = p(!1), [Ae, L] = p(!1), [R, je] = p(() => {
126
121
  try {
127
122
  return window.localStorage.getItem(D) === "list" ? "list" : "grid";
128
123
  } catch {
129
124
  return "grid";
130
125
  }
131
- }), He = p((e) => {
132
- Ve(e);
126
+ }), z = d((e) => {
127
+ je(e);
133
128
  try {
134
129
  window.localStorage.setItem(D, e);
135
130
  } catch {}
136
- }, []), { loading: R, error: z, dashboards: B, createDashboard: Ue, deleteDashboard: We, cloneDashboard: Ge, refetch: V } = a(), { hasPermission: H, isLoading: U } = fe(), W = H(o.DASHBOARD_READ), G = H(o.DASHBOARD_CREATE), Ke = H(o.DASHBOARD_IMPORT), [K, qe] = ue();
137
- m(() => {
138
- let e = ce(K, {
139
- permissionsLoading: U,
140
- canRead: W,
141
- canCreate: G
131
+ }, []), { loading: B, error: Me, dashboards: V, createDashboard: Ne, deleteDashboard: Pe, cloneDashboard: Fe, refetch: H } = i(), { hasPermission: U, isLoading: W } = le(), G = U(a.DASHBOARD_READ), K = U(a.DASHBOARD_CREATE), Ie = U(a.DASHBOARD_IMPORT), [q, Le] = se();
132
+ f(() => {
133
+ let e = ae(q, {
134
+ permissionsLoading: W,
135
+ canRead: G,
136
+ canCreate: K
142
137
  });
143
- e === "none" || e === "wait" || (e === "open" && F(!0), qe(le(K), { replace: !0 }));
138
+ e === "none" || e === "wait" || (e === "open" && P(!0), Le(oe(q), { replace: !0 }));
144
139
  }, [
145
- K,
146
- qe,
147
- U,
140
+ q,
141
+ Le,
148
142
  W,
149
- G
143
+ G,
144
+ K
150
145
  ]);
151
- let q = h(() => Array.from(new Set(B.flatMap((e) => e.category ? [e.category] : []))).sort(), [B]), { filtered: J, totalPages: Y, pageItems: X } = se(B, {
152
- search: S,
153
- category: k,
154
- status: j,
155
- sort: M,
156
- page: N,
157
- pageSize: O
158
- }), Je = (Math.min(N, Y) - 1) * O;
159
- m(() => {
160
- P(1);
146
+ let Re = Array.from(new Set(V.flatMap((e) => e.category ? [e.category] : []))).sort(), J = V.filter((e) => (!k || e.category === k) && (!j || e.status === j) && (e.name.toLowerCase().includes(S.toLowerCase()) || e.description?.toLowerCase().includes(S.toLowerCase()))), Y = Math.max(1, Math.ceil(J.length / O)), X = (M - 1) * O, Z = J.slice(X, X + O);
147
+ f(() => {
148
+ N(1);
161
149
  }, [
162
150
  S,
163
- L,
151
+ R,
164
152
  k,
165
- j,
166
- M
167
- ]), m(() => {
168
- N > Y && P(Y);
169
- }, [N, Y]);
170
- let Ye = p(() => {
171
- P((e) => Math.max(1, e - 1));
172
- }, []), Xe = p(() => {
173
- P((e) => Math.min(Y, e + 1));
174
- }, [Y]), Ze = p((e) => {
175
- P(e);
176
- }, []), Qe = p(() => {
177
- F(!0);
178
- }, []), $e = p(({ dashboardId: e }) => {
179
- V(), f(`/dashboards/${e}`);
180
- }, [V, f]), et = p(() => {
181
- I || F(!1);
182
- }, [I]), tt = p(async (e) => {
183
- Re(!0);
153
+ j
154
+ ]), f(() => {
155
+ M > Y && N(Y);
156
+ }, [M, Y]);
157
+ let ze = d(() => {
158
+ N((e) => Math.max(1, e - 1));
159
+ }, []), Be = d(() => {
160
+ N((e) => Math.min(Y, e + 1));
161
+ }, [Y]), Ve = d((e) => {
162
+ N(e);
163
+ }, []), He = d(() => {
164
+ P(!0);
165
+ }, []), Ue = d(({ dashboardId: e }) => {
166
+ H(), u(`/dashboards/${e}`);
167
+ }, [H, u]), We = d(() => {
168
+ F || P(!1);
169
+ }, [F]), Ge = d(async (e) => {
170
+ I(!0);
184
171
  try {
185
- let t = await Ue({
172
+ let t = await Ne({
186
173
  name: e.name,
187
174
  description: e.description,
188
175
  category: e.category,
189
176
  tags: e.tags
190
177
  });
191
- t && (F(!1), f(`/dashboards/${t.id}/builder`));
178
+ t && (P(!1), u(`/dashboards/${t.id}/builder`));
192
179
  } catch (e) {
193
180
  if (t(e, "project")) {
194
- F(!1);
181
+ P(!1);
195
182
  return;
196
183
  }
197
- throw console.error("Failed to create dashboard:", e), l() && d("error"), e;
184
+ throw console.error("Failed to create dashboard:", e), c() && l("error"), e;
198
185
  } finally {
199
- Re(!1);
186
+ I(!1);
200
187
  }
201
- }, [Ue, f]), Z = p((e) => {
202
- f(`/dashboards/${e}`);
203
- }, [f]), nt = p((e, t) => {
204
- t.stopPropagation(), f(`/dashboards/${e}/builder`);
205
- }, [f]), rt = p(async (e, t) => {
188
+ }, [Ne, u]), Q = d((e) => {
189
+ u(`/dashboards/${e}`);
190
+ }, [u]), Ke = d((e, t) => {
191
+ t.stopPropagation(), u(`/dashboards/${e}/builder`);
192
+ }, [u]), qe = d(async (e, t) => {
206
193
  t.stopPropagation();
207
194
  let n = y("bigconsole.dashboards.confirmDelete", "Are you sure you want to delete this dashboard?"), r = await ne({
208
195
  title: "Delete dashboard?",
@@ -211,80 +198,54 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
211
198
  cancelButtonTitle: "Cancel"
212
199
  });
213
200
  if (r === null ? window.confirm(n) : r) {
214
- u("medium");
201
+ re("medium");
215
202
  try {
216
- await We(e), l() && d("success");
203
+ await Pe(e), c() && l("success");
217
204
  } catch (e) {
218
- throw l() && d("error"), e;
205
+ throw c() && l("error"), e;
219
206
  }
220
207
  }
221
- }, [We, y]), it = p(async (e, n, r) => {
208
+ }, [Pe, y]), Je = d(async (e, n, r) => {
222
209
  r.stopPropagation();
223
210
  let i = y("bigconsole.dashboards.clone.defaultSuffix", "{{sourceName}} (Copy)", { sourceName: n }), a = window.prompt(y("bigconsole.dashboards.clone.namePrompt", "Name for the cloned dashboard:"), i);
224
211
  if (!(!a || !a.trim())) {
225
- u("medium");
212
+ re("medium");
226
213
  try {
227
- let t = await Ge(e, a.trim());
228
- t && (l() && d("success"), f(`/dashboards/${t.id}`));
214
+ let t = await Fe(e, a.trim());
215
+ t && (c() && l("success"), u(`/dashboards/${t.id}`));
229
216
  } catch (e) {
230
217
  if (t(e, "project")) return;
231
- throw l() && d("error"), e;
218
+ throw c() && l("error"), e;
232
219
  }
233
220
  }
234
221
  }, [
235
- Ge,
236
- f,
222
+ Fe,
223
+ u,
237
224
  y
238
- ]), at = p(() => {
239
- Be(!0);
240
- }, []), ot = p(() => {
241
- Be(!1);
242
- }, []), st = p((e, t) => {
243
- V();
244
- }, [V]), ct = (e) => {
225
+ ]), Ye = d(() => {
226
+ L(!0);
227
+ }, []), Xe = d(() => {
228
+ L(!1);
229
+ }, []), Ze = d((e, t) => {
230
+ H();
231
+ }, [H]), Qe = (e) => {
245
232
  let t = new Date(e), n = /* @__PURE__ */ new Date(), r = n.getTime() - t.getTime(), i = Math.floor(r / 6e4), a = Math.floor(r / 36e5), o = Math.floor(r / 864e5);
246
233
  return i < 1 ? y("bigconsole.dashboards.time.justNow", "Just now") : i < 60 ? `${i}${y("bigconsole.dashboards.time.minutesAgoSuffix", "m ago")}` : a < 24 ? `${a}${y("bigconsole.dashboards.time.hoursAgoSuffix", "h ago")}` : o < 7 ? `${o}${y("bigconsole.dashboards.time.daysAgoSuffix", "d ago")}` : new Intl.DateTimeFormat("en-US", {
247
234
  month: "short",
248
235
  day: "numeric",
249
236
  year: t.getFullYear() === n.getFullYear() ? void 0 : "numeric"
250
237
  }).format(t);
251
- }, Q = te(), $ = h(() => Array.from(new Set(B.map((e) => e.status).filter((e) => e !== void 0))).sort().map((e) => ({
252
- value: e,
253
- label: Q(e)
254
- })), [B, Q]), lt = h(() => ae(y, !0), [y]);
255
- Me(h(() => !U && W && !z ? oe({
256
- tr: y,
257
- categories: q,
258
- statuses: $,
259
- category: k,
260
- status: j,
261
- setCategory: A,
262
- setStatus: Fe,
263
- setSearch: C,
264
- sort: M,
265
- setSort: Ie
266
- }) : null, [
267
- y,
268
- U,
269
- W,
270
- z,
271
- q,
272
- $,
273
- k,
274
- j,
275
- M
276
- ]));
277
- let ut = (e) => e.widgetCount ?? 0, dt = (e) => e.pageCount || 0, ft = /* @__PURE__ */ T(Pe, {
238
+ }, $ = te(), $e = (e) => e.widgetCount ?? 0, et = (e) => e.pageCount || 0, tt = /* @__PURE__ */ T(De, {
278
239
  title: y("bigconsole.dashboards.title", "Dashboards"),
279
240
  subtitle: y("bigconsole.dashboards.subtitle", "Create and manage your analytics dashboards"),
280
241
  createLabel: y("bigconsole.dashboards.actions.create", "Create Dashboard"),
281
242
  importLabel: y("bigconsole.dashboards.actions.import", "Import"),
282
- onCreate: Qe,
283
- onImport: at,
284
- canCreate: G,
285
- canImport: Ke
243
+ onCreate: He,
244
+ onImport: Ye,
245
+ canCreate: K,
246
+ canImport: Ie
286
247
  });
287
- if (U) return /* @__PURE__ */ T("div", {
248
+ if (W) return /* @__PURE__ */ T("div", {
288
249
  style: {
289
250
  display: "flex",
290
251
  alignItems: "center",
@@ -296,33 +257,33 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
296
257
  width: "var(--size-icon-xl)"
297
258
  } })
298
259
  });
299
- if (!W) return /* @__PURE__ */ T(de, {
260
+ if (!G) return /* @__PURE__ */ T(ce, {
300
261
  title: y("bigconsole.dashboards.accessDenied.title", "Access Denied"),
301
262
  description: y("bigconsole.dashboards.accessDenied.description", "You don't have permission to view dashboards.")
302
263
  });
303
- if (z) return /* @__PURE__ */ E("div", {
264
+ if (Me) return /* @__PURE__ */ E("div", {
304
265
  "data-tour": "bigconsole-dashboards-list",
305
266
  style: {
306
267
  minHeight: "100vh",
307
268
  backgroundColor: "var(--color-bg-canvas)"
308
269
  },
309
- children: [ft, /* @__PURE__ */ T("div", {
270
+ children: [tt, /* @__PURE__ */ T("div", {
310
271
  style: { padding: "var(--space-pagePadding)" },
311
272
  children: /* @__PURE__ */ T(n, {
312
273
  headingLevel: 2,
313
274
  tone: "danger",
314
275
  title: y("bigconsole.dashboards.error.title", "Error loading dashboards"),
315
- description: z.message,
276
+ description: Me.message,
316
277
  "data-testid": "dashboards-error",
317
278
  actions: /* @__PURE__ */ T(x, {
318
279
  size: "sm",
319
- onClick: () => V(),
280
+ onClick: () => H(),
320
281
  children: y("bigconsole.dashboards.error.retry", "Retry")
321
282
  })
322
283
  })
323
284
  })]
324
285
  });
325
- let pt = J.length;
286
+ let nt = J.length;
326
287
  return /* @__PURE__ */ E("div", {
327
288
  "data-tour": "bigconsole-dashboards-list",
328
289
  style: {
@@ -330,14 +291,14 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
330
291
  backgroundColor: "var(--color-bg-canvas)"
331
292
  },
332
293
  children: [
333
- ft,
294
+ tt,
334
295
  /* @__PURE__ */ T("div", {
335
296
  style: { padding: "var(--space-pagePadding)" },
336
297
  children: /* @__PURE__ */ E(r, { children: [/* @__PURE__ */ T(n, {
337
298
  emphasis: "muted",
338
299
  padding: "compact",
339
300
  "aria-label": y("bigconsole.dashboards.about", "About dashboards"),
340
- children: /* @__PURE__ */ T(je, {
301
+ children: /* @__PURE__ */ T(Te, {
341
302
  className: "max-w-[80ch]",
342
303
  children: "Dashboards are live, shareable views built from widgets that query your data sinks — charts, tables, metrics, and drill-downs in one place. Compose a board to monitor a system, share KPIs with your team, or explore data interactively."
343
304
  })
@@ -349,8 +310,8 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
349
310
  description: y("bigconsole.dashboards.results.description", "Open a board to view it, or use the card actions to edit, duplicate or delete."),
350
311
  meta: /* @__PURE__ */ T(b, {
351
312
  variant: "secondary",
352
- "aria-label": y("bigconsole.dashboards.results.count", `${pt} dashboards`),
353
- children: pt
313
+ "aria-label": y("bigconsole.dashboards.results.count", `${nt} dashboards`),
314
+ children: nt
354
315
  }),
355
316
  actions: /* @__PURE__ */ E("div", {
356
317
  role: "group",
@@ -364,11 +325,11 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
364
325
  backgroundColor: "var(--color-bg-sunken)"
365
326
  },
366
327
  children: [/* @__PURE__ */ T(x, {
367
- variant: L === "grid" ? "default" : "ghost",
328
+ variant: R === "grid" ? "default" : "ghost",
368
329
  size: "sm",
369
- onClick: () => He("grid"),
330
+ onClick: () => z("grid"),
370
331
  "aria-label": y("bigconsole.dashboards.view.grid", "Grid view"),
371
- "aria-pressed": L === "grid",
332
+ "aria-pressed": R === "grid",
372
333
  title: y("bigconsole.dashboards.view.grid", "Grid view"),
373
334
  style: {
374
335
  height: "var(--size-controlHeight-md)",
@@ -376,16 +337,16 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
376
337
  padding: 0,
377
338
  borderRadius: "var(--radius-button)"
378
339
  },
379
- children: /* @__PURE__ */ T(ye, { style: {
340
+ children: /* @__PURE__ */ T(he, { style: {
380
341
  height: "var(--size-icon-sm)",
381
342
  width: "var(--size-icon-sm)"
382
343
  } })
383
344
  }), /* @__PURE__ */ T(x, {
384
- variant: L === "list" ? "default" : "ghost",
345
+ variant: R === "list" ? "default" : "ghost",
385
346
  size: "sm",
386
- onClick: () => He("list"),
347
+ onClick: () => z("list"),
387
348
  "aria-label": y("bigconsole.dashboards.view.list", "List view"),
388
- "aria-pressed": L === "list",
349
+ "aria-pressed": R === "list",
389
350
  title: y("bigconsole.dashboards.view.list", "List view"),
390
351
  style: {
391
352
  height: "var(--size-controlHeight-md)",
@@ -393,7 +354,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
393
354
  padding: 0,
394
355
  borderRadius: "var(--radius-button)"
395
356
  },
396
- children: /* @__PURE__ */ T(be, { style: {
357
+ children: /* @__PURE__ */ T(ge, { style: {
397
358
  height: "var(--size-icon-sm)",
398
359
  width: "var(--size-icon-sm)"
399
360
  } })
@@ -407,7 +368,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
407
368
  width: "100%",
408
369
  maxWidth: "420px"
409
370
  },
410
- children: [/* @__PURE__ */ T(Ce, {
371
+ children: [/* @__PURE__ */ T(_e, {
411
372
  "aria-hidden": "true",
412
373
  style: {
413
374
  position: "absolute",
@@ -418,7 +379,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
418
379
  width: "var(--size-icon-sm)",
419
380
  color: "var(--color-text-muted)"
420
381
  }
421
- }), /* @__PURE__ */ T(Ae, {
382
+ }), /* @__PURE__ */ T(we, {
422
383
  type: "search",
423
384
  "aria-label": y("bigconsole.dashboards.search.placeholder", "Search dashboards..."),
424
385
  placeholder: y("bigconsole.dashboards.search.placeholder", "Search dashboards..."),
@@ -432,42 +393,33 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
432
393
  }),
433
394
  /* @__PURE__ */ E("div", {
434
395
  className: "flex flex-wrap gap-control-gap",
435
- children: [
436
- /* @__PURE__ */ E("select", {
437
- "aria-label": y("bigconsole.dashboards.filters.category", "Category"),
438
- value: k,
439
- onChange: (e) => A(e.target.value),
440
- className: "min-w-0 max-w-full rounded-button border border-border-subtle bg-bg-surface p-2 text-sm text-text-primary",
441
- children: [/* @__PURE__ */ T("option", {
442
- value: "",
443
- children: y("bigconsole.dashboards.filters.allCategories", "All categories")
444
- }), q.map((e) => /* @__PURE__ */ T("option", {
445
- value: e,
446
- children: e
447
- }, e))]
448
- }),
449
- /* @__PURE__ */ E("select", {
450
- "aria-label": y("bigconsole.dashboards.filters.status", "Status"),
451
- value: j,
452
- onChange: (e) => Fe(e.target.value),
453
- className: "min-w-0 max-w-full rounded-button border border-border-subtle bg-bg-surface p-2 text-sm text-text-primary",
454
- children: [/* @__PURE__ */ T("option", {
455
- value: "",
456
- children: y("bigconsole.dashboards.filters.allStatuses", "All statuses")
457
- }), $.map((e) => /* @__PURE__ */ T("option", {
458
- value: e.value,
459
- children: e.label
460
- }, e.value))]
461
- }),
462
- /* @__PURE__ */ T(i, {
463
- label: y(ie.label.key, ie.label.en),
464
- value: M,
465
- options: lt,
466
- onChange: Ie
467
- })
468
- ]
396
+ children: [/* @__PURE__ */ E("select", {
397
+ "aria-label": y("bigconsole.dashboards.filters.category", "Category"),
398
+ value: k,
399
+ onChange: (e) => A(e.target.value),
400
+ className: "min-w-0 max-w-full rounded-button border border-border-subtle bg-bg-surface p-2 text-sm text-text-primary",
401
+ children: [/* @__PURE__ */ T("option", {
402
+ value: "",
403
+ children: y("bigconsole.dashboards.filters.allCategories", "All categories")
404
+ }), Re.map((e) => /* @__PURE__ */ T("option", {
405
+ value: e,
406
+ children: e
407
+ }, e))]
408
+ }), /* @__PURE__ */ E("select", {
409
+ "aria-label": y("bigconsole.dashboards.filters.status", "Status"),
410
+ value: j,
411
+ onChange: (e) => Oe(e.target.value),
412
+ className: "min-w-0 max-w-full rounded-button border border-border-subtle bg-bg-surface p-2 text-sm text-text-primary",
413
+ children: [/* @__PURE__ */ T("option", {
414
+ value: "",
415
+ children: y("bigconsole.dashboards.filters.allStatuses", "All statuses")
416
+ }), Array.from(new Set(V.map((e) => e.status).filter((e) => e !== void 0))).sort().map((e) => /* @__PURE__ */ T("option", {
417
+ value: e,
418
+ children: $(e)
419
+ }, e))]
420
+ })]
469
421
  }),
470
- R && B.length === 0 && /* @__PURE__ */ T("div", {
422
+ B && V.length === 0 && /* @__PURE__ */ T("div", {
471
423
  style: {
472
424
  display: "flex",
473
425
  alignItems: "center",
@@ -489,17 +441,17 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
489
441
  })]
490
442
  })
491
443
  }),
492
- !R && L === "grid" && J.length > 0 && /* @__PURE__ */ T("div", {
444
+ !B && R === "grid" && J.length > 0 && /* @__PURE__ */ T("div", {
493
445
  style: {
494
446
  display: "grid",
495
447
  gridTemplateColumns: "repeat(auto-fill, minmax(min(320px, 100%), 1fr))",
496
448
  gap: "var(--space-formGap)"
497
449
  },
498
- children: X.map((e) => /* @__PURE__ */ T(Ee, {
499
- onClick: () => Z(e.id),
450
+ children: Z.map((e) => /* @__PURE__ */ T(be, {
451
+ onClick: () => Q(e.id),
500
452
  style: { cursor: "pointer" },
501
453
  className: "motion-safe:transition-[box-shadow,border-color] hover:border-[var(--color-border-hover)] hover:shadow-[var(--shadow-elevation-2)]",
502
- children: /* @__PURE__ */ E(De, {
454
+ children: /* @__PURE__ */ E(xe, {
503
455
  style: { padding: "var(--space-cardPadding)" },
504
456
  children: [
505
457
  /* @__PURE__ */ E("div", {
@@ -520,7 +472,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
520
472
  borderRadius: "var(--radius-button)",
521
473
  backgroundColor: "var(--color-bg-accentSubtle)"
522
474
  },
523
- children: /* @__PURE__ */ T(v, {
475
+ children: /* @__PURE__ */ T(g, {
524
476
  "aria-hidden": "true",
525
477
  style: {
526
478
  height: "var(--size-icon-md)",
@@ -547,7 +499,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
547
499
  type: "button",
548
500
  className: "max-w-full truncate text-left hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]",
549
501
  onClick: (t) => {
550
- t.stopPropagation(), Z(e.id);
502
+ t.stopPropagation(), Q(e.id);
551
503
  },
552
504
  children: e.name
553
505
  })
@@ -567,9 +519,9 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
567
519
  textTransform: "uppercase"
568
520
  },
569
521
  children: e.category
570
- }), e.status && /* @__PURE__ */ T(c, {
522
+ }), e.status && /* @__PURE__ */ T(s, {
571
523
  status: e.status,
572
- label: Q(e.status)
524
+ label: $(e.status)
573
525
  })]
574
526
  })]
575
527
  })]
@@ -606,7 +558,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
606
558
  gap: "var(--space-iconGap)"
607
559
  },
608
560
  children: [
609
- /* @__PURE__ */ T(ve, { style: {
561
+ /* @__PURE__ */ T(me, { style: {
610
562
  height: "var(--size-icon-sm)",
611
563
  width: "var(--size-icon-sm)",
612
564
  color: "var(--color-action-primary-bg)"
@@ -617,7 +569,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
617
569
  fontWeight: "var(--font-weight-semibold)",
618
570
  color: "var(--color-text-primary)"
619
571
  },
620
- children: dt(e)
572
+ children: et(e)
621
573
  }),
622
574
  /* @__PURE__ */ T("span", {
623
575
  style: {
@@ -640,7 +592,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
640
592
  gap: "var(--space-iconGap)"
641
593
  },
642
594
  children: [
643
- /* @__PURE__ */ T(_e, { style: {
595
+ /* @__PURE__ */ T(h, { style: {
644
596
  height: "var(--size-icon-sm)",
645
597
  width: "var(--size-icon-sm)",
646
598
  color: "var(--color-action-primary-bg)"
@@ -651,7 +603,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
651
603
  fontWeight: "var(--font-weight-semibold)",
652
604
  color: "var(--color-text-primary)"
653
605
  },
654
- children: ut(e)
606
+ children: $e(e)
655
607
  }),
656
608
  /* @__PURE__ */ T("span", {
657
609
  style: {
@@ -680,7 +632,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
680
632
  alignItems: "center",
681
633
  gap: "var(--space-iconGap)"
682
634
  },
683
- children: [/* @__PURE__ */ T(pe, { style: {
635
+ children: [/* @__PURE__ */ T(ue, { style: {
684
636
  height: "var(--size-icon-sm)",
685
637
  width: "var(--size-icon-sm)",
686
638
  color: "var(--color-text-muted)"
@@ -690,7 +642,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
690
642
  fontWeight: "var(--font-weight-medium)",
691
643
  color: "var(--color-text-muted)"
692
644
  },
693
- children: ct(e.updatedAt)
645
+ children: Qe(e.updatedAt)
694
646
  })]
695
647
  }), /* @__PURE__ */ E("div", {
696
648
  style: {
@@ -699,13 +651,13 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
699
651
  gap: "var(--space-controlGap)"
700
652
  },
701
653
  children: [
702
- /* @__PURE__ */ T(_, {
703
- permission: o.DASHBOARD_UPDATE,
654
+ /* @__PURE__ */ T(m, {
655
+ permission: a.DASHBOARD_UPDATE,
704
656
  deniedBehavior: "hide",
705
657
  children: /* @__PURE__ */ T(x, {
706
658
  variant: "ghost",
707
659
  size: "sm",
708
- onClick: (t) => nt(e.id, t),
660
+ onClick: (t) => Ke(e.id, t),
709
661
  style: {
710
662
  height: "var(--size-controlHeight-md)",
711
663
  width: "var(--size-controlHeight-md)",
@@ -713,19 +665,19 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
713
665
  borderRadius: "var(--radius-button)"
714
666
  },
715
667
  title: y("bigconsole.dashboards.actions.editTitle", "Edit Dashboard"),
716
- children: /* @__PURE__ */ T(xe, { style: {
668
+ children: /* @__PURE__ */ T(_, { style: {
717
669
  height: "var(--size-icon-sm)",
718
670
  width: "var(--size-icon-sm)"
719
671
  } })
720
672
  })
721
673
  }),
722
- /* @__PURE__ */ T(_, {
723
- permission: o.DASHBOARD_CREATE,
674
+ /* @__PURE__ */ T(m, {
675
+ permission: a.DASHBOARD_CREATE,
724
676
  deniedBehavior: "hide",
725
677
  children: /* @__PURE__ */ T(x, {
726
678
  variant: "ghost",
727
679
  size: "sm",
728
- onClick: (t) => it(e.id, e.name, t),
680
+ onClick: (t) => Je(e.id, e.name, t),
729
681
  style: {
730
682
  height: "var(--size-controlHeight-md)",
731
683
  width: "var(--size-controlHeight-md)",
@@ -733,19 +685,19 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
733
685
  borderRadius: "var(--radius-button)"
734
686
  },
735
687
  title: y("bigconsole.dashboards.actions.cloneTitle", "Clone Dashboard"),
736
- children: /* @__PURE__ */ T(ge, { style: {
688
+ children: /* @__PURE__ */ T(pe, { style: {
737
689
  height: "var(--size-icon-sm)",
738
690
  width: "var(--size-icon-sm)"
739
691
  } })
740
692
  })
741
693
  }),
742
- /* @__PURE__ */ T(_, {
743
- permission: o.DASHBOARD_DELETE,
694
+ /* @__PURE__ */ T(m, {
695
+ permission: a.DASHBOARD_DELETE,
744
696
  deniedBehavior: "hide",
745
697
  children: /* @__PURE__ */ T(x, {
746
698
  variant: "ghost",
747
699
  size: "sm",
748
- onClick: (t) => rt(e.id, t),
700
+ onClick: (t) => qe(e.id, t),
749
701
  style: {
750
702
  height: "var(--size-controlHeight-md)",
751
703
  width: "var(--size-controlHeight-md)",
@@ -754,7 +706,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
754
706
  },
755
707
  className: "hover:text-status-error-text hover:bg-status-error-bg/10",
756
708
  title: y("bigconsole.dashboards.actions.deleteTitle", "Delete Dashboard"),
757
- children: /* @__PURE__ */ T(we, { style: {
709
+ children: /* @__PURE__ */ T(ve, { style: {
758
710
  height: "var(--size-icon-sm)",
759
711
  width: "var(--size-icon-sm)"
760
712
  } })
@@ -767,17 +719,17 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
767
719
  })
768
720
  }, e.id))
769
721
  }),
770
- !R && L === "list" && J.length > 0 && /* @__PURE__ */ T("div", {
722
+ !B && R === "list" && J.length > 0 && /* @__PURE__ */ T("div", {
771
723
  style: {
772
724
  display: "flex",
773
725
  flexDirection: "column",
774
726
  gap: "var(--space-controlGap)"
775
727
  },
776
- children: X.map((e) => /* @__PURE__ */ T(Ee, {
777
- onClick: () => Z(e.id),
728
+ children: Z.map((e) => /* @__PURE__ */ T(be, {
729
+ onClick: () => Q(e.id),
778
730
  style: { cursor: "pointer" },
779
731
  className: "motion-safe:transition-[box-shadow,border-color] hover:border-[var(--color-border-hover)] hover:shadow-[var(--shadow-elevation-2)]",
780
- children: /* @__PURE__ */ T(De, {
732
+ children: /* @__PURE__ */ T(xe, {
781
733
  style: { padding: "var(--space-cardPadding)" },
782
734
  children: /* @__PURE__ */ E("div", {
783
735
  style: {
@@ -798,7 +750,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
798
750
  borderRadius: "var(--radius-button)",
799
751
  backgroundColor: "var(--color-bg-accentSubtle)"
800
752
  },
801
- children: /* @__PURE__ */ T(v, {
753
+ children: /* @__PURE__ */ T(g, {
802
754
  "aria-hidden": "true",
803
755
  style: {
804
756
  height: "var(--size-icon-md)",
@@ -835,7 +787,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
835
787
  type: "button",
836
788
  className: "max-w-full truncate text-left hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]",
837
789
  onClick: (t) => {
838
- t.stopPropagation(), Z(e.id);
790
+ t.stopPropagation(), Q(e.id);
839
791
  },
840
792
  children: e.name
841
793
  })
@@ -849,9 +801,9 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
849
801
  },
850
802
  children: e.category
851
803
  }),
852
- e.status && /* @__PURE__ */ T(c, {
804
+ e.status && /* @__PURE__ */ T(s, {
853
805
  status: e.status,
854
- label: Q(e.status)
806
+ label: $(e.status)
855
807
  })
856
808
  ]
857
809
  }), /* @__PURE__ */ T("p", {
@@ -882,7 +834,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
882
834
  gap: "var(--space-iconGap)"
883
835
  },
884
836
  children: [
885
- /* @__PURE__ */ T(ve, { style: {
837
+ /* @__PURE__ */ T(me, { style: {
886
838
  height: "var(--size-icon-sm)",
887
839
  width: "var(--size-icon-sm)",
888
840
  color: "var(--color-action-primary-bg)"
@@ -893,7 +845,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
893
845
  fontWeight: "var(--font-weight-semibold)",
894
846
  color: "var(--color-text-primary)"
895
847
  },
896
- children: dt(e)
848
+ children: et(e)
897
849
  }),
898
850
  /* @__PURE__ */ T("span", {
899
851
  style: {
@@ -911,7 +863,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
911
863
  gap: "var(--space-iconGap)"
912
864
  },
913
865
  children: [
914
- /* @__PURE__ */ T(_e, { style: {
866
+ /* @__PURE__ */ T(h, { style: {
915
867
  height: "var(--size-icon-sm)",
916
868
  width: "var(--size-icon-sm)",
917
869
  color: "var(--color-action-primary-bg)"
@@ -922,7 +874,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
922
874
  fontWeight: "var(--font-weight-semibold)",
923
875
  color: "var(--color-text-primary)"
924
876
  },
925
- children: ut(e)
877
+ children: $e(e)
926
878
  }),
927
879
  /* @__PURE__ */ T("span", {
928
880
  style: {
@@ -939,7 +891,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
939
891
  alignItems: "center",
940
892
  gap: "var(--space-iconGap)"
941
893
  },
942
- children: [/* @__PURE__ */ T(pe, { style: {
894
+ children: [/* @__PURE__ */ T(ue, { style: {
943
895
  height: "var(--size-icon-sm)",
944
896
  width: "var(--size-icon-sm)",
945
897
  color: "var(--color-text-muted)"
@@ -949,7 +901,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
949
901
  fontWeight: "var(--font-weight-medium)",
950
902
  color: "var(--color-text-muted)"
951
903
  },
952
- children: ct(e.updatedAt)
904
+ children: Qe(e.updatedAt)
953
905
  })]
954
906
  })
955
907
  ]
@@ -961,13 +913,13 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
961
913
  gap: "var(--space-controlGap)"
962
914
  },
963
915
  children: [
964
- /* @__PURE__ */ T(_, {
965
- permission: o.DASHBOARD_UPDATE,
916
+ /* @__PURE__ */ T(m, {
917
+ permission: a.DASHBOARD_UPDATE,
966
918
  deniedBehavior: "hide",
967
919
  children: /* @__PURE__ */ T(x, {
968
920
  variant: "ghost",
969
921
  size: "sm",
970
- onClick: (t) => nt(e.id, t),
922
+ onClick: (t) => Ke(e.id, t),
971
923
  style: {
972
924
  height: "var(--size-controlHeight-md)",
973
925
  width: "var(--size-controlHeight-md)",
@@ -975,19 +927,19 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
975
927
  borderRadius: "var(--radius-button)"
976
928
  },
977
929
  title: y("bigconsole.dashboards.actions.editTitle", "Edit Dashboard"),
978
- children: /* @__PURE__ */ T(xe, { style: {
930
+ children: /* @__PURE__ */ T(_, { style: {
979
931
  height: "var(--size-icon-sm)",
980
932
  width: "var(--size-icon-sm)"
981
933
  } })
982
934
  })
983
935
  }),
984
- /* @__PURE__ */ T(_, {
985
- permission: o.DASHBOARD_CREATE,
936
+ /* @__PURE__ */ T(m, {
937
+ permission: a.DASHBOARD_CREATE,
986
938
  deniedBehavior: "hide",
987
939
  children: /* @__PURE__ */ T(x, {
988
940
  variant: "ghost",
989
941
  size: "sm",
990
- onClick: (t) => it(e.id, e.name, t),
942
+ onClick: (t) => Je(e.id, e.name, t),
991
943
  style: {
992
944
  height: "var(--size-controlHeight-md)",
993
945
  width: "var(--size-controlHeight-md)",
@@ -995,19 +947,19 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
995
947
  borderRadius: "var(--radius-button)"
996
948
  },
997
949
  title: y("bigconsole.dashboards.actions.cloneTitle", "Clone Dashboard"),
998
- children: /* @__PURE__ */ T(ge, { style: {
950
+ children: /* @__PURE__ */ T(pe, { style: {
999
951
  height: "var(--size-icon-sm)",
1000
952
  width: "var(--size-icon-sm)"
1001
953
  } })
1002
954
  })
1003
955
  }),
1004
- /* @__PURE__ */ T(_, {
1005
- permission: o.DASHBOARD_DELETE,
956
+ /* @__PURE__ */ T(m, {
957
+ permission: a.DASHBOARD_DELETE,
1006
958
  deniedBehavior: "hide",
1007
959
  children: /* @__PURE__ */ T(x, {
1008
960
  variant: "ghost",
1009
961
  size: "sm",
1010
- onClick: (t) => rt(e.id, t),
962
+ onClick: (t) => qe(e.id, t),
1011
963
  style: {
1012
964
  height: "var(--size-controlHeight-md)",
1013
965
  width: "var(--size-controlHeight-md)",
@@ -1016,7 +968,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
1016
968
  },
1017
969
  className: "hover:text-status-error-text hover:bg-status-error-bg/10",
1018
970
  title: y("bigconsole.dashboards.actions.deleteTitle", "Delete Dashboard"),
1019
- children: /* @__PURE__ */ T(we, { style: {
971
+ children: /* @__PURE__ */ T(ve, { style: {
1020
972
  height: "var(--size-icon-sm)",
1021
973
  width: "var(--size-icon-sm)"
1022
974
  } })
@@ -1029,7 +981,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
1029
981
  })
1030
982
  }, e.id))
1031
983
  }),
1032
- !R && J.length > 0 && /* @__PURE__ */ T("p", {
984
+ !B && J.length > 0 && /* @__PURE__ */ T("p", {
1033
985
  "data-testid": "dashboards-range",
1034
986
  style: {
1035
987
  margin: 0,
@@ -1037,23 +989,23 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
1037
989
  color: "var(--color-text-muted)"
1038
990
  },
1039
991
  children: y("bigconsole.dashboards.pagination.range", "Showing {{from}}–{{to}} of {{total}} dashboards", {
1040
- from: Je + 1,
1041
- to: Je + X.length,
992
+ from: X + 1,
993
+ to: X + Z.length,
1042
994
  total: J.length
1043
995
  })
1044
996
  }),
1045
- !R && J.length > O && /* @__PURE__ */ E("nav", {
997
+ !B && J.length > O && /* @__PURE__ */ E("nav", {
1046
998
  "aria-label": y("bigconsole.dashboards.pagination.label", "Dashboard pages"),
1047
999
  className: "flex flex-wrap items-center justify-center gap-control-gap border-t border-[var(--color-border-subtle)] pt-control-gap",
1048
1000
  children: [
1049
1001
  /* @__PURE__ */ E(x, {
1050
1002
  variant: "outline",
1051
1003
  size: "sm",
1052
- onClick: Ye,
1053
- disabled: N <= 1,
1004
+ onClick: ze,
1005
+ disabled: M <= 1,
1054
1006
  "aria-label": y("bigconsole.dashboards.pagination.previous", "Previous"),
1055
1007
  style: { minHeight: "var(--size-controlHeight-md)" },
1056
- children: [/* @__PURE__ */ T(me, { style: {
1008
+ children: [/* @__PURE__ */ T(de, { style: {
1057
1009
  marginRight: "var(--space-iconGap)",
1058
1010
  height: "var(--size-icon-sm)",
1059
1011
  width: "var(--size-icon-sm)"
@@ -1066,7 +1018,7 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
1066
1018
  gap: "var(--space-iconGap)",
1067
1019
  flexWrap: "wrap"
1068
1020
  },
1069
- children: Ne(N, Y).map((e, t) => e === null ? /* @__PURE__ */ T("span", {
1021
+ children: Ee(M, Y).map((e, t) => e === null ? /* @__PURE__ */ T("span", {
1070
1022
  "aria-hidden": "true",
1071
1023
  style: {
1072
1024
  color: "var(--color-text-muted)",
@@ -1074,10 +1026,10 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
1074
1026
  },
1075
1027
  children: "…"
1076
1028
  }, `gap-${t}`) : /* @__PURE__ */ T(x, {
1077
- variant: e === N ? "default" : "ghost",
1029
+ variant: e === M ? "default" : "ghost",
1078
1030
  size: "sm",
1079
- onClick: () => Ze(e),
1080
- "aria-current": e === N ? "page" : void 0,
1031
+ onClick: () => Ve(e),
1032
+ "aria-current": e === M ? "page" : void 0,
1081
1033
  "aria-label": y("bigconsole.dashboards.pagination.page", `Page ${e}`),
1082
1034
  style: {
1083
1035
  minWidth: "var(--size-controlHeight-md)",
@@ -1091,11 +1043,11 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
1091
1043
  /* @__PURE__ */ E(x, {
1092
1044
  variant: "outline",
1093
1045
  size: "sm",
1094
- onClick: Xe,
1095
- disabled: N >= Y,
1046
+ onClick: Be,
1047
+ disabled: M >= Y,
1096
1048
  "aria-label": y("bigconsole.dashboards.pagination.next", "Next"),
1097
1049
  style: { minHeight: "var(--size-controlHeight-md)" },
1098
- children: [y("bigconsole.dashboards.pagination.next", "Next"), /* @__PURE__ */ T(he, { style: {
1050
+ children: [y("bigconsole.dashboards.pagination.next", "Next"), /* @__PURE__ */ T(fe, { style: {
1099
1051
  marginLeft: "var(--space-iconGap)",
1100
1052
  height: "var(--size-icon-sm)",
1101
1053
  width: "var(--size-icon-sm)"
@@ -1107,16 +1059,16 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
1107
1059
  color: "var(--color-text-muted)"
1108
1060
  },
1109
1061
  children: y("bigconsole.dashboards.pagination.pageOf", "Page {{currentPage}} of {{totalPages}}", {
1110
- currentPage: N,
1062
+ currentPage: M,
1111
1063
  totalPages: Y
1112
1064
  })
1113
1065
  })
1114
1066
  ]
1115
1067
  }),
1116
- !R && J.length === 0 && /* @__PURE__ */ T(Oe, {
1068
+ !B && J.length === 0 && /* @__PURE__ */ T(Se, {
1117
1069
  treatment: "insight",
1118
1070
  className: "border-[var(--color-border-seam)]",
1119
- children: /* @__PURE__ */ T(ke, {
1071
+ children: /* @__PURE__ */ T(Ce, {
1120
1072
  illustration: S ? "empty-search" : "empty-data",
1121
1073
  title: S ? y("bigconsole.dashboards.empty.filteredTitle", "No dashboards found") : y("bigconsole.dashboards.empty.title", "No dashboards yet"),
1122
1074
  description: S ? y("bigconsole.dashboards.empty.filteredDescription", "Try adjusting your search terms") : y("bigconsole.dashboards.empty.description", "Get started by creating your first dashboard to visualize your data"),
@@ -1127,24 +1079,24 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
1127
1079
  flexWrap: "wrap",
1128
1080
  justifyContent: "center"
1129
1081
  },
1130
- children: [/* @__PURE__ */ T(_, {
1131
- permission: o.DASHBOARD_CREATE,
1082
+ children: [/* @__PURE__ */ T(m, {
1083
+ permission: a.DASHBOARD_CREATE,
1132
1084
  deniedBehavior: "hide",
1133
1085
  children: /* @__PURE__ */ E(x, {
1134
- onClick: Qe,
1135
- children: [/* @__PURE__ */ T(Se, { style: {
1086
+ onClick: He,
1087
+ children: [/* @__PURE__ */ T(v, { style: {
1136
1088
  marginRight: "var(--space-iconGap)",
1137
1089
  height: "var(--size-icon-sm)",
1138
1090
  width: "var(--size-icon-sm)"
1139
1091
  } }), y("bigconsole.dashboards.actions.create", "Create Dashboard")]
1140
1092
  })
1141
- }), /* @__PURE__ */ T(_, {
1142
- permission: o.DASHBOARD_IMPORT,
1093
+ }), /* @__PURE__ */ T(m, {
1094
+ permission: a.DASHBOARD_IMPORT,
1143
1095
  deniedBehavior: "hide",
1144
1096
  children: /* @__PURE__ */ E(x, {
1145
1097
  variant: "outline",
1146
- onClick: at,
1147
- children: [/* @__PURE__ */ T(Te, { style: {
1098
+ onClick: Ye,
1099
+ children: [/* @__PURE__ */ T(ye, { style: {
1148
1100
  marginRight: "var(--space-iconGap)",
1149
1101
  height: "var(--size-icon-sm)",
1150
1102
  width: "var(--size-icon-sm)"
@@ -1158,16 +1110,16 @@ var Pe = f(function({ title: e, subtitle: t, createLabel: n, importLabel: r, onC
1158
1110
  })] })
1159
1111
  }),
1160
1112
  /* @__PURE__ */ T(ee, {
1161
- isOpen: Le,
1162
- isCreating: I,
1163
- onClose: et,
1164
- onCreate: tt,
1165
- onTemplateInstalled: $e
1113
+ isOpen: ke,
1114
+ isCreating: F,
1115
+ onClose: We,
1116
+ onCreate: Ge,
1117
+ onTemplateInstalled: Ue
1166
1118
  }),
1167
- /* @__PURE__ */ T(re, {
1168
- isOpen: ze,
1169
- onClose: ot,
1170
- onSuccess: st
1119
+ /* @__PURE__ */ T(ie, {
1120
+ isOpen: Ae,
1121
+ onClose: Xe,
1122
+ onSuccess: Ze
1171
1123
  })
1172
1124
  ]
1173
1125
  });