@adaptabletools/adaptable-cjs 22.0.0-canary.1 → 22.0.0-canary.2

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 (133) hide show
  1. package/index.css +3 -14
  2. package/index.css.map +1 -1
  3. package/package.json +1 -1
  4. package/src/AdaptableOptions/AdaptablePlugin.js +6 -1
  5. package/src/AdaptableOptions/ExportOptions.d.ts +1 -2
  6. package/src/AdaptableOptions/FilterOptions.d.ts +3 -0
  7. package/src/AdaptableState/Common/AdaptableColumn.d.ts +6 -0
  8. package/src/AdaptableState/Common/RowDataChangedInfo.d.ts +3 -0
  9. package/src/AdaptableState/InitialState.d.ts +1 -1
  10. package/src/AdaptableState/Selection/GridCell.d.ts +9 -0
  11. package/src/Api/Implementation/ActionColumnApiImpl.js +1 -0
  12. package/src/Api/Implementation/AdaptableApiImpl.js +52 -0
  13. package/src/Api/Implementation/AlertApiImpl.js +1 -0
  14. package/src/Api/Implementation/ApiBase.js +1 -0
  15. package/src/Api/Implementation/CalculatedColumnApiImpl.js +1 -0
  16. package/src/Api/Implementation/ChartingApiImpl.js +4 -0
  17. package/src/Api/Implementation/ColumnApiImpl.js +1 -0
  18. package/src/Api/Implementation/ColumnFilterApiImpl.js +1 -0
  19. package/src/Api/Implementation/CommentsApiImpl.js +1 -0
  20. package/src/Api/Implementation/CustomSortApiImpl.js +1 -0
  21. package/src/Api/Implementation/DashboardApiImpl.js +1 -0
  22. package/src/Api/Implementation/DataChangeHistoryApiImpl.js +12 -15
  23. package/src/Api/Implementation/DataImportApiImpl.js +1 -0
  24. package/src/Api/Implementation/DataSetApiImpl.js +1 -0
  25. package/src/Api/Implementation/EntitlementApiImpl.js +1 -0
  26. package/src/Api/Implementation/EventApiImpl.js +16 -14
  27. package/src/Api/Implementation/ExportApiImpl.js +1 -0
  28. package/src/Api/Implementation/ExpressionApiImpl.js +1 -0
  29. package/src/Api/Implementation/Fdc3ApiImpl.js +1 -0
  30. package/src/Api/Implementation/FilterApiImpl.js +3 -0
  31. package/src/Api/Implementation/FlashingCellApiImpl.js +1 -0
  32. package/src/Api/Implementation/FormatColumnApiImpl.js +1 -0
  33. package/src/Api/Implementation/FreeTextColumnApiImpl.js +1 -0
  34. package/src/Api/Implementation/GridApiImpl.js +1 -0
  35. package/src/Api/Implementation/GridFilterApiImpl.js +1 -0
  36. package/src/Api/Implementation/LayoutApiImpl.js +1 -0
  37. package/src/Api/Implementation/NamedQueryApiImpl.js +1 -0
  38. package/src/Api/Implementation/NoteApiImpl.js +1 -0
  39. package/src/Api/Implementation/PredicateApiImpl.js +1 -0
  40. package/src/Api/Implementation/RowFormApiImpl.js +1 -0
  41. package/src/Api/Implementation/StyledColumnApiImpl.js +1 -0
  42. package/src/Api/Implementation/SystemStatusApiImpl.js +2 -0
  43. package/src/Api/Implementation/TeamSharingApiImpl.js +1 -0
  44. package/src/Api/Implementation/ThemeApiImpl.js +1 -0
  45. package/src/Api/Implementation/UserInterfaceApiImpl.js +2 -1
  46. package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +6 -0
  47. package/src/Redux/Store/AdaptableStore.js +49 -43
  48. package/src/Strategy/AdaptableModuleBase.js +4 -0
  49. package/src/Strategy/AlertModule.js +1 -0
  50. package/src/Strategy/CalculatedColumnModule.js +1 -0
  51. package/src/Strategy/CellSummaryModule.js +1 -1
  52. package/src/Strategy/DataChangeHistoryModule.js +1 -0
  53. package/src/Strategy/FlashingCellModule.js +1 -0
  54. package/src/Strategy/FreeTextColumnModule.js +1 -0
  55. package/src/Strategy/LayoutModule.js +2 -1
  56. package/src/Strategy/PlusMinusModule.js +2 -0
  57. package/src/Strategy/ScheduleModule.js +1 -0
  58. package/src/Strategy/ShortcutModule.js +2 -0
  59. package/src/Strategy/TeamSharingModule.js +10 -10
  60. package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +1 -1
  61. package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
  62. package/src/Utilities/ExpressionFunctions/deepMap.js +31 -31
  63. package/src/Utilities/MenuItem.js +18 -0
  64. package/src/Utilities/Services/AggregatedScalarLiveValue.js +8 -0
  65. package/src/Utilities/Services/AlertService.js +6 -4
  66. package/src/Utilities/Services/AnnotationsService.js +3 -0
  67. package/src/Utilities/Services/CalculatedColumnExpressionService.js +2 -1
  68. package/src/Utilities/Services/ChartingService.js +1 -0
  69. package/src/Utilities/Services/DataService.js +10 -2
  70. package/src/Utilities/Services/Fdc3Service.js +5 -3
  71. package/src/Utilities/Services/FlashingCellService.js +5 -0
  72. package/src/Utilities/Services/LicenseService/index.js +1 -1
  73. package/src/Utilities/Services/MetamodelService.js +2 -2
  74. package/src/Utilities/Services/ModuleService.js +1 -0
  75. package/src/Utilities/Services/QueryLanguageService.js +6 -5
  76. package/src/Utilities/Services/RowFormService.js +1 -0
  77. package/src/Utilities/Services/RowSummaryService.js +10 -7
  78. package/src/Utilities/Services/TeamSharingService.js +3 -1
  79. package/src/Utilities/Services/ThemeService.js +11 -9
  80. package/src/Utilities/Services/ValidationService.js +1 -0
  81. package/src/Utilities/createAgStatusPanelComponent.js +3 -0
  82. package/src/View/BulkUpdate/BulkUpdateViewPanel.js +1 -0
  83. package/src/View/CalculatedColumn/CalculatedColumnSummary.js +8 -8
  84. package/src/View/CellSummary/CellSummaryViewPanel.js +1 -0
  85. package/src/View/Components/Buttons/ButtonBase/index.js +9 -9
  86. package/src/View/Components/Buttons/EntityListActionButtons.js +18 -18
  87. package/src/View/Components/ColumnFilter/components/FloatingFilterValues.js +1 -1
  88. package/src/View/Components/ExpressionWizard.js +5 -5
  89. package/src/View/Components/Panels/PanelDashboard/index.js +8 -8
  90. package/src/View/Components/Panels/PanelToolPanel/index.js +7 -7
  91. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +2 -0
  92. package/src/View/CustomSort/CustomSortSummary.js +13 -13
  93. package/src/View/FormatColumn/FormatColumnSummary.js +13 -13
  94. package/src/View/FreeTextColumn/FreeTextColumnSummary.js +13 -13
  95. package/src/View/SmartEdit/SmartEditViewPanel.js +1 -0
  96. package/src/View/Theme/ThemePopup.js +13 -16
  97. package/src/agGrid/Adaptable.js +4 -0
  98. package/src/agGrid/AdaptableAgGrid.js +99 -33
  99. package/src/agGrid/AdaptableFilterHandler.js +4 -0
  100. package/src/agGrid/AdaptableLogger.d.ts +3 -0
  101. package/src/agGrid/AdaptableLogger.js +10 -0
  102. package/src/agGrid/AgGridAdapter.js +11 -1
  103. package/src/agGrid/AgGridColumnAdapter.js +2 -0
  104. package/src/agGrid/AgGridExportAdapter.js +10 -9
  105. package/src/agGrid/AgGridFilterAdapter.js +4 -0
  106. package/src/agGrid/AgGridFloatingFilterAdapter.js +3 -0
  107. package/src/agGrid/AgGridMenuAdapter.js +1 -0
  108. package/src/agGrid/AgGridModulesAdapter.js +2 -1
  109. package/src/agGrid/AgGridOptionsService.js +3 -0
  110. package/src/agGrid/AgGridThemeAdapter.js +2 -0
  111. package/src/agGrid/cellRenderers/ActionColumnRenderer.js +5 -0
  112. package/src/agGrid/cellRenderers/BadgeRenderer.js +2 -0
  113. package/src/agGrid/cellRenderers/PercentBarRenderer.js +1 -0
  114. package/src/agGrid/editors/AdaptableDateEditor/index.js +6 -3
  115. package/src/agGrid/editors/AdaptableNumberEditor/index.js +16 -12
  116. package/src/agGrid/editors/AdaptablePercentageEditor/index.js +17 -13
  117. package/src/agGrid/index.d.ts +6 -0
  118. package/src/agGrid/index.js +6 -0
  119. package/src/components/Datepicker/index.js +1 -1
  120. package/src/components/overlayBaseZIndex.js +1 -1
  121. package/src/components/utils/useContainerScrollObserver/index.js +17 -14
  122. package/src/devTools/index.js +54 -53
  123. package/src/env.js +2 -2
  124. package/src/layout-manager/src/LMEmitter.js +11 -11
  125. package/src/layout-manager/src/LMLogger.js +7 -0
  126. package/src/layout-manager/src/index.js +56 -51
  127. package/src/metamodel/adaptable.metamodel.d.ts +57 -0
  128. package/src/metamodel/adaptable.metamodel.js +1 -1
  129. package/src/migration/AdaptableUpgradeHelper.js +3 -0
  130. package/src/migration/VersionUpgrade.js +1 -0
  131. package/src/migration/VersionUpgrade17.js +1 -2
  132. package/src/parser/src/ExpressionEvaluationError.js +1 -0
  133. package/tsconfig.cjs.tsbuildinfo +1 -1
@@ -69,19 +69,13 @@ exports.AdaptableReactPercentageEditor.displayName = 'AdaptableReactPercentageEd
69
69
  * Used to edit percentage columns as percentages (similar to how its done in Excel)
70
70
  */
71
71
  class AdaptablePercentageEditor {
72
- constructor() {
73
- this.valueParser = defaultValueParser;
74
- this.onValueChange = (value) => {
75
- const newValue = this.valueParser
76
- ? this.valueParser({
77
- ...this.params,
78
- oldValue: this.params.value,
79
- newValue: value,
80
- })
81
- : value;
82
- this.value = NumberExtensions_1.default.divideBy100(newValue);
83
- };
84
- }
72
+ value;
73
+ columnId;
74
+ el;
75
+ params;
76
+ editor;
77
+ valueParser = defaultValueParser;
78
+ unmountReactRoot;
85
79
  init(params) {
86
80
  this.value = (0, AdaptableNumberEditor_1.getStartValue)(params);
87
81
  this.params = params;
@@ -132,5 +126,15 @@ class AdaptablePercentageEditor {
132
126
  destroy() {
133
127
  this.unmountReactRoot?.();
134
128
  }
129
+ onValueChange = (value) => {
130
+ const newValue = this.valueParser
131
+ ? this.valueParser({
132
+ ...this.params,
133
+ oldValue: this.params.value,
134
+ newValue: value,
135
+ })
136
+ : value;
137
+ this.value = NumberExtensions_1.default.divideBy100(newValue);
138
+ };
135
139
  }
136
140
  exports.AdaptablePercentageEditor = AdaptablePercentageEditor;
@@ -2,5 +2,11 @@ import { Adaptable, AdaptableNoCodeWizard as ABWizard } from './Adaptable';
2
2
  import { AdaptableLogger as ABLogger } from './AdaptableLogger';
3
3
  export { default as AdaptableWizardView } from '../View/AdaptableWizardView';
4
4
  export default Adaptable;
5
+ /**
6
+ * AdapTable's No Code Wizard
7
+ */
5
8
  export declare const AdaptableNoCodeWizard: typeof ABWizard;
9
+ /**
10
+ * AdapTable's Logger
11
+ */
6
12
  export declare const AdaptableLogger: typeof ABLogger;
@@ -7,5 +7,11 @@ const AdaptableLogger_1 = require("./AdaptableLogger");
7
7
  var AdaptableWizardView_1 = require("../View/AdaptableWizardView");
8
8
  Object.defineProperty(exports, "AdaptableWizardView", { enumerable: true, get: function () { return tslib_1.__importDefault(AdaptableWizardView_1).default; } });
9
9
  exports.default = Adaptable_1.Adaptable;
10
+ /**
11
+ * AdapTable's No Code Wizard
12
+ */
10
13
  exports.AdaptableNoCodeWizard = Adaptable_1.AdaptableNoCodeWizard;
14
+ /**
15
+ * AdapTable's Logger
16
+ */
11
17
  exports.AdaptableLogger = AdaptableLogger_1.AdaptableLogger;
@@ -116,7 +116,7 @@ exports.Datepicker = React.forwardRef((props, ref) => {
116
116
  }, accessLevel: 'Full' })) : null;
117
117
  const calendarButton = (React.createElement(SimpleButton_1.default, { disabled: disabled, variant: "text", icon: "calendar", tooltip: "Date", iconSize: 20, className: "twa:p-0", onClick: () => setVisible(true) }));
118
118
  const overlayDOMRef = (0, react_1.useRef)(null);
119
- return (React.createElement(Flex_1.Flex, null,
119
+ return (React.createElement(Flex_1.Flex, { className: "twa:flex-1" },
120
120
  React.createElement(OverlayTrigger_1.default, { visible: visible, render: () => (React.createElement(DatepickerOverlay, { overlayDOMRef: overlayDOMRef, onMouseDown: props.onMouseDown, onHide: () => setVisible(false), onKeyDown: (e) => {
121
121
  if (e.key === 'Escape' || e.key === 'Enter') {
122
122
  setVisible(false, e.key);
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OVERLAY_BASE_Z_INDEX = void 0;
4
- exports.OVERLAY_BASE_Z_INDEX = 9999999;
4
+ exports.OVERLAY_BASE_Z_INDEX = 9_999_999;
@@ -3,21 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useContainerScrollObserver = void 0;
4
4
  const react_1 = require("react");
5
5
  class SectionSelector {
6
+ scrollTop = 0;
7
+ node;
8
+ boxHeight;
9
+ childrenHeights = [];
10
+ maxScrollTop;
6
11
  constructor(node) {
7
- this.scrollTop = 0;
8
- this.childrenHeights = [];
9
- this.select = (scrollTop) => {
10
- this.refreshFromDOM();
11
- const relativeCurrentHeight = (scrollTop * this.boxHeight) / this.maxScrollTop;
12
- let heightSum = 0;
13
- for (let i = 0, len = this.childrenHeights.length; i < len; i++) {
14
- heightSum += this.childrenHeights[i];
15
- if (heightSum > relativeCurrentHeight) {
16
- return i;
17
- }
18
- }
19
- return this.childrenHeights.length - 1;
20
- };
21
12
  this.node = node;
22
13
  this.refreshFromDOM();
23
14
  }
@@ -36,6 +27,18 @@ class SectionSelector {
36
27
  height,
37
28
  };
38
29
  }
30
+ select = (scrollTop) => {
31
+ this.refreshFromDOM();
32
+ const relativeCurrentHeight = (scrollTop * this.boxHeight) / this.maxScrollTop;
33
+ let heightSum = 0;
34
+ for (let i = 0, len = this.childrenHeights.length; i < len; i++) {
35
+ heightSum += this.childrenHeights[i];
36
+ if (heightSum > relativeCurrentHeight) {
37
+ return i;
38
+ }
39
+ }
40
+ return this.childrenHeights.length - 1;
41
+ };
39
42
  }
40
43
  const useContainerScrollObserver = (callback) => {
41
44
  const containerNodeRef = (0, react_1.useRef)(null);
@@ -27,66 +27,32 @@ function getColor(identifier) {
27
27
  return color;
28
28
  }
29
29
  class DevToolsMarker {
30
+ adaptableId;
30
31
  static create(adaptableId) {
31
32
  return new DevToolsMarker(adaptableId);
32
33
  }
34
+ markerDetails = {
35
+ label: '',
36
+ track: '',
37
+ trackGroup: undefined,
38
+ color: undefined,
39
+ details: [],
40
+ tooltip: undefined,
41
+ };
42
+ stopped = false;
33
43
  constructor(adaptableId) {
34
44
  this.adaptableId = adaptableId;
35
- this.markerDetails = {
36
- label: '',
37
- track: '',
38
- trackGroup: undefined,
39
- color: undefined,
40
- details: [],
41
- tooltip: undefined,
42
- };
43
- this.stopped = false;
44
- this.start = (startDetails) => {
45
- if (this.markerDetails.startTs) {
46
- return this;
47
- }
48
- const start = performance.now();
49
- this.markerDetails.details = startDetails?.details ?? [];
50
- this.markerDetails.startTs = start;
51
- return this;
52
- };
53
- this.end = (markerDetails = {}) => {
54
- if (this.stopped) {
55
- return this;
56
- }
57
- this.stopped = true;
58
- const start = markerDetails.startTs ?? this.markerDetails.startTs;
59
- const end = markerDetails.endTs ?? this.markerDetails.endTs ?? performance.now();
60
- let color = markerDetails.color || this.markerDetails.color || '';
61
- const trackGroup = markerDetails.trackGroup ||
62
- this.markerDetails.trackGroup ||
63
- `AdapTable (${this.adaptableId})`;
64
- const details = [...(this.markerDetails.details || []), ...(markerDetails.details || [])];
65
- const tooltip = markerDetails.tooltip || this.markerDetails.tooltip;
66
- const label = markerDetails.label || this.markerDetails.label || 'Unknown';
67
- const track = markerDetails.track || this.markerDetails.track || 'Unknown';
68
- if (!color) {
69
- const identifier = `${trackGroup}:${track}:${label}`;
70
- color = getColor(identifier);
71
- }
72
- performance.measure(label, {
73
- start,
74
- end,
75
- detail: {
76
- devtools: {
77
- dataType: 'track-entry',
78
- trackGroup,
79
- track,
80
- color: color || 'primary',
81
- properties: details.length > 0 ? details.map((detail) => [detail.name, detail.value]) : undefined,
82
- tooltipText: tooltip,
83
- },
84
- },
85
- });
86
- return this;
87
- };
88
45
  this.adaptableId = adaptableId;
89
46
  }
47
+ start = (startDetails) => {
48
+ if (this.markerDetails.startTs) {
49
+ return this;
50
+ }
51
+ const start = performance.now();
52
+ this.markerDetails.details = startDetails?.details ?? [];
53
+ this.markerDetails.startTs = start;
54
+ return this;
55
+ };
90
56
  get startTimestamp() {
91
57
  return this.markerDetails.startTs;
92
58
  }
@@ -136,6 +102,41 @@ class DevToolsMarker {
136
102
  return acc;
137
103
  }, {});
138
104
  }
105
+ end = (markerDetails = {}) => {
106
+ if (this.stopped) {
107
+ return this;
108
+ }
109
+ this.stopped = true;
110
+ const start = markerDetails.startTs ?? this.markerDetails.startTs;
111
+ const end = markerDetails.endTs ?? this.markerDetails.endTs ?? performance.now();
112
+ let color = markerDetails.color || this.markerDetails.color || '';
113
+ const trackGroup = markerDetails.trackGroup ||
114
+ this.markerDetails.trackGroup ||
115
+ `AdapTable (${this.adaptableId})`;
116
+ const details = [...(this.markerDetails.details || []), ...(markerDetails.details || [])];
117
+ const tooltip = markerDetails.tooltip || this.markerDetails.tooltip;
118
+ const label = markerDetails.label || this.markerDetails.label || 'Unknown';
119
+ const track = markerDetails.track || this.markerDetails.track || 'Unknown';
120
+ if (!color) {
121
+ const identifier = `${trackGroup}:${track}:${label}`;
122
+ color = getColor(identifier);
123
+ }
124
+ performance.measure(label, {
125
+ start,
126
+ end,
127
+ detail: {
128
+ devtools: {
129
+ dataType: 'track-entry',
130
+ trackGroup,
131
+ track,
132
+ color: color || 'primary',
133
+ properties: details.length > 0 ? details.map((detail) => [detail.name, detail.value]) : undefined,
134
+ tooltipText: tooltip,
135
+ },
136
+ },
137
+ });
138
+ return this;
139
+ };
139
140
  }
140
141
  exports.DevToolsMarker = DevToolsMarker;
141
142
  function areAdaptableProfileTracksEnabled(adaptableId) {
package/src/env.js CHANGED
@@ -2,6 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = {
4
4
  NEXT_PUBLIC_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: 1769179439939 || Date.now(),
6
- VERSION: "22.0.0-canary.1" || '--current-version--',
5
+ PUBLISH_TIMESTAMP: 1769449948892 || Date.now(),
6
+ VERSION: "22.0.0-canary.2" || '--current-version--',
7
7
  };
@@ -5,20 +5,20 @@ const LMLogger_1 = require("./LMLogger");
5
5
  function x(a, b) { }
6
6
  const xtype = [1, '2'];
7
7
  class LMEmitter extends LMLogger_1.LMLogger {
8
+ destroyed = false;
9
+ suspended = false;
8
10
  constructor(options) {
9
11
  super(options);
10
- this.destroyed = false;
11
- this.suspended = false;
12
- /**
13
- * For each supported event, we have a Set that holds all the callbacks that should be executed
14
- * when the event is triggered.
15
- */
16
- this.eventSets = {
17
- gridLayoutChanged: new Set(),
18
- columnDefsChanged: new Set(),
19
- rowModelUpdated: new Set(),
20
- };
21
12
  }
13
+ /**
14
+ * For each supported event, we have a Set that holds all the callbacks that should be executed
15
+ * when the event is triggered.
16
+ */
17
+ eventSets = {
18
+ gridLayoutChanged: new Set(),
19
+ columnDefsChanged: new Set(),
20
+ rowModelUpdated: new Set(),
21
+ };
22
22
  on(event, callback) {
23
23
  this.eventSets[event].add(callback);
24
24
  return () => {
@@ -7,6 +7,13 @@ const performanceTime = (previousTime) => {
7
7
  return Math.round(previousTime ? now - previousTime : now);
8
8
  };
9
9
  class LMLogger {
10
+ debugger;
11
+ infoLogger;
12
+ successLogger;
13
+ warnLogger;
14
+ errorLogger;
15
+ perfLogger;
16
+ debugId;
10
17
  constructor(options) {
11
18
  this.debugId = options.debugId;
12
19
  this.debugger = (0, infinite_react_1.debug)(this.debugId ? `LayoutManager:${this.debugId}` : 'LayoutManager');
@@ -142,59 +142,20 @@ function getDefaultColumnSizeStateForColDef(colId, colDef, options) {
142
142
  return undefined;
143
143
  }
144
144
  class LayoutManager extends LMEmitter_1.LMEmitter {
145
+ gridApi;
146
+ fieldsToIds = {};
147
+ idsToFields = {};
148
+ idsToColDefs = {};
149
+ initialColumnWidths = {};
150
+ currentLayout = null;
151
+ layoutChangeDebounce;
152
+ _prevFiredLayout;
153
+ setGridOption_default;
154
+ suppressGlobalAgGridEventListener = false;
155
+ supressGlobalAgGridEventTimeoutId = null;
156
+ layoutManagerDebugId;
145
157
  constructor(options) {
146
158
  super({ debugId: options.debugId });
147
- this.fieldsToIds = {};
148
- this.idsToFields = {};
149
- this.idsToColDefs = {};
150
- this.initialColumnWidths = {};
151
- this.currentLayout = null;
152
- this.suppressGlobalAgGridEventListener = false;
153
- this.supressGlobalAgGridEventTimeoutId = null;
154
- this.globalAgGridEventListener = (type, event) => {
155
- if (this.destroyed || this.suppressGlobalAgGridEventListener) {
156
- return;
157
- }
158
- if (type in COLUMN_EVENTS_THAT_TRIGGERS_AUTO_LAYOUT_SAVE) {
159
- if (type === 'columnResized' && !event.finished) {
160
- return;
161
- }
162
- // called while dragging a column from the sidebar, to the row groups panel
163
- if (type === 'displayedColumnsChanged' && event.source === 'uiColumnDragged') {
164
- return;
165
- }
166
- this.warn(`globalAgGridEventListener-${type}`, event);
167
- if (!this.currentLayout) {
168
- const gridLayout = this.getLayoutModelFromGrid();
169
- // if there's no layout set currently in AG Grid
170
- // then emit the gridLayoutChanged event directly
171
- // as we don't have a current layout to compare to
172
- this.onGridLayoutChanged(gridLayout);
173
- return;
174
- }
175
- const gridLayout = this.getLayoutModelFromGrid();
176
- // but if we do have a current layout set
177
- // then only emit the event if the layout has changed
178
- if (!isGridLayoutSame({
179
- layoutFromGrid: gridLayout,
180
- layoutFromModel: this.currentLayout,
181
- })) {
182
- this.onGridLayoutChanged(gridLayout);
183
- return;
184
- }
185
- }
186
- };
187
- this.columnDefsChanged = (colDefs) => {
188
- if (this.suppressGlobalAgGridEventListener) {
189
- return;
190
- }
191
- this.warn('onColumnDefsChanged');
192
- this.indexColumns();
193
- if (this.currentLayout) {
194
- this.applyLayout(this.currentLayout);
195
- }
196
- this.emitSync('columnDefsChanged', colDefs);
197
- };
198
159
  this.layoutChangeDebounce = options.layoutChangeDebounce ?? 0;
199
160
  if (this.layoutChangeDebounce) {
200
161
  this.onGridLayoutChanged = (0, infinite_react_1.debounce)(this.onGridLayoutChanged, {
@@ -249,6 +210,50 @@ class LayoutManager extends LMEmitter_1.LMEmitter {
249
210
  };
250
211
  this.gridApi.setGridOption = setGridOption;
251
212
  }
213
+ globalAgGridEventListener = (type, event) => {
214
+ if (this.destroyed || this.suppressGlobalAgGridEventListener) {
215
+ return;
216
+ }
217
+ if (type in COLUMN_EVENTS_THAT_TRIGGERS_AUTO_LAYOUT_SAVE) {
218
+ if (type === 'columnResized' && !event.finished) {
219
+ return;
220
+ }
221
+ // called while dragging a column from the sidebar, to the row groups panel
222
+ if (type === 'displayedColumnsChanged' && event.source === 'uiColumnDragged') {
223
+ return;
224
+ }
225
+ this.warn(`globalAgGridEventListener-${type}`, event);
226
+ if (!this.currentLayout) {
227
+ const gridLayout = this.getLayoutModelFromGrid();
228
+ // if there's no layout set currently in AG Grid
229
+ // then emit the gridLayoutChanged event directly
230
+ // as we don't have a current layout to compare to
231
+ this.onGridLayoutChanged(gridLayout);
232
+ return;
233
+ }
234
+ const gridLayout = this.getLayoutModelFromGrid();
235
+ // but if we do have a current layout set
236
+ // then only emit the event if the layout has changed
237
+ if (!isGridLayoutSame({
238
+ layoutFromGrid: gridLayout,
239
+ layoutFromModel: this.currentLayout,
240
+ })) {
241
+ this.onGridLayoutChanged(gridLayout);
242
+ return;
243
+ }
244
+ }
245
+ };
246
+ columnDefsChanged = (colDefs) => {
247
+ if (this.suppressGlobalAgGridEventListener) {
248
+ return;
249
+ }
250
+ this.warn('onColumnDefsChanged');
251
+ this.indexColumns();
252
+ if (this.currentLayout) {
253
+ this.applyLayout(this.currentLayout);
254
+ }
255
+ this.emitSync('columnDefsChanged', colDefs);
256
+ };
252
257
  indexColumns() {
253
258
  const colDefs = this.gridApi.getColumnDefs();
254
259
  this.fieldsToIds = {};
@@ -314,6 +314,11 @@ export declare const ADAPTABLE_METAMODEL: {
314
314
  isOpt: boolean;
315
315
  }[];
316
316
  };
317
+ AdaptableColumnSummary: {
318
+ name: string;
319
+ kind: string;
320
+ desc: string;
321
+ };
317
322
  AdaptableColumnType: {
318
323
  name: string;
319
324
  kind: string;
@@ -443,6 +448,11 @@ export declare const ADAPTABLE_METAMODEL: {
443
448
  kind: string;
444
449
  desc: string;
445
450
  };
451
+ AdaptableFilterComponentLocation: {
452
+ name: string;
453
+ kind: string;
454
+ desc: string;
455
+ };
446
456
  AdaptableFilterState: {
447
457
  name: string;
448
458
  kind: string;
@@ -547,6 +557,11 @@ export declare const ADAPTABLE_METAMODEL: {
547
557
  kind: string;
548
558
  desc: string;
549
559
  };
560
+ AdaptableLogger: {
561
+ name: string;
562
+ kind: string;
563
+ desc: string;
564
+ };
550
565
  AdaptableMenuItem: {
551
566
  name: string;
552
567
  kind: string;
@@ -3896,6 +3911,22 @@ export declare const ADAPTABLE_METAMODEL: {
3896
3911
  isOpt: boolean;
3897
3912
  })[];
3898
3913
  };
3914
+ GridCellWithCount: {
3915
+ name: string;
3916
+ kind: string;
3917
+ desc: string;
3918
+ props: ({
3919
+ name: string;
3920
+ kind: string;
3921
+ desc: string;
3922
+ isOpt?: undefined;
3923
+ } | {
3924
+ name: string;
3925
+ kind: string;
3926
+ desc: string;
3927
+ isOpt: boolean;
3928
+ })[];
3929
+ };
3899
3930
  GridDataContextMapping: {
3900
3931
  name: string;
3901
3932
  kind: string;
@@ -5168,6 +5199,22 @@ export declare const ADAPTABLE_METAMODEL: {
5168
5199
  ref?: undefined;
5169
5200
  })[];
5170
5201
  };
5202
+ RowDataChangedInfo: {
5203
+ name: string;
5204
+ kind: string;
5205
+ desc: string;
5206
+ props: ({
5207
+ name: string;
5208
+ kind: string;
5209
+ desc: string;
5210
+ ref?: undefined;
5211
+ } | {
5212
+ name: string;
5213
+ kind: string;
5214
+ desc: string;
5215
+ ref: string;
5216
+ })[];
5217
+ };
5171
5218
  RowDataChangeTrigger: {
5172
5219
  name: string;
5173
5220
  kind: string;
@@ -6070,6 +6117,16 @@ export declare const ADAPTABLE_METAMODEL: {
6070
6117
  ref: string;
6071
6118
  }[];
6072
6119
  };
6120
+ UniqueGridCell: {
6121
+ name: string;
6122
+ kind: string;
6123
+ desc: string;
6124
+ props: {
6125
+ name: string;
6126
+ kind: string;
6127
+ desc: string;
6128
+ }[];
6129
+ };
6073
6130
  UpgradeConfig: {
6074
6131
  name: string;
6075
6132
  kind: string;