@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
@@ -1,6 +1,6 @@
1
1
  import { memo as e, useCallback as t, useEffect as n, useMemo as r, useRef as i, useState as a } from "react";
2
- import { useI18n as o } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
3
- import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
2
+ import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
3
+ import { useI18n as l } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
4
4
  //#region src/bigconsole/components/datasink/CacheTTLSelector.tsx
5
5
  var u = [
6
6
  0,
@@ -13,7 +13,7 @@ function d(e) {
13
13
  return e === null ? !1 : u.includes(e);
14
14
  }
15
15
  var f = e(function({ value: e, onChange: u, disabled: f = !1, error: p, hideLabel: m = !1 }) {
16
- let { t: h } = o(), g = r(() => [
16
+ let { t: h } = l(), g = r(() => [
17
17
  {
18
18
  value: 0,
19
19
  label: h("bigconsole.dataSinks.cacheTtl.presetNoCacheLabel", "No cache"),
@@ -78,21 +78,21 @@ var f = e(function({ value: e, onChange: u, disabled: f = !1, error: p, hideLabe
78
78
  }
79
79
  C(null), u(n);
80
80
  }, [u, h]);
81
- return /* @__PURE__ */ l("div", {
81
+ return /* @__PURE__ */ c("div", {
82
82
  className: "space-y-form-gap",
83
83
  children: [
84
- !m && /* @__PURE__ */ l("div", { children: [/* @__PURE__ */ c("label", {
84
+ !m && /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("label", {
85
85
  className: "block text-sm font-medium text-text-primary mb-1",
86
86
  children: h("bigconsole.dataSinks.cacheTtl.heading", "Cache Duration")
87
- }), /* @__PURE__ */ c("p", {
87
+ }), /* @__PURE__ */ s("p", {
88
88
  className: "text-xs text-text-secondary",
89
89
  children: h("bigconsole.dataSinks.cacheTtl.headingDescription", "How long should data be cached before refreshing?")
90
90
  })] }),
91
- /* @__PURE__ */ l("div", {
91
+ /* @__PURE__ */ c("div", {
92
92
  role: "group",
93
93
  "aria-label": h("bigconsole.dataSinks.cacheTtl.heading", "Cache Duration"),
94
94
  className: "space-y-list-gap",
95
- children: [g.map((t) => /* @__PURE__ */ l("label", {
95
+ children: [g.map((t) => /* @__PURE__ */ c("label", {
96
96
  className: `
97
97
  flex cursor-pointer items-start gap-3
98
98
  rounded-input
@@ -101,30 +101,30 @@ var f = e(function({ value: e, onChange: u, disabled: f = !1, error: p, hideLabe
101
101
  ${f ? "cursor-not-allowed opacity-50" : ""}
102
102
  ${!v && e === t.value ? "border-[var(--color-action-primary-bg)] bg-bg-accentSubtle" : "border-[var(--color-border-subtle)] hover:border-[var(--color-border-strong)]"}
103
103
  `,
104
- children: [/* @__PURE__ */ c("input", {
104
+ children: [/* @__PURE__ */ s("input", {
105
105
  type: "radio",
106
106
  name: "cache-ttl",
107
107
  checked: !v && e === t.value,
108
108
  onChange: () => T(t.value),
109
109
  disabled: f,
110
110
  className: "\n mt-0.5\n h-4 w-4\n border-[var(--color-border-default)]\n text-action-primary-bg\n focus-visible:ring-2\n focus-visible:ring-ring\n "
111
- }), /* @__PURE__ */ l("div", {
111
+ }), /* @__PURE__ */ c("div", {
112
112
  className: "flex-1",
113
- children: [/* @__PURE__ */ l("div", {
113
+ children: [/* @__PURE__ */ c("div", {
114
114
  className: "flex items-center gap-2",
115
- children: [/* @__PURE__ */ c("span", {
115
+ children: [/* @__PURE__ */ s("span", {
116
116
  className: "text-sm font-medium text-text-primary",
117
117
  children: t.label
118
- }), t.recommended && /* @__PURE__ */ c("span", {
118
+ }), t.recommended && /* @__PURE__ */ s("span", {
119
119
  className: "px-1.5 py-0.5 text-xs font-medium bg-action-primary-bg/10 text-action-primary-bg rounded",
120
120
  children: h("bigconsole.dataSinks.cacheTtl.recommendedBadge", "Recommended")
121
121
  })]
122
- }), /* @__PURE__ */ c("p", {
122
+ }), /* @__PURE__ */ s("p", {
123
123
  className: "text-xs text-text-secondary mt-0.5",
124
124
  children: t.description
125
125
  })]
126
126
  })]
127
- }, t.value)), /* @__PURE__ */ l("label", {
127
+ }, t.value)), /* @__PURE__ */ c("label", {
128
128
  className: `
129
129
  flex cursor-pointer items-start gap-3
130
130
  rounded-input
@@ -133,28 +133,28 @@ var f = e(function({ value: e, onChange: u, disabled: f = !1, error: p, hideLabe
133
133
  ${f ? "cursor-not-allowed opacity-50" : ""}
134
134
  ${v ? "border-[var(--color-action-primary-bg)] bg-bg-accentSubtle" : "border-[var(--color-border-subtle)] hover:border-[var(--color-border-strong)]"}
135
135
  `,
136
- children: [/* @__PURE__ */ c("input", {
136
+ children: [/* @__PURE__ */ s("input", {
137
137
  type: "radio",
138
138
  name: "cache-ttl",
139
139
  checked: v,
140
140
  onChange: E,
141
141
  disabled: f,
142
142
  className: "\n mt-0.5\n h-4 w-4\n border-[var(--color-border-default)]\n text-action-primary-bg\n focus-visible:ring-2\n focus-visible:ring-ring\n "
143
- }), /* @__PURE__ */ l("div", {
143
+ }), /* @__PURE__ */ c("div", {
144
144
  className: "flex-1",
145
145
  children: [
146
- /* @__PURE__ */ c("span", {
146
+ /* @__PURE__ */ s("span", {
147
147
  className: "text-sm font-medium text-text-primary",
148
148
  children: h("bigconsole.dataSinks.cacheTtl.customLabel", "Custom")
149
149
  }),
150
- /* @__PURE__ */ c("p", {
150
+ /* @__PURE__ */ s("p", {
151
151
  className: "text-xs text-text-secondary mt-0.5",
152
152
  children: h("bigconsole.dataSinks.cacheTtl.customDescription", "Enter a custom cache duration (30 - 86400 seconds)")
153
153
  }),
154
- v && /* @__PURE__ */ l(s, { children: [/* @__PURE__ */ l("div", {
154
+ v && /* @__PURE__ */ c(o, { children: [/* @__PURE__ */ c("div", {
155
155
  className: "mt-3 flex flex-wrap items-center gap-2",
156
156
  children: [
157
- /* @__PURE__ */ c("input", {
157
+ /* @__PURE__ */ s("input", {
158
158
  type: "number",
159
159
  "aria-label": "Custom cache duration in seconds",
160
160
  value: b,
@@ -175,11 +175,11 @@ var f = e(function({ value: e, onChange: u, disabled: f = !1, error: p, hideLabe
175
175
  ${p || S ? "border-[var(--color-status-error-border)]" : "border-[var(--color-border-default)]"}
176
176
  `
177
177
  }),
178
- /* @__PURE__ */ c("span", {
178
+ /* @__PURE__ */ s("span", {
179
179
  className: "text-sm text-text-secondary",
180
180
  children: h("bigconsole.dataSinks.cacheTtl.secondsUnit", "seconds")
181
181
  }),
182
- b && !isNaN(parseInt(b)) && !S && /* @__PURE__ */ l("span", {
182
+ b && !isNaN(parseInt(b)) && !S && /* @__PURE__ */ c("span", {
183
183
  className: "text-xs text-text-muted",
184
184
  children: [
185
185
  "(",
@@ -188,20 +188,20 @@ var f = e(function({ value: e, onChange: u, disabled: f = !1, error: p, hideLabe
188
188
  ]
189
189
  })
190
190
  ]
191
- }), S && /* @__PURE__ */ l("div", {
191
+ }), S && /* @__PURE__ */ c("div", {
192
192
  className: "flex items-center gap-1 mt-1",
193
- children: [/* @__PURE__ */ c("svg", {
193
+ children: [/* @__PURE__ */ s("svg", {
194
194
  className: "w-3.5 h-3.5 text-status-error-text flex-shrink-0",
195
195
  fill: "none",
196
196
  stroke: "currentColor",
197
197
  viewBox: "0 0 24 24",
198
- children: /* @__PURE__ */ c("path", {
198
+ children: /* @__PURE__ */ s("path", {
199
199
  strokeLinecap: "round",
200
200
  strokeLinejoin: "round",
201
201
  strokeWidth: 2,
202
202
  d: "M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
203
203
  })
204
- }), /* @__PURE__ */ c("span", {
204
+ }), /* @__PURE__ */ s("span", {
205
205
  className: "text-xs text-status-error-text",
206
206
  children: S
207
207
  })]
@@ -210,38 +210,38 @@ var f = e(function({ value: e, onChange: u, disabled: f = !1, error: p, hideLabe
210
210
  })]
211
211
  })]
212
212
  }),
213
- p && /* @__PURE__ */ l("div", {
213
+ p && /* @__PURE__ */ c("div", {
214
214
  className: "flex items-start gap-2",
215
- children: [/* @__PURE__ */ c("svg", {
215
+ children: [/* @__PURE__ */ s("svg", {
216
216
  className: "w-4 h-4 text-status-error-text flex-shrink-0 mt-0.5",
217
217
  fill: "none",
218
218
  stroke: "currentColor",
219
219
  viewBox: "0 0 24 24",
220
- children: /* @__PURE__ */ c("path", {
220
+ children: /* @__PURE__ */ s("path", {
221
221
  strokeLinecap: "round",
222
222
  strokeLinejoin: "round",
223
223
  strokeWidth: 2,
224
224
  d: "M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
225
225
  })
226
- }), /* @__PURE__ */ c("p", {
226
+ }), /* @__PURE__ */ s("p", {
227
227
  className: "text-xs text-status-error-text",
228
228
  children: p
229
229
  })]
230
230
  }),
231
- e !== null && !p && /* @__PURE__ */ l("div", {
231
+ e !== null && !p && /* @__PURE__ */ c("div", {
232
232
  className: "flex items-center gap-2 text-xs text-text-secondary",
233
- children: [/* @__PURE__ */ c("svg", {
233
+ children: [/* @__PURE__ */ s("svg", {
234
234
  className: "w-4 h-4",
235
235
  fill: "none",
236
236
  stroke: "currentColor",
237
237
  viewBox: "0 0 24 24",
238
- children: /* @__PURE__ */ c("path", {
238
+ children: /* @__PURE__ */ s("path", {
239
239
  strokeLinecap: "round",
240
240
  strokeLinejoin: "round",
241
241
  strokeWidth: 2,
242
242
  d: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
243
243
  })
244
- }), /* @__PURE__ */ c("span", { children: e === 0 ? h("bigconsole.dataSinks.cacheTtl.presetNoCacheDescription", "Read current stored data without caching results") : h("bigconsole.dataSinks.cacheTtl.infoCachedFor", "Data will be cached for {{duration}} before being refreshed", { duration: _(e) }) })]
244
+ }), /* @__PURE__ */ s("span", { children: e === 0 ? h("bigconsole.dataSinks.cacheTtl.presetNoCacheDescription", "Read current stored data without caching results") : h("bigconsole.dataSinks.cacheTtl.infoCachedFor", "Data will be cached for {{duration}} before being refreshed", { duration: _(e) }) })]
245
245
  })
246
246
  ]
247
247
  });
@@ -3,12 +3,13 @@ import "../common/index.js";
3
3
  import t from "./DataSinkStatusBadge.js";
4
4
  import { formatByteSize as n } from "../../utils/format.js";
5
5
  import { memo as r, useCallback as i } from "react";
6
- import { useI18n as a } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
7
- import { jsx as o, jsxs as s } from "react/jsx-runtime";
8
- import { formatDistanceToNow as c } from "date-fns";
6
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
7
+ import { formatDistanceToNow as s } from "date-fns";
9
8
  //#region src/bigconsole/components/datasink/DataSinkCard.tsx
10
- var l = `inline-flex min-h-[var(--size-controlHeight-md)] items-center justify-center rounded-button px-3 py-1.5 text-xs font-medium motion-safe:transition-colors ${e}`, u = r(function({ dataSink: e, setupState: r, onView: u, onEdit: d, onRefresh: f, onExport: p, onDelete: m, onContinueSetup: h, canEdit: g = !0, canRefresh: _ = !0, canDelete: v = !0 }) {
11
- let y = i((t) => {
9
+ var c = `inline-flex min-h-[var(--size-controlHeight-md)] items-center justify-center rounded-button px-3 py-1.5 text-xs font-medium motion-safe:transition-colors ${e}`, l = r(function({ dataSink: e, setupState: r, onView: l, onEdit: u, onRefresh: d, onExport: f, onDelete: p, onContinueSetup: m, canEdit: h = !0, canRefresh: g = !0, canDelete: _ = !0 }) {
10
+ let v = i((t) => {
11
+ t.stopPropagation(), l?.(e.id);
12
+ }, [e.id, l]), y = i((t) => {
12
13
  t.stopPropagation(), u?.(e.id);
13
14
  }, [e.id, u]), b = i((t) => {
14
15
  t.stopPropagation(), d?.(e.id);
@@ -18,60 +19,58 @@ var l = `inline-flex min-h-[var(--size-controlHeight-md)] items-center justify-c
18
19
  t.stopPropagation(), p?.(e.id);
19
20
  }, [e.id, p]), C = i((t) => {
20
21
  t.stopPropagation(), m?.(e.id);
21
- }, [e.id, m]), w = i((t) => {
22
- t.stopPropagation(), h?.(e.id);
23
- }, [e.id, h]), { t: T } = a(), E = (r ?? e.setupState) === "completed", D = e.lastRefreshedAt ? c(new Date(e.lastRefreshedAt), { addSuffix: !0 }) : T("bigconsole.dataSinks.view.never", "Never");
24
- return /* @__PURE__ */ s("article", {
22
+ }, [e.id, m]), w = (r ?? e.setupState) === "completed", T = e.lastRefreshedAt ? s(new Date(e.lastRefreshedAt), { addSuffix: !0 }) : "Never";
23
+ return /* @__PURE__ */ o("article", {
25
24
  className: "\n min-w-0\n cursor-pointer\n rounded-card\n border border-transparent\n bg-bg-sunken\n p-card-padding\n hover:border-[var(--color-action-primary-bg)]\n motion-safe:transition-colors\n ",
26
- onClick: y,
25
+ onClick: v,
27
26
  children: [
28
- /* @__PURE__ */ s("div", {
27
+ /* @__PURE__ */ o("div", {
29
28
  className: "mb-3 flex items-start justify-between gap-icon-gap",
30
- children: [/* @__PURE__ */ s("div", {
29
+ children: [/* @__PURE__ */ o("div", {
31
30
  className: "min-w-0 flex-1",
32
- children: [/* @__PURE__ */ o("h3", {
31
+ children: [/* @__PURE__ */ a("h3", {
33
32
  className: "truncate text-sm font-semibold text-text-primary",
34
33
  children: e.name || "Untitled data sink"
35
- }), /* @__PURE__ */ o("p", {
34
+ }), /* @__PURE__ */ a("p", {
36
35
  className: "mt-0.5 truncate font-mono text-xs text-text-secondary",
37
36
  children: e.key
38
37
  })]
39
- }), /* @__PURE__ */ o(t, {
38
+ }), /* @__PURE__ */ a(t, {
40
39
  status: e.status,
41
40
  size: "sm"
42
41
  })]
43
42
  }),
44
- e.description && /* @__PURE__ */ o("p", {
43
+ e.description && /* @__PURE__ */ a("p", {
45
44
  className: "mb-3 line-clamp-2 text-xs text-text-secondary",
46
45
  children: e.description
47
46
  }),
48
- /* @__PURE__ */ s("div", {
47
+ /* @__PURE__ */ o("div", {
49
48
  className: "mb-3 flex flex-wrap items-center gap-x-4 gap-y-1 text-xs text-text-secondary",
50
49
  children: [
51
- /* @__PURE__ */ s("span", {
50
+ /* @__PURE__ */ o("span", {
52
51
  className: "flex items-center gap-1",
53
- children: [/* @__PURE__ */ o("svg", {
52
+ children: [/* @__PURE__ */ a("svg", {
54
53
  className: "w-3.5 h-3.5",
55
54
  fill: "none",
56
55
  stroke: "currentColor",
57
56
  viewBox: "0 0 24 24",
58
- children: /* @__PURE__ */ o("path", {
57
+ children: /* @__PURE__ */ a("path", {
59
58
  strokeLinecap: "round",
60
59
  strokeLinejoin: "round",
61
60
  strokeWidth: 2,
62
61
  d: "M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"
63
62
  })
64
- }), D]
63
+ }), T]
65
64
  }),
66
- /* @__PURE__ */ s("span", {
65
+ /* @__PURE__ */ o("span", {
67
66
  className: "flex items-center gap-1",
68
67
  title: "Stored payload size",
69
- children: [/* @__PURE__ */ o("svg", {
68
+ children: [/* @__PURE__ */ a("svg", {
70
69
  className: "w-3.5 h-3.5",
71
70
  fill: "none",
72
71
  stroke: "currentColor",
73
72
  viewBox: "0 0 24 24",
74
- children: /* @__PURE__ */ o("path", {
73
+ children: /* @__PURE__ */ a("path", {
75
74
  strokeLinecap: "round",
76
75
  strokeLinejoin: "round",
77
76
  strokeWidth: 2,
@@ -79,15 +78,15 @@ var l = `inline-flex min-h-[var(--size-controlHeight-md)] items-center justify-c
79
78
  })
80
79
  }), n(e.sizeBytes)]
81
80
  }),
82
- e.linkedWorkflowCount !== void 0 && e.linkedWorkflowCount > 0 && /* @__PURE__ */ s("span", {
81
+ e.linkedWorkflowCount !== void 0 && e.linkedWorkflowCount > 0 && /* @__PURE__ */ o("span", {
83
82
  className: "flex items-center gap-1",
84
83
  children: [
85
- /* @__PURE__ */ o("svg", {
84
+ /* @__PURE__ */ a("svg", {
86
85
  className: "w-3.5 h-3.5",
87
86
  fill: "none",
88
87
  stroke: "currentColor",
89
88
  viewBox: "0 0 24 24",
90
- children: /* @__PURE__ */ o("path", {
89
+ children: /* @__PURE__ */ a("path", {
91
90
  strokeLinecap: "round",
92
91
  strokeLinejoin: "round",
93
92
  strokeWidth: 2,
@@ -101,50 +100,50 @@ var l = `inline-flex min-h-[var(--size-controlHeight-md)] items-center justify-c
101
100
  })
102
101
  ]
103
102
  }),
104
- !E && /* @__PURE__ */ s("div", {
103
+ !w && /* @__PURE__ */ o("div", {
105
104
  className: "mb-3 flex items-center justify-between gap-icon-gap rounded-input border border-[var(--color-status-warning-border)] bg-[var(--color-status-warning-bgSubtle)] p-2",
106
- children: [/* @__PURE__ */ o("span", {
105
+ children: [/* @__PURE__ */ a("span", {
107
106
  className: "text-xs text-[var(--color-status-warning-text)]",
108
107
  children: "Setup incomplete"
109
- }), /* @__PURE__ */ o("button", {
108
+ }), /* @__PURE__ */ a("button", {
110
109
  type: "button",
111
- onClick: w,
110
+ onClick: C,
112
111
  className: "rounded-button px-1 text-xs font-medium text-text-link hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface",
113
112
  children: "Continue"
114
113
  })]
115
114
  }),
116
- /* @__PURE__ */ s("div", {
115
+ /* @__PURE__ */ o("div", {
117
116
  className: "flex flex-wrap items-center gap-2 border-t border-[var(--color-border-subtle)] pt-2",
118
117
  children: [
119
- /* @__PURE__ */ o("button", {
118
+ /* @__PURE__ */ a("button", {
119
+ type: "button",
120
+ onClick: v,
121
+ className: `${c} flex-1 bg-bg-surface text-text-primary hover:bg-bg-elevated`,
122
+ children: "View"
123
+ }),
124
+ h && /* @__PURE__ */ a("button", {
120
125
  type: "button",
121
126
  onClick: y,
122
- className: `${l} flex-1 bg-bg-surface text-text-primary hover:bg-bg-elevated`,
123
- children: T("bigconsole.dataSinks.actions.view", "View")
127
+ className: `${c} text-text-secondary hover:bg-bg-surface hover:text-text-primary`,
128
+ children: "Edit"
124
129
  }),
125
- g && /* @__PURE__ */ o("button", {
130
+ g && /* @__PURE__ */ a("button", {
126
131
  type: "button",
127
132
  onClick: b,
128
- className: `${l} text-text-secondary hover:bg-bg-surface hover:text-text-primary`,
129
- children: T("bigconsole.dataSinks.actions.edit", "Edit")
133
+ className: `${c} text-text-secondary hover:bg-bg-surface hover:text-text-primary`,
134
+ children: "Refresh"
130
135
  }),
131
- _ && /* @__PURE__ */ o("button", {
136
+ f && /* @__PURE__ */ a("button", {
132
137
  type: "button",
133
138
  onClick: x,
134
- className: `${l} text-text-secondary hover:bg-bg-surface hover:text-text-primary`,
135
- children: T("bigconsole.dataSinks.actions.refresh", "Refresh")
139
+ className: `${c} text-text-secondary hover:bg-bg-surface hover:text-text-primary`,
140
+ children: "Export"
136
141
  }),
137
- p && /* @__PURE__ */ o("button", {
142
+ _ && /* @__PURE__ */ a("button", {
138
143
  type: "button",
139
144
  onClick: S,
140
- className: `${l} text-text-secondary hover:bg-bg-surface hover:text-text-primary`,
141
- children: T("bigconsole.dataSinks.actions.export", "Export")
142
- }),
143
- v && /* @__PURE__ */ o("button", {
144
- type: "button",
145
- onClick: C,
146
- className: `${l} text-status-error-text hover:bg-[var(--color-status-error-bgSubtle)]`,
147
- children: T("bigconsole.dataSinks.actions.delete", "Delete")
145
+ className: `${c} text-status-error-text hover:bg-[var(--color-status-error-bgSubtle)]`,
146
+ children: "Delete"
148
147
  })
149
148
  ]
150
149
  })
@@ -152,4 +151,4 @@ var l = `inline-flex min-h-[var(--size-controlHeight-md)] items-center justify-c
152
151
  });
153
152
  });
154
153
  //#endregion
155
- export { u as default };
154
+ export { l as default };
@@ -3,11 +3,11 @@ import { Section as t } from "../common/Section.js";
3
3
  import "../common/index.js";
4
4
  import { useModalFocusTrap as n } from "../../hooks/useModalFocusTrap.js";
5
5
  import { memo as r, useCallback as i, useId as a, useRef as o } from "react";
6
- import { useI18n as s } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
7
- import { jsx as c, jsxs as l } from "react/jsx-runtime";
6
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
7
+ import { useI18n as l } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
8
8
  //#region src/bigconsole/components/datasink/DataSinkDeleteDialog.tsx
9
9
  var u = `min-h-[var(--size-controlHeight-md)] rounded-button px-4 py-2 text-sm font-medium disabled:cursor-not-allowed disabled:opacity-50 motion-safe:transition-colors ${e}`, d = r(function({ dataSink: e, isOpen: r, onClose: d, onConfirm: f, isDeleting: p = !1 }) {
10
- let { t: m } = s(), h = a(), g = a(), _ = o(null), v = o(null);
10
+ let { t: m } = l(), h = a(), g = a(), _ = o(null), v = o(null);
11
11
  n({
12
12
  isOpen: r,
13
13
  panelRef: _,
@@ -19,10 +19,10 @@ var u = `min-h-[var(--size-controlHeight-md)] rounded-button px-4 py-2 text-sm f
19
19
  let y = i((e) => {
20
20
  e.target === e.currentTarget && !p && d();
21
21
  }, [p, d]);
22
- return r ? /* @__PURE__ */ c("div", {
22
+ return r ? /* @__PURE__ */ s("div", {
23
23
  className: "fixed inset-0 z-50 flex items-center justify-center bg-[var(--color-bg-overlay)] p-4",
24
24
  onClick: y,
25
- children: /* @__PURE__ */ l("div", {
25
+ children: /* @__PURE__ */ c("div", {
26
26
  ref: _,
27
27
  role: "dialog",
28
28
  "aria-modal": "true",
@@ -31,63 +31,63 @@ var u = `min-h-[var(--size-controlHeight-md)] rounded-button px-4 py-2 text-sm f
31
31
  tabIndex: -1,
32
32
  className: "flex max-h-[90vh] w-full max-w-md flex-col rounded-card border border-[var(--color-border-subtle)] bg-bg-surface shadow-[var(--shadow-elevation-3)] focus:outline-none",
33
33
  children: [
34
- /* @__PURE__ */ c("div", {
34
+ /* @__PURE__ */ s("div", {
35
35
  className: "border-b border-[var(--color-border-subtle)] p-form-gap sm:p-card-padding",
36
- children: /* @__PURE__ */ c("h2", {
36
+ children: /* @__PURE__ */ s("h2", {
37
37
  id: h,
38
38
  className: "text-lg font-semibold text-text-primary",
39
39
  children: m("bigconsole.dataSinks.deleteDialog.title", "Delete DataSink")
40
40
  })
41
41
  }),
42
- /* @__PURE__ */ l("div", {
42
+ /* @__PURE__ */ c("div", {
43
43
  className: "min-w-0 flex-1 space-y-form-gap overflow-y-auto p-form-gap sm:p-card-padding",
44
44
  children: [
45
- /* @__PURE__ */ c("p", {
45
+ /* @__PURE__ */ s("p", {
46
46
  id: g,
47
47
  className: "text-sm text-text-primary",
48
48
  children: m("bigconsole.dataSinks.deleteDialog.confirmMessage", "Are you sure you want to delete this DataSink?")
49
49
  }),
50
- /* @__PURE__ */ l(t, {
50
+ /* @__PURE__ */ c(t, {
51
51
  emphasis: "muted",
52
52
  padding: "compact",
53
53
  headingLevel: 3,
54
54
  title: "Data sink",
55
55
  headerClassName: "mb-control-gap",
56
- children: [/* @__PURE__ */ c("p", {
56
+ children: [/* @__PURE__ */ s("p", {
57
57
  className: "text-sm font-medium text-text-primary",
58
58
  children: e.name || m("bigconsole.dataSinks.deleteDialog.untitledName", "Untitled DataSink")
59
- }), /* @__PURE__ */ c("p", {
59
+ }), /* @__PURE__ */ s("p", {
60
60
  className: "mt-1 break-all font-mono text-xs text-text-secondary",
61
61
  children: e.key
62
62
  })]
63
63
  }),
64
- e.linkedWorkflowCount && e.linkedWorkflowCount > 0 ? /* @__PURE__ */ c(t, {
64
+ e.linkedWorkflowCount && e.linkedWorkflowCount > 0 ? /* @__PURE__ */ s(t, {
65
65
  tone: "warning",
66
66
  padding: "compact",
67
67
  headingLevel: 3,
68
68
  title: "Workflow links will be removed",
69
69
  headerClassName: "mb-control-gap",
70
- children: /* @__PURE__ */ c("p", {
70
+ children: /* @__PURE__ */ s("p", {
71
71
  className: "text-sm text-[var(--color-status-warning-text)]",
72
72
  children: e.linkedWorkflowCount === 1 ? m("bigconsole.dataSinks.deleteDialog.linkedWorkflowWarningSingular", "This DataSink is linked to {{count}} workflow. Deleting it will remove these links.", { count: e.linkedWorkflowCount }) : m("bigconsole.dataSinks.deleteDialog.linkedWorkflowWarningPlural", "This DataSink is linked to {{count}} workflows. Deleting it will remove these links.", { count: e.linkedWorkflowCount })
73
73
  })
74
74
  }) : null,
75
- /* @__PURE__ */ c("p", {
75
+ /* @__PURE__ */ s("p", {
76
76
  className: "text-sm text-status-error-text",
77
77
  children: m("bigconsole.dataSinks.deleteDialog.cannotBeUndone", "This action cannot be undone.")
78
78
  })
79
79
  ]
80
80
  }),
81
- /* @__PURE__ */ l("div", {
81
+ /* @__PURE__ */ c("div", {
82
82
  className: "flex flex-wrap items-center justify-end gap-control-gap border-t border-[var(--color-border-subtle)] p-form-gap sm:p-card-padding",
83
- children: [/* @__PURE__ */ c("button", {
83
+ children: [/* @__PURE__ */ s("button", {
84
84
  ref: v,
85
85
  type: "button",
86
86
  onClick: d,
87
87
  disabled: p,
88
88
  className: `${u} bg-bg-sunken text-text-primary hover:bg-bg-elevated`,
89
89
  children: m("bigconsole.dataSinks.deleteDialog.cancelButton", "Cancel")
90
- }), /* @__PURE__ */ c("button", {
90
+ }), /* @__PURE__ */ s("button", {
91
91
  type: "button",
92
92
  onClick: f,
93
93
  disabled: p,
@@ -2,86 +2,86 @@ import { SECTION_FOCUS_RING as e } from "../common/sectionStyles.js";
2
2
  import { Section as t } from "../common/Section.js";
3
3
  import "../common/index.js";
4
4
  import { memo as n, useCallback as r, useState as i } from "react";
5
- import { useI18n as a } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
6
- import { jsx as o, jsxs as s } from "react/jsx-runtime";
5
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
6
+ import { useI18n as s } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
7
7
  //#region src/bigconsole/components/datasink/DataSinkRefreshDialog.tsx
8
8
  var c = `min-h-[var(--size-controlHeight-md)] rounded-button px-4 py-2 text-sm font-medium disabled:cursor-not-allowed disabled:opacity-50 motion-safe:transition-colors ${e}`, l = n(function({ dataSink: n, isOpen: l, onClose: u, onConfirm: d, isRefreshing: f = !1 }) {
9
- let { t: p } = a(), [m, h] = i(!1), g = r((e) => {
9
+ let { t: p } = s(), [m, h] = i(!1), g = r((e) => {
10
10
  e.target === e.currentTarget && !f && u();
11
11
  }, [f, u]), _ = (e) => new Date(e).toLocaleString(), v = r(() => {
12
12
  d(m);
13
13
  }, [d, m]);
14
- return l ? /* @__PURE__ */ o("div", {
14
+ return l ? /* @__PURE__ */ a("div", {
15
15
  className: "fixed inset-0 z-50 flex items-center justify-center bg-[var(--color-bg-overlay)] p-4",
16
16
  onClick: g,
17
17
  role: "dialog",
18
18
  "aria-modal": "true",
19
19
  "aria-labelledby": "refresh-dialog-title",
20
- children: /* @__PURE__ */ s("div", {
20
+ children: /* @__PURE__ */ o("div", {
21
21
  className: "flex max-h-[90vh] w-full max-w-md flex-col rounded-card border border-[var(--color-border-subtle)] bg-bg-surface shadow-[var(--shadow-elevation-3)]",
22
22
  children: [
23
- /* @__PURE__ */ o("div", {
23
+ /* @__PURE__ */ a("div", {
24
24
  className: "border-b border-[var(--color-border-subtle)] p-form-gap sm:p-card-padding",
25
- children: /* @__PURE__ */ o("h2", {
25
+ children: /* @__PURE__ */ a("h2", {
26
26
  id: "refresh-dialog-title",
27
27
  className: "text-lg font-semibold text-text-primary",
28
28
  children: p("bigconsole.dataSinks.refreshDialog.title", "Refresh DataSink")
29
29
  })
30
30
  }),
31
- /* @__PURE__ */ s("div", {
31
+ /* @__PURE__ */ o("div", {
32
32
  className: "min-w-0 flex-1 space-y-form-gap overflow-y-auto p-form-gap sm:p-card-padding",
33
- children: [/* @__PURE__ */ s(t, {
33
+ children: [/* @__PURE__ */ o(t, {
34
34
  emphasis: "muted",
35
35
  padding: "compact",
36
36
  headingLevel: 3,
37
37
  title: "Data sink",
38
38
  headerClassName: "mb-control-gap",
39
39
  children: [
40
- /* @__PURE__ */ o("p", {
40
+ /* @__PURE__ */ a("p", {
41
41
  className: "text-sm font-medium text-text-primary",
42
42
  children: n.name || p("bigconsole.dataSinks.refreshDialog.untitledName", "Untitled DataSink")
43
43
  }),
44
- /* @__PURE__ */ o("p", {
44
+ /* @__PURE__ */ a("p", {
45
45
  className: "mt-1 break-all font-mono text-xs text-text-secondary",
46
46
  children: n.key
47
47
  }),
48
- n.lastRefreshedAt && /* @__PURE__ */ o("p", {
48
+ n.lastRefreshedAt && /* @__PURE__ */ a("p", {
49
49
  className: "mt-2 text-xs text-text-secondary",
50
50
  children: p("bigconsole.dataSinks.refreshDialog.lastRefreshed", "Last refreshed: {{date}}", { date: _(n.lastRefreshedAt) })
51
51
  })
52
52
  ]
53
- }), /* @__PURE__ */ s(t, {
53
+ }), /* @__PURE__ */ o(t, {
54
54
  emphasis: "bare",
55
55
  padding: "none",
56
56
  headingLevel: 3,
57
57
  title: "Options",
58
58
  headerClassName: "mb-control-gap",
59
- children: [/* @__PURE__ */ s("label", {
59
+ children: [/* @__PURE__ */ o("label", {
60
60
  className: "flex min-h-[var(--size-controlHeight-md)] cursor-pointer items-center gap-2",
61
- children: [/* @__PURE__ */ o("input", {
61
+ children: [/* @__PURE__ */ a("input", {
62
62
  type: "checkbox",
63
63
  checked: m,
64
64
  onChange: (e) => h(e.target.checked),
65
65
  className: `h-4 w-4 rounded ${e}`
66
- }), /* @__PURE__ */ o("span", {
66
+ }), /* @__PURE__ */ a("span", {
67
67
  className: "text-sm text-text-primary",
68
68
  children: p("bigconsole.dataSinks.refreshDialog.forceRefreshLabel", "Force refresh (bypass cache)")
69
69
  })]
70
- }), /* @__PURE__ */ o("p", {
70
+ }), /* @__PURE__ */ a("p", {
71
71
  className: "mt-1 text-xs text-text-secondary",
72
72
  children: p("bigconsole.dataSinks.refreshDialog.forceRefreshDescription", "Force refresh will re-fetch all data from the source, ignoring any cached values.")
73
73
  })]
74
74
  })]
75
75
  }),
76
- /* @__PURE__ */ s("div", {
76
+ /* @__PURE__ */ o("div", {
77
77
  className: "flex flex-wrap items-center justify-end gap-control-gap border-t border-[var(--color-border-subtle)] p-form-gap sm:p-card-padding",
78
- children: [/* @__PURE__ */ o("button", {
78
+ children: [/* @__PURE__ */ a("button", {
79
79
  type: "button",
80
80
  onClick: u,
81
81
  disabled: f,
82
82
  className: `${c} bg-bg-sunken text-text-primary hover:bg-bg-elevated`,
83
83
  children: p("bigconsole.dataSinks.refreshDialog.cancelButton", "Cancel")
84
- }), /* @__PURE__ */ o("button", {
84
+ }), /* @__PURE__ */ a("button", {
85
85
  type: "button",
86
86
  onClick: v,
87
87
  disabled: f,