@burdenoff/microfe-bigconsole 2026.805.2 → 2026.812.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 (253) hide show
  1. package/dist/bigconsole/components/DrilldownDashboardRenderer.js +118 -106
  2. package/dist/bigconsole/components/DrilldownDashboardRenderer.js.map +1 -1
  3. package/dist/bigconsole/components/DrilldownModal.js +54 -50
  4. package/dist/bigconsole/components/DrilldownModal.js.map +1 -1
  5. package/dist/bigconsole/components/builder/BuilderCanvas.js +2 -2
  6. package/dist/bigconsole/components/builder/BuilderCanvas.js.map +1 -1
  7. package/dist/bigconsole/components/builder/BuilderTopbar.js +3 -3
  8. package/dist/bigconsole/components/builder/BuilderTopbar.js.map +1 -1
  9. package/dist/bigconsole/components/builder/inspector/AdvancedSection.js +24 -25
  10. package/dist/bigconsole/components/builder/inspector/AdvancedSection.js.map +1 -1
  11. package/dist/bigconsole/components/builder/inspector/AppearanceSection.js +40 -29
  12. package/dist/bigconsole/components/builder/inspector/AppearanceSection.js.map +1 -1
  13. package/dist/bigconsole/components/builder/inspector/DataBindingSection.js +145 -111
  14. package/dist/bigconsole/components/builder/inspector/DataBindingSection.js.map +1 -1
  15. package/dist/bigconsole/components/builder/inspector/GeneralSection.js +58 -44
  16. package/dist/bigconsole/components/builder/inspector/GeneralSection.js.map +1 -1
  17. package/dist/bigconsole/components/common/Section.js +70 -0
  18. package/dist/bigconsole/components/common/Section.js.map +1 -0
  19. package/dist/bigconsole/components/common/index.js +2 -0
  20. package/dist/bigconsole/components/common/sectionStyles.js +42 -0
  21. package/dist/bigconsole/components/common/sectionStyles.js.map +1 -0
  22. package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js +269 -251
  23. package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js.map +1 -1
  24. package/dist/bigconsole/components/dashboard/DashboardCanvas.js +214 -223
  25. package/dist/bigconsole/components/dashboard/DashboardCanvas.js.map +1 -1
  26. package/dist/bigconsole/components/dashboard/DashboardGrid.js +12 -18
  27. package/dist/bigconsole/components/dashboard/DashboardGrid.js.map +1 -1
  28. package/dist/bigconsole/components/dashboard/DashboardToolbar.js +110 -102
  29. package/dist/bigconsole/components/dashboard/DashboardToolbar.js.map +1 -1
  30. package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js +81 -68
  31. package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js.map +1 -1
  32. package/dist/bigconsole/components/dashboard/ExportDashboardDialog.js +125 -159
  33. package/dist/bigconsole/components/dashboard/ExportDashboardDialog.js.map +1 -1
  34. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js +147 -144
  35. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js.map +1 -1
  36. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js +154 -153
  37. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js.map +1 -1
  38. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js +82 -79
  39. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js.map +1 -1
  40. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js +171 -284
  41. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js.map +1 -1
  42. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js +250 -273
  43. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js.map +1 -1
  44. package/dist/bigconsole/components/dashboard/LiveBoardBanner.js +45 -53
  45. package/dist/bigconsole/components/dashboard/LiveBoardBanner.js.map +1 -1
  46. package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.js +157 -148
  47. package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.js.map +1 -1
  48. package/dist/bigconsole/components/dashboard/PublishToStoreDialog.js +75 -83
  49. package/dist/bigconsole/components/dashboard/PublishToStoreDialog.js.map +1 -1
  50. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js +167 -161
  51. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js.map +1 -1
  52. package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.js +181 -190
  53. package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.js.map +1 -1
  54. package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.js +101 -95
  55. package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.js.map +1 -1
  56. package/dist/bigconsole/components/dashboard/StoreTemplatePicker.js +20 -18
  57. package/dist/bigconsole/components/dashboard/StoreTemplatePicker.js.map +1 -1
  58. package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.js +1 -0
  59. package/dist/bigconsole/components/dashboard/TemplateSetupBanner.js +26 -58
  60. package/dist/bigconsole/components/dashboard/TemplateSetupBanner.js.map +1 -1
  61. package/dist/bigconsole/components/dashboard/WidgetPalette.js +307 -229
  62. package/dist/bigconsole/components/dashboard/WidgetPalette.js.map +1 -1
  63. package/dist/bigconsole/components/datasink/CacheTTLSelector.js +128 -129
  64. package/dist/bigconsole/components/datasink/CacheTTLSelector.js.map +1 -1
  65. package/dist/bigconsole/components/datasink/DataSinkCard.js +78 -79
  66. package/dist/bigconsole/components/datasink/DataSinkCard.js.map +1 -1
  67. package/dist/bigconsole/components/datasink/DataSinkDataViewer.js +33 -34
  68. package/dist/bigconsole/components/datasink/DataSinkDataViewer.js.map +1 -1
  69. package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js +79 -61
  70. package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js.map +1 -1
  71. package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js +75 -64
  72. package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js.map +1 -1
  73. package/dist/bigconsole/components/datasink/DataSinkStatusBadge.js +1 -1
  74. package/dist/bigconsole/components/datasink/DataSinkStatusBadge.js.map +1 -1
  75. package/dist/bigconsole/components/datasink/DataSinkTableViewer.js +20 -19
  76. package/dist/bigconsole/components/datasink/DataSinkTableViewer.js.map +1 -1
  77. package/dist/bigconsole/components/datasink/ExportDataSinkDialog.js +127 -171
  78. package/dist/bigconsole/components/datasink/ExportDataSinkDialog.js.map +1 -1
  79. package/dist/bigconsole/components/datasink/ImportDataGuideDialog.js +113 -117
  80. package/dist/bigconsole/components/datasink/ImportDataGuideDialog.js.map +1 -1
  81. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js +312 -307
  82. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js.map +1 -1
  83. package/dist/bigconsole/components/datasink/LinkedParsersPanel.js +65 -66
  84. package/dist/bigconsole/components/datasink/LinkedParsersPanel.js.map +1 -1
  85. package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.js +121 -127
  86. package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.js.map +1 -1
  87. package/dist/bigconsole/components/datasink/RefreshTypeSelector.js +194 -189
  88. package/dist/bigconsole/components/datasink/RefreshTypeSelector.js.map +1 -1
  89. package/dist/bigconsole/components/datasink/SetupStateBadge.js +3 -3
  90. package/dist/bigconsole/components/datasink/SetupStateBadge.js.map +1 -1
  91. package/dist/bigconsole/components/datasink/WorkflowStatusPanel.js +95 -95
  92. package/dist/bigconsole/components/datasink/WorkflowStatusPanel.js.map +1 -1
  93. package/dist/bigconsole/components/parser/DataSinkSelector.js +163 -131
  94. package/dist/bigconsole/components/parser/DataSinkSelector.js.map +1 -1
  95. package/dist/bigconsole/components/parser/ExpressionEditor.js +3 -3
  96. package/dist/bigconsole/components/parser/ExpressionEditor.js.map +1 -1
  97. package/dist/bigconsole/components/parser/ImportParserDialog.js +205 -260
  98. package/dist/bigconsole/components/parser/ImportParserDialog.js.map +1 -1
  99. package/dist/bigconsole/components/parser/ParserCard.js +133 -114
  100. package/dist/bigconsole/components/parser/ParserCard.js.map +1 -1
  101. package/dist/bigconsole/components/parser/ParserSelector.js +193 -174
  102. package/dist/bigconsole/components/parser/ParserSelector.js.map +1 -1
  103. package/dist/bigconsole/components/parser/ParserStatusBadge.js +2 -2
  104. package/dist/bigconsole/components/parser/ParserStatusBadge.js.map +1 -1
  105. package/dist/bigconsole/components/parser/ParserTypeBadge.js +4 -4
  106. package/dist/bigconsole/components/parser/ParserTypeBadge.js.map +1 -1
  107. package/dist/bigconsole/components/pipeline/PipelineCard.js +134 -89
  108. package/dist/bigconsole/components/pipeline/PipelineCard.js.map +1 -1
  109. package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.js +77 -64
  110. package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.js.map +1 -1
  111. package/dist/bigconsole/components/pipeline/PipelineStatusBadge.js +7 -10
  112. package/dist/bigconsole/components/pipeline/PipelineStatusBadge.js.map +1 -1
  113. package/dist/bigconsole/components/preview/AiPreviewContent.js +31 -32
  114. package/dist/bigconsole/components/preview/AiPreviewContent.js.map +1 -1
  115. package/dist/bigconsole/components/preview/AiPreviewMiniPanel.js +152 -103
  116. package/dist/bigconsole/components/preview/AiPreviewMiniPanel.js.map +1 -1
  117. package/dist/bigconsole/components/preview/AiPreviewPanel.js +193 -148
  118. package/dist/bigconsole/components/preview/AiPreviewPanel.js.map +1 -1
  119. package/dist/bigconsole/components/preview/previewShared.js +41 -23
  120. package/dist/bigconsole/components/preview/previewShared.js.map +1 -1
  121. package/dist/bigconsole/components/widgets/ActionConfigDialog.js +405 -364
  122. package/dist/bigconsole/components/widgets/ActionConfigDialog.js.map +1 -1
  123. package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js +265 -237
  124. package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js.map +1 -1
  125. package/dist/bigconsole/components/widgets/PropertiesPanel.js +764 -821
  126. package/dist/bigconsole/components/widgets/PropertiesPanel.js.map +1 -1
  127. package/dist/bigconsole/components/widgets/WidgetErrorBoundary.js +7 -5
  128. package/dist/bigconsole/components/widgets/WidgetErrorBoundary.js.map +1 -1
  129. package/dist/bigconsole/components/widgets/WidgetHeader.js +7 -8
  130. package/dist/bigconsole/components/widgets/WidgetHeader.js.map +1 -1
  131. package/dist/bigconsole/components/widgets/WidgetWrapper.js +8 -7
  132. package/dist/bigconsole/components/widgets/WidgetWrapper.js.map +1 -1
  133. package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.js +1 -1
  134. package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.js.map +1 -1
  135. package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js +46 -49
  136. package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js.map +1 -1
  137. package/dist/bigconsole/components/widgets/chart/ChartConfig.js +154 -147
  138. package/dist/bigconsole/components/widgets/chart/ChartConfig.js.map +1 -1
  139. package/dist/bigconsole/components/widgets/comments/WidgetComments.js +118 -101
  140. package/dist/bigconsole/components/widgets/comments/WidgetComments.js.map +1 -1
  141. package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js +244 -191
  142. package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js.map +1 -1
  143. package/dist/bigconsole/components/widgets/form/FormWidget.js +167 -159
  144. package/dist/bigconsole/components/widgets/form/FormWidget.js.map +1 -1
  145. package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js +92 -76
  146. package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js.map +1 -1
  147. package/dist/bigconsole/components/widgets/gauge/GaugeWidget.js +1 -1
  148. package/dist/bigconsole/components/widgets/gauge/GaugeWidget.js.map +1 -1
  149. package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.js +89 -86
  150. package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.js.map +1 -1
  151. package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.js +2 -2
  152. package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.js.map +1 -1
  153. package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js +64 -63
  154. package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js.map +1 -1
  155. package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.js +2 -2
  156. package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.js.map +1 -1
  157. package/dist/bigconsole/components/widgets/list/ListConfig.js +65 -58
  158. package/dist/bigconsole/components/widgets/list/ListConfig.js.map +1 -1
  159. package/dist/bigconsole/components/widgets/list/ListItem.js +1 -1
  160. package/dist/bigconsole/components/widgets/list/ListItem.js.map +1 -1
  161. package/dist/bigconsole/components/widgets/map-widget/MapWidget.js +1 -1
  162. package/dist/bigconsole/components/widgets/map-widget/MapWidget.js.map +1 -1
  163. package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js +79 -72
  164. package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js.map +1 -1
  165. package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js +35 -34
  166. package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js.map +1 -1
  167. package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js +20 -19
  168. package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js.map +1 -1
  169. package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js +181 -180
  170. package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js.map +1 -1
  171. package/dist/bigconsole/components/widgets/progress/ProgressConfig.js +100 -90
  172. package/dist/bigconsole/components/widgets/progress/ProgressConfig.js.map +1 -1
  173. package/dist/bigconsole/components/widgets/retention/RetentionWidget.js +3 -3
  174. package/dist/bigconsole/components/widgets/retention/RetentionWidget.js.map +1 -1
  175. package/dist/bigconsole/components/widgets/states/EmptyState.js +6 -4
  176. package/dist/bigconsole/components/widgets/states/EmptyState.js.map +1 -1
  177. package/dist/bigconsole/components/widgets/states/ErrorState.js +7 -5
  178. package/dist/bigconsole/components/widgets/states/ErrorState.js.map +1 -1
  179. package/dist/bigconsole/components/widgets/states/LoadingState.js +5 -4
  180. package/dist/bigconsole/components/widgets/states/LoadingState.js.map +1 -1
  181. package/dist/bigconsole/components/widgets/table/TableConfig.js +193 -172
  182. package/dist/bigconsole/components/widgets/table/TableConfig.js.map +1 -1
  183. package/dist/bigconsole/components/widgets/table/TableHeader.js +1 -1
  184. package/dist/bigconsole/components/widgets/table/TableHeader.js.map +1 -1
  185. package/dist/bigconsole/components/widgets/table/TableWidget.js +1 -1
  186. package/dist/bigconsole/components/widgets/table/TableWidget.js.map +1 -1
  187. package/dist/bigconsole/components/widgets/text-widget/TextWidget.js +1 -1
  188. package/dist/bigconsole/components/widgets/text-widget/TextWidget.js.map +1 -1
  189. package/dist/bigconsole/components/widgets/timeline/TimelineWidget.js +3 -3
  190. package/dist/bigconsole/components/widgets/timeline/TimelineWidget.js.map +1 -1
  191. package/dist/bigconsole/components/widgets/utils/conditionalFormat.js +2 -2
  192. package/dist/bigconsole/components/widgets/utils/conditionalFormat.js.map +1 -1
  193. package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js +283 -249
  194. package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js.map +1 -1
  195. package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.js +28 -20
  196. package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.js.map +1 -1
  197. package/dist/bigconsole/components/workflow/WorkflowCard.js +92 -77
  198. package/dist/bigconsole/components/workflow/WorkflowCard.js.map +1 -1
  199. package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.js +70 -51
  200. package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.js.map +1 -1
  201. package/dist/bigconsole/components/workflow/WorkflowStatusBadge.js +16 -17
  202. package/dist/bigconsole/components/workflow/WorkflowStatusBadge.js.map +1 -1
  203. package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js +46 -42
  204. package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js.map +1 -1
  205. package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js +372 -348
  206. package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js.map +1 -1
  207. package/dist/bigconsole/hooks/useModalFocusTrap.js +53 -0
  208. package/dist/bigconsole/hooks/useModalFocusTrap.js.map +1 -0
  209. package/dist/bigconsole/pages/DashboardBuilderPage.js +153 -142
  210. package/dist/bigconsole/pages/DashboardBuilderPage.js.map +1 -1
  211. package/dist/bigconsole/pages/DashboardViewPage.js +230 -220
  212. package/dist/bigconsole/pages/DashboardViewPage.js.map +1 -1
  213. package/dist/bigconsole/pages/DashboardsPage.js +832 -790
  214. package/dist/bigconsole/pages/DashboardsPage.js.map +1 -1
  215. package/dist/bigconsole/pages/DataParsersPage.js +249 -304
  216. package/dist/bigconsole/pages/DataParsersPage.js.map +1 -1
  217. package/dist/bigconsole/pages/DataSinkBuilderPage.js +324 -349
  218. package/dist/bigconsole/pages/DataSinkBuilderPage.js.map +1 -1
  219. package/dist/bigconsole/pages/DataSinkViewPage.js +336 -323
  220. package/dist/bigconsole/pages/DataSinkViewPage.js.map +1 -1
  221. package/dist/bigconsole/pages/DataSinksPage.js +356 -458
  222. package/dist/bigconsole/pages/DataSinksPage.js.map +1 -1
  223. package/dist/bigconsole/pages/DataSourcesPage.js +14 -8
  224. package/dist/bigconsole/pages/DataSourcesPage.js.map +1 -1
  225. package/dist/bigconsole/pages/HomePage.js +186 -193
  226. package/dist/bigconsole/pages/HomePage.js.map +1 -1
  227. package/dist/bigconsole/pages/InsightsPage.js +901 -724
  228. package/dist/bigconsole/pages/InsightsPage.js.map +1 -1
  229. package/dist/bigconsole/pages/ParserBuilderPage.js +769 -675
  230. package/dist/bigconsole/pages/ParserBuilderPage.js.map +1 -1
  231. package/dist/bigconsole/pages/ParserViewPage.js +382 -354
  232. package/dist/bigconsole/pages/ParserViewPage.js.map +1 -1
  233. package/dist/bigconsole/pages/PipelineBuilderPage.js +540 -420
  234. package/dist/bigconsole/pages/PipelineBuilderPage.js.map +1 -1
  235. package/dist/bigconsole/pages/PipelineViewPage.js +416 -384
  236. package/dist/bigconsole/pages/PipelineViewPage.js.map +1 -1
  237. package/dist/bigconsole/pages/PipelinesPage.js +260 -309
  238. package/dist/bigconsole/pages/PipelinesPage.js.map +1 -1
  239. package/dist/bigconsole/pages/SettingsPage.js +177 -172
  240. package/dist/bigconsole/pages/SettingsPage.js.map +1 -1
  241. package/dist/bigconsole/pages/WidgetDemoPage.js +278 -142
  242. package/dist/bigconsole/pages/WidgetDemoPage.js.map +1 -1
  243. package/dist/bigconsole/pages/WorkflowViewPage.js +382 -366
  244. package/dist/bigconsole/pages/WorkflowViewPage.js.map +1 -1
  245. package/dist/bigconsole/pages/WorkflowsPage.js +202 -316
  246. package/dist/bigconsole/pages/WorkflowsPage.js.map +1 -1
  247. package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js +111 -109
  248. package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js.map +1 -1
  249. package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js +127 -126
  250. package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js.map +1 -1
  251. package/dist/bigconsole/renderers/adapters/CustomRenderer.js +103 -103
  252. package/dist/bigconsole/renderers/adapters/CustomRenderer.js.map +1 -1
  253. package/package.json +2 -1
@@ -1,56 +1,57 @@
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";
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";
4
5
  //#region src/bigconsole/components/widgets/form/FormWidget.tsx
5
- function f(e, t) {
6
- let n = String(e ?? ""), r = e == null || n.trim() === "";
7
- if (t.required && r) return `${t.label} is required`;
8
- if (r) return null;
9
- if (t.validation) for (let i of t.validation) switch (i.type) {
6
+ function p(e, t, n) {
7
+ let r = String(e ?? ""), i = e == null || r.trim() === "";
8
+ if (t.required && i) return n("bigconsole.widget.form.validation.required", "{{label}} is required", { label: t.label ?? "" });
9
+ if (i) return null;
10
+ if (t.validation) for (let n of t.validation) switch (n.type) {
10
11
  case "required":
11
- if (r) return i.message;
12
+ if (i) return n.message;
12
13
  break;
13
14
  case "minLength":
14
- if (n.length < Number(i.value)) return i.message;
15
+ if (r.length < Number(n.value)) return n.message;
15
16
  break;
16
17
  case "maxLength":
17
- if (n.length > Number(i.value)) return i.message;
18
+ if (r.length > Number(n.value)) return n.message;
18
19
  break;
19
20
  case "min":
20
- if (Number(e) < Number(i.value)) return i.message;
21
+ if (Number(e) < Number(n.value)) return n.message;
21
22
  break;
22
23
  case "max":
23
- if (Number(e) > Number(i.value)) return i.message;
24
+ if (Number(e) > Number(n.value)) return n.message;
24
25
  break;
25
26
  case "pattern":
26
- if (i.value && !new RegExp(String(i.value)).test(n)) return i.message;
27
+ if (n.value && !new RegExp(String(n.value)).test(r)) return n.message;
27
28
  break;
28
29
  case "email":
29
- if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(n)) return i.message;
30
+ if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r)) return n.message;
30
31
  break;
31
32
  }
32
- if (t.type === "email" && !t.validation?.some((e) => e.type === "email") && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(n)) return "Please enter a valid email address";
33
+ if (t.type === "email" && !t.validation?.some((e) => e.type === "email") && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r)) return n("bigconsole.widget.form.validation.email", "Please enter a valid email address");
33
34
  if (t.type === "url") try {
34
- new URL(n);
35
+ new URL(r);
35
36
  } catch {
36
- return "Please enter a valid URL";
37
+ return n("bigconsole.widget.form.validation.url", "Please enter a valid URL");
37
38
  }
38
39
  if (t.type === "number") {
39
- if (isNaN(Number(e))) return "Please enter a valid number";
40
- if (t.min !== void 0 && Number(e) < Number(t.min)) return `Value must be at least ${t.min}`;
41
- if (t.max !== void 0 && Number(e) > Number(t.max)) return `Value must be at most ${t.max}`;
40
+ if (isNaN(Number(e))) return n("bigconsole.widget.form.validation.number", "Please enter a valid number");
41
+ if (t.min !== void 0 && Number(e) < Number(t.min)) return n("bigconsole.widget.form.validation.min", "Value must be at least {{min}}", { min: t.min ?? "" });
42
+ if (t.max !== void 0 && Number(e) > Number(t.max)) return n("bigconsole.widget.form.validation.max", "Value must be at most {{max}}", { max: t.max ?? "" });
42
43
  }
43
44
  return null;
44
45
  }
45
- function p(e, t) {
46
- let n = {};
47
- for (let r of t) {
48
- let t = f(e[r.name], r);
49
- t && (n[r.name] = t);
46
+ function m(e, t, n) {
47
+ let r = {};
48
+ for (let i of t) {
49
+ let t = p(e[i.name], i, n);
50
+ t && (r[i.name] = t);
50
51
  }
51
- return n;
52
+ return r;
52
53
  }
53
- function m(e, t) {
54
+ function h(e, t) {
54
55
  let n = {}, r = {};
55
56
  if (!e || typeof e != "object" || Array.isArray(e)) {
56
57
  for (let e of t) n[e.name] = e.defaultValue ?? (e.type === "checkbox" ? !1 : "");
@@ -84,7 +85,7 @@ function m(e, t) {
84
85
  fieldOptions: r
85
86
  };
86
87
  }
87
- var h = {
88
+ var g = {
88
89
  container: {
89
90
  display: "flex",
90
91
  flexDirection: "column",
@@ -209,134 +210,140 @@ var h = {
209
210
  color: "var(--color-text-muted)",
210
211
  textAlign: "center"
211
212
  }
212
- }, g = e(function({ widget: e, data: g = {}, onDrilldown: _, onSubmit: v }) {
213
- let y = {
213
+ }, _ = e(function({ widget: e, data: _ = {}, onDrilldown: v, onSubmit: y }) {
214
+ let { t: b } = u(), x = {
214
215
  fields: [],
215
216
  layout: "vertical",
216
217
  submitLabel: "Submit",
217
218
  showReset: !0,
218
219
  validateOnBlur: !0,
219
220
  validateOnChange: !1
220
- }, b = e.config ? {
221
- ...y,
221
+ }, S = e.config ? {
222
+ ...x,
222
223
  ...e.config
223
- } : y, x = n(() => m(g, b.fields), [g, b.fields]), S = n(() => x.values, [x.values]), [C, w] = r(S), [T, E] = r({}), [D, O] = r(/* @__PURE__ */ new Set()), [k, A] = r(!1), [j, M] = r(!1), N = t((e, t) => {
224
- if (w((n) => ({
224
+ } : x, C = n(() => h(_, S.fields), [_, S.fields]), w = n(() => C.values, [C.values]), [T, E] = r(w), [D, O] = r({}), [k, A] = r(/* @__PURE__ */ new Set()), [j, M] = r(!1), [N, P] = r(!1), F = t((e, t) => {
225
+ if (E((n) => ({
225
226
  ...n,
226
227
  [e]: t
227
- })), M(!1), b.validateOnChange) {
228
- let n = b.fields.find((t) => t.name === e);
228
+ })), P(!1), S.validateOnChange) {
229
+ let n = S.fields.find((t) => t.name === e);
229
230
  if (n) {
230
- let r = f(t, n);
231
- E((t) => ({
231
+ let r = p(t, n, b);
232
+ O((t) => ({
232
233
  ...t,
233
234
  [e]: r
234
235
  }));
235
236
  }
236
237
  }
237
- }, [b.fields, b.validateOnChange]), P = t((e) => {
238
- if (O((t) => new Set(t).add(e)), b.validateOnBlur) {
239
- let t = b.fields.find((t) => t.name === e);
238
+ }, [
239
+ S.fields,
240
+ S.validateOnChange,
241
+ b
242
+ ]), I = t((e) => {
243
+ if (A((t) => new Set(t).add(e)), S.validateOnBlur) {
244
+ let t = S.fields.find((t) => t.name === e);
240
245
  if (t) {
241
- let n = f(C[e], t);
242
- E((t) => ({
246
+ let n = p(T[e], t, b);
247
+ O((t) => ({
243
248
  ...t,
244
249
  [e]: n
245
250
  }));
246
251
  }
247
252
  }
248
253
  }, [
249
- b.fields,
250
- b.validateOnBlur,
251
- C
252
- ]), F = t(async (t) => {
254
+ S.fields,
255
+ S.validateOnBlur,
256
+ T,
257
+ b
258
+ ]), L = t(async (t) => {
253
259
  t.preventDefault();
254
- let n = p(C, b.fields);
255
- if (E(n), O(new Set(b.fields.map((e) => e.name))), !Object.values(n).some((e) => e !== null)) {
256
- A(!0);
260
+ let n = m(T, S.fields, b);
261
+ if (O(n), A(new Set(S.fields.map((e) => e.name))), !Object.values(n).some((e) => e !== null)) {
262
+ M(!0);
257
263
  try {
258
264
  let t = {
259
- ...C,
260
- _action: b.submitAction || "form_submit",
265
+ ...T,
266
+ _action: S.submitAction || "form_submit",
261
267
  _widgetId: e.id,
262
268
  _timestamp: (/* @__PURE__ */ new Date()).toISOString()
263
269
  };
264
- v && await v(t), _ && _({
270
+ y && await y(t), v && v({
265
271
  type: "form_submit",
266
- action: b.submitAction || "form_submit",
272
+ action: S.submitAction || "form_submit",
267
273
  data: t
268
- }), M(!0);
274
+ }), P(!0);
269
275
  } catch {} finally {
270
- A(!1);
276
+ M(!1);
271
277
  }
272
278
  }
273
279
  }, [
274
- C,
275
- b.fields,
276
- b.submitAction,
280
+ T,
281
+ S.fields,
282
+ S.submitAction,
277
283
  e.id,
284
+ y,
278
285
  v,
279
- _
280
- ]), I = t(() => {
281
- w(S), E({}), O(/* @__PURE__ */ new Set()), M(!1);
282
- }, [S]), L = t((e) => {
283
- let t = C[e.name], n = !!(D.has(e.name) && T[e.name]), r = {
284
- ...h.input,
285
- ...n ? h.inputError : {}
286
+ b
287
+ ]), R = t(() => {
288
+ E(w), O({}), A(/* @__PURE__ */ new Set()), P(!1);
289
+ }, [w]), z = t((e) => {
290
+ let t = T[e.name], n = !!(k.has(e.name) && D[e.name]), r = {
291
+ ...g.input,
292
+ ...n ? g.inputError : {}
286
293
  };
287
294
  switch (e.type) {
288
- case "textarea": return /* @__PURE__ */ u("textarea", {
295
+ case "textarea": return /* @__PURE__ */ d("textarea", {
289
296
  id: e.name,
290
297
  name: e.name,
291
298
  value: String(t ?? ""),
292
299
  placeholder: e.placeholder,
293
300
  required: e.required,
294
- disabled: e.disabled || k,
301
+ disabled: e.disabled || j,
295
302
  readOnly: e.readonly,
296
303
  rows: e.rows || 4,
297
304
  style: {
298
305
  ...r,
299
- ...h.textarea
306
+ ...g.textarea
300
307
  },
301
- onChange: (t) => N(e.name, t.target.value),
302
- onBlur: () => P(e.name)
308
+ onChange: (t) => F(e.name, t.target.value),
309
+ onBlur: () => I(e.name)
303
310
  });
304
311
  case "select": {
305
- let n = x.fieldOptions[e.name] ?? e.options ?? [];
306
- return /* @__PURE__ */ d("select", {
312
+ let n = C.fieldOptions[e.name] ?? e.options ?? [];
313
+ return /* @__PURE__ */ f("select", {
307
314
  id: e.name,
308
315
  name: e.name,
309
316
  value: String(t ?? ""),
310
317
  required: e.required,
311
- disabled: e.disabled || k,
318
+ disabled: e.disabled || j,
312
319
  style: {
313
320
  ...r,
314
- ...h.select
321
+ ...g.select
315
322
  },
316
- onChange: (t) => N(e.name, t.target.value),
317
- onBlur: () => P(e.name),
318
- children: [/* @__PURE__ */ u("option", {
323
+ onChange: (t) => F(e.name, t.target.value),
324
+ onBlur: () => I(e.name),
325
+ children: [/* @__PURE__ */ d("option", {
319
326
  value: "",
320
- children: e.placeholder || `Select ${e.label}...`
321
- }), n.map((e) => /* @__PURE__ */ u("option", {
327
+ children: e.placeholder || b("bigconsole.widget.form.selectPlaceholder", "Select {{label}}...", { label: e.label ?? "" })
328
+ }), n.map((e) => /* @__PURE__ */ d("option", {
322
329
  value: e.value,
323
330
  disabled: e.disabled,
324
331
  children: e.label
325
332
  }, e.value))]
326
333
  });
327
334
  }
328
- case "checkbox": return /* @__PURE__ */ d("div", {
329
- style: h.checkbox,
330
- children: [/* @__PURE__ */ u("input", {
335
+ case "checkbox": return /* @__PURE__ */ f("div", {
336
+ style: g.checkbox,
337
+ children: [/* @__PURE__ */ d("input", {
331
338
  type: "checkbox",
332
339
  id: e.name,
333
340
  name: e.name,
334
341
  checked: !!t,
335
- disabled: e.disabled || k,
336
- style: h.checkboxInput,
337
- onChange: (t) => N(e.name, t.target.checked),
338
- onBlur: () => P(e.name)
339
- }), /* @__PURE__ */ u("label", {
342
+ disabled: e.disabled || j,
343
+ style: g.checkboxInput,
344
+ onChange: (t) => F(e.name, t.target.checked),
345
+ onBlur: () => I(e.name)
346
+ }), /* @__PURE__ */ d("label", {
340
347
  htmlFor: e.name,
341
348
  style: {
342
349
  fontSize: "14px",
@@ -345,25 +352,25 @@ var h = {
345
352
  children: e.label
346
353
  })]
347
354
  });
348
- case "radio": return /* @__PURE__ */ u("div", {
355
+ case "radio": return /* @__PURE__ */ d("div", {
349
356
  style: {
350
357
  display: "flex",
351
358
  flexDirection: "column",
352
359
  gap: "8px"
353
360
  },
354
- children: (x.fieldOptions[e.name] ?? e.options ?? []).map((n) => /* @__PURE__ */ d("div", {
355
- style: h.checkbox,
356
- children: [/* @__PURE__ */ u("input", {
361
+ children: (C.fieldOptions[e.name] ?? e.options ?? []).map((n) => /* @__PURE__ */ f("div", {
362
+ style: g.checkbox,
363
+ children: [/* @__PURE__ */ d("input", {
357
364
  type: "radio",
358
365
  id: `${e.name}-${n.value}`,
359
366
  name: e.name,
360
367
  value: n.value,
361
368
  checked: t === n.value,
362
- disabled: e.disabled || n.disabled || k,
363
- style: h.checkboxInput,
364
- onChange: (t) => N(e.name, t.target.value),
365
- onBlur: () => P(e.name)
366
- }), /* @__PURE__ */ u("label", {
369
+ disabled: e.disabled || n.disabled || j,
370
+ style: g.checkboxInput,
371
+ onChange: (t) => F(e.name, t.target.value),
372
+ onBlur: () => I(e.name)
373
+ }), /* @__PURE__ */ d("label", {
367
374
  htmlFor: `${e.name}-${n.value}`,
368
375
  style: {
369
376
  fontSize: "14px",
@@ -373,104 +380,105 @@ var h = {
373
380
  })]
374
381
  }, n.value))
375
382
  });
376
- case "hidden": return /* @__PURE__ */ u("input", {
383
+ case "hidden": return /* @__PURE__ */ d("input", {
377
384
  type: "hidden",
378
385
  name: e.name,
379
386
  value: String(t ?? "")
380
387
  });
381
- default: return /* @__PURE__ */ u("input", {
388
+ default: return /* @__PURE__ */ d("input", {
382
389
  type: e.type,
383
390
  id: e.name,
384
391
  name: e.name,
385
392
  value: String(t ?? ""),
386
393
  placeholder: e.placeholder,
387
394
  required: e.required,
388
- disabled: e.disabled || k,
395
+ disabled: e.disabled || j,
389
396
  readOnly: e.readonly,
390
397
  min: e.min,
391
398
  max: e.max,
392
399
  step: e.step,
393
400
  pattern: e.pattern,
394
401
  style: r,
395
- onChange: (t) => N(e.name, e.type === "number" ? t.target.valueAsNumber : t.target.value),
396
- onBlur: () => P(e.name)
402
+ onChange: (t) => F(e.name, e.type === "number" ? t.target.valueAsNumber : t.target.value),
403
+ onBlur: () => I(e.name)
397
404
  });
398
405
  }
399
406
  }, [
400
- C,
401
407
  T,
402
408
  D,
403
409
  k,
404
- N,
405
- P,
406
- x
410
+ j,
411
+ F,
412
+ I,
413
+ C,
414
+ b
407
415
  ]);
408
- if (b.fields.length === 0) return /* @__PURE__ */ d("div", {
409
- style: h.emptyState,
416
+ if (S.fields.length === 0) return /* @__PURE__ */ f("div", {
417
+ style: g.emptyState,
410
418
  children: [
411
- /* @__PURE__ */ u(l, { style: {
419
+ /* @__PURE__ */ d(l, { style: {
412
420
  width: "48px",
413
421
  height: "48px",
414
422
  marginBottom: "16px",
415
423
  opacity: .5
416
424
  } }),
417
- /* @__PURE__ */ u("p", {
425
+ /* @__PURE__ */ d("p", {
418
426
  style: { fontSize: "14px" },
419
- children: "Configure Form Fields"
427
+ children: b("bigconsole.widget.form.configureTitle", "Configure Form Fields")
420
428
  }),
421
- /* @__PURE__ */ u("p", {
429
+ /* @__PURE__ */ d("p", {
422
430
  style: {
423
431
  fontSize: "12px",
424
432
  marginTop: "4px"
425
433
  },
426
- children: "Add fields in widget settings to create your form"
434
+ children: b("bigconsole.widget.form.configureHint", "Add fields in widget settings to create your form")
427
435
  })
428
436
  ]
429
437
  });
430
- let R = b.layout === "grid" ? {
438
+ let B = S.layout === "grid" ? {
431
439
  display: "grid",
432
- gridTemplateColumns: `repeat(${b.columns || 2}, 1fr)`,
440
+ gridTemplateColumns: `repeat(${S.columns || 2}, 1fr)`,
433
441
  gap: "16px"
434
442
  } : {};
435
- return /* @__PURE__ */ d("div", {
436
- style: h.container,
437
- children: [/* @__PURE__ */ d("form", {
438
- onSubmit: F,
443
+ return /* @__PURE__ */ f("div", {
444
+ style: g.container,
445
+ children: [/* @__PURE__ */ f("form", {
446
+ onSubmit: L,
439
447
  style: {
440
- ...h.form,
441
- ...R
448
+ ...g.form,
449
+ ...B
442
450
  },
443
- children: [j && b.successMessage && /* @__PURE__ */ d("div", {
451
+ children: [N && S.successMessage && /* @__PURE__ */ f("div", {
444
452
  style: {
445
- ...h.successMessage,
453
+ ...g.successMessage,
446
454
  gridColumn: "1 / -1"
447
455
  },
448
- children: [/* @__PURE__ */ u(a, { style: {
456
+ children: [/* @__PURE__ */ d(a, { style: {
449
457
  width: "18px",
450
458
  height: "18px"
451
- } }), b.successMessage]
452
- }), b.fields.map((e) => {
453
- if (e.type === "hidden") return L(e);
454
- let t = D.has(e.name) ? T[e.name] : null;
455
- return /* @__PURE__ */ d("div", {
456
- style: h.fieldWrapper,
459
+ } }), S.successMessage]
460
+ }), S.fields.map((e) => {
461
+ if (e.type === "hidden") return z(e);
462
+ let t = k.has(e.name) ? D[e.name] : null;
463
+ return /* @__PURE__ */ f("div", {
464
+ style: g.fieldWrapper,
457
465
  children: [
458
- e.type !== "checkbox" && /* @__PURE__ */ d("label", {
466
+ e.type !== "checkbox" && /* @__PURE__ */ f("label", {
459
467
  htmlFor: e.name,
460
- style: h.label,
461
- children: [e.label, e.required && /* @__PURE__ */ u("span", {
462
- style: h.required,
468
+ style: g.label,
469
+ children: [e.label, e.required && /* @__PURE__ */ d("span", {
470
+ style: g.required,
463
471
  children: "*"
464
472
  })]
465
473
  }),
466
- L(e),
467
- e.helpText && !t && /* @__PURE__ */ u("p", {
468
- style: h.helpText,
474
+ z(e),
475
+ e.helpText && !t && /* @__PURE__ */ d("p", {
476
+ style: g.helpText,
469
477
  children: e.helpText
470
478
  }),
471
- t && /* @__PURE__ */ d("p", {
472
- style: h.errorText,
473
- children: [/* @__PURE__ */ u(i, { style: {
479
+ t && /* @__PURE__ */ f("p", {
480
+ style: g.errorText,
481
+ children: [/* @__PURE__ */ d(i, { style: {
474
482
  width: "14px",
475
483
  height: "14px"
476
484
  } }), t]
@@ -478,43 +486,43 @@ var h = {
478
486
  ]
479
487
  }, e.name);
480
488
  })]
481
- }), /* @__PURE__ */ d("div", {
482
- style: h.footer,
483
- children: [b.showReset !== !1 && /* @__PURE__ */ d("button", {
489
+ }), /* @__PURE__ */ f("div", {
490
+ style: g.footer,
491
+ children: [S.showReset !== !1 && /* @__PURE__ */ f("button", {
484
492
  type: "button",
485
- onClick: I,
486
- disabled: k,
493
+ onClick: R,
494
+ disabled: j,
487
495
  style: {
488
- ...h.button,
489
- ...h.resetButton,
490
- opacity: k ? .6 : 1
496
+ ...g.button,
497
+ ...g.resetButton,
498
+ opacity: j ? .6 : 1
491
499
  },
492
- children: [/* @__PURE__ */ u(s, { style: {
500
+ children: [/* @__PURE__ */ d(s, { style: {
493
501
  width: "16px",
494
502
  height: "16px"
495
- } }), b.resetLabel || "Reset"]
496
- }), /* @__PURE__ */ d("button", {
503
+ } }), S.resetLabel || b("bigconsole.widget.form.reset", "Reset")]
504
+ }), /* @__PURE__ */ f("button", {
497
505
  type: "submit",
498
- onClick: F,
499
- disabled: k,
506
+ onClick: L,
507
+ disabled: j,
500
508
  style: {
501
- ...h.button,
502
- ...h.submitButton,
503
- opacity: k ? .6 : 1
509
+ ...g.button,
510
+ ...g.submitButton,
511
+ opacity: j ? .6 : 1
504
512
  },
505
- children: [k ? /* @__PURE__ */ u(o, { style: {
513
+ children: [j ? /* @__PURE__ */ d(o, { style: {
506
514
  width: "16px",
507
515
  height: "16px",
508
516
  animation: "spin 1s linear infinite"
509
- } }) : /* @__PURE__ */ u(c, { style: {
517
+ } }) : /* @__PURE__ */ d(c, { style: {
510
518
  width: "16px",
511
519
  height: "16px"
512
- } }), b.submitLabel || "Submit"]
520
+ } }), S.submitLabel || b("bigconsole.widget.form.submit", "Submit")]
513
521
  })]
514
522
  })]
515
523
  });
516
524
  });
517
525
  //#endregion
518
- export { g as default, m as normalizeFormData };
526
+ export { _ as default, h as normalizeFormData };
519
527
 
520
528
  //# sourceMappingURL=FormWidget.js.map