@interop/wallet-core 0.5.0 → 0.6.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/enrollment/enrollment.d.ts +144 -0
- package/dist/enrollment/enrollment.d.ts.map +1 -0
- package/dist/enrollment/enrollment.js +296 -0
- package/dist/enrollment/enrollment.js.map +1 -0
- package/dist/enrollment/index.d.ts +20 -0
- package/dist/enrollment/index.d.ts.map +1 -0
- package/dist/enrollment/index.js +19 -0
- package/dist/enrollment/index.js.map +1 -0
- package/dist/identity/index.d.ts +0 -5
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +0 -4
- package/dist/identity/index.js.map +1 -1
- package/dist/index.d.ts +13 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -3
- package/dist/index.js.map +1 -1
- package/dist/keyring/fetch.d.ts +22 -0
- package/dist/keyring/fetch.d.ts.map +1 -0
- package/dist/keyring/fetch.js +35 -0
- package/dist/keyring/fetch.js.map +1 -0
- package/dist/keyring/index.d.ts +30 -0
- package/dist/keyring/index.d.ts.map +1 -0
- package/dist/keyring/index.js +28 -0
- package/dist/keyring/index.js.map +1 -0
- package/dist/keyring/kdf.d.ts +102 -0
- package/dist/keyring/kdf.d.ts.map +1 -0
- package/dist/keyring/kdf.js +148 -0
- package/dist/keyring/kdf.js.map +1 -0
- package/dist/keyring/record.d.ts +98 -0
- package/dist/keyring/record.d.ts.map +1 -0
- package/dist/keyring/record.js +119 -0
- package/dist/keyring/record.js.map +1 -0
- package/dist/keyring/unlockSpace.d.ts +101 -0
- package/dist/keyring/unlockSpace.d.ts.map +1 -0
- package/dist/keyring/unlockSpace.js +226 -0
- package/dist/keyring/unlockSpace.js.map +1 -0
- package/dist/keys/index.d.ts +24 -0
- package/dist/keys/index.d.ts.map +1 -0
- package/dist/keys/index.js +22 -0
- package/dist/keys/index.js.map +1 -0
- package/dist/keys/puk.d.ts +42 -0
- package/dist/keys/puk.d.ts.map +1 -0
- package/dist/keys/puk.js +56 -0
- package/dist/keys/puk.js.map +1 -0
- package/dist/keys/pukRoster.d.ts +210 -0
- package/dist/keys/pukRoster.d.ts.map +1 -0
- package/dist/keys/pukRoster.js +263 -0
- package/dist/keys/pukRoster.js.map +1 -0
- package/dist/keys/rosterStore.d.ts +18 -0
- package/dist/keys/rosterStore.d.ts.map +1 -0
- package/dist/keys/rosterStore.js +38 -0
- package/dist/keys/rosterStore.js.map +1 -0
- package/dist/space/collections.d.ts +57 -0
- package/dist/space/collections.d.ts.map +1 -1
- package/dist/space/collections.js +48 -0
- package/dist/space/collections.js.map +1 -1
- package/dist/space/index.d.ts +4 -0
- package/dist/space/index.d.ts.map +1 -1
- package/dist/space/index.js +4 -0
- package/dist/space/index.js.map +1 -1
- package/dist/webvh/didWeb.d.ts +41 -0
- package/dist/webvh/didWeb.d.ts.map +1 -0
- package/dist/webvh/didWeb.js +24 -0
- package/dist/webvh/didWeb.js.map +1 -0
- package/dist/webvh/didWebvh.d.ts +251 -0
- package/dist/webvh/didWebvh.d.ts.map +1 -0
- package/dist/webvh/didWebvh.js +775 -0
- package/dist/webvh/didWebvh.js.map +1 -0
- package/dist/webvh/index.d.ts +27 -0
- package/dist/webvh/index.d.ts.map +1 -0
- package/dist/webvh/index.js +24 -0
- package/dist/webvh/index.js.map +1 -0
- package/dist/webvh/zcap.d.ts +104 -0
- package/dist/webvh/zcap.d.ts.map +1 -0
- package/dist/webvh/zcap.js +117 -0
- package/dist/webvh/zcap.js.map +1 -0
- package/package.json +30 -4
- package/dist/identity/collectionKeys.d.ts +0 -36
- package/dist/identity/collectionKeys.d.ts.map +0 -1
- package/dist/identity/collectionKeys.js +0 -92
- package/dist/identity/collectionKeys.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"didWebvh.js","sourceRoot":"","sources":["../../src/webvh/didWebvh.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2026 Interop Alliance. All rights reserved.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* The `@interop/wallet-core/webvh` subpath: the account's did:webvh identity --
|
|
6
|
+
* the hash-chained, self-certifying DID log hosted in the world-readable `id`
|
|
7
|
+
* collection of the user's WAS Space, whose document is the enrolled-client
|
|
8
|
+
* roster.
|
|
9
|
+
*
|
|
10
|
+
* - `ensureDidWebvh` / `rotateWebvhUpdateKey` / `enrollWebvhClient` --
|
|
11
|
+
* provisioning, per-client update-key rotation, and the two-entry client
|
|
12
|
+
* enrollment ceremony, all over the narrow `WebvhIdStore` seam.
|
|
13
|
+
* - `repairKeyBindings` -- the lost-`keys.json` recovery path.
|
|
14
|
+
* - `webvhZcapClient` / `webvhSigner` / `didKeyZcapClient` -- ZCap signing
|
|
15
|
+
* under the account's did:webvh verification-method id (and the
|
|
16
|
+
* pre-promotion did:key form).
|
|
17
|
+
*
|
|
18
|
+
* Kept out of the root export: this subpath pulls the did:webvh, ed25519, and
|
|
19
|
+
* ezcap dependency graph (the same isolation pattern as `./identity`).
|
|
20
|
+
*/
|
|
21
|
+
export { didWebvhControllerTemplate, ensureDidWebvh, enrollWebvhClient, mintClientWebvhUpdateKeys, repairKeyBindings, rotateWebvhUpdateKey, updateKeyMultibase } from './didWebvh.js';
|
|
22
|
+
export type { ClientWebvhUpdateKeys, DidWebvhBlock, DidWebKeyMapV2, WebvhClientKeys, WebvhEnrollmentKeys, WebvhIdStore } from './didWebvh.js';
|
|
23
|
+
export { multibaseOf } from './didWeb.js';
|
|
24
|
+
export type { DidWebKey, DidWebKeyMap } from './didWeb.js';
|
|
25
|
+
export { clientSigningKeyMultibase, didKeyZcapClient, isWebvhDid, webvhCapabilityAgent, webvhSigner, webvhZcapClient } from './zcap.js';
|
|
26
|
+
export type { ICapabilityAgent } from './zcap.js';
|
|
27
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/webvh/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EACL,0BAA0B,EAC1B,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,eAAe,CAAA;AACtB,YAAY,EACV,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,YAAY,EACb,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1D,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,UAAU,EACV,oBAAoB,EACpB,WAAW,EACX,eAAe,EAChB,MAAM,WAAW,CAAA;AAClB,YAAY,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2026 Interop Alliance. All rights reserved.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* The `@interop/wallet-core/webvh` subpath: the account's did:webvh identity --
|
|
6
|
+
* the hash-chained, self-certifying DID log hosted in the world-readable `id`
|
|
7
|
+
* collection of the user's WAS Space, whose document is the enrolled-client
|
|
8
|
+
* roster.
|
|
9
|
+
*
|
|
10
|
+
* - `ensureDidWebvh` / `rotateWebvhUpdateKey` / `enrollWebvhClient` --
|
|
11
|
+
* provisioning, per-client update-key rotation, and the two-entry client
|
|
12
|
+
* enrollment ceremony, all over the narrow `WebvhIdStore` seam.
|
|
13
|
+
* - `repairKeyBindings` -- the lost-`keys.json` recovery path.
|
|
14
|
+
* - `webvhZcapClient` / `webvhSigner` / `didKeyZcapClient` -- ZCap signing
|
|
15
|
+
* under the account's did:webvh verification-method id (and the
|
|
16
|
+
* pre-promotion did:key form).
|
|
17
|
+
*
|
|
18
|
+
* Kept out of the root export: this subpath pulls the did:webvh, ed25519, and
|
|
19
|
+
* ezcap dependency graph (the same isolation pattern as `./identity`).
|
|
20
|
+
*/
|
|
21
|
+
export { didWebvhControllerTemplate, ensureDidWebvh, enrollWebvhClient, mintClientWebvhUpdateKeys, repairKeyBindings, rotateWebvhUpdateKey, updateKeyMultibase } from './didWebvh.js';
|
|
22
|
+
export { multibaseOf } from './didWeb.js';
|
|
23
|
+
export { clientSigningKeyMultibase, didKeyZcapClient, isWebvhDid, webvhCapabilityAgent, webvhSigner, webvhZcapClient } from './zcap.js';
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/webvh/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EACL,0BAA0B,EAC1B,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,eAAe,CAAA;AAUtB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAGzC,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,UAAU,EACV,oBAAoB,EACpB,WAAW,EACX,eAAe,EAChB,MAAM,WAAW,CAAA"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { ZcapClient } from '@interop/ezcap';
|
|
2
|
+
import type { ISigner } from '@interop/data-integrity-core';
|
|
3
|
+
/**
|
|
4
|
+
* The minimal shape of a signing key agent this module operates on -- what
|
|
5
|
+
* `@interop/webkms-client`'s `CapabilityAgent` (and therefore the `keyAgent`
|
|
6
|
+
* of `agentsFromSeed`) already provides: a did:key id, a signer, and the
|
|
7
|
+
* underlying Ed25519 verification key descriptor the X25519 key-agreement twin
|
|
8
|
+
* derives from.
|
|
9
|
+
*/
|
|
10
|
+
export interface ICapabilityAgent {
|
|
11
|
+
id: string;
|
|
12
|
+
handle: string;
|
|
13
|
+
getSigner: () => ISigner;
|
|
14
|
+
getVerificationKeyPair: () => {
|
|
15
|
+
type: string;
|
|
16
|
+
controller: string;
|
|
17
|
+
publicKeyMultibase: string;
|
|
18
|
+
privateKeyMultibase?: string;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* The client's Ed25519 public key multibase (`z6Mk...`), read out of its
|
|
23
|
+
* did:key id (`did:key:<publicKeyMultibase>`).
|
|
24
|
+
*
|
|
25
|
+
* @param options {object}
|
|
26
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
27
|
+
* @returns {string}
|
|
28
|
+
*/
|
|
29
|
+
export declare function clientSigningKeyMultibase({ keyAgent }: {
|
|
30
|
+
keyAgent: ICapabilityAgent;
|
|
31
|
+
}): string;
|
|
32
|
+
/**
|
|
33
|
+
* A signer over the client's Ed25519 key whose id names this client's
|
|
34
|
+
* verification method in the did:webvh document
|
|
35
|
+
* (`<did:webvh>#<publicKeyMultibase>`). The underlying signer's `sign` is
|
|
36
|
+
* bound rather than spread, so a prototype-hosted method survives.
|
|
37
|
+
*
|
|
38
|
+
* @param options {object}
|
|
39
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
40
|
+
* @param options.did {string} the account's did:webvh DID
|
|
41
|
+
* @returns {object} an ISigner-shaped `{ id, type, sign }`
|
|
42
|
+
*/
|
|
43
|
+
export declare function webvhSigner({ keyAgent, did }: {
|
|
44
|
+
keyAgent: ICapabilityAgent;
|
|
45
|
+
did: string;
|
|
46
|
+
}): {
|
|
47
|
+
id: string;
|
|
48
|
+
type: string;
|
|
49
|
+
sign: (options: {
|
|
50
|
+
data: Uint8Array;
|
|
51
|
+
}) => Promise<Uint8Array>;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* A ZcapClient signing invocations and delegations with this client's key
|
|
55
|
+
* under its did:webvh verification method id -- the client every data-Space
|
|
56
|
+
* request uses once the Space controller is the did:webvh.
|
|
57
|
+
*
|
|
58
|
+
* @param options {object}
|
|
59
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
60
|
+
* @param options.did {string} the account's did:webvh DID
|
|
61
|
+
* @returns {ZcapClient}
|
|
62
|
+
*/
|
|
63
|
+
export declare function webvhZcapClient({ keyAgent, did }: {
|
|
64
|
+
keyAgent: ICapabilityAgent;
|
|
65
|
+
did: string;
|
|
66
|
+
}): ZcapClient;
|
|
67
|
+
/**
|
|
68
|
+
* A ZcapClient signing with the client's plain did:key identity -- the
|
|
69
|
+
* pre-promotion form, reconstructable from the key agent alone. Used to
|
|
70
|
+
* authorize the promotion itself (the PUT naming the did:webvh is signed by
|
|
71
|
+
* the STORED controller, the did:key) and to heal a promotion that tore.
|
|
72
|
+
*
|
|
73
|
+
* @param options {object}
|
|
74
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
75
|
+
* @returns {ZcapClient}
|
|
76
|
+
*/
|
|
77
|
+
export declare function didKeyZcapClient({ keyAgent }: {
|
|
78
|
+
keyAgent: ICapabilityAgent;
|
|
79
|
+
}): ZcapClient;
|
|
80
|
+
/**
|
|
81
|
+
* A CapabilityAgent-shaped wrapper presenting the client's key under the
|
|
82
|
+
* did:webvh identity, for consumers that take an agent rather than a signer
|
|
83
|
+
* (the WebKMS `KeystoreAgent`, once the keystore's controller is promoted to
|
|
84
|
+
* the did:webvh).
|
|
85
|
+
*
|
|
86
|
+
* @param options {object}
|
|
87
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
88
|
+
* @param options.did {string} the account's did:webvh DID
|
|
89
|
+
* @returns {object} an ICapabilityAgent-shaped wrapper
|
|
90
|
+
*/
|
|
91
|
+
export declare function webvhCapabilityAgent({ keyAgent, did }: {
|
|
92
|
+
keyAgent: ICapabilityAgent;
|
|
93
|
+
did: string;
|
|
94
|
+
}): ICapabilityAgent;
|
|
95
|
+
/**
|
|
96
|
+
* Whether a DID (an account pointer's `did` member, typically) is a
|
|
97
|
+
* did:webvh id -- the marker that the account's Space controller has been
|
|
98
|
+
* promoted, so sessions must sign with the did:webvh keyId.
|
|
99
|
+
*
|
|
100
|
+
* @param did {string | undefined}
|
|
101
|
+
* @returns {boolean}
|
|
102
|
+
*/
|
|
103
|
+
export declare function isWebvhDid(did: string | undefined): did is string;
|
|
104
|
+
//# sourceMappingURL=zcap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zcap.d.ts","sourceRoot":"","sources":["../../src/webvh/zcap.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAE3D;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,OAAO,CAAA;IACxB,sBAAsB,EAAE,MAAM;QAC5B,IAAI,EAAE,MAAM,CAAA;QACZ,UAAU,EAAE,MAAM,CAAA;QAClB,kBAAkB,EAAE,MAAM,CAAA;QAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAA;KAC7B,CAAA;CACF;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,QAAQ,EACT,EAAE;IACD,QAAQ,EAAE,gBAAgB,CAAA;CAC3B,GAAG,MAAM,CAMT;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,GAAG,EACJ,EAAE;IACD,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,GAAG,EAAE,MAAM,CAAA;CACZ;;;oBAGmB;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,OAAO,CAAC,UAAU,CAAC;EAO/D;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,GAAG,EACJ,EAAE;IACD,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,UAAU,CAOb;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACT,EAAE;IACD,QAAQ,EAAE,gBAAgB,CAAA;CAC3B,GAAG,UAAU,CAOb;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,GAAG,EACJ,EAAE;IACD,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,gBAAgB,CAQnB;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,GAAG,IAAI,MAAM,CAEjE"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2026 Interop Alliance. All rights reserved.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* ZCap signing under the account's did:webvh identity. After controller
|
|
6
|
+
* promotion the data Space's controller is the did:webvh DID, whose document
|
|
7
|
+
* carries a verification method per enrolled client -- so invocations and
|
|
8
|
+
* delegations must be signed with a keyId of the form
|
|
9
|
+
* `<did:webvh>#<publicKeyMultibase>` (this client's Ed25519 key, published
|
|
10
|
+
* under `capabilityInvocation` / `capabilityDelegation`). The key material
|
|
11
|
+
* is unchanged -- the client's own Ed25519 pair -- only the keyId names the
|
|
12
|
+
* verification method in the did:webvh document instead of the did:key one.
|
|
13
|
+
*/
|
|
14
|
+
import { Ed25519Signature2020 } from '@interop/ed25519-signature';
|
|
15
|
+
import { ZcapClient } from '@interop/ezcap';
|
|
16
|
+
/**
|
|
17
|
+
* The client's Ed25519 public key multibase (`z6Mk...`), read out of its
|
|
18
|
+
* did:key id (`did:key:<publicKeyMultibase>`).
|
|
19
|
+
*
|
|
20
|
+
* @param options {object}
|
|
21
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
22
|
+
* @returns {string}
|
|
23
|
+
*/
|
|
24
|
+
export function clientSigningKeyMultibase({ keyAgent }) {
|
|
25
|
+
const [scheme, method, publicKeyMultibase] = keyAgent.id.split(':');
|
|
26
|
+
if (scheme !== 'did' || method !== 'key' || !publicKeyMultibase) {
|
|
27
|
+
throw new Error(`Not a did:key agent id: "${keyAgent.id}".`);
|
|
28
|
+
}
|
|
29
|
+
return publicKeyMultibase;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* A signer over the client's Ed25519 key whose id names this client's
|
|
33
|
+
* verification method in the did:webvh document
|
|
34
|
+
* (`<did:webvh>#<publicKeyMultibase>`). The underlying signer's `sign` is
|
|
35
|
+
* bound rather than spread, so a prototype-hosted method survives.
|
|
36
|
+
*
|
|
37
|
+
* @param options {object}
|
|
38
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
39
|
+
* @param options.did {string} the account's did:webvh DID
|
|
40
|
+
* @returns {object} an ISigner-shaped `{ id, type, sign }`
|
|
41
|
+
*/
|
|
42
|
+
export function webvhSigner({ keyAgent, did }) {
|
|
43
|
+
const base = keyAgent.getSigner();
|
|
44
|
+
return {
|
|
45
|
+
id: `${did}#${clientSigningKeyMultibase({ keyAgent })}`,
|
|
46
|
+
type: base.type ?? 'Ed25519VerificationKey2020',
|
|
47
|
+
sign: base.sign.bind(base)
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* A ZcapClient signing invocations and delegations with this client's key
|
|
52
|
+
* under its did:webvh verification method id -- the client every data-Space
|
|
53
|
+
* request uses once the Space controller is the did:webvh.
|
|
54
|
+
*
|
|
55
|
+
* @param options {object}
|
|
56
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
57
|
+
* @param options.did {string} the account's did:webvh DID
|
|
58
|
+
* @returns {ZcapClient}
|
|
59
|
+
*/
|
|
60
|
+
export function webvhZcapClient({ keyAgent, did }) {
|
|
61
|
+
const signer = webvhSigner({ keyAgent, did });
|
|
62
|
+
return new ZcapClient({
|
|
63
|
+
SuiteClass: Ed25519Signature2020,
|
|
64
|
+
invocationSigner: signer,
|
|
65
|
+
delegationSigner: signer
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* A ZcapClient signing with the client's plain did:key identity -- the
|
|
70
|
+
* pre-promotion form, reconstructable from the key agent alone. Used to
|
|
71
|
+
* authorize the promotion itself (the PUT naming the did:webvh is signed by
|
|
72
|
+
* the STORED controller, the did:key) and to heal a promotion that tore.
|
|
73
|
+
*
|
|
74
|
+
* @param options {object}
|
|
75
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
76
|
+
* @returns {ZcapClient}
|
|
77
|
+
*/
|
|
78
|
+
export function didKeyZcapClient({ keyAgent }) {
|
|
79
|
+
const signer = keyAgent.getSigner();
|
|
80
|
+
return new ZcapClient({
|
|
81
|
+
SuiteClass: Ed25519Signature2020,
|
|
82
|
+
invocationSigner: signer,
|
|
83
|
+
delegationSigner: signer
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* A CapabilityAgent-shaped wrapper presenting the client's key under the
|
|
88
|
+
* did:webvh identity, for consumers that take an agent rather than a signer
|
|
89
|
+
* (the WebKMS `KeystoreAgent`, once the keystore's controller is promoted to
|
|
90
|
+
* the did:webvh).
|
|
91
|
+
*
|
|
92
|
+
* @param options {object}
|
|
93
|
+
* @param options.keyAgent {ICapabilityAgent}
|
|
94
|
+
* @param options.did {string} the account's did:webvh DID
|
|
95
|
+
* @returns {object} an ICapabilityAgent-shaped wrapper
|
|
96
|
+
*/
|
|
97
|
+
export function webvhCapabilityAgent({ keyAgent, did }) {
|
|
98
|
+
const signer = webvhSigner({ keyAgent, did });
|
|
99
|
+
return {
|
|
100
|
+
id: did,
|
|
101
|
+
handle: keyAgent.handle,
|
|
102
|
+
getSigner: () => signer,
|
|
103
|
+
getVerificationKeyPair: () => keyAgent.getVerificationKeyPair()
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Whether a DID (an account pointer's `did` member, typically) is a
|
|
108
|
+
* did:webvh id -- the marker that the account's Space controller has been
|
|
109
|
+
* promoted, so sessions must sign with the did:webvh keyId.
|
|
110
|
+
*
|
|
111
|
+
* @param did {string | undefined}
|
|
112
|
+
* @returns {boolean}
|
|
113
|
+
*/
|
|
114
|
+
export function isWebvhDid(did) {
|
|
115
|
+
return typeof did === 'string' && did.startsWith('did:webvh:');
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=zcap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zcap.js","sourceRoot":"","sources":["../../src/webvh/zcap.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;GASG;AACH,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAsB3C;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,EACxC,QAAQ,EAGT;IACC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACnE,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAA;IAC9D,CAAC;IACD,OAAO,kBAAkB,CAAA;AAC3B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,EAC1B,QAAQ,EACR,GAAG,EAIJ;IACC,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,EAG9B,CAAA;IACD,OAAO;QACL,EAAE,EAAE,GAAG,GAAG,IAAI,yBAAyB,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;QACvD,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,4BAA4B;QAC/C,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;KAC3B,CAAA;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,QAAQ,EACR,GAAG,EAIJ;IACC,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAA;IAC7C,OAAO,IAAI,UAAU,CAAC;QACpB,UAAU,EAAE,oBAAoB;QAChC,gBAAgB,EAAE,MAAM;QACxB,gBAAgB,EAAE,MAAM;KACzB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EAGT;IACC,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAA;IACnC,OAAO,IAAI,UAAU,CAAC;QACpB,UAAU,EAAE,oBAAoB;QAChC,gBAAgB,EAAE,MAAM;QACxB,gBAAgB,EAAE,MAAM;KACzB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,QAAQ,EACR,GAAG,EAIJ;IACC,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAA;IAC7C,OAAO;QACL,EAAE,EAAE,GAAG;QACP,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM;QACvB,sBAAsB,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,sBAAsB,EAAE;KAChE,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,GAAuB;IAChD,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;AAChE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@interop/wallet-core",
|
|
3
3
|
"description": "Shared wallet-domain logic (WAS sync engine core and wallet Space layout contracts) for Interop wallet apps.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.6.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"build": "pnpm run clear && tsc",
|
|
@@ -65,6 +65,30 @@
|
|
|
65
65
|
"react-native": "./dist/display/index.js",
|
|
66
66
|
"import": "./dist/display/index.js",
|
|
67
67
|
"default": "./dist/display/index.js"
|
|
68
|
+
},
|
|
69
|
+
"./webvh": {
|
|
70
|
+
"types": "./dist/webvh/index.d.ts",
|
|
71
|
+
"react-native": "./dist/webvh/index.js",
|
|
72
|
+
"import": "./dist/webvh/index.js",
|
|
73
|
+
"default": "./dist/webvh/index.js"
|
|
74
|
+
},
|
|
75
|
+
"./keys": {
|
|
76
|
+
"types": "./dist/keys/index.d.ts",
|
|
77
|
+
"react-native": "./dist/keys/index.js",
|
|
78
|
+
"import": "./dist/keys/index.js",
|
|
79
|
+
"default": "./dist/keys/index.js"
|
|
80
|
+
},
|
|
81
|
+
"./keyring": {
|
|
82
|
+
"types": "./dist/keyring/index.d.ts",
|
|
83
|
+
"react-native": "./dist/keyring/index.js",
|
|
84
|
+
"import": "./dist/keyring/index.js",
|
|
85
|
+
"default": "./dist/keyring/index.js"
|
|
86
|
+
},
|
|
87
|
+
"./enrollment": {
|
|
88
|
+
"types": "./dist/enrollment/index.d.ts",
|
|
89
|
+
"react-native": "./dist/enrollment/index.js",
|
|
90
|
+
"import": "./dist/enrollment/index.js",
|
|
91
|
+
"default": "./dist/enrollment/index.js"
|
|
68
92
|
}
|
|
69
93
|
},
|
|
70
94
|
"module": "dist/index.js",
|
|
@@ -74,19 +98,21 @@
|
|
|
74
98
|
"dependencies": {
|
|
75
99
|
"@interop/data-integrity-core": "^8.4.0",
|
|
76
100
|
"@interop/data-integrity-proof": "^3.4.2",
|
|
101
|
+
"@interop/did-method-webvh": "^5.0.0",
|
|
77
102
|
"@interop/ed25519-signature": "^7.1.4",
|
|
103
|
+
"@interop/ed25519-verification-key": "^8.0.3",
|
|
78
104
|
"@interop/ezcap": "^7.4.1",
|
|
79
|
-
"@interop/security-document-loader": "^9.
|
|
105
|
+
"@interop/security-document-loader": "^9.5.0",
|
|
80
106
|
"@interop/vc": "^11.0.6",
|
|
81
|
-
"@interop/was-client": "^0.
|
|
107
|
+
"@interop/was-client": "^0.22.0",
|
|
82
108
|
"@interop/webkms-client": "^14.7.1",
|
|
83
109
|
"@interop/x25519-key-agreement-key": "^5.2.1",
|
|
110
|
+
"@noble/hashes": "^2.2.0",
|
|
84
111
|
"@scure/base": "^1.2.1",
|
|
85
112
|
"jsonpath-plus": "^10.3.0"
|
|
86
113
|
},
|
|
87
114
|
"devDependencies": {
|
|
88
115
|
"@eslint/js": "^10.0.1",
|
|
89
|
-
"@interop/ed25519-verification-key": "^8.0.3",
|
|
90
116
|
"@playwright/test": "^1.60.0",
|
|
91
117
|
"@types/node": "^26.0.1",
|
|
92
118
|
"@vitest/coverage-v8": "^4.1.7",
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import type { IKeyAgreementKey, IKeyResolver } from '@interop/data-integrity-core';
|
|
2
|
-
/**
|
|
3
|
-
* Default cosmetic label for a per-collection key-agreement agent. Local naming
|
|
4
|
-
* only (does not affect key material); safe to override.
|
|
5
|
-
*/
|
|
6
|
-
export declare const DEFAULT_KAK_HANDLE = "was-react-kak";
|
|
7
|
-
/**
|
|
8
|
-
* Derives one collection's X25519 key agreement key (KAK) plus its resolver, the
|
|
9
|
-
* material the doc-cipher needs. The concrete KAK type carries `type` /
|
|
10
|
-
* `publicKeyMultibase`; it is widened to `IKeyAgreementKey` only at the
|
|
11
|
-
* boundary.
|
|
12
|
-
*/
|
|
13
|
-
export interface CollectionKeys {
|
|
14
|
-
keyAgreementKey: IKeyAgreementKey;
|
|
15
|
-
keyResolver: IKeyResolver;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Derives one collection's vault key material from the master seed:
|
|
19
|
-
* `HKDF(master, 'kak:v1:<collectionId>')` to a per-collection seed, then the
|
|
20
|
-
* Ed25519-to-X25519 (Montgomery-form) key-agreement key. Deterministic, so the
|
|
21
|
-
* same seed decrypts the same envelopes on any device. Encryption uses these
|
|
22
|
-
* per-collection KAKs from day one -- never share one KAK across collections.
|
|
23
|
-
*
|
|
24
|
-
* @param options {object}
|
|
25
|
-
* @param options.seed {Uint8Array} the 32-byte master seed
|
|
26
|
-
* @param options.collectionId {string} the WAS collection id (the HKDF label)
|
|
27
|
-
* @param [options.kakHandle] {string} cosmetic agent label; does not affect
|
|
28
|
-
* keys (defaults to `DEFAULT_KAK_HANDLE`)
|
|
29
|
-
* @returns {Promise<CollectionKeys>}
|
|
30
|
-
*/
|
|
31
|
-
export declare function deriveCollectionKeys({ seed, collectionId, kakHandle }: {
|
|
32
|
-
seed: Uint8Array;
|
|
33
|
-
collectionId: string;
|
|
34
|
-
kakHandle?: string;
|
|
35
|
-
}): Promise<CollectionKeys>;
|
|
36
|
-
//# sourceMappingURL=collectionKeys.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"collectionKeys.d.ts","sourceRoot":"","sources":["../../src/identity/collectionKeys.ts"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACb,MAAM,8BAA8B,CAAA;AAIrC;;;GAGG;AACH,eAAO,MAAM,kBAAkB,kBAAkB,CAAA;AAMjD;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,gBAAgB,CAAA;IACjC,WAAW,EAAE,YAAY,CAAA;CAC1B;AAiCD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,oBAAoB,CAAC,EACzC,IAAI,EACJ,YAAY,EACZ,SAA8B,EAC/B,EAAE;IACD,IAAI,EAAE,UAAU,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,OAAO,CAAC,cAAc,CAAC,CAgB1B"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2026 Interop Alliance. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Per-collection vault-key (KAK) derivation from a 32-byte master seed.
|
|
6
|
-
*
|
|
7
|
-
* SEED-DERIVATION CONVENTION (pinned, part of the shared-key contract): the
|
|
8
|
-
* pinned `@interop/webkms-client` exposes `CapabilityAgent.fromSeed({ seed })`,
|
|
9
|
-
* which takes the raw 32 bytes AS-IS (no hashing). We use it for the
|
|
10
|
-
* per-collection key-agreement keys, feeding raw bytes -- never `fromSecret`,
|
|
11
|
-
* which salt-hashes a STRING and would derive a different key for a byte array
|
|
12
|
-
* vs its text form.
|
|
13
|
-
*
|
|
14
|
-
* WHAT SELECTS THE KEY (verified against `CapabilityAgent.fromSeed`): the key
|
|
15
|
-
* material is derived from the `seed` bytes (the HMAC key) and the `keyName`
|
|
16
|
-
* string (the HMAC message) alone. The `handle` is stored on the returned agent
|
|
17
|
-
* as a cosmetic identifier and does NOT enter key derivation -- nor the derived
|
|
18
|
-
* did:key id, which is the fingerprint of the seed+keyName key pair. So the
|
|
19
|
-
* PINNED derivation inputs are the seed bytes and the `keyName` value
|
|
20
|
-
* (`KAK_KEY_NAME` below); changing THAT after first use is a data-migration
|
|
21
|
-
* event. The `kakHandle` parameter is safe to change and exists only so an app
|
|
22
|
-
* can supply a label for cosmetic continuity; it does not affect the keys or
|
|
23
|
-
* any stored data.
|
|
24
|
-
*
|
|
25
|
-
* Per-collection KAKs derive via `HKDF-SHA256(master, info = 'kak:v1:<id>')` to
|
|
26
|
-
* a 32-byte per-collection seed, then the standard Ed25519-to-X25519 path. HKDF
|
|
27
|
-
* one-wayness means a shared per-collection key exposes nothing about the master
|
|
28
|
-
* or sibling collections -- the future multi-app sharing unit.
|
|
29
|
-
*
|
|
30
|
-
* Not test-node-safe on React Native, but fine under Node/Vitest: the crypto
|
|
31
|
-
* stack (`webkms-client`, `x25519-key-agreement-key`) runs on the standard Web
|
|
32
|
-
* Crypto that Node 24 provides.
|
|
33
|
-
*/
|
|
34
|
-
import { CapabilityAgent } from '@interop/webkms-client';
|
|
35
|
-
import { X25519KeyAgreementKey2020 } from '@interop/x25519-key-agreement-key';
|
|
36
|
-
import { singleKeyResolver } from './keyResolver.js';
|
|
37
|
-
/**
|
|
38
|
-
* Default cosmetic label for a per-collection key-agreement agent. Local naming
|
|
39
|
-
* only (does not affect key material); safe to override.
|
|
40
|
-
*/
|
|
41
|
-
export const DEFAULT_KAK_HANDLE = 'was-react-kak';
|
|
42
|
-
// PINNED key-derivation input (the HMAC message that, with the seed, selects
|
|
43
|
-
// the key). Changing it after first use is a data-migration event.
|
|
44
|
-
const KAK_KEY_NAME = 'kak';
|
|
45
|
-
/**
|
|
46
|
-
* HKDF-SHA256 expansion of the master seed into a 32-byte per-context seed.
|
|
47
|
-
*
|
|
48
|
-
* @param master {Uint8Array}
|
|
49
|
-
* @param info {string} the domain-separation label (e.g. `kak:v1:projects`)
|
|
50
|
-
* @returns {Promise<Uint8Array>}
|
|
51
|
-
*/
|
|
52
|
-
async function hkdfExpand(master, info) {
|
|
53
|
-
const key = await globalThis.crypto.subtle.importKey('raw', master, 'HKDF', false, ['deriveBits']);
|
|
54
|
-
const bits = await globalThis.crypto.subtle.deriveBits({
|
|
55
|
-
name: 'HKDF',
|
|
56
|
-
hash: 'SHA-256',
|
|
57
|
-
salt: new Uint8Array(0),
|
|
58
|
-
info: new TextEncoder().encode(info)
|
|
59
|
-
}, key, 256);
|
|
60
|
-
return new Uint8Array(bits);
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Derives one collection's vault key material from the master seed:
|
|
64
|
-
* `HKDF(master, 'kak:v1:<collectionId>')` to a per-collection seed, then the
|
|
65
|
-
* Ed25519-to-X25519 (Montgomery-form) key-agreement key. Deterministic, so the
|
|
66
|
-
* same seed decrypts the same envelopes on any device. Encryption uses these
|
|
67
|
-
* per-collection KAKs from day one -- never share one KAK across collections.
|
|
68
|
-
*
|
|
69
|
-
* @param options {object}
|
|
70
|
-
* @param options.seed {Uint8Array} the 32-byte master seed
|
|
71
|
-
* @param options.collectionId {string} the WAS collection id (the HKDF label)
|
|
72
|
-
* @param [options.kakHandle] {string} cosmetic agent label; does not affect
|
|
73
|
-
* keys (defaults to `DEFAULT_KAK_HANDLE`)
|
|
74
|
-
* @returns {Promise<CollectionKeys>}
|
|
75
|
-
*/
|
|
76
|
-
export async function deriveCollectionKeys({ seed, collectionId, kakHandle = DEFAULT_KAK_HANDLE }) {
|
|
77
|
-
const collectionSeed = await hkdfExpand(seed, `kak:v1:${collectionId}`);
|
|
78
|
-
const keyAgent = await CapabilityAgent.fromSeed({
|
|
79
|
-
seed: collectionSeed,
|
|
80
|
-
handle: kakHandle,
|
|
81
|
-
keyName: KAK_KEY_NAME
|
|
82
|
-
});
|
|
83
|
-
const keyAgreementKey = X25519KeyAgreementKey2020.fromEd25519VerificationKey2020({
|
|
84
|
-
keyPair: keyAgent.getVerificationKeyPair()
|
|
85
|
-
});
|
|
86
|
-
const keyResolver = singleKeyResolver({ keyAgreementKey });
|
|
87
|
-
return {
|
|
88
|
-
keyAgreementKey: keyAgreementKey,
|
|
89
|
-
keyResolver
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
//# sourceMappingURL=collectionKeys.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"collectionKeys.js","sourceRoot":"","sources":["../../src/identity/collectionKeys.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAM7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpD;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAA;AAEjD,6EAA6E;AAC7E,mEAAmE;AACnE,MAAM,YAAY,GAAG,KAAK,CAAA;AAa1B;;;;;;GAMG;AACH,KAAK,UAAU,UAAU,CACvB,MAAkB,EAClB,IAAY;IAEZ,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAClD,KAAK,EACL,MAAiC,EACjC,MAAM,EACN,KAAK,EACL,CAAC,YAAY,CAAC,CACf,CAAA;IACD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CACpD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;QACvB,IAAI,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;KACrC,EACD,GAAG,EACH,GAAG,CACJ,CAAA;IACD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAA;AAC7B,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,EACzC,IAAI,EACJ,YAAY,EACZ,SAAS,GAAG,kBAAkB,EAK/B;IACC,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,UAAU,YAAY,EAAE,CAAC,CAAA;IACvE,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC;QAC9C,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,YAAY;KACtB,CAAC,CAAA;IACF,MAAM,eAAe,GACnB,yBAAyB,CAAC,8BAA8B,CAAC;QACvD,OAAO,EAAE,QAAQ,CAAC,sBAAsB,EAAE;KAC3C,CAAC,CAAA;IACJ,MAAM,WAAW,GAAG,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC,CAAA;IAC1D,OAAO;QACL,eAAe,EAAE,eAAmC;QACpD,WAAW;KACZ,CAAA;AACH,CAAC"}
|