@crossmint/client-sdk-react-native-ui 0.13.26 → 1.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-25EKKN3X.js +1 -0
- package/dist/{chunk-MW2OPOJA.js → chunk-2I3S32DJ.js} +1 -1
- package/dist/{chunk-KJ4KYGXG.mjs → chunk-2PYH2ARU.mjs} +1 -1
- package/dist/{chunk-ZI6CSNXG.mjs → chunk-3MRNET5P.mjs} +1 -1
- package/dist/{chunk-QN3RQEL7.js → chunk-6S2FUAUM.js} +1 -1
- package/dist/chunk-A2MEND3D.js +1 -0
- package/dist/chunk-F5O5W34O.mjs +1 -0
- package/dist/{chunk-FDRSKJYH.mjs → chunk-MSMMOMYT.mjs} +1 -1
- package/dist/chunk-OGYBEE5A.js +1 -0
- package/dist/{chunk-JP3BSC6Y.mjs → chunk-OMJSXGCP.mjs} +1 -1
- package/dist/chunk-PNHVW6FM.mjs +1 -0
- package/dist/chunk-RT4T7XAD.mjs +1 -0
- package/dist/chunk-TRKLIWST.js +1 -0
- package/dist/chunk-U2DIEEZH.mjs +1 -0
- package/dist/{chunk-KZCRAJ3M.js → chunk-VVMTHE5M.js} +1 -1
- package/dist/{chunk-EJSEWYXE.mjs → chunk-WGI454UE.mjs} +1 -1
- package/dist/{chunk-LY6WTUDM.js → chunk-XM7I5GOV.js} +1 -1
- package/dist/{chunk-BM3JBWNW.js → chunk-ZI76TANW.js} +1 -1
- package/dist/components/embed/index.js +1 -1
- package/dist/components/embed/index.mjs +1 -1
- package/dist/components/embed/v3/CrossmintEmbeddedCheckoutV3.js +1 -1
- package/dist/components/embed/v3/CrossmintEmbeddedCheckoutV3.mjs +1 -1
- package/dist/components/embed/v3/EmbeddedCheckoutV3WebView.js +1 -1
- package/dist/components/embed/v3/EmbeddedCheckoutV3WebView.mjs +1 -1
- package/dist/components/embed/v3/index.js +1 -1
- package/dist/components/embed/v3/index.mjs +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.mjs +1 -1
- package/dist/components/wallets/ExportPrivateKeyButton.js +1 -1
- package/dist/components/wallets/ExportPrivateKeyButton.mjs +1 -1
- package/dist/components/wallets/index.js +1 -1
- package/dist/components/wallets/index.mjs +1 -1
- package/dist/hooks/index.d.mts +2 -3
- package/dist/hooks/index.d.ts +2 -3
- package/dist/hooks/index.js +1 -1
- package/dist/hooks/index.mjs +1 -1
- package/dist/hooks/useAuth.d.mts +1 -2
- package/dist/hooks/useAuth.d.ts +1 -2
- package/dist/hooks/useAuth.js +1 -1
- package/dist/hooks/useAuth.mjs +1 -1
- package/dist/index.d.mts +3 -4
- package/dist/index.d.ts +3 -4
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/logger/init.js +1 -1
- package/dist/logger/init.mjs +1 -1
- package/dist/providers/CrossmintAuthProvider.js +1 -1
- package/dist/providers/CrossmintAuthProvider.mjs +1 -1
- package/dist/providers/CrossmintProvider.js +1 -1
- package/dist/providers/CrossmintProvider.mjs +1 -1
- package/dist/providers/CrossmintWalletProvider.d.mts +7 -0
- package/dist/providers/CrossmintWalletProvider.d.ts +7 -0
- package/dist/providers/CrossmintWalletProvider.js +1 -1
- package/dist/providers/CrossmintWalletProvider.mjs +1 -1
- package/dist/providers/index.d.mts +1 -0
- package/dist/providers/index.d.ts +1 -0
- package/dist/providers/index.js +1 -1
- package/dist/providers/index.mjs +1 -1
- package/dist/utils/createCrossmintApiClient.js +1 -1
- package/dist/utils/createCrossmintApiClient.mjs +1 -1
- package/package.json +16 -7
- package/dist/chunk-EF2YTIUF.mjs +0 -1
- package/dist/chunk-EF5KYLDO.js +0 -1
- package/dist/chunk-J477SX6P.mjs +0 -1
- package/dist/chunk-L34HCKFT.mjs +0 -1
- package/dist/chunk-LK3AO6AY.mjs +0 -1
- package/dist/chunk-MKCQJOIO.js +0 -1
- package/dist/chunk-SJTT7WAQ.js +0 -1
- package/dist/chunk-UA34B5QB.js +0 -1
- package/dist/chunk-UWG4HV23.mjs +0 -1
- package/dist/chunk-ZJKAPXBC.js +0 -1
- package/dist/hooks/useWalletEmailSigner.d.mts +0 -18
- package/dist/hooks/useWalletEmailSigner.d.ts +0 -18
- package/dist/hooks/useWalletEmailSigner.js +0 -1
- package/dist/hooks/useWalletEmailSigner.mjs +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var o={name:"@crossmint/client-sdk-react-native-ui",version:"1.0.0-beta.2",repository:"https://github.com/Crossmint/crossmint-sdk",license:"Apache-2.0",author:"Paella Labs Inc",sideEffects:!1,main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",files:["dist","app.plugin.js","LICENSE"],scripts:{build:"cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup",dev:"cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup --watch","generate:docs":"typedoc && node scripts/generate-reference.mjs"},dependencies:{"@crossmint/client-sdk-auth":"workspace:*","@crossmint/client-sdk-base":"workspace:*","@crossmint/client-sdk-react-base":"workspace:*","@crossmint/client-sdk-rn-window":"workspace:*","@crossmint/client-signers":"workspace:*","@crossmint/common-sdk-auth":"workspace:*","@crossmint/common-sdk-base":"workspace:*","@crossmint/wallets-sdk":"workspace:*","@solana/web3.js":"1.98.1",bs58:"^5.0.0","lodash.clonedeep":"4.5.0","lodash.isequal":"4.5.0","lucide-react-native":"0.548.0",mitt:"3.0.1","react-native-svg":"15.14.0",zod:"3.22.4"},devDependencies:{"@expo/config-plugins":"^9.0.17",typedoc:"0.28.16","@types/react":"19.1.10","expo-constants":"~18.0.9","expo-device":"~8.0.9","expo-secure-store":"~15.0.7","expo-web-browser":"~15.0.8"},optionalDependencies:{"@crossmint/expo-device-signer":"workspace:*"},peerDependencies:{"@crossmint/expo-device-signer":"0.0.2-beta.0","@expo/config-plugins":">=9.0.0","@solana/web3.js":"^1.98.1","expo-constants":">=17 <19","expo-device":">=7 <9","expo-secure-store":">=14 <16","expo-web-browser":">=14 <16",react:">=17.0.2","react-native":">=0.74.3","react-native-webview":">=13.15.0 <14"},peerDependenciesMeta:{"@crossmint/expo-device-signer":{optional:!0}}};exports.a = o;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk25EKKN3Xjs = require('./chunk-25EKKN3X.js');var _commonsdkbase = require('@crossmint/common-sdk-base');function a(i,t){return new (0, _commonsdkbase.CrossmintApiClient)(i,{internalConfig:{sdkMetadata:{name:"@crossmint/client-sdk-react-native-ui",version:_chunk25EKKN3Xjs.a.version},apiKeyExpectations:t}})}exports.a = a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as o}from"./chunk-
|
|
1
|
+
import{a as o}from"./chunk-OMJSXGCP.mjs";import{a as e}from"./chunk-PSSAAY7D.mjs";import{jsx as t}from"react/jsx-runtime";function i(d){return t(o,e({},d))}export{i as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as r}from"./chunk-
|
|
1
|
+
import{a as r}from"./chunk-RT4T7XAD.mjs";import{SdkLogger as C,ReactNativeDatadogSink as R,validateAPIKey as S}from"@crossmint/common-sdk-base";import{AppState as b}from"react-native";import D from"expo-constants";import*as e from"expo-device";function _(n,i){var s,c,f,g,v,m,u,l,p,k,L;let t=S(n);if(!t.isValid)throw new Error(`Invalid API key: ${t.message}`);let{environment:d,projectId:I}=t,a=new C({packageName:r.name,packageVersion:r.version,environment:d,projectId:I,platform:"react-native",consoleLogLevel:i}),N=(m=(v=(c=(s=D.expoConfig)==null?void 0:s.ios)==null?void 0:c.bundleIdentifier)!=null?v:(g=(f=D.expoConfig)==null?void 0:f.android)==null?void 0:g.package)!=null?m:void 0,o={};e!=null&&(o.device=(p=(l=(u=e.modelName)!=null?u:e.deviceName)!=null?l:e.brand)!=null?p:void 0,o.os_version=(k=e.osVersion)!=null?k:void 0,o.os_name=(L=e.osName)!=null?L:void 0);let h=new R(d,N,o);return a.addSink(h),w(a),a}function w(n){b.addEventListener("change",i=>{(i==="background"||i==="inactive")&&typeof n.flush=="function"&&n.flush()})}export{_ as a};
|
|
@@ -1 +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
|
|
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 _chunk25EKKN3Xjs = require('./chunk-25EKKN3X.js');var _commonsdkbase = require('@crossmint/common-sdk-base');var _reactnative = require('react-native');var _expoconstants = require('expo-constants'); var _expoconstants2 = _interopRequireDefault(_expoconstants);var _expodevice = require('expo-device'); var e = _interopRequireWildcard(_expodevice);function P(n,i){var s,c,f,g,v,m,u,l,p,k,L;let t=_commonsdkbase.validateAPIKey.call(void 0, n);if(!t.isValid)throw new Error(`Invalid API key: ${t.message}`);let{environment:d,projectId:I}=t,a=new (0, _commonsdkbase.SdkLogger)({packageName:_chunk25EKKN3Xjs.a.name,packageVersion:_chunk25EKKN3Xjs.a.version,environment:d,projectId:I,platform:"react-native",consoleLogLevel:i}),N=(m=(v=(c=(s=_expoconstants2.default.expoConfig)==null?void 0:s.ios)==null?void 0:c.bundleIdentifier)!=null?v:(g=(f=_expoconstants2.default.expoConfig)==null?void 0:f.android)==null?void 0:g.package)!=null?m:void 0,o={};e!=null&&(o.device=(p=(l=(u=e.modelName)!=null?u:e.deviceName)!=null?l:e.brand)!=null?p:void 0,o.os_version=(k=e.osVersion)!=null?k:void 0,o.os_name=(L=e.osName)!=null?L:void 0);let h=new (0, _commonsdkbase.ReactNativeDatadogSink)(d,N,o);return a.addSink(h),w(a),a}function w(n){_reactnative.AppState.addEventListener("change",i=>{(i==="background"||i==="inactive")&&typeof n.flush=="function"&&n.flush()})}exports.a = P;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _react = require('react');var _reactnative = require('react-native');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');var _clientsigners = require('@crossmint/client-signers');var _walletssdk = require('@crossmint/wallets-sdk');var _commonsdkbase = require('@crossmint/common-sdk-base');var _clientsdkrnwindow = require('@crossmint/client-sdk-rn-window');var _jsxruntime = require('react/jsx-runtime');function j({appearance:K}){let{wallet:r}=_clientsdkreactbase.useWallet.call(void 0, ),{crossmint:i}=_clientsdkreactbase.useCrossmint.call(void 0, ),a=_react.useRef.call(void 0, null),l=_react.useRef.call(void 0, null),[c,w]=_react.useState.call(void 0, "");_react.useEffect.call(void 0, ()=>{if(i!=null)try{let e=_commonsdkbase.validateAPIKey.call(void 0, i.apiKey);if(e.isValid){let t=_clientsigners.environmentUrlConfig[e.environment];w(`${t}/export`)}}catch(e){console.error("Failed to get TEE URL:",e)}},[i]);let E=_react.useCallback.call(void 0, e=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){if(!(r==null||a.current==null||e.nativeEvent.loading))try{if(r.signer!=null&&_walletssdk.isExportableSigner.call(void 0, r.signer)){let t=new (0, _clientsdkrnwindow.WebViewParent)(a,{incomingEvents:_clientsigners.exportSignerOutboundEvents,outgoingEvents:_clientsigners.exportSignerInboundEvents});l.current=t,yield t.handshakeWithChild(),yield r.signer._exportPrivateKey(t)}}catch(t){console.error("Failed to export private key:",t),_reactnative.Alert.alert("Export Failed","Failed to export private key. Please try again.")}}),[r]),d=_react.useCallback.call(void 0, e=>{let{nativeEvent:t}=e;console.error("WebView error:",t),_reactnative.Alert.alert("Export Failed","Failed to load export interface. Please try again.")},[]),m=_react.useCallback.call(void 0, e=>{l.current&&l.current.handleMessage(e)},[]);return c===""||r==null||r.signer==null||!_walletssdk.isExportableSigner.call(void 0, r.signer)?null:_jsxruntime.jsx.call(void 0, _reactnative.View,{style:n.webViewContainer,children:_jsxruntime.jsx.call(void 0, _clientsdkrnwindow.RNWebView,{ref:a,source:{uri:c},style:n.webView,javaScriptEnabled:!0,domStorageEnabled:!0,onLoadEnd:E,onError:d,onHttpError:d,onMessage:m,startInLoadingState:!0,renderLoading:()=>_jsxruntime.jsx.call(void 0, _reactnative.View,{style:n.loadingContainer,children:_jsxruntime.jsx.call(void 0, _reactnative.Text,{style:n.loadingText,children:"Loading..."})})})})}var n=_reactnative.StyleSheet.create({webViewContainer:{height:56,borderWidth:1,borderColor:"#E5E5E5",borderRadius:12,overflow:"hidden"},webView:{flex:1},loadingContainer:{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:"#F5F5F5"},loadingText:{fontSize:16,color:"#666666"}});exports.a = j;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as v}from"./chunk-ZCKUSOGC.mjs";import{d as S,e as c}from"./chunk-PSSAAY7D.mjs";import{createContext as I,useEffect as N,useMemo as L,useState as M,useCallback as W}from"react";import*as n from"expo-web-browser";import p from"expo-constants";import{Platform as T}from"react-native";import{CrossmintAuthBaseProvider as z,useCrossmintAuthBase as F}from"@crossmint/client-sdk-react-base";import{useCrossmint as b,useWallet as Y,useWalletOtpSigner as Z}from"@crossmint/client-sdk-react-base";import{useContext as k}from"react";function R(){let r=k(w);if(r==null)throw new Error("useCrossmintAuth must be used within a CrossmintAuthProvider");return r}import{jsx as d}from"react/jsx-runtime";var B={google:null,twitter:null},G={crossmintAuth:void 0,login:()=>{},logout:()=>c(void 0,null,function*(){}),jwt:void 0,user:void 0,status:"initializing",getUser:()=>{},loginWithOAuth:()=>Promise.resolve(),createAuthSession:()=>Promise.resolve(null)},w=I(G);function V({children:r}){let{setJwt:e}=b(),{jwt:t}=R();return N(()=>{e(t)},[e,t]),r}function _({children:r,appSchema:e}){let t=F(),[h,g]=M(B),[f,i]=M(!1),A=Array.isArray(e)?e[0]:e,P=p.executionEnvironment==="storeClient"||p.appOwnership==="expo"||!!p.expoVersion?"exp://127.0.0.1:8081":A,y=W(()=>c(this,null,function*(){try{let u=Object.keys(B).map(s=>c(this,null,function*(){var m;let l=yield(m=t.crossmintAuth)==null?void 0:m.getOAuthUrl(s,{appSchema:P});return{[s]:l}})),a=Object.assign({},...yield Promise.all(u));g(a)}catch(o){console.error(o)}}),[t.crossmintAuth,P]);N(()=>{t.user==null&&y()},[y,t.user]);let E=()=>t.status==="initializing"?"initializing":f?"in-progress":t.jwt!=null?"logged-in":"logged-out",j=o=>c(this,null,function*(){var u,a;try{i(!0);let s=(a=h[o])!=null?a:yield(u=t.crossmintAuth)==null?void 0:u.getOAuthUrl(o,{appSchema:P});yield n.warmUpAsync();let l=new URL(s);if(o==="google"&&l.searchParams.append("provider_prompt","select_account"),T.OS==="android")yield n.openBrowserAsync(l.toString());else{let m=yield n.openAuthSessionAsync(l.toString());m.type==="success"&&(yield x(m.url))}yield n.coolDownAsync()}catch(s){throw console.error("[CrossmintAuthProvider] Error during OAuth login:",s),new Error(`Error during OAuth login: ${s}`)}finally{i(!1)}}),x=W(o=>c(this,null,function*(){var a;let u=o.includes("://")?D(o):o;if(u!=null)try{return i(!0),yield(a=t.crossmintAuth)==null?void 0:a.handleRefreshAuthMaterial(u)}catch(s){throw s}finally{i(!1)}return null}),[t.crossmintAuth]);return d(w.Provider,{value:{crossmintAuth:t.crossmintAuth,logout:t.logout,jwt:t.jwt,user:t.user,status:E(),getUser:t.getUser,login:()=>{},loginWithOAuth:j,createAuthSession:x},children:d(V,{children:r})})}function at(t){var h=t,{children:r}=h,e=S(h,["children"]);var i,A;let g=(A=e.appSchema)!=null?A:(i=p.expoConfig)==null?void 0:i.scheme,f=L(()=>{var C;return(C=e.storageProvider)!=null?C:new v},[e.storageProvider]);return d(z,{onLoginSuccess:e.onLoginSuccess,refreshRoute:e.refreshRoute,logoutRoute:e.logoutRoute,storageProvider:f,children:d(_,{appSchema:g,children:r})})}var D=r=>{let e=/[?&]oneTimeSecret=([^&#]+)/,t=r.match(e);return t?decodeURIComponent(t[1]):void 0};export{w as a,at as b,R as c,b as d,Y as e,Z as f};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as n}from"./chunk-
|
|
1
|
+
import{a as n}from"./chunk-RT4T7XAD.mjs";import{CrossmintApiClient as e}from"@crossmint/common-sdk-base";function C(i,t){return new e(i,{internalConfig:{sdkMetadata:{name:"@crossmint/client-sdk-react-native-ui",version:n.version},apiKeyExpectations:t}})}export{C as a};
|
|
@@ -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 _chunkSHTETN4Cjs = require('./chunk-SHTETN4C.js');var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _react = require('react');var _expowebbrowser = require('expo-web-browser'); var n = _interopRequireWildcard(_expowebbrowser);var _expoconstants = require('expo-constants'); var _expoconstants2 = _interopRequireDefault(_expoconstants);var _reactnative = require('react-native');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');function U(){let r=_react.useContext.call(void 0, w);if(r==null)throw new Error("useCrossmintAuth must be used within a CrossmintAuthProvider");return r}var _jsxruntime = require('react/jsx-runtime');var W={google:null,twitter:null},F={crossmintAuth:void 0,login:()=>{},logout:()=>_chunkJ42HASCIjs.e.call(void 0, void 0,null,function*(){}),jwt:void 0,user:void 0,status:"initializing",getUser:()=>{},loginWithOAuth:()=>Promise.resolve(),createAuthSession:()=>Promise.resolve(null)},w= exports.a =_react.createContext.call(void 0, F);function G({children:r}){let{setJwt:e}=_clientsdkreactbase.useCrossmint.call(void 0, ),{jwt:t}=U();return _react.useEffect.call(void 0, ()=>{e(t)},[e,t]),r}function V({children:r,appSchema:e}){let t=_clientsdkreactbase.useCrossmintAuthBase.call(void 0, ),[h,g]=_react.useState.call(void 0, W),[f,i]=_react.useState.call(void 0, !1),A=Array.isArray(e)?e[0]:e,P=_expoconstants2.default.executionEnvironment==="storeClient"||_expoconstants2.default.appOwnership==="expo"||!!_expoconstants2.default.expoVersion?"exp://127.0.0.1:8081":A,y=_react.useCallback.call(void 0, ()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){try{let u=Object.keys(W).map(s=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var m;let l=yield(m=t.crossmintAuth)==null?void 0:m.getOAuthUrl(s,{appSchema:P});return{[s]:l}})),a=Object.assign({},...yield Promise.all(u));g(a)}catch(o){console.error(o)}}),[t.crossmintAuth,P]);_react.useEffect.call(void 0, ()=>{t.user==null&&y()},[y,t.user]);let N=()=>t.status==="initializing"?"initializing":f?"in-progress":t.jwt!=null?"logged-in":"logged-out",E=o=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var u,a;try{i(!0);let s=(a=h[o])!=null?a:yield(u=t.crossmintAuth)==null?void 0:u.getOAuthUrl(o,{appSchema:P});yield n.warmUpAsync();let l=new URL(s);if(o==="google"&&l.searchParams.append("provider_prompt","select_account"),_reactnative.Platform.OS==="android")yield n.openBrowserAsync(l.toString());else{let m=yield n.openAuthSessionAsync(l.toString());m.type==="success"&&(yield x(m.url))}yield n.coolDownAsync()}catch(s){throw console.error("[CrossmintAuthProvider] Error during OAuth login:",s),new Error(`Error during OAuth login: ${s}`)}finally{i(!1)}}),x=_react.useCallback.call(void 0, o=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var a;let u=o.includes("://")?_(o):o;if(u!=null)try{return i(!0),yield(a=t.crossmintAuth)==null?void 0:a.handleRefreshAuthMaterial(u)}catch(s){throw s}finally{i(!1)}return null}),[t.crossmintAuth]);return _jsxruntime.jsx.call(void 0, w.Provider,{value:{crossmintAuth:t.crossmintAuth,logout:t.logout,jwt:t.jwt,user:t.user,status:N(),getUser:t.getUser,login:()=>{},loginWithOAuth:E,createAuthSession:x},children:_jsxruntime.jsx.call(void 0, G,{children:r})})}function ut(t){var h=t,{children:r}=h,e=_chunkJ42HASCIjs.d.call(void 0, h,["children"]);var i,A;let g=(A=e.appSchema)!=null?A:(i=_expoconstants2.default.expoConfig)==null?void 0:i.scheme,f=_react.useMemo.call(void 0, ()=>{var C;return(C=e.storageProvider)!=null?C:new _chunkSHTETN4Cjs.a},[e.storageProvider]);return _jsxruntime.jsx.call(void 0, _clientsdkreactbase.CrossmintAuthBaseProvider,{onLoginSuccess:e.onLoginSuccess,refreshRoute:e.refreshRoute,logoutRoute:e.logoutRoute,storageProvider:f,children:_jsxruntime.jsx.call(void 0, V,{appSchema:g,children:r})})}var _=r=>{let e=/[?&]oneTimeSecret=([^&#]+)/,t=r.match(e);return t?decodeURIComponent(t[1]):void 0};exports.a = w; exports.b = ut; exports.c = U; exports.d = _clientsdkreactbase.useCrossmint; exports.e = _clientsdkreactbase.useWallet; exports.f = _clientsdkreactbase.useWalletOtpSigner;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as h}from"./chunk-PCJMDUSI.mjs";import{a as y}from"./chunk-FX23A4BR.mjs";import{a as f}from"./chunk-
|
|
1
|
+
import{c as h}from"./chunk-PCJMDUSI.mjs";import{a as y}from"./chunk-FX23A4BR.mjs";import{a as f}from"./chunk-MSMMOMYT.mjs";import{a as p}from"./chunk-FFQ6EQCL.mjs";import{a as d,b as m}from"./chunk-PSSAAY7D.mjs";import{useCrossmint as S}from"@crossmint/client-sdk-react-base";import{useEffect as b,useRef as l,useState as g}from"react";import{View as W}from"react-native";import{crossmintEmbeddedCheckoutV3Service as I}from"@crossmint/client-sdk-base";import{RNWebView as A,WebViewParent as M}from"@crossmint/client-sdk-rn-window";import{embeddedCheckoutV3IncomingEvents as R,embeddedCheckoutV3OutgoingEvents as O}from"@crossmint/client-sdk-base";import{jsx as c,jsxs as L}from"react/jsx-runtime";function Y(t){var u;let[e,w]=g(null),[C,v]=g(0),E=l((u=t.payment.crypto.payer)==null?void 0:u.initialChain),n=l(t);if(U(t,n.current)){let r=d({},t),o=F(t,E.current);o.shouldPreserve&&(r.payment.crypto.payer=o.updatedPayer),n.current=r}let{crossmint:i}=S(),V=f(i,{usageOrigin:"client"}),P=I({apiClient:V}),s=l(null);b(()=>{let r=s.current;if(!r||e)return;let o=new M({current:r},{incomingEvents:R,outgoingEvents:O});w(o)},[s.current,e]),b(()=>{if(e==null)return;let r=a=>v(a.height);e.on("ui:height.changed",r);let o=a=>{p.emit("order:updated",a)};return e.on("order:updated",o),()=>{e.off("ui:height.changed"),e.off("order:updated")}},[e]);let k=r=>{e&&e.handleMessage(r)};return L(W,{style:{flex:1},children:[c(A,{ref:s,globals:i.appId?{crossmintAppId:i.appId}:void 0,source:{uri:P.iframe.getUrl(n.current)},onMessage:k,style:{width:"100%",minWidth:"100%",height:C,backgroundColor:"transparent",overflow:"hidden",opacity:1,padding:0,boxShadow:"none",borderWidth:0,transform:[{translateX:0}]},allowsInlineMediaPlayback:!0,mediaPlaybackRequiresUserAction:!1,allowsBackForwardNavigationGestures:!1,allowsLinkPreview:!1,scrollEnabled:!1,bounces:!1,showsHorizontalScrollIndicator:!1,showsVerticalScrollIndicator:!1,domStorageEnabled:!0,mixedContentMode:"always",allowFileAccess:!0,allowUniversalAccessFromFileURLs:!0,geolocationEnabled:!0,userAgent:h,paymentRequestEnabled:!0}),n.current.payment.crypto.enabled?n.current.payment.crypto.payer!=null?c(y,{payer:n.current.payment.crypto.payer,webViewClient:e}):c(H,{message:"If 'payment.crypto.enabled' is true, 'payment.crypto.payer' must be provided. Support for not providing a payer is not yet implemented."}):null]})}function U(t,e){return JSON.stringify(t)!==JSON.stringify(e)}function F(t,e){return t.payment.crypto.payer&&e!=null?{shouldPreserve:!0,updatedPayer:m(d({},t.payment.crypto.payer),{initialChain:e})}:{shouldPreserve:!1}}function H({message:t}){throw new Error(t)}export{Y as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as p}from"./chunk-PSSAAY7D.mjs";import{useState as v,useCallback as s,useRef as u,useEffect as y}from"react";import{View as g,Text as x,StyleSheet as V,Alert as f}from"react-native";import{useWallet as h,useCrossmint as C}from"@crossmint/client-sdk-react-base";import{environmentUrlConfig as W,exportSignerInboundEvents as P,exportSignerOutboundEvents as S}from"@crossmint/client-signers";import{isExportableSigner as b}from"@crossmint/wallets-sdk";import{validateAPIKey as F}from"@crossmint/common-sdk-base";import{WebViewParent as I,RNWebView as k}from"@crossmint/client-sdk-rn-window";import{jsx as o}from"react/jsx-runtime";function z({appearance:K}){let{wallet:r}=h(),{crossmint:i}=C(),a=u(null),l=u(null),[c,w]=v("");y(()=>{if(i!=null)try{let e=F(i.apiKey);if(e.isValid){let t=W[e.environment];w(`${t}/export`)}}catch(e){console.error("Failed to get TEE URL:",e)}},[i]);let E=s(e=>p(this,null,function*(){if(!(r==null||a.current==null||e.nativeEvent.loading))try{if(r.signer!=null&&b(r.signer)){let t=new I(a,{incomingEvents:S,outgoingEvents:P});l.current=t,yield t.handshakeWithChild(),yield r.signer._exportPrivateKey(t)}}catch(t){console.error("Failed to export private key:",t),f.alert("Export Failed","Failed to export private key. Please try again.")}}),[r]),d=s(e=>{let{nativeEvent:t}=e;console.error("WebView error:",t),f.alert("Export Failed","Failed to load export interface. Please try again.")},[]),m=s(e=>{l.current&&l.current.handleMessage(e)},[]);return c===""||r==null||r.signer==null||!b(r.signer)?null:o(g,{style:n.webViewContainer,children:o(k,{ref:a,source:{uri:c},style:n.webView,javaScriptEnabled:!0,domStorageEnabled:!0,onLoadEnd:E,onError:d,onHttpError:d,onMessage:m,startInLoadingState:!0,renderLoading:()=>o(g,{style:n.loadingContainer,children:o(x,{style:n.loadingText,children:"Loading..."})})})})}var n=V.create({webViewContainer:{height:56,borderWidth:1,borderColor:"#E5E5E5",borderRadius:12,overflow:"hidden"},webView:{flex:1},loadingContainer:{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:"#F5F5F5"},loadingText:{fontSize:16,color:"#666666"}});export{z as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var o={name:"@crossmint/client-sdk-react-native-ui",version:"1.0.0-beta.2",repository:"https://github.com/Crossmint/crossmint-sdk",license:"Apache-2.0",author:"Paella Labs Inc",sideEffects:!1,main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",files:["dist","app.plugin.js","LICENSE"],scripts:{build:"cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup",dev:"cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup --watch","generate:docs":"typedoc && node scripts/generate-reference.mjs"},dependencies:{"@crossmint/client-sdk-auth":"workspace:*","@crossmint/client-sdk-base":"workspace:*","@crossmint/client-sdk-react-base":"workspace:*","@crossmint/client-sdk-rn-window":"workspace:*","@crossmint/client-signers":"workspace:*","@crossmint/common-sdk-auth":"workspace:*","@crossmint/common-sdk-base":"workspace:*","@crossmint/wallets-sdk":"workspace:*","@solana/web3.js":"1.98.1",bs58:"^5.0.0","lodash.clonedeep":"4.5.0","lodash.isequal":"4.5.0","lucide-react-native":"0.548.0",mitt:"3.0.1","react-native-svg":"15.14.0",zod:"3.22.4"},devDependencies:{"@expo/config-plugins":"^9.0.17",typedoc:"0.28.16","@types/react":"19.1.10","expo-constants":"~18.0.9","expo-device":"~8.0.9","expo-secure-store":"~15.0.7","expo-web-browser":"~15.0.8"},optionalDependencies:{"@crossmint/expo-device-signer":"workspace:*"},peerDependencies:{"@crossmint/expo-device-signer":"0.0.2-beta.0","@expo/config-plugins":">=9.0.0","@solana/web3.js":"^1.98.1","expo-constants":">=17 <19","expo-device":">=7 <9","expo-secure-store":">=14 <16","expo-web-browser":">=14 <16",react:">=17.0.2","react-native":">=0.74.3","react-native-webview":">=13.15.0 <14"},peerDependenciesMeta:{"@crossmint/expo-device-signer":{optional:!0}}};export{o as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXM7I5GOVjs = require('./chunk-XM7I5GOV.js');var _chunkYJORUMPBjs = require('./chunk-YJORUMPB.js');var _chunkMVVSGLQLjs = require('./chunk-MVVSGLQL.js');var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _react = require('react');var _reactnative = require('react-native');var _clientsdkrnwindow = require('@crossmint/client-sdk-rn-window');var _clientsigners = require('@crossmint/client-signers');var _commonsdkbase = require('@crossmint/common-sdk-base');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');var _jsxruntime = require('react/jsx-runtime');var V=null;try{V=_chunkJ42HASCIjs.c.call(void 0, "@crossmint/expo-device-signer").NativeDeviceSignerKeyStorage}catch(p){}function ce({children:p,createOnLogin:G,appearance:K,headlessSigningFlow:D=!0,callbacks:z,deviceSignerKeyStorage:k}){let H=_react.useMemo.call(void 0, ()=>k!=null?k:V!=null?new V:void 0,[]),{crossmint:_}=_clientsdkreactbase.useCrossmint.call(void 0, "CrossmintWalletProvider must be used within CrossmintProvider"),n=_clientsdkreactbase.useLogger.call(void 0, _chunkXM7I5GOVjs.a),{apiKey:R,appId:E}=_,W=_react.useMemo.call(void 0, ()=>{let e=_commonsdkbase.validateAPIKey.call(void 0, R);if(!e.isValid)throw new Error("Invalid API key");return e},[R]),x=_react.useMemo.call(void 0, ()=>_clientsigners.environmentUrlConfig[W.environment],[W.environment]),f=_react.useRef.call(void 0, null),t=_react.useRef.call(void 0, null),[O,F]=_react.useState.call(void 0, !1),v=_react.useRef.call(void 0, !1),s=_react.useRef.call(void 0, !1),i=_react.useRef.call(void 0, 0),P=_react.useRef.call(void 0, 0),j=_react.useMemo.call(void 0, ()=>E!=null?{crossmintAppId:E}:{},[E]),l=_react.useCallback.call(void 0, e=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){if(t.current!=null){let r=t.current;if(s.current){n.info("react-native.wallet.webview.handshake.skip.in-progress",{trigger:e,generation:i.current});return}if(v.current&&r.isConnected){n.info("react-native.wallet.webview.handshake.skip.already-connected",{trigger:e,generation:i.current});return}s.current=!0;let a=Date.now();P.current=a;let o=i.current;try{n.info("react-native.wallet.webview.handshake.start",{trigger:e,generation:o,platform:_reactnative.Platform.OS}),v.current=!0,r.isConnected=!1,yield r.handshakeWithChild();let c=Date.now()-a;n.info("react-native.wallet.webview.handshake.success",{trigger:e,generation:o,durationMs:c})}catch(c){let d=Date.now()-a;o===i.current&&(v.current=!1),n.error("react-native.wallet.webview.handshake.error",{trigger:e,generation:o,durationMs:d,error:c instanceof Error?c.message:String(c)}),console.error("[CrossmintWalletProvider] Handshake error:",c)}finally{o===i.current&&(s.current=!1)}}else n.warn("react-native.wallet.webview.handshake.skip",{trigger:e,reason:"parent not initialized"})}),[n]);_react.useEffect.call(void 0, ()=>{f.current!=null&&t.current==null&&(n.info("react-native.wallet.webview.initializing"),t.current=new (0, _clientsdkrnwindow.WebViewParent)(f,{incomingEvents:_clientsigners.signerOutboundEvents,outgoingEvents:_clientsigners.signerInboundEvents,handshakeOptions:{timeoutMs:3e4,intervalMs:100},recovery:{recoverableErrorCodes:[_clientsigners.SignerErrorCode.IndexedDbFatal]}}),n.info("react-native.wallet.webview.initialized"),l("eager"))},[O,n,l]);let B=_react.useCallback.call(void 0, ()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var e,r;n.info("react-native.wallet.webview.onLoadEnd",{handshakeInProgress:s.current,isConnected:(r=(e=t.current)==null?void 0:e.isConnected)!=null?r:!1,generation:i.current}),yield l("onLoadEnd")}),[n,l]),J=_react.useCallback.call(void 0, e=>{var o,c;let r=t.current;if(r==null)return;let a=e.nativeEvent.data;if(a==="frame-ready"){n.info("react-native.wallet.webview.frame-ready.received",{handshakeInProgress:s.current,isConnected:(c=(o=t.current)==null?void 0:o.isConnected)!=null?c:!1,generation:i.current,msSinceHandshakeStart:P.current>0?Date.now()-P.current:null}),l("frame-ready");return}try{let d=JSON.parse(a);if(d&&typeof d.type=="string"&&d.type.startsWith("console.")){let I=d.type.split(".")[1],M=(d.data||[]).map(u=>{try{return u==="[Function]"||u==="[Circular Reference]"||u==="[Unserializable Object]"?u:JSON.parse(u)}catch(fe){return u}}),m=`react-native.wallet.webview.console.${I}`,b={webview_args:M};switch(I){case"log":n.info(m,b);break;case"error":n.error(m,b);break;case"warn":n.warn(m,b);break;case"info":n.info(m,b);break;case"debug":n.debug(m,b);break;default:n.info("react-native.wallet.webview.console.unknown",{webview_method:I,webview_args:M})}return}}catch(d){}r.handleMessage(e)},[n,l]);return _jsxruntime.jsxs.call(void 0, _clientsdkreactbase.CrossmintWalletBaseProvider,{createOnLogin:G,appearance:K,headlessSigningFlow:D,initializeWebView:()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){n.info("react-native.wallet.webview.init.start"),F(!0);let e=0,r=100;for(;t.current==null&&e<r;)yield new Promise(a=>setTimeout(a,50)),e++;if(t.current==null)throw n.error("react-native.wallet.webview.init.timeout",{attempts:e}),new Error("WebView not ready or handshake incomplete");n.info("react-native.wallet.webview.init.success",{attempts:e})}),callbacks:z,renderUI:D?void 0:({emailSignerProps:e,phoneSignerProps:r})=>_jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[_jsxruntime.jsx.call(void 0, _chunkYJORUMPBjs.a,_chunkJ42HASCIjs.a.call(void 0, {},e)),_jsxruntime.jsx.call(void 0, _chunkMVVSGLQLjs.a,_chunkJ42HASCIjs.a.call(void 0, {},r))]}),clientTEEConnection:()=>{if(t.current==null)throw new Error("WebView not ready or handshake incomplete");return t.current},deviceSignerKeyStorage:H,children:[p,O&&_jsxruntime.jsx.call(void 0, _reactnative.View,{style:{position:"absolute",width:0,height:0,overflow:"hidden"},children:_jsxruntime.jsx.call(void 0, _clientsdkrnwindow.RNWebView,{ref:f,source:{uri:x},globals:j,onLoadEnd:B,onMessage:J,onError:e=>{console.error("[CrossmintWalletProvider] WebView error:",e.nativeEvent)},onHttpError:e=>{console.error("[CrossmintWalletProvider] WebView HTTP error:",e.nativeEvent)},onContentProcessDidTerminate:()=>{var r,a,o;let e=i.current;i.current++,n.warn("react-native.wallet.webview.process.terminated",{prevGeneration:e,newGeneration:i.current,wasConnected:(a=(r=t.current)==null?void 0:r.isConnected)!=null?a:!1,hadHandshakeInProgress:s.current}),v.current=!1,s.current=!1,t.current!=null&&(t.current.isConnected=!1),(o=f.current)==null||o.reload(),l("eager")},onRenderProcessGone:()=>{var r,a,o;let e=i.current;i.current++,n.warn("react-native.wallet.webview.process.renderGone",{prevGeneration:e,newGeneration:i.current,wasConnected:(a=(r=t.current)==null?void 0:r.isConnected)!=null?a:!1,hadHandshakeInProgress:s.current}),v.current=!1,s.current=!1,t.current!=null&&(t.current.isConnected=!1),(o=f.current)==null||o.reload(),l("eager")},style:{width:1,height:1},javaScriptCanOpenWindowsAutomatically:!1,thirdPartyCookiesEnabled:!1,sharedCookiesEnabled:!1,incognito:!1,setSupportMultipleWindows:!1,originWhitelist:[_clientsigners.environmentUrlConfig[W.environment]],cacheEnabled:!0,cacheMode:"LOAD_DEFAULT"})})]})}function Pe(p){return _jsxruntime.jsx.call(void 0, ce,_chunkJ42HASCIjs.a.call(void 0, {},p))}exports.a = Pe;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as L}from"./chunk-WGI454UE.mjs";import{a as T}from"./chunk-XNDIT72O.mjs";import{a as U}from"./chunk-3QSVHCEH.mjs";import{a as g,c as q,e as C}from"./chunk-PSSAAY7D.mjs";import{useCallback as S,useRef as w,useMemo as y,useEffect as $,useState as Q}from"react";import{Platform as X,View as Y}from"react-native";import{RNWebView as Z,WebViewParent as ee}from"@crossmint/client-sdk-rn-window";import{environmentUrlConfig as N,signerInboundEvents as ne,signerOutboundEvents as re,SignerErrorCode as te}from"@crossmint/client-signers";import{validateAPIKey as ae}from"@crossmint/common-sdk-base";import{CrossmintWalletBaseProvider as oe,useCrossmint as ie}from"@crossmint/client-sdk-react-base";import{useLogger as se}from"@crossmint/client-sdk-react-base";import{Fragment as le,jsx as h,jsxs as A}from"react/jsx-runtime";var V=null;try{V=q("@crossmint/expo-device-signer").NativeDeviceSignerKeyStorage}catch(p){}function ce({children:p,createOnLogin:G,appearance:K,headlessSigningFlow:D=!0,callbacks:z,deviceSignerKeyStorage:k}){let H=y(()=>k!=null?k:V!=null?new V:void 0,[]),{crossmint:_}=ie("CrossmintWalletProvider must be used within CrossmintProvider"),n=se(L),{apiKey:R,appId:E}=_,W=y(()=>{let e=ae(R);if(!e.isValid)throw new Error("Invalid API key");return e},[R]),x=y(()=>N[W.environment],[W.environment]),f=w(null),t=w(null),[O,F]=Q(!1),v=w(!1),s=w(!1),i=w(0),P=w(0),j=y(()=>E!=null?{crossmintAppId:E}:{},[E]),l=S(e=>C(this,null,function*(){if(t.current!=null){let r=t.current;if(s.current){n.info("react-native.wallet.webview.handshake.skip.in-progress",{trigger:e,generation:i.current});return}if(v.current&&r.isConnected){n.info("react-native.wallet.webview.handshake.skip.already-connected",{trigger:e,generation:i.current});return}s.current=!0;let a=Date.now();P.current=a;let o=i.current;try{n.info("react-native.wallet.webview.handshake.start",{trigger:e,generation:o,platform:X.OS}),v.current=!0,r.isConnected=!1,yield r.handshakeWithChild();let c=Date.now()-a;n.info("react-native.wallet.webview.handshake.success",{trigger:e,generation:o,durationMs:c})}catch(c){let d=Date.now()-a;o===i.current&&(v.current=!1),n.error("react-native.wallet.webview.handshake.error",{trigger:e,generation:o,durationMs:d,error:c instanceof Error?c.message:String(c)}),console.error("[CrossmintWalletProvider] Handshake error:",c)}finally{o===i.current&&(s.current=!1)}}else n.warn("react-native.wallet.webview.handshake.skip",{trigger:e,reason:"parent not initialized"})}),[n]);$(()=>{f.current!=null&&t.current==null&&(n.info("react-native.wallet.webview.initializing"),t.current=new ee(f,{incomingEvents:re,outgoingEvents:ne,handshakeOptions:{timeoutMs:3e4,intervalMs:100},recovery:{recoverableErrorCodes:[te.IndexedDbFatal]}}),n.info("react-native.wallet.webview.initialized"),l("eager"))},[O,n,l]);let B=S(()=>C(this,null,function*(){var e,r;n.info("react-native.wallet.webview.onLoadEnd",{handshakeInProgress:s.current,isConnected:(r=(e=t.current)==null?void 0:e.isConnected)!=null?r:!1,generation:i.current}),yield l("onLoadEnd")}),[n,l]),J=S(e=>{var o,c;let r=t.current;if(r==null)return;let a=e.nativeEvent.data;if(a==="frame-ready"){n.info("react-native.wallet.webview.frame-ready.received",{handshakeInProgress:s.current,isConnected:(c=(o=t.current)==null?void 0:o.isConnected)!=null?c:!1,generation:i.current,msSinceHandshakeStart:P.current>0?Date.now()-P.current:null}),l("frame-ready");return}try{let d=JSON.parse(a);if(d&&typeof d.type=="string"&&d.type.startsWith("console.")){let I=d.type.split(".")[1],M=(d.data||[]).map(u=>{try{return u==="[Function]"||u==="[Circular Reference]"||u==="[Unserializable Object]"?u:JSON.parse(u)}catch(fe){return u}}),m=`react-native.wallet.webview.console.${I}`,b={webview_args:M};switch(I){case"log":n.info(m,b);break;case"error":n.error(m,b);break;case"warn":n.warn(m,b);break;case"info":n.info(m,b);break;case"debug":n.debug(m,b);break;default:n.info("react-native.wallet.webview.console.unknown",{webview_method:I,webview_args:M})}return}}catch(d){}r.handleMessage(e)},[n,l]);return A(oe,{createOnLogin:G,appearance:K,headlessSigningFlow:D,initializeWebView:()=>C(this,null,function*(){n.info("react-native.wallet.webview.init.start"),F(!0);let e=0,r=100;for(;t.current==null&&e<r;)yield new Promise(a=>setTimeout(a,50)),e++;if(t.current==null)throw n.error("react-native.wallet.webview.init.timeout",{attempts:e}),new Error("WebView not ready or handshake incomplete");n.info("react-native.wallet.webview.init.success",{attempts:e})}),callbacks:z,renderUI:D?void 0:({emailSignerProps:e,phoneSignerProps:r})=>A(le,{children:[h(T,g({},e)),h(U,g({},r))]}),clientTEEConnection:()=>{if(t.current==null)throw new Error("WebView not ready or handshake incomplete");return t.current},deviceSignerKeyStorage:H,children:[p,O&&h(Y,{style:{position:"absolute",width:0,height:0,overflow:"hidden"},children:h(Z,{ref:f,source:{uri:x},globals:j,onLoadEnd:B,onMessage:J,onError:e=>{console.error("[CrossmintWalletProvider] WebView error:",e.nativeEvent)},onHttpError:e=>{console.error("[CrossmintWalletProvider] WebView HTTP error:",e.nativeEvent)},onContentProcessDidTerminate:()=>{var r,a,o;let e=i.current;i.current++,n.warn("react-native.wallet.webview.process.terminated",{prevGeneration:e,newGeneration:i.current,wasConnected:(a=(r=t.current)==null?void 0:r.isConnected)!=null?a:!1,hadHandshakeInProgress:s.current}),v.current=!1,s.current=!1,t.current!=null&&(t.current.isConnected=!1),(o=f.current)==null||o.reload(),l("eager")},onRenderProcessGone:()=>{var r,a,o;let e=i.current;i.current++,n.warn("react-native.wallet.webview.process.renderGone",{prevGeneration:e,newGeneration:i.current,wasConnected:(a=(r=t.current)==null?void 0:r.isConnected)!=null?a:!1,hadHandshakeInProgress:s.current}),v.current=!1,s.current=!1,t.current!=null&&(t.current.isConnected=!1),(o=f.current)==null||o.reload(),l("eager")},style:{width:1,height:1},javaScriptCanOpenWindowsAutomatically:!1,thirdPartyCookiesEnabled:!1,sharedCookiesEnabled:!1,incognito:!1,setSupportMultipleWindows:!1,originWhitelist:[N[W.environment]],cacheEnabled:!0,cacheMode:"LOAD_DEFAULT"})})]})}function Ie(p){return h(ce,g({},p))}export{Ie as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZI76TANWjs = require('./chunk-ZI76TANW.js');var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _jsxruntime = require('react/jsx-runtime');function s(d){return _jsxruntime.jsx.call(void 0, _chunkZI76TANWjs.a,_chunkJ42HASCIjs.a.call(void 0, {},d))}exports.a = s;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as m}from"./chunk-
|
|
1
|
+
import{a as m}from"./chunk-3MRNET5P.mjs";import{useMemo as v}from"react";import d from"expo-constants";import{CrossmintProvider as f,createLoggerContext as P}from"@crossmint/client-sdk-react-base";import{jsx as p}from"react/jsx-runtime";var l=P();function N({children:a,apiKey:o,overrideBaseUrl:C,consoleLogLevel:r}){var e,t,i,s,n;let g=v(()=>m(o,r),[o,r]),c=(n=(t=(e=d.expoConfig)==null?void 0:e.ios)==null?void 0:t.bundleIdentifier)!=null?n:(s=(i=d.expoConfig)==null?void 0:i.android)==null?void 0:s.package;return p(l.Provider,{value:g,children:p(f,{apiKey:o,appId:c,overrideBaseUrl:C,children:a})})}export{l as a,N as b};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunk6S2FUAUMjs = require('./chunk-6S2FUAUM.js');var _react = require('react');var _expoconstants = require('expo-constants'); var _expoconstants2 = _interopRequireDefault(_expoconstants);var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');var _jsxruntime = require('react/jsx-runtime');var l=_clientsdkreactbase.createLoggerContext.call(void 0, );function I({children:a,apiKey:o,overrideBaseUrl:C,consoleLogLevel:r}){var e,t,i,s,n;let g=_react.useMemo.call(void 0, ()=>_chunk6S2FUAUMjs.a.call(void 0, o,r),[o,r]),c=(n=(t=(e=_expoconstants2.default.expoConfig)==null?void 0:e.ios)==null?void 0:t.bundleIdentifier)!=null?n:(s=(i=_expoconstants2.default.expoConfig)==null?void 0:i.android)==null?void 0:s.package;return _jsxruntime.jsx.call(void 0, l.Provider,{value:g,children:_jsxruntime.jsx.call(void 0, _clientsdkreactbase.CrossmintProvider,{apiKey:o,appId:c,overrideBaseUrl:C,children:a})})}exports.a = l; exports.b = I;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkYQEWHOQ7js = require('./chunk-YQEWHOQ7.js');var _chunkVACQTZRTjs = require('./chunk-VACQTZRT.js');var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkYQEWHOQ7js = require('./chunk-YQEWHOQ7.js');var _chunkVACQTZRTjs = require('./chunk-VACQTZRT.js');var _chunk2I3S32DJjs = require('./chunk-2I3S32DJ.js');var _chunk2D2RJCVXjs = require('./chunk-2D2RJCVX.js');var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');var _react = require('react');var _reactnative = require('react-native');var _clientsdkbase = require('@crossmint/client-sdk-base');var _clientsdkrnwindow = require('@crossmint/client-sdk-rn-window');var _jsxruntime = require('react/jsx-runtime');function Q(t){var u;let[e,w]=_react.useState.call(void 0, null),[C,v]=_react.useState.call(void 0, 0),E=_react.useRef.call(void 0, (u=t.payment.crypto.payer)==null?void 0:u.initialChain),n=_react.useRef.call(void 0, t);if(U(t,n.current)){let r=_chunkJ42HASCIjs.a.call(void 0, {},t),o=F(t,E.current);o.shouldPreserve&&(r.payment.crypto.payer=o.updatedPayer),n.current=r}let{crossmint:i}=_clientsdkreactbase.useCrossmint.call(void 0, ),V=_chunk2I3S32DJjs.a.call(void 0, i,{usageOrigin:"client"}),P=_clientsdkbase.crossmintEmbeddedCheckoutV3Service.call(void 0, {apiClient:V}),s=_react.useRef.call(void 0, null);_react.useEffect.call(void 0, ()=>{let r=s.current;if(!r||e)return;let o=new (0, _clientsdkrnwindow.WebViewParent)({current:r},{incomingEvents:_clientsdkbase.embeddedCheckoutV3IncomingEvents,outgoingEvents:_clientsdkbase.embeddedCheckoutV3OutgoingEvents});w(o)},[s.current,e]),_react.useEffect.call(void 0, ()=>{if(e==null)return;let r=a=>v(a.height);e.on("ui:height.changed",r);let o=a=>{_chunk2D2RJCVXjs.a.emit("order:updated",a)};return e.on("order:updated",o),()=>{e.off("ui:height.changed"),e.off("order:updated")}},[e]);let k=r=>{e&&e.handleMessage(r)};return _jsxruntime.jsxs.call(void 0, _reactnative.View,{style:{flex:1},children:[_jsxruntime.jsx.call(void 0, _clientsdkrnwindow.RNWebView,{ref:s,globals:i.appId?{crossmintAppId:i.appId}:void 0,source:{uri:P.iframe.getUrl(n.current)},onMessage:k,style:{width:"100%",minWidth:"100%",height:C,backgroundColor:"transparent",overflow:"hidden",opacity:1,padding:0,boxShadow:"none",borderWidth:0,transform:[{translateX:0}]},allowsInlineMediaPlayback:!0,mediaPlaybackRequiresUserAction:!1,allowsBackForwardNavigationGestures:!1,allowsLinkPreview:!1,scrollEnabled:!1,bounces:!1,showsHorizontalScrollIndicator:!1,showsVerticalScrollIndicator:!1,domStorageEnabled:!0,mixedContentMode:"always",allowFileAccess:!0,allowUniversalAccessFromFileURLs:!0,geolocationEnabled:!0,userAgent:_chunkYQEWHOQ7js.c,paymentRequestEnabled:!0}),n.current.payment.crypto.enabled?n.current.payment.crypto.payer!=null?_jsxruntime.jsx.call(void 0, _chunkVACQTZRTjs.a,{payer:n.current.payment.crypto.payer,webViewClient:e}):_jsxruntime.jsx.call(void 0, H,{message:"If 'payment.crypto.enabled' is true, 'payment.crypto.payer' must be provided. Support for not providing a payer is not yet implemented."}):null]})}function U(t,e){return JSON.stringify(t)!==JSON.stringify(e)}function F(t,e){return t.payment.crypto.payer&&e!=null?{shouldPreserve:!0,updatedPayer:_chunkJ42HASCIjs.b.call(void 0, _chunkJ42HASCIjs.a.call(void 0, {},t.payment.crypto.payer),{initialChain:e})}:{shouldPreserve:!1}}function H({message:t}){throw new Error(t)}exports.a = Q;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-DKQZSNOO.js');require('../../chunk-72MMCJ2E.js');var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-DKQZSNOO.js');require('../../chunk-72MMCJ2E.js');var _chunkVVMTHE5Mjs = require('../../chunk-VVMTHE5M.js');require('../../chunk-ZI76TANW.js');require('../../chunk-YQEWHOQ7.js');require('../../chunk-VACQTZRT.js');require('../../chunk-2I3S32DJ.js');require('../../chunk-25EKKN3X.js');require('../../chunk-2D2RJCVX.js');require('../../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunkVVMTHE5Mjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../../chunk-TIQGKXQA.mjs";import"../../chunk-MB7H3PBJ.mjs";import{a}from"../../chunk-
|
|
1
|
+
import"../../chunk-TIQGKXQA.mjs";import"../../chunk-MB7H3PBJ.mjs";import{a}from"../../chunk-2PYH2ARU.mjs";import"../../chunk-OMJSXGCP.mjs";import"../../chunk-PCJMDUSI.mjs";import"../../chunk-FX23A4BR.mjs";import"../../chunk-MSMMOMYT.mjs";import"../../chunk-RT4T7XAD.mjs";import"../../chunk-FFQ6EQCL.mjs";import"../../chunk-PSSAAY7D.mjs";export{a as CrossmintEmbeddedCheckout};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVVMTHE5Mjs = require('../../../chunk-VVMTHE5M.js');require('../../../chunk-ZI76TANW.js');require('../../../chunk-YQEWHOQ7.js');require('../../../chunk-VACQTZRT.js');require('../../../chunk-2I3S32DJ.js');require('../../../chunk-25EKKN3X.js');require('../../../chunk-2D2RJCVX.js');require('../../../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunkVVMTHE5Mjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../../chunk-
|
|
1
|
+
import{a}from"../../../chunk-2PYH2ARU.mjs";import"../../../chunk-OMJSXGCP.mjs";import"../../../chunk-PCJMDUSI.mjs";import"../../../chunk-FX23A4BR.mjs";import"../../../chunk-MSMMOMYT.mjs";import"../../../chunk-RT4T7XAD.mjs";import"../../../chunk-FFQ6EQCL.mjs";import"../../../chunk-PSSAAY7D.mjs";export{a as CrossmintEmbeddedCheckout};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZI76TANWjs = require('../../../chunk-ZI76TANW.js');require('../../../chunk-YQEWHOQ7.js');require('../../../chunk-VACQTZRT.js');require('../../../chunk-2I3S32DJ.js');require('../../../chunk-25EKKN3X.js');require('../../../chunk-2D2RJCVX.js');require('../../../chunk-J42HASCI.js');exports.EmbeddedCheckoutV3WebView = _chunkZI76TANWjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../../chunk-
|
|
1
|
+
import{a}from"../../../chunk-OMJSXGCP.mjs";import"../../../chunk-PCJMDUSI.mjs";import"../../../chunk-FX23A4BR.mjs";import"../../../chunk-MSMMOMYT.mjs";import"../../../chunk-RT4T7XAD.mjs";import"../../../chunk-FFQ6EQCL.mjs";import"../../../chunk-PSSAAY7D.mjs";export{a as EmbeddedCheckoutV3WebView};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../../chunk-72MMCJ2E.js');var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../../chunk-72MMCJ2E.js');var _chunkVVMTHE5Mjs = require('../../../chunk-VVMTHE5M.js');require('../../../chunk-ZI76TANW.js');require('../../../chunk-YQEWHOQ7.js');require('../../../chunk-VACQTZRT.js');require('../../../chunk-2I3S32DJ.js');require('../../../chunk-25EKKN3X.js');require('../../../chunk-2D2RJCVX.js');require('../../../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunkVVMTHE5Mjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../../../chunk-MB7H3PBJ.mjs";import{a}from"../../../chunk-
|
|
1
|
+
import"../../../chunk-MB7H3PBJ.mjs";import{a}from"../../../chunk-2PYH2ARU.mjs";import"../../../chunk-OMJSXGCP.mjs";import"../../../chunk-PCJMDUSI.mjs";import"../../../chunk-FX23A4BR.mjs";import"../../../chunk-MSMMOMYT.mjs";import"../../../chunk-RT4T7XAD.mjs";import"../../../chunk-FFQ6EQCL.mjs";import"../../../chunk-PSSAAY7D.mjs";export{a as CrossmintEmbeddedCheckout};
|
package/dist/components/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-2PX34LDU.js');require('../chunk-AJMHVVST.js');
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-2PX34LDU.js');require('../chunk-AJMHVVST.js');require('../chunk-DKQZSNOO.js');require('../chunk-72MMCJ2E.js');var _chunkVVMTHE5Mjs = require('../chunk-VVMTHE5M.js');require('../chunk-ZI76TANW.js');require('../chunk-YQEWHOQ7.js');require('../chunk-VACQTZRT.js');require('../chunk-I4D3YJW2.js');var _chunkA2MEND3Djs = require('../chunk-A2MEND3D.js');var _chunkYJORUMPBjs = require('../chunk-YJORUMPB.js');var _chunkMVVSGLQLjs = require('../chunk-MVVSGLQL.js');require('../chunk-F7VXWATP.js');require('../chunk-DC5HCBPK.js');require('../chunk-EI5LOD4Y.js');require('../chunk-2I3S32DJ.js');require('../chunk-25EKKN3X.js');require('../chunk-2D2RJCVX.js');require('../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunkVVMTHE5Mjs.a; exports.EmailSignersDialog = _chunkYJORUMPBjs.a; exports.ExportPrivateKeyButton = _chunkA2MEND3Djs.a; exports.PhoneSignersDialog = _chunkMVVSGLQLjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../chunk-UBHIBMTA.mjs";import"../chunk-5CLFJLE4.mjs";import
|
|
1
|
+
import"../chunk-UBHIBMTA.mjs";import"../chunk-5CLFJLE4.mjs";import"../chunk-TIQGKXQA.mjs";import"../chunk-MB7H3PBJ.mjs";import{a as c}from"../chunk-2PYH2ARU.mjs";import"../chunk-OMJSXGCP.mjs";import"../chunk-PCJMDUSI.mjs";import"../chunk-FX23A4BR.mjs";import"../chunk-J7Q2R6UH.mjs";import{a as d}from"../chunk-PNHVW6FM.mjs";import{a}from"../chunk-XNDIT72O.mjs";import{a as b}from"../chunk-3QSVHCEH.mjs";import"../chunk-D5QADN6Z.mjs";import"../chunk-YLJDAK2S.mjs";import"../chunk-7USVT6EZ.mjs";import"../chunk-MSMMOMYT.mjs";import"../chunk-RT4T7XAD.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-PSSAAY7D.mjs";export{c as CrossmintEmbeddedCheckout,a as EmailSignersDialog,d as ExportPrivateKeyButton,b as PhoneSignersDialog};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkA2MEND3Djs = require('../../chunk-A2MEND3D.js');require('../../chunk-J42HASCI.js');exports.ExportPrivateKeyButton = _chunkA2MEND3Djs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-PNHVW6FM.mjs";import"../../chunk-PSSAAY7D.mjs";export{a as ExportPrivateKeyButton};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-AJMHVVST.js');var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-AJMHVVST.js');var _chunkA2MEND3Djs = require('../../chunk-A2MEND3D.js');require('../../chunk-J42HASCI.js');exports.ExportPrivateKeyButton = _chunkA2MEND3Djs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../../chunk-5CLFJLE4.mjs";import{a}from"../../chunk-
|
|
1
|
+
import"../../chunk-5CLFJLE4.mjs";import{a}from"../../chunk-PNHVW6FM.mjs";import"../../chunk-PSSAAY7D.mjs";export{a as ExportPrivateKeyButton};
|
package/dist/hooks/index.d.mts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
export { useCrossmint, useWallet } from '@crossmint/client-sdk-react-base';
|
|
2
|
-
export { EmailSignerFunctions, useWalletEmailSigner } from './useWalletEmailSigner.mjs';
|
|
1
|
+
export { OtpSignerFunctions, useCrossmint, useWallet, useWalletOtpSigner } from '@crossmint/client-sdk-react-base';
|
|
3
2
|
export { CrossmintCheckoutContext, CrossmintCheckoutProvider, useCrossmintCheckout } from './useCrossmintCheckout.mjs';
|
|
4
|
-
export {
|
|
3
|
+
export { useCrossmintAuth } from './useAuth.mjs';
|
|
5
4
|
import 'react/jsx-runtime';
|
|
6
5
|
import 'react';
|
|
7
6
|
import '@crossmint/client-sdk-base';
|
package/dist/hooks/index.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
export { useCrossmint, useWallet } from '@crossmint/client-sdk-react-base';
|
|
2
|
-
export { EmailSignerFunctions, useWalletEmailSigner } from './useWalletEmailSigner.js';
|
|
1
|
+
export { OtpSignerFunctions, useCrossmint, useWallet, useWalletOtpSigner } from '@crossmint/client-sdk-react-base';
|
|
3
2
|
export { CrossmintCheckoutContext, CrossmintCheckoutProvider, useCrossmintCheckout } from './useCrossmintCheckout.js';
|
|
4
|
-
export {
|
|
3
|
+
export { useCrossmintAuth } from './useAuth.js';
|
|
5
4
|
import 'react/jsx-runtime';
|
|
6
5
|
import 'react';
|
|
7
6
|
import '@crossmint/client-sdk-base';
|
package/dist/hooks/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOGYBEE5Ajs = require('../chunk-OGYBEE5A.js');require('../chunk-SHTETN4C.js');var _chunk77GXCNDPjs = require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-J42HASCI.js');exports.CrossmintCheckoutProvider = _chunk77GXCNDPjs.a; exports.useCrossmint = _chunkOGYBEE5Ajs.d; exports.useCrossmintAuth = _chunkOGYBEE5Ajs.c; exports.useCrossmintCheckout = _chunk77GXCNDPjs.b; exports.useWallet = _chunkOGYBEE5Ajs.e; exports.useWalletOtpSigner = _chunkOGYBEE5Ajs.f;
|
package/dist/hooks/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c
|
|
1
|
+
import{c,d,e,f}from"../chunk-F5O5W34O.mjs";import"../chunk-ZCKUSOGC.mjs";import{a,b}from"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-PSSAAY7D.mjs";export{a as CrossmintCheckoutProvider,d as useCrossmint,c as useCrossmintAuth,b as useCrossmintCheckout,e as useWallet,f as useWalletOtpSigner};
|
package/dist/hooks/useAuth.d.mts
CHANGED
|
@@ -6,6 +6,5 @@ interface RNCrossmintAuthContext extends CrossmintAuthBaseContextType {
|
|
|
6
6
|
createAuthSession: (urlOrOneTimeSecret: string) => Promise<AuthMaterialWithUser | null>;
|
|
7
7
|
}
|
|
8
8
|
declare function useCrossmintAuth(): RNCrossmintAuthContext;
|
|
9
|
-
declare const useAuth: typeof useCrossmintAuth;
|
|
10
9
|
|
|
11
|
-
export {
|
|
10
|
+
export { useCrossmintAuth };
|
package/dist/hooks/useAuth.d.ts
CHANGED
|
@@ -6,6 +6,5 @@ interface RNCrossmintAuthContext extends CrossmintAuthBaseContextType {
|
|
|
6
6
|
createAuthSession: (urlOrOneTimeSecret: string) => Promise<AuthMaterialWithUser | null>;
|
|
7
7
|
}
|
|
8
8
|
declare function useCrossmintAuth(): RNCrossmintAuthContext;
|
|
9
|
-
declare const useAuth: typeof useCrossmintAuth;
|
|
10
9
|
|
|
11
|
-
export {
|
|
10
|
+
export { useCrossmintAuth };
|
package/dist/hooks/useAuth.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOGYBEE5Ajs = require('../chunk-OGYBEE5A.js');require('../chunk-SHTETN4C.js');require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-J42HASCI.js');exports.useCrossmintAuth = _chunkOGYBEE5Ajs.c;
|
package/dist/hooks/useAuth.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as a
|
|
1
|
+
import{c as a}from"../chunk-F5O5W34O.mjs";import"../chunk-ZCKUSOGC.mjs";import"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-PSSAAY7D.mjs";export{a as useCrossmintAuth};
|
package/dist/index.d.mts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
export { useCrossmint, useWallet } from '@crossmint/client-sdk-react-base';
|
|
2
|
-
export { EmailSignerFunctions, useWalletEmailSigner } from './hooks/useWalletEmailSigner.mjs';
|
|
1
|
+
export { OtpSignerFunctions, useCrossmint, useWallet, useWalletOtpSigner } from '@crossmint/client-sdk-react-base';
|
|
3
2
|
export { CrossmintCheckoutContext, CrossmintCheckoutProvider, useCrossmintCheckout } from './hooks/useCrossmintCheckout.mjs';
|
|
4
|
-
export {
|
|
3
|
+
export { useCrossmintAuth } from './hooks/useAuth.mjs';
|
|
5
4
|
export { CrossmintProvider, CrossmintProviderProps } from './providers/CrossmintProvider.mjs';
|
|
6
5
|
export { CrossmintAuthProvider } from './providers/CrossmintAuthProvider.mjs';
|
|
7
6
|
export { CrossmintWalletProvider, CrossmintWalletProviderProps } from './providers/CrossmintWalletProvider.mjs';
|
|
@@ -11,7 +10,7 @@ export { PhoneSignersDialog } from './components/signers/PhoneSignersDialog.mjs'
|
|
|
11
10
|
export { ExportPrivateKeyButton, ExportPrivateKeyButtonProps } from './components/wallets/ExportPrivateKeyButton.mjs';
|
|
12
11
|
export { CrossmintEvent, CrossmintEventMap } from '@crossmint/client-sdk-base';
|
|
13
12
|
export { OAuthProvider, SDKExternalUser } from '@crossmint/common-sdk-auth';
|
|
14
|
-
export {
|
|
13
|
+
export { Balances, Chain, DelegatedSigner, EVMWallet, Signature, SolanaWallet, StellarWallet, Transaction, Transfers, Wallet } from '@crossmint/wallets-sdk';
|
|
15
14
|
import 'react/jsx-runtime';
|
|
16
15
|
import 'react';
|
|
17
16
|
import '@crossmint/client-sdk-react-base/dist/providers/LoggerProvider';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
export { useCrossmint, useWallet } from '@crossmint/client-sdk-react-base';
|
|
2
|
-
export { EmailSignerFunctions, useWalletEmailSigner } from './hooks/useWalletEmailSigner.js';
|
|
1
|
+
export { OtpSignerFunctions, useCrossmint, useWallet, useWalletOtpSigner } from '@crossmint/client-sdk-react-base';
|
|
3
2
|
export { CrossmintCheckoutContext, CrossmintCheckoutProvider, useCrossmintCheckout } from './hooks/useCrossmintCheckout.js';
|
|
4
|
-
export {
|
|
3
|
+
export { useCrossmintAuth } from './hooks/useAuth.js';
|
|
5
4
|
export { CrossmintProvider, CrossmintProviderProps } from './providers/CrossmintProvider.js';
|
|
6
5
|
export { CrossmintAuthProvider } from './providers/CrossmintAuthProvider.js';
|
|
7
6
|
export { CrossmintWalletProvider, CrossmintWalletProviderProps } from './providers/CrossmintWalletProvider.js';
|
|
@@ -11,7 +10,7 @@ export { PhoneSignersDialog } from './components/signers/PhoneSignersDialog.js';
|
|
|
11
10
|
export { ExportPrivateKeyButton, ExportPrivateKeyButtonProps } from './components/wallets/ExportPrivateKeyButton.js';
|
|
12
11
|
export { CrossmintEvent, CrossmintEventMap } from '@crossmint/client-sdk-base';
|
|
13
12
|
export { OAuthProvider, SDKExternalUser } from '@crossmint/common-sdk-auth';
|
|
14
|
-
export {
|
|
13
|
+
export { Balances, Chain, DelegatedSigner, EVMWallet, Signature, SolanaWallet, StellarWallet, Transaction, Transfers, Wallet } from '@crossmint/wallets-sdk';
|
|
15
14
|
import 'react/jsx-runtime';
|
|
16
15
|
import 'react';
|
|
17
16
|
import '@crossmint/client-sdk-react-base/dist/providers/LoggerProvider';
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-C62HRWJA.js');var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-C62HRWJA.js');var _chunkTRKLIWSTjs = require('./chunk-TRKLIWST.js');var _chunkXM7I5GOVjs = require('./chunk-XM7I5GOV.js');require('./chunk-2PX34LDU.js');require('./chunk-AJMHVVST.js');require('./chunk-DKQZSNOO.js');require('./chunk-72MMCJ2E.js');var _chunkVVMTHE5Mjs = require('./chunk-VVMTHE5M.js');require('./chunk-ZI76TANW.js');require('./chunk-YQEWHOQ7.js');require('./chunk-VACQTZRT.js');require('./chunk-I4D3YJW2.js');var _chunkA2MEND3Djs = require('./chunk-A2MEND3D.js');var _chunkYJORUMPBjs = require('./chunk-YJORUMPB.js');var _chunkMVVSGLQLjs = require('./chunk-MVVSGLQL.js');require('./chunk-F7VXWATP.js');require('./chunk-DC5HCBPK.js');require('./chunk-EI5LOD4Y.js');require('./chunk-2I3S32DJ.js');require('./chunk-6S2FUAUM.js');require('./chunk-25EKKN3X.js');var _chunkOGYBEE5Ajs = require('./chunk-OGYBEE5A.js');require('./chunk-SHTETN4C.js');var _chunk77GXCNDPjs = require('./chunk-77GXCNDP.js');require('./chunk-2D2RJCVX.js');require('./chunk-J42HASCI.js');var _walletssdk = require('@crossmint/wallets-sdk');exports.CrossmintAuthProvider = _chunkOGYBEE5Ajs.b; exports.CrossmintCheckoutProvider = _chunk77GXCNDPjs.a; exports.CrossmintEmbeddedCheckout = _chunkVVMTHE5Mjs.a; exports.CrossmintProvider = _chunkXM7I5GOVjs.b; exports.CrossmintWalletProvider = _chunkTRKLIWSTjs.a; exports.EVMWallet = _walletssdk.EVMWallet; exports.EmailSignersDialog = _chunkYJORUMPBjs.a; exports.ExportPrivateKeyButton = _chunkA2MEND3Djs.a; exports.PhoneSignersDialog = _chunkMVVSGLQLjs.a; exports.SolanaWallet = _walletssdk.SolanaWallet; exports.StellarWallet = _walletssdk.StellarWallet; exports.Wallet = _walletssdk.Wallet; exports.useCrossmint = _chunkOGYBEE5Ajs.d; exports.useCrossmintAuth = _chunkOGYBEE5Ajs.c; exports.useCrossmintCheckout = _chunk77GXCNDPjs.b; exports.useWallet = _chunkOGYBEE5Ajs.e; exports.useWalletOtpSigner = _chunkOGYBEE5Ajs.f;
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./chunk-I3QSTPTV.mjs";import{a as
|
|
1
|
+
import"./chunk-I3QSTPTV.mjs";import{a as i}from"./chunk-U2DIEEZH.mjs";import{b as l}from"./chunk-WGI454UE.mjs";import"./chunk-UBHIBMTA.mjs";import"./chunk-5CLFJLE4.mjs";import"./chunk-TIQGKXQA.mjs";import"./chunk-MB7H3PBJ.mjs";import{a as y}from"./chunk-2PYH2ARU.mjs";import"./chunk-OMJSXGCP.mjs";import"./chunk-PCJMDUSI.mjs";import"./chunk-FX23A4BR.mjs";import"./chunk-J7Q2R6UH.mjs";import{a as f}from"./chunk-PNHVW6FM.mjs";import{a as p}from"./chunk-XNDIT72O.mjs";import{a as m}from"./chunk-3QSVHCEH.mjs";import"./chunk-D5QADN6Z.mjs";import"./chunk-YLJDAK2S.mjs";import"./chunk-7USVT6EZ.mjs";import"./chunk-MSMMOMYT.mjs";import"./chunk-3MRNET5P.mjs";import"./chunk-RT4T7XAD.mjs";import{b as r,c as o,d as a,e as n,f as s}from"./chunk-F5O5W34O.mjs";import"./chunk-ZCKUSOGC.mjs";import{a as e,b as t}from"./chunk-IUDQDPIN.mjs";import"./chunk-FFQ6EQCL.mjs";import"./chunk-PSSAAY7D.mjs";import{EVMWallet as u,SolanaWallet as v,StellarWallet as C,Wallet as k}from"@crossmint/wallets-sdk";export{r as CrossmintAuthProvider,e as CrossmintCheckoutProvider,y as CrossmintEmbeddedCheckout,l as CrossmintProvider,i as CrossmintWalletProvider,u as EVMWallet,p as EmailSignersDialog,f as ExportPrivateKeyButton,m as PhoneSignersDialog,v as SolanaWallet,C as StellarWallet,k as Wallet,a as useCrossmint,o as useCrossmintAuth,t as useCrossmintCheckout,n as useWallet,s as useWalletOtpSigner};
|
package/dist/logger/init.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk6S2FUAUMjs = require('../chunk-6S2FUAUM.js');require('../chunk-25EKKN3X.js');require('../chunk-J42HASCI.js');exports.initReactNativeLogger = _chunk6S2FUAUMjs.a;
|
package/dist/logger/init.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-3MRNET5P.mjs";import"../chunk-RT4T7XAD.mjs";import"../chunk-PSSAAY7D.mjs";export{a as initReactNativeLogger};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOGYBEE5Ajs = require('../chunk-OGYBEE5A.js');require('../chunk-SHTETN4C.js');require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-J42HASCI.js');exports.AuthContext = _chunkOGYBEE5Ajs.a; exports.CrossmintAuthProvider = _chunkOGYBEE5Ajs.b;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"../chunk-
|
|
1
|
+
import{a,b}from"../chunk-F5O5W34O.mjs";import"../chunk-ZCKUSOGC.mjs";import"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-PSSAAY7D.mjs";export{a as AuthContext,b as CrossmintAuthProvider};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXM7I5GOVjs = require('../chunk-XM7I5GOV.js');require('../chunk-6S2FUAUM.js');require('../chunk-25EKKN3X.js');require('../chunk-J42HASCI.js');exports.CrossmintProvider = _chunkXM7I5GOVjs.b; exports.LoggerContext = _chunkXM7I5GOVjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"../chunk-
|
|
1
|
+
import{a,b}from"../chunk-WGI454UE.mjs";import"../chunk-3MRNET5P.mjs";import"../chunk-RT4T7XAD.mjs";import"../chunk-PSSAAY7D.mjs";export{b as CrossmintProvider,a as LoggerContext};
|
|
@@ -2,6 +2,7 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { UIConfig } from '@crossmint/common-sdk-base';
|
|
4
4
|
import { CreateOnLogin } from '@crossmint/client-sdk-react-base';
|
|
5
|
+
import { DeviceSignerKeyStorage } from '@crossmint/wallets-sdk';
|
|
5
6
|
|
|
6
7
|
interface CrossmintWalletProviderProps {
|
|
7
8
|
/** Wallet configuration for automatic creation on user login. Defines the chain and signer type for the wallet. */
|
|
@@ -17,6 +18,12 @@ interface CrossmintWalletProviderProps {
|
|
|
17
18
|
/** Called when a transaction signing flow begins. */
|
|
18
19
|
onTransactionStart?: () => Promise<void>;
|
|
19
20
|
};
|
|
21
|
+
/**
|
|
22
|
+
* Override the device signer key storage implementation. Defaults to `NativeDeviceSignerKeyStorage`
|
|
23
|
+
* (Secure Enclave on iOS, Android Keystore on Android) when `@crossmint/expo-device-signer` is installed.
|
|
24
|
+
* Useful for testing or environments where the native module is unavailable.
|
|
25
|
+
*/
|
|
26
|
+
deviceSignerKeyStorage?: DeviceSignerKeyStorage;
|
|
20
27
|
/** @internal */
|
|
21
28
|
children: ReactNode;
|
|
22
29
|
}
|
|
@@ -2,6 +2,7 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { UIConfig } from '@crossmint/common-sdk-base';
|
|
4
4
|
import { CreateOnLogin } from '@crossmint/client-sdk-react-base';
|
|
5
|
+
import { DeviceSignerKeyStorage } from '@crossmint/wallets-sdk';
|
|
5
6
|
|
|
6
7
|
interface CrossmintWalletProviderProps {
|
|
7
8
|
/** Wallet configuration for automatic creation on user login. Defines the chain and signer type for the wallet. */
|
|
@@ -17,6 +18,12 @@ interface CrossmintWalletProviderProps {
|
|
|
17
18
|
/** Called when a transaction signing flow begins. */
|
|
18
19
|
onTransactionStart?: () => Promise<void>;
|
|
19
20
|
};
|
|
21
|
+
/**
|
|
22
|
+
* Override the device signer key storage implementation. Defaults to `NativeDeviceSignerKeyStorage`
|
|
23
|
+
* (Secure Enclave on iOS, Android Keystore on Android) when `@crossmint/expo-device-signer` is installed.
|
|
24
|
+
* Useful for testing or environments where the native module is unavailable.
|
|
25
|
+
*/
|
|
26
|
+
deviceSignerKeyStorage?: DeviceSignerKeyStorage;
|
|
20
27
|
/** @internal */
|
|
21
28
|
children: ReactNode;
|
|
22
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkTRKLIWSTjs = require('../chunk-TRKLIWST.js');require('../chunk-XM7I5GOV.js');require('../chunk-YJORUMPB.js');require('../chunk-MVVSGLQL.js');require('../chunk-F7VXWATP.js');require('../chunk-DC5HCBPK.js');require('../chunk-EI5LOD4Y.js');require('../chunk-6S2FUAUM.js');require('../chunk-25EKKN3X.js');require('../chunk-J42HASCI.js');exports.CrossmintWalletProvider = _chunkTRKLIWSTjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-U2DIEEZH.mjs";import"../chunk-WGI454UE.mjs";import"../chunk-XNDIT72O.mjs";import"../chunk-3QSVHCEH.mjs";import"../chunk-D5QADN6Z.mjs";import"../chunk-YLJDAK2S.mjs";import"../chunk-7USVT6EZ.mjs";import"../chunk-3MRNET5P.mjs";import"../chunk-RT4T7XAD.mjs";import"../chunk-PSSAAY7D.mjs";export{a as CrossmintWalletProvider};
|
package/dist/providers/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-C62HRWJA.js');var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-C62HRWJA.js');var _chunkTRKLIWSTjs = require('../chunk-TRKLIWST.js');var _chunkXM7I5GOVjs = require('../chunk-XM7I5GOV.js');require('../chunk-YJORUMPB.js');require('../chunk-MVVSGLQL.js');require('../chunk-F7VXWATP.js');require('../chunk-DC5HCBPK.js');require('../chunk-EI5LOD4Y.js');require('../chunk-6S2FUAUM.js');require('../chunk-25EKKN3X.js');var _chunkOGYBEE5Ajs = require('../chunk-OGYBEE5A.js');require('../chunk-SHTETN4C.js');require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-J42HASCI.js');exports.CrossmintAuthProvider = _chunkOGYBEE5Ajs.b; exports.CrossmintProvider = _chunkXM7I5GOVjs.b; exports.CrossmintWalletProvider = _chunkTRKLIWSTjs.a;
|
package/dist/providers/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../chunk-I3QSTPTV.mjs";import{a as c}from"../chunk-
|
|
1
|
+
import"../chunk-I3QSTPTV.mjs";import{a as c}from"../chunk-U2DIEEZH.mjs";import{b}from"../chunk-WGI454UE.mjs";import"../chunk-XNDIT72O.mjs";import"../chunk-3QSVHCEH.mjs";import"../chunk-D5QADN6Z.mjs";import"../chunk-YLJDAK2S.mjs";import"../chunk-7USVT6EZ.mjs";import"../chunk-3MRNET5P.mjs";import"../chunk-RT4T7XAD.mjs";import{b as a}from"../chunk-F5O5W34O.mjs";import"../chunk-ZCKUSOGC.mjs";import"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-PSSAAY7D.mjs";export{a as CrossmintAuthProvider,b as CrossmintProvider,c as CrossmintWalletProvider};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk2I3S32DJjs = require('../chunk-2I3S32DJ.js');require('../chunk-25EKKN3X.js');require('../chunk-J42HASCI.js');exports.createCrossmintApiClient = _chunk2I3S32DJjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-MSMMOMYT.mjs";import"../chunk-RT4T7XAD.mjs";import"../chunk-PSSAAY7D.mjs";export{a as createCrossmintApiClient};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crossmint/client-sdk-react-native-ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0-beta.2",
|
|
4
4
|
"repository": "https://github.com/Crossmint/crossmint-sdk",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Paella Labs Inc",
|
|
@@ -22,14 +22,14 @@
|
|
|
22
22
|
"mitt": "3.0.1",
|
|
23
23
|
"react-native-svg": "15.14.0",
|
|
24
24
|
"zod": "3.22.4",
|
|
25
|
-
"@crossmint/client-sdk-auth": "1.
|
|
26
|
-
"@crossmint/client-sdk-base": "2.
|
|
27
|
-
"@crossmint/client-sdk-react-base": "
|
|
25
|
+
"@crossmint/client-sdk-auth": "1.3.0-beta.0",
|
|
26
|
+
"@crossmint/client-sdk-base": "2.0.3-beta.0",
|
|
27
|
+
"@crossmint/client-sdk-react-base": "2.0.0-beta.2",
|
|
28
28
|
"@crossmint/client-sdk-rn-window": "0.3.15",
|
|
29
29
|
"@crossmint/client-signers": "0.1.2",
|
|
30
|
-
"@crossmint/common-sdk-auth": "1.0.
|
|
31
|
-
"@crossmint/common-sdk-base": "0.
|
|
32
|
-
"@crossmint/wallets-sdk": "0.
|
|
30
|
+
"@crossmint/common-sdk-auth": "1.1.0-beta.0",
|
|
31
|
+
"@crossmint/common-sdk-base": "0.10.0-beta.0",
|
|
32
|
+
"@crossmint/wallets-sdk": "1.0.0-beta.2"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@expo/config-plugins": "^9.0.17",
|
|
@@ -40,7 +40,11 @@
|
|
|
40
40
|
"expo-secure-store": "~15.0.7",
|
|
41
41
|
"expo-web-browser": "~15.0.8"
|
|
42
42
|
},
|
|
43
|
+
"optionalDependencies": {
|
|
44
|
+
"@crossmint/expo-device-signer": "0.0.2-beta.0"
|
|
45
|
+
},
|
|
43
46
|
"peerDependencies": {
|
|
47
|
+
"@crossmint/expo-device-signer": "0.0.2-beta.0",
|
|
44
48
|
"@expo/config-plugins": ">=9.0.0",
|
|
45
49
|
"@solana/web3.js": "^1.98.1",
|
|
46
50
|
"expo-constants": ">=17 <19",
|
|
@@ -51,6 +55,11 @@
|
|
|
51
55
|
"react-native": ">=0.74.3",
|
|
52
56
|
"react-native-webview": ">=13.15.0 <14"
|
|
53
57
|
},
|
|
58
|
+
"peerDependenciesMeta": {
|
|
59
|
+
"@crossmint/expo-device-signer": {
|
|
60
|
+
"optional": true
|
|
61
|
+
}
|
|
62
|
+
},
|
|
54
63
|
"scripts": {
|
|
55
64
|
"build": "cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup",
|
|
56
65
|
"dev": "cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup --watch",
|
package/dist/chunk-EF2YTIUF.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{e as p}from"./chunk-PSSAAY7D.mjs";import{useState as v,useCallback as s,useRef as u,useEffect as y}from"react";import{View as g,Text as x,StyleSheet as V,Alert as f}from"react-native";import{useWallet as h,useCrossmint as C}from"@crossmint/client-sdk-react-base";import{environmentUrlConfig as W,exportSignerInboundEvents as P,exportSignerOutboundEvents as S}from"@crossmint/client-signers";import{isExportableSigner as b}from"@crossmint/wallets-sdk";import{validateAPIKey as F}from"@crossmint/common-sdk-base";import{WebViewParent as I,RNWebView as k}from"@crossmint/client-sdk-rn-window";import{jsx as o}from"react/jsx-runtime";function z({appearance:K}){let{wallet:r}=h(),{crossmint:i}=C(),a=u(null),l=u(null),[c,w]=v("");y(()=>{if(i!=null)try{let e=F(i.apiKey);if(e.isValid){let t=W[e.environment];w(`${t}/export`)}}catch(e){console.error("Failed to get TEE URL:",e)}},[i]);let E=s(e=>p(this,null,function*(){if(!(r==null||a.current==null||e.nativeEvent.loading))try{if(b(r.signer)){let t=new I(a,{incomingEvents:S,outgoingEvents:P});l.current=t,yield t.handshakeWithChild(),yield r.signer._exportPrivateKey(t)}}catch(t){console.error("Failed to export private key:",t),f.alert("Export Failed","Failed to export private key. Please try again.")}}),[r]),d=s(e=>{let{nativeEvent:t}=e;console.error("WebView error:",t),f.alert("Export Failed","Failed to load export interface. Please try again.")},[]),m=s(e=>{l.current&&l.current.handleMessage(e)},[]);return c===""||r==null||!b(r.signer)?null:o(g,{style:n.webViewContainer,children:o(k,{ref:a,source:{uri:c},style:n.webView,javaScriptEnabled:!0,domStorageEnabled:!0,onLoadEnd:E,onError:d,onHttpError:d,onMessage:m,startInLoadingState:!0,renderLoading:()=>o(g,{style:n.loadingContainer,children:o(x,{style:n.loadingText,children:"Loading..."})})})})}var n=V.create({webViewContainer:{height:56,borderWidth:1,borderColor:"#E5E5E5",borderRadius:12,overflow:"hidden"},webView:{flex:1},loadingContainer:{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:"#F5F5F5"},loadingText:{fontSize:16,color:"#666666"}});export{z as a};
|
package/dist/chunk-EF5KYLDO.js
DELETED
|
@@ -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; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkSHTETN4Cjs = require('./chunk-SHTETN4C.js');var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _react = require('react');var _expowebbrowser = require('expo-web-browser'); var u = _interopRequireWildcard(_expowebbrowser);var _expoconstants = require('expo-constants'); var _expoconstants2 = _interopRequireDefault(_expoconstants);var _reactnative = require('react-native');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');function k(){let r=_react.useContext.call(void 0, w);if(r==null)throw new Error("useCrossmintAuth must be used within a CrossmintAuthProvider");return r}var U=k;var _jsxruntime = require('react/jsx-runtime');var B={google:null,twitter:null},G={crossmintAuth:void 0,login:()=>{},logout:()=>_chunkJ42HASCIjs.e.call(void 0, void 0,null,function*(){}),jwt:void 0,user:void 0,status:"initializing",getUser:()=>{},loginWithOAuth:()=>Promise.resolve(),createAuthSession:()=>Promise.resolve(null)},w= exports.a =_react.createContext.call(void 0, G);function V({children:r}){let{experimental_setCustomAuth:e,experimental_customAuth:t}=_clientsdkreactbase.useCrossmint.call(void 0, ),{user:o,jwt:i}=U();return _react.useEffect.call(void 0, ()=>{i==null&&(t==null?void 0:t.jwt)!=null&&e(void 0),i!=null&&e({jwt:i,email:o==null?void 0:o.email})},[e,i,o]),r}function _({children:r,appSchema:e}){let t=_clientsdkreactbase.useCrossmintAuthBase.call(void 0, ),[o,i]=_react.useState.call(void 0, B),[f,a]=_react.useState.call(void 0, !1),p=Array.isArray(e)?e[0]:e,P=_expoconstants2.default.executionEnvironment==="storeClient"||_expoconstants2.default.appOwnership==="expo"||!!_expoconstants2.default.expoVersion?"exp://127.0.0.1:8081":p,x=_react.useCallback.call(void 0, ()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){try{let c=Object.keys(B).map(n=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var A;let m=yield(A=t.crossmintAuth)==null?void 0:A.getOAuthUrl(n,{appSchema:P});return{[n]:m}})),h=Object.assign({},...yield Promise.all(c));i(h)}catch(s){console.error(s)}}),[t.crossmintAuth,P]);_react.useEffect.call(void 0, ()=>{t.user==null&&x()},[x,t.user]);let N=()=>t.status==="initializing"?"initializing":f?"in-progress":t.jwt!=null?"logged-in":"logged-out",E=s=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var c,h;try{a(!0);let n=(h=o[s])!=null?h:yield(c=t.crossmintAuth)==null?void 0:c.getOAuthUrl(s,{appSchema:P});yield u.warmUpAsync();let m=new URL(n);if(s==="google"&&m.searchParams.append("provider_prompt","select_account"),_reactnative.Platform.OS==="android")yield u.openBrowserAsync(m.toString());else{let A=yield u.openAuthSessionAsync(m.toString());A.type==="success"&&(yield y(A.url))}yield u.coolDownAsync()}catch(n){throw console.error("[CrossmintAuthProvider] Error during OAuth login:",n),new Error(`Error during OAuth login: ${n}`)}finally{a(!1)}}),y=_react.useCallback.call(void 0, s=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var h;let c=s.includes("://")?D(s):s;if(c!=null)try{return a(!0),yield(h=t.crossmintAuth)==null?void 0:h.handleRefreshAuthMaterial(c)}catch(n){throw n}finally{a(!1)}return null}),[t.crossmintAuth]);return _jsxruntime.jsx.call(void 0, w.Provider,{value:{crossmintAuth:t.crossmintAuth,logout:t.logout,jwt:t.jwt,user:t.user,status:N(),getUser:t.getUser,login:()=>{},loginWithOAuth:E,createAuthSession:y},children:_jsxruntime.jsx.call(void 0, V,{children:r})})}function at(t){var o=t,{children:r}=o,e=_chunkJ42HASCIjs.d.call(void 0, o,["children"]);var a,p;let i=(p=e.appSchema)!=null?p:(a=_expoconstants2.default.expoConfig)==null?void 0:a.scheme,f=_react.useMemo.call(void 0, ()=>{var C;return(C=e.storageProvider)!=null?C:new _chunkSHTETN4Cjs.a},[e.storageProvider]);return _jsxruntime.jsx.call(void 0, _clientsdkreactbase.CrossmintAuthBaseProvider,{onLoginSuccess:e.onLoginSuccess,refreshRoute:e.refreshRoute,logoutRoute:e.logoutRoute,storageProvider:f,children:_jsxruntime.jsx.call(void 0, _,{appSchema:i,children:r})})}var D=r=>{let e=/[?&]oneTimeSecret=([^&#]+)/,t=r.match(e);return t?decodeURIComponent(t[1]):void 0};exports.a = w; exports.b = at; exports.c = k; exports.d = U; exports.e = _clientsdkreactbase.useCrossmint; exports.f = _clientsdkreactbase.useWallet;
|
package/dist/chunk-J477SX6P.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{e as n}from"./chunk-PSSAAY7D.mjs";import{useCallback as o,useContext as u}from"react";import{CrossmintWalletBaseContext as p}from"@crossmint/client-sdk-react-base";var s=i=>()=>{throw new Error(`${i} is not available. Make sure you're using an email signer wallet.`)};function h(){let i=u(p);if(i==null)throw new Error("useWalletEmailSigner must be used within CrossmintWalletProvider");let{emailSignerState:t}=i,l=o(()=>n(this,null,function*(){var e;return t.sendEmailWithOtp||s("sendEmailWithOtp")(),yield(e=t.sendEmailWithOtp)==null?void 0:e.call(t)}),[t.sendEmailWithOtp]),a=o(e=>n(this,null,function*(){var r;return t.verifyOtp||s("verifyOtp")(),yield(r=t.verifyOtp)==null?void 0:r.call(t,e)}),[t.verifyOtp]),c=o(e=>{var r;t.reject||s("reject")(),(r=t.reject)==null||r.call(t,e)},[t.reject]);return{needsAuth:t.needsAuth,sendEmailWithOtp:l,verifyOtp:a,reject:c}}export{h as a};
|
package/dist/chunk-L34HCKFT.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var c={name:"@crossmint/client-sdk-react-native-ui",version:"0.13.26",repository:"https://github.com/Crossmint/crossmint-sdk",license:"Apache-2.0",author:"Paella Labs Inc",sideEffects:!1,main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",files:["dist","app.plugin.js","LICENSE"],scripts:{build:"cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup",dev:"cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup --watch","generate:docs":"typedoc && node scripts/generate-reference.mjs"},dependencies:{"@crossmint/client-sdk-auth":"workspace:*","@crossmint/client-sdk-base":"workspace:*","@crossmint/client-sdk-react-base":"workspace:*","@crossmint/client-sdk-rn-window":"workspace:*","@crossmint/client-signers":"workspace:*","@crossmint/common-sdk-auth":"workspace:*","@crossmint/common-sdk-base":"workspace:*","@crossmint/wallets-sdk":"workspace:*","@solana/web3.js":"1.98.1",bs58:"^5.0.0","lodash.clonedeep":"4.5.0","lodash.isequal":"4.5.0","lucide-react-native":"0.548.0",mitt:"3.0.1","react-native-svg":"15.14.0",zod:"3.22.4"},devDependencies:{"@expo/config-plugins":"^9.0.17",typedoc:"0.28.16","@types/react":"19.1.10","expo-constants":"~18.0.9","expo-device":"~8.0.9","expo-secure-store":"~15.0.7","expo-web-browser":"~15.0.8"},peerDependencies:{"@expo/config-plugins":">=9.0.0","@solana/web3.js":"^1.98.1","expo-constants":">=17 <19","expo-device":">=7 <9","expo-secure-store":">=14 <16","expo-web-browser":">=14 <16",react:">=17.0.2","react-native":">=0.74.3","react-native-webview":">=13.15.0 <14"}};export{c as a};
|
package/dist/chunk-LK3AO6AY.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as S}from"./chunk-ZCKUSOGC.mjs";import{d as v,e as l}from"./chunk-PSSAAY7D.mjs";import{createContext as L,useEffect as N,useMemo as T,useState as b,useCallback as B}from"react";import*as u from"expo-web-browser";import d from"expo-constants";import{Platform as z}from"react-native";import{CrossmintAuthBaseProvider as F,useCrossmintAuthBase as G}from"@crossmint/client-sdk-react-base";import{useCrossmint as M,useWallet as Z}from"@crossmint/client-sdk-react-base";import{useContext as k}from"react";function I(){let r=k(w);if(r==null)throw new Error("useCrossmintAuth must be used within a CrossmintAuthProvider");return r}var R=I;import{jsx as g}from"react/jsx-runtime";var W={google:null,twitter:null},V={crossmintAuth:void 0,login:()=>{},logout:()=>l(void 0,null,function*(){}),jwt:void 0,user:void 0,status:"initializing",getUser:()=>{},loginWithOAuth:()=>Promise.resolve(),createAuthSession:()=>Promise.resolve(null)},w=L(V);function _({children:r}){let{experimental_setCustomAuth:e,experimental_customAuth:t}=M(),{user:o,jwt:i}=R();return N(()=>{i==null&&(t==null?void 0:t.jwt)!=null&&e(void 0),i!=null&&e({jwt:i,email:o==null?void 0:o.email})},[e,i,o]),r}function D({children:r,appSchema:e}){let t=G(),[o,i]=b(W),[f,a]=b(!1),p=Array.isArray(e)?e[0]:e,P=d.executionEnvironment==="storeClient"||d.appOwnership==="expo"||!!d.expoVersion?"exp://127.0.0.1:8081":p,x=B(()=>l(this,null,function*(){try{let c=Object.keys(W).map(n=>l(this,null,function*(){var A;let m=yield(A=t.crossmintAuth)==null?void 0:A.getOAuthUrl(n,{appSchema:P});return{[n]:m}})),h=Object.assign({},...yield Promise.all(c));i(h)}catch(s){console.error(s)}}),[t.crossmintAuth,P]);N(()=>{t.user==null&&x()},[x,t.user]);let E=()=>t.status==="initializing"?"initializing":f?"in-progress":t.jwt!=null?"logged-in":"logged-out",j=s=>l(this,null,function*(){var c,h;try{a(!0);let n=(h=o[s])!=null?h:yield(c=t.crossmintAuth)==null?void 0:c.getOAuthUrl(s,{appSchema:P});yield u.warmUpAsync();let m=new URL(n);if(s==="google"&&m.searchParams.append("provider_prompt","select_account"),z.OS==="android")yield u.openBrowserAsync(m.toString());else{let A=yield u.openAuthSessionAsync(m.toString());A.type==="success"&&(yield y(A.url))}yield u.coolDownAsync()}catch(n){throw console.error("[CrossmintAuthProvider] Error during OAuth login:",n),new Error(`Error during OAuth login: ${n}`)}finally{a(!1)}}),y=B(s=>l(this,null,function*(){var h;let c=s.includes("://")?$(s):s;if(c!=null)try{return a(!0),yield(h=t.crossmintAuth)==null?void 0:h.handleRefreshAuthMaterial(c)}catch(n){throw n}finally{a(!1)}return null}),[t.crossmintAuth]);return g(w.Provider,{value:{crossmintAuth:t.crossmintAuth,logout:t.logout,jwt:t.jwt,user:t.user,status:E(),getUser:t.getUser,login:()=>{},loginWithOAuth:j,createAuthSession:y},children:g(_,{children:r})})}function ct(t){var o=t,{children:r}=o,e=v(o,["children"]);var a,p;let i=(p=e.appSchema)!=null?p:(a=d.expoConfig)==null?void 0:a.scheme,f=T(()=>{var C;return(C=e.storageProvider)!=null?C:new S},[e.storageProvider]);return g(F,{onLoginSuccess:e.onLoginSuccess,refreshRoute:e.refreshRoute,logoutRoute:e.logoutRoute,storageProvider:f,children:g(D,{appSchema:i,children:r})})}var $=r=>{let e=/[?&]oneTimeSecret=([^&#]+)/,t=r.match(e);return t?decodeURIComponent(t[1]):void 0};export{w as a,ct as b,I as c,R as d,M as e,Z as f};
|
package/dist/chunk-MKCQJOIO.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _react = require('react');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');var s=i=>()=>{throw new Error(`${i} is not available. Make sure you're using an email signer wallet.`)};function f(){let i=_react.useContext.call(void 0, _clientsdkreactbase.CrossmintWalletBaseContext);if(i==null)throw new Error("useWalletEmailSigner must be used within CrossmintWalletProvider");let{emailSignerState:t}=i,l=_react.useCallback.call(void 0, ()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var e;return t.sendEmailWithOtp||s("sendEmailWithOtp")(),yield(e=t.sendEmailWithOtp)==null?void 0:e.call(t)}),[t.sendEmailWithOtp]),a=_react.useCallback.call(void 0, e=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var r;return t.verifyOtp||s("verifyOtp")(),yield(r=t.verifyOtp)==null?void 0:r.call(t,e)}),[t.verifyOtp]),c=_react.useCallback.call(void 0, e=>{var r;t.reject||s("reject")(),(r=t.reject)==null||r.call(t,e)},[t.reject]);return{needsAuth:t.needsAuth,sendEmailWithOtp:l,verifyOtp:a,reject:c}}exports.a = f;
|
package/dist/chunk-SJTT7WAQ.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkLY6WTUDMjs = require('./chunk-LY6WTUDM.js');var _chunkYJORUMPBjs = require('./chunk-YJORUMPB.js');var _chunkMVVSGLQLjs = require('./chunk-MVVSGLQL.js');var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _react = require('react');var _reactnative = require('react-native');var _clientsdkrnwindow = require('@crossmint/client-sdk-rn-window');var _clientsigners = require('@crossmint/client-signers');var _commonsdkbase = require('@crossmint/common-sdk-base');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');var _jsxruntime = require('react/jsx-runtime');function ae({children:C,createOnLogin:A,appearance:G,headlessSigningFlow:V=!0,callbacks:N}){let{crossmint:z}=_clientsdkreactbase.useCrossmint.call(void 0, "CrossmintWalletProvider must be used within CrossmintProvider"),n=_clientsdkreactbase.useLogger.call(void 0, _chunkLY6WTUDMjs.a),{apiKey:R,appId:k}=z,P=_react.useMemo.call(void 0, ()=>{let e=_commonsdkbase.validateAPIKey.call(void 0, R);if(!e.isValid)throw new Error("Invalid API key");return e},[R]),H=_react.useMemo.call(void 0, ()=>_clientsigners.environmentUrlConfig[P.environment],[P.environment]),f=_react.useRef.call(void 0, null),t=_react.useRef.call(void 0, null),[O,x]=_react.useState.call(void 0, !1),v=_react.useRef.call(void 0, !1),s=_react.useRef.call(void 0, !1),i=_react.useRef.call(void 0, 0),y=_react.useRef.call(void 0, 0),_=_react.useMemo.call(void 0, ()=>k!=null?{crossmintAppId:k}:{},[k]),l=_react.useCallback.call(void 0, e=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){if(t.current!=null){let r=t.current;if(s.current){n.info("react-native.wallet.webview.handshake.skip.in-progress",{trigger:e,generation:i.current});return}if(v.current&&r.isConnected){n.info("react-native.wallet.webview.handshake.skip.already-connected",{trigger:e,generation:i.current});return}s.current=!0;let a=Date.now();y.current=a;let o=i.current;try{n.info("react-native.wallet.webview.handshake.start",{trigger:e,generation:o,platform:_reactnative.Platform.OS}),v.current=!0,r.isConnected=!1,yield r.handshakeWithChild();let c=Date.now()-a;n.info("react-native.wallet.webview.handshake.success",{trigger:e,generation:o,durationMs:c})}catch(c){let d=Date.now()-a;o===i.current&&(v.current=!1),n.error("react-native.wallet.webview.handshake.error",{trigger:e,generation:o,durationMs:d,error:c instanceof Error?c.message:String(c)}),console.error("[CrossmintWalletProvider] Handshake error:",c)}finally{o===i.current&&(s.current=!1)}}else n.warn("react-native.wallet.webview.handshake.skip",{trigger:e,reason:"parent not initialized"})}),[n]);_react.useEffect.call(void 0, ()=>{f.current!=null&&t.current==null&&(n.info("react-native.wallet.webview.initializing"),t.current=new (0, _clientsdkrnwindow.WebViewParent)(f,{incomingEvents:_clientsigners.signerOutboundEvents,outgoingEvents:_clientsigners.signerInboundEvents,handshakeOptions:{timeoutMs:3e4,intervalMs:100},recovery:{recoverableErrorCodes:[_clientsigners.SignerErrorCode.IndexedDbFatal]}}),n.info("react-native.wallet.webview.initialized"),l("eager"))},[O,n,l]);let F=_react.useCallback.call(void 0, ()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){var e,r;n.info("react-native.wallet.webview.onLoadEnd",{handshakeInProgress:s.current,isConnected:(r=(e=t.current)==null?void 0:e.isConnected)!=null?r:!1,generation:i.current}),yield l("onLoadEnd")}),[n,l]),j=_react.useCallback.call(void 0, e=>{var o,c;let r=t.current;if(r==null)return;let a=e.nativeEvent.data;if(a==="frame-ready"){n.info("react-native.wallet.webview.frame-ready.received",{handshakeInProgress:s.current,isConnected:(c=(o=t.current)==null?void 0:o.isConnected)!=null?c:!1,generation:i.current,msSinceHandshakeStart:y.current>0?Date.now()-y.current:null}),l("frame-ready");return}try{let d=JSON.parse(a);if(d&&typeof d.type=="string"&&d.type.startsWith("console.")){let E=d.type.split(".")[1],M=(d.data||[]).map(u=>{try{return u==="[Function]"||u==="[Circular Reference]"||u==="[Unserializable Object]"?u:JSON.parse(u)}catch(le){return u}}),m=`react-native.wallet.webview.console.${E}`,b={webview_args:M};switch(E){case"log":n.info(m,b);break;case"error":n.error(m,b);break;case"warn":n.warn(m,b);break;case"info":n.info(m,b);break;case"debug":n.debug(m,b);break;default:n.info("react-native.wallet.webview.console.unknown",{webview_method:E,webview_args:M})}return}}catch(d){}r.handleMessage(e)},[n,l]);return _jsxruntime.jsxs.call(void 0, _clientsdkreactbase.CrossmintWalletBaseProvider,{createOnLogin:A,appearance:G,headlessSigningFlow:V,initializeWebView:()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){n.info("react-native.wallet.webview.init.start"),x(!0);let e=0,r=100;for(;t.current==null&&e<r;)yield new Promise(a=>setTimeout(a,50)),e++;if(t.current==null)throw n.error("react-native.wallet.webview.init.timeout",{attempts:e}),new Error("WebView not ready or handshake incomplete");n.info("react-native.wallet.webview.init.success",{attempts:e})}),callbacks:N,renderUI:V?void 0:({emailSignerProps:e,phoneSignerProps:r})=>_jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[_jsxruntime.jsx.call(void 0, _chunkYJORUMPBjs.a,_chunkJ42HASCIjs.a.call(void 0, {},e)),_jsxruntime.jsx.call(void 0, _chunkMVVSGLQLjs.a,_chunkJ42HASCIjs.a.call(void 0, {},r))]}),clientTEEConnection:()=>{if(t.current==null)throw new Error("WebView not ready or handshake incomplete");return t.current},children:[C,O&&_jsxruntime.jsx.call(void 0, _reactnative.View,{style:{position:"absolute",width:0,height:0,overflow:"hidden"},children:_jsxruntime.jsx.call(void 0, _clientsdkrnwindow.RNWebView,{ref:f,source:{uri:H},globals:_,onLoadEnd:F,onMessage:j,onError:e=>{console.error("[CrossmintWalletProvider] WebView error:",e.nativeEvent)},onHttpError:e=>{console.error("[CrossmintWalletProvider] WebView HTTP error:",e.nativeEvent)},onContentProcessDidTerminate:()=>{var r,a,o;let e=i.current;i.current++,n.warn("react-native.wallet.webview.process.terminated",{prevGeneration:e,newGeneration:i.current,wasConnected:(a=(r=t.current)==null?void 0:r.isConnected)!=null?a:!1,hadHandshakeInProgress:s.current}),v.current=!1,s.current=!1,t.current!=null&&(t.current.isConnected=!1),(o=f.current)==null||o.reload(),l("eager")},onRenderProcessGone:()=>{var r,a,o;let e=i.current;i.current++,n.warn("react-native.wallet.webview.process.renderGone",{prevGeneration:e,newGeneration:i.current,wasConnected:(a=(r=t.current)==null?void 0:r.isConnected)!=null?a:!1,hadHandshakeInProgress:s.current}),v.current=!1,s.current=!1,t.current!=null&&(t.current.isConnected=!1),(o=f.current)==null||o.reload(),l("eager")},style:{width:1,height:1},javaScriptCanOpenWindowsAutomatically:!1,thirdPartyCookiesEnabled:!1,sharedCookiesEnabled:!1,incognito:!1,setSupportMultipleWindows:!1,originWhitelist:[_clientsigners.environmentUrlConfig[P.environment]],cacheEnabled:!0,cacheMode:"LOAD_DEFAULT"})})]})}function ke(C){return _jsxruntime.jsx.call(void 0, ae,_chunkJ42HASCIjs.a.call(void 0, {},C))}exports.a = ke;
|
package/dist/chunk-UA34B5QB.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _react = require('react');var _reactnative = require('react-native');var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');var _clientsigners = require('@crossmint/client-signers');var _walletssdk = require('@crossmint/wallets-sdk');var _commonsdkbase = require('@crossmint/common-sdk-base');var _clientsdkrnwindow = require('@crossmint/client-sdk-rn-window');var _jsxruntime = require('react/jsx-runtime');function j({appearance:K}){let{wallet:r}=_clientsdkreactbase.useWallet.call(void 0, ),{crossmint:i}=_clientsdkreactbase.useCrossmint.call(void 0, ),a=_react.useRef.call(void 0, null),l=_react.useRef.call(void 0, null),[c,w]=_react.useState.call(void 0, "");_react.useEffect.call(void 0, ()=>{if(i!=null)try{let e=_commonsdkbase.validateAPIKey.call(void 0, i.apiKey);if(e.isValid){let t=_clientsigners.environmentUrlConfig[e.environment];w(`${t}/export`)}}catch(e){console.error("Failed to get TEE URL:",e)}},[i]);let E=_react.useCallback.call(void 0, e=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){if(!(r==null||a.current==null||e.nativeEvent.loading))try{if(_walletssdk.isExportableSigner.call(void 0, r.signer)){let t=new (0, _clientsdkrnwindow.WebViewParent)(a,{incomingEvents:_clientsigners.exportSignerOutboundEvents,outgoingEvents:_clientsigners.exportSignerInboundEvents});l.current=t,yield t.handshakeWithChild(),yield r.signer._exportPrivateKey(t)}}catch(t){console.error("Failed to export private key:",t),_reactnative.Alert.alert("Export Failed","Failed to export private key. Please try again.")}}),[r]),d=_react.useCallback.call(void 0, e=>{let{nativeEvent:t}=e;console.error("WebView error:",t),_reactnative.Alert.alert("Export Failed","Failed to load export interface. Please try again.")},[]),m=_react.useCallback.call(void 0, e=>{l.current&&l.current.handleMessage(e)},[]);return c===""||r==null||!_walletssdk.isExportableSigner.call(void 0, r.signer)?null:_jsxruntime.jsx.call(void 0, _reactnative.View,{style:n.webViewContainer,children:_jsxruntime.jsx.call(void 0, _clientsdkrnwindow.RNWebView,{ref:a,source:{uri:c},style:n.webView,javaScriptEnabled:!0,domStorageEnabled:!0,onLoadEnd:E,onError:d,onHttpError:d,onMessage:m,startInLoadingState:!0,renderLoading:()=>_jsxruntime.jsx.call(void 0, _reactnative.View,{style:n.loadingContainer,children:_jsxruntime.jsx.call(void 0, _reactnative.Text,{style:n.loadingText,children:"Loading..."})})})})}var n=_reactnative.StyleSheet.create({webViewContainer:{height:56,borderWidth:1,borderColor:"#E5E5E5",borderRadius:12,overflow:"hidden"},webView:{flex:1},loadingContainer:{flex:1,justifyContent:"center",alignItems:"center",backgroundColor:"#F5F5F5"},loadingText:{fontSize:16,color:"#666666"}});exports.a = j;
|
package/dist/chunk-UWG4HV23.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as L}from"./chunk-EJSEWYXE.mjs";import{a as D}from"./chunk-XNDIT72O.mjs";import{a as S}from"./chunk-3QSVHCEH.mjs";import{a as p,e as g}from"./chunk-PSSAAY7D.mjs";import{useCallback as W,useRef as w,useMemo as I,useEffect as K,useState as B}from"react";import{Platform as J,View as $}from"react-native";import{RNWebView as q,WebViewParent as Q}from"@crossmint/client-sdk-rn-window";import{environmentUrlConfig as T,signerInboundEvents as X,signerOutboundEvents as Y,SignerErrorCode as Z}from"@crossmint/client-signers";import{validateAPIKey as ee}from"@crossmint/common-sdk-base";import{CrossmintWalletBaseProvider as ne,useCrossmint as re}from"@crossmint/client-sdk-react-base";import{useLogger as te}from"@crossmint/client-sdk-react-base";import{Fragment as oe,jsx as h,jsxs as U}from"react/jsx-runtime";function ae({children:C,createOnLogin:A,appearance:G,headlessSigningFlow:V=!0,callbacks:N}){let{crossmint:z}=re("CrossmintWalletProvider must be used within CrossmintProvider"),n=te(L),{apiKey:R,appId:k}=z,P=I(()=>{let e=ee(R);if(!e.isValid)throw new Error("Invalid API key");return e},[R]),H=I(()=>T[P.environment],[P.environment]),f=w(null),t=w(null),[O,x]=B(!1),v=w(!1),s=w(!1),i=w(0),y=w(0),_=I(()=>k!=null?{crossmintAppId:k}:{},[k]),l=W(e=>g(this,null,function*(){if(t.current!=null){let r=t.current;if(s.current){n.info("react-native.wallet.webview.handshake.skip.in-progress",{trigger:e,generation:i.current});return}if(v.current&&r.isConnected){n.info("react-native.wallet.webview.handshake.skip.already-connected",{trigger:e,generation:i.current});return}s.current=!0;let a=Date.now();y.current=a;let o=i.current;try{n.info("react-native.wallet.webview.handshake.start",{trigger:e,generation:o,platform:J.OS}),v.current=!0,r.isConnected=!1,yield r.handshakeWithChild();let c=Date.now()-a;n.info("react-native.wallet.webview.handshake.success",{trigger:e,generation:o,durationMs:c})}catch(c){let d=Date.now()-a;o===i.current&&(v.current=!1),n.error("react-native.wallet.webview.handshake.error",{trigger:e,generation:o,durationMs:d,error:c instanceof Error?c.message:String(c)}),console.error("[CrossmintWalletProvider] Handshake error:",c)}finally{o===i.current&&(s.current=!1)}}else n.warn("react-native.wallet.webview.handshake.skip",{trigger:e,reason:"parent not initialized"})}),[n]);K(()=>{f.current!=null&&t.current==null&&(n.info("react-native.wallet.webview.initializing"),t.current=new Q(f,{incomingEvents:Y,outgoingEvents:X,handshakeOptions:{timeoutMs:3e4,intervalMs:100},recovery:{recoverableErrorCodes:[Z.IndexedDbFatal]}}),n.info("react-native.wallet.webview.initialized"),l("eager"))},[O,n,l]);let F=W(()=>g(this,null,function*(){var e,r;n.info("react-native.wallet.webview.onLoadEnd",{handshakeInProgress:s.current,isConnected:(r=(e=t.current)==null?void 0:e.isConnected)!=null?r:!1,generation:i.current}),yield l("onLoadEnd")}),[n,l]),j=W(e=>{var o,c;let r=t.current;if(r==null)return;let a=e.nativeEvent.data;if(a==="frame-ready"){n.info("react-native.wallet.webview.frame-ready.received",{handshakeInProgress:s.current,isConnected:(c=(o=t.current)==null?void 0:o.isConnected)!=null?c:!1,generation:i.current,msSinceHandshakeStart:y.current>0?Date.now()-y.current:null}),l("frame-ready");return}try{let d=JSON.parse(a);if(d&&typeof d.type=="string"&&d.type.startsWith("console.")){let E=d.type.split(".")[1],M=(d.data||[]).map(u=>{try{return u==="[Function]"||u==="[Circular Reference]"||u==="[Unserializable Object]"?u:JSON.parse(u)}catch(le){return u}}),m=`react-native.wallet.webview.console.${E}`,b={webview_args:M};switch(E){case"log":n.info(m,b);break;case"error":n.error(m,b);break;case"warn":n.warn(m,b);break;case"info":n.info(m,b);break;case"debug":n.debug(m,b);break;default:n.info("react-native.wallet.webview.console.unknown",{webview_method:E,webview_args:M})}return}}catch(d){}r.handleMessage(e)},[n,l]);return U(ne,{createOnLogin:A,appearance:G,headlessSigningFlow:V,initializeWebView:()=>g(this,null,function*(){n.info("react-native.wallet.webview.init.start"),x(!0);let e=0,r=100;for(;t.current==null&&e<r;)yield new Promise(a=>setTimeout(a,50)),e++;if(t.current==null)throw n.error("react-native.wallet.webview.init.timeout",{attempts:e}),new Error("WebView not ready or handshake incomplete");n.info("react-native.wallet.webview.init.success",{attempts:e})}),callbacks:N,renderUI:V?void 0:({emailSignerProps:e,phoneSignerProps:r})=>U(oe,{children:[h(D,p({},e)),h(S,p({},r))]}),clientTEEConnection:()=>{if(t.current==null)throw new Error("WebView not ready or handshake incomplete");return t.current},children:[C,O&&h($,{style:{position:"absolute",width:0,height:0,overflow:"hidden"},children:h(q,{ref:f,source:{uri:H},globals:_,onLoadEnd:F,onMessage:j,onError:e=>{console.error("[CrossmintWalletProvider] WebView error:",e.nativeEvent)},onHttpError:e=>{console.error("[CrossmintWalletProvider] WebView HTTP error:",e.nativeEvent)},onContentProcessDidTerminate:()=>{var r,a,o;let e=i.current;i.current++,n.warn("react-native.wallet.webview.process.terminated",{prevGeneration:e,newGeneration:i.current,wasConnected:(a=(r=t.current)==null?void 0:r.isConnected)!=null?a:!1,hadHandshakeInProgress:s.current}),v.current=!1,s.current=!1,t.current!=null&&(t.current.isConnected=!1),(o=f.current)==null||o.reload(),l("eager")},onRenderProcessGone:()=>{var r,a,o;let e=i.current;i.current++,n.warn("react-native.wallet.webview.process.renderGone",{prevGeneration:e,newGeneration:i.current,wasConnected:(a=(r=t.current)==null?void 0:r.isConnected)!=null?a:!1,hadHandshakeInProgress:s.current}),v.current=!1,s.current=!1,t.current!=null&&(t.current.isConnected=!1),(o=f.current)==null||o.reload(),l("eager")},style:{width:1,height:1},javaScriptCanOpenWindowsAutomatically:!1,thirdPartyCookiesEnabled:!1,sharedCookiesEnabled:!1,incognito:!1,setSupportMultipleWindows:!1,originWhitelist:[T[P.environment]],cacheEnabled:!0,cacheMode:"LOAD_DEFAULT"})})]})}function Pe(C){return h(ae,p({},C))}export{Pe as a};
|
package/dist/chunk-ZJKAPXBC.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var c={name:"@crossmint/client-sdk-react-native-ui",version:"0.13.26",repository:"https://github.com/Crossmint/crossmint-sdk",license:"Apache-2.0",author:"Paella Labs Inc",sideEffects:!1,main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",files:["dist","app.plugin.js","LICENSE"],scripts:{build:"cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup",dev:"cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup --watch","generate:docs":"typedoc && node scripts/generate-reference.mjs"},dependencies:{"@crossmint/client-sdk-auth":"workspace:*","@crossmint/client-sdk-base":"workspace:*","@crossmint/client-sdk-react-base":"workspace:*","@crossmint/client-sdk-rn-window":"workspace:*","@crossmint/client-signers":"workspace:*","@crossmint/common-sdk-auth":"workspace:*","@crossmint/common-sdk-base":"workspace:*","@crossmint/wallets-sdk":"workspace:*","@solana/web3.js":"1.98.1",bs58:"^5.0.0","lodash.clonedeep":"4.5.0","lodash.isequal":"4.5.0","lucide-react-native":"0.548.0",mitt:"3.0.1","react-native-svg":"15.14.0",zod:"3.22.4"},devDependencies:{"@expo/config-plugins":"^9.0.17",typedoc:"0.28.16","@types/react":"19.1.10","expo-constants":"~18.0.9","expo-device":"~8.0.9","expo-secure-store":"~15.0.7","expo-web-browser":"~15.0.8"},peerDependencies:{"@expo/config-plugins":">=9.0.0","@solana/web3.js":"^1.98.1","expo-constants":">=17 <19","expo-device":">=7 <9","expo-secure-store":">=14 <16","expo-web-browser":">=14 <16",react:">=17.0.2","react-native":">=0.74.3","react-native-webview":">=13.15.0 <14"}};exports.a = c;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
type EmailSignerFunctions = {
|
|
2
|
-
/** Whether the email signer currently requires authentication (OTP verification). */
|
|
3
|
-
needsAuth: boolean;
|
|
4
|
-
/** Sends a one-time password to the user's email address. */
|
|
5
|
-
sendEmailWithOtp: () => Promise<void>;
|
|
6
|
-
/** Verifies the one-time password entered by the user. */
|
|
7
|
-
verifyOtp: (otp: string) => Promise<void>;
|
|
8
|
-
/** Rejects the current authentication request with an error. */
|
|
9
|
-
reject: (error: Error) => void;
|
|
10
|
-
};
|
|
11
|
-
/**
|
|
12
|
-
* Hook for managing email-based signer authentication flows.
|
|
13
|
-
* Provides OTP send/verify functions for wallets using an email signer.
|
|
14
|
-
* Must be used within a {@link CrossmintWalletProvider}.
|
|
15
|
-
*/
|
|
16
|
-
declare function useWalletEmailSigner(): EmailSignerFunctions;
|
|
17
|
-
|
|
18
|
-
export { type EmailSignerFunctions, useWalletEmailSigner };
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
type EmailSignerFunctions = {
|
|
2
|
-
/** Whether the email signer currently requires authentication (OTP verification). */
|
|
3
|
-
needsAuth: boolean;
|
|
4
|
-
/** Sends a one-time password to the user's email address. */
|
|
5
|
-
sendEmailWithOtp: () => Promise<void>;
|
|
6
|
-
/** Verifies the one-time password entered by the user. */
|
|
7
|
-
verifyOtp: (otp: string) => Promise<void>;
|
|
8
|
-
/** Rejects the current authentication request with an error. */
|
|
9
|
-
reject: (error: Error) => void;
|
|
10
|
-
};
|
|
11
|
-
/**
|
|
12
|
-
* Hook for managing email-based signer authentication flows.
|
|
13
|
-
* Provides OTP send/verify functions for wallets using an email signer.
|
|
14
|
-
* Must be used within a {@link CrossmintWalletProvider}.
|
|
15
|
-
*/
|
|
16
|
-
declare function useWalletEmailSigner(): EmailSignerFunctions;
|
|
17
|
-
|
|
18
|
-
export { type EmailSignerFunctions, useWalletEmailSigner };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkMKCQJOIOjs = require('../chunk-MKCQJOIO.js');require('../chunk-J42HASCI.js');exports.useWalletEmailSigner = _chunkMKCQJOIOjs.a;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a}from"../chunk-J477SX6P.mjs";import"../chunk-PSSAAY7D.mjs";export{a as useWalletEmailSigner};
|