@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.
@@ -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, originator?: OriginatorDomainNameStringUnder250Bytes): Promise<DiscoverCertificatesResult>;
111
- discoverByAttributes(args: DiscoverByAttributesArgs, originator?: OriginatorDomainNameStringUnder250Bytes): Promise<DiscoverCertificatesResult>;
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;
@@ -1 +1 @@
1
- {"version":3,"file":"Wallet.d.ts","sourceRoot":"","sources":["../../../src/Wallet.ts"],"names":[],"mappings":"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"}
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 };
@@ -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
- * @param query
21
- * @returns
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
- * Internal func: Parse the returned UTXOs Decrypt and verify the certificates and signatures Return the set of identity keys, certificates and decrypted certificate fields
26
+ * Parse the returned UTXOs, decrypting and verifying each certificate.
26
27
  *
27
- * @param {Output[]} outputs
28
- * @returns {Promise<VerifiableCertificate[]>}
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;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAU,OAAO,OAAO,EAAE,UAAU,cAAc,KAAG,OAAO,CAAC,qBAAqB,EAAE,CAO5G,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAU,cAAc,YAAY,KAAG,OAAO,CAAC,qBAAqB,EAAE,CAmC9F,CAAA"}
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
- * @param query
73
- * @returns
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
- * Internal func: Parse the returned UTXOs Decrypt and verify the certificates and signatures Return the set of identity keys, certificates and decrypted certificate fields
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
- * @param {Output[]} outputs
87
- * @returns {Promise<VerifiableCertificate[]>}
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 === 'output-list') {
91
- const parsedResults = [];
92
- for (const output of lookupResult.outputs) {
93
- try {
94
- const tx = sdk_1.Transaction.fromBEEF(output.beef);
95
- // Decode the Identity token fields from the Bitcoin outputScript
96
- const decodedOutput = sdk_1.PushDrop.decode(tx.outputs[output.outputIndex].lockingScript);
97
- // Parse out the certificate and relevant data
98
- const certificate = JSON.parse(sdk_1.Utils.toUTF8(decodedOutput.fields[0])); // TEST
99
- const verifiableCert = new sdk_1.VerifiableCertificate(certificate.type, certificate.serialNumber, certificate.subject, certificate.certifier, certificate.revocationOutpoint, certificate.fields, certificate.keyring, certificate.signature);
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":"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"}
1
+ {"version":3,"file":"identityUtils.js","sourceRoot":"","sources":["../../../../src/utility/identityUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsv/wallet-toolbox-client",
3
- "version": "2.1.26",
3
+ "version": "2.1.27",
4
4
  "description": "Client only Wallet Storage",
5
5
  "main": "./out/src/index.client.js",
6
6
  "types": "./out/src/index.client.d.ts",