mvc-common-toolkit 1.43.8 → 1.43.10

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.
Files changed (152) hide show
  1. package/dist/tsconfig.tsbuildinfo +1 -1
  2. package/package.json +1 -1
  3. package/dist/src/constants.d.ts +0 -42
  4. package/dist/src/constants.js +0 -50
  5. package/dist/src/constants.js.map +0 -1
  6. package/dist/src/gateways/alibaba-cloud-gateway.d.ts +0 -30
  7. package/dist/src/gateways/alibaba-cloud-gateway.js +0 -120
  8. package/dist/src/gateways/alibaba-cloud-gateway.js.map +0 -1
  9. package/dist/src/gateways/http-audit-gateway.d.ts +0 -20
  10. package/dist/src/gateways/http-audit-gateway.js +0 -76
  11. package/dist/src/gateways/http-audit-gateway.js.map +0 -1
  12. package/dist/src/gateways/index.d.ts +0 -5
  13. package/dist/src/gateways/index.js +0 -22
  14. package/dist/src/gateways/index.js.map +0 -1
  15. package/dist/src/gateways/internal-auth-gateway.d.ts +0 -8
  16. package/dist/src/gateways/internal-auth-gateway.js +0 -40
  17. package/dist/src/gateways/internal-auth-gateway.js.map +0 -1
  18. package/dist/src/gateways/stdout-audit-gateway.d.ts +0 -7
  19. package/dist/src/gateways/stdout-audit-gateway.js +0 -25
  20. package/dist/src/gateways/stdout-audit-gateway.js.map +0 -1
  21. package/dist/src/gateways/webhook-audit-gateway.d.ts +0 -14
  22. package/dist/src/gateways/webhook-audit-gateway.js +0 -27
  23. package/dist/src/gateways/webhook-audit-gateway.js.map +0 -1
  24. package/dist/src/interfaces.d.ts +0 -215
  25. package/dist/src/interfaces.js +0 -3
  26. package/dist/src/interfaces.js.map +0 -1
  27. package/dist/src/models/audit-log.d.ts +0 -77
  28. package/dist/src/models/audit-log.js +0 -92
  29. package/dist/src/models/audit-log.js.map +0 -1
  30. package/dist/src/models/index.d.ts +0 -1
  31. package/dist/src/models/index.js +0 -18
  32. package/dist/src/models/index.js.map +0 -1
  33. package/dist/src/pkg/array-helper.d.ts +0 -1
  34. package/dist/src/pkg/array-helper.js +0 -12
  35. package/dist/src/pkg/array-helper.js.map +0 -1
  36. package/dist/src/pkg/bcrypt-helper.d.ts +0 -2
  37. package/dist/src/pkg/bcrypt-helper.js +0 -36
  38. package/dist/src/pkg/bcrypt-helper.js.map +0 -1
  39. package/dist/src/pkg/crypto-helper.d.ts +0 -2
  40. package/dist/src/pkg/crypto-helper.js +0 -16
  41. package/dist/src/pkg/crypto-helper.js.map +0 -1
  42. package/dist/src/pkg/encryption-helper.d.ts +0 -18
  43. package/dist/src/pkg/encryption-helper.js +0 -89
  44. package/dist/src/pkg/encryption-helper.js.map +0 -1
  45. package/dist/src/pkg/encryption-helper.spec.d.ts +0 -1
  46. package/dist/src/pkg/encryption-helper.spec.js +0 -238
  47. package/dist/src/pkg/encryption-helper.spec.js.map +0 -1
  48. package/dist/src/pkg/filter-helper.d.ts +0 -2
  49. package/dist/src/pkg/filter-helper.js +0 -102
  50. package/dist/src/pkg/filter-helper.js.map +0 -1
  51. package/dist/src/pkg/filter-helper.spec.d.ts +0 -1
  52. package/dist/src/pkg/filter-helper.spec.js +0 -94
  53. package/dist/src/pkg/filter-helper.spec.js.map +0 -1
  54. package/dist/src/pkg/geoip-helper.d.ts +0 -2
  55. package/dist/src/pkg/geoip-helper.js +0 -32
  56. package/dist/src/pkg/geoip-helper.js.map +0 -1
  57. package/dist/src/pkg/hash-helper.d.ts +0 -1
  58. package/dist/src/pkg/hash-helper.js +0 -37
  59. package/dist/src/pkg/hash-helper.js.map +0 -1
  60. package/dist/src/pkg/http-request-utils.d.ts +0 -4
  61. package/dist/src/pkg/http-request-utils.js +0 -55
  62. package/dist/src/pkg/http-request-utils.js.map +0 -1
  63. package/dist/src/pkg/index.d.ts +0 -18
  64. package/dist/src/pkg/index.js +0 -45
  65. package/dist/src/pkg/index.js.map +0 -1
  66. package/dist/src/pkg/key-helper.d.ts +0 -2
  67. package/dist/src/pkg/key-helper.js +0 -20
  68. package/dist/src/pkg/key-helper.js.map +0 -1
  69. package/dist/src/pkg/logger.d.ts +0 -9
  70. package/dist/src/pkg/logger.js +0 -23
  71. package/dist/src/pkg/logger.js.map +0 -1
  72. package/dist/src/pkg/object-helper.d.ts +0 -2
  73. package/dist/src/pkg/object-helper.js +0 -37
  74. package/dist/src/pkg/object-helper.js.map +0 -1
  75. package/dist/src/pkg/paginated-cache-registry.d.ts +0 -8
  76. package/dist/src/pkg/paginated-cache-registry.js +0 -23
  77. package/dist/src/pkg/paginated-cache-registry.js.map +0 -1
  78. package/dist/src/pkg/query-helper.d.ts +0 -3
  79. package/dist/src/pkg/query-helper.js +0 -60
  80. package/dist/src/pkg/query-helper.js.map +0 -1
  81. package/dist/src/pkg/referral-tree-utils.d.ts +0 -33
  82. package/dist/src/pkg/referral-tree-utils.js +0 -71
  83. package/dist/src/pkg/referral-tree-utils.js.map +0 -1
  84. package/dist/src/pkg/scripts/index.d.ts +0 -1
  85. package/dist/src/pkg/scripts/index.js +0 -28
  86. package/dist/src/pkg/scripts/index.js.map +0 -1
  87. package/dist/src/pkg/scripts/lua.d.ts +0 -10
  88. package/dist/src/pkg/scripts/lua.js +0 -109
  89. package/dist/src/pkg/scripts/lua.js.map +0 -1
  90. package/dist/src/pkg/sort-helper.d.ts +0 -3
  91. package/dist/src/pkg/sort-helper.js +0 -18
  92. package/dist/src/pkg/sort-helper.js.map +0 -1
  93. package/dist/src/pkg/string-utils.d.ts +0 -10
  94. package/dist/src/pkg/string-utils.js +0 -79
  95. package/dist/src/pkg/string-utils.js.map +0 -1
  96. package/dist/src/pkg/task-helper.d.ts +0 -2
  97. package/dist/src/pkg/task-helper.js +0 -30
  98. package/dist/src/pkg/task-helper.js.map +0 -1
  99. package/dist/src/pkg/workflow/delayed-task-registry.d.ts +0 -10
  100. package/dist/src/pkg/workflow/delayed-task-registry.js +0 -67
  101. package/dist/src/pkg/workflow/delayed-task-registry.js.map +0 -1
  102. package/dist/src/pkg/workflow/delayed-task.d.ts +0 -18
  103. package/dist/src/pkg/workflow/delayed-task.js +0 -95
  104. package/dist/src/pkg/workflow/delayed-task.js.map +0 -1
  105. package/dist/src/pkg/workflow/index.d.ts +0 -5
  106. package/dist/src/pkg/workflow/index.js +0 -22
  107. package/dist/src/pkg/workflow/index.js.map +0 -1
  108. package/dist/src/pkg/workflow/processing-milestone.d.ts +0 -18
  109. package/dist/src/pkg/workflow/processing-milestone.js +0 -39
  110. package/dist/src/pkg/workflow/processing-milestone.js.map +0 -1
  111. package/dist/src/pkg/workflow/retry-task.d.ts +0 -24
  112. package/dist/src/pkg/workflow/retry-task.js +0 -89
  113. package/dist/src/pkg/workflow/retry-task.js.map +0 -1
  114. package/dist/src/pkg/workflow/retry-task.spec.d.ts +0 -1
  115. package/dist/src/pkg/workflow/retry-task.spec.js +0 -145
  116. package/dist/src/pkg/workflow/retry-task.spec.js.map +0 -1
  117. package/dist/src/pkg/workflow/sync-taskqueue.d.ts +0 -32
  118. package/dist/src/pkg/workflow/sync-taskqueue.js +0 -108
  119. package/dist/src/pkg/workflow/sync-taskqueue.js.map +0 -1
  120. package/dist/src/pkg/worksheet.utils.d.ts +0 -27
  121. package/dist/src/pkg/worksheet.utils.js +0 -116
  122. package/dist/src/pkg/worksheet.utils.js.map +0 -1
  123. package/dist/src/services/audit-service.d.ts +0 -7
  124. package/dist/src/services/audit-service.js +0 -32
  125. package/dist/src/services/audit-service.js.map +0 -1
  126. package/dist/src/services/excel.service.d.ts +0 -25
  127. package/dist/src/services/excel.service.js +0 -95
  128. package/dist/src/services/excel.service.js.map +0 -1
  129. package/dist/src/services/http-service.d.ts +0 -7
  130. package/dist/src/services/http-service.js +0 -67
  131. package/dist/src/services/http-service.js.map +0 -1
  132. package/dist/src/services/index.d.ts +0 -8
  133. package/dist/src/services/index.js +0 -25
  134. package/dist/src/services/index.js.map +0 -1
  135. package/dist/src/services/kafka-service.d.ts +0 -15
  136. package/dist/src/services/kafka-service.js +0 -68
  137. package/dist/src/services/kafka-service.js.map +0 -1
  138. package/dist/src/services/mailer-service.d.ts +0 -15
  139. package/dist/src/services/mailer-service.js +0 -44
  140. package/dist/src/services/mailer-service.js.map +0 -1
  141. package/dist/src/services/paginated-cache.d.ts +0 -16
  142. package/dist/src/services/paginated-cache.js +0 -115
  143. package/dist/src/services/paginated-cache.js.map +0 -1
  144. package/dist/src/services/paginated-cache.spec.d.ts +0 -1
  145. package/dist/src/services/paginated-cache.spec.js +0 -284
  146. package/dist/src/services/paginated-cache.spec.js.map +0 -1
  147. package/dist/src/services/redis-service.d.ts +0 -33
  148. package/dist/src/services/redis-service.js +0 -216
  149. package/dist/src/services/redis-service.js.map +0 -1
  150. package/dist/src/services/security-service.d.ts +0 -11
  151. package/dist/src/services/security-service.js +0 -68
  152. package/dist/src/services/security-service.js.map +0 -1
@@ -1,216 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
- Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.RedisService = void 0;
36
- const ioredis = __importStar(require("ioredis"));
37
- const constants_1 = require("../constants");
38
- class RedisService {
39
- constructor(config) {
40
- this._redis = new ioredis.Redis(config);
41
- }
42
- get(key) {
43
- return this._redis.get(key);
44
- }
45
- getNumber(key) {
46
- return __awaiter(this, void 0, void 0, function* () {
47
- const result = yield this._redis.get(key);
48
- if (result === null) {
49
- return null;
50
- }
51
- return this.convertToNumber(result);
52
- });
53
- }
54
- deleteByPattern(pattern) {
55
- return __awaiter(this, void 0, void 0, function* () {
56
- let cursor = "0";
57
- do {
58
- const [nextCursor, keys] = yield this._redis.scan(cursor, "MATCH", pattern, "COUNT", 100);
59
- cursor = nextCursor;
60
- if (keys.length > 0) {
61
- yield this._redis.del(...keys);
62
- }
63
- } while (cursor !== "0");
64
- });
65
- }
66
- del(...keys) {
67
- return __awaiter(this, void 0, void 0, function* () {
68
- yield this._redis.del(...keys);
69
- });
70
- }
71
- multiEval(calls) {
72
- return __awaiter(this, void 0, void 0, function* () {
73
- const multi = this._redis.multi();
74
- for (const [script, numberOfKeys, ...params] of calls) {
75
- if (numberOfKeys !== params.slice(0, numberOfKeys).length) {
76
- throw new Error(`numberOfKeys (${numberOfKeys}) does not match key count in params`);
77
- }
78
- multi.eval(script, numberOfKeys, ...params);
79
- }
80
- const execResult = yield multi.exec();
81
- for (const [err] of execResult) {
82
- if (err)
83
- throw err;
84
- }
85
- return execResult.map(([, value]) => value);
86
- });
87
- }
88
- eval(script, numberOfKeys, ...args) {
89
- return __awaiter(this, void 0, void 0, function* () {
90
- return this._redis.eval(script, numberOfKeys, ...args);
91
- });
92
- }
93
- hset(key, field, value) {
94
- return __awaiter(this, void 0, void 0, function* () {
95
- yield this._redis.hset(key, {
96
- [field]: value,
97
- });
98
- });
99
- }
100
- lpush(key, value) {
101
- return __awaiter(this, void 0, void 0, function* () {
102
- yield this._redis.lpush(key, value);
103
- });
104
- }
105
- lrem(key, count, element) {
106
- return __awaiter(this, void 0, void 0, function* () {
107
- return this._redis.lrem(key, count, element);
108
- });
109
- }
110
- rpush(key, value) {
111
- return __awaiter(this, void 0, void 0, function* () {
112
- yield this._redis.rpush(key, value);
113
- });
114
- }
115
- lset(key, index, value) {
116
- return __awaiter(this, void 0, void 0, function* () {
117
- yield this._redis.lset(key, index, value);
118
- });
119
- }
120
- lrange(key, start, end) {
121
- return __awaiter(this, void 0, void 0, function* () {
122
- return this._redis.lrange(key, start, end);
123
- });
124
- }
125
- lindex(key, index) {
126
- return __awaiter(this, void 0, void 0, function* () {
127
- return this._redis.lindex(key, index);
128
- });
129
- }
130
- llen(key) {
131
- return __awaiter(this, void 0, void 0, function* () {
132
- return this._redis.llen(key);
133
- });
134
- }
135
- hget(key, field) {
136
- return __awaiter(this, void 0, void 0, function* () {
137
- return this._redis.hget(key, field);
138
- });
139
- }
140
- hincrby(key, field, value = 1) {
141
- return __awaiter(this, void 0, void 0, function* () {
142
- return this._redis.hincrby(key, field, value);
143
- });
144
- }
145
- hincrbyfloat(key, field, value = 1) {
146
- return __awaiter(this, void 0, void 0, function* () {
147
- return this._redis.hincrbyfloat(key, field, value);
148
- });
149
- }
150
- hkeys(key) {
151
- return __awaiter(this, void 0, void 0, function* () {
152
- return this._redis.hkeys(key);
153
- });
154
- }
155
- ttl(key) {
156
- return __awaiter(this, void 0, void 0, function* () {
157
- return this._redis.ttl(key);
158
- });
159
- }
160
- hlen(key) {
161
- return __awaiter(this, void 0, void 0, function* () {
162
- return this._redis.hlen(key);
163
- });
164
- }
165
- set(key, value, option) {
166
- if (!option) {
167
- return this._redis.set(key, value);
168
- }
169
- switch (option.policy) {
170
- case constants_1.SET_CACHE_POLICY.WITH_TTL:
171
- return this._redis.set(key, value, "EX", option.value);
172
- case constants_1.SET_CACHE_POLICY.KEEP_TTL:
173
- return this._redis.set(key, value, "KEEPTTL");
174
- case constants_1.SET_CACHE_POLICY.IF_EXISTS:
175
- return option.value
176
- ? this._redis.set(key, value, "EX", option.value, "XX")
177
- : this._redis.set(key, value, "XX");
178
- case constants_1.SET_CACHE_POLICY.IF_NOT_EXISTS:
179
- return option.value
180
- ? this._redis.set(key, value, "EX", option.value, "NX")
181
- : this._redis.set(key, value, "NX");
182
- default:
183
- throw new Error("policy not supported");
184
- }
185
- }
186
- incrBy(key, value = 1) {
187
- return __awaiter(this, void 0, void 0, function* () {
188
- const result = yield this._redis.incrby(key, value);
189
- return this.convertToNumber(result);
190
- });
191
- }
192
- convertToNumber(value) {
193
- const number = parseFloat(value);
194
- if (isNaN(number)) {
195
- throw new Error(`Value "${value}" is not a valid number.`);
196
- }
197
- return number;
198
- }
199
- expire(key, ttl) {
200
- return this._redis.expire(key, ttl);
201
- }
202
- incrByFloat(key, value) {
203
- return __awaiter(this, void 0, void 0, function* () {
204
- const result = yield this._redis.incrbyfloat(key, value);
205
- return this.convertToNumber(result);
206
- });
207
- }
208
- decrBy(key, value = 1) {
209
- return __awaiter(this, void 0, void 0, function* () {
210
- const result = yield this._redis.decrby(key, value);
211
- return this.convertToNumber(result);
212
- });
213
- }
214
- }
215
- exports.RedisService = RedisService;
216
- //# sourceMappingURL=redis-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"redis-service.js","sourceRoot":"","sources":["../../../src/services/redis-service.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { CRUDService, CacheService, LockResult, OperationResult } from "../interfaces";
2
- export declare class SecurityService {
3
- protected cacheService: CacheService;
4
- protected userService: CRUDService;
5
- constructor(cacheService: CacheService, userService: CRUDService);
6
- static LIMIT_TO_LOCK_USER: number;
7
- static genLockUserCacheKey(userId: number): string;
8
- addFailureCount(userId: number, cacheKey?: string): Promise<number>;
9
- clearFailureCount(userId: number, cacheKey?: string): Promise<void>;
10
- shouldLockUser(userId: number, cacheKey?: string): Promise<OperationResult<LockResult>>;
11
- }
@@ -1,68 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.SecurityService = void 0;
13
- class SecurityService {
14
- constructor(cacheService, userService) {
15
- this.cacheService = cacheService;
16
- this.userService = userService;
17
- }
18
- static genLockUserCacheKey(userId) {
19
- return `user:${userId}:lock`;
20
- }
21
- addFailureCount(userId, cacheKey) {
22
- return __awaiter(this, void 0, void 0, function* () {
23
- const finalCacheKey = cacheKey || SecurityService.genLockUserCacheKey(userId);
24
- yield this.cacheService.incrBy(finalCacheKey);
25
- return this.cacheService.get(finalCacheKey);
26
- });
27
- }
28
- clearFailureCount(userId, cacheKey) {
29
- return __awaiter(this, void 0, void 0, function* () {
30
- const finalCacheKey = cacheKey || SecurityService.genLockUserCacheKey(userId);
31
- yield this.cacheService.del(finalCacheKey);
32
- });
33
- }
34
- shouldLockUser(userId, cacheKey) {
35
- return __awaiter(this, void 0, void 0, function* () {
36
- try {
37
- const incrementedAttemptsCount = yield this.addFailureCount(userId, cacheKey);
38
- if (incrementedAttemptsCount >= SecurityService.LIMIT_TO_LOCK_USER) {
39
- yield this.clearFailureCount(userId);
40
- return {
41
- success: true,
42
- data: {
43
- isLocked: true,
44
- attemptsLeft: 0,
45
- },
46
- };
47
- }
48
- return {
49
- success: true,
50
- data: {
51
- isLocked: false,
52
- attemptsLeft: Math.max(0, SecurityService.LIMIT_TO_LOCK_USER - incrementedAttemptsCount),
53
- },
54
- };
55
- }
56
- catch (error) {
57
- return {
58
- success: false,
59
- message: error.message,
60
- metadata: error.stack,
61
- };
62
- }
63
- });
64
- }
65
- }
66
- SecurityService.LIMIT_TO_LOCK_USER = 5;
67
- exports.SecurityService = SecurityService;
68
- //# sourceMappingURL=security-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"security-service.js","sourceRoot":"","sources":["../../../src/services/security-service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAOA,MAAa,eAAe;IAC1B,YACY,YAA0B,EAC1B,WAAwB;QADxB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,gBAAW,GAAX,WAAW,CAAa;IACjC,CAAC;IAIG,MAAM,CAAC,mBAAmB,CAAC,MAAc;QAC9C,OAAO,QAAQ,MAAM,OAAO,CAAC;IAC/B,CAAC;IAEY,eAAe,CAC1B,MAAc,EACd,QAAiB;;YAEjB,MAAM,aAAa,GACjB,QAAQ,IAAI,eAAe,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAE1D,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAE9C,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC9C,CAAC;KAAA;IAEY,iBAAiB,CAAC,MAAc,EAAE,QAAiB;;YAC9D,MAAM,aAAa,GACjB,QAAQ,IAAI,eAAe,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAE1D,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC7C,CAAC;KAAA;IAEK,cAAc,CAClB,MAAc,EACd,QAAiB;;YAEjB,IAAI;gBACF,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,eAAe,CACzD,MAAM,EACN,QAAQ,CACT,CAAC;gBAGF,IAAI,wBAAwB,IAAI,eAAe,CAAC,kBAAkB,EAAE;oBAClE,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;oBAErC,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE;4BACJ,QAAQ,EAAE,IAAI;4BACd,YAAY,EAAE,CAAC;yBAChB;qBACF,CAAC;iBACH;gBAED,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,QAAQ,EAAE,KAAK;wBACf,YAAY,EAAE,IAAI,CAAC,GAAG,CACpB,CAAC,EACD,eAAe,CAAC,kBAAkB,GAAG,wBAAwB,CAC9D;qBACF;iBACF,CAAC;aACH;YAAC,OAAO,KAAU,EAAE;gBACnB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,QAAQ,EAAE,KAAK,CAAC,KAAK;iBACtB,CAAC;aACH;QACH,CAAC;KAAA;;AAjEa,kCAAkB,GAAG,CAAC,CAAC;AAN1B,0CAAe"}