@crossmint/client-sdk-react-native-ui 0.3.4 → 0.3.6

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.
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkZPIV7DVZcjs = require('./chunk-ZPIV7DVZ.cjs');var _chunk6R7OYJL5cjs = require('./chunk-6R7OYJL5.cjs');var _react = require('react');var _expowebbrowser = require('expo-web-browser'); var s = _interopRequireWildcard(_expowebbrowser);var _clientsdkauth = require('@crossmint/client-sdk-auth');var _commonsdkauth = require('@crossmint/common-sdk-auth');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');function ot(){let i=_react.useContext.call(void 0, C);if(!i)throw new Error("useCrossmintAuth must be used within a CrossmintAuthProvider");return i}var _reactnative = require('react-native');var _expoconstants = require('expo-constants'); var _expoconstants2 = _interopRequireDefault(_expoconstants);var _jsxruntime = require('react/jsx-runtime');var B={google:null,twitter:null},Y={crossmintAuth:void 0,logout:()=>{},jwt:void 0,user:void 0,status:"initializing",getUser:()=>{},loginWithOAuth:()=>Promise.resolve(),createAuthSession:()=>Promise.resolve()},C= exports.a =_react.createContext.call(void 0, Y);function wt({children:i,onLoginSuccess:u,refreshRoute:h,logoutRoute:O,customStorageProvider:p,appSchema:A}){let[f,w]=_react.useState.call(void 0, void 0),{crossmint:o,setJwt:d}=_clientsdkreactbase.useCrossmint.call(void 0, "CrossmintAuthProvider must be used within CrossmintProvider"),[z,k]=_react.useState.call(void 0, B),y=_react.useRef.call(void 0, null),a=_react.useMemo.call(void 0, ()=>p!=null?p:new _chunkZPIV7DVZcjs.a,[p]),[D,S]=_react.useState.call(void 0, !1),[F,U]=_react.useState.call(void 0, !1),K=Array.isArray(A)?A[0]:A,R=_expoconstants2.default.executionEnvironment==="storeClient"||_expoconstants2.default.appOwnership==="expo"||!!_expoconstants2.default.expoVersion?"exp://127.0.0.1:8081":K,e=_react.useMemo.call(void 0, ()=>{if(!y.current){let t={callbacks:{onLogout:()=>{d(void 0),w(void 0)},onTokenRefresh:r=>{d(r.jwt),w(r.user)}},refreshRoute:h,logoutRoute:O,storageProvider:a};y.current=_clientsdkauth.CrossmintAuth.from(o,t)}return y.current},[a]),b=_react.useCallback.call(void 0, ()=>{u==null||u()},[u]);_react.useEffect.call(void 0, ()=>{o.jwt==null?a==null||a.get(_commonsdkauth.SESSION_PREFIX).then(t=>{t!=null&&d(t)}).finally(()=>{S(!0)}):S(!0)},[o.jwt,d,a]),_react.useEffect.call(void 0, ()=>{o.jwt!=null&&b()},[o.jwt,b]);let N=()=>{e.logout()},M=_react.useCallback.call(void 0, ()=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){try{let r=Object.keys(B).map(l=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){let m=yield e==null?void 0:e.getOAuthUrl(l,{appSchema:R});return{[l]:m}})),n=Object.assign({},...yield Promise.all(r));k(n)}catch(t){console.error(t)}}),[e]);_react.useEffect.call(void 0, ()=>{f==null&&M()},[M,f]);let _=()=>D?F?"in-progress":o.jwt!=null?"logged-in":"logged-out":"initializing",G=()=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){if(o.jwt==null){console.log("User not logged in");return}let t=yield e.getUser();w(t)}),J=t=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){var r;try{U(!0);let n=(r=z[t])!=null?r:yield e.getOAuthUrl(t,{appSchema:R});yield s.warmUpAsync();let l=new URL(n);if(t==="google"&&l.searchParams.append("provider_prompt","select_account"),_reactnative.Platform.OS==="android")yield s.openBrowserAsync(l.toString());else{let m=yield s.openAuthSessionAsync(l.toString());m.type==="success"&&(yield j(m.url))}yield s.coolDownAsync()}catch(n){console.error("[CrossmintAuthProvider] Error during OAuth login:",n)}}),j=_react.useCallback.call(void 0, t=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){let r=t.includes("://")?Z(t):t;if(r!=null)try{return U(!0),yield e.handleRefreshAuthMaterial(r)}catch(n){throw n}finally{U(!1)}}),[e]);return _jsxruntime.jsx.call(void 0, C.Provider,{value:{crossmintAuth:e,logout:N,jwt:o.jwt,user:f,status:_(),getUser:G,loginWithOAuth:J,createAuthSession:j},children:i})}var Z=i=>{let u=/[?&]oneTimeSecret=([^&#]+)/,h=i.match(u);return h?decodeURIComponent(h[1]):void 0};exports.a = C; exports.b = wt; exports.c = ot; exports.d = _clientsdkreactbase.useCrossmint; exports.e = _clientsdkreactbase.useWallet;
@@ -0,0 +1 @@
1
+ import{a as E}from"./chunk-BWWCPHLC.js";import{a as c}from"./chunk-DUTPQ56Q.js";import{createContext as X,useEffect as P,useMemo as B,useRef as q,useState as g,useCallback as x}from"react";import*as s from"expo-web-browser";import{CrossmintAuth as L}from"@crossmint/client-sdk-auth";import{SESSION_PREFIX as Q}from"@crossmint/common-sdk-auth";import{useCrossmint as T,useWallet as ct}from"@crossmint/client-sdk-react-base";import{useContext as H}from"react";function nt(){let i=H(C);if(!i)throw new Error("useCrossmintAuth must be used within a CrossmintAuthProvider");return i}import{Platform as Y}from"react-native";import v from"expo-constants";import{jsx as tt}from"react/jsx-runtime";var z={google:null,twitter:null},Z={crossmintAuth:void 0,logout:()=>{},jwt:void 0,user:void 0,status:"initializing",getUser:()=>{},loginWithOAuth:()=>Promise.resolve(),createAuthSession:()=>Promise.resolve()},C=X(Z);function yt({children:i,onLoginSuccess:u,refreshRoute:h,logoutRoute:O,customStorageProvider:p,appSchema:A}){let[f,w]=g(void 0),{crossmint:o,setJwt:d}=T("CrossmintAuthProvider must be used within CrossmintProvider"),[k,D]=g(z),y=q(null),a=B(()=>p!=null?p:new E,[p]),[F,S]=g(!1),[K,U]=g(!1),N=Array.isArray(A)?A[0]:A,R=v.executionEnvironment==="storeClient"||v.appOwnership==="expo"||!!v.expoVersion?"exp://127.0.0.1:8081":N,e=B(()=>{if(!y.current){let t={callbacks:{onLogout:()=>{d(void 0),w(void 0)},onTokenRefresh:r=>{d(r.jwt),w(r.user)}},refreshRoute:h,logoutRoute:O,storageProvider:a};y.current=L.from(o,t)}return y.current},[a]),b=x(()=>{u==null||u()},[u]);P(()=>{o.jwt==null?a==null||a.get(Q).then(t=>{t!=null&&d(t)}).finally(()=>{S(!0)}):S(!0)},[o.jwt,d,a]),P(()=>{o.jwt!=null&&b()},[o.jwt,b]);let _=()=>{e.logout()},M=x(()=>c(this,null,function*(){try{let r=Object.keys(z).map(l=>c(this,null,function*(){let m=yield e==null?void 0:e.getOAuthUrl(l,{appSchema:R});return{[l]:m}})),n=Object.assign({},...yield Promise.all(r));D(n)}catch(t){console.error(t)}}),[e]);P(()=>{f==null&&M()},[M,f]);let G=()=>F?K?"in-progress":o.jwt!=null?"logged-in":"logged-out":"initializing",J=()=>c(this,null,function*(){if(o.jwt==null){console.log("User not logged in");return}let t=yield e.getUser();w(t)}),V=t=>c(this,null,function*(){var r;try{U(!0);let n=(r=k[t])!=null?r:yield e.getOAuthUrl(t,{appSchema:R});yield s.warmUpAsync();let l=new URL(n);if(t==="google"&&l.searchParams.append("provider_prompt","select_account"),Y.OS==="android")yield s.openBrowserAsync(l.toString());else{let m=yield s.openAuthSessionAsync(l.toString());m.type==="success"&&(yield j(m.url))}yield s.coolDownAsync()}catch(n){console.error("[CrossmintAuthProvider] Error during OAuth login:",n)}}),j=x(t=>c(this,null,function*(){let r=t.includes("://")?$(t):t;if(r!=null)try{return U(!0),yield e.handleRefreshAuthMaterial(r)}catch(n){throw n}finally{U(!1)}}),[e]);return tt(C.Provider,{value:{crossmintAuth:e,logout:_,jwt:o.jwt,user:f,status:G(),getUser:J,loginWithOAuth:V,createAuthSession:j},children:i})}var $=i=>{let u=/[?&]oneTimeSecret=([^&#]+)/,h=i.match(u);return h?decodeURIComponent(h[1]):void 0};export{C as a,yt as b,nt as c,T as d,ct as e};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkFJ5RMWNPcjs = require('../chunk-FJ5RMWNP.cjs');require('../chunk-ZPIV7DVZ.cjs');require('../chunk-6R7OYJL5.cjs');exports.useCrossmint = _chunkFJ5RMWNPcjs.d; exports.useCrossmintAuth = _chunkFJ5RMWNPcjs.c; exports.useWallet = _chunkFJ5RMWNPcjs.e;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkF4CFKR3Lcjs = require('../chunk-F4CFKR3L.cjs');require('../chunk-ZPIV7DVZ.cjs');require('../chunk-6R7OYJL5.cjs');exports.useCrossmint = _chunkF4CFKR3Lcjs.d; exports.useCrossmintAuth = _chunkF4CFKR3Lcjs.c; exports.useWallet = _chunkF4CFKR3Lcjs.e;
@@ -1 +1 @@
1
- import{c as a,d as b,e as c}from"../chunk-XJXY6LLF.js";import"../chunk-BWWCPHLC.js";import"../chunk-DUTPQ56Q.js";export{b as useCrossmint,a as useCrossmintAuth,c as useWallet};
1
+ import{c as a,d as b,e as c}from"../chunk-V27SSYBK.js";import"../chunk-BWWCPHLC.js";import"../chunk-DUTPQ56Q.js";export{b as useCrossmint,a as useCrossmintAuth,c as useWallet};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkFJ5RMWNPcjs = require('../chunk-FJ5RMWNP.cjs');require('../chunk-ZPIV7DVZ.cjs');require('../chunk-6R7OYJL5.cjs');exports.useCrossmintAuth = _chunkFJ5RMWNPcjs.c;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkF4CFKR3Lcjs = require('../chunk-F4CFKR3L.cjs');require('../chunk-ZPIV7DVZ.cjs');require('../chunk-6R7OYJL5.cjs');exports.useCrossmintAuth = _chunkF4CFKR3Lcjs.c;
@@ -1 +1 @@
1
- import{c as a}from"../chunk-XJXY6LLF.js";import"../chunk-BWWCPHLC.js";import"../chunk-DUTPQ56Q.js";export{a as useCrossmintAuth};
1
+ import{c as a}from"../chunk-V27SSYBK.js";import"../chunk-BWWCPHLC.js";import"../chunk-DUTPQ56Q.js";export{a as useCrossmintAuth};
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkYF74MXQIcjs = require('./chunk-YF74MXQI.cjs');var _chunkFJ5RMWNPcjs = require('./chunk-FJ5RMWNP.cjs');var _chunk4L2OHRE5cjs = require('./chunk-4L2OHRE5.cjs');require('./chunk-ZPIV7DVZ.cjs');require('./chunk-6R7OYJL5.cjs');exports.CrossmintAuthProvider = _chunkFJ5RMWNPcjs.b; exports.CrossmintProvider = _chunk4L2OHRE5cjs.a; exports.CrossmintWalletProvider = _chunkYF74MXQIcjs.a; exports.useCrossmint = _chunkFJ5RMWNPcjs.d; exports.useCrossmintAuth = _chunkFJ5RMWNPcjs.c; exports.useWallet = _chunkFJ5RMWNPcjs.e;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkYF74MXQIcjs = require('./chunk-YF74MXQI.cjs');var _chunkF4CFKR3Lcjs = require('./chunk-F4CFKR3L.cjs');var _chunk4L2OHRE5cjs = require('./chunk-4L2OHRE5.cjs');require('./chunk-ZPIV7DVZ.cjs');require('./chunk-6R7OYJL5.cjs');exports.CrossmintAuthProvider = _chunkF4CFKR3Lcjs.b; exports.CrossmintProvider = _chunk4L2OHRE5cjs.a; exports.CrossmintWalletProvider = _chunkYF74MXQIcjs.a; exports.useCrossmint = _chunkF4CFKR3Lcjs.d; exports.useCrossmintAuth = _chunkF4CFKR3Lcjs.c; exports.useWallet = _chunkF4CFKR3Lcjs.e;
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{a}from"./chunk-YDT26OWH.js";import{b as t,c as e,d as r,e as o}from"./chunk-XJXY6LLF.js";import{a as s}from"./chunk-I52CP62R.js";import"./chunk-BWWCPHLC.js";import"./chunk-DUTPQ56Q.js";export{t as CrossmintAuthProvider,s as CrossmintProvider,a as CrossmintWalletProvider,r as useCrossmint,e as useCrossmintAuth,o as useWallet};
1
+ import{a}from"./chunk-YDT26OWH.js";import{b as t,c as e,d as r,e as o}from"./chunk-V27SSYBK.js";import{a as s}from"./chunk-I52CP62R.js";import"./chunk-BWWCPHLC.js";import"./chunk-DUTPQ56Q.js";export{t as CrossmintAuthProvider,s as CrossmintProvider,a as CrossmintWalletProvider,r as useCrossmint,e as useCrossmintAuth,o as useWallet};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkFJ5RMWNPcjs = require('../chunk-FJ5RMWNP.cjs');require('../chunk-ZPIV7DVZ.cjs');require('../chunk-6R7OYJL5.cjs');exports.AuthContext = _chunkFJ5RMWNPcjs.a; exports.CrossmintAuthProvider = _chunkFJ5RMWNPcjs.b;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkF4CFKR3Lcjs = require('../chunk-F4CFKR3L.cjs');require('../chunk-ZPIV7DVZ.cjs');require('../chunk-6R7OYJL5.cjs');exports.AuthContext = _chunkF4CFKR3Lcjs.a; exports.CrossmintAuthProvider = _chunkF4CFKR3Lcjs.b;
@@ -1 +1 @@
1
- import{a,b}from"../chunk-XJXY6LLF.js";import"../chunk-BWWCPHLC.js";import"../chunk-DUTPQ56Q.js";export{a as AuthContext,b as CrossmintAuthProvider};
1
+ import{a,b}from"../chunk-V27SSYBK.js";import"../chunk-BWWCPHLC.js";import"../chunk-DUTPQ56Q.js";export{a as AuthContext,b as CrossmintAuthProvider};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkYF74MXQIcjs = require('../chunk-YF74MXQI.cjs');var _chunkFJ5RMWNPcjs = require('../chunk-FJ5RMWNP.cjs');var _chunk4L2OHRE5cjs = require('../chunk-4L2OHRE5.cjs');require('../chunk-ZPIV7DVZ.cjs');require('../chunk-6R7OYJL5.cjs');exports.CrossmintAuthProvider = _chunkFJ5RMWNPcjs.b; exports.CrossmintProvider = _chunk4L2OHRE5cjs.a; exports.CrossmintWalletProvider = _chunkYF74MXQIcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkYF74MXQIcjs = require('../chunk-YF74MXQI.cjs');var _chunkF4CFKR3Lcjs = require('../chunk-F4CFKR3L.cjs');var _chunk4L2OHRE5cjs = require('../chunk-4L2OHRE5.cjs');require('../chunk-ZPIV7DVZ.cjs');require('../chunk-6R7OYJL5.cjs');exports.CrossmintAuthProvider = _chunkF4CFKR3Lcjs.b; exports.CrossmintProvider = _chunk4L2OHRE5cjs.a; exports.CrossmintWalletProvider = _chunkYF74MXQIcjs.a;
@@ -1 +1 @@
1
- import{a as c}from"../chunk-YDT26OWH.js";import{b as a}from"../chunk-XJXY6LLF.js";import{a as b}from"../chunk-I52CP62R.js";import"../chunk-BWWCPHLC.js";import"../chunk-DUTPQ56Q.js";export{a as CrossmintAuthProvider,b as CrossmintProvider,c as CrossmintWalletProvider};
1
+ import{a as c}from"../chunk-YDT26OWH.js";import{b as a}from"../chunk-V27SSYBK.js";import{a as b}from"../chunk-I52CP62R.js";import"../chunk-BWWCPHLC.js";import"../chunk-DUTPQ56Q.js";export{a as CrossmintAuthProvider,b as CrossmintProvider,c as CrossmintWalletProvider};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crossmint/client-sdk-react-native-ui",
3
- "version": "0.3.4",
3
+ "version": "0.3.6",
4
4
  "repository": "https://github.com/Crossmint/crossmint-sdk",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Paella Labs Inc",
@@ -23,10 +23,10 @@
23
23
  "expo-web-browser": "~14.0.2",
24
24
  "@crossmint/client-sdk-auth": "1.2.1",
25
25
  "@crossmint/client-sdk-base": "1.4.17",
26
- "@crossmint/client-sdk-react-base": "0.2.3",
26
+ "@crossmint/client-sdk-react-base": "0.2.4",
27
+ "@crossmint/common-sdk-auth": "1.0.24",
27
28
  "@crossmint/common-sdk-base": "0.4.0",
28
- "@crossmint/wallets-sdk": "0.5.3",
29
- "@crossmint/common-sdk-auth": "1.0.24"
29
+ "@crossmint/wallets-sdk": "0.6.0"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@types/react": "19.0.12"
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }var _chunkZPIV7DVZcjs = require('./chunk-ZPIV7DVZ.cjs');var _chunk6R7OYJL5cjs = require('./chunk-6R7OYJL5.cjs');var _react = require('react');var _expowebbrowser = require('expo-web-browser'); var s = _interopRequireWildcard(_expowebbrowser);var _clientsdkauth = require('@crossmint/client-sdk-auth');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');function Y(){let n=_react.useContext.call(void 0, U);if(!n)throw new Error("useCrossmintAuth must be used within a CrossmintAuthProvider");return n}var _reactnative = require('react-native');var _jsxruntime = require('react/jsx-runtime');var T={google:null,twitter:null},q={crossmintAuth:void 0,logout:()=>{},jwt:void 0,user:void 0,status:"initializing",getUser:()=>{},loginWithOAuth:()=>Promise.resolve(),createAuthSession:()=>Promise.resolve()},U= exports.a =_react.createContext.call(void 0, q);function ct({children:n,onLoginSuccess:i,refreshRoute:h,logoutRoute:v,customStorageProvider:d,appSchema:g}){let[p,f]=_react.useState.call(void 0, void 0),{crossmint:o,setJwt:m}=_clientsdkreactbase.useCrossmint.call(void 0, "CrossmintAuthProvider must be used within CrossmintProvider"),[B,E]=_react.useState.call(void 0, T),w=_react.useRef.call(void 0, null),u=_react.useMemo.call(void 0, ()=>d!=null?d:new _chunkZPIV7DVZcjs.a,[d]),O=Array.isArray(g)?g[0]:g,e=_react.useMemo.call(void 0, ()=>{if(!w.current){let t={callbacks:{onLogout:()=>{m(void 0),f(void 0)},onTokenRefresh:r=>{m(r.jwt),f(r.user)}},refreshRoute:h,logoutRoute:v,storageProvider:u};w.current=_clientsdkauth.CrossmintAuth.from(o,t)}return w.current},[u]),[k,z]=_react.useState.call(void 0, !1),x=_react.useCallback.call(void 0, ()=>{i==null||i()},[i]);_react.useEffect.call(void 0, ()=>{o.jwt==null&&(u==null||u.get("jwt").then(t=>{t!=null&&m(t)})),z(!0)},[o.jwt,m,u]),_react.useEffect.call(void 0, ()=>{o.jwt!=null&&x()},[o.jwt,x]);let D=()=>{e.logout()},S=_react.useCallback.call(void 0, ()=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){try{let r=Object.keys(T).map(a=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){let A=yield e==null?void 0:e.getOAuthUrl(a,{appSchema:O});return{[a]:A}})),c=Object.assign({},...yield Promise.all(r));E(c)}catch(t){console.error(t)}}),[e]);_react.useEffect.call(void 0, ()=>{p==null&&S()},[S,p]);let I=()=>k?o.jwt!=null?"logged-in":"logged-out":"initializing",K=()=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){if(o.jwt==null){console.log("User not logged in");return}let t=yield e.getUser();f(t)}),F=t=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){var r;try{let c=(r=B[t])!=null?r:yield e.getOAuthUrl(t,{appSchema:O});yield s.warmUpAsync();let a=new URL(c);if(t==="google"&&a.searchParams.append("provider_prompt","select_account"),_reactnative.Platform.OS==="android")yield s.openBrowserAsync(a.toString());else{let A=yield s.openAuthSessionAsync(a.toString());A.type==="success"&&(yield b(A.url))}yield s.coolDownAsync()}catch(c){console.error("[CrossmintAuthProvider] Error during OAuth login:",c)}}),b=_react.useCallback.call(void 0, t=>_chunk6R7OYJL5cjs.a.call(void 0, this,null,function*(){let r=t.includes("://")?G(t):t;if(r!=null)return yield e.handleRefreshAuthMaterial(r)}),[e]);return _jsxruntime.jsx.call(void 0, U.Provider,{value:{crossmintAuth:e,logout:D,jwt:o.jwt,user:p,status:I(),getUser:K,loginWithOAuth:F,createAuthSession:b},children:n})}var G=n=>{let i=/[?&]oneTimeSecret=([^&#]+)/,h=n.match(i);return h?decodeURIComponent(h[1]):void 0};exports.a = U; exports.b = ct; exports.c = Y; exports.d = _clientsdkreactbase.useCrossmint; exports.e = _clientsdkreactbase.useWallet;
@@ -1 +0,0 @@
1
- import{a as j}from"./chunk-BWWCPHLC.js";import{a as l}from"./chunk-DUTPQ56Q.js";import{createContext as _,useEffect as y,useMemo as T,useRef as H,useState as C,useCallback as P}from"react";import*as s from"expo-web-browser";import{CrossmintAuth as V}from"@crossmint/client-sdk-auth";import{useCrossmint as W,useWallet as st}from"@crossmint/client-sdk-react-base";import{useContext as N}from"react";function Z(){let n=N(U);if(!n)throw new Error("useCrossmintAuth must be used within a CrossmintAuthProvider");return n}import{Platform as q}from"react-native";import{jsx as Q}from"react/jsx-runtime";var B={google:null,twitter:null},G={crossmintAuth:void 0,logout:()=>{},jwt:void 0,user:void 0,status:"initializing",getUser:()=>{},loginWithOAuth:()=>Promise.resolve(),createAuthSession:()=>Promise.resolve()},U=_(G);function ht({children:n,onLoginSuccess:i,refreshRoute:h,logoutRoute:v,customStorageProvider:d,appSchema:g}){let[p,f]=C(void 0),{crossmint:o,setJwt:m}=W("CrossmintAuthProvider must be used within CrossmintProvider"),[E,k]=C(B),w=H(null),u=T(()=>d!=null?d:new j,[d]),O=Array.isArray(g)?g[0]:g,e=T(()=>{if(!w.current){let t={callbacks:{onLogout:()=>{m(void 0),f(void 0)},onTokenRefresh:r=>{m(r.jwt),f(r.user)}},refreshRoute:h,logoutRoute:v,storageProvider:u};w.current=V.from(o,t)}return w.current},[u]),[z,D]=C(!1),x=P(()=>{i==null||i()},[i]);y(()=>{o.jwt==null&&(u==null||u.get("jwt").then(t=>{t!=null&&m(t)})),D(!0)},[o.jwt,m,u]),y(()=>{o.jwt!=null&&x()},[o.jwt,x]);let I=()=>{e.logout()},S=P(()=>l(this,null,function*(){try{let r=Object.keys(B).map(a=>l(this,null,function*(){let A=yield e==null?void 0:e.getOAuthUrl(a,{appSchema:O});return{[a]:A}})),c=Object.assign({},...yield Promise.all(r));k(c)}catch(t){console.error(t)}}),[e]);y(()=>{p==null&&S()},[S,p]);let K=()=>z?o.jwt!=null?"logged-in":"logged-out":"initializing",F=()=>l(this,null,function*(){if(o.jwt==null){console.log("User not logged in");return}let t=yield e.getUser();f(t)}),J=t=>l(this,null,function*(){var r;try{let c=(r=E[t])!=null?r:yield e.getOAuthUrl(t,{appSchema:O});yield s.warmUpAsync();let a=new URL(c);if(t==="google"&&a.searchParams.append("provider_prompt","select_account"),q.OS==="android")yield s.openBrowserAsync(a.toString());else{let A=yield s.openAuthSessionAsync(a.toString());A.type==="success"&&(yield b(A.url))}yield s.coolDownAsync()}catch(c){console.error("[CrossmintAuthProvider] Error during OAuth login:",c)}}),b=P(t=>l(this,null,function*(){let r=t.includes("://")?L(t):t;if(r!=null)return yield e.handleRefreshAuthMaterial(r)}),[e]);return Q(U.Provider,{value:{crossmintAuth:e,logout:I,jwt:o.jwt,user:p,status:K(),getUser:F,loginWithOAuth:J,createAuthSession:b},children:n})}var L=n=>{let i=/[?&]oneTimeSecret=([^&#]+)/,h=n.match(i);return h?decodeURIComponent(h[1]):void 0};export{U as a,ht as b,Z as c,W as d,st as e};