@adaptabletools/adaptable 18.0.0-canary.30 → 18.0.0-canary.32

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 (98) hide show
  1. package/package.json +1 -1
  2. package/src/AdaptableOptions/ActionColumnOptions.d.ts +3 -2
  3. package/src/AdaptableOptions/CustomSortOptions.d.ts +2 -2
  4. package/src/AdaptableOptions/FormatColumnOptions.d.ts +2 -2
  5. package/src/AdaptableOptions/PredicateOptions.d.ts +2 -2
  6. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +2 -2
  7. package/src/Api/AdaptableApi.d.ts +2 -2
  8. package/src/Api/{ScopeApi.d.ts → ColumnScopeApi.d.ts} +28 -28
  9. package/src/Api/FlashingCellApi.d.ts +2 -2
  10. package/src/Api/GridApi.d.ts +5 -0
  11. package/src/Api/Implementation/AdaptableApiImpl.d.ts +2 -2
  12. package/src/Api/Implementation/AdaptableApiImpl.js +3 -3
  13. package/src/Api/Implementation/AlertApiImpl.js +3 -3
  14. package/src/Api/Implementation/ApiBase.d.ts +2 -2
  15. package/src/Api/Implementation/ApiBase.js +2 -2
  16. package/src/Api/Implementation/ColumnFilterApiImpl.js +1 -1
  17. package/src/Api/Implementation/ColumnScopeApiImpl.d.ts +33 -0
  18. package/src/Api/Implementation/{ScopeApiImpl.js → ColumnScopeApiImpl.js} +2 -2
  19. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +2 -2
  20. package/src/Api/Implementation/FlashingCellApiImpl.js +1 -1
  21. package/src/Api/Implementation/FormatColumnApiImpl.js +3 -3
  22. package/src/Api/Implementation/GridApiImpl.d.ts +1 -0
  23. package/src/Api/Implementation/GridApiImpl.js +5 -0
  24. package/src/Api/Implementation/UserInterfaceApiImpl.js +3 -3
  25. package/src/Api/Internal/AdaptableInternalApi.js +1 -1
  26. package/src/Api/Internal/AlertInternalApi.d.ts +2 -2
  27. package/src/Api/Internal/AlertInternalApi.js +3 -3
  28. package/src/Api/Internal/CustomSortInternalApi.js +1 -1
  29. package/src/Api/Internal/ExportInternalApi.js +1 -1
  30. package/src/Api/Internal/ExpressionInternalApi.js +1 -1
  31. package/src/Api/Internal/FormatColumnInternalApi.d.ts +2 -2
  32. package/src/Api/Internal/FormatColumnInternalApi.js +24 -14
  33. package/src/Api/Internal/PredicateInternalApi.d.ts +6 -6
  34. package/src/Api/Internal/StyledColumnInternalApi.d.ts +2 -2
  35. package/src/Api/Internal/StyledColumnInternalApi.js +4 -5
  36. package/src/PredefinedConfig/AlertState.d.ts +2 -2
  37. package/src/PredefinedConfig/Common/AdaptableObject.d.ts +4 -4
  38. package/src/PredefinedConfig/Common/AdaptablePredicate.d.ts +2 -2
  39. package/src/PredefinedConfig/Common/{AdaptableScope.d.ts → ColumnScope.d.ts} +1 -1
  40. package/src/PredefinedConfig/Common/RowScope.d.ts +17 -0
  41. package/src/PredefinedConfig/Common/RowScope.js +1 -0
  42. package/src/PredefinedConfig/ExportState.d.ts +2 -2
  43. package/src/PredefinedConfig/FlashingCellState.d.ts +2 -2
  44. package/src/PredefinedConfig/FormatColumnState.d.ts +7 -8
  45. package/src/PredefinedConfig/PlusMinusState.d.ts +2 -2
  46. package/src/PredefinedConfig/ShortcutState.d.ts +2 -2
  47. package/src/PredefinedConfig/StyledColumnState.d.ts +5 -10
  48. package/src/Strategy/AlertModule.js +2 -2
  49. package/src/Strategy/ExportModule.js +2 -2
  50. package/src/Strategy/FlashingCellModule.js +4 -4
  51. package/src/Strategy/FormatColumnModule.js +2 -2
  52. package/src/Strategy/PlusMinusModule.js +3 -3
  53. package/src/Strategy/ShortcutModule.js +1 -1
  54. package/src/Strategy/StyledColumnModule.js +7 -5
  55. package/src/Strategy/Utilities/FormatColumn/getFormatColumnSettingsViewItems.js +4 -3
  56. package/src/Strategy/Utilities/getScopeViewItems.d.ts +2 -2
  57. package/src/Utilities/ObjectFactory.js +1 -1
  58. package/src/Utilities/Services/ReportService.js +2 -2
  59. package/src/Utilities/Services/ValidationService.js +2 -2
  60. package/src/View/Alert/AlertEntityRow.js +1 -1
  61. package/src/View/Alert/Utilities/getAvailablePredicates.d.ts +2 -2
  62. package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +1 -1
  63. package/src/View/Alert/Wizard/AlertScopeWizardSection.js +2 -2
  64. package/src/View/Alert/Wizard/BaseAlertScopeWizardSection.js +1 -1
  65. package/src/View/ColumnInfo/ColumnInfo.js +1 -1
  66. package/src/View/Components/EntityRulesEditor/EntityRulePredicatesEditor/EntityRulePredicatesEditor.d.ts +3 -3
  67. package/src/View/Components/EntityRulesEditor/index.d.ts +3 -3
  68. package/src/View/Components/NewScopeComponent.d.ts +5 -5
  69. package/src/View/Components/NewScopeComponent.js +2 -2
  70. package/src/View/Components/RangesComponent.d.ts +2 -2
  71. package/src/View/Components/RangesComponent.js +1 -1
  72. package/src/View/Components/SharedProps/WizardScopeState.d.ts +2 -2
  73. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +1 -1
  74. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +4 -1
  75. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.d.ts +2 -2
  76. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +1 -1
  77. package/src/View/FormatColumn/Wizard/FormatColumnRuleWizardSection.js +1 -1
  78. package/src/View/FormatColumn/Wizard/FormatColumnScopeWizardSection.js +1 -1
  79. package/src/View/FormatColumn/Wizard/FormatColumnSettingsWizardSection.js +24 -13
  80. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +1 -1
  81. package/src/View/PlusMinus/PlusMinusSummary.js +2 -2
  82. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +1 -1
  83. package/src/View/StyledColumn/Wizard/StyledColumnWizardSettingsSection.js +32 -12
  84. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +1 -1
  85. package/src/agGrid/ActionColumnRenderer.js +40 -4
  86. package/src/agGrid/AdaptableAgGrid.js +2 -3
  87. package/src/agGrid/AgGridColumnAdapter.js +11 -10
  88. package/src/agGrid/BadgeRenderer.d.ts +2 -2
  89. package/src/agGrid/BadgeRenderer.js +23 -16
  90. package/src/agGrid/PercentBarRenderer.js +0 -1
  91. package/src/env.js +2 -2
  92. package/src/metamodel/adaptable.metamodel.d.ts +19 -26
  93. package/src/metamodel/adaptable.metamodel.js +1 -1
  94. package/src/types.d.ts +3 -2
  95. package/tsconfig.esm.tsbuildinfo +1 -1
  96. package/src/Api/Implementation/ScopeApiImpl.d.ts +0 -33
  97. /package/src/Api/{ScopeApi.js → ColumnScopeApi.js} +0 -0
  98. /package/src/PredefinedConfig/Common/{AdaptableScope.js → ColumnScope.js} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptabletools/adaptable",
3
- "version": "18.0.0-canary.30",
3
+ "version": "18.0.0-canary.32",
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",
@@ -1,4 +1,5 @@
1
1
  import { IRowNode } from '@ag-grid-community/core';
2
+ import { RowScope } from "../PredefinedConfig/Common/RowScope";
2
3
  import { AdaptableButton, AdaptableObject, BaseContext } from '../types';
3
4
  /**
4
5
  * Options related to Action Columns in AdapTable
@@ -27,9 +28,9 @@ export interface ActionColumn<TData = any> extends AdaptableObject {
27
28
  */
28
29
  actionColumnButton: AdaptableButton<ActionColumnContext<TData>> | AdaptableButton<ActionColumnContext<TData>>[];
29
30
  /**
30
- * Shows Action Column also in grouped rows
31
+ * Which types of Rows should contain buttons (data, grouped, summary)
31
32
  */
32
- includeGroupedRows?: boolean;
33
+ rowScope?: RowScope;
33
34
  /**
34
35
  * Additional optional properties for Column (e.g. filterable, resizable)
35
36
  */
@@ -1,4 +1,4 @@
1
- import { AdaptableScope } from '../../types';
1
+ import { ColumnScope } from '../../types';
2
2
  import { AdaptableComparerFunction } from '../PredefinedConfig/Common/AdaptableComparerFunction';
3
3
  /**
4
4
  * Options for providing Custom Sorts comparers
@@ -16,7 +16,7 @@ export interface ColumnValuesComparer<TData = any> {
16
16
  /**
17
17
  * Column for which to compare values
18
18
  */
19
- scope: AdaptableScope;
19
+ scope: ColumnScope;
20
20
  /**
21
21
  * Comparer function to use
22
22
  */
@@ -1,4 +1,4 @@
1
- import { AdaptableScope } from '../PredefinedConfig/Common/AdaptableScope';
1
+ import { ColumnScope } from '../PredefinedConfig/Common/ColumnScope';
2
2
  import { AdaptableColumn } from '../PredefinedConfig/Common/AdaptableColumn';
3
3
  import { BaseContext } from '../../types';
4
4
  import { IRowNode } from '@ag-grid-community/core';
@@ -30,7 +30,7 @@ export interface CustomDisplayFormatter {
30
30
  /**
31
31
  * Where Custom Display Format can be applied
32
32
  */
33
- scope: AdaptableScope;
33
+ scope: ColumnScope;
34
34
  }
35
35
  /**
36
36
  * Context used in handler of CustomDisplayFormatter
@@ -1,4 +1,4 @@
1
- import { AdaptablePredicateDef, AdaptableScope, BaseContext, PredicateModuleScope, SystemAlertPredicateId, SystemAlertPredicateIds, SystemBadgeStylePredicateId, SystemBadgeStylePredicateIds, SystemFilterPredicateId, SystemFilterPredicateIds, SystemFlashingCellPredicateId, SystemFlashingCellPredicateIds, SystemFormatColumnPredicateId, SystemFormatColumnPredicateIds } from '../types';
1
+ import { AdaptablePredicateDef, ColumnScope, BaseContext, PredicateModuleScope, SystemAlertPredicateId, SystemAlertPredicateIds, SystemBadgeStylePredicateId, SystemBadgeStylePredicateIds, SystemFilterPredicateId, SystemFilterPredicateIds, SystemFlashingCellPredicateId, SystemFlashingCellPredicateIds, SystemFormatColumnPredicateId, SystemFormatColumnPredicateIds } from '../types';
2
2
  /**
3
3
  * Options for managing Adaptable Predicates using AdaptableQL
4
4
  */
@@ -51,5 +51,5 @@ export interface SystemPredicatesContext<PREDICATE_TYPE = string> extends BaseCo
51
51
  /**
52
52
  * Current Scope where Predicates are being used
53
53
  */
54
- columnScope: AdaptableScope;
54
+ columnScope: ColumnScope;
55
55
  }
@@ -1,6 +1,6 @@
1
1
  import { AdaptableIcon } from '../PredefinedConfig/Common/AdaptableIcon';
2
2
  import { DateInputOptions } from './DateInputOptions';
3
- import { AdaptableScope } from '../PredefinedConfig/Common/AdaptableScope';
3
+ import { ColumnScope } from '../PredefinedConfig/Common/ColumnScope';
4
4
  import { AdaptableColumn } from '../PredefinedConfig/Common/AdaptableColumn';
5
5
  import { AdaptableObjectTag } from '../PredefinedConfig/Common/AdaptableObject';
6
6
  import { AdaptableStyle } from '../PredefinedConfig/Common/AdaptableStyle';
@@ -136,7 +136,7 @@ export interface BasePermittedValues {
136
136
  /**
137
137
  * Scope where Values will appear (Mandatory property)
138
138
  */
139
- scope: AdaptableScope;
139
+ scope: ColumnScope;
140
140
  }
141
141
  /**
142
142
  * Permitted/possible values, when column values can be selected (e.g. sort, bulk-update)
@@ -29,7 +29,7 @@ import { ExpressionApi } from './ExpressionApi';
29
29
  import { TeamSharingApi } from './TeamSharingApi';
30
30
  import { ColumnApi } from './ColumnApi';
31
31
  import { ApplicationApi } from './ApplicationApi';
32
- import { ScopeApi } from './ScopeApi';
32
+ import { ColumnScopeApi } from './ColumnScopeApi';
33
33
  import { PredicateApi } from './PredicateApi';
34
34
  import { DataChangeHistoryApi } from './DataChangeHistoryApi';
35
35
  import { FlashingCellApi } from './FlashingCellApi';
@@ -193,7 +193,7 @@ export interface AdaptableApi {
193
193
  /**
194
194
  * Manages the `Scope` object - used widely to determine where objects are applied
195
195
  */
196
- scopeApi: ScopeApi;
196
+ columnScopeApi: ColumnScopeApi;
197
197
  /**
198
198
  * Provides access to the Shortcut Module
199
199
  */
@@ -1,125 +1,125 @@
1
1
  import { AdaptableColumn } from '../PredefinedConfig/Common/AdaptableColumn';
2
- import { AdaptableScope, ScopeDataType } from '../PredefinedConfig/Common/AdaptableScope';
2
+ import { ColumnScope, ScopeDataType } from '../PredefinedConfig/Common/ColumnScope';
3
3
  import { CellColorRange } from '../PredefinedConfig/StyledColumnState';
4
4
  /**
5
- * Provides access to a suite of functions related to the `Scope` object
5
+ * Provides access to a suite of functions related to the `Column Scope` object
6
6
  */
7
- export interface ScopeApi {
7
+ export interface ColumnScopeApi {
8
8
  /**
9
9
  * True if Column is in given Scope
10
10
  * @param column Column to check
11
11
  * @param scope The Scope to check
12
12
  */
13
- isColumnInScope(column: AdaptableColumn | undefined, scope: AdaptableScope): boolean;
13
+ isColumnInScope(column: AdaptableColumn | undefined, scope: ColumnScope): boolean;
14
14
  /**
15
15
  * Returns list of all Columns in the given Scope
16
16
  * @param scope the Scope to check
17
17
  */
18
- getColumnsForScope(scope: AdaptableScope): AdaptableColumn[];
18
+ getColumnsForScope(scope: ColumnScope): AdaptableColumn[];
19
19
  /**
20
20
  * True if Scope is empty
21
21
  * @param scope Scope to check
22
22
  */
23
- scopeIsEmpty(scope: AdaptableScope): boolean;
23
+ scopeIsEmpty(scope: ColumnScope): boolean;
24
24
  /**
25
25
  * True if Scope is 'All'
26
26
  * @param scope Scope to check
27
27
  */
28
- scopeIsAll(scope: AdaptableScope): boolean;
28
+ scopeIsAll(scope: ColumnScope): boolean;
29
29
  /**
30
30
  * True if Scope contains DataTypes
31
31
  * @param scope Scope to check
32
32
  */
33
- scopeHasDataType(scope: AdaptableScope): boolean;
33
+ scopeHasDataType(scope: ColumnScope): boolean;
34
34
  /**
35
35
  * True if Scope contains ColumnTypes
36
36
  * @param scope Scope to check
37
37
  */
38
- scopeHasColumnType(scope: AdaptableScope): boolean;
38
+ scopeHasColumnType(scope: ColumnScope): boolean;
39
39
  /**
40
40
  * True if the Scope is DataTypes and contains only Boolean
41
41
  * @param scope Scope to check
42
42
  */
43
- scopeHasOnlyBooleanDataType(scope: AdaptableScope): boolean;
43
+ scopeHasOnlyBooleanDataType(scope: ColumnScope): boolean;
44
44
  /**
45
45
  * True if Scope contains just 1 ColumnId
46
46
  * @param scope Scope to check
47
47
  */
48
- isSingleColumnScope(scope: AdaptableScope): boolean;
48
+ isSingleColumnScope(scope: ColumnScope): boolean;
49
49
  /**
50
50
  * Gets the only Column in given Scope
51
51
  * @param scope Scope to check
52
52
  */
53
- getSingleColumnInScope(scope: AdaptableScope): string | undefined;
53
+ getSingleColumnInScope(scope: ColumnScope): string | undefined;
54
54
  /**
55
55
  * True if Scope contains just 1 numeric Column
56
56
  * @param scope Scope to check
57
57
  */
58
- isSingleNumericColumnScope(scope: AdaptableScope): boolean;
58
+ isSingleNumericColumnScope(scope: ColumnScope): boolean;
59
59
  /**
60
60
  * True if Scope contains just 1 boolean Column
61
61
  * @param scope Scope to check
62
62
  */
63
- isSingleBooleanColumnScope(scope: AdaptableScope): boolean;
63
+ isSingleBooleanColumnScope(scope: ColumnScope): boolean;
64
64
  /**
65
65
  * True if all selected columns are boolean
66
66
  * @param scope Scope to check
67
67
  */
68
- areAllBooleanColumnsInScope(scope: AdaptableScope): boolean;
68
+ areAllBooleanColumnsInScope(scope: ColumnScope): boolean;
69
69
  /**
70
70
  * True if Scope contains ColumnIds
71
71
  * @param scope Scope to check
72
72
  */
73
- scopeHasColumns(scope: AdaptableScope): boolean;
73
+ scopeHasColumns(scope: ColumnScope): boolean;
74
74
  /**
75
75
  * Gets string representation of the Scope
76
76
  * @param scope Scope to check
77
77
  */
78
- getScopeToString(scope: AdaptableScope): string;
78
+ getScopeToString(scope: ColumnScope): string;
79
79
  /**
80
80
  * Whether PK column is included in Scope's column section
81
81
  * @param scope Scope to check
82
82
  */
83
- isPrimaryKeyColumnInScopeColumns(scope: AdaptableScope): boolean;
83
+ isPrimaryKeyColumnInScopeColumns(scope: ColumnScope): boolean;
84
84
  /**
85
85
  * True if Column is in Scope's 'ColumnIds' section
86
86
  * @param column Column to check
87
87
  * @param scope Scope to check
88
88
  */
89
- isColumnInScopeColumns(column: AdaptableColumn, scope: AdaptableScope): boolean;
89
+ isColumnInScopeColumns(column: AdaptableColumn, scope: ColumnScope): boolean;
90
90
  /**
91
91
  * Returns all the ColumnIds in the Scope
92
92
  * @param scope Scope to check
93
93
  */
94
- getColumnIdsInScope(scope: AdaptableScope): string[] | undefined;
94
+ getColumnIdsInScope(scope: ColumnScope): string[] | undefined;
95
95
  /**
96
96
  * Returns all the ColumnTypes in the Scope
97
97
  * @param scope Scope to check
98
98
  */
99
- getColumnTypesInScope(scope: AdaptableScope): string[] | undefined;
99
+ getColumnTypesInScope(scope: ColumnScope): string[] | undefined;
100
100
  /**
101
101
  * Returns all the DataTypes in the Scope
102
102
  * @param scope Scope to check
103
103
  */
104
- getDataTypesInScope(scope: AdaptableScope): ScopeDataType[] | undefined;
104
+ getDataTypesInScope(scope: ColumnScope): ScopeDataType[] | undefined;
105
105
  /**
106
106
  * True if Scope has Numeric DataType containing Column
107
107
  * @param column Column to check
108
108
  * @param scope Scope to check
109
109
  */
110
- isColumnInNumericScope(column: AdaptableColumn, scope: AdaptableScope): boolean;
110
+ isColumnInNumericScope(column: AdaptableColumn, scope: ColumnScope): boolean;
111
111
  /**
112
112
  * True if Scope has String DataType containing Column
113
113
  * @param column Column to check
114
114
  * @param scope Scope to check
115
115
  */
116
- isColumnInStringsScope(column: AdaptableColumn, scope: AdaptableScope): boolean;
116
+ isColumnInStringsScope(column: AdaptableColumn, scope: ColumnScope): boolean;
117
117
  /**
118
118
  * True if Scope has Data DataType which contains Column
119
119
  * @param column Column to check
120
120
  * @param scope Scope to check
121
121
  */
122
- isColumnInDateScope(column: AdaptableColumn, scope: AdaptableScope): boolean;
122
+ isColumnInDateScope(column: AdaptableColumn, scope: ColumnScope): boolean;
123
123
  /**
124
124
  * True if first scope is in second Scope
125
125
  *
@@ -135,15 +135,15 @@ export interface ScopeApi {
135
135
  * @param scopeA first Scope
136
136
  * @param scopeB second Scope
137
137
  */
138
- isScopeInScope(scopeA: AdaptableScope, scopeB: AdaptableScope): boolean;
138
+ isScopeInScope(scopeA: ColumnScope, scopeB: ColumnScope): boolean;
139
139
  /**
140
140
  * Provides a description for the Scope
141
141
  * @param scope The Scope to check
142
142
  */
143
- getScopeDescription(scope: AdaptableScope): string;
143
+ getScopeDescription(scope: ColumnScope): string;
144
144
  /**
145
145
  * Creates Cell Color Ranges (used in Format Column) for given Scope
146
146
  * @param scope Scope to use
147
147
  */
148
- createCellColorRangesForScope(scope: AdaptableScope): CellColorRange[];
148
+ createCellColorRangesForScope(scope: ColumnScope): CellColorRange[];
149
149
  }
@@ -1,6 +1,6 @@
1
1
  import { AdaptableFlashingCell } from '../PredefinedConfig/Common/AdaptableFlashingCell';
2
2
  import { AdaptablePredicateDef } from '../PredefinedConfig/Common/AdaptablePredicate';
3
- import { AdaptableScope } from '../PredefinedConfig/Common/AdaptableScope';
3
+ import { ColumnScope } from '../PredefinedConfig/Common/ColumnScope';
4
4
  import { FlashingCellDefinition, FlashingCellState } from '../PredefinedConfig/FlashingCellState';
5
5
  import { AdaptableObjectLookupCriteria } from '../PredefinedConfig/Common/AdaptableObject';
6
6
  /**
@@ -83,7 +83,7 @@ export interface FlashingCellApi {
83
83
  * Retrieves all Predicate Defs that match given Scope
84
84
  * @param scope the Scope to check
85
85
  */
86
- getFlashingCellPredicateDefsForScope(scope: AdaptableScope): AdaptablePredicateDef[];
86
+ getFlashingCellPredicateDefsForScope(scope: ColumnScope): AdaptablePredicateDef[];
87
87
  /**
88
88
  * Clears all Cells and Rows which have been flashed (primarily used if duration is 'Always')
89
89
  */
@@ -385,6 +385,11 @@ export interface GridApi {
385
385
  * @param rowNode Node to check
386
386
  */
387
387
  isGroupRowNode(rowNode: IRowNode): boolean;
388
+ /**
389
+ * Whether given Row Node is in a Smmary Row
390
+ * @param rowNode Node to check
391
+ */
392
+ isSummaryNode(rowNode: IRowNode): boolean;
388
393
  /**
389
394
  * Whether Quick Filter is available in the Grid
390
395
  */
@@ -31,7 +31,7 @@ import { ExpressionApi } from '../ExpressionApi';
31
31
  import { TeamSharingApi } from '../TeamSharingApi';
32
32
  import { ColumnApi } from '../ColumnApi';
33
33
  import { ApplicationApi } from '../ApplicationApi';
34
- import { ScopeApi } from '../ScopeApi';
34
+ import { ColumnScopeApi } from '../ColumnScopeApi';
35
35
  import { PredicateApi } from '../PredicateApi';
36
36
  import { DataChangeHistoryApi } from '../DataChangeHistoryApi';
37
37
  import { FlashingCellApi } from '../FlashingCellApi';
@@ -86,7 +86,7 @@ export declare class AdaptableApiImpl implements AdaptableApi {
86
86
  styledColumnApi: StyledColumnApi;
87
87
  toolPanelApi: ToolPanelApi;
88
88
  teamSharingApi: TeamSharingApi;
89
- scopeApi: ScopeApi;
89
+ columnScopeApi: ColumnScopeApi;
90
90
  dataChangeHistoryApi: DataChangeHistoryApi;
91
91
  chartingApi: ChartingApi;
92
92
  statusBarApi: StatusBarApi;
@@ -28,7 +28,7 @@ import { ScheduleApiImpl } from './ScheduleApiImpl';
28
28
  import { TeamSharingApiImpl } from './TeamSharingApiImpl';
29
29
  import { ColumnApiImpl } from './ColumnApiImpl';
30
30
  import { ApplicationApiImpl } from './ApplicationApiImpl';
31
- import { ScopeApiImpl } from './ScopeApiImpl';
31
+ import { ColumnScopeApiImpl } from './ColumnScopeApiImpl';
32
32
  import { DataChangeHistoryApiImpl } from './DataChangeHistoryApiImpl';
33
33
  import { ExpressionApiImpl } from './ExpressionApiImpl';
34
34
  import { FlashingCellApiImpl } from './FlashingCellApiImpl';
@@ -90,7 +90,7 @@ export class AdaptableApiImpl {
90
90
  this.styledColumnApi = new StyledColumnApiImpl(adaptable);
91
91
  this.toolPanelApi = new ToolPanelApiImpl(adaptable);
92
92
  this.teamSharingApi = new TeamSharingApiImpl(adaptable);
93
- this.scopeApi = new ScopeApiImpl(adaptable);
93
+ this.columnScopeApi = new ColumnScopeApiImpl(adaptable);
94
94
  this.dataChangeHistoryApi = new DataChangeHistoryApiImpl(adaptable);
95
95
  this.chartingApi = new ChartingApiImpl(adaptable);
96
96
  this.statusBarApi = new StatusBarApiImpl(adaptable);
@@ -144,7 +144,7 @@ export class AdaptableApiImpl {
144
144
  this.expressionApi = null;
145
145
  this.quickSearchApi = null;
146
146
  this.scheduleApi = null;
147
- this.scopeApi = null;
147
+ this.columnScopeApi = null;
148
148
  this.settingsPanelApi = null;
149
149
  this.shortcutApi = null;
150
150
  this.smartEditApi = null;
@@ -162,7 +162,7 @@ export class AlertApiImpl extends ApiBase {
162
162
  }
163
163
  evaluateAlertDefinitions(alertDefinitions) {
164
164
  const filterScopeAllDefinitions = (alertDefinition) => {
165
- if (this.getAdaptableApi().scopeApi.scopeIsAll(alertDefinition.Scope) &&
165
+ if (this.getAdaptableApi().columnScopeApi.scopeIsAll(alertDefinition.Scope) &&
166
166
  !this.getAdaptableApi().expressionApi.getAdaptableQueryExpression(alertDefinition.Rule)) {
167
167
  // we don't support scope ALL without an expression
168
168
  // the predicates for scope ALL do NOT make any sense for a programmatic evaluation
@@ -197,7 +197,7 @@ export class AlertApiImpl extends ApiBase {
197
197
  // if there is an Expression defined, extract only the columns from there (in that case the Scope would be 'All' anyway)
198
198
  // columns referenced in rule expression
199
199
  const ruleExpression = this.getAdaptableApi().expressionApi.getAdaptableQueryExpression(alertDefinition.Rule);
200
- if (this.getAdaptableApi().scopeApi.scopeIsAll(alertDefinition.Scope) &&
200
+ if (this.getAdaptableApi().columnScopeApi.scopeIsAll(alertDefinition.Scope) &&
201
201
  StringExtensions.IsNotNullOrEmpty(ruleExpression)) {
202
202
  // return only first referenced column (otherwise we would generate multiple alerts for the same row)
203
203
  const queryColumns = this.getAdaptableApi()
@@ -208,7 +208,7 @@ export class AlertApiImpl extends ApiBase {
208
208
  else {
209
209
  // otherwise return all columns for given scope
210
210
  return this.getAdaptableApi()
211
- .scopeApi.getColumnsForScope(alertDefinition.Scope)
211
+ .columnScopeApi.getColumnsForScope(alertDefinition.Scope)
212
212
  .map((adaptableColumn) => adaptableColumn.columnId);
213
213
  }
214
214
  }
@@ -7,7 +7,7 @@ import { ModuleInfo } from '../../Strategy/Interface/IModule';
7
7
  import { AdaptableOptions } from '../../AdaptableOptions/AdaptableOptions';
8
8
  import { AdaptableApi } from '../AdaptableApi';
9
9
  import { ExportOptions } from '../../AdaptableOptions/ExportOptions';
10
- import { ActionColumnApi, ActionColumnOptions, ActionRowApi, ActionRowOptions, AlertApi, AlertOptions, ApplicationApi, BulkUpdateApi, CalculatedColumnApi, CalendarApi, CalendarOptions, CellSummaryApi, CellSummaryOptions, ChartingApi, ChartingOptions, ColumnApi, ColumnFilterApi, ColumnFilterOptions, ColumnOptions, CommentOptions, ConfigApi, ContainerOptions, CustomSortApi, CustomSortOptions, DashboardApi, DashboardOptions, DataChangeHistoryApi, DataChangeHistoryOptions, DataSetApi, DataSetOptions, EditOptions, EntitlementApi, EntitlementOptions, EventApi, ExportApi, ExpressionApi, ExpressionOptions, Fdc3Api, Fdc3Options, FlashingCellApi, FlashingCellOptions, FormatColumnApi, FormatColumnOptions, FreeTextColumnApi, GridApi, GridFilterApi, GroupingOptions, LayoutApi, LayoutAssociatedObject, LayoutOptions, MenuOptions, NamedQueryApi, NoteOptions, NotificationsOptions, PluginsApi, PlusMinusApi, PredicateApi, PredicateOptions, QuickSearchApi, QuickSearchOptions, ScheduleApi, ScopeApi, SettingsPanelApi, SettingsPanelOptions, ShortcutApi, SmartEditApi, StateOptions, StatusBarApi, StyledColumnApi, SystemStatusApi, TeamSharingApi, TeamSharingOptions, ThemeApi, ToolPanelApi, ToolPanelOptions, UserInterfaceApi, UserInterfaceOptions } from '../../types';
10
+ import { ActionColumnApi, ActionColumnOptions, ActionRowApi, ActionRowOptions, AlertApi, AlertOptions, ApplicationApi, BulkUpdateApi, CalculatedColumnApi, CalendarApi, CalendarOptions, CellSummaryApi, CellSummaryOptions, ChartingApi, ChartingOptions, ColumnApi, ColumnFilterApi, ColumnFilterOptions, ColumnOptions, CommentOptions, ConfigApi, ContainerOptions, CustomSortApi, CustomSortOptions, DashboardApi, DashboardOptions, DataChangeHistoryApi, DataChangeHistoryOptions, DataSetApi, DataSetOptions, EditOptions, EntitlementApi, EntitlementOptions, EventApi, ExportApi, ExpressionApi, ExpressionOptions, Fdc3Api, Fdc3Options, FlashingCellApi, FlashingCellOptions, FormatColumnApi, FormatColumnOptions, FreeTextColumnApi, GridApi, GridFilterApi, GroupingOptions, LayoutApi, LayoutAssociatedObject, LayoutOptions, MenuOptions, NamedQueryApi, NoteOptions, NotificationsOptions, PluginsApi, PlusMinusApi, PredicateApi, PredicateOptions, QuickSearchApi, QuickSearchOptions, ScheduleApi, ColumnScopeApi, SettingsPanelApi, SettingsPanelOptions, ShortcutApi, SmartEditApi, StateOptions, StatusBarApi, StyledColumnApi, SystemStatusApi, TeamSharingApi, TeamSharingOptions, ThemeApi, ToolPanelApi, ToolPanelOptions, UserInterfaceApi, UserInterfaceOptions } from '../../types';
11
11
  import { ModuleParams } from '../../View/Components/SharedProps/ModuleViewPopupProps';
12
12
  export declare abstract class ApiBase {
13
13
  protected adaptable: IAdaptable;
@@ -123,7 +123,7 @@ export declare abstract class ApiBase {
123
123
  protected getStyledColumnApi(): StyledColumnApi;
124
124
  protected getToolPanelApi(): ToolPanelApi;
125
125
  protected getTeamSharingApi(): TeamSharingApi;
126
- protected getScopeApi(): ScopeApi;
126
+ protected getColumnScopeApi(): ColumnScopeApi;
127
127
  protected getDataChangeHistoryApi(): DataChangeHistoryApi;
128
128
  protected getChartingApi(): ChartingApi;
129
129
  protected getStatusBarApi(): StatusBarApi;
@@ -311,8 +311,8 @@ export class ApiBase {
311
311
  getTeamSharingApi() {
312
312
  return this.getAdaptableApi().teamSharingApi;
313
313
  }
314
- getScopeApi() {
315
- return this.getAdaptableApi().scopeApi;
314
+ getColumnScopeApi() {
315
+ return this.getAdaptableApi().columnScopeApi;
316
316
  }
317
317
  getDataChangeHistoryApi() {
318
318
  return this.getAdaptableApi().dataChangeHistoryApi;
@@ -14,7 +14,7 @@ export class ColumnFilterApiImpl extends ApiBase {
14
14
  };
15
15
  return this.getAdaptableApi()
16
16
  .predicateApi.internalApi.getFilterPredicateDefs(scope)
17
- .filter((predicate) => this.getAdaptableApi().scopeApi.isColumnInScope(column, predicate.columnScope));
17
+ .filter((predicate) => this.getAdaptableApi().columnScopeApi.isColumnInScope(column, predicate.columnScope));
18
18
  }
19
19
  getFilterPredicateDefsForColumnId(columnId) {
20
20
  const column = this.getAdaptableApi().columnApi.getColumnWithColumnId(columnId);
@@ -0,0 +1,33 @@
1
+ import { ApiBase } from './ApiBase';
2
+ import { AdaptableColumn } from '../../PredefinedConfig/Common/AdaptableColumn';
3
+ import { ColumnScope, ScopeDataType } from '../../PredefinedConfig/Common/ColumnScope';
4
+ import { ColumnScopeApi } from '../ColumnScopeApi';
5
+ import { CellColorRange } from '../../PredefinedConfig/StyledColumnState';
6
+ export declare class ColumnScopeApiImpl extends ApiBase implements ColumnScopeApi {
7
+ isColumnInScope(column: AdaptableColumn | undefined, scope: ColumnScope | undefined): boolean;
8
+ getColumnsForScope(scope: ColumnScope): AdaptableColumn[];
9
+ getScopeDescription(scope: ColumnScope): string;
10
+ scopeIsEmpty(scope: ColumnScope): boolean;
11
+ scopeIsAll(scope: ColumnScope): boolean;
12
+ scopeHasDataType(scope: ColumnScope): boolean;
13
+ scopeHasColumnType(scope: ColumnScope): boolean;
14
+ scopeHasOnlyBooleanDataType(scope: ColumnScope): boolean;
15
+ scopeHasColumns(scope: ColumnScope): boolean;
16
+ isSingleColumnScope(scope: ColumnScope): boolean;
17
+ getSingleColumnInScope(scope: ColumnScope): string | undefined;
18
+ isSingleNumericColumnScope(scope: ColumnScope): boolean;
19
+ isSingleBooleanColumnScope(scope: ColumnScope): boolean;
20
+ areAllBooleanColumnsInScope(scope: ColumnScope): boolean;
21
+ isColumnInScopeColumns(column: AdaptableColumn, scope: ColumnScope): boolean;
22
+ isPrimaryKeyColumnInScopeColumns(scope: ColumnScope): boolean;
23
+ getScopeToString(scope: ColumnScope): string;
24
+ getColumnIdsInScope(scope: ColumnScope): string[] | undefined;
25
+ getColumnTypesInScope(scope: ColumnScope): string[] | undefined;
26
+ getDataTypesInScope(scope: ColumnScope): ScopeDataType[] | undefined;
27
+ isColumnInNumericScope(column: AdaptableColumn, scope: ColumnScope): boolean;
28
+ isColumnInStringsScope(column: AdaptableColumn, scope: ColumnScope): boolean;
29
+ isColumnInDateScope(column: AdaptableColumn, scope: ColumnScope): boolean;
30
+ isScopeInScope(a: ColumnScope, b: ColumnScope): boolean;
31
+ createCellColorRangesForScope(scope: ColumnScope): CellColorRange[];
32
+ private distinctColumnValuesAreEmpty;
33
+ }
@@ -1,7 +1,7 @@
1
1
  import { ApiBase } from './ApiBase';
2
2
  import ArrayExtensions from '../../Utilities/Extensions/ArrayExtensions';
3
3
  import { DARK_GREEN, getHexForName, GRAY, RED } from '../../View/UIHelper';
4
- export class ScopeApiImpl extends ApiBase {
4
+ export class ColumnScopeApiImpl extends ApiBase {
5
5
  isColumnInScope(column, scope) {
6
6
  if (!column) {
7
7
  return false;
@@ -276,7 +276,7 @@ export class ScopeApiImpl extends ApiBase {
276
276
  return false;
277
277
  }
278
278
  createCellColorRangesForScope(scope) {
279
- let distinctColumnsValues = this.getAdaptableApi().gridApi.internalApi.getDistinctRawValuesForColumn(this.getAdaptableApi().scopeApi.getSingleColumnInScope(scope));
279
+ let distinctColumnsValues = this.getAdaptableApi().gridApi.internalApi.getDistinctRawValuesForColumn(this.getAdaptableApi().columnScopeApi.getSingleColumnInScope(scope));
280
280
  let minValue = Math.min(...distinctColumnsValues);
281
281
  let maxValue = Math.max(...distinctColumnsValues);
282
282
  const ranges = [];
@@ -3,7 +3,7 @@ import { AdaptableFlashingCell } from '../../PredefinedConfig/Common/AdaptableFl
3
3
  import { FlashingCellApi } from '../FlashingCellApi';
4
4
  import { FlashingCellDefinition, FlashingCellState } from '../../PredefinedConfig/FlashingCellState';
5
5
  import { AdaptablePredicateDef } from '../../PredefinedConfig/Common/AdaptablePredicate';
6
- import { AdaptableScope } from '../../PredefinedConfig/Common/AdaptableScope';
6
+ import { ColumnScope } from '../../PredefinedConfig/Common/ColumnScope';
7
7
  import { FlashingCellInternalApi } from '../Internal/FlashingCellInternalApi';
8
8
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
9
9
  import { AdaptableObjectLookupCriteria } from '../../types';
@@ -23,7 +23,7 @@ export declare class FlashingCellApiImpl extends ApiBase implements FlashingCell
23
23
  unSuspendFlashingCellDefinition(flashingCellDefinition: FlashingCellDefinition): FlashingCellDefinition;
24
24
  addFlashingCellDefinitions(flashingCellDefinitions: FlashingCellDefinition[]): FlashingCellDefinition[];
25
25
  editFlashingCellDefinitions(flashingCellDefinitions: FlashingCellDefinition[]): FlashingCellDefinition[];
26
- getFlashingCellPredicateDefsForScope(scope: AdaptableScope): AdaptablePredicateDef[];
26
+ getFlashingCellPredicateDefsForScope(scope: ColumnScope): AdaptablePredicateDef[];
27
27
  clearAllFlashingCells(): void;
28
28
  isAnyFlashingCellActive(): boolean;
29
29
  findFlashingCellDefinitions(criteria: AdaptableObjectLookupCriteria): FlashingCellDefinition[];
@@ -79,7 +79,7 @@ export class FlashingCellApiImpl extends ApiBase {
79
79
  getFlashingCellPredicateDefsForScope(scope) {
80
80
  return this.getAdaptableApi()
81
81
  .predicateApi.internalApi.getFlashingCellPredicateDefs(scope)
82
- .filter((predicateDef) => this.getAdaptableApi().scopeApi.isScopeInScope(scope, predicateDef.columnScope));
82
+ .filter((predicateDef) => this.getAdaptableApi().columnScopeApi.isScopeInScope(scope, predicateDef.columnScope));
83
83
  }
84
84
  clearAllFlashingCells() {
85
85
  this.dispatchAction(SystemRedux.SystemFlashingCellDeleteAll());
@@ -75,13 +75,13 @@ export class FormatColumnApiImpl extends ApiBase {
75
75
  this.showModulePopup(ModuleConstants.FormatColumnModuleId);
76
76
  }
77
77
  getFormatColumnsWithAllScope(formatColumns) {
78
- return formatColumns.filter((fc) => this.getAdaptableApi().scopeApi.scopeIsAll(fc.Scope));
78
+ return formatColumns.filter((fc) => this.getAdaptableApi().columnScopeApi.scopeIsAll(fc.Scope));
79
79
  }
80
80
  getFormatColumnsWithDataTypeScope(formatColumns) {
81
- return formatColumns.filter((fc) => this.getAdaptableApi().scopeApi.scopeHasDataType(fc.Scope));
81
+ return formatColumns.filter((fc) => this.getAdaptableApi().columnScopeApi.scopeHasDataType(fc.Scope));
82
82
  }
83
83
  getFormatColumnsWithColumnScope(formatColumns) {
84
- return formatColumns.filter((fc) => this.getAdaptableApi().scopeApi.scopeHasColumns(fc.Scope));
84
+ return formatColumns.filter((fc) => this.getAdaptableApi().columnScopeApi.scopeHasColumns(fc.Scope));
85
85
  }
86
86
  hasCustomDisplayFormatter(formatColumn) {
87
87
  var _a;
@@ -99,6 +99,7 @@ export declare class GridApiImpl extends ApiBase implements GridApi {
99
99
  isGridRowGrouped(): boolean;
100
100
  isGridInPivotMode(): boolean;
101
101
  isGroupRowNode(rowNode: IRowNode): boolean;
102
+ isSummaryNode(rowNode: IRowNode): boolean;
102
103
  isQuickFilterAvailable(): boolean;
103
104
  redrawGrid(): void;
104
105
  getGridCellsForRawValue(columnId: string, rawValue: any): GridCell[] | undefined;
@@ -6,6 +6,7 @@ import { GridInternalApi } from '../Internal/GridInternalApi';
6
6
  import ArrayExtensions from '../../Utilities/Extensions/ArrayExtensions';
7
7
  import { logDeprecation } from '../../Utilities/logDeprecation';
8
8
  import { WINDOW_SHOW_TRANSPOSED_VIEW } from '../../View/Components/Popups/WindowPopups/windowFactory';
9
+ import { ROW_SUMMARY_ROW_ID } from '../../PredefinedConfig/Common/RowSummary';
9
10
  export class GridApiImpl extends ApiBase {
10
11
  constructor(adaptable) {
11
12
  super(adaptable);
@@ -374,6 +375,10 @@ export class GridApiImpl extends ApiBase {
374
375
  isGroupRowNode(rowNode) {
375
376
  return this.adaptable.isGroupRowNode(rowNode);
376
377
  }
378
+ isSummaryNode(rowNode) {
379
+ var _a;
380
+ return (_a = rowNode === null || rowNode === void 0 ? void 0 : rowNode.data) === null || _a === void 0 ? void 0 : _a[ROW_SUMMARY_ROW_ID];
381
+ }
377
382
  isQuickFilterAvailable() {
378
383
  return this.adaptable.isQuickFilterAvailable();
379
384
  }
@@ -42,21 +42,21 @@ export class UserInterfaceApiImpl extends ApiBase {
42
42
  // columns id
43
43
  permittedValuesItem = permittedValues.find((permittedValue) => {
44
44
  return ('ColumnIds' in permittedValue.scope &&
45
- this.getAdaptableApi().scopeApi.isColumnInScope(column, permittedValue.scope));
45
+ this.getAdaptableApi().columnScopeApi.isColumnInScope(column, permittedValue.scope));
46
46
  });
47
47
  if (permittedValuesItem) {
48
48
  return permittedValuesItem;
49
49
  }
50
50
  permittedValuesItem = permittedValues.find((permittedValue) => {
51
51
  return ('DataTypes' in permittedValue.scope &&
52
- this.getAdaptableApi().scopeApi.isColumnInScope(column, permittedValue.scope));
52
+ this.getAdaptableApi().columnScopeApi.isColumnInScope(column, permittedValue.scope));
53
53
  });
54
54
  if (permittedValuesItem) {
55
55
  return permittedValuesItem;
56
56
  }
57
57
  permittedValuesItem = permittedValues.find((permittedValue) => {
58
58
  return ('All' in permittedValue.scope &&
59
- this.getAdaptableApi().scopeApi.isColumnInScope(column, permittedValue.scope));
59
+ this.getAdaptableApi().columnScopeApi.isColumnInScope(column, permittedValue.scope));
60
60
  });
61
61
  if (permittedValuesItem) {
62
62
  return permittedValuesItem;
@@ -421,7 +421,7 @@ export class AdaptableInternalApi extends ApiBase {
421
421
  }
422
422
  // lastly filter by scope
423
423
  if (scope) {
424
- locatedAdaptableObjects = locatedAdaptableObjects.filter((adaptableObject) => this.getAdaptableApi().scopeApi.isScopeInScope(adaptableObject.Scope, scope));
424
+ locatedAdaptableObjects = locatedAdaptableObjects.filter((adaptableObject) => this.getAdaptableApi().columnScopeApi.isScopeInScope(adaptableObject.Scope, scope));
425
425
  }
426
426
  return locatedAdaptableObjects;
427
427
  }
@@ -5,7 +5,7 @@ import { AlertFormContext } from '../../AdaptableOptions/AlertOptions';
5
5
  import { AdaptableAlert, AdaptableCellChangedAlert, AdaptableRowChangedAlert } from '../../PredefinedConfig/Common/AdaptableAlert';
6
6
  import { CellDataChangedInfo } from '../../PredefinedConfig/Common/CellDataChangedInfo';
7
7
  import { GridDataChangedInfo } from '../Events/GridDataChanged';
8
- import { AdaptableScope } from '../../PredefinedConfig/Common/AdaptableScope';
8
+ import { ColumnScope } from '../../PredefinedConfig/Common/ColumnScope';
9
9
  import { AdaptablePredicateDef } from '../../PredefinedConfig/Common/AdaptablePredicate';
10
10
  import { AdaptableMessageType } from '../../PredefinedConfig/Common/AdaptableMessageType';
11
11
  import { IRowNode } from '@ag-grid-community/core';
@@ -72,7 +72,7 @@ export declare class AlertInternalApi extends ApiBase {
72
72
  * Retrieves all Predicate Defs that match given Scope
73
73
  * @param scope the Scope to check
74
74
  */
75
- getAlertPredicateDefsForScope(scope: AdaptableScope): AdaptablePredicateDef[];
75
+ getAlertPredicateDefsForScope(scope: ColumnScope): AdaptablePredicateDef[];
76
76
  /**
77
77
  * Returns a description of an Alert Definition
78
78
  * @param alertDefinition Alert Definition to use