@adaptabletools/adaptable 22.0.0-canary.5 → 22.0.0-canary.7

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 (122) hide show
  1. package/index.css +0 -3
  2. package/index.css.map +1 -1
  3. package/package.json +1 -1
  4. package/src/AdaptableOptions/CustomSortOptions.d.ts +1 -2
  5. package/src/AdaptableState/AlertState.d.ts +6 -3
  6. package/src/AdaptableState/ChartingState.d.ts +5 -5
  7. package/src/AdaptableState/Common/AdaptableObject.d.ts +4 -9
  8. package/src/AdaptableState/Common/BaseContext.d.ts +2 -0
  9. package/src/AdaptableState/Common/ColumnHighlightInfo.d.ts +18 -0
  10. package/src/AdaptableState/Common/ColumnHighlightInfo.js +1 -0
  11. package/src/AdaptableState/Common/NamedObject.d.ts +10 -0
  12. package/src/AdaptableState/Common/NamedObject.js +1 -0
  13. package/src/AdaptableState/Common/RowSummary.d.ts +1 -1
  14. package/src/AdaptableState/Common/Schedule.d.ts +7 -3
  15. package/src/AdaptableState/Common/SuspendableObject.d.ts +10 -0
  16. package/src/AdaptableState/Common/SuspendableObject.js +1 -0
  17. package/src/AdaptableState/CustomSortState.d.ts +6 -2
  18. package/src/AdaptableState/DashboardState.d.ts +3 -3
  19. package/src/AdaptableState/ExportState.d.ts +3 -3
  20. package/src/AdaptableState/FlashingCellState.d.ts +6 -2
  21. package/src/AdaptableState/FormatColumnState.d.ts +6 -2
  22. package/src/AdaptableState/InternalState.d.ts +2 -0
  23. package/src/AdaptableState/LayoutState.d.ts +3 -3
  24. package/src/AdaptableState/NamedQueryState.d.ts +3 -3
  25. package/src/AdaptableState/PlusMinusState.d.ts +6 -2
  26. package/src/AdaptableState/ShortcutState.d.ts +6 -2
  27. package/src/AdaptableState/StyledColumnState.d.ts +1 -1
  28. package/src/AdaptableState/ThemeState.d.ts +3 -3
  29. package/src/Api/AlertApi.d.ts +6 -0
  30. package/src/Api/CustomSortApi.d.ts +6 -0
  31. package/src/Api/FlashingCellApi.d.ts +6 -0
  32. package/src/Api/FormatColumnApi.d.ts +10 -4
  33. package/src/Api/GridApi.d.ts +18 -3
  34. package/src/Api/Implementation/AlertApiImpl.d.ts +1 -0
  35. package/src/Api/Implementation/AlertApiImpl.js +3 -0
  36. package/src/Api/Implementation/ChartingApiImpl.js +2 -2
  37. package/src/Api/Implementation/CustomSortApiImpl.d.ts +1 -0
  38. package/src/Api/Implementation/CustomSortApiImpl.js +3 -0
  39. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +1 -0
  40. package/src/Api/Implementation/FlashingCellApiImpl.js +3 -0
  41. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +6 -5
  42. package/src/Api/Implementation/FormatColumnApiImpl.js +6 -5
  43. package/src/Api/Implementation/GridApiImpl.d.ts +4 -0
  44. package/src/Api/Implementation/GridApiImpl.js +15 -1
  45. package/src/Api/Implementation/LayoutApiImpl.js +1 -1
  46. package/src/Api/Implementation/NamedQueryApiImpl.js +2 -2
  47. package/src/Api/Implementation/PlusMinusApiImpl.d.ts +1 -0
  48. package/src/Api/Implementation/PlusMinusApiImpl.js +3 -0
  49. package/src/Api/Implementation/ScheduleApiImpl.d.ts +1 -0
  50. package/src/Api/Implementation/ScheduleApiImpl.js +3 -0
  51. package/src/Api/Implementation/ShortcutApiImpl.d.ts +1 -0
  52. package/src/Api/Implementation/ShortcutApiImpl.js +3 -0
  53. package/src/Api/Implementation/SystemStatusApiImpl.js +4 -4
  54. package/src/Api/Internal/CalculatedColumnInternalApi.js +2 -2
  55. package/src/Api/Internal/FreeTextColumnInternalApi.js +2 -2
  56. package/src/Api/Internal/LayoutInternalApi.js +1 -1
  57. package/src/Api/Internal/NamedQueryInternalApi.js +4 -4
  58. package/src/Api/PlusMinusApi.d.ts +6 -0
  59. package/src/Api/ScheduleApi.d.ts +6 -0
  60. package/src/Api/ShortcutApi.d.ts +6 -0
  61. package/src/Redux/ActionsReducers/FormatColumnRedux.d.ts +8 -0
  62. package/src/Redux/ActionsReducers/FormatColumnRedux.js +15 -0
  63. package/src/Redux/ActionsReducers/InternalRedux.d.ts +15 -0
  64. package/src/Redux/ActionsReducers/InternalRedux.js +36 -0
  65. package/src/Redux/Store/AdaptableStore.js +39 -16
  66. package/src/Strategy/BulkUpdateModule.js +8 -8
  67. package/src/Strategy/PlusMinusModule.js +1 -1
  68. package/src/Strategy/QuickSearchModule.js +1 -1
  69. package/src/Strategy/SettingsPanelModule.js +11 -7
  70. package/src/Strategy/SmartEditModule.js +10 -10
  71. package/src/Utilities/Services/DataService.js +1 -1
  72. package/src/Utilities/Services/Fdc3Service.js +4 -4
  73. package/src/Utilities/Services/ModuleService.js +1 -3
  74. package/src/Utilities/Services/ThemeService.js +2 -6
  75. package/src/Utilities/Services/ValidationService.js +1 -1
  76. package/src/Utilities/logDeprecation.js +3 -4
  77. package/src/View/Alert/Utilities/getDefaultAlertDefinition.d.ts +2 -2
  78. package/src/View/Alert/Wizard/isValidAlertRules.js +1 -1
  79. package/src/View/CalculatedColumn/Wizard/CalculatedColumnDefinitionWizardSection.js +2 -2
  80. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +2 -2
  81. package/src/View/CalculatedColumn/Wizard/CalculatedColumnSettingsWizardSection.js +1 -1
  82. package/src/View/Charting/ChartingWizard/AgChargingWizard/SettingsSection.js +2 -2
  83. package/src/View/Charting/ChartingWizard/ExternalChartingWizard/SettingsSection.js +2 -2
  84. package/src/View/Components/CellPopup/index.js +1 -1
  85. package/src/View/Components/ColumnFilter/FloatingFilter.js +41 -3
  86. package/src/View/Components/ColumnFilter/components/ColumnFilterMenu.js +54 -2
  87. package/src/View/Components/EntityRulesEditor/Utilities.js +5 -5
  88. package/src/View/Components/NewScopeComponent.js +3 -3
  89. package/src/View/Components/Popups/AdaptablePopupConfirmation.js +1 -1
  90. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +3 -3
  91. package/src/View/CustomSort/Wizard/CustomSortValuesWizardSection.js +1 -1
  92. package/src/View/FlashingCell/Wizard/isValidFlashingCellRules.js +1 -1
  93. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.d.ts +1 -1
  94. package/src/View/FreeTextColumn/Wizard/FreeTextColumnSettingsWizardSection.js +3 -3
  95. package/src/View/Layout/LayoutViewPanel.js +1 -1
  96. package/src/View/Layout/Wizard/sections/AggregationsSection.js +1 -1
  97. package/src/View/Layout/Wizard/sections/FilterSection.js +1 -1
  98. package/src/View/Layout/Wizard/sections/GridFilterSection.js +1 -1
  99. package/src/View/Layout/Wizard/sections/PivotAggregationsSection.js +3 -3
  100. package/src/View/Layout/Wizard/sections/RowSummarySection.js +1 -1
  101. package/src/View/NamedQuery/Wizard/NamedQueryExpressionWizardSection.js +2 -2
  102. package/src/View/PlusMinus/Wizard/PlusMinusSettingsWizardSection.js +5 -5
  103. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/isSettingsValid.d.ts +1 -1
  104. package/src/View/Schedule/Wizard/ScheduleSettingsWizard/isSettingsValid.js +11 -11
  105. package/src/View/StateManagement/handleExportState.js +1 -1
  106. package/src/View/StyledColumn/Wizard/StyledColumnWizardColumnSection.js +1 -1
  107. package/src/agGrid/AdaptableAgGrid.js +47 -51
  108. package/src/agGrid/AgGridAdapter.js +8 -8
  109. package/src/agGrid/AgGridColumnAdapter.d.ts +1 -0
  110. package/src/agGrid/AgGridColumnAdapter.js +15 -4
  111. package/src/agGrid/AgGridExportAdapter.js +5 -5
  112. package/src/agGrid/AgGridThemeAdapter.js +2 -2
  113. package/src/components/OverlayTrigger/index.js +1 -1
  114. package/src/components/Select/Select.js +78 -15
  115. package/src/env.js +2 -2
  116. package/src/metamodel/adaptable.metamodel.d.ts +25 -18
  117. package/src/metamodel/adaptable.metamodel.js +1 -1
  118. package/src/migration/AdaptableUpgradeHelper.js +2 -2
  119. package/src/migration/VersionUpgrade17.js +4 -4
  120. package/src/migration/VersionUpgrade20.js +4 -4
  121. package/src/types.d.ts +2 -2
  122. package/tsconfig.esm.tsbuildinfo +1 -1
@@ -4,7 +4,7 @@ import { AdaptableColumnPredicate, ColumnScope } from '../types';
4
4
  import { XOR } from '../Utilities/Extensions/TypeExtensions';
5
5
  import { AdaptableBooleanQuery } from './Common/AdaptableQuery';
6
6
  import { TypeHint } from './Common/Types';
7
- import { NamedObject, SuspendableObject } from '../../types';
7
+ import { AdaptableObject, SuspendableObject } from '../../types';
8
8
  /**
9
9
  * Adaptable State Section for Flashing Cell module
10
10
  */
@@ -33,7 +33,11 @@ export type FlashTargetTypes = 'row' | 'cell' | 'aggFuncCell';
33
33
  /**
34
34
  * The Flashing Cell Definition
35
35
  */
36
- export interface FlashingCellDefinition extends NamedObject, SuspendableObject {
36
+ export interface FlashingCellDefinition extends AdaptableObject, SuspendableObject {
37
+ /**
38
+ * Name of the Flashing Cell Definition
39
+ */
40
+ Name: string;
37
41
  /**
38
42
  * Which Columns, DataTypes or Column Types can Flash
39
43
  */
@@ -7,7 +7,7 @@ import { XOR } from '../Utilities/Extensions/TypeExtensions';
7
7
  import { TypeHint } from './Common/Types';
8
8
  import { AdaptableBooleanQuery, LayoutExtendedConfig } from '../types';
9
9
  import { AdaptableColumnPredicate } from './Common/AdaptablePredicate';
10
- import { NamedObject, SuspendableObject } from './Common/AdaptableObject';
10
+ import { SuspendableObject } from '../types';
11
11
  /**
12
12
  * Adaptable State Section for Format Column Module
13
13
  */
@@ -20,7 +20,11 @@ export interface FormatColumnState extends BaseState {
20
20
  /**
21
21
  * Object used in Format Column function
22
22
  */
23
- export interface FormatColumn extends SuspendableObject, NamedObject {
23
+ export interface FormatColumn extends SuspendableObject {
24
+ /**
25
+ * Name of the Format Column definition
26
+ */
27
+ Name: string;
24
28
  /**
25
29
  * Where Format will be applied: whole Row, some Columns, or Columns of DataType
26
30
  */
@@ -15,6 +15,7 @@ import { SelectedCellInfo } from './Selection/SelectedCellInfo';
15
15
  import { SelectedRowInfo } from './Selection/SelectedRowInfo';
16
16
  import { AdaptableMenuItem } from './Common/Menu';
17
17
  import { CellHighlightInfo } from './Common/CellHighlightInfo';
18
+ import { ColumnHighlightInfo } from './Common/ColumnHighlightInfo';
18
19
  import { RowHighlightInfo } from './Common/RowHighlightInfo';
19
20
  export type { IPushPullReport, IPushPullDomain };
20
21
  export type { OpenFinReport };
@@ -31,6 +32,7 @@ export interface InternalState extends IPushPullState, OpenFinState {
31
32
  SelectedCellInfo: SelectedCellInfo;
32
33
  SelectedRowInfo: SelectedRowInfo;
33
34
  CellHighlightInfo: CellHighlightInfo[];
35
+ ColumnHighlightInfo: ColumnHighlightInfo[];
34
36
  RowHighlightInfo: RowHighlightInfo[];
35
37
  SettingsPanelModuleEntries: AdaptableMenuItem[];
36
38
  AdaptableAlerts: AdaptableAlert[];
@@ -1,5 +1,5 @@
1
1
  import { BaseState } from './BaseState';
2
- import { AdaptableObject, NamedObject } from './Common/AdaptableObject';
2
+ import { AdaptableObject } from '../types';
3
3
  import { ColumnSort } from './Common/ColumnSort';
4
4
  import { ColumnFilter, GridFilter } from '../types';
5
5
  import { PivotAggregationColumns, TableAggregationColumns } from './Common/AggregationColumns';
@@ -30,9 +30,9 @@ export interface LayoutState extends BaseState {
30
30
  /**
31
31
  * Base object for both Table and Pivot Layouts
32
32
  */
33
- export interface LayoutBase extends NamedObject {
33
+ export interface LayoutBase extends AdaptableObject {
34
34
  /**
35
- * Name of Layout as will appear in Layout toolbar and tool panel
35
+ * Name of the Layout as it appears in the Layout toolbar and tool panel
36
36
  */
37
37
  Name: string;
38
38
  /**
@@ -1,6 +1,6 @@
1
1
  import { BaseState } from './BaseState';
2
2
  import { AdaptableBooleanQuery } from './Common/AdaptableQuery';
3
- import { NamedObject } from './Common/AdaptableObject';
3
+ import { AdaptableObject } from './Common/AdaptableObject';
4
4
  /**
5
5
  * Adaptable State Section for Named Query Module
6
6
  */
@@ -13,9 +13,9 @@ export interface NamedQueryState extends BaseState {
13
13
  /**
14
14
  * Defines a Query which can be referenced in AdaptableQL Expressions
15
15
  */
16
- export interface NamedQuery extends AdaptableBooleanQuery, NamedObject {
16
+ export interface NamedQuery extends AdaptableBooleanQuery, AdaptableObject {
17
17
  /**
18
- * Name of the Query - how it will appear in the Expression
18
+ * Name of the Query, used to reference it in AdaptableQL Expressions
19
19
  */
20
20
  Name: string;
21
21
  }
@@ -1,7 +1,7 @@
1
1
  import { BaseState } from './BaseState';
2
2
  import { ColumnScope } from './Common/ColumnScope';
3
3
  import { AdaptableBooleanQuery } from './Common/AdaptableQuery';
4
- import { NamedObject, SuspendableObject } from './Common/AdaptableObject';
4
+ import { SuspendableObject } from '../types';
5
5
  /**
6
6
  * Adaptable State Section for Plus Minus Module
7
7
  */
@@ -14,7 +14,11 @@ export interface PlusMinusState extends BaseState {
14
14
  /**
15
15
  * Defines a Plus Minus Rule - used in the Plus Minus Module
16
16
  */
17
- export interface PlusMinusNudge extends NamedObject, SuspendableObject {
17
+ export interface PlusMinusNudge extends SuspendableObject {
18
+ /**
19
+ * Name of the Plus Minus Nudge rule
20
+ */
21
+ Name: string;
18
22
  /**
19
23
  * Where Rule is applied
20
24
  */
@@ -1,6 +1,6 @@
1
1
  import { BaseState } from './BaseState';
2
2
  import { ColumnScope } from './Common/ColumnScope';
3
- import { NamedObject, SuspendableObject } from './Common/AdaptableObject';
3
+ import { SuspendableObject } from '../types';
4
4
  /**
5
5
  * Adaptable State Section for Shortcut Module
6
6
  */
@@ -17,7 +17,11 @@ export type ShortcutScopeDataType = 'number';
17
17
  /**
18
18
  * Used to define a Shortcut as used in Shortcut State
19
19
  */
20
- export interface Shortcut extends NamedObject, SuspendableObject {
20
+ export interface Shortcut extends SuspendableObject {
21
+ /**
22
+ * Name of the Shortcut
23
+ */
24
+ Name: string;
21
25
  /**
22
26
  * Numeric Columns where Shortcut is applied
23
27
  */
@@ -3,7 +3,7 @@ import { AdaptablePredicate, AdaptableStyle, AdaptableBooleanQuery, AdaptableIco
3
3
  import { TypeHint } from './Common/Types';
4
4
  import { RowScope } from './Common/RowScope';
5
5
  import { AgSparklineOptions } from 'ag-charts-types';
6
- import { SuspendableObject } from './Common/AdaptableObject';
6
+ import { SuspendableObject } from './Common/SuspendableObject';
7
7
  /**
8
8
  * Adaptable State Section for Styled Column Module
9
9
  */
@@ -1,5 +1,5 @@
1
1
  import { BaseState } from './BaseState';
2
- import { NamedObject } from './Common/AdaptableObject';
2
+ import { AdaptableObject } from './Common/AdaptableObject';
3
3
  import { TypeHint } from './Common/Types';
4
4
  /**
5
5
  * Theme section of Adaptable State
@@ -21,9 +21,9 @@ export interface ThemeState extends BaseState {
21
21
  /**
22
22
  * Used for creating User (i.e. Custom) Themes
23
23
  */
24
- export interface AdaptableTheme extends NamedObject {
24
+ export interface AdaptableTheme extends AdaptableObject {
25
25
  /**
26
- * Name of the Theme
26
+ * Name of the Theme as it appears in the Theme toolbar and tool panel
27
27
  */
28
28
  Name: string;
29
29
  /**
@@ -34,6 +34,12 @@ export interface AlertApi {
34
34
  * @returns alert definition
35
35
  */
36
36
  getAlertDefinitionById(id: AlertDefinition['Uuid'], config?: LayoutExtendedConfig): AlertDefinition;
37
+ /**
38
+ * Retrieves an Alert Definition by its Name
39
+ * @param name Name of the Alert Definition
40
+ * @returns Alert Definition or undefined if not found
41
+ */
42
+ getAlertDefinitionByName(name: string): AlertDefinition | undefined;
37
43
  /**
38
44
  * Adds given Alert Definition to Adaptable State
39
45
  * @param alertDefinition AlertDefinition to add
@@ -19,6 +19,12 @@ export interface CustomSortApi {
19
19
  * @returns Custom Sort
20
20
  */
21
21
  getCustomSortById(id: CustomSort['Uuid'], config?: LayoutExtendedConfig): CustomSort;
22
+ /**
23
+ * Retrieves a Custom Sort by its Name
24
+ * @param name Name of the Custom Sort
25
+ * @returns Custom Sort or undefined if not found
26
+ */
27
+ getCustomSortByName(name: string): CustomSort | undefined;
22
28
  /**
23
29
  * Retrieves all Custom Sorts in Adaptable State that are currently applied
24
30
  * @returns Custom Sorts
@@ -23,6 +23,12 @@ export interface FlashingCellApi {
23
23
  * @returns Flashing Cell Definition
24
24
  */
25
25
  getFlashingCellDefinitionById(id: FlashingCellDefinition['Uuid'], config?: LayoutExtendedConfig): FlashingCellDefinition;
26
+ /**
27
+ * Retrieves a Flashing Cell Definition by its Name
28
+ * @param name Name of the Flashing Cell Definition
29
+ * @returns Flashing Cell Definition or undefined if not found
30
+ */
31
+ getFlashingCellDefinitionByName(name: string): FlashingCellDefinition | undefined;
26
32
  /**
27
33
  * Retrieves all active (non-suspended) cell Definitions in Flashing Cell State
28
34
  * @returns flashing cell definitions
@@ -19,6 +19,12 @@ export interface FormatColumnApi {
19
19
  * @returns format column
20
20
  */
21
21
  getFormatColumnByUuId(id: FormatColumn['Uuid'], config?: FormatColumnConfig): FormatColumn;
22
+ /**
23
+ * Retrieves a Format Column by its Name
24
+ * @param name Name of the Format Column
25
+ * @returns Format Column or undefined if not found
26
+ */
27
+ getFormatColumnByName(name: string): FormatColumn | undefined;
22
28
  /**
23
29
  * Retrieves all active (not-suspended) Format Columns in Adaptable State
24
30
  * @returns format columns
@@ -41,10 +47,10 @@ export interface FormatColumnApi {
41
47
  */
42
48
  addFormatColumn(formatColumn: FormatColumn): FormatColumn;
43
49
  /**
44
- * Adds Format Columns to Format Column State
45
- * @param formatColumn Format Columns to Add
46
- * @returns format columns
47
- */
50
+ * Adds Format Columns to Format Column State
51
+ * @param formatColumn Format Columns to Add
52
+ * @returns format columns
53
+ */
48
54
  addFormatColumns(formatColumns: FormatColumn[]): FormatColumn[];
49
55
  /**
50
56
  * Edits the Format Column
@@ -13,6 +13,7 @@ import { RowsHighlightInfo } from '../AdaptableState/Common/RowsHighlightInfo';
13
13
  import { TransposeConfig } from '../AdaptableState/Common/TransposeConfig';
14
14
  import { AdaptableVariant } from '../AdaptableInterfaces/IAdaptable';
15
15
  import { InternalState } from '../AdaptableState/InternalState';
16
+ import { ColumnHighlightInfo } from '../AdaptableState/Common/ColumnHighlightInfo';
16
17
  /**
17
18
  * Provides access to important properties and functionalities of AdapTable e.g. sorting, selected cells etc.
18
19
  */
@@ -442,14 +443,28 @@ export interface GridApi {
442
443
  highlightCell(cellHighlightInfo: CellHighlightInfo): void;
443
444
  /**
444
445
  * Unhighlights a Cell in AdapTable
445
- * @param cellHighlightInfo cell to unhighlight
446
+ * @param primaryKeyValue pkvalue of cell to unhilight
447
+ * @param columnId column id of cell to unhilight
446
448
  */
447
- unHighlightCell(primaryKeyValue: CellHighlightInfo['primaryKeyValue'], columnId: CellHighlightInfo['columnId']): void;
449
+ unHighlightCell(primaryKeyValue: any, columnId: string): void;
448
450
  /**
449
451
  * Unhighlights all highlighted Cells in AdapTable
450
- * @param cellHighlightInfo cell to highlight
451
452
  */
452
453
  unHighlightAllCells(): void;
454
+ /**
455
+ * Highlights a Column in AdapTable
456
+ * @param columnHighlightInfo column to highlight
457
+ */
458
+ highlightColumn(columnHighlightInfo: ColumnHighlightInfo): void;
459
+ /**
460
+ * Unhighlights a Column in AdapTable
461
+ * @param columnId column to unhighlight
462
+ */
463
+ unHighlightColumn(columnId: string): void;
464
+ /**
465
+ * Unhighlights all highlighted Columns in AdapTable
466
+ */
467
+ unHighlightAllColumns(): void;
453
468
  /**
454
469
  * Highlight a row using an adaptable style
455
470
  * @param rowHighlightInfo highlight instructions
@@ -16,6 +16,7 @@ export declare class AlertApiImpl extends ApiBase implements AlertApi {
16
16
  getActiveAlertDefinitions(config?: LayoutExtendedConfig): AlertDefinition[];
17
17
  deleteAlertDefinition(alertDefinition: AlertDefinition): void;
18
18
  getAlertDefinitionById(id: AlertDefinition['Uuid'], config?: LayoutExtendedConfig): AlertDefinition;
19
+ getAlertDefinitionByName(name: string): AlertDefinition | undefined;
19
20
  addAlertDefinition(alertDefinition: AlertDefinition): AlertDefinition;
20
21
  displayAdaptableAlert(alertToShow: AdaptableAlert): Promise<void>;
21
22
  displayAdaptableAlertNotification(alert: AdaptableAlert): void;
@@ -32,6 +32,9 @@ export class AlertApiImpl extends ApiBase {
32
32
  getAlertDefinitionById(id, config) {
33
33
  return this.getAlertDefinitions(config).find((alert) => alert?.Uuid === id);
34
34
  }
35
+ getAlertDefinitionByName(name) {
36
+ return this.getAlertDefinitions().find((alertDefinition) => alertDefinition.Name === name);
37
+ }
35
38
  addAlertDefinition(alertDefinition) {
36
39
  this.addUidToAdaptableObject(alertDefinition);
37
40
  this.dispatchAction(AlertRedux.AlertDefinitionAdd(alertDefinition));
@@ -122,8 +122,8 @@ export class ChartingApiImpl extends ApiBase {
122
122
  else {
123
123
  const alert = {
124
124
  alertType: 'generic',
125
- header: 'Save chart',
126
- message: 'Do you want to save this Chart?',
125
+ header: 'Save Chart',
126
+ message: 'Would you like to save this chart?',
127
127
  alertDefinition: {
128
128
  ...ObjectFactory.CreateEmptyAlertDefinition(),
129
129
  MessageType: 'Info',
@@ -11,6 +11,7 @@ export declare class CustomSortApiImpl extends ApiBase implements CustomSortApi
11
11
  getCustomSortState(): CustomSortState;
12
12
  getCustomSorts(config?: LayoutExtendedConfig): CustomSort[];
13
13
  getCustomSortById(id: CustomSort['Uuid'], config?: LayoutExtendedConfig): CustomSort;
14
+ getCustomSortByName(name: string): CustomSort | undefined;
14
15
  getLiveCustomSorts(): CustomSort[];
15
16
  getLiveCustomSortComparers(): ColumnValuesComparer[];
16
17
  getActiveCustomSorts(config?: LayoutExtendedConfig): CustomSort[];
@@ -17,6 +17,9 @@ export class CustomSortApiImpl extends ApiBase {
17
17
  getCustomSortById(id, config) {
18
18
  return this.getCustomSorts(config).find((customSort) => customSort.Uuid === id);
19
19
  }
20
+ getCustomSortByName(name) {
21
+ return this.getCustomSorts().find((customSort) => customSort.Name === name);
22
+ }
20
23
  getLiveCustomSorts() {
21
24
  let returnVals = [];
22
25
  const sortedColIds = this.getGridApi()
@@ -13,6 +13,7 @@ export declare class FlashingCellApiImpl extends ApiBase implements FlashingCell
13
13
  getFlashingCellState(): FlashingCellState;
14
14
  getFlashingCellDefinitions(config?: LayoutExtendedConfig): FlashingCellDefinition[];
15
15
  getFlashingCellDefinitionById(id: FlashingCellDefinition['Uuid'], config?: LayoutExtendedConfig): FlashingCellDefinition;
16
+ getFlashingCellDefinitionByName(name: string): FlashingCellDefinition | undefined;
16
17
  getActiveFlashingCellDefinitions(config?: LayoutExtendedConfig): FlashingCellDefinition[];
17
18
  getSuspendedFlashingCellDefinitions(config?: LayoutExtendedConfig): FlashingCellDefinition[];
18
19
  getFlashingCellFlashTarget(flashingCellDefinition: FlashingCellDefinition): FlashingCellDefinition['FlashTarget'];
@@ -19,6 +19,9 @@ export class FlashingCellApiImpl extends ApiBase {
19
19
  getFlashingCellDefinitionById(id, config) {
20
20
  return this.getFlashingCellDefinitions(config)?.find((fc) => fc?.Uuid === id);
21
21
  }
22
+ getFlashingCellDefinitionByName(name) {
23
+ return this.getFlashingCellDefinitions().find((fc) => fc.Name === name);
24
+ }
22
25
  getActiveFlashingCellDefinitions(config) {
23
26
  return this.getFlashingCellDefinitions(config).filter((fc) => !fc.IsSuspended);
24
27
  }
@@ -1,18 +1,19 @@
1
+ import { AdaptableObjectLookupCriteria, FormatColumnConfig } from '../../../types';
2
+ import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
3
+ import { AdaptableColumn } from '../../AdaptableState/Common/AdaptableColumn';
1
4
  import { AdaptableStyle } from '../../AdaptableState/Common/AdaptableStyle';
2
- import { ApiBase } from './ApiBase';
3
- import { FormatColumnApi } from '../FormatColumnApi';
4
5
  import { FormatColumn, FormatColumnState } from '../../AdaptableState/FormatColumnState';
5
- import { AdaptableColumn } from '../../AdaptableState/Common/AdaptableColumn';
6
6
  import { AdaptableFormat } from '../../types';
7
- import { AdaptableObjectLookupCriteria, FormatColumnConfig } from '../../../types';
7
+ import { FormatColumnApi } from '../FormatColumnApi';
8
8
  import { FormatColumnInternalApi } from '../Internal/FormatColumnInternalApi';
9
- import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
9
+ import { ApiBase } from './ApiBase';
10
10
  export declare class FormatColumnApiImpl extends ApiBase implements FormatColumnApi {
11
11
  internalApi: FormatColumnInternalApi;
12
12
  constructor(_adaptable: IAdaptable);
13
13
  getFormatColumnState(): FormatColumnState;
14
14
  getFormatColumns(config?: FormatColumnConfig): FormatColumn[];
15
15
  getFormatColumnByUuId(id: FormatColumn['Uuid'], config?: FormatColumnConfig): FormatColumn;
16
+ getFormatColumnByName(name: string): FormatColumn | undefined;
16
17
  getActiveFormatColumns(config?: FormatColumnConfig): FormatColumn[];
17
18
  getDisplayFormatForColumn(column: AdaptableColumn, config?: FormatColumnConfig): AdaptableFormat | undefined;
18
19
  getSuspendedFormatColumns(config?: FormatColumnConfig): FormatColumn[];
@@ -1,8 +1,8 @@
1
1
  import * as FormatColumnRedux from '../../Redux/ActionsReducers/FormatColumnRedux';
2
- import { ApiBase } from './ApiBase';
3
2
  import * as ModuleConstants from '../../Utilities/Constants/ModuleConstants';
4
- import { FormatColumnInternalApi } from '../Internal/FormatColumnInternalApi';
5
3
  import ArrayExtensions from '../../Utilities/Extensions/ArrayExtensions';
4
+ import { FormatColumnInternalApi } from '../Internal/FormatColumnInternalApi';
5
+ import { ApiBase } from './ApiBase';
6
6
  export class FormatColumnApiImpl extends ApiBase {
7
7
  internalApi;
8
8
  constructor(_adaptable) {
@@ -18,6 +18,9 @@ export class FormatColumnApiImpl extends ApiBase {
18
18
  getFormatColumnByUuId(id, config) {
19
19
  return this.getFormatColumns(config).find((formatColumn) => formatColumn.Uuid === id);
20
20
  }
21
+ getFormatColumnByName(name) {
22
+ return this.getFormatColumns().find((formatColumn) => formatColumn.Name === name);
23
+ }
21
24
  getActiveFormatColumns(config) {
22
25
  return this.getFormatColumns(config).filter((formatColumn) => !formatColumn.IsSuspended);
23
26
  }
@@ -38,9 +41,7 @@ export class FormatColumnApiImpl extends ApiBase {
38
41
  return this.getFormatColumnByUuId(formatColumn.Uuid);
39
42
  }
40
43
  addFormatColumns(formatColumns) {
41
- formatColumns.forEach((fc) => {
42
- this.addFormatColumn(fc);
43
- });
44
+ this.dispatchAction(FormatColumnRedux.FormatColumnsAdd(formatColumns));
44
45
  return formatColumns?.map((formatColumn) => this.getFormatColumnByUuId(formatColumn.Uuid));
45
46
  }
46
47
  editFormatColumn(formatColumn) {
@@ -16,6 +16,7 @@ import { GridInternalApi } from '../Internal/GridInternalApi';
16
16
  import { TransposeConfig } from '../../AdaptableState/Common/TransposeConfig';
17
17
  import { CellSummmaryInfo } from '../../types';
18
18
  import { InternalState } from '../../AdaptableState/InternalState';
19
+ import { ColumnHighlightInfo } from '../../AdaptableState/Common/ColumnHighlightInfo';
19
20
  export declare class GridApiImpl extends ApiBase implements GridApi {
20
21
  internalApi: GridInternalApi;
21
22
  constructor(_adaptable: IAdaptable);
@@ -122,6 +123,9 @@ export declare class GridApiImpl extends ApiBase implements GridApi {
122
123
  highlightCell(cellHighlightInfo: CellHighlightInfo): void;
123
124
  unHighlightCell(primaryKeyValue: CellHighlightInfo['primaryKeyValue'], columnId: CellHighlightInfo['columnId']): void;
124
125
  unHighlightAllCells(): void;
126
+ highlightColumn(columnHighlightInfo: ColumnHighlightInfo): void;
127
+ unHighlightColumn(columnId: string): void;
128
+ unHighlightAllColumns(): void;
125
129
  highlightRow(rowHighlightInfo: RowHighlightInfo): void;
126
130
  highlightRows(rowHighlightInfos: RowsHighlightInfo): void;
127
131
  unHighlightRow(primaryKeyValue: RowHighlightInfo['primaryKeyValue']): void;
@@ -1,5 +1,5 @@
1
1
  import { ApiBase } from './ApiBase';
2
- import { HighlightCellAdd, HighlightCellDelete, HighlightCellDeleteAll, HighlightRowAdd, HighlightRowDelete, GridHighlightRowDeleteAll, HighlightRowsAdd, GridHighlightRowsDelete, } from '../../Redux/ActionsReducers/InternalRedux';
2
+ import { HighlightCellAdd, HighlightCellDelete, HighlightCellDeleteAll, HighlightColumnAdd, HighlightColumnDelete, HighlightColumnDeleteAll, HighlightRowAdd, HighlightRowDelete, GridHighlightRowDeleteAll, HighlightRowsAdd, GridHighlightRowsDelete, } from '../../Redux/ActionsReducers/InternalRedux';
3
3
  import * as ModuleConstants from '../../Utilities/Constants/ModuleConstants';
4
4
  import { GridInternalApi } from '../Internal/GridInternalApi';
5
5
  import ArrayExtensions from '../../Utilities/Extensions/ArrayExtensions';
@@ -470,6 +470,20 @@ export class GridApiImpl extends ApiBase {
470
470
  unHighlightAllCells() {
471
471
  this.dispatchAction(HighlightCellDeleteAll());
472
472
  }
473
+ highlightColumn(columnHighlightInfo) {
474
+ this.dispatchAction(HighlightColumnAdd(columnHighlightInfo));
475
+ if (columnHighlightInfo.timeout) {
476
+ setTimeout(() => {
477
+ this.unHighlightColumn(columnHighlightInfo.columnId);
478
+ }, columnHighlightInfo.timeout);
479
+ }
480
+ }
481
+ unHighlightColumn(columnId) {
482
+ this.dispatchAction(HighlightColumnDelete(columnId));
483
+ }
484
+ unHighlightAllColumns() {
485
+ this.dispatchAction(HighlightColumnDeleteAll());
486
+ }
473
487
  highlightRow(rowHighlightInfo) {
474
488
  this.dispatchAction(HighlightRowAdd(rowHighlightInfo));
475
489
  if (rowHighlightInfo.timeout) {
@@ -403,7 +403,7 @@ export class LayoutApiImpl extends ApiBase {
403
403
  const currentLayout = this.getCurrentLayout();
404
404
  const customHeader = currentLayout.ColumnHeaders?.[column.columnId] ?? column.friendlyName;
405
405
  this.dispatchAction(PopupShowPrompt({
406
- Header: `Change caption for '${column.friendlyName}'`,
406
+ Header: `Change Caption for "${column.friendlyName}"`,
407
407
  Msg: '',
408
408
  DefaultValue: customHeader,
409
409
  ConfirmActionCreator: (inputText) => {
@@ -26,14 +26,14 @@ export class NamedQueryApiImpl extends ApiBase {
26
26
  }
27
27
  isValidNamedQuery(namedQuery) {
28
28
  if (IsNullOrEmptyOrWhiteSpace(namedQuery?.Name)) {
29
- return { valid: false, message: 'Named Query name cannot be blank' };
29
+ return { valid: false, message: 'A name is required for the Named Query.' };
30
30
  }
31
31
  // check that there is no other existing named query with the same name
32
32
  const duplicate = this.getNamedQueries().find((q) => q.Name === namedQuery.Name && q.Uuid !== namedQuery.Uuid);
33
33
  if (duplicate) {
34
34
  return {
35
35
  valid: false,
36
- message: 'A Named Query already exists with that name',
36
+ message: 'A Named Query with this name already exists.',
37
37
  };
38
38
  }
39
39
  return { valid: true, message: '' };
@@ -7,6 +7,7 @@ export declare class PlusMinusApiImpl extends ApiBase implements PlusMinusApi {
7
7
  getPlusMinusState(): PlusMinusState;
8
8
  getAllPlusMinus(config?: LayoutExtendedConfig): PlusMinusNudge[];
9
9
  getPlusMinusById(id: PlusMinusNudge['Uuid'], config?: LayoutExtendedConfig): PlusMinusNudge;
10
+ getPlusMinusNudgeByName(name: string): PlusMinusNudge | undefined;
10
11
  getAllActivePlusMinus(config?: LayoutExtendedConfig): PlusMinusNudge[];
11
12
  getAllSuspendedPlusMinus(config?: LayoutExtendedConfig): PlusMinusNudge[];
12
13
  runPlusMinusNudge(plusMinusNudge: PlusMinusNudge, cellsToUpdate: GridCell[], direction: 'up' | 'down'): void;
@@ -12,6 +12,9 @@ export class PlusMinusApiImpl extends ApiBase {
12
12
  getPlusMinusById(id, config) {
13
13
  return this.getAllPlusMinus(config).find((plusMinus) => plusMinus?.Uuid === id);
14
14
  }
15
+ getPlusMinusNudgeByName(name) {
16
+ return this.getAllPlusMinus().find((plusMinus) => plusMinus.Name === name);
17
+ }
15
18
  getAllActivePlusMinus(config) {
16
19
  return this.getAllPlusMinus(config).filter((plusMinusNudge) => !plusMinusNudge.IsSuspended);
17
20
  }
@@ -11,6 +11,7 @@ export declare class ScheduleApiImpl extends ApiBase implements ScheduleApi {
11
11
  constructor(_adaptable: IAdaptable);
12
12
  getScheduleState(): ScheduleState;
13
13
  getSchedules(config?: LayoutExtendedConfig): BaseSchedule[];
14
+ getScheduleByName(name: string): BaseSchedule | undefined;
14
15
  getReminderSchedules(config?: LayoutExtendedConfig): ReminderSchedule[];
15
16
  getScheduleById(id: BaseSchedule['Uuid'], config?: LayoutExtendedConfig): BaseSchedule;
16
17
  getActiveReminderSchedules(config?: LayoutExtendedConfig): ReminderSchedule[];
@@ -16,6 +16,9 @@ export class ScheduleApiImpl extends ApiBase {
16
16
  allSchedules.push(...this.getOpenFinSchedules(config));
17
17
  return allSchedules;
18
18
  }
19
+ getScheduleByName(name) {
20
+ return this.getSchedules().find((schedule) => schedule.Name === name);
21
+ }
19
22
  getReminderSchedules(config) {
20
23
  return (this.handleLayoutExtensionObjects(this.getScheduleState().Reminders, 'Schedule', config) ?? []);
21
24
  }
@@ -6,6 +6,7 @@ export declare class ShortcutApiImpl extends ApiBase implements ShortcutApi {
6
6
  getShortcutState(): ShortcutState;
7
7
  getShortcuts(config?: LayoutExtendedConfig): Shortcut[];
8
8
  getShortcutById(id: Shortcut['Uuid'], config?: LayoutExtendedConfig): Shortcut;
9
+ getShortcutByName(name: string): Shortcut | undefined;
9
10
  getActiveShortcuts(config?: LayoutExtendedConfig): Shortcut[];
10
11
  getSuspendedShortcuts(config?: LayoutExtendedConfig): Shortcut[];
11
12
  addShortcut(shortcut: Shortcut): Shortcut;
@@ -11,6 +11,9 @@ export class ShortcutApiImpl extends ApiBase {
11
11
  getShortcutById(id, config) {
12
12
  return this.getShortcuts(config).find((shortcut) => shortcut?.Uuid === id);
13
13
  }
14
+ getShortcutByName(name) {
15
+ return this.getShortcuts().find((shortcut) => shortcut.Name === name);
16
+ }
14
17
  getActiveShortcuts(config) {
15
18
  return this.getShortcuts(config).filter((shortcut) => !shortcut.IsSuspended);
16
19
  }
@@ -27,16 +27,16 @@ export class SystemStatusApiImpl extends ApiBase {
27
27
  }
28
28
  switch (messageType) {
29
29
  case 'Success':
30
- alertApi.showAlertSuccess('System Status Success', fullMessage);
30
+ alertApi.showAlertSuccess('System Status', fullMessage);
31
31
  return;
32
32
  case 'Info':
33
- alertApi.showAlertInfo('System Status Info', fullMessage);
33
+ alertApi.showAlertInfo('System Status', fullMessage);
34
34
  return;
35
35
  case 'Warning':
36
- alertApi.showAlertWarning('System Status Warning', fullMessage);
36
+ alertApi.showAlertWarning('System Status', fullMessage);
37
37
  return;
38
38
  case 'Error':
39
- alertApi.showAlertError('System Status Error', fullMessage);
39
+ alertApi.showAlertError('System Status', fullMessage);
40
40
  return;
41
41
  }
42
42
  }
@@ -150,8 +150,8 @@ export class CalculatedColumnInternalApi extends ApiBase {
150
150
  if (calculatedColumnReferences.length) {
151
151
  const alert = {
152
152
  alertType: 'generic',
153
- header: 'CalculatedColumn could not be deleted',
154
- message: `It is still referenced in the following modules: ${calculatedColumnReferences.join(', ')}`,
153
+ header: 'Calculated Column',
154
+ message: `This Calculated Column cannot be deleted. It is still referenced by: ${calculatedColumnReferences.join(', ')}.`,
155
155
  alertDefinition: CreateInternalAlertDefinitionForMessages('Error'),
156
156
  };
157
157
  this.getAlertApi().displayAdaptableAlertNotification(alert);
@@ -95,8 +95,8 @@ export class FreeTextColumnInternalApi extends ApiBase {
95
95
  if (freeTextColumnReferences.length) {
96
96
  const alert = {
97
97
  alertType: 'generic',
98
- header: 'FreeTextColumn could not be deleted',
99
- message: `It is still referenced in the following modules: ${freeTextColumnReferences.join(', ')}`,
98
+ header: 'Free Text Column',
99
+ message: `This Free Text Column cannot be deleted. It is still referenced by: ${freeTextColumnReferences.join(', ')}.`,
100
100
  alertDefinition: ObjectFactory.CreateInternalAlertDefinitionForMessages('Error'),
101
101
  };
102
102
  this.getAlertApi().displayAdaptableAlertNotification(alert);
@@ -92,7 +92,7 @@ export class LayoutInternalApi extends ApiBase {
92
92
  }
93
93
  setupRowSummaries() {
94
94
  if (!this._adaptable.agGridModulesAdapter.isAgGridModuleRegistered('PinnedRowModule')) {
95
- this.getAdaptableApi().consoleError(`Can NOT set Layout Row Summaries - missing required AG Grid module 'PinnedRowModule'`);
95
+ this.getAdaptableApi().consoleError('Layout Row Summaries require the AG Grid "PinnedRowModule". Please register this module.');
96
96
  return;
97
97
  }
98
98
  const rowSummaries = this.getAdaptableState().Internal?.RowSummary?.rowSummaries ?? [];