@adaptabletools/adaptable-cjs 18.0.0-canary.1 → 18.0.0-canary.11
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 +11 -3
- package/base.css.map +1 -1
- package/index.css +88 -70
- package/index.css.map +1 -1
- package/package.json +4 -5
- package/src/AdaptableInterfaces/IAdaptable.d.ts +61 -108
- package/src/AdaptableOptions/AdaptableOptions.d.ts +12 -6
- package/src/AdaptableOptions/ColumnFilterOptions.d.ts +4 -4
- package/src/AdaptableOptions/ColumnOptions.d.ts +4 -2
- package/src/AdaptableOptions/{CommentsOptions.d.ts → CommentOptions.d.ts} +5 -5
- package/src/AdaptableOptions/MenuOptions.d.ts +1 -1
- package/src/AdaptableOptions/MenuOptions.js +2 -6
- package/src/AdaptableOptions/{NotesOptions.d.ts → NoteOptions.d.ts} +1 -1
- package/src/AdaptableOptions/UserInterfaceOptions.d.ts +17 -0
- package/src/Api/AdaptableApi.d.ts +5 -0
- package/src/Api/BulkUpdateApi.d.ts +0 -5
- package/src/Api/ConfigApi.d.ts +1 -1
- package/src/Api/Events/AdaptableReady.d.ts +3 -3
- package/src/Api/Events/GridDataChanged.d.ts +4 -4
- package/src/Api/GridApi.d.ts +18 -13
- package/src/Api/Implementation/ActionColumnApiImpl.d.ts +2 -0
- package/src/Api/Implementation/ActionColumnApiImpl.js +33 -0
- package/src/Api/Implementation/AdaptableApiImpl.d.ts +1 -0
- package/src/Api/Implementation/AdaptableApiImpl.js +3 -0
- package/src/Api/Implementation/ApiBase.d.ts +2 -1
- package/src/Api/Implementation/ApiBase.js +4 -1
- package/src/Api/Implementation/BulkUpdateApiImpl.d.ts +0 -1
- package/src/Api/Implementation/BulkUpdateApiImpl.js +0 -4
- package/src/Api/Implementation/CommentsApiImpl.d.ts +4 -0
- package/src/Api/Implementation/CommentsApiImpl.js +7 -1
- package/src/Api/Implementation/ConfigApiImpl.js +13 -5
- package/src/Api/Implementation/GridApiImpl.d.ts +4 -3
- package/src/Api/Implementation/GridApiImpl.js +33 -14
- package/src/Api/Implementation/LayoutApiImpl.d.ts +2 -0
- package/src/Api/Implementation/LayoutApiImpl.js +15 -0
- package/src/Api/Implementation/NotesApiImpl.d.ts +6 -4
- package/src/Api/Implementation/NotesApiImpl.js +9 -8
- package/src/Api/Implementation/OptionsApiImpl.d.ts +2 -1
- package/src/Api/Implementation/OptionsApiImpl.js +12 -2
- 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/Internal/ActionRowInternalApi.d.ts +5 -1
- package/src/Api/Internal/ActionRowInternalApi.js +107 -0
- package/src/Api/Internal/AdaptableInternalApi.d.ts +3 -4
- package/src/Api/Internal/AdaptableInternalApi.js +10 -8
- package/src/Api/Internal/CalculatedColumnInternalApi.d.ts +2 -0
- package/src/Api/Internal/CalculatedColumnInternalApi.js +71 -0
- package/src/Api/Internal/ColumnFilterInternalApi.d.ts +1 -0
- package/src/Api/Internal/ColumnFilterInternalApi.js +11 -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/FormatColumnInternalApi.js +3 -2
- package/src/Api/Internal/FreeTextColumnInternalApi.d.ts +2 -0
- package/src/Api/Internal/FreeTextColumnInternalApi.js +60 -0
- package/src/Api/Internal/GridFilterInternalApi.js +1 -1
- package/src/Api/Internal/GridInternalApi.d.ts +21 -3
- package/src/Api/Internal/GridInternalApi.js +126 -7
- package/src/Api/Internal/NotesInternalApi.d.ts +4 -0
- package/src/Api/Internal/NotesInternalApi.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 +11 -0
- package/src/Api/OptionsApi.d.ts +5 -1
- package/src/Api/ScopeApi.d.ts +10 -0
- package/src/EnvVars.d.ts +3 -0
- package/src/EnvVars.js +8 -0
- 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 +8 -0
- package/src/PredefinedConfig/Common/RowSummary.d.ts +7 -0
- package/src/PredefinedConfig/Common/RowSummary.js +4 -0
- package/src/PredefinedConfig/LayoutState.d.ts +5 -0
- package/src/PredefinedConfig/NotesState.d.ts +10 -20
- package/src/PredefinedConfig/PredefinedConfig.d.ts +1 -1
- package/src/PredefinedConfig/SystemState.d.ts +7 -0
- package/src/Redux/ActionsReducers/LayoutRedux.d.ts +9 -0
- package/src/Redux/ActionsReducers/LayoutRedux.js +22 -1
- package/src/Redux/ActionsReducers/NotesRedux.d.ts +3 -4
- package/src/Redux/ActionsReducers/NotesRedux.js +10 -8
- package/src/Redux/ActionsReducers/SystemRedux.d.ts +5 -0
- package/src/Redux/ActionsReducers/SystemRedux.js +16 -3
- package/src/Redux/Store/AdaptableStore.d.ts +4 -6
- package/src/Redux/Store/AdaptableStore.js +33 -50
- package/src/Redux/Store/Interface/IAdaptableStore.d.ts +8 -2
- package/src/Strategy/AdaptableModuleBase.d.ts +2 -3
- package/src/Strategy/AdaptableModuleBase.js +4 -7
- package/src/Strategy/AlertModule.d.ts +1 -2
- package/src/Strategy/AlertModule.js +2 -55
- package/src/Strategy/CalculatedColumnModule.d.ts +2 -3
- package/src/Strategy/CalculatedColumnModule.js +5 -25
- package/src/Strategy/CellSummaryModule.d.ts +1 -0
- package/src/Strategy/CellSummaryModule.js +50 -21
- package/src/Strategy/ChartingModule.d.ts +0 -1
- package/src/Strategy/ChartingModule.js +2 -22
- package/src/Strategy/ColumnFilterModule.d.ts +1 -2
- package/src/Strategy/ColumnFilterModule.js +1 -64
- package/src/Strategy/CommentsModule.d.ts +1 -0
- package/src/Strategy/CommentsModule.js +5 -1
- package/src/Strategy/CustomSortModule.js +1 -1
- package/src/Strategy/DashboardModule.d.ts +1 -2
- package/src/Strategy/DashboardModule.js +1 -8
- package/src/Strategy/DataChangeHistoryModule.d.ts +1 -0
- package/src/Strategy/DataChangeHistoryModule.js +3 -1
- package/src/Strategy/DataSetModule.d.ts +1 -1
- package/src/Strategy/DataSetModule.js +1 -1
- package/src/Strategy/FlashingCellModule.d.ts +1 -2
- package/src/Strategy/FlashingCellModule.js +2 -15
- package/src/Strategy/FormatColumnModule.d.ts +0 -2
- package/src/Strategy/FormatColumnModule.js +0 -47
- package/src/Strategy/FreeTextColumnModule.d.ts +0 -1
- package/src/Strategy/FreeTextColumnModule.js +0 -30
- package/src/Strategy/GridFilterModule.d.ts +0 -1
- package/src/Strategy/GridFilterModule.js +0 -37
- package/src/Strategy/Interface/IModule.d.ts +0 -1
- package/src/Strategy/LayoutModule.d.ts +8 -3
- package/src/Strategy/LayoutModule.js +108 -53
- package/src/Strategy/NamedQueryModule.d.ts +0 -1
- package/src/Strategy/NamedQueryModule.js +0 -19
- package/src/Strategy/NotesModule.js +3 -4
- package/src/Strategy/PlusMinusModule.d.ts +1 -1
- package/src/Strategy/PlusMinusModule.js +1 -1
- package/src/Strategy/ScheduleModule.d.ts +1 -1
- package/src/Strategy/ScheduleModule.js +1 -1
- package/src/Strategy/ShortcutModule.d.ts +1 -1
- package/src/Strategy/ShortcutModule.js +1 -1
- package/src/Strategy/StyledColumnModule.d.ts +0 -1
- package/src/Strategy/StyledColumnModule.js +0 -21
- 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/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/Defaults/DefaultSettingsPanel.js +5 -4
- package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +2 -1
- package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +294 -0
- package/src/Utilities/ExpressionFunctions/scalarAggregationHelper.js +1 -1
- 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/ObjectFactory.js +6 -6
- package/src/Utilities/Services/AggregatedScalarLiveValue.d.ts +3 -2
- package/src/Utilities/Services/AggregatedScalarLiveValue.js +14 -9
- package/src/Utilities/Services/CellPopupService.js +0 -1
- package/src/Utilities/Services/Interface/IQueryLanguageService.d.ts +1 -1
- 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/QueryLanguageService.d.ts +1 -1
- package/src/Utilities/Services/QueryLanguageService.js +2 -1
- package/src/Utilities/Services/RowEditService.d.ts +3 -2
- package/src/Utilities/Services/RowEditService.js +3 -1
- package/src/Utilities/Services/SummaryService.d.ts +19 -0
- package/src/Utilities/Services/SummaryService.js +33 -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/AdaptableWizardView/AdaptableConfigurationDialog/ConfigurationWizard.js +2 -2
- package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.d.ts +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnWizard.js +2 -2
- package/src/View/CalculatedColumn/utils.d.ts +1 -1
- package/src/View/CellSummary/CellSummaryPopup.js +1 -1
- package/src/View/Comments/CommentsPopup.js +12 -8
- package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
- 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 +1 -1
- 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 +1 -1
- package/src/View/CustomSort/CustomSortSummary.js +1 -1
- package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +8 -8
- package/src/View/GridFilter/GridFilterViewPanel.js +7 -3
- package/src/View/GridInfo/GridInfoPopup/GridInfoPopup.js +2 -3
- package/src/View/Layout/TransposedPopup.d.ts +3 -0
- package/src/View/Layout/TransposedPopup.js +199 -0
- package/src/View/Layout/Wizard/LayoutWizard.js +1 -1
- package/src/View/License/LicenseWatermark.js +1 -66
- package/src/View/Notes/NotesPopup.js +8 -10
- 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 +351 -0
- package/src/agGrid/AdaptableAgGrid.js +3941 -0
- package/src/agGrid/AdaptableLogger.js +78 -13
- package/src/agGrid/AgGridAdapter.d.ts +62 -0
- package/src/agGrid/AgGridAdapter.js +582 -0
- package/src/agGrid/AgGridColumnAdapter.d.ts +56 -0
- package/src/agGrid/AgGridColumnAdapter.js +829 -0
- package/src/agGrid/AgGridMenuAdapter.d.ts +28 -0
- package/src/agGrid/AgGridMenuAdapter.js +276 -0
- package/src/agGrid/AgGridOptionsService.d.ts +12 -0
- package/src/agGrid/AgGridOptionsService.js +58 -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} +73 -10
- package/src/agGrid/editors/AdaptableDateEditor/index.js +2 -2
- package/src/agGrid/editors/AdaptableNumberEditor/index.js +2 -2
- package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
- package/src/components/Datepicker/index.d.ts +1 -1
- package/src/components/InfiniteTable/index.js +2 -2
- package/src/components/Input/index.d.ts +1 -1
- 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 +2 -0
- package/src/components/Select/Select.js +2 -2
- package/src/components/icons/index.js +2 -0
- 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 +74 -11
- 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/types.d.ts +5 -0
- package/src/types.d.ts +7 -3
- package/tsconfig.cjs.tsbuildinfo +1 -1
- package/src/Utilities/Defaults/DefaultAdaptableOptions.d.ts +0 -2
- package/src/Utilities/Services/Interface/IRowEditService.d.ts +0 -3
- package/src/Utilities/Services/Interface/IRowEditService.js +0 -2
- 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/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
|
@@ -10,6 +10,7 @@ const CellSummaryStatusPanel_1 = require("../View/CellSummary/CellSummaryStatusP
|
|
|
10
10
|
class CellSummaryModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
11
11
|
constructor(api) {
|
|
12
12
|
super(ModuleConstants.CellSummaryModuleId, ModuleConstants.CellSummaryFriendlyName, 'cells', 'CellSummaryPopup', 'See summary information on a group of cells using multiple summary operations', api);
|
|
13
|
+
this.cachedCellSummary = new WeakMap();
|
|
13
14
|
}
|
|
14
15
|
getViewAccessLevel() {
|
|
15
16
|
return 'Full';
|
|
@@ -46,6 +47,9 @@ class CellSummaryModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
46
47
|
});
|
|
47
48
|
}
|
|
48
49
|
createCellSummary(selectedCellInfo) {
|
|
50
|
+
if (this.cachedCellSummary.has(selectedCellInfo)) {
|
|
51
|
+
return this.cachedCellSummary.get(selectedCellInfo);
|
|
52
|
+
}
|
|
49
53
|
let selectedCellSummary;
|
|
50
54
|
if (selectedCellInfo && ArrayExtensions_1.ArrayExtensions.IsNotNullOrEmpty(selectedCellInfo.columns)) {
|
|
51
55
|
let numericValues = [];
|
|
@@ -74,28 +78,52 @@ class CellSummaryModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
74
78
|
// copying so that we keep the order - needed for others
|
|
75
79
|
const newNumericValues = [...numericValues];
|
|
76
80
|
let hasNumericColumns = numericValues.length > 0;
|
|
77
|
-
|
|
81
|
+
if (selectedCellInfo.columns.length > 1) {
|
|
82
|
+
return {
|
|
83
|
+
Sum: null,
|
|
84
|
+
Average: null,
|
|
85
|
+
Median: null,
|
|
86
|
+
Mode: null,
|
|
87
|
+
Distinct: null,
|
|
88
|
+
Max: null,
|
|
89
|
+
Min: null,
|
|
90
|
+
Count: null,
|
|
91
|
+
Std_Deviation: null,
|
|
92
|
+
Only: '',
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
const handleExpression = (functionName) => {
|
|
96
|
+
const columnId = selectedCellInfo.columns[0].columnId;
|
|
97
|
+
const rowNodes = selectedCellInfo.gridCells.map((gc) => gc.rowNode);
|
|
98
|
+
return this.api.internalApi.getAdaptableInstance().SummaryService.evaluateExpressionValue({
|
|
99
|
+
expression: {
|
|
100
|
+
function: functionName,
|
|
101
|
+
},
|
|
102
|
+
columnId: columnId,
|
|
103
|
+
getRowNodes: () => rowNodes,
|
|
104
|
+
}, ModuleConstants.CellSummaryModuleId);
|
|
105
|
+
};
|
|
106
|
+
const sumValue = hasNumericColumns ? handleExpression('SUM') : null;
|
|
107
|
+
const avgValue = hasNumericColumns ? Helper_1.Helper.roundNumber(handleExpression('AVG'), 2) : null;
|
|
108
|
+
const modeValue = hasNumericColumns ? handleExpression('MODE') : null;
|
|
109
|
+
const medianValue = hasNumericColumns ? handleExpression('MEDIAN') : null;
|
|
110
|
+
const distinctValue = handleExpression('DISTINCT');
|
|
111
|
+
const maxValue = hasNumericColumns ? handleExpression('MAX') : null;
|
|
112
|
+
const minValue = hasNumericColumns ? handleExpression('MIN') : null;
|
|
113
|
+
const stdDeviation = hasNumericColumns
|
|
114
|
+
? Helper_1.Helper.roundNumberTo4dp(handleExpression('STD_DEVIATION'))
|
|
115
|
+
: null;
|
|
78
116
|
selectedCellSummary = {
|
|
79
|
-
Sum:
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
? Helper_1.Helper.roundNumberTo4dp(Helper_1.Helper.medianNumberArray(numericValues))
|
|
87
|
-
: undefined,
|
|
88
|
-
Mode: hasNumericColumns
|
|
89
|
-
? Helper_1.Helper.roundNumberTo4dp(Helper_1.Helper.modeNumberArray(numericValues))
|
|
90
|
-
: undefined,
|
|
91
|
-
Distinct: distinctCount,
|
|
92
|
-
Max: hasNumericColumns ? Helper_1.Helper.roundNumberTo4dp(Math.max(...numericValues)) : undefined,
|
|
93
|
-
Min: hasNumericColumns ? Helper_1.Helper.roundNumberTo4dp(Math.min(...numericValues)) : undefined,
|
|
117
|
+
Sum: sumValue,
|
|
118
|
+
Average: avgValue,
|
|
119
|
+
Median: medianValue,
|
|
120
|
+
Mode: modeValue,
|
|
121
|
+
Distinct: distinctValue,
|
|
122
|
+
Max: maxValue,
|
|
123
|
+
Min: minValue,
|
|
94
124
|
Count: allValues.length,
|
|
95
|
-
Std_Deviation:
|
|
96
|
-
|
|
97
|
-
: undefined,
|
|
98
|
-
Only: distinctCount == 1 ? JSON.stringify(allValues[0]) : '',
|
|
125
|
+
Std_Deviation: stdDeviation,
|
|
126
|
+
Only: distinctValue == 1 ? JSON.stringify(allValues[0]) : '',
|
|
99
127
|
};
|
|
100
128
|
numericValues = [...newNumericValues];
|
|
101
129
|
const operationDefinitions = this.api.cellSummaryApi.getCellSummaryOperationDefinitions();
|
|
@@ -104,7 +132,7 @@ class CellSummaryModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
104
132
|
if (operation.operationFunction) {
|
|
105
133
|
const cellSummaryOperationContext = {
|
|
106
134
|
selectedCellInfo,
|
|
107
|
-
distinctCount,
|
|
135
|
+
distinctCount: distinctValue,
|
|
108
136
|
allValues,
|
|
109
137
|
numericValues,
|
|
110
138
|
numericColumns,
|
|
@@ -116,6 +144,7 @@ class CellSummaryModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
116
144
|
}
|
|
117
145
|
});
|
|
118
146
|
}
|
|
147
|
+
this.cachedCellSummary.set(selectedCellInfo, selectedCellSummary);
|
|
119
148
|
return selectedCellSummary;
|
|
120
149
|
}
|
|
121
150
|
getViewProperties() {
|
|
@@ -5,7 +5,6 @@ import { ChartDefinition } from '../types';
|
|
|
5
5
|
import { ExternalChartDefinition } from '../PredefinedConfig/ChartingState';
|
|
6
6
|
export declare class ChartingModule extends AdaptableModuleBase implements IModule {
|
|
7
7
|
constructor(api: AdaptableApi);
|
|
8
|
-
updateOldConfig(): void;
|
|
9
8
|
isModuleAvailable(): boolean;
|
|
10
9
|
getModuleAdaptableObjects(): (ChartDefinition | ExternalChartDefinition)[];
|
|
11
10
|
toViewAll(): AdaptableObjectView[];
|
|
@@ -10,34 +10,14 @@ const ChartingRedux = tslib_1.__importStar(require("../Redux/ActionsReducers/Cha
|
|
|
10
10
|
const ChartingStatusBarPopover_1 = require("../View/Charting/ChartingStatusBarPopover");
|
|
11
11
|
const getObjectTagsViewItems_1 = require("./Utilities/getObjectTagsViewItems");
|
|
12
12
|
const ChartingState_1 = require("../PredefinedConfig/ChartingState");
|
|
13
|
+
const Helper_1 = tslib_1.__importDefault(require("../Utilities/Helpers/Helper"));
|
|
13
14
|
class ChartingModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
14
15
|
constructor(api) {
|
|
15
16
|
super(ModuleConstants.ChartingModuleId, ModuleConstants.ChartingFriendlyName, 'chart', 'ChartPopup', 'Create AG Grid Charts in order to see Adaptable Data visually', api);
|
|
16
17
|
}
|
|
17
|
-
updateOldConfig() {
|
|
18
|
-
const allChartDefinitions = this.api.chartingApi.getChartDefinitions();
|
|
19
|
-
const chartDefinitionsToUpdate = allChartDefinitions
|
|
20
|
-
.filter((chartDefinition) => 'model' in chartDefinition || !('Name' in chartDefinition))
|
|
21
|
-
.map((charDefinition) => {
|
|
22
|
-
const newChartDefinition = Object.assign({}, charDefinition);
|
|
23
|
-
if ('model' in newChartDefinition) {
|
|
24
|
-
newChartDefinition.Model = charDefinition.model;
|
|
25
|
-
delete newChartDefinition.model;
|
|
26
|
-
}
|
|
27
|
-
if (!('Name' in newChartDefinition)) {
|
|
28
|
-
// default to chartId
|
|
29
|
-
// @ts-ignore possible because First iteration had no 'Name' and model was under 'model' key (lowercase)
|
|
30
|
-
newChartDefinition.Name = newChartDefinition.Model.chartId;
|
|
31
|
-
}
|
|
32
|
-
return newChartDefinition;
|
|
33
|
-
});
|
|
34
|
-
if (chartDefinitionsToUpdate.length > 0) {
|
|
35
|
-
chartDefinitionsToUpdate.forEach((chartDefinition) => this.api.chartingApi.editChartDefinition(chartDefinition));
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
18
|
isModuleAvailable() {
|
|
39
19
|
const agChartsAvailable = this.api.chartingApi.isChartingEnabled() && super.isModuleAvailable();
|
|
40
|
-
const externalChartsAvailable = this.api.optionsApi.getChartingOptions().externalChartingOptions;
|
|
20
|
+
const externalChartsAvailable = Helper_1.default.objectHasKeys(this.api.optionsApi.getChartingOptions().externalChartingOptions);
|
|
41
21
|
return Boolean(agChartsAvailable || externalChartsAvailable);
|
|
42
22
|
}
|
|
43
23
|
getModuleAdaptableObjects() {
|
|
@@ -12,8 +12,7 @@ export declare class ColumnFilterModule extends AdaptableModuleBase implements I
|
|
|
12
12
|
getModuleAdaptableObjects(): AdaptableObject[];
|
|
13
13
|
getExplicitlyReferencedColumnIds(columnFilter: ColumnFilter): string[];
|
|
14
14
|
hasNamedQueryReferences(): boolean;
|
|
15
|
-
|
|
16
|
-
handleAdaptableReady(): void;
|
|
15
|
+
onAdaptableReady(): void;
|
|
17
16
|
addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
|
|
18
17
|
addColumnMenuItems(column: AdaptableColumn): AdaptableMenuItem[] | undefined;
|
|
19
18
|
private getExistingColumnFilter;
|
|
@@ -32,70 +32,7 @@ class ColumnFilterModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
32
32
|
hasNamedQueryReferences() {
|
|
33
33
|
return false;
|
|
34
34
|
}
|
|
35
|
-
|
|
36
|
-
// Note: have updated Dashboard and Status bar but NOT Tool Panels
|
|
37
|
-
// Update Module Buttons
|
|
38
|
-
let updateModuleButtons = false;
|
|
39
|
-
let moduleButtons = this.api.dashboardApi.getModuleButtons();
|
|
40
|
-
if (!moduleButtons.includes('ColumnFilter')) {
|
|
41
|
-
moduleButtons = moduleButtons.map((moduleButton) => {
|
|
42
|
-
if (moduleButton == 'Filter') {
|
|
43
|
-
updateModuleButtons = true;
|
|
44
|
-
return 'ColumnFilter';
|
|
45
|
-
}
|
|
46
|
-
return moduleButton;
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
if (updateModuleButtons) {
|
|
50
|
-
this.api.dashboardApi.setModuleButtons(moduleButtons);
|
|
51
|
-
}
|
|
52
|
-
// Update Toolbars
|
|
53
|
-
let updateTabs = false;
|
|
54
|
-
const tabs = this.api.dashboardApi.getTabs().map((tab) => {
|
|
55
|
-
if (tab.Toolbars.includes('Filter') && !tab.Toolbars.includes('ColumnFilter')) {
|
|
56
|
-
updateTabs = true;
|
|
57
|
-
return Object.assign(Object.assign({}, tab), {
|
|
58
|
-
// replace with 'GridFilter'
|
|
59
|
-
Toolbars: tab.Toolbars.map((t) => (t == 'Filter' ? 'ColumnFilter' : t)) });
|
|
60
|
-
}
|
|
61
|
-
return tab;
|
|
62
|
-
});
|
|
63
|
-
if (updateTabs) {
|
|
64
|
-
this.api.dashboardApi.setTabs(tabs);
|
|
65
|
-
}
|
|
66
|
-
// - move pinned toolbars
|
|
67
|
-
let updatePinnedToolbars = false;
|
|
68
|
-
let pinnedToolbars = this.api.dashboardApi.getPinnedToolbars();
|
|
69
|
-
if (pinnedToolbars && !(pinnedToolbars === null || pinnedToolbars === void 0 ? void 0 : pinnedToolbars.includes('ColumnFilter'))) {
|
|
70
|
-
pinnedToolbars = pinnedToolbars.map((pinnedToolbar) => {
|
|
71
|
-
if (pinnedToolbar == 'Filter') {
|
|
72
|
-
updatePinnedToolbars = true;
|
|
73
|
-
return 'ColumnFilter';
|
|
74
|
-
}
|
|
75
|
-
return pinnedToolbar;
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
if (updatePinnedToolbars) {
|
|
79
|
-
this.api.dashboardApi.setPinnedToolbars(pinnedToolbars);
|
|
80
|
-
}
|
|
81
|
-
// Update Status Bar
|
|
82
|
-
let updateStatusBars = false;
|
|
83
|
-
const statusBars = this.api.statusBarApi
|
|
84
|
-
.getAdaptableStatusBars()
|
|
85
|
-
.map((panel) => {
|
|
86
|
-
return Object.assign(Object.assign({}, panel), { StatusBarPanels: panel.StatusBarPanels.map((panel) => {
|
|
87
|
-
if (panel === 'Filter') {
|
|
88
|
-
updateStatusBars = true;
|
|
89
|
-
return 'ColumnFilter';
|
|
90
|
-
}
|
|
91
|
-
return panel;
|
|
92
|
-
}) });
|
|
93
|
-
});
|
|
94
|
-
if (updateStatusBars) {
|
|
95
|
-
this.api.statusBarApi.setStatusBarPanels(statusBars);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
handleAdaptableReady() {
|
|
35
|
+
onAdaptableReady() {
|
|
99
36
|
if (this.api.optionsApi.getColumnFilterOptions().quickFilterOptions.showQuickFilter == false) {
|
|
100
37
|
this.api.columnFilterApi.hideQuickFilterBar();
|
|
101
38
|
}
|
|
@@ -9,6 +9,7 @@ import { IModule } from './Interface/IModule';
|
|
|
9
9
|
export declare class CommentsModule extends AdaptableModuleBase implements IModule {
|
|
10
10
|
private adaptable;
|
|
11
11
|
constructor(api: AdaptableApi);
|
|
12
|
+
onAdaptableReady(): void;
|
|
12
13
|
isModuleAvailable(): boolean;
|
|
13
14
|
private loadComments;
|
|
14
15
|
addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
|
|
@@ -13,7 +13,8 @@ class CommentsModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
13
13
|
constructor(api) {
|
|
14
14
|
super(ModuleConstants.CommentsModuleId, ModuleConstants.CommentsFriendlyName, 'comments', 'CommentsPopup', 'comments', api);
|
|
15
15
|
this.adaptable = api.internalApi.getAdaptableInstance();
|
|
16
|
-
|
|
16
|
+
}
|
|
17
|
+
onAdaptableReady() {
|
|
17
18
|
this.loadComments();
|
|
18
19
|
}
|
|
19
20
|
isModuleAvailable() {
|
|
@@ -58,6 +59,9 @@ class CommentsModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
58
59
|
ColumnId: menuContext.adaptableColumn.columnId,
|
|
59
60
|
};
|
|
60
61
|
const comments = this.adaptable.api.commentApi.getComments(cellAddress);
|
|
62
|
+
if (!this.api.commentApi.internalApi.areCommentsAvailable()) {
|
|
63
|
+
return items;
|
|
64
|
+
}
|
|
61
65
|
if (comments) {
|
|
62
66
|
items.push(this.createColumnMenuItemClickFunction('Remove Comments', this.moduleInfo.Glyph, () => {
|
|
63
67
|
this.api.commentApi.deleteCommentThread(cellAddress);
|
|
@@ -29,7 +29,7 @@ class CustomSortModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
29
29
|
.find((x) => x.ColumnId == column.columnId);
|
|
30
30
|
let label = customSort ? 'Edit ' : 'Create ';
|
|
31
31
|
// dont show a menu item if there is a custom sort that uses a comparer function
|
|
32
|
-
const columnSortComparer = this.api.customSortApi.internalApi.getCustomSortComparer(column);
|
|
32
|
+
const columnSortComparer = this.api.customSortApi.internalApi.getCustomSortComparer(column.columnId);
|
|
33
33
|
if (columnSortComparer) {
|
|
34
34
|
return undefined;
|
|
35
35
|
}
|
|
@@ -4,8 +4,7 @@ import { IModule } from './Interface/IModule';
|
|
|
4
4
|
import { AdaptableApi } from '../Api/AdaptableApi';
|
|
5
5
|
export declare class DashboardModule extends AdaptableModuleBase implements IModule {
|
|
6
6
|
constructor(api: AdaptableApi);
|
|
7
|
-
|
|
8
|
-
handleAdaptableReady(): void;
|
|
7
|
+
onAdaptableReady(): void;
|
|
9
8
|
addColumnMenuItems(): AdaptableMenuItem[] | undefined;
|
|
10
9
|
addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
|
|
11
10
|
private buildMenuItems;
|
|
@@ -9,14 +9,7 @@ class DashboardModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
9
9
|
constructor(api) {
|
|
10
10
|
super(ModuleConstants.DashboardModuleId, ModuleConstants.DashboardFriendlyName, 'dashboard', 'DashboardPopup', 'The Dashboard - usually placed above the Grid - is designed to provide quick access to commonly required AdapTable functionalty', api);
|
|
11
11
|
}
|
|
12
|
-
|
|
13
|
-
let dashboardState = this.api.dashboardApi.getDashboardState();
|
|
14
|
-
if (dashboardState.VisibleButtons) {
|
|
15
|
-
this.api.logWarn(`Updating Obsolete VisibleButtons Config for DashboardState: [${dashboardState.VisibleButtons}]`);
|
|
16
|
-
this.api.dashboardApi.setModuleButtons(dashboardState.VisibleButtons);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
handleAdaptableReady() {
|
|
12
|
+
onAdaptableReady() {
|
|
20
13
|
// we used to create a default tab here but we no longer do // this.api.internalApi.setDefaultDashboardTab();
|
|
21
14
|
// this handler reacts to the 'AdaptableReady' event,
|
|
22
15
|
// but so do all the other possible handlers of the 'DashboardChanged' event
|
|
@@ -3,6 +3,7 @@ import { AdaptableModuleView, IModule } from './Interface/IModule';
|
|
|
3
3
|
import { AdaptableApi } from '../Api/AdaptableApi';
|
|
4
4
|
export declare class DataChangeHistoryModule extends AdaptableModuleBase implements IModule {
|
|
5
5
|
constructor(api: AdaptableApi);
|
|
6
|
+
onAdaptableReady(): void;
|
|
6
7
|
isModuleAvailable(): boolean;
|
|
7
8
|
getPopupMaxWidth(): number;
|
|
8
9
|
hasNamedQueryReferences(): boolean;
|
|
@@ -10,6 +10,8 @@ const core_1 = require("ag-grid-community");
|
|
|
10
10
|
class DataChangeHistoryModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
11
11
|
constructor(api) {
|
|
12
12
|
super(ModuleConstants.DataChangeHistoryModuleId, ModuleConstants.DataChangeHistoryFriendlyName, 'target', 'DataChangeHistoryPopup', 'Provides an overview of all previous changes, giving the possibility to undo specific changes', api);
|
|
13
|
+
}
|
|
14
|
+
onAdaptableReady() {
|
|
13
15
|
this.api.internalApi
|
|
14
16
|
.getDataService()
|
|
15
17
|
.on('CellDataChanged', (cellDataChangedInfo) => {
|
|
@@ -24,7 +26,7 @@ class DataChangeHistoryModule extends AdaptableModuleBase_1.AdaptableModuleBase
|
|
|
24
26
|
const isAdaptableModuleAvailable = super.isModuleAvailable();
|
|
25
27
|
const isAgGridModuleAvailable = this.api.internalApi
|
|
26
28
|
.getAdaptableInstance()
|
|
27
|
-
.
|
|
29
|
+
.agGridAdapter.isModulePresent(core_1.ModuleNames.ClientSideRowModelModule);
|
|
28
30
|
if (isAdaptableModuleAvailable && !isAgGridModuleAvailable) {
|
|
29
31
|
this.api.logWarn(`Data Change History is NOT available due to missing required AG Grid module: ${core_1.ModuleNames.ClientSideRowModelModule}`);
|
|
30
32
|
}
|
|
@@ -5,7 +5,7 @@ import { AdaptableObject } from '../PredefinedConfig/Common/AdaptableObject';
|
|
|
5
5
|
import { DataSet } from '../AdaptableOptions/DataSetOptions';
|
|
6
6
|
export declare class DataSetModule extends AdaptableModuleBase implements IModule {
|
|
7
7
|
constructor(api: AdaptableApi);
|
|
8
|
-
|
|
8
|
+
onAdaptableReady(): void;
|
|
9
9
|
getModuleAdaptableObjects(): AdaptableObject[];
|
|
10
10
|
hasNamedQueryReferences(): boolean;
|
|
11
11
|
toView(dataSet: DataSet): AdaptableObjectView;
|
|
@@ -12,7 +12,7 @@ class DataSetModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
12
12
|
constructor(api) {
|
|
13
13
|
super(ModuleConstants.DataSetModuleId, ModuleConstants.DataSetFriendlyName, 'data-set', 'DataSetPopup', 'Update the entire data source in AdapTable using pre-populated data sets', api);
|
|
14
14
|
}
|
|
15
|
-
|
|
15
|
+
onAdaptableReady() {
|
|
16
16
|
this.api.dataSetApi.getDataSets().forEach((ds) => {
|
|
17
17
|
if (!ds.Uuid) {
|
|
18
18
|
ds.Uuid = (0, Uuid_1.createUuid)();
|
|
@@ -9,8 +9,7 @@ import { AdaptableObject } from '../PredefinedConfig/Common/AdaptableObject';
|
|
|
9
9
|
import { FlashingCellDefinition } from '../PredefinedConfig/FlashingCellState';
|
|
10
10
|
export declare class FlashingCellModule extends AdaptableModuleBase implements IModule {
|
|
11
11
|
constructor(api: AdaptableApi);
|
|
12
|
-
|
|
13
|
-
private updateFlashingCellSingleToMultiplePredicates;
|
|
12
|
+
onAdaptableReady(): void;
|
|
14
13
|
getModuleAdaptableObjects(config?: {
|
|
15
14
|
includeLayoutNotAssociatedObjects?: boolean;
|
|
16
15
|
}): AdaptableObject[];
|
|
@@ -15,11 +15,11 @@ const FlashingCellWizard_1 = require("../View/FlashingCell/Wizard/FlashingCellWi
|
|
|
15
15
|
const getObjectTagsViewItems_1 = require("./Utilities/getObjectTagsViewItems");
|
|
16
16
|
const getFlashingTargetViewItems_1 = require("./Utilities/FlashingCell/getFlashingTargetViewItems");
|
|
17
17
|
const getFlashingCellStyleViewItems_1 = require("./Utilities/FlashingCell/getFlashingCellStyleViewItems");
|
|
18
|
-
const Helper_1 = require("../Utilities/Helpers/Helper");
|
|
19
|
-
const updateSingleToMultiplePredicates_1 = require("./Utilities/updateSingleToMultiplePredicates");
|
|
20
18
|
class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
21
19
|
constructor(api) {
|
|
22
20
|
super(ModuleConstants.FlashingCellModuleId, ModuleConstants.FlashingCellFriendlyName, 'lightning', 'FlashingAlert', 'Flash cells when they change', api);
|
|
21
|
+
}
|
|
22
|
+
onAdaptableReady() {
|
|
23
23
|
this.api.internalApi
|
|
24
24
|
.getDataService()
|
|
25
25
|
.on('CellDataChanged', (cellDataChangedInfo) => {
|
|
@@ -42,19 +42,6 @@ class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
42
42
|
this.handleCellDataChanged(cellDataChangedInfo);
|
|
43
43
|
});
|
|
44
44
|
}
|
|
45
|
-
updateOldConfig() {
|
|
46
|
-
this.updateFlashingCellSingleToMultiplePredicates();
|
|
47
|
-
}
|
|
48
|
-
updateFlashingCellSingleToMultiplePredicates() {
|
|
49
|
-
const flashingCells = this.api.flashingCellApi.getFlashingCellDefinitions();
|
|
50
|
-
flashingCells.forEach((flashingCell) => {
|
|
51
|
-
if (flashingCell.Rule && 'Predicate' in flashingCell.Rule) {
|
|
52
|
-
const preparedFlashingCell = (0, Helper_1.cloneObject)(flashingCell);
|
|
53
|
-
(0, updateSingleToMultiplePredicates_1.updateSingleToMultiplePredicates)(preparedFlashingCell.Rule);
|
|
54
|
-
this.api.flashingCellApi.editFlashingCellDefinition(preparedFlashingCell);
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
45
|
getModuleAdaptableObjects(config) {
|
|
59
46
|
return this.api.flashingCellApi.getFlashingCellDefinitions(config);
|
|
60
47
|
}
|
|
@@ -13,8 +13,6 @@ export declare class FormatColumnModule extends AdaptableModuleBase implements I
|
|
|
13
13
|
}): AdaptableObject[];
|
|
14
14
|
getExplicitlyReferencedColumnIds(formatColumn: FormatColumn): string[];
|
|
15
15
|
getReferencedNamedQueryNames(formatColumn: FormatColumn): string[];
|
|
16
|
-
updateOldConfig(): void;
|
|
17
|
-
private updateFormatColumnSingleToMultiplePredicates;
|
|
18
16
|
addColumnMenuItems(column: AdaptableColumn): AdaptableMenuItem[] | undefined;
|
|
19
17
|
getTeamSharingAction(): TeamSharingImportInfo<FormatColumn>;
|
|
20
18
|
toView(formatColumn: FormatColumn): AdaptableObjectView;
|
|
@@ -14,8 +14,6 @@ const getFormatColumnStyleViewItems_1 = require("./Utilities/FormatColumn/getFor
|
|
|
14
14
|
const getObjectTagsViewItems_1 = require("./Utilities/getObjectTagsViewItems");
|
|
15
15
|
const getRuleViewItems_1 = require("./Utilities/getRuleViewItems");
|
|
16
16
|
const MoveFormatColumn_1 = require("../View/FormatColumn/MoveFormatColumn");
|
|
17
|
-
const Helper_1 = require("../Utilities/Helpers/Helper");
|
|
18
|
-
const updateSingleToMultiplePredicates_1 = require("./Utilities/updateSingleToMultiplePredicates");
|
|
19
17
|
const ArrayExtensions_1 = tslib_1.__importDefault(require("../Utilities/Extensions/ArrayExtensions"));
|
|
20
18
|
class FormatColumnModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
21
19
|
constructor(api) {
|
|
@@ -43,51 +41,6 @@ class FormatColumnModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
43
41
|
}
|
|
44
42
|
return this.api.namedQueryApi.internalApi.getReferencedNamedQueryNames(queryExpression);
|
|
45
43
|
}
|
|
46
|
-
updateOldConfig() {
|
|
47
|
-
this.updateFormatColumnSingleToMultiplePredicates();
|
|
48
|
-
// update ConditionalStyle StatusBarPanel
|
|
49
|
-
const oldStatusBars = this.api.internalApi.getState().StatusBar.StatusBars;
|
|
50
|
-
let replaceConditionalStyleStatusBar = false;
|
|
51
|
-
const newStatusBars = oldStatusBars.map((statusBar) => (Object.assign(Object.assign({}, statusBar), { StatusBarPanels: [
|
|
52
|
-
...new Set(statusBar.StatusBarPanels.map((statusBarPanel) => {
|
|
53
|
-
if (statusBarPanel === 'ConditionalStyle') {
|
|
54
|
-
replaceConditionalStyleStatusBar = true;
|
|
55
|
-
return 'FormatColumn';
|
|
56
|
-
}
|
|
57
|
-
return statusBarPanel;
|
|
58
|
-
})),
|
|
59
|
-
] })));
|
|
60
|
-
if (replaceConditionalStyleStatusBar) {
|
|
61
|
-
this.api.statusBarApi.setStatusBarPanels(newStatusBars);
|
|
62
|
-
}
|
|
63
|
-
// update ConditionalStyle dashboard buttons
|
|
64
|
-
const dashboardModuleButtons = this.api.internalApi.getState().Dashboard.ModuleButtons;
|
|
65
|
-
if (dashboardModuleButtons.includes('ConditionalStyle')) {
|
|
66
|
-
dashboardModuleButtons[dashboardModuleButtons.indexOf('ConditionalStyle')] = 'FormatColumn';
|
|
67
|
-
const test2 = dashboardModuleButtons;
|
|
68
|
-
this.api.dashboardApi.setModuleButtons([
|
|
69
|
-
...new Set(dashboardModuleButtons),
|
|
70
|
-
]);
|
|
71
|
-
}
|
|
72
|
-
// update ConditionalStyle toolPanel buttons
|
|
73
|
-
const toolPanelModuleButtons = this.api.internalApi.getState().ToolPanel.ModuleButtons;
|
|
74
|
-
if (toolPanelModuleButtons.includes('ConditionalStyle')) {
|
|
75
|
-
toolPanelModuleButtons[toolPanelModuleButtons.indexOf('ConditionalStyle')] = 'FormatColumn';
|
|
76
|
-
this.api.toolPanelApi.setModuleButtons([
|
|
77
|
-
...new Set(dashboardModuleButtons),
|
|
78
|
-
]);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
updateFormatColumnSingleToMultiplePredicates() {
|
|
82
|
-
const formatColumns = this.api.formatColumnApi.getFormatColumns();
|
|
83
|
-
formatColumns.forEach((formatColumn) => {
|
|
84
|
-
if (formatColumn.Rule && 'Predicate' in formatColumn.Rule) {
|
|
85
|
-
const preparedFormatColumn = (0, Helper_1.cloneObject)(formatColumn);
|
|
86
|
-
(0, updateSingleToMultiplePredicates_1.updateSingleToMultiplePredicates)(preparedFormatColumn.Rule);
|
|
87
|
-
this.api.formatColumnApi.editFormatColumn(preparedFormatColumn);
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
44
|
addColumnMenuItems(column) {
|
|
92
45
|
let returnColumnMenuItems = [];
|
|
93
46
|
if (column && this.isModuleEditable() && !column.isSparkline) {
|
|
@@ -12,7 +12,6 @@ export declare class FreeTextColumnModule extends AdaptableModuleBase implements
|
|
|
12
12
|
isModuleAvailable(): boolean;
|
|
13
13
|
getModuleAdaptableObjects(): FreeTextColumn[];
|
|
14
14
|
hasNamedQueryReferences(): boolean;
|
|
15
|
-
updateOldConfig(): void;
|
|
16
15
|
addColumnMenuItems(column: AdaptableColumn): AdaptableMenuItem[] | undefined;
|
|
17
16
|
getTeamSharingAction(): TeamSharingImportInfo<FreeTextColumn>;
|
|
18
17
|
toView(freeTextColumn: FreeTextColumn): AdaptableObjectView;
|
|
@@ -21,36 +21,6 @@ class FreeTextColumnModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
21
21
|
hasNamedQueryReferences() {
|
|
22
22
|
return false;
|
|
23
23
|
}
|
|
24
|
-
updateOldConfig() {
|
|
25
|
-
// make sure all default to type string
|
|
26
|
-
const allFreeTextColumns = this.getModuleAdaptableObjects();
|
|
27
|
-
for (const freeTextColumn of allFreeTextColumns) {
|
|
28
|
-
const unTypedCol = freeTextColumn;
|
|
29
|
-
if (unTypedCol.DataType) {
|
|
30
|
-
const dataType = unTypedCol.DataType;
|
|
31
|
-
delete unTypedCol['DataType'];
|
|
32
|
-
if (!freeTextColumn.FreeTextColumnSettings) {
|
|
33
|
-
freeTextColumn.FreeTextColumnSettings = {
|
|
34
|
-
DataType: dataType,
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
freeTextColumn.FreeTextColumnSettings.DataType = dataType;
|
|
39
|
-
}
|
|
40
|
-
this.api.freeTextColumnApi.editFreeTextColumn(freeTextColumn);
|
|
41
|
-
}
|
|
42
|
-
if (!freeTextColumn.FreeTextColumnSettings) {
|
|
43
|
-
freeTextColumn.FreeTextColumnSettings = {
|
|
44
|
-
DataType: 'String',
|
|
45
|
-
};
|
|
46
|
-
this.api.freeTextColumnApi.editFreeTextColumn(freeTextColumn);
|
|
47
|
-
}
|
|
48
|
-
if (!freeTextColumn.FreeTextColumnSettings.DataType) {
|
|
49
|
-
freeTextColumn.FreeTextColumnSettings.DataType = 'String';
|
|
50
|
-
this.api.freeTextColumnApi.editFreeTextColumn(freeTextColumn);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
24
|
addColumnMenuItems(column) {
|
|
55
25
|
if (column && this.isModuleEditable()) {
|
|
56
26
|
if (this.api.freeTextColumnApi
|
|
@@ -3,6 +3,5 @@ import { AdaptableModuleView, IModule } from './Interface/IModule';
|
|
|
3
3
|
import { AdaptableModuleBase } from './AdaptableModuleBase';
|
|
4
4
|
export declare class GridFilterModule extends AdaptableModuleBase implements IModule {
|
|
5
5
|
constructor(api: AdaptableApi);
|
|
6
|
-
updateOldConfig(): void;
|
|
7
6
|
getViewProperties(): AdaptableModuleView;
|
|
8
7
|
}
|
|
@@ -6,47 +6,10 @@ const AdaptableModuleBase_1 = require("./AdaptableModuleBase");
|
|
|
6
6
|
const ModuleConstants = tslib_1.__importStar(require("../Utilities/Constants/ModuleConstants"));
|
|
7
7
|
const EditCurrentQueryButton_1 = require("../View/NamedQuery/EditCurrentQueryButton");
|
|
8
8
|
const GridFilterStatusbar_1 = require("../View/GridFilter/GridFilterStatusbar");
|
|
9
|
-
const StringExtensions_1 = tslib_1.__importDefault(require("../Utilities/Extensions/StringExtensions"));
|
|
10
9
|
class GridFilterModule extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
11
10
|
constructor(api) {
|
|
12
11
|
super(ModuleConstants.GridFilterModuleId, ModuleConstants.GridFilterFriendlyName, 'filter-list', 'GridFilterPopup', 'Controls the Grid Filter funtionality', api);
|
|
13
12
|
}
|
|
14
|
-
updateOldConfig() {
|
|
15
|
-
var _a, _b;
|
|
16
|
-
const oldQueryState = this.api.internalApi.getAdaptableState().Query;
|
|
17
|
-
// - move query to current layout
|
|
18
|
-
const expression = oldQueryState.CurrentQuery;
|
|
19
|
-
if (expression &&
|
|
20
|
-
StringExtensions_1.default.IsNullOrEmpty(this.api.gridFilterApi.getCurrentGridFilterExpression())) {
|
|
21
|
-
this.api.gridFilterApi.setGridFilterExpression(expression);
|
|
22
|
-
}
|
|
23
|
-
// - move dashboard/toolbar
|
|
24
|
-
let updateTabs = false;
|
|
25
|
-
const tabs = this.api.dashboardApi.getTabs().map((tab) => {
|
|
26
|
-
if (tab.Toolbars.includes('Query')) {
|
|
27
|
-
updateTabs = true;
|
|
28
|
-
return Object.assign(Object.assign({}, tab), {
|
|
29
|
-
// replace with 'GridFilter'
|
|
30
|
-
Toolbars: tab.Toolbars.map((t) => (t == 'Query' ? 'GridFilter' : t)) });
|
|
31
|
-
}
|
|
32
|
-
return tab;
|
|
33
|
-
});
|
|
34
|
-
if (updateTabs) {
|
|
35
|
-
this.api.dashboardApi.setTabs(tabs);
|
|
36
|
-
}
|
|
37
|
-
// - move pinned toolbars
|
|
38
|
-
let updatePinnedToolbars = false;
|
|
39
|
-
const pinnedToolbars = (_b = (_a = this.api.dashboardApi.getPinnedToolbars()) === null || _a === void 0 ? void 0 : _a.map) === null || _b === void 0 ? void 0 : _b.call(_a, (pinnedToolbar) => {
|
|
40
|
-
if (pinnedToolbar == 'Query') {
|
|
41
|
-
updatePinnedToolbars = true;
|
|
42
|
-
return 'GridFilter';
|
|
43
|
-
}
|
|
44
|
-
return pinnedToolbar;
|
|
45
|
-
});
|
|
46
|
-
if (updatePinnedToolbars) {
|
|
47
|
-
this.api.dashboardApi.setPinnedToolbars(pinnedToolbars);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
13
|
getViewProperties() {
|
|
51
14
|
return {
|
|
52
15
|
getStatusBarPanelProps: () => {
|
|
@@ -156,7 +156,6 @@ export interface IModule {
|
|
|
156
156
|
getModuleFreeTextColumnReferences(): FreeTextColumn[];
|
|
157
157
|
getPopupMaxWidth(): number | undefined;
|
|
158
158
|
canBeAssociatedWithLayouts(): boolean;
|
|
159
|
-
updateOldConfig(): void;
|
|
160
159
|
/**
|
|
161
160
|
* The following view options are used to render adaptable objects and
|
|
162
161
|
* module general views.
|
|
@@ -7,16 +7,16 @@ import { AdaptableColumn } from '../PredefinedConfig/Common/AdaptableColumn';
|
|
|
7
7
|
import { AdaptableApi } from '../Api/AdaptableApi';
|
|
8
8
|
import { AdaptableModuleView, IModule, TeamSharingReferences } from './Interface/IModule';
|
|
9
9
|
import { AdaptableObject } from '../PredefinedConfig/Common/AdaptableObject';
|
|
10
|
+
import { AggregatedScalarLiveValue } from '../Utilities/Services/AggregatedScalarLiveValue';
|
|
10
11
|
export declare class LayoutModule extends AdaptableModuleBase implements IModule {
|
|
12
|
+
cachedCellSummary: Map<string, AggregatedScalarLiveValue>;
|
|
11
13
|
protected LayoutState: LayoutState;
|
|
12
14
|
constructor(api: AdaptableApi);
|
|
13
|
-
|
|
14
|
-
private clearUnsuportedFeaturesFromLayout;
|
|
15
|
+
onAdaptableReady(): void;
|
|
15
16
|
getModuleAdaptableObjects(): AdaptableObject[];
|
|
16
17
|
getExplicitlyReferencedColumnIds(layout: Layout): string[];
|
|
17
18
|
getTeamSharingReferences(adaptableObject: AdaptableObject): TeamSharingReferences;
|
|
18
19
|
hasNamedQueryReferences(): boolean;
|
|
19
|
-
handleAdaptableReady(): void;
|
|
20
20
|
addColumnMenuItems(column: AdaptableColumn): AdaptableMenuItem[] | undefined;
|
|
21
21
|
addContextMenuItems(menuContext: ContextMenuContext): AdaptableMenuItem[] | undefined;
|
|
22
22
|
private createViewPivotItemsMenuItem;
|
|
@@ -44,4 +44,9 @@ export declare class LayoutModule extends AdaptableModuleBase implements IModule
|
|
|
44
44
|
getViewProperties(): AdaptableModuleView;
|
|
45
45
|
handleLayoutChange(): void;
|
|
46
46
|
getReferencedNamedQueryNames(layout: Layout): string[];
|
|
47
|
+
/**
|
|
48
|
+
*
|
|
49
|
+
* @param colId optional to evaluate only one column
|
|
50
|
+
*/
|
|
51
|
+
private evaluateRowSummary;
|
|
47
52
|
}
|