@minimaltech/node-infra 0.3.11 → 0.3.13
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/base/controllers/crud.controller.d.ts +20 -0
- package/dist/base/controllers/crud.controller.js +45 -12
- package/dist/base/controllers/crud.controller.js.map +1 -1
- package/dist/mixins/index.d.ts +1 -1
- package/dist/mixins/index.js +2 -1
- package/dist/mixins/index.js.map +1 -1
- package/dist/mixins/user-audit-v2.mixin.d.ts +20 -0
- package/dist/mixins/user-audit-v2.mixin.js +81 -0
- package/dist/mixins/user-audit-v2.mixin.js.map +1 -0
- package/dist/mixins/user-audit.mixin.d.ts +4 -1
- package/dist/mixins/user-audit.mixin.js +8 -5
- package/dist/mixins/user-audit.mixin.js.map +1 -1
- package/package.json +1 -1
@@ -1,8 +1,10 @@
|
|
1
|
+
import { Getter } from '@loopback/core';
|
1
2
|
import { CrudRestControllerOptions } from '@loopback/rest-crud';
|
2
3
|
import { Count, Filter, FilterExcludingWhere, Where } from '@loopback/repository';
|
3
4
|
import { SchemaRef } from '@loopback/rest';
|
4
5
|
import { BaseIdEntity, BaseTzEntity, AbstractTzRepository } from './../';
|
5
6
|
import { EntityRelationType, IdType } from '../../common/types';
|
7
|
+
import { IJWTTokenPayload } from '../../components/authenticate/common/types';
|
6
8
|
export interface ICrudControllerOptions<E extends BaseIdEntity> {
|
7
9
|
entity: typeof BaseIdEntity & {
|
8
10
|
prototype: E;
|
@@ -26,6 +28,7 @@ export interface ICrudControllerOptions<E extends BaseIdEntity> {
|
|
26
28
|
replaceById?: SchemaRef;
|
27
29
|
deleteById?: SchemaRef;
|
28
30
|
};
|
31
|
+
doInjectCurrentUser?: boolean;
|
29
32
|
}
|
30
33
|
export declare const defineCrudController: <E extends BaseTzEntity>(opts: ICrudControllerOptions<E>) => {
|
31
34
|
new (repository: AbstractTzRepository<E, EntityRelationType>): {
|
@@ -36,4 +39,21 @@ export declare const defineCrudController: <E extends BaseTzEntity>(opts: ICrudC
|
|
36
39
|
findOne(filter?: Filter<E>): Promise<(E & EntityRelationType) | null>;
|
37
40
|
count(where?: Where<E>): Promise<Count>;
|
38
41
|
};
|
42
|
+
} | {
|
43
|
+
new (repository: AbstractTzRepository<E, EntityRelationType>, getCurrentUser?: Getter<IJWTTokenPayload>): {
|
44
|
+
getCurrentUser?: Getter<IJWTTokenPayload>;
|
45
|
+
create(data: Omit<E, "id">): Promise<E>;
|
46
|
+
updateAll(data: Partial<E>, where?: Where<E>): Promise<Count>;
|
47
|
+
updateById(id: IdType, data: Partial<E>): Promise<E>;
|
48
|
+
replaceById(id: IdType, data: E): Promise<E>;
|
49
|
+
deleteById(id: IdType): Promise<{
|
50
|
+
id: IdType;
|
51
|
+
}>;
|
52
|
+
repository: AbstractTzRepository<E, EntityRelationType>;
|
53
|
+
defaultLimit: number;
|
54
|
+
find(filter?: Filter<E>): Promise<(E & EntityRelationType)[]>;
|
55
|
+
findById(id: IdType, filter?: FilterExcludingWhere<E>): Promise<E & EntityRelationType>;
|
56
|
+
findOne(filter?: Filter<E>): Promise<(E & EntityRelationType) | null>;
|
57
|
+
count(where?: Where<E>): Promise<Count>;
|
58
|
+
};
|
39
59
|
};
|
@@ -11,6 +11,15 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
11
11
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
13
13
|
};
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
21
|
+
});
|
22
|
+
};
|
14
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
15
24
|
exports.defineCrudController = void 0;
|
16
25
|
const core_1 = require("@loopback/core");
|
@@ -18,10 +27,11 @@ const repository_1 = require("@loopback/repository");
|
|
18
27
|
const rest_1 = require("@loopback/rest");
|
19
28
|
const common_1 = require("../../common");
|
20
29
|
const common_2 = require("./common");
|
30
|
+
const security_1 = require("@loopback/security");
|
21
31
|
// --------------------------------------------------------------------------------------------------------------
|
22
32
|
const defineCrudController = (opts) => {
|
23
33
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
24
|
-
const { entity: entityOptions, repository: repositoryOptions, controller: controllerOptions, schema: schemaOptions, } = opts;
|
34
|
+
const { entity: entityOptions, repository: repositoryOptions, controller: controllerOptions, schema: schemaOptions, doInjectCurrentUser, } = opts;
|
25
35
|
const idPathParam = {
|
26
36
|
name: 'id',
|
27
37
|
in: 'path',
|
@@ -129,26 +139,46 @@ const defineCrudController = (opts) => {
|
|
129
139
|
return ReadController;
|
130
140
|
}
|
131
141
|
class CRUDController extends ReadController {
|
132
|
-
constructor(repository) {
|
142
|
+
constructor(repository, getCurrentUser) {
|
133
143
|
super(repository);
|
144
|
+
this.getCurrentUser = getCurrentUser;
|
134
145
|
}
|
135
146
|
create(data) {
|
136
|
-
return this
|
147
|
+
return __awaiter(this, void 0, void 0, function* () {
|
148
|
+
if (!this.getCurrentUser) {
|
149
|
+
return this.repository.create(data);
|
150
|
+
}
|
151
|
+
const currentUser = yield this.getCurrentUser();
|
152
|
+
return this.repository.create(data, { authorId: currentUser.userId });
|
153
|
+
});
|
137
154
|
}
|
138
155
|
updateAll(data, where) {
|
139
|
-
return this
|
156
|
+
return __awaiter(this, void 0, void 0, function* () {
|
157
|
+
if (!this.getCurrentUser) {
|
158
|
+
return this.repository.updateAll(data, where);
|
159
|
+
}
|
160
|
+
const currentUser = yield this.getCurrentUser();
|
161
|
+
return this.repository.updateAll(data, where, { authorId: currentUser.userId });
|
162
|
+
});
|
140
163
|
}
|
141
164
|
updateById(id, data) {
|
142
|
-
return this
|
165
|
+
return __awaiter(this, void 0, void 0, function* () {
|
166
|
+
if (!this.getCurrentUser) {
|
167
|
+
return this.repository.updateWithReturn(id, data);
|
168
|
+
}
|
169
|
+
const currentUser = yield this.getCurrentUser();
|
170
|
+
return this.repository.updateWithReturn(id, data, { authorId: currentUser.userId });
|
171
|
+
});
|
143
172
|
}
|
144
173
|
replaceById(id, data) {
|
145
|
-
return
|
146
|
-
this.
|
147
|
-
.replaceById(id, data)
|
148
|
-
.
|
149
|
-
|
150
|
-
|
151
|
-
|
174
|
+
return __awaiter(this, void 0, void 0, function* () {
|
175
|
+
if (!this.getCurrentUser) {
|
176
|
+
yield this.repository.replaceById(id, data);
|
177
|
+
return Object.assign(Object.assign({}, data), { id });
|
178
|
+
}
|
179
|
+
const currentUser = yield this.getCurrentUser();
|
180
|
+
yield this.repository.replaceById(id, data, { authorId: currentUser.userId });
|
181
|
+
return Object.assign(Object.assign({}, data), { id });
|
152
182
|
});
|
153
183
|
}
|
154
184
|
deleteById(id) {
|
@@ -291,6 +321,9 @@ const defineCrudController = (opts) => {
|
|
291
321
|
if (repositoryOptions === null || repositoryOptions === void 0 ? void 0 : repositoryOptions.name) {
|
292
322
|
(0, core_1.inject)(`repositories.${repositoryOptions.name}`)(CRUDController, undefined, 0);
|
293
323
|
}
|
324
|
+
if (doInjectCurrentUser) {
|
325
|
+
core_1.inject.getter(security_1.SecurityBindings.USER)(CRUDController, undefined, 1);
|
326
|
+
}
|
294
327
|
return CRUDController;
|
295
328
|
};
|
296
329
|
exports.defineCrudController = defineCrudController;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"crud.controller.js","sourceRoot":"","sources":["../../../src/base/controllers/crud.controller.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"crud.controller.js","sourceRoot":"","sources":["../../../src/base/controllers/crud.controller.ts"],"names":[],"mappings":"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"}
|
package/dist/mixins/index.d.ts
CHANGED
package/dist/mixins/index.js
CHANGED
@@ -21,6 +21,7 @@ __exportStar(require("./soft-delete.mixin"), exports);
|
|
21
21
|
__exportStar(require("./soft-persistent.mixin"), exports);
|
22
22
|
__exportStar(require("./text-search.mixin"), exports);
|
23
23
|
__exportStar(require("./tz.mixin"), exports);
|
24
|
-
|
24
|
+
// export * from './user-audit.mixin';
|
25
|
+
__exportStar(require("./user-audit-v2.mixin"), exports);
|
25
26
|
__exportStar(require("./duplicatable.mixin"), exports);
|
26
27
|
//# sourceMappingURL=index.js.map
|
package/dist/mixins/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mixins/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,wDAAsC;AACtC,oDAAkC;AAClC,sDAAoC;AACpC,0DAAwC;AACxC,sDAAoC;AACpC,6CAA2B;AAC3B,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mixins/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,wDAAsC;AACtC,oDAAkC;AAClC,sDAAoC;AACpC,0DAAwC;AACxC,sDAAoC;AACpC,6CAA2B;AAC3B,sCAAsC;AACtC,wDAAsC;AACtC,uDAAqC"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import { BaseTzEntity } from '../base';
|
2
|
+
import { IdType } from '../common/types';
|
3
|
+
import { MixinTarget } from '@loopback/core';
|
4
|
+
import { Entity, EntityResolver } from '@loopback/repository';
|
5
|
+
export declare const UserAuditMixin: <E extends MixinTarget<Entity>, C extends BaseTzEntity = BaseTzEntity, M extends BaseTzEntity = BaseTzEntity>(superClass: E, opts?: {
|
6
|
+
useRelation: boolean;
|
7
|
+
creatorResolver: EntityResolver<C>;
|
8
|
+
creatorKeyTo?: string;
|
9
|
+
modifierResolver: EntityResolver<M>;
|
10
|
+
modifierKeyTo?: string;
|
11
|
+
}) => {
|
12
|
+
new (...args: any[]): {
|
13
|
+
createdBy: IdType;
|
14
|
+
modifiedBy: IdType;
|
15
|
+
getId: () => any;
|
16
|
+
getIdObject: () => Object;
|
17
|
+
toJSON: () => Object;
|
18
|
+
toObject: (options?: import("@loopback/repository").Options) => Object;
|
19
|
+
};
|
20
|
+
} & E;
|
@@ -0,0 +1,81 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.UserAuditMixin = void 0;
|
13
|
+
const utilities_1 = require("../utilities");
|
14
|
+
const repository_1 = require("@loopback/repository");
|
15
|
+
const UserAuditMixin = (superClass, opts) => {
|
16
|
+
const { useRelation = false, creatorResolver, creatorKeyTo, modifierResolver, modifierKeyTo } = opts !== null && opts !== void 0 ? opts : {};
|
17
|
+
if (!useRelation) {
|
18
|
+
let Mixed = class Mixed extends superClass {
|
19
|
+
};
|
20
|
+
__decorate([
|
21
|
+
(0, repository_1.property)({
|
22
|
+
type: 'number',
|
23
|
+
postgresql: {
|
24
|
+
columnName: 'created_by',
|
25
|
+
dataType: 'integer',
|
26
|
+
},
|
27
|
+
// hidden: true,
|
28
|
+
}),
|
29
|
+
__metadata("design:type", Object)
|
30
|
+
], Mixed.prototype, "createdBy", void 0);
|
31
|
+
__decorate([
|
32
|
+
(0, repository_1.property)({
|
33
|
+
type: 'number',
|
34
|
+
postgresql: {
|
35
|
+
columnName: 'modified_by',
|
36
|
+
dataType: 'integer',
|
37
|
+
},
|
38
|
+
// hidden: true,
|
39
|
+
}),
|
40
|
+
__metadata("design:type", Object)
|
41
|
+
], Mixed.prototype, "modifiedBy", void 0);
|
42
|
+
Mixed = __decorate([
|
43
|
+
(0, repository_1.model)()
|
44
|
+
], Mixed);
|
45
|
+
return Mixed;
|
46
|
+
}
|
47
|
+
if (useRelation && !creatorResolver) {
|
48
|
+
throw (0, utilities_1.getError)({ message: '[UserAuditMixin] Invalid creatorResolver' });
|
49
|
+
}
|
50
|
+
if (useRelation && !modifierResolver) {
|
51
|
+
throw (0, utilities_1.getError)({ message: '[UserAuditMixin] Invalid modifierResolver' });
|
52
|
+
}
|
53
|
+
let Mixed = class Mixed extends superClass {
|
54
|
+
};
|
55
|
+
__decorate([
|
56
|
+
(0, repository_1.belongsTo)(creatorResolver, { keyFrom: 'createdBy', keyTo: creatorKeyTo, name: 'creator' }, {
|
57
|
+
type: 'number',
|
58
|
+
postgresql: {
|
59
|
+
columnName: 'created_by',
|
60
|
+
dataType: 'integer',
|
61
|
+
},
|
62
|
+
}),
|
63
|
+
__metadata("design:type", Object)
|
64
|
+
], Mixed.prototype, "createdBy", void 0);
|
65
|
+
__decorate([
|
66
|
+
(0, repository_1.belongsTo)(creatorResolver, { keyFrom: 'modifiedBy', keyTo: modifierKeyTo, name: 'modifier' }, {
|
67
|
+
type: 'number',
|
68
|
+
postgresql: {
|
69
|
+
columnName: 'modified_by',
|
70
|
+
dataType: 'integer',
|
71
|
+
},
|
72
|
+
}),
|
73
|
+
__metadata("design:type", Object)
|
74
|
+
], Mixed.prototype, "modifiedBy", void 0);
|
75
|
+
Mixed = __decorate([
|
76
|
+
(0, repository_1.model)()
|
77
|
+
], Mixed);
|
78
|
+
return Mixed;
|
79
|
+
};
|
80
|
+
exports.UserAuditMixin = UserAuditMixin;
|
81
|
+
//# sourceMappingURL=user-audit-v2.mixin.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"user-audit-v2.mixin.js","sourceRoot":"","sources":["../../src/mixins/user-audit-v2.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,2CAAuC;AAEvC,qDAA0F;AAEnF,MAAM,cAAc,GAAG,CAK5B,UAAa,EACb,IAMC,EACD,EAAE;IACF,MAAM,EAAE,WAAW,GAAG,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;IAE3G,IAAI,CAAC,WAAW,EAAE,CAAC;QAEjB,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,UAAU;SAoB7B,CAAA;QAXC;YARC,IAAA,qBAAQ,EAAC;gBACR,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,UAAU,EAAE,YAAY;oBACxB,QAAQ,EAAE,SAAS;iBACpB;gBACD,gBAAgB;aACjB,CAAC;;gDACgB;QAUlB;YARC,IAAA,qBAAQ,EAAC;gBACR,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,UAAU,EAAE,aAAa;oBACzB,QAAQ,EAAE,SAAS;iBACpB;gBACD,gBAAgB;aACjB,CAAC;;iDACiB;QAnBf,KAAK;YADV,IAAA,kBAAK,GAAE;WACF,KAAK,CAoBV;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,WAAW,IAAI,CAAC,eAAe,EAAE,CAAC;QACpC,MAAM,IAAA,oBAAQ,EAAC,EAAE,OAAO,EAAE,0CAA0C,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,WAAW,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACrC,MAAM,IAAA,oBAAQ,EAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,CAAC;IAC3E,CAAC;IAGD,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,UAAU;KA0B7B,CAAA;IAdC;QAXC,IAAA,sBAAS,EACR,eAAgB,EAChB,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,EAC9D;YACE,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,SAAS;aACpB;SACF,CACF;;4CACiB;IAalB;QAXC,IAAA,sBAAS,EACR,eAAgB,EAChB,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,EACjE;YACE,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,aAAa;gBACzB,QAAQ,EAAE,SAAS;aACpB;SACF,CACF;;6CACkB;IAzBf,KAAK;QADV,IAAA,kBAAK,GAAE;OACF,KAAK,CA0BV;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAjFW,QAAA,cAAc,kBAiFzB"}
|
@@ -1,7 +1,10 @@
|
|
1
1
|
import { IdType } from '../common/types';
|
2
2
|
import { MixinTarget } from '@loopback/core';
|
3
3
|
import { Entity } from '@loopback/repository';
|
4
|
-
|
4
|
+
/**
|
5
|
+
* @deprecated The method will soon deleted
|
6
|
+
*/
|
7
|
+
export declare const UserAuditMixinDeprecated: <E extends MixinTarget<Entity>>(superClass: E) => {
|
5
8
|
new (...args: any[]): {
|
6
9
|
createdBy: IdType;
|
7
10
|
modifiedBy: IdType;
|
@@ -9,9 +9,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
10
|
};
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
-
exports.
|
12
|
+
exports.UserAuditMixinDeprecated = void 0;
|
13
13
|
const repository_1 = require("@loopback/repository");
|
14
|
-
|
14
|
+
/**
|
15
|
+
* @deprecated The method will soon deleted
|
16
|
+
*/
|
17
|
+
const UserAuditMixinDeprecated = (superClass) => {
|
15
18
|
class Mixed extends superClass {
|
16
19
|
}
|
17
20
|
__decorate([
|
@@ -21,7 +24,7 @@ const UserAuditMixin = (superClass) => {
|
|
21
24
|
columnName: 'created_by',
|
22
25
|
dataType: 'integer',
|
23
26
|
},
|
24
|
-
hidden: true,
|
27
|
+
// hidden: true,
|
25
28
|
}),
|
26
29
|
__metadata("design:type", Object)
|
27
30
|
], Mixed.prototype, "createdBy", void 0);
|
@@ -32,11 +35,11 @@ const UserAuditMixin = (superClass) => {
|
|
32
35
|
columnName: 'modified_by',
|
33
36
|
dataType: 'integer',
|
34
37
|
},
|
35
|
-
hidden: true,
|
38
|
+
// hidden: true,
|
36
39
|
}),
|
37
40
|
__metadata("design:type", Object)
|
38
41
|
], Mixed.prototype, "modifiedBy", void 0);
|
39
42
|
return Mixed;
|
40
43
|
};
|
41
|
-
exports.
|
44
|
+
exports.UserAuditMixinDeprecated = UserAuditMixinDeprecated;
|
42
45
|
//# sourceMappingURL=user-audit.mixin.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"user-audit.mixin.js","sourceRoot":"","sources":["../../src/mixins/user-audit.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,qDAAwD;
|
1
|
+
{"version":3,"file":"user-audit.mixin.js","sourceRoot":"","sources":["../../src/mixins/user-audit.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,qDAAwD;AAExD;;GAEG;AACI,MAAM,wBAAwB,GAAG,CAAgC,UAAa,EAAE,EAAE;IACvF,MAAM,KAAM,SAAQ,UAAU;KAoB7B;IAXC;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,SAAS;aACpB;YACD,gBAAgB;SACjB,CAAC;;4CACgB;IAUlB;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,aAAa;gBACzB,QAAQ,EAAE,SAAS;aACpB;YACD,gBAAgB;SACjB,CAAC;;6CACiB;IAGrB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAxBW,QAAA,wBAAwB,4BAwBnC"}
|