@1sat/connect 0.0.78 → 0.0.81

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 CHANGED
@@ -1,4 +1,5 @@
1
1
  export { connectWallet, getAvailableProviders, loadLastProvider, type AvailableProvider, type ConnectWalletConfig, type ConnectWalletOptions, type ConnectWalletResult, type WalletProviderConfig, } from './connectWallet';
2
+ export { createWalletSession, type DisconnectReason, type DisconnectedEvent, type IdentityChangeEvent, type WalletSession, type WalletSessionOptions, type WalletSessionStatus, } from './walletSession';
2
3
  export { completeSigmaOAuth, connectSigmaWallet, getStoredSigmaBapId, initiateSigmaOAuth, reconnectSigmaWallet, setSigmaIdentity, sigmaAuthClient, SIGMA_URL, type SigmaOAuthConfig, type SigmaOAuthResult, type SigmaProviderConfig, } from './sigma-oauth';
3
4
  export { signRequest } from './auth';
4
5
  export { AuthorizationTimeoutError, CodeReplayError, type ErrorCode, ErrorCodes, FallbackRequiredError, fromErrorResponse, InsufficientFundsError, OneSatError, PopupBlockedError, PopupClosedError, StateMismatchError, TimeoutError, TransportUnavailableError, UserRejectedError, WalletLockedError, WalletNotConnectedError, } from './errors';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GACzB,MAAM,iBAAiB,CAAA;AAIxB,OAAO,EACN,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACxB,MAAM,eAAe,CAAA;AAItB,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAIpC,OAAO,EACN,yBAAyB,EACzB,eAAe,EACf,KAAK,SAAS,EACd,UAAU,EACV,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACtB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,GACvB,MAAM,UAAU,CAAA;AAIjB,YAAY,EACX,YAAY,EACZ,cAAc,EACd,WAAW,EACX,SAAS,GACT,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GACzB,MAAM,iBAAiB,CAAA;AAIxB,OAAO,EACN,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,GACxB,MAAM,iBAAiB,CAAA;AAIxB,OAAO,EACN,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACxB,MAAM,eAAe,CAAA;AAItB,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAIpC,OAAO,EACN,yBAAyB,EACzB,eAAe,EACf,KAAK,SAAS,EACd,UAAU,EACV,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACtB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,GACvB,MAAM,UAAU,CAAA;AAIjB,YAAY,EACX,YAAY,EACZ,cAAc,EACd,WAAW,EACX,SAAS,GACT,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA"}
package/dist/index.js CHANGED
@@ -80361,6 +80361,184 @@ var require_index_client5 = __commonJS((exports) => {
80361
80361
  __exportStar(require_WalletPermissionsManager(), exports);
80362
80362
  });
80363
80363
 
80364
+ // ../../node_modules/.bun/eventemitter3@5.0.4/node_modules/eventemitter3/index.js
80365
+ var require_eventemitter3 = __commonJS((exports, module) => {
80366
+ var has = Object.prototype.hasOwnProperty;
80367
+ var prefix = "~";
80368
+ function Events() {}
80369
+ if (Object.create) {
80370
+ Events.prototype = Object.create(null);
80371
+ if (!new Events().__proto__)
80372
+ prefix = false;
80373
+ }
80374
+ function EE(fn, context, once) {
80375
+ this.fn = fn;
80376
+ this.context = context;
80377
+ this.once = once || false;
80378
+ }
80379
+ function addListener(emitter, event, fn, context, once) {
80380
+ if (typeof fn !== "function") {
80381
+ throw new TypeError("The listener must be a function");
80382
+ }
80383
+ var listener = new EE(fn, context || emitter, once), evt = prefix ? prefix + event : event;
80384
+ if (!emitter._events[evt])
80385
+ emitter._events[evt] = listener, emitter._eventsCount++;
80386
+ else if (!emitter._events[evt].fn)
80387
+ emitter._events[evt].push(listener);
80388
+ else
80389
+ emitter._events[evt] = [emitter._events[evt], listener];
80390
+ return emitter;
80391
+ }
80392
+ function clearEvent(emitter, evt) {
80393
+ if (--emitter._eventsCount === 0)
80394
+ emitter._events = new Events;
80395
+ else
80396
+ delete emitter._events[evt];
80397
+ }
80398
+ function EventEmitter2() {
80399
+ this._events = new Events;
80400
+ this._eventsCount = 0;
80401
+ }
80402
+ EventEmitter2.prototype.eventNames = function eventNames() {
80403
+ var names = [], events, name;
80404
+ if (this._eventsCount === 0)
80405
+ return names;
80406
+ for (name in events = this._events) {
80407
+ if (has.call(events, name))
80408
+ names.push(prefix ? name.slice(1) : name);
80409
+ }
80410
+ if (Object.getOwnPropertySymbols) {
80411
+ return names.concat(Object.getOwnPropertySymbols(events));
80412
+ }
80413
+ return names;
80414
+ };
80415
+ EventEmitter2.prototype.listeners = function listeners(event) {
80416
+ var evt = prefix ? prefix + event : event, handlers = this._events[evt];
80417
+ if (!handlers)
80418
+ return [];
80419
+ if (handlers.fn)
80420
+ return [handlers.fn];
80421
+ for (var i2 = 0, l6 = handlers.length, ee = new Array(l6);i2 < l6; i2++) {
80422
+ ee[i2] = handlers[i2].fn;
80423
+ }
80424
+ return ee;
80425
+ };
80426
+ EventEmitter2.prototype.listenerCount = function listenerCount(event) {
80427
+ var evt = prefix ? prefix + event : event, listeners = this._events[evt];
80428
+ if (!listeners)
80429
+ return 0;
80430
+ if (listeners.fn)
80431
+ return 1;
80432
+ return listeners.length;
80433
+ };
80434
+ EventEmitter2.prototype.emit = function emit(event, a1, a22, a32, a4, a5) {
80435
+ var evt = prefix ? prefix + event : event;
80436
+ if (!this._events[evt])
80437
+ return false;
80438
+ var listeners = this._events[evt], len2 = arguments.length, args, i2;
80439
+ if (listeners.fn) {
80440
+ if (listeners.once)
80441
+ this.removeListener(event, listeners.fn, undefined, true);
80442
+ switch (len2) {
80443
+ case 1:
80444
+ return listeners.fn.call(listeners.context), true;
80445
+ case 2:
80446
+ return listeners.fn.call(listeners.context, a1), true;
80447
+ case 3:
80448
+ return listeners.fn.call(listeners.context, a1, a22), true;
80449
+ case 4:
80450
+ return listeners.fn.call(listeners.context, a1, a22, a32), true;
80451
+ case 5:
80452
+ return listeners.fn.call(listeners.context, a1, a22, a32, a4), true;
80453
+ case 6:
80454
+ return listeners.fn.call(listeners.context, a1, a22, a32, a4, a5), true;
80455
+ }
80456
+ for (i2 = 1, args = new Array(len2 - 1);i2 < len2; i2++) {
80457
+ args[i2 - 1] = arguments[i2];
80458
+ }
80459
+ listeners.fn.apply(listeners.context, args);
80460
+ } else {
80461
+ var length = listeners.length, j2;
80462
+ for (i2 = 0;i2 < length; i2++) {
80463
+ if (listeners[i2].once)
80464
+ this.removeListener(event, listeners[i2].fn, undefined, true);
80465
+ switch (len2) {
80466
+ case 1:
80467
+ listeners[i2].fn.call(listeners[i2].context);
80468
+ break;
80469
+ case 2:
80470
+ listeners[i2].fn.call(listeners[i2].context, a1);
80471
+ break;
80472
+ case 3:
80473
+ listeners[i2].fn.call(listeners[i2].context, a1, a22);
80474
+ break;
80475
+ case 4:
80476
+ listeners[i2].fn.call(listeners[i2].context, a1, a22, a32);
80477
+ break;
80478
+ default:
80479
+ if (!args)
80480
+ for (j2 = 1, args = new Array(len2 - 1);j2 < len2; j2++) {
80481
+ args[j2 - 1] = arguments[j2];
80482
+ }
80483
+ listeners[i2].fn.apply(listeners[i2].context, args);
80484
+ }
80485
+ }
80486
+ }
80487
+ return true;
80488
+ };
80489
+ EventEmitter2.prototype.on = function on(event, fn, context) {
80490
+ return addListener(this, event, fn, context, false);
80491
+ };
80492
+ EventEmitter2.prototype.once = function once(event, fn, context) {
80493
+ return addListener(this, event, fn, context, true);
80494
+ };
80495
+ EventEmitter2.prototype.removeListener = function removeListener(event, fn, context, once) {
80496
+ var evt = prefix ? prefix + event : event;
80497
+ if (!this._events[evt])
80498
+ return this;
80499
+ if (!fn) {
80500
+ clearEvent(this, evt);
80501
+ return this;
80502
+ }
80503
+ var listeners = this._events[evt];
80504
+ if (listeners.fn) {
80505
+ if (listeners.fn === fn && (!once || listeners.once) && (!context || listeners.context === context)) {
80506
+ clearEvent(this, evt);
80507
+ }
80508
+ } else {
80509
+ for (var i2 = 0, events = [], length = listeners.length;i2 < length; i2++) {
80510
+ if (listeners[i2].fn !== fn || once && !listeners[i2].once || context && listeners[i2].context !== context) {
80511
+ events.push(listeners[i2]);
80512
+ }
80513
+ }
80514
+ if (events.length)
80515
+ this._events[evt] = events.length === 1 ? events[0] : events;
80516
+ else
80517
+ clearEvent(this, evt);
80518
+ }
80519
+ return this;
80520
+ };
80521
+ EventEmitter2.prototype.removeAllListeners = function removeAllListeners(event) {
80522
+ var evt;
80523
+ if (event) {
80524
+ evt = prefix ? prefix + event : event;
80525
+ if (this._events[evt])
80526
+ clearEvent(this, evt);
80527
+ } else {
80528
+ this._events = new Events;
80529
+ this._eventsCount = 0;
80530
+ }
80531
+ return this;
80532
+ };
80533
+ EventEmitter2.prototype.off = EventEmitter2.prototype.removeListener;
80534
+ EventEmitter2.prototype.addListener = EventEmitter2.prototype.on;
80535
+ EventEmitter2.prefixed = prefix;
80536
+ EventEmitter2.EventEmitter = EventEmitter2;
80537
+ if (typeof module !== "undefined") {
80538
+ module.exports = EventEmitter2;
80539
+ }
80540
+ });
80541
+
80364
80542
  // ../client/dist/errors.js
80365
80543
  class HttpError extends Error {
80366
80544
  status;
@@ -102507,10 +102685,126 @@ async function connectWallet(config) {
102507
102685
  return null;
102508
102686
  }
102509
102687
  }
102510
- // ../../node_modules/.bun/nanostores@1.4.0/node_modules/nanostores/clean-stores/index.js
102688
+ // ../../node_modules/.bun/eventemitter3@5.0.4/node_modules/eventemitter3/index.mjs
102689
+ var import__4 = __toESM(require_eventemitter3(), 1);
102690
+ var eventemitter3_default = import__4.default;
102691
+
102692
+ // src/walletSession.ts
102693
+ var DEFAULT_POLL_INTERVAL_MS = 4000;
102694
+ function createWalletSession(result, options) {
102695
+ const pollIntervalMs = options?.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS;
102696
+ const events = new eventemitter3_default;
102697
+ const providerDisconnect = result.disconnect;
102698
+ let wallet2 = result.wallet;
102699
+ let identityKey = result.identityKey;
102700
+ let status = "connected";
102701
+ let disconnectReason = null;
102702
+ const provider = result.provider;
102703
+ let timer = null;
102704
+ let inFlight = false;
102705
+ let generation = 0;
102706
+ function setStatus(next) {
102707
+ if (status === next)
102708
+ return;
102709
+ status = next;
102710
+ events.emit("status", next);
102711
+ }
102712
+ function stopPolling() {
102713
+ if (timer !== null) {
102714
+ clearInterval(timer);
102715
+ timer = null;
102716
+ }
102717
+ generation += 1;
102718
+ }
102719
+ async function tick(gen) {
102720
+ if (gen !== generation || status !== "connected" || !wallet2 || inFlight) {
102721
+ return;
102722
+ }
102723
+ inFlight = true;
102724
+ try {
102725
+ const auth2 = await wallet2.isAuthenticated({});
102726
+ if (gen !== generation || status !== "connected")
102727
+ return;
102728
+ if (!auth2.authenticated) {
102729
+ endSession("unauthenticated");
102730
+ return;
102731
+ }
102732
+ const { publicKey } = await wallet2.getPublicKey({ identityKey: true });
102733
+ if (gen !== generation || status !== "connected")
102734
+ return;
102735
+ if (publicKey && publicKey !== identityKey) {
102736
+ const previous = identityKey;
102737
+ identityKey = publicKey;
102738
+ events.emit("identityChange", {
102739
+ previous,
102740
+ next: publicKey
102741
+ });
102742
+ }
102743
+ } catch {
102744
+ if (gen !== generation || status !== "connected")
102745
+ return;
102746
+ endSession("unavailable");
102747
+ } finally {
102748
+ inFlight = false;
102749
+ }
102750
+ }
102751
+ function endSession(reason) {
102752
+ if (status === "disconnected")
102753
+ return;
102754
+ stopPolling();
102755
+ disconnectReason = reason;
102756
+ setStatus("disconnected");
102757
+ const w3 = wallet2;
102758
+ wallet2 = null;
102759
+ identityKey = null;
102760
+ try {
102761
+ providerDisconnect();
102762
+ } catch {}
102763
+ events.emit("disconnected", { reason });
102764
+ }
102765
+ const session = {
102766
+ get wallet() {
102767
+ return wallet2;
102768
+ },
102769
+ get identityKey() {
102770
+ return identityKey;
102771
+ },
102772
+ get status() {
102773
+ return status;
102774
+ },
102775
+ get provider() {
102776
+ return provider;
102777
+ },
102778
+ get disconnectReason() {
102779
+ return disconnectReason;
102780
+ },
102781
+ start() {
102782
+ if (status !== "connected" || timer !== null)
102783
+ return;
102784
+ const gen = generation;
102785
+ timer = setInterval(() => {
102786
+ tick(gen);
102787
+ }, pollIntervalMs);
102788
+ },
102789
+ stop() {
102790
+ stopPolling();
102791
+ },
102792
+ disconnect(reason = "manual") {
102793
+ endSession(reason);
102794
+ },
102795
+ on(event, handler) {
102796
+ events.on(event, handler);
102797
+ return () => {
102798
+ events.off(event, handler);
102799
+ };
102800
+ }
102801
+ };
102802
+ return session;
102803
+ }
102804
+ // ../../node_modules/.bun/nanostores@1.4.1/node_modules/nanostores/clean-stores/index.js
102511
102805
  var clean2 = Symbol("clean");
102512
102806
 
102513
- // ../../node_modules/.bun/nanostores@1.4.0/node_modules/nanostores/atom/index.js
102807
+ // ../../node_modules/.bun/nanostores@1.4.1/node_modules/nanostores/atom/index.js
102514
102808
  var listenerQueue = [];
102515
102809
  var lqIndex = 0;
102516
102810
  var batchSeen = null;
@@ -102588,7 +102882,7 @@ var atom = (initialValue) => {
102588
102882
  }
102589
102883
  return $atom;
102590
102884
  };
102591
- // ../../node_modules/.bun/nanostores@1.4.0/node_modules/nanostores/lifecycle/index.js
102885
+ // ../../node_modules/.bun/nanostores@1.4.1/node_modules/nanostores/lifecycle/index.js
102592
102886
  var SET = 2;
102593
102887
  var MOUNT = 5;
102594
102888
  var UNMOUNT = 6;
@@ -102693,7 +102987,7 @@ var onMount = ($store, initialize) => {
102693
102987
  };
102694
102988
  });
102695
102989
  };
102696
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/equality.mjs
102990
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/equality.mjs
102697
102991
  function isPlainObject(value) {
102698
102992
  if (typeof value !== "object" || value === null)
102699
102993
  return false;
@@ -102844,7 +103138,7 @@ var InternalAPIError = class extends Error {
102844
103138
  var kAPIErrorHeaderSymbol = Symbol.for("better-call:api-error-headers");
102845
103139
  var APIError = makeErrorForHideStackFrame(InternalAPIError, Error);
102846
103140
 
102847
- // ../../node_modules/.bun/@better-auth+core@1.6.23+f46b46834471340a/node_modules/@better-auth/core/dist/error/index.mjs
103141
+ // ../../node_modules/.bun/@better-auth+core@1.6.24+de40f753a75684d3/node_modules/@better-auth/core/dist/error/index.mjs
102848
103142
  var BetterAuthError = class extends Error {
102849
103143
  constructor(message, options) {
102850
103144
  super(message, options);
@@ -102854,7 +103148,7 @@ var BetterAuthError = class extends Error {
102854
103148
  }
102855
103149
  };
102856
103150
 
102857
- // ../../node_modules/.bun/@sigma-auth+better-auth-plugin@0.0.92+ff13bdca046f0cb4/node_modules/@sigma-auth/better-auth-plugin/dist/client/local-signer.js
103151
+ // ../../node_modules/.bun/@sigma-auth+better-auth-plugin@0.0.92+f7d1acf83eac3b9f/node_modules/@sigma-auth/better-auth-plugin/dist/client/local-signer.js
102858
103152
  class LocalServerSigner {
102859
103153
  baseUrl;
102860
103154
  timeout;
@@ -103082,7 +103376,7 @@ class LocalServerSigner {
103082
103376
  }
103083
103377
  }
103084
103378
 
103085
- // ../../node_modules/.bun/@sigma-auth+better-auth-plugin@0.0.92+ff13bdca046f0cb4/node_modules/@sigma-auth/better-auth-plugin/dist/client/sigma-cwi.js
103379
+ // ../../node_modules/.bun/@sigma-auth+better-auth-plugin@0.0.92+f7d1acf83eac3b9f/node_modules/@sigma-auth/better-auth-plugin/dist/client/sigma-cwi.js
103086
103380
  var isRecord3 = (v3) => typeof v3 === "object" && v3 !== null;
103087
103381
  var isResponse3 = (v3) => isRecord3(v3) && v3.type === "CWI" && v3.isInvocation === false && typeof v3.id === "string";
103088
103382
  var isState3 = (v3) => isRecord3(v3) && v3.type === "CWI" && isRecord3(v3.cwiState);
@@ -103323,7 +103617,7 @@ class SigmaCWISigner {
103323
103617
  this.pending.clear();
103324
103618
  }
103325
103619
  }
103326
- // ../../node_modules/.bun/@sigma-auth+better-auth-plugin@0.0.92+ff13bdca046f0cb4/node_modules/@sigma-auth/better-auth-plugin/dist/client/signer.js
103620
+ // ../../node_modules/.bun/@sigma-auth+better-auth-plugin@0.0.92+f7d1acf83eac3b9f/node_modules/@sigma-auth/better-auth-plugin/dist/client/signer.js
103327
103621
  class SigmaIframeSigner {
103328
103622
  iframe = null;
103329
103623
  pendingRequests = new Map;
@@ -103721,7 +104015,7 @@ class SigmaIframeSigner {
103721
104015
  this.rejectAllPending(new Error("Signer destroyed"));
103722
104016
  }
103723
104017
  }
103724
- // ../../node_modules/.bun/@sigma-auth+better-auth-plugin@0.0.92+ff13bdca046f0cb4/node_modules/@sigma-auth/better-auth-plugin/dist/client/index.js
104018
+ // ../../node_modules/.bun/@sigma-auth+better-auth-plugin@0.0.92+f7d1acf83eac3b9f/node_modules/@sigma-auth/better-auth-plugin/dist/client/index.js
103725
104019
  var signer = null;
103726
104020
  var signerType = null;
103727
104021
  var storedBapId = null;
@@ -104229,7 +104523,7 @@ Backend: ${status} (${endpoint})`;
104229
104523
  };
104230
104524
  };
104231
104525
 
104232
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/broadcast-channel.mjs
104526
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/broadcast-channel.mjs
104233
104527
  var kBroadcastChannel = Symbol.for("better-auth:broadcast-channel");
104234
104528
  var now = () => Math.floor(Date.now() / 1000);
104235
104529
  var WindowBroadcastChannel = class {
@@ -104277,7 +104571,7 @@ function getGlobalBroadcastChannel(name = "better-auth.message") {
104277
104571
  return globalThis[kBroadcastChannel];
104278
104572
  }
104279
104573
 
104280
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/focus-manager.mjs
104574
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/focus-manager.mjs
104281
104575
  var kFocusManager = Symbol.for("better-auth:focus-manager");
104282
104576
  var WindowFocusManager = class {
104283
104577
  listeners = /* @__PURE__ */ new Set;
@@ -104309,7 +104603,7 @@ function getGlobalFocusManager() {
104309
104603
  return globalThis[kFocusManager];
104310
104604
  }
104311
104605
 
104312
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/online-manager.mjs
104606
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/online-manager.mjs
104313
104607
  var kOnlineManager = Symbol.for("better-auth:online-manager");
104314
104608
  var WindowOnlineManager = class {
104315
104609
  listeners = /* @__PURE__ */ new Set;
@@ -104343,7 +104637,7 @@ function getGlobalOnlineManager() {
104343
104637
  return globalThis[kOnlineManager];
104344
104638
  }
104345
104639
 
104346
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/parser.mjs
104640
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/parser.mjs
104347
104641
  var PROTO_POLLUTION_PATTERNS = {
104348
104642
  proto: /"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,
104349
104643
  constructor: /"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,
@@ -104421,7 +104715,7 @@ function parseJSON(value, options = { strict: true }) {
104421
104715
  return betterJSONParse(value, options);
104422
104716
  }
104423
104717
 
104424
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/session-refresh.mjs
104718
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/session-refresh.mjs
104425
104719
  var now2 = () => Math.floor(Date.now() / 1000);
104426
104720
  var FOCUS_REFETCH_RATE_LIMIT_SECONDS = 5;
104427
104721
  function createSessionRefreshManager(opts) {
@@ -104553,7 +104847,7 @@ function createSessionRefreshManager(opts) {
104553
104847
  };
104554
104848
  }
104555
104849
 
104556
- // ../../node_modules/.bun/@better-auth+core@1.6.23+f46b46834471340a/node_modules/@better-auth/core/dist/env/env-impl.mjs
104850
+ // ../../node_modules/.bun/@better-auth+core@1.6.24+de40f753a75684d3/node_modules/@better-auth/core/dist/env/env-impl.mjs
104557
104851
  var _envShim = Object.create(null);
104558
104852
  var _getEnv = (useShim) => globalThis.process?.env || globalThis.Deno?.env.toObject() || globalThis.__env__ || (useShim ? _envShim : globalThis);
104559
104853
  var env = new Proxy(_envShim, {
@@ -104613,7 +104907,7 @@ var ENV = Object.freeze({
104613
104907
  return getEnvVar("BETTER_AUTH_TELEMETRY_ENDPOINT", "");
104614
104908
  }
104615
104909
  });
104616
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/utils/url.mjs
104910
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/utils/url.mjs
104617
104911
  var SLASH_CHAR_CODE = 47;
104618
104912
  function trimTrailingSlashes(value) {
104619
104913
  let end = value.length;
@@ -104704,7 +104998,7 @@ function getOrigin(url) {
104704
104998
  }
104705
104999
  }
104706
105000
 
104707
- // ../../node_modules/.bun/@better-auth+core@1.6.23+f46b46834471340a/node_modules/@better-auth/core/dist/utils/url.mjs
105001
+ // ../../node_modules/.bun/@better-auth+core@1.6.24+de40f753a75684d3/node_modules/@better-auth/core/dist/utils/url.mjs
104708
105002
  var DANGEROUS_URL_SCHEMES = [
104709
105003
  "javascript:",
104710
105004
  "data:",
@@ -104720,7 +105014,7 @@ function isSafeUrlScheme(value) {
104720
105014
  return !DANGEROUS_URL_SCHEMES.includes(parsed.protocol);
104721
105015
  }
104722
105016
 
104723
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/fetch-plugins.mjs
105017
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/fetch-plugins.mjs
104724
105018
  var redirectPlugin = {
104725
105019
  id: "redirect",
104726
105020
  name: "Redirect",
@@ -104736,7 +105030,7 @@ var redirectPlugin = {
104736
105030
  } }
104737
105031
  };
104738
105032
 
104739
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/session-atom.mjs
105033
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/session-atom.mjs
104740
105034
  var isServer = () => typeof window === "undefined";
104741
105035
  function normalizeSessionResponse(res) {
104742
105036
  if (typeof res === "object" && res !== null && "data" in res && "error" in res)
@@ -105577,7 +105871,7 @@ var betterFetch = async (url, options) => {
105577
105871
  };
105578
105872
  };
105579
105873
 
105580
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/config.mjs
105874
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/config.mjs
105581
105875
  var resolvePublicAuthUrl = (basePath) => {
105582
105876
  if (typeof process === "undefined")
105583
105877
  return;
@@ -105687,12 +105981,12 @@ var getClientConfig = (options, loadEnv) => {
105687
105981
  };
105688
105982
  };
105689
105983
 
105690
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/utils/is-atom.mjs
105984
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/utils/is-atom.mjs
105691
105985
  function isAtom(value) {
105692
105986
  return typeof value === "object" && value !== null && "get" in value && typeof value.get === "function" && "lc" in value && typeof value.lc === "number";
105693
105987
  }
105694
105988
 
105695
- // ../../node_modules/.bun/@better-auth+core@1.6.23+f46b46834471340a/node_modules/@better-auth/core/dist/utils/string.mjs
105989
+ // ../../node_modules/.bun/@better-auth+core@1.6.24+de40f753a75684d3/node_modules/@better-auth/core/dist/utils/string.mjs
105696
105990
  function capitalizeFirstLetter(str) {
105697
105991
  return str.charAt(0).toUpperCase() + str.slice(1);
105698
105992
  }
@@ -105705,7 +105999,7 @@ function toKebabCase(input) {
105705
105999
  return splitWords(input).map((word) => word.toLowerCase()).join("-");
105706
106000
  }
105707
106001
 
105708
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/proxy.mjs
106002
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/proxy.mjs
105709
106003
  function getMethod3(path, knownPathMethods, args) {
105710
106004
  const method = knownPathMethods[path];
105711
106005
  const { fetchOptions, query: _query, ...body } = args || {};
@@ -105787,7 +106081,7 @@ function createDynamicPathProxy(routes, client, knownPathMethods, atoms, atomLis
105787
106081
  return createProxy();
105788
106082
  }
105789
106083
 
105790
- // ../../node_modules/.bun/better-auth@1.6.23+011985462259622c/node_modules/better-auth/dist/client/vanilla.mjs
106084
+ // ../../node_modules/.bun/better-auth@1.6.24+1e95e03b8c0caf29/node_modules/better-auth/dist/client/vanilla.mjs
105791
106085
  function createAuthClient(options) {
105792
106086
  const { pluginPathMethods, pluginsActions, pluginsAtoms, $fetch, atomListeners, $store } = getClientConfig(options);
105793
106087
  const resolvedHooks = {};
@@ -106070,6 +106364,7 @@ export {
106070
106364
  getStoredSigmaBapId,
106071
106365
  getAvailableProviders,
106072
106366
  fromErrorResponse,
106367
+ createWalletSession,
106073
106368
  connectWallet,
106074
106369
  connectSigmaWallet,
106075
106370
  completeSigmaOAuth,
@@ -0,0 +1,40 @@
1
+ import type { WalletInterface } from '@bsv/sdk';
2
+ import type { ConnectWalletResult } from './connectWallet';
3
+ export type WalletSessionStatus = 'connected' | 'disconnected';
4
+ export type DisconnectReason = 'unauthenticated' | 'unavailable' | 'manual';
5
+ export interface WalletSessionOptions {
6
+ /** How often to check auth + identity. Default 4000ms. */
7
+ pollIntervalMs?: number;
8
+ }
9
+ export interface IdentityChangeEvent {
10
+ previous: string;
11
+ next: string;
12
+ }
13
+ export interface DisconnectedEvent {
14
+ reason: DisconnectReason;
15
+ }
16
+ export interface WalletSession {
17
+ readonly wallet: WalletInterface | null;
18
+ readonly identityKey: string | null;
19
+ readonly status: WalletSessionStatus;
20
+ readonly provider: string | null;
21
+ readonly disconnectReason: DisconnectReason | null;
22
+ /** Start the poll loop (idempotent). No-op if already disconnected. */
23
+ start(): void;
24
+ /** Stop polling without clearing session state. */
25
+ stop(): void;
26
+ /** Stop polling, call provider disconnect, clear session, emit disconnected. */
27
+ disconnect(reason?: DisconnectReason): void;
28
+ on(event: 'identityChange', handler: (e: IdentityChangeEvent) => void): () => void;
29
+ on(event: 'disconnected', handler: (e: DisconnectedEvent) => void): () => void;
30
+ on(event: 'status', handler: (status: WalletSessionStatus) => void): () => void;
31
+ }
32
+ /**
33
+ * Holds a connected BRC-100 wallet and watches for identity / auth changes.
34
+ *
35
+ * Polling is gated on `isAuthenticated` so a locked wallet does not trigger
36
+ * unlock popups via `getPublicKey`. When auth is lost or the substrate fails,
37
+ * the session disconnects and emits `disconnected`.
38
+ */
39
+ export declare function createWalletSession(result: Pick<ConnectWalletResult, 'wallet' | 'identityKey' | 'provider' | 'disconnect'>, options?: WalletSessionOptions): WalletSession;
40
+ //# sourceMappingURL=walletSession.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walletSession.d.ts","sourceRoot":"","sources":["../src/walletSession.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE/C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,cAAc,CAAA;AAE9D,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,aAAa,GAAG,QAAQ,CAAA;AAE3E,MAAM,WAAW,oBAAoB;IACpC,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,mBAAmB;IACnC,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,iBAAiB;IACjC,MAAM,EAAE,gBAAgB,CAAA;CACxB;AAED,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAA;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAElD,uEAAuE;IACvE,KAAK,IAAI,IAAI,CAAA;IACb,mDAAmD;IACnD,IAAI,IAAI,IAAI,CAAA;IACZ,gFAAgF;IAChF,UAAU,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAE3C,EAAE,CACD,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,GACvC,MAAM,IAAI,CAAA;IACb,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,iBAAiB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAA;IAC9E,EAAE,CACD,KAAK,EAAE,QAAQ,EACf,OAAO,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,GAC5C,MAAM,IAAI,CAAA;CACb;AAID;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAClC,MAAM,EAAE,IAAI,CACX,mBAAmB,EACnB,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,YAAY,CACpD,EACD,OAAO,CAAC,EAAE,oBAAoB,GAC5B,aAAa,CA+Hf"}
package/package.json CHANGED
@@ -1,43 +1,43 @@
1
1
  {
2
- "name": "@1sat/connect",
3
- "version": "0.0.78",
4
- "description": "Connection layer for 1Sat wallet - popup flow, events, session management",
5
- "type": "module",
6
- "main": "./dist/index.js",
7
- "types": "./dist/index.d.ts",
8
- "exports": {
9
- ".": {
10
- "types": "./dist/index.d.ts",
11
- "import": "./dist/index.js"
12
- }
13
- },
14
- "files": [
15
- "dist"
16
- ],
17
- "scripts": {
18
- "build": "bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly",
19
- "dev": "tsc --watch"
20
- },
21
- "keywords": [
22
- "1sat",
23
- "bsv",
24
- "ordinals",
25
- "wallet",
26
- "sdk",
27
- "connect"
28
- ],
29
- "license": "MIT",
30
- "dependencies": {
31
- "@1sat/wallet": "0.0.94",
32
- "@sigma-auth/better-auth-plugin": "^0.0.92",
33
- "better-auth": "^1.6.18",
34
- "eventemitter3": "^5.0.1"
35
- },
36
- "peerDependencies": {
37
- "@bsv/sdk": "^2.1.6"
38
- },
39
- "devDependencies": {
40
- "@bsv/sdk": "^2.1.6",
41
- "typescript": "^5.9.3"
42
- }
2
+ "name": "@1sat/connect",
3
+ "version": "0.0.81",
4
+ "description": "Connection layer for 1Sat wallet - popup flow, events, session management",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ }
13
+ },
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "scripts": {
18
+ "build": "bun build ./src/index.ts --outdir ./dist --target browser && tsc --emitDeclarationOnly",
19
+ "dev": "tsc --watch"
20
+ },
21
+ "keywords": [
22
+ "1sat",
23
+ "bsv",
24
+ "ordinals",
25
+ "wallet",
26
+ "sdk",
27
+ "connect"
28
+ ],
29
+ "license": "MIT",
30
+ "dependencies": {
31
+ "@1sat/wallet": "0.0.96",
32
+ "@sigma-auth/better-auth-plugin": "^0.0.92",
33
+ "better-auth": "^1.6.18",
34
+ "eventemitter3": "^5.0.1"
35
+ },
36
+ "peerDependencies": {
37
+ "@bsv/sdk": "^2.1.6"
38
+ },
39
+ "devDependencies": {
40
+ "@bsv/sdk": "^2.1.6",
41
+ "typescript": "^5.9.3"
42
+ }
43
43
  }