@crossmint/client-sdk-react-base 0.2.16 → 0.3.0

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.
Files changed (49) hide show
  1. package/dist/chunk-22GIA4MK.js +1 -0
  2. package/dist/chunk-CK4JCQY6.cjs +1 -0
  3. package/dist/chunk-LPOXK2Q6.js +1 -0
  4. package/dist/chunk-MG2DXRQ2.js +1 -0
  5. package/dist/chunk-OBRTUDN5.cjs +1 -0
  6. package/dist/chunk-SGSAZKKE.cjs +1 -0
  7. package/dist/chunk-V4VF722W.js +1 -0
  8. package/dist/chunk-X36L4TYR.cjs +1 -0
  9. package/dist/hooks/index.cjs +1 -1
  10. package/dist/hooks/index.d.cts +4 -3
  11. package/dist/hooks/index.d.ts +4 -3
  12. package/dist/hooks/index.js +1 -1
  13. package/dist/hooks/useCrossmint.cjs +1 -1
  14. package/dist/hooks/useCrossmint.js +1 -1
  15. package/dist/hooks/useWallet.cjs +1 -1
  16. package/dist/hooks/useWallet.d.cts +5 -52
  17. package/dist/hooks/useWallet.d.ts +5 -52
  18. package/dist/hooks/useWallet.js +1 -1
  19. package/dist/hooks/useWalletState.cjs +1 -1
  20. package/dist/hooks/useWalletState.d.cts +12 -6
  21. package/dist/hooks/useWalletState.d.ts +12 -6
  22. package/dist/hooks/useWalletState.js +1 -1
  23. package/dist/index.cjs +1 -1
  24. package/dist/index.d.cts +6 -4
  25. package/dist/index.d.ts +6 -4
  26. package/dist/index.js +1 -1
  27. package/dist/providers/CrossmintWalletProvider.cjs +1 -1
  28. package/dist/providers/CrossmintWalletProvider.d.cts +22 -27
  29. package/dist/providers/CrossmintWalletProvider.d.ts +22 -27
  30. package/dist/providers/CrossmintWalletProvider.js +1 -1
  31. package/dist/providers/index.cjs +1 -1
  32. package/dist/providers/index.d.cts +3 -2
  33. package/dist/providers/index.d.ts +3 -2
  34. package/dist/providers/index.js +1 -1
  35. package/dist/types/index.cjs +1 -1
  36. package/dist/types/index.d.cts +3 -2
  37. package/dist/types/index.d.ts +3 -2
  38. package/dist/types/index.js +1 -1
  39. package/dist/types/wallet.cjs +1 -1
  40. package/dist/types/wallet.d.cts +11 -29
  41. package/dist/types/wallet.d.ts +11 -29
  42. package/dist/types/wallet.js +1 -1
  43. package/package.json +6 -4
  44. package/dist/chunk-6VQECK5Z.js +0 -1
  45. package/dist/chunk-JKIRM6OZ.js +0 -0
  46. package/dist/chunk-KAO7ANYQ.cjs +0 -1
  47. package/dist/chunk-OB7SFNJC.cjs +0 -1
  48. package/dist/chunk-PBWA4C3C.cjs +0 -1
  49. package/dist/chunk-SX2INVZW.js +0 -1
@@ -0,0 +1 @@
1
+ var m=Object.defineProperty,n=Object.defineProperties;var o=Object.getOwnPropertyDescriptors;var h=Object.getOwnPropertySymbols;var p=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable;var i=(c,b,a)=>b in c?m(c,b,{enumerable:!0,configurable:!0,writable:!0,value:a}):c[b]=a,r=(c,b)=>{for(var a in b||(b={}))p.call(b,a)&&i(c,a,b[a]);if(h)for(var a of h(b))q.call(b,a)&&i(c,a,b[a]);return c},s=(c,b)=>n(c,o(b));var t=(c,b,a)=>new Promise((j,g)=>{var k=d=>{try{e(a.next(d))}catch(f){g(f)}},l=d=>{try{e(a.throw(d))}catch(f){g(f)}},e=d=>d.done?j(d.value):Promise.resolve(d.value).then(k,l);e((a=a.apply(c,b)).next())});export{r as a,s as b,t as c};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var m=Object.defineProperty,n=Object.defineProperties;var o=Object.getOwnPropertyDescriptors;var h=Object.getOwnPropertySymbols;var p=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable;var i=(c,b,a)=>b in c?m(c,b,{enumerable:!0,configurable:!0,writable:!0,value:a}):c[b]=a,r= exports.a =(c,b)=>{for(var a in b||(b={}))p.call(b,a)&&i(c,a,b[a]);if(h)for(var a of h(b))q.call(b,a)&&i(c,a,b[a]);return c},s= exports.b =(c,b)=>n(c,o(b));var t=(c,b,a)=>new Promise((j,g)=>{var k=d=>{try{e(a.next(d))}catch(f){g(f)}},l=d=>{try{e(a.throw(d))}catch(f){g(f)}},e=d=>d.done?j(d.value):Promise.resolve(d.value).then(k,l);e((a=a.apply(c,b)).next())});exports.a = r; exports.b = s; exports.c = t;
@@ -0,0 +1 @@
1
+ import{EVMWallet as i,SolanaWallet as t}from"@crossmint/wallets-sdk";export{i as a,t as b};
@@ -0,0 +1 @@
1
+ import{b}from"./chunk-V4VF722W.js";import{a as O,b as P,c as y}from"./chunk-22GIA4MK.js";import{createContext as L,useMemo as R}from"react";import{CrossmintWallets as M}from"@crossmint/wallets-sdk";import{useState as A,useCallback as x,useRef as W,useEffect as D}from"react";var l=t=>()=>{throw new Error(`${t} is not available. Make sure you're using an email signer wallet.`)};function k({crossmintWallets:t,crossmintJwt:i,getHandshakeParent:e}){let[n,r]=A({status:"not-loaded"}),u=W(n.status);D(()=>{u.current=n.status},[n.status]);let[m,d]=A(!1),s=W(l("sendEmailWithOtp")),o=W(l("verifyOtp")),a=W(l("reject")),c=x(()=>{d(!1),s.current=l("sendEmailWithOtp"),o.current=l("verifyOtp"),a.current=l("reject")},[]),v=x(h=>y(this,null,function*(){var w;if(u.current==="in-progress")return{startedCreation:!1,reason:"Wallet is already loading."};if(i==null)return{startedCreation:!1,reason:'Jwt not set in "CrossmintProvider".'};try{if(r({status:"in-progress"}),((w=h.signer)==null?void 0:w.type)==="email"){let E=h.signer;E.onAuthRequired=(j,I,V,N)=>y(this,null,function*(){d(j),s.current=I,o.current=V,a.current=N}),E._handshakeParent=e==null?void 0:e()}else c();let f=yield t.getOrCreateWallet(h);r({status:"loaded",wallet:f})}catch(f){console.error("There was an error creating a wallet ",f),r(F(f))}return{startedCreation:!0}}),[i,t,e]),p=x(()=>{r({status:"not-loaded"}),c()},[]);return{state:n,setState:r,getOrCreateWallet:v,clearWallet:p,needsAuth:m,sendEmailWithOtp:s.current,verifyOtp:o.current,reject:a.current}}import{useContext as J}from"react";function G(){let t=J(S);if(!t)throw new Error("useWallet must be used within CrossmintAuthProvider or CrossmintWalletProvider");return t}import{jsx as q}from"react/jsx-runtime";var S=L({status:"not-loaded",setState:()=>{},getOrCreateWallet:()=>Promise.resolve({startedCreation:!1}),clearWallet:()=>null,needsAuth:!1,sendEmailWithOtp:null,verifyOtp:null,reject:null});function F(t){return{status:"error",error:t instanceof Error?t.message:String(t)}}function at({children:t,getHandshakeParent:i}){var p;let{crossmint:e}=b("CrossmintWalletProvider must be used within CrossmintProvider"),n=R(()=>M.from(e),[e]),{state:r,setState:u,getOrCreateWallet:m,clearWallet:d,needsAuth:s,sendEmailWithOtp:o,verifyOtp:a,reject:c}=k({crossmintWallets:n,crossmintJwt:(p=e.jwt)!=null?p:null,getHandshakeParent:i}),v=R(()=>P(O({},r),{setState:u,getOrCreateWallet:m,clearWallet:d,needsAuth:s,sendEmailWithOtp:o,verifyOtp:a,reject:c}),[r,u,m,d,s,o,a,c]);return q(S.Provider,{value:v,children:t})}export{l as a,k as b,S as c,F as d,at as e,G as f};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkX36L4TYRcjs = require('./chunk-X36L4TYR.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var _react = require('react');var _walletssdk = require('@crossmint/wallets-sdk');var l=t=>()=>{throw new Error(`${t} is not available. Make sure you're using an email signer wallet.`)};function A({crossmintWallets:t,crossmintJwt:i,getHandshakeParent:e}){let[n,r]=_react.useState.call(void 0, {status:"not-loaded"}),u=_react.useRef.call(void 0, n.status);_react.useEffect.call(void 0, ()=>{u.current=n.status},[n.status]);let[m,d]=_react.useState.call(void 0, !1),s=_react.useRef.call(void 0, l("sendEmailWithOtp")),o=_react.useRef.call(void 0, l("verifyOtp")),a=_react.useRef.call(void 0, l("reject")),c=_react.useCallback.call(void 0, ()=>{d(!1),s.current=l("sendEmailWithOtp"),o.current=l("verifyOtp"),a.current=l("reject")},[]),g=_react.useCallback.call(void 0, v=>_chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var S;if(u.current==="in-progress")return{startedCreation:!1,reason:"Wallet is already loading."};if(i==null)return{startedCreation:!1,reason:'Jwt not set in "CrossmintProvider".'};try{if(r({status:"in-progress"}),((S=v.signer)==null?void 0:S.type)==="email"){let w=v.signer;w.onAuthRequired=(R,j,I,V)=>_chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){d(R),s.current=j,o.current=I,a.current=V}),w._handshakeParent=e==null?void 0:e()}else c();let f=yield t.getOrCreateWallet(v);r({status:"loaded",wallet:f})}catch(f){console.error("There was an error creating a wallet ",f),r(k(f))}return{startedCreation:!0}}),[i,t,e]),p=_react.useCallback.call(void 0, ()=>{r({status:"not-loaded"}),c()},[]);return{state:n,setState:r,getOrCreateWallet:g,clearWallet:p,needsAuth:m,sendEmailWithOtp:s.current,verifyOtp:o.current,reject:a.current}}function B(){let t=_react.useContext.call(void 0, x);if(!t)throw new Error("useWallet must be used within CrossmintAuthProvider or CrossmintWalletProvider");return t}var _jsxruntime = require('react/jsx-runtime');var x=_react.createContext.call(void 0, {status:"not-loaded",setState:()=>{},getOrCreateWallet:()=>Promise.resolve({startedCreation:!1}),clearWallet:()=>null,needsAuth:!1,sendEmailWithOtp:null,verifyOtp:null,reject:null});function k(t){return{status:"error",error:t instanceof Error?t.message:String(t)}}function ot({children:t,getHandshakeParent:i}){var p;let{crossmint:e}=_chunkX36L4TYRcjs.b.call(void 0, "CrossmintWalletProvider must be used within CrossmintProvider"),n=_react.useMemo.call(void 0, ()=>_walletssdk.CrossmintWallets.from(e),[e]),{state:r,setState:u,getOrCreateWallet:m,clearWallet:d,needsAuth:s,sendEmailWithOtp:o,verifyOtp:a,reject:c}=A({crossmintWallets:n,crossmintJwt:(p=e.jwt)!=null?p:null,getHandshakeParent:i}),g=_react.useMemo.call(void 0, ()=>_chunkCK4JCQY6cjs.b.call(void 0, _chunkCK4JCQY6cjs.a.call(void 0, {},r),{setState:u,getOrCreateWallet:m,clearWallet:d,needsAuth:s,sendEmailWithOtp:o,verifyOtp:a,reject:c}),[r,u,m,d,s,o,a,c]);return _jsxruntime.jsx.call(void 0, x.Provider,{value:g,children:t})}exports.a = l; exports.b = A; exports.c = x; exports.d = k; exports.e = ot; exports.f = B;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _walletssdk = require('@crossmint/wallets-sdk');exports.a = _walletssdk.EVMWallet; exports.b = _walletssdk.SolanaWallet;
@@ -0,0 +1 @@
1
+ import{createContext as w,useCallback as v,useContext as x,useMemo as p,useRef as P,useState as R}from"react";import{createCrossmint as a}from"@crossmint/common-sdk-base";import{jsx as h}from"react/jsx-runtime";var u=w(null);function N({children:t,apiKey:e,appId:c,overrideBaseUrl:m}){let[C,d]=R(0),n=P(new Proxy(a({apiKey:e,overrideBaseUrl:m,appId:c}),{set(r,s,i){return s==="jwt"&&r.jwt!==i&&d(l=>l+1),Reflect.set(r,s,i)}})),o=v(r=>{r!==n.current.jwt&&(n.current.jwt=r)},[]),f=p(()=>({get crossmint(){return n.current},setJwt:o}),[o,C]);return h(u.Provider,{value:f,children:t})}function k(t){let e=x(u);if(e==null)throw new Error(t!=null?t:"useCrossmint must be used within a CrossmintProvider");return e}export{N as a,k as b};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _react = require('react');var _commonsdkbase = require('@crossmint/common-sdk-base');var _jsxruntime = require('react/jsx-runtime');var u=_react.createContext.call(void 0, null);function J({children:t,apiKey:e,appId:c,overrideBaseUrl:m}){let[C,d]=_react.useState.call(void 0, 0),n=_react.useRef.call(void 0, new Proxy(_commonsdkbase.createCrossmint.call(void 0, {apiKey:e,overrideBaseUrl:m,appId:c}),{set(r,s,i){return s==="jwt"&&r.jwt!==i&&d(l=>l+1),Reflect.set(r,s,i)}})),o=_react.useCallback.call(void 0, r=>{r!==n.current.jwt&&(n.current.jwt=r)},[]),f=_react.useMemo.call(void 0, ()=>({get crossmint(){return n.current},setJwt:o}),[o,C]);return _jsxruntime.jsx.call(void 0, u.Provider,{value:f,children:t})}function N(t){let e=_react.useContext.call(void 0, u);if(e==null)throw new Error(t!=null?t:"useCrossmint must be used within a CrossmintProvider");return e}exports.a = J; exports.b = N;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOB7SFNJCcjs = require('../chunk-OB7SFNJC.cjs');var _chunkPBWA4C3Ccjs = require('../chunk-PBWA4C3C.cjs');exports.CrossmintProvider = _chunkPBWA4C3Ccjs.d; exports.useCrossmint = _chunkPBWA4C3Ccjs.e; exports.useWallet = _chunkOB7SFNJCcjs.e; exports.useWalletState = _chunkOB7SFNJCcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOBRTUDN5cjs = require('../chunk-OBRTUDN5.cjs');var _chunkX36L4TYRcjs = require('../chunk-X36L4TYR.cjs');require('../chunk-CK4JCQY6.cjs');exports.CrossmintProvider = _chunkX36L4TYRcjs.a; exports.throwNotAvailable = _chunkOBRTUDN5cjs.a; exports.useCrossmint = _chunkX36L4TYRcjs.b; exports.useWallet = _chunkOBRTUDN5cjs.f; exports.useWalletState = _chunkOBRTUDN5cjs.b;
@@ -1,9 +1,10 @@
1
1
  export { CrossmintContext, CrossmintProvider, useCrossmint } from './useCrossmint.cjs';
2
2
  export { useWallet } from './useWallet.cjs';
3
- export { useWalletState } from './useWalletState.cjs';
4
- import '../providers/CrossmintWalletProvider.cjs';
5
- import '../types/wallet.cjs';
3
+ export { throwNotAvailable, useWalletState } from './useWalletState.cjs';
6
4
  import 'react/jsx-runtime';
7
5
  import 'react';
8
6
  import '@crossmint/common-sdk-base';
9
7
  import '@crossmint/wallets-sdk';
8
+ import '../providers/CrossmintWalletProvider.cjs';
9
+ import '@crossmint/client-sdk-window';
10
+ import '@crossmint/client-signers';
@@ -1,9 +1,10 @@
1
1
  export { CrossmintContext, CrossmintProvider, useCrossmint } from './useCrossmint.js';
2
2
  export { useWallet } from './useWallet.js';
3
- export { useWalletState } from './useWalletState.js';
4
- import '../providers/CrossmintWalletProvider.js';
5
- import '../types/wallet.js';
3
+ export { throwNotAvailable, useWalletState } from './useWalletState.js';
6
4
  import 'react/jsx-runtime';
7
5
  import 'react';
8
6
  import '@crossmint/common-sdk-base';
9
7
  import '@crossmint/wallets-sdk';
8
+ import '../providers/CrossmintWalletProvider.js';
9
+ import '@crossmint/client-sdk-window';
10
+ import '@crossmint/client-signers';
@@ -1 +1 @@
1
- import{a as c,e as d}from"../chunk-SX2INVZW.js";import{d as a,e as b}from"../chunk-6VQECK5Z.js";export{a as CrossmintProvider,b as useCrossmint,d as useWallet,c as useWalletState};
1
+ import{a as c,b as d,f as e}from"../chunk-MG2DXRQ2.js";import{a,b}from"../chunk-V4VF722W.js";import"../chunk-22GIA4MK.js";export{a as CrossmintProvider,c as throwNotAvailable,b as useCrossmint,e as useWallet,d as useWalletState};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkPBWA4C3Ccjs = require('../chunk-PBWA4C3C.cjs');exports.CrossmintProvider = _chunkPBWA4C3Ccjs.d; exports.useCrossmint = _chunkPBWA4C3Ccjs.e;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkX36L4TYRcjs = require('../chunk-X36L4TYR.cjs');require('../chunk-CK4JCQY6.cjs');exports.CrossmintProvider = _chunkX36L4TYRcjs.a; exports.useCrossmint = _chunkX36L4TYRcjs.b;
@@ -1 +1 @@
1
- import{d as a,e as b}from"../chunk-6VQECK5Z.js";export{a as CrossmintProvider,b as useCrossmint};
1
+ import{a,b}from"../chunk-V4VF722W.js";import"../chunk-22GIA4MK.js";export{a as CrossmintProvider,b as useCrossmint};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOB7SFNJCcjs = require('../chunk-OB7SFNJC.cjs');require('../chunk-PBWA4C3C.cjs');exports.useWallet = _chunkOB7SFNJCcjs.e;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOBRTUDN5cjs = require('../chunk-OBRTUDN5.cjs');require('../chunk-X36L4TYR.cjs');require('../chunk-CK4JCQY6.cjs');exports.useWallet = _chunkOBRTUDN5cjs.f;
@@ -1,57 +1,10 @@
1
1
  import * as _crossmint_wallets_sdk from '@crossmint/wallets-sdk';
2
- import * as react from 'react';
3
- import { ValidWalletState } from '../providers/CrossmintWalletProvider.cjs';
4
- import { GetOrCreateWalletProps } from '../types/wallet.cjs';
2
+ import { WalletContext } from '../providers/CrossmintWalletProvider.cjs';
5
3
  import 'react/jsx-runtime';
4
+ import 'react';
5
+ import '@crossmint/client-sdk-window';
6
+ import '@crossmint/client-signers';
6
7
 
7
- declare function useWallet(): ({
8
- status: "not-loaded" | "in-progress";
9
- wallet?: undefined;
10
- type?: undefined;
11
- error?: undefined;
12
- } & {
13
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
14
- startedCreation: boolean;
15
- reason?: string;
16
- }>;
17
- setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
18
- clearWallet: () => void;
19
- }) | ({
20
- status: "loading-error";
21
- wallet?: undefined;
22
- type?: undefined;
23
- error: string;
24
- } & {
25
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
26
- startedCreation: boolean;
27
- reason?: string;
28
- }>;
29
- setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
30
- clearWallet: () => void;
31
- }) | ({
32
- status: "loaded";
33
- wallet: _crossmint_wallets_sdk.EVMSmartWallet;
34
- type: "evm-smart-wallet";
35
- error?: undefined;
36
- } & {
37
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
38
- startedCreation: boolean;
39
- reason?: string;
40
- }>;
41
- setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
42
- clearWallet: () => void;
43
- }) | ({
44
- status: "loaded";
45
- wallet: _crossmint_wallets_sdk.SolanaSmartWallet;
46
- type: "solana-smart-wallet";
47
- error?: undefined;
48
- } & {
49
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
50
- startedCreation: boolean;
51
- reason?: string;
52
- }>;
53
- setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
54
- clearWallet: () => void;
55
- });
8
+ declare function useWallet(): WalletContext<_crossmint_wallets_sdk.Chain>;
56
9
 
57
10
  export { useWallet };
@@ -1,57 +1,10 @@
1
1
  import * as _crossmint_wallets_sdk from '@crossmint/wallets-sdk';
2
- import * as react from 'react';
3
- import { ValidWalletState } from '../providers/CrossmintWalletProvider.js';
4
- import { GetOrCreateWalletProps } from '../types/wallet.js';
2
+ import { WalletContext } from '../providers/CrossmintWalletProvider.js';
5
3
  import 'react/jsx-runtime';
4
+ import 'react';
5
+ import '@crossmint/client-sdk-window';
6
+ import '@crossmint/client-signers';
6
7
 
7
- declare function useWallet(): ({
8
- status: "not-loaded" | "in-progress";
9
- wallet?: undefined;
10
- type?: undefined;
11
- error?: undefined;
12
- } & {
13
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
14
- startedCreation: boolean;
15
- reason?: string;
16
- }>;
17
- setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
18
- clearWallet: () => void;
19
- }) | ({
20
- status: "loading-error";
21
- wallet?: undefined;
22
- type?: undefined;
23
- error: string;
24
- } & {
25
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
26
- startedCreation: boolean;
27
- reason?: string;
28
- }>;
29
- setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
30
- clearWallet: () => void;
31
- }) | ({
32
- status: "loaded";
33
- wallet: _crossmint_wallets_sdk.EVMSmartWallet;
34
- type: "evm-smart-wallet";
35
- error?: undefined;
36
- } & {
37
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
38
- startedCreation: boolean;
39
- reason?: string;
40
- }>;
41
- setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
42
- clearWallet: () => void;
43
- }) | ({
44
- status: "loaded";
45
- wallet: _crossmint_wallets_sdk.SolanaSmartWallet;
46
- type: "solana-smart-wallet";
47
- error?: undefined;
48
- } & {
49
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
50
- startedCreation: boolean;
51
- reason?: string;
52
- }>;
53
- setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
54
- clearWallet: () => void;
55
- });
8
+ declare function useWallet(): WalletContext<_crossmint_wallets_sdk.Chain>;
56
9
 
57
10
  export { useWallet };
@@ -1 +1 @@
1
- import{e as a}from"../chunk-SX2INVZW.js";import"../chunk-6VQECK5Z.js";export{a as useWallet};
1
+ import{f as a}from"../chunk-MG2DXRQ2.js";import"../chunk-V4VF722W.js";import"../chunk-22GIA4MK.js";export{a as useWallet};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOB7SFNJCcjs = require('../chunk-OB7SFNJC.cjs');require('../chunk-PBWA4C3C.cjs');exports.useWalletState = _chunkOB7SFNJCcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOBRTUDN5cjs = require('../chunk-OBRTUDN5.cjs');require('../chunk-X36L4TYR.cjs');require('../chunk-CK4JCQY6.cjs');exports.throwNotAvailable = _chunkOBRTUDN5cjs.a; exports.useWalletState = _chunkOBRTUDN5cjs.b;
@@ -1,17 +1,19 @@
1
1
  import * as react from 'react';
2
- import { CrossmintWallets, Callbacks } from '@crossmint/wallets-sdk';
2
+ import { CrossmintWallets, Chain, WalletArgsFor } from '@crossmint/wallets-sdk';
3
+ import { HandshakeParent } from '@crossmint/client-sdk-window';
4
+ import { signerOutboundEvents, signerInboundEvents } from '@crossmint/client-signers';
3
5
  import { ValidWalletState } from '../providers/CrossmintWalletProvider.cjs';
4
- import { GetOrCreateWalletProps } from '../types/wallet.cjs';
5
6
  import 'react/jsx-runtime';
6
7
 
7
- declare function useWalletState({ crossmintWallets, crossmintJwt, callbacks, }: {
8
+ declare const throwNotAvailable: (functionName: string) => () => never;
9
+ declare function useWalletState({ crossmintWallets, crossmintJwt, getHandshakeParent, }: {
8
10
  crossmintWallets: CrossmintWallets;
9
11
  crossmintJwt: string | null;
10
- callbacks?: Callbacks;
12
+ getHandshakeParent?: () => HandshakeParent<typeof signerOutboundEvents, typeof signerInboundEvents>;
11
13
  }): {
12
14
  state: ValidWalletState;
13
15
  setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
14
- getOrCreateWallet: (props: GetOrCreateWalletProps) => Promise<{
16
+ getOrCreateWallet: <C extends Chain>(props: WalletArgsFor<C>) => Promise<{
15
17
  startedCreation: boolean;
16
18
  reason: string;
17
19
  } | {
@@ -19,6 +21,10 @@ declare function useWalletState({ crossmintWallets, crossmintJwt, callbacks, }:
19
21
  reason?: undefined;
20
22
  }>;
21
23
  clearWallet: () => void;
24
+ needsAuth: boolean;
25
+ sendEmailWithOtp: (email: string) => Promise<void>;
26
+ verifyOtp: (otp: string) => Promise<void>;
27
+ reject: (error: Error) => void;
22
28
  };
23
29
 
24
- export { useWalletState };
30
+ export { throwNotAvailable, useWalletState };
@@ -1,17 +1,19 @@
1
1
  import * as react from 'react';
2
- import { CrossmintWallets, Callbacks } from '@crossmint/wallets-sdk';
2
+ import { CrossmintWallets, Chain, WalletArgsFor } from '@crossmint/wallets-sdk';
3
+ import { HandshakeParent } from '@crossmint/client-sdk-window';
4
+ import { signerOutboundEvents, signerInboundEvents } from '@crossmint/client-signers';
3
5
  import { ValidWalletState } from '../providers/CrossmintWalletProvider.js';
4
- import { GetOrCreateWalletProps } from '../types/wallet.js';
5
6
  import 'react/jsx-runtime';
6
7
 
7
- declare function useWalletState({ crossmintWallets, crossmintJwt, callbacks, }: {
8
+ declare const throwNotAvailable: (functionName: string) => () => never;
9
+ declare function useWalletState({ crossmintWallets, crossmintJwt, getHandshakeParent, }: {
8
10
  crossmintWallets: CrossmintWallets;
9
11
  crossmintJwt: string | null;
10
- callbacks?: Callbacks;
12
+ getHandshakeParent?: () => HandshakeParent<typeof signerOutboundEvents, typeof signerInboundEvents>;
11
13
  }): {
12
14
  state: ValidWalletState;
13
15
  setState: react.Dispatch<react.SetStateAction<ValidWalletState>>;
14
- getOrCreateWallet: (props: GetOrCreateWalletProps) => Promise<{
16
+ getOrCreateWallet: <C extends Chain>(props: WalletArgsFor<C>) => Promise<{
15
17
  startedCreation: boolean;
16
18
  reason: string;
17
19
  } | {
@@ -19,6 +21,10 @@ declare function useWalletState({ crossmintWallets, crossmintJwt, callbacks, }:
19
21
  reason?: undefined;
20
22
  }>;
21
23
  clearWallet: () => void;
24
+ needsAuth: boolean;
25
+ sendEmailWithOtp: (email: string) => Promise<void>;
26
+ verifyOtp: (otp: string) => Promise<void>;
27
+ reject: (error: Error) => void;
22
28
  };
23
29
 
24
- export { useWalletState };
30
+ export { throwNotAvailable, useWalletState };
@@ -1 +1 @@
1
- import{a}from"../chunk-SX2INVZW.js";import"../chunk-6VQECK5Z.js";export{a as useWalletState};
1
+ import{a,b}from"../chunk-MG2DXRQ2.js";import"../chunk-V4VF722W.js";import"../chunk-22GIA4MK.js";export{a as throwNotAvailable,b as useWalletState};
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOB7SFNJCcjs = require('./chunk-OB7SFNJC.cjs');var _chunkPBWA4C3Ccjs = require('./chunk-PBWA4C3C.cjs');require('./chunk-YSXSE5ZY.cjs');require('./chunk-KAO7ANYQ.cjs');exports.CrossmintProvider = _chunkPBWA4C3Ccjs.d; exports.CrossmintWalletProvider = _chunkOB7SFNJCcjs.d; exports.WalletContext = _chunkOB7SFNJCcjs.b; exports.deriveErrorState = _chunkOB7SFNJCcjs.c; exports.useCrossmint = _chunkPBWA4C3Ccjs.e; exports.useWallet = _chunkOB7SFNJCcjs.e; exports.useWalletState = _chunkOB7SFNJCcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOBRTUDN5cjs = require('./chunk-OBRTUDN5.cjs');var _chunkX36L4TYRcjs = require('./chunk-X36L4TYR.cjs');require('./chunk-YSXSE5ZY.cjs');var _chunkSGSAZKKEcjs = require('./chunk-SGSAZKKE.cjs');require('./chunk-CK4JCQY6.cjs');exports.CrossmintProvider = _chunkX36L4TYRcjs.a; exports.CrossmintWalletProvider = _chunkOBRTUDN5cjs.e; exports.EVMWallet = _chunkSGSAZKKEcjs.a; exports.SolanaWallet = _chunkSGSAZKKEcjs.b; exports.WalletContext = _chunkOBRTUDN5cjs.c; exports.deriveErrorState = _chunkOBRTUDN5cjs.d; exports.throwNotAvailable = _chunkOBRTUDN5cjs.a; exports.useCrossmint = _chunkX36L4TYRcjs.b; exports.useWallet = _chunkOBRTUDN5cjs.f; exports.useWalletState = _chunkOBRTUDN5cjs.b;
package/dist/index.d.cts CHANGED
@@ -1,9 +1,11 @@
1
1
  export { CrossmintContext, CrossmintProvider, useCrossmint } from './hooks/useCrossmint.cjs';
2
2
  export { useWallet } from './hooks/useWallet.cjs';
3
- export { useWalletState } from './hooks/useWalletState.cjs';
4
- export { CrossmintWalletProvider, ValidWalletState, WalletContext, deriveErrorState } from './providers/CrossmintWalletProvider.cjs';
5
- export { CrossmintAuthEmbeddedWallets, GetOrCreateWalletProps } from './types/wallet.cjs';
3
+ export { throwNotAvailable, useWalletState } from './hooks/useWalletState.cjs';
4
+ export { CrossmintWalletProvider, CrossmintWalletProviderProps, ValidWalletState, WalletContext, deriveErrorState } from './providers/CrossmintWalletProvider.cjs';
5
+ export { BaseCrossmintWalletProviderProps, CreateOnLogin } from './types/wallet.cjs';
6
+ export { Balances, Chain, EVMWallet, EvmExternalWalletSignerConfig, Permission, SolanaExternalWalletSignerConfig, SolanaWallet, Wallet } from '@crossmint/wallets-sdk';
6
7
  import 'react/jsx-runtime';
7
8
  import 'react';
8
9
  import '@crossmint/common-sdk-base';
9
- import '@crossmint/wallets-sdk';
10
+ import '@crossmint/client-sdk-window';
11
+ import '@crossmint/client-signers';
package/dist/index.d.ts CHANGED
@@ -1,9 +1,11 @@
1
1
  export { CrossmintContext, CrossmintProvider, useCrossmint } from './hooks/useCrossmint.js';
2
2
  export { useWallet } from './hooks/useWallet.js';
3
- export { useWalletState } from './hooks/useWalletState.js';
4
- export { CrossmintWalletProvider, ValidWalletState, WalletContext, deriveErrorState } from './providers/CrossmintWalletProvider.js';
5
- export { CrossmintAuthEmbeddedWallets, GetOrCreateWalletProps } from './types/wallet.js';
3
+ export { throwNotAvailable, useWalletState } from './hooks/useWalletState.js';
4
+ export { CrossmintWalletProvider, CrossmintWalletProviderProps, ValidWalletState, WalletContext, deriveErrorState } from './providers/CrossmintWalletProvider.js';
5
+ export { BaseCrossmintWalletProviderProps, CreateOnLogin } from './types/wallet.js';
6
+ export { Balances, Chain, EVMWallet, EvmExternalWalletSignerConfig, Permission, SolanaExternalWalletSignerConfig, SolanaWallet, Wallet } from '@crossmint/wallets-sdk';
6
7
  import 'react/jsx-runtime';
7
8
  import 'react';
8
9
  import '@crossmint/common-sdk-base';
9
- import '@crossmint/wallets-sdk';
10
+ import '@crossmint/client-sdk-window';
11
+ import '@crossmint/client-signers';
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{a as e,b as f,c as m,d as p,e as t}from"./chunk-SX2INVZW.js";import{d as o,e as r}from"./chunk-6VQECK5Z.js";import"./chunk-B35TULQO.js";import"./chunk-JKIRM6OZ.js";export{o as CrossmintProvider,p as CrossmintWalletProvider,f as WalletContext,m as deriveErrorState,r as useCrossmint,t as useWallet,e as useWalletState};
1
+ import{a as e,b as f,c as m,d as p,e as t,f as x}from"./chunk-MG2DXRQ2.js";import{a as o,b as r}from"./chunk-V4VF722W.js";import"./chunk-B35TULQO.js";import{a,b}from"./chunk-LPOXK2Q6.js";import"./chunk-22GIA4MK.js";export{o as CrossmintProvider,t as CrossmintWalletProvider,a as EVMWallet,b as SolanaWallet,m as WalletContext,p as deriveErrorState,e as throwNotAvailable,r as useCrossmint,x as useWallet,f as useWalletState};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOB7SFNJCcjs = require('../chunk-OB7SFNJC.cjs');require('../chunk-PBWA4C3C.cjs');exports.CrossmintWalletProvider = _chunkOB7SFNJCcjs.d; exports.WalletContext = _chunkOB7SFNJCcjs.b; exports.deriveErrorState = _chunkOB7SFNJCcjs.c;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOBRTUDN5cjs = require('../chunk-OBRTUDN5.cjs');require('../chunk-X36L4TYR.cjs');require('../chunk-CK4JCQY6.cjs');exports.CrossmintWalletProvider = _chunkOBRTUDN5cjs.e; exports.WalletContext = _chunkOBRTUDN5cjs.c; exports.deriveErrorState = _chunkOBRTUDN5cjs.d;
@@ -1,59 +1,54 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react from 'react';
3
3
  import { Dispatch, SetStateAction, ReactNode } from 'react';
4
- import { EVMSmartWallet, SolanaSmartWallet } from '@crossmint/wallets-sdk';
5
- import { GetOrCreateWalletProps } from '../types/wallet.cjs';
4
+ import { Chain, WalletArgsFor, Wallet } from '@crossmint/wallets-sdk';
5
+ import { HandshakeParent } from '@crossmint/client-sdk-window';
6
+ import { signerOutboundEvents, signerInboundEvents } from '@crossmint/client-signers';
6
7
 
7
8
  type ValidWalletState = {
8
9
  status: "not-loaded" | "in-progress";
9
10
  } | {
10
11
  status: "loaded";
11
- wallet: EVMSmartWallet;
12
- type: "evm-smart-wallet";
12
+ wallet: Wallet<Chain>;
13
13
  } | {
14
- status: "loaded";
15
- wallet: SolanaSmartWallet;
16
- type: "solana-smart-wallet";
17
- } | {
18
- status: "loading-error";
14
+ status: "error";
19
15
  error: string;
20
16
  };
21
17
  type WalletContextFunctions = {
22
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
18
+ getOrCreateWallet: <C extends Chain>(props: WalletArgsFor<C>) => Promise<{
23
19
  startedCreation: boolean;
24
20
  reason?: string;
25
21
  }>;
26
22
  setState: Dispatch<SetStateAction<ValidWalletState>>;
27
23
  clearWallet: () => void;
24
+ needsAuth: boolean;
25
+ sendEmailWithOtp: ((email: string) => Promise<void>) | null;
26
+ verifyOtp: ((otp: string) => Promise<void>) | null;
27
+ reject: ((error: Error) => void) | null;
28
28
  };
29
- type WalletType = {
30
- "evm-smart-wallet": EVMSmartWallet;
31
- "solana-smart-wallet": SolanaSmartWallet;
32
- };
33
- type LoadedWalletState<T extends keyof WalletType> = {
29
+ type LoadedWalletState<C extends Chain> = {
34
30
  status: "loaded";
35
- wallet: WalletType[T];
36
- type: T;
31
+ wallet: Wallet<C>;
37
32
  error?: undefined;
38
33
  };
39
- type WalletContext = ({
34
+ type WalletContext<C extends Chain = Chain> = ({
40
35
  status: "not-loaded" | "in-progress";
41
36
  wallet?: undefined;
42
- type?: undefined;
43
37
  error?: undefined;
44
38
  } & WalletContextFunctions) | ({
45
- status: "loading-error";
39
+ status: "error";
46
40
  wallet?: undefined;
47
- type?: undefined;
48
41
  error: string;
49
- } & WalletContextFunctions) | (LoadedWalletState<"evm-smart-wallet"> & WalletContextFunctions) | (LoadedWalletState<"solana-smart-wallet"> & WalletContextFunctions);
50
- declare const WalletContext: react.Context<WalletContext>;
42
+ } & WalletContextFunctions) | (LoadedWalletState<C> & WalletContextFunctions);
43
+ declare const WalletContext: react.Context<WalletContext<Chain>>;
51
44
  declare function deriveErrorState(error: unknown): {
52
- status: "loading-error";
45
+ status: "error";
53
46
  error: string;
54
47
  };
55
- declare function CrossmintWalletProvider({ children, }: {
48
+ interface CrossmintWalletProviderProps {
56
49
  children: ReactNode;
57
- }): react_jsx_runtime.JSX.Element;
50
+ getHandshakeParent?: () => HandshakeParent<typeof signerOutboundEvents, typeof signerInboundEvents>;
51
+ }
52
+ declare function CrossmintWalletProvider({ children, getHandshakeParent }: CrossmintWalletProviderProps): react_jsx_runtime.JSX.Element;
58
53
 
59
- export { CrossmintWalletProvider, type ValidWalletState, WalletContext, deriveErrorState };
54
+ export { CrossmintWalletProvider, type CrossmintWalletProviderProps, type ValidWalletState, WalletContext, deriveErrorState };
@@ -1,59 +1,54 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react from 'react';
3
3
  import { Dispatch, SetStateAction, ReactNode } from 'react';
4
- import { EVMSmartWallet, SolanaSmartWallet } from '@crossmint/wallets-sdk';
5
- import { GetOrCreateWalletProps } from '../types/wallet.js';
4
+ import { Chain, WalletArgsFor, Wallet } from '@crossmint/wallets-sdk';
5
+ import { HandshakeParent } from '@crossmint/client-sdk-window';
6
+ import { signerOutboundEvents, signerInboundEvents } from '@crossmint/client-signers';
6
7
 
7
8
  type ValidWalletState = {
8
9
  status: "not-loaded" | "in-progress";
9
10
  } | {
10
11
  status: "loaded";
11
- wallet: EVMSmartWallet;
12
- type: "evm-smart-wallet";
12
+ wallet: Wallet<Chain>;
13
13
  } | {
14
- status: "loaded";
15
- wallet: SolanaSmartWallet;
16
- type: "solana-smart-wallet";
17
- } | {
18
- status: "loading-error";
14
+ status: "error";
19
15
  error: string;
20
16
  };
21
17
  type WalletContextFunctions = {
22
- getOrCreateWallet: (args: GetOrCreateWalletProps) => Promise<{
18
+ getOrCreateWallet: <C extends Chain>(props: WalletArgsFor<C>) => Promise<{
23
19
  startedCreation: boolean;
24
20
  reason?: string;
25
21
  }>;
26
22
  setState: Dispatch<SetStateAction<ValidWalletState>>;
27
23
  clearWallet: () => void;
24
+ needsAuth: boolean;
25
+ sendEmailWithOtp: ((email: string) => Promise<void>) | null;
26
+ verifyOtp: ((otp: string) => Promise<void>) | null;
27
+ reject: ((error: Error) => void) | null;
28
28
  };
29
- type WalletType = {
30
- "evm-smart-wallet": EVMSmartWallet;
31
- "solana-smart-wallet": SolanaSmartWallet;
32
- };
33
- type LoadedWalletState<T extends keyof WalletType> = {
29
+ type LoadedWalletState<C extends Chain> = {
34
30
  status: "loaded";
35
- wallet: WalletType[T];
36
- type: T;
31
+ wallet: Wallet<C>;
37
32
  error?: undefined;
38
33
  };
39
- type WalletContext = ({
34
+ type WalletContext<C extends Chain = Chain> = ({
40
35
  status: "not-loaded" | "in-progress";
41
36
  wallet?: undefined;
42
- type?: undefined;
43
37
  error?: undefined;
44
38
  } & WalletContextFunctions) | ({
45
- status: "loading-error";
39
+ status: "error";
46
40
  wallet?: undefined;
47
- type?: undefined;
48
41
  error: string;
49
- } & WalletContextFunctions) | (LoadedWalletState<"evm-smart-wallet"> & WalletContextFunctions) | (LoadedWalletState<"solana-smart-wallet"> & WalletContextFunctions);
50
- declare const WalletContext: react.Context<WalletContext>;
42
+ } & WalletContextFunctions) | (LoadedWalletState<C> & WalletContextFunctions);
43
+ declare const WalletContext: react.Context<WalletContext<Chain>>;
51
44
  declare function deriveErrorState(error: unknown): {
52
- status: "loading-error";
45
+ status: "error";
53
46
  error: string;
54
47
  };
55
- declare function CrossmintWalletProvider({ children, }: {
48
+ interface CrossmintWalletProviderProps {
56
49
  children: ReactNode;
57
- }): react_jsx_runtime.JSX.Element;
50
+ getHandshakeParent?: () => HandshakeParent<typeof signerOutboundEvents, typeof signerInboundEvents>;
51
+ }
52
+ declare function CrossmintWalletProvider({ children, getHandshakeParent }: CrossmintWalletProviderProps): react_jsx_runtime.JSX.Element;
58
53
 
59
- export { CrossmintWalletProvider, type ValidWalletState, WalletContext, deriveErrorState };
54
+ export { CrossmintWalletProvider, type CrossmintWalletProviderProps, type ValidWalletState, WalletContext, deriveErrorState };
@@ -1 +1 @@
1
- import{b as a,c as b,d as c}from"../chunk-SX2INVZW.js";import"../chunk-6VQECK5Z.js";export{c as CrossmintWalletProvider,a as WalletContext,b as deriveErrorState};
1
+ import{c as a,d as b,e as c}from"../chunk-MG2DXRQ2.js";import"../chunk-V4VF722W.js";import"../chunk-22GIA4MK.js";export{c as CrossmintWalletProvider,a as WalletContext,b as deriveErrorState};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOB7SFNJCcjs = require('../chunk-OB7SFNJC.cjs');require('../chunk-PBWA4C3C.cjs');exports.CrossmintWalletProvider = _chunkOB7SFNJCcjs.d; exports.WalletContext = _chunkOB7SFNJCcjs.b; exports.deriveErrorState = _chunkOB7SFNJCcjs.c;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOBRTUDN5cjs = require('../chunk-OBRTUDN5.cjs');require('../chunk-X36L4TYR.cjs');require('../chunk-CK4JCQY6.cjs');exports.CrossmintWalletProvider = _chunkOBRTUDN5cjs.e; exports.WalletContext = _chunkOBRTUDN5cjs.c; exports.deriveErrorState = _chunkOBRTUDN5cjs.d;
@@ -1,5 +1,6 @@
1
- export { CrossmintWalletProvider, ValidWalletState, WalletContext, deriveErrorState } from './CrossmintWalletProvider.cjs';
1
+ export { CrossmintWalletProvider, CrossmintWalletProviderProps, ValidWalletState, WalletContext, deriveErrorState } from './CrossmintWalletProvider.cjs';
2
2
  import 'react/jsx-runtime';
3
3
  import 'react';
4
4
  import '@crossmint/wallets-sdk';
5
- import '../types/wallet.cjs';
5
+ import '@crossmint/client-sdk-window';
6
+ import '@crossmint/client-signers';
@@ -1,5 +1,6 @@
1
- export { CrossmintWalletProvider, ValidWalletState, WalletContext, deriveErrorState } from './CrossmintWalletProvider.js';
1
+ export { CrossmintWalletProvider, CrossmintWalletProviderProps, ValidWalletState, WalletContext, deriveErrorState } from './CrossmintWalletProvider.js';
2
2
  import 'react/jsx-runtime';
3
3
  import 'react';
4
4
  import '@crossmint/wallets-sdk';
5
- import '../types/wallet.js';
5
+ import '@crossmint/client-sdk-window';
6
+ import '@crossmint/client-signers';
@@ -1 +1 @@
1
- import{b as a,c as b,d as c}from"../chunk-SX2INVZW.js";import"../chunk-6VQECK5Z.js";export{c as CrossmintWalletProvider,a as WalletContext,b as deriveErrorState};
1
+ import{c as a,d as b,e as c}from"../chunk-MG2DXRQ2.js";import"../chunk-V4VF722W.js";import"../chunk-22GIA4MK.js";export{c as CrossmintWalletProvider,a as WalletContext,b as deriveErrorState};
@@ -1 +1 @@
1
- "use strict";require('../chunk-YSXSE5ZY.cjs');require('../chunk-KAO7ANYQ.cjs');
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-YSXSE5ZY.cjs');var _chunkSGSAZKKEcjs = require('../chunk-SGSAZKKE.cjs');require('../chunk-CK4JCQY6.cjs');exports.EVMWallet = _chunkSGSAZKKEcjs.a; exports.SolanaWallet = _chunkSGSAZKKEcjs.b;
@@ -1,2 +1,3 @@
1
- export { CrossmintAuthEmbeddedWallets, GetOrCreateWalletProps } from './wallet.cjs';
2
- import '@crossmint/wallets-sdk';
1
+ export { BaseCrossmintWalletProviderProps, CreateOnLogin } from './wallet.cjs';
2
+ export { Balances, Chain, EVMWallet, EvmExternalWalletSignerConfig, Permission, SolanaExternalWalletSignerConfig, SolanaWallet, Wallet } from '@crossmint/wallets-sdk';
3
+ import '@crossmint/common-sdk-base';
@@ -1,2 +1,3 @@
1
- export { CrossmintAuthEmbeddedWallets, GetOrCreateWalletProps } from './wallet.js';
2
- import '@crossmint/wallets-sdk';
1
+ export { BaseCrossmintWalletProviderProps, CreateOnLogin } from './wallet.js';
2
+ export { Balances, Chain, EVMWallet, EvmExternalWalletSignerConfig, Permission, SolanaExternalWalletSignerConfig, SolanaWallet, Wallet } from '@crossmint/wallets-sdk';
3
+ import '@crossmint/common-sdk-base';
@@ -1 +1 @@
1
- import"../chunk-B35TULQO.js";import"../chunk-JKIRM6OZ.js";
1
+ import"../chunk-B35TULQO.js";import{a,b}from"../chunk-LPOXK2Q6.js";import"../chunk-22GIA4MK.js";export{a as EVMWallet,b as SolanaWallet};
@@ -1 +1 @@
1
- "use strict";require('../chunk-KAO7ANYQ.cjs');
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkSGSAZKKEcjs = require('../chunk-SGSAZKKE.cjs');require('../chunk-CK4JCQY6.cjs');exports.EVMWallet = _chunkSGSAZKKEcjs.a; exports.SolanaWallet = _chunkSGSAZKKEcjs.b;
@@ -1,34 +1,16 @@
1
- import { EVMSmartWalletChain, EVMSignerInput, SolanaSignerInput } from '@crossmint/wallets-sdk';
1
+ import { UIConfig } from '@crossmint/common-sdk-base';
2
+ import { Chain, SignerConfigForChain } from '@crossmint/wallets-sdk';
3
+ export { Balances, Chain, EVMWallet, EvmExternalWalletSignerConfig, Permission, SolanaExternalWalletSignerConfig, SolanaWallet, Wallet } from '@crossmint/wallets-sdk';
2
4
 
3
- type GetOrCreateWalletBaseProps = {
4
- args: {
5
- linkedUser?: string;
6
- };
5
+ type CreateOnLogin = {
6
+ chain: Chain;
7
+ signer?: SignerConfigForChain<Chain>;
8
+ owner?: string;
7
9
  };
8
- type GetOrCreateWalletProps = ({
9
- type: "evm-smart-wallet";
10
- args: {
11
- chain: EVMSmartWalletChain;
12
- adminSigner?: EVMSignerInput;
13
- };
14
- } & GetOrCreateWalletBaseProps) | ({
15
- type: "solana-smart-wallet";
16
- args: {
17
- adminSigner?: SolanaSignerInput;
18
- };
19
- } & GetOrCreateWalletBaseProps);
20
- type WalletBaseConfig = {
21
- createOnLogin: "all-users" | "off";
10
+ type BaseCrossmintWalletProviderProps = {
11
+ createOnLogin?: CreateOnLogin;
22
12
  showPasskeyHelpers?: boolean;
23
- linkedUser?: string;
13
+ appearance?: UIConfig;
24
14
  };
25
- type CrossmintAuthEmbeddedWallets = ({
26
- type: "evm-smart-wallet";
27
- defaultChain: EVMSmartWalletChain;
28
- adminSigner?: EVMSignerInput;
29
- } & WalletBaseConfig) | ({
30
- type: "solana-smart-wallet";
31
- adminSigner?: SolanaSignerInput;
32
- } & WalletBaseConfig);
33
15
 
34
- export type { CrossmintAuthEmbeddedWallets, GetOrCreateWalletProps };
16
+ export type { BaseCrossmintWalletProviderProps, CreateOnLogin };
@@ -1,34 +1,16 @@
1
- import { EVMSmartWalletChain, EVMSignerInput, SolanaSignerInput } from '@crossmint/wallets-sdk';
1
+ import { UIConfig } from '@crossmint/common-sdk-base';
2
+ import { Chain, SignerConfigForChain } from '@crossmint/wallets-sdk';
3
+ export { Balances, Chain, EVMWallet, EvmExternalWalletSignerConfig, Permission, SolanaExternalWalletSignerConfig, SolanaWallet, Wallet } from '@crossmint/wallets-sdk';
2
4
 
3
- type GetOrCreateWalletBaseProps = {
4
- args: {
5
- linkedUser?: string;
6
- };
5
+ type CreateOnLogin = {
6
+ chain: Chain;
7
+ signer?: SignerConfigForChain<Chain>;
8
+ owner?: string;
7
9
  };
8
- type GetOrCreateWalletProps = ({
9
- type: "evm-smart-wallet";
10
- args: {
11
- chain: EVMSmartWalletChain;
12
- adminSigner?: EVMSignerInput;
13
- };
14
- } & GetOrCreateWalletBaseProps) | ({
15
- type: "solana-smart-wallet";
16
- args: {
17
- adminSigner?: SolanaSignerInput;
18
- };
19
- } & GetOrCreateWalletBaseProps);
20
- type WalletBaseConfig = {
21
- createOnLogin: "all-users" | "off";
10
+ type BaseCrossmintWalletProviderProps = {
11
+ createOnLogin?: CreateOnLogin;
22
12
  showPasskeyHelpers?: boolean;
23
- linkedUser?: string;
13
+ appearance?: UIConfig;
24
14
  };
25
- type CrossmintAuthEmbeddedWallets = ({
26
- type: "evm-smart-wallet";
27
- defaultChain: EVMSmartWalletChain;
28
- adminSigner?: EVMSignerInput;
29
- } & WalletBaseConfig) | ({
30
- type: "solana-smart-wallet";
31
- adminSigner?: SolanaSignerInput;
32
- } & WalletBaseConfig);
33
15
 
34
- export type { CrossmintAuthEmbeddedWallets, GetOrCreateWalletProps };
16
+ export type { BaseCrossmintWalletProviderProps, CreateOnLogin };
@@ -1 +1 @@
1
- import"../chunk-JKIRM6OZ.js";
1
+ import{a,b}from"../chunk-LPOXK2Q6.js";import"../chunk-22GIA4MK.js";export{a as EVMWallet,b as SolanaWallet};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crossmint/client-sdk-react-base",
3
- "version": "0.2.16",
3
+ "version": "0.3.0",
4
4
  "repository": "https://github.com/Crossmint/crossmint-sdk",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Paella Labs Inc",
@@ -18,9 +18,11 @@
18
18
  "LICENSE"
19
19
  ],
20
20
  "dependencies": {
21
- "@crossmint/common-sdk-base": "0.5.1",
22
- "@crossmint/client-sdk-base": "1.5.1",
23
- "@crossmint/wallets-sdk": "0.8.1"
21
+ "@crossmint/common-sdk-base": "0.6.0",
22
+ "@crossmint/client-sdk-base": "1.5.2",
23
+ "@crossmint/client-sdk-window": "1.0.0",
24
+ "@crossmint/client-signers": "0.0.16",
25
+ "@crossmint/wallets-sdk": "0.9.0"
24
26
  },
25
27
  "devDependencies": {
26
28
  "@types/react": "19.0.12"
@@ -1 +0,0 @@
1
- var x=Object.defineProperty,p=Object.defineProperties;var P=Object.getOwnPropertyDescriptors;var f=Object.getOwnPropertySymbols;var R=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;var l=(r,t,e)=>t in r?x(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e,S=(r,t)=>{for(var e in t||(t={}))R.call(t,e)&&l(r,e,t[e]);if(f)for(var e of f(t))a.call(t,e)&&l(r,e,t[e]);return r},V=(r,t)=>p(r,P(t));var q=(r,t,e)=>new Promise((c,u)=>{var m=n=>{try{s(e.next(n))}catch(o){u(o)}},i=n=>{try{s(e.throw(n))}catch(o){u(o)}},s=n=>n.done?c(n.value):Promise.resolve(n.value).then(m,i);s((e=e.apply(r,t)).next())});import{createContext as h,useCallback as j,useContext as y,useMemo as b,useRef as J,useState as N}from"react";import{createCrossmint as k}from"@crossmint/common-sdk-base";import{jsx as E}from"react/jsx-runtime";var w=h(null);function G({children:r,apiKey:t,appId:e,overrideBaseUrl:c}){let[u,m]=N(0),i=J(new Proxy(k({apiKey:t,overrideBaseUrl:c,appId:e}),{set(o,C,d){return C==="jwt"&&o.jwt!==d&&m(v=>v+1),Reflect.set(o,C,d)}})),s=j(o=>{o!==i.current.jwt&&(i.current.jwt=o)},[]),n=b(()=>({get crossmint(){return i.current},setJwt:s}),[s,u]);return E(w.Provider,{value:n,children:r})}function H(r){let t=y(w);if(t==null)throw new Error(r!=null?r:"useCrossmint must be used within a CrossmintProvider");return t}export{S as a,V as b,q as c,G as d,H as e};
File without changes
@@ -1 +0,0 @@
1
- "use strict";
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkPBWA4C3Ccjs = require('./chunk-PBWA4C3C.cjs');var _react = require('react');var _walletssdk = require('@crossmint/wallets-sdk');function S({crossmintWallets:t,crossmintJwt:a,callbacks:s}){let[r,e]=_react.useState.call(void 0, {status:"not-loaded"}),n=_react.useRef.call(void 0, r.status);_react.useEffect.call(void 0, ()=>{n.current=r.status},[r.status]);let d=_react.useCallback.call(void 0, o=>_chunkPBWA4C3Ccjs.c.call(void 0, this,null,function*(){var c;if(n.current==="in-progress")return{startedCreation:!1,reason:"Wallet is already loading."};if(a==null)return{startedCreation:!1,reason:'Jwt not set in "CrossmintProvider".'};try{switch(e({status:"in-progress"}),o.type){case"evm-smart-wallet":{let l={chain:o.args.chain,adminSigner:(c=o.args.adminSigner)!=null?c:{type:"evm-passkey"},linkedUser:o.args.linkedUser},y=yield t.getOrCreateWallet("evm-smart-wallet",l,{experimental_callbacks:s});e({status:"loaded",wallet:y,type:"evm-smart-wallet"});break}case"solana-smart-wallet":{let l=yield t.getOrCreateWallet("solana-smart-wallet",o.args,{experimental_callbacks:s});e({status:"loaded",wallet:l,type:"solana-smart-wallet"});break}}}catch(l){console.error("There was an error creating a wallet ",l),e(g(l))}return{startedCreation:!0}}),[a,t,s]),i=_react.useCallback.call(void 0, ()=>{e({status:"not-loaded"})},[]);return{state:r,setState:e,getOrCreateWallet:d,clearWallet:i}}function D(){let t=_react.useContext.call(void 0, u);if(!t)throw new Error("useWallet must be used within CrossmintAuthProvider or CrossmintWalletProvider");return t}var _jsxruntime = require('react/jsx-runtime');var u=_react.createContext.call(void 0, {status:"not-loaded",setState:()=>{},getOrCreateWallet:()=>Promise.resolve({startedCreation:!1}),clearWallet:()=>null});function g(t){return{status:"loading-error",error:t instanceof Error?t.message:String(t)}}function I({children:t}){var i;let{crossmint:a}=_chunkPBWA4C3Ccjs.e.call(void 0, "CrossmintWalletProvider must be used within CrossmintProvider"),s=_react.useMemo.call(void 0, ()=>_walletssdk.CrossmintWallets.from(a),[a]),{state:r,setState:e,getOrCreateWallet:n,clearWallet:d}=S({crossmintWallets:s,crossmintJwt:(i=a.jwt)!=null?i:null});return _jsxruntime.jsx.call(void 0, u.Provider,{value:_chunkPBWA4C3Ccjs.b.call(void 0, _chunkPBWA4C3Ccjs.a.call(void 0, {},r),{setState:e,getOrCreateWallet:n,clearWallet:d}),children:t})}exports.a = S; exports.b = u; exports.c = g; exports.d = I; exports.e = D;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var x=Object.defineProperty,p=Object.defineProperties;var P=Object.getOwnPropertyDescriptors;var f=Object.getOwnPropertySymbols;var R=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;var l=(r,t,e)=>t in r?x(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e,S= exports.a =(r,t)=>{for(var e in t||(t={}))R.call(t,e)&&l(r,e,t[e]);if(f)for(var e of f(t))a.call(t,e)&&l(r,e,t[e]);return r},V= exports.b =(r,t)=>p(r,P(t));var q=(r,t,e)=>new Promise((c,u)=>{var m=n=>{try{s(e.next(n))}catch(o){u(o)}},i=n=>{try{s(e.throw(n))}catch(o){u(o)}},s=n=>n.done?c(n.value):Promise.resolve(n.value).then(m,i);s((e=e.apply(r,t)).next())});var _react = require('react');var _commonsdkbase = require('@crossmint/common-sdk-base');var _jsxruntime = require('react/jsx-runtime');var w=_react.createContext.call(void 0, null);function F({children:r,apiKey:t,appId:e,overrideBaseUrl:c}){let[u,m]=_react.useState.call(void 0, 0),i=_react.useRef.call(void 0, new Proxy(_commonsdkbase.createCrossmint.call(void 0, {apiKey:t,overrideBaseUrl:c,appId:e}),{set(o,C,d){return C==="jwt"&&o.jwt!==d&&m(v=>v+1),Reflect.set(o,C,d)}})),s=_react.useCallback.call(void 0, o=>{o!==i.current.jwt&&(i.current.jwt=o)},[]),n=_react.useMemo.call(void 0, ()=>({get crossmint(){return i.current},setJwt:s}),[s,u]);return _jsxruntime.jsx.call(void 0, w.Provider,{value:n,children:r})}function G(r){let t=_react.useContext.call(void 0, w);if(t==null)throw new Error(r!=null?r:"useCrossmint must be used within a CrossmintProvider");return t}exports.a = S; exports.b = V; exports.c = q; exports.d = F; exports.e = G;
@@ -1 +0,0 @@
1
- import{a as W,b as C,c as f,e as w}from"./chunk-6VQECK5Z.js";import{createContext as O,useMemo as b}from"react";import{CrossmintWallets as E}from"@crossmint/wallets-sdk";import{useState as v,useCallback as S,useRef as k,useEffect as P}from"react";function g({crossmintWallets:t,crossmintJwt:a,callbacks:s}){let[r,e]=v({status:"not-loaded"}),n=k(r.status);P(()=>{n.current=r.status},[r.status]);let u=S(o=>f(this,null,function*(){var p;if(n.current==="in-progress")return{startedCreation:!1,reason:"Wallet is already loading."};if(a==null)return{startedCreation:!1,reason:'Jwt not set in "CrossmintProvider".'};try{switch(e({status:"in-progress"}),o.type){case"evm-smart-wallet":{let l={chain:o.args.chain,adminSigner:(p=o.args.adminSigner)!=null?p:{type:"evm-passkey"},linkedUser:o.args.linkedUser},x=yield t.getOrCreateWallet("evm-smart-wallet",l,{experimental_callbacks:s});e({status:"loaded",wallet:x,type:"evm-smart-wallet"});break}case"solana-smart-wallet":{let l=yield t.getOrCreateWallet("solana-smart-wallet",o.args,{experimental_callbacks:s});e({status:"loaded",wallet:l,type:"solana-smart-wallet"});break}}}catch(l){console.error("There was an error creating a wallet ",l),e(y(l))}return{startedCreation:!0}}),[a,t,s]),i=S(()=>{e({status:"not-loaded"})},[]);return{state:r,setState:e,getOrCreateWallet:u,clearWallet:i}}import{useContext as h}from"react";function L(){let t=h(c);if(!t)throw new Error("useWallet must be used within CrossmintAuthProvider or CrossmintWalletProvider");return t}import{jsx as V}from"react/jsx-runtime";var c=O({status:"not-loaded",setState:()=>{},getOrCreateWallet:()=>Promise.resolve({startedCreation:!1}),clearWallet:()=>null});function y(t){return{status:"loading-error",error:t instanceof Error?t.message:String(t)}}function Q({children:t}){var i;let{crossmint:a}=w("CrossmintWalletProvider must be used within CrossmintProvider"),s=b(()=>E.from(a),[a]),{state:r,setState:e,getOrCreateWallet:n,clearWallet:u}=g({crossmintWallets:s,crossmintJwt:(i=a.jwt)!=null?i:null});return V(c.Provider,{value:C(W({},r),{setState:e,getOrCreateWallet:n,clearWallet:u}),children:t})}export{g as a,c as b,y as c,Q as d,L as e};