@burdenoff/microfe-bigconsole 2026.1012.4 → 2026.1012.6

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 (130) hide show
  1. package/dist/bigconsole/BigConsoleRoutes.js +149 -140
  2. package/dist/bigconsole/assistant/assistantProduct.js +4 -1
  3. package/dist/bigconsole/assistant/displayCopy.d.ts +32 -0
  4. package/dist/bigconsole/assistant/pageContext.d.ts +14 -0
  5. package/dist/bigconsole/assistant/pageContext.js +6 -1
  6. package/dist/bigconsole/assistant/pageControls.d.ts +81 -0
  7. package/dist/bigconsole/assistant/pageControls.js +169 -0
  8. package/dist/bigconsole/assistant/previewControl.d.ts +16 -0
  9. package/dist/bigconsole/assistant/previewControl.js +10 -0
  10. package/dist/bigconsole/assistant/recordAdapters.js +27 -26
  11. package/dist/bigconsole/assistant/usePreviewControl.d.ts +2 -0
  12. package/dist/bigconsole/assistant/usePreviewControl.js +20 -0
  13. package/dist/bigconsole/components/builder/inspector/AppearanceSection.js +9 -9
  14. package/dist/bigconsole/components/builder/inspector/DataBindingSection.js +31 -31
  15. package/dist/bigconsole/components/common/SortBySelect.d.ts +11 -0
  16. package/dist/bigconsole/components/common/SortBySelect.js +29 -0
  17. package/dist/bigconsole/components/common/index.d.ts +1 -0
  18. package/dist/bigconsole/components/common/index.js +1 -0
  19. package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js +44 -44
  20. package/dist/bigconsole/components/dashboard/DashboardCanvas.js +36 -36
  21. package/dist/bigconsole/components/dashboard/DashboardToolbar.js +59 -59
  22. package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js +15 -15
  23. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js +30 -30
  24. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js +41 -41
  25. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js +34 -34
  26. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js +34 -34
  27. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js +153 -153
  28. package/dist/bigconsole/components/dashboard/PublishToStoreDialog.js +21 -21
  29. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js +46 -46
  30. package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.js +134 -134
  31. package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.js +101 -101
  32. package/dist/bigconsole/components/dashboard/TemplateInstallOptions.js +31 -31
  33. package/dist/bigconsole/components/dashboard/TemplateLayoutPreview.js +15 -15
  34. package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.js +1 -1
  35. package/dist/bigconsole/components/dashboard/WidgetPalette.js +46 -46
  36. package/dist/bigconsole/components/datasink/AlertExecutionHistory.js +37 -37
  37. package/dist/bigconsole/components/datasink/AlertRuleEditor.js +66 -66
  38. package/dist/bigconsole/components/datasink/CacheTTLSelector.js +35 -35
  39. package/dist/bigconsole/components/datasink/DataSinkCard.js +51 -50
  40. package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js +18 -18
  41. package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js +20 -20
  42. package/dist/bigconsole/components/datasink/ImportDataGuideDialog.js +47 -47
  43. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js +91 -91
  44. package/dist/bigconsole/components/datasink/RefreshTypeSelector.js +35 -35
  45. package/dist/bigconsole/components/parser/DataSinkSelector.js +40 -40
  46. package/dist/bigconsole/components/parser/ImportParserDialog.js +120 -120
  47. package/dist/bigconsole/components/parser/ParserSelector.js +51 -51
  48. package/dist/bigconsole/components/pipeline/PipelineScopePicker.js +10 -10
  49. package/dist/bigconsole/components/preview/AiPreviewContent.js +0 -1
  50. package/dist/bigconsole/components/preview/AiPreviewMiniPanel.js +77 -76
  51. package/dist/bigconsole/components/preview/AiPreviewPanel.js +96 -95
  52. package/dist/bigconsole/components/widgets/ActionConfigDialog.js +4 -4
  53. package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js +93 -93
  54. package/dist/bigconsole/components/widgets/PropertiesPanel.js +507 -499
  55. package/dist/bigconsole/components/widgets/advanced/AdvancedWidgetConfig.js +14 -14
  56. package/dist/bigconsole/components/widgets/advanced/AdvancedWidgets.js +68 -67
  57. package/dist/bigconsole/components/widgets/advanced/boxPlotDescription.d.ts +7 -0
  58. package/dist/bigconsole/components/widgets/advanced/boxPlotDescription.js +12 -0
  59. package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js +4 -4
  60. package/dist/bigconsole/components/widgets/chart/ChartConfig.js +48 -48
  61. package/dist/bigconsole/components/widgets/comments/WidgetComments.js +46 -46
  62. package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js +61 -61
  63. package/dist/bigconsole/components/widgets/form/FormWidget.js +36 -36
  64. package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js +42 -42
  65. package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.js +25 -25
  66. package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js +4 -4
  67. package/dist/bigconsole/components/widgets/list/ListConfig.js +30 -30
  68. package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js +38 -38
  69. package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js +9 -9
  70. package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js +9 -9
  71. package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js +49 -49
  72. package/dist/bigconsole/components/widgets/progress/ProgressConfig.js +39 -39
  73. package/dist/bigconsole/components/widgets/table/TableConfig.js +73 -73
  74. package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js +64 -64
  75. package/dist/bigconsole/components/workflow/WorkflowOpenGuard.js +15 -15
  76. package/dist/bigconsole/components/workflow/WorkflowSinkLinkForm.js +15 -15
  77. package/dist/bigconsole/constants/backendErrors.js +94 -0
  78. package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js +10 -10
  79. package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js +67 -67
  80. package/dist/bigconsole/hooks/useDashboardLayoutBaseline.d.ts +14 -0
  81. package/dist/bigconsole/hooks/useDashboardLayoutBaseline.js +32 -0
  82. package/dist/bigconsole/hooks/useDataSinkAlerts.d.ts +23 -0
  83. package/dist/bigconsole/hooks/useDataSinkAlerts.js +138 -113
  84. package/dist/bigconsole/hooks/useDrilldown.js +3 -3
  85. package/dist/bigconsole/hooks/useGlobalFilters.js +3 -3
  86. package/dist/bigconsole/pages/AdminPage.js +130 -130
  87. package/dist/bigconsole/pages/DashboardBuilderPage.js +72 -60
  88. package/dist/bigconsole/pages/DashboardViewPage.js +244 -221
  89. package/dist/bigconsole/pages/DashboardsPage.js +269 -221
  90. package/dist/bigconsole/pages/DataParsersPage.js +180 -157
  91. package/dist/bigconsole/pages/DataSinkAlertsPage.js +62 -55
  92. package/dist/bigconsole/pages/DataSinkBuilderPage.js +252 -234
  93. package/dist/bigconsole/pages/DataSinkViewPage.js +1 -1
  94. package/dist/bigconsole/pages/DataSinksPage.js +335 -299
  95. package/dist/bigconsole/pages/DataSourcesPage.js +5 -5
  96. package/dist/bigconsole/pages/InsightsPage.js +279 -265
  97. package/dist/bigconsole/pages/OverviewPage.js +47 -47
  98. package/dist/bigconsole/pages/ParserBuilderPage.js +229 -213
  99. package/dist/bigconsole/pages/ParserViewPage.js +97 -97
  100. package/dist/bigconsole/pages/PipelineBuilderPage.js +256 -214
  101. package/dist/bigconsole/pages/PipelineViewPage.js +146 -146
  102. package/dist/bigconsole/pages/PipelinesPage.js +107 -88
  103. package/dist/bigconsole/pages/SettingsPage.js +179 -173
  104. package/dist/bigconsole/pages/WidgetDemoPage.js +42 -42
  105. package/dist/bigconsole/pages/WorkflowViewPage.js +1 -1
  106. package/dist/bigconsole/pages/WorkflowsPage.js +141 -141
  107. package/dist/bigconsole/providers/BigConsoleQuotaProvider.js +12 -12
  108. package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js +34 -34
  109. package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js +69 -69
  110. package/dist/bigconsole/renderers/adapters/CustomRenderer.js +46 -46
  111. package/dist/bigconsole/store/widgetStore.d.ts +12 -0
  112. package/dist/bigconsole/store/widgetStore.js +3 -1
  113. package/dist/bigconsole/utils/backendError.d.ts +18 -0
  114. package/dist/bigconsole/utils/backendError.js +42 -0
  115. package/dist/bigconsole/utils/dashboardList.d.ts +28 -0
  116. package/dist/bigconsole/utils/dashboardList.js +15 -0
  117. package/dist/bigconsole/utils/dataSinkList.d.ts +15 -0
  118. package/dist/bigconsole/utils/dataSinkList.js +15 -0
  119. package/dist/bigconsole/utils/formDirty.d.ts +82 -0
  120. package/dist/bigconsole/utils/formDirty.js +21 -0
  121. package/dist/bigconsole/utils/insightsDraft.d.ts +29 -0
  122. package/dist/bigconsole/utils/insightsDraft.js +8 -0
  123. package/dist/bigconsole/utils/layoutBaseline.d.ts +130 -0
  124. package/dist/bigconsole/utils/layoutBaseline.js +96 -0
  125. package/dist/bigconsole/utils/listSort.d.ts +80 -0
  126. package/dist/bigconsole/utils/listSort.js +85 -0
  127. package/dist/bigconsole/utils/widgetFormDirty.d.ts +16 -0
  128. package/dist/bigconsole/utils/widgetFormDirty.js +13 -0
  129. package/dist/bigconsole/workflowOpen.js +15 -14
  130. package/package.json +3 -3
@@ -1,7 +1,7 @@
1
1
  import { memo as e, useCallback as t, useMemo as n, useState as r } from "react";
2
2
  import { AlertCircle as i, CheckCircle as a, Loader2 as o, RotateCcw as s, Send as c, Settings as l } from "lucide-react";
3
- import { jsx as u, jsxs as d } from "react/jsx-runtime";
4
- import { useI18n as f } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
3
+ import { useI18n as u } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
4
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
5
5
  //#region src/bigconsole/components/widgets/form/FormWidget.tsx
6
6
  function p(e, t, n) {
7
7
  let r = String(e ?? ""), i = e == null || r.trim() === "";
@@ -211,7 +211,7 @@ var g = {
211
211
  textAlign: "center"
212
212
  }
213
213
  }, _ = e(function({ widget: e, data: _ = {}, onDrilldown: v, onSubmit: y }) {
214
- let { t: b } = f(), x = {
214
+ let { t: b } = u(), x = {
215
215
  fields: [],
216
216
  layout: "vertical",
217
217
  submitLabel: "Submit",
@@ -292,7 +292,7 @@ var g = {
292
292
  ...n ? g.inputError : {}
293
293
  };
294
294
  switch (e.type) {
295
- case "textarea": return /* @__PURE__ */ u("textarea", {
295
+ case "textarea": return /* @__PURE__ */ d("textarea", {
296
296
  id: e.name,
297
297
  name: e.name,
298
298
  value: String(t ?? ""),
@@ -310,7 +310,7 @@ var g = {
310
310
  });
311
311
  case "select": {
312
312
  let n = C.fieldOptions[e.name] ?? e.options ?? [];
313
- return /* @__PURE__ */ d("select", {
313
+ return /* @__PURE__ */ f("select", {
314
314
  id: e.name,
315
315
  name: e.name,
316
316
  value: String(t ?? ""),
@@ -322,19 +322,19 @@ var g = {
322
322
  },
323
323
  onChange: (t) => F(e.name, t.target.value),
324
324
  onBlur: () => I(e.name),
325
- children: [/* @__PURE__ */ u("option", {
325
+ children: [/* @__PURE__ */ d("option", {
326
326
  value: "",
327
327
  children: e.placeholder || b("bigconsole.widget.form.selectPlaceholder", "Select {{label}}...", { label: e.label ?? "" })
328
- }), n.map((e) => /* @__PURE__ */ u("option", {
328
+ }), n.map((e) => /* @__PURE__ */ d("option", {
329
329
  value: e.value,
330
330
  disabled: e.disabled,
331
331
  children: e.label
332
332
  }, e.value))]
333
333
  });
334
334
  }
335
- case "checkbox": return /* @__PURE__ */ d("div", {
335
+ case "checkbox": return /* @__PURE__ */ f("div", {
336
336
  style: g.checkbox,
337
- children: [/* @__PURE__ */ u("input", {
337
+ children: [/* @__PURE__ */ d("input", {
338
338
  type: "checkbox",
339
339
  id: e.name,
340
340
  name: e.name,
@@ -343,7 +343,7 @@ var g = {
343
343
  style: g.checkboxInput,
344
344
  onChange: (t) => F(e.name, t.target.checked),
345
345
  onBlur: () => I(e.name)
346
- }), /* @__PURE__ */ u("label", {
346
+ }), /* @__PURE__ */ d("label", {
347
347
  htmlFor: e.name,
348
348
  style: {
349
349
  fontSize: "14px",
@@ -352,15 +352,15 @@ var g = {
352
352
  children: e.label
353
353
  })]
354
354
  });
355
- case "radio": return /* @__PURE__ */ u("div", {
355
+ case "radio": return /* @__PURE__ */ d("div", {
356
356
  style: {
357
357
  display: "flex",
358
358
  flexDirection: "column",
359
359
  gap: "8px"
360
360
  },
361
- children: (C.fieldOptions[e.name] ?? e.options ?? []).map((n) => /* @__PURE__ */ d("div", {
361
+ children: (C.fieldOptions[e.name] ?? e.options ?? []).map((n) => /* @__PURE__ */ f("div", {
362
362
  style: g.checkbox,
363
- children: [/* @__PURE__ */ u("input", {
363
+ children: [/* @__PURE__ */ d("input", {
364
364
  type: "radio",
365
365
  id: `${e.name}-${n.value}`,
366
366
  name: e.name,
@@ -370,7 +370,7 @@ var g = {
370
370
  style: g.checkboxInput,
371
371
  onChange: (t) => F(e.name, t.target.value),
372
372
  onBlur: () => I(e.name)
373
- }), /* @__PURE__ */ u("label", {
373
+ }), /* @__PURE__ */ d("label", {
374
374
  htmlFor: `${e.name}-${n.value}`,
375
375
  style: {
376
376
  fontSize: "14px",
@@ -380,12 +380,12 @@ var g = {
380
380
  })]
381
381
  }, n.value))
382
382
  });
383
- case "hidden": return /* @__PURE__ */ u("input", {
383
+ case "hidden": return /* @__PURE__ */ d("input", {
384
384
  type: "hidden",
385
385
  name: e.name,
386
386
  value: String(t ?? "")
387
387
  });
388
- default: return /* @__PURE__ */ u("input", {
388
+ default: return /* @__PURE__ */ d("input", {
389
389
  type: e.type,
390
390
  id: e.name,
391
391
  name: e.name,
@@ -413,20 +413,20 @@ var g = {
413
413
  C,
414
414
  b
415
415
  ]);
416
- if (S.fields.length === 0) return /* @__PURE__ */ d("div", {
416
+ if (S.fields.length === 0) return /* @__PURE__ */ f("div", {
417
417
  style: g.emptyState,
418
418
  children: [
419
- /* @__PURE__ */ u(l, { style: {
419
+ /* @__PURE__ */ d(l, { style: {
420
420
  width: "48px",
421
421
  height: "48px",
422
422
  marginBottom: "16px",
423
423
  opacity: .5
424
424
  } }),
425
- /* @__PURE__ */ u("p", {
425
+ /* @__PURE__ */ d("p", {
426
426
  style: { fontSize: "14px" },
427
427
  children: b("bigconsole.widget.form.configureTitle", "Configure Form Fields")
428
428
  }),
429
- /* @__PURE__ */ u("p", {
429
+ /* @__PURE__ */ d("p", {
430
430
  style: {
431
431
  fontSize: "12px",
432
432
  marginTop: "4px"
@@ -440,45 +440,45 @@ var g = {
440
440
  gridTemplateColumns: `repeat(${S.columns || 2}, 1fr)`,
441
441
  gap: "16px"
442
442
  } : {};
443
- return /* @__PURE__ */ d("div", {
443
+ return /* @__PURE__ */ f("div", {
444
444
  style: g.container,
445
- children: [/* @__PURE__ */ d("form", {
445
+ children: [/* @__PURE__ */ f("form", {
446
446
  onSubmit: L,
447
447
  style: {
448
448
  ...g.form,
449
449
  ...B
450
450
  },
451
- children: [N && S.successMessage && /* @__PURE__ */ d("div", {
451
+ children: [N && S.successMessage && /* @__PURE__ */ f("div", {
452
452
  style: {
453
453
  ...g.successMessage,
454
454
  gridColumn: "1 / -1"
455
455
  },
456
- children: [/* @__PURE__ */ u(a, { style: {
456
+ children: [/* @__PURE__ */ d(a, { style: {
457
457
  width: "18px",
458
458
  height: "18px"
459
459
  } }), S.successMessage]
460
460
  }), S.fields.map((e) => {
461
461
  if (e.type === "hidden") return z(e);
462
462
  let t = k.has(e.name) ? D[e.name] : null;
463
- return /* @__PURE__ */ d("div", {
463
+ return /* @__PURE__ */ f("div", {
464
464
  style: g.fieldWrapper,
465
465
  children: [
466
- e.type !== "checkbox" && /* @__PURE__ */ d("label", {
466
+ e.type !== "checkbox" && /* @__PURE__ */ f("label", {
467
467
  htmlFor: e.name,
468
468
  style: g.label,
469
- children: [e.label, e.required && /* @__PURE__ */ u("span", {
469
+ children: [e.label, e.required && /* @__PURE__ */ d("span", {
470
470
  style: g.required,
471
471
  children: "*"
472
472
  })]
473
473
  }),
474
474
  z(e),
475
- e.helpText && !t && /* @__PURE__ */ u("p", {
475
+ e.helpText && !t && /* @__PURE__ */ d("p", {
476
476
  style: g.helpText,
477
477
  children: e.helpText
478
478
  }),
479
- t && /* @__PURE__ */ d("p", {
479
+ t && /* @__PURE__ */ f("p", {
480
480
  style: g.errorText,
481
- children: [/* @__PURE__ */ u(i, { style: {
481
+ children: [/* @__PURE__ */ d(i, { style: {
482
482
  width: "14px",
483
483
  height: "14px"
484
484
  } }), t]
@@ -486,9 +486,9 @@ var g = {
486
486
  ]
487
487
  }, e.name);
488
488
  })]
489
- }), /* @__PURE__ */ d("div", {
489
+ }), /* @__PURE__ */ f("div", {
490
490
  style: g.footer,
491
- children: [S.showReset !== !1 && /* @__PURE__ */ d("button", {
491
+ children: [S.showReset !== !1 && /* @__PURE__ */ f("button", {
492
492
  type: "button",
493
493
  onClick: R,
494
494
  disabled: j,
@@ -497,11 +497,11 @@ var g = {
497
497
  ...g.resetButton,
498
498
  opacity: j ? .6 : 1
499
499
  },
500
- children: [/* @__PURE__ */ u(s, { style: {
500
+ children: [/* @__PURE__ */ d(s, { style: {
501
501
  width: "16px",
502
502
  height: "16px"
503
503
  } }), S.resetLabel || b("bigconsole.widget.form.reset", "Reset")]
504
- }), /* @__PURE__ */ d("button", {
504
+ }), /* @__PURE__ */ f("button", {
505
505
  type: "submit",
506
506
  onClick: L,
507
507
  disabled: j,
@@ -510,11 +510,11 @@ var g = {
510
510
  ...g.submitButton,
511
511
  opacity: j ? .6 : 1
512
512
  },
513
- children: [j ? /* @__PURE__ */ u(o, { style: {
513
+ children: [j ? /* @__PURE__ */ d(o, { style: {
514
514
  width: "16px",
515
515
  height: "16px",
516
516
  animation: "spin 1s linear infinite"
517
- } }) : /* @__PURE__ */ u(c, { style: {
517
+ } }) : /* @__PURE__ */ d(c, { style: {
518
518
  width: "16px",
519
519
  height: "16px"
520
520
  } }), S.submitLabel || b("bigconsole.widget.form.submit", "Submit")]
@@ -1,6 +1,6 @@
1
1
  import { memo as e, useCallback as t } from "react";
2
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
3
- import { useI18n as i } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
2
+ import { useI18n as n } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
3
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
4
4
  //#region src/bigconsole/components/widgets/gauge/GaugeConfig.tsx
5
5
  var a = [
6
6
  {
@@ -16,7 +16,7 @@ var a = [
16
16
  color: "success"
17
17
  }
18
18
  ], o = e(function({ config: e, onChange: o }) {
19
- let { t: s } = i(), c = t((t, n) => {
19
+ let { t: s } = n(), c = t((t, n) => {
20
20
  o({
21
21
  ...e,
22
22
  [t]: n
@@ -37,97 +37,97 @@ var a = [
37
37
  };
38
38
  c("thresholds", r);
39
39
  }, [e.thresholds, c]);
40
- return /* @__PURE__ */ r("div", {
40
+ return /* @__PURE__ */ i("div", {
41
41
  className: "min-w-0 space-y-form-gap",
42
42
  children: [
43
- /* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
43
+ /* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("label", {
44
44
  className: "block text-sm font-medium text-text-primary mb-1",
45
45
  children: s("bigconsole.widget.config.gauge.gaugeType", "Gauge Type")
46
- }), /* @__PURE__ */ r("select", {
46
+ }), /* @__PURE__ */ i("select", {
47
47
  value: e.variant || "circular",
48
48
  onChange: (e) => c("variant", e.target.value),
49
49
  className: "\n w-full px-3 py-2\n text-sm text-text-primary\n bg-bg-surface\n border border-border-default\n rounded-md\n focus:outline-none focus:ring-2 focus:ring-action-primary-bg\n ",
50
- children: [/* @__PURE__ */ n("option", {
50
+ children: [/* @__PURE__ */ r("option", {
51
51
  value: "circular",
52
52
  children: s("bigconsole.widget.config.gauge.variant.circular", "Circular")
53
- }), /* @__PURE__ */ n("option", {
53
+ }), /* @__PURE__ */ r("option", {
54
54
  value: "linear",
55
55
  children: s("bigconsole.widget.config.gauge.variant.linear", "Linear")
56
56
  })]
57
57
  })] }),
58
- /* @__PURE__ */ r("div", {
58
+ /* @__PURE__ */ i("div", {
59
59
  className: "grid grid-cols-1 gap-3 sm:grid-cols-2",
60
- children: [/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
60
+ children: [/* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("label", {
61
61
  className: "block text-sm font-medium text-text-primary mb-1",
62
62
  children: s("bigconsole.widget.config.gauge.minimum", "Minimum")
63
- }), /* @__PURE__ */ n("input", {
63
+ }), /* @__PURE__ */ r("input", {
64
64
  type: "number",
65
65
  value: e.min ?? 0,
66
66
  onChange: (e) => c("min", Number(e.target.value)),
67
67
  className: "\n w-full px-3 py-2\n text-sm text-text-primary\n bg-bg-surface\n border border-border-default\n rounded-md\n focus:outline-none focus:ring-2 focus:ring-action-primary-bg\n "
68
- })] }), /* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
68
+ })] }), /* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("label", {
69
69
  className: "block text-sm font-medium text-text-primary mb-1",
70
70
  children: s("bigconsole.widget.config.gauge.maximum", "Maximum")
71
- }), /* @__PURE__ */ n("input", {
71
+ }), /* @__PURE__ */ r("input", {
72
72
  type: "number",
73
73
  value: e.max ?? 100,
74
74
  onChange: (e) => c("max", Number(e.target.value)),
75
75
  className: "\n w-full px-3 py-2\n text-sm text-text-primary\n bg-bg-surface\n border border-border-default\n rounded-md\n focus:outline-none focus:ring-2 focus:ring-action-primary-bg\n "
76
76
  })] })]
77
77
  }),
78
- /* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
78
+ /* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("label", {
79
79
  className: "block text-sm font-medium text-text-primary mb-1",
80
80
  children: s("bigconsole.widget.config.gauge.unitLabel", "Unit Label")
81
- }), /* @__PURE__ */ n("input", {
81
+ }), /* @__PURE__ */ r("input", {
82
82
  type: "text",
83
83
  value: e.unit || "",
84
84
  onChange: (e) => c("unit", e.target.value),
85
85
  placeholder: s("bigconsole.widget.config.gauge.unitPlaceholder", "e.g., %, ms, users"),
86
86
  className: "\n w-full px-3 py-2\n text-sm text-text-primary\n bg-bg-surface\n border border-border-default\n rounded-md\n focus:outline-none focus:ring-2 focus:ring-action-primary-bg\n "
87
87
  })] }),
88
- /* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("label", {
88
+ /* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("label", {
89
89
  className: "block text-sm font-medium text-text-primary mb-1",
90
90
  children: s("bigconsole.widget.config.gauge.valueFormat", "Value Format")
91
- }), /* @__PURE__ */ r("select", {
91
+ }), /* @__PURE__ */ i("select", {
92
92
  value: e.format || "number",
93
93
  onChange: (e) => c("format", e.target.value),
94
94
  className: "\n w-full px-3 py-2\n text-sm text-text-primary\n bg-bg-surface\n border border-border-default\n rounded-md\n focus:outline-none focus:ring-2 focus:ring-action-primary-bg\n ",
95
95
  children: [
96
- /* @__PURE__ */ n("option", {
96
+ /* @__PURE__ */ r("option", {
97
97
  value: "number",
98
98
  children: s("bigconsole.widget.config.gauge.format.number", "Number")
99
99
  }),
100
- /* @__PURE__ */ n("option", {
100
+ /* @__PURE__ */ r("option", {
101
101
  value: "percentage",
102
102
  children: s("bigconsole.widget.config.gauge.format.percentage", "Percentage")
103
103
  }),
104
- /* @__PURE__ */ n("option", {
104
+ /* @__PURE__ */ r("option", {
105
105
  value: "currency",
106
106
  children: s("bigconsole.widget.config.gauge.format.currency", "Currency")
107
107
  })
108
108
  ]
109
109
  })] }),
110
- /* @__PURE__ */ r("div", { children: [
111
- /* @__PURE__ */ n("label", {
110
+ /* @__PURE__ */ i("div", { children: [
111
+ /* @__PURE__ */ r("label", {
112
112
  className: "block text-sm font-medium text-text-primary mb-2",
113
113
  children: s("bigconsole.widget.config.gauge.colorThresholds", "Color Thresholds")
114
114
  }),
115
- /* @__PURE__ */ n("p", {
115
+ /* @__PURE__ */ r("p", {
116
116
  className: "text-xs text-text-secondary mb-3",
117
117
  children: s("bigconsole.widget.config.gauge.colorThresholdsHelp", "Define color zones based on value ranges. Values up to each threshold will use that color.")
118
118
  }),
119
- /* @__PURE__ */ r("div", {
119
+ /* @__PURE__ */ i("div", {
120
120
  className: "space-y-2",
121
121
  children: [
122
- /* @__PURE__ */ r("div", {
122
+ /* @__PURE__ */ i("div", {
123
123
  className: "flex items-center gap-2",
124
124
  children: [
125
- /* @__PURE__ */ n("div", { className: "w-4 h-4 rounded bg-status-error-bg" }),
126
- /* @__PURE__ */ n("span", {
125
+ /* @__PURE__ */ r("div", { className: "w-4 h-4 rounded bg-status-error-bg" }),
126
+ /* @__PURE__ */ r("span", {
127
127
  className: "text-sm text-text-primary flex-1",
128
128
  children: s("bigconsole.widget.config.gauge.threshold.danger", "Danger (Red)")
129
129
  }),
130
- /* @__PURE__ */ n("input", {
130
+ /* @__PURE__ */ r("input", {
131
131
  type: "number",
132
132
  value: e.thresholds?.[0]?.value ?? 33,
133
133
  onChange: (e) => l(0, e.target.value),
@@ -135,15 +135,15 @@ var a = [
135
135
  })
136
136
  ]
137
137
  }),
138
- /* @__PURE__ */ r("div", {
138
+ /* @__PURE__ */ i("div", {
139
139
  className: "flex items-center gap-2",
140
140
  children: [
141
- /* @__PURE__ */ n("div", { className: "w-4 h-4 rounded bg-status-warning-bg" }),
142
- /* @__PURE__ */ n("span", {
141
+ /* @__PURE__ */ r("div", { className: "w-4 h-4 rounded bg-status-warning-bg" }),
142
+ /* @__PURE__ */ r("span", {
143
143
  className: "text-sm text-text-primary flex-1",
144
144
  children: s("bigconsole.widget.config.gauge.threshold.warning", "Warning (Yellow)")
145
145
  }),
146
- /* @__PURE__ */ n("input", {
146
+ /* @__PURE__ */ r("input", {
147
147
  type: "number",
148
148
  value: e.thresholds?.[1]?.value ?? 66,
149
149
  onChange: (e) => l(1, e.target.value),
@@ -151,15 +151,15 @@ var a = [
151
151
  })
152
152
  ]
153
153
  }),
154
- /* @__PURE__ */ r("div", {
154
+ /* @__PURE__ */ i("div", {
155
155
  className: "flex items-center gap-2",
156
156
  children: [
157
- /* @__PURE__ */ n("div", { className: "w-4 h-4 rounded bg-status-success-bg" }),
158
- /* @__PURE__ */ n("span", {
157
+ /* @__PURE__ */ r("div", { className: "w-4 h-4 rounded bg-status-success-bg" }),
158
+ /* @__PURE__ */ r("span", {
159
159
  className: "text-sm text-text-primary flex-1",
160
160
  children: s("bigconsole.widget.config.gauge.threshold.good", "Good (Green)")
161
161
  }),
162
- /* @__PURE__ */ n("input", {
162
+ /* @__PURE__ */ r("input", {
163
163
  type: "number",
164
164
  value: e.thresholds?.[2]?.value ?? 100,
165
165
  onChange: (e) => l(2, e.target.value),
@@ -170,28 +170,28 @@ var a = [
170
170
  ]
171
171
  })
172
172
  ] }),
173
- /* @__PURE__ */ r("div", {
173
+ /* @__PURE__ */ i("div", {
174
174
  role: "group",
175
175
  "aria-label": "Display options",
176
176
  className: "space-y-3 border-t border-[var(--color-border-subtle)] pt-form-gap",
177
177
  children: [
178
- /* @__PURE__ */ n("p", {
178
+ /* @__PURE__ */ r("p", {
179
179
  className: "text-xs font-bold uppercase tracking-wider text-text-secondary",
180
180
  children: "Display options"
181
181
  }),
182
- e.variant === "linear" && /* @__PURE__ */ r("label", {
182
+ e.variant === "linear" && /* @__PURE__ */ i("label", {
183
183
  className: "flex items-center gap-3",
184
- children: [/* @__PURE__ */ n("input", {
184
+ children: [/* @__PURE__ */ r("input", {
185
185
  type: "checkbox",
186
186
  checked: e.showZones === !0,
187
187
  onChange: (e) => c("showZones", e.target.checked),
188
188
  className: "\n w-4 h-4\n text-action-primary-bg\n bg-bg-surface\n border-border-default\n rounded\n focus:ring-action-primary-bg\n "
189
- }), /* @__PURE__ */ n("span", {
189
+ }), /* @__PURE__ */ r("span", {
190
190
  className: "text-sm text-text-primary",
191
191
  children: s("bigconsole.widget.config.gauge.showZones", "Show color zones in background")
192
192
  })]
193
193
  }),
194
- e.variant !== "linear" && /* @__PURE__ */ n("p", {
194
+ e.variant !== "linear" && /* @__PURE__ */ r("p", {
195
195
  className: "text-xs text-text-secondary",
196
196
  children: s("bigconsole.widget.config.gauge.noCircularOptions", "No display options for the circular gauge.")
197
197
  })
@@ -1,9 +1,9 @@
1
1
  import { memo as e, useCallback as t, useMemo as n } from "react";
2
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
3
- import { useI18n as a } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
2
+ import { useI18n as r } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
3
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
4
4
  //#region src/bigconsole/components/widgets/heatmap/HeatmapConfig.tsx
5
5
  var o = "\n w-full px-3 py-2\n text-sm text-text-primary\n bg-bg-surface\n border border-border-default\n rounded-md\n focus:outline-none focus:ring-2 focus:ring-action-primary-bg\n", s = e(function({ config: e, onChange: s }) {
6
- let { t: c } = a(), l = n(() => [
6
+ let { t: c } = r(), l = n(() => [
7
7
  {
8
8
  value: "blue",
9
9
  label: c("bigconsole.widget.config.heatmap.colorScheme.blue", "Blue")
@@ -22,62 +22,62 @@ var o = "\n w-full px-3 py-2\n text-sm text-text-primary\n bg-bg-surface\n b
22
22
  [t]: n
23
23
  });
24
24
  }, [e, s]);
25
- return /* @__PURE__ */ i("div", {
25
+ return /* @__PURE__ */ a("div", {
26
26
  className: "min-w-0 space-y-form-gap",
27
27
  children: [
28
- /* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("label", {
28
+ /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("label", {
29
29
  className: "block text-sm font-medium text-text-primary mb-1",
30
30
  children: c("bigconsole.widget.config.heatmap.xAxisFieldLabel", "X-Axis Field")
31
- }), /* @__PURE__ */ r("input", {
31
+ }), /* @__PURE__ */ i("input", {
32
32
  type: "text",
33
33
  value: e.xAxisField || "",
34
34
  onChange: (e) => u("xAxisField", e.target.value),
35
35
  placeholder: c("bigconsole.widget.config.heatmap.xAxisFieldPlaceholder", "e.g., hour, column"),
36
36
  className: o
37
37
  })] }),
38
- /* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("label", {
38
+ /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("label", {
39
39
  className: "block text-sm font-medium text-text-primary mb-1",
40
40
  children: c("bigconsole.widget.config.heatmap.yAxisFieldLabel", "Y-Axis Field")
41
- }), /* @__PURE__ */ r("input", {
41
+ }), /* @__PURE__ */ i("input", {
42
42
  type: "text",
43
43
  value: e.yAxisField || "",
44
44
  onChange: (e) => u("yAxisField", e.target.value),
45
45
  placeholder: c("bigconsole.widget.config.heatmap.yAxisFieldPlaceholder", "e.g., day, row"),
46
46
  className: o
47
47
  })] }),
48
- /* @__PURE__ */ i("div", { children: [
49
- /* @__PURE__ */ r("label", {
48
+ /* @__PURE__ */ a("div", { children: [
49
+ /* @__PURE__ */ i("label", {
50
50
  className: "block text-sm font-medium text-text-primary mb-1",
51
51
  children: c("bigconsole.widget.config.heatmap.valueFieldLabel", "Value Field")
52
52
  }),
53
- /* @__PURE__ */ r("input", {
53
+ /* @__PURE__ */ i("input", {
54
54
  type: "text",
55
55
  value: e.valueField || "",
56
56
  onChange: (e) => u("valueField", e.target.value),
57
57
  placeholder: c("bigconsole.widget.config.heatmap.valueFieldPlaceholder", "e.g., tickets, count"),
58
58
  className: o
59
59
  }),
60
- /* @__PURE__ */ r("p", {
60
+ /* @__PURE__ */ i("p", {
61
61
  className: "mt-1 text-xs text-text-secondary",
62
62
  children: c("bigconsole.widget.config.heatmap.valueFieldHelp", "Left empty, the widget reads the parser's rows / columns / cells output directly.")
63
63
  })
64
64
  ] }),
65
- /* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("label", {
65
+ /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("label", {
66
66
  className: "block text-sm font-medium text-text-primary mb-1",
67
67
  children: c("bigconsole.widget.config.heatmap.colorSchemeLabel", "Color Scheme")
68
- }), /* @__PURE__ */ r("select", {
68
+ }), /* @__PURE__ */ i("select", {
69
69
  value: e.colorScheme || "blue",
70
70
  onChange: (e) => u("colorScheme", e.target.value),
71
71
  className: o,
72
- children: l.map((e) => /* @__PURE__ */ r("option", {
72
+ children: l.map((e) => /* @__PURE__ */ i("option", {
73
73
  value: e.value,
74
74
  children: e.label
75
75
  }, e.value))
76
76
  })] }),
77
- /* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("label", {
77
+ /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("label", {
78
78
  className: "block text-sm font-medium text-text-primary mb-1",
79
79
  children: c("bigconsole.widget.config.heatmap.decimalPlacesLabel", "Decimal Places")
80
- }), /* @__PURE__ */ r("input", {
80
+ }), /* @__PURE__ */ i("input", {
81
81
  type: "number",
82
82
  min: 0,
83
83
  max: 6,
@@ -85,35 +85,35 @@ var o = "\n w-full px-3 py-2\n text-sm text-text-primary\n bg-bg-surface\n b
85
85
  onChange: (e) => u("decimals", Number(e.target.value)),
86
86
  className: o
87
87
  })] }),
88
- /* @__PURE__ */ i("div", {
88
+ /* @__PURE__ */ a("div", {
89
89
  role: "group",
90
90
  "aria-label": "Display options",
91
91
  className: "space-y-3 border-t border-[var(--color-border-subtle)] pt-form-gap",
92
92
  children: [
93
- /* @__PURE__ */ r("p", {
93
+ /* @__PURE__ */ i("p", {
94
94
  className: "text-xs font-bold uppercase tracking-wider text-text-secondary",
95
95
  children: "Display options"
96
96
  }),
97
- /* @__PURE__ */ i("label", {
97
+ /* @__PURE__ */ a("label", {
98
98
  className: "flex items-center gap-3",
99
- children: [/* @__PURE__ */ r("input", {
99
+ children: [/* @__PURE__ */ i("input", {
100
100
  type: "checkbox",
101
101
  checked: e.showValues !== !1,
102
102
  onChange: (e) => u("showValues", e.target.checked),
103
103
  className: "\n w-4 h-4\n text-action-primary-bg\n bg-bg-surface\n border-border-default\n rounded\n focus:ring-action-primary-bg\n "
104
- }), /* @__PURE__ */ r("span", {
104
+ }), /* @__PURE__ */ i("span", {
105
105
  className: "text-sm text-text-primary",
106
106
  children: c("bigconsole.widget.config.heatmap.showValues", "Show cell values")
107
107
  })]
108
108
  }),
109
- /* @__PURE__ */ i("label", {
109
+ /* @__PURE__ */ a("label", {
110
110
  className: "flex items-center gap-3",
111
- children: [/* @__PURE__ */ r("input", {
111
+ children: [/* @__PURE__ */ i("input", {
112
112
  type: "checkbox",
113
113
  checked: e.showLegend !== !1,
114
114
  onChange: (e) => u("showLegend", e.target.checked),
115
115
  className: "\n w-4 h-4\n text-action-primary-bg\n bg-bg-surface\n border-border-default\n rounded\n focus:ring-action-primary-bg\n "
116
- }), /* @__PURE__ */ r("span", {
116
+ }), /* @__PURE__ */ i("span", {
117
117
  className: "text-sm text-text-primary",
118
118
  children: c("bigconsole.widget.config.heatmap.showLegend", "Show color legend")
119
119
  })]
@@ -1,12 +1,12 @@
1
1
  import e from "../../../hooks/useWidgetConfigPersist.js";
2
2
  import t from "./KanbanView.js";
3
3
  import { memo as n } from "react";
4
- import { jsx as r } from "react/jsx-runtime";
5
- import { useI18n as i } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
4
+ import { useI18n as r } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
5
+ import { jsx as i } from "react/jsx-runtime";
6
6
  //#region src/bigconsole/components/widgets/kanban/KanbanWidget.tsx
7
7
  var a = n(function(n) {
8
- let { t: a } = i(), { canPersist: o, persistConfig: s } = e(n.widget);
9
- return /* @__PURE__ */ r(t, {
8
+ let { t: a } = r(), { canPersist: o, persistConfig: s } = e(n.widget);
9
+ return /* @__PURE__ */ i(t, {
10
10
  ...n,
11
11
  t: a,
12
12
  interactive: !0,