@burdenoff/microfe-bigconsole 2026.510.54
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.
- package/README.md +88 -0
- package/dist/bigconsole/BigConsoleRoot.d.ts +29 -0
- package/dist/bigconsole/BigConsoleRoot.d.ts.map +1 -0
- package/dist/bigconsole/BigConsoleRoot.js +215 -0
- package/dist/bigconsole/BigConsoleRoot.js.map +1 -0
- package/dist/bigconsole/BigConsoleRoutes.d.ts +6 -0
- package/dist/bigconsole/BigConsoleRoutes.d.ts.map +1 -0
- package/dist/bigconsole/BigConsoleRoutes.js +239 -0
- package/dist/bigconsole/BigConsoleRoutes.js.map +1 -0
- package/dist/bigconsole/components/DrilldownDashboardRenderer.d.ts +11 -0
- package/dist/bigconsole/components/DrilldownDashboardRenderer.d.ts.map +1 -0
- package/dist/bigconsole/components/DrilldownDashboardRenderer.js +199 -0
- package/dist/bigconsole/components/DrilldownDashboardRenderer.js.map +1 -0
- package/dist/bigconsole/components/DrilldownModal.d.ts +11 -0
- package/dist/bigconsole/components/DrilldownModal.d.ts.map +1 -0
- package/dist/bigconsole/components/DrilldownModal.js +117 -0
- package/dist/bigconsole/components/DrilldownModal.js.map +1 -0
- package/dist/bigconsole/components/dashboard/CreateDashboardDialog.d.ts +19 -0
- package/dist/bigconsole/components/dashboard/CreateDashboardDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js +430 -0
- package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js.map +1 -0
- package/dist/bigconsole/components/dashboard/DashboardCanvas.d.ts +44 -0
- package/dist/bigconsole/components/dashboard/DashboardCanvas.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/DashboardCanvas.js +342 -0
- package/dist/bigconsole/components/dashboard/DashboardCanvas.js.map +1 -0
- package/dist/bigconsole/components/dashboard/DashboardGrid.d.ts +25 -0
- package/dist/bigconsole/components/dashboard/DashboardGrid.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/DashboardGrid.js +88 -0
- package/dist/bigconsole/components/dashboard/DashboardGrid.js.map +1 -0
- package/dist/bigconsole/components/dashboard/DashboardToolbar.d.ts +27 -0
- package/dist/bigconsole/components/dashboard/DashboardToolbar.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/DashboardToolbar.js +131 -0
- package/dist/bigconsole/components/dashboard/DashboardToolbar.js.map +1 -0
- package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.d.ts +26 -0
- package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js +107 -0
- package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js.map +1 -0
- package/dist/bigconsole/components/dashboard/ExportDashboardDialog.d.ts +17 -0
- package/dist/bigconsole/components/dashboard/ExportDashboardDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/ExportDashboardDialog.js +342 -0
- package/dist/bigconsole/components/dashboard/ExportDashboardDialog.js.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.d.ts +12 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js +449 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.d.ts +16 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js +415 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.d.ts +13 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js +315 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.d.ts +19 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js +365 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/index.d.ts +8 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/index.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/GlobalFiltersBar/index.js +3 -0
- package/dist/bigconsole/components/dashboard/ImportDashboardDialog.d.ts +10 -0
- package/dist/bigconsole/components/dashboard/ImportDashboardDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js +486 -0
- package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js.map +1 -0
- package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.d.ts +26 -0
- package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.js +224 -0
- package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.js.map +1 -0
- package/dist/bigconsole/components/dashboard/PageTabsManager/index.d.ts +6 -0
- package/dist/bigconsole/components/dashboard/PageTabsManager/index.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/PageTabsManager/index.js +1 -0
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.d.ts +12 -0
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js +494 -0
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js.map +1 -0
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/index.d.ts +6 -0
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/index.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/SavedViewsDropdown/index.js +1 -0
- package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.d.ts +11 -0
- package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.js +477 -0
- package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.js.map +1 -0
- package/dist/bigconsole/components/dashboard/ShareDialog/index.d.ts +6 -0
- package/dist/bigconsole/components/dashboard/ShareDialog/index.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/ShareDialog/index.js +1 -0
- package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.d.ts +19 -0
- package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.js +905 -0
- package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.js.map +1 -0
- package/dist/bigconsole/components/dashboard/TemplatePicker/index.d.ts +6 -0
- package/dist/bigconsole/components/dashboard/TemplatePicker/index.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/TemplatePicker/index.js +1 -0
- package/dist/bigconsole/components/dashboard/WidgetPalette.d.ts +23 -0
- package/dist/bigconsole/components/dashboard/WidgetPalette.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/WidgetPalette.js +462 -0
- package/dist/bigconsole/components/dashboard/WidgetPalette.js.map +1 -0
- package/dist/bigconsole/components/dashboard/index.d.ts +19 -0
- package/dist/bigconsole/components/dashboard/index.d.ts.map +1 -0
- package/dist/bigconsole/components/dashboard/index.js +20 -0
- package/dist/bigconsole/components/datasink/CacheTTLSelector.d.ts +18 -0
- package/dist/bigconsole/components/datasink/CacheTTLSelector.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/CacheTTLSelector.js +247 -0
- package/dist/bigconsole/components/datasink/CacheTTLSelector.js.map +1 -0
- package/dist/bigconsole/components/datasink/ConfigurationForm.d.ts +21 -0
- package/dist/bigconsole/components/datasink/ConfigurationForm.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/DataPreviewPanel.d.ts +20 -0
- package/dist/bigconsole/components/datasink/DataPreviewPanel.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkCard.d.ts +23 -0
- package/dist/bigconsole/components/datasink/DataSinkCard.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkCard.js +137 -0
- package/dist/bigconsole/components/datasink/DataSinkCard.js.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkDataViewer.d.ts +18 -0
- package/dist/bigconsole/components/datasink/DataSinkDataViewer.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkDataViewer.js +43 -0
- package/dist/bigconsole/components/datasink/DataSinkDataViewer.js.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.d.ts +17 -0
- package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js +87 -0
- package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkRefreshConfig.d.ts +22 -0
- package/dist/bigconsole/components/datasink/DataSinkRefreshConfig.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.d.ts +17 -0
- package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js +88 -0
- package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkStatusBadge.d.ts +13 -0
- package/dist/bigconsole/components/datasink/DataSinkStatusBadge.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkStatusBadge.js +98 -0
- package/dist/bigconsole/components/datasink/DataSinkStatusBadge.js.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkTableViewer.d.ts +13 -0
- package/dist/bigconsole/components/datasink/DataSinkTableViewer.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/DataSinkTableViewer.js +174 -0
- package/dist/bigconsole/components/datasink/DataSinkTableViewer.js.map +1 -0
- package/dist/bigconsole/components/datasink/ExportDataSinkDialog.d.ts +17 -0
- package/dist/bigconsole/components/datasink/ExportDataSinkDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/ExportDataSinkDialog.js +322 -0
- package/dist/bigconsole/components/datasink/ExportDataSinkDialog.js.map +1 -0
- package/dist/bigconsole/components/datasink/FluidGridsPanel.d.ts +31 -0
- package/dist/bigconsole/components/datasink/FluidGridsPanel.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/ImportDataSinkDialog.d.ts +10 -0
- package/dist/bigconsole/components/datasink/ImportDataSinkDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js +402 -0
- package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js.map +1 -0
- package/dist/bigconsole/components/datasink/LinkedParsersPanel.d.ts +12 -0
- package/dist/bigconsole/components/datasink/LinkedParsersPanel.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/LinkedParsersPanel.js +128 -0
- package/dist/bigconsole/components/datasink/LinkedParsersPanel.js.map +1 -0
- package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.d.ts +11 -0
- package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.js +204 -0
- package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.js.map +1 -0
- package/dist/bigconsole/components/datasink/RefreshTypeSelector.d.ts +26 -0
- package/dist/bigconsole/components/datasink/RefreshTypeSelector.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/RefreshTypeSelector.js +301 -0
- package/dist/bigconsole/components/datasink/RefreshTypeSelector.js.map +1 -0
- package/dist/bigconsole/components/datasink/SetupStateBadge.d.ts +13 -0
- package/dist/bigconsole/components/datasink/SetupStateBadge.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/SetupStateBadge.js +107 -0
- package/dist/bigconsole/components/datasink/SetupStateBadge.js.map +1 -0
- package/dist/bigconsole/components/datasink/WorkflowStatusPanel.d.ts +30 -0
- package/dist/bigconsole/components/datasink/WorkflowStatusPanel.d.ts.map +1 -0
- package/dist/bigconsole/components/datasink/WorkflowStatusPanel.js +163 -0
- package/dist/bigconsole/components/datasink/WorkflowStatusPanel.js.map +1 -0
- package/dist/bigconsole/components/datasink/index.d.ts +24 -0
- package/dist/bigconsole/components/datasink/index.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/DataSinkSelector.d.ts +21 -0
- package/dist/bigconsole/components/parser/DataSinkSelector.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/DataSinkSelector.js +174 -0
- package/dist/bigconsole/components/parser/DataSinkSelector.js.map +1 -0
- package/dist/bigconsole/components/parser/ExportParserDialog.d.ts +17 -0
- package/dist/bigconsole/components/parser/ExportParserDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/ExportParserDialog.js +322 -0
- package/dist/bigconsole/components/parser/ExportParserDialog.js.map +1 -0
- package/dist/bigconsole/components/parser/ExpressionEditor.d.ts +25 -0
- package/dist/bigconsole/components/parser/ExpressionEditor.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/ExpressionEditor.js +119 -0
- package/dist/bigconsole/components/parser/ExpressionEditor.js.map +1 -0
- package/dist/bigconsole/components/parser/ImportParserDialog.d.ts +12 -0
- package/dist/bigconsole/components/parser/ImportParserDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/ImportParserDialog.js +427 -0
- package/dist/bigconsole/components/parser/ImportParserDialog.js.map +1 -0
- package/dist/bigconsole/components/parser/ParserBuilder.d.ts +41 -0
- package/dist/bigconsole/components/parser/ParserBuilder.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/ParserCard.d.ts +23 -0
- package/dist/bigconsole/components/parser/ParserCard.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/ParserCard.js +248 -0
- package/dist/bigconsole/components/parser/ParserCard.js.map +1 -0
- package/dist/bigconsole/components/parser/ParserFormDialog.d.ts +42 -0
- package/dist/bigconsole/components/parser/ParserFormDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/ParserSelector.d.ts +27 -0
- package/dist/bigconsole/components/parser/ParserSelector.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/ParserSelector.js +263 -0
- package/dist/bigconsole/components/parser/ParserSelector.js.map +1 -0
- package/dist/bigconsole/components/parser/ParserStatusBadge.d.ts +13 -0
- package/dist/bigconsole/components/parser/ParserStatusBadge.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/ParserStatusBadge.js +74 -0
- package/dist/bigconsole/components/parser/ParserStatusBadge.js.map +1 -0
- package/dist/bigconsole/components/parser/ParserTypeBadge.d.ts +11 -0
- package/dist/bigconsole/components/parser/ParserTypeBadge.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/ParserTypeBadge.js +48 -0
- package/dist/bigconsole/components/parser/ParserTypeBadge.js.map +1 -0
- package/dist/bigconsole/components/parser/TestPanel.d.ts +25 -0
- package/dist/bigconsole/components/parser/TestPanel.d.ts.map +1 -0
- package/dist/bigconsole/components/parser/index.d.ts +17 -0
- package/dist/bigconsole/components/parser/index.d.ts.map +1 -0
- package/dist/bigconsole/components/pipeline/PipelineCard.d.ts +12 -0
- package/dist/bigconsole/components/pipeline/PipelineCard.d.ts.map +1 -0
- package/dist/bigconsole/components/pipeline/PipelineCard.js +159 -0
- package/dist/bigconsole/components/pipeline/PipelineCard.js.map +1 -0
- package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.d.ts +11 -0
- package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.js +94 -0
- package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.js.map +1 -0
- package/dist/bigconsole/components/pipeline/PipelineStatusBadge.d.ts +9 -0
- package/dist/bigconsole/components/pipeline/PipelineStatusBadge.d.ts.map +1 -0
- package/dist/bigconsole/components/pipeline/PipelineStatusBadge.js +36 -0
- package/dist/bigconsole/components/pipeline/PipelineStatusBadge.js.map +1 -0
- package/dist/bigconsole/components/pipeline/index.d.ts +9 -0
- package/dist/bigconsole/components/pipeline/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/ActionConfigDialog.d.ts +13 -0
- package/dist/bigconsole/components/widgets/ActionConfigDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/ActionConfigDialog.js +671 -0
- package/dist/bigconsole/components/widgets/ActionConfigDialog.js.map +1 -0
- package/dist/bigconsole/components/widgets/DrilldownConfigPanel.d.ts +26 -0
- package/dist/bigconsole/components/widgets/DrilldownConfigPanel.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js +378 -0
- package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js.map +1 -0
- package/dist/bigconsole/components/widgets/PropertiesPanel.d.ts +9 -0
- package/dist/bigconsole/components/widgets/PropertiesPanel.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/PropertiesPanel.js +1594 -0
- package/dist/bigconsole/components/widgets/PropertiesPanel.js.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetConfigDialog.d.ts +25 -0
- package/dist/bigconsole/components/widgets/WidgetConfigDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetConfigDialog.js +882 -0
- package/dist/bigconsole/components/widgets/WidgetConfigDialog.js.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetErrorBoundary.d.ts +23 -0
- package/dist/bigconsole/components/widgets/WidgetErrorBoundary.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetErrorBoundary.js +75 -0
- package/dist/bigconsole/components/widgets/WidgetErrorBoundary.js.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetHeader.d.ts +31 -0
- package/dist/bigconsole/components/widgets/WidgetHeader.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetHeader.js +265 -0
- package/dist/bigconsole/components/widgets/WidgetHeader.js.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetMenu.d.ts +18 -0
- package/dist/bigconsole/components/widgets/WidgetMenu.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetMenu.js +296 -0
- package/dist/bigconsole/components/widgets/WidgetMenu.js.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetRegistry.d.ts +113 -0
- package/dist/bigconsole/components/widgets/WidgetRegistry.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetRegistry.js +836 -0
- package/dist/bigconsole/components/widgets/WidgetRegistry.js.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetTypeSelector.d.ts +16 -0
- package/dist/bigconsole/components/widgets/WidgetTypeSelector.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetTypeSelector.js +291 -0
- package/dist/bigconsole/components/widgets/WidgetTypeSelector.js.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetWrapper.d.ts +31 -0
- package/dist/bigconsole/components/widgets/WidgetWrapper.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/WidgetWrapper.js +516 -0
- package/dist/bigconsole/components/widgets/WidgetWrapper.js.map +1 -0
- package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.d.ts +38 -0
- package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.js +106 -0
- package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/adaptive-card/index.d.ts +7 -0
- package/dist/bigconsole/components/widgets/adaptive-card/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/adaptive-card/index.js +2 -0
- package/dist/bigconsole/components/widgets/area-chart/index.d.ts +12 -0
- package/dist/bigconsole/components/widgets/area-chart/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/bar-chart/index.d.ts +12 -0
- package/dist/bigconsole/components/widgets/bar-chart/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/calendar/CalendarWidget.d.ts +25 -0
- package/dist/bigconsole/components/widgets/calendar/CalendarWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js +113 -0
- package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/calendar/index.d.ts +3 -0
- package/dist/bigconsole/components/widgets/calendar/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/calendar/index.js +2 -0
- package/dist/bigconsole/components/widgets/chart/ChartConfig.d.ts +12 -0
- package/dist/bigconsole/components/widgets/chart/ChartConfig.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/ChartConfig.js +254 -0
- package/dist/bigconsole/components/widgets/chart/ChartConfig.js.map +1 -0
- package/dist/bigconsole/components/widgets/chart/ChartLegend.d.ts +25 -0
- package/dist/bigconsole/components/widgets/chart/ChartLegend.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/ChartLegend.js +40 -0
- package/dist/bigconsole/components/widgets/chart/ChartLegend.js.map +1 -0
- package/dist/bigconsole/components/widgets/chart/ChartTooltip.d.ts +24 -0
- package/dist/bigconsole/components/widgets/chart/ChartTooltip.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/ChartTooltip.js +34 -0
- package/dist/bigconsole/components/widgets/chart/ChartTooltip.js.map +1 -0
- package/dist/bigconsole/components/widgets/chart/ChartWidget.d.ts +17 -0
- package/dist/bigconsole/components/widgets/chart/ChartWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/ChartWidget.js +151 -0
- package/dist/bigconsole/components/widgets/chart/ChartWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/AreaChart.d.ts +16 -0
- package/dist/bigconsole/components/widgets/chart/charts/AreaChart.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/AreaChart.js +104 -0
- package/dist/bigconsole/components/widgets/chart/charts/AreaChart.js.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/BarChart.d.ts +16 -0
- package/dist/bigconsole/components/widgets/chart/charts/BarChart.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/BarChart.js +90 -0
- package/dist/bigconsole/components/widgets/chart/charts/BarChart.js.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/FunnelChart.d.ts +18 -0
- package/dist/bigconsole/components/widgets/chart/charts/FunnelChart.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/FunnelChart.js +70 -0
- package/dist/bigconsole/components/widgets/chart/charts/FunnelChart.js.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/LineChart.d.ts +16 -0
- package/dist/bigconsole/components/widgets/chart/charts/LineChart.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/LineChart.js +96 -0
- package/dist/bigconsole/components/widgets/chart/charts/LineChart.js.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/PieChart.d.ts +18 -0
- package/dist/bigconsole/components/widgets/chart/charts/PieChart.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/PieChart.js +98 -0
- package/dist/bigconsole/components/widgets/chart/charts/PieChart.js.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/index.d.ts +12 -0
- package/dist/bigconsole/components/widgets/chart/charts/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/charts/index.js +5 -0
- package/dist/bigconsole/components/widgets/chart/charts/types.d.ts +45 -0
- package/dist/bigconsole/components/widgets/chart/charts/types.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/index.d.ts +11 -0
- package/dist/bigconsole/components/widgets/chart/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/chart/index.js +11 -0
- package/dist/bigconsole/components/widgets/custom/CustomWidget.d.ts +13 -0
- package/dist/bigconsole/components/widgets/custom/CustomWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/custom/CustomWidget.js +201 -0
- package/dist/bigconsole/components/widgets/custom/CustomWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/custom/config.d.ts +9 -0
- package/dist/bigconsole/components/widgets/custom/config.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/custom/config.js +21 -0
- package/dist/bigconsole/components/widgets/custom/config.js.map +1 -0
- package/dist/bigconsole/components/widgets/custom/index.d.ts +8 -0
- package/dist/bigconsole/components/widgets/custom/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/custom/index.js +3 -0
- package/dist/bigconsole/components/widgets/custom/utils.d.ts +4 -0
- package/dist/bigconsole/components/widgets/custom/utils.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/custom/utils.js +13 -0
- package/dist/bigconsole/components/widgets/custom/utils.js.map +1 -0
- package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.d.ts +16 -0
- package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js +377 -0
- package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js.map +1 -0
- package/dist/bigconsole/components/widgets/event-logs/index.d.ts +6 -0
- package/dist/bigconsole/components/widgets/event-logs/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/event-logs/index.js +1 -0
- package/dist/bigconsole/components/widgets/form/FormWidget.d.ts +27 -0
- package/dist/bigconsole/components/widgets/form/FormWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/form/FormWidget.js +486 -0
- package/dist/bigconsole/components/widgets/form/FormWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/form/index.d.ts +6 -0
- package/dist/bigconsole/components/widgets/form/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/form/index.js +2 -0
- package/dist/bigconsole/components/widgets/funnel/index.d.ts +12 -0
- package/dist/bigconsole/components/widgets/funnel/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/funnel/index.js +22 -0
- package/dist/bigconsole/components/widgets/funnel/index.js.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/CircularGauge.d.ts +31 -0
- package/dist/bigconsole/components/widgets/gauge/CircularGauge.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/CircularGauge.js +77 -0
- package/dist/bigconsole/components/widgets/gauge/CircularGauge.js.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/GaugeConfig.d.ts +12 -0
- package/dist/bigconsole/components/widgets/gauge/GaugeConfig.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js +180 -0
- package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/GaugeWidget.d.ts +22 -0
- package/dist/bigconsole/components/widgets/gauge/GaugeWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/GaugeWidget.js +217 -0
- package/dist/bigconsole/components/widgets/gauge/GaugeWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/LinearGauge.d.ts +28 -0
- package/dist/bigconsole/components/widgets/gauge/LinearGauge.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/LinearGauge.js +92 -0
- package/dist/bigconsole/components/widgets/gauge/LinearGauge.js.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/index.d.ts +10 -0
- package/dist/bigconsole/components/widgets/gauge/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/gauge/index.js +5 -0
- package/dist/bigconsole/components/widgets/heatmap/HeatmapWidget.d.ts +23 -0
- package/dist/bigconsole/components/widgets/heatmap/HeatmapWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/heatmap/HeatmapWidget.js +98 -0
- package/dist/bigconsole/components/widgets/heatmap/HeatmapWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/heatmap/index.d.ts +7 -0
- package/dist/bigconsole/components/widgets/heatmap/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/heatmap/index.js +2 -0
- package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.d.ts +17 -0
- package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.js +45 -0
- package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/iframe-widget/index.d.ts +3 -0
- package/dist/bigconsole/components/widgets/iframe-widget/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/iframe-widget/index.js +2 -0
- package/dist/bigconsole/components/widgets/index.d.ts +34 -0
- package/dist/bigconsole/components/widgets/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/index.js +51 -0
- package/dist/bigconsole/components/widgets/kanban/KanbanWidget.d.ts +29 -0
- package/dist/bigconsole/components/widgets/kanban/KanbanWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js +92 -0
- package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/kanban/index.d.ts +3 -0
- package/dist/bigconsole/components/widgets/kanban/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/kanban/index.js +2 -0
- package/dist/bigconsole/components/widgets/kpi/KPIWidget.d.ts +23 -0
- package/dist/bigconsole/components/widgets/kpi/KPIWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/kpi/KPIWidget.js +83 -0
- package/dist/bigconsole/components/widgets/kpi/KPIWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/kpi/index.d.ts +7 -0
- package/dist/bigconsole/components/widgets/kpi/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/kpi/index.js +1 -0
- package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.d.ts +25 -0
- package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.js +188 -0
- package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/kpi-comparison/index.d.ts +3 -0
- package/dist/bigconsole/components/widgets/kpi-comparison/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/kpi-comparison/index.js +2 -0
- package/dist/bigconsole/components/widgets/line-chart/index.d.ts +12 -0
- package/dist/bigconsole/components/widgets/line-chart/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/list/ListConfig.d.ts +12 -0
- package/dist/bigconsole/components/widgets/list/ListConfig.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/list/ListConfig.js +131 -0
- package/dist/bigconsole/components/widgets/list/ListConfig.js.map +1 -0
- package/dist/bigconsole/components/widgets/list/ListItem.d.ts +39 -0
- package/dist/bigconsole/components/widgets/list/ListItem.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/list/ListItem.js +103 -0
- package/dist/bigconsole/components/widgets/list/ListItem.js.map +1 -0
- package/dist/bigconsole/components/widgets/list/ListWidget.d.ts +17 -0
- package/dist/bigconsole/components/widgets/list/ListWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/list/ListWidget.js +106 -0
- package/dist/bigconsole/components/widgets/list/ListWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/list/index.d.ts +9 -0
- package/dist/bigconsole/components/widgets/list/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/list/index.js +4 -0
- package/dist/bigconsole/components/widgets/map-widget/MapWidget.d.ts +29 -0
- package/dist/bigconsole/components/widgets/map-widget/MapWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/map-widget/MapWidget.js +125 -0
- package/dist/bigconsole/components/widgets/map-widget/MapWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/map-widget/index.d.ts +3 -0
- package/dist/bigconsole/components/widgets/map-widget/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/map-widget/index.js +2 -0
- package/dist/bigconsole/components/widgets/metric-card/ComparisonBadge.d.ts +15 -0
- package/dist/bigconsole/components/widgets/metric-card/ComparisonBadge.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/ComparisonBadge.js +34 -0
- package/dist/bigconsole/components/widgets/metric-card/ComparisonBadge.js.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.d.ts +12 -0
- package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js +158 -0
- package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/MetricCardWidget.d.ts +36 -0
- package/dist/bigconsole/components/widgets/metric-card/MetricCardWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/MetricCardWidget.js +195 -0
- package/dist/bigconsole/components/widgets/metric-card/MetricCardWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/SparklineChart.d.ts +23 -0
- package/dist/bigconsole/components/widgets/metric-card/SparklineChart.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js +94 -0
- package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.d.ts +14 -0
- package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js +55 -0
- package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/index.d.ts +11 -0
- package/dist/bigconsole/components/widgets/metric-card/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/metric-card/index.js +6 -0
- package/dist/bigconsole/components/widgets/pie-chart/index.d.ts +12 -0
- package/dist/bigconsole/components/widgets/pie-chart/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.d.ts +26 -0
- package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js +281 -0
- package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/pivot-table/index.d.ts +6 -0
- package/dist/bigconsole/components/widgets/pivot-table/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/pivot-table/index.js +2 -0
- package/dist/bigconsole/components/widgets/progress/ProgressBar.d.ts +29 -0
- package/dist/bigconsole/components/widgets/progress/ProgressBar.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/progress/ProgressBar.js +94 -0
- package/dist/bigconsole/components/widgets/progress/ProgressBar.js.map +1 -0
- package/dist/bigconsole/components/widgets/progress/ProgressConfig.d.ts +12 -0
- package/dist/bigconsole/components/widgets/progress/ProgressConfig.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/progress/ProgressConfig.js +187 -0
- package/dist/bigconsole/components/widgets/progress/ProgressConfig.js.map +1 -0
- package/dist/bigconsole/components/widgets/progress/ProgressWidget.d.ts +28 -0
- package/dist/bigconsole/components/widgets/progress/ProgressWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/progress/ProgressWidget.js +201 -0
- package/dist/bigconsole/components/widgets/progress/ProgressWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/progress/index.d.ts +9 -0
- package/dist/bigconsole/components/widgets/progress/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/progress/index.js +4 -0
- package/dist/bigconsole/components/widgets/retention/RetentionWidget.d.ts +25 -0
- package/dist/bigconsole/components/widgets/retention/RetentionWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/retention/RetentionWidget.js +159 -0
- package/dist/bigconsole/components/widgets/retention/RetentionWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/retention/index.d.ts +7 -0
- package/dist/bigconsole/components/widgets/retention/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/retention/index.js +2 -0
- package/dist/bigconsole/components/widgets/states/EmptyState.d.ts +14 -0
- package/dist/bigconsole/components/widgets/states/EmptyState.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/states/EmptyState.js +61 -0
- package/dist/bigconsole/components/widgets/states/EmptyState.js.map +1 -0
- package/dist/bigconsole/components/widgets/states/ErrorState.d.ts +11 -0
- package/dist/bigconsole/components/widgets/states/ErrorState.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/states/ErrorState.js +56 -0
- package/dist/bigconsole/components/widgets/states/ErrorState.js.map +1 -0
- package/dist/bigconsole/components/widgets/states/LoadingState.d.ts +9 -0
- package/dist/bigconsole/components/widgets/states/LoadingState.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/states/LoadingState.js +21 -0
- package/dist/bigconsole/components/widgets/states/LoadingState.js.map +1 -0
- package/dist/bigconsole/components/widgets/states/index.d.ts +9 -0
- package/dist/bigconsole/components/widgets/states/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/states/index.js +3 -0
- package/dist/bigconsole/components/widgets/table/TableCell.d.ts +31 -0
- package/dist/bigconsole/components/widgets/table/TableCell.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/table/TableCell.js +65 -0
- package/dist/bigconsole/components/widgets/table/TableCell.js.map +1 -0
- package/dist/bigconsole/components/widgets/table/TableConfig.d.ts +12 -0
- package/dist/bigconsole/components/widgets/table/TableConfig.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/table/TableConfig.js +254 -0
- package/dist/bigconsole/components/widgets/table/TableConfig.js.map +1 -0
- package/dist/bigconsole/components/widgets/table/TableHeader.d.ts +32 -0
- package/dist/bigconsole/components/widgets/table/TableHeader.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/table/TableHeader.js +85 -0
- package/dist/bigconsole/components/widgets/table/TableHeader.js.map +1 -0
- package/dist/bigconsole/components/widgets/table/TablePagination.d.ts +23 -0
- package/dist/bigconsole/components/widgets/table/TablePagination.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/table/TablePagination.js +166 -0
- package/dist/bigconsole/components/widgets/table/TablePagination.js.map +1 -0
- package/dist/bigconsole/components/widgets/table/TableWidget.d.ts +16 -0
- package/dist/bigconsole/components/widgets/table/TableWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/table/TableWidget.js +258 -0
- package/dist/bigconsole/components/widgets/table/TableWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/table/index.d.ts +11 -0
- package/dist/bigconsole/components/widgets/table/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/table/index.js +6 -0
- package/dist/bigconsole/components/widgets/text-widget/TextWidget.d.ts +14 -0
- package/dist/bigconsole/components/widgets/text-widget/TextWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/text-widget/TextWidget.js +47 -0
- package/dist/bigconsole/components/widgets/text-widget/TextWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/text-widget/index.d.ts +3 -0
- package/dist/bigconsole/components/widgets/text-widget/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/text-widget/index.js +2 -0
- package/dist/bigconsole/components/widgets/timeline/TimelineWidget.d.ts +31 -0
- package/dist/bigconsole/components/widgets/timeline/TimelineWidget.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/timeline/TimelineWidget.js +147 -0
- package/dist/bigconsole/components/widgets/timeline/TimelineWidget.js.map +1 -0
- package/dist/bigconsole/components/widgets/timeline/index.d.ts +3 -0
- package/dist/bigconsole/components/widgets/timeline/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/timeline/index.js +2 -0
- package/dist/bigconsole/components/widgets/utils/inferFields.d.ts +45 -0
- package/dist/bigconsole/components/widgets/utils/inferFields.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/utils/inferFields.js +58 -0
- package/dist/bigconsole/components/widgets/utils/inferFields.js.map +1 -0
- package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.d.ts +16 -0
- package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js +500 -0
- package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js.map +1 -0
- package/dist/bigconsole/components/widgets/webhook-config/index.d.ts +6 -0
- package/dist/bigconsole/components/widgets/webhook-config/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/webhook-config/index.js +1 -0
- package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.d.ts +26 -0
- package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.js +467 -0
- package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.js.map +1 -0
- package/dist/bigconsole/components/widgets/widget-actions/index.d.ts +8 -0
- package/dist/bigconsole/components/widgets/widget-actions/index.d.ts.map +1 -0
- package/dist/bigconsole/components/widgets/widget-actions/index.js +1 -0
- package/dist/bigconsole/components/workflow/DataSinkMultiSelector.d.ts +19 -0
- package/dist/bigconsole/components/workflow/DataSinkMultiSelector.d.ts.map +1 -0
- package/dist/bigconsole/components/workflow/WorkflowCard.d.ts +11 -0
- package/dist/bigconsole/components/workflow/WorkflowCard.d.ts.map +1 -0
- package/dist/bigconsole/components/workflow/WorkflowCard.js +158 -0
- package/dist/bigconsole/components/workflow/WorkflowCard.js.map +1 -0
- package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.d.ts +11 -0
- package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.d.ts.map +1 -0
- package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.js +94 -0
- package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.js.map +1 -0
- package/dist/bigconsole/components/workflow/WorkflowStatusBadge.d.ts +13 -0
- package/dist/bigconsole/components/workflow/WorkflowStatusBadge.d.ts.map +1 -0
- package/dist/bigconsole/components/workflow/WorkflowStatusBadge.js +115 -0
- package/dist/bigconsole/components/workflow/WorkflowStatusBadge.js.map +1 -0
- package/dist/bigconsole/components/workflow/index.d.ts +10 -0
- package/dist/bigconsole/components/workflow/index.d.ts.map +1 -0
- package/dist/bigconsole/constants.d.ts +15 -0
- package/dist/bigconsole/constants.d.ts.map +1 -0
- package/dist/bigconsole/constants.js +6 -0
- package/dist/bigconsole/constants.js.map +1 -0
- package/dist/bigconsole/context/BigConsoleContext.d.ts +25 -0
- package/dist/bigconsole/context/BigConsoleContext.d.ts.map +1 -0
- package/dist/bigconsole/context/BigConsoleContext.js +53 -0
- package/dist/bigconsole/context/BigConsoleContext.js.map +1 -0
- package/dist/bigconsole/context/index.d.ts +2 -0
- package/dist/bigconsole/context/index.d.ts.map +1 -0
- package/dist/bigconsole/context/index.js +1 -0
- package/dist/bigconsole/contexts/CrossFilterContext.d.ts +48 -0
- package/dist/bigconsole/contexts/CrossFilterContext.d.ts.map +1 -0
- package/dist/bigconsole/contexts/CrossFilterContext.js +92 -0
- package/dist/bigconsole/contexts/CrossFilterContext.js.map +1 -0
- package/dist/bigconsole/contexts/NavigationContext.d.ts +45 -0
- package/dist/bigconsole/contexts/NavigationContext.d.ts.map +1 -0
- package/dist/bigconsole/contexts/NavigationContext.js +43 -0
- package/dist/bigconsole/contexts/NavigationContext.js.map +1 -0
- package/dist/bigconsole/contexts/index.d.ts +8 -0
- package/dist/bigconsole/contexts/index.d.ts.map +1 -0
- package/dist/bigconsole/contexts/index.js +2 -0
- package/dist/bigconsole/graphql/apollo-compat.d.ts +16 -0
- package/dist/bigconsole/graphql/apollo-compat.d.ts.map +1 -0
- package/dist/bigconsole/hooks/index.d.ts +35 -0
- package/dist/bigconsole/hooks/index.d.ts.map +1 -0
- package/dist/bigconsole/hooks/index.js +29 -0
- package/dist/bigconsole/hooks/useAutoRefresh.d.ts +51 -0
- package/dist/bigconsole/hooks/useAutoRefresh.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useAutoRefresh.js +93 -0
- package/dist/bigconsole/hooks/useAutoRefresh.js.map +1 -0
- package/dist/bigconsole/hooks/useCrossFilter.d.ts +79 -0
- package/dist/bigconsole/hooks/useCrossFilter.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useCrossFilter.js +63 -0
- package/dist/bigconsole/hooks/useCrossFilter.js.map +1 -0
- package/dist/bigconsole/hooks/useDashboardOperations.d.ts +43 -0
- package/dist/bigconsole/hooks/useDashboardOperations.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useDashboardOperations.js +187 -0
- package/dist/bigconsole/hooks/useDashboardOperations.js.map +1 -0
- package/dist/bigconsole/hooks/useDashboardSharing.d.ts +60 -0
- package/dist/bigconsole/hooks/useDashboardSharing.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useDashboardSharing.js +157 -0
- package/dist/bigconsole/hooks/useDashboardSharing.js.map +1 -0
- package/dist/bigconsole/hooks/useDashboardTemplates.d.ts +135 -0
- package/dist/bigconsole/hooks/useDashboardTemplates.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useDashboardTemplates.js +298 -0
- package/dist/bigconsole/hooks/useDashboardTemplates.js.map +1 -0
- package/dist/bigconsole/hooks/useDashboardViews.d.ts +58 -0
- package/dist/bigconsole/hooks/useDashboardViews.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useDashboardViews.js +170 -0
- package/dist/bigconsole/hooks/useDashboardViews.js.map +1 -0
- package/dist/bigconsole/hooks/useDataSinkOperations.d.ts +55 -0
- package/dist/bigconsole/hooks/useDataSinkOperations.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useDataSinkOperations.js +245 -0
- package/dist/bigconsole/hooks/useDataSinkOperations.js.map +1 -0
- package/dist/bigconsole/hooks/useDataSinkSubscription.d.ts +31 -0
- package/dist/bigconsole/hooks/useDataSinkSubscription.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useDataSinkSubscription.js +127 -0
- package/dist/bigconsole/hooks/useDataSinkSubscription.js.map +1 -0
- package/dist/bigconsole/hooks/useDrilldown.d.ts +63 -0
- package/dist/bigconsole/hooks/useDrilldown.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useDrilldown.js +192 -0
- package/dist/bigconsole/hooks/useDrilldown.js.map +1 -0
- package/dist/bigconsole/hooks/useDrilldownOperations.d.ts +42 -0
- package/dist/bigconsole/hooks/useDrilldownOperations.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useDrilldownOperations.js +62 -0
- package/dist/bigconsole/hooks/useDrilldownOperations.js.map +1 -0
- package/dist/bigconsole/hooks/useEventLogs.d.ts +94 -0
- package/dist/bigconsole/hooks/useEventLogs.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useEventLogs.js +116 -0
- package/dist/bigconsole/hooks/useEventLogs.js.map +1 -0
- package/dist/bigconsole/hooks/useEventWebhooks.d.ts +91 -0
- package/dist/bigconsole/hooks/useEventWebhooks.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useEventWebhooks.js +138 -0
- package/dist/bigconsole/hooks/useEventWebhooks.js.map +1 -0
- package/dist/bigconsole/hooks/useExportDashboard.d.ts +28 -0
- package/dist/bigconsole/hooks/useExportDashboard.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useExportDashboard.js +65 -0
- package/dist/bigconsole/hooks/useExportDashboard.js.map +1 -0
- package/dist/bigconsole/hooks/useExportDataSink.d.ts +27 -0
- package/dist/bigconsole/hooks/useExportDataSink.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useExportDataSink.js +87 -0
- package/dist/bigconsole/hooks/useExportDataSink.js.map +1 -0
- package/dist/bigconsole/hooks/useExportParser.d.ts +25 -0
- package/dist/bigconsole/hooks/useExportParser.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useExportParser.js +81 -0
- package/dist/bigconsole/hooks/useExportParser.js.map +1 -0
- package/dist/bigconsole/hooks/useFilterPresets.d.ts +47 -0
- package/dist/bigconsole/hooks/useFilterPresets.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useFilterPresets.js +157 -0
- package/dist/bigconsole/hooks/useFilterPresets.js.map +1 -0
- package/dist/bigconsole/hooks/useFilterUrlSync.d.ts +46 -0
- package/dist/bigconsole/hooks/useFilterUrlSync.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useFilterUrlSync.js +179 -0
- package/dist/bigconsole/hooks/useFilterUrlSync.js.map +1 -0
- package/dist/bigconsole/hooks/useGlobalFilters.d.ts +69 -0
- package/dist/bigconsole/hooks/useGlobalFilters.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useGlobalFilters.js +154 -0
- package/dist/bigconsole/hooks/useGlobalFilters.js.map +1 -0
- package/dist/bigconsole/hooks/useImportDashboard.d.ts +88 -0
- package/dist/bigconsole/hooks/useImportDashboard.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useImportDashboard.js +157 -0
- package/dist/bigconsole/hooks/useImportDashboard.js.map +1 -0
- package/dist/bigconsole/hooks/useImportDataSink.d.ts +74 -0
- package/dist/bigconsole/hooks/useImportDataSink.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useImportDataSink.js +219 -0
- package/dist/bigconsole/hooks/useImportDataSink.js.map +1 -0
- package/dist/bigconsole/hooks/useImportParser.d.ts +77 -0
- package/dist/bigconsole/hooks/useImportParser.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useImportParser.js +222 -0
- package/dist/bigconsole/hooks/useImportParser.js.map +1 -0
- package/dist/bigconsole/hooks/useInstalledWidgets.d.ts +15 -0
- package/dist/bigconsole/hooks/useInstalledWidgets.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useInstalledWidgets.js +81 -0
- package/dist/bigconsole/hooks/useInstalledWidgets.js.map +1 -0
- package/dist/bigconsole/hooks/usePageOperations.d.ts +35 -0
- package/dist/bigconsole/hooks/usePageOperations.d.ts.map +1 -0
- package/dist/bigconsole/hooks/usePageOperations.js +95 -0
- package/dist/bigconsole/hooks/usePageOperations.js.map +1 -0
- package/dist/bigconsole/hooks/useParserOperations.d.ts +64 -0
- package/dist/bigconsole/hooks/useParserOperations.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useParserOperations.js +151 -0
- package/dist/bigconsole/hooks/useParserOperations.js.map +1 -0
- package/dist/bigconsole/hooks/usePipelineOperations.d.ts +76 -0
- package/dist/bigconsole/hooks/usePipelineOperations.d.ts.map +1 -0
- package/dist/bigconsole/hooks/usePipelineOperations.js +260 -0
- package/dist/bigconsole/hooks/usePipelineOperations.js.map +1 -0
- package/dist/bigconsole/hooks/useWidgetActions.d.ts +69 -0
- package/dist/bigconsole/hooks/useWidgetActions.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useWidgetActions.js +114 -0
- package/dist/bigconsole/hooks/useWidgetActions.js.map +1 -0
- package/dist/bigconsole/hooks/useWidgetData.d.ts +45 -0
- package/dist/bigconsole/hooks/useWidgetData.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useWidgetData.js +83 -0
- package/dist/bigconsole/hooks/useWidgetData.js.map +1 -0
- package/dist/bigconsole/hooks/useWidgetEvents.d.ts +60 -0
- package/dist/bigconsole/hooks/useWidgetEvents.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useWidgetEvents.js +35 -0
- package/dist/bigconsole/hooks/useWidgetEvents.js.map +1 -0
- package/dist/bigconsole/hooks/useWidgetExport.d.ts +19 -0
- package/dist/bigconsole/hooks/useWidgetExport.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useWidgetExport.js +77 -0
- package/dist/bigconsole/hooks/useWidgetExport.js.map +1 -0
- package/dist/bigconsole/hooks/useWidgetOperations.d.ts +61 -0
- package/dist/bigconsole/hooks/useWidgetOperations.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useWidgetOperations.js +248 -0
- package/dist/bigconsole/hooks/useWidgetOperations.js.map +1 -0
- package/dist/bigconsole/hooks/useWorkflowOperations.d.ts +54 -0
- package/dist/bigconsole/hooks/useWorkflowOperations.d.ts.map +1 -0
- package/dist/bigconsole/hooks/useWorkflowOperations.js +237 -0
- package/dist/bigconsole/hooks/useWorkflowOperations.js.map +1 -0
- package/dist/bigconsole/index.d.ts +30 -0
- package/dist/bigconsole/index.d.ts.map +1 -0
- package/dist/bigconsole/index.js +8 -0
- package/dist/bigconsole/modules/dashboard/index.d.ts +15 -0
- package/dist/bigconsole/modules/dashboard/index.d.ts.map +1 -0
- package/dist/bigconsole/modules/index.d.ts +15 -0
- package/dist/bigconsole/modules/index.d.ts.map +1 -0
- package/dist/bigconsole/modules/renderer/index.d.ts +8 -0
- package/dist/bigconsole/modules/renderer/index.d.ts.map +1 -0
- package/dist/bigconsole/modules/widget/index.d.ts +20 -0
- package/dist/bigconsole/modules/widget/index.d.ts.map +1 -0
- package/dist/bigconsole/pages/DashboardBuilderPage.d.ts +5 -0
- package/dist/bigconsole/pages/DashboardBuilderPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/DashboardBuilderPage.js +398 -0
- package/dist/bigconsole/pages/DashboardBuilderPage.js.map +1 -0
- package/dist/bigconsole/pages/DashboardViewPage.d.ts +5 -0
- package/dist/bigconsole/pages/DashboardViewPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/DashboardViewPage.js +325 -0
- package/dist/bigconsole/pages/DashboardViewPage.js.map +1 -0
- package/dist/bigconsole/pages/DashboardsPage.d.ts +5 -0
- package/dist/bigconsole/pages/DashboardsPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/DashboardsPage.js +555 -0
- package/dist/bigconsole/pages/DashboardsPage.js.map +1 -0
- package/dist/bigconsole/pages/DataParsersPage.d.ts +9 -0
- package/dist/bigconsole/pages/DataParsersPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/DataParsersPage.js +444 -0
- package/dist/bigconsole/pages/DataParsersPage.js.map +1 -0
- package/dist/bigconsole/pages/DataSinkBuilderPage.d.ts +10 -0
- package/dist/bigconsole/pages/DataSinkBuilderPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/DataSinkBuilderPage.js +538 -0
- package/dist/bigconsole/pages/DataSinkBuilderPage.js.map +1 -0
- package/dist/bigconsole/pages/DataSinkViewPage.d.ts +8 -0
- package/dist/bigconsole/pages/DataSinkViewPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/DataSinkViewPage.js +342 -0
- package/dist/bigconsole/pages/DataSinkViewPage.js.map +1 -0
- package/dist/bigconsole/pages/DataSinksPage.d.ts +5 -0
- package/dist/bigconsole/pages/DataSinksPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/DataSinksPage.js +835 -0
- package/dist/bigconsole/pages/DataSinksPage.js.map +1 -0
- package/dist/bigconsole/pages/DataSourcesPage.d.ts +10 -0
- package/dist/bigconsole/pages/DataSourcesPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/DataSourcesPage.js +18 -0
- package/dist/bigconsole/pages/DataSourcesPage.js.map +1 -0
- package/dist/bigconsole/pages/HomePage.d.ts +5 -0
- package/dist/bigconsole/pages/HomePage.d.ts.map +1 -0
- package/dist/bigconsole/pages/HomePage.js +338 -0
- package/dist/bigconsole/pages/HomePage.js.map +1 -0
- package/dist/bigconsole/pages/InsightsPage.d.ts +5 -0
- package/dist/bigconsole/pages/InsightsPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/InsightsPage.js +586 -0
- package/dist/bigconsole/pages/InsightsPage.js.map +1 -0
- package/dist/bigconsole/pages/ParserBuilderPage.d.ts +9 -0
- package/dist/bigconsole/pages/ParserBuilderPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/ParserBuilderPage.js +727 -0
- package/dist/bigconsole/pages/ParserBuilderPage.js.map +1 -0
- package/dist/bigconsole/pages/ParserViewPage.d.ts +8 -0
- package/dist/bigconsole/pages/ParserViewPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/ParserViewPage.js +394 -0
- package/dist/bigconsole/pages/ParserViewPage.js.map +1 -0
- package/dist/bigconsole/pages/PipelineBuilderPage.d.ts +9 -0
- package/dist/bigconsole/pages/PipelineBuilderPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/PipelineBuilderPage.js +585 -0
- package/dist/bigconsole/pages/PipelineBuilderPage.js.map +1 -0
- package/dist/bigconsole/pages/PipelineViewPage.d.ts +9 -0
- package/dist/bigconsole/pages/PipelineViewPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/PipelineViewPage.js +483 -0
- package/dist/bigconsole/pages/PipelineViewPage.js.map +1 -0
- package/dist/bigconsole/pages/PipelinesPage.d.ts +9 -0
- package/dist/bigconsole/pages/PipelinesPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/PipelinesPage.js +375 -0
- package/dist/bigconsole/pages/PipelinesPage.js.map +1 -0
- package/dist/bigconsole/pages/SettingsPage.d.ts +5 -0
- package/dist/bigconsole/pages/SettingsPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/SettingsPage.js +478 -0
- package/dist/bigconsole/pages/SettingsPage.js.map +1 -0
- package/dist/bigconsole/pages/WidgetDemoPage.d.ts +5 -0
- package/dist/bigconsole/pages/WidgetDemoPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/WidgetDemoPage.js +257 -0
- package/dist/bigconsole/pages/WidgetDemoPage.js.map +1 -0
- package/dist/bigconsole/pages/WorkflowViewPage.d.ts +9 -0
- package/dist/bigconsole/pages/WorkflowViewPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/WorkflowViewPage.js +532 -0
- package/dist/bigconsole/pages/WorkflowViewPage.js.map +1 -0
- package/dist/bigconsole/pages/WorkflowsPage.d.ts +9 -0
- package/dist/bigconsole/pages/WorkflowsPage.d.ts.map +1 -0
- package/dist/bigconsole/pages/WorkflowsPage.js +384 -0
- package/dist/bigconsole/pages/WorkflowsPage.js.map +1 -0
- package/dist/bigconsole/pages/index.d.ts +14 -0
- package/dist/bigconsole/pages/index.d.ts.map +1 -0
- package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.d.ts +6 -0
- package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.d.ts.map +1 -0
- package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js +471 -0
- package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js.map +1 -0
- package/dist/bigconsole/renderers/adapters/BigConsoleRenderer.d.ts +9 -0
- package/dist/bigconsole/renderers/adapters/BigConsoleRenderer.d.ts.map +1 -0
- package/dist/bigconsole/renderers/adapters/BigConsoleRenderer.js +66 -0
- package/dist/bigconsole/renderers/adapters/BigConsoleRenderer.js.map +1 -0
- package/dist/bigconsole/renderers/adapters/BlockKitRenderer.d.ts +6 -0
- package/dist/bigconsole/renderers/adapters/BlockKitRenderer.d.ts.map +1 -0
- package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js +384 -0
- package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js.map +1 -0
- package/dist/bigconsole/renderers/adapters/CustomRenderer.d.ts +46 -0
- package/dist/bigconsole/renderers/adapters/CustomRenderer.d.ts.map +1 -0
- package/dist/bigconsole/renderers/adapters/CustomRenderer.js +172 -0
- package/dist/bigconsole/renderers/adapters/CustomRenderer.js.map +1 -0
- package/dist/bigconsole/renderers/adapters/index.d.ts +10 -0
- package/dist/bigconsole/renderers/adapters/index.d.ts.map +1 -0
- package/dist/bigconsole/renderers/factory/WidgetRendererFactory.d.ts +46 -0
- package/dist/bigconsole/renderers/factory/WidgetRendererFactory.d.ts.map +1 -0
- package/dist/bigconsole/renderers/factory/WidgetRendererFactory.js +55 -0
- package/dist/bigconsole/renderers/factory/WidgetRendererFactory.js.map +1 -0
- package/dist/bigconsole/renderers/index.d.ts +10 -0
- package/dist/bigconsole/renderers/index.d.ts.map +1 -0
- package/dist/bigconsole/renderers/registry/RendererRegistry.d.ts +42 -0
- package/dist/bigconsole/renderers/registry/RendererRegistry.d.ts.map +1 -0
- package/dist/bigconsole/renderers/registry/RendererRegistry.js +139 -0
- package/dist/bigconsole/renderers/registry/RendererRegistry.js.map +1 -0
- package/dist/bigconsole/renderers/types/index.d.ts +7 -0
- package/dist/bigconsole/renderers/types/index.d.ts.map +1 -0
- package/dist/bigconsole/renderers/types/renderer.d.ts +228 -0
- package/dist/bigconsole/renderers/types/renderer.d.ts.map +1 -0
- package/dist/bigconsole/store/dashboardStore.d.ts +132 -0
- package/dist/bigconsole/store/dashboardStore.d.ts.map +1 -0
- package/dist/bigconsole/store/dashboardStore.js +246 -0
- package/dist/bigconsole/store/dashboardStore.js.map +1 -0
- package/dist/bigconsole/store/dataSinkStore.d.ts +94 -0
- package/dist/bigconsole/store/dataSinkStore.d.ts.map +1 -0
- package/dist/bigconsole/store/dataSinkStore.js +138 -0
- package/dist/bigconsole/store/dataSinkStore.js.map +1 -0
- package/dist/bigconsole/store/drilldownStore.d.ts +63 -0
- package/dist/bigconsole/store/drilldownStore.d.ts.map +1 -0
- package/dist/bigconsole/store/drilldownStore.js +69 -0
- package/dist/bigconsole/store/drilldownStore.js.map +1 -0
- package/dist/bigconsole/store/index.d.ts +13 -0
- package/dist/bigconsole/store/index.d.ts.map +1 -0
- package/dist/bigconsole/store/index.js +7 -0
- package/dist/bigconsole/store/parserStore.d.ts +106 -0
- package/dist/bigconsole/store/parserStore.d.ts.map +1 -0
- package/dist/bigconsole/store/parserStore.js +175 -0
- package/dist/bigconsole/store/parserStore.js.map +1 -0
- package/dist/bigconsole/store/pipelineStore.d.ts +113 -0
- package/dist/bigconsole/store/pipelineStore.d.ts.map +1 -0
- package/dist/bigconsole/store/pipelineStore.js +231 -0
- package/dist/bigconsole/store/pipelineStore.js.map +1 -0
- package/dist/bigconsole/store/widgetStore.d.ts +106 -0
- package/dist/bigconsole/store/widgetStore.d.ts.map +1 -0
- package/dist/bigconsole/store/widgetStore.js +217 -0
- package/dist/bigconsole/store/widgetStore.js.map +1 -0
- package/dist/bigconsole/store/workflowStore.d.ts +120 -0
- package/dist/bigconsole/store/workflowStore.d.ts.map +1 -0
- package/dist/bigconsole/store/workflowStore.js +193 -0
- package/dist/bigconsole/store/workflowStore.js.map +1 -0
- package/dist/bigconsole/types/index.d.ts +1233 -0
- package/dist/bigconsole/types/index.d.ts.map +1 -0
- package/dist/bigconsole/utils/index.d.ts +9 -0
- package/dist/bigconsole/utils/index.d.ts.map +1 -0
- package/dist/bigconsole/utils/semanticTokens.d.ts +88 -0
- package/dist/bigconsole/utils/semanticTokens.d.ts.map +1 -0
- package/dist/bigconsole/utils/semanticTokens.js +41 -0
- package/dist/bigconsole/utils/semanticTokens.js.map +1 -0
- package/dist/bigconsole/utils/widgetPositioning.d.ts +81 -0
- package/dist/bigconsole/utils/widgetPositioning.d.ts.map +1 -0
- package/dist/bigconsole/utils/widgetPositioning.js +44 -0
- package/dist/bigconsole/utils/widgetPositioning.js.map +1 -0
- package/dist/bigconsole/utils/widgetTypeMapping.d.ts +34 -0
- package/dist/bigconsole/utils/widgetTypeMapping.d.ts.map +1 -0
- package/dist/bigconsole/utils/widgetTypeMapping.js +56 -0
- package/dist/bigconsole/utils/widgetTypeMapping.js.map +1 -0
- package/dist/generated/global-operations.d.ts +2 -0
- package/dist/generated/global-operations.d.ts.map +1 -0
- package/dist/generated/global-types.d.ts +20716 -0
- package/dist/generated/global-types.d.ts.map +1 -0
- package/dist/generated/wspace-operations.d.ts +9514 -0
- package/dist/generated/wspace-operations.d.ts.map +1 -0
- package/dist/generated/wspace-operations.js +1993 -0
- package/dist/generated/wspace-operations.js.map +1 -0
- package/dist/generated/wspace-types.d.ts +53363 -0
- package/dist/generated/wspace-types.d.ts.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/microfe-bigconsole.css +2 -0
- package/dist/utils/nativeBridge.d.ts +3 -0
- package/dist/utils/nativeBridge.d.ts.map +1 -0
- package/dist/utils/nativeBridge.js +2 -0
- package/package.json +118 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PropertiesPanel.js","names":[],"sources":["../../../../src/bigconsole/components/widgets/PropertiesPanel.tsx"],"sourcesContent":["/**\n * PropertiesPanel Component\n *\n * Right-side panel for widget configuration.\n * v2.0: Added Actions tab for managing widget actions.\n * Uses fe-libs shared components for consistent styling.\n */\n\nimport React, { type FC, memo, useCallback, useState, useEffect, useRef } from 'react';\nimport { Sheet, SheetContent, SheetHeader, SheetTitle, SheetDescription } from '@burdenoff/fe-libs/ui';\nimport { Tabs, TabsList, TabsTrigger, TabsContent } from '@burdenoff/fe-libs/ui';\nimport { Button } from '@burdenoff/fe-libs/ui';\nimport { Input } from '@burdenoff/fe-libs/ui';\nimport { Textarea } from '@burdenoff/fe-libs/ui';\nimport { Label } from '@burdenoff/fe-libs/ui';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@burdenoff/fe-libs/ui';\nimport { Spinner } from '@burdenoff/fe-libs/ui';\nimport { Card, CardContent } from '@burdenoff/fe-libs/ui';\nimport { Plus, ChevronUp, ChevronDown, Pencil, Trash2, ExternalLink, Check, X, Info } from 'lucide-react';\nimport type { Widget, WidgetType, DataSourceType, RendererType } from '../../types';\nimport { useWidgetStore } from '../../store';\nimport { useWidgetOperations, useDrilldownOperations } from '../../hooks';\nimport {\n useWidgetActions,\n type WidgetAction,\n type CreateWidgetActionInput,\n type UpdateWidgetActionInput,\n} from '../../hooks/useWidgetActions';\nimport { getWidgetDefinition } from './WidgetRegistry';\nimport { ActionConfigDialog } from './ActionConfigDialog';\nimport { WebhookConfigPanel } from './webhook-config';\nimport { EventLogViewer } from './event-logs';\nimport { DrilldownConfigPanel, type DrilldownConfig } from './DrilldownConfigPanel';\n// Data Source selectors\nimport { DataSinkSelector } from '../parser/DataSinkSelector';\nimport { ParserSelector } from '../parser/ParserSelector';\nimport { useDataSinkOperations } from '../../hooks/useDataSinkOperations';\nimport { useParserOperations } from '../../hooks/useParserOperations';\n\n// Config components\nimport { MetricCardConfig } from './metric-card/MetricCardConfig';\nimport { ChartConfig } from './chart/ChartConfig';\nimport { TableConfig } from './table/TableConfig';\nimport { GaugeConfig } from './gauge/GaugeConfig';\nimport { ProgressConfig } from './progress/ProgressConfig';\nimport { ListConfig } from './list/ListConfig';\n\n// ============================================================================\n// v2.0: Renderer Options\n// ============================================================================\n\nconst RENDERER_OPTIONS: { value: RendererType; label: string; description: string }[] = [\n { value: 'BIGCONSOLE', label: 'BigConsole Native', description: 'Full-featured native widgets' },\n { value: 'ADAPTIVE_CARD', label: 'Adaptive Cards', description: 'Microsoft Teams/Outlook format' },\n { value: 'BLOCKKIT', label: 'Block Kit', description: 'Slack format' },\n { value: 'CUSTOM', label: 'Custom', description: 'Custom React component' },\n];\n\n// ============================================================================\n// Data Source Constants\n// ============================================================================\n\nconst DATA_SOURCE_TYPES: { value: DataSourceType; label: string; description: string }[] = [\n { value: 'DATASINK', label: 'DataSink', description: 'Use data from BigConsole DataSinks' },\n { value: 'REST_API', label: 'REST API', description: 'Fetch data from REST endpoints' },\n { value: 'GRAPHQL', label: 'GraphQL', description: 'Query data using GraphQL' },\n { value: 'SQL', label: 'SQL Database', description: 'Query SQL databases directly' },\n { value: 'WEBSOCKET', label: 'WebSocket', description: 'Real-time data streaming' },\n { value: 'MOCK', label: 'Sample JSON', description: 'Manually enter sample JSON data' },\n];\n\n// ============================================================================\n// Types\n// ============================================================================\n\nexport interface PropertiesPanelProps {\n isOpen: boolean;\n onClose: () => void;\n}\n\ntype TabId = 'general' | 'data' | 'actions' | 'drilldown' | 'webhooks' | 'events' | 'appearance';\n\n// Action style colors\nconst ACTION_STYLE_COLORS: Record<string, string> = {\n PRIMARY: 'bg-action-primary',\n SECONDARY: 'bg-muted-foreground',\n SUCCESS: 'bg-state-success',\n WARNING: 'bg-state-warning',\n DANGER: 'bg-state-error',\n};\n\n// ============================================================================\n// Config Component Map\n// ============================================================================\n\n/**\n * Detects field names from parser output and returns suggested labelField and valueField\n * @param output - The parser execution output\n * @returns Object with suggested labelField and valueField\n */\nfunction detectFieldsFromParserOutput(output: unknown): {\n labelField?: string;\n valueField?: string;\n xAxisField?: string;\n} {\n if (!output) return {};\n\n // If output is an array, look at the first item\n const sampleItem = Array.isArray(output) ? output[0] : output;\n\n if (!sampleItem || typeof sampleItem !== 'object') return {};\n\n const keys = Object.keys(sampleItem as Record<string, unknown>);\n\n // Common label field names (in order of priority)\n const labelFieldCandidates = [\n 'name',\n 'label',\n 'category',\n 'title',\n 'key',\n 'id',\n 'month',\n 'date',\n 'region',\n 'product',\n ];\n // Common value field names (in order of priority)\n const valueFieldCandidates = ['value', 'amount', 'count', 'total', 'revenue', 'sales', 'quantity', 'orders', 'sum'];\n\n let labelField: string | undefined;\n let valueField: string | undefined;\n\n // Find the best label field\n for (const candidate of labelFieldCandidates) {\n if (keys.includes(candidate)) {\n labelField = candidate;\n break;\n }\n }\n\n // Find the best value field\n for (const candidate of valueFieldCandidates) {\n if (keys.includes(candidate)) {\n valueField = candidate;\n break;\n }\n }\n\n // If no standard names found, use heuristics:\n // - First string field as label\n // - First number field as value\n if (!labelField || !valueField) {\n for (const key of keys) {\n const val = (sampleItem as Record<string, unknown>)[key];\n if (!labelField && typeof val === 'string') {\n labelField = key;\n }\n if (!valueField && typeof val === 'number') {\n valueField = key;\n }\n if (labelField && valueField) break;\n }\n }\n\n return {\n labelField,\n valueField,\n xAxisField: labelField, // For line/bar charts, xAxisField is usually the same as labelField\n };\n}\n\nfunction getConfigComponent(type: WidgetType) {\n switch (type) {\n case 'metric_card':\n case 'kpi_card_comparison':\n return MetricCardConfig;\n case 'chart':\n case 'funnel_chart':\n return ChartConfig;\n case 'table':\n case 'pivot_table':\n return TableConfig;\n case 'gauge':\n return GaugeConfig;\n case 'progress':\n return ProgressConfig;\n case 'list':\n return ListConfig;\n default:\n return null;\n }\n}\n\n// ============================================================================\n// Template Editor Component\n// ============================================================================\n\ninterface TemplateEditorProps {\n widget: Widget;\n onSave: (template: Record<string, unknown>) => void;\n}\n\nconst TemplateEditor: FC<TemplateEditorProps> = memo(function TemplateEditor({ widget, onSave }) {\n const [localValue, setLocalValue] = useState<string>('');\n const [jsonError, setJsonError] = useState<string | null>(null);\n const initializedRef = useRef(false);\n\n // Initialize from widget.template only once per widget\n useEffect(() => {\n try {\n const templateStr =\n widget.template && typeof widget.template === 'object' ? JSON.stringify(widget.template, null, 2) : '';\n setLocalValue(templateStr);\n setJsonError(null);\n initializedRef.current = true;\n } catch {\n setLocalValue('');\n }\n }, [widget.id, widget.template]);\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n const value = e.target.value;\n setLocalValue(value);\n\n if (value.trim() === '') {\n setJsonError(null);\n // Empty template is valid - notify parent\n onSave({});\n } else {\n try {\n const parsed = JSON.parse(value);\n setJsonError(null);\n // Valid JSON - immediately notify parent so main Save button becomes active\n onSave(parsed);\n } catch (err) {\n setJsonError((err as Error).message);\n // Don't call onSave for invalid JSON\n }\n }\n },\n [onSave]\n );\n\n const handleFormat = useCallback(() => {\n try {\n const parsed = JSON.parse(localValue);\n const formatted = JSON.stringify(parsed, null, 2);\n setLocalValue(formatted);\n setJsonError(null);\n onSave(parsed);\n } catch (err) {\n setJsonError((err as Error).message);\n }\n }, [localValue, onSave]);\n\n return (\n <div\n style={{\n paddingTop: 'var(--space-formGap)',\n borderTop: '1px solid var(--color-border)',\n }}\n >\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n marginBottom: 'var(--space-controlGap)',\n }}\n >\n <label\n style={{\n fontSize: 'var(--font-size-body-sm)',\n fontWeight: 'var(--font-weight-semibold)',\n color: 'var(--color-text-primary)',\n }}\n >\n Template (JSON)\n </label>\n {jsonError && (\n <span\n style={{\n fontSize: 'var(--font-size-body-sm)',\n color: 'var(--color-status-error-text)',\n fontWeight: 'var(--font-weight-medium)',\n }}\n >\n Invalid JSON\n </span>\n )}\n </div>\n\n <Textarea\n value={localValue}\n onChange={handleChange}\n spellCheck={false}\n placeholder={`Enter ${widget.renderer} template JSON...`}\n style={{\n fontFamily: 'var(--font-family-mono)',\n fontSize: 'var(--font-size-body-sm)',\n minHeight: '180px',\n borderColor: jsonError ? 'var(--color-status-error-border)' : undefined,\n resize: 'vertical',\n }}\n />\n\n {jsonError && (\n <p\n style={{\n fontSize: 'var(--font-size-body-sm)',\n color: 'var(--color-status-error-text)',\n backgroundColor: 'var(--color-status-error-bgSubtle)',\n padding: 'var(--space-controlGap)',\n borderRadius: 'var(--radius-button)',\n marginTop: 'var(--space-controlGap)',\n }}\n >\n {jsonError}\n </p>\n )}\n\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n gap: 'var(--space-controlGap)',\n marginTop: 'var(--space-controlGap)',\n }}\n >\n <Button\n variant=\"outline\"\n size=\"sm\"\n onClick={handleFormat}\n disabled={!!jsonError || localValue.trim() === ''}\n style={{ height: 'var(--size-controlHeight-sm)', fontWeight: 'var(--font-weight-semibold)' }}\n >\n Format\n </Button>\n {!jsonError && localValue.trim() !== '' && (\n <span\n style={{\n fontSize: 'var(--font-size-body-sm)',\n color: 'var(--color-status-success-text)',\n display: 'flex',\n alignItems: 'center',\n gap: '4px',\n }}\n >\n <Check style={{ width: '12px', height: '12px' }} />\n Valid JSON\n </span>\n )}\n </div>\n\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n fontSize: 'var(--font-size-body-sm)',\n color: 'var(--color-text-muted)',\n marginTop: 'var(--space-controlGap)',\n paddingTop: 'var(--space-controlGap)',\n borderTop: '1px solid var(--color-border)',\n }}\n >\n <span style={{ fontWeight: 'var(--font-weight-medium)' }}>Ctrl+S to save</span>\n {widget.renderer === 'ADAPTIVE_CARD' && (\n <a\n href=\"https://adaptivecards.io/designer/\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n style={{\n display: 'flex',\n alignItems: 'center',\n gap: 'var(--space-controlGap)',\n color: 'var(--color-text-link)',\n fontSize: 'var(--font-size-body-sm)',\n fontWeight: 'var(--font-weight-medium)',\n textDecoration: 'none',\n }}\n >\n Designer\n <ExternalLink style={{ height: 'var(--size-icon-sm)', width: 'var(--size-icon-sm)' }} />\n </a>\n )}\n {widget.renderer === 'BLOCKKIT' && (\n <a\n href=\"https://app.slack.com/block-kit-builder\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n style={{\n display: 'flex',\n alignItems: 'center',\n gap: 'var(--space-controlGap)',\n color: 'var(--color-text-link)',\n fontSize: 'var(--font-size-body-sm)',\n fontWeight: 'var(--font-weight-medium)',\n textDecoration: 'none',\n }}\n >\n Block Kit Builder\n <ExternalLink style={{ height: 'var(--size-icon-sm)', width: 'var(--size-icon-sm)' }} />\n </a>\n )}\n </div>\n </div>\n );\n});\n\n// ============================================================================\n// Local Form State Type\n// ============================================================================\n\ninterface LocalFormState {\n title: string;\n description: string;\n refreshInterval: number | undefined;\n renderer: RendererType;\n template: Record<string, unknown> | undefined;\n // v2.0: Data source fields (DataSink → Parser → Widget)\n dataSinkId: string | undefined;\n datasetId: string | undefined;\n parserId: string | undefined;\n parserRules: string | undefined;\n config: Record<string, unknown>;\n // Drilldown configuration\n drilldownConfig: DrilldownConfig | undefined;\n}\n\n// ============================================================================\n// Component\n// ============================================================================\n\nexport const PropertiesPanel: FC<PropertiesPanelProps> = memo(function PropertiesPanel({ isOpen, onClose }) {\n const [activeTab, setActiveTab] = useState<TabId>('general');\n const [saveStatus, setSaveStatus] = useState<'idle' | 'saving' | 'saved' | 'error'>('idle');\n const [localForm, setLocalForm] = useState<LocalFormState | null>(null);\n const [hasUnsavedChanges, setHasUnsavedChanges] = useState(false);\n\n const selectedWidgetId = useWidgetStore((state) => state.selectedWidgetId);\n const widgets = useWidgetStore((state) => state.widgets);\n const updateWidgetInStore = useWidgetStore((state) => state.updateWidget);\n\n const selectedWidget = selectedWidgetId ? widgets.get(selectedWidgetId) : undefined;\n\n useEffect(() => {\n if (selectedWidget) {\n setLocalForm({\n title: selectedWidget.title || '',\n description: selectedWidget.description || '',\n refreshInterval: selectedWidget.refreshInterval ?? undefined,\n renderer: (selectedWidget.renderer as RendererType) || 'BIGCONSOLE',\n template: selectedWidget.template as Record<string, unknown> | undefined,\n // v2.0: Data source fields (DataSink → Parser → Widget)\n dataSinkId: (selectedWidget as unknown as Record<string, string | undefined>).dataSinkId ?? undefined,\n datasetId: (selectedWidget as unknown as Record<string, string | undefined>).datasetId ?? undefined,\n parserId: (selectedWidget as unknown as Record<string, string | undefined>).parserId ?? undefined,\n parserRules: (selectedWidget as unknown as Record<string, string | undefined>).parserRules ?? undefined,\n config: (selectedWidget.config as Record<string, unknown>) || {},\n // Drilldown configuration\n drilldownConfig: selectedWidget.drilldown\n ? {\n enabled: selectedWidget.drilldown.enabled ?? false,\n targetDashboardId: selectedWidget.drilldown.targetDashboardId ?? '',\n navigationMode: selectedWidget.drilldown.navigationMode ?? 'MODAL',\n parameterMapping: (selectedWidget.drilldown.parameterMapping as Record<string, string>) ?? {},\n passGlobalFilters: selectedWidget.drilldown.passGlobalFilters ?? true,\n maxDepth: selectedWidget.drilldown.maxDepth ?? 3,\n openIn: selectedWidget.drilldown.openIn ?? 'same',\n }\n : undefined,\n });\n setHasUnsavedChanges(false);\n setSaveStatus('idle');\n } else {\n setLocalForm(null);\n }\n }, [selectedWidget]);\n\n const { updateWidget: updateWidgetApi } = useWidgetOperations(selectedWidget?.pageId, selectedWidget?.dashboardId, {\n skipFetch: true,\n });\n\n // Drilldown operations\n const { createDrilldown, updateDrilldown, deleteDrilldown } = useDrilldownOperations();\n\n // DataSink operations - for looking up DataSink by key\n const { dataSinks } = useDataSinkOperations({ skipFetch: false });\n\n // Track selected DataSink key for filtering parsers\n const [selectedDataSinkKey, setSelectedDataSinkKey] = useState<string | null>(null);\n\n // Parser operations - for executing parser to detect fields\n const { executeParser } = useParserOperations({\n consoleId: selectedWidget?.dashboardId,\n skipFetch: true,\n });\n\n // Track if we're auto-detecting fields\n const [isDetectingFields, setIsDetectingFields] = useState(false);\n\n const {\n actions,\n loading: actionsLoading,\n createAction,\n updateAction,\n deleteAction,\n reorderActions,\n } = useWidgetActions(selectedWidgetId || undefined);\n\n const [isActionDialogOpen, setIsActionDialogOpen] = useState(false);\n const [editingAction, setEditingAction] = useState<WidgetAction | undefined>(undefined);\n const [actionSaving, setActionSaving] = useState(false);\n\n const handleAddAction = useCallback(() => {\n setEditingAction(undefined);\n setIsActionDialogOpen(true);\n }, []);\n\n const handleEditAction = useCallback((action: WidgetAction) => {\n setEditingAction(action);\n setIsActionDialogOpen(true);\n }, []);\n\n const handleSaveAction = useCallback(\n async (data: Omit<CreateWidgetActionInput, 'widgetId'> | UpdateWidgetActionInput) => {\n if (!selectedWidgetId) return;\n\n setActionSaving(true);\n try {\n let newAction: WidgetAction | null = null;\n if ('id' in data) {\n newAction = await updateAction(data);\n } else {\n newAction = await createAction(data);\n }\n\n // Immediately sync to widget store after successful save\n // This ensures the widget displays the action right away\n if (newAction) {\n const currentActions = [...actions];\n if ('id' in data) {\n // Update existing action\n const idx = currentActions.findIndex((a) => a.id === data.id);\n if (idx >= 0) {\n currentActions[idx] = newAction;\n }\n } else {\n // Add new action\n currentActions.push(newAction);\n }\n // Sort by order and update store\n const sortedActions = currentActions.sort((a, b) => a.order - b.order);\n updateWidgetInStore(selectedWidgetId, { actions: sortedActions });\n }\n\n setIsActionDialogOpen(false);\n setEditingAction(undefined);\n } catch (err) {\n } finally {\n setActionSaving(false);\n }\n },\n [selectedWidgetId, actions, createAction, updateAction, updateWidgetInStore]\n );\n\n const handleDeleteAction = useCallback(\n async (actionId: string) => {\n if (!selectedWidgetId) return;\n\n if (window.confirm('Are you sure you want to delete this action?')) {\n const success = await deleteAction(actionId);\n if (success) {\n // Immediately sync to widget store after deletion\n const updatedActions = actions.filter((a) => a.id !== actionId);\n updateWidgetInStore(selectedWidgetId, { actions: updatedActions });\n }\n }\n },\n [selectedWidgetId, actions, deleteAction, updateWidgetInStore]\n );\n\n const handleMoveActionUp = useCallback(\n async (index: number) => {\n if (!selectedWidgetId || index === 0) return;\n const sortedActions = [...actions].sort((a, b) => a.order - b.order);\n const newOrder = sortedActions.map((a) => a.id);\n [newOrder[index - 1], newOrder[index]] = [newOrder[index], newOrder[index - 1]];\n const success = await reorderActions(newOrder);\n if (success) {\n // Immediately update local order for UI responsiveness\n const reordered = sortedActions\n .map((a, _i) => ({\n ...a,\n order: newOrder.indexOf(a.id),\n }))\n .sort((a, b) => a.order - b.order);\n updateWidgetInStore(selectedWidgetId, { actions: reordered });\n }\n },\n [selectedWidgetId, actions, reorderActions, updateWidgetInStore]\n );\n\n const handleMoveActionDown = useCallback(\n async (index: number) => {\n if (!selectedWidgetId) return;\n const sortedActions = [...actions].sort((a, b) => a.order - b.order);\n if (index === sortedActions.length - 1) return;\n const newOrder = sortedActions.map((a) => a.id);\n [newOrder[index], newOrder[index + 1]] = [newOrder[index + 1], newOrder[index]];\n const success = await reorderActions(newOrder);\n if (success) {\n // Immediately update local order for UI responsiveness\n const reordered = sortedActions\n .map((a, _i) => ({\n ...a,\n order: newOrder.indexOf(a.id),\n }))\n .sort((a, b) => a.order - b.order);\n updateWidgetInStore(selectedWidgetId, { actions: reordered });\n }\n },\n [selectedWidgetId, actions, reorderActions, updateWidgetInStore]\n );\n\n useEffect(() => {\n if (selectedWidgetId && actions.length >= 0 && !actionsLoading) {\n updateWidgetInStore(selectedWidgetId, { actions });\n }\n }, [selectedWidgetId, actions, actionsLoading, updateWidgetInStore]);\n\n const updateLocalForm = useCallback(<K extends keyof LocalFormState>(key: K, value: LocalFormState[K]) => {\n setLocalForm((prev) => (prev ? { ...prev, [key]: value } : prev));\n setHasUnsavedChanges(true);\n }, []);\n\n const updateLocalConfig = useCallback((newConfig: Record<string, unknown>) => {\n setLocalForm((prev) => (prev ? { ...prev, config: newConfig } : prev));\n setHasUnsavedChanges(true);\n }, []);\n\n // Initialize selectedDataSinkKey from widget's dataSinkId\n useEffect(() => {\n if (localForm?.dataSinkId && dataSinks.length > 0) {\n const ds = dataSinks.find((d) => d.id === localForm.dataSinkId);\n if (ds) {\n setSelectedDataSinkKey(ds.key);\n }\n } else {\n setSelectedDataSinkKey(null);\n }\n }, [localForm?.dataSinkId, dataSinks]);\n\n // Handle DataSink selection - looks up ID from key and updates form\n const handleDataSinkChange = useCallback(\n (key: string | null) => {\n setSelectedDataSinkKey(key);\n if (key) {\n const ds = dataSinks.find((d) => d.key === key);\n if (ds) {\n updateLocalForm('dataSinkId', ds.id);\n // Also update config.dataSinkKey for backward compatibility\n setLocalForm((prev) =>\n prev\n ? {\n ...prev,\n config: { ...prev.config, dataSinkKey: key },\n }\n : prev\n );\n setHasUnsavedChanges(true);\n }\n } else {\n updateLocalForm('dataSinkId', undefined);\n setLocalForm((prev) =>\n prev\n ? {\n ...prev,\n config: { ...prev.config, dataSinkKey: undefined },\n parserId: undefined, // Clear parser when DataSink is cleared\n }\n : prev\n );\n setHasUnsavedChanges(true);\n }\n },\n [dataSinks, updateLocalForm]\n );\n\n // Handle Parser selection - with auto-detection of field mappings\n const handleParserChange = useCallback(\n async (parserId: string | null) => {\n updateLocalForm('parserId', parserId || undefined);\n\n // If a parser is selected, execute it to detect field structure\n if (parserId && selectedWidget) {\n setIsDetectingFields(true);\n try {\n const result = await executeParser(parserId);\n\n if (result?.success && result.output) {\n const detectedFields = detectFieldsFromParserOutput(result.output);\n\n // Only auto-populate if fields were detected and not already set\n if (detectedFields.labelField || detectedFields.valueField) {\n setLocalForm((prev) => {\n if (!prev) return prev;\n\n const currentConfig = prev.config || {};\n const newConfig = { ...currentConfig };\n\n // Auto-populate labelField if not already set\n if (detectedFields.labelField && !currentConfig.labelField) {\n newConfig.labelField = detectedFields.labelField;\n }\n\n // Auto-populate valueField if not already set\n if (detectedFields.valueField && !currentConfig.valueField) {\n newConfig.valueField = detectedFields.valueField;\n }\n\n // Auto-populate xAxisField for line/bar/area charts if not already set\n if (detectedFields.xAxisField && !currentConfig.xAxisField) {\n newConfig.xAxisField = detectedFields.xAxisField;\n }\n\n return { ...prev, config: newConfig };\n });\n setHasUnsavedChanges(true);\n }\n }\n } catch (err) {\n // Silent fail - user can still manually configure fields\n console.warn('Failed to auto-detect parser fields:', err);\n } finally {\n setIsDetectingFields(false);\n }\n }\n },\n [updateLocalForm, executeParser, selectedWidget]\n );\n\n const handleSaveAll = useCallback(async () => {\n if (!selectedWidget || !localForm) return;\n\n setSaveStatus('saving');\n\n try {\n const metadata = { ...(selectedWidget.metadata || {}), description: localForm.description || '' };\n\n const result = await updateWidgetApi({\n id: selectedWidget.id,\n title: localForm.title,\n renderer: localForm.renderer,\n template: localForm.template,\n config: localForm.config,\n refreshInterval: localForm.refreshInterval,\n // v2.0: Data source fields (DataSink → Parser → Widget)\n dataSinkId: localForm.dataSinkId,\n datasetId: localForm.datasetId,\n parserId: localForm.parserId,\n parserRules: localForm.parserRules,\n metadata,\n });\n\n // Save drilldown configuration to backend\n let savedDrilldown = selectedWidget.drilldown;\n if (localForm.drilldownConfig) {\n const { enabled, targetDashboardId, navigationMode, parameterMapping, passGlobalFilters, maxDepth, openIn } =\n localForm.drilldownConfig;\n\n if (selectedWidget.drilldown?.id) {\n // Update existing drilldown\n const drilldownResult = await updateDrilldown({\n id: selectedWidget.drilldown.id,\n targetDashboardId,\n parameterMapping,\n navigationMode,\n enabled,\n passGlobalFilters,\n maxDepth,\n openIn,\n });\n if (drilldownResult) {\n savedDrilldown = drilldownResult;\n }\n } else if (targetDashboardId) {\n // Create new drilldown (only if targetDashboardId is set)\n const drilldownResult = await createDrilldown({\n sourceWidgetId: selectedWidget.id,\n targetDashboardId,\n parameterMapping: parameterMapping || {},\n navigationMode,\n passGlobalFilters,\n maxDepth,\n openIn,\n });\n if (drilldownResult) {\n savedDrilldown = { ...drilldownResult, enabled };\n }\n }\n } else if (selectedWidget.drilldown?.id && !localForm.drilldownConfig) {\n // Delete drilldown if it existed but was removed\n await deleteDrilldown(selectedWidget.drilldown.id);\n savedDrilldown = undefined;\n }\n\n if (result) {\n updateWidgetInStore(selectedWidget.id, {\n title: localForm.title,\n description: localForm.description,\n renderer: localForm.renderer,\n template: localForm.template,\n config: localForm.config,\n refreshInterval: localForm.refreshInterval,\n // v2.0: Data source fields\n dataSinkId: localForm.dataSinkId,\n datasetId: localForm.datasetId,\n parserId: localForm.parserId,\n parserRules: localForm.parserRules,\n // Drilldown configuration from backend\n drilldown: savedDrilldown,\n // Update timestamp to trigger WidgetWrapper re-render (fixes drilldown mode change bug)\n updatedAt: new Date().toISOString(),\n } as Partial<Widget>);\n\n setSaveStatus('saved');\n setHasUnsavedChanges(false);\n setTimeout(() => setSaveStatus('idle'), 2000);\n } else {\n setSaveStatus('error');\n }\n } catch (err) {\n setSaveStatus('error');\n }\n }, [\n selectedWidget,\n localForm,\n updateWidgetApi,\n updateWidgetInStore,\n createDrilldown,\n updateDrilldown,\n deleteDrilldown,\n ]);\n\n const handleDiscardAll = useCallback(() => {\n if (!selectedWidget) return;\n\n setLocalForm({\n title: selectedWidget.title || '',\n description: selectedWidget.description || '',\n refreshInterval: selectedWidget.refreshInterval ?? undefined,\n renderer: (selectedWidget.renderer as RendererType) || 'BIGCONSOLE',\n template: selectedWidget.template as Record<string, unknown> | undefined,\n // v2.0: Data source fields (DataSink → Parser → Widget)\n dataSinkId: (selectedWidget as unknown as Record<string, string | undefined>).dataSinkId ?? undefined,\n datasetId: (selectedWidget as unknown as Record<string, string | undefined>).datasetId ?? undefined,\n parserId: (selectedWidget as unknown as Record<string, string | undefined>).parserId ?? undefined,\n parserRules: (selectedWidget as unknown as Record<string, string | undefined>).parserRules ?? undefined,\n config: (selectedWidget.config as Record<string, unknown>) || {},\n // Drilldown configuration\n drilldownConfig: selectedWidget.drilldown\n ? {\n enabled: selectedWidget.drilldown.enabled ?? false,\n targetDashboardId: selectedWidget.drilldown.targetDashboardId ?? '',\n navigationMode: selectedWidget.drilldown.navigationMode ?? 'MODAL',\n parameterMapping: (selectedWidget.drilldown.parameterMapping as Record<string, string>) ?? {},\n passGlobalFilters: selectedWidget.drilldown.passGlobalFilters ?? true,\n maxDepth: selectedWidget.drilldown.maxDepth ?? 3,\n openIn: selectedWidget.drilldown.openIn ?? 'same',\n }\n : undefined,\n });\n setHasUnsavedChanges(false);\n setSaveStatus('idle');\n }, [selectedWidget]);\n\n const handleConfigChange = useCallback(\n (newConfig: Record<string, unknown>) => {\n updateLocalConfig(newConfig);\n },\n [updateLocalConfig]\n );\n\n const handleDrilldownChange = useCallback((config: DrilldownConfig) => {\n setLocalForm((prev) => (prev ? { ...prev, drilldownConfig: config } : prev));\n setHasUnsavedChanges(true);\n }, []);\n\n const definition = selectedWidget ? getWidgetDefinition(selectedWidget.type) : null;\n const ConfigComponent = selectedWidget ? getConfigComponent(selectedWidget.type) : null;\n\n return (\n <Sheet open={isOpen} onOpenChange={(open) => !open && onClose()} modal={false}>\n <SheetContent\n style={{\n width: '420px',\n maxWidth: '90vw',\n padding: 0,\n display: 'flex',\n flexDirection: 'column',\n height: '100%',\n overflow: 'hidden',\n }}\n >\n <SheetHeader\n style={{\n padding: 'var(--space-cardPadding)',\n borderBottom: '1px solid var(--color-border)',\n backgroundColor: 'var(--color-bg-surface)',\n flexShrink: 0,\n }}\n >\n <div style={{ display: 'flex', alignItems: 'center', gap: 'var(--space-controlGap)' }}>\n <div\n style={{\n display: 'flex',\n height: 'var(--size-controlHeight-lg)',\n width: 'var(--size-controlHeight-lg)',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: 'var(--radius-card)',\n backgroundColor: 'var(--color-action-primary-bg)',\n boxShadow: 'var(--shadow-elevation-2)',\n flexShrink: 0,\n }}\n >\n <Info\n style={{\n height: 'var(--size-icon-md)',\n width: 'var(--size-icon-md)',\n color: 'var(--color-action-primary-text)',\n }}\n />\n </div>\n <div style={{ flex: 1, minWidth: 0 }}>\n <div style={{ display: 'flex', alignItems: 'center', gap: 'var(--space-iconGap)' }}>\n <SheetTitle\n style={{\n fontSize: 'var(--font-size-body-md)',\n fontWeight: 'var(--font-weight-bold)',\n color: 'var(--color-text-primary)',\n margin: 0,\n }}\n >\n {selectedWidget ? 'Widget Properties' : 'Properties'}\n </SheetTitle>\n {saveStatus === 'saving' && (\n <Spinner style={{ height: 'var(--size-icon-sm)', width: 'var(--size-icon-sm)' }} />\n )}\n {saveStatus === 'saved' && (\n <Check\n style={{\n height: 'var(--size-icon-sm)',\n width: 'var(--size-icon-sm)',\n color: 'var(--color-status-success-bg)',\n }}\n />\n )}\n {saveStatus === 'error' && (\n <X\n style={{\n height: 'var(--size-icon-sm)',\n width: 'var(--size-icon-sm)',\n color: 'var(--color-status-error-bg)',\n }}\n />\n )}\n </div>\n {definition && (\n <SheetDescription\n style={{\n fontSize: 'var(--font-size-body-sm)',\n color: 'var(--color-text-secondary)',\n margin: 'var(--space-controlGap) 0 0 0',\n fontWeight: 'var(--font-weight-medium)',\n }}\n >\n {definition.name}\n </SheetDescription>\n )}\n </div>\n </div>\n </SheetHeader>\n\n {selectedWidget ? (\n <Tabs\n value={activeTab}\n onValueChange={(v) => setActiveTab(v as TabId)}\n style={{ flex: 1, display: 'flex', flexDirection: 'column', minHeight: 0, overflow: 'hidden' }}\n >\n <TabsList\n style={{\n width: '100%',\n display: 'flex',\n justifyContent: 'flex-start',\n borderRadius: 0,\n borderBottom: '1px solid var(--color-border)',\n padding: '0 8px',\n backgroundColor: 'var(--color-bg-sunken)',\n height: 'var(--size-controlHeight-lg)',\n flexShrink: 0,\n gap: '2px',\n overflowX: 'auto',\n }}\n >\n <TabsTrigger\n value=\"general\"\n style={{\n fontWeight: 'var(--font-weight-semibold)',\n fontSize: '12px',\n padding: '6px 8px',\n flexShrink: 0,\n }}\n >\n General\n </TabsTrigger>\n <TabsTrigger\n value=\"data\"\n style={{\n fontWeight: 'var(--font-weight-semibold)',\n fontSize: '12px',\n padding: '6px 8px',\n flexShrink: 0,\n }}\n >\n Data\n </TabsTrigger>\n <TabsTrigger\n value=\"actions\"\n style={{\n fontWeight: 'var(--font-weight-semibold)',\n fontSize: '12px',\n padding: '6px 8px',\n flexShrink: 0,\n }}\n >\n Actions\n </TabsTrigger>\n <TabsTrigger\n value=\"drilldown\"\n style={{\n fontWeight: 'var(--font-weight-semibold)',\n fontSize: '12px',\n padding: '6px 8px',\n flexShrink: 0,\n }}\n >\n Drilldown\n </TabsTrigger>\n <TabsTrigger\n value=\"webhooks\"\n style={{\n fontWeight: 'var(--font-weight-semibold)',\n fontSize: '12px',\n padding: '6px 8px',\n flexShrink: 0,\n }}\n >\n Hooks\n </TabsTrigger>\n <TabsTrigger\n value=\"events\"\n style={{\n fontWeight: 'var(--font-weight-semibold)',\n fontSize: '12px',\n padding: '6px 8px',\n flexShrink: 0,\n }}\n >\n Events\n </TabsTrigger>\n <TabsTrigger\n value=\"appearance\"\n style={{\n fontWeight: 'var(--font-weight-semibold)',\n fontSize: '12px',\n padding: '6px 8px',\n flexShrink: 0,\n }}\n >\n Style\n </TabsTrigger>\n </TabsList>\n\n <div style={{ flex: 1, overflow: 'auto', padding: 'var(--space-cardPadding)', minHeight: 0 }}>\n <TabsContent value=\"general\" className=\"mt-0\">\n {localForm && (\n <div style={{ display: 'flex', flexDirection: 'column', gap: 'var(--space-formGap)' }}>\n {/* Title Field */}\n <div>\n <label\n htmlFor=\"title\"\n style={{\n display: 'block',\n fontSize: 'var(--font-size-body-sm)',\n fontWeight: 'var(--font-weight-semibold)',\n color: 'var(--color-text-primary)',\n marginBottom: 'var(--space-controlGap)',\n }}\n >\n Title\n </label>\n <Input\n id=\"title\"\n value={localForm.title}\n onChange={(e) => updateLocalForm('title', e.target.value)}\n style={{ height: 'var(--size-controlHeight-md)', fontSize: 'var(--font-size-body-sm)' }}\n />\n </div>\n\n {/* Description Field */}\n <div>\n <label\n htmlFor=\"description\"\n style={{\n display: 'block',\n fontSize: 'var(--font-size-body-sm)',\n fontWeight: 'var(--font-weight-semibold)',\n color: 'var(--color-text-primary)',\n marginBottom: 'var(--space-controlGap)',\n }}\n >\n Description\n </label>\n <Textarea\n id=\"description\"\n value={localForm.description}\n onChange={(e) => updateLocalForm('description', e.target.value)}\n rows={3}\n style={{ fontSize: 'var(--font-size-body-sm)', resize: 'none' }}\n />\n </div>\n\n {/* Auto-Refresh Field */}\n <div>\n <label\n htmlFor=\"refresh\"\n style={{\n display: 'block',\n fontSize: 'var(--font-size-body-sm)',\n fontWeight: 'var(--font-weight-semibold)',\n color: 'var(--color-text-primary)',\n marginBottom: 'var(--space-controlGap)',\n }}\n >\n Auto-Refresh (seconds)\n </label>\n <Input\n id=\"refresh\"\n type=\"number\"\n value={localForm.refreshInterval || ''}\n onChange={(e) =>\n updateLocalForm('refreshInterval', e.target.value ? Number(e.target.value) : undefined)\n }\n min={0}\n placeholder=\"No auto-refresh\"\n style={{ height: 'var(--size-controlHeight-md)', fontSize: 'var(--font-size-body-sm)' }}\n />\n </div>\n\n {/* Renderer Field */}\n <div\n style={{\n paddingTop: 'var(--space-formGap)',\n borderTop: '1px solid var(--color-border)',\n }}\n >\n <label\n style={{\n display: 'block',\n fontSize: 'var(--font-size-body-sm)',\n fontWeight: 'var(--font-weight-semibold)',\n color: 'var(--color-text-primary)',\n marginBottom: 'var(--space-controlGap)',\n }}\n >\n Renderer\n </label>\n <Select\n value={localForm.renderer}\n onValueChange={(value) => {\n const newRenderer = value as RendererType;\n updateLocalForm('renderer', newRenderer);\n if (newRenderer === 'BIGCONSOLE') {\n updateLocalForm('template', undefined);\n }\n }}\n >\n <SelectTrigger\n style={{ height: 'var(--size-controlHeight-md)', fontSize: 'var(--font-size-body-sm)' }}\n >\n <SelectValue placeholder=\"Select renderer\" />\n </SelectTrigger>\n <SelectContent\n position=\"popper\"\n side=\"bottom\"\n sideOffset={4}\n align=\"start\"\n style={{\n zIndex: 9999,\n maxHeight: '200px',\n backgroundColor: 'var(--color-overlay-popoverBg, var(--color-bg-surface, #ffffff))',\n border: '1px solid var(--color-border)',\n boxShadow: 'var(--shadow-elevation-3)',\n borderRadius: 'var(--radius-button)',\n }}\n >\n {RENDERER_OPTIONS.map((opt) => (\n <SelectItem key={opt.value} value={opt.value}>\n {opt.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n <p\n style={{\n fontSize: 'var(--font-size-body-sm)',\n color: 'var(--color-text-muted)',\n marginTop: 'var(--space-controlGap)',\n }}\n >\n {RENDERER_OPTIONS.find((r) => r.value === localForm.renderer)?.description as React.ReactNode}\n </p>\n </div>\n\n {localForm.renderer && localForm.renderer !== 'BIGCONSOLE' && (\n <TemplateEditor\n widget={\n { ...selectedWidget, template: localForm.template, renderer: localForm.renderer } as Widget\n }\n onSave={(template) => updateLocalForm('template', template)}\n />\n )}\n </div>\n )}\n </TabsContent>\n\n <TabsContent value=\"data\" className=\"mt-0 space-y-4\">\n {localForm && (\n <>\n {/* Data Source Section */}\n <div className=\"space-y-4\">\n <div className=\"p-3 bg-muted rounded-md border border-border\">\n <p className=\"text-xs text-muted-foreground\">\n Connect this widget to a DataSink and Parser to display transformed data.\n </p>\n </div>\n\n {/* DataSink Selector */}\n <div className=\"space-y-2\">\n <Label>DataSink</Label>\n <DataSinkSelector\n value={selectedDataSinkKey}\n onChange={handleDataSinkChange}\n placeholder=\"Select a DataSink...\"\n />\n {selectedDataSinkKey && (\n <p className=\"text-xs text-muted-foreground\">\n Key: {selectedDataSinkKey}\n {localForm.dataSinkId && (\n <span className=\"ml-2 text-text-tertiary\">ID: {localForm.dataSinkId.slice(0, 8)}...</span>\n )}\n </p>\n )}\n </div>\n\n {/* Parser Selector - filtered by selected DataSink */}\n <div className=\"space-y-2\">\n <Label>Parser</Label>\n <ParserSelector\n consoleId={selectedWidget?.dashboardId || ''}\n value={localForm.parserId || null}\n onChange={handleParserChange}\n filterInputSinkKey={selectedDataSinkKey || undefined}\n filterStatus={undefined}\n placeholder={selectedDataSinkKey ? 'Select a parser...' : 'Select a DataSink first...'}\n disabled={!selectedDataSinkKey}\n />\n <p className=\"text-xs text-muted-foreground\">\n {isDetectingFields ? (\n <span className=\"flex items-center gap-1\">\n <Spinner style={{ width: '12px', height: '12px' }} />\n Auto-detecting field mappings...\n </span>\n ) : selectedDataSinkKey ? (\n 'Showing parsers that use this DataSink as input'\n ) : (\n 'Select a DataSink to see available parsers'\n )}\n </p>\n </div>\n\n {/* Auto-detected Field Mappings */}\n {!!(localForm.parserId && (localForm.config?.labelField || localForm.config?.valueField)) && (\n <div className=\"p-3 bg-green-50 dark:bg-green-950/30 rounded-md border border-green-200 dark:border-green-800\">\n <p className=\"text-xs font-medium text-green-700 dark:text-green-400 mb-2\">\n ✓ Field mappings configured\n </p>\n <div className=\"text-xs text-green-600 dark:text-green-500 space-y-1\">\n {!!localForm.config?.labelField && (\n <p>\n Label Field:{' '}\n <code className=\"bg-green-100 dark:bg-green-900 px-1 rounded\">\n {String(localForm.config.labelField)}\n </code>\n </p>\n )}\n {!!localForm.config?.valueField && (\n <p>\n Value Field:{' '}\n <code className=\"bg-green-100 dark:bg-green-900 px-1 rounded\">\n {String(localForm.config.valueField)}\n </code>\n </p>\n )}\n {!!localForm.config?.xAxisField && (\n <p>\n X-Axis Field:{' '}\n <code className=\"bg-green-100 dark:bg-green-900 px-1 rounded\">\n {String(localForm.config.xAxisField)}\n </code>\n </p>\n )}\n </div>\n </div>\n )}\n\n {/* Data Path (Optional) */}\n <div className=\"space-y-2\">\n <Label>Data Path (Optional)</Label>\n <Input\n value={(localForm.config?.dataPath as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, dataPath: e.target.value || undefined })\n }\n placeholder=\"e.g., summary.totalRevenue\"\n />\n <p className=\"text-xs text-muted-foreground\">\n Path to extract specific data from the parser output (dot notation)\n </p>\n </div>\n </div>\n\n {/* Divider */}\n <div className=\"border-t border-border pt-4\">\n <Label className=\"text-xs text-muted-foreground uppercase tracking-wide\">\n Alternative Data Sources\n </Label>\n </div>\n\n {/* Data Source Type Selector */}\n <div className=\"space-y-2\">\n <Label>Data Source Type</Label>\n <Select\n value={(localForm.config?.dataSourceType as string) || ''}\n onValueChange={(value) =>\n updateLocalConfig({ ...localForm.config, dataSourceType: value || undefined })\n }\n >\n <SelectTrigger\n style={{ height: 'var(--size-controlHeight-md)', fontSize: 'var(--font-size-body-sm)' }}\n >\n <SelectValue placeholder=\"Select type...\" />\n </SelectTrigger>\n <SelectContent\n position=\"popper\"\n side=\"bottom\"\n sideOffset={4}\n align=\"start\"\n style={{\n zIndex: 9999,\n maxHeight: '200px',\n backgroundColor: 'var(--color-overlay-popoverBg, var(--color-bg-surface, #ffffff))',\n border: '1px solid var(--color-border)',\n boxShadow: 'var(--shadow-elevation-3)',\n borderRadius: 'var(--radius-button)',\n }}\n >\n {DATA_SOURCE_TYPES.map((type) => (\n <SelectItem key={type.value} value={type.value}>\n {type.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n\n {localForm.config?.dataSourceType === 'REST_API' && (\n <div className=\"space-y-3\">\n {/* Endpoint URL */}\n <div className=\"space-y-2\">\n <Label>Endpoint URL *</Label>\n <Input\n value={(localForm.config?.endpointUrl as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, endpointUrl: e.target.value || undefined })\n }\n placeholder=\"https://api.example.com/data\"\n />\n </div>\n\n {/* HTTP Method */}\n <div className=\"space-y-2\">\n <Label>HTTP Method</Label>\n <Select\n value={(localForm.config?.httpMethod as string) || 'GET'}\n onValueChange={(value) => updateLocalConfig({ ...localForm.config, httpMethod: value })}\n >\n <SelectTrigger style={{ height: 'var(--size-controlHeight-md)' }}>\n <SelectValue />\n </SelectTrigger>\n <SelectContent position=\"popper\" side=\"bottom\" sideOffset={4}>\n <SelectItem value=\"GET\">GET</SelectItem>\n <SelectItem value=\"POST\">POST</SelectItem>\n <SelectItem value=\"PUT\">PUT</SelectItem>\n <SelectItem value=\"DELETE\">DELETE</SelectItem>\n </SelectContent>\n </Select>\n </div>\n\n {/* Headers */}\n <div className=\"space-y-2\">\n <Label>Headers (JSON)</Label>\n <Textarea\n value={(localForm.config?.headers as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, headers: e.target.value || undefined })\n }\n rows={3}\n placeholder='{\"Authorization\": \"Bearer token\", \"Content-Type\": \"application/json\"}'\n className=\"font-mono text-xs\"\n />\n </div>\n\n {/* Authentication Type */}\n <div className=\"space-y-2\">\n <Label>Authentication</Label>\n <Select\n value={(localForm.config?.authType as string) || 'none'}\n onValueChange={(value) => updateLocalConfig({ ...localForm.config, authType: value })}\n >\n <SelectTrigger style={{ height: 'var(--size-controlHeight-md)' }}>\n <SelectValue />\n </SelectTrigger>\n <SelectContent position=\"popper\" side=\"bottom\" sideOffset={4}>\n <SelectItem value=\"none\">None</SelectItem>\n <SelectItem value=\"api_key\">API Key</SelectItem>\n <SelectItem value=\"bearer\">Bearer Token</SelectItem>\n <SelectItem value=\"basic\">Basic Auth</SelectItem>\n </SelectContent>\n </Select>\n </div>\n\n {/* Auth Value (conditional) */}\n {!!(localForm.config?.authType && localForm.config.authType !== 'none') && (\n <div className=\"space-y-2\">\n <Label>\n {String(localForm.config.authType) === 'basic' ? 'Credentials (user:pass)' : 'Token/Key'}\n </Label>\n <Input\n type=\"password\"\n value={(localForm.config?.authValue as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, authValue: e.target.value || undefined })\n }\n placeholder={\n localForm.config.authType === 'basic' ? 'username:password' : 'Enter token or API key'\n }\n />\n </div>\n )}\n\n {/* Request Body (for POST/PUT) */}\n {(localForm.config?.httpMethod === 'POST' || localForm.config?.httpMethod === 'PUT') && (\n <div className=\"space-y-2\">\n <Label>Request Body (JSON)</Label>\n <Textarea\n value={(localForm.config?.requestBody as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, requestBody: e.target.value || undefined })\n }\n rows={4}\n placeholder='{\"key\": \"value\"}'\n className=\"font-mono text-xs\"\n />\n </div>\n )}\n\n {/* Data Path */}\n <div className=\"space-y-2\">\n <Label>Data Path (optional)</Label>\n <Input\n value={(localForm.config?.dataPath as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, dataPath: e.target.value || undefined })\n }\n placeholder=\"$.data.items or .data.items\"\n />\n <p className=\"text-xs text-muted-foreground\">\n JSONPath or dot notation to extract data from response\n </p>\n </div>\n </div>\n )}\n\n {localForm.config?.dataSourceType === 'GRAPHQL' && (\n <div className=\"space-y-3\">\n {/* GraphQL Endpoint */}\n <div className=\"space-y-2\">\n <Label>GraphQL Endpoint *</Label>\n <Input\n value={(localForm.config?.graphqlEndpoint as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, graphqlEndpoint: e.target.value || undefined })\n }\n placeholder=\"https://api.example.com/graphql\"\n />\n </div>\n\n {/* GraphQL Query */}\n <div className=\"space-y-2\">\n <Label>Query *</Label>\n <Textarea\n value={(localForm.config?.graphqlQuery as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, graphqlQuery: e.target.value || undefined })\n }\n rows={6}\n placeholder={`query GetData($limit: Int) {\n items(limit: $limit) {\n id\n name\n value\n }\n}`}\n className=\"font-mono text-xs\"\n />\n </div>\n\n {/* GraphQL Variables */}\n <div className=\"space-y-2\">\n <Label>Variables (JSON, optional)</Label>\n <Textarea\n value={(localForm.config?.graphqlVariables as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, graphqlVariables: e.target.value || undefined })\n }\n rows={3}\n placeholder='{\"limit\": 10, \"offset\": 0}'\n className=\"font-mono text-xs\"\n />\n </div>\n\n {/* Headers */}\n <div className=\"space-y-2\">\n <Label>Headers (JSON, optional)</Label>\n <Textarea\n value={(localForm.config?.headers as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, headers: e.target.value || undefined })\n }\n rows={2}\n placeholder='{\"Authorization\": \"Bearer token\"}'\n className=\"font-mono text-xs\"\n />\n </div>\n\n {/* Data Path */}\n <div className=\"space-y-2\">\n <Label>Data Path (optional)</Label>\n <Input\n value={(localForm.config?.dataPath as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, dataPath: e.target.value || undefined })\n }\n placeholder=\".data.items\"\n />\n <p className=\"text-xs text-muted-foreground\">Path to extract data from GraphQL response</p>\n </div>\n </div>\n )}\n\n {localForm.config?.dataSourceType === 'MOCK' && (\n <div className=\"space-y-2\">\n <Label>Sample Data (JSON)</Label>\n <Textarea\n value={(localForm.config?.mockData as string) || ''}\n onChange={(e) =>\n updateLocalConfig({ ...localForm.config, mockData: e.target.value || undefined })\n }\n rows={5}\n placeholder='{\"value\": 100}'\n className=\"font-mono text-sm\"\n />\n </div>\n )}\n </>\n )}\n </TabsContent>\n\n <TabsContent value=\"actions\" className=\"mt-0 space-y-4\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h3 className=\"text-sm font-medium\">Widget Actions</h3>\n <p className=\"text-xs text-muted-foreground\">Configure buttons on this widget</p>\n </div>\n <Button size=\"sm\" onClick={handleAddAction}>\n <Plus className=\"size-4\" />\n Add\n </Button>\n </div>\n\n {actionsLoading ? (\n <div className=\"flex justify-center py-8\">\n <Spinner className=\"size-6\" />\n </div>\n ) : actions.length === 0 ? (\n <div className=\"py-8 text-center\">\n <Info className=\"size-10 mx-auto mb-2 text-muted-foreground/50\" />\n <p className=\"text-sm text-muted-foreground\">No actions configured</p>\n </div>\n ) : (\n <div className=\"space-y-2\">\n {[...actions]\n .sort((a, b) => a.order - b.order)\n .map((action, index) => (\n <Card key={action.id} className={action.disabled ? 'opacity-60' : ''}>\n <CardContent className=\"p-3 flex items-center gap-2\">\n <div className=\"flex flex-col gap-0.5\">\n <Button\n variant=\"ghost\"\n size=\"icon-sm\"\n onClick={() => handleMoveActionUp(index)}\n disabled={index === 0}\n className=\"h-5 w-5\"\n >\n <ChevronUp className=\"size-3\" />\n </Button>\n <Button\n variant=\"ghost\"\n size=\"icon-sm\"\n onClick={() => handleMoveActionDown(index)}\n disabled={index === actions.length - 1}\n className=\"h-5 w-5\"\n >\n <ChevronDown className=\"size-3\" />\n </Button>\n </div>\n\n <div className=\"flex-1 min-w-0\">\n <div className=\"flex items-center gap-2\">\n <span\n className={`size-2 rounded-full ${ACTION_STYLE_COLORS[action.style] || 'bg-muted-foreground'}`}\n />\n <span className=\"text-sm font-medium truncate\">{action.label}</span>\n </div>\n <p className=\"text-xs text-muted-foreground\">\n {action.name} • {action.type}\n </p>\n </div>\n\n <div className=\"flex gap-1\">\n <Button variant=\"ghost\" size=\"icon-sm\" onClick={() => handleEditAction(action)}>\n <Pencil className=\"size-4\" />\n </Button>\n <Button variant=\"ghost\" size=\"icon-sm\" onClick={() => handleDeleteAction(action.id)}>\n <Trash2 className=\"size-4\" />\n </Button>\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n )}\n </TabsContent>\n\n <TabsContent value=\"drilldown\" className=\"mt-0\">\n <DrilldownConfigPanel widget={selectedWidget} onChange={handleDrilldownChange} />\n </TabsContent>\n\n <TabsContent value=\"webhooks\" className=\"mt-0\">\n <WebhookConfigPanel dashboardId={selectedWidget.dashboardId} widgetId={selectedWidget.id} />\n </TabsContent>\n\n <TabsContent value=\"events\" className=\"mt-0\">\n <EventLogViewer\n dashboardId={selectedWidget.dashboardId}\n widgetId={selectedWidget.id}\n maxHeight=\"calc(100vh - 350px)\"\n />\n </TabsContent>\n\n <TabsContent value=\"appearance\" className=\"mt-0\">\n {ConfigComponent ? (\n <ConfigComponent\n config={((selectedWidget.config as Record<string, unknown>) || {}) as never}\n onChange={handleConfigChange as never}\n />\n ) : (\n <div className=\"p-4 bg-muted rounded-lg text-center\">\n <p className=\"text-sm text-muted-foreground\">No style options for this widget type</p>\n </div>\n )}\n </TabsContent>\n </div>\n </Tabs>\n ) : (\n <div className=\"flex-1 flex items-center justify-center p-4\">\n <div className=\"text-center\">\n <Info className=\"size-12 mx-auto mb-3 text-muted-foreground\" />\n <p className=\"text-sm text-muted-foreground\">Select a widget to edit</p>\n </div>\n </div>\n )}\n\n {/* Global Save/Discard Footer */}\n {selectedWidget && (\n <div\n style={{\n padding: 'var(--space-cardPadding)',\n borderTop: '1px solid var(--color-border)',\n backgroundColor: 'var(--color-bg-sunken)',\n flexShrink: 0,\n }}\n >\n {/* Status indicator */}\n {hasUnsavedChanges && (\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n gap: 'var(--space-iconGap)',\n marginBottom: 'var(--space-controlGap)',\n padding: 'var(--space-controlGap)',\n backgroundColor: 'var(--color-status-warning-bgSubtle, rgba(251, 191, 36, 0.1))',\n borderRadius: 'var(--radius-button)',\n border: '1px solid var(--color-status-warning-border, rgba(251, 191, 36, 0.3))',\n }}\n >\n <div\n style={{\n width: '8px',\n height: '8px',\n borderRadius: '50%',\n backgroundColor: 'var(--color-status-warning-bg)',\n flexShrink: 0,\n }}\n />\n <span\n style={{\n fontSize: 'var(--font-size-body-sm)',\n color: 'var(--color-status-warning-text, #92400e)',\n fontWeight: 'var(--font-weight-medium)',\n }}\n >\n You have unsaved changes\n </span>\n </div>\n )}\n\n {saveStatus === 'saved' && !hasUnsavedChanges && (\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n gap: 'var(--space-iconGap)',\n marginBottom: 'var(--space-controlGap)',\n padding: 'var(--space-controlGap)',\n backgroundColor: 'var(--color-status-success-bgSubtle, rgba(34, 197, 94, 0.1))',\n borderRadius: 'var(--radius-button)',\n border: '1px solid var(--color-status-success-border, rgba(34, 197, 94, 0.3))',\n }}\n >\n <Check\n style={{\n width: 'var(--size-icon-sm)',\n height: 'var(--size-icon-sm)',\n color: 'var(--color-status-success-text)',\n flexShrink: 0,\n }}\n />\n <span\n style={{\n fontSize: 'var(--font-size-body-sm)',\n color: 'var(--color-status-success-text)',\n fontWeight: 'var(--font-weight-medium)',\n }}\n >\n All changes saved\n </span>\n </div>\n )}\n\n {saveStatus === 'error' && (\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n gap: 'var(--space-iconGap)',\n marginBottom: 'var(--space-controlGap)',\n padding: 'var(--space-controlGap)',\n backgroundColor: 'var(--color-status-error-bgSubtle)',\n borderRadius: 'var(--radius-button)',\n border: '1px solid var(--color-status-error-border)',\n }}\n >\n <X\n style={{\n width: 'var(--size-icon-sm)',\n height: 'var(--size-icon-sm)',\n color: 'var(--color-status-error-text)',\n flexShrink: 0,\n }}\n />\n <span\n style={{\n fontSize: 'var(--font-size-body-sm)',\n color: 'var(--color-status-error-text)',\n fontWeight: 'var(--font-weight-medium)',\n }}\n >\n Failed to save changes\n </span>\n </div>\n )}\n\n {/* Action buttons */}\n <div style={{ display: 'flex', gap: 'var(--space-controlGap)' }}>\n <Button\n onClick={handleSaveAll}\n disabled={saveStatus === 'saving' || !hasUnsavedChanges}\n style={{\n flex: 1,\n height: 'var(--size-controlHeight-md)',\n backgroundColor: hasUnsavedChanges ? 'var(--color-action-primary-bg)' : undefined,\n opacity: hasUnsavedChanges ? 1 : 0.5,\n }}\n >\n {saveStatus === 'saving' ? (\n <span style={{ display: 'flex', alignItems: 'center', gap: 'var(--space-iconGap)' }}>\n <Spinner style={{ width: 'var(--size-icon-sm)', height: 'var(--size-icon-sm)' }} />\n Saving...\n </span>\n ) : (\n <span style={{ display: 'flex', alignItems: 'center', gap: 'var(--space-iconGap)' }}>\n <Check style={{ width: 'var(--size-icon-sm)', height: 'var(--size-icon-sm)' }} />\n Save Changes\n </span>\n )}\n </Button>\n <Button\n variant=\"outline\"\n onClick={handleDiscardAll}\n disabled={saveStatus === 'saving' || !hasUnsavedChanges}\n style={{\n height: 'var(--size-controlHeight-md)',\n opacity: hasUnsavedChanges ? 1 : 0.5,\n }}\n >\n <X style={{ width: 'var(--size-icon-sm)', height: 'var(--size-icon-sm)' }} />\n Discard\n </Button>\n </div>\n </div>\n )}\n\n <ActionConfigDialog\n isOpen={isActionDialogOpen}\n action={editingAction}\n isLoading={actionSaving}\n onClose={() => {\n setIsActionDialogOpen(false);\n setEditingAction(undefined);\n }}\n onSave={handleSaveAction}\n />\n </SheetContent>\n </Sheet>\n );\n});\n\nexport default PropertiesPanel;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { Widget, WidgetType } from '../../types';
|
|
3
|
+
import { WidgetDefinition } from './WidgetRegistry';
|
|
4
|
+
|
|
5
|
+
export interface WidgetConfigDialogProps {
|
|
6
|
+
/** Whether dialog is open */
|
|
7
|
+
isOpen: boolean;
|
|
8
|
+
/** Widget to edit (undefined for new widget) */
|
|
9
|
+
widget?: Widget;
|
|
10
|
+
/** Pre-selected widget type (for drag & drop from palette) */
|
|
11
|
+
preselectedType?: WidgetType;
|
|
12
|
+
/** Pre-selected widget definition from drag & drop (preserves installed/store widget metadata) */
|
|
13
|
+
preselectedDefinition?: WidgetDefinition;
|
|
14
|
+
/** Callback when dialog is closed */
|
|
15
|
+
onClose: () => void;
|
|
16
|
+
/** Callback when widget is saved */
|
|
17
|
+
onSave: (widget: Partial<Widget>) => void;
|
|
18
|
+
/** Dashboard ID for fetching parsers */
|
|
19
|
+
dashboardId?: string;
|
|
20
|
+
/** Installed widgets from the store (fetched by parent) */
|
|
21
|
+
installedWidgets?: WidgetDefinition[];
|
|
22
|
+
}
|
|
23
|
+
export declare const WidgetConfigDialog: FC<WidgetConfigDialogProps>;
|
|
24
|
+
export default WidgetConfigDialog;
|
|
25
|
+
//# sourceMappingURL=WidgetConfigDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WidgetConfigDialog.d.ts","sourceRoot":"","sources":["../../../../src/bigconsole/components/widgets/WidgetConfigDialog.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAE,EAAmD,MAAM,OAAO,CAAC;AAgBjF,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAgC,MAAM,aAAa,CAAC;AACpF,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAsB9E,MAAM,WAAW,uBAAuB;IACtC,6BAA6B;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,kGAAkG;IAClG,qBAAqB,CAAC,EAAE,gBAAgB,CAAC;IACzC,qCAAqC;IACrC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oCAAoC;IACpC,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAC1C,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACvC;AAkSD,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC,uBAAuB,CA2tBzD,CAAC;AAEH,eAAe,kBAAkB,CAAC"}
|