@crossmint/client-sdk-react-ui 1.1.0-alpha.1 → 1.1.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var Nt=Object.create;var P=Object.defineProperty;var Ft=Object.getOwnPropertyDescriptor;var Ot=Object.getOwnPropertyNames,T=Object.getOwnPropertySymbols,Lt=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable;var z=(t,e,n)=>e in t?P(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,u=(t,e)=>{for(var n in e||(e={}))A.call(e,n)&&z(t,n,e[n]);if(T)for(var n of T(e))q.call(e,n)&&z(t,n,e[n]);return t};var v=(t,e)=>{var n={};for(var r in t)A.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&T)for(var r of T(t))e.indexOf(r)<0&&q.call(t,r)&&(n[r]=t[r]);return n};var Bt=(t,e)=>{for(var n in e)P(t,n,{get:e[n],enumerable:!0})},J=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Ot(e))!A.call(t,s)&&s!==n&&P(t,s,{get:()=>e[s],enumerable:!(r=Ft(e,s))||r.enumerable});return t};var D=(t,e,n)=>(n=t!=null?Nt(Lt(t)):{},J(e||!t||!t.__esModule?P(n,"default",{value:t,enumerable:!0}):n,t)),Rt=t=>J(P({},"__esModule",{value:!0}),t);var k=(t,e,n)=>new Promise((r,s)=>{var d=o=>{try{c(n.next(o))}catch(i){s(i)}},l=o=>{try{c(n.throw(o))}catch(i){s(i)}},c=o=>o.done?r(o.value):Promise.resolve(o.value).then(d,l);c((n=n.apply(t,e)).next())});var Ht={};Bt(Ht,{CrossmintEvents:()=>B.CrossmintEvents,CrossmintNFTCollectionView:()=>_t,CrossmintNFTDetail:()=>Mt,CrossmintPayButton:()=>Dt,CrossmintPaymentElement:()=>Ut,useCrossmintEvents:()=>B.useCrossmintEvents});module.exports=Rt(Ht);var w=require("@crossmint/client-sdk-base");var y="1.1.0-alpha.1";var K=require("react/jsx-runtime");function _t(t){(0,w.assertValidNFTCollectionViewProps)(t);let e=(0,w.getNFTCollectionViewSrc)(t,y);return(0,K.jsx)("iframe",{src:e,width:"100%",height:"100%",style:{flexGrow:"1",border:"none",margin:"0",padding:"0"},role:"nft-collection-view"})}var x=require("@crossmint/client-sdk-base");var Q=require("react/jsx-runtime");function Mt(t){(0,x.assertValidValidateNFTDetailProps)(t);let e=(0,x.getNFTDetailSrc)(t,y);return(0,Q.jsx)("iframe",{src:e,width:"100%",height:"100%",style:{flexGrow:"1",border:"none",margin:"0",padding:"0"},role:"nft-details"})}var O=require("@crossmint/client-sdk-base");var et=require("@crossmint/client-sdk-base");var Z=D(require("bs58"),1),j=require("react"),p=require("@crossmint/client-sdk-base");var E=require("react"),N=require("@crossmint/client-sdk-base");var X=require("react/jsx-runtime");function H(n){var r=n,{onInternalEvent:t}=r,e=v(r,["onInternalEvent"]);let{getUrl:s,listenToEvents:d,listenToInternalEvents:l,emitInternalEvent:c}=(0,N.crossmintIFrameService)(e),[o,i]=(0,E.useState)(0),[m]=(0,E.useState)(s(e));return(0,E.useEffect)(()=>{let a=d(C=>{var f;(f=e.onEvent)==null||f.call(e,C.data)});return()=>{a()}},[]),(0,E.useEffect)(()=>{let a=l(C=>{let{type:f,payload:R}=C.data;f===N.IncomingInternalEvents.UI_HEIGHT_CHANGED&&i(R.height),t==null||t(C.data)});return()=>{a()}},[]),(0,X.jsx)("iframe",{src:m,id:"crossmint-embedded-checkout.iframe",role:"crossmint-embedded-checkout.iframe",allow:"payment *",style:{border:"none !important",padding:"0px !important",width:"100% !important",minWidth:"100% !important",overflow:"hidden !important",display:"block !important",userSelect:"none",transform:"translate(0px) !important",opacity:"1",transition:"ease 0s, opacity 0.4s ease 0.1s",height:`${o}px`}})}var tt=require("react/jsx-runtime");function V(t){let{emitInternalEvent:e}=(0,p.crossmintIFrameService)(t),{signer:n,paymentMethod:r}=t;function s(o){let{type:i,payload:m}=o;if(i===p.IncomingInternalEvents.CRYPTO_PAYMENT_INCOMING_TRANSACTION){let{serializedTransaction:a}=m;console.log("[Crossmint] Received incoming transaction",a),d(a)}}function d(o){return k(this,null,function*(){try{let i;switch(r){case"SOL":i=yield l(n,o);break;case"ETH":i=yield c(n,o);break;default:throw new Error(`Unsupported payment method ${r}`)}console.log("[Crossmint] Signed and sent transaction",i),e({type:p.OutgoingInternalEvents.CRYPTO_PAYMENT_USER_ACCEPTED,payload:{txId:i}})}catch(i){console.error("[Crossmint] Failed to sign and send transaction",i),e({type:p.OutgoingInternalEvents.CRYPTO_PAYMENT_USER_REJECTED,payload:{}})}})}function l(o,i){return k(this,null,function*(){let{Transaction:m}=yield import("@solana/web3.js"),a=m.from(Z.default.decode(i));return console.log("[Crossmint] Deserialized SOL transaction",a),yield o.signAndSendTransaction(a)})}function c(o,i){return k(this,null,function*(){let{parse:m}=yield import("@ethersproject/transactions"),a=m(i);return console.log("[Crossmint] Deserialized ETH transaction",a),yield o.signAndSendTransaction(a)})}return(0,j.useEffect)(()=>{e({type:"params-update",payload:(0,p.embeddedCheckoutPropsToUpdatableParamsPayload)(t)})},[t.signer,t.recipient,t.mintConfig,t.locale,t.whPassThroughArgs]),(0,tt.jsx)(H,u({onInternalEvent:s},t))}var ot=require("react/jsx-runtime");function nt(t){if(!(0,et.isCryptoEmbeddedCheckoutPropsWithSigner)(t))throw new Error("Invalid parameters: signer is required in versions < 2.0.0");return(0,ot.jsx)(V,u({},t))}var h=require("react"),F=require("@crossmint/client-sdk-base"),it=require("react/jsx-runtime");function rt(t){let[e,n]=(0,h.useState)(0),{getIframeUrl:r,listenToEvents:s,emitQueryParams:d}=(0,F.crossmintPaymentService_OLD)(t),{listenToEvents:l}=(0,F.crossmintUiService_OLD)({environment:t.environment}),[c]=(0,h.useState)(r());return(0,h.useEffect)(()=>{let o=s(i=>{var m;return(m=t.onEvent)==null?void 0:m.call(t,i.data)});return()=>{o&&o()}},[]),(0,h.useEffect)(()=>{let o=l(i=>{let{type:m,payload:a}=i.data;switch(m){case"ui:height.changed":n(a.height);break;default:return}});return()=>{o&&o()}},[]),(0,h.useEffect)(()=>{d({recipient:t.recipient,mintConfig:t.mintConfig,locale:t.locale,whPassThroughArgs:t.whPassThroughArgs})},[t.recipient,t.mintConfig,t.locale,t.whPassThroughArgs]),(0,it.jsx)("iframe",{src:c,id:"crossmint-embedded-checkout.iframe",role:"crossmint-embedded-checkout.iframe",allow:"payment *",style:{border:"none !important",padding:"0px !important",width:"100% !important",minWidth:"100% !important",overflow:"hidden !important",display:"block !important",userSelect:"none",transform:"translate(0px) !important",opacity:"1",transition:"ease 0s, opacity 0.4s ease 0.1s",height:`${e}px`}})}var G=require("react/jsx-runtime");function Ut(t){if((0,O.isFiatEmbeddedCheckoutProps)(t))return(0,G.jsx)(rt,u({},t));if((0,O.isCryptoEmbeddedCheckoutProps)(t))return(0,G.jsx)(nt,u({},t));throw new Error("Unsupported: Fiat is the only supported payment method.")}var dt=require("react"),lt=require("react"),b=require("@crossmint/client-sdk-base");var L=require("react");function Y(){let[t,e]=(0,L.useState)(!0);return(0,L.useEffect)(()=>{e(!1)},[]),{isServerSideRendering:t}}var at=require("react-jss"),At="#1e1e1e",st=t=>t==="light",mt=t=>({buttonBgColor:st(t)?"white":At,paragraphColor:st(t)?"black":"white"}),ct=(0,at.createUseStyles)({"@global":{"@import":"url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap')"},crossmintButton:{display:"flex","flex-direction":"row","align-items":"center",padding:"0.875rem 0.875rem","font-weight":"900",transition:"opacity ease-in-out 0.25s","border-radius":"0.5rem","font-family":'"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif',outline:"none",border:"none","box-shadow":"0px 8px 15px rgba(0, 0, 0, 0.1)","justify-content":"center",background:({buttonBgColor:t})=>t,"&:hover:enabled":{opacity:"0.6",cursor:"pointer"}},crossmintImg:{width:"21px",height:"21px","margin-right":"0.875rem"},crossmintParagraph:{color:({paragraphColor:t})=>t,margin:"0"}});var g=require("react/jsx-runtime");function Dt(t){let $=t,{className:e,disabled:n,onClick:r,style:s,tabIndex:d,theme:l="dark",mintTo:c,emailTo:o,listingId:i,auctionId:m,showOverlay:a=!0,mintConfig:C,whPassThroughArgs:f,environment:R,paymentMethod:I,preferredSigninMethod:ut,dismissOverlayOnClick:pt,prepay:gt,locale:W="en-US",currency:ht="usd",successCallbackURL:Ct="",failureCallbackURL:ft="",loginEmail:yt="",projectId:Et,getButtonText:_}=$,M=v($,["className","disabled","onClick","style","tabIndex","theme","mintTo","emailTo","listingId","auctionId","showOverlay","mintConfig","whPassThroughArgs","environment","paymentMethod","preferredSigninMethod","dismissOverlayOnClick","prepay","locale","currency","successCallbackURL","failureCallbackURL","loginEmail","projectId","getButtonText"]),bt="clientId"in M?M.clientId:M.collectionId,[S,Pt]=(0,lt.useState)(!1),{isServerSideRendering:It}=Y(),{connect:St}=(0,b.crossmintModalService)({clientId:bt,projectId:Et,showOverlay:a,dismissOverlayOnClick:pt,setConnecting:Pt,libVersion:y,environment:R,clientName:b.clientNames.reactUi,locale:W,currency:ht,successCallbackURL:Ct,failureCallbackURL:ft,loginEmail:yt}),{getButtonText:Tt,handleClick:vt}=(0,b.crossmintPayButtonService)({onClick:r,connecting:S,paymentMethod:I,locale:W}),kt=xt=>vt(xt,()=>{St(C,c,o,i,f,I,ut,gt)}),U=ct(mt(l)),wt=(0,dt.useMemo)(()=>(0,g.jsx)("span",{className:U.crossmintParagraph,role:"button-paragraph",children:_!=null?_(S,I||"fiat"):Tt(S)}),[S,_,I]);return(0,g.jsx)(g.Fragment,{children:!It&&(0,g.jsxs)("button",{className:`${U.crossmintButton} ${e||""}`,disabled:n,onClick:kt,style:u({},s),tabIndex:d,children:[(0,g.jsx)("img",{className:U.crossmintImg,src:"https://www.crossmint.io/assets/crossmint/logo.svg",alt:"Crossmint logo"}),wt]})})}var B=require("@crossmint/client-sdk-base");0&&(module.exports={CrossmintEvents,CrossmintNFTCollectionView,CrossmintNFTDetail,CrossmintPayButton,CrossmintPaymentElement,useCrossmintEvents});
1
+ "use strict";var Ft=Object.create;var P=Object.defineProperty;var Ot=Object.getOwnPropertyDescriptor;var Lt=Object.getOwnPropertyNames,k=Object.getOwnPropertySymbols,Bt=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty,J=Object.prototype.propertyIsEnumerable;var q=(t,e,n)=>e in t?P(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,u=(t,e)=>{for(var n in e||(e={}))A.call(e,n)&&q(t,n,e[n]);if(k)for(var n of k(e))J.call(e,n)&&q(t,n,e[n]);return t};var T=(t,e)=>{var n={};for(var r in t)A.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&k)for(var r of k(t))e.indexOf(r)<0&&J.call(t,r)&&(n[r]=t[r]);return n};var Rt=(t,e)=>{for(var n in e)P(t,n,{get:e[n],enumerable:!0})},K=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Lt(e))!A.call(t,s)&&s!==n&&P(t,s,{get:()=>e[s],enumerable:!(r=Ot(e,s))||r.enumerable});return t};var D=(t,e,n)=>(n=t!=null?Ft(Bt(t)):{},K(e||!t||!t.__esModule?P(n,"default",{value:t,enumerable:!0}):n,t)),_t=t=>K(P({},"__esModule",{value:!0}),t);var v=(t,e,n)=>new Promise((r,s)=>{var d=o=>{try{c(n.next(o))}catch(i){s(i)}},l=o=>{try{c(n.throw(o))}catch(i){s(i)}},c=o=>o.done?r(o.value):Promise.resolve(o.value).then(d,l);c((n=n.apply(t,e)).next())});var Vt={};Rt(Vt,{CrossmintEvents:()=>B.CrossmintEvents,CrossmintNFTCollectionView:()=>Mt,CrossmintNFTDetail:()=>Ut,CrossmintPayButton:()=>Ht,CrossmintPaymentElement:()=>At,useCrossmintEvents:()=>B.useCrossmintEvents});module.exports=_t(Vt);var w=require("@crossmint/client-sdk-base");var y="1.1.0-alpha.2";var Q=require("react/jsx-runtime");function Mt(t){(0,w.assertValidNFTCollectionViewProps)(t);let e=(0,w.getNFTCollectionViewSrc)(t,y);return(0,Q.jsx)("iframe",{src:e,width:"100%",height:"100%",style:{flexGrow:"1",border:"none",margin:"0",padding:"0"},role:"nft-collection-view"})}var x=require("@crossmint/client-sdk-base");var X=require("react/jsx-runtime");function Ut(t){(0,x.assertValidValidateNFTDetailProps)(t);let e=(0,x.getNFTDetailSrc)(t,y);return(0,X.jsx)("iframe",{src:e,width:"100%",height:"100%",style:{flexGrow:"1",border:"none",margin:"0",padding:"0"},role:"nft-details"})}var O=require("@crossmint/client-sdk-base");var nt=require("@crossmint/client-sdk-base");var j=D(require("bs58"),1),tt=require("react"),p=require("@crossmint/client-sdk-base");var E=require("react"),N=require("@crossmint/client-sdk-base");var Z=require("react/jsx-runtime");function H(n){var r=n,{onInternalEvent:t}=r,e=T(r,["onInternalEvent"]);let{getUrl:s,listenToEvents:d,listenToInternalEvents:l,emitInternalEvent:c}=(0,N.crossmintIFrameService)(e),[o,i]=(0,E.useState)(0),[m]=(0,E.useState)(s(e));return(0,E.useEffect)(()=>{let a=d(C=>{var f;(f=e.onEvent)==null||f.call(e,C.data)});return()=>{a()}},[]),(0,E.useEffect)(()=>{let a=l(C=>{let{type:f,payload:R}=C.data;f===N.IncomingInternalEvents.UI_HEIGHT_CHANGED&&i(R.height),t==null||t(C.data)});return()=>{a()}},[]),(0,Z.jsx)("iframe",{src:m,id:"crossmint-embedded-checkout.iframe",role:"crossmint-embedded-checkout.iframe",allow:"payment *",style:{border:"none !important",padding:"0px !important",width:"100% !important",minWidth:"100% !important",overflow:"hidden !important",display:"block !important",userSelect:"none",transform:"translate(0px) !important",opacity:"1",transition:"ease 0s, opacity 0.4s ease 0.1s",height:`${o}px`}})}var et=require("react/jsx-runtime");function V(t){let{emitInternalEvent:e}=(0,p.crossmintIFrameService)(t),{signer:n,paymentMethod:r}=t;function s(o){let{type:i,payload:m}=o;if(i===p.IncomingInternalEvents.CRYPTO_PAYMENT_INCOMING_TRANSACTION){let{serializedTransaction:a}=m;console.log("[Crossmint] Received incoming transaction",a),d(a)}}function d(o){return v(this,null,function*(){try{let i;switch(r){case"SOL":i=yield l(n,o);break;case"ETH":i=yield c(n,o);break;default:throw new Error(`Unsupported payment method ${r}`)}console.log("[Crossmint] Signed and sent transaction",i),e({type:p.OutgoingInternalEvents.CRYPTO_PAYMENT_USER_ACCEPTED,payload:{txId:i}})}catch(i){console.error("[Crossmint] Failed to sign and send transaction",i),e({type:p.OutgoingInternalEvents.CRYPTO_PAYMENT_USER_REJECTED,payload:{}})}})}function l(o,i){return v(this,null,function*(){let{Transaction:m}=yield import("@solana/web3.js"),a=m.from(j.default.decode(i));return console.log("[Crossmint] Deserialized SOL transaction",a),yield o.signAndSendTransaction(a)})}function c(o,i){return v(this,null,function*(){let{parse:m}=yield import("@ethersproject/transactions"),a=m(i);return console.log("[Crossmint] Deserialized ETH transaction",a),yield o.signAndSendTransaction(a)})}return(0,tt.useEffect)(()=>{e({type:"params-update",payload:(0,p.embeddedCheckoutPropsToUpdatableParamsPayload)(t)})},[t.signer,t.recipient,t.mintConfig,t.locale,t.whPassThroughArgs]),(0,et.jsx)(H,u({onInternalEvent:s},t))}var rt=require("react/jsx-runtime");function ot(t){if(!(0,nt.isCryptoEmbeddedCheckoutPropsWithSigner)(t))throw new Error("Invalid parameters: signer is required in versions < 2.0.0");return(0,rt.jsx)(V,u({},t))}var g=require("react"),F=require("@crossmint/client-sdk-base"),st=require("react/jsx-runtime");function it(t){let[e,n]=(0,g.useState)(0),{getIframeUrl:r,listenToEvents:s,emitQueryParams:d}=(0,F.crossmintPaymentService_OLD)(t),{listenToEvents:l}=(0,F.crossmintUiService_OLD)({environment:t.environment}),[c]=(0,g.useState)(r());return(0,g.useEffect)(()=>{let o=s(i=>{var m;return(m=t.onEvent)==null?void 0:m.call(t,i.data)});return()=>{o&&o()}},[]),(0,g.useEffect)(()=>{let o=l(i=>{let{type:m,payload:a}=i.data;switch(m){case"ui:height.changed":n(a.height);break;default:return}});return()=>{o&&o()}},[]),(0,g.useEffect)(()=>{d({recipient:t.recipient,mintConfig:t.mintConfig,locale:t.locale,whPassThroughArgs:t.whPassThroughArgs})},[t.recipient,t.mintConfig,t.locale,t.whPassThroughArgs]),(0,st.jsx)("iframe",{src:c,id:"crossmint-embedded-checkout.iframe",role:"crossmint-embedded-checkout.iframe",allow:"payment *",style:{border:"none !important",padding:"0px !important",width:"100% !important",minWidth:"100% !important",overflow:"hidden !important",display:"block !important",userSelect:"none",transform:"translate(0px) !important",opacity:"1",transition:"ease 0s, opacity 0.4s ease 0.1s",height:`${e}px`}})}var G=require("react/jsx-runtime");function At(t){if((0,O.isFiatEmbeddedCheckoutProps)(t))return(0,G.jsx)(it,u({},t));if((0,O.isCryptoEmbeddedCheckoutProps)(t))return(0,G.jsx)(ot,u({},t));throw new Error("Unsupported: Fiat is the only supported payment method.")}var lt=require("react"),ut=require("react"),b=require("@crossmint/client-sdk-base");var L=require("react");function Y(){let[t,e]=(0,L.useState)(!0);return(0,L.useEffect)(()=>{e(!1)},[]),{isServerSideRendering:t}}var mt=require("react-jss"),Dt="#1e1e1e",at=t=>t==="light",ct=t=>({buttonBgColor:at(t)?"white":Dt,paragraphColor:at(t)?"black":"white"}),dt=(0,mt.createUseStyles)({"@global":{"@import":"url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap')"},crossmintButton:{display:"flex","flex-direction":"row","align-items":"center",padding:"0.875rem 0.875rem","font-weight":"900",transition:"opacity ease-in-out 0.25s","border-radius":"0.5rem","font-family":'"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif',outline:"none",border:"none","box-shadow":"0px 8px 15px rgba(0, 0, 0, 0.1)","justify-content":"center",background:({buttonBgColor:t})=>t,"&:hover:enabled":{opacity:"0.6",cursor:"pointer"}},crossmintImg:{width:"21px",height:"21px","margin-right":"0.875rem"},crossmintParagraph:{color:({paragraphColor:t})=>t,margin:"0"}});var h=require("react/jsx-runtime");function Ht(t){let z=t,{className:e,disabled:n,onClick:r,style:s,tabIndex:d,theme:l="dark",mintTo:c,emailTo:o,listingId:i,auctionId:m,showOverlay:a=!0,mintConfig:C,whPassThroughArgs:f,environment:R,paymentMethod:S,preferredSigninMethod:pt,dismissOverlayOnClick:ht,prepay:gt,locale:W="en-US",currency:Ct="usd",successCallbackURL:ft="",failureCallbackURL:yt="",loginEmail:Et="",projectId:bt,getButtonText:_,checkoutProps:$={experimental:!1,display:"same-tab",paymentMethods:["fiat","ETH","SOL"]}}=z,M=T(z,["className","disabled","onClick","style","tabIndex","theme","mintTo","emailTo","listingId","auctionId","showOverlay","mintConfig","whPassThroughArgs","environment","paymentMethod","preferredSigninMethod","dismissOverlayOnClick","prepay","locale","currency","successCallbackURL","failureCallbackURL","loginEmail","projectId","getButtonText","checkoutProps"]),Pt="clientId"in M?M.clientId:M.collectionId,[I,St]=(0,ut.useState)(!1),{isServerSideRendering:It}=Y(),{connect:kt}=(0,b.crossmintModalService)({clientId:Pt,projectId:bt,showOverlay:a,dismissOverlayOnClick:ht,setConnecting:St,libVersion:y,environment:R,clientName:b.clientNames.reactUi,locale:W,currency:Ct,successCallbackURL:ft,failureCallbackURL:yt,loginEmail:Et}),{getButtonText:Tt,handleClick:vt}=(0,b.crossmintPayButtonService)({onClick:r,connecting:I,paymentMethod:S,locale:W,checkoutProps:$}),wt=Nt=>vt(Nt,()=>{kt(C,c,o,i,f,S,pt,gt,$)}),U=dt(ct(l)),xt=(0,lt.useMemo)(()=>(0,h.jsx)("span",{className:U.crossmintParagraph,role:"button-paragraph",children:_!=null?_(I,S||"fiat"):Tt(I)}),[I,_,S]);return(0,h.jsx)(h.Fragment,{children:!It&&(0,h.jsxs)("button",{className:`${U.crossmintButton} ${e||""}`,disabled:n,onClick:wt,style:u({},s),tabIndex:d,children:[(0,h.jsx)("img",{className:U.crossmintImg,src:"https://www.crossmint.io/assets/crossmint/logo.svg",alt:"Crossmint logo"}),xt]})})}var B=require("@crossmint/client-sdk-base");0&&(module.exports={CrossmintEvents,CrossmintNFTCollectionView,CrossmintNFTDetail,CrossmintPayButton,CrossmintPaymentElement,useCrossmintEvents});
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/components/CrossmintNFTCollectionView.tsx","../src/consts/version.ts","../src/components/CrossmintNFTDetail.tsx","../src/components/embed/index.tsx","../src/components/embed/crypto/CryptoEmbeddedCheckout.tsx","../src/components/embed/crypto/CryptoEmbeddedCheckoutIFrame.tsx","../src/components/embed/EmbeddedCheckoutIFrame.tsx","../src/components/embed/fiat/FiatPaymentElement_OLD.tsx","../src/components/hosted/CrossmintPayButton.tsx","../src/hooks/useEnvironment.ts","../src/components/hosted/styles.ts"],"sourcesContent":["export * from \"./components\";\n\nexport { CrossmintEvents, useCrossmintEvents } from \"@crossmint/client-sdk-base\";\nexport type { CrossmintEvent, CrossmintEventMap } from \"@crossmint/client-sdk-base\";\n","import {\n NFTCollectionViewProps,\n assertValidNFTCollectionViewProps,\n getNFTCollectionViewSrc,\n} from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../consts/version\";\n\nexport function CrossmintNFTCollectionView(props: NFTCollectionViewProps) {\n assertValidNFTCollectionViewProps(props);\n\n const src = getNFTCollectionViewSrc(props, LIB_VERSION);\n\n return (\n <iframe\n src={src}\n width=\"100%\"\n height=\"100%\"\n style={{\n flexGrow: \"1\",\n border: \"none\",\n margin: \"0\",\n padding: \"0\",\n }}\n role=\"nft-collection-view\"\n />\n );\n}\n","export const LIB_VERSION = \"1.1.0-alpha.1\";\n","import { NFTDetailProps, assertValidValidateNFTDetailProps, getNFTDetailSrc } from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../consts/version\";\n\nexport function CrossmintNFTDetail(props: NFTDetailProps) {\n assertValidValidateNFTDetailProps(props);\n\n const src = getNFTDetailSrc(props, LIB_VERSION);\n\n return (\n <iframe\n src={src}\n width=\"100%\"\n height=\"100%\"\n style={{\n flexGrow: \"1\",\n border: \"none\",\n margin: \"0\",\n padding: \"0\",\n }}\n role=\"nft-details\"\n />\n );\n}\n","import {\n CrossmintEmbeddedCheckoutProps,\n isCryptoEmbeddedCheckoutProps,\n isFiatEmbeddedCheckoutProps,\n} from \"@crossmint/client-sdk-base\";\n\nimport { CrossmintCryptoEmbeddedCheckout } from \"./crypto/CryptoEmbeddedCheckout\";\nimport { CrossmintFiatPaymentElement_OLD } from \"./fiat/FiatPaymentElement_OLD\";\n\n// TODO: Rename to CrossmintEmbeddedCheckout\nexport function CrossmintPaymentElement(props: CrossmintEmbeddedCheckoutProps) {\n if (isFiatEmbeddedCheckoutProps(props)) {\n return <CrossmintFiatPaymentElement_OLD {...props} />;\n }\n if (isCryptoEmbeddedCheckoutProps(props)) {\n return <CrossmintCryptoEmbeddedCheckout {...props} />;\n }\n throw new Error(\"Unsupported: Fiat is the only supported payment method.\");\n}\n","import { CryptoEmbeddedCheckoutProps, isCryptoEmbeddedCheckoutPropsWithSigner } from \"@crossmint/client-sdk-base\";\n\nimport CryptoEmbeddedCheckoutIFrame from \"./CryptoEmbeddedCheckoutIFrame\";\n\nexport function CrossmintCryptoEmbeddedCheckout(props: CryptoEmbeddedCheckoutProps) {\n if (!isCryptoEmbeddedCheckoutPropsWithSigner(props)) {\n throw new Error(\"Invalid parameters: signer is required in versions < 2.0.0\");\n }\n\n return <CryptoEmbeddedCheckoutIFrame {...props} />;\n}\n","import bs58 from \"bs58\";\nimport { useEffect } from \"react\";\n\nimport {\n CryptoEmbeddedCheckoutPropsWithSigner,\n ETHEmbeddedCheckoutSigner,\n IncomingInternalEvent,\n IncomingInternalEvents,\n OutgoingInternalEvents,\n SOLEmbeddedCheckoutSigner,\n crossmintIFrameService,\n embeddedCheckoutPropsToUpdatableParamsPayload,\n} from \"@crossmint/client-sdk-base\";\n\nimport CrossmintEmbeddedCheckoutIFrame from \"../EmbeddedCheckoutIFrame\";\n\nexport default function CryptoEmbeddedCheckoutIFrame(props: CryptoEmbeddedCheckoutPropsWithSigner) {\n const { emitInternalEvent } = crossmintIFrameService(props);\n\n const { signer, paymentMethod } = props;\n\n function onInternalEvent(event: IncomingInternalEvent) {\n const { type, payload } = event;\n\n if (type === IncomingInternalEvents.CRYPTO_PAYMENT_INCOMING_TRANSACTION) {\n const { serializedTransaction } = payload;\n console.log(\"[Crossmint] Received incoming transaction\", serializedTransaction);\n handleIncomingTransaction(serializedTransaction);\n }\n }\n\n async function handleIncomingTransaction(serializedTransaction: string) {\n try {\n let txId: string;\n switch (paymentMethod) {\n case \"SOL\":\n txId = await handleSOLTransaction(signer, serializedTransaction);\n break;\n case \"ETH\":\n txId = await handleETHTransaction(signer, serializedTransaction);\n break;\n default:\n throw new Error(`Unsupported payment method ${paymentMethod}`);\n }\n\n console.log(\"[Crossmint] Signed and sent transaction\", txId);\n emitInternalEvent({\n type: OutgoingInternalEvents.CRYPTO_PAYMENT_USER_ACCEPTED,\n payload: {\n txId,\n },\n });\n } catch (e) {\n console.error(\"[Crossmint] Failed to sign and send transaction\", e);\n emitInternalEvent({\n type: OutgoingInternalEvents.CRYPTO_PAYMENT_USER_REJECTED,\n payload: {},\n });\n }\n }\n\n async function handleSOLTransaction(signer: SOLEmbeddedCheckoutSigner, serializedTransaction: string) {\n // @ts-ignore - Error becasue we dont use 'module' field in tsconfig, which is expected because we use tsup to compile\n const { Transaction } = await import(\"@solana/web3.js\");\n const transaction = Transaction.from(bs58.decode(serializedTransaction));\n console.log(\"[Crossmint] Deserialized SOL transaction\", transaction);\n\n return await signer.signAndSendTransaction(transaction);\n }\n\n async function handleETHTransaction(signer: ETHEmbeddedCheckoutSigner, serializedTransaction: string) {\n // @ts-ignore - Error becasue we dont use 'module' field in tsconfig, which is expected because we use tsup to compile\n const { parse: parseTransaction } = await import(\"@ethersproject/transactions\");\n const transaction = parseTransaction(serializedTransaction);\n console.log(\"[Crossmint] Deserialized ETH transaction\", transaction);\n\n return await signer.signAndSendTransaction(transaction);\n }\n\n useEffect(() => {\n emitInternalEvent({\n type: \"params-update\",\n payload: embeddedCheckoutPropsToUpdatableParamsPayload(props),\n });\n }, [props.signer, props.recipient, props.mintConfig, props.locale, props.whPassThroughArgs]);\n\n return <CrossmintEmbeddedCheckoutIFrame onInternalEvent={onInternalEvent} {...props} />;\n}\n","import { useEffect, useState } from \"react\";\n\nimport { IncomingInternalEvent, IncomingInternalEvents, crossmintIFrameService } from \"@crossmint/client-sdk-base\";\nimport { CrossmintEmbeddedCheckoutProps } from \"@crossmint/client-sdk-base\";\n\ntype CrossmintEmbeddedCheckoutIFrameProps = CrossmintEmbeddedCheckoutProps & {\n onInternalEvent?: (event: IncomingInternalEvent) => void;\n};\n\nexport default function CrossmintEmbeddedCheckoutIFrame({\n onInternalEvent,\n ...props\n}: CrossmintEmbeddedCheckoutIFrameProps) {\n const { getUrl, listenToEvents, listenToInternalEvents, emitInternalEvent } = crossmintIFrameService(props);\n\n const [height, setHeight] = useState(0);\n const [url] = useState(getUrl(props));\n\n // Public events\n useEffect(() => {\n const clearListener = listenToEvents((event) => {\n props.onEvent?.(event.data);\n });\n\n return () => {\n clearListener();\n };\n }, []);\n\n // Internal events\n useEffect(() => {\n const clearListener = listenToInternalEvents((event) => {\n const { type, payload } = event.data;\n\n if (type === IncomingInternalEvents.UI_HEIGHT_CHANGED) {\n setHeight(payload.height);\n }\n\n onInternalEvent?.(event.data);\n });\n\n return () => {\n clearListener();\n };\n }, []);\n\n // TODO: Emit updatable parameters\n\n return (\n <iframe\n src={url}\n id=\"crossmint-embedded-checkout.iframe\"\n role=\"crossmint-embedded-checkout.iframe\"\n allow=\"payment *\"\n style={{\n border: \"none !important\",\n padding: \"0px !important\",\n width: \"100% !important\",\n minWidth: \"100% !important\",\n overflow: \"hidden !important\",\n display: \"block !important\",\n userSelect: \"none\",\n transform: \"translate(0px) !important\",\n opacity: \"1\",\n transition: \"ease 0s, opacity 0.4s ease 0.1s\",\n height: `${height}px`,\n }}\n />\n );\n}\n","import { useEffect, useState } from \"react\";\n\nimport type { FiatEmbeddedCheckoutProps } from \"@crossmint/client-sdk-base\";\nimport { crossmintPaymentService_OLD, crossmintUiService_OLD } from \"@crossmint/client-sdk-base\";\n\nexport function CrossmintFiatPaymentElement_OLD(props: FiatEmbeddedCheckoutProps) {\n const [height, setHeight] = useState(0);\n const { getIframeUrl, listenToEvents, emitQueryParams } = crossmintPaymentService_OLD(props);\n const { listenToEvents: listenToUiEvents } = crossmintUiService_OLD({ environment: props.environment });\n const [url] = useState(getIframeUrl());\n\n useEffect(() => {\n const clearListener = listenToEvents((event) => props.onEvent?.(event.data));\n\n return () => {\n if (clearListener) {\n clearListener();\n }\n };\n }, []);\n\n useEffect(() => {\n const clearListener = listenToUiEvents((event: MessageEvent<any>) => {\n const { type, payload } = event.data;\n\n switch (type) {\n case \"ui:height.changed\":\n setHeight(payload.height);\n break;\n default:\n return;\n }\n });\n\n return () => {\n if (clearListener) {\n clearListener();\n }\n };\n }, []);\n\n useEffect(() => {\n emitQueryParams({\n recipient: props.recipient,\n mintConfig: props.mintConfig,\n locale: props.locale,\n whPassThroughArgs: props.whPassThroughArgs,\n });\n }, [props.recipient, props.mintConfig, props.locale, props.whPassThroughArgs]);\n\n return (\n <iframe\n src={url}\n id=\"crossmint-embedded-checkout.iframe\"\n role=\"crossmint-embedded-checkout.iframe\"\n allow=\"payment *\"\n style={{\n border: \"none !important\",\n padding: \"0px !important\",\n width: \"100% !important\",\n minWidth: \"100% !important\",\n overflow: \"hidden !important\",\n display: \"block !important\",\n userSelect: \"none\",\n transform: \"translate(0px) !important\",\n opacity: \"1\",\n transition: \"ease 0s, opacity 0.4s ease 0.1s\",\n height: `${height}px`,\n }}\n ></iframe>\n );\n}\n","import { CSSProperties, MouseEvent, useMemo } from \"react\";\nimport { useState } from \"react\";\n\nimport {\n CrossmintPayButtonProps,\n clientNames,\n crossmintModalService,\n crossmintPayButtonService,\n} from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../../consts/version\";\nimport useEnvironment from \"../../hooks/useEnvironment\";\nimport { formatProps, useStyles } from \"./styles\";\n\nexport type CrossmintPayButtonReactProps = CrossmintPayButtonProps & {\n onClick?: (e: MouseEvent<HTMLButtonElement>) => void;\n style?: CSSProperties;\n};\n\nexport function CrossmintPayButton(buttonProps: CrossmintPayButtonReactProps) {\n const {\n className,\n disabled,\n onClick,\n style,\n tabIndex,\n theme = \"dark\",\n mintTo,\n emailTo,\n listingId,\n auctionId,\n showOverlay = true,\n mintConfig,\n whPassThroughArgs,\n environment,\n paymentMethod,\n preferredSigninMethod,\n dismissOverlayOnClick,\n prepay,\n locale = \"en-US\",\n currency = \"usd\",\n successCallbackURL = \"\",\n failureCallbackURL = \"\",\n loginEmail = \"\",\n projectId,\n getButtonText,\n ...props\n } = buttonProps;\n\n const collectionId = \"clientId\" in props ? props.clientId : props.collectionId;\n\n const [connecting, setConnecting] = useState(false);\n const { isServerSideRendering } = useEnvironment();\n\n const { connect } = crossmintModalService({\n clientId: collectionId,\n projectId,\n showOverlay,\n dismissOverlayOnClick,\n setConnecting,\n libVersion: LIB_VERSION,\n environment,\n clientName: clientNames.reactUi,\n locale,\n currency,\n successCallbackURL,\n failureCallbackURL,\n loginEmail,\n });\n\n const { getButtonText: getButtonTextInternal, handleClick } = crossmintPayButtonService({\n onClick,\n connecting,\n paymentMethod,\n locale,\n });\n\n const _handleClick = (event: MouseEvent<HTMLButtonElement>) =>\n handleClick(event, () => {\n connect(\n mintConfig,\n mintTo,\n emailTo,\n listingId,\n whPassThroughArgs,\n paymentMethod,\n preferredSigninMethod,\n prepay\n );\n });\n\n const classes = useStyles(formatProps(theme));\n\n const content = useMemo(() => {\n return (\n <span className={classes.crossmintParagraph} role=\"button-paragraph\">\n {getButtonText != null\n ? getButtonText(connecting, paymentMethod || \"fiat\")\n : getButtonTextInternal(connecting)}\n </span>\n );\n }, [connecting, getButtonText, paymentMethod]);\n\n return (\n <>\n {!isServerSideRendering && (\n <button\n className={`${classes.crossmintButton} ${className || \"\"}`}\n disabled={disabled}\n onClick={_handleClick}\n style={{ ...style }}\n tabIndex={tabIndex}\n >\n <img\n className={classes.crossmintImg}\n src=\"https://www.crossmint.io/assets/crossmint/logo.svg\"\n alt=\"Crossmint logo\"\n />\n {content}\n </button>\n )}\n </>\n );\n}\n","import { useEffect, useState } from \"react\";\r\n\r\nexport default function useEnvironment() {\r\n const [isServerSideRendering, setIsServerSideRendering] = useState(true);\r\n useEffect(() => {\r\n setIsServerSideRendering(false);\r\n }, []);\r\n\r\n return { isServerSideRendering };\r\n}\r\n","import { createUseStyles } from \"react-jss\";\n\nconst DARK_BG = \"#1e1e1e\";\n\ninterface CustomStylingProps {\n buttonBgColor?: string;\n paragraphColor?: string;\n}\n\nconst themeIsLight = (theme: string) => theme === \"light\";\n\nexport const formatProps = (theme: string): CustomStylingProps => ({\n buttonBgColor: themeIsLight(theme) ? \"white\" : DARK_BG,\n paragraphColor: themeIsLight(theme) ? \"black\" : \"white\",\n});\n\nexport const useStyles = createUseStyles({\n \"@global\": {\n \"@import\":\n \"url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap')\",\n },\n crossmintButton: {\n display: \"flex\",\n \"flex-direction\": \"row\",\n \"align-items\": \"center\",\n padding: \"0.875rem 0.875rem\",\n \"font-weight\": \"900\",\n transition: \"opacity ease-in-out 0.25s\",\n \"border-radius\": \"0.5rem\",\n \"font-family\": `\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif`,\n outline: \"none\",\n border: \"none\",\n \"box-shadow\": \"0px 8px 15px rgba(0, 0, 0, 0.1)\",\n \"justify-content\": \"center\",\n background: ({ buttonBgColor }: CustomStylingProps) => buttonBgColor,\n\n \"&:hover:enabled\": {\n opacity: \"0.6\",\n cursor: \"pointer\",\n },\n },\n crossmintImg: {\n width: \"21px\",\n height: \"21px\",\n \"margin-right\": \"0.875rem\",\n },\n crossmintParagraph: {\n color: ({ paragraphColor }: CustomStylingProps) => paragraphColor,\n margin: \"0\",\n },\n});\n"],"mappings":"ksCAAA,IAAAA,GAAA,GAAAC,GAAAD,GAAA,sEAAAE,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,4BAAAC,GAAA,6DAAAC,GAAAN,ICAA,IAAAO,EAIO,sCCJA,IAAMC,EAAc,gBDcnB,IAAAC,EAAA,6BAND,SAASC,GAA2BC,EAA+B,IACtE,qCAAkCA,CAAK,EAEvC,IAAMC,KAAM,2BAAwBD,EAAOE,CAAW,EAEtD,SACI,OAAC,UACG,IAAKD,EACL,MAAM,OACN,OAAO,OACP,MAAO,CACH,SAAU,IACV,OAAQ,OACR,OAAQ,IACR,QAAS,GACb,EACA,KAAK,sBACT,CAER,CE3BA,IAAAE,EAAmF,sCAU3E,IAAAC,EAAA,6BAND,SAASC,GAAmBC,EAAuB,IACtD,qCAAkCA,CAAK,EAEvC,IAAMC,KAAM,mBAAgBD,EAAOE,CAAW,EAE9C,SACI,OAAC,UACG,IAAKD,EACL,MAAM,OACN,OAAO,OACP,MAAO,CACH,SAAU,IACV,OAAQ,OACR,OAAQ,IACR,QAAS,GACb,EACA,KAAK,cACT,CAER,CCvBA,IAAAE,EAIO,sCCJP,IAAAC,GAAqF,sCCArF,IAAAC,EAAiB,qBACjBC,EAA0B,iBAE1BC,EASO,sCCZP,IAAAC,EAAoC,iBAEpCC,EAAsF,sCA+C9E,IAAAC,EAAA,6BAxCO,SAARC,EAAiDC,EAGf,CAHe,IAAAC,EAAAD,EACpD,iBAAAE,CAVJ,EASwDD,EAEjDE,EAAAC,EAFiDH,EAEjD,CADH,oBAGA,GAAM,CAAE,OAAAI,EAAQ,eAAAC,EAAgB,uBAAAC,EAAwB,kBAAAC,CAAkB,KAAI,0BAAuBL,CAAK,EAEpG,CAACM,EAAQC,CAAS,KAAI,YAAS,CAAC,EAChC,CAACC,CAAG,KAAI,YAASN,EAAOF,CAAK,CAAC,EAGpC,sBAAU,IAAM,CACZ,IAAMS,EAAgBN,EAAgBO,GAAU,CApBxD,IAAAb,GAqBYA,EAAAG,EAAM,UAAN,MAAAH,EAAA,KAAAG,EAAgBU,EAAM,KAC1B,CAAC,EAED,MAAO,IAAM,CACTD,EAAc,CAClB,CACJ,EAAG,CAAC,CAAC,KAGL,aAAU,IAAM,CACZ,IAAMA,EAAgBL,EAAwBM,GAAU,CACpD,GAAM,CAAE,KAAAC,EAAM,QAAAC,CAAQ,EAAIF,EAAM,KAE5BC,IAAS,yBAAuB,mBAChCJ,EAAUK,EAAQ,MAAM,EAG5Bb,GAAA,MAAAA,EAAkBW,EAAM,KAC5B,CAAC,EAED,MAAO,IAAM,CACTD,EAAc,CAClB,CACJ,EAAG,CAAC,CAAC,KAKD,OAAC,UACG,IAAKD,EACL,GAAG,qCACH,KAAK,qCACL,MAAM,YACN,MAAO,CACH,OAAQ,kBACR,QAAS,iBACT,MAAO,kBACP,SAAU,kBACV,SAAU,oBACV,QAAS,mBACT,WAAY,OACZ,UAAW,4BACX,QAAS,IACT,WAAY,kCACZ,OAAQ,GAAGF,CAAM,IACrB,EACJ,CAER,CDiBW,IAAAO,GAAA,6BAtEI,SAARC,EAA8CC,EAA8C,CAC/F,GAAM,CAAE,kBAAAC,CAAkB,KAAI,0BAAuBD,CAAK,EAEpD,CAAE,OAAAE,EAAQ,cAAAC,CAAc,EAAIH,EAElC,SAASI,EAAgBC,EAA8B,CACnD,GAAM,CAAE,KAAAC,EAAM,QAAAC,CAAQ,EAAIF,EAE1B,GAAIC,IAAS,yBAAuB,oCAAqC,CACrE,GAAM,CAAE,sBAAAE,CAAsB,EAAID,EAClC,QAAQ,IAAI,4CAA6CC,CAAqB,EAC9EC,EAA0BD,CAAqB,CACnD,CACJ,CAEA,SAAeC,EAA0BD,EAA+B,QAAAE,EAAA,sBACpE,GAAI,CACA,IAAIC,EACJ,OAAQR,EAAe,CACnB,IAAK,MACDQ,EAAO,MAAMC,EAAqBV,EAAQM,CAAqB,EAC/D,MACJ,IAAK,MACDG,EAAO,MAAME,EAAqBX,EAAQM,CAAqB,EAC/D,MACJ,QACI,MAAM,IAAI,MAAM,8BAA8BL,CAAa,EAAE,CACrE,CAEA,QAAQ,IAAI,0CAA2CQ,CAAI,EAC3DV,EAAkB,CACd,KAAM,yBAAuB,6BAC7B,QAAS,CACL,KAAAU,CACJ,CACJ,CAAC,CACL,OAASG,EAAG,CACR,QAAQ,MAAM,kDAAmDA,CAAC,EAClEb,EAAkB,CACd,KAAM,yBAAuB,6BAC7B,QAAS,CAAC,CACd,CAAC,CACL,CACJ,GAEA,SAAeW,EAAqBV,EAAmCM,EAA+B,QAAAE,EAAA,sBAElG,GAAM,CAAE,YAAAK,CAAY,EAAI,KAAM,QAAO,iBAAiB,EAChDC,EAAcD,EAAY,KAAK,EAAAE,QAAK,OAAOT,CAAqB,CAAC,EACvE,eAAQ,IAAI,2CAA4CQ,CAAW,EAE5D,MAAMd,EAAO,uBAAuBc,CAAW,CAC1D,GAEA,SAAeH,EAAqBX,EAAmCM,EAA+B,QAAAE,EAAA,sBAElG,GAAM,CAAE,MAAOQ,CAAiB,EAAI,KAAM,QAAO,6BAA6B,EACxEF,EAAcE,EAAiBV,CAAqB,EAC1D,eAAQ,IAAI,2CAA4CQ,CAAW,EAE5D,MAAMd,EAAO,uBAAuBc,CAAW,CAC1D,GAEA,sBAAU,IAAM,CACZf,EAAkB,CACd,KAAM,gBACN,WAAS,iDAA8CD,CAAK,CAChE,CAAC,CACL,EAAG,CAACA,EAAM,OAAQA,EAAM,UAAWA,EAAM,WAAYA,EAAM,OAAQA,EAAM,iBAAiB,CAAC,KAEpF,QAACmB,EAAAC,EAAA,CAAgC,gBAAiBhB,GAAqBJ,EAAO,CACzF,CD9EW,IAAAqB,GAAA,6BALJ,SAASC,GAAgCC,EAAoC,CAChF,GAAI,IAAC,4CAAwCA,CAAK,EAC9C,MAAM,IAAI,MAAM,4DAA4D,EAGhF,SAAO,QAACC,EAAAC,EAAA,GAAiCF,EAAO,CACpD,CGVA,IAAAG,EAAoC,iBAGpCC,EAAoE,sCAgD5DC,GAAA,6BA9CD,SAASC,GAAgCC,EAAkC,CAC9E,GAAM,CAACC,EAAQC,CAAS,KAAI,YAAS,CAAC,EAChC,CAAE,aAAAC,EAAc,eAAAC,EAAgB,gBAAAC,CAAgB,KAAI,+BAA4BL,CAAK,EACrF,CAAE,eAAgBM,CAAiB,KAAI,0BAAuB,CAAE,YAAaN,EAAM,WAAY,CAAC,EAChG,CAACO,CAAG,KAAI,YAASJ,EAAa,CAAC,EAErC,sBAAU,IAAM,CACZ,IAAMK,EAAgBJ,EAAgBK,GAAO,CAZrD,IAAAC,EAYwD,OAAAA,EAAAV,EAAM,UAAN,YAAAU,EAAA,KAAAV,EAAgBS,EAAM,MAAK,EAE3E,MAAO,IAAM,CACLD,GACAA,EAAc,CAEtB,CACJ,EAAG,CAAC,CAAC,KAEL,aAAU,IAAM,CACZ,IAAMA,EAAgBF,EAAkBG,GAA6B,CACjE,GAAM,CAAE,KAAAE,EAAM,QAAAC,CAAQ,EAAIH,EAAM,KAEhC,OAAQE,EAAM,CACV,IAAK,oBACDT,EAAUU,EAAQ,MAAM,EACxB,MACJ,QACI,MACR,CACJ,CAAC,EAED,MAAO,IAAM,CACLJ,GACAA,EAAc,CAEtB,CACJ,EAAG,CAAC,CAAC,KAEL,aAAU,IAAM,CACZH,EAAgB,CACZ,UAAWL,EAAM,UACjB,WAAYA,EAAM,WAClB,OAAQA,EAAM,OACd,kBAAmBA,EAAM,iBAC7B,CAAC,CACL,EAAG,CAACA,EAAM,UAAWA,EAAM,WAAYA,EAAM,OAAQA,EAAM,iBAAiB,CAAC,KAGzE,QAAC,UACG,IAAKO,EACL,GAAG,qCACH,KAAK,qCACL,MAAM,YACN,MAAO,CACH,OAAQ,kBACR,QAAS,iBACT,MAAO,kBACP,SAAU,kBACV,SAAU,oBACV,QAAS,mBACT,WAAY,OACZ,UAAW,4BACX,QAAS,IACT,WAAY,kCACZ,OAAQ,GAAGN,CAAM,IACrB,EACH,CAET,CJ3De,IAAAY,EAAA,6BAFR,SAASC,GAAwBC,EAAuC,CAC3E,MAAI,+BAA4BA,CAAK,EACjC,SAAO,OAACC,GAAAC,EAAA,GAAoCF,EAAO,EAEvD,MAAI,iCAA8BA,CAAK,EACnC,SAAO,OAACG,GAAAD,EAAA,GAAoCF,EAAO,EAEvD,MAAM,IAAI,MAAM,yDAAyD,CAC7E,CKlBA,IAAAI,GAAmD,iBACnDA,GAAyB,iBAEzBC,EAKO,sCCRP,IAAAC,EAAoC,iBAErB,SAARC,GAAkC,CACrC,GAAM,CAACC,EAAuBC,CAAwB,KAAI,YAAS,EAAI,EACvE,sBAAU,IAAM,CACZA,EAAyB,EAAK,CAClC,EAAG,CAAC,CAAC,EAEE,CAAE,sBAAAD,CAAsB,CACnC,CCTA,IAAAE,GAAgC,qBAE1BC,GAAU,UAOVC,GAAgBC,GAAkBA,IAAU,QAErCC,GAAeD,IAAuC,CAC/D,cAAeD,GAAaC,CAAK,EAAI,QAAUF,GAC/C,eAAgBC,GAAaC,CAAK,EAAI,QAAU,OACpD,GAEaE,MAAY,oBAAgB,CACrC,UAAW,CACP,UACI,6GACR,EACA,gBAAiB,CACb,QAAS,OACT,iBAAkB,MAClB,cAAe,SACf,QAAS,oBACT,cAAe,MACf,WAAY,4BACZ,gBAAiB,SACjB,cAAe,uIACf,QAAS,OACT,OAAQ,OACR,aAAc,kCACd,kBAAmB,SACnB,WAAY,CAAC,CAAE,cAAAC,CAAc,IAA0BA,EAEvD,kBAAmB,CACf,QAAS,MACT,OAAQ,SACZ,CACJ,EACA,aAAc,CACV,MAAO,OACP,OAAQ,OACR,eAAgB,UACpB,EACA,mBAAoB,CAChB,MAAO,CAAC,CAAE,eAAAC,CAAe,IAA0BA,EACnD,OAAQ,GACZ,CACJ,CAAC,EF6CW,IAAAC,EAAA,6BA5EL,SAASC,GAAmBC,EAA2C,CAC1E,IA2BIC,EAAAD,EA1BA,WAAAE,EACA,SAAAC,EACA,QAAAC,EACA,MAAAC,EACA,SAAAC,EACA,MAAAC,EAAQ,OACR,OAAAC,EACA,QAAAC,EACA,UAAAC,EACA,UAAAC,EACA,YAAAC,EAAc,GACd,WAAAC,EACA,kBAAAC,EACA,YAAAC,EACA,cAAAC,EACA,sBAAAC,GACA,sBAAAC,GACA,OAAAC,GACA,OAAAC,EAAS,QACT,SAAAC,GAAW,MACX,mBAAAC,GAAqB,GACrB,mBAAAC,GAAqB,GACrB,WAAAC,GAAa,GACb,UAAAC,GACA,cAAAC,CA7CR,EA+CQzB,EADG0B,EAAAC,EACH3B,EADG,CAzBH,YACA,WACA,UACA,QACA,WACA,QACA,SACA,UACA,YACA,YACA,cACA,aACA,oBACA,cACA,gBACA,wBACA,wBACA,SACA,SACA,WACA,qBACA,qBACA,aACA,YACA,kBAIE4B,GAAe,aAAcF,EAAQA,EAAM,SAAWA,EAAM,aAE5D,CAACG,EAAYC,EAAa,KAAI,aAAS,EAAK,EAC5C,CAAE,sBAAAC,EAAsB,EAAIC,EAAe,EAE3C,CAAE,QAAAC,EAAQ,KAAI,yBAAsB,CACtC,SAAUL,GACV,UAAAJ,GACA,YAAAb,EACA,sBAAAM,GACA,cAAAa,GACA,WAAYI,EACZ,YAAApB,EACA,WAAY,cAAY,QACxB,OAAAK,EACA,SAAAC,GACA,mBAAAC,GACA,mBAAAC,GACA,WAAAC,EACJ,CAAC,EAEK,CAAE,cAAeY,GAAuB,YAAAC,EAAY,KAAI,6BAA0B,CACpF,QAAAjC,EACA,WAAA0B,EACA,cAAAd,EACA,OAAAI,CACJ,CAAC,EAEKkB,GAAgBC,IAClBF,GAAYE,GAAO,IAAM,CACrBL,GACIrB,EACAL,EACAC,EACAC,EACAI,EACAE,EACAC,GACAE,EACJ,CACJ,CAAC,EAECqB,EAAUC,GAAUC,GAAYnC,CAAK,CAAC,EAEtCoC,MAAU,YAAQ,OAEhB,OAAC,QAAK,UAAWH,EAAQ,mBAAoB,KAAK,mBAC7C,SAAAd,GAAiB,KACZA,EAAcI,EAAYd,GAAiB,MAAM,EACjDoB,GAAsBN,CAAU,EAC1C,EAEL,CAACA,EAAYJ,EAAeV,CAAa,CAAC,EAE7C,SACI,mBACK,UAACgB,OACE,QAAC,UACG,UAAW,GAAGQ,EAAQ,eAAe,IAAItC,GAAa,EAAE,GACxD,SAAUC,EACV,QAASmC,GACT,MAAOM,EAAA,GAAKvC,GACZ,SAAUC,EAEV,oBAAC,OACG,UAAWkC,EAAQ,aACnB,IAAI,qDACJ,IAAI,iBACR,EACCG,IACL,EAER,CAER,CTzHA,IAAAE,EAAoD","names":["src_exports","__export","CrossmintNFTCollectionView","CrossmintNFTDetail","CrossmintPayButton","CrossmintPaymentElement","__toCommonJS","import_client_sdk_base","LIB_VERSION","import_jsx_runtime","CrossmintNFTCollectionView","props","src","LIB_VERSION","import_client_sdk_base","import_jsx_runtime","CrossmintNFTDetail","props","src","LIB_VERSION","import_client_sdk_base","import_client_sdk_base","import_bs58","import_react","import_client_sdk_base","import_react","import_client_sdk_base","import_jsx_runtime","CrossmintEmbeddedCheckoutIFrame","_a","_b","onInternalEvent","props","__objRest","getUrl","listenToEvents","listenToInternalEvents","emitInternalEvent","height","setHeight","url","clearListener","event","type","payload","import_jsx_runtime","CryptoEmbeddedCheckoutIFrame","props","emitInternalEvent","signer","paymentMethod","onInternalEvent","event","type","payload","serializedTransaction","handleIncomingTransaction","__async","txId","handleSOLTransaction","handleETHTransaction","e","Transaction","transaction","bs58","parseTransaction","CrossmintEmbeddedCheckoutIFrame","__spreadValues","import_jsx_runtime","CrossmintCryptoEmbeddedCheckout","props","CryptoEmbeddedCheckoutIFrame","__spreadValues","import_react","import_client_sdk_base","import_jsx_runtime","CrossmintFiatPaymentElement_OLD","props","height","setHeight","getIframeUrl","listenToEvents","emitQueryParams","listenToUiEvents","url","clearListener","event","_a","type","payload","import_jsx_runtime","CrossmintPaymentElement","props","CrossmintFiatPaymentElement_OLD","__spreadValues","CrossmintCryptoEmbeddedCheckout","import_react","import_client_sdk_base","import_react","useEnvironment","isServerSideRendering","setIsServerSideRendering","import_react_jss","DARK_BG","themeIsLight","theme","formatProps","useStyles","buttonBgColor","paragraphColor","import_jsx_runtime","CrossmintPayButton","buttonProps","_a","className","disabled","onClick","style","tabIndex","theme","mintTo","emailTo","listingId","auctionId","showOverlay","mintConfig","whPassThroughArgs","environment","paymentMethod","preferredSigninMethod","dismissOverlayOnClick","prepay","locale","currency","successCallbackURL","failureCallbackURL","loginEmail","projectId","getButtonText","props","__objRest","collectionId","connecting","setConnecting","isServerSideRendering","useEnvironment","connect","LIB_VERSION","getButtonTextInternal","handleClick","_handleClick","event","classes","useStyles","formatProps","content","__spreadValues","import_client_sdk_base"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/components/CrossmintNFTCollectionView.tsx","../src/consts/version.ts","../src/components/CrossmintNFTDetail.tsx","../src/components/embed/index.tsx","../src/components/embed/crypto/CryptoEmbeddedCheckout.tsx","../src/components/embed/crypto/CryptoEmbeddedCheckoutIFrame.tsx","../src/components/embed/EmbeddedCheckoutIFrame.tsx","../src/components/embed/fiat/FiatPaymentElement_OLD.tsx","../src/components/hosted/CrossmintPayButton.tsx","../src/hooks/useEnvironment.ts","../src/components/hosted/styles.ts"],"sourcesContent":["export * from \"./components\";\n\nexport { CrossmintEvents, useCrossmintEvents } from \"@crossmint/client-sdk-base\";\nexport type { CrossmintEvent, CrossmintEventMap } from \"@crossmint/client-sdk-base\";\n","import {\n NFTCollectionViewProps,\n assertValidNFTCollectionViewProps,\n getNFTCollectionViewSrc,\n} from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../consts/version\";\n\nexport function CrossmintNFTCollectionView(props: NFTCollectionViewProps) {\n assertValidNFTCollectionViewProps(props);\n\n const src = getNFTCollectionViewSrc(props, LIB_VERSION);\n\n return (\n <iframe\n src={src}\n width=\"100%\"\n height=\"100%\"\n style={{\n flexGrow: \"1\",\n border: \"none\",\n margin: \"0\",\n padding: \"0\",\n }}\n role=\"nft-collection-view\"\n />\n );\n}\n","export const LIB_VERSION = \"1.1.0-alpha.2\";\n","import { NFTDetailProps, assertValidValidateNFTDetailProps, getNFTDetailSrc } from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../consts/version\";\n\nexport function CrossmintNFTDetail(props: NFTDetailProps) {\n assertValidValidateNFTDetailProps(props);\n\n const src = getNFTDetailSrc(props, LIB_VERSION);\n\n return (\n <iframe\n src={src}\n width=\"100%\"\n height=\"100%\"\n style={{\n flexGrow: \"1\",\n border: \"none\",\n margin: \"0\",\n padding: \"0\",\n }}\n role=\"nft-details\"\n />\n );\n}\n","import {\n CrossmintEmbeddedCheckoutProps,\n isCryptoEmbeddedCheckoutProps,\n isFiatEmbeddedCheckoutProps,\n} from \"@crossmint/client-sdk-base\";\n\nimport { CrossmintCryptoEmbeddedCheckout } from \"./crypto/CryptoEmbeddedCheckout\";\nimport { CrossmintFiatPaymentElement_OLD } from \"./fiat/FiatPaymentElement_OLD\";\n\n// TODO: Rename to CrossmintEmbeddedCheckout\nexport function CrossmintPaymentElement(props: CrossmintEmbeddedCheckoutProps) {\n if (isFiatEmbeddedCheckoutProps(props)) {\n return <CrossmintFiatPaymentElement_OLD {...props} />;\n }\n if (isCryptoEmbeddedCheckoutProps(props)) {\n return <CrossmintCryptoEmbeddedCheckout {...props} />;\n }\n throw new Error(\"Unsupported: Fiat is the only supported payment method.\");\n}\n","import { CryptoEmbeddedCheckoutProps, isCryptoEmbeddedCheckoutPropsWithSigner } from \"@crossmint/client-sdk-base\";\n\nimport CryptoEmbeddedCheckoutIFrame from \"./CryptoEmbeddedCheckoutIFrame\";\n\nexport function CrossmintCryptoEmbeddedCheckout(props: CryptoEmbeddedCheckoutProps) {\n if (!isCryptoEmbeddedCheckoutPropsWithSigner(props)) {\n throw new Error(\"Invalid parameters: signer is required in versions < 2.0.0\");\n }\n\n return <CryptoEmbeddedCheckoutIFrame {...props} />;\n}\n","import bs58 from \"bs58\";\nimport { useEffect } from \"react\";\n\nimport {\n CryptoEmbeddedCheckoutPropsWithSigner,\n ETHEmbeddedCheckoutSigner,\n IncomingInternalEvent,\n IncomingInternalEvents,\n OutgoingInternalEvents,\n SOLEmbeddedCheckoutSigner,\n crossmintIFrameService,\n embeddedCheckoutPropsToUpdatableParamsPayload,\n} from \"@crossmint/client-sdk-base\";\n\nimport CrossmintEmbeddedCheckoutIFrame from \"../EmbeddedCheckoutIFrame\";\n\nexport default function CryptoEmbeddedCheckoutIFrame(props: CryptoEmbeddedCheckoutPropsWithSigner) {\n const { emitInternalEvent } = crossmintIFrameService(props);\n\n const { signer, paymentMethod } = props;\n\n function onInternalEvent(event: IncomingInternalEvent) {\n const { type, payload } = event;\n\n if (type === IncomingInternalEvents.CRYPTO_PAYMENT_INCOMING_TRANSACTION) {\n const { serializedTransaction } = payload;\n console.log(\"[Crossmint] Received incoming transaction\", serializedTransaction);\n handleIncomingTransaction(serializedTransaction);\n }\n }\n\n async function handleIncomingTransaction(serializedTransaction: string) {\n try {\n let txId: string;\n switch (paymentMethod) {\n case \"SOL\":\n txId = await handleSOLTransaction(signer, serializedTransaction);\n break;\n case \"ETH\":\n txId = await handleETHTransaction(signer, serializedTransaction);\n break;\n default:\n throw new Error(`Unsupported payment method ${paymentMethod}`);\n }\n\n console.log(\"[Crossmint] Signed and sent transaction\", txId);\n emitInternalEvent({\n type: OutgoingInternalEvents.CRYPTO_PAYMENT_USER_ACCEPTED,\n payload: {\n txId,\n },\n });\n } catch (e) {\n console.error(\"[Crossmint] Failed to sign and send transaction\", e);\n emitInternalEvent({\n type: OutgoingInternalEvents.CRYPTO_PAYMENT_USER_REJECTED,\n payload: {},\n });\n }\n }\n\n async function handleSOLTransaction(signer: SOLEmbeddedCheckoutSigner, serializedTransaction: string) {\n // @ts-ignore - Error becasue we dont use 'module' field in tsconfig, which is expected because we use tsup to compile\n const { Transaction } = await import(\"@solana/web3.js\");\n const transaction = Transaction.from(bs58.decode(serializedTransaction));\n console.log(\"[Crossmint] Deserialized SOL transaction\", transaction);\n\n return await signer.signAndSendTransaction(transaction);\n }\n\n async function handleETHTransaction(signer: ETHEmbeddedCheckoutSigner, serializedTransaction: string) {\n // @ts-ignore - Error becasue we dont use 'module' field in tsconfig, which is expected because we use tsup to compile\n const { parse: parseTransaction } = await import(\"@ethersproject/transactions\");\n const transaction = parseTransaction(serializedTransaction);\n console.log(\"[Crossmint] Deserialized ETH transaction\", transaction);\n\n return await signer.signAndSendTransaction(transaction);\n }\n\n useEffect(() => {\n emitInternalEvent({\n type: \"params-update\",\n payload: embeddedCheckoutPropsToUpdatableParamsPayload(props),\n });\n }, [props.signer, props.recipient, props.mintConfig, props.locale, props.whPassThroughArgs]);\n\n return <CrossmintEmbeddedCheckoutIFrame onInternalEvent={onInternalEvent} {...props} />;\n}\n","import { useEffect, useState } from \"react\";\n\nimport { IncomingInternalEvent, IncomingInternalEvents, crossmintIFrameService } from \"@crossmint/client-sdk-base\";\nimport { CrossmintEmbeddedCheckoutProps } from \"@crossmint/client-sdk-base\";\n\ntype CrossmintEmbeddedCheckoutIFrameProps = CrossmintEmbeddedCheckoutProps & {\n onInternalEvent?: (event: IncomingInternalEvent) => void;\n};\n\nexport default function CrossmintEmbeddedCheckoutIFrame({\n onInternalEvent,\n ...props\n}: CrossmintEmbeddedCheckoutIFrameProps) {\n const { getUrl, listenToEvents, listenToInternalEvents, emitInternalEvent } = crossmintIFrameService(props);\n\n const [height, setHeight] = useState(0);\n const [url] = useState(getUrl(props));\n\n // Public events\n useEffect(() => {\n const clearListener = listenToEvents((event) => {\n props.onEvent?.(event.data);\n });\n\n return () => {\n clearListener();\n };\n }, []);\n\n // Internal events\n useEffect(() => {\n const clearListener = listenToInternalEvents((event) => {\n const { type, payload } = event.data;\n\n if (type === IncomingInternalEvents.UI_HEIGHT_CHANGED) {\n setHeight(payload.height);\n }\n\n onInternalEvent?.(event.data);\n });\n\n return () => {\n clearListener();\n };\n }, []);\n\n // TODO: Emit updatable parameters\n\n return (\n <iframe\n src={url}\n id=\"crossmint-embedded-checkout.iframe\"\n role=\"crossmint-embedded-checkout.iframe\"\n allow=\"payment *\"\n style={{\n border: \"none !important\",\n padding: \"0px !important\",\n width: \"100% !important\",\n minWidth: \"100% !important\",\n overflow: \"hidden !important\",\n display: \"block !important\",\n userSelect: \"none\",\n transform: \"translate(0px) !important\",\n opacity: \"1\",\n transition: \"ease 0s, opacity 0.4s ease 0.1s\",\n height: `${height}px`,\n }}\n />\n );\n}\n","import { useEffect, useState } from \"react\";\n\nimport type { FiatEmbeddedCheckoutProps } from \"@crossmint/client-sdk-base\";\nimport { crossmintPaymentService_OLD, crossmintUiService_OLD } from \"@crossmint/client-sdk-base\";\n\nexport function CrossmintFiatPaymentElement_OLD(props: FiatEmbeddedCheckoutProps) {\n const [height, setHeight] = useState(0);\n const { getIframeUrl, listenToEvents, emitQueryParams } = crossmintPaymentService_OLD(props);\n const { listenToEvents: listenToUiEvents } = crossmintUiService_OLD({ environment: props.environment });\n const [url] = useState(getIframeUrl());\n\n useEffect(() => {\n const clearListener = listenToEvents((event) => props.onEvent?.(event.data));\n\n return () => {\n if (clearListener) {\n clearListener();\n }\n };\n }, []);\n\n useEffect(() => {\n const clearListener = listenToUiEvents((event: MessageEvent<any>) => {\n const { type, payload } = event.data;\n\n switch (type) {\n case \"ui:height.changed\":\n setHeight(payload.height);\n break;\n default:\n return;\n }\n });\n\n return () => {\n if (clearListener) {\n clearListener();\n }\n };\n }, []);\n\n useEffect(() => {\n emitQueryParams({\n recipient: props.recipient,\n mintConfig: props.mintConfig,\n locale: props.locale,\n whPassThroughArgs: props.whPassThroughArgs,\n });\n }, [props.recipient, props.mintConfig, props.locale, props.whPassThroughArgs]);\n\n return (\n <iframe\n src={url}\n id=\"crossmint-embedded-checkout.iframe\"\n role=\"crossmint-embedded-checkout.iframe\"\n allow=\"payment *\"\n style={{\n border: \"none !important\",\n padding: \"0px !important\",\n width: \"100% !important\",\n minWidth: \"100% !important\",\n overflow: \"hidden !important\",\n display: \"block !important\",\n userSelect: \"none\",\n transform: \"translate(0px) !important\",\n opacity: \"1\",\n transition: \"ease 0s, opacity 0.4s ease 0.1s\",\n height: `${height}px`,\n }}\n ></iframe>\n );\n}\n","import { CSSProperties, MouseEvent, useMemo } from \"react\";\nimport { useState } from \"react\";\n\nimport {\n CrossmintPayButtonProps,\n clientNames,\n crossmintModalService,\n crossmintPayButtonService, CheckoutProps,\n} from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../../consts/version\";\nimport useEnvironment from \"../../hooks/useEnvironment\";\nimport { formatProps, useStyles } from \"./styles\";\n\nexport type CrossmintPayButtonReactProps = CrossmintPayButtonProps & {\n onClick?: (e: MouseEvent<HTMLButtonElement>) => void;\n style?: CSSProperties;\n};\n\nexport function CrossmintPayButton(buttonProps: CrossmintPayButtonReactProps) {\n const {\n className,\n disabled,\n onClick,\n style,\n tabIndex,\n theme = \"dark\",\n mintTo,\n emailTo,\n listingId,\n auctionId,\n showOverlay = true,\n mintConfig,\n whPassThroughArgs,\n environment,\n paymentMethod,\n preferredSigninMethod,\n dismissOverlayOnClick,\n prepay,\n locale = \"en-US\",\n currency = \"usd\",\n successCallbackURL = \"\",\n failureCallbackURL = \"\",\n loginEmail = \"\",\n projectId,\n getButtonText,\n checkoutProps = {\n experimental: false,\n display: \"same-tab\",\n paymentMethods: [\"fiat\", \"ETH\", \"SOL\"],\n } as CheckoutProps,\n ...props\n } = buttonProps;\n\n const collectionId = \"clientId\" in props ? props.clientId : props.collectionId;\n\n const [connecting, setConnecting] = useState(false);\n const { isServerSideRendering } = useEnvironment();\n\n const { connect } = crossmintModalService({\n clientId: collectionId,\n projectId,\n showOverlay,\n dismissOverlayOnClick,\n setConnecting,\n libVersion: LIB_VERSION,\n environment,\n clientName: clientNames.reactUi,\n locale,\n currency,\n successCallbackURL,\n failureCallbackURL,\n loginEmail,\n });\n\n const { getButtonText: getButtonTextInternal, handleClick } = crossmintPayButtonService({\n onClick,\n connecting,\n paymentMethod,\n locale,\n checkoutProps\n });\n\n const _handleClick = (event: MouseEvent<HTMLButtonElement>) =>\n handleClick(event, () => {\n connect(\n mintConfig,\n mintTo,\n emailTo,\n listingId,\n whPassThroughArgs,\n paymentMethod,\n preferredSigninMethod,\n prepay,\n checkoutProps\n );\n });\n\n const classes = useStyles(formatProps(theme));\n\n const content = useMemo(() => {\n return (\n <span className={classes.crossmintParagraph} role=\"button-paragraph\">\n {getButtonText != null\n ? getButtonText(connecting, paymentMethod || \"fiat\")\n : getButtonTextInternal(connecting)}\n </span>\n );\n }, [connecting, getButtonText, paymentMethod]);\n\n return (\n <>\n {!isServerSideRendering && (\n <button\n className={`${classes.crossmintButton} ${className || \"\"}`}\n disabled={disabled}\n onClick={_handleClick}\n style={{ ...style }}\n tabIndex={tabIndex}\n >\n <img\n className={classes.crossmintImg}\n src=\"https://www.crossmint.io/assets/crossmint/logo.svg\"\n alt=\"Crossmint logo\"\n />\n {content}\n </button>\n )}\n </>\n );\n}\n","import { useEffect, useState } from \"react\";\r\n\r\nexport default function useEnvironment() {\r\n const [isServerSideRendering, setIsServerSideRendering] = useState(true);\r\n useEffect(() => {\r\n setIsServerSideRendering(false);\r\n }, []);\r\n\r\n return { isServerSideRendering };\r\n}\r\n","import { createUseStyles } from \"react-jss\";\n\nconst DARK_BG = \"#1e1e1e\";\n\ninterface CustomStylingProps {\n buttonBgColor?: string;\n paragraphColor?: string;\n}\n\nconst themeIsLight = (theme: string) => theme === \"light\";\n\nexport const formatProps = (theme: string): CustomStylingProps => ({\n buttonBgColor: themeIsLight(theme) ? \"white\" : DARK_BG,\n paragraphColor: themeIsLight(theme) ? \"black\" : \"white\",\n});\n\nexport const useStyles = createUseStyles({\n \"@global\": {\n \"@import\":\n \"url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap')\",\n },\n crossmintButton: {\n display: \"flex\",\n \"flex-direction\": \"row\",\n \"align-items\": \"center\",\n padding: \"0.875rem 0.875rem\",\n \"font-weight\": \"900\",\n transition: \"opacity ease-in-out 0.25s\",\n \"border-radius\": \"0.5rem\",\n \"font-family\": `\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif`,\n outline: \"none\",\n border: \"none\",\n \"box-shadow\": \"0px 8px 15px rgba(0, 0, 0, 0.1)\",\n \"justify-content\": \"center\",\n background: ({ buttonBgColor }: CustomStylingProps) => buttonBgColor,\n\n \"&:hover:enabled\": {\n opacity: \"0.6\",\n cursor: \"pointer\",\n },\n },\n crossmintImg: {\n width: \"21px\",\n height: \"21px\",\n \"margin-right\": \"0.875rem\",\n },\n crossmintParagraph: {\n color: ({ paragraphColor }: CustomStylingProps) => paragraphColor,\n margin: \"0\",\n },\n});\n"],"mappings":"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","names":["src_exports","__export","CrossmintNFTCollectionView","CrossmintNFTDetail","CrossmintPayButton","CrossmintPaymentElement","__toCommonJS","import_client_sdk_base","LIB_VERSION","import_jsx_runtime","CrossmintNFTCollectionView","props","src","LIB_VERSION","import_client_sdk_base","import_jsx_runtime","CrossmintNFTDetail","props","src","LIB_VERSION","import_client_sdk_base","import_client_sdk_base","import_bs58","import_react","import_client_sdk_base","import_react","import_client_sdk_base","import_jsx_runtime","CrossmintEmbeddedCheckoutIFrame","_a","_b","onInternalEvent","props","__objRest","getUrl","listenToEvents","listenToInternalEvents","emitInternalEvent","height","setHeight","url","clearListener","event","type","payload","import_jsx_runtime","CryptoEmbeddedCheckoutIFrame","props","emitInternalEvent","signer","paymentMethod","onInternalEvent","event","type","payload","serializedTransaction","handleIncomingTransaction","__async","txId","handleSOLTransaction","handleETHTransaction","e","Transaction","transaction","bs58","parseTransaction","CrossmintEmbeddedCheckoutIFrame","__spreadValues","import_jsx_runtime","CrossmintCryptoEmbeddedCheckout","props","CryptoEmbeddedCheckoutIFrame","__spreadValues","import_react","import_client_sdk_base","import_jsx_runtime","CrossmintFiatPaymentElement_OLD","props","height","setHeight","getIframeUrl","listenToEvents","emitQueryParams","listenToUiEvents","url","clearListener","event","_a","type","payload","import_jsx_runtime","CrossmintPaymentElement","props","CrossmintFiatPaymentElement_OLD","__spreadValues","CrossmintCryptoEmbeddedCheckout","import_react","import_client_sdk_base","import_react","useEnvironment","isServerSideRendering","setIsServerSideRendering","import_react_jss","DARK_BG","themeIsLight","theme","formatProps","useStyles","buttonBgColor","paragraphColor","import_jsx_runtime","CrossmintPayButton","buttonProps","_a","className","disabled","onClick","style","tabIndex","theme","mintTo","emailTo","listingId","auctionId","showOverlay","mintConfig","whPassThroughArgs","environment","paymentMethod","preferredSigninMethod","dismissOverlayOnClick","prepay","locale","currency","successCallbackURL","failureCallbackURL","loginEmail","projectId","getButtonText","checkoutProps","props","__objRest","collectionId","connecting","setConnecting","isServerSideRendering","useEnvironment","connect","LIB_VERSION","getButtonTextInternal","handleClick","_handleClick","event","classes","useStyles","formatProps","content","__spreadValues","import_client_sdk_base"]}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var mt=Object.defineProperty;var y=Object.getOwnPropertySymbols;var B=Object.prototype.hasOwnProperty,R=Object.prototype.propertyIsEnumerable;var L=(t,e,n)=>e in t?mt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,u=(t,e)=>{for(var n in e||(e={}))B.call(e,n)&&L(t,n,e[n]);if(y)for(var n of y(e))R.call(e,n)&&L(t,n,e[n]);return t};var E=(t,e)=>{var n={};for(var i in t)B.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&y)for(var i of y(t))e.indexOf(i)<0&&R.call(t,i)&&(n[i]=t[i]);return n};var b=(t,e,n)=>new Promise((i,m)=>{var d=o=>{try{c(n.next(o))}catch(r){m(r)}},l=o=>{try{c(n.throw(o))}catch(r){m(r)}},c=o=>o.done?i(o.value):Promise.resolve(o.value).then(d,l);c((n=n.apply(t,e)).next())});import{assertValidNFTCollectionViewProps as ct,getNFTCollectionViewSrc as dt}from"@crossmint/client-sdk-base";var h="1.1.0-alpha.1";import{jsx as lt}from"react/jsx-runtime";function qt(t){ct(t);let e=dt(t,h);return lt("iframe",{src:e,width:"100%",height:"100%",style:{flexGrow:"1",border:"none",margin:"0",padding:"0"},role:"nft-collection-view"})}import{assertValidValidateNFTDetailProps as ut,getNFTDetailSrc as pt}from"@crossmint/client-sdk-base";import{jsx as gt}from"react/jsx-runtime";function jt(t){ut(t);let e=pt(t,h);return gt("iframe",{src:e,width:"100%",height:"100%",style:{flexGrow:"1",border:"none",margin:"0",padding:"0"},role:"nft-details"})}import{isCryptoEmbeddedCheckoutProps as Nt,isFiatEmbeddedCheckoutProps as Ft}from"@crossmint/client-sdk-base";import{isCryptoEmbeddedCheckoutPropsWithSigner as Tt}from"@crossmint/client-sdk-base";import yt from"bs58";import{useEffect as Et}from"react";import{IncomingInternalEvents as bt,OutgoingInternalEvents as U,crossmintIFrameService as Pt,embeddedCheckoutPropsToUpdatableParamsPayload as It}from"@crossmint/client-sdk-base";import{useEffect as _,useState as M}from"react";import{IncomingInternalEvents as ht,crossmintIFrameService as Ct}from"@crossmint/client-sdk-base";import{jsx as ft}from"react/jsx-runtime";function v(n){var i=n,{onInternalEvent:t}=i,e=E(i,["onInternalEvent"]);let{getUrl:m,listenToEvents:d,listenToInternalEvents:l,emitInternalEvent:c}=Ct(e),[o,r]=M(0),[a]=M(m(e));return _(()=>{let s=d(p=>{var g;(g=e.onEvent)==null||g.call(e,p.data)});return()=>{s()}},[]),_(()=>{let s=l(p=>{let{type:g,payload:P}=p.data;g===ht.UI_HEIGHT_CHANGED&&r(P.height),t==null||t(p.data)});return()=>{s()}},[]),ft("iframe",{src:a,id:"crossmint-embedded-checkout.iframe",role:"crossmint-embedded-checkout.iframe",allow:"payment *",style:{border:"none !important",padding:"0px !important",width:"100% !important",minWidth:"100% !important",overflow:"hidden !important",display:"block !important",userSelect:"none",transform:"translate(0px) !important",opacity:"1",transition:"ease 0s, opacity 0.4s ease 0.1s",height:`${o}px`}})}import{jsx as St}from"react/jsx-runtime";function k(t){let{emitInternalEvent:e}=Pt(t),{signer:n,paymentMethod:i}=t;function m(o){let{type:r,payload:a}=o;if(r===bt.CRYPTO_PAYMENT_INCOMING_TRANSACTION){let{serializedTransaction:s}=a;console.log("[Crossmint] Received incoming transaction",s),d(s)}}function d(o){return b(this,null,function*(){try{let r;switch(i){case"SOL":r=yield l(n,o);break;case"ETH":r=yield c(n,o);break;default:throw new Error(`Unsupported payment method ${i}`)}console.log("[Crossmint] Signed and sent transaction",r),e({type:U.CRYPTO_PAYMENT_USER_ACCEPTED,payload:{txId:r}})}catch(r){console.error("[Crossmint] Failed to sign and send transaction",r),e({type:U.CRYPTO_PAYMENT_USER_REJECTED,payload:{}})}})}function l(o,r){return b(this,null,function*(){let{Transaction:a}=yield import("@solana/web3.js"),s=a.from(yt.decode(r));return console.log("[Crossmint] Deserialized SOL transaction",s),yield o.signAndSendTransaction(s)})}function c(o,r){return b(this,null,function*(){let{parse:a}=yield import("@ethersproject/transactions"),s=a(r);return console.log("[Crossmint] Deserialized ETH transaction",s),yield o.signAndSendTransaction(s)})}return Et(()=>{e({type:"params-update",payload:It(t)})},[t.signer,t.recipient,t.mintConfig,t.locale,t.whPassThroughArgs]),St(v,u({onInternalEvent:m},t))}import{jsx as vt}from"react/jsx-runtime";function A(t){if(!Tt(t))throw new Error("Invalid parameters: signer is required in versions < 2.0.0");return vt(k,u({},t))}import{useEffect as w,useState as D}from"react";import{crossmintPaymentService_OLD as kt,crossmintUiService_OLD as wt}from"@crossmint/client-sdk-base";import{jsx as xt}from"react/jsx-runtime";function H(t){let[e,n]=D(0),{getIframeUrl:i,listenToEvents:m,emitQueryParams:d}=kt(t),{listenToEvents:l}=wt({environment:t.environment}),[c]=D(i());return w(()=>{let o=m(r=>{var a;return(a=t.onEvent)==null?void 0:a.call(t,r.data)});return()=>{o&&o()}},[]),w(()=>{let o=l(r=>{let{type:a,payload:s}=r.data;switch(a){case"ui:height.changed":n(s.height);break;default:return}});return()=>{o&&o()}},[]),w(()=>{d({recipient:t.recipient,mintConfig:t.mintConfig,locale:t.locale,whPassThroughArgs:t.whPassThroughArgs})},[t.recipient,t.mintConfig,t.locale,t.whPassThroughArgs]),xt("iframe",{src:c,id:"crossmint-embedded-checkout.iframe",role:"crossmint-embedded-checkout.iframe",allow:"payment *",style:{border:"none !important",padding:"0px !important",width:"100% !important",minWidth:"100% !important",overflow:"hidden !important",display:"block !important",userSelect:"none",transform:"translate(0px) !important",opacity:"1",transition:"ease 0s, opacity 0.4s ease 0.1s",height:`${e}px`}})}import{jsx as V}from"react/jsx-runtime";function Be(t){if(Ft(t))return V(H,u({},t));if(Nt(t))return V(A,u({},t));throw new Error("Unsupported: Fiat is the only supported payment method.")}import{useMemo as _t}from"react";import{useState as Mt}from"react";import{clientNames as Ut,crossmintModalService as At,crossmintPayButtonService as Dt}from"@crossmint/client-sdk-base";import{useEffect as Ot,useState as Lt}from"react";function x(){let[t,e]=Lt(!0);return Ot(()=>{e(!1)},[]),{isServerSideRendering:t}}import{createUseStyles as Bt}from"react-jss";var Rt="#1e1e1e",G=t=>t==="light",Y=t=>({buttonBgColor:G(t)?"white":Rt,paragraphColor:G(t)?"black":"white"}),W=Bt({"@global":{"@import":"url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap')"},crossmintButton:{display:"flex","flex-direction":"row","align-items":"center",padding:"0.875rem 0.875rem","font-weight":"900",transition:"opacity ease-in-out 0.25s","border-radius":"0.5rem","font-family":'"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif',outline:"none",border:"none","box-shadow":"0px 8px 15px rgba(0, 0, 0, 0.1)","justify-content":"center",background:({buttonBgColor:t})=>t,"&:hover:enabled":{opacity:"0.6",cursor:"pointer"}},crossmintImg:{width:"21px",height:"21px","margin-right":"0.875rem"},crossmintParagraph:{color:({paragraphColor:t})=>t,margin:"0"}});import{Fragment as Vt,jsx as N,jsxs as Ht}from"react/jsx-runtime";function Qe(t){let O=t,{className:e,disabled:n,onClick:i,style:m,tabIndex:d,theme:l="dark",mintTo:c,emailTo:o,listingId:r,auctionId:a,showOverlay:s=!0,mintConfig:p,whPassThroughArgs:g,environment:P,paymentMethod:C,preferredSigninMethod:$,dismissOverlayOnClick:z,prepay:q,locale:F="en-US",currency:J="usd",successCallbackURL:K="",failureCallbackURL:Q="",loginEmail:X="",projectId:Z,getButtonText:I}=O,S=E(O,["className","disabled","onClick","style","tabIndex","theme","mintTo","emailTo","listingId","auctionId","showOverlay","mintConfig","whPassThroughArgs","environment","paymentMethod","preferredSigninMethod","dismissOverlayOnClick","prepay","locale","currency","successCallbackURL","failureCallbackURL","loginEmail","projectId","getButtonText"]),j="clientId"in S?S.clientId:S.collectionId,[f,tt]=Mt(!1),{isServerSideRendering:et}=x(),{connect:nt}=At({clientId:j,projectId:Z,showOverlay:s,dismissOverlayOnClick:z,setConnecting:tt,libVersion:h,environment:P,clientName:Ut.reactUi,locale:F,currency:J,successCallbackURL:K,failureCallbackURL:Q,loginEmail:X}),{getButtonText:ot,handleClick:rt}=Dt({onClick:i,connecting:f,paymentMethod:C,locale:F}),it=at=>rt(at,()=>{nt(p,c,o,r,g,C,$,q)}),T=W(Y(l)),st=_t(()=>N("span",{className:T.crossmintParagraph,role:"button-paragraph",children:I!=null?I(f,C||"fiat"):ot(f)}),[f,I,C]);return N(Vt,{children:!et&&Ht("button",{className:`${T.crossmintButton} ${e||""}`,disabled:n,onClick:it,style:u({},m),tabIndex:d,children:[N("img",{className:T.crossmintImg,src:"https://www.crossmint.io/assets/crossmint/logo.svg",alt:"Crossmint logo"}),st]})})}import{CrossmintEvents as on,useCrossmintEvents as rn}from"@crossmint/client-sdk-base";export{on as CrossmintEvents,qt as CrossmintNFTCollectionView,jt as CrossmintNFTDetail,Qe as CrossmintPayButton,Be as CrossmintPaymentElement,rn as useCrossmintEvents};
1
+ var ct=Object.defineProperty;var y=Object.getOwnPropertySymbols;var R=Object.prototype.hasOwnProperty,_=Object.prototype.propertyIsEnumerable;var B=(t,e,n)=>e in t?ct(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,u=(t,e)=>{for(var n in e||(e={}))R.call(e,n)&&B(t,n,e[n]);if(y)for(var n of y(e))_.call(e,n)&&B(t,n,e[n]);return t};var E=(t,e)=>{var n={};for(var i in t)R.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&y)for(var i of y(t))e.indexOf(i)<0&&_.call(t,i)&&(n[i]=t[i]);return n};var b=(t,e,n)=>new Promise((i,m)=>{var d=o=>{try{c(n.next(o))}catch(r){m(r)}},l=o=>{try{c(n.throw(o))}catch(r){m(r)}},c=o=>o.done?i(o.value):Promise.resolve(o.value).then(d,l);c((n=n.apply(t,e)).next())});import{assertValidNFTCollectionViewProps as dt,getNFTCollectionViewSrc as lt}from"@crossmint/client-sdk-base";var g="1.1.0-alpha.2";import{jsx as ut}from"react/jsx-runtime";function Jt(t){dt(t);let e=lt(t,g);return ut("iframe",{src:e,width:"100%",height:"100%",style:{flexGrow:"1",border:"none",margin:"0",padding:"0"},role:"nft-collection-view"})}import{assertValidValidateNFTDetailProps as pt,getNFTDetailSrc as ht}from"@crossmint/client-sdk-base";import{jsx as gt}from"react/jsx-runtime";function te(t){pt(t);let e=ht(t,g);return gt("iframe",{src:e,width:"100%",height:"100%",style:{flexGrow:"1",border:"none",margin:"0",padding:"0"},role:"nft-details"})}import{isCryptoEmbeddedCheckoutProps as Ft,isFiatEmbeddedCheckoutProps as Ot}from"@crossmint/client-sdk-base";import{isCryptoEmbeddedCheckoutPropsWithSigner as Tt}from"@crossmint/client-sdk-base";import Et from"bs58";import{useEffect as bt}from"react";import{IncomingInternalEvents as Pt,OutgoingInternalEvents as A,crossmintIFrameService as St,embeddedCheckoutPropsToUpdatableParamsPayload as It}from"@crossmint/client-sdk-base";import{useEffect as M,useState as U}from"react";import{IncomingInternalEvents as Ct,crossmintIFrameService as ft}from"@crossmint/client-sdk-base";import{jsx as yt}from"react/jsx-runtime";function T(n){var i=n,{onInternalEvent:t}=i,e=E(i,["onInternalEvent"]);let{getUrl:m,listenToEvents:d,listenToInternalEvents:l,emitInternalEvent:c}=ft(e),[o,r]=U(0),[a]=U(m(e));return M(()=>{let s=d(p=>{var h;(h=e.onEvent)==null||h.call(e,p.data)});return()=>{s()}},[]),M(()=>{let s=l(p=>{let{type:h,payload:P}=p.data;h===Ct.UI_HEIGHT_CHANGED&&r(P.height),t==null||t(p.data)});return()=>{s()}},[]),yt("iframe",{src:a,id:"crossmint-embedded-checkout.iframe",role:"crossmint-embedded-checkout.iframe",allow:"payment *",style:{border:"none !important",padding:"0px !important",width:"100% !important",minWidth:"100% !important",overflow:"hidden !important",display:"block !important",userSelect:"none",transform:"translate(0px) !important",opacity:"1",transition:"ease 0s, opacity 0.4s ease 0.1s",height:`${o}px`}})}import{jsx as kt}from"react/jsx-runtime";function v(t){let{emitInternalEvent:e}=St(t),{signer:n,paymentMethod:i}=t;function m(o){let{type:r,payload:a}=o;if(r===Pt.CRYPTO_PAYMENT_INCOMING_TRANSACTION){let{serializedTransaction:s}=a;console.log("[Crossmint] Received incoming transaction",s),d(s)}}function d(o){return b(this,null,function*(){try{let r;switch(i){case"SOL":r=yield l(n,o);break;case"ETH":r=yield c(n,o);break;default:throw new Error(`Unsupported payment method ${i}`)}console.log("[Crossmint] Signed and sent transaction",r),e({type:A.CRYPTO_PAYMENT_USER_ACCEPTED,payload:{txId:r}})}catch(r){console.error("[Crossmint] Failed to sign and send transaction",r),e({type:A.CRYPTO_PAYMENT_USER_REJECTED,payload:{}})}})}function l(o,r){return b(this,null,function*(){let{Transaction:a}=yield import("@solana/web3.js"),s=a.from(Et.decode(r));return console.log("[Crossmint] Deserialized SOL transaction",s),yield o.signAndSendTransaction(s)})}function c(o,r){return b(this,null,function*(){let{parse:a}=yield import("@ethersproject/transactions"),s=a(r);return console.log("[Crossmint] Deserialized ETH transaction",s),yield o.signAndSendTransaction(s)})}return bt(()=>{e({type:"params-update",payload:It(t)})},[t.signer,t.recipient,t.mintConfig,t.locale,t.whPassThroughArgs]),kt(T,u({onInternalEvent:m},t))}import{jsx as vt}from"react/jsx-runtime";function D(t){if(!Tt(t))throw new Error("Invalid parameters: signer is required in versions < 2.0.0");return vt(v,u({},t))}import{useEffect as w,useState as H}from"react";import{crossmintPaymentService_OLD as wt,crossmintUiService_OLD as xt}from"@crossmint/client-sdk-base";import{jsx as Nt}from"react/jsx-runtime";function V(t){let[e,n]=H(0),{getIframeUrl:i,listenToEvents:m,emitQueryParams:d}=wt(t),{listenToEvents:l}=xt({environment:t.environment}),[c]=H(i());return w(()=>{let o=m(r=>{var a;return(a=t.onEvent)==null?void 0:a.call(t,r.data)});return()=>{o&&o()}},[]),w(()=>{let o=l(r=>{let{type:a,payload:s}=r.data;switch(a){case"ui:height.changed":n(s.height);break;default:return}});return()=>{o&&o()}},[]),w(()=>{d({recipient:t.recipient,mintConfig:t.mintConfig,locale:t.locale,whPassThroughArgs:t.whPassThroughArgs})},[t.recipient,t.mintConfig,t.locale,t.whPassThroughArgs]),Nt("iframe",{src:c,id:"crossmint-embedded-checkout.iframe",role:"crossmint-embedded-checkout.iframe",allow:"payment *",style:{border:"none !important",padding:"0px !important",width:"100% !important",minWidth:"100% !important",overflow:"hidden !important",display:"block !important",userSelect:"none",transform:"translate(0px) !important",opacity:"1",transition:"ease 0s, opacity 0.4s ease 0.1s",height:`${e}px`}})}import{jsx as G}from"react/jsx-runtime";function Re(t){if(Ot(t))return G(V,u({},t));if(Ft(t))return G(D,u({},t));throw new Error("Unsupported: Fiat is the only supported payment method.")}import{useMemo as Mt}from"react";import{useState as Ut}from"react";import{clientNames as At,crossmintModalService as Dt,crossmintPayButtonService as Ht}from"@crossmint/client-sdk-base";import{useEffect as Lt,useState as Bt}from"react";function x(){let[t,e]=Bt(!0);return Lt(()=>{e(!1)},[]),{isServerSideRendering:t}}import{createUseStyles as Rt}from"react-jss";var _t="#1e1e1e",Y=t=>t==="light",W=t=>({buttonBgColor:Y(t)?"white":_t,paragraphColor:Y(t)?"black":"white"}),$=Rt({"@global":{"@import":"url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap')"},crossmintButton:{display:"flex","flex-direction":"row","align-items":"center",padding:"0.875rem 0.875rem","font-weight":"900",transition:"opacity ease-in-out 0.25s","border-radius":"0.5rem","font-family":'"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif',outline:"none",border:"none","box-shadow":"0px 8px 15px rgba(0, 0, 0, 0.1)","justify-content":"center",background:({buttonBgColor:t})=>t,"&:hover:enabled":{opacity:"0.6",cursor:"pointer"}},crossmintImg:{width:"21px",height:"21px","margin-right":"0.875rem"},crossmintParagraph:{color:({paragraphColor:t})=>t,margin:"0"}});import{Fragment as Gt,jsx as N,jsxs as Vt}from"react/jsx-runtime";function Ze(t){let L=t,{className:e,disabled:n,onClick:i,style:m,tabIndex:d,theme:l="dark",mintTo:c,emailTo:o,listingId:r,auctionId:a,showOverlay:s=!0,mintConfig:p,whPassThroughArgs:h,environment:P,paymentMethod:C,preferredSigninMethod:z,dismissOverlayOnClick:q,prepay:J,locale:F="en-US",currency:K="usd",successCallbackURL:Q="",failureCallbackURL:X="",loginEmail:Z="",projectId:j,getButtonText:S,checkoutProps:O={experimental:!1,display:"same-tab",paymentMethods:["fiat","ETH","SOL"]}}=L,I=E(L,["className","disabled","onClick","style","tabIndex","theme","mintTo","emailTo","listingId","auctionId","showOverlay","mintConfig","whPassThroughArgs","environment","paymentMethod","preferredSigninMethod","dismissOverlayOnClick","prepay","locale","currency","successCallbackURL","failureCallbackURL","loginEmail","projectId","getButtonText","checkoutProps"]),tt="clientId"in I?I.clientId:I.collectionId,[f,et]=Ut(!1),{isServerSideRendering:nt}=x(),{connect:ot}=Dt({clientId:tt,projectId:j,showOverlay:s,dismissOverlayOnClick:q,setConnecting:et,libVersion:g,environment:P,clientName:At.reactUi,locale:F,currency:K,successCallbackURL:Q,failureCallbackURL:X,loginEmail:Z}),{getButtonText:rt,handleClick:it}=Ht({onClick:i,connecting:f,paymentMethod:C,locale:F,checkoutProps:O}),st=mt=>it(mt,()=>{ot(p,c,o,r,h,C,z,J,O)}),k=$(W(l)),at=Mt(()=>N("span",{className:k.crossmintParagraph,role:"button-paragraph",children:S!=null?S(f,C||"fiat"):rt(f)}),[f,S,C]);return N(Gt,{children:!nt&&Vt("button",{className:`${k.crossmintButton} ${e||""}`,disabled:n,onClick:st,style:u({},m),tabIndex:d,children:[N("img",{className:k.crossmintImg,src:"https://www.crossmint.io/assets/crossmint/logo.svg",alt:"Crossmint logo"}),at]})})}import{CrossmintEvents as sn,useCrossmintEvents as an}from"@crossmint/client-sdk-base";export{sn as CrossmintEvents,Jt as CrossmintNFTCollectionView,te as CrossmintNFTDetail,Ze as CrossmintPayButton,Re as CrossmintPaymentElement,an as useCrossmintEvents};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/CrossmintNFTCollectionView.tsx","../src/consts/version.ts","../src/components/CrossmintNFTDetail.tsx","../src/components/embed/index.tsx","../src/components/embed/crypto/CryptoEmbeddedCheckout.tsx","../src/components/embed/crypto/CryptoEmbeddedCheckoutIFrame.tsx","../src/components/embed/EmbeddedCheckoutIFrame.tsx","../src/components/embed/fiat/FiatPaymentElement_OLD.tsx","../src/components/hosted/CrossmintPayButton.tsx","../src/hooks/useEnvironment.ts","../src/components/hosted/styles.ts","../src/index.ts"],"sourcesContent":["import {\n NFTCollectionViewProps,\n assertValidNFTCollectionViewProps,\n getNFTCollectionViewSrc,\n} from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../consts/version\";\n\nexport function CrossmintNFTCollectionView(props: NFTCollectionViewProps) {\n assertValidNFTCollectionViewProps(props);\n\n const src = getNFTCollectionViewSrc(props, LIB_VERSION);\n\n return (\n <iframe\n src={src}\n width=\"100%\"\n height=\"100%\"\n style={{\n flexGrow: \"1\",\n border: \"none\",\n margin: \"0\",\n padding: \"0\",\n }}\n role=\"nft-collection-view\"\n />\n );\n}\n","export const LIB_VERSION = \"1.1.0-alpha.1\";\n","import { NFTDetailProps, assertValidValidateNFTDetailProps, getNFTDetailSrc } from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../consts/version\";\n\nexport function CrossmintNFTDetail(props: NFTDetailProps) {\n assertValidValidateNFTDetailProps(props);\n\n const src = getNFTDetailSrc(props, LIB_VERSION);\n\n return (\n <iframe\n src={src}\n width=\"100%\"\n height=\"100%\"\n style={{\n flexGrow: \"1\",\n border: \"none\",\n margin: \"0\",\n padding: \"0\",\n }}\n role=\"nft-details\"\n />\n );\n}\n","import {\n CrossmintEmbeddedCheckoutProps,\n isCryptoEmbeddedCheckoutProps,\n isFiatEmbeddedCheckoutProps,\n} from \"@crossmint/client-sdk-base\";\n\nimport { CrossmintCryptoEmbeddedCheckout } from \"./crypto/CryptoEmbeddedCheckout\";\nimport { CrossmintFiatPaymentElement_OLD } from \"./fiat/FiatPaymentElement_OLD\";\n\n// TODO: Rename to CrossmintEmbeddedCheckout\nexport function CrossmintPaymentElement(props: CrossmintEmbeddedCheckoutProps) {\n if (isFiatEmbeddedCheckoutProps(props)) {\n return <CrossmintFiatPaymentElement_OLD {...props} />;\n }\n if (isCryptoEmbeddedCheckoutProps(props)) {\n return <CrossmintCryptoEmbeddedCheckout {...props} />;\n }\n throw new Error(\"Unsupported: Fiat is the only supported payment method.\");\n}\n","import { CryptoEmbeddedCheckoutProps, isCryptoEmbeddedCheckoutPropsWithSigner } from \"@crossmint/client-sdk-base\";\n\nimport CryptoEmbeddedCheckoutIFrame from \"./CryptoEmbeddedCheckoutIFrame\";\n\nexport function CrossmintCryptoEmbeddedCheckout(props: CryptoEmbeddedCheckoutProps) {\n if (!isCryptoEmbeddedCheckoutPropsWithSigner(props)) {\n throw new Error(\"Invalid parameters: signer is required in versions < 2.0.0\");\n }\n\n return <CryptoEmbeddedCheckoutIFrame {...props} />;\n}\n","import bs58 from \"bs58\";\nimport { useEffect } from \"react\";\n\nimport {\n CryptoEmbeddedCheckoutPropsWithSigner,\n ETHEmbeddedCheckoutSigner,\n IncomingInternalEvent,\n IncomingInternalEvents,\n OutgoingInternalEvents,\n SOLEmbeddedCheckoutSigner,\n crossmintIFrameService,\n embeddedCheckoutPropsToUpdatableParamsPayload,\n} from \"@crossmint/client-sdk-base\";\n\nimport CrossmintEmbeddedCheckoutIFrame from \"../EmbeddedCheckoutIFrame\";\n\nexport default function CryptoEmbeddedCheckoutIFrame(props: CryptoEmbeddedCheckoutPropsWithSigner) {\n const { emitInternalEvent } = crossmintIFrameService(props);\n\n const { signer, paymentMethod } = props;\n\n function onInternalEvent(event: IncomingInternalEvent) {\n const { type, payload } = event;\n\n if (type === IncomingInternalEvents.CRYPTO_PAYMENT_INCOMING_TRANSACTION) {\n const { serializedTransaction } = payload;\n console.log(\"[Crossmint] Received incoming transaction\", serializedTransaction);\n handleIncomingTransaction(serializedTransaction);\n }\n }\n\n async function handleIncomingTransaction(serializedTransaction: string) {\n try {\n let txId: string;\n switch (paymentMethod) {\n case \"SOL\":\n txId = await handleSOLTransaction(signer, serializedTransaction);\n break;\n case \"ETH\":\n txId = await handleETHTransaction(signer, serializedTransaction);\n break;\n default:\n throw new Error(`Unsupported payment method ${paymentMethod}`);\n }\n\n console.log(\"[Crossmint] Signed and sent transaction\", txId);\n emitInternalEvent({\n type: OutgoingInternalEvents.CRYPTO_PAYMENT_USER_ACCEPTED,\n payload: {\n txId,\n },\n });\n } catch (e) {\n console.error(\"[Crossmint] Failed to sign and send transaction\", e);\n emitInternalEvent({\n type: OutgoingInternalEvents.CRYPTO_PAYMENT_USER_REJECTED,\n payload: {},\n });\n }\n }\n\n async function handleSOLTransaction(signer: SOLEmbeddedCheckoutSigner, serializedTransaction: string) {\n // @ts-ignore - Error becasue we dont use 'module' field in tsconfig, which is expected because we use tsup to compile\n const { Transaction } = await import(\"@solana/web3.js\");\n const transaction = Transaction.from(bs58.decode(serializedTransaction));\n console.log(\"[Crossmint] Deserialized SOL transaction\", transaction);\n\n return await signer.signAndSendTransaction(transaction);\n }\n\n async function handleETHTransaction(signer: ETHEmbeddedCheckoutSigner, serializedTransaction: string) {\n // @ts-ignore - Error becasue we dont use 'module' field in tsconfig, which is expected because we use tsup to compile\n const { parse: parseTransaction } = await import(\"@ethersproject/transactions\");\n const transaction = parseTransaction(serializedTransaction);\n console.log(\"[Crossmint] Deserialized ETH transaction\", transaction);\n\n return await signer.signAndSendTransaction(transaction);\n }\n\n useEffect(() => {\n emitInternalEvent({\n type: \"params-update\",\n payload: embeddedCheckoutPropsToUpdatableParamsPayload(props),\n });\n }, [props.signer, props.recipient, props.mintConfig, props.locale, props.whPassThroughArgs]);\n\n return <CrossmintEmbeddedCheckoutIFrame onInternalEvent={onInternalEvent} {...props} />;\n}\n","import { useEffect, useState } from \"react\";\n\nimport { IncomingInternalEvent, IncomingInternalEvents, crossmintIFrameService } from \"@crossmint/client-sdk-base\";\nimport { CrossmintEmbeddedCheckoutProps } from \"@crossmint/client-sdk-base\";\n\ntype CrossmintEmbeddedCheckoutIFrameProps = CrossmintEmbeddedCheckoutProps & {\n onInternalEvent?: (event: IncomingInternalEvent) => void;\n};\n\nexport default function CrossmintEmbeddedCheckoutIFrame({\n onInternalEvent,\n ...props\n}: CrossmintEmbeddedCheckoutIFrameProps) {\n const { getUrl, listenToEvents, listenToInternalEvents, emitInternalEvent } = crossmintIFrameService(props);\n\n const [height, setHeight] = useState(0);\n const [url] = useState(getUrl(props));\n\n // Public events\n useEffect(() => {\n const clearListener = listenToEvents((event) => {\n props.onEvent?.(event.data);\n });\n\n return () => {\n clearListener();\n };\n }, []);\n\n // Internal events\n useEffect(() => {\n const clearListener = listenToInternalEvents((event) => {\n const { type, payload } = event.data;\n\n if (type === IncomingInternalEvents.UI_HEIGHT_CHANGED) {\n setHeight(payload.height);\n }\n\n onInternalEvent?.(event.data);\n });\n\n return () => {\n clearListener();\n };\n }, []);\n\n // TODO: Emit updatable parameters\n\n return (\n <iframe\n src={url}\n id=\"crossmint-embedded-checkout.iframe\"\n role=\"crossmint-embedded-checkout.iframe\"\n allow=\"payment *\"\n style={{\n border: \"none !important\",\n padding: \"0px !important\",\n width: \"100% !important\",\n minWidth: \"100% !important\",\n overflow: \"hidden !important\",\n display: \"block !important\",\n userSelect: \"none\",\n transform: \"translate(0px) !important\",\n opacity: \"1\",\n transition: \"ease 0s, opacity 0.4s ease 0.1s\",\n height: `${height}px`,\n }}\n />\n );\n}\n","import { useEffect, useState } from \"react\";\n\nimport type { FiatEmbeddedCheckoutProps } from \"@crossmint/client-sdk-base\";\nimport { crossmintPaymentService_OLD, crossmintUiService_OLD } from \"@crossmint/client-sdk-base\";\n\nexport function CrossmintFiatPaymentElement_OLD(props: FiatEmbeddedCheckoutProps) {\n const [height, setHeight] = useState(0);\n const { getIframeUrl, listenToEvents, emitQueryParams } = crossmintPaymentService_OLD(props);\n const { listenToEvents: listenToUiEvents } = crossmintUiService_OLD({ environment: props.environment });\n const [url] = useState(getIframeUrl());\n\n useEffect(() => {\n const clearListener = listenToEvents((event) => props.onEvent?.(event.data));\n\n return () => {\n if (clearListener) {\n clearListener();\n }\n };\n }, []);\n\n useEffect(() => {\n const clearListener = listenToUiEvents((event: MessageEvent<any>) => {\n const { type, payload } = event.data;\n\n switch (type) {\n case \"ui:height.changed\":\n setHeight(payload.height);\n break;\n default:\n return;\n }\n });\n\n return () => {\n if (clearListener) {\n clearListener();\n }\n };\n }, []);\n\n useEffect(() => {\n emitQueryParams({\n recipient: props.recipient,\n mintConfig: props.mintConfig,\n locale: props.locale,\n whPassThroughArgs: props.whPassThroughArgs,\n });\n }, [props.recipient, props.mintConfig, props.locale, props.whPassThroughArgs]);\n\n return (\n <iframe\n src={url}\n id=\"crossmint-embedded-checkout.iframe\"\n role=\"crossmint-embedded-checkout.iframe\"\n allow=\"payment *\"\n style={{\n border: \"none !important\",\n padding: \"0px !important\",\n width: \"100% !important\",\n minWidth: \"100% !important\",\n overflow: \"hidden !important\",\n display: \"block !important\",\n userSelect: \"none\",\n transform: \"translate(0px) !important\",\n opacity: \"1\",\n transition: \"ease 0s, opacity 0.4s ease 0.1s\",\n height: `${height}px`,\n }}\n ></iframe>\n );\n}\n","import { CSSProperties, MouseEvent, useMemo } from \"react\";\nimport { useState } from \"react\";\n\nimport {\n CrossmintPayButtonProps,\n clientNames,\n crossmintModalService,\n crossmintPayButtonService,\n} from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../../consts/version\";\nimport useEnvironment from \"../../hooks/useEnvironment\";\nimport { formatProps, useStyles } from \"./styles\";\n\nexport type CrossmintPayButtonReactProps = CrossmintPayButtonProps & {\n onClick?: (e: MouseEvent<HTMLButtonElement>) => void;\n style?: CSSProperties;\n};\n\nexport function CrossmintPayButton(buttonProps: CrossmintPayButtonReactProps) {\n const {\n className,\n disabled,\n onClick,\n style,\n tabIndex,\n theme = \"dark\",\n mintTo,\n emailTo,\n listingId,\n auctionId,\n showOverlay = true,\n mintConfig,\n whPassThroughArgs,\n environment,\n paymentMethod,\n preferredSigninMethod,\n dismissOverlayOnClick,\n prepay,\n locale = \"en-US\",\n currency = \"usd\",\n successCallbackURL = \"\",\n failureCallbackURL = \"\",\n loginEmail = \"\",\n projectId,\n getButtonText,\n ...props\n } = buttonProps;\n\n const collectionId = \"clientId\" in props ? props.clientId : props.collectionId;\n\n const [connecting, setConnecting] = useState(false);\n const { isServerSideRendering } = useEnvironment();\n\n const { connect } = crossmintModalService({\n clientId: collectionId,\n projectId,\n showOverlay,\n dismissOverlayOnClick,\n setConnecting,\n libVersion: LIB_VERSION,\n environment,\n clientName: clientNames.reactUi,\n locale,\n currency,\n successCallbackURL,\n failureCallbackURL,\n loginEmail,\n });\n\n const { getButtonText: getButtonTextInternal, handleClick } = crossmintPayButtonService({\n onClick,\n connecting,\n paymentMethod,\n locale,\n });\n\n const _handleClick = (event: MouseEvent<HTMLButtonElement>) =>\n handleClick(event, () => {\n connect(\n mintConfig,\n mintTo,\n emailTo,\n listingId,\n whPassThroughArgs,\n paymentMethod,\n preferredSigninMethod,\n prepay\n );\n });\n\n const classes = useStyles(formatProps(theme));\n\n const content = useMemo(() => {\n return (\n <span className={classes.crossmintParagraph} role=\"button-paragraph\">\n {getButtonText != null\n ? getButtonText(connecting, paymentMethod || \"fiat\")\n : getButtonTextInternal(connecting)}\n </span>\n );\n }, [connecting, getButtonText, paymentMethod]);\n\n return (\n <>\n {!isServerSideRendering && (\n <button\n className={`${classes.crossmintButton} ${className || \"\"}`}\n disabled={disabled}\n onClick={_handleClick}\n style={{ ...style }}\n tabIndex={tabIndex}\n >\n <img\n className={classes.crossmintImg}\n src=\"https://www.crossmint.io/assets/crossmint/logo.svg\"\n alt=\"Crossmint logo\"\n />\n {content}\n </button>\n )}\n </>\n );\n}\n","import { useEffect, useState } from \"react\";\r\n\r\nexport default function useEnvironment() {\r\n const [isServerSideRendering, setIsServerSideRendering] = useState(true);\r\n useEffect(() => {\r\n setIsServerSideRendering(false);\r\n }, []);\r\n\r\n return { isServerSideRendering };\r\n}\r\n","import { createUseStyles } from \"react-jss\";\n\nconst DARK_BG = \"#1e1e1e\";\n\ninterface CustomStylingProps {\n buttonBgColor?: string;\n paragraphColor?: string;\n}\n\nconst themeIsLight = (theme: string) => theme === \"light\";\n\nexport const formatProps = (theme: string): CustomStylingProps => ({\n buttonBgColor: themeIsLight(theme) ? \"white\" : DARK_BG,\n paragraphColor: themeIsLight(theme) ? \"black\" : \"white\",\n});\n\nexport const useStyles = createUseStyles({\n \"@global\": {\n \"@import\":\n \"url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap')\",\n },\n crossmintButton: {\n display: \"flex\",\n \"flex-direction\": \"row\",\n \"align-items\": \"center\",\n padding: \"0.875rem 0.875rem\",\n \"font-weight\": \"900\",\n transition: \"opacity ease-in-out 0.25s\",\n \"border-radius\": \"0.5rem\",\n \"font-family\": `\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif`,\n outline: \"none\",\n border: \"none\",\n \"box-shadow\": \"0px 8px 15px rgba(0, 0, 0, 0.1)\",\n \"justify-content\": \"center\",\n background: ({ buttonBgColor }: CustomStylingProps) => buttonBgColor,\n\n \"&:hover:enabled\": {\n opacity: \"0.6\",\n cursor: \"pointer\",\n },\n },\n crossmintImg: {\n width: \"21px\",\n height: \"21px\",\n \"margin-right\": \"0.875rem\",\n },\n crossmintParagraph: {\n color: ({ paragraphColor }: CustomStylingProps) => paragraphColor,\n margin: \"0\",\n },\n});\n","export * from \"./components\";\n\nexport { CrossmintEvents, useCrossmintEvents } from \"@crossmint/client-sdk-base\";\nexport type { CrossmintEvent, CrossmintEventMap } from \"@crossmint/client-sdk-base\";\n"],"mappings":"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","names":["assertValidNFTCollectionViewProps","getNFTCollectionViewSrc","LIB_VERSION","jsx","CrossmintNFTCollectionView","props","assertValidNFTCollectionViewProps","src","getNFTCollectionViewSrc","LIB_VERSION","assertValidValidateNFTDetailProps","getNFTDetailSrc","jsx","CrossmintNFTDetail","props","assertValidValidateNFTDetailProps","src","getNFTDetailSrc","LIB_VERSION","isCryptoEmbeddedCheckoutProps","isFiatEmbeddedCheckoutProps","isCryptoEmbeddedCheckoutPropsWithSigner","bs58","useEffect","IncomingInternalEvents","OutgoingInternalEvents","crossmintIFrameService","embeddedCheckoutPropsToUpdatableParamsPayload","useEffect","useState","IncomingInternalEvents","crossmintIFrameService","jsx","CrossmintEmbeddedCheckoutIFrame","_a","_b","onInternalEvent","props","__objRest","getUrl","listenToEvents","listenToInternalEvents","emitInternalEvent","crossmintIFrameService","height","setHeight","useState","url","useEffect","clearListener","event","type","payload","IncomingInternalEvents","jsx","CryptoEmbeddedCheckoutIFrame","props","emitInternalEvent","crossmintIFrameService","signer","paymentMethod","onInternalEvent","event","type","payload","IncomingInternalEvents","serializedTransaction","handleIncomingTransaction","__async","txId","handleSOLTransaction","handleETHTransaction","OutgoingInternalEvents","e","Transaction","transaction","bs58","parseTransaction","useEffect","embeddedCheckoutPropsToUpdatableParamsPayload","CrossmintEmbeddedCheckoutIFrame","__spreadValues","jsx","CrossmintCryptoEmbeddedCheckout","props","isCryptoEmbeddedCheckoutPropsWithSigner","CryptoEmbeddedCheckoutIFrame","__spreadValues","useEffect","useState","crossmintPaymentService_OLD","crossmintUiService_OLD","jsx","CrossmintFiatPaymentElement_OLD","props","height","setHeight","getIframeUrl","listenToEvents","emitQueryParams","listenToUiEvents","url","clearListener","event","_a","type","payload","jsx","CrossmintPaymentElement","props","isFiatEmbeddedCheckoutProps","CrossmintFiatPaymentElement_OLD","__spreadValues","isCryptoEmbeddedCheckoutProps","CrossmintCryptoEmbeddedCheckout","useMemo","useState","clientNames","crossmintModalService","crossmintPayButtonService","useEffect","useState","useEnvironment","isServerSideRendering","setIsServerSideRendering","createUseStyles","DARK_BG","themeIsLight","theme","formatProps","useStyles","buttonBgColor","paragraphColor","Fragment","jsx","jsxs","CrossmintPayButton","buttonProps","_a","className","disabled","onClick","style","tabIndex","theme","mintTo","emailTo","listingId","auctionId","showOverlay","mintConfig","whPassThroughArgs","environment","paymentMethod","preferredSigninMethod","dismissOverlayOnClick","prepay","locale","currency","successCallbackURL","failureCallbackURL","loginEmail","projectId","getButtonText","props","__objRest","collectionId","connecting","setConnecting","useState","isServerSideRendering","useEnvironment","connect","crossmintModalService","LIB_VERSION","clientNames","getButtonTextInternal","handleClick","crossmintPayButtonService","_handleClick","event","classes","useStyles","formatProps","content","useMemo","__spreadValues","CrossmintEvents","useCrossmintEvents"]}
1
+ {"version":3,"sources":["../src/components/CrossmintNFTCollectionView.tsx","../src/consts/version.ts","../src/components/CrossmintNFTDetail.tsx","../src/components/embed/index.tsx","../src/components/embed/crypto/CryptoEmbeddedCheckout.tsx","../src/components/embed/crypto/CryptoEmbeddedCheckoutIFrame.tsx","../src/components/embed/EmbeddedCheckoutIFrame.tsx","../src/components/embed/fiat/FiatPaymentElement_OLD.tsx","../src/components/hosted/CrossmintPayButton.tsx","../src/hooks/useEnvironment.ts","../src/components/hosted/styles.ts","../src/index.ts"],"sourcesContent":["import {\n NFTCollectionViewProps,\n assertValidNFTCollectionViewProps,\n getNFTCollectionViewSrc,\n} from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../consts/version\";\n\nexport function CrossmintNFTCollectionView(props: NFTCollectionViewProps) {\n assertValidNFTCollectionViewProps(props);\n\n const src = getNFTCollectionViewSrc(props, LIB_VERSION);\n\n return (\n <iframe\n src={src}\n width=\"100%\"\n height=\"100%\"\n style={{\n flexGrow: \"1\",\n border: \"none\",\n margin: \"0\",\n padding: \"0\",\n }}\n role=\"nft-collection-view\"\n />\n );\n}\n","export const LIB_VERSION = \"1.1.0-alpha.2\";\n","import { NFTDetailProps, assertValidValidateNFTDetailProps, getNFTDetailSrc } from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../consts/version\";\n\nexport function CrossmintNFTDetail(props: NFTDetailProps) {\n assertValidValidateNFTDetailProps(props);\n\n const src = getNFTDetailSrc(props, LIB_VERSION);\n\n return (\n <iframe\n src={src}\n width=\"100%\"\n height=\"100%\"\n style={{\n flexGrow: \"1\",\n border: \"none\",\n margin: \"0\",\n padding: \"0\",\n }}\n role=\"nft-details\"\n />\n );\n}\n","import {\n CrossmintEmbeddedCheckoutProps,\n isCryptoEmbeddedCheckoutProps,\n isFiatEmbeddedCheckoutProps,\n} from \"@crossmint/client-sdk-base\";\n\nimport { CrossmintCryptoEmbeddedCheckout } from \"./crypto/CryptoEmbeddedCheckout\";\nimport { CrossmintFiatPaymentElement_OLD } from \"./fiat/FiatPaymentElement_OLD\";\n\n// TODO: Rename to CrossmintEmbeddedCheckout\nexport function CrossmintPaymentElement(props: CrossmintEmbeddedCheckoutProps) {\n if (isFiatEmbeddedCheckoutProps(props)) {\n return <CrossmintFiatPaymentElement_OLD {...props} />;\n }\n if (isCryptoEmbeddedCheckoutProps(props)) {\n return <CrossmintCryptoEmbeddedCheckout {...props} />;\n }\n throw new Error(\"Unsupported: Fiat is the only supported payment method.\");\n}\n","import { CryptoEmbeddedCheckoutProps, isCryptoEmbeddedCheckoutPropsWithSigner } from \"@crossmint/client-sdk-base\";\n\nimport CryptoEmbeddedCheckoutIFrame from \"./CryptoEmbeddedCheckoutIFrame\";\n\nexport function CrossmintCryptoEmbeddedCheckout(props: CryptoEmbeddedCheckoutProps) {\n if (!isCryptoEmbeddedCheckoutPropsWithSigner(props)) {\n throw new Error(\"Invalid parameters: signer is required in versions < 2.0.0\");\n }\n\n return <CryptoEmbeddedCheckoutIFrame {...props} />;\n}\n","import bs58 from \"bs58\";\nimport { useEffect } from \"react\";\n\nimport {\n CryptoEmbeddedCheckoutPropsWithSigner,\n ETHEmbeddedCheckoutSigner,\n IncomingInternalEvent,\n IncomingInternalEvents,\n OutgoingInternalEvents,\n SOLEmbeddedCheckoutSigner,\n crossmintIFrameService,\n embeddedCheckoutPropsToUpdatableParamsPayload,\n} from \"@crossmint/client-sdk-base\";\n\nimport CrossmintEmbeddedCheckoutIFrame from \"../EmbeddedCheckoutIFrame\";\n\nexport default function CryptoEmbeddedCheckoutIFrame(props: CryptoEmbeddedCheckoutPropsWithSigner) {\n const { emitInternalEvent } = crossmintIFrameService(props);\n\n const { signer, paymentMethod } = props;\n\n function onInternalEvent(event: IncomingInternalEvent) {\n const { type, payload } = event;\n\n if (type === IncomingInternalEvents.CRYPTO_PAYMENT_INCOMING_TRANSACTION) {\n const { serializedTransaction } = payload;\n console.log(\"[Crossmint] Received incoming transaction\", serializedTransaction);\n handleIncomingTransaction(serializedTransaction);\n }\n }\n\n async function handleIncomingTransaction(serializedTransaction: string) {\n try {\n let txId: string;\n switch (paymentMethod) {\n case \"SOL\":\n txId = await handleSOLTransaction(signer, serializedTransaction);\n break;\n case \"ETH\":\n txId = await handleETHTransaction(signer, serializedTransaction);\n break;\n default:\n throw new Error(`Unsupported payment method ${paymentMethod}`);\n }\n\n console.log(\"[Crossmint] Signed and sent transaction\", txId);\n emitInternalEvent({\n type: OutgoingInternalEvents.CRYPTO_PAYMENT_USER_ACCEPTED,\n payload: {\n txId,\n },\n });\n } catch (e) {\n console.error(\"[Crossmint] Failed to sign and send transaction\", e);\n emitInternalEvent({\n type: OutgoingInternalEvents.CRYPTO_PAYMENT_USER_REJECTED,\n payload: {},\n });\n }\n }\n\n async function handleSOLTransaction(signer: SOLEmbeddedCheckoutSigner, serializedTransaction: string) {\n // @ts-ignore - Error becasue we dont use 'module' field in tsconfig, which is expected because we use tsup to compile\n const { Transaction } = await import(\"@solana/web3.js\");\n const transaction = Transaction.from(bs58.decode(serializedTransaction));\n console.log(\"[Crossmint] Deserialized SOL transaction\", transaction);\n\n return await signer.signAndSendTransaction(transaction);\n }\n\n async function handleETHTransaction(signer: ETHEmbeddedCheckoutSigner, serializedTransaction: string) {\n // @ts-ignore - Error becasue we dont use 'module' field in tsconfig, which is expected because we use tsup to compile\n const { parse: parseTransaction } = await import(\"@ethersproject/transactions\");\n const transaction = parseTransaction(serializedTransaction);\n console.log(\"[Crossmint] Deserialized ETH transaction\", transaction);\n\n return await signer.signAndSendTransaction(transaction);\n }\n\n useEffect(() => {\n emitInternalEvent({\n type: \"params-update\",\n payload: embeddedCheckoutPropsToUpdatableParamsPayload(props),\n });\n }, [props.signer, props.recipient, props.mintConfig, props.locale, props.whPassThroughArgs]);\n\n return <CrossmintEmbeddedCheckoutIFrame onInternalEvent={onInternalEvent} {...props} />;\n}\n","import { useEffect, useState } from \"react\";\n\nimport { IncomingInternalEvent, IncomingInternalEvents, crossmintIFrameService } from \"@crossmint/client-sdk-base\";\nimport { CrossmintEmbeddedCheckoutProps } from \"@crossmint/client-sdk-base\";\n\ntype CrossmintEmbeddedCheckoutIFrameProps = CrossmintEmbeddedCheckoutProps & {\n onInternalEvent?: (event: IncomingInternalEvent) => void;\n};\n\nexport default function CrossmintEmbeddedCheckoutIFrame({\n onInternalEvent,\n ...props\n}: CrossmintEmbeddedCheckoutIFrameProps) {\n const { getUrl, listenToEvents, listenToInternalEvents, emitInternalEvent } = crossmintIFrameService(props);\n\n const [height, setHeight] = useState(0);\n const [url] = useState(getUrl(props));\n\n // Public events\n useEffect(() => {\n const clearListener = listenToEvents((event) => {\n props.onEvent?.(event.data);\n });\n\n return () => {\n clearListener();\n };\n }, []);\n\n // Internal events\n useEffect(() => {\n const clearListener = listenToInternalEvents((event) => {\n const { type, payload } = event.data;\n\n if (type === IncomingInternalEvents.UI_HEIGHT_CHANGED) {\n setHeight(payload.height);\n }\n\n onInternalEvent?.(event.data);\n });\n\n return () => {\n clearListener();\n };\n }, []);\n\n // TODO: Emit updatable parameters\n\n return (\n <iframe\n src={url}\n id=\"crossmint-embedded-checkout.iframe\"\n role=\"crossmint-embedded-checkout.iframe\"\n allow=\"payment *\"\n style={{\n border: \"none !important\",\n padding: \"0px !important\",\n width: \"100% !important\",\n minWidth: \"100% !important\",\n overflow: \"hidden !important\",\n display: \"block !important\",\n userSelect: \"none\",\n transform: \"translate(0px) !important\",\n opacity: \"1\",\n transition: \"ease 0s, opacity 0.4s ease 0.1s\",\n height: `${height}px`,\n }}\n />\n );\n}\n","import { useEffect, useState } from \"react\";\n\nimport type { FiatEmbeddedCheckoutProps } from \"@crossmint/client-sdk-base\";\nimport { crossmintPaymentService_OLD, crossmintUiService_OLD } from \"@crossmint/client-sdk-base\";\n\nexport function CrossmintFiatPaymentElement_OLD(props: FiatEmbeddedCheckoutProps) {\n const [height, setHeight] = useState(0);\n const { getIframeUrl, listenToEvents, emitQueryParams } = crossmintPaymentService_OLD(props);\n const { listenToEvents: listenToUiEvents } = crossmintUiService_OLD({ environment: props.environment });\n const [url] = useState(getIframeUrl());\n\n useEffect(() => {\n const clearListener = listenToEvents((event) => props.onEvent?.(event.data));\n\n return () => {\n if (clearListener) {\n clearListener();\n }\n };\n }, []);\n\n useEffect(() => {\n const clearListener = listenToUiEvents((event: MessageEvent<any>) => {\n const { type, payload } = event.data;\n\n switch (type) {\n case \"ui:height.changed\":\n setHeight(payload.height);\n break;\n default:\n return;\n }\n });\n\n return () => {\n if (clearListener) {\n clearListener();\n }\n };\n }, []);\n\n useEffect(() => {\n emitQueryParams({\n recipient: props.recipient,\n mintConfig: props.mintConfig,\n locale: props.locale,\n whPassThroughArgs: props.whPassThroughArgs,\n });\n }, [props.recipient, props.mintConfig, props.locale, props.whPassThroughArgs]);\n\n return (\n <iframe\n src={url}\n id=\"crossmint-embedded-checkout.iframe\"\n role=\"crossmint-embedded-checkout.iframe\"\n allow=\"payment *\"\n style={{\n border: \"none !important\",\n padding: \"0px !important\",\n width: \"100% !important\",\n minWidth: \"100% !important\",\n overflow: \"hidden !important\",\n display: \"block !important\",\n userSelect: \"none\",\n transform: \"translate(0px) !important\",\n opacity: \"1\",\n transition: \"ease 0s, opacity 0.4s ease 0.1s\",\n height: `${height}px`,\n }}\n ></iframe>\n );\n}\n","import { CSSProperties, MouseEvent, useMemo } from \"react\";\nimport { useState } from \"react\";\n\nimport {\n CrossmintPayButtonProps,\n clientNames,\n crossmintModalService,\n crossmintPayButtonService, CheckoutProps,\n} from \"@crossmint/client-sdk-base\";\n\nimport { LIB_VERSION } from \"../../consts/version\";\nimport useEnvironment from \"../../hooks/useEnvironment\";\nimport { formatProps, useStyles } from \"./styles\";\n\nexport type CrossmintPayButtonReactProps = CrossmintPayButtonProps & {\n onClick?: (e: MouseEvent<HTMLButtonElement>) => void;\n style?: CSSProperties;\n};\n\nexport function CrossmintPayButton(buttonProps: CrossmintPayButtonReactProps) {\n const {\n className,\n disabled,\n onClick,\n style,\n tabIndex,\n theme = \"dark\",\n mintTo,\n emailTo,\n listingId,\n auctionId,\n showOverlay = true,\n mintConfig,\n whPassThroughArgs,\n environment,\n paymentMethod,\n preferredSigninMethod,\n dismissOverlayOnClick,\n prepay,\n locale = \"en-US\",\n currency = \"usd\",\n successCallbackURL = \"\",\n failureCallbackURL = \"\",\n loginEmail = \"\",\n projectId,\n getButtonText,\n checkoutProps = {\n experimental: false,\n display: \"same-tab\",\n paymentMethods: [\"fiat\", \"ETH\", \"SOL\"],\n } as CheckoutProps,\n ...props\n } = buttonProps;\n\n const collectionId = \"clientId\" in props ? props.clientId : props.collectionId;\n\n const [connecting, setConnecting] = useState(false);\n const { isServerSideRendering } = useEnvironment();\n\n const { connect } = crossmintModalService({\n clientId: collectionId,\n projectId,\n showOverlay,\n dismissOverlayOnClick,\n setConnecting,\n libVersion: LIB_VERSION,\n environment,\n clientName: clientNames.reactUi,\n locale,\n currency,\n successCallbackURL,\n failureCallbackURL,\n loginEmail,\n });\n\n const { getButtonText: getButtonTextInternal, handleClick } = crossmintPayButtonService({\n onClick,\n connecting,\n paymentMethod,\n locale,\n checkoutProps\n });\n\n const _handleClick = (event: MouseEvent<HTMLButtonElement>) =>\n handleClick(event, () => {\n connect(\n mintConfig,\n mintTo,\n emailTo,\n listingId,\n whPassThroughArgs,\n paymentMethod,\n preferredSigninMethod,\n prepay,\n checkoutProps\n );\n });\n\n const classes = useStyles(formatProps(theme));\n\n const content = useMemo(() => {\n return (\n <span className={classes.crossmintParagraph} role=\"button-paragraph\">\n {getButtonText != null\n ? getButtonText(connecting, paymentMethod || \"fiat\")\n : getButtonTextInternal(connecting)}\n </span>\n );\n }, [connecting, getButtonText, paymentMethod]);\n\n return (\n <>\n {!isServerSideRendering && (\n <button\n className={`${classes.crossmintButton} ${className || \"\"}`}\n disabled={disabled}\n onClick={_handleClick}\n style={{ ...style }}\n tabIndex={tabIndex}\n >\n <img\n className={classes.crossmintImg}\n src=\"https://www.crossmint.io/assets/crossmint/logo.svg\"\n alt=\"Crossmint logo\"\n />\n {content}\n </button>\n )}\n </>\n );\n}\n","import { useEffect, useState } from \"react\";\r\n\r\nexport default function useEnvironment() {\r\n const [isServerSideRendering, setIsServerSideRendering] = useState(true);\r\n useEffect(() => {\r\n setIsServerSideRendering(false);\r\n }, []);\r\n\r\n return { isServerSideRendering };\r\n}\r\n","import { createUseStyles } from \"react-jss\";\n\nconst DARK_BG = \"#1e1e1e\";\n\ninterface CustomStylingProps {\n buttonBgColor?: string;\n paragraphColor?: string;\n}\n\nconst themeIsLight = (theme: string) => theme === \"light\";\n\nexport const formatProps = (theme: string): CustomStylingProps => ({\n buttonBgColor: themeIsLight(theme) ? \"white\" : DARK_BG,\n paragraphColor: themeIsLight(theme) ? \"black\" : \"white\",\n});\n\nexport const useStyles = createUseStyles({\n \"@global\": {\n \"@import\":\n \"url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap')\",\n },\n crossmintButton: {\n display: \"flex\",\n \"flex-direction\": \"row\",\n \"align-items\": \"center\",\n padding: \"0.875rem 0.875rem\",\n \"font-weight\": \"900\",\n transition: \"opacity ease-in-out 0.25s\",\n \"border-radius\": \"0.5rem\",\n \"font-family\": `\"Inter\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif`,\n outline: \"none\",\n border: \"none\",\n \"box-shadow\": \"0px 8px 15px rgba(0, 0, 0, 0.1)\",\n \"justify-content\": \"center\",\n background: ({ buttonBgColor }: CustomStylingProps) => buttonBgColor,\n\n \"&:hover:enabled\": {\n opacity: \"0.6\",\n cursor: \"pointer\",\n },\n },\n crossmintImg: {\n width: \"21px\",\n height: \"21px\",\n \"margin-right\": \"0.875rem\",\n },\n crossmintParagraph: {\n color: ({ paragraphColor }: CustomStylingProps) => paragraphColor,\n margin: \"0\",\n },\n});\n","export * from \"./components\";\n\nexport { CrossmintEvents, useCrossmintEvents } from \"@crossmint/client-sdk-base\";\nexport type { CrossmintEvent, CrossmintEventMap } from \"@crossmint/client-sdk-base\";\n"],"mappings":"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","names":["assertValidNFTCollectionViewProps","getNFTCollectionViewSrc","LIB_VERSION","jsx","CrossmintNFTCollectionView","props","assertValidNFTCollectionViewProps","src","getNFTCollectionViewSrc","LIB_VERSION","assertValidValidateNFTDetailProps","getNFTDetailSrc","jsx","CrossmintNFTDetail","props","assertValidValidateNFTDetailProps","src","getNFTDetailSrc","LIB_VERSION","isCryptoEmbeddedCheckoutProps","isFiatEmbeddedCheckoutProps","isCryptoEmbeddedCheckoutPropsWithSigner","bs58","useEffect","IncomingInternalEvents","OutgoingInternalEvents","crossmintIFrameService","embeddedCheckoutPropsToUpdatableParamsPayload","useEffect","useState","IncomingInternalEvents","crossmintIFrameService","jsx","CrossmintEmbeddedCheckoutIFrame","_a","_b","onInternalEvent","props","__objRest","getUrl","listenToEvents","listenToInternalEvents","emitInternalEvent","crossmintIFrameService","height","setHeight","useState","url","useEffect","clearListener","event","type","payload","IncomingInternalEvents","jsx","CryptoEmbeddedCheckoutIFrame","props","emitInternalEvent","crossmintIFrameService","signer","paymentMethod","onInternalEvent","event","type","payload","IncomingInternalEvents","serializedTransaction","handleIncomingTransaction","__async","txId","handleSOLTransaction","handleETHTransaction","OutgoingInternalEvents","e","Transaction","transaction","bs58","parseTransaction","useEffect","embeddedCheckoutPropsToUpdatableParamsPayload","CrossmintEmbeddedCheckoutIFrame","__spreadValues","jsx","CrossmintCryptoEmbeddedCheckout","props","isCryptoEmbeddedCheckoutPropsWithSigner","CryptoEmbeddedCheckoutIFrame","__spreadValues","useEffect","useState","crossmintPaymentService_OLD","crossmintUiService_OLD","jsx","CrossmintFiatPaymentElement_OLD","props","height","setHeight","getIframeUrl","listenToEvents","emitQueryParams","listenToUiEvents","url","clearListener","event","_a","type","payload","jsx","CrossmintPaymentElement","props","isFiatEmbeddedCheckoutProps","CrossmintFiatPaymentElement_OLD","__spreadValues","isCryptoEmbeddedCheckoutProps","CrossmintCryptoEmbeddedCheckout","useMemo","useState","clientNames","crossmintModalService","crossmintPayButtonService","useEffect","useState","useEnvironment","isServerSideRendering","setIsServerSideRendering","createUseStyles","DARK_BG","themeIsLight","theme","formatProps","useStyles","buttonBgColor","paragraphColor","Fragment","jsx","jsxs","CrossmintPayButton","buttonProps","_a","className","disabled","onClick","style","tabIndex","theme","mintTo","emailTo","listingId","auctionId","showOverlay","mintConfig","whPassThroughArgs","environment","paymentMethod","preferredSigninMethod","dismissOverlayOnClick","prepay","locale","currency","successCallbackURL","failureCallbackURL","loginEmail","projectId","getButtonText","checkoutProps","props","__objRest","collectionId","connecting","setConnecting","useState","isServerSideRendering","useEnvironment","connect","crossmintModalService","LIB_VERSION","clientNames","getButtonTextInternal","handleClick","crossmintPayButtonService","_handleClick","event","classes","useStyles","formatProps","content","useMemo","__spreadValues","CrossmintEvents","useCrossmintEvents"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crossmint/client-sdk-react-ui",
3
- "version": "1.1.0-alpha.1",
3
+ "version": "1.1.0-alpha.2",
4
4
  "author": "Paella Labs Inc",
5
5
  "license": "Apache-2.0",
6
6
  "repository": "https://github.com/Crossmint/crossmint-client-sdk",
@@ -30,7 +30,7 @@
30
30
  "test": "jest"
31
31
  },
32
32
  "dependencies": {
33
- "@crossmint/client-sdk-base": "1.1.0-alpha.1",
33
+ "@crossmint/client-sdk-base": "1.1.0-alpha.2",
34
34
  "@ethersproject/transactions": "5.7.0",
35
35
  "@solana/web3.js": "1.78.5",
36
36
  "bs58": "5.0.0",
@@ -46,5 +46,5 @@
46
46
  "react": "18.2.0",
47
47
  "react-dom": "18.2.0"
48
48
  },
49
- "gitHead": "78dd9eb5b5b762c164be3103965741f533c75f12"
49
+ "gitHead": "6442e075dcc56a82d25fb63b1e96e6e0fc342b71"
50
50
  }
@@ -5,7 +5,7 @@ import {
5
5
  CrossmintPayButtonProps,
6
6
  clientNames,
7
7
  crossmintModalService,
8
- crossmintPayButtonService,
8
+ crossmintPayButtonService, CheckoutProps,
9
9
  } from "@crossmint/client-sdk-base";
10
10
 
11
11
  import { LIB_VERSION } from "../../consts/version";
@@ -44,6 +44,11 @@ export function CrossmintPayButton(buttonProps: CrossmintPayButtonReactProps) {
44
44
  loginEmail = "",
45
45
  projectId,
46
46
  getButtonText,
47
+ checkoutProps = {
48
+ experimental: false,
49
+ display: "same-tab",
50
+ paymentMethods: ["fiat", "ETH", "SOL"],
51
+ } as CheckoutProps,
47
52
  ...props
48
53
  } = buttonProps;
49
54
 
@@ -73,6 +78,7 @@ export function CrossmintPayButton(buttonProps: CrossmintPayButtonReactProps) {
73
78
  connecting,
74
79
  paymentMethod,
75
80
  locale,
81
+ checkoutProps
76
82
  });
77
83
 
78
84
  const _handleClick = (event: MouseEvent<HTMLButtonElement>) =>
@@ -85,7 +91,8 @@ export function CrossmintPayButton(buttonProps: CrossmintPayButtonReactProps) {
85
91
  whPassThroughArgs,
86
92
  paymentMethod,
87
93
  preferredSigninMethod,
88
- prepay
94
+ prepay,
95
+ checkoutProps
89
96
  );
90
97
  });
91
98
 
@@ -1 +1 @@
1
- export const LIB_VERSION = "1.1.0-alpha.1";
1
+ export const LIB_VERSION = "1.1.0-alpha.2";