@bsv/wallet-toolbox-client 2.1.26 → 2.1.27
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/out/src/Wallet.d.ts +46 -2
- package/out/src/Wallet.d.ts.map +1 -1
- package/out/src/Wallet.js +65 -4
- package/out/src/Wallet.js.map +1 -1
- package/out/src/utility/identityUtils.d.ts +12 -6
- package/out/src/utility/identityUtils.d.ts.map +1 -1
- package/out/src/utility/identityUtils.js +78 -30
- package/out/src/utility/identityUtils.js.map +1 -1
- package/package.json +1 -1
package/out/src/Wallet.d.ts
CHANGED
|
@@ -10,6 +10,38 @@ import { StorageCreateActionResult } from './sdk/WalletStorage.interfaces';
|
|
|
10
10
|
/**
|
|
11
11
|
* The preferred means of constructing a `Wallet` is with a `WalletArgs` instance.
|
|
12
12
|
*/
|
|
13
|
+
/**
|
|
14
|
+
* Minimal interface the wallet uses to short-circuit identity discovery against the user's local
|
|
15
|
+
* contacts before hitting the overlay. The result shape matches what `discoverByIdentityKey` /
|
|
16
|
+
* `discoverByAttributes` return so callers don't have to special-case contact-sourced records.
|
|
17
|
+
*
|
|
18
|
+
* Implementations typically wrap `@bsv/sdk` `ContactsManager` or another on-device source. Reads
|
|
19
|
+
* are expected to be very fast (single-digit ms against local SQLite is typical).
|
|
20
|
+
*/
|
|
21
|
+
export interface ContactSource {
|
|
22
|
+
/** Look up a contact by identity key. Return `null` (or undefined) if unknown. */
|
|
23
|
+
findByIdentityKey: (identityKey: PubKeyHex) => Promise<ContactRecord | null | undefined>;
|
|
24
|
+
/** Look up contacts matching a set of attributes. May be a no-op if attribute search is unsupported. */
|
|
25
|
+
findByAttributes?: (attributes: Record<string, string> | string[]) => Promise<ContactRecord[]>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* What a {@link ContactSource} returns. Carries enough to synthesize a minimal trusted
|
|
29
|
+
* `DiscoverCertificatesResult` without touching the overlay.
|
|
30
|
+
*/
|
|
31
|
+
export interface ContactRecord {
|
|
32
|
+
identityKey: PubKeyHex;
|
|
33
|
+
/** Optional certificate type (e.g. xCert / discordCert) so callers can render a badge. */
|
|
34
|
+
type?: string;
|
|
35
|
+
/** Optional decrypted fields. Whatever the app stored when saving the contact. */
|
|
36
|
+
decryptedFields?: Record<string, string>;
|
|
37
|
+
/** Optional certifier metadata; missing trust defaults to `Infinity` (contacts override overlay trust). */
|
|
38
|
+
certifierInfo?: {
|
|
39
|
+
name?: string;
|
|
40
|
+
iconUrl?: string;
|
|
41
|
+
description?: string;
|
|
42
|
+
trust?: number;
|
|
43
|
+
};
|
|
44
|
+
}
|
|
13
45
|
export interface WalletArgs {
|
|
14
46
|
chain: Chain;
|
|
15
47
|
keyDeriver: KeyDeriverApi;
|
|
@@ -19,6 +51,13 @@ export interface WalletArgs {
|
|
|
19
51
|
privilegedKeyManager?: PrivilegedKeyManager;
|
|
20
52
|
settingsManager?: WalletSettingsManager;
|
|
21
53
|
lookupResolver?: LookupResolver;
|
|
54
|
+
/**
|
|
55
|
+
* Optional contact source consulted before the overlay in `discoverByIdentityKey` /
|
|
56
|
+
* `discoverByAttributes`. When a contact matches, the overlay call is skipped entirely.
|
|
57
|
+
* Pass `forceRefresh: true` on the discover args to bypass both contacts and the overlay
|
|
58
|
+
* cache.
|
|
59
|
+
*/
|
|
60
|
+
contactSource?: ContactSource;
|
|
22
61
|
/**
|
|
23
62
|
* Optional. Provide a function conforming to the `MakeWalletLogger` type to enable wallet request logging.
|
|
24
63
|
*
|
|
@@ -38,6 +77,7 @@ export declare class Wallet implements WalletInterface, ProtoWallet {
|
|
|
38
77
|
lookupResolver: LookupResolver;
|
|
39
78
|
services?: WalletServices;
|
|
40
79
|
monitor?: Monitor;
|
|
80
|
+
contactSource?: ContactSource;
|
|
41
81
|
identityKey: string;
|
|
42
82
|
/**
|
|
43
83
|
* The wallet creates a `BeefParty` when it is created.
|
|
@@ -107,8 +147,12 @@ export declare class Wallet implements WalletInterface, ProtoWallet {
|
|
|
107
147
|
private _trustSettingsCache?;
|
|
108
148
|
/** 2-minute cache of queryOverlay() results keyed by normalized query */
|
|
109
149
|
private readonly _overlayCache;
|
|
110
|
-
discoverByIdentityKey(args: DiscoverByIdentityKeyArgs
|
|
111
|
-
|
|
150
|
+
discoverByIdentityKey(args: DiscoverByIdentityKeyArgs & {
|
|
151
|
+
forceRefresh?: boolean;
|
|
152
|
+
}, originator?: OriginatorDomainNameStringUnder250Bytes): Promise<DiscoverCertificatesResult>;
|
|
153
|
+
discoverByAttributes(args: DiscoverByAttributesArgs & {
|
|
154
|
+
forceRefresh?: boolean;
|
|
155
|
+
}, originator?: OriginatorDomainNameStringUnder250Bytes): Promise<DiscoverCertificatesResult>;
|
|
112
156
|
verifyReturnedTxidOnly(beef: Beef, knownTxids?: string[]): Beef;
|
|
113
157
|
verifyReturnedTxidOnlyAtomicBEEF(beef: AtomicBEEF, knownTxids?: string[]): AtomicBEEF;
|
|
114
158
|
verifyReturnedTxidOnlyBEEF(beef: BEEF): BEEF;
|
package/out/src/Wallet.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wallet.d.ts","sourceRoot":"","sources":["../../../src/Wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EACnB,IAAI,EACJ,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EACjB,uCAAuC,EACvC,WAAW,EACX,oBAAoB,EACpB,sBAAsB,EACtB,SAAS,EACT,yBAAyB,EACzB,2BAA2B,EAC3B,oBAAoB,EACpB,sBAAsB,EACtB,gCAAgC,EAChC,kCAAkC,EAClC,4BAA4B,EAC5B,8BAA8B,EAC9B,cAAc,EACd,gBAAgB,EAChB,WAAW,IAAI,cAAc,EAC7B,SAAS,EAET,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EAMf,cAAc,EACd,UAAU,EACV,IAAI,EACJ,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EACjB,MAAM,UAAU,CAAA;AAMjB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAG/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAGpD,OAAO,EACL,KAAK,EACL,OAAO,EAOP,eAAe,EACf,aAAa,EACd,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAEjE,OAAO,EAAU,yBAAyB,EAAkC,MAAM,gCAAgC,CAAA;AAKlH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE,aAAa,CAAA;IACzB,OAAO,EAAE,oBAAoB,CAAA;IAC7B,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,eAAe,CAAC,EAAE,qBAAqB,CAAA;IACvC,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAC9B;AAMD,qBAAa,MAAO,YAAW,eAAe,EAAE,WAAW;IACzD,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE,aAAa,CAAA;IACzB,OAAO,EAAE,oBAAoB,CAAA;IAC7B,eAAe,EAAE,qBAAqB,CAAA;IACtC,cAAc,EAAE,cAAc,CAAA;IAE9B,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,OAAO,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"Wallet.d.ts","sourceRoot":"","sources":["../../../src/Wallet.ts"],"names":[],"mappings":"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"}
|
package/out/src/Wallet.js
CHANGED
|
@@ -17,6 +17,39 @@ const types_1 = require("./sdk/types");
|
|
|
17
17
|
const WERR_errors_1 = require("./sdk/WERR_errors");
|
|
18
18
|
const WalletError_1 = require("./sdk/WalletError");
|
|
19
19
|
const utilityHelpers_noBuffer_1 = require("./utility/utilityHelpers.noBuffer");
|
|
20
|
+
/**
|
|
21
|
+
* Build a {@link DiscoverCertificatesResult} from contact records so {@link Wallet.discoverByIdentityKey}
|
|
22
|
+
* and {@link Wallet.discoverByAttributes} can short-circuit on a local contacts hit. The synthetic
|
|
23
|
+
* certificate has `trust: Infinity` by default so downstream `transformVerifiableCertificatesWithTrust`
|
|
24
|
+
* style filtering treats contacts as authoritative.
|
|
25
|
+
*/
|
|
26
|
+
function synthesizeContactResult(contacts) {
|
|
27
|
+
const certificates = contacts.map((c) => {
|
|
28
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
29
|
+
return ({
|
|
30
|
+
type: (_a = c.type) !== null && _a !== void 0 ? _a : 'contact',
|
|
31
|
+
subject: c.identityKey,
|
|
32
|
+
serialNumber: '',
|
|
33
|
+
certifier: c.identityKey,
|
|
34
|
+
revocationOutpoint: '',
|
|
35
|
+
signature: '',
|
|
36
|
+
fields: {},
|
|
37
|
+
keyring: {},
|
|
38
|
+
decryptedFields: (_b = c.decryptedFields) !== null && _b !== void 0 ? _b : {},
|
|
39
|
+
publiclyRevealedKeyring: {},
|
|
40
|
+
certifierInfo: {
|
|
41
|
+
name: (_d = (_c = c.certifierInfo) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : 'Contact',
|
|
42
|
+
iconUrl: (_f = (_e = c.certifierInfo) === null || _e === void 0 ? void 0 : _e.iconUrl) !== null && _f !== void 0 ? _f : '',
|
|
43
|
+
description: (_h = (_g = c.certifierInfo) === null || _g === void 0 ? void 0 : _g.description) !== null && _h !== void 0 ? _h : 'Locally saved contact',
|
|
44
|
+
trust: (_k = (_j = c.certifierInfo) === null || _j === void 0 ? void 0 : _j.trust) !== null && _k !== void 0 ? _k : Number.POSITIVE_INFINITY
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
return {
|
|
49
|
+
totalCertificates: certificates.length,
|
|
50
|
+
certificates: certificates
|
|
51
|
+
};
|
|
52
|
+
}
|
|
20
53
|
function isWalletSigner(args) {
|
|
21
54
|
return args['isWalletSigner'];
|
|
22
55
|
}
|
|
@@ -70,6 +103,7 @@ class Wallet {
|
|
|
70
103
|
this.monitor = args.monitor;
|
|
71
104
|
this.privilegedKeyManager = args.privilegedKeyManager;
|
|
72
105
|
this.makeLogger = args.makeLogger;
|
|
106
|
+
this.contactSource = args.contactSource;
|
|
73
107
|
this.identityKey = this.keyDeriver.identityKey;
|
|
74
108
|
this.pendingSignActions = {};
|
|
75
109
|
this.userParty = `user ${this.getClientChangeKeyPair().publicKey}`;
|
|
@@ -373,6 +407,19 @@ class Wallet {
|
|
|
373
407
|
this.validateAuthAndArgs(args, sdk_1.Validation.validateDiscoverByIdentityKeyArgs);
|
|
374
408
|
const TTL_MS = 2 * 60 * 1000;
|
|
375
409
|
const now = Date.now();
|
|
410
|
+
const forceRefresh = args.forceRefresh === true;
|
|
411
|
+
// --- Contacts short-circuit (sub-10 ms typical, no network) ---
|
|
412
|
+
if (!forceRefresh && this.contactSource != null) {
|
|
413
|
+
try {
|
|
414
|
+
const contact = await this.contactSource.findByIdentityKey(args.identityKey);
|
|
415
|
+
if (contact != null) {
|
|
416
|
+
return synthesizeContactResult([contact]);
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
catch (_a) {
|
|
420
|
+
// Contact source failures must never block the network path.
|
|
421
|
+
}
|
|
422
|
+
}
|
|
376
423
|
// --- trustSettings cache (2 minutes) ---
|
|
377
424
|
let trustSettings = (this._trustSettingsCache != null) && this._trustSettingsCache.expiresAt > now
|
|
378
425
|
? this._trustSettingsCache.trustSettings
|
|
@@ -383,13 +430,13 @@ class Wallet {
|
|
|
383
430
|
this._trustSettingsCache = { trustSettings, expiresAt: now + TTL_MS };
|
|
384
431
|
}
|
|
385
432
|
const certifiers = trustSettings.trustedCertifiers.map(c => c.identityKey).sort((a, b) => a.localeCompare(b));
|
|
386
|
-
// --- queryOverlay cache (2 minutes) ---
|
|
433
|
+
// --- queryOverlay cache (2 minutes, client-side, bounded staleness) ---
|
|
387
434
|
const cacheKey = JSON.stringify({
|
|
388
435
|
fn: 'discoverByIdentityKey',
|
|
389
436
|
identityKey: args.identityKey,
|
|
390
437
|
certifiers
|
|
391
438
|
});
|
|
392
|
-
let cached = this._overlayCache.get(cacheKey);
|
|
439
|
+
let cached = forceRefresh ? undefined : this._overlayCache.get(cacheKey);
|
|
393
440
|
if ((cached == null) || cached.expiresAt <= now) {
|
|
394
441
|
const value = await (0, identityUtils_1.queryOverlay)({ identityKey: args.identityKey, certifiers }, this.lookupResolver);
|
|
395
442
|
cached = { value, expiresAt: now + TTL_MS };
|
|
@@ -401,10 +448,24 @@ class Wallet {
|
|
|
401
448
|
return (0, identityUtils_1.transformVerifiableCertificatesWithTrust)(trustSettings, cached.value);
|
|
402
449
|
}
|
|
403
450
|
async discoverByAttributes(args, originator) {
|
|
451
|
+
var _a;
|
|
404
452
|
sdk_1.Validation.validateOriginator(originator);
|
|
405
453
|
this.validateAuthAndArgs(args, sdk_1.Validation.validateDiscoverByAttributesArgs);
|
|
406
454
|
const TTL_MS = 2 * 60 * 1000;
|
|
407
455
|
const now = Date.now();
|
|
456
|
+
const forceRefresh = args.forceRefresh === true;
|
|
457
|
+
// --- Contacts short-circuit (optional, only when source supports attribute search) ---
|
|
458
|
+
if (!forceRefresh && ((_a = this.contactSource) === null || _a === void 0 ? void 0 : _a.findByAttributes) != null && args.attributes != null) {
|
|
459
|
+
try {
|
|
460
|
+
const matches = await this.contactSource.findByAttributes(args.attributes);
|
|
461
|
+
if (Array.isArray(matches) && matches.length > 0) {
|
|
462
|
+
return synthesizeContactResult(matches);
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
catch (_b) {
|
|
466
|
+
// Fall through to network path on contact-source failure.
|
|
467
|
+
}
|
|
468
|
+
}
|
|
408
469
|
// --- trustSettings cache (2 minutes) ---
|
|
409
470
|
let trustSettings = (this._trustSettingsCache != null) && this._trustSettingsCache.expiresAt > now
|
|
410
471
|
? this._trustSettingsCache.trustSettings
|
|
@@ -422,13 +483,13 @@ class Wallet {
|
|
|
422
483
|
const keys = Object.keys(args.attributes).sort((a, b) => a.localeCompare(b));
|
|
423
484
|
attributesKey = JSON.stringify(args.attributes, keys);
|
|
424
485
|
}
|
|
425
|
-
// --- queryOverlay cache (2 minutes) ---
|
|
486
|
+
// --- queryOverlay cache (2 minutes, client-side, bounded staleness) ---
|
|
426
487
|
const cacheKey = JSON.stringify({
|
|
427
488
|
fn: 'discoverByAttributes',
|
|
428
489
|
attributes: attributesKey,
|
|
429
490
|
certifiers
|
|
430
491
|
});
|
|
431
|
-
let cached = this._overlayCache.get(cacheKey);
|
|
492
|
+
let cached = forceRefresh ? undefined : this._overlayCache.get(cacheKey);
|
|
432
493
|
if ((cached == null) || cached.expiresAt <= now) {
|
|
433
494
|
const value = await (0, identityUtils_1.queryOverlay)({ attributes: args.attributes, certifiers }, this.lookupResolver);
|
|
434
495
|
cached = { value, expiresAt: now + TTL_MS };
|
package/out/src/Wallet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wallet.js","sourceRoot":"","sources":["../../../src/Wallet.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Wallet.js","sourceRoot":"","sources":["../../../src/Wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,17 +15,23 @@ export interface ExtendedVerifiableCertificate extends IdentityCertificate {
|
|
|
15
15
|
*/
|
|
16
16
|
export declare const transformVerifiableCertificatesWithTrust: (trustSettings: TrustSettings, certificates: VerifiableCertificate[]) => DiscoverCertificatesResult;
|
|
17
17
|
/**
|
|
18
|
-
* Performs an identity overlay service lookup query and returns the parsed results
|
|
18
|
+
* Performs an identity overlay service lookup query and returns the parsed results.
|
|
19
19
|
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
20
|
+
* Identity paths benefit from a larger grace window (more hosts contribute outputs before the
|
|
21
|
+
* query resolves) — 300 ms is well under the "instant" perception threshold and catches the long
|
|
22
|
+
* tail of healthy-but-slightly-slow hosts.
|
|
22
23
|
*/
|
|
23
24
|
export declare const queryOverlay: (query: unknown, resolver: LookupResolver) => Promise<VerifiableCertificate[]>;
|
|
24
25
|
/**
|
|
25
|
-
*
|
|
26
|
+
* Parse the returned UTXOs, decrypting and verifying each certificate.
|
|
26
27
|
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
28
|
+
* On UI runtimes (browser / React Native), yields between iterations so the JS thread does not
|
|
29
|
+
* own the frame for the full duration. On Node, runs straight through.
|
|
29
30
|
*/
|
|
30
31
|
export declare const parseResults: (lookupResult: LookupAnswer) => Promise<VerifiableCertificate[]>;
|
|
32
|
+
/**
|
|
33
|
+
* Iterable variant of {@link parseResults}: emits each successfully parsed certificate as soon as
|
|
34
|
+
* it's ready, so callers can render progressively instead of waiting for the full set.
|
|
35
|
+
*/
|
|
36
|
+
export declare function parseResults$(lookupResult: LookupAnswer): AsyncIterable<VerifiableCertificate>;
|
|
31
37
|
//# sourceMappingURL=identityUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identityUtils.d.ts","sourceRoot":"","sources":["../../../../src/utility/identityUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAGZ,qBAAqB,EAGrB,cAAc,EACd,0BAA0B,EAC1B,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACb,MAAM,UAAU,CAAA;AACjB,OAAO,EAAa,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAGnE,MAAM,WAAW,6BAA8B,SAAQ,mBAAmB;IACxE,aAAa,EAAE,iBAAiB,CAAA;IAChC,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CACtD;AASD;;;;;;;;GAQG;AACH,eAAO,MAAM,wCAAwC,GACnD,eAAe,aAAa,EAC5B,cAAc,qBAAqB,EAAE,KACpC,0BA0DF,CAAA;AAED
|
|
1
|
+
{"version":3,"file":"identityUtils.d.ts","sourceRoot":"","sources":["../../../../src/utility/identityUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAGZ,qBAAqB,EAGrB,cAAc,EACd,0BAA0B,EAC1B,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACb,MAAM,UAAU,CAAA;AACjB,OAAO,EAAa,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAGnE,MAAM,WAAW,6BAA8B,SAAQ,mBAAmB;IACxE,aAAa,EAAE,iBAAiB,CAAA;IAChC,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CACtD;AASD;;;;;;;;GAQG;AACH,eAAO,MAAM,wCAAwC,GACnD,eAAe,aAAa,EAC5B,cAAc,qBAAqB,EAAE,KACpC,0BA0DF,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,GAAU,OAAO,OAAO,EAAE,UAAU,cAAc,KAAG,OAAO,CAAC,qBAAqB,EAAE,CAO5G,CAAA;AAqDD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAU,cAAc,YAAY,KAAG,OAAO,CAAC,qBAAqB,EAAE,CAU9F,CAAA;AAED;;;GAGG;AACH,wBAAwB,aAAa,CAAE,YAAY,EAAE,YAAY,GAAG,aAAa,CAAC,qBAAqB,CAAC,CAQvG"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.parseResults = exports.queryOverlay = exports.transformVerifiableCertificatesWithTrust = void 0;
|
|
4
|
+
exports.parseResults$ = parseResults$;
|
|
4
5
|
const sdk_1 = require("@bsv/sdk");
|
|
5
6
|
/**
|
|
6
7
|
* Transforms an array of VerifiableCertificate instances according to the trust settings.
|
|
@@ -67,50 +68,97 @@ const transformVerifiableCertificatesWithTrust = (trustSettings, certificates) =
|
|
|
67
68
|
};
|
|
68
69
|
exports.transformVerifiableCertificatesWithTrust = transformVerifiableCertificatesWithTrust;
|
|
69
70
|
/**
|
|
70
|
-
* Performs an identity overlay service lookup query and returns the parsed results
|
|
71
|
+
* Performs an identity overlay service lookup query and returns the parsed results.
|
|
71
72
|
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
73
|
+
* Identity paths benefit from a larger grace window (more hosts contribute outputs before the
|
|
74
|
+
* query resolves) — 300 ms is well under the "instant" perception threshold and catches the long
|
|
75
|
+
* tail of healthy-but-slightly-slow hosts.
|
|
74
76
|
*/
|
|
75
77
|
const queryOverlay = async (query, resolver) => {
|
|
76
78
|
const results = await resolver.query({
|
|
77
79
|
service: 'ls_identity',
|
|
78
80
|
query
|
|
79
|
-
});
|
|
81
|
+
}, undefined, { graceMs: 300 });
|
|
80
82
|
return await (0, exports.parseResults)(results);
|
|
81
83
|
};
|
|
82
84
|
exports.queryOverlay = queryOverlay;
|
|
83
85
|
/**
|
|
84
|
-
*
|
|
86
|
+
* Cooperative yield helper. On environments where the main thread also drives UI work
|
|
87
|
+
* (React Native, browsers), parsing many certificates synchronously freezes input handling.
|
|
88
|
+
* Interleaving a 0 ms timeout between iterations gives the runtime a chance to flush UI events.
|
|
85
89
|
*
|
|
86
|
-
*
|
|
87
|
-
|
|
90
|
+
* On Node we skip the yield to avoid the timer overhead (no UI to unblock).
|
|
91
|
+
*/
|
|
92
|
+
const isUiRuntime = () => {
|
|
93
|
+
var _a;
|
|
94
|
+
if (typeof globalThis === 'undefined')
|
|
95
|
+
return false;
|
|
96
|
+
const g = globalThis;
|
|
97
|
+
// React Native exposes __DEV__/navigator.product; browsers expose window/document.
|
|
98
|
+
if (typeof g.window !== 'undefined' && typeof g.document !== 'undefined')
|
|
99
|
+
return true;
|
|
100
|
+
if (typeof ((_a = g.navigator) === null || _a === void 0 ? void 0 : _a.product) === 'string' && g.navigator.product === 'ReactNative')
|
|
101
|
+
return true;
|
|
102
|
+
return false;
|
|
103
|
+
};
|
|
104
|
+
const yieldToUi = async () => {
|
|
105
|
+
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
106
|
+
};
|
|
107
|
+
/**
|
|
108
|
+
* Parse a single overlay output into a verified, decrypted certificate. Returns `null` on any
|
|
109
|
+
* parse / decrypt / verify failure so a malformed entry can never block the others.
|
|
110
|
+
*/
|
|
111
|
+
const parseOne = async (output) => {
|
|
112
|
+
try {
|
|
113
|
+
const tx = sdk_1.Transaction.fromBEEF(output.beef);
|
|
114
|
+
const decodedOutput = sdk_1.PushDrop.decode(tx.outputs[output.outputIndex].lockingScript);
|
|
115
|
+
const certificate = JSON.parse(sdk_1.Utils.toUTF8(decodedOutput.fields[0]));
|
|
116
|
+
const verifiableCert = new sdk_1.VerifiableCertificate(certificate.type, certificate.serialNumber, certificate.subject, certificate.certifier, certificate.revocationOutpoint, certificate.fields, certificate.keyring, certificate.signature);
|
|
117
|
+
const decryptedFields = await verifiableCert.decryptFields(new sdk_1.ProtoWallet('anyone'));
|
|
118
|
+
await verifiableCert.verify();
|
|
119
|
+
verifiableCert.decryptedFields = decryptedFields;
|
|
120
|
+
return verifiableCert;
|
|
121
|
+
}
|
|
122
|
+
catch (error) {
|
|
123
|
+
console.error(error);
|
|
124
|
+
return null;
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
/**
|
|
128
|
+
* Parse the returned UTXOs, decrypting and verifying each certificate.
|
|
129
|
+
*
|
|
130
|
+
* On UI runtimes (browser / React Native), yields between iterations so the JS thread does not
|
|
131
|
+
* own the frame for the full duration. On Node, runs straight through.
|
|
88
132
|
*/
|
|
89
133
|
const parseResults = async (lookupResult) => {
|
|
90
|
-
if (lookupResult.type
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
const decryptedFields = await verifiableCert.decryptFields(new sdk_1.ProtoWallet('anyone'));
|
|
101
|
-
// Verify the certificate signature is correct
|
|
102
|
-
await verifiableCert.verify();
|
|
103
|
-
verifiableCert.decryptedFields = decryptedFields;
|
|
104
|
-
parsedResults.push(verifiableCert);
|
|
105
|
-
}
|
|
106
|
-
catch (error) {
|
|
107
|
-
console.error(error);
|
|
108
|
-
// do nothing
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
return parsedResults;
|
|
134
|
+
if (lookupResult.type !== 'output-list')
|
|
135
|
+
return [];
|
|
136
|
+
const parsedResults = [];
|
|
137
|
+
const shouldYield = isUiRuntime();
|
|
138
|
+
for (const output of lookupResult.outputs) {
|
|
139
|
+
if (shouldYield)
|
|
140
|
+
await yieldToUi();
|
|
141
|
+
const cert = await parseOne(output);
|
|
142
|
+
if (cert != null)
|
|
143
|
+
parsedResults.push(cert);
|
|
112
144
|
}
|
|
113
|
-
return
|
|
145
|
+
return parsedResults;
|
|
114
146
|
};
|
|
115
147
|
exports.parseResults = parseResults;
|
|
148
|
+
/**
|
|
149
|
+
* Iterable variant of {@link parseResults}: emits each successfully parsed certificate as soon as
|
|
150
|
+
* it's ready, so callers can render progressively instead of waiting for the full set.
|
|
151
|
+
*/
|
|
152
|
+
async function* parseResults$(lookupResult) {
|
|
153
|
+
if (lookupResult.type !== 'output-list')
|
|
154
|
+
return;
|
|
155
|
+
const shouldYield = isUiRuntime();
|
|
156
|
+
for (const output of lookupResult.outputs) {
|
|
157
|
+
if (shouldYield)
|
|
158
|
+
await yieldToUi();
|
|
159
|
+
const cert = await parseOne(output);
|
|
160
|
+
if (cert != null)
|
|
161
|
+
yield cert;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
116
164
|
//# sourceMappingURL=identityUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identityUtils.js","sourceRoot":"","sources":["../../../../src/utility/identityUtils.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"identityUtils.js","sourceRoot":"","sources":["../../../../src/utility/identityUtils.ts"],"names":[],"mappings":"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"}
|