@adaptabletools/adaptable 12.0.1-canary.0 → 12.0.3

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.
Files changed (143) hide show
  1. package/base.css +5 -18
  2. package/bundle.cjs.js +107 -107
  3. package/index.css +6 -22
  4. package/package.json +1 -1
  5. package/publishTimestamp.d.ts +1 -1
  6. package/publishTimestamp.js +1 -1
  7. package/src/AdaptableInterfaces/IAdaptable.d.ts +4 -2
  8. package/src/AdaptableOptions/AdaptableQLOptions.d.ts +1 -1
  9. package/src/AdaptableOptions/EditOptions.d.ts +6 -9
  10. package/src/AdaptableOptions/ExportOptions.d.ts +15 -0
  11. package/src/AdaptableOptions/Glue42PluginOptions.d.ts +1 -1
  12. package/src/AdaptableOptions/IPushPullPluginOptions.d.ts +1 -3
  13. package/src/AdaptableOptions/StateOptions.d.ts +9 -23
  14. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +34 -1
  15. package/src/Api/ChartingApi.d.ts +19 -2
  16. package/src/Api/FilterApi.d.ts +7 -2
  17. package/src/Api/FinanceApi.d.ts +8 -8
  18. package/src/Api/FormatColumnApi.d.ts +6 -6
  19. package/src/Api/GridApi.d.ts +1 -1
  20. package/src/Api/Implementation/ChartingApiImpl.d.ts +6 -0
  21. package/src/Api/Implementation/ChartingApiImpl.js +17 -0
  22. package/src/Api/Implementation/ConfigApiImpl.d.ts +2 -0
  23. package/src/Api/Implementation/ConfigApiImpl.js +11 -0
  24. package/src/Api/Implementation/FilterApiImpl.d.ts +1 -0
  25. package/src/Api/Implementation/FilterApiImpl.js +5 -0
  26. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +3 -3
  27. package/src/Api/Implementation/FormatColumnApiImpl.js +13 -11
  28. package/src/Api/Implementation/GridApiImpl.d.ts +1 -1
  29. package/src/Api/Implementation/GridApiImpl.js +2 -2
  30. package/src/Api/Implementation/InternalApiImpl.js +1 -2
  31. package/src/Api/Implementation/LayoutApiImpl.js +1 -1
  32. package/src/Api/Implementation/TeamSharingApiImpl.d.ts +1 -0
  33. package/src/Api/Implementation/TeamSharingApiImpl.js +5 -0
  34. package/src/Api/StatusBarApi.d.ts +3 -0
  35. package/src/Api/TeamSharingApi.d.ts +4 -0
  36. package/src/PredefinedConfig/AdaptableState.d.ts +2 -0
  37. package/src/PredefinedConfig/CalculatedColumnState.d.ts +0 -5
  38. package/src/PredefinedConfig/ChartingState.d.ts +20 -0
  39. package/src/PredefinedConfig/ChartingState.js +2 -0
  40. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +4 -1
  41. package/src/PredefinedConfig/Common/CellSummary.d.ts +3 -0
  42. package/src/PredefinedConfig/Common/ColumnFilter.d.ts +9 -0
  43. package/src/PredefinedConfig/Common/FDC3Context.d.ts +12 -3
  44. package/src/PredefinedConfig/Common/FilterActionOnDataChange.d.ts +1 -2
  45. package/src/PredefinedConfig/Common/FilterActionOnDataChange.js +1 -2
  46. package/src/PredefinedConfig/Common/Types.d.ts +1 -1
  47. package/src/PredefinedConfig/ExportState.d.ts +6 -0
  48. package/src/PredefinedConfig/FormatColumnState.d.ts +4 -1
  49. package/src/PredefinedConfig/IPushPullState.d.ts +16 -5
  50. package/src/PredefinedConfig/LayoutState.d.ts +1 -1
  51. package/src/PredefinedConfig/PredefinedConfig.d.ts +5 -0
  52. package/src/PredefinedConfig/ScheduleState.d.ts +1 -1
  53. package/src/PredefinedConfig/ShortcutState.d.ts +1 -1
  54. package/src/PredefinedConfig/TeamSharingState.d.ts +6 -0
  55. package/src/Redux/ActionsReducers/ChartingRedux.d.ts +23 -0
  56. package/src/Redux/ActionsReducers/ChartingRedux.js +38 -0
  57. package/src/Redux/ActionsReducers/GridRedux.d.ts +30 -1
  58. package/src/Redux/ActionsReducers/GridRedux.js +105 -2
  59. package/src/Redux/ActionsReducers/LayoutRedux.d.ts +10 -11
  60. package/src/Redux/ActionsReducers/LayoutRedux.js +13 -10
  61. package/src/Redux/Store/AdaptableStore.js +39 -8
  62. package/src/Strategy/AdaptableModuleBase.d.ts +4 -0
  63. package/src/Strategy/AdaptableModuleBase.js +6 -0
  64. package/src/Strategy/AlertModule.js +3 -3
  65. package/src/Strategy/ChartingModule.js +1 -1
  66. package/src/Strategy/DashboardModule.js +1 -0
  67. package/src/Strategy/ExportModule.js +1 -0
  68. package/src/Strategy/FlashingCellModule.js +3 -3
  69. package/src/Strategy/FormatColumnModule.js +3 -3
  70. package/src/Strategy/GridInfoModule.js +2 -0
  71. package/src/Strategy/Interface/IModule.d.ts +11 -1
  72. package/src/Strategy/LayoutModule.js +2 -0
  73. package/src/Strategy/TeamSharingModule.d.ts +11 -1
  74. package/src/Strategy/TeamSharingModule.js +104 -0
  75. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.d.ts +3 -0
  76. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +3 -0
  77. package/src/Utilities/ExpressionFunctions/booleanExpressionFunctions.d.ts +3 -0
  78. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.d.ts +3 -0
  79. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.d.ts +3 -0
  80. package/src/Utilities/Helpers/FormatHelper.d.ts +1 -1
  81. package/src/Utilities/Helpers/FormatHelper.js +7 -3
  82. package/src/Utilities/Helpers/Helper.js +1 -1
  83. package/src/Utilities/ObjectFactory.d.ts +5 -1
  84. package/src/Utilities/ObjectFactory.js +12 -2
  85. package/src/Utilities/Services/Interface/IReportService.d.ts +1 -1
  86. package/src/Utilities/Services/ReportService.d.ts +1 -1
  87. package/src/Utilities/Services/ReportService.js +5 -5
  88. package/src/Utilities/Services/TeamSharingService.js +0 -2
  89. package/src/View/AdaptableViewFactory.js +0 -2
  90. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +2 -9
  91. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.d.ts +13 -1
  92. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +17 -14
  93. package/src/View/Components/Buttons/ButtonDelete.js +3 -3
  94. package/src/View/Components/FilterForm/QuickFilterForm.js +22 -1
  95. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +4 -0
  96. package/src/View/Components/Popups/AdaptablePopupTeamSharing.js +1 -1
  97. package/src/View/Filter/FilterSummary.d.ts +1 -1
  98. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +13 -9
  99. package/src/View/Layout/LayoutEditorStandalonePopup.js +3 -1
  100. package/src/View/Layout/LayoutPopup.d.ts +1 -1
  101. package/src/View/Layout/LayoutViewPanel.d.ts +1 -1
  102. package/src/View/Layout/LayoutViewPanel.js +2 -1
  103. package/src/View/Layout/Wizard/LayoutEditorWizard.d.ts +2 -27
  104. package/src/View/TeamSharing/SharedEntityDependencies.d.ts +8 -0
  105. package/src/View/TeamSharing/SharedEntityDependencies.js +27 -0
  106. package/src/View/TeamSharing/SharedEntityObjectView.d.ts +9 -0
  107. package/src/View/TeamSharing/SharedEntityObjectView.js +84 -0
  108. package/src/View/TeamSharing/TeamSharingApplyButton.d.ts +6 -0
  109. package/src/View/TeamSharing/TeamSharingApplyButton.js +15 -0
  110. package/src/agGrid/Adaptable.d.ts +4 -2
  111. package/src/agGrid/Adaptable.js +37 -22
  112. package/src/components/icons/index.js +0 -4
  113. package/src/metamodel/adaptable.metamodel.d.ts +224 -2
  114. package/src/metamodel/adaptable.metamodel.js +1 -1
  115. package/src/types.d.ts +4 -2
  116. package/version.d.ts +1 -1
  117. package/version.js +1 -1
  118. package/src/View/Alert/AlertSharedEntity.d.ts +0 -5
  119. package/src/View/Alert/AlertSharedEntity.js +0 -19
  120. package/src/View/CalculatedColumn/CalculatedColumnSharedEntity.d.ts +0 -5
  121. package/src/View/CalculatedColumn/CalculatedColumnSharedEntity.js +0 -20
  122. package/src/View/ConditionalStyle/ConditionalStyleSharedEntity.d.ts +0 -5
  123. package/src/View/ConditionalStyle/ConditionalStyleSharedEntity.js +0 -23
  124. package/src/View/CustomSort/CustomSortSharedEntity.d.ts +0 -6
  125. package/src/View/CustomSort/CustomSortSharedEntity.js +0 -24
  126. package/src/View/Export/ExportSharedEntity.d.ts +0 -5
  127. package/src/View/Export/ExportSharedEntity.js +0 -16
  128. package/src/View/Filter/FilterSharedEntity.d.ts +0 -5
  129. package/src/View/Filter/FilterSharedEntity.js +0 -15
  130. package/src/View/FormatColumn/FormatColumnSharedEntity.d.ts +0 -5
  131. package/src/View/FormatColumn/FormatColumnSharedEntity.js +0 -18
  132. package/src/View/FreeTextColumn/FreeTextColumnSharedEntity.d.ts +0 -5
  133. package/src/View/FreeTextColumn/FreeTextColumnSharedEntity.js +0 -24
  134. package/src/View/Layout/LayoutSharedEntity.d.ts +0 -5
  135. package/src/View/Layout/LayoutSharedEntity.js +0 -15
  136. package/src/View/PlusMinus/PlusMinusSharedEntity.d.ts +0 -5
  137. package/src/View/PlusMinus/PlusMinusSharedEntity.js +0 -21
  138. package/src/View/Query/NamedQuerySharedEntity.d.ts +0 -5
  139. package/src/View/Query/NamedQuerySharedEntity.js +0 -19
  140. package/src/View/Shortcut/ShortcutSharedEntity.d.ts +0 -5
  141. package/src/View/Shortcut/ShortcutSharedEntity.js +0 -19
  142. package/src/View/TeamSharing/TeamSharingPopup.d.ts +0 -23
  143. package/src/View/TeamSharing/TeamSharingPopup.js +0 -163
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GridReducer = exports.SetModuleButtonMenuItems = exports.SetSettingPanelModuleMenuItems = exports.SetTreeModeOff = exports.SetTreeModeOn = exports.SetPivotModeOff = exports.SetPivotModeOn = exports.GridRefreshCells = exports.GridSetCellSummary = exports.GridCreateCellSummary = exports.GridSetSelectedRows = exports.GridSetSelectedCells = exports.GridClearSort = exports.GridSetSort = exports.GridEditColumn = exports.GridRemoveColumn = exports.GridAddColumns = exports.GridAddColumn = exports.GridSetColumns = exports.GRID_SET_TREE_MODE_OFF = exports.GRID_SET_TREE_MODE_ON = exports.GRID_SET_PIVOT_MODE_OFF = exports.GRID_SET_PIVOT_MODE_ON = exports.GRID_SET_MODULE_BUTTON_MENUITEMS = exports.GRID_SET_MODULE_DROPDOWN_MENUITEMS = exports.GRID_REFRESH_CELLS = exports.GRID_SET_CELLS_SUMMARY = exports.GRID_CREATE_CELLS_SUMMARY = exports.GRID_SET_SELECTED_ROWS = exports.GRID_SET_SELECTED_CELLS = exports.GRID_CLEAR_SORT = exports.GRID_SET_SORT = exports.GRID_EDIT_COLUMN = exports.GRID_REMOVE_COLUMN = exports.GRID_ADD_COLUMNS = exports.GRID_ADD_COLUMN = exports.GRID_SET_COLUMNS = void 0;
3
+ exports.GridReducer = exports.LayoutDraftColumnFilterClearAll = exports.LayoutDraftColumnFilterClear = exports.LayoutDraftColumnFilterSet = exports.LayoutDraftColumnFilterEdit = exports.LayoutDraftColumnFilterAdd = exports.LayoutUpdateCurrentDraft = exports.SetModuleButtonMenuItems = exports.SetSettingPanelModuleMenuItems = exports.SetTreeModeOff = exports.SetTreeModeOn = exports.SetPivotModeOff = exports.SetPivotModeOn = exports.GridRefreshCells = exports.GridSetCellSummary = exports.GridCreateCellSummary = exports.GridSetSelectedRows = exports.GridSetSelectedCells = exports.GridClearSort = exports.GridSetSort = exports.GridEditColumn = exports.GridRemoveColumn = exports.GridAddColumns = exports.GridAddColumn = exports.GridSetColumns = exports.LAYOUT_DRAFT_COLUMN_FILTER_CLEAR = exports.LAYOUT_DRAFT_COLUMN_FILTER_CLEAR_ALL = exports.LAYOUT_DRAFT_COLUMN_FILTER_SET = exports.LAYOUT_DRAFT_COLUMN_FILTER_EDIT = exports.LAYOUT_DRAFT_COLUMN_FILTER_ADD = exports.LAYOUT_UPDATE_CURRENT_DRAFT = exports.GRID_SET_TREE_MODE_OFF = exports.GRID_SET_TREE_MODE_ON = exports.GRID_SET_PIVOT_MODE_OFF = exports.GRID_SET_PIVOT_MODE_ON = exports.GRID_SET_MODULE_BUTTON_MENUITEMS = exports.GRID_SET_MODULE_DROPDOWN_MENUITEMS = exports.GRID_REFRESH_CELLS = exports.GRID_SET_CELLS_SUMMARY = exports.GRID_CREATE_CELLS_SUMMARY = exports.GRID_SET_SELECTED_ROWS = exports.GRID_SET_SELECTED_CELLS = exports.GRID_CLEAR_SORT = exports.GRID_SET_SORT = exports.GRID_EDIT_COLUMN = exports.GRID_REMOVE_COLUMN = exports.GRID_ADD_COLUMNS = exports.GRID_ADD_COLUMN = exports.GRID_SET_COLUMNS = void 0;
4
+ const tslib_1 = require("tslib");
4
5
  const GeneralConstants_1 = require("../../Utilities/Constants/GeneralConstants");
5
6
  const LayoutRedux_1 = require("./LayoutRedux");
7
+ const AdaptableHelper_1 = tslib_1.__importDefault(require("../../Utilities/Helpers/AdaptableHelper"));
6
8
  /**
7
9
  * @ReduxAction Columns have been set in the Grid
8
10
  */
@@ -75,6 +77,12 @@ exports.GRID_SET_TREE_MODE_ON = 'GRID_SET_TREE_MODE_ON';
75
77
  * @ReduxAction Grid is taken out of tree mode
76
78
  */
77
79
  exports.GRID_SET_TREE_MODE_OFF = 'GRID_SET_TREE_MODE_OFF';
80
+ exports.LAYOUT_UPDATE_CURRENT_DRAFT = 'LAYOUT_UPDATE_CURRENT_DRAFT';
81
+ exports.LAYOUT_DRAFT_COLUMN_FILTER_ADD = 'LAYOUT_DRAFT_COLUMN_FILTER_ADD';
82
+ exports.LAYOUT_DRAFT_COLUMN_FILTER_EDIT = 'LAYOUT_DRAFT_COLUMN_FILTER_EDIT';
83
+ exports.LAYOUT_DRAFT_COLUMN_FILTER_SET = 'LAYOUT_DRAFT_COLUMN_FILTER_SET';
84
+ exports.LAYOUT_DRAFT_COLUMN_FILTER_CLEAR_ALL = 'LAYOUT_DRAFT_COLUMN_FILTER_CLEAR_ALL';
85
+ exports.LAYOUT_DRAFT_COLUMN_FILTER_CLEAR = 'LAYOUT_DRAFT_COLUMN_FILTER_CLEAR';
78
86
  const GridSetColumns = (Columns) => ({
79
87
  type: exports.GRID_SET_COLUMNS,
80
88
  columns: Columns,
@@ -160,6 +168,35 @@ const SetModuleButtonMenuItems = (MenuItems) => ({
160
168
  menuItems: MenuItems,
161
169
  });
162
170
  exports.SetModuleButtonMenuItems = SetModuleButtonMenuItems;
171
+ const LayoutUpdateCurrentDraft = (layout) => ({
172
+ type: exports.LAYOUT_UPDATE_CURRENT_DRAFT,
173
+ layout,
174
+ });
175
+ exports.LayoutUpdateCurrentDraft = LayoutUpdateCurrentDraft;
176
+ const LayoutDraftColumnFilterAdd = (columnFilter) => ({
177
+ type: exports.LAYOUT_DRAFT_COLUMN_FILTER_ADD,
178
+ columnFilter,
179
+ });
180
+ exports.LayoutDraftColumnFilterAdd = LayoutDraftColumnFilterAdd;
181
+ const LayoutDraftColumnFilterEdit = (columnFilter) => ({
182
+ type: exports.LAYOUT_DRAFT_COLUMN_FILTER_EDIT,
183
+ columnFilter,
184
+ });
185
+ exports.LayoutDraftColumnFilterEdit = LayoutDraftColumnFilterEdit;
186
+ const LayoutDraftColumnFilterSet = (columnFilter) => ({
187
+ type: exports.LAYOUT_DRAFT_COLUMN_FILTER_SET,
188
+ columnFilter,
189
+ });
190
+ exports.LayoutDraftColumnFilterSet = LayoutDraftColumnFilterSet;
191
+ const LayoutDraftColumnFilterClear = (columnFilter) => ({
192
+ type: exports.LAYOUT_DRAFT_COLUMN_FILTER_CLEAR,
193
+ columnFilter,
194
+ });
195
+ exports.LayoutDraftColumnFilterClear = LayoutDraftColumnFilterClear;
196
+ const LayoutDraftColumnFilterClearAll = () => ({
197
+ type: exports.LAYOUT_DRAFT_COLUMN_FILTER_CLEAR_ALL,
198
+ });
199
+ exports.LayoutDraftColumnFilterClearAll = LayoutDraftColumnFilterClearAll;
163
200
  const initialState = {
164
201
  Columns: GeneralConstants_1.EMPTY_ARRAY,
165
202
  CurrentLayout: null,
@@ -173,6 +210,7 @@ const initialState = {
173
210
  IsGridInTreeMode: false,
174
211
  };
175
212
  const GridReducer = (state = initialState, action) => {
213
+ var _a, _b, _c, _d;
176
214
  switch (action.type) {
177
215
  case exports.GRID_SET_COLUMNS:
178
216
  return Object.assign({}, state, {
@@ -222,12 +260,77 @@ const GridReducer = (state = initialState, action) => {
222
260
  const menuItems = actionTyped.menuItems.sort((a, b) => a.label < b.label ? -1 : a.label > b.label ? 1 : 0);
223
261
  return Object.assign({}, state, { ModuleButtonMenuItems: menuItems });
224
262
  }
225
- case LayoutRedux_1.LAYOUT_UPDATE_CURRENT_DRAFT: {
263
+ case exports.LAYOUT_UPDATE_CURRENT_DRAFT: {
226
264
  const currentDraftLayout = action.layout;
227
265
  return Object.assign({}, state, {
228
266
  CurrentLayout: currentDraftLayout,
229
267
  });
230
268
  }
269
+ case exports.LAYOUT_DRAFT_COLUMN_FILTER_SET: {
270
+ const currentDraftLayout = state.CurrentLayout;
271
+ if (currentDraftLayout) {
272
+ let columnFilters = (_a = currentDraftLayout.ColumnFilters) !== null && _a !== void 0 ? _a : [];
273
+ const columnFilterAction = action
274
+ .columnFilter;
275
+ AdaptableHelper_1.default.addUuidAndSource(columnFilterAction);
276
+ columnFilters = columnFilters
277
+ .filter((colFilter) => {
278
+ return colFilter.ColumnId !== columnFilterAction.ColumnId;
279
+ })
280
+ .concat(columnFilterAction);
281
+ return Object.assign({}, state, {
282
+ CurrentLayout: Object.assign(Object.assign({}, currentDraftLayout), { ColumnFilters: columnFilters }),
283
+ });
284
+ }
285
+ }
286
+ case exports.LAYOUT_DRAFT_COLUMN_FILTER_ADD: {
287
+ const currentDraftLayout = state.CurrentLayout;
288
+ if (currentDraftLayout) {
289
+ let columnFilters = [...((_b = currentDraftLayout.ColumnFilters) !== null && _b !== void 0 ? _b : [])];
290
+ const columnFilterAction = action
291
+ .columnFilter;
292
+ AdaptableHelper_1.default.addUuidAndSource(columnFilterAction);
293
+ columnFilters.push(columnFilterAction);
294
+ return Object.assign({}, state, {
295
+ CurrentLayout: Object.assign(Object.assign({}, currentDraftLayout), { ColumnFilters: columnFilters }),
296
+ });
297
+ }
298
+ }
299
+ case exports.LAYOUT_DRAFT_COLUMN_FILTER_EDIT: {
300
+ const currentDraftLayout = state.CurrentLayout;
301
+ if (currentDraftLayout) {
302
+ const columnFilterAction = action
303
+ .columnFilter;
304
+ let columnFilters = ((_c = currentDraftLayout.ColumnFilters) !== null && _c !== void 0 ? _c : []).map((abObject) => abObject.Uuid === columnFilterAction.Uuid ? columnFilterAction : abObject);
305
+ return Object.assign({}, state, {
306
+ CurrentLayout: Object.assign(Object.assign({}, currentDraftLayout), { ColumnFilters: columnFilters }),
307
+ });
308
+ }
309
+ }
310
+ case exports.LAYOUT_DRAFT_COLUMN_FILTER_CLEAR: {
311
+ const currentDraftLayout = state.CurrentLayout;
312
+ if (currentDraftLayout) {
313
+ let columnFilters = [...((_d = currentDraftLayout.ColumnFilters) !== null && _d !== void 0 ? _d : [])];
314
+ const actionTypedDelete = action;
315
+ const index = actionTypedDelete.columnFilter
316
+ ? columnFilters.findIndex((i) => i.Uuid == actionTypedDelete.columnFilter.Uuid)
317
+ : -1;
318
+ if (index != -1) {
319
+ columnFilters.splice(index, 1);
320
+ }
321
+ return Object.assign({}, state, {
322
+ CurrentLayout: Object.assign(Object.assign({}, currentDraftLayout), { ColumnFilters: columnFilters }),
323
+ });
324
+ }
325
+ }
326
+ case exports.LAYOUT_DRAFT_COLUMN_FILTER_CLEAR_ALL: {
327
+ const currentDraftLayout = state.CurrentLayout;
328
+ if (currentDraftLayout) {
329
+ return Object.assign({}, state, {
330
+ CurrentLayout: Object.assign(Object.assign({}, currentDraftLayout), { ColumnFilters: [] }),
331
+ });
332
+ }
333
+ }
231
334
  case LayoutRedux_1.LAYOUT_SELECT: {
232
335
  return Object.assign({}, state, {
233
336
  CurrentLayout: null,
@@ -22,6 +22,9 @@ export declare const LAYOUT_SELECT = "LAYOUT_SELECT";
22
22
  * @ReduxAction A Layout has been (auto)saved
23
23
  */
24
24
  export declare const LAYOUT_SAVE = "LAYOUT_SAVE";
25
+ /**
26
+ * @ReduxAction A Column has been removed
27
+ */
25
28
  export declare const LAYOUT_REMOVE_COLUMN = "LAYOUT_REMOVE_COLUMN";
26
29
  /**
27
30
  * @ReduxAction A Column Filter has been added
@@ -50,22 +53,21 @@ export interface LayoutColumnFilterAddAction extends LayoutColumnFilterAction {
50
53
  }
51
54
  export interface LayoutColumnFilterEditAction extends LayoutColumnFilterAction {
52
55
  }
53
- export interface LayoutFilterSetAction extends LayoutColumnFilterAction {
56
+ export interface LayoutColumnFilterSetAction extends LayoutColumnFilterAction {
54
57
  }
55
- export interface LayoutFilterClearAction extends LayoutColumnFilterAction {
58
+ export interface LayoutColumnFilterClearAction extends LayoutColumnFilterAction {
56
59
  }
57
- export interface LayoutFilterClearAllAction extends Redux.Action {
60
+ export interface LayoutColumnFilterClearAllAction extends Redux.Action {
58
61
  }
59
62
  export declare const LayoutColumnFilterAdd: (columnFilter: ColumnFilter) => LayoutColumnFilterAddAction;
60
63
  export declare const LayoutColumnFilterEdit: (columnFilter: ColumnFilter) => LayoutColumnFilterEditAction;
61
- export declare const LayoutColumnFilterSet: (columnFilter: ColumnFilter) => LayoutFilterSetAction;
62
- export declare const LayoutColumnFilterClearAll: () => LayoutFilterClearAllAction;
63
- export declare const LayoutColumnFilterClear: (columnFilter: ColumnFilter) => LayoutFilterClearAction;
64
+ export declare const LayoutColumnFilterSet: (columnFilter: ColumnFilter) => LayoutColumnFilterSetAction;
65
+ export declare const LayoutColumnFilterClearAll: () => LayoutColumnFilterClearAllAction;
66
+ export declare const LayoutColumnFilterClear: (columnFilter: ColumnFilter) => LayoutColumnFilterClearAction;
64
67
  /**
65
68
  * @ReduxAction A new caption / header has been set for a Column in the Layout
66
69
  */
67
70
  export declare const LAYOUT_SET_COLUMN_CAPTION = "LAYOUT_SET_COLUMN_CAPTION";
68
- export declare const LAYOUT_UPDATE_CURRENT_DRAFT = "LAYOUT_UPDATE_CURRENT_DRAFT";
69
71
  /**
70
72
  * @ReduxAction Layout Module is ready
71
73
  */
@@ -90,8 +92,6 @@ export interface LayoutRemoveColumnAction extends Redux.Action {
90
92
  layoutName: string;
91
93
  columnId: string;
92
94
  }
93
- export interface LayoutUpdateCurrentDraftAction extends LayoutAction {
94
- }
95
95
  export interface LayoutSelectAction extends Redux.Action {
96
96
  layoutName: string;
97
97
  }
@@ -106,9 +106,8 @@ export declare const LayoutAdd: (layout: Layout) => LayoutAddAction;
106
106
  export declare const LayoutDelete: (layout: Layout) => LayoutDeleteAction;
107
107
  export declare const LayoutSave: (layout: Layout) => LayoutSaveAction;
108
108
  export declare const LayoutSetColumnCaption: (layoutName: string, columnId: string, caption: string) => LayoutSetColumnCaptionAction;
109
- export declare const LayouRemoveColumn: (layoutName: string, columnId: string) => LayoutRemoveColumnAction;
109
+ export declare const LayoutRemoveColumn: (layoutName: string, columnId: string) => LayoutRemoveColumnAction;
110
110
  export declare const LayoutSelect: (layoutName: string) => LayoutSelectAction;
111
- export declare const LayoutUpdateCurrentDraft: (layout: Layout) => LayoutUpdateCurrentDraftAction;
112
111
  export declare const LayoutReady: (layoutState: LayoutState) => LayoutReadyAction;
113
112
  export declare const getColumnFilterSelector: (state: AdaptableState) => ColumnFilter[];
114
113
  export declare const LayoutReducer: Redux.Reducer<LayoutState>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LayoutReducer = exports.getColumnFilterSelector = exports.LayoutReady = exports.LayoutUpdateCurrentDraft = exports.LayoutSelect = exports.LayouRemoveColumn = exports.LayoutSetColumnCaption = exports.LayoutSave = exports.LayoutDelete = exports.LayoutAdd = exports.LAYOUT_READY = exports.LAYOUT_UPDATE_CURRENT_DRAFT = exports.LAYOUT_SET_COLUMN_CAPTION = exports.LayoutColumnFilterClear = exports.LayoutColumnFilterClearAll = exports.LayoutColumnFilterSet = exports.LayoutColumnFilterEdit = exports.LayoutColumnFilterAdd = exports.LAYOUT_COLUMN_FILTER_CLEAR = exports.LAYOUT_COLUMN_FILTER_CLEAR_ALL = exports.LAYOUT_COLUMN_FILTER_SET = exports.LAYOUT_COLUMN_FILTER_EDIT = exports.LAYOUT_COLUMN_FILTER_ADD = exports.LAYOUT_REMOVE_COLUMN = exports.LAYOUT_SAVE = exports.LAYOUT_SELECT = exports.LAYOUT_DELETE = exports.LAYOUT_EDIT = exports.LAYOUT_ADD = void 0;
3
+ exports.LayoutReducer = exports.getColumnFilterSelector = exports.LayoutReady = exports.LayoutSelect = exports.LayoutRemoveColumn = exports.LayoutSetColumnCaption = exports.LayoutSave = exports.LayoutDelete = exports.LayoutAdd = exports.LAYOUT_READY = exports.LAYOUT_SET_COLUMN_CAPTION = exports.LayoutColumnFilterClear = exports.LayoutColumnFilterClearAll = exports.LayoutColumnFilterSet = exports.LayoutColumnFilterEdit = exports.LayoutColumnFilterAdd = exports.LAYOUT_COLUMN_FILTER_CLEAR = exports.LAYOUT_COLUMN_FILTER_CLEAR_ALL = exports.LAYOUT_COLUMN_FILTER_SET = exports.LAYOUT_COLUMN_FILTER_EDIT = exports.LAYOUT_COLUMN_FILTER_ADD = exports.LAYOUT_REMOVE_COLUMN = exports.LAYOUT_SAVE = exports.LAYOUT_SELECT = exports.LAYOUT_DELETE = exports.LAYOUT_EDIT = exports.LAYOUT_ADD = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const GeneralConstants_1 = require("../../Utilities/Constants/GeneralConstants");
6
6
  const AdaptableHelper_1 = tslib_1.__importDefault(require("../../Utilities/Helpers/AdaptableHelper"));
@@ -24,6 +24,9 @@ exports.LAYOUT_SELECT = 'LAYOUT_SELECT';
24
24
  * @ReduxAction A Layout has been (auto)saved
25
25
  */
26
26
  exports.LAYOUT_SAVE = 'LAYOUT_SAVE';
27
+ /**
28
+ * @ReduxAction A Column has been removed
29
+ */
27
30
  exports.LAYOUT_REMOVE_COLUMN = 'LAYOUT_REMOVE_COLUMN';
28
31
  /**
29
32
  * @ReduxAction A Column Filter has been added
@@ -74,7 +77,6 @@ exports.LayoutColumnFilterClear = LayoutColumnFilterClear;
74
77
  * @ReduxAction A new caption / header has been set for a Column in the Layout
75
78
  */
76
79
  exports.LAYOUT_SET_COLUMN_CAPTION = 'LAYOUT_SET_COLUMN_CAPTION';
77
- exports.LAYOUT_UPDATE_CURRENT_DRAFT = 'LAYOUT_UPDATE_CURRENT_DRAFT';
78
80
  /**
79
81
  * @ReduxAction Layout Module is ready
80
82
  */
@@ -101,22 +103,17 @@ const LayoutSetColumnCaption = (layoutName, columnId, caption) => ({
101
103
  caption,
102
104
  });
103
105
  exports.LayoutSetColumnCaption = LayoutSetColumnCaption;
104
- const LayouRemoveColumn = (layoutName, columnId) => ({
106
+ const LayoutRemoveColumn = (layoutName, columnId) => ({
105
107
  type: exports.LAYOUT_REMOVE_COLUMN,
106
108
  layoutName,
107
109
  columnId,
108
110
  });
109
- exports.LayouRemoveColumn = LayouRemoveColumn;
111
+ exports.LayoutRemoveColumn = LayoutRemoveColumn;
110
112
  const LayoutSelect = (layoutName) => ({
111
113
  type: exports.LAYOUT_SELECT,
112
114
  layoutName,
113
115
  });
114
116
  exports.LayoutSelect = LayoutSelect;
115
- const LayoutUpdateCurrentDraft = (layout) => ({
116
- type: exports.LAYOUT_UPDATE_CURRENT_DRAFT,
117
- layout,
118
- });
119
- exports.LayoutUpdateCurrentDraft = LayoutUpdateCurrentDraft;
120
117
  const LayoutReady = (layoutState) => ({
121
118
  type: exports.LAYOUT_READY,
122
119
  layoutState,
@@ -124,7 +121,10 @@ const LayoutReady = (layoutState) => ({
124
121
  exports.LayoutReady = LayoutReady;
125
122
  const getColumnFilterSelector = (state) => {
126
123
  var _a, _b, _c, _d;
127
- const currentLayout = (_c = (_b = (_a = state.Layout) === null || _a === void 0 ? void 0 : _a.Layouts) === null || _b === void 0 ? void 0 : _b.find) === null || _c === void 0 ? void 0 : _c.call(_b, (layout) => layout.Name === state.Layout.CurrentLayout);
124
+ // in case of non-saving Layouts, we load the current Layout(possibly draft) from GridState
125
+ const currentLayout = state.Grid.CurrentLayout
126
+ ? state.Grid.CurrentLayout
127
+ : (_c = (_b = (_a = state.Layout) === null || _a === void 0 ? void 0 : _a.Layouts) === null || _b === void 0 ? void 0 : _b.find) === null || _c === void 0 ? void 0 : _c.call(_b, (layout) => layout.Name === state.Layout.CurrentLayout);
128
128
  return (_d = currentLayout === null || currentLayout === void 0 ? void 0 : currentLayout.ColumnFilters) !== null && _d !== void 0 ? _d : [];
129
129
  };
130
130
  exports.getColumnFilterSelector = getColumnFilterSelector;
@@ -165,6 +165,9 @@ const LayoutReducer = (state = initialState, action) => {
165
165
  const currentLayoutName = setColumnCaptionAction.layoutName;
166
166
  let currentLayout = state.Layouts.find((l) => l.Name === currentLayoutName);
167
167
  if (currentLayout) {
168
+ if (!currentLayout.ColumnHeadersMap) {
169
+ currentLayout.ColumnHeadersMap = {};
170
+ }
168
171
  currentLayout.ColumnHeadersMap[setColumnCaptionAction.columnId] =
169
172
  setColumnCaptionAction.caption;
170
173
  return Object.assign({}, state, {
@@ -33,6 +33,7 @@ const ScheduleRedux = tslib_1.__importStar(require("../ActionsReducers/ScheduleR
33
33
  const TeamSharingRedux = tslib_1.__importStar(require("../ActionsReducers/TeamSharingRedux"));
34
34
  const QueryRedux = tslib_1.__importStar(require("../ActionsReducers/QueryRedux"));
35
35
  const StatusBarRedux = tslib_1.__importStar(require("../ActionsReducers/StatusBarRedux"));
36
+ const ChartingRedux = tslib_1.__importStar(require("../ActionsReducers/ChartingRedux"));
36
37
  const ModuleConstants = tslib_1.__importStar(require("../../Utilities/Constants/ModuleConstants"));
37
38
  const ConfigConstants = tslib_1.__importStar(require("../../Utilities/Constants/ConfigConstants"));
38
39
  const LoggingHelper_1 = require("../../Utilities/Helpers/LoggingHelper");
@@ -146,6 +147,7 @@ class AdaptableStore {
146
147
  Theme: ThemeRedux.ThemeReducer,
147
148
  ToolPanel: ToolPanelRedux.ToolPanelReducer,
148
149
  Query: QueryRedux.QueryReducer,
150
+ Charting: ChartingRedux.ChartingReducer,
149
151
  // dead reducers
150
152
  PercentBar: DeadRedux.PercentBarReducer,
151
153
  UpdatedRow: DeadRedux.UpdatedRowReducer,
@@ -279,7 +281,7 @@ exports.AdaptableStore = AdaptableStore;
279
281
  const adaptableMiddleware = (adaptable) => function (middlewareAPI) {
280
282
  return function (next) {
281
283
  return function (action) {
282
- var _a, _b, _c, _d, _e, _f, _g, _h;
284
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
283
285
  switch (action.type) {
284
286
  /*******************
285
287
  * NAMED QUERY ACTIONS
@@ -712,9 +714,38 @@ const adaptableMiddleware = (adaptable) => function (middlewareAPI) {
712
714
  case LayoutRedux.LAYOUT_COLUMN_FILTER_ADD:
713
715
  case LayoutRedux.LAYOUT_COLUMN_FILTER_EDIT:
714
716
  case LayoutRedux.LAYOUT_COLUMN_FILTER_SET:
715
- case LayoutRedux.LAYOUT_COLUMN_FILTER_CLEAR_ALL:
716
- case LayoutRedux.LAYOUT_COLUMN_FILTER_CLEAR: {
717
- let returnAction = next(action);
717
+ case LayoutRedux.LAYOUT_COLUMN_FILTER_CLEAR:
718
+ case LayoutRedux.LAYOUT_COLUMN_FILTER_CLEAR_ALL: {
719
+ let returnAction;
720
+ if ((_g = adaptable.adaptableOptions.layoutOptions) === null || _g === void 0 ? void 0 : _g.autoSaveLayouts) {
721
+ returnAction = next(action);
722
+ }
723
+ else {
724
+ if (!middlewareAPI.getState().Grid.CurrentLayout) {
725
+ const currentLayout = adaptable.api.layoutApi.getCurrentLayout();
726
+ middlewareAPI.dispatch(GridRedux.LayoutUpdateCurrentDraft(currentLayout));
727
+ }
728
+ // we have a layout draft, we have to update that state
729
+ let draftLayoutAction;
730
+ switch (action.type) {
731
+ case LayoutRedux.LAYOUT_COLUMN_FILTER_ADD:
732
+ draftLayoutAction = GridRedux.LayoutDraftColumnFilterAdd(action.columnFilter);
733
+ break;
734
+ case LayoutRedux.LAYOUT_COLUMN_FILTER_EDIT:
735
+ draftLayoutAction = GridRedux.LayoutDraftColumnFilterEdit(action.columnFilter);
736
+ break;
737
+ case LayoutRedux.LAYOUT_COLUMN_FILTER_SET:
738
+ draftLayoutAction = GridRedux.LayoutDraftColumnFilterSet(action.columnFilter);
739
+ break;
740
+ case LayoutRedux.LAYOUT_COLUMN_FILTER_CLEAR:
741
+ draftLayoutAction = GridRedux.LayoutDraftColumnFilterClear(action.columnFilter);
742
+ break;
743
+ case LayoutRedux.LAYOUT_COLUMN_FILTER_CLEAR_ALL:
744
+ draftLayoutAction = GridRedux.LayoutDraftColumnFilterClearAll();
745
+ break;
746
+ }
747
+ returnAction = next(draftLayoutAction);
748
+ }
718
749
  setTimeout(() => adaptable.applyGridFiltering(), 5);
719
750
  adaptable.api.gridApi.fireSearchChangedEvent('Filter');
720
751
  return returnAction;
@@ -838,18 +869,18 @@ const adaptableMiddleware = (adaptable) => function (middlewareAPI) {
838
869
  // tell grid the layout has been selected
839
870
  adaptable.setLayout(currentLayout);
840
871
  }
841
- if (!((_g = adaptable.adaptableOptions.layoutOptions) === null || _g === void 0 ? void 0 : _g.autoSaveLayouts)) {
842
- middlewareAPI.dispatch(LayoutRedux.LayoutUpdateCurrentDraft(currentLayout));
872
+ if (!((_h = adaptable.adaptableOptions.layoutOptions) === null || _h === void 0 ? void 0 : _h.autoSaveLayouts)) {
873
+ middlewareAPI.dispatch(GridRedux.LayoutUpdateCurrentDraft(currentLayout));
843
874
  }
844
875
  }
845
876
  if (returnAction.type == LayoutRedux.LAYOUT_ADD ||
846
877
  returnAction.type == LayoutRedux.LAYOUT_SAVE) {
847
878
  const actionTyped = action;
848
879
  // if autosave is false
849
- if (!((_h = adaptable.adaptableOptions.layoutOptions) === null || _h === void 0 ? void 0 : _h.autoSaveLayouts)) {
880
+ if (!((_j = adaptable.adaptableOptions.layoutOptions) === null || _j === void 0 ? void 0 : _j.autoSaveLayouts)) {
850
881
  // and the current layout is saved, make sure we also update the draft
851
882
  if (actionTyped.layout.Name === newLayoutState.CurrentLayout) {
852
- middlewareAPI.dispatch(LayoutRedux.LayoutUpdateCurrentDraft(actionTyped.layout));
883
+ middlewareAPI.dispatch(GridRedux.LayoutUpdateCurrentDraft(actionTyped.layout));
853
884
  }
854
885
  }
855
886
  }
@@ -23,6 +23,10 @@ export declare abstract class AdaptableModuleBase implements IModule {
23
23
  protected getViewAccessLevel(): AccessLevel;
24
24
  protected getEditAccessLevel(): AccessLevel;
25
25
  isModuleAvailable(): boolean;
26
+ /**
27
+ * Used inside the unified UI to show the share button
28
+ */
29
+ isModuleObjectsShareable(): boolean;
26
30
  isModuleEditable(): boolean;
27
31
  updateOldConfig(): void;
28
32
  getModuleAdaptableObjects(): AdaptableObject[];
@@ -36,6 +36,12 @@ class AdaptableModuleBase {
36
36
  isModuleAvailable() {
37
37
  return this.hasRequiredAccessLevel(this.getViewAccessLevel());
38
38
  }
39
+ /**
40
+ * Used inside the unified UI to show the share button
41
+ */
42
+ isModuleObjectsShareable() {
43
+ return true;
44
+ }
39
45
  isModuleEditable() {
40
46
  return this.hasRequiredAccessLevel(this.getEditAccessLevel());
41
47
  }
@@ -30,10 +30,10 @@ class AlertModule extends AdaptableModuleBase_1.AdaptableModuleBase {
30
30
  }
31
31
  if (this.api.internalApi.getAdaptableOptions().alertOptions.dataChangeDetectionPolicy ===
32
32
  'formattedValue') {
33
- const { oldValue, newValue } = cellDataChangedInfo;
33
+ const { oldValue, newValue, rowNode } = cellDataChangedInfo;
34
34
  const columnId = cellDataChangedInfo.column.columnId;
35
- const oldFormattedValue = this.api.gridApi.getFormattedValueFromRawValue(columnId, oldValue);
36
- const newFormattedValue = this.api.gridApi.getFormattedValueFromRawValue(columnId, newValue);
35
+ const oldFormattedValue = this.api.gridApi.getFormattedValueFromRawValue(rowNode, columnId, oldValue);
36
+ const newFormattedValue = this.api.gridApi.getFormattedValueFromRawValue(rowNode, columnId, newValue);
37
37
  if (oldFormattedValue === newFormattedValue) {
38
38
  // if the formattedValues are identical, then no alert is fired
39
39
  return;
@@ -6,7 +6,7 @@ const AdaptableModuleBase_1 = require("./AdaptableModuleBase");
6
6
  const ModuleConstants = tslib_1.__importStar(require("../Utilities/Constants/ModuleConstants"));
7
7
  class ChartingModule extends AdaptableModuleBase_1.AdaptableModuleBase {
8
8
  constructor(api) {
9
- super(ModuleConstants.ChartingModuleId, 'Charts', 'chart', 'ChartPopup', 'Create Charts in order to see Adaptable Data visually', api);
9
+ super(ModuleConstants.ChartingModuleId, 'Charts', 'chart', 'ChartPopup', 'Create AG Grid Charts in order to see Adaptable Data visually', api);
10
10
  }
11
11
  isModuleAvailable() {
12
12
  return this.api.chartingApi.isChartingEnabled() && super.isModuleAvailable();
@@ -63,6 +63,7 @@ class DashboardModule extends AdaptableModuleBase_1.AdaptableModuleBase {
63
63
  {
64
64
  label: this.moduleInfo.FriendlyName,
65
65
  isVisible: true,
66
+ module: this.moduleInfo.ModuleName,
66
67
  icon: {
67
68
  name: 'dashboard',
68
69
  },
@@ -76,6 +76,7 @@ class ExportModule extends AdaptableModuleBase_1.AdaptableModuleBase {
76
76
  return [
77
77
  {
78
78
  label: 'Export Selected Cells',
79
+ module: this.moduleInfo.ModuleName,
79
80
  isVisible: true,
80
81
  icon: { name: this.moduleInfo.Glyph },
81
82
  subItems: menuItems,
@@ -29,10 +29,10 @@ class FlashingCellModule extends AdaptableModuleBase_1.AdaptableModuleBase {
29
29
  // - flash for the underlying small data changes, but the visual does not
30
30
  if (this.api.internalApi.getAdaptableOptions().alertOptions.dataChangeDetectionPolicy ===
31
31
  'formattedValue') {
32
- const { oldValue, newValue } = cellDataChangedInfo;
32
+ const { oldValue, newValue, rowNode } = cellDataChangedInfo;
33
33
  const columnId = cellDataChangedInfo.column.columnId;
34
- const oldFormattedValue = this.api.gridApi.getFormattedValueFromRawValue(columnId, oldValue);
35
- const newFormattedValue = this.api.gridApi.getFormattedValueFromRawValue(columnId, newValue);
34
+ const oldFormattedValue = this.api.gridApi.getFormattedValueFromRawValue(rowNode, columnId, oldValue);
35
+ const newFormattedValue = this.api.gridApi.getFormattedValueFromRawValue(rowNode, columnId, newValue);
36
36
  if (oldFormattedValue === newFormattedValue) {
37
37
  // if the formattedValues are identical, then no alert is fired
38
38
  return;
@@ -196,14 +196,14 @@ class FormatColumnModule extends AdaptableModuleBase_1.AdaptableModuleBase {
196
196
  let formatColumn = this.api.formatColumnApi.getFormatColumnForColumnId(column.columnId);
197
197
  let hasCheckBox = formatColumn && ((_a = formatColumn.ColumnStyle) === null || _a === void 0 ? void 0 : _a.CheckBoxStyle);
198
198
  if (hasCheckBox) {
199
- returnColumnMenuItems.push(this.createColumnMenuItemClickFunction('Remove Checkbox', 'check-box-outline', () => {
199
+ returnColumnMenuItems.push(this.createColumnMenuItemClickFunction('Remove Checkbox', 'unchecked', () => {
200
200
  this.api.formatColumnApi.deleteFormatColumn(formatColumn);
201
201
  }));
202
202
  }
203
203
  else {
204
204
  // const test = this.api.formatColumnApi.getCheckBoxStyleFormatColumn(column);
205
205
  if (formatColumn) {
206
- returnColumnMenuItems.push(this.createColumnMenuItemClickFunction('Show as Checkbox', 'check-box', () => {
206
+ returnColumnMenuItems.push(this.createColumnMenuItemClickFunction('Show as Checkbox', 'checked', () => {
207
207
  formatColumn.ColumnStyle = {
208
208
  CheckBoxStyle: true,
209
209
  };
@@ -212,7 +212,7 @@ class FormatColumnModule extends AdaptableModuleBase_1.AdaptableModuleBase {
212
212
  }));
213
213
  }
214
214
  else {
215
- returnColumnMenuItems.push(this.createColumnMenuItemClickFunction('Show as Checkbox', 'check-box', () => {
215
+ returnColumnMenuItems.push(this.createColumnMenuItemClickFunction('Show as Checkbox', 'checked', () => {
216
216
  let newFormatColumn = {
217
217
  Scope: {
218
218
  ColumnIds: [column.columnId],
@@ -42,6 +42,7 @@ class GridInfoModule extends AdaptableModuleBase_1.AdaptableModuleBase {
42
42
  return [
43
43
  {
44
44
  label: 'Show Info',
45
+ module: this.moduleInfo.ModuleName,
45
46
  isVisible: true,
46
47
  icon: {
47
48
  name: this.moduleInfo.Glyph,
@@ -90,6 +91,7 @@ class GridInfoModule extends AdaptableModuleBase_1.AdaptableModuleBase {
90
91
  return [
91
92
  {
92
93
  label: 'Show Info',
94
+ module: this.moduleInfo.ModuleName,
93
95
  isVisible: true,
94
96
  icon: {
95
97
  name: this.moduleInfo.Glyph,
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import { CSSProperties } from 'react';
2
2
  import { AdaptableColumn } from '../../PredefinedConfig/Common/AdaptableColumn';
3
3
  import { AdaptableMenuItem, ContextMenuContext } from '../../PredefinedConfig/Common/Menu';
4
4
  import { AdaptableModule } from '../../PredefinedConfig/Common/Types';
@@ -64,6 +64,14 @@ export interface AdaptableObjectView {
64
64
  * Reference to the underling object.
65
65
  */
66
66
  abObject: AdaptableObject;
67
+ /**
68
+ * Style added on the item wrapper.
69
+ */
70
+ style?: CSSProperties;
71
+ /**
72
+ * ClassName added on the item wrapper.
73
+ */
74
+ className?: string;
67
75
  }
68
76
  export interface AdaptableObjectCompactView {
69
77
  item: AdaptableObjectItemView;
@@ -79,6 +87,7 @@ export interface AdaptableModuleView {
79
87
  * Allows to add custom actions.
80
88
  */
81
89
  actions?: AdaptableModuleViewAction[];
90
+ onMount?: () => void;
82
91
  onOpenEditPopup?: (abObject?: AdaptableObject) => void;
83
92
  getDeleteAction?: (abObject: AdaptableObject) => Redux.Action;
84
93
  getCompactDeleteAction?: (abObject: AdaptableObject) => Redux.Action;
@@ -124,6 +133,7 @@ export interface IModule {
124
133
  setModuleEntitlement(): void;
125
134
  isModuleAvailable(): boolean;
126
135
  isModuleEditable(): boolean;
136
+ isModuleObjectsShareable(): boolean;
127
137
  getTeamSharingAction(): TeamSharingImportInfo<AdaptableObject> | undefined;
128
138
  getModuleAdaptableObjects(): AdaptableObject[];
129
139
  getTeamSharingReferences(adaptableObject: AdaptableObject): TeamSharingReferences;
@@ -162,6 +162,7 @@ class LayoutModule extends AdaptableModuleBase_1.AdaptableModuleBase {
162
162
  returnColumnMenuItems.push({
163
163
  label: 'Select',
164
164
  isVisible: true,
165
+ module: this.moduleInfo.ModuleName,
165
166
  icon: {
166
167
  name: 'tab-unselected',
167
168
  },
@@ -198,6 +199,7 @@ class LayoutModule extends AdaptableModuleBase_1.AdaptableModuleBase {
198
199
  gridMenuItems.push(this.createColumnMenuItemClickFunction('Select', 'tab-unselected', clickFunction));
199
200
  returnColumnMenuItems.push({
200
201
  label: 'Grid',
202
+ module: this.moduleInfo.ModuleName,
201
203
  isVisible: true,
202
204
  icon: { name: 'align-justify' },
203
205
  subItems: gridMenuItems,
@@ -1,11 +1,21 @@
1
1
  import { AdaptableModuleBase } from './AdaptableModuleBase';
2
- import { IModule } from './Interface/IModule';
2
+ import { AdaptableModuleView, AdaptableObjectView, IModule } from './Interface/IModule';
3
3
  import { AdaptableApi } from '../Api/AdaptableApi';
4
+ import { SharedEntity } from '../../types';
4
5
  export declare class TeamSharingModule extends AdaptableModuleBase implements IModule {
5
6
  private SKIP_TEAMSHARING_UPDATE_ACTIONS;
6
7
  constructor(api: AdaptableApi);
7
8
  isModuleAvailable(): boolean;
9
+ isModuleObjectsShareable(): boolean;
8
10
  getPopupMaxWidth(): number | undefined;
9
11
  private handleStateChanged;
10
12
  private extractAdaptableObjectFromAction;
13
+ isAdaptableObjectPresentInLocalState(sharedEntity: SharedEntity): boolean;
14
+ private isSharedEntityADependency;
15
+ private isStaleAndActive;
16
+ private getDependencies;
17
+ private getStaleDependencies;
18
+ toView(sharedEntity: SharedEntity): AdaptableObjectView;
19
+ toViewAll(): AdaptableObjectView[];
20
+ getViewProperties(): AdaptableModuleView;
11
21
  }