@infomaximum/widget-sdk 4.0.0-beta6 → 4.0.0-beta60
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/dist/index.d.ts +762 -421
- package/dist/index.esm.js +332 -194
- package/dist/index.js +343 -198
- package/package.json +10 -7
package/dist/index.esm.js
CHANGED
|
@@ -2,103 +2,73 @@ import { Localization } from '@infomaximum/localization';
|
|
|
2
2
|
export { ELanguages } from '@infomaximum/localization';
|
|
3
3
|
export { EFilteringMethodValues } from '@infomaximum/base-filter';
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
finally { if (e) throw e.error; }
|
|
46
|
-
}
|
|
47
|
-
return ar;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
function __spreadArray(to, from, pack) {
|
|
51
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
52
|
-
if (ar || !(i in from)) {
|
|
53
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
54
|
-
ar[i] = from[i];
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
61
|
-
var e = new Error(message);
|
|
62
|
-
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
var EWidgetActionInputMode;
|
|
66
|
-
(function (EWidgetActionInputMode) {
|
|
67
|
-
EWidgetActionInputMode["FROM_COLUMN"] = "FROM_COLUMN";
|
|
68
|
-
EWidgetActionInputMode["FROM_VARIABLE"] = "FROM_VARIABLE";
|
|
69
|
-
EWidgetActionInputMode["STATIC_LIST"] = "STATIC_LIST";
|
|
70
|
-
EWidgetActionInputMode["DYNAMIC_LIST"] = "DYNAMIC_LIST";
|
|
71
|
-
EWidgetActionInputMode["FORMULA"] = "FORMULA";
|
|
72
|
-
EWidgetActionInputMode["MANUALLY"] = "MANUALLY";
|
|
73
|
-
})(EWidgetActionInputMode || (EWidgetActionInputMode = {}));
|
|
74
|
-
var isActionValid = function (action, _a) {
|
|
5
|
+
var EWidgetActionInputMethod;
|
|
6
|
+
(function (EWidgetActionInputMethod) {
|
|
7
|
+
EWidgetActionInputMethod["COLUMN"] = "COLUMN";
|
|
8
|
+
EWidgetActionInputMethod["VARIABLE"] = "VARIABLE";
|
|
9
|
+
EWidgetActionInputMethod["STATIC_LIST"] = "STATIC_LIST";
|
|
10
|
+
EWidgetActionInputMethod["DYNAMIC_LIST"] = "DYNAMIC_LIST";
|
|
11
|
+
EWidgetActionInputMethod["FORMULA"] = "FORMULA";
|
|
12
|
+
EWidgetActionInputMethod["MANUALLY"] = "MANUALLY";
|
|
13
|
+
EWidgetActionInputMethod["EVENT"] = "EVENT";
|
|
14
|
+
EWidgetActionInputMethod["START_EVENT"] = "START_EVENT";
|
|
15
|
+
EWidgetActionInputMethod["FINISH_EVENT"] = "FINISH_EVENT";
|
|
16
|
+
})(EWidgetActionInputMethod || (EWidgetActionInputMethod = {}));
|
|
17
|
+
var EActionTypes;
|
|
18
|
+
(function (EActionTypes) {
|
|
19
|
+
EActionTypes["OPEN_URL"] = "OPEN_URL";
|
|
20
|
+
EActionTypes["UPDATE_VARIABLE"] = "UPDATE_VARIABLE";
|
|
21
|
+
EActionTypes["EXECUTE_SCRIPT"] = "EXECUTE_SCRIPT";
|
|
22
|
+
EActionTypes["OPEN_VIEW"] = "OPEN_VIEW";
|
|
23
|
+
})(EActionTypes || (EActionTypes = {}));
|
|
24
|
+
var EViewMode;
|
|
25
|
+
(function (EViewMode) {
|
|
26
|
+
EViewMode["EXISTED_VIEW"] = "EXISTED_VIEW";
|
|
27
|
+
EViewMode["GENERATED_BY_SCRIPT"] = "GENERATED_BY_SCRIPT";
|
|
28
|
+
EViewMode["EMPTY"] = "EMPTY";
|
|
29
|
+
})(EViewMode || (EViewMode = {}));
|
|
30
|
+
var EViewOpenIn;
|
|
31
|
+
(function (EViewOpenIn) {
|
|
32
|
+
EViewOpenIn["NEW_WINDOW"] = "NEW_WINDOW";
|
|
33
|
+
EViewOpenIn["CURRENT_WINDOW"] = "CURRENT_WINDOW";
|
|
34
|
+
EViewOpenIn["PLACEHOLDER"] = "PLACEHOLDER";
|
|
35
|
+
EViewOpenIn["MODAL_WINDOW"] = "MODAL_WINDOW";
|
|
36
|
+
EViewOpenIn["DRAWER_WINDOW"] = "DRAWER_WINDOW";
|
|
37
|
+
})(EViewOpenIn || (EViewOpenIn = {}));
|
|
38
|
+
var EDrawerPlacement;
|
|
39
|
+
(function (EDrawerPlacement) {
|
|
40
|
+
EDrawerPlacement["LEFT"] = "LEFT";
|
|
41
|
+
EDrawerPlacement["RIGHT"] = "RIGHT";
|
|
42
|
+
})(EDrawerPlacement || (EDrawerPlacement = {}));
|
|
43
|
+
var isExecuteScriptActionValid = function (action, _a) {
|
|
75
44
|
var _b;
|
|
76
|
-
var scripts = _a.scripts, tables = _a.tables;
|
|
77
|
-
var currentScript = scripts.get((_b = action.
|
|
45
|
+
var scripts = _a.scripts, tables = _a.tables, variables = _a.variables;
|
|
46
|
+
var currentScript = scripts.get((_b = action.scriptKey) !== null && _b !== void 0 ? _b : "");
|
|
78
47
|
if (!currentScript) {
|
|
79
48
|
return false;
|
|
80
49
|
}
|
|
81
|
-
var actionInputsMap = new Map(action.
|
|
82
|
-
if (actionInputsMap.size < currentScript.
|
|
50
|
+
var actionInputsMap = new Map(action.parameters.map(function (parameter) { return [parameter.name, parameter]; }));
|
|
51
|
+
if (actionInputsMap.size < currentScript.fields.length) {
|
|
83
52
|
return false;
|
|
84
53
|
}
|
|
85
|
-
return
|
|
86
|
-
var
|
|
54
|
+
return currentScript.fields.every(function (_a) {
|
|
55
|
+
var name = _a.name;
|
|
56
|
+
var actionInput = actionInputsMap.get(name !== null && name !== void 0 ? name : "");
|
|
87
57
|
if (!actionInput) {
|
|
88
58
|
return false;
|
|
89
59
|
}
|
|
90
|
-
|
|
91
|
-
|
|
60
|
+
if (actionInput.inputMethod === EWidgetActionInputMethod.VARIABLE &&
|
|
61
|
+
!variables.has(actionInput.sourceVariable)) {
|
|
92
62
|
return false;
|
|
93
63
|
}
|
|
94
|
-
if (
|
|
64
|
+
if (actionInput.inputMethod === EWidgetActionInputMethod.FORMULA && !actionInput.formula) {
|
|
95
65
|
return false;
|
|
96
66
|
}
|
|
97
|
-
if (
|
|
67
|
+
if (actionInput.inputMethod === EWidgetActionInputMethod.DYNAMIC_LIST && !actionInput.formula) {
|
|
98
68
|
return false;
|
|
99
69
|
}
|
|
100
|
-
if (
|
|
101
|
-
!tables.has(
|
|
70
|
+
if (actionInput.inputMethod === EWidgetActionInputMethod.COLUMN &&
|
|
71
|
+
!tables.has(actionInput.tableName)) {
|
|
102
72
|
return false;
|
|
103
73
|
}
|
|
104
74
|
return true;
|
|
@@ -123,9 +93,7 @@ var prepareValuesForSql = function (dataType, values) {
|
|
|
123
93
|
dataType === ESimpleDataType.BOOLEAN
|
|
124
94
|
? values
|
|
125
95
|
: values.map(function (value) {
|
|
126
|
-
return value === null
|
|
127
|
-
? null
|
|
128
|
-
: "'".concat(escapeSingularQuotes(escapeReverseSlash(value)), "'");
|
|
96
|
+
return value === null ? null : "'".concat(escapeSingularQuotes(escapeReverseSlash(value)), "'");
|
|
129
97
|
});
|
|
130
98
|
};
|
|
131
99
|
var escapeReverseSlash = function (formula) {
|
|
@@ -135,19 +103,39 @@ var escapeSingularQuotes = function (formula) {
|
|
|
135
103
|
return formula.replaceAll("'", "\\'");
|
|
136
104
|
};
|
|
137
105
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
106
|
+
/******************************************************************************
|
|
107
|
+
Copyright (c) Microsoft Corporation.
|
|
108
|
+
|
|
109
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
110
|
+
purpose with or without fee is hereby granted.
|
|
111
|
+
|
|
112
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
113
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
114
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
115
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
116
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
117
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
118
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
119
|
+
***************************************************************************** */
|
|
120
|
+
/* global Reflect, Promise, SuppressedError, Symbol */
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
var __assign = function() {
|
|
124
|
+
__assign = Object.assign || function __assign(t) {
|
|
125
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
126
|
+
s = arguments[i];
|
|
127
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
128
|
+
}
|
|
129
|
+
return t;
|
|
130
|
+
};
|
|
131
|
+
return __assign.apply(this, arguments);
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
135
|
+
var e = new Error(message);
|
|
136
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
142
137
|
};
|
|
143
138
|
|
|
144
|
-
function mapVariablesToInputs(variables) {
|
|
145
|
-
return new Map(compactMap(__spreadArray([], __read(variables.values()), false), function (_a) {
|
|
146
|
-
var name = _a.name, dataType = _a.dataType, value = _a.value;
|
|
147
|
-
return !isNil(value) ? [name, { dataType: dataType, value: value }] : null;
|
|
148
|
-
}));
|
|
149
|
-
}
|
|
150
|
-
|
|
151
139
|
var ECalculatorFilterMethods;
|
|
152
140
|
(function (ECalculatorFilterMethods) {
|
|
153
141
|
ECalculatorFilterMethods["EQUAL_TO"] = "EQUAL_TO";
|
|
@@ -192,6 +180,17 @@ var EFormulaFilterFieldKeys;
|
|
|
192
180
|
EFormulaFilterFieldKeys["lastTimeUnit"] = "lastTimeUnit";
|
|
193
181
|
EFormulaFilterFieldKeys["durationUnit"] = "durationUnit";
|
|
194
182
|
})(EFormulaFilterFieldKeys || (EFormulaFilterFieldKeys = {}));
|
|
183
|
+
var isFormulaFilterValue = function (value) {
|
|
184
|
+
return "filteringMethod" in value;
|
|
185
|
+
};
|
|
186
|
+
|
|
187
|
+
var compact = function (items) { return ((items === null || items === void 0 ? void 0 : items.filter(Boolean)) || []); };
|
|
188
|
+
var compactMap = function (items, f) {
|
|
189
|
+
return compact(items === null || items === void 0 ? void 0 : items.map(f));
|
|
190
|
+
};
|
|
191
|
+
var isNil = function (value) {
|
|
192
|
+
return value === null || value === undefined;
|
|
193
|
+
};
|
|
195
194
|
|
|
196
195
|
var EFormatTypes;
|
|
197
196
|
(function (EFormatTypes) {
|
|
@@ -230,7 +229,7 @@ var EFormattingPresets;
|
|
|
230
229
|
(function (EFormattingPresets) {
|
|
231
230
|
//Общая группа шаблонов
|
|
232
231
|
EFormattingPresets["AUTO"] = "AUTO";
|
|
233
|
-
EFormattingPresets["
|
|
232
|
+
EFormattingPresets["CUSTOM"] = "CUSTOM";
|
|
234
233
|
//Группа шаблонов для формата DATE
|
|
235
234
|
EFormattingPresets["DD/M/YYYY"] = "DD/M/YYYY";
|
|
236
235
|
EFormattingPresets["DD-MM-YYYY"] = "DD-MM-YYYY";
|
|
@@ -446,10 +445,10 @@ var mapFormulaFilterToCalculatorInput = function (filterValue) {
|
|
|
446
445
|
if (!filterValue) {
|
|
447
446
|
return null;
|
|
448
447
|
}
|
|
449
|
-
if (
|
|
448
|
+
if (!isFormulaFilterValue(filterValue)) {
|
|
450
449
|
return {
|
|
451
450
|
dataType: ESimpleDataType.OTHER,
|
|
452
|
-
formula: filterValue,
|
|
451
|
+
formula: filterValue.formula,
|
|
453
452
|
values: ["1"],
|
|
454
453
|
filteringMethod: formulaFilterMethods.EQUAL_TO,
|
|
455
454
|
};
|
|
@@ -474,25 +473,28 @@ var EWidgetFilterMode;
|
|
|
474
473
|
EWidgetFilterMode["MULTI"] = "MULTI";
|
|
475
474
|
EWidgetFilterMode["DISABLED"] = "DISABLED";
|
|
476
475
|
})(EWidgetFilterMode || (EWidgetFilterMode = {}));
|
|
477
|
-
var
|
|
478
|
-
(function (
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
EColorMode["AUTO"] = "AUTO";
|
|
483
|
-
})(EColorMode || (EColorMode = {}));
|
|
476
|
+
var EMarkdownDisplayMode;
|
|
477
|
+
(function (EMarkdownDisplayMode) {
|
|
478
|
+
EMarkdownDisplayMode["NONE"] = "NONE";
|
|
479
|
+
EMarkdownDisplayMode["INDICATOR"] = "INDICATOR";
|
|
480
|
+
})(EMarkdownDisplayMode || (EMarkdownDisplayMode = {}));
|
|
484
481
|
var EDisplayConditionMode;
|
|
485
482
|
(function (EDisplayConditionMode) {
|
|
486
483
|
EDisplayConditionMode["DISABLED"] = "DISABLED";
|
|
487
484
|
EDisplayConditionMode["FORMULA"] = "FORMULA";
|
|
488
485
|
EDisplayConditionMode["VARIABLE"] = "VARIABLE";
|
|
489
486
|
})(EDisplayConditionMode || (EDisplayConditionMode = {}));
|
|
487
|
+
var EFontWeight;
|
|
488
|
+
(function (EFontWeight) {
|
|
489
|
+
EFontWeight["NORMAL"] = "NORMAL";
|
|
490
|
+
EFontWeight["BOLD"] = "BOLD";
|
|
491
|
+
})(EFontWeight || (EFontWeight = {}));
|
|
490
492
|
|
|
491
493
|
function checkDisplayCondition(displayCondition, variables) {
|
|
492
494
|
var _a;
|
|
493
495
|
if ((displayCondition === null || displayCondition === void 0 ? void 0 : displayCondition.mode) === EDisplayConditionMode.VARIABLE) {
|
|
494
|
-
var
|
|
495
|
-
var currentVariableValue =
|
|
496
|
+
var variableName = displayCondition.variableName, variableValue = displayCondition.variableValue;
|
|
497
|
+
var currentVariableValue = variableName && ((_a = variables.get(variableName)) === null || _a === void 0 ? void 0 : _a.value);
|
|
496
498
|
var isCurrentVariableMatch = Array.isArray(currentVariableValue)
|
|
497
499
|
? !!variableValue && (currentVariableValue === null || currentVariableValue === void 0 ? void 0 : currentVariableValue.includes(variableValue))
|
|
498
500
|
: currentVariableValue === variableValue;
|
|
@@ -508,17 +510,14 @@ function getDisplayConditionFormula(displayCondition) {
|
|
|
508
510
|
}
|
|
509
511
|
}
|
|
510
512
|
var replaceDisplayCondition = function (dimension, displayCondition) {
|
|
511
|
-
return isNil(displayCondition)
|
|
512
|
-
? dimension
|
|
513
|
-
: __assign(__assign({}, dimension), { displayCondition: displayCondition });
|
|
513
|
+
return isNil(displayCondition) ? dimension : __assign(__assign({}, dimension), { displayCondition: displayCondition });
|
|
514
514
|
};
|
|
515
515
|
|
|
516
516
|
var escapeSpecialCharacters = function (formula) {
|
|
517
517
|
return formula
|
|
518
518
|
.replaceAll("\\", "\\\\")
|
|
519
519
|
.replaceAll('"', '\\"')
|
|
520
|
-
.replaceAll("`", "\\`")
|
|
521
|
-
.replaceAll("-", "\\-");
|
|
520
|
+
.replaceAll("`", "\\`");
|
|
522
521
|
};
|
|
523
522
|
|
|
524
523
|
function generateColumnFormula(tableName, columnName) {
|
|
@@ -536,10 +535,7 @@ var EWidgetIndicatorType;
|
|
|
536
535
|
EWidgetIndicatorType["EVENT_INDICATOR"] = "EVENT_INDICATOR";
|
|
537
536
|
EWidgetIndicatorType["TRANSITION_INDICATOR"] = "TRANSITION_INDICATOR";
|
|
538
537
|
EWidgetIndicatorType["DIMENSION"] = "DIMENSION";
|
|
539
|
-
EWidgetIndicatorType["DIMENSION_HIERARCHY"] = "DIMENSION_HIERARCHY";
|
|
540
|
-
EWidgetIndicatorType["VARIABLE"] = "VARIABLE";
|
|
541
538
|
EWidgetIndicatorType["SORTING"] = "SORTING";
|
|
542
|
-
EWidgetIndicatorType["CUSTOM"] = "CUSTOM";
|
|
543
539
|
})(EWidgetIndicatorType || (EWidgetIndicatorType = {}));
|
|
544
540
|
var EDbType;
|
|
545
541
|
(function (EDbType) {
|
|
@@ -559,18 +555,8 @@ var ESortingValueModes;
|
|
|
559
555
|
(function (ESortingValueModes) {
|
|
560
556
|
/** Сортировка по формуле */
|
|
561
557
|
ESortingValueModes["FORMULA"] = "FORMULA";
|
|
562
|
-
/**
|
|
563
|
-
ESortingValueModes["
|
|
564
|
-
/** @deprecated Для сортировки по иерархии используется режим DIMENSION_IN_WIDGET */
|
|
565
|
-
ESortingValueModes["HIERARCHY"] = "HIERARCHY";
|
|
566
|
-
/** Сортировка по мере виджета */
|
|
567
|
-
ESortingValueModes["MEASURE_IN_WIDGET"] = "MEASURE_IN_WIDGET";
|
|
568
|
-
/** Сортировка по разрезу(в т.ч. по иерархии) виджета */
|
|
569
|
-
ESortingValueModes["DIMENSION_IN_WIDGET"] = "DIMENSION_IN_WIDGET";
|
|
570
|
-
/** Сортировка по мере отчета */
|
|
571
|
-
ESortingValueModes["IN_DASHBOARD"] = "IN_DASHBOARD";
|
|
572
|
-
/** Сортировка по мере пространства */
|
|
573
|
-
ESortingValueModes["IN_WORKSPACE"] = "IN_WORKSPACE";
|
|
558
|
+
/** Сортировка по показателю(разрезу или мере) виджета */
|
|
559
|
+
ESortingValueModes["IN_WIDGET"] = "IN_WIDGET";
|
|
574
560
|
})(ESortingValueModes || (ESortingValueModes = {}));
|
|
575
561
|
/** Тип показателя */
|
|
576
562
|
var EIndicatorType;
|
|
@@ -592,8 +578,8 @@ var EIndicatorType;
|
|
|
592
578
|
/** Пользовательская сортировка */
|
|
593
579
|
EIndicatorType["USER_SORTING"] = "USER_SORTING";
|
|
594
580
|
})(EIndicatorType || (EIndicatorType = {}));
|
|
595
|
-
function
|
|
596
|
-
return
|
|
581
|
+
function isDimensionsHierarchy(indicator) {
|
|
582
|
+
return "hierarchyDimensions" in indicator;
|
|
597
583
|
}
|
|
598
584
|
|
|
599
585
|
var _a$3;
|
|
@@ -689,11 +675,11 @@ function getMeasureFormula(_a) {
|
|
|
689
675
|
var _a$1;
|
|
690
676
|
var EEventMeasureTemplateNames;
|
|
691
677
|
(function (EEventMeasureTemplateNames) {
|
|
692
|
-
EEventMeasureTemplateNames["
|
|
678
|
+
EEventMeasureTemplateNames["eventsCount"] = "eventsCount";
|
|
693
679
|
EEventMeasureTemplateNames["reworksCount"] = "reworksCount";
|
|
694
680
|
})(EEventMeasureTemplateNames || (EEventMeasureTemplateNames = {}));
|
|
695
681
|
var eventMeasureTemplateFormulas = (_a$1 = {},
|
|
696
|
-
_a$1[EEventMeasureTemplateNames.
|
|
682
|
+
_a$1[EEventMeasureTemplateNames.eventsCount] = "count()",
|
|
697
683
|
_a$1[EEventMeasureTemplateNames.reworksCount] = "count() - uniqExact({caseCaseIdFormula})",
|
|
698
684
|
_a$1);
|
|
699
685
|
function getEventMeasureFormula(_a, process) {
|
|
@@ -714,11 +700,11 @@ function getEventMeasureFormula(_a, process) {
|
|
|
714
700
|
var _a;
|
|
715
701
|
var ETransitionMeasureTemplateNames;
|
|
716
702
|
(function (ETransitionMeasureTemplateNames) {
|
|
717
|
-
ETransitionMeasureTemplateNames["
|
|
703
|
+
ETransitionMeasureTemplateNames["transitionsCount"] = "transitionsCount";
|
|
718
704
|
ETransitionMeasureTemplateNames["medianTime"] = "medianTime";
|
|
719
705
|
})(ETransitionMeasureTemplateNames || (ETransitionMeasureTemplateNames = {}));
|
|
720
706
|
var transitionMeasureTemplateFormulas = (_a = {},
|
|
721
|
-
_a[ETransitionMeasureTemplateNames.
|
|
707
|
+
_a[ETransitionMeasureTemplateNames.transitionsCount] = "count()",
|
|
722
708
|
_a[ETransitionMeasureTemplateNames.medianTime] = "medianExact(date_diff(second, begin({eventTimeFormula}), end({eventTimeFormula})))",
|
|
723
709
|
_a);
|
|
724
710
|
function getTransitionMeasureFormula(_a, process) {
|
|
@@ -736,6 +722,32 @@ function getTransitionMeasureFormula(_a, process) {
|
|
|
736
722
|
return "";
|
|
737
723
|
}
|
|
738
724
|
|
|
725
|
+
/**
|
|
726
|
+
* Регулярное выражение для поиска имени ссылки внутри формулы.
|
|
727
|
+
* Учитывает, что имя внутри формулы содержит экраны.
|
|
728
|
+
*
|
|
729
|
+
* Принцип работы:
|
|
730
|
+
* Пробовать следующие вхождения:
|
|
731
|
+
* - \\\\ - экранированный символ обратного слэша.
|
|
732
|
+
* - Иначе \\" - экранированный символ кавычки.
|
|
733
|
+
* - Иначе [^"] - любой символ кроме кавычки.
|
|
734
|
+
* Если встречается любой другой символ, то это закрывающая кавычка имени переменной.
|
|
735
|
+
*/
|
|
736
|
+
var linkNameRegExp = "(?:\\\\\\\\|\\\\\"|[^\"])+";
|
|
737
|
+
var dashboardLinkRegExp = new RegExp("link: \"(".concat(linkNameRegExp, ")\"(?!\\.\"").concat(linkNameRegExp, "\")"), "g");
|
|
738
|
+
var workspaceLinkRegExp = new RegExp("link: \"(".concat(linkNameRegExp, ")\"\\.\"(").concat(linkNameRegExp, ")\""), "g");
|
|
739
|
+
var parseIndicatorLink = function (formula) {
|
|
740
|
+
var dashboardMatch = formula.match(dashboardLinkRegExp.source);
|
|
741
|
+
if (dashboardMatch) {
|
|
742
|
+
return { scopeName: null, indicatorName: dashboardMatch[1] };
|
|
743
|
+
}
|
|
744
|
+
var workspaceMatch = formula.match(workspaceLinkRegExp.source);
|
|
745
|
+
if (workspaceMatch) {
|
|
746
|
+
return { scopeName: workspaceMatch[1], indicatorName: workspaceMatch[2] };
|
|
747
|
+
}
|
|
748
|
+
return null;
|
|
749
|
+
};
|
|
750
|
+
|
|
739
751
|
function mapMeasureToInput(measure, variables, addFormulas) {
|
|
740
752
|
if (addFormulas === void 0) { addFormulas = function () { return new Map(); }; }
|
|
741
753
|
var mainFormula = getMeasureFormula(measure);
|
|
@@ -755,9 +767,7 @@ function mapMeasureToInput(measure, variables, addFormulas) {
|
|
|
755
767
|
}
|
|
756
768
|
/** Конвертировать меры виджета во входы для вычислителя */
|
|
757
769
|
function mapMeasuresToInputs(measures, variables, addFormulas) {
|
|
758
|
-
return compactMap(measures, function (measure) {
|
|
759
|
-
return mapMeasureToInput(measure, variables, addFormulas);
|
|
760
|
-
});
|
|
770
|
+
return compactMap(measures, function (measure) { return mapMeasureToInput(measure, variables, addFormulas); });
|
|
761
771
|
}
|
|
762
772
|
|
|
763
773
|
function mapDimensionToInput(dimension, variables) {
|
|
@@ -778,9 +788,7 @@ function mapDimensionToInput(dimension, variables) {
|
|
|
778
788
|
}
|
|
779
789
|
/** Конвертировать разрезы виджета во входы для вычислителя */
|
|
780
790
|
function mapDimensionsToInputs(dimensions, variables) {
|
|
781
|
-
return compactMap(dimensions, function (dimension) {
|
|
782
|
-
return mapDimensionToInput(dimension, variables);
|
|
783
|
-
});
|
|
791
|
+
return compactMap(dimensions, function (dimension) { return mapDimensionToInput(dimension, variables); });
|
|
784
792
|
}
|
|
785
793
|
|
|
786
794
|
function mapTransitionMeasureToInput(indicator, process, variables, addFormulas) {
|
|
@@ -831,36 +839,13 @@ function mapEventMeasuresToInputs(indicators, process, variables, addFormulas) {
|
|
|
831
839
|
});
|
|
832
840
|
}
|
|
833
841
|
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
function mapSortingToInputs(sortingIndicators, dimensionsInOriginalOrder, measuresInOriginalOrder) {
|
|
842
|
-
if (sortingIndicators === void 0) { sortingIndicators = []; }
|
|
843
|
-
if (dimensionsInOriginalOrder === void 0) { dimensionsInOriginalOrder = []; }
|
|
844
|
-
if (measuresInOriginalOrder === void 0) { measuresInOriginalOrder = []; }
|
|
845
|
-
return compactMap(sortingIndicators, function (_a) {
|
|
846
|
-
var value = _a.value, direction = _a.direction;
|
|
847
|
-
if (value.mode === ESortingValueModes.FORMULA ||
|
|
848
|
-
value.mode === ESortingValueModes.QUANTITY ||
|
|
849
|
-
value.mode === ESortingValueModes.IN_DASHBOARD ||
|
|
850
|
-
value.mode === ESortingValueModes.IN_WORKSPACE) {
|
|
851
|
-
return value.formula ? { formula: value.formula, direction: direction } : undefined;
|
|
852
|
-
}
|
|
853
|
-
if (value.mode === ESortingValueModes.DIMENSION_IN_WIDGET ||
|
|
854
|
-
value.mode === ESortingValueModes.HIERARCHY) {
|
|
855
|
-
var dimension = dimensionsInOriginalOrder[value.index];
|
|
856
|
-
return (dimension && { formula: getDimensionFormula(dimension), direction: direction });
|
|
857
|
-
}
|
|
858
|
-
if (value.mode === ESortingValueModes.MEASURE_IN_WIDGET) {
|
|
859
|
-
var measure = measuresInOriginalOrder[value.index];
|
|
860
|
-
return measure && { formula: getMeasureFormula(measure), direction: direction };
|
|
861
|
-
}
|
|
862
|
-
});
|
|
863
|
-
}
|
|
842
|
+
var ESortDirection;
|
|
843
|
+
(function (ESortDirection) {
|
|
844
|
+
ESortDirection["descend"] = "DESC";
|
|
845
|
+
ESortDirection["ascend"] = "ASC";
|
|
846
|
+
ESortDirection["ASC"] = "ascend";
|
|
847
|
+
ESortDirection["DESC"] = "descend";
|
|
848
|
+
})(ESortDirection || (ESortDirection = {}));
|
|
864
849
|
|
|
865
850
|
/**
|
|
866
851
|
* Выбрать активный разрез иерархии на основе активных фильтров.
|
|
@@ -869,9 +854,9 @@ function mapSortingToInputs(sortingIndicators, dimensionsInOriginalOrder, measur
|
|
|
869
854
|
* Если к разрезу иерархии применяется INCLUDE-фильтр с несколькими значениями - выбираем данный разрез
|
|
870
855
|
*/
|
|
871
856
|
function selectDimensionFromHierarchy(_a, filters) {
|
|
872
|
-
var
|
|
857
|
+
var hierarchyDimensions = _a.hierarchyDimensions;
|
|
873
858
|
var _loop_1 = function (i) {
|
|
874
|
-
var dimension =
|
|
859
|
+
var dimension = hierarchyDimensions[i];
|
|
875
860
|
// todo: widgets - возможно, стоит использовать Map фильтров для быстрого поиска
|
|
876
861
|
var matchedFilter = filters.find(function (_a) {
|
|
877
862
|
var formula = _a.formula, filteringMethod = _a.filteringMethod;
|
|
@@ -881,25 +866,123 @@ function selectDimensionFromHierarchy(_a, filters) {
|
|
|
881
866
|
if (!matchedFilter) {
|
|
882
867
|
return "continue";
|
|
883
868
|
}
|
|
884
|
-
var selectionIndex = matchedFilter.values.length > 1
|
|
885
|
-
|
|
886
|
-
: Math.min(i + 1, dimensions.length - 1);
|
|
887
|
-
return { value: dimensions[selectionIndex] };
|
|
869
|
+
var selectionIndex = matchedFilter.values.length > 1 ? i : Math.min(i + 1, hierarchyDimensions.length - 1);
|
|
870
|
+
return { value: hierarchyDimensions[selectionIndex] };
|
|
888
871
|
};
|
|
889
|
-
for (var i =
|
|
872
|
+
for (var i = hierarchyDimensions.length - 1; i >= 0; i--) {
|
|
890
873
|
var state_1 = _loop_1(i);
|
|
891
874
|
if (typeof state_1 === "object")
|
|
892
875
|
return state_1.value;
|
|
893
876
|
}
|
|
894
|
-
return
|
|
877
|
+
return hierarchyDimensions[0];
|
|
878
|
+
}
|
|
879
|
+
|
|
880
|
+
var getDefaultSortOrder = function (dimensions, measures) {
|
|
881
|
+
/** Если есть условие отображения, то не делаем авто-сортировку */
|
|
882
|
+
if (dimensions.some(function (dimension) {
|
|
883
|
+
return dimension.displayCondition &&
|
|
884
|
+
dimension.displayCondition.mode !== EDisplayConditionMode.DISABLED;
|
|
885
|
+
})) {
|
|
886
|
+
return [];
|
|
887
|
+
}
|
|
888
|
+
/** Если есть временной разрез, то авто-сортировка по первому такому разрезу (по возрастанию) */
|
|
889
|
+
var timeDimension = dimensions.find(function (dimension) {
|
|
890
|
+
return dimension.format &&
|
|
891
|
+
[
|
|
892
|
+
EFormatTypes.DATE,
|
|
893
|
+
EFormatTypes.MONTH,
|
|
894
|
+
EFormatTypes.DATETIME,
|
|
895
|
+
EFormatTypes.DAY_OF_WEEK,
|
|
896
|
+
EFormatTypes.HOUR,
|
|
897
|
+
EFormatTypes.MONTH_YEAR,
|
|
898
|
+
EFormatTypes.YEAR,
|
|
899
|
+
EFormatTypes.QUARTER,
|
|
900
|
+
EFormatTypes.QUARTER_YEAR,
|
|
901
|
+
EFormatTypes.DAY_OF_MONTH,
|
|
902
|
+
EFormatTypes.WEEK,
|
|
903
|
+
].includes(dimension.format);
|
|
904
|
+
});
|
|
905
|
+
if (timeDimension) {
|
|
906
|
+
return [{ formula: getDimensionFormula(timeDimension), direction: ESortDirection.ascend }];
|
|
907
|
+
}
|
|
908
|
+
if (measures.length > 0) {
|
|
909
|
+
var firstMeasure = measures[0];
|
|
910
|
+
if (firstMeasure) {
|
|
911
|
+
return [
|
|
912
|
+
{
|
|
913
|
+
direction: ESortDirection.descend,
|
|
914
|
+
formula: getMeasureFormula(firstMeasure),
|
|
915
|
+
},
|
|
916
|
+
];
|
|
917
|
+
}
|
|
918
|
+
}
|
|
919
|
+
return [];
|
|
920
|
+
};
|
|
921
|
+
function mapSortingToInputs(_a) {
|
|
922
|
+
var _b;
|
|
923
|
+
var settings = _a.settings, variables = _a.variables, filters = _a.filters, getIndicatorType = _a.getIndicatorType, _c = _a.withDefaultSortOrder, withDefaultSortOrder = _c === void 0 ? true : _c, _d = _a.sortableIndicatorsKeys, sortableIndicatorsKeys = _d === void 0 ? [] : _d;
|
|
924
|
+
var sortOrder = compactMap((_b = settings["sorting"]) !== null && _b !== void 0 ? _b : [], function (_a) {
|
|
925
|
+
var _b;
|
|
926
|
+
var direction = _a.direction, value = _a.value;
|
|
927
|
+
if (value.mode === ESortingValueModes.FORMULA) {
|
|
928
|
+
return value.formula ? { formula: value.formula, direction: direction } : undefined;
|
|
929
|
+
}
|
|
930
|
+
var indicatorsGroup = settings[value.group];
|
|
931
|
+
var indicator = indicatorsGroup === null || indicatorsGroup === void 0 ? void 0 : indicatorsGroup[value.index];
|
|
932
|
+
if (!indicator) {
|
|
933
|
+
return;
|
|
934
|
+
}
|
|
935
|
+
if (getIndicatorType(value.group, indicator) === EWidgetIndicatorType.DIMENSION) {
|
|
936
|
+
var activeDimensions = isDimensionsHierarchy(indicator)
|
|
937
|
+
? selectDimensionFromHierarchy(indicator, filters)
|
|
938
|
+
: indicator;
|
|
939
|
+
var formula = activeDimensions && getDimensionFormula(activeDimensions);
|
|
940
|
+
if (!formula || !checkDisplayCondition(indicator.displayCondition, variables)) {
|
|
941
|
+
return;
|
|
942
|
+
}
|
|
943
|
+
return {
|
|
944
|
+
formula: formula,
|
|
945
|
+
direction: direction,
|
|
946
|
+
displayCondition: ((_b = indicator.displayCondition) === null || _b === void 0 ? void 0 : _b.mode) === EDisplayConditionMode.FORMULA
|
|
947
|
+
? indicator.displayCondition.formula
|
|
948
|
+
: undefined,
|
|
949
|
+
};
|
|
950
|
+
}
|
|
951
|
+
return {
|
|
952
|
+
formula: getMeasureFormula(indicator),
|
|
953
|
+
direction: direction,
|
|
954
|
+
};
|
|
955
|
+
});
|
|
956
|
+
if (sortOrder.length > 0) {
|
|
957
|
+
return sortOrder;
|
|
958
|
+
}
|
|
959
|
+
if (sortableIndicatorsKeys.length === 0 || withDefaultSortOrder === false) {
|
|
960
|
+
return [];
|
|
961
|
+
}
|
|
962
|
+
var dimensions = [];
|
|
963
|
+
var measures = [];
|
|
964
|
+
sortableIndicatorsKeys.forEach(function (key) {
|
|
965
|
+
var indicatorsGroup = settings[key];
|
|
966
|
+
indicatorsGroup === null || indicatorsGroup === void 0 ? void 0 : indicatorsGroup.forEach(function (indicator) {
|
|
967
|
+
if (getIndicatorType(key, indicator) === EWidgetIndicatorType.DIMENSION) {
|
|
968
|
+
var activeDimensions = isDimensionsHierarchy(indicator)
|
|
969
|
+
? selectDimensionFromHierarchy(indicator, filters)
|
|
970
|
+
: indicator;
|
|
971
|
+
activeDimensions && dimensions.push(activeDimensions);
|
|
972
|
+
}
|
|
973
|
+
else {
|
|
974
|
+
measures.push(indicator);
|
|
975
|
+
}
|
|
976
|
+
});
|
|
977
|
+
});
|
|
978
|
+
return getDefaultSortOrder(dimensions, measures);
|
|
895
979
|
}
|
|
896
980
|
|
|
897
981
|
var replaceHierarchiesWithDimensions = function (dimensions, filters) {
|
|
898
982
|
return compactMap(dimensions, function (indicator) {
|
|
899
|
-
if (
|
|
983
|
+
if (isDimensionsHierarchy(indicator)) {
|
|
900
984
|
var selectedDimension = selectDimensionFromHierarchy(indicator, filters);
|
|
901
|
-
return (selectedDimension &&
|
|
902
|
-
replaceDisplayCondition(selectedDimension, indicator.displayCondition));
|
|
985
|
+
return (selectedDimension && replaceDisplayCondition(selectedDimension, indicator.displayCondition));
|
|
903
986
|
}
|
|
904
987
|
return indicator;
|
|
905
988
|
});
|
|
@@ -916,11 +999,19 @@ function bindContentWithIndicator(outputs, indicator) {
|
|
|
916
999
|
* Массив объектов, каждый из которых содержит показатель и его контент
|
|
917
1000
|
*/
|
|
918
1001
|
function bindContentsWithIndicators(outputs, indicators) {
|
|
919
|
-
return compactMap(indicators, function (indicator) {
|
|
920
|
-
return bindContentWithIndicator(outputs, indicator);
|
|
921
|
-
});
|
|
1002
|
+
return compactMap(indicators, function (indicator) { return bindContentWithIndicator(outputs, indicator); });
|
|
922
1003
|
}
|
|
923
1004
|
|
|
1005
|
+
/** Удалить из строки символы экранирования */
|
|
1006
|
+
function unescapeSpecialCharacters(str) {
|
|
1007
|
+
return str.replace(/\\(?!\\)/g, "").replace(/\\\\/g, "\\");
|
|
1008
|
+
}
|
|
1009
|
+
|
|
1010
|
+
var EUnitMode;
|
|
1011
|
+
(function (EUnitMode) {
|
|
1012
|
+
EUnitMode["PIXEL"] = "PIXEL";
|
|
1013
|
+
EUnitMode["PERCENT"] = "PERCENT";
|
|
1014
|
+
})(EUnitMode || (EUnitMode = {}));
|
|
924
1015
|
var EControlType;
|
|
925
1016
|
(function (EControlType) {
|
|
926
1017
|
EControlType["inputNumber"] = "inputNumber";
|
|
@@ -934,22 +1025,28 @@ var EControlType;
|
|
|
934
1025
|
EControlType["typedFormula"] = "typedFormula";
|
|
935
1026
|
EControlType["inputRange"] = "inputRange";
|
|
936
1027
|
EControlType["colorPicker"] = "colorPicker";
|
|
937
|
-
/** @deprecated - удалится в ближайшее время */
|
|
938
|
-
EControlType["filterMode"] = "filterMode";
|
|
939
1028
|
EControlType["displayCondition"] = "displayCondition";
|
|
940
1029
|
EControlType["eventsColor"] = "eventsColor";
|
|
941
1030
|
EControlType["inputMarkdown"] = "inputMarkdown";
|
|
942
1031
|
EControlType["filter"] = "filter";
|
|
943
1032
|
EControlType["actionOnClick"] = "actionOnClick";
|
|
1033
|
+
EControlType["eventsPicker"] = "eventsPicker";
|
|
1034
|
+
EControlType["size"] = "size";
|
|
944
1035
|
})(EControlType || (EControlType = {}));
|
|
945
1036
|
|
|
946
|
-
var
|
|
947
|
-
(function (
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
1037
|
+
var ESelectOptionTypes;
|
|
1038
|
+
(function (ESelectOptionTypes) {
|
|
1039
|
+
ESelectOptionTypes["DIVIDER"] = "DIVIDER";
|
|
1040
|
+
ESelectOptionTypes["SYSTEM"] = "SYSTEM";
|
|
1041
|
+
ESelectOptionTypes["GROUP"] = "GROUP";
|
|
1042
|
+
ESelectOptionTypes["BRANCH"] = "BRANCH";
|
|
1043
|
+
ESelectOptionTypes["LEAF"] = "LEAF";
|
|
1044
|
+
})(ESelectOptionTypes || (ESelectOptionTypes = {}));
|
|
1045
|
+
var ECustomSelectTemplates;
|
|
1046
|
+
(function (ECustomSelectTemplates) {
|
|
1047
|
+
ECustomSelectTemplates["FORMULA"] = "FORMULA";
|
|
1048
|
+
ECustomSelectTemplates["DIMENSION_GROUPS"] = "DIMENSION_GROUPS";
|
|
1049
|
+
})(ECustomSelectTemplates || (ECustomSelectTemplates = {}));
|
|
953
1050
|
|
|
954
1051
|
var findFilterByFormula = function (filters, formula) {
|
|
955
1052
|
var _a;
|
|
@@ -1045,4 +1142,45 @@ var getLocalizedText = function (language, locObj, props) {
|
|
|
1045
1142
|
return localization.getLocalized(locObj, props);
|
|
1046
1143
|
};
|
|
1047
1144
|
|
|
1048
|
-
|
|
1145
|
+
var EColorMode;
|
|
1146
|
+
(function (EColorMode) {
|
|
1147
|
+
/** Окрашивание отключено */
|
|
1148
|
+
EColorMode["DISABLED"] = "DISABLED";
|
|
1149
|
+
/** Цвет каждого значения вычисляется по формуле */
|
|
1150
|
+
EColorMode["FORMULA"] = "FORMULA";
|
|
1151
|
+
/** Один цвет для всех значений */
|
|
1152
|
+
EColorMode["BASE"] = "BASE";
|
|
1153
|
+
/** Окрашивание каждого значения по градиенту относительно минимального и максимального значений */
|
|
1154
|
+
EColorMode["GRADIENT"] = "GRADIENT";
|
|
1155
|
+
/** Использовать автоматический цвет: по умолчанию определяется порядковым номером показателя */
|
|
1156
|
+
EColorMode["AUTO"] = "AUTO";
|
|
1157
|
+
/** Использовать цвет из правила отображения (в правиле отображения рекурсивно определен цвет) */
|
|
1158
|
+
EColorMode["RULE"] = "RULE";
|
|
1159
|
+
/** Задать цвет конкретным значениям разреза */
|
|
1160
|
+
EColorMode["VALUES"] = "VALUES";
|
|
1161
|
+
/** Задать цвет конкретным значениям общего разреза. Режим используется только для настроек правила отображения */
|
|
1162
|
+
EColorMode["BY_DIMENSION"] = "BY_DIMENSION";
|
|
1163
|
+
})(EColorMode || (EColorMode = {}));
|
|
1164
|
+
var getRuleColor = function (ruleFormula, globalContext) {
|
|
1165
|
+
var _a, _b;
|
|
1166
|
+
var link = parseIndicatorLink(ruleFormula);
|
|
1167
|
+
if (!link) {
|
|
1168
|
+
return;
|
|
1169
|
+
}
|
|
1170
|
+
var _c = link.scopeName, scopeName = _c === void 0 ? null : _c, ruleName = link.indicatorName;
|
|
1171
|
+
var rulesByScope = isNil(scopeName)
|
|
1172
|
+
? globalContext.reportDisplayRules
|
|
1173
|
+
: (_a = globalContext.workspaceDisplayRules) === null || _a === void 0 ? void 0 : _a.get(scopeName);
|
|
1174
|
+
return (_b = rulesByScope === null || rulesByScope === void 0 ? void 0 : rulesByScope.get(ruleName)) === null || _b === void 0 ? void 0 : _b.color;
|
|
1175
|
+
};
|
|
1176
|
+
var isValidColor = function (color, globalContext) {
|
|
1177
|
+
if (color.mode === EColorMode.RULE) {
|
|
1178
|
+
return !color.formula || Boolean(getRuleColor(color.formula, globalContext));
|
|
1179
|
+
}
|
|
1180
|
+
if (color.mode === EColorMode.VALUES) {
|
|
1181
|
+
return color.items.every(function (item) { return isValidColor(item.color, globalContext); });
|
|
1182
|
+
}
|
|
1183
|
+
return true;
|
|
1184
|
+
};
|
|
1185
|
+
|
|
1186
|
+
export { EActionTypes, ECalculatorFilterMethods, EColorMode, EControlType, ECustomSelectTemplates, EDbType, EDimensionTemplateNames, EDisplayConditionMode, EDrawerPlacement, EDurationUnit, EEventMeasureTemplateNames, EFontWeight, EFormatTypes, EFormattingPresets, EFormulaFilterFieldKeys, EIndicatorType, ELastTimeUnit, EMarkdownDisplayMode, EMeasureTemplateNames, EProcessFilterNames, ESelectOptionTypes, ESimpleDataType, ESortDirection, ESortingValueModes, ETransitionMeasureTemplateNames, EUnitMode, EViewMode, EViewOpenIn, EWidgetActionInputMethod, EWidgetFilterMode, EWidgetIndicatorType, EWidgetIndicatorValueModes, bindContentWithIndicator, bindContentsWithIndicators, checkDisplayCondition, dashboardLinkRegExp, dimensionTemplateFormulas, escapeSpecialCharacters, eventMeasureTemplateFormulas, fillTemplateString, formulaFilterMethods, generateColumnFormula, getDimensionFormula, getDisplayConditionFormula, getEventMeasureFormula, getLocalizedText, getMeasureFormula, getRuleColor, getTransitionMeasureFormula, isDimensionsHierarchy, isExecuteScriptActionValid, isFormulaFilterValue, isValidColor, linkNameRegExp, mapDimensionsToInputs, mapEventMeasuresToInputs, mapFormulaFilterToCalculatorInput, mapFormulaFiltersToInputs, mapMeasuresToInputs, mapSortingToInputs, mapTransitionMeasuresToInputs, measureTemplateFormulas, parseIndicatorLink, prepareValuesForSql, replaceDisplayCondition, replaceFiltersBySelection, replaceHierarchiesWithDimensions, selectDimensionFromHierarchy, transitionMeasureTemplateFormulas, unescapeSpecialCharacters, updateDefaultModeSelection, updateMultiModeSelection, updateSingleModeSelection, workspaceLinkRegExp };
|