@renown/sdk 6.0.0-dev.152 → 6.0.0-dev.154
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/index.d.ts +67 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +173 -0
- package/dist/index.js.map +1 -0
- package/dist/node.d.ts +67 -0
- package/dist/node.d.ts.map +1 -0
- package/dist/node.js +151 -0
- package/dist/node.js.map +1 -0
- package/dist/renown-builder-C5Y9S3o2.js +825 -0
- package/dist/renown-builder-C5Y9S3o2.js.map +1 -0
- package/dist/utils-CFyCudfg.d.ts +549 -0
- package/dist/utils-CFyCudfg.d.ts.map +1 -0
- package/package.json +13 -11
- package/dist/src/common.d.ts +0 -23
- package/dist/src/common.d.ts.map +0 -1
- package/dist/src/common.js +0 -145
- package/dist/src/common.js.map +0 -1
- package/dist/src/constants.d.ts +0 -130
- package/dist/src/constants.d.ts.map +0 -1
- package/dist/src/constants.js +0 -40
- package/dist/src/constants.js.map +0 -1
- package/dist/src/crypto/browser-key-storage.d.ts +0 -10
- package/dist/src/crypto/browser-key-storage.d.ts.map +0 -1
- package/dist/src/crypto/browser-key-storage.js +0 -76
- package/dist/src/crypto/browser-key-storage.js.map +0 -1
- package/dist/src/crypto/common.d.ts +0 -6
- package/dist/src/crypto/common.d.ts.map +0 -1
- package/dist/src/crypto/common.js +0 -8
- package/dist/src/crypto/common.js.map +0 -1
- package/dist/src/crypto/index.d.ts +0 -3
- package/dist/src/crypto/index.d.ts.map +0 -1
- package/dist/src/crypto/index.js +0 -3
- package/dist/src/crypto/index.js.map +0 -1
- package/dist/src/crypto/memory-key-storage.d.ts +0 -9
- package/dist/src/crypto/memory-key-storage.d.ts.map +0 -1
- package/dist/src/crypto/memory-key-storage.js +0 -18
- package/dist/src/crypto/memory-key-storage.js.map +0 -1
- package/dist/src/crypto/node-key-storage.d.ts +0 -21
- package/dist/src/crypto/node-key-storage.d.ts.map +0 -1
- package/dist/src/crypto/node-key-storage.js +0 -107
- package/dist/src/crypto/node-key-storage.js.map +0 -1
- package/dist/src/crypto/node.d.ts +0 -3
- package/dist/src/crypto/node.d.ts.map +0 -1
- package/dist/src/crypto/node.js +0 -3
- package/dist/src/crypto/node.js.map +0 -1
- package/dist/src/crypto/renown-crypto-builder.d.ts +0 -11
- package/dist/src/crypto/renown-crypto-builder.d.ts.map +0 -1
- package/dist/src/crypto/renown-crypto-builder.js +0 -34
- package/dist/src/crypto/renown-crypto-builder.js.map +0 -1
- package/dist/src/crypto/renown-crypto.d.ts +0 -26
- package/dist/src/crypto/renown-crypto.d.ts.map +0 -1
- package/dist/src/crypto/renown-crypto.js +0 -56
- package/dist/src/crypto/renown-crypto.js.map +0 -1
- package/dist/src/crypto/signer.d.ts +0 -74
- package/dist/src/crypto/signer.d.ts.map +0 -1
- package/dist/src/crypto/signer.js +0 -306
- package/dist/src/crypto/signer.js.map +0 -1
- package/dist/src/crypto/types.d.ts +0 -27
- package/dist/src/crypto/types.d.ts.map +0 -1
- package/dist/src/crypto/types.js +0 -2
- package/dist/src/crypto/types.js.map +0 -1
- package/dist/src/crypto/utils.d.ts +0 -13
- package/dist/src/crypto/utils.d.ts.map +0 -1
- package/dist/src/crypto/utils.js +0 -39
- package/dist/src/crypto/utils.js.map +0 -1
- package/dist/src/event/event.browser.d.ts +0 -10
- package/dist/src/event/event.browser.d.ts.map +0 -1
- package/dist/src/event/event.browser.js +0 -24
- package/dist/src/event/event.browser.js.map +0 -1
- package/dist/src/event/event.node.d.ts +0 -8
- package/dist/src/event/event.node.d.ts.map +0 -1
- package/dist/src/event/event.node.js +0 -17
- package/dist/src/event/event.node.js.map +0 -1
- package/dist/src/event/memory.d.ts +0 -8
- package/dist/src/event/memory.d.ts.map +0 -1
- package/dist/src/event/memory.js +0 -16
- package/dist/src/event/memory.js.map +0 -1
- package/dist/src/event/types.d.ts +0 -16
- package/dist/src/event/types.d.ts.map +0 -1
- package/dist/src/event/types.js +0 -2
- package/dist/src/event/types.js.map +0 -1
- package/dist/src/index.d.ts +0 -8
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -8
- package/dist/src/index.js.map +0 -1
- package/dist/src/init.browser.d.ts +0 -52
- package/dist/src/init.browser.d.ts.map +0 -1
- package/dist/src/init.browser.js +0 -66
- package/dist/src/init.browser.js.map +0 -1
- package/dist/src/init.node.d.ts +0 -29
- package/dist/src/init.node.d.ts.map +0 -1
- package/dist/src/init.node.js +0 -30
- package/dist/src/init.node.js.map +0 -1
- package/dist/src/node.d.ts +0 -10
- package/dist/src/node.d.ts.map +0 -1
- package/dist/src/node.js +0 -10
- package/dist/src/node.js.map +0 -1
- package/dist/src/profile.d.ts +0 -3
- package/dist/src/profile.d.ts.map +0 -1
- package/dist/src/profile.js +0 -22
- package/dist/src/profile.js.map +0 -1
- package/dist/src/renown-builder.d.ts +0 -68
- package/dist/src/renown-builder.d.ts.map +0 -1
- package/dist/src/renown-builder.js +0 -130
- package/dist/src/renown-builder.js.map +0 -1
- package/dist/src/storage/common.d.ts +0 -17
- package/dist/src/storage/common.d.ts.map +0 -1
- package/dist/src/storage/common.js +0 -20
- package/dist/src/storage/common.js.map +0 -1
- package/dist/src/storage/storage.browser.d.ts +0 -10
- package/dist/src/storage/storage.browser.d.ts.map +0 -1
- package/dist/src/storage/storage.browser.js +0 -27
- package/dist/src/storage/storage.browser.js.map +0 -1
- package/dist/src/storage/storage.node.d.ts +0 -11
- package/dist/src/storage/storage.node.d.ts.map +0 -1
- package/dist/src/storage/storage.node.js +0 -42
- package/dist/src/storage/storage.node.js.map +0 -1
- package/dist/src/types.d.ts +0 -126
- package/dist/src/types.d.ts.map +0 -1
- package/dist/src/types.js +0 -2
- package/dist/src/types.js.map +0 -1
- package/dist/src/utils.d.ts +0 -24
- package/dist/src/utils.d.ts.map +0 -1
- package/dist/src/utils.js +0 -94
- package/dist/src/utils.js.map +0 -1
- package/dist/test/auth.test.d.ts +0 -2
- package/dist/test/auth.test.d.ts.map +0 -1
- package/dist/test/auth.test.js +0 -13
- package/dist/test/auth.test.js.map +0 -1
- package/dist/test/crypto/signer.test.d.ts +0 -2
- package/dist/test/crypto/signer.test.d.ts.map +0 -1
- package/dist/test/crypto/signer.test.js +0 -184
- package/dist/test/crypto/signer.test.js.map +0 -1
- package/dist/test/renown.test.d.ts +0 -2
- package/dist/test/renown.test.d.ts.map +0 -1
- package/dist/test/renown.test.js +0 -287
- package/dist/test/renown.test.js.map +0 -1
- package/dist/test/storage.node.test.d.ts +0 -2
- package/dist/test/storage.node.test.d.ts.map +0 -1
- package/dist/test/storage.node.test.js +0 -66
- package/dist/test/storage.node.test.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/vitest.config.d.ts +0 -3
- package/dist/vitest.config.d.ts.map +0 -1
- package/dist/vitest.config.js +0 -7
- package/dist/vitest.config.js.map +0 -1
|
@@ -1,306 +0,0 @@
|
|
|
1
|
-
export class InvalidSignatureError extends Error {
|
|
2
|
-
constructor() {
|
|
3
|
-
super("Invalid signature");
|
|
4
|
-
}
|
|
5
|
-
}
|
|
6
|
-
export class RenownCryptoSigner {
|
|
7
|
-
crypto;
|
|
8
|
-
appName;
|
|
9
|
-
user;
|
|
10
|
-
app;
|
|
11
|
-
constructor(crypto, appName, user) {
|
|
12
|
-
this.crypto = crypto;
|
|
13
|
-
this.appName = appName;
|
|
14
|
-
this.user = user;
|
|
15
|
-
this.app = {
|
|
16
|
-
key: this.crypto.did,
|
|
17
|
-
name: this.appName,
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
get publicKey() {
|
|
21
|
-
return this.crypto.publicKey;
|
|
22
|
-
}
|
|
23
|
-
async sign(data) {
|
|
24
|
-
return this.crypto.sign(data);
|
|
25
|
-
}
|
|
26
|
-
async verify(data, signature) {
|
|
27
|
-
const isValid = await this.crypto.verify(data, signature);
|
|
28
|
-
if (!isValid) {
|
|
29
|
-
throw new InvalidSignatureError();
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
async signAction(action, abortSignal) {
|
|
33
|
-
const hashField = action.context?.prevOpHash ?? "";
|
|
34
|
-
return this._signAction(action, hashField, abortSignal);
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Signs an action including a predicted resulting state hash.
|
|
38
|
-
*
|
|
39
|
-
* The resulting hash is packed into the signature tuple's 4th element (index 3)
|
|
40
|
-
* using the format: `${prevStateHash}:${resultingStateHash}`
|
|
41
|
-
*
|
|
42
|
-
* This allows offline verification of documents without reducer logic:
|
|
43
|
-
* - Verifier can check that the signature is valid for the claimed resulting state
|
|
44
|
-
* - Verifier can compare claimed resulting state to actual operation.hash
|
|
45
|
-
*
|
|
46
|
-
* @param action - The action to sign
|
|
47
|
-
* @param resultingStateHash - The predicted hash of document state AFTER this action runs
|
|
48
|
-
* @param abortSignal - Optional abort signal
|
|
49
|
-
* @returns A Signature tuple with the resulting hash encoded in element [3]
|
|
50
|
-
*/
|
|
51
|
-
async signActionWithResultingState(action, resultingStateHash, abortSignal) {
|
|
52
|
-
const prevStateHash = action.context?.prevOpHash ?? "";
|
|
53
|
-
const hashField = `${prevStateHash}:${resultingStateHash}`;
|
|
54
|
-
return this._signAction(action, hashField, abortSignal);
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Internal signing implementation shared by signAction and signActionWithResultingState.
|
|
58
|
-
*/
|
|
59
|
-
async _signAction(action, hashField, abortSignal) {
|
|
60
|
-
if (abortSignal?.aborted) {
|
|
61
|
-
throw new Error("Signing aborted");
|
|
62
|
-
}
|
|
63
|
-
const timestamp = (new Date().getTime() / 1000).toFixed(0);
|
|
64
|
-
const hash = await this.hashAction(action);
|
|
65
|
-
if (abortSignal?.aborted) {
|
|
66
|
-
throw new Error("Signing aborted");
|
|
67
|
-
}
|
|
68
|
-
const params = [
|
|
69
|
-
timestamp,
|
|
70
|
-
this.crypto.did,
|
|
71
|
-
hash,
|
|
72
|
-
hashField,
|
|
73
|
-
];
|
|
74
|
-
const message = this.buildSignatureMessage(params);
|
|
75
|
-
const signatureBytes = await this.crypto.sign(message);
|
|
76
|
-
const signatureHex = `0x${this.arrayBufferToHex(signatureBytes)}`;
|
|
77
|
-
if (abortSignal?.aborted) {
|
|
78
|
-
throw new Error("Signing aborted");
|
|
79
|
-
}
|
|
80
|
-
return [...params, signatureHex];
|
|
81
|
-
}
|
|
82
|
-
async hashAction(action) {
|
|
83
|
-
const payload = [
|
|
84
|
-
action.scope,
|
|
85
|
-
action.type,
|
|
86
|
-
JSON.stringify(action.input),
|
|
87
|
-
].join("");
|
|
88
|
-
const encoder = new TextEncoder();
|
|
89
|
-
const data = encoder.encode(payload);
|
|
90
|
-
const hashBuffer = await crypto.subtle.digest("SHA-256", data);
|
|
91
|
-
return this.arrayBufferToBase64(hashBuffer);
|
|
92
|
-
}
|
|
93
|
-
buildSignatureMessage(params) {
|
|
94
|
-
const message = params.join("");
|
|
95
|
-
const prefix = "\x19Signed Operation:\n" + message.length.toString();
|
|
96
|
-
const encoder = new TextEncoder();
|
|
97
|
-
return encoder.encode(prefix + message);
|
|
98
|
-
}
|
|
99
|
-
arrayBufferToHex(buffer) {
|
|
100
|
-
const bytes = buffer instanceof Uint8Array ? buffer : new Uint8Array(buffer);
|
|
101
|
-
return Array.from(bytes)
|
|
102
|
-
.map((byte) => byte.toString(16).padStart(2, "0"))
|
|
103
|
-
.join("");
|
|
104
|
-
}
|
|
105
|
-
arrayBufferToBase64(buffer) {
|
|
106
|
-
const bytes = new Uint8Array(buffer);
|
|
107
|
-
let binary = "";
|
|
108
|
-
for (let i = 0; i < bytes.length; i++) {
|
|
109
|
-
binary += String.fromCharCode(bytes[i]);
|
|
110
|
-
}
|
|
111
|
-
return btoa(binary);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* Creates a signature verification handler that verifies signatures using the Web Crypto API.
|
|
116
|
-
* The verification uses ECDSA with P-256 curve and SHA-256 hash, matching the RenownCrypto signing algorithm.
|
|
117
|
-
*/
|
|
118
|
-
export function createSignatureVerifier(requireSignature = false) {
|
|
119
|
-
return async (operation, publicKey) => {
|
|
120
|
-
const signer = operation.action.context?.signer;
|
|
121
|
-
if (!signer || !publicKey) {
|
|
122
|
-
return !requireSignature;
|
|
123
|
-
}
|
|
124
|
-
const signatures = signer.signatures;
|
|
125
|
-
if (signatures.length === 0) {
|
|
126
|
-
return false;
|
|
127
|
-
}
|
|
128
|
-
const signature = signatures[signatures.length - 1];
|
|
129
|
-
const [timestamp, signerKey, hash, prevStateHash, signatureHex] = signature;
|
|
130
|
-
if (signerKey !== publicKey) {
|
|
131
|
-
return false;
|
|
132
|
-
}
|
|
133
|
-
const params = [
|
|
134
|
-
timestamp,
|
|
135
|
-
signerKey,
|
|
136
|
-
hash,
|
|
137
|
-
prevStateHash,
|
|
138
|
-
];
|
|
139
|
-
const message = buildSignatureMessage(params);
|
|
140
|
-
const signatureBytes = hexToUint8Array(signatureHex);
|
|
141
|
-
const cryptoKey = await importPublicKey(publicKey);
|
|
142
|
-
const isValid = await crypto.subtle.verify({ name: "ECDSA", hash: "SHA-256" }, cryptoKey, signatureBytes.buffer, message.buffer);
|
|
143
|
-
return isValid;
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
function buildSignatureMessage(params) {
|
|
147
|
-
const message = params.join("");
|
|
148
|
-
const prefix = "\x19Signed Operation:\n" + message.length.toString();
|
|
149
|
-
const encoder = new TextEncoder();
|
|
150
|
-
return encoder.encode(prefix + message);
|
|
151
|
-
}
|
|
152
|
-
function hexToUint8Array(hex) {
|
|
153
|
-
const cleanHex = hex.startsWith("0x") ? hex.slice(2) : hex;
|
|
154
|
-
const bytes = new Uint8Array(cleanHex.length / 2);
|
|
155
|
-
for (let i = 0; i < cleanHex.length; i += 2) {
|
|
156
|
-
bytes[i / 2] = parseInt(cleanHex.substring(i, i + 2), 16);
|
|
157
|
-
}
|
|
158
|
-
return bytes;
|
|
159
|
-
}
|
|
160
|
-
async function importPublicKey(did) {
|
|
161
|
-
const keyData = extractKeyFromDid(did);
|
|
162
|
-
return crypto.subtle.importKey("raw", keyData.buffer, { name: "ECDSA", namedCurve: "P-256" }, true, ["verify"]);
|
|
163
|
-
}
|
|
164
|
-
function extractKeyFromDid(did) {
|
|
165
|
-
const parts = did.split(":");
|
|
166
|
-
if (parts.length < 3 || parts[0] !== "did" || parts[1] !== "key") {
|
|
167
|
-
throw new Error(`Invalid DID format: ${did}`);
|
|
168
|
-
}
|
|
169
|
-
const multibaseKey = parts[2];
|
|
170
|
-
if (!multibaseKey.startsWith("z")) {
|
|
171
|
-
throw new Error(`Unsupported multibase encoding: ${multibaseKey[0]}`);
|
|
172
|
-
}
|
|
173
|
-
const decoded = base58Decode(multibaseKey.slice(1));
|
|
174
|
-
if (decoded[0] !== 0x80 || decoded[1] !== 0x24) {
|
|
175
|
-
throw new Error("Not a P-256 public key multicodec");
|
|
176
|
-
}
|
|
177
|
-
const compressedKey = decoded.slice(2);
|
|
178
|
-
return decompressP256PublicKey(compressedKey);
|
|
179
|
-
}
|
|
180
|
-
function base58Decode(input) {
|
|
181
|
-
const ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
|
|
182
|
-
const ALPHABET_MAP = new Map();
|
|
183
|
-
for (let i = 0; i < ALPHABET.length; i++) {
|
|
184
|
-
ALPHABET_MAP.set(ALPHABET[i], i);
|
|
185
|
-
}
|
|
186
|
-
if (input.length === 0) {
|
|
187
|
-
return new Uint8Array(0);
|
|
188
|
-
}
|
|
189
|
-
const bytes = [0];
|
|
190
|
-
for (const char of input) {
|
|
191
|
-
const value = ALPHABET_MAP.get(char);
|
|
192
|
-
if (value === undefined) {
|
|
193
|
-
throw new Error(`Invalid base58 character: ${char}`);
|
|
194
|
-
}
|
|
195
|
-
let carry = value;
|
|
196
|
-
for (let j = 0; j < bytes.length; j++) {
|
|
197
|
-
carry += bytes[j] * 58;
|
|
198
|
-
bytes[j] = carry & 0xff;
|
|
199
|
-
carry >>= 8;
|
|
200
|
-
}
|
|
201
|
-
while (carry > 0) {
|
|
202
|
-
bytes.push(carry & 0xff);
|
|
203
|
-
carry >>= 8;
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
for (const char of input) {
|
|
207
|
-
if (char !== "1")
|
|
208
|
-
break;
|
|
209
|
-
bytes.push(0);
|
|
210
|
-
}
|
|
211
|
-
return new Uint8Array(bytes.reverse());
|
|
212
|
-
}
|
|
213
|
-
function decompressP256PublicKey(compressed) {
|
|
214
|
-
if (compressed.length !== 33) {
|
|
215
|
-
throw new Error(`Invalid compressed key length: ${compressed.length}`);
|
|
216
|
-
}
|
|
217
|
-
const prefix = compressed[0];
|
|
218
|
-
if (prefix !== 0x02 && prefix !== 0x03) {
|
|
219
|
-
throw new Error(`Invalid compression prefix: ${prefix}`);
|
|
220
|
-
}
|
|
221
|
-
const p = BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff");
|
|
222
|
-
const a = BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc");
|
|
223
|
-
const b = BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b");
|
|
224
|
-
let x = BigInt(0);
|
|
225
|
-
for (let i = 1; i < compressed.length; i++) {
|
|
226
|
-
x = (x << BigInt(8)) | BigInt(compressed[i]);
|
|
227
|
-
}
|
|
228
|
-
const ySquared = (modPow(x, BigInt(3), p) + a * x + b) % p;
|
|
229
|
-
let y = modPow(ySquared, (p + BigInt(1)) / BigInt(4), p);
|
|
230
|
-
const isYEven = y % BigInt(2) === BigInt(0);
|
|
231
|
-
const shouldBeEven = prefix === 0x02;
|
|
232
|
-
if (isYEven !== shouldBeEven) {
|
|
233
|
-
y = p - y;
|
|
234
|
-
}
|
|
235
|
-
const uncompressed = new Uint8Array(65);
|
|
236
|
-
uncompressed[0] = 0x04;
|
|
237
|
-
const xBytes = bigIntToBytes(x, 32);
|
|
238
|
-
const yBytes = bigIntToBytes(y, 32);
|
|
239
|
-
uncompressed.set(xBytes, 1);
|
|
240
|
-
uncompressed.set(yBytes, 33);
|
|
241
|
-
return uncompressed;
|
|
242
|
-
}
|
|
243
|
-
function modPow(base, exp, mod) {
|
|
244
|
-
let result = BigInt(1);
|
|
245
|
-
base = base % mod;
|
|
246
|
-
while (exp > BigInt(0)) {
|
|
247
|
-
if (exp % BigInt(2) === BigInt(1)) {
|
|
248
|
-
result = (result * base) % mod;
|
|
249
|
-
}
|
|
250
|
-
exp = exp >> BigInt(1);
|
|
251
|
-
base = (base * base) % mod;
|
|
252
|
-
}
|
|
253
|
-
return result;
|
|
254
|
-
}
|
|
255
|
-
function bigIntToBytes(n, length) {
|
|
256
|
-
const bytes = new Uint8Array(length);
|
|
257
|
-
for (let i = length - 1; i >= 0; i--) {
|
|
258
|
-
bytes[i] = Number(n & BigInt(0xff));
|
|
259
|
-
n = n >> BigInt(8);
|
|
260
|
-
}
|
|
261
|
-
return bytes;
|
|
262
|
-
}
|
|
263
|
-
/**
|
|
264
|
-
* Parses the hash field (element [3]) from a signature tuple.
|
|
265
|
-
*
|
|
266
|
-
* Supports two formats:
|
|
267
|
-
* - Old format: just `prevStateHash` (no colon)
|
|
268
|
-
* - New format: `prevStateHash:resultingStateHash` (colon-separated)
|
|
269
|
-
*
|
|
270
|
-
* @param hashField - The 4th element of a Signature tuple
|
|
271
|
-
* @returns Object with prevStateHash and optional resultingStateHash
|
|
272
|
-
*/
|
|
273
|
-
export function parseSignatureHashField(hashField) {
|
|
274
|
-
const colonIndex = hashField.indexOf(":");
|
|
275
|
-
if (colonIndex === -1) {
|
|
276
|
-
return {
|
|
277
|
-
prevStateHash: hashField,
|
|
278
|
-
resultingStateHash: undefined,
|
|
279
|
-
};
|
|
280
|
-
}
|
|
281
|
-
return {
|
|
282
|
-
prevStateHash: hashField.substring(0, colonIndex),
|
|
283
|
-
resultingStateHash: hashField.substring(colonIndex + 1),
|
|
284
|
-
};
|
|
285
|
-
}
|
|
286
|
-
/**
|
|
287
|
-
* Extracts the resulting state hash from a signature, if present.
|
|
288
|
-
*
|
|
289
|
-
* @param signature - A Signature tuple
|
|
290
|
-
* @returns The resulting state hash, or undefined if not present
|
|
291
|
-
*/
|
|
292
|
-
export function extractResultingHashFromSignature(signature) {
|
|
293
|
-
const hashField = signature[3];
|
|
294
|
-
const { resultingStateHash } = parseSignatureHashField(hashField);
|
|
295
|
-
return resultingStateHash;
|
|
296
|
-
}
|
|
297
|
-
/**
|
|
298
|
-
* Checks if a signature includes a resulting state hash.
|
|
299
|
-
*
|
|
300
|
-
* @param signature - A Signature tuple
|
|
301
|
-
* @returns true if the signature includes a resulting state hash
|
|
302
|
-
*/
|
|
303
|
-
export function signatureHasResultingHash(signature) {
|
|
304
|
-
return extractResultingHashFromSignature(signature) !== undefined;
|
|
305
|
-
}
|
|
306
|
-
//# sourceMappingURL=signer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../src/crypto/signer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import type { Issuer } from "did-jwt-vc";
|
|
2
|
-
import type { CreateBearerTokenOptions } from "../types.js";
|
|
3
|
-
export type JwkKeyPair = {
|
|
4
|
-
publicKey: JsonWebKey;
|
|
5
|
-
privateKey: JsonWebKey;
|
|
6
|
-
};
|
|
7
|
-
export interface JsonWebKeyPairStorage {
|
|
8
|
-
loadKeyPair(): Promise<JwkKeyPair | undefined>;
|
|
9
|
-
saveKeyPair(keyPair: JwkKeyPair): Promise<void>;
|
|
10
|
-
removeKeyPair(): Promise<void>;
|
|
11
|
-
}
|
|
12
|
-
export type DID = `did:${string}`;
|
|
13
|
-
export interface IRenownCrypto {
|
|
14
|
-
did: DID;
|
|
15
|
-
publicKey: CryptoKey;
|
|
16
|
-
removeDid(): Promise<void>;
|
|
17
|
-
sign: (data: Uint8Array) => Promise<Uint8Array>;
|
|
18
|
-
verify: (data: Uint8Array, signature: Uint8Array) => Promise<boolean>;
|
|
19
|
-
issuer: Issuer;
|
|
20
|
-
getBearerToken: (address: string | undefined, options?: CreateBearerTokenOptions) => Promise<string>;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* @deprecated Use IRenownCrypto instead
|
|
24
|
-
*/
|
|
25
|
-
export interface IConnectCrypto extends IRenownCrypto {
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/crypto/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAE5D,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,EAAE,UAAU,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,WAAW,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IAC/C,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAED,MAAM,MAAM,GAAG,GAAG,OAAO,MAAM,EAAE,CAAC;AAElC,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,GAAG,CAAC;IACT,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IAChD,MAAM,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,CACd,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,CAAC,EAAE,wBAAwB,KAC/B,OAAO,CAAC,MAAM,CAAC,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,aAAa;CAAG"}
|
package/dist/src/crypto/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/crypto/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { DID, JwkKeyPair } from "./types.js";
|
|
2
|
-
export declare const ECDSA_ALGORITHM: EcKeyAlgorithm;
|
|
3
|
-
export declare const ECDSA_SIGN_ALGORITHM: {
|
|
4
|
-
name: string;
|
|
5
|
-
namedCurve: string;
|
|
6
|
-
hash: string;
|
|
7
|
-
};
|
|
8
|
-
export declare function ab2hex(ab: ArrayBuffer): string;
|
|
9
|
-
export declare function parseDid(keyPair: CryptoKeyPair, subtleCrypto: SubtleCrypto): Promise<DID>;
|
|
10
|
-
export declare function exportKeyPair(keyPair: CryptoKeyPair, subtleCrypto: SubtleCrypto): Promise<JwkKeyPair>;
|
|
11
|
-
export declare function importKeyPair(jwkKeyPair: JwkKeyPair, subtleCrypto: SubtleCrypto, algorithm?: EcKeyAlgorithm): Promise<CryptoKeyPair>;
|
|
12
|
-
export declare function generateKeyPair(subtleCrypto: SubtleCrypto, algorithm?: EcKeyAlgorithm): Promise<CryptoKeyPair>;
|
|
13
|
-
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/crypto/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAElD,eAAO,MAAM,eAAe,EAAE,cAG7B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;CAIhC,CAAC;AAEF,wBAAgB,MAAM,CAAC,EAAE,EAAE,WAAW,GAAG,MAAM,CAI9C;AAED,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,GAAG,CAAC,CAOd;AAED,wBAAsB,aAAa,CACjC,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,UAAU,CAAC,CAKrB;AAED,wBAAsB,aAAa,CACjC,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,SAAS,GAAE,cAAgC,GAC1C,OAAO,CAAC,aAAa,CAAC,CAiBxB;AAED,wBAAsB,eAAe,CACnC,YAAY,EAAE,YAAY,EAC1B,SAAS,GAAE,cAAgC,GAC1C,OAAO,CAAC,aAAa,CAAC,CAExB"}
|
package/dist/src/crypto/utils.js
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { compressedKeyInHexfromRaw, encodeDIDfromHexString, rawKeyInHexfromUncompressed, } from "did-key-creator";
|
|
2
|
-
export const ECDSA_ALGORITHM = {
|
|
3
|
-
name: "ECDSA",
|
|
4
|
-
namedCurve: "P-256",
|
|
5
|
-
};
|
|
6
|
-
export const ECDSA_SIGN_ALGORITHM = {
|
|
7
|
-
name: "ECDSA",
|
|
8
|
-
namedCurve: "P-256",
|
|
9
|
-
hash: "SHA-256",
|
|
10
|
-
};
|
|
11
|
-
export function ab2hex(ab) {
|
|
12
|
-
return Array.prototype.map
|
|
13
|
-
.call(new Uint8Array(ab), (x) => ("00" + x.toString(16)).slice(-2))
|
|
14
|
-
.join("");
|
|
15
|
-
}
|
|
16
|
-
export async function parseDid(keyPair, subtleCrypto) {
|
|
17
|
-
const publicKeyRaw = await subtleCrypto.exportKey("raw", keyPair.publicKey);
|
|
18
|
-
const multicodecName = "p256-pub";
|
|
19
|
-
const rawKey = rawKeyInHexfromUncompressed(ab2hex(publicKeyRaw));
|
|
20
|
-
const compressedKey = compressedKeyInHexfromRaw(rawKey);
|
|
21
|
-
const did = encodeDIDfromHexString(multicodecName, compressedKey);
|
|
22
|
-
return did;
|
|
23
|
-
}
|
|
24
|
-
export async function exportKeyPair(keyPair, subtleCrypto) {
|
|
25
|
-
return {
|
|
26
|
-
publicKey: await subtleCrypto.exportKey("jwk", keyPair.publicKey),
|
|
27
|
-
privateKey: await subtleCrypto.exportKey("jwk", keyPair.privateKey),
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
export async function importKeyPair(jwkKeyPair, subtleCrypto, algorithm = ECDSA_ALGORITHM) {
|
|
31
|
-
return {
|
|
32
|
-
publicKey: await subtleCrypto.importKey("jwk", jwkKeyPair.publicKey, algorithm, true, ["verify"]),
|
|
33
|
-
privateKey: await subtleCrypto.importKey("jwk", jwkKeyPair.privateKey, algorithm, true, ["sign"]),
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
export async function generateKeyPair(subtleCrypto, algorithm = ECDSA_ALGORITHM) {
|
|
37
|
-
return subtleCrypto.generateKey(algorithm, true, ["sign", "verify"]);
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/crypto/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AAGzB,MAAM,CAAC,MAAM,eAAe,GAAmB;IAC7C,IAAI,EAAE,OAAO;IACb,UAAU,EAAE,OAAO;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,OAAO;IACb,UAAU,EAAE,OAAO;IACnB,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF,MAAM,UAAU,MAAM,CAAC,EAAe;IACpC,OAAO,KAAK,CAAC,SAAS,CAAC,GAAG;SACvB,IAAI,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SAC1E,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,OAAsB,EACtB,YAA0B;IAE1B,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5E,MAAM,cAAc,GAAG,UAAU,CAAC;IAClC,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,sBAAsB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAClE,OAAO,GAAU,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAsB,EACtB,YAA0B;IAE1B,OAAO;QACL,SAAS,EAAE,MAAM,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC;QACjE,UAAU,EAAE,MAAM,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAsB,EACtB,YAA0B,EAC1B,YAA4B,eAAe;IAE3C,OAAO;QACL,SAAS,EAAE,MAAM,YAAY,CAAC,SAAS,CACrC,KAAK,EACL,UAAU,CAAC,SAAS,EACpB,SAAS,EACT,IAAI,EACJ,CAAC,QAAQ,CAAC,CACX;QACD,UAAU,EAAE,MAAM,YAAY,CAAC,SAAS,CACtC,KAAK,EACL,UAAU,CAAC,UAAU,EACrB,SAAS,EACT,IAAI,EACJ,CAAC,MAAM,CAAC,CACT;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,YAA0B,EAC1B,YAA4B,eAAe;IAE3C,OAAO,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { IEventEmitter } from "./types.js";
|
|
2
|
-
export declare class TypedCustomEvent<T> extends CustomEvent<T> {
|
|
3
|
-
constructor(type: string, detail?: T);
|
|
4
|
-
}
|
|
5
|
-
export declare class BrowserEventEmitter<Events extends Record<string, unknown>> implements IEventEmitter<Events> {
|
|
6
|
-
#private;
|
|
7
|
-
on<K extends keyof Events>(event: K, listener: (data: Events[K]) => void): () => void;
|
|
8
|
-
emit<K extends keyof Events>(event: K, data: Events[K]): void;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=event.browser.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"event.browser.d.ts","sourceRoot":"","sources":["../../../src/event/event.browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,gBAAgB,CAAC,CAAC,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;gBACzC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;CAGrC;AAED,qBAAa,mBAAmB,CAC9B,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACtC,YAAW,aAAa,CAAC,MAAM,CAAC;;IAGhC,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EACvB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,GAClC,MAAM,IAAI;IAab,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;CAI9D"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
export class TypedCustomEvent extends CustomEvent {
|
|
2
|
-
constructor(type, detail) {
|
|
3
|
-
super(type, { detail });
|
|
4
|
-
}
|
|
5
|
-
}
|
|
6
|
-
export class BrowserEventEmitter {
|
|
7
|
-
#eventTarget = new EventTarget();
|
|
8
|
-
on(event, listener) {
|
|
9
|
-
const wrappedListener = (e) => {
|
|
10
|
-
if (e instanceof TypedCustomEvent) {
|
|
11
|
-
listener(e.detail);
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
this.#eventTarget.addEventListener(event.toString(), wrappedListener);
|
|
15
|
-
return () => {
|
|
16
|
-
this.#eventTarget.removeEventListener(event.toString(), wrappedListener);
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
emit(event, data) {
|
|
20
|
-
const customEvent = new TypedCustomEvent(event.toString(), data);
|
|
21
|
-
this.#eventTarget.dispatchEvent(customEvent);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=event.browser.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"event.browser.js","sourceRoot":"","sources":["../../../src/event/event.browser.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,gBAAoB,SAAQ,WAAc;IACrD,YAAY,IAAY,EAAE,MAAU;QAClC,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC1B,CAAC;CACF;AAED,MAAM,OAAO,mBAAmB;IAG9B,YAAY,GAAG,IAAI,WAAW,EAAE,CAAC;IAEjC,EAAE,CACA,KAAQ,EACR,QAAmC;QAEnC,MAAM,eAAe,GAAG,CAAC,CAAQ,EAAE,EAAE;YACnC,IAAI,CAAC,YAAY,gBAAgB,EAAE,CAAC;gBAClC,QAAQ,CAAC,CAAC,CAAC,MAAmB,CAAC,CAAC;YAClC,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,eAAe,CAAC,CAAC;QACtE,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,eAAe,CAAC,CAAC;QAC3E,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,CAAyB,KAAQ,EAAE,IAAe;QACpD,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;CACF"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { IEventEmitter } from "./types.js";
|
|
2
|
-
export declare class NodeEventEmitter<Events extends Record<string, unknown>> implements IEventEmitter<Events> {
|
|
3
|
-
#private;
|
|
4
|
-
constructor();
|
|
5
|
-
on<K extends keyof Events>(event: K, listener: (data: Events[K]) => void): () => void;
|
|
6
|
-
emit<K extends keyof Events>(event: K, data: Events[K]): void;
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=event.node.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"event.node.d.ts","sourceRoot":"","sources":["../../../src/event/event.node.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,gBAAgB,CAC3B,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACtC,YAAW,aAAa,CAAC,MAAM,CAAC;;;IAOhC,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EACvB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,GAClC,MAAM,IAAI;IAOb,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;CAG9D"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from "node:events";
|
|
2
|
-
export class NodeEventEmitter {
|
|
3
|
-
#emitter = new EventEmitter();
|
|
4
|
-
constructor() {
|
|
5
|
-
this.#emitter.setMaxListeners(0);
|
|
6
|
-
}
|
|
7
|
-
on(event, listener) {
|
|
8
|
-
this.#emitter.on(event, listener);
|
|
9
|
-
return () => {
|
|
10
|
-
this.#emitter.removeListener(event.toString(), listener);
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
emit(event, data) {
|
|
14
|
-
this.#emitter.emit(event.toString(), data);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=event.node.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"event.node.js","sourceRoot":"","sources":["../../../src/event/event.node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,MAAM,OAAO,gBAAgB;IAG3B,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;IAE9B;QACE,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,EAAE,CACA,KAAQ,EACR,QAAmC;QAEnC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAe,EAAE,QAAQ,CAAC,CAAC;QAC5C,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,CAAyB,KAAQ,EAAE,IAAe;QACpD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { RenownEvents } from "../types.js";
|
|
2
|
-
import type { IEventEmitter } from "./types.js";
|
|
3
|
-
export declare class MemoryEventEmitter implements IEventEmitter<RenownEvents> {
|
|
4
|
-
#private;
|
|
5
|
-
on<K extends keyof RenownEvents>(event: K, listener: (data: RenownEvents[K]) => void): () => void;
|
|
6
|
-
emit<K extends keyof RenownEvents>(event: K, data: RenownEvents[K]): void;
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=memory.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/event/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,kBAAmB,YAAW,aAAa,CAAC,YAAY,CAAC;;IAGpE,EAAE,CAAC,CAAC,SAAS,MAAM,YAAY,EAC7B,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GACxC,MAAM,IAAI;IAUb,IAAI,CAAC,CAAC,SAAS,MAAM,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;CAG1E"}
|
package/dist/src/event/memory.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export class MemoryEventEmitter {
|
|
2
|
-
#listeners = new Map();
|
|
3
|
-
on(event, listener) {
|
|
4
|
-
if (!this.#listeners.has(event)) {
|
|
5
|
-
this.#listeners.set(event, new Set());
|
|
6
|
-
}
|
|
7
|
-
this.#listeners.get(event).add(listener);
|
|
8
|
-
return () => {
|
|
9
|
-
this.#listeners.get(event)?.delete(listener);
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
emit(event, data) {
|
|
13
|
-
this.#listeners.get(event)?.forEach((listener) => listener(data));
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=memory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/event/memory.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,kBAAkB;IAC7B,UAAU,GAAG,IAAI,GAAG,EAAoD,CAAC;IAEzE,EAAE,CACA,KAAQ,EACR,QAAyC;QAEzC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,QAAmC,CAAC,CAAC;QACrE,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,QAAmC,CAAC,CAAC;QAC1E,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,CAA+B,KAAQ,EAAE,IAAqB;QAChE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACpE,CAAC;CACF"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export interface IEventEmitter<Events extends Record<string, unknown>> {
|
|
2
|
-
/**
|
|
3
|
-
* Registers a listener for the specified event.
|
|
4
|
-
* @param event - The event name.
|
|
5
|
-
* @param listener - The listener function for the event.
|
|
6
|
-
* @returns A function to remove the listener.
|
|
7
|
-
*/
|
|
8
|
-
on<K extends keyof Events>(event: K, listener: (data: Events[K]) => void): () => void;
|
|
9
|
-
/**
|
|
10
|
-
* Emits an event with the specified data.
|
|
11
|
-
* @param event - The event name.
|
|
12
|
-
* @param data - The data to pass to listeners.
|
|
13
|
-
*/
|
|
14
|
-
emit<K extends keyof Events>(event: K, data: Events[K]): void;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/event/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE;;;;;OAKG;IACH,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EACvB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,GAClC,MAAM,IAAI,CAAC;IAEd;;;;OAIG;IACH,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAC/D"}
|
package/dist/src/event/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/event/types.ts"],"names":[],"mappings":""}
|
package/dist/src/index.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export * from "./common.js";
|
|
2
|
-
export * from "./crypto/index.js";
|
|
3
|
-
export * from "./init.browser.js";
|
|
4
|
-
export * from "./profile.js";
|
|
5
|
-
export * from "./renown-builder.js";
|
|
6
|
-
export * from "./types.js";
|
|
7
|
-
export * from "./utils.js";
|
|
8
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
package/dist/src/index.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export * from "./common.js";
|
|
2
|
-
export * from "./crypto/index.js";
|
|
3
|
-
export * from "./init.browser.js";
|
|
4
|
-
export * from "./profile.js";
|
|
5
|
-
export * from "./renown-builder.js";
|
|
6
|
-
export * from "./types.js";
|
|
7
|
-
export * from "./utils.js";
|
|
8
|
-
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|