@crossmint/client-sdk-react-native-ui 0.13.18 → 0.13.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/README.md +20 -0
  2. package/dist/{chunk-4VCABBIJ.js → chunk-2XVI4EV6.js} +1 -1
  3. package/dist/chunk-4HJT2QG3.mjs +1 -0
  4. package/dist/{chunk-KR4RRUYV.js → chunk-7MK4FKA3.js} +1 -1
  5. package/dist/chunk-E3JHGSJU.mjs +1 -0
  6. package/dist/chunk-EF5KYLDO.js +1 -0
  7. package/dist/{chunk-Y3SL6DBX.js → chunk-FAYZFW22.js} +1 -1
  8. package/dist/chunk-FIKDCXZD.mjs +1 -0
  9. package/dist/{chunk-OMKYKH4O.mjs → chunk-FZK2PPIV.mjs} +1 -1
  10. package/dist/{chunk-M6HODQP2.mjs → chunk-IB2BUTJH.mjs} +1 -1
  11. package/dist/chunk-LK3AO6AY.mjs +1 -0
  12. package/dist/{chunk-ZE7XQKNN.mjs → chunk-M672E3V7.mjs} +1 -1
  13. package/dist/{chunk-4IAV7PSP.js → chunk-Q2W64FSI.js} +1 -1
  14. package/dist/{chunk-FQVT5B6S.js → chunk-TICI5LTV.js} +1 -1
  15. package/dist/{chunk-KCKV6EJO.mjs → chunk-VDL2DQT7.mjs} +1 -1
  16. package/dist/chunk-XV77R5HP.js +1 -0
  17. package/dist/chunk-ZD4SAVMK.js +1 -0
  18. package/dist/components/embed/index.js +1 -1
  19. package/dist/components/embed/index.mjs +1 -1
  20. package/dist/components/embed/v3/CrossmintEmbeddedCheckoutV3.js +1 -1
  21. package/dist/components/embed/v3/CrossmintEmbeddedCheckoutV3.mjs +1 -1
  22. package/dist/components/embed/v3/EmbeddedCheckoutV3WebView.js +1 -1
  23. package/dist/components/embed/v3/EmbeddedCheckoutV3WebView.mjs +1 -1
  24. package/dist/components/embed/v3/index.js +1 -1
  25. package/dist/components/embed/v3/index.mjs +1 -1
  26. package/dist/components/index.d.mts +1 -1
  27. package/dist/components/index.d.ts +1 -1
  28. package/dist/components/index.js +1 -1
  29. package/dist/components/index.mjs +1 -1
  30. package/dist/components/wallets/ExportPrivateKeyButton.d.mts +6 -1
  31. package/dist/components/wallets/ExportPrivateKeyButton.d.ts +6 -1
  32. package/dist/components/wallets/index.d.mts +1 -1
  33. package/dist/components/wallets/index.d.ts +1 -1
  34. package/dist/hooks/index.js +1 -1
  35. package/dist/hooks/index.mjs +1 -1
  36. package/dist/hooks/useAuth.js +1 -1
  37. package/dist/hooks/useAuth.mjs +1 -1
  38. package/dist/hooks/useWalletEmailSigner.d.mts +9 -0
  39. package/dist/hooks/useWalletEmailSigner.d.ts +9 -0
  40. package/dist/index.d.mts +4 -4
  41. package/dist/index.d.ts +4 -4
  42. package/dist/index.js +1 -1
  43. package/dist/index.mjs +1 -1
  44. package/dist/logger/init.d.mts +3 -3
  45. package/dist/logger/init.d.ts +3 -3
  46. package/dist/logger/init.js +1 -1
  47. package/dist/logger/init.mjs +1 -1
  48. package/dist/providers/CrossmintAuthProvider.js +1 -1
  49. package/dist/providers/CrossmintAuthProvider.mjs +1 -1
  50. package/dist/providers/CrossmintProvider.d.mts +14 -8
  51. package/dist/providers/CrossmintProvider.d.ts +14 -8
  52. package/dist/providers/CrossmintProvider.js +1 -1
  53. package/dist/providers/CrossmintProvider.mjs +1 -1
  54. package/dist/providers/CrossmintWalletProvider.d.mts +11 -1
  55. package/dist/providers/CrossmintWalletProvider.d.ts +11 -1
  56. package/dist/providers/CrossmintWalletProvider.js +1 -1
  57. package/dist/providers/CrossmintWalletProvider.mjs +1 -1
  58. package/dist/providers/index.d.mts +2 -2
  59. package/dist/providers/index.d.ts +2 -2
  60. package/dist/providers/index.js +1 -1
  61. package/dist/providers/index.mjs +1 -1
  62. package/dist/utils/createCrossmintApiClient.js +1 -1
  63. package/dist/utils/createCrossmintApiClient.mjs +1 -1
  64. package/package.json +11 -9
  65. package/dist/chunk-6VH3WG6L.js +0 -1
  66. package/dist/chunk-CASSGVZG.mjs +0 -1
  67. package/dist/chunk-FRNCQK7L.mjs +0 -1
  68. package/dist/chunk-HS74BZSE.mjs +0 -1
  69. package/dist/chunk-K75IJHIB.js +0 -1
  70. package/dist/chunk-Q2GU2QIV.js +0 -1
  71. package/dist/chunk-YMGEZWIR.mjs +0 -1
package/README.md CHANGED
@@ -29,6 +29,7 @@ export default function App() {
29
29
  chain: "solana",
30
30
  signer: { type: "email" }
31
31
  }}
32
+ headlessSigningFlow={false}
32
33
  >
33
34
  <MainApp />
34
35
  </CrossmintWalletProvider>
@@ -242,6 +243,25 @@ EXPO_PUBLIC_CROSSMINT_API_KEY=your_api_key_here
242
243
  }
243
244
  ```
244
245
 
246
+ ## 📖 SDK Reference Docs Generation
247
+
248
+ ```
249
+ Source JSDoc → TypeDoc → api.json ─┐
250
+ ├→ generate-reference.mjs → MDX pages (docs/<product>/)
251
+ examples.json ─┘
252
+ ```
253
+
254
+ Run with `pnpm generate:docs` or `node scripts/generate-reference.mjs --product wallets`.
255
+
256
+ **Key details for maintainers:**
257
+
258
+ - **`api.json` and `docs/` are gitignored** — they're build artifacts, not checked in.
259
+ - **Adding a new product** only requires a new entry in the `PRODUCTS` config at the top of `generate-reference.mjs`. No other script changes needed.
260
+ - **Exports are auto-classified** by naming convention: `*Provider` → providers page, `use*` → hooks page, everything else → components page.
261
+ - **`examples.json`** holds all code snippets, keyed by export name (e.g. `"CrossmintProvider"`, `"useWallet"`). The script validates that every export has a matching example.
262
+ - **`MANUAL_RETURNS` / `EXPANDABLE_CHILDREN`** are escape hatches for cross-package types that TypeDoc can't resolve (e.g. wallet args, hook return types). If a new hook's return type shows as `unknown`, you likely need to add an entry here.
263
+ - **`skipErrorChecking: true`** in the TypeDoc config is intentional — React packages have peer deps that break type resolution without it.
264
+
245
265
  ## 📚 Examples & Documentation
246
266
 
247
267
  - **[Wallets Expo Quickstart](https://github.com/Crossmint/wallets-expo-quickstart)** - Create and interact with Crossmint wallets using Crossmint Auth for React Native.
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkQ2GU2QIVjs = require('./chunk-Q2GU2QIV.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:_chunkQ2GU2QIVjs.a.version},apiKeyExpectations:t}})}exports.a = a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZD4SAVMKjs = require('./chunk-ZD4SAVMK.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:_chunkZD4SAVMKjs.a.version},apiKeyExpectations:t}})}exports.a = a;
@@ -0,0 +1 @@
1
+ import{a as m}from"./chunk-E3JHGSJU.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 _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 _chunkQ2GU2QIVjs = require('./chunk-Q2GU2QIV.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,p,l,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:_chunkQ2GU2QIVjs.a.name,packageVersion:_chunkQ2GU2QIVjs.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=(l=(p=(u=e.modelName)!=null?u:e.deviceName)!=null?p:e.brand)!=null?l: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),y(a),a}function y(n){_reactnative.AppState.addEventListener("change",i=>{(i==="background"||i==="inactive")&&typeof n.flush=="function"&&n.flush()})}exports.a = P;
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 _chunkZD4SAVMKjs = require('./chunk-ZD4SAVMK.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:_chunkZD4SAVMKjs.a.name,packageVersion:_chunkZD4SAVMKjs.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
+ import{a as r}from"./chunk-FIKDCXZD.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};
@@ -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 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;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkYQEWHOQ7js = require('./chunk-YQEWHOQ7.js');var _chunkVACQTZRTjs = require('./chunk-VACQTZRT.js');var _chunk4VCABBIJjs = require('./chunk-4VCABBIJ.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=_chunk4VCABBIJjs.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
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkYQEWHOQ7js = require('./chunk-YQEWHOQ7.js');var _chunkVACQTZRTjs = require('./chunk-VACQTZRT.js');var _chunk2XVI4EV6js = require('./chunk-2XVI4EV6.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=_chunk2XVI4EV6js.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;
@@ -0,0 +1 @@
1
+ var c={name:"@crossmint/client-sdk-react-native-ui",version:"0.13.20",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};
@@ -1 +1 @@
1
- import{a as n}from"./chunk-CASSGVZG.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};
1
+ import{a as n}from"./chunk-FIKDCXZD.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};
@@ -1 +1 @@
1
- import{a as W}from"./chunk-FRNCQK7L.mjs";import{a as E}from"./chunk-XNDIT72O.mjs";import{a as P}from"./chunk-3QSVHCEH.mjs";import{a as w,e as m}from"./chunk-PSSAAY7D.mjs";import{useCallback as y,useRef as V,useMemo as f,useEffect as S,useState as z}from"react";import{View as x}from"react-native";import{RNWebView as _,WebViewParent as F}from"@crossmint/client-sdk-rn-window";import{environmentUrlConfig as k,signerInboundEvents as j,signerOutboundEvents as H,SignerErrorCode as K}from"@crossmint/client-signers";import{validateAPIKey as B}from"@crossmint/common-sdk-base";import{CrossmintWalletBaseProvider as G,useCrossmint as J}from"@crossmint/client-sdk-react-base";import{useLogger as $}from"@crossmint/client-sdk-react-base";import{Fragment as Q,jsx as c,jsxs as I}from"react/jsx-runtime";function q({children:d,createOnLogin:O,appearance:M,headlessSigningFlow:p=!0,callbacks:R}){let{crossmint:U}=J("CrossmintWalletProvider must be used within CrossmintProvider"),r=$(W),{apiKey:g,appId:u}=U,v=f(()=>{let e=B(g);if(!e.isValid)throw new Error("Invalid API key");return e},[g]),L=f(()=>k[v.environment],[v.environment]),a=V(null),n=V(null),[h,T]=z(!1),A=f(()=>u!=null?{crossmintAppId:u}:{},[u]);S(()=>{a.current!=null&&n.current==null&&(r.info("react-native.wallet.webview.initializing"),n.current=new F(a,{incomingEvents:H,outgoingEvents:j,handshakeOptions:{timeoutMs:3e4,intervalMs:100},recovery:{recoverableErrorCodes:[K.IndexedDbFatal]}}),r.info("react-native.wallet.webview.initialized"))},[h,r]);let N=y(()=>m(this,null,function*(){let e=n.current;if(e!=null)try{r.info("react-native.wallet.webview.handshake.start"),e.isConnected=!1,yield e.handshakeWithChild(),r.info("react-native.wallet.webview.handshake.success")}catch(t){r.error("react-native.wallet.webview.handshake.error",{error:t instanceof Error?t.message:String(t)}),console.error("[CrossmintWalletProvider] Handshake error:",t)}}),[r]),D=y(e=>{let t=n.current;if(t!=null){try{let o=JSON.parse(e.nativeEvent.data);if(o&&typeof o.type=="string"&&o.type.startsWith("console.")){let b=o.type.split(".")[1],C=(o.data||[]).map(i=>{try{return i==="[Function]"||i==="[Circular Reference]"||i==="[Unserializable Object]"?i:JSON.parse(i)}catch(ee){return i}}),s=`react-native.wallet.webview.console.${b}`,l={webview_args:C};switch(b){case"log":r.info(s,l);break;case"error":r.error(s,l);break;case"warn":r.warn(s,l);break;case"info":r.info(s,l);break;case"debug":r.debug(s,l);break;default:r.info("react-native.wallet.webview.console.unknown",{webview_method:b,webview_args:C})}return}}catch(o){}t.handleMessage(e)}},[r]);return I(G,{createOnLogin:O,appearance:M,headlessSigningFlow:p,initializeWebView:()=>m(this,null,function*(){r.info("react-native.wallet.webview.init.start"),T(!0);let e=0,t=100;for(;n.current==null&&e<t;)yield new Promise(o=>setTimeout(o,50)),e++;if(n.current==null)throw r.error("react-native.wallet.webview.init.timeout",{attempts:e}),new Error("WebView not ready or handshake incomplete");r.info("react-native.wallet.webview.init.success",{attempts:e})}),callbacks:R,renderUI:p?void 0:({emailSignerProps:e,phoneSignerProps:t})=>I(Q,{children:[c(E,w({},e)),c(P,w({},t))]}),clientTEEConnection:()=>{if(n.current==null)throw new Error("WebView not ready or handshake incomplete");return n.current},children:[d,h&&c(x,{style:{position:"absolute",width:0,height:0,overflow:"hidden"},children:c(_,{ref:a,source:{uri:L},globals:A,onLoadEnd:N,onMessage:D,onError:e=>{console.error("[CrossmintWalletProvider] WebView error:",e.nativeEvent)},onHttpError:e=>{console.error("[CrossmintWalletProvider] WebView HTTP error:",e.nativeEvent)},onContentProcessDidTerminate:()=>{var e;return(e=a.current)==null?void 0:e.reload()},onRenderProcessGone:()=>{var e;return(e=a.current)==null?void 0:e.reload()},style:{width:1,height:1},javaScriptCanOpenWindowsAutomatically:!1,thirdPartyCookiesEnabled:!1,sharedCookiesEnabled:!1,incognito:!1,setSupportMultipleWindows:!1,originWhitelist:[k[v.environment]],cacheEnabled:!0,cacheMode:"LOAD_DEFAULT"})})]})}function ve(d){return c(q,w({},d))}export{ve as a};
1
+ import{a as W}from"./chunk-4HJT2QG3.mjs";import{a as E}from"./chunk-XNDIT72O.mjs";import{a as P}from"./chunk-3QSVHCEH.mjs";import{a as w,e as m}from"./chunk-PSSAAY7D.mjs";import{useCallback as y,useRef as V,useMemo as f,useEffect as S,useState as z}from"react";import{View as x}from"react-native";import{RNWebView as _,WebViewParent as F}from"@crossmint/client-sdk-rn-window";import{environmentUrlConfig as k,signerInboundEvents as j,signerOutboundEvents as H,SignerErrorCode as K}from"@crossmint/client-signers";import{validateAPIKey as B}from"@crossmint/common-sdk-base";import{CrossmintWalletBaseProvider as G,useCrossmint as J}from"@crossmint/client-sdk-react-base";import{useLogger as $}from"@crossmint/client-sdk-react-base";import{Fragment as Q,jsx as c,jsxs as I}from"react/jsx-runtime";function q({children:d,createOnLogin:O,appearance:M,headlessSigningFlow:p=!0,callbacks:R}){let{crossmint:U}=J("CrossmintWalletProvider must be used within CrossmintProvider"),r=$(W),{apiKey:g,appId:u}=U,v=f(()=>{let e=B(g);if(!e.isValid)throw new Error("Invalid API key");return e},[g]),L=f(()=>k[v.environment],[v.environment]),a=V(null),n=V(null),[h,T]=z(!1),A=f(()=>u!=null?{crossmintAppId:u}:{},[u]);S(()=>{a.current!=null&&n.current==null&&(r.info("react-native.wallet.webview.initializing"),n.current=new F(a,{incomingEvents:H,outgoingEvents:j,handshakeOptions:{timeoutMs:3e4,intervalMs:100},recovery:{recoverableErrorCodes:[K.IndexedDbFatal]}}),r.info("react-native.wallet.webview.initialized"))},[h,r]);let N=y(()=>m(this,null,function*(){let e=n.current;if(e!=null)try{r.info("react-native.wallet.webview.handshake.start"),e.isConnected=!1,yield e.handshakeWithChild(),r.info("react-native.wallet.webview.handshake.success")}catch(t){r.error("react-native.wallet.webview.handshake.error",{error:t instanceof Error?t.message:String(t)}),console.error("[CrossmintWalletProvider] Handshake error:",t)}}),[r]),D=y(e=>{let t=n.current;if(t!=null){try{let o=JSON.parse(e.nativeEvent.data);if(o&&typeof o.type=="string"&&o.type.startsWith("console.")){let b=o.type.split(".")[1],C=(o.data||[]).map(i=>{try{return i==="[Function]"||i==="[Circular Reference]"||i==="[Unserializable Object]"?i:JSON.parse(i)}catch(ee){return i}}),s=`react-native.wallet.webview.console.${b}`,l={webview_args:C};switch(b){case"log":r.info(s,l);break;case"error":r.error(s,l);break;case"warn":r.warn(s,l);break;case"info":r.info(s,l);break;case"debug":r.debug(s,l);break;default:r.info("react-native.wallet.webview.console.unknown",{webview_method:b,webview_args:C})}return}}catch(o){}t.handleMessage(e)}},[r]);return I(G,{createOnLogin:O,appearance:M,headlessSigningFlow:p,initializeWebView:()=>m(this,null,function*(){r.info("react-native.wallet.webview.init.start"),T(!0);let e=0,t=100;for(;n.current==null&&e<t;)yield new Promise(o=>setTimeout(o,50)),e++;if(n.current==null)throw r.error("react-native.wallet.webview.init.timeout",{attempts:e}),new Error("WebView not ready or handshake incomplete");r.info("react-native.wallet.webview.init.success",{attempts:e})}),callbacks:R,renderUI:p?void 0:({emailSignerProps:e,phoneSignerProps:t})=>I(Q,{children:[c(E,w({},e)),c(P,w({},t))]}),clientTEEConnection:()=>{if(n.current==null)throw new Error("WebView not ready or handshake incomplete");return n.current},children:[d,h&&c(x,{style:{position:"absolute",width:0,height:0,overflow:"hidden"},children:c(_,{ref:a,source:{uri:L},globals:A,onLoadEnd:N,onMessage:D,onError:e=>{console.error("[CrossmintWalletProvider] WebView error:",e.nativeEvent)},onHttpError:e=>{console.error("[CrossmintWalletProvider] WebView HTTP error:",e.nativeEvent)},onContentProcessDidTerminate:()=>{var e;return(e=a.current)==null?void 0:e.reload()},onRenderProcessGone:()=>{var e;return(e=a.current)==null?void 0:e.reload()},style:{width:1,height:1},javaScriptCanOpenWindowsAutomatically:!1,thirdPartyCookiesEnabled:!1,sharedCookiesEnabled:!1,incognito:!1,setSupportMultipleWindows:!1,originWhitelist:[k[v.environment]],cacheEnabled:!0,cacheMode:"LOAD_DEFAULT"})})]})}function ve(d){return c(q,w({},d))}export{ve as a};
@@ -0,0 +1 @@
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};
@@ -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-OMKYKH4O.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};
1
+ import{c as h}from"./chunk-PCJMDUSI.mjs";import{a as y}from"./chunk-FX23A4BR.mjs";import{a as f}from"./chunk-FZK2PPIV.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};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkY3SL6DBXjs = require('./chunk-Y3SL6DBX.js');var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _jsxruntime = require('react/jsx-runtime');function s(d){return _jsxruntime.jsx.call(void 0, _chunkY3SL6DBXjs.a,_chunkJ42HASCIjs.a.call(void 0, {},d))}exports.a = s;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkFAYZFW22js = require('./chunk-FAYZFW22.js');var _chunkJ42HASCIjs = require('./chunk-J42HASCI.js');var _jsxruntime = require('react/jsx-runtime');function s(d){return _jsxruntime.jsx.call(void 0, _chunkFAYZFW22js.a,_chunkJ42HASCIjs.a.call(void 0, {},d))}exports.a = s;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk6VH3WG6Ljs = require('./chunk-6VH3WG6L.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 q({children:d,createOnLogin:O,appearance:M,headlessSigningFlow:p=!0,callbacks:R}){let{crossmint:U}=_clientsdkreactbase.useCrossmint.call(void 0, "CrossmintWalletProvider must be used within CrossmintProvider"),r=_clientsdkreactbase.useLogger.call(void 0, _chunk6VH3WG6Ljs.a),{apiKey:g,appId:u}=U,v=_react.useMemo.call(void 0, ()=>{let e=_commonsdkbase.validateAPIKey.call(void 0, g);if(!e.isValid)throw new Error("Invalid API key");return e},[g]),L=_react.useMemo.call(void 0, ()=>_clientsigners.environmentUrlConfig[v.environment],[v.environment]),a=_react.useRef.call(void 0, null),n=_react.useRef.call(void 0, null),[h,T]=_react.useState.call(void 0, !1),A=_react.useMemo.call(void 0, ()=>u!=null?{crossmintAppId:u}:{},[u]);_react.useEffect.call(void 0, ()=>{a.current!=null&&n.current==null&&(r.info("react-native.wallet.webview.initializing"),n.current=new (0, _clientsdkrnwindow.WebViewParent)(a,{incomingEvents:_clientsigners.signerOutboundEvents,outgoingEvents:_clientsigners.signerInboundEvents,handshakeOptions:{timeoutMs:3e4,intervalMs:100},recovery:{recoverableErrorCodes:[_clientsigners.SignerErrorCode.IndexedDbFatal]}}),r.info("react-native.wallet.webview.initialized"))},[h,r]);let N=_react.useCallback.call(void 0, ()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){let e=n.current;if(e!=null)try{r.info("react-native.wallet.webview.handshake.start"),e.isConnected=!1,yield e.handshakeWithChild(),r.info("react-native.wallet.webview.handshake.success")}catch(t){r.error("react-native.wallet.webview.handshake.error",{error:t instanceof Error?t.message:String(t)}),console.error("[CrossmintWalletProvider] Handshake error:",t)}}),[r]),D=_react.useCallback.call(void 0, e=>{let t=n.current;if(t!=null){try{let o=JSON.parse(e.nativeEvent.data);if(o&&typeof o.type=="string"&&o.type.startsWith("console.")){let b=o.type.split(".")[1],C=(o.data||[]).map(i=>{try{return i==="[Function]"||i==="[Circular Reference]"||i==="[Unserializable Object]"?i:JSON.parse(i)}catch(ee){return i}}),s=`react-native.wallet.webview.console.${b}`,l={webview_args:C};switch(b){case"log":r.info(s,l);break;case"error":r.error(s,l);break;case"warn":r.warn(s,l);break;case"info":r.info(s,l);break;case"debug":r.debug(s,l);break;default:r.info("react-native.wallet.webview.console.unknown",{webview_method:b,webview_args:C})}return}}catch(o){}t.handleMessage(e)}},[r]);return _jsxruntime.jsxs.call(void 0, _clientsdkreactbase.CrossmintWalletBaseProvider,{createOnLogin:O,appearance:M,headlessSigningFlow:p,initializeWebView:()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){r.info("react-native.wallet.webview.init.start"),T(!0);let e=0,t=100;for(;n.current==null&&e<t;)yield new Promise(o=>setTimeout(o,50)),e++;if(n.current==null)throw r.error("react-native.wallet.webview.init.timeout",{attempts:e}),new Error("WebView not ready or handshake incomplete");r.info("react-native.wallet.webview.init.success",{attempts:e})}),callbacks:R,renderUI:p?void 0:({emailSignerProps:e,phoneSignerProps:t})=>_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, {},t))]}),clientTEEConnection:()=>{if(n.current==null)throw new Error("WebView not ready or handshake incomplete");return n.current},children:[d,h&&_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:a,source:{uri:L},globals:A,onLoadEnd:N,onMessage:D,onError:e=>{console.error("[CrossmintWalletProvider] WebView error:",e.nativeEvent)},onHttpError:e=>{console.error("[CrossmintWalletProvider] WebView HTTP error:",e.nativeEvent)},onContentProcessDidTerminate:()=>{var e;return(e=a.current)==null?void 0:e.reload()},onRenderProcessGone:()=>{var e;return(e=a.current)==null?void 0:e.reload()},style:{width:1,height:1},javaScriptCanOpenWindowsAutomatically:!1,thirdPartyCookiesEnabled:!1,sharedCookiesEnabled:!1,incognito:!1,setSupportMultipleWindows:!1,originWhitelist:[_clientsigners.environmentUrlConfig[v.environment]],cacheEnabled:!0,cacheMode:"LOAD_DEFAULT"})})]})}function ue(d){return _jsxruntime.jsx.call(void 0, q,_chunkJ42HASCIjs.a.call(void 0, {},d))}exports.a = ue;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXV77R5HPjs = require('./chunk-XV77R5HP.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 q({children:d,createOnLogin:O,appearance:M,headlessSigningFlow:p=!0,callbacks:R}){let{crossmint:U}=_clientsdkreactbase.useCrossmint.call(void 0, "CrossmintWalletProvider must be used within CrossmintProvider"),r=_clientsdkreactbase.useLogger.call(void 0, _chunkXV77R5HPjs.a),{apiKey:g,appId:u}=U,v=_react.useMemo.call(void 0, ()=>{let e=_commonsdkbase.validateAPIKey.call(void 0, g);if(!e.isValid)throw new Error("Invalid API key");return e},[g]),L=_react.useMemo.call(void 0, ()=>_clientsigners.environmentUrlConfig[v.environment],[v.environment]),a=_react.useRef.call(void 0, null),n=_react.useRef.call(void 0, null),[h,T]=_react.useState.call(void 0, !1),A=_react.useMemo.call(void 0, ()=>u!=null?{crossmintAppId:u}:{},[u]);_react.useEffect.call(void 0, ()=>{a.current!=null&&n.current==null&&(r.info("react-native.wallet.webview.initializing"),n.current=new (0, _clientsdkrnwindow.WebViewParent)(a,{incomingEvents:_clientsigners.signerOutboundEvents,outgoingEvents:_clientsigners.signerInboundEvents,handshakeOptions:{timeoutMs:3e4,intervalMs:100},recovery:{recoverableErrorCodes:[_clientsigners.SignerErrorCode.IndexedDbFatal]}}),r.info("react-native.wallet.webview.initialized"))},[h,r]);let N=_react.useCallback.call(void 0, ()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){let e=n.current;if(e!=null)try{r.info("react-native.wallet.webview.handshake.start"),e.isConnected=!1,yield e.handshakeWithChild(),r.info("react-native.wallet.webview.handshake.success")}catch(t){r.error("react-native.wallet.webview.handshake.error",{error:t instanceof Error?t.message:String(t)}),console.error("[CrossmintWalletProvider] Handshake error:",t)}}),[r]),D=_react.useCallback.call(void 0, e=>{let t=n.current;if(t!=null){try{let o=JSON.parse(e.nativeEvent.data);if(o&&typeof o.type=="string"&&o.type.startsWith("console.")){let b=o.type.split(".")[1],C=(o.data||[]).map(i=>{try{return i==="[Function]"||i==="[Circular Reference]"||i==="[Unserializable Object]"?i:JSON.parse(i)}catch(ee){return i}}),s=`react-native.wallet.webview.console.${b}`,l={webview_args:C};switch(b){case"log":r.info(s,l);break;case"error":r.error(s,l);break;case"warn":r.warn(s,l);break;case"info":r.info(s,l);break;case"debug":r.debug(s,l);break;default:r.info("react-native.wallet.webview.console.unknown",{webview_method:b,webview_args:C})}return}}catch(o){}t.handleMessage(e)}},[r]);return _jsxruntime.jsxs.call(void 0, _clientsdkreactbase.CrossmintWalletBaseProvider,{createOnLogin:O,appearance:M,headlessSigningFlow:p,initializeWebView:()=>_chunkJ42HASCIjs.e.call(void 0, this,null,function*(){r.info("react-native.wallet.webview.init.start"),T(!0);let e=0,t=100;for(;n.current==null&&e<t;)yield new Promise(o=>setTimeout(o,50)),e++;if(n.current==null)throw r.error("react-native.wallet.webview.init.timeout",{attempts:e}),new Error("WebView not ready or handshake incomplete");r.info("react-native.wallet.webview.init.success",{attempts:e})}),callbacks:R,renderUI:p?void 0:({emailSignerProps:e,phoneSignerProps:t})=>_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, {},t))]}),clientTEEConnection:()=>{if(n.current==null)throw new Error("WebView not ready or handshake incomplete");return n.current},children:[d,h&&_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:a,source:{uri:L},globals:A,onLoadEnd:N,onMessage:D,onError:e=>{console.error("[CrossmintWalletProvider] WebView error:",e.nativeEvent)},onHttpError:e=>{console.error("[CrossmintWalletProvider] WebView HTTP error:",e.nativeEvent)},onContentProcessDidTerminate:()=>{var e;return(e=a.current)==null?void 0:e.reload()},onRenderProcessGone:()=>{var e;return(e=a.current)==null?void 0:e.reload()},style:{width:1,height:1},javaScriptCanOpenWindowsAutomatically:!1,thirdPartyCookiesEnabled:!1,sharedCookiesEnabled:!1,incognito:!1,setSupportMultipleWindows:!1,originWhitelist:[_clientsigners.environmentUrlConfig[v.environment]],cacheEnabled:!0,cacheMode:"LOAD_DEFAULT"})})]})}function ue(d){return _jsxruntime.jsx.call(void 0, q,_chunkJ42HASCIjs.a.call(void 0, {},d))}exports.a = ue;
@@ -1 +1 @@
1
- import{a as o}from"./chunk-ZE7XQKNN.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
+ import{a as o}from"./chunk-M672E3V7.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};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunk7MK4FKA3js = require('./chunk-7MK4FKA3.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, ()=>_chunk7MK4FKA3js.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;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var c={name:"@crossmint/client-sdk-react-native-ui",version:"0.13.20",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 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-DKQZSNOO.js');require('../../chunk-72MMCJ2E.js');var _chunk4IAV7PSPjs = require('../../chunk-4IAV7PSP.js');require('../../chunk-Y3SL6DBX.js');require('../../chunk-YQEWHOQ7.js');require('../../chunk-VACQTZRT.js');require('../../chunk-4VCABBIJ.js');require('../../chunk-2D2RJCVX.js');require('../../chunk-Q2GU2QIV.js');require('../../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunk4IAV7PSPjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-DKQZSNOO.js');require('../../chunk-72MMCJ2E.js');var _chunkQ2W64FSIjs = require('../../chunk-Q2W64FSI.js');require('../../chunk-FAYZFW22.js');require('../../chunk-YQEWHOQ7.js');require('../../chunk-VACQTZRT.js');require('../../chunk-2XVI4EV6.js');require('../../chunk-2D2RJCVX.js');require('../../chunk-ZD4SAVMK.js');require('../../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunkQ2W64FSIjs.a;
@@ -1 +1 @@
1
- import"../../chunk-TIQGKXQA.mjs";import"../../chunk-MB7H3PBJ.mjs";import{a}from"../../chunk-KCKV6EJO.mjs";import"../../chunk-ZE7XQKNN.mjs";import"../../chunk-PCJMDUSI.mjs";import"../../chunk-FX23A4BR.mjs";import"../../chunk-OMKYKH4O.mjs";import"../../chunk-FFQ6EQCL.mjs";import"../../chunk-CASSGVZG.mjs";import"../../chunk-PSSAAY7D.mjs";export{a as CrossmintEmbeddedCheckout};
1
+ import"../../chunk-TIQGKXQA.mjs";import"../../chunk-MB7H3PBJ.mjs";import{a}from"../../chunk-VDL2DQT7.mjs";import"../../chunk-M672E3V7.mjs";import"../../chunk-PCJMDUSI.mjs";import"../../chunk-FX23A4BR.mjs";import"../../chunk-FZK2PPIV.mjs";import"../../chunk-FFQ6EQCL.mjs";import"../../chunk-FIKDCXZD.mjs";import"../../chunk-PSSAAY7D.mjs";export{a as CrossmintEmbeddedCheckout};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk4IAV7PSPjs = require('../../../chunk-4IAV7PSP.js');require('../../../chunk-Y3SL6DBX.js');require('../../../chunk-YQEWHOQ7.js');require('../../../chunk-VACQTZRT.js');require('../../../chunk-4VCABBIJ.js');require('../../../chunk-2D2RJCVX.js');require('../../../chunk-Q2GU2QIV.js');require('../../../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunk4IAV7PSPjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkQ2W64FSIjs = require('../../../chunk-Q2W64FSI.js');require('../../../chunk-FAYZFW22.js');require('../../../chunk-YQEWHOQ7.js');require('../../../chunk-VACQTZRT.js');require('../../../chunk-2XVI4EV6.js');require('../../../chunk-2D2RJCVX.js');require('../../../chunk-ZD4SAVMK.js');require('../../../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunkQ2W64FSIjs.a;
@@ -1 +1 @@
1
- import{a}from"../../../chunk-KCKV6EJO.mjs";import"../../../chunk-ZE7XQKNN.mjs";import"../../../chunk-PCJMDUSI.mjs";import"../../../chunk-FX23A4BR.mjs";import"../../../chunk-OMKYKH4O.mjs";import"../../../chunk-FFQ6EQCL.mjs";import"../../../chunk-CASSGVZG.mjs";import"../../../chunk-PSSAAY7D.mjs";export{a as CrossmintEmbeddedCheckout};
1
+ import{a}from"../../../chunk-VDL2DQT7.mjs";import"../../../chunk-M672E3V7.mjs";import"../../../chunk-PCJMDUSI.mjs";import"../../../chunk-FX23A4BR.mjs";import"../../../chunk-FZK2PPIV.mjs";import"../../../chunk-FFQ6EQCL.mjs";import"../../../chunk-FIKDCXZD.mjs";import"../../../chunk-PSSAAY7D.mjs";export{a as CrossmintEmbeddedCheckout};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkY3SL6DBXjs = require('../../../chunk-Y3SL6DBX.js');require('../../../chunk-YQEWHOQ7.js');require('../../../chunk-VACQTZRT.js');require('../../../chunk-4VCABBIJ.js');require('../../../chunk-2D2RJCVX.js');require('../../../chunk-Q2GU2QIV.js');require('../../../chunk-J42HASCI.js');exports.EmbeddedCheckoutV3WebView = _chunkY3SL6DBXjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkFAYZFW22js = require('../../../chunk-FAYZFW22.js');require('../../../chunk-YQEWHOQ7.js');require('../../../chunk-VACQTZRT.js');require('../../../chunk-2XVI4EV6.js');require('../../../chunk-2D2RJCVX.js');require('../../../chunk-ZD4SAVMK.js');require('../../../chunk-J42HASCI.js');exports.EmbeddedCheckoutV3WebView = _chunkFAYZFW22js.a;
@@ -1 +1 @@
1
- import{a}from"../../../chunk-ZE7XQKNN.mjs";import"../../../chunk-PCJMDUSI.mjs";import"../../../chunk-FX23A4BR.mjs";import"../../../chunk-OMKYKH4O.mjs";import"../../../chunk-FFQ6EQCL.mjs";import"../../../chunk-CASSGVZG.mjs";import"../../../chunk-PSSAAY7D.mjs";export{a as EmbeddedCheckoutV3WebView};
1
+ import{a}from"../../../chunk-M672E3V7.mjs";import"../../../chunk-PCJMDUSI.mjs";import"../../../chunk-FX23A4BR.mjs";import"../../../chunk-FZK2PPIV.mjs";import"../../../chunk-FFQ6EQCL.mjs";import"../../../chunk-FIKDCXZD.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 _chunk4IAV7PSPjs = require('../../../chunk-4IAV7PSP.js');require('../../../chunk-Y3SL6DBX.js');require('../../../chunk-YQEWHOQ7.js');require('../../../chunk-VACQTZRT.js');require('../../../chunk-4VCABBIJ.js');require('../../../chunk-2D2RJCVX.js');require('../../../chunk-Q2GU2QIV.js');require('../../../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunk4IAV7PSPjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../../chunk-72MMCJ2E.js');var _chunkQ2W64FSIjs = require('../../../chunk-Q2W64FSI.js');require('../../../chunk-FAYZFW22.js');require('../../../chunk-YQEWHOQ7.js');require('../../../chunk-VACQTZRT.js');require('../../../chunk-2XVI4EV6.js');require('../../../chunk-2D2RJCVX.js');require('../../../chunk-ZD4SAVMK.js');require('../../../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunkQ2W64FSIjs.a;
@@ -1 +1 @@
1
- import"../../../chunk-MB7H3PBJ.mjs";import{a}from"../../../chunk-KCKV6EJO.mjs";import"../../../chunk-ZE7XQKNN.mjs";import"../../../chunk-PCJMDUSI.mjs";import"../../../chunk-FX23A4BR.mjs";import"../../../chunk-OMKYKH4O.mjs";import"../../../chunk-FFQ6EQCL.mjs";import"../../../chunk-CASSGVZG.mjs";import"../../../chunk-PSSAAY7D.mjs";export{a as CrossmintEmbeddedCheckout};
1
+ import"../../../chunk-MB7H3PBJ.mjs";import{a}from"../../../chunk-VDL2DQT7.mjs";import"../../../chunk-M672E3V7.mjs";import"../../../chunk-PCJMDUSI.mjs";import"../../../chunk-FX23A4BR.mjs";import"../../../chunk-FZK2PPIV.mjs";import"../../../chunk-FFQ6EQCL.mjs";import"../../../chunk-FIKDCXZD.mjs";import"../../../chunk-PSSAAY7D.mjs";export{a as CrossmintEmbeddedCheckout};
@@ -1,7 +1,7 @@
1
1
  export { CrossmintEmbeddedCheckout } from './embed/v3/CrossmintEmbeddedCheckoutV3.mjs';
2
2
  export { EmailSignersDialog } from './signers/EmailSignersDialog.mjs';
3
3
  export { PhoneSignersDialog } from './signers/PhoneSignersDialog.mjs';
4
- export { ExportPrivateKeyButton } from './wallets/ExportPrivateKeyButton.mjs';
4
+ export { ExportPrivateKeyButton, ExportPrivateKeyButtonProps } from './wallets/ExportPrivateKeyButton.mjs';
5
5
  import 'react/jsx-runtime';
6
6
  import '@crossmint/client-sdk-base';
7
7
  import 'react';
@@ -1,7 +1,7 @@
1
1
  export { CrossmintEmbeddedCheckout } from './embed/v3/CrossmintEmbeddedCheckoutV3.js';
2
2
  export { EmailSignersDialog } from './signers/EmailSignersDialog.js';
3
3
  export { PhoneSignersDialog } from './signers/PhoneSignersDialog.js';
4
- export { ExportPrivateKeyButton } from './wallets/ExportPrivateKeyButton.js';
4
+ export { ExportPrivateKeyButton, ExportPrivateKeyButtonProps } from './wallets/ExportPrivateKeyButton.js';
5
5
  import 'react/jsx-runtime';
6
6
  import '@crossmint/client-sdk-base';
7
7
  import 'react';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-2PX34LDU.js');require('../chunk-AJMHVVST.js');var _chunkUA34B5QBjs = require('../chunk-UA34B5QB.js');require('../chunk-DKQZSNOO.js');require('../chunk-72MMCJ2E.js');var _chunk4IAV7PSPjs = require('../chunk-4IAV7PSP.js');require('../chunk-Y3SL6DBX.js');require('../chunk-YQEWHOQ7.js');require('../chunk-VACQTZRT.js');require('../chunk-4VCABBIJ.js');require('../chunk-I4D3YJW2.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-2D2RJCVX.js');require('../chunk-Q2GU2QIV.js');require('../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunk4IAV7PSPjs.a; exports.EmailSignersDialog = _chunkYJORUMPBjs.a; exports.ExportPrivateKeyButton = _chunkUA34B5QBjs.a; exports.PhoneSignersDialog = _chunkMVVSGLQLjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-2PX34LDU.js');require('../chunk-AJMHVVST.js');var _chunkUA34B5QBjs = require('../chunk-UA34B5QB.js');require('../chunk-DKQZSNOO.js');require('../chunk-72MMCJ2E.js');var _chunkQ2W64FSIjs = require('../chunk-Q2W64FSI.js');require('../chunk-FAYZFW22.js');require('../chunk-YQEWHOQ7.js');require('../chunk-VACQTZRT.js');require('../chunk-2XVI4EV6.js');require('../chunk-I4D3YJW2.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-2D2RJCVX.js');require('../chunk-ZD4SAVMK.js');require('../chunk-J42HASCI.js');exports.CrossmintEmbeddedCheckout = _chunkQ2W64FSIjs.a; exports.EmailSignersDialog = _chunkYJORUMPBjs.a; exports.ExportPrivateKeyButton = _chunkUA34B5QBjs.a; exports.PhoneSignersDialog = _chunkMVVSGLQLjs.a;
@@ -1 +1 @@
1
- import"../chunk-UBHIBMTA.mjs";import"../chunk-5CLFJLE4.mjs";import{a as d}from"../chunk-EF2YTIUF.mjs";import"../chunk-TIQGKXQA.mjs";import"../chunk-MB7H3PBJ.mjs";import{a as c}from"../chunk-KCKV6EJO.mjs";import"../chunk-ZE7XQKNN.mjs";import"../chunk-PCJMDUSI.mjs";import"../chunk-FX23A4BR.mjs";import"../chunk-OMKYKH4O.mjs";import"../chunk-J7Q2R6UH.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-FFQ6EQCL.mjs";import"../chunk-CASSGVZG.mjs";import"../chunk-PSSAAY7D.mjs";export{c as CrossmintEmbeddedCheckout,a as EmailSignersDialog,d as ExportPrivateKeyButton,b as PhoneSignersDialog};
1
+ import"../chunk-UBHIBMTA.mjs";import"../chunk-5CLFJLE4.mjs";import{a as d}from"../chunk-EF2YTIUF.mjs";import"../chunk-TIQGKXQA.mjs";import"../chunk-MB7H3PBJ.mjs";import{a as c}from"../chunk-VDL2DQT7.mjs";import"../chunk-M672E3V7.mjs";import"../chunk-PCJMDUSI.mjs";import"../chunk-FX23A4BR.mjs";import"../chunk-FZK2PPIV.mjs";import"../chunk-J7Q2R6UH.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-FFQ6EQCL.mjs";import"../chunk-FIKDCXZD.mjs";import"../chunk-PSSAAY7D.mjs";export{c as CrossmintEmbeddedCheckout,a as EmailSignersDialog,d as ExportPrivateKeyButton,b as PhoneSignersDialog};
@@ -2,8 +2,13 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { UIConfig } from '@crossmint/common-sdk-base';
3
3
 
4
4
  interface ExportPrivateKeyButtonProps {
5
+ /** Optional appearance configuration for styling the export button. */
5
6
  appearance?: UIConfig;
6
7
  }
8
+ /**
9
+ * Renders a button that allows the user to export their wallet's private key.
10
+ * Only works with email and phone signers. Will not render for passkey or external wallet signers.
11
+ */
7
12
  declare function ExportPrivateKeyButton({ appearance }: ExportPrivateKeyButtonProps): react_jsx_runtime.JSX.Element | null;
8
13
 
9
- export { ExportPrivateKeyButton };
14
+ export { ExportPrivateKeyButton, type ExportPrivateKeyButtonProps };
@@ -2,8 +2,13 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { UIConfig } from '@crossmint/common-sdk-base';
3
3
 
4
4
  interface ExportPrivateKeyButtonProps {
5
+ /** Optional appearance configuration for styling the export button. */
5
6
  appearance?: UIConfig;
6
7
  }
8
+ /**
9
+ * Renders a button that allows the user to export their wallet's private key.
10
+ * Only works with email and phone signers. Will not render for passkey or external wallet signers.
11
+ */
7
12
  declare function ExportPrivateKeyButton({ appearance }: ExportPrivateKeyButtonProps): react_jsx_runtime.JSX.Element | null;
8
13
 
9
- export { ExportPrivateKeyButton };
14
+ export { ExportPrivateKeyButton, type ExportPrivateKeyButtonProps };
@@ -1,3 +1,3 @@
1
- export { ExportPrivateKeyButton } from './ExportPrivateKeyButton.mjs';
1
+ export { ExportPrivateKeyButton, ExportPrivateKeyButtonProps } from './ExportPrivateKeyButton.mjs';
2
2
  import 'react/jsx-runtime';
3
3
  import '@crossmint/common-sdk-base';
@@ -1,3 +1,3 @@
1
- export { ExportPrivateKeyButton } from './ExportPrivateKeyButton.js';
1
+ export { ExportPrivateKeyButton, ExportPrivateKeyButtonProps } from './ExportPrivateKeyButton.js';
2
2
  import 'react/jsx-runtime';
3
3
  import '@crossmint/common-sdk-base';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkK75IJHIBjs = require('../chunk-K75IJHIB.js');require('../chunk-SHTETN4C.js');var _chunk77GXCNDPjs = require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');var _chunkMKCQJOIOjs = require('../chunk-MKCQJOIO.js');require('../chunk-J42HASCI.js');exports.CrossmintCheckoutProvider = _chunk77GXCNDPjs.a; exports.useAuth = _chunkK75IJHIBjs.d; exports.useCrossmint = _chunkK75IJHIBjs.e; exports.useCrossmintAuth = _chunkK75IJHIBjs.c; exports.useCrossmintCheckout = _chunk77GXCNDPjs.b; exports.useWallet = _chunkK75IJHIBjs.f; exports.useWalletEmailSigner = _chunkMKCQJOIOjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkEF5KYLDOjs = require('../chunk-EF5KYLDO.js');require('../chunk-SHTETN4C.js');var _chunk77GXCNDPjs = require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');var _chunkMKCQJOIOjs = require('../chunk-MKCQJOIO.js');require('../chunk-J42HASCI.js');exports.CrossmintCheckoutProvider = _chunk77GXCNDPjs.a; exports.useAuth = _chunkEF5KYLDOjs.d; exports.useCrossmint = _chunkEF5KYLDOjs.e; exports.useCrossmintAuth = _chunkEF5KYLDOjs.c; exports.useCrossmintCheckout = _chunk77GXCNDPjs.b; exports.useWallet = _chunkEF5KYLDOjs.f; exports.useWalletEmailSigner = _chunkMKCQJOIOjs.a;
@@ -1 +1 @@
1
- import{c as d,d as e,e as f,f as g}from"../chunk-HS74BZSE.mjs";import"../chunk-ZCKUSOGC.mjs";import{a as b,b as c}from"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import{a}from"../chunk-J477SX6P.mjs";import"../chunk-PSSAAY7D.mjs";export{b as CrossmintCheckoutProvider,e as useAuth,f as useCrossmint,d as useCrossmintAuth,c as useCrossmintCheckout,g as useWallet,a as useWalletEmailSigner};
1
+ import{c as d,d as e,e as f,f as g}from"../chunk-LK3AO6AY.mjs";import"../chunk-ZCKUSOGC.mjs";import{a as b,b as c}from"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import{a}from"../chunk-J477SX6P.mjs";import"../chunk-PSSAAY7D.mjs";export{b as CrossmintCheckoutProvider,e as useAuth,f as useCrossmint,d as useCrossmintAuth,c as useCrossmintCheckout,g as useWallet,a as useWalletEmailSigner};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkK75IJHIBjs = require('../chunk-K75IJHIB.js');require('../chunk-SHTETN4C.js');require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-MKCQJOIO.js');require('../chunk-J42HASCI.js');exports.useAuth = _chunkK75IJHIBjs.d; exports.useCrossmintAuth = _chunkK75IJHIBjs.c;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkEF5KYLDOjs = require('../chunk-EF5KYLDO.js');require('../chunk-SHTETN4C.js');require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-MKCQJOIO.js');require('../chunk-J42HASCI.js');exports.useAuth = _chunkEF5KYLDOjs.d; exports.useCrossmintAuth = _chunkEF5KYLDOjs.c;
@@ -1 +1 @@
1
- import{c as a,d as b}from"../chunk-HS74BZSE.mjs";import"../chunk-ZCKUSOGC.mjs";import"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-J477SX6P.mjs";import"../chunk-PSSAAY7D.mjs";export{b as useAuth,a as useCrossmintAuth};
1
+ import{c as a,d as b}from"../chunk-LK3AO6AY.mjs";import"../chunk-ZCKUSOGC.mjs";import"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-J477SX6P.mjs";import"../chunk-PSSAAY7D.mjs";export{b as useAuth,a as useCrossmintAuth};
@@ -1,9 +1,18 @@
1
1
  type EmailSignerFunctions = {
2
+ /** Whether the email signer currently requires authentication (OTP verification). */
2
3
  needsAuth: boolean;
4
+ /** Sends a one-time password to the user's email address. */
3
5
  sendEmailWithOtp: () => Promise<void>;
6
+ /** Verifies the one-time password entered by the user. */
4
7
  verifyOtp: (otp: string) => Promise<void>;
8
+ /** Rejects the current authentication request with an error. */
5
9
  reject: (error: Error) => void;
6
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
+ */
7
16
  declare function useWalletEmailSigner(): EmailSignerFunctions;
8
17
 
9
18
  export { type EmailSignerFunctions, useWalletEmailSigner };
@@ -1,9 +1,18 @@
1
1
  type EmailSignerFunctions = {
2
+ /** Whether the email signer currently requires authentication (OTP verification). */
2
3
  needsAuth: boolean;
4
+ /** Sends a one-time password to the user's email address. */
3
5
  sendEmailWithOtp: () => Promise<void>;
6
+ /** Verifies the one-time password entered by the user. */
4
7
  verifyOtp: (otp: string) => Promise<void>;
8
+ /** Rejects the current authentication request with an error. */
5
9
  reject: (error: Error) => void;
6
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
+ */
7
16
  declare function useWalletEmailSigner(): EmailSignerFunctions;
8
17
 
9
18
  export { type EmailSignerFunctions, useWalletEmailSigner };
package/dist/index.d.mts CHANGED
@@ -2,16 +2,16 @@ export { useCrossmint, useWallet } from '@crossmint/client-sdk-react-base';
2
2
  export { EmailSignerFunctions, useWalletEmailSigner } from './hooks/useWalletEmailSigner.mjs';
3
3
  export { CrossmintCheckoutContext, CrossmintCheckoutProvider, useCrossmintCheckout } from './hooks/useCrossmintCheckout.mjs';
4
4
  export { useAuth, useCrossmintAuth } from './hooks/useAuth.mjs';
5
- export { CrossmintProvider } from './providers/CrossmintProvider.mjs';
5
+ export { CrossmintProvider, CrossmintProviderProps } from './providers/CrossmintProvider.mjs';
6
6
  export { CrossmintAuthProvider } from './providers/CrossmintAuthProvider.mjs';
7
- export { CrossmintWalletProvider } from './providers/CrossmintWalletProvider.mjs';
7
+ export { CrossmintWalletProvider, CrossmintWalletProviderProps } from './providers/CrossmintWalletProvider.mjs';
8
8
  export { CrossmintEmbeddedCheckout } from './components/embed/v3/CrossmintEmbeddedCheckoutV3.mjs';
9
9
  export { EmailSignersDialog } from './components/signers/EmailSignersDialog.mjs';
10
10
  export { PhoneSignersDialog } from './components/signers/PhoneSignersDialog.mjs';
11
- export { ExportPrivateKeyButton } from './components/wallets/ExportPrivateKeyButton.mjs';
11
+ export { ExportPrivateKeyButton, ExportPrivateKeyButtonProps } from './components/wallets/ExportPrivateKeyButton.mjs';
12
12
  export { CrossmintEvent, CrossmintEventMap } from '@crossmint/client-sdk-base';
13
13
  export { OAuthProvider, SDKExternalUser } from '@crossmint/common-sdk-auth';
14
- export { Activity, Balances, Chain, DelegatedSigner, EVMWallet, Signature, SolanaWallet, Transaction, Wallet } from '@crossmint/wallets-sdk';
14
+ export { Activity, Balances, Chain, DelegatedSigner, EVMWallet, Signature, SolanaWallet, StellarWallet, Transaction, Wallet } from '@crossmint/wallets-sdk';
15
15
  import 'react/jsx-runtime';
16
16
  import 'react';
17
17
  import '@crossmint/client-sdk-react-base/dist/providers/LoggerProvider';
package/dist/index.d.ts CHANGED
@@ -2,16 +2,16 @@ export { useCrossmint, useWallet } from '@crossmint/client-sdk-react-base';
2
2
  export { EmailSignerFunctions, useWalletEmailSigner } from './hooks/useWalletEmailSigner.js';
3
3
  export { CrossmintCheckoutContext, CrossmintCheckoutProvider, useCrossmintCheckout } from './hooks/useCrossmintCheckout.js';
4
4
  export { useAuth, useCrossmintAuth } from './hooks/useAuth.js';
5
- export { CrossmintProvider } from './providers/CrossmintProvider.js';
5
+ export { CrossmintProvider, CrossmintProviderProps } from './providers/CrossmintProvider.js';
6
6
  export { CrossmintAuthProvider } from './providers/CrossmintAuthProvider.js';
7
- export { CrossmintWalletProvider } from './providers/CrossmintWalletProvider.js';
7
+ export { CrossmintWalletProvider, CrossmintWalletProviderProps } from './providers/CrossmintWalletProvider.js';
8
8
  export { CrossmintEmbeddedCheckout } from './components/embed/v3/CrossmintEmbeddedCheckoutV3.js';
9
9
  export { EmailSignersDialog } from './components/signers/EmailSignersDialog.js';
10
10
  export { PhoneSignersDialog } from './components/signers/PhoneSignersDialog.js';
11
- export { ExportPrivateKeyButton } from './components/wallets/ExportPrivateKeyButton.js';
11
+ export { ExportPrivateKeyButton, ExportPrivateKeyButtonProps } from './components/wallets/ExportPrivateKeyButton.js';
12
12
  export { CrossmintEvent, CrossmintEventMap } from '@crossmint/client-sdk-base';
13
13
  export { OAuthProvider, SDKExternalUser } from '@crossmint/common-sdk-auth';
14
- export { Activity, Balances, Chain, DelegatedSigner, EVMWallet, Signature, SolanaWallet, Transaction, Wallet } from '@crossmint/wallets-sdk';
14
+ export { Activity, Balances, Chain, DelegatedSigner, EVMWallet, Signature, SolanaWallet, StellarWallet, Transaction, Wallet } from '@crossmint/wallets-sdk';
15
15
  import 'react/jsx-runtime';
16
16
  import 'react';
17
17
  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 _chunkFQVT5B6Sjs = require('./chunk-FQVT5B6S.js');var _chunk6VH3WG6Ljs = require('./chunk-6VH3WG6L.js');require('./chunk-2PX34LDU.js');require('./chunk-AJMHVVST.js');var _chunkUA34B5QBjs = require('./chunk-UA34B5QB.js');require('./chunk-DKQZSNOO.js');require('./chunk-72MMCJ2E.js');var _chunk4IAV7PSPjs = require('./chunk-4IAV7PSP.js');require('./chunk-Y3SL6DBX.js');require('./chunk-YQEWHOQ7.js');require('./chunk-VACQTZRT.js');require('./chunk-4VCABBIJ.js');require('./chunk-I4D3YJW2.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');var _chunkK75IJHIBjs = require('./chunk-K75IJHIB.js');require('./chunk-SHTETN4C.js');var _chunk77GXCNDPjs = require('./chunk-77GXCNDP.js');require('./chunk-2D2RJCVX.js');var _chunkMKCQJOIOjs = require('./chunk-MKCQJOIO.js');require('./chunk-KR4RRUYV.js');require('./chunk-Q2GU2QIV.js');require('./chunk-J42HASCI.js');var _walletssdk = require('@crossmint/wallets-sdk');exports.CrossmintAuthProvider = _chunkK75IJHIBjs.b; exports.CrossmintCheckoutProvider = _chunk77GXCNDPjs.a; exports.CrossmintEmbeddedCheckout = _chunk4IAV7PSPjs.a; exports.CrossmintProvider = _chunk6VH3WG6Ljs.b; exports.CrossmintWalletProvider = _chunkFQVT5B6Sjs.a; exports.EVMWallet = _walletssdk.EVMWallet; exports.EmailSignersDialog = _chunkYJORUMPBjs.a; exports.ExportPrivateKeyButton = _chunkUA34B5QBjs.a; exports.PhoneSignersDialog = _chunkMVVSGLQLjs.a; exports.SolanaWallet = _walletssdk.SolanaWallet; exports.Wallet = _walletssdk.Wallet; exports.useAuth = _chunkK75IJHIBjs.d; exports.useCrossmint = _chunkK75IJHIBjs.e; exports.useCrossmintAuth = _chunkK75IJHIBjs.c; exports.useCrossmintCheckout = _chunk77GXCNDPjs.b; exports.useWallet = _chunkK75IJHIBjs.f; exports.useWalletEmailSigner = _chunkMKCQJOIOjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-C62HRWJA.js');var _chunkTICI5LTVjs = require('./chunk-TICI5LTV.js');var _chunkXV77R5HPjs = require('./chunk-XV77R5HP.js');require('./chunk-2PX34LDU.js');require('./chunk-AJMHVVST.js');var _chunkUA34B5QBjs = require('./chunk-UA34B5QB.js');require('./chunk-DKQZSNOO.js');require('./chunk-72MMCJ2E.js');var _chunkQ2W64FSIjs = require('./chunk-Q2W64FSI.js');require('./chunk-FAYZFW22.js');require('./chunk-YQEWHOQ7.js');require('./chunk-VACQTZRT.js');require('./chunk-2XVI4EV6.js');require('./chunk-I4D3YJW2.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');var _chunkEF5KYLDOjs = require('./chunk-EF5KYLDO.js');require('./chunk-SHTETN4C.js');var _chunk77GXCNDPjs = require('./chunk-77GXCNDP.js');require('./chunk-2D2RJCVX.js');var _chunkMKCQJOIOjs = require('./chunk-MKCQJOIO.js');require('./chunk-7MK4FKA3.js');require('./chunk-ZD4SAVMK.js');require('./chunk-J42HASCI.js');var _walletssdk = require('@crossmint/wallets-sdk');exports.CrossmintAuthProvider = _chunkEF5KYLDOjs.b; exports.CrossmintCheckoutProvider = _chunk77GXCNDPjs.a; exports.CrossmintEmbeddedCheckout = _chunkQ2W64FSIjs.a; exports.CrossmintProvider = _chunkXV77R5HPjs.b; exports.CrossmintWalletProvider = _chunkTICI5LTVjs.a; exports.EVMWallet = _walletssdk.EVMWallet; exports.EmailSignersDialog = _chunkYJORUMPBjs.a; exports.ExportPrivateKeyButton = _chunkUA34B5QBjs.a; exports.PhoneSignersDialog = _chunkMVVSGLQLjs.a; exports.SolanaWallet = _walletssdk.SolanaWallet; exports.StellarWallet = _walletssdk.StellarWallet; exports.Wallet = _walletssdk.Wallet; exports.useAuth = _chunkEF5KYLDOjs.d; exports.useCrossmint = _chunkEF5KYLDOjs.e; exports.useCrossmintAuth = _chunkEF5KYLDOjs.c; exports.useCrossmintCheckout = _chunk77GXCNDPjs.b; exports.useWallet = _chunkEF5KYLDOjs.f; exports.useWalletEmailSigner = _chunkMKCQJOIOjs.a;
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import"./chunk-I3QSTPTV.mjs";import{a as y}from"./chunk-M6HODQP2.mjs";import{b as i}from"./chunk-FRNCQK7L.mjs";import"./chunk-UBHIBMTA.mjs";import"./chunk-5CLFJLE4.mjs";import{a as x}from"./chunk-EF2YTIUF.mjs";import"./chunk-TIQGKXQA.mjs";import"./chunk-MB7H3PBJ.mjs";import{a as c}from"./chunk-KCKV6EJO.mjs";import"./chunk-ZE7XQKNN.mjs";import"./chunk-PCJMDUSI.mjs";import"./chunk-FX23A4BR.mjs";import"./chunk-OMKYKH4O.mjs";import"./chunk-J7Q2R6UH.mjs";import{a as m}from"./chunk-XNDIT72O.mjs";import{a as l}from"./chunk-3QSVHCEH.mjs";import"./chunk-D5QADN6Z.mjs";import"./chunk-YLJDAK2S.mjs";import"./chunk-7USVT6EZ.mjs";import{b as o,c as a,d as n,e as p,f as s}from"./chunk-HS74BZSE.mjs";import"./chunk-ZCKUSOGC.mjs";import{a as e,b as r}from"./chunk-IUDQDPIN.mjs";import"./chunk-FFQ6EQCL.mjs";import{a as t}from"./chunk-J477SX6P.mjs";import"./chunk-YMGEZWIR.mjs";import"./chunk-CASSGVZG.mjs";import"./chunk-PSSAAY7D.mjs";import{EVMWallet as C,SolanaWallet as W,Wallet as k}from"@crossmint/wallets-sdk";export{o as CrossmintAuthProvider,e as CrossmintCheckoutProvider,c as CrossmintEmbeddedCheckout,i as CrossmintProvider,y as CrossmintWalletProvider,C as EVMWallet,m as EmailSignersDialog,x as ExportPrivateKeyButton,l as PhoneSignersDialog,W as SolanaWallet,k as Wallet,n as useAuth,p as useCrossmint,a as useCrossmintAuth,r as useCrossmintCheckout,s as useWallet,t as useWalletEmailSigner};
1
+ import"./chunk-I3QSTPTV.mjs";import{a as y}from"./chunk-IB2BUTJH.mjs";import{b as s}from"./chunk-4HJT2QG3.mjs";import"./chunk-UBHIBMTA.mjs";import"./chunk-5CLFJLE4.mjs";import{a as x}from"./chunk-EF2YTIUF.mjs";import"./chunk-TIQGKXQA.mjs";import"./chunk-MB7H3PBJ.mjs";import{a as c}from"./chunk-VDL2DQT7.mjs";import"./chunk-M672E3V7.mjs";import"./chunk-PCJMDUSI.mjs";import"./chunk-FX23A4BR.mjs";import"./chunk-FZK2PPIV.mjs";import"./chunk-J7Q2R6UH.mjs";import{a as i}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{b as o,c as a,d as n,e as l,f as p}from"./chunk-LK3AO6AY.mjs";import"./chunk-ZCKUSOGC.mjs";import{a as e,b as r}from"./chunk-IUDQDPIN.mjs";import"./chunk-FFQ6EQCL.mjs";import{a as t}from"./chunk-J477SX6P.mjs";import"./chunk-E3JHGSJU.mjs";import"./chunk-FIKDCXZD.mjs";import"./chunk-PSSAAY7D.mjs";import{EVMWallet as u,SolanaWallet as C,StellarWallet as k,Wallet as A}from"@crossmint/wallets-sdk";export{o as CrossmintAuthProvider,e as CrossmintCheckoutProvider,c as CrossmintEmbeddedCheckout,s as CrossmintProvider,y as CrossmintWalletProvider,u as EVMWallet,i as EmailSignersDialog,x as ExportPrivateKeyButton,m as PhoneSignersDialog,C as SolanaWallet,k as StellarWallet,A as Wallet,n as useAuth,l as useCrossmint,a as useCrossmintAuth,r as useCrossmintCheckout,p as useWallet,t as useWalletEmailSigner};
@@ -1,4 +1,4 @@
1
- import { LogLevel, SdkLogger } from '@crossmint/common-sdk-base';
1
+ import { ConsoleLogLevel, SdkLogger } from '@crossmint/common-sdk-base';
2
2
 
3
3
  /**
4
4
  * Initialize the SDK logger for the React Native UI SDK
@@ -6,9 +6,9 @@ import { LogLevel, SdkLogger } from '@crossmint/common-sdk-base';
6
6
  * This handles React Native-specific Datadog sink initialization
7
7
  *
8
8
  * @param apiKey - API key to determine environment (development/staging/production) and project ID
9
- * @param consoleLogLevel - Minimum log level for console output (defaults to "debug" for backward compatibility)
9
+ * @param consoleLogLevel - Minimum log level for console output (or "silent" to suppress all output). Defaults to "debug" for backward compatibility
10
10
  * @returns The initialized logger instance
11
11
  */
12
- declare function initReactNativeLogger(apiKey: string, consoleLogLevel?: LogLevel): SdkLogger;
12
+ declare function initReactNativeLogger(apiKey: string, consoleLogLevel?: ConsoleLogLevel): SdkLogger;
13
13
 
14
14
  export { initReactNativeLogger };
@@ -1,4 +1,4 @@
1
- import { LogLevel, SdkLogger } from '@crossmint/common-sdk-base';
1
+ import { ConsoleLogLevel, SdkLogger } from '@crossmint/common-sdk-base';
2
2
 
3
3
  /**
4
4
  * Initialize the SDK logger for the React Native UI SDK
@@ -6,9 +6,9 @@ import { LogLevel, SdkLogger } from '@crossmint/common-sdk-base';
6
6
  * This handles React Native-specific Datadog sink initialization
7
7
  *
8
8
  * @param apiKey - API key to determine environment (development/staging/production) and project ID
9
- * @param consoleLogLevel - Minimum log level for console output (defaults to "debug" for backward compatibility)
9
+ * @param consoleLogLevel - Minimum log level for console output (or "silent" to suppress all output). Defaults to "debug" for backward compatibility
10
10
  * @returns The initialized logger instance
11
11
  */
12
- declare function initReactNativeLogger(apiKey: string, consoleLogLevel?: LogLevel): SdkLogger;
12
+ declare function initReactNativeLogger(apiKey: string, consoleLogLevel?: ConsoleLogLevel): SdkLogger;
13
13
 
14
14
  export { initReactNativeLogger };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkKR4RRUYVjs = require('../chunk-KR4RRUYV.js');require('../chunk-Q2GU2QIV.js');require('../chunk-J42HASCI.js');exports.initReactNativeLogger = _chunkKR4RRUYVjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk7MK4FKA3js = require('../chunk-7MK4FKA3.js');require('../chunk-ZD4SAVMK.js');require('../chunk-J42HASCI.js');exports.initReactNativeLogger = _chunk7MK4FKA3js.a;
@@ -1 +1 @@
1
- import{a}from"../chunk-YMGEZWIR.mjs";import"../chunk-CASSGVZG.mjs";import"../chunk-PSSAAY7D.mjs";export{a as initReactNativeLogger};
1
+ import{a}from"../chunk-E3JHGSJU.mjs";import"../chunk-FIKDCXZD.mjs";import"../chunk-PSSAAY7D.mjs";export{a as initReactNativeLogger};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkK75IJHIBjs = require('../chunk-K75IJHIB.js');require('../chunk-SHTETN4C.js');require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-MKCQJOIO.js');require('../chunk-J42HASCI.js');exports.AuthContext = _chunkK75IJHIBjs.a; exports.CrossmintAuthProvider = _chunkK75IJHIBjs.b;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkEF5KYLDOjs = require('../chunk-EF5KYLDO.js');require('../chunk-SHTETN4C.js');require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-MKCQJOIO.js');require('../chunk-J42HASCI.js');exports.AuthContext = _chunkEF5KYLDOjs.a; exports.CrossmintAuthProvider = _chunkEF5KYLDOjs.b;
@@ -1 +1 @@
1
- import{a,b}from"../chunk-HS74BZSE.mjs";import"../chunk-ZCKUSOGC.mjs";import"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-J477SX6P.mjs";import"../chunk-PSSAAY7D.mjs";export{a as AuthContext,b as CrossmintAuthProvider};
1
+ import{a,b}from"../chunk-LK3AO6AY.mjs";import"../chunk-ZCKUSOGC.mjs";import"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-J477SX6P.mjs";import"../chunk-PSSAAY7D.mjs";export{a as AuthContext,b as CrossmintAuthProvider};
@@ -1,18 +1,24 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as _crossmint_client_sdk_react_base_dist_providers_LoggerProvider from '@crossmint/client-sdk-react-base/dist/providers/LoggerProvider';
3
3
  import { ReactNode } from 'react';
4
- import { CrossmintConfig, LogLevel } from '@crossmint/common-sdk-base';
4
+ import { CrossmintConfig, ConsoleLogLevel } from '@crossmint/common-sdk-base';
5
5
 
6
6
  declare const LoggerContext: _crossmint_client_sdk_react_base_dist_providers_LoggerProvider.LoggerContext;
7
- declare function CrossmintProvider({ children, apiKey, overrideBaseUrl, consoleLogLevel, }: Pick<CrossmintConfig, "apiKey" | "overrideBaseUrl"> & {
8
- children: ReactNode;
7
+ interface CrossmintProviderProps extends Pick<CrossmintConfig, "apiKey" | "overrideBaseUrl"> {
9
8
  /**
10
- * Minimum log level for console output.
9
+ * Minimum log level for console output (or "silent" to suppress all output).
11
10
  * Logs below this level will not be written to the console.
11
+ * Set to "silent" to completely suppress console output.
12
12
  * Defaults to "debug" (all logs shown) for backward compatibility.
13
- * Does not affect Datadog logging which receives all logs.
14
13
  */
15
- consoleLogLevel?: LogLevel;
16
- }): react_jsx_runtime.JSX.Element;
14
+ consoleLogLevel?: ConsoleLogLevel;
15
+ /** @internal */
16
+ children: ReactNode;
17
+ }
18
+ /**
19
+ * Root provider for the Crossmint SDK. Must wrap your entire application.
20
+ * Initializes the SDK with your API key and sets up logging.
21
+ */
22
+ declare function CrossmintProvider({ children, apiKey, overrideBaseUrl, consoleLogLevel }: CrossmintProviderProps): react_jsx_runtime.JSX.Element;
17
23
 
18
- export { CrossmintProvider, LoggerContext };
24
+ export { CrossmintProvider, type CrossmintProviderProps, LoggerContext };
@@ -1,18 +1,24 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as _crossmint_client_sdk_react_base_dist_providers_LoggerProvider from '@crossmint/client-sdk-react-base/dist/providers/LoggerProvider';
3
3
  import { ReactNode } from 'react';
4
- import { CrossmintConfig, LogLevel } from '@crossmint/common-sdk-base';
4
+ import { CrossmintConfig, ConsoleLogLevel } from '@crossmint/common-sdk-base';
5
5
 
6
6
  declare const LoggerContext: _crossmint_client_sdk_react_base_dist_providers_LoggerProvider.LoggerContext;
7
- declare function CrossmintProvider({ children, apiKey, overrideBaseUrl, consoleLogLevel, }: Pick<CrossmintConfig, "apiKey" | "overrideBaseUrl"> & {
8
- children: ReactNode;
7
+ interface CrossmintProviderProps extends Pick<CrossmintConfig, "apiKey" | "overrideBaseUrl"> {
9
8
  /**
10
- * Minimum log level for console output.
9
+ * Minimum log level for console output (or "silent" to suppress all output).
11
10
  * Logs below this level will not be written to the console.
11
+ * Set to "silent" to completely suppress console output.
12
12
  * Defaults to "debug" (all logs shown) for backward compatibility.
13
- * Does not affect Datadog logging which receives all logs.
14
13
  */
15
- consoleLogLevel?: LogLevel;
16
- }): react_jsx_runtime.JSX.Element;
14
+ consoleLogLevel?: ConsoleLogLevel;
15
+ /** @internal */
16
+ children: ReactNode;
17
+ }
18
+ /**
19
+ * Root provider for the Crossmint SDK. Must wrap your entire application.
20
+ * Initializes the SDK with your API key and sets up logging.
21
+ */
22
+ declare function CrossmintProvider({ children, apiKey, overrideBaseUrl, consoleLogLevel }: CrossmintProviderProps): react_jsx_runtime.JSX.Element;
17
23
 
18
- export { CrossmintProvider, LoggerContext };
24
+ export { CrossmintProvider, type CrossmintProviderProps, LoggerContext };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk6VH3WG6Ljs = require('../chunk-6VH3WG6L.js');require('../chunk-KR4RRUYV.js');require('../chunk-Q2GU2QIV.js');require('../chunk-J42HASCI.js');exports.CrossmintProvider = _chunk6VH3WG6Ljs.b; exports.LoggerContext = _chunk6VH3WG6Ljs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXV77R5HPjs = require('../chunk-XV77R5HP.js');require('../chunk-7MK4FKA3.js');require('../chunk-ZD4SAVMK.js');require('../chunk-J42HASCI.js');exports.CrossmintProvider = _chunkXV77R5HPjs.b; exports.LoggerContext = _chunkXV77R5HPjs.a;
@@ -1 +1 @@
1
- import{a,b}from"../chunk-FRNCQK7L.mjs";import"../chunk-YMGEZWIR.mjs";import"../chunk-CASSGVZG.mjs";import"../chunk-PSSAAY7D.mjs";export{b as CrossmintProvider,a as LoggerContext};
1
+ import{a,b}from"../chunk-4HJT2QG3.mjs";import"../chunk-E3JHGSJU.mjs";import"../chunk-FIKDCXZD.mjs";import"../chunk-PSSAAY7D.mjs";export{b as CrossmintProvider,a as LoggerContext};
@@ -4,16 +4,26 @@ import { UIConfig } from '@crossmint/common-sdk-base';
4
4
  import { CreateOnLogin } from '@crossmint/client-sdk-react-base';
5
5
 
6
6
  interface CrossmintWalletProviderProps {
7
- children: ReactNode;
7
+ /** Wallet configuration for automatic creation on user login. Defines the chain and signer type for the wallet. */
8
8
  createOnLogin?: CreateOnLogin;
9
+ /** Optional appearance configuration for styling built-in UI components. */
9
10
  appearance?: UIConfig;
10
11
  /** When true (default), no UI is rendered and signing flows must be handled manually. When false, built-in UI components are rendered. */
11
12
  headlessSigningFlow?: boolean;
13
+ /** Optional lifecycle callbacks invoked during wallet creation and transaction signing. */
12
14
  callbacks?: {
15
+ /** Called when a wallet creation flow begins. */
13
16
  onWalletCreationStart?: () => Promise<void>;
17
+ /** Called when a transaction signing flow begins. */
14
18
  onTransactionStart?: () => Promise<void>;
15
19
  };
20
+ /** @internal */
21
+ children: ReactNode;
16
22
  }
23
+ /**
24
+ * Provider for wallet creation and management. Must be nested inside {@link CrossmintProvider}.
25
+ * Handles secure communication with the Crossmint signer via a hidden WebView.
26
+ */
17
27
  declare function CrossmintWalletProvider(props: CrossmintWalletProviderProps): react_jsx_runtime.JSX.Element;
18
28
 
19
29
  export { CrossmintWalletProvider, type CrossmintWalletProviderProps };
@@ -4,16 +4,26 @@ import { UIConfig } from '@crossmint/common-sdk-base';
4
4
  import { CreateOnLogin } from '@crossmint/client-sdk-react-base';
5
5
 
6
6
  interface CrossmintWalletProviderProps {
7
- children: ReactNode;
7
+ /** Wallet configuration for automatic creation on user login. Defines the chain and signer type for the wallet. */
8
8
  createOnLogin?: CreateOnLogin;
9
+ /** Optional appearance configuration for styling built-in UI components. */
9
10
  appearance?: UIConfig;
10
11
  /** When true (default), no UI is rendered and signing flows must be handled manually. When false, built-in UI components are rendered. */
11
12
  headlessSigningFlow?: boolean;
13
+ /** Optional lifecycle callbacks invoked during wallet creation and transaction signing. */
12
14
  callbacks?: {
15
+ /** Called when a wallet creation flow begins. */
13
16
  onWalletCreationStart?: () => Promise<void>;
17
+ /** Called when a transaction signing flow begins. */
14
18
  onTransactionStart?: () => Promise<void>;
15
19
  };
20
+ /** @internal */
21
+ children: ReactNode;
16
22
  }
23
+ /**
24
+ * Provider for wallet creation and management. Must be nested inside {@link CrossmintProvider}.
25
+ * Handles secure communication with the Crossmint signer via a hidden WebView.
26
+ */
17
27
  declare function CrossmintWalletProvider(props: CrossmintWalletProviderProps): react_jsx_runtime.JSX.Element;
18
28
 
19
29
  export { CrossmintWalletProvider, type CrossmintWalletProviderProps };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkFQVT5B6Sjs = require('../chunk-FQVT5B6S.js');require('../chunk-6VH3WG6L.js');require('../chunk-YJORUMPB.js');require('../chunk-MVVSGLQL.js');require('../chunk-F7VXWATP.js');require('../chunk-DC5HCBPK.js');require('../chunk-EI5LOD4Y.js');require('../chunk-KR4RRUYV.js');require('../chunk-Q2GU2QIV.js');require('../chunk-J42HASCI.js');exports.CrossmintWalletProvider = _chunkFQVT5B6Sjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkTICI5LTVjs = require('../chunk-TICI5LTV.js');require('../chunk-XV77R5HP.js');require('../chunk-YJORUMPB.js');require('../chunk-MVVSGLQL.js');require('../chunk-F7VXWATP.js');require('../chunk-DC5HCBPK.js');require('../chunk-EI5LOD4Y.js');require('../chunk-7MK4FKA3.js');require('../chunk-ZD4SAVMK.js');require('../chunk-J42HASCI.js');exports.CrossmintWalletProvider = _chunkTICI5LTVjs.a;
@@ -1 +1 @@
1
- import{a}from"../chunk-M6HODQP2.mjs";import"../chunk-FRNCQK7L.mjs";import"../chunk-XNDIT72O.mjs";import"../chunk-3QSVHCEH.mjs";import"../chunk-D5QADN6Z.mjs";import"../chunk-YLJDAK2S.mjs";import"../chunk-7USVT6EZ.mjs";import"../chunk-YMGEZWIR.mjs";import"../chunk-CASSGVZG.mjs";import"../chunk-PSSAAY7D.mjs";export{a as CrossmintWalletProvider};
1
+ import{a}from"../chunk-IB2BUTJH.mjs";import"../chunk-4HJT2QG3.mjs";import"../chunk-XNDIT72O.mjs";import"../chunk-3QSVHCEH.mjs";import"../chunk-D5QADN6Z.mjs";import"../chunk-YLJDAK2S.mjs";import"../chunk-7USVT6EZ.mjs";import"../chunk-E3JHGSJU.mjs";import"../chunk-FIKDCXZD.mjs";import"../chunk-PSSAAY7D.mjs";export{a as CrossmintWalletProvider};
@@ -1,6 +1,6 @@
1
- export { CrossmintProvider } from './CrossmintProvider.mjs';
1
+ export { CrossmintProvider, CrossmintProviderProps } from './CrossmintProvider.mjs';
2
2
  export { CrossmintAuthProvider } from './CrossmintAuthProvider.mjs';
3
- export { CrossmintWalletProvider } from './CrossmintWalletProvider.mjs';
3
+ export { CrossmintWalletProvider, CrossmintWalletProviderProps } from './CrossmintWalletProvider.mjs';
4
4
  import 'react/jsx-runtime';
5
5
  import '@crossmint/client-sdk-react-base/dist/providers/LoggerProvider';
6
6
  import 'react';
@@ -1,6 +1,6 @@
1
- export { CrossmintProvider } from './CrossmintProvider.js';
1
+ export { CrossmintProvider, CrossmintProviderProps } from './CrossmintProvider.js';
2
2
  export { CrossmintAuthProvider } from './CrossmintAuthProvider.js';
3
- export { CrossmintWalletProvider } from './CrossmintWalletProvider.js';
3
+ export { CrossmintWalletProvider, CrossmintWalletProviderProps } from './CrossmintWalletProvider.js';
4
4
  import 'react/jsx-runtime';
5
5
  import '@crossmint/client-sdk-react-base/dist/providers/LoggerProvider';
6
6
  import 'react';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-C62HRWJA.js');var _chunkFQVT5B6Sjs = require('../chunk-FQVT5B6S.js');var _chunk6VH3WG6Ljs = require('../chunk-6VH3WG6L.js');require('../chunk-YJORUMPB.js');require('../chunk-MVVSGLQL.js');require('../chunk-F7VXWATP.js');require('../chunk-DC5HCBPK.js');require('../chunk-EI5LOD4Y.js');var _chunkK75IJHIBjs = require('../chunk-K75IJHIB.js');require('../chunk-SHTETN4C.js');require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-MKCQJOIO.js');require('../chunk-KR4RRUYV.js');require('../chunk-Q2GU2QIV.js');require('../chunk-J42HASCI.js');exports.CrossmintAuthProvider = _chunkK75IJHIBjs.b; exports.CrossmintProvider = _chunk6VH3WG6Ljs.b; exports.CrossmintWalletProvider = _chunkFQVT5B6Sjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-C62HRWJA.js');var _chunkTICI5LTVjs = require('../chunk-TICI5LTV.js');var _chunkXV77R5HPjs = require('../chunk-XV77R5HP.js');require('../chunk-YJORUMPB.js');require('../chunk-MVVSGLQL.js');require('../chunk-F7VXWATP.js');require('../chunk-DC5HCBPK.js');require('../chunk-EI5LOD4Y.js');var _chunkEF5KYLDOjs = require('../chunk-EF5KYLDO.js');require('../chunk-SHTETN4C.js');require('../chunk-77GXCNDP.js');require('../chunk-2D2RJCVX.js');require('../chunk-MKCQJOIO.js');require('../chunk-7MK4FKA3.js');require('../chunk-ZD4SAVMK.js');require('../chunk-J42HASCI.js');exports.CrossmintAuthProvider = _chunkEF5KYLDOjs.b; exports.CrossmintProvider = _chunkXV77R5HPjs.b; exports.CrossmintWalletProvider = _chunkTICI5LTVjs.a;
@@ -1 +1 @@
1
- import"../chunk-I3QSTPTV.mjs";import{a as c}from"../chunk-M6HODQP2.mjs";import{b}from"../chunk-FRNCQK7L.mjs";import"../chunk-XNDIT72O.mjs";import"../chunk-3QSVHCEH.mjs";import"../chunk-D5QADN6Z.mjs";import"../chunk-YLJDAK2S.mjs";import"../chunk-7USVT6EZ.mjs";import{b as a}from"../chunk-HS74BZSE.mjs";import"../chunk-ZCKUSOGC.mjs";import"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-J477SX6P.mjs";import"../chunk-YMGEZWIR.mjs";import"../chunk-CASSGVZG.mjs";import"../chunk-PSSAAY7D.mjs";export{a as CrossmintAuthProvider,b as CrossmintProvider,c as CrossmintWalletProvider};
1
+ import"../chunk-I3QSTPTV.mjs";import{a as c}from"../chunk-IB2BUTJH.mjs";import{b}from"../chunk-4HJT2QG3.mjs";import"../chunk-XNDIT72O.mjs";import"../chunk-3QSVHCEH.mjs";import"../chunk-D5QADN6Z.mjs";import"../chunk-YLJDAK2S.mjs";import"../chunk-7USVT6EZ.mjs";import{b as a}from"../chunk-LK3AO6AY.mjs";import"../chunk-ZCKUSOGC.mjs";import"../chunk-IUDQDPIN.mjs";import"../chunk-FFQ6EQCL.mjs";import"../chunk-J477SX6P.mjs";import"../chunk-E3JHGSJU.mjs";import"../chunk-FIKDCXZD.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 _chunk4VCABBIJjs = require('../chunk-4VCABBIJ.js');require('../chunk-Q2GU2QIV.js');require('../chunk-J42HASCI.js');exports.createCrossmintApiClient = _chunk4VCABBIJjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk2XVI4EV6js = require('../chunk-2XVI4EV6.js');require('../chunk-ZD4SAVMK.js');require('../chunk-J42HASCI.js');exports.createCrossmintApiClient = _chunk2XVI4EV6js.a;
@@ -1 +1 @@
1
- import{a}from"../chunk-OMKYKH4O.mjs";import"../chunk-CASSGVZG.mjs";import"../chunk-PSSAAY7D.mjs";export{a as createCrossmintApiClient};
1
+ import{a}from"../chunk-FZK2PPIV.mjs";import"../chunk-FIKDCXZD.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.13.18",
3
+ "version": "0.13.20",
4
4
  "repository": "https://github.com/Crossmint/crossmint-sdk",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Paella Labs Inc",
@@ -22,17 +22,18 @@
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.2.46",
26
- "@crossmint/client-sdk-base": "1.7.13",
27
- "@crossmint/client-sdk-react-base": "1.0.1",
28
- "@crossmint/client-sdk-rn-window": "0.3.14",
25
+ "@crossmint/client-sdk-auth": "1.2.47",
26
+ "@crossmint/client-sdk-base": "1.7.14",
27
+ "@crossmint/client-sdk-rn-window": "0.3.15",
28
+ "@crossmint/client-sdk-react-base": "1.0.2",
29
29
  "@crossmint/client-signers": "0.1.2",
30
- "@crossmint/common-sdk-auth": "1.0.68",
31
- "@crossmint/common-sdk-base": "0.9.16",
32
- "@crossmint/wallets-sdk": "0.18.15"
30
+ "@crossmint/common-sdk-base": "0.9.17",
31
+ "@crossmint/wallets-sdk": "0.19.0",
32
+ "@crossmint/common-sdk-auth": "1.0.69"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@expo/config-plugins": "^9.0.17",
36
+ "typedoc": "0.28.16",
36
37
  "@types/react": "19.1.10",
37
38
  "expo-constants": "~18.0.9",
38
39
  "expo-device": "~8.0.9",
@@ -52,6 +53,7 @@
52
53
  },
53
54
  "scripts": {
54
55
  "build": "cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup",
55
- "dev": "cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup --watch"
56
+ "dev": "cross-env NODE_OPTIONS='--max-old-space-size=8192' tsup --watch",
57
+ "generate:docs": "typedoc && node scripts/generate-reference.mjs"
56
58
  }
57
59
  }
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkKR4RRUYVjs = require('./chunk-KR4RRUYV.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:g,apiKey:o,overrideBaseUrl:p,consoleLogLevel:r}){var e,t,i,n,s;let C=_react.useMemo.call(void 0, ()=>_chunkKR4RRUYVjs.a.call(void 0, o,r),[o,r]),c=(s=(t=(e=_expoconstants2.default.expoConfig)==null?void 0:e.ios)==null?void 0:t.bundleIdentifier)!=null?s:(n=(i=_expoconstants2.default.expoConfig)==null?void 0:i.android)==null?void 0:n.package;return _jsxruntime.jsx.call(void 0, L.Provider,{value:C,children:_jsxruntime.jsx.call(void 0, _clientsdkreactbase.CrossmintProvider,{apiKey:o,appId:c,overrideBaseUrl:p,children:g})})}exports.a = L; exports.b = I;
@@ -1 +0,0 @@
1
- var c={name:"@crossmint/client-sdk-react-native-ui",version:"0.13.18",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"},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","@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};
@@ -1 +0,0 @@
1
- import{a as m}from"./chunk-YMGEZWIR.mjs";import{useMemo as f}from"react";import a from"expo-constants";import{CrossmintProvider as v,createLoggerContext as l}from"@crossmint/client-sdk-react-base";import{jsx as d}from"react/jsx-runtime";var L=l();function N({children:g,apiKey:o,overrideBaseUrl:p,consoleLogLevel:r}){var e,t,i,n,s;let C=f(()=>m(o,r),[o,r]),c=(s=(t=(e=a.expoConfig)==null?void 0:e.ios)==null?void 0:t.bundleIdentifier)!=null?s:(n=(i=a.expoConfig)==null?void 0:i.android)==null?void 0:n.package;return d(L.Provider,{value:C,children:d(v,{apiKey:o,appId:c,overrideBaseUrl:p,children:g})})}export{L as a,N as b};
@@ -1 +0,0 @@
1
- import{a as S}from"./chunk-ZCKUSOGC.mjs";import{d as v,e as A}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:()=>{},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(()=>A(this,null,function*(){try{let c=Object.keys(W).map(n=>A(this,null,function*(){var m;let l=yield(m=t.crossmintAuth)==null?void 0:m.getOAuthUrl(n,{appSchema:P});return{[n]:l}})),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=>A(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 l=new URL(n);if(s==="google"&&l.searchParams.append("provider_prompt","select_account"),z.OS==="android")yield u.openBrowserAsync(l.toString());else{let m=yield u.openAuthSessionAsync(l.toString());m.type==="success"&&(yield y(m.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=>A(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};
@@ -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:()=>{},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 m;let l=yield(m=t.crossmintAuth)==null?void 0:m.getOAuthUrl(n,{appSchema:P});return{[n]:l}})),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 l=new URL(n);if(s==="google"&&l.searchParams.append("provider_prompt","select_account"),_reactnative.Platform.OS==="android")yield u.openBrowserAsync(l.toString());else{let m=yield u.openAuthSessionAsync(l.toString());m.type==="success"&&(yield y(m.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;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var c={name:"@crossmint/client-sdk-react-native-ui",version:"0.13.18",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"},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","@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 +0,0 @@
1
- import{a as r}from"./chunk-CASSGVZG.mjs";import{SdkLogger as R,ReactNativeDatadogSink as S,validateAPIKey as b}from"@crossmint/common-sdk-base";import{AppState as w}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,p,l,k,L;let t=b(n);if(!t.isValid)throw new Error(`Invalid API key: ${t.message}`);let{environment:d,projectId:I}=t,a=new R({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=(l=(p=(u=e.modelName)!=null?u:e.deviceName)!=null?p:e.brand)!=null?l: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 S(d,N,o);return a.addSink(h),y(a),a}function y(n){w.addEventListener("change",i=>{(i==="background"||i==="inactive")&&typeof n.flush=="function"&&n.flush()})}export{_ as a};