class InputHandler extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{calInput:'.elementor-field-textual',calDiv:'.elementor-field-type-text',form:'.elementor-form'},}} getDefaultElements(){const selectors=this.getSettings('selectors');return{$calInput:this.$element.find(selectors.calInput),$calDiv:this.$element.find(selectors.calDiv),$form:this.$element.find(selectors.form),}} bindEvents(){let elmWrapper=this.elements.$calDiv;let eleInput=jQuery(elmWrapper).find('input');if(eleInput.length===0)return;eleInput.each((index,input)=>{let maskClass,maskFormat,maskPrefix,maskDecimalPlaces,maskTimeMaskFormat,phoneFormat,creditCardOptions,maskAutoPlaceholder,brazilianFormats;input.classList.forEach(className=>{if(className.includes('mask_control_@'))maskClass=className;if(className.includes('money_mask_format_@'))maskFormat=className;if(className.includes('mask_prefix_@'))maskPrefix=className;if(className.includes('mask_decimal_places_@'))maskDecimalPlaces=className;if(className.includes('mask_time_mask_format_@'))maskTimeMaskFormat=className;if(className.includes('fme_phone_format_@'))phoneFormat=className;if(className.includes('credit_card_options_@'))creditCardOptions=className;if(className.includes('mask_auto_placeholder_@'))maskAutoPlaceholder=className;if(className.includes('fme_brazilian_formats_@'))brazilianFormats=className});if(maskClass)maskClass=maskClass.split('@');if(maskFormat)maskFormat=maskFormat.split('@');if(maskPrefix)maskPrefix=maskPrefix.split('@');if(maskDecimalPlaces)maskDecimalPlaces=maskDecimalPlaces.split('@');if(maskTimeMaskFormat)maskTimeMaskFormat=maskTimeMaskFormat.split('@');if(phoneFormat)phoneFormat=phoneFormat.split('@');if(creditCardOptions)creditCardOptions=creditCardOptions.split('@');if(maskAutoPlaceholder)maskAutoPlaceholder=maskAutoPlaceholder.split('@');if(brazilianFormats)brazilianFormats=brazilianFormats.split('@');if(!jQuery(input).data('mask')){input.setAttribute('data-input_mask',maskClass?.[1]||'')} input.setAttribute('data-moneymask-format',maskFormat?.[1]||'dot');input.setAttribute('data-moneymask-prefix',maskPrefix?.[1]||'');input.setAttribute('data-decimal-places',maskDecimalPlaces?.[1]||'2');input.setAttribute('data-timemask-format',maskTimeMaskFormat?.[1]||'one');input.setAttribute('data-phone-format',phoneFormat?.[1]||'phone_usa');input.setAttribute('data-creditcard-options',creditCardOptions?.[1]||'hyphen');input.setAttribute('data-auto-placeholder',maskAutoPlaceholder?.[1]||'');input.setAttribute('data-brazilian-formats',brazilianFormats?.[1]||'')});this.applyMasks()} applyMasks(){const masks={"ev-phone":"phone","ev-tel":"####-####","ev-tel-ddd":"(##) ####-####","ev-tel-ddd9":"(##) #####-####","ev-tel-us":"(###) ###-####","ev-cpf":"###.###.###-##","ev-cnpj":"##.###.###/####-##","ev-money":"###.###.###.###.###,##","ev-ccard":"####-####-####-####","ev-ccard-valid":"##/##","ev-cep":"#####-###","ev-time":"##:##:##","ev-date":"##/##/####","ev-date_time":"##/##/#### ##:##","ev-ip-address":"###.###.###.###","ev-br_fr":"brazilian_formats",};jQuery('input[data-input_mask]').each(function(){const $input=jQuery(this);const maskKey=jQuery(this)[0].dataset.input_mask;const timemaskFormat=jQuery(this)[0].dataset.timemaskFormat;const phoneFormat=jQuery(this)[0].dataset.phoneFormat;const creditcardOptions=jQuery(this)[0].dataset.creditcardOptions const autoPlaceholder=jQuery(this)[0].dataset.autoPlaceholder const brazilianFormats=jQuery(this)[0].dataset.brazilianFormats if(masks[maskKey]){if(masks[maskKey]==='phone'){$input.attr('inputmode','tel')}else{$input.attr('inputmode','numeric')} if(masks[maskKey]==='brazilian_formats'){switch(brazilianFormats){case 'fme_cpf':$input.addClass('mask-cpf');$input.after('
');if(autoPlaceholder==='yes'){$input.attr('placeholder','XXX.XXX.XXX-XX')} break;case 'fme_cnpj':$input.addClass('mask-cnpj');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX.XXX.XXX/XXXX-XX')} break;case 'fme_cep':$input.addClass('mask-cep');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XXXXX-XXX')} break;default:$input.addClass('mask-cpf');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XXX.XXX.XXX-XX')}}} if(masks[maskKey]==="##/##/####"){$input.addClass('mask-dmy');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX/XX/XXXX')}} if(masks[maskKey]==="##.###.###/####-##"){$input.addClass('mask-cnpj');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX.XXX.XXX/XXXX-XX')}} if(masks[maskKey]==="###.###.###-##"){$input.addClass('mask-cpf');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XXX.XXX.XXX-XX')}} if(masks[maskKey]==="#####-###"){$input.addClass('mask-cep');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XXXXX-XXX')}} if(masks[maskKey]==="(###) ###-####"){$input.addClass('mask-phus');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','(XXX) XXX-XXXX')}} if(masks[maskKey]==="phone"){switch(phoneFormat){case 'phone_usa':$input.addClass('mask-phus');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','(XXX) XXX-XXXX')} break;case 'phone_d8':$input.addClass('mask-ph8');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XXXX-XXXX')} break;case 'phone_ddd8':$input.addClass('mask-ddd8');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','(XX) XXXX-XXXX')} break;case 'phone_ddd9':$input.addClass('mask-ddd9');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','(XX) XXXXX-XXXX')} break;default:}} if(masks[maskKey]==="####-####"){$input.addClass('mask-ph8');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XXXX-XXXX')}} if(masks[maskKey]==="(##) ####-####"){$input.addClass('mask-ddd8');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','(XX) XXXX-XXXX')}} if(masks[maskKey]==="(##) #####-####"){$input.addClass('mask-ddd9');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','(XX) XXXXX-XXXX')}} if(masks[maskKey]==="##/##/####"){$input.addClass('mask-dmy');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX/XX/XXXX')}} if(masks[maskKey]==="##:##:##"){switch(timemaskFormat){case 'one':$input.addClass('mask-hm');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX:XX')} break;case 'two':$input.addClass('mask-hms');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX:XX:XX')} break;case 'three':$input.addClass('mask-dmy');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX/XX/XXXX')} break;case 'four':$input.addClass('mask-mdy');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX/XX/XXXX')} break;case 'five':$input.addClass('mask-dmyhm');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX/XX/XXXX XX:XX')} break;case 'six':$input.addClass('mask-mdyhm');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX/XX/XXXX XX:XX')} break;case 'seven':$input.addClass('mask-my');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX/XXXX')} break;default:$input.addClass('mask-hm');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX:XX')}}} if(masks[maskKey]==="##:##"){$input.addClass('mask-hm');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX:XX')}} if(masks[maskKey]==="##/##/#### ##:##"){$input.addClass('mask-dmyhm');$input.after('');if(autoPlaceholder==='yes'){$input.attr('placeholder','XX/XX/XXXX XX:XX')}} if(masks[maskKey]==="####-####-####-####"){switch(creditcardOptions){case 'space':$input.addClass('mask-ccs');$input.after('');const $errorDivCCS=$input.next('.error-ccs');if($errorDivCCS.next('.card-logo').length===0){$errorDivCCS.after('