@adaptabletools/adaptable 21.2.2-canary.0 → 22.0.0-canary.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -6
- package/icons/inspector.svg +1 -0
- package/index.css +6464 -5488
- package/index.css.map +1 -1
- package/package.json +5 -6
- package/src/AdaptableInterfaces/IAdaptable.d.ts +9 -1
- package/src/AdaptableState/ChartingState.d.ts +1 -1
- package/src/AdaptableState/Common/AdaptableAlert.d.ts +2 -2
- package/src/AdaptableState/Common/AdaptableIcon.d.ts +1 -1
- package/src/AdaptableState/Common/AdaptablePredicate.js +7 -3
- package/src/AdaptableState/Common/AggregationColumns.d.ts +3 -3
- package/src/AdaptableState/Common/DataUpdateConfig.d.ts +4 -4
- package/src/AdaptableState/TeamSharingState.d.ts +1 -1
- package/src/Api/CustomSortApi.d.ts +6 -1
- package/src/Api/GridApi.d.ts +14 -0
- package/src/Api/Implementation/ColumnApiImpl.d.ts +3 -0
- package/src/Api/Implementation/ColumnApiImpl.js +12 -3
- package/src/Api/Implementation/CustomSortApiImpl.d.ts +2 -1
- package/src/Api/Implementation/CustomSortApiImpl.js +5 -1
- package/src/Api/Implementation/GridApiImpl.d.ts +9 -0
- package/src/Api/Implementation/GridApiImpl.js +16 -0
- package/src/Api/Implementation/LayoutApiImpl.d.ts +1 -0
- package/src/Api/Implementation/LayoutApiImpl.js +85 -2
- package/src/Api/Implementation/LayoutHelpers.d.ts +2 -2
- package/src/Api/Implementation/ScheduleApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ScheduleApiImpl.js +12 -0
- package/src/Api/Implementation/ShortcutApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ShortcutApiImpl.js +4 -0
- package/src/Api/Implementation/StyledColumnApiImpl.d.ts +1 -0
- package/src/Api/Implementation/StyledColumnApiImpl.js +4 -0
- package/src/Api/Internal/AdaptableInternalApi.d.ts +0 -1
- package/src/Api/Internal/AdaptableInternalApi.js +3 -3
- package/src/Api/Internal/ColumnFilterInternalApi.js +1 -1
- package/src/Api/Internal/LayoutInternalApi.d.ts +5 -0
- package/src/Api/Internal/LayoutInternalApi.js +25 -0
- package/src/Api/LayoutApi.d.ts +7 -1
- package/src/Api/ScheduleApi.d.ts +5 -0
- package/src/Api/ShortcutApi.d.ts +5 -0
- package/src/Api/StyledColumnApi.d.ts +5 -0
- package/src/Redux/ActionsReducers/CommentsRedux.d.ts +1 -1
- package/src/Redux/ActionsReducers/DashboardRedux.d.ts +1 -1
- package/src/Redux/ActionsReducers/InternalRedux.d.ts +6 -6
- package/src/Redux/ActionsReducers/LayoutRedux.d.ts +3 -9
- package/src/Redux/ActionsReducers/StyledColumnRedux.d.ts +6 -6
- package/src/Redux/ActionsReducers/StyledColumnRedux.js +16 -16
- package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +3 -0
- package/src/Redux/Store/AdaptableStore.js +8 -7
- package/src/Strategy/FormatColumnModule.js +2 -2
- package/src/Strategy/Utilities/Alert/getAlertPreviewViewItems.js +1 -1
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +2 -1
- package/src/Strategy/Utilities/Layout/getLayoutFilterViewItems.js +4 -3
- package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +18 -17
- package/src/Utilities/Constants/DocumentationLinkConstants.js +18 -17
- package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.d.ts +4 -4
- package/src/Utilities/Extensions/StringExtensions.d.ts +1 -1
- package/src/Utilities/Helpers/StyleHelper.d.ts +1 -1
- package/src/Utilities/Services/Interface/IAlertService.d.ts +2 -2
- package/src/Utilities/Services/ModuleService.js +37 -38
- package/src/Utilities/createAgStatusPanelComponent.d.ts +1 -1
- package/src/Utilities/getObjectTagsViewItems.js +1 -1
- package/src/Utilities/runIfNotResolvedIn.d.ts +1 -1
- package/src/View/AdaptableComputedCSSVarsContext.js +6 -1
- package/src/View/AdaptablePopover/index.d.ts +1 -1
- package/src/View/AdaptablePopover/index.js +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/AdaptableOptionsForm.js +7 -8
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +7 -6
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.d.ts +4 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/Components/FormBox.js +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/EntitlementsForm.js +9 -9
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/GridOptionsForm.js +3 -3
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsSidebarForm.js +4 -4
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +4 -4
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UiOptionsForm.js +2 -2
- package/src/View/AdaptableWizardView/Wizard.js +1 -1
- package/src/View/AdaptableWizardView/index.js +1 -4
- package/src/View/Alert/ActiveAlertsPanelItemLabel.js +2 -2
- package/src/View/Alert/AlertStatusSubPanel.js +1 -1
- package/src/View/Alert/AlertViewPanel.js +2 -2
- package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +3 -20
- package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +15 -13
- package/src/View/Alert/Wizard/AlertButtonsEditor.js +25 -22
- package/src/View/Alert/Wizard/AlertMessageWizardSection.js +12 -16
- package/src/View/Alert/Wizard/AlertNotificationWizardSection.d.ts +3 -1
- package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +7 -7
- package/src/View/Alert/Wizard/AlertRulesWizardSection.js +2 -2
- package/src/View/Alert/Wizard/AlertScopeWizardSection.js +2 -2
- package/src/View/Alert/Wizard/AlertTypeWizardSection.js +1 -1
- package/src/View/Alert/Wizard/AlertWizard.js +8 -8
- package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +11 -8
- package/src/View/BulkUpdate/BulkUpdatePopup.js +11 -11
- package/src/View/BulkUpdate/BulkUpdateViewPanel.js +4 -4
- package/src/View/CalculatedColumn/CalculatedColumnSummary.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +8 -8
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +4 -4
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +4 -5
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnTypeSection.js +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.d.ts +0 -2
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +8 -14
- package/src/View/CalculatedColumn/Wizard/calculatedColumnTypes.d.ts +2 -0
- package/src/View/CalculatedColumn/Wizard/calculatedColumnTypes.js +6 -0
- package/src/View/CellSummary/CellSummaryPopup.js +1 -1
- package/src/View/CellSummary/CellSummaryViewPanel.js +5 -5
- package/src/View/Charting/ChartingStatusBarPopover.js +4 -4
- package/src/View/Charting/ChartingViewPanel.js +7 -7
- package/src/View/Charting/ChartingWizard/AgChargingWizard/AgChargingWizard.js +4 -4
- package/src/View/Charting/ChartingWizard/ExternalChartingWizard/ExternalChartingWizard.js +3 -3
- package/src/View/Charting/useChartingElements.d.ts +1 -1
- package/src/View/Charting/useChartingElements.js +1 -1
- package/src/View/ColumnInfo/ColumnInfo.js +14 -19
- package/src/View/ColumnInfo/ColumnInfoPopup.js +2 -2
- package/src/View/Comments/CommentsEditor.js +14 -17
- package/src/View/Comments/CommentsPopup.js +6 -6
- package/src/View/Components/AdaptableDateInput/index.js +1 -1
- package/src/View/Components/AdaptableInput/index.js +3 -2
- package/src/View/Components/AdaptableObjectCollection/index.d.ts +2 -2
- package/src/View/Components/AdaptableObjectCollection/index.js +9 -5
- package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +10 -10
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.d.ts +2 -0
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +20 -18
- package/src/View/Components/AdaptableObjectRow/index.d.ts +1 -0
- package/src/View/Components/AdaptableObjectRow/index.js +4 -5
- package/src/View/Components/Buttons/ButtonBase/index.d.ts +1 -2
- package/src/View/Components/Buttons/ButtonBase/index.js +5 -4
- package/src/View/Components/Buttons/ButtonClear.js +2 -1
- package/src/View/Components/Buttons/ButtonFunction.js +2 -1
- package/src/View/Components/Buttons/ButtonNew.d.ts +11 -1
- package/src/View/Components/Buttons/ButtonNew.js +2 -1
- package/src/View/Components/Buttons/EntityListActionButtons.d.ts +1 -1
- package/src/View/Components/Buttons/EntityListActionButtons.js +14 -43
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.d.ts +1 -0
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +3 -2
- package/src/View/Components/CellPopup/index.d.ts +1 -1
- package/src/View/Components/ColumnFilter/AdaptableColumnFilter.d.ts +4 -3
- package/src/View/Components/ColumnFilter/ColumnFilter.d.ts +4 -2
- package/src/View/Components/ColumnFilter/ColumnFilter.js +26 -23
- package/src/View/Components/ColumnFilter/ColumnFilterWindow.js +6 -6
- package/src/View/Components/ColumnFilter/FloatingFilter.js +6 -6
- package/src/View/Components/ColumnFilter/components/ColumnFilterInput.d.ts +1 -1
- package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +2 -2
- package/src/View/Components/ColumnFilter/components/ColumnFilterInputList.js +1 -1
- package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +6 -6
- package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.d.ts +1 -1
- package/src/View/Components/ColumnFilter/useAdaptableFilterWrapper.js +9 -1
- package/src/View/Components/ColumnSelector/index.js +1 -3
- package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicateEditor.js +10 -10
- package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.js +11 -15
- package/src/View/Components/EntityRulesEditor/index.d.ts +5 -2
- package/src/View/Components/EntityRulesEditor/index.js +11 -10
- package/src/View/Components/ExpressionWizard.js +4 -4
- package/src/View/Components/FilterForm/Waiting.d.ts +4 -2
- package/src/View/Components/FilterForm/Waiting.js +3 -2
- package/src/View/Components/Forms/AdaptableFormControlTextClear.d.ts +1 -0
- package/src/View/Components/Forms/AdaptableFormControlTextClear.js +4 -8
- package/src/View/Components/ModuleValueSelector/index.js +2 -2
- package/src/View/Components/NewScopeComponent.js +20 -20
- package/src/View/Components/Panels/PanelFooter.js +5 -5
- package/src/View/Components/Panels/PanelToolPanel/index.d.ts +1 -1
- package/src/View/Components/Panels/PanelToolPanel/index.js +9 -11
- package/src/View/Components/Panels/PanelWithButton.d.ts +3 -5
- package/src/View/Components/Panels/PanelWithButton.js +7 -6
- package/src/View/Components/Panels/PanelWithImage.d.ts +2 -3
- package/src/View/Components/Panels/PanelWithImage.js +10 -12
- package/src/View/Components/Panels/PanelWithRow.d.ts +0 -1
- package/src/View/Components/Panels/PanelWithRow.js +3 -3
- package/src/View/Components/Panels/PanelWithTwoButtons.d.ts +1 -1
- package/src/View/Components/Panels/PanelWithTwoButtons.js +3 -3
- package/src/View/Components/Popups/AdaptableLoadingScreen.js +3 -5
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +4 -3
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +3 -2
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +4 -4
- package/src/View/Components/Popups/AdaptablePopup/Navigation.js +63 -31
- package/src/View/Components/Popups/AdaptablePopup/PopupPanel.d.ts +2 -0
- package/src/View/Components/Popups/AdaptablePopup/PopupPanel.js +8 -9
- package/src/View/Components/Popups/AdaptablePopup/TopBar.js +5 -4
- package/src/View/Components/Popups/AdaptablePopup/useMenuItems.d.ts +1 -1
- package/src/View/Components/Popups/AdaptablePopupAlert.js +6 -11
- package/src/View/Components/Popups/AdaptablePopupConfirmation.js +6 -6
- package/src/View/Components/Popups/AdaptablePopupPrompt.js +7 -7
- package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +9 -11
- package/src/View/Components/Popups/FormPopups/FormPopups.js +3 -3
- package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +1 -1
- package/src/View/Components/Popups/WindowPopups/WindowPopups.js +3 -3
- package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +0 -1
- package/src/View/Components/PredicateEditor/PredicateEditor.js +7 -7
- package/src/View/Components/PreviewResultsPanel.d.ts +1 -0
- package/src/View/Components/PreviewResultsPanel.js +6 -13
- package/src/View/Components/RangesComponent.js +19 -19
- package/src/View/Components/ReorderDraggable/index.d.ts +2 -0
- package/src/View/Components/ReorderDraggable/index.js +8 -7
- package/src/View/Components/Selectors/BulkUpdateValueSelector.js +4 -7
- package/src/View/Components/Selectors/ColumnSelector.js +1 -1
- package/src/View/Components/Selectors/ColumnSelectorOld.js +1 -1
- package/src/View/Components/StyleComponent.d.ts +2 -26
- package/src/View/Components/StyleComponent.js +186 -190
- package/src/View/Components/TagValueSelector/index.d.ts +1 -1
- package/src/View/Components/TagValueSelector/index.js +4 -3
- package/src/View/Components/ToolPanel/AdaptableToolPanel.d.ts +1 -1
- package/src/View/Components/ToolPanel/AdaptableToolPanel.js +13 -12
- package/src/View/Components/ToolPanel/ToolPanelPopup.d.ts +1 -1
- package/src/View/Components/ToolPanel/ToolPanelPopup.js +13 -10
- package/src/View/Components/ToolPanel/ToolPanelWrapper.js +2 -2
- package/src/View/Components/ValueSelector/index.d.ts +9 -33
- package/src/View/Components/ValueSelector/index.js +38 -61
- package/src/View/Components/WizardSummaryPage.js +1 -1
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +2 -2
- package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +4 -7
- package/src/View/CustomSort/Wizard/CustomSortWizard.js +5 -5
- package/src/View/Dashboard/Dashboard.js +3 -3
- package/src/View/Dashboard/DashboardPopup.js +27 -23
- package/src/View/Dashboard/DashboardViewPanel.js +4 -4
- package/src/View/Dashboard/PinnedDashboard.js +3 -3
- package/src/View/Dashboard/PinnedToolbarsSelector.js +3 -2
- package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +10 -10
- package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +7 -7
- package/src/View/DataImport/DataImportPopup.js +2 -2
- package/src/View/DataImport/DataImportWizard/DataImportWizard.js +2 -2
- package/src/View/DataImport/DataImportWizard/sections/ColumnsSection.js +6 -6
- package/src/View/DataImport/DataImportWizard/sections/ImportSection.js +4 -4
- package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadFileSection.js +1 -1
- package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadSection.js +4 -4
- package/src/View/DataImport/DataImportWizard/sections/UploadSection/UploadTextSection.js +1 -1
- package/src/View/DataImport/DataImportWizard/sections/ValidationSection.js +4 -4
- package/src/View/DataSet/DataSetViewPanel.d.ts +2 -2
- package/src/View/DataSet/DataSetViewPanel.js +2 -2
- package/src/View/Export/ExportDestinationPicker.js +2 -1
- package/src/View/Export/ExportViewPanel.js +4 -4
- package/src/View/Export/ReportFormatSelector.js +3 -3
- package/src/View/Export/ReportListItem.js +1 -1
- package/src/View/Export/ReportNameSelector.js +3 -3
- package/src/View/Export/Wizard/NewReportWizard.js +4 -4
- package/src/View/Export/Wizard/ReportColumnTypeWizard.js +8 -8
- package/src/View/Export/Wizard/ReportColumnsWizardSection.js +11 -11
- package/src/View/Export/Wizard/ReportNameWizardSection.js +4 -4
- package/src/View/Export/Wizard/ReportRowTypeWizard.js +8 -8
- package/src/View/Export/Wizard/ReportRowsWizardSection.js +9 -9
- package/src/View/Export/Wizard/ReportSettingsWizard.js +3 -3
- package/src/View/Filter/FilterSummary.d.ts +1 -1
- package/src/View/Filter/FilterSummary.js +1 -1
- package/src/View/Filter/FilterViewPanel.d.ts +2 -2
- package/src/View/Filter/FilterViewPanel.js +4 -4
- package/src/View/FlashingCell/FlashingCellStyle.d.ts +2 -2
- package/src/View/FlashingCell/FlashingCellStyle.js +4 -4
- package/src/View/FlashingCell/Wizard/FlashingCellScopeWizardSection.js +2 -2
- package/src/View/FlashingCell/Wizard/FlashingCellSettingsWizardSection.js +11 -11
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.d.ts +2 -2
- package/src/View/FlashingCell/Wizard/FlashingCellStyleWizardSection.js +4 -4
- package/src/View/FlashingCell/Wizard/FlashingCellWizard.js +5 -5
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +59 -64
- package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +1 -1
- package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +0 -4
- package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +28 -28
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +2 -2
- package/src/View/FormatColumn/Wizard/FormatColumnTargetWizardSection.js +2 -2
- package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +8 -8
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +11 -11
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +4 -4
- package/src/View/GridFilter/GridFilterExpressionEditor.js +6 -6
- package/src/View/GridFilter/GridFilterPopup.js +31 -40
- package/src/View/GridFilter/GridFilterPopupUI/index.d.ts +68 -0
- package/src/View/GridFilter/GridFilterPopupUI/index.js +42 -0
- package/src/View/GridFilter/GridFilterViewPanel.js +14 -21
- package/src/View/GridFilter/NamedQuerySelector.js +7 -7
- package/src/View/GridFilter/useGridFilterExpressionEditor.d.ts +5 -1
- package/src/View/GridFilter/useGridFilterExpressionEditor.js +2 -1
- package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.d.ts +3 -1
- package/src/View/GridInfo/GridInfoPopup/AdaptableObjectsSummary.js +4 -3
- package/src/View/GridInfo/GridInfoPopup/AdaptableOptionsComponent.js +5 -9
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +7 -7
- package/src/View/KeyHint.d.ts +5 -2
- package/src/View/KeyHint.js +4 -2
- package/src/View/Layout/EditCurrentLayoutButton.js +1 -1
- package/src/View/Layout/LayoutStatusBarSubPanelPopover.js +1 -1
- package/src/View/Layout/LayoutViewPanel.d.ts +3 -3
- package/src/View/Layout/LayoutViewPanel.js +2 -2
- package/src/View/Layout/TransposedPopup.js +4 -4
- package/src/View/Layout/Wizard/LayoutWizard.js +18 -18
- package/src/View/Layout/Wizard/sections/AggregationsSection.js +6 -8
- package/src/View/Layout/Wizard/sections/ColumnsSection.js +213 -138
- package/src/View/Layout/Wizard/sections/FilterSection.js +6 -7
- package/src/View/Layout/Wizard/sections/GridFilterSection.js +2 -2
- package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +15 -18
- package/src/View/Layout/Wizard/sections/PivotColumnsSection.js +4 -6
- package/src/View/Layout/Wizard/sections/PivotRowGroupingSection.js +3 -5
- package/src/View/Layout/Wizard/sections/RowGroupingSection.js +8 -10
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +15 -17
- package/src/View/Layout/Wizard/sections/SettingsSection.js +8 -8
- package/src/View/Layout/Wizard/sections/SortSection.js +5 -7
- package/src/View/License/LicenseWatermark.js +1 -1
- package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +2 -2
- package/src/View/NamedQuery/Wizard/NamedQuerySettingsWizardSection.js +3 -3
- package/src/View/NamedQuery/Wizard/NamedQueryWizard.js +3 -3
- package/src/View/Note/NoteEditor.js +5 -1
- package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +5 -5
- package/src/View/PlusMinus/Wizard/PlusMinusWizard.js +4 -4
- package/src/View/QuickSearch/FloatingQuickSearch/FloatingQuickSearch.js +2 -2
- package/src/View/QuickSearch/QuickSearchInput.d.ts +1 -0
- package/src/View/QuickSearch/QuickSearchInput.js +5 -5
- package/src/View/QuickSearch/QuickSearchPopup.js +17 -16
- package/src/View/QuickSearch/QuickSearchViewPanel.js +1 -1
- package/src/View/Schedule/Wizard/ScheduleScheduleWizard.js +4 -4
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsIPushPull.js +5 -5
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsOpenFin.js +2 -2
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +4 -4
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReport.js +5 -5
- package/src/View/Schedule/Wizard/ScheduleWizard.js +5 -5
- package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +5 -8
- package/src/View/Shortcut/Wizard/ShortcutWizard.js +5 -5
- package/src/View/SmartEdit/SmartEditPopup.d.ts +1 -1
- package/src/View/SmartEdit/SmartEditPopup.js +8 -8
- package/src/View/SmartEdit/SmartEditViewPanel.js +1 -1
- package/src/View/SpecialColumnSettingsWizardStep.js +4 -4
- package/src/View/StateManagement/StateManagementPopup.js +12 -12
- package/src/View/StateManagement/StateManagementViewPanel.js +1 -1
- package/src/View/StateManagement/handleExportState.d.ts +1 -1
- package/src/View/StatusBar/AdaptableStatusBar.js +1 -1
- package/src/View/StatusBar/StatusBarPanel.d.ts +2 -2
- package/src/View/StatusBar/StatusBarPanel.js +5 -4
- package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +9 -9
- package/src/View/StyledColumn/Wizard/StyledColumnSparklineSettingsSection.js +51 -48
- package/src/View/StyledColumn/Wizard/StyledColumnWizard.js +8 -8
- package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardSettingsSection.js +18 -18
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarColumnComparisonPreview.js +3 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarRangesPreview.js +4 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/PercentBarStylePreview.js +5 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgeSettings.js +4 -6
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +14 -15
- package/src/View/StyledColumn/Wizard/StyledColumnWizardTypeSection.js +4 -4
- package/src/View/SystemStatus/SystemStatusEntityRow.js +3 -3
- package/src/View/SystemStatus/SystemStatusPopup.js +2 -2
- package/src/View/SystemStatus/SystemStatusStatusBarContent.js +2 -2
- package/src/View/SystemStatus/SystemStatusViewPanel.d.ts +2 -2
- package/src/View/SystemStatus/SystemStatusViewPanel.js +2 -2
- package/src/View/TeamSharing/SharedEntityDependencies.js +4 -4
- package/src/View/TeamSharing/SharedEntityObjectView.js +8 -8
- package/src/View/Theme/ThemeEditor.js +6 -31
- package/src/View/Theme/ThemeEditorWindow.js +2 -2
- package/src/View/Theme/ThemeField.js +1 -2
- package/src/View/Theme/ThemePopup.d.ts +1 -1
- package/src/View/Theme/ThemePopup.js +4 -4
- package/src/View/Theme/ThemeStatusbar.js +1 -1
- package/src/View/Theme/VariantSelector.js +1 -1
- package/src/View/UIHelper.d.ts +1 -1
- package/src/View/Wizard/Interface/IAdaptableWizard.d.ts +1 -1
- package/src/View/Wizard/ObjectTagsWizardSection.js +2 -4
- package/src/View/Wizard/OnePageAdaptableWizard.d.ts +10 -4
- package/src/View/Wizard/OnePageAdaptableWizard.js +14 -16
- package/src/View/Wizard/OnePageWizards.d.ts +10 -4
- package/src/View/Wizard/OnePageWizards.js +50 -64
- package/src/View/Wizard/TypeRadio.js +3 -3
- package/src/View/Wizard/WizardLegend.js +3 -4
- package/src/View/Wizard/useKeyboardNavigation.d.ts +1 -1
- package/src/View/Wizard/useKeyboardNavigation.js +7 -4
- package/src/View/renderWithAdaptableContext.js +2 -5
- package/src/agGrid/AdaptableAgGrid.d.ts +11 -3
- package/src/agGrid/AdaptableAgGrid.js +153 -18
- package/src/agGrid/AdaptableFilterHandler.d.ts +5 -7
- package/src/agGrid/AdaptableFilterHandler.js +12 -28
- package/src/agGrid/AgGridColumnAdapter.d.ts +6 -1
- package/src/agGrid/AgGridColumnAdapter.js +26 -5
- package/src/agGrid/AgGridFilterAdapter.js +1 -1
- package/src/agGrid/AgGridFloatingFilterAdapter.js +1 -21
- package/src/agGrid/editors/AdaptableNumberEditor/InternalAdaptableNumberEditor.js +1 -5
- package/src/agGrid/editors/AdaptablePercentageEditor/InternalAdaptablePercentageEditor.js +1 -5
- package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +9 -8
- package/src/components/Card/index.d.ts +25 -0
- package/src/components/Card/index.js +45 -0
- package/src/components/CheckBox/index.d.ts +3 -4
- package/src/components/CheckBox/index.js +7 -9
- package/src/components/CodeBlock/index.d.ts +6 -2
- package/src/components/CodeBlock/index.js +3 -3
- package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
- package/src/components/ColorPicker/ColorPicker.js +10 -9
- package/src/components/Dashboard/Dashboard.js +1 -1
- package/src/components/Dashboard/DashboardToolbar.js +5 -6
- package/src/components/Datepicker/index.d.ts +2 -2
- package/src/components/Datepicker/index.js +9 -8
- package/src/components/Dialog/index.d.ts +8 -2
- package/src/components/Dialog/index.js +7 -7
- package/src/components/DragAndDropContext/DragAndDropContext.d.ts +1 -1
- package/src/components/DragAndDropContext/ModuleManager.d.ts +1 -0
- package/src/components/DragAndDropContext/ModuleManager.js +9 -6
- package/src/components/DragAndDropContext/TabList.d.ts +2 -1
- package/src/components/DragAndDropContext/TabList.js +44 -24
- package/src/components/DragAndDropContext/UnusedPanel.js +7 -15
- package/src/components/Dropdown/index.d.ts +2 -2
- package/src/components/Dropdown/index.js +5 -6
- package/src/components/DropdownButton/index.d.ts +2 -22
- package/src/components/DropdownButton/index.js +7 -4
- package/src/components/EmptyContent/index.d.ts +2 -2
- package/src/components/EmptyContent/index.js +4 -4
- package/src/components/ErrorBox/index.d.ts +2 -2
- package/src/components/ErrorBox/index.js +3 -3
- package/src/components/ExpressionEditor/BaseEditorInput.js +65 -48
- package/src/components/ExpressionEditor/DataTableEditor.js +6 -10
- package/src/components/ExpressionEditor/EditorButton.js +0 -2
- package/src/components/ExpressionEditor/EditorContext.d.ts +0 -1
- package/src/components/ExpressionEditor/EditorInputWithWhereClause.js +5 -5
- package/src/components/ExpressionEditor/ExpressionFunctionDocumentation.js +9 -11
- package/src/components/ExpressionEditor/NamedQueryContext.d.ts +0 -1
- package/src/components/ExpressionEditor/NamedQueryEditor.js +6 -16
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilder.d.ts +2 -10
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilder.js +6 -6
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.d.ts +1 -1
- package/src/components/ExpressionEditor/QueryBuilder/QueryBuilderInputs.js +7 -7
- package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +9 -14
- package/src/components/ExpressionEditor/index.d.ts +1 -0
- package/src/components/ExpressionEditor/index.js +29 -34
- package/src/components/FieldWrap/index.d.ts +9 -2
- package/src/components/FieldWrap/index.js +3 -8
- package/src/components/FileDroppable/FileDroppableState.d.ts +0 -1
- package/src/components/FileDroppable/index.d.ts +3 -2
- package/src/components/FileDroppable/index.js +3 -3
- package/src/components/Flex.d.ts +15 -1
- package/src/components/Flex.js +40 -1
- package/src/components/FlexWithFooter.d.ts +3 -2
- package/src/components/FlexWithFooter.js +4 -4
- package/src/components/FormLayout/index.d.ts +5 -1
- package/src/components/FormLayout/index.js +1 -1
- package/src/components/HelpBlock/index.d.ts +2 -2
- package/src/components/HelpBlock/index.js +4 -3
- package/src/components/IconSelector/IconSelector.js +8 -8
- package/src/components/Input/index.d.ts +1 -2
- package/src/components/Input/index.js +6 -3
- package/src/components/Modal/Backdrop.js +1 -1
- package/src/components/Modal/index.d.ts +3 -2
- package/src/components/Modal/index.js +3 -3
- package/src/components/OverlayTrigger/index.js +3 -0
- package/src/components/Panel/index.d.ts +22 -6
- package/src/components/Panel/index.js +54 -15
- package/src/components/PopupWithFooter.js +3 -4
- package/src/components/ProgressIndicator/ProgressIndicator.js +3 -3
- package/src/components/Radio/index.d.ts +25 -3
- package/src/components/Radio/index.js +18 -20
- package/src/components/Select/Select.js +33 -21
- package/src/components/SelectList.js +1 -1
- package/src/components/SelectableList/index.d.ts +1 -1
- package/src/components/SimpleButton/index.d.ts +4 -6
- package/src/components/SimpleButton/index.js +55 -23
- package/src/components/SizedContainer/index.d.ts +3 -1
- package/src/components/SizedContainer/index.js +1 -1
- package/src/components/StylePreview.d.ts +3 -1
- package/src/components/StylePreview.js +4 -3
- package/src/components/Tabs/index.d.ts +3 -3
- package/src/components/Tabs/index.js +26 -9
- package/src/components/Tag/Tag.d.ts +14 -2
- package/src/components/Tag/Tag.js +10 -3
- package/src/components/Tag/index.d.ts +1 -1
- package/src/components/Tag/index.js +1 -1
- package/src/components/Textarea/index.d.ts +5 -1
- package/src/components/Textarea/index.js +4 -3
- package/src/components/Toggle/Toggle.js +48 -3
- package/src/components/Toggle/ToggleGroup.d.ts +7 -0
- package/src/components/Toggle/ToggleGroup.js +57 -2
- package/src/components/ToggleButton/index.d.ts +2 -2
- package/src/components/ToggleButton/index.js +25 -7
- package/src/components/Tree/TreeDropdown/index.js +10 -15
- package/src/components/Tree/TreeList/index.js +5 -9
- package/src/components/WarningBox/index.d.ts +6 -2
- package/src/components/WarningBox/index.js +3 -3
- package/src/components/WizardPanel/index.d.ts +6 -1
- package/src/components/WizardPanel/index.js +2 -2
- package/src/components/icons/DefaultIcon.d.ts +1 -0
- package/src/components/icons/index.d.ts +1 -1
- package/src/components/icons/index.js +2 -0
- package/src/components/icons/inspector.d.ts +3 -0
- package/src/components/icons/inspector.js +5 -0
- package/src/components/twUtils.d.ts +7 -0
- package/src/components/twUtils.js +13 -0
- package/src/components/utils/useDraggable.d.ts +0 -1
- package/src/devTools/index.d.ts +23 -23
- package/src/env.js +2 -2
- package/src/layout-manager/src/LMEmitter.d.ts +1 -0
- package/src/layout-manager/src/LMEmitter.js +1 -0
- package/src/layout-manager/src/index.js +2 -2
- package/src/migration/VersionUpgrade20.js +6 -5
- package/src/twMerge.d.ts +1 -0
- package/src/twMerge.js +11 -0
- package/themes/dark.css +35 -9
- package/themes/light.css +0 -2
- package/tsconfig.esm.tsbuildinfo +1 -1
- package/base.css +0 -5602
- package/base.css.map +0 -1
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnStyleViewItems.d.ts +0 -3
- package/src/Strategy/Utilities/FormatColumn/getFormatColumnStyleViewItems.js +0 -6
- package/src/View/Alert/AlertsPanel.d.ts +0 -14
- package/src/View/Alert/AlertsPanel.js +0 -38
- package/src/View/Alert/Wizard/AlertSelectQueryWizard.d.ts +0 -19
- package/src/View/Alert/Wizard/AlertSelectQueryWizard.js +0 -54
- package/src/View/Components/FilterForm/ListBoxMenu.d.ts +0 -14
- package/src/View/Components/FilterForm/ListBoxMenu.js +0 -28
- package/src/View/Components/ListBox/DualListBoxEditor.d.ts +0 -22
- package/src/View/Components/ListBox/DualListBoxEditor.js +0 -515
- package/src/View/Components/ListBox/ListBoxFilterSortComponent.d.ts +0 -13
- package/src/View/Components/ListBox/ListBoxFilterSortComponent.js +0 -26
- package/src/View/CustomSort/Wizard/CustomSortSummaryWizard.d.ts +0 -15
- package/src/View/CustomSort/Wizard/CustomSortSummaryWizard.js +0 -31
- package/src/View/Layout/Wizard/Components/ColumnLabels.d.ts +0 -9
- package/src/View/Layout/Wizard/Components/ColumnLabels.js +0 -52
- package/src/View/Wizard/AdaptableWizard.d.ts +0 -56
- package/src/View/Wizard/AdaptableWizard.js +0 -168
- package/src/components/ContainerProps.d.ts +0 -30
- package/src/components/ContainerProps.js +0 -1
- package/src/components/EllipsisContainer/index.d.ts +0 -13
- package/src/components/EllipsisContainer/index.js +0 -100
- package/src/components/List/GridList/index.d.ts +0 -10
- package/src/components/List/GridList/index.js +0 -23
- package/src/components/List/ListGroup/index.d.ts +0 -6
- package/src/components/List/ListGroup/index.js +0 -9
- package/src/components/List/ListGroupItem/index.d.ts +0 -11
- package/src/components/List/ListGroupItem/index.js +0 -16
- package/src/components/utils/useTheme.d.ts +0 -32
- package/src/components/utils/useTheme.js +0 -2
- package/src/theme.d.ts +0 -32
- package/src/theme.js +0 -49
- package/themes/dark.css.map +0 -1
- package/themes/light.css.map +0 -1
|
@@ -1,27 +1,9 @@
|
|
|
1
1
|
export class AdaptableFilterHandler {
|
|
2
|
-
constructor(adaptableApi
|
|
2
|
+
constructor(adaptableApi) {
|
|
3
3
|
this.adaptableApi = adaptableApi;
|
|
4
|
-
this.currentColumnFilters_MEMO = new WeakMap();
|
|
5
|
-
this.colId = columnSetup.colId;
|
|
6
4
|
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
// this method is called for each row during filtering so we need to optimize it
|
|
10
|
-
const layoutColumnFilters = this.adaptableApi.layoutApi.internalApi.getCurrentLayout_perfOptimized()?.ColumnFilters;
|
|
11
|
-
const memoizedColumnFilters = this.currentColumnFilters_MEMO.get(layoutColumnFilters);
|
|
12
|
-
if (memoizedColumnFilters) {
|
|
13
|
-
return memoizedColumnFilters;
|
|
14
|
-
}
|
|
15
|
-
const columnFilters = this.adaptableApi.filterApi.columnFilterApi
|
|
16
|
-
.getActiveColumnFilters()
|
|
17
|
-
.filter((columnFilter) => this.adaptableApi.filterApi.columnFilterApi.isColumnFilterActive(columnFilter))
|
|
18
|
-
.filter((columnFilter) => columnFilter.ColumnId === this.colId)
|
|
19
|
-
.filter((columnFilter) => {
|
|
20
|
-
const shouldEvaluateFilterOnClient = this.adaptableApi.expressionApi.internalApi.shouldEvaluatePredicatesInAdaptableQL('ColumnFilter', columnFilter, columnFilter.Predicates);
|
|
21
|
-
return shouldEvaluateFilterOnClient;
|
|
22
|
-
});
|
|
23
|
-
this.currentColumnFilters_MEMO.set(layoutColumnFilters, columnFilters);
|
|
24
|
-
return columnFilters;
|
|
5
|
+
init(params) {
|
|
6
|
+
this.colId = params.column.getColId();
|
|
25
7
|
}
|
|
26
8
|
doesFilterPass(params) {
|
|
27
9
|
try {
|
|
@@ -31,12 +13,15 @@ export class AdaptableFilterHandler {
|
|
|
31
13
|
if (!isRowFilterable) {
|
|
32
14
|
return true;
|
|
33
15
|
}
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
return
|
|
38
|
-
}
|
|
39
|
-
|
|
16
|
+
const columnFilterModel = params.model;
|
|
17
|
+
if (!columnFilterModel) {
|
|
18
|
+
this.adaptableApi.logWarn(`AdaptableFilterHandler.doesFilterPass: No filter model found for column ${this.colId}`);
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
if (columnFilterModel.IsSuspended) {
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
return this.adaptableApi.filterApi.columnFilterApi.internalApi.evaluateColumnFilter(columnFilterModel, rowNode);
|
|
40
25
|
}
|
|
41
26
|
catch (ex) {
|
|
42
27
|
this.adaptableApi.consoleError(ex);
|
|
@@ -97,6 +82,5 @@ export class AdaptableFilterHandler {
|
|
|
97
82
|
destroy() {
|
|
98
83
|
this.filterDisplayValuesResult = undefined;
|
|
99
84
|
this.previousFilterDisplayValuesResult = undefined;
|
|
100
|
-
this.currentColumnFilters_MEMO = undefined;
|
|
101
85
|
}
|
|
102
86
|
}
|
|
@@ -16,7 +16,12 @@ export declare class AgGridColumnAdapter {
|
|
|
16
16
|
setColDefProperty<T extends keyof ColDef>(col: Column, propertyName: T, propertyGetter: (userPropertyValue: ColDef[T]) => ColDef[T] | undefined): void;
|
|
17
17
|
getUserColDefProperty<T extends keyof ColDef>(columnId: string, propertyName: T): ColDef[T] | undefined;
|
|
18
18
|
shouldSkipColumn(colId: string): boolean;
|
|
19
|
-
|
|
19
|
+
getAllAgGridColumns(): Column<any>[];
|
|
20
|
+
/**
|
|
21
|
+
* Setup all columns, or only those with the given Ids
|
|
22
|
+
* @param specificColumnIds - optional list of column Ids to setup. If not provided, all columns are setup
|
|
23
|
+
*/
|
|
24
|
+
setupColumns(specificColumnIds?: string[]): void;
|
|
20
25
|
private setupColumnValueGetter;
|
|
21
26
|
private setupColumnCellClass;
|
|
22
27
|
private setupColumnHeaderClass;
|
|
@@ -102,7 +102,7 @@ export class AgGridColumnAdapter {
|
|
|
102
102
|
!this.adaptableApi.columnApi.isAutoRowGroupColumn(colId) &&
|
|
103
103
|
!this.adaptableApi.columnApi.isSelectionColumn(colId));
|
|
104
104
|
}
|
|
105
|
-
|
|
105
|
+
getAllAgGridColumns() {
|
|
106
106
|
const pivotMode = this.adaptableInstance.isInPivotMode();
|
|
107
107
|
let cols = pivotMode
|
|
108
108
|
? // for pivot mode, we take only the initial columns
|
|
@@ -117,6 +117,17 @@ export class AgGridColumnAdapter {
|
|
|
117
117
|
.filter((column) => this.adaptableApi.columnApi.isAutoRowGroupColumn(column.getColId()));
|
|
118
118
|
cols = [...autoGroupColumns, ...cols, ...pivotResultColumns];
|
|
119
119
|
}
|
|
120
|
+
return cols;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Setup all columns, or only those with the given Ids
|
|
124
|
+
* @param specificColumnIds - optional list of column Ids to setup. If not provided, all columns are setup
|
|
125
|
+
*/
|
|
126
|
+
setupColumns(specificColumnIds) {
|
|
127
|
+
let cols = this.getAllAgGridColumns();
|
|
128
|
+
if (specificColumnIds?.length) {
|
|
129
|
+
cols = cols.filter((col) => specificColumnIds.includes(col.getColId()));
|
|
130
|
+
}
|
|
120
131
|
// this needs to be here, before the other setup below
|
|
121
132
|
// so the setup methods below reference the correct columns in adaptable store
|
|
122
133
|
cols.forEach((col) => {
|
|
@@ -132,6 +143,7 @@ export class AgGridColumnAdapter {
|
|
|
132
143
|
colId,
|
|
133
144
|
abColumn,
|
|
134
145
|
};
|
|
146
|
+
const isAutoRowGroupColumn = this.adaptableApi.columnApi.isAutoRowGroupColumn(colId);
|
|
135
147
|
this.setupColumnCellRenderer(colSetupInfo);
|
|
136
148
|
this.setupColumnCellStyle(colSetupInfo);
|
|
137
149
|
this.setupColumnCellClass(colSetupInfo);
|
|
@@ -139,8 +151,13 @@ export class AgGridColumnAdapter {
|
|
|
139
151
|
this.setupColumnHeaderClass(colSetupInfo);
|
|
140
152
|
this.setupColumnValueGetter(colSetupInfo);
|
|
141
153
|
this.setupColumnTooltipValueGetter(colSetupInfo);
|
|
142
|
-
|
|
143
|
-
|
|
154
|
+
if (!isAutoRowGroupColumn) {
|
|
155
|
+
// we do NOT setup filtering for auto row group columns
|
|
156
|
+
// this is done via gridOptions.autoGroupColumnDef
|
|
157
|
+
// see #autoGroupColumnDef
|
|
158
|
+
this.setupColumnFilter(colSetupInfo);
|
|
159
|
+
this.setupColumnFloatingFilter(colSetupInfo);
|
|
160
|
+
}
|
|
144
161
|
this.setupColumnValueFormatter(colSetupInfo);
|
|
145
162
|
this.setupColumnEditable(colSetupInfo);
|
|
146
163
|
this.setupColumnValueSetter(colSetupInfo);
|
|
@@ -455,8 +472,12 @@ export class AgGridColumnAdapter {
|
|
|
455
472
|
valueToLabelMap.set(option.value, option.label);
|
|
456
473
|
return option.value;
|
|
457
474
|
}));
|
|
475
|
+
const fetchSelectItems = (_params) => {
|
|
476
|
+
return values;
|
|
477
|
+
};
|
|
458
478
|
return {
|
|
459
|
-
|
|
479
|
+
// we need to pass a function which returns a Promise, that's what AG Grid expects
|
|
480
|
+
values: fetchSelectItems,
|
|
460
481
|
formatValue: (value) => valueToLabelMap.get(value) ?? value,
|
|
461
482
|
};
|
|
462
483
|
};
|
|
@@ -639,7 +660,7 @@ export class AgGridColumnAdapter {
|
|
|
639
660
|
}
|
|
640
661
|
return {
|
|
641
662
|
component: AgGridFilterAdapterFactory(this.adaptableInstance),
|
|
642
|
-
handler: () => new AdaptableFilterHandler(this.adaptableApi
|
|
663
|
+
handler: () => new AdaptableFilterHandler(this.adaptableApi),
|
|
643
664
|
};
|
|
644
665
|
});
|
|
645
666
|
}
|
|
@@ -36,7 +36,7 @@ export const AgGridFilterAdapterFactory = (adaptable) => {
|
|
|
36
36
|
if (column) {
|
|
37
37
|
this.unmountReactRoot = adaptable.renderReactRoot(renderWithAdaptableContext(React.createElement(AdaptableColumnFilter, {
|
|
38
38
|
columnId,
|
|
39
|
-
wrapperProps: {
|
|
39
|
+
wrapperProps: { className: 'twa:p-2' },
|
|
40
40
|
location: 'columnMenu',
|
|
41
41
|
}), adaptable), this.filterContainer);
|
|
42
42
|
}
|
|
@@ -57,26 +57,6 @@ export const AgGridFloatingFilterAdapterFactory = (adaptable) => {
|
|
|
57
57
|
headerCell.style.padding = 'var(--ab-space-1)';
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
|
-
if (adaptable.isAgGridInitialising) {
|
|
61
|
-
if (adaptable.variant === 'react') {
|
|
62
|
-
return () => React.createElement(React.Fragment, null);
|
|
63
|
-
}
|
|
64
|
-
return class FloatingFilterStub {
|
|
65
|
-
init(params) {
|
|
66
|
-
this.filterContainer = document.createElement('div');
|
|
67
|
-
}
|
|
68
|
-
getGui() {
|
|
69
|
-
return this.filterContainer;
|
|
70
|
-
}
|
|
71
|
-
destroy() {
|
|
72
|
-
this.unmountReactRoot?.();
|
|
73
|
-
this.filterContainer = null;
|
|
74
|
-
}
|
|
75
|
-
onParentModelChanged() {
|
|
76
|
-
// nothing yet
|
|
77
|
-
}
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
60
|
return class AgGridFloatingFilterAdapter {
|
|
81
61
|
init(params) {
|
|
82
62
|
const colId = params.column.getColId();
|
|
@@ -107,7 +87,7 @@ export const AgGridFloatingFilterAdapterFactory = (adaptable) => {
|
|
|
107
87
|
}
|
|
108
88
|
refresh(params) {
|
|
109
89
|
// always reuse the current instance
|
|
110
|
-
// the
|
|
90
|
+
// the filter is refreshed in the underlying React component
|
|
111
91
|
return true;
|
|
112
92
|
}
|
|
113
93
|
destroy() {
|
|
@@ -64,11 +64,7 @@ export const InternalAdaptableNumberEditor = React.forwardRef(function InternalA
|
|
|
64
64
|
React.createElement("input", { "data-name": "AdaptableNumberEditorInput", type: props.type ?? 'number', value: value, onKeyDown: preventDisallowedChars, onChange: React.useCallback((event) => {
|
|
65
65
|
setValue(event.target.value);
|
|
66
66
|
}, []), style: inputStyle, ref: inputRef }),
|
|
67
|
-
showClear ? (React.createElement("div", {
|
|
68
|
-
display: 'inline-block',
|
|
69
|
-
marginRight: 'var(--ab-space-1)',
|
|
70
|
-
marginLeft: 'var(--ab-space-1)',
|
|
71
|
-
}, onClick: (e) => {
|
|
67
|
+
showClear ? (React.createElement("div", { className: "twa:inline-block twa:mx-1", onClick: (e) => {
|
|
72
68
|
if (props.emptyValue != null) {
|
|
73
69
|
setValue(props.emptyValue);
|
|
74
70
|
e.stopPropagation();
|
|
@@ -57,11 +57,7 @@ export const InternalAdaptablePercentageEditor = React.forwardRef(function Inter
|
|
|
57
57
|
React.createElement(NumberInput, { type: props.type ?? 'number', className: "ab-PercentageEditor-Input", value: value, noArrows: true, autoFocus: true, onChange: React.useCallback((value) => {
|
|
58
58
|
setValue(value);
|
|
59
59
|
}, []), style: inputStyle, ref: inputRef }),
|
|
60
|
-
showClear ? (React.createElement("div", {
|
|
61
|
-
display: 'inline-block',
|
|
62
|
-
marginRight: 'var(--ab-space-1)',
|
|
63
|
-
marginLeft: 'var(--ab-space-1)',
|
|
64
|
-
}, onClick: (e) => {
|
|
60
|
+
showClear ? (React.createElement("div", { className: "twa:inline-block twa:mx-1", onClick: (e) => {
|
|
65
61
|
if (props.emptyValue != null) {
|
|
66
62
|
setValue(props.emptyValue);
|
|
67
63
|
e.stopPropagation();
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Box, Flex } from 'rebass';
|
|
3
2
|
import FormLayout, { FormRow } from '../FormLayout';
|
|
4
3
|
import Input from '../Input';
|
|
5
4
|
import SimpleButton from '../SimpleButton';
|
|
@@ -7,6 +6,8 @@ import AdaptableInput from '../../View/Components/AdaptableInput';
|
|
|
7
6
|
import { useMemo } from 'react';
|
|
8
7
|
import { useAdaptable } from '../../View/AdaptableContext';
|
|
9
8
|
import { Select } from '../Select';
|
|
9
|
+
import { Box, Flex } from '../Flex';
|
|
10
|
+
import { twMerge } from '../../twMerge';
|
|
10
11
|
export function AdaptableFormComponentButtons({ formDef, onClick, defaultTone, disabledButtons, api, context, focusFirstButton = true, }) {
|
|
11
12
|
return (React.createElement(React.Fragment, null, formDef.buttons.map((button, index) => {
|
|
12
13
|
const buttonIcon = api.internalApi.getIconForButton(button, context, {
|
|
@@ -28,7 +29,7 @@ export function AdaptableFormComponentButtons({ formDef, onClick, defaultTone, d
|
|
|
28
29
|
: {
|
|
29
30
|
...api.internalApi.buildBaseContext(),
|
|
30
31
|
});
|
|
31
|
-
return (React.createElement(SimpleButton, { autoFocus: focusFirstButton && index === 0, disabled: disabledButtons[index], key: index, tooltip: buttonTooltip, icon: buttonIcon, tone: buttonStyle?.tone ?? defaultTone, variant: buttonStyle?.variant, "data-text": buttonLabel, className:
|
|
32
|
+
return (React.createElement(SimpleButton, { autoFocus: focusFirstButton && index === 0, disabled: disabledButtons[index], key: index, tooltip: buttonTooltip, icon: buttonIcon, tone: buttonStyle?.tone ?? defaultTone, variant: buttonStyle?.variant, "data-text": buttonLabel, className: twMerge(index ? 'twa:ml-2' : '', buttonStyle?.className), onClick: () => {
|
|
32
33
|
onClick(button);
|
|
33
34
|
} }, buttonLabel));
|
|
34
35
|
})));
|
|
@@ -68,7 +69,7 @@ export function AdaptableFormComponent({ formDef, data, onChange, onButtonClick,
|
|
|
68
69
|
case 'text':
|
|
69
70
|
case 'number':
|
|
70
71
|
case 'date':
|
|
71
|
-
return (React.createElement(AdaptableInput, { type: field.fieldType,
|
|
72
|
+
return (React.createElement(AdaptableInput, { type: field.fieldType, className: "twa:w-full", name: field.name, value: value, onChange: onChange }));
|
|
72
73
|
case 'select':
|
|
73
74
|
let items = field.options.map((item) => ({
|
|
74
75
|
value: item.value,
|
|
@@ -81,7 +82,7 @@ export function AdaptableFormComponent({ formDef, data, onChange, onButtonClick,
|
|
|
81
82
|
setFieldValue(field.name, event.target.checked);
|
|
82
83
|
} }));
|
|
83
84
|
case 'textOutput':
|
|
84
|
-
return
|
|
85
|
+
return React.createElement(Box, { className: "twa:pl-2 twa:text-left" }, value);
|
|
85
86
|
default:
|
|
86
87
|
return React.createElement("div", null,
|
|
87
88
|
"Unknown field type: ",
|
|
@@ -91,8 +92,8 @@ export function AdaptableFormComponent({ formDef, data, onChange, onButtonClick,
|
|
|
91
92
|
// by default we have 2 columns: label & input
|
|
92
93
|
const columns = formDef.config?.columns ?? [1, 2];
|
|
93
94
|
return (React.createElement(React.Fragment, null,
|
|
94
|
-
displayTitle && formDef.title && (React.createElement(Box, { "data-name": "form-title",
|
|
95
|
-
formDef.description && (React.createElement(Box, { "data-name": "form-description",
|
|
95
|
+
displayTitle && formDef.title && (React.createElement(Box, { "data-name": "form-title", className: "twa:text-5 twa:mb-2 twa:font-bold" }, formDef.title)),
|
|
96
|
+
formDef.description && (React.createElement(Box, { "data-name": "form-description", className: "twa:mb-3" }, formDef.description)),
|
|
96
97
|
React.createElement(FormLayout, { onKeyDown: (event) => {
|
|
97
98
|
const target = event.target;
|
|
98
99
|
const targetName = target.name;
|
|
@@ -120,7 +121,7 @@ export function AdaptableFormComponent({ formDef, data, onChange, onButtonClick,
|
|
|
120
121
|
},
|
|
121
122
|
});
|
|
122
123
|
}
|
|
123
|
-
}, "data-name": "form-content", columns: columns,
|
|
124
|
+
}, "data-name": "form-content", columns: columns, className: "twa:pr-1 twa:overflow-auto" }, formDef.fields?.map((field, index) => {
|
|
124
125
|
if (Array.isArray(field)) {
|
|
125
126
|
const rowFields = {};
|
|
126
127
|
field.map((fieldItem, index) => {
|
|
@@ -136,6 +137,6 @@ export function AdaptableFormComponent({ formDef, data, onChange, onButtonClick,
|
|
|
136
137
|
renderField(field)));
|
|
137
138
|
}
|
|
138
139
|
})),
|
|
139
|
-
formDef.buttons ? (React.createElement(Flex, { "data-name": "form-buttons",
|
|
140
|
+
formDef.buttons ? (React.createElement(Flex, { "data-name": "form-buttons", className: "twa:mt-3", flexDirection: "row", alignItems: "center", justifyContent: "center" },
|
|
140
141
|
React.createElement(AdaptableFormComponentButtons, { focusFirstButton: focusFirstButton, onClick: onButtonClick, disabledButtons: disabledButtons, defaultTone: "success", formDef: formDef, api: api, context: context }))) : null));
|
|
141
142
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface CardProps {
|
|
3
|
+
children: React.ReactNode;
|
|
4
|
+
className?: string;
|
|
5
|
+
style?: React.CSSProperties;
|
|
6
|
+
shadow?: boolean;
|
|
7
|
+
gap?: 0 | 1 | 2 | 3 | 4 | 8;
|
|
8
|
+
}
|
|
9
|
+
export declare function Card(props: CardProps): React.JSX.Element;
|
|
10
|
+
export declare namespace Card {
|
|
11
|
+
var Title: (props: CardTitleProps) => React.JSX.Element;
|
|
12
|
+
var Body: (props: CardBodyProps) => React.JSX.Element;
|
|
13
|
+
}
|
|
14
|
+
interface CardTitleProps {
|
|
15
|
+
children: React.ReactNode;
|
|
16
|
+
className?: string;
|
|
17
|
+
gap?: CardProps['gap'];
|
|
18
|
+
border?: boolean;
|
|
19
|
+
}
|
|
20
|
+
interface CardBodyProps {
|
|
21
|
+
children: React.ReactNode;
|
|
22
|
+
gap?: CardProps['gap'];
|
|
23
|
+
className?: string;
|
|
24
|
+
}
|
|
25
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { twMerge } from '../../twMerge';
|
|
3
|
+
import clsx from 'clsx';
|
|
4
|
+
import { Box } from '../Flex';
|
|
5
|
+
export function Card(props) {
|
|
6
|
+
const { shadow = true, children, className, style, gap = 2 } = props;
|
|
7
|
+
return (React.createElement(Box, { className: clsx('twa:bg-defaultbackground twa:text-text-on-defaultbackground', 'ab-Card', 'twa:text-3', 'twa:rounded-standard twa:p-2', 'twa:flex twa:flex-col', {
|
|
8
|
+
'twa:shadow-sm': shadow,
|
|
9
|
+
'twa:gap-0': gap === 0,
|
|
10
|
+
'twa:gap-1': gap === 1,
|
|
11
|
+
'twa:gap-2': gap === 2,
|
|
12
|
+
'twa:gap-3': gap === 3,
|
|
13
|
+
'twa:gap-4': gap === 4,
|
|
14
|
+
'twa:gap-8': gap === 8,
|
|
15
|
+
}, className), style: style }, children));
|
|
16
|
+
}
|
|
17
|
+
const CardTitle = (props) => {
|
|
18
|
+
const { children, className, gap = 2, border = true } = props;
|
|
19
|
+
return (React.createElement("div", { className: twMerge(clsx('ab-Card__title', {
|
|
20
|
+
'twa:flex twa:flex-row': true,
|
|
21
|
+
'twa:items-center': true,
|
|
22
|
+
'twa:text-4 twa:px-2': true,
|
|
23
|
+
'twa:pb-2 twa:border-b': border,
|
|
24
|
+
'twa:border-b-text-on-defaultbackground/20': true,
|
|
25
|
+
'twa:gap-0': gap === 0,
|
|
26
|
+
'twa:gap-1': gap === 1,
|
|
27
|
+
'twa:gap-2': gap === 2,
|
|
28
|
+
'twa:gap-3': gap === 3,
|
|
29
|
+
'twa:gap-4': gap === 4,
|
|
30
|
+
'twa:gap-8': gap === 8,
|
|
31
|
+
}, className)) }, children));
|
|
32
|
+
};
|
|
33
|
+
const CardBody = (props) => {
|
|
34
|
+
const { children, gap, className } = props;
|
|
35
|
+
return (React.createElement("div", { className: clsx('ab-Card__body', 'twa:overflow-auto twa:min-h-0', 'twa:flex-1 twa:flex twa:flex-col', {
|
|
36
|
+
'twa:gap-0': gap === 0,
|
|
37
|
+
'twa:gap-1': gap === 1,
|
|
38
|
+
'twa:gap-2': gap === 2,
|
|
39
|
+
'twa:gap-3': gap === 3,
|
|
40
|
+
'twa:gap-4': gap === 4,
|
|
41
|
+
'twa:gap-8': gap === 8,
|
|
42
|
+
}, className) }, children));
|
|
43
|
+
};
|
|
44
|
+
Card.Title = CardTitle;
|
|
45
|
+
Card.Body = CardBody;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { ReactNode, SyntheticEvent } from 'react';
|
|
3
|
-
import { FlexProps } from '
|
|
4
|
-
import { ContainerProps } from '../ContainerProps';
|
|
3
|
+
import { FlexProps } from '../Flex';
|
|
5
4
|
type TypeProps = {
|
|
6
5
|
checked?: boolean | null;
|
|
7
6
|
disabled?: boolean;
|
|
@@ -15,10 +14,10 @@ type TypeProps = {
|
|
|
15
14
|
gapDistance?: number | string;
|
|
16
15
|
childrenPosition?: 'start' | 'end';
|
|
17
16
|
};
|
|
18
|
-
export interface CheckBoxProps extends TypeProps, Omit<
|
|
17
|
+
export interface CheckBoxProps extends TypeProps, Omit<React.HTMLProps<HTMLDivElement>, keyof TypeProps | 'ref'> {
|
|
19
18
|
}
|
|
20
19
|
declare const CheckBox: ({ children, checked, onChange, value, name, disabled, readOnly, variant, gapDistance, childrenPosition, as, ...props }: CheckBoxProps) => React.JSX.Element;
|
|
21
20
|
export declare const CheckBoxGroup: (props: FlexProps & {
|
|
22
|
-
orientation:
|
|
21
|
+
orientation: "horizontal" | "vertical";
|
|
23
22
|
}) => React.JSX.Element;
|
|
24
23
|
export { CheckBox };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { useRef, useState } from 'react';
|
|
3
|
-
import { Box, Flex } from '
|
|
4
|
-
import
|
|
3
|
+
import { Box, Flex } from '../Flex';
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
const Square = (props) => {
|
|
6
6
|
return React.createElement("div", { className: `ab-CheckBox__square ab-CheckBox__square--${props.type}` });
|
|
7
7
|
};
|
|
@@ -41,12 +41,10 @@ const CheckBox = ({ children, checked, onChange, value, name, disabled, readOnly
|
|
|
41
41
|
React.useEffect(() => {
|
|
42
42
|
checkboxRef.current.indeterminate = indeterminate;
|
|
43
43
|
}, [indeterminate]);
|
|
44
|
-
let input = (React.createElement("input", { className: `ab-CheckBox-input
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
}, onChange: onInputChange }));
|
|
49
|
-
return (React.createElement(Box, { my: 2, ...props, className: join('ab-CheckBox', `ab-CheckBox--${type}`, `ab-CheckBox--variant-${variant}`, disabled ? 'ab-CheckBox--disabled' : '', readOnly ? 'ab-CheckBox--readonly' : '', props.className), style: props.style, as: as },
|
|
44
|
+
let input = (React.createElement("input", { className: clsx(`ab-CheckBox-input twa:align-middle twa:opacity-0`, {
|
|
45
|
+
'twa:cursor-pointer': !readOnly && !disabled,
|
|
46
|
+
}), ref: checkboxRef, disabled: disabled, readOnly: readOnly, checked: !!computedChecked, type: "checkbox", name: name, value: value, onChange: onInputChange }));
|
|
47
|
+
return (React.createElement(Box, { ...props, className: clsx('twa:my-2', 'ab-CheckBox', `ab-CheckBox--${type}`, `ab-CheckBox--variant-${variant}`, disabled ? 'ab-CheckBox--disabled' : '', readOnly ? 'ab-CheckBox--readonly' : '', props.className), style: props.style, as: as },
|
|
50
48
|
before,
|
|
51
49
|
beforeGap,
|
|
52
50
|
input,
|
|
@@ -56,6 +54,6 @@ const CheckBox = ({ children, checked, onChange, value, name, disabled, readOnly
|
|
|
56
54
|
};
|
|
57
55
|
export const CheckBoxGroup = (props) => {
|
|
58
56
|
const { orientation, ...flexProps } = props;
|
|
59
|
-
return (React.createElement(Flex, { className:
|
|
57
|
+
return (React.createElement(Flex, { className: `ab-CheckBoxGroup ${orientation === 'horizontal' ? 'twa:items-center' : 'twa:items-start'}`, flexDirection: orientation == 'horizontal' ? 'row' : 'column', ...flexProps }));
|
|
60
58
|
};
|
|
61
59
|
export { CheckBox };
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { BoxProps } from '
|
|
2
|
+
import { BoxProps } from '../Flex';
|
|
3
3
|
export declare const baseClassName = "ab-CodeBlock";
|
|
4
|
-
export declare const CodeBlock: (props: BoxProps
|
|
4
|
+
export declare const CodeBlock: (props: BoxProps & {
|
|
5
|
+
className?: string;
|
|
6
|
+
style?: React.CSSProperties;
|
|
7
|
+
children?: React.ReactNode;
|
|
8
|
+
}) => React.JSX.Element;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Box } from '
|
|
3
|
-
import
|
|
2
|
+
import { Box } from '../Flex';
|
|
3
|
+
import clsx from 'clsx';
|
|
4
4
|
export const baseClassName = 'ab-CodeBlock';
|
|
5
5
|
export const CodeBlock = (props) => {
|
|
6
|
-
return React.createElement(Box, { as: "code", ...props, className:
|
|
6
|
+
return (React.createElement(Box, { as: "code", ...props, className: clsx('twa:p-1 twa:rounded-standard twa:bg-primary twa:text-primary-foreground', baseClassName, props.className) }));
|
|
7
7
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { HTMLProps } from 'react';
|
|
3
|
-
import { BoxProps } from 'rebass';
|
|
4
3
|
import { AdaptableApi } from '../../Api/AdaptableApi';
|
|
4
|
+
import { BoxProps } from '../Flex';
|
|
5
5
|
export type ColorPickerProps = Omit<HTMLProps<HTMLInputElement>, 'onChange'> & {
|
|
6
6
|
api: AdaptableApi;
|
|
7
7
|
onChange: (color: string) => void;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { useCallback, useEffect } from 'react';
|
|
3
|
-
import { Box, Flex } from 'rebass';
|
|
4
3
|
import debounce from 'lodash/debounce';
|
|
5
4
|
import Input from '../Input';
|
|
6
5
|
import { getVariableColor } from '../../Utilities/Helpers/StyleHelper';
|
|
7
6
|
import tinycolor from 'tinycolor2';
|
|
7
|
+
import { Box, Flex } from '../Flex';
|
|
8
|
+
import { twMerge } from '../../twMerge';
|
|
9
|
+
import clsx from 'clsx';
|
|
8
10
|
export const ColorPicker = React.forwardRef((props, ref) => {
|
|
9
11
|
const ColorPalette = props.api.userInterfaceApi.getColorPalette();
|
|
10
12
|
let { api, value, includeAlpha = true, ...restProps } = props;
|
|
@@ -34,20 +36,19 @@ export const ColorPicker = React.forwardRef((props, ref) => {
|
|
|
34
36
|
}, [value]);
|
|
35
37
|
const rangeBackround = `linear-gradient(90deg, ${preparedAlphaColor[0]} 0%, ${preparedAlphaColor[1]} 100%)`;
|
|
36
38
|
const alpha = tinycolor(value).getAlpha();
|
|
37
|
-
return (React.createElement(Flex, { className: 'ColorPicker'
|
|
38
|
-
|
|
39
|
+
return (React.createElement(Flex, { className: clsx('ColorPicker twa:items-center twa:gap-2', {
|
|
40
|
+
'twa:opacity-30': props.disabled,
|
|
41
|
+
}, props.className) },
|
|
42
|
+
React.createElement(Input, { ...restProps, disabled: props.disabled, className: twMerge('twa:w-[70px] twa:p-0', restProps.className), onChange: (event) => {
|
|
39
43
|
/**
|
|
40
44
|
* The value is not in the map when the color is not in the palette.
|
|
41
45
|
*/
|
|
42
46
|
const color = optionsMap[event.target.value] ?? event.target.value;
|
|
43
47
|
debouncedOnChange(color);
|
|
44
|
-
}, value: preparedValue, ref: ref, type: "color",
|
|
45
|
-
width: 70,
|
|
46
|
-
padding: 0 /* we need this to be 0, since otherwise on Windows browsers, the chosen color cannot be seen */,
|
|
47
|
-
}, list: "ABcolorChoices", title: props.title }),
|
|
48
|
+
}, value: preparedValue, ref: ref, type: "color", list: "ABcolorChoices", title: props.title }),
|
|
48
49
|
ABcolorChoices,
|
|
49
|
-
includeAlpha && (React.createElement(Flex, { alignItems: "center" },
|
|
50
|
-
React.createElement(Box,
|
|
50
|
+
includeAlpha && (React.createElement(Flex, { alignItems: "center", className: "twa:gap-1" },
|
|
51
|
+
React.createElement(Box, null, "Opacity"),
|
|
51
52
|
React.createElement(Input, { disabled: props.disabled, className: "ab-ColorPicker-range", style: { background: rangeBackround }, value: alpha, onChange: (event) => {
|
|
52
53
|
const color = tinycolor(value).setAlpha(event.target.value).toRgbString();
|
|
53
54
|
debouncedOnChange(color);
|
|
@@ -42,7 +42,7 @@ export function Dashboard(props) {
|
|
|
42
42
|
return null;
|
|
43
43
|
}
|
|
44
44
|
const activeTabTitle = children?.[activeTabIndex]?.props?.title ?? 'Select Toolbar';
|
|
45
|
-
return (React.createElement(DropdownButton, {
|
|
45
|
+
return (React.createElement(DropdownButton, { className: "twa:ml-1", columns: ['label'], items: React.Children.map(children, (child, index) => ({
|
|
46
46
|
value: String(index),
|
|
47
47
|
label: child.props.title,
|
|
48
48
|
onClick: () => setActiveTabIndex(index),
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import SimpleButton from '../SimpleButton';
|
|
3
3
|
import join from '../utils/join';
|
|
4
|
-
import { Flex } from '
|
|
4
|
+
import { Flex } from '../Flex';
|
|
5
5
|
export function DashboardToolbar(props) {
|
|
6
6
|
return (React.createElement("div", { className: join('ab-Dashboard__toolbar', props.className) },
|
|
7
7
|
React.createElement("div", { className: "ab-Dashboard__toolbar-content" }, props.children),
|
|
8
|
-
React.createElement(Flex, { className: "ab-Dashboard__toolbar-title
|
|
9
|
-
React.createElement("span",
|
|
10
|
-
props.showConfigure && (React.createElement(SimpleButton, { "aria-label": `Configure ${props.title}`, icon: "spanner", variant: "text", tone: "none", "data-name": "configure", iconSize: 16,
|
|
11
|
-
' ',
|
|
12
|
-
props.showClose && (React.createElement(SimpleButton, { "aria-label": `Close ${props.title}`, style: { alignSelf: 'flex-end' }, disabled: props.accessLevel == 'ReadOnly', "data-name": "close", icon: "close", variant: "text", tone: "none", iconSize: 16, marginLeft: 1, tooltip: props.tooltip || `Close ${props.title} Toolbar`, onClick: () => props.onClose() })))));
|
|
8
|
+
React.createElement(Flex, { className: "ab-Dashboard__toolbar-title twa:items-center twa:justify-center twa:px-2 twa:pb-1 twa:opacity-70", flexDirection: "row" },
|
|
9
|
+
React.createElement("span", { className: "twa:text-2" }, props.title),
|
|
10
|
+
props.showConfigure && (React.createElement(SimpleButton, { "aria-label": `Configure ${props.title}`, icon: "spanner", variant: "text", tone: "none", "data-name": "configure", iconSize: 16, className: "twa:ml-1", tooltip: props.tooltip || `Configure ${props.title}`, onClick: () => props.onConfigure() })),
|
|
11
|
+
props.showClose && (React.createElement(SimpleButton, { "aria-label": `Close ${props.title}`, style: { alignSelf: 'flex-end' }, disabled: props.accessLevel == 'ReadOnly', "data-name": "close", icon: "close", variant: "text", tone: "none", iconSize: 16, className: "twa:ml-1", tooltip: props.tooltip || `Close ${props.title} Toolbar`, onClick: () => props.onClose() })))));
|
|
13
12
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { BoxProps } from 'rebass';
|
|
3
2
|
import { DatepickerButton } from '../../AdaptableOptions/DateInputOptions';
|
|
4
3
|
import { Locale } from 'date-fns';
|
|
5
|
-
|
|
4
|
+
import { InputProps } from '../Input';
|
|
5
|
+
export type DatepickerProps = Omit<InputProps, 'value' | 'onChange' | 'defaultValue'> & {
|
|
6
6
|
value: Date | undefined;
|
|
7
7
|
defaultValue?: Date | undefined;
|
|
8
8
|
autoFocus?: boolean;
|
|
@@ -4,13 +4,14 @@ import { useCallback, useEffect, useRef, useState } from 'react';
|
|
|
4
4
|
import useProperty from '../utils/useProperty';
|
|
5
5
|
import FieldWrap from '../FieldWrap';
|
|
6
6
|
import SimpleButton from '../SimpleButton';
|
|
7
|
-
import { Flex } from 'rebass';
|
|
8
7
|
import { DateFormatter } from '../../Utilities/Helpers/FormatHelper';
|
|
9
8
|
import { useDatepickerContext } from './DatepickerContext';
|
|
10
9
|
import { DayPicker } from 'react-day-picker';
|
|
11
10
|
import { AdaptableDateInlineInput } from '../../View/Components/AdaptableInput/AdaptableDateInlineInput';
|
|
12
11
|
import { isValid, addYears, endOfYear, startOfYear, addDays, addBusinessDays, } from 'date-fns';
|
|
13
12
|
import { Select } from '../Select';
|
|
13
|
+
import { Flex } from '../Flex';
|
|
14
|
+
import clsx from 'clsx';
|
|
14
15
|
const onDatePickerDropdownKeyDown = (e) => {
|
|
15
16
|
if (e.key === 'Escape' || e.key === 'Enter') {
|
|
16
17
|
e.stopPropagation();
|
|
@@ -61,7 +62,7 @@ const DatepickerOverlay = ({ onHide, children, onKeyDown, onMouseDown, overlayDO
|
|
|
61
62
|
const END_MONTH = endOfYear(addYears(new Date(), 10));
|
|
62
63
|
const START_MONTH = startOfYear(addYears(new Date(), -50));
|
|
63
64
|
export const Datepicker = React.forwardRef((props, ref) => {
|
|
64
|
-
const { dateProps, required, disabled, style, placeholder, showWeekNumber, showOutsideDays, value: _, defaultValue: __, onChange: ___, datepickerButtons, showClearButton, autoFocus, ...boxProps } = props;
|
|
65
|
+
const { dateProps, required, disabled, style, className, placeholder, showWeekNumber, showOutsideDays, value: _, defaultValue: __, onChange: ___, datepickerButtons, showClearButton, autoFocus, ...boxProps } = props;
|
|
65
66
|
const datepickerContext = useDatepickerContext();
|
|
66
67
|
let [value, setValue] = useProperty(props, 'value', undefined, {
|
|
67
68
|
onChange: props.onChange,
|
|
@@ -91,7 +92,7 @@ export const Datepicker = React.forwardRef((props, ref) => {
|
|
|
91
92
|
const clearValue = () => {
|
|
92
93
|
updateValue(undefined);
|
|
93
94
|
};
|
|
94
|
-
const renderButton = (label, onClick) => (React.createElement(SimpleButton, { onClick: onClick,
|
|
95
|
+
const renderButton = (label, onClick) => (React.createElement(SimpleButton, { onClick: onClick, className: "twa:m-[2px]" }, label));
|
|
95
96
|
const todayDate = new Date();
|
|
96
97
|
const footerButtonsMap = {
|
|
97
98
|
clear: renderButton('Clear', () => clearValue()),
|
|
@@ -105,11 +106,11 @@ export const Datepicker = React.forwardRef((props, ref) => {
|
|
|
105
106
|
'|': React.createElement("hr", { style: { width: '100%', height: 0, margin: 0, border: 'none' } }),
|
|
106
107
|
};
|
|
107
108
|
const footerButtons = datepickerButtons.map((buttonKey, index) => React.cloneElement(footerButtonsMap[buttonKey], { key: index }));
|
|
108
|
-
const clearButton = showClearButton !== false ? (React.createElement(SimpleButton, { "data-name": "clear", variant: "text", tooltip: "Clear", iconSize: 20,
|
|
109
|
+
const clearButton = showClearButton !== false ? (React.createElement(SimpleButton, { "data-name": "clear", variant: "text", tooltip: "Clear", iconSize: 20, className: "twa:p-0", icon: "close", onMouseDown: (e) => {
|
|
109
110
|
e.preventDefault();
|
|
110
111
|
clearValue();
|
|
111
112
|
}, accessLevel: 'Full' })) : null;
|
|
112
|
-
const calendarButton = (React.createElement(SimpleButton, { disabled: disabled, variant: "text", icon: "calendar", tooltip: "Date", iconSize: 20,
|
|
113
|
+
const calendarButton = (React.createElement(SimpleButton, { disabled: disabled, variant: "text", icon: "calendar", tooltip: "Date", iconSize: 20, className: "twa:p-0", onClick: () => setVisible(true) }));
|
|
113
114
|
const overlayDOMRef = useRef(null);
|
|
114
115
|
return (React.createElement(Flex, null,
|
|
115
116
|
React.createElement(OverlayTrigger, { visible: visible, render: () => (React.createElement(DatepickerOverlay, { overlayDOMRef: overlayDOMRef, onMouseDown: props.onMouseDown, onHide: () => setVisible(false), onKeyDown: (e) => {
|
|
@@ -117,13 +118,13 @@ export const Datepicker = React.forwardRef((props, ref) => {
|
|
|
117
118
|
setVisible(false, e.key);
|
|
118
119
|
}
|
|
119
120
|
} },
|
|
120
|
-
React.createElement(DayPicker, { fixedWeeks: true, autoFocus: autoFocus ?? true, showWeekNumber: showWeekNumber, showOutsideDays: showOutsideDays, mode: "single", captionLayout: "dropdown", month: isNaN(+month) ? new Date() : month, selected: value, onMonthChange: setMonth, onSelect: updateValue, startMonth: START_MONTH, endMonth: END_MONTH, components: DatePickerComponents, footer: React.createElement(Flex, { justifyContent: "space-between",
|
|
121
|
+
React.createElement(DayPicker, { fixedWeeks: true, autoFocus: autoFocus ?? true, showWeekNumber: showWeekNumber, showOutsideDays: showOutsideDays, mode: "single", captionLayout: "dropdown", month: isNaN(+month) ? new Date() : month, selected: value, onMonthChange: setMonth, onSelect: updateValue, startMonth: START_MONTH, endMonth: END_MONTH, components: DatePickerComponents, footer: React.createElement(Flex, { justifyContent: "space-between", className: "twa:mt-2", flexWrap: 'wrap' }, footerButtons) }))) },
|
|
121
122
|
React.createElement(FieldWrap, { ...boxProps, style: {
|
|
122
123
|
borderRadius: style?.borderRadius,
|
|
123
124
|
width: style?.width,
|
|
124
125
|
maxWidth: style?.maxWidth,
|
|
125
126
|
border: style?.border,
|
|
126
|
-
}, className:
|
|
127
|
+
}, className: clsx('ab-Datepicker twa:min-h-input', className), onFocus: () => {
|
|
127
128
|
if (!visible) {
|
|
128
129
|
setVisible(true);
|
|
129
130
|
}
|
|
@@ -143,7 +144,7 @@ export const Datepicker = React.forwardRef((props, ref) => {
|
|
|
143
144
|
if (isValid(date)) {
|
|
144
145
|
updateValue(date);
|
|
145
146
|
}
|
|
146
|
-
}, style: style, disabled: disabled }),
|
|
147
|
+
}, className: className?.includes('twa:w-full') ? 'twa:w-full' : '', style: style, disabled: disabled }),
|
|
147
148
|
!!inputValue ? clearButton : null,
|
|
148
149
|
calendarButton))));
|
|
149
150
|
});
|