@adaptabletools/adaptable-cjs 18.1.11 → 18.1.12

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptabletools/adaptable-cjs",
3
- "version": "18.1.11",
3
+ "version": "18.1.12",
4
4
  "description": "Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements",
5
5
  "keywords": [
6
6
  "web-components",
@@ -41,7 +41,7 @@ export interface AgGridConfig {
41
41
  */
42
42
  gridOptions: GridOptions;
43
43
  /**
44
- * AG Grid Modules
44
+ * AG Grid Modules to use; provide empty array if using CJS
45
45
  */
46
46
  modules: Module[];
47
47
  }
@@ -94,11 +94,6 @@ export interface AdaptableOptions<TData = any> {
94
94
  * Options for managing Action Rows
95
95
  */
96
96
  actionRowOptions?: ActionRowOptions<TData>;
97
- /**
98
- * Options for managing AdapTableQL Expressions
99
- * @noCodeContainer
100
- */
101
- expressionOptions?: ExpressionOptions<TData>;
102
97
  /**
103
98
  * Options for managing Alerts in AdapTable
104
99
  *
@@ -125,17 +120,33 @@ export interface AdaptableOptions<TData = any> {
125
120
  */
126
121
  columnOptions?: ColumnOptions;
127
122
  /**
128
- * Options for setting the 'Div' elements in which AdapTable, AG Grid, popups are placed
123
+ * Options for managing Column Filters in AdapTable
124
+ *
125
+ * @gridInfoContainer
126
+ * @noCodeContainer
127
+ *
129
128
  */
130
- containerOptions?: ContainerOptions;
129
+ columnFilterOptions?: ColumnFilterOptions<TData>;
131
130
  /**
132
- * Options for managing personal Notes
131
+ * Options for managing AdapTable Column Menu
132
+ *
133
+ * @gridInfoContainer
133
134
  */
134
- noteOptions?: NoteOptions;
135
+ columnMenuOptions?: ColumnMenuOptions<TData>;
135
136
  /**
136
137
  * Options for managing collaborative Comments
137
138
  */
138
139
  commentOptions?: CommentOptions<TData>;
140
+ /**
141
+ * Options for setting the 'Div' elements in which AdapTable, AG Grid, popups are placed
142
+ */
143
+ containerOptions?: ContainerOptions;
144
+ /**
145
+ * Options for managing AdapTable Context Menu
146
+ *
147
+ * @gridInfoContainer
148
+ */
149
+ contextMenuOptions?: ContextMenuOptions<TData>;
139
150
  /**
140
151
  * Options for using Custom Sort
141
152
  */
@@ -154,6 +165,10 @@ export interface AdaptableOptions<TData = any> {
154
165
  * @noCodeContainer
155
166
  */
156
167
  dataChangeHistoryOptions?: DataChangeHistoryOptions<TData>;
168
+ /**
169
+ * Options for managing the Data Import function
170
+ */
171
+ dataImportOptions?: DataImportOptions;
157
172
  /**
158
173
  * Options to manage Data Sets
159
174
  */
@@ -176,18 +191,25 @@ export interface AdaptableOptions<TData = any> {
176
191
  * @gridInfoContainer
177
192
  */
178
193
  exportOptions?: ExportOptions;
194
+ /**
195
+ * Options for managing AdapTableQL Expressions
196
+ * @noCodeContainer
197
+ */
198
+ expressionOptions?: ExpressionOptions<TData>;
179
199
  /**
180
200
  * Options for managing FDC3 in AdapTable
181
201
  */
182
202
  fdc3Options?: Fdc3Options;
183
203
  /**
184
- * Options for managing Column Filters in AdapTable
204
+ * Options for managing Flashing Cells - primarily default values
185
205
  *
186
206
  * @gridInfoContainer
187
- * @noCodeContainer
188
- *
189
207
  */
190
- columnFilterOptions?: ColumnFilterOptions<TData>;
208
+ flashingCellOptions?: FlashingCellOptions;
209
+ /**
210
+ * Options for providing Custom Display Formats
211
+ */
212
+ formatColumnOptions?: FormatColumnOptions;
191
213
  /**
192
214
  * Options for managing the Grid Filter in AdapTable
193
215
  *
@@ -196,16 +218,6 @@ export interface AdaptableOptions<TData = any> {
196
218
  *
197
219
  */
198
220
  gridFilterOptions?: GridFilterOptions<TData>;
199
- /**
200
- * Options for managing Flashing Cells - primarily default values
201
- *
202
- * @gridInfoContainer
203
- */
204
- flashingCellOptions?: FlashingCellOptions;
205
- /**
206
- * Options for providing Custom Display Formats
207
- */
208
- formatColumnOptions?: FormatColumnOptions;
209
221
  /**
210
222
  * Options related to Row Grouping
211
223
  *
@@ -221,17 +233,9 @@ export interface AdaptableOptions<TData = any> {
221
233
  */
222
234
  layoutOptions?: LayoutOptions;
223
235
  /**
224
- * Options for managing AdapTable Column Menu
225
- *
226
- * @gridInfoContainer
227
- */
228
- columnMenuOptions?: ColumnMenuOptions<TData>;
229
- /**
230
- * Options for managing AdapTable Context Menu
231
- *
232
- * @gridInfoContainer
236
+ * Options for managing personal Notes
233
237
  */
234
- contextMenuOptions?: ContextMenuOptions<TData>;
238
+ noteOptions?: NoteOptions;
235
239
  /**
236
240
  * Options for managing Notifications in AdapTable
237
241
  *
@@ -280,10 +284,6 @@ export interface AdaptableOptions<TData = any> {
280
284
  * @gridInfoContainer
281
285
  */
282
286
  userInterfaceOptions?: UserInterfaceOptions<TData>;
283
- /**
284
- * Options for managing the Data Import function
285
- */
286
- dataImportOptions?: DataImportOptions;
287
287
  /**
288
288
  * Used for managing the AdapTable Plugins
289
289
  */
@@ -43,10 +43,6 @@ export interface PredefinedConfig {
43
43
  * Supplies a collection of *Custom Sort* objects to allow some columns to be sorted in non-standard (e.g. non alphabetical) ways
44
44
  */
45
45
  CustomSort?: CustomSortState;
46
- /**
47
- * Collection of personal Notes that are edited at Cell level
48
- */
49
- Note?: NoteState;
50
46
  /**
51
47
  * Large series of properties to give users full control over the look and feel of the *Dashboard* - the section above the grid with toolbars and buttons
52
48
  */
@@ -71,14 +67,18 @@ export interface PredefinedConfig {
71
67
  * Supplies a collection of *Layout* objects to name and manage groups of column visibility, order and sorts.
72
68
  */
73
69
  Layout?: LayoutState;
74
- /**
75
- * Supplies a collection of *PlusMinus* rule objects to stipulate what happens when the user clicks '+' or '-' in a numeric cell
76
- */
77
- PlusMinus?: PlusMinusState;
78
70
  /**
79
71
  * Named Queries available for use across multiple AdapTable Modules; and `CurrentQuery` - an Expression to run at start-up
80
72
  */
81
73
  NamedQuery?: NamedQueryState;
74
+ /**
75
+ * Collection of personal Notes that are edited at Cell level
76
+ */
77
+ Note?: NoteState;
78
+ /**
79
+ * Supplies a collection of *PlusMinus* rule objects to stipulate what happens when the user clicks '+' or '-' in a numeric cell
80
+ */
81
+ PlusMinus?: PlusMinusState;
82
82
  /**
83
83
  * Configues how Quick Search will run i.e. how and whether to highlight matching cells and to filter out non-matching rows
84
84
  */
@@ -3782,13 +3782,11 @@ class AdaptableAgGrid {
3782
3782
  const expandedState = agGridApi.getState().rowGroupExpansion || { expandedRowGroupIds: [] };
3783
3783
  const currentLayoutState = { columnState, expandedState };
3784
3784
  try {
3785
- // TODO
3786
3785
  const stringifiedLayoutState = JSON.stringify(currentLayoutState);
3787
3786
  if (stringifiedLayoutState === this.previousAgGridLayoutState) {
3788
3787
  // same grid column state as a previous,
3789
3788
  // so no need to update, as the layout has already been updated
3790
3789
  // for this grid column state
3791
- // console.log('same state as before');
3792
3790
  return;
3793
3791
  }
3794
3792
  this.previousAgGridLayoutState = stringifiedLayoutState;
@@ -4009,6 +4007,16 @@ class AdaptableAgGrid {
4009
4007
  const passedColumnDefs = options.columnDefs;
4010
4008
  if (passedColumnDefs) {
4011
4009
  const colDefsWithSpecialColumns = self.getColumnDefinitionsInclSpecialColumns(passedColumnDefs);
4010
+ const allDisplayedColIds = self.agGridAdapter
4011
+ .getAgGridApi()
4012
+ .getAllDisplayedColumns()
4013
+ .map((col) => col.getColId());
4014
+ // mark as hidden the colDefs of special columns which are not visible
4015
+ self.agGridAdapter.patchColDefs(colDefsWithSpecialColumns, (colDef) => {
4016
+ if (self.api.columnApi.isSpecialColumn(colDef.colId)) {
4017
+ colDef.hide = !allDisplayedColIds.includes(colDef.colId);
4018
+ }
4019
+ });
4012
4020
  options['columnDefs'] = colDefsWithSpecialColumns;
4013
4021
  self.logger.info(`Added SpecialColumns on GridOptions.columnDefs update (source=${source})`);
4014
4022
  }
@@ -60,6 +60,7 @@ export declare class AgGridAdapter {
60
60
  * Mutates the colDefs to ensure that each column has a colId
61
61
  */
62
62
  assignColumnIdsToColDefs(colDefs?: (ColDef | ColGroupDef)[]): void;
63
+ patchColDefs(colDefs: (ColDef | ColGroupDef)[], patchFn: (colDef: ColDef) => void): void;
63
64
  getDefaultColumnDefinition(): GridOptions['defaultColDef'];
64
65
  _agGridApi_getValue(colKey: string | Column, rowNode: IRowNode, gridApi?: GridApi): any;
65
66
  }
@@ -574,16 +574,25 @@ class AgGridAdapter {
574
574
  if (colDef.field && !colDef.colId) {
575
575
  colDef.colId = colDef.field;
576
576
  }
577
- if (colDef.children) {
578
- colDef.children.forEach((colDef) => assignColId(colDef));
577
+ if (!colDef.colId) {
578
+ this.logger.warn('A column is missing the colId - please check ', colDef, 'Either pass a "field" property or a "colId" property.');
579
579
  }
580
- else {
581
- if (!colDef.colId) {
582
- this.logger.warn('A column is missing the colId - please check ', colDef, 'Either pass a "field" property or a "colId" property.');
583
- }
580
+ };
581
+ this.patchColDefs(colDefs, assignColId);
582
+ }
583
+ patchColDefs(colDefs = [], patchFn) {
584
+ const applyPatch = (colDef) => {
585
+ if (!colDef) {
586
+ return;
587
+ }
588
+ if (!colDef.children) {
589
+ patchFn(colDef);
590
+ }
591
+ if (colDef.children) {
592
+ colDef.children.forEach((childColDef) => applyPatch(childColDef));
584
593
  }
585
594
  };
586
- colDefs.forEach((colDef) => assignColId(colDef));
595
+ colDefs.forEach((colDef) => applyPatch(colDef));
587
596
  }
588
597
  getDefaultColumnDefinition() {
589
598
  var _a, _b;
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: 1721646144078 || Date.now(),
6
- VERSION: "18.1.11" || '--current-version--',
5
+ PUBLISH_TIMESTAMP: 1721914565202 || Date.now(),
6
+ VERSION: "18.1.12" || '--current-version--',
7
7
  };