@infomaximum/widget-sdk 6.0.0-wefi344-1 → 6.0.2
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/CHANGELOG.md +1101 -0
- package/README.md +3 -1
- package/dist/index.d.ts +813 -782
- package/dist/index.esm.js +306 -163
- package/dist/index.js +315 -165
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -73,377 +73,224 @@ interface IExportColumnOrder {
|
|
|
73
73
|
exportName: string;
|
|
74
74
|
}
|
|
75
75
|
|
|
76
|
-
declare enum
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
DAY_OF_WEEK = "DAY_OF_WEEK",
|
|
89
|
-
/** Длительность */
|
|
90
|
-
DURATION = "DURATION",
|
|
91
|
-
/** Час */
|
|
92
|
-
HOUR = "HOUR",
|
|
93
|
-
/** Месяц и год */
|
|
94
|
-
MONTH_YEAR = "MONTH_YEAR",
|
|
95
|
-
/** Год */
|
|
96
|
-
YEAR = "YEAR",
|
|
97
|
-
/** Квартал */
|
|
98
|
-
QUARTER = "QUARTER",
|
|
99
|
-
/** Квартал и год */
|
|
100
|
-
QUARTER_YEAR = "QUARTER_YEAR",
|
|
101
|
-
/** День месяца */
|
|
102
|
-
DAY_OF_MONTH = "DAY_OF_MONTH",
|
|
103
|
-
/** Неделя */
|
|
104
|
-
WEEK = "WEEK",
|
|
105
|
-
/** Логический */
|
|
106
|
-
BOOLEAN = "BOOLEAN",
|
|
107
|
-
PERCENT = "PERCENT"
|
|
108
|
-
}
|
|
109
|
-
declare enum EFormattingPresets {
|
|
110
|
-
"AUTO" = "AUTO",
|
|
111
|
-
"CUSTOM" = "CUSTOM",
|
|
112
|
-
"DD/M/YYYY" = "DD/M/YYYY",
|
|
113
|
-
"DD-MM-YYYY" = "DD-MM-YYYY",
|
|
114
|
-
"DD-MM-YY" = "DD-MM-YY",
|
|
115
|
-
"YYYY-MM-DD" = "YYYY-MM-DD",
|
|
116
|
-
"YY-MM-DD" = "YY-MM-DD",
|
|
117
|
-
"DD MM YYYY" = "DD MM YYYY",
|
|
118
|
-
"DD MMM YYYY" = "DD MMM YYYY",
|
|
119
|
-
"DD MMM YY" = "DD MMM YY",
|
|
120
|
-
"MM.DD.YYYY" = "MM.DD.YYYY",
|
|
121
|
-
"MM.DD.YY" = "MM.DD.YY",
|
|
122
|
-
"DD MMMM YYYY" = "DD MMMM YYYY",
|
|
123
|
-
"DD MMMM YY" = "DD MMMM YY",
|
|
124
|
-
"DD/MM/YYYY" = "DD/MM/YYYY",
|
|
125
|
-
"DD/MM/YY" = "DD/MM/YY",
|
|
126
|
-
"MM/DD/YYYY" = "MM/DD/YYYY",
|
|
127
|
-
"MM/DD/YY" = "MM/DD/YY",
|
|
128
|
-
"MMMM DD, YYYY" = "MMMM DD, YYYY",
|
|
129
|
-
"MMMM DD, YY" = "MMMM DD, YY",
|
|
130
|
-
"DD.MM.YYYY" = "DD.MM.YYYY",
|
|
131
|
-
"DD.MM.YY" = "DD.MM.YY",
|
|
132
|
-
"MM-DD-YY" = "MM-DD-YY",
|
|
133
|
-
"MM-DD-YYYY" = "MM-DD-YYYY",
|
|
134
|
-
"DD/M/YYYY HH:mm" = "DD/M/YYYY HH:mm",
|
|
135
|
-
"DD/MM/YYYY, HH:mm" = "DD/MM/YYYY, HH:mm",
|
|
136
|
-
"DD/MM/YY, HH:mm" = "DD/MM/YY, HH:mm",
|
|
137
|
-
"MM/DD/YY, hh:mm a" = "MM/DD/YY, hh:mm a",
|
|
138
|
-
"MM/DD/YYYY, hh:mm a" = "MM/DD/YYYY, hh:mm a",
|
|
139
|
-
"YYYY-MM-DD HH:mm" = "YYYY-MM-DD HH:mm",
|
|
140
|
-
"YY-MM-DD, HH:mm" = "YY-MM-DD, HH:mm",
|
|
141
|
-
"YYYY-MM-DD, HH:mm" = "YYYY-MM-DD, HH:mm",
|
|
142
|
-
"YYYY-MM-DD HH:mm:ss" = "YYYY-MM-DD HH:mm:ss",
|
|
143
|
-
"DD MM YYYY HH:mm" = "DD MM YYYY HH:mm",
|
|
144
|
-
"DD MMMM YYYY, HH:mm" = "DD MMMM YYYY, HH:mm",
|
|
145
|
-
"DD.MM.YY, HH:mm" = "DD.MM.YY, HH:mm",
|
|
146
|
-
"DD.MM.YYYY, HH:mm" = "DD.MM.YYYY, HH:mm",
|
|
147
|
-
"MM-DD-YY, hh:mm a" = "MM-DD-YY, hh:mm a",
|
|
148
|
-
"MM-DD-YYYY, hh:mm a" = "MM-DD-YYYY, hh:mm a",
|
|
149
|
-
"MM.DD.YY, hh:mm a" = "MM.DD.YY, hh:mm a",
|
|
150
|
-
"MM.DD.YYYY, hh:mm a" = "MM.DD.YYYY, hh:mm a",
|
|
151
|
-
"MM.DD.YYYY hh:mm a" = "MM.DD.YYYY hh:mm a",
|
|
152
|
-
"DD MMM YY, HH:mm" = "DD MMM YY, HH:mm",
|
|
153
|
-
"DD MMM YYYY, HH:mm" = "DD MMM YYYY, HH:mm",
|
|
154
|
-
"MMMM DD, YY, HH:mm" = "MMMM DD, YY, HH:mm",
|
|
155
|
-
"MMMM DD, YYYY, HH:mm" = "MMMM DD, YYYY, HH:mm",
|
|
156
|
-
"DD MMMM YY, HH:mm" = "DD MMMM YY, HH:mm",
|
|
157
|
-
"DD.MM.YYYY, HH:mm:ss" = "DD.MM.YYYY, HH:mm:ss",
|
|
158
|
-
"DD.MM.YYYY HH:mm:ss" = "DD.MM.YYYY HH:mm:ss",
|
|
159
|
-
"DD/MM/YYYY HH:mm:ss" = "DD/MM/YYYY HH:mm:ss",
|
|
160
|
-
"DD" = "DD",
|
|
161
|
-
"D" = "D",
|
|
162
|
-
"DDDD" = "DDDD",
|
|
163
|
-
"MMM" = "MMM",
|
|
164
|
-
"MM" = "MM",
|
|
165
|
-
"MMMM" = "MMMM",
|
|
166
|
-
"k" = "k",
|
|
167
|
-
"x" = "x",
|
|
168
|
-
"#,##x" = "#,##x",
|
|
169
|
-
"#,##x.x" = "#,##x.x",
|
|
170
|
-
"#,##x.xx" = "#,##x.xx",
|
|
171
|
-
"x[%]" = "x[%]",
|
|
172
|
-
"x.x[%]" = "x.x[%]",
|
|
173
|
-
"[$]x" = "[$]x",
|
|
174
|
-
"zx.xx[%]" = "zx.xx[%]",
|
|
175
|
-
"hh:mm:ss" = "hh:mm:ss",
|
|
176
|
-
"dd:hh:mm:ss" = "dd:hh:mm:ss",
|
|
177
|
-
"d" = "d",
|
|
178
|
-
"h" = "h",
|
|
179
|
-
"dk" = "dk",
|
|
180
|
-
"hk" = "hk",
|
|
181
|
-
"dd" = "dd",
|
|
182
|
-
"HH" = "HH",
|
|
183
|
-
"hh a" = "hh a",
|
|
184
|
-
"MMM, YYYY" = "MMM, YYYY",
|
|
185
|
-
"MMM, YY" = "MMM, YY",
|
|
186
|
-
"MM.YYYY" = "MM.YYYY",
|
|
187
|
-
"MM.YY" = "MM.YY",
|
|
188
|
-
"MMMM YYYY" = "MMMM YYYY",
|
|
189
|
-
"MMMM YY" = "MMMM YY",
|
|
190
|
-
"[Q]q" = "[Q]q",
|
|
191
|
-
"R" = "R",
|
|
192
|
-
"[Q]q[-]YYYY" = "[Q]q[-]YYYY",
|
|
193
|
-
"[Q]q[-]YY" = "[Q]q[-]YY",
|
|
194
|
-
"R[-]YYYY" = "R[-]YYYY",
|
|
195
|
-
"R[-]YY" = "R[-]YY"
|
|
196
|
-
}
|
|
197
|
-
interface IWidgetFormatting {
|
|
198
|
-
getFormattedValue: (value: string, formatType: EFormatTypes, formatting: EFormattingPresets, formatTemplate: TNullable<string>) => string;
|
|
76
|
+
declare enum EDimensionTemplateNames {
|
|
77
|
+
dateTime = "dateTime",
|
|
78
|
+
date = "date",
|
|
79
|
+
year = "year",
|
|
80
|
+
yearAndQuarter = "yearAndQuarter",
|
|
81
|
+
quarter = "quarter",
|
|
82
|
+
yearAndMonth = "yearAndMonth",
|
|
83
|
+
dayOfMonth = "dayOfMonth",
|
|
84
|
+
month = "month",
|
|
85
|
+
week = "week",
|
|
86
|
+
dayOfWeek = "dayOfWeek",
|
|
87
|
+
hour = "hour"
|
|
199
88
|
}
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
OTHER: EFormatTypes[];
|
|
203
|
-
STRING: EFormatTypes[];
|
|
204
|
-
FLOAT: EFormatTypes[];
|
|
205
|
-
INTEGER: EFormatTypes[];
|
|
206
|
-
DATE: EFormatTypes[];
|
|
207
|
-
DATETIME: EFormatTypes[];
|
|
208
|
-
DATETIME64: EFormatTypes[];
|
|
209
|
-
BOOLEAN: EFormatTypes[];
|
|
210
|
-
};
|
|
211
|
-
readonly availableFormattingByFormat: {
|
|
212
|
-
DATE: EFormattingPresets[];
|
|
213
|
-
DATETIME: EFormattingPresets[];
|
|
214
|
-
DAY_OF_WEEK: EFormattingPresets[];
|
|
215
|
-
MONTH: EFormattingPresets[];
|
|
216
|
-
NUMBER: EFormattingPresets[];
|
|
217
|
-
DURATION: EFormattingPresets[];
|
|
218
|
-
HOUR: EFormattingPresets[];
|
|
219
|
-
MONTH_YEAR: EFormattingPresets[];
|
|
220
|
-
QUARTER: EFormattingPresets[];
|
|
221
|
-
QUARTER_YEAR: EFormattingPresets[];
|
|
222
|
-
STRING: never[];
|
|
223
|
-
DAY_OF_MONTH: never[];
|
|
224
|
-
WEEK: never[];
|
|
225
|
-
YEAR: never[];
|
|
226
|
-
BOOLEAN: never[];
|
|
227
|
-
PERCENT: EFormattingPresets[];
|
|
228
|
-
};
|
|
229
|
-
};
|
|
89
|
+
/** Стандартные шаблоны разреза */
|
|
90
|
+
declare const dimensionTemplateFormulas: Record<EDimensionTemplateNames, string>;
|
|
230
91
|
|
|
231
|
-
declare
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
declare enum
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
92
|
+
declare function getDimensionFormula({ value }: IWidgetDimension): string;
|
|
93
|
+
declare function getProcessDimensionValueFormula(value: (TWidgetIndicatorAggregationValue & {
|
|
94
|
+
innerTemplateName?: string;
|
|
95
|
+
}) | TWidgetIndicatorTimeValue): string | undefined;
|
|
96
|
+
|
|
97
|
+
declare enum EDimensionAggregationTemplateName {
|
|
98
|
+
avg = "avg",
|
|
99
|
+
median = "median",
|
|
100
|
+
count = "count",
|
|
101
|
+
countDistinct = "countDistinct",
|
|
102
|
+
min = "min",
|
|
103
|
+
max = "max",
|
|
104
|
+
sum = "sum",
|
|
105
|
+
top = "top",
|
|
106
|
+
firstValue = "firstValue",
|
|
107
|
+
lastValue = "lastValue",
|
|
108
|
+
countExecutions = "countExecutions",
|
|
109
|
+
countReworks = "countReworks"
|
|
241
110
|
}
|
|
242
|
-
|
|
243
|
-
declare const
|
|
244
|
-
|
|
111
|
+
/** Шаблоны процессных метрик разреза с режимом AGGREGATION */
|
|
112
|
+
declare const dimensionAggregationTemplates: Record<EDimensionAggregationTemplateName, string>;
|
|
113
|
+
/** На основе значения режима AGGREGATION подготовить параметры для подстановки в шаблонную формулу */
|
|
114
|
+
declare const prepareDimensionAggregationParams: (value: Extract<IWidgetDimension["value"], {
|
|
115
|
+
mode: EWidgetIndicatorValueModes.AGGREGATION;
|
|
116
|
+
}>) => {
|
|
117
|
+
eventNameFormula: string;
|
|
118
|
+
caseCaseIdFormula: string;
|
|
119
|
+
eventName: string;
|
|
120
|
+
filters: string;
|
|
121
|
+
eventTimeFormula: string;
|
|
122
|
+
columnFormula: string;
|
|
123
|
+
} | null;
|
|
245
124
|
|
|
246
|
-
|
|
247
|
-
declare const
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
readonly NOT_EQUAL_TO: ECalculatorFilterMethods.NOT_EQUAL_TO;
|
|
251
|
-
readonly GREATER_THAN: ECalculatorFilterMethods.GREATER_THAN;
|
|
252
|
-
readonly LESS_THAN: ECalculatorFilterMethods.LESS_THAN;
|
|
253
|
-
readonly GREATER_THAN_OR_EQUAL_TO: ECalculatorFilterMethods.GREATER_THAN_OR_EQUAL_TO;
|
|
254
|
-
readonly LESS_THAN_OR_EQUAL_TO: ECalculatorFilterMethods.LESS_THAN_OR_EQUAL_TO;
|
|
255
|
-
readonly STARTS_WITH: ECalculatorFilterMethods.STARTS_WITH;
|
|
256
|
-
readonly ENDS_WITH: ECalculatorFilterMethods.ENDS_WITH;
|
|
257
|
-
readonly CONTAINS: ECalculatorFilterMethods.CONTAINS;
|
|
258
|
-
readonly NOT_CONTAINS: ECalculatorFilterMethods.NOT_CONTAINS;
|
|
259
|
-
readonly IN_RANGE: ECalculatorFilterMethods.IN_RANGE;
|
|
260
|
-
readonly NOT_IN_RANGE: ECalculatorFilterMethods.NOT_IN_RANGE;
|
|
261
|
-
readonly INCLUDE: ECalculatorFilterMethods.INCLUDE;
|
|
262
|
-
readonly EXCLUDE: ECalculatorFilterMethods.EXCLUDE;
|
|
263
|
-
readonly NONEMPTY: ECalculatorFilterMethods.NONEMPTY;
|
|
264
|
-
readonly EMPTY: ECalculatorFilterMethods.EMPTY;
|
|
125
|
+
/** Шаблоны процессных метрик разреза с режимами START_TIME/END_TIME */
|
|
126
|
+
declare const timeTemplates: {
|
|
127
|
+
START_TIME: Record<EDimensionTemplateNames, string>;
|
|
128
|
+
END_TIME: Record<EDimensionTemplateNames, string>;
|
|
265
129
|
};
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
presenceOfTransition = "presenceOfTransition",
|
|
273
|
-
/** Длительность перехода */
|
|
274
|
-
durationOfTransition = "durationOfTransition"
|
|
275
|
-
}
|
|
276
|
-
interface IProcessFilterValue {
|
|
277
|
-
/** @deprecated необходимо передавать посредством IProcessFilterPreviewParams [2502] */
|
|
278
|
-
eventsNamesByProcessNameMap?: Map<string, (string | null)[]>;
|
|
279
|
-
}
|
|
280
|
-
/**
|
|
281
|
-
* Параметры, которые влияют на отображаемый контент в окне настройки процессного фильтра,
|
|
282
|
-
* но не учитываются при применении фильтра.
|
|
283
|
-
*/
|
|
284
|
-
interface IProcessFilterPreviewParams {
|
|
285
|
-
/** @deprecated необходимо использовать eventsNamesByProcessKey */
|
|
286
|
-
eventsNamesByProcessName?: Map<string, (string | null)[]>;
|
|
287
|
-
/**
|
|
288
|
-
* События, доступные при выборе процесса.
|
|
289
|
-
* Если параметр не передан, используются все события процесса на основе запроса к вычислителю.
|
|
290
|
-
*/
|
|
291
|
-
eventsNamesByProcessKey?: Map<string, (string | null)[]>;
|
|
292
|
-
/** Фильтры событий */
|
|
293
|
-
eventFilters?: TExtendedFormulaFilterValue[];
|
|
294
|
-
}
|
|
295
|
-
interface IProcessEventFilterValue extends IProcessFilterValue {
|
|
296
|
-
/** @deprecated необходимо использовать processKey */
|
|
297
|
-
processName?: string;
|
|
298
|
-
processKey: string;
|
|
130
|
+
/** На основе значения режимов START_TIME/END_TIME подготовить параметры для подстановки в шаблонную формулу */
|
|
131
|
+
declare const prepareTimeParams: (value: TWidgetIndicatorTimeValue) => {
|
|
132
|
+
eventTimeFormula: string;
|
|
133
|
+
eventNameFormula: string;
|
|
134
|
+
caseCaseIdFormula: string;
|
|
135
|
+
filters: string;
|
|
299
136
|
eventName: string;
|
|
137
|
+
} | undefined;
|
|
138
|
+
|
|
139
|
+
declare function getMeasureFormula({ value }: IWidgetMeasure): string;
|
|
140
|
+
|
|
141
|
+
declare enum EMeasureTemplateNames {
|
|
142
|
+
avg = "avg",
|
|
143
|
+
median = "median",
|
|
144
|
+
count = "count",
|
|
145
|
+
countDistinct = "countDistinct",
|
|
146
|
+
min = "min",
|
|
147
|
+
max = "max",
|
|
148
|
+
sum = "sum"
|
|
300
149
|
}
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
startEventProcessKey: string;
|
|
305
|
-
startEventName: string;
|
|
306
|
-
/** @deprecated необходимо использовать endEventProcessKey */
|
|
307
|
-
endEventProcessName?: string;
|
|
308
|
-
endEventProcessKey: string;
|
|
309
|
-
endEventName: string;
|
|
310
|
-
}
|
|
311
|
-
interface IClickPosition {
|
|
312
|
-
x: number;
|
|
313
|
-
y: number;
|
|
314
|
-
elementWidth?: number;
|
|
315
|
-
elementHeight?: number;
|
|
316
|
-
}
|
|
317
|
-
interface IPositionConfig extends IClickPosition {
|
|
318
|
-
offsetX?: number;
|
|
319
|
-
offsetY?: number;
|
|
320
|
-
}
|
|
321
|
-
interface IAddPresenceOfEventFilter {
|
|
322
|
-
(name: EProcessFilterNames.presenceOfEvent, value: IProcessEventFilterValue, positionConfig?: IPositionConfig, previewParams?: IProcessFilterPreviewParams): void;
|
|
323
|
-
}
|
|
324
|
-
interface IAddRepetitionOfEventFilter {
|
|
325
|
-
(name: EProcessFilterNames.repetitionOfEvent, value: IProcessEventFilterValue, positionConfig?: IPositionConfig, previewParams?: IProcessFilterPreviewParams): void;
|
|
326
|
-
}
|
|
327
|
-
interface IAddPresenceOfTransitionFilter {
|
|
328
|
-
(name: EProcessFilterNames.presenceOfTransition, value: IProcessTransitionFilterValue, positionConfig?: IPositionConfig, previewParams?: IProcessFilterPreviewParams): void;
|
|
329
|
-
}
|
|
330
|
-
interface IAddDurationOfTransitionFilter {
|
|
331
|
-
(name: EProcessFilterNames.durationOfTransition, value: IProcessTransitionFilterValue, positionConfig?: IPositionConfig, previewParams?: IProcessFilterPreviewParams): void;
|
|
332
|
-
}
|
|
333
|
-
declare enum EFormulaFilterFieldKeys {
|
|
334
|
-
date = "date",
|
|
335
|
-
dateRange = "dateRange",
|
|
336
|
-
numberRange = "numberRange",
|
|
337
|
-
string = "string",
|
|
338
|
-
lastTimeValue = "lastTimeValue",
|
|
339
|
-
lastTimeUnit = "lastTimeUnit",
|
|
340
|
-
durationUnit = "durationUnit"
|
|
341
|
-
}
|
|
342
|
-
interface IFormulaFilterValue {
|
|
343
|
-
/** Заголовок фильтра */
|
|
344
|
-
name: TNullable<string>;
|
|
345
|
-
/** Формула */
|
|
346
|
-
formula: string;
|
|
347
|
-
/**
|
|
348
|
-
* Индекс элемента в результате вычисления формулы (если результат - массив).
|
|
349
|
-
*
|
|
350
|
-
* Используется, когда формула возвращает массив значений, но требуется работать только с одним конкретным элементом.
|
|
351
|
-
* Индекс добавляется к вычисляемой формуле, позволяя выбрать нужный элемент из результирующего массива.
|
|
352
|
-
*
|
|
353
|
-
* **Важно:** Индексация начинается с 1, т.к. используется ClickHouse (1-based).
|
|
354
|
-
*/
|
|
355
|
-
sliceIndex?: number;
|
|
356
|
-
/** Тип данных формулы (без учета `sliceIndex`) */
|
|
357
|
-
dbDataType: string;
|
|
358
|
-
/** Формат */
|
|
359
|
-
format: EFormatTypes;
|
|
360
|
-
/** Метод фильтрации */
|
|
361
|
-
filteringMethod: valueof<typeof formulaFilterMethods>;
|
|
362
|
-
/** Выбранные в списке значения в виде моделей */
|
|
363
|
-
checkedValues?: (string | null)[];
|
|
364
|
-
/** Значения полей формы редактора */
|
|
365
|
-
formValues?: Partial<{
|
|
366
|
-
[EFormulaFilterFieldKeys.date]: string | null;
|
|
367
|
-
[EFormulaFilterFieldKeys.dateRange]: [string, string];
|
|
368
|
-
[EFormulaFilterFieldKeys.numberRange]: Partial<[number, number]>;
|
|
369
|
-
[EFormulaFilterFieldKeys.string]: string;
|
|
370
|
-
[EFormulaFilterFieldKeys.lastTimeValue]: number;
|
|
371
|
-
[EFormulaFilterFieldKeys.lastTimeUnit]: ELastTimeUnit;
|
|
372
|
-
[EFormulaFilterFieldKeys.durationUnit]: EDurationUnit;
|
|
373
|
-
}>;
|
|
150
|
+
declare enum EMeasureInnerTemplateNames {
|
|
151
|
+
begin = "begin",
|
|
152
|
+
end = "end"
|
|
374
153
|
}
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
154
|
+
/** Стандартные шаблоны меры */
|
|
155
|
+
declare const measureTemplateFormulas: {
|
|
156
|
+
readonly avg: "avg({columnFormula})";
|
|
157
|
+
readonly count: "count({columnFormula})";
|
|
158
|
+
readonly countDistinct: "count(distinct {columnFormula})";
|
|
159
|
+
readonly median: "medianExact({columnFormula})";
|
|
160
|
+
readonly min: "min({columnFormula})";
|
|
161
|
+
readonly max: "max({columnFormula})";
|
|
162
|
+
readonly sum: "sum({columnFormula})";
|
|
163
|
+
};
|
|
164
|
+
declare const measureInnerTemplateFormulas: {
|
|
165
|
+
readonly begin: "begin({columnFormula})";
|
|
166
|
+
readonly end: "end({columnFormula})";
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
declare enum EMeasureAggregationTemplateName {
|
|
170
|
+
agvIf = "agvIf",
|
|
171
|
+
medianIf = "medianIf",
|
|
172
|
+
countIf = "countIf",
|
|
173
|
+
countIfDistinct = "countIfDistinct",
|
|
174
|
+
minIf = "minIf",
|
|
175
|
+
maxIf = "maxIf",
|
|
176
|
+
sumIf = "sumIf",
|
|
177
|
+
top = "top",
|
|
178
|
+
firstValue = "firstValue",
|
|
179
|
+
lastValue = "lastValue",
|
|
180
|
+
countExecutions = "countExecutions",
|
|
181
|
+
countReworks = "countReworks"
|
|
385
182
|
}
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
183
|
+
/** На основе значения режима AGGREGATION подготовить параметры для подстановки в шаблонную формулу */
|
|
184
|
+
declare const prepareMeasureAggregationParams: (value: Extract<IWidgetMeasure["value"], {
|
|
185
|
+
mode: EWidgetIndicatorValueModes.AGGREGATION;
|
|
186
|
+
}>) => {
|
|
187
|
+
outerAggregation: EOuterAggregation;
|
|
188
|
+
eventNameFormula: string;
|
|
189
|
+
caseCaseIdFormula: string;
|
|
190
|
+
eventName: string;
|
|
191
|
+
filters: string;
|
|
192
|
+
eventTimeFormula: string;
|
|
193
|
+
columnFormula: string;
|
|
194
|
+
} | null;
|
|
195
|
+
|
|
196
|
+
/** Шаблон процессной метрики меры с режимом CONVERSION */
|
|
197
|
+
declare const conversionTemplate = "countIf(\n process(\n minIf(\n {startEventTimeFormula}, \n {startEventNameFormula} = {startEventName}{startEventFilters}\n ), \n {endCaseCaseIdFormula}\n ) < \n process(\n maxIf(\n {endEventTimeFormula}, \n {endEventNameFormula} = {endEventName}{endEventFilters}\n ), \n {endCaseCaseIdFormula}\n ) \n and \n process(\n countIf(\n {startEventNameFormula} = {startEventName}{startEventFilters}\n ) != 0, \n {endCaseCaseIdFormula}\n ) != 0\n) / countIf(\n process(\n countIf(\n {startEventNameFormula} = {startEventName}{startEventFilters}\n ) != 0, \n {endCaseCaseIdFormula}\n ) != 0\n)";
|
|
198
|
+
/** На основе значения режима CONVERSION подготовить параметры для подстановки в шаблонную формулу */
|
|
199
|
+
declare const prepareConversionParams: (value: TWidgetIndicatorConversionValue) => {
|
|
200
|
+
startEventTimeFormula: string;
|
|
201
|
+
startEventNameFormula: string;
|
|
202
|
+
startEventFilters: string;
|
|
203
|
+
startEventName: string;
|
|
204
|
+
endEventTimeFormula: string;
|
|
205
|
+
endCaseCaseIdFormula: string;
|
|
206
|
+
endEventNameFormula: string;
|
|
207
|
+
endEventName: string;
|
|
208
|
+
endEventFilters: string;
|
|
209
|
+
} | null;
|
|
210
|
+
|
|
211
|
+
declare function createAggregationTemplate(templateName: EMeasureAggregationTemplateName, { outerAggregation, anyEvent, }: Pick<TWidgetIndicatorAggregationValue, "anyEvent"> & {
|
|
212
|
+
outerAggregation: EOuterAggregation;
|
|
213
|
+
}): string;
|
|
214
|
+
|
|
215
|
+
/** Шаблоны процессных метрик меры с режимом DURATION */
|
|
216
|
+
declare const durationTemplates: Record<EDurationTemplateName, string>;
|
|
217
|
+
/** На основе значения режима DURATION подготовить параметры для подстановки в шаблонную формулу */
|
|
218
|
+
declare const prepareDurationParams: (value: TWidgetIndicatorDurationValue) => {
|
|
219
|
+
startEventTimeFormula: string;
|
|
220
|
+
startEventNameFormula: string;
|
|
221
|
+
startEventFilters: string;
|
|
222
|
+
startEventName: string;
|
|
223
|
+
startEventAggregationName: string;
|
|
224
|
+
endEventTimeFormula: string;
|
|
225
|
+
endCaseCaseIdFormula: string;
|
|
226
|
+
endEventNameFormula: string;
|
|
227
|
+
endEventName: string;
|
|
228
|
+
endEventFilters: string;
|
|
229
|
+
endEventAggregationName: string;
|
|
230
|
+
} | null;
|
|
231
|
+
|
|
232
|
+
declare function getEventMeasureFormula({ value }: IProcessIndicator, process: Omit<IWidgetProcess, "isValid">): string;
|
|
233
|
+
|
|
234
|
+
declare enum EEventMeasureTemplateNames {
|
|
235
|
+
eventsCount = "eventsCount",
|
|
236
|
+
reworksCount = "reworksCount"
|
|
393
237
|
}
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
238
|
+
declare const eventMeasureTemplateFormulas: {
|
|
239
|
+
readonly eventsCount: "count()";
|
|
240
|
+
readonly reworksCount: "count() - uniqExact({caseCaseIdFormula})";
|
|
241
|
+
};
|
|
242
|
+
|
|
243
|
+
declare function getTransitionMeasureFormula({ value }: IProcessIndicator, process: Omit<IWidgetProcess, "isValid">): string;
|
|
244
|
+
|
|
245
|
+
declare enum ETransitionMeasureTemplateNames {
|
|
246
|
+
transitionsCount = "transitionsCount",
|
|
247
|
+
medianTime = "medianTime"
|
|
402
248
|
}
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
249
|
+
declare const transitionMeasureTemplateFormulas: {
|
|
250
|
+
readonly transitionsCount: "count()";
|
|
251
|
+
readonly medianTime: "medianExact(date_diff(second, begin({eventTimeFormula}), end({eventTimeFormula})))";
|
|
252
|
+
};
|
|
253
|
+
|
|
254
|
+
declare const countExecutionsTemplate = "process(countIf({eventNameFormula} in {eventName}{filters}), {caseCaseIdFormula})";
|
|
255
|
+
|
|
256
|
+
/** @deprecated - следует использовать fillTemplateSql */
|
|
257
|
+
declare function fillTemplateString(templateString: string, params: Record<string, any>): string;
|
|
258
|
+
/** Функция для безопасного заполнения SQL шаблонов с защитой от однострочных SQL комментариев в подставляемых значениях. */
|
|
259
|
+
declare function fillTemplateSql(templateString: string, params: Record<string, string>): string;
|
|
260
|
+
|
|
261
|
+
declare function generateColumnFormula(tableName: string, columnName: string): string;
|
|
262
|
+
|
|
263
|
+
/**
|
|
264
|
+
* Паттерн подстроки, валидной для использования внутри фигурных скобок.
|
|
265
|
+
* Требование к подстроке - отсутствие закрывающих фигурных скобок (кроме экранированных).
|
|
266
|
+
*/
|
|
267
|
+
declare const curlyBracketsContentPattern: string;
|
|
268
|
+
/**
|
|
269
|
+
* Паттерн подстроки, валидной для использования внутри двойных кавычек.
|
|
270
|
+
* Требование к подстроке - отсутствие двойных кавычек (кроме экранированных).
|
|
271
|
+
*/
|
|
272
|
+
declare const doubleQuoteContentPattern: string;
|
|
273
|
+
declare const dashboardLinkRegExp: RegExp;
|
|
274
|
+
declare const workspaceLinkRegExp: RegExp;
|
|
275
|
+
/** Экранирование спец.символов при подстановке названий таблиц и колонок */
|
|
276
|
+
declare const escapeDoubleQuoteLinkName: (str: string) => string;
|
|
277
|
+
/** Экранирование спец.символов при подстановке названий переменных и показателей */
|
|
278
|
+
declare const escapeCurlyBracketLinkName: (str: string) => string;
|
|
279
|
+
interface IIndicatorLink {
|
|
280
|
+
/** string - имя группы пространства, null - используется текущий отчет */
|
|
281
|
+
scopeName: string | null;
|
|
282
|
+
indicatorName: string;
|
|
432
283
|
}
|
|
433
|
-
declare const
|
|
284
|
+
declare const parseIndicatorLink: (formula: string) => IIndicatorLink | null;
|
|
434
285
|
|
|
435
286
|
declare enum EWidgetFilterMode {
|
|
436
287
|
DEFAULT = "DEFAULT",
|
|
437
288
|
SINGLE = "SINGLE",
|
|
438
|
-
/** @deprecated Отказ от режима фильтрации "Множественный выбор"*/
|
|
439
|
-
MULTI = "MULTI",
|
|
440
289
|
DISABLED = "DISABLED"
|
|
441
290
|
}
|
|
442
291
|
type TWidgetFiltering = {
|
|
443
292
|
ignore: true;
|
|
444
|
-
mode: EWidgetFilterMode.SINGLE
|
|
445
|
-
/** @deprecated Отказ от режима фильтрации "Множественный выбор"*/
|
|
446
|
-
| EWidgetFilterMode.MULTI;
|
|
293
|
+
mode: EWidgetFilterMode.SINGLE;
|
|
447
294
|
} | {
|
|
448
295
|
ignore: false;
|
|
449
296
|
mode: EWidgetFilterMode;
|
|
@@ -473,9 +320,157 @@ interface IRange {
|
|
|
473
320
|
min?: number;
|
|
474
321
|
max?: number;
|
|
475
322
|
}
|
|
476
|
-
declare enum EFontWeight {
|
|
477
|
-
NORMAL = "NORMAL",
|
|
478
|
-
BOLD = "BOLD"
|
|
323
|
+
declare enum EFontWeight {
|
|
324
|
+
NORMAL = "NORMAL",
|
|
325
|
+
BOLD = "BOLD"
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
interface IWidgetTableColumn {
|
|
329
|
+
/** Имя колонки */
|
|
330
|
+
name: string;
|
|
331
|
+
/** Тип данных колонки */
|
|
332
|
+
dbDataType: string;
|
|
333
|
+
}
|
|
334
|
+
interface IScriptField {
|
|
335
|
+
name: string;
|
|
336
|
+
isRequired: boolean;
|
|
337
|
+
isArray: boolean;
|
|
338
|
+
}
|
|
339
|
+
interface IActionScript {
|
|
340
|
+
key: string;
|
|
341
|
+
name: string;
|
|
342
|
+
fields: IScriptField[];
|
|
343
|
+
}
|
|
344
|
+
interface IWidgetTable {
|
|
345
|
+
/** Имя таблицы */
|
|
346
|
+
name: string;
|
|
347
|
+
/** Колонки таблицы */
|
|
348
|
+
columns: Map<string, IWidgetTableColumn>;
|
|
349
|
+
}
|
|
350
|
+
interface IDisplayRule {
|
|
351
|
+
color: TColor;
|
|
352
|
+
}
|
|
353
|
+
interface IGlobalContext {
|
|
354
|
+
/** Используемый язык системы */
|
|
355
|
+
language: ELanguages;
|
|
356
|
+
/** Имя отчета */
|
|
357
|
+
reportName: string;
|
|
358
|
+
/** Имена образов по их ключу(в текущем отчете) */
|
|
359
|
+
viewNameByKey: Map<string, string>;
|
|
360
|
+
/** Меры уровня отчета */
|
|
361
|
+
reportMeasures: TNullable<Map<string, ICommonMeasures>>;
|
|
362
|
+
/** Меры уровня пространства(из модели данных) */
|
|
363
|
+
workspaceMeasures: TNullable<Map<string, Map<string, ICommonMeasures>>>;
|
|
364
|
+
/** Разрезы уровня отчета */
|
|
365
|
+
reportDimensions: TNullable<Map<string, ICommonDimensions>>;
|
|
366
|
+
/** Разрезы уровня пространства(из модели данных) */
|
|
367
|
+
workspaceDimensions: TNullable<Map<string, Map<string, ICommonDimensions>>>;
|
|
368
|
+
/** Правила отображения уровня */
|
|
369
|
+
reportDisplayRules: Map<string, IDisplayRule>;
|
|
370
|
+
/** Правила отображения уровня пространства(из модели данных) */
|
|
371
|
+
workspaceDisplayRules: Map<string, Map<string, IDisplayRule>>;
|
|
372
|
+
/** Пользовательские переменные уровня отчета */
|
|
373
|
+
variables: Map<string, TWidgetVariable>;
|
|
374
|
+
/** Метод установки значения пользовательской переменной уровня отчета */
|
|
375
|
+
setVariableValue(name: string, value: TWidgetVariable["value"]): TWidgetVariable["value"];
|
|
376
|
+
/** Метод очистки значения пользовательской переменной уровня отчета */
|
|
377
|
+
unsetVariableValue(name: string): TWidgetVariable["value"];
|
|
378
|
+
/** Состояния(название сущности) отчета */
|
|
379
|
+
states: Map<string, ICommonState>;
|
|
380
|
+
/** Процессы из модели данных (по ключу) */
|
|
381
|
+
processByKey: Map<string, IWidgetProcess>;
|
|
382
|
+
/** Имена таблиц из модели данных */
|
|
383
|
+
tables: Set<string>;
|
|
384
|
+
/** Функция для запроса информации о колонках таблицы из модели данных */
|
|
385
|
+
fetchColumnsByTableName(tableName: string): Promise<IWidgetTableColumn[] | undefined>;
|
|
386
|
+
/** Скрипты, доступные для запуска из отчета */
|
|
387
|
+
scripts: Map<string, IActionScript>;
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
declare enum EColorMode {
|
|
391
|
+
/** Окрашивание отключено */
|
|
392
|
+
DISABLED = "DISABLED",
|
|
393
|
+
/** Цвет каждого значения вычисляется по формуле */
|
|
394
|
+
FORMULA = "FORMULA",
|
|
395
|
+
/** Один цвет для всех значений */
|
|
396
|
+
BASE = "BASE",
|
|
397
|
+
/** Окрашивание каждого значения по градиенту относительно минимального и максимального значений */
|
|
398
|
+
GRADIENT = "GRADIENT",
|
|
399
|
+
/** Использовать автоматический цвет: по умолчанию определяется порядковым номером показателя */
|
|
400
|
+
AUTO = "AUTO",
|
|
401
|
+
/** Использовать цвет из правила отображения (в правиле отображения рекурсивно определен цвет) */
|
|
402
|
+
RULE = "RULE",
|
|
403
|
+
/** Задать цвет конкретным значениям разреза */
|
|
404
|
+
VALUES = "VALUES",
|
|
405
|
+
/** Задать цвет конкретным значениям общего разреза. Режим используется только для настроек правила отображения */
|
|
406
|
+
BY_DIMENSION = "BY_DIMENSION"
|
|
407
|
+
}
|
|
408
|
+
type TColorBase = {
|
|
409
|
+
mode: EColorMode.BASE;
|
|
410
|
+
value?: string;
|
|
411
|
+
};
|
|
412
|
+
type TColorRule = {
|
|
413
|
+
mode: EColorMode.RULE;
|
|
414
|
+
formula: string;
|
|
415
|
+
};
|
|
416
|
+
interface IColoredValue {
|
|
417
|
+
value: string;
|
|
418
|
+
color: TColorBase | TColorRule;
|
|
419
|
+
}
|
|
420
|
+
/** Настройка цвета */
|
|
421
|
+
type TColor = {
|
|
422
|
+
mode: EColorMode.FORMULA;
|
|
423
|
+
formula: string;
|
|
424
|
+
} | TColorBase | {
|
|
425
|
+
mode: EColorMode.GRADIENT;
|
|
426
|
+
startValue: string;
|
|
427
|
+
endValue: string;
|
|
428
|
+
classCount?: TNullable<number>;
|
|
429
|
+
} | {
|
|
430
|
+
mode: EColorMode.AUTO;
|
|
431
|
+
} | TColorRule | {
|
|
432
|
+
mode: EColorMode.VALUES;
|
|
433
|
+
items: IColoredValue[];
|
|
434
|
+
} | {
|
|
435
|
+
mode: EColorMode.BY_DIMENSION;
|
|
436
|
+
/** Имя разреза из области видимости правила отображения */
|
|
437
|
+
dimensionName: string;
|
|
438
|
+
items: IColoredValue[];
|
|
439
|
+
} | {
|
|
440
|
+
mode: EColorMode.DISABLED;
|
|
441
|
+
};
|
|
442
|
+
declare const getRuleColor: (ruleFormula: string, globalContext: Pick<IGlobalContext, "reportDisplayRules" | "workspaceDisplayRules">) => TColor | undefined;
|
|
443
|
+
declare const isValidColor: (color: TColor, globalContext: Pick<IGlobalContext, "reportDisplayRules" | "workspaceDisplayRules">) => boolean;
|
|
444
|
+
declare const colors: string[];
|
|
445
|
+
/**
|
|
446
|
+
* Получить цвет по индексу элемента
|
|
447
|
+
* @param index - индекс элемента, которому требуется цвет
|
|
448
|
+
*/
|
|
449
|
+
declare const getColorByIndex: (index: number) => string;
|
|
450
|
+
|
|
451
|
+
interface IAutoIdentifiedArrayItem {
|
|
452
|
+
/**
|
|
453
|
+
* Идентификатор, добавляемый системой "на лету" для удобства разработки, не сохраняется на сервер.
|
|
454
|
+
* Гарантируется уникальность id в пределах settings виджета.
|
|
455
|
+
*/
|
|
456
|
+
id: number;
|
|
457
|
+
}
|
|
458
|
+
interface IBaseWidgetSettings {
|
|
459
|
+
title?: string;
|
|
460
|
+
titleSize?: number;
|
|
461
|
+
titleColor?: TColor;
|
|
462
|
+
titleWeight?: EFontWeight;
|
|
463
|
+
stateName?: string | null;
|
|
464
|
+
showMarkdown?: boolean;
|
|
465
|
+
markdownMeasures?: IMarkdownMeasure[];
|
|
466
|
+
markdownText?: string;
|
|
467
|
+
markdownTextSize?: number;
|
|
468
|
+
filters?: TSettingsFilter[];
|
|
469
|
+
filterMode?: EWidgetFilterMode;
|
|
470
|
+
ignoreFilters?: boolean;
|
|
471
|
+
sorting?: IWidgetSortingIndicator[];
|
|
472
|
+
actionButtons?: IActionButton[];
|
|
473
|
+
paddings?: number | string;
|
|
479
474
|
}
|
|
480
475
|
|
|
481
476
|
declare enum ESortDirection {
|
|
@@ -536,9 +531,8 @@ type TProcessIndicatorValue = {
|
|
|
536
531
|
interface IProcessIndicator extends IWidgetIndicator {
|
|
537
532
|
value?: TProcessIndicatorValue;
|
|
538
533
|
dbDataType?: string;
|
|
539
|
-
format?:
|
|
540
|
-
formatting?:
|
|
541
|
-
formattingTemplate?: string;
|
|
534
|
+
format?: IWidgetColumnIndicator["format"];
|
|
535
|
+
formatting?: IWidgetColumnIndicator["formatting"];
|
|
542
536
|
displayCondition?: TDisplayCondition;
|
|
543
537
|
}
|
|
544
538
|
interface IProcessEventIndicator extends IProcessIndicator {
|
|
@@ -580,10 +574,11 @@ interface ICommonDimensions {
|
|
|
580
574
|
name: string;
|
|
581
575
|
formula: string;
|
|
582
576
|
}
|
|
583
|
-
type
|
|
577
|
+
type TWidgetIndicatorFormulaValue = {
|
|
584
578
|
mode: EWidgetIndicatorValueModes.FORMULA;
|
|
585
579
|
formula?: string;
|
|
586
|
-
}
|
|
580
|
+
};
|
|
581
|
+
type TWidgetIndicatorTemplateValue = {
|
|
587
582
|
mode: EWidgetIndicatorValueModes.TEMPLATE;
|
|
588
583
|
/** Имя шаблонной формулы, использующей колонку таблицы */
|
|
589
584
|
templateName?: string;
|
|
@@ -592,12 +587,28 @@ type TColumnIndicatorValue = {
|
|
|
592
587
|
/** Имя колонки */
|
|
593
588
|
columnName?: string;
|
|
594
589
|
};
|
|
590
|
+
type TMeasureValue = TWidgetIndicatorFormulaValue | (TWidgetIndicatorTemplateValue & {
|
|
591
|
+
innerTemplateName?: EMeasureInnerTemplateNames;
|
|
592
|
+
});
|
|
593
|
+
type TDimensionValue = TWidgetIndicatorFormulaValue | (TWidgetIndicatorTemplateValue & {
|
|
594
|
+
innerTemplateName?: never;
|
|
595
|
+
});
|
|
596
|
+
type TColumnIndicatorValue = TMeasureValue | TDimensionValue;
|
|
597
|
+
declare enum EFormatOrFormattingMode {
|
|
598
|
+
BASE = "BASE",
|
|
599
|
+
TEMPLATE = "TEMPLATE"
|
|
600
|
+
}
|
|
595
601
|
/** Общий интерфейс разреза и меры */
|
|
596
602
|
interface IWidgetColumnIndicator extends IWidgetIndicator {
|
|
597
603
|
dbDataType?: string;
|
|
598
|
-
format?:
|
|
599
|
-
|
|
600
|
-
|
|
604
|
+
format?: {
|
|
605
|
+
value?: EFormatTypes;
|
|
606
|
+
mode: EFormatOrFormattingMode;
|
|
607
|
+
};
|
|
608
|
+
formatting?: {
|
|
609
|
+
value?: EFormattingPresets;
|
|
610
|
+
mode: EFormatOrFormattingMode;
|
|
611
|
+
};
|
|
601
612
|
displayCondition?: TDisplayCondition;
|
|
602
613
|
onClick?: TActionsOnClick[];
|
|
603
614
|
}
|
|
@@ -618,7 +629,6 @@ interface IWidgetMeasure extends Omit<IWidgetColumnIndicator, "value"> {
|
|
|
618
629
|
}) | TWidgetIndicatorConversionValue | TWidgetIndicatorDurationValue;
|
|
619
630
|
}
|
|
620
631
|
interface IMarkdownMeasure extends IWidgetMeasure {
|
|
621
|
-
format: EFormatTypes;
|
|
622
632
|
displaySign: EMarkdownDisplayMode;
|
|
623
633
|
}
|
|
624
634
|
/** Тип показателя */
|
|
@@ -678,9 +688,6 @@ interface IWidgetStaticListVariable extends IBaseWidgetVariable {
|
|
|
678
688
|
type: EIndicatorType.STATIC_LIST;
|
|
679
689
|
/** Значение */
|
|
680
690
|
value: string | string[] | null;
|
|
681
|
-
/** Элементы статического списка */
|
|
682
|
-
/** @deprecated поле будет удалено, необходимо использовать labeledOptions */
|
|
683
|
-
options: string[];
|
|
684
691
|
/** Объект ключ значение для статического списка */
|
|
685
692
|
labeledOptions: IStaticListLabeledOption[];
|
|
686
693
|
/** Множественный выбор */
|
|
@@ -738,190 +745,407 @@ type TWidgetIndicatorAggregationValue = {
|
|
|
738
745
|
columnName?: string;
|
|
739
746
|
eventTimeFormula?: string | null;
|
|
740
747
|
};
|
|
741
|
-
declare enum EEventAppearances {
|
|
742
|
-
FIRST = "FIRST",
|
|
743
|
-
LAST = "LAST"
|
|
748
|
+
declare enum EEventAppearances {
|
|
749
|
+
FIRST = "FIRST",
|
|
750
|
+
LAST = "LAST"
|
|
751
|
+
}
|
|
752
|
+
type TWidgetIndicatorConversionValue = {
|
|
753
|
+
mode: EWidgetIndicatorValueModes.CONVERSION;
|
|
754
|
+
startEventNameFormula: string | null;
|
|
755
|
+
startEventProcessKey: string | null;
|
|
756
|
+
startEventName: string | null;
|
|
757
|
+
startEventFilters: TExtendedFormulaFilterValue[];
|
|
758
|
+
startEventTimeFormula: string | null;
|
|
759
|
+
endEventNameFormula: string | null;
|
|
760
|
+
endEventProcessKey: string | null;
|
|
761
|
+
endEventName: string | null;
|
|
762
|
+
endEventFilters: TExtendedFormulaFilterValue[];
|
|
763
|
+
endCaseCaseIdFormula: string | null;
|
|
764
|
+
endEventTimeFormula: string | null;
|
|
765
|
+
};
|
|
766
|
+
type TWidgetIndicatorDurationValue = {
|
|
767
|
+
mode: EWidgetIndicatorValueModes.DURATION;
|
|
768
|
+
templateName: string;
|
|
769
|
+
startEventAppearances: EEventAppearances;
|
|
770
|
+
endEventAppearances: EEventAppearances;
|
|
771
|
+
} & Omit<TWidgetIndicatorConversionValue, "mode">;
|
|
772
|
+
type TWidgetIndicatorTimeValue = {
|
|
773
|
+
templateName: string;
|
|
774
|
+
mode: EWidgetIndicatorValueModes.START_TIME | EWidgetIndicatorValueModes.END_TIME;
|
|
775
|
+
processKey: string | null;
|
|
776
|
+
eventName: string | null;
|
|
777
|
+
eventTimeFormula: string | null;
|
|
778
|
+
caseCaseIdFormula: string | null;
|
|
779
|
+
eventNameFormula: string | null;
|
|
780
|
+
filters: TExtendedFormulaFilterValue[];
|
|
781
|
+
};
|
|
782
|
+
|
|
783
|
+
declare enum EFormatTypes {
|
|
784
|
+
/** Дата */
|
|
785
|
+
DATE = "DATE",
|
|
786
|
+
/** Число */
|
|
787
|
+
NUMBER = "NUMBER",
|
|
788
|
+
/** Месяц */
|
|
789
|
+
MONTH = "MONTH",
|
|
790
|
+
/** Дата и время */
|
|
791
|
+
DATETIME = "DATETIME",
|
|
792
|
+
/** Строка */
|
|
793
|
+
STRING = "STRING",
|
|
794
|
+
/** День недели */
|
|
795
|
+
DAY_OF_WEEK = "DAY_OF_WEEK",
|
|
796
|
+
/** Длительность */
|
|
797
|
+
DURATION = "DURATION",
|
|
798
|
+
/** Час */
|
|
799
|
+
HOUR = "HOUR",
|
|
800
|
+
/** Месяц и год */
|
|
801
|
+
MONTH_YEAR = "MONTH_YEAR",
|
|
802
|
+
/** Год */
|
|
803
|
+
YEAR = "YEAR",
|
|
804
|
+
/** Квартал */
|
|
805
|
+
QUARTER = "QUARTER",
|
|
806
|
+
/** Квартал и год */
|
|
807
|
+
QUARTER_YEAR = "QUARTER_YEAR",
|
|
808
|
+
/** День месяца */
|
|
809
|
+
DAY_OF_MONTH = "DAY_OF_MONTH",
|
|
810
|
+
/** Неделя */
|
|
811
|
+
WEEK = "WEEK",
|
|
812
|
+
/** Логический */
|
|
813
|
+
BOOLEAN = "BOOLEAN",
|
|
814
|
+
PERCENT = "PERCENT"
|
|
815
|
+
}
|
|
816
|
+
declare enum EFormattingPresets {
|
|
817
|
+
"AUTO" = "AUTO",
|
|
818
|
+
"CUSTOM" = "CUSTOM",
|
|
819
|
+
"DD/M/YYYY" = "DD/M/YYYY",
|
|
820
|
+
"DD-MM-YYYY" = "DD-MM-YYYY",
|
|
821
|
+
"DD-MM-YY" = "DD-MM-YY",
|
|
822
|
+
"YYYY-MM-DD" = "YYYY-MM-DD",
|
|
823
|
+
"YY-MM-DD" = "YY-MM-DD",
|
|
824
|
+
"DD MM YYYY" = "DD MM YYYY",
|
|
825
|
+
"DD MMM YYYY" = "DD MMM YYYY",
|
|
826
|
+
"DD MMM YY" = "DD MMM YY",
|
|
827
|
+
"MM.DD.YYYY" = "MM.DD.YYYY",
|
|
828
|
+
"MM.DD.YY" = "MM.DD.YY",
|
|
829
|
+
"DD MMMM YYYY" = "DD MMMM YYYY",
|
|
830
|
+
"DD MMMM YY" = "DD MMMM YY",
|
|
831
|
+
"DD/MM/YYYY" = "DD/MM/YYYY",
|
|
832
|
+
"DD/MM/YY" = "DD/MM/YY",
|
|
833
|
+
"MM/DD/YYYY" = "MM/DD/YYYY",
|
|
834
|
+
"MM/DD/YY" = "MM/DD/YY",
|
|
835
|
+
"MMMM DD, YYYY" = "MMMM DD, YYYY",
|
|
836
|
+
"MMMM DD, YY" = "MMMM DD, YY",
|
|
837
|
+
"DD.MM.YYYY" = "DD.MM.YYYY",
|
|
838
|
+
"DD.MM.YY" = "DD.MM.YY",
|
|
839
|
+
"MM-DD-YY" = "MM-DD-YY",
|
|
840
|
+
"MM-DD-YYYY" = "MM-DD-YYYY",
|
|
841
|
+
"DD/M/YYYY HH:mm" = "DD/M/YYYY HH:mm",
|
|
842
|
+
"DD/MM/YYYY, HH:mm" = "DD/MM/YYYY, HH:mm",
|
|
843
|
+
"DD/MM/YY, HH:mm" = "DD/MM/YY, HH:mm",
|
|
844
|
+
"MM/DD/YY, hh:mm a" = "MM/DD/YY, hh:mm a",
|
|
845
|
+
"MM/DD/YYYY, hh:mm a" = "MM/DD/YYYY, hh:mm a",
|
|
846
|
+
"YYYY-MM-DD HH:mm" = "YYYY-MM-DD HH:mm",
|
|
847
|
+
"YY-MM-DD, HH:mm" = "YY-MM-DD, HH:mm",
|
|
848
|
+
"YYYY-MM-DD, HH:mm" = "YYYY-MM-DD, HH:mm",
|
|
849
|
+
"YYYY-MM-DD HH:mm:ss" = "YYYY-MM-DD HH:mm:ss",
|
|
850
|
+
"DD MM YYYY HH:mm" = "DD MM YYYY HH:mm",
|
|
851
|
+
"DD MMMM YYYY, HH:mm" = "DD MMMM YYYY, HH:mm",
|
|
852
|
+
"DD.MM.YY, HH:mm" = "DD.MM.YY, HH:mm",
|
|
853
|
+
"DD.MM.YYYY, HH:mm" = "DD.MM.YYYY, HH:mm",
|
|
854
|
+
"MM-DD-YY, hh:mm a" = "MM-DD-YY, hh:mm a",
|
|
855
|
+
"MM-DD-YYYY, hh:mm a" = "MM-DD-YYYY, hh:mm a",
|
|
856
|
+
"MM.DD.YY, hh:mm a" = "MM.DD.YY, hh:mm a",
|
|
857
|
+
"MM.DD.YYYY, hh:mm a" = "MM.DD.YYYY, hh:mm a",
|
|
858
|
+
"MM.DD.YYYY hh:mm a" = "MM.DD.YYYY hh:mm a",
|
|
859
|
+
"DD MMM YY, HH:mm" = "DD MMM YY, HH:mm",
|
|
860
|
+
"DD MMM YYYY, HH:mm" = "DD MMM YYYY, HH:mm",
|
|
861
|
+
"MMMM DD, YY, HH:mm" = "MMMM DD, YY, HH:mm",
|
|
862
|
+
"MMMM DD, YYYY, HH:mm" = "MMMM DD, YYYY, HH:mm",
|
|
863
|
+
"DD MMMM YY, HH:mm" = "DD MMMM YY, HH:mm",
|
|
864
|
+
"DD.MM.YYYY, HH:mm:ss" = "DD.MM.YYYY, HH:mm:ss",
|
|
865
|
+
"DD.MM.YYYY HH:mm:ss" = "DD.MM.YYYY HH:mm:ss",
|
|
866
|
+
"DD/MM/YYYY HH:mm:ss" = "DD/MM/YYYY HH:mm:ss",
|
|
867
|
+
"DD" = "DD",
|
|
868
|
+
"D" = "D",
|
|
869
|
+
"DDDD" = "DDDD",
|
|
870
|
+
"MMM" = "MMM",
|
|
871
|
+
"MM" = "MM",
|
|
872
|
+
"MMMM" = "MMMM",
|
|
873
|
+
"k" = "k",
|
|
874
|
+
"x" = "x",
|
|
875
|
+
"#,##x" = "#,##x",
|
|
876
|
+
"#,##x.x" = "#,##x.x",
|
|
877
|
+
"#,##x.xx" = "#,##x.xx",
|
|
878
|
+
"x[%]" = "x[%]",
|
|
879
|
+
"x.x[%]" = "x.x[%]",
|
|
880
|
+
"[$]x" = "[$]x",
|
|
881
|
+
"zx.xx[%]" = "zx.xx[%]",
|
|
882
|
+
"hh:mm:ss" = "hh:mm:ss",
|
|
883
|
+
"dd:hh:mm:ss" = "dd:hh:mm:ss",
|
|
884
|
+
"d" = "d",
|
|
885
|
+
"h" = "h",
|
|
886
|
+
"dk" = "dk",
|
|
887
|
+
"hk" = "hk",
|
|
888
|
+
"dd" = "dd",
|
|
889
|
+
"HH" = "HH",
|
|
890
|
+
"hh a" = "hh a",
|
|
891
|
+
"MMM, YYYY" = "MMM, YYYY",
|
|
892
|
+
"MMM, YY" = "MMM, YY",
|
|
893
|
+
"MM.YYYY" = "MM.YYYY",
|
|
894
|
+
"MM.YY" = "MM.YY",
|
|
895
|
+
"MMMM YYYY" = "MMMM YYYY",
|
|
896
|
+
"MMMM YY" = "MMMM YY",
|
|
897
|
+
"[Q]q" = "[Q]q",
|
|
898
|
+
"R" = "R",
|
|
899
|
+
"[Q]q[-]YYYY" = "[Q]q[-]YYYY",
|
|
900
|
+
"[Q]q[-]YY" = "[Q]q[-]YY",
|
|
901
|
+
"R[-]YYYY" = "R[-]YYYY",
|
|
902
|
+
"R[-]YY" = "R[-]YY"
|
|
903
|
+
}
|
|
904
|
+
interface IWidgetFormatting {
|
|
905
|
+
getFormattedValue: (value: string, formatType: EFormatTypes, formatting: IWidgetColumnIndicator["formatting"]) => string;
|
|
906
|
+
}
|
|
907
|
+
declare const formattingConfig: {
|
|
908
|
+
readonly availableFormatsBySimpleType: {
|
|
909
|
+
OTHER: EFormatTypes[];
|
|
910
|
+
STRING: EFormatTypes[];
|
|
911
|
+
FLOAT: EFormatTypes[];
|
|
912
|
+
INTEGER: EFormatTypes[];
|
|
913
|
+
DATE: EFormatTypes[];
|
|
914
|
+
DATETIME: EFormatTypes[];
|
|
915
|
+
DATETIME64: EFormatTypes[];
|
|
916
|
+
BOOLEAN: EFormatTypes[];
|
|
917
|
+
};
|
|
918
|
+
readonly availableFormattingByFormat: {
|
|
919
|
+
DATE: EFormattingPresets[];
|
|
920
|
+
DATETIME: EFormattingPresets[];
|
|
921
|
+
DAY_OF_WEEK: EFormattingPresets[];
|
|
922
|
+
MONTH: EFormattingPresets[];
|
|
923
|
+
NUMBER: EFormattingPresets[];
|
|
924
|
+
DURATION: EFormattingPresets[];
|
|
925
|
+
HOUR: EFormattingPresets[];
|
|
926
|
+
MONTH_YEAR: EFormattingPresets[];
|
|
927
|
+
QUARTER: EFormattingPresets[];
|
|
928
|
+
QUARTER_YEAR: EFormattingPresets[];
|
|
929
|
+
STRING: never[];
|
|
930
|
+
DAY_OF_MONTH: never[];
|
|
931
|
+
WEEK: never[];
|
|
932
|
+
YEAR: never[];
|
|
933
|
+
BOOLEAN: never[];
|
|
934
|
+
PERCENT: EFormattingPresets[];
|
|
935
|
+
};
|
|
936
|
+
};
|
|
937
|
+
|
|
938
|
+
declare enum ELastTimeUnit {
|
|
939
|
+
DAYS = "DAYS",
|
|
940
|
+
MONTHS = "MONTHS",
|
|
941
|
+
YEARS = "YEARS"
|
|
942
|
+
}
|
|
943
|
+
declare enum EDurationUnit {
|
|
944
|
+
DAYS = "DAYS",
|
|
945
|
+
HOURS = "HOURS",
|
|
946
|
+
MINUTES = "MINUTES",
|
|
947
|
+
SECONDS = "SECONDS"
|
|
948
|
+
}
|
|
949
|
+
declare const applyIndexToArrayFormula: (formula: string, index: number) => string;
|
|
950
|
+
declare const mapFormulaFilterToCalculatorInput: (filterValue: TExtendedFormulaFilterValue) => TNullable<ICalculatorFilter>;
|
|
951
|
+
declare const mapFormulaFiltersToInputs: (filters: TExtendedFormulaFilterValue[]) => ICalculatorFilter[];
|
|
952
|
+
|
|
953
|
+
type TSelectivePartial<T, Keys extends keyof T> = Omit<T, Keys> & Partial<Pick<T, Keys>>;
|
|
954
|
+
declare const formulaFilterMethods: {
|
|
955
|
+
readonly LAST_TIME: "LAST_TIME";
|
|
956
|
+
readonly EQUAL_TO: ECalculatorFilterMethods.EQUAL_TO;
|
|
957
|
+
readonly NOT_EQUAL_TO: ECalculatorFilterMethods.NOT_EQUAL_TO;
|
|
958
|
+
readonly GREATER_THAN: ECalculatorFilterMethods.GREATER_THAN;
|
|
959
|
+
readonly LESS_THAN: ECalculatorFilterMethods.LESS_THAN;
|
|
960
|
+
readonly GREATER_THAN_OR_EQUAL_TO: ECalculatorFilterMethods.GREATER_THAN_OR_EQUAL_TO;
|
|
961
|
+
readonly LESS_THAN_OR_EQUAL_TO: ECalculatorFilterMethods.LESS_THAN_OR_EQUAL_TO;
|
|
962
|
+
readonly STARTS_WITH: ECalculatorFilterMethods.STARTS_WITH;
|
|
963
|
+
readonly ENDS_WITH: ECalculatorFilterMethods.ENDS_WITH;
|
|
964
|
+
readonly CONTAINS: ECalculatorFilterMethods.CONTAINS;
|
|
965
|
+
readonly NOT_CONTAINS: ECalculatorFilterMethods.NOT_CONTAINS;
|
|
966
|
+
readonly IN_RANGE: ECalculatorFilterMethods.IN_RANGE;
|
|
967
|
+
readonly NOT_IN_RANGE: ECalculatorFilterMethods.NOT_IN_RANGE;
|
|
968
|
+
readonly INCLUDE: ECalculatorFilterMethods.INCLUDE;
|
|
969
|
+
readonly EXCLUDE: ECalculatorFilterMethods.EXCLUDE;
|
|
970
|
+
readonly NONEMPTY: ECalculatorFilterMethods.NONEMPTY;
|
|
971
|
+
readonly EMPTY: ECalculatorFilterMethods.EMPTY;
|
|
972
|
+
};
|
|
973
|
+
declare enum EProcessFilterNames {
|
|
974
|
+
/** Наличие события */
|
|
975
|
+
presenceOfEvent = "presenceOfEvent",
|
|
976
|
+
/** Количество повторов события */
|
|
977
|
+
repetitionOfEvent = "repetitionOfEvent",
|
|
978
|
+
/** Наличие перехода */
|
|
979
|
+
presenceOfTransition = "presenceOfTransition",
|
|
980
|
+
/** Длительность перехода */
|
|
981
|
+
durationOfTransition = "durationOfTransition"
|
|
744
982
|
}
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
type TWidgetIndicatorDurationValue = {
|
|
760
|
-
mode: EWidgetIndicatorValueModes.DURATION;
|
|
761
|
-
templateName: string;
|
|
762
|
-
startEventAppearances: EEventAppearances;
|
|
763
|
-
endEventAppearances: EEventAppearances;
|
|
764
|
-
} & Omit<TWidgetIndicatorConversionValue, "mode">;
|
|
765
|
-
type TWidgetIndicatorTimeValue = {
|
|
766
|
-
templateName: string;
|
|
767
|
-
mode: EWidgetIndicatorValueModes.START_TIME | EWidgetIndicatorValueModes.END_TIME;
|
|
983
|
+
/**
|
|
984
|
+
* Параметры, которые влияют на отображаемый контент в окне настройки процессного фильтра,
|
|
985
|
+
* но не учитываются при применении фильтра.
|
|
986
|
+
*/
|
|
987
|
+
interface IProcessFilterPreviewParams {
|
|
988
|
+
/**
|
|
989
|
+
* События, доступные при выборе процесса.
|
|
990
|
+
* Если параметр не передан, используются все события процесса на основе запроса к вычислителю.
|
|
991
|
+
*/
|
|
992
|
+
eventsNamesByProcessKey?: Map<string, (string | null)[]>;
|
|
993
|
+
/** Фильтры событий */
|
|
994
|
+
eventFilters?: TExtendedFormulaFilterValue[];
|
|
995
|
+
}
|
|
996
|
+
interface IProcessEventFilterValue {
|
|
768
997
|
processKey: string;
|
|
769
998
|
eventName: string;
|
|
770
|
-
eventTimeFormula: string;
|
|
771
|
-
caseCaseIdFormula: string;
|
|
772
|
-
eventNameFormula: string;
|
|
773
|
-
filters: TExtendedFormulaFilterValue[];
|
|
774
|
-
};
|
|
775
|
-
|
|
776
|
-
interface IWidgetTableColumn {
|
|
777
|
-
/** Имя колонки */
|
|
778
|
-
name: string;
|
|
779
|
-
/** Тип данных колонки */
|
|
780
|
-
dbDataType: string;
|
|
781
999
|
}
|
|
782
|
-
interface
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
1000
|
+
interface IProcessTransitionFilterValue {
|
|
1001
|
+
startEventProcessKey: string;
|
|
1002
|
+
startEventName: string;
|
|
1003
|
+
endEventProcessKey: string;
|
|
1004
|
+
endEventName: string;
|
|
786
1005
|
}
|
|
787
|
-
interface
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
1006
|
+
interface IClickPosition {
|
|
1007
|
+
x: number;
|
|
1008
|
+
y: number;
|
|
1009
|
+
elementWidth?: number;
|
|
1010
|
+
elementHeight?: number;
|
|
791
1011
|
}
|
|
792
|
-
interface
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
/** Колонки таблицы */
|
|
796
|
-
columns: Map<string, IWidgetTableColumn>;
|
|
1012
|
+
interface IPositionConfig extends IClickPosition {
|
|
1013
|
+
offsetX?: number;
|
|
1014
|
+
offsetY?: number;
|
|
797
1015
|
}
|
|
798
|
-
interface
|
|
799
|
-
|
|
1016
|
+
interface IAddPresenceOfEventFilter {
|
|
1017
|
+
(name: EProcessFilterNames.presenceOfEvent, value: IProcessEventFilterValue, positionConfig?: IPositionConfig, previewParams?: IProcessFilterPreviewParams): void;
|
|
800
1018
|
}
|
|
801
|
-
interface
|
|
802
|
-
|
|
803
|
-
language: ELanguages;
|
|
804
|
-
/** Имя отчета */
|
|
805
|
-
reportName: string;
|
|
806
|
-
/** Имена образов по их ключу(в текущем отчете) */
|
|
807
|
-
viewNameByKey: Map<string, string>;
|
|
808
|
-
/** Меры уровня отчета */
|
|
809
|
-
reportMeasures: TNullable<Map<string, ICommonMeasures>>;
|
|
810
|
-
/** Меры уровня пространства(из модели данных) */
|
|
811
|
-
workspaceMeasures: TNullable<Map<string, Map<string, ICommonMeasures>>>;
|
|
812
|
-
/** Разрезы уровня отчета */
|
|
813
|
-
reportDimensions: TNullable<Map<string, ICommonDimensions>>;
|
|
814
|
-
/** Разрезы уровня пространства(из модели данных) */
|
|
815
|
-
workspaceDimensions: TNullable<Map<string, Map<string, ICommonDimensions>>>;
|
|
816
|
-
/** Правила отображения уровня */
|
|
817
|
-
reportDisplayRules: Map<string, IDisplayRule>;
|
|
818
|
-
/** Правила отображения уровня пространства(из модели данных) */
|
|
819
|
-
workspaceDisplayRules: Map<string, Map<string, IDisplayRule>>;
|
|
820
|
-
/** Пользовательские переменные уровня отчета */
|
|
821
|
-
variables: Map<string, TWidgetVariable>;
|
|
822
|
-
/** Метод установки значения пользовательской переменной уровня отчета */
|
|
823
|
-
setVariableValue(name: string, value: TWidgetVariable["value"]): TWidgetVariable["value"];
|
|
824
|
-
/** Метод очистки значения пользовательской переменной уровня отчета */
|
|
825
|
-
unsetVariableValue(name: string): TWidgetVariable["value"];
|
|
826
|
-
/** Состояния(название сущности) отчета */
|
|
827
|
-
states: Map<string, ICommonState>;
|
|
828
|
-
/** @deprecated Процессы из модели данных (по имени) */
|
|
829
|
-
processes: Map<string, IWidgetProcess>;
|
|
830
|
-
/** Процессы из модели данных (по ключу) */
|
|
831
|
-
processByKey: Map<string, IWidgetProcess>;
|
|
832
|
-
/** Имена таблиц из модели данных */
|
|
833
|
-
tables: Set<string>;
|
|
834
|
-
/** Функция для запроса информации о колонках таблицы из модели данных */
|
|
835
|
-
fetchColumnsByTableName(tableName: string): Promise<IWidgetTableColumn[] | undefined>;
|
|
836
|
-
/** Скрипты, доступные для запуска из отчета */
|
|
837
|
-
scripts: Map<string, IActionScript>;
|
|
1019
|
+
interface IAddRepetitionOfEventFilter {
|
|
1020
|
+
(name: EProcessFilterNames.repetitionOfEvent, value: IProcessEventFilterValue, positionConfig?: IPositionConfig, previewParams?: IProcessFilterPreviewParams): void;
|
|
838
1021
|
}
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
/** Окрашивание отключено */
|
|
842
|
-
DISABLED = "DISABLED",
|
|
843
|
-
/** Цвет каждого значения вычисляется по формуле */
|
|
844
|
-
FORMULA = "FORMULA",
|
|
845
|
-
/** Один цвет для всех значений */
|
|
846
|
-
BASE = "BASE",
|
|
847
|
-
/** Окрашивание каждого значения по градиенту относительно минимального и максимального значений */
|
|
848
|
-
GRADIENT = "GRADIENT",
|
|
849
|
-
/** Использовать автоматический цвет: по умолчанию определяется порядковым номером показателя */
|
|
850
|
-
AUTO = "AUTO",
|
|
851
|
-
/** Использовать цвет из правила отображения (в правиле отображения рекурсивно определен цвет) */
|
|
852
|
-
RULE = "RULE",
|
|
853
|
-
/** Задать цвет конкретным значениям разреза */
|
|
854
|
-
VALUES = "VALUES",
|
|
855
|
-
/** Задать цвет конкретным значениям общего разреза. Режим используется только для настроек правила отображения */
|
|
856
|
-
BY_DIMENSION = "BY_DIMENSION"
|
|
1022
|
+
interface IAddPresenceOfTransitionFilter {
|
|
1023
|
+
(name: EProcessFilterNames.presenceOfTransition, value: IProcessTransitionFilterValue, positionConfig?: IPositionConfig, previewParams?: IProcessFilterPreviewParams): void;
|
|
857
1024
|
}
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
1025
|
+
interface IAddDurationOfTransitionFilter {
|
|
1026
|
+
(name: EProcessFilterNames.durationOfTransition, value: IProcessTransitionFilterValue, positionConfig?: IPositionConfig, previewParams?: IProcessFilterPreviewParams): void;
|
|
1027
|
+
}
|
|
1028
|
+
declare enum EFormulaFilterFieldKeys {
|
|
1029
|
+
date = "date",
|
|
1030
|
+
dateRange = "dateRange",
|
|
1031
|
+
numberRange = "numberRange",
|
|
1032
|
+
string = "string",
|
|
1033
|
+
lastTimeValue = "lastTimeValue",
|
|
1034
|
+
lastTimeUnit = "lastTimeUnit",
|
|
1035
|
+
durationUnit = "durationUnit"
|
|
1036
|
+
}
|
|
1037
|
+
interface IFormulaFilterValue {
|
|
1038
|
+
/** Заголовок фильтра */
|
|
1039
|
+
name: TNullable<string>;
|
|
1040
|
+
/** Формула */
|
|
864
1041
|
formula: string;
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
1042
|
+
/**
|
|
1043
|
+
* Индекс элемента в результате вычисления формулы (если результат - массив).
|
|
1044
|
+
*
|
|
1045
|
+
* Используется, когда формула возвращает массив значений, но требуется работать только с одним конкретным элементом.
|
|
1046
|
+
* Индекс добавляется к вычисляемой формуле, позволяя выбрать нужный элемент из результирующего массива.
|
|
1047
|
+
*
|
|
1048
|
+
* **Важно:** Индексация начинается с 1, т.к. используется ClickHouse (1-based).
|
|
1049
|
+
*/
|
|
1050
|
+
sliceIndex?: number;
|
|
1051
|
+
/** Тип данных формулы (без учета `sliceIndex`) */
|
|
1052
|
+
dbDataType: string;
|
|
1053
|
+
/** Формат */
|
|
1054
|
+
format: EFormatTypes;
|
|
1055
|
+
/** Метод фильтрации */
|
|
1056
|
+
filteringMethod: valueof<typeof formulaFilterMethods>;
|
|
1057
|
+
/** Выбранные в списке значения в виде моделей */
|
|
1058
|
+
checkedValues?: (string | null)[];
|
|
1059
|
+
/** Значения полей формы редактора */
|
|
1060
|
+
formValues?: Partial<{
|
|
1061
|
+
[EFormulaFilterFieldKeys.date]: string | null;
|
|
1062
|
+
[EFormulaFilterFieldKeys.dateRange]: [string, string];
|
|
1063
|
+
[EFormulaFilterFieldKeys.numberRange]: Partial<[number, number]>;
|
|
1064
|
+
[EFormulaFilterFieldKeys.string]: string;
|
|
1065
|
+
[EFormulaFilterFieldKeys.lastTimeValue]: number;
|
|
1066
|
+
[EFormulaFilterFieldKeys.lastTimeUnit]: ELastTimeUnit;
|
|
1067
|
+
[EFormulaFilterFieldKeys.durationUnit]: EDurationUnit;
|
|
1068
|
+
}>;
|
|
869
1069
|
}
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
1070
|
+
declare enum EDimensionProcessFilterTimeUnit {
|
|
1071
|
+
YEARS = "YEARS",
|
|
1072
|
+
MONTHS = "MONTHS",
|
|
1073
|
+
HOURS = "HOURS",
|
|
1074
|
+
DAYS = "DAYS",
|
|
1075
|
+
MINUTES = "MINUTES"
|
|
1076
|
+
}
|
|
1077
|
+
interface IDimensionProcessFilter {
|
|
1078
|
+
value: Extract<IFormulaControl["value"]["value"], {
|
|
1079
|
+
mode: EWidgetIndicatorValueModes.AGGREGATION | EWidgetIndicatorValueModes.START_TIME | EWidgetIndicatorValueModes.END_TIME | EWidgetIndicatorValueModes.FORMULA;
|
|
1080
|
+
}>;
|
|
1081
|
+
dbDataType: string;
|
|
1082
|
+
condition: {
|
|
1083
|
+
filteringMethod: valueof<typeof formulaFilterMethods>;
|
|
1084
|
+
timeUnit?: EDimensionProcessFilterTimeUnit;
|
|
1085
|
+
values: (string | null)[];
|
|
1086
|
+
};
|
|
1087
|
+
}
|
|
1088
|
+
type TExtendedFormulaFilterValue = {
|
|
873
1089
|
formula: string;
|
|
874
|
-
} |
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
/**
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
/**
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
1090
|
+
} | IFormulaFilterValue;
|
|
1091
|
+
interface IStagesFilterItem {
|
|
1092
|
+
id: number;
|
|
1093
|
+
/** Название этапа */
|
|
1094
|
+
name: string;
|
|
1095
|
+
/** Формула фильтра этапа */
|
|
1096
|
+
formula: string;
|
|
1097
|
+
isSelected: boolean;
|
|
1098
|
+
}
|
|
1099
|
+
interface IStagesFilterValue {
|
|
1100
|
+
/** Ключ виджета */
|
|
1101
|
+
widgetKey: string;
|
|
1102
|
+
/** Заголовок фильтра */
|
|
1103
|
+
name: TNullable<string>;
|
|
1104
|
+
/** Этапы */
|
|
1105
|
+
stages: IStagesFilterItem[];
|
|
1106
|
+
}
|
|
1107
|
+
type TWidgetFilterValue = TExtendedFormulaFilterValue | IStagesFilterValue | IProcessEventFilterValue | IProcessTransitionFilterValue;
|
|
1108
|
+
interface IWidgetFilter {
|
|
1109
|
+
/** Значение фильтра */
|
|
1110
|
+
filterValue: TWidgetFilterValue;
|
|
1111
|
+
/** Значение фильтра, подготовленное для передачи в вычислитель */
|
|
1112
|
+
preparedFilterValue: ICalculatorFilter;
|
|
1113
|
+
/** Информация о возможности менять фильтр из виджета */
|
|
1114
|
+
isReadonly: boolean;
|
|
1115
|
+
}
|
|
1116
|
+
interface IWidgetFiltration {
|
|
1117
|
+
/** Информация о внешних фильтрах виджета */
|
|
1118
|
+
filters: IWidgetFilter[];
|
|
902
1119
|
/**
|
|
903
|
-
*
|
|
904
|
-
*
|
|
1120
|
+
* Значения внешних фильтров виджета, подготовленные для передачи в вычислитель.
|
|
1121
|
+
* Использует данные из filters, но предоставлено отдельным полем для удобства разработки.
|
|
905
1122
|
*/
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
1123
|
+
preparedFilterValues: ICalculatorFilter[];
|
|
1124
|
+
/** Добавить фильтр по формуле */
|
|
1125
|
+
addFormulaFilter(value: TSelectivePartial<IFormulaFilterValue, "format" | "formValues">): void;
|
|
1126
|
+
/**
|
|
1127
|
+
* Удалить фильтр, заданный формулой, из текущего набора фильтров
|
|
1128
|
+
*
|
|
1129
|
+
* @param formula Формула фильтра, который необходимо удалить. Должна точно соответствовать
|
|
1130
|
+
* формуле ранее добавленного фильтра (с учетом регистра и пробелов).
|
|
1131
|
+
* @param [sliceIndex] Опциональный индекс элемента массива. См. {@link IFormulaFilterValue.sliceIndex}.
|
|
1132
|
+
*
|
|
1133
|
+
* @remarks
|
|
1134
|
+
* - Если фильтр был добавлен без указания индекса, его нужно удалять без указания индекса.
|
|
1135
|
+
* - Если фильтр был добавлен с индексом, тот же индекс должен быть указан при удалении.
|
|
1136
|
+
* - Удаление происходит по точному совпадению формулы и индекса (если он был указан).
|
|
1137
|
+
*/
|
|
1138
|
+
removeFormulaFilter(formula: string, sliceIndex?: number): void;
|
|
1139
|
+
/** Добавить процессный фильтр */
|
|
1140
|
+
addProcessFilter(...args: Parameters<IAddPresenceOfEventFilter> | Parameters<IAddRepetitionOfEventFilter> | Parameters<IAddPresenceOfTransitionFilter> | Parameters<IAddDurationOfTransitionFilter>): void;
|
|
1141
|
+
/** Добавить фильтр по этапам */
|
|
1142
|
+
addStagesFilter(value: Omit<IStagesFilterValue, "widgetKey">): void;
|
|
1143
|
+
/** Удалить фильтр по этапам */
|
|
1144
|
+
removeStagesFilter(widgetKey: string): void;
|
|
924
1145
|
}
|
|
1146
|
+
type TSettingsFilter = TExtendedFormulaFilterValue | IDimensionProcessFilter;
|
|
1147
|
+
declare const isFormulaFilterValue: (value: TExtendedFormulaFilterValue) => value is IFormulaFilterValue;
|
|
1148
|
+
declare const isDimensionProcessFilter: (filter: TSettingsFilter) => filter is IDimensionProcessFilter;
|
|
925
1149
|
|
|
926
1150
|
declare enum EWidgetActionInputMethod {
|
|
927
1151
|
COLUMN = "COLUMN",
|
|
@@ -951,11 +1175,7 @@ declare enum EViewOpenIn {
|
|
|
951
1175
|
WINDOW = "WINDOW",
|
|
952
1176
|
PLACEHOLDER = "PLACEHOLDER",
|
|
953
1177
|
MODAL_WINDOW = "MODAL_WINDOW",
|
|
954
|
-
DRAWER_WINDOW = "DRAWER_WINDOW"
|
|
955
|
-
/** @deprecated необходимо использовать EViewOpenIn.WINDOW с флагом newWindow - true */
|
|
956
|
-
NEW_WINDOW = "NEW_WINDOW",
|
|
957
|
-
/** @deprecated необходимо использовать EViewOpenIn.WINDOW с флагом newWindow - false */
|
|
958
|
-
CURRENT_WINDOW = "CURRENT_WINDOW"
|
|
1178
|
+
DRAWER_WINDOW = "DRAWER_WINDOW"
|
|
959
1179
|
}
|
|
960
1180
|
declare enum EDrawerPlacement {
|
|
961
1181
|
LEFT = "LEFT",
|
|
@@ -1082,23 +1302,18 @@ interface IActionUpdateVariable extends IActionCommon {
|
|
|
1082
1302
|
type TActionOpenIn = {
|
|
1083
1303
|
openIn: EViewOpenIn.DRAWER_WINDOW;
|
|
1084
1304
|
alignment: EDrawerPlacement;
|
|
1305
|
+
inheritFilter?: boolean;
|
|
1085
1306
|
} | {
|
|
1086
1307
|
openIn: EViewOpenIn.PLACEHOLDER;
|
|
1087
1308
|
placeholderName: string;
|
|
1088
|
-
}
|
|
1089
|
-
/** @deprecated необходимо использовать EViewOpenIn.WINDOW с флагом newWindow - true */
|
|
1090
|
-
| {
|
|
1091
|
-
openIn: EViewOpenIn.NEW_WINDOW;
|
|
1092
1309
|
} | {
|
|
1093
1310
|
openIn: EViewOpenIn.MODAL_WINDOW;
|
|
1094
1311
|
positionByClick?: boolean;
|
|
1095
|
-
|
|
1096
|
-
/** @deprecated необходимо использовать EViewOpenIn.WINDOW с флагом newWindow - false */
|
|
1097
|
-
| {
|
|
1098
|
-
openIn: EViewOpenIn.CURRENT_WINDOW;
|
|
1312
|
+
inheritFilter?: boolean;
|
|
1099
1313
|
} | {
|
|
1100
1314
|
openIn: EViewOpenIn.WINDOW;
|
|
1101
1315
|
newWindow: boolean;
|
|
1316
|
+
inheritFilter?: boolean;
|
|
1102
1317
|
};
|
|
1103
1318
|
type TActionOpenView = IActionCommon & {
|
|
1104
1319
|
type: EActionTypes.OPEN_VIEW;
|
|
@@ -1148,7 +1363,7 @@ interface IActionButton extends IAutoIdentifiedArrayItem {
|
|
|
1148
1363
|
color: TColor;
|
|
1149
1364
|
hint?: string;
|
|
1150
1365
|
}
|
|
1151
|
-
type TViewActionParameter = (IParameterFromAggregation | IParameterFromVariable) & {
|
|
1366
|
+
type TViewActionParameter = (IParameterFromAggregation | IParameterFromVariable) & IAutoIdentifiedArrayItem & {
|
|
1152
1367
|
name: string;
|
|
1153
1368
|
};
|
|
1154
1369
|
interface IViewAction {
|
|
@@ -1191,208 +1406,12 @@ interface IParsedDbType<T extends TNullable<string> = string> {
|
|
|
1191
1406
|
simpleType: ESimpleDataType;
|
|
1192
1407
|
}
|
|
1193
1408
|
|
|
1194
|
-
declare enum EDimensionTemplateNames {
|
|
1195
|
-
dateTime = "dateTime",
|
|
1196
|
-
date = "date",
|
|
1197
|
-
year = "year",
|
|
1198
|
-
yearAndQuarter = "yearAndQuarter",
|
|
1199
|
-
quarter = "quarter",
|
|
1200
|
-
yearAndMonth = "yearAndMonth",
|
|
1201
|
-
dayOfMonth = "dayOfMonth",
|
|
1202
|
-
month = "month",
|
|
1203
|
-
week = "week",
|
|
1204
|
-
dayOfWeek = "dayOfWeek",
|
|
1205
|
-
hour = "hour"
|
|
1206
|
-
}
|
|
1207
|
-
/** Стандартные шаблоны разреза */
|
|
1208
|
-
declare const dimensionTemplateFormulas: Record<EDimensionTemplateNames, string>;
|
|
1209
|
-
|
|
1210
|
-
declare function getDimensionFormula({ value }: IWidgetDimension): string;
|
|
1211
|
-
|
|
1212
|
-
declare enum EDimensionAggregationTemplateName {
|
|
1213
|
-
avg = "avg",
|
|
1214
|
-
median = "median",
|
|
1215
|
-
count = "count",
|
|
1216
|
-
countDistinct = "countDistinct",
|
|
1217
|
-
min = "min",
|
|
1218
|
-
max = "max",
|
|
1219
|
-
sum = "sum",
|
|
1220
|
-
top = "top",
|
|
1221
|
-
firstValue = "firstValue",
|
|
1222
|
-
lastValue = "lastValue",
|
|
1223
|
-
countExecutions = "countExecutions",
|
|
1224
|
-
countReworks = "countReworks"
|
|
1225
|
-
}
|
|
1226
|
-
/** Шаблоны процессных метрик разреза с режимом AGGREGATION */
|
|
1227
|
-
declare const dimensionAggregationTemplates: Record<EDimensionAggregationTemplateName, string>;
|
|
1228
|
-
/** На основе значения режима AGGREGATION подготовить параметры для подстановки в шаблонную формулу */
|
|
1229
|
-
declare const prepareDimensionAggregationParams: (value: Extract<IWidgetDimension["value"], {
|
|
1230
|
-
mode: EWidgetIndicatorValueModes.AGGREGATION;
|
|
1231
|
-
}>) => {
|
|
1232
|
-
eventNameFormula: string;
|
|
1233
|
-
caseCaseIdFormula: string;
|
|
1234
|
-
eventName: string;
|
|
1235
|
-
objectFilters: string;
|
|
1236
|
-
filters: string;
|
|
1237
|
-
eventTimeFormula: string;
|
|
1238
|
-
columnFormula: string;
|
|
1239
|
-
} | null;
|
|
1240
|
-
|
|
1241
|
-
/** Шаблоны процессных метрик разреза с режимами START_TIME/END_TIME */
|
|
1242
|
-
declare const timeTemplates: {
|
|
1243
|
-
START_TIME: Record<EDimensionTemplateNames, string>;
|
|
1244
|
-
END_TIME: Record<EDimensionTemplateNames, string>;
|
|
1245
|
-
};
|
|
1246
|
-
/** На основе значения режимов START_TIME/END_TIME подготовить параметры для подстановки в шаблонную формулу */
|
|
1247
|
-
declare const prepareTimeParams: (value: TWidgetIndicatorTimeValue) => {
|
|
1248
|
-
eventTimeFormula: string;
|
|
1249
|
-
eventNameFormula: string;
|
|
1250
|
-
caseCaseIdFormula: string;
|
|
1251
|
-
filters: string;
|
|
1252
|
-
eventName: string;
|
|
1253
|
-
} | undefined;
|
|
1254
|
-
|
|
1255
|
-
declare function getMeasureFormula({ value }: IWidgetMeasure): string;
|
|
1256
|
-
|
|
1257
|
-
declare enum EMeasureTemplateNames {
|
|
1258
|
-
avg = "avg",
|
|
1259
|
-
median = "median",
|
|
1260
|
-
count = "count",
|
|
1261
|
-
countDistinct = "countDistinct",
|
|
1262
|
-
min = "min",
|
|
1263
|
-
max = "max",
|
|
1264
|
-
sum = "sum"
|
|
1265
|
-
}
|
|
1266
|
-
/** Стандартные шаблоны меры */
|
|
1267
|
-
declare const measureTemplateFormulas: {
|
|
1268
|
-
readonly avg: "avg({columnFormula})";
|
|
1269
|
-
readonly count: "count({columnFormula})";
|
|
1270
|
-
readonly countDistinct: "count(distinct {columnFormula})";
|
|
1271
|
-
readonly median: "medianExact({columnFormula})";
|
|
1272
|
-
readonly min: "min({columnFormula})";
|
|
1273
|
-
readonly max: "max({columnFormula})";
|
|
1274
|
-
readonly sum: "sum({columnFormula})";
|
|
1275
|
-
};
|
|
1276
|
-
|
|
1277
|
-
declare enum EMeasureAggregationTemplateName {
|
|
1278
|
-
agvIf = "agvIf",
|
|
1279
|
-
medianIf = "medianIf",
|
|
1280
|
-
countIf = "countIf",
|
|
1281
|
-
countIfDistinct = "countIfDistinct",
|
|
1282
|
-
minIf = "minIf",
|
|
1283
|
-
maxIf = "maxIf",
|
|
1284
|
-
sumIf = "sumIf",
|
|
1285
|
-
top = "top",
|
|
1286
|
-
firstValue = "firstValue",
|
|
1287
|
-
lastValue = "lastValue",
|
|
1288
|
-
countExecutions = "countExecutions",
|
|
1289
|
-
countReworks = "countReworks"
|
|
1290
|
-
}
|
|
1291
|
-
/** На основе значения режима AGGREGATION подготовить параметры для подстановки в шаблонную формулу */
|
|
1292
|
-
declare const prepareMeasureAggregationParams: (value: Extract<IWidgetMeasure["value"], {
|
|
1293
|
-
mode: EWidgetIndicatorValueModes.AGGREGATION;
|
|
1294
|
-
}>) => {
|
|
1295
|
-
outerAggregation: EOuterAggregation;
|
|
1296
|
-
eventNameFormula: string;
|
|
1297
|
-
caseCaseIdFormula: string;
|
|
1298
|
-
eventName: string | null;
|
|
1299
|
-
objectFilters: string;
|
|
1300
|
-
filters: string;
|
|
1301
|
-
eventTimeFormula: string;
|
|
1302
|
-
columnFormula: string;
|
|
1303
|
-
} | null;
|
|
1304
|
-
|
|
1305
|
-
/** Шаблон процессной метрики меры с режимом CONVERSION */
|
|
1306
|
-
declare const conversionTemplate = "countIf(\n process(\n minIf(\n {startEventTimeFormula}, \n {startEventNameFormula} = '{startEventName}'{startEventFilters}\n ), \n {endCaseCaseIdFormula}\n ) < \n process(\n maxIf(\n {endEventTimeFormula}, \n {endEventNameFormula} = '{endEventName}'{endEventFilters}\n ), \n {endCaseCaseIdFormula}\n ) \n and \n process(\n countIf(\n {startEventNameFormula} = '{startEventName}'{startEventFilters}\n ) != 0, \n {endCaseCaseIdFormula}\n ) != 0\n) / countIf(\n process(\n countIf(\n {startEventNameFormula} = '{startEventName}'{startEventFilters}\n ) != 0, \n {endCaseCaseIdFormula}\n ) != 0\n)";
|
|
1307
|
-
/** На основе значения режима CONVERSION подготовить параметры для подстановки в шаблонную формулу */
|
|
1308
|
-
declare const prepareConversionParams: (value: TWidgetIndicatorConversionValue) => {
|
|
1309
|
-
objectFilters: string;
|
|
1310
|
-
startEventTimeFormula: string;
|
|
1311
|
-
startEventNameFormula: string;
|
|
1312
|
-
startEventFilters: string;
|
|
1313
|
-
startEventName: string;
|
|
1314
|
-
endEventTimeFormula: string;
|
|
1315
|
-
endCaseCaseIdFormula: string;
|
|
1316
|
-
endEventNameFormula: string;
|
|
1317
|
-
endEventName: string;
|
|
1318
|
-
endEventFilters: string;
|
|
1319
|
-
} | null;
|
|
1320
|
-
|
|
1321
|
-
declare function createAggregationTemplate(templateName: EMeasureAggregationTemplateName, { outerAggregation, anyEvent, }: Pick<TWidgetIndicatorAggregationValue, "anyEvent"> & {
|
|
1322
|
-
outerAggregation: EOuterAggregation;
|
|
1323
|
-
}): string;
|
|
1324
|
-
|
|
1325
|
-
/** Шаблоны процессных метрик меры с режимом DURATION */
|
|
1326
|
-
declare const durationTemplates: Record<EDurationTemplateName, string>;
|
|
1327
|
-
/** На основе значения режима DURATION подготовить параметры для подстановки в шаблонную формулу */
|
|
1328
|
-
declare const prepareDurationParams: (value: TWidgetIndicatorDurationValue) => {
|
|
1329
|
-
objectFilters: string;
|
|
1330
|
-
startEventTimeFormula: string;
|
|
1331
|
-
startEventNameFormula: string;
|
|
1332
|
-
startEventFilters: string;
|
|
1333
|
-
startEventName: string;
|
|
1334
|
-
startEventAggregationName: string;
|
|
1335
|
-
endEventTimeFormula: string;
|
|
1336
|
-
endCaseCaseIdFormula: string;
|
|
1337
|
-
endEventNameFormula: string;
|
|
1338
|
-
endEventName: string;
|
|
1339
|
-
endEventFilters: string;
|
|
1340
|
-
endEventAggregationName: string;
|
|
1341
|
-
} | null;
|
|
1342
|
-
|
|
1343
|
-
declare function getEventMeasureFormula({ value }: IProcessIndicator, process: IWidgetProcess): string;
|
|
1344
|
-
|
|
1345
|
-
declare enum EEventMeasureTemplateNames {
|
|
1346
|
-
eventsCount = "eventsCount",
|
|
1347
|
-
reworksCount = "reworksCount"
|
|
1348
|
-
}
|
|
1349
|
-
declare const eventMeasureTemplateFormulas: {
|
|
1350
|
-
readonly eventsCount: "count()";
|
|
1351
|
-
readonly reworksCount: "count() - uniqExact({caseCaseIdFormula})";
|
|
1352
|
-
};
|
|
1353
|
-
|
|
1354
|
-
declare function getTransitionMeasureFormula({ value }: IProcessIndicator, process: IWidgetProcess): string;
|
|
1355
|
-
|
|
1356
|
-
declare enum ETransitionMeasureTemplateNames {
|
|
1357
|
-
transitionsCount = "transitionsCount",
|
|
1358
|
-
medianTime = "medianTime"
|
|
1359
|
-
}
|
|
1360
|
-
declare const transitionMeasureTemplateFormulas: {
|
|
1361
|
-
readonly transitionsCount: "count()";
|
|
1362
|
-
readonly medianTime: "medianExact(date_diff(second, begin({eventTimeFormula}), end({eventTimeFormula})))";
|
|
1363
|
-
};
|
|
1364
|
-
|
|
1365
|
-
declare const countExecutionsTemplate = "process(countIf({eventNameFormula} in '{eventName}'{filters}), {caseCaseIdFormula})";
|
|
1366
|
-
|
|
1367
|
-
declare function fillTemplateString(templateString: string, params: Record<string, any>): string;
|
|
1368
|
-
|
|
1369
|
-
declare function generateColumnFormula(tableName: string, columnName: string): string;
|
|
1370
|
-
|
|
1371
|
-
/**
|
|
1372
|
-
* Регулярное выражение для поиска имени ссылки внутри формулы.
|
|
1373
|
-
* Учитывает, что имя внутри формулы содержит экраны.
|
|
1374
|
-
*
|
|
1375
|
-
* Принцип работы:
|
|
1376
|
-
* Пробовать следующие вхождения:
|
|
1377
|
-
* - \\\\ - экранированный символ обратного слэша.
|
|
1378
|
-
* - Иначе \\" - экранированный символ кавычки.
|
|
1379
|
-
* - Иначе [^"] - любой символ кроме кавычки.
|
|
1380
|
-
* Если встречается любой другой символ, то это закрывающая кавычка имени переменной.
|
|
1381
|
-
*/
|
|
1382
|
-
declare const linkNameRegExp = "(?:\\\\\\\\|\\\\\"|[^\"])+";
|
|
1383
|
-
declare const dashboardLinkRegExp: RegExp;
|
|
1384
|
-
declare const workspaceLinkRegExp: RegExp;
|
|
1385
|
-
interface IIndicatorLink {
|
|
1386
|
-
/** string - имя группы пространства, null - используется текущий отчет */
|
|
1387
|
-
scopeName: string | null;
|
|
1388
|
-
indicatorName: string;
|
|
1389
|
-
}
|
|
1390
|
-
declare const parseIndicatorLink: (formula: string) => IIndicatorLink | null;
|
|
1391
|
-
|
|
1392
1409
|
type THintPlacement = "top" | "left" | "right" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom";
|
|
1393
1410
|
declare enum EControlType {
|
|
1394
1411
|
/** Ввод текста */
|
|
1395
1412
|
input = "input",
|
|
1413
|
+
/** Ввод текста с поддержкой шаблонной вставки сущностей */
|
|
1414
|
+
inputTemplate = "inputTemplate",
|
|
1396
1415
|
/** Ввод текста в формате markdown */
|
|
1397
1416
|
inputMarkdown = "inputMarkdown",
|
|
1398
1417
|
/** Ввод числа */
|
|
@@ -1435,6 +1454,7 @@ declare enum EControlType {
|
|
|
1435
1454
|
}
|
|
1436
1455
|
type ControlsMap = {
|
|
1437
1456
|
[EControlType.input]: IInputControl;
|
|
1457
|
+
[EControlType.inputTemplate]: IInputTemplatedControl;
|
|
1438
1458
|
[EControlType.inputMarkdown]: IInputMarkdownControl;
|
|
1439
1459
|
[EControlType.inputNumber]: IInputNumberControl;
|
|
1440
1460
|
[EControlType.inputRange]: IInputRangeControl;
|
|
@@ -1534,7 +1554,6 @@ interface IInputControl {
|
|
|
1534
1554
|
type: EControlType.input;
|
|
1535
1555
|
value: string;
|
|
1536
1556
|
props: {
|
|
1537
|
-
isBordered?: boolean;
|
|
1538
1557
|
placeholder?: string;
|
|
1539
1558
|
/** Максимальное количество символов которое можно ввести в поле */
|
|
1540
1559
|
maxLength?: number;
|
|
@@ -1548,6 +1567,11 @@ interface IInputControl {
|
|
|
1548
1567
|
hintPlacement?: THintPlacement;
|
|
1549
1568
|
};
|
|
1550
1569
|
}
|
|
1570
|
+
interface IInputTemplatedControl {
|
|
1571
|
+
type: EControlType.inputTemplate;
|
|
1572
|
+
value: string;
|
|
1573
|
+
props: {};
|
|
1574
|
+
}
|
|
1551
1575
|
interface IInputMarkdownControl {
|
|
1552
1576
|
type: EControlType.inputMarkdown;
|
|
1553
1577
|
value: string;
|
|
@@ -1663,9 +1687,10 @@ interface IFormulaControl {
|
|
|
1663
1687
|
dbDataType: string | undefined;
|
|
1664
1688
|
};
|
|
1665
1689
|
props: {
|
|
1666
|
-
showModeToggle?: boolean;
|
|
1667
1690
|
indicatorConfig?: ({
|
|
1668
1691
|
type: "measure";
|
|
1692
|
+
templates?: TWidgetMeasureData["templates"];
|
|
1693
|
+
innerTemplateNames?: EMeasureInnerTemplateNames[];
|
|
1669
1694
|
} & {
|
|
1670
1695
|
/** @deprecated временное решение для виджета "Воронка", не следует использовать [BI-14710] */
|
|
1671
1696
|
allowClear?: boolean;
|
|
@@ -1677,9 +1702,12 @@ interface IFormulaControl {
|
|
|
1677
1702
|
options?: TMeasureAddButtonSelectOption[];
|
|
1678
1703
|
}) | {
|
|
1679
1704
|
type: "dimension";
|
|
1680
|
-
templates?:
|
|
1705
|
+
templates?: TWidgetDimensionData["templates"];
|
|
1706
|
+
processTimeTemplates?: TWidgetDimensionData["processTimeTemplates"];
|
|
1681
1707
|
};
|
|
1682
1708
|
disabled?: boolean;
|
|
1709
|
+
/** Ключи процессов для фильтрации таблиц, доступных для выбора */
|
|
1710
|
+
processKeys?: Iterable<string>;
|
|
1683
1711
|
titleModal?: string;
|
|
1684
1712
|
};
|
|
1685
1713
|
}
|
|
@@ -1697,9 +1725,14 @@ interface ITypedFormulaControl {
|
|
|
1697
1725
|
interface IFormattingControl {
|
|
1698
1726
|
type: EControlType.formatting;
|
|
1699
1727
|
value: {
|
|
1700
|
-
format:
|
|
1701
|
-
|
|
1702
|
-
|
|
1728
|
+
format: {
|
|
1729
|
+
value?: EFormatTypes;
|
|
1730
|
+
mode: EFormatOrFormattingMode;
|
|
1731
|
+
};
|
|
1732
|
+
formatting: {
|
|
1733
|
+
value?: EFormattingPresets;
|
|
1734
|
+
mode: EFormatOrFormattingMode;
|
|
1735
|
+
};
|
|
1703
1736
|
};
|
|
1704
1737
|
props: {
|
|
1705
1738
|
formats?: Partial<Record<ESimpleDataType, EFormatTypes[]>>;
|
|
@@ -1732,6 +1765,8 @@ interface IFilterControl {
|
|
|
1732
1765
|
value: TExtendedFormulaFilterValue[];
|
|
1733
1766
|
props: {
|
|
1734
1767
|
buttonTitle?: string;
|
|
1768
|
+
/** Ключи процессов для фильтрации таблиц, доступных для выбора */
|
|
1769
|
+
processKeys?: Iterable<string>;
|
|
1735
1770
|
};
|
|
1736
1771
|
}
|
|
1737
1772
|
interface IDisplayConditionControl {
|
|
@@ -1740,6 +1775,7 @@ interface IDisplayConditionControl {
|
|
|
1740
1775
|
props: {
|
|
1741
1776
|
isInMeasure?: boolean;
|
|
1742
1777
|
labelFontSize?: number;
|
|
1778
|
+
modes?: EDisplayConditionMode[];
|
|
1743
1779
|
};
|
|
1744
1780
|
}
|
|
1745
1781
|
interface IColorPickerControl {
|
|
@@ -1877,8 +1913,6 @@ interface IEdge extends IGraphElement {
|
|
|
1877
1913
|
endName: string | null;
|
|
1878
1914
|
}
|
|
1879
1915
|
interface IProcessGraphCalculatorInput {
|
|
1880
|
-
/** @deprecated необходимо использовать processKey */
|
|
1881
|
-
processName?: string;
|
|
1882
1916
|
processKey: string;
|
|
1883
1917
|
vertexLimit: number | null;
|
|
1884
1918
|
edgeLimit: number;
|
|
@@ -1960,6 +1994,8 @@ interface ITypeCalculator extends ICalculator<ITypeCalculatorInput, ITypeCalcula
|
|
|
1960
1994
|
|
|
1961
1995
|
declare const prepareValuesForSql: (simpleType: ESimpleDataType, values: (string | null)[]) => (string | null)[];
|
|
1962
1996
|
|
|
1997
|
+
declare const mapSettingsFiltersToInputs: (filters: TSettingsFilter[]) => ICalculatorFilter[];
|
|
1998
|
+
|
|
1963
1999
|
declare function checkDisplayCondition(displayCondition: TNullable<TDisplayCondition>, variables: Map<string, TWidgetVariable>): boolean;
|
|
1964
2000
|
declare function getDisplayConditionFormula(displayCondition: TNullable<TDisplayCondition>): TNullable<string>;
|
|
1965
2001
|
declare const replaceDisplayCondition: <I extends IWidgetColumnIndicator>(dimension: I, displayCondition: TNullable<TDisplayCondition>) => TNullable<I>;
|
|
@@ -2031,13 +2067,8 @@ declare function bindContentWithIndicator<Output extends ICalculatorIndicatorOut
|
|
|
2031
2067
|
*/
|
|
2032
2068
|
declare function bindContentsWithIndicators<Output extends ICalculatorIndicatorOutput, Indicator extends IWidgetIndicator>(outputs: Map<string, Output>, indicators: Indicator[]): TBoundedContentWithIndicator<Output, Indicator>[];
|
|
2033
2069
|
|
|
2034
|
-
/**
|
|
2035
|
-
|
|
2036
|
-
* Пример: Если название переменной содержит кавычки или обратные слеши,
|
|
2037
|
-
* например: `te"s\t`, то перед подстановкой в SQL-формулу его следует экранировать.
|
|
2038
|
-
* Результат должен выглядеть так: `"inputs"."te\"s\\t"`
|
|
2039
|
-
*/
|
|
2040
|
-
declare const escapeSpecialCharacters: (value: string) => string;
|
|
2070
|
+
/** Создать функцию экранирования переданных `specialChars` внутри `str` */
|
|
2071
|
+
declare const createEscaper: (specialChars: string[]) => (str: string) => string;
|
|
2041
2072
|
|
|
2042
2073
|
/** Удалить из строки символы экранирования */
|
|
2043
2074
|
declare function unescapeSpecialCharacters(str: string): string;
|
|
@@ -2220,7 +2251,10 @@ interface IInitialSettings extends Record<string, any> {
|
|
|
2220
2251
|
/** Кнопка добавления группы в набор */
|
|
2221
2252
|
type TAddButton = {
|
|
2222
2253
|
title: string;
|
|
2223
|
-
props?: ICustomAddButtonProps | IMeasureAddButtonProps | ISortingAddButtonProps
|
|
2254
|
+
props?: (ICustomAddButtonProps | IMeasureAddButtonProps | ISortingAddButtonProps) & {
|
|
2255
|
+
/** Ключи процессов для фильтрации таблиц, доступных для выбора */
|
|
2256
|
+
processKeys?: Iterable<string>;
|
|
2257
|
+
};
|
|
2224
2258
|
/**
|
|
2225
2259
|
* Начальные настройки, которые получит показатель при создании через кнопку добавления.
|
|
2226
2260
|
* Возможность не поддерживается для иерархии разрезов.
|
|
@@ -2237,16 +2271,25 @@ type TWidgetDimensionData = {
|
|
|
2237
2271
|
type: EWidgetIndicatorType.DIMENSION;
|
|
2238
2272
|
/** Обобщенные типы данных, поддерживаемые разрезом */
|
|
2239
2273
|
simpleTypes?: ESimpleDataType[];
|
|
2240
|
-
/**
|
|
2241
|
-
|
|
2242
|
-
|
|
2243
|
-
|
|
2274
|
+
/**
|
|
2275
|
+
* Шаблоны формул, доступные к выбору шаблоны на основе колонок (по типу колонки)
|
|
2276
|
+
* Фильтрация применяется только для указанных типов колонки
|
|
2277
|
+
*/
|
|
2278
|
+
templates?: Partial<Record<ESimpleDataType, (EDimensionTemplateNames | EDimensionAggregationTemplateName)[]>>;
|
|
2279
|
+
/**
|
|
2280
|
+
* Шаблоны формул, доступные к выбору в процессных разрезах по времени
|
|
2281
|
+
*/
|
|
2282
|
+
processTimeTemplates?: EDimensionTemplateNames[];
|
|
2283
|
+
/** Переопределение доступных форматов */
|
|
2284
|
+
formats?: Partial<Record<ESimpleDataType, EFormatTypes[]>>;
|
|
2244
2285
|
};
|
|
2245
2286
|
/** Конфигурация меры */
|
|
2246
2287
|
type TWidgetMeasureData = {
|
|
2247
2288
|
type: EWidgetIndicatorType.MEASURE;
|
|
2248
|
-
/** Переопределение доступных форматов
|
|
2249
|
-
formats?: Record<ESimpleDataType, EFormatTypes[]
|
|
2289
|
+
/** Переопределение доступных форматов */
|
|
2290
|
+
formats?: Partial<Record<ESimpleDataType, EFormatTypes[]>>;
|
|
2291
|
+
/** Шаблоны формул, доступные для выбора в мере */
|
|
2292
|
+
templates?: Partial<Record<ESimpleDataType, EMeasureTemplateNames[]>>;
|
|
2250
2293
|
};
|
|
2251
2294
|
/** Конфигурация показателя */
|
|
2252
2295
|
type TWidgetIndicatorData = TWidgetDimensionData | TWidgetMeasureData;
|
|
@@ -2337,10 +2380,6 @@ interface IWidgetProcess {
|
|
|
2337
2380
|
caseCaseIdFormula: string;
|
|
2338
2381
|
/** Имя колонки CaseId события */
|
|
2339
2382
|
eventCaseIdColumnName: string;
|
|
2340
|
-
/** Тип данных CaseId */
|
|
2341
|
-
caseIdDbDataType: string;
|
|
2342
|
-
/** Тип данных времени события */
|
|
2343
|
-
eventTimeDbDataType: string;
|
|
2344
2383
|
/** Является ли процесс валидным */
|
|
2345
2384
|
isValid: boolean;
|
|
2346
2385
|
}
|
|
@@ -2495,7 +2534,7 @@ type TContextMenuButtonOptions = {
|
|
|
2495
2534
|
|
|
2496
2535
|
/** Контекст с данными образа (будет заполняться по мере необходимости) */
|
|
2497
2536
|
interface IViewContext {
|
|
2498
|
-
filters:
|
|
2537
|
+
filters: TSettingsFilter[];
|
|
2499
2538
|
}
|
|
2500
2539
|
|
|
2501
2540
|
type TLaunchActionParams = {
|
|
@@ -2671,12 +2710,6 @@ interface IWidgetEntity<WidgetSettings extends IBaseWidgetSettings, GroupSetting
|
|
|
2671
2710
|
definition: IDefinition<WidgetSettings, GroupSettings>;
|
|
2672
2711
|
}
|
|
2673
2712
|
|
|
2674
|
-
type SystemWidgetExternals = {
|
|
2675
|
-
react: "React";
|
|
2676
|
-
"react-dom": "ReactDOM";
|
|
2677
|
-
"react-dom/client": "ReactDOMClient";
|
|
2678
|
-
};
|
|
2679
|
-
|
|
2680
2713
|
interface IDimensionSelection {
|
|
2681
2714
|
values: Set<string | null>;
|
|
2682
2715
|
replacedFilter: ICalculatorFilter | null;
|
|
@@ -2686,8 +2719,6 @@ interface IDimensionSelectionByFormula extends Map<string, IDimensionSelection>
|
|
|
2686
2719
|
type TUpdateSelection = (selection: IDimensionSelectionByFormula, formula: string, value: string, filters: ICalculatorFilter[]) => void;
|
|
2687
2720
|
declare const updateDefaultModeSelection: TUpdateSelection;
|
|
2688
2721
|
declare const updateSingleModeSelection: TUpdateSelection;
|
|
2689
|
-
/** @deprecated Отказ от режима фильтрации "Множественный выбор"*/
|
|
2690
|
-
declare const updateMultiModeSelection: TUpdateSelection;
|
|
2691
2722
|
declare const replaceFiltersBySelection: (filters: ICalculatorFilter[], selection: IDimensionSelectionByFormula) => ICalculatorFilter[];
|
|
2692
2723
|
|
|
2693
2724
|
/**
|
|
@@ -2742,4 +2773,4 @@ declare global {
|
|
|
2742
2773
|
}
|
|
2743
2774
|
}
|
|
2744
2775
|
|
|
2745
|
-
export { EActionButtonsTypes, EActionTypes, EActivateConditionMode, EAutoUpdateMode, ECalculatorFilterMethods, EClickHouseBaseTypes, EColorMode, EControlType, ECustomSelectTemplates, EDataModelOption, EDimensionAggregationTemplateName, EDimensionTemplateNames, EDisplayConditionMode, EDrawerPlacement, EDurationTemplateName, EDurationUnit, EEventAppearances, EEventMeasureTemplateNames, EFontWeight, EFormatTypes, EFormattingPresets, EFormulaFilterFieldKeys, EIndicatorType, ELastTimeUnit, EMarkdownDisplayMode, EMeasureAggregationTemplateName, EMeasureTemplateNames, EOuterAggregation, EProcessFilterNames, ESelectOptionTypes, ESimpleDataType, ESimpleInputType, ESortDirection, ESortingValueModes, ESystemRecordKey, ETransitionMeasureTemplateNames, EUnitMode, EViewMode, EViewOpenIn, EWidgetActionInputMethod, EWidgetFilterMode, EWidgetIndicatorType, EWidgetIndicatorValueModes, type IActionButton, type IActionGoToUrl, type IActionOnClickControl, type IActionRunScript, type IActionScript, type IActionUpdateVariable, type IAddButtonSelectOption, type IAddDurationOfTransitionFilter, type IAddPresenceOfEventFilter, type IAddPresenceOfTransitionFilter, type IAddRepetitionOfEventFilter, type IAutoIdentifiedArrayItem, type IBaseDimensionsAndMeasuresCalculator, type IBaseDimensionsAndMeasuresCalculatorInput, type IBaseDimensionsAndMeasuresCalculatorOutput, type IBaseWidgetSettings, type ICalculator, type ICalculatorDimensionInput, type ICalculatorDimensionOutput, type ICalculatorFactory, type ICalculatorFilter, type ICalculatorIndicatorInput, type ICalculatorIndicatorOutput, type ICalculatorMeasureInput, type ICalculatorMeasureOutput, type ICalculatorOptions, type ICollapseRecord, type IColorPickerControl, type IColoredValue, type ICommonDimensions, type ICommonMeasures, type ICommonState, type IControlRecord, type ICustomAddButtonProps, type ICustomWidgetProps, type IDefinition, type IDimensionSelection, type IDimensionSelectionByFormula, type IDisplayConditionControl, type IDisplayPredicate, type IDisplayRule, type IDivePanelDescription, type IDividerRecord, type IEdge, type IEventsColorControl, type IEventsPickerControl, type IExportColumnOrder, type IFillSettings, type IFilterControl, type IFormattingControl, type IFormattingTemplateControl, type IFormulaControl, type IFormulaFilterValue, type IGeneralCalculator, type IGeneralCalculatorExportInput, type IGeneralCalculatorInput, type IGeneralCalculatorOutput, type IGlobalContext, type IGraphElement, type IGroupSetDescription, type IGroupSetRecord, type IGroupSettings, type IHistogramBin, type IHistogramCalculator, type IHistogramCalculatorInput, type IHistogramCalculatorOutput, type IIndicatorLink, type IInitialSettings, type IInputControl, type IInputMarkdownControl, type IInputNumberControl, type IInputRangeControl, type ILens, type IMarkdownMeasure, type IMeasureAddButtonProps, type IPanelDescription, type IPanelDescriptionCreator, type IParameterColumnList, type IParameterFromAggregation, type IParameterFromColumn, type IParameterFromDynamicList, type IParameterFromEndEvent, type IParameterFromEvent, type IParameterFromFormula, type IParameterFromManualInput, type IParameterFromStartEvent, type IParameterFromStaticList, type IParameterFromVariable, type IParameterTableList, type IPieCalculator, type IPieCalculatorInput, type IPieCalculatorOutput, type IProcessEventFilterValue, type IProcessEventIndicator, type IProcessFilterPreviewParams, type IProcessGraphCalculator, type IProcessGraphCalculatorInput, type IProcessGraphCalculatorOutput, type IProcessIndicator, type IProcessTransitionFilterValue, type IProcessTransitionIndicator, type IRadioIconGroupControl, type IRange, type ISelectBranchOption, type ISelectControl, type ISelectDividerOption, type ISelectGroupOption, type ISelectLeafOption, type ISelectNode, type ISelectOption, type ISelectSystemOption, type ISettingsMigratorParams, type ISizeControl, type ISortOrder, type ISortingAddButtonProps, type IStagesFilterValue, type IStaticListLabeledOption, type ISwitchControl, type ITagSetControl, type ITwoLimitsCalculator, type ITwoLimitsCalculatorExportInput, type ITwoLimitsCalculatorInput, type ITwoLimitsCalculatorOutput, type ITypeCalculator, type ITypeCalculatorInput, type ITypeCalculatorOutput, type ITypeCalculatorOutputItem, type ITypedFormulaControl, type IVertex, type IViewAction, type IViewContext, type IWidget, type IWidgetAction, type IWidgetColumnIndicator, type IWidgetColumnListVariable, type IWidgetDimension, type IWidgetDimensionHierarchy, type IWidgetDynamicListVariable, type IWidgetEntity, type IWidgetFilter, type IWidgetFiltration, type IWidgetFormatting, type IWidgetIndicator, type IWidgetIndicatorAddButtonProps, type IWidgetManifest, type IWidgetMeasure, type IWidgetMigrator, type IWidgetPersistValue, type IWidgetPlaceholderController, type IWidgetPlaceholderValues, type IWidgetPresetSettings, type IWidgetProcess, type IWidgetProps, type IWidgetSortingIndicator, type IWidgetStaticListVariable, type IWidgetStaticVariable, type IWidgetStruct, type IWidgetTable, type IWidgetTableColumn, OuterAggregation, type
|
|
2776
|
+
export { EActionButtonsTypes, EActionTypes, EActivateConditionMode, EAutoUpdateMode, ECalculatorFilterMethods, EClickHouseBaseTypes, EColorMode, EControlType, ECustomSelectTemplates, EDataModelOption, EDimensionAggregationTemplateName, EDimensionProcessFilterTimeUnit, EDimensionTemplateNames, EDisplayConditionMode, EDrawerPlacement, EDurationTemplateName, EDurationUnit, EEventAppearances, EEventMeasureTemplateNames, EFontWeight, EFormatOrFormattingMode, EFormatTypes, EFormattingPresets, EFormulaFilterFieldKeys, EIndicatorType, ELastTimeUnit, EMarkdownDisplayMode, EMeasureAggregationTemplateName, EMeasureInnerTemplateNames, EMeasureTemplateNames, EOuterAggregation, EProcessFilterNames, ESelectOptionTypes, ESimpleDataType, ESimpleInputType, ESortDirection, ESortingValueModes, ESystemRecordKey, ETransitionMeasureTemplateNames, EUnitMode, EViewMode, EViewOpenIn, EWidgetActionInputMethod, EWidgetFilterMode, EWidgetIndicatorType, EWidgetIndicatorValueModes, type IActionButton, type IActionGoToUrl, type IActionOnClickControl, type IActionRunScript, type IActionScript, type IActionUpdateVariable, type IAddButtonSelectOption, type IAddDurationOfTransitionFilter, type IAddPresenceOfEventFilter, type IAddPresenceOfTransitionFilter, type IAddRepetitionOfEventFilter, type IAutoIdentifiedArrayItem, type IBaseDimensionsAndMeasuresCalculator, type IBaseDimensionsAndMeasuresCalculatorInput, type IBaseDimensionsAndMeasuresCalculatorOutput, type IBaseWidgetSettings, type ICalculator, type ICalculatorDimensionInput, type ICalculatorDimensionOutput, type ICalculatorFactory, type ICalculatorFilter, type ICalculatorIndicatorInput, type ICalculatorIndicatorOutput, type ICalculatorMeasureInput, type ICalculatorMeasureOutput, type ICalculatorOptions, type ICollapseRecord, type IColorPickerControl, type IColoredValue, type ICommonDimensions, type ICommonMeasures, type ICommonState, type IControlRecord, type ICustomAddButtonProps, type ICustomWidgetProps, type IDefinition, type IDimensionProcessFilter, type IDimensionSelection, type IDimensionSelectionByFormula, type IDisplayConditionControl, type IDisplayPredicate, type IDisplayRule, type IDivePanelDescription, type IDividerRecord, type IEdge, type IEventsColorControl, type IEventsPickerControl, type IExportColumnOrder, type IFillSettings, type IFilterControl, type IFormattingControl, type IFormattingTemplateControl, type IFormulaControl, type IFormulaFilterValue, type IGeneralCalculator, type IGeneralCalculatorExportInput, type IGeneralCalculatorInput, type IGeneralCalculatorOutput, type IGlobalContext, type IGraphElement, type IGroupSetDescription, type IGroupSetRecord, type IGroupSettings, type IHistogramBin, type IHistogramCalculator, type IHistogramCalculatorInput, type IHistogramCalculatorOutput, type IIndicatorLink, type IInitialSettings, type IInputControl, type IInputMarkdownControl, type IInputNumberControl, type IInputRangeControl, type IInputTemplatedControl, type ILens, type IMarkdownMeasure, type IMeasureAddButtonProps, type IPanelDescription, type IPanelDescriptionCreator, type IParameterColumnList, type IParameterFromAggregation, type IParameterFromColumn, type IParameterFromDynamicList, type IParameterFromEndEvent, type IParameterFromEvent, type IParameterFromFormula, type IParameterFromManualInput, type IParameterFromStartEvent, type IParameterFromStaticList, type IParameterFromVariable, type IParameterTableList, type IPieCalculator, type IPieCalculatorInput, type IPieCalculatorOutput, type IProcessEventFilterValue, type IProcessEventIndicator, type IProcessFilterPreviewParams, type IProcessGraphCalculator, type IProcessGraphCalculatorInput, type IProcessGraphCalculatorOutput, type IProcessIndicator, type IProcessTransitionFilterValue, type IProcessTransitionIndicator, type IRadioIconGroupControl, type IRange, type ISelectBranchOption, type ISelectControl, type ISelectDividerOption, type ISelectGroupOption, type ISelectLeafOption, type ISelectNode, type ISelectOption, type ISelectSystemOption, type ISettingsMigratorParams, type ISizeControl, type ISortOrder, type ISortingAddButtonProps, type IStagesFilterValue, type IStaticListLabeledOption, type ISwitchControl, type ITagSetControl, type ITwoLimitsCalculator, type ITwoLimitsCalculatorExportInput, type ITwoLimitsCalculatorInput, type ITwoLimitsCalculatorOutput, type ITypeCalculator, type ITypeCalculatorInput, type ITypeCalculatorOutput, type ITypeCalculatorOutputItem, type ITypedFormulaControl, type IVertex, type IViewAction, type IViewContext, type IWidget, type IWidgetAction, type IWidgetColumnIndicator, type IWidgetColumnListVariable, type IWidgetDimension, type IWidgetDimensionHierarchy, type IWidgetDynamicListVariable, type IWidgetEntity, type IWidgetFilter, type IWidgetFiltration, type IWidgetFormatting, type IWidgetIndicator, type IWidgetIndicatorAddButtonProps, type IWidgetManifest, type IWidgetMeasure, type IWidgetMigrator, type IWidgetPersistValue, type IWidgetPlaceholderController, type IWidgetPlaceholderValues, type IWidgetPresetSettings, type IWidgetProcess, type IWidgetProps, type IWidgetSortingIndicator, type IWidgetStaticListVariable, type IWidgetStaticVariable, type IWidgetStruct, type IWidgetTable, type IWidgetTableColumn, OuterAggregation, type TAction, type TActionOnClickParameter, type TActionOpenView, type TActionValidator, type TActionsOnClick, type TAddButton, type TBoundedContentWithIndicator, type TColor, type TColorBase, type TColorRule, type TColumnIndicatorValue, type TContextMenu, type TContextMenuButton, type TContextMenuButtonActions, type TContextMenuButtonApply, type TContextMenuButtonClose, type TContextMenuButtonCustom, type TContextMenuButtonGroup, type TContextMenuButtonOptions, type TContextMenuList, type TContextMenuPositionUnit, type TContextMenuRow, type TControlUnion, type TCustomAddButtonSelectOption, type TDefineWidgetOptions, type TDimensionValue, type TDisplayCondition, type TDisplayMode, type TEmptyRecord, type TExtendedFormulaFilterValue, type TFiltrationAccessibility, type TGroupLevelRecord, type THintPlacement, type TLaunchActionParams, type TMeasureAddButtonSelectOption, type TMeasureValue, type TMigrateProcessor, type TMigrationStruct, type TParameterFromDataModel, type TProcessIndicatorValue, type TRecordAccessor, type TSelectChildOptions, type TSelectFetchNodes, type TSelectivePartial, type TSettingsFilter, type TSortDirection, type TUpdateSelection, type TValuePath, type TVersion, type TViewActionParameter, type TWidgetActionParameter, type TWidgetContainer, type TWidgetDimensionData, type TWidgetFilterValue, type TWidgetFiltering, type TWidgetIndicatorAggregationValue, type TWidgetIndicatorConversionValue, type TWidgetIndicatorDurationValue, type TWidgetIndicatorFormulaValue, type TWidgetIndicatorTemplateValue, type TWidgetIndicatorTimeValue, type TWidgetLevelRecord, type TWidgetMeasureData, type TWidgetSortingValue, type TWidgetVariable, applyIndexToArrayFormula, bindContentWithIndicator, bindContentsWithIndicators, checkDisplayCondition, clearMultiLineComments, clearSingleLineComments, colors, conversionTemplate, convertFiltersToFormula, convertToFormulasChain, countExecutionsTemplate, createEscaper, createAggregationTemplate as createMeasureAggregationTemplate, curlyBracketsContentPattern, dashboardLinkRegExp, dimensionAggregationTemplates, dimensionTemplateFormulas, displayConditionTemplate, doubleQuoteContentPattern, durationTemplates, escapeCurlyBracketLinkName, escapeDoubleQuoteLinkName, eventMeasureTemplateFormulas, fillTemplateSql, fillTemplateString, formattingConfig, formulaFilterMethods, generateColumnFormula, getColorByIndex, getDefaultSortOrders, getDimensionFormula, getDisplayConditionFormula, getEventMeasureFormula, getLocalizedText, getMeasureFormula, getProcessDimensionValueFormula, getRuleColor, getTransitionMeasureFormula, isDimensionProcessFilter, isDimensionsHierarchy, isFormulaFilterValue, isValidColor, mapDimensionsToInputs, mapEventMeasuresToInputs, mapFormulaFilterToCalculatorInput, mapFormulaFiltersToInputs, mapMeasuresToInputs, mapSettingsFiltersToInputs, mapSortingToInputs, mapTransitionMeasuresToInputs, measureInnerTemplateFormulas, measureTemplateFormulas, parseClickHouseType, parseIndicatorLink, prepareConversionParams, prepareDimensionAggregationParams, prepareDurationParams, prepareFormulaForSql, prepareMeasureAggregationParams, prepareSortOrders, prepareTimeParams, prepareValuesForSql, replaceDisplayCondition, replaceFiltersBySelection, replaceHierarchiesWithDimensions, selectDimensionFromHierarchy, timeTemplates, transitionMeasureTemplateFormulas, unescapeSpecialCharacters, updateDefaultModeSelection, updateSingleModeSelection, workspaceLinkRegExp };
|