@adaptabletools/adaptable 16.0.0-canary.4 → 16.0.0-canary.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 (42) hide show
  1. package/bundle.cjs.js +181 -181
  2. package/package.json +2 -2
  3. package/publishTimestamp.d.ts +1 -1
  4. package/publishTimestamp.js +1 -1
  5. package/src/AdaptableOptions/Fdc3Options.d.ts +148 -19
  6. package/src/AdaptableOptions/FinancePluginOptions.d.ts +19 -19
  7. package/src/Api/ColumnApi.d.ts +0 -5
  8. package/src/Api/Fdc3Api.d.ts +19 -11
  9. package/src/Api/FinanceApi.d.ts +2 -2
  10. package/src/Api/Implementation/ColumnApiImpl.d.ts +0 -1
  11. package/src/Api/Implementation/ColumnApiImpl.js +0 -3
  12. package/src/Api/Implementation/Fdc3ApiImpl.d.ts +2 -0
  13. package/src/Api/Implementation/Fdc3ApiImpl.js +8 -0
  14. package/src/Api/Internal/ActionRowInternalApi.js +1 -1
  15. package/src/Api/Internal/AdaptableInternalApi.d.ts +6 -1
  16. package/src/Api/Internal/AdaptableInternalApi.js +43 -0
  17. package/src/Api/Internal/ColumnInternalApi.d.ts +1 -0
  18. package/src/Api/Internal/ColumnInternalApi.js +4 -0
  19. package/src/Api/Internal/Fdc3InternalApi.d.ts +19 -3
  20. package/src/Api/Internal/Fdc3InternalApi.js +372 -2
  21. package/src/PredefinedConfig/Common/AdaptableButton.d.ts +1 -1
  22. package/src/PredefinedConfig/Common/FDC3Context_DEPR.d.ts +3 -3
  23. package/src/PredefinedConfig/Common/Fdc3Context.d.ts +2 -0
  24. package/src/PredefinedConfig/Common/Fdc3Context.js +6 -5
  25. package/src/PredefinedConfig/Common/Fdc3Intent.d.ts +20 -17
  26. package/src/PredefinedConfig/Common/Fdc3Intent.js +45 -13
  27. package/src/PredefinedConfig/Common/Types.d.ts +1 -1
  28. package/src/Strategy/Fdc3Module.js +25 -5
  29. package/src/Utilities/Constants/GeneralConstants.d.ts +4 -0
  30. package/src/Utilities/Constants/GeneralConstants.js +6 -2
  31. package/src/Utilities/Defaults/DefaultAdaptableOptions.js +6 -0
  32. package/src/Utilities/Helpers/AdaptableHelper.js +3 -2
  33. package/src/Utilities/Services/Fdc3Service.js +9 -4
  34. package/src/View/Layout/Wizard/sections/Utilities.js +1 -1
  35. package/src/agGrid/ActionColumnRenderer.js +2 -31
  36. package/src/agGrid/Adaptable.js +3 -5
  37. package/src/agGrid/agGridHelper.js +5 -2
  38. package/src/metamodel/adaptable.metamodel.d.ts +116 -3
  39. package/src/metamodel/adaptable.metamodel.js +1 -1
  40. package/src/types.d.ts +4 -3
  41. package/version.d.ts +1 -1
  42. package/version.js +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptabletools/adaptable",
3
- "version": "16.0.0-canary.4",
3
+ "version": "16.0.0-canary.6",
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",
@@ -46,7 +46,7 @@
46
46
  "lodash": "^4.17.15",
47
47
  "normalize.css": "^8.0.1",
48
48
  "prop-types": "^15.6.2",
49
- "re-resizable": "^6.9.1",
49
+ "re-resizable": "6.9.9",
50
50
  "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
51
51
  "react-beautiful-dnd": "13.1.1",
52
52
  "react-day-picker": "8.0.6",
@@ -1,2 +1,2 @@
1
- declare const _default: 1691503322585;
1
+ declare const _default: 1691662085068;
2
2
  export default _default;
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = 1691503322585;
3
+ exports.default = 1691662085068;
@@ -1,8 +1,10 @@
1
- import { ChartContext, ChatInitSettingsContext, ContactContext, ContactListContext, CountryContext, CurrencyContext, EmailContext, Fdc3Context, Fdc3ContextType, InstrumentContext, InstrumentListContext, OrganizationContext, PortfolioContext, PositionContext, TimeRangeContext, ValuationContext } from '../PredefinedConfig/Common/Fdc3Context';
1
+ import { ChartContext, ChatInitSettingsContext, ContactContext, ContactListContext, CountryContext, CurrencyContext, EmailContext, Fdc3Context, Fdc3ContextType, Fdc3CustomContext, Fdc3CustomContextType, InstrumentContext, InstrumentListContext, OrganizationContext, PortfolioContext, PositionContext, TimeRangeContext, ValuationContext } from '../PredefinedConfig/Common/Fdc3Context';
2
2
  import { BaseContext } from '../PredefinedConfig/Common/BaseContext';
3
3
  import { IRowNode } from '@ag-grid-community/core';
4
4
  import { Context, ContextMetadata, IntentResult } from '@finos/fdc3';
5
- import { CompatibleContext, Fdc3IntentType } from '../PredefinedConfig/Common/Fdc3Intent';
5
+ import { CompatibleContext, Fdc3CustomIntentType, Fdc3IntentType } from '../PredefinedConfig/Common/Fdc3Intent';
6
+ import { AdaptableIcon } from '../PredefinedConfig/Common/AdaptableIcon';
7
+ import { ButtonStyle } from '../PredefinedConfig/Common/ButtonStyle';
6
8
  /**
7
9
  * Options for configuring FDC3 in AdapTable
8
10
  */
@@ -28,43 +30,94 @@ export interface Fdc3Options {
28
30
  */
29
31
  resolveContextData?: (context: ResolveContextDataContext) => Fdc3Context;
30
32
  /**
31
- * Configures the Intents that AdaptTable will listen for and raise
33
+ * Configures the FDC3 standard Intents that AdaptTable will listen for and raise
32
34
  */
33
35
  intents?: {
34
36
  /**
35
- * Subscribe to the given Intent(s)
37
+ * Subscribe to the given standard Intent(s)
36
38
  */
37
39
  listensFor?: Fdc3IntentType[];
38
40
  /**
39
- * Raises the given Intent(s) on various Grid Actions
41
+ * Raises the given standard Intent(s) on various Grid Actions
40
42
  */
41
43
  raises?: {
42
44
  [K in Fdc3IntentType]?: RaiseIntentConfig<K>[];
43
45
  };
44
46
  };
45
47
  /**
46
- * Configures the Contexts that AdaptTable will listen for and broadcast
48
+ * Configures the FDC3 custom Intents that AdaptTable will listen for and raise
49
+ */
50
+ customIntents?: {
51
+ /**
52
+ * Subscribe to the given custom Intent(s)
53
+ */
54
+ listensFor?: Fdc3CustomIntentType[];
55
+ /**
56
+ * Raises the given custom Intent(s) on various Grid Actions
57
+ */
58
+ raises?: {
59
+ [K in Fdc3CustomIntentType]: RaiseIntentConfig[];
60
+ };
61
+ };
62
+ /**
63
+ * Configures the FDC3 standard Contexts that AdaptTable will listen for and broadcast
47
64
  */
48
65
  contexts?: {
49
66
  /**
50
- * Subscribe to the given Context(s)
67
+ * Subscribe to the given standard Context(s)
51
68
  */
52
69
  listensFor?: Fdc3ContextType[];
53
70
  /**
54
- * Broadcasts the given Context(s) on various Grid Actions
71
+ * Broadcasts the given standard Context(s) on various Grid Actions
55
72
  */
56
73
  broadcasts?: {
57
74
  [K in Fdc3ContextType]?: BroadcastConfig;
58
75
  };
59
76
  };
60
77
  /**
61
- * Handles incoming Intents from the Desktop Agent
78
+ * Configures the FDC3 custom Contexts that AdaptTable will listen for and broadcast
79
+ */
80
+ customContexts?: {
81
+ /**
82
+ * Subscribe to the given custom Context(s)
83
+ */
84
+ listensFor?: Fdc3CustomContextType[];
85
+ /**
86
+ * Broadcasts the given custom Context(s) on various Grid Actions
87
+ */
88
+ broadcasts?: {
89
+ [K in Fdc3CustomContextType]?: BroadcastConfig;
90
+ };
91
+ };
92
+ /**
93
+ * Handles incoming Intents (both standard and custom)
62
94
  */
63
- handleIntent?: (context: HandleFdc3Context) => Promise<IntentResult> | void;
95
+ handleIntent?: (context: HandleFdc3IntentContext) => Promise<IntentResult> | void;
64
96
  /**
65
- * Handles incoming Contexts from the Desktop Agent
97
+ * Handles incoming Contexts (both standard and custom)
66
98
  */
67
99
  handleContext?: (context: HandleFdc3Context) => void;
100
+ /**
101
+ * Customises the FDC3 Actions column
102
+ */
103
+ actionColumnDefaultConfiguration?: {
104
+ /**
105
+ * @defaultValue 'FDC3 Actions'
106
+ */
107
+ headerName?: string;
108
+ /**
109
+ * @defaultValue '200' (pixels)
110
+ */
111
+ width?: number;
112
+ /**
113
+ * @defaultValue true
114
+ */
115
+ resizable?: boolean;
116
+ /**
117
+ * @defaultValue true
118
+ */
119
+ movable?: boolean;
120
+ };
68
121
  }
69
122
  /**
70
123
  * Context used when resolving FDC3 Context Data
@@ -73,7 +126,7 @@ export interface ResolveContextDataContext extends BaseContext {
73
126
  /**
74
127
  * The FDC3 Context Type
75
128
  */
76
- contextType: Fdc3ContextType;
129
+ contextType: Fdc3ContextType | Fdc3CustomContextType;
77
130
  /**
78
131
  * The FDC3 Context Data which has been mapped from the grid data based on the given configuration in `gridDataContextMapping`
79
132
  */
@@ -81,11 +134,15 @@ export interface ResolveContextDataContext extends BaseContext {
81
134
  /**
82
135
  * The row node which is the source of the context data
83
136
  */
84
- rowNode?: IRowNode;
137
+ rowNode: IRowNode;
85
138
  /**
86
139
  * The row data which is the source of the context data
87
140
  */
88
- rowData?: any;
141
+ rowData: any;
142
+ /**
143
+ * Primary key value of row
144
+ */
145
+ primaryKeyValue: any;
89
146
  }
90
147
  /**
91
148
  * Context used when handling incoming FDC3 messages
@@ -100,6 +157,15 @@ export interface HandleFdc3Context extends BaseContext {
100
157
  */
101
158
  metadata?: ContextMetadata;
102
159
  }
160
+ /**
161
+ * Context used when handling incoming FDC3 messages
162
+ */
163
+ export interface HandleFdc3IntentContext extends HandleFdc3Context {
164
+ /**
165
+ * The FDC3 Intent
166
+ */
167
+ intent: Fdc3IntentType | Fdc3CustomIntentType;
168
+ }
103
169
  /**
104
170
  * Mapping of FDC3 Context Types to Grid Data/Columns
105
171
  */
@@ -123,23 +189,86 @@ export declare const ColumnRefTypePrefix = "_colId.";
123
189
  export declare const FieldRefTypePrefix = "_field.";
124
190
  export declare type GridDataRef = `_colId.${string}` | `_field.${string}`;
125
191
  export declare type Fdc3ContentMapping<T> = PropertiesToGridRefs<Omit<T, 'type'>>;
126
- export interface RaiseIntentConfig<K extends Fdc3IntentType> {
127
- type: CompatibleContext<K>;
192
+ export interface RaiseIntentConfig<K extends Fdc3IntentType = any> {
193
+ contextType: CompatibleContext<K>;
128
194
  contextMenu?: {
129
195
  columnIds: string[];
130
196
  };
131
- actionButton?: {
132
- actionColumnId: string;
197
+ actionButton?: Fdc3AdaptableButton;
198
+ actionColumn?: {
199
+ columnId: string;
200
+ friendlyName?: string;
201
+ button: Fdc3AdaptableButton;
202
+ width?: number;
133
203
  };
134
204
  }
135
205
  export interface BroadcastConfig {
136
206
  contextMenu?: {
137
207
  columnIds: string[];
138
208
  };
139
- actionButton?: {
209
+ actionButton?: Fdc3AdaptableButton;
210
+ actionColumn?: {
140
211
  columnId: string;
212
+ friendlyName?: string;
213
+ button: Fdc3AdaptableButton;
214
+ defaultWidth?: number;
141
215
  };
142
216
  }
217
+ /**
218
+ * Context provided in dynamic FDC3 Buttons
219
+ */
220
+ export interface Fdc3ButtonContext extends BaseContext {
221
+ /**
222
+ * The FDC3 Context
223
+ */
224
+ context: Fdc3Context | Fdc3CustomContext;
225
+ /**
226
+ * The FDC3 Intent
227
+ */
228
+ intent?: Fdc3IntentType | Fdc3CustomIntentType;
229
+ /**
230
+ * The row node which is the source of the context data
231
+ */
232
+ rowNode: IRowNode;
233
+ /**
234
+ * The row data which is the source of the context data
235
+ */
236
+ rowData: any;
237
+ /**
238
+ * Primary key value of row
239
+ */
240
+ primaryKeyValue: any;
241
+ }
242
+ export interface Fdc3AdaptableButton {
243
+ /**
244
+ * Unique id for the button
245
+ */
246
+ id: string;
247
+ /**
248
+ * Icon for Button - can be object or function that provides a `AdaptableIcon` object
249
+ */
250
+ icon?: '_defaultFdc3' | AdaptableIcon | ((button: Fdc3AdaptableButton, context: Fdc3ButtonContext) => AdaptableIcon);
251
+ /**
252
+ * Label for Button - can be string or function that provides string
253
+ */
254
+ label?: '_defaultFdc3' | string | ((button: Fdc3AdaptableButton, context: Fdc3ButtonContext) => string);
255
+ /**
256
+ * Tooltip for Button - can be string or function that provides string
257
+ */
258
+ tooltip?: '_defaultFdc3' | string | ((button: Fdc3AdaptableButton, context: Fdc3ButtonContext) => string);
259
+ /**
260
+ * Style for Button - can be object or function that provides a `ButtonStyle` object
261
+ */
262
+ buttonStyle?: ButtonStyle | ((button: Fdc3AdaptableButton, context: Fdc3ButtonContext) => ButtonStyle);
263
+ /**
264
+ * Function that disables / enables the button based on its evaluation result
265
+ */
266
+ disabled?: (button: Fdc3AdaptableButton, context: Fdc3ButtonContext) => boolean;
267
+ /**
268
+ * Function which sets whether Button is hidden
269
+ */
270
+ hidden?: (button: Fdc3AdaptableButton, context: Fdc3ButtonContext) => boolean;
271
+ }
143
272
  /**
144
273
  * TypeScript magic to convert all non-string property types to string (but keep the object structures), incl. nested objects.
145
274
  */
@@ -35,12 +35,12 @@ export interface FinancePluginOptions {
35
35
  /**
36
36
  * Custom FDC3 Intents
37
37
  */
38
- customFDC3Intents?: CustomFDC3Intent[];
38
+ customFDC3Intents?: CustomFDC3Intent_Depr[];
39
39
  };
40
40
  /**
41
41
  * Intents to which to subscribe.
42
42
  */
43
- availableFDC3Intents?: (FDC3Intent | CustomFDC3Intent)[];
43
+ availableFDC3Intents?: (FDC3Intent_Depr | CustomFDC3Intent_Depr)[];
44
44
  /**
45
45
  * Whether `FDC3MessageSent` Adaptable events should be automatically delegated to the FDC3 API (either via `fdc3.raiseIntent(...)` or `fdc3.broadcast(...)` )
46
46
  *
@@ -50,7 +50,7 @@ export interface FinancePluginOptions {
50
50
  /**
51
51
  * Called when an intent from `availableIntents` is raised.
52
52
  */
53
- onFDC3Intent?: (intent: FDC3Intent | CustomFDC3Intent, context: FDC3Context_DEPR, adaptableApi: AdaptableApi) => void;
53
+ onFDC3Intent?: (intent: FDC3Intent_Depr | CustomFDC3Intent_Depr, context: FDC3Context_DEPR, adaptableApi: AdaptableApi) => void;
54
54
  /**
55
55
  * Called when a context changes.
56
56
  */
@@ -59,7 +59,7 @@ export interface FinancePluginOptions {
59
59
  /**
60
60
  * An FDC3 Column - will raise FDC3 intents and broadcast FDC3 messages
61
61
  */
62
- export interface FDC3Column {
62
+ export interface FDC3Column_Depr {
63
63
  /**
64
64
  * Id of Column defined as FDC3
65
65
  */
@@ -95,12 +95,12 @@ export interface FDC3Column {
95
95
  /**
96
96
  * Returns a custom icon to display in the Raise Intent Context Menu Item;
97
97
  */
98
- intentIcon?: (intent: FDC3Intent | CustomFDC3Intent) => AdaptableIcon;
98
+ intentIcon?: (intent: FDC3Intent_Depr | CustomFDC3Intent_Depr) => AdaptableIcon;
99
99
  }
100
100
  /**
101
101
  * A Column which will be defined as an FDC3 Instrument
102
102
  */
103
- export interface InstrumentColumn extends FDC3Column {
103
+ export interface InstrumentColumn extends FDC3Column_Depr {
104
104
  /**
105
105
  * Column which holds a ticker value as instrument data
106
106
  */
@@ -149,7 +149,7 @@ export declare type InstrumentIntent = 'ViewChart' | 'ViewQuote' | 'ViewNews' |
149
149
  /**
150
150
  * A (Numeric) Column which will be defined as an FDC3 Position
151
151
  */
152
- export interface PositionColumn extends FDC3Column {
152
+ export interface PositionColumn extends FDC3Column_Depr {
153
153
  /**
154
154
  * Column which contains the Instrument information of the FDC3 Message
155
155
  */
@@ -171,7 +171,7 @@ export declare type PositionIntent = 'ViewChart' | 'ViewNews' | 'ViewAnalysis';
171
171
  * A (String) Column which will be defined as an FDC3 Contact
172
172
  * columnId and at least one other property is required
173
173
  */
174
- export interface ContactColumn extends FDC3Column {
174
+ export interface ContactColumn extends FDC3Column_Depr {
175
175
  /**
176
176
  * Column which holds the email address of a Contact
177
177
  */
@@ -196,7 +196,7 @@ export declare type ContactIntent = 'StartCall' | 'StartChat' | 'ViewContact';
196
196
  /**
197
197
  * A (String) Column which will be defined as an FDC3 Organization
198
198
  */
199
- export interface OrganizationColumn extends FDC3Column {
199
+ export interface OrganizationColumn extends FDC3Column_Depr {
200
200
  /**
201
201
  * Column which contains the LEI
202
202
  */
@@ -225,7 +225,7 @@ export declare type OrganizationIntent = 'ViewNews' | 'ViewAnalysis';
225
225
  /**
226
226
  * A (String) Column which will be defined as an FDC3 Country
227
227
  */
228
- export interface CountryColumn extends FDC3Column {
228
+ export interface CountryColumn extends FDC3Column_Depr {
229
229
  /**
230
230
  * Column which contains the ISOALPHA2 Standard
231
231
  */
@@ -250,11 +250,11 @@ export declare type CountryIntent = 'ViewChart';
250
250
  /**
251
251
  * A Column which will be defined as Custom FDC3 (can be any datatype)
252
252
  */
253
- export interface CustomFDC3Column extends FDC3Column {
253
+ export interface CustomFDC3Column extends FDC3Column_Depr {
254
254
  /**
255
255
  * Custom FDC3 Intents available to the column
256
256
  */
257
- intents: CustomFDC3Intent[];
257
+ intents: CustomFDC3Intent_Depr[];
258
258
  /**
259
259
  * Function which creates FDC3 context for the current column and row
260
260
  */
@@ -263,11 +263,11 @@ export interface CustomFDC3Column extends FDC3Column {
263
263
  /**
264
264
  * Full list of FDC3 Intents available - each FDC3 Column can use a subset
265
265
  */
266
- export declare type FDC3Intent = 'StartCall' | 'StartChat' | 'ViewAnalysis' | 'ViewChart' | 'ViewContact' | 'ViewInstrument' | 'ViewNews' | 'ViewQuote';
266
+ export declare type FDC3Intent_Depr = 'StartCall' | 'StartChat' | 'ViewAnalysis' | 'ViewChart' | 'ViewContact' | 'ViewInstrument' | 'ViewNews' | 'ViewQuote';
267
267
  /**
268
268
  * Custom FDC3 Intent - just a string value
269
269
  */
270
- export declare type CustomFDC3Intent = string;
270
+ export declare type CustomFDC3Intent_Depr = string;
271
271
  /**
272
272
  * Context passed into Raise FDC3 Intent functions (e.g. get label)
273
273
  */
@@ -275,7 +275,7 @@ export interface RaiseFDC3IntentContext extends ContextMenuContext {
275
275
  /**
276
276
  * FDC3 Intent that was raised
277
277
  */
278
- intent: FDC3Intent | CustomFDC3Intent;
278
+ intent: FDC3Intent_Depr | CustomFDC3Intent_Depr;
279
279
  }
280
280
  /**
281
281
  * Function that handles FDC3 Context
@@ -288,7 +288,7 @@ export interface FDC3DesktopAgent {
288
288
  /**
289
289
  * Raises an Intent
290
290
  */
291
- raiseIntent: (intent: FDC3Intent, context: FDC3Context_DEPR) => void;
291
+ raiseIntent: (intent: FDC3Intent_Depr, context: FDC3Context_DEPR) => void;
292
292
  /**
293
293
  * Broadcasts an FDC3 Message
294
294
  */
@@ -300,10 +300,10 @@ export interface FDC3DesktopAgent {
300
300
  /**
301
301
  * Adds an FDC3 Intent Listener
302
302
  */
303
- addIntentListener: (intent: FDC3Intent | CustomFDC3Intent, listener: (context: FDC3Context_DEPR) => void) => void;
303
+ addIntentListener: (intent: FDC3Intent_Depr | CustomFDC3Intent_Depr, listener: (context: FDC3Context_DEPR) => void) => void;
304
304
  /**
305
- * Adds an FDC3 Context Listener
306
- */
305
+ * Adds an FDC3 Context Listener
306
+ */
307
307
  addContextListener: (contextType: string | null, handler: FDC3ContextHandler) => {
308
308
  unsubscribe: () => void;
309
309
  };
@@ -243,11 +243,6 @@ export interface ColumnApi {
243
243
  * Retrieves current Primary Key Column in AdapTable
244
244
  */
245
245
  getPrimaryKeyColumn(): AdaptableColumn;
246
- /**
247
- * Checks if the Column with given ColumnId is an ActionRowButton column
248
- * @param columnId ColumnId to Check
249
- */
250
- isActionRowButtonColumn(columnId: string): boolean;
251
246
  /**
252
247
  * Returns the default Aggregation Function for a Column
253
248
  * @param columnId Column to Check
@@ -1,7 +1,7 @@
1
- import { Fdc3Context, Fdc3ContextType } from '../PredefinedConfig/Common/Fdc3Context';
1
+ import { Fdc3Context, Fdc3ContextType, Fdc3CustomContextType } from '../PredefinedConfig/Common/Fdc3Context';
2
2
  import { IRowNode } from '@ag-grid-community/core';
3
3
  import { DesktopAgent, IntentResolution, AppIdentifier } from '@finos/fdc3';
4
- import { Fdc3IntentType } from '../PredefinedConfig/Common/Fdc3Intent';
4
+ import { Fdc3CustomIntentType, Fdc3IntentType } from '../PredefinedConfig/Common/Fdc3Intent';
5
5
  /**
6
6
  * Provides run-time access to Alert function and associated State
7
7
  */
@@ -14,19 +14,19 @@ export interface Fdc3Api {
14
14
  * Returns the human-friendly label for the given Context Type
15
15
  * @param contextType - The FDC3 Context Type
16
16
  */
17
- getContextLabel(contextType: Fdc3ContextType): string;
17
+ getContextLabel(contextType: Fdc3ContextType | Fdc3CustomContextType): string;
18
18
  /**
19
19
  * Builds FDC3 Context Data based on the given Context Type and Row Node
20
20
  * @param contextType - The FDC3 Context Type
21
21
  * @param rowNode - The Row Node
22
22
  */
23
- buildContextDataFromRow(contextType: Fdc3ContextType, rowNode: IRowNode): Fdc3Context;
23
+ buildContextDataFromRow(contextType: Fdc3ContextType | Fdc3CustomContextType, rowNode: IRowNode): Fdc3Context;
24
24
  /**
25
25
  * Builds FDC3 Context Data based on the given Context Type and the Row Node with the given Primary Key Value
26
26
  * @param contextType - The FDC3 Context Type
27
27
  * @param primaryKeyValue - The Primary Key Value
28
28
  */
29
- buildContextDataForPrimaryKey(contextType: Fdc3ContextType, primaryKeyValue: string | number): Fdc3Context | undefined;
29
+ buildContextDataForPrimaryKey(contextType: Fdc3ContextType | Fdc3CustomContextType, primaryKeyValue: string | number): Fdc3Context | undefined;
30
30
  /**
31
31
  * Returns the FDC3 Context Type for the given Intent
32
32
  * @param intent - The FDC3 Intent
@@ -45,7 +45,7 @@ export interface Fdc3Api {
45
45
  * @param contextType - The FDC3 Context Type
46
46
  * @param appIdentifier - The App Identifier
47
47
  */
48
- raiseIntentFromRow(rowNode: IRowNode, intent: Fdc3IntentType, contextType: Fdc3ContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution>;
48
+ raiseIntentFromRow(rowNode: IRowNode, intent: Fdc3IntentType | Fdc3CustomIntentType, contextType: Fdc3ContextType | Fdc3CustomContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution>;
49
49
  /**
50
50
  * Raises an Intent with the given Context from the given Row Node with the given Primary Key Value
51
51
  * @param primaryKeyValue - The Primary Key Value
@@ -53,31 +53,39 @@ export interface Fdc3Api {
53
53
  * @param contextType - The FDC3 Context Type
54
54
  * @param appIdentifier - The App Identifier
55
55
  */
56
- raiseIntentFromPrimaryKey(primaryKeyValue: string | number, intent: Fdc3IntentType, contextType: Fdc3ContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution> | undefined;
56
+ raiseIntentFromPrimaryKey(primaryKeyValue: string | number, intent: Fdc3IntentType | Fdc3CustomIntentType, contextType: Fdc3ContextType | Fdc3CustomContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution> | undefined;
57
57
  /**
58
58
  * Finds and raises an Intent based on the given Context from the given Row Node
59
59
  * @param rowNode - The Row Node
60
60
  * @param contextType - The FDC3 Context Type
61
61
  * @param appIdentifier - The App Identifier
62
62
  */
63
- raiseIntentForContextFromRow(rowNode: IRowNode, contextType: Fdc3ContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution>;
63
+ raiseIntentForContextFromRow(rowNode: IRowNode, contextType: Fdc3ContextType | Fdc3CustomContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution>;
64
64
  /**
65
65
  * Finds and raises an Intent based on the given Context from the given Row Node with the given Primary Key Value
66
66
  * @param primaryKeyValue - The Primary Key Value
67
67
  * @param contextType - The FDC3 Context Type
68
68
  * @param appIdentifier - The App Identifier
69
69
  */
70
- raiseIntentForContextFromPrimaryKey(primaryKeyValue: string | number, contextType: Fdc3ContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution> | undefined;
70
+ raiseIntentForContextFromPrimaryKey(primaryKeyValue: string | number, contextType: Fdc3ContextType | Fdc3CustomContextType, appIdentifier?: AppIdentifier): Promise<IntentResolution> | undefined;
71
71
  /**
72
72
  * Broadcasts the given Context from the given Row Node
73
73
  * @param rowNode - The Row Node
74
74
  * @param contextType - The FDC3 Context Type
75
75
  */
76
- broadcastFromRow(rowNode: IRowNode, contextType: Fdc3ContextType): Promise<void>;
76
+ broadcastFromRow(rowNode: IRowNode, contextType: Fdc3ContextType | Fdc3CustomContextType): Promise<void>;
77
77
  /**
78
78
  * Broadcasts the given Context from the given Row Node with the given Primary Key Value
79
79
  * @param primaryKeyValue - The Primary Key Value
80
80
  * @param contextType - The FDC3 Context Type
81
81
  */
82
- broadcastFromPrimaryKey(primaryKeyValue: string | number, contextType: Fdc3ContextType): Promise<void> | undefined;
82
+ broadcastFromPrimaryKey(primaryKeyValue: string | number, contextType: Fdc3ContextType | Fdc3CustomContextType): Promise<void> | undefined;
83
+ /**
84
+ * Checks if the given Context Type is a FDC3 standard Context Type
85
+ */
86
+ isStandardContextType(contextType: string): boolean;
87
+ /**
88
+ * Checks if the given Intent is a FDC3 standard Intent Type
89
+ */
90
+ isStandardIntentType(intentType: string): boolean;
83
91
  }
@@ -1,5 +1,5 @@
1
1
  import { IRowNode } from '@ag-grid-community/core';
2
- import { ContactColumn, ContactIntent, CountryColumn, CustomFDC3Column, CustomFDC3Intent, FDC3Intent, FinancePluginOptions, InstrumentColumn, InstrumentIntent, OrganizationColumn, PositionColumn, PositionIntent } from '../AdaptableOptions/FinancePluginOptions';
2
+ import { ContactColumn, ContactIntent, CountryColumn, CustomFDC3Column, CustomFDC3Intent_Depr, FDC3Intent_Depr, FinancePluginOptions, InstrumentColumn, InstrumentIntent, OrganizationColumn, PositionColumn, PositionIntent } from '../AdaptableOptions/FinancePluginOptions';
3
3
  import { ContactContextDepr, ContactListContextDepr, ContextDataDepr, CountryContextDepr, FDC3Context_DEPR, InstrumentContextDepr, InstrumentListContextDepr, OrganizationContextDepr, PortfolioContextDepr, PositionContextDepr } from '../types';
4
4
  /**
5
5
  * Provides run-time access to the Finance Plugin
@@ -106,7 +106,7 @@ export interface FinanceApi {
106
106
  * @param context context for Event
107
107
  * @param intent FDC3 Intent to Raise
108
108
  */
109
- publishRaiseFDC3IntentEvent(context: FDC3Context_DEPR, intent: FDC3Intent | CustomFDC3Intent): void;
109
+ publishRaiseFDC3IntentEvent(context: FDC3Context_DEPR, intent: FDC3Intent_Depr | CustomFDC3Intent_Depr): void;
110
110
  /**
111
111
  * Checks whether the Instrument Intent is valid for Instrument Lists
112
112
  * @param intent FDC3 Intent to check
@@ -58,7 +58,6 @@ export declare class ColumnApiImpl extends ApiBase implements ColumnApi {
58
58
  getExportableColumns(): AdaptableColumn[];
59
59
  private logMissingColumnWarning;
60
60
  getPrimaryKeyColumn(): AdaptableColumn<any>;
61
- isActionRowButtonColumn(columnId: string): boolean;
62
61
  getDefaultAggFunc(columnId: string): string;
63
62
  isSpecialColumn(columnId: string): boolean;
64
63
  }
@@ -315,9 +315,6 @@ class ColumnApiImpl extends ApiBase_1.ApiBase {
315
315
  getPrimaryKeyColumn() {
316
316
  return this.getColumnWithColumnId(this.adaptable.adaptableOptions.primaryKey);
317
317
  }
318
- isActionRowButtonColumn(columnId) {
319
- return columnId === GeneralConstants_1.ADAPTABLE_ROW_ACTION_BUTTONS;
320
- }
321
318
  getDefaultAggFunc(columnId) {
322
319
  var _a, _b, _c;
323
320
  const abColumn = this.getColumnWithColumnId(columnId);
@@ -22,5 +22,7 @@ export declare class Fdc3ApiImpl extends ApiBase implements Fdc3Api {
22
22
  broadcastFromRow(rowNode: IRowNode, contextType: Fdc3ContextType): Promise<void>;
23
23
  broadcastFromPrimaryKey(primaryKeyValue: string | number, contextType: Fdc3ContextType): Promise<void> | undefined;
24
24
  getContextLabel(contextType: Fdc3ContextType): string;
25
+ isStandardContextType(contextType: string): boolean;
26
+ isStandardIntentType(intentType: string): boolean;
25
27
  private getFdc3Service;
26
28
  }
@@ -72,6 +72,14 @@ class Fdc3ApiImpl extends ApiBase_1.ApiBase {
72
72
  var _a;
73
73
  return (_a = Fdc3Context_1.ContextLabels[contextType]) !== null && _a !== void 0 ? _a : contextType;
74
74
  }
75
+ isStandardContextType(contextType) {
76
+ // @ts-ignore
77
+ return Fdc3Context_1.StandardContextTypes.includes(contextType);
78
+ }
79
+ isStandardIntentType(intentType) {
80
+ // @ts-ignore
81
+ return Fdc3Intent_1.Fdc3StandardIntents.includes(intentType);
82
+ }
75
83
  getFdc3Service() {
76
84
  return this.adaptable.api.internalApi.getFdc3Service();
77
85
  }
@@ -57,7 +57,7 @@ class ActionRowInternalApi extends ApiBase_1.ApiBase {
57
57
  // if there is NO rowNode, do NOT display the non-editable fields as they will be empty
58
58
  return !!rowNode || this.isColumnEditable(column, rowNode);
59
59
  })
60
- .filter((column) => !this.getAdaptableApi().columnApi.isActionRowButtonColumn(column.columnId));
60
+ .filter((column) => !this.getAdaptableApi().columnApi.internalApi.isActionRowButtonColumn(column.columnId));
61
61
  return relevantColumns.map((column) => this.buildFormField(type, column, rowNode));
62
62
  }
63
63
  buidActionRowButtons(type, rowNode) {
@@ -6,7 +6,7 @@ import { ModuleParams } from '../../View/Components/SharedProps/ModuleViewPopupP
6
6
  import { AdaptableMenuItem } from '../../PredefinedConfig/Common/Menu';
7
7
  import { AdaptableModule } from '../../PredefinedConfig/Common/Types';
8
8
  import { CellDataChangedInfo } from '../../PredefinedConfig/Common/CellDataChangedInfo';
9
- import { AdaptableIcon, AdaptableObjectLookupCriteria, AdaptableQuery, AdaptableState, BaseContext } from '../../types';
9
+ import { ActionColumn, ActionColumnContext, AdaptableIcon, AdaptableObjectLookupCriteria, AdaptableQuery, AdaptableState, BaseContext } from '../../types';
10
10
  import { IValidationService } from '../../Utilities/Services/Interface/IValidationService';
11
11
  import { IModuleService } from '../../Utilities/Services/Interface/IModuleService';
12
12
  import { IReportService } from '../../Utilities/Services/Interface/IReportService';
@@ -26,6 +26,7 @@ import { IModuleCollection } from '../../Strategy/Interface/IModule';
26
26
  import { AdaptableObjectTag, AdaptableObjectWithScope } from '../../PredefinedConfig/Common/AdaptableObject';
27
27
  import { IRowEditService } from '../../Utilities/Services/Interface/IRowEditService';
28
28
  import { Fdc3Service } from '../../Utilities/Services/Fdc3Service';
29
+ import { ColDef } from '@ag-grid-community/core/dist/esm/es6/entities/colDef';
29
30
  export declare class AdaptableInternalApi extends ApiBase {
30
31
  getSystemState(): SystemState;
31
32
  showPopupConfirmation(confirmation: UIConfirmation): void;
@@ -111,4 +112,8 @@ export declare class AdaptableInternalApi extends ApiBase {
111
112
  setValueUsingField(rowData: Record<string, any>, columnValueKey: string, newValue: any): Record<string, any>;
112
113
  findAdaptableObjectsByLookupCriteria<T extends AdaptableObjectWithScope>({ scope, tag, ids }: AdaptableObjectLookupCriteria, specificAdaptableObjects: T[]): T[];
113
114
  buildBaseContext(): BaseContext;
115
+ getActionButtonsAndActionColumn(colDef: ColDef): {
116
+ actionButtons: AdaptableButton<ActionColumnContext>[];
117
+ actionColumn: ActionColumn | undefined;
118
+ };
114
119
  }