@adaptabletools/adaptable 18.0.0-canary.25 → 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.
Files changed (136) hide show
  1. package/package.json +1 -1
  2. package/src/AdaptableInterfaces/IAdaptable.d.ts +1 -1
  3. package/src/AdaptableOptions/CommentOptions.d.ts +2 -2
  4. package/src/AdaptableOptions/MenuOptions.d.ts +11 -23
  5. package/src/AdaptableOptions/MenuOptions.js +1 -96
  6. package/src/Api/GridApi.d.ts +2 -1
  7. package/src/Api/Implementation/ActionRowApiImpl.js +3 -7
  8. package/src/Api/Implementation/AlertApiImpl.js +5 -10
  9. package/src/Api/Implementation/CalendarApiImpl.js +1 -6
  10. package/src/Api/Implementation/ChartingApiImpl.js +3 -3
  11. package/src/Api/Implementation/ColumnApiImpl.js +6 -6
  12. package/src/Api/Implementation/ColumnFilterApiImpl.js +7 -7
  13. package/src/Api/Implementation/CommentsApiImpl.js +1 -1
  14. package/src/Api/Implementation/ConfigApiImpl.js +11 -17
  15. package/src/Api/Implementation/DashboardApiImpl.js +1 -6
  16. package/src/Api/Implementation/ExportApiImpl.js +5 -10
  17. package/src/Api/Implementation/ExpressionApiImpl.js +8 -13
  18. package/src/Api/Implementation/Fdc3ApiImpl.js +1 -1
  19. package/src/Api/Implementation/FlashingCellApiImpl.js +3 -8
  20. package/src/Api/Implementation/FormatColumnApiImpl.js +4 -4
  21. package/src/Api/Implementation/FreeTextColumnApiImpl.js +1 -1
  22. package/src/Api/Implementation/GridApiImpl.d.ts +2 -1
  23. package/src/Api/Implementation/GridApiImpl.js +11 -8
  24. package/src/Api/Implementation/LayoutApiImpl.d.ts +0 -7
  25. package/src/Api/Implementation/LayoutApiImpl.js +0 -15
  26. package/src/Api/Implementation/PredicateApiImpl.js +2 -2
  27. package/src/Api/Implementation/ScheduleApiImpl.js +6 -6
  28. package/src/Api/Implementation/ScopeApiImpl.js +10 -10
  29. package/src/Api/Implementation/TeamSharingApiImpl.js +3 -15
  30. package/src/Api/Implementation/ThemeApiImpl.js +2 -7
  31. package/src/Api/Implementation/UserInterfaceApiImpl.js +4 -13
  32. package/src/Api/Internal/ActionRowInternalApi.js +7 -45
  33. package/src/Api/Internal/AdaptableInternalApi.js +2 -12
  34. package/src/Api/Internal/AlertInternalApi.js +4 -17
  35. package/src/Api/Internal/CalculatedColumnInternalApi.js +7 -14
  36. package/src/Api/Internal/ChartingInternalApi.js +13 -13
  37. package/src/Api/Internal/ColumnFilterInternalApi.js +18 -36
  38. package/src/Api/Internal/CommentsInternalApi.d.ts +1 -1
  39. package/src/Api/Internal/CommentsInternalApi.js +1 -1
  40. package/src/Api/Internal/CustomSortInternalApi.js +1 -1
  41. package/src/Api/Internal/DashboardInternalApi.js +4 -10
  42. package/src/Api/Internal/DataImportInternalApi.js +3 -9
  43. package/src/Api/Internal/DataSetInternalApi.js +2 -7
  44. package/src/Api/Internal/ExportInternalApi.js +4 -4
  45. package/src/Api/Internal/ExpressionInternalApi.js +2 -12
  46. package/src/Api/Internal/Fdc3InternalApi.js +1 -10
  47. package/src/Api/Internal/FormatColumnInternalApi.js +11 -20
  48. package/src/Api/Internal/FreeTextColumnInternalApi.js +1 -1
  49. package/src/Api/Internal/GridFilterInternalApi.js +2 -8
  50. package/src/Api/Internal/GridInternalApi.js +13 -40
  51. package/src/Api/Internal/LayoutInternalApi.d.ts +1 -0
  52. package/src/Api/Internal/LayoutInternalApi.js +10 -19
  53. package/src/Api/Internal/NoteInternalApi.d.ts +1 -1
  54. package/src/Api/Internal/NoteInternalApi.js +1 -1
  55. package/src/Api/Internal/PredicateInternalApi.js +5 -40
  56. package/src/Api/Internal/ScheduleInternalApi.js +1 -6
  57. package/src/Api/Internal/StyledColumnInternalApi.js +5 -5
  58. package/src/Api/Internal/SystemStatusInternalApi.js +1 -7
  59. package/src/Api/Internal/TeamSharingInternalApi.js +2 -7
  60. package/src/Api/Internal/ThemeInternalApi.js +1 -1
  61. package/src/Api/Internal/UserInterfaceInternalApi.js +1 -1
  62. package/src/Api/LayoutApi.d.ts +0 -11
  63. package/src/PredefinedConfig/Common/CellSummary.d.ts +5 -14
  64. package/src/PredefinedConfig/Common/Enums.d.ts +2 -0
  65. package/src/PredefinedConfig/Common/Enums.js +2 -0
  66. package/src/PredefinedConfig/Common/Menu.d.ts +4 -4
  67. package/src/PredefinedConfig/Common/Menu.js +17 -18
  68. package/src/PredefinedConfig/Common/RowSummary.d.ts +1 -1
  69. package/src/PredefinedConfig/Common/RowSummary.js +4 -4
  70. package/src/Strategy/AdaptableModuleBase.d.ts +3 -4
  71. package/src/Strategy/AdaptableModuleBase.js +5 -9
  72. package/src/Strategy/AlertModule.d.ts +1 -1
  73. package/src/Strategy/AlertModule.js +1 -1
  74. package/src/Strategy/BulkUpdateModule.d.ts +1 -1
  75. package/src/Strategy/BulkUpdateModule.js +3 -2
  76. package/src/Strategy/CalculatedColumnModule.d.ts +2 -2
  77. package/src/Strategy/CalculatedColumnModule.js +2 -2
  78. package/src/Strategy/CellSummaryModule.d.ts +2 -2
  79. package/src/Strategy/CellSummaryModule.js +56 -96
  80. package/src/Strategy/ColumnFilterModule.d.ts +2 -2
  81. package/src/Strategy/ColumnFilterModule.js +17 -42
  82. package/src/Strategy/ColumnInfoModule.d.ts +2 -2
  83. package/src/Strategy/ColumnInfoModule.js +2 -2
  84. package/src/Strategy/CommentModule.d.ts +1 -2
  85. package/src/Strategy/CommentModule.js +29 -30
  86. package/src/Strategy/CustomSortModule.d.ts +1 -1
  87. package/src/Strategy/CustomSortModule.js +1 -1
  88. package/src/Strategy/DashboardModule.d.ts +2 -2
  89. package/src/Strategy/DashboardModule.js +3 -14
  90. package/src/Strategy/DataImportModule.d.ts +3 -3
  91. package/src/Strategy/DataImportModule.js +3 -3
  92. package/src/Strategy/ExportModule.d.ts +1 -2
  93. package/src/Strategy/ExportModule.js +12 -41
  94. package/src/Strategy/Fdc3Module.d.ts +1 -1
  95. package/src/Strategy/Fdc3Module.js +1 -14
  96. package/src/Strategy/FlashingCellModule.d.ts +2 -2
  97. package/src/Strategy/FlashingCellModule.js +2 -2
  98. package/src/Strategy/FormatColumnModule.d.ts +1 -1
  99. package/src/Strategy/FormatColumnModule.js +28 -47
  100. package/src/Strategy/FreeTextColumnModule.d.ts +1 -1
  101. package/src/Strategy/FreeTextColumnModule.js +1 -1
  102. package/src/Strategy/GridInfoModule.d.ts +2 -2
  103. package/src/Strategy/GridInfoModule.js +2 -2
  104. package/src/Strategy/Interface/IModule.d.ts +3 -3
  105. package/src/Strategy/LayoutModule.d.ts +4 -4
  106. package/src/Strategy/LayoutModule.js +51 -72
  107. package/src/Strategy/NoteModule.d.ts +1 -2
  108. package/src/Strategy/NoteModule.js +28 -30
  109. package/src/Strategy/PlusMinusModule.d.ts +1 -1
  110. package/src/Strategy/PlusMinusModule.js +1 -1
  111. package/src/Strategy/SettingsPanelModule.d.ts +3 -3
  112. package/src/Strategy/SettingsPanelModule.js +3 -3
  113. package/src/Strategy/SmartEditModule.d.ts +1 -1
  114. package/src/Strategy/SmartEditModule.js +3 -2
  115. package/src/Strategy/StyledColumnModule.d.ts +1 -1
  116. package/src/Strategy/StyledColumnModule.js +10 -9
  117. package/src/Strategy/SystemStatusModule.d.ts +2 -2
  118. package/src/Strategy/SystemStatusModule.js +4 -3
  119. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +1 -1
  120. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +19 -19
  121. package/src/Utilities/Helpers/AdaptableHelper.js +3 -2
  122. package/src/Utilities/ObjectFactory.js +2 -0
  123. package/src/Utilities/Services/ModuleService.js +2 -2
  124. package/src/View/Layout/Wizard/LayoutWizard.js +1 -0
  125. package/src/View/Layout/Wizard/sections/RowGroupingSection.js +17 -1
  126. package/src/View/Layout/Wizard/sections/RowSummarySection.js +5 -5
  127. package/src/agGrid/AdaptableAgGrid.d.ts +1 -1
  128. package/src/agGrid/AdaptableAgGrid.js +1 -1
  129. package/src/agGrid/AgGridAdapter.d.ts +1 -2
  130. package/src/agGrid/AgGridColumnAdapter.js +2 -2
  131. package/src/agGrid/AgGridMenuAdapter.d.ts +18 -8
  132. package/src/agGrid/AgGridMenuAdapter.js +240 -51
  133. package/src/env.js +2 -2
  134. package/src/metamodel/adaptable.metamodel.d.ts +8 -2
  135. package/src/metamodel/adaptable.metamodel.js +1 -1
  136. package/tsconfig.esm.tsbuildinfo +1 -1
@@ -28,7 +28,7 @@ export class CalculatedColumnInternalApi extends ApiBase {
28
28
  this.getCalculatedColumnApi()
29
29
  .getCalculatedColumns()
30
30
  .forEach((calculatedColumn) => {
31
- if (this.getExpressionApi().internalApi.isColumnReferencedInExpression(columnId, this.adaptable.api.expressionApi.getAdaptableQueryExpression(calculatedColumn.Query))) {
31
+ if (this.getExpressionApi().internalApi.isColumnReferencedInExpression(columnId, this.getAdaptableApi().expressionApi.getAdaptableQueryExpression(calculatedColumn.Query))) {
32
32
  calcColumns.push(calculatedColumn);
33
33
  }
34
34
  });
@@ -39,7 +39,7 @@ export class CalculatedColumnInternalApi extends ApiBase {
39
39
  * @param calculatedColumn Calculated Column to check
40
40
  */
41
41
  getReferencedColumnIdsForCalculatedColumn(calculatedColumn) {
42
- const columnIds = this.adaptable.api.expressionApi.getColumnsFromExpression(this.adaptable.api.expressionApi.getAdaptableQueryExpression(calculatedColumn.Query));
42
+ const columnIds = this.getAdaptableApi().expressionApi.getColumnsFromExpression(this.getAdaptableApi().expressionApi.getAdaptableQueryExpression(calculatedColumn.Query));
43
43
  return columnIds;
44
44
  }
45
45
  /**
@@ -47,15 +47,15 @@ export class CalculatedColumnInternalApi extends ApiBase {
47
47
  * @param calculatedColumnId CalculatedColumnId to check
48
48
  */
49
49
  getReferencedColumnIdsForCalculatedColumnId(calculatedColumnId) {
50
- const calculatedColumn = this.adaptable.api.calculatedColumnApi
51
- .getCalculatedColumns()
50
+ const calculatedColumn = this.getAdaptableApi()
51
+ .calculatedColumnApi.getCalculatedColumns()
52
52
  .find((cc) => cc.ColumnId == calculatedColumnId);
53
53
  if (calculatedColumn) {
54
54
  return this.getReferencedColumnIdsForCalculatedColumn(calculatedColumn);
55
55
  }
56
56
  }
57
57
  getCalculatedColumnsDependentOnColumn(column) {
58
- const calculatedColumns = this.adaptable.api.calculatedColumnApi.getCalculatedColumns();
58
+ const calculatedColumns = this.getAdaptableApi().calculatedColumnApi.getCalculatedColumns();
59
59
  return calculatedColumns
60
60
  .filter((calculatedColumn) => {
61
61
  const dependentColumns = this.getReferencedColumnIdsForCalculatedColumnId(calculatedColumn.ColumnId);
@@ -81,15 +81,8 @@ export class CalculatedColumnInternalApi extends ApiBase {
81
81
  }
82
82
  fireCalculatedColumnChangedEvent(trigger, calculatedColumn) {
83
83
  const adaptableApi = this.getAdaptableApi();
84
- const calculatedColumnChangedInfo = {
85
- adaptableApi: adaptableApi,
86
- actionName: trigger,
87
- calculatedColumn: calculatedColumn,
88
- calculatedColumnExpressionAST: adaptableApi.expressionApi.getASTForExpression(this.getExpressionFromCalculatedColumn(calculatedColumn)),
89
- userName: adaptableApi.optionsApi.getUserName(),
90
- adaptableId: adaptableApi.optionsApi.getAdaptableId(),
91
- };
92
- this.adaptable.api.eventApi.emit('CalculatedColumnChanged', calculatedColumnChangedInfo);
84
+ const calculatedColumnChangedInfo = Object.assign({ actionName: trigger, calculatedColumn: calculatedColumn, calculatedColumnExpressionAST: adaptableApi.expressionApi.getASTForExpression(this.getExpressionFromCalculatedColumn(calculatedColumn)) }, this.getAdaptableApi().internalApi.buildBaseContext());
85
+ this.getAdaptableApi().eventApi.emit('CalculatedColumnChanged', calculatedColumnChangedInfo);
93
86
  }
94
87
  getColDefsForCalculatedColumns() {
95
88
  const defaultSpecialColumnSettings = this.getGridApi().internalApi.deriveSpecialColumnSettingsFromAgGridDefaultColDef();
@@ -13,52 +13,52 @@ export class ChartingInternalApi extends ApiBase {
13
13
  }
14
14
  getContainerElemetnByName(containerName) {
15
15
  var _a, _b, _c;
16
- const chartContainers = (_c = (_b = (_a = this.adaptable.api.optionsApi.getAdaptableOptions()) === null || _a === void 0 ? void 0 : _a.chartingOptions) === null || _b === void 0 ? void 0 : _b.chartContainers) !== null && _c !== void 0 ? _c : [];
16
+ const chartContainers = (_c = (_b = (_a = this.getAdaptableApi().optionsApi.getAdaptableOptions()) === null || _a === void 0 ? void 0 : _a.chartingOptions) === null || _b === void 0 ? void 0 : _b.chartContainers) !== null && _c !== void 0 ? _c : [];
17
17
  const chartContainer = chartContainers.find((container) => container.name === containerName);
18
18
  return this.getContainerElement(chartContainer);
19
19
  }
20
20
  getUniqueChartName() {
21
- const charts = this.adaptable.api.chartingApi.getChartDefinitions();
22
- const externalCharts = this.adaptable.api.chartingApi.getExternalChartDefinitions();
21
+ const charts = this.getAdaptableApi().chartingApi.getChartDefinitions();
22
+ const externalCharts = this.getAdaptableApi().chartingApi.getExternalChartDefinitions();
23
23
  return `Chart ${charts.length + externalCharts.length + 1}`;
24
24
  }
25
25
  // External lib charting service
26
26
  isExternalChartOpened(chartDefinition) {
27
- const externalChartingOptions = this.adaptable.api.optionsApi.getChartingOptions().externalChartingOptions;
27
+ const externalChartingOptions = this.getAdaptableApi().optionsApi.getChartingOptions().externalChartingOptions;
28
28
  if (!(externalChartingOptions === null || externalChartingOptions === void 0 ? void 0 : externalChartingOptions.isChartOpened)) {
29
29
  return false;
30
30
  }
31
31
  if (!chartDefinition) {
32
32
  return false;
33
33
  }
34
- return externalChartingOptions.isChartOpened(Object.assign({ chartDefinition: chartDefinition }, createBaseContext(this.adaptable.api)));
34
+ return externalChartingOptions.isChartOpened(Object.assign({ chartDefinition: chartDefinition }, createBaseContext(this.getAdaptableApi())));
35
35
  }
36
36
  onHideExternalChart(chartDefinition) {
37
- const externalChartingOptions = this.adaptable.api.optionsApi.getChartingOptions().externalChartingOptions;
37
+ const externalChartingOptions = this.getAdaptableApi().optionsApi.getChartingOptions().externalChartingOptions;
38
38
  if (!(externalChartingOptions === null || externalChartingOptions === void 0 ? void 0 : externalChartingOptions.onHideChart)) {
39
39
  return;
40
40
  }
41
- externalChartingOptions.onHideChart(Object.assign({ chartDefinition: chartDefinition }, createBaseContext(this.adaptable.api)));
41
+ externalChartingOptions.onHideChart(Object.assign({ chartDefinition: chartDefinition }, createBaseContext(this.getAdaptableApi())));
42
42
  }
43
43
  onShowExternalChart(chartDefinition, container) {
44
- const externalChartingOptions = this.adaptable.api.optionsApi.getChartingOptions().externalChartingOptions;
44
+ const externalChartingOptions = this.getAdaptableApi().optionsApi.getChartingOptions().externalChartingOptions;
45
45
  if (!(externalChartingOptions === null || externalChartingOptions === void 0 ? void 0 : externalChartingOptions.onShowChart)) {
46
46
  return;
47
47
  }
48
- externalChartingOptions.onShowChart(Object.assign({ chartDefinition: chartDefinition, container: container }, createBaseContext(this.adaptable.api)));
48
+ externalChartingOptions.onShowChart(Object.assign({ chartDefinition: chartDefinition, container: container }, createBaseContext(this.getAdaptableApi())));
49
49
  }
50
50
  onPreviewExternalChart(chartDefinition, container) {
51
- const externalChartingOptions = this.adaptable.api.optionsApi.getChartingOptions().externalChartingOptions;
51
+ const externalChartingOptions = this.getAdaptableApi().optionsApi.getChartingOptions().externalChartingOptions;
52
52
  if (!(externalChartingOptions === null || externalChartingOptions === void 0 ? void 0 : externalChartingOptions.onPreviewChart)) {
53
53
  return;
54
54
  }
55
- return externalChartingOptions.onPreviewChart(Object.assign({ chartDefinition: chartDefinition, container: container }, createBaseContext(this.adaptable.api)));
55
+ return externalChartingOptions.onPreviewChart(Object.assign({ chartDefinition: chartDefinition, container: container }, createBaseContext(this.getAdaptableApi())));
56
56
  }
57
57
  onDeleteExternalChart(chartDefinition) {
58
- const externalChartingOptions = this.adaptable.api.optionsApi.getChartingOptions().externalChartingOptions;
58
+ const externalChartingOptions = this.getAdaptableApi().optionsApi.getChartingOptions().externalChartingOptions;
59
59
  if (!(externalChartingOptions === null || externalChartingOptions === void 0 ? void 0 : externalChartingOptions.onDeleteChart)) {
60
60
  return;
61
61
  }
62
- externalChartingOptions.onDeleteChart(Object.assign({ chartDefinition: chartDefinition }, createBaseContext(this.adaptable.api)));
62
+ externalChartingOptions.onDeleteChart(Object.assign({ chartDefinition: chartDefinition }, createBaseContext(this.getAdaptableApi())));
63
63
  }
64
64
  }
@@ -43,7 +43,7 @@ export class ColumnFilterInternalApi extends ApiBase {
43
43
  const filter = {
44
44
  ColumnId: column.columnId,
45
45
  Predicate: {
46
- PredicateId: this.adaptable.api.predicateApi.internalApi.getEqualityPredicateForDataType(column.dataType),
46
+ PredicateId: this.getAdaptableApi().predicateApi.internalApi.getEqualityPredicateForDataType(column.dataType),
47
47
  Inputs: [...new Set([gridCell.rawValue])],
48
48
  },
49
49
  };
@@ -55,11 +55,11 @@ export class ColumnFilterInternalApi extends ApiBase {
55
55
  * @param columnFilter Column Filter to use
56
56
  */
57
57
  columnFilterToString(columnFilter) {
58
- const friendlyName = this.adaptable.api.columnApi.getFriendlyNameForColumnId(columnFilter.ColumnId);
58
+ const friendlyName = this.getAdaptableApi().columnApi.getFriendlyNameForColumnId(columnFilter.ColumnId);
59
59
  return ('[' +
60
60
  friendlyName +
61
61
  '] ' +
62
- this.adaptable.api.predicateApi.predicateToString(columnFilter.Predicate));
62
+ this.getAdaptableApi().predicateApi.predicateToString(columnFilter.Predicate));
63
63
  }
64
64
  /**
65
65
  * Retrieves descriptions of given Column Filters
@@ -99,17 +99,9 @@ export class ColumnFilterInternalApi extends ApiBase {
99
99
  return true;
100
100
  }
101
101
  let value = gridCell.normalisedValue;
102
- const predicateDefHandlerContext = {
103
- value: value,
104
- oldValue: null,
105
- displayValue: gridCell.displayValue,
106
- node,
107
- column,
108
- adaptableApi: this.getAdaptableApi(),
109
- userName: this.getAdaptableApi().optionsApi.getUserName(),
110
- adaptableId: this.getAdaptableApi().optionsApi.getAdaptableId(),
111
- };
112
- return this.adaptable.api.predicateApi.handlePredicate(columnFilter.Predicate, predicateDefHandlerContext, true);
102
+ const predicateDefHandlerContext = Object.assign({ value: value, oldValue: null, displayValue: gridCell.displayValue, node,
103
+ column }, this.getAdaptableApi().internalApi.buildBaseContext());
104
+ return this.getAdaptableApi().predicateApi.handlePredicate(columnFilter.Predicate, predicateDefHandlerContext, true);
113
105
  }
114
106
  /**
115
107
  * Checks if the filter action should trigger Column Filtering
@@ -128,32 +120,32 @@ export class ColumnFilterInternalApi extends ApiBase {
128
120
  // filter -> suspend changes
129
121
  var _a, _b;
130
122
  const isNewAndActive = action.type === LayoutRedux.LAYOUT_COLUMN_FILTER_ADD &&
131
- this.adaptable.api.columnFilterApi.isColumnFilterActive(action.columnFilter);
123
+ this.getAdaptableApi().columnFilterApi.isColumnFilterActive(action.columnFilter);
132
124
  const isClearAndPreviousWasActive = action.type === LayoutRedux.LAYOUT_COLUMN_FILTER_CLEAR &&
133
- this.adaptable.api.columnFilterApi.isColumnFilterActive(action.columnFilter);
125
+ this.getAdaptableApi().columnFilterApi.isColumnFilterActive(action.columnFilter);
134
126
  const isClearAllAtLeastOneActiveFilter = action.type === LayoutRedux.LAYOUT_COLUMN_FILTER_CLEAR_ALL &&
135
- this.adaptable.api.columnFilterApi
127
+ this.getAdaptableApi().columnFilterApi
136
128
  .getColumnFilters()
137
- .some((columnFilter) => this.adaptable.api.columnFilterApi.isColumnFilterActive(columnFilter));
129
+ .some((columnFilter) => this.getAdaptableApi().columnFilterApi.isColumnFilterActive(columnFilter));
138
130
  let isEditTrigger = false;
139
131
  if (action.type === LayoutRedux.LAYOUT_COLUMN_FILTER_EDIT) {
140
132
  const newFilter = action.columnFilter;
141
- const previous = this.adaptable.api.columnFilterApi.getColumnFilterForColumn(newFilter.ColumnId);
133
+ const previous = this.getAdaptableApi().columnFilterApi.getColumnFilterForColumn(newFilter.ColumnId);
142
134
  // same filter edit, so always trigger
143
135
  if (((_a = previous === null || previous === void 0 ? void 0 : previous.Predicate) === null || _a === void 0 ? void 0 : _a.PredicateId) === ((_b = newFilter === null || newFilter === void 0 ? void 0 : newFilter.Predicate) === null || _b === void 0 ? void 0 : _b.PredicateId)) {
144
136
  isEditTrigger = true;
145
137
  // new filter is active
146
138
  }
147
- else if (this.adaptable.api.columnFilterApi.isColumnFilterActive(newFilter)) {
139
+ else if (this.getAdaptableApi().columnFilterApi.isColumnFilterActive(newFilter)) {
148
140
  isEditTrigger = true;
149
141
  }
150
- else if (this.adaptable.api.columnFilterApi.isColumnFilterActive(previous)) {
142
+ else if (this.getAdaptableApi().columnFilterApi.isColumnFilterActive(previous)) {
151
143
  // previous filter was active
152
144
  isEditTrigger = true;
153
145
  }
154
146
  }
155
147
  const isSetAndActive = action.type === LayoutRedux.LAYOUT_COLUMN_FILTER_SET &&
156
- this.adaptable.api.columnFilterApi.isColumnFilterActive(action.columnFilter);
148
+ this.getAdaptableApi().columnFilterApi.isColumnFilterActive(action.columnFilter);
157
149
  const isSuspendChanged = [
158
150
  LayoutRedux.LAYOUT_COLUMN_FILTER_SUSPEND,
159
151
  LayoutRedux.LAYOUT_COLUMN_FILTER_SUSPEND_ALL,
@@ -173,25 +165,15 @@ export class ColumnFilterInternalApi extends ApiBase {
173
165
  fireColumnFilterAppliedEvent() {
174
166
  if (this.adaptable.isReady) {
175
167
  const adaptableApi = this.getAdaptableApi();
176
- const columnFilterAppliedInfo = {
177
- columnFilters: this.getColumnFilterApi().getColumnFilters(),
178
- adaptableApi: adaptableApi,
179
- userName: adaptableApi.optionsApi.getUserName(),
180
- adaptableId: adaptableApi.optionsApi.getAdaptableId(),
181
- };
182
- this.adaptable.api.eventApi.emit('ColumnFilterApplied', columnFilterAppliedInfo);
168
+ const columnFilterAppliedInfo = Object.assign({ columnFilters: this.getColumnFilterApi().getColumnFilters() }, this.getAdaptableApi().internalApi.buildBaseContext());
169
+ this.getAdaptableApi().eventApi.emit('ColumnFilterApplied', columnFilterAppliedInfo);
183
170
  }
184
171
  }
185
172
  fireGridFilterAppliedEvent() {
186
173
  if (this.adaptable.isReady) {
187
174
  const adaptableApi = this.getAdaptableApi();
188
- const gridFilterAppliedInfo = {
189
- columnFilters: this.getColumnFilterApi().getColumnFilters(),
190
- adaptableApi: adaptableApi,
191
- userName: adaptableApi.optionsApi.getUserName(),
192
- adaptableId: adaptableApi.optionsApi.getAdaptableId(),
193
- };
194
- this.adaptable.api.eventApi.emit('GridFilterApplied', gridFilterAppliedInfo);
175
+ const gridFilterAppliedInfo = Object.assign({ columnFilters: this.getColumnFilterApi().getColumnFilters() }, this.getAdaptableApi().internalApi.buildBaseContext());
176
+ this.getAdaptableApi().eventApi.emit('GridFilterApplied', gridFilterAppliedInfo);
195
177
  }
196
178
  }
197
179
  /**
@@ -1,4 +1,4 @@
1
1
  import { ApiBase } from '../Implementation/ApiBase';
2
2
  export declare class CommentsInternalApi extends ApiBase {
3
- areCommentsAvailable(): boolean;
3
+ areCommentsSupported(): boolean;
4
4
  }
@@ -1,6 +1,6 @@
1
1
  import { ApiBase } from '../Implementation/ApiBase';
2
2
  export class CommentsInternalApi extends ApiBase {
3
- areCommentsAvailable() {
3
+ areCommentsSupported() {
4
4
  var _a;
5
5
  const currentLayout = this.getLayoutApi().getCurrentLayout();
6
6
  if (currentLayout.EnablePivot) {
@@ -3,7 +3,7 @@ export class CustomSortInternalApi extends ApiBase {
3
3
  getCustomSortComparer(columnId) {
4
4
  var _a;
5
5
  const column = this.getColumnApi().getColumnWithColumnId(columnId);
6
- return (_a = this.getCustomSortOptions().customSortComparers) === null || _a === void 0 ? void 0 : _a.find((csc) => this.adaptable.api.scopeApi.isColumnInScope(column, csc.scope));
6
+ return (_a = this.getCustomSortOptions().customSortComparers) === null || _a === void 0 ? void 0 : _a.find((csc) => this.getAdaptableApi().scopeApi.isColumnInScope(column, csc.scope));
7
7
  }
8
8
  getDefaultCustomSortComparer(columnId, columnValues) {
9
9
  // have to return a function that may not have access to this
@@ -26,18 +26,12 @@ export class DashboardInternalApi extends ApiBase {
26
26
  }
27
27
  return visibleInOldState && !visibleInNewState;
28
28
  };
29
- const dashboardChangedInfo = {
30
- adaptableApi: this.adaptable.api,
31
- actionName: trigger,
32
- oldDashboardState,
29
+ const dashboardChangedInfo = Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { actionName: trigger, oldDashboardState,
33
30
  newDashboardState,
34
31
  isToolbarStateChangedToVisible,
35
- isToolbarStateChangedToHidden,
36
- userName: this.adaptable.api.optionsApi.getUserName(),
37
- adaptableId: this.adaptable.api.optionsApi.getAdaptableId(),
38
- };
32
+ isToolbarStateChangedToHidden });
39
33
  if (!isEqual(oldDashboardState, newDashboardState)) {
40
- setTimeout(() => this.adaptable.api.eventApi.emit('DashboardChanged', dashboardChangedInfo));
34
+ setTimeout(() => this.getAdaptableApi().eventApi.emit('DashboardChanged', dashboardChangedInfo));
41
35
  }
42
36
  }
43
37
  isToolbarInActiveTab(toolbarName, dashboardState) {
@@ -57,7 +51,7 @@ export class DashboardInternalApi extends ApiBase {
57
51
  return false;
58
52
  }
59
53
  isToolbarCustom(toolbarName) {
60
- return this.adaptable.api.dashboardApi
54
+ return this.getAdaptableApi().dashboardApi
61
55
  .getCustomToolbars()
62
56
  .some((tb) => tb.name === toolbarName);
63
57
  }
@@ -52,16 +52,10 @@ export class DataImportInternalApi extends ApiBase {
52
52
  * @param gridDataRows Rows that were imported
53
53
  */
54
54
  publishDataImportedEvent(importData, addedRows, updatedRows) {
55
- const adaptableApi = this.getAdaptableApi();
56
- const dataImportedInfo = {
57
- adaptableApi: adaptableApi,
58
- importData,
55
+ const dataImportedInfo = Object.assign({ importData,
59
56
  addedRows,
60
- updatedRows,
61
- userName: adaptableApi.optionsApi.getUserName(),
62
- adaptableId: adaptableApi.optionsApi.getAdaptableId(),
63
- };
64
- this.adaptable.api.internalApi.dispatchReduxAction(SystemRedux.DataImportCompleted(dataImportedInfo));
57
+ updatedRows }, this.getAdaptableApi().internalApi.buildBaseContext());
58
+ this.getAdaptableApi().internalApi.dispatchReduxAction(SystemRedux.DataImportCompleted(dataImportedInfo));
65
59
  this.getEventApi().emit('DataImported', dataImportedInfo);
66
60
  }
67
61
  }
@@ -6,13 +6,8 @@ export class DataSetInternalApi extends ApiBase {
6
6
  */
7
7
  fireDataSetSelectedEvent(dataSet) {
8
8
  if (this.adaptable.isReady) {
9
- const dataSetSelectedInfo = {
10
- adaptableApi: this.adaptable.api,
11
- dataSet,
12
- userName: this.adaptable.api.optionsApi.getUserName(),
13
- adaptableId: this.adaptable.api.optionsApi.getAdaptableId(),
14
- };
15
- this.adaptable.api.eventApi.emit('DataSetSelected', dataSetSelectedInfo);
9
+ const dataSetSelectedInfo = Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { dataSet });
10
+ this.getAdaptableApi().eventApi.emit('DataSetSelected', dataSetSelectedInfo);
16
11
  }
17
12
  }
18
13
  }
@@ -21,12 +21,12 @@ export class ExportInternalApi extends ApiBase {
21
21
  break;
22
22
  case 'ScopeColumns':
23
23
  // use the Scope object which will tell us if the Column is relevant
24
- if (!this.adaptable.api.scopeApi.isColumnInScopeColumns(cellDataChangedInfo.column, report.Scope)) {
24
+ if (!this.getAdaptableApi().scopeApi.isColumnInScopeColumns(cellDataChangedInfo.column, report.Scope)) {
25
25
  return false;
26
26
  }
27
27
  break;
28
28
  case 'SelectedColumns':
29
- let selectedCellInfo = this.adaptable.api.gridApi.getSelectedCellInfo();
29
+ let selectedCellInfo = this.getAdaptableApi().gridApi.getSelectedCellInfo();
30
30
  if (selectedCellInfo) {
31
31
  if (selectedCellInfo.columns.find((c) => c.columnId == cellDataChangedInfo.column.columnId) == null) {
32
32
  return false;
@@ -47,7 +47,7 @@ export class ExportInternalApi extends ApiBase {
47
47
  case 'ExpressionRows':
48
48
  return true; // TODO this is the only difficult one - do we check AdapTableQL? if we can then that is good as we can then do a delta after all...
49
49
  case 'SelectedCellRows':
50
- let selectedCellInfo = this.adaptable.api.gridApi.getSelectedCellInfo();
50
+ let selectedCellInfo = this.getAdaptableApi().gridApi.getSelectedCellInfo();
51
51
  if (selectedCellInfo && selectedCellInfo.gridCells) {
52
52
  if (selectedCellInfo.gridCells.find((gc) => gc.primaryKeyValue == cellDataChangedInfo.primaryKeyValue)) {
53
53
  return true;
@@ -55,7 +55,7 @@ export class ExportInternalApi extends ApiBase {
55
55
  }
56
56
  return false;
57
57
  case 'SelectedRows':
58
- let selectedRowInfo = this.adaptable.api.gridApi.getSelectedRowInfo();
58
+ let selectedRowInfo = this.getAdaptableApi().gridApi.getSelectedRowInfo();
59
59
  if (selectedRowInfo && selectedRowInfo.gridRows) {
60
60
  if (selectedRowInfo.gridRows.find((gr) => gr.primaryKeyValue == cellDataChangedInfo.primaryKeyValue)) {
61
61
  return true;
@@ -15,12 +15,7 @@ export class ExpressionInternalApi extends ApiBase {
15
15
  if (typeof evaluateExpressionExternallyFn !== 'function') {
16
16
  return true;
17
17
  }
18
- const context = {
19
- adaptableApi: this.getAdaptableApi(),
20
- userName: this.getOptions().userName,
21
- adaptableId: this.getOptions().adaptableId,
22
- module,
23
- };
18
+ const context = Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { module });
24
19
  if (object) {
25
20
  context.object = object;
26
21
  }
@@ -38,12 +33,7 @@ export class ExpressionInternalApi extends ApiBase {
38
33
  if (typeof evaluateExpressionExternallyFn !== 'function') {
39
34
  return true;
40
35
  }
41
- const context = {
42
- adaptableApi: this.getAdaptableApi(),
43
- userName: this.getAdaptableApi().optionsApi.getUserName(),
44
- adaptableId: this.getAdaptableApi().optionsApi.getAdaptableId(),
45
- module,
46
- };
36
+ const context = Object.assign(Object.assign({}, this.getAdaptableApi().internalApi.buildBaseContext()), { module });
47
37
  if (object) {
48
38
  context.object = object;
49
39
  }
@@ -265,16 +265,7 @@ export class Fdc3InternalApi extends ApiBase {
265
265
  }
266
266
  mapFdc3ButtonConfigToAdaptableButton(fdc3AdaptableButton, fdcInfo) {
267
267
  const buildFdc3Context = (context) => {
268
- return {
269
- context: this.mapRowToContextData(fdcInfo.contextType, context.rowNode),
270
- intent: fdcInfo.action === 'raiseIntent' ? fdcInfo.intent : null,
271
- rowNode: context.rowNode,
272
- rowData: context.data,
273
- adaptableId: context.adaptableId,
274
- primaryKeyValue: context.primaryKeyValue,
275
- userName: context.userName,
276
- adaptableApi: context.adaptableApi,
277
- };
268
+ return Object.assign({ context: this.mapRowToContextData(fdcInfo.contextType, context.rowNode), intent: fdcInfo.action === 'raiseIntent' ? fdcInfo.intent : null, rowNode: context.rowNode, rowData: context.data, primaryKeyValue: context.primaryKeyValue }, this.getAdaptableApi().internalApi.buildBaseContext());
278
269
  };
279
270
  return {
280
271
  onClick: (_button, context) => {
@@ -59,7 +59,7 @@ export class FormatColumnInternalApi extends ApiBase {
59
59
  return this.getFormatColumnsWithStyleForColumn(column, config).filter((formatColumn) => { var _a; return StringExtensions.IsNotNullOrEmpty((_a = formatColumn === null || formatColumn === void 0 ? void 0 : formatColumn.Style) === null || _a === void 0 ? void 0 : _a.ClassName); });
60
60
  }
61
61
  getFormatColumnWithColumnInScope(formatColumns, column) {
62
- return this.getFormatColumnInColumnScope(formatColumns).filter((scopedFormatColumn) => this.adaptable.api.scopeApi.isColumnInScope(column, scopedFormatColumn.Scope));
62
+ return this.getFormatColumnInColumnScope(formatColumns).filter((scopedFormatColumn) => this.getAdaptableApi().scopeApi.isColumnInScope(column, scopedFormatColumn.Scope));
63
63
  }
64
64
  // TODO is this really needed, I don't think it achieves anything
65
65
  getFormatColumnInColumnScope(formatColumns) {
@@ -67,11 +67,11 @@ export class FormatColumnInternalApi extends ApiBase {
67
67
  return formatColumns.filter((fc) => {
68
68
  return (
69
69
  // this.getFormatColumnsWithColumnScope(formatColumns)
70
- (this.adaptable.api.scopeApi.scopeHasColumns(fc.Scope) ||
70
+ (this.getAdaptableApi().scopeApi.scopeHasColumns(fc.Scope) ||
71
71
  // this.getFormatColumnsWithDataTypeScope(formatColumns)
72
- this.adaptable.api.scopeApi.scopeHasDataType(fc.Scope) ||
72
+ this.getAdaptableApi().scopeApi.scopeHasDataType(fc.Scope) ||
73
73
  // this.getFormatColumnsWithAllScope(formatColumns)
74
- this.adaptable.api.scopeApi.scopeIsAll(fc.Scope) || this.adaptable.api.scopeApi.scopeHasColumnType(fc.Scope))
74
+ this.getAdaptableApi().scopeApi.scopeIsAll(fc.Scope) || this.getAdaptableApi().scopeApi.scopeHasColumnType(fc.Scope))
75
75
  );
76
76
  });
77
77
  }
@@ -144,7 +144,7 @@ export class FormatColumnInternalApi extends ApiBase {
144
144
  getFormatColumnDefsForScope(scope) {
145
145
  return this.getAdaptableApi()
146
146
  .predicateApi.internalApi.getFormatColumnPredicateDefs(scope)
147
- .filter((predicateDef) => this.adaptable.api.scopeApi.isScopeInScope(scope, predicateDef.columnScope));
147
+ .filter((predicateDef) => this.getAdaptableApi().scopeApi.isScopeInScope(scope, predicateDef.columnScope));
148
148
  }
149
149
  /**
150
150
  * Checks if format column is relevant for a given cell (intersection of given AdaptableColumn and RowNode)
@@ -160,7 +160,7 @@ export class FormatColumnInternalApi extends ApiBase {
160
160
  return false;
161
161
  }
162
162
  if (!formatColumn.IncludeGroupedRows &&
163
- this.adaptable.api.gridApi.isGroupRowNode(params.node)) {
163
+ this.getAdaptableApi().gridApi.isGroupRowNode(params.node)) {
164
164
  return false;
165
165
  }
166
166
  if (!formatColumn.Rule) {
@@ -168,16 +168,7 @@ export class FormatColumnInternalApi extends ApiBase {
168
168
  }
169
169
  // first run the predicate
170
170
  if (formatColumn.Rule.Predicates && ((_b = (_a = formatColumn.Rule) === null || _a === void 0 ? void 0 : _a.Predicates) === null || _b === void 0 ? void 0 : _b.length)) {
171
- const predicateDefHandlerContext = {
172
- value: params.value,
173
- oldValue: null,
174
- displayValue: params.value,
175
- node: params.node,
176
- column: column,
177
- adaptableApi: this.getAdaptableApi(),
178
- userName: this.getAdaptableApi().optionsApi.getUserName(),
179
- adaptableId: this.getAdaptableApi().optionsApi.getAdaptableId(),
180
- };
171
+ const predicateDefHandlerContext = Object.assign({ value: params.value, oldValue: null, displayValue: params.value, node: params.node, column: column }, this.getAdaptableApi().internalApi.buildBaseContext());
181
172
  return this.evaluatePredicate(formatColumn, predicateDefHandlerContext);
182
173
  }
183
174
  else if (formatColumn.Rule.BooleanExpression) {
@@ -188,12 +179,12 @@ export class FormatColumnInternalApi extends ApiBase {
188
179
  }
189
180
  evaluatePredicate(formatColumn, predicateDefHandlerContext) {
190
181
  var _a;
191
- return this.adaptable.api.predicateApi.handleColumnPredicates((_a = formatColumn.Rule) === null || _a === void 0 ? void 0 : _a.Predicates, predicateDefHandlerContext, false);
182
+ return this.getAdaptableApi().predicateApi.handleColumnPredicates((_a = formatColumn.Rule) === null || _a === void 0 ? void 0 : _a.Predicates, predicateDefHandlerContext, false);
192
183
  }
193
184
  evaluateExpression(formatColumn, node) {
194
- const isValidExpression = this.adaptable.api.expressionApi.isValidBooleanExpression(formatColumn.Rule.BooleanExpression, ModuleConstants.FormatColumnModuleId, `Invalid format column rule '${formatColumn.Rule.BooleanExpression}'`);
185
+ const isValidExpression = this.getAdaptableApi().expressionApi.isValidBooleanExpression(formatColumn.Rule.BooleanExpression, ModuleConstants.FormatColumnModuleId, `Invalid format column rule '${formatColumn.Rule.BooleanExpression}'`);
195
186
  return (isValidExpression &&
196
- this.adaptable.api.internalApi
187
+ this.getAdaptableApi().internalApi
197
188
  .getQueryLanguageService()
198
189
  .evaluateBooleanExpression(formatColumn.Rule.BooleanExpression, ModuleConstants.FormatColumnModuleId, node));
199
190
  }
@@ -244,7 +235,7 @@ export class FormatColumnInternalApi extends ApiBase {
244
235
  });
245
236
  const columnsThatNeedRefresh = new Set();
246
237
  this.getFormatColumnsDependentOnColumns(impactedColumnIds).forEach((formatColumn) => {
247
- this.adaptable.api.scopeApi.getColumnsForScope(formatColumn.Scope).forEach((col) => {
238
+ this.getAdaptableApi().scopeApi.getColumnsForScope(formatColumn.Scope).forEach((col) => {
248
239
  columnsThatNeedRefresh.add(col.columnId);
249
240
  });
250
241
  });
@@ -20,7 +20,7 @@ export class FreeTextColumnInternalApi extends ApiBase {
20
20
  };
21
21
  this.getFreeTextColumnApi().setStoredValue(freeTextColumn.ColumnId, freeTextStoredValue);
22
22
  var colsToRefresh = [cellDataChangedInfo.column.columnId];
23
- const refencedCalcColumns = this.adaptable.api.calculatedColumnApi.internalApi.getCalculatedColumnsReferencingColumnId(cellDataChangedInfo.column.columnId);
23
+ const refencedCalcColumns = this.getAdaptableApi().calculatedColumnApi.internalApi.getCalculatedColumnsReferencingColumnId(cellDataChangedInfo.column.columnId);
24
24
  refencedCalcColumns.forEach((calculatedColumn) => {
25
25
  colsToRefresh.push(calculatedColumn.ColumnId);
26
26
  });
@@ -4,15 +4,9 @@ export class GridFilterInternalApi extends ApiBase {
4
4
  if (this.adaptable.isReady) {
5
5
  const currentGridFilter = this.getGridFilterApi().getCurrentGridFilter();
6
6
  const adaptableApi = this.getAdaptableApi();
7
- const gridFilterAppliedInfo = {
8
- gridFilter: currentGridFilter,
9
- gridFilterExpressionAST: currentGridFilter
7
+ const gridFilterAppliedInfo = Object.assign({ gridFilter: currentGridFilter, gridFilterExpressionAST: currentGridFilter
10
8
  ? adaptableApi.expressionApi.getASTForExpression(currentGridFilter === null || currentGridFilter === void 0 ? void 0 : currentGridFilter.Expression)
11
- : null,
12
- adaptableApi: adaptableApi,
13
- userName: adaptableApi.optionsApi.getUserName(),
14
- adaptableId: adaptableApi.optionsApi.getAdaptableId(),
15
- };
9
+ : null }, this.getAdaptableApi().internalApi.buildBaseContext());
16
10
  adaptableApi.eventApi.emit('GridFilterApplied', gridFilterAppliedInfo);
17
11
  }
18
12
  }