(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[611],{8967:function(e,t,a){Promise.resolve().then(a.bind(a,750))},750:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return h}});var l,r,n=a(7437),s=a(2265);a(7677),(l=r||(r={})).FIXED="fijo",l.VARIABLE="variable",l.MIXT="mixto";var i=e=>{let{onChange:t}=e,[a,l]=(0,s.useState)(r.FIXED),i=e=>{l(e),t&&t(e)};return(0,n.jsxs)("div",{className:"flex justify-center bg-custom-aliceblue rounded-full font-bold py-2 mb-2",children:[(0,n.jsx)("button",{onClick:()=>i(r.FIXED),className:"w-1/3 flex items-center justify-center transition-all duration-500 mx-2 capitalize ".concat(a===r.FIXED?"bg-custom-darkpowderblue animate-fadeIn":"bg-custom-aliceblue animate-fadeOut"," rounded-full"),children:r.FIXED}),(0,n.jsx)("button",{onClick:()=>i(r.VARIABLE),className:"w-1/3 flex items-center justify-center transition-all duration-500 mx-2 capitalize ".concat(a===r.VARIABLE?"bg-custom-darkpowderblue animate-fadeIn":"bg-custom-aliceblue animate-fadeOut"," rounded-full"),children:r.VARIABLE}),(0,n.jsx)("button",{onClick:()=>i(r.MIXT),className:"w-1/3 flex items-center justify-center transition-all duration-500 mx-2 capitalize ".concat(a===r.MIXT?"bg-custom-darkpowderblue animate-fadeIn":"bg-custom-aliceblue animate-fadeOut"," rounded-full"),children:r.MIXT})]})},o=a(2001);let m={[r.FIXED]:[{label:"Inter\xe9s (%)",name:"interest",type:"number",min:.01,step:.01}],[r.VARIABLE]:[{label:"Diferencial",name:"differential",type:"number",min:.01,step:.01}],[r.MIXT]:[{label:"Duraci\xf3n Fija (a\xf1os)",name:"fixedDuration",type:"number",min:1,step:1},{label:"Inter\xe9s Fijo (%)",name:"fixedInterest",type:"number",min:.01,step:.01},{label:"Duraci\xf3n Variable (a\xf1os)",name:"variableDuration",type:"number",min:1,step:1},{label:"Diferencial",name:"variableDifferential",type:"number",min:.01,step:.01}]};var d=e=>{let{mortgageType:t,formData:a,setFormData:l,onSubmit:s}=e,i=m[t]||[],d=(e,t)=>{if("object"==typeof e&&null!==e){let{name:t,value:r}=e.target;l({...a,[t]:r})}else"string"==typeof e&&t&&l({...a,[t]:e})},c=!!(a.duration&&a.amount&&(t===r.FIXED?""!==a.interest.trim():t===r.VARIABLE?""!==a.differential.trim():t===r.MIXT&&""!==a.fixedDuration.trim()&&""!==a.fixedInterest.trim()&&""!==a.variableDuration.trim()&&""!==a.variableDifferential.trim()));return(0,n.jsx)("div",{children:t!==r.FIXED?(0,n.jsxs)("div",{className:"max-w-md mx-auto",children:[(0,n.jsx)("p",{className:"font-semibold mt-9 pt-4 text-center",children:"Estamos trabajando para que Avaluo pueda simular hipotecas variables y mixtas, y pronto estar\xe1n disponibles."}),(0,n.jsx)("p",{className:"font-semibold mt-9 pt-4 text-center",children:"Mientras tanto puedes utilizar el simulador de hipotecas fijas."})]}):(0,n.jsxs)("form",{onSubmit:e=>{e.preventDefault(),console.log("Form submitted:",a)},children:[(0,n.jsxs)("div",{className:"grid md:grid-cols-2 bg-custom-aliceblue shadow-md rounded-lg p-4 gap-4",children:[(0,n.jsxs)("div",{className:"flex flex-col",children:[(0,n.jsx)("label",{id:"lbl-simulator-form-duration",className:"font-bold mb-2",children:"Duraci\xf3n (a\xf1os):"}),(0,n.jsx)("input",{type:"number",name:"duration","aria-labelledby":"lbl-simulator-form-duration",value:a.duration,min:1,onChange:d,required:!0,className:"border border-gray-300 rounded px-3 py-2"})]}),(0,n.jsxs)("div",{className:"flex flex-col",children:[(0,n.jsx)("label",{id:"lbl-simulator-form-amount",className:"font-bold mb-2",children:"Cantidad (€):"}),(0,n.jsx)(o.ZP,{name:"amount","aria-labelledby":"lbl-simulator-form-amount",value:a.amount,onValueChange:e=>d(e,"amount"),suffix:"€",decimalSeparator:",",groupSeparator:".",allowDecimals:!1,allowNegativeValue:!1,maxLength:10,step:1e4,className:"border border-gray-300 rounded px-3 py-2"})]})]}),(0,n.jsx)("div",{className:"grid md:grid-cols-".concat(t===r.MIXT?"4":"1"," bg-custom-aliceblue shadow-md rounded-lg p-4 gap-4 mt-4"),children:i.map((e,t)=>(0,n.jsxs)("div",{className:"flex flex-col",children:[(0,n.jsxs)("label",{id:"lbl-simulator-form-".concat(e.name),className:"font-bold mb-2",children:[e.label,":"]}),(0,n.jsx)("input",{type:e.type,name:e.name,"aria-labelledby":"lbl-simulator-form-".concat(e.name),value:a[e.name],...null!=e.min?{min:e.min}:{},...null!=e.step?{step:e.step}:{},onChange:d,className:"border border-gray-300 rounded px-3 py-2"})]},t))}),(0,n.jsx)("div",{className:"flex justify-center mt-4",children:(0,n.jsx)("button",{type:"submit",disabled:!c,className:"font-bold py-2 px-4 rounded-lg transition-transform duration-300 ease-in-out ".concat(c?"bg-custom-darkpowderblue hover:bg-custom-darkpowderblue-dark":"bg-gray-400 cursor-not-allowed"),onClick:s,children:"Simular mi hipoteca"})})]})})};function c(e){return new Intl.NumberFormat("es-ES",{style:"decimal",minimumFractionDigits:2,maximumFractionDigits:2}).format(e)+"€"}var u=e=>{let{mortgageTotalAmount:t,mortgageRequestedAmount:a}=e;return(0,n.jsx)("div",{className:"bg-custom-darkgray w-full h-3 rounded-full overflow-hidden",children:(0,n.jsx)("div",{className:"bg-custom-darkpowderblue h-full",style:{width:"".concat(a/t*100,"%")}})})},x=e=>{var t;let{mortgageRequestedAmount:a,mortgageTotalAmount:l,mortgageMonthlyPayment:r}=e;return(0,n.jsxs)("div",{className:"flex flex-col justify-center items-center my-1",children:[(0,n.jsx)("h1",{className:"text-4xl font-bold mt-2 pt-1 mb-2 text-center",children:c(l)}),(0,n.jsx)("h2",{className:"mb-6 text-center font-semibold",children:"Importe total de tu hipoteca"}),(0,n.jsxs)("div",{className:"mb-4",children:[(0,n.jsxs)("p",{className:"text-center",children:["Donde"," ",(0,n.jsxs)("p",{className:"inline text-1xl font-bold text-custom-darkgray",children:[c(parseFloat((l-a).toFixed(2)))," ","(",(t=(l-a)/l*100,new Intl.NumberFormat("es-ES",{style:"decimal",minimumFractionDigits:2,maximumFractionDigits:2}).format(t)+"%"),")"]})," ","son intereses para la entidad financiera"]}),(0,n.jsx)(u,{mortgageTotalAmount:l,mortgageRequestedAmount:a})]}),(0,n.jsx)("h2",{className:"text-4xl font-bold mt-2 pt-1 mb-2 text-center",children:c(r)}),(0,n.jsx)("h3",{className:"mb-6 text-center font-semibold",children:"Importe de tu cuota mensual"})]})};function b(e){return parseFloat((e/100/12).toFixed(6))}function f(e,t,a){let l=12*t,r=b(a);return parseFloat(((1+r)**l*r/((1+r)**l-1)*e).toFixed(2))}var p=e=>{let{mortgageRequestedAmount:t,mortgageInterest:a,mortgageDuration:l}=e,r=function(e,t,a){let l=12*t,r=b(a),n=f(e,t,a),s=e,i=[];for(let e=1;e<=l;e++){let t=s*r,a=n-t;s-=a,i.push([e,n.toFixed(2),t.toFixed(2),a.toFixed(2),s>0?s.toFixed(2):"0.00"])}return i}(t,l,a),s=[e=>e,e=>c(e),e=>c(e),e=>c(e),e=>c(e)],i=r.map(e=>e.map((e,t)=>s[t](e)));return(0,n.jsx)("div",{className:"w-full overflow-x-auto",children:(0,n.jsxs)("table",{className:"min-w-full",children:[(0,n.jsx)("thead",{children:(0,n.jsx)("tr",{className:"bg-custom-darkpowderblue text-custom-grayer text-sm",children:["Mes","Importe","Intereses","Capital","Capital Restante"].map((e,t)=>(0,n.jsx)("th",{className:"py-3 px-3 text-center",children:e},t))})}),(0,n.jsx)("tbody",{className:"text-gray-600 text-sm font-light",children:i.map((e,t)=>(0,n.jsx)("tr",{className:"border-b border-gray-200 hover:bg-custom-aliceblue",children:e.map((e,t)=>(0,n.jsx)("td",{className:"py-3 px-3 text-xs text-center",children:e},t))},t))})]})})};function h(){let[e,t]=(0,s.useState)(r.FIXED),[a,l]=(0,s.useState)({duration:"",amount:"",interest:"",differential:"",fixedDuration:"",fixedInterest:"",variableDuration:"",variableDifferential:""}),[o,m]=(0,s.useState)(null);return(0,n.jsxs)("main",{className:"flex min-h-screen flex-col items-center gap-4 p-8",children:[(0,n.jsxs)("div",{className:"flex flex-col justify-center items-center my-9",children:[(0,n.jsx)("h1",{className:"text-4xl font-bold mt-9 pt-4 mb-2 text-center",children:"Minimiza la incertidumbre de tu hipoteca"}),(0,n.jsx)("h2",{className:"text-1xl font-bold text-center",children:"Simula tu hipoteca para saber cu\xe1nto te costar\xe1 y cual es la mejor estrategia para afrontarla."})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)(i,{onChange:e=>{t(e),m(null),console.log("Switch state changed to:",e)}}),(0,n.jsx)(d,{mortgageType:e,formData:a,setFormData:e=>{l(e)},onSubmit:()=>{var t;let l,n,s=parseFloat(a.amount);e===r.FIXED&&(t=n=f(parseFloat(a.amount),parseFloat(a.duration),parseFloat(a.interest)),l=parseFloat((12*parseFloat(a.duration)*t).toFixed(2))),m({mortgageRequestedAmount:s,mortgageTotalAmount:l,mortgageMonthlyPayment:n})}})]}),o&&(0,n.jsxs)("div",{className:"w-full",children:[(0,n.jsx)(x,{mortgageRequestedAmount:o.mortgageRequestedAmount,mortgageTotalAmount:o.mortgageTotalAmount,mortgageMonthlyPayment:o.mortgageMonthlyPayment}),(0,n.jsx)("div",{className:"w-full overflow-x-auto",children:(0,n.jsx)(p,{mortgageRequestedAmount:parseFloat(a.amount),mortgageDuration:parseFloat(a.duration),mortgageInterest:parseFloat(a.interest)})})]})]})}},7677:function(){}},function(e){e.O(0,[436,1,971,23,744],function(){return e(e.s=8967)}),_N_E=e.O()}]);