@credenza3/passport-evm 0.4.25 → 0.4.26
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/{App-6EMaSmM_.js → App-VHOLCm-t.js} +20 -20
- package/dist/{App-6EMaSmM_.js.map → App-VHOLCm-t.js.map} +1 -1
- package/dist/{AssetItem-BjjBnxDN.js → AssetItem-A44ZDHuh.js} +2 -2
- package/dist/{AssetItem-BjjBnxDN.js.map → AssetItem-A44ZDHuh.js.map} +1 -1
- package/dist/{Assets-C5RqpGY_.js → Assets-it3WqPWz.js} +7 -7
- package/dist/{Assets-C5RqpGY_.js.map → Assets-it3WqPWz.js.map} +1 -1
- package/dist/{Button-DsKboKLG.js → Button-CkjrEtPk.js} +4 -4
- package/dist/{Button-DsKboKLG.js.map → Button-CkjrEtPk.js.map} +1 -1
- package/dist/{ButtonBack-dJP_jtyI.js → ButtonBack-5YDSngEn.js} +4 -4
- package/dist/{ButtonBack-dJP_jtyI.js.map → ButtonBack-5YDSngEn.js.map} +1 -1
- package/dist/{ButtonLink-B3dT5O07.js → ButtonLink-DWOph3pO.js} +3 -3
- package/dist/{ButtonLink-B3dT5O07.js.map → ButtonLink-DWOph3pO.js.map} +1 -1
- package/dist/{ConfirmAccount-DzW1NgAM.js → ConfirmAccount-j-aDACuq.js} +9 -9
- package/dist/{ConfirmAccount-DzW1NgAM.js.map → ConfirmAccount-j-aDACuq.js.map} +1 -1
- package/dist/{ContentHeader-BUI9DlQx.js → ContentHeader-DqYl-Bfn.js} +3 -3
- package/dist/{ContentHeader-BUI9DlQx.js.map → ContentHeader-DqYl-Bfn.js.map} +1 -1
- package/dist/{Error-RFDG3SHk.js → Error-j0Ln88-R.js} +5 -5
- package/dist/{Error-RFDG3SHk.js.map → Error-j0Ln88-R.js.map} +1 -1
- package/dist/{Input-BJj7UxKg.js → Input-Dn818-SF.js} +4 -4
- package/dist/{Input-BJj7UxKg.js.map → Input-Dn818-SF.js.map} +1 -1
- package/dist/{Label-5MObgjlg.js → Label-BvhanrFL.js} +3 -3
- package/dist/{Label-5MObgjlg.js.map → Label-BvhanrFL.js.map} +1 -1
- package/dist/{Loader-BssQ7fjJ.js → Loader-Des-vEcw.js} +3 -3
- package/dist/{Loader-BssQ7fjJ.js.map → Loader-Des-vEcw.js.map} +1 -1
- package/dist/{Login-DMyQlDHA.js → Login-7XRXex9N.js} +52 -52
- package/dist/Login-7XRXex9N.js.map +1 -0
- package/dist/{Logout-CXz-pS5j.js → Logout-B9jqbCtA.js} +6 -6
- package/dist/{Logout-CXz-pS5j.js.map → Logout-B9jqbCtA.js.map} +1 -1
- package/dist/{Nav-CGDgqP-d.js → Nav-BAGRdJic.js} +6 -6
- package/dist/{Nav-CGDgqP-d.js.map → Nav-BAGRdJic.js.map} +1 -1
- package/dist/{NavMenu-CIbdmq9n.js → NavMenu-CFx4Gwwf.js} +5 -5
- package/dist/{NavMenu-CIbdmq9n.js.map → NavMenu-CFx4Gwwf.js.map} +1 -1
- package/dist/{PassportId-DN9CXXIx.js → PassportId-CJfCwaof.js} +6 -6
- package/dist/{PassportId-DN9CXXIx.js.map → PassportId-CJfCwaof.js.map} +1 -1
- package/dist/{Payment-Cg6CLBP-.js → Payment-BXvub930.js} +10 -10
- package/dist/{Payment-Cg6CLBP-.js.map → Payment-BXvub930.js.map} +1 -1
- package/dist/{PaymentResult-DWTDo_ZW.js → PaymentResult-C0V0kZS8.js} +4 -4
- package/dist/{PaymentResult-DWTDo_ZW.js.map → PaymentResult-C0V0kZS8.js.map} +1 -1
- package/dist/{Profile-Ca8peQuw.js → Profile-Bm7eyxqh.js} +7 -7
- package/dist/{Profile-Ca8peQuw.js.map → Profile-Bm7eyxqh.js.map} +1 -1
- package/dist/{ProgressVideo-DXmk6bU2.js → ProgressVideo-DFSJz_EH.js} +5 -5
- package/dist/{ProgressVideo-DXmk6bU2.js.map → ProgressVideo-DFSJz_EH.js.map} +1 -1
- package/dist/{RichAlert-BWGo6PxW.js → RichAlert-tDYoeGsI.js} +5 -5
- package/dist/{RichAlert-BWGo6PxW.js.map → RichAlert-tDYoeGsI.js.map} +1 -1
- package/dist/{Scanner-B8oVTKk6.js → Scanner-n_Zi0mCB.js} +6 -6
- package/dist/{Scanner-B8oVTKk6.js.map → Scanner-n_Zi0mCB.js.map} +1 -1
- package/dist/{SendTokens-Cne8SBKT.js → SendTokens-Cmdk1nu2.js} +7 -7
- package/dist/{SendTokens-Cne8SBKT.js.map → SendTokens-Cmdk1nu2.js.map} +1 -1
- package/dist/{Sign-COuKO0nX.js → Sign-CJJHzEK3.js} +6 -6
- package/dist/{Sign-COuKO0nX.js.map → Sign-CJJHzEK3.js.map} +1 -1
- package/dist/{Stripe.service-D9_9ws7B.js → Stripe.service-BysmXEDZ.js} +3 -3
- package/dist/{Stripe.service-D9_9ws7B.js.map → Stripe.service-BysmXEDZ.js.map} +1 -1
- package/dist/{UpdateProfile-CSylDc5G.js → UpdateProfile-215E76Jb.js} +10 -10
- package/dist/{UpdateProfile-CSylDc5G.js.map → UpdateProfile-215E76Jb.js.map} +1 -1
- package/dist/{UserInfo-7cE147fd.js → UserInfo-BW4gr28R.js} +4 -4
- package/dist/{UserInfo-7cE147fd.js.map → UserInfo-BW4gr28R.js.map} +1 -1
- package/dist/{Wallet-oiAXDb-Y.js → Wallet-ZehEYEKa.js} +7 -7
- package/dist/{Wallet-oiAXDb-Y.js.map → Wallet-ZehEYEKa.js.map} +1 -1
- package/dist/authMethods.helper-DWYj17gI.js +25 -0
- package/dist/authMethods.helper-DWYj17gI.js.map +1 -0
- package/dist/{each-B8-aVxwo.js → each-CjKgFOlV.js} +2 -2
- package/dist/{each-B8-aVxwo.js.map → each-CjKgFOlV.js.map} +1 -1
- package/dist/{html-5Fz8gy87.js → html-C60LY-oo.js} +3 -3
- package/dist/{html-5Fz8gy87.js.map → html-C60LY-oo.js.map} +1 -1
- package/dist/{index-client-C83l0Kbg.js → index-client-xFBzYbnZ.js} +2 -2
- package/dist/{index-client-C83l0Kbg.js.map → index-client-xFBzYbnZ.js.map} +1 -1
- package/dist/{index-Dllh0686.js → index-h4gUPhx9.js} +5 -5
- package/dist/{index-Dllh0686.js.map → index-h4gUPhx9.js.map} +1 -1
- package/dist/{input-Bfc-jKRz.js → input-Dv20ZMrw.js} +2 -2
- package/dist/{input-Bfc-jKRz.js.map → input-Dv20ZMrw.js.map} +1 -1
- package/dist/passport.es.js +1 -1
- package/dist/passport.umd.js +4 -4
- package/dist/passport.umd.js.map +1 -1
- package/package.json +1 -1
- package/dist/Login-DMyQlDHA.js.map +0 -1
- package/dist/authMethods.helper-C-hC3nNv.js +0 -25
- package/dist/authMethods.helper-C-hC3nNv.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PassportId-DN9CXXIx.js","sources":["../../ui/images/apple-wallet.svg","../../ui/images/reload.svg","../../ui/main/passport-id/PassportId.svelte","../src/app/pages/passport-id/PassportId.svelte"],"sourcesContent":["export default \"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Generator:%20Adobe%20Illustrator%2025.3.1,%20SVG%20Export%20Plug-In%20.%20SVG%20Version:%206.00%20Build%200)%20--%3e%3csvg%20version='1.1'%20id='Artwork'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20width='110.739px'%20height='35.016px'%20viewBox='0%200%20110.739%2035.016'%20style='enable-background:new%200%200%20110.739%2035.016;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e%20.st0{fill:%23A6A6A6;}%20.st1{clip-path:url(%23SVGID_2_);fill:%23DEDBCE;}%20.st2{clip-path:url(%23SVGID_2_);fill-rule:evenodd;clip-rule:evenodd;fill:%2340A5D9;}%20.st3{clip-path:url(%23SVGID_2_);}%20.st4{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFB003;}%20.st5{fill-rule:evenodd;clip-rule:evenodd;fill:%2340C740;}%20.st6{fill-rule:evenodd;clip-rule:evenodd;fill:%23F26D5F;}%20.st7{clip-path:url(%23SVGID_2_);fill-rule:evenodd;clip-rule:evenodd;fill:%23D9D6CC;}%20.st8{fill-rule:evenodd;clip-rule:evenodd;fill:%23DEDBCE;}%20.st9{fill:%23FFFFFF;}%20%3c/style%3e%3cg%3e%3cg%3e%3cpath%20class='st0'%20d='M100.211,0H9.533C9.166,0,8.804,0,8.439,0.002C8.132,0.004,7.829,0.01,7.52,0.015%20C6.854,0.031,6.181,0.072,5.516,0.191C4.847,0.309,4.225,0.509,3.616,0.818C3.017,1.125,2.47,1.523,1.997,1.997%20C1.519,2.47,1.122,3.019,0.819,3.618C0.508,4.226,0.311,4.851,0.194,5.521C0.074,6.183,0.032,6.852,0.015,7.522%20C0.006,7.829,0.005,8.136,0,8.443c0,0.362,0,0.725,0,1.092v14.948c0,0.369,0,0.73,0,1.094c0.005,0.31,0.006,0.611,0.015,0.922%20c0.017,0.67,0.059,1.34,0.179,2.002c0.117,0.67,0.314,1.298,0.625,1.904c0.303,0.596,0.7,1.144,1.178,1.614%20c0.473,0.477,1.02,0.875,1.618,1.178c0.609,0.312,1.231,0.51,1.901,0.631c0.664,0.119,1.338,0.158,2.004,0.177%20c0.309,0.007,0.613,0.011,0.919,0.011c0.366,0.002,0.728,0.002,1.095,0.002h90.678c0.359,0,0.724,0,1.084-0.002%20c0.305,0,0.617-0.004,0.922-0.011c0.67-0.018,1.342-0.058,2-0.177c0.67-0.121,1.293-0.318,1.908-0.631%20c0.597-0.304,1.144-0.701,1.617-1.178c0.476-0.47,0.873-1.018,1.181-1.614c0.307-0.606,0.506-1.234,0.619-1.904%20c0.123-0.662,0.162-1.332,0.186-2.002c0.004-0.311,0.004-0.611,0.004-0.922c0.008-0.363,0.008-0.724,0.008-1.094V9.534%20c0-0.366,0-0.729-0.008-1.092c0-0.307,0-0.614-0.004-0.921c-0.023-0.67-0.062-1.34-0.186-2.002%20c-0.113-0.67-0.312-1.295-0.619-1.903c-0.309-0.599-0.705-1.147-1.181-1.621c-0.473-0.474-1.019-0.872-1.617-1.179%20c-0.615-0.31-1.238-0.51-1.908-0.627c-0.658-0.119-1.33-0.16-2-0.177c-0.305-0.005-0.617-0.011-0.922-0.013%20C100.936,0,100.571,0,100.211,0L100.211,0z'/%3e%3c/g%3e%3cpath%20d='M100.211,0.65c0.358,0,0.722,0,1.08,0.002c0.246,0.002,0.498,0.006,0.746,0.01l0.164,0.003%20c0.529,0.013,1.222,0.044,1.904,0.167c0.619,0.108,1.184,0.294,1.723,0.565c0.539,0.277,1.028,0.633,1.455,1.061%20c0.423,0.42,0.78,0.91,1.059,1.452c0.271,0.539,0.454,1.101,0.56,1.729c0.117,0.63,0.153,1.288,0.175,1.891%20c0.004,0.304,0.004,0.609,0.004,0.926c0.008,0.358,0.008,0.716,0.008,1.078v14.948c0,0.364,0,0.721-0.008,1.094%20c0,0.308,0,0.606-0.004,0.899c-0.022,0.617-0.058,1.275-0.177,1.916c-0.105,0.622-0.288,1.184-0.555,1.713%20c-0.284,0.549-0.641,1.037-1.066,1.456c-0.423,0.427-0.91,0.782-1.449,1.056c-0.531,0.27-1.097,0.456-1.729,0.571%20c-0.655,0.119-1.329,0.151-1.898,0.167c-0.3,0.007-0.607,0.011-0.911,0.011c-0.358,0.002-0.722,0.002-1.08,0.002H9.533%20c-0.365,0-0.726,0-1.095-0.002c-0.301,0-0.6-0.004-0.901-0.01c-0.572-0.016-1.245-0.048-1.906-0.167%20c-0.633-0.114-1.196-0.301-1.722-0.571c-0.539-0.273-1.027-0.629-1.457-1.063c-0.422-0.415-0.777-0.901-1.055-1.447%20c-0.268-0.523-0.453-1.086-0.564-1.724c-0.124-0.681-0.155-1.374-0.169-1.904c-0.006-0.208-0.009-0.411-0.011-0.616L0.65,25.576%20v-1.094V9.534l0-1.081l0.004-0.299C0.656,7.95,0.659,7.746,0.665,7.539c0.013-0.528,0.045-1.221,0.17-1.907%20c0.11-0.63,0.294-1.192,0.564-1.721c0.275-0.543,0.63-1.032,1.058-1.455C2.883,2.029,3.373,1.673,3.91,1.398%20C4.446,1.125,5.008,0.94,5.631,0.831C6.315,0.708,7.009,0.678,7.53,0.664l0.198-0.003c0.239-0.004,0.476-0.008,0.714-0.009%20C8.806,0.65,9.168,0.65,9.533,0.65H100.211'/%3e%3cg%3e%3cdefs%3e%3cpath%20id='SVGID_1_'%20d='M33.265,23.054l0,0.265c0,0.127,0,0.254-0.001,0.381c-0.001,0.107-0.002,0.214-0.005,0.321%20c-0.006,0.233-0.02,0.468-0.061,0.698c-0.042,0.234-0.111,0.452-0.219,0.664c-0.106,0.209-0.245,0.4-0.411,0.565%20c-0.166,0.166-0.357,0.304-0.565,0.411c-0.212,0.108-0.43,0.177-0.664,0.219c-0.23,0.041-0.465,0.055-0.698,0.061%20c-0.107,0.003-0.214,0.004-0.321,0.005c-0.127,0.001-0.254,0.001-0.381,0.001l-1.459-0.001l1.358,0.001H10.985l1.358-0.001%20l-1.459,0.001c-0.127,0-0.254,0-0.381-0.001c-0.107-0.001-0.214-0.002-0.321-0.005c-0.233-0.006-0.468-0.02-0.698-0.061%20c-0.234-0.042-0.451-0.111-0.664-0.219c-0.209-0.106-0.4-0.245-0.565-0.411c-0.166-0.166-0.304-0.357-0.411-0.565%20c-0.108-0.212-0.177-0.43-0.219-0.664c-0.041-0.23-0.055-0.465-0.061-0.698C7.561,23.914,7.56,23.807,7.56,23.7%20c-0.001-0.127-0.001-0.254-0.001-0.381l0-0.208V10.899l0,1.25l0-1.458c0-0.127,0-0.254,0.001-0.381%20c0.001-0.107,0.002-0.214,0.005-0.321c0.006-0.233,0.02-0.468,0.061-0.698c0.042-0.234,0.111-0.452,0.219-0.664%20c0.106-0.209,0.245-0.4,0.411-0.565c0.166-0.166,0.357-0.304,0.565-0.411c0.212-0.108,0.43-0.177,0.664-0.219%20c0.23-0.041,0.465-0.055,0.698-0.061c0.107-0.003,0.214-0.004,0.321-0.005c0.127-0.001,0.254-0.001,0.381-0.001l1.458,0h17.496%20l0.1,0c0.127,0,0.254,0,0.381,0.001c0.107,0.001,0.214,0.002,0.321,0.005c0.233,0.006,0.468,0.02,0.698,0.061%20c0.234,0.042,0.451,0.111,0.664,0.219c0.209,0.106,0.4,0.245,0.565,0.411c0.166,0.166,0.304,0.357,0.411,0.565%20c0.108,0.212,0.177,0.43,0.219,0.664c0.041,0.23,0.055,0.465,0.061,0.698c0.003,0.107,0.004,0.214,0.005,0.321%20c0.001,0.127,0.001,0.254,0.001,0.381l0,0.265V23.054z'/%3e%3c/defs%3e%3cclipPath%20id='SVGID_2_'%3e%3cuse%20xlink:href='%23SVGID_1_'%20style='overflow:visible;'/%3e%3c/clipPath%3e%3crect%20x='8.352'%20y='8.169'%20class='st1'%20width='24.099'%20height='16.78'/%3e%3crect%20x='8.63'%20y='8.436'%20class='st2'%20width='23.564'%20height='9.997'/%3e%3cg%20class='st3'%3e%3cimage%20style='overflow:visible;opacity:0.17;'%20width='109'%20height='52'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHEAAAA6CAYAAACH4bZ/AAAACXBIWXMAAC4jAAAuIwF4pT92AAAA%20GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAArlJREFUeNrsnG1vEkEUhXeXBSpU%20FCW+6zdN/P8/qGk00WhFY6CWsqD3JmfS6bpLoWGXNnlOckJ32NkPPNw7MzT3JglCCKE9KN3zfWh/%20+rsPiGn0Ghs1D6/sW0H08czckXNdZ4BsHODavDIXel3dBDOvGAuwuuYj8wO5r/uJyGYBOryF+Vy+%200Fhtis1rItCBHZvH5qfmx7ruKzJZJ5tZ/wLA3+Yz+ZdgFttATKMIdGDPzW/lFwJ6JIgAbAZkIWAO%2075P5RO95hP6pS6vlSOwI1FjwPprfm18pGoHYDsRv5pHGF/IyWh9rIWa6Hpgn5ncC+MH80vzQ3GNN%20bBTiSmvgSDzm5p9KqXOB/C8a89IxIqRSh/ja/EZROFEU5gBsVGttIjOlz+/mz+YvArnQPbUQO4q0%20Y21mngneSA/u6eGo2Wh0FkMtXxOxGEWbyuWmdBrWQ5/wRB5FEcgZsR2FYAogx1rK4v1IGkdjVorE%20vib45EdaH7sAbE1picVAPIYCW7mpzCrS6VATB5smokZBhk1mTzC7m35oyUrfgFwT+noAafTwEdkp%20pdGkDuLOE1FrIG/850N224no7ogjAxAREBEQERCBiICIgIiACEQERAREBEQgIiAiICIgAhEBEQER%20ARGICIgIiAiIQET3RXnN+M4NcdDetPNnn1c8YJ1cb4gTeqhQl9EexPC5ryIeWzUjCgC9nNiL/73Q%20fxbdB8R2Ic7E4EJMakHmJYCXmjg1fxU4Lzal0LRdiB6B52IwFZPLOpB5ib53bPBGOKca934qoVYc%20tafQCmUqFmdiU2wDcSZwiR7gnTS6CbWKh9jYLMXjh5jMIojXQMbtMP244SXe3u5kmFw1XSCVHi6l%20LpVW54rEypSalv4OBf/B1OsfFuQ62qkWdWtiWnFNufc9OzNualqL7hZMhBBCzeqfAAMARUSzZ7uC%20WKkAAAAASUVORK5CYII='%20transform='matrix(0.24%200%200%200.24%207.4439%209.1078)'%3e%3c/image%3e%3cg%3e%3cpath%20class='st4'%20d='M32.194,12.688c0-0.081,0-0.161,0-0.242c0-0.068-0.001-0.136-0.003-0.204%20c-0.004-0.148-0.013-0.297-0.039-0.443c-0.027-0.148-0.07-0.286-0.139-0.421c-0.067-0.132-0.155-0.254-0.26-0.359%20c-0.105-0.105-0.226-0.193-0.359-0.261c-0.135-0.069-0.273-0.112-0.421-0.139c-0.146-0.026-0.295-0.035-0.443-0.039%20c-0.068-0.002-0.136-0.003-0.204-0.003c-0.081,0-0.161,0-0.242,0l-0.066,0H11.665l-0.925,0c-0.081,0-0.161,0-0.242,0%20c-0.068,0-0.136,0.001-0.204,0.003c-0.148,0.004-0.297,0.013-0.443,0.039c-0.148,0.027-0.286,0.07-0.421,0.139%20c-0.132,0.067-0.254,0.155-0.359,0.261c-0.105,0.105-0.193,0.226-0.26,0.359c-0.069,0.135-0.112,0.273-0.139,0.421%20c-0.026,0.146-0.035,0.295-0.039,0.443c-0.002,0.068-0.003,0.136-0.003,0.204c0,0.081,0,0.161,0,0.242l0,0.925l0-0.727v7.689%20h23.564v-7.64L32.194,12.688z'/%3e%3c/g%3e%3c/g%3e%3cg%20class='st3'%3e%3cimage%20style='overflow:visible;opacity:0.16;'%20width='109'%20height='52'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHEAAAA6CAYAAACH4bZ/AAAACXBIWXMAAC4jAAAuIwF4pT92AAAA%20GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAqFJREFUeNrsnNtu00AURW3HdkJK%20UxAX8YAqUN/4//9BCCQQlIBQUtrGSZkj7ZGmxpNLZU9baS1pK7Xr8UNWzxkn1UyWAQBAD+Q9XQP9%20c9OHxLwjkEZeOwdL9MJGSqnXApFJBG5c1i6NXte7ZJYRgXZ+4jJVxjqHyOEFmrwrlwvlUueiLbZL%20Yilxz1xeKrNAJPPkcPOfF/jH5Vz5LZnNPhJ9C51I4FuXdy6nEjnV9QgcTmQjYSbvs8tH/c4q9G+s%20rXZJNFmvXN67fHA5c3mNxKQSv6v7ZapMyyqYHzsl5prvKpcjVd6pBJ7peCLJSBxO4lpz4Ew+li6/%201FKXEvlfNZaR+fC5qu+NqtLaa60bw3BY23yi99na5w+XLy5fJfJK19xsq8RaEk8kbqbjWlVKFQ5f%20jbm6oX+wfBE8WI5UjdF2OpKspxo0019FFbRRJA6P9+BFWlc8bk1neViNRWvwWBJPgoElApMRftEy%20Vhc8ltA69kxSdFTiVCKn2wbCoCILFU8tmdW2Yio6vqmp9hkIySpytGs6K+46EJKJ3PkPiOKuA+Hh%20wOc+JAISAYmARCQCEgGJgEQkAhIBiYBEJAISAYmARCQCEgGJgEQkAhIBiYBEJMJjoYycP3hDHOiN%20g9/7suMGm+z2hjh+DxXWZaST6N/3deBjr82IvEBbTmyL/22h/yK4DolpJS7k4FJOoiLLlsBrDZy7%20fJM4W2zKQtO0Eq0CL+RgLifXMZFly77t2GAb4XzSedtPxa8Vh3T4rVDmcnEuN80+EhcSl+kGtuzb%2075pBJaZ9sFnJx085WQQSb4nMg1e/BYrtmHGkNlrRSu+1pa7UVpeqxM6Wmrd+9gv+fdhV8X5FboIn%201SY2J+Ydxyz3fmSfGWOSkPfwZAIAwLD8E2AAOBuy81Gw3f4AAAAASUVORK5CYII='%20transform='matrix(0.24%200%200%200.24%207.4439%2011.2678)'%3e%3c/image%3e%3cg%3e%3cpath%20class='st5'%20d='M32.194,14.83c0-0.081,0-0.161,0-0.242c0-0.068-0.001-0.136-0.003-0.204%20c-0.004-0.148-0.013-0.297-0.039-0.443c-0.027-0.148-0.07-0.286-0.139-0.421c-0.067-0.132-0.155-0.254-0.26-0.359%20c-0.105-0.105-0.226-0.193-0.359-0.261c-0.135-0.069-0.273-0.112-0.421-0.139c-0.146-0.026-0.295-0.035-0.443-0.039%20c-0.068-0.002-0.136-0.003-0.204-0.003c-0.081,0-0.161,0-0.242,0l-0.067,0H11.665l-0.925,0c-0.081,0-0.161,0-0.242,0%20c-0.068,0-0.136,0.001-0.204,0.003c-0.148,0.004-0.297,0.013-0.443,0.039c-0.148,0.027-0.286,0.07-0.421,0.139%20c-0.132,0.067-0.254,0.155-0.359,0.261c-0.105,0.105-0.193,0.226-0.26,0.359c-0.069,0.135-0.112,0.273-0.139,0.421%20c-0.026,0.146-0.035,0.295-0.039,0.443c-0.002,0.068-0.003,0.136-0.003,0.204c0,0.081,0,0.161,0,0.242l0,0.925l0-0.727v7.689%20h23.564v-7.64L32.194,14.83z'/%3e%3c/g%3e%3c/g%3e%3cg%20class='st3'%3e%3cimage%20style='overflow:visible;opacity:0.17;'%20width='109'%20height='52'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHEAAAA6CAYAAACH4bZ/AAAACXBIWXMAAC4jAAAuIwF4pT92AAAA%20GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAvBJREFUeNrsnFtv00AQhX1Ngkkv%20EYW+ICQET/z//4NASEBbUi5JyMVOmJHOiMF4mzRJnVQ6RzrazdbrB3+and1KO1FEURRFUZQqvscz%20caBP7aYV3NTfGaKBSlybwokbp3YDuIQreOnGV5vAjO+AZ8BycSbuwF20GSNyLxFYiufiGdo5xhYO%207J0wswBAHe+JC/FTtNbvo98B5IggtwIYAZBCm4hH4jH6E9efAmpwiW2CmAHSufhC/Fw8EJ+JT9H2%20EZEpAe4EskIEKsAf4p9ob8XX4hvxd8AsN4FoS2gPAF+KX4tfiV9gTCGeuEhkXtw9H1ok/gJEhXYl%20/ih+j2f1ud+hZbUJYoHoU4DvxG/FlwD4BJCZE/efE6cApSC/IlgiROrM5cggRNt95sh7F4hABfgG%20vwu3yUkJcK8gK7eZmSBdxciLt4jOMf7+XzRmgXw4wBJ6CYDnyIGJg0eA+wNpu/8l2hhRqXnxk/gz%20QM7c0SMYiR1APHM5sABALp8P+w+XFRhEWA1tY/kMHGwjuai/IKnlww5C+dTlwLwWgdTDwfQcDOQA%20+bEXSmOJ66eg3Uck2kRG4GFAdrEKngBoJ3Ska4rEouFAT4Dtgkxcnuy6DWW8DqJtbPJNJlKtRWS6%207jSQbDuRag3k2tNAsu1E6niU8BMQIkWIFCFShEiIFCFShEgRIiFShEgRIkWIhEgRIkWIFCESIkWI%20FCFShEiIFCFShEgRIiFSj0RZYHzVYKod3fvbZw0v8BWOyuhvDRXey2gPon33yvHYqBiRAdTrxFrJ%20QS/6j9xzhNguRCtONAWTIMisBnCOiUPxF4DTy6a8aNouRI3ACRgMwWQeApnV6GvFBq1i9AHjWhTH%207opT7alCBA7B4gZsyk0gjgAuwgv02nce8a7iITY2C/D4BiYjB/EfkL5+qZVA0YoZVpQv51J60CXV%20ihONEYmNS2pc69uFfzNrtx0W5NLtVMtQTowbfvO69yM7M4YgEd7xwaQo6qj1R4ABAM5x0/sxgGqp%20AAAAAElFTkSuQmCC'%20transform='matrix(0.24%200%200%200.24%207.4439%2013.4278)'%3e%3c/image%3e%3cg%3e%3cpath%20class='st6'%20d='M32.194,16.972c0-0.081,0-0.161,0-0.242c0-0.068-0.001-0.136-0.003-0.204%20c-0.004-0.148-0.013-0.297-0.039-0.443c-0.027-0.148-0.07-0.286-0.139-0.421c-0.067-0.132-0.155-0.254-0.26-0.359%20c-0.105-0.105-0.226-0.193-0.359-0.261c-0.135-0.069-0.273-0.112-0.421-0.139c-0.146-0.026-0.295-0.035-0.443-0.039%20c-0.068-0.002-0.136-0.003-0.204-0.003c-0.081,0-0.161,0-0.242,0l-0.067,0H11.665l-0.925,0c-0.081,0-0.161,0-0.242,0%20c-0.068,0-0.136,0.001-0.204,0.003c-0.148,0.004-0.297,0.013-0.443,0.039c-0.148,0.027-0.286,0.07-0.421,0.139%20c-0.132,0.067-0.254,0.155-0.359,0.261c-0.105,0.105-0.193,0.226-0.26,0.359c-0.069,0.135-0.112,0.273-0.139,0.421%20c-0.026,0.146-0.035,0.295-0.039,0.443c-0.002,0.068-0.003,0.136-0.003,0.204c0,0.081,0,0.161,0,0.242l0,0.925l0-0.727v7.689%20h23.564v-7.64L32.194,16.972z'/%3e%3c/g%3e%3c/g%3e%3cpath%20class='st7'%20d='M7.202,7.008v11.068H8.63v-6.605l0-0.925c0-0.081,0-0.161,0-0.242c0-0.068,0.001-0.136,0.003-0.204%20c0.004-0.148,0.013-0.297,0.039-0.443c0.027-0.148,0.07-0.286,0.139-0.421c0.067-0.132,0.155-0.254,0.26-0.359%20C9.177,8.773,9.298,8.685,9.43,8.618c0.135-0.069,0.273-0.112,0.421-0.139c0.146-0.026,0.295-0.035,0.443-0.039%20c0.068-0.002,0.136-0.003,0.204-0.003c0.081,0,0.161,0,0.242,0l0.925,0h18.348l0.071,0c0.081,0,0.161,0,0.242,0%20c0.068,0,0.136,0.001,0.204,0.003c0.148,0.004,0.297,0.013,0.443,0.039c0.148,0.027,0.286,0.07,0.421,0.139%20c0.132,0.067,0.254,0.155,0.359,0.261c0.105,0.105,0.193,0.226,0.26,0.359c0.069,0.135,0.112,0.273,0.139,0.421%20c0.026,0.146,0.035,0.295,0.039,0.443c0.002,0.068,0.003,0.136,0.003,0.204c0,0.081,0,0.161,0,0.242l0,0.925v6.605h1.428V7.008%20H7.202z'/%3e%3cg%20class='st3'%3e%3cimage%20style='overflow:visible;opacity:0.14;'%20width='121'%20height='53'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH0AAAA6CAYAAACd3VbxAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA%20GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABMZJREFUeNrsnQtz0kAUhTfJ8iog%202LdI7VhH6/j//5DjjLa1D22hBQrEXT13uOwECBSTEO6ZObNIKWbvt3v3EdgqJRKJRCKRKA/y1vSa%20JBTmLK6pxc1bcOGu07roMOJxlhqC58RMpRwzHqvQjZs3pxK+sWb2U6iEvdAxPILpuTCiQaQF2mdl%20APspxYzHbchMMYu8ILr4onHFuGq8Y1xAZbyEW6q94IFxH+WQNQD+eJwQfKo/B6wRnwLiVkKpU+jx%20IeLxbPxo3DV+Quz+gtczKqUBfN/40HjPuIZKJVEJAjfCxdLF27LHGsET3EMlR/8ZPNU9QCzKiBN5%20B52khsdFvDapcZ46io1Fx/jG+Mr4GsCfF0GvAfhH41PjXVQySLjF9lGBe5SPAP1g/Mv4DmUH8KdS%202ZqB05BXRnyaiIstG8Z1lK/w81LC2ZE6io3DrfFXPNdDHG1svDg93QL/bPwGrTdIsNWOWU8n4GQL%20+qfxd/gSzz2iRa8TPAEvIAYW8pFxCz4E/Doz9fQkx3XqKDYGP/DcHeJEQ43SC8b0KipzbPwWrVcn%20nKqGgEhpfYCefo/U9Q29i2ehdYJ3gduhrm383vjM+ATQm/h5JcUxneLVweMrMJxqfDpGRctsnKon%20CJ2DHzkm8AfGr1kq9dnvdgH+JWO8xzIfAX9n/Mn4HNBbuIYdBlqzjJj0JG6Ix1WwK7jZRsdo4T6b%20oeqEoVNFdMQSroaKVdjYqZzl3Zgt81aFHiB4TfRwC/wLyjYagru6SWtvI2RcZy4b9RKtPa3KeE6F%20AtYQNFs28dl+n83mexGbOsuk9RImZsfo2ecAfgrg1YjelOamzEJOWm2OvAUVi5r0DSI2dJYdx6uA%20a8fuD/CJs4z1Vba2Xudqk6AvAkPLuy6Wc138e8TWrnHAu++7izR+BrfxXHUTgW869Hk9kvf0sTOx%20G89I994SPXxjgecB+qyxt89SO80DbiJSfhix01Z0lmZ8pn6M/6O0qcDzAj1qls334gNAqmCXqst2%20p3ij0HgdpfSWM3Fr473LKeyyCfQ5kzxaT5MoA9CW6SV2qB6wzqd1fAGNoo419xHW42fYhOFLszRu%20ogj0mDtnivX+BnbNLtS/mw+32NHr4XVlpG3bw/fZDmQLDaDJ1uL+JgPPG/SoiV3AxvoDwL5B+Rtj%20vALQBqDvsbKJLFFW6X2mQKAvCd5nqbuBXsvv2PGeXlOTu2P0GYJyxE6bEujZH+P57dC6muzY9Z0x%20vaQmN0oKanorU+UFeJ6hc0j8/kER8N1P2/BPwQQsW+QK9jZAd+HTnj2l/Kh1uspTGt9m6G4DcG/g%20qLz2aIE+OwNsnXwlEugigS4S6CKBLhLoIoEuEugigS4S6CKBLhLoIoEuEugigS4S6CKBLhLo26g4%20H5eaefKgKHOKxUoveAN+WiOdPGjlSXwzC504jRi/MA50Ak6nOtlvenbY7wj0bEPvgBkdqjgFXs8B%20PsAv2u99XQB0kufIiVaDTufIXajJV7MHHLye01rsV3ntNzzp1EF7JlmSJ0aKVpN7YuQ1WA7jQO8A%20tMIbJHk2rOhlEzn3bNgOgx5m+RRo0ctS/MxToLN+3rtodfBLnffOwWfhLzuI1rxm36S/4SJaHb5o%202/VHgAEAKq1w/7wLXkMAAAAASUVORK5CYII='%20transform='matrix(0.24%200%200%200.24%206.0039%2015.3478)'%3e%3c/image%3e%3cg%3e%3cpath%20class='st8'%20d='M26.985,17.005c-0.153,0-0.307,0-0.46,0.001c-0.129,0.001-0.258,0.002-0.387,0.006%20c-0.281,0.008-0.565,0.024-0.843,0.074c-0.282,0.051-0.545,0.134-0.801,0.264c-0.033,0.017-0.738,0.337-1.372,1.323%20c-0.481,0.749-1.417,1.543-2.727,1.543s-2.246-0.794-2.727-1.543c-0.667-1.039-1.428-1.351-1.373-1.323%20c-0.256-0.131-0.519-0.213-0.801-0.264c-0.278-0.05-0.562-0.067-0.843-0.074c-0.129-0.003-0.258-0.005-0.387-0.006%20c-0.153-0.001-0.307-0.001-0.46-0.001l-6.6,0v9.996h26.42v-9.996L26.985,17.005z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20class='st9'%20d='M41.23,17.661h1.351l2.926,8.057h-1.312l-0.737-2.177h-3.105l-0.743,2.177h-1.312L41.23,17.661z%20M40.688,22.536h2.429l-1.2-3.54h-0.022L40.688,22.536z'/%3e%3cpath%20class='st9'%20d='M46.28,19.844h1.206v1.011h0.028c0.352-0.698,1-1.122,1.837-1.122c1.497,0,2.457,1.173,2.457,3.048v0.006%20c0,1.871-0.966,3.048-2.44,3.048c-0.832,0-1.508-0.424-1.854-1.105h-0.028v2.943H46.28V19.844z%20M50.58,22.787v-0.006%20c0-1.251-0.598-2.015-1.541-2.015c-0.916,0-1.558,0.793-1.558,2.015v0.006c0,1.218,0.648,2.01,1.558,2.01%20C49.987,24.797,50.58,24.026,50.58,22.787z'/%3e%3cpath%20class='st9'%20d='M52.999,19.844h1.206v1.011h0.028c0.352-0.698,0.999-1.122,1.837-1.122c1.497,0,2.457,1.173,2.457,3.048%20v0.006c0,1.871-0.966,3.048-2.44,3.048c-0.832,0-1.508-0.424-1.854-1.105h-0.028v2.943h-1.206V19.844z%20M57.298,22.787v-0.006%20c0-1.251-0.598-2.015-1.541-2.015c-0.916,0-1.558,0.793-1.558,2.015v0.006c0,1.218,0.648,2.01,1.558,2.01%20C56.706,24.797,57.298,24.026,57.298,22.787z'/%3e%3cpath%20class='st9'%20d='M59.59,17.661h1.207v8.057H59.59V17.661z'/%3e%3cpath%20class='st9'%20d='M61.97,22.803v-0.006c0-1.837,1.061-3.065,2.709-3.065s2.658,1.183,2.658,2.948v0.408h-4.159%20c0.022,1.111,0.631,1.758,1.591,1.758c0.715,0,1.19-0.368,1.341-0.809l0.017-0.045h1.144l-0.011,0.062%20c-0.189,0.932-1.095,1.781-2.518,1.781C63.015,25.835,61.97,24.657,61.97,22.803z%20M63.194,22.234h2.948%20c-0.101-1.016-0.67-1.513-1.457-1.513C63.902,20.721,63.299,21.251,63.194,22.234z'/%3e%3cpath%20class='st9'%20d='M71.171,17.661h1.301l1.503,6.315h0.022l1.703-6.315h1.183l1.703,6.315h0.028l1.502-6.315h1.302%20l-2.178,8.057h-1.2l-1.731-6.075H76.28l-1.737,6.075h-1.201L71.171,17.661z'/%3e%3cpath%20class='st9'%20d='M81.761,24.048v-0.011c0-1.022,0.794-1.647,2.184-1.731l1.596-0.095V21.77c0-0.647-0.419-1.039-1.167-1.039%20c-0.698,0-1.128,0.33-1.228,0.799l-0.012,0.051h-1.138l0.005-0.062c0.084-1.011,0.961-1.787,2.407-1.787%20c1.435,0,2.345,0.76,2.345,1.937v4.048h-1.212v-0.927h-0.022c-0.341,0.631-1.021,1.033-1.798,1.033%20C82.549,25.824,81.761,25.104,81.761,24.048z%20M84.05,24.859c0.848,0,1.491-0.575,1.491-1.341V23.06l-1.435,0.09%20c-0.725,0.044-1.128,0.362-1.128,0.859v0.012C82.978,24.534,83.403,24.859,84.05,24.859z'/%3e%3cpath%20class='st9'%20d='M88.074,17.661h1.206v8.057h-1.206V17.661z'/%3e%3cpath%20class='st9'%20d='M90.979,17.661h1.206v8.057h-1.206V17.661z'/%3e%3cpath%20class='st9'%20d='M93.245,22.803v-0.006c0-1.837,1.06-3.065,2.708-3.065c1.648,0,2.659,1.183,2.659,2.948v0.408h-4.16%20c0.022,1.111,0.631,1.758,1.592,1.758c0.715,0,1.189-0.368,1.34-0.809l0.018-0.045h1.144l-0.011,0.062%20c-0.19,0.932-1.095,1.781-2.519,1.781C94.289,25.835,93.245,24.657,93.245,22.803z%20M94.468,22.234h2.949%20c-0.101-1.016-0.67-1.513-1.458-1.513C95.177,20.721,94.574,21.251,94.468,22.234z'/%3e%3cpath%20class='st9'%20d='M100.142,24.171v-3.367h-0.844v-0.961h0.844v-1.53h1.233v1.53h1.1v0.961h-1.1v3.294%20c0,0.598,0.269,0.776,0.776,0.776c0.129,0,0.234-0.012,0.324-0.022v0.932c-0.14,0.022-0.368,0.05-0.614,0.05%20C100.7,25.835,100.142,25.344,100.142,24.171z'/%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20class='st9'%20d='M42.193,12.483h-2.408l-0.608,1.733h-0.793l2.232-6.054h0.747l2.232,6.054h-0.793L42.193,12.483z%20M40.008,11.841h1.964l-0.949-2.702h-0.067L40.008,11.841z'/%3e%3cpath%20class='st9'%20d='M44.074,11.954c0-1.418,0.751-2.341,1.901-2.341c0.629,0,1.162,0.298,1.418,0.793h0.063V7.897h0.722v6.318%20h-0.688v-0.722h-0.067c-0.285,0.503-0.822,0.801-1.448,0.801C44.817,14.295,44.074,13.376,44.074,11.954z%20M44.821,11.954%20c0,1.057,0.495,1.691,1.322,1.691c0.822,0,1.33-0.646,1.33-1.691c0-1.036-0.512-1.691-1.33-1.691%20C45.32,10.263,44.821,10.901,44.821,11.954z'/%3e%3cpath%20class='st9'%20d='M49.342,11.954c0-1.418,0.751-2.341,1.901-2.341c0.629,0,1.162,0.298,1.418,0.793h0.063V7.897h0.722v6.318%20h-0.688v-0.722H52.69c-0.285,0.503-0.822,0.801-1.448,0.801C50.084,14.295,49.342,13.376,49.342,11.954z%20M50.088,11.954%20c0,1.057,0.495,1.691,1.322,1.691c0.822,0,1.33-0.646,1.33-1.691c0-1.036-0.512-1.691-1.33-1.691%20C50.587,10.263,50.088,10.901,50.088,11.954z'/%3e%3cpath%20class='st9'%20d='M58.274,8.522v1.171h1.008v0.604h-1.008v2.56c0,0.533,0.202,0.759,0.672,0.759%20c0.13,0,0.201-0.004,0.336-0.017v0.608c-0.144,0.025-0.281,0.042-0.424,0.042c-0.931,0-1.305-0.344-1.305-1.208v-2.744h-0.729%20V9.693h0.729V8.522H58.274z'/%3e%3cpath%20class='st9'%20d='M60.072,11.954c0-1.456,0.798-2.341,2.086-2.341s2.085,0.885,2.085,2.341c0,1.451-0.797,2.341-2.085,2.341%20S60.072,13.405,60.072,11.954z%20M63.496,11.954c0-1.074-0.483-1.691-1.339-1.691c-0.856,0-1.339,0.617-1.339,1.691%20c0,1.07,0.482,1.691,1.339,1.691C63.013,13.645,63.496,13.024,63.496,11.954z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20width='512px'%20height='512px'%20viewBox='0%200%20512%20512'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M400,148l-21.12-24.57A191.43,191.43,0,0,0,240,64C134,64,48,150,48,256s86,192,192,192A192.09,192.09,0,0,0,421.07,320'%20style='fill:none;stroke:%23000;stroke-linecap:round;stroke-miterlimit:10;stroke-width:32px'/%3e%3cpath%20d='M464,97.42V208a16,16,0,0,1-16,16H337.42c-14.26,0-21.4-17.23-11.32-27.31L436.69,86.1C446.77,76,464,83.16,464,97.42Z'/%3e%3c/svg%3e\"","<script lang=\"ts\">\n import ContentHeader from \"../shared/ContentHeader.svelte\";\n import AppleWalletImg from \"../../images/apple-wallet.svg\";\n import ReloadIcon from \"../../images/reload.svg\";\n import UserInfo from \"../shared/UserInfo.svelte\";\n import type{ TUser } from \"../../../utils/types\";\n\n export let options: {\n title: string;\n description: string;\n QrCodeSvg: string | null;\n errorMessage: string;\n onClick: () => void;\n userInfoOptions: {\n storedValueAlias: string;\n balance?: string;\n userData: TUser | null;\n userAddress: Promise<string>;\n };\n getPass?: () => Promise<void>;\n };\n\n let {\n title,\n description,\n errorMessage,\n onClick,\n userInfoOptions,\n getPass,\n } = options;\n\n $: balance = userInfoOptions.balance;\n $: QrCodeSvg = options.QrCodeSvg;\n</script>\n\n<ContentHeader text={title} {description} />\n<UserInfo options={{ ...userInfoOptions, balance }} />\n<div\n class=\"crtw-flex crtw-flex-col crtw-justify-center crtw-items-center crtw-w-full\"\n>\n {#if QrCodeSvg}\n <div>{@html QrCodeSvg}</div>\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n <div\n class=\"crtw-flex crtw-items-center crtw-cursor-pointer crtw-text-xs crtw-mt-[-10px] crtw-gap-2.5 crtw-font-medium\"\n on:click={onClick}\n role=\"button\"\n tabindex=\"0\"\n >\n <img src={ReloadIcon} alt=\"reload-icon\" class=\"crtw-w-4\" />\n Refresh code\n </div>\n\n {#if getPass}\n <a href=\"/\" on:click|preventDefault={getPass} style=\"margin-top: 10px\">\n <img src={AppleWalletImg} alt=\"Add to Apple Wallet\" />\n </a>\n {/if}\n \n {:else}\n <div class=\"crtw-py-2.5 crtw-text-sm\">{errorMessage}</div>\n {/if}\n</div>\n","<script lang=\"ts\">\n import { configStore, providerStore } from '@src/stores/index'\n\n import { get } from 'svelte/store'\n import { generate } from 'lean-qr'\n import { analytics } from '@lib/mixpanel/mixpanel'\n import { toSvgSource } from 'lean-qr/extras/svg'\n import { fn, userStore, accessTokenStore, clientPublicStore } from '@packages/stores'\n\n import { PassportLocalStorage } from '@packages/utils/enums'\n\n import { ScanTypes } from '@packages/utils/enums'\n import { PassportId } from '@packages/ui'\n import { getAddress } from '@src/passport/blockchain'\n import socketFn from '@lib/ws/socket-io'\n\n const { toastAlert } = get(fn)\n\n let QrCodeSvg: string | null = null\n let message: string = 'Signing your ID...'\n\n $: if ($configStore.chainId) {\n QrCodeSvg = null\n generateCode()\n }\n\n const generateCode = async () => {\n try {\n const date = new Date().toISOString()\n const provider = get(providerStore)\n if(!provider) return\n const signer = await provider.getSigner()\n analytics.track('cp_passport_id', { date, address: await signer.getAddress() })\n const qrData = JSON.stringify({\n scanType: ScanTypes.PASSPORT_ID,\n date,\n sub: $userStore?.sub,\n })\n await socketFn.connectSocketForSignatures($configStore.credenza.generalWssUrl)\n const code = generate(qrData)\n \n QrCodeSvg = toSvgSource(code, { width: 250, height: 250 })\n\n try {\n localStorage.setItem(PassportLocalStorage.QR_CODE, qrData)\n } catch (err) {\n toastAlert('QR code caching failed. Please check your browser settings and enable local storage.')\n }\n } catch (err) {\n console.log(err)\n message = 'QR code generation failed'\n }\n }\n\n const getPass = async () => {\n const { credenza, chainId } = get(configStore)\n const result = await fetch(`${credenza.evmApiUrl}/wallet_pass/${chainId}`, {\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${get(accessTokenStore)}`,\n },\n })\n if (!result.ok) return toastAlert('Failed to get ApplePass')\n const json = await result.json()\n const link = document.createElement('a');\n link.href = json.download_url;\n link.target = '_blank';\n link.click(); \n }\n</script>\n\n<PassportId\n options={{\n title: 'Show ID',\n description: 'This information is used to verify your personal identity.',\n QrCodeSvg,\n errorMessage: message,\n onClick: generateCode,\n userInfoOptions: {\n storedValueAlias: $clientPublicStore?.ui_settings.stored_value_alias,\n userData: $userStore,\n userAddress: getAddress(),\n },\n getPass, \n }}\n/>\n"],"names":["AppleWalletImg","ReloadIcon","options","$.prop","$$props","title","description","errorMessage","onClick","getPass","balance","userInfoOptions","QrCodeSvg","ContentHeader","node","$.get","UserInfo","node_1","div","$.sibling","node_2","$.child","$.reset","__awaiter","thisArg","_arguments","P","generator","toastAlert","get","fn","message","generateCode","date","provider","signer","analytics","qrData","ScanTypes","$userStore","socketFn","code","generate","toSvgSource","err","$.set","credenza","chainId","configStore","result","accessTokenStore","json","link","$configStore","getAddress","$clientPublicStore","PassportId","$$anchor"],"mappings":";;;;;;;AAAA,MAAAA,KAAe,4qoBCAfC,KAAe;;kBCAf;;;;MAgCcC,IAadC,GAAAC,GAAA,WAAA,EAAA;IAGI,OAAAC;AAAA,IACJ,aAAAC;AAAA,IACA,cAAAC;AAAA,IACI,SAAAC;AAAA;IAEA,SAAAC;AAAA,MACEP,EAAO;;;MAEbQ,GAASC,EAAA,OAAA;AAAA;MACJC,GAAGV,EAAA,EAAA,SAAA;AAAA;;;;;;;;;;;;;AAGR,EAAAW,GAAcC,GAAA;AAAA;aAAOT;AAAA;;aAAOC;AAAA;;;;wBAJ5BI,CAAS,kBAKHC,GAAA,SAAAI,EAAAL,CAAA,IAAA;AAAN,IAAAM,GAAMC,GAAA;AAAA;;;;;AACL,MAAAC,IAAAC,EAAAF,GAAA,CAAA,GAAAG,IAAAC,EAAAH,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;AAAAI,SAAAA,EAAAJ,CAAA;AAJD;kBC1DA;;;;AAAiB,MAAAK,IAAA,QAAA,KAAA,aAAA,SAAAC,GAAAC,GAAAC,GAAAC,GAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;UAWN,YAAAC,EAAW,IAAAC,EAAMC,EAAA;AAE1B,MAAAlB,MAA2B,IAAA,GAC3BmB,MAAqB,oBAAmB;AAUxC,QAAAC,IAAA,MAAAT,EAAA,QAAA,QAAA,QAAA,aAAA;AAEM,QAAA;YACAU,KAAA,oBAAA,KAAA,GAAA,YAAA,GACFC,IAAaL;WACbK,EAAM;YACHC,IAAC,MAAQD,EAAA,UAAA;AAAE,MAAAE,GAAA,MAAA,kBAAA,EAAA,MAAAH,GAAA,SAAA,MAAAE,EAAA,WAAA,GAAA;YACdE,IAAY,KAAG,UAAM;AAAA,QACrB,UAAUC,GAAM;AAAA,QAChB,MAAAL;AAAA,aACEM,QAAU,QAAVA,EAAU,MAAA,SAAA,SAAVA,IAAU;AAAA;AAEV,YAAAC,GAAK,6BAAU,EAAA,SAAA,aAAA;YACfC,IAAAC,GAAAL,CAAA;QAEFzB,GAAU+B,GAAYF,KAAO,OAAA,KAAA,QAAA,IAAA,CAAA,CAAA;AAI7B,UAAA;qBACE,WAAqB,SAAqBJ;MAC5C,QAAA;AAAE,QAAAT,EAAU,sFAAE;AAAA;IAEd,SAAAgB,GAAA;AACF,cAAA,IAAAA,CAAA,GAAEC,EAAAd,GAAY,2BAAA;AAAA,IACZ;AAAA,EACA,CAAA,GAEHtB,IAAA,MAAAc,EAAA,QAAA,QAAA,QAAA,aAAA;AAEK,UAAA,EAAA,UAAAuB,GAAqB,SAAAC,MAAAlB,EAAAmB,CAAA,GACnBC,UAAY,SAAYH,EAAI,SAAY,gBAAAC,CAAA,IAAA;AAAA,MAC9C,SAAM;AAAA,QACJ,gBAAS;AAAA,QACP,eAAA,UAAgBlB,EAAAqB,EAAkB,CAAA;AAAA;;AAGpC,QAAA,CAAAD,EAAA,GAAA,QAAArB,EAAA,yBAAA;UACGuB,IAAA,MAASF,EAAA,KAAA,GAAEG,IAAO,SAAW,cAAA,GAAA;AAClC,IAAAA,EAAA,OAAUD,EAAG,cACbC,EAAA,SAAa,UACbA,EAAK,MAAI;AAAA;;IA/CPC,EAA+B,EAAA,YAC/BR,EAAAjC,GAAkB,IAAA,GAEnBoB,EAAI;AAAA;;;;;;;wBARPpB,CAAS,KACTmB,CAAO,eAREuB,CAAW;MAiErB,OAAA;AAAA,MACC,aAAS;AAAA,MACP,aAAA1C,CAAQ;AAAA,MACR,gBAAcmB,CAAK;AAAA,MACnB,SAASC;AAAA,MACT,iBAAc;AAAA,QACd,kBAASuB,KAAY,YAAA;AAAA,QACrB,UAAAhB,EAAiB;AAAA,QACf,aAAAe;;MAEN,SAAA7C;AAAA;AAZC,IAAA+C,GAAAC,GAAA;AAAA;;;;;;;AAFO;"}
|
|
1
|
+
{"version":3,"file":"PassportId-CJfCwaof.js","sources":["../../ui/images/apple-wallet.svg","../../ui/images/reload.svg","../../ui/main/passport-id/PassportId.svelte","../src/app/pages/passport-id/PassportId.svelte"],"sourcesContent":["export default \"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Generator:%20Adobe%20Illustrator%2025.3.1,%20SVG%20Export%20Plug-In%20.%20SVG%20Version:%206.00%20Build%200)%20--%3e%3csvg%20version='1.1'%20id='Artwork'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20width='110.739px'%20height='35.016px'%20viewBox='0%200%20110.739%2035.016'%20style='enable-background:new%200%200%20110.739%2035.016;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e%20.st0{fill:%23A6A6A6;}%20.st1{clip-path:url(%23SVGID_2_);fill:%23DEDBCE;}%20.st2{clip-path:url(%23SVGID_2_);fill-rule:evenodd;clip-rule:evenodd;fill:%2340A5D9;}%20.st3{clip-path:url(%23SVGID_2_);}%20.st4{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFB003;}%20.st5{fill-rule:evenodd;clip-rule:evenodd;fill:%2340C740;}%20.st6{fill-rule:evenodd;clip-rule:evenodd;fill:%23F26D5F;}%20.st7{clip-path:url(%23SVGID_2_);fill-rule:evenodd;clip-rule:evenodd;fill:%23D9D6CC;}%20.st8{fill-rule:evenodd;clip-rule:evenodd;fill:%23DEDBCE;}%20.st9{fill:%23FFFFFF;}%20%3c/style%3e%3cg%3e%3cg%3e%3cpath%20class='st0'%20d='M100.211,0H9.533C9.166,0,8.804,0,8.439,0.002C8.132,0.004,7.829,0.01,7.52,0.015%20C6.854,0.031,6.181,0.072,5.516,0.191C4.847,0.309,4.225,0.509,3.616,0.818C3.017,1.125,2.47,1.523,1.997,1.997%20C1.519,2.47,1.122,3.019,0.819,3.618C0.508,4.226,0.311,4.851,0.194,5.521C0.074,6.183,0.032,6.852,0.015,7.522%20C0.006,7.829,0.005,8.136,0,8.443c0,0.362,0,0.725,0,1.092v14.948c0,0.369,0,0.73,0,1.094c0.005,0.31,0.006,0.611,0.015,0.922%20c0.017,0.67,0.059,1.34,0.179,2.002c0.117,0.67,0.314,1.298,0.625,1.904c0.303,0.596,0.7,1.144,1.178,1.614%20c0.473,0.477,1.02,0.875,1.618,1.178c0.609,0.312,1.231,0.51,1.901,0.631c0.664,0.119,1.338,0.158,2.004,0.177%20c0.309,0.007,0.613,0.011,0.919,0.011c0.366,0.002,0.728,0.002,1.095,0.002h90.678c0.359,0,0.724,0,1.084-0.002%20c0.305,0,0.617-0.004,0.922-0.011c0.67-0.018,1.342-0.058,2-0.177c0.67-0.121,1.293-0.318,1.908-0.631%20c0.597-0.304,1.144-0.701,1.617-1.178c0.476-0.47,0.873-1.018,1.181-1.614c0.307-0.606,0.506-1.234,0.619-1.904%20c0.123-0.662,0.162-1.332,0.186-2.002c0.004-0.311,0.004-0.611,0.004-0.922c0.008-0.363,0.008-0.724,0.008-1.094V9.534%20c0-0.366,0-0.729-0.008-1.092c0-0.307,0-0.614-0.004-0.921c-0.023-0.67-0.062-1.34-0.186-2.002%20c-0.113-0.67-0.312-1.295-0.619-1.903c-0.309-0.599-0.705-1.147-1.181-1.621c-0.473-0.474-1.019-0.872-1.617-1.179%20c-0.615-0.31-1.238-0.51-1.908-0.627c-0.658-0.119-1.33-0.16-2-0.177c-0.305-0.005-0.617-0.011-0.922-0.013%20C100.936,0,100.571,0,100.211,0L100.211,0z'/%3e%3c/g%3e%3cpath%20d='M100.211,0.65c0.358,0,0.722,0,1.08,0.002c0.246,0.002,0.498,0.006,0.746,0.01l0.164,0.003%20c0.529,0.013,1.222,0.044,1.904,0.167c0.619,0.108,1.184,0.294,1.723,0.565c0.539,0.277,1.028,0.633,1.455,1.061%20c0.423,0.42,0.78,0.91,1.059,1.452c0.271,0.539,0.454,1.101,0.56,1.729c0.117,0.63,0.153,1.288,0.175,1.891%20c0.004,0.304,0.004,0.609,0.004,0.926c0.008,0.358,0.008,0.716,0.008,1.078v14.948c0,0.364,0,0.721-0.008,1.094%20c0,0.308,0,0.606-0.004,0.899c-0.022,0.617-0.058,1.275-0.177,1.916c-0.105,0.622-0.288,1.184-0.555,1.713%20c-0.284,0.549-0.641,1.037-1.066,1.456c-0.423,0.427-0.91,0.782-1.449,1.056c-0.531,0.27-1.097,0.456-1.729,0.571%20c-0.655,0.119-1.329,0.151-1.898,0.167c-0.3,0.007-0.607,0.011-0.911,0.011c-0.358,0.002-0.722,0.002-1.08,0.002H9.533%20c-0.365,0-0.726,0-1.095-0.002c-0.301,0-0.6-0.004-0.901-0.01c-0.572-0.016-1.245-0.048-1.906-0.167%20c-0.633-0.114-1.196-0.301-1.722-0.571c-0.539-0.273-1.027-0.629-1.457-1.063c-0.422-0.415-0.777-0.901-1.055-1.447%20c-0.268-0.523-0.453-1.086-0.564-1.724c-0.124-0.681-0.155-1.374-0.169-1.904c-0.006-0.208-0.009-0.411-0.011-0.616L0.65,25.576%20v-1.094V9.534l0-1.081l0.004-0.299C0.656,7.95,0.659,7.746,0.665,7.539c0.013-0.528,0.045-1.221,0.17-1.907%20c0.11-0.63,0.294-1.192,0.564-1.721c0.275-0.543,0.63-1.032,1.058-1.455C2.883,2.029,3.373,1.673,3.91,1.398%20C4.446,1.125,5.008,0.94,5.631,0.831C6.315,0.708,7.009,0.678,7.53,0.664l0.198-0.003c0.239-0.004,0.476-0.008,0.714-0.009%20C8.806,0.65,9.168,0.65,9.533,0.65H100.211'/%3e%3cg%3e%3cdefs%3e%3cpath%20id='SVGID_1_'%20d='M33.265,23.054l0,0.265c0,0.127,0,0.254-0.001,0.381c-0.001,0.107-0.002,0.214-0.005,0.321%20c-0.006,0.233-0.02,0.468-0.061,0.698c-0.042,0.234-0.111,0.452-0.219,0.664c-0.106,0.209-0.245,0.4-0.411,0.565%20c-0.166,0.166-0.357,0.304-0.565,0.411c-0.212,0.108-0.43,0.177-0.664,0.219c-0.23,0.041-0.465,0.055-0.698,0.061%20c-0.107,0.003-0.214,0.004-0.321,0.005c-0.127,0.001-0.254,0.001-0.381,0.001l-1.459-0.001l1.358,0.001H10.985l1.358-0.001%20l-1.459,0.001c-0.127,0-0.254,0-0.381-0.001c-0.107-0.001-0.214-0.002-0.321-0.005c-0.233-0.006-0.468-0.02-0.698-0.061%20c-0.234-0.042-0.451-0.111-0.664-0.219c-0.209-0.106-0.4-0.245-0.565-0.411c-0.166-0.166-0.304-0.357-0.411-0.565%20c-0.108-0.212-0.177-0.43-0.219-0.664c-0.041-0.23-0.055-0.465-0.061-0.698C7.561,23.914,7.56,23.807,7.56,23.7%20c-0.001-0.127-0.001-0.254-0.001-0.381l0-0.208V10.899l0,1.25l0-1.458c0-0.127,0-0.254,0.001-0.381%20c0.001-0.107,0.002-0.214,0.005-0.321c0.006-0.233,0.02-0.468,0.061-0.698c0.042-0.234,0.111-0.452,0.219-0.664%20c0.106-0.209,0.245-0.4,0.411-0.565c0.166-0.166,0.357-0.304,0.565-0.411c0.212-0.108,0.43-0.177,0.664-0.219%20c0.23-0.041,0.465-0.055,0.698-0.061c0.107-0.003,0.214-0.004,0.321-0.005c0.127-0.001,0.254-0.001,0.381-0.001l1.458,0h17.496%20l0.1,0c0.127,0,0.254,0,0.381,0.001c0.107,0.001,0.214,0.002,0.321,0.005c0.233,0.006,0.468,0.02,0.698,0.061%20c0.234,0.042,0.451,0.111,0.664,0.219c0.209,0.106,0.4,0.245,0.565,0.411c0.166,0.166,0.304,0.357,0.411,0.565%20c0.108,0.212,0.177,0.43,0.219,0.664c0.041,0.23,0.055,0.465,0.061,0.698c0.003,0.107,0.004,0.214,0.005,0.321%20c0.001,0.127,0.001,0.254,0.001,0.381l0,0.265V23.054z'/%3e%3c/defs%3e%3cclipPath%20id='SVGID_2_'%3e%3cuse%20xlink:href='%23SVGID_1_'%20style='overflow:visible;'/%3e%3c/clipPath%3e%3crect%20x='8.352'%20y='8.169'%20class='st1'%20width='24.099'%20height='16.78'/%3e%3crect%20x='8.63'%20y='8.436'%20class='st2'%20width='23.564'%20height='9.997'/%3e%3cg%20class='st3'%3e%3cimage%20style='overflow:visible;opacity:0.17;'%20width='109'%20height='52'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHEAAAA6CAYAAACH4bZ/AAAACXBIWXMAAC4jAAAuIwF4pT92AAAA%20GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAArlJREFUeNrsnG1vEkEUhXeXBSpU%20FCW+6zdN/P8/qGk00WhFY6CWsqD3JmfS6bpLoWGXNnlOckJ32NkPPNw7MzT3JglCCKE9KN3zfWh/%20+rsPiGn0Ghs1D6/sW0H08czckXNdZ4BsHODavDIXel3dBDOvGAuwuuYj8wO5r/uJyGYBOryF+Vy+%200Fhtis1rItCBHZvH5qfmx7ruKzJZJ5tZ/wLA3+Yz+ZdgFttATKMIdGDPzW/lFwJ6JIgAbAZkIWAO%2075P5RO95hP6pS6vlSOwI1FjwPprfm18pGoHYDsRv5pHGF/IyWh9rIWa6Hpgn5ncC+MH80vzQ3GNN%20bBTiSmvgSDzm5p9KqXOB/C8a89IxIqRSh/ja/EZROFEU5gBsVGttIjOlz+/mz+YvArnQPbUQO4q0%20Y21mngneSA/u6eGo2Wh0FkMtXxOxGEWbyuWmdBrWQ5/wRB5FEcgZsR2FYAogx1rK4v1IGkdjVorE%20vib45EdaH7sAbE1picVAPIYCW7mpzCrS6VATB5smokZBhk1mTzC7m35oyUrfgFwT+noAafTwEdkp%20pdGkDuLOE1FrIG/850N224no7ogjAxAREBEQERCBiICIgIiACEQERAREBEQgIiAiICIgAhEBEQER%20ARGICIgIiAiIQET3RXnN+M4NcdDetPNnn1c8YJ1cb4gTeqhQl9EexPC5ryIeWzUjCgC9nNiL/73Q%20fxbdB8R2Ic7E4EJMakHmJYCXmjg1fxU4Lzal0LRdiB6B52IwFZPLOpB5ib53bPBGOKca934qoVYc%20tafQCmUqFmdiU2wDcSZwiR7gnTS6CbWKh9jYLMXjh5jMIojXQMbtMP244SXe3u5kmFw1XSCVHi6l%20LpVW54rEypSalv4OBf/B1OsfFuQ62qkWdWtiWnFNufc9OzNualqL7hZMhBBCzeqfAAMARUSzZ7uC%20WKkAAAAASUVORK5CYII='%20transform='matrix(0.24%200%200%200.24%207.4439%209.1078)'%3e%3c/image%3e%3cg%3e%3cpath%20class='st4'%20d='M32.194,12.688c0-0.081,0-0.161,0-0.242c0-0.068-0.001-0.136-0.003-0.204%20c-0.004-0.148-0.013-0.297-0.039-0.443c-0.027-0.148-0.07-0.286-0.139-0.421c-0.067-0.132-0.155-0.254-0.26-0.359%20c-0.105-0.105-0.226-0.193-0.359-0.261c-0.135-0.069-0.273-0.112-0.421-0.139c-0.146-0.026-0.295-0.035-0.443-0.039%20c-0.068-0.002-0.136-0.003-0.204-0.003c-0.081,0-0.161,0-0.242,0l-0.066,0H11.665l-0.925,0c-0.081,0-0.161,0-0.242,0%20c-0.068,0-0.136,0.001-0.204,0.003c-0.148,0.004-0.297,0.013-0.443,0.039c-0.148,0.027-0.286,0.07-0.421,0.139%20c-0.132,0.067-0.254,0.155-0.359,0.261c-0.105,0.105-0.193,0.226-0.26,0.359c-0.069,0.135-0.112,0.273-0.139,0.421%20c-0.026,0.146-0.035,0.295-0.039,0.443c-0.002,0.068-0.003,0.136-0.003,0.204c0,0.081,0,0.161,0,0.242l0,0.925l0-0.727v7.689%20h23.564v-7.64L32.194,12.688z'/%3e%3c/g%3e%3c/g%3e%3cg%20class='st3'%3e%3cimage%20style='overflow:visible;opacity:0.16;'%20width='109'%20height='52'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHEAAAA6CAYAAACH4bZ/AAAACXBIWXMAAC4jAAAuIwF4pT92AAAA%20GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAqFJREFUeNrsnNtu00AURW3HdkJK%20UxAX8YAqUN/4//9BCCQQlIBQUtrGSZkj7ZGmxpNLZU9baS1pK7Xr8UNWzxkn1UyWAQBAD+Q9XQP9%20c9OHxLwjkEZeOwdL9MJGSqnXApFJBG5c1i6NXte7ZJYRgXZ+4jJVxjqHyOEFmrwrlwvlUueiLbZL%20Yilxz1xeKrNAJPPkcPOfF/jH5Vz5LZnNPhJ9C51I4FuXdy6nEjnV9QgcTmQjYSbvs8tH/c4q9G+s%20rXZJNFmvXN67fHA5c3mNxKQSv6v7ZapMyyqYHzsl5prvKpcjVd6pBJ7peCLJSBxO4lpz4Ew+li6/%201FKXEvlfNZaR+fC5qu+NqtLaa60bw3BY23yi99na5w+XLy5fJfJK19xsq8RaEk8kbqbjWlVKFQ5f%20jbm6oX+wfBE8WI5UjdF2OpKspxo0019FFbRRJA6P9+BFWlc8bk1neViNRWvwWBJPgoElApMRftEy%20Vhc8ltA69kxSdFTiVCKn2wbCoCILFU8tmdW2Yio6vqmp9hkIySpytGs6K+46EJKJ3PkPiOKuA+Hh%20wOc+JAISAYmARCQCEgGJgEQkAhIBiYBEJAISAYmARCQCEgGJgEQkAhIBiYBEJMJjoYycP3hDHOiN%20g9/7suMGm+z2hjh+DxXWZaST6N/3deBjr82IvEBbTmyL/22h/yK4DolpJS7k4FJOoiLLlsBrDZy7%20fJM4W2zKQtO0Eq0CL+RgLifXMZFly77t2GAb4XzSedtPxa8Vh3T4rVDmcnEuN80+EhcSl+kGtuzb%2075pBJaZ9sFnJx085WQQSb4nMg1e/BYrtmHGkNlrRSu+1pa7UVpeqxM6Wmrd+9gv+fdhV8X5FboIn%201SY2J+Ydxyz3fmSfGWOSkPfwZAIAwLD8E2AAOBuy81Gw3f4AAAAASUVORK5CYII='%20transform='matrix(0.24%200%200%200.24%207.4439%2011.2678)'%3e%3c/image%3e%3cg%3e%3cpath%20class='st5'%20d='M32.194,14.83c0-0.081,0-0.161,0-0.242c0-0.068-0.001-0.136-0.003-0.204%20c-0.004-0.148-0.013-0.297-0.039-0.443c-0.027-0.148-0.07-0.286-0.139-0.421c-0.067-0.132-0.155-0.254-0.26-0.359%20c-0.105-0.105-0.226-0.193-0.359-0.261c-0.135-0.069-0.273-0.112-0.421-0.139c-0.146-0.026-0.295-0.035-0.443-0.039%20c-0.068-0.002-0.136-0.003-0.204-0.003c-0.081,0-0.161,0-0.242,0l-0.067,0H11.665l-0.925,0c-0.081,0-0.161,0-0.242,0%20c-0.068,0-0.136,0.001-0.204,0.003c-0.148,0.004-0.297,0.013-0.443,0.039c-0.148,0.027-0.286,0.07-0.421,0.139%20c-0.132,0.067-0.254,0.155-0.359,0.261c-0.105,0.105-0.193,0.226-0.26,0.359c-0.069,0.135-0.112,0.273-0.139,0.421%20c-0.026,0.146-0.035,0.295-0.039,0.443c-0.002,0.068-0.003,0.136-0.003,0.204c0,0.081,0,0.161,0,0.242l0,0.925l0-0.727v7.689%20h23.564v-7.64L32.194,14.83z'/%3e%3c/g%3e%3c/g%3e%3cg%20class='st3'%3e%3cimage%20style='overflow:visible;opacity:0.17;'%20width='109'%20height='52'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHEAAAA6CAYAAACH4bZ/AAAACXBIWXMAAC4jAAAuIwF4pT92AAAA%20GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAvBJREFUeNrsnFtv00AQhX1Ngkkv%20EYW+ICQET/z//4NASEBbUi5JyMVOmJHOiMF4mzRJnVQ6RzrazdbrB3+and1KO1FEURRFUZQqvscz%20caBP7aYV3NTfGaKBSlybwokbp3YDuIQreOnGV5vAjO+AZ8BycSbuwF20GSNyLxFYiufiGdo5xhYO%207J0wswBAHe+JC/FTtNbvo98B5IggtwIYAZBCm4hH4jH6E9efAmpwiW2CmAHSufhC/Fw8EJ+JT9H2%20EZEpAe4EskIEKsAf4p9ob8XX4hvxd8AsN4FoS2gPAF+KX4tfiV9gTCGeuEhkXtw9H1ok/gJEhXYl%20/ih+j2f1ud+hZbUJYoHoU4DvxG/FlwD4BJCZE/efE6cApSC/IlgiROrM5cggRNt95sh7F4hABfgG%20vwu3yUkJcK8gK7eZmSBdxciLt4jOMf7+XzRmgXw4wBJ6CYDnyIGJg0eA+wNpu/8l2hhRqXnxk/gz%20QM7c0SMYiR1APHM5sABALp8P+w+XFRhEWA1tY/kMHGwjuai/IKnlww5C+dTlwLwWgdTDwfQcDOQA%20+bEXSmOJ66eg3Uck2kRG4GFAdrEKngBoJ3Ska4rEouFAT4Dtgkxcnuy6DWW8DqJtbPJNJlKtRWS6%207jSQbDuRag3k2tNAsu1E6niU8BMQIkWIFCFShEiIFCFShEgRIiFShEgRIkWIhEgRIkWIFCESIkWI%20FCFShEiIFCFShEgRIiFSj0RZYHzVYKod3fvbZw0v8BWOyuhvDRXey2gPon33yvHYqBiRAdTrxFrJ%20QS/6j9xzhNguRCtONAWTIMisBnCOiUPxF4DTy6a8aNouRI3ACRgMwWQeApnV6GvFBq1i9AHjWhTH%207opT7alCBA7B4gZsyk0gjgAuwgv02nce8a7iITY2C/D4BiYjB/EfkL5+qZVA0YoZVpQv51J60CXV%20ihONEYmNS2pc69uFfzNrtx0W5NLtVMtQTowbfvO69yM7M4YgEd7xwaQo6qj1R4ABAM5x0/sxgGqp%20AAAAAElFTkSuQmCC'%20transform='matrix(0.24%200%200%200.24%207.4439%2013.4278)'%3e%3c/image%3e%3cg%3e%3cpath%20class='st6'%20d='M32.194,16.972c0-0.081,0-0.161,0-0.242c0-0.068-0.001-0.136-0.003-0.204%20c-0.004-0.148-0.013-0.297-0.039-0.443c-0.027-0.148-0.07-0.286-0.139-0.421c-0.067-0.132-0.155-0.254-0.26-0.359%20c-0.105-0.105-0.226-0.193-0.359-0.261c-0.135-0.069-0.273-0.112-0.421-0.139c-0.146-0.026-0.295-0.035-0.443-0.039%20c-0.068-0.002-0.136-0.003-0.204-0.003c-0.081,0-0.161,0-0.242,0l-0.067,0H11.665l-0.925,0c-0.081,0-0.161,0-0.242,0%20c-0.068,0-0.136,0.001-0.204,0.003c-0.148,0.004-0.297,0.013-0.443,0.039c-0.148,0.027-0.286,0.07-0.421,0.139%20c-0.132,0.067-0.254,0.155-0.359,0.261c-0.105,0.105-0.193,0.226-0.26,0.359c-0.069,0.135-0.112,0.273-0.139,0.421%20c-0.026,0.146-0.035,0.295-0.039,0.443c-0.002,0.068-0.003,0.136-0.003,0.204c0,0.081,0,0.161,0,0.242l0,0.925l0-0.727v7.689%20h23.564v-7.64L32.194,16.972z'/%3e%3c/g%3e%3c/g%3e%3cpath%20class='st7'%20d='M7.202,7.008v11.068H8.63v-6.605l0-0.925c0-0.081,0-0.161,0-0.242c0-0.068,0.001-0.136,0.003-0.204%20c0.004-0.148,0.013-0.297,0.039-0.443c0.027-0.148,0.07-0.286,0.139-0.421c0.067-0.132,0.155-0.254,0.26-0.359%20C9.177,8.773,9.298,8.685,9.43,8.618c0.135-0.069,0.273-0.112,0.421-0.139c0.146-0.026,0.295-0.035,0.443-0.039%20c0.068-0.002,0.136-0.003,0.204-0.003c0.081,0,0.161,0,0.242,0l0.925,0h18.348l0.071,0c0.081,0,0.161,0,0.242,0%20c0.068,0,0.136,0.001,0.204,0.003c0.148,0.004,0.297,0.013,0.443,0.039c0.148,0.027,0.286,0.07,0.421,0.139%20c0.132,0.067,0.254,0.155,0.359,0.261c0.105,0.105,0.193,0.226,0.26,0.359c0.069,0.135,0.112,0.273,0.139,0.421%20c0.026,0.146,0.035,0.295,0.039,0.443c0.002,0.068,0.003,0.136,0.003,0.204c0,0.081,0,0.161,0,0.242l0,0.925v6.605h1.428V7.008%20H7.202z'/%3e%3cg%20class='st3'%3e%3cimage%20style='overflow:visible;opacity:0.14;'%20width='121'%20height='53'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH0AAAA6CAYAAACd3VbxAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA%20GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABMZJREFUeNrsnQtz0kAUhTfJ8iog%202LdI7VhH6/j//5DjjLa1D22hBQrEXT13uOwECBSTEO6ZObNIKWbvt3v3EdgqJRKJRCKRKA/y1vSa%20JBTmLK6pxc1bcOGu07roMOJxlhqC58RMpRwzHqvQjZs3pxK+sWb2U6iEvdAxPILpuTCiQaQF2mdl%20APspxYzHbchMMYu8ILr4onHFuGq8Y1xAZbyEW6q94IFxH+WQNQD+eJwQfKo/B6wRnwLiVkKpU+jx%20IeLxbPxo3DV+Quz+gtczKqUBfN/40HjPuIZKJVEJAjfCxdLF27LHGsET3EMlR/8ZPNU9QCzKiBN5%20B52khsdFvDapcZ46io1Fx/jG+Mr4GsCfF0GvAfhH41PjXVQySLjF9lGBe5SPAP1g/Mv4DmUH8KdS%202ZqB05BXRnyaiIstG8Z1lK/w81LC2ZE6io3DrfFXPNdDHG1svDg93QL/bPwGrTdIsNWOWU8n4GQL%20+qfxd/gSzz2iRa8TPAEvIAYW8pFxCz4E/Doz9fQkx3XqKDYGP/DcHeJEQ43SC8b0KipzbPwWrVcn%20nKqGgEhpfYCefo/U9Q29i2ehdYJ3gduhrm383vjM+ATQm/h5JcUxneLVweMrMJxqfDpGRctsnKon%20CJ2DHzkm8AfGr1kq9dnvdgH+JWO8xzIfAX9n/Mn4HNBbuIYdBlqzjJj0JG6Ix1WwK7jZRsdo4T6b%20oeqEoVNFdMQSroaKVdjYqZzl3Zgt81aFHiB4TfRwC/wLyjYagru6SWtvI2RcZy4b9RKtPa3KeE6F%20AtYQNFs28dl+n83mexGbOsuk9RImZsfo2ecAfgrg1YjelOamzEJOWm2OvAUVi5r0DSI2dJYdx6uA%20a8fuD/CJs4z1Vba2Xudqk6AvAkPLuy6Wc138e8TWrnHAu++7izR+BrfxXHUTgW869Hk9kvf0sTOx%20G89I994SPXxjgecB+qyxt89SO80DbiJSfhix01Z0lmZ8pn6M/6O0qcDzAj1qls334gNAqmCXqst2%20p3ij0HgdpfSWM3Fr473LKeyyCfQ5kzxaT5MoA9CW6SV2qB6wzqd1fAGNoo419xHW42fYhOFLszRu%20ogj0mDtnivX+BnbNLtS/mw+32NHr4XVlpG3bw/fZDmQLDaDJ1uL+JgPPG/SoiV3AxvoDwL5B+Rtj%20vALQBqDvsbKJLFFW6X2mQKAvCd5nqbuBXsvv2PGeXlOTu2P0GYJyxE6bEujZH+P57dC6muzY9Z0x%20vaQmN0oKanorU+UFeJ6hc0j8/kER8N1P2/BPwQQsW+QK9jZAd+HTnj2l/Kh1uspTGt9m6G4DcG/g%20qLz2aIE+OwNsnXwlEugigS4S6CKBLhLoIoEuEugigS4S6CKBLhLoIoEuEugigS4S6CKBLhLo26g4%20H5eaefKgKHOKxUoveAN+WiOdPGjlSXwzC504jRi/MA50Ak6nOtlvenbY7wj0bEPvgBkdqjgFXs8B%20PsAv2u99XQB0kufIiVaDTufIXajJV7MHHLye01rsV3ntNzzp1EF7JlmSJ0aKVpN7YuQ1WA7jQO8A%20tMIbJHk2rOhlEzn3bNgOgx5m+RRo0ctS/MxToLN+3rtodfBLnffOwWfhLzuI1rxm36S/4SJaHb5o%202/VHgAEAKq1w/7wLXkMAAAAASUVORK5CYII='%20transform='matrix(0.24%200%200%200.24%206.0039%2015.3478)'%3e%3c/image%3e%3cg%3e%3cpath%20class='st8'%20d='M26.985,17.005c-0.153,0-0.307,0-0.46,0.001c-0.129,0.001-0.258,0.002-0.387,0.006%20c-0.281,0.008-0.565,0.024-0.843,0.074c-0.282,0.051-0.545,0.134-0.801,0.264c-0.033,0.017-0.738,0.337-1.372,1.323%20c-0.481,0.749-1.417,1.543-2.727,1.543s-2.246-0.794-2.727-1.543c-0.667-1.039-1.428-1.351-1.373-1.323%20c-0.256-0.131-0.519-0.213-0.801-0.264c-0.278-0.05-0.562-0.067-0.843-0.074c-0.129-0.003-0.258-0.005-0.387-0.006%20c-0.153-0.001-0.307-0.001-0.46-0.001l-6.6,0v9.996h26.42v-9.996L26.985,17.005z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20class='st9'%20d='M41.23,17.661h1.351l2.926,8.057h-1.312l-0.737-2.177h-3.105l-0.743,2.177h-1.312L41.23,17.661z%20M40.688,22.536h2.429l-1.2-3.54h-0.022L40.688,22.536z'/%3e%3cpath%20class='st9'%20d='M46.28,19.844h1.206v1.011h0.028c0.352-0.698,1-1.122,1.837-1.122c1.497,0,2.457,1.173,2.457,3.048v0.006%20c0,1.871-0.966,3.048-2.44,3.048c-0.832,0-1.508-0.424-1.854-1.105h-0.028v2.943H46.28V19.844z%20M50.58,22.787v-0.006%20c0-1.251-0.598-2.015-1.541-2.015c-0.916,0-1.558,0.793-1.558,2.015v0.006c0,1.218,0.648,2.01,1.558,2.01%20C49.987,24.797,50.58,24.026,50.58,22.787z'/%3e%3cpath%20class='st9'%20d='M52.999,19.844h1.206v1.011h0.028c0.352-0.698,0.999-1.122,1.837-1.122c1.497,0,2.457,1.173,2.457,3.048%20v0.006c0,1.871-0.966,3.048-2.44,3.048c-0.832,0-1.508-0.424-1.854-1.105h-0.028v2.943h-1.206V19.844z%20M57.298,22.787v-0.006%20c0-1.251-0.598-2.015-1.541-2.015c-0.916,0-1.558,0.793-1.558,2.015v0.006c0,1.218,0.648,2.01,1.558,2.01%20C56.706,24.797,57.298,24.026,57.298,22.787z'/%3e%3cpath%20class='st9'%20d='M59.59,17.661h1.207v8.057H59.59V17.661z'/%3e%3cpath%20class='st9'%20d='M61.97,22.803v-0.006c0-1.837,1.061-3.065,2.709-3.065s2.658,1.183,2.658,2.948v0.408h-4.159%20c0.022,1.111,0.631,1.758,1.591,1.758c0.715,0,1.19-0.368,1.341-0.809l0.017-0.045h1.144l-0.011,0.062%20c-0.189,0.932-1.095,1.781-2.518,1.781C63.015,25.835,61.97,24.657,61.97,22.803z%20M63.194,22.234h2.948%20c-0.101-1.016-0.67-1.513-1.457-1.513C63.902,20.721,63.299,21.251,63.194,22.234z'/%3e%3cpath%20class='st9'%20d='M71.171,17.661h1.301l1.503,6.315h0.022l1.703-6.315h1.183l1.703,6.315h0.028l1.502-6.315h1.302%20l-2.178,8.057h-1.2l-1.731-6.075H76.28l-1.737,6.075h-1.201L71.171,17.661z'/%3e%3cpath%20class='st9'%20d='M81.761,24.048v-0.011c0-1.022,0.794-1.647,2.184-1.731l1.596-0.095V21.77c0-0.647-0.419-1.039-1.167-1.039%20c-0.698,0-1.128,0.33-1.228,0.799l-0.012,0.051h-1.138l0.005-0.062c0.084-1.011,0.961-1.787,2.407-1.787%20c1.435,0,2.345,0.76,2.345,1.937v4.048h-1.212v-0.927h-0.022c-0.341,0.631-1.021,1.033-1.798,1.033%20C82.549,25.824,81.761,25.104,81.761,24.048z%20M84.05,24.859c0.848,0,1.491-0.575,1.491-1.341V23.06l-1.435,0.09%20c-0.725,0.044-1.128,0.362-1.128,0.859v0.012C82.978,24.534,83.403,24.859,84.05,24.859z'/%3e%3cpath%20class='st9'%20d='M88.074,17.661h1.206v8.057h-1.206V17.661z'/%3e%3cpath%20class='st9'%20d='M90.979,17.661h1.206v8.057h-1.206V17.661z'/%3e%3cpath%20class='st9'%20d='M93.245,22.803v-0.006c0-1.837,1.06-3.065,2.708-3.065c1.648,0,2.659,1.183,2.659,2.948v0.408h-4.16%20c0.022,1.111,0.631,1.758,1.592,1.758c0.715,0,1.189-0.368,1.34-0.809l0.018-0.045h1.144l-0.011,0.062%20c-0.19,0.932-1.095,1.781-2.519,1.781C94.289,25.835,93.245,24.657,93.245,22.803z%20M94.468,22.234h2.949%20c-0.101-1.016-0.67-1.513-1.458-1.513C95.177,20.721,94.574,21.251,94.468,22.234z'/%3e%3cpath%20class='st9'%20d='M100.142,24.171v-3.367h-0.844v-0.961h0.844v-1.53h1.233v1.53h1.1v0.961h-1.1v3.294%20c0,0.598,0.269,0.776,0.776,0.776c0.129,0,0.234-0.012,0.324-0.022v0.932c-0.14,0.022-0.368,0.05-0.614,0.05%20C100.7,25.835,100.142,25.344,100.142,24.171z'/%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20class='st9'%20d='M42.193,12.483h-2.408l-0.608,1.733h-0.793l2.232-6.054h0.747l2.232,6.054h-0.793L42.193,12.483z%20M40.008,11.841h1.964l-0.949-2.702h-0.067L40.008,11.841z'/%3e%3cpath%20class='st9'%20d='M44.074,11.954c0-1.418,0.751-2.341,1.901-2.341c0.629,0,1.162,0.298,1.418,0.793h0.063V7.897h0.722v6.318%20h-0.688v-0.722h-0.067c-0.285,0.503-0.822,0.801-1.448,0.801C44.817,14.295,44.074,13.376,44.074,11.954z%20M44.821,11.954%20c0,1.057,0.495,1.691,1.322,1.691c0.822,0,1.33-0.646,1.33-1.691c0-1.036-0.512-1.691-1.33-1.691%20C45.32,10.263,44.821,10.901,44.821,11.954z'/%3e%3cpath%20class='st9'%20d='M49.342,11.954c0-1.418,0.751-2.341,1.901-2.341c0.629,0,1.162,0.298,1.418,0.793h0.063V7.897h0.722v6.318%20h-0.688v-0.722H52.69c-0.285,0.503-0.822,0.801-1.448,0.801C50.084,14.295,49.342,13.376,49.342,11.954z%20M50.088,11.954%20c0,1.057,0.495,1.691,1.322,1.691c0.822,0,1.33-0.646,1.33-1.691c0-1.036-0.512-1.691-1.33-1.691%20C50.587,10.263,50.088,10.901,50.088,11.954z'/%3e%3cpath%20class='st9'%20d='M58.274,8.522v1.171h1.008v0.604h-1.008v2.56c0,0.533,0.202,0.759,0.672,0.759%20c0.13,0,0.201-0.004,0.336-0.017v0.608c-0.144,0.025-0.281,0.042-0.424,0.042c-0.931,0-1.305-0.344-1.305-1.208v-2.744h-0.729%20V9.693h0.729V8.522H58.274z'/%3e%3cpath%20class='st9'%20d='M60.072,11.954c0-1.456,0.798-2.341,2.086-2.341s2.085,0.885,2.085,2.341c0,1.451-0.797,2.341-2.085,2.341%20S60.072,13.405,60.072,11.954z%20M63.496,11.954c0-1.074-0.483-1.691-1.339-1.691c-0.856,0-1.339,0.617-1.339,1.691%20c0,1.07,0.482,1.691,1.339,1.691C63.013,13.645,63.496,13.024,63.496,11.954z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20width='512px'%20height='512px'%20viewBox='0%200%20512%20512'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M400,148l-21.12-24.57A191.43,191.43,0,0,0,240,64C134,64,48,150,48,256s86,192,192,192A192.09,192.09,0,0,0,421.07,320'%20style='fill:none;stroke:%23000;stroke-linecap:round;stroke-miterlimit:10;stroke-width:32px'/%3e%3cpath%20d='M464,97.42V208a16,16,0,0,1-16,16H337.42c-14.26,0-21.4-17.23-11.32-27.31L436.69,86.1C446.77,76,464,83.16,464,97.42Z'/%3e%3c/svg%3e\"","<script lang=\"ts\">\n import ContentHeader from \"../shared/ContentHeader.svelte\";\n import AppleWalletImg from \"../../images/apple-wallet.svg\";\n import ReloadIcon from \"../../images/reload.svg\";\n import UserInfo from \"../shared/UserInfo.svelte\";\n import type{ TUser } from \"../../../utils/types\";\n\n export let options: {\n title: string;\n description: string;\n QrCodeSvg: string | null;\n errorMessage: string;\n onClick: () => void;\n userInfoOptions: {\n storedValueAlias: string;\n balance?: string;\n userData: TUser | null;\n userAddress: Promise<string>;\n };\n getPass?: () => Promise<void>;\n };\n\n let {\n title,\n description,\n errorMessage,\n onClick,\n userInfoOptions,\n getPass,\n } = options;\n\n $: balance = userInfoOptions.balance;\n $: QrCodeSvg = options.QrCodeSvg;\n</script>\n\n<ContentHeader text={title} {description} />\n<UserInfo options={{ ...userInfoOptions, balance }} />\n<div\n class=\"crtw-flex crtw-flex-col crtw-justify-center crtw-items-center crtw-w-full\"\n>\n {#if QrCodeSvg}\n <div>{@html QrCodeSvg}</div>\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n <div\n class=\"crtw-flex crtw-items-center crtw-cursor-pointer crtw-text-xs crtw-mt-[-10px] crtw-gap-2.5 crtw-font-medium\"\n on:click={onClick}\n role=\"button\"\n tabindex=\"0\"\n >\n <img src={ReloadIcon} alt=\"reload-icon\" class=\"crtw-w-4\" />\n Refresh code\n </div>\n\n {#if getPass}\n <a href=\"/\" on:click|preventDefault={getPass} style=\"margin-top: 10px\">\n <img src={AppleWalletImg} alt=\"Add to Apple Wallet\" />\n </a>\n {/if}\n \n {:else}\n <div class=\"crtw-py-2.5 crtw-text-sm\">{errorMessage}</div>\n {/if}\n</div>\n","<script lang=\"ts\">\n import { configStore, providerStore } from '@src/stores/index'\n\n import { get } from 'svelte/store'\n import { generate } from 'lean-qr'\n import { analytics } from '@lib/mixpanel/mixpanel'\n import { toSvgSource } from 'lean-qr/extras/svg'\n import { fn, userStore, accessTokenStore, clientPublicStore } from '@packages/stores'\n\n import { PassportLocalStorage } from '@packages/utils/enums'\n\n import { ScanTypes } from '@packages/utils/enums'\n import { PassportId } from '@packages/ui'\n import { getAddress } from '@src/passport/blockchain'\n import socketFn from '@lib/ws/socket-io'\n\n const { toastAlert } = get(fn)\n\n let QrCodeSvg: string | null = null\n let message: string = 'Signing your ID...'\n\n $: if ($configStore.chainId) {\n QrCodeSvg = null\n generateCode()\n }\n\n const generateCode = async () => {\n try {\n const date = new Date().toISOString()\n const provider = get(providerStore)\n if(!provider) return\n const signer = await provider.getSigner()\n analytics.track('cp_passport_id', { date, address: await signer.getAddress() })\n const qrData = JSON.stringify({\n scanType: ScanTypes.PASSPORT_ID,\n date,\n sub: $userStore?.sub,\n })\n await socketFn.connectSocketForSignatures($configStore.credenza.generalWssUrl)\n const code = generate(qrData)\n \n QrCodeSvg = toSvgSource(code, { width: 250, height: 250 })\n\n try {\n localStorage.setItem(PassportLocalStorage.QR_CODE, qrData)\n } catch (err) {\n toastAlert('QR code caching failed. Please check your browser settings and enable local storage.')\n }\n } catch (err) {\n console.log(err)\n message = 'QR code generation failed'\n }\n }\n\n const getPass = async () => {\n const { credenza, chainId } = get(configStore)\n const result = await fetch(`${credenza.evmApiUrl}/wallet_pass/${chainId}`, {\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${get(accessTokenStore)}`,\n },\n })\n if (!result.ok) return toastAlert('Failed to get ApplePass')\n const json = await result.json()\n const link = document.createElement('a');\n link.href = json.download_url;\n link.target = '_blank';\n link.click(); \n }\n</script>\n\n<PassportId\n options={{\n title: 'Show ID',\n description: 'This information is used to verify your personal identity.',\n QrCodeSvg,\n errorMessage: message,\n onClick: generateCode,\n userInfoOptions: {\n storedValueAlias: $clientPublicStore?.ui_settings.stored_value_alias,\n userData: $userStore,\n userAddress: getAddress(),\n },\n getPass, \n }}\n/>\n"],"names":["AppleWalletImg","ReloadIcon","options","$.prop","$$props","title","description","errorMessage","onClick","getPass","balance","userInfoOptions","QrCodeSvg","ContentHeader","node","$.get","UserInfo","node_1","div","$.sibling","node_2","$.child","$.reset","__awaiter","thisArg","_arguments","P","generator","toastAlert","get","fn","message","generateCode","date","provider","signer","analytics","qrData","ScanTypes","$userStore","socketFn","code","generate","toSvgSource","err","$.set","credenza","chainId","configStore","result","accessTokenStore","json","link","$configStore","getAddress","$clientPublicStore","PassportId","$$anchor"],"mappings":";;;;;;;AAAA,MAAAA,KAAe,4qoBCAfC,KAAe;;kBCAf;;;;MAgCcC,IAadC,GAAAC,GAAA,WAAA,EAAA;IAGI,OAAAC;AAAA,IACJ,aAAAC;AAAA,IACA,cAAAC;AAAA,IACI,SAAAC;AAAA;IAEA,SAAAC;AAAA,MACEP,EAAO;;;MAEbQ,GAASC,EAAA,OAAA;AAAA;MACJC,GAAGV,EAAA,EAAA,SAAA;AAAA;;;;;;;;;;;;;AAGR,EAAAW,GAAcC,GAAA;AAAA;aAAOT;AAAA;;aAAOC;AAAA;;;;wBAJ5BI,CAAS,kBAKHC,GAAA,SAAAI,EAAAL,CAAA,IAAA;AAAN,IAAAM,GAAMC,GAAA;AAAA;;;;;AACL,MAAAC,IAAAC,EAAAF,GAAA,CAAA,GAAAG,IAAAC,EAAAH,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;AAAAI,SAAAA,EAAAJ,CAAA;AAJD;kBC1DA;;;;AAAiB,MAAAK,IAAA,QAAA,KAAA,aAAA,SAAAC,GAAAC,GAAAC,GAAAC,GAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;UAWN,YAAAC,EAAW,IAAAC,EAAMC,EAAA;AAE1B,MAAAlB,MAA2B,IAAA,GAC3BmB,MAAqB,oBAAmB;AAUxC,QAAAC,IAAA,MAAAT,EAAA,QAAA,QAAA,QAAA,aAAA;AAEM,QAAA;YACAU,KAAA,oBAAA,KAAA,GAAA,YAAA,GACFC,IAAaL;WACbK,EAAM;YACHC,IAAC,MAAQD,EAAA,UAAA;AAAE,MAAAE,GAAA,MAAA,kBAAA,EAAA,MAAAH,GAAA,SAAA,MAAAE,EAAA,WAAA,GAAA;YACdE,IAAY,KAAG,UAAM;AAAA,QACrB,UAAUC,GAAM;AAAA,QAChB,MAAAL;AAAA,aACEM,QAAU,QAAVA,EAAU,MAAA,SAAA,SAAVA,IAAU;AAAA;AAEV,YAAAC,GAAK,6BAAU,EAAA,SAAA,aAAA;YACfC,IAAAC,GAAAL,CAAA;QAEFzB,GAAU+B,GAAYF,KAAO,OAAA,KAAA,QAAA,IAAA,CAAA,CAAA;AAI7B,UAAA;qBACE,WAAqB,SAAqBJ;MAC5C,QAAA;AAAE,QAAAT,EAAU,sFAAE;AAAA;IAEd,SAAAgB,GAAA;AACF,cAAA,IAAAA,CAAA,GAAEC,EAAAd,GAAY,2BAAA;AAAA,IACZ;AAAA,EACA,CAAA,GAEHtB,IAAA,MAAAc,EAAA,QAAA,QAAA,QAAA,aAAA;AAEK,UAAA,EAAA,UAAAuB,GAAqB,SAAAC,MAAAlB,EAAAmB,CAAA,GACnBC,UAAY,SAAYH,EAAI,SAAY,gBAAAC,CAAA,IAAA;AAAA,MAC9C,SAAM;AAAA,QACJ,gBAAS;AAAA,QACP,eAAA,UAAgBlB,EAAAqB,EAAkB,CAAA;AAAA;;AAGpC,QAAA,CAAAD,EAAA,GAAA,QAAArB,EAAA,yBAAA;UACGuB,IAAA,MAASF,EAAA,KAAA,GAAEG,IAAO,SAAW,cAAA,GAAA;AAClC,IAAAA,EAAA,OAAUD,EAAG,cACbC,EAAA,SAAa,UACbA,EAAK,MAAI;AAAA;;IA/CPC,EAA+B,EAAA,YAC/BR,EAAAjC,GAAkB,IAAA,GAEnBoB,EAAI;AAAA;;;;;;;wBARPpB,CAAS,KACTmB,CAAO,eAREuB,CAAW;MAiErB,OAAA;AAAA,MACC,aAAS;AAAA,MACP,aAAA1C,CAAQ;AAAA,MACR,gBAAcmB,CAAK;AAAA,MACnB,SAASC;AAAA,MACT,iBAAc;AAAA,QACd,kBAASuB,KAAY,YAAA;AAAA,QACrB,UAAAhB,EAAiB;AAAA,QACf,aAAAe;;MAEN,SAAA7C;AAAA;AAZC,IAAA+C,GAAAC,GAAA;AAAA;;;;;;;AAFO;"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { c as me, m as at, p as B, f as K, i as re, k as $e, e as Ue, b as U, d as Te, u as fe, t as Ce, r as le, h as we, s as it, g as Se, a as Ie, j as st, n as Fe, o as ye, q as rt } from "./AssetItem-
|
|
2
|
-
import { a as Ne, o as pt } from "./index-client-
|
|
3
|
-
import { t as be, w as q, x as j, y as de, r as ve, l as F, m as N, bI as G, n as oe, D as C, v as O, o as xe, z as V, E as t, V as ce, C as H, A as ot, p as ue, bJ as De, K as Q, P as X, J, by as ze, L as Ae, I as ke, bK as We, bu as Le, a0 as qe, _ as je, bL as Ve, M as ne, O as ie, Q as se, bM as ut, bN as Ye, Z as Je, $ as pe, a1 as Ke, bO as Pe, bP as _e, bB as yt, bQ as lt, bA as dt } from "./index-
|
|
4
|
-
import { a as ct } from "./App-
|
|
5
|
-
import { L as Oe } from "./Loader-
|
|
6
|
-
import { B as mt } from "./ButtonBack-
|
|
1
|
+
import { c as me, m as at, p as B, f as K, i as re, k as $e, e as Ue, b as U, d as Te, u as fe, t as Ce, r as le, h as we, s as it, g as Se, a as Ie, j as st, n as Fe, o as ye, q as rt } from "./AssetItem-A44ZDHuh.js";
|
|
2
|
+
import { a as Ne, o as pt } from "./index-client-xFBzYbnZ.js";
|
|
3
|
+
import { t as be, w as q, x as j, y as de, r as ve, l as F, m as N, bI as G, n as oe, D as C, v as O, o as xe, z as V, E as t, V as ce, C as H, A as ot, p as ue, bJ as De, K as Q, P as X, J, by as ze, L as Ae, I as ke, bK as We, bu as Le, a0 as qe, _ as je, bL as Ve, M as ne, O as ie, Q as se, bM as ut, bN as Ye, Z as Je, $ as pe, a1 as Ke, bO as Pe, bP as _e, bB as yt, bQ as lt, bA as dt } from "./index-h4gUPhx9.js";
|
|
4
|
+
import { a as ct } from "./App-VHOLCm-t.js";
|
|
5
|
+
import { L as Oe } from "./Loader-Des-vEcw.js";
|
|
6
|
+
import { B as mt } from "./ButtonBack-5YDSngEn.js";
|
|
7
7
|
import { p as Tt } from "./event-modifiers-D4czZCB6.js";
|
|
8
|
-
import { B as Ze } from "./Button-
|
|
8
|
+
import { B as Ze } from "./Button-CkjrEtPk.js";
|
|
9
9
|
const ft = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='22'%20height='22'%20viewBox='0%200%2024%2024'%3e%3cpath%20fill='%23bbb'%20d='M17%209.761v-4.761c0-2.761-2.238-5-5-5-2.763%200-5%202.239-5%205v4.761c-1.827%201.466-3%203.714-3%206.239%200%204.418%203.582%208%208%208s8-3.582%208-8c0-2.525-1.173-4.773-3-6.239zm-8-4.761c0-1.654%201.346-3%203-3s3%201.346%203%203v3.587c-.927-.376-1.938-.587-3-.587s-2.073.211-3%20.587v-3.587zm4%2011.723v2.277h-2v-2.277c-.596-.347-1-.984-1-1.723%200-1.104.896-2%202-2s2%20.896%202%202c0%20.738-.404%201.376-1%201.723z'/%3e%3c/svg%3e";
|
|
10
10
|
var bt = K('<button type="submit"><!></button>');
|
|
11
11
|
const vt = {
|
|
@@ -586,7 +586,7 @@ function et(d, a) {
|
|
|
586
586
|
k(!1);
|
|
587
587
|
}), W = (v) => y(void 0, void 0, void 0, function* () {
|
|
588
588
|
try {
|
|
589
|
-
const { processPayment: s } = yield import("./Stripe.service-
|
|
589
|
+
const { processPayment: s } = yield import("./Stripe.service-BysmXEDZ.js"), r = yield s(v);
|
|
590
590
|
yield Rt(r, w(), n());
|
|
591
591
|
} catch (s) {
|
|
592
592
|
f(`Payment error: ${s.message || s}`, "failure"), ne.set({ errorMessage: s.message || s }), ie.set(se.ERROR), Q(X.ERROR, { error: s });
|
|
@@ -946,7 +946,7 @@ function nt(d, a) {
|
|
|
946
946
|
{
|
|
947
947
|
var te = (s) => {
|
|
948
948
|
var r = Ie(), A = ue(r);
|
|
949
|
-
ct(A, () => import("./ProgressVideo-
|
|
949
|
+
ct(A, () => import("./ProgressVideo-DFSJz_EH.js"), null, (g, L) => {
|
|
950
950
|
var e = Ie(), u = ue(e);
|
|
951
951
|
rt(u, () => t(L).default, (i, x) => {
|
|
952
952
|
x(i, {});
|
|
@@ -1047,4 +1047,4 @@ export {
|
|
|
1047
1047
|
Kt as g,
|
|
1048
1048
|
Et as r
|
|
1049
1049
|
};
|
|
1050
|
-
//# sourceMappingURL=Payment-
|
|
1050
|
+
//# sourceMappingURL=Payment-BXvub930.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Payment-Cg6CLBP-.js","sources":["../../ui/images/lock.svg","../../ui/main/payment/PaymentSwitchButton.svelte","../../ui/main/payment/Payment.svelte","../../ui/main/payment/Stripe.svelte","../../ui/main/payment/CredenzaBalance.svelte","../src/app/pages/payment/stripe/wallet-pay/WalletPay.svelte","../src/app/pages/payment/stripe/Stripe.styles.ts","../../utils/lib/scripts/scripts.ts","../../utils/lib/orders/index.ts","../src/app/pages/payment/Payment.service.ts","../src/app/pages/payment/stripe/Stripe.svelte","../src/app/pages/payment/credenza-balance/CredenzaBalance.svelte","../src/app/pages/payment/Payment.svelte"],"sourcesContent":["export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='22'%20height='22'%20viewBox='0%200%2024%2024'%3e%3cpath%20fill='%23bbb'%20d='M17%209.761v-4.761c0-2.761-2.238-5-5-5-2.763%200-5%202.239-5%205v4.761c-1.827%201.466-3%203.714-3%206.239%200%204.418%203.582%208%208%208s8-3.582%208-8c0-2.525-1.173-4.773-3-6.239zm-8-4.761c0-1.654%201.346-3%203-3s3%201.346%203%203v3.587c-.927-.376-1.938-.587-3-.587s-2.073.211-3%20.587v-3.587zm4%2011.723v2.277h-2v-2.277c-.596-.347-1-.984-1-1.723%200-1.104.896-2%202-2s2%20.896%202%202c0%20.738-.404%201.376-1%201.723z'/%3e%3c/svg%3e\"","<style>\n .active {\n background-color: #ffff;\n font-weight: 500;\n color: #000;\n }\n .btn-disabled {\n pointer-events: none;\n background-color: #d0d2d5;\n }\n</style>\n\n<script lang=\"ts\">\n import Loader from '../shared/Loader.svelte'\n \n export let onClick: (...args: unknown[]) => unknown\n export let text: string\n export let disabled: boolean = false\n export let isLoading: boolean = false\n export let isActive: boolean = false\n</script>\n\n<button\n type=\"submit\"\n class=\"crtw-flex crtw-justify-center crtw-items-center crtw-w-full crtw-h-[50px] crtw-cursor-pointer crtw-border crtw-border-gray-300\n crtw-rounded crtw-font-['poppins'] crtw-text-gray-600\"\n class:btn-disabled={disabled || isLoading}\n class:active={isActive}\n on:click|preventDefault={onClick}\n>\n {#if isLoading}\n <Loader />\n {:else}\n {text}\n {/if}\n</button>","<script lang=\"ts\">\n import { PaymentViews } from '../../../utils/enums';\n import ButtonBack from '../shared/inputs/button-back/ButtonBack.svelte';\n import LockIcon from '../../images/lock.svg'\n import type { TUser } from '../../../utils/types';\n import PaymentSwitchButton from './PaymentSwitchButton.svelte';\n\n export let isLoading: boolean\n export let options: {\n user: TUser| null\n title: string\n subtitle?: string\n onBackClick: () => void\n isCardDisabled: boolean\n isCredezaValueDisabled: boolean\n }\n \n let { user, title, subtitle, onBackClick, isCardDisabled } = options\n let activeTab = isCardDisabled ? PaymentViews.CREDENZA_BALANCE : PaymentViews.CREDIT_CARD\n\n $: isCredezaValueDisabled = options.isCredezaValueDisabled\n</script>\n\n<div class=\"cpui-payment crtw-text-left crtw-w-full\" class:crtw-hidden={isLoading}>\n <div class=\"crtw-text-right crtw-text-[13px] crtw-text-gray-400 crtw-mb-6\">\n <div class=\"crtw-break-words\">{user?.email || user?.pending?.email || ''}</div>\n <div>{user?.phone || user?.pending?.phone || ''}</div>\n </div>\n <div class=\"crtw-font-bold crtw-text-xl\">{title}</div>\n <div class=\"crtw-flex crtw-justify-between crtw-mb-3 crtw-text-gray-600 crtw-font-bold\">\n {#if subtitle}\n <div>{subtitle}</div>\n {/if}\n </div>\n <div class=\"crtw-flex crtw-bg-gray-200 crtw-rounded-md crtw-p-px\">\n <PaymentSwitchButton\n text=\"Credit Card\"\n onClick={() => (activeTab = PaymentViews.CREDIT_CARD)}\n isActive={activeTab === PaymentViews.CREDIT_CARD}\n disabled={isCardDisabled}\n />\n <PaymentSwitchButton\n text=\"Credenza Balance\"\n onClick={() => (activeTab = PaymentViews.CREDENZA_BALANCE)}\n isActive={activeTab === PaymentViews.CREDENZA_BALANCE}\n disabled={isCredezaValueDisabled}\n />\n </div>\n <hr class=\"crtw-block crtw-border-t-2 crtw-border-gray-200 crtw-w-1/2 crtw-mx-auto crtw-mt-3.5 crtw-mb-[15px]\" />\n {#if activeTab === PaymentViews.CREDIT_CARD}\n <slot name=\"card-provider-switch\" />\n <slot name=\"credit-card\" />\n {:else if activeTab === PaymentViews.CREDENZA_BALANCE}\n <slot name=\"cred-balance\" />\n {/if}\n <div class=\"crtw-flex crtw-w-full crtw-justify-center crtw-items-center\">\n <img src={LockIcon} alt=\"\" /><span class=\"crtw-text-sm crtw-text-gray-400 crtw-ml-1\"\n >Payments are secure and encrypted</span\n >\n </div>\n <div class=\"crtw-mt-1.5\">\n <ButtonBack onClick={onBackClick} />\n </div>\n</div>\n","<script lang=\"ts\">\n import Button from \"../shared/inputs/button/Button.svelte\";\n\n export let options: {\n isCardFocused: boolean;\n onPay: () => void;\n currencySymbol?: string;\n feeToApply?: number;\n };\n export let isPaymentDisabled: boolean;\n export let isLoading: boolean;\n export let totalToPay: string;\n\n const MINIMUM_AMOUNT = 0.5;\n const isTotalTooLow = +totalToPay < MINIMUM_AMOUNT;\n\n let { isCardFocused, onPay, currencySymbol = \"$\" } = options;\n</script>\n\n<div class=\"crtw-text-base crtw-mb-1.5\">Credit card details</div>\n<div\n id=\"cpui-card-element\"\n class=\"crtw-border crtw-border-gray-300 crtw-rounded crtw-px-2.5 crtw-py-4 crtw-mb-2.5 crtw-w-full\"\n style={isCardFocused ? \"border-color: #121e2b\" : \"\"}\n/>\n<!-- Used to display Element errors. -->\n<div id=\"card-errors\" role=\"alert\" />\n<Button\n text={isTotalTooLow\n ? `Minimum card payment: ${currencySymbol}${MINIMUM_AMOUNT}`\n : `Pay ${currencySymbol}${totalToPay}`}\n onClick={onPay}\n disabled={isPaymentDisabled || isTotalTooLow}\n bind:isLoading\n/>\n{#if options.feeToApply}\n <span class=\"crtw-text-xs crtw-text-stone-200\"\n >Fee of {options.feeToApply * 100}% is automatically added.</span\n >\n{/if}\n","<script lang=\"ts\">\n import Button from \"../shared/inputs/button/Button.svelte\";\n\n export let options: {\n formattedBalance: string\n balance: number\n credAlias: string\n onPay: () => void\n onGetCred: () => void\n totalToPay: string\n isLoading: boolean\n isPaymentDisabled: boolean\n }\n\n let { credAlias, onPay, onGetCred } = options\n\n $: isLoading = options.isLoading\n $: isPaymentDisabled = options.isPaymentDisabled\n $: formattedBalance = options.formattedBalance\n $: totalToPay = options.totalToPay\n $: balance = options.balance\n</script>\n\n<div class=\"crtw-w-full crtw-text-center crtw-my-5\">\n <div class=\"crtw-text-3xl crtw-text-black crtw-font-bold\">\n {#if Number(totalToPay) > balance}\n INSUFFICIENT FUNDS\n {:else}\n {formattedBalance} {credAlias}\n {/if}\n \n </div>\n <div class=\"crtw-mb-5 crtw-text-gray-600\">\n {#if Number(totalToPay) > balance}\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n You do not have enough stored value to make this payment. \n <span\n class=\"crtw-text-black crtw-cursor-pointer\"\n role=\"button\"\n tabindex=\"0\"\n on:click={onGetCred}\n >\n Click to get some {credAlias}\n </span>\n {:else}\n Your balance after purchase\n {/if}\n </div>\n\n <Button\n text={`Pay ${totalToPay} ${credAlias}`}\n onClick={onPay}\n disabled={isPaymentDisabled}\n {isLoading}\n />\n</div>","<script lang=\"ts\">\n import { onMount } from 'svelte'\n import { dispatch, PassportEvents } from '@lib/events/events'\n\n export let doPayment: (stripeTokenId: string) => Promise<void>\n export let stripe: Window['Stripe']\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n export let stripeElements: any\n export let priceCents: number\n export let isLoading: boolean\n\n onMount(async () => {\n const paymentRequest = stripe.paymentRequest({\n country: 'US',\n currency: 'usd',\n total: {\n label: 'Apple/Google payment',\n amount: Math.ceil(priceCents),\n // amount: priceCents,\n },\n requestPayerName: true,\n requestPayerEmail: true,\n })\n const canMakePayment = await paymentRequest.canMakePayment()\n if (!canMakePayment) return\n\n const walletPayElement = document.getElementById('ctui-wallet-pay')\n if (walletPayElement) walletPayElement.style.display = 'crtw-block'\n\n const prButton = stripeElements.create('paymentRequestButton', {\n paymentRequest: paymentRequest,\n style: {\n paymentRequestButton: {\n height: '48px',\n },\n },\n })\n prButton.mount('#ctui-payment-request-button')\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n paymentRequest.on('token', async (event: any) => {\n isLoading = true\n try {\n await doPayment(event.token.id)\n await event.complete('success')\n } catch (err) {\n await event.complete('error')\n dispatch(PassportEvents.ERROR, { error: err })\n }\n isLoading = false\n })\n })\n</script>\n\n<div id=\"ctui-wallet-pay\" class=\"crtw-w-full crtw-my-4\" style=\"dispay: none;\">\n <div id=\"ctui-payment-request-button\"></div>\n</div>\n","export const stripeStyles = {\n base: {\n color: '#121e2b',\n fontSize: '12px',\n '::placeholder': {\n color: '#d9d9d9',\n },\n },\n invalid: {\n color: '#fa755a',\n },\n}\n","export const loadScript = (src: string) => {\n return new Promise((resolve, reject) => {\n const script = document.createElement('script')\n script.src = src\n document.body.appendChild(script)\n script.addEventListener('load', () => resolve(script))\n script.addEventListener('error', () => reject(script))\n })\n}\n","import { get } from \"svelte/store\";\nimport { accessTokenStore } from \"../../../stores\";\nimport type { TPaymentReturn } from \"@packages/utils/types\";\n\nexport const getOrderDetails = async (\n apiUrl: string,\n orderId: string,\n maxRetries = 10,\n): Promise<TPaymentReturn> => {\n let attempts = 0;\n\n while (attempts < maxRetries) {\n const res = await fetch(`${apiUrl}/orders/${orderId}`, {\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${get(accessTokenStore)}`,\n },\n method: \"GET\",\n });\n\n if (!res.ok) throw new Error(\"Failed to get order details\");\n\n const orderData = await res.json();\n\n // If status is not NEW, return the data\n if (orderData.status !== \"NEW\") {\n return orderData;\n }\n\n // If status is NEW, wait and retry\n attempts++;\n if (attempts < maxRetries) {\n // Wait 2 seconds before retrying\n await new Promise((resolve) => setTimeout(resolve, 2000));\n }\n }\n\n // If we've exceeded max retries, throw an error\n throw new Error(`Order attempts exceeded. Please try again later.`);\n};\nexport const getCompmletedOrderDetails = async (\n apiUrl: string,\n orderId: string,\n maxRetries = 5,\n) => {\n let attempts = 0;\n\n while (attempts < maxRetries) {\n const res = await fetch(`${apiUrl}/orders/completed/${orderId}`, {\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${get(accessTokenStore)}`,\n },\n method: \"GET\",\n });\n\n if (res.status === 204) {\n attempts++;\n if (attempts < maxRetries) {\n continue;\n } else {\n throw new Error(\"No content received after multiple attempts\");\n }\n }\n\n if (!res.ok) throw new Error(\"Failed to get order details\");\n\n const data = await res.json();\n if (data.status === \"PAYMENT_ERROR\") {\n throw new Error(`Order failed: ${data.status}`);\n }\n return data;\n }\n};\n\nexport const validateTxs = (txs: string[] | null[], message: string) => {\n if (txs.every((item) => item === null)) {\n throw new Error(`All transactions failed. \\n${message}`);\n }\n};\n\nexport const validateOrderItems = (orders: TPaymentReturn[\"items\"]): string => {\n const errorMessages = orders\n .filter((item) => item.error)\n .map(\n (item) =>\n `Name: ${item.metadata?.name || item.directive.resource_id}, reason: ${item.error}`,\n )\n .join(\"\\n\");\n if (orders?.every((item) => item.status === \"ERROR\")) {\n throw new Error(`All transactions failed.}`);\n }\n return errorMessages;\n};\n","import { get } from 'svelte/store'\nimport { accessTokenStore, fn } from '@packages/stores'\nimport { ReceiptTarget } from '@packages/utils/enums'\nimport { configStore } from '@src/stores/config'\nimport { getClientConfigByClientId } from '@lib/clients'\nimport type { TLicensePaymentData, TMembershipPaymentData, TTokenPaymentData } from './oders.types'\nimport { dispatch, PassportEvents } from '@lib/events/events'\nimport { TransactionTypes } from '@packages/utils/enums'\nimport { pageOptsStore, pageStore, userStore } from '@packages/stores'\nimport { Pages } from '@packages/utils/enums'\nimport { analytics } from '@lib/mixpanel/mixpanel'\nimport { waitVideoEnded } from '@components/progress/ProgressVideo.service'\nimport { getAddress } from '@src/passport/blockchain'\nimport { validateOrderItems, validateTxs } from '@lib/orders'\nimport type { TPaymentReturn } from '@packages/utils/types'\n\n\nexport const requestReceipt = async ({\n hash,\n stripeChargeId,\n title,\n subtitle,\n amount,\n currency,\n}: {\n hash?: string\n stripeChargeId?: string\n title?: string\n subtitle?: string\n amount?: number\n currency?: string\n}) => {\n const { credenza, receiptTarget, clientId } = get(configStore)\n\n const targets = !receiptTarget \n ? [ReceiptTarget.EMAIL]\n : receiptTarget.filter(target => {\n const user = get(userStore);\n if(!user) return;\n return user[target]\n }\n );\n let successCount = 0;\n \n for (const target of targets) {\n const result = await fetch(`${credenza.evmApiUrl}/contracts/receipt`, {\n method: 'POST',\n body: JSON.stringify({\n ...(hash ? { tx: hash } : { charge_id: stripeChargeId }),\n ...(amount ? { amount } : {}),\n ...(currency ? { currency } : {}),\n target,\n title,\n subtitle,\n source: getClientConfigByClientId(clientId).name,\n }),\n headers: {\n Authorization: `Bearer ${get(accessTokenStore)}`,\n 'Content-Type': 'application/json',\n },\n })\n\n if (result.ok) {\n successCount++;\n } else {\n console.warn(`Failed to send receipt to ${target}:`, result.status)\n }\n }\n\n return successCount > 0\n}\n\nexport const afterPaymentProcess = async (res: TPaymentReturn, priceCents: number, purchaseConfig: {\n title: string\n subtitle: string\n tokens: TTokenPaymentData[]\n memberships: TMembershipPaymentData[]\n licenses: TLicensePaymentData[]\n}) => {\n const { toastAlert } = get(fn)\n const config = get(configStore)\n\n const failedOrdersMessage = validateOrderItems(res.items)\n if (!!purchaseConfig.tokens?.length || !!purchaseConfig.memberships?.length) validateTxs(res.chain_txs, failedOrdersMessage)\n \n dispatch(PassportEvents.PAYMENT, {\n type: TransactionTypes.CARD,\n results: { ...res, tokens: purchaseConfig.tokens, memberships: purchaseConfig.memberships, licenses: purchaseConfig.licenses },\n })\n toastAlert('Your payment was successful')\n dispatch(PassportEvents.RECHECK_BALANCE, res.chain_txs)\n\n const user = get(userStore)\n if (user) {\n analytics.track('cp_payment_fiat', {\n $email: user.email,\n $phone: user.phone,\n chain: config.chainId,\n clientId: config.clientId,\n address: await getAddress(),\n location: window.location.href,\n tokens: purchaseConfig?.tokens,\n memberships: purchaseConfig?.memberships,\n licenses: purchaseConfig?.licenses,\n total: priceCents / 100,\n description: (purchaseConfig?.title ?? '') + `(${purchaseConfig?.subtitle ?? ''})`,\n })\n }\n\n await waitVideoEnded()\n\n if (priceCents === 0) pageOptsStore.set({ subtitle: 'Your claim was successful!', receipt: false })\n\n if (failedOrdersMessage) {\n pageOptsStore.set({\n title: 'Done!',\n subtitle: 'Your payment was partly successful',\n orders: res.items,\n })\n }\n pageStore.set(Pages.PAYMENT_RESULT)\n}","<script lang=\"ts\">\n import WalletPay from './wallet-pay/WalletPay.svelte'\n import { onMount } from 'svelte'\n import { get } from 'svelte/store'\n import { stripeStyles } from '@pages/payment/stripe/Stripe.styles'\n import { dispatch, PassportEvents } from '@lib/events/events'\n import { loadScript } from '@lib/scripts/scripts'\n import { pageOptsStore, pageStore, fn } from '@packages/stores'\n import { Pages } from '@packages/utils/enums'\n import { Stripe as StripeComponent } from '@packages/ui'\n import { configStore } from '@src/stores/config'\n import { getClientConfigByClientId } from '@lib/clients'\n import { afterPaymentProcess } from '../Payment.service'\n\n export let priceCents: number\n export let isLoading: boolean\n export let isPriceLoading: boolean\n export let feeToApply: number = 0\n\n const { toastAlert } = get(fn)\n const config = get(configStore)\n\n let Stripe: Window['Stripe']\n let stripe: Window['Stripe']\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let stripeElements: any\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let cardElement: any\n let isButtonActive: boolean\n\n let isCardFocused = false\n onMount(async () => {\n try {\n if (!Stripe) {\n if (!window.Stripe) {\n await loadScript('https://js.stripe.com/v3/')\n if (!window.Stripe) throw {}\n }\n Stripe = window.Stripe\n }\n } catch (err) {\n return console.log('Please include stripe to use payments.')\n }\n if (stripe) return\n\n const clientName = getClientConfigByClientId(config.clientId).name\n stripe = Stripe(config.stripe.pk[clientName] ?? config.stripe.pk.DEFAULT)\n stripeElements = stripe.elements()\n cardElement = stripeElements.create('card', { style: stripeStyles })\n cardElement.mount('#cpui-card-element')\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n cardElement.on('change', (event: any) => {\n isButtonActive = event.complete && !event.error\n })\n cardElement.on('focus', () => (isCardFocused = true))\n cardElement.on('blur', () => (isCardFocused = false))\n })\n\n const handleSubmit = async () => {\n try {\n if (!isButtonActive) return\n isLoading = true\n const result = await stripe.createToken(cardElement)\n if (result.error) throw result.error\n await doPayment(result.token.id)\n } catch (err) {\n dispatch(PassportEvents.ERROR, { error: err })\n }\n isLoading = false\n }\n\n const doPayment = async (tokenId: string) => {\n try {\n const { processPayment } = await import('@pages/payment/stripe/Stripe.service')\n\n const res = await processPayment(tokenId)\n await afterPaymentProcess(res, priceCents, $pageOptsStore)\n } catch (err) {\n toastAlert(`Payment error: ${err.message || err}`, 'failure')\n pageOptsStore.set({ errorMessage: err.message || err })\n pageStore.set(Pages.ERROR)\n dispatch(PassportEvents.ERROR, { error: err })\n }\n }\n\n $: totalToPay = (Math.ceil(priceCents) / 100).toFixed(2)\n $: isPaymentDisabled = !isButtonActive || isLoading || isPriceLoading\n</script>\n\n<StripeComponent\n bind:isPaymentDisabled\n bind:isLoading\n bind:totalToPay\n options={{\n isCardFocused,\n onPay: handleSubmit,\n feeToApply,\n }}\n/>\n{#if stripe && stripeElements}\n <WalletPay {doPayment} {stripe} {stripeElements} {priceCents} bind:isLoading />\n{/if}\n","<script lang=\"ts\">\n import { ethers } from '@credenza3/core-web-evm-ext'\n import { get } from 'svelte/store'\n import { onMount } from 'svelte'\n import { Pages } from '@packages/utils/enums'\n import { clientPublicStore, fn, pageOptsStore, pageStore, userStore } from '@packages/stores'\n import { dispatch, PassportEvents } from '@lib/events/events'\n import { TransactionTypes } from '@packages/utils/enums'\n import { sendContractTx, getTxScanAddress } from '@src/lib/tx/tx'\n import { requestReceipt } from '@pages/payment/Payment.service'\n import { analytics } from '@lib/mixpanel/mixpanel'\n import { waitVideoEnded } from '@components/progress/ProgressVideo.service'\n import { type TEvmContract, type TPaymentItem } from '@packages/utils/types'\n import { CredenzaBalance } from '@packages/ui'\n import { getAddress } from '@src/passport/blockchain'\n import { configStore, providerStore } from '@src/stores'\n import Loader from '@packages/ui/main/shared/Loader.svelte'\n import { abi as license_abi } from '@credenza3/contracts/artifacts/LicenseNftContract.json'\n import { DEFAULT_TOKEN_ID } from '@packages/utils/constants'\n\n export let totalPriceToken: number\n export let isLoading: boolean\n export let isPriceLoading: boolean\n export let pricesByToken: { [key: string]: number }\n\n const { getCREDContract, toastAlert } = get(fn)\n const { chainId, clientId } = get(configStore)\n\n let isBalanceLoading: boolean = false\n let balance: bigint = BigInt(0)\n let formattedBalance: string\n let symbol: string = ''\n let contract: ethers.Contract\n let decimals: number\n let userAddress: string\n let signer: ethers.Signer\n let credContract: {\n address: string\n decimals: number\n contract: ethers.Contract\n }\n\n const afterPayment = async (index: number, result: ethers.TransactionResponse, priceToken: number) => {\n toastAlert(`<a href=\"${getTxScanAddress(result.hash)}\" target=\"_blank\">Purchase TX #${index}</a> was created`)\n dispatch(PassportEvents.PAYMENT, { type: TransactionTypes.ERC20, data: result })\n dispatch(PassportEvents.RECHECK_BALANCE)\n\n await requestReceipt({\n hash: result.hash,\n title: $pageOptsStore.title,\n subtitle: $pageOptsStore.subtitle,\n currency: 'CRED',\n amount: +ethers.formatUnits(priceToken, decimals),\n })\n dispatch(PassportEvents.RECEIPT, { hash: result.hash })\n }\n\n const processPaymentItem = async (item: TPaymentItem, index: number) => {\n try {\n const { credenzaSellableMinAbi } = await import('@src/lib/abi')\n const credenzaSellableContract = new ethers.Contract(item.contractAddress, credenzaSellableMinAbi, signer)\n const tokenId = item.tokenId || item.membershipTokenId || DEFAULT_TOKEN_ID\n const priceToken = pricesByToken[`${item.contractAddress}/${tokenId}`]\n\n const approveTx = await contract.approve.populateTransaction(\n await credenzaSellableContract.getAddress(),\n priceToken,\n )\n\n await sendContractTx(approveTx, contract)\n const buyTx = await credenzaSellableContract.buyWithToken.populateTransaction(\n tokenId,\n item.amount || 1,\n userAddress,\n )\n\n const result = await sendContractTx(buyTx, credenzaSellableContract)\n\n await afterPayment(index, result, priceToken)\n } catch (err) {\n toastAlert(`Payment error: ${err.message || err}`, 'failure')\n pageOptsStore.set({ errorMessage: err.message })\n pageStore.set(Pages.ERROR)\n dispatch(PassportEvents.ERROR, { error: err })\n }\n }\n\n const processLicensePaymentItem = async (item: TPaymentItem, index: number) => {\n if (!item.licenseContractAddress) return\n\n try {\n const licenseContract = new ethers.Contract(item.licenseContractAddress, license_abi, signer)\n const priceToken = pricesByToken[`${item.contractAddress}/${item.contentTokenId}`]\n\n const approveTx = await contract.approve.populateTransaction(\n await licenseContract.getAddress(),\n priceToken,\n )\n\n await sendContractTx(approveTx, contract)\n await new Promise(resolve => setTimeout(resolve, 3000)); // pause for debugging\n\n const buyLicenseWithTokenFunction = licenseContract.interface.getFunction('buyLicenseWithToken', ['uint', 'address', 'uint']);\n if (!buyLicenseWithTokenFunction) throw new Error('buyLicenseWithToken function not found');\n const buyTx =await licenseContract[\n buyLicenseWithTokenFunction.format()\n ].populateTransaction(\n item.contentTokenId,\n userAddress,\n item.licenseType\n )\n\n const result = await sendContractTx(buyTx, licenseContract)\n await afterPayment(index, result, priceToken)\n } catch (err) {\n toastAlert(`Payment error: ${err.message || err}`, 'failure')\n pageOptsStore.set({ errorMessage: err.message })\n pageStore.set(Pages.ERROR)\n dispatch(PassportEvents.ERROR, { error: err })\n }\n }\n\n const payWithCredenza = async () => {\n try {\n if (BigInt(totalPriceToken) > balance) return\n\n isLoading = true\n const tokensAndMembershipsPaymentPromises = [...($pageOptsStore.tokens || []), ...($pageOptsStore.memberships || [])].map(\n (item, index) => processPaymentItem(item, index + 1),\n )\n\n const licensesPaymentPromises = [...($pageOptsStore.licenses || [])].map(\n (item, index) => processLicensePaymentItem(item, index + 1),\n )\n\n await Promise.all([...tokensAndMembershipsPaymentPromises, ...licensesPaymentPromises])\n\n const user = get(userStore)\n if (user) {\n analytics.track('cp_payment_stored_value', {\n $email: user.email,\n $phone: user.phone,\n chain: chainId,\n clientId,\n address: userAddress,\n location: window.location.href,\n tokens: $pageOptsStore.tokens,\n memberships: $pageOptsStore.memberships,\n total: totalPriceToken,\n description: ($pageOptsStore?.title ?? '') + `(${$pageOptsStore?.subtitle ?? ''})`,\n })\n }\n\n await waitVideoEnded()\n\n if (totalPriceToken === 0) pageOptsStore.set({ subtitle: 'Your claim was successful!', receipt: false })\n pageStore.set(Pages.PAYMENT_RESULT)\n } catch (err) {\n toastAlert(`Payment error: ${err.message || err}`, 'failure')\n pageOptsStore.set({ errorMessage: err.message })\n pageStore.set(Pages.ERROR)\n dispatch(PassportEvents.ERROR, { error: err })\n } finally {\n isLoading = false\n }\n }\n\n onMount(async () => {\n try {\n isBalanceLoading = true\n credContract = (await getCREDContract()) as TEvmContract\n\n const provider = get(providerStore)\n if(!provider) return\n signer = await provider.getSigner()\n contract = credContract.contract\n decimals = credContract.decimals\n ;[userAddress, symbol] = await Promise.all([getAddress(), contract.symbol()])\n balance = await contract.balanceOf(userAddress)\n\n formattedBalance = `${ethers.formatUnits(BigInt(balance) - BigInt(totalPriceToken), decimals)}`\n } catch (err) {\n console.log(err)\n } finally {\n isBalanceLoading = false\n }\n })\n</script>\n\n{#if isBalanceLoading}\n <div class=\"crtw-w-full crtw-justify-items-center crtw-my-5\">\n <Loader />\n </div>\n{:else}\n <CredenzaBalance\n options={{\n formattedBalance,\n balance: Number((+ethers.formatUnits(BigInt(balance), decimals)).toFixed(2)),\n credAlias: $clientPublicStore?.ui_settings.cred_alias,\n onPay: payWithCredenza,\n onGetCred: () => pageStore.set(Pages.WALLET),\n totalToPay: (+ethers.formatUnits(totalPriceToken, decimals)).toFixed(2),\n isLoading,\n isPaymentDisabled: !Number(balance) || BigInt(totalPriceToken) > balance || isPriceLoading,\n }}\n />\n{/if}\n","<script lang=\"ts\">\n import { Pages } from '@packages/utils/enums'\n import { onDestroy } from 'svelte'\n import { get } from 'svelte/store'\n import { ethers } from '@credenza3/core-web-evm-ext'\n\n import { pageOptsStore, userStore, pageStore, fn, clientPublicStore } from '@packages/stores'\n import { DEFAULT_TOKEN_ID } from '@packages/utils/constants'\n import { dispatch, PassportEvents } from '@lib/events/events'\n import type { TPaymentItem } from '@packages/utils/types'\n import { Payment } from '@packages/ui'\n import Stripe from './stripe/Stripe.svelte'\n import CredenzaBalance from './credenza-balance/CredenzaBalance.svelte'\n import { configStore, providerStore, contractsStore } from '@src/stores'\n import { abi as content_abi } from '@credenza3/contracts/artifacts/ContentNftContract.json'\n import Loader from '@packages/ui/main/shared/Loader.svelte'\n\n const { close } = get(fn)\n const chainId = get(configStore).chainId\n\n $: if ($configStore.chainId !== chainId) close()\n\n let totalSumCents: number = 0\n let totalSumToken: number = 0\n let isPriceLoading: boolean = false\n let isLoading: boolean = false\n let feeToApply: number = 0\n\n const clientCredFee = get(clientPublicStore).client_payment_configuration?.token_fee\n\n let pricesByToken: { [key: string]: number } = {}\n\n const getTokenPrice = async (\n contractAddress: string,\n tokenId: bigint | string,\n licenseType?: string,\n ): Promise<[number, number]> => {\n let priceCents = 0\n let priceToken = 0\n\n if (licenseType) {\n const contract = new ethers.Contract(contractAddress, content_abi, $providerStore)\n priceCents = await contract\n .getLicensePriceFiat(String(tokenId), licenseType)\n .then((result: bigint) => Number(result))\n priceToken = await contract\n .getLicensePriceToken(String(tokenId), licenseType)\n .then((result: bigint) => Number(result))\n return [priceCents, priceToken]\n }\n\n const { credenzaSellableMinAbi } = await import('@src/lib/abi')\n const sellableContract = new ethers.Contract(contractAddress, credenzaSellableMinAbi, $providerStore)\n priceCents = await sellableContract.getPriceFiat(tokenId).then((result: bigint) => Number(result))\n priceToken = 0\n\n if (priceCents === 0) {\n ;[priceCents, priceToken] = await Promise.all([\n sellableContract.getPriceFiat(DEFAULT_TOKEN_ID).then((result: bigint) => Number(result)),\n sellableContract.getPriceToken(DEFAULT_TOKEN_ID).then((result: bigint) => Number(result)),\n ])\n } else {\n priceToken = await sellableContract.getPriceToken(tokenId).then((result: bigint) => Number(result))\n }\n\n return [priceCents, priceToken]\n }\n\n const calculateTotalPrice = async (items: TPaymentItem[]): Promise<void> => {\n try {\n isPriceLoading = true\n for (const token of items) {\n if (token.contractAddress === $contractsStore.erc20Cred.address) {\n totalSumCents += token.amount * 100\n\n if (clientCredFee) {\n feeToApply = clientCredFee\n totalSumCents += totalSumCents * clientCredFee\n }\n } else {\n const membershipTokenId = token.membershipTokenId || DEFAULT_TOKEN_ID\n const tokenId = token.tokenId || (token.contentTokenId as string) || membershipTokenId\n\n let [priceCents, priceToken] = await getTokenPrice(token.contractAddress, tokenId, token.licenseType)\n\n if (token?.amount && token?.amount !== 0) {\n priceCents *= token.amount\n priceToken *= token.amount\n }\n\n totalSumCents += priceCents\n totalSumToken += priceToken\n\n pricesByToken[`${token.contractAddress}/${tokenId}`] = priceToken\n }\n }\n } catch (err) {\n dispatch(PassportEvents.ERROR, err)\n } finally {\n isPriceLoading = false\n }\n }\n\n const unsub = pageOptsStore.subscribe(async (store) => {\n if (!store?.tokens?.length && !store?.memberships?.length && !store?.licenses?.length) return\n\n await calculateTotalPrice([...(store?.tokens || []), ...(store?.memberships || []), ...(store?.licenses || [])])\n })\n\n onDestroy(unsub)\n</script>\n\n{#if isLoading}\n {#await import('@components/progress/ProgressVideo.svelte') then module}\n <svelte:component this={module.default} />\n {/await}\n{/if}\n\n<Payment\n bind:isLoading\n options={{\n user: $userStore,\n title: $pageOptsStore.title || `Order Summary`,\n subtitle: $pageOptsStore.subtitle,\n onBackClick: () => pageStore.set(Pages.WALLET),\n isCardDisabled: $pageOptsStore.payments?.card?.disabled,\n isCredezaValueDisabled: !totalSumCents || $pageOptsStore.payments?.credenzaStoredValue?.disabled,\n }}\n>\n <div slot=\"credit-card\">\n {#if isLoading || isPriceLoading}\n <Loader />\n {:else}\n <Stripe priceCents={totalSumCents} {isPriceLoading} bind:isLoading {feeToApply} />\n {/if}\n </div>\n <div slot=\"cred-balance\">\n <CredenzaBalance {pricesByToken} totalPriceToken={totalSumToken} {isPriceLoading} bind:isLoading />\n </div>\n</Payment>\n"],"names":["LockIcon","onClick","$.prop","$$props","text","disabled","isLoading","button","root","node","$.child","Loader","$$anchor","$$render","consequent","alternate","$.reset","$.template_effect","classes","$.set_class","isActive","$.event","$.preventDefault","$$args","$.append","options","user","title","subtitle","onBackClick","isCardDisabled","activeTab","PaymentViews","isCredezaValueDisabled","div","div_1","div_2","div_3","div_4","div_5","div_7","PaymentSwitchButton","node_1","node_2","totalToPay","MINIMUM_AMOUNT","isTotalTooLow","isCardFocused","currencySymbol","$.sibling","$.first_child","fragment","$0","$.derived_safe_equal","Button","$.set_style","credAlias","onPay","onGetCred","isPaymentDisabled","formattedBalance","balance","$.get","$.set_text","text_1","span","fragment_1","text_2","__awaiter","thisArg","_arguments","P","generator","onMount","stripe","priceCents","paymentRequest","walletPayElement","stripeElements","event","doPayment","err","dispatch","PassportEvents","stripeStyles","loadScript","src","resolve","reject","script","getCompmletedOrderDetails","apiUrl","orderId","maxRetries","attempts","res","get","accessTokenStore","data","validateTxs","txs","message","item","validateOrderItems","orders","errorMessages","requestReceipt","hash","stripeChargeId","amount","currency","credenza","receiptTarget","clientId","configStore","targets","target","userStore","ReceiptTarget","successCount","result","getClientConfigByClientId","afterPaymentProcess","purchaseConfig","toastAlert","fn","config","failedOrdersMessage","TransactionTypes","analytics","getAddress","waitVideoEnded","pageOptsStore","pageStore","Pages","isPriceLoading","feeToApply","Stripe","$.mutable_source","cardElement","isButtonActive","clientName","$.set","_a","handleSubmit","tokenId","processPayment","$pageOptsStore","StripeComponent","$$value","WalletPay","pricesByToken","getCREDContract","chainId","isBalanceLoading","symbol","contract","decimals","userAddress","signer","credContract","afterPayment","index","priceToken","getTxScanAddress","ethers","processPaymentItem","credenzaSellableMinAbi","credenzaSellableContract","DEFAULT_TOKEN_ID","approveTx","sendContractTx","buyTx","processLicensePaymentItem","licenseContract","license_abi","buyLicenseWithTokenFunction","payWithCredenza","totalPriceToken","tokensAndMembershipsPaymentPromises","licensesPaymentPromises","_b","provider","providerStore","close","totalSumCents","totalSumToken","clientCredFee","clientPublicStore","getTokenPrice","contractAddress","licenseType","content_abi","$providerStore","sellableContract","calculateTotalPrice","items","token","$contractsStore","membershipTokenId","store","_c","$configStore","$.await","module","$.component","$$component","$userStore","Payment","node_3","consequent_1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Payment-BXvub930.js","sources":["../../ui/images/lock.svg","../../ui/main/payment/PaymentSwitchButton.svelte","../../ui/main/payment/Payment.svelte","../../ui/main/payment/Stripe.svelte","../../ui/main/payment/CredenzaBalance.svelte","../src/app/pages/payment/stripe/wallet-pay/WalletPay.svelte","../src/app/pages/payment/stripe/Stripe.styles.ts","../../utils/lib/scripts/scripts.ts","../../utils/lib/orders/index.ts","../src/app/pages/payment/Payment.service.ts","../src/app/pages/payment/stripe/Stripe.svelte","../src/app/pages/payment/credenza-balance/CredenzaBalance.svelte","../src/app/pages/payment/Payment.svelte"],"sourcesContent":["export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='22'%20height='22'%20viewBox='0%200%2024%2024'%3e%3cpath%20fill='%23bbb'%20d='M17%209.761v-4.761c0-2.761-2.238-5-5-5-2.763%200-5%202.239-5%205v4.761c-1.827%201.466-3%203.714-3%206.239%200%204.418%203.582%208%208%208s8-3.582%208-8c0-2.525-1.173-4.773-3-6.239zm-8-4.761c0-1.654%201.346-3%203-3s3%201.346%203%203v3.587c-.927-.376-1.938-.587-3-.587s-2.073.211-3%20.587v-3.587zm4%2011.723v2.277h-2v-2.277c-.596-.347-1-.984-1-1.723%200-1.104.896-2%202-2s2%20.896%202%202c0%20.738-.404%201.376-1%201.723z'/%3e%3c/svg%3e\"","<style>\n .active {\n background-color: #ffff;\n font-weight: 500;\n color: #000;\n }\n .btn-disabled {\n pointer-events: none;\n background-color: #d0d2d5;\n }\n</style>\n\n<script lang=\"ts\">\n import Loader from '../shared/Loader.svelte'\n \n export let onClick: (...args: unknown[]) => unknown\n export let text: string\n export let disabled: boolean = false\n export let isLoading: boolean = false\n export let isActive: boolean = false\n</script>\n\n<button\n type=\"submit\"\n class=\"crtw-flex crtw-justify-center crtw-items-center crtw-w-full crtw-h-[50px] crtw-cursor-pointer crtw-border crtw-border-gray-300\n crtw-rounded crtw-font-['poppins'] crtw-text-gray-600\"\n class:btn-disabled={disabled || isLoading}\n class:active={isActive}\n on:click|preventDefault={onClick}\n>\n {#if isLoading}\n <Loader />\n {:else}\n {text}\n {/if}\n</button>","<script lang=\"ts\">\n import { PaymentViews } from '../../../utils/enums';\n import ButtonBack from '../shared/inputs/button-back/ButtonBack.svelte';\n import LockIcon from '../../images/lock.svg'\n import type { TUser } from '../../../utils/types';\n import PaymentSwitchButton from './PaymentSwitchButton.svelte';\n\n export let isLoading: boolean\n export let options: {\n user: TUser| null\n title: string\n subtitle?: string\n onBackClick: () => void\n isCardDisabled: boolean\n isCredezaValueDisabled: boolean\n }\n \n let { user, title, subtitle, onBackClick, isCardDisabled } = options\n let activeTab = isCardDisabled ? PaymentViews.CREDENZA_BALANCE : PaymentViews.CREDIT_CARD\n\n $: isCredezaValueDisabled = options.isCredezaValueDisabled\n</script>\n\n<div class=\"cpui-payment crtw-text-left crtw-w-full\" class:crtw-hidden={isLoading}>\n <div class=\"crtw-text-right crtw-text-[13px] crtw-text-gray-400 crtw-mb-6\">\n <div class=\"crtw-break-words\">{user?.email || user?.pending?.email || ''}</div>\n <div>{user?.phone || user?.pending?.phone || ''}</div>\n </div>\n <div class=\"crtw-font-bold crtw-text-xl\">{title}</div>\n <div class=\"crtw-flex crtw-justify-between crtw-mb-3 crtw-text-gray-600 crtw-font-bold\">\n {#if subtitle}\n <div>{subtitle}</div>\n {/if}\n </div>\n <div class=\"crtw-flex crtw-bg-gray-200 crtw-rounded-md crtw-p-px\">\n <PaymentSwitchButton\n text=\"Credit Card\"\n onClick={() => (activeTab = PaymentViews.CREDIT_CARD)}\n isActive={activeTab === PaymentViews.CREDIT_CARD}\n disabled={isCardDisabled}\n />\n <PaymentSwitchButton\n text=\"Credenza Balance\"\n onClick={() => (activeTab = PaymentViews.CREDENZA_BALANCE)}\n isActive={activeTab === PaymentViews.CREDENZA_BALANCE}\n disabled={isCredezaValueDisabled}\n />\n </div>\n <hr class=\"crtw-block crtw-border-t-2 crtw-border-gray-200 crtw-w-1/2 crtw-mx-auto crtw-mt-3.5 crtw-mb-[15px]\" />\n {#if activeTab === PaymentViews.CREDIT_CARD}\n <slot name=\"card-provider-switch\" />\n <slot name=\"credit-card\" />\n {:else if activeTab === PaymentViews.CREDENZA_BALANCE}\n <slot name=\"cred-balance\" />\n {/if}\n <div class=\"crtw-flex crtw-w-full crtw-justify-center crtw-items-center\">\n <img src={LockIcon} alt=\"\" /><span class=\"crtw-text-sm crtw-text-gray-400 crtw-ml-1\"\n >Payments are secure and encrypted</span\n >\n </div>\n <div class=\"crtw-mt-1.5\">\n <ButtonBack onClick={onBackClick} />\n </div>\n</div>\n","<script lang=\"ts\">\n import Button from \"../shared/inputs/button/Button.svelte\";\n\n export let options: {\n isCardFocused: boolean;\n onPay: () => void;\n currencySymbol?: string;\n feeToApply?: number;\n };\n export let isPaymentDisabled: boolean;\n export let isLoading: boolean;\n export let totalToPay: string;\n\n const MINIMUM_AMOUNT = 0.5;\n const isTotalTooLow = +totalToPay < MINIMUM_AMOUNT;\n\n let { isCardFocused, onPay, currencySymbol = \"$\" } = options;\n</script>\n\n<div class=\"crtw-text-base crtw-mb-1.5\">Credit card details</div>\n<div\n id=\"cpui-card-element\"\n class=\"crtw-border crtw-border-gray-300 crtw-rounded crtw-px-2.5 crtw-py-4 crtw-mb-2.5 crtw-w-full\"\n style={isCardFocused ? \"border-color: #121e2b\" : \"\"}\n/>\n<!-- Used to display Element errors. -->\n<div id=\"card-errors\" role=\"alert\" />\n<Button\n text={isTotalTooLow\n ? `Minimum card payment: ${currencySymbol}${MINIMUM_AMOUNT}`\n : `Pay ${currencySymbol}${totalToPay}`}\n onClick={onPay}\n disabled={isPaymentDisabled || isTotalTooLow}\n bind:isLoading\n/>\n{#if options.feeToApply}\n <span class=\"crtw-text-xs crtw-text-stone-200\"\n >Fee of {options.feeToApply * 100}% is automatically added.</span\n >\n{/if}\n","<script lang=\"ts\">\n import Button from \"../shared/inputs/button/Button.svelte\";\n\n export let options: {\n formattedBalance: string\n balance: number\n credAlias: string\n onPay: () => void\n onGetCred: () => void\n totalToPay: string\n isLoading: boolean\n isPaymentDisabled: boolean\n }\n\n let { credAlias, onPay, onGetCred } = options\n\n $: isLoading = options.isLoading\n $: isPaymentDisabled = options.isPaymentDisabled\n $: formattedBalance = options.formattedBalance\n $: totalToPay = options.totalToPay\n $: balance = options.balance\n</script>\n\n<div class=\"crtw-w-full crtw-text-center crtw-my-5\">\n <div class=\"crtw-text-3xl crtw-text-black crtw-font-bold\">\n {#if Number(totalToPay) > balance}\n INSUFFICIENT FUNDS\n {:else}\n {formattedBalance} {credAlias}\n {/if}\n \n </div>\n <div class=\"crtw-mb-5 crtw-text-gray-600\">\n {#if Number(totalToPay) > balance}\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n You do not have enough stored value to make this payment. \n <span\n class=\"crtw-text-black crtw-cursor-pointer\"\n role=\"button\"\n tabindex=\"0\"\n on:click={onGetCred}\n >\n Click to get some {credAlias}\n </span>\n {:else}\n Your balance after purchase\n {/if}\n </div>\n\n <Button\n text={`Pay ${totalToPay} ${credAlias}`}\n onClick={onPay}\n disabled={isPaymentDisabled}\n {isLoading}\n />\n</div>","<script lang=\"ts\">\n import { onMount } from 'svelte'\n import { dispatch, PassportEvents } from '@lib/events/events'\n\n export let doPayment: (stripeTokenId: string) => Promise<void>\n export let stripe: Window['Stripe']\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n export let stripeElements: any\n export let priceCents: number\n export let isLoading: boolean\n\n onMount(async () => {\n const paymentRequest = stripe.paymentRequest({\n country: 'US',\n currency: 'usd',\n total: {\n label: 'Apple/Google payment',\n amount: Math.ceil(priceCents),\n // amount: priceCents,\n },\n requestPayerName: true,\n requestPayerEmail: true,\n })\n const canMakePayment = await paymentRequest.canMakePayment()\n if (!canMakePayment) return\n\n const walletPayElement = document.getElementById('ctui-wallet-pay')\n if (walletPayElement) walletPayElement.style.display = 'crtw-block'\n\n const prButton = stripeElements.create('paymentRequestButton', {\n paymentRequest: paymentRequest,\n style: {\n paymentRequestButton: {\n height: '48px',\n },\n },\n })\n prButton.mount('#ctui-payment-request-button')\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n paymentRequest.on('token', async (event: any) => {\n isLoading = true\n try {\n await doPayment(event.token.id)\n await event.complete('success')\n } catch (err) {\n await event.complete('error')\n dispatch(PassportEvents.ERROR, { error: err })\n }\n isLoading = false\n })\n })\n</script>\n\n<div id=\"ctui-wallet-pay\" class=\"crtw-w-full crtw-my-4\" style=\"dispay: none;\">\n <div id=\"ctui-payment-request-button\"></div>\n</div>\n","export const stripeStyles = {\n base: {\n color: '#121e2b',\n fontSize: '12px',\n '::placeholder': {\n color: '#d9d9d9',\n },\n },\n invalid: {\n color: '#fa755a',\n },\n}\n","export const loadScript = (src: string) => {\n return new Promise((resolve, reject) => {\n const script = document.createElement('script')\n script.src = src\n document.body.appendChild(script)\n script.addEventListener('load', () => resolve(script))\n script.addEventListener('error', () => reject(script))\n })\n}\n","import { get } from \"svelte/store\";\nimport { accessTokenStore } from \"../../../stores\";\nimport type { TPaymentReturn } from \"@packages/utils/types\";\n\nexport const getOrderDetails = async (\n apiUrl: string,\n orderId: string,\n maxRetries = 10,\n): Promise<TPaymentReturn> => {\n let attempts = 0;\n\n while (attempts < maxRetries) {\n const res = await fetch(`${apiUrl}/orders/${orderId}`, {\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${get(accessTokenStore)}`,\n },\n method: \"GET\",\n });\n\n if (!res.ok) throw new Error(\"Failed to get order details\");\n\n const orderData = await res.json();\n\n // If status is not NEW, return the data\n if (orderData.status !== \"NEW\") {\n return orderData;\n }\n\n // If status is NEW, wait and retry\n attempts++;\n if (attempts < maxRetries) {\n // Wait 2 seconds before retrying\n await new Promise((resolve) => setTimeout(resolve, 2000));\n }\n }\n\n // If we've exceeded max retries, throw an error\n throw new Error(`Order attempts exceeded. Please try again later.`);\n};\nexport const getCompmletedOrderDetails = async (\n apiUrl: string,\n orderId: string,\n maxRetries = 5,\n) => {\n let attempts = 0;\n\n while (attempts < maxRetries) {\n const res = await fetch(`${apiUrl}/orders/completed/${orderId}`, {\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${get(accessTokenStore)}`,\n },\n method: \"GET\",\n });\n\n if (res.status === 204) {\n attempts++;\n if (attempts < maxRetries) {\n continue;\n } else {\n throw new Error(\"No content received after multiple attempts\");\n }\n }\n\n if (!res.ok) throw new Error(\"Failed to get order details\");\n\n const data = await res.json();\n if (data.status === \"PAYMENT_ERROR\") {\n throw new Error(`Order failed: ${data.status}`);\n }\n return data;\n }\n};\n\nexport const validateTxs = (txs: string[] | null[], message: string) => {\n if (txs.every((item) => item === null)) {\n throw new Error(`All transactions failed. \\n${message}`);\n }\n};\n\nexport const validateOrderItems = (orders: TPaymentReturn[\"items\"]): string => {\n const errorMessages = orders\n .filter((item) => item.error)\n .map(\n (item) =>\n `Name: ${item.metadata?.name || item.directive.resource_id}, reason: ${item.error}`,\n )\n .join(\"\\n\");\n if (orders?.every((item) => item.status === \"ERROR\")) {\n throw new Error(`All transactions failed.}`);\n }\n return errorMessages;\n};\n","import { get } from 'svelte/store'\nimport { accessTokenStore, fn } from '@packages/stores'\nimport { ReceiptTarget } from '@packages/utils/enums'\nimport { configStore } from '@src/stores/config'\nimport { getClientConfigByClientId } from '@lib/clients'\nimport type { TLicensePaymentData, TMembershipPaymentData, TTokenPaymentData } from './oders.types'\nimport { dispatch, PassportEvents } from '@lib/events/events'\nimport { TransactionTypes } from '@packages/utils/enums'\nimport { pageOptsStore, pageStore, userStore } from '@packages/stores'\nimport { Pages } from '@packages/utils/enums'\nimport { analytics } from '@lib/mixpanel/mixpanel'\nimport { waitVideoEnded } from '@components/progress/ProgressVideo.service'\nimport { getAddress } from '@src/passport/blockchain'\nimport { validateOrderItems, validateTxs } from '@lib/orders'\nimport type { TPaymentReturn } from '@packages/utils/types'\n\n\nexport const requestReceipt = async ({\n hash,\n stripeChargeId,\n title,\n subtitle,\n amount,\n currency,\n}: {\n hash?: string\n stripeChargeId?: string\n title?: string\n subtitle?: string\n amount?: number\n currency?: string\n}) => {\n const { credenza, receiptTarget, clientId } = get(configStore)\n\n const targets = !receiptTarget \n ? [ReceiptTarget.EMAIL]\n : receiptTarget.filter(target => {\n const user = get(userStore);\n if(!user) return;\n return user[target]\n }\n );\n let successCount = 0;\n \n for (const target of targets) {\n const result = await fetch(`${credenza.evmApiUrl}/contracts/receipt`, {\n method: 'POST',\n body: JSON.stringify({\n ...(hash ? { tx: hash } : { charge_id: stripeChargeId }),\n ...(amount ? { amount } : {}),\n ...(currency ? { currency } : {}),\n target,\n title,\n subtitle,\n source: getClientConfigByClientId(clientId).name,\n }),\n headers: {\n Authorization: `Bearer ${get(accessTokenStore)}`,\n 'Content-Type': 'application/json',\n },\n })\n\n if (result.ok) {\n successCount++;\n } else {\n console.warn(`Failed to send receipt to ${target}:`, result.status)\n }\n }\n\n return successCount > 0\n}\n\nexport const afterPaymentProcess = async (res: TPaymentReturn, priceCents: number, purchaseConfig: {\n title: string\n subtitle: string\n tokens: TTokenPaymentData[]\n memberships: TMembershipPaymentData[]\n licenses: TLicensePaymentData[]\n}) => {\n const { toastAlert } = get(fn)\n const config = get(configStore)\n\n const failedOrdersMessage = validateOrderItems(res.items)\n if (!!purchaseConfig.tokens?.length || !!purchaseConfig.memberships?.length) validateTxs(res.chain_txs, failedOrdersMessage)\n \n dispatch(PassportEvents.PAYMENT, {\n type: TransactionTypes.CARD,\n results: { ...res, tokens: purchaseConfig.tokens, memberships: purchaseConfig.memberships, licenses: purchaseConfig.licenses },\n })\n toastAlert('Your payment was successful')\n dispatch(PassportEvents.RECHECK_BALANCE, res.chain_txs)\n\n const user = get(userStore)\n if (user) {\n analytics.track('cp_payment_fiat', {\n $email: user.email,\n $phone: user.phone,\n chain: config.chainId,\n clientId: config.clientId,\n address: await getAddress(),\n location: window.location.href,\n tokens: purchaseConfig?.tokens,\n memberships: purchaseConfig?.memberships,\n licenses: purchaseConfig?.licenses,\n total: priceCents / 100,\n description: (purchaseConfig?.title ?? '') + `(${purchaseConfig?.subtitle ?? ''})`,\n })\n }\n\n await waitVideoEnded()\n\n if (priceCents === 0) pageOptsStore.set({ subtitle: 'Your claim was successful!', receipt: false })\n\n if (failedOrdersMessage) {\n pageOptsStore.set({\n title: 'Done!',\n subtitle: 'Your payment was partly successful',\n orders: res.items,\n })\n }\n pageStore.set(Pages.PAYMENT_RESULT)\n}","<script lang=\"ts\">\n import WalletPay from './wallet-pay/WalletPay.svelte'\n import { onMount } from 'svelte'\n import { get } from 'svelte/store'\n import { stripeStyles } from '@pages/payment/stripe/Stripe.styles'\n import { dispatch, PassportEvents } from '@lib/events/events'\n import { loadScript } from '@lib/scripts/scripts'\n import { pageOptsStore, pageStore, fn } from '@packages/stores'\n import { Pages } from '@packages/utils/enums'\n import { Stripe as StripeComponent } from '@packages/ui'\n import { configStore } from '@src/stores/config'\n import { getClientConfigByClientId } from '@lib/clients'\n import { afterPaymentProcess } from '../Payment.service'\n\n export let priceCents: number\n export let isLoading: boolean\n export let isPriceLoading: boolean\n export let feeToApply: number = 0\n\n const { toastAlert } = get(fn)\n const config = get(configStore)\n\n let Stripe: Window['Stripe']\n let stripe: Window['Stripe']\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let stripeElements: any\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let cardElement: any\n let isButtonActive: boolean\n\n let isCardFocused = false\n onMount(async () => {\n try {\n if (!Stripe) {\n if (!window.Stripe) {\n await loadScript('https://js.stripe.com/v3/')\n if (!window.Stripe) throw {}\n }\n Stripe = window.Stripe\n }\n } catch (err) {\n return console.log('Please include stripe to use payments.')\n }\n if (stripe) return\n\n const clientName = getClientConfigByClientId(config.clientId).name\n stripe = Stripe(config.stripe.pk[clientName] ?? config.stripe.pk.DEFAULT)\n stripeElements = stripe.elements()\n cardElement = stripeElements.create('card', { style: stripeStyles })\n cardElement.mount('#cpui-card-element')\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n cardElement.on('change', (event: any) => {\n isButtonActive = event.complete && !event.error\n })\n cardElement.on('focus', () => (isCardFocused = true))\n cardElement.on('blur', () => (isCardFocused = false))\n })\n\n const handleSubmit = async () => {\n try {\n if (!isButtonActive) return\n isLoading = true\n const result = await stripe.createToken(cardElement)\n if (result.error) throw result.error\n await doPayment(result.token.id)\n } catch (err) {\n dispatch(PassportEvents.ERROR, { error: err })\n }\n isLoading = false\n }\n\n const doPayment = async (tokenId: string) => {\n try {\n const { processPayment } = await import('@pages/payment/stripe/Stripe.service')\n\n const res = await processPayment(tokenId)\n await afterPaymentProcess(res, priceCents, $pageOptsStore)\n } catch (err) {\n toastAlert(`Payment error: ${err.message || err}`, 'failure')\n pageOptsStore.set({ errorMessage: err.message || err })\n pageStore.set(Pages.ERROR)\n dispatch(PassportEvents.ERROR, { error: err })\n }\n }\n\n $: totalToPay = (Math.ceil(priceCents) / 100).toFixed(2)\n $: isPaymentDisabled = !isButtonActive || isLoading || isPriceLoading\n</script>\n\n<StripeComponent\n bind:isPaymentDisabled\n bind:isLoading\n bind:totalToPay\n options={{\n isCardFocused,\n onPay: handleSubmit,\n feeToApply,\n }}\n/>\n{#if stripe && stripeElements}\n <WalletPay {doPayment} {stripe} {stripeElements} {priceCents} bind:isLoading />\n{/if}\n","<script lang=\"ts\">\n import { ethers } from '@credenza3/core-web-evm-ext'\n import { get } from 'svelte/store'\n import { onMount } from 'svelte'\n import { Pages } from '@packages/utils/enums'\n import { clientPublicStore, fn, pageOptsStore, pageStore, userStore } from '@packages/stores'\n import { dispatch, PassportEvents } from '@lib/events/events'\n import { TransactionTypes } from '@packages/utils/enums'\n import { sendContractTx, getTxScanAddress } from '@src/lib/tx/tx'\n import { requestReceipt } from '@pages/payment/Payment.service'\n import { analytics } from '@lib/mixpanel/mixpanel'\n import { waitVideoEnded } from '@components/progress/ProgressVideo.service'\n import { type TEvmContract, type TPaymentItem } from '@packages/utils/types'\n import { CredenzaBalance } from '@packages/ui'\n import { getAddress } from '@src/passport/blockchain'\n import { configStore, providerStore } from '@src/stores'\n import Loader from '@packages/ui/main/shared/Loader.svelte'\n import { abi as license_abi } from '@credenza3/contracts/artifacts/LicenseNftContract.json'\n import { DEFAULT_TOKEN_ID } from '@packages/utils/constants'\n\n export let totalPriceToken: number\n export let isLoading: boolean\n export let isPriceLoading: boolean\n export let pricesByToken: { [key: string]: number }\n\n const { getCREDContract, toastAlert } = get(fn)\n const { chainId, clientId } = get(configStore)\n\n let isBalanceLoading: boolean = false\n let balance: bigint = BigInt(0)\n let formattedBalance: string\n let symbol: string = ''\n let contract: ethers.Contract\n let decimals: number\n let userAddress: string\n let signer: ethers.Signer\n let credContract: {\n address: string\n decimals: number\n contract: ethers.Contract\n }\n\n const afterPayment = async (index: number, result: ethers.TransactionResponse, priceToken: number) => {\n toastAlert(`<a href=\"${getTxScanAddress(result.hash)}\" target=\"_blank\">Purchase TX #${index}</a> was created`)\n dispatch(PassportEvents.PAYMENT, { type: TransactionTypes.ERC20, data: result })\n dispatch(PassportEvents.RECHECK_BALANCE)\n\n await requestReceipt({\n hash: result.hash,\n title: $pageOptsStore.title,\n subtitle: $pageOptsStore.subtitle,\n currency: 'CRED',\n amount: +ethers.formatUnits(priceToken, decimals),\n })\n dispatch(PassportEvents.RECEIPT, { hash: result.hash })\n }\n\n const processPaymentItem = async (item: TPaymentItem, index: number) => {\n try {\n const { credenzaSellableMinAbi } = await import('@src/lib/abi')\n const credenzaSellableContract = new ethers.Contract(item.contractAddress, credenzaSellableMinAbi, signer)\n const tokenId = item.tokenId || item.membershipTokenId || DEFAULT_TOKEN_ID\n const priceToken = pricesByToken[`${item.contractAddress}/${tokenId}`]\n\n const approveTx = await contract.approve.populateTransaction(\n await credenzaSellableContract.getAddress(),\n priceToken,\n )\n\n await sendContractTx(approveTx, contract)\n const buyTx = await credenzaSellableContract.buyWithToken.populateTransaction(\n tokenId,\n item.amount || 1,\n userAddress,\n )\n\n const result = await sendContractTx(buyTx, credenzaSellableContract)\n\n await afterPayment(index, result, priceToken)\n } catch (err) {\n toastAlert(`Payment error: ${err.message || err}`, 'failure')\n pageOptsStore.set({ errorMessage: err.message })\n pageStore.set(Pages.ERROR)\n dispatch(PassportEvents.ERROR, { error: err })\n }\n }\n\n const processLicensePaymentItem = async (item: TPaymentItem, index: number) => {\n if (!item.licenseContractAddress) return\n\n try {\n const licenseContract = new ethers.Contract(item.licenseContractAddress, license_abi, signer)\n const priceToken = pricesByToken[`${item.contractAddress}/${item.contentTokenId}`]\n\n const approveTx = await contract.approve.populateTransaction(\n await licenseContract.getAddress(),\n priceToken,\n )\n\n await sendContractTx(approveTx, contract)\n await new Promise(resolve => setTimeout(resolve, 3000)); // pause for debugging\n\n const buyLicenseWithTokenFunction = licenseContract.interface.getFunction('buyLicenseWithToken', ['uint', 'address', 'uint']);\n if (!buyLicenseWithTokenFunction) throw new Error('buyLicenseWithToken function not found');\n const buyTx =await licenseContract[\n buyLicenseWithTokenFunction.format()\n ].populateTransaction(\n item.contentTokenId,\n userAddress,\n item.licenseType\n )\n\n const result = await sendContractTx(buyTx, licenseContract)\n await afterPayment(index, result, priceToken)\n } catch (err) {\n toastAlert(`Payment error: ${err.message || err}`, 'failure')\n pageOptsStore.set({ errorMessage: err.message })\n pageStore.set(Pages.ERROR)\n dispatch(PassportEvents.ERROR, { error: err })\n }\n }\n\n const payWithCredenza = async () => {\n try {\n if (BigInt(totalPriceToken) > balance) return\n\n isLoading = true\n const tokensAndMembershipsPaymentPromises = [...($pageOptsStore.tokens || []), ...($pageOptsStore.memberships || [])].map(\n (item, index) => processPaymentItem(item, index + 1),\n )\n\n const licensesPaymentPromises = [...($pageOptsStore.licenses || [])].map(\n (item, index) => processLicensePaymentItem(item, index + 1),\n )\n\n await Promise.all([...tokensAndMembershipsPaymentPromises, ...licensesPaymentPromises])\n\n const user = get(userStore)\n if (user) {\n analytics.track('cp_payment_stored_value', {\n $email: user.email,\n $phone: user.phone,\n chain: chainId,\n clientId,\n address: userAddress,\n location: window.location.href,\n tokens: $pageOptsStore.tokens,\n memberships: $pageOptsStore.memberships,\n total: totalPriceToken,\n description: ($pageOptsStore?.title ?? '') + `(${$pageOptsStore?.subtitle ?? ''})`,\n })\n }\n\n await waitVideoEnded()\n\n if (totalPriceToken === 0) pageOptsStore.set({ subtitle: 'Your claim was successful!', receipt: false })\n pageStore.set(Pages.PAYMENT_RESULT)\n } catch (err) {\n toastAlert(`Payment error: ${err.message || err}`, 'failure')\n pageOptsStore.set({ errorMessage: err.message })\n pageStore.set(Pages.ERROR)\n dispatch(PassportEvents.ERROR, { error: err })\n } finally {\n isLoading = false\n }\n }\n\n onMount(async () => {\n try {\n isBalanceLoading = true\n credContract = (await getCREDContract()) as TEvmContract\n\n const provider = get(providerStore)\n if(!provider) return\n signer = await provider.getSigner()\n contract = credContract.contract\n decimals = credContract.decimals\n ;[userAddress, symbol] = await Promise.all([getAddress(), contract.symbol()])\n balance = await contract.balanceOf(userAddress)\n\n formattedBalance = `${ethers.formatUnits(BigInt(balance) - BigInt(totalPriceToken), decimals)}`\n } catch (err) {\n console.log(err)\n } finally {\n isBalanceLoading = false\n }\n })\n</script>\n\n{#if isBalanceLoading}\n <div class=\"crtw-w-full crtw-justify-items-center crtw-my-5\">\n <Loader />\n </div>\n{:else}\n <CredenzaBalance\n options={{\n formattedBalance,\n balance: Number((+ethers.formatUnits(BigInt(balance), decimals)).toFixed(2)),\n credAlias: $clientPublicStore?.ui_settings.cred_alias,\n onPay: payWithCredenza,\n onGetCred: () => pageStore.set(Pages.WALLET),\n totalToPay: (+ethers.formatUnits(totalPriceToken, decimals)).toFixed(2),\n isLoading,\n isPaymentDisabled: !Number(balance) || BigInt(totalPriceToken) > balance || isPriceLoading,\n }}\n />\n{/if}\n","<script lang=\"ts\">\n import { Pages } from '@packages/utils/enums'\n import { onDestroy } from 'svelte'\n import { get } from 'svelte/store'\n import { ethers } from '@credenza3/core-web-evm-ext'\n\n import { pageOptsStore, userStore, pageStore, fn, clientPublicStore } from '@packages/stores'\n import { DEFAULT_TOKEN_ID } from '@packages/utils/constants'\n import { dispatch, PassportEvents } from '@lib/events/events'\n import type { TPaymentItem } from '@packages/utils/types'\n import { Payment } from '@packages/ui'\n import Stripe from './stripe/Stripe.svelte'\n import CredenzaBalance from './credenza-balance/CredenzaBalance.svelte'\n import { configStore, providerStore, contractsStore } from '@src/stores'\n import { abi as content_abi } from '@credenza3/contracts/artifacts/ContentNftContract.json'\n import Loader from '@packages/ui/main/shared/Loader.svelte'\n\n const { close } = get(fn)\n const chainId = get(configStore).chainId\n\n $: if ($configStore.chainId !== chainId) close()\n\n let totalSumCents: number = 0\n let totalSumToken: number = 0\n let isPriceLoading: boolean = false\n let isLoading: boolean = false\n let feeToApply: number = 0\n\n const clientCredFee = get(clientPublicStore).client_payment_configuration?.token_fee\n\n let pricesByToken: { [key: string]: number } = {}\n\n const getTokenPrice = async (\n contractAddress: string,\n tokenId: bigint | string,\n licenseType?: string,\n ): Promise<[number, number]> => {\n let priceCents = 0\n let priceToken = 0\n\n if (licenseType) {\n const contract = new ethers.Contract(contractAddress, content_abi, $providerStore)\n priceCents = await contract\n .getLicensePriceFiat(String(tokenId), licenseType)\n .then((result: bigint) => Number(result))\n priceToken = await contract\n .getLicensePriceToken(String(tokenId), licenseType)\n .then((result: bigint) => Number(result))\n return [priceCents, priceToken]\n }\n\n const { credenzaSellableMinAbi } = await import('@src/lib/abi')\n const sellableContract = new ethers.Contract(contractAddress, credenzaSellableMinAbi, $providerStore)\n priceCents = await sellableContract.getPriceFiat(tokenId).then((result: bigint) => Number(result))\n priceToken = 0\n\n if (priceCents === 0) {\n ;[priceCents, priceToken] = await Promise.all([\n sellableContract.getPriceFiat(DEFAULT_TOKEN_ID).then((result: bigint) => Number(result)),\n sellableContract.getPriceToken(DEFAULT_TOKEN_ID).then((result: bigint) => Number(result)),\n ])\n } else {\n priceToken = await sellableContract.getPriceToken(tokenId).then((result: bigint) => Number(result))\n }\n\n return [priceCents, priceToken]\n }\n\n const calculateTotalPrice = async (items: TPaymentItem[]): Promise<void> => {\n try {\n isPriceLoading = true\n for (const token of items) {\n if (token.contractAddress === $contractsStore.erc20Cred.address) {\n totalSumCents += token.amount * 100\n\n if (clientCredFee) {\n feeToApply = clientCredFee\n totalSumCents += totalSumCents * clientCredFee\n }\n } else {\n const membershipTokenId = token.membershipTokenId || DEFAULT_TOKEN_ID\n const tokenId = token.tokenId || (token.contentTokenId as string) || membershipTokenId\n\n let [priceCents, priceToken] = await getTokenPrice(token.contractAddress, tokenId, token.licenseType)\n\n if (token?.amount && token?.amount !== 0) {\n priceCents *= token.amount\n priceToken *= token.amount\n }\n\n totalSumCents += priceCents\n totalSumToken += priceToken\n\n pricesByToken[`${token.contractAddress}/${tokenId}`] = priceToken\n }\n }\n } catch (err) {\n dispatch(PassportEvents.ERROR, err)\n } finally {\n isPriceLoading = false\n }\n }\n\n const unsub = pageOptsStore.subscribe(async (store) => {\n if (!store?.tokens?.length && !store?.memberships?.length && !store?.licenses?.length) return\n\n await calculateTotalPrice([...(store?.tokens || []), ...(store?.memberships || []), ...(store?.licenses || [])])\n })\n\n onDestroy(unsub)\n</script>\n\n{#if isLoading}\n {#await import('@components/progress/ProgressVideo.svelte') then module}\n <svelte:component this={module.default} />\n {/await}\n{/if}\n\n<Payment\n bind:isLoading\n options={{\n user: $userStore,\n title: $pageOptsStore.title || `Order Summary`,\n subtitle: $pageOptsStore.subtitle,\n onBackClick: () => pageStore.set(Pages.WALLET),\n isCardDisabled: $pageOptsStore.payments?.card?.disabled,\n isCredezaValueDisabled: !totalSumCents || $pageOptsStore.payments?.credenzaStoredValue?.disabled,\n }}\n>\n <div slot=\"credit-card\">\n {#if isLoading || isPriceLoading}\n <Loader />\n {:else}\n <Stripe priceCents={totalSumCents} {isPriceLoading} bind:isLoading {feeToApply} />\n {/if}\n </div>\n <div slot=\"cred-balance\">\n <CredenzaBalance {pricesByToken} totalPriceToken={totalSumToken} {isPriceLoading} bind:isLoading />\n </div>\n</Payment>\n"],"names":["LockIcon","onClick","$.prop","$$props","text","disabled","isLoading","button","root","node","$.child","Loader","$$anchor","$$render","consequent","alternate","$.reset","$.template_effect","classes","$.set_class","isActive","$.event","$.preventDefault","$$args","$.append","options","user","title","subtitle","onBackClick","isCardDisabled","activeTab","PaymentViews","isCredezaValueDisabled","div","div_1","div_2","div_3","div_4","div_5","div_7","PaymentSwitchButton","node_1","node_2","totalToPay","MINIMUM_AMOUNT","isTotalTooLow","isCardFocused","currencySymbol","$.sibling","$.first_child","fragment","$0","$.derived_safe_equal","Button","$.set_style","credAlias","onPay","onGetCred","isPaymentDisabled","formattedBalance","balance","$.get","$.set_text","text_1","span","fragment_1","text_2","__awaiter","thisArg","_arguments","P","generator","onMount","stripe","priceCents","paymentRequest","walletPayElement","stripeElements","event","doPayment","err","dispatch","PassportEvents","stripeStyles","loadScript","src","resolve","reject","script","getCompmletedOrderDetails","apiUrl","orderId","maxRetries","attempts","res","get","accessTokenStore","data","validateTxs","txs","message","item","validateOrderItems","orders","errorMessages","requestReceipt","hash","stripeChargeId","amount","currency","credenza","receiptTarget","clientId","configStore","targets","target","userStore","ReceiptTarget","successCount","result","getClientConfigByClientId","afterPaymentProcess","purchaseConfig","toastAlert","fn","config","failedOrdersMessage","TransactionTypes","analytics","getAddress","waitVideoEnded","pageOptsStore","pageStore","Pages","isPriceLoading","feeToApply","Stripe","$.mutable_source","cardElement","isButtonActive","clientName","$.set","_a","handleSubmit","tokenId","processPayment","$pageOptsStore","StripeComponent","$$value","WalletPay","pricesByToken","getCREDContract","chainId","isBalanceLoading","symbol","contract","decimals","userAddress","signer","credContract","afterPayment","index","priceToken","getTxScanAddress","ethers","processPaymentItem","credenzaSellableMinAbi","credenzaSellableContract","DEFAULT_TOKEN_ID","approveTx","sendContractTx","buyTx","processLicensePaymentItem","licenseContract","license_abi","buyLicenseWithTokenFunction","payWithCredenza","totalPriceToken","tokensAndMembershipsPaymentPromises","licensesPaymentPromises","_b","provider","providerStore","close","totalSumCents","totalSumToken","clientCredFee","clientPublicStore","getTokenPrice","contractAddress","licenseType","content_abi","$providerStore","sellableContract","calculateTotalPrice","items","token","$contractsStore","membershipTokenId","store","_c","$configStore","$.await","module","$.component","$$component","$userStore","Payment","node_3","consequent_1"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { c as nt, p as St, h as ct, f as h, i as T, r as f, b as v, d as it, u as lt, s as X, k as $t, e as At, a as Z, t as H, n as zt, o as Rt } from "./AssetItem-
|
|
2
|
-
import { t as ot, J as vt, L as Tt, w as n, x as c, z as _, C as r, y as w, r as ut, l as Pt, A as tt, Q as et, p as M, E as t, v as jt, I as Ot, V as Ct, M as Et } from "./index-
|
|
3
|
-
import { e as at, i as st } from "./each-
|
|
1
|
+
import { c as nt, p as St, h as ct, f as h, i as T, r as f, b as v, d as it, u as lt, s as X, k as $t, e as At, a as Z, t as H, n as zt, o as Rt } from "./AssetItem-A44ZDHuh.js";
|
|
2
|
+
import { t as ot, J as vt, L as Tt, w as n, x as c, z as _, C as r, y as w, r as ut, l as Pt, A as tt, Q as et, p as M, E as t, v as jt, I as Ot, V as Ct, M as Et } from "./index-h4gUPhx9.js";
|
|
3
|
+
import { e as at, i as st } from "./each-CjKgFOlV.js";
|
|
4
4
|
function rt(I, u, d, $) {
|
|
5
5
|
if (d === "sui")
|
|
6
6
|
return `https://suiscan.xyz/${$}/tx/${u}`;
|
|
@@ -216,4 +216,4 @@ function Bt(I, u) {
|
|
|
216
216
|
export {
|
|
217
217
|
Bt as default
|
|
218
218
|
};
|
|
219
|
-
//# sourceMappingURL=PaymentResult-
|
|
219
|
+
//# sourceMappingURL=PaymentResult-C0V0kZS8.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaymentResult-DWTDo_ZW.js","sources":["../../ui/main/payment-result/service.ts","../../ui/main/payment-result/PaymentResult.svelte","../src/app/pages/payment-result/PaymentResult.svelte"],"sourcesContent":["export function getTxUrl(\n item: { chainId: string },\n tx: string,\n chainType: string,\n networkType: string\n ) { \n if (chainType === \"sui\") {\n return `https://suiscan.xyz/${networkType}/tx/${tx}`;\n }\n\n switch (String(item.chainId)) {\n case \"137\":\n return `https://polygonscan.com/tx/${tx}`;\n case \"88888\":\n return `https://chiliscan.com/tx/${tx}`;\n case \"43114\":\n return `https://subnets.avax.network/c-chain/tx/${tx}`;\n case \"80002\":\n return `https://amoy.polygonscan.com/tx/${tx}`;\n case \"88882\":\n return `https://testnet.chiliscan.com/tx/${tx}`;\n case \"43113\":\n return `https://subnets-test.avax.network/c-chain/block/${tx}`;\n default:\n return null;\n }\n }","<script lang=\"ts\">\n import { fn } from \"../../../stores\";\n import { Pages } from \"../../../utils/enums\";\n import type { TPaymentReturn } from \"../../../utils/types\";\n import { get } from \"svelte/store\";\n import { getTxUrl } from \"./service\";\n export let options: {\n title: string;\n isSui?: boolean;\n description: string | undefined;\n subtitle: string;\n orders: TPaymentReturn[\"items\"];\n networkType?: string;\n tokenImage?: string;\n };\n const { openUI } = get(fn);\n let {\n title,\n subtitle,\n orders,\n networkType,\n tokenImage,\n isSui,\n } = options;\n\n const successfulOrders = (orders ?? []).filter((o) => o.tx);\n const failedOrders = (orders ?? []).filter((o) => !o.tx);\n\n function retryPurchase() {\n const hasAssets = failedOrders.some((order) => order.asset);\n if (hasAssets) {\n const assets = failedOrders\n .filter((order) => order.asset)\n .map((order) => ({\n packageId: order.asset!.packageId,\n type: order.asset!.type,\n assetId: order.asset!.assetId,\n amount: order.asset!.amount,\n }));\n if (!assets.length) return;\n\n openUI(Pages.PAYMENT, {\n subtitle: \"Retrying failed orders\",\n payments: {\n credenzaStoredValue: {\n disabled: false,\n },\n },\n assets,\n });\n\n return;\n }\n const tokens: {\n contractAddress: string;\n tokenId: number;\n amount: number;\n }[] = [];\n\n const memberships: {\n contractAddress: string;\n }[] = [];\n\n for (const order of failedOrders) {\n const directive = order.directive;\n if (directive.type !== \"membership\") {\n tokens.push({\n contractAddress: directive.resource_id,\n tokenId: directive.value?.token_id,\n amount: directive.value.amount,\n });\n } else {\n memberships.push({\n contractAddress: directive.resource_id,\n });\n }\n }\n \n if (!tokens.length && !memberships.length) return;\n openUI(Pages.PAYMENT, {\n subtitle: \"Retrying failed orders\",\n payments: {\n credenzaStoredValue: {\n disabled: false,\n },\n },\n tokens,\n memberships,\n });\n }\n</script>\n\n<div>\n <div\n class=\"crtw-text-black-900 crtw-text-xl md:crtw-text-2xl crtw-font-semibold crtw-pt-5 crtw-mb-3.5 crtw-text-center\"\n >\n {title}\n </div>\n <div class=\"crtw-mb-3.5 crtw-text-sm crtw-text-justify\">\n {subtitle}\n </div>\n {#if tokenImage}\n <div class=\"crtw-my-4 flex justify-center\">\n <div\n class=\"crtw-w-64 crtw-h-64 crtw-rounded-xl crtw-shadow-md crtw-bg-white flex items-center justify-center overflow-hidden\"\n >\n <img\n src={tokenImage}\n alt=\"Token\"\n class=\"max-w-full max-h-full object-contain\"\n />\n </div>\n </div>\n {/if}\n\n <div class=\"crtw-mb-3.5 crtw-text-sm crtw-text-justify\">\n {#if orders.length}\n <div class=\"crtw-mt-6\">\n <div class=\"crtw-text-lg crtw-font-semibold crtw-mb-2\">Successful</div>\n {#each successfulOrders as order}\n {#if order.tx}\n <div class=\"crtw-mb-2\">\n <a\n href={getTxUrl(\n { chainId: order.directive?.chain_id || \"\" },\n order.tx,\n order.directive.chain_type,\n networkType || \"\"\n )}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n class=\"crtw-text-blue-600 crtw-underline\"\n >\n <div class=\"crtw-break-words\">\n {#if order.metadata?.name}\n {order.metadata.name}\n {:else}\n <span>{order.directive.type}</span>\n <span\n class=\"crtw-break-all crtw-whitespace-normal crtw-break-words\"\n >\n ({order.directive.resource_id})\n </span>\n {/if}\n </div>\n </a>\n </div>\n {/if}\n {/each}\n\n <div\n class=\"crtw-text-lg crtw-font-semibold crtw-mt-6 crtw-mb-2\"\n class:hidden={!failedOrders.length}\n >\n Failed\n </div>\n {#if failedOrders.length}\n {#each failedOrders as order}\n <div class=\"crtw-mb-3\">\n <p class=\"crtw-text-red-600 break-words\">\n {#if order.metadata?.name}\n {order.metadata.name}\n {:else if order.directive?.type}\n <span>{order.directive.type} </span>\n <span class=\"text-gray-500 break-all whitespace-normal\">\n ({order.directive.resource_id})\n </span>\n {:else if order.asset?.assetId}\n AssetId {order.asset.assetId} : {order.error}\n {:else}\n <span>{order.asset?.type}</span>\n <span\n class=\"crtw-break-all crtw-whitespace-normal crtw-break-words\"\n >\n ({order.asset?.packageId}) : {order.error}\n </span>\n {/if}\n </p>\n </div>\n {/each}\n {/if}\n <button\n class=\"crtw-bg-black hover:crtw-bg-gray-800 crtw-text-white crtw-px-4 crtw-py-2 crtw-rounded-md crtw-mt-4\"\n on:click={retryPurchase}\n >\n Try Again\n </button>\n </div>\n {:else if isSui}\n If you are not seeing your new token, please contact\n <a href=\"mailto:support@credenza3.com\" class=\"text-blue-600 underline\">\n support@credenza3.com\n </a>.\n {:else}\n Typically, your purchase will be processed within a few seconds. In the\n event of unusually high traffic, you may have to wait as much as a minute\n or so. If several minutes pass and you are not seeing your purchase,\n please contact\n <a class=\"crtw-underline\" href=\"mailto:support@credenza3.com\"\n >support@credenza3.com</a\n >.\n {/if}\n </div>\n</div>\n","<script lang=\"ts\">\n import { get } from 'svelte/store'\n import { pageOptsStore } from '@packages/stores'\n import { PaymentResult } from '@packages/ui'\n import { configStore } from '@src/stores/config'\n\n let config = get(configStore)\n</script>\n\n<PaymentResult\n options={{\n title: $pageOptsStore?.title || config.content?.paymentResult?.title || 'Success!',\n subtitle: $pageOptsStore?.subtitle || config.content?.paymentResult?.subtitle || 'Your payment was successful!',\n description: $pageOptsStore?.description || config.content?.paymentResult?.description,\n orders: $pageOptsStore?.orders || [],\n tokenImage: $pageOptsStore?.tokenImage || '',\n }}\n/>\n"],"names":["getTxUrl","item","tx","chainType","networkType","options","openUI","get","fn","title","subtitle","orders","isSui","successfulOrders","o","failedOrders","retryPurchase","order","assets","Pages","tokens","memberships","directive","_a","div","root","div_1","$.child","text","$.reset","div_2","$.sibling","div_3","root_1","div_4","img","$.template_effect","$.set_attribute","tokenImage","$$render","consequent","div_5","node","div_6","root_2","$.each","node_2","div_7","root_4","a","div_8","$.set_text","text_2","$.get","$.untrack","span","$.first_child","fragment_2","span_1","text_4","text_3","consequent_1","alternate","$0","consequent_2","div_9","node_5","node_6","div_10","root_8","p","text_5","fragment_5","span_3","text_6","span_4","fragment_7","span_5","text_10","text_9","consequent_3","consequent_4","consequent_5","alternate_1","consequent_6","classes","consequent_7","$pageOptsStore","config","PaymentResult","$$anchor"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PaymentResult-C0V0kZS8.js","sources":["../../ui/main/payment-result/service.ts","../../ui/main/payment-result/PaymentResult.svelte","../src/app/pages/payment-result/PaymentResult.svelte"],"sourcesContent":["export function getTxUrl(\n item: { chainId: string },\n tx: string,\n chainType: string,\n networkType: string\n ) { \n if (chainType === \"sui\") {\n return `https://suiscan.xyz/${networkType}/tx/${tx}`;\n }\n\n switch (String(item.chainId)) {\n case \"137\":\n return `https://polygonscan.com/tx/${tx}`;\n case \"88888\":\n return `https://chiliscan.com/tx/${tx}`;\n case \"43114\":\n return `https://subnets.avax.network/c-chain/tx/${tx}`;\n case \"80002\":\n return `https://amoy.polygonscan.com/tx/${tx}`;\n case \"88882\":\n return `https://testnet.chiliscan.com/tx/${tx}`;\n case \"43113\":\n return `https://subnets-test.avax.network/c-chain/block/${tx}`;\n default:\n return null;\n }\n }","<script lang=\"ts\">\n import { fn } from \"../../../stores\";\n import { Pages } from \"../../../utils/enums\";\n import type { TPaymentReturn } from \"../../../utils/types\";\n import { get } from \"svelte/store\";\n import { getTxUrl } from \"./service\";\n export let options: {\n title: string;\n isSui?: boolean;\n description: string | undefined;\n subtitle: string;\n orders: TPaymentReturn[\"items\"];\n networkType?: string;\n tokenImage?: string;\n };\n const { openUI } = get(fn);\n let {\n title,\n subtitle,\n orders,\n networkType,\n tokenImage,\n isSui,\n } = options;\n\n const successfulOrders = (orders ?? []).filter((o) => o.tx);\n const failedOrders = (orders ?? []).filter((o) => !o.tx);\n\n function retryPurchase() {\n const hasAssets = failedOrders.some((order) => order.asset);\n if (hasAssets) {\n const assets = failedOrders\n .filter((order) => order.asset)\n .map((order) => ({\n packageId: order.asset!.packageId,\n type: order.asset!.type,\n assetId: order.asset!.assetId,\n amount: order.asset!.amount,\n }));\n if (!assets.length) return;\n\n openUI(Pages.PAYMENT, {\n subtitle: \"Retrying failed orders\",\n payments: {\n credenzaStoredValue: {\n disabled: false,\n },\n },\n assets,\n });\n\n return;\n }\n const tokens: {\n contractAddress: string;\n tokenId: number;\n amount: number;\n }[] = [];\n\n const memberships: {\n contractAddress: string;\n }[] = [];\n\n for (const order of failedOrders) {\n const directive = order.directive;\n if (directive.type !== \"membership\") {\n tokens.push({\n contractAddress: directive.resource_id,\n tokenId: directive.value?.token_id,\n amount: directive.value.amount,\n });\n } else {\n memberships.push({\n contractAddress: directive.resource_id,\n });\n }\n }\n \n if (!tokens.length && !memberships.length) return;\n openUI(Pages.PAYMENT, {\n subtitle: \"Retrying failed orders\",\n payments: {\n credenzaStoredValue: {\n disabled: false,\n },\n },\n tokens,\n memberships,\n });\n }\n</script>\n\n<div>\n <div\n class=\"crtw-text-black-900 crtw-text-xl md:crtw-text-2xl crtw-font-semibold crtw-pt-5 crtw-mb-3.5 crtw-text-center\"\n >\n {title}\n </div>\n <div class=\"crtw-mb-3.5 crtw-text-sm crtw-text-justify\">\n {subtitle}\n </div>\n {#if tokenImage}\n <div class=\"crtw-my-4 flex justify-center\">\n <div\n class=\"crtw-w-64 crtw-h-64 crtw-rounded-xl crtw-shadow-md crtw-bg-white flex items-center justify-center overflow-hidden\"\n >\n <img\n src={tokenImage}\n alt=\"Token\"\n class=\"max-w-full max-h-full object-contain\"\n />\n </div>\n </div>\n {/if}\n\n <div class=\"crtw-mb-3.5 crtw-text-sm crtw-text-justify\">\n {#if orders.length}\n <div class=\"crtw-mt-6\">\n <div class=\"crtw-text-lg crtw-font-semibold crtw-mb-2\">Successful</div>\n {#each successfulOrders as order}\n {#if order.tx}\n <div class=\"crtw-mb-2\">\n <a\n href={getTxUrl(\n { chainId: order.directive?.chain_id || \"\" },\n order.tx,\n order.directive.chain_type,\n networkType || \"\"\n )}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n class=\"crtw-text-blue-600 crtw-underline\"\n >\n <div class=\"crtw-break-words\">\n {#if order.metadata?.name}\n {order.metadata.name}\n {:else}\n <span>{order.directive.type}</span>\n <span\n class=\"crtw-break-all crtw-whitespace-normal crtw-break-words\"\n >\n ({order.directive.resource_id})\n </span>\n {/if}\n </div>\n </a>\n </div>\n {/if}\n {/each}\n\n <div\n class=\"crtw-text-lg crtw-font-semibold crtw-mt-6 crtw-mb-2\"\n class:hidden={!failedOrders.length}\n >\n Failed\n </div>\n {#if failedOrders.length}\n {#each failedOrders as order}\n <div class=\"crtw-mb-3\">\n <p class=\"crtw-text-red-600 break-words\">\n {#if order.metadata?.name}\n {order.metadata.name}\n {:else if order.directive?.type}\n <span>{order.directive.type} </span>\n <span class=\"text-gray-500 break-all whitespace-normal\">\n ({order.directive.resource_id})\n </span>\n {:else if order.asset?.assetId}\n AssetId {order.asset.assetId} : {order.error}\n {:else}\n <span>{order.asset?.type}</span>\n <span\n class=\"crtw-break-all crtw-whitespace-normal crtw-break-words\"\n >\n ({order.asset?.packageId}) : {order.error}\n </span>\n {/if}\n </p>\n </div>\n {/each}\n {/if}\n <button\n class=\"crtw-bg-black hover:crtw-bg-gray-800 crtw-text-white crtw-px-4 crtw-py-2 crtw-rounded-md crtw-mt-4\"\n on:click={retryPurchase}\n >\n Try Again\n </button>\n </div>\n {:else if isSui}\n If you are not seeing your new token, please contact\n <a href=\"mailto:support@credenza3.com\" class=\"text-blue-600 underline\">\n support@credenza3.com\n </a>.\n {:else}\n Typically, your purchase will be processed within a few seconds. In the\n event of unusually high traffic, you may have to wait as much as a minute\n or so. If several minutes pass and you are not seeing your purchase,\n please contact\n <a class=\"crtw-underline\" href=\"mailto:support@credenza3.com\"\n >support@credenza3.com</a\n >.\n {/if}\n </div>\n</div>\n","<script lang=\"ts\">\n import { get } from 'svelte/store'\n import { pageOptsStore } from '@packages/stores'\n import { PaymentResult } from '@packages/ui'\n import { configStore } from '@src/stores/config'\n\n let config = get(configStore)\n</script>\n\n<PaymentResult\n options={{\n title: $pageOptsStore?.title || config.content?.paymentResult?.title || 'Success!',\n subtitle: $pageOptsStore?.subtitle || config.content?.paymentResult?.subtitle || 'Your payment was successful!',\n description: $pageOptsStore?.description || config.content?.paymentResult?.description,\n orders: $pageOptsStore?.orders || [],\n tokenImage: $pageOptsStore?.tokenImage || '',\n }}\n/>\n"],"names":["getTxUrl","item","tx","chainType","networkType","options","openUI","get","fn","title","subtitle","orders","isSui","successfulOrders","o","failedOrders","retryPurchase","order","assets","Pages","tokens","memberships","directive","_a","div","root","div_1","$.child","text","$.reset","div_2","$.sibling","div_3","root_1","div_4","img","$.template_effect","$.set_attribute","tokenImage","$$render","consequent","div_5","node","div_6","root_2","$.each","node_2","div_7","root_4","a","div_8","$.set_text","text_2","$.get","$.untrack","span","$.first_child","fragment_2","span_1","text_4","text_3","consequent_1","alternate","$0","consequent_2","div_9","node_5","node_6","div_10","root_8","p","text_5","fragment_5","span_3","text_6","span_4","fragment_7","span_5","text_10","text_9","consequent_3","consequent_4","consequent_5","alternate_1","consequent_6","classes","consequent_7","$pageOptsStore","config","PaymentResult","$$anchor"],"mappings":";;;AAAO,SAASA,GACZC,GACAC,GACAC,GACAC,GACA;AACA,MAAID,MAAc;AAChB,WAAO,uBAAuBC,CAAW,OAAOF,CAAE;AAGpD,UAAQ,OAAOD,EAAK,OAAO,GAAA;AAAA,IACzB,KAAK;AACH,aAAO,8BAA8BC,CAAE;AAAA,IACzC,KAAK;AACH,aAAO,4BAA4BA,CAAE;AAAA,IACvC,KAAK;AACH,aAAO,2CAA2CA,CAAE;AAAA,IACtD,KAAK;AACH,aAAO,mCAAmCA,CAAE;AAAA,IAC9C,KAAK;AACH,aAAO,oCAAoCA,CAAE;AAAA,IAC/C,KAAK;AACH,aAAO,mDAAmDA,CAAE;AAAA,IAC9D;AACE,aAAO;AAAA,EAAA;AAEb;;;;;;;;kBC1BF;;;MAkBIG;UAeK,QAAAC,EAAG,IAAEC,GAAOC,EAAE;QAEb,OAAAC,GACA,UAAAC,GACA,QAAAC,GACD,aAAAP,kBACiB,OAAAQ,EAAA,IAEpBP,EAAA;AAEE,QAAAQ,MAAUF,KAAA,CAAA,GAAA,OAAA,CAAAG,MAAAA,EAAA,EAAA,GACRC,KAAAJ,KAAA,CAAA,GAAqB,OAAA,CAAAG,MAAA,CAAAA,EAAA,EAAA;WAEpBE,KAAA;;QACFD,EAAA,MAAAE,MAAAA,EAAA,KAAA,GACK;AACN,YAAAC,IAAAH,EAEF,OAAA,CAAAE,MAAAA,EAAA,KAAA,EACF,IAAA,CAAAA,OAAA;AAAA,QACM,WAIEA,EAAA,MAAA;AAAA,QAEF,MAAAA,QAEE;AAAA,QAEH,SAAMA,EAAS,MAAA;AAAA,QAClB,QAAMA,EAAS,MAAQ;AAAA;aAEf,OAAM;AAEV,MAAAX,EAAAa,GAAA,SAAS;AAAA,QACT,UAAA;AAAA,kBACA,EACJ,qBAAA,EAAO,UAAA,GAAA,EAAA;AAAA;;;IAOkC;UACrCC,IAAM,CAAA,GAMTC,IAAA,CAAA;eAILJ,KAAAF,GAAA;YACMO,IAAAL,EAAA;gCAEJG,EAAA,KAAA;AAAA,QACD,iBAAAE,EAAA;AAAA,QACO,UAAMC,IAAAD,EAAW,6CAAS;AAAA,QAClC,QAAAA,EAAA,MAAA;AAAA,WAGKD,EAAc,KAAI,EACpB,iBAAQC,EAAA,YAAA,CAAA;AAAA,IAGT;AAEI,IAAA,CAAAF,EAAO,UAAO,CAAGC,EAAc,UACvCf,EAAMa,GAAA,SAAA;AAAA,MACN,UAAS;AAAA,MACT,UAAc,EACd,qBAAoB,EACV,UAAU,GAAG,EAAA;AAAA,MAGjB,QAAAC;AAAA,MACA,aAAAC;AAAA;EAEJ;;;;;;;;;;;;MAGFG,IAAAC,GAAA,GACAC,IAAAC,EADAH,CAAA,GACAI,KAAAD,EAAAD,GAAA,EAAA;AAAAG,EAAAA,EAAAH,CAAA;AAKA,MAAAI,IAAAC,EALAL,GAAA,CAAA,UAKAI,GAAA,EAAA;IAAAA,CAAA;YAAAA,GAAA,CAAA;;;UAIAE,IAAAC,GAAA,GACAC,IAAAP,EADAK,CAAA,GAIAG,IAAAR,EAHAO,CAAA;AAAAL,MAAAA,EAAAK,CAAA,KADAF,CAAA,GAIAI,EAAA,MAAAC,EAAAF,GAAA,OACAG,CAAqB,CAAA,QALrBN,CAAA;AAAA;;MADAM,KAAAC,EAAAC,EAAA;AAAA;;MAcAC,IAAAV,EAAAW,GAAA,CAAA,UAAAD,CAAA;;;UAEAE,IAAAC,GAAA,WAAAD,CAAA,GAAA,CAAA;AAEeE,MAAAA,GAAAC,GAAA,GAAA,MAAAjC,YAAEI,MAAA;;;;gBAEL8B,IAAEC,GAAA,GACAC,IAAAtB,EADFoB,CAAE,GAYGG,IAAAvB,EAXHsB,CAAA,SAWGC,CAAA;;;;AAdAd,gBAAAA,EAAA,MAAAe,EAAAC,IAAAC,EAAApC,CAAA,GAAAqC,EAAA,MAAAD,EAgBEpC,CAAM,EAAA,SAAS,IAAI,EAAA,CAAA;;8BAEnBsC,IAAMC,EAAAC,CAAA,SAANF,GAAM,EAAA;kBAANA,CAAM;AACN,oBAAAG,IAAA3B,EADAwB,GAAM,CAAA,GACNI,IAAAhC,EAAA+B,CAAA;AAAA7B,gBAAAA,EAAA6B,CAAA;AAnBFP,kBAAAA,EAAAS,IAAAP,EAAApC,CAAA,GAAAqC,EAAA,MAAAD,EAkBQpC,CAAM,EAAA,UAAU,IAAM,EAAA,cAlB9BA,CAAA,aAsBMA,CAAG,EAAA,UAAa,WAAO;;;;AAtB7B,gBAAAoC,EAAApC,CAAA,GAAAqC,EAAA,MAAAD,GAeU,EAAA,UAAU,IAAI,IAAAd,EAAAsB,CAAA,IAAAtB,EAAAuB,GAAA,EAAA;AAAA;;cADxBZ,CAAA,GAXHrB,EAAAoB,CAAA,KADFF,CAAE,GACAX,EAAA,CAAA2B,MAAA1B,EAAAY,GAAA,QAAAc,CAAA,GAAA;AAAA,wBArIJ/D,EAAW,KAkIJiB,CAAA,gBAKR,SAAAoC,EAAApC,CAAA,EAAA,WAAA,YAAA,GAAA,GAAAoC,EACQpC,OAASoC,EACVpC,CAAO,EAAC,UAAC,YACjBb,KAAA,EAAA,CAAA;AAAA,qBANI2C,CAAE;AAAA;;cAFG9B,CAAA,GAAAqC,EAAA,MAAAD,EACHpC,CAAG,EAAA,EAAA,KAAAsB,EAAAyB,CAAA;AAAA;;;;AA8BjB,UAAAC,IAAAlC,EAAAe,GAAA,CAAA;;AAAA,UAAAoB,IAAAnC,EAAAkC,GAAA,CAAA;;;;AAOapB,UAAAA,GAAAsB,GAAA,GAAA,MAAApD,WAAoBE,MAAA;gBACzBmD,IAAAC,GAAA,GACMC,MADNF,CAAA,SACME,CAAA;;;;AAFmBlC,gBAAAA,EAAA,MAAAe,EAAAoB,IAAAlB,EAAApC,CAAA,GAAAqC,EAAA,MAAAD,EAItBpC,CAAA,EAAA,SAAA,IAAA,EAAA,CAAA;;kCAEUuC,EAAAgB,CAAA,YAAA,EAAA;mBAAA;AACN,oBAAAC,SADM,CAAA,SACNA,CAAO;kBAAPA,CAAO;AAPWtB,kBAAAA,EAAAuB,IAAArB,EAAApC,CAAA,GAAAqC,EAAA,MAAAD,EAMZpC,CAAO,EAAA,8BANKA,CAAA,aAQjBA,CAAU,EAAA,UAAA,WAAA;;;;0CAROA,CAAA,GAAAqC,EAAA,MAAAD,EAWXpC,CAAS,EAAA,MAAQ,sBAXNA,CAAA,GAAAqC,EAAA,MAAAD,EAWgBpC,CAAO,EAAC,KAAK,KAAA,EAAA,EAAA,CAAA;;8BAE9C0D,IAAOnB,EAAAoB,CAAA,SAAPD,GAAO,EAAA;kBAAPA,CAAO;AACV,oBAAAE,IAAA9C,EADG4C,GAAO,CAAA,GACVG,IAAAnD,EAAAkD,CAAA;AAAAhD,gBAAAA,EAAAgD,CAAA;AAdoB1B,kBAAAA,EAAA4B,IAAA1B,EAAApC,CAAA,GAAAqC,EAAA,MAAAD,EAaTpC,CAAA,EAAO,OAAM,IAAI,EAAA,cAbRA,CAAA,GAAAqC,EAAA,MAAAD,EAiB1BpC,CAAA,EAAA,OAAA,SAAA,KAAA,EAAA,OAAAoC,EAjB0BpC,CAAA,GAAAqC,EAAA,MAAAD,EAiB1BpC,CAAA,EAAA,KAAA,KAAA,EAAA,EAAA;AAAA;;;kBAjB0BA,CAAA,GAAAqC,EAAA,MAAAD,EAGjBpC,CAAA,EAAA,UAAA,IAAA,IAAAsB,EAAAyC,CAAA,KAAA3B,EAHiBpC,CAAA,GAAAqC,EAAA,MAAAD,EAKdpC,CAAA,EAAA,WAAA,IAAA,IAAAsB,EAAA0C,GAAA,CAAA,KAAA5B,EALcpC,CAAA,aAUvBA,CAAA,EAAA,OAAA,OAAA,IAAAsB,EAAA2C,GAAA,CAAA,IAAA3C,EAAA4C,GAAA,EAAA;AAAA;;cARIb,CAAA,KADNF,CAAA,QAAAA,CAAA;AAAA;;;AAFE,UAAAd,EAAA,MAAAvC,QAAqB,KAAAwB,EAAA6C,EAAA;AAAA;;;QAvC/BzC,CAAA,kBAiCAsB,GAAA,GAAA,uDAAA,MAAAoB,GAAA,EAAA,QAAA,CAEiBtE,EAAA,OAAA,CAAA,CAAA,6BAnCjB4B,CAAA;AAAA;;;;;;;;cADAhC,EAAA,MAAsB,IAAA4B,EAAA+C,EAAA;;;WADtB7C,CAAA,KAvBAjB,CAAA;UAIAf,CAAA,SAGAC,CAAA;AAAA,WAPAc,CAAA;AAFQ;kBCpHR;;;;;;;;;;;;MAaI,OAAA+D,yBAA4C,eAAgB,SAAA;AAAA,MAC5D,UAASA,EAAe,GAAA,YAAYC,EAAA,SAAA,eAAA,YAAA;AAAA,MACpC,aAAaD,EAAc,GAAC,eAAgBC,EAAA,SAAA,eAAA;AAAA,MAC7C,QAAAD,KAAA,UAAA,CAAA;AAAA,MACF,YAAAA,EAAA,GAAA,cAAA;AAAA;AAND,IAAAE,GAAAC,GAAA;AAAA;;;;;;;AAFC;"}
|