itrm-tools 1.3.2 → 1.3.5-beta.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/.github/workflows/node.js.yml +30 -0
- package/README.md +2 -2
- package/dist/api/APIRequest.js +22 -29
- package/dist/api/APIRequest.js.map +1 -1
- package/dist/api/APIRouter.js +3 -1
- package/dist/api/APIRouter.js.map +1 -1
- package/dist/api/APIService.js +11 -17
- package/dist/api/APIService.js.map +1 -1
- package/dist/api/HttpsAPIService.js +5 -13
- package/dist/api/HttpsAPIService.js.map +1 -1
- package/dist/api/alegra/AlegraConnectionManager.js +23 -50
- package/dist/api/alegra/AlegraConnectionManager.js.map +1 -1
- package/dist/api/channel/ServerSentEventsManager.js +2 -1
- package/dist/api/channel/ServerSentEventsManager.js.map +1 -1
- package/dist/api/check/APIChecker.js +11 -25
- package/dist/api/check/APIChecker.js.map +1 -1
- package/dist/api/check/CheckableAPIRequest.js +17 -29
- package/dist/api/check/CheckableAPIRequest.js.map +1 -1
- package/dist/api/check/CheckableAPIRouter.js +17 -29
- package/dist/api/check/CheckableAPIRouter.js.map +1 -1
- package/dist/api/check/request/CheckableFileUploadingPostRequest.js +2 -0
- package/dist/api/check/request/CheckableFileUploadingPostRequest.js.map +1 -1
- package/dist/api/check/route/CorsCheckApiRouter.js +2 -13
- package/dist/api/check/route/CorsCheckApiRouter.js.map +1 -1
- package/dist/api/check/route/SimpleCheckableAPIRouter.js +2 -13
- package/dist/api/check/route/SimpleCheckableAPIRouter.js.map +1 -1
- package/dist/api/external/ExternalApiSigner.js +2 -0
- package/dist/api/external/ExternalApiSigner.js.map +1 -1
- package/dist/api/external/cetus/CetusStrategyApiManager.js +8 -20
- package/dist/api/external/cetus/CetusStrategyApiManager.js.map +1 -1
- package/dist/api/request/RequestAxiosCall.js +20 -37
- package/dist/api/request/RequestAxiosCall.js.map +1 -1
- package/dist/api/request/crud/CrudServiceManager.js +6 -17
- package/dist/api/request/crud/CrudServiceManager.js.map +1 -1
- package/dist/api/request/docs/DocumentationRequest.js +4 -7
- package/dist/api/request/docs/DocumentationRequest.js.map +1 -1
- package/dist/api/route/SimpleAPIRouter.js +2 -13
- package/dist/api/route/SimpleAPIRouter.js.map +1 -1
- package/dist/database/mongoose/MongooseModelManager.d.ts +8 -40
- package/dist/database/mongoose/MongooseModelManager.js +5 -14
- package/dist/database/mongoose/MongooseModelManager.js.map +1 -1
- package/dist/database/redis/RedisConnection.js +1 -0
- package/dist/database/redis/RedisConnection.js.map +1 -1
- package/dist/database/redis/RedisModelManager.js +1 -0
- package/dist/database/redis/RedisModelManager.js.map +1 -1
- package/dist/database/sequelize/SequelizeConnection.js +1 -0
- package/dist/database/sequelize/SequelizeConnection.js.map +1 -1
- package/dist/database/sequelize/SequelizeModelManager.js +6 -15
- package/dist/database/sequelize/SequelizeModelManager.js.map +1 -1
- package/dist/index.d.ts +0 -13
- package/dist/index.js +1 -28
- package/dist/index.js.map +1 -1
- package/dist/log/Logger.js +2 -0
- package/dist/log/Logger.js.map +1 -1
- package/dist/log/LoggerManager.js +11 -21
- package/dist/log/LoggerManager.js.map +1 -1
- package/dist/log/LoggerWebSocket.js +4 -2
- package/dist/log/LoggerWebSocket.js.map +1 -1
- package/dist/web3/coingecko/CoingeckoPriceFinder.js +24 -36
- package/dist/web3/coingecko/CoingeckoPriceFinder.js.map +1 -1
- package/jest.config.js +7 -0
- package/package.json +68 -74
- package/sequelize.sqlite +0 -0
- package/src/algorithm/encryption/EncryptionAlgorithm.ts +4 -0
- package/src/api/APIRequest.ts +176 -0
- package/src/api/APIRequestBuilder.ts +28 -0
- package/src/api/APIRouter.ts +26 -0
- package/src/api/APIService.ts +117 -0
- package/src/api/ExpressConfiguration.ts +5 -0
- package/src/api/HttpsAPIService.ts +35 -0
- package/src/api/alegra/AlegraConnectionManager.ts +54 -0
- package/src/api/alegra/AlegraTypes.ts +150 -0
- package/src/api/builder/StandardGetRequestBuilder.ts +34 -0
- package/src/api/channel/ServerSentEventsManager.ts +28 -0
- package/src/api/check/APIChecker.ts +50 -0
- package/src/api/check/CheckableAPIRequest.ts +33 -0
- package/src/api/check/CheckableAPIRouter.ts +39 -0
- package/src/api/check/request/CheckableDeleteRequest.ts +17 -0
- package/src/api/check/request/CheckableFileUploadingPostRequest.ts +26 -0
- package/src/api/check/request/CheckableGetRequest.ts +17 -0
- package/src/api/check/request/CheckablePostRequest.ts +17 -0
- package/src/api/check/request/CheckablePutRequest.ts +17 -0
- package/src/api/check/route/CorsCheckApiRouter.ts +22 -0
- package/src/api/check/route/SimpleCheckableAPIRouter.ts +14 -0
- package/src/api/express/ExpressFileUploadingConfiguration.ts +22 -0
- package/src/api/express/ExpressLogableConfig.ts +11 -0
- package/src/api/express/ExpressStandardConfiguration.ts +25 -0
- package/src/api/external/ExternalApiSigner.ts +29 -0
- package/src/api/external/cetus/CetusStrategyApiManager.ts +48 -0
- package/src/api/request/DeleteRequest.ts +16 -0
- package/src/api/request/GetRequest.ts +16 -0
- package/src/api/request/PostRequest.ts +16 -0
- package/src/api/request/PutRequest.ts +16 -0
- package/src/api/request/RequestAxiosCall.ts +38 -0
- package/src/api/request/crud/CrudManager.ts +11 -0
- package/src/api/request/crud/CrudServiceManager.ts +117 -0
- package/src/api/request/docs/DocumentationModels.ts +121 -0
- package/src/api/request/docs/DocumentationRequest.ts +132 -0
- package/src/api/route/SimpleAPIRouter.ts +12 -0
- package/src/database/mongoose/MongooseModelManager.ts +65 -0
- package/src/database/redis/RedisConnection.ts +18 -0
- package/src/database/redis/RedisModelManager.ts +23 -0
- package/src/database/sequelize/SequelizeConnection.ts +45 -0
- package/src/database/sequelize/SequelizeModelManager.ts +71 -0
- package/src/index.ts +51 -0
- package/src/log/Logger.ts +27 -0
- package/src/log/LoggerManager.ts +50 -0
- package/src/log/LoggerWebSocket.ts +13 -0
- package/src/math/Utils.ts +4 -0
- package/src/types/payments.ts +811 -0
- package/src/web3/Coin.ts +18 -0
- package/src/web3/coingecko/CoingeckoPriceFinder.ts +75 -0
- package/test/api/APIRouter.test.ts +78 -0
- package/test/api/APIService.test.ts +50 -0
- package/test/api/APITestDefinitions.ts +7 -0
- package/test/api/CORS.test.ts +56 -0
- package/test/api/alegra/AlegraConnectionManager.test.ts +32 -0
- package/test/api/check/CheckDefinitions.ts +47 -0
- package/test/api/check/CheckableAPIRouter.test.ts +67 -0
- package/test/api/check/CheckableDeleteRequest.test.ts +92 -0
- package/test/api/check/CheckableGetRequest.test.ts +99 -0
- package/test/api/check/CheckablePostRequest.test.ts +108 -0
- package/test/api/check/CheckablePutRequest.test.ts +99 -0
- package/test/api/docs/DocumentationRequest.test.ts +192 -0
- package/test/api/request/DeleteRequest.test.ts +117 -0
- package/test/api/request/GetRequest.test.ts +140 -0
- package/test/api/request/PostRequest.test.ts +237 -0
- package/test/api/request/PutRequest.test.ts +166 -0
- package/test/database/mongoose/MongooseModelManager.test.ts +139 -0
- package/test/database/redis/RedisConnection.test.ts +7 -0
- package/test/database/sequelize/SequealizeDefinitions.ts +6 -0
- package/test/database/sequelize/SequelizeConnection.test.ts +30 -0
- package/test/database/sequelize/SequelizeModelManager.test.ts +206 -0
- package/test/log/Logger.test.ts +44 -0
- package/test/web3/coingecko/CoingeckoPriceFinder.test.ts +72 -0
- package/tsconfig.json +23 -0
- package/dist/api/check/RoleServicePermissionsChecker.d.ts +0 -13
- package/dist/api/check/RoleServicePermissionsChecker.js +0 -92
- package/dist/api/check/RoleServicePermissionsChecker.js.map +0 -1
- package/dist/api/check/ServiceSessionChecker.d.ts +0 -28
- package/dist/api/check/ServiceSessionChecker.js +0 -119
- package/dist/api/check/ServiceSessionChecker.js.map +0 -1
- package/dist/api/request/crud/common/ActivityHistoryManager.d.ts +0 -40
- package/dist/api/request/crud/common/ActivityHistoryManager.js +0 -86
- package/dist/api/request/crud/common/ActivityHistoryManager.js.map +0 -1
- package/dist/api/request/crud/common/ApplicationManager.d.ts +0 -39
- package/dist/api/request/crud/common/ApplicationManager.js +0 -72
- package/dist/api/request/crud/common/ApplicationManager.js.map +0 -1
- package/dist/api/request/crud/common/AvailablePlatformManager.d.ts +0 -39
- package/dist/api/request/crud/common/AvailablePlatformManager.js +0 -86
- package/dist/api/request/crud/common/AvailablePlatformManager.js.map +0 -1
- package/dist/api/request/crud/common/ComponentManager.d.ts +0 -56
- package/dist/api/request/crud/common/ComponentManager.js +0 -78
- package/dist/api/request/crud/common/ComponentManager.js.map +0 -1
- package/dist/api/request/crud/common/KeyManager.d.ts +0 -39
- package/dist/api/request/crud/common/KeyManager.js +0 -88
- package/dist/api/request/crud/common/KeyManager.js.map +0 -1
- package/dist/api/request/crud/common/PlatformManager.d.ts +0 -44
- package/dist/api/request/crud/common/PlatformManager.js +0 -75
- package/dist/api/request/crud/common/PlatformManager.js.map +0 -1
- package/dist/api/request/crud/common/RoleManager.d.ts +0 -56
- package/dist/api/request/crud/common/RoleManager.js +0 -75
- package/dist/api/request/crud/common/RoleManager.js.map +0 -1
- package/dist/api/request/crud/common/StatusManager.d.ts +0 -34
- package/dist/api/request/crud/common/StatusManager.js +0 -74
- package/dist/api/request/crud/common/StatusManager.js.map +0 -1
- package/dist/api/request/crud/common/TypeManager.d.ts +0 -33
- package/dist/api/request/crud/common/TypeManager.js +0 -76
- package/dist/api/request/crud/common/TypeManager.js.map +0 -1
- package/dist/api/request/crud/common/UserCredentialsManager.d.ts +0 -39
- package/dist/api/request/crud/common/UserCredentialsManager.js +0 -84
- package/dist/api/request/crud/common/UserCredentialsManager.js.map +0 -1
- package/dist/api/request/crud/common/UserManager.d.ts +0 -35
- package/dist/api/request/crud/common/UserManager.js +0 -80
- package/dist/api/request/crud/common/UserManager.js.map +0 -1
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { CrudServiceManager, StandardIdRequestDefinition } from "../CrudServiceManager";
|
|
2
|
-
import { AxiosRequestConfig } from "axios";
|
|
3
|
-
export interface IUser {
|
|
4
|
-
userId?: number;
|
|
5
|
-
statusId?: number;
|
|
6
|
-
credentialsId?: number;
|
|
7
|
-
updatedAt?: string;
|
|
8
|
-
createdAt?: string;
|
|
9
|
-
config?: AxiosRequestConfig;
|
|
10
|
-
}
|
|
11
|
-
export interface IUserSearchDetails {
|
|
12
|
-
credentials?: boolean;
|
|
13
|
-
userId?: number;
|
|
14
|
-
statusId?: number;
|
|
15
|
-
credentialsId?: number;
|
|
16
|
-
values?: IUser[];
|
|
17
|
-
limit?: number;
|
|
18
|
-
offset?: number;
|
|
19
|
-
config?: AxiosRequestConfig;
|
|
20
|
-
}
|
|
21
|
-
export declare class UserManager extends CrudServiceManager<IUserSearchDetails, IUser> {
|
|
22
|
-
private url;
|
|
23
|
-
constructor(url: string);
|
|
24
|
-
find(details: IUserSearchDetails): Promise<IUser | undefined>;
|
|
25
|
-
count(details: IUserSearchDetails): Promise<{
|
|
26
|
-
result: number;
|
|
27
|
-
}>;
|
|
28
|
-
findAll(details: IUserSearchDetails): Promise<IUser[] | undefined>;
|
|
29
|
-
private buildRequestUrl;
|
|
30
|
-
findById(id: StandardIdRequestDefinition): Promise<IUser | undefined>;
|
|
31
|
-
create(details: IUserSearchDetails): Promise<IUser | undefined>;
|
|
32
|
-
createMany(details: IUserSearchDetails): Promise<IUser[] | undefined>;
|
|
33
|
-
modify(user: IUser): Promise<any>;
|
|
34
|
-
destroy(user: IUser): Promise<any>;
|
|
35
|
-
}
|
|
@@ -1,80 +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.UserManager = void 0;
|
|
13
|
-
const CrudServiceManager_1 = require("../CrudServiceManager");
|
|
14
|
-
class UserManager extends CrudServiceManager_1.CrudServiceManager {
|
|
15
|
-
constructor(url) {
|
|
16
|
-
super();
|
|
17
|
-
this.url = url;
|
|
18
|
-
}
|
|
19
|
-
find(details) {
|
|
20
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
21
|
-
return this.sendFinding(`${this.url}/users?credentialsId=${details.credentialsId}`, details.config);
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
count(details) {
|
|
25
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
-
var _a;
|
|
27
|
-
let url = this.buildRequestUrl(`${this.url}/users`, details);
|
|
28
|
-
return (_a = (yield this.sendCounting(url, details.config))) !== null && _a !== void 0 ? _a : { result: 0 };
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
findAll(details) {
|
|
32
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
-
var _a;
|
|
34
|
-
let users = [];
|
|
35
|
-
let url = this.buildRequestUrl(`${this.url}/users`, details);
|
|
36
|
-
if (details.limit) {
|
|
37
|
-
users = (_a = (yield this.sendAllFinding(`${url}${url.indexOf('?') !== -1 ? '&' : '?'}limit=${details.limit}&offset=${details.offset}`, details.config))) !== null && _a !== void 0 ? _a : [];
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
let limit = 5000, offset = 0, isEmpty = false;
|
|
41
|
-
do {
|
|
42
|
-
let values = yield this.sendAllFinding(`${url}${url.indexOf('?') !== -1 ? '&' : '?'}limit=${limit}&offset=${offset}`, details.config);
|
|
43
|
-
if (values)
|
|
44
|
-
users = users.concat(values);
|
|
45
|
-
isEmpty = values == undefined || values.length == 0;
|
|
46
|
-
offset += limit;
|
|
47
|
-
} while (!isEmpty);
|
|
48
|
-
}
|
|
49
|
-
return users;
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
buildRequestUrl(url, details) {
|
|
53
|
-
let suffix = `${details.credentials ? `&credentials=${details.credentials}` : ""}${details.credentialsId ? `&credentialsId=${details.credentialsId}` : ""}`;
|
|
54
|
-
return `${url}?${suffix.substring(1)}`;
|
|
55
|
-
}
|
|
56
|
-
findById(id) {
|
|
57
|
-
return this.sendFinding(`${this.url}/users?id=${id.id}`, id.config);
|
|
58
|
-
}
|
|
59
|
-
create(details) {
|
|
60
|
-
return this.sendCreation(`${this.url}/users`, {
|
|
61
|
-
statusId: details.statusId,
|
|
62
|
-
credentialsId: details.credentialsId
|
|
63
|
-
}, details.config);
|
|
64
|
-
}
|
|
65
|
-
createMany(details) {
|
|
66
|
-
var _a;
|
|
67
|
-
return this.sendCreationMany(`${this.url}/users`, (_a = details.values) !== null && _a !== void 0 ? _a : [], details.config);
|
|
68
|
-
}
|
|
69
|
-
modify(user) {
|
|
70
|
-
return this.sendModification(`${this.url}/users/${user.userId}`, {
|
|
71
|
-
statusId: user.statusId,
|
|
72
|
-
credentialsId: user.credentialsId
|
|
73
|
-
}, user.config);
|
|
74
|
-
}
|
|
75
|
-
destroy(user) {
|
|
76
|
-
return this.sendDestruction(`${this.url}/users/${user.userId}`, user.config);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
exports.UserManager = UserManager;
|
|
80
|
-
//# sourceMappingURL=UserManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UserManager.js","sourceRoot":"","sources":["../../../../../src/api/request/crud/common/UserManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8DAAwF;AAuBxF,MAAa,WAAY,SAAQ,uCAA6C;IAG5E,YAAY,GAAW;QACrB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAEY,IAAI,CAAC,OAA2B;;YAC3C,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,GAAG,wBAAwB,OAAO,CAAC,aAAa,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACtG,CAAC;KAAA;IAEY,KAAK,CAAC,OAA2B;;;YAC5C,IAAI,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC7D,OAAO,MAAA,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,mCAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACzE,CAAC;KAAA;IAEY,OAAO,CAAC,OAA2B;;;YAC9C,IAAI,KAAK,GAAY,EAAE,CAAC;YACxB,IAAI,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC7D,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,KAAK,GAAG,MAAA,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,OAAO,CAAC,KAAK,WAAW,OAAO,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,mCAAI,EAAE,CAAC;YAC3J,CAAC;iBAAM,CAAC;gBACN,IAAI,KAAK,GAAG,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;gBAC9C,GAAG,CAAC;oBACF,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,WAAW,MAAM,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;oBACtI,IAAI,MAAM;wBACR,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC/B,OAAO,GAAG,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;oBACpD,MAAM,IAAI,KAAK,CAAC;gBAClB,CAAC,QAAQ,CAAC,OAAO,EAAE;YACrB,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KAAA;IAEO,eAAe,CAAC,GAAW,EAAE,OAA2B;QAC9D,IAAI,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,kBAAkB,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC5J,OAAO,GAAG,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACzC,CAAC;IAEM,QAAQ,CAAC,EAA+B;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IAEM,MAAM,CAAC,OAA2B;QACvC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,GAAG,QAAQ,EAAE;YAC5C,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IAEM,UAAU,CAAC,OAA2B;;QAC3C,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,GAAG,QAAQ,EAAE,MAAA,OAAO,CAAC,MAAM,mCAAI,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1F,CAAC;IAEM,MAAM,CAAC,IAAW;QACvB,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,GAAG,UAAU,IAAI,CAAC,MAAM,EAAE,EAAE;YAC/D,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAEM,OAAO,CAAC,IAAW;QACxB,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,GAAG,UAAU,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/E,CAAC;CACF;AAjED,kCAiEC"}
|