@adaptabletools/adaptable-cjs 18.0.0-canary.2 → 18.0.0-canary.21
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/agGrid.d.ts +4 -21
- package/agGrid.js +5 -21
- package/base.css +22 -8
- package/base.css.map +1 -1
- package/index.css +101 -75
- package/index.css.map +1 -1
- package/package.json +4 -5
- package/src/AdaptableInterfaces/IAdaptable.d.ts +59 -108
- package/src/AdaptableOptions/AdaptableOptions.d.ts +7 -7
- package/src/AdaptableOptions/ColumnFilterOptions.d.ts +11 -4
- package/src/AdaptableOptions/ColumnOptions.d.ts +9 -4
- package/src/AdaptableOptions/CommentOptions.d.ts +33 -0
- package/src/AdaptableOptions/GroupingOptions.d.ts +0 -7
- package/src/AdaptableOptions/MenuOptions.d.ts +6 -54
- package/src/AdaptableOptions/MenuOptions.js +72 -75
- package/src/AdaptableOptions/{NotesOptions.d.ts → NoteOptions.d.ts} +7 -4
- package/src/AdaptableOptions/StateOptions.d.ts +6 -0
- package/src/AdaptableOptions/UserInterfaceOptions.d.ts +17 -0
- package/src/Api/AdaptableApi.d.ts +9 -4
- package/src/Api/BulkUpdateApi.d.ts +0 -5
- package/src/Api/ColumnApi.d.ts +4 -0
- package/src/Api/CommentApi.d.ts +13 -14
- package/src/Api/ConfigApi.d.ts +4 -5
- package/src/Api/EventApi.d.ts +7 -9
- package/src/Api/Events/AdaptableReady.d.ts +3 -3
- package/src/Api/Events/CommentChanged.d.ts +11 -0
- package/src/Api/Events/GridDataChanged.d.ts +4 -4
- package/src/Api/GridApi.d.ts +23 -13
- package/src/Api/Implementation/ActionColumnApiImpl.d.ts +2 -0
- package/src/Api/Implementation/ActionColumnApiImpl.js +30 -0
- package/src/Api/Implementation/AdaptableApiImpl.d.ts +3 -2
- package/src/Api/Implementation/AdaptableApiImpl.js +5 -2
- package/src/Api/Implementation/ApiBase.d.ts +5 -3
- package/src/Api/Implementation/ApiBase.js +8 -2
- package/src/Api/Implementation/BulkUpdateApiImpl.d.ts +0 -1
- package/src/Api/Implementation/BulkUpdateApiImpl.js +0 -4
- package/src/Api/Implementation/CellSummaryApiImpl.d.ts +0 -5
- package/src/Api/Implementation/CellSummaryApiImpl.js +2 -23
- package/src/Api/Implementation/ColumnApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ColumnApiImpl.js +10 -0
- package/src/Api/Implementation/CommentsApiImpl.d.ts +5 -2
- package/src/Api/Implementation/CommentsApiImpl.js +7 -1
- package/src/Api/Implementation/ConfigApiImpl.d.ts +2 -2
- package/src/Api/Implementation/ConfigApiImpl.js +24 -13
- package/src/Api/Implementation/GridApiImpl.d.ts +6 -3
- package/src/Api/Implementation/GridApiImpl.js +51 -14
- package/src/Api/Implementation/LayoutApiImpl.d.ts +3 -0
- package/src/Api/Implementation/LayoutApiImpl.js +18 -0
- package/src/Api/Implementation/NoteApiImpl.d.ts +18 -0
- package/src/Api/Implementation/NoteApiImpl.js +45 -0
- package/src/Api/Implementation/OptionsApiImpl.d.ts +4 -4
- package/src/Api/Implementation/OptionsApiImpl.js +4 -4
- package/src/Api/Implementation/ScopeApiImpl.d.ts +2 -0
- package/src/Api/Implementation/ScopeApiImpl.js +20 -7
- package/src/Api/Implementation/StatusBarApiImpl.d.ts +0 -1
- package/src/Api/Implementation/StatusBarApiImpl.js +0 -3
- package/src/Api/Implementation/ToolPanelApiImpl.js +6 -6
- package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +0 -3
- package/src/Api/Implementation/UserInterfaceApiImpl.js +0 -8
- package/src/Api/Internal/ActionRowInternalApi.d.ts +6 -1
- package/src/Api/Internal/ActionRowInternalApi.js +119 -1
- package/src/Api/Internal/AdaptableInternalApi.d.ts +6 -7
- package/src/Api/Internal/AdaptableInternalApi.js +21 -19
- package/src/Api/Internal/CalculatedColumnInternalApi.d.ts +2 -0
- package/src/Api/Internal/CalculatedColumnInternalApi.js +72 -0
- package/src/Api/Internal/ColumnFilterInternalApi.d.ts +2 -0
- package/src/Api/Internal/ColumnFilterInternalApi.js +23 -1
- package/src/Api/Internal/ColumnInternalApi.d.ts +4 -1
- package/src/Api/Internal/ColumnInternalApi.js +12 -0
- package/src/Api/Internal/CommentsInternalApi.d.ts +4 -0
- package/src/Api/Internal/CommentsInternalApi.js +18 -0
- package/src/Api/Internal/CustomSortInternalApi.d.ts +3 -2
- package/src/Api/Internal/CustomSortInternalApi.js +32 -1
- package/src/Api/Internal/DataSetInternalApi.js +1 -1
- package/src/Api/Internal/ExportInternalApi.d.ts +2 -1
- package/src/Api/Internal/ExportInternalApi.js +4 -1
- package/src/Api/Internal/Fdc3InternalApi.js +2 -2
- package/src/Api/Internal/FormatColumnInternalApi.js +3 -2
- package/src/Api/Internal/FreeTextColumnInternalApi.d.ts +2 -0
- package/src/Api/Internal/FreeTextColumnInternalApi.js +61 -0
- package/src/Api/Internal/GridFilterInternalApi.d.ts +5 -0
- package/src/Api/Internal/GridFilterInternalApi.js +7 -1
- package/src/Api/Internal/GridInternalApi.d.ts +23 -3
- package/src/Api/Internal/GridInternalApi.js +141 -7
- package/src/Api/Internal/LayoutInternalApi.d.ts +1 -0
- package/src/Api/Internal/LayoutInternalApi.js +16 -0
- package/src/Api/Internal/NoteInternalApi.d.ts +4 -0
- package/src/Api/Internal/NoteInternalApi.js +18 -0
- package/src/Api/Internal/TeamSharingInternalApi.js +1 -1
- package/src/Api/InteropioPluginApi.d.ts +2 -2
- package/src/Api/LayoutApi.d.ts +15 -0
- package/src/Api/NoteApi.d.ts +48 -0
- package/src/Api/OptionsApi.d.ts +8 -8
- package/src/Api/ScopeApi.d.ts +10 -0
- package/src/Api/UserInterfaceApi.d.ts +0 -11
- package/src/EnvVars.d.ts +3 -0
- package/src/EnvVars.js +8 -0
- package/src/PredefinedConfig/AdaptableState.d.ts +2 -2
- package/src/PredefinedConfig/CommentState.d.ts +27 -23
- package/src/PredefinedConfig/Common/AdaptableColumn.d.ts +4 -0
- package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +1 -1
- package/src/PredefinedConfig/Common/AdaptableScope.d.ts +4 -1
- package/src/PredefinedConfig/Common/AggregationColumns.d.ts +1 -0
- package/src/PredefinedConfig/Common/AggregationColumns.js +5 -1
- package/src/PredefinedConfig/Common/DataUpdateConfig.d.ts +4 -0
- package/src/PredefinedConfig/Common/Enums.d.ts +2 -1
- package/src/PredefinedConfig/Common/Enums.js +1 -0
- package/src/PredefinedConfig/Common/Menu.d.ts +15 -1
- package/src/PredefinedConfig/Common/Menu.js +98 -0
- package/src/PredefinedConfig/Common/RowSummary.d.ts +21 -0
- package/src/PredefinedConfig/Common/RowSummary.js +20 -0
- package/src/PredefinedConfig/Common/TransposeConfig.d.ts +30 -0
- package/src/PredefinedConfig/Common/Types.d.ts +4 -4
- package/src/PredefinedConfig/Common/Types.js +4 -1
- package/src/PredefinedConfig/LayoutState.d.ts +5 -0
- package/src/PredefinedConfig/{NotesState.d.ts → NoteState.d.ts} +12 -22
- package/src/PredefinedConfig/PredefinedConfig.d.ts +3 -3
- package/src/PredefinedConfig/Selection/GridCell.d.ts +13 -0
- package/src/PredefinedConfig/SystemState.d.ts +9 -3
- package/src/Redux/ActionsReducers/LayoutRedux.d.ts +9 -0
- package/src/Redux/ActionsReducers/LayoutRedux.js +34 -11
- package/src/Redux/ActionsReducers/NoteRedux.d.ts +38 -0
- package/src/Redux/ActionsReducers/NoteRedux.js +89 -0
- package/src/Redux/ActionsReducers/SystemRedux.d.ts +6 -1
- package/src/Redux/ActionsReducers/SystemRedux.js +19 -6
- package/src/Redux/Store/AdaptableStore.d.ts +4 -6
- package/src/Redux/Store/AdaptableStore.js +66 -76
- package/src/Redux/Store/Interface/IAdaptableStore.d.ts +8 -2
- package/src/Strategy/AdaptableModuleBase.d.ts +8 -8
- package/src/Strategy/AdaptableModuleBase.js +13 -15
- package/src/Strategy/AlertModule.d.ts +1 -2
- package/src/Strategy/AlertModule.js +3 -56
- package/src/Strategy/BulkUpdateModule.js +1 -1
- package/src/Strategy/CalculatedColumnModule.d.ts +2 -3
- package/src/Strategy/CalculatedColumnModule.js +6 -26
- package/src/Strategy/CellSummaryModule.d.ts +8 -6
- package/src/Strategy/CellSummaryModule.js +78 -23
- package/src/Strategy/ChartingModule.d.ts +0 -1
- package/src/Strategy/ChartingModule.js +2 -22
- package/src/Strategy/ColumnFilterModule.d.ts +2 -3
- package/src/Strategy/ColumnFilterModule.js +44 -103
- package/src/Strategy/ColumnInfoModule.js +2 -0
- package/src/Strategy/{CommentsModule.d.ts → CommentModule.d.ts} +2 -5
- package/src/Strategy/{CommentsModule.js → CommentModule.js} +19 -25
- package/src/Strategy/CustomSortModule.js +3 -2
- package/src/Strategy/DashboardModule.d.ts +1 -2
- package/src/Strategy/DashboardModule.js +9 -15
- package/src/Strategy/DataChangeHistoryModule.d.ts +1 -0
- package/src/Strategy/DataChangeHistoryModule.js +3 -1
- package/src/Strategy/DataImportModule.d.ts +1 -1
- package/src/Strategy/DataImportModule.js +5 -5
- package/src/Strategy/DataSetModule.d.ts +1 -1
- package/src/Strategy/DataSetModule.js +1 -1
- package/src/Strategy/ExportModule.d.ts +1 -0
- package/src/Strategy/ExportModule.js +17 -2
- package/src/Strategy/Fdc3Module.js +3 -0
- package/src/Strategy/FlashingCellModule.d.ts +1 -2
- package/src/Strategy/FlashingCellModule.js +6 -19
- package/src/Strategy/FormatColumnModule.d.ts +0 -2
- package/src/Strategy/FormatColumnModule.js +6 -51
- package/src/Strategy/FreeTextColumnModule.d.ts +0 -1
- package/src/Strategy/FreeTextColumnModule.js +1 -31
- package/src/Strategy/GridFilterModule.d.ts +0 -1
- package/src/Strategy/GridFilterModule.js +0 -37
- package/src/Strategy/GridInfoModule.js +2 -0
- package/src/Strategy/Interface/IModule.d.ts +0 -1
- package/src/Strategy/LayoutModule.d.ts +9 -3
- package/src/Strategy/LayoutModule.js +148 -62
- package/src/Strategy/NamedQueryModule.d.ts +0 -1
- package/src/Strategy/NamedQueryModule.js +0 -19
- package/src/Strategy/{NotesModule.d.ts → NoteModule.d.ts} +2 -1
- package/src/Strategy/NoteModule.js +62 -0
- package/src/Strategy/PlusMinusModule.d.ts +1 -1
- package/src/Strategy/PlusMinusModule.js +2 -2
- package/src/Strategy/ScheduleModule.d.ts +1 -1
- package/src/Strategy/ScheduleModule.js +1 -1
- package/src/Strategy/SettingsPanelModule.js +3 -3
- package/src/Strategy/ShortcutModule.d.ts +1 -1
- package/src/Strategy/ShortcutModule.js +1 -1
- package/src/Strategy/SmartEditModule.js +1 -1
- package/src/Strategy/StyledColumnModule.d.ts +1 -1
- package/src/Strategy/StyledColumnModule.js +26 -26
- package/src/Strategy/SystemStatusModule.js +2 -2
- package/src/Strategy/TeamSharingModule.d.ts +1 -0
- package/src/Strategy/TeamSharingModule.js +5 -5
- package/src/Strategy/ToolPanelModule.d.ts +0 -1
- package/src/Strategy/ToolPanelModule.js +0 -23
- package/src/Strategy/Utilities/getScopeViewItems.js +3 -0
- package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
- package/src/Utilities/Constants/GeneralConstants.d.ts +1 -0
- package/src/Utilities/Constants/GeneralConstants.js +3 -2
- package/src/Utilities/Constants/ModuleConstants.d.ts +6 -6
- package/src/Utilities/Constants/ModuleConstants.js +7 -7
- package/src/Utilities/Defaults/DefaultSettingsPanel.js +7 -6
- package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +3 -2
- package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +430 -1
- package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +3 -3
- package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +1 -1
- package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +1 -1
- package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +15 -0
- package/src/Utilities/Extensions/ArrayExtensions.d.ts +2 -0
- package/src/Utilities/Extensions/ArrayExtensions.js +6 -1
- package/src/Utilities/Helpers/AdaptableHelper.d.ts +3 -4
- package/src/Utilities/Helpers/AdaptableHelper.js +20 -60
- package/src/Utilities/Helpers/Helper.d.ts +2 -0
- package/src/Utilities/Helpers/Helper.js +6 -1
- package/src/Utilities/MenuItem.d.ts +7 -4
- package/src/Utilities/MenuItem.js +6 -3
- package/src/Utilities/ObjectFactory.d.ts +3 -3
- package/src/Utilities/ObjectFactory.js +4 -24
- package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +4 -2
- package/src/Utilities/Services/AggregatedScalarLiveValue.js +26 -19
- package/src/Utilities/Services/CellPopupService.js +2 -3
- package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +1 -1
- package/src/Utilities/Services/Interface/IReportService.d.ts +1 -4
- package/src/Utilities/Services/LicenseService/index.d.ts +3 -0
- package/src/Utilities/Services/LicenseService/index.js +1 -186
- package/src/Utilities/Services/MetamodelService.d.ts +1 -1
- package/src/Utilities/Services/MetamodelService.js +6 -3
- package/src/Utilities/Services/ModuleService.js +4 -0
- package/src/Utilities/Services/QueryLanguageService.d.ts +1 -1
- package/src/Utilities/Services/QueryLanguageService.js +4 -3
- package/src/Utilities/Services/ReportService.d.ts +7 -5
- package/src/Utilities/Services/ReportService.js +238 -22
- package/src/Utilities/Services/RowEditService.d.ts +3 -2
- package/src/Utilities/Services/RowEditService.js +3 -1
- package/src/Utilities/adaptableQlUtils.d.ts +2 -0
- package/src/Utilities/adaptableQlUtils.js +18 -0
- package/src/Utilities/license/decode.js +1 -70
- package/src/Utilities/license/hashing.js +1 -47
- package/src/View/AdaptableView.js +1 -3
- package/src/View/AdaptableViewFactory.js +2 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +2 -2
- package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsStatusbarForm.js +1 -1
- package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +3 -3
- package/src/View/CalculatedColumn/utils.d.ts +1 -1
- package/src/View/CellSummary/CellSummaryPopup.js +1 -1
- package/src/View/Comments/CommentsEditor.js +24 -11
- package/src/View/Comments/CommentsPopup.js +20 -11
- package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
- package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.d.ts +5 -0
- package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.js +46 -0
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +5 -2
- package/src/View/Components/CellPopup/index.d.ts +1 -0
- package/src/View/Components/CellPopup/index.js +5 -2
- package/src/View/Components/FilterForm/FilterForm.js +20 -12
- package/src/View/Components/FilterForm/QuickFilterForm.js +15 -8
- package/src/View/Components/FilterForm/QuickFilterValues.js +39 -23
- package/src/View/Components/NewScopeComponent.js +34 -1
- package/src/View/Components/Popups/AdaptableLoadingScreen.d.ts +6 -5
- package/src/View/Components/Popups/AdaptableLoadingScreen.js +19 -9
- package/src/View/Components/Popups/AdaptableToaster.js +1 -1
- package/src/View/Components/Popups/GridCellPopup/GridCellPopup.js +7 -7
- package/src/View/Components/Popups/WindowPopups/windowFactory.d.ts +1 -0
- package/src/View/Components/Popups/WindowPopups/windowFactory.js +4 -1
- package/src/View/Components/Selectors/PermittedValuesSelector.js +2 -2
- package/src/View/Components/ValueSelector/index.d.ts +1 -0
- package/src/View/Components/ValueSelector/index.js +2 -2
- package/src/View/CustomSort/CustomSortSummary.js +1 -1
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +8 -9
- package/src/View/FreeTextColumn/FreeTextColumnSummary.js +1 -1
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnWizard.js +3 -1
- package/src/View/GridFilter/GridFilterViewPanel.js +9 -5
- package/src/View/GridFilter/useGridFilterExpressionEditor.js +1 -1
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -3
- package/src/View/Layout/LayoutViewPanel.js +2 -1
- package/src/View/Layout/TransposedPopup.d.ts +3 -0
- package/src/View/Layout/TransposedPopup.js +200 -0
- package/src/View/Layout/Wizard/LayoutWizard.js +36 -3
- package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -1
- package/src/View/Layout/Wizard/sections/RowSummarySection.d.ts +9 -0
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +181 -0
- package/src/View/License/LicenseWatermark.js +1 -66
- package/src/View/Note/NotePopup.d.ts +2 -0
- package/src/View/{Notes/NotesPopup.js → Note/NotePopup.js} +19 -19
- package/src/View/SpecialColumnSettingsWizardStep.js +4 -4
- package/src/View/Theme/ThemeSelector.js +2 -2
- package/src/agGrid/ActionColumnRenderer.js +7 -6
- package/src/agGrid/Adaptable.d.ts +3 -455
- package/src/agGrid/Adaptable.js +7 -5291
- package/src/agGrid/AdaptableAgGrid.d.ts +354 -0
- package/src/agGrid/AdaptableAgGrid.js +3972 -0
- package/src/agGrid/AdaptableLogger.js +78 -13
- package/src/agGrid/AgGridAdapter.d.ts +64 -0
- package/src/agGrid/AgGridAdapter.js +590 -0
- package/src/agGrid/AgGridColumnAdapter.d.ts +56 -0
- package/src/agGrid/AgGridColumnAdapter.js +836 -0
- package/src/agGrid/AgGridMenuAdapter.d.ts +28 -0
- package/src/agGrid/AgGridMenuAdapter.js +282 -0
- package/src/agGrid/AgGridOptionsService.d.ts +15 -0
- package/src/agGrid/AgGridOptionsService.js +80 -0
- package/src/agGrid/BadgeRenderer.js +1 -1
- package/src/agGrid/CheckboxRenderer.js +1 -1
- package/src/agGrid/FilterWrapper.d.ts +2 -2
- package/src/agGrid/FilterWrapper.js +1 -1
- package/src/agGrid/attachAddaptableColumnTypes.d.ts +12 -12
- package/src/agGrid/defaultAdaptableOptions.d.ts +3 -0
- package/src/{Utilities/Defaults/DefaultAdaptableOptions.js → agGrid/defaultAdaptableOptions.js} +74 -18
- package/src/agGrid/editors/AdaptableDateEditor/index.d.ts +1 -1
- package/src/agGrid/editors/AdaptableDateEditor/index.js +3 -3
- package/src/agGrid/editors/AdaptableNumberEditor/index.d.ts +2 -2
- package/src/agGrid/editors/AdaptableNumberEditor/index.js +2 -2
- package/src/agGrid/weightedAverage.d.ts +0 -2
- package/src/agGrid/weightedAverage.js +1 -56
- package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
- package/src/components/Datepicker/index.d.ts +1 -1
- package/src/components/Datepicker/index.js +10 -2
- package/src/components/ExpressionEditor/QueryBuilder/QueryPredicateBuilder.js +2 -1
- package/src/components/ExpressionEditor/QueryBuilder/utils.d.ts +0 -1
- package/src/components/ExpressionEditor/QueryBuilder/utils.js +3 -17
- package/src/components/InfiniteTable/index.js +2 -2
- package/src/components/Input/index.d.ts +1 -2
- package/src/components/List/ListGroupItem/index.d.ts +1 -1
- package/src/components/Modal/index.d.ts +1 -0
- package/src/components/Modal/index.js +6 -4
- package/src/components/Select/Select.d.ts +3 -1
- package/src/components/Select/Select.js +4 -2
- package/src/components/Textarea/index.d.ts +2 -2
- package/src/components/icons/index.js +2 -0
- package/src/components/icons/note.js +2 -2
- package/src/components/icons/rows.d.ts +3 -0
- package/src/components/icons/rows.js +7 -0
- package/src/env.js +2 -2
- package/src/metamodel/adaptable.metamodel.d.ts +179 -25
- package/src/metamodel/adaptable.metamodel.js +1 -9316
- package/src/migration/AdaptableUpgradeHelper.d.ts +38 -0
- package/src/migration/AdaptableUpgradeHelper.js +52 -0
- package/src/migration/VersionUpgrade.d.ts +8 -0
- package/src/migration/VersionUpgrade.js +15 -0
- package/src/migration/VersionUpgrade17.d.ts +18 -0
- package/src/migration/VersionUpgrade17.js +347 -0
- package/src/migration/VersionUpgrade18.d.ts +5 -0
- package/src/migration/VersionUpgrade18.js +10 -0
- package/src/parser/src/parser.js +117 -1257
- package/src/parser/src/predicate/mapExpressionToQlPredicate.js +1 -1
- package/src/parser/src/predicate/mapQlPredicateToExpression.js +2 -1
- package/src/parser/src/types.d.ts +7 -2
- package/src/types.d.ts +26 -19
- package/tsconfig.cjs.tsbuildinfo +1 -1
- package/src/AdaptableOptions/CommentsOptions.d.ts +0 -28
- package/src/Api/Events/CommentsChangedInfo.d.ts +0 -5
- package/src/Api/Implementation/NotesApiImpl.d.ts +0 -16
- package/src/Api/Implementation/NotesApiImpl.js +0 -44
- package/src/Api/NotesApi.d.ts +0 -48
- package/src/PredefinedConfig/CellAddress.d.ts +0 -13
- package/src/PredefinedConfig/CellAddress.js +0 -5
- package/src/Redux/ActionsReducers/NotesRedux.d.ts +0 -39
- package/src/Redux/ActionsReducers/NotesRedux.js +0 -87
- package/src/Strategy/NotesModule.js +0 -62
- package/src/Utilities/Defaults/DefaultAdaptableOptions.d.ts +0 -2
- package/src/Utilities/Services/Interface/IRowEditService.d.ts +0 -3
- package/src/View/Components/ScopeComponent.d.ts +0 -24
- package/src/View/Components/ScopeComponent.js +0 -138
- package/src/View/Export/Wizard/ReportScopeWizard.d.ts +0 -17
- package/src/View/Export/Wizard/ReportScopeWizard.js +0 -52
- package/src/View/Notes/NotesPopup.d.ts +0 -2
- package/src/agGrid/agGridHelper.d.ts +0 -57
- package/src/agGrid/agGridHelper.js +0 -691
- package/src/agGrid/agGridMenuHelper.d.ts +0 -46
- package/src/agGrid/agGridMenuHelper.js +0 -673
- /package/src/AdaptableOptions/{CommentsOptions.js → CommentOptions.js} +0 -0
- /package/src/AdaptableOptions/{NotesOptions.js → NoteOptions.js} +0 -0
- /package/src/Api/Events/{CommentsChangedInfo.js → CommentChanged.js} +0 -0
- /package/src/Api/{NotesApi.js → NoteApi.js} +0 -0
- /package/src/PredefinedConfig/{NotesState.js → Common/TransposeConfig.js} +0 -0
- /package/src/{Utilities/Services/Interface/IRowEditService.js → PredefinedConfig/NoteState.js} +0 -0
- /package/src/View/{Notes → Note}/NoteEditor.d.ts +0 -0
- /package/src/View/{Notes → Note}/NoteEditor.js +0 -0
|
@@ -18,12 +18,13 @@ const ObjectFactory_1 = require("../../../Utilities/ObjectFactory");
|
|
|
18
18
|
const HelpBlock_1 = tslib_1.__importDefault(require("../../../components/HelpBlock"));
|
|
19
19
|
const rebass_1 = require("rebass");
|
|
20
20
|
const Radio_1 = tslib_1.__importDefault(require("../../../components/Radio"));
|
|
21
|
-
const Helper_1 = tslib_1.
|
|
21
|
+
const Helper_1 = tslib_1.__importStar(require("../../../Utilities/Helpers/Helper"));
|
|
22
22
|
const AdaptableInput_1 = tslib_1.__importDefault(require("../AdaptableInput"));
|
|
23
23
|
const renderWithAdaptableContext_1 = require("../../renderWithAdaptableContext");
|
|
24
24
|
const CheckBox_1 = require("../../../components/CheckBox");
|
|
25
25
|
const runIfNotResolvedIn_1 = require("../../../Utilities/runIfNotResolvedIn");
|
|
26
26
|
const getDefaultColumnFilterPredicate_1 = require("./getDefaultColumnFilterPredicate");
|
|
27
|
+
const AdaptableDateInlineInput_1 = require("../AdaptableInput/AdaptableDateInlineInput");
|
|
27
28
|
const panelStyle = {
|
|
28
29
|
width: '100%',
|
|
29
30
|
minWidth: 150,
|
|
@@ -178,13 +179,20 @@ class FilterFormComponent extends React.Component {
|
|
|
178
179
|
this.changeColumnPredicateInput(newCheckedValue, 0);
|
|
179
180
|
} })));
|
|
180
181
|
}
|
|
181
|
-
return (_a = predicateDef.inputs) === null || _a === void 0 ? void 0 : _a.map((predicateInput, index) =>
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
182
|
+
return (_a = predicateDef.inputs) === null || _a === void 0 ? void 0 : _a.map((predicateInput, index) => {
|
|
183
|
+
var _a, _b;
|
|
184
|
+
const showDatePicker = (_b = (_a = this.props.api.optionsApi) === null || _a === void 0 ? void 0 : _a.getColumnFilterOptions()) === null || _b === void 0 ? void 0 : _b.showDatePicker;
|
|
185
|
+
if (predicateInput.type === 'date' && !showDatePicker) {
|
|
186
|
+
return (React.createElement(AdaptableDateInlineInput_1.AdaptableDateInlineInput, { value: filter.Predicate.Inputs[index], onChange: (value) => this.changeColumnPredicateInput(value, index) }));
|
|
187
|
+
}
|
|
188
|
+
return (React.createElement(rebass_1.Flex, { key: index, flexDirection: "row" },
|
|
189
|
+
React.createElement(AdaptableInput_1.default, { onMouseDown: (event) => {
|
|
190
|
+
if (predicateInput.type === 'date') {
|
|
191
|
+
// This prevents the ag-grid dropdown closing when a date is selected
|
|
192
|
+
event.stopPropagation();
|
|
193
|
+
}
|
|
194
|
+
}, disabled: this.isFilterDisabled(), type: predicateInput.type, autoFocus: index === 0, value: filter.Predicate.Inputs[index], onChange: (e) => this.changeColumnPredicateInput(e.target.value, index), mb: 1, flex: 1, fontSize: 2 })));
|
|
195
|
+
});
|
|
188
196
|
}
|
|
189
197
|
isFilterDisabled() {
|
|
190
198
|
var _a;
|
|
@@ -259,12 +267,12 @@ class FilterFormComponent extends React.Component {
|
|
|
259
267
|
}
|
|
260
268
|
changeColumnPredicateInput(value, index) {
|
|
261
269
|
const { editedColumnFilter } = this.state;
|
|
262
|
-
|
|
263
|
-
|
|
270
|
+
const newEditedColumnFilter = (0, Helper_1.cloneObject)(editedColumnFilter);
|
|
271
|
+
newEditedColumnFilter.Predicate.Inputs[index] = value;
|
|
272
|
+
this.setState({ editedColumnFilter: newEditedColumnFilter });
|
|
264
273
|
if (this.props.api.optionsApi.getColumnFilterOptions().autoApplyFilter) {
|
|
265
|
-
this.props.onSetColumnFilter(
|
|
274
|
+
this.props.onSetColumnFilter(newEditedColumnFilter);
|
|
266
275
|
}
|
|
267
|
-
// this.props.onSetColumnFilter(editedColumnFilter);
|
|
268
276
|
}
|
|
269
277
|
}
|
|
270
278
|
function mapStateToProps(state, ownProps) {
|
|
@@ -19,6 +19,7 @@ const getDefaultColumnFilterPredicate_1 = require("./getDefaultColumnFilterPredi
|
|
|
19
19
|
const Icon_1 = require("../../../components/Icon");
|
|
20
20
|
const QuickFilterValues_1 = require("./QuickFilterValues");
|
|
21
21
|
const AdaptableIconComponent_1 = require("../AdaptableIconComponent");
|
|
22
|
+
const AdaptableDateInlineInput_1 = require("../AdaptableInput/AdaptableDateInlineInput");
|
|
22
23
|
class QuickFilterFormComponent extends React.Component {
|
|
23
24
|
constructor(props) {
|
|
24
25
|
super(props);
|
|
@@ -140,17 +141,23 @@ class QuickFilterFormComponent extends React.Component {
|
|
|
140
141
|
} })));
|
|
141
142
|
}
|
|
142
143
|
return (_a = predicateDef === null || predicateDef === void 0 ? void 0 : predicateDef.inputs) === null || _a === void 0 ? void 0 : _a.map((predicateInput, index) => {
|
|
143
|
-
var _a, _b;
|
|
144
|
+
var _a, _b, _c, _d, _e, _f;
|
|
145
|
+
const showDatePicker = (_b = (_a = this.props.api.optionsApi) === null || _a === void 0 ? void 0 : _a.getColumnFilterOptions()) === null || _b === void 0 ? void 0 : _b.showDatePicker;
|
|
146
|
+
const value = (_d = (_c = filter.Predicate.Inputs) === null || _c === void 0 ? void 0 : _c[index]) !== null && _d !== void 0 ? _d : '';
|
|
147
|
+
const onKeyDownCapture = (e) => {
|
|
148
|
+
if (e.nativeEvent.key === 'Escape') {
|
|
149
|
+
e.nativeEvent.preventDefault();
|
|
150
|
+
e.nativeEvent.stopPropagation();
|
|
151
|
+
this.clearFilter();
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
if (predicateInput.type === 'date' && !showDatePicker) {
|
|
155
|
+
return (React.createElement(AdaptableDateInlineInput_1.AdaptableDateInlineInput, { value: value, key: index, onKeyDownCapture: onKeyDownCapture, onChange: (value) => this.changeColumnPredicateInput(value, index) }));
|
|
156
|
+
}
|
|
144
157
|
return (React.createElement(AdaptableInput_1.default, { disabled: this.isFilterDisabled(), key: index, type: predicateInput.type === 'number' ? 'text' : predicateInput.type,
|
|
145
158
|
// autoFocus has to be FALSE because if the input receives focus in the init phase,
|
|
146
159
|
// it may scroll the AG Grid header viewport into view and de-synchronize it (relative to the content viewport)
|
|
147
|
-
autoFocus: false, value: (
|
|
148
|
-
if (e.nativeEvent.key === 'Escape') {
|
|
149
|
-
e.nativeEvent.preventDefault();
|
|
150
|
-
e.nativeEvent.stopPropagation();
|
|
151
|
-
this.clearFilter();
|
|
152
|
-
}
|
|
153
|
-
}, style: {
|
|
160
|
+
autoFocus: false, value: (_f = (_e = filter.Predicate.Inputs) === null || _e === void 0 ? void 0 : _e[index]) !== null && _f !== void 0 ? _f : '', onChange: (e) => this.changeColumnPredicateInput(e.target.value, index), onKeyDownCapture: onKeyDownCapture, style: {
|
|
154
161
|
width: '100%',
|
|
155
162
|
padding: 'var(--ab-space-1)',
|
|
156
163
|
borderRadius: 0,
|
|
@@ -10,6 +10,7 @@ const date_fns_1 = require("date-fns");
|
|
|
10
10
|
const OverlayTrigger_1 = tslib_1.__importDefault(require("../../../components/OverlayTrigger"));
|
|
11
11
|
const rebass_1 = require("rebass");
|
|
12
12
|
const ListBoxFilterForm_1 = require("./ListBoxFilterForm");
|
|
13
|
+
const re_resizable_1 = require("re-resizable");
|
|
13
14
|
const QuickFilterValues = (props) => {
|
|
14
15
|
const { api } = props;
|
|
15
16
|
const currentOverlayVisible = (0, react_1.useRef)(false);
|
|
@@ -139,33 +140,48 @@ const QuickFilterValues = (props) => {
|
|
|
139
140
|
}
|
|
140
141
|
}, render: ({ targetWidth }) => {
|
|
141
142
|
var _a;
|
|
142
|
-
return (React.createElement(
|
|
143
|
-
if (showEvent === 'click') {
|
|
144
|
-
// For showEvent=mousenter this is not needed.
|
|
145
|
-
// When mouseenter is triggered on the overlay, onShowFn is called, the overlay is no longer hidden.
|
|
146
|
-
// But in this case because the trigger is click, another show is not triggered.
|
|
147
|
-
// The hide event is added direcly on the element so it does not use the React event system.
|
|
148
|
-
// But this event does, maybe beause it uses event delegation it is triggered to soon.
|
|
149
|
-
requestAnimationFrame(() => {
|
|
150
|
-
var _a;
|
|
151
|
-
(_a = valuesDropdownRef.current) === null || _a === void 0 ? void 0 : _a.show();
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
|
-
}, "data-name": "quick-filter-form", flexDirection: "column", style: {
|
|
143
|
+
return (React.createElement(re_resizable_1.Resizable, { style: {
|
|
155
144
|
fontSize: 'var(--ab-font-size-2)',
|
|
156
145
|
border: '1px solid var(--ab-color-primarydark)',
|
|
157
146
|
background: 'var(--ab-color-defaultbackground)',
|
|
158
147
|
zIndex: 1000,
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
148
|
+
}, enable: {
|
|
149
|
+
top: false,
|
|
150
|
+
right: true,
|
|
151
|
+
bottom: false,
|
|
152
|
+
left: false,
|
|
153
|
+
topRight: false,
|
|
154
|
+
bottomRight: false,
|
|
155
|
+
bottomLeft: false,
|
|
156
|
+
topLeft: false,
|
|
157
|
+
}, minWidth: getPopoverWidth(targetWidth) },
|
|
158
|
+
React.createElement(rebass_1.Flex, { onMouseEnter: () => {
|
|
159
|
+
if (showEvent === 'click') {
|
|
160
|
+
// For showEvent=mousenter this is not needed.
|
|
161
|
+
// When mouseenter is triggered on the overlay, onShowFn is called, the overlay is no longer hidden.
|
|
162
|
+
// But in this case because the trigger is click, another show is not triggered.
|
|
163
|
+
// The hide event is added direcly on the element so it does not use the React event system.
|
|
164
|
+
// But this event does, maybe beause it uses event delegation it is triggered to soon.
|
|
165
|
+
requestAnimationFrame(() => {
|
|
166
|
+
var _a;
|
|
167
|
+
(_a = valuesDropdownRef.current) === null || _a === void 0 ? void 0 : _a.show();
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
}, "data-name": "quick-filter-form", flexDirection: "column", style: {
|
|
171
|
+
// fontSize: 'var(--ab-font-size-2)',
|
|
172
|
+
// border: '1px solid var(--ab-color-primarydark)',
|
|
173
|
+
// background: 'var(--ab-color-defaultbackground)',
|
|
174
|
+
// zIndex: 1000,
|
|
175
|
+
// width: getPopoverWidth(targetWidth),
|
|
176
|
+
} },
|
|
177
|
+
React.createElement(rebass_1.Flex, { m: 2 },
|
|
178
|
+
React.createElement(SimpleButton_1.default, { onClick: () => clearColumnFilter() }, "Clear Filter"),
|
|
179
|
+
((_a = api.optionsApi.getColumnFilterOptions()) === null || _a === void 0 ? void 0 : _a.autoApplyFilter) == false && (React.createElement(SimpleButton_1.default, { ml: 2, onClick: () => {
|
|
180
|
+
if (transientColumnFilter) {
|
|
181
|
+
props.updateColumnFilter(transientColumnFilter);
|
|
182
|
+
}
|
|
183
|
+
} }, "Apply Filter"))),
|
|
184
|
+
React.createElement(ListBoxFilterForm_1.ListBoxFilterForm, { disabled: props.isFilterDisabled, suppressClientSideFilter: quickFilterValues.suppressClientSideFilter, isLoading: isDistinctColumnValuesLoading, onFilterChange: handleFilterChange, currentColumn: props.currentColumn, columns: [], columnDistinctValues: quickFilterValues.values, dataType: props.currentColumn.dataType, uiSelectedColumnValues: props.columnFilter.Predicate.Inputs.filter((input) => input !== ''), useAgGridStyle: true, onColumnValueSelectedChange: (list) => onColumnValueSelectedChange(list) }))));
|
|
169
185
|
} },
|
|
170
186
|
React.createElement(SimpleButton_1.default, { "data-name": 'Select Values', style: {
|
|
171
187
|
flex: 1,
|
|
@@ -62,6 +62,7 @@ const renderScopeSummary = (scope, labels) => {
|
|
|
62
62
|
exports.renderScopeSummary = renderScopeSummary;
|
|
63
63
|
const DATA_TYPES_OPTIONS = Object.values(DATA_TYPES_MAP);
|
|
64
64
|
const NewScopeComponent = (props) => {
|
|
65
|
+
var _a, _b;
|
|
65
66
|
const { api } = (0, AdaptableContext_1.useAdaptable)();
|
|
66
67
|
const { scopeApi, columnApi } = api;
|
|
67
68
|
const [columnsSearchText, setColumnsSearchText] = (0, react_1.useState)('');
|
|
@@ -85,6 +86,9 @@ const NewScopeComponent = (props) => {
|
|
|
85
86
|
if (scopeApi.scopeHasDataType(props.scope)) {
|
|
86
87
|
return 'DataType';
|
|
87
88
|
}
|
|
89
|
+
if (scopeApi.scopeHasColumnType(props.scope)) {
|
|
90
|
+
return 'ColumnType';
|
|
91
|
+
}
|
|
88
92
|
return undefined;
|
|
89
93
|
};
|
|
90
94
|
const onScopeSelectChanged = (value) => {
|
|
@@ -99,6 +103,11 @@ const NewScopeComponent = (props) => {
|
|
|
99
103
|
DataTypes: [],
|
|
100
104
|
};
|
|
101
105
|
}
|
|
106
|
+
else if (value == 'ColumnType') {
|
|
107
|
+
newScope = {
|
|
108
|
+
ColumnTypes: [],
|
|
109
|
+
};
|
|
110
|
+
}
|
|
102
111
|
else {
|
|
103
112
|
newScope = {
|
|
104
113
|
All: true,
|
|
@@ -134,6 +143,10 @@ const NewScopeComponent = (props) => {
|
|
|
134
143
|
if (Array.isArray(props.availableDataTypes)) {
|
|
135
144
|
dataTypeOptions = props.availableDataTypes.map((dataType) => DATA_TYPES_MAP[dataType]);
|
|
136
145
|
}
|
|
146
|
+
const hasColumnTypes = React.useMemo(() => {
|
|
147
|
+
var _a;
|
|
148
|
+
return ((_a = api.columnApi.getColumnTypes()) === null || _a === void 0 ? void 0 : _a.length) > 0;
|
|
149
|
+
}, []);
|
|
137
150
|
return (React.createElement(Tabs_1.Tabs, { "data-name": 'scope-component', className: "ab-ScopeComponent", value: scopeChoice, style: Object.assign({ height: '100%' }, props.style), onValueChange: onScopeSelectChanged },
|
|
138
151
|
props.hideWholeRow ? null : (React.createElement(Tabs_1.Tabs.Tab, { value: "Row" },
|
|
139
152
|
React.createElement(Radio_1.default, { margin: 0, checked: scopeChoice == 'All', tabIndex: -1 }, "All Columns"))),
|
|
@@ -141,6 +154,8 @@ const NewScopeComponent = (props) => {
|
|
|
141
154
|
React.createElement(Radio_1.default, { margin: 0, value: "Column", checked: scopeChoice == 'Column', tabIndex: -1 }, "Selected Columns"))),
|
|
142
155
|
!props.disableDataTypes && (React.createElement(Tabs_1.Tabs.Tab, { value: "DataType" },
|
|
143
156
|
React.createElement(Radio_1.default, { margin: 0, value: "DataType", checked: scopeChoice == 'DataType', tabIndex: -1 }, "Data Types"))),
|
|
157
|
+
hasColumnTypes && (React.createElement(Tabs_1.Tabs.Tab, { value: "ColumnType" },
|
|
158
|
+
React.createElement(Radio_1.default, { margin: 0, value: "ColumnType", checked: scopeChoice == 'ColumnType', tabIndex: -1 }, "Column Types"))),
|
|
144
159
|
props.hideWholeRow ? null : (React.createElement(Tabs_1.Tabs.Content, { value: "Row", style: { flex: 'none' }, "data-name": "row-scope" },
|
|
145
160
|
React.createElement(rebass_1.Text, { padding: 2, pl: 0, fontSize: 2 }, props.descriptions.rowScope))),
|
|
146
161
|
!props.disableColumns && (React.createElement(Tabs_1.Tabs.Content, { value: "Column", style: { flex: 1, overflow: 'auto' }, "data-name": "column-scope", padding: 0 },
|
|
@@ -153,6 +168,24 @@ const NewScopeComponent = (props) => {
|
|
|
153
168
|
!props.disableDataTypes && (React.createElement(Tabs_1.Tabs.Content, { value: "DataType", style: { flex: 'none' }, "data-name": "datatype-scope" },
|
|
154
169
|
React.createElement(rebass_1.Box, null,
|
|
155
170
|
props.descriptions.dataTypeScope && (React.createElement(rebass_1.Text, { p: 2, pl: 0, mb: 2, fontSize: 2 }, props.descriptions.dataTypeScope)),
|
|
156
|
-
React.createElement(rebass_1.Flex, { flexDirection: "column" }, dataTypeOptions.map((dataTypeOption) => (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": dataTypeOption.value, key: dataTypeOption.value, checked: dataTypesInScope && dataTypesInScope.includes(dataTypeOption.value), onChange: (checked) => onCheckBoxDataTypeChecked(checked, dataTypeOption.value) }, dataTypeOption.label)))))))
|
|
171
|
+
React.createElement(rebass_1.Flex, { flexDirection: "column" }, dataTypeOptions.map((dataTypeOption) => (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": dataTypeOption.value, key: dataTypeOption.value, checked: dataTypesInScope && dataTypesInScope.includes(dataTypeOption.value), onChange: (checked) => onCheckBoxDataTypeChecked(checked, dataTypeOption.value) }, dataTypeOption.label))))))),
|
|
172
|
+
hasColumnTypes && (React.createElement(Tabs_1.Tabs.Content, { value: "ColumnType", style: { flex: 'none' }, "data-name": "column-type-scope" },
|
|
173
|
+
React.createElement(rebass_1.Box, null,
|
|
174
|
+
React.createElement(rebass_1.Flex, { flexDirection: "column" }, (_b = (_a = api.columnApi.getColumnTypes()) === null || _a === void 0 ? void 0 : _a.map) === null || _b === void 0 ? void 0 : _b.call(_a, (columnType) => {
|
|
175
|
+
var _a;
|
|
176
|
+
return (React.createElement(CheckBox_1.CheckBox, { "data-name": "scope", "data-value": columnType, key: columnType, checked: 'ColumnTypes' in props.scope && ((_a = props.scope.ColumnTypes) === null || _a === void 0 ? void 0 : _a.includes(columnType)), onChange: (checked) => {
|
|
177
|
+
let columnTypes = [].concat(props.scope.ColumnTypes);
|
|
178
|
+
if (checked) {
|
|
179
|
+
columnTypes.push(columnType);
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
columnTypes = columnTypes.filter((ct) => ct !== columnType);
|
|
183
|
+
}
|
|
184
|
+
let newScope = {
|
|
185
|
+
ColumnTypes: columnTypes,
|
|
186
|
+
};
|
|
187
|
+
props.updateScope(newScope);
|
|
188
|
+
} }, columnType));
|
|
189
|
+
})))))));
|
|
157
190
|
};
|
|
158
191
|
exports.NewScopeComponent = NewScopeComponent;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
export interface IAdaptableLoadingScreenProps
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export interface IAdaptableLoadingScreenProps {
|
|
3
3
|
showLoadingScreen: boolean;
|
|
4
|
+
loadingScreenDelay?: number;
|
|
5
|
+
loadingScreenTitle?: string;
|
|
6
|
+
loadingScreenText?: string;
|
|
4
7
|
onClose?: () => {};
|
|
5
8
|
}
|
|
6
|
-
export declare
|
|
7
|
-
render(): JSX.Element;
|
|
8
|
-
}
|
|
9
|
+
export declare function AdaptableLoadingScreen(props: IAdaptableLoadingScreenProps): JSX.Element;
|
|
@@ -5,14 +5,24 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const React = tslib_1.__importStar(require("react"));
|
|
6
6
|
const Dialog_1 = tslib_1.__importDefault(require("../../../components/Dialog"));
|
|
7
7
|
const rebass_1 = require("rebass");
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
8
|
+
function AdaptableLoadingScreen(props) {
|
|
9
|
+
const { showLoadingScreen, loadingScreenDelay, loadingScreenTitle, loadingScreenText } = props;
|
|
10
|
+
const [delayElapsed, setDelayElapsed] = React.useState(typeof loadingScreenDelay === 'number' ? false : showLoadingScreen);
|
|
11
|
+
React.useEffect(() => {
|
|
12
|
+
if (typeof loadingScreenDelay === 'number') {
|
|
13
|
+
const timeoutId = setTimeout(() => {
|
|
14
|
+
setDelayElapsed(true);
|
|
15
|
+
}, loadingScreenDelay);
|
|
16
|
+
return () => {
|
|
17
|
+
clearTimeout(timeoutId);
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
}, [loadingScreenDelay]);
|
|
21
|
+
return (React.createElement(Dialog_1.default, { modal: true, isOpen: delayElapsed ? showLoadingScreen : false, onDismiss: props.onClose, showCloseButton: false, className: "ab-LoadingScreen", style: {
|
|
22
|
+
minHeight: 'auto',
|
|
23
|
+
} },
|
|
24
|
+
React.createElement(rebass_1.Box, { padding: 3 },
|
|
25
|
+
React.createElement("h4", null, loadingScreenTitle !== null && loadingScreenTitle !== void 0 ? loadingScreenTitle : 'Initialising Grid'),
|
|
26
|
+
React.createElement("p", null, loadingScreenText !== null && loadingScreenText !== void 0 ? loadingScreenText : 'Retrieving your settings and setting up the grid...'))));
|
|
17
27
|
}
|
|
18
28
|
exports.AdaptableLoadingScreen = AdaptableLoadingScreen;
|
|
@@ -16,7 +16,7 @@ const showToast = (props) => {
|
|
|
16
16
|
});
|
|
17
17
|
const adaptableOptions = props.api.optionsApi.getAdaptableOptions();
|
|
18
18
|
const toastProps = ObjectFactory_1.default.CreateToastOptions(adaptableOptions.notificationsOptions, {
|
|
19
|
-
containerId: adaptableOptions.adaptableId
|
|
19
|
+
containerId: `Toastify-${adaptableOptions.adaptableId}`,
|
|
20
20
|
onClose: () => {
|
|
21
21
|
off();
|
|
22
22
|
},
|
|
@@ -5,15 +5,15 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const React = tslib_1.__importStar(require("react"));
|
|
6
6
|
const react_redux_1 = require("react-redux");
|
|
7
7
|
const rebass_1 = require("rebass");
|
|
8
|
-
const
|
|
8
|
+
const NoteRedux_1 = require("../../../../Redux/ActionsReducers/NoteRedux");
|
|
9
9
|
const SystemRedux_1 = require("../../../../Redux/ActionsReducers/SystemRedux");
|
|
10
10
|
const AdaptableContext_1 = require("../../../AdaptableContext");
|
|
11
11
|
const CommentsEditor_1 = require("../../../Comments/CommentsEditor");
|
|
12
|
-
const NoteEditor_1 = require("../../../
|
|
12
|
+
const NoteEditor_1 = require("../../../Note/NoteEditor");
|
|
13
13
|
const CellPopup_1 = require("../../CellPopup");
|
|
14
14
|
const ConnectedNoteEditor = ({ enableEditMode }) => {
|
|
15
15
|
const { api } = (0, AdaptableContext_1.useAdaptable)();
|
|
16
|
-
const isReadonly = api.entitlementApi.isModuleReadOnlyEntitlement('
|
|
16
|
+
const isReadonly = api.entitlementApi.isModuleReadOnlyEntitlement('Note');
|
|
17
17
|
const editMode = (0, react_redux_1.useSelector)((state) => (0, SystemRedux_1.SystemCommentsAndNotesEditModeSelector)(state.System));
|
|
18
18
|
const cellPopupService = api.internalApi.getCellPopupService();
|
|
19
19
|
const cellAddress = (0, react_redux_1.useSelector)((state) => (0, SystemRedux_1.SystemCommentsAndNotesSelector)(state.System));
|
|
@@ -21,13 +21,13 @@ const ConnectedNoteEditor = ({ enableEditMode }) => {
|
|
|
21
21
|
// Only handle first note for now
|
|
22
22
|
// Later we can handle multiple notes
|
|
23
23
|
note,] = (0, react_redux_1.useSelector)((state) => {
|
|
24
|
-
return cellAddress ? (0,
|
|
24
|
+
return cellAddress ? (0, NoteRedux_1.GetNotesSelector)(state.Note, cellAddress) : [];
|
|
25
25
|
});
|
|
26
26
|
const handleNoteChange = React.useCallback((value) => {
|
|
27
|
-
api.
|
|
27
|
+
api.noteApi.updateNoteText(value, note);
|
|
28
28
|
}, [note]);
|
|
29
|
-
return (React.createElement(rebass_1.Flex, { onClick: () => enableEditMode(), flexDirection: "column", className: "ab-
|
|
30
|
-
React.createElement(NoteEditor_1.NoteEditor, { isReadonly: isReadonly, editMode: editMode, key: note === null || note === void 0 ? void 0 : note.Uuid, onClose: () => cellPopupService.hidePopup(), note: note === null || note === void 0 ? void 0 : note.
|
|
29
|
+
return (React.createElement(rebass_1.Flex, { onClick: () => enableEditMode(), flexDirection: "column", className: "ab-NotePopup" },
|
|
30
|
+
React.createElement(NoteEditor_1.NoteEditor, { isReadonly: isReadonly, editMode: editMode, key: note === null || note === void 0 ? void 0 : note.Uuid, onClose: () => cellPopupService.hidePopup(), note: note === null || note === void 0 ? void 0 : note.Text, onNoteChange: (value) => handleNoteChange(value) })));
|
|
31
31
|
};
|
|
32
32
|
const GridCellPopup = (props) => {
|
|
33
33
|
const { api } = (0, AdaptableContext_1.useAdaptable)();
|
|
@@ -4,4 +4,5 @@ export declare const WINDOW_GRID_FILTER_EDITOR = "WINDOW_GRID_FILTER_EDITOR";
|
|
|
4
4
|
export declare const SHOW_PIVOT_COLUMN_DETAILS = "SHOW_PIVOT_COLUMN_DETAILS";
|
|
5
5
|
export declare const SHOW_EXPORT_TABLE = "SHOW_EXPORT_TABLE";
|
|
6
6
|
export declare const SHOW_THEME_EDITOR = "SHOW_THEME_EDITOR";
|
|
7
|
+
export declare const WINDOW_SHOW_TRANSPOSED_VIEW = "WINDOW_SHOW_TRANSPOSED_VIEW";
|
|
7
8
|
export declare const windowFactory: Record<string, React.FunctionComponent<WindowPopupChildProps>>;
|
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.windowFactory = exports.SHOW_THEME_EDITOR = exports.SHOW_EXPORT_TABLE = exports.SHOW_PIVOT_COLUMN_DETAILS = exports.WINDOW_GRID_FILTER_EDITOR = void 0;
|
|
3
|
+
exports.windowFactory = exports.WINDOW_SHOW_TRANSPOSED_VIEW = exports.SHOW_THEME_EDITOR = exports.SHOW_EXPORT_TABLE = exports.SHOW_PIVOT_COLUMN_DETAILS = exports.WINDOW_GRID_FILTER_EDITOR = void 0;
|
|
4
4
|
const GridFilterWindowPopup_1 = require("../../../GridFilter/GridFilterWindowPopup");
|
|
5
5
|
const PivotDetailsPopoup_1 = require("../../../Layout/PivotDetailsPopoup");
|
|
6
6
|
const ExportTablePopup_1 = require("../../../Export/ExportTablePopup");
|
|
7
7
|
const ThemeEditorWindow_1 = require("../../../Theme/ThemeEditorWindow");
|
|
8
|
+
const TransposedPopup_1 = require("../../../Layout/TransposedPopup");
|
|
8
9
|
exports.WINDOW_GRID_FILTER_EDITOR = 'WINDOW_GRID_FILTER_EDITOR';
|
|
9
10
|
exports.SHOW_PIVOT_COLUMN_DETAILS = 'SHOW_PIVOT_COLUMN_DETAILS';
|
|
10
11
|
exports.SHOW_EXPORT_TABLE = 'SHOW_EXPORT_TABLE';
|
|
11
12
|
exports.SHOW_THEME_EDITOR = 'SHOW_THEME_EDITOR';
|
|
13
|
+
exports.WINDOW_SHOW_TRANSPOSED_VIEW = 'WINDOW_SHOW_TRANSPOSED_VIEW';
|
|
12
14
|
exports.windowFactory = {
|
|
13
15
|
[exports.WINDOW_GRID_FILTER_EDITOR]: GridFilterWindowPopup_1.GridFilterWindowPopup,
|
|
14
16
|
[exports.SHOW_PIVOT_COLUMN_DETAILS]: PivotDetailsPopoup_1.PivotDetailsPopoup,
|
|
15
17
|
[exports.SHOW_EXPORT_TABLE]: ExportTablePopup_1.ExportTablePopup,
|
|
16
18
|
[exports.SHOW_THEME_EDITOR]: ThemeEditorWindow_1.ThemeEditorWindow,
|
|
19
|
+
[exports.WINDOW_SHOW_TRANSPOSED_VIEW]: TransposedPopup_1.TransposedPopup,
|
|
17
20
|
};
|
|
@@ -13,7 +13,7 @@ const PermittedValuesSelector = function (props) {
|
|
|
13
13
|
const [filter, setFilter] = React.useState('');
|
|
14
14
|
const columnType = React.useMemo(() => {
|
|
15
15
|
return adaptable.api.columnApi.getColumnDataTypeForColumnId(props.columnId);
|
|
16
|
-
}, []);
|
|
16
|
+
}, [props.columnId]);
|
|
17
17
|
React.useEffect(() => {
|
|
18
18
|
if (!props.columnId) {
|
|
19
19
|
setIsLoading(false);
|
|
@@ -68,6 +68,6 @@ const PermittedValuesSelector = function (props) {
|
|
|
68
68
|
handleSingleValueChange(value);
|
|
69
69
|
}
|
|
70
70
|
};
|
|
71
|
-
return (React.createElement(Select_1.Select, { isMulti: props.isMulti, className: props.className, disabled: props.disabled, "data-name": "permitted-values-selector", placeholder: props.placeholder || (props.allowNewValues ? 'Select or type new value' : 'Select value'), isCreatable: isCreatable, isClearable: true, options: options,
|
|
71
|
+
return (React.createElement(Select_1.Select, { isMulti: props.isMulti, className: props.className, disabled: props.disabled, "data-name": "permitted-values-selector", placeholder: props.placeholder || (props.allowNewValues ? 'Select or type new value' : 'Select value'), isCreatable: isCreatable, isClearable: true, options: options, isLoading: isLoading, onInputChange: setFilter, onChange: handleOnChange, value: props.value }));
|
|
72
72
|
};
|
|
73
73
|
exports.PermittedValuesSelector = PermittedValuesSelector;
|
|
@@ -26,6 +26,7 @@ export type ValueSelectorProps<OPTION_TYPE, ID_TYPE extends number | string> = {
|
|
|
26
26
|
onShowSelectedOnlyChange?: (selectedOnly: boolean) => void;
|
|
27
27
|
isOptionDisabled?: (option: OPTION_TYPE) => boolean;
|
|
28
28
|
disabled?: boolean;
|
|
29
|
+
style?: React.CSSProperties;
|
|
29
30
|
};
|
|
30
31
|
export declare function ValueSelector<OPTION_TYPE, ID_TYPE extends number | string>(props: ValueSelectorProps<OPTION_TYPE, ID_TYPE>): JSX.Element;
|
|
31
32
|
export declare namespace ValueSelector {
|
|
@@ -66,7 +66,7 @@ function ValueSelector(props) {
|
|
|
66
66
|
const label = !allowReorder ? preparedToLabel(option) : null;
|
|
67
67
|
const reorderable = typeof allowReorder === 'function' ? allowReorder(option) : allowReorder;
|
|
68
68
|
const renderNode = (props, dragHandleProps) => {
|
|
69
|
-
return (React.createElement(rebass_1.Flex, Object.assign({ className: `${baseClassName}__option`, alignItems: "center", mt: index ? 1 : 0, key: identifier, backgroundColor: 'primary', padding: 2, "data-index": index, "data-id": identifier, "data-name": "option" }, props),
|
|
69
|
+
return (React.createElement(rebass_1.Flex, Object.assign({ className: `${baseClassName}__option`, alignItems: "center", mt: index ? 1 : 0, key: identifier !== null && identifier !== void 0 ? identifier : index, backgroundColor: 'primary', padding: 2, "data-index": index, "data-id": identifier, "data-name": "option" }, props),
|
|
70
70
|
React.createElement(rebass_1.Flex, { flex: 1, flexDirection: "row", alignItems: "center" },
|
|
71
71
|
reorderable ? (React.createElement(rebass_1.Box, Object.assign({ mr: 3 }, dragHandleProps),
|
|
72
72
|
React.createElement(icons_1.Icon, { name: "drag", style: { cursor: 'grab' } }))) : null,
|
|
@@ -115,7 +115,7 @@ function ValueSelector(props) {
|
|
|
115
115
|
};
|
|
116
116
|
const showOnlySelectedCheckbox = (React.createElement(CheckBox_1.CheckBox, { disabled: !value.length, checked: selectedOnly, onChange: setSelectedOnly }, showSelectedOnlyLabel !== null && showSelectedOnlyLabel !== void 0 ? showSelectedOnlyLabel : 'Show Selected Only'));
|
|
117
117
|
const showSelectedOnlyPosition = (_a = props.showSelectedOnlyPosition) !== null && _a !== void 0 ? _a : 'floating';
|
|
118
|
-
return (React.createElement(rebass_1.Flex, { className: baseClassName, flexDirection: "column", flex: 1 },
|
|
118
|
+
return (React.createElement(rebass_1.Flex, { style: props.style, className: baseClassName, flexDirection: "column", flex: 1 },
|
|
119
119
|
React.createElement(rebass_1.Flex, { mb: 1 },
|
|
120
120
|
showFilterInput && filter ? (React.createElement(AdaptableFormControlTextClear_1.AdaptableFormControlTextClear, { value: searchInputValue, OnTextChange: setSearchInputValue, placeholder: "Type to search", style: { flex: 1, border: 0, margin: 3 } })) : (React.createElement(rebass_1.Box, { flex: 1 })),
|
|
121
121
|
showSelectedOnlyPosition === 'top' && React.createElement(rebass_1.Box, { ml: 20 }, showOnlySelectedCheckbox)),
|
|
@@ -37,7 +37,7 @@ class CustomSortSummaryComponent extends React.Component {
|
|
|
37
37
|
}
|
|
38
38
|
render() {
|
|
39
39
|
const customSort = this.props.CustomSorts.find((c) => c.ColumnId == this.props.summarisedColumn.columnId);
|
|
40
|
-
const columnSortComparer = this.props.api.customSortApi.internalApi.getCustomSortComparer(this.props.summarisedColumn);
|
|
40
|
+
const columnSortComparer = this.props.api.customSortApi.internalApi.getCustomSortComparer(this.props.summarisedColumn.columnId);
|
|
41
41
|
let noCustomSort = customSort == null && columnSortComparer == null;
|
|
42
42
|
let customSortRow;
|
|
43
43
|
if (!this.props.summarisedColumn.sortable) {
|
|
@@ -3,11 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.DataChangeHistoryGrid = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const React = tslib_1.__importStar(require("react"));
|
|
6
|
-
const AdaptableContext_1 = require("../AdaptableContext");
|
|
7
6
|
const react_1 = require("react");
|
|
7
|
+
const AdaptableContext_1 = require("../AdaptableContext");
|
|
8
8
|
const usePrevious_1 = tslib_1.__importDefault(require("../../components/utils/usePrevious"));
|
|
9
9
|
const ModuleConstants_1 = require("../../Utilities/Constants/ModuleConstants");
|
|
10
10
|
const buildActionColumnButton_1 = require("./buildActionColumnButton");
|
|
11
|
+
const AdaptableAgGrid_1 = require("../../agGrid/AdaptableAgGrid");
|
|
11
12
|
const DataChangeHistoryGrid = (props) => {
|
|
12
13
|
const { changeHistoryLog, adaptableContainerId, agGridContainerId, onUndoChange, onClearRow } = props;
|
|
13
14
|
const mainAdaptableInstance = (0, AdaptableContext_1.useAdaptable)();
|
|
@@ -24,13 +25,12 @@ const DataChangeHistoryGrid = (props) => {
|
|
|
24
25
|
const gridOptions = buildGridOptions(mainAdaptableInstance, changeHistoryLog);
|
|
25
26
|
const adaptableOptions = buildAdaptableOptions(mainAdaptableInstance, gridOptions, adaptableContainerId, agGridContainerId, undoChangeEnabled, onUndoChange, onClearRow);
|
|
26
27
|
const modules = mainAdaptableInstance.getAgGridRegisteredModules();
|
|
27
|
-
const
|
|
28
|
+
const dataChangeHistoryAdaptableApi = await AdaptableAgGrid_1.AdaptableAgGrid._initInternal({
|
|
29
|
+
variant: 'vanilla',
|
|
30
|
+
adaptableOptions,
|
|
28
31
|
gridOptions,
|
|
29
|
-
modules
|
|
30
|
-
};
|
|
31
|
-
// to avoid direct dependency to Adaptable.ts and thus creating a circular dependency;
|
|
32
|
-
const adaptableInitFn = Object.getPrototypeOf(mainAdaptableInstance).constructor.init;
|
|
33
|
-
const dataChangeHistoryAdaptableApi = await adaptableInitFn(adaptableOptions, agGridConfig);
|
|
32
|
+
modules,
|
|
33
|
+
});
|
|
34
34
|
setAdaptableApi(dataChangeHistoryAdaptableApi);
|
|
35
35
|
};
|
|
36
36
|
initializeAdaptableGrid();
|
|
@@ -69,7 +69,7 @@ const DataChangeHistoryGrid = (props) => {
|
|
|
69
69
|
// 2. this UI will be reimplemented with Infinite Table anyway
|
|
70
70
|
const addedRows = mapChangeHistoryRowData(addedChangeHistoryLogs, mainAdaptableInstance);
|
|
71
71
|
const removedRows = mapChangeHistoryRowData(removedChangeHistoryLogs, mainAdaptableInstance);
|
|
72
|
-
adaptableApi.
|
|
72
|
+
adaptableApi.agGridApi.applyTransactionAsync({
|
|
73
73
|
add: addedRows,
|
|
74
74
|
remove: removedRows,
|
|
75
75
|
});
|
|
@@ -213,7 +213,6 @@ const buildGridOptions = (mainAdaptableInstance, changeHistoryLog) => {
|
|
|
213
213
|
},
|
|
214
214
|
autoGroupColumnDef: {
|
|
215
215
|
sortable: true,
|
|
216
|
-
// suppressMenu: true,
|
|
217
216
|
},
|
|
218
217
|
columnDefs: [
|
|
219
218
|
{
|
|
@@ -49,7 +49,7 @@ class FreeTextColumnSummaryComponent extends React.Component {
|
|
|
49
49
|
this.state.editedAdaptableObject && (React.createElement(FreeTextColumnWizard_1.FreeTextColumnWizard, { moduleInfo: this.props.moduleInfo, data: this.state.editedAdaptableObject, configEntities: this.props.FreeTextColumns, onCloseWizard: () => this.onCloseWizard(), onFinishWizard: this.onFinishWizard }))));
|
|
50
50
|
}
|
|
51
51
|
onNew() {
|
|
52
|
-
let configEntity = ObjectFactory_1.ObjectFactory.CreateEmptyFreeTextColumn();
|
|
52
|
+
let configEntity = ObjectFactory_1.ObjectFactory.CreateEmptyFreeTextColumn(this.props.api.gridApi.internalApi.deriveSpecialColumnSettingsFromAgGridDefaultColDef());
|
|
53
53
|
configEntity.ColumnId = this.props.summarisedColumn.columnId;
|
|
54
54
|
this.setState({
|
|
55
55
|
editedAdaptableObject: configEntity,
|
|
@@ -12,8 +12,10 @@ const ObjectFactory_1 = tslib_1.__importDefault(require("../../../Utilities/Obje
|
|
|
12
12
|
const FreeTextColumnRedux = tslib_1.__importStar(require("../../../Redux/ActionsReducers/FreeTextColumnRedux"));
|
|
13
13
|
const react_redux_1 = require("react-redux");
|
|
14
14
|
const ObjectTagsWizardSection_1 = require("../../Wizard/ObjectTagsWizardSection");
|
|
15
|
+
const AdaptableContext_1 = require("../../AdaptableContext");
|
|
15
16
|
const FreeTextColumnWizard = (props) => {
|
|
16
17
|
var _a;
|
|
18
|
+
const adaptable = (0, AdaptableContext_1.useAdaptable)();
|
|
17
19
|
const allFreeTextColumns = (0, react_redux_1.useSelector)((state) => state.FreeTextColumn.FreeTextColumns);
|
|
18
20
|
const [freeTextColumn, setFreeTextColumn] = (0, react_1.useState)(() => {
|
|
19
21
|
var _a, _b;
|
|
@@ -23,7 +25,7 @@ const FreeTextColumnWizard = (props) => {
|
|
|
23
25
|
if (((_a = props.popupParams) === null || _a === void 0 ? void 0 : _a.action) === 'Edit' && ((_b = props.popupParams) === null || _b === void 0 ? void 0 : _b.column)) {
|
|
24
26
|
return allFreeTextColumns.find((column) => column.ColumnId === props.popupParams.column.columnId);
|
|
25
27
|
}
|
|
26
|
-
return ObjectFactory_1.default.CreateEmptyFreeTextColumn();
|
|
28
|
+
return ObjectFactory_1.default.CreateEmptyFreeTextColumn(adaptable.api.gridApi.internalApi.deriveSpecialColumnSettingsFromAgGridDefaultColDef());
|
|
27
29
|
});
|
|
28
30
|
const dispatch = (0, react_redux_1.useDispatch)();
|
|
29
31
|
const isEdit = props.data || ((_a = props.popupParams) === null || _a === void 0 ? void 0 : _a.action) === 'Edit';
|
|
@@ -27,6 +27,7 @@ const QueryViewPanelComponent = (props) => {
|
|
|
27
27
|
const disabled = isReadOnly || isSuspended || gridFilterAccessLevel === 'ReadOnly';
|
|
28
28
|
const handleEnter = (e) => {
|
|
29
29
|
if (e.key === 'Enter') {
|
|
30
|
+
e.preventDefault();
|
|
30
31
|
runQuery();
|
|
31
32
|
}
|
|
32
33
|
};
|
|
@@ -48,10 +49,11 @@ const QueryViewPanelComponent = (props) => {
|
|
|
48
49
|
fontFamily: 'monospace',
|
|
49
50
|
fontSize: 12,
|
|
50
51
|
maxHeight: 52,
|
|
51
|
-
height:
|
|
52
|
-
paddingTop:
|
|
52
|
+
height: '100%',
|
|
53
|
+
paddingTop: 6,
|
|
54
|
+
overflow: 'hidden',
|
|
53
55
|
zIndex: 100,
|
|
54
|
-
},
|
|
56
|
+
}, placeholder: "Grid Filter", onChange: (x) => setExpression(x.target.value), value: expression })),
|
|
55
57
|
isExpressionValid && (React.createElement(ButtonPlay_1.ButtonPlay, { onClick: () => runQuery(), tooltip: '', accessLevel: gridFilterAccessLevel, variant: "text", tone: "neutral", disabled: disabled || expression == '' || expression == (gridFilter === null || gridFilter === void 0 ? void 0 : gridFilter.Expression), marginRight: 1 })),
|
|
56
58
|
gridFilter && !isExpressionValid && (React.createElement(ButtonInvalid_1.ButtonInvalid, { variant: "text", tone: "neutral", tooltip: "Invalid Grid Filter", marginRight: 1 })),
|
|
57
59
|
' ',
|
|
@@ -75,11 +77,13 @@ const QueryViewPanelComponent = (props) => {
|
|
|
75
77
|
maxHeight: 60,
|
|
76
78
|
paddingTop: 7,
|
|
77
79
|
zIndex: 100,
|
|
78
|
-
|
|
80
|
+
height: '100%',
|
|
81
|
+
overflow: 'hidden',
|
|
82
|
+
}, placeholder: "Grid Filter", onChange: (x) => setExpression(x.target.value), value: expression }))));
|
|
79
83
|
};
|
|
80
84
|
const saveButton = (React.createElement(ButtonSave_1.ButtonSave, { onClick: () => saveQuery(), tooltip: "Save as Named Query", accessLevel: namedQueryModuleAccessLevel, disabled: disabled || !isExpressionValid || isExpressionNamedQuery || expression == '', variant: "text", tone: "neutral", marginRight: 1 }));
|
|
81
85
|
const suspendButton = (React.createElement(ButtonPause_1.ButtonPause, { onClick: () => suspendGridFilter(), tooltip: "Suspend Grid Filter", accessLevel: gridFilterAccessLevel, disabled: disabled || !isExpressionValid, variant: "text", tone: "neutral", marginRight: 1 }));
|
|
82
|
-
const unSuspendButton = (React.createElement(ButtonUnsuspend_1.ButtonUnsuspend, { onClick: () => unSuspendGridFilter(), tooltip: "Unsuspend Grid Filter", accessLevel: gridFilterAccessLevel, disabled:
|
|
86
|
+
const unSuspendButton = (React.createElement(ButtonUnsuspend_1.ButtonUnsuspend, { onClick: () => unSuspendGridFilter(), tooltip: "Unsuspend Grid Filter", accessLevel: gridFilterAccessLevel, disabled: !isExpressionValid, variant: "text", tone: "neutral", marginRight: 1 }));
|
|
83
87
|
const namedQuerySelector = (React.createElement(NamedQuerySelector_1.NamedQuerySelector, { namedQueries: namedQueries, cachedQueries: cachedQueries, currentQuery: gridFilter === null || gridFilter === void 0 ? void 0 : gridFilter.Expression, onSelect: (query) => runQuery(query), setGridFilterExpression: (query) => setGridFilterExpression(query) }));
|
|
84
88
|
const columnsDropdown = (React.createElement(DropdownButton_1.default, { disabled: disabled, accessLevel: gridFilterAccessLevel, variant: "text", items: availableColumns, marginRight: 1, tooltip: "Pick Columns" },
|
|
85
89
|
React.createElement(icons_1.Icon, { name: 'list' })));
|
|
@@ -63,7 +63,7 @@ const useGridFilterExpressionEditor = () => {
|
|
|
63
63
|
const runQuery = (newExpression = expression) => {
|
|
64
64
|
if (StringExtensions_1.default.IsNullOrEmpty(newExpression) &&
|
|
65
65
|
StringExtensions_1.default.IsNotNullOrEmpty(gridFilter === null || gridFilter === void 0 ? void 0 : gridFilter.Expression)) {
|
|
66
|
-
// user pressed enter key with an empty input => clear existing
|
|
66
|
+
// user pressed enter key with an empty input => clear existing expression
|
|
67
67
|
adaptable.api.gridFilterApi.setGridFilterExpression('');
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
@@ -13,8 +13,8 @@ const AdaptableObjectCollection_1 = require("../../Components/AdaptableObjectCol
|
|
|
13
13
|
const AdaptableObjectRow_1 = require("../../Components/AdaptableObjectRow");
|
|
14
14
|
const PopupPanel_1 = require("../../Components/Popups/AdaptablePopup/PopupPanel");
|
|
15
15
|
const AdaptableObjectsSummary_1 = require("./AdaptableObjectsSummary");
|
|
16
|
-
const
|
|
17
|
-
const version =
|
|
16
|
+
const EnvVars_1 = require("../../../EnvVars");
|
|
17
|
+
const version = EnvVars_1.ADAPTABLE_VERSION;
|
|
18
18
|
const GridInfoPopup = (props) => {
|
|
19
19
|
const CreateGridSummaries = (colItems) => {
|
|
20
20
|
var _a;
|
|
@@ -43,7 +43,6 @@ const GridInfoPopup = (props) => {
|
|
|
43
43
|
returnRows.push(createReadOnlyColItem(colItems, 'Column Filters', columnFilterDescription));
|
|
44
44
|
returnRows.push(createReadOnlyColItem(colItems, 'Grid Filter', gridFilterExpression));
|
|
45
45
|
returnRows.push(createReadOnlyColItem(colItems, 'All Rows', props.api.gridApi.getRowCount()));
|
|
46
|
-
returnRows.push(createReadOnlyColItem(colItems, 'Visible Rows', props.api.gridApi.getVisibleRowCount()));
|
|
47
46
|
returnRows.push(createReadOnlyColItem(colItems, 'Selected Rows', selectedRowInfo === null || selectedRowInfo === void 0 ? void 0 : selectedRowInfo.gridRows.length));
|
|
48
47
|
returnRows.push(createReadOnlyColItem(colItems, 'Visible Selected Rows', selectedRowInfo === null || selectedRowInfo === void 0 ? void 0 : selectedRowInfo.gridRows.filter((gr) => { var _a; return ((_a = gr.rowNode) === null || _a === void 0 ? void 0 : _a.displayed) == true; }).length));
|
|
49
48
|
returnRows.push(createReadOnlyColItem(colItems, 'All Columns', props.api.gridApi.getColumnCount()));
|