@adaptabletools/adaptable-cjs 18.0.0-canary.26 → 18.0.0-canary.27
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/package.json +1 -1
- package/src/AdaptableOptions/MenuOptions.d.ts +7 -19
- package/src/AdaptableOptions/MenuOptions.js +0 -98
- package/src/Api/Implementation/LayoutApiImpl.d.ts +0 -9
- package/src/Api/Implementation/LayoutApiImpl.js +0 -4
- package/src/Api/Internal/CommentsInternalApi.d.ts +1 -1
- package/src/Api/Internal/CommentsInternalApi.js +1 -1
- package/src/Api/Internal/NoteInternalApi.d.ts +1 -1
- package/src/Api/Internal/NoteInternalApi.js +1 -1
- package/src/Api/LayoutApi.d.ts +0 -12
- package/src/PredefinedConfig/Common/Menu.d.ts +4 -4
- package/src/PredefinedConfig/Common/Menu.js +17 -18
- package/src/Strategy/AdaptableModuleBase.d.ts +3 -4
- package/src/Strategy/AdaptableModuleBase.js +5 -9
- package/src/Strategy/AlertModule.d.ts +1 -1
- package/src/Strategy/AlertModule.js +1 -1
- package/src/Strategy/BulkUpdateModule.d.ts +1 -1
- package/src/Strategy/BulkUpdateModule.js +3 -2
- package/src/Strategy/CalculatedColumnModule.d.ts +2 -2
- package/src/Strategy/CalculatedColumnModule.js +2 -2
- package/src/Strategy/CellSummaryModule.d.ts +2 -2
- package/src/Strategy/CellSummaryModule.js +2 -2
- package/src/Strategy/ColumnFilterModule.d.ts +2 -2
- package/src/Strategy/ColumnFilterModule.js +17 -42
- package/src/Strategy/ColumnInfoModule.d.ts +2 -2
- package/src/Strategy/ColumnInfoModule.js +2 -2
- package/src/Strategy/CommentModule.d.ts +1 -2
- package/src/Strategy/CommentModule.js +29 -30
- package/src/Strategy/CustomSortModule.d.ts +1 -1
- package/src/Strategy/CustomSortModule.js +1 -1
- package/src/Strategy/DashboardModule.d.ts +2 -2
- package/src/Strategy/DashboardModule.js +3 -14
- package/src/Strategy/DataImportModule.d.ts +3 -3
- package/src/Strategy/DataImportModule.js +3 -3
- package/src/Strategy/ExportModule.d.ts +1 -2
- package/src/Strategy/ExportModule.js +12 -41
- package/src/Strategy/Fdc3Module.d.ts +1 -1
- package/src/Strategy/Fdc3Module.js +1 -14
- package/src/Strategy/FlashingCellModule.d.ts +2 -2
- package/src/Strategy/FlashingCellModule.js +2 -2
- package/src/Strategy/FormatColumnModule.d.ts +1 -1
- package/src/Strategy/FormatColumnModule.js +28 -47
- package/src/Strategy/FreeTextColumnModule.d.ts +1 -1
- package/src/Strategy/FreeTextColumnModule.js +1 -1
- package/src/Strategy/GridInfoModule.d.ts +2 -2
- package/src/Strategy/GridInfoModule.js +2 -2
- package/src/Strategy/Interface/IModule.d.ts +3 -3
- package/src/Strategy/LayoutModule.d.ts +4 -4
- package/src/Strategy/LayoutModule.js +46 -71
- package/src/Strategy/NoteModule.d.ts +1 -2
- package/src/Strategy/NoteModule.js +28 -30
- package/src/Strategy/PlusMinusModule.d.ts +1 -1
- package/src/Strategy/PlusMinusModule.js +1 -1
- package/src/Strategy/SettingsPanelModule.d.ts +3 -3
- package/src/Strategy/SettingsPanelModule.js +3 -3
- package/src/Strategy/SmartEditModule.d.ts +1 -1
- package/src/Strategy/SmartEditModule.js +3 -2
- package/src/Strategy/StyledColumnModule.d.ts +1 -1
- package/src/Strategy/StyledColumnModule.js +10 -9
- package/src/Strategy/SystemStatusModule.d.ts +2 -2
- package/src/Strategy/SystemStatusModule.js +4 -3
- package/src/Utilities/Services/ModuleService.js +2 -2
- package/src/agGrid/AgGridColumnAdapter.js +2 -2
- package/src/agGrid/AgGridMenuAdapter.d.ts +18 -8
- package/src/agGrid/AgGridMenuAdapter.js +240 -51
- package/src/env.js +2 -2
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/tsconfig.cjs.tsbuildinfo +1 -1
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AgGridMenuAdapter = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const MenuOptions_1 = require("../AdaptableOptions/MenuOptions");
|
|
6
5
|
const Icon_1 = require("../components/Icon");
|
|
7
6
|
const icons_1 = require("../components/icons");
|
|
8
7
|
const ArrayExtensions_1 = tslib_1.__importDefault(require("../Utilities/Extensions/ArrayExtensions"));
|
|
@@ -29,7 +28,8 @@ class AgGridMenuAdapter {
|
|
|
29
28
|
}
|
|
30
29
|
const adaptableColumn = this.adaptableApi.columnApi.getColumnWithColumnId((_a = params.column) === null || _a === void 0 ? void 0 : _a.getColId());
|
|
31
30
|
const menuContext = this.createColumnMenuContextObject(adaptableColumn, params.column);
|
|
32
|
-
const
|
|
31
|
+
const adaptableMenuItems = this.createAdaptableColumnMenuItems(menuContext);
|
|
32
|
+
const defaultColumnMenuStructure = this.buildColumnMenuDefaultStructure(adaptableMenuItems, menuContext);
|
|
33
33
|
// 1. first check if there is a custom column menu defined
|
|
34
34
|
if (typeof menuOptions.customColumnMenu === 'function') {
|
|
35
35
|
const defaultAgGridMenuItems = agGridMenuItems.map((itemName) => ({
|
|
@@ -39,7 +39,7 @@ class AgGridMenuAdapter {
|
|
|
39
39
|
const defaultAdaptableMenuItems = adaptableMenuItems.map((adaptableItem) => (Object.assign({ menuType: 'Adaptable' }, adaptableItem)));
|
|
40
40
|
const customMenuItems = menuOptions
|
|
41
41
|
.customColumnMenu(Object.assign(Object.assign({}, menuContext), { defaultAgGridMenuItems,
|
|
42
|
-
defaultAdaptableMenuItems,
|
|
42
|
+
defaultAdaptableMenuItems, defaultAdaptableMenuStructure: this.mapAdaptableMenuItemToSystemMenuItems(defaultColumnMenuStructure) }))
|
|
43
43
|
.filter(Boolean);
|
|
44
44
|
return customMenuItems
|
|
45
45
|
.map((customMenuItem) => this.mapCustomMenuItemToAgGridMenuDefinition(customMenuItem, menuContext))
|
|
@@ -49,16 +49,10 @@ class AgGridMenuAdapter {
|
|
|
49
49
|
const defaultContextMenu = [
|
|
50
50
|
...agGridMenuItems,
|
|
51
51
|
'separator',
|
|
52
|
-
...
|
|
52
|
+
...defaultColumnMenuStructure.map((adaptableItem) => this.mapAdaptableMenuItemToAgGridMenuDefinition(adaptableItem)),
|
|
53
53
|
];
|
|
54
54
|
return defaultContextMenu;
|
|
55
55
|
}
|
|
56
|
-
buildStructuredAdaptableColumnItems(menuContext) {
|
|
57
|
-
const adaptableMenuItems = this.createAdaptableColumnMenuItems(menuContext);
|
|
58
|
-
// sort Adaptable menu items by default order
|
|
59
|
-
const structuredAdaptableMenuItems = this.buildGroupedModuleItems(MenuOptions_1.DEFAULT_ADAPTABLE_COLUMN_MENU_STRUCTURE, adaptableMenuItems);
|
|
60
|
-
return { adaptableMenuItems, structuredAdaptableMenuItems };
|
|
61
|
-
}
|
|
62
56
|
buildContextMenu(params, originalGetContextMenuItems) {
|
|
63
57
|
var _a;
|
|
64
58
|
// we do this in order to refresh the internal state of selected cells (technically query the AG Grid cellRanges)
|
|
@@ -73,8 +67,7 @@ class AgGridMenuAdapter {
|
|
|
73
67
|
const adaptableColumn = this.adaptableApi.columnApi.getColumnWithColumnId((_a = params.column) === null || _a === void 0 ? void 0 : _a.getColId());
|
|
74
68
|
const menuContext = this.createContextMenuContextObject(params, adaptableColumn);
|
|
75
69
|
const adaptableMenuItems = this.createAdaptableContextMenuItems(menuContext);
|
|
76
|
-
|
|
77
|
-
const structuredAdaptableMenuItems = this.buildGroupedModuleItems(MenuOptions_1.DEFAULT_ADAPTABLE_CONTEXT_MENU_STRUCTURE, adaptableMenuItems);
|
|
70
|
+
const defaultContextMenuStructure = this.buildContextMenuDefaultStructure(adaptableMenuItems, menuContext);
|
|
78
71
|
// 1. first check if there is a custom context menu defined
|
|
79
72
|
if (typeof menuOptions.customContextMenu === 'function') {
|
|
80
73
|
const defaultAgGridMenuItems = agGridMenuItems.map((itemName) => ({
|
|
@@ -84,7 +77,7 @@ class AgGridMenuAdapter {
|
|
|
84
77
|
const defaultAdaptableMenuItems = adaptableMenuItems.map((adaptableItem) => (Object.assign({ menuType: 'Adaptable' }, adaptableItem)));
|
|
85
78
|
const customMenuItems = menuOptions
|
|
86
79
|
.customContextMenu(Object.assign(Object.assign({}, menuContext), { defaultAgGridMenuItems,
|
|
87
|
-
defaultAdaptableMenuItems,
|
|
80
|
+
defaultAdaptableMenuItems, defaultAdaptableMenuStructure: this.mapAdaptableMenuItemToSystemMenuItems(defaultContextMenuStructure) }))
|
|
88
81
|
.filter(Boolean);
|
|
89
82
|
return customMenuItems
|
|
90
83
|
.map((customMenuItem) => this.mapCustomMenuItemToAgGridMenuDefinition(customMenuItem, menuContext))
|
|
@@ -94,7 +87,7 @@ class AgGridMenuAdapter {
|
|
|
94
87
|
const defaultContextMenu = [
|
|
95
88
|
...agGridMenuItems,
|
|
96
89
|
'separator',
|
|
97
|
-
...
|
|
90
|
+
...defaultContextMenuStructure.map((adaptableItem) => this.mapAdaptableMenuItemToAgGridMenuDefinition(adaptableItem)),
|
|
98
91
|
];
|
|
99
92
|
return defaultContextMenu;
|
|
100
93
|
}
|
|
@@ -104,7 +97,7 @@ class AgGridMenuAdapter {
|
|
|
104
97
|
createAdaptableContextMenuItems(menuContext) {
|
|
105
98
|
let contextMenuItems = [];
|
|
106
99
|
this.adaptableInstance.adaptableModules.forEach((module) => {
|
|
107
|
-
let menuItems = module.
|
|
100
|
+
let menuItems = module.createContextMenuItems(menuContext);
|
|
108
101
|
if (menuItems) {
|
|
109
102
|
contextMenuItems.push(...menuItems.filter(Boolean).filter((item) => item.isVisible !== false));
|
|
110
103
|
}
|
|
@@ -201,40 +194,232 @@ class AgGridMenuAdapter {
|
|
|
201
194
|
}).filter(Boolean),
|
|
202
195
|
};
|
|
203
196
|
}
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
197
|
+
buildContextMenuDefaultStructure(availableMenuItems, menuContext) {
|
|
198
|
+
// Alert
|
|
199
|
+
const alertMenuItems = this.getModuleSpecificStructure('Alert', availableMenuItems);
|
|
200
|
+
// BulkUpdate
|
|
201
|
+
const bulkUpdateMenuItems = this.getModuleSpecificStructure('BulkUpdate', availableMenuItems);
|
|
202
|
+
// CalculatedColumn
|
|
203
|
+
const calculatedColumnMenuItems = this.getModuleSpecificStructure('CalculatedColumn', availableMenuItems);
|
|
204
|
+
// CellSummary
|
|
205
|
+
const cellSummaryMenuItems = this.getModuleSpecificStructure('CellSummary', availableMenuItems);
|
|
206
|
+
// ColumnFilter
|
|
207
|
+
const columnFilterMenuItems = this.getModuleSpecificStructure('ColumnFilter', availableMenuItems);
|
|
208
|
+
// ColumnInfo
|
|
209
|
+
const columnInfoMenuItems = this.getModuleSpecificStructure('ColumnInfo', availableMenuItems);
|
|
210
|
+
// Comment
|
|
211
|
+
const commentMenuItems = this.getModuleSpecificStructure('Comment', availableMenuItems);
|
|
212
|
+
// Dashboard
|
|
213
|
+
const dashboardMenuItems = this.getModuleSpecificStructure('Dashboard', availableMenuItems);
|
|
214
|
+
// DataImport
|
|
215
|
+
const dataImportMenuItems = this.getModuleSpecificStructure('DataImport', availableMenuItems);
|
|
216
|
+
// Export
|
|
217
|
+
const exportMenuItems = this.getExportContextMenuStructure(availableMenuItems);
|
|
218
|
+
// FDC3
|
|
219
|
+
const fdc3MenuItems = this.getModuleSpecificStructure('Fdc3', availableMenuItems);
|
|
220
|
+
// FlashingCell
|
|
221
|
+
const flashingCellMenuItems = this.getModuleSpecificStructure('FlashingCell', availableMenuItems);
|
|
222
|
+
// GridInfo
|
|
223
|
+
const gridInfoMenuItems = this.getModuleSpecificStructure('GridInfo', availableMenuItems);
|
|
224
|
+
// Layout
|
|
225
|
+
const layoutMenuItems = this.getLayoutContextMenuStructure(availableMenuItems);
|
|
226
|
+
// Note
|
|
227
|
+
const noteMenuItems = this.getModuleSpecificStructure('Note', availableMenuItems);
|
|
228
|
+
// SettingsPanel
|
|
229
|
+
const settingsPanelMenuItems = this.getModuleSpecificStructure('SettingsPanel', availableMenuItems);
|
|
230
|
+
// SmartEdit
|
|
231
|
+
const smartEditMenuItems = this.getModuleSpecificStructure('SmartEdit', availableMenuItems);
|
|
232
|
+
// SystemStatus
|
|
233
|
+
const systemStatusMenuItems = this.getModuleSpecificStructure('SystemStatus', availableMenuItems);
|
|
234
|
+
return [
|
|
235
|
+
...alertMenuItems,
|
|
236
|
+
...bulkUpdateMenuItems,
|
|
237
|
+
...calculatedColumnMenuItems,
|
|
238
|
+
...cellSummaryMenuItems,
|
|
239
|
+
...columnFilterMenuItems,
|
|
240
|
+
...columnInfoMenuItems,
|
|
241
|
+
...commentMenuItems,
|
|
242
|
+
...dashboardMenuItems,
|
|
243
|
+
...dataImportMenuItems,
|
|
244
|
+
...exportMenuItems,
|
|
245
|
+
...fdc3MenuItems,
|
|
246
|
+
...flashingCellMenuItems,
|
|
247
|
+
...gridInfoMenuItems,
|
|
248
|
+
...layoutMenuItems,
|
|
249
|
+
...noteMenuItems,
|
|
250
|
+
...settingsPanelMenuItems,
|
|
251
|
+
...smartEditMenuItems,
|
|
252
|
+
...systemStatusMenuItems,
|
|
253
|
+
];
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Default strategy for menu items: return as is if there is only one item, otherwise group them under a parent item
|
|
257
|
+
*/
|
|
258
|
+
getModuleSpecificStructure(module, menuItems) {
|
|
259
|
+
const moduleItems = menuItems.filter((menuItem) => menuItem.module === module);
|
|
260
|
+
if (moduleItems.length > 1) {
|
|
261
|
+
const moduleInfo = this.adaptableInstance.ModuleService.getModuleInfoByModule(module);
|
|
262
|
+
return [this.buildMenuGroupParent(module, moduleItems)];
|
|
263
|
+
}
|
|
264
|
+
else {
|
|
265
|
+
return moduleItems;
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
getExportContextMenuStructure(menuItems) {
|
|
269
|
+
const exportMenuItems = menuItems.filter((menuItem) => menuItem.module === 'Export');
|
|
270
|
+
if (!exportMenuItems.length) {
|
|
271
|
+
return [];
|
|
272
|
+
}
|
|
273
|
+
const cellSelectionItems = exportMenuItems.filter((item) => item.name.startsWith('export-cells'));
|
|
274
|
+
const canExportCells = cellSelectionItems.length;
|
|
275
|
+
const rowSelectionItems = exportMenuItems.filter((item) => item.name.startsWith('export-rows'));
|
|
276
|
+
const canExportRows = rowSelectionItems.length;
|
|
277
|
+
if (canExportCells && !canExportRows) {
|
|
278
|
+
return [
|
|
279
|
+
this.buildMenuGroupParent('Export', cellSelectionItems, {
|
|
280
|
+
label: 'Export Selected Cells',
|
|
281
|
+
}),
|
|
282
|
+
];
|
|
283
|
+
}
|
|
284
|
+
if (!canExportCells && canExportRows) {
|
|
285
|
+
return [
|
|
286
|
+
this.buildMenuGroupParent('Export', rowSelectionItems, {
|
|
287
|
+
label: 'Export Selected Rows',
|
|
288
|
+
}),
|
|
289
|
+
];
|
|
290
|
+
}
|
|
291
|
+
if (canExportCells && canExportRows) {
|
|
292
|
+
const cellsSubMenu = this.buildMenuGroupParent('Export', cellSelectionItems, {
|
|
293
|
+
label: 'Cells',
|
|
294
|
+
});
|
|
295
|
+
const rowsSubMenu = this.buildMenuGroupParent('Export', rowSelectionItems, { label: 'Rows' });
|
|
296
|
+
return [
|
|
297
|
+
this.buildMenuGroupParent('Export', [cellsSubMenu, rowsSubMenu], {
|
|
298
|
+
label: 'Export Selected',
|
|
299
|
+
}),
|
|
300
|
+
];
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
getLayoutContextMenuStructure(menuItems) {
|
|
304
|
+
const layoutMenuItems = menuItems.filter((menuItem) => menuItem.module === 'Layout');
|
|
305
|
+
if (!layoutMenuItems.length) {
|
|
306
|
+
return [];
|
|
307
|
+
}
|
|
308
|
+
const gridActionsItemNames = [
|
|
309
|
+
'layout-clear-selection',
|
|
310
|
+
'layout-select-all',
|
|
311
|
+
'layout-auto-size',
|
|
312
|
+
];
|
|
313
|
+
const gridActionsItems = layoutMenuItems.filter((item) => gridActionsItemNames.includes(item.name));
|
|
314
|
+
const otherLayoutItems = layoutMenuItems.filter((item) => !gridActionsItemNames.includes(item.name));
|
|
315
|
+
return [
|
|
316
|
+
this.buildMenuGroupParent('Layout', gridActionsItems, {
|
|
317
|
+
label: 'Grid',
|
|
318
|
+
icon: 'align-justify',
|
|
319
|
+
}),
|
|
320
|
+
...otherLayoutItems,
|
|
321
|
+
];
|
|
322
|
+
}
|
|
323
|
+
buildMenuGroupParent(module, menuItems, config) {
|
|
324
|
+
var _a, _b;
|
|
325
|
+
const moduleInfo = this.adaptableInstance.ModuleService.getModuleInfoByModule(module);
|
|
326
|
+
return {
|
|
327
|
+
name: 'menu-group-parent',
|
|
328
|
+
label: (_a = config === null || config === void 0 ? void 0 : config.label) !== null && _a !== void 0 ? _a : moduleInfo.FriendlyName,
|
|
329
|
+
isVisible: true,
|
|
330
|
+
module: moduleInfo.ModuleName,
|
|
331
|
+
icon: {
|
|
332
|
+
name: (_b = config === null || config === void 0 ? void 0 : config.icon) !== null && _b !== void 0 ? _b : moduleInfo.Glyph,
|
|
333
|
+
},
|
|
334
|
+
subItems: menuItems,
|
|
335
|
+
};
|
|
336
|
+
}
|
|
337
|
+
buildColumnMenuDefaultStructure(availableMenuItems, menuContext) {
|
|
338
|
+
// CalculatedColumn
|
|
339
|
+
const calculatedColumnMenuItems = this.getModuleSpecificStructure('CalculatedColumn', availableMenuItems);
|
|
340
|
+
// CellSummary
|
|
341
|
+
const cellSummaryMenuItems = this.getModuleSpecificStructure('CellSummary', availableMenuItems);
|
|
342
|
+
// ColumnFilter
|
|
343
|
+
const columnFilterMenuItems = this.getModuleSpecificStructure('ColumnFilter', availableMenuItems);
|
|
344
|
+
// ColumnInfo
|
|
345
|
+
const columnInfoMenuItems = this.getModuleSpecificStructure('ColumnInfo', availableMenuItems);
|
|
346
|
+
// CustomSort
|
|
347
|
+
const customSortMenuItems = this.getModuleSpecificStructure('CustomSort', availableMenuItems);
|
|
348
|
+
// Dashboard
|
|
349
|
+
const dashboardMenuItems = this.getModuleSpecificStructure('Dashboard', availableMenuItems);
|
|
350
|
+
// DataImport
|
|
351
|
+
const dataImportMenuItems = this.getModuleSpecificStructure('DataImport', availableMenuItems);
|
|
352
|
+
// FlashingCell
|
|
353
|
+
const flashingCellMenuItems = this.getModuleSpecificStructure('FlashingCell', availableMenuItems);
|
|
354
|
+
// FormatColumn
|
|
355
|
+
const formatColumnMenuItems = this.getModuleSpecificStructure('FormatColumn', availableMenuItems);
|
|
356
|
+
// FreeTextColumn
|
|
357
|
+
const freeTextColumnMenuItems = this.getModuleSpecificStructure('FreeTextColumn', availableMenuItems);
|
|
358
|
+
// GridInfo
|
|
359
|
+
const gridInfoMenuItems = this.getModuleSpecificStructure('GridInfo', availableMenuItems);
|
|
360
|
+
// Layout
|
|
361
|
+
const layoutMenuItems = this.getLayoutColumnMenuStructure(availableMenuItems);
|
|
362
|
+
// PlusMinus
|
|
363
|
+
const plusMinusMenuItems = this.getModuleSpecificStructure('PlusMinus', availableMenuItems);
|
|
364
|
+
// SettingsPanel
|
|
365
|
+
const settingsPanelMenuItems = this.getModuleSpecificStructure('SettingsPanel', availableMenuItems);
|
|
366
|
+
// StyledColumn
|
|
367
|
+
const styledColumnMenuItems = this.getStyledColumnColumnMenuStructure(availableMenuItems);
|
|
368
|
+
// SystemStatus
|
|
369
|
+
const systemStatusMenuItems = this.getModuleSpecificStructure('SystemStatus', availableMenuItems);
|
|
370
|
+
return [
|
|
371
|
+
...calculatedColumnMenuItems,
|
|
372
|
+
...cellSummaryMenuItems,
|
|
373
|
+
...columnFilterMenuItems,
|
|
374
|
+
...columnInfoMenuItems,
|
|
375
|
+
...customSortMenuItems,
|
|
376
|
+
...dashboardMenuItems,
|
|
377
|
+
...dataImportMenuItems,
|
|
378
|
+
...flashingCellMenuItems,
|
|
379
|
+
...formatColumnMenuItems,
|
|
380
|
+
...freeTextColumnMenuItems,
|
|
381
|
+
...gridInfoMenuItems,
|
|
382
|
+
...layoutMenuItems,
|
|
383
|
+
...plusMinusMenuItems,
|
|
384
|
+
...settingsPanelMenuItems,
|
|
385
|
+
...styledColumnMenuItems,
|
|
386
|
+
...systemStatusMenuItems,
|
|
387
|
+
];
|
|
388
|
+
}
|
|
389
|
+
getLayoutColumnMenuStructure(menuItems) {
|
|
390
|
+
const layoutMenuItems = menuItems.filter((menuItem) => menuItem.module === 'Layout');
|
|
391
|
+
if (!layoutMenuItems.length) {
|
|
392
|
+
return [];
|
|
393
|
+
}
|
|
394
|
+
const selectActionsItemNames = [
|
|
395
|
+
'layout-column-select-preserve',
|
|
396
|
+
'layout-column-select-reset',
|
|
397
|
+
'layout-column-select',
|
|
398
|
+
'layout-select-all',
|
|
399
|
+
];
|
|
400
|
+
const selectActionsItems = layoutMenuItems.filter((item) => selectActionsItemNames.includes(item.name));
|
|
401
|
+
const otherLayoutItems = layoutMenuItems.filter((item) => !selectActionsItemNames.includes(item.name));
|
|
402
|
+
return [
|
|
403
|
+
...otherLayoutItems,
|
|
404
|
+
this.buildMenuGroupParent('Layout', selectActionsItems, {
|
|
405
|
+
label: 'Select',
|
|
406
|
+
icon: 'tab-unselected',
|
|
407
|
+
}),
|
|
408
|
+
];
|
|
409
|
+
}
|
|
410
|
+
getStyledColumnColumnMenuStructure(menuItems) {
|
|
411
|
+
const styledColumnMenuItems = menuItems.filter((menuItem) => menuItem.module === 'StyledColumn');
|
|
412
|
+
if (!styledColumnMenuItems.length) {
|
|
413
|
+
return [];
|
|
414
|
+
}
|
|
415
|
+
if (styledColumnMenuItems.length === 1) {
|
|
416
|
+
return styledColumnMenuItems;
|
|
417
|
+
}
|
|
418
|
+
return [
|
|
419
|
+
this.buildMenuGroupParent('StyledColumn', styledColumnMenuItems, {
|
|
420
|
+
label: 'Create Styled Column',
|
|
421
|
+
}),
|
|
422
|
+
];
|
|
238
423
|
}
|
|
239
424
|
mapAdaptableMenuItemToSystemMenuItems(adaptableMenuItems) {
|
|
240
425
|
return (adaptableMenuItems !== null && adaptableMenuItems !== void 0 ? adaptableMenuItems : []).map((menuItem) => {
|
|
@@ -248,7 +433,7 @@ class AgGridMenuAdapter {
|
|
|
248
433
|
createAdaptableColumnMenuItems(menuContext) {
|
|
249
434
|
let contextMenuItems = [];
|
|
250
435
|
this.adaptableInstance.adaptableModules.forEach((s) => {
|
|
251
|
-
let menuItems = s.
|
|
436
|
+
let menuItems = s.createColumnMenuItems(menuContext.adaptableColumn);
|
|
252
437
|
if (menuItems) {
|
|
253
438
|
contextMenuItems.push(...menuItems.filter(Boolean).filter((item) => item.isVisible !== false));
|
|
254
439
|
}
|
|
@@ -273,10 +458,14 @@ class AgGridMenuAdapter {
|
|
|
273
458
|
});
|
|
274
459
|
}
|
|
275
460
|
}
|
|
461
|
+
/**
|
|
462
|
+
* The output of this function is used to build the column header menu if the AG Grid Menu Module is NOT present
|
|
463
|
+
* This is controlled by the AdaptableAgGrid.embedColumnMenu property
|
|
464
|
+
*/
|
|
276
465
|
buildStandaloneColumnHeader(adaptableColumn) {
|
|
277
466
|
const agGridColumn = this.adaptableInstance.getAgGridColumnForColumnId(adaptableColumn.columnId);
|
|
278
467
|
const menuContext = this.createColumnMenuContextObject(adaptableColumn, agGridColumn);
|
|
279
|
-
return this.
|
|
468
|
+
return this.createAdaptableColumnMenuItems(menuContext);
|
|
280
469
|
}
|
|
281
470
|
}
|
|
282
471
|
exports.AgGridMenuAdapter = AgGridMenuAdapter;
|
package/src/env.js
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.default = {
|
|
4
4
|
INFINITE_TABLE_LICENSE_KEY: "StartDate=2021-06-29|EndDate=2030-01-01|Owner=Adaptable|Type=distribution|TS=1624971462479|C=137829811,1004007071,2756196225,1839832928,3994409405,636616862" || '',
|
|
5
|
-
PUBLISH_TIMESTAMP:
|
|
6
|
-
VERSION: "18.0.0-canary.
|
|
5
|
+
PUBLISH_TIMESTAMP: 1712613832011 || Date.now(),
|
|
6
|
+
VERSION: "18.0.0-canary.27" || '--current-version--',
|
|
7
7
|
};
|