@credenza3/passport-evm 0.4.28 → 0.4.30

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 (77) hide show
  1. package/dist/{App-CTxgIK4m.js → App-DjtmRnrW.js} +20 -20
  2. package/dist/{App-CTxgIK4m.js.map → App-DjtmRnrW.js.map} +1 -1
  3. package/dist/{AssetItem-B8Q6gkLR.js → AssetItem-ChWEANUr.js} +2 -2
  4. package/dist/{AssetItem-B8Q6gkLR.js.map → AssetItem-ChWEANUr.js.map} +1 -1
  5. package/dist/{Assets--tJqhxgN.js → Assets-dTRGlyVn.js} +7 -7
  6. package/dist/{Assets--tJqhxgN.js.map → Assets-dTRGlyVn.js.map} +1 -1
  7. package/dist/{Button-DEvPrl6W.js → Button-uhA2VcMF.js} +4 -4
  8. package/dist/{Button-DEvPrl6W.js.map → Button-uhA2VcMF.js.map} +1 -1
  9. package/dist/{ButtonBack-BKgCj-yr.js → ButtonBack-D8_eccBI.js} +4 -4
  10. package/dist/{ButtonBack-BKgCj-yr.js.map → ButtonBack-D8_eccBI.js.map} +1 -1
  11. package/dist/{ButtonLink-AF__AcGe.js → ButtonLink-CSU64aKj.js} +3 -3
  12. package/dist/{ButtonLink-AF__AcGe.js.map → ButtonLink-CSU64aKj.js.map} +1 -1
  13. package/dist/{ConfirmAccount-C8CNAlt7.js → ConfirmAccount-BIyhbxeI.js} +9 -9
  14. package/dist/{ConfirmAccount-C8CNAlt7.js.map → ConfirmAccount-BIyhbxeI.js.map} +1 -1
  15. package/dist/{ContentHeader-OnJlgSxt.js → ContentHeader-B1Sgsij8.js} +3 -3
  16. package/dist/{ContentHeader-OnJlgSxt.js.map → ContentHeader-B1Sgsij8.js.map} +1 -1
  17. package/dist/{Error-CVkzcLcr.js → Error-CoDUTKHp.js} +5 -5
  18. package/dist/{Error-CVkzcLcr.js.map → Error-CoDUTKHp.js.map} +1 -1
  19. package/dist/{Input-BF6zz8aK.js → Input-VAlx175v.js} +4 -4
  20. package/dist/{Input-BF6zz8aK.js.map → Input-VAlx175v.js.map} +1 -1
  21. package/dist/{Label-BnwCsOjp.js → Label-V-N2bJwf.js} +3 -3
  22. package/dist/{Label-BnwCsOjp.js.map → Label-V-N2bJwf.js.map} +1 -1
  23. package/dist/{Loader-CH0cMjdO.js → Loader-CzUQcnRU.js} +3 -3
  24. package/dist/{Loader-CH0cMjdO.js.map → Loader-CzUQcnRU.js.map} +1 -1
  25. package/dist/{Login-DNEnToZ2.js → Login-BT1RUI8v.js} +10 -10
  26. package/dist/{Login-DNEnToZ2.js.map → Login-BT1RUI8v.js.map} +1 -1
  27. package/dist/{Logout-YoSTWwGd.js → Logout-CYj6paEr.js} +6 -6
  28. package/dist/{Logout-YoSTWwGd.js.map → Logout-CYj6paEr.js.map} +1 -1
  29. package/dist/{Nav-CFy8CYGt.js → Nav-C_iy7NuS.js} +6 -6
  30. package/dist/{Nav-CFy8CYGt.js.map → Nav-C_iy7NuS.js.map} +1 -1
  31. package/dist/{NavMenu-Ck7Xm66o.js → NavMenu-CO6kHrSg.js} +5 -5
  32. package/dist/{NavMenu-Ck7Xm66o.js.map → NavMenu-CO6kHrSg.js.map} +1 -1
  33. package/dist/{PassportId-CQ_0zLoA.js → PassportId-Yb6s7cgS.js} +6 -6
  34. package/dist/{PassportId-CQ_0zLoA.js.map → PassportId-Yb6s7cgS.js.map} +1 -1
  35. package/dist/{Payment-Dh2cvp5f.js → Payment-J-ncHnC0.js} +284 -277
  36. package/dist/Payment-J-ncHnC0.js.map +1 -0
  37. package/dist/{PaymentResult-BjtP2bJC.js → PaymentResult-CSmHYWp9.js} +4 -4
  38. package/dist/{PaymentResult-BjtP2bJC.js.map → PaymentResult-CSmHYWp9.js.map} +1 -1
  39. package/dist/{Profile-Dbi-1kqz.js → Profile-Co2G8y7t.js} +7 -7
  40. package/dist/{Profile-Dbi-1kqz.js.map → Profile-Co2G8y7t.js.map} +1 -1
  41. package/dist/{ProgressVideo-Bg2HRTtB.js → ProgressVideo-ClxxulkQ.js} +5 -5
  42. package/dist/{ProgressVideo-Bg2HRTtB.js.map → ProgressVideo-ClxxulkQ.js.map} +1 -1
  43. package/dist/{RichAlert-Bd7hubzb.js → RichAlert-NbSPx10s.js} +5 -5
  44. package/dist/{RichAlert-Bd7hubzb.js.map → RichAlert-NbSPx10s.js.map} +1 -1
  45. package/dist/{Scanner-BHtWCEZ0.js → Scanner-C4sd8pZq.js} +6 -6
  46. package/dist/{Scanner-BHtWCEZ0.js.map → Scanner-C4sd8pZq.js.map} +1 -1
  47. package/dist/{SendTokens-DlNfsFi_.js → SendTokens-BMADkgGv.js} +7 -7
  48. package/dist/{SendTokens-DlNfsFi_.js.map → SendTokens-BMADkgGv.js.map} +1 -1
  49. package/dist/{Sign-RpZxgKzx.js → Sign-DP_iqUd2.js} +6 -6
  50. package/dist/{Sign-RpZxgKzx.js.map → Sign-DP_iqUd2.js.map} +1 -1
  51. package/dist/{Stripe.service-DYogqBwC.js → Stripe.service-InHDMj4B.js} +2 -2
  52. package/dist/{Stripe.service-DYogqBwC.js.map → Stripe.service-InHDMj4B.js.map} +1 -1
  53. package/dist/{UpdateProfile-Bvd41pWv.js → UpdateProfile-DpO2WdVj.js} +74 -74
  54. package/dist/UpdateProfile-DpO2WdVj.js.map +1 -0
  55. package/dist/{UserInfo-l6hFDbHo.js → UserInfo-BpiaZOkB.js} +4 -4
  56. package/dist/{UserInfo-l6hFDbHo.js.map → UserInfo-BpiaZOkB.js.map} +1 -1
  57. package/dist/{Wallet-BQc56sKX.js → Wallet-C6vQAeQA.js} +7 -7
  58. package/dist/{Wallet-BQc56sKX.js.map → Wallet-C6vQAeQA.js.map} +1 -1
  59. package/dist/{authMethods.helper-CLSu0ys3.js → authMethods.helper-CYD342o5.js} +2 -2
  60. package/dist/{authMethods.helper-CLSu0ys3.js.map → authMethods.helper-CYD342o5.js.map} +1 -1
  61. package/dist/{each-DJ3mglw2.js → each-DnbCypC9.js} +2 -2
  62. package/dist/{each-DJ3mglw2.js.map → each-DnbCypC9.js.map} +1 -1
  63. package/dist/{html-CqeLbAwS.js → html-DQ61wtOx.js} +3 -3
  64. package/dist/{html-CqeLbAwS.js.map → html-DQ61wtOx.js.map} +1 -1
  65. package/dist/{index-client-CJOCNO_4.js → index-client-CmsorcQ-.js} +2 -2
  66. package/dist/{index-client-CJOCNO_4.js.map → index-client-CmsorcQ-.js.map} +1 -1
  67. package/dist/{index-DJLOlrGm.js → index-sh75xcf4.js} +19 -17
  68. package/dist/{index-DJLOlrGm.js.map → index-sh75xcf4.js.map} +1 -1
  69. package/dist/{input-C1acBtSq.js → input-8dfn9l0f.js} +2 -2
  70. package/dist/{input-C1acBtSq.js.map → input-8dfn9l0f.js.map} +1 -1
  71. package/dist/passport.es.js +1 -1
  72. package/dist/passport.umd.js +74 -74
  73. package/dist/passport.umd.js.map +1 -1
  74. package/dist/types/app/pages/payment/Payment.service.d.ts +2 -2
  75. package/package.json +1 -1
  76. package/dist/Payment-Dh2cvp5f.js.map +0 -1
  77. package/dist/UpdateProfile-Bvd41pWv.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SendTokens-DlNfsFi_.js","sources":["../../ui/main/send-tokens/SendTokens.svelte","../src/app/pages/send-tokens/SendTokens.svelte"],"sourcesContent":["<script lang=\"ts\">\n import ContentHeader from \"../shared/ContentHeader.svelte\";\n import ButtonBack from \"../shared/inputs/button-back/ButtonBack.svelte\";\n import Button from \"../shared/inputs/button/Button.svelte\";\n import Input from \"../shared/inputs/input/Input.svelte\";\n import ScanIcon from \"../../images/scanner.svg\";\n import { clientPublicStore } from \"../../../stores\";\n\n export let recipientAddress: string;\n export let amount: number | undefined;\n\n export let options: {\n title: string;\n isScannerHidden: boolean;\n balance: string;\n chainId?: string;\n isRecipientAddressValid: boolean;\n onScannerClicked: () => void;\n onSendTokens: () => void;\n onBackClicked: () => void;\n onChangeCurrency: () => void;\n onSetMaxAmount: () => void;\n isLoading: boolean;\n isSubmitDisabled: boolean;\n credAlias: string;\n activeCurrency: string;\n symbol: string;\n nativeSymbol: string;\n nativeBalance: string;\n isNativeCurrecyTransferAllowed?: boolean;\n };\n\n let {\n onChangeCurrency,\n onSetMaxAmount,\n onBackClicked,\n onSendTokens,\n title,\n chainId,\n onScannerClicked,\n isNativeCurrecyTransferAllowed = true\n } = options;\n\n $: balance = options.balance;\n $: isLoading = options.isLoading;\n $: isSubmitDisabled = options.isSubmitDisabled;\n $: isRecipientAddressValid = options.isRecipientAddressValid;\n $: isScannerHidden = options.isScannerHidden;\n $: activeCurrency = options.activeCurrency;\n $: nativeSymbol = options.nativeSymbol;\n $: nativeBalance = options.nativeBalance;\n\n const round = (num: number) => Math.floor(num * 100) / 100\n</script>\n\n<ContentHeader\n text={title}\n description={isScannerHidden\n ? ``\n : \"Scan Passport Id\"}\n/>\n<div class=\"crtw-w-full crtw-p-0 crtw-relative\">\n <div\n id=\"cpuiCredScanner\"\n class=\"crtw-absolute crtw-overflow-hidden crtw-top-0 crtw-bottom-0 crtw-left-0 crtw-right-0 crtw-z-10 crtw-border crtw-border-gray-300 crtw-rounded-lg crtw-backdrop-blur-lg\"\n class:crtw-hidden={isScannerHidden}\n class:crtw-z-[-1]={isScannerHidden}\n ></div>\n {#if chainId}\n <div>ChainId: <span class=\"crtw-font-bold\">{chainId}</span></div>\n {/if}\n <div>\n Your balance: \n <span class=\"crtw-font-bold\">\n {#if isNativeCurrecyTransferAllowed}\n {round(+nativeBalance)} {nativeSymbol} / \n {/if}\n\n {round(+balance)} ${$clientPublicStore?.ui_settings.cred_alias || 'cred'}\n </span>\n </div>\n <div\n class=\"crtw-mb-2.5 crtw-flex crtw-items-start crtw-justify-between crtw-w-full\"\n >\n <div class=\"crtw-flex crtw-flex-col crtw-w-full\">\n <Input\n name=\"recipientAddress\"\n type=\"text\"\n placeholder=\"Address 0x...\"\n bind:value={recipientAddress}\n />\n {#if recipientAddress && !isRecipientAddressValid}\n <label\n class=\"crtw-text-[10px] crtw-text-warningTextColor cpui-send-tokens-validation-message\"\n for=\"recipientAddress\">Provided address is not valid.</label\n >\n {/if}\n </div>\n\n <div class=\"crtw-ml-2.5 crtw-cursor-pointer\">\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n <!-- svelte-ignore a11y-no-noninteractive-element-interactions -->\n <img\n src={ScanIcon}\n on:click={onScannerClicked}\n width=\"53px\"\n alt=\"\"\n class=\"crtw-h-[53px]\"\n />\n </div>\n </div>\n\n <div\n class=\"crtw-mb-2.5 crtw-flex crtw-items-start crtw-justify-between crtw-w-full\"\n >\n <Input\n type=\"number\"\n min=\"0\"\n step=\"0.001\"\n placeholder={`${activeCurrency} amount`}\n bind:value={amount}\n />\n <div class=\"crtw-ml-2.5 crtw-w-16 crtw-min-w-16\">\n <Button onClick={onSetMaxAmount} text={`MAX`} disabled={+balance <= 0} />\n </div>\n\n {#if isNativeCurrecyTransferAllowed}\n <div class=\"crtw-ml-2.5 crtw-w-16 crtw-min-w-16\">\n <Button\n onClick={onChangeCurrency}\n text={activeCurrency}\n disabled={!activeCurrency}\n />\n </div>\n {/if}\n </div>\n <Button\n onClick={onSendTokens}\n text={`Send ${amount || \"\"} ${activeCurrency}`}\n {isLoading}\n disabled={isSubmitDisabled}\n />\n</div>\n<div class=\"crtw-mt-0.5 crtw-mb-3 crtw-w-full\">\n <ButtonBack onClick={onBackClicked} />\n</div>\n","<script lang=\"ts\">\n import { ethers } from '@credenza3/core-web-evm-ext'\n import { get } from 'svelte/store'\n\n import { clientPublicStore, fn, pageOptsStore, pageStore } from '@packages/stores'\n import { dispatch, once, PassportEvents } from '@lib/events/events'\n import { Pages } from '@packages/utils/enums'\n import { getTxScanAddress } from '@src/lib/tx/tx'\n import {\n CRED_SCANNER_TARGET_ID,\n createScanner,\n getScannerErrorMessage,\n setupScanner,\n type ScannerLib,\n } from '@lib/scanner'\n import { SendTokens} from '@packages/ui'\n import { getAddress } from '@src/passport/blockchain'\n import { configStore } from '@src/stores/config'\n import type { TEvmContract } from '@packages/utils/types'\n import { providerStore } from '@src/stores'\n import { getUserAddressBySub } from '@src/Passport.service'\n import { NOT_VALID_PASSPORT_QR_CODE_MESSAGE } from '@packages/utils/constants'\n\n const config = get(configStore)\n const { sendTokens, getCREDContract, toastAlert } = get(fn)\n\n let userAddress = ''\n let recipientAddress = ''\n let amount: number | undefined\n\n let activeCurrency = ''\n\n let decimals = 18\n let symbol = '-'\n let balance = ''\n\n let nativeDecimals = 18\n let nativeSymbol = '-'\n let nativeBalance = ''\n\n let isScannerHidden = true\n let isLoading = false\n\n let contract: ethers.Contract\n let signer: ethers.JsonRpcSigner\n let scanner: ScannerLib\n\n const onScannerClicked = async () => {\n const { scanner: scannerInstance, events } = await createScanner(CRED_SCANNER_TARGET_ID)\n scanner = scannerInstance\n once(PassportEvents.UI_CLOSED, scanner.close)\n setupScanner<{ sub: string }>(scanner, events, {\n onCapture: async ({ sub }) => {\n if (!sub) {\n toastAlert(NOT_VALID_PASSPORT_QR_CODE_MESSAGE(), 'failure')\n return scanner.close()\n }\n const { address } = await getUserAddressBySub(sub)\n recipientAddress = address\n scanner.close()\n },\n onCancel: () => (isScannerHidden = true),\n onError: (err) => {\n const message = getScannerErrorMessage(err)\n if (message?.includes('Permission'))\n alert('In order to scan please allow the current page to access your camera and try again.')\n isScannerHidden = true\n },\n })\n isScannerHidden = false\n await scanner.scan()\n }\n\n const sendTokensToRecipient = async () => {\n const isTCRED = activeCurrency === symbol\n isLoading = true\n try {\n const weiBn = ethers.parseUnits(String(amount), isTCRED ? decimals : nativeDecimals)\n const result = (await sendTokens({\n address: recipientAddress,\n amount: weiBn,\n instance: isTCRED ? contract : undefined,\n })) as { hash: string; wait: () => Promise<void> }\n toastAlert(\n `<a href=\"${getTxScanAddress(result.hash)}\" target=\"_blank\">Send TX</a> was created`,\n )\n recipientAddress = ''\n amount = undefined\n\n const [weiBalance, weiNativeBalance] = await Promise.all([\n contract.balanceOf(userAddress),\n signer.provider.getBalance(userAddress),\n ])\n\n balance = ethers.formatUnits(weiBalance, decimals)\n nativeBalance = parseFloat(ethers.formatUnits(weiNativeBalance, nativeDecimals)).toFixed(4)\n dispatch(PassportEvents.RECHECK_BALANCE, [result.hash])\n } catch (err) {\n toastAlert(err?.message || err || 'An error occurred while sending tokens', 'failure')\n dispatch(PassportEvents.ERROR, { error: err })\n }\n isLoading = false\n }\n\n const init = async () => {\n const pageOpts = get(pageOptsStore)\n recipientAddress = pageOpts?.to || ''\n amount = pageOpts?.amount || undefined\n const { decimals: contractDecimals, contract: credContract } = (await getCREDContract()) as TEvmContract\n decimals = contractDecimals\n contract = credContract\n const provider = get(providerStore)\n if(!provider) return\n signer = await provider.getSigner()\n userAddress = await getAddress()\n const results = await Promise.all([\n contract.symbol(),\n contract.balanceOf(userAddress),\n provider.getBalance(userAddress),\n fetch('https://chainid.network/chains.json')\n .then((result) => result.json())\n .then((networks) =>\n networks.find((network: { chainId: number }) => String(network.chainId) === config.chainId),\n ),\n ])\n symbol = results[0]\n balance = ethers.formatUnits(results[1], decimals)\n nativeDecimals = results[3]?.nativeCurrency?.decimals ?? 18\n nativeBalance = parseFloat(ethers.formatUnits(results[2], nativeDecimals)).toFixed(4)\n nativeSymbol = results[3]?.nativeCurrency?.symbol ?? 'ETH'\n activeCurrency = symbol\n }\n\n $: $configStore.chainId && $providerStore && init()\n $: isRecipientAddressValid = !!ethers.isAddress(recipientAddress)\n $: isSubmitDisabled =\n isLoading ||\n !amount ||\n !isRecipientAddressValid ||\n (activeCurrency === symbol && amount > +balance) ||\n (activeCurrency === nativeSymbol && amount > +nativeBalance)\n</script>\n\n<SendTokens\n bind:recipientAddress\n bind:amount\n options={{\n title: `Send stored value`,\n isNativeCurrecyTransferAllowed: $configStore.transferTokens?.nativeCurrency !== false,\n isScannerHidden,\n balance,\n chainId: config.chainId,\n isRecipientAddressValid,\n onScannerClicked,\n onSendTokens: sendTokensToRecipient,\n onBackClicked: () => pageStore.set(Pages.WALLET),\n onChangeCurrency: () => (activeCurrency === symbol ? (activeCurrency = nativeSymbol) : (activeCurrency = symbol)),\n onSetMaxAmount: () => (activeCurrency === symbol ? (amount = +balance) : (amount = +nativeBalance)),\n isLoading,\n isSubmitDisabled,\n credAlias: $clientPublicStore?.ui_settings.cred_alias,\n activeCurrency,\n symbol,\n nativeSymbol,\n nativeBalance,\n }}\n/>\n"],"names":["recipientAddress","$.prop","$$props","options","onChangeCurrency","onSetMaxAmount","onBackClicked","onSendTokens","title","chainId","onScannerClicked","isNativeCurrecyTransferAllowed","round","num","isLoading","isSubmitDisabled","isRecipientAddressValid","isScannerHidden","activeCurrency","nativeSymbol","nativeBalance","$0","$.derived_safe_equal","$.get","ContentHeader","node","div","$.sibling","div_1","$.child","node_1","div_2","root_1","span","$$render","consequent","div_3","span_1","$.untrack","consequent_1","div_4","div_5","Input","node_3","$$value","label","root_3","$.append","$$anchor","div_6","img","$.reset","classes","$.set_class","$clientPublicStore","$.set_attribute","ScanIcon","balance","$.event","__awaiter","thisArg","_arguments","P","generator","config","get","configStore","sendTokens","getCREDContract","toastAlert","fn","userAddress","amount","$.mutable_source","decimals","symbol","nativeDecimals","contract","signer","scannerInstance","events","createScanner","CRED_SCANNER_TARGET_ID","once","PassportEvents","scanner","_a","sub","NOT_VALID_PASSPORT_QR_CODE_MESSAGE","address","$.set","err","message","getScannerErrorMessage","sendTokensToRecipient","isTCRED","weiBn","ethers","result","getTxScanAddress","weiBalance","weiNativeBalance","dispatch","init","pageOpts","pageOptsStore","contractDecimals","credContract","provider","providerStore","getAddress","results","networks","network","_c","_b","_f","_e","_d","$configStore","$providerStore","SendTokens"],"mappings":"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"}
1
+ {"version":3,"file":"SendTokens-BMADkgGv.js","sources":["../../ui/main/send-tokens/SendTokens.svelte","../src/app/pages/send-tokens/SendTokens.svelte"],"sourcesContent":["<script lang=\"ts\">\n import ContentHeader from \"../shared/ContentHeader.svelte\";\n import ButtonBack from \"../shared/inputs/button-back/ButtonBack.svelte\";\n import Button from \"../shared/inputs/button/Button.svelte\";\n import Input from \"../shared/inputs/input/Input.svelte\";\n import ScanIcon from \"../../images/scanner.svg\";\n import { clientPublicStore } from \"../../../stores\";\n\n export let recipientAddress: string;\n export let amount: number | undefined;\n\n export let options: {\n title: string;\n isScannerHidden: boolean;\n balance: string;\n chainId?: string;\n isRecipientAddressValid: boolean;\n onScannerClicked: () => void;\n onSendTokens: () => void;\n onBackClicked: () => void;\n onChangeCurrency: () => void;\n onSetMaxAmount: () => void;\n isLoading: boolean;\n isSubmitDisabled: boolean;\n credAlias: string;\n activeCurrency: string;\n symbol: string;\n nativeSymbol: string;\n nativeBalance: string;\n isNativeCurrecyTransferAllowed?: boolean;\n };\n\n let {\n onChangeCurrency,\n onSetMaxAmount,\n onBackClicked,\n onSendTokens,\n title,\n chainId,\n onScannerClicked,\n isNativeCurrecyTransferAllowed = true\n } = options;\n\n $: balance = options.balance;\n $: isLoading = options.isLoading;\n $: isSubmitDisabled = options.isSubmitDisabled;\n $: isRecipientAddressValid = options.isRecipientAddressValid;\n $: isScannerHidden = options.isScannerHidden;\n $: activeCurrency = options.activeCurrency;\n $: nativeSymbol = options.nativeSymbol;\n $: nativeBalance = options.nativeBalance;\n\n const round = (num: number) => Math.floor(num * 100) / 100\n</script>\n\n<ContentHeader\n text={title}\n description={isScannerHidden\n ? ``\n : \"Scan Passport Id\"}\n/>\n<div class=\"crtw-w-full crtw-p-0 crtw-relative\">\n <div\n id=\"cpuiCredScanner\"\n class=\"crtw-absolute crtw-overflow-hidden crtw-top-0 crtw-bottom-0 crtw-left-0 crtw-right-0 crtw-z-10 crtw-border crtw-border-gray-300 crtw-rounded-lg crtw-backdrop-blur-lg\"\n class:crtw-hidden={isScannerHidden}\n class:crtw-z-[-1]={isScannerHidden}\n ></div>\n {#if chainId}\n <div>ChainId: <span class=\"crtw-font-bold\">{chainId}</span></div>\n {/if}\n <div>\n Your balance: \n <span class=\"crtw-font-bold\">\n {#if isNativeCurrecyTransferAllowed}\n {round(+nativeBalance)} {nativeSymbol} / \n {/if}\n\n {round(+balance)} ${$clientPublicStore?.ui_settings.cred_alias || 'cred'}\n </span>\n </div>\n <div\n class=\"crtw-mb-2.5 crtw-flex crtw-items-start crtw-justify-between crtw-w-full\"\n >\n <div class=\"crtw-flex crtw-flex-col crtw-w-full\">\n <Input\n name=\"recipientAddress\"\n type=\"text\"\n placeholder=\"Address 0x...\"\n bind:value={recipientAddress}\n />\n {#if recipientAddress && !isRecipientAddressValid}\n <label\n class=\"crtw-text-[10px] crtw-text-warningTextColor cpui-send-tokens-validation-message\"\n for=\"recipientAddress\">Provided address is not valid.</label\n >\n {/if}\n </div>\n\n <div class=\"crtw-ml-2.5 crtw-cursor-pointer\">\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n <!-- svelte-ignore a11y-no-noninteractive-element-interactions -->\n <img\n src={ScanIcon}\n on:click={onScannerClicked}\n width=\"53px\"\n alt=\"\"\n class=\"crtw-h-[53px]\"\n />\n </div>\n </div>\n\n <div\n class=\"crtw-mb-2.5 crtw-flex crtw-items-start crtw-justify-between crtw-w-full\"\n >\n <Input\n type=\"number\"\n min=\"0\"\n step=\"0.001\"\n placeholder={`${activeCurrency} amount`}\n bind:value={amount}\n />\n <div class=\"crtw-ml-2.5 crtw-w-16 crtw-min-w-16\">\n <Button onClick={onSetMaxAmount} text={`MAX`} disabled={+balance <= 0} />\n </div>\n\n {#if isNativeCurrecyTransferAllowed}\n <div class=\"crtw-ml-2.5 crtw-w-16 crtw-min-w-16\">\n <Button\n onClick={onChangeCurrency}\n text={activeCurrency}\n disabled={!activeCurrency}\n />\n </div>\n {/if}\n </div>\n <Button\n onClick={onSendTokens}\n text={`Send ${amount || \"\"} ${activeCurrency}`}\n {isLoading}\n disabled={isSubmitDisabled}\n />\n</div>\n<div class=\"crtw-mt-0.5 crtw-mb-3 crtw-w-full\">\n <ButtonBack onClick={onBackClicked} />\n</div>\n","<script lang=\"ts\">\n import { ethers } from '@credenza3/core-web-evm-ext'\n import { get } from 'svelte/store'\n\n import { clientPublicStore, fn, pageOptsStore, pageStore } from '@packages/stores'\n import { dispatch, once, PassportEvents } from '@lib/events/events'\n import { Pages } from '@packages/utils/enums'\n import { getTxScanAddress } from '@src/lib/tx/tx'\n import {\n CRED_SCANNER_TARGET_ID,\n createScanner,\n getScannerErrorMessage,\n setupScanner,\n type ScannerLib,\n } from '@lib/scanner'\n import { SendTokens} from '@packages/ui'\n import { getAddress } from '@src/passport/blockchain'\n import { configStore } from '@src/stores/config'\n import type { TEvmContract } from '@packages/utils/types'\n import { providerStore } from '@src/stores'\n import { getUserAddressBySub } from '@src/Passport.service'\n import { NOT_VALID_PASSPORT_QR_CODE_MESSAGE } from '@packages/utils/constants'\n\n const config = get(configStore)\n const { sendTokens, getCREDContract, toastAlert } = get(fn)\n\n let userAddress = ''\n let recipientAddress = ''\n let amount: number | undefined\n\n let activeCurrency = ''\n\n let decimals = 18\n let symbol = '-'\n let balance = ''\n\n let nativeDecimals = 18\n let nativeSymbol = '-'\n let nativeBalance = ''\n\n let isScannerHidden = true\n let isLoading = false\n\n let contract: ethers.Contract\n let signer: ethers.JsonRpcSigner\n let scanner: ScannerLib\n\n const onScannerClicked = async () => {\n const { scanner: scannerInstance, events } = await createScanner(CRED_SCANNER_TARGET_ID)\n scanner = scannerInstance\n once(PassportEvents.UI_CLOSED, scanner.close)\n setupScanner<{ sub: string }>(scanner, events, {\n onCapture: async ({ sub }) => {\n if (!sub) {\n toastAlert(NOT_VALID_PASSPORT_QR_CODE_MESSAGE(), 'failure')\n return scanner.close()\n }\n const { address } = await getUserAddressBySub(sub)\n recipientAddress = address\n scanner.close()\n },\n onCancel: () => (isScannerHidden = true),\n onError: (err) => {\n const message = getScannerErrorMessage(err)\n if (message?.includes('Permission'))\n alert('In order to scan please allow the current page to access your camera and try again.')\n isScannerHidden = true\n },\n })\n isScannerHidden = false\n await scanner.scan()\n }\n\n const sendTokensToRecipient = async () => {\n const isTCRED = activeCurrency === symbol\n isLoading = true\n try {\n const weiBn = ethers.parseUnits(String(amount), isTCRED ? decimals : nativeDecimals)\n const result = (await sendTokens({\n address: recipientAddress,\n amount: weiBn,\n instance: isTCRED ? contract : undefined,\n })) as { hash: string; wait: () => Promise<void> }\n toastAlert(\n `<a href=\"${getTxScanAddress(result.hash)}\" target=\"_blank\">Send TX</a> was created`,\n )\n recipientAddress = ''\n amount = undefined\n\n const [weiBalance, weiNativeBalance] = await Promise.all([\n contract.balanceOf(userAddress),\n signer.provider.getBalance(userAddress),\n ])\n\n balance = ethers.formatUnits(weiBalance, decimals)\n nativeBalance = parseFloat(ethers.formatUnits(weiNativeBalance, nativeDecimals)).toFixed(4)\n dispatch(PassportEvents.RECHECK_BALANCE, [result.hash])\n } catch (err) {\n toastAlert(err?.message || err || 'An error occurred while sending tokens', 'failure')\n dispatch(PassportEvents.ERROR, { error: err })\n }\n isLoading = false\n }\n\n const init = async () => {\n const pageOpts = get(pageOptsStore)\n recipientAddress = pageOpts?.to || ''\n amount = pageOpts?.amount || undefined\n const { decimals: contractDecimals, contract: credContract } = (await getCREDContract()) as TEvmContract\n decimals = contractDecimals\n contract = credContract\n const provider = get(providerStore)\n if(!provider) return\n signer = await provider.getSigner()\n userAddress = await getAddress()\n const results = await Promise.all([\n contract.symbol(),\n contract.balanceOf(userAddress),\n provider.getBalance(userAddress),\n fetch('https://chainid.network/chains.json')\n .then((result) => result.json())\n .then((networks) =>\n networks.find((network: { chainId: number }) => String(network.chainId) === config.chainId),\n ),\n ])\n symbol = results[0]\n balance = ethers.formatUnits(results[1], decimals)\n nativeDecimals = results[3]?.nativeCurrency?.decimals ?? 18\n nativeBalance = parseFloat(ethers.formatUnits(results[2], nativeDecimals)).toFixed(4)\n nativeSymbol = results[3]?.nativeCurrency?.symbol ?? 'ETH'\n activeCurrency = symbol\n }\n\n $: $configStore.chainId && $providerStore && init()\n $: isRecipientAddressValid = !!ethers.isAddress(recipientAddress)\n $: isSubmitDisabled =\n isLoading ||\n !amount ||\n !isRecipientAddressValid ||\n (activeCurrency === symbol && amount > +balance) ||\n (activeCurrency === nativeSymbol && amount > +nativeBalance)\n</script>\n\n<SendTokens\n bind:recipientAddress\n bind:amount\n options={{\n title: `Send stored value`,\n isNativeCurrecyTransferAllowed: $configStore.transferTokens?.nativeCurrency !== false,\n isScannerHidden,\n balance,\n chainId: config.chainId,\n isRecipientAddressValid,\n onScannerClicked,\n onSendTokens: sendTokensToRecipient,\n onBackClicked: () => pageStore.set(Pages.WALLET),\n onChangeCurrency: () => (activeCurrency === symbol ? (activeCurrency = nativeSymbol) : (activeCurrency = symbol)),\n onSetMaxAmount: () => (activeCurrency === symbol ? (amount = +balance) : (amount = +nativeBalance)),\n isLoading,\n isSubmitDisabled,\n credAlias: $clientPublicStore?.ui_settings.cred_alias,\n activeCurrency,\n symbol,\n nativeSymbol,\n nativeBalance,\n }}\n/>\n"],"names":["recipientAddress","$.prop","$$props","options","onChangeCurrency","onSetMaxAmount","onBackClicked","onSendTokens","title","chainId","onScannerClicked","isNativeCurrecyTransferAllowed","round","num","isLoading","isSubmitDisabled","isRecipientAddressValid","isScannerHidden","activeCurrency","nativeSymbol","nativeBalance","$0","$.derived_safe_equal","$.get","ContentHeader","node","div","$.sibling","div_1","$.child","node_1","div_2","root_1","span","$$render","consequent","div_3","span_1","$.untrack","consequent_1","div_4","div_5","Input","node_3","$$value","label","root_3","$.append","$$anchor","div_6","img","$.reset","classes","$.set_class","$clientPublicStore","$.set_attribute","ScanIcon","balance","$.event","__awaiter","thisArg","_arguments","P","generator","config","get","configStore","sendTokens","getCREDContract","toastAlert","fn","userAddress","amount","$.mutable_source","decimals","symbol","nativeDecimals","contract","signer","scannerInstance","events","createScanner","CRED_SCANNER_TARGET_ID","once","PassportEvents","scanner","_a","sub","NOT_VALID_PASSPORT_QR_CODE_MESSAGE","address","$.set","err","message","getScannerErrorMessage","sendTokensToRecipient","isTCRED","weiBn","ethers","result","getTxScanAddress","weiBalance","weiNativeBalance","dispatch","init","pageOpts","pageOptsStore","contractDecimals","credContract","provider","providerStore","getAddress","results","networks","network","_c","_b","_f","_e","_d","$configStore","$providerStore","SendTokens"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { c as E, p as T, f as O, b as h, d as q, u as A, h as j } from "./AssetItem-B8Q6gkLR.js";
2
- import { v as B, r as w, A as x, t as D, n as z, M as y, O as I, I as L, Y as Q, E as R, a0 as U, F as b, bC as W, Q as Y, L as G } from "./index-DJLOlrGm.js";
3
- import { C as J } from "./App-CTxgIK4m.js";
4
- import { C as K } from "./ContentHeader-OnJlgSxt.js";
5
- import { B as k } from "./Button-DEvPrl6W.js";
1
+ import { c as E, p as T, f as O, b as h, d as q, u as A, h as j } from "./AssetItem-ChWEANUr.js";
2
+ import { v as B, r as w, A as x, t as D, n as z, M as y, O as I, I as L, Y as Q, E as R, a0 as U, F as b, bC as W, Q as Y, L as G } from "./index-sh75xcf4.js";
3
+ import { C as J } from "./App-DjtmRnrW.js";
4
+ import { C as K } from "./ContentHeader-B1Sgsij8.js";
5
+ import { B as k } from "./Button-uhA2VcMF.js";
6
6
  var N = O("<!> <!>", 1), P = O("<!> <!>", 1);
7
7
  function F(i, r) {
8
8
  if (new.target) return E({ component: F, ...i });
@@ -109,4 +109,4 @@ function V(i, r) {
109
109
  export {
110
110
  V as default
111
111
  };
112
- //# sourceMappingURL=Sign-RpZxgKzx.js.map
112
+ //# sourceMappingURL=Sign-DP_iqUd2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Sign-RpZxgKzx.js","sources":["../../ui/main/passport-id/Sign.svelte","../src/app/pages/sign/Sign.svelte"],"sourcesContent":["<script lang=\"ts\">\n import Container from \"../shared/Container.svelte\";\n import ContentHeader from \"../shared/ContentHeader.svelte\";\n import Button from \"../shared/inputs/button/Button.svelte\";\n\n export let options: {\n title: string;\n description: string;\n onConfirm: () => Promise<void>;\n onCancel: () => void;\n };\n\n let { title, description, onConfirm, onCancel } = options;\n</script>\n\n<ContentHeader text={title} {description} />\n\n<Container class=\"crtw-flex crtw-justify-between crtw-gap-10\">\n <Button text=\"Cancel\" onClick={onCancel}></Button>\n <Button text=\"Sign the message\" onClick={onConfirm} />\n</Container>\n","<script lang=\"ts\">\n import { get } from 'svelte/store'\n import { fn } from '@packages/stores'\n import { Sign } from '@packages/ui'\n import { pageOptsStore } from '@packages/stores'\n import { providerStore, configStore } from '@src/stores'\n import socketFn from '@lib/ws/socket-io'\n\n const { close } = get(fn)\n\n const handleSignTransaction = async () => {\n const provider = get(providerStore)\n if(!provider) return\n const signer = await provider.getSigner()\n const signature = await signer.signMessage($pageOptsStore.message)\n socketFn.signDataAndEmitEvent($configStore.credenza.generalWssUrl, signature, $pageOptsStore.socketEventDataHeaders)\n close()\n }\n</script>\n\n<Sign\n options={{\n title: 'Sign Transaction Request',\n description: 'Please sign the requested transaction.',\n onCancel: close,\n onConfirm: handleSignTransaction,\n }}\n/>\n"],"names":["options","$.prop","$$props","title","description","onConfirm","onCancel","__awaiter","thisArg","_arguments","P","generator","handleSignTransaction","provider","get","providerStore","signature","$pageOptsStore","socketFn","$configStore","close","Sign","$$anchor"],"mappings":";;;;;;iBAAA;;;AAaQ,MAAAA,IAKLC,EAAAC,GAAA,WAAA,EAAA,GAED,EAAA,OAAAC,GAAS,aAAAC,GAAA,WAAAC,GAAA,UAAAC,EAAA,IAAAN,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCpBX;;;;AAAiB,MAAAO,IAAA,QAAA,KAAA,aAAA,SAAAC,GAAAC,GAAAC,GAAAC,GAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAERC,IAAY,MAAkBL,EAAA,QAAA,QAAA,QAAA,aAAA;AACrC,UAASM,IAAYC,EAAAC,CAAc;AACnC,QAAA,CAAOF,EAAE;AAET,UAAOG,IAAe,OADb,MAAeH,EAAA,UAAmB,GACrB,YAAmBI,EAAA,EAAA,OAAA;AAEzC,IAAAC,EAAa,qBAAYC,IAAA,SAAA,eAAAH,GAAAC,EAAA,EAAA,sBAAA,GAEzBG,EAAM;AAAA,EACJ,CAAA;;;;;;;;MAIA,OAAA;AAAA,MACA,aAAO;AAAA,MACR,UAAAA;AAAA,MACD,WAAMR;AAAA;AALJ,IAAAS,EAAAC,GAAA;AAAA;;;;;;;AADG;"}
1
+ {"version":3,"file":"Sign-DP_iqUd2.js","sources":["../../ui/main/passport-id/Sign.svelte","../src/app/pages/sign/Sign.svelte"],"sourcesContent":["<script lang=\"ts\">\n import Container from \"../shared/Container.svelte\";\n import ContentHeader from \"../shared/ContentHeader.svelte\";\n import Button from \"../shared/inputs/button/Button.svelte\";\n\n export let options: {\n title: string;\n description: string;\n onConfirm: () => Promise<void>;\n onCancel: () => void;\n };\n\n let { title, description, onConfirm, onCancel } = options;\n</script>\n\n<ContentHeader text={title} {description} />\n\n<Container class=\"crtw-flex crtw-justify-between crtw-gap-10\">\n <Button text=\"Cancel\" onClick={onCancel}></Button>\n <Button text=\"Sign the message\" onClick={onConfirm} />\n</Container>\n","<script lang=\"ts\">\n import { get } from 'svelte/store'\n import { fn } from '@packages/stores'\n import { Sign } from '@packages/ui'\n import { pageOptsStore } from '@packages/stores'\n import { providerStore, configStore } from '@src/stores'\n import socketFn from '@lib/ws/socket-io'\n\n const { close } = get(fn)\n\n const handleSignTransaction = async () => {\n const provider = get(providerStore)\n if(!provider) return\n const signer = await provider.getSigner()\n const signature = await signer.signMessage($pageOptsStore.message)\n socketFn.signDataAndEmitEvent($configStore.credenza.generalWssUrl, signature, $pageOptsStore.socketEventDataHeaders)\n close()\n }\n</script>\n\n<Sign\n options={{\n title: 'Sign Transaction Request',\n description: 'Please sign the requested transaction.',\n onCancel: close,\n onConfirm: handleSignTransaction,\n }}\n/>\n"],"names":["options","$.prop","$$props","title","description","onConfirm","onCancel","__awaiter","thisArg","_arguments","P","generator","handleSignTransaction","provider","get","providerStore","signature","$pageOptsStore","socketFn","$configStore","close","Sign","$$anchor"],"mappings":";;;;;;iBAAA;;;AAaQ,MAAAA,IAKLC,EAAAC,GAAA,WAAA,EAAA,GAED,EAAA,OAAAC,GAAS,aAAAC,GAAA,WAAAC,GAAA,UAAAC,EAAA,IAAAN,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCpBX;;;;AAAiB,MAAAO,IAAA,QAAA,KAAA,aAAA,SAAAC,GAAAC,GAAAC,GAAAC,GAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAERC,IAAY,MAAkBL,EAAA,QAAA,QAAA,QAAA,aAAA;AACrC,UAASM,IAAYC,EAAAC,CAAc;AACnC,QAAA,CAAOF,EAAE;AAET,UAAOG,IAAe,OADb,MAAeH,EAAA,UAAmB,GACrB,YAAmBI,EAAA,EAAA,OAAA;AAEzC,IAAAC,EAAa,qBAAYC,IAAA,SAAA,eAAAH,GAAAC,EAAA,EAAA,sBAAA,GAEzBG,EAAM;AAAA,EACJ,CAAA;;;;;;;;MAIA,OAAA;AAAA,MACA,aAAO;AAAA,MACR,UAAAA;AAAA,MACD,WAAMR;AAAA;AALJ,IAAAS,EAAAC,GAAA;AAAA;;;;;;;AADG;"}
@@ -1,4 +1,4 @@
1
- import { M as s, L as o, Q as p, bz as d, a1 as m, bT as l } from "./index-DJLOlrGm.js";
1
+ import { M as s, L as o, Q as p, bz as d, a1 as m, bT as l } from "./index-sh75xcf4.js";
2
2
  const y = async () => {
3
3
  const e = s(o), t = s(p), n = s(d), i = await m(), a = n?.email || n?.pending?.email, c = n?.phone || n?.pending?.phone, r = `Passport Payment: (${JSON.stringify({
4
4
  ...t.tokens,
@@ -22,4 +22,4 @@ const y = async () => {
22
22
  export {
23
23
  y as preparePaymentData
24
24
  };
25
- //# sourceMappingURL=Stripe.service-DYogqBwC.js.map
25
+ //# sourceMappingURL=Stripe.service-InHDMj4B.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Stripe.service-DYogqBwC.js","sources":["../src/app/pages/payment/stripe/Stripe.service.ts"],"sourcesContent":["import { get } from 'svelte/store'\nimport { userStore, pageOptsStore } from '@packages/stores'\nimport { getAddress } from '@src/passport/blockchain'\nimport { configStore } from '@src/stores/config'\nimport { getClientConfigByClientId } from '@lib/clients'\nimport type { TBasicPaymentData } from '../oders.types'\n\n\nexport const preparePaymentData = async () => {\n const config = get(configStore)\n const paymentOpts = get(pageOptsStore)\n const user = get(userStore)\n const userAddress = await getAddress()\n\n const email = user?.email || user?.pending?.email\n const phone = user?.phone || user?.pending?.phone\n const description =\n 'Passport Payment: ' +\n `(${JSON.stringify({\n ...paymentOpts.tokens,\n ...paymentOpts.memberships,\n ...paymentOpts.licenses,\n userAddress,\n chainId: config.chainId,\n email,\n phone,\n })})`\n\n const clientName = getClientConfigByClientId(config.clientId).name\n return {\n client: clientName,\n description,\n address: userAddress,\n chain_id: Number(config.chainId),\n client_id: config.clientId,\n payment_provider: 'stripe',\n currency: 'USD',\n } as TBasicPaymentData\n}\n"],"names":["preparePaymentData","config","get","configStore","paymentOpts","pageOptsStore","user","userStore","userAddress","getAddress","email","phone","description","getClientConfigByClientId"],"mappings":";AAQO,MAAMA,IAAqB,YAAY;AAC5C,QAAMC,IAASC,EAAIC,CAAW,GACxBC,IAAcF,EAAIG,CAAa,GAC/BC,IAAOJ,EAAIK,CAAS,GACpBC,IAAc,MAAMC,EAAA,GAEpBC,IAAQJ,GAAM,SAASA,GAAM,SAAS,OACtCK,IAAQL,GAAM,SAASA,GAAM,SAAS,OACtCM,IACJ,sBACI,KAAK,UAAU;AAAA,IACjB,GAAGR,EAAY;AAAA,IACf,GAAGA,EAAY;AAAA,IACf,GAAGA,EAAY;AAAA,IACf,aAAAI;AAAA,IACA,SAASP,EAAO;AAAA,IAChB,OAAAS;AAAA,IACA,OAAAC;AAAA,EAAA,CACD,CAAC;AAGJ,SAAO;AAAA,IACL,QAFiBE,EAA0BZ,EAAO,QAAQ,EAAE;AAAA,IAG5D,aAAAW;AAAA,IACA,SAASJ;AAAA,IACT,UAAU,OAAOP,EAAO,OAAO;AAAA,IAC/B,WAAWA,EAAO;AAAA,IAClB,kBAAkB;AAAA,IAClB,UAAU;AAAA,EAAA;AAEd;"}
1
+ {"version":3,"file":"Stripe.service-InHDMj4B.js","sources":["../src/app/pages/payment/stripe/Stripe.service.ts"],"sourcesContent":["import { get } from 'svelte/store'\nimport { userStore, pageOptsStore } from '@packages/stores'\nimport { getAddress } from '@src/passport/blockchain'\nimport { configStore } from '@src/stores/config'\nimport { getClientConfigByClientId } from '@lib/clients'\nimport type { TBasicPaymentData } from '../oders.types'\n\n\nexport const preparePaymentData = async () => {\n const config = get(configStore)\n const paymentOpts = get(pageOptsStore)\n const user = get(userStore)\n const userAddress = await getAddress()\n\n const email = user?.email || user?.pending?.email\n const phone = user?.phone || user?.pending?.phone\n const description =\n 'Passport Payment: ' +\n `(${JSON.stringify({\n ...paymentOpts.tokens,\n ...paymentOpts.memberships,\n ...paymentOpts.licenses,\n userAddress,\n chainId: config.chainId,\n email,\n phone,\n })})`\n\n const clientName = getClientConfigByClientId(config.clientId).name\n return {\n client: clientName,\n description,\n address: userAddress,\n chain_id: Number(config.chainId),\n client_id: config.clientId,\n payment_provider: 'stripe',\n currency: 'USD',\n } as TBasicPaymentData\n}\n"],"names":["preparePaymentData","config","get","configStore","paymentOpts","pageOptsStore","user","userStore","userAddress","getAddress","email","phone","description","getClientConfigByClientId"],"mappings":";AAQO,MAAMA,IAAqB,YAAY;AAC5C,QAAMC,IAASC,EAAIC,CAAW,GACxBC,IAAcF,EAAIG,CAAa,GAC/BC,IAAOJ,EAAIK,CAAS,GACpBC,IAAc,MAAMC,EAAA,GAEpBC,IAAQJ,GAAM,SAASA,GAAM,SAAS,OACtCK,IAAQL,GAAM,SAASA,GAAM,SAAS,OACtCM,IACJ,sBACI,KAAK,UAAU;AAAA,IACjB,GAAGR,EAAY;AAAA,IACf,GAAGA,EAAY;AAAA,IACf,GAAGA,EAAY;AAAA,IACf,aAAAI;AAAA,IACA,SAASP,EAAO;AAAA,IAChB,OAAAS;AAAA,IACA,OAAAC;AAAA,EAAA,CACD,CAAC;AAGJ,SAAO;AAAA,IACL,QAFiBE,EAA0BZ,EAAO,QAAQ,EAAE;AAAA,IAG5D,aAAAW;AAAA,IACA,SAASJ;AAAA,IACT,UAAU,OAAOP,EAAO,OAAO;AAAA,IAC/B,WAAWA,EAAO;AAAA,IAClB,kBAAkB;AAAA,IAClB,UAAU;AAAA,EAAA;AAEd;"}
@@ -1,27 +1,27 @@
1
- import { c as ee, m as Pe, p as _, h as me, f as j, i as K, k as Se, e as Ce, b as C, d as te, u as ae, o as X, s as De, q as pe, t as Ie } from "./AssetItem-B8Q6gkLR.js";
2
- import { o as ke } from "./index-client-CJOCNO_4.js";
3
- import { v as re, x as $, A as S, y as B, z as J, t as ne, n as b, D as Q, w as Z, I as e, G as i, m as y, o as be, p as he, r as ie, C as oe, M as ge, O as Ve, bz as Ue, by as Y, F as _e, bA as de, Y as $e, E as Be, L as je, T as ue, S as Ae } from "./index-DJLOlrGm.js";
1
+ import { c as ee, m as Pe, p as _, h as me, f as j, i as H, k as Se, e as Ce, b as C, d as te, u as ae, o as X, s as De, q as pe, t as Ie } from "./AssetItem-ChWEANUr.js";
2
+ import { o as ke } from "./index-client-CmsorcQ-.js";
3
+ import { v as re, x as $, A as S, y as B, z as J, t as ne, n as b, D as Q, w as Z, I as e, G as i, m as y, o as be, p as he, r as ie, C as oe, M as ge, O as Ve, bz as Ue, by as M, F as _e, bA as de, Y as $e, E as Be, L as je, T as ue, S as Ae } from "./index-sh75xcf4.js";
4
4
  import { v as we, P as Oe } from "./validation-DaZvZUPL.js";
5
- import { C as Re } from "./App-CTxgIK4m.js";
6
- import { L as ce } from "./Label-BnwCsOjp.js";
7
- import { I as fe } from "./Input-BF6zz8aK.js";
8
- import { B as Le } from "./ButtonBack-BKgCj-yr.js";
9
- import { B as Fe } from "./Button-DEvPrl6W.js";
10
- import { e as Ne, i as Te } from "./each-DJ3mglw2.js";
11
- var ze = j('<label class="crtw-font-medium" for="credenzaSelect"> </label>'), qe = j("<option> </option>"), Ge = j("<option> </option>"), He = j('<div><!> <select name="credenzaSelect"><!><!></select></div>');
12
- const Ke = {
5
+ import { C as Re } from "./App-DjtmRnrW.js";
6
+ import { L as ce } from "./Label-V-N2bJwf.js";
7
+ import { I as fe } from "./Input-VAlx175v.js";
8
+ import { B as Le } from "./ButtonBack-D8_eccBI.js";
9
+ import { B as Ne } from "./Button-uhA2VcMF.js";
10
+ import { e as Te, i as Fe } from "./each-DnbCypC9.js";
11
+ var ze = j('<label class="crtw-font-medium" for="credenzaSelect"> </label>'), Ye = j("<option> </option>"), qe = j("<option> </option>"), Ge = j('<div><!> <select name="credenzaSelect"><!><!></select></div>');
12
+ const He = {
13
13
  hash: "svelte-1bj3sm8",
14
14
  code: ".simple.svelte-1bj3sm8 {background-image:none;padding:0 10px;text-align:center;}.simple.svelte-1bj3sm8:focus {background-image:none;}"
15
15
  };
16
16
  function xe(D, r) {
17
17
  if (new.target) return ee({ component: xe, ...D });
18
- re(r, !1), Pe(D, Ke);
18
+ re(r, !1), Pe(D, He);
19
19
  let d = _(r, "options", 12), u = _(r, "placeholder", 12, void 0), m = _(r, "label", 12, void 0), c = _(r, "selected", 12, void 0), v = _(r, "onChange", 12, void 0), x = _(r, "simple", 12, !1), E = _(r, "disabled", 12, !1);
20
20
  const I = (a) => {
21
21
  const t = a.target;
22
22
  c() !== void 0 && c(t.value), v() && v()(a);
23
23
  };
24
- var F = {
24
+ var N = {
25
25
  get options() {
26
26
  return d();
27
27
  },
@@ -68,20 +68,20 @@ function xe(D, r) {
68
68
  $on: (a, t) => te(r, a, t)
69
69
  };
70
70
  me();
71
- var h = He(), n = $(h);
71
+ var h = Ge(), n = $(h);
72
72
  {
73
73
  var A = (a) => {
74
74
  var t = ze(), p = $(t, !0);
75
75
  B(t), J(() => X(p, m())), C(a, t);
76
76
  };
77
- K(n, (a) => {
77
+ H(n, (a) => {
78
78
  m() && a(A);
79
79
  });
80
80
  }
81
- var k = S(n, 2), N = $(k);
81
+ var k = S(n, 2), T = $(k);
82
82
  {
83
83
  var o = (a) => {
84
- var t = qe();
84
+ var t = Ye();
85
85
  t.disabled = !0, De(t, "hidden", !0);
86
86
  var p = $(t, !0);
87
87
  B(t);
@@ -90,13 +90,13 @@ function xe(D, r) {
90
90
  pe(t, !c()), X(p, u()), V !== (V = u()) && (t.__value = u());
91
91
  }), C(a, t);
92
92
  };
93
- K(N, (a) => {
93
+ H(T, (a) => {
94
94
  u() && a(o);
95
95
  });
96
96
  }
97
- var T = S(N);
98
- return Ne(T, 1, d, Te, (a, t) => {
99
- var p = Ge(), V = $(p, !0);
97
+ var F = S(T);
98
+ return Te(F, 1, d, Fe, (a, t) => {
99
+ var p = qe(), V = $(p, !0);
100
100
  B(p);
101
101
  var L = {};
102
102
  J(() => {
@@ -111,7 +111,7 @@ function xe(D, r) {
111
111
  ${x() ? "simple" : ""}`,
112
112
  "svelte-1bj3sm8"
113
113
  ), k.disabled = E();
114
- }), Ce("change", k, I), C(D, h), ne(F);
114
+ }), Ce("change", k, I), C(D, h), ne(N);
115
115
  }
116
116
  const ve = [
117
117
  { value: "+1", name: "US/CA +1" },
@@ -122,7 +122,7 @@ const ve = [
122
122
  { value: "+48", name: "PL +48" },
123
123
  { value: "+233", name: "GH +233" }
124
124
  ];
125
- var Me = j('<div class="crtw-flex crtw-justify-center crtw-flex-row"><div class="crtw-w-40 crtw-mr-0.5"><!></div> <!></div>');
125
+ var Ke = j('<div class="crtw-flex crtw-justify-center crtw-flex-row"><div class="crtw-w-40 crtw-mr-0.5"><!></div> <!></div>');
126
126
  function ye(D, r) {
127
127
  if (new.target) return ee({ component: ye, ...D });
128
128
  re(r, !1);
@@ -163,8 +163,8 @@ function ye(D, r) {
163
163
  $on: (n, A) => te(r, n, A)
164
164
  };
165
165
  me();
166
- var E = Me(), I = $(E), F = $(I);
167
- xe(F, {
166
+ var E = Ke(), I = $(E), N = $(I);
167
+ xe(N, {
168
168
  get options() {
169
169
  return ve;
170
170
  },
@@ -200,19 +200,19 @@ function ye(D, r) {
200
200
  $$legacy: !0
201
201
  }), B(E), C(D, E), ne(x);
202
202
  }
203
- var Ye = j('<span class="crtw-text-red-500">*</span>'), Je = j("First and last name <!>", 1), Qe = j('<span class="crtw-text-red-500">*</span>'), We = j("Email address <!>", 1), Xe = j('<div class="crtw-text-xs crtw-text-[#990008]"> </div>'), Ze = j('<div class="crtw-text-left crtw-mt-2.5 crtw-w-full"><!></div>'), et = j('<div class="crtw-flex crtw-flex-col"><!> <!></div> <div class="crtw-flex crtw-flex-col"><!> <!></div> <div class="crtw-flex crtw-flex-col"><!> <!></div> <!> <!> <!>', 1);
203
+ var Me = j('<span class="crtw-text-red-500">*</span>'), Je = j("Your first and last name <!>", 1), Qe = j('<span class="crtw-text-red-500">*</span>'), We = j("Your email address <!>", 1), Xe = j('<div class="crtw-text-xs crtw-text-[#990008]"> </div>'), Ze = j('<div class="crtw-text-left crtw-mt-2.5 crtw-w-full"><!></div>'), et = j('<div class="crtw-flex crtw-flex-col"><!> <!></div> <div class="crtw-flex crtw-flex-col"><!> <!></div> <div class="crtw-flex crtw-flex-col"><!> <!></div> <!> <!> <!>', 1);
204
204
  function Ee(D, r) {
205
205
  if (new.target) return ee({ component: Ee, ...D });
206
206
  re(r, !1);
207
207
  let d = _(r, "name", 12), u = _(r, "email", 12), m = _(r, "phone", 12), c = _(r, "isSubmitDisabled", 12), v = _(r, "error", 12), x = _(r, "isEmailInputValid", 12), E = _(r, "options", 12), {
208
208
  isExtendedRegistration: I,
209
- onProfileUpdate: F,
209
+ onProfileUpdate: N,
210
210
  onBackClick: h,
211
211
  shouldShowBackButton: n,
212
212
  isEmailChangeDisabled: A,
213
213
  isPhoneChangeDisabled: k
214
214
  } = E();
215
- var N = {
215
+ var T = {
216
216
  get name() {
217
217
  return d();
218
218
  },
@@ -256,23 +256,23 @@ function Ee(D, r) {
256
256
  E(o), b();
257
257
  },
258
258
  $set: ae,
259
- $on: (o, T) => te(r, o, T)
259
+ $on: (o, F) => te(r, o, F)
260
260
  };
261
261
  return Re(D, {
262
262
  class: "crtw-flex crtw-justify-center crtw-flex-col crtw-gap-2.5",
263
- children: (o, T) => {
263
+ children: (o, F) => {
264
264
  var a = et(), t = ie(a), p = $(t);
265
265
  ce(p, {
266
266
  for: "NameInput",
267
267
  children: (s, U) => {
268
268
  oe();
269
- var P = Je(), G = S(ie(P));
269
+ var P = Je(), q = S(ie(P));
270
270
  {
271
271
  var O = (R) => {
272
- var se = Ye();
272
+ var se = Me();
273
273
  C(R, se);
274
274
  };
275
- K(G, (R) => {
275
+ H(q, (R) => {
276
276
  I && R(O);
277
277
  });
278
278
  }
@@ -302,13 +302,13 @@ function Ee(D, r) {
302
302
  for: "EmailInput",
303
303
  children: (s, U) => {
304
304
  oe();
305
- var P = We(), G = S(ie(P));
305
+ var P = We(), q = S(ie(P));
306
306
  {
307
307
  var O = (R) => {
308
308
  var se = Qe();
309
309
  C(R, se);
310
310
  };
311
- K(G, (R) => {
311
+ H(q, (R) => {
312
312
  I && R(O);
313
313
  });
314
314
  }
@@ -339,12 +339,12 @@ function Ee(D, r) {
339
339
  },
340
340
  $$legacy: !0
341
341
  }), B(L);
342
- var M = S(L, 2), W = $(M);
342
+ var K = S(L, 2), W = $(K);
343
343
  ce(W, {
344
344
  for: "PhoneInput",
345
345
  children: (s, U) => {
346
346
  oe();
347
- var P = Ie("Phone number");
347
+ var P = Ie("Your phone number");
348
348
  C(s, P);
349
349
  },
350
350
  $$slots: { default: !0 }
@@ -361,12 +361,12 @@ function Ee(D, r) {
361
361
  m(s);
362
362
  },
363
363
  $$legacy: !0
364
- }), B(M);
365
- var l = S(M, 2);
366
- Fe(l, {
364
+ }), B(K);
365
+ var l = S(K, 2);
366
+ Ne(l, {
367
367
  text: "Update profile",
368
368
  get onClick() {
369
- return F;
369
+ return N;
370
370
  },
371
371
  get disabled() {
372
372
  return c();
@@ -378,13 +378,13 @@ function Ee(D, r) {
378
378
  var U = Xe(), P = $(U);
379
379
  B(U), J(() => X(P, `- ${v() ?? ""}`)), C(s, U);
380
380
  };
381
- K(g, (s) => {
381
+ H(g, (s) => {
382
382
  v() && s(w);
383
383
  });
384
384
  }
385
- var H = S(g, 2);
385
+ var G = S(g, 2);
386
386
  {
387
- var q = (s) => {
387
+ var Y = (s) => {
388
388
  var U = Ze(), P = $(U);
389
389
  Le(P, {
390
390
  get onClick() {
@@ -392,55 +392,55 @@ function Ee(D, r) {
392
392
  }
393
393
  }), B(U), C(s, U);
394
394
  };
395
- K(H, (s) => {
396
- n && s(q);
395
+ H(G, (s) => {
396
+ n && s(Y);
397
397
  });
398
398
  }
399
399
  C(o, a);
400
400
  },
401
401
  $$slots: { default: !0 }
402
- }), ne(N);
402
+ }), ne(T);
403
403
  }
404
404
  function tt(D, r) {
405
405
  if (new.target) return ee({ component: tt, ...D });
406
406
  re(r, !1);
407
- const d = () => _e(je, "$configStore", m), u = () => _e(Y, "$forcedPageStore", m), [m, c] = Be();
407
+ const d = () => _e(je, "$configStore", m), u = () => _e(M, "$forcedPageStore", m), [m, c] = Be();
408
408
  var v = this && this.__awaiter || function(f, l, g, w) {
409
- function H(q) {
410
- return q instanceof g ? q : new g(function(s) {
411
- s(q);
409
+ function G(Y) {
410
+ return Y instanceof g ? Y : new g(function(s) {
411
+ s(Y);
412
412
  });
413
413
  }
414
- return new (g || (g = Promise))(function(q, s) {
414
+ return new (g || (g = Promise))(function(Y, s) {
415
415
  function U(O) {
416
416
  try {
417
- G(w.next(O));
417
+ q(w.next(O));
418
418
  } catch (R) {
419
419
  s(R);
420
420
  }
421
421
  }
422
422
  function P(O) {
423
423
  try {
424
- G(w.throw(O));
424
+ q(w.throw(O));
425
425
  } catch (R) {
426
426
  s(R);
427
427
  }
428
428
  }
429
- function G(O) {
430
- O.done ? q(O.value) : H(O.value).then(U, P);
429
+ function q(O) {
430
+ O.done ? Y(O.value) : G(O.value).then(U, P);
431
431
  }
432
- G((w = w.apply(f, l || [])).next());
432
+ q((w = w.apply(f, l || [])).next());
433
433
  });
434
434
  }, x = y();
435
- const { updateProfile: E, close: I, toastAlert: F } = ge(Ve);
436
- let h = y(), n = y(), A = y(), k, N = y(), o = y(), T = y();
435
+ const { updateProfile: E, close: I, toastAlert: N } = ge(Ve);
436
+ let h = y(), n = y(), A = y(), k, T = y(), o = y(), F = y();
437
437
  const a = Ue.subscribe((f) => {
438
438
  var l, g;
439
439
  if (!f) {
440
- Y.set(null), I();
440
+ M.set(null), I();
441
441
  return;
442
442
  }
443
- i(n, f.name || ""), i(h, f.email || ""), i(A, f.phone || ""), k = f, i(N, !!(!((l = f.pending) === null || l === void 0) && l.email)), i(o, !!(!((g = f.pending) === null || g === void 0) && g.phone));
443
+ i(n, f.name || ""), i(h, f.email || ""), i(A, f.phone || ""), k = f, i(T, !!(!((l = f.pending) === null || l === void 0) && l.email)), i(o, !!(!((g = f.pending) === null || g === void 0) && g.phone));
444
444
  });
445
445
  let t = y(!1), p = y(!1), V = y(!0), L = y(!0), z = y("");
446
446
  const le = () => v(void 0, void 0, void 0, function* () {
@@ -448,33 +448,33 @@ function tt(D, r) {
448
448
  i(z, ""), i(t, !0);
449
449
  try {
450
450
  const g = Object.assign(Object.assign(Object.assign({}, k.email !== e(h) ? { email: e(h) } : {}), k.name !== e(n) ? { name: e(n) } : {}), k.phone !== e(A) ? { phone: e(A) } : {}), w = yield E(g);
451
- Y.set(null), F("Account has been updated successfully. Email or phone should be confirmed by entering one-time code.", "success");
452
- const H = ge(Ae);
453
- !(!((f = w?.pending) === null || f === void 0) && f.phone) && !(!((l = w?.pending) === null || l === void 0) && l.email) && (!H || H === ue.UPDATE_PROFILE) && I();
451
+ M.set(null), N("Account has been updated successfully. Email or phone should be confirmed by entering one-time code.", "success");
452
+ const G = ge(Ae);
453
+ !(!((f = w?.pending) === null || f === void 0) && f.phone) && !(!((l = w?.pending) === null || l === void 0) && l.email) && (!G || G === ue.UPDATE_PROFILE) && I();
454
454
  } catch (g) {
455
455
  const w = g?.message || "Error while updating your account details.";
456
- F(w, "failure"), i(z, w);
456
+ N(w, "failure"), i(z, w);
457
457
  }
458
458
  i(t, !1);
459
459
  });
460
460
  ke(a), be(
461
461
  () => (e(p), e(h), e(V), de(x), d(), e(L), e(n), e(t)),
462
462
  () => {
463
- i(p, we(e(h))), i(V, !e(h) || e(p)), !(i(x, d().auth) === null || de(x) === void 0) && de(x).extendedRegistration && i(L, !!e(n)), i(T, e(t) || !e(V) || !e(L));
463
+ i(p, we(e(h))), i(V, !e(h) || e(p)), !(i(x, d().auth) === null || de(x) === void 0) && de(x).extendedRegistration && i(L, !!e(n)), i(F, e(t) || !e(V) || !e(L));
464
464
  }
465
465
  ), he();
466
- var M = {
466
+ var K = {
467
467
  $set: ae,
468
468
  $on: (f, l) => te(r, f, l)
469
469
  };
470
470
  me();
471
471
  {
472
- let f = $e(() => (d(), Z(Y), u(), Z(ue), e(N), e(o), Q(() => ({
472
+ let f = $e(() => (d(), Z(M), u(), Z(ue), e(T), e(o), Q(() => ({
473
473
  isExtendedRegistration: d().auth?.extendedRegistration,
474
474
  onProfileUpdate: le,
475
- onBackClick: () => Y.set(null),
475
+ onBackClick: () => M.set(null),
476
476
  shouldShowBackButton: u() === ue.UPDATE_PROFILE,
477
- isEmailChangeDisabled: e(N),
477
+ isEmailChangeDisabled: e(T),
478
478
  isPhoneChangeDisabled: e(o)
479
479
  }))));
480
480
  Ee(D, {
@@ -506,10 +506,10 @@ function tt(D, r) {
506
506
  i(A, l);
507
507
  },
508
508
  get isSubmitDisabled() {
509
- return e(T);
509
+ return e(F);
510
510
  },
511
511
  set isSubmitDisabled(l) {
512
- i(T, l);
512
+ i(F, l);
513
513
  },
514
514
  get isEmailInputValid() {
515
515
  return e(V);
@@ -520,10 +520,10 @@ function tt(D, r) {
520
520
  $$legacy: !0
521
521
  });
522
522
  }
523
- var W = ne(M);
523
+ var W = ne(K);
524
524
  return c(), W;
525
525
  }
526
526
  export {
527
527
  tt as default
528
528
  };
529
- //# sourceMappingURL=UpdateProfile-Bvd41pWv.js.map
529
+ //# sourceMappingURL=UpdateProfile-DpO2WdVj.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdateProfile-DpO2WdVj.js","sources":["../../ui/main/shared/inputs/select/Select.svelte","../../ui/main/shared/inputs/phone/PhoneInput.constants.ts","../../ui/main/shared/inputs/phone/PhoneInput.svelte","../../ui/main/update-profile/UpdateProfile.svelte","../src/app/pages/update-profile/UpdateProfile.svelte"],"sourcesContent":["<style>\n .simple {\n background-image: none;\n padding: 0 10px;\n text-align: center; \n }\n .simple:focus {\n background-image: none;\n }\n</style>\n\n<script lang=\"ts\">\n export let options: { value: string; name?: string }[]\n export let placeholder: string | undefined = undefined\n export let label: string | undefined = undefined\n export let selected: string | undefined = undefined\n export let onChange: undefined | ((...args: unknown[]) => unknown) = undefined\n export let simple: boolean = false\n export let disabled: boolean = false\n\n const handleChange = (e: Event) => {\n const target = e.target as HTMLSelectElement\n if (selected !== undefined) selected = target.value\n if (onChange) onChange(e)\n }\n</script>\n\n<div>\n {#if label}\n <label class=\"crtw-font-medium\" for=\"credenzaSelect\">{label}</label>\n {/if}\n <select\n class=\"crtw-w-full crtw-h-[53px] crtw-px-5 crtw-appearance-none crtw-text-base crtw-rounded crtw-border crtw-border-gray-300\n crtw-cursor-pointer crtw-text-gray-500 focus:crtw-outline-none focus:crtw-border-blue-900 focus:crtw-text-blue-900\n {simple ? 'simple' : ''}\"\n name=\"credenzaSelect\"\n on:change={handleChange}\n {disabled}\n >\n {#if placeholder}\n <option disabled={true} selected={!selected} hidden={true}>{placeholder}</option>\n {/if}\n {#each options as item}\n <option value={item.value} selected={selected === item.value}> {item.name ?? item.value} </option>\n {/each}\n </select>\n</div>\n","export const countryCodes = [\n { value: '+1', name: 'US/CA +1' },\n { value: '+49', name: 'DE +49' },\n { value: '+33', name: 'FR +33' },\n { value: '+44', name: 'UK +44' },\n { value: '+380', name: 'UA +380' },\n { value: '+48', name: 'PL +48' },\n { value: '+233', name: 'GH +233' },\n]\n","<script lang=\"ts\">\n import Select from '../select/Select.svelte'\n import Input from '../input/Input.svelte'\n import { PHONE_PATTERN, validate } from '../../../../../utils/lib/validation/validation'\n import { countryCodes } from './PhoneInput.constants'\n\n export let phone: string\n export let isValid: boolean = true\n export let disabled: boolean = false\n\n let selectedCountryCode: string = countryCodes[0].value\n let number: number | null\n\n if (phone) {\n for (const countryCode of countryCodes) {\n if (phone.indexOf(countryCode.value) === 0) {\n number = parseInt(phone.slice(countryCode.value.length))\n selectedCountryCode = countryCode.value\n break\n }\n }\n }\n\n $: {\n isValid = !number || validate(String(number), PHONE_PATTERN)\n isValid && selectedCountryCode && number ? (phone = selectedCountryCode + String(number).trim()) : ''\n }\n</script>\n\n<div class=\"crtw-flex crtw-justify-center crtw-flex-row\">\n <div class=\"crtw-w-40 crtw-mr-0.5\">\n <Select options={countryCodes} simple bind:selected={selectedCountryCode} {disabled} />\n </div>\n <Input\n type=\"number\"\n min=\"0\"\n inputmode=\"numeric\"\n pattern=\"[0-9]*\"\n placeholder=\"Phone Number\"\n bind:value={number}\n name=\"phone\"\n {disabled}\n />\n</div>\n","<script lang=\"ts\">\n import Container from \"../shared/Container.svelte\";\n import Label from \"../shared/inputs/input/Label.svelte\";\n import Input from \"../shared/inputs/input/Input.svelte\";\n import ButtonBack from \"../shared/inputs/button-back/ButtonBack.svelte\";\n import Button from \"../shared/inputs/button/Button.svelte\";\n import PhoneInput from \"../shared/inputs/phone/PhoneInput.svelte\";\n\n export let name: string;\n export let email: string;\n export let phone: string;\n export let isSubmitDisabled: boolean;\n export let error: string | null;\n export let isEmailInputValid: boolean;\n export let options: {\n isExtendedRegistration: boolean | undefined;\n onProfileUpdate: () => void;\n onBackClick: () => void;\n shouldShowBackButton: boolean;\n isEmailChangeDisabled: boolean;\n isPhoneChangeDisabled: boolean;\n };\n\n let {\n isExtendedRegistration,\n onProfileUpdate,\n onBackClick,\n shouldShowBackButton,\n isEmailChangeDisabled,\n isPhoneChangeDisabled,\n } = options;\n</script>\n\n<Container class=\"crtw-flex crtw-justify-center crtw-flex-col crtw-gap-2.5\">\n <div class=\"crtw-flex crtw-flex-col\">\n <Label for=\"NameInput\"\n >Your first and last name\n {#if isExtendedRegistration}\n <span class=\"crtw-text-red-500\">*</span>\n {/if}\n </Label>\n <Input\n id=\"NameInput\"\n type=\"text\"\n placeholder=\"First and last name\"\n bind:value={name}\n name=\"name\"\n required={isExtendedRegistration}\n />\n </div>\n\n <div class=\"crtw-flex crtw-flex-col\">\n <Label for=\"EmailInput\"\n >Your email address\n {#if isExtendedRegistration}\n <span class=\"crtw-text-red-500\">*</span>\n {/if}\n </Label>\n <Input\n id=\"EmailInput\"\n type=\"email\"\n bind:isValid={isEmailInputValid}\n placeholder=\"Email address\"\n bind:value={email}\n name=\"email\"\n disabled={isEmailChangeDisabled}\n />\n </div>\n\n <div class=\"crtw-flex crtw-flex-col\">\n <Label for=\"PhoneInput\">Your phone number</Label>\n <PhoneInput bind:phone disabled={isPhoneChangeDisabled} />\n </div>\n\n <Button\n text=\"Update profile\"\n onClick={onProfileUpdate}\n disabled={isSubmitDisabled}\n />\n\n {#if error}\n <div class=\"crtw-text-xs crtw-text-[#990008]\">\n - {error}\n </div>\n {/if}\n\n {#if shouldShowBackButton}\n <div class=\"crtw-text-left crtw-mt-2.5 crtw-w-full\">\n <ButtonBack onClick={onBackClick} />\n </div>\n {/if}\n</Container>\n","<script lang=\"ts\">\n import { onDestroy } from 'svelte'\n import { get } from 'svelte/store'\n import { validate } from '@lib/validation/validation'\n import { fn, userStore, pageStore, forcedPageStore } from '@packages/stores'\n import { Pages } from '@packages/utils/enums'\n import { UpdateProfile } from '@packages/ui'\n import { type TUser } from '@packages/utils/types'\n import { configStore } from '@src/stores/config'\n\n const { updateProfile, close, toastAlert } = get(fn)\n\n let email: string\n let name: string\n let phone: string\n\n let currentUser: TUser\n\n let isEmailChangeDisabled: boolean\n let isPhoneChangeDisabled: boolean\n let isSubmitDisabled: boolean\n\n const unsubscribeUserStore = userStore.subscribe((user) => {\n if (!user) {\n forcedPageStore.set(null)\n close()\n return\n }\n\n name = user.name || ''\n email = user.email || ''\n phone = user.phone || ''\n currentUser = user\n\n isEmailChangeDisabled = !!user.pending?.email\n isPhoneChangeDisabled = !!user.pending?.phone\n })\n\n let isLoading = false\n let isEmailValid: boolean = false\n let isEmailInputValid: boolean = true\n let isNameValid: boolean = true\n let error: string = ''\n\n const executeProfileUpdate = async () => {\n error = ''\n isLoading = true\n try {\n const newData = {\n ...(currentUser.email !== email ? { email } : {}),\n ...(currentUser.name !== name ? { name } : {}),\n ...(currentUser.phone !== phone ? { phone } : {}),\n }\n const updatedUser = await updateProfile(newData)\n forcedPageStore.set(null)\n\n toastAlert(\n 'Account has been updated successfully. Email or phone should be confirmed by entering one-time code.',\n 'success',\n )\n const page = get(pageStore)\n if (!updatedUser?.pending?.phone && !updatedUser?.pending?.email && (!page || page === Pages.UPDATE_PROFILE))\n close()\n } catch (err) {\n const errorText = err?.message || 'Error while updating your account details.'\n toastAlert(errorText, 'failure')\n error = errorText\n }\n isLoading = false\n }\n\n $: {\n isEmailValid = validate(email)\n isEmailInputValid = !email || isEmailValid\n\n $configStore.auth?.extendedRegistration && (isNameValid = !!name)\n\n isSubmitDisabled = isLoading || !isEmailInputValid || !isNameValid\n }\n\n onDestroy(unsubscribeUserStore)\n</script>\n\n<UpdateProfile\n bind:error\n bind:name\n bind:email\n bind:phone\n bind:isSubmitDisabled\n bind:isEmailInputValid\n options={{\n isExtendedRegistration: $configStore.auth?.extendedRegistration,\n onProfileUpdate: executeProfileUpdate,\n onBackClick: () => forcedPageStore.set(null),\n shouldShowBackButton: $forcedPageStore === Pages.UPDATE_PROFILE,\n isEmailChangeDisabled,\n isPhoneChangeDisabled,\n }}\n/>\n"],"names":["options","$.prop","$$props","placeholder","label","selected","onChange","simple","disabled","handleChange","e","target","div","root","label_1","root_1","$$render","consequent","select","$.sibling","node","node_1","$.child","option","root_2","$.set_attribute","$.set_selected","consequent_1","$.each","node_2","item","option_1","root_3","$.get","$.untrack","$.reset","$.event","countryCodes","phone","selectedCountryCode","$.mutable_source","countryCode","number","isValid","validate","PHONE_PATTERN","div_1","Select","$$value","Input","name","email","isSubmitDisabled","error","isEmailInputValid","isExtendedRegistration","onProfileUpdate","onBackClick","shouldShowBackButton","isEmailChangeDisabled","isPhoneChangeDisabled","$.first_child","fragment_1","Label","span","node_3","span_1","root_5","node_5","div_2","node_6","PhoneInput","Button","node_8","__awaiter","thisArg","_arguments","P","generator","updateProfile","close","toastAlert","get","fn","currentUser","unsubscribeUserStore","userStore","user","forcedPageStore","$.set","_a","_b","isLoading","isEmailValid","isNameValid","executeProfileUpdate","newData","updatedUser","page","pageStore","Pages","err","errorText","onDestroy","$.safe_get","UpdateProfile","$$anchor"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { c as J, p as K, h as M, f as x, i as u, o as m, b as v, d as N, u as O, t as b } from "./AssetItem-B8Q6gkLR.js";
2
- import { v as Q, o as j, G as z, m as E, w as G, p as R, x as i, I as a, D as c, A as d, y as n, z as w, t as T, n as W } from "./index-DJLOlrGm.js";
3
- import { a as X } from "./App-CTxgIK4m.js";
1
+ import { c as J, p as K, h as M, f as x, i as u, o as m, b as v, d as N, u as O, t as b } from "./AssetItem-ChWEANUr.js";
2
+ import { v as Q, o as j, G as z, m as E, w as G, p as R, x as i, I as a, D as c, A as d, y as n, z as w, t as T, n as W } from "./index-sh75xcf4.js";
3
+ import { a as X } from "./App-DjtmRnrW.js";
4
4
  var Y = x('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium">User name:</p> <p class="crtw-text-sm"> </p></div>'), Z = x('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium">Email address:</p> <p class="crtw-text-sm"><!></p></div>'), $ = x('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium">Phone number:</p> <p class="crtw-text-sm"><!></p></div>'), aa = x('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium">Logged in address:</p> <p class="crtw-text-sm"> </p></div>'), ea = x('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium"> </p> <p class="crtw-text-sm"> </p></div>'), ta = x('<div class="crtw-flex crtw-justify-center crtw-flex-col crtw-items-start crtw-gap-[22px] crtw-w-full crtw-px-2.5 crtw-py-0"><!> <!> <!> <!> <!></div>');
5
5
  function ra(U, h) {
6
6
  if (new.target) return J({ component: ra, ...U });
@@ -101,4 +101,4 @@ function ra(U, h) {
101
101
  export {
102
102
  ra as U
103
103
  };
104
- //# sourceMappingURL=UserInfo-l6hFDbHo.js.map
104
+ //# sourceMappingURL=UserInfo-BpiaZOkB.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserInfo-l6hFDbHo.js","sources":["../../ui/main/shared/UserInfo.svelte"],"sourcesContent":["<script lang=\"ts\">\n import { TUser } from \"../../../utils/types\";\n\n export let options: {\n storedValueAlias: string;\n balance?: string | null;\n userData: TUser | null;\n userAddress: Promise<string>;\n };\n\n let { storedValueAlias, userAddress } = options;\n $: balance = options.balance\n $: userData = options.userData\n</script>\n\n<div\n class=\"crtw-flex crtw-justify-center crtw-flex-col crtw-items-start crtw-gap-[22px] crtw-w-full crtw-px-2.5 crtw-py-0\"\n>\n {#if userData?.name}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">User name:</p>\n <p class=\"crtw-text-sm\">\n {userData.name}\n </p>\n </div>\n {/if}\n {#if userData?.email || userData?.pending?.email}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">Email address:</p>\n <p class=\"crtw-text-sm\">\n {#if userData?.email}\n {userData.email}\n {:else if userData?.pending?.email}\n {userData.pending?.email} (Unconfirmed)\n {/if}\n </p>\n </div>\n {/if}\n\n {#if userData?.phone || userData?.pending?.phone}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">Phone number:</p>\n <p class=\"crtw-text-sm\">\n {#if userData?.phone}\n {userData.phone}\n {:else if userData?.pending?.phone}\n {userData.pending?.phone} (Unconfirmed)\n {/if}\n </p>\n </div>\n {/if}\n\n {#await userAddress then address}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">Logged in address:</p>\n <p class=\"crtw-text-sm\">\n {address}\n </p>\n </div>\n {/await}\n \n\n {#if balance}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">{storedValueAlias} available:</p>\n <p class=\"crtw-text-sm\">{balance}</p>\n </div>\n {/if}\n</div>\n"],"names":["options","$.prop","$$props","storedValueAlias","userAddress","balance","userData","div","root","node","$.child","div_1","root_1","p","$$render","consequent","div_2","root_2","p_1","$.untrack","$.get","div_3","root_5","p_2","$.await","node_5","address","p_3","$.reset","$.append","$$anchor"],"mappings":";;;;kBAAA;;;;AAWK,MAAUA,IAKbC,EAAAC,GAAA,WAAA,EAAA,GAEI,EAAC,kBAAAC,GAAc,aAAAC,EAAA,IAAAJ,EAAA;;MAChBK,GAAUL,EAAO,EAAC,OAAK;AAAA;MAC5BM,GAAgBN,EAAK,EAAA,QAAW;AAAA;;;;;;;;;;;;AAGhC,MAAAO,IAAAC,GAAA,GAAAC,IAAAC,EAAAH,CAAA;;;UAIKI,IAAGC,EAAA,GAEDC,QAFFF,CAAG,GAAA,CAAA,SAEDE,GAAC,EAAA;QAADA,CAAC,KAFHF,CAAG,mBAPRL,cAUSA,CAAI,EAAA,IAAS,EAAA,CAAA,QAHjBK,CAAG;AAAA;;QAPRL,cAMOA,CAAQ,GAAE,IAAA,KAAAQ,EAAAC,CAAA;AAAA;;;;;UASjBC,IAAQC,EAAA,GAEFC,QAFNF,CAAQ,GAAA,CAAA,SAEFE,CAAA;;;;0BAjBNZ,cAmBOA,CAAU,EAAA,KAAQ,EAAA,CAAA;;;4BAnBzBA,iBAqBoB,SAAM,KAAQ;;;YArBlCA,qCAAAA,cAoBgBA,IAAY,SAAK,KAAS;;;QAHpCY,CAAA,KAFNF,CAAQ,QAARA,CAAQ;AAAA;;QAfRV,IAcAa,EAAA,MAAAC,EAAAd,CAAY,GAAA,SAAAc,EAAAd,CAAA,GAAA,SAAA,KAAA;;;;;;UAcZe,IAAQC,EAAA,GAEFC,QAFNF,CAAQ,GAAA,CAAA,SAEFE,CAAA;;;;0BA9BNjB,sBAgCsB,EAAA,CAAA;;;4BAhCtBA,cAkCSA,CAAO,EAAI,cAAc;;;YAlClCA,qCAAAA,cAiCgBA,IAAY,SAAK,KAAS;;;QAHpCiB,CAAA,KAFNF,CAAQ,QAARA,CAAQ;AAAA;;QA5BRf,IA2BAa,EAAA,MAAAC,EAAAd,CAAY,GAAA,SAAAc,EAAAd,CAAA,GAAA,SAAA,KAAA;;;;AAaZkB,EAAAA,EAAAC,GAAA,MAAArB,aAAAsB,MAAA;kBAGKC,sBAAAA,GAAG,EAAA;MAAHA,CAAG,wBACCD,CAAO,CAAA,CAAA;;;;;;;;;;;;;;;;AAzChBE,SAAAA,EAAArB,CAAA,GAAAsB,EAAAC,GAAAvB,CAAA;AAFQ;"}
1
+ {"version":3,"file":"UserInfo-BpiaZOkB.js","sources":["../../ui/main/shared/UserInfo.svelte"],"sourcesContent":["<script lang=\"ts\">\n import { TUser } from \"../../../utils/types\";\n\n export let options: {\n storedValueAlias: string;\n balance?: string | null;\n userData: TUser | null;\n userAddress: Promise<string>;\n };\n\n let { storedValueAlias, userAddress } = options;\n $: balance = options.balance\n $: userData = options.userData\n</script>\n\n<div\n class=\"crtw-flex crtw-justify-center crtw-flex-col crtw-items-start crtw-gap-[22px] crtw-w-full crtw-px-2.5 crtw-py-0\"\n>\n {#if userData?.name}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">User name:</p>\n <p class=\"crtw-text-sm\">\n {userData.name}\n </p>\n </div>\n {/if}\n {#if userData?.email || userData?.pending?.email}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">Email address:</p>\n <p class=\"crtw-text-sm\">\n {#if userData?.email}\n {userData.email}\n {:else if userData?.pending?.email}\n {userData.pending?.email} (Unconfirmed)\n {/if}\n </p>\n </div>\n {/if}\n\n {#if userData?.phone || userData?.pending?.phone}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">Phone number:</p>\n <p class=\"crtw-text-sm\">\n {#if userData?.phone}\n {userData.phone}\n {:else if userData?.pending?.phone}\n {userData.pending?.phone} (Unconfirmed)\n {/if}\n </p>\n </div>\n {/if}\n\n {#await userAddress then address}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">Logged in address:</p>\n <p class=\"crtw-text-sm\">\n {address}\n </p>\n </div>\n {/await}\n \n\n {#if balance}\n <div class=\"crtw-w-full crtw-break-all\">\n <p class=\"crtw-font-medium\">{storedValueAlias} available:</p>\n <p class=\"crtw-text-sm\">{balance}</p>\n </div>\n {/if}\n</div>\n"],"names":["options","$.prop","$$props","storedValueAlias","userAddress","balance","userData","div","root","node","$.child","div_1","root_1","p","$$render","consequent","div_2","root_2","p_1","$.untrack","$.get","div_3","root_5","p_2","$.await","node_5","address","p_3","$.reset","$.append","$$anchor"],"mappings":";;;;kBAAA;;;;AAWK,MAAUA,IAKbC,EAAAC,GAAA,WAAA,EAAA,GAEI,EAAC,kBAAAC,GAAc,aAAAC,EAAA,IAAAJ,EAAA;;MAChBK,GAAUL,EAAO,EAAC,OAAK;AAAA;MAC5BM,GAAgBN,EAAK,EAAA,QAAW;AAAA;;;;;;;;;;;;AAGhC,MAAAO,IAAAC,GAAA,GAAAC,IAAAC,EAAAH,CAAA;;;UAIKI,IAAGC,EAAA,GAEDC,QAFFF,CAAG,GAAA,CAAA,SAEDE,GAAC,EAAA;QAADA,CAAC,KAFHF,CAAG,mBAPRL,cAUSA,CAAI,EAAA,IAAS,EAAA,CAAA,QAHjBK,CAAG;AAAA;;QAPRL,cAMOA,CAAQ,GAAE,IAAA,KAAAQ,EAAAC,CAAA;AAAA;;;;;UASjBC,IAAQC,EAAA,GAEFC,QAFNF,CAAQ,GAAA,CAAA,SAEFE,CAAA;;;;0BAjBNZ,cAmBOA,CAAU,EAAA,KAAQ,EAAA,CAAA;;;4BAnBzBA,iBAqBoB,SAAM,KAAQ;;;YArBlCA,qCAAAA,cAoBgBA,IAAY,SAAK,KAAS;;;QAHpCY,CAAA,KAFNF,CAAQ,QAARA,CAAQ;AAAA;;QAfRV,IAcAa,EAAA,MAAAC,EAAAd,CAAY,GAAA,SAAAc,EAAAd,CAAA,GAAA,SAAA,KAAA;;;;;;UAcZe,IAAQC,EAAA,GAEFC,QAFNF,CAAQ,GAAA,CAAA,SAEFE,CAAA;;;;0BA9BNjB,sBAgCsB,EAAA,CAAA;;;4BAhCtBA,cAkCSA,CAAO,EAAI,cAAc;;;YAlClCA,qCAAAA,cAiCgBA,IAAY,SAAK,KAAS;;;QAHpCiB,CAAA,KAFNF,CAAQ,QAARA,CAAQ;AAAA;;QA5BRf,IA2BAa,EAAA,MAAAC,EAAAd,CAAY,GAAA,SAAAc,EAAAd,CAAA,GAAA,SAAA,KAAA;;;;AAaZkB,EAAAA,EAAAC,GAAA,MAAArB,aAAAsB,MAAA;kBAGKC,sBAAAA,GAAG,EAAA;MAAHA,CAAG,wBACCD,CAAO,CAAA,CAAA;;;;;;;;;;;;;;;;AAzChBE,SAAAA,EAAArB,CAAA,GAAAsB,EAAAC,GAAAvB,CAAA;AAFQ;"}