@1sat/react 0.0.28 → 0.0.30

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,2CAgGpB"}
1
+ {"version":3,"file":"SigmaCallback.d.ts","sourceRoot":"","sources":["../src/SigmaCallback.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAuB,MAAM,OAAO,CAAA;AAG3D,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,2CAsGpB"}
package/dist/index.js CHANGED
@@ -129,6 +129,7 @@ function WalletProvider({
129
129
  providerType,
130
130
  availableProviders,
131
131
  connect,
132
+ applyResult,
132
133
  disconnect,
133
134
  error
134
135
  }), [
@@ -138,6 +139,7 @@ function WalletProvider({
138
139
  providerType,
139
140
  availableProviders,
140
141
  connect,
142
+ applyResult,
141
143
  disconnect,
142
144
  error
143
145
  ]);
@@ -160,9 +162,11 @@ import { jsx as jsx2, jsxs, Fragment } from "react/jsx-runtime";
160
162
  "use client";
161
163
  function SigmaCallback({
162
164
  redirectTo = "/",
165
+ onComplete,
163
166
  loadingContent,
164
167
  renderError
165
168
  }) {
169
+ const { applyResult } = useWallet();
166
170
  const [error, setError] = useState2(null);
167
171
  const [status, setStatus] = useState2("Completing authentication...");
168
172
  useEffect2(() => {
@@ -170,15 +174,20 @@ function SigmaCallback({
170
174
  async function completeSignIn() {
171
175
  const oauthResult = await completeSigmaOAuth(searchParams);
172
176
  setStatus("Connecting wallet...");
173
- await connectSigmaWallet(oauthResult.bapId);
174
- window.location.href = redirectTo;
177
+ const walletResult = await connectSigmaWallet(oauthResult.bapId);
178
+ applyResult(walletResult);
179
+ if (onComplete) {
180
+ onComplete();
181
+ } else {
182
+ window.location.href = redirectTo;
183
+ }
175
184
  }
176
185
  completeSignIn().catch((err) => {
177
186
  console.error("Sigma sign-in error:", err);
178
187
  const msg = err instanceof Error ? err.message : typeof err === "object" && err !== null && ("message" in err) ? String(err.message) : "Authentication failed";
179
188
  setError(msg);
180
189
  });
181
- }, [redirectTo]);
190
+ }, [redirectTo, applyResult, onComplete]);
182
191
  if (error) {
183
192
  if (renderError) {
184
193
  return /* @__PURE__ */ jsx2(Fragment, {
@@ -1,4 +1,4 @@
1
- import { type AvailableProvider, type WalletProviderConfig } from '@1sat/connect';
1
+ import { type AvailableProvider, type ConnectWalletResult, type WalletProviderConfig } from '@1sat/connect';
2
2
  import type { WalletInterface } from '@bsv/sdk';
3
3
  import { type ReactNode } from 'react';
4
4
  export type WalletStatus = 'disconnected' | 'detecting' | 'selecting' | 'connecting' | 'connected';
@@ -9,6 +9,7 @@ export interface WalletContextValue {
9
9
  providerType: string | null;
10
10
  availableProviders: AvailableProvider[];
11
11
  connect: (providerType?: string) => Promise<void>;
12
+ applyResult: (result: ConnectWalletResult) => void;
12
13
  disconnect: () => void;
13
14
  error: Error | null;
14
15
  }
@@ -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,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"}
1
+ {"version":3,"file":"wallet-context.d.ts","sourceRoot":"","sources":["../src/wallet-context.tsx"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,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,WAAW,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAA;IAClD,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,2CA0HrB;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.28",
3
+ "version": "0.0.30",
4
4
  "description": "React hooks and components for 1Sat wallet integration",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",