@adaptabletools/adaptable 11.1.3 → 11.1.6

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 (125) hide show
  1. package/bundle.cjs.js +139 -139
  2. package/package.json +3 -3
  3. package/publishTimestamp.d.ts +1 -1
  4. package/publishTimestamp.js +1 -1
  5. package/src/AdaptableInterfaces/IAdaptable.d.ts +1 -1
  6. package/src/AdaptableOptions/AdaptableOptions.d.ts +49 -49
  7. package/src/AdaptableOptions/DashboardOptions.d.ts +1 -1
  8. package/src/AdaptableOptions/EditOptions.d.ts +4 -0
  9. package/src/AdaptableOptions/FinancePluginOptions.d.ts +139 -9
  10. package/src/AdaptableOptions/OpenFinPluginOptions.d.ts +3 -3
  11. package/src/AdaptableOptions/SmartEdit.d.ts +34 -0
  12. package/src/AdaptableOptions/SmartEdit.js +2 -0
  13. package/src/Api/AdaptableApi.d.ts +4 -1
  14. package/src/Api/EventApi.d.ts +1 -1
  15. package/src/Api/Implementation/ColumnApiImpl.js +5 -2
  16. package/src/Api/Implementation/FilterApiImpl.js +8 -2
  17. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +1 -1
  18. package/src/Api/Implementation/FormatColumnApiImpl.js +11 -7
  19. package/src/Api/Implementation/GridApiImpl.d.ts +3 -3
  20. package/src/Api/Implementation/GridApiImpl.js +6 -8
  21. package/src/Api/Implementation/InternalApiImpl.d.ts +4 -0
  22. package/src/Api/Implementation/InternalApiImpl.js +9 -0
  23. package/src/Api/Implementation/ScopeApiImpl.d.ts +2 -0
  24. package/src/Api/Implementation/ScopeApiImpl.js +12 -0
  25. package/src/Api/Implementation/SmartEditApiImpl.d.ts +3 -2
  26. package/src/Api/Implementation/ThemeApiImpl.d.ts +1 -0
  27. package/src/Api/Implementation/ThemeApiImpl.js +3 -0
  28. package/src/Api/InternalApi.d.ts +4 -0
  29. package/src/Api/ScopeApi.d.ts +10 -0
  30. package/src/Api/SmartEditApi.d.ts +3 -2
  31. package/src/Api/ThemeApi.d.ts +4 -0
  32. package/src/PredefinedConfig/Common/AdaptableFormat.d.ts +8 -0
  33. package/src/PredefinedConfig/Common/FDC3Context.d.ts +144 -3
  34. package/src/PredefinedConfig/Common/Menu.d.ts +4 -0
  35. package/src/PredefinedConfig/ExportState.d.ts +0 -5
  36. package/src/PredefinedConfig/PopupState.d.ts +2 -1
  37. package/src/PredefinedConfig/SystemState.d.ts +2 -5
  38. package/src/Redux/ActionsReducers/PopupRedux.d.ts +22 -3
  39. package/src/Redux/ActionsReducers/PopupRedux.js +42 -8
  40. package/src/Redux/ActionsReducers/SystemRedux.d.ts +5 -23
  41. package/src/Redux/ActionsReducers/SystemRedux.js +3 -32
  42. package/src/Redux/Store/AdaptableStore.js +11 -1
  43. package/src/Strategy/AlertModule.js +5 -4
  44. package/src/Strategy/CalculatedColumnModule.js +1 -1
  45. package/src/Strategy/ExportModule.js +14 -4
  46. package/src/Strategy/SmartEditModule.d.ts +2 -2
  47. package/src/Strategy/SmartEditModule.js +24 -13
  48. package/src/Strategy/Utilities/getExportColumnsViewItems.js +1 -1
  49. package/src/Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions.js +1 -1
  50. package/src/Utilities/ExpressionFunctions/booleanExpressionFunctions.js +4 -2
  51. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +1 -1
  52. package/src/Utilities/ExpressionFunctions/scalarExpressionFunctions.js +0 -3
  53. package/src/Utilities/Helpers/FormatHelper.js +6 -0
  54. package/src/Utilities/Interface/MessagePopups.d.ts +12 -0
  55. package/src/Utilities/Services/AlertService.d.ts +3 -3
  56. package/src/Utilities/Services/AlertService.js +6 -6
  57. package/src/Utilities/Services/CalculatedColumnExpressionService.d.ts +3 -3
  58. package/src/Utilities/Services/CalculatedColumnExpressionService.js +20 -20
  59. package/src/Utilities/Services/EntitlementService.d.ts +3 -3
  60. package/src/Utilities/Services/EntitlementService.js +12 -8
  61. package/src/Utilities/Services/Interface/IReportService.d.ts +1 -1
  62. package/src/Utilities/Services/MetamodelService.d.ts +3 -3
  63. package/src/Utilities/Services/MetamodelService.js +4 -4
  64. package/src/Utilities/Services/ModuleService.d.ts +3 -3
  65. package/src/Utilities/Services/ModuleService.js +12 -12
  66. package/src/Utilities/Services/QueryLanguageService.d.ts +3 -3
  67. package/src/Utilities/Services/QueryLanguageService.js +20 -19
  68. package/src/Utilities/Services/ReportService.d.ts +4 -4
  69. package/src/Utilities/Services/ReportService.js +50 -44
  70. package/src/Utilities/Services/TeamSharingService.d.ts +3 -3
  71. package/src/Utilities/Services/TeamSharingService.js +19 -16
  72. package/src/Utilities/Services/ValidationService.d.ts +3 -3
  73. package/src/Utilities/Services/ValidationService.js +19 -17
  74. package/src/View/AdaptableView.js +2 -2
  75. package/src/View/Alert/Wizard/AlertBehaviourWizardSection.js +46 -9
  76. package/src/View/Alert/Wizard/AlertWizard.js +22 -24
  77. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +5 -5
  78. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +3 -3
  79. package/src/View/Components/Popups/FormPopups/FormPopups.d.ts +10 -0
  80. package/src/View/Components/Popups/FormPopups/FormPopups.js +37 -0
  81. package/src/View/Components/Popups/WindowPopups/WindowPopups.js +1 -1
  82. package/src/View/Components/Selectors/ColumnSelector.js +1 -1
  83. package/src/View/DataChangeHistory/DataChangeHistoryPopup.js +1 -3
  84. package/src/View/DataSource/DataSourceViewPanel.d.ts +3 -3
  85. package/src/View/DataSource/DataSourceViewPanel.js +15 -13
  86. package/src/View/Export/ExportViewPanel.d.ts +1 -3
  87. package/src/View/Export/ExportViewPanel.js +1 -17
  88. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +5 -1
  89. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.d.ts +1 -1
  90. package/src/View/FormatColumn/Wizard/FormatColumnStyleWizardSection.js +15 -2
  91. package/src/View/FormatColumn/Wizard/FormatColumnWizard.js +2 -1
  92. package/src/View/GridInfo/AdaptableObjectsSummary.js +1 -1
  93. package/src/View/SmartEdit/SmartEditPopup.d.ts +3 -3
  94. package/src/View/SmartEdit/SmartEditPopup.js +15 -3
  95. package/src/View/SmartEdit/SmartEditViewPanel.d.ts +3 -4
  96. package/src/View/SmartEdit/SmartEditViewPanel.js +15 -6
  97. package/src/View/Wizard/OnePageAdaptableWizard.js +1 -1
  98. package/src/agGrid/Adaptable.d.ts +4 -4
  99. package/src/agGrid/Adaptable.js +37 -27
  100. package/src/agGrid/agGridMenuHelper.js +1 -0
  101. package/src/components/StylePreview.js +2 -2
  102. package/src/components/icons/analysis.d.ts +3 -0
  103. package/src/components/icons/analysis.js +8 -0
  104. package/src/components/icons/call.d.ts +3 -0
  105. package/src/components/icons/call.js +7 -0
  106. package/src/components/icons/chat.d.ts +3 -0
  107. package/src/components/icons/chat.js +8 -0
  108. package/src/components/icons/index.js +14 -0
  109. package/src/components/icons/instrument.d.ts +3 -0
  110. package/src/components/icons/instrument.js +8 -0
  111. package/src/components/icons/news.d.ts +3 -0
  112. package/src/components/icons/news.js +8 -0
  113. package/src/components/icons/person.d.ts +3 -0
  114. package/src/components/icons/person.js +7 -0
  115. package/src/components/icons/quote.d.ts +3 -0
  116. package/src/components/icons/quote.js +7 -0
  117. package/src/metamodel/adaptable.metamodel.d.ts +112 -5
  118. package/src/metamodel/adaptable.metamodel.js +219 -22
  119. package/src/types.d.ts +2 -2
  120. package/version.d.ts +1 -1
  121. package/version.js +1 -1
  122. package/src/View/Export/ExportCustomDestinationDialog.d.ts +0 -11
  123. package/src/View/Export/ExportCustomDestinationDialog.js +0 -47
  124. package/src/View/Export/ExportCustomDestinationFormPopups.d.ts +0 -5
  125. package/src/View/Export/ExportCustomDestinationFormPopups.js +0 -15
@@ -270,6 +270,9 @@ class InternalApiImpl extends ApiBase_1.ApiBase {
270
270
  getMetamodelService() {
271
271
  return this.adaptable.MetamodelService;
272
272
  }
273
+ getModules() {
274
+ return this.adaptable.adaptableModules;
275
+ }
273
276
  getModuleFriendlyName(adaptableModule) {
274
277
  var _a, _b;
275
278
  return ((_b = (_a = this.adaptable.ModuleService.getModuleInfoByModule(adaptableModule)) === null || _a === void 0 ? void 0 : _a.FriendlyName) !== null && _b !== void 0 ? _b : adaptableModule);
@@ -278,6 +281,12 @@ class InternalApiImpl extends ApiBase_1.ApiBase {
278
281
  const adaptableQLModules = this.getAdaptableQLOptions().externallyEvaluatedModules;
279
282
  return !adaptableQLModules.includes(adaptableQLModule);
280
283
  }
284
+ forAllRowNodesDo(func) {
285
+ this.adaptable.forAllRowNodesDo(func);
286
+ }
287
+ forAllVisibleRowNodesDo(func) {
288
+ this.adaptable.forAllVisibleRowNodesDo(func);
289
+ }
281
290
  buildStandaloneColumnHeader(column) {
282
291
  return this.adaptable.buildStandaloneColumnHeader(column);
283
292
  }
@@ -10,11 +10,13 @@ export declare class ScopeApiImpl extends ApiBase implements ScopeApi {
10
10
  scopeIsEmpty(scope: AdaptableScope): boolean;
11
11
  scopeIsAll(scope: AdaptableScope): boolean;
12
12
  scopeHasDataType(scope: AdaptableScope): boolean;
13
+ scopeHasOnlyBooleanDataType(scope: AdaptableScope): boolean;
13
14
  scopeHasColumns(scope: AdaptableScope): boolean;
14
15
  isSingleColumnScope(scope: AdaptableScope): boolean;
15
16
  getSingleColumnInScope(scope: AdaptableScope): string | undefined;
16
17
  isSingleNumericColumnScope(scope: AdaptableScope): boolean;
17
18
  isSingleBooleanColumnScope(scope: AdaptableScope): boolean;
19
+ areAllBooleanColumnsInScope(scope: AdaptableScope): boolean;
18
20
  isColumnInScopeColumns(column: AdaptableColumn, scope: AdaptableScope): boolean;
19
21
  isPrimaryKeyColumnInScopeColumns(scope: AdaptableScope): boolean;
20
22
  getScopeToString(scope: AdaptableScope): string;
@@ -71,6 +71,10 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
71
71
  scopeHasDataType(scope) {
72
72
  return scope !== undefined && 'DataTypes' in scope;
73
73
  }
74
+ scopeHasOnlyBooleanDataType(scope) {
75
+ var _a;
76
+ return 'DataTypes' in scope && ((_a = scope.DataTypes) === null || _a === void 0 ? void 0 : _a.length) == 1 && scope.DataTypes[0] == 'Boolean';
77
+ }
74
78
  scopeHasColumns(scope) {
75
79
  return scope !== undefined && 'ColumnIds' in scope;
76
80
  }
@@ -100,6 +104,14 @@ class ScopeApiImpl extends ApiBase_1.ApiBase {
100
104
  scope.ColumnIds.length == 1 &&
101
105
  this.adaptable.api.columnApi.isBooleanColumn(this.adaptable.api.columnApi.getColumnFromId(scope.ColumnIds[0])));
102
106
  }
107
+ areAllBooleanColumnsInScope(scope) {
108
+ return (this.scopeHasColumns(scope) &&
109
+ !this.scopeHasDataType(scope) &&
110
+ !this.scopeIsAll(scope) &&
111
+ 'ColumnIds' in scope &&
112
+ scope.ColumnIds.length &&
113
+ scope.ColumnIds.every((columnId) => this.adaptable.api.columnApi.isBooleanColumn(this.adaptable.api.columnApi.getColumnFromId(columnId))));
114
+ }
103
115
  isColumnInScopeColumns(column, scope) {
104
116
  return this.scopeHasColumns(scope) && this.isColumnInScope(column, scope);
105
117
  }
@@ -1,9 +1,10 @@
1
1
  import { ApiBase } from './ApiBase';
2
2
  import { SmartEditApi } from '../SmartEditApi';
3
3
  import { GridCell } from '../../PredefinedConfig/Selection/GridCell';
4
+ import { SmartEditOperation } from '../../AdaptableOptions/SmartEdit';
4
5
  export declare class SmartEditApiImpl extends ApiBase implements SmartEditApi {
5
- setSmartEditOperation(mathOperation: 'Add' | 'Subtract' | 'Multiply' | 'Divide'): void;
6
- getSmartEditOperation(): string;
6
+ setSmartEditOperation(mathOperation: SmartEditOperation): void;
7
+ getSmartEditOperation(): SmartEditOperation;
7
8
  setSmartEditValue(smartEditValue: number): void;
8
9
  getSmartEditValue(): number;
9
10
  showSmartEditPopup(): void;
@@ -14,4 +14,5 @@ export declare class ThemeApiImpl extends ApiBase implements ThemeApi {
14
14
  getAllUserTheme(): AdaptableTheme[];
15
15
  getAllTheme(): AdaptableTheme[];
16
16
  showThemePopup(): void;
17
+ getAgGridCurrentThemeName(): string;
17
18
  }
@@ -62,5 +62,8 @@ class ThemeApiImpl extends ApiBase_1.ApiBase {
62
62
  showThemePopup() {
63
63
  this.showModulePopup(ModuleConstants.ThemeModuleId);
64
64
  }
65
+ getAgGridCurrentThemeName() {
66
+ return this.adaptable.getAgGridCurrentThemeName();
67
+ }
65
68
  }
66
69
  exports.ThemeApiImpl = ThemeApiImpl;
@@ -32,6 +32,7 @@ import { AlertButtonForm } from '../PredefinedConfig/AlertState';
32
32
  import { AdaptableFrameworkComponent } from '../AdaptableOptions/AdaptableFrameworkComponent';
33
33
  import { IMetamodelService } from '../Utilities/Services/Interface/IMetamodelService';
34
34
  import { RowNode } from '@ag-grid-community/all-modules';
35
+ import { IModuleCollection } from '../Strategy/Interface/IModule';
35
36
  /**
36
37
  * This set of api methods is designed for **internal use of Adaptable** only.
37
38
  *
@@ -99,8 +100,11 @@ export interface InternalApi {
99
100
  getAlertService(): IAlertService;
100
101
  getTeamSharingService(): ITeamSharingService;
101
102
  getMetamodelService(): IMetamodelService;
103
+ getModules(): IModuleCollection;
102
104
  getModuleFriendlyName(adaptableModule: AdaptableModule): string;
103
105
  runModuleInAdaptableQL(adaptableQLModule: AdaptableQLModule): boolean;
106
+ forAllRowNodesDo(func: (rowNode: RowNode) => void): void;
107
+ forAllVisibleRowNodesDo(func: (rowNode: RowNode) => void): void;
104
108
  buildStandaloneColumnHeader(column: AdaptableColumn): AdaptableMenuItem[];
105
109
  getCustomSortComparer(column: AdaptableColumn): ColumnValuesComparer | undefined;
106
110
  clearFlashingCellState(): void;
@@ -31,6 +31,11 @@ export interface ScopeApi {
31
31
  * @param scope Scope to check
32
32
  */
33
33
  scopeHasDataType(scope: AdaptableScope): boolean;
34
+ /**
35
+ * True if the Scope is DataTypes and contains only Boolean
36
+ * @param scope Scope to check
37
+ */
38
+ scopeHasOnlyBooleanDataType(scope: AdaptableScope): boolean;
34
39
  /**
35
40
  * True if Scope contains just 1 ColumnId
36
41
  * @param scope Scope to check
@@ -51,6 +56,11 @@ export interface ScopeApi {
51
56
  * @param scope Scope to check
52
57
  */
53
58
  isSingleBooleanColumnScope(scope: AdaptableScope): boolean;
59
+ /**
60
+ * True if all selected columns are boolean
61
+ * @param scope Scope to check
62
+ */
63
+ areAllBooleanColumnsInScope(scope: AdaptableScope): boolean;
54
64
  /**
55
65
  * True if Scope contains ColumnIds
56
66
  * @param scope Scope to check
@@ -1,3 +1,4 @@
1
+ import { SmartEditOperation } from '../AdaptableOptions/SmartEdit';
1
2
  import { GridCell } from '../PredefinedConfig/Selection/GridCell';
2
3
  /**
3
4
  * Provides run-time access to the Smart Edit Module
@@ -7,11 +8,11 @@ export interface SmartEditApi {
7
8
  * Sets Smart Edit operation: ('Add','Subtract','Multiply','Divide'
8
9
  * @param operation operation to run
9
10
  */
10
- setSmartEditOperation(operation: 'Add' | 'Subtract' | 'Multiply' | 'Divide'): void;
11
+ setSmartEditOperation(operation: SmartEditOperation): void;
11
12
  /**
12
13
  * Gets current Smart Edit Operation
13
14
  */
14
- getSmartEditOperation(): string;
15
+ getSmartEditOperation(): SmartEditOperation;
15
16
  /**
16
17
  * Sets Smart Edit Value
17
18
  * @param smartEditValue the value to use in Smart Edit Operation
@@ -56,4 +56,8 @@ export interface ThemeApi {
56
56
  * Opens Settings Panel with Theme section selected and visible
57
57
  */
58
58
  showThemePopup(): void;
59
+ /**
60
+ * Get the name of the current AG Grid theme
61
+ */
62
+ getAgGridCurrentThemeName(): string;
59
63
  }
@@ -73,4 +73,12 @@ export interface StringFormatterOptions {
73
73
  * Trims text (both start and end)
74
74
  */
75
75
  Trim?: boolean;
76
+ /**
77
+ * Prefix to use before the cell text
78
+ */
79
+ Prefix?: string;
80
+ /**
81
+ * Suffix to use after the cell text
82
+ */
83
+ Suffix?: string;
76
84
  }
@@ -1,3 +1,5 @@
1
+ import { BaseEventInfo } from '../../Api/Events/BaseEventInfo';
2
+ import { FDC3Intent } from '../../types';
1
3
  /**
2
4
  * General-purpose context type, as defined by [FDC3](https://fdc3.finos.org/docs/1.0/context-intro).
3
5
  * A context object is a well-understood datum that is streamable between FDC3 participants. As a result
@@ -28,7 +30,7 @@ export interface FDC3Context {
28
30
  [key: string]: unknown;
29
31
  }
30
32
  /**
31
- * Built-in context to define a financial instrument.
33
+ * Built-in context to define a financial Instrument
32
34
  */
33
35
  export interface InstrumentContext extends FDC3Context {
34
36
  /**
@@ -38,11 +40,11 @@ export interface InstrumentContext extends FDC3Context {
38
40
  /**
39
41
  * Free text name of instrument
40
42
  */
41
- name: string;
43
+ name?: string;
42
44
  /**
43
45
  * The instrument data
44
46
  */
45
- id: {
47
+ id?: {
46
48
  [key: string]: string;
47
49
  } & {
48
50
  ticker?: string;
@@ -55,3 +57,142 @@ export interface InstrumentContext extends FDC3Context {
55
57
  FIGI?: string;
56
58
  };
57
59
  }
60
+ export interface InstrumentListContext extends FDC3Context {
61
+ /**
62
+ * Context type is always 'instrumentList'
63
+ */
64
+ type: 'instrumentList';
65
+ /**
66
+ * Free text name of instrument list
67
+ */
68
+ name?: string;
69
+ /**
70
+ * Optional Id
71
+ */
72
+ id?: any;
73
+ /**
74
+ * The instrument data
75
+ */
76
+ instruments?: InstrumentContext[];
77
+ }
78
+ /**
79
+ * Built-in context to define a financial position
80
+ */
81
+ export interface PositionContext extends FDC3Context {
82
+ /**
83
+ * Context type is always 'position'
84
+ */
85
+ type: 'position';
86
+ instrument: InstrumentContext;
87
+ /**
88
+ * Free text name of Position
89
+ */
90
+ name?: string;
91
+ /**
92
+ * Optional Id
93
+ */
94
+ id?: any;
95
+ /**
96
+ * Holding in the Position
97
+ */
98
+ holding: number;
99
+ }
100
+ export interface PortfolioContext extends FDC3Context {
101
+ /**
102
+ * Context type is always 'portfolio'
103
+ */
104
+ type: 'portfolio';
105
+ /**
106
+ * Free text name of portfolio
107
+ */
108
+ name?: string;
109
+ /**
110
+ * Optional Id
111
+ */
112
+ id?: any;
113
+ /**
114
+ * The position data
115
+ */
116
+ positions?: PositionContext[];
117
+ }
118
+ export interface ContactContext extends FDC3Context {
119
+ /**
120
+ * Context type is always 'contact'
121
+ */
122
+ type: 'contact';
123
+ /**
124
+ * Free text name of contact
125
+ */
126
+ name?: string;
127
+ /**
128
+ * The contact data
129
+ */
130
+ id?: {
131
+ [key: string]: string;
132
+ } & {
133
+ email?: string;
134
+ FDS_ID?: string;
135
+ };
136
+ }
137
+ export interface ContactListContext extends FDC3Context {
138
+ /**
139
+ * Context type is always 'contactList'
140
+ */
141
+ type: 'contactList';
142
+ /**
143
+ * Free text name of contact list
144
+ */
145
+ name?: string;
146
+ /**
147
+ * Optional Id
148
+ */
149
+ id?: any;
150
+ /**
151
+ * The contact data
152
+ */
153
+ contacts?: ContactContext[];
154
+ }
155
+ export interface OrganizationContext extends FDC3Context {
156
+ /**
157
+ * Context type is always 'organization'
158
+ */
159
+ type: 'organization';
160
+ /**
161
+ * Free text name of organization
162
+ */
163
+ name?: string;
164
+ /**
165
+ * The organization data
166
+ */
167
+ id?: {
168
+ [key: string]: string;
169
+ } & {
170
+ LEI?: string;
171
+ PERMID?: string;
172
+ FDS_ID?: string;
173
+ };
174
+ }
175
+ export interface CountryContext extends FDC3Context {
176
+ /**
177
+ * Context type is always 'country'
178
+ */
179
+ type: 'country';
180
+ /**
181
+ * Free text name of country
182
+ */
183
+ name?: string;
184
+ /**
185
+ * The country data
186
+ */
187
+ id?: {
188
+ [key: string]: string;
189
+ } & {
190
+ ISOALPHA2?: string;
191
+ ISOALPHA3?: string;
192
+ };
193
+ }
194
+ export interface AdaptableFDC3EventInfo extends BaseEventInfo {
195
+ type: 'RaiseIntent' | 'BroadcastMessage';
196
+ intent?: FDC3Intent;
197
+ context: FDC3Context;
198
+ }
@@ -118,6 +118,10 @@ export interface ContextMenuContext extends BaseMenuContext {
118
118
  * Whether Column that was clicked is only column with selected cells
119
119
  */
120
120
  isSingleSelectedColumn: boolean;
121
+ /**
122
+ * Whether the clicked cell is the only selected cell
123
+ */
124
+ isSingleSelectedCell: boolean;
121
125
  /**
122
126
  * Current AG Grid row node
123
127
  */
@@ -6,11 +6,6 @@ import { AdaptableObject } from './Common/AdaptableObject';
6
6
  import { AdaptableFormData } from './Common/AdaptableForm';
7
7
  import { AdaptableBooleanQuery } from './Common/AdaptableQuery';
8
8
  import { ExportDestination } from './Common/Enums';
9
- import { CustomDestination } from '../types';
10
- export interface ExportCustomDestinationPopup {
11
- ExportDestination: CustomDestination;
12
- ReportName: Report['Name'];
13
- }
14
9
  /**
15
10
  * Predefined Configuration for Export Module
16
11
  */
@@ -1,4 +1,4 @@
1
- import { ScreenPopup, AlertPopup, ConfirmationPopup, PromptPopup, LoadingPopup, WindowPopup } from '../Utilities/Interface/MessagePopups';
1
+ import { ScreenPopup, AlertPopup, ConfirmationPopup, PromptPopup, LoadingPopup, WindowPopup, FormPopup } from '../Utilities/Interface/MessagePopups';
2
2
  import { InternalState } from './InternalState';
3
3
  /**
4
4
  * Internal state to manage open popups - NOT persisted by Redux
@@ -6,6 +6,7 @@ import { InternalState } from './InternalState';
6
6
  export interface PopupState extends InternalState {
7
7
  ScreenPopup: ScreenPopup;
8
8
  WindowPopup: WindowPopup;
9
+ FormPopup: FormPopup;
9
10
  AlertPopup: AlertPopup;
10
11
  ConfirmationPopup: ConfirmationPopup;
11
12
  PromptPopup: PromptPopup;
@@ -13,7 +13,7 @@ import { CachedQuery } from './QueryState';
13
13
  import { AdaptableFlashingCell } from './Common/AdaptableFlashingCell';
14
14
  import { TypeUuid } from './Uuid';
15
15
  import { SummaryOperation } from './Common/Enums';
16
- import { ExportCustomDestinationPopup } from './ExportState';
16
+ import { SmartEditOperation } from '../AdaptableOptions/SmartEdit';
17
17
  export type { IPushPullReport, IPushPullDomain };
18
18
  export type { Glue42Report };
19
19
  export type { OpenFinReport };
@@ -25,9 +25,6 @@ export declare type DataChangeHistoryMode = 'ACTIVE' | 'INACTIVE' | 'SUSPENDED';
25
25
  */
26
26
  export interface SystemState extends InternalState, IPushPullState, Glue42State, OpenFinState {
27
27
  AdaptableAlerts: AdaptableAlert[];
28
- Export: {
29
- CustomDestinationPopups: ExportCustomDestinationPopup[];
30
- };
31
28
  AdaptableFlashingCells: Record<ROW_PRIMARY_KEY, Record<COLUMN_ID_OR_WHOLE_ROW_LABEL, TypeUuid>>;
32
29
  AdaptableFlashingCellsMap: Record<TypeUuid, AdaptableFlashingCell>;
33
30
  SystemStatusMessages: SystemStatusMessageInfo[];
@@ -43,7 +40,7 @@ export interface SystemState extends InternalState, IPushPullState, Glue42State,
43
40
  CachedQueries: CachedQuery[];
44
41
  BulkUpdateValue?: string;
45
42
  SmartEditValue?: number;
46
- SmartEditOperation?: 'Add' | 'Subtract' | 'Multiply' | 'Divide';
43
+ SmartEditOperation?: SmartEditOperation;
47
44
  CellSummaryOperation?: SummaryOperation | string;
48
45
  ProgressIndicator: ProgressIndicator;
49
46
  License: {
@@ -4,6 +4,7 @@ import { InputAction, UIPrompt, UIConfirmation } from '../../Utilities/Interface
4
4
  import { ModuleParams } from '../../View/Components/SharedProps/ModuleViewPopupProps';
5
5
  import { AdaptableModule } from '../../PredefinedConfig/Common/Types';
6
6
  import { AdaptableAlert } from '../../PredefinedConfig/Common/AdaptableAlert';
7
+ import { AdaptableForm, ButtonContext } from '../../types';
7
8
  export declare const POPUP_SHOW_SCREEN = "POPUP_SHOW_SCREEN";
8
9
  export declare const POPUP_HIDE_SCREEN = "POPUP_HIDE_SCREEN";
9
10
  export declare const POPUP_SHOW_LOADING = "POPUP_SHOW_LOADING";
@@ -17,8 +18,10 @@ export declare const POPUP_SHOW_CONFIRMATION = "POPUP_SHOW_CONFIRMATION";
17
18
  export declare const POPUP_CONFIRM_CONFIRMATION = "POPUP_CONFIRM_CONFIRMATION";
18
19
  export declare const POPUP_CANCEL_CONFIRMATION = "POPUP_CANCEL_CONFIRMATION";
19
20
  export declare const POPUP_CLEAR_PARAM = "POPUP_CLEAR_PARAM";
20
- export declare const POPUP_WINDOW_SHOW_SCREEN = "POPUP_WINDOW_SHOW_SCREEN";
21
- export declare const POPUP_WINDOW_HIDE_SCREEN = "POPUP_WINDOW_HIDE_SCREEN";
21
+ export declare const POPUP_SHOW_WINDOW = "POPUP_SHOW_WINDOW";
22
+ export declare const POPUP_HIDE_WINDOW = "POPUP_HIDE_WINDOW";
23
+ export declare const POPUP_SHOW_FORM = "POPUP_SHOW_FORM";
24
+ export declare const POPUP_HIDE_FORM = "POPUP_FORM_HIDE";
22
25
  export interface PopupShowScreenAction extends Redux.Action {
23
26
  ComponentModule: AdaptableModule;
24
27
  ComponentName: string;
@@ -38,6 +41,15 @@ export interface PopupShowWindowAction extends Redux.Action {
38
41
  export interface PopupHideWindowAction extends Redux.Action {
39
42
  Id: string;
40
43
  }
44
+ export interface PopupShowFormAction extends Redux.Action {
45
+ Id: string;
46
+ Form: AdaptableForm<ButtonContext>;
47
+ FormProps: any;
48
+ prepareContext?: (context: ButtonContext) => Promise<ButtonContext> | ButtonContext;
49
+ }
50
+ export interface PopupHideFormAction extends Redux.Action {
51
+ Id: string;
52
+ }
41
53
  export interface PopupShowLoadingAction extends Redux.Action {
42
54
  }
43
55
  export interface PopupHideLoadingAction extends Redux.Action {
@@ -74,7 +86,14 @@ export declare const PopupShowWindow: (config: {
74
86
  PopupProps?: any;
75
87
  Icon?: string;
76
88
  }) => PopupShowWindowAction;
77
- export declare const PopupWindowHide: (id: string) => PopupHideWindowAction;
89
+ export declare const PopupHideWindow: (id: string) => PopupHideWindowAction;
90
+ export declare const PopupShowForm: (config: {
91
+ Id: string;
92
+ Form: AdaptableForm<ButtonContext>;
93
+ FormProps?: any;
94
+ prepareContext?: (context: ButtonContext) => Promise<ButtonContext> | ButtonContext;
95
+ }) => PopupShowFormAction;
96
+ export declare const PopupHideForm: (id: string) => PopupHideFormAction;
78
97
  export declare const PopupShowAlert: (alert: AdaptableAlert) => PopupShowAlertAction;
79
98
  export declare const PopupHideAlert: () => PopupHideAlertAction;
80
99
  export declare const PopupShowLoading: () => PopupShowLoadingAction;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PopupReducer = exports.PopupClearParam = exports.PopupCancelConfirmation = exports.PopupConfirmConfirmation = exports.PopupShowConfirmation = exports.PopupConfirmPrompt = exports.PopupHidePrompt = exports.PopupShowPrompt = exports.PopupHideLoading = exports.PopupShowLoading = exports.PopupHideAlert = exports.PopupShowAlert = exports.PopupWindowHide = exports.PopupShowWindow = exports.PopupHideScreen = exports.PopupShowScreen = exports.POPUP_WINDOW_HIDE_SCREEN = exports.POPUP_WINDOW_SHOW_SCREEN = exports.POPUP_CLEAR_PARAM = exports.POPUP_CANCEL_CONFIRMATION = exports.POPUP_CONFIRM_CONFIRMATION = exports.POPUP_SHOW_CONFIRMATION = exports.POPUP_CONFIRM_PROMPT = exports.POPUP_HIDE_PROMPT = exports.POPUP_SHOW_PROMPT = exports.POPUP_HIDE_ALERT = exports.POPUP_SHOW_ALERT = exports.POPUP_HIDE_LOADING = exports.POPUP_SHOW_LOADING = exports.POPUP_HIDE_SCREEN = exports.POPUP_SHOW_SCREEN = void 0;
3
+ exports.PopupReducer = exports.PopupClearParam = exports.PopupCancelConfirmation = exports.PopupConfirmConfirmation = exports.PopupShowConfirmation = exports.PopupConfirmPrompt = exports.PopupHidePrompt = exports.PopupShowPrompt = exports.PopupHideLoading = exports.PopupShowLoading = exports.PopupHideAlert = exports.PopupShowAlert = exports.PopupHideForm = exports.PopupShowForm = exports.PopupHideWindow = exports.PopupShowWindow = exports.PopupHideScreen = exports.PopupShowScreen = exports.POPUP_HIDE_FORM = exports.POPUP_SHOW_FORM = exports.POPUP_HIDE_WINDOW = exports.POPUP_SHOW_WINDOW = exports.POPUP_CLEAR_PARAM = exports.POPUP_CANCEL_CONFIRMATION = exports.POPUP_CONFIRM_CONFIRMATION = exports.POPUP_SHOW_CONFIRMATION = exports.POPUP_CONFIRM_PROMPT = exports.POPUP_HIDE_PROMPT = exports.POPUP_SHOW_PROMPT = exports.POPUP_HIDE_ALERT = exports.POPUP_SHOW_ALERT = exports.POPUP_HIDE_LOADING = exports.POPUP_SHOW_LOADING = exports.POPUP_HIDE_SCREEN = exports.POPUP_SHOW_SCREEN = void 0;
4
4
  exports.POPUP_SHOW_SCREEN = 'POPUP_SHOW_SCREEN';
5
5
  exports.POPUP_HIDE_SCREEN = 'POPUP_HIDE_SCREEN';
6
6
  exports.POPUP_SHOW_LOADING = 'POPUP_SHOW_LOADING';
@@ -14,8 +14,10 @@ exports.POPUP_SHOW_CONFIRMATION = 'POPUP_SHOW_CONFIRMATION';
14
14
  exports.POPUP_CONFIRM_CONFIRMATION = 'POPUP_CONFIRM_CONFIRMATION';
15
15
  exports.POPUP_CANCEL_CONFIRMATION = 'POPUP_CANCEL_CONFIRMATION';
16
16
  exports.POPUP_CLEAR_PARAM = 'POPUP_CLEAR_PARAM';
17
- exports.POPUP_WINDOW_SHOW_SCREEN = 'POPUP_WINDOW_SHOW_SCREEN';
18
- exports.POPUP_WINDOW_HIDE_SCREEN = 'POPUP_WINDOW_HIDE_SCREEN';
17
+ exports.POPUP_SHOW_WINDOW = 'POPUP_SHOW_WINDOW';
18
+ exports.POPUP_HIDE_WINDOW = 'POPUP_HIDE_WINDOW';
19
+ exports.POPUP_SHOW_FORM = 'POPUP_SHOW_FORM';
20
+ exports.POPUP_HIDE_FORM = 'POPUP_FORM_HIDE';
19
21
  exports.PopupShowScreen = (componentModule, componentName, params, popupProps) => ({
20
22
  type: exports.POPUP_SHOW_SCREEN,
21
23
  ComponentModule: componentModule,
@@ -27,14 +29,25 @@ exports.PopupHideScreen = () => ({
27
29
  type: exports.POPUP_HIDE_SCREEN,
28
30
  });
29
31
  exports.PopupShowWindow = (config) => ({
30
- type: exports.POPUP_WINDOW_SHOW_SCREEN,
32
+ type: exports.POPUP_SHOW_WINDOW,
31
33
  Id: config.Id,
32
34
  Title: config.Title,
33
35
  PopupProps: config.PopupProps,
34
36
  Icon: config.Icon,
35
37
  });
36
- exports.PopupWindowHide = (id) => ({
37
- type: exports.POPUP_WINDOW_HIDE_SCREEN,
38
+ exports.PopupHideWindow = (id) => ({
39
+ type: exports.POPUP_HIDE_WINDOW,
40
+ Id: id,
41
+ });
42
+ exports.PopupShowForm = (config) => ({
43
+ type: exports.POPUP_SHOW_FORM,
44
+ Id: config.Id,
45
+ Form: config.Form,
46
+ FormProps: config.FormProps,
47
+ prepareContext: config.prepareContext,
48
+ });
49
+ exports.PopupHideForm = (id) => ({
50
+ type: exports.POPUP_HIDE_FORM,
38
51
  Id: id,
39
52
  });
40
53
  exports.PopupShowAlert = (alert) => {
@@ -117,6 +130,9 @@ const initialState = {
117
130
  WindowPopup: {
118
131
  PopupList: [],
119
132
  },
133
+ FormPopup: {
134
+ FormList: [],
135
+ },
120
136
  };
121
137
  exports.PopupReducer = (state = initialState, action) => {
122
138
  switch (action.type) {
@@ -258,7 +274,7 @@ exports.PopupReducer = (state = initialState, action) => {
258
274
  };
259
275
  return Object.assign({}, state, { ScreenPopup: newScreenPopup });
260
276
  }
261
- case exports.POPUP_WINDOW_SHOW_SCREEN: {
277
+ case exports.POPUP_SHOW_WINDOW: {
262
278
  const showWindowAction = action;
263
279
  const windowSettings = {
264
280
  Id: showWindowAction.Id,
@@ -273,10 +289,28 @@ exports.PopupReducer = (state = initialState, action) => {
273
289
  const PopupList = [...state.WindowPopup.PopupList, windowSettings];
274
290
  return Object.assign(Object.assign({}, state), { WindowPopup: Object.assign(Object.assign({}, state.WindowPopup), { PopupList }) });
275
291
  }
276
- case exports.POPUP_WINDOW_HIDE_SCREEN: {
292
+ case exports.POPUP_HIDE_WINDOW: {
277
293
  const PopupList = state.WindowPopup.PopupList.filter((windowPopup) => windowPopup.Id !== action.Id);
278
294
  return Object.assign(Object.assign({}, state), { WindowPopup: Object.assign(Object.assign({}, state.WindowPopup), { PopupList }) });
279
295
  }
296
+ case exports.POPUP_SHOW_FORM: {
297
+ const showWindowAction = action;
298
+ const windowSettings = {
299
+ Id: showWindowAction.Id,
300
+ FormProps: showWindowAction.FormProps,
301
+ Form: showWindowAction.Form,
302
+ prepareContext: showWindowAction.prepareContext,
303
+ };
304
+ if (state.FormPopup.FormList.some((windowPopup) => windowPopup.Id === windowSettings.Id)) {
305
+ return state;
306
+ }
307
+ const FormList = [...state.FormPopup.FormList, windowSettings];
308
+ return Object.assign(Object.assign({}, state), { FormPopup: Object.assign(Object.assign({}, state.WindowPopup), { FormList }) });
309
+ }
310
+ case exports.POPUP_HIDE_FORM: {
311
+ const FormList = state.FormPopup.FormList.filter((form) => form.Id !== action.Id);
312
+ return Object.assign(Object.assign({}, state), { FormPopup: Object.assign(Object.assign({}, state.WindowPopup), { FormList }) });
313
+ }
280
314
  default:
281
315
  return state;
282
316
  }
@@ -3,16 +3,17 @@ import { SystemState } from '../../PredefinedConfig/SystemState';
3
3
  import { CellHighlightInfo } from '../../PredefinedConfig/Common/CellHighlightInfo';
4
4
  import { RowHighlightInfo } from '../../PredefinedConfig/Common/RowHighlightInfo';
5
5
  import { PreviewInfo } from '../../Utilities/Interface/Preview';
6
- import { ExportCustomDestinationPopup, Report } from '../../PredefinedConfig/ExportState';
6
+ import { Report } from '../../PredefinedConfig/ExportState';
7
7
  import { BulkUpdateValidationResult } from '../../Strategy/Interface/IBulkUpdateModule';
8
8
  import { GridCell } from '../../PredefinedConfig/Selection/GridCell';
9
9
  import { AdaptableAlert } from '../../PredefinedConfig/Common/AdaptableAlert';
10
10
  import { SystemStatusMessageInfo } from '../../PredefinedConfig/Common/SystemStatusMessageInfo';
11
11
  import { CachedQuery } from '../../PredefinedConfig/QueryState';
12
12
  import { AdaptableFlashingCell } from '../../PredefinedConfig/Common/AdaptableFlashingCell';
13
- import { MathOperation, SummaryOperation } from '../../PredefinedConfig/Common/Enums';
13
+ import { SummaryOperation } from '../../PredefinedConfig/Common/Enums';
14
14
  import { CellDataChangedInfo } from '../../PredefinedConfig/Common/CellDataChangedInfo';
15
15
  import { RowsHighlightInfo } from '../../PredefinedConfig/Common/RowsHighlightInfo';
16
+ import { SmartEditOperation } from '../../AdaptableOptions/SmartEdit';
16
17
  export declare const FLASHING_CELL_ROW_KEY = "__ROW";
17
18
  export declare const SYSTEM_ALERT_ADD = "SYSTEM_ALERT_ADD";
18
19
  export declare const SYSTEM_ALERT_DELETE = "SYSTEM_ALERT_DELETE";
@@ -46,14 +47,6 @@ export declare const SYSTEM_SET_NEW_COLUMN_LIST_ORDER = "SYSTEM_SET_NEW_COLUMN_L
46
47
  export declare const SYSTEM_SET_LAST_APPLIED_SHORTCUT = "SYSTEM_SET_LAST_APPLIED_SHORTCUT";
47
48
  export declare const SYSTEM_CACHED_QUERY_ADD = "SYSTEM_CACHED_QUERY_ADD";
48
49
  export declare const SYSTEM_CELL_SUMMARY_CHANGE_OPERATION = "SYSTEM_CELL_SUMMARY_CHANGE_OPERATION";
49
- /**
50
- * @ReduxAction A report Destination pop-up from is opened
51
- */
52
- export declare const SYSTEM_EXPORT_CUSTOM_DESTINATION_POPUP_SHOW = "SYSTEM_EXPORT_CUSTOM_DESTINATION_POPUP_SHOW";
53
- /**
54
- * @ReduxAction A report Destination pop-up form is closed
55
- */
56
- export declare const SYSTEM_EXPORT_CUSTOM_DESTINATION_POPUP_HIDE = "SYSTEM_EXPORT_CUSTOM_DESTINATION_POPUP_HIDE";
57
50
  export declare const SYSTEM_PROGRESS_INDICATOR_SHOW = "SYSTEM_PROGRESS_INDICATOR_SHOW";
58
51
  export declare const SYSTEM_PROGRESS_INDICATOR_HIDE = "SYSTEM_PROGRESS_INDICATOR_HIDE";
59
52
  export declare const SYSTEM_LICENSE_SHOW_WATERMARK = "SYSTEM_LICENSE_SHOW_WATERMARK";
@@ -136,7 +129,7 @@ export interface SmartEditChangeValueAction extends Redux.Action {
136
129
  value: number;
137
130
  }
138
131
  export interface SmartEditChangeOperationAction extends Redux.Action {
139
- smartEditOperation: MathOperation;
132
+ smartEditOperation: SmartEditOperation;
140
133
  }
141
134
  export interface SmartEditCheckCellSelectionAction extends Redux.Action {
142
135
  }
@@ -204,12 +197,6 @@ export interface SystemDataChangeHistorySuspendAction extends Redux.Action {
204
197
  }
205
198
  export interface SystemDataChangeHistoryResumeAction extends Redux.Action {
206
199
  }
207
- export interface SystemExportCustomDestinationPopupShowAction extends Redux.Action {
208
- data: ExportCustomDestinationPopup;
209
- }
210
- export interface SystemExportCustomDestinationPopupHideAction extends Redux.Action {
211
- data: ExportCustomDestinationPopup;
212
- }
213
200
  export interface SystemSettingsPanelSetAction extends Redux.Action {
214
201
  name: string;
215
202
  settings: SystemState['SettingsPanel']['0'];
@@ -233,7 +220,7 @@ export declare const SystemStatusMessageInfoAdd: (SystemStatusMessageInfo: Syste
233
220
  export declare const SystemStatusMessageInfoDelete: (SystemStatusMessageInfo: SystemStatusMessageInfo) => SystemStatusMessageInfoDeleteAction;
234
221
  export declare const SystemStatusMessageInfoDeleteAll: () => SystemStatusMessageInfoDeleteAllAction;
235
222
  export declare const SmartEditChangeValue: (value: number) => SmartEditChangeValueAction;
236
- export declare const SmartEditChangeOperation: (smartEditOperation: MathOperation) => SmartEditChangeOperationAction;
223
+ export declare const SmartEditChangeOperation: (smartEditOperation: SmartEditOperation) => SmartEditChangeOperationAction;
237
224
  export declare const SmartEditCheckCellSelection: () => SmartEditCheckCellSelectionAction;
238
225
  export declare const SmartEditSetValidSelection: (IsValidSmartEditSelection: boolean) => SmartEditSetValidSelectionAction;
239
226
  export declare const SmartEditSetPreview: (SmartEditPreviewInfo: PreviewInfo) => SmartEditSetPreviewAction;
@@ -255,10 +242,5 @@ export declare const SystemDataChangeHistoryEnable: () => SystemDataChangeHistor
255
242
  export declare const SystemDataChangeHistoryDisable: () => SystemDataChangeHistoryDisableAction;
256
243
  export declare const SystemDataChangeHistorySuspend: () => SystemDataChangeHistorySuspendAction;
257
244
  export declare const SystemDataChangeHistoryResume: () => SystemDataChangeHistoryResumeAction;
258
- export declare const SystemExportCustomDestinationPopupShow: (data: ExportCustomDestinationPopup) => SystemExportCustomDestinationPopupShowAction;
259
- export declare const SystemExportCustomDestinationPopupHide: (data: ExportCustomDestinationPopup) => SystemExportCustomDestinationPopupHideAction;
260
245
  export declare const SystemSettingsPanelSet: (name: string, settings: SystemState['SettingsPanel']['0']) => SystemSettingsPanelSetAction;
261
- export declare const getSystemExportCustomDestinationPopups: (state: {
262
- System: SystemState;
263
- }) => ExportCustomDestinationPopup[];
264
246
  export declare const SystemReducer: Redux.Reducer<SystemState>;