@diia-inhouse/utils 4.13.0 → 5.3.1
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/LICENCE.md +59 -59
- package/dist/address.js +41 -0
- package/dist/address.js.map +1 -0
- package/dist/applicationUtils.js +260 -21
- package/dist/applicationUtils.js.map +1 -1
- package/dist/dictionaries/phoneCodes.js +487 -488
- package/dist/dictionaries/phoneCodes.js.map +1 -1
- package/dist/guards.js +25 -0
- package/dist/guards.js.map +1 -1
- package/dist/index.js +41 -15
- package/dist/index.js.map +1 -1
- package/dist/interfaces/applicationUtils.js +3 -0
- package/dist/interfaces/applicationUtils.js.map +1 -0
- package/dist/interfaces/error.js +3 -0
- package/dist/interfaces/error.js.map +1 -0
- package/dist/interfaces/slack.js +3 -0
- package/dist/interfaces/slack.js.map +1 -0
- package/dist/phoneticChecker/index.js +6 -4
- package/dist/phoneticChecker/index.js.map +1 -1
- package/dist/phoneticChecker/metaphone.js +0 -1
- package/dist/phoneticChecker/metaphone.js.map +1 -1
- package/dist/publicService.js +60 -17
- package/dist/publicService.js.map +1 -1
- package/dist/slackFormatting.js +24 -0
- package/dist/slackFormatting.js.map +1 -0
- package/dist/types/address.d.ts +4 -0
- package/dist/types/applicationUtils.d.ts +100 -3
- package/dist/types/dictionaries/phoneCodes.d.ts +1 -1
- package/dist/types/guards.d.ts +4 -1
- package/dist/types/index.d.ts +59 -1
- package/dist/types/interfaces/applicationUtils.d.ts +1 -0
- package/dist/types/interfaces/error.d.ts +7 -0
- package/dist/types/interfaces/publicService.d.ts +1 -0
- package/dist/types/interfaces/slack.d.ts +3 -0
- package/dist/types/phoneticChecker/index.d.ts +3 -2
- package/dist/types/publicService.d.ts +46 -3
- package/dist/types/slackFormatting.d.ts +7 -0
- package/package.json +33 -49
package/LICENCE.md
CHANGED
|
@@ -18,40 +18,40 @@ or has expressed by any other means his willingness to license under the EUPL.
|
|
|
18
18
|
|
|
19
19
|
In this Licence, the following terms have the following meaning:
|
|
20
20
|
|
|
21
|
-
-
|
|
21
|
+
- ‘The Licence’: this Licence.
|
|
22
22
|
|
|
23
|
-
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
- ‘The Original Work’: the work or software distributed or communicated by the
|
|
24
|
+
Licensor under this Licence, available as Source Code and also as Executable
|
|
25
|
+
Code as the case may be.
|
|
26
26
|
|
|
27
|
-
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
- ‘Derivative Works’: the works or software that could be created by the
|
|
28
|
+
Licensee, based upon the Original Work or modifications thereof. This Licence
|
|
29
|
+
does not define the extent of modification or dependence on the Original Work
|
|
30
|
+
required in order to classify a work as a Derivative Work; this extent is
|
|
31
|
+
determined by copyright law applicable in the country mentioned in Article 15.
|
|
32
32
|
|
|
33
|
-
-
|
|
33
|
+
- ‘The Work’: the Original Work or its Derivative Works.
|
|
34
34
|
|
|
35
|
-
-
|
|
36
|
-
|
|
35
|
+
- ‘The Source Code’: the human-readable form of the Work which is the most
|
|
36
|
+
convenient for people to study and modify.
|
|
37
37
|
|
|
38
|
-
-
|
|
39
|
-
|
|
38
|
+
- ‘The Executable Code’: any code which has generally been compiled and which is
|
|
39
|
+
meant to be interpreted by a computer as a program.
|
|
40
40
|
|
|
41
|
-
-
|
|
42
|
-
|
|
41
|
+
- ‘The Licensor’: the natural or legal person that distributes or communicates
|
|
42
|
+
the Work under the Licence.
|
|
43
43
|
|
|
44
|
-
-
|
|
45
|
-
|
|
44
|
+
- ‘Contributor(s)’: any natural or legal person who modifies the Work under the
|
|
45
|
+
Licence, or otherwise contributes to the creation of a Derivative Work.
|
|
46
46
|
|
|
47
|
-
-
|
|
48
|
-
|
|
47
|
+
- ‘The Licensee’ or ‘You’: any natural or legal person who makes any usage of
|
|
48
|
+
the Work under the terms of the Licence.
|
|
49
49
|
|
|
50
|
-
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
50
|
+
- ‘Distribution’ or ‘Communication’: any act of selling, giving, lending,
|
|
51
|
+
renting, distributing, communicating, transmitting, or otherwise making
|
|
52
|
+
available, online or offline, copies of the Work or providing access to its
|
|
53
|
+
essential functionalities at the disposal of any other natural or legal
|
|
54
|
+
person.
|
|
55
55
|
|
|
56
56
|
2. Scope of the rights granted by the Licence
|
|
57
57
|
|
|
@@ -59,15 +59,15 @@ The Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
|
|
|
59
59
|
sublicensable licence to do the following, for the duration of copyright vested
|
|
60
60
|
in the Original Work:
|
|
61
61
|
|
|
62
|
-
-
|
|
63
|
-
-
|
|
64
|
-
-
|
|
65
|
-
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
-
|
|
69
|
-
-
|
|
70
|
-
-
|
|
62
|
+
- use the Work in any circumstance and for all usage,
|
|
63
|
+
- reproduce the Work,
|
|
64
|
+
- modify the Work, and make Derivative Works based upon the Work,
|
|
65
|
+
- communicate to the public, including the right to make available or display
|
|
66
|
+
the Work or copies thereof to the public and perform publicly, as the case may
|
|
67
|
+
be, the Work,
|
|
68
|
+
- distribute the Work or copies thereof,
|
|
69
|
+
- lend and rent the Work or copies thereof,
|
|
70
|
+
- sublicense rights in the Work or copies thereof.
|
|
71
71
|
|
|
72
72
|
Those rights can be exercised on any media, supports and formats, whether now
|
|
73
73
|
known or later invented, as far as the applicable law permits so.
|
|
@@ -240,43 +240,43 @@ their choice.
|
|
|
240
240
|
|
|
241
241
|
Without prejudice to specific agreement between parties,
|
|
242
242
|
|
|
243
|
-
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
243
|
+
- any litigation resulting from the interpretation of this License, arising
|
|
244
|
+
between the European Union institutions, bodies, offices or agencies, as a
|
|
245
|
+
Licensor, and any Licensee, will be subject to the jurisdiction of the Court
|
|
246
|
+
of Justice of the European Union, as laid down in article 272 of the Treaty on
|
|
247
|
+
the Functioning of the European Union,
|
|
248
248
|
|
|
249
|
-
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
249
|
+
- any litigation arising between other parties and resulting from the
|
|
250
|
+
interpretation of this License, will be subject to the exclusive jurisdiction
|
|
251
|
+
of the competent court where the Licensor resides or conducts its primary
|
|
252
|
+
business.
|
|
253
253
|
|
|
254
254
|
15. Applicable Law
|
|
255
255
|
|
|
256
256
|
Without prejudice to specific agreement between parties,
|
|
257
257
|
|
|
258
|
-
-
|
|
259
|
-
|
|
258
|
+
- this Licence shall be governed by the law of the European Union Member State
|
|
259
|
+
where the Licensor has his seat, resides or has his registered office,
|
|
260
260
|
|
|
261
|
-
-
|
|
262
|
-
|
|
261
|
+
- this licence shall be governed by Belgian law if the Licensor has no seat,
|
|
262
|
+
residence or registered office inside a European Union Member State.
|
|
263
263
|
|
|
264
264
|
Appendix
|
|
265
265
|
|
|
266
266
|
‘Compatible Licences’ according to Article 5 EUPL are:
|
|
267
267
|
|
|
268
|
-
-
|
|
269
|
-
-
|
|
270
|
-
-
|
|
271
|
-
-
|
|
272
|
-
-
|
|
273
|
-
-
|
|
274
|
-
-
|
|
275
|
-
-
|
|
276
|
-
|
|
277
|
-
-
|
|
278
|
-
-
|
|
279
|
-
|
|
268
|
+
- GNU General Public License (GPL) v. 2, v. 3
|
|
269
|
+
- GNU Affero General Public License (AGPL) v. 3
|
|
270
|
+
- Open Software License (OSL) v. 2.1, v. 3.0
|
|
271
|
+
- Eclipse Public License (EPL) v. 1.0
|
|
272
|
+
- CeCILL v. 2.0, v. 2.1
|
|
273
|
+
- Mozilla Public Licence (MPL) v. 2
|
|
274
|
+
- GNU Lesser General Public Licence (LGPL) v. 2.1, v. 3
|
|
275
|
+
- Creative Commons Attribution-ShareAlike v. 3.0 Unported (CC BY-SA 3.0) for
|
|
276
|
+
works other than software
|
|
277
|
+
- European Union Public Licence (EUPL) v. 1.1, v. 1.2
|
|
278
|
+
- Québec Free and Open-Source Licence — Reciprocity (LiLiQ-R) or Strong
|
|
279
|
+
Reciprocity (LiLiQ-R+).
|
|
280
280
|
|
|
281
281
|
The European Commission may update this Appendix to later versions of the above
|
|
282
282
|
licences without producing a new version of the EUPL, as long as they provide
|
package/dist/address.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AddressUtils = void 0;
|
|
4
|
+
class AddressUtils {
|
|
5
|
+
// For details see https://uk.wikipedia.org/wiki/%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D0%BA%D0%BE%D0%B4%D1%96%D0%B2_%D0%9A%D0%9E%D0%90%D0%A2%D0%A3%D0%A3_%D0%B4%D0%BB%D1%8F_%D0%BE%D0%B1%D0%BB%D0%B0%D1%81%D1%82%D0%B5%D0%B9
|
|
6
|
+
regionAtuIdByCode = {
|
|
7
|
+
'01': 1, // Автономна Республіка Крим
|
|
8
|
+
'05': 2, // Вінницька область
|
|
9
|
+
'07': 3, // Волинська область
|
|
10
|
+
'12': 4, // Дніпропетровська область
|
|
11
|
+
'14': 5, // Донецька область
|
|
12
|
+
'18': 6, // Житомирська область
|
|
13
|
+
'21': 7, // Закарпатська область
|
|
14
|
+
'23': 8, // Запорізька область
|
|
15
|
+
'26': 9, // Івано-Франківська область
|
|
16
|
+
'32': 10, // Київська область
|
|
17
|
+
'35': 11, // Кіровоградська область
|
|
18
|
+
'44': 12, // Луганська область
|
|
19
|
+
'46': 13, // Львівська область
|
|
20
|
+
'48': 14, // Миколаївська область
|
|
21
|
+
'51': 15, // Одеська область
|
|
22
|
+
'53': 16, // Полтавська область
|
|
23
|
+
'56': 17, // Рівненська область
|
|
24
|
+
'59': 18, // Сумська область
|
|
25
|
+
'61': 19, // Тернопільська область
|
|
26
|
+
'63': 20, // Харківська область
|
|
27
|
+
'65': 21, // Херсонська область
|
|
28
|
+
'68': 22, // Хмельницька область
|
|
29
|
+
'71': 23, // Черкаська область
|
|
30
|
+
'73': 24, // Чернівецька область
|
|
31
|
+
'74': 25, // Чернігівська область
|
|
32
|
+
'80': 26, // Київ
|
|
33
|
+
'85': 27, // Севастополь
|
|
34
|
+
};
|
|
35
|
+
getRegionAtuIdByKatottgCode(katottgCode) {
|
|
36
|
+
const code = katottgCode.slice(2, 4);
|
|
37
|
+
return this.regionAtuIdByCode[code] ?? null;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.AddressUtils = AddressUtils;
|
|
41
|
+
//# sourceMappingURL=address.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address.js","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;IACrB,6NAA6N;IAC5M,iBAAiB,GAA2B;QACzD,IAAI,EAAE,CAAC,EAAE,4BAA4B;QACrC,IAAI,EAAE,CAAC,EAAE,oBAAoB;QAC7B,IAAI,EAAE,CAAC,EAAE,oBAAoB;QAC7B,IAAI,EAAE,CAAC,EAAE,2BAA2B;QACpC,IAAI,EAAE,CAAC,EAAE,mBAAmB;QAC5B,IAAI,EAAE,CAAC,EAAE,sBAAsB;QAC/B,IAAI,EAAE,CAAC,EAAE,uBAAuB;QAChC,IAAI,EAAE,CAAC,EAAE,qBAAqB;QAC9B,IAAI,EAAE,CAAC,EAAE,4BAA4B;QACrC,IAAI,EAAE,EAAE,EAAE,mBAAmB;QAC7B,IAAI,EAAE,EAAE,EAAE,yBAAyB;QACnC,IAAI,EAAE,EAAE,EAAE,oBAAoB;QAC9B,IAAI,EAAE,EAAE,EAAE,oBAAoB;QAC9B,IAAI,EAAE,EAAE,EAAE,uBAAuB;QACjC,IAAI,EAAE,EAAE,EAAE,kBAAkB;QAC5B,IAAI,EAAE,EAAE,EAAE,qBAAqB;QAC/B,IAAI,EAAE,EAAE,EAAE,qBAAqB;QAC/B,IAAI,EAAE,EAAE,EAAE,kBAAkB;QAC5B,IAAI,EAAE,EAAE,EAAE,wBAAwB;QAClC,IAAI,EAAE,EAAE,EAAE,qBAAqB;QAC/B,IAAI,EAAE,EAAE,EAAE,qBAAqB;QAC/B,IAAI,EAAE,EAAE,EAAE,sBAAsB;QAChC,IAAI,EAAE,EAAE,EAAE,oBAAoB;QAC9B,IAAI,EAAE,EAAE,EAAE,sBAAsB;QAChC,IAAI,EAAE,EAAE,EAAE,uBAAuB;QACjC,IAAI,EAAE,EAAE,EAAE,OAAO;QACjB,IAAI,EAAE,EAAE,EAAE,cAAc;KAC3B,CAAA;IAED,2BAA2B,CAAC,WAAmB;QAC3C,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAEpC,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAA;IAC/C,CAAC;CACJ;AArCD,oCAqCC"}
|
package/dist/applicationUtils.js
CHANGED
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.ApplicationUtils = void 0;
|
|
7
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
8
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
4
9
|
const compare_versions_1 = require("compare-versions");
|
|
5
10
|
const lodash_1 = require("lodash");
|
|
6
11
|
const luxon_1 = require("luxon");
|
|
12
|
+
const map_age_cleaner_1 = __importDefault(require("map-age-cleaner"));
|
|
7
13
|
const errors_1 = require("@diia-inhouse/errors");
|
|
8
14
|
const types_1 = require("@diia-inhouse/types");
|
|
9
15
|
class ApplicationUtils {
|
|
@@ -101,18 +107,19 @@ class ApplicationUtils {
|
|
|
101
107
|
if (!name) {
|
|
102
108
|
return '';
|
|
103
109
|
}
|
|
104
|
-
const
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
.join('')
|
|
110
|
+
const loweredNameParts = name.toLowerCase().split(' ');
|
|
111
|
+
if (loweredNameParts.length === 1) {
|
|
112
|
+
const [namePart] = loweredNameParts;
|
|
113
|
+
if (this.nameComponentsToLowerCase.includes(namePart)) {
|
|
114
|
+
return this.capitalizeFirstLetter(namePart);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
return loweredNameParts
|
|
118
|
+
.map((word) => word
|
|
119
|
+
.split('-')
|
|
120
|
+
.map((namePart) => this.nameComponentsToLowerCase.includes(namePart) ? namePart : this.capitalizeFirstLetter(namePart))
|
|
121
|
+
.join('-'))
|
|
122
|
+
.join(' ');
|
|
116
123
|
}
|
|
117
124
|
static capitalizeFirstLetter(str) {
|
|
118
125
|
if (typeof str !== 'string') {
|
|
@@ -139,6 +146,9 @@ class ApplicationUtils {
|
|
|
139
146
|
.map((char) => latinToCyrillic.get(char) || char)
|
|
140
147
|
.join('');
|
|
141
148
|
}
|
|
149
|
+
/**
|
|
150
|
+
* Validates the Ukrainian IBAN number by format and checksum.
|
|
151
|
+
*/
|
|
142
152
|
static isIbanNumberValid(iban) {
|
|
143
153
|
const CODE_LENGTHS = {
|
|
144
154
|
UA: 29,
|
|
@@ -153,6 +163,18 @@ class ApplicationUtils {
|
|
|
153
163
|
});
|
|
154
164
|
return this.mod97(digits) === 1;
|
|
155
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* Extracts the bank code (МФО) from Ukrainian IBAN (4-10 digits). Does not validate the IBAN.
|
|
168
|
+
*
|
|
169
|
+
* @link https://en.wikipedia.org/wiki/International_Bank_Account_Number#IBAN_formats_by_country
|
|
170
|
+
* @example
|
|
171
|
+
* ```typescript
|
|
172
|
+
* const bankCode = extractBankCodeFromIban('UA833052991234567890123456789') // '305299'
|
|
173
|
+
* ```
|
|
174
|
+
*/
|
|
175
|
+
static extractBankCodeFromIban(iban) {
|
|
176
|
+
return iban.slice(4, 10);
|
|
177
|
+
}
|
|
156
178
|
static getStreetName(street, streetType) {
|
|
157
179
|
if (!street) {
|
|
158
180
|
return '';
|
|
@@ -206,9 +228,6 @@ class ApplicationUtils {
|
|
|
206
228
|
case types_1.SessionType.EResidentApplicant: {
|
|
207
229
|
return { sessionType, user: data };
|
|
208
230
|
}
|
|
209
|
-
case types_1.SessionType.CabinetUser: {
|
|
210
|
-
return { sessionType, user: data };
|
|
211
|
-
}
|
|
212
231
|
case types_1.SessionType.Acquirer: {
|
|
213
232
|
return { sessionType, acquirer: data };
|
|
214
233
|
}
|
|
@@ -244,17 +263,21 @@ class ApplicationUtils {
|
|
|
244
263
|
* Get age from birth date. Powered by {@link https://moment.github.io/luxon/#/ luxon}
|
|
245
264
|
*
|
|
246
265
|
* @param birthDay Input birth date.
|
|
247
|
-
* @param
|
|
248
|
-
* @param
|
|
266
|
+
* @param params Additional parameters. Default: `{ format: 'dd.MM.yyyy', unitOfTime: 'years' }`
|
|
267
|
+
* @param params.format Input date format (https://moment.github.io/luxon/#/formatting?id=table-of-tokens). Default - 'dd.MM.yyyy'
|
|
268
|
+
* @param params.unitOfTime Unit of time to get the difference in. Default - 'years'
|
|
269
|
+
* @param params.relativeTo Date to compare the input date to. Default - current date
|
|
249
270
|
*
|
|
250
271
|
* @returns Age in years if other `unitOfTime` is not specified
|
|
251
272
|
* @throws If input date is invalid
|
|
252
273
|
*/
|
|
253
|
-
static getAge(birthDay,
|
|
274
|
+
static getAge(birthDay, params = {}) {
|
|
275
|
+
const { format = 'dd.MM.yyyy', unitOfTime = 'years', relativeTo } = params;
|
|
254
276
|
const birthdayDate = luxon_1.DateTime.fromFormat(birthDay, format);
|
|
255
277
|
if (!birthdayDate.isValid) {
|
|
256
278
|
throw new Error('Invalid user birthday');
|
|
257
279
|
}
|
|
280
|
+
const fromDate = relativeTo ? luxon_1.DateTime.fromISO(relativeTo) : luxon_1.DateTime.now();
|
|
258
281
|
/* Added an array of "units" with milliseconds to ensure that all larger unit values are integers.
|
|
259
282
|
For instance:
|
|
260
283
|
birthDay = '24.03.2009'
|
|
@@ -264,7 +287,7 @@ class ApplicationUtils {
|
|
|
264
287
|
DateTime.now().diff(birthdayDate, ['years', 'milliseconds'])['years'] => 14
|
|
265
288
|
DateTime.now().diff(birthdayDate, ['months', 'milliseconds'])['months'] => 168
|
|
266
289
|
*/
|
|
267
|
-
return
|
|
290
|
+
return fromDate.diff(birthdayDate, [unitOfTime, 'milliseconds'])[unitOfTime];
|
|
268
291
|
}
|
|
269
292
|
static getFullName(lastName, firstName, middleName, separator = ' ') {
|
|
270
293
|
return [lastName, firstName, middleName].filter(Boolean).join(separator).trim();
|
|
@@ -422,6 +445,169 @@ class ApplicationUtils {
|
|
|
422
445
|
}
|
|
423
446
|
}
|
|
424
447
|
}
|
|
448
|
+
/**
|
|
449
|
+
* Returns the name of a service from a package.json in the current working directory (process.cwd()) converted to PascalCase.
|
|
450
|
+
* If the name is scoped, it will be returned without the scope.
|
|
451
|
+
* If the name is not found, an empty string is returned. Also, all whitespace characters are removed.
|
|
452
|
+
*
|
|
453
|
+
* @returns The name of the service in PascalCase.
|
|
454
|
+
*
|
|
455
|
+
* @example
|
|
456
|
+
* getServiceName() // 'my-service' -> 'MyService'
|
|
457
|
+
* getServiceName() // '@scope/my-service' -> 'MyService'
|
|
458
|
+
*/
|
|
459
|
+
static getServiceName() {
|
|
460
|
+
try {
|
|
461
|
+
const packageName = this.getPackageJson().name || '';
|
|
462
|
+
let nameWithoutScope = packageName;
|
|
463
|
+
if (packageName.startsWith('@')) {
|
|
464
|
+
const parts = packageName.split('/');
|
|
465
|
+
if (parts.length > 1) {
|
|
466
|
+
nameWithoutScope = parts[1];
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
return (0, lodash_1.startCase)((0, lodash_1.camelCase)(nameWithoutScope)).replaceAll(/\s/g, '');
|
|
470
|
+
}
|
|
471
|
+
catch {
|
|
472
|
+
return '';
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Returns the version of a service from a package.json in the current working directory (process.cwd()).
|
|
477
|
+
* If the version is not found, an empty string is returned.
|
|
478
|
+
*
|
|
479
|
+
* @returns The version of the service.
|
|
480
|
+
*
|
|
481
|
+
* @example
|
|
482
|
+
* getServiceVersion() // '1.143.0-rc.2'
|
|
483
|
+
*/
|
|
484
|
+
static getServiceVersion() {
|
|
485
|
+
try {
|
|
486
|
+
const packageJson = this.getPackageJson();
|
|
487
|
+
return packageJson.version || '';
|
|
488
|
+
}
|
|
489
|
+
catch {
|
|
490
|
+
return '';
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
/**
|
|
494
|
+
* Format string according to mask pattern
|
|
495
|
+
*
|
|
496
|
+
* Basic Examples:
|
|
497
|
+
* '12345' with '##-###' -> '12-345'
|
|
498
|
+
* 'AB345' with '##-###' -> 'AB-345'
|
|
499
|
+
* '123456' with '##.####' -> '12.3456'
|
|
500
|
+
* '12345' with '### ##' -> '123 45'
|
|
501
|
+
* 'ABCDEF' with '##-##-##' -> 'AB-CD-EF'
|
|
502
|
+
*/
|
|
503
|
+
static formatMask(rawData, mask) {
|
|
504
|
+
if (!rawData || !mask) {
|
|
505
|
+
return rawData;
|
|
506
|
+
}
|
|
507
|
+
let result = '';
|
|
508
|
+
let dataIndex = 0;
|
|
509
|
+
for (const element of mask) {
|
|
510
|
+
if (dataIndex >= rawData.length) {
|
|
511
|
+
break;
|
|
512
|
+
}
|
|
513
|
+
if (element === '#') {
|
|
514
|
+
result += rawData[dataIndex];
|
|
515
|
+
dataIndex++;
|
|
516
|
+
}
|
|
517
|
+
else {
|
|
518
|
+
result += element;
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
result += rawData.slice(dataIndex);
|
|
522
|
+
return result;
|
|
523
|
+
}
|
|
524
|
+
/**
|
|
525
|
+
* Memoize a function.
|
|
526
|
+
* The function is memoized by the arguments (`JSON.stringify(args)`) and the result is cached for the specified time to live in milliseconds.
|
|
527
|
+
* If the function is called with the same arguments again, the cached result is returned.
|
|
528
|
+
* If the function is called with the same arguments again after the time to live has expired, the function is called again and the result is cached again.
|
|
529
|
+
*
|
|
530
|
+
* @param fn - The function to memoize.
|
|
531
|
+
* @param ttl - The time to live for the cached value in milliseconds.
|
|
532
|
+
* @returns The memoized function.
|
|
533
|
+
*/
|
|
534
|
+
static memoize(fn, ttl = Infinity) {
|
|
535
|
+
const promiseCache = new Map();
|
|
536
|
+
const cache = new Map();
|
|
537
|
+
(0, map_age_cleaner_1.default)(cache);
|
|
538
|
+
const memoized = (async (...args) => {
|
|
539
|
+
const key = JSON.stringify(args);
|
|
540
|
+
const cachedPromise = promiseCache.get(key);
|
|
541
|
+
if (cachedPromise) {
|
|
542
|
+
return cachedPromise;
|
|
543
|
+
}
|
|
544
|
+
const cachedValue = cache.get(key);
|
|
545
|
+
if (cachedValue) {
|
|
546
|
+
return cachedValue.data;
|
|
547
|
+
}
|
|
548
|
+
try {
|
|
549
|
+
const promise = fn(...args);
|
|
550
|
+
promiseCache.set(key, promise);
|
|
551
|
+
const result = await promise;
|
|
552
|
+
cache.set(key, { data: result, maxAge: Date.now() + ttl });
|
|
553
|
+
return result;
|
|
554
|
+
}
|
|
555
|
+
finally {
|
|
556
|
+
promiseCache.delete(key);
|
|
557
|
+
}
|
|
558
|
+
});
|
|
559
|
+
return memoized;
|
|
560
|
+
}
|
|
561
|
+
/**
|
|
562
|
+
* Recursively encodes all string values in an object or string using encodeURIComponent.
|
|
563
|
+
* For objects, it creates a deep clone and processes all string values.
|
|
564
|
+
* For strings, it directly applies the encoding.
|
|
565
|
+
*
|
|
566
|
+
* @param data Input data to encode - can be an object or string
|
|
567
|
+
* @returns Deep cloned object with encoded string values, or encoded string if input was string
|
|
568
|
+
* @example
|
|
569
|
+
* ```typescript
|
|
570
|
+
* const data = { name: 'John Doe', email: 'john@example.com' }
|
|
571
|
+
* const encoded = ApplicationUtils.encodeValuesWithIterator(data)
|
|
572
|
+
* // Result: { name: 'John%20Doe', email: 'john%40example.com' }
|
|
573
|
+
* ```
|
|
574
|
+
*/
|
|
575
|
+
static encodeValuesWithIterator(data) {
|
|
576
|
+
return this.processValues(data, encodeURIComponent);
|
|
577
|
+
}
|
|
578
|
+
/**
|
|
579
|
+
* Recursively decodes all string values in an object or string using decodeURIComponent.
|
|
580
|
+
* For objects, it creates a deep clone and processes all string values.
|
|
581
|
+
* For strings, it directly applies the decoding.
|
|
582
|
+
*
|
|
583
|
+
* @param data Input data to decode - can be an object or string
|
|
584
|
+
* @returns Deep cloned object with decoded string values, or decoded string if input was string
|
|
585
|
+
* @example
|
|
586
|
+
* ```typescript
|
|
587
|
+
* const data = { name: 'John%20Doe', email: 'john%40example.com' }
|
|
588
|
+
* const decoded = ApplicationUtils.decodeValuesWithIterator(data)
|
|
589
|
+
* // Result: { name: 'John Doe', email: 'john@example.com' }
|
|
590
|
+
* ```
|
|
591
|
+
*/
|
|
592
|
+
static decodeValuesWithIterator(data) {
|
|
593
|
+
return this.processValues(data, decodeURIComponent);
|
|
594
|
+
}
|
|
595
|
+
static removeUnderscoreFields(value) {
|
|
596
|
+
if (Array.isArray(value)) {
|
|
597
|
+
return value.map((item) => this.removeUnderscoreFields(item));
|
|
598
|
+
}
|
|
599
|
+
if (typeof value === 'object' && value !== null) {
|
|
600
|
+
const objectField = {};
|
|
601
|
+
for (const key in value) {
|
|
602
|
+
if (!key.startsWith('_')) {
|
|
603
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
604
|
+
objectField[key] = this.removeUnderscoreFields(value[key]);
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
return objectField;
|
|
608
|
+
}
|
|
609
|
+
return value;
|
|
610
|
+
}
|
|
425
611
|
static mod97(string) {
|
|
426
612
|
let checksum = string.slice(0, 2);
|
|
427
613
|
let fragment;
|
|
@@ -432,8 +618,61 @@ class ApplicationUtils {
|
|
|
432
618
|
return checksum;
|
|
433
619
|
}
|
|
434
620
|
static toApiError(err) {
|
|
435
|
-
const { type, code, message, data } = err;
|
|
436
|
-
|
|
621
|
+
const { type, code, message, data = {}, keyValue } = err;
|
|
622
|
+
const processCode = data.processCode;
|
|
623
|
+
if (code === 11000 && keyValue) {
|
|
624
|
+
data.keyValue = keyValue;
|
|
625
|
+
}
|
|
626
|
+
return new errors_1.ApiError(message, code || types_1.HttpStatusCode.INTERNAL_SERVER_ERROR, data, processCode, type);
|
|
627
|
+
}
|
|
628
|
+
static getPackageJson() {
|
|
629
|
+
const packageJsonPath = node_path_1.default.resolve(process.cwd(), 'package.json');
|
|
630
|
+
// eslint-disable-next-line security/detect-non-literal-fs-filename
|
|
631
|
+
return JSON.parse(node_fs_1.default.readFileSync(packageJsonPath, 'utf8')); // nosemgrep: eslint.detect-non-literal-fs-filename
|
|
632
|
+
}
|
|
633
|
+
static processObject(obj, processor) {
|
|
634
|
+
if (typeof obj === 'string') {
|
|
635
|
+
try {
|
|
636
|
+
return processor(obj);
|
|
637
|
+
}
|
|
638
|
+
catch {
|
|
639
|
+
return obj;
|
|
640
|
+
}
|
|
641
|
+
}
|
|
642
|
+
if (Array.isArray(obj)) {
|
|
643
|
+
return obj.map((item) => {
|
|
644
|
+
return this.processObject(item, processor);
|
|
645
|
+
});
|
|
646
|
+
}
|
|
647
|
+
if (obj && typeof obj === 'object') {
|
|
648
|
+
if (obj instanceof Date ||
|
|
649
|
+
obj instanceof RegExp ||
|
|
650
|
+
obj instanceof Map ||
|
|
651
|
+
obj instanceof Set ||
|
|
652
|
+
obj instanceof Error ||
|
|
653
|
+
obj instanceof URL ||
|
|
654
|
+
obj instanceof URLSearchParams) {
|
|
655
|
+
return obj;
|
|
656
|
+
}
|
|
657
|
+
const result = {};
|
|
658
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
659
|
+
result[key] = this.processObject(value, processor);
|
|
660
|
+
}
|
|
661
|
+
return result;
|
|
662
|
+
}
|
|
663
|
+
return obj;
|
|
664
|
+
}
|
|
665
|
+
static processValues(data, processor) {
|
|
666
|
+
if (typeof data === 'string') {
|
|
667
|
+
try {
|
|
668
|
+
return processor(data);
|
|
669
|
+
}
|
|
670
|
+
catch {
|
|
671
|
+
return data;
|
|
672
|
+
}
|
|
673
|
+
}
|
|
674
|
+
const clonedData = (0, lodash_1.cloneDeep)(data);
|
|
675
|
+
return this.processObject(clonedData, processor);
|
|
437
676
|
}
|
|
438
677
|
}
|
|
439
678
|
exports.ApplicationUtils = ApplicationUtils;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applicationUtils.js","sourceRoot":"","sources":["../src/applicationUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"applicationUtils.js","sourceRoot":"","sources":["../src/applicationUtils.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAwB;AACxB,0DAA4B;AAE5B,uDAA0C;AAC1C,mCAAmE;AACnE,iCAAgD;AAChD,sEAA2C;AAG3C,iDAAgE;AAChE,+CAe4B;AAK5B,MAAa,gBAAgB;IACjB,MAAM,CAAC,iCAAiC,GAA2B;QACvE,CAAC,iBAAiB,CAAC,EAAE,aAAa;QAClC,CAAC,mBAAmB,CAAC,EAAE,QAAQ;KAClC,CAAA;IAEO,MAAM,CAAC,iCAAiC,GAA2B;QACvE,CAAC,aAAa,CAAC,EAAE,iBAAiB;QAClC,CAAC,QAAQ,CAAC,EAAE,mBAAmB;KAClC,CAAA;IAEO,MAAM,CAAC,cAAc,GAAG,YAAY,CAAA;IAEpC,MAAM,CAAC,aAAa,GAAG,YAAY,CAAA;IAEnC,MAAM,CAAU,eAAe,GAAwB,IAAI,GAAG,CAAC;QACnE,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,GAAG,CAAC;KACb,CAAC,CAAA;IAEM,MAAM,CAAU,yBAAyB,GAAG;QAChD,MAAM;QACN,MAAM;QACN,MAAM;QACN,MAAM;QACN,KAAK;QACL,KAAK;QACL,MAAM;QACN,KAAK;QACL,KAAK;QACL,OAAO;QACP,MAAM;QACN,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,KAAK;QACL,IAAI;KACP,CAAA;IAED,MAAM,CAAC,uBAAuB,CAAC,YAAoB;QAC/C,OAAO,gBAAgB,CAAC,iCAAiC,CAAC,YAAY,CAAC,IAAI,IAAA,kBAAS,EAAC,YAAY,CAAC,CAAA;IACtG,CAAC;IAED,MAAM,CAAC,uBAAuB,CAAC,qBAA6B;QACxD,OAAO,gBAAgB,CAAC,iCAAiC,CAAC,qBAAqB,CAAC,IAAI,IAAA,kBAAS,EAAC,qBAAqB,CAAC,CAAA;IACxH,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,GAAW;QACjC,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACpB,OAAO,KAAK,CAAA;QAChB,CAAC;QAED,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAE9C,MAAM,MAAM,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACnC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACnE,MAAM,YAAY,GAAG,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;QACrE,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAE1B,OAAO,IAAI,KAAK,YAAY,CAAA;IAChC,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,GAAW;QACjC,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACpB,OAAO,EAAE,CAAA;QACb,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAEjD,OAAO,gBAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACnH,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,GAAW;QAC/B,OAAO,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAM,CAAC,MAAM,CAAC,CAAC,CAAC,cAAM,CAAC,IAAI,CAAA;IACrE,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,GAAW;QAC/B,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACnE,OAAO,KAAK,CAAA;QAChB,CAAC;QAED,OAAO,IAAI,CAAA;IACf,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,IAA+B;QACjD,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,EAAE,CAAA;QACb,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACtD,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAA;YAEnC,IAAI,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpD,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAA;YAC/C,CAAC;QACL,CAAC;QAED,OAAO,gBAAgB;aAClB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACV,IAAI;aACC,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CACd,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CACtG;aACA,IAAI,CAAC,GAAG,CAAC,CACjB;aACA,IAAI,CAAC,GAAG,CAAC,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,qBAAqB,CAAC,GAAW;QACpC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAA;QACb,CAAC;QAED,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAC1D,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,GAAW;QAC/B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAA;QACb,CAAC;QAED,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAC1D,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,KAAa;QAC5B,OAAO,KAAK;aACP,KAAK,CAAC,EAAE,CAAC;aACT,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;aAC7D,IAAI,CAAC,EAAE,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,KAAa;QACzB,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QAEjG,OAAO,KAAK;aACP,KAAK,CAAC,EAAE,CAAC;aACT,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;aACxD,IAAI,CAAC,EAAE,CAAC,CAAA;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAY;QACjC,MAAM,YAAY,GAA2B;YACzC,EAAE,EAAE,EAAE;SACT,CAAA;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,OAAO,KAAK,CAAA;QAChB,CAAC;QAED,MAAM,MAAM,GAAW,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,MAAc,EAAE,EAAE;YACzF,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;YAExC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;QAC5E,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,uBAAuB,CAAC,IAAY;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC5B,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,MAAc,EAAE,UAAkB;QACnD,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO,EAAE,CAAA;QACb,CAAC;QAED,OAAO,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;IACjE,CAAC;IAED,MAAM,CAAC,2BAA2B,CAAC,WAAyB,EAAE,WAAyB;QACnF,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;YACvB,MAAM,IAAI,wBAAe,CAAC,6BAA6B,CAAC,CAAA;QAC5D,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;QACjF,CAAC;QAED,MAAM,SAAS,GAAgB,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC/F,MAAM,mBAAmB,GAAwB,IAAI,GAAG,EAAE,CAAA;QAC1D,MAAM,UAAU,GAAa,EAAE,CAAA;QAE/B,KAAK,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,mDAAmD,IAAI,EAAE,CAAC,CAAA;YAC9E,CAAC;YAED,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;YACxC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAC9B,CAAC;QAED,MAAM,yBAAyB,GAAG,WAAW,CAAC,GAAG,CAA0B,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;YACpG,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAE;SAChD,CAAC,CAAC,CAAA;QAEH,OAAO,CAAC,yBAAyB,EAAE,UAAU,CAAC,CAAA;IAClD,CAAC;IAED,MAAM,CAAC,WAAW,CAAY,GAAY,EAAE,EAAwB;QAChE,IAAI,GAAG,YAAY,iBAAQ,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;QAClB,CAAC;QAED,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;YACvB,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,OAAO,GAAG,4BAA4B,GAAG,EAAE,CAAA;QACjD,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;QAEvC,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAAe;QAC9B,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAA;QAC5B,QAAQ,WAAW,EAAE,CAAC;YAClB,KAAK,mBAAW,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpB,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;YACtC,CAAC;YACD,KAAK,mBAAW,CAAC,SAAS,CAAC,CAAC,CAAC;gBACzB,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;YACtC,CAAC;YACD,KAAK,mBAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC;gBAClC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;YACtC,CAAC;YACD,KAAK,mBAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxB,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;YAC1C,CAAC;YACD,KAAK,mBAAW,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC1B,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;YACtC,CAAC;YACD,KAAK,mBAAW,CAAC,OAAO,CAAC,CAAC,CAAC;gBACvB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;YACzC,CAAC;YACD,KAAK,mBAAW,CAAC,SAAS,CAAC,CAAC,CAAC;gBACzB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;YAC3C,CAAC;YACD,KAAK,mBAAW,CAAC,eAAe,CAAC,CAAC,CAAC;gBAC/B,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;YAC1C,CAAC;YACD,KAAK,mBAAW,CAAC,WAAW,CAAC,CAAC,CAAC;gBAC3B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,CAAA;YAC7C,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACN,MAAM,aAAa,GAAU,WAAW,CAAA;gBAExC,MAAM,IAAI,SAAS,CAAC,0BAA0B,aAAa,EAAE,CAAC,CAAA;YAClE,CAAC;QACL,CAAC;IACL,CAAC;IAED,MAAM,CAAC,wBAAwB,CAAC,UAAkB,EAAE,gBAA+B,qBAAa,CAAC,EAAE;QAC/F,OAAO,GAAG,UAAU,IAAI,aAAa,EAAE,CAAA;IAC3C,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,KAAa,EAAE,SAAmB;QACjD,MAAM,IAAI,GAAG,YAAY,KAAK,EAAE,CAAA;QAEhC,OAAO,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAA;IAChD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,MAAM,CAAC,QAAgB,EAAE,SAAgF,EAAE;QAC9G,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,UAAU,GAAG,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CAAA;QAE1E,MAAM,YAAY,GAAG,gBAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAC1D,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;QAC5C,CAAC;QAED,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,gBAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,gBAAQ,CAAC,GAAG,EAAE,CAAA;QAE3E;;;;;;;;UAQE;QACF,OAAO,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;IAChF,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,QAAgB,EAAE,SAAiB,EAAE,UAAmB,EAAE,SAAS,GAAG,GAAG;QACxF,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAA;IACnF,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,QAAgB,EAAE,SAAiB,EAAE,UAAmB;QACxE,MAAM,eAAe,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QAEnF,OAAO,GAAG,QAAQ,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,eAAe,EAAE,CAAC,IAAI,EAAE,CAAA;IACvF,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAmB;QACtC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;QAEpC,OAAO,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAA;IACpD,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAC,EACvB,UAAU,EACV,WAAW,EACX,YAAY,GAKf;QACG,OAAO,GAAG,UAAU,IAAI,WAAW,IAAI,YAAY,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAA;IACtE,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,EACpB,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,GAO7C;QACG,OAAO,GAAG,QAAQ,IAAI,SAAS,IAAI,UAAU,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAA;IAChE,CAAC;IAED,MAAM,CAAC,oBAAoB,CAAI,MAAS;QACpC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACjE,CAAC;IAED,MAAM,CAAC,sBAAsB,CAAI,aAAqB;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;IACtE,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,UAAU,CAAC,IAAmB,EAAE,MAAc,EAAE,UAAU,GAAG,YAAY;QAC5E,MAAM,aAAa,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,gBAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QAE9G,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAA;QAEpE,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,mBAAmB,aAAa,KAAK,kBAAkB,EAAE,CAAC,CAAA;QAC9E,CAAC;QAED,OAAO,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC5D,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,YAAY,CAAC,IAAY,EAAE,MAAM,GAAG,YAAY;QACnD,MAAM,UAAU,GAAG,gBAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAEpD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,wBAAe,CAAC,iBAAiB,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC,kBAAkB,EAAE,CAAC,CAAA;QAC3G,CAAC;IACL,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,QAAgB,EAAE,SAAS,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG;QACpE,OAAO,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,wCAAwC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;IAC9H,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,kCAAkC,CAAC,MAAc,EAAE,KAAc,EAAE,qBAA8B;QACpG,2IAA2I;QAC3I,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;QAErH,OAAO,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;IAChD,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,MAAc;QAClC,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,CAAA;IAChD,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,MAAc;QACpC,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,CAAA;IAChD,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAAc,EAAE,UAAkB,EAAE,aAAsB;QACzE,MAAM,aAAa,GAAW,CAAC,MAAM,GAAG,GAAG,GAAG,UAAU,CAAC,GAAG,GAAG,CAAA;QAE/D,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,aAAa,CAAC,CAAA;IAC7D,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,MAAc,EAAE,aAAa,GAAG,CAAC;QACpD,OAAO,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,MAAM,CAAC,mBAAmB,CACtB,KAAU,EACV,OAAoE;QAEpE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QAClD,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAA;QAChB,CAAC;QAED,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;YACpC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,OAAO,IAAI,CAAA;YACf,CAAC;YAED,OAAO,gBAAgB,CAAC,iBAAiB,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;QACpF,CAAC,CAAC,CAAA;IACN,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,UAAkB,EAAE,YAA0B,EAAE,WAAwB;QAC7F,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,0BAAO,EAAC,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7F,OAAO,IAAI,CAAA;QACf,CAAC;QAED,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,CAAA;QACzD,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,CAAA;QACzD,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,IAAA,0BAAO,EAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,IAAA,0BAAO,EAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;gBACjF,OAAO,IAAI,CAAA;YACf,CAAC;YAED,OAAO,KAAK,CAAA;QAChB,CAAC;QAED,IAAI,UAAU,IAAI,IAAA,0BAAO,EAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;YACtD,OAAO,IAAI,CAAA;QACf,CAAC;QAED,IAAI,UAAU,IAAI,IAAA,0BAAO,EAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;YACtD,OAAO,IAAI,CAAA;QACf,CAAC;QAED,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAAY,EAAE,EAAU,EAAE,eAAwB,EAAE,OAAgB;QACnF,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvG,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,KAAa;QAC/B,OAAO,KAAK,CAAC,UAAU,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAA;IACpD,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,MAAM,CAAC,eAAe,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW,EAAE,IAAY,EAAE,KAAc,EAAE,MAAM,GAAG,IAAI;QACvG,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAE1C,QAAQ,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,KAAK,KAAK,CAAC,CAAC,CAAC;gBACT,OAAO,GAAG,CAAA;YACd,CAAC;YACD,KAAK,KAAK,CAAC,CAAC,CAAC;gBACT,OAAO,GAAG,CAAA;YACd,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACV,OAAO,IAAI,CAAA;YACf,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACN,OAAO,KAAK,IAAI,IAAI,CAAA;YACxB,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,cAAc;QACjB,IAAI,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,IAAI,EAAE,CAAA;YAEpD,IAAI,gBAAgB,GAAG,WAAW,CAAA;YAClC,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACnB,gBAAgB,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;gBAC/B,CAAC;YACL,CAAC;YAED,OAAO,IAAA,kBAAS,EAAC,IAAA,kBAAS,EAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACvE,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,EAAE,CAAA;QACb,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,iBAAiB;QACpB,IAAI,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;YAEzC,OAAO,WAAW,CAAC,OAAO,IAAI,EAAE,CAAA;QACpC,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,EAAE,CAAA;QACb,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,UAAU,CAAC,OAAe,EAAE,IAAY;QAC3C,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;YACpB,OAAO,OAAO,CAAA;QAClB,CAAC;QAED,IAAI,MAAM,GAAG,EAAE,CAAA;QACf,IAAI,SAAS,GAAG,CAAC,CAAA;QAEjB,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;YACzB,IAAI,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC9B,MAAK;YACT,CAAC;YAED,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;gBAClB,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC,CAAA;gBAC5B,SAAS,EAAE,CAAA;YACf,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,OAAO,CAAA;YACrB,CAAC;QACL,CAAC;QAED,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAElC,OAAO,MAAM,CAAA;IACjB,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,OAAO,CAAsD,EAAK,EAAE,GAAG,GAAG,QAAQ;QACrF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAA;QACrD,MAAM,KAAK,GAAG,IAAI,GAAG,EAA4E,CAAA;QAEjG,IAAA,yBAAa,EAAC,KAAK,CAAC,CAAA;QAEpB,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE;YAChC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YAChC,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAC3C,IAAI,aAAa,EAAE,CAAC;gBAChB,OAAO,aAAa,CAAA;YACxB,CAAC;YAED,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAClC,IAAI,WAAW,EAAE,CAAC;gBACd,OAAO,WAAW,CAAC,IAAI,CAAA;YAC3B,CAAC;YAED,IAAI,CAAC;gBACD,MAAM,OAAO,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;gBAE3B,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;gBAC9B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAA;gBAE5B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,CAAA;gBAE1D,OAAO,MAAM,CAAA;YACjB,CAAC;oBAAS,CAAC;gBACP,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC;QACL,CAAC,CAAM,CAAA;QAEP,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,wBAAwB,CAAC,IAAqB;QACjD,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;IACvD,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,wBAAwB,CAAC,IAAqB;QACjD,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,CAAC,sBAAsB,CAAI,KAAQ;QACrC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAM,CAAA;QACtE,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC9C,MAAM,WAAW,GAA4B,EAAE,CAAA;YAC/C,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;gBACtB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACvB,8DAA8D;oBAC9D,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAE,KAAa,CAAC,GAAG,CAAC,CAAC,CAAA;gBACvE,CAAC;YACL,CAAC;YAED,OAAO,WAAgB,CAAA;QAC3B,CAAC;QAED,OAAO,KAAK,CAAA;IAChB,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,MAAc;QAC/B,IAAI,QAAQ,GAAoB,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAClD,IAAI,QAAgB,CAAA;QACpB,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;YACvD,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAA;YAC9D,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,CAAA;QACjD,CAAC;QAED,OAAO,QAAkB,CAAA;IAC7B,CAAC;IAEO,MAAM,CAAC,UAAU,CAAC,GAAgB;QACtC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAA;QACxD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;QAEpC,IAAI,IAAI,KAAK,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QAC5B,CAAC;QAED,OAAO,IAAI,iBAAQ,CAAC,OAAO,EAAE,IAAI,IAAI,sBAAc,CAAC,qBAAqB,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;IACvG,CAAC;IAEO,MAAM,CAAC,cAAc;QACzB,MAAM,eAAe,GAAG,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAA;QAEnE,mEAAmE;QACnE,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAA,CAAC,mDAAmD;IACnH,CAAC;IAEO,MAAM,CAAC,aAAa,CAAC,GAAY,EAAE,SAAgC;QACvE,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAA;YACzB,CAAC;YAAC,MAAM,CAAC;gBACL,OAAO,GAAG,CAAA;YACd,CAAC;QACL,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACpB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;YAC9C,CAAC,CAAC,CAAA;QACN,CAAC;QAED,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YACjC,IACI,GAAG,YAAY,IAAI;gBACnB,GAAG,YAAY,MAAM;gBACrB,GAAG,YAAY,GAAG;gBAClB,GAAG,YAAY,GAAG;gBAClB,GAAG,YAAY,KAAK;gBACpB,GAAG,YAAY,GAAG;gBAClB,GAAG,YAAY,eAAe,EAChC,CAAC;gBACC,OAAO,GAAG,CAAA;YACd,CAAC;YAED,MAAM,MAAM,GAA4B,EAAE,CAAA;YAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;YACtD,CAAC;YAED,OAAO,MAAM,CAAA;QACjB,CAAC;QAED,OAAO,GAAG,CAAA;IACd,CAAC;IAEO,MAAM,CAAC,aAAa,CAAC,IAAqB,EAAE,SAAgC;QAChF,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACD,OAAO,SAAS,CAAC,IAAI,CAAC,CAAA;YAC1B,CAAC;YAAC,MAAM,CAAC;gBACL,OAAO,IAAI,CAAA;YACf,CAAC;QACL,CAAC;QAED,MAAM,UAAU,GAAG,IAAA,kBAAS,EAAC,IAAI,CAAC,CAAA;QAElC,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,CAAoB,CAAA;IACvE,CAAC;;AA9yBL,4CA+yBC"}
|