@haskou/value-objects 1.3.0 → 2.0.0
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/value-objects/crypto/EncryptedKeyPair.d.ts +1 -1
- package/dist/value-objects/crypto/EncryptedKeyPair.d.ts.map +1 -1
- package/dist/value-objects/crypto/EncryptedKeyPair.js +3 -2
- package/dist/value-objects/crypto/EncryptedKeyPair.js.map +1 -1
- package/dist/value-objects/crypto/EncryptedPrivateKey.d.ts +1 -1
- package/dist/value-objects/crypto/EncryptedPrivateKey.d.ts.map +1 -1
- package/dist/value-objects/crypto/EncryptedPrivateKey.js +20 -19
- package/dist/value-objects/crypto/EncryptedPrivateKey.js.map +1 -1
- package/dist/value-objects/crypto/KeyPair.d.ts +1 -1
- package/dist/value-objects/crypto/KeyPair.d.ts.map +1 -1
- package/dist/value-objects/crypto/KeyPair.js +4 -2
- package/dist/value-objects/crypto/KeyPair.js.map +1 -1
- package/package.json +1 -1
|
@@ -12,7 +12,7 @@ export declare class EncryptedKeyPair {
|
|
|
12
12
|
static fromPrimitives(primitives: PrimitiveOf<EncryptedKeyPair>): EncryptedKeyPair;
|
|
13
13
|
constructor(publicKey: PublicKey, encryptedPrivateKey: EncryptedPrivateKey);
|
|
14
14
|
isValidSignature(payload: CryptoPayload, signature: Signature): boolean;
|
|
15
|
-
sign(payload: CryptoPayload, password: string | StringValueObject): Signature
|
|
15
|
+
sign(payload: CryptoPayload, password: string | StringValueObject): Promise<Signature>;
|
|
16
16
|
toPrimitives(): {
|
|
17
17
|
encryptedPrivateKey: string;
|
|
18
18
|
publicKey: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EncryptedKeyPair.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedKeyPair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,gBAAgB;IAwBzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;WAxBlB,cAAc,CAChC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,gBAAgB,CAAC;WASd,cAAc,CAC1B,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACxC,gBAAgB;gBAQA,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,mBAAmB;IAGpD,gBAAgB,CACrB,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,SAAS,GACnB,OAAO;
|
|
1
|
+
{"version":3,"file":"EncryptedKeyPair.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedKeyPair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,gBAAgB;IAwBzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;WAxBlB,cAAc,CAChC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,gBAAgB,CAAC;WASd,cAAc,CAC1B,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACxC,gBAAgB;gBAQA,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,mBAAmB;IAGpD,gBAAgB,CACrB,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,SAAS,GACnB,OAAO;IAIG,IAAI,CACf,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,SAAS,CAAC;IAMd,YAAY;;;;CAMpB"}
|
|
@@ -20,8 +20,9 @@ class EncryptedKeyPair {
|
|
|
20
20
|
isValidSignature(payload, signature) {
|
|
21
21
|
return this.publicKey.isValidSignature(payload, signature);
|
|
22
22
|
}
|
|
23
|
-
sign(payload, password) {
|
|
24
|
-
|
|
23
|
+
async sign(payload, password) {
|
|
24
|
+
const privateKey = await this.encryptedPrivateKey.decrypt(password);
|
|
25
|
+
return privateKey.sign(payload);
|
|
25
26
|
}
|
|
26
27
|
toPrimitives() {
|
|
27
28
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EncryptedKeyPair.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedKeyPair.ts"],"names":[],"mappings":";;;AAGA,+DAA4D;AAE5D,2CAAwC;AAGxC,MAAa,gBAAgB;IAwBR;IACA;IAxBZ,MAAM,CAAC,KAAK,CAAC,cAAc,CAChC,SAAoB,EACpB,UAAsB,EACtB,QAAoC;QAEpC,MAAM,mBAAmB,GAAG,MAAM,yCAAmB,CAAC,MAAM,CAC1D,UAAU,EACV,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,gBAAgB,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAC9D,CAAC;IAEM,MAAM,CAAC,cAAc,CAC1B,UAAyC;QAEzC,OAAO,IAAI,gBAAgB,CACzB,IAAI,qBAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EACnC,IAAI,yCAAmB,CAAC,UAAU,CAAC,mBAAmB,CAAC,CACxD,CAAC;IACJ,CAAC;IAED,YACmB,SAAoB,EACpB,mBAAwC;QADxC,cAAS,GAAT,SAAS,CAAW;QACpB,wBAAmB,GAAnB,mBAAmB,CAAqB;IACxD,CAAC;IAEG,gBAAgB,CACrB,OAAsB,EACtB,SAAoB;QAEpB,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;IAEM,IAAI,
|
|
1
|
+
{"version":3,"file":"EncryptedKeyPair.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedKeyPair.ts"],"names":[],"mappings":";;;AAGA,+DAA4D;AAE5D,2CAAwC;AAGxC,MAAa,gBAAgB;IAwBR;IACA;IAxBZ,MAAM,CAAC,KAAK,CAAC,cAAc,CAChC,SAAoB,EACpB,UAAsB,EACtB,QAAoC;QAEpC,MAAM,mBAAmB,GAAG,MAAM,yCAAmB,CAAC,MAAM,CAC1D,UAAU,EACV,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,gBAAgB,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAC9D,CAAC;IAEM,MAAM,CAAC,cAAc,CAC1B,UAAyC;QAEzC,OAAO,IAAI,gBAAgB,CACzB,IAAI,qBAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EACnC,IAAI,yCAAmB,CAAC,UAAU,CAAC,mBAAmB,CAAC,CACxD,CAAC;IACJ,CAAC;IAED,YACmB,SAAoB,EACpB,mBAAwC;QADxC,cAAS,GAAT,SAAS,CAAW;QACpB,wBAAmB,GAAnB,mBAAmB,CAAqB;IACxD,CAAC;IAEG,gBAAgB,CACrB,OAAsB,EACtB,SAAoB;QAEpB,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;IAEM,KAAK,CAAC,IAAI,CACf,OAAsB,EACtB,QAAoC;QAEpC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEpE,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAEM,YAAY;QACjB,OAAO;YACL,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE;YACvD,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;SACpC,CAAC;IACJ,CAAC;CACF;AAlDD,4CAkDC"}
|
|
@@ -9,6 +9,6 @@ export declare class EncryptedPrivateKey extends ValueObject<string> {
|
|
|
9
9
|
private static readonly ALGORITHM;
|
|
10
10
|
static create(privateKey: PrivateKey, password: string | StringValueObject): Promise<EncryptedPrivateKey>;
|
|
11
11
|
constructor(encryptedPrivateKey: string | StringValueObject);
|
|
12
|
-
decrypt(password: string | StringValueObject): PrivateKey
|
|
12
|
+
decrypt(password: string | StringValueObject): Promise<PrivateKey>;
|
|
13
13
|
}
|
|
14
14
|
//# sourceMappingURL=EncryptedPrivateKey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EncryptedPrivateKey.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedPrivateKey.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EncryptedPrivateKey.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedPrivateKey.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,qBAAa,mBAAoB,SAAQ,WAAW,CAAC,MAAM,CAAC;IAC1D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAU;IAC5C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAM;IAC1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAM;IACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAM;IACpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAY;WAEzB,MAAM,CACxB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,mBAAmB,CAAC;gBA2BnB,mBAAmB,EAAE,MAAM,GAAG,iBAAiB;IAI9C,OAAO,CAClB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,UAAU,CAAC;CA0BvB"}
|
|
@@ -3,8 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.EncryptedPrivateKey = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const crypto = tslib_1.__importStar(require("node:crypto"));
|
|
6
|
+
const node_util_1 = require("node:util");
|
|
6
7
|
const ValueObject_1 = require("../ValueObject");
|
|
7
8
|
const PrivateKey_1 = require("./PrivateKey");
|
|
9
|
+
const pbkdf2 = (0, node_util_1.promisify)(crypto.pbkdf2);
|
|
10
|
+
const randomBytes = (0, node_util_1.promisify)(crypto.randomBytes);
|
|
8
11
|
class EncryptedPrivateKey extends ValueObject_1.ValueObject {
|
|
9
12
|
static ITERATIONS = 100000;
|
|
10
13
|
static SALT_ENTROPY = 16;
|
|
@@ -12,35 +15,33 @@ class EncryptedPrivateKey extends ValueObject_1.ValueObject {
|
|
|
12
15
|
static LENGTH = 32;
|
|
13
16
|
static ALGORITHM = 'sha256';
|
|
14
17
|
static async create(privateKey, password) {
|
|
15
|
-
const salt =
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
].join('.'));
|
|
31
|
-
});
|
|
18
|
+
const salt = await randomBytes(EncryptedPrivateKey.SALT_ENTROPY);
|
|
19
|
+
const key = await pbkdf2(password.valueOf(), salt, EncryptedPrivateKey.ITERATIONS, EncryptedPrivateKey.LENGTH, EncryptedPrivateKey.ALGORITHM);
|
|
20
|
+
const iv = await randomBytes(EncryptedPrivateKey.IV_ENTROPY);
|
|
21
|
+
const cipher = crypto.createCipheriv('aes-256-gcm', key, iv);
|
|
22
|
+
const encrypted = Buffer.concat([
|
|
23
|
+
cipher.update(privateKey.valueOf()),
|
|
24
|
+
cipher.final(),
|
|
25
|
+
]);
|
|
26
|
+
const tag = cipher.getAuthTag();
|
|
27
|
+
const encryptedPrivateKey = [
|
|
28
|
+
encrypted.toString('base64'),
|
|
29
|
+
iv.toString('base64'),
|
|
30
|
+
salt.toString('base64'),
|
|
31
|
+
tag.toString('base64'),
|
|
32
|
+
].join('.');
|
|
32
33
|
return new EncryptedPrivateKey(encryptedPrivateKey);
|
|
33
34
|
}
|
|
34
35
|
constructor(encryptedPrivateKey) {
|
|
35
36
|
super(encryptedPrivateKey?.valueOf());
|
|
36
37
|
}
|
|
37
|
-
decrypt(password) {
|
|
38
|
+
async decrypt(password) {
|
|
38
39
|
const [cipherTextB64, ivB64, saltB64, tagB64] = this.valueOf().split('.');
|
|
39
40
|
const cipherText = Buffer.from(cipherTextB64, 'base64');
|
|
40
41
|
const iv = Buffer.from(ivB64, 'base64');
|
|
41
42
|
const salt = Buffer.from(saltB64, 'base64');
|
|
42
43
|
const tag = Buffer.from(tagB64, 'base64');
|
|
43
|
-
const key =
|
|
44
|
+
const key = await pbkdf2(password.valueOf(), salt, EncryptedPrivateKey.ITERATIONS, EncryptedPrivateKey.LENGTH, EncryptedPrivateKey.ALGORITHM);
|
|
44
45
|
const decipher = crypto.createDecipheriv('aes-256-gcm', key, iv);
|
|
45
46
|
decipher.setAuthTag(tag);
|
|
46
47
|
const decrypted = Buffer.concat([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EncryptedPrivateKey.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedPrivateKey.ts"],"names":[],"mappings":";;;;AAAA,4DAAsC;AAGtC,gDAA6C;AAC7C,6CAA0C;AAE1C,MAAa,mBAAoB,SAAQ,yBAAmB;IAClD,MAAM,CAAU,UAAU,GAAG,MAAM,CAAC;IACpC,MAAM,CAAU,YAAY,GAAG,EAAE,CAAC;IAClC,MAAM,CAAU,UAAU,GAAG,EAAE,CAAC;IAChC,MAAM,CAAU,MAAM,GAAG,EAAE,CAAC;IAC5B,MAAM,CAAU,SAAS,GAAG,QAAQ,CAAC;IAEtC,MAAM,CAAC,KAAK,CAAC,MAAM,CACxB,UAAsB,EACtB,QAAoC;QAEpC,MAAM,IAAI,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"EncryptedPrivateKey.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedPrivateKey.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ import { Signature } from './Signature';
|
|
|
8
8
|
export declare class KeyPair {
|
|
9
9
|
private readonly publicKey;
|
|
10
10
|
private readonly privateKey;
|
|
11
|
-
static generate(): KeyPair
|
|
11
|
+
static generate(): Promise<KeyPair>;
|
|
12
12
|
static fromPrimitives(primitives: PrimitiveOf<KeyPair>): KeyPair;
|
|
13
13
|
constructor(publicKey: PublicKey, privateKey: PrivateKey);
|
|
14
14
|
encryptKeyPair(password: string | StringValueObject): Promise<EncryptedKeyPair>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyPair.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/KeyPair.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"KeyPair.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/KeyPair.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,qBAAa,OAAO;IAkBhB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,UAAU;WAlBT,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;WASlC,cAAc,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO;gBAQpD,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU;IAG5B,cAAc,CACzB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,gBAAgB,CAAC;IAQrB,gBAAgB,CACrB,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,SAAS,GACnB,OAAO;IAIH,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS;IAIvC,YAAY;;;;CAMpB"}
|
|
@@ -3,14 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.KeyPair = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const crypto = tslib_1.__importStar(require("node:crypto"));
|
|
6
|
+
const node_util_1 = require("node:util");
|
|
6
7
|
const EncryptedKeyPair_1 = require("./EncryptedKeyPair");
|
|
7
8
|
const PrivateKey_1 = require("./PrivateKey");
|
|
8
9
|
const PublicKey_1 = require("./PublicKey");
|
|
10
|
+
const generateKeyPair = (0, node_util_1.promisify)(crypto.generateKeyPair);
|
|
9
11
|
class KeyPair {
|
|
10
12
|
publicKey;
|
|
11
13
|
privateKey;
|
|
12
|
-
static generate() {
|
|
13
|
-
const { privateKey, publicKey } =
|
|
14
|
+
static async generate() {
|
|
15
|
+
const { privateKey, publicKey } = await generateKeyPair('ed25519', {
|
|
14
16
|
privateKeyEncoding: { format: 'pem', type: 'pkcs8' },
|
|
15
17
|
publicKeyEncoding: { format: 'pem', type: 'spki' },
|
|
16
18
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyPair.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/KeyPair.ts"],"names":[],"mappings":";;;;AAAA,4DAAsC;AAKtC,yDAAsD;AACtD,6CAA0C;AAC1C,2CAAwC;AAGxC,MAAa,OAAO;IAkBC;IACA;IAlBZ,MAAM,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"KeyPair.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/KeyPair.ts"],"names":[],"mappings":";;;;AAAA,4DAAsC;AACtC,yCAAsC;AAKtC,yDAAsD;AACtD,6CAA0C;AAC1C,2CAAwC;AAGxC,MAAM,eAAe,GAAG,IAAA,qBAAS,EAAC,MAAM,CAAC,eAAe,CAAC,CAAC;AAE1D,MAAa,OAAO;IAkBC;IACA;IAlBZ,MAAM,CAAC,KAAK,CAAC,QAAQ;QAC1B,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE;YACjE,kBAAkB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE;YACpD,iBAAiB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE;SACnD,CAAC,CAAC;QAEH,OAAO,IAAI,OAAO,CAAC,IAAI,qBAAS,CAAC,SAAS,CAAC,EAAE,IAAI,uBAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3E,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,UAAgC;QAC3D,OAAO,IAAI,OAAO,CAChB,IAAI,qBAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EACnC,IAAI,uBAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CACtC,CAAC;IACJ,CAAC;IAED,YACmB,SAAoB,EACpB,UAAsB;QADtB,cAAS,GAAT,SAAS,CAAW;QACpB,eAAU,GAAV,UAAU,CAAY;IACtC,CAAC;IAEG,KAAK,CAAC,cAAc,CACzB,QAAoC;QAEpC,OAAO,MAAM,mCAAgB,CAAC,cAAc,CAC1C,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,UAAU,EACf,QAAQ,CAAC,OAAO,EAAE,CACnB,CAAC;IACJ,CAAC;IAEM,gBAAgB,CACrB,OAAsB,EACtB,SAAoB;QAEpB,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;IAEM,IAAI,CAAC,OAAsB;QAChC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAEM,YAAY;QACjB,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;YACrC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;SACpC,CAAC;IACJ,CAAC;CACF;AAjDD,0BAiDC"}
|