@adaptabletools/adaptable 16.0.4 → 16.0.5

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 (55) hide show
  1. package/bundle.cjs.js +148 -148
  2. package/package.json +1 -1
  3. package/publishTimestamp.d.ts +1 -1
  4. package/publishTimestamp.js +1 -1
  5. package/src/AdaptableOptions/AdaptableOptions.d.ts +9 -4
  6. package/src/AdaptableOptions/ExpressionOptions.d.ts +52 -16
  7. package/src/AdaptableOptions/Fdc3Options.d.ts +23 -7
  8. package/src/AdaptableOptions/FilterOptions.d.ts +7 -0
  9. package/src/AdaptableOptions/PredicateOptions.d.ts +10 -2
  10. package/src/AdaptableOptions/QuickSearchOptions.d.ts +8 -0
  11. package/src/Api/ExportApi.d.ts +12 -3
  12. package/src/Api/ExpressionApi.d.ts +4 -0
  13. package/src/Api/FilterApi.d.ts +7 -1
  14. package/src/Api/Implementation/ApiBase.d.ts +3 -4
  15. package/src/Api/Implementation/ApiBase.js +5 -5
  16. package/src/Api/Implementation/ExportApiImpl.d.ts +2 -0
  17. package/src/Api/Implementation/ExportApiImpl.js +6 -0
  18. package/src/Api/Implementation/ExpressionApiImpl.d.ts +1 -0
  19. package/src/Api/Implementation/ExpressionApiImpl.js +4 -0
  20. package/src/Api/Implementation/FilterApiImpl.d.ts +2 -1
  21. package/src/Api/Implementation/FilterApiImpl.js +14 -1
  22. package/src/Api/Implementation/OptionsApiImpl.d.ts +3 -2
  23. package/src/Api/Implementation/OptionsApiImpl.js +2 -2
  24. package/src/Api/Implementation/PredicateApiImpl.d.ts +1 -0
  25. package/src/Api/Implementation/PredicateApiImpl.js +4 -2
  26. package/src/Api/Implementation/ScheduleApiImpl.js +1 -1
  27. package/src/Api/Internal/AdaptableInternalApi.d.ts +0 -1
  28. package/src/Api/Internal/AdaptableInternalApi.js +2 -5
  29. package/src/Api/Internal/ExpressionnternalApi.js +2 -2
  30. package/src/Api/Internal/PredicateInternalApi.js +5 -5
  31. package/src/Api/OptionsApi.d.ts +4 -3
  32. package/src/Api/PredicateApi.d.ts +4 -0
  33. package/src/PredefinedConfig/Common/AdaptablePredicate.js +15 -8
  34. package/src/PredefinedConfig/Common/ColumnFilter.d.ts +13 -0
  35. package/src/PredefinedConfig/Common/Fdc3Context.d.ts +1 -1
  36. package/src/PredefinedConfig/Common/Fdc3Context.js +1 -1
  37. package/src/Strategy/Fdc3Module.js +1 -1
  38. package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
  39. package/src/Utilities/Constants/GeneralConstants.d.ts +1 -0
  40. package/src/Utilities/Constants/GeneralConstants.js +3 -2
  41. package/src/Utilities/Defaults/DefaultAdaptableOptions.js +22 -21
  42. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +1 -1
  43. package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +1 -1
  44. package/src/Utilities/Helpers/AdaptableHelper.js +2 -3
  45. package/src/Utilities/Services/QueryLanguageService.js +4 -4
  46. package/src/View/Export/ExportSelector.js +2 -2
  47. package/src/agGrid/Adaptable.js +9 -3
  48. package/src/components/ExpressionEditor/BaseEditorInput.js +4 -4
  49. package/src/metamodel/adaptable.metamodel.d.ts +79 -45
  50. package/src/metamodel/adaptable.metamodel.js +1 -1
  51. package/src/types.d.ts +3 -4
  52. package/version.d.ts +1 -1
  53. package/version.js +1 -1
  54. package/src/AdaptableOptions/AdaptableQLOptions.d.ts +0 -58
  55. package/src/AdaptableOptions/AdaptableQLOptions.js +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptabletools/adaptable",
3
- "version": "16.0.4",
3
+ "version": "16.0.5",
4
4
  "description": "Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements",
5
5
  "keywords": [
6
6
  "web-components",
@@ -1,2 +1,2 @@
1
- declare const _default: 1692947568539;
1
+ declare const _default: 1693243382800;
2
2
  export default _default;
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = 1692947568539;
3
+ exports.default = 1693243382800;
@@ -17,7 +17,7 @@ import { DataChangeHistoryOptions } from './DataChangeHistoryOptions';
17
17
  import { SettingsPanelOptions } from './SettingsPanelOptions';
18
18
  import { FlashingCellOptions } from './FlashingCellOptions';
19
19
  import { AlertOptions } from './AlertOptions';
20
- import { AdaptableQLOptions } from './AdaptableQLOptions';
20
+ import { ExpressionOptions } from './ExpressionOptions';
21
21
  import { ColumnOptions } from './ColumnOptions';
22
22
  import { ActionRowOptions } from './ActionRowOptions';
23
23
  import { ChartingOptions } from './ChartingOptions';
@@ -31,6 +31,7 @@ import { QuickSearchOptions } from './QuickSearchOptions';
31
31
  import { FormatColumnOptions } from './FormatColumnOptions';
32
32
  import { Fdc3Options } from './Fdc3Options';
33
33
  import { CommentOptions } from './CommentsOptions';
34
+ import { PredicateOptions } from './PredicateOptions';
34
35
  /**
35
36
  * Large group of options enabling developers to set up AdapTable at design time to fit precise requirements
36
37
  */
@@ -73,7 +74,7 @@ export interface AdaptableOptions<TData = any> {
73
74
  * @defaultValue n/a (Mandatory)
74
75
  * @gridInfoItem
75
76
  */
76
- primaryKey: Extract<keyof TData, string>;
77
+ primaryKey: string;
77
78
  /**
78
79
  * Name of current AdapTable user
79
80
  *
@@ -90,10 +91,10 @@ export interface AdaptableOptions<TData = any> {
90
91
  */
91
92
  actionRowOptions?: ActionRowOptions<TData>;
92
93
  /**
93
- * Options for managing AdapTableQL
94
+ * Options for managing AdapTableQL Expressions
94
95
  * @noCodeContainer
95
96
  */
96
- adaptableQLOptions?: AdaptableQLOptions<TData>;
97
+ expressionOptions?: ExpressionOptions<TData>;
97
98
  /**
98
99
  * Options for managing Alerts in AdapTable
99
100
  *
@@ -216,6 +217,10 @@ export interface AdaptableOptions<TData = any> {
216
217
  * @noCodeContainer
217
218
  */
218
219
  notificationsOptions?: NotificationsOptions;
220
+ /**
221
+ * Options for managing Predicates in AdapTableQL
222
+ */
223
+ predicateOptions?: PredicateOptions;
219
224
  /**
220
225
  * Options for managing Search related functions in AdapTable
221
226
  *
@@ -1,14 +1,17 @@
1
- import { ExpressionFunction } from '../parser/src/types';
2
- import { BooleanFunctionName } from '../Utilities/ExpressionFunctions/booleanExpressionFunctions';
3
- import { ScalarFunctionName } from '../Utilities/ExpressionFunctions/scalarExpressionFunctions';
4
- import { ObservableFunctionName } from '../Utilities/ExpressionFunctions/observableExpressionFunctions';
5
- import { AggregatedBooleanFunctionName } from '../Utilities/ExpressionFunctions/aggregatedBooleanExpressionFunctions';
6
- import { AggregatedScalarFunctionName } from '../Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions';
7
- import { AdaptableColumnBase, AdaptableModule, BaseContext } from '../types';
1
+ import { AdaptablePredicate } from '../PredefinedConfig/Common/AdaptablePredicate';
2
+ import { AdaptableModule, AdaptableQLModule } from '../PredefinedConfig/Common/Types';
3
+ import { BaseContext } from '../PredefinedConfig/Common/BaseContext';
4
+ import { AdaptableColumn, AdaptableColumnBase } from '../PredefinedConfig/Common/AdaptableColumn';
5
+ import { AdaptableObject, AggregatedBooleanFunctionName, AggregatedScalarFunctionName, BooleanFunctionName, ExpressionFunction, ObservableFunctionName, ScalarFunctionName } from '../types';
8
6
  /**
9
- * Options for managing Expressions using AdapTableQL
7
+ * Options for managing Expressions in AdapTable's Query Language
10
8
  */
11
- export interface ExpressionOptions {
9
+ export interface ExpressionOptions<TData = any> {
10
+ /**
11
+ * Whether a Module (or specific expression) should be evaluated by AdapTableQL
12
+ * @defaultValue All Modules are evaluated by AdapTable
13
+ */
14
+ evaluateAdaptableQLExternally?: (context: EvaluateExpressionExternallyContext<TData>) => boolean;
12
15
  /**
13
16
  * System Boolean Expression Functions available in AdapTableQL
14
17
  *
@@ -88,12 +91,45 @@ export interface ExpressionOptions {
88
91
  */
89
92
  customQueryVariables?: Record<string, string | number | boolean | Date | ((context: CustomQueryVariableContext) => string | number | boolean | Date)>;
90
93
  /**
91
- * Reference a Column's Header (i.e. FriendlyName) in all Expression overviews (instead of ColumnId)
92
- *
93
- * @defaultValue true
94
- * @noCodeItem
95
- */
94
+ * Reference a Column's Header (i.e. FriendlyName) in all Expression overviews (instead of ColumnId)
95
+ *
96
+ * @defaultValue true
97
+ * @noCodeItem
98
+ */
96
99
  displayColumnFriendlyNamesForExpressions?: boolean;
100
+ /**
101
+ * Perform case-sensitive text comparisons when evaluating Expressions
102
+ *
103
+ * @defaultValue false
104
+ * @gridInfoItem
105
+ * @noCodeItem
106
+ */
107
+ caseSensitiveExpressions?: boolean;
108
+ }
109
+ /**
110
+ * Context passed when evaluating `expressionOptions.evaluateExpressionExternally()`
111
+ */
112
+ export interface EvaluateExpressionExternallyContext<TData = any> extends BaseContext {
113
+ /**
114
+ * Module where Expression is being evaluated
115
+ */
116
+ module: AdaptableQLModule;
117
+ /**
118
+ * AdapTable Object which contains the Expression or Predicates
119
+ */
120
+ object?: AdaptableObject;
121
+ /**
122
+ * Expression to evaluate
123
+ */
124
+ expression?: string;
125
+ /**
126
+ * Any Predicates to evaluate
127
+ */
128
+ predicates?: AdaptablePredicate[];
129
+ /**
130
+ * Columns contained in Expression
131
+ */
132
+ referencedColumns?: AdaptableColumn<TData>[];
97
133
  }
98
134
  /**
99
135
  * Module specific Expression Functions
@@ -163,7 +199,7 @@ export interface GlobalExpressionFunctionsContext<T> extends BaseContext {
163
199
  availableExpressionFunctionNames: T[];
164
200
  }
165
201
  /**
166
- * Context provided to ExpressionOptions.moduleExpressionFunctions property callback
202
+ * Context provided to moduleExpressionFunctions property callback
167
203
  */
168
204
  export interface ModuleExpressionFunctionsContext extends BaseContext {
169
205
  /**
@@ -192,7 +228,7 @@ export interface ModuleExpressionFunctionsContext extends BaseContext {
192
228
  availableAggregatedScalarFunctionNames: AggregatedScalarFunctionName[];
193
229
  }
194
230
  /**
195
- * Context passed when evaluating `ExpressionOptions.customQueryVariables`
231
+ * Context passed when evaluating customQueryVariables
196
232
  */
197
233
  export interface CustomQueryVariableContext extends BaseContext {
198
234
  /**
@@ -298,12 +298,28 @@ export interface BroadcastConfig {
298
298
  /**
299
299
  * Custom FDC3 Action Column definition to broadcast the Context
300
300
  */
301
- actionColumn?: {
302
- columnId: string;
303
- friendlyName?: string;
304
- button: Fdc3AdaptableButton;
305
- defaultWidth?: number;
306
- };
301
+ actionColumn?: FDC3ActionColumn;
302
+ }
303
+ /**
304
+ * Action Column used for FDC3 workflows
305
+ */
306
+ export interface FDC3ActionColumn {
307
+ /**
308
+ * Id of the Column
309
+ */
310
+ columnId: string;
311
+ /**
312
+ * Column's friendly name
313
+ */
314
+ friendlyName?: string;
315
+ /**
316
+ * FDC3 Button to display
317
+ */
318
+ button: Fdc3AdaptableButton;
319
+ /**
320
+ * Default Width of column
321
+ */
322
+ defaultWidth?: number;
307
323
  }
308
324
  /**
309
325
  * Context provided in `handleIntentResolution` callback
@@ -352,7 +368,7 @@ export interface Fdc3AdaptableButton {
352
368
  */
353
369
  icon?: '_defaultFdc3' | AdaptableIcon | ((button: Fdc3AdaptableButton, context: Fdc3ButtonContext) => AdaptableIcon);
354
370
  /**
355
- * Button' Label; can be string or function that provides string
371
+ * Button's Label; can be string or function that provides string
356
372
  */
357
373
  label?: '_defaultFdc3' | string | ((button: Fdc3AdaptableButton, context: Fdc3ButtonContext) => string);
358
374
  /**
@@ -205,6 +205,13 @@ export interface FilterOptions<TData = any> {
205
205
  * @defaultValue '180'
206
206
  */
207
207
  quickFilterValuesWidth?: 'auto' | number;
208
+ /**
209
+ * Includes a [BLANKS] entry in Values filter
210
+ * @defaultValue false
211
+ * @gridInfoItem
212
+ * @noCodeItem
213
+ */
214
+ includeBlankFilterValues?: boolean;
208
215
  }
209
216
  /**
210
217
  * Context provided when Filtering
@@ -12,8 +12,8 @@ export interface PredicateOptions {
12
12
  */
13
13
  systemFilterPredicates?: SystemFilterPredicateIds | ((context: SystemPredicatesContext) => SystemFilterPredicateIds);
14
14
  /**
15
- * Which System Badge Style Predicates are available
16
- */
15
+ * Which System Badge Style Predicates are available
16
+ */
17
17
  systemBadgeStylePredicates?: SystemBadgeStylePredicateIds | ((context: SystemPredicatesContext) => SystemBadgeStylePredicateIds);
18
18
  /**
19
19
  * Which System Alert Predicates are available
@@ -27,6 +27,14 @@ export interface PredicateOptions {
27
27
  * Which System Flashing Cell Predicates are available
28
28
  */
29
29
  systemFlashingCellPredicates?: SystemFlashingCellPredicateIds | ((context: SystemPredicatesContext) => SystemFlashingCellPredicateIds);
30
+ /**
31
+ * Perform case-sensitive text comparisons when evaluating Predicates
32
+ *
33
+ * @defaultValue false
34
+ * @gridInfoItem
35
+ * @noCodeItem
36
+ */
37
+ caseSensitivePredicates?: boolean;
30
38
  }
31
39
  /**
32
40
  * Context used for setting which System Predicates are available
@@ -39,4 +39,12 @@ export interface QuickSearchOptions<TData = any> {
39
39
  * @noCodeItem
40
40
  */
41
41
  runQuickSearchOnRowGroups?: boolean;
42
+ /**
43
+ * Perform case-sensitive text comparisons when Quick Search
44
+ *
45
+ * @defaultValue false
46
+ * @gridInfoItem
47
+ * @noCodeItem
48
+ */
49
+ runQuickSearchWithCaseSensitivity?: boolean;
42
50
  }
@@ -65,13 +65,22 @@ export interface ExportApi {
65
65
  * @returns report schedule
66
66
  */
67
67
  getReportSchedules(): ReportSchedule[];
68
+ /**
69
+ * @deprecated use runReport instead
70
+ */
71
+ sendReport(reportName: string, destination: 'Excel' | 'CSV' | 'Clipboard' | 'JSON' | string): void;
68
72
  /**
69
73
  * Sends a Report to a given destination
70
74
  * @param reportName name of Report to send
71
75
  * @param destination destination to which Report will be sent
72
- * @param destinationData any custom destination data
73
76
  */
74
- sendReport(reportName: string, destination: 'Excel' | 'CSV' | 'Clipboard' | 'JSON' | string): void;
77
+ runReport(reportName: string, destination: 'Excel' | 'CSV' | 'Clipboard' | 'JSON' | string): void;
78
+ /**
79
+ * Sends a Report to a given destination
80
+ * @param systemReportName name of System Report to send
81
+ * @param destination destination to which Report will be sent
82
+ */
83
+ runSystemReport(systemReportName: 'Visual Data' | 'All Data' | 'Current Data' | 'Selected Cells' | 'Selected Rows', destination: 'Excel' | 'CSV' | 'Clipboard' | 'JSON' | string): void;
75
84
  /**
76
85
  * Selects the report in the dashboard and statusbar UI
77
86
  *
@@ -138,7 +147,7 @@ export interface ExportApi {
138
147
  isExternalReport(report: Report): boolean;
139
148
  /**
140
149
  * Runs the report function of the ExternalReport with the given reportName
141
- * @param reportName custom report name
150
+ * @param reportName external report name
142
151
  */
143
152
  runExternalReport(reportName: string): ReportData | undefined;
144
153
  /**
@@ -57,4 +57,8 @@ export interface ExpressionApi {
57
57
  * @param query - the AdaptableQuery
58
58
  */
59
59
  getAdaptableQueryExpressionWithColumnFriendlyNames(query: Partial<AdaptableQuery>): string | undefined;
60
+ /**
61
+ * Whether Expressions are evaluated using Case Sensitivity
62
+ */
63
+ useCaseSensitivity(): boolean;
60
64
  }
@@ -1,4 +1,4 @@
1
- import { AdaptableColumn, ColumnFilter } from '../types';
1
+ import { AdaptableColumn, ColumnFilter, ColumnFilterConfig } from '../types';
2
2
  import { AdaptablePredicateDef, ColumnFilterDef } from '../PredefinedConfig/Common/AdaptablePredicate';
3
3
  /**
4
4
  * Provides run-time access to Filter section of Adaptable State.
@@ -119,4 +119,10 @@ export interface FilterApi {
119
119
  * @param columnFilters Column Filters to use
120
120
  */
121
121
  columnFiltersToString(columnFilters: ColumnFilter[]): string;
122
+ /**
123
+ * Sets the Column Filter for a given Column
124
+ * @param columnId - Column ID to set Column Filter for
125
+ * @param columnFilterConfig - Column Filter to set
126
+ */
127
+ setColumnFilterForColumn(columnId: string, columnFilterConfig: ColumnFilterConfig): void;
122
128
  }
@@ -7,11 +7,10 @@ import { ModuleInfo } from '../../Strategy/Interface/IModule';
7
7
  import { AdaptableOptions } from '../../AdaptableOptions/AdaptableOptions';
8
8
  import { AdaptableApi } from '../AdaptableApi';
9
9
  import { ExportOptions } from '../../AdaptableOptions/ExportOptions';
10
- import { ActionColumnApi, ActionColumnOptions, ActionRowApi, ActionRowOptions, AlertApi, ApplicationApi, BulkUpdateApi, CalculatedColumnApi, CalendarApi, CellSummaryApi, CellSummaryOptions, ChartingApi, ChartingOptions, ColumnApi, ConfigApi, ContainerOptions, CustomSortApi, DashboardApi, DashboardOptions, DataChangeHistoryApi, DataChangeHistoryOptions, DataSetApi, DataSetOptions, EditOptions, EntitlementApi, EntitlementOptions, EventApi, ExportApi, FilterApi, FilterOptions, FlashingCellApi, FlashingCellOptions, FormatColumnApi, FormatColumnOptions, FreeTextColumnApi, GridApi, LayoutApi, LayoutAssociatedObject, LayoutOptions, MenuOptions, PluginsApi, PlusMinusApi, PredicateApi, QueryApi, QuickSearchApi, QuickSearchOptions, ScheduleApi, ScopeApi, SettingsPanelApi, SettingsPanelOptions, ShortcutApi, SmartEditApi, StateOptions, StatusBarApi, StyledColumnApi, SystemStatusApi, TeamSharingApi, TeamSharingOptions, ThemeApi, ToolPanelApi, UserInterfaceApi, UserInterfaceOptions } from '../../types';
10
+ import { ActionColumnApi, ActionColumnOptions, ActionRowApi, ActionRowOptions, AlertApi, ApplicationApi, BulkUpdateApi, CalculatedColumnApi, CalendarApi, CellSummaryApi, CellSummaryOptions, ChartingApi, ChartingOptions, ColumnApi, ConfigApi, ContainerOptions, CustomSortApi, DashboardApi, DashboardOptions, DataChangeHistoryApi, DataChangeHistoryOptions, DataSetApi, DataSetOptions, EditOptions, EntitlementApi, EntitlementOptions, EventApi, ExportApi, FilterApi, FilterOptions, FlashingCellApi, FlashingCellOptions, FormatColumnApi, FormatColumnOptions, FreeTextColumnApi, GridApi, LayoutApi, LayoutAssociatedObject, LayoutOptions, MenuOptions, PluginsApi, PlusMinusApi, PredicateApi, PredicateOptions, QueryApi, QuickSearchApi, QuickSearchOptions, ScheduleApi, ScopeApi, SettingsPanelApi, SettingsPanelOptions, ShortcutApi, SmartEditApi, StateOptions, StatusBarApi, StyledColumnApi, SystemStatusApi, TeamSharingApi, TeamSharingOptions, ThemeApi, ToolPanelApi, UserInterfaceApi, UserInterfaceOptions } from '../../types';
11
11
  import { NotificationsOptions } from '../../AdaptableOptions/NotificationsOptions';
12
12
  import { ToolPanelOptions } from '../../AdaptableOptions/ToolPanelOptions';
13
13
  import { ModuleParams } from '../../View/Components/SharedProps/ModuleViewPopupProps';
14
- import { AdaptableQLOptions } from '../../AdaptableOptions/AdaptableQLOptions';
15
14
  import { ExpressionOptions } from '../../AdaptableOptions/ExpressionOptions';
16
15
  import { AlertOptions } from '../../AdaptableOptions/AlertOptions';
17
16
  import { ColumnOptions } from '../../AdaptableOptions/ColumnOptions';
@@ -80,14 +79,14 @@ export declare abstract class ApiBase {
80
79
  protected getLayoutOptions(): LayoutOptions;
81
80
  protected getMenuOptions(): MenuOptions;
82
81
  protected getFilterOptions(): FilterOptions;
83
- protected getAdaptableQLOptions(): AdaptableQLOptions;
82
+ protected getExpressionOptions(): ExpressionOptions;
83
+ protected getPredicateOptions(): PredicateOptions;
84
84
  protected getQuickSearchOptions(): QuickSearchOptions;
85
85
  protected getFormatColumnOptions(): FormatColumnOptions;
86
86
  protected getStateOptions(): StateOptions;
87
87
  protected getTeamSharingOptions(): TeamSharingOptions;
88
88
  protected getUserInterfaceOptions(): UserInterfaceOptions;
89
89
  protected getToolPanelOptions(): ToolPanelOptions;
90
- protected getExpressionOptions(): ExpressionOptions;
91
90
  protected getChartingOptions(): ChartingOptions;
92
91
  protected getDataChangeHistoryOptions(): DataChangeHistoryOptions;
93
92
  protected getEntitlementOptions(): EntitlementOptions;
@@ -147,8 +147,11 @@ class ApiBase {
147
147
  getFilterOptions() {
148
148
  return this.getOptions().filterOptions;
149
149
  }
150
- getAdaptableQLOptions() {
151
- return this.getOptions().adaptableQLOptions;
150
+ getExpressionOptions() {
151
+ return this.getOptions().expressionOptions;
152
+ }
153
+ getPredicateOptions() {
154
+ return this.getOptions().predicateOptions;
152
155
  }
153
156
  getQuickSearchOptions() {
154
157
  return this.getOptions().quickSearchOptions;
@@ -168,9 +171,6 @@ class ApiBase {
168
171
  getToolPanelOptions() {
169
172
  return this.getOptions().toolPanelOptions;
170
173
  }
171
- getExpressionOptions() {
172
- return this.getAdaptableQLOptions().expressionOptions;
173
- }
174
174
  getChartingOptions() {
175
175
  return this.adaptable.adaptableOptions.chartingOptions;
176
176
  }
@@ -21,6 +21,8 @@ export declare class ExportApiImpl extends ApiBase implements ExportApi {
21
21
  getReports(): Report[];
22
22
  getReportSchedules(): ReportSchedule[];
23
23
  sendReport(reportName: string, destination: 'Excel' | 'CSV' | 'Clipboard' | 'JSON' | string): void;
24
+ runReport(reportName: string, destination: 'Excel' | 'CSV' | 'Clipboard' | 'JSON' | string): void;
25
+ runSystemReport(systemReportName: 'Visual Data' | 'All Data' | 'Current Data' | 'Selected Cells' | 'Selected Rows', destination: 'Excel' | 'CSV' | 'Clipboard' | 'JSON' | string): void;
24
26
  selectReport(reportName: string): void;
25
27
  selectDestination(destinationName: string): void;
26
28
  getCustomDestinations(): CustomDestination[];
@@ -77,11 +77,17 @@ class ExportApiImpl extends ApiBase_1.ApiBase {
77
77
  return this.getAdaptableState().Schedule.ReportSchedules;
78
78
  }
79
79
  sendReport(reportName, destination) {
80
+ this.runReport(reportName, destination);
81
+ }
82
+ runReport(reportName, destination) {
80
83
  let report = this.getReportByName(reportName);
81
84
  if (this.checkItemExists(report, reportName, 'Report')) {
82
85
  this.dispatchAction(ExportRedux.ExportApply(report, destination));
83
86
  }
84
87
  }
88
+ runSystemReport(systemReportName, destination) {
89
+ this.runReport(systemReportName, destination);
90
+ }
85
91
  selectReport(reportName) {
86
92
  this.dispatchAction(ExportRedux.ReportSelect(reportName));
87
93
  }
@@ -17,4 +17,5 @@ export declare class ExpressionApiImpl extends ApiBase implements ExpressionApi
17
17
  isColumnQueryable(adaptableColumnBase: AdaptableColumnBase): boolean;
18
18
  getAdaptableQueryExpression(query: Partial<AdaptableQuery>): string | undefined;
19
19
  getAdaptableQueryExpressionWithColumnFriendlyNames(query: Partial<AdaptableQuery>): string | undefined;
20
+ useCaseSensitivity(): boolean;
20
21
  }
@@ -92,5 +92,9 @@ class ExpressionApiImpl extends ApiBase_1.ApiBase {
92
92
  .getQueryLanguageService()
93
93
  .getExpressionWithColumnFriendlyNames(this.getAdaptableQueryExpression(query));
94
94
  }
95
+ useCaseSensitivity() {
96
+ return this.adaptable.adaptableOptions.expressionOptions
97
+ .caseSensitiveExpressions;
98
+ }
95
99
  }
96
100
  exports.ExpressionApiImpl = ExpressionApiImpl;
@@ -2,7 +2,7 @@ import { ApiBase } from './ApiBase';
2
2
  import { FilterApi } from '../FilterApi';
3
3
  import { AdaptablePredicateDef, ColumnFilterDef } from '../../PredefinedConfig/Common/AdaptablePredicate';
4
4
  import { AdaptableColumn } from '../../PredefinedConfig/Common/AdaptableColumn';
5
- import { ColumnFilter } from '../../types';
5
+ import { ColumnFilter, ColumnFilterConfig } from '../../types';
6
6
  import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
7
7
  import { FilterInternalApi } from '../Internal/FilterInternalApi';
8
8
  export declare class FilterApiImpl extends ApiBase implements FilterApi {
@@ -34,6 +34,7 @@ export declare class FilterApiImpl extends ApiBase implements FilterApi {
34
34
  * @param filter
35
35
  */
36
36
  isFilterActive(filter: ColumnFilter): boolean;
37
+ setColumnFilterForColumn(columnId: string, columnFilterConfig: ColumnFilterConfig): void;
37
38
  suspendColumnFilter(columnFilter: ColumnFilter): void;
38
39
  unSuspendColumnFilter(columnFilter: ColumnFilter): void;
39
40
  suspendAllColumnFilters(): void;
@@ -14,7 +14,7 @@ class FilterApiImpl extends ApiBase_1.ApiBase {
14
14
  }
15
15
  getFilterPredicateDefsForColumn(column) {
16
16
  const scope = {
17
- ColumnIds: [column.columnId]
17
+ ColumnIds: [column.columnId],
18
18
  };
19
19
  return this.getAdaptableApi()
20
20
  .predicateApi.internalApi.getFilterPredicateDefs(scope)
@@ -138,6 +138,19 @@ class FilterApiImpl extends ApiBase_1.ApiBase {
138
138
  });
139
139
  return allInputsHaveValues;
140
140
  }
141
+ setColumnFilterForColumn(columnId, columnFilterConfig) {
142
+ const columnFilterPredicate = {
143
+ PredicateId: columnFilterConfig.PredicateId,
144
+ };
145
+ if (columnFilterConfig.PredicateInputs) {
146
+ columnFilterPredicate.Inputs = columnFilterConfig.PredicateInputs;
147
+ }
148
+ const columnFilter = {
149
+ ColumnId: columnId,
150
+ Predicate: columnFilterPredicate,
151
+ };
152
+ this.setColumnFilters([columnFilter]);
153
+ }
141
154
  suspendColumnFilter(columnFilter) {
142
155
  this.dispatchAction(LayoutRedux.LayoutColumnFilterSuspend(columnFilter));
143
156
  }
@@ -1,8 +1,9 @@
1
1
  import { ApiBase } from './ApiBase';
2
- import { ActionColumnOptions, ActionRowOptions, AdaptableOptions, AdaptableQLOptions, AlertOptions, CalendarOptions, CellSummaryOptions, ChartingOptions, ColumnOptions, CommentOptions, ContainerOptions, DashboardOptions, DataChangeHistoryOptions, DataSetOptions, EditOptions, EntitlementOptions, ExportOptions, FilterOptions, FlashingCellOptions, FormatColumnOptions, LayoutOptions, MenuOptions, NotificationsOptions, OptionsApi, QuickSearchOptions, SettingsPanelOptions, StateOptions, TeamSharingOptions, ToolPanelOptions, UserInterfaceOptions } from '../../types';
2
+ import { ActionColumnOptions, ActionRowOptions, AdaptableOptions, AlertOptions, CalendarOptions, CellSummaryOptions, ChartingOptions, ColumnOptions, CommentOptions, ContainerOptions, DashboardOptions, DataChangeHistoryOptions, DataSetOptions, EditOptions, EntitlementOptions, ExportOptions, FilterOptions, FlashingCellOptions, FormatColumnOptions, LayoutOptions, MenuOptions, NotificationsOptions, OptionsApi, QuickSearchOptions, SettingsPanelOptions, StateOptions, TeamSharingOptions, ToolPanelOptions, UserInterfaceOptions } from '../../types';
3
3
  import { GroupingOptions } from '../../AdaptableOptions/GroupingOptions';
4
4
  import { CustomSortOptions } from '../../AdaptableOptions/CustomSortOptions';
5
5
  import { Fdc3Options } from '../../AdaptableOptions/Fdc3Options';
6
+ import { ExpressionOptions } from '../../AdaptableOptions/ExpressionOptions';
6
7
  export declare class OptionsApiImpl extends ApiBase implements OptionsApi {
7
8
  getAdaptableId(): string;
8
9
  getAdaptableStateKey(): string;
@@ -29,7 +30,7 @@ export declare class OptionsApiImpl extends ApiBase implements OptionsApi {
29
30
  getLayoutOptions(): LayoutOptions;
30
31
  getMenuOptions(): MenuOptions;
31
32
  getFilterOptions(): FilterOptions;
32
- getAdaptableQLOptions(): AdaptableQLOptions;
33
+ getExpressionOptions(): ExpressionOptions;
33
34
  getQuickSearchOptions(): QuickSearchOptions;
34
35
  getFormatColumnOptions(): FormatColumnOptions;
35
36
  getStateOptions(): StateOptions;
@@ -78,8 +78,8 @@ class OptionsApiImpl extends ApiBase_1.ApiBase {
78
78
  getFilterOptions() {
79
79
  return this.getOptions().filterOptions;
80
80
  }
81
- getAdaptableQLOptions() {
82
- return this.getOptions().adaptableQLOptions;
81
+ getExpressionOptions() {
82
+ return this.getOptions().expressionOptions;
83
83
  }
84
84
  getQuickSearchOptions() {
85
85
  return this.getOptions().quickSearchOptions;
@@ -21,4 +21,5 @@ export declare class PredicateApiImpl extends ApiBase implements PredicateApi {
21
21
  handleColumnPredicates(predicates: AdaptableColumnPredicate[], context: Omit<PredicateDefHandlerContext, 'adaptableApi' | 'inputs'>, defaultReturn: boolean): boolean;
22
22
  handlePredicate(predicate: AdaptablePredicate | undefined, context: Omit<PredicateDefHandlerContext, 'adaptableApi' | 'inputs'>, defaultReturn: boolean): boolean;
23
23
  handlePredicates(predicates: AdaptablePredicate[], params: Omit<PredicateDefHandlerContext, 'adaptableApi' | 'inputs'>, defaultReturn: boolean): boolean;
24
+ useCaseSensitivity(): boolean;
24
25
  }
@@ -19,8 +19,7 @@ class PredicateApiImpl extends ApiBase_1.ApiBase {
19
19
  return AdaptablePredicate_1.SystemPredicateDefs;
20
20
  }
21
21
  getCustomPredicateDefs() {
22
- var _a;
23
- return (_a = this.getAdaptableQLOptions().predicateOptions) === null || _a === void 0 ? void 0 : _a.customPredicateDefs;
22
+ return this.getPredicateOptions().customPredicateDefs;
24
23
  }
25
24
  getPredicateDefsByModuleScope(moduleScope) {
26
25
  return this.getPredicateDefs().filter((p) => p.moduleScope.includes(moduleScope));
@@ -111,5 +110,8 @@ class PredicateApiImpl extends ApiBase_1.ApiBase {
111
110
  }
112
111
  return predicates === null || predicates === void 0 ? void 0 : predicates.every((p) => this.handlePredicate(p, params, defaultReturn));
113
112
  }
113
+ useCaseSensitivity() {
114
+ return this.adaptable.adaptableOptions.predicateOptions.caseSensitivePredicates;
115
+ }
114
116
  }
115
117
  exports.PredicateApiImpl = PredicateApiImpl;
@@ -198,7 +198,7 @@ class ScheduleApiImpl extends ApiBase_1.ApiBase {
198
198
  }
199
199
  else if (scheduleType == 'Report') {
200
200
  const reportSchedule = schedule;
201
- this.adaptable.api.exportApi.sendReport(reportSchedule.ReportName, reportSchedule.ExportDestination);
201
+ this.adaptable.api.exportApi.runReport(reportSchedule.ReportName, reportSchedule.ExportDestination);
202
202
  }
203
203
  else if (scheduleType == 'ipushpull') {
204
204
  const ippApi = this.adaptable.api.pluginsApi.getipushpullPluginApi();
@@ -90,7 +90,6 @@ export declare class AdaptableInternalApi extends ApiBase {
90
90
  createFrameworkComponent(containerDomNode: HTMLElement, frameworkComponent: AdaptableFrameworkComponent, componentType: 'toolPanel' | 'toolbar'): void;
91
91
  destroyFrameworkComponent(containerDomNode: HTMLElement, frameworkComponent: AdaptableFrameworkComponent, componentType: 'toolPanel' | 'toolbar'): void;
92
92
  initializeDataChangeHistory(): void;
93
- isTextComparisonCaseSensitive(): boolean;
94
93
  executeWithProgressIndicator(label: string, executeFn: () => void, errorHandlingFn?: () => void): void;
95
94
  hideProgressIndicator(): void;
96
95
  getCorrectEnglishVariant(wordToSpell: string): string;
@@ -253,9 +253,6 @@ class AdaptableInternalApi extends ApiBase_1.ApiBase {
253
253
  this.dispatchAction(SystemRedux.SystemDataChangeHistoryDisable());
254
254
  }
255
255
  }
256
- isTextComparisonCaseSensitive() {
257
- return this.adaptable.adaptableOptions.adaptableQLOptions.caseSensitiveTextComparisons;
258
- }
259
256
  executeWithProgressIndicator(label, executeFn, errorHandlingFn) {
260
257
  this.dispatchReduxAction((0, SystemRedux_1.SystemProgressIndicatorShow)(label));
261
258
  // setTimeout required to give the ProgressIndicator rendering a head-start (see RAF in ProgressIndicator implementation)
@@ -352,11 +349,11 @@ class AdaptableInternalApi extends ApiBase_1.ApiBase {
352
349
  return adaptableObjectTag;
353
350
  }
354
351
  getAdaptableQueryExpressionText(query) {
355
- var _a, _b;
352
+ var _a;
356
353
  if (!query) {
357
354
  return '';
358
355
  }
359
- const displayColumnFriendlyNames = (_b = (_a = this.adaptable.adaptableOptions.adaptableQLOptions) === null || _a === void 0 ? void 0 : _a.expressionOptions) === null || _b === void 0 ? void 0 : _b.displayColumnFriendlyNamesForExpressions;
356
+ const displayColumnFriendlyNames = (_a = this.adaptable.adaptableOptions.expressionOptions) === null || _a === void 0 ? void 0 : _a.displayColumnFriendlyNamesForExpressions;
360
357
  return displayColumnFriendlyNames
361
358
  ? this.adaptable.api.expressionApi.getAdaptableQueryExpressionWithColumnFriendlyNames(query)
362
359
  : this.adaptable.api.expressionApi.getAdaptableQueryExpression(query);
@@ -14,7 +14,7 @@ class ExpressionInternalApi extends ApiBase_1.ApiBase {
14
14
  }
15
15
  evaluateExpressionInAdaptableQL(module, object, expression) {
16
16
  var _a;
17
- const evaluateExpressionExternallyFn = (_a = this.getAdaptableQLOptions()) === null || _a === void 0 ? void 0 : _a.evaluateAdaptableQLExternally;
17
+ const evaluateExpressionExternallyFn = (_a = this.getExpressionOptions()) === null || _a === void 0 ? void 0 : _a.evaluateAdaptableQLExternally;
18
18
  if (typeof evaluateExpressionExternallyFn !== 'function') {
19
19
  return true;
20
20
  }
@@ -37,7 +37,7 @@ class ExpressionInternalApi extends ApiBase_1.ApiBase {
37
37
  }
38
38
  evaluatePredicatesInAdaptableQL(module, object, predicates) {
39
39
  var _a;
40
- const evaluateExpressionExternallyFn = (_a = this.getAdaptableQLOptions()) === null || _a === void 0 ? void 0 : _a.evaluateAdaptableQLExternally;
40
+ const evaluateExpressionExternallyFn = (_a = this.getExpressionOptions()) === null || _a === void 0 ? void 0 : _a.evaluateAdaptableQLExternally;
41
41
  if (typeof evaluateExpressionExternallyFn !== 'function') {
42
42
  return true;
43
43
  }