@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.
- package/bundle.cjs.js +148 -148
- package/package.json +1 -1
- package/publishTimestamp.d.ts +1 -1
- package/publishTimestamp.js +1 -1
- package/src/AdaptableOptions/AdaptableOptions.d.ts +9 -4
- package/src/AdaptableOptions/ExpressionOptions.d.ts +52 -16
- package/src/AdaptableOptions/Fdc3Options.d.ts +23 -7
- package/src/AdaptableOptions/FilterOptions.d.ts +7 -0
- package/src/AdaptableOptions/PredicateOptions.d.ts +10 -2
- package/src/AdaptableOptions/QuickSearchOptions.d.ts +8 -0
- package/src/Api/ExportApi.d.ts +12 -3
- package/src/Api/ExpressionApi.d.ts +4 -0
- package/src/Api/FilterApi.d.ts +7 -1
- package/src/Api/Implementation/ApiBase.d.ts +3 -4
- package/src/Api/Implementation/ApiBase.js +5 -5
- package/src/Api/Implementation/ExportApiImpl.d.ts +2 -0
- package/src/Api/Implementation/ExportApiImpl.js +6 -0
- package/src/Api/Implementation/ExpressionApiImpl.d.ts +1 -0
- package/src/Api/Implementation/ExpressionApiImpl.js +4 -0
- package/src/Api/Implementation/FilterApiImpl.d.ts +2 -1
- package/src/Api/Implementation/FilterApiImpl.js +14 -1
- package/src/Api/Implementation/OptionsApiImpl.d.ts +3 -2
- package/src/Api/Implementation/OptionsApiImpl.js +2 -2
- package/src/Api/Implementation/PredicateApiImpl.d.ts +1 -0
- package/src/Api/Implementation/PredicateApiImpl.js +4 -2
- package/src/Api/Implementation/ScheduleApiImpl.js +1 -1
- package/src/Api/Internal/AdaptableInternalApi.d.ts +0 -1
- package/src/Api/Internal/AdaptableInternalApi.js +2 -5
- package/src/Api/Internal/ExpressionnternalApi.js +2 -2
- package/src/Api/Internal/PredicateInternalApi.js +5 -5
- package/src/Api/OptionsApi.d.ts +4 -3
- package/src/Api/PredicateApi.d.ts +4 -0
- package/src/PredefinedConfig/Common/AdaptablePredicate.js +15 -8
- package/src/PredefinedConfig/Common/ColumnFilter.d.ts +13 -0
- package/src/PredefinedConfig/Common/Fdc3Context.d.ts +1 -1
- package/src/PredefinedConfig/Common/Fdc3Context.js +1 -1
- package/src/Strategy/Fdc3Module.js +1 -1
- package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
- package/src/Utilities/Constants/GeneralConstants.d.ts +1 -0
- package/src/Utilities/Constants/GeneralConstants.js +3 -2
- package/src/Utilities/Defaults/DefaultAdaptableOptions.js +22 -21
- package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +1 -1
- package/src/Utilities/ExpressionFunctions/observableExpressionFunctions.js +1 -1
- package/src/Utilities/Helpers/AdaptableHelper.js +2 -3
- package/src/Utilities/Services/QueryLanguageService.js +4 -4
- package/src/View/Export/ExportSelector.js +2 -2
- package/src/agGrid/Adaptable.js +9 -3
- package/src/components/ExpressionEditor/BaseEditorInput.js +4 -4
- package/src/metamodel/adaptable.metamodel.d.ts +79 -45
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/types.d.ts +3 -4
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/src/AdaptableOptions/AdaptableQLOptions.d.ts +0 -58
- package/src/AdaptableOptions/AdaptableQLOptions.js +0 -2
|
@@ -22,7 +22,7 @@ class PredicateInternalApi extends ApiBase_1.ApiBase {
|
|
|
22
22
|
].filter((predicateDef) => predicateDef.moduleScope.includes('filter'));
|
|
23
23
|
}
|
|
24
24
|
getSystemFilterPredicateIds(scope) {
|
|
25
|
-
const systemFilterPredicates = this.
|
|
25
|
+
const systemFilterPredicates = this.getPredicateOptions().systemFilterPredicates;
|
|
26
26
|
if (typeof systemFilterPredicates === 'function') {
|
|
27
27
|
const systemPredicateContext = {
|
|
28
28
|
adaptableApi: this.adaptable.api,
|
|
@@ -49,7 +49,7 @@ class PredicateInternalApi extends ApiBase_1.ApiBase {
|
|
|
49
49
|
].filter((predicateDef) => predicateDef.moduleScope.includes('alert'));
|
|
50
50
|
}
|
|
51
51
|
getSystemAlertPredicateIds(scope) {
|
|
52
|
-
const systemAlertPredicates = this.
|
|
52
|
+
const systemAlertPredicates = this.getPredicateOptions().systemAlertPredicates;
|
|
53
53
|
if (typeof systemAlertPredicates === 'function') {
|
|
54
54
|
const systemPredicateContext = {
|
|
55
55
|
adaptableApi: this.adaptable.api,
|
|
@@ -66,7 +66,7 @@ class PredicateInternalApi extends ApiBase_1.ApiBase {
|
|
|
66
66
|
return systemAlertPredicates;
|
|
67
67
|
}
|
|
68
68
|
getSystemBadgeStylePredicateIds(scope) {
|
|
69
|
-
const systemBadgeStylePredicates = this.
|
|
69
|
+
const systemBadgeStylePredicates = this.getPredicateOptions().systemBadgeStylePredicates;
|
|
70
70
|
if (typeof systemBadgeStylePredicates === 'function') {
|
|
71
71
|
const systemPredicateContext = {
|
|
72
72
|
adaptableApi: this.adaptable.api,
|
|
@@ -93,7 +93,7 @@ class PredicateInternalApi extends ApiBase_1.ApiBase {
|
|
|
93
93
|
].filter((predicateDef) => predicateDef.moduleScope.includes('formatColumn'));
|
|
94
94
|
}
|
|
95
95
|
getSystemFormatColumnPredicateIds(scope) {
|
|
96
|
-
const systemFormatColumnPredicates = this.
|
|
96
|
+
const systemFormatColumnPredicates = this.getPredicateOptions().systemFormatColumnPredicates;
|
|
97
97
|
if (typeof systemFormatColumnPredicates === 'function') {
|
|
98
98
|
const systemPredicateContext = {
|
|
99
99
|
adaptableApi: this.adaptable.api,
|
|
@@ -120,7 +120,7 @@ class PredicateInternalApi extends ApiBase_1.ApiBase {
|
|
|
120
120
|
].filter((predicateDef) => predicateDef.moduleScope.includes('flashingcell'));
|
|
121
121
|
}
|
|
122
122
|
getSystemFlashingCellPredicateIds(scope) {
|
|
123
|
-
const systemFlashingCellPredicates = this.
|
|
123
|
+
const systemFlashingCellPredicates = this.getPredicateOptions().systemFlashingCellPredicates;
|
|
124
124
|
if (typeof systemFlashingCellPredicates === 'function') {
|
|
125
125
|
const systemPredicateContext = {
|
|
126
126
|
adaptableApi: this.adaptable.api,
|
package/src/Api/OptionsApi.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { CustomSortOptions } from '../AdaptableOptions/CustomSortOptions';
|
|
2
2
|
import { DataSetOptions } from '../AdaptableOptions/DataSetOptions';
|
|
3
3
|
import { GroupingOptions } from '../AdaptableOptions/GroupingOptions';
|
|
4
|
-
import { ActionColumnOptions, ActionRowOptions, AdaptableOptions,
|
|
4
|
+
import { ActionColumnOptions, ActionRowOptions, AdaptableOptions, AlertOptions, CalendarOptions, CellSummaryOptions, ChartingOptions, ColumnOptions, CommentOptions, ContainerOptions, DashboardOptions, DataChangeHistoryOptions, EditOptions, EntitlementOptions, ExportOptions, FilterOptions, FlashingCellOptions, FormatColumnOptions, LayoutOptions, MenuOptions, NotificationsOptions, QuickSearchOptions, SettingsPanelOptions, StateOptions, TeamSharingOptions, ToolPanelOptions, UserInterfaceOptions } from '../types';
|
|
5
5
|
import { Fdc3Options } from '../AdaptableOptions/Fdc3Options';
|
|
6
|
+
import { ExpressionOptions } from '../AdaptableOptions/ExpressionOptions';
|
|
6
7
|
/**
|
|
7
8
|
* Range of functions to access Adaptable Options
|
|
8
9
|
*/
|
|
@@ -48,9 +49,9 @@ export interface OptionsApi {
|
|
|
48
49
|
*/
|
|
49
50
|
getAlertOptions(): Readonly<AlertOptions>;
|
|
50
51
|
/**
|
|
51
|
-
* Returns `AdaptableOptions.
|
|
52
|
+
* Returns `AdaptableOptions.expressionOptions`
|
|
52
53
|
*/
|
|
53
|
-
|
|
54
|
+
getExpressionOptions(): Readonly<ExpressionOptions>;
|
|
54
55
|
/**
|
|
55
56
|
* Returns `AdaptableOptions.calendarOptions`
|
|
56
57
|
*/
|
|
@@ -81,4 +81,8 @@ export interface PredicateApi {
|
|
|
81
81
|
* @param defaultReturn Whether to return the default
|
|
82
82
|
*/
|
|
83
83
|
handlePredicates(predicates: AdaptablePredicate[], params: Omit<PredicateDefHandlerContext, 'adaptableApi' | 'inputs'>, defaultReturn: boolean): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Whether Predicates are evaluated using Case Sensitivity
|
|
86
|
+
*/
|
|
87
|
+
useCaseSensitivity(): boolean;
|
|
84
88
|
}
|
|
@@ -18,6 +18,7 @@ const isYesterday_1 = tslib_1.__importDefault(require("date-fns/isYesterday"));
|
|
|
18
18
|
const StringExtensions_1 = tslib_1.__importDefault(require("../../Utilities/Extensions/StringExtensions"));
|
|
19
19
|
const DateHelper_1 = require("../../Utilities/Helpers/DateHelper");
|
|
20
20
|
const Helper_1 = tslib_1.__importDefault(require("../../Utilities/Helpers/Helper"));
|
|
21
|
+
const GeneralConstants_1 = require("../../Utilities/Constants/GeneralConstants");
|
|
21
22
|
/**
|
|
22
23
|
* Array of Predicate Defs which are shipped by AdapTable
|
|
23
24
|
*/
|
|
@@ -32,6 +33,9 @@ exports.SystemPredicateDefs = [
|
|
|
32
33
|
if (inputs.length === 0) {
|
|
33
34
|
return true;
|
|
34
35
|
}
|
|
36
|
+
if (inputs.includes(GeneralConstants_1.BLANK_DISTINCT_COLUMN_VALUE) && Helper_1.default.IsInputNullOrEmpty(value)) {
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
35
39
|
if (column.dataType === 'Date') {
|
|
36
40
|
return inputs.some((input) => {
|
|
37
41
|
if (adaptableApi.optionsApi.getFilterOptions().filterUsingTime) {
|
|
@@ -46,7 +50,7 @@ exports.SystemPredicateDefs = [
|
|
|
46
50
|
return inputs.includes(value);
|
|
47
51
|
}
|
|
48
52
|
if (column.dataType === 'String') {
|
|
49
|
-
return adaptableApi.
|
|
53
|
+
return adaptableApi.predicateApi.useCaseSensitivity()
|
|
50
54
|
? inputs
|
|
51
55
|
.map((i) => {
|
|
52
56
|
return i === null || i === void 0 ? void 0 : i.toLocaleLowerCase();
|
|
@@ -70,6 +74,9 @@ exports.SystemPredicateDefs = [
|
|
|
70
74
|
if (inputs.length === 0) {
|
|
71
75
|
return true;
|
|
72
76
|
}
|
|
77
|
+
if (inputs.includes(GeneralConstants_1.BLANK_DISTINCT_COLUMN_VALUE) && Helper_1.default.IsInputNullOrEmpty(value)) {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
73
80
|
if (column.dataType === 'Date') {
|
|
74
81
|
if (adaptableApi.optionsApi.getFilterOptions().filterUsingTime) {
|
|
75
82
|
return inputs.every((input) => {
|
|
@@ -86,7 +93,7 @@ exports.SystemPredicateDefs = [
|
|
|
86
93
|
return !inputs.includes(value);
|
|
87
94
|
}
|
|
88
95
|
if (column.dataType === 'String') {
|
|
89
|
-
return adaptableApi.
|
|
96
|
+
return adaptableApi.predicateApi.useCaseSensitivity()
|
|
90
97
|
? !inputs
|
|
91
98
|
.map((i) => {
|
|
92
99
|
return i === null || i === void 0 ? void 0 : i.toLocaleLowerCase();
|
|
@@ -255,7 +262,7 @@ exports.SystemPredicateDefs = [
|
|
|
255
262
|
if (!value) {
|
|
256
263
|
return false;
|
|
257
264
|
}
|
|
258
|
-
const ignoreCase = !adaptableApi.
|
|
265
|
+
const ignoreCase = !adaptableApi.predicateApi.useCaseSensitivity();
|
|
259
266
|
const v = ignoreCase ? String(value).toLocaleLowerCase() : String(value);
|
|
260
267
|
const i = ignoreCase ? String(inputs[0]).toLocaleLowerCase() : String(inputs[0]);
|
|
261
268
|
return v == i;
|
|
@@ -274,7 +281,7 @@ exports.SystemPredicateDefs = [
|
|
|
274
281
|
if (!value) {
|
|
275
282
|
return true;
|
|
276
283
|
}
|
|
277
|
-
const ignoreCase = !adaptableApi.
|
|
284
|
+
const ignoreCase = !adaptableApi.predicateApi.useCaseSensitivity();
|
|
278
285
|
const v = ignoreCase ? String(value).toLocaleLowerCase() : String(value);
|
|
279
286
|
const i = ignoreCase ? String(inputs[0]).toLocaleLowerCase() : String(inputs[0]);
|
|
280
287
|
return v != i;
|
|
@@ -293,7 +300,7 @@ exports.SystemPredicateDefs = [
|
|
|
293
300
|
if (!value) {
|
|
294
301
|
return false;
|
|
295
302
|
}
|
|
296
|
-
const ignoreCase = !adaptableApi.
|
|
303
|
+
const ignoreCase = !adaptableApi.predicateApi.useCaseSensitivity();
|
|
297
304
|
const v = ignoreCase ? String(value).toLocaleLowerCase() : String(value);
|
|
298
305
|
const i = ignoreCase ? String(inputs[0]).toLocaleLowerCase() : String(inputs[0]);
|
|
299
306
|
return v.indexOf(i) !== -1;
|
|
@@ -311,7 +318,7 @@ exports.SystemPredicateDefs = [
|
|
|
311
318
|
if (!value) {
|
|
312
319
|
return true;
|
|
313
320
|
}
|
|
314
|
-
const ignoreCase = !adaptableApi.
|
|
321
|
+
const ignoreCase = !adaptableApi.predicateApi.useCaseSensitivity();
|
|
315
322
|
const v = ignoreCase ? String(value).toLocaleLowerCase() : String(value);
|
|
316
323
|
const i = ignoreCase ? String(inputs[0]).toLocaleLowerCase() : String(inputs[0]);
|
|
317
324
|
return v.indexOf(i) === -1;
|
|
@@ -329,7 +336,7 @@ exports.SystemPredicateDefs = [
|
|
|
329
336
|
if (!value) {
|
|
330
337
|
return false;
|
|
331
338
|
}
|
|
332
|
-
const ignoreCase = !adaptableApi.
|
|
339
|
+
const ignoreCase = !adaptableApi.predicateApi.useCaseSensitivity();
|
|
333
340
|
const v = ignoreCase ? String(value).toLocaleLowerCase() : String(value);
|
|
334
341
|
const i = ignoreCase ? String(inputs[0]).toLocaleLowerCase() : String(inputs[0]);
|
|
335
342
|
return v.startsWith(i);
|
|
@@ -347,7 +354,7 @@ exports.SystemPredicateDefs = [
|
|
|
347
354
|
if (!value) {
|
|
348
355
|
return false;
|
|
349
356
|
}
|
|
350
|
-
const ignoreCase = !adaptableApi.
|
|
357
|
+
const ignoreCase = !adaptableApi.predicateApi.useCaseSensitivity();
|
|
351
358
|
const v = ignoreCase ? String(value).toLocaleLowerCase() : String(value);
|
|
352
359
|
const i = ignoreCase ? String(inputs[0]).toLocaleLowerCase() : String(inputs[0]);
|
|
353
360
|
return v.endsWith(i);
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import { SuspendableObject, AdaptablePredicate } from '../../types';
|
|
2
2
|
import { TypeHint } from './Types';
|
|
3
|
+
/**
|
|
4
|
+
* Configuration for a Column Filter
|
|
5
|
+
*/
|
|
6
|
+
export interface ColumnFilterConfig {
|
|
7
|
+
/**
|
|
8
|
+
* The Predicate ID to use when filtering the column
|
|
9
|
+
*/
|
|
10
|
+
PredicateId: TypeHint<string, SystemFilterPredicateId>;
|
|
11
|
+
/**
|
|
12
|
+
* Optional Inputs that might be needed for evaluation
|
|
13
|
+
*/
|
|
14
|
+
PredicateInputs?: any[];
|
|
15
|
+
}
|
|
3
16
|
/**
|
|
4
17
|
* Defines a Filter applied on a Column using a Predicate
|
|
5
18
|
*/
|
|
@@ -52,7 +52,7 @@ class Fdc3Module extends AdaptableModuleBase_1.AdaptableModuleBase {
|
|
|
52
52
|
};
|
|
53
53
|
if ((_a = intentConfig.contextMenu) === null || _a === void 0 ? void 0 : _a.icon) {
|
|
54
54
|
const menuItemIcon = ((_b = intentConfig.contextMenu) === null || _b === void 0 ? void 0 : _b.icon) === '_defaultFdc3'
|
|
55
|
-
? this.getFdc3Api().internalApi.
|
|
55
|
+
? this.getFdc3Api().internalApi.getDefaultIconForIntent(intentType)
|
|
56
56
|
: (_c = intentConfig.contextMenu) === null || _c === void 0 ? void 0 : _c.icon;
|
|
57
57
|
menuItem.icon = menuItemIcon;
|
|
58
58
|
}
|
|
@@ -10,7 +10,7 @@ exports.ObservableQueryDocsLink = `${exports.HOST_URL_DOCS}/guide/adaptable-ql-e
|
|
|
10
10
|
exports.AggregatedBooleanQueryDocsLink = `${exports.HOST_URL_DOCS}/guide/adaptable-ql-expression-aggregation-boolean`;
|
|
11
11
|
exports.AggregatedScalarQueryDocsLink = `${exports.HOST_URL_DOCS}/guide/adaptable-ql-expression-aggregation-scalar`;
|
|
12
12
|
exports.CumulativeAggregatedScalarQueryDocsLink = `${exports.HOST_URL_DOCS}/guide/adaptable-ql-expression-cumulative`;
|
|
13
|
-
exports.PredicateDocsLink = `${exports.HOST_URL_DOCS}/guide/adaptable-
|
|
13
|
+
exports.PredicateDocsLink = `${exports.HOST_URL_DOCS}/guide/adaptable-predicate`;
|
|
14
14
|
exports.PrimaryKeyDocsLink = `${exports.HOST_URL_DOCS}/guide/getting-started-primary-key`;
|
|
15
15
|
exports.LicenseDocsLink = `${exports.HOST_URL_DOCS}/guide/licensing`;
|
|
16
16
|
exports.AdaptableOptionsDocsLink = `${exports.HOST_URL_DOCS}/guide/reference-options-overview`;
|
|
@@ -33,6 +33,7 @@ export declare const ADAPTABLE_ROW_ACTION_BUTTONS = "adaptableRowActionButtons";
|
|
|
33
33
|
export declare const ADAPTABLE_ROW_ACTION_BUTTONS_FRIENDLY_NAME = "(ActionRowButtons)";
|
|
34
34
|
export declare const ADAPTABLE_FDC3_ACTION_COLUMN_FRIENDLY_NAME = "(FDC3ActionColumn)";
|
|
35
35
|
export declare const DEFAULT_DATE_FORMAT_PATTERN = "dd-MM-yyyy";
|
|
36
|
+
export declare const BLANK_DISTINCT_COLUMN_VALUE = "[BLANKS]";
|
|
36
37
|
export declare const SYSTEM_STATUS_DEFAULT_MAX_MESSAGES_IN_STORE: number;
|
|
37
38
|
export declare const QUICK_SEARCH_DEFAULT_BACK_COLOR: string;
|
|
38
39
|
export declare const QUICK_SEARCH_DEFAULT_FORE_COLOR: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.THEME_STYLE = exports.SELECTED_ROWS_REPORT = exports.SELECTED_CELLS_REPORT = exports.CURRENT_DATA_REPORT = exports.ALL_DATA_REPORT = exports.VISUAL_DATA_REPORT = exports.SYSTEM_THEMES = exports.SMART_EDIT_MATH_OPERATION_STATE_PROPERTY = exports.SMART_EDIT_VALUE_STATE_PROPERTY = exports.QUICK_SEARCH_STYLE_STATE_PROPERTY = exports.QUICK_SEARCH_TEXT_STATE_PROPERTY = exports.CURRENT_THEME_STATE_PROPERTY = void 0;
|
|
3
|
+
exports.FLASHING_CELL_DEFAULT_DOWN_COLOR_STATE_PROPERTY = exports.FLASHING_CELL_DEFAULT_UP_COLOR_STATE_PROPERTY = exports.CURRENT_REPORT_STATE_PROPERTY = exports.CURRENT_LAYOUT_STATE_PROPERTY = exports.SUMMARY_OPERATION_STATE_PROPERTY = exports.ALERT_DEFAULT_SHOW_POPUP = exports.ALERT_DEFAULT_MESSAGE_TYPE = exports.PLUS_MINUS_DEFAULT_NUDGE_VALUE = exports.SERVER_VALIDATION_MESSAGE_TYPE = exports.SERVER_VALIDATION_HEADER = exports.DEFAULT_LIVE_REPORT_THROTTLE_TIME = exports.THEME_DEFAULT_CURRENT_THEME = exports.SYSTEM_DEFAULT_SYSTEM_STATUS_TYPE = exports.CELL_SUMMARY_DEFAULT_OPERATION = exports.QUICK_SEARCH_DEBOUNCE_TIME = exports.QUICK_SEARCH_DEFAULT_FORE_COLOR = exports.QUICK_SEARCH_DEFAULT_BACK_COLOR = exports.SYSTEM_STATUS_DEFAULT_MAX_MESSAGES_IN_STORE = exports.BLANK_DISTINCT_COLUMN_VALUE = exports.DEFAULT_DATE_FORMAT_PATTERN = exports.ADAPTABLE_FDC3_ACTION_COLUMN_FRIENDLY_NAME = exports.ADAPTABLE_ROW_ACTION_BUTTONS_FRIENDLY_NAME = exports.ADAPTABLE_ROW_ACTION_BUTTONS = exports.AG_GRID_CHART_WINDOW = exports.AG_GRID_PIVOT_COLUMN = exports.AG_GRID_GROUPED_COLUMN = exports.HALF_SECOND = exports.AB_FDC3_COLUMN = exports.AB_ROW_ACTIONS_COLUMN = exports.AB_SPECIAL_COLUMN = exports.EMPTY_ARRAY = exports.EMPTY_STRING = exports.FILTER_THROTTLE = exports.FILTER_NEVER = exports.FILTER_ALWAYS = exports.ALL_COLUMN_VALUES = exports.READ_ONLY_STYLE = exports.MENU_PREFIX = exports.AGGRID_TOOLPANEL_COLUMNS = exports.AGGRID_TOOLPANEL_FILTERS = exports.ADAPTABLE_TOOLPANEL_COMPONENT = exports.ADAPTABLE_TOOLPANEL_ID = exports.ADAPTABLE = exports.ADAPTABLE_ID = exports.USER_NAME = exports.DARK_THEME = exports.LIGHT_THEME = exports.DEFAULT_LAYOUT = exports.MISSING_COLUMN = exports.AUTOGENERATED_PK_COLUMN = void 0;
|
|
4
|
+
exports.THEME_STYLE = exports.SELECTED_ROWS_REPORT = exports.SELECTED_CELLS_REPORT = exports.CURRENT_DATA_REPORT = exports.ALL_DATA_REPORT = exports.VISUAL_DATA_REPORT = exports.SYSTEM_THEMES = exports.SMART_EDIT_MATH_OPERATION_STATE_PROPERTY = exports.SMART_EDIT_VALUE_STATE_PROPERTY = exports.QUICK_SEARCH_STYLE_STATE_PROPERTY = exports.QUICK_SEARCH_TEXT_STATE_PROPERTY = exports.CURRENT_THEME_STATE_PROPERTY = exports.FLASHING_CELL_DEFAULT_DURATION_STATE_PROPERTY = void 0;
|
|
5
5
|
const Enums_1 = require("../../PredefinedConfig/Common/Enums");
|
|
6
6
|
const UIHelper_1 = require("../../View/UIHelper");
|
|
7
7
|
exports.AUTOGENERATED_PK_COLUMN = '__ADAPTABLE_PK__';
|
|
@@ -36,6 +36,7 @@ exports.ADAPTABLE_ROW_ACTION_BUTTONS = 'adaptableRowActionButtons';
|
|
|
36
36
|
exports.ADAPTABLE_ROW_ACTION_BUTTONS_FRIENDLY_NAME = '(ActionRowButtons)';
|
|
37
37
|
exports.ADAPTABLE_FDC3_ACTION_COLUMN_FRIENDLY_NAME = '(FDC3ActionColumn)';
|
|
38
38
|
exports.DEFAULT_DATE_FORMAT_PATTERN = 'dd-MM-yyyy';
|
|
39
|
+
exports.BLANK_DISTINCT_COLUMN_VALUE = '[BLANKS]';
|
|
39
40
|
/*
|
|
40
41
|
Redux / State Defaults
|
|
41
42
|
Try to put all our Redux / State defaults here and ONLY reference from here - avoid magic numbers / strings.
|
|
@@ -54,28 +54,18 @@ exports.DefaultAdaptableOptions = {
|
|
|
54
54
|
BackColor: (0, UIHelper_1.getHexForName)(UIHelper_1.GRAY),
|
|
55
55
|
},
|
|
56
56
|
},
|
|
57
|
-
|
|
58
|
-
caseSensitiveTextComparisons: false,
|
|
57
|
+
expressionOptions: {
|
|
59
58
|
evaluateAdaptableQLExternally: undefined,
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
},
|
|
71
|
-
predicateOptions: {
|
|
72
|
-
customPredicateDefs: [],
|
|
73
|
-
systemFilterPredicates: AdaptablePredicate_1.SystemFilterPredicateIds,
|
|
74
|
-
systemAlertPredicates: AdaptablePredicate_1.SystemAlertPredicateIds,
|
|
75
|
-
systemFormatColumnPredicates: AdaptablePredicate_1.SystemFormatColumnPredicateIds,
|
|
76
|
-
systemFlashingCellPredicates: AdaptablePredicate_1.SystemFlashingCellPredicateIds,
|
|
77
|
-
systemBadgeStylePredicates: AdaptablePredicate_1.SystemBadgeStylePredicateIds,
|
|
78
|
-
},
|
|
59
|
+
displayColumnFriendlyNamesForExpressions: true,
|
|
60
|
+
systemBooleanFunctions: undefined,
|
|
61
|
+
systemScalarFunctions: undefined,
|
|
62
|
+
systemObservableFunctions: undefined,
|
|
63
|
+
systemAggregatedBooleanFunctions: undefined,
|
|
64
|
+
systemAggregatedScalarFunctions: undefined,
|
|
65
|
+
moduleExpressionFunctions: undefined,
|
|
66
|
+
performExpressionValidation: true,
|
|
67
|
+
maxTimeframeSize: 28800000,
|
|
68
|
+
caseSensitiveExpressions: false,
|
|
79
69
|
},
|
|
80
70
|
calendarOptions: { holidays: undefined },
|
|
81
71
|
cellSummaryOptions: { cellSummaryOperations: undefined },
|
|
@@ -221,6 +211,16 @@ exports.DefaultAdaptableOptions = {
|
|
|
221
211
|
quickFilterWildcards: {},
|
|
222
212
|
showValuesCount: undefined,
|
|
223
213
|
quickFilterValuesWidth: 180,
|
|
214
|
+
includeBlankFilterValues: false,
|
|
215
|
+
},
|
|
216
|
+
predicateOptions: {
|
|
217
|
+
customPredicateDefs: [],
|
|
218
|
+
systemFilterPredicates: AdaptablePredicate_1.SystemFilterPredicateIds,
|
|
219
|
+
systemAlertPredicates: AdaptablePredicate_1.SystemAlertPredicateIds,
|
|
220
|
+
systemFormatColumnPredicates: AdaptablePredicate_1.SystemFormatColumnPredicateIds,
|
|
221
|
+
systemFlashingCellPredicates: AdaptablePredicate_1.SystemFlashingCellPredicateIds,
|
|
222
|
+
systemBadgeStylePredicates: AdaptablePredicate_1.SystemBadgeStylePredicateIds,
|
|
223
|
+
caseSensitivePredicates: false,
|
|
224
224
|
},
|
|
225
225
|
quickSearchOptions: {
|
|
226
226
|
excludeColumnFromQuickSearch: undefined,
|
|
@@ -228,6 +228,7 @@ exports.DefaultAdaptableOptions = {
|
|
|
228
228
|
clearSearchesOnStartUp: false,
|
|
229
229
|
quickSearchPlaceholder: 'Search',
|
|
230
230
|
filterResultsAfterQuickSearch: false,
|
|
231
|
+
runQuickSearchWithCaseSensitivity: false,
|
|
231
232
|
},
|
|
232
233
|
stateOptions: {
|
|
233
234
|
debounceStateDelay: 400,
|
|
@@ -19,7 +19,7 @@ const getStringValue = (context, stringArgument) => {
|
|
|
19
19
|
return (0, exports.isTextSearchCaseInsensitive)(context) ? stringArgument.toLowerCase() : stringArgument;
|
|
20
20
|
};
|
|
21
21
|
exports.getStringValue = getStringValue;
|
|
22
|
-
const isTextSearchCaseInsensitive = (context) => !context.adaptableApi.
|
|
22
|
+
const isTextSearchCaseInsensitive = (context) => !context.adaptableApi.expressionApi.useCaseSensitivity();
|
|
23
23
|
exports.isTextSearchCaseInsensitive = isTextSearchCaseInsensitive;
|
|
24
24
|
// returns an observable which filters the source$ emissions and emits only if the CellDataChangedInfo relates to the given column
|
|
25
25
|
// optionally, if a filter function (where clause) is provided, it is also evaluated
|
|
@@ -428,7 +428,7 @@ const getSlidingTimeframe$ = (source$, timeframeDuration, onTimeframeEnter, onTi
|
|
|
428
428
|
}));
|
|
429
429
|
};
|
|
430
430
|
const getMaxTimeframeSize = (expressionValue, context) => {
|
|
431
|
-
let maxTimeframeSize = context.adaptableApi.optionsApi.
|
|
431
|
+
let maxTimeframeSize = context.adaptableApi.optionsApi.getExpressionOptions().maxTimeframeSize;
|
|
432
432
|
if (maxTimeframeSize > SYSTEM_MAX_TIMEFRAME_SIZE) {
|
|
433
433
|
maxTimeframeSize = SYSTEM_MAX_TIMEFRAME_SIZE;
|
|
434
434
|
}
|
|
@@ -11,14 +11,13 @@ function assignAdaptableOptions(adaptableOptions) {
|
|
|
11
11
|
const returnedAdaptableOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions, adaptableOptions);
|
|
12
12
|
returnedAdaptableOptions.adaptableStateKey =
|
|
13
13
|
(_a = returnedAdaptableOptions.adaptableStateKey) !== null && _a !== void 0 ? _a : returnedAdaptableOptions.adaptableId;
|
|
14
|
-
returnedAdaptableOptions.
|
|
14
|
+
returnedAdaptableOptions.expressionOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.expressionOptions, adaptableOptions.expressionOptions);
|
|
15
15
|
returnedAdaptableOptions.calendarOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.calendarOptions, adaptableOptions.calendarOptions);
|
|
16
16
|
returnedAdaptableOptions.columnOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.columnOptions, adaptableOptions.columnOptions);
|
|
17
17
|
returnedAdaptableOptions.customSortOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.customSortOptions, adaptableOptions.customSortOptions);
|
|
18
18
|
returnedAdaptableOptions.dataSetOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.dataSetOptions, adaptableOptions.dataSetOptions);
|
|
19
19
|
returnedAdaptableOptions.cellSummaryOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.cellSummaryOptions, adaptableOptions.cellSummaryOptions);
|
|
20
|
-
returnedAdaptableOptions.
|
|
21
|
-
returnedAdaptableOptions.adaptableQLOptions.predicateOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.adaptableQLOptions.predicateOptions, returnedAdaptableOptions.adaptableQLOptions.predicateOptions);
|
|
20
|
+
returnedAdaptableOptions.predicateOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.predicateOptions, returnedAdaptableOptions.predicateOptions);
|
|
22
21
|
returnedAdaptableOptions.layoutOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.layoutOptions, adaptableOptions.layoutOptions);
|
|
23
22
|
returnedAdaptableOptions.notificationsOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.notificationsOptions, adaptableOptions.notificationsOptions);
|
|
24
23
|
returnedAdaptableOptions.alertOptions = Object.assign({}, DefaultAdaptableOptions_1.DefaultAdaptableOptions.alertOptions, adaptableOptions.alertOptions);
|
|
@@ -93,7 +93,7 @@ class QueryLanguageService {
|
|
|
93
93
|
}
|
|
94
94
|
const force = (_a = config === null || config === void 0 ? void 0 : config.force) !== null && _a !== void 0 ? _a : false;
|
|
95
95
|
// see if validation should be performed
|
|
96
|
-
if (!this.adaptableApi.optionsApi.
|
|
96
|
+
if (!this.adaptableApi.optionsApi.getExpressionOptions()
|
|
97
97
|
.performExpressionValidation &&
|
|
98
98
|
!force) {
|
|
99
99
|
const result = { isValid: true, errorMessage: '' };
|
|
@@ -283,7 +283,7 @@ class QueryLanguageService {
|
|
|
283
283
|
// if there are no specific functions defined, it falls back to the default values
|
|
284
284
|
getModuleExpressionFunctionsMap(module) {
|
|
285
285
|
var _a, _b, _c;
|
|
286
|
-
const expressionOptions = this.adaptableApi.optionsApi.
|
|
286
|
+
const expressionOptions = this.adaptableApi.optionsApi.getExpressionOptions();
|
|
287
287
|
if (module) {
|
|
288
288
|
let cachedResult = this.cacheModuleSpecificExpressionFunctions.get(module);
|
|
289
289
|
if (cachedResult) {
|
|
@@ -369,14 +369,14 @@ class QueryLanguageService {
|
|
|
369
369
|
return generalExpressionFunctions;
|
|
370
370
|
}
|
|
371
371
|
evaluateCustomQueryVariable(functionName, args) {
|
|
372
|
-
var _a, _b
|
|
372
|
+
var _a, _b;
|
|
373
373
|
const context = {
|
|
374
374
|
adaptableApi: this.adaptableApi,
|
|
375
375
|
userName: this.adaptableApi.optionsApi.getUserName(),
|
|
376
376
|
adaptableId: this.adaptableApi.optionsApi.getAdaptableId(),
|
|
377
377
|
args,
|
|
378
378
|
};
|
|
379
|
-
const customQueryVariableDefinition = (
|
|
379
|
+
const customQueryVariableDefinition = (_b = (_a = this.adaptableApi.optionsApi.getExpressionOptions()) === null || _a === void 0 ? void 0 : _a.customQueryVariables) === null || _b === void 0 ? void 0 : _b[functionName];
|
|
380
380
|
return typeof customQueryVariableDefinition === 'function'
|
|
381
381
|
? customQueryVariableDefinition(context)
|
|
382
382
|
: customQueryVariableDefinition;
|
|
@@ -63,10 +63,10 @@ const ExportSelector = () => {
|
|
|
63
63
|
// export
|
|
64
64
|
const handleExport = () => {
|
|
65
65
|
if (isCustomDestination(currentDestination)) {
|
|
66
|
-
adaptable.api.exportApi.
|
|
66
|
+
adaptable.api.exportApi.runReport(currentReport.Name, currentDestination.name);
|
|
67
67
|
}
|
|
68
68
|
else {
|
|
69
|
-
adaptable.api.exportApi.
|
|
69
|
+
adaptable.api.exportApi.runReport(currentReport.Name, currentDestination);
|
|
70
70
|
}
|
|
71
71
|
};
|
|
72
72
|
return (React.createElement(React.Fragment, null,
|
package/src/agGrid/Adaptable.js
CHANGED
|
@@ -1284,7 +1284,7 @@ class Adaptable {
|
|
|
1284
1284
|
return false;
|
|
1285
1285
|
}
|
|
1286
1286
|
const displayValue = (_a = this.api.gridApi.getDisplayValueFromRowNode(params.node, abColumn.columnId)) !== null && _a !== void 0 ? _a : '';
|
|
1287
|
-
const ignoreCase = !this.
|
|
1287
|
+
const ignoreCase = !this.adaptableOptions.quickSearchOptions.runQuickSearchWithCaseSensitivity;
|
|
1288
1288
|
const v = ignoreCase ? String(displayValue).toLocaleLowerCase() : String(displayValue);
|
|
1289
1289
|
const i = ignoreCase ? String(quickSearchValue).toLocaleLowerCase() : String(quickSearchValue);
|
|
1290
1290
|
return v.indexOf(i) !== -1;
|
|
@@ -1907,7 +1907,13 @@ class Adaptable {
|
|
|
1907
1907
|
else {
|
|
1908
1908
|
this.gridOptions.api.forEachNode((rowNode) => {
|
|
1909
1909
|
const gridCell = this.addDistinctColumnValue(rowNode, column.columnId);
|
|
1910
|
-
if (gridCell && gridCell.
|
|
1910
|
+
if (gridCell && gridCell.rowNode !== skipRowNode) {
|
|
1911
|
+
if (gridCell.rawValue == undefined &&
|
|
1912
|
+
this.adaptableOptions.filterOptions.includeBlankFilterValues) {
|
|
1913
|
+
gridCell.rawValue = GeneralConstants_1.BLANK_DISTINCT_COLUMN_VALUE;
|
|
1914
|
+
gridCell.displayValue = GeneralConstants_1.BLANK_DISTINCT_COLUMN_VALUE;
|
|
1915
|
+
gridCell.normalisedValue = GeneralConstants_1.BLANK_DISTINCT_COLUMN_VALUE;
|
|
1916
|
+
}
|
|
1911
1917
|
returnValues.push(gridCell);
|
|
1912
1918
|
}
|
|
1913
1919
|
});
|
|
@@ -1920,7 +1926,7 @@ class Adaptable {
|
|
|
1920
1926
|
}
|
|
1921
1927
|
return value;
|
|
1922
1928
|
});
|
|
1923
|
-
if (column.dataType == 'String' && this.api.
|
|
1929
|
+
if (column.dataType == 'String' && this.api.predicateApi.useCaseSensitivity()) {
|
|
1924
1930
|
uniqueVals = (0, uniqBy_1.default)(uniqueVals, (d) => d.displayValue.toLowerCase());
|
|
1925
1931
|
}
|
|
1926
1932
|
return uniqueVals.slice(0, this.adaptableOptions.filterOptions.maxFilterValuesToDisplay);
|
|
@@ -46,13 +46,13 @@ const getCategoryOrder = (category) => {
|
|
|
46
46
|
return predefinedOrder[category] || 0;
|
|
47
47
|
};
|
|
48
48
|
const VarEditorButton = () => {
|
|
49
|
-
var _a
|
|
49
|
+
var _a;
|
|
50
50
|
const adaptable = (0, AdaptableContext_1.useAdaptable)();
|
|
51
|
-
const
|
|
52
|
-
if (!
|
|
51
|
+
const customQueryVariables = (_a = adaptable.api.optionsApi.getExpressionOptions()) === null || _a === void 0 ? void 0 : _a.customQueryVariables;
|
|
52
|
+
if (!customQueryVariables || Object.keys(customQueryVariables).length === 0) {
|
|
53
53
|
return React.createElement(React.Fragment, null);
|
|
54
54
|
}
|
|
55
|
-
return (React.createElement(React.Fragment, null, Object.keys(
|
|
55
|
+
return (React.createElement(React.Fragment, null, Object.keys(customQueryVariables).map((varOption) => {
|
|
56
56
|
const varString = `VAR('${varOption}')`;
|
|
57
57
|
return (React.createElement(EditorButton_1.default, { data: varString, key: varOption }, varString));
|
|
58
58
|
})));
|