@credenza3/passport-sui 0.1.10 → 0.1.11

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 (85) hide show
  1. package/dist/{App-BgNenBZk.js → App-DhdG95cV.js} +18 -18
  2. package/dist/{App-BgNenBZk.js.map → App-DhdG95cV.js.map} +1 -1
  3. package/dist/{Button-OHov6eXd.js → Button-DwxFzmd5.js} +4 -4
  4. package/dist/{Button-OHov6eXd.js.map → Button-DwxFzmd5.js.map} +1 -1
  5. package/dist/{ButtonBack-tT2V5PQf.js → ButtonBack-C3p_WkyE.js} +4 -4
  6. package/dist/{ButtonBack-tT2V5PQf.js.map → ButtonBack-C3p_WkyE.js.map} +1 -1
  7. package/dist/{ButtonLink-BcNeNAnT.js → ButtonLink-CM-NVQvv.js} +3 -3
  8. package/dist/{ButtonLink-BcNeNAnT.js.map → ButtonLink-CM-NVQvv.js.map} +1 -1
  9. package/dist/{ConfirmAccount-B9g7gpaB.js → ConfirmAccount-CsM5cp4r.js} +9 -9
  10. package/dist/{ConfirmAccount-B9g7gpaB.js.map → ConfirmAccount-CsM5cp4r.js.map} +1 -1
  11. package/dist/{ContentHeader-CN5mY_EI.js → ContentHeader-C1xFSt9M.js} +3 -3
  12. package/dist/{ContentHeader-CN5mY_EI.js.map → ContentHeader-C1xFSt9M.js.map} +1 -1
  13. package/dist/{Error-C1Y4N30A.js → Error-D6PZ8Cat.js} +5 -5
  14. package/dist/{Error-C1Y4N30A.js.map → Error-D6PZ8Cat.js.map} +1 -1
  15. package/dist/{Input-C7c35Njj.js → Input-7SiLZ1Xc.js} +4 -4
  16. package/dist/{Input-C7c35Njj.js.map → Input-7SiLZ1Xc.js.map} +1 -1
  17. package/dist/{Label-DcMHoGi2.js → Label-CH2DYAPm.js} +3 -3
  18. package/dist/{Label-DcMHoGi2.js.map → Label-CH2DYAPm.js.map} +1 -1
  19. package/dist/{Loader-hEgPdNjW.js → Loader-BpnCFDyU.js} +3 -3
  20. package/dist/{Loader-hEgPdNjW.js.map → Loader-BpnCFDyU.js.map} +1 -1
  21. package/dist/{Login-CLbnawha.js → Login-7Bt6tjER.js} +9 -9
  22. package/dist/{Login-CLbnawha.js.map → Login-7Bt6tjER.js.map} +1 -1
  23. package/dist/{Logout-C7UvmtHw.js → Logout-DaopT1u8.js} +6 -6
  24. package/dist/{Logout-C7UvmtHw.js.map → Logout-DaopT1u8.js.map} +1 -1
  25. package/dist/{Nav-CMk6wqla.js → Nav-Dz055gcD.js} +5 -5
  26. package/dist/{Nav-CMk6wqla.js.map → Nav-Dz055gcD.js.map} +1 -1
  27. package/dist/{PassportId-Dq93qrlP.js → PassportId-CcmaamvB.js} +7 -7
  28. package/dist/{PassportId-Dq93qrlP.js.map → PassportId-CcmaamvB.js.map} +1 -1
  29. package/dist/Payment-mjllXiwH.js +1179 -0
  30. package/dist/Payment-mjllXiwH.js.map +1 -0
  31. package/dist/PaymentResult-CB20OP2l.js +292 -0
  32. package/dist/PaymentResult-CB20OP2l.js.map +1 -0
  33. package/dist/{Profile-CHAGS1Rz.js → Profile-Dfcrf_Zp.js} +7 -7
  34. package/dist/{Profile-CHAGS1Rz.js.map → Profile-Dfcrf_Zp.js.map} +1 -1
  35. package/dist/{ProgressVideo-CyHro4TM.js → ProgressVideo-BMyG4HFb.js} +6 -6
  36. package/dist/{ProgressVideo-CyHro4TM.js.map → ProgressVideo-BMyG4HFb.js.map} +1 -1
  37. package/dist/{ProgressVideo.service-C5ZBidgs.js → ProgressVideo.service-DDxVvoN0.js} +2 -2
  38. package/dist/{ProgressVideo.service-C5ZBidgs.js.map → ProgressVideo.service-DDxVvoN0.js.map} +1 -1
  39. package/dist/{RichAlert-DOXrdOSp.js → RichAlert-DyVn6hVi.js} +13 -13
  40. package/dist/{RichAlert-DOXrdOSp.js.map → RichAlert-DyVn6hVi.js.map} +1 -1
  41. package/dist/{Scanner-CP7zZLmb.js → Scanner-BTvjzy4l.js} +32 -32
  42. package/dist/{Scanner-CP7zZLmb.js.map → Scanner-BTvjzy4l.js.map} +1 -1
  43. package/dist/{SendTokens-DcWtNKZU.js → SendTokens-JHmp494-.js} +7 -7
  44. package/dist/{SendTokens-DcWtNKZU.js.map → SendTokens-JHmp494-.js.map} +1 -1
  45. package/dist/{Sign-CVIrZkub.js → Sign-CFupFi7t.js} +7 -7
  46. package/dist/{Sign-CVIrZkub.js.map → Sign-CFupFi7t.js.map} +1 -1
  47. package/dist/Stripe.service-DRNJ4W4s.js +13 -0
  48. package/dist/Stripe.service-DRNJ4W4s.js.map +1 -0
  49. package/dist/{UpdateProfile-CPUOEBMo.js → UpdateProfile-DMJqZz75.js} +10 -10
  50. package/dist/{UpdateProfile-CPUOEBMo.js.map → UpdateProfile-DMJqZz75.js.map} +1 -1
  51. package/dist/{UserInfo-wgTHlE5j.js → UserInfo-C7h9tmoj.js} +4 -4
  52. package/dist/{UserInfo-wgTHlE5j.js.map → UserInfo-C7h9tmoj.js.map} +1 -1
  53. package/dist/{Wallet-BEmYMCut.js → Wallet-D399kCH4.js} +8 -8
  54. package/dist/{Wallet-BEmYMCut.js.map → Wallet-D399kCH4.js.map} +1 -1
  55. package/dist/{each-sGAWFUwm.js → each-BpYOD__c.js} +10 -10
  56. package/dist/{each-sGAWFUwm.js.map → each-BpYOD__c.js.map} +1 -1
  57. package/dist/{html-nUzEbV7C.js → html-BA2LZfEe.js} +3 -3
  58. package/dist/{html-nUzEbV7C.js.map → html-BA2LZfEe.js.map} +1 -1
  59. package/dist/{index-By5ED3Yb.js → index-CcnwLXwn.js} +559 -560
  60. package/dist/{index-By5ED3Yb.js.map → index-CcnwLXwn.js.map} +1 -1
  61. package/dist/{index-client-BsxnbQnl.js → index-client-YQfPhG-7.js} +2 -2
  62. package/dist/{index-client-BsxnbQnl.js.map → index-client-YQfPhG-7.js.map} +1 -1
  63. package/dist/{input-J57TPqRp.js → input-DqZuuK5Z.js} +3 -3
  64. package/dist/{input-J57TPqRp.js.map → input-DqZuuK5Z.js.map} +1 -1
  65. package/dist/{legacy-DjyLhwW_.js → legacy-CiYmrjBI.js} +2 -2
  66. package/dist/{legacy-DjyLhwW_.js.map → legacy-CiYmrjBI.js.map} +1 -1
  67. package/dist/passport.es.js +1 -1
  68. package/dist/passport.umd.js +155 -153
  69. package/dist/passport.umd.js.map +1 -1
  70. package/dist/{socket-io-CvJnsIiD.js → socket-io-CiQSjft1.js} +2 -2
  71. package/dist/{socket-io-CvJnsIiD.js.map → socket-io-CiQSjft1.js.map} +1 -1
  72. package/dist/types/app/pages/payment/Payment.service.d.ts +12 -0
  73. package/dist/types/app/pages/payment/oder.types.d.ts +8 -0
  74. package/dist/types/app/pages/payment/order.service.d.ts +4 -0
  75. package/dist/types/app/pages/payment/payment.constants.d.ts +1 -0
  76. package/dist/types/app/pages/payment/paystack/Paystack.svelte.d.ts +1 -0
  77. package/dist/types/app/pages/payment/stripe/Stripe.service.d.ts +1 -2
  78. package/dist/types/app/pages/payment/stripe/stripe.helper.d.ts +6 -10
  79. package/package.json +1 -1
  80. package/dist/Payment-D_PmGbx9.js +0 -990
  81. package/dist/Payment-D_PmGbx9.js.map +0 -1
  82. package/dist/PaymentResult-DKsYHo0Y.js +0 -330
  83. package/dist/PaymentResult-DKsYHo0Y.js.map +0 -1
  84. package/dist/Stripe.service-ChsNBYNx.js +0 -77
  85. package/dist/Stripe.service-ChsNBYNx.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"UpdateProfile-CPUOEBMo.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 >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 >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\">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 const isSocialLoginType =\n user.login_type !== 'credentials' && user.login_type !== 'passwordless'\n isEmailChangeDisabled = !!user.pending?.email || isSocialLoginType\n isPhoneChangeDisabled = !!user.pending?.phone || isSocialLoginType\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 isLoading = true\n error = ''\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","$$render","consequent","consequent_1","$.each","node_2","item","$.untrack","$.get","countryCodes","phone","isValid","selectedCountryCode","$.mutable_source","number","countryCode","validate","PHONE_PATTERN","$$value","name","email","isSubmitDisabled","error","isEmailInputValid","isExtendedRegistration","onProfileUpdate","onBackClick","shouldShowBackButton","isEmailChangeDisabled","isPhoneChangeDisabled","consequent_2","consequent_3","__awaiter","thisArg","_arguments","P","generator","updateProfile","close","toastAlert","get","fn","currentUser","unsubscribeUserStore","userStore","user","forcedPageStore","$.set","isSocialLoginType","_a","_b","isLoading","isEmailValid","isNameValid","executeProfileUpdate","newData","updatedUser","page","pageStore","Pages","err","errorText","onDestroy","$configStore","$.safe_get","$forcedPageStore"],"mappings":"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"}
1
+ {"version":3,"file":"UpdateProfile-DMJqZz75.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 >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 >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\">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 const isSocialLoginType =\n user.login_type !== 'credentials' && user.login_type !== 'passwordless'\n isEmailChangeDisabled = !!user.pending?.email || isSocialLoginType\n isPhoneChangeDisabled = !!user.pending?.phone || isSocialLoginType\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 isLoading = true\n error = ''\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","$$render","consequent","consequent_1","$.each","node_2","item","$.untrack","$.get","countryCodes","phone","isValid","selectedCountryCode","$.mutable_source","number","countryCode","validate","PHONE_PATTERN","$$value","name","email","isSubmitDisabled","error","isEmailInputValid","isExtendedRegistration","onProfileUpdate","onBackClick","shouldShowBackButton","isEmailChangeDisabled","isPhoneChangeDisabled","consequent_2","consequent_3","__awaiter","thisArg","_arguments","P","generator","updateProfile","close","toastAlert","get","fn","currentUser","unsubscribeUserStore","userStore","user","forcedPageStore","$.set","isSocialLoginType","_a","_b","isLoading","isEmailValid","isNameValid","executeProfileUpdate","newData","updatedUser","page","pageStore","Pages","err","errorText","onDestroy","$configStore","$.safe_get","$forcedPageStore"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { c as N, p as O, h as Q, f as h, i as w, r as u, b as _, d as R, u as T, t as y } from "./legacy-DjyLhwW_.js";
2
- import { v as W, w as I, J, m as K, A as L, x as X, B as n, K as a, G as o, E as f, C as v, D as b, z as Y, u as Z } from "./index-By5ED3Yb.js";
3
- import { a as $ } from "./App-BgNenBZk.js";
1
+ import { c as N, p as O, h as Q, f as h, i as w, r as u, b as _, d as R, u as T, t as y } from "./legacy-CiYmrjBI.js";
2
+ import { v as W, w as I, J, m as K, A as L, x as X, B as n, K as a, G as o, E as f, C as v, D as b, z as Y, u as Z } from "./index-CcnwLXwn.js";
3
+ import { a as $ } from "./App-DhdG95cV.js";
4
4
  var aa = h('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium">User name:</p> <p class="crtw-text-sm"> </p></div>'), ea = h('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium">Email address:</p> <p class="crtw-text-sm"><!></p></div>'), ta = h('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium">Phone number:</p> <p class="crtw-text-sm"><!></p></div>'), ra = h('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium">Logged in address:</p> <p class="crtw-text-sm"> </p></div>'), sa = h('<div class="crtw-w-full crtw-break-all"><p class="crtw-font-medium"> </p> <p class="crtw-text-sm"> </p></div>'), la = h('<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 ia(E, U) {
6
6
  if (new.target) return N({ component: ia, ...E });
@@ -148,4 +148,4 @@ function ia(E, U) {
148
148
  export {
149
149
  ia as U
150
150
  };
151
- //# sourceMappingURL=UserInfo-wgTHlE5j.js.map
151
+ //# sourceMappingURL=UserInfo-C7h9tmoj.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserInfo-wgTHlE5j.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","$.untrack","$.get","$.await","node_5","address","$$render","consequent_7"],"mappings":";;;;;;;;MAGaA,IAKVC,EAAAC,GAAA,WAAA,EAAA,KAEK,kBAAAC,GAAkB,aAAAC,EAAW,IAAKJ,EAAO;;MAC5CK,GAAUL,EAAO,EAAC,OAAO;AAAA;MACzBM,GAAWN,EAAO,EAAC,QAAQ;AAAA;;;;;kCAA3BM,CAAQ,GAUJC,EAAA,MAAAC,EAAAF,CAAQ,EAAC,IAAI;;;QAVjBA,CAAQ,GAMNC,EAAA,MAAAC;;AAAAA,gBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU;AAAA,OAAI;;;;;;;;;;0BANhBF,CAAQ,GAmBFC,EAAA,MAAAC,EAAAF,CAAQ,EAAC,KAAK;;;;;gCAnBpBA,CAAQ;;8BAqBFA,CAAQ,EAAC,8BAAS;AAAA,eAAK;;;;;kBArB7BA,CAAQ;;qCAoBKA,CAAQ,wBAAE,8BAAS;AAAA,iBAAK;;;;;;;YApBrCA,CAAQ,GAkBAC,EAAA,MAAAC;;AAAAA,oBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU;AAAA,WAAK;;;;;;QAlBvBF,CAAQ,GAcNC,EAAA,MAAA;;AAAAC,iBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU,YAAKA,KAAAA,IAAAA,EAAIF,CAAQ,MAAZE,gBAAAA,EAAc,YAAdA,gBAAAA,EAAuB;AAAA,OAAK;;;;;;;;;;0BAd7CF,CAAQ,GAgCFC,EAAA,MAAAC,EAAAF,CAAQ,EAAC,KAAK;;;;;gCAhCpBA,CAAQ;;8BAkCFA,CAAQ,EAAC,8BAAS;AAAA,eAAK;;;;;kBAlC7BA,CAAQ;;qCAiCKA,CAAQ,wBAAE,8BAAS;AAAA,iBAAK;;;;;;;YAjCrCA,CAAQ,GA+BAC,EAAA,MAAAC;;AAAAA,oBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU;AAAA,WAAK;;;;;;QA/BvBF,CAAQ,GA2BNC,EAAA,MAAA;;AAAAC,iBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU,YAAKA,KAAAA,IAAAA,EAAIF,CAAQ,MAAZE,gBAAAA,EAAc,YAAdA,gBAAAA,EAAuB;AAAA,OAAK;;;;AAaxCC,EAAAA,EAAAC,GAAA,MAAAN,aAAiBO,MAAO;;+BAIzBA,CAAO,CAAA,CAAA;;;;;;;;;gBAQmBR,KAAgB,EAAA,aAAA,UACpBE,CAAO,CAAA;AAAA;;;QAH/BA,CAAO,KAAAO,EAAAC,CAAA;AAAA;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"UserInfo-C7h9tmoj.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","$.untrack","$.get","$.await","node_5","address","$$render","consequent_7"],"mappings":";;;;;;;;MAGaA,IAKVC,EAAAC,GAAA,WAAA,EAAA,KAEK,kBAAAC,GAAkB,aAAAC,EAAW,IAAKJ,EAAO;;MAC5CK,GAAUL,EAAO,EAAC,OAAO;AAAA;MACzBM,GAAWN,EAAO,EAAC,QAAQ;AAAA;;;;;kCAA3BM,CAAQ,GAUJC,EAAA,MAAAC,EAAAF,CAAQ,EAAC,IAAI;;;QAVjBA,CAAQ,GAMNC,EAAA,MAAAC;;AAAAA,gBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU;AAAA,OAAI;;;;;;;;;;0BANhBF,CAAQ,GAmBFC,EAAA,MAAAC,EAAAF,CAAQ,EAAC,KAAK;;;;;gCAnBpBA,CAAQ;;8BAqBFA,CAAQ,EAAC,8BAAS;AAAA,eAAK;;;;;kBArB7BA,CAAQ;;qCAoBKA,CAAQ,wBAAE,8BAAS;AAAA,iBAAK;;;;;;;YApBrCA,CAAQ,GAkBAC,EAAA,MAAAC;;AAAAA,oBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU;AAAA,WAAK;;;;;;QAlBvBF,CAAQ,GAcNC,EAAA,MAAA;;AAAAC,iBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU,YAAKA,KAAAA,IAAAA,EAAIF,CAAQ,MAAZE,gBAAAA,EAAc,YAAdA,gBAAAA,EAAuB;AAAA,OAAK;;;;;;;;;;0BAd7CF,CAAQ,GAgCFC,EAAA,MAAAC,EAAAF,CAAQ,EAAC,KAAK;;;;;gCAhCpBA,CAAQ;;8BAkCFA,CAAQ,EAAC,8BAAS;AAAA,eAAK;;;;;kBAlC7BA,CAAQ;;qCAiCKA,CAAQ,wBAAE,8BAAS;AAAA,iBAAK;;;;;;;YAjCrCA,CAAQ,GA+BAC,EAAA,MAAAC;;AAAAA,oBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU;AAAA,WAAK;;;;;;QA/BvBF,CAAQ,GA2BNC,EAAA,MAAA;;AAAAC,iBAAAA,IAAAA,EAAAF,CAAQ,MAARE,gBAAAA,EAAU,YAAKA,KAAAA,IAAAA,EAAIF,CAAQ,MAAZE,gBAAAA,EAAc,YAAdA,gBAAAA,EAAuB;AAAA,OAAK;;;;AAaxCC,EAAAA,EAAAC,GAAA,MAAAN,aAAiBO,MAAO;;+BAIzBA,CAAO,CAAA,CAAA;;;;;;;;;gBAQmBR,KAAgB,EAAA,aAAA,UACpBE,CAAO,CAAA;AAAA;;;QAH/BA,CAAO,KAAAO,EAAAC,CAAA;AAAA;;;;;;;;;;;;;"}
@@ -1,10 +1,10 @@
1
- import { c as O, p as k, h as E, f as D, k as Q, r as U, e as W, b as V, i as q, d as N, u as z, v as X } from "./legacy-DjyLhwW_.js";
2
- import { a as Z } from "./index-client-BsxnbQnl.js";
3
- import { v as A, m as I, B as P, E as b, C as S, D as H, I as G, K as n, G as $, z as K, u as B, J as y, y as ee, w as te, A as re, x as ae, L as M, N as ne, b4 as se, $ as oe, R as J, S as L, O as ue, b5 as le } from "./index-By5ED3Yb.js";
4
- import { C as ce } from "./ContentHeader-CN5mY_EI.js";
5
- import { B as R } from "./Button-OHov6eXd.js";
6
- import { e as ie, i as de } from "./each-sGAWFUwm.js";
7
- import { b as ve } from "./input-J57TPqRp.js";
1
+ import { c as O, p as k, h as E, f as D, k as Q, r as U, e as W, b as V, i as q, d as N, u as z, v as X } from "./legacy-CiYmrjBI.js";
2
+ import { a as Z } from "./index-client-YQfPhG-7.js";
3
+ import { v as A, m as I, B as P, E as b, C as S, D as H, I as G, K as n, G as $, z as K, u as B, J as y, y as ee, w as te, A as re, x as ae, L as M, N as ne, b4 as se, $ as oe, R as J, S as L, O as ue, b5 as le } from "./index-CcnwLXwn.js";
4
+ import { C as ce } from "./ContentHeader-C1xFSt9M.js";
5
+ import { B as R } from "./Button-DwxFzmd5.js";
6
+ import { e as ie, i as de } from "./each-BpYOD__c.js";
7
+ import { b as ve } from "./input-DqZuuK5Z.js";
8
8
  var fe = D("<button> </button>"), me = D('<div class="crtw-text-xs crtw-text-gray-400 crtw-mt-1"> </div>'), ge = D('<input class="crtw-appearance-none focus:crtw-outline-0 crtw-w-full crtw-h-9 crtw-mt-4 crtw-px-5 crtw-text-base crtw-border crtw-border-gray-300 crtw-rounded focus:crtw-border-blue-800 hover:crtw-bg-gray-100" type="number" min="1" max="100"/> <!>', 1), pe = D('<div><div class="crtw-flex crtw-flex-col">Select amount <div class="crtw-inline-flex crtw-w-full" role="group"></div> <!></div></div>');
9
9
  function Y(m, s) {
10
10
  if (new.target) return O({ component: Y, ...m });
@@ -255,4 +255,4 @@ function he(m, s) {
255
255
  export {
256
256
  he as default
257
257
  };
258
- //# sourceMappingURL=Wallet-BEmYMCut.js.map
258
+ //# sourceMappingURL=Wallet-D399kCH4.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Wallet-BEmYMCut.js","sources":["../../ui/main/wallet/ButtonGroup.svelte","../../ui/main/wallet/Wallet.svelte","../src/app/pages/wallet/Wallet.svelte"],"sourcesContent":["<script lang=\"ts\">\n export let selected: string | undefined = undefined\n export let minStoredValueToPurchase: number = 0\n export let maxStoredValueToPurchase: number = 100\n\n let isInputShown = false\n let active = selected\n\n const selectItems = [\n { value: '10', name: '10' },\n { value: '25', name: '25' },\n { value: '50', name: '50' },\n { value: 'CUSTOM', name: 'Custom' },\n ]\n const handleChangeButton = (value: string) => {\n active = value\n if (value === 'CUSTOM') {\n isInputShown = true\n selected = ''\n return\n }\n isInputShown = false\n selected = value\n }\n const handleChangeInput = (e: Event) => {\n const target = e.target as HTMLSelectElement | HTMLInputElement\n target.value = target.value.replace(/[,.-]/g, '')\n if (+target.value > maxStoredValueToPurchase) {\n selected = maxStoredValueToPurchase.toString()\n return\n }\n selected = target.value\n }\n</script>\n\n<div>\n <div class=\"crtw-flex crtw-flex-col\">\n Select amount\n <div class=\"crtw-inline-flex crtw-w-full\" role=\"group\">\n {#each selectItems as item}\n <button\n on:click={() => handleChangeButton(item.value)}\n class=\"crtw-w-full crtw-h-[30px] crtw-text-sm crtw-border hover:crtw-bg-gray-100 hover:crtw-text-blue-800 first:crtw-rounded-l last:crtw-rounded-r\"\n class:crtw-border-blue-800={item.value === active}\n class:crtw-z-10={item.value === active}\n >\n {item.name}\n </button>\n {/each}\n </div>\n {#if isInputShown}\n <input\n class=\"crtw-appearance-none focus:crtw-outline-0 crtw-w-full crtw-h-9 crtw-mt-4 crtw-px-5 crtw-text-base crtw-border crtw-border-gray-300 crtw-rounded focus:crtw-border-blue-800 hover:crtw-bg-gray-100\"\n type=\"number\"\n min=\"1\"\n max=\"100\"\n bind:value={selected}\n on:input={handleChangeInput}\n />\n {#if minStoredValueToPurchase}\n <div class=\"crtw-text-xs crtw-text-gray-400 crtw-mt-1\">\n Minimum purchase amount is {minStoredValueToPurchase}\n </div>\n {/if}\n {/if}\n </div>\n</div>\n","<script lang=\"ts\">\n import ContentHeader from \"../shared/ContentHeader.svelte\";\n import Button from \"../shared/inputs/button/Button.svelte\";\n import ButtonGroup from \"./ButtonGroup.svelte\";\n\n export let selected: string;\n export let options: {\n title: string;\n description: string;\n onSendClick: () => void;\n sendValueButtonText: string;\n isSendValueDisabled: boolean;\n onPaymentClick: () => void;\n minStoredValueToPurchase?: number;\n maxStoredValueToPurchase?: number;\n };\n\n let { title, description, onSendClick, sendValueButtonText, onPaymentClick, minStoredValueToPurchase = 0, maxStoredValueToPurchase = 100 } =\n options;\n\n $: isSendValueDisabled = options.isSendValueDisabled;\n</script>\n\n<div class=\"crtw-w-full crtw-px-2.5\">\n <ContentHeader text={title} {description} />\n <ButtonGroup bind:selected {minStoredValueToPurchase} {maxStoredValueToPurchase}/>\n <div class=\"crtw-h-4\" />\n <Button\n text=\"Confirm purchase\"\n disabled={!selected || (!!minStoredValueToPurchase && +selected < minStoredValueToPurchase)}\n onClick={onPaymentClick}\n />\n <div class=\"crtw-m-3.5\" />\n <Button\n onClick={onSendClick}\n text={sendValueButtonText}\n disabled={isSendValueDisabled}\n />\n</div>\n","<script lang=\"ts\">\n import { pageStore, pageOptsStore, fn, suiPackageStore } from '@packages/stores'\n import { Pages } from '@packages/utils/enums'\n import { Wallet } from '@packages/ui'\n import { onMount } from 'svelte'\n import { get } from 'svelte/store'\n import { getClientConfigByClientId } from '@lib/clients'\n import { configStore } from '@src/stores/config'\n\n const { getBalance } = get(fn)\n\n const { maxStoredValueToPurchase, minStoredValueToPurchase } = getClientConfigByClientId(get(configStore).clientId)\n\n let balance: string = ''\n\n onMount(async () => {\n balance = await getBalance()\n })\n\n let selected: string = '10'\n\n const goToPayment = () => {\n pageOptsStore.set({\n subtitle: `Purchase stored value`,\n payments: {\n credenzaStoredValue: {\n disabled: true,\n },\n },\n assets: [\n {\n packageId: get(suiPackageStore),\n type: 'cred',\n amount: +selected,\n },\n ],\n })\n pageStore.set(Pages.PAYMENT)\n }\n</script>\n\n<Wallet\n bind:selected\n options={{\n title: `buy stored value`,\n description: `Buy/Send stored value for purchases throughout this website.`,\n onSendClick: () => pageStore.set(Pages.SEND_TOKENS),\n sendValueButtonText: `Send stored value`,\n isSendValueDisabled: !balance,\n onPaymentClick: goToPayment,\n maxStoredValueToPurchase,\n minStoredValueToPurchase,\n }}\n/>\n"],"names":["selected","minStoredValueToPurchase","maxStoredValueToPurchase","isInputShown","active","selectItems","handleChangeButton","value","$.set","handleChangeInput","target","$.each","div_2","item","$.untrack","$.get","$$render","consequent","consequent_1","$.prop","$$props","options","title","description","onSendClick","sendValueButtonText","onPaymentClick","isSendValueDisabled","expression","$.derived_safe_equal","__awaiter","thisArg","_arguments","P","generator","getBalance","get","fn","getClientConfigByClientId","configStore","balance","onMount","goToPayment","pageOptsStore","suiPackageStore","pageStore","Pages"],"mappings":"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"}
1
+ {"version":3,"file":"Wallet-D399kCH4.js","sources":["../../ui/main/wallet/ButtonGroup.svelte","../../ui/main/wallet/Wallet.svelte","../src/app/pages/wallet/Wallet.svelte"],"sourcesContent":["<script lang=\"ts\">\n export let selected: string | undefined = undefined\n export let minStoredValueToPurchase: number = 0\n export let maxStoredValueToPurchase: number = 100\n\n let isInputShown = false\n let active = selected\n\n const selectItems = [\n { value: '10', name: '10' },\n { value: '25', name: '25' },\n { value: '50', name: '50' },\n { value: 'CUSTOM', name: 'Custom' },\n ]\n const handleChangeButton = (value: string) => {\n active = value\n if (value === 'CUSTOM') {\n isInputShown = true\n selected = ''\n return\n }\n isInputShown = false\n selected = value\n }\n const handleChangeInput = (e: Event) => {\n const target = e.target as HTMLSelectElement | HTMLInputElement\n target.value = target.value.replace(/[,.-]/g, '')\n if (+target.value > maxStoredValueToPurchase) {\n selected = maxStoredValueToPurchase.toString()\n return\n }\n selected = target.value\n }\n</script>\n\n<div>\n <div class=\"crtw-flex crtw-flex-col\">\n Select amount\n <div class=\"crtw-inline-flex crtw-w-full\" role=\"group\">\n {#each selectItems as item}\n <button\n on:click={() => handleChangeButton(item.value)}\n class=\"crtw-w-full crtw-h-[30px] crtw-text-sm crtw-border hover:crtw-bg-gray-100 hover:crtw-text-blue-800 first:crtw-rounded-l last:crtw-rounded-r\"\n class:crtw-border-blue-800={item.value === active}\n class:crtw-z-10={item.value === active}\n >\n {item.name}\n </button>\n {/each}\n </div>\n {#if isInputShown}\n <input\n class=\"crtw-appearance-none focus:crtw-outline-0 crtw-w-full crtw-h-9 crtw-mt-4 crtw-px-5 crtw-text-base crtw-border crtw-border-gray-300 crtw-rounded focus:crtw-border-blue-800 hover:crtw-bg-gray-100\"\n type=\"number\"\n min=\"1\"\n max=\"100\"\n bind:value={selected}\n on:input={handleChangeInput}\n />\n {#if minStoredValueToPurchase}\n <div class=\"crtw-text-xs crtw-text-gray-400 crtw-mt-1\">\n Minimum purchase amount is {minStoredValueToPurchase}\n </div>\n {/if}\n {/if}\n </div>\n</div>\n","<script lang=\"ts\">\n import ContentHeader from \"../shared/ContentHeader.svelte\";\n import Button from \"../shared/inputs/button/Button.svelte\";\n import ButtonGroup from \"./ButtonGroup.svelte\";\n\n export let selected: string;\n export let options: {\n title: string;\n description: string;\n onSendClick: () => void;\n sendValueButtonText: string;\n isSendValueDisabled: boolean;\n onPaymentClick: () => void;\n minStoredValueToPurchase?: number;\n maxStoredValueToPurchase?: number;\n };\n\n let { title, description, onSendClick, sendValueButtonText, onPaymentClick, minStoredValueToPurchase = 0, maxStoredValueToPurchase = 100 } =\n options;\n\n $: isSendValueDisabled = options.isSendValueDisabled;\n</script>\n\n<div class=\"crtw-w-full crtw-px-2.5\">\n <ContentHeader text={title} {description} />\n <ButtonGroup bind:selected {minStoredValueToPurchase} {maxStoredValueToPurchase}/>\n <div class=\"crtw-h-4\" />\n <Button\n text=\"Confirm purchase\"\n disabled={!selected || (!!minStoredValueToPurchase && +selected < minStoredValueToPurchase)}\n onClick={onPaymentClick}\n />\n <div class=\"crtw-m-3.5\" />\n <Button\n onClick={onSendClick}\n text={sendValueButtonText}\n disabled={isSendValueDisabled}\n />\n</div>\n","<script lang=\"ts\">\n import { pageStore, pageOptsStore, fn, suiPackageStore } from '@packages/stores'\n import { Pages } from '@packages/utils/enums'\n import { Wallet } from '@packages/ui'\n import { onMount } from 'svelte'\n import { get } from 'svelte/store'\n import { getClientConfigByClientId } from '@lib/clients'\n import { configStore } from '@src/stores/config'\n\n const { getBalance } = get(fn)\n\n const { maxStoredValueToPurchase, minStoredValueToPurchase } = getClientConfigByClientId(get(configStore).clientId)\n\n let balance: string = ''\n\n onMount(async () => {\n balance = await getBalance()\n })\n\n let selected: string = '10'\n\n const goToPayment = () => {\n pageOptsStore.set({\n subtitle: `Purchase stored value`,\n payments: {\n credenzaStoredValue: {\n disabled: true,\n },\n },\n assets: [\n {\n packageId: get(suiPackageStore),\n type: 'cred',\n amount: +selected,\n },\n ],\n })\n pageStore.set(Pages.PAYMENT)\n }\n</script>\n\n<Wallet\n bind:selected\n options={{\n title: `buy stored value`,\n description: `Buy/Send stored value for purchases throughout this website.`,\n onSendClick: () => pageStore.set(Pages.SEND_TOKENS),\n sendValueButtonText: `Send stored value`,\n isSendValueDisabled: !balance,\n onPaymentClick: goToPayment,\n maxStoredValueToPurchase,\n minStoredValueToPurchase,\n }}\n/>\n"],"names":["selected","minStoredValueToPurchase","maxStoredValueToPurchase","isInputShown","active","selectItems","handleChangeButton","value","$.set","handleChangeInput","target","$.each","div_2","item","$.untrack","$.get","$$render","consequent","consequent_1","$.prop","$$props","options","title","description","onSendClick","sendValueButtonText","onPaymentClick","isSendValueDisabled","expression","$.derived_safe_equal","__awaiter","thisArg","_arguments","P","generator","getBalance","get","fn","getClientConfigByClientId","configStore","balance","onMount","goToPayment","pageOptsStore","suiPackageStore","pageStore","Pages"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { h as m, a as ee, b as ae, K, I as re, an as ne, H as fe, r as U, s as D, d as R, g as w, ac as ie, ag as le, o as J, p as P, t as se, ak as Q, a4 as ue, m as te, f as X, br as S, a1 as z, bs as k, e as F, bt as ve, aj as de, bu as _e, ao as oe, bv as y, bw as ce, ae as he, a5 as Ee, a7 as pe, bx as W, q as be, by as Te } from "./index-By5ED3Yb.js";
1
+ import { h as m, a as ee, b as ae, K, I as re, an as ne, H as fe, r as U, s as D, d as R, g as w, ac as ie, ag as le, o as J, p as P, t as se, ak as Q, a4 as ue, m as te, f as X, bq as S, a1 as z, br as k, e as F, bs as ve, aj as de, bt as _e, ao as oe, bu as O, bv as ce, ae as he, a5 as Ee, a7 as pe, bw as W, q as be, bx as Te } from "./index-CcnwLXwn.js";
2
2
  function Ce(l, e) {
3
3
  return e;
4
4
  }
@@ -81,11 +81,11 @@ function Ne(l, e, a, u, v, _ = null) {
81
81
  }), m && (t = w);
82
82
  }
83
83
  function Ie(l, e, a, u, v, _, t) {
84
- var L, q, V, Y;
85
- var o = (v & Te) !== 0, b = (v & (y | k)) !== 0, h = l.length, d = e.items, C = e.first, f = C, s, r = null, A, E = [], p = [], T, c, n, i;
84
+ var q, L, V, Y;
85
+ var o = (v & Te) !== 0, b = (v & (O | k)) !== 0, h = l.length, d = e.items, C = e.first, f = C, s, r = null, A, E = [], p = [], T, c, n, i;
86
86
  if (o)
87
87
  for (i = 0; i < h; i += 1)
88
- T = l[i], c = _(T, i), n = d.get(c), n !== void 0 && ((L = n.a) == null || L.measure(), (A ?? (A = /* @__PURE__ */ new Set())).add(n));
88
+ T = l[i], c = _(T, i), n = d.get(c), n !== void 0 && ((q = n.a) == null || q.measure(), (A ?? (A = /* @__PURE__ */ new Set())).add(n));
89
89
  for (i = 0; i < h; i += 1) {
90
90
  if (T = l[i], c = _(T, i), n = d.get(c), n === void 0) {
91
91
  var $ = f ? (
@@ -106,17 +106,17 @@ function Ie(l, e, a, u, v, _, t) {
106
106
  ), d.set(c, r), E = [], p = [], f = r.next;
107
107
  continue;
108
108
  }
109
- if (b && xe(n, T, i, v), (n.e.f & S) !== 0 && (J(n.e), o && ((q = n.a) == null || q.unfix(), (A ?? (A = /* @__PURE__ */ new Set())).delete(n))), n !== f) {
109
+ if (b && xe(n, T, i, v), (n.e.f & S) !== 0 && (J(n.e), o && ((L = n.a) == null || L.unfix(), (A ?? (A = /* @__PURE__ */ new Set())).delete(n))), n !== f) {
110
110
  if (s !== void 0 && s.has(n)) {
111
111
  if (E.length < p.length) {
112
112
  var g = p[0], I;
113
113
  r = g.prev;
114
- var O = E[0], H = E[E.length - 1];
114
+ var y = E[0], H = E[E.length - 1];
115
115
  for (I = 0; I < E.length; I += 1)
116
116
  G(E[I], g, a);
117
117
  for (I = 0; I < p.length; I += 1)
118
118
  s.delete(p[I]);
119
- x(e, O.prev, H.next), x(e, r, O), x(e, H, g), f = g, r = H, i -= 1, E = [], p = [];
119
+ x(e, y.prev, H.next), x(e, r, y), x(e, H, g), f = g, r = H, i -= 1, E = [], p = [];
120
120
  } else
121
121
  s.delete(n), G(n, f, a), x(e, n.prev, n.next), x(e, n, r === null ? e.first : r.next), x(e, r, n), r = n;
122
122
  continue;
@@ -152,14 +152,14 @@ function Ie(l, e, a, u, v, _, t) {
152
152
  }), z.first = e.first && e.first.e, z.last = r && r.e;
153
153
  }
154
154
  function xe(l, e, a, u) {
155
- (u & y) !== 0 && F(l.v, e), (u & k) !== 0 ? F(
155
+ (u & O) !== 0 && F(l.v, e), (u & k) !== 0 ? F(
156
156
  /** @type {Value<number>} */
157
157
  l.i,
158
158
  a
159
159
  ) : l.i = a;
160
160
  }
161
161
  function Z(l, e, a, u, v, _, t, o, b, h) {
162
- var d = (b & y) !== 0, C = (b & ce) === 0, f = d ? C ? te(v, !1, !1) : X(v) : v, s = (b & k) === 0 ? t : X(t), r = {
162
+ var d = (b & O) !== 0, C = (b & ce) === 0, f = d ? C ? te(v, !1, !1) : X(v) : v, s = (b & k) === 0 ? t : X(t), r = {
163
163
  i: s,
164
164
  v: f,
165
165
  k: _,
@@ -199,4 +199,4 @@ export {
199
199
  Ne as e,
200
200
  Ce as i
201
201
  };
202
- //# sourceMappingURL=each-sGAWFUwm.js.map
202
+ //# sourceMappingURL=each-BpYOD__c.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"each-sGAWFUwm.js","sources":["../../../node_modules/.pnpm/svelte@5.34.8/node_modules/svelte/src/internal/client/dom/blocks/each.js"],"sourcesContent":["/** @import { EachItem, EachState, Effect, MaybeSource, Source, TemplateNode, TransitionManager, Value } from '#client' */\nimport {\n\tEACH_INDEX_REACTIVE,\n\tEACH_IS_ANIMATED,\n\tEACH_IS_CONTROLLED,\n\tEACH_ITEM_IMMUTABLE,\n\tEACH_ITEM_REACTIVE,\n\tHYDRATION_END,\n\tHYDRATION_START_ELSE\n} from '../../../../constants.js';\nimport {\n\thydrate_next,\n\thydrate_node,\n\thydrating,\n\tread_hydration_instruction,\n\tremove_nodes,\n\tset_hydrate_node,\n\tset_hydrating\n} from '../hydration.js';\nimport {\n\tclear_text_content,\n\tcreate_text,\n\tget_first_child,\n\tget_next_sibling\n} from '../operations.js';\nimport {\n\tblock,\n\tbranch,\n\tdestroy_effect,\n\trun_out_transitions,\n\tpause_children,\n\tpause_effect,\n\tresume_effect\n} from '../../reactivity/effects.js';\nimport { source, mutable_source, internal_set } from '../../reactivity/sources.js';\nimport { array_from, is_array } from '../../../shared/utils.js';\nimport { COMMENT_NODE, INERT } from '#client/constants';\nimport { queue_micro_task } from '../task.js';\nimport { active_effect, get } from '../../runtime.js';\nimport { DEV } from 'esm-env';\nimport { derived_safe_equal } from '../../reactivity/deriveds.js';\n\n/**\n * The row of a keyed each block that is currently updating. We track this\n * so that `animate:` directives have something to attach themselves to\n * @type {EachItem | null}\n */\nexport let current_each_item = null;\n\n/** @param {EachItem | null} item */\nexport function set_current_each_item(item) {\n\tcurrent_each_item = item;\n}\n\n/**\n * @param {any} _\n * @param {number} i\n */\nexport function index(_, i) {\n\treturn i;\n}\n\n/**\n * Pause multiple effects simultaneously, and coordinate their\n * subsequent destruction. Used in each blocks\n * @param {EachState} state\n * @param {EachItem[]} items\n * @param {null | Node} controlled_anchor\n * @param {Map<any, EachItem>} items_map\n */\nfunction pause_effects(state, items, controlled_anchor, items_map) {\n\t/** @type {TransitionManager[]} */\n\tvar transitions = [];\n\tvar length = items.length;\n\n\tfor (var i = 0; i < length; i++) {\n\t\tpause_children(items[i].e, transitions, true);\n\t}\n\n\tvar is_controlled = length > 0 && transitions.length === 0 && controlled_anchor !== null;\n\t// If we have a controlled anchor, it means that the each block is inside a single\n\t// DOM element, so we can apply a fast-path for clearing the contents of the element.\n\tif (is_controlled) {\n\t\tvar parent_node = /** @type {Element} */ (\n\t\t\t/** @type {Element} */ (controlled_anchor).parentNode\n\t\t);\n\t\tclear_text_content(parent_node);\n\t\tparent_node.append(/** @type {Element} */ (controlled_anchor));\n\t\titems_map.clear();\n\t\tlink(state, items[0].prev, items[length - 1].next);\n\t}\n\n\trun_out_transitions(transitions, () => {\n\t\tfor (var i = 0; i < length; i++) {\n\t\t\tvar item = items[i];\n\t\t\tif (!is_controlled) {\n\t\t\t\titems_map.delete(item.k);\n\t\t\t\tlink(state, item.prev, item.next);\n\t\t\t}\n\t\t\tdestroy_effect(item.e, !is_controlled);\n\t\t}\n\t});\n}\n\n/**\n * @template V\n * @param {Element | Comment} node The next sibling node, or the parent node if this is a 'controlled' block\n * @param {number} flags\n * @param {() => V[]} get_collection\n * @param {(value: V, index: number) => any} get_key\n * @param {(anchor: Node, item: MaybeSource<V>, index: MaybeSource<number>) => void} render_fn\n * @param {null | ((anchor: Node) => void)} fallback_fn\n * @returns {void}\n */\nexport function each(node, flags, get_collection, get_key, render_fn, fallback_fn = null) {\n\tvar anchor = node;\n\n\t/** @type {EachState} */\n\tvar state = { flags, items: new Map(), first: null };\n\n\tvar is_controlled = (flags & EACH_IS_CONTROLLED) !== 0;\n\n\tif (is_controlled) {\n\t\tvar parent_node = /** @type {Element} */ (node);\n\n\t\tanchor = hydrating\n\t\t\t? set_hydrate_node(/** @type {Comment | Text} */ (get_first_child(parent_node)))\n\t\t\t: parent_node.appendChild(create_text());\n\t}\n\n\tif (hydrating) {\n\t\thydrate_next();\n\t}\n\n\t/** @type {Effect | null} */\n\tvar fallback = null;\n\n\tvar was_empty = false;\n\n\t// TODO: ideally we could use derived for runes mode but because of the ability\n\t// to use a store which can be mutated, we can't do that here as mutating a store\n\t// will still result in the collection array being the same from the store\n\tvar each_array = derived_safe_equal(() => {\n\t\tvar collection = get_collection();\n\n\t\treturn is_array(collection) ? collection : collection == null ? [] : array_from(collection);\n\t});\n\n\tblock(() => {\n\t\tvar array = get(each_array);\n\t\tvar length = array.length;\n\n\t\tif (was_empty && length === 0) {\n\t\t\t// ignore updates if the array is empty,\n\t\t\t// and it already was empty on previous run\n\t\t\treturn;\n\t\t}\n\t\twas_empty = length === 0;\n\n\t\t/** `true` if there was a hydration mismatch. Needs to be a `let` or else it isn't treeshaken out */\n\t\tlet mismatch = false;\n\n\t\tif (hydrating) {\n\t\t\tvar is_else = read_hydration_instruction(anchor) === HYDRATION_START_ELSE;\n\n\t\t\tif (is_else !== (length === 0)) {\n\t\t\t\t// hydration mismatch — remove the server-rendered DOM and start over\n\t\t\t\tanchor = remove_nodes();\n\n\t\t\t\tset_hydrate_node(anchor);\n\t\t\t\tset_hydrating(false);\n\t\t\t\tmismatch = true;\n\t\t\t}\n\t\t}\n\n\t\t// this is separate to the previous block because `hydrating` might change\n\t\tif (hydrating) {\n\t\t\t/** @type {EachItem | null} */\n\t\t\tvar prev = null;\n\n\t\t\t/** @type {EachItem} */\n\t\t\tvar item;\n\n\t\t\tfor (var i = 0; i < length; i++) {\n\t\t\t\tif (\n\t\t\t\t\thydrate_node.nodeType === COMMENT_NODE &&\n\t\t\t\t\t/** @type {Comment} */ (hydrate_node).data === HYDRATION_END\n\t\t\t\t) {\n\t\t\t\t\t// The server rendered fewer items than expected,\n\t\t\t\t\t// so break out and continue appending non-hydrated items\n\t\t\t\t\tanchor = /** @type {Comment} */ (hydrate_node);\n\t\t\t\t\tmismatch = true;\n\t\t\t\t\tset_hydrating(false);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tvar value = array[i];\n\t\t\t\tvar key = get_key(value, i);\n\t\t\t\titem = create_item(\n\t\t\t\t\thydrate_node,\n\t\t\t\t\tstate,\n\t\t\t\t\tprev,\n\t\t\t\t\tnull,\n\t\t\t\t\tvalue,\n\t\t\t\t\tkey,\n\t\t\t\t\ti,\n\t\t\t\t\trender_fn,\n\t\t\t\t\tflags,\n\t\t\t\t\tget_collection\n\t\t\t\t);\n\t\t\t\tstate.items.set(key, item);\n\n\t\t\t\tprev = item;\n\t\t\t}\n\n\t\t\t// remove excess nodes\n\t\t\tif (length > 0) {\n\t\t\t\tset_hydrate_node(remove_nodes());\n\t\t\t}\n\t\t}\n\n\t\tif (!hydrating) {\n\t\t\treconcile(array, state, anchor, render_fn, flags, get_key, get_collection);\n\t\t}\n\n\t\tif (fallback_fn !== null) {\n\t\t\tif (length === 0) {\n\t\t\t\tif (fallback) {\n\t\t\t\t\tresume_effect(fallback);\n\t\t\t\t} else {\n\t\t\t\t\tfallback = branch(() => fallback_fn(anchor));\n\t\t\t\t}\n\t\t\t} else if (fallback !== null) {\n\t\t\t\tpause_effect(fallback, () => {\n\t\t\t\t\tfallback = null;\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tif (mismatch) {\n\t\t\t// continue in hydration mode\n\t\t\tset_hydrating(true);\n\t\t}\n\n\t\t// When we mount the each block for the first time, the collection won't be\n\t\t// connected to this effect as the effect hasn't finished running yet and its deps\n\t\t// won't be assigned. However, it's possible that when reconciling the each block\n\t\t// that a mutation occurred and it's made the collection MAYBE_DIRTY, so reading the\n\t\t// collection again can provide consistency to the reactive graph again as the deriveds\n\t\t// will now be `CLEAN`.\n\t\tget(each_array);\n\t});\n\n\tif (hydrating) {\n\t\tanchor = hydrate_node;\n\t}\n}\n\n/**\n * Add, remove, or reorder items output by an each block as its input changes\n * @template V\n * @param {Array<V>} array\n * @param {EachState} state\n * @param {Element | Comment | Text} anchor\n * @param {(anchor: Node, item: MaybeSource<V>, index: number | Source<number>, collection: () => V[]) => void} render_fn\n * @param {number} flags\n * @param {(value: V, index: number) => any} get_key\n * @param {() => V[]} get_collection\n * @returns {void}\n */\nfunction reconcile(array, state, anchor, render_fn, flags, get_key, get_collection) {\n\tvar is_animated = (flags & EACH_IS_ANIMATED) !== 0;\n\tvar should_update = (flags & (EACH_ITEM_REACTIVE | EACH_INDEX_REACTIVE)) !== 0;\n\n\tvar length = array.length;\n\tvar items = state.items;\n\tvar first = state.first;\n\tvar current = first;\n\n\t/** @type {undefined | Set<EachItem>} */\n\tvar seen;\n\n\t/** @type {EachItem | null} */\n\tvar prev = null;\n\n\t/** @type {undefined | Set<EachItem>} */\n\tvar to_animate;\n\n\t/** @type {EachItem[]} */\n\tvar matched = [];\n\n\t/** @type {EachItem[]} */\n\tvar stashed = [];\n\n\t/** @type {V} */\n\tvar value;\n\n\t/** @type {any} */\n\tvar key;\n\n\t/** @type {EachItem | undefined} */\n\tvar item;\n\n\t/** @type {number} */\n\tvar i;\n\n\tif (is_animated) {\n\t\tfor (i = 0; i < length; i += 1) {\n\t\t\tvalue = array[i];\n\t\t\tkey = get_key(value, i);\n\t\t\titem = items.get(key);\n\n\t\t\tif (item !== undefined) {\n\t\t\t\titem.a?.measure();\n\t\t\t\t(to_animate ??= new Set()).add(item);\n\t\t\t}\n\t\t}\n\t}\n\n\tfor (i = 0; i < length; i += 1) {\n\t\tvalue = array[i];\n\t\tkey = get_key(value, i);\n\t\titem = items.get(key);\n\n\t\tif (item === undefined) {\n\t\t\tvar child_anchor = current ? /** @type {TemplateNode} */ (current.e.nodes_start) : anchor;\n\n\t\t\tprev = create_item(\n\t\t\t\tchild_anchor,\n\t\t\t\tstate,\n\t\t\t\tprev,\n\t\t\t\tprev === null ? state.first : prev.next,\n\t\t\t\tvalue,\n\t\t\t\tkey,\n\t\t\t\ti,\n\t\t\t\trender_fn,\n\t\t\t\tflags,\n\t\t\t\tget_collection\n\t\t\t);\n\n\t\t\titems.set(key, prev);\n\n\t\t\tmatched = [];\n\t\t\tstashed = [];\n\n\t\t\tcurrent = prev.next;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (should_update) {\n\t\t\tupdate_item(item, value, i, flags);\n\t\t}\n\n\t\tif ((item.e.f & INERT) !== 0) {\n\t\t\tresume_effect(item.e);\n\t\t\tif (is_animated) {\n\t\t\t\titem.a?.unfix();\n\t\t\t\t(to_animate ??= new Set()).delete(item);\n\t\t\t}\n\t\t}\n\n\t\tif (item !== current) {\n\t\t\tif (seen !== undefined && seen.has(item)) {\n\t\t\t\tif (matched.length < stashed.length) {\n\t\t\t\t\t// more efficient to move later items to the front\n\t\t\t\t\tvar start = stashed[0];\n\t\t\t\t\tvar j;\n\n\t\t\t\t\tprev = start.prev;\n\n\t\t\t\t\tvar a = matched[0];\n\t\t\t\t\tvar b = matched[matched.length - 1];\n\n\t\t\t\t\tfor (j = 0; j < matched.length; j += 1) {\n\t\t\t\t\t\tmove(matched[j], start, anchor);\n\t\t\t\t\t}\n\n\t\t\t\t\tfor (j = 0; j < stashed.length; j += 1) {\n\t\t\t\t\t\tseen.delete(stashed[j]);\n\t\t\t\t\t}\n\n\t\t\t\t\tlink(state, a.prev, b.next);\n\t\t\t\t\tlink(state, prev, a);\n\t\t\t\t\tlink(state, b, start);\n\n\t\t\t\t\tcurrent = start;\n\t\t\t\t\tprev = b;\n\t\t\t\t\ti -= 1;\n\n\t\t\t\t\tmatched = [];\n\t\t\t\t\tstashed = [];\n\t\t\t\t} else {\n\t\t\t\t\t// more efficient to move earlier items to the back\n\t\t\t\t\tseen.delete(item);\n\t\t\t\t\tmove(item, current, anchor);\n\n\t\t\t\t\tlink(state, item.prev, item.next);\n\t\t\t\t\tlink(state, item, prev === null ? state.first : prev.next);\n\t\t\t\t\tlink(state, prev, item);\n\n\t\t\t\t\tprev = item;\n\t\t\t\t}\n\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tmatched = [];\n\t\t\tstashed = [];\n\n\t\t\twhile (current !== null && current.k !== key) {\n\t\t\t\t// If the each block isn't inert and an item has an effect that is already inert,\n\t\t\t\t// skip over adding it to our seen Set as the item is already being handled\n\t\t\t\tif ((current.e.f & INERT) === 0) {\n\t\t\t\t\t(seen ??= new Set()).add(current);\n\t\t\t\t}\n\t\t\t\tstashed.push(current);\n\t\t\t\tcurrent = current.next;\n\t\t\t}\n\n\t\t\tif (current === null) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\titem = current;\n\t\t}\n\n\t\tmatched.push(item);\n\t\tprev = item;\n\t\tcurrent = item.next;\n\t}\n\n\tif (current !== null || seen !== undefined) {\n\t\tvar to_destroy = seen === undefined ? [] : array_from(seen);\n\n\t\twhile (current !== null) {\n\t\t\t// If the each block isn't inert, then inert effects are currently outroing and will be removed once the transition is finished\n\t\t\tif ((current.e.f & INERT) === 0) {\n\t\t\t\tto_destroy.push(current);\n\t\t\t}\n\t\t\tcurrent = current.next;\n\t\t}\n\n\t\tvar destroy_length = to_destroy.length;\n\n\t\tif (destroy_length > 0) {\n\t\t\tvar controlled_anchor = (flags & EACH_IS_CONTROLLED) !== 0 && length === 0 ? anchor : null;\n\n\t\t\tif (is_animated) {\n\t\t\t\tfor (i = 0; i < destroy_length; i += 1) {\n\t\t\t\t\tto_destroy[i].a?.measure();\n\t\t\t\t}\n\n\t\t\t\tfor (i = 0; i < destroy_length; i += 1) {\n\t\t\t\t\tto_destroy[i].a?.fix();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tpause_effects(state, to_destroy, controlled_anchor, items);\n\t\t}\n\t}\n\n\tif (is_animated) {\n\t\tqueue_micro_task(() => {\n\t\t\tif (to_animate === undefined) return;\n\t\t\tfor (item of to_animate) {\n\t\t\t\titem.a?.apply();\n\t\t\t}\n\t\t});\n\t}\n\n\t/** @type {Effect} */ (active_effect).first = state.first && state.first.e;\n\t/** @type {Effect} */ (active_effect).last = prev && prev.e;\n}\n\n/**\n * @param {EachItem} item\n * @param {any} value\n * @param {number} index\n * @param {number} type\n * @returns {void}\n */\nfunction update_item(item, value, index, type) {\n\tif ((type & EACH_ITEM_REACTIVE) !== 0) {\n\t\tinternal_set(item.v, value);\n\t}\n\n\tif ((type & EACH_INDEX_REACTIVE) !== 0) {\n\t\tinternal_set(/** @type {Value<number>} */ (item.i), index);\n\t} else {\n\t\titem.i = index;\n\t}\n}\n\n/**\n * @template V\n * @param {Node} anchor\n * @param {EachState} state\n * @param {EachItem | null} prev\n * @param {EachItem | null} next\n * @param {V} value\n * @param {unknown} key\n * @param {number} index\n * @param {(anchor: Node, item: V | Source<V>, index: number | Value<number>, collection: () => V[]) => void} render_fn\n * @param {number} flags\n * @param {() => V[]} get_collection\n * @returns {EachItem}\n */\nfunction create_item(\n\tanchor,\n\tstate,\n\tprev,\n\tnext,\n\tvalue,\n\tkey,\n\tindex,\n\trender_fn,\n\tflags,\n\tget_collection\n) {\n\tvar previous_each_item = current_each_item;\n\tvar reactive = (flags & EACH_ITEM_REACTIVE) !== 0;\n\tvar mutable = (flags & EACH_ITEM_IMMUTABLE) === 0;\n\n\tvar v = reactive ? (mutable ? mutable_source(value, false, false) : source(value)) : value;\n\tvar i = (flags & EACH_INDEX_REACTIVE) === 0 ? index : source(index);\n\n\tif (DEV && reactive) {\n\t\t// For tracing purposes, we need to link the source signal we create with the\n\t\t// collection + index so that tracing works as intended\n\t\t/** @type {Value} */ (v).trace = () => {\n\t\t\tvar collection_index = typeof i === 'number' ? index : i.v;\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unused-expressions\n\t\t\tget_collection()[collection_index];\n\t\t};\n\t}\n\n\t/** @type {EachItem} */\n\tvar item = {\n\t\ti,\n\t\tv,\n\t\tk: key,\n\t\ta: null,\n\t\t// @ts-expect-error\n\t\te: null,\n\t\tprev,\n\t\tnext\n\t};\n\n\tcurrent_each_item = item;\n\n\ttry {\n\t\titem.e = branch(() => render_fn(anchor, v, i, get_collection), hydrating);\n\n\t\titem.e.prev = prev && prev.e;\n\t\titem.e.next = next && next.e;\n\n\t\tif (prev === null) {\n\t\t\tstate.first = item;\n\t\t} else {\n\t\t\tprev.next = item;\n\t\t\tprev.e.next = item.e;\n\t\t}\n\n\t\tif (next !== null) {\n\t\t\tnext.prev = item;\n\t\t\tnext.e.prev = item.e;\n\t\t}\n\n\t\treturn item;\n\t} finally {\n\t\tcurrent_each_item = previous_each_item;\n\t}\n}\n\n/**\n * @param {EachItem} item\n * @param {EachItem | null} next\n * @param {Text | Element | Comment} anchor\n */\nfunction move(item, next, anchor) {\n\tvar end = item.next ? /** @type {TemplateNode} */ (item.next.e.nodes_start) : anchor;\n\n\tvar dest = next ? /** @type {TemplateNode} */ (next.e.nodes_start) : anchor;\n\tvar node = /** @type {TemplateNode} */ (item.e.nodes_start);\n\n\twhile (node !== end) {\n\t\tvar next_node = /** @type {TemplateNode} */ (get_next_sibling(node));\n\t\tdest.before(node);\n\t\tnode = next_node;\n\t}\n}\n\n/**\n * @param {EachState} state\n * @param {EachItem | null} prev\n * @param {EachItem | null} next\n */\nfunction link(state, prev, next) {\n\tif (prev === null) {\n\t\tstate.first = next;\n\t} else {\n\t\tprev.next = next;\n\t\tprev.e.next = next && next.e;\n\t}\n\n\tif (next !== null) {\n\t\tnext.prev = prev;\n\t\tnext.e.prev = prev && prev.e;\n\t}\n}\n"],"names":["index","_","i","pause_effects","state","items","controlled_anchor","items_map","transitions","length","pause_children","is_controlled","parent_node","clear_text_content","link","run_out_transitions","item","destroy_effect","each","node","flags","get_collection","get_key","render_fn","fallback_fn","anchor","EACH_IS_CONTROLLED","hydrating","set_hydrate_node","get_first_child","create_text","hydrate_next","fallback","was_empty","each_array","derived_safe_equal","collection","is_array","array_from","block","array","get","mismatch","is_else","read_hydration_instruction","HYDRATION_START_ELSE","remove_nodes","set_hydrating","prev","hydrate_node","COMMENT_NODE","HYDRATION_END","value","key","create_item","reconcile","resume_effect","branch","pause_effect","is_animated","EACH_IS_ANIMATED","should_update","EACH_ITEM_REACTIVE","EACH_INDEX_REACTIVE","first","current","seen","to_animate","matched","stashed","_a","child_anchor","update_item","INERT","_b","start","j","a","b","move","to_destroy","destroy_length","_c","_d","queue_micro_task","active_effect","type","internal_set","next","reactive","mutable","EACH_ITEM_IMMUTABLE","v","mutable_source","source","end","dest","next_node","get_next_sibling"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"each-BpYOD__c.js","sources":["../../../node_modules/.pnpm/svelte@5.34.8/node_modules/svelte/src/internal/client/dom/blocks/each.js"],"sourcesContent":["/** @import { EachItem, EachState, Effect, MaybeSource, Source, TemplateNode, TransitionManager, Value } from '#client' */\nimport {\n\tEACH_INDEX_REACTIVE,\n\tEACH_IS_ANIMATED,\n\tEACH_IS_CONTROLLED,\n\tEACH_ITEM_IMMUTABLE,\n\tEACH_ITEM_REACTIVE,\n\tHYDRATION_END,\n\tHYDRATION_START_ELSE\n} from '../../../../constants.js';\nimport {\n\thydrate_next,\n\thydrate_node,\n\thydrating,\n\tread_hydration_instruction,\n\tremove_nodes,\n\tset_hydrate_node,\n\tset_hydrating\n} from '../hydration.js';\nimport {\n\tclear_text_content,\n\tcreate_text,\n\tget_first_child,\n\tget_next_sibling\n} from '../operations.js';\nimport {\n\tblock,\n\tbranch,\n\tdestroy_effect,\n\trun_out_transitions,\n\tpause_children,\n\tpause_effect,\n\tresume_effect\n} from '../../reactivity/effects.js';\nimport { source, mutable_source, internal_set } from '../../reactivity/sources.js';\nimport { array_from, is_array } from '../../../shared/utils.js';\nimport { COMMENT_NODE, INERT } from '#client/constants';\nimport { queue_micro_task } from '../task.js';\nimport { active_effect, get } from '../../runtime.js';\nimport { DEV } from 'esm-env';\nimport { derived_safe_equal } from '../../reactivity/deriveds.js';\n\n/**\n * The row of a keyed each block that is currently updating. We track this\n * so that `animate:` directives have something to attach themselves to\n * @type {EachItem | null}\n */\nexport let current_each_item = null;\n\n/** @param {EachItem | null} item */\nexport function set_current_each_item(item) {\n\tcurrent_each_item = item;\n}\n\n/**\n * @param {any} _\n * @param {number} i\n */\nexport function index(_, i) {\n\treturn i;\n}\n\n/**\n * Pause multiple effects simultaneously, and coordinate their\n * subsequent destruction. Used in each blocks\n * @param {EachState} state\n * @param {EachItem[]} items\n * @param {null | Node} controlled_anchor\n * @param {Map<any, EachItem>} items_map\n */\nfunction pause_effects(state, items, controlled_anchor, items_map) {\n\t/** @type {TransitionManager[]} */\n\tvar transitions = [];\n\tvar length = items.length;\n\n\tfor (var i = 0; i < length; i++) {\n\t\tpause_children(items[i].e, transitions, true);\n\t}\n\n\tvar is_controlled = length > 0 && transitions.length === 0 && controlled_anchor !== null;\n\t// If we have a controlled anchor, it means that the each block is inside a single\n\t// DOM element, so we can apply a fast-path for clearing the contents of the element.\n\tif (is_controlled) {\n\t\tvar parent_node = /** @type {Element} */ (\n\t\t\t/** @type {Element} */ (controlled_anchor).parentNode\n\t\t);\n\t\tclear_text_content(parent_node);\n\t\tparent_node.append(/** @type {Element} */ (controlled_anchor));\n\t\titems_map.clear();\n\t\tlink(state, items[0].prev, items[length - 1].next);\n\t}\n\n\trun_out_transitions(transitions, () => {\n\t\tfor (var i = 0; i < length; i++) {\n\t\t\tvar item = items[i];\n\t\t\tif (!is_controlled) {\n\t\t\t\titems_map.delete(item.k);\n\t\t\t\tlink(state, item.prev, item.next);\n\t\t\t}\n\t\t\tdestroy_effect(item.e, !is_controlled);\n\t\t}\n\t});\n}\n\n/**\n * @template V\n * @param {Element | Comment} node The next sibling node, or the parent node if this is a 'controlled' block\n * @param {number} flags\n * @param {() => V[]} get_collection\n * @param {(value: V, index: number) => any} get_key\n * @param {(anchor: Node, item: MaybeSource<V>, index: MaybeSource<number>) => void} render_fn\n * @param {null | ((anchor: Node) => void)} fallback_fn\n * @returns {void}\n */\nexport function each(node, flags, get_collection, get_key, render_fn, fallback_fn = null) {\n\tvar anchor = node;\n\n\t/** @type {EachState} */\n\tvar state = { flags, items: new Map(), first: null };\n\n\tvar is_controlled = (flags & EACH_IS_CONTROLLED) !== 0;\n\n\tif (is_controlled) {\n\t\tvar parent_node = /** @type {Element} */ (node);\n\n\t\tanchor = hydrating\n\t\t\t? set_hydrate_node(/** @type {Comment | Text} */ (get_first_child(parent_node)))\n\t\t\t: parent_node.appendChild(create_text());\n\t}\n\n\tif (hydrating) {\n\t\thydrate_next();\n\t}\n\n\t/** @type {Effect | null} */\n\tvar fallback = null;\n\n\tvar was_empty = false;\n\n\t// TODO: ideally we could use derived for runes mode but because of the ability\n\t// to use a store which can be mutated, we can't do that here as mutating a store\n\t// will still result in the collection array being the same from the store\n\tvar each_array = derived_safe_equal(() => {\n\t\tvar collection = get_collection();\n\n\t\treturn is_array(collection) ? collection : collection == null ? [] : array_from(collection);\n\t});\n\n\tblock(() => {\n\t\tvar array = get(each_array);\n\t\tvar length = array.length;\n\n\t\tif (was_empty && length === 0) {\n\t\t\t// ignore updates if the array is empty,\n\t\t\t// and it already was empty on previous run\n\t\t\treturn;\n\t\t}\n\t\twas_empty = length === 0;\n\n\t\t/** `true` if there was a hydration mismatch. Needs to be a `let` or else it isn't treeshaken out */\n\t\tlet mismatch = false;\n\n\t\tif (hydrating) {\n\t\t\tvar is_else = read_hydration_instruction(anchor) === HYDRATION_START_ELSE;\n\n\t\t\tif (is_else !== (length === 0)) {\n\t\t\t\t// hydration mismatch — remove the server-rendered DOM and start over\n\t\t\t\tanchor = remove_nodes();\n\n\t\t\t\tset_hydrate_node(anchor);\n\t\t\t\tset_hydrating(false);\n\t\t\t\tmismatch = true;\n\t\t\t}\n\t\t}\n\n\t\t// this is separate to the previous block because `hydrating` might change\n\t\tif (hydrating) {\n\t\t\t/** @type {EachItem | null} */\n\t\t\tvar prev = null;\n\n\t\t\t/** @type {EachItem} */\n\t\t\tvar item;\n\n\t\t\tfor (var i = 0; i < length; i++) {\n\t\t\t\tif (\n\t\t\t\t\thydrate_node.nodeType === COMMENT_NODE &&\n\t\t\t\t\t/** @type {Comment} */ (hydrate_node).data === HYDRATION_END\n\t\t\t\t) {\n\t\t\t\t\t// The server rendered fewer items than expected,\n\t\t\t\t\t// so break out and continue appending non-hydrated items\n\t\t\t\t\tanchor = /** @type {Comment} */ (hydrate_node);\n\t\t\t\t\tmismatch = true;\n\t\t\t\t\tset_hydrating(false);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tvar value = array[i];\n\t\t\t\tvar key = get_key(value, i);\n\t\t\t\titem = create_item(\n\t\t\t\t\thydrate_node,\n\t\t\t\t\tstate,\n\t\t\t\t\tprev,\n\t\t\t\t\tnull,\n\t\t\t\t\tvalue,\n\t\t\t\t\tkey,\n\t\t\t\t\ti,\n\t\t\t\t\trender_fn,\n\t\t\t\t\tflags,\n\t\t\t\t\tget_collection\n\t\t\t\t);\n\t\t\t\tstate.items.set(key, item);\n\n\t\t\t\tprev = item;\n\t\t\t}\n\n\t\t\t// remove excess nodes\n\t\t\tif (length > 0) {\n\t\t\t\tset_hydrate_node(remove_nodes());\n\t\t\t}\n\t\t}\n\n\t\tif (!hydrating) {\n\t\t\treconcile(array, state, anchor, render_fn, flags, get_key, get_collection);\n\t\t}\n\n\t\tif (fallback_fn !== null) {\n\t\t\tif (length === 0) {\n\t\t\t\tif (fallback) {\n\t\t\t\t\tresume_effect(fallback);\n\t\t\t\t} else {\n\t\t\t\t\tfallback = branch(() => fallback_fn(anchor));\n\t\t\t\t}\n\t\t\t} else if (fallback !== null) {\n\t\t\t\tpause_effect(fallback, () => {\n\t\t\t\t\tfallback = null;\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tif (mismatch) {\n\t\t\t// continue in hydration mode\n\t\t\tset_hydrating(true);\n\t\t}\n\n\t\t// When we mount the each block for the first time, the collection won't be\n\t\t// connected to this effect as the effect hasn't finished running yet and its deps\n\t\t// won't be assigned. However, it's possible that when reconciling the each block\n\t\t// that a mutation occurred and it's made the collection MAYBE_DIRTY, so reading the\n\t\t// collection again can provide consistency to the reactive graph again as the deriveds\n\t\t// will now be `CLEAN`.\n\t\tget(each_array);\n\t});\n\n\tif (hydrating) {\n\t\tanchor = hydrate_node;\n\t}\n}\n\n/**\n * Add, remove, or reorder items output by an each block as its input changes\n * @template V\n * @param {Array<V>} array\n * @param {EachState} state\n * @param {Element | Comment | Text} anchor\n * @param {(anchor: Node, item: MaybeSource<V>, index: number | Source<number>, collection: () => V[]) => void} render_fn\n * @param {number} flags\n * @param {(value: V, index: number) => any} get_key\n * @param {() => V[]} get_collection\n * @returns {void}\n */\nfunction reconcile(array, state, anchor, render_fn, flags, get_key, get_collection) {\n\tvar is_animated = (flags & EACH_IS_ANIMATED) !== 0;\n\tvar should_update = (flags & (EACH_ITEM_REACTIVE | EACH_INDEX_REACTIVE)) !== 0;\n\n\tvar length = array.length;\n\tvar items = state.items;\n\tvar first = state.first;\n\tvar current = first;\n\n\t/** @type {undefined | Set<EachItem>} */\n\tvar seen;\n\n\t/** @type {EachItem | null} */\n\tvar prev = null;\n\n\t/** @type {undefined | Set<EachItem>} */\n\tvar to_animate;\n\n\t/** @type {EachItem[]} */\n\tvar matched = [];\n\n\t/** @type {EachItem[]} */\n\tvar stashed = [];\n\n\t/** @type {V} */\n\tvar value;\n\n\t/** @type {any} */\n\tvar key;\n\n\t/** @type {EachItem | undefined} */\n\tvar item;\n\n\t/** @type {number} */\n\tvar i;\n\n\tif (is_animated) {\n\t\tfor (i = 0; i < length; i += 1) {\n\t\t\tvalue = array[i];\n\t\t\tkey = get_key(value, i);\n\t\t\titem = items.get(key);\n\n\t\t\tif (item !== undefined) {\n\t\t\t\titem.a?.measure();\n\t\t\t\t(to_animate ??= new Set()).add(item);\n\t\t\t}\n\t\t}\n\t}\n\n\tfor (i = 0; i < length; i += 1) {\n\t\tvalue = array[i];\n\t\tkey = get_key(value, i);\n\t\titem = items.get(key);\n\n\t\tif (item === undefined) {\n\t\t\tvar child_anchor = current ? /** @type {TemplateNode} */ (current.e.nodes_start) : anchor;\n\n\t\t\tprev = create_item(\n\t\t\t\tchild_anchor,\n\t\t\t\tstate,\n\t\t\t\tprev,\n\t\t\t\tprev === null ? state.first : prev.next,\n\t\t\t\tvalue,\n\t\t\t\tkey,\n\t\t\t\ti,\n\t\t\t\trender_fn,\n\t\t\t\tflags,\n\t\t\t\tget_collection\n\t\t\t);\n\n\t\t\titems.set(key, prev);\n\n\t\t\tmatched = [];\n\t\t\tstashed = [];\n\n\t\t\tcurrent = prev.next;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (should_update) {\n\t\t\tupdate_item(item, value, i, flags);\n\t\t}\n\n\t\tif ((item.e.f & INERT) !== 0) {\n\t\t\tresume_effect(item.e);\n\t\t\tif (is_animated) {\n\t\t\t\titem.a?.unfix();\n\t\t\t\t(to_animate ??= new Set()).delete(item);\n\t\t\t}\n\t\t}\n\n\t\tif (item !== current) {\n\t\t\tif (seen !== undefined && seen.has(item)) {\n\t\t\t\tif (matched.length < stashed.length) {\n\t\t\t\t\t// more efficient to move later items to the front\n\t\t\t\t\tvar start = stashed[0];\n\t\t\t\t\tvar j;\n\n\t\t\t\t\tprev = start.prev;\n\n\t\t\t\t\tvar a = matched[0];\n\t\t\t\t\tvar b = matched[matched.length - 1];\n\n\t\t\t\t\tfor (j = 0; j < matched.length; j += 1) {\n\t\t\t\t\t\tmove(matched[j], start, anchor);\n\t\t\t\t\t}\n\n\t\t\t\t\tfor (j = 0; j < stashed.length; j += 1) {\n\t\t\t\t\t\tseen.delete(stashed[j]);\n\t\t\t\t\t}\n\n\t\t\t\t\tlink(state, a.prev, b.next);\n\t\t\t\t\tlink(state, prev, a);\n\t\t\t\t\tlink(state, b, start);\n\n\t\t\t\t\tcurrent = start;\n\t\t\t\t\tprev = b;\n\t\t\t\t\ti -= 1;\n\n\t\t\t\t\tmatched = [];\n\t\t\t\t\tstashed = [];\n\t\t\t\t} else {\n\t\t\t\t\t// more efficient to move earlier items to the back\n\t\t\t\t\tseen.delete(item);\n\t\t\t\t\tmove(item, current, anchor);\n\n\t\t\t\t\tlink(state, item.prev, item.next);\n\t\t\t\t\tlink(state, item, prev === null ? state.first : prev.next);\n\t\t\t\t\tlink(state, prev, item);\n\n\t\t\t\t\tprev = item;\n\t\t\t\t}\n\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tmatched = [];\n\t\t\tstashed = [];\n\n\t\t\twhile (current !== null && current.k !== key) {\n\t\t\t\t// If the each block isn't inert and an item has an effect that is already inert,\n\t\t\t\t// skip over adding it to our seen Set as the item is already being handled\n\t\t\t\tif ((current.e.f & INERT) === 0) {\n\t\t\t\t\t(seen ??= new Set()).add(current);\n\t\t\t\t}\n\t\t\t\tstashed.push(current);\n\t\t\t\tcurrent = current.next;\n\t\t\t}\n\n\t\t\tif (current === null) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\titem = current;\n\t\t}\n\n\t\tmatched.push(item);\n\t\tprev = item;\n\t\tcurrent = item.next;\n\t}\n\n\tif (current !== null || seen !== undefined) {\n\t\tvar to_destroy = seen === undefined ? [] : array_from(seen);\n\n\t\twhile (current !== null) {\n\t\t\t// If the each block isn't inert, then inert effects are currently outroing and will be removed once the transition is finished\n\t\t\tif ((current.e.f & INERT) === 0) {\n\t\t\t\tto_destroy.push(current);\n\t\t\t}\n\t\t\tcurrent = current.next;\n\t\t}\n\n\t\tvar destroy_length = to_destroy.length;\n\n\t\tif (destroy_length > 0) {\n\t\t\tvar controlled_anchor = (flags & EACH_IS_CONTROLLED) !== 0 && length === 0 ? anchor : null;\n\n\t\t\tif (is_animated) {\n\t\t\t\tfor (i = 0; i < destroy_length; i += 1) {\n\t\t\t\t\tto_destroy[i].a?.measure();\n\t\t\t\t}\n\n\t\t\t\tfor (i = 0; i < destroy_length; i += 1) {\n\t\t\t\t\tto_destroy[i].a?.fix();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tpause_effects(state, to_destroy, controlled_anchor, items);\n\t\t}\n\t}\n\n\tif (is_animated) {\n\t\tqueue_micro_task(() => {\n\t\t\tif (to_animate === undefined) return;\n\t\t\tfor (item of to_animate) {\n\t\t\t\titem.a?.apply();\n\t\t\t}\n\t\t});\n\t}\n\n\t/** @type {Effect} */ (active_effect).first = state.first && state.first.e;\n\t/** @type {Effect} */ (active_effect).last = prev && prev.e;\n}\n\n/**\n * @param {EachItem} item\n * @param {any} value\n * @param {number} index\n * @param {number} type\n * @returns {void}\n */\nfunction update_item(item, value, index, type) {\n\tif ((type & EACH_ITEM_REACTIVE) !== 0) {\n\t\tinternal_set(item.v, value);\n\t}\n\n\tif ((type & EACH_INDEX_REACTIVE) !== 0) {\n\t\tinternal_set(/** @type {Value<number>} */ (item.i), index);\n\t} else {\n\t\titem.i = index;\n\t}\n}\n\n/**\n * @template V\n * @param {Node} anchor\n * @param {EachState} state\n * @param {EachItem | null} prev\n * @param {EachItem | null} next\n * @param {V} value\n * @param {unknown} key\n * @param {number} index\n * @param {(anchor: Node, item: V | Source<V>, index: number | Value<number>, collection: () => V[]) => void} render_fn\n * @param {number} flags\n * @param {() => V[]} get_collection\n * @returns {EachItem}\n */\nfunction create_item(\n\tanchor,\n\tstate,\n\tprev,\n\tnext,\n\tvalue,\n\tkey,\n\tindex,\n\trender_fn,\n\tflags,\n\tget_collection\n) {\n\tvar previous_each_item = current_each_item;\n\tvar reactive = (flags & EACH_ITEM_REACTIVE) !== 0;\n\tvar mutable = (flags & EACH_ITEM_IMMUTABLE) === 0;\n\n\tvar v = reactive ? (mutable ? mutable_source(value, false, false) : source(value)) : value;\n\tvar i = (flags & EACH_INDEX_REACTIVE) === 0 ? index : source(index);\n\n\tif (DEV && reactive) {\n\t\t// For tracing purposes, we need to link the source signal we create with the\n\t\t// collection + index so that tracing works as intended\n\t\t/** @type {Value} */ (v).trace = () => {\n\t\t\tvar collection_index = typeof i === 'number' ? index : i.v;\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unused-expressions\n\t\t\tget_collection()[collection_index];\n\t\t};\n\t}\n\n\t/** @type {EachItem} */\n\tvar item = {\n\t\ti,\n\t\tv,\n\t\tk: key,\n\t\ta: null,\n\t\t// @ts-expect-error\n\t\te: null,\n\t\tprev,\n\t\tnext\n\t};\n\n\tcurrent_each_item = item;\n\n\ttry {\n\t\titem.e = branch(() => render_fn(anchor, v, i, get_collection), hydrating);\n\n\t\titem.e.prev = prev && prev.e;\n\t\titem.e.next = next && next.e;\n\n\t\tif (prev === null) {\n\t\t\tstate.first = item;\n\t\t} else {\n\t\t\tprev.next = item;\n\t\t\tprev.e.next = item.e;\n\t\t}\n\n\t\tif (next !== null) {\n\t\t\tnext.prev = item;\n\t\t\tnext.e.prev = item.e;\n\t\t}\n\n\t\treturn item;\n\t} finally {\n\t\tcurrent_each_item = previous_each_item;\n\t}\n}\n\n/**\n * @param {EachItem} item\n * @param {EachItem | null} next\n * @param {Text | Element | Comment} anchor\n */\nfunction move(item, next, anchor) {\n\tvar end = item.next ? /** @type {TemplateNode} */ (item.next.e.nodes_start) : anchor;\n\n\tvar dest = next ? /** @type {TemplateNode} */ (next.e.nodes_start) : anchor;\n\tvar node = /** @type {TemplateNode} */ (item.e.nodes_start);\n\n\twhile (node !== end) {\n\t\tvar next_node = /** @type {TemplateNode} */ (get_next_sibling(node));\n\t\tdest.before(node);\n\t\tnode = next_node;\n\t}\n}\n\n/**\n * @param {EachState} state\n * @param {EachItem | null} prev\n * @param {EachItem | null} next\n */\nfunction link(state, prev, next) {\n\tif (prev === null) {\n\t\tstate.first = next;\n\t} else {\n\t\tprev.next = next;\n\t\tprev.e.next = next && next.e;\n\t}\n\n\tif (next !== null) {\n\t\tnext.prev = prev;\n\t\tnext.e.prev = prev && prev.e;\n\t}\n}\n"],"names":["index","_","i","pause_effects","state","items","controlled_anchor","items_map","transitions","length","pause_children","is_controlled","parent_node","clear_text_content","link","run_out_transitions","item","destroy_effect","each","node","flags","get_collection","get_key","render_fn","fallback_fn","anchor","EACH_IS_CONTROLLED","hydrating","set_hydrate_node","get_first_child","create_text","hydrate_next","fallback","was_empty","each_array","derived_safe_equal","collection","is_array","array_from","block","array","get","mismatch","is_else","read_hydration_instruction","HYDRATION_START_ELSE","remove_nodes","set_hydrating","prev","hydrate_node","COMMENT_NODE","HYDRATION_END","value","key","create_item","reconcile","resume_effect","branch","pause_effect","is_animated","EACH_IS_ANIMATED","should_update","EACH_ITEM_REACTIVE","EACH_INDEX_REACTIVE","first","current","seen","to_animate","matched","stashed","_a","child_anchor","update_item","INERT","_b","start","j","a","b","move","to_destroy","destroy_length","_c","_d","queue_micro_task","active_effect","type","internal_set","next","reactive","mutable","EACH_ITEM_IMMUTABLE","v","mutable_source","source","end","dest","next_node","get_next_sibling"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
- import { D as u, h as d, a as l, a1 as g, b1 as y, g as h, ac as p, ae as b, ah as w, af as O, s as R, a5 as f } from "./index-By5ED3Yb.js";
2
- import { y as m, z as D } from "./legacy-DjyLhwW_.js";
1
+ import { D as u, h as d, a as l, a1 as g, b1 as y, g as h, ac as p, ae as b, ah as w, af as O, s as R, a5 as f } from "./index-CcnwLXwn.js";
2
+ import { y as m, z as D } from "./legacy-CiYmrjBI.js";
3
3
  function C(c, v, i = !1, _ = !1, E = !1) {
4
4
  var o = c, t = "";
5
5
  u(() => {
@@ -50,4 +50,4 @@ function C(c, v, i = !1, _ = !1, E = !1) {
50
50
  export {
51
51
  C as h
52
52
  };
53
- //# sourceMappingURL=html-nUzEbV7C.js.map
53
+ //# sourceMappingURL=html-BA2LZfEe.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"html-nUzEbV7C.js","sources":["../../../node_modules/.pnpm/svelte@5.34.8/node_modules/svelte/src/internal/client/dom/blocks/html.js"],"sourcesContent":["/** @import { Effect, TemplateNode } from '#client' */\nimport { FILENAME, HYDRATION_ERROR } from '../../../../constants.js';\nimport { remove_effect_dom, template_effect } from '../../reactivity/effects.js';\nimport { hydrate_next, hydrate_node, hydrating, set_hydrate_node } from '../hydration.js';\nimport { create_fragment_from_html } from '../reconciler.js';\nimport { assign_nodes } from '../template.js';\nimport * as w from '../../warnings.js';\nimport { hash, sanitize_location } from '../../../../utils.js';\nimport { DEV } from 'esm-env';\nimport { dev_current_component_function } from '../../context.js';\nimport { get_first_child, get_next_sibling } from '../operations.js';\nimport { active_effect } from '../../runtime.js';\nimport { COMMENT_NODE } from '#client/constants';\n\n/**\n * @param {Element} element\n * @param {string | null} server_hash\n * @param {string} value\n */\nfunction check_hash(element, server_hash, value) {\n\tif (!server_hash || server_hash === hash(String(value ?? ''))) return;\n\n\tlet location;\n\n\t// @ts-expect-error\n\tconst loc = element.__svelte_meta?.loc;\n\tif (loc) {\n\t\tlocation = `near ${loc.file}:${loc.line}:${loc.column}`;\n\t} else if (dev_current_component_function?.[FILENAME]) {\n\t\tlocation = `in ${dev_current_component_function[FILENAME]}`;\n\t}\n\n\tw.hydration_html_changed(sanitize_location(location));\n}\n\n/**\n * @param {Element | Text | Comment} node\n * @param {() => string} get_value\n * @param {boolean} [svg]\n * @param {boolean} [mathml]\n * @param {boolean} [skip_warning]\n * @returns {void}\n */\nexport function html(node, get_value, svg = false, mathml = false, skip_warning = false) {\n\tvar anchor = node;\n\n\tvar value = '';\n\n\ttemplate_effect(() => {\n\t\tvar effect = /** @type {Effect} */ (active_effect);\n\n\t\tif (value === (value = get_value() ?? '')) {\n\t\t\tif (hydrating) hydrate_next();\n\t\t\treturn;\n\t\t}\n\n\t\tif (effect.nodes_start !== null) {\n\t\t\tremove_effect_dom(effect.nodes_start, /** @type {TemplateNode} */ (effect.nodes_end));\n\t\t\teffect.nodes_start = effect.nodes_end = null;\n\t\t}\n\n\t\tif (value === '') return;\n\n\t\tif (hydrating) {\n\t\t\t// We're deliberately not trying to repair mismatches between server and client,\n\t\t\t// as it's costly and error-prone (and it's an edge case to have a mismatch anyway)\n\t\t\tvar hash = /** @type {Comment} */ (hydrate_node).data;\n\t\t\tvar next = hydrate_next();\n\t\t\tvar last = next;\n\n\t\t\twhile (\n\t\t\t\tnext !== null &&\n\t\t\t\t(next.nodeType !== COMMENT_NODE || /** @type {Comment} */ (next).data !== '')\n\t\t\t) {\n\t\t\t\tlast = next;\n\t\t\t\tnext = /** @type {TemplateNode} */ (get_next_sibling(next));\n\t\t\t}\n\n\t\t\tif (next === null) {\n\t\t\t\tw.hydration_mismatch();\n\t\t\t\tthrow HYDRATION_ERROR;\n\t\t\t}\n\n\t\t\tif (DEV && !skip_warning) {\n\t\t\t\tcheck_hash(/** @type {Element} */ (next.parentNode), hash, value);\n\t\t\t}\n\n\t\t\tassign_nodes(hydrate_node, last);\n\t\t\tanchor = set_hydrate_node(next);\n\t\t\treturn;\n\t\t}\n\n\t\tvar html = value + '';\n\t\tif (svg) html = `<svg>${html}</svg>`;\n\t\telse if (mathml) html = `<math>${html}</math>`;\n\n\t\t// Don't use create_fragment_with_script_from_html here because that would mean script tags are executed.\n\t\t// @html is basically `.innerHTML = ...` and that doesn't execute scripts either due to security reasons.\n\t\t/** @type {DocumentFragment | Element} */\n\t\tvar node = create_fragment_from_html(html);\n\n\t\tif (svg || mathml) {\n\t\t\tnode = /** @type {Element} */ (get_first_child(node));\n\t\t}\n\n\t\tassign_nodes(\n\t\t\t/** @type {TemplateNode} */ (get_first_child(node)),\n\t\t\t/** @type {TemplateNode} */ (node.lastChild)\n\t\t);\n\n\t\tif (svg || mathml) {\n\t\t\twhile (get_first_child(node)) {\n\t\t\t\tanchor.before(/** @type {Node} */ (get_first_child(node)));\n\t\t\t}\n\t\t} else {\n\t\t\tanchor.before(node);\n\t\t}\n\t});\n}\n"],"names":["html","node","get_value","svg","mathml","skip_warning","anchor","value","template_effect","effect","active_effect","hydrating","hydrate_next","remove_effect_dom","hydrate_node","next","last","COMMENT_NODE","get_next_sibling","w.hydration_mismatch","HYDRATION_ERROR","assign_nodes","set_hydrate_node","create_fragment_from_html","get_first_child"],"mappings":";;AA2CO,SAASA,EAAKC,GAAMC,GAAWC,IAAM,IAAOC,IAAS,IAAOC,IAAe,IAAO;AACxF,MAAIC,IAASL,GAETM,IAAQ;AAEZ,EAAAC,EAAgB,MAAM;AACrB,QAAIC;AAAA;AAAA,MAAgCC;AAAA;AAEpC,QAAIH,OAAWA,IAAQL,EAAW,KAAI,KAAK;AAC1C,MAAIS,KAAWC,EAAc;AAC7B;AAAA,IACH;AAOE,QALIH,EAAO,gBAAgB,SAC1BI;AAAA,MAAkBJ,EAAO;AAAA;AAAA,MAA0CA,EAAO;AAAA,IAAW,GACrFA,EAAO,cAAcA,EAAO,YAAY,OAGrCF,MAAU,IAEd;AAAA,UAAII,GAAW;AAGoB,QAACG,EAAc;AAIjD,iBAHIC,IAAOH,EAAc,GACrBI,IAAOD,GAGVA,MAAS,SACRA,EAAK,aAAaE;AAAA,QAAwCF,EAAM,SAAS;AAE1E,UAAAC,IAAOD,GACPA;AAAA,UAAoCG,EAAiBH,CAAI;AAG1D,YAAIA,MAAS;AACZI,gBAAAA,EAAsB,GAChBC;AAOP,QAAAC,EAAaP,GAAcE,CAAI,GAC/BV,IAASgB,EAAiBP,CAAI;AAC9B;AAAA,MACH;AAEE,UAAIf,IAAOO,IAAQ;AACnB,MAAIJ,IAAKH,IAAO,QAAQA,CAAI,WACnBI,MAAQJ,IAAO,SAASA,CAAI;AAKrC,UAAIC,IAAOsB,EAA0BvB,CAAI;AAWzC,WATIG,KAAOC,OACVH;AAAA,MAA+BuB,EAAgBvB,CAAI,IAGpDoB;AAAA;AAAA,QAC8BG,EAAgBvB,CAAI;AAAA;AAAA,QACpBA,EAAK;AAAA,MAClC,GAEGE,KAAOC;AACV,eAAOoB,EAAgBvB,CAAI;AAC1B,UAAAK,EAAO;AAAA;AAAA,YAA4BkB,EAAgBvB,CAAI;AAAA,UAAG;AAAA;AAG3D,QAAAK,EAAO,OAAOL,CAAI;AAAA;AAAA,EAErB,CAAE;AACF;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"html-BA2LZfEe.js","sources":["../../../node_modules/.pnpm/svelte@5.34.8/node_modules/svelte/src/internal/client/dom/blocks/html.js"],"sourcesContent":["/** @import { Effect, TemplateNode } from '#client' */\nimport { FILENAME, HYDRATION_ERROR } from '../../../../constants.js';\nimport { remove_effect_dom, template_effect } from '../../reactivity/effects.js';\nimport { hydrate_next, hydrate_node, hydrating, set_hydrate_node } from '../hydration.js';\nimport { create_fragment_from_html } from '../reconciler.js';\nimport { assign_nodes } from '../template.js';\nimport * as w from '../../warnings.js';\nimport { hash, sanitize_location } from '../../../../utils.js';\nimport { DEV } from 'esm-env';\nimport { dev_current_component_function } from '../../context.js';\nimport { get_first_child, get_next_sibling } from '../operations.js';\nimport { active_effect } from '../../runtime.js';\nimport { COMMENT_NODE } from '#client/constants';\n\n/**\n * @param {Element} element\n * @param {string | null} server_hash\n * @param {string} value\n */\nfunction check_hash(element, server_hash, value) {\n\tif (!server_hash || server_hash === hash(String(value ?? ''))) return;\n\n\tlet location;\n\n\t// @ts-expect-error\n\tconst loc = element.__svelte_meta?.loc;\n\tif (loc) {\n\t\tlocation = `near ${loc.file}:${loc.line}:${loc.column}`;\n\t} else if (dev_current_component_function?.[FILENAME]) {\n\t\tlocation = `in ${dev_current_component_function[FILENAME]}`;\n\t}\n\n\tw.hydration_html_changed(sanitize_location(location));\n}\n\n/**\n * @param {Element | Text | Comment} node\n * @param {() => string} get_value\n * @param {boolean} [svg]\n * @param {boolean} [mathml]\n * @param {boolean} [skip_warning]\n * @returns {void}\n */\nexport function html(node, get_value, svg = false, mathml = false, skip_warning = false) {\n\tvar anchor = node;\n\n\tvar value = '';\n\n\ttemplate_effect(() => {\n\t\tvar effect = /** @type {Effect} */ (active_effect);\n\n\t\tif (value === (value = get_value() ?? '')) {\n\t\t\tif (hydrating) hydrate_next();\n\t\t\treturn;\n\t\t}\n\n\t\tif (effect.nodes_start !== null) {\n\t\t\tremove_effect_dom(effect.nodes_start, /** @type {TemplateNode} */ (effect.nodes_end));\n\t\t\teffect.nodes_start = effect.nodes_end = null;\n\t\t}\n\n\t\tif (value === '') return;\n\n\t\tif (hydrating) {\n\t\t\t// We're deliberately not trying to repair mismatches between server and client,\n\t\t\t// as it's costly and error-prone (and it's an edge case to have a mismatch anyway)\n\t\t\tvar hash = /** @type {Comment} */ (hydrate_node).data;\n\t\t\tvar next = hydrate_next();\n\t\t\tvar last = next;\n\n\t\t\twhile (\n\t\t\t\tnext !== null &&\n\t\t\t\t(next.nodeType !== COMMENT_NODE || /** @type {Comment} */ (next).data !== '')\n\t\t\t) {\n\t\t\t\tlast = next;\n\t\t\t\tnext = /** @type {TemplateNode} */ (get_next_sibling(next));\n\t\t\t}\n\n\t\t\tif (next === null) {\n\t\t\t\tw.hydration_mismatch();\n\t\t\t\tthrow HYDRATION_ERROR;\n\t\t\t}\n\n\t\t\tif (DEV && !skip_warning) {\n\t\t\t\tcheck_hash(/** @type {Element} */ (next.parentNode), hash, value);\n\t\t\t}\n\n\t\t\tassign_nodes(hydrate_node, last);\n\t\t\tanchor = set_hydrate_node(next);\n\t\t\treturn;\n\t\t}\n\n\t\tvar html = value + '';\n\t\tif (svg) html = `<svg>${html}</svg>`;\n\t\telse if (mathml) html = `<math>${html}</math>`;\n\n\t\t// Don't use create_fragment_with_script_from_html here because that would mean script tags are executed.\n\t\t// @html is basically `.innerHTML = ...` and that doesn't execute scripts either due to security reasons.\n\t\t/** @type {DocumentFragment | Element} */\n\t\tvar node = create_fragment_from_html(html);\n\n\t\tif (svg || mathml) {\n\t\t\tnode = /** @type {Element} */ (get_first_child(node));\n\t\t}\n\n\t\tassign_nodes(\n\t\t\t/** @type {TemplateNode} */ (get_first_child(node)),\n\t\t\t/** @type {TemplateNode} */ (node.lastChild)\n\t\t);\n\n\t\tif (svg || mathml) {\n\t\t\twhile (get_first_child(node)) {\n\t\t\t\tanchor.before(/** @type {Node} */ (get_first_child(node)));\n\t\t\t}\n\t\t} else {\n\t\t\tanchor.before(node);\n\t\t}\n\t});\n}\n"],"names":["html","node","get_value","svg","mathml","skip_warning","anchor","value","template_effect","effect","active_effect","hydrating","hydrate_next","remove_effect_dom","hydrate_node","next","last","COMMENT_NODE","get_next_sibling","w.hydration_mismatch","HYDRATION_ERROR","assign_nodes","set_hydrate_node","create_fragment_from_html","get_first_child"],"mappings":";;AA2CO,SAASA,EAAKC,GAAMC,GAAWC,IAAM,IAAOC,IAAS,IAAOC,IAAe,IAAO;AACxF,MAAIC,IAASL,GAETM,IAAQ;AAEZ,EAAAC,EAAgB,MAAM;AACrB,QAAIC;AAAA;AAAA,MAAgCC;AAAA;AAEpC,QAAIH,OAAWA,IAAQL,EAAW,KAAI,KAAK;AAC1C,MAAIS,KAAWC,EAAc;AAC7B;AAAA,IACH;AAOE,QALIH,EAAO,gBAAgB,SAC1BI;AAAA,MAAkBJ,EAAO;AAAA;AAAA,MAA0CA,EAAO;AAAA,IAAW,GACrFA,EAAO,cAAcA,EAAO,YAAY,OAGrCF,MAAU,IAEd;AAAA,UAAII,GAAW;AAGoB,QAACG,EAAc;AAIjD,iBAHIC,IAAOH,EAAc,GACrBI,IAAOD,GAGVA,MAAS,SACRA,EAAK,aAAaE;AAAA,QAAwCF,EAAM,SAAS;AAE1E,UAAAC,IAAOD,GACPA;AAAA,UAAoCG,EAAiBH,CAAI;AAG1D,YAAIA,MAAS;AACZI,gBAAAA,EAAsB,GAChBC;AAOP,QAAAC,EAAaP,GAAcE,CAAI,GAC/BV,IAASgB,EAAiBP,CAAI;AAC9B;AAAA,MACH;AAEE,UAAIf,IAAOO,IAAQ;AACnB,MAAIJ,IAAKH,IAAO,QAAQA,CAAI,WACnBI,MAAQJ,IAAO,SAASA,CAAI;AAKrC,UAAIC,IAAOsB,EAA0BvB,CAAI;AAWzC,WATIG,KAAOC,OACVH;AAAA,MAA+BuB,EAAgBvB,CAAI,IAGpDoB;AAAA;AAAA,QAC8BG,EAAgBvB,CAAI;AAAA;AAAA,QACpBA,EAAK;AAAA,MAClC,GAEGE,KAAOC;AACV,eAAOoB,EAAgBvB,CAAI;AAC1B,UAAAK,EAAO;AAAA;AAAA,YAA4BkB,EAAgBvB,CAAI;AAAA,UAAG;AAAA;AAG3D,QAAAK,EAAO,OAAOL,CAAI;AAAA;AAAA,EAErB,CAAE;AACF;","x_google_ignoreList":[0]}