@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
@@ -8,8 +8,8 @@ import a from "../components/widgets/WidgetWrapper.js";
8
8
  import "../components/widgets/index.js";
9
9
  import { useMemo as o, useState as s } from "react";
10
10
  import { Button as c, IllustratedEmptyState as l, PagePurpose as u } from "@burdenoff/fe-libs/ui";
11
- import { useI18n as d } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
12
- import { jsx as f, jsxs as p } from "react/jsx-runtime";
11
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
12
+ import { useI18n as p } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
13
13
  //#region src/bigconsole/pages/WidgetDemoPage.tsx
14
14
  var m = [
15
15
  {
@@ -171,7 +171,7 @@ var m = [
171
171
  Temporal: "Widgets organised by date, schedule or workflow stage.",
172
172
  Custom: "Widgets whose body you define yourself."
173
173
  }, _ = () => {
174
- let { t: _ } = d(), v = e(), [y, b] = s(""), [x, S] = s("grid"), C = o(() => (y ? m.filter((e) => [
174
+ let { t: _ } = p(), v = e(), [y, b] = s(""), [x, S] = s("grid"), C = o(() => (y ? m.filter((e) => [
175
175
  e.type,
176
176
  _(e.titleKey, e.title),
177
177
  _(e.descriptionKey, e.description)
@@ -214,35 +214,35 @@ var m = [
214
214
  widgets: e.get(t) ?? []
215
215
  }));
216
216
  }, [C]), T = x === "grid" ? "grid grid-cols-1 gap-form-gap sm:grid-cols-2 xl:grid-cols-3" : "flex flex-col gap-form-gap";
217
- return /* @__PURE__ */ p("div", {
217
+ return /* @__PURE__ */ f("div", {
218
218
  className: "flex h-full min-w-0 flex-col bg-bg-canvas",
219
219
  children: [
220
- /* @__PURE__ */ f("section", {
220
+ /* @__PURE__ */ d("section", {
221
221
  "aria-label": "Widget demo header",
222
222
  className: `${t("bare", "neutral", "none")} flex-shrink-0 border-b border-[var(--color-border-subtle)] bg-bg-surface px-4 py-3 sm:px-6 sm:py-4`,
223
- children: /* @__PURE__ */ p("div", {
223
+ children: /* @__PURE__ */ f("div", {
224
224
  className: "flex flex-col gap-control-gap lg:flex-row lg:items-center lg:justify-between",
225
- children: [/* @__PURE__ */ p("div", {
225
+ children: [/* @__PURE__ */ f("div", {
226
226
  className: "min-w-0",
227
- children: [/* @__PURE__ */ f("h1", {
227
+ children: [/* @__PURE__ */ d("h1", {
228
228
  className: "text-xl font-semibold text-text-primary",
229
229
  children: _("bigconsole.widgetDemo.header.title", "Widget Demo")
230
- }), /* @__PURE__ */ f("p", {
230
+ }), /* @__PURE__ */ d("p", {
231
231
  className: "mt-1 text-sm text-text-secondary",
232
232
  children: _("bigconsole.widgetDemo.header.subtitle", "All 18 widget types - connect a DataSink for real data")
233
233
  })]
234
- }), /* @__PURE__ */ p("div", {
234
+ }), /* @__PURE__ */ f("div", {
235
235
  className: "flex flex-wrap items-center gap-control-gap",
236
236
  children: [
237
- /* @__PURE__ */ p("div", {
237
+ /* @__PURE__ */ f("div", {
238
238
  className: "relative min-w-0 flex-1 sm:flex-none",
239
239
  children: [
240
- /* @__PURE__ */ f("label", {
240
+ /* @__PURE__ */ d("label", {
241
241
  htmlFor: "widget-demo-filter",
242
242
  className: "sr-only",
243
243
  children: "Filter widget types"
244
244
  }),
245
- /* @__PURE__ */ f("input", {
245
+ /* @__PURE__ */ d("input", {
246
246
  id: "widget-demo-filter",
247
247
  type: "text",
248
248
  placeholder: _("bigconsole.widgetDemo.filter.placeholder", "Filter widgets..."),
@@ -250,13 +250,13 @@ var m = [
250
250
  onChange: (e) => b(e.target.value),
251
251
  className: "h-control-md w-full min-w-0 rounded-input border border-[var(--color-border-subtle)] bg-bg-sunken py-2 pl-[3.25rem] pr-3 text-sm text-text-primary placeholder:text-text-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface sm:w-64"
252
252
  }),
253
- /* @__PURE__ */ f("svg", {
253
+ /* @__PURE__ */ d("svg", {
254
254
  "aria-hidden": "true",
255
255
  className: "pointer-events-none absolute left-3 top-1/2 h-icon-sm w-icon-sm -translate-y-1/2 text-text-secondary",
256
256
  fill: "none",
257
257
  stroke: "currentColor",
258
258
  viewBox: "0 0 24 24",
259
- children: /* @__PURE__ */ f("path", {
259
+ children: /* @__PURE__ */ d("path", {
260
260
  strokeLinecap: "round",
261
261
  strokeLinejoin: "round",
262
262
  strokeWidth: 2,
@@ -265,17 +265,17 @@ var m = [
265
265
  })
266
266
  ]
267
267
  }),
268
- /* @__PURE__ */ p("div", {
268
+ /* @__PURE__ */ f("div", {
269
269
  className: "flex shrink-0 items-center gap-1 rounded-button bg-bg-sunken p-1",
270
270
  role: "group",
271
271
  "aria-label": "Gallery layout",
272
- children: [/* @__PURE__ */ f("button", {
272
+ children: [/* @__PURE__ */ d("button", {
273
273
  type: "button",
274
274
  onClick: () => S("grid"),
275
275
  "aria-pressed": x === "grid",
276
276
  className: `min-h-control-md rounded-button px-3 text-sm font-medium motion-safe:transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface ${x === "grid" ? "bg-bg-surface text-text-primary shadow-[var(--shadow-elevation-1)]" : "text-text-secondary hover:text-text-primary"}`,
277
277
  children: _("bigconsole.widgetDemo.viewToggle.grid", "Grid")
278
- }), /* @__PURE__ */ f("button", {
278
+ }), /* @__PURE__ */ d("button", {
279
279
  type: "button",
280
280
  onClick: () => S("list"),
281
281
  "aria-pressed": x === "list",
@@ -283,7 +283,7 @@ var m = [
283
283
  children: _("bigconsole.widgetDemo.viewToggle.list", "List")
284
284
  })]
285
285
  }),
286
- /* @__PURE__ */ f(c, {
286
+ /* @__PURE__ */ d(c, {
287
287
  variant: "secondary",
288
288
  onClick: () => v("/dashboards"),
289
289
  children: _("bigconsole.widgetDemo.openDashboards", "Open dashboards")
@@ -292,20 +292,20 @@ var m = [
292
292
  })]
293
293
  })
294
294
  }),
295
- /* @__PURE__ */ f("div", {
295
+ /* @__PURE__ */ d("div", {
296
296
  className: "min-w-0 flex-1 overflow-y-auto overflow-x-hidden p-4 sm:p-6",
297
- children: /* @__PURE__ */ p(r, { children: [
298
- /* @__PURE__ */ f("section", {
297
+ children: /* @__PURE__ */ f(r, { children: [
298
+ /* @__PURE__ */ d("section", {
299
299
  "aria-label": "What this gallery is for",
300
300
  className: t("muted", "neutral", "compact"),
301
- children: /* @__PURE__ */ f(u, { children: _("bigconsole.widgetDemo.pagePurpose", "This gallery previews every widget type BigConsole can render on a dashboard — metrics, charts, tables, maps, kanban boards and more. Use it to see what each widget looks like and pick the right one before wiring it to a real DataSink in the dashboard builder.") })
301
+ children: /* @__PURE__ */ d(u, { children: _("bigconsole.widgetDemo.pagePurpose", "This gallery previews every widget type BigConsole can render on a dashboard — metrics, charts, tables, maps, kanban boards and more. Use it to see what each widget looks like and pick the right one before wiring it to a real DataSink in the dashboard builder.") })
302
302
  }),
303
- w.length > 0 && /* @__PURE__ */ f(n, {
303
+ w.length > 0 && /* @__PURE__ */ d(n, {
304
304
  emphasis: "primary",
305
305
  headingLevel: 2,
306
306
  title: "Widget gallery",
307
307
  description: "Every widget renders its unconnected state here — the card chrome, header and empty copy are exactly what a dashboard will show before a DataSink is bound.",
308
- meta: /* @__PURE__ */ p("span", {
308
+ meta: /* @__PURE__ */ f("span", {
309
309
  className: "rounded-pill bg-bg-sunken px-2 py-0.5 text-xs font-medium text-text-secondary",
310
310
  children: [
311
311
  C.length,
@@ -313,15 +313,15 @@ var m = [
313
313
  m.length
314
314
  ]
315
315
  }),
316
- children: /* @__PURE__ */ f("div", {
316
+ children: /* @__PURE__ */ d("div", {
317
317
  className: "flex flex-col gap-section-gap",
318
- children: w.map((e) => /* @__PURE__ */ f(n, {
318
+ children: w.map((e) => /* @__PURE__ */ d(n, {
319
319
  emphasis: "bare",
320
320
  padding: "none",
321
321
  headingLevel: 3,
322
322
  title: e.label,
323
323
  description: e.blurb,
324
- meta: /* @__PURE__ */ p("span", {
324
+ meta: /* @__PURE__ */ f("span", {
325
325
  className: "text-xs font-medium text-text-muted",
326
326
  children: [
327
327
  e.widgets.length,
@@ -329,28 +329,28 @@ var m = [
329
329
  e.widgets.length === 1 ? "type" : "types"
330
330
  ]
331
331
  }),
332
- children: /* @__PURE__ */ f("div", {
332
+ children: /* @__PURE__ */ d("div", {
333
333
  className: T,
334
334
  children: e.widgets.map((e) => {
335
335
  let t = m.find((t) => t.type === e.type);
336
- return /* @__PURE__ */ p("figure", {
336
+ return /* @__PURE__ */ f("figure", {
337
337
  className: `m-0 flex min-w-0 flex-col ${x === "grid" ? "h-80" : "h-64"}`,
338
- children: [/* @__PURE__ */ p("figcaption", {
338
+ children: [/* @__PURE__ */ f("figcaption", {
339
339
  className: "mb-2 flex flex-shrink-0 flex-wrap items-baseline gap-x-2 gap-y-0.5 text-xs text-text-secondary",
340
- children: [/* @__PURE__ */ p("span", { children: [
340
+ children: [/* @__PURE__ */ f("span", { children: [
341
341
  _("bigconsole.widgetDemo.widgetCard.typeLabel", "Type:"),
342
342
  " ",
343
- /* @__PURE__ */ f("code", {
343
+ /* @__PURE__ */ d("code", {
344
344
  className: "font-mono text-text-link",
345
345
  children: e.type
346
346
  })
347
- ] }), t && /* @__PURE__ */ f("span", {
347
+ ] }), t && /* @__PURE__ */ d("span", {
348
348
  className: "text-text-muted",
349
349
  children: _(t.descriptionKey, t.description)
350
350
  })]
351
- }), /* @__PURE__ */ f("div", {
351
+ }), /* @__PURE__ */ d("div", {
352
352
  className: "min-h-0 min-w-0 flex-1",
353
- children: /* @__PURE__ */ f(a, {
353
+ children: /* @__PURE__ */ d(a, {
354
354
  previewOnly: !0,
355
355
  widget: e
356
356
  })
@@ -361,13 +361,13 @@ var m = [
361
361
  }, e.category))
362
362
  })
363
363
  }),
364
- C.length === 0 && /* @__PURE__ */ f(n, {
364
+ C.length === 0 && /* @__PURE__ */ d(n, {
365
365
  emphasis: "standard",
366
366
  tone: "info",
367
367
  title: _("bigconsole.widgetDemo.emptyState.title", "No widgets match your filter"),
368
368
  headingLevel: 2,
369
369
  "data-testid": "widget-demo-empty",
370
- children: /* @__PURE__ */ f(l, {
370
+ children: /* @__PURE__ */ d(l, {
371
371
  illustration: "empty-search",
372
372
  title: _("bigconsole.widgetDemo.emptyState.description", "Try a different search term to preview a widget type."),
373
373
  description: "The filter matches a widget's name and its one-line description."
@@ -375,15 +375,15 @@ var m = [
375
375
  })
376
376
  ] })
377
377
  }),
378
- /* @__PURE__ */ f("section", {
378
+ /* @__PURE__ */ d("section", {
379
379
  "aria-label": "Gallery summary",
380
380
  className: `${t("bare", "neutral", "none")} flex-shrink-0 border-t border-[var(--color-border-subtle)] bg-bg-sunken px-4 py-2 sm:px-6`,
381
- children: /* @__PURE__ */ p("div", {
381
+ children: /* @__PURE__ */ f("div", {
382
382
  className: "flex flex-wrap items-center justify-between gap-x-4 gap-y-1 text-xs text-text-secondary",
383
- children: [/* @__PURE__ */ f("span", { children: _("bigconsole.widgetDemo.footer.showing", "Showing {{shown}} of {{total}} widget types", {
383
+ children: [/* @__PURE__ */ d("span", { children: _("bigconsole.widgetDemo.footer.showing", "Showing {{shown}} of {{total}} widget types", {
384
384
  shown: C.length,
385
385
  total: m.length
386
- }) }), /* @__PURE__ */ f("span", {
386
+ }) }), /* @__PURE__ */ d("span", {
387
387
  className: "text-text-muted",
388
388
  children: _("bigconsole.widgetDemo.footer.hint", "Widgets show empty state until connected to DataSink + Parser")
389
389
  })]
@@ -16,8 +16,8 @@ import { useParams as se } from "react-router";
16
16
  import { AccessDenied as ce, PermissionButton as p } from "@burdenoff/fe-libs/shared/components";
17
17
  import { usePermissions as le } from "@burdenoff/fe-libs/shared/providers/shell";
18
18
  import { Button as m, IllustratedEmptyState as h, NextSteps as ue, PagePurpose as de, Spinner as g } from "@burdenoff/fe-libs/ui";
19
- import { useI18n as fe } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
20
19
  import { Fragment as _, jsx as v, jsxs as y } from "react/jsx-runtime";
20
+ import { useI18n as fe } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
21
21
  import { useLazyWorkflowDefinition as pe } from "@burdenoff/fluidgrids-fe-sdk";
22
22
  import { formatDistanceToNow as b } from "date-fns";
23
23
  //#region src/bigconsole/pages/WorkflowViewPage.tsx