@1sat/react 0.0.26 → 0.0.29

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.
@@ -2,6 +2,8 @@ import { type ReactNode } from 'react';
2
2
  export interface SigmaCallbackProps {
3
3
  /** Where to redirect after successful auth (default: '/') */
4
4
  redirectTo?: string;
5
+ /** Called after successful auth instead of hard redirect. Use for SPA navigation. */
6
+ onComplete?: () => void;
5
7
  /** Custom loading content */
6
8
  loadingContent?: ReactNode;
7
9
  /** Custom error render */
@@ -16,5 +18,5 @@ export interface SigmaCallbackProps {
16
18
  * 3. Store connection for WalletProvider
17
19
  * 4. Redirect to target page
18
20
  */
19
- export declare function SigmaCallback({ redirectTo, loadingContent, renderError, }: SigmaCallbackProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare function SigmaCallback({ redirectTo, onComplete, loadingContent, renderError, }: SigmaCallbackProps): import("react/jsx-runtime").JSX.Element;
20
22
  //# sourceMappingURL=SigmaCallback.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SigmaCallback.d.ts","sourceRoot":"","sources":["../src/SigmaCallback.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAuB,MAAM,OAAO,CAAA;AAI3D,MAAM,WAAW,kBAAkB;IAClC,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,6BAA6B;IAC7B,cAAc,CAAC,EAAE,SAAS,CAAA;IAC1B,0BAA0B;IAC1B,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,KAAK,SAAS,CAAA;CAC9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,EAC7B,UAAgB,EAChB,cAAc,EACd,WAAW,GACX,EAAE,kBAAkB,2CA2GpB"}
1
+ {"version":3,"file":"SigmaCallback.d.ts","sourceRoot":"","sources":["../src/SigmaCallback.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAuB,MAAM,OAAO,CAAA;AAI3D,MAAM,WAAW,kBAAkB;IAClC,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IACvB,6BAA6B;IAC7B,cAAc,CAAC,EAAE,SAAS,CAAA;IAC1B,0BAA0B;IAC1B,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,KAAK,SAAS,CAAA;CAC9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,EAC7B,UAAgB,EAChB,UAAU,EACV,cAAc,EACd,WAAW,GACX,EAAE,kBAAkB,2CAoGpB"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export * from '@1sat/connect';
2
- export { WalletProvider, useWallet, type WalletContextValue, type WalletProviderProps, type WalletStatus, } from './wallet-context';
2
+ export { WalletProvider, useWallet, loadStoredProvider, type WalletContextValue, type WalletProviderProps, type WalletStatus, } from './wallet-context';
3
3
  export { SigmaCallback, type SigmaCallbackProps } from './SigmaCallback';
4
4
  export { ConnectDialog, type ConnectDialogProps, type ConnectDialogProviderInfo, type ConnectDialogRenderProps, } from './ConnectDialog';
5
5
  export { ConnectDialogProvider, useConnectDialog, type ConnectDialogProviderProps, } from './ConnectDialogProvider';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAA;AAG7B,OAAO,EACN,cAAc,EACd,SAAS,EACT,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,YAAY,GACjB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGxE,OAAO,EACN,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,GAC7B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACN,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,0BAA0B,GAC/B,MAAM,yBAAyB,CAAA;AAGhC,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACxE,OAAO,EACN,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,GAC9B,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAA;AAG7B,OAAO,EACN,cAAc,EACd,SAAS,EACT,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,YAAY,GACjB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGxE,OAAO,EACN,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,GAC7B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACN,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,0BAA0B,GAC/B,MAAM,yBAAyB,CAAA;AAGhC,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACxE,OAAO,EACN,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,GAC9B,MAAM,kBAAkB,CAAA"}
package/dist/index.js CHANGED
@@ -5,7 +5,6 @@ export * from "@1sat/connect";
5
5
 
6
6
  // src/wallet-context.tsx
7
7
  import {
8
- connectSigmaWallet,
9
8
  connectWallet,
10
9
  getAvailableProviders
11
10
  } from "@1sat/connect";
@@ -20,22 +19,23 @@ import {
20
19
  } from "react";
21
20
  import { jsx } from "react/jsx-runtime";
22
21
  var STORAGE_KEY = "onesat_wallet_provider";
23
- function loadStored() {
22
+ function loadStoredProvider() {
24
23
  if (typeof window === "undefined")
25
24
  return null;
26
25
  try {
27
26
  const raw = localStorage.getItem(STORAGE_KEY);
28
27
  if (!raw)
29
28
  return null;
30
- return JSON.parse(raw);
29
+ const parsed = JSON.parse(raw);
30
+ return parsed?.providerType ?? null;
31
31
  } catch {
32
32
  return null;
33
33
  }
34
34
  }
35
- function saveStored(providerType, identityKey) {
35
+ function saveStored(providerType) {
36
36
  if (typeof window === "undefined")
37
37
  return;
38
- localStorage.setItem(STORAGE_KEY, JSON.stringify({ providerType, identityKey }));
38
+ localStorage.setItem(STORAGE_KEY, JSON.stringify({ providerType }));
39
39
  }
40
40
  function clearStored() {
41
41
  if (typeof window === "undefined")
@@ -62,7 +62,7 @@ function WalletProvider({
62
62
  setStatus("connected");
63
63
  setError(null);
64
64
  disconnectRef.current = result.disconnect;
65
- saveStored(result.provider, result.identityKey);
65
+ saveStored(result.provider);
66
66
  }, []);
67
67
  const disconnect = useCallback(() => {
68
68
  disconnectRef.current?.();
@@ -115,37 +115,7 @@ function WalletProvider({
115
115
  applyResult
116
116
  };
117
117
  useEffect(() => {
118
- const {
119
- autoDetect: auto,
120
- availableProviders: available,
121
- connect: doConnect,
122
- applyResult: apply
123
- } = mountRef.current;
124
- const stored = loadStored();
125
- if (stored) {
126
- setStatus("connecting");
127
- if (stored.providerType === "sigma" && stored.bapId) {
128
- connectSigmaWallet(stored.bapId).then(apply).catch(() => {
129
- clearStored();
130
- if (auto)
131
- doConnect();
132
- else
133
- setStatus("selecting");
134
- });
135
- return;
136
- }
137
- const provider = available.find((p) => p.type === stored.providerType);
138
- if (provider) {
139
- provider.connect().then(apply).catch(() => {
140
- clearStored();
141
- if (auto)
142
- doConnect();
143
- else
144
- setStatus("selecting");
145
- });
146
- return;
147
- }
148
- }
118
+ const { autoDetect: auto, connect: doConnect } = mountRef.current;
149
119
  if (auto) {
150
120
  doConnect();
151
121
  } else {
@@ -184,13 +154,13 @@ function useWallet() {
184
154
  return ctx;
185
155
  }
186
156
  // src/SigmaCallback.tsx
187
- import { completeSigmaOAuth, connectSigmaWallet as connectSigmaWallet2 } from "@1sat/connect";
157
+ import { completeSigmaOAuth, connectSigmaWallet } from "@1sat/connect";
188
158
  import { useEffect as useEffect2, useState as useState2 } from "react";
189
159
  import { jsx as jsx2, jsxs, Fragment } from "react/jsx-runtime";
190
160
  "use client";
191
- var STORAGE_KEY2 = "onesat_wallet_provider";
192
161
  function SigmaCallback({
193
162
  redirectTo = "/",
163
+ onComplete,
194
164
  loadingContent,
195
165
  renderError
196
166
  }) {
@@ -201,15 +171,12 @@ function SigmaCallback({
201
171
  async function completeSignIn() {
202
172
  const oauthResult = await completeSigmaOAuth(searchParams);
203
173
  setStatus("Connecting wallet...");
204
- const walletResult = await connectSigmaWallet2(oauthResult.bapId);
205
- localStorage.setItem(STORAGE_KEY2, JSON.stringify({
206
- providerType: "sigma",
207
- identityKey: walletResult.identityKey,
208
- bapId: oauthResult.bapId,
209
- user: oauthResult.user,
210
- accessToken: oauthResult.accessToken
211
- }));
212
- window.location.href = redirectTo;
174
+ await connectSigmaWallet(oauthResult.bapId);
175
+ if (onComplete) {
176
+ onComplete();
177
+ } else {
178
+ window.location.href = redirectTo;
179
+ }
213
180
  }
214
181
  completeSignIn().catch((err) => {
215
182
  console.error("Sigma sign-in error:", err);
@@ -548,6 +515,7 @@ function WalletSelector({ onClose, children }) {
548
515
  export {
549
516
  useWallet,
550
517
  useConnectDialog,
518
+ loadStoredProvider,
551
519
  WalletSelector,
552
520
  WalletProvider,
553
521
  SigmaCallback,
@@ -17,6 +17,7 @@ export interface WalletProviderProps {
17
17
  providers?: WalletProviderConfig[];
18
18
  children: ReactNode;
19
19
  }
20
+ export declare function loadStoredProvider(): string | null;
20
21
  export declare function WalletProvider({ autoDetect, providers, children, }: WalletProviderProps): import("react/jsx-runtime").JSX.Element;
21
22
  export declare function useWallet(): WalletContextValue;
22
23
  //# sourceMappingURL=wallet-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wallet-context.d.ts","sourceRoot":"","sources":["../src/wallet-context.tsx"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,iBAAiB,EAEtB,KAAK,oBAAoB,EAIzB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EACN,KAAK,SAAS,EAQd,MAAM,OAAO,CAAA;AAEd,MAAM,MAAM,YAAY,GACrB,cAAc,GACd,WAAW,GACX,WAAW,GACX,YAAY,GACZ,WAAW,CAAA;AAEd,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;IAC9B,MAAM,EAAE,YAAY,CAAA;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kBAAkB,EAAE,iBAAiB,EAAE,CAAA;IACvC,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CACnB;AAED,MAAM,WAAW,mBAAmB;IACnC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,oBAAoB,EAAE,CAAA;IAClC,QAAQ,EAAE,SAAS,CAAA;CACnB;AAyCD,wBAAgB,cAAc,CAAC,EAC9B,UAAiB,EACjB,SAAS,EACT,QAAQ,GACR,EAAE,mBAAmB,2CA6JrB;AAED,wBAAgB,SAAS,IAAI,kBAAkB,CAM9C"}
1
+ {"version":3,"file":"wallet-context.d.ts","sourceRoot":"","sources":["../src/wallet-context.tsx"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,iBAAiB,EAEtB,KAAK,oBAAoB,EAGzB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EACN,KAAK,SAAS,EAQd,MAAM,OAAO,CAAA;AAEd,MAAM,MAAM,YAAY,GACrB,cAAc,GACd,WAAW,GACX,WAAW,GACX,YAAY,GACZ,WAAW,CAAA;AAEd,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;IAC9B,MAAM,EAAE,YAAY,CAAA;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kBAAkB,EAAE,iBAAiB,EAAE,CAAA;IACvC,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CACnB;AAED,MAAM,WAAW,mBAAmB;IACnC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,oBAAoB,EAAE,CAAA;IAClC,QAAQ,EAAE,SAAS,CAAA;CACnB;AAID,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAUlD;AAcD,wBAAgB,cAAc,CAAC,EAC9B,UAAiB,EACjB,SAAS,EACT,QAAQ,GACR,EAAE,mBAAmB,2CAwHrB;AAED,wBAAgB,SAAS,IAAI,kBAAkB,CAM9C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1sat/react",
3
- "version": "0.0.26",
3
+ "version": "0.0.29",
4
4
  "description": "React hooks and components for 1Sat wallet integration",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",