@infomaximum/widget-sdk 6.0.0-view-theme.5 → 6.0.0-view-theme.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -64,6 +64,40 @@ var EActionButtonsTypes;
64
64
  EActionButtonsTypes["SECONDARY"] = "primary-outlined";
65
65
  })(EActionButtonsTypes || (EActionButtonsTypes = {}));
66
66
 
67
+ var id = 1;
68
+ var AutoIdentifiedArrayItemSchema = function (z) {
69
+ return z.object({
70
+ /**
71
+ * Идентификатор, добавляемый системой "на лету" для удобства разработки, не сохраняется на сервер.
72
+ * Гарантируется уникальность id в пределах settings виджета.
73
+ */
74
+ id: z
75
+ .number()
76
+ .default(-1)
77
+ .transform(function (currentId) { return (currentId === -1 ? id++ : currentId); }),
78
+ });
79
+ };
80
+ var BaseWidgetSettingsSchema = function (z) {
81
+ return z.object({
82
+ title: z.string().optional(),
83
+ titleSize: z.number().optional(),
84
+ titleColor: ColorSchema(z).optional(),
85
+ titleWeight: z.enum(EFontWeight).optional(),
86
+ stateName: z.string().nullable().optional(),
87
+ showMarkdown: z.boolean().optional(),
88
+ markdownMeasures: z.array(MarkdownMeasureSchema(z)).optional(),
89
+ markdownText: z.string().optional(),
90
+ markdownTextSize: z.number().optional(),
91
+ filters: z.array(SettingsFilterSchema(z)).optional(),
92
+ filterMode: z.enum(EWidgetFilterMode).optional(),
93
+ ignoreFilters: z.boolean().optional(),
94
+ sorting: z.array(WidgetSortingIndicatorSchema(z)).optional(),
95
+ actionButtons: z.array(ActionButtonSchema(z)).optional(),
96
+ paddings: z.union([z.number(), z.string()]).optional(),
97
+ viewTheme: z.boolean().optional(),
98
+ });
99
+ };
100
+
67
101
  var ESimpleDataType;
68
102
  (function (ESimpleDataType) {
69
103
  ESimpleDataType["OTHER"] = "OTHER";
@@ -76,285 +110,6 @@ var ESimpleDataType;
76
110
  ESimpleDataType["BOOLEAN"] = "BOOLEAN";
77
111
  })(ESimpleDataType || (ESimpleDataType = {}));
78
112
 
79
- var prepareValuesForSql = function (simpleType, values) {
80
- return simpleType === ESimpleDataType.INTEGER ||
81
- simpleType === ESimpleDataType.FLOAT ||
82
- simpleType === ESimpleDataType.BOOLEAN
83
- ? values
84
- : values.map(function (value) {
85
- return value === null ? null : "'".concat(escapeSingularQuotes$1(escapeReverseSlash(value)), "'");
86
- });
87
- };
88
- var escapeReverseSlash = function (formula) {
89
- return formula.replaceAll(/\\/gm, "\\\\");
90
- };
91
- var escapeSingularQuotes$1 = function (formula) {
92
- return formula.replaceAll("'", "\\'");
93
- };
94
-
95
- /******************************************************************************
96
- Copyright (c) Microsoft Corporation.
97
-
98
- Permission to use, copy, modify, and/or distribute this software for any
99
- purpose with or without fee is hereby granted.
100
-
101
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
102
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
103
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
104
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
105
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
106
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
107
- PERFORMANCE OF THIS SOFTWARE.
108
- ***************************************************************************** */
109
- /* global Reflect, Promise, SuppressedError, Symbol */
110
-
111
-
112
- var __assign = function() {
113
- __assign = Object.assign || function __assign(t) {
114
- for (var s, i = 1, n = arguments.length; i < n; i++) {
115
- s = arguments[i];
116
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
117
- }
118
- return t;
119
- };
120
- return __assign.apply(this, arguments);
121
- };
122
-
123
- function __rest(s, e) {
124
- var t = {};
125
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
126
- t[p] = s[p];
127
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
128
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
129
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
130
- t[p[i]] = s[p[i]];
131
- }
132
- return t;
133
- }
134
-
135
- function __values(o) {
136
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
137
- if (m) return m.call(o);
138
- if (o && typeof o.length === "number") return {
139
- next: function () {
140
- if (o && i >= o.length) o = void 0;
141
- return { value: o && o[i++], done: !o };
142
- }
143
- };
144
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
145
- }
146
-
147
- function __read(o, n) {
148
- var m = typeof Symbol === "function" && o[Symbol.iterator];
149
- if (!m) return o;
150
- var i = m.call(o), r, ar = [], e;
151
- try {
152
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
153
- }
154
- catch (error) { e = { error: error }; }
155
- finally {
156
- try {
157
- if (r && !r.done && (m = i["return"])) m.call(i);
158
- }
159
- finally { if (e) throw e.error; }
160
- }
161
- return ar;
162
- }
163
-
164
- function __makeTemplateObject(cooked, raw) {
165
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
166
- return cooked;
167
- }
168
- typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
169
- var e = new Error(message);
170
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
171
- };
172
-
173
- var ECalculatorFilterMethods;
174
- (function (ECalculatorFilterMethods) {
175
- ECalculatorFilterMethods["EQUAL_TO"] = "EQUAL_TO";
176
- ECalculatorFilterMethods["NOT_EQUAL_TO"] = "NOT_EQUAL_TO";
177
- ECalculatorFilterMethods["GREATER_THAN"] = "GREATER_THAN";
178
- ECalculatorFilterMethods["LESS_THAN"] = "LESS_THAN";
179
- ECalculatorFilterMethods["GREATER_THAN_OR_EQUAL_TO"] = "GREATER_THAN_OR_EQUAL_TO";
180
- ECalculatorFilterMethods["LESS_THAN_OR_EQUAL_TO"] = "LESS_THAN_OR_EQUAL_TO";
181
- ECalculatorFilterMethods["STARTS_WITH"] = "STARTS_WITH";
182
- ECalculatorFilterMethods["ENDS_WITH"] = "ENDS_WITH";
183
- ECalculatorFilterMethods["CONTAINS"] = "CONTAINS";
184
- ECalculatorFilterMethods["NOT_CONTAINS"] = "NOT_CONTAINS";
185
- ECalculatorFilterMethods["IN_RANGE"] = "IN_RANGE";
186
- ECalculatorFilterMethods["NOT_IN_RANGE"] = "NOT_IN_RANGE";
187
- ECalculatorFilterMethods["INCLUDE"] = "INCLUDE";
188
- ECalculatorFilterMethods["EXCLUDE"] = "EXCLUDE";
189
- ECalculatorFilterMethods["NONEMPTY"] = "NONEMPTY";
190
- ECalculatorFilterMethods["EMPTY"] = "EMPTY";
191
- })(ECalculatorFilterMethods || (ECalculatorFilterMethods = {}));
192
-
193
- var formulaFilterMethods = __assign(__assign({}, ECalculatorFilterMethods), { LAST_TIME: "LAST_TIME" });
194
- var EProcessFilterNames;
195
- (function (EProcessFilterNames) {
196
- /** Наличие события */
197
- EProcessFilterNames["presenceOfEvent"] = "presenceOfEvent";
198
- /** Количество повторов события */
199
- EProcessFilterNames["repetitionOfEvent"] = "repetitionOfEvent";
200
- /** Наличие перехода */
201
- EProcessFilterNames["presenceOfTransition"] = "presenceOfTransition";
202
- /** Длительность перехода */
203
- EProcessFilterNames["durationOfTransition"] = "durationOfTransition";
204
- })(EProcessFilterNames || (EProcessFilterNames = {}));
205
- var EFormulaFilterFieldKeys;
206
- (function (EFormulaFilterFieldKeys) {
207
- EFormulaFilterFieldKeys["date"] = "date";
208
- EFormulaFilterFieldKeys["dateRange"] = "dateRange";
209
- EFormulaFilterFieldKeys["numberRange"] = "numberRange";
210
- EFormulaFilterFieldKeys["string"] = "string";
211
- EFormulaFilterFieldKeys["lastTimeValue"] = "lastTimeValue";
212
- EFormulaFilterFieldKeys["lastTimeUnit"] = "lastTimeUnit";
213
- EFormulaFilterFieldKeys["durationUnit"] = "durationUnit";
214
- })(EFormulaFilterFieldKeys || (EFormulaFilterFieldKeys = {}));
215
- var EDimensionProcessFilterTimeUnit;
216
- (function (EDimensionProcessFilterTimeUnit) {
217
- EDimensionProcessFilterTimeUnit["YEARS"] = "YEARS";
218
- EDimensionProcessFilterTimeUnit["MONTHS"] = "MONTHS";
219
- EDimensionProcessFilterTimeUnit["HOURS"] = "HOURS";
220
- EDimensionProcessFilterTimeUnit["DAYS"] = "DAYS";
221
- EDimensionProcessFilterTimeUnit["MINUTES"] = "MINUTES";
222
- })(EDimensionProcessFilterTimeUnit || (EDimensionProcessFilterTimeUnit = {}));
223
- var isFormulaFilterValue = function (value) {
224
- return "filteringMethod" in value;
225
- };
226
- var isDimensionProcessFilter = function (filter) { return "value" in filter && "condition" in filter; };
227
-
228
- var compact = function (items) { return ((items === null || items === void 0 ? void 0 : items.filter(Boolean)) || []); };
229
- var compactMap = function (items, f) {
230
- return compact(items === null || items === void 0 ? void 0 : items.map(f));
231
- };
232
- var isNil = function (value) {
233
- return value === null || value === undefined;
234
- };
235
- function memoize(fn) {
236
- var cache = new Map();
237
- return function (arg) {
238
- if (cache.has(arg)) {
239
- return cache.get(arg);
240
- }
241
- var result = fn(arg);
242
- cache.set(arg, result);
243
- return result;
244
- };
245
- }
246
-
247
- var EClickHouseBaseTypes;
248
- (function (EClickHouseBaseTypes) {
249
- // DATE
250
- EClickHouseBaseTypes["Date"] = "Date";
251
- EClickHouseBaseTypes["Date32"] = "Date32";
252
- // DATETIME
253
- EClickHouseBaseTypes["DateTime"] = "DateTime";
254
- EClickHouseBaseTypes["DateTime32"] = "DateTime32";
255
- // DATETIME64
256
- EClickHouseBaseTypes["DateTime64"] = "DateTime64";
257
- // STRING
258
- EClickHouseBaseTypes["FixedString"] = "FixedString";
259
- EClickHouseBaseTypes["String"] = "String";
260
- // FLOAT
261
- EClickHouseBaseTypes["Decimal"] = "Decimal";
262
- EClickHouseBaseTypes["Decimal32"] = "Decimal32";
263
- EClickHouseBaseTypes["Decimal64"] = "Decimal64";
264
- EClickHouseBaseTypes["Decimal128"] = "Decimal128";
265
- EClickHouseBaseTypes["Decimal256"] = "Decimal256";
266
- EClickHouseBaseTypes["Float32"] = "Float32";
267
- EClickHouseBaseTypes["Float64"] = "Float64";
268
- // INTEGER
269
- EClickHouseBaseTypes["Int8"] = "Int8";
270
- EClickHouseBaseTypes["Int16"] = "Int16";
271
- EClickHouseBaseTypes["Int32"] = "Int32";
272
- EClickHouseBaseTypes["Int64"] = "Int64";
273
- EClickHouseBaseTypes["Int128"] = "Int128";
274
- EClickHouseBaseTypes["Int256"] = "Int256";
275
- EClickHouseBaseTypes["UInt8"] = "UInt8";
276
- EClickHouseBaseTypes["UInt16"] = "UInt16";
277
- EClickHouseBaseTypes["UInt32"] = "UInt32";
278
- EClickHouseBaseTypes["UInt64"] = "UInt64";
279
- EClickHouseBaseTypes["UInt128"] = "UInt128";
280
- EClickHouseBaseTypes["UInt256"] = "UInt256";
281
- // BOOLEAN
282
- EClickHouseBaseTypes["Bool"] = "Bool";
283
- })(EClickHouseBaseTypes || (EClickHouseBaseTypes = {}));
284
- var stringTypes = ["String", "FixedString"];
285
- var parseClickHouseType = memoize(function (type) {
286
- if (isNil(type)) {
287
- return {
288
- simpleBaseType: ESimpleDataType.OTHER,
289
- dbBaseDataType: undefined,
290
- containers: [],
291
- simpleType: ESimpleDataType.OTHER,
292
- };
293
- }
294
- var _a = extractInnerType(type), containers = _a.containers, dbBaseDataType = _a.dbBaseDataType;
295
- if (!dbBaseDataType) {
296
- throw new Error("Invalid ClickHouse type: ".concat(type));
297
- }
298
- return {
299
- dbBaseDataType: dbBaseDataType,
300
- simpleBaseType: simplifyBaseType(dbBaseDataType),
301
- containers: containers,
302
- get simpleType() {
303
- return containers.includes("Array") ? ESimpleDataType.OTHER : this.simpleBaseType;
304
- },
305
- };
306
- });
307
- /** 'A(B(C))' -> ['A', 'B', 'C'] */
308
- var splitByBrackets = function (input) { return input.split(/[\(\)]/).filter(Boolean); };
309
- /**
310
- * Отделить внутренний тип от оберток.
311
- * Не поддерживаются обертки Tuple и LowCardinality.
312
- */
313
- var extractInnerType = function (type) {
314
- var tokens = splitByBrackets(type);
315
- // Удаление параметров типа.
316
- if (tokens.length > 0 && isTypeParameters(tokens.at(-1))) {
317
- tokens.pop();
318
- }
319
- var dbBaseDataType = tokens.pop();
320
- return { containers: tokens, dbBaseDataType: dbBaseDataType };
321
- };
322
- var simplifyBaseType = function (dbBaseType) {
323
- var isSourceTypeStartsWith = function (prefix) { return dbBaseType.startsWith(prefix); };
324
- if (isSourceTypeStartsWith("Int") || isSourceTypeStartsWith("UInt")) {
325
- return ESimpleDataType.INTEGER;
326
- }
327
- if (isSourceTypeStartsWith("Decimal") || isSourceTypeStartsWith("Float")) {
328
- return ESimpleDataType.FLOAT;
329
- }
330
- if (stringTypes.some(isSourceTypeStartsWith)) {
331
- return ESimpleDataType.STRING;
332
- }
333
- if (isSourceTypeStartsWith("DateTime64")) {
334
- return ESimpleDataType.DATETIME64;
335
- }
336
- if (isSourceTypeStartsWith("DateTime")) {
337
- return ESimpleDataType.DATETIME;
338
- }
339
- if (isSourceTypeStartsWith("Date")) {
340
- return ESimpleDataType.DATE;
341
- }
342
- if (isSourceTypeStartsWith("Bool")) {
343
- return ESimpleDataType.BOOLEAN;
344
- }
345
- return ESimpleDataType.OTHER;
346
- };
347
- /**
348
- * - `3` -> true
349
- * - `3, 'Europe/Moscow'` -> true
350
- * - `3, Europe/Moscow` -> false
351
- *
352
- * Пример типа с параметрами: `DateTime64(3, 'Europe/Moscow')`
353
- */
354
- var isTypeParameters = function (stringifiedParameters) {
355
- return stringifiedParameters.split(", ").some(function (p) { return !Number.isNaN(Number(p)) || p.startsWith("'"); });
356
- };
357
-
358
113
  var EFormatTypes;
359
114
  (function (EFormatTypes) {
360
115
  /** Дата */
@@ -648,6 +403,942 @@ var formattingConfig = {
648
403
  },
649
404
  };
650
405
 
406
+ var EWidgetIndicatorType;
407
+ (function (EWidgetIndicatorType) {
408
+ EWidgetIndicatorType["MEASURE"] = "MEASURE";
409
+ EWidgetIndicatorType["EVENT_INDICATOR"] = "EVENT_INDICATOR";
410
+ EWidgetIndicatorType["TRANSITION_INDICATOR"] = "TRANSITION_INDICATOR";
411
+ EWidgetIndicatorType["DIMENSION"] = "DIMENSION";
412
+ EWidgetIndicatorType["SORTING"] = "SORTING";
413
+ })(EWidgetIndicatorType || (EWidgetIndicatorType = {}));
414
+ var EOuterAggregation;
415
+ (function (EOuterAggregation) {
416
+ EOuterAggregation["avg"] = "avg";
417
+ EOuterAggregation["median"] = "median";
418
+ EOuterAggregation["count"] = "count";
419
+ EOuterAggregation["countDistinct"] = "countDistinct";
420
+ EOuterAggregation["min"] = "min";
421
+ EOuterAggregation["max"] = "max";
422
+ EOuterAggregation["sum"] = "sum";
423
+ EOuterAggregation["top"] = "top";
424
+ })(EOuterAggregation || (EOuterAggregation = {}));
425
+ /** Режимы значения показателя (на основе чего генерируется формула) */
426
+ var EWidgetIndicatorValueModes;
427
+ (function (EWidgetIndicatorValueModes) {
428
+ /** Готовая формула (как правило, введенная пользователем через редактор формул) */
429
+ EWidgetIndicatorValueModes["FORMULA"] = "FORMULA";
430
+ /** Шаблон формулы, предоставляемый системой */
431
+ EWidgetIndicatorValueModes["TEMPLATE"] = "TEMPLATE";
432
+ EWidgetIndicatorValueModes["AGGREGATION"] = "AGGREGATION";
433
+ EWidgetIndicatorValueModes["DURATION"] = "DURATION";
434
+ EWidgetIndicatorValueModes["CONVERSION"] = "CONVERSION";
435
+ EWidgetIndicatorValueModes["START_TIME"] = "START_TIME";
436
+ EWidgetIndicatorValueModes["END_TIME"] = "END_TIME";
437
+ })(EWidgetIndicatorValueModes || (EWidgetIndicatorValueModes = {}));
438
+ /** Режимы сортировки (на что ссылается сортировка) */
439
+ var ESortingValueModes;
440
+ (function (ESortingValueModes) {
441
+ /** Сортировка по формуле */
442
+ ESortingValueModes["FORMULA"] = "FORMULA";
443
+ /** Сортировка по показателю(разрезу или мере) виджета */
444
+ ESortingValueModes["IN_WIDGET"] = "IN_WIDGET";
445
+ })(ESortingValueModes || (ESortingValueModes = {}));
446
+ var EFormatOrFormattingMode;
447
+ (function (EFormatOrFormattingMode) {
448
+ EFormatOrFormattingMode["BASE"] = "BASE";
449
+ EFormatOrFormattingMode["TEMPLATE"] = "TEMPLATE";
450
+ })(EFormatOrFormattingMode || (EFormatOrFormattingMode = {}));
451
+ /** Тип показателя */
452
+ var EIndicatorType;
453
+ (function (EIndicatorType) {
454
+ /** Показатели процесса */
455
+ EIndicatorType["PROCESS_MEASURE"] = "PROCESS_MEASURE";
456
+ /** Вводимое значение */
457
+ EIndicatorType["STATIC"] = "STATIC";
458
+ /** Статический список */
459
+ EIndicatorType["STATIC_LIST"] = "STATIC_LIST";
460
+ /** Динамический список */
461
+ EIndicatorType["DYNAMIC_LIST"] = "DYNAMIC_LIST";
462
+ /** Список колонок */
463
+ EIndicatorType["COLUMN_LIST"] = "COLUMN_LIST";
464
+ /** Разрез */
465
+ EIndicatorType["DIMENSION"] = "DIMENSION";
466
+ /** Мера */
467
+ EIndicatorType["MEASURE"] = "MEASURE";
468
+ /** Иерархия */
469
+ EIndicatorType["DYNAMIC_DIMENSION"] = "DYNAMIC_DIMENSION";
470
+ /** Пользовательская сортировка */
471
+ EIndicatorType["USER_SORTING"] = "USER_SORTING";
472
+ })(EIndicatorType || (EIndicatorType = {}));
473
+ /** Обобщенные типы значений переменных */
474
+ var ESimpleInputType;
475
+ (function (ESimpleInputType) {
476
+ /** Число (точность Float64) */
477
+ ESimpleInputType["NUMBER"] = "FLOAT";
478
+ /** Целое число (точность Int64) */
479
+ ESimpleInputType["INTEGER_NUMBER"] = "INTEGER";
480
+ /** Текст */
481
+ ESimpleInputType["TEXT"] = "STRING";
482
+ /** Дата (точность Date) */
483
+ ESimpleInputType["DATE"] = "DATE";
484
+ /** Дата и время (точность DateTime64) */
485
+ ESimpleInputType["DATE_AND_TIME"] = "DATETIME";
486
+ /** Логический тип */
487
+ ESimpleInputType["BOOLEAN"] = "BOOLEAN";
488
+ })(ESimpleInputType || (ESimpleInputType = {}));
489
+ function isDimensionsHierarchy(indicator) {
490
+ return "hierarchyDimensions" in indicator;
491
+ }
492
+ var OuterAggregation;
493
+ (function (OuterAggregation) {
494
+ OuterAggregation["avg"] = "avgIf";
495
+ OuterAggregation["median"] = "medianIf";
496
+ OuterAggregation["count"] = "countIf";
497
+ OuterAggregation["countDistinct"] = "countIfDistinct";
498
+ OuterAggregation["min"] = "minIf";
499
+ OuterAggregation["max"] = "maxIf";
500
+ OuterAggregation["sum"] = "sumIf";
501
+ })(OuterAggregation || (OuterAggregation = {}));
502
+ var EDurationTemplateName;
503
+ (function (EDurationTemplateName) {
504
+ EDurationTemplateName["avg"] = "avg";
505
+ EDurationTemplateName["median"] = "median";
506
+ })(EDurationTemplateName || (EDurationTemplateName = {}));
507
+ var EEventAppearances;
508
+ (function (EEventAppearances) {
509
+ EEventAppearances["FIRST"] = "FIRST";
510
+ EEventAppearances["LAST"] = "LAST";
511
+ })(EEventAppearances || (EEventAppearances = {}));
512
+
513
+ // Типы, используемые в значениях элементов управления.
514
+ var EWidgetFilterMode;
515
+ (function (EWidgetFilterMode) {
516
+ EWidgetFilterMode["DEFAULT"] = "DEFAULT";
517
+ EWidgetFilterMode["SINGLE"] = "SINGLE";
518
+ EWidgetFilterMode["DISABLED"] = "DISABLED";
519
+ })(EWidgetFilterMode || (EWidgetFilterMode = {}));
520
+ var EMarkdownDisplayMode;
521
+ (function (EMarkdownDisplayMode) {
522
+ EMarkdownDisplayMode["NONE"] = "NONE";
523
+ EMarkdownDisplayMode["INDICATOR"] = "INDICATOR";
524
+ })(EMarkdownDisplayMode || (EMarkdownDisplayMode = {}));
525
+ var EDisplayConditionMode;
526
+ (function (EDisplayConditionMode) {
527
+ EDisplayConditionMode["DISABLED"] = "DISABLED";
528
+ EDisplayConditionMode["FORMULA"] = "FORMULA";
529
+ EDisplayConditionMode["VARIABLE"] = "VARIABLE";
530
+ })(EDisplayConditionMode || (EDisplayConditionMode = {}));
531
+ var EFontWeight;
532
+ (function (EFontWeight) {
533
+ EFontWeight["NORMAL"] = "NORMAL";
534
+ EFontWeight["BOLD"] = "BOLD";
535
+ })(EFontWeight || (EFontWeight = {}));
536
+ var EHeightMode;
537
+ (function (EHeightMode) {
538
+ EHeightMode["FIXED"] = "FIXED";
539
+ EHeightMode["PERCENT"] = "PERCENT";
540
+ })(EHeightMode || (EHeightMode = {}));
541
+
542
+ var SortDirectionSchema = function (z) {
543
+ return z.union([z.literal(ESortDirection.ascend), z.literal(ESortDirection.descend)]);
544
+ };
545
+ var WidgetSortingValueSchema = function (z) {
546
+ return z.discriminatedUnion("mode", [
547
+ z.object({
548
+ mode: z.literal(ESortingValueModes.FORMULA),
549
+ formula: z.string(),
550
+ dbDataType: z.string(),
551
+ }),
552
+ z.object({
553
+ mode: z.literal(ESortingValueModes.IN_WIDGET),
554
+ group: z.string(),
555
+ index: z.number(),
556
+ }),
557
+ ]);
558
+ };
559
+
560
+ var RangeSchema = function (z) {
561
+ return z.object({
562
+ unit: z.string().optional(),
563
+ min: z.number().optional(),
564
+ max: z.number().optional(),
565
+ });
566
+ };
567
+ var DisplayConditionSchema = function (z) {
568
+ return z.discriminatedUnion("mode", [
569
+ z.object({
570
+ mode: z.literal(EDisplayConditionMode.DISABLED),
571
+ }),
572
+ z.object({
573
+ mode: z.literal(EDisplayConditionMode.FORMULA),
574
+ formula: z.string().nullish(),
575
+ }),
576
+ z.object({
577
+ mode: z.literal(EDisplayConditionMode.VARIABLE),
578
+ variableName: z.string().nullish(),
579
+ variableValue: z.string().nullish(),
580
+ }),
581
+ ]);
582
+ };
583
+
584
+ var WidgetIndicatorSchema = function (z) {
585
+ return AutoIdentifiedArrayItemSchema(z).extend({
586
+ name: z.string(),
587
+ });
588
+ };
589
+ var FormatSchema = function (z) {
590
+ return z.object({
591
+ value: z.enum(EFormatTypes).optional(),
592
+ mode: z.enum(EFormatOrFormattingMode).default(EFormatOrFormattingMode.BASE),
593
+ });
594
+ };
595
+ var FormattingSchema = function (z) {
596
+ return z.object({
597
+ value: z.enum(EFormattingPresets).optional(),
598
+ mode: z.enum(EFormatOrFormattingMode),
599
+ });
600
+ };
601
+ var WidgetColumnIndicatorSchema = function (z) {
602
+ return WidgetIndicatorSchema(z).extend({
603
+ dbDataType: z.string().optional(),
604
+ format: FormatSchema(z).optional(),
605
+ formatting: FormattingSchema(z).optional(),
606
+ displayCondition: DisplayConditionSchema(z).optional(),
607
+ onClick: z.array(ActionsOnClickSchema(z)).optional(),
608
+ });
609
+ };
610
+ var ColumnIndicatorValueSchema = function (z) {
611
+ return z.discriminatedUnion("mode", [
612
+ z.object({
613
+ mode: z.literal(EWidgetIndicatorValueModes.FORMULA),
614
+ formula: z.string().optional(),
615
+ }),
616
+ z.object({
617
+ mode: z.literal(EWidgetIndicatorValueModes.TEMPLATE),
618
+ /** Имя шаблонной формулы, использующей колонку таблицы */
619
+ templateName: z.string().optional(),
620
+ /** Имя таблицы */
621
+ tableName: z.string().optional(),
622
+ /** Имя колонки */
623
+ columnName: z.string().optional(),
624
+ }),
625
+ ]);
626
+ };
627
+ var WidgetIndicatorAggregationValueSchema = function (z) {
628
+ return z.object({
629
+ mode: z.literal(EWidgetIndicatorValueModes.AGGREGATION),
630
+ templateName: z.string(),
631
+ processKey: z.string().nullable(),
632
+ eventName: z.string().nullable(),
633
+ eventNameFormula: z.string().nullable(),
634
+ anyEvent: z.literal(true).optional(),
635
+ caseCaseIdFormula: z.string().nullable(),
636
+ filters: z.array(ExtendedFormulaFilterValueSchema(z)),
637
+ tableName: z.string().optional(),
638
+ columnName: z.string().optional(),
639
+ eventTimeFormula: z.string().nullable().optional(),
640
+ });
641
+ };
642
+ var WidgetIndicatorTimeValueSchema = function (z) {
643
+ return z.object({
644
+ templateName: z.string(),
645
+ mode: z.union([
646
+ z.literal(EWidgetIndicatorValueModes.START_TIME),
647
+ z.literal(EWidgetIndicatorValueModes.END_TIME),
648
+ ]),
649
+ processKey: z.string().nullable(),
650
+ eventName: z.string().nullable(),
651
+ eventTimeFormula: z.string().nullable(),
652
+ caseCaseIdFormula: z.string().nullable(),
653
+ eventNameFormula: z.string().nullable(),
654
+ filters: z.array(ExtendedFormulaFilterValueSchema(z)),
655
+ });
656
+ };
657
+ var WidgetDimensionSchema = function (z) {
658
+ return WidgetColumnIndicatorSchema(z).extend({
659
+ value: z
660
+ .discriminatedUnion("mode", [
661
+ ColumnIndicatorValueSchema(z),
662
+ WidgetIndicatorAggregationValueSchema(z).extend({
663
+ innerTemplateName: z.string().optional(),
664
+ }),
665
+ WidgetIndicatorTimeValueSchema(z),
666
+ ])
667
+ .optional(),
668
+ hideEmptyValues: z.boolean(),
669
+ });
670
+ };
671
+ var WidgetDimensionHierarchySchema = function (z, dimensionSchema) {
672
+ return AutoIdentifiedArrayItemSchema(z).extend({
673
+ name: z.string(),
674
+ hierarchyDimensions: z.array(dimensionSchema),
675
+ displayCondition: DisplayConditionSchema(z).optional(),
676
+ });
677
+ };
678
+ var WidgetIndicatorConversionValue = function (z) {
679
+ return z.object({
680
+ mode: z.literal(EWidgetIndicatorValueModes.CONVERSION),
681
+ startEventNameFormula: z.string().nullable(),
682
+ startEventProcessKey: z.string().nullable(),
683
+ startEventName: z.string().nullable(),
684
+ startEventFilters: z.array(ExtendedFormulaFilterValueSchema(z)),
685
+ startEventTimeFormula: z.string().nullable(),
686
+ endEventNameFormula: z.string().nullable(),
687
+ endEventProcessKey: z.string().nullable(),
688
+ endEventName: z.string().nullable(),
689
+ endEventFilters: z.array(ExtendedFormulaFilterValueSchema(z)),
690
+ endCaseCaseIdFormula: z.string().nullable(),
691
+ endEventTimeFormula: z.string().nullable(),
692
+ });
693
+ };
694
+ var WidgetIndicatorDurationValue = function (z) {
695
+ return WidgetIndicatorConversionValue(z).extend({
696
+ mode: z.literal(EWidgetIndicatorValueModes.DURATION),
697
+ templateName: z.string(),
698
+ startEventAppearances: z.enum(EEventAppearances),
699
+ endEventAppearances: z.enum(EEventAppearances),
700
+ });
701
+ };
702
+ var WidgetMeasureSchema = function (z) {
703
+ return WidgetColumnIndicatorSchema(z).extend({
704
+ value: z
705
+ .discriminatedUnion("mode", [
706
+ ColumnIndicatorValueSchema(z),
707
+ WidgetIndicatorAggregationValueSchema(z).extend({
708
+ outerAggregation: z.enum(EOuterAggregation),
709
+ }),
710
+ WidgetIndicatorConversionValue(z),
711
+ WidgetIndicatorDurationValue(z),
712
+ ])
713
+ .optional(),
714
+ });
715
+ };
716
+ var MarkdownMeasureSchema = function (z) {
717
+ return WidgetMeasureSchema(z).extend({
718
+ displaySign: z.enum(EMarkdownDisplayMode),
719
+ });
720
+ };
721
+ var WidgetSortingIndicatorSchema = function (z) {
722
+ return WidgetIndicatorSchema(z).extend({
723
+ direction: SortDirectionSchema(z),
724
+ value: WidgetSortingValueSchema(z),
725
+ });
726
+ };
727
+
728
+ var FormulaFilterValueSchema = function (z) {
729
+ var _a;
730
+ return z.object({
731
+ name: z.string().nullish(),
732
+ formula: z.string(),
733
+ sliceIndex: z.number().optional(),
734
+ dbDataType: z.string(),
735
+ format: z.enum(EFormatTypes),
736
+ filteringMethod: z.enum(Object.values(formulaFilterMethods)),
737
+ checkedValues: z.array(z.string().nullable()).optional(),
738
+ formValues: z
739
+ .object((_a = {},
740
+ _a[EFormulaFilterFieldKeys.date] = z.string().nullable(),
741
+ _a[EFormulaFilterFieldKeys.dateRange] = z.tuple([z.string(), z.string()]),
742
+ _a[EFormulaFilterFieldKeys.numberRange] = z.tuple([
743
+ z.number().optional(),
744
+ z.number().optional(),
745
+ ]),
746
+ _a[EFormulaFilterFieldKeys.string] = z.string(),
747
+ _a[EFormulaFilterFieldKeys.lastTimeValue] = z.number(),
748
+ _a[EFormulaFilterFieldKeys.lastTimeUnit] = z.enum(ELastTimeUnit),
749
+ _a[EFormulaFilterFieldKeys.durationUnit] = z.enum(EDurationUnit),
750
+ _a))
751
+ .partial()
752
+ .optional(),
753
+ });
754
+ };
755
+ var ExtendedFormulaFilterValueSchema = function (z) {
756
+ return z.union([z.object({ formula: z.string() }), FormulaFilterValueSchema(z)]);
757
+ };
758
+ var DimensionProcessFilterSchema = function (z) {
759
+ return z.object({
760
+ value: z.discriminatedUnion("mode", [
761
+ WidgetIndicatorAggregationValueSchema(z).extend({
762
+ outerAggregation: z.enum(EOuterAggregation),
763
+ }),
764
+ WidgetIndicatorAggregationValueSchema(z).extend({
765
+ innerTemplateName: z.string().optional(),
766
+ }),
767
+ WidgetIndicatorTimeValueSchema(z),
768
+ z.object({
769
+ mode: z.literal(EWidgetIndicatorValueModes.FORMULA),
770
+ formula: z.string().optional(),
771
+ }),
772
+ ]),
773
+ dbDataType: z.string(),
774
+ condition: z.object({
775
+ filteringMethod: z.enum(Object.values(formulaFilterMethods)),
776
+ timeUnit: z.enum(EDimensionProcessFilterTimeUnit).optional(),
777
+ values: z.array(z.string().nullable()),
778
+ }),
779
+ });
780
+ };
781
+ var SettingsFilterSchema = function (z) {
782
+ return z.union([ExtendedFormulaFilterValueSchema(z), DimensionProcessFilterSchema(z)]);
783
+ };
784
+
785
+ var ActionOnClickParameterCommonSchema = function (z) {
786
+ return AutoIdentifiedArrayItemSchema(z).extend({
787
+ name: z.string(),
788
+ });
789
+ };
790
+ var ParameterFromColumnSchema = function (z) {
791
+ return z.object({
792
+ inputMethod: z.literal(EWidgetActionInputMethod.COLUMN),
793
+ tableName: z.string(),
794
+ columnName: z.string(),
795
+ dbDataType: z.string().optional(),
796
+ });
797
+ };
798
+ var ParameterFromVariableSchema = function (z) {
799
+ return z.object({
800
+ inputMethod: z.literal(EWidgetActionInputMethod.VARIABLE),
801
+ sourceVariable: z.string(),
802
+ });
803
+ };
804
+ var ParameterFromFormulaSchema = function (z) {
805
+ return z.object({
806
+ inputMethod: z.literal(EWidgetActionInputMethod.FORMULA),
807
+ formula: z.string(),
808
+ considerFilters: z.boolean(),
809
+ dbDataType: z.string().optional(),
810
+ });
811
+ };
812
+ var ParameterFromEventSchema = function (z) {
813
+ return z.object({
814
+ inputMethod: z.literal(EWidgetActionInputMethod.EVENT),
815
+ });
816
+ };
817
+ var ParameterFromStartEventSchema = function (z) {
818
+ return z.object({
819
+ inputMethod: z.literal(EWidgetActionInputMethod.START_EVENT),
820
+ });
821
+ };
822
+ var ParameterFromEndEventSchema = function (z) {
823
+ return z.object({
824
+ inputMethod: z.literal(EWidgetActionInputMethod.FINISH_EVENT),
825
+ });
826
+ };
827
+ var ParameterFromAggregationSchema = function (z) {
828
+ return z.object({
829
+ inputMethod: z.literal(EWidgetActionInputMethod.AGGREGATION),
830
+ formula: z.string(),
831
+ considerFilters: z.boolean(),
832
+ dbDataType: z.string().optional(),
833
+ });
834
+ };
835
+ var ParameterFromManualInputSchema = function (z) {
836
+ return z.object({
837
+ inputMethod: z.literal(EWidgetActionInputMethod.MANUALLY),
838
+ description: z.string(),
839
+ defaultValue: z.string().optional(),
840
+ dbDataType: z.string().optional(),
841
+ filterByRows: z.boolean().optional(),
842
+ validation: z.string().optional(),
843
+ acceptEmptyValue: z.boolean().optional(),
844
+ });
845
+ };
846
+ var ParameterFromStaticListSchema = function (z) {
847
+ return z.object({
848
+ inputMethod: z.literal(EWidgetActionInputMethod.STATIC_LIST),
849
+ options: z.string(),
850
+ defaultValue: z.union([z.string(), z.array(z.string())]),
851
+ acceptEmptyValue: z.boolean().optional(),
852
+ });
853
+ };
854
+ var ParameterFromDynamicListSchema = function (z) {
855
+ return z.object({
856
+ inputMethod: z.literal(EWidgetActionInputMethod.DYNAMIC_LIST),
857
+ options: z.string(),
858
+ defaultValue: z.string(),
859
+ dbDataType: z.string().optional(),
860
+ displayOptions: z.string(),
861
+ filters: z.array(ExtendedFormulaFilterValueSchema(z)),
862
+ filterByRows: z.boolean().optional(),
863
+ considerFilters: z.boolean(),
864
+ insertAnyValues: z.boolean().optional(),
865
+ validation: z.string().optional(),
866
+ acceptEmptyValue: z.boolean().optional(),
867
+ });
868
+ };
869
+ var ParameterFromDataModelBaseSchema = function (z) {
870
+ return z.object({
871
+ inputMethod: z.literal(EWidgetActionInputMethod.DATA_MODEL),
872
+ option: z.enum(EDataModelOption),
873
+ });
874
+ };
875
+ var ParameterColumnListSchema = function (z) {
876
+ return ParameterFromDataModelBaseSchema(z).extend({
877
+ option: z.literal(EDataModelOption.COLUMN_LIST),
878
+ /* Название параметра, содержащего имя таблицы, от которой зависит текущий параметр */
879
+ parent: z.string(),
880
+ });
881
+ };
882
+ var ParameterTableListSchema = function (z) {
883
+ return ParameterFromDataModelBaseSchema(z).extend({
884
+ option: z.literal(EDataModelOption.TABLE_LIST),
885
+ });
886
+ };
887
+ var ParameterFromDataModelSchema = function (z) {
888
+ return z.discriminatedUnion("option", [ParameterColumnListSchema(z), ParameterTableListSchema(z)]);
889
+ };
890
+ var ActionOnClickParameterSchema = function (z) {
891
+ return z.intersection(ActionOnClickParameterCommonSchema(z), z.discriminatedUnion("inputMethod", [
892
+ ParameterFromColumnSchema(z),
893
+ ParameterFromVariableSchema(z),
894
+ ParameterFromFormulaSchema(z),
895
+ ParameterFromEventSchema(z),
896
+ ParameterFromStartEventSchema(z),
897
+ ParameterFromEndEventSchema(z),
898
+ ParameterFromAggregationSchema(z),
899
+ ParameterFromManualInputSchema(z),
900
+ ParameterFromStaticListSchema(z),
901
+ ParameterFromDynamicListSchema(z),
902
+ ParameterFromDataModelSchema(z),
903
+ ]));
904
+ };
905
+ var ActionCommonSchema = function (z) {
906
+ return AutoIdentifiedArrayItemSchema(z).extend({
907
+ name: z.string(),
908
+ });
909
+ };
910
+ var ActionGoToURLSchema = function (z) {
911
+ return ActionCommonSchema(z).extend({
912
+ type: z.literal(EActionTypes.OPEN_URL),
913
+ url: z.string(),
914
+ newWindow: z.boolean(),
915
+ });
916
+ };
917
+ var ActivateConditionSchema = function (z) {
918
+ return z.discriminatedUnion("mode", [
919
+ z.object({
920
+ mode: z.literal(EActivateConditionMode.FORMULA),
921
+ formula: z.string(),
922
+ }),
923
+ z.object({
924
+ mode: z.literal(EActivateConditionMode.VARIABLE),
925
+ variableName: z.string(),
926
+ variableValue: z.string(),
927
+ }),
928
+ ]);
929
+ };
930
+ var ActionRunScriptSchema = function (z) {
931
+ return ActionCommonSchema(z).extend({
932
+ type: z.literal(EActionTypes.EXECUTE_SCRIPT),
933
+ parameters: z.array(ActionOnClickParameterSchema(z)),
934
+ scriptKey: z.string(),
935
+ autoUpdate: z.enum(EAutoUpdateMode),
936
+ hideInactiveButton: z.boolean().optional(),
937
+ activateCondition: ActivateConditionSchema(z).optional(),
938
+ hint: z.string().optional(),
939
+ });
940
+ };
941
+ var ActionUpdateVariableSchema = function (z) {
942
+ return ActionCommonSchema(z).extend({
943
+ type: z.literal(EActionTypes.UPDATE_VARIABLE),
944
+ variables: z.array(ActionOnClickParameterSchema(z)),
945
+ });
946
+ };
947
+ var ActionOpenInSchema = function (z) {
948
+ return z.discriminatedUnion("openIn", [
949
+ z.object({
950
+ openIn: z.literal(EViewOpenIn.DRAWER_WINDOW),
951
+ alignment: z.enum(EDrawerPlacement),
952
+ }),
953
+ z.object({
954
+ openIn: z.literal(EViewOpenIn.PLACEHOLDER),
955
+ placeholderName: z.string(),
956
+ }),
957
+ z.object({
958
+ openIn: z.literal(EViewOpenIn.MODAL_WINDOW),
959
+ positionByClick: z.boolean().optional(),
960
+ }),
961
+ z.object({
962
+ openIn: z.literal(EViewOpenIn.WINDOW),
963
+ newWindow: z.boolean(),
964
+ }),
965
+ ]);
966
+ };
967
+ var ActionOpenViewCommonSchema = function (z) {
968
+ return ActionCommonSchema(z).extend({ type: z.literal(EActionTypes.OPEN_VIEW) });
969
+ };
970
+ var ActionOpenViewSchema = function (z) {
971
+ return z.intersection(z.discriminatedUnion("mode", [
972
+ ActionOpenViewCommonSchema(z).extend({
973
+ mode: z.literal(EViewMode.GENERATED_BY_SCRIPT),
974
+ scriptKey: z.string(),
975
+ parameters: z.array(ActionOnClickParameterSchema(z)),
976
+ displayName: z.string(),
977
+ }),
978
+ ActionOpenViewCommonSchema(z).extend({
979
+ mode: z.literal(EViewMode.EXISTED_VIEW),
980
+ viewKey: z.string(),
981
+ parameters: z.array(ActionOnClickParameterSchema(z)),
982
+ }),
983
+ ActionOpenViewCommonSchema(z).extend({
984
+ mode: z.literal(EViewMode.EMPTY),
985
+ placeholderName: z.string(),
986
+ openIn: z.literal(EViewOpenIn.PLACEHOLDER),
987
+ }),
988
+ ]), ActionOpenInSchema(z));
989
+ };
990
+ var ActionsOnClickSchema = function (z) {
991
+ return z.union([
992
+ ActionGoToURLSchema(z),
993
+ ActionRunScriptSchema(z),
994
+ ActionUpdateVariableSchema(z),
995
+ ActionOpenViewSchema(z),
996
+ ]);
997
+ };
998
+ var WidgetActionParameterCommonSchema = function (z) {
999
+ return z.object({
1000
+ name: z.string(),
1001
+ displayName: z.string(),
1002
+ isHidden: z.boolean(),
1003
+ });
1004
+ };
1005
+ var WidgetActionParameterSchema = function (z) {
1006
+ return z.intersection(WidgetActionParameterCommonSchema(z), z.discriminatedUnion("inputMethod", [
1007
+ ParameterFromColumnSchema(z),
1008
+ ParameterFromVariableSchema(z),
1009
+ ParameterFromFormulaSchema(z),
1010
+ ParameterFromManualInputSchema(z),
1011
+ ParameterFromStaticListSchema(z),
1012
+ ParameterFromDynamicListSchema(z),
1013
+ ParameterFromAggregationSchema(z),
1014
+ ParameterFromDataModelSchema(z),
1015
+ ]));
1016
+ };
1017
+ var WidgetActionSchema = function (z) {
1018
+ return ActionCommonSchema(z).extend({
1019
+ parameters: z.array(WidgetActionParameterSchema(z)),
1020
+ type: z.literal(EActionTypes.EXECUTE_SCRIPT),
1021
+ scriptKey: z.string(),
1022
+ autoUpdate: z.enum(EAutoUpdateMode),
1023
+ description: z.string(),
1024
+ hideInactiveButton: z.boolean().optional(),
1025
+ hint: z.string().optional(),
1026
+ activateCondition: ActivateConditionSchema(z),
1027
+ });
1028
+ };
1029
+ var ViewActionParameterSchema = function (z) {
1030
+ return z.intersection(AutoIdentifiedArrayItemSchema(z).extend({ name: z.string() }), z.discriminatedUnion("inputMethod", [
1031
+ ParameterFromAggregationSchema(z),
1032
+ ParameterFromVariableSchema(z),
1033
+ ]));
1034
+ };
1035
+ var ViewActionSchema = function (z) {
1036
+ return z.object({
1037
+ name: z.string(),
1038
+ buttonType: z.enum(EActionButtonsTypes),
1039
+ type: z.literal(EActionTypes.EXECUTE_SCRIPT),
1040
+ parameters: z.array(ViewActionParameterSchema(z)),
1041
+ scriptKey: z.string(),
1042
+ id: z.number().optional(),
1043
+ autoUpdate: z
1044
+ .union([z.literal(EAutoUpdateMode.NONE), z.literal(EAutoUpdateMode.ALL_VIEWS)])
1045
+ .optional(),
1046
+ });
1047
+ };
1048
+ var ActionSchema = function (z) {
1049
+ return z.union([ActionsOnClickSchema(z), WidgetActionSchema(z), ViewActionSchema(z)]);
1050
+ };
1051
+ var ActionButtonSchema = function (z) {
1052
+ return AutoIdentifiedArrayItemSchema(z).extend({
1053
+ name: z.string(),
1054
+ onClick: z.array(WidgetActionSchema(z)),
1055
+ buttonType: z.enum(EActionButtonsTypes),
1056
+ backgroundColor: ColorSchema(z).optional(),
1057
+ borderColor: ColorSchema(z).optional(),
1058
+ color: ColorSchema(z),
1059
+ hint: z.string().optional(),
1060
+ });
1061
+ };
1062
+
1063
+ var prepareValuesForSql = function (simpleType, values) {
1064
+ return simpleType === ESimpleDataType.INTEGER ||
1065
+ simpleType === ESimpleDataType.FLOAT ||
1066
+ simpleType === ESimpleDataType.BOOLEAN
1067
+ ? values
1068
+ : values.map(function (value) {
1069
+ return value === null ? null : "'".concat(escapeSingularQuotes$1(escapeReverseSlash(value)), "'");
1070
+ });
1071
+ };
1072
+ var escapeReverseSlash = function (formula) {
1073
+ return formula.replaceAll(/\\/gm, "\\\\");
1074
+ };
1075
+ var escapeSingularQuotes$1 = function (formula) {
1076
+ return formula.replaceAll("'", "\\'");
1077
+ };
1078
+
1079
+ /******************************************************************************
1080
+ Copyright (c) Microsoft Corporation.
1081
+
1082
+ Permission to use, copy, modify, and/or distribute this software for any
1083
+ purpose with or without fee is hereby granted.
1084
+
1085
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
1086
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
1087
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
1088
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
1089
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
1090
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
1091
+ PERFORMANCE OF THIS SOFTWARE.
1092
+ ***************************************************************************** */
1093
+ /* global Reflect, Promise, SuppressedError, Symbol */
1094
+
1095
+
1096
+ var __assign = function() {
1097
+ __assign = Object.assign || function __assign(t) {
1098
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
1099
+ s = arguments[i];
1100
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
1101
+ }
1102
+ return t;
1103
+ };
1104
+ return __assign.apply(this, arguments);
1105
+ };
1106
+
1107
+ function __rest(s, e) {
1108
+ var t = {};
1109
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
1110
+ t[p] = s[p];
1111
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
1112
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
1113
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
1114
+ t[p[i]] = s[p[i]];
1115
+ }
1116
+ return t;
1117
+ }
1118
+
1119
+ function __values(o) {
1120
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
1121
+ if (m) return m.call(o);
1122
+ if (o && typeof o.length === "number") return {
1123
+ next: function () {
1124
+ if (o && i >= o.length) o = void 0;
1125
+ return { value: o && o[i++], done: !o };
1126
+ }
1127
+ };
1128
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
1129
+ }
1130
+
1131
+ function __read(o, n) {
1132
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
1133
+ if (!m) return o;
1134
+ var i = m.call(o), r, ar = [], e;
1135
+ try {
1136
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
1137
+ }
1138
+ catch (error) { e = { error: error }; }
1139
+ finally {
1140
+ try {
1141
+ if (r && !r.done && (m = i["return"])) m.call(i);
1142
+ }
1143
+ finally { if (e) throw e.error; }
1144
+ }
1145
+ return ar;
1146
+ }
1147
+
1148
+ function __makeTemplateObject(cooked, raw) {
1149
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
1150
+ return cooked;
1151
+ }
1152
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
1153
+ var e = new Error(message);
1154
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
1155
+ };
1156
+
1157
+ var ECalculatorFilterMethods;
1158
+ (function (ECalculatorFilterMethods) {
1159
+ ECalculatorFilterMethods["EQUAL_TO"] = "EQUAL_TO";
1160
+ ECalculatorFilterMethods["NOT_EQUAL_TO"] = "NOT_EQUAL_TO";
1161
+ ECalculatorFilterMethods["GREATER_THAN"] = "GREATER_THAN";
1162
+ ECalculatorFilterMethods["LESS_THAN"] = "LESS_THAN";
1163
+ ECalculatorFilterMethods["GREATER_THAN_OR_EQUAL_TO"] = "GREATER_THAN_OR_EQUAL_TO";
1164
+ ECalculatorFilterMethods["LESS_THAN_OR_EQUAL_TO"] = "LESS_THAN_OR_EQUAL_TO";
1165
+ ECalculatorFilterMethods["STARTS_WITH"] = "STARTS_WITH";
1166
+ ECalculatorFilterMethods["ENDS_WITH"] = "ENDS_WITH";
1167
+ ECalculatorFilterMethods["CONTAINS"] = "CONTAINS";
1168
+ ECalculatorFilterMethods["NOT_CONTAINS"] = "NOT_CONTAINS";
1169
+ ECalculatorFilterMethods["IN_RANGE"] = "IN_RANGE";
1170
+ ECalculatorFilterMethods["NOT_IN_RANGE"] = "NOT_IN_RANGE";
1171
+ ECalculatorFilterMethods["INCLUDE"] = "INCLUDE";
1172
+ ECalculatorFilterMethods["EXCLUDE"] = "EXCLUDE";
1173
+ ECalculatorFilterMethods["NONEMPTY"] = "NONEMPTY";
1174
+ ECalculatorFilterMethods["EMPTY"] = "EMPTY";
1175
+ })(ECalculatorFilterMethods || (ECalculatorFilterMethods = {}));
1176
+
1177
+ var formulaFilterMethods = __assign(__assign({}, ECalculatorFilterMethods), { LAST_TIME: "LAST_TIME" });
1178
+ var EProcessFilterNames;
1179
+ (function (EProcessFilterNames) {
1180
+ /** Наличие события */
1181
+ EProcessFilterNames["presenceOfEvent"] = "presenceOfEvent";
1182
+ /** Количество повторов события */
1183
+ EProcessFilterNames["repetitionOfEvent"] = "repetitionOfEvent";
1184
+ /** Наличие перехода */
1185
+ EProcessFilterNames["presenceOfTransition"] = "presenceOfTransition";
1186
+ /** Длительность перехода */
1187
+ EProcessFilterNames["durationOfTransition"] = "durationOfTransition";
1188
+ })(EProcessFilterNames || (EProcessFilterNames = {}));
1189
+ var EFormulaFilterFieldKeys;
1190
+ (function (EFormulaFilterFieldKeys) {
1191
+ EFormulaFilterFieldKeys["date"] = "date";
1192
+ EFormulaFilterFieldKeys["dateRange"] = "dateRange";
1193
+ EFormulaFilterFieldKeys["numberRange"] = "numberRange";
1194
+ EFormulaFilterFieldKeys["string"] = "string";
1195
+ EFormulaFilterFieldKeys["lastTimeValue"] = "lastTimeValue";
1196
+ EFormulaFilterFieldKeys["lastTimeUnit"] = "lastTimeUnit";
1197
+ EFormulaFilterFieldKeys["durationUnit"] = "durationUnit";
1198
+ })(EFormulaFilterFieldKeys || (EFormulaFilterFieldKeys = {}));
1199
+ var EDimensionProcessFilterTimeUnit;
1200
+ (function (EDimensionProcessFilterTimeUnit) {
1201
+ EDimensionProcessFilterTimeUnit["YEARS"] = "YEARS";
1202
+ EDimensionProcessFilterTimeUnit["MONTHS"] = "MONTHS";
1203
+ EDimensionProcessFilterTimeUnit["HOURS"] = "HOURS";
1204
+ EDimensionProcessFilterTimeUnit["DAYS"] = "DAYS";
1205
+ EDimensionProcessFilterTimeUnit["MINUTES"] = "MINUTES";
1206
+ })(EDimensionProcessFilterTimeUnit || (EDimensionProcessFilterTimeUnit = {}));
1207
+ var isFormulaFilterValue = function (value) {
1208
+ return "filteringMethod" in value;
1209
+ };
1210
+ var isDimensionProcessFilter = function (filter) { return "value" in filter && "condition" in filter; };
1211
+
1212
+ var compact = function (items) { return ((items === null || items === void 0 ? void 0 : items.filter(Boolean)) || []); };
1213
+ var compactMap = function (items, f) {
1214
+ return compact(items === null || items === void 0 ? void 0 : items.map(f));
1215
+ };
1216
+ var isNil = function (value) {
1217
+ return value === null || value === undefined;
1218
+ };
1219
+ function memoize(fn) {
1220
+ var cache = new Map();
1221
+ return function (arg) {
1222
+ if (cache.has(arg)) {
1223
+ return cache.get(arg);
1224
+ }
1225
+ var result = fn(arg);
1226
+ cache.set(arg, result);
1227
+ return result;
1228
+ };
1229
+ }
1230
+
1231
+ var EClickHouseBaseTypes;
1232
+ (function (EClickHouseBaseTypes) {
1233
+ // DATE
1234
+ EClickHouseBaseTypes["Date"] = "Date";
1235
+ EClickHouseBaseTypes["Date32"] = "Date32";
1236
+ // DATETIME
1237
+ EClickHouseBaseTypes["DateTime"] = "DateTime";
1238
+ EClickHouseBaseTypes["DateTime32"] = "DateTime32";
1239
+ // DATETIME64
1240
+ EClickHouseBaseTypes["DateTime64"] = "DateTime64";
1241
+ // STRING
1242
+ EClickHouseBaseTypes["FixedString"] = "FixedString";
1243
+ EClickHouseBaseTypes["String"] = "String";
1244
+ // FLOAT
1245
+ EClickHouseBaseTypes["Decimal"] = "Decimal";
1246
+ EClickHouseBaseTypes["Decimal32"] = "Decimal32";
1247
+ EClickHouseBaseTypes["Decimal64"] = "Decimal64";
1248
+ EClickHouseBaseTypes["Decimal128"] = "Decimal128";
1249
+ EClickHouseBaseTypes["Decimal256"] = "Decimal256";
1250
+ EClickHouseBaseTypes["Float32"] = "Float32";
1251
+ EClickHouseBaseTypes["Float64"] = "Float64";
1252
+ // INTEGER
1253
+ EClickHouseBaseTypes["Int8"] = "Int8";
1254
+ EClickHouseBaseTypes["Int16"] = "Int16";
1255
+ EClickHouseBaseTypes["Int32"] = "Int32";
1256
+ EClickHouseBaseTypes["Int64"] = "Int64";
1257
+ EClickHouseBaseTypes["Int128"] = "Int128";
1258
+ EClickHouseBaseTypes["Int256"] = "Int256";
1259
+ EClickHouseBaseTypes["UInt8"] = "UInt8";
1260
+ EClickHouseBaseTypes["UInt16"] = "UInt16";
1261
+ EClickHouseBaseTypes["UInt32"] = "UInt32";
1262
+ EClickHouseBaseTypes["UInt64"] = "UInt64";
1263
+ EClickHouseBaseTypes["UInt128"] = "UInt128";
1264
+ EClickHouseBaseTypes["UInt256"] = "UInt256";
1265
+ // BOOLEAN
1266
+ EClickHouseBaseTypes["Bool"] = "Bool";
1267
+ })(EClickHouseBaseTypes || (EClickHouseBaseTypes = {}));
1268
+ var stringTypes = ["String", "FixedString"];
1269
+ var parseClickHouseType = memoize(function (type) {
1270
+ if (isNil(type)) {
1271
+ return {
1272
+ simpleBaseType: ESimpleDataType.OTHER,
1273
+ dbBaseDataType: undefined,
1274
+ containers: [],
1275
+ simpleType: ESimpleDataType.OTHER,
1276
+ };
1277
+ }
1278
+ var _a = extractInnerType(type), containers = _a.containers, dbBaseDataType = _a.dbBaseDataType;
1279
+ if (!dbBaseDataType) {
1280
+ throw new Error("Invalid ClickHouse type: ".concat(type));
1281
+ }
1282
+ return {
1283
+ dbBaseDataType: dbBaseDataType,
1284
+ simpleBaseType: simplifyBaseType(dbBaseDataType),
1285
+ containers: containers,
1286
+ get simpleType() {
1287
+ return containers.includes("Array") ? ESimpleDataType.OTHER : this.simpleBaseType;
1288
+ },
1289
+ };
1290
+ });
1291
+ /** 'A(B(C))' -> ['A', 'B', 'C'] */
1292
+ var splitByBrackets = function (input) { return input.split(/[\(\)]/).filter(Boolean); };
1293
+ /**
1294
+ * Отделить внутренний тип от оберток.
1295
+ * Не поддерживаются обертки Tuple и LowCardinality.
1296
+ */
1297
+ var extractInnerType = function (type) {
1298
+ var tokens = splitByBrackets(type);
1299
+ // Удаление параметров типа.
1300
+ if (tokens.length > 0 && isTypeParameters(tokens.at(-1))) {
1301
+ tokens.pop();
1302
+ }
1303
+ var dbBaseDataType = tokens.pop();
1304
+ return { containers: tokens, dbBaseDataType: dbBaseDataType };
1305
+ };
1306
+ var simplifyBaseType = function (dbBaseType) {
1307
+ var isSourceTypeStartsWith = function (prefix) { return dbBaseType.startsWith(prefix); };
1308
+ if (isSourceTypeStartsWith("Int") || isSourceTypeStartsWith("UInt")) {
1309
+ return ESimpleDataType.INTEGER;
1310
+ }
1311
+ if (isSourceTypeStartsWith("Decimal") || isSourceTypeStartsWith("Float")) {
1312
+ return ESimpleDataType.FLOAT;
1313
+ }
1314
+ if (stringTypes.some(isSourceTypeStartsWith)) {
1315
+ return ESimpleDataType.STRING;
1316
+ }
1317
+ if (isSourceTypeStartsWith("DateTime64")) {
1318
+ return ESimpleDataType.DATETIME64;
1319
+ }
1320
+ if (isSourceTypeStartsWith("DateTime")) {
1321
+ return ESimpleDataType.DATETIME;
1322
+ }
1323
+ if (isSourceTypeStartsWith("Date")) {
1324
+ return ESimpleDataType.DATE;
1325
+ }
1326
+ if (isSourceTypeStartsWith("Bool")) {
1327
+ return ESimpleDataType.BOOLEAN;
1328
+ }
1329
+ return ESimpleDataType.OTHER;
1330
+ };
1331
+ /**
1332
+ * - `3` -> true
1333
+ * - `3, 'Europe/Moscow'` -> true
1334
+ * - `3, Europe/Moscow` -> false
1335
+ *
1336
+ * Пример типа с параметрами: `DateTime64(3, 'Europe/Moscow')`
1337
+ */
1338
+ var isTypeParameters = function (stringifiedParameters) {
1339
+ return stringifiedParameters.split(", ").some(function (p) { return !Number.isNaN(Number(p)) || p.startsWith("'"); });
1340
+ };
1341
+
651
1342
  var _a$5;
652
1343
  var EDimensionTemplateNames;
653
1344
  (function (EDimensionTemplateNames) {
@@ -678,113 +1369,6 @@ var dimensionTemplateFormulas = (_a$5 = {},
678
1369
  _a$5[EDimensionTemplateNames.hour] = "if(defaultValueOfArgumentType({columnFormula}) = {columnFormula}, 0, toHour({columnFormula}))",
679
1370
  _a$5);
680
1371
 
681
- var EWidgetIndicatorType;
682
- (function (EWidgetIndicatorType) {
683
- EWidgetIndicatorType["MEASURE"] = "MEASURE";
684
- EWidgetIndicatorType["EVENT_INDICATOR"] = "EVENT_INDICATOR";
685
- EWidgetIndicatorType["TRANSITION_INDICATOR"] = "TRANSITION_INDICATOR";
686
- EWidgetIndicatorType["DIMENSION"] = "DIMENSION";
687
- EWidgetIndicatorType["SORTING"] = "SORTING";
688
- })(EWidgetIndicatorType || (EWidgetIndicatorType = {}));
689
- var EOuterAggregation;
690
- (function (EOuterAggregation) {
691
- EOuterAggregation["avg"] = "avg";
692
- EOuterAggregation["median"] = "median";
693
- EOuterAggregation["count"] = "count";
694
- EOuterAggregation["countDistinct"] = "countDistinct";
695
- EOuterAggregation["min"] = "min";
696
- EOuterAggregation["max"] = "max";
697
- EOuterAggregation["sum"] = "sum";
698
- EOuterAggregation["top"] = "top";
699
- })(EOuterAggregation || (EOuterAggregation = {}));
700
- /** Режимы значения показателя (на основе чего генерируется формула) */
701
- var EWidgetIndicatorValueModes;
702
- (function (EWidgetIndicatorValueModes) {
703
- /** Готовая формула (как правило, введенная пользователем через редактор формул) */
704
- EWidgetIndicatorValueModes["FORMULA"] = "FORMULA";
705
- /** Шаблон формулы, предоставляемый системой */
706
- EWidgetIndicatorValueModes["TEMPLATE"] = "TEMPLATE";
707
- EWidgetIndicatorValueModes["AGGREGATION"] = "AGGREGATION";
708
- EWidgetIndicatorValueModes["DURATION"] = "DURATION";
709
- EWidgetIndicatorValueModes["CONVERSION"] = "CONVERSION";
710
- EWidgetIndicatorValueModes["START_TIME"] = "START_TIME";
711
- EWidgetIndicatorValueModes["END_TIME"] = "END_TIME";
712
- })(EWidgetIndicatorValueModes || (EWidgetIndicatorValueModes = {}));
713
- /** Режимы сортировки (на что ссылается сортировка) */
714
- var ESortingValueModes;
715
- (function (ESortingValueModes) {
716
- /** Сортировка по формуле */
717
- ESortingValueModes["FORMULA"] = "FORMULA";
718
- /** Сортировка по показателю(разрезу или мере) виджета */
719
- ESortingValueModes["IN_WIDGET"] = "IN_WIDGET";
720
- })(ESortingValueModes || (ESortingValueModes = {}));
721
- var EFormatOrFormattingMode;
722
- (function (EFormatOrFormattingMode) {
723
- EFormatOrFormattingMode["BASE"] = "BASE";
724
- EFormatOrFormattingMode["TEMPLATE"] = "TEMPLATE";
725
- })(EFormatOrFormattingMode || (EFormatOrFormattingMode = {}));
726
- /** Тип показателя */
727
- var EIndicatorType;
728
- (function (EIndicatorType) {
729
- /** Показатели процесса */
730
- EIndicatorType["PROCESS_MEASURE"] = "PROCESS_MEASURE";
731
- /** Вводимое значение */
732
- EIndicatorType["STATIC"] = "STATIC";
733
- /** Статический список */
734
- EIndicatorType["STATIC_LIST"] = "STATIC_LIST";
735
- /** Динамический список */
736
- EIndicatorType["DYNAMIC_LIST"] = "DYNAMIC_LIST";
737
- /** Список колонок */
738
- EIndicatorType["COLUMN_LIST"] = "COLUMN_LIST";
739
- /** Разрез */
740
- EIndicatorType["DIMENSION"] = "DIMENSION";
741
- /** Мера */
742
- EIndicatorType["MEASURE"] = "MEASURE";
743
- /** Иерархия */
744
- EIndicatorType["DYNAMIC_DIMENSION"] = "DYNAMIC_DIMENSION";
745
- /** Пользовательская сортировка */
746
- EIndicatorType["USER_SORTING"] = "USER_SORTING";
747
- })(EIndicatorType || (EIndicatorType = {}));
748
- /** Обобщенные типы значений переменных */
749
- var ESimpleInputType;
750
- (function (ESimpleInputType) {
751
- /** Число (точность Float64) */
752
- ESimpleInputType["NUMBER"] = "FLOAT";
753
- /** Целое число (точность Int64) */
754
- ESimpleInputType["INTEGER_NUMBER"] = "INTEGER";
755
- /** Текст */
756
- ESimpleInputType["TEXT"] = "STRING";
757
- /** Дата (точность Date) */
758
- ESimpleInputType["DATE"] = "DATE";
759
- /** Дата и время (точность DateTime64) */
760
- ESimpleInputType["DATE_AND_TIME"] = "DATETIME";
761
- /** Логический тип */
762
- ESimpleInputType["BOOLEAN"] = "BOOLEAN";
763
- })(ESimpleInputType || (ESimpleInputType = {}));
764
- function isDimensionsHierarchy(indicator) {
765
- return "hierarchyDimensions" in indicator;
766
- }
767
- var OuterAggregation;
768
- (function (OuterAggregation) {
769
- OuterAggregation["avg"] = "avgIf";
770
- OuterAggregation["median"] = "medianIf";
771
- OuterAggregation["count"] = "countIf";
772
- OuterAggregation["countDistinct"] = "countIfDistinct";
773
- OuterAggregation["min"] = "minIf";
774
- OuterAggregation["max"] = "maxIf";
775
- OuterAggregation["sum"] = "sumIf";
776
- })(OuterAggregation || (OuterAggregation = {}));
777
- var EDurationTemplateName;
778
- (function (EDurationTemplateName) {
779
- EDurationTemplateName["avg"] = "avg";
780
- EDurationTemplateName["median"] = "median";
781
- })(EDurationTemplateName || (EDurationTemplateName = {}));
782
- var EEventAppearances;
783
- (function (EEventAppearances) {
784
- EEventAppearances["FIRST"] = "FIRST";
785
- EEventAppearances["LAST"] = "LAST";
786
- })(EEventAppearances || (EEventAppearances = {}));
787
-
788
1372
  function createAggregationTemplate$1(functionName, options) {
789
1373
  return "process(".concat(functionName, "(").concat((options === null || options === void 0 ? void 0 : options.distinct) ? "distinct " : "", "{columnFormula}, {eventNameFormula} ={eventName}{filters}), {caseCaseIdFormula})");
790
1374
  }
@@ -1453,35 +2037,6 @@ function getTransitionMeasureFormula(_a, process) {
1453
2037
  return "";
1454
2038
  }
1455
2039
 
1456
- // Типы, используемые в значениях элементов управления.
1457
- var EWidgetFilterMode;
1458
- (function (EWidgetFilterMode) {
1459
- EWidgetFilterMode["DEFAULT"] = "DEFAULT";
1460
- EWidgetFilterMode["SINGLE"] = "SINGLE";
1461
- EWidgetFilterMode["DISABLED"] = "DISABLED";
1462
- })(EWidgetFilterMode || (EWidgetFilterMode = {}));
1463
- var EMarkdownDisplayMode;
1464
- (function (EMarkdownDisplayMode) {
1465
- EMarkdownDisplayMode["NONE"] = "NONE";
1466
- EMarkdownDisplayMode["INDICATOR"] = "INDICATOR";
1467
- })(EMarkdownDisplayMode || (EMarkdownDisplayMode = {}));
1468
- var EDisplayConditionMode;
1469
- (function (EDisplayConditionMode) {
1470
- EDisplayConditionMode["DISABLED"] = "DISABLED";
1471
- EDisplayConditionMode["FORMULA"] = "FORMULA";
1472
- EDisplayConditionMode["VARIABLE"] = "VARIABLE";
1473
- })(EDisplayConditionMode || (EDisplayConditionMode = {}));
1474
- var EFontWeight;
1475
- (function (EFontWeight) {
1476
- EFontWeight["NORMAL"] = "NORMAL";
1477
- EFontWeight["BOLD"] = "BOLD";
1478
- })(EFontWeight || (EFontWeight = {}));
1479
- var EHeightMode;
1480
- (function (EHeightMode) {
1481
- EHeightMode["FIXED"] = "FIXED";
1482
- EHeightMode["PERCENT"] = "PERCENT";
1483
- })(EHeightMode || (EHeightMode = {}));
1484
-
1485
2040
  function checkDisplayCondition(displayCondition, variables) {
1486
2041
  var _a;
1487
2042
  if ((displayCondition === null || displayCondition === void 0 ? void 0 : displayCondition.mode) === EDisplayConditionMode.VARIABLE) {
@@ -2238,4 +2793,73 @@ var themed = function (scheme, selectThemeValue) {
2238
2793
  return scheme.meta((_a = {}, _a[themeValueMetaKey] = selectThemeValue, _a));
2239
2794
  };
2240
2795
 
2241
- 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, EHeightMode, EIndicatorType, ELastTimeUnit, EMarkdownDisplayMode, EMeasureAggregationTemplateName, EMeasureTemplateNames, EOuterAggregation, EProcessFilterNames, ESelectOptionTypes, ESimpleDataType, ESimpleInputType, ESortDirection, ESortingValueModes, ESystemRecordKey, ETransitionMeasureTemplateNames, EUnitMode, EViewMode, EViewOpenIn, EWidgetActionInputMethod, EWidgetFilterMode, EWidgetIndicatorType, EWidgetIndicatorValueModes, OuterAggregation, 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, measureTemplateFormulas, parseClickHouseType, parseIndicatorLink, prepareConversionParams, prepareDimensionAggregationParams, prepareDurationParams, prepareFormulaForSql, prepareMeasureAggregationParams, prepareSortOrders, prepareTimeParams, prepareValuesForSql, replaceDisplayCondition, replaceFiltersBySelection, replaceHierarchiesWithDimensions, selectDimensionFromHierarchy, themeValueMetaKey, themed, timeTemplates, transitionMeasureTemplateFormulas, unescapeSpecialCharacters, updateDefaultModeSelection, updateSingleModeSelection, workspaceLinkRegExp };
2796
+ var ColorBaseSchema = function (z) {
2797
+ return z.object({
2798
+ mode: z.literal(EColorMode.BASE),
2799
+ value: z.string(),
2800
+ });
2801
+ };
2802
+ var ColorRuleSchema = function (z) {
2803
+ return z.object({
2804
+ mode: z.literal(EColorMode.RULE),
2805
+ formula: z.string(),
2806
+ });
2807
+ };
2808
+ var ColorAutoSchema = function (z) {
2809
+ return z.object({
2810
+ mode: z.literal(EColorMode.AUTO),
2811
+ });
2812
+ };
2813
+ var ColorDisabledSchema = function (z) {
2814
+ return z.object({
2815
+ mode: z.literal(EColorMode.DISABLED),
2816
+ });
2817
+ };
2818
+ var ColorGradientSchema = function (z) {
2819
+ return z.object({
2820
+ mode: z.literal(EColorMode.GRADIENT),
2821
+ startValue: z.string(),
2822
+ endValue: z.string(),
2823
+ classCount: z.number().min(3).max(10).nullish(),
2824
+ });
2825
+ };
2826
+ var ColorFormulaSchema = function (z) {
2827
+ return z.object({
2828
+ mode: z.literal(EColorMode.FORMULA),
2829
+ formula: z.string(),
2830
+ });
2831
+ };
2832
+ var ColorValuesSchema = function (z) {
2833
+ return z.object({
2834
+ mode: z.literal(EColorMode.VALUES),
2835
+ items: z.array(z.object({ value: z.string(), color: z.union([ColorBaseSchema(z), ColorRuleSchema(z)]) })),
2836
+ });
2837
+ };
2838
+ var ColorByDimensionSchema = function (z) {
2839
+ return z.object({
2840
+ mode: z.literal(EColorMode.BY_DIMENSION),
2841
+ /** Имя разреза из области видимости правила отображения */
2842
+ dimensionName: z.string(),
2843
+ items: z.array(z.object({ value: z.string(), color: z.union([ColorBaseSchema(z), ColorRuleSchema(z)]) })),
2844
+ });
2845
+ };
2846
+ var ColoredValueSchema = function (z) {
2847
+ return z.object({
2848
+ value: z.string(),
2849
+ color: z.union([ColorBaseSchema(z), ColorRuleSchema(z)]),
2850
+ });
2851
+ };
2852
+ var ColorSchema = function (z) {
2853
+ return z.discriminatedUnion("mode", [
2854
+ ColorAutoSchema(z),
2855
+ ColorDisabledSchema(z),
2856
+ ColorBaseSchema(z),
2857
+ ColorRuleSchema(z),
2858
+ ColorGradientSchema(z),
2859
+ ColorFormulaSchema(z),
2860
+ ColorValuesSchema(z),
2861
+ ColorByDimensionSchema(z),
2862
+ ]);
2863
+ };
2864
+
2865
+ export { ActionButtonSchema, ActionGoToURLSchema, ActionOnClickParameterSchema, ActionOpenInSchema, ActionOpenViewSchema, ActionRunScriptSchema, ActionSchema, ActionUpdateVariableSchema, ActionsOnClickSchema, AutoIdentifiedArrayItemSchema, BaseWidgetSettingsSchema, ColorAutoSchema, ColorBaseSchema, ColorByDimensionSchema, ColorDisabledSchema, ColorFormulaSchema, ColorGradientSchema, ColorRuleSchema, ColorSchema, ColorValuesSchema, ColoredValueSchema, ColumnIndicatorValueSchema, DisplayConditionSchema, EActionButtonsTypes, EActionTypes, EActivateConditionMode, EAutoUpdateMode, ECalculatorFilterMethods, EClickHouseBaseTypes, EColorMode, EControlType, ECustomSelectTemplates, EDataModelOption, EDimensionAggregationTemplateName, EDimensionProcessFilterTimeUnit, EDimensionTemplateNames, EDisplayConditionMode, EDrawerPlacement, EDurationTemplateName, EDurationUnit, EEventAppearances, EEventMeasureTemplateNames, EFontWeight, EFormatOrFormattingMode, EFormatTypes, EFormattingPresets, EFormulaFilterFieldKeys, EHeightMode, EIndicatorType, ELastTimeUnit, EMarkdownDisplayMode, EMeasureAggregationTemplateName, EMeasureTemplateNames, EOuterAggregation, EProcessFilterNames, ESelectOptionTypes, ESimpleDataType, ESimpleInputType, ESortDirection, ESortingValueModes, ESystemRecordKey, ETransitionMeasureTemplateNames, EUnitMode, EViewMode, EViewOpenIn, EWidgetActionInputMethod, EWidgetFilterMode, EWidgetIndicatorType, EWidgetIndicatorValueModes, FormatSchema, FormattingSchema, MarkdownMeasureSchema, OuterAggregation, ParameterColumnListSchema, ParameterFromAggregationSchema, ParameterFromColumnSchema, ParameterFromDynamicListSchema, ParameterFromEndEventSchema, ParameterFromEventSchema, ParameterFromFormulaSchema, ParameterFromManualInputSchema, ParameterFromStartEventSchema, ParameterFromStaticListSchema, ParameterFromVariableSchema, ParameterTableListSchema, RangeSchema, ViewActionParameterSchema, ViewActionSchema, WidgetActionParameterSchema, WidgetActionSchema, WidgetColumnIndicatorSchema, WidgetDimensionHierarchySchema, WidgetDimensionSchema, WidgetIndicatorAggregationValueSchema, WidgetIndicatorConversionValue, WidgetIndicatorDurationValue, WidgetIndicatorSchema, WidgetIndicatorTimeValueSchema, WidgetMeasureSchema, WidgetSortingIndicatorSchema, 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, measureTemplateFormulas, parseClickHouseType, parseIndicatorLink, prepareConversionParams, prepareDimensionAggregationParams, prepareDurationParams, prepareFormulaForSql, prepareMeasureAggregationParams, prepareSortOrders, prepareTimeParams, prepareValuesForSql, replaceDisplayCondition, replaceFiltersBySelection, replaceHierarchiesWithDimensions, selectDimensionFromHierarchy, themeValueMetaKey, themed, timeTemplates, transitionMeasureTemplateFormulas, unescapeSpecialCharacters, updateDefaultModeSelection, updateSingleModeSelection, workspaceLinkRegExp };