@adaptabletools/adaptable 22.0.0-canary.6 → 22.0.0-canary.8
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/index.css +63 -74
- package/index.css.map +1 -1
- package/package.json +1 -1
- package/src/AdaptableInterfaces/IAdaptable.d.ts +6 -6
- package/src/AdaptableOptions/ContainerOptions.d.ts +55 -15
- package/src/AdaptableState/AdaptableState.d.ts +2 -0
- package/src/AdaptableState/AlertState.d.ts +1 -2
- package/src/AdaptableState/Common/AdaptableColumnContext.d.ts +9 -0
- package/src/AdaptableState/Common/AdaptableObject.d.ts +4 -0
- package/src/AdaptableState/Common/AdaptableRowContext.d.ts +11 -0
- package/src/AdaptableState/Common/AdaptableRowContext.js +1 -0
- package/src/AdaptableState/Common/BaseContext.d.ts +2 -0
- package/src/AdaptableState/Common/DataUpdateConfig.d.ts +7 -0
- package/src/AdaptableState/Common/NamedObject.d.ts +10 -0
- package/src/AdaptableState/Common/NamedObject.js +1 -0
- package/src/AdaptableState/Common/RowSummary.d.ts +1 -1
- package/src/AdaptableState/Common/Schedule.d.ts +2 -2
- package/src/AdaptableState/Common/SuspendableObject.d.ts +10 -0
- package/src/AdaptableState/Common/SuspendableObject.js +1 -0
- package/src/AdaptableState/Common/TransposeConfig.d.ts +11 -9
- package/src/AdaptableState/CustomSortState.d.ts +1 -1
- package/src/AdaptableState/FormatColumnState.d.ts +1 -1
- package/src/AdaptableState/InitialState.d.ts +9 -0
- package/src/AdaptableState/LayoutState.d.ts +2 -3
- package/src/AdaptableState/PlusMinusState.d.ts +1 -1
- package/src/AdaptableState/ShortcutState.d.ts +1 -1
- package/src/AdaptableState/StyledColumnState.d.ts +1 -1
- package/src/AdaptableState/UserInterfaceState.d.ts +14 -0
- package/src/AdaptableState/UserInterfaceState.js +1 -0
- package/src/Api/AlertApi.d.ts +6 -0
- package/src/Api/CustomSortApi.d.ts +6 -0
- package/src/Api/FlashingCellApi.d.ts +6 -0
- package/src/Api/FormatColumnApi.d.ts +10 -4
- package/src/Api/GridApi.d.ts +5 -9
- package/src/Api/Implementation/AlertApiImpl.d.ts +1 -0
- package/src/Api/Implementation/AlertApiImpl.js +5 -6
- package/src/Api/Implementation/ChartingApiImpl.js +2 -2
- package/src/Api/Implementation/CustomSortApiImpl.d.ts +1 -0
- package/src/Api/Implementation/CustomSortApiImpl.js +3 -0
- package/src/Api/Implementation/FlashingCellApiImpl.d.ts +1 -0
- package/src/Api/Implementation/FlashingCellApiImpl.js +3 -0
- package/src/Api/Implementation/FormatColumnApiImpl.d.ts +6 -5
- package/src/Api/Implementation/FormatColumnApiImpl.js +6 -5
- package/src/Api/Implementation/GridApiImpl.d.ts +2 -6
- package/src/Api/Implementation/GridApiImpl.js +9 -9
- package/src/Api/Implementation/LayoutApiImpl.d.ts +1 -0
- package/src/Api/Implementation/LayoutApiImpl.js +4 -1
- package/src/Api/Implementation/NamedQueryApiImpl.js +2 -2
- package/src/Api/Implementation/PlusMinusApiImpl.d.ts +1 -0
- package/src/Api/Implementation/PlusMinusApiImpl.js +3 -0
- package/src/Api/Implementation/ScheduleApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ScheduleApiImpl.js +3 -0
- package/src/Api/Implementation/ShortcutApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ShortcutApiImpl.js +3 -0
- package/src/Api/Implementation/SystemStatusApiImpl.js +6 -9
- package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +5 -0
- package/src/Api/Implementation/UserInterfaceApiImpl.js +13 -0
- package/src/Api/Internal/CalculatedColumnInternalApi.js +2 -2
- package/src/Api/Internal/FreeTextColumnInternalApi.js +2 -2
- package/src/Api/Internal/LayoutInternalApi.js +1 -1
- package/src/Api/Internal/NamedQueryInternalApi.js +4 -4
- package/src/Api/LayoutApi.d.ts +6 -0
- package/src/Api/PlusMinusApi.d.ts +6 -0
- package/src/Api/ScheduleApi.d.ts +6 -0
- package/src/Api/ShortcutApi.d.ts +6 -0
- package/src/Api/UserInterfaceApi.d.ts +17 -0
- package/src/Redux/ActionsReducers/FormatColumnRedux.d.ts +8 -0
- package/src/Redux/ActionsReducers/FormatColumnRedux.js +15 -0
- package/src/Redux/ActionsReducers/UserInterfaceRedux.d.ts +11 -0
- package/src/Redux/ActionsReducers/UserInterfaceRedux.js +21 -0
- package/src/Redux/Store/AdaptableStore.js +45 -16
- package/src/Strategy/BulkUpdateModule.js +8 -8
- package/src/Strategy/PlusMinusModule.js +1 -1
- package/src/Strategy/QuickSearchModule.js +1 -1
- package/src/Strategy/SettingsPanelModule.js +11 -7
- package/src/Strategy/SmartEditModule.js +10 -10
- package/src/Utilities/Services/DataService.js +1 -1
- package/src/Utilities/Services/Fdc3Service.js +4 -4
- package/src/Utilities/Services/ModuleService.js +1 -3
- package/src/Utilities/Services/ThemeService.js +2 -6
- package/src/Utilities/Services/ValidationService.js +1 -1
- package/src/Utilities/logDeprecation.js +3 -4
- package/src/Utilities/resolveContainerElement.d.ts +23 -0
- package/src/Utilities/resolveContainerElement.js +44 -0
- package/src/View/Alert/Wizard/isValidAlertRules.js +1 -1
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +2 -2
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +2 -2
- package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +1 -1
- package/src/View/Charting/ChartingWizard/AgChargingWizard/SettingsSection.js +2 -2
- package/src/View/Charting/ChartingWizard/ExternalChartingWizard/SettingsSection.js +2 -2
- package/src/View/Components/CellPopup/index.js +1 -1
- package/src/View/Components/ColumnFilter/components/ColumnFilterInput.js +1 -1
- package/src/View/Components/EntityRulesEditor/Utilities.js +5 -5
- package/src/View/Components/NewScopeComponent.js +3 -3
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +2 -1
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupBody.js +1 -1
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.d.ts +1 -1
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +1 -8
- package/src/View/Components/Popups/AdaptablePopupConfirmation.js +1 -1
- package/src/View/Components/Popups/WindowPopups/WindowPopups.js +36 -1
- package/src/View/Components/WizardSummaryPage.js +1 -1
- package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +3 -3
- package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +1 -1
- package/src/View/Dashboard/CustomToolbar.js +1 -1
- package/src/View/DataChangeHistory/DataChangeHistoryViewPanel.js +1 -1
- package/src/View/FlashingCell/Wizard/isValidFlashingCellRules.js +1 -1
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.d.ts +1 -1
- package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +3 -3
- package/src/View/Layout/LayoutViewPanel.js +1 -1
- package/src/View/Layout/TransposedPopup.js +144 -138
- package/src/View/Layout/Wizard/sections/AggregationsSection.js +1 -1
- package/src/View/Layout/Wizard/sections/FilterSection.js +1 -1
- package/src/View/Layout/Wizard/sections/GridFilterSection.js +1 -1
- package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +3 -3
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +1 -1
- package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +2 -2
- package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +5 -5
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/ScheduleSettingsReminder.js +1 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/isSettingsValid.d.ts +1 -1
- package/src/View/Schedule/Wizard/ScheduleSettingsWizard/isSettingsValid.js +11 -11
- package/src/View/StateManagement/handleExportState.js +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +1 -1
- package/src/View/UIHelper.d.ts +2 -1
- package/src/View/UIHelper.js +8 -14
- package/src/agGrid/Adaptable.js +11 -11
- package/src/agGrid/AdaptableAgGrid.d.ts +12 -8
- package/src/agGrid/AdaptableAgGrid.js +150 -82
- package/src/agGrid/AgGridAdapter.js +8 -8
- package/src/agGrid/AgGridColumnAdapter.js +1 -1
- package/src/agGrid/AgGridExportAdapter.js +5 -5
- package/src/agGrid/AgGridFloatingFilterAdapter.js +1 -1
- package/src/agGrid/AgGridMenuAdapter.js +9 -1
- package/src/agGrid/AgGridThemeAdapter.js +2 -2
- package/src/components/CheckBox/index.js +1 -1
- package/src/components/Dropdown/Arrows.js +1 -1
- package/src/components/ExpressionEditor/DataTableEditor.js +3 -3
- package/src/components/FormLayout/index.js +1 -1
- package/src/components/OverlayTrigger/index.js +1 -1
- package/src/components/Select/Select.js +1 -1
- package/src/components/Tree/TreeDropdown/index.js +1 -1
- package/src/env.js +2 -2
- package/src/metamodel/adaptable.metamodel.d.ts +62 -0
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/migration/AdaptableUpgradeHelper.js +2 -2
- package/src/migration/VersionUpgrade17.js +4 -4
- package/src/migration/VersionUpgrade20.js +4 -4
- package/src/types.d.ts +5 -2
- package/themes/dark.css +30 -29
- package/themes/light.css +4 -2
- package/tsconfig.esm.tsbuildinfo +1 -1
|
@@ -7,6 +7,7 @@ import { createElement } from 'react';
|
|
|
7
7
|
import UIHelper from '../../View/UIHelper';
|
|
8
8
|
import StringExtensions from '../../Utilities/Extensions/StringExtensions';
|
|
9
9
|
import { SystemStatusInternalApi } from '../Internal/SystemStatusInternalApi';
|
|
10
|
+
import { resolveContainerElement } from '../../Utilities/resolveContainerElement';
|
|
10
11
|
export class SystemStatusApiImpl extends ApiBase {
|
|
11
12
|
systemStatusDiv;
|
|
12
13
|
internalApi;
|
|
@@ -27,16 +28,16 @@ export class SystemStatusApiImpl extends ApiBase {
|
|
|
27
28
|
}
|
|
28
29
|
switch (messageType) {
|
|
29
30
|
case 'Success':
|
|
30
|
-
alertApi.showAlertSuccess('System Status
|
|
31
|
+
alertApi.showAlertSuccess('System Status', fullMessage);
|
|
31
32
|
return;
|
|
32
33
|
case 'Info':
|
|
33
|
-
alertApi.showAlertInfo('System Status
|
|
34
|
+
alertApi.showAlertInfo('System Status', fullMessage);
|
|
34
35
|
return;
|
|
35
36
|
case 'Warning':
|
|
36
|
-
alertApi.showAlertWarning('System Status
|
|
37
|
+
alertApi.showAlertWarning('System Status', fullMessage);
|
|
37
38
|
return;
|
|
38
39
|
case 'Error':
|
|
39
|
-
alertApi.showAlertError('System Status
|
|
40
|
+
alertApi.showAlertError('System Status', fullMessage);
|
|
40
41
|
return;
|
|
41
42
|
}
|
|
42
43
|
}
|
|
@@ -48,11 +49,7 @@ export class SystemStatusApiImpl extends ApiBase {
|
|
|
48
49
|
}
|
|
49
50
|
displayMessageInDiv(statusMessage, statusFurtherInformation, messageType) {
|
|
50
51
|
if (!this.systemStatusDiv) {
|
|
51
|
-
|
|
52
|
-
if (optionsDiv) {
|
|
53
|
-
this.systemStatusDiv =
|
|
54
|
-
typeof optionsDiv === 'string' ? document.getElementById(optionsDiv) : optionsDiv;
|
|
55
|
-
}
|
|
52
|
+
this.systemStatusDiv = resolveContainerElement(this.getContainerOptions().systemStatusContainer, this.getAdaptableInternalApi().buildBaseContext());
|
|
56
53
|
}
|
|
57
54
|
if (this.systemStatusDiv) {
|
|
58
55
|
if (StringExtensions.IsNotNullOrEmpty(statusFurtherInformation)) {
|
|
@@ -6,6 +6,7 @@ import { UserInterfaceInternalApi } from '../Internal/UserInterfaceInternalApi';
|
|
|
6
6
|
import { UserInterfaceApi } from '../UserInterfaceApi';
|
|
7
7
|
import { ProgressIndicatorConfig } from '../../AdaptableState/Common/ProgressIndicatorConfig';
|
|
8
8
|
import { ApiBase } from './ApiBase';
|
|
9
|
+
import { UserInterfaceState } from '../../AdaptableState/UserInterfaceState';
|
|
9
10
|
export declare class UserInterfaceApiImpl extends ApiBase implements UserInterfaceApi {
|
|
10
11
|
internalApi: UserInterfaceInternalApi;
|
|
11
12
|
private showProgressIndicatorTimeout;
|
|
@@ -26,4 +27,8 @@ export declare class UserInterfaceApiImpl extends ApiBase implements UserInterfa
|
|
|
26
27
|
close: () => void;
|
|
27
28
|
};
|
|
28
29
|
closeCustomWindowPopup(windowId: string): void;
|
|
30
|
+
getUserInterfaceState(): UserInterfaceState;
|
|
31
|
+
isAdaptableUIVisible(): boolean;
|
|
32
|
+
hideAdaptableUI(): void;
|
|
33
|
+
showAdaptableUI(): void;
|
|
29
34
|
}
|
|
@@ -4,6 +4,7 @@ import { CUSTOM_WINDOW_FACTORY_ID } from '../../View/Components/Popups/WindowPop
|
|
|
4
4
|
import { UserInterfaceInternalApi } from '../Internal/UserInterfaceInternalApi';
|
|
5
5
|
import { ApiBase } from './ApiBase';
|
|
6
6
|
import { ProgressIndicatorHide, ProgressIndicatorShow, } from '../../Redux/ActionsReducers/PopupRedux';
|
|
7
|
+
import * as UserInterfaceRedux from '../../Redux/ActionsReducers/UserInterfaceRedux';
|
|
7
8
|
export class UserInterfaceApiImpl extends ApiBase {
|
|
8
9
|
internalApi;
|
|
9
10
|
showProgressIndicatorTimeout = null;
|
|
@@ -128,4 +129,16 @@ export class UserInterfaceApiImpl extends ApiBase {
|
|
|
128
129
|
closeCustomWindowPopup(windowId) {
|
|
129
130
|
this.dispatchAction(PopupRedux.PopupHideWindow(windowId));
|
|
130
131
|
}
|
|
132
|
+
getUserInterfaceState() {
|
|
133
|
+
return this.getAdaptableState().UserInterface;
|
|
134
|
+
}
|
|
135
|
+
isAdaptableUIVisible() {
|
|
136
|
+
return !(this.getUserInterfaceState().HideAdaptableUI ?? false);
|
|
137
|
+
}
|
|
138
|
+
hideAdaptableUI() {
|
|
139
|
+
this.dispatchAction(UserInterfaceRedux.UserInterfaceSetHideAdaptableUI(true));
|
|
140
|
+
}
|
|
141
|
+
showAdaptableUI() {
|
|
142
|
+
this.dispatchAction(UserInterfaceRedux.UserInterfaceSetHideAdaptableUI(false));
|
|
143
|
+
}
|
|
131
144
|
}
|
|
@@ -150,8 +150,8 @@ export class CalculatedColumnInternalApi extends ApiBase {
|
|
|
150
150
|
if (calculatedColumnReferences.length) {
|
|
151
151
|
const alert = {
|
|
152
152
|
alertType: 'generic',
|
|
153
|
-
header: '
|
|
154
|
-
message: `It is still referenced
|
|
153
|
+
header: 'Calculated Column',
|
|
154
|
+
message: `This Calculated Column cannot be deleted. It is still referenced by: ${calculatedColumnReferences.join(', ')}.`,
|
|
155
155
|
alertDefinition: CreateInternalAlertDefinitionForMessages('Error'),
|
|
156
156
|
};
|
|
157
157
|
this.getAlertApi().displayAdaptableAlertNotification(alert);
|
|
@@ -95,8 +95,8 @@ export class FreeTextColumnInternalApi extends ApiBase {
|
|
|
95
95
|
if (freeTextColumnReferences.length) {
|
|
96
96
|
const alert = {
|
|
97
97
|
alertType: 'generic',
|
|
98
|
-
header: '
|
|
99
|
-
message: `It is still referenced
|
|
98
|
+
header: 'Free Text Column',
|
|
99
|
+
message: `This Free Text Column cannot be deleted. It is still referenced by: ${freeTextColumnReferences.join(', ')}.`,
|
|
100
100
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
101
101
|
};
|
|
102
102
|
this.getAlertApi().displayAdaptableAlertNotification(alert);
|
|
@@ -92,7 +92,7 @@ export class LayoutInternalApi extends ApiBase {
|
|
|
92
92
|
}
|
|
93
93
|
setupRowSummaries() {
|
|
94
94
|
if (!this._adaptable.agGridModulesAdapter.isAgGridModuleRegistered('PinnedRowModule')) {
|
|
95
|
-
this.getAdaptableApi().consoleError(
|
|
95
|
+
this.getAdaptableApi().consoleError('Layout Row Summaries require the AG Grid "PinnedRowModule". Please register this module.');
|
|
96
96
|
return;
|
|
97
97
|
}
|
|
98
98
|
const rowSummaries = this.getAdaptableState().Internal?.RowSummary?.rowSummaries ?? [];
|
|
@@ -40,8 +40,8 @@ export class NamedQueryInternalApi extends ApiBase {
|
|
|
40
40
|
if (namedQueryReferences.length) {
|
|
41
41
|
const alert = {
|
|
42
42
|
alertType: 'generic',
|
|
43
|
-
header: 'Named Query
|
|
44
|
-
message: `It is still referenced
|
|
43
|
+
header: 'Named Query',
|
|
44
|
+
message: `This Named Query cannot be deleted. It is still referenced by: ${namedQueryReferences.join(', ')}.`,
|
|
45
45
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
46
46
|
};
|
|
47
47
|
this.getAlertApi().displayAdaptableAlertNotification(alert);
|
|
@@ -56,8 +56,8 @@ export class NamedQueryInternalApi extends ApiBase {
|
|
|
56
56
|
if (namedQueryReferences.length) {
|
|
57
57
|
const alert = {
|
|
58
58
|
alertType: 'generic',
|
|
59
|
-
header: 'Named Query
|
|
60
|
-
message: `It is currently referenced
|
|
59
|
+
header: 'Named Query',
|
|
60
|
+
message: `This Named Query cannot be renamed. It is currently referenced by: ${namedQueryReferences.join(', ')}.`,
|
|
61
61
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
62
62
|
};
|
|
63
63
|
this.getAlertApi().displayAdaptableAlertNotification(alert);
|
package/src/Api/LayoutApi.d.ts
CHANGED
|
@@ -57,6 +57,12 @@ export interface LayoutApi {
|
|
|
57
57
|
*/
|
|
58
58
|
getLayoutByName(layoutName: string): Layout | null;
|
|
59
59
|
/**
|
|
60
|
+
* Sets (i.e. selects) the Extended Layout
|
|
61
|
+
* @param extendedLayout Extended Layout to set
|
|
62
|
+
*/
|
|
63
|
+
setExtendedLayout(extendedLayout: ExtendedLayout): void;
|
|
64
|
+
/**
|
|
65
|
+
*
|
|
60
66
|
* Retrieves Layout with the given name
|
|
61
67
|
* @param layoutName Layout to retrieve
|
|
62
68
|
* @returns layout
|
|
@@ -20,6 +20,12 @@ export interface PlusMinusApi {
|
|
|
20
20
|
* @returns plus minus rule
|
|
21
21
|
*/
|
|
22
22
|
getPlusMinusById(id: PlusMinusNudge['Uuid'], config?: LayoutExtendedConfig): PlusMinusNudge;
|
|
23
|
+
/**
|
|
24
|
+
* Retrieves a Plus Minus Nudge by its Name
|
|
25
|
+
* @param name Name of the Plus Minus Nudge
|
|
26
|
+
* @returns Plus Minus Nudge or undefined if not found
|
|
27
|
+
*/
|
|
28
|
+
getPlusMinusNudgeByName(name: string): PlusMinusNudge | undefined;
|
|
23
29
|
/**
|
|
24
30
|
* Retrieves all active (not-suspended) Plus Minus Rules in Adaptable State with those with expressions first
|
|
25
31
|
* @returns plus minus rules
|
package/src/Api/ScheduleApi.d.ts
CHANGED
|
@@ -23,6 +23,12 @@ export interface ScheduleApi {
|
|
|
23
23
|
* @returns schedule
|
|
24
24
|
*/
|
|
25
25
|
getScheduleById(id: BaseSchedule['Uuid'], config?: LayoutExtendedConfig): BaseSchedule;
|
|
26
|
+
/**
|
|
27
|
+
* Retrieves a Schedule by its Name
|
|
28
|
+
* @param name Name of the Schedule
|
|
29
|
+
* @returns Schedule or undefined if not found
|
|
30
|
+
*/
|
|
31
|
+
getScheduleByName(name: string): BaseSchedule | undefined;
|
|
26
32
|
/**
|
|
27
33
|
* Retrieves all Reminder-based Schedules from Schedule State
|
|
28
34
|
* @returns reminder schedules
|
package/src/Api/ShortcutApi.d.ts
CHANGED
|
@@ -19,6 +19,12 @@ export interface ShortcutApi {
|
|
|
19
19
|
* @returns shortcut
|
|
20
20
|
*/
|
|
21
21
|
getShortcutById(id: Shortcut['Uuid'], config?: LayoutExtendedConfig): Shortcut;
|
|
22
|
+
/**
|
|
23
|
+
* Retrieves a Shortcut by its Name
|
|
24
|
+
* @param name Name of the Shortcut
|
|
25
|
+
* @returns Shortcut or undefined if not found
|
|
26
|
+
*/
|
|
27
|
+
getShortcutByName(name: string): Shortcut | undefined;
|
|
22
28
|
/**
|
|
23
29
|
* Gets all active (not-suspended) Shortcuts in Adaptable State
|
|
24
30
|
* @returns shortcuts
|
|
@@ -3,6 +3,7 @@ import { AdaptableObject, AdaptableObjectTag } from '../AdaptableState/Common/Ad
|
|
|
3
3
|
import { AdaptableModule, CustomIcon } from '../types';
|
|
4
4
|
import { CustomWindowConfig } from '../AdaptableState/Common/CustomWindowConfig';
|
|
5
5
|
import { ProgressIndicatorConfig } from '../AdaptableState/Common/ProgressIndicatorConfig';
|
|
6
|
+
import { UserInterfaceState } from '../AdaptableState/UserInterfaceState';
|
|
6
7
|
/**
|
|
7
8
|
* Functions relating to User Interface section of Adaptable State
|
|
8
9
|
*/
|
|
@@ -78,4 +79,20 @@ export interface UserInterfaceApi {
|
|
|
78
79
|
* @param windowId window popup id
|
|
79
80
|
*/
|
|
80
81
|
closeCustomWindowPopup(windowId: string): void;
|
|
82
|
+
/**
|
|
83
|
+
* Retrieves the current User Interface State
|
|
84
|
+
*/
|
|
85
|
+
getUserInterfaceState(): UserInterfaceState;
|
|
86
|
+
/**
|
|
87
|
+
* Returns whether the AdapTable UI is currently visible
|
|
88
|
+
*/
|
|
89
|
+
isAdaptableUIVisible(): boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Hides all AdapTable UI elements (Dashboard, Tool Panel, Status Bar, Column and Context Menus etc.)
|
|
92
|
+
*/
|
|
93
|
+
hideAdaptableUI(): void;
|
|
94
|
+
/**
|
|
95
|
+
* Shows all AdapTable UI elements (Dashboard, Tool Panel, Status Bar, Column and Context Menus etc.)
|
|
96
|
+
*/
|
|
97
|
+
showAdaptableUI(): void;
|
|
81
98
|
}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { FormatColumnState, FormatColumn } from '../../AdaptableState/FormatColumnState';
|
|
2
2
|
import * as Redux from 'redux';
|
|
3
|
+
/**
|
|
4
|
+
* @ReduxAction Many Format Columns have been added
|
|
5
|
+
*/
|
|
6
|
+
export declare const FORMAT_COLUMN_ADD_BATCH = "FORMAT_COLUMN_ADD_BATCH";
|
|
3
7
|
/**
|
|
4
8
|
* @ReduxAction A Format Column has been added
|
|
5
9
|
*/
|
|
@@ -44,6 +48,9 @@ export declare const FORMAT_COLUMN_UNSUSPEND = "FORMAT_COLUMN_UNSUSPEND";
|
|
|
44
48
|
* @ReduxAction FormatColumn Module is unsuspended, or activated
|
|
45
49
|
*/
|
|
46
50
|
export declare const FORMAT_COLUMN_UNSUSPEND_ALL = "FORMAT_COLUMN_UNSUSPEND_ALL";
|
|
51
|
+
export interface FormatColumnAddBatchAction extends Redux.Action {
|
|
52
|
+
formatColumns: FormatColumn[];
|
|
53
|
+
}
|
|
47
54
|
export interface FormatColumnAction extends Redux.Action {
|
|
48
55
|
formatColumn: FormatColumn;
|
|
49
56
|
}
|
|
@@ -70,6 +77,7 @@ export interface FormatColumnUnSuspendAllAction extends Redux.Action {
|
|
|
70
77
|
export interface FormatColumnReadyAction extends Redux.Action {
|
|
71
78
|
formatColumnState: FormatColumnState;
|
|
72
79
|
}
|
|
80
|
+
export declare const FormatColumnsAdd: (formatColumns: FormatColumn[]) => FormatColumnAddBatchAction;
|
|
73
81
|
export declare const FormatColumnAdd: (formatColumn: FormatColumn) => FormatColumnAddAction;
|
|
74
82
|
export declare const FormatColumnEdit: (formatColumn: FormatColumn) => FormatColumnEditAction;
|
|
75
83
|
export declare const FormatColumnDelete: (formatColumn: FormatColumn) => FormatColumnDeleteAction;
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { EMPTY_ARRAY } from '../../Utilities/Constants/GeneralConstants';
|
|
2
2
|
import AdaptableHelper from '../../Utilities/Helpers/AdaptableHelper';
|
|
3
3
|
import { changeIsSuspendInList, suspendAllInList, unsuspendAllInList } from './utils';
|
|
4
|
+
/**
|
|
5
|
+
* @ReduxAction Many Format Columns have been added
|
|
6
|
+
*/
|
|
7
|
+
export const FORMAT_COLUMN_ADD_BATCH = 'FORMAT_COLUMN_ADD_BATCH';
|
|
4
8
|
/**
|
|
5
9
|
* @ReduxAction A Format Column has been added
|
|
6
10
|
*/
|
|
@@ -45,6 +49,10 @@ export const FORMAT_COLUMN_UNSUSPEND = 'FORMAT_COLUMN_UNSUSPEND';
|
|
|
45
49
|
* @ReduxAction FormatColumn Module is unsuspended, or activated
|
|
46
50
|
*/
|
|
47
51
|
export const FORMAT_COLUMN_UNSUSPEND_ALL = 'FORMAT_COLUMN_UNSUSPEND_ALL';
|
|
52
|
+
export const FormatColumnsAdd = (formatColumns) => ({
|
|
53
|
+
type: FORMAT_COLUMN_ADD_BATCH,
|
|
54
|
+
formatColumns,
|
|
55
|
+
});
|
|
48
56
|
export const FormatColumnAdd = (formatColumn) => ({
|
|
49
57
|
type: FORMAT_COLUMN_ADD,
|
|
50
58
|
formatColumn,
|
|
@@ -92,6 +100,13 @@ const initialState = {
|
|
|
92
100
|
export const FormatColumnReducer = (state = initialState, action) => {
|
|
93
101
|
let formatColumns;
|
|
94
102
|
switch (action.type) {
|
|
103
|
+
case FORMAT_COLUMN_ADD_BATCH: {
|
|
104
|
+
const actionFormatColumns = action.formatColumns;
|
|
105
|
+
actionFormatColumns.forEach(AdaptableHelper.addAdaptableObjectPrimitives);
|
|
106
|
+
formatColumns = [].concat(state.FormatColumns);
|
|
107
|
+
formatColumns.push(...actionFormatColumns);
|
|
108
|
+
return { ...state, FormatColumns: formatColumns };
|
|
109
|
+
}
|
|
95
110
|
case FORMAT_COLUMN_ADD: {
|
|
96
111
|
const actionFormatColumn = action.formatColumn;
|
|
97
112
|
AdaptableHelper.addAdaptableObjectPrimitives(actionFormatColumn);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as Redux from 'redux';
|
|
2
|
+
import { UserInterfaceState } from '../../AdaptableState/UserInterfaceState';
|
|
3
|
+
/**
|
|
4
|
+
* @ReduxAction Sets whether all AdapTable UI elements are hidden
|
|
5
|
+
*/
|
|
6
|
+
export declare const USER_INTERFACE_SET_HIDE_ADAPTABLE_UI = "USER_INTERFACE_SET_HIDE_ADAPTABLE_UI";
|
|
7
|
+
export interface UserInterfaceSetHideAdaptableUIAction extends Redux.Action {
|
|
8
|
+
hideAdaptableUI: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare const UserInterfaceSetHideAdaptableUI: (hideAdaptableUI: boolean) => UserInterfaceSetHideAdaptableUIAction;
|
|
11
|
+
export declare const UserInterfaceReducer: Redux.Reducer<UserInterfaceState>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @ReduxAction Sets whether all AdapTable UI elements are hidden
|
|
3
|
+
*/
|
|
4
|
+
export const USER_INTERFACE_SET_HIDE_ADAPTABLE_UI = 'USER_INTERFACE_SET_HIDE_ADAPTABLE_UI';
|
|
5
|
+
export const UserInterfaceSetHideAdaptableUI = (hideAdaptableUI) => ({
|
|
6
|
+
type: USER_INTERFACE_SET_HIDE_ADAPTABLE_UI,
|
|
7
|
+
hideAdaptableUI,
|
|
8
|
+
});
|
|
9
|
+
const initialState = {
|
|
10
|
+
HideAdaptableUI: false,
|
|
11
|
+
};
|
|
12
|
+
export const UserInterfaceReducer = (state = initialState, action) => {
|
|
13
|
+
switch (action.type) {
|
|
14
|
+
case USER_INTERFACE_SET_HIDE_ADAPTABLE_UI:
|
|
15
|
+
return Object.assign({}, state, {
|
|
16
|
+
HideAdaptableUI: action.hideAdaptableUI,
|
|
17
|
+
});
|
|
18
|
+
default:
|
|
19
|
+
return state;
|
|
20
|
+
}
|
|
21
|
+
};
|
|
@@ -38,6 +38,7 @@ import * as InternalRedux from '../ActionsReducers/InternalRedux';
|
|
|
38
38
|
import * as TeamSharingRedux from '../ActionsReducers/TeamSharingRedux';
|
|
39
39
|
import * as ThemeRedux from '../ActionsReducers/ThemeRedux';
|
|
40
40
|
import * as ToolPanelRedux from '../ActionsReducers/ToolPanelRedux';
|
|
41
|
+
import * as UserInterfaceRedux from '../ActionsReducers/UserInterfaceRedux';
|
|
41
42
|
import { areAdaptableProfileTracksEnabled, getMarker } from '../../devTools';
|
|
42
43
|
import { isAdaptableSharedEntity, isCustomSharedEntity, } from '../../AdaptableState/TeamSharingState';
|
|
43
44
|
import { buildAdaptableStateFunctionConfig } from './buildAdaptableStateFunctionConfig';
|
|
@@ -121,6 +122,7 @@ export class AdaptableStore {
|
|
|
121
122
|
TeamSharing: TeamSharingRedux.TeamSharingReducer,
|
|
122
123
|
Theme: ThemeRedux.ThemeReducer,
|
|
123
124
|
ToolPanel: ToolPanelRedux.ToolPanelReducer,
|
|
125
|
+
UserInterface: UserInterfaceRedux.UserInterfaceReducer,
|
|
124
126
|
};
|
|
125
127
|
// allow plugins to participate in the root reducer
|
|
126
128
|
adaptable.forPlugins((plugin) => {
|
|
@@ -254,7 +256,7 @@ export class AdaptableStore {
|
|
|
254
256
|
// END STATE LOAD
|
|
255
257
|
this.loadStorageInProgress = false;
|
|
256
258
|
}, (e) => {
|
|
257
|
-
adaptable.api.consoleError('Failed to load
|
|
259
|
+
adaptable.api.consoleError('Failed to load saved Adaptable state.', e);
|
|
258
260
|
//for now i'm still initializing Adaptable even if loading state has failed....
|
|
259
261
|
//we may revisit that later
|
|
260
262
|
this.TheStore.dispatch(InitState());
|
|
@@ -263,7 +265,7 @@ export class AdaptableStore {
|
|
|
263
265
|
this.TheStore.dispatch(PopupRedux.PopupShowAlert({
|
|
264
266
|
alertType: 'generic',
|
|
265
267
|
header: 'Configuration',
|
|
266
|
-
message: '
|
|
268
|
+
message: 'Failed to load your configuration: ' + e,
|
|
267
269
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
268
270
|
}));
|
|
269
271
|
}));
|
|
@@ -581,6 +583,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
581
583
|
* Action: We set up all columns again
|
|
582
584
|
*/
|
|
583
585
|
case QuickSearchRedux.QUICK_SEARCH_SET_CELL_MATCHING_STYLE:
|
|
586
|
+
case FormatColumnRedux.FORMAT_COLUMN_ADD_BATCH:
|
|
584
587
|
case FormatColumnRedux.FORMAT_COLUMN_ADD:
|
|
585
588
|
case FormatColumnRedux.FORMAT_COLUMN_EDIT:
|
|
586
589
|
case FormatColumnRedux.FORMAT_COLUMN_DELETE:
|
|
@@ -991,6 +994,31 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
991
994
|
module.setUpScheduleJobs();
|
|
992
995
|
return returnAction;
|
|
993
996
|
}
|
|
997
|
+
/*******************
|
|
998
|
+
* USER INTERFACE ACTIONS
|
|
999
|
+
*******************/
|
|
1000
|
+
case UserInterfaceRedux.USER_INTERFACE_SET_HIDE_ADAPTABLE_UI: {
|
|
1001
|
+
const returnAction = next(action);
|
|
1002
|
+
const { hideAdaptableUI } = action;
|
|
1003
|
+
// Hide or show Dashboard
|
|
1004
|
+
middlewareAPI.dispatch(DashboardRedux.DashboardSetIsHidden(hideAdaptableUI));
|
|
1005
|
+
// Hide or show Adaptable ToolPanel in the AG Grid sidebar
|
|
1006
|
+
if (hideAdaptableUI) {
|
|
1007
|
+
adaptable.hideAdaptableToolPanel();
|
|
1008
|
+
}
|
|
1009
|
+
else {
|
|
1010
|
+
adaptable.showAdaptableToolPanel();
|
|
1011
|
+
}
|
|
1012
|
+
// Hide or show Adaptable StatusBar panels
|
|
1013
|
+
if (hideAdaptableUI) {
|
|
1014
|
+
adaptable.hideAdaptableStatusBar();
|
|
1015
|
+
}
|
|
1016
|
+
else {
|
|
1017
|
+
adaptable.showAdaptableStatusBar();
|
|
1018
|
+
}
|
|
1019
|
+
// Column and Context Menus are handled in the AgGridMenuAdapter
|
|
1020
|
+
return returnAction;
|
|
1021
|
+
}
|
|
994
1022
|
/*******************
|
|
995
1023
|
* DASHBOARD ACTIONS
|
|
996
1024
|
*******************/
|
|
@@ -1313,7 +1341,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1313
1341
|
const alert = {
|
|
1314
1342
|
alertType: 'generic',
|
|
1315
1343
|
header: 'Team Sharing',
|
|
1316
|
-
message:
|
|
1344
|
+
message: 'Failed to retrieve shared items: ' + error.message,
|
|
1317
1345
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1318
1346
|
};
|
|
1319
1347
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1383,7 +1411,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1383
1411
|
const alert = {
|
|
1384
1412
|
alertType: 'generic',
|
|
1385
1413
|
header: 'Team Sharing',
|
|
1386
|
-
message: `
|
|
1414
|
+
message: `Cannot share ${adaptable.ModuleService.getModuleFriendlyName(Module)} — an active share already exists: ${existingActiveSharedEntity.Description}.`,
|
|
1387
1415
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1388
1416
|
};
|
|
1389
1417
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1407,7 +1435,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1407
1435
|
const alert = {
|
|
1408
1436
|
alertType: 'generic',
|
|
1409
1437
|
header: 'Team Sharing',
|
|
1410
|
-
message: `${adaptable.ModuleService.getModuleFriendlyName(Module)}
|
|
1438
|
+
message: `${adaptable.ModuleService.getModuleFriendlyName(Module)} shared successfully.`,
|
|
1411
1439
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Success'),
|
|
1412
1440
|
};
|
|
1413
1441
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1418,7 +1446,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1418
1446
|
const alert = {
|
|
1419
1447
|
alertType: 'generic',
|
|
1420
1448
|
header: 'Team Sharing',
|
|
1421
|
-
message:
|
|
1449
|
+
message: 'Failed to share item: ' + error.message,
|
|
1422
1450
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1423
1451
|
};
|
|
1424
1452
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1443,10 +1471,11 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1443
1471
|
if (sharedEntityDependants.length) {
|
|
1444
1472
|
const alert = {
|
|
1445
1473
|
alertType: 'generic',
|
|
1446
|
-
header:
|
|
1447
|
-
message:
|
|
1448
|
-
|
|
1449
|
-
|
|
1474
|
+
header: 'Team Sharing',
|
|
1475
|
+
message: 'Cannot remove this shared item. It is referenced by: ' +
|
|
1476
|
+
sharedEntityDependants
|
|
1477
|
+
.map((sharedEntity) => `${adaptable.ModuleService.getModuleFriendlyName(sharedEntity.Module)} ${sharedEntity.Description}`)
|
|
1478
|
+
.join(', '),
|
|
1450
1479
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Warning'),
|
|
1451
1480
|
};
|
|
1452
1481
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1463,7 +1492,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1463
1492
|
const alert = {
|
|
1464
1493
|
alertType: 'generic',
|
|
1465
1494
|
header: 'Team Sharing',
|
|
1466
|
-
message:
|
|
1495
|
+
message: 'Failed to remove shared item: ' + error.message,
|
|
1467
1496
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1468
1497
|
};
|
|
1469
1498
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1485,8 +1514,8 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1485
1514
|
!adaptable.api.optionsApi.getTeamSharingOptions().suppressOverrideConfigWarning) {
|
|
1486
1515
|
let confirmation = {
|
|
1487
1516
|
CancelButtonText: 'Cancel Import',
|
|
1488
|
-
Header: '
|
|
1489
|
-
Msg: 'This import will overwrite an existing
|
|
1517
|
+
Header: 'Overwrite Existing Item',
|
|
1518
|
+
Msg: 'This import will overwrite an existing item in your configuration. Do you wish to continue?',
|
|
1490
1519
|
ConfirmButtonText: 'Import',
|
|
1491
1520
|
CancelAction: null,
|
|
1492
1521
|
ConfirmAction: processImportAction,
|
|
@@ -1532,7 +1561,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1532
1561
|
const alert = {
|
|
1533
1562
|
alertType: 'generic',
|
|
1534
1563
|
header: 'Team Sharing',
|
|
1535
|
-
message:
|
|
1564
|
+
message: 'Item imported successfully.',
|
|
1536
1565
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Success'),
|
|
1537
1566
|
};
|
|
1538
1567
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1572,7 +1601,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1572
1601
|
const alert = {
|
|
1573
1602
|
alertType: 'generic',
|
|
1574
1603
|
header: 'Team Sharing',
|
|
1575
|
-
message:
|
|
1604
|
+
message: 'Failed to update shared item: ' + error.message,
|
|
1576
1605
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1577
1606
|
};
|
|
1578
1607
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -1593,7 +1622,7 @@ const adaptableMiddleware = (adaptable) => (function(middlewareAPI) {
|
|
|
1593
1622
|
const alert = {
|
|
1594
1623
|
alertType: 'generic',
|
|
1595
1624
|
header: 'Team Sharing',
|
|
1596
|
-
message:
|
|
1625
|
+
message: 'Failed to check for updates: ' + error.message,
|
|
1597
1626
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
1598
1627
|
};
|
|
1599
1628
|
adaptable.api.alertApi.displayAdaptableAlertNotification(alert);
|
|
@@ -39,8 +39,8 @@ export class BulkUpdateModule extends AdaptableModuleBase {
|
|
|
39
39
|
IsValid: false,
|
|
40
40
|
Alert: {
|
|
41
41
|
alertType: 'generic',
|
|
42
|
-
header: 'Bulk Update
|
|
43
|
-
message: '
|
|
42
|
+
header: 'Bulk Update',
|
|
43
|
+
message: 'Editing is not available in Pivot Mode.',
|
|
44
44
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
45
45
|
},
|
|
46
46
|
};
|
|
@@ -50,8 +50,8 @@ export class BulkUpdateModule extends AdaptableModuleBase {
|
|
|
50
50
|
IsValid: false,
|
|
51
51
|
Alert: {
|
|
52
52
|
alertType: 'generic',
|
|
53
|
-
header: 'Bulk Update
|
|
54
|
-
message: 'No cells
|
|
53
|
+
header: 'Bulk Update',
|
|
54
|
+
message: 'No cells selected. Please select one or more cells to continue.',
|
|
55
55
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
56
56
|
},
|
|
57
57
|
};
|
|
@@ -61,8 +61,8 @@ export class BulkUpdateModule extends AdaptableModuleBase {
|
|
|
61
61
|
IsValid: false,
|
|
62
62
|
Alert: {
|
|
63
63
|
alertType: 'generic',
|
|
64
|
-
header: 'Bulk Update
|
|
65
|
-
message: 'Bulk Update
|
|
64
|
+
header: 'Bulk Update',
|
|
65
|
+
message: 'Bulk Update supports editing a single column at a time. Please adjust your selection.',
|
|
66
66
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
67
67
|
},
|
|
68
68
|
};
|
|
@@ -74,8 +74,8 @@ export class BulkUpdateModule extends AdaptableModuleBase {
|
|
|
74
74
|
IsValid: false,
|
|
75
75
|
Alert: {
|
|
76
76
|
alertType: 'generic',
|
|
77
|
-
header: 'Bulk Update
|
|
78
|
-
message: 'Bulk Update is not
|
|
77
|
+
header: 'Bulk Update',
|
|
78
|
+
message: 'Bulk Update is not available for read-only cells. Please adjust your selection.',
|
|
79
79
|
alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
|
|
80
80
|
},
|
|
81
81
|
};
|
|
@@ -186,7 +186,7 @@ export class PlusMinusModule extends AdaptableModuleBase {
|
|
|
186
186
|
failedMessages.push(failedMessage);
|
|
187
187
|
}
|
|
188
188
|
});
|
|
189
|
-
this.api.alertApi.showAlertError('
|
|
189
|
+
this.api.alertApi.showAlertError('Plus/Minus', 'One or more nudge values were rejected by validation rules: ' + failedMessages.toString());
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
192
|
getTeamSharingAction() {
|
|
@@ -24,7 +24,7 @@ export class QuickSearchModule extends AdaptableModuleBase {
|
|
|
24
24
|
// Check for AG Grid QuickFilterModule if running Filter After Quick Search
|
|
25
25
|
if (api.optionsApi.getQuickSearchOptions().filterGridAfterQuickSearch) {
|
|
26
26
|
if (!api.internalApi.getAgGridModulesAdapter().isAgGridModuleRegistered('QuickFilterModule')) {
|
|
27
|
-
api.consoleError('
|
|
27
|
+
api.consoleError('Quick Search with filterGridAfterQuickSearch requires the AG Grid "QuickFilterModule". Quick Search will run but grid filters will not be applied.');
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
const isServerSideRowModel = agGridApi.getGridOption('rowModelType') === 'serverSide';
|
|
@@ -7,15 +7,19 @@ export class SettingsPanelModule extends AdaptableModuleBase {
|
|
|
7
7
|
super(ModuleConstants.SettingsPanelModuleId, friendlyName, 'settings', null, 'Manage all Adaptable Settings', api);
|
|
8
8
|
}
|
|
9
9
|
createColumnMenuItems(column) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
if (this.isModuleVisible()) {
|
|
11
|
+
return [
|
|
12
|
+
// To do : get the icon and name from settings in case they have changed?
|
|
13
|
+
this.createMenuItemReduxAction('settings-panel-open', 'Open ' + this.moduleInfo.FriendlyName, this.moduleInfo.Glyph, PopupRedux.PopupShowScreen()),
|
|
14
|
+
];
|
|
15
|
+
}
|
|
14
16
|
}
|
|
15
17
|
createContextMenuItems(menuContext) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
if (this.isModuleVisible()) {
|
|
19
|
+
return [
|
|
20
|
+
this.createMenuItemReduxAction('settings-panel-open', 'Open ' + this.moduleInfo.FriendlyName, this.moduleInfo.Glyph, PopupRedux.PopupShowScreen()),
|
|
21
|
+
];
|
|
22
|
+
}
|
|
19
23
|
}
|
|
20
24
|
createModuleMenuItem(source) {
|
|
21
25
|
if (this.isModuleVisible()) {
|