@credenza3/passport-evm 0.3.17 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/README.md +0 -8
  2. package/dist/{App-CanFU0id.js → App-BtqXZ1xE.js} +18 -18
  3. package/dist/{App-CanFU0id.js.map → App-BtqXZ1xE.js.map} +1 -1
  4. package/dist/{Button-CxIvDvFK.js → Button-BYqip4Js.js} +4 -4
  5. package/dist/{Button-CxIvDvFK.js.map → Button-BYqip4Js.js.map} +1 -1
  6. package/dist/{ButtonBack-DSwOaTcC.js → ButtonBack-DkLjJD0s.js} +4 -4
  7. package/dist/{ButtonBack-DSwOaTcC.js.map → ButtonBack-DkLjJD0s.js.map} +1 -1
  8. package/dist/{ButtonLink-CCxv4UWh.js → ButtonLink-_yLeX73P.js} +3 -3
  9. package/dist/{ButtonLink-CCxv4UWh.js.map → ButtonLink-_yLeX73P.js.map} +1 -1
  10. package/dist/{ConfirmAccount-AjJ81eO0.js → ConfirmAccount-CH5-0a7-.js} +9 -9
  11. package/dist/{ConfirmAccount-AjJ81eO0.js.map → ConfirmAccount-CH5-0a7-.js.map} +1 -1
  12. package/dist/{ContentHeader-Ch9zGhC2.js → ContentHeader-erdl7HI3.js} +3 -3
  13. package/dist/{ContentHeader-Ch9zGhC2.js.map → ContentHeader-erdl7HI3.js.map} +1 -1
  14. package/dist/{Error-B6pgND_C.js → Error-BQuyaXRN.js} +5 -5
  15. package/dist/{Error-B6pgND_C.js.map → Error-BQuyaXRN.js.map} +1 -1
  16. package/dist/{Input-Cgo8a7CN.js → Input-BuyGtqdy.js} +4 -4
  17. package/dist/{Input-Cgo8a7CN.js.map → Input-BuyGtqdy.js.map} +1 -1
  18. package/dist/{Label-CeKxLCHz.js → Label-Cv3WbQU2.js} +3 -3
  19. package/dist/{Label-CeKxLCHz.js.map → Label-Cv3WbQU2.js.map} +1 -1
  20. package/dist/{Loader-CSmxivr0.js → Loader-C5FXreU6.js} +3 -3
  21. package/dist/{Loader-CSmxivr0.js.map → Loader-C5FXreU6.js.map} +1 -1
  22. package/dist/{Login-Cs3-BL_H.js → Login-D-O9JGfO.js} +9 -9
  23. package/dist/{Login-Cs3-BL_H.js.map → Login-D-O9JGfO.js.map} +1 -1
  24. package/dist/{Logout-CkFfClrM.js → Logout-C3zWvSiJ.js} +6 -6
  25. package/dist/{Logout-CkFfClrM.js.map → Logout-C3zWvSiJ.js.map} +1 -1
  26. package/dist/{Nav-C_prox_b.js → Nav-CQ5SHknn.js} +5 -5
  27. package/dist/{Nav-C_prox_b.js.map → Nav-CQ5SHknn.js.map} +1 -1
  28. package/dist/{PassportId-Bo-HFYek.js → PassportId-CO_PCyZ3.js} +6 -6
  29. package/dist/{PassportId-Bo-HFYek.js.map → PassportId-CO_PCyZ3.js.map} +1 -1
  30. package/dist/{Payment-DmFa9B8g.js → Payment-CLkfv6eG.js} +10 -10
  31. package/dist/{Payment-DmFa9B8g.js.map → Payment-CLkfv6eG.js.map} +1 -1
  32. package/dist/{PaymentResult-D4RCY13e.js → PaymentResult-C-4HPlhG.js} +4 -4
  33. package/dist/{PaymentResult-D4RCY13e.js.map → PaymentResult-C-4HPlhG.js.map} +1 -1
  34. package/dist/{Profile-CX_eMAiA.js → Profile-CTcyZPK1.js} +7 -7
  35. package/dist/{Profile-CX_eMAiA.js.map → Profile-CTcyZPK1.js.map} +1 -1
  36. package/dist/{ProgressVideo-CLqVP33y.js → ProgressVideo-BinhNiVf.js} +5 -5
  37. package/dist/{ProgressVideo-CLqVP33y.js.map → ProgressVideo-BinhNiVf.js.map} +1 -1
  38. package/dist/{RichAlert-D6u_Mwz4.js → RichAlert-CDWETMCT.js} +5 -5
  39. package/dist/{RichAlert-D6u_Mwz4.js.map → RichAlert-CDWETMCT.js.map} +1 -1
  40. package/dist/{Scanner-BLy2sDRu.js → Scanner-CrrR8MPk.js} +6 -6
  41. package/dist/{Scanner-BLy2sDRu.js.map → Scanner-CrrR8MPk.js.map} +1 -1
  42. package/dist/{SendTokens-BIN9i14X.js → SendTokens-gP53gzEW.js} +7 -7
  43. package/dist/{SendTokens-BIN9i14X.js.map → SendTokens-gP53gzEW.js.map} +1 -1
  44. package/dist/{Sign-CNg2p87X.js → Sign-C5GPQsdv.js} +6 -6
  45. package/dist/{Sign-CNg2p87X.js.map → Sign-C5GPQsdv.js.map} +1 -1
  46. package/dist/{Stripe.service-NHf-uI1F.js → Stripe.service-Qmgd4nyp.js} +3 -3
  47. package/dist/{Stripe.service-NHf-uI1F.js.map → Stripe.service-Qmgd4nyp.js.map} +1 -1
  48. package/dist/{UpdateProfile-Em1EcHJp.js → UpdateProfile-BzAZCLYQ.js} +10 -10
  49. package/dist/{UpdateProfile-Em1EcHJp.js.map → UpdateProfile-BzAZCLYQ.js.map} +1 -1
  50. package/dist/{UserInfo-DkUmsLYp.js → UserInfo-CjCM8mcm.js} +4 -4
  51. package/dist/{UserInfo-DkUmsLYp.js.map → UserInfo-CjCM8mcm.js.map} +1 -1
  52. package/dist/{Wallet-HGVIOJHc.js → Wallet-DvnyF4dQ.js} +7 -7
  53. package/dist/{Wallet-HGVIOJHc.js.map → Wallet-DvnyF4dQ.js.map} +1 -1
  54. package/dist/{each-9VZsbwex.js → each-CjfYUvq_.js} +2 -2
  55. package/dist/{each-9VZsbwex.js.map → each-CjfYUvq_.js.map} +1 -1
  56. package/dist/{html-C0FHk8Xg.js → html-CXNwf8yV.js} +3 -3
  57. package/dist/{html-C0FHk8Xg.js.map → html-CXNwf8yV.js.map} +1 -1
  58. package/dist/{index-DNQhfOgj.js → index-C9Qoc82Y.js} +2339 -2356
  59. package/dist/{index-DNQhfOgj.js.map → index-C9Qoc82Y.js.map} +1 -1
  60. package/dist/{index-client-la_93dBE.js → index-client-BaarVXQo.js} +2 -2
  61. package/dist/{index-client-la_93dBE.js.map → index-client-BaarVXQo.js.map} +1 -1
  62. package/dist/{input-BbeLOXf2.js → input-CXcz4D8_.js} +2 -2
  63. package/dist/{input-BbeLOXf2.js.map → input-CXcz4D8_.js.map} +1 -1
  64. package/dist/{legacy-emYZq_hG.js → legacy-CdJ9S7Uy.js} +2 -2
  65. package/dist/{legacy-emYZq_hG.js.map → legacy-CdJ9S7Uy.js.map} +1 -1
  66. package/dist/passport.es.js +1 -1
  67. package/dist/passport.umd.js +65 -65
  68. package/dist/passport.umd.js.map +1 -1
  69. package/dist/types/Passport.d.ts +1 -1
  70. package/dist/types/passport/auth.d.ts +1 -9
  71. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PassportId-Bo-HFYek.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","$.get","__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"],"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;;;;aAGaG;AAAA;;;;;;;uBAJrBK,CAAS,kBAKHC,GAAA,SAAAE,EAAAH,CAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAHN;kBC1DA;;;;AAAiB,MAAAI,IAAA,QAAA,KAAA,aAAA,SAAAC,GAAAC,GAAAC,GAAAC,GAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;UAWN,YAAAC,EAAW,IAAAC,EAAMC,EAAA;AAE1B,MAAAT,MAA2B,IAAA,GAC3BU,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;QAEFhB,GAAUsB,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,GAEHb,IAAA,MAAAK,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,EAAAxB,GAAkB,IAAA,GAEnBW,EAAI;AAAA;;uBARPX,CAAS,KACTU,CAAO,eAREuB,CAAW;MAiErB,OAAA;AAAA,MACC,aAAS;AAAA,MACP,aAAAjC,CAAQ;AAAA,MACR,gBAAcU,CAAK;AAAA,MACnB,SAASC;AAAA,MACT,iBAAc;AAAA,QACd,kBAASuB,KAAY,YAAA;AAAA,QACrB,UAAAhB,EAAiB;AAAA,QACf,aAAAe;;MAEN,SAAApC;AAAA;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"PassportId-CO_PCyZ3.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","$.get","__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"],"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;;;;aAGaG;AAAA;;;;;;;uBAJrBK,CAAS,kBAKHC,GAAA,SAAAE,EAAAH,CAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAHN;kBC1DA;;;;AAAiB,MAAAI,IAAA,QAAA,KAAA,aAAA,SAAAC,GAAAC,GAAAC,GAAAC,GAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;UAWN,YAAAC,EAAW,IAAAC,EAAMC,EAAA;AAE1B,MAAAT,MAA2B,IAAA,GAC3BU,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;QAEFhB,GAAUsB,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,GAEHb,IAAA,MAAAK,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,EAAAxB,GAAkB,IAAA,GAEnBW,EAAI;AAAA;;uBARPX,CAAS,KACTU,CAAO,eAREuB,CAAW;MAiErB,OAAA;AAAA,MACC,aAAS;AAAA,MACP,aAAAjC,CAAQ;AAAA,MACR,gBAAcU,CAAK;AAAA,MACnB,SAASC;AAAA,MACT,iBAAc;AAAA,QACd,kBAASuB,KAAY,YAAA;AAAA,QACrB,UAAAhB,EAAiB;AAAA,QACf,aAAAe;;MAEN,SAAApC;AAAA;;;;;;;;;;;;;"}
@@ -1,11 +1,11 @@
1
- import { c as ue, m as et, p as P, f as H, i as pe, k as Ne, e as De, b as D, d as ye, u as le, t as _e, r as Te, h as we, s as tt, g as Ee, a as Me, j as nt, o as ve, n as Oe, q as it } from "./legacy-emYZq_hG.js";
2
- import { a as Be, o as at } from "./index-client-la_93dBE.js";
3
- import { z as de, B as $, C as j, D as fe, y as ce, u as x, m as N, bm as Q, v as re, I as C, A as U, w as Ie, E as Y, J as t, Z as be, G as te, F as st, x as ae, O as X, P as ee, N as G, bd as Fe, Q as Pe, M as ge, bn as Ue, b9 as xe, a4 as ze, a2 as qe, bo as We, R as oe, T as ne, V as ie, bp as rt, bq as $e, a1 as je, a3 as se, a5 as ot, br as Ce, bg as pt, bs as Re, bt as ut, bf as yt } from "./index-DNQhfOgj.js";
4
- import { a as lt } from "./App-CanFU0id.js";
5
- import { B as dt } from "./ButtonBack-DSwOaTcC.js";
1
+ import { c as ue, m as et, p as P, f as H, i as pe, k as Ne, e as De, b as D, d as ye, u as le, t as _e, r as Te, h as we, s as tt, g as Ee, a as Me, j as nt, o as ve, n as Oe, q as it } from "./legacy-CdJ9S7Uy.js";
2
+ import { a as Be, o as at } from "./index-client-BaarVXQo.js";
3
+ import { z as de, B as $, C as j, D as fe, y as ce, u as x, m as N, bm as Q, v as re, I as C, A as U, w as Ie, E as Y, J as t, Z as be, G as te, F as st, x as ae, O as X, P as ee, N as G, bd as Fe, Q as Pe, M as ge, bn as Ue, b9 as xe, a4 as ze, a2 as qe, bo as We, R as oe, T as ne, V as ie, bp as rt, bq as $e, a1 as je, a3 as se, a5 as ot, br as Ce, bg as pt, bs as Re, bt as ut, bf as yt } from "./index-C9Qoc82Y.js";
4
+ import { a as lt } from "./App-BtqXZ1xE.js";
5
+ import { B as dt } from "./ButtonBack-DkLjJD0s.js";
6
6
  import { p as ct } from "./event-modifiers-D4czZCB6.js";
7
- import { L as Ve } from "./Loader-CSmxivr0.js";
8
- import { B as Ye } from "./Button-CxIvDvFK.js";
7
+ import { L as Ve } from "./Loader-C5FXreU6.js";
8
+ import { B as Ye } from "./Button-BYqip4Js.js";
9
9
  const mt = "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 Tt = H('<button type="submit"><!></button>');
11
11
  const ft = {
@@ -578,7 +578,7 @@ function He(c, i) {
578
578
  y(!1);
579
579
  }), V = (d) => l(void 0, void 0, void 0, function* () {
580
580
  try {
581
- const { processPayment: M } = yield import("./Stripe.service-NHf-uI1F.js"), o = yield M(d);
581
+ const { processPayment: M } = yield import("./Stripe.service-Qmgd4nyp.js"), o = yield M(d);
582
582
  yield Lt(o, u(), s());
583
583
  } catch (M) {
584
584
  f(`Payment error: ${M.message || M}`, "failure"), oe.set({ errorMessage: M.message || M }), ne.set(ie.ERROR), X(ee.ERROR, { error: M });
@@ -927,7 +927,7 @@ function Xe(c, i) {
927
927
  {
928
928
  var O = (o) => {
929
929
  var r = Me(), E = ae(r);
930
- lt(E, () => import("./ProgressVideo-CLqVP33y.js"), null, (b, _) => {
930
+ lt(E, () => import("./ProgressVideo-BinhNiVf.js"), null, (b, _) => {
931
931
  var z = Me(), q = ae(z);
932
932
  it(q, () => t(_).default, (B, e) => {
933
933
  e(B, {});
@@ -1024,4 +1024,4 @@ export {
1024
1024
  Vt as g,
1025
1025
  xt as r
1026
1026
  };
1027
- //# sourceMappingURL=Payment-DmFa9B8g.js.map
1027
+ //# sourceMappingURL=Payment-CLkfv6eG.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Payment-DmFa9B8g.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 }\n export let isPaymentDisabled: boolean\n export let isLoading: boolean\n export let totalToPay: string\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={`Pay ${currencySymbol}${totalToPay}`}\n onClick={onPay}\n disabled={isPaymentDisabled}\n bind:isLoading\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: 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 (apiUrl: string, orderId: string): Promise<TPaymentReturn> => {\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 if (!res.ok) throw new Error(\"Failed to get order details\");\n return await res.json();\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 return await res.json();\n }\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 = (\n orders: TPaymentReturn[\"items\"],\n): 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 import type { TLicensePaymentData, TMembershipPaymentData, TTokenPaymentData } from '../oders.types'\n\n export let priceCents: number\n export let isLoading: boolean\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n export let purchaseConfig: {\n title: string\n subtitle: string\n tokens: TTokenPaymentData[]\n memberships: TMembershipPaymentData[]\n licenses: TLicensePaymentData[]\n }\n export let isPriceLoading: boolean\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, purchaseConfig)\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 $: isPaymentDisabled = !isButtonActive || isLoading || isPriceLoading\n $: totalToPay = (priceCents / 100).toFixed(2)\n</script>\n\n<StripeComponent\n bind:isPaymentDisabled\n bind:isLoading\n bind:totalToPay\n options={{\n isCardFocused,\n onPay: handleSubmit,\n }}\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\n export let totalPriceToken: number\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n export let purchaseConfig: any\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: purchaseConfig.title,\n subtitle: purchaseConfig.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 tokenOrTypeId = item.tokenId ? item.tokenId : (item.typeId as string)\n const priceToken = pricesByToken[`${item.contractAddress}/${tokenOrTypeId}`]\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 tokenOrTypeId,\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 = [...(purchaseConfig.tokens || []), ...(purchaseConfig.memberships || [])].map(\n (item, index) => processPaymentItem(item, index + 1),\n )\n\n const licensesPaymentPromises = [...(purchaseConfig.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: purchaseConfig.tokens,\n memberships: purchaseConfig.memberships,\n total: totalPriceToken,\n description: (purchaseConfig?.title ?? '') + `(${purchaseConfig?.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)} ${$clientPublicStore?.ui_settings.cred_alias || 'cred'}`\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 } 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\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\n let pricesByToken: { [key: string]: number } = {}\n\n const getTokenPrice = async (contractAddress: string, tokenId: number, licenseType?: string): Promise<[number, number]> => {\n let priceCents = 0\n let priceToken = 0\n if (licenseType) {\n const contract = new ethers.Contract(contractAddress, content_abi, $providerStore)\n priceCents = await contract.getLicensePriceFiat(String(tokenId), licenseType).then((result) => Number(result))\n priceToken = await contract.getLicensePriceToken(String(tokenId), licenseType).then((result) => 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) => Number(result))\n priceToken = 0\n\n if (priceCents === 0) {\n ;[priceCents, priceToken] = await Promise.all([\n sellableContract.getPriceFiat(DEFAULT_TOKEN_ID).then((result) => Number(result)),\n sellableContract.getPriceToken(DEFAULT_TOKEN_ID).then((result) => Number(result)),\n ])\n } else {\n priceToken = await sellableContract.getPriceToken(tokenId).then((result) => 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 } else {\n \n const tokenId = token.tokenId || (token.typeId as string) || (token.contentTokenId as string) || DEFAULT_TOKEN_ID\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 console.log(pricesByToken, totalSumToken)\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 <Stripe priceCents={totalSumCents} {isPriceLoading} purchaseConfig={$pageOptsStore} bind:isLoading />\n </div>\n <div slot=\"cred-balance\">\n <CredenzaBalance\n {pricesByToken}\n totalPriceToken={totalSumToken}\n {isPriceLoading}\n purchaseConfig={$pageOptsStore}\n bind:isLoading\n />\n </div>\n</Payment>\n"],"names":["LockIcon","onClick","$.prop","$$props","text","disabled","isLoading","$$render","consequent","alternate","isActive","$$args","options","user","title","subtitle","onBackClick","isCardDisabled","activeTab","PaymentViews","isCredezaValueDisabled","isPaymentDisabled","totalToPay","isCardFocused","onPay","currencySymbol","credAlias","onGetCred","formattedBalance","balance","$.template_effect","$.set_text","text_1","$.get","__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","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","Stripe","$.mutable_source","cardElement","clientName","$.set","_a","isButtonActive","handleSubmit","tokenId","processPayment","totalPriceToken","pricesByToken","isBalanceLoading","symbol","contract","decimals","userAddress","signer","credContract","afterPayment","index","priceToken","getTxScanAddress","ethers","processPaymentItem","credenzaSellableMinAbi","credenzaSellableContract","tokenOrTypeId","approveTx","sendContractTx","buyTx","processLicensePaymentItem","licenseContract","license_abi","buyLicenseWithTokenFunction","payWithCredenza","tokensAndMembershipsPaymentPromises","licensesPaymentPromises","chainId","_b","getCREDContract","provider","providerStore","close","totalSumCents","totalSumToken","getTokenPrice","contractAddress","licenseType","content_abi","$providerStore","sellableContract","DEFAULT_TOKEN_ID","calculateTotalPrice","items","token","$contractsStore","unsub","store","_c","onDestroy","$configStore","$.await","node_1","module","$pageOptsStore"],"mappings":"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"}
1
+ {"version":3,"file":"Payment-CLkfv6eG.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 }\n export let isPaymentDisabled: boolean\n export let isLoading: boolean\n export let totalToPay: string\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={`Pay ${currencySymbol}${totalToPay}`}\n onClick={onPay}\n disabled={isPaymentDisabled}\n bind:isLoading\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: 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 (apiUrl: string, orderId: string): Promise<TPaymentReturn> => {\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 if (!res.ok) throw new Error(\"Failed to get order details\");\n return await res.json();\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 return await res.json();\n }\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 = (\n orders: TPaymentReturn[\"items\"],\n): 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 import type { TLicensePaymentData, TMembershipPaymentData, TTokenPaymentData } from '../oders.types'\n\n export let priceCents: number\n export let isLoading: boolean\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n export let purchaseConfig: {\n title: string\n subtitle: string\n tokens: TTokenPaymentData[]\n memberships: TMembershipPaymentData[]\n licenses: TLicensePaymentData[]\n }\n export let isPriceLoading: boolean\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, purchaseConfig)\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 $: isPaymentDisabled = !isButtonActive || isLoading || isPriceLoading\n $: totalToPay = (priceCents / 100).toFixed(2)\n</script>\n\n<StripeComponent\n bind:isPaymentDisabled\n bind:isLoading\n bind:totalToPay\n options={{\n isCardFocused,\n onPay: handleSubmit,\n }}\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\n export let totalPriceToken: number\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n export let purchaseConfig: any\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: purchaseConfig.title,\n subtitle: purchaseConfig.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 tokenOrTypeId = item.tokenId ? item.tokenId : (item.typeId as string)\n const priceToken = pricesByToken[`${item.contractAddress}/${tokenOrTypeId}`]\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 tokenOrTypeId,\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 = [...(purchaseConfig.tokens || []), ...(purchaseConfig.memberships || [])].map(\n (item, index) => processPaymentItem(item, index + 1),\n )\n\n const licensesPaymentPromises = [...(purchaseConfig.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: purchaseConfig.tokens,\n memberships: purchaseConfig.memberships,\n total: totalPriceToken,\n description: (purchaseConfig?.title ?? '') + `(${purchaseConfig?.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)} ${$clientPublicStore?.ui_settings.cred_alias || 'cred'}`\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 } 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\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\n let pricesByToken: { [key: string]: number } = {}\n\n const getTokenPrice = async (contractAddress: string, tokenId: number, licenseType?: string): Promise<[number, number]> => {\n let priceCents = 0\n let priceToken = 0\n if (licenseType) {\n const contract = new ethers.Contract(contractAddress, content_abi, $providerStore)\n priceCents = await contract.getLicensePriceFiat(String(tokenId), licenseType).then((result) => Number(result))\n priceToken = await contract.getLicensePriceToken(String(tokenId), licenseType).then((result) => 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) => Number(result))\n priceToken = 0\n\n if (priceCents === 0) {\n ;[priceCents, priceToken] = await Promise.all([\n sellableContract.getPriceFiat(DEFAULT_TOKEN_ID).then((result) => Number(result)),\n sellableContract.getPriceToken(DEFAULT_TOKEN_ID).then((result) => Number(result)),\n ])\n } else {\n priceToken = await sellableContract.getPriceToken(tokenId).then((result) => 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 } else {\n \n const tokenId = token.tokenId || (token.typeId as string) || (token.contentTokenId as string) || DEFAULT_TOKEN_ID\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 console.log(pricesByToken, totalSumToken)\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 <Stripe priceCents={totalSumCents} {isPriceLoading} purchaseConfig={$pageOptsStore} bind:isLoading />\n </div>\n <div slot=\"cred-balance\">\n <CredenzaBalance\n {pricesByToken}\n totalPriceToken={totalSumToken}\n {isPriceLoading}\n purchaseConfig={$pageOptsStore}\n bind:isLoading\n />\n </div>\n</Payment>\n"],"names":["LockIcon","onClick","$.prop","$$props","text","disabled","isLoading","$$render","consequent","alternate","isActive","$$args","options","user","title","subtitle","onBackClick","isCardDisabled","activeTab","PaymentViews","isCredezaValueDisabled","isPaymentDisabled","totalToPay","isCardFocused","onPay","currencySymbol","credAlias","onGetCred","formattedBalance","balance","$.template_effect","$.set_text","text_1","$.get","__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","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","Stripe","$.mutable_source","cardElement","clientName","$.set","_a","isButtonActive","handleSubmit","tokenId","processPayment","totalPriceToken","pricesByToken","isBalanceLoading","symbol","contract","decimals","userAddress","signer","credContract","afterPayment","index","priceToken","getTxScanAddress","ethers","processPaymentItem","credenzaSellableMinAbi","credenzaSellableContract","tokenOrTypeId","approveTx","sendContractTx","buyTx","processLicensePaymentItem","licenseContract","license_abi","buyLicenseWithTokenFunction","payWithCredenza","tokensAndMembershipsPaymentPromises","licensesPaymentPromises","chainId","_b","getCREDContract","provider","providerStore","close","totalSumCents","totalSumToken","getTokenPrice","contractAddress","licenseType","content_abi","$providerStore","sellableContract","DEFAULT_TOKEN_ID","calculateTotalPrice","items","token","$contractsStore","unsub","store","_c","onDestroy","$configStore","$.await","node_1","module","$pageOptsStore"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { c as ut, p as Pt, h as dt, f as g, i as x, r as p, b as n, d as pt, u as mt, s as nt, a as B, k as jt, e as Ot, t as et, n as Ct, o as Et } from "./legacy-emYZq_hG.js";
2
- import { z as ft, N as _t, Q as Mt, B as c, C as i, E as _, G as r, D as w, y as wt, u as Nt, x as S, J as t, A as Vt, V as ct, F as it, M as Yt, Z as Ft, R as Ut } from "./index-DNQhfOgj.js";
3
- import { e as lt, i as ot } from "./each-9VZsbwex.js";
1
+ import { c as ut, p as Pt, h as dt, f as g, i as x, r as p, b as n, d as pt, u as mt, s as nt, a as B, k as jt, e as Ot, t as et, n as Ct, o as Et } from "./legacy-CdJ9S7Uy.js";
2
+ import { z as ft, N as _t, Q as Mt, B as c, C as i, E as _, G as r, D as w, y as wt, u as Nt, x as S, J as t, A as Vt, V as ct, F as it, M as Yt, Z as Ft, R as Ut } from "./index-C9Qoc82Y.js";
3
+ import { e as lt, i as ot } from "./each-CjfYUvq_.js";
4
4
  function vt(A, o, z, C) {
5
5
  if (z === "sui")
6
6
  return `https://suiscan.xyz/${C}/tx/${o}`;
@@ -253,4 +253,4 @@ function Wt(A, o) {
253
253
  export {
254
254
  Wt as default
255
255
  };
256
- //# sourceMappingURL=PaymentResult-D4RCY13e.js.map
256
+ //# sourceMappingURL=PaymentResult-C-4HPlhG.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentResult-D4RCY13e.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","tokenImage","$$render","consequent","$.each","node_2","$.template_effect","$.set_text","text_2","$.get","$.untrack","text_3","consequent_1","alternate","consequent_2","node_6","text_5","text_6","text_9","consequent_5","alternate_1","consequent_4","alternate_2","consequent_3","alternate_3","consequent_6","$0","classes","$.set_class","div_9","consequent_7","alternate_5","$pageOptsStore","config"],"mappings":"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"}
1
+ {"version":3,"file":"PaymentResult-C-4HPlhG.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","tokenImage","$$render","consequent","$.each","node_2","$.template_effect","$.set_text","text_2","$.get","$.untrack","text_3","consequent_1","alternate","consequent_2","node_6","text_5","text_6","text_9","consequent_5","alternate_1","consequent_4","alternate_2","consequent_3","alternate_3","consequent_6","$0","classes","$.set_class","div_9","consequent_7","alternate_5","$pageOptsStore","config"],"mappings":"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"}