@adaptabletools/adaptable 11.1.1 → 11.1.4
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/base.css +2 -0
- package/bundle.cjs.js +119 -119
- package/index.css +3 -0
- package/package.json +3 -3
- package/publishTimestamp.d.ts +1 -1
- package/publishTimestamp.js +1 -1
- package/src/AdaptableInterfaces/IAdaptable.d.ts +3 -2
- package/src/AdaptableOptions/AdaptableOptions.d.ts +49 -49
- package/src/AdaptableOptions/ContainerOptions.d.ts +1 -1
- package/src/AdaptableOptions/DashboardOptions.d.ts +1 -1
- package/src/AdaptableOptions/EditOptions.d.ts +4 -0
- package/src/AdaptableOptions/LayoutOptions.d.ts +11 -0
- package/src/AdaptableOptions/NotificationsOptions.d.ts +2 -2
- package/src/AdaptableOptions/SmartEdit.d.ts +34 -0
- package/src/AdaptableOptions/SmartEdit.js +2 -0
- package/src/AdaptableOptions/UserInterfaceOptions.d.ts +1 -1
- package/src/Api/Implementation/ColumnApiImpl.js +1 -1
- package/src/Api/Implementation/FilterApiImpl.js +8 -2
- package/src/Api/Implementation/GridApiImpl.d.ts +3 -3
- package/src/Api/Implementation/GridApiImpl.js +15 -18
- package/src/Api/Implementation/InternalApiImpl.js +1 -1
- package/src/Api/Implementation/LayoutApiImpl.js +7 -1
- package/src/Api/Implementation/SmartEditApiImpl.d.ts +3 -2
- package/src/Api/SmartEditApi.d.ts +3 -2
- package/src/PredefinedConfig/ExportState.d.ts +0 -5
- package/src/PredefinedConfig/PopupState.d.ts +2 -1
- package/src/PredefinedConfig/SystemState.d.ts +2 -5
- package/src/Redux/ActionsReducers/PopupRedux.d.ts +22 -3
- package/src/Redux/ActionsReducers/PopupRedux.js +42 -8
- package/src/Redux/ActionsReducers/SystemRedux.d.ts +5 -23
- package/src/Redux/ActionsReducers/SystemRedux.js +3 -32
- package/src/Strategy/AlertModule.js +28 -6
- package/src/Strategy/CalculatedColumnModule.js +5 -0
- package/src/Strategy/ExportModule.js +14 -4
- package/src/Strategy/FreeTextColumnModule.js +1 -1
- package/src/Strategy/Interface/IModule.d.ts +2 -1
- package/src/Strategy/LayoutModule.d.ts +23 -0
- package/src/Strategy/LayoutModule.js +70 -0
- package/src/Strategy/SmartEditModule.d.ts +2 -2
- package/src/Strategy/SmartEditModule.js +24 -13
- package/src/Strategy/Utilities/getFlashingCellStyleViewItems.d.ts +1 -0
- package/src/Strategy/Utilities/getFlashingCellStyleViewItems.js +2 -1
- package/src/Utilities/Defaults/DefaultAdaptableOptions.js +3 -0
- package/src/Utilities/Defaults/DefaultSettingsPanel.js +1 -1
- package/src/Utilities/ExpressionFunctions/booleanExpressionFunctions.js +4 -2
- package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +0 -3
- package/src/Utilities/Helpers/StyleHelper.d.ts +1 -0
- package/src/Utilities/Helpers/StyleHelper.js +13 -1
- package/src/Utilities/Interface/MessagePopups.d.ts +12 -0
- package/src/View/AdaptableView.js +2 -2
- package/src/View/AdaptableViewFactory.js +2 -4
- package/src/View/ColorPicker.d.ts +4 -2
- package/src/View/ColorPicker.js +16 -4
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +24 -19
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupBody.js +3 -1
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +23 -15
- package/src/View/Components/Popups/FormPopups/FormPopups.d.ts +10 -0
- package/src/View/Components/Popups/FormPopups/FormPopups.js +37 -0
- package/src/View/Components/Popups/WindowPopups/WindowPopups.d.ts +2 -0
- package/src/View/Components/Popups/WindowPopups/WindowPopups.js +10 -6
- 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/RangesComponent.js +4 -6
- package/src/View/Components/StyleComponent.js +6 -9
- package/src/View/Components/ValueSelector/index.d.ts +1 -0
- package/src/View/Components/ValueSelector/index.js +1 -1
- package/src/View/Dashboard/CustomToolbarWrapper.js +9 -1
- package/src/View/DataSource/DataSourceViewPanel.d.ts +3 -3
- package/src/View/DataSource/DataSourceViewPanel.js +15 -13
- package/src/View/Export/ExportViewPanel.d.ts +1 -3
- package/src/View/Export/ExportViewPanel.js +1 -17
- package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +2 -3
- package/src/View/GridInfo/AdaptableObjectsSummary.d.ts +2 -0
- package/src/View/GridInfo/AdaptableObjectsSummary.js +26 -0
- package/src/View/GridInfo/GridInfoPopup.js +13 -5
- package/src/View/Layout/LayoutEditorStandalonePopup.js +3 -4
- package/src/View/Layout/LayoutRadioSelector.d.ts +5 -0
- package/src/View/Layout/LayoutRadioSelector.js +18 -0
- package/src/View/Layout/Wizard/LayoutEditor/index.js +1 -4
- package/src/View/Layout/Wizard/LayoutEditorWizard.js +6 -1
- package/src/View/Query/ExpandedQueryPopup.d.ts +2 -18
- package/src/View/Query/ExpandedQueryPopup.js +42 -57
- package/src/View/Query/QueryViewPanel.js +8 -5
- package/src/View/SmartEdit/SmartEditPopup.d.ts +3 -3
- package/src/View/SmartEdit/SmartEditPopup.js +15 -3
- package/src/View/SmartEdit/SmartEditViewPanel.d.ts +3 -4
- package/src/View/SmartEdit/SmartEditViewPanel.js +15 -6
- package/src/agGrid/Adaptable.d.ts +7 -5
- package/src/agGrid/Adaptable.js +63 -56
- package/src/components/ExpressionEditor/index.js +0 -1
- package/src/components/OverlayTrigger/index.js +1 -0
- package/src/components/Radio/index.d.ts +1 -1
- package/src/components/Radio/index.js +2 -2
- package/src/metamodel/adaptable.metamodel.d.ts +5 -0
- package/src/metamodel/adaptable.metamodel.js +17 -5
- package/src/types.d.ts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/src/View/Export/ExportCustomDestinationDialog.d.ts +0 -11
- package/src/View/Export/ExportCustomDestinationDialog.js +0 -47
- package/src/View/Export/ExportCustomDestinationFormPopups.d.ts +0 -5
- package/src/View/Export/ExportCustomDestinationFormPopups.js +0 -15
package/index.css
CHANGED
|
@@ -3645,6 +3645,9 @@ html.ab--theme-dark .ab-ListBoxFilterForm--aggrid-style {
|
|
|
3645
3645
|
max-height: 100%;
|
|
3646
3646
|
box-shadow: var(--ab-cmp-adaptable-window-popup__box-shadow); }
|
|
3647
3647
|
|
|
3648
|
+
.ab-Window-Modal .ab-Dialog__close-button {
|
|
3649
|
+
top: 3px; }
|
|
3650
|
+
|
|
3648
3651
|
.ab-Window-Modal .ab-Panel {
|
|
3649
3652
|
max-height: initial; }
|
|
3650
3653
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adaptabletools/adaptable",
|
|
3
|
-
"version": "11.1.
|
|
3
|
+
"version": "11.1.4",
|
|
4
4
|
"description": "Powerful data-agnostic HTML5 datagrid add-on that sits on top of an underlying grid component and provides all the rich functionality that advanced users expect from their DataGrids and Data Tables",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"web-components",
|
|
@@ -39,10 +39,10 @@
|
|
|
39
39
|
"normalize.css": "^8.0.1",
|
|
40
40
|
"prop-types": "^15.6.2",
|
|
41
41
|
"re-resizable": "^6.9.1",
|
|
42
|
-
"react": "
|
|
42
|
+
"react": "^16.8.0 || ^17.0.0",
|
|
43
43
|
"react-beautiful-dnd": "13.1.0",
|
|
44
44
|
"react-day-picker": "8.0.0-beta.38",
|
|
45
|
-
"react-dom": "
|
|
45
|
+
"react-dom": "^16.8.0 || ^17.0.0",
|
|
46
46
|
"react-redux": "7.2.4",
|
|
47
47
|
"react-remove-scroll": "2.4.2",
|
|
48
48
|
"react-toastify": "8.1.0",
|
package/publishTimestamp.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default:
|
|
1
|
+
declare const _default: 1649274832417;
|
|
2
2
|
export default _default;
|
package/publishTimestamp.js
CHANGED
|
@@ -151,7 +151,7 @@ export interface IAdaptable {
|
|
|
151
151
|
}>;
|
|
152
152
|
getDistinctCustomSortValuesForColumn(column: AdaptableColumn, visibleRowsOnly: boolean, skipRowNode?: RowNode): Promise<GridCell[]>;
|
|
153
153
|
getDistinctBulkUpdateValuesForColumn(column: AdaptableColumn, visibleRowsOnly: boolean, selectedGridCells: GridCell[], skipRowNode?: RowNode): Promise<GridCell[]>;
|
|
154
|
-
getDisplayValue(id: any, columnId: string): string;
|
|
154
|
+
getDisplayValue(id: any, columnId: string): string | undefined;
|
|
155
155
|
getGridCellFromRowNode(rowNode: RowNode, columnId: string): GridCell | undefined;
|
|
156
156
|
getRawValueFromRowNode(rowNode: RowNode, columnId: string): any;
|
|
157
157
|
getDisplayValueFromRowNode(rowNode: RowNode, columnId: string): string | undefined;
|
|
@@ -164,7 +164,8 @@ export interface IAdaptable {
|
|
|
164
164
|
lookupPlugins(propertyName: string, ...args: any): any;
|
|
165
165
|
getPluginProperty(pluginId: string, propertyName: string, ...args: any): any;
|
|
166
166
|
getPlugin(pluginId: string): AdaptablePlugin;
|
|
167
|
-
|
|
167
|
+
setDataValue(value: any, column: AdaptableColumn, primaryKeyValue: any, rowNode?: RowNode): void;
|
|
168
|
+
setCellValue(cellDataChangedInfo: CellDataChangedInfo): void;
|
|
168
169
|
cancelEdit(): any;
|
|
169
170
|
isCellEditable(rowNode: RowNode, column: Column): boolean;
|
|
170
171
|
getFirstRowNode(): RowNode;
|
|
@@ -33,10 +33,6 @@ export interface AdaptableOptions {
|
|
|
33
33
|
* @gridInfoItem
|
|
34
34
|
*/
|
|
35
35
|
adaptableId?: string;
|
|
36
|
-
/**
|
|
37
|
-
* Commercial license key. If the license is not provided or is expired, various visual information notes will be displayed and some functionality may be limited.
|
|
38
|
-
*/
|
|
39
|
-
licenseKey?: string;
|
|
40
36
|
/**
|
|
41
37
|
* Identifier used as localStorage persistence key for AdaptableState
|
|
42
38
|
*
|
|
@@ -44,6 +40,27 @@ export interface AdaptableOptions {
|
|
|
44
40
|
* @gridInfoItem
|
|
45
41
|
*/
|
|
46
42
|
adaptableStateKey?: string;
|
|
43
|
+
/**
|
|
44
|
+
* Will autogenerate a Primary Key; only use as a last resort if no unique column is available, as limits some Adaptable functionalities
|
|
45
|
+
*
|
|
46
|
+
* @defaultValue false
|
|
47
|
+
* @gridInfoItem
|
|
48
|
+
*/
|
|
49
|
+
autogeneratePrimaryKey?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* The AG Grid object which AdapTable interacts with. Note: if using AdapTable React or AdapTable Angular, no need to populate this property as AdapTable wires it up differently
|
|
52
|
+
*
|
|
53
|
+
* @defaultValue n/a (Mandatory)
|
|
54
|
+
*/
|
|
55
|
+
gridOptions?: GridOptions;
|
|
56
|
+
/**
|
|
57
|
+
* Commercial license key. If the license is not provided or is expired, various visual information notes will be displayed and some functionality may be limited.
|
|
58
|
+
*/
|
|
59
|
+
licenseKey?: string;
|
|
60
|
+
/**
|
|
61
|
+
* AG Grid Modules that should be provided - needs to be provided separately
|
|
62
|
+
*/
|
|
63
|
+
modules?: Module[];
|
|
47
64
|
/**
|
|
48
65
|
* User State set at design-time and shipped with AdapTable for first use; can be `PredefinedConfig` object or url to file containing config
|
|
49
66
|
*
|
|
@@ -57,13 +74,6 @@ export interface AdaptableOptions {
|
|
|
57
74
|
* @gridInfoItem
|
|
58
75
|
*/
|
|
59
76
|
primaryKey: string;
|
|
60
|
-
/**
|
|
61
|
-
* Will autogenerate a Primary Key; only use as a last resort if no unique column is available, as limits some Adaptable functionalities
|
|
62
|
-
*
|
|
63
|
-
* @defaultValue false
|
|
64
|
-
* @gridInfoItem
|
|
65
|
-
*/
|
|
66
|
-
autogeneratePrimaryKey?: boolean;
|
|
67
77
|
/**
|
|
68
78
|
* Name of current AdapTable user
|
|
69
79
|
*
|
|
@@ -72,21 +82,9 @@ export interface AdaptableOptions {
|
|
|
72
82
|
*/
|
|
73
83
|
userName?: string;
|
|
74
84
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
* @defaultValue n/a (Mandatory)
|
|
78
|
-
*/
|
|
79
|
-
gridOptions?: GridOptions;
|
|
80
|
-
/**
|
|
81
|
-
* AG Grid Modules that should be provided - needs to be provided separately
|
|
82
|
-
*/
|
|
83
|
-
modules?: Module[];
|
|
84
|
-
/**
|
|
85
|
-
* Options for managing Notifications in AdapTable
|
|
86
|
-
*
|
|
87
|
-
* @gridInfoContainer
|
|
85
|
+
* Options for managing AdapTableQL
|
|
88
86
|
*/
|
|
89
|
-
|
|
87
|
+
adaptableQLOptions?: AdaptableQLOptions;
|
|
90
88
|
/**
|
|
91
89
|
* Options for managing Alerts in AdapTable
|
|
92
90
|
*
|
|
@@ -97,12 +95,22 @@ export interface AdaptableOptions {
|
|
|
97
95
|
* Options for setting the 'Div' elements in which AdapTable, AG Grid, popups are placed
|
|
98
96
|
*/
|
|
99
97
|
containerOptions?: ContainerOptions;
|
|
98
|
+
/**
|
|
99
|
+
* Predicate definitions provided by developers at Design-Time
|
|
100
|
+
*/
|
|
101
|
+
customPredicateDefs?: AdaptablePredicateDef[];
|
|
100
102
|
/**
|
|
101
103
|
* Options related to managing the Dashboard in AdapTable
|
|
102
104
|
*
|
|
103
105
|
* @gridInfoContainer
|
|
104
106
|
*/
|
|
105
107
|
dashboardOptions?: DashboardOptions;
|
|
108
|
+
/**
|
|
109
|
+
* Options to manage Data Change History Module which provides an overview of all data changes
|
|
110
|
+
*
|
|
111
|
+
* @gridInfoContainer
|
|
112
|
+
*/
|
|
113
|
+
dataChangeHistoryOptions?: DataChangeHistoryOptions;
|
|
106
114
|
/**
|
|
107
115
|
* Options related to Editing in AdapTable including Server Validation
|
|
108
116
|
*
|
|
@@ -121,6 +129,12 @@ export interface AdaptableOptions {
|
|
|
121
129
|
* @gridInfoContainer
|
|
122
130
|
*/
|
|
123
131
|
exportOptions?: ExportOptions;
|
|
132
|
+
/**
|
|
133
|
+
* Options for managing Filtering in AdapTable
|
|
134
|
+
*
|
|
135
|
+
* @gridInfoContainer
|
|
136
|
+
*/
|
|
137
|
+
filterOptions?: FilterOptions;
|
|
124
138
|
/**
|
|
125
139
|
* Options for managing Flashing Cells - primarily default values
|
|
126
140
|
*
|
|
@@ -145,6 +159,12 @@ export interface AdaptableOptions {
|
|
|
145
159
|
* @gridInfoContainer
|
|
146
160
|
*/
|
|
147
161
|
menuOptions?: MenuOptions;
|
|
162
|
+
/**
|
|
163
|
+
* Options for managing Notifications in AdapTable
|
|
164
|
+
*
|
|
165
|
+
* @gridInfoContainer
|
|
166
|
+
*/
|
|
167
|
+
notificationsOptions?: NotificationsOptions;
|
|
148
168
|
/**
|
|
149
169
|
* Options for managing Search related functions in AdapTable
|
|
150
170
|
*
|
|
@@ -152,11 +172,11 @@ export interface AdaptableOptions {
|
|
|
152
172
|
*/
|
|
153
173
|
searchOptions?: SearchOptions;
|
|
154
174
|
/**
|
|
155
|
-
*
|
|
175
|
+
* Setting panel options
|
|
156
176
|
*
|
|
157
177
|
* @gridInfoContainer
|
|
158
178
|
*/
|
|
159
|
-
|
|
179
|
+
settingsPanelOptions?: SettingsPanelOptions;
|
|
160
180
|
/**
|
|
161
181
|
* Options related to state hydration / dehydration - allows users to intercept state persistence and state loading and change default behavior of saving to local storage
|
|
162
182
|
*/
|
|
@@ -167,12 +187,6 @@ export interface AdaptableOptions {
|
|
|
167
187
|
* @gridInfoContainer
|
|
168
188
|
*/
|
|
169
189
|
teamSharingOptions?: TeamSharingOptions;
|
|
170
|
-
/**
|
|
171
|
-
* Options for managing the User Interface elements of AdapTable, i.e. Action Columns, Color Palette etc.
|
|
172
|
-
*
|
|
173
|
-
* @gridInfoContainer
|
|
174
|
-
*/
|
|
175
|
-
userInterfaceOptions?: UserInterfaceOptions;
|
|
176
190
|
/**
|
|
177
191
|
* Options related to managing the Tool Panel elements in AdapTable
|
|
178
192
|
*
|
|
@@ -180,27 +194,13 @@ export interface AdaptableOptions {
|
|
|
180
194
|
*/
|
|
181
195
|
toolPanelOptions?: ToolPanelOptions;
|
|
182
196
|
/**
|
|
183
|
-
* Options for managing
|
|
184
|
-
*/
|
|
185
|
-
adaptableQLOptions?: AdaptableQLOptions;
|
|
186
|
-
/**
|
|
187
|
-
* Options to manage Data Change History Module which provides an overview of all data changes
|
|
197
|
+
* Options for managing the User Interface elements of AdapTable, i.e. Action Columns, Color Palette etc.
|
|
188
198
|
*
|
|
189
199
|
* @gridInfoContainer
|
|
190
200
|
*/
|
|
191
|
-
|
|
201
|
+
userInterfaceOptions?: UserInterfaceOptions;
|
|
192
202
|
/**
|
|
193
203
|
* Used for managing the AdapTable Plugins
|
|
194
204
|
*/
|
|
195
205
|
plugins?: AdaptablePlugin[];
|
|
196
|
-
/**
|
|
197
|
-
* Predicate definitions provided by developers at Design-Time
|
|
198
|
-
*/
|
|
199
|
-
customPredicateDefs?: AdaptablePredicateDef[];
|
|
200
|
-
/**
|
|
201
|
-
* Setting panel options
|
|
202
|
-
*
|
|
203
|
-
* @gridInfoContainer
|
|
204
|
-
*/
|
|
205
|
-
settingsPanelOptions?: SettingsPanelOptions;
|
|
206
206
|
}
|
|
@@ -17,7 +17,7 @@ export interface ContainerOptions {
|
|
|
17
17
|
*/
|
|
18
18
|
agGridContainer?: string | HTMLElement;
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
20
|
+
* How long AdapTable waits for AG Grid before giving up connecting to it
|
|
21
21
|
*
|
|
22
22
|
* @defaultValue 60s
|
|
23
23
|
* @gridInfoItem
|
|
@@ -30,7 +30,7 @@ export interface DashboardOptions {
|
|
|
30
30
|
*/
|
|
31
31
|
customToolbars?: CustomToolbar[];
|
|
32
32
|
/**
|
|
33
|
-
*
|
|
33
|
+
* Where in Dashboard to display Module and Custom Buttons
|
|
34
34
|
* @defaultValue 'right'
|
|
35
35
|
*/
|
|
36
36
|
buttonsLocation?: 'left' | 'right';
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CellDataChangedInfo } from '../PredefinedConfig/Common/CellDataChangedInfo';
|
|
2
2
|
import { GridCell } from '../PredefinedConfig/Selection/GridCell';
|
|
3
|
+
import { SmartEditCustomOperation } from './SmartEdit';
|
|
3
4
|
/**
|
|
4
5
|
* Options related to Editing in Adaptable.
|
|
5
6
|
*
|
|
@@ -21,6 +22,9 @@ export interface EditOptions {
|
|
|
21
22
|
* Function which checks if given Grid Cell is editable
|
|
22
23
|
*/
|
|
23
24
|
isCellEditable?: (gridCell: GridCell) => boolean;
|
|
25
|
+
smartEdit?: {
|
|
26
|
+
customOperations?: SmartEditCustomOperation[];
|
|
27
|
+
};
|
|
24
28
|
}
|
|
25
29
|
/**
|
|
26
30
|
* Used for Server Validation ie. after an edit has been made in Adaptable which should be checked on the Server
|
|
@@ -42,4 +42,15 @@ export interface LayoutOptions {
|
|
|
42
42
|
* @gridInfoItem
|
|
43
43
|
*/
|
|
44
44
|
createDefaultLayout?: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Options to customize how layout items are shown in Settings Panel
|
|
47
|
+
*/
|
|
48
|
+
view?: {
|
|
49
|
+
/**
|
|
50
|
+
* How many columns to display in the inline layout preview
|
|
51
|
+
*
|
|
52
|
+
* @defaultValue 10
|
|
53
|
+
*/
|
|
54
|
+
maxColumnsToDisplay?: number;
|
|
55
|
+
};
|
|
45
56
|
}
|
|
@@ -59,7 +59,7 @@ export interface NotificationsOptions {
|
|
|
59
59
|
*/
|
|
60
60
|
transition?: 'Bounce' | 'Slide' | 'Zoom' | 'Flip';
|
|
61
61
|
/**
|
|
62
|
-
* Display
|
|
62
|
+
* Display System Status Messages as Notifications
|
|
63
63
|
*
|
|
64
64
|
* @defaultValue false
|
|
65
65
|
* @gridInfoItem
|
|
@@ -73,7 +73,7 @@ export interface NotificationsOptions {
|
|
|
73
73
|
*/
|
|
74
74
|
maxSystemMessagesInStore?: number;
|
|
75
75
|
/**
|
|
76
|
-
* Displays the application icon in Notifications
|
|
76
|
+
* Displays the application icon in Notifications
|
|
77
77
|
* @defaultValue false
|
|
78
78
|
*/
|
|
79
79
|
showApplicationIcon?: boolean;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { MathOperation } from '../PredefinedConfig/Common/Enums';
|
|
2
|
+
import { AdaptableApi, AdaptableColumn, GridCell } from '../types';
|
|
3
|
+
export declare type SmartEditCustomOperation = {
|
|
4
|
+
/**
|
|
5
|
+
* Name of the operation, appears in the UI
|
|
6
|
+
*/
|
|
7
|
+
Name: string;
|
|
8
|
+
/**
|
|
9
|
+
* Custom operation function
|
|
10
|
+
*/
|
|
11
|
+
Operation: (context: {
|
|
12
|
+
/**
|
|
13
|
+
* Selected Cell Value
|
|
14
|
+
*/
|
|
15
|
+
value: number;
|
|
16
|
+
/**
|
|
17
|
+
* Smart edit cell value
|
|
18
|
+
*/
|
|
19
|
+
smartEditValue: number;
|
|
20
|
+
/**
|
|
21
|
+
* Selected column
|
|
22
|
+
*/
|
|
23
|
+
column: AdaptableColumn;
|
|
24
|
+
/**
|
|
25
|
+
* Adaptable Api
|
|
26
|
+
*/
|
|
27
|
+
adaptableApi: AdaptableApi;
|
|
28
|
+
/**
|
|
29
|
+
* Selected grid cell
|
|
30
|
+
*/
|
|
31
|
+
selectedCell: GridCell;
|
|
32
|
+
}) => number;
|
|
33
|
+
};
|
|
34
|
+
export declare type SmartEditOperation = SmartEditCustomOperation | MathOperation;
|
|
@@ -244,4 +244,4 @@ export interface BulkUpdatePermittedValuesParams extends BaseParams {
|
|
|
244
244
|
gridCells: GridCell[];
|
|
245
245
|
}
|
|
246
246
|
export declare type GridInfoSections = GridInfoSection[];
|
|
247
|
-
export declare type GridInfoSection = 'GridSummary' | 'AdaptableOptions' | 'ColumnInfo';
|
|
247
|
+
export declare type GridInfoSection = 'GridSummary' | 'AdaptableOptions' | 'ColumnInfo' | 'AdaptableObjectsSummary';
|
|
@@ -291,7 +291,7 @@ class ColumnApiImpl extends ApiBase_1.ApiBase {
|
|
|
291
291
|
const { gridCells, suppressClientSideFilter } = await this.adaptable.getDistinctFilterValuesForColumn(abColumn, false, filter);
|
|
292
292
|
return {
|
|
293
293
|
values: this.sortDistinctValues(gridCells, abColumn).map((cv) => {
|
|
294
|
-
return cv.
|
|
294
|
+
return cv.displayValue;
|
|
295
295
|
}),
|
|
296
296
|
suppressClientSideFilter,
|
|
297
297
|
};
|
|
@@ -156,7 +156,7 @@ class FilterApiImpl extends ApiBase_1.ApiBase {
|
|
|
156
156
|
return columnFilters.map((cf) => this.columnFilterToString(cf)).join(', ');
|
|
157
157
|
}
|
|
158
158
|
evaluateColumnFilter(columnFilter, node) {
|
|
159
|
-
var _a;
|
|
159
|
+
var _a, _b;
|
|
160
160
|
if (!columnFilter.Predicate) {
|
|
161
161
|
return true;
|
|
162
162
|
}
|
|
@@ -171,8 +171,14 @@ class FilterApiImpl extends ApiBase_1.ApiBase {
|
|
|
171
171
|
if (!gridCell) {
|
|
172
172
|
return true;
|
|
173
173
|
}
|
|
174
|
+
let value = gridCell.normalisedValue;
|
|
175
|
+
if (((_b = columnFilter.Predicate) === null || _b === void 0 ? void 0 : _b.PredicateId) === 'Contains' && column.dataType === 'Date') {
|
|
176
|
+
// although 'Contains' Predicate is NOT relevant for Date columns, we have to handle the special case of QuickSearching
|
|
177
|
+
// in that case, we have to evaluate the displayedValue of the cell, not the normalisedValue (it's a textual search after all)
|
|
178
|
+
value = gridCell.displayValue;
|
|
179
|
+
}
|
|
174
180
|
return this.adaptable.api.predicateApi.handlePredicate(columnFilter.Predicate, {
|
|
175
|
-
value:
|
|
181
|
+
value: value,
|
|
176
182
|
oldValue: null,
|
|
177
183
|
displayValue: gridCell.normalisedValue,
|
|
178
184
|
node,
|
|
@@ -59,9 +59,9 @@ export declare class GridApiImpl extends ApiBase implements GridApi {
|
|
|
59
59
|
getFirstRowNode(): RowNode;
|
|
60
60
|
getFirstDisplayedRowNode(): RowNode;
|
|
61
61
|
getVisibleRowNodes(): RowNode[];
|
|
62
|
-
getGridCellFromRowNode(
|
|
63
|
-
getRawValueFromRowNode(
|
|
64
|
-
getDisplayValueFromRowNode(
|
|
62
|
+
getGridCellFromRowNode(rowNode: RowNode, columnId: string): GridCell | undefined;
|
|
63
|
+
getRawValueFromRowNode(rowNode: RowNode, columnId: string): any | undefined;
|
|
64
|
+
getDisplayValueFromRowNode(rowNode: RowNode, columnId: string): any | undefined;
|
|
65
65
|
getFormattedValueFromRawValue(columnId: string, rawValue: any): string | undefined;
|
|
66
66
|
getNormalisedValueFromRowNode(rowNode: RowNode, columnId: string): any | undefined;
|
|
67
67
|
getRowNodesForPrimaryKeys(primaryKeyValues: any[]): RowNode[];
|
|
@@ -6,6 +6,7 @@ const ApiBase_1 = require("./ApiBase");
|
|
|
6
6
|
const GridRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/GridRedux"));
|
|
7
7
|
const SystemRedux_1 = require("../../Redux/ActionsReducers/SystemRedux");
|
|
8
8
|
const ModuleConstants = tslib_1.__importStar(require("../../Utilities/Constants/ModuleConstants"));
|
|
9
|
+
const LoggingHelper_1 = require("../../Utilities/Helpers/LoggingHelper");
|
|
9
10
|
class GridApiImpl extends ApiBase_1.ApiBase {
|
|
10
11
|
getGridState() {
|
|
11
12
|
return this.getAdaptableState().Grid;
|
|
@@ -48,22 +49,20 @@ class GridApiImpl extends ApiBase_1.ApiBase {
|
|
|
48
49
|
}
|
|
49
50
|
setCellValue(columnId, newValue, primaryKeyValue) {
|
|
50
51
|
const abColumn = this.adaptable.api.columnApi.getColumnFromId(columnId);
|
|
51
|
-
if (!abColumn
|
|
52
|
+
if (!abColumn) {
|
|
53
|
+
LoggingHelper_1.LogAdaptableWarning(`setCellValue() - column not found for columnId: ${columnId}`);
|
|
52
54
|
return;
|
|
53
55
|
}
|
|
54
56
|
const rowNode = this.getRowNodeForPrimaryKey(primaryKeyValue);
|
|
57
|
+
if (!rowNode) {
|
|
58
|
+
LoggingHelper_1.LogAdaptableWarning(`setCellValue() - rowNode not found for primaryKeyValue: ${primaryKeyValue}`);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
55
61
|
if (!this.adaptable.isCellEditable(rowNode, this.adaptable.getAgGridColumnForColumnId(columnId))) {
|
|
62
|
+
LoggingHelper_1.LogAdaptableInfo(`setCellValue() - cell is not editable (primaryKeyValue: ${primaryKeyValue},columnId: ${columnId},value: ${newValue})`);
|
|
56
63
|
return;
|
|
57
64
|
}
|
|
58
|
-
|
|
59
|
-
primaryKeyValue: primaryKeyValue,
|
|
60
|
-
rawValue: newValue,
|
|
61
|
-
displayValue: newValue,
|
|
62
|
-
normalisedValue: newValue,
|
|
63
|
-
rowNode: rowNode,
|
|
64
|
-
column: abColumn,
|
|
65
|
-
};
|
|
66
|
-
this.adaptable.api.internalApi.setGridCell(gridCell);
|
|
65
|
+
this.adaptable.setDataValue(newValue, abColumn, primaryKeyValue, rowNode);
|
|
67
66
|
}
|
|
68
67
|
setCellsValue(gridCells) {
|
|
69
68
|
gridCells === null || gridCells === void 0 ? void 0 : gridCells.forEach((gridCell) => this.setCellValue(gridCell.columnId, gridCell.newValue, gridCell.primaryKeyValue));
|
|
@@ -193,16 +192,14 @@ class GridApiImpl extends ApiBase_1.ApiBase {
|
|
|
193
192
|
getVisibleRowNodes() {
|
|
194
193
|
return this.adaptable.getVisibleRowNodes();
|
|
195
194
|
}
|
|
196
|
-
getGridCellFromRowNode(
|
|
197
|
-
return this.adaptable.getGridCellFromRowNode(
|
|
195
|
+
getGridCellFromRowNode(rowNode, columnId) {
|
|
196
|
+
return this.adaptable.getGridCellFromRowNode(rowNode, columnId);
|
|
198
197
|
}
|
|
199
|
-
getRawValueFromRowNode(
|
|
200
|
-
|
|
201
|
-
return gridCell ? gridCell.rawValue : undefined;
|
|
198
|
+
getRawValueFromRowNode(rowNode, columnId) {
|
|
199
|
+
return this.adaptable.getRawValueFromRowNode(rowNode, columnId);
|
|
202
200
|
}
|
|
203
|
-
getDisplayValueFromRowNode(
|
|
204
|
-
|
|
205
|
-
return gridCell ? gridCell.displayValue : undefined;
|
|
201
|
+
getDisplayValueFromRowNode(rowNode, columnId) {
|
|
202
|
+
return this.adaptable.getDisplayValueFromRowNode(rowNode, columnId);
|
|
206
203
|
}
|
|
207
204
|
getFormattedValueFromRawValue(columnId, rawValue) {
|
|
208
205
|
return this.adaptable.getDisplayValueFromRawValue(columnId, rawValue);
|
|
@@ -198,7 +198,7 @@ class InternalApiImpl extends ApiBase_1.ApiBase {
|
|
|
198
198
|
}
|
|
199
199
|
setGridCell(gridCell) {
|
|
200
200
|
const cellDataChangedInfo = this.createDataChangedInfoFromGridCell(gridCell);
|
|
201
|
-
this.adaptable.
|
|
201
|
+
this.adaptable.setCellValue(cellDataChangedInfo);
|
|
202
202
|
}
|
|
203
203
|
buildDataChangedInfo(config) {
|
|
204
204
|
var _a;
|
|
@@ -252,14 +252,20 @@ class LayoutApiImpl extends ApiBase_1.ApiBase {
|
|
|
252
252
|
}
|
|
253
253
|
showLayoutEditor(layoutName, action = 'Edit') {
|
|
254
254
|
const layout = layoutName ? this.getLayoutByName(layoutName) : this.getCurrentLayout();
|
|
255
|
+
const moduleInfo = this.adaptable.ModuleService.getModuleInfoByModule(ModuleConstants.LayoutModuleId);
|
|
255
256
|
let preparedAction = action;
|
|
256
257
|
if (!['Edit', 'New', 'Clone'].includes(action)) {
|
|
257
258
|
preparedAction = 'Edit';
|
|
258
259
|
LoggingHelper_1.LogAdaptableError(`When opening the layout editor the action must be one of: New, Clone, Edit; given: ${action}`);
|
|
259
260
|
}
|
|
261
|
+
let title = 'Layout Editor';
|
|
262
|
+
if (action === 'Edit') {
|
|
263
|
+
title = `Edit Layout${(layout === null || layout === void 0 ? void 0 : layout.Name) ? `: ${layout.Name}` : ''}`;
|
|
264
|
+
}
|
|
260
265
|
this.dispatchAction(PopupRedux.PopupShowWindow({
|
|
261
266
|
Id: windowFactory_1.WINDOW_LAYOUT_EDITOR,
|
|
262
|
-
Title:
|
|
267
|
+
Title: title,
|
|
268
|
+
Icon: moduleInfo.Glyph,
|
|
263
269
|
PopupProps: {
|
|
264
270
|
action: preparedAction,
|
|
265
271
|
layout,
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { ApiBase } from './ApiBase';
|
|
2
2
|
import { SmartEditApi } from '../SmartEditApi';
|
|
3
3
|
import { GridCell } from '../../PredefinedConfig/Selection/GridCell';
|
|
4
|
+
import { SmartEditOperation } from '../../AdaptableOptions/SmartEdit';
|
|
4
5
|
export declare class SmartEditApiImpl extends ApiBase implements SmartEditApi {
|
|
5
|
-
setSmartEditOperation(mathOperation:
|
|
6
|
-
getSmartEditOperation():
|
|
6
|
+
setSmartEditOperation(mathOperation: SmartEditOperation): void;
|
|
7
|
+
getSmartEditOperation(): SmartEditOperation;
|
|
7
8
|
setSmartEditValue(smartEditValue: number): void;
|
|
8
9
|
getSmartEditValue(): number;
|
|
9
10
|
showSmartEditPopup(): void;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SmartEditOperation } from '../AdaptableOptions/SmartEdit';
|
|
1
2
|
import { GridCell } from '../PredefinedConfig/Selection/GridCell';
|
|
2
3
|
/**
|
|
3
4
|
* Provides run-time access to the Smart Edit Module
|
|
@@ -7,11 +8,11 @@ export interface SmartEditApi {
|
|
|
7
8
|
* Sets Smart Edit operation: ('Add','Subtract','Multiply','Divide'
|
|
8
9
|
* @param operation operation to run
|
|
9
10
|
*/
|
|
10
|
-
setSmartEditOperation(operation:
|
|
11
|
+
setSmartEditOperation(operation: SmartEditOperation): void;
|
|
11
12
|
/**
|
|
12
13
|
* Gets current Smart Edit Operation
|
|
13
14
|
*/
|
|
14
|
-
getSmartEditOperation():
|
|
15
|
+
getSmartEditOperation(): SmartEditOperation;
|
|
15
16
|
/**
|
|
16
17
|
* Sets Smart Edit Value
|
|
17
18
|
* @param smartEditValue the value to use in Smart Edit Operation
|
|
@@ -6,11 +6,6 @@ import { AdaptableObject } from './Common/AdaptableObject';
|
|
|
6
6
|
import { AdaptableFormData } from './Common/AdaptableForm';
|
|
7
7
|
import { AdaptableBooleanQuery } from './Common/AdaptableQuery';
|
|
8
8
|
import { ExportDestination } from './Common/Enums';
|
|
9
|
-
import { CustomDestination } from '../types';
|
|
10
|
-
export interface ExportCustomDestinationPopup {
|
|
11
|
-
ExportDestination: CustomDestination;
|
|
12
|
-
ReportName: Report['Name'];
|
|
13
|
-
}
|
|
14
9
|
/**
|
|
15
10
|
* Predefined Configuration for Export Module
|
|
16
11
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ScreenPopup, AlertPopup, ConfirmationPopup, PromptPopup, LoadingPopup, WindowPopup } from '../Utilities/Interface/MessagePopups';
|
|
1
|
+
import { ScreenPopup, AlertPopup, ConfirmationPopup, PromptPopup, LoadingPopup, WindowPopup, FormPopup } from '../Utilities/Interface/MessagePopups';
|
|
2
2
|
import { InternalState } from './InternalState';
|
|
3
3
|
/**
|
|
4
4
|
* Internal state to manage open popups - NOT persisted by Redux
|
|
@@ -6,6 +6,7 @@ import { InternalState } from './InternalState';
|
|
|
6
6
|
export interface PopupState extends InternalState {
|
|
7
7
|
ScreenPopup: ScreenPopup;
|
|
8
8
|
WindowPopup: WindowPopup;
|
|
9
|
+
FormPopup: FormPopup;
|
|
9
10
|
AlertPopup: AlertPopup;
|
|
10
11
|
ConfirmationPopup: ConfirmationPopup;
|
|
11
12
|
PromptPopup: PromptPopup;
|
|
@@ -13,7 +13,7 @@ import { CachedQuery } from './QueryState';
|
|
|
13
13
|
import { AdaptableFlashingCell } from './Common/AdaptableFlashingCell';
|
|
14
14
|
import { TypeUuid } from './Uuid';
|
|
15
15
|
import { SummaryOperation } from './Common/Enums';
|
|
16
|
-
import {
|
|
16
|
+
import { SmartEditOperation } from '../AdaptableOptions/SmartEdit';
|
|
17
17
|
export type { IPushPullReport, IPushPullDomain };
|
|
18
18
|
export type { Glue42Report };
|
|
19
19
|
export type { OpenFinReport };
|
|
@@ -25,9 +25,6 @@ export declare type DataChangeHistoryMode = 'ACTIVE' | 'INACTIVE' | 'SUSPENDED';
|
|
|
25
25
|
*/
|
|
26
26
|
export interface SystemState extends InternalState, IPushPullState, Glue42State, OpenFinState {
|
|
27
27
|
AdaptableAlerts: AdaptableAlert[];
|
|
28
|
-
Export: {
|
|
29
|
-
CustomDestinationPopups: ExportCustomDestinationPopup[];
|
|
30
|
-
};
|
|
31
28
|
AdaptableFlashingCells: Record<ROW_PRIMARY_KEY, Record<COLUMN_ID_OR_WHOLE_ROW_LABEL, TypeUuid>>;
|
|
32
29
|
AdaptableFlashingCellsMap: Record<TypeUuid, AdaptableFlashingCell>;
|
|
33
30
|
SystemStatusMessages: SystemStatusMessageInfo[];
|
|
@@ -43,7 +40,7 @@ export interface SystemState extends InternalState, IPushPullState, Glue42State,
|
|
|
43
40
|
CachedQueries: CachedQuery[];
|
|
44
41
|
BulkUpdateValue?: string;
|
|
45
42
|
SmartEditValue?: number;
|
|
46
|
-
SmartEditOperation?:
|
|
43
|
+
SmartEditOperation?: SmartEditOperation;
|
|
47
44
|
CellSummaryOperation?: SummaryOperation | string;
|
|
48
45
|
ProgressIndicator: ProgressIndicator;
|
|
49
46
|
License: {
|
|
@@ -4,6 +4,7 @@ import { InputAction, UIPrompt, UIConfirmation } from '../../Utilities/Interface
|
|
|
4
4
|
import { ModuleParams } from '../../View/Components/SharedProps/ModuleViewPopupProps';
|
|
5
5
|
import { AdaptableModule } from '../../PredefinedConfig/Common/Types';
|
|
6
6
|
import { AdaptableAlert } from '../../PredefinedConfig/Common/AdaptableAlert';
|
|
7
|
+
import { AdaptableForm, ButtonContext } from '../../types';
|
|
7
8
|
export declare const POPUP_SHOW_SCREEN = "POPUP_SHOW_SCREEN";
|
|
8
9
|
export declare const POPUP_HIDE_SCREEN = "POPUP_HIDE_SCREEN";
|
|
9
10
|
export declare const POPUP_SHOW_LOADING = "POPUP_SHOW_LOADING";
|
|
@@ -17,8 +18,10 @@ export declare const POPUP_SHOW_CONFIRMATION = "POPUP_SHOW_CONFIRMATION";
|
|
|
17
18
|
export declare const POPUP_CONFIRM_CONFIRMATION = "POPUP_CONFIRM_CONFIRMATION";
|
|
18
19
|
export declare const POPUP_CANCEL_CONFIRMATION = "POPUP_CANCEL_CONFIRMATION";
|
|
19
20
|
export declare const POPUP_CLEAR_PARAM = "POPUP_CLEAR_PARAM";
|
|
20
|
-
export declare const
|
|
21
|
-
export declare const
|
|
21
|
+
export declare const POPUP_SHOW_WINDOW = "POPUP_SHOW_WINDOW";
|
|
22
|
+
export declare const POPUP_HIDE_WINDOW = "POPUP_HIDE_WINDOW";
|
|
23
|
+
export declare const POPUP_SHOW_FORM = "POPUP_SHOW_FORM";
|
|
24
|
+
export declare const POPUP_HIDE_FORM = "POPUP_FORM_HIDE";
|
|
22
25
|
export interface PopupShowScreenAction extends Redux.Action {
|
|
23
26
|
ComponentModule: AdaptableModule;
|
|
24
27
|
ComponentName: string;
|
|
@@ -38,6 +41,15 @@ export interface PopupShowWindowAction extends Redux.Action {
|
|
|
38
41
|
export interface PopupHideWindowAction extends Redux.Action {
|
|
39
42
|
Id: string;
|
|
40
43
|
}
|
|
44
|
+
export interface PopupShowFormAction extends Redux.Action {
|
|
45
|
+
Id: string;
|
|
46
|
+
Form: AdaptableForm<ButtonContext>;
|
|
47
|
+
FormProps: any;
|
|
48
|
+
prepareContext?: (context: ButtonContext) => Promise<ButtonContext> | ButtonContext;
|
|
49
|
+
}
|
|
50
|
+
export interface PopupHideFormAction extends Redux.Action {
|
|
51
|
+
Id: string;
|
|
52
|
+
}
|
|
41
53
|
export interface PopupShowLoadingAction extends Redux.Action {
|
|
42
54
|
}
|
|
43
55
|
export interface PopupHideLoadingAction extends Redux.Action {
|
|
@@ -74,7 +86,14 @@ export declare const PopupShowWindow: (config: {
|
|
|
74
86
|
PopupProps?: any;
|
|
75
87
|
Icon?: string;
|
|
76
88
|
}) => PopupShowWindowAction;
|
|
77
|
-
export declare const
|
|
89
|
+
export declare const PopupHideWindow: (id: string) => PopupHideWindowAction;
|
|
90
|
+
export declare const PopupShowForm: (config: {
|
|
91
|
+
Id: string;
|
|
92
|
+
Form: AdaptableForm<ButtonContext>;
|
|
93
|
+
FormProps?: any;
|
|
94
|
+
prepareContext?: (context: ButtonContext) => Promise<ButtonContext> | ButtonContext;
|
|
95
|
+
}) => PopupShowFormAction;
|
|
96
|
+
export declare const PopupHideForm: (id: string) => PopupHideFormAction;
|
|
78
97
|
export declare const PopupShowAlert: (alert: AdaptableAlert) => PopupShowAlertAction;
|
|
79
98
|
export declare const PopupHideAlert: () => PopupHideAlertAction;
|
|
80
99
|
export declare const PopupShowLoading: () => PopupShowLoadingAction;
|