PageSourceSearch

https://sdvmeste.ru/wp-content/plugins/leyka/assets/js/public.js?ver=3.29.2

js sdvmeste.ru collected 2026-09-24 14:06:27 UTC 248,734 bytes, 3,183 lines download raw bytes

1/*!
2 * jQuery Cookie Plugin v1.4.1
3 * https://github.com/carhartl/jquery-cookie
4 *
5 * Copyright 2013 Klaus Hartl
6 * Released under the MIT license
7 */
8(function (factory) {
9	if (typeof define === 'function' && define.amd) {
10		// AMD
11		define(['jquery'], factory);
12	} else if (typeof exports === 'object') {
13		// CommonJS
14		factory(require('jquery'));
15	} else {
16		// Browser globals
17		factory(jQuery);
18	}
19}(function ($) {
20
21	var pluses = /\+/g;
22
23	function encode(s) {
24		return config.raw ? s : encodeURIComponent(s);
25	}
26
27	function decode(s) {
28		return config.raw ? s : decodeURIComponent(s);
29	}
30
31	function stringifyCookieValue(value) {
32		return encode(config.json ? JSON.stringify(value) : String(value));
33	}
34
35	function parseCookieValue(s) {
36		if (s.indexOf('"') === 0) {
37			// This is a quoted cookie as according to RFC2068, unescape...
38			s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
39		}
40
41		try {
42			// Replace server-side written pluses with spaces.
43			// If we can't decode the cookie, ignore it, it's unusable.
44			// If we can't parse the cookie, ignore it, it's unusable.
45			s = decodeURIComponent(s.replace(pluses, ' '));
46			return config.json ? JSON.parse(s) : s;
47		} catch(e) {}
48	}
49
50	function read(s, converter) {
51		var value = config.raw ? s : parseCookieValue(s);
52		return $.isFunction(converter) ? converter(value) : value;
53	}
54
55	var config = $.cookie = function (key, value, options) {
56
57		// Write
58
59		if (value !== undefined && !$.isFunction(value)) {
60			options = $.extend({}, config.defaults, options);
61
62			if (typeof options.expires === 'number') {
63				var days = options.expires, t = options.expires = new Date();
64				t.setTime(+t + days * 864e+5);
65			}
66
67			return (document.cookie = [
68				encode(key), '=', stringifyCookieValue(value),
69				options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
70				options.path    ? '; path=' + options.path : '',
71				options.domain  ? '; domain=' + options.domain : '',
72				options.secure  ? '; secure' : ''
73			].join(''));
74		}
75
76		// Read
77
78		var result = key ? undefined : {};
79
80		// To prevent the for loop in the first place assign an empty array
81		// in case there are no cookies at all. Also prevents odd result when
82		// calling $.cookie().
83		var cookies = document.cookie ? document.cookie.split('; ') : [];
84
85		for (var i = 0, l = cookies.length; i < l; i++) {
86			var parts = cookies[i].split('=');
87			var name = decode(parts.shift());
88			var cookie = parts.join('=');
89
90			if (key && key === name) {
91				// If second argument (value) is a function it's a converter...
92				result = read(cookie, value);
93				break;
94			}
95
96			// Prevent storing a cookie that we couldn't decode.
97			if (!key && (cookie = read(cookie)) !== undefined) {
98				result[name] = cookie;
99			}
100		}
101
102		return result;
103	};
104
105	config.defaults = {};
106
107	$.removeCookie = function (key, options) {
108		if ($.cookie(key) === undefined) {
109			return false;
110		}
111
112		// Must not alter options, thus extending a fresh object...
113		$.cookie(key, '', $.extend({}, options, { expires: -1 }));
114		return !$.cookie(key);
115	};
116
117}));
118
119/** Common utilities & tools */
120function is_email(value) {
121    return /^([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22))*\x40([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d))*$/.test(value);
122}
123
124function is_phone_number(value) {
125    return /^[0-9\+\-\. ]{10,}$/.test(value);
126}
127
128/** Validate the date string in DD.MM.YYYY format */
129function is_date(value) {
130    return /^[0-9]{2}\.[0-9]{2}\.[0-9]{4}$/.test(value);
131}
132
133function leyka_get_ajax_url() {
134    return typeof leyka != 'undefined' ? leyka.ajaxurl : typeof frontend != 'undefined' ? frontend.ajaxurl : '/';
135}
136
137//polyfill for unsupported Number.isInteger
138//https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isInteger
139Number.isInteger = Number.isInteger || function(value) {
140    return typeof value === "number" &&
141           isFinite(value) &&
142           Math.floor(value) === value;
143};
144
145/** @var e JS keyup/keydown event */
146function leyka_is_digit_key(e, numpad_allowed) {
147
148    if(typeof numpad_allowed == 'undefined') {
149        numpad_allowed = true;
150    } else {
151        numpad_allowed = !!numpad_allowed;
152    }
153
154    if( // Allowed special keys
155        e.keyCode === 46 || e.keyCode === 8 || e.keyCode === 9 || e.keyCode === 13 || // Backspace, delete, tab, enter
156        (e.keyCode === 65 && e.ctrlKey) || // Ctrl+A
157        (e.keyCode === 67 && e.ctrlKey) || // Ctrl+C
158        (e.keyCode >= 35 && e.keyCode <= 40) // Home, end, left, right, down, up
159    ) {
160        return true;
161    }
162
163    if(numpad_allowed) {
164        if( !e.shiftKey && e.keyCode >= 48 && e.keyCode <= 57 ) {
165            return true;
166        } else {
167            return e.keyCode >= 96 && e.keyCode <= 105;
168        }
169    } else {
170        return !(e.shiftKey || e.keyCode < 48 || e.keyCode > 57);
171    }
172
173}
174
175/** @var e JS keyup/keydown event */
176function leyka_is_special_key(e) {
177    return ( // Allowed special keys
178        e.keyCode === 46 || e.keyCode === 8 || e.keyCode === 9 || e.keyCode === 13 || // Backspace, delete, tab, enter
179        e.keyCode === 9 || // Tab
180        (e.keyCode === 65 && e.ctrlKey) || // Ctrl+A
181        (e.keyCode === 67 && e.ctrlKey) || // Ctrl+C
182        (e.keyCode >= 35 && e.keyCode <= 40) // Home, end, left, right, down, up
183    );
184}
185
186function leyka_validate_donor_name(name_string) {
187    return !name_string.match(/[!@#$%^&*()+=\[\]{};:"\\|,<>\/?]/);
188}
189
190function leyka_empty(mixed_var) {
191
192    var undefined,
193        empty_values = [undefined, null, false, 0, '', '0'];
194
195    for(var i = 0; i < empty_values.length; i++) {
196        if(mixed_var === empty_values[i]) {
197            return true;
198        }
199    }
200
201    if(typeof mixed_var === 'object') {
202
203        for(var key in mixed_var) {
204            if(mixed_var.hasOwnProperty(key)) {
205                return false;
206            }
207        }
208
209        return true;
210
211    }
212
213    return false;
214
215}
216
217/**
218 * Number.prototype.format(decimal_length, section_length, sections_delimiter, decimal_delimiter)
219 *
220 * @param decimal_length integer The length of decimal
221 * @param section_length integer length of whole part
222 * @param sections_delimiter mixed sections delimiter
223 * @param decimal_delimiter mixed decimal delimiter
224 */
225Number.prototype.format = function(decimal_length, section_length, sections_delimiter, decimal_delimiter) {
226
227    decimal_length = typeof decimal_length === 'undefined' ? 0 : parseInt(decimal_length);
228    section_length = typeof section_length === 'undefined' ? 3 : parseInt(section_length);
229    sections_delimiter = typeof sections_delimiter === 'undefined' ? ' ' : sections_delimiter;
230    decimal_delimiter = typeof decimal_delimiter === 'undefined' ? '.' : decimal_delimiter;
231
232    var re = '\\d(?=(\\d{' + (section_length || 3) + '})+' + (decimal_length > 0 ? '\\D' : '$') + ')',
233        num = this.toFixed(Math.max(0, ~~decimal_length));
234
235    return (decimal_delimiter ? num.replace('.', decimal_delimiter) : num).replace(new RegExp(re, 'g'), '$&' + (sections_delimiter || ','));
236
237};
238
239function leyka_translit(text) {
240
241    var chars = {"а" : "a", "б": "b", "в": "v", "г": "g", "д": "d", "е": "e", "ё": "yo", "ж": "zh", "з": "z",
242        "и": "i", "й": "j", "к": "k", "л": "l", "м": "m", "н": "n", "о": "o", "п": "p", "р": "r", "с": "s",
243        "т": "t", "у": "u", "ф": "f", "х": "kh", "ц": "cz", "ч": "ch", "ш": "sh", "щ": "shh", "ъ": "",
244        "ы": "y", "ь": "", "э": "e", "ю": "yu", "я": "ya", "А": "A", "Б": "B", "В": "V", "Г": "G",
245        "Д": "D", "Е": "E", "Ё": "Yo", "Ж": "Zh", "З": "Z", "И": "I", "Й": "J", "К": "K", "Л": "L",
246        "М": "M", "Н": "N", "О": "O", "П": "P", "Р": "R", "С": "S", "Т": "T", "У": "U", "Ф": "F",
247        "Х": "Kh", "Ц": "Cz","Ч": "Ch","Ш": "Sh", "Щ": "Shh", "Ъ": "", "Ы": "Y", "Ь": "", "Э": "E",
248        "Ю": "Yu", "Я": "Ya"};
249
250    return text
251        .split('')
252        .map((char) => { return chars[char.toString()] || char; })
253        .join('');
254
255}
256/*!
257 * dist/jquery.inputmask.min
258 * https://github.com/RobinHerbots/Inputmask
259 * Copyright (c) 2010 - 2021 Robin Herbots
260 * Licensed under the MIT license
261 * Version: 5.0.6-beta.40
262 */
263!function webpackUniversalModuleDefinition(root,factory){if("object"==typeof exports&&"object"==typeof module)module.exports=factory(require("jquery"));else if("function"==typeof define&&define.amd)define(["jquery"],factory);else{var a="object"==typeof exports?factory(require("jquery")):factory(root.jQuery);for(var i in a)("object"==typeof exports?exports:root)[i]=a[i]}}(this,function(__WEBPACK_EXTERNAL_MODULE__10__){return modules=[function(module){module.exports=JSON.parse('{"BACKSPACE":8,"BACKSPACE_SAFARI":127,"DELETE":46,"DOWN":40,"END":35,"ENTER":13,"ESCAPE":27,"HOME":36,"INSERT":45,"LEFT":37,"PAGE_DOWN":34,"PAGE_UP":33,"RIGHT":39,"SPACE":32,"TAB":9,"UP":38,"X":88,"CONTROL":17,"KEY_229":229}')},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.caret=caret,exports.determineLastRequiredPosition=determineLastRequiredPosition,exports.determineNewCaretPosition=determineNewCaretPosition,exports.getBuffer=getBuffer,exports.getBufferTemplate=getBufferTemplate,exports.getLastValidPosition=getLastValidPosition,exports.isMask=isMask,exports.resetMaskSet=resetMaskSet,exports.seekNext=seekNext,exports.seekPrevious=seekPrevious,exports.translatePosition=translatePosition;var _validationTests=__webpack_require__(3),_validation=__webpack_require__(4);function caret(input,begin,end,notranslate,isDelete){var inputmask=this,opts=this.opts,range;if(void 0===begin)return"selectionStart"in input&&"selectionEnd"in input?(begin=input.selectionStart,end=input.selectionEnd):window.getSelection?(range=window.getSelection().getRangeAt(0),range.commonAncestorContainer.parentNode!==input&&range.commonAncestorContainer!==input||(begin=range.startOffset,end=range.endOffset)):document.selection&&document.selection.createRange&&(range=document.selection.createRange(),begin=0-range.duplicate().moveStart("character",-input.inputmask._valueGet().length),end=begin+range.text.length),{begin:notranslate?begin:translatePosition.call(this,begin),end:notranslate?end:translatePosition.call(this,end)};if(Array.isArray(begin)&&(end=this.isRTL?begin[0]:begin[1],begin=this.isRTL?begin[1]:begin[0]),void 0!==begin.begin&&(end=this.isRTL?begin.begin:begin.end,begin=this.isRTL?begin.end:begin.begin),"number"==typeof begin){begin=notranslate?begin:translatePosition.call(this,begin),end=notranslate?end:translatePosition.call(this,end),end="number"==typeof end?end:begin;var scrollCalc=parseInt(((input.ownerDocument.defaultView||window).getComputedStyle?(input.ownerDocument.defaultView||window).getComputedStyle(input,null):input.currentStyle).fontSize)*end;if(input.scrollLeft=scrollCalc>input.scrollWidth?scrollCalc:0,input.inputmask.caretPos={begin:begin,end:end},opts.insertModeVisual&&!1===opts.insertMode&&begin===end&&(isDelete||end++),input===(input.inputmask.shadowRoot||input.ownerDocument).activeElement)if("setSelectionRange"in input)input.setSelectionRange(begin,end);else if(window.getSelection){if(range=document.createRange(),void 0===input.firstChild||null===input.firstChild){var textNode=document.createTextNode("");input.appendChild(textNode)}range.setStart(input.firstChild,begin<input.inputmask._valueGet().length?begin:input.inputmask._valueGet().length),range.setEnd(input.firstChild,end<input.inputmask._valueGet().length?end:input.inputmask._valueGet().length),range.collapse(!0);var sel=window.getSelection();sel.removeAllRanges(),sel.addRange(range)}else input.createTextRange&&(range=input.createTextRange(),range.collapse(!0),range.moveEnd("character",end),range.moveStart("character",begin),range.select())}}function determineLastRequiredPosition(returnDefinition){var inputmask=this,maskset=this.maskset,$=this.dependencyLib,buffer=_validationTests.getMaskTemplate.call(this,!0,getLastValidPosition.call(this),!0,!0),bl=buffer.length,pos,lvp=getLastValidPosition.call(this),positions={},lvTest=maskset.validPositions[lvp],ndxIntlzr=void 0!==lvTest?lvTest.locator.slice():void 0,testPos;for(pos=lvp+1;pos<buffer.length;pos++)testPos=_validationTests.getTestTemplate.call(this,pos,ndxIntlzr,pos-1),ndxIntlzr=testPos.locator.slice(),positions[pos]=$.extend(!0,{},testPos);var lvTestAlt=lvTest&&void 0!==lvTest.alternation?lvTest.locator[lvTest.alternation]:void 0;for(pos=bl-1;lvp<pos&&(testPos=positions[pos],(testPos.match.optionality||testPos.match.optionalQuantifier&&testPos.match.newBlockMarker||lvTestAlt&&(lvTestAlt!==positions[pos].locator[lvTest.alternation]&&1!=testPos.match.static||!0===testPos.match.static&&testPos.locator[lvTest.alternation]&&_validation.checkAlternationMatch.call(this,testPos.locator[lvTest.alternation].toString().split(","),lvTestAlt.toString().split(","))&&""!==_validationTests.getTests.call(this,pos)[0].def))&&buffer[pos]===_validationTests.getPlaceholder.call(this,pos,testPos.match));pos--)bl--;return returnDefinition?{l:bl,def:positions[bl]?positions[bl].match:void 0}:bl}function determineNewCaretPosition(selectedCaret,tabbed,positionCaretOnClick){var inputmask=this,maskset=this.maskset,opts=this.opts;function doRadixFocus(clickPos){if(""!==opts.radixPoint&&0!==opts.digits){var vps=maskset.validPositions;if(void 0===vps[clickPos]||vps[clickPos].input===_validationTests.getPlaceholder.call(inputmask,clickPos)){if(clickPos<seekNext.call(inputmask,-1))return!0;var radixPos=getBuffer.call(inputmask).indexOf(opts.radixPoint);if(-1!==radixPos){for(var vp in vps)if(vps[vp]&&radixPos<vp&&vps[vp].input!==_validationTests.getPlaceholder.call(inputmask,vp))return!1;return!0}}}return!1}if(tabbed&&(inputmask.isRTL?selectedCaret.end=selectedCaret.begin:selectedCaret.begin=selectedCaret.end),selectedCaret.begin===selectedCaret.end){switch(positionCaretOnClick=positionCaretOnClick||opts.positionCaretOnClick,positionCaretOnClick){case"none":break;case"select":selectedCaret={begin:0,end:getBuffer.call(inputmask).length};break;case"ignore":selectedCaret.end=selectedCaret.begin=seekNext.call(inputmask,getLastValidPosition.call(inputmask));break;case"radixFocus":if(doRadixFocus(selectedCaret.begin)){var radixPos=getBuffer.call(inputmask).join("").indexOf(opts.radixPoint);selectedCaret.end=selectedCaret.begin=opts.numericInput?seekNext.call(inputmask,radixPos):radixPos;break}default:var clickPosition=selectedCaret.begin,lvclickPosition=getLastValidPosition.call(inputmask,clickPosition,!0),lastPosition=seekNext.call(inputmask,-1!==lvclickPosition||isMask.call(inputmask,0)?lvclickPosition:-1);if(clickPosition<=lastPosition)selectedCaret.end=selectedCaret.begin=isMask.call(inputmask,clickPosition,!1,!0)?clickPosition:seekNext.call(inputmask,clickPosition);else{var lvp=maskset.validPositions[lvclickPosition],tt=_validationTests.getTestTemplate.call(inputmask,lastPosition,lvp?lvp.match.locator:void 0,lvp),placeholder=_validationTests.getPlaceholder.call(inputmask,lastPosition,tt.match);if(""!==placeholder&&getBuffer.call(inputmask)[lastPosition]!==placeholder&&!0!==tt.match.optionalQuantifier&&!0!==tt.match.newBlockMarker||!isMask.call(inputmask,lastPosition,opts.keepStatic,!0)&&tt.match.def===placeholder){var newPos=seekNext.call(inputmask,lastPosition);(newPos<=clickPosition||clickPosition===lastPosition)&&(lastPosition=newPos)}selectedCaret.end=selectedCaret.begin=lastPosition}}return selectedCaret}}function getBuffer(noCache){var inputmask=this,maskset=this.maskset;return void 0!==maskset.buffer&&!0!==noCache||(maskset.buffer=_validationTests.getMaskTemplate.call(this,!0,getLastValidPosition.call(this),!0),void 0===maskset._buffer&&(maskset._buffer=maskset.buffer.slice())),maskset.buffer}function getBufferTemplate(){var inputmask=this,maskset=this.maskset;return void 0===maskset._buffer&&(maskset._buffer=_validationTests.getMaskTemplate.call(this,!1,1),void 0===maskset.buffer&&(maskset.buffer=maskset._buffer.slice())),maskset._buffer}function getLastValidPosition(closestTo,strict,validPositions){var maskset=this.maskset,before=-1,after=-1,valids=validPositions||maskset.validPositions;
263for(var posNdx in void 0===closestTo&&(closestTo=-1),valids){var psNdx=parseInt(posNdx);valids[psNdx]&&(strict||!0!==valids[psNdx].generatedInput)&&(psNdx<=closestTo&&(before=psNdx),closestTo<=psNdx&&(after=psNdx))}return-1===before||before==closestTo?after:-1==after?before:closestTo-before<after-closestTo?before:after}function isMask(pos,strict,fuzzy){var inputmask=this,maskset=this.maskset,test=_validationTests.getTestTemplate.call(this,pos).match;if(""===test.def&&(test=_validationTests.getTest.call(this,pos).match),!0!==test.static)return test.fn;if(!0===fuzzy&&void 0!==maskset.validPositions[pos]&&!0!==maskset.validPositions[pos].generatedInput)return!0;if(!0!==strict&&-1<pos){if(fuzzy){var tests=_validationTests.getTests.call(this,pos);return tests.length>1+(""===tests[tests.length-1].match.def?1:0)}var testTemplate=_validationTests.determineTestTemplate.call(this,pos,_validationTests.getTests.call(this,pos)),testPlaceHolder=_validationTests.getPlaceholder.call(this,pos,testTemplate.match);return testTemplate.match.def!==testPlaceHolder}return!1}function resetMaskSet(soft){var maskset=this.maskset;maskset.buffer=void 0,!0!==soft&&(maskset.validPositions={},maskset.p=0)}function seekNext(pos,newBlock,fuzzy){var inputmask=this;void 0===fuzzy&&(fuzzy=!0);for(var position=pos+1;""!==_validationTests.getTest.call(this,position).match.def&&(!0===newBlock&&(!0!==_validationTests.getTest.call(this,position).match.newBlockMarker||!isMask.call(this,position,void 0,!0))||!0!==newBlock&&!isMask.call(this,position,void 0,fuzzy));)position++;return position}function seekPrevious(pos,newBlock){var inputmask=this,position=pos-1;if(pos<=0)return 0;for(;0<position&&(!0===newBlock&&(!0!==_validationTests.getTest.call(this,position).match.newBlockMarker||!isMask.call(this,position,void 0,!0))||!0!==newBlock&&!isMask.call(this,position,void 0,!0));)position--;return position}function translatePosition(pos){var inputmask=this,opts=this.opts,el=this.el;return!this.isRTL||"number"!=typeof pos||opts.greedy&&""===opts.placeholder||!el||(pos=Math.abs(this._valueGet().length-pos)),pos}},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,__webpack_require__(16),__webpack_require__(17);var _mask=__webpack_require__(18),_inputmask=_interopRequireDefault(__webpack_require__(12)),_window=_interopRequireDefault(__webpack_require__(8)),_maskLexer=__webpack_require__(19),_validationTests=__webpack_require__(3),_positioning=__webpack_require__(1),_validation=__webpack_require__(4),_inputHandling=__webpack_require__(5),_eventruler=__webpack_require__(11),_definitions=_interopRequireDefault(__webpack_require__(21)),_defaults=_interopRequireDefault(__webpack_require__(22)),_canUseDOM=_interopRequireDefault(__webpack_require__(9));function _typeof(obj){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function _typeof(obj){return typeof obj}:function _typeof(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj},_typeof(obj)}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var document=_window.default.document,dataKey="_inputmask_opts";function Inputmask(alias,options,internal){if(_canUseDOM.default){if(!(this instanceof Inputmask))return new Inputmask(alias,options,internal);this.dependencyLib=_inputmask.default,this.el=void 0,this.events={},this.maskset=void 0,!0!==internal&&("[object Object]"===Object.prototype.toString.call(alias)?options=alias:(options=options||{},alias&&(options.alias=alias)),this.opts=_inputmask.default.extend(!0,{},this.defaults,options),this.noMasksCache=options&&void 0!==options.definitions,this.userOptions=options||{},resolveAlias(this.opts.alias,options,this.opts)),this.refreshValue=!1,this.undoValue=void 0,this.$el=void 0,this.skipKeyPressEvent=!1,this.skipInputEvent=!1,this.validationEvent=!1,this.ignorable=!1,this.maxLength,this.mouseEnter=!1,this.originalPlaceholder=void 0,this.isComposing=!1}}function resolveAlias(aliasStr,options,opts){var aliasDefinition=Inputmask.prototype.aliases[aliasStr];return aliasDefinition?(aliasDefinition.alias&&resolveAlias(aliasDefinition.alias,void 0,opts),_inputmask.default.extend(!0,opts,aliasDefinition),_inputmask.default.extend(!0,opts,options),!0):(null===opts.mask&&(opts.mask=aliasStr),!1)}function importAttributeOptions(npt,opts,userOptions,dataAttribute){function importOption(option,optionData){var attrOption=""===dataAttribute?option:dataAttribute+"-"+
263option;optionData=void 0!==optionData?optionData:npt.getAttribute(attrOption),null!==optionData&&("string"==typeof optionData&&(0===option.indexOf("on")?optionData=_window.default[optionData]:"false"===optionData?optionData=!1:"true"===optionData&&(optionData=!0)),userOptions[option]=optionData)}if(!0===opts.importDataAttributes){var attrOptions=npt.getAttribute(dataAttribute),option,dataoptions,optionData,p;if(attrOptions&&""!==attrOptions&&(attrOptions=attrOptions.replace(/'/g,'"'),dataoptions=JSON.parse("{"+attrOptions+"}")),dataoptions)for(p in optionData=void 0,dataoptions)if("alias"===p.toLowerCase()){optionData=dataoptions[p];break}for(option in importOption("alias",optionData),userOptions.alias&&resolveAlias(userOptions.alias,userOptions,opts),opts){if(dataoptions)for(p in optionData=void 0,dataoptions)if(p.toLowerCase()===option.toLowerCase()){optionData=dataoptions[p];break}importOption(option,optionData)}}return _inputmask.default.extend(!0,opts,userOptions),"rtl"!==npt.dir&&!opts.rightAlign||(npt.style.textAlign="right"),"rtl"!==npt.dir&&!opts.numericInput||(npt.dir="ltr",npt.removeAttribute("dir"),opts.isRTL=!0),Object.keys(userOptions).length}Inputmask.prototype={dataAttribute:"data-inputmask",defaults:_defaults.default,definitions:_definitions.default,aliases:{},masksCache:{},get isRTL(){return this.opts.isRTL||this.opts.numericInput},mask:function mask(elems){var that=this;return"string"==typeof elems&&(elems=document.getElementById(elems)||document.querySelectorAll(elems)),elems=elems.nodeName?[elems]:Array.isArray(elems)?elems:Array.from(elems),elems.forEach(function(el,ndx){var scopedOpts=_inputmask.default.extend(!0,{},that.opts);if(importAttributeOptions(el,scopedOpts,_inputmask.default.extend(!0,{},that.userOptions),that.dataAttribute)){var maskset=(0,_maskLexer.generateMaskSet)(scopedOpts,that.noMasksCache);void 0!==maskset&&(void 0!==el.inputmask&&(el.inputmask.opts.autoUnmask=!0,el.inputmask.remove()),el.inputmask=new Inputmask(void 0,void 0,!0),el.inputmask.opts=scopedOpts,el.inputmask.noMasksCache=that.noMasksCache,el.inputmask.userOptions=_inputmask.default.extend(!0,{},that.userOptions),el.inputmask.el=el,el.inputmask.$el=(0,_inputmask.default)(el),el.inputmask.maskset=maskset,_inputmask.default.data(el,dataKey,that.userOptions),_mask.mask.call(el.inputmask))}}),elems&&elems[0]&&elems[0].inputmask||this},option:function option(options,noremask){return"string"==typeof options?this.opts[options]:"object"===_typeof(options)?(_inputmask.default.extend(this.userOptions,options),this.el&&!0!==noremask&&this.mask(this.el),this):void 0},unmaskedvalue:function unmaskedvalue(value){if(this.maskset=this.maskset||(0,_maskLexer.generateMaskSet)(this.opts,this.noMasksCache),void 0===this.el||void 0!==value){var valueBuffer=("function"==typeof this.opts.onBeforeMask&&this.opts.onBeforeMask.call(this,value,this.opts)||value).split("");_inputHandling.checkVal.call(this,void 0,!1,!1,valueBuffer),"function"==typeof this.opts.onBeforeWrite&&this.opts.onBeforeWrite.call(this,void 0,_positioning.getBuffer.call(this),0,this.opts)}return _inputHandling.unmaskedvalue.call(this,this.el)},remove:function remove(){if(this.el){_inputmask.default.data(this.el,dataKey,null);var cv=this.opts.autoUnmask?(0,_inputHandling.unmaskedvalue)(this.el):this._valueGet(this.opts.autoUnmask),valueProperty;cv!==_positioning.getBufferTemplate.call(this).join("")?this._valueSet(cv,this.opts.autoUnmask):this._valueSet(""),_eventruler.EventRuler.off(this.el),Object.getOwnPropertyDescriptor&&Object.getPrototypeOf?(valueProperty=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(this.el),"value"),valueProperty&&this.__valueGet&&Object.defineProperty(this.el,"value",{get:this.__valueGet,set:this.__valueSet,configurable:!0})):document.__lookupGetter__&&this.el.__lookupGetter__("value")&&this.__valueGet&&(this.el.__defineGetter__("value",this.__valueGet),this.el.__defineSetter__("value",this.__valueSet)),this.el.inputmask=void 0}return this.el},getemptymask:function getemptymask(){return this.maskset=this.maskset||(0,_maskLexer.generateMaskSet)(this.opts,this.noMasksCache),_positioning.getBufferTemplate.call(this).join("")},hasMaskedValue:function hasMaskedValue(){return!this.opts.autoUnmask},isComplete:function isComplete(){return this.maskset=this.maskset||(0,_maskLexer.generateMaskSet)(this.opts,this.noMasksCache),_validation.isComplete.call(this,_positioning.getBuffer.call(this))},getmetadata:function getmetadata(){if(this.maskset=this.maskset||(0,_maskLexer.generateMaskSet)(this.opts,this.noMasksCache),Array.isArray(this.maskset.metadata)){var maskTarget=_validationTests.getMaskTemplate.call(this,!0,0,!1).join("");return this.maskset.metadata.forEach(function(mtdt){return mtdt.mask!==maskTarget||(maskTarget=mtdt,!1)}),maskTarget}return this.maskset.metadata},isValid:function isValid(value){if(this.maskset=this.maskset||(0,_maskLexer.generateMaskSet)(this.opts,this.noMasksCache),value){var valueBuffer=("function"==typeof this.opts.onBeforeMask&&this.opts.onBeforeMask.call(this,value,this.opts)||value).split("");_inputHandling.checkVal.call(this,void 0,!0,!1,valueBuffer)}else value=this.isRTL?_positioning.getBuffer.call(this).slice().reverse().join(""):_positioning.getBuffer.call(this).join("");for(var buffer=_positioning.getBuffer.call(this),rl=_positioning.determineLastRequiredPosition.call(this),lmib=buffer.length-1;
263rl<lmib&&!_positioning.isMask.call(this,lmib);lmib--);return buffer.splice(rl,lmib+1-rl),_validation.isComplete.call(this,buffer)&&value===(this.isRTL?_positioning.getBuffer.call(this).slice().reverse().join(""):_positioning.getBuffer.call(this).join(""))},format:function format(value,metadata){this.maskset=this.maskset||(0,_maskLexer.generateMaskSet)(this.opts,this.noMasksCache);var valueBuffer=("function"==typeof this.opts.onBeforeMask&&this.opts.onBeforeMask.call(this,value,this.opts)||value).split("");_inputHandling.checkVal.call(this,void 0,!0,!1,valueBuffer);var formattedValue=this.isRTL?_positioning.getBuffer.call(this).slice().reverse().join(""):_positioning.getBuffer.call(this).join("");return metadata?{value:formattedValue,metadata:this.getmetadata()}:formattedValue},setValue:function setValue(value){this.el&&(0,_inputmask.default)(this.el).trigger("setvalue",[value])},analyseMask:_maskLexer.analyseMask},Inputmask.extendDefaults=function(options){_inputmask.default.extend(!0,Inputmask.prototype.defaults,options)},Inputmask.extendDefinitions=function(definition){_inputmask.default.extend(!0,Inputmask.prototype.definitions,definition)},Inputmask.extendAliases=function(alias){_inputmask.default.extend(!0,Inputmask.prototype.aliases,alias)},Inputmask.format=function(value,options,metadata){return Inputmask(options).format(value,metadata)},Inputmask.unmask=function(value,options){return Inputmask(options).unmaskedvalue(value)},Inputmask.isValid=function(value,options){return Inputmask(options).isValid(value)},Inputmask.remove=function(elems){"string"==typeof elems&&(elems=document.getElementById(elems)||document.querySelectorAll(elems)),elems=elems.nodeName?[elems]:elems,elems.forEach(function(el){el.inputmask&&el.inputmask.remove()})},Inputmask.setValue=function(elems,value){"string"==typeof elems&&(elems=document.getElementById(elems)||document.querySelectorAll(elems)),elems=elems.nodeName?[elems]:elems,elems.forEach(function(el){el.inputmask?el.inputmask.setValue(value):(0,_inputmask.default)(el).trigger("setvalue",[value])})},Inputmask.dependencyLib=_inputmask.default,_window.default.Inputmask=Inputmask;var _default=Inputmask;exports.default=_default},function(module,exports,__webpack_require__){"use strict";function getLocator(tst,align){var locator=(null!=tst.alternation?tst.mloc[getDecisionTaker(tst)]:tst.locator).join("");if(""!==locator)for(;locator.length<align;)locator+="0";return locator}function getDecisionTaker(tst){var decisionTaker=tst.locator[tst.alternation];return"string"==typeof decisionTaker&&0<decisionTaker.length&&(decisionTaker=decisionTaker.split(",")[0]),void 0!==decisionTaker?decisionTaker.toString():""}function getPlaceholder(pos,test,returnPL){var inputmask=this,opts=this.opts,maskset=this.maskset;if(test=test||getTest.call(this,pos).match,void 0!==test.placeholder||!0===returnPL)return"function"==typeof test.placeholder?test.placeholder(opts):test.placeholder;if(!0!==test.static)return opts.placeholder.charAt(pos%opts.placeholder.length);if(-1<pos&&void 0===maskset.validPositions[pos]){var tests=getTests.call(this,pos),staticAlternations=[],prevTest;if(tests.length>1+(""===tests[tests.length-1].match.def?1:0))for(var i=0;i<tests.length;i++)if(""!==tests[i].match.def&&!0!==tests[i].match.optionality&&!0!==tests[i].match.optionalQuantifier&&(!0===tests[i].match.static||void 0===prevTest||!1!==tests[i].match.fn.test(prevTest.match.def,maskset,pos,!0,opts))&&(staticAlternations.push(tests[i]),!0===tests[i].match.static&&(prevTest=tests[i]),1<staticAlternations.length&&/[0-9a-bA-Z]/.test(staticAlternations[0].match.def)))return opts.placeholder.charAt(pos%opts.placeholder.length)}return test.def}function getMaskTemplate(baseOnInput,minimalPos,includeMode,noJit,clearOptionalTail){var inputmask=this,opts=this.opts,maskset=this.maskset,greedy=opts.greedy;
263clearOptionalTail&&(opts.greedy=!1),minimalPos=minimalPos||0;var maskTemplate=[],ndxIntlzr,pos=0,test,testPos,jitRenderStatic;do{if(!0===baseOnInput&&maskset.validPositions[pos])testPos=clearOptionalTail&&!0===maskset.validPositions[pos].match.optionality&&void 0===maskset.validPositions[pos+1]&&(!0===maskset.validPositions[pos].generatedInput||maskset.validPositions[pos].input==opts.skipOptionalPartCharacter&&0<pos)?determineTestTemplate.call(this,pos,getTests.call(this,pos,ndxIntlzr,pos-1)):maskset.validPositions[pos],test=testPos.match,ndxIntlzr=testPos.locator.slice(),maskTemplate.push(!0===includeMode?testPos.input:!1===includeMode?test.nativeDef:getPlaceholder.call(this,pos,test));else{testPos=getTestTemplate.call(this,pos,ndxIntlzr,pos-1),test=testPos.match,ndxIntlzr=testPos.locator.slice();var jitMasking=!0!==noJit&&(!1!==opts.jitMasking?opts.jitMasking:test.jit);jitRenderStatic=(jitRenderStatic&&test.static&&test.def!==opts.groupSeparator&&null===test.fn||maskset.validPositions[pos-1]&&test.static&&test.def!==opts.groupSeparator&&null===test.fn)&&maskset.tests[pos]&&1===maskset.tests[pos].length,jitRenderStatic||!1===jitMasking||void 0===jitMasking||"number"==typeof jitMasking&&isFinite(jitMasking)&&pos<jitMasking?maskTemplate.push(!1===includeMode?test.nativeDef:getPlaceholder.call(this,pos,test)):jitRenderStatic=!1}pos++}while((void 0===this.maxLength||pos<this.maxLength)&&(!0!==test.static||""!==test.def)||pos<minimalPos);return""===maskTemplate[maskTemplate.length-1]&&maskTemplate.pop(),!1===includeMode&&void 0!==maskset.maskLength||(maskset.maskLength=pos-1),opts.greedy=greedy,maskTemplate}function getTestTemplate(pos,ndxIntlzr,tstPs){var inputmask=this,maskset=this.maskset;return maskset.validPositions[pos]||determineTestTemplate.call(this,pos,getTests.call(this,pos,ndxIntlzr?ndxIntlzr.slice():ndxIntlzr,tstPs))}function determineTestTemplate(pos,tests){var inputmask=this,opts=this.opts;pos=0<pos?pos-1:0;for(var altTest=getTest.call(this,pos),targetLocator=getLocator(altTest),tstLocator,closest,bestMatch,ndx=0;ndx<tests.length;ndx++){var tst=tests[ndx];tstLocator=getLocator(tst,targetLocator.length);var distance=Math.abs(tstLocator-targetLocator);(void 0===closest||""!==tstLocator&&distance<closest||bestMatch&&!opts.greedy&&bestMatch.match.optionality&&"master"===bestMatch.match.newBlockMarker&&(!tst.match.optionality||!tst.match.newBlockMarker)||bestMatch&&bestMatch.match.optionalQuantifier&&!tst.match.optionalQuantifier)&&(closest=distance,bestMatch=tst)}return bestMatch}function getTest(pos,tests){var inputmask=this,maskset=this.maskset;return maskset.validPositions[pos]?maskset.validPositions[pos]:(tests||getTests.call(this,pos))[0]}function isSubsetOf(source,target,opts){function expand(pattern){for(var expanded=[],start=-1,end,i=0,l=pattern.length;i<l;
263i++)if("-"===pattern.charAt(i))for(end=pattern.charCodeAt(i+1);++start<end;)expanded.push(String.fromCharCode(start));else start=pattern.charCodeAt(i),expanded.push(pattern.charAt(i));return expanded.join("")}return source.match.def===target.match.nativeDef||!(!(opts.regex||source.match.fn instanceof RegExp&&target.match.fn instanceof RegExp)||!0===source.match.static||!0===target.match.static)&&-1!==expand(target.match.fn.toString().replace(/[[\]/]/g,"")).indexOf(expand(source.match.fn.toString().replace(/[[\]/]/g,"")))}function getTests(pos,ndxIntlzr,tstPs){var inputmask=this,$=this.dependencyLib,maskset=this.maskset,opts=this.opts,el=this.el,maskTokens=maskset.maskToken,testPos=ndxIntlzr?tstPs:0,ndxInitializer=ndxIntlzr?ndxIntlzr.slice():[0],matches=[],insertStop=!1,latestMatch,cacheDependency=ndxIntlzr?ndxIntlzr.join(""):"";function resolveTestFromToken(maskToken,ndxInitializer,loopNdx,quantifierRecurse){function handleMatch(match,loopNdx,quantifierRecurse){function isFirstMatch(latestMatch,tokenGroup){var firstMatch=0===tokenGroup.matches.indexOf(latestMatch);return firstMatch||tokenGroup.matches.every(function(match,ndx){return!0===match.isQuantifier?firstMatch=isFirstMatch(latestMatch,tokenGroup.matches[ndx-1]):Object.prototype.hasOwnProperty.call(match,"matches")&&(firstMatch=isFirstMatch(latestMatch,match)),!firstMatch}),firstMatch}function resolveNdxInitializer(pos,alternateNdx,targetAlternation){var bestMatch,indexPos;if((maskset.tests[pos]||maskset.validPositions[pos])&&(maskset.tests[pos]||[maskset.validPositions[pos]]).every(function(lmnt,ndx){if(lmnt.mloc[alternateNdx])return bestMatch=lmnt,!1;var alternation=void 0!==targetAlternation?targetAlternation:lmnt.alternation,ndxPos=void 0!==lmnt.locator[alternation]?lmnt.locator[alternation].toString().indexOf(alternateNdx):-1;return(void 0===indexPos||ndxPos<indexPos)&&-1!==ndxPos&&(bestMatch=lmnt,indexPos=ndxPos),!0}),bestMatch){var bestMatchAltIndex=bestMatch.locator[bestMatch.alternation],locator=bestMatch.mloc[alternateNdx]||bestMatch.mloc[bestMatchAltIndex]||bestMatch.locator;return locator.slice((void 0!==targetAlternation?targetAlternation:bestMatch.alternation)+1)}return void 0!==targetAlternation?resolveNdxInitializer(pos,alternateNdx):void 0}function staticCanMatchDefinition(source,target){return!0===source.match.static&&!0!==target.match.static&&target.match.fn.test(source.match.def,maskset,pos,!1,opts,!1)}function setMergeLocators(targetMatch,altMatch){var alternationNdx=targetMatch.alternation,shouldMerge=void 0===altMatch||alternationNdx===altMatch.alternation&&-1===targetMatch.locator[alternationNdx].toString().indexOf(altMatch.locator[alternationNdx]);if(!shouldMerge&&alternationNdx>altMatch.alternation)for(var i=altMatch.alternation;i<alternationNdx;i++)if(targetMatch.locator[i]!==altMatch.locator[i]){alternationNdx=i,shouldMerge=!0;break}if(shouldMerge){targetMatch.mloc=targetMatch.mloc||{};var locNdx=targetMatch.locator[alternationNdx];if(void 0!==locNdx){if("string"==typeof locNdx&&(locNdx=locNdx.split(",")[0]),void 0===targetMatch.mloc[locNdx]&&(targetMatch.mloc[locNdx]=targetMatch.locator.slice()),void 0!==altMatch){for(var ndx in altMatch.mloc)"string"==typeof ndx&&(ndx=ndx.split(",")[0]),void 0===targetMatch.mloc[ndx]&&(targetMatch.mloc[ndx]=altMatch.mloc[ndx]);targetMatch.locator[alternationNdx]=Object.keys(targetMatch.mloc).join(",")}return!0}targetMatch.alternation=void 0}return!1}function isSameLevel(targetMatch,altMatch){if(targetMatch.locator.length!==altMatch.locator.length)return!1;for(var locNdx=targetMatch.alternation+1;locNdx<targetMatch.locator.length;locNdx++)if(targetMatch.locator[locNdx]!==altMatch.locator[locNdx])return!1;return!0}if(testPos>pos+opts._maxTestPos)throw"Inputmask: There is probably an error in your mask definition or in the code. Create an issue on github with an example of the mask you are using. "+maskset.mask;if(testPos===pos&&void 0===match.matches)return matches.push({match:match,locator:loopNdx.reverse(),cd:cacheDependency,mloc:{}}),!0;if(void 0!==match.matches){if(match.isGroup&&quantifierRecurse!==match){if
263(match=handleMatch(maskToken.matches[maskToken.matches.indexOf(match)+1],loopNdx,quantifierRecurse),match)return!0}else if(match.isOptional){var optionalToken=match,mtchsNdx=matches.length;if(match=resolveTestFromToken(match,ndxInitializer,loopNdx,quantifierRecurse),match){if(matches.forEach(function(mtch,ndx){mtchsNdx<=ndx&&(mtch.match.optionality=!0)}),latestMatch=matches[matches.length-1].match,void 0!==quantifierRecurse||!isFirstMatch(latestMatch,optionalToken))return!0;insertStop=!0,testPos=pos}}else if(match.isAlternator){var alternateToken=match,malternateMatches=[],maltMatches,currentMatches=matches.slice(),loopNdxCnt=loopNdx.length,unMatchedAlternation=!1,altIndex=0<ndxInitializer.length?ndxInitializer.shift():-1;if(-1===altIndex||"string"==typeof altIndex){var currentPos=testPos,ndxInitializerClone=ndxInitializer.slice(),altIndexArr=[],amndx;if("string"==typeof altIndex)altIndexArr=altIndex.split(",");else for(amndx=0;amndx<alternateToken.matches.length;amndx++)altIndexArr.push(amndx.toString());if(void 0!==maskset.excludes[pos]){for(var altIndexArrClone=altIndexArr.slice(),i=0,exl=maskset.excludes[pos].length;i<exl;i++){var excludeSet=maskset.excludes[pos][i].toString().split(":");loopNdx.length==excludeSet[1]&&altIndexArr.splice(altIndexArr.indexOf(excludeSet[0]),1)}0===altIndexArr.length&&(delete maskset.excludes[pos],altIndexArr=altIndexArrClone)}(!0===opts.keepStatic||isFinite(parseInt(opts.keepStatic))&&currentPos>=opts.keepStatic)&&(altIndexArr=altIndexArr.slice(0,1));for(var ndx=0;ndx<altIndexArr.length;ndx++){amndx=parseInt(altIndexArr[ndx]),matches=[],ndxInitializer="string"==typeof altIndex&&resolveNdxInitializer(testPos,amndx,loopNdxCnt)||ndxInitializerClone.slice();var tokenMatch=alternateToken.matches[amndx];if(tokenMatch&&handleMatch(tokenMatch,[amndx].concat(loopNdx),quantifierRecurse))match=!0;else if(0===ndx&&(unMatchedAlternation=!0),tokenMatch&&tokenMatch.matches&&tokenMatch.matches.length>alternateToken.matches[0].matches.length)break;maltMatches=matches.slice(),testPos=currentPos,matches=[];for(var ndx1=0;ndx1<maltMatches.length;ndx1++){var altMatch=maltMatches[ndx1],dropMatch=!1;altMatch.match.jit=altMatch.match.jit||unMatchedAlternation,altMatch.alternation=altMatch.alternation||loopNdxCnt,setMergeLocators(altMatch);for(var ndx2=0;ndx2<malternateMatches.length;ndx2++){var altMatch2=malternateMatches[ndx2];if("string"!=typeof altIndex||void 0!==altMatch.alternation&&altIndexArr.includes(altMatch.locator[altMatch.alternation].toString())){if(altMatch.match.nativeDef===altMatch2.match.nativeDef){dropMatch=!0,setMergeLocators(altMatch2,altMatch);break}if(isSubsetOf(altMatch,altMatch2,opts)){setMergeLocators(altMatch,altMatch2)&&(dropMatch=!0,malternateMatches.splice(malternateMatches.indexOf(altMatch2),0,altMatch));break}if(isSubsetOf(altMatch2,altMatch,opts)){setMergeLocators(altMatch2,altMatch);break}if(staticCanMatchDefinition(altMatch,altMatch2)){isSameLevel(altMatch,altMatch2)||void 0!==el.inputmask.userOptions.keepStatic?setMergeLocators(altMatch,altMatch2)&&(dropMatch=!0,malternateMatches.splice(malternateMatches.indexOf(altMatch2),0,altMatch)):opts.keepStatic=!0;break}}}dropMatch||malternateMatches.push(altMatch)}}matches=currentMatches.concat(malternateMatches),testPos=pos,insertStop=0<matches.length,match=0<malternateMatches.length,ndxInitializer=ndxInitializerClone.slice()}else match=handleMatch(alternateToken.matches[altIndex]||maskToken.matches[altIndex],[altIndex].concat(loopNdx),quantifierRecurse);if(match)return!0}else if(match.isQuantifier&&quantifierRecurse!==maskToken.matches[maskToken.matches.indexOf(match)-1])for(var qt=match,qndx=0<ndxInitializer.length?ndxInitializer.shift():0;qndx<(isNaN(qt.quantifier.max)?qndx+1:qt.quantifier.max)&&testPos<=pos;qndx++){var tokenGroup=maskToken.matches[maskToken.matches.indexOf(qt)-1];if(match=handleMatch(tokenGroup,[qndx].concat(loopNdx),tokenGroup),match){if(latestMatch=matches[matches.length-1].match,latestMatch.optionalQuantifier=qndx>=qt.quantifier.min,latestMatch.jit=(qndx||1)*tokenGroup.matches.indexOf(latestMatch)>=qt.quantifier.jit,latestMatch.optionalQuantifier&&isFirstMatch(latestMatch,tokenGroup)){insertStop=!0,testPos=pos;break}return latestMatch.jit&&(maskset.jitOffset[pos]=tokenGroup.matches.length-tokenGroup.matches.indexOf(latestMatch)),!0}}else if(match=resolveTestFromToken(match,ndxInitializer,loopNdx,quantifierRecurse),match)return!0}else testPos++}for(var tndx=0<ndxInitializer.length?ndxInitializer.shift():0;tndx<maskToken.matches.length;tndx++)if(!0!==maskToken.matches[tndx].isQuantifier){var match=handleMatch(maskToken.matches[tndx],[tndx].concat(loopNdx),quantifierRecurse);if(match&&testPos===pos)return match;if(pos<testPos)break}}function mergeLocators(pos,tests){var locator=[],alternation;return Array.isArray(tests)||(tests=[tests]),0<tests.length&&(void 0===tests[0].alternation||!0===opts.keepStatic?(locator=determineTestTemplate.call(inputmask,pos,tests.slice()).locator.slice(),0===locator.length&&(locator=tests[0].locator.slice())):tests.forEac
263h(function(tst){""!==tst.def&&(0===locator.length?(alternation=tst.alternation,locator=tst.locator.slice()):tst.locator[alternation]&&-1===locator[alternation].toString().indexOf(tst.locator[alternation])&&(locator[alternation]+=","+tst.locator[alternation]))})),locator}if(-1<pos&&(void 0===inputmask.maxLength||pos<inputmask.maxLength)){if(void 0===ndxIntlzr){for(var previousPos=pos-1,test;void 0===(test=maskset.validPositions[previousPos]||maskset.tests[previousPos])&&-1<previousPos;)previousPos--;void 0!==test&&-1<previousPos&&(ndxInitializer=mergeLocators(previousPos,test),cacheDependency=ndxInitializer.join(""),testPos=previousPos)}if(maskset.tests[pos]&&maskset.tests[pos][0].cd===cacheDependency)return maskset.tests[pos];for(var mtndx=ndxInitializer.shift();mtndx<maskTokens.length;mtndx++){var match=resolveTestFromToken(maskTokens[mtndx],ndxInitializer,[mtndx]);if(match&&testPos===pos||pos<testPos)break}}return 0!==matches.length&&!insertStop||matches.push({match:{fn:null,static:!0,optionality:!1,casing:null,def:"",placeholder:""},locator:[],mloc:{},cd:cacheDependency}),void 0!==ndxIntlzr&&maskset.tests[pos]?$.extend(!0,[],matches):(maskset.tests[pos]=$.extend(!0,[],matches),maskset.tests[pos])}Object.defineProperty(exports,"__esModule",{value:!0}),exports.determineTestTemplate=determineTestTemplate,exports.getDecisionTaker=getDecisionTaker,exports.getMaskTemplate=getMaskTemplate,exports.getPlaceholder=getPlaceholder,exports.getTest=getTest,exports.getTests=getTests,exports.getTestTemplate=getTestTemplate,exports.isSubsetOf=isSubsetOf},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.alternate=alternate,exports.checkAlternationMatch=checkAlternationMatch,exports.isComplete=isComplete,exports.isValid=isValid,exports.refreshFromBuffer=refreshFromBuffer,exports.revalidateMask=revalidateMask,exports.handleRemove=handleRemove;var _validationTests=__webpack_require__(3),_keycode=_interopRequireDefault(__webpack_require__(0)),_positioning=__webpack_require__(1),_eventhandlers=__webpack_require__(6);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function alternate(maskPos,c,strict,fromIsValid,rAltPos,selection){var inputmask=this,$=this.dependencyLib,opts=this.opts,maskset=this.maskset,validPsClone=$.extend(!0,{},maskset.validPositions),tstClone=$.extend(!0,{},maskset.tests),lastAlt,alternation,isValidRslt=!1,returnRslt=!1,altPos,prevAltPos,i,validPos,decisionPos,lAltPos=void 0!==rAltPos?rAltPos:_positioning.getLastValidPosition.call(this),nextPos,input,begin,end;if(selection&&(begin=selection.begin,end=selection.end,selection.begin>selection.end&&(begin=selection.end,end=selection.begin)),-1===lAltPos&&void 0===rAltPos)lastAlt=0,prevAltPos=_validationTests.getTest.call(this,lastAlt),alternation=prevAltPos.alternation;else for(;0<=lAltPos;lAltPos--)if(altPos=maskset.validPositions[lAltPos],altPos&&void 0!==altPos.alternation){if(prevAltPos&&prevAltPos.locator[altPos.alternation]!==altPos.locator[altPos.alternation])break;lastAlt=lAltPos,alternation=maskset.validPositions[lastAlt].alternation,prevAltPos=altPos}if(void 0!==alternation){decisionPos=parseInt(lastAlt),maskset.excludes[decisionPos]=maskset.excludes[decisionPos]||[],!0!==maskPos&&maskset.excludes[decisionPos].push((0,_validationTests.getDecisionTaker)(prevAltPos)+":"+prevAltPos.alternation);var validInputs=[],resultPos=-1;for(i=decisionPos;i<_positioning.getLastValidPosition.call(this,void 0,!0)+1;i++)-1===resultPos&&maskPos<=i&&void 0!==c&&(validInputs.push(c),resultPos=validInputs.length-1),validPos=maskset.validPositions[i],validPos&&!0!==validPos.generatedInput&&(void 0===selection||i<begin||end<=i)&&validInputs.push(validPos.input),delete maskset.validPositions[i];for(-1===resultPos&&void 0!==c&&(validInputs.push(c),resultPos=validInputs.length-1);void 0!==maskset.excludes[decisionPos]&&maskset.excludes[decisionPos].length<10;){for(maskset.tests={},_positioning.resetMaskSet.call(this,!0),isValidRslt=!0,i=0;i<validInputs.length&&(nextPos=isValidRslt.caret||_positioning.getLastValidPosition.call(this,void 0,!0)+1,input=validInputs[i],isValidRslt=isValid.call(this,nextPos,input,!1,fromIsValid,!0));i++)i===resultPos&&(returnRslt=isValidRslt),1==maskPos&&isValidRslt&&(returnRslt={caretPos:i});if(isValidRslt)break;if(_positioning.resetMaskSet.call(this),prevAltPos=_validationTests.getTest.call(this,decisionPos),maskset.validPositions=$.extend(!0,{},validPsClone),maskset.tests=$.extend(!0,{},tstClone),!maskset.excludes[decisionPos]){returnRslt=alternate.call(this,maskPos,c,strict,fromIsValid,decisionPos-1,selection);break}var decisionTaker=(0,_validationTests.getDecisionTaker)(prevAltPos);if(-1!==maskset.excludes[decisionPos].indexOf(decisionTaker+":"+prevAltPos.alternation)){returnRslt=alternate.call(this,maskPos,c,strict,fromIsValid,decisionPos-1,selection);break}for(maskset.excludes[decisionPos].push(decisionTaker+":"+prevAltPos.alternation),i=decisionPos;i<_positioning.getLastValidPosition.call(this,void 0,!0)+1;i++)delete maskset.validPositions[i]}}return returnRslt&&!1===opts.keepStatic||delete maskset.excludes[decisionPos],returnRslt}function casing(elem,test,pos){var opts=this.opts,maskset=this.maskset;switch(opts.casing||test.casing){case"upper":elem=elem.toUpperCase();break;case"lower":elem=elem.toLowerCase();break;case"title":var posBefore=maskset.validPositions[pos-1];elem=0===pos||posBefore&&posBefore.input===String.fromCharCode(_keycode.default.SPACE)?elem.toUpperCase():elem.toLowerCase();break;default:if("function"==typeof opts.casing){var args=Array.prototype.slice.call(arguments);args.push(maskset.validPositions),elem=opts.casing.apply(this,args)}}return elem}function checkAlternationMatch(altArr1,altArr2,na){for(var opts=this.opts,altArrC=opts.greedy?altArr2:altArr2.slice(0,1),isMatch=!1,naArr=void 0!==na?na.split(","):[],naNdx,i=0;i<naArr.length;i++)-1!==(naNdx=altArr1.indexOf(naArr[i]))&&altArr1.splice(naNdx,1);for(var alndx=0;alndx<altArr1.length;
263alndx++)if(altArrC.includes(altArr1[alndx])){isMatch=!0;break}return isMatch}function handleRemove(input,k,pos,strict,fromIsValid){var inputmask=this,maskset=this.maskset,opts=this.opts;if((opts.numericInput||this.isRTL)&&(k===_keycode.default.BACKSPACE?k=_keycode.default.DELETE:k===_keycode.default.DELETE&&(k=_keycode.default.BACKSPACE),this.isRTL)){var pend=pos.end;pos.end=pos.begin,pos.begin=pend}var lvp=_positioning.getLastValidPosition.call(this,void 0,!0),offset;if(pos.end>=_positioning.getBuffer.call(this).length&&lvp>=pos.end&&(pos.end=lvp+1),k===_keycode.default.BACKSPACE?pos.end-pos.begin<1&&(pos.begin=_positioning.seekPrevious.call(this,pos.begin)):k===_keycode.default.DELETE&&pos.begin===pos.end&&(pos.end=_positioning.isMask.call(this,pos.end,!0,!0)?pos.end+1:_positioning.seekNext.call(this,pos.end)+1),!1!==(offset=revalidateMask.call(this,pos))){if(!0!==strict&&!1!==opts.keepStatic||null!==opts.regex&&-1!==_validationTests.getTest.call(this,pos.begin).match.def.indexOf("|")){var result=alternate.call(this,!0);if(result){var newPos=void 0!==result.caret?result.caret:result.pos?_positioning.seekNext.call(this,result.pos.begin?result.pos.begin:result.pos):_positioning.getLastValidPosition.call(this,-1,!0);(k!==_keycode.default.DELETE||pos.begin>newPos)&&pos.begin}}!0!==strict&&(maskset.p=k===_keycode.default.DELETE?pos.begin+offset:pos.begin)}}function isComplete(buffer){var inputmask=this,opts=this.opts,maskset=this.maskset;if("function"==typeof opts.isComplete)return opts.isComplete(buffer,opts);if("*"!==opts.repeat){var complete=!1,lrp=_positioning.determineLastRequiredPosition.call(this,!0),aml=_positioning.seekPrevious.call(this,lrp.l);if(void 0===lrp.def||lrp.def.newBlockMarker||lrp.def.optionality||lrp.def.optionalQuantifier){complete=!0;for(var i=0;i<=aml;i++){var test=_validationTests.getTestTemplate.call(this,i).match;if(!0!==test.static&&void 0===maskset.validPositions[i]&&!0!==test.optionality&&!0!==test.optionalQuantifier||!0===test.static&&buffer[i]!==_validationTests.getPlaceholder.call(this,i,test)){complete=!1;break}}}return complete}}function isValid(pos,c,strict,fromIsValid,fromAlternate,validateOnly,fromCheckval){var inputmask=this,$=this.dependencyLib,opts=this.opts,maskset=inputmask.maskset;function isSelection(posObj){return inputmask.isRTL?1<posObj.begin-posObj.end||posObj.begin-posObj.end==1:1<posObj.end-posObj.begin||posObj.end-posObj.begin==1}strict=!0===strict;var maskPos=pos;function processCommandObject(commandObj){if(void 0!==commandObj){if(void 0!==commandObj.remove&&(Array.isArray(commandObj.remove)||(commandObj.remove=[commandObj.remove]),commandObj.remove.sort(function(a,b){return b.pos-a.pos}).forEach(function(lmnt){revalidateMask.call(inputmask,{begin:lmnt,end:lmnt+1})}),commandObj.remove=void 0),void 0!==commandObj.insert&&(Array.isArray(commandObj.insert)||(commandObj.insert=[commandObj.insert]),commandObj.insert.sort(function(a,b){return a.pos-b.pos}).forEach(function(lmnt){""!==lmnt.c&&isValid.call(inputmask,lmnt.pos,lmnt.c,void 0===lmnt.strict||lmnt.strict,void 0!==lmnt.fromIsValid?lmnt.fromIsValid:fromIsValid)}),commandObj.insert=void 0),commandObj.refreshFromBuffer&&commandObj.buffer){var refresh=commandObj.refreshFromBuffer;refreshFromBuffer.call(inputmask,!0===refresh?refresh:refresh.start,refresh.end,commandObj.buffer),commandObj.refreshFromBuffer=void 0}void 0!==commandObj.rewritePosition&&(maskPos=commandObj.rewritePosition,commandObj=!0)}return commandObj}function _isValid(position,c,strict){var rslt=!1;return _validationTests.getTests.call(inputmask,position).every(function(tst,ndx){var test=tst.match;if(_positioning.getBuffer.call(inputmask,!0),rslt=null!=test.fn?test.fn.test(c,maskset,position,strict,opts,isSelection(pos)):(c===test.def||c===opts.skipOptionalPartCharacter)&&""!==test.def&&{c:_validationTests.getPlaceholder.call(inputmask,position,test,!0)||test.def,pos:position},!1===rslt)return!0;var elem=void 0!==rslt.c?rslt.c:c,validatedPos=position;return elem=elem===opts.skipOptionalPartCharacter&&!0===test.static?_validationTests.getPlaceholder.call(inputmask,position,test,!0)||test.def:elem,rslt=processCommandObject(rslt),!0!==rslt&&void 0!==rslt.pos&&rslt.pos!==position&&(validatedPos=rslt.pos),!0!==rslt&&void 0===rslt.pos&&void 0===rslt.c||!1===revalidateMask.call(inputmask,pos,$.extend({},tst,{input:casing.call(inputmask,elem,test,validatedPos)}),fromIsValid,validatedPos)&&(rslt=!1),!1}),rslt}void 0!==pos.begin&&(maskPos=inputmask.isRTL?pos.end:pos.begin);var result=!0,positionsClone=$.extend(!0,{},maskset.validPositions);if(!1===opts.keepStatic&&void 0!==maskset.excludes[maskPos]&&!0!==fromAlternate&&!0!==fromIsValid)for(var i=maskPos;i<(inputmask.isRTL?pos.begin:pos.end);i++)void 0!==maskset.excludes[i]&&(maskset.excludes[i]=void 0,delete maskset.tests[i]);if("function"==typeof opts.preValidation&&!0!==fromIsValid&&!0!==validateOnly&&(result=opts.preValidation.call(inputmask,_positioning.getBuffer.call(inputmask),maskPos,c,isSelection(pos),opts,maskset,pos,strict||fromAlternate),result=processCommandObject(result)),!0===result){if(void 0===inputmask.maxLength||maskPos<_positioning.translatePosition.call(inputmask,inputmask.maxLength)){if(result=_isValid(maskPos,c,strict),(!strict||!0===fromIsValid)&&!1===result&&!0!==validateOnly){var currentPosValid=maskset.validPositions[maskPos];if(!currentPosValid||!0!==currentPosValid.match.static||currentPosValid.match.def!==c&&c!==opts.skipOptionalPartCharacter){if(opts.insertMode||void 0===maskset.validPositions[_positioning.seekNext.call(inputmask,maskPos)]||pos.end>maskPos){var skip=!1;if(maskset.jitOffset[maskPos]&&void 0===maskset.validPositions[_positioning.seekNext.call(inputmask,maskPos)]&&(result=isValid.call(inputmask,maskPos+maskset.jitOffset[maskPos],c,!0),!1!==result&&(!0!==fromAlternate&&(result.caret=maskPos),skip=!0)),pos.end>maskPos&&(maskset.validPositions[maskPos]=void 0),!skip&&!_positioning.isMask.call(inputmask,maskPos,opts.keepStatic&&0===maskPos))for(var nPos=maskPos+1,snPos=_positioning.seekNext.call(inputmask,maskPos,!1,0!==maskPos);nPos<=snPos;nPos++)if(result=_isValid(nPos,c,strict),!1!==result){result=trackbackPositions.call(inputmask,maskPos,void 0!==result.pos?result.pos:nPos)||result,maskPos=nPos;break}}}else result={caret:_positioning.seekNext.call(inputmask,maskPos)}}}else result=!1;!1!==result||!opts.keepStatic||!isComplete.call(inputmask,_positioning.getBuffer.call(inputmask))&&0!==maskPos||strict||!0===fromAlternate?isSelection(pos)&&maskset.tests[maskPos]&&1<maskset.tests[maskPos].length&&opts.keepStatic&&!strict&&!0!==fromAlternate&&(result=alternate.call(inputmask,!0)):result=alternate.call(inputmask,maskPos,c,strict,fromIsValid,void 0,pos),!0===result&&(result={pos:maskPos}
263)}if("function"==typeof opts.postValidation&&!0!==fromIsValid&&!0!==validateOnly){var postResult=opts.postValidation.call(inputmask,_positioning.getBuffer.call(inputmask,!0),void 0!==pos.begin?inputmask.isRTL?pos.end:pos.begin:pos,c,result,opts,maskset,strict,fromCheckval);void 0!==postResult&&(result=!0===postResult?result:postResult)}result&&void 0===result.pos&&(result.pos=maskPos),!1===result||!0===validateOnly?(_positioning.resetMaskSet.call(inputmask,!0),maskset.validPositions=$.extend(!0,{},positionsClone)):trackbackPositions.call(inputmask,void 0,maskPos,!0);var endResult=processCommandObject(result);return endResult}function positionCanMatchDefinition(pos,testDefinition,opts){for(var inputmask=this,maskset=this.maskset,valid=!1,tests=_validationTests.getTests.call(this,pos),tndx=0;tndx<tests.length;tndx++){if(tests[tndx].match&&(tests[tndx].match.nativeDef===testDefinition.match[opts.shiftPositions?"def":"nativeDef"]&&(!opts.shiftPositions||!testDefinition.match.static)||tests[tndx].match.nativeDef===testDefinition.match.nativeDef||opts.regex&&!tests[tndx].match.static&&tests[tndx].match.fn.test(testDefinition.input))){valid=!0;break}if(tests[tndx].match&&tests[tndx].match.def===testDefinition.match.nativeDef){valid=void 0;break}}return!1===valid&&void 0!==maskset.jitOffset[pos]&&(valid=positionCanMatchDefinition.call(this,pos+maskset.jitOffset[pos],testDefinition,opts)),valid}function refreshFromBuffer(start,end,buffer){var inputmask=this,maskset=this.maskset,opts=this.opts,$=this.dependencyLib,i,p,skipOptionalPartCharacter=opts.skipOptionalPartCharacter,bffr=this.isRTL?buffer.slice().reverse():buffer;if(opts.skipOptionalPartCharacter="",!0===start)_positioning.resetMaskSet.call(this),maskset.tests={},start=0,end=buffer.length,p=_positioning.determineNewCaretPosition.call(this,{begin:0,end:0},!1).begin;else{for(i=start;i<end;i++)delete maskset.validPositions[i];p=start}var keypress=new $.Event("keypress");for(i=start;i<end;i++){keypress.which=bffr[i].toString().charCodeAt(0),this.ignorable=!1;var valResult=_eventhandlers.EventHandlers.keypressEvent.call(this,keypress,!0,!1,!1,p);!1!==valResult&&(p=valResult.forwardPosition)}opts.skipOptionalPartCharacter=skipOptionalPartCharacter}function trackbackPositions(originalPos,newPos,fillOnly){var inputmask=this,maskset=this.maskset,$=this.dependencyLib;if(void 0===originalPos)for(originalPos=newPos-1;0<originalPos&&!maskset.validPositions[originalPos];originalPos--);for(var ps=originalPos;ps<newPos;ps++)if(void 0===maskset.validPositions[ps]&&!_positioning.isMask.call(this,ps,!1)){var vp=0==ps?_validationTests.getTest.call(this,ps):maskset.validPositions[ps-1];if(vp){var tests=_validationTests.getTests.call(this,ps).slice();""===tests[tests.length-1].match.def&&tests.pop();var bestMatch=_validationTests.determineTestTemplate.call(this,ps,tests),np;if(bestMatch&&(!0!==bestMatch.match.jit||"master"===bestMatch.match.newBlockMarker&&(np=maskset.validPositions[ps+1])&&!0===np.match.optionalQuantifier)&&(bestMatch=$.extend({},bestMatch,{input:_validationTests.getPlaceholder.call(this,ps,bestMatch.match,!0)||bestMatch.match.def}),bestMatch.generatedInput=!0,revalidateMask.call(this,ps,bestMatch,!0),!0!==fillOnly)){var cvpInput=maskset.validPositions[newPos].input;return maskset.validPositions[newPos]=void 0,isValid.call(this,newPos,cvpInput,!0,!0)}}}}function revalidateMask(pos,validTest,fromIsValid,validatedPos){var inputmask=this,maskset=this.maskset,opts=this.opts,$=this.dependencyLib;function IsEnclosedStatic(pos,valids,selection){var posMatch=valids[pos];if(void 0===posMatch||!0!==posMatch.match.static||!0===posMatch.match.optionality||void 0!==valids[0]&&void 0!==valids[0].alternation)return!1;var prevMatch=selection.begin<=pos-1?valids[pos-1]&&!0===valids[pos-1].match.static&&valids[pos-1]:valids[pos-1],nextMatch=selection.end>pos+1?valids[pos+1]&&!0===valids[pos+1].match.static&&valids[pos+1]:valids[pos+1];return prevMatch&&nextMatch}var offset=0,begin=void 0!==pos.begin?pos.begin:pos,end=void 0!==pos.end?pos.end:pos;if(pos.begin>pos.end&&(begin=pos.end,end=pos.begin),validatedPos=void 0!==validatedPos?validatedPos:begin,begin!==end||opts.insertMode&&void 0!==maskset.validPositions[validatedPos]&&void 0===fromIsValid||void 0===validTest){var positionsClone=$.extend(!0,{},maskset.validPositions),lvp=_positioning.getLastValidPosition.call(this,void 0,!0),i;for(maskset.p=begin,i=lvp;begin<=i;i--)delete maskset.validPositions[i],void 0===validTest&&delete maskset.tests[i+1];var valid=!0,j=validatedPos,posMatch=j,t,canMatch;for(validTest&&(maskset.validPositions[validatedPos]=$.extend(!0,{},validTest),posMatch++,j++),i=validTest?end:end-1;i<=lvp;
263i++){if(void 0!==(t=positionsClone[i])&&!0!==t.generatedInput&&(end<=i||begin<=i&&IsEnclosedStatic(i,positionsClone,{begin:begin,end:end}))){for(;""!==_validationTests.getTest.call(this,posMatch).match.def;){if(!1!==(canMatch=positionCanMatchDefinition.call(this,posMatch,t,opts))||"+"===t.match.def){"+"===t.match.def&&_positioning.getBuffer.call(this,!0);var result=isValid.call(this,posMatch,t.input,"+"!==t.match.def,"+"!==t.match.def);if(valid=!1!==result,j=(result.pos||posMatch)+1,!valid&&canMatch)break}else valid=!1;if(valid){void 0===validTest&&t.match.static&&i===pos.begin&&offset++;break}if(!valid&&posMatch>maskset.maskLength)break;posMatch++}""==_validationTests.getTest.call(this,posMatch).match.def&&(valid=!1),posMatch=j}if(!valid)break}if(!valid)return maskset.validPositions=$.extend(!0,{},positionsClone),_positioning.resetMaskSet.call(this,!0),!1}else validTest&&_validationTests.getTest.call(this,validatedPos).match.cd===validTest.match.cd&&(maskset.validPositions[validatedPos]=$.extend(!0,{},validTest));return _positioning.resetMaskSet.call(this,!0),offset}},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.applyInputValue=applyInputValue,exports.clearOptionalTail=clearOptionalTail,exports.checkVal=checkVal,exports.HandleNativePlaceholder=HandleNativePlaceholder,exports.unmaskedvalue=unmaskedvalue,exports.writeBuffer=writeBuffer;var _keycode=_interopRequireDefault(__webpack_require__(0)),_validationTests=__webpack_require__(3),_positioning=__webpack_require__(1),_validation=__webpack_require__(4),_environment=__webpack_require__(7),_eventhandlers=__webpack_require__(6);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function applyInputValue(input,value){var inputmask=input?input.inputmask:this,opts=inputmask.opts;input.inputmask.refreshValue=!1,"function"==typeof opts.onBeforeMask&&(value=opts.onBeforeMask.call(inputmask,value,opts)||value),value=value.toString().split(""),checkVal(input,!0,!1,value),inputmask.undoValue=_positioning.getBuffer.call(inputmask).join(""),(opts.clearMaskOnLostFocus||opts.clearIncomplete)&&input.inputmask._valueGet()===_positioning.getBufferTemplate.call(inputmask).join("")&&-1===_positioning.getLastValidPosition.call(inputmask)&&input.inputmask._valueSet("")}function clearOptionalTail(buffer){var inputmask=this;buffer.length=0;for(var template=_validationTests.getMaskTemplate.call(this,!0,0,!0,void 0,!0),lmnt;void 0!==(lmnt=template.shift());)buffer.push(lmnt);return buffer}function checkVal(input,writeOut,strict,nptvl,initiatingEvent){var inputmask=input?input.inputmask:this,maskset=inputmask.maskset,opts=inputmask.opts,$=inputmask.dependencyLib,inputValue=nptvl.slice(),charCodes="",initialNdx=-1,result=void 0,skipOptionalPartCharacter=opts.skipOptionalPartCharacter;function isTemplateMatch(ndx,charCodes){for(var targetTemplate=_validationTests.getMaskTemplate.call(inputmask,!0,0).slice(ndx,_positioning.seekNext.call(inputmask,ndx,!1,!1)).join("").replace(/'/g,""),charCodeNdx=targetTemplate.indexOf(charCodes);0<charCodeNdx&&" "===targetTemplate[charCodeNdx-1];)charCodeNdx--;var match=0===charCodeNdx&&!_positioning.isMask.call(inputmask,ndx)&&(_validationTests.getTest.call(inputmask,ndx).match.nativeDef===charCodes.charAt(0)||!0===_validationTests.getTest.call(inputmask,ndx).match.static&&_validationTests.getTest.call(inputmask,ndx).match.nativeDef==="'"+charCodes.charAt(0)||" "===_validationTests.getTest.call(inputmask,ndx).match.nativeDef&&(_validationTests.getTest.call(inputmask,ndx+1).match.nativeDef===charCodes.charAt(0)||!0===_validationTests.getTest.call(inputmask,ndx+1).match.static&&_validationTests.getTest.call(inputmask,ndx+1).match.nativeDef==="'"+charCodes.charAt(0)));if(!match&&0<charCodeNdx&&!_positioning.isMask.call(inputmask,ndx,!1,!0)){var nextPos=_positioning.seekNext.call(inputmask,ndx);inputmask.caretPos.begin<nextPos&&(inputmask.caretPos={begin:nextPos})}return match}opts.skipOptionalPartCharacter="",_positioning.resetMaskSet.call(inputmask),maskset.tests={},initialNdx=opts.radixPoint?_positioning.determineNewCaretPosition.call(inputmask,{begin:0,end:0},!1,!1===opts.__financeInput?"radixFocus":void 0).begin:0,maskset.p=initialNdx,inputmask.caretPos={begin:initialNdx};var staticMatches=[],prevCaretPos=inputmask.caretPos;
263if(inputValue.forEach(function(charCode,ndx){if(void 0!==charCode){var keypress=new $.Event("_checkval");keypress.which=charCode.toString().charCodeAt(0),charCodes+=charCode;var lvp=_positioning.getLastValidPosition.call(inputmask,void 0,!0);isTemplateMatch(initialNdx,charCodes)?result=_eventhandlers.EventHandlers.keypressEvent.call(inputmask,keypress,!0,!1,strict,lvp+1):(result=_eventhandlers.EventHandlers.keypressEvent.call(inputmask,keypress,!0,!1,strict,inputmask.caretPos.begin),result&&(initialNdx=inputmask.caretPos.begin+1,charCodes="")),result?(void 0!==result.pos&&maskset.validPositions[result.pos]&&!0===maskset.validPositions[result.pos].match.static&&void 0===maskset.validPositions[result.pos].alternation&&(staticMatches.push(result.pos),inputmask.isRTL||(result.forwardPosition=result.pos+1)),writeBuffer.call(inputmask,void 0,_positioning.getBuffer.call(inputmask),result.forwardPosition,keypress,!1),inputmask.caretPos={begin:result.forwardPosition,end:result.forwardPosition},prevCaretPos=inputmask.caretPos):void 0===maskset.validPositions[ndx]&&inputValue[ndx]===_validationTests.getPlaceholder.call(inputmask,ndx)&&_positioning.isMask.call(inputmask,ndx,!0)?inputmask.caretPos.begin++:inputmask.caretPos=prevCaretPos}}),0<staticMatches.length){var sndx,validPos,nextValid=_positioning.seekNext.call(inputmask,-1,void 0,!1);if(!_validation.isComplete.call(inputmask,_positioning.getBuffer.call(inputmask))&&staticMatches.length<=nextValid||_validation.isComplete.call(inputmask,_positioning.getBuffer.call(inputmask))&&0<staticMatches.length&&staticMatches.length!==nextValid&&0===staticMatches[0])for(var nextSndx=nextValid;void 0!==(sndx=staticMatches.shift());){var keypress=new $.Event("_checkval");if(validPos=maskset.validPositions[sndx],validPos.generatedInput=!0,keypress.which=validPos.input.charCodeAt(0),result=_eventhandlers.EventHandlers.keypressEvent.call(inputmask,keypress,!0,!1,strict,nextSndx),result&&void 0!==result.pos&&result.pos!==sndx&&maskset.validPositions[result.pos]&&!0===maskset.validPositions[result.pos].match.static)staticMatches.push(result.pos);else if(!result)break;nextSndx++}}writeOut&&writeBuffer.call(inputmask,input,_positioning.getBuffer.call(inputmask),result?result.forwardPosition:inputmask.caretPos.begin,initiatingEvent||new $.Event("checkval"),initiatingEvent&&"input"===initiatingEvent.type&&inputmask.undoValue!==_positioning.getBuffer.call(inputmask).join("")),opts.skipOptionalPartCharacter=skipOptionalPartCharacter}function HandleNativePlaceholder(npt,value){var inputmask=npt?npt.inputmask:this;if(_environment.ie){if(npt.inputmask._valueGet()!==value&&(npt.placeholder!==value||""===npt.placeholder)){var buffer=_positioning.getBuffer.call(inputmask).slice(),nptValue=npt.inputmask._valueGet();if(nptValue!==value){var lvp=_positioning.getLastValidPosition.call(inputmask);-1===lvp&&nptValue===_positioning.getBufferTemplate.call(inputmask).join("")?buffer=[]:-1!==lvp&&clearOptionalTail.call(inputmask,buffer),writeBuffer(npt,buffer)}}}else npt.placeholder!==value&&(npt.placeholder=value,""===npt.placeholder&&npt.removeAttribute("placeholder"))}function unmaskedvalue(input){var inputmask=input?input.inputmask:this,opts=inputmask.opts,maskset=inputmask.maskset;if(input){if(void 0===input.inputmask)return input.value;input.inputmask&&input.inputmask.refreshValue&&applyInputValue(input,input.inputmask._valueGet(!0))}var umValue=[],vps=maskset.validPositions;for(var pndx in vps)vps[pndx]&&vps[pndx].match&&(1!=vps[pndx].match.static||Array.isArray(maskset.metadata)&&!0!==vps[pndx].generatedInput)&&umValue.push(vps[pndx].input);var unmaskedValue=0===umValue.length?"":(inputmask.isRTL?umValue.reverse():umValue).join("");if("function"==typeof opts.onUnMask){var bufferValue=(inputmask.isRTL?_positioning.getBuffer.call(inputmask).slice().reverse():_positioning.getBuffer.call(inputmask)).join("");unmaskedValue=opts.onUnMask.call(inputmask,bufferValue,unmaskedValue,opts)}return unmaskedValue}function writeBuffer(input,buffer,caretPos,event,triggerEvents){var inputmask=input?input.inputmask:this,opts=inputmask.opts,$=inputmask.dependencyLib;if(event&&"function"==typeof opts.onBeforeWrite){var result=opts.onBeforeWrite.call(inputmask,event,buffer,caretPos,opts);if(result){if(result.refreshFromBuffer){var refresh=result.refreshFromBuffer;_validation.refreshFromBuffer.call(inputmask,!0===refresh?refresh:refresh.start,refresh.end,result.buffer||buffer),buffer=_positioning.getBuffer.call(inputmask,!0)}void 0!==caretPos&&(caretPos=void 0!==result.caret?result.caret:caretPos)}}if(void 0!==input&&(input.inputmask._valueSet(buffer.join("")),void 0===caretPos||void 0!==event&&"blur"===event.type||_positioning.caret.call(inputmask,input,caretPos,void 0,void 0,void 0!==event&&"keydown"===event.type&&(event.keyCode===_keycode.default.DELETE||event.keyCode===_keycode.default.BACKSPACE)),!0===triggerEvents)){var $input=$(input),npt
263Val=input.inputmask._valueGet();input.inputmask.skipInputEvent=!0,$input.trigger("input"),setTimeout(function(){nptVal===_positioning.getBufferTemplate.call(inputmask).join("")?$input.trigger("cleared"):!0===_validation.isComplete.call(inputmask,buffer)&&$input.trigger("complete")},0)}}},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.EventHandlers=void 0;var _positioning=__webpack_require__(1),_keycode=_interopRequireDefault(__webpack_require__(0)),_environment=__webpack_require__(7),_validation=__webpack_require__(4),_inputHandling=__webpack_require__(5),_validationTests=__webpack_require__(3);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var EventHandlers={keydownEvent:function keydownEvent(e){var inputmask=this.inputmask,opts=inputmask.opts,$=inputmask.dependencyLib,maskset=inputmask.maskset,input=this,$input=$(input),k=e.keyCode,pos=_positioning.caret.call(inputmask,input),kdResult=opts.onKeyDown.call(this,e,_positioning.getBuffer.call(inputmask),pos,opts);if(void 0!==kdResult)return kdResult;if(k===_keycode.default.BACKSPACE||k===_keycode.default.DELETE||_environment.iphone&&k===_keycode.default.BACKSPACE_SAFARI||e.ctrlKey&&k===_keycode.default.X&&!("oncut"in input))e.preventDefault(),_validation.handleRemove.call(inputmask,input,k,pos),(0,_inputHandling.writeBuffer)(input,_positioning.getBuffer.call(inputmask,!0),maskset.p,e,input.inputmask._valueGet()!==_positioning.getBuffer.call(inputmask).join(""));else if(k===_keycode.default.END||k===_keycode.default.PAGE_DOWN){e.preventDefault();var caretPos=_positioning.seekNext.call(inputmask,_positioning.getLastValidPosition.call(inputmask));_positioning.caret.call(inputmask,input,e.shiftKey?pos.begin:caretPos,caretPos,!0)}else k===_keycode.default.HOME&&!e.shiftKey||k===_keycode.default.PAGE_UP?(e.preventDefault(),_positioning.caret.call(inputmask,input,0,e.shiftKey?pos.begin:0,!0)):(opts.undoOnEscape&&k===_keycode.default.ESCAPE||90===k&&e.ctrlKey)&&!0!==e.altKey?((0,_inputHandling.checkVal)(input,!0,!1,inputmask.undoValue.split("")),$input.trigger("click")):!0===opts.tabThrough&&k===_keycode.default.TAB?!0===e.shiftKey?(pos.end=_positioning.seekPrevious.call(inputmask,pos.end,!0),!0===_validationTests.getTest.call(inputmask,pos.end-1).match.static&&pos.end--,pos.begin=_positioning.seekPrevious.call(inputmask,pos.end,!0),0<=pos.begin&&0<pos.end&&(e.preventDefault(),_positioning.caret.call(inputmask,input,pos.begin,pos.end))):(pos.begin=_positioning.seekNext.call(inputmask,pos.begin,!0),pos.end=_positioning.seekNext.call(inputmask,pos.begin,!0),pos.end<maskset.maskLength&&pos.end--,pos.begin<=maskset.maskLength&&(e.preventDefault(),_positioning.caret.call(inputmask,input,pos.begin,pos.end))):e.shiftKey||opts.insertModeVisual&&!1===opts.insertMode&&(k===_keycode.default.RIGHT?setTimeout(function(){var caretPos=_positioning.caret.call(inputmask,input);_positioning.caret.call(inputmask,input,caretPos.begin)},0):k===_keycode.default.LEFT&&setTimeout(function(){var caretPos_begin=_positioning.translatePosition.call(inputmask,input.inputmask.caretPos.begin),caretPos_end=_positioning.translatePosition.call(inputmask,input.inputmask.caretPos.end);inputmask.isRTL?_positioning.caret.call(inputmask,input,caretPos_begin+(caretPos_begin===maskset.maskLength?0:1)):_positioning.caret.call(inputmask,input,caretPos_begin-(0===caretPos_begin?0:1))},0));inputmask.ignorable=opts.ignorables.includes(k)},keypressEvent:function keypressEvent(e,checkval,writeOut,strict,ndx){var inputmask=this.inputmask||this,opts=inputmask.opts,$=inputmask.dependencyLib,maskset=inputmask.maskset,input=inputmask.el,$input=$(input),k=e.which||e.charCode||e.keyCode;if(!(!0===checkval||e.ctrlKey&&e.altKey)&&(e.ctrlKey||e.metaKey||inputmask.ignorable))return k===_keycode.default.ENTER&&inputmask.undoValue!==_positioning.getBuffer.call(inputmask).join("")&&(inputmask.undoValue=_positioning.getBuffer.call(inputmask).join(""),setTimeout(function(){$input.trigger("change")},0)),inputmask.skipInputEvent=!0,!0;if(k){44!==k&&46!==k||3!==e.location||""===opts.radixPoint||(k=opts.radixPoint.charCodeAt(0));
263var pos=checkval?{begin:ndx,end:ndx}:_positioning.caret.call(inputmask,input),forwardPosition,c=String.fromCharCode(k);maskset.writeOutBuffer=!0;var valResult=_validation.isValid.call(inputmask,pos,c,strict,void 0,void 0,void 0,checkval);if(!1!==valResult&&(_positioning.resetMaskSet.call(inputmask,!0),forwardPosition=void 0!==valResult.caret?valResult.caret:_positioning.seekNext.call(inputmask,valResult.pos.begin?valResult.pos.begin:valResult.pos),maskset.p=forwardPosition),forwardPosition=opts.numericInput&&void 0===valResult.caret?_positioning.seekPrevious.call(inputmask,forwardPosition):forwardPosition,!1!==writeOut&&(setTimeout(function(){opts.onKeyValidation.call(input,k,valResult)},0),maskset.writeOutBuffer&&!1!==valResult)){var buffer=_positioning.getBuffer.call(inputmask);(0,_inputHandling.writeBuffer)(input,buffer,forwardPosition,e,!0!==checkval)}if(e.preventDefault(),checkval)return!1!==valResult&&(valResult.forwardPosition=forwardPosition),valResult}},keyupEvent:function keyupEvent(e){var inputmask=this.inputmask;!inputmask.isComposing||e.keyCode!==_keycode.default.KEY_229&&e.keyCode!==_keycode.default.ENTER||inputmask.$el.trigger("input")},pasteEvent:function pasteEvent(e){var inputmask=this.inputmask,opts=inputmask.opts,input=this,inputValue=inputmask._valueGet(!0),caretPos=_positioning.caret.call(inputmask,this),tempValue;inputmask.isRTL&&(tempValue=caretPos.end,caretPos.end=caretPos.begin,caretPos.begin=tempValue);var valueBeforeCaret=inputValue.substr(0,caretPos.begin),valueAfterCaret=inputValue.substr(caretPos.end,inputValue.length);if(valueBeforeCaret==(inputmask.isRTL?_positioning.getBufferTemplate.call(inputmask).slice().reverse():_positioning.getBufferTemplate.call(inputmask)).slice(0,caretPos.begin).join("")&&(valueBeforeCaret=""),valueAfterCaret==(inputmask.isRTL?_positioning.getBufferTemplate.call(inputmask).slice().reverse():_positioning.getBufferTemplate.call(inputmask)).slice(caretPos.end).join("")&&(valueAfterCaret=""),window.clipboardData&&window.clipboardData.getData)inputValue=valueBeforeCaret+window.clipboardData.getData("Text")+valueAfterCaret;else{if(!e.clipboardData||!e.clipboardData.getData)return!0;inputValue=valueBeforeCaret+e.clipboardData.getData("text/plain")+valueAfterCaret}var pasteValue=inputValue;if("function"==typeof opts.onBeforePaste){if(pasteValue=opts.onBeforePaste.call(inputmask,inputValue,opts),!1===pasteValue)return e.preventDefault();pasteValue=pasteValue||inputValue}return(0,_inputHandling.checkVal)(this,!0,!1,pasteValue.toString().split(""),e),e.preventDefault()},inputFallBackEvent:function inputFallBackEvent(e){var inputmask=this.inputmask,opts=inputmask.opts,$=inputmask.dependencyLib;function ieMobileHandler(input,inputValue,caretPos){if(_environment.iemobile){var inputChar=inputValue.replace(_positioning.getBuffer.call(inputmask).join(""),"");if(1===inputChar.length){var iv=inputValue.split("");iv.splice(caretPos.begin,0,inputChar),inputValue=iv.join("")}}return inputValue}function analyseChanges(inputValue,buffer,caretPos){for(var frontPart=inputValue.substr(0,caretPos.begin).split(""),backPart=inputValue.substr(caretPos.begin).split(""),frontBufferPart=buffer.substr(0,caretPos.begin).split(""),backBufferPart=buffer.substr(caretPos.begin).split(""),fpl=frontPart.length>=frontBufferPart.length?frontPart.length:frontBufferPart.length,bpl=backPart.length>=backBufferPart.length?backPart.length:backBufferPart.length,bl,i,action="",data=[],marker="~",placeholder;frontPart.length<fpl;)frontPart.push("~");for(;frontBufferPart.length<fpl;)frontBufferPart.push("~");for(;backPart.length<bpl;)backPart.unshift("~");for(;backBufferPart.length<bpl;)backBufferPart.unshift("~");var newBuffer=frontPart.concat(backPart),oldBuffer=frontBufferPart.concat(backBufferPart);for(i=0,bl=newBuffer.length;i<bl;i++)switch(placeholder=_validationTests.getPlaceholder.call(inputmask,_positioning.translatePosition.call(inputmask,i)),action){case"insertText":oldBuffer[i-1]===newBuffer[i]&&caretPos.begin==newBuffer.length-1&&data.push(newBuffer[i]),i=bl;break;case"insertReplacementText":"~"===newBuffer[i]?caretPos.end++:i=bl;break;case"deleteContentBackward":"~"===newBuffer[i]?caretPos.end++:i=bl;break;default:newBuffer[i]!==oldBuffer[i]&&("~"!==newBuffer[i+1]&&newBuffer[i+1]!==placeholder&&void 0!==newBuffer[i+1]||(oldBuffer[i]!==placeholder||"~"!==oldBuffer[i+1])&&"~"!==oldBuffer[i]?"~"===oldBuffer[i+1]&&oldBuffer[i]===newBuffer[i+1]?(action="insertText",data.push(newBuffer[i]),caretPos.begin--,caretPos.end--):newBuffer[i]!==placeholder&&"~"!==newBuffer[i]&&("~"===newBuffer[i+1]||oldBuffer[i]!==newBuffer[i]&&oldBuffer[i+1]===newBuffer[i+1])?(action="insertReplacementText",data.push(newBuffer[i]),caretPos.begin--):"~"===newBuffer[i]?(action="deleteContentBackward",!_positioning.isMask.call(inputmask,_positioning.translatePosition.call(inputmask,i),!0)&&oldBuffer[i]!==opts.radixPoint||caretPos.end++):i=bl:(action="insertText",data.push(newBuffer[i]),caretPos.begin--,caretPos.end--));break}return{action:action,data:data,caret:caretPos}}var input=this,inputValue=input.inputmask._valueGet(!0),buffer=(inputmask.isRTL?_positioning.getBuffer.call(inputmask).slice().reverse():_positioning.getBuffer.call(inputmask)).join(""),caretPos=_positioning.caret.call(inputmask,input,void 0,void 0,!0);if(buffer!==inputValue){inputValue=ieMobileHandler(input,inputValue,caretPos);var changes=analyseChanges(inputValue,buffer,caretPos);switch((input.inputmask.shadowRoot||input.ownerDocument).activeElement!==input&&input.focus(),(0,_inputHandling.writeBuffer)(input,_positioning.getBuffer.call(inputmask)),_positioning.caret.call(inputmask,input,caretPos.begin,caretPos.end,!0),changes.action){case"insertText":case"insertReplacementText":changes.data.forEach(function(entry,ndx){var keypress=new $.Event("keypress");
263keypress.which=entry.charCodeAt(0),inputmask.ignorable=!1,EventHandlers.keypressEvent.call(input,keypress)}),setTimeout(function(){inputmask.$el.trigger("keyup")},0);break;case"deleteContentBackward":var keydown=new $.Event("keydown");keydown.keyCode=_keycode.default.BACKSPACE,EventHandlers.keydownEvent.call(input,keydown);break;default:(0,_inputHandling.applyInputValue)(input,inputValue);break}e.preventDefault()}},compositionendEvent:function compositionendEvent(e){var inputmask=this.inputmask;inputmask.isComposing=!1,inputmask.$el.trigger("input")},setValueEvent:function setValueEvent(e,argument_1,argument_2){var inputmask=this.inputmask,input=this,value=e&&e.detail?e.detail[0]:argument_1;void 0===value&&(value=this.inputmask._valueGet(!0)),(0,_inputHandling.applyInputValue)(this,value),(e.detail&&void 0!==e.detail[1]||void 0!==argument_2)&&_positioning.caret.call(inputmask,this,e.detail?e.detail[1]:argument_2)},focusEvent:function focusEvent(e){var inputmask=this.inputmask,opts=inputmask.opts,input=this,nptValue=this.inputmask._valueGet();opts.showMaskOnFocus&&nptValue!==_positioning.getBuffer.call(inputmask).join("")&&(0,_inputHandling.writeBuffer)(this,_positioning.getBuffer.call(inputmask),_positioning.seekNext.call(inputmask,_positioning.getLastValidPosition.call(inputmask))),!0!==opts.positionCaretOnTab||!1!==inputmask.mouseEnter||_validation.isComplete.call(inputmask,_positioning.getBuffer.call(inputmask))&&-1!==_positioning.getLastValidPosition.call(inputmask)||EventHandlers.clickEvent.apply(this,[e,!0]),inputmask.undoValue=_positioning.getBuffer.call(inputmask).join("")}
263,invalidEvent:function invalidEvent(e){this.inputmask.validationEvent=!0},mouseleaveEvent:function mouseleaveEvent(){var inputmask=this.inputmask,opts=inputmask.opts,input=this;inputmask.mouseEnter=!1,opts.clearMaskOnLostFocus&&(this.inputmask.shadowRoot||this.ownerDocument).activeElement!==this&&(0,_inputHandling.HandleNativePlaceholder)(this,inputmask.originalPlaceholder)},clickEvent:function clickEvent(e,tabbed){var inputmask=this.inputmask,input=this;if((this.inputmask.shadowRoot||this.ownerDocument).activeElement===this){var newCaretPosition=_positioning.determineNewCaretPosition.call(inputmask,_positioning.caret.call(inputmask,this),tabbed);void 0!==newCaretPosition&&_positioning.caret.call(inputmask,this,newCaretPosition)}},cutEvent:function cutEvent(e){var inputmask=this.inputmask,maskset=inputmask.maskset,input=this,pos=_positioning.caret.call(inputmask,this),clipboardData=window.clipboardData||e.clipboardData,clipData=inputmask.isRTL?_positioning.getBuffer.call(inputmask).slice(pos.end,pos.begin):_positioning.getBuffer.call(inputmask).slice(pos.begin,pos.end);clipboardData.setData("text",inputmask.isRTL?clipData.reverse().join(""):clipData.join("")),document.execCommand&&document.execCommand("copy"),_validation.handleRemove.call(inputmask,this,_keycode.default.DELETE,pos),(0,_inputHandling.writeBuffer)(this,_positioning.getBuffer.call(inputmask),maskset.p,e,inputmask.undoValue!==_positioning.getBuffer.call(inputmask).join(""))},blurEvent:function blurEvent(e){var inputmask=this.inputmask,opts=inputmask.opts,$=inputmask.dependencyLib,$input=$(this),input=this;if(this.inputmask){(0,_inputHandling.HandleNativePlaceholder)(this,inputmask.originalPlaceholder);var nptValue=this.inputmask._valueGet(),buffer=_positioning.getBuffer.call(inputmask).slice();""!==nptValue&&(opts.clearMaskOnLostFocus&&(-1===_positioning.getLastValidPosition.call(inputmask)&&nptValue===_positioning.getBufferTemplate.call(inputmask).join("")?buffer=[]:_inputHandling.clearOptionalTail.call(inputmask,buffer)),!1===_validation.isComplete.call(inputmask,buffer)&&(setTimeout(function(){$input.trigger("incomplete")},0),opts.clearIncomplete&&(_positioning.resetMaskSet.call(inputmask),buffer=opts.clearMaskOnLostFocus?[]:_positioning.getBufferTemplate.call(inputmask).slice())),(0,_inputHandling.writeBuffer)(this,buffer,void 0,e)),inputmask.undoValue!==_positioning.getBuffer.call(inputmask).join("")&&(inputmask.undoValue=_positioning.getBuffer.call(inputmask).join(""),$input.trigger("change"))}},mouseenterEvent:function mouseenterEvent(){var inputmask=this.inputmask,opts=inputmask.opts,input=this;if(inputmask.mouseEnter=!0,(this.inputmask.shadowRoot||this.ownerDocument).activeElement!==this){var bufferTemplate=(inputmask.isRTL?_positioning.getBufferTemplate.call(inputmask).slice().reverse():_positioning.getBufferTemplate.call(inputmask)).join("");inputmask.placeholder!==bufferTemplate&&this.placeholder!==inputmask.originalPlaceholder&&(inputmask.originalPlaceholder=this.placeholder),opts.showMaskOnHover&&(0,_inputHandling.HandleNativePlaceholder)(this,bufferTemplate)}},submitEvent:function submitEvent(){var inputmask=this.inputmask,opts=inputmask.opts;inputmask.undoValue!==_positioning.getBuffer.call(inputmask).join("")&&inputmask.$el.trigger("change"),opts.clearMaskOnLostFocus&&-1===_positioning.getLastValidPosition.call(inputmask)&&inputmask._valueGet&&inputmask._valueGet()===_positioning.getBufferTemplate.call(inputmask).join("")&&inputmask._valueSet(""),opts.clearIncomplete&&!1===_validation.isComplete.call(inputmask,_positioning.getBuffer.call(inputmask))&&inputmask._valueSet(""),opts.removeMaskOnSubmit&&(inputmask._valueSet(inputmask.unmaskedvalue(),!0),setTimeout(function(){(0,_inputHandling.writeBuffer)(inputmask.el,_positioning.getBuffer.call(inputmask))},0))},resetEvent:function resetEvent(){var inputmask=this.inputmask;inputmask.refreshValue=!0,setTimeout(function(){(0,_inputHandling.applyInputValue)(inputmask.el,inputmask._valueGet(!0))},0)}};exports.EventHandlers=EventHandlers},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.iphone=exports.iemobile=exports.mobile=exports.ie=exports.ua=void 0;var _window=_interopRequireDefault(__webpack_require__(8));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ua=_window.default.navigator&&_window.default.navigator.userAgent||"",ie=0<ua.indexOf("MSIE ")||0<ua.indexOf("Trident/"),mobile="ontouchstart"in _window.default,iemobile=/iemobile/i.test(ua),iphone=/iphone/i.test(ua)&&!iemobile;exports.iphone=iphone,exports.iemobile=iemobile,exports.mobile=mobile,exports.ie=ie,exports.ua=ua},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _canUseDOM=_interopRequireDefault(__webpack_require__(9));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _default=_canUseDOM.default?window:{};exports.default=_default},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var canUseDOM=!("undefined"==typeof window||!window.document||!window.document.createElement),_default=canUseDOM;exports.default=_default},function(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__10__},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.EventRuler=void 0;var _inputmask=_interopRequireDefault(__webpack_require__(2)),_keycode=_interopRequireDefault(__webpack_require__(0)),_positioning=__webpack_require__(1),_inputHandling=__webpack_require__(5);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var EventRuler={on:function on(input,eventName,eventHandler){var $=input.inputmask.dependencyLib,ev=function ev(e){e.originalEvent&&(e=e.originalEvent||e,arguments[0]=e);var that=this,args,inputmask=that.inputmask,opts=inputmask?inputmask.opts:void 0;if(void 0===inputmask&&"FORM"!==this.nodeName){var imOpts=$.data(that,"_inputmask_opts");$(that).off(),imOpts&&new _inputmask.default(imOpts).mask(that)}else{if(["submit","reset","setvalue"].includes(e.type)||"FORM"===this.nodeName||!(that.disabled||that.readOnly&&!("keydown"===e.type&&e.ctrlKey&&67===e.keyCode||!1===opts.tabThrough&&e.keyCode===_keycode.default.TAB))){switch(e.type){case"input":if(!0===inputmask.skipInputEvent||e.inputType&&"insertCompositionText"===e.inputType)return inputmask.skipInputEvent=!1,e.preventDefault();break;case"keydown":inputmask.skipKeyPressEvent=!1,inputmask.skipInputEvent=inputmask.isComposing=e.keyCode===_keycode.default.KEY_229;break;case"keyup":case"compositionend":inputmask.isComposing&&(inputmask.skipInputEvent=!1);break;case"keypress":if(!0===inputmask.skipKeyPressEvent)return e.preventDefault();inputmask.skipKeyPressEvent=!0;break;case"click":case"focus":return inputmask.validationEvent?(inputmask.validationEvent=!1,input.blur(),(0,_inputHandling.HandleNativePlaceholder)(input,(inputmask.isRTL?_positioning.getBufferTemplate.call(inputmask).slice().reverse():_positioning.getBufferTemplate.call(inputmask)).join("")),setTimeout(function(){input.focus()},3e3)):(args=arguments,setTimeout(function(){input.inputmask&&eventHandler.apply(that,args)},0)),!1}var returnVal=eventHandler.apply(that,arguments);return!1===returnVal&&(e.preventDefault(),e.stopPropagation()),returnVal}e.preventDefault()}};["submit","reset"].includes(eventName)?(ev=ev.bind(input),null!==input.form&&$(input.form).on(eventName,ev)):$(input).on(eventName,ev),input.inputmask.events[eventName]=input.inputmask.events[eventName]||[],input.inputmask.events[eventName].push(ev)},off:function off(input,event){if(input.inputmask&&input.inputmask.events){var $=input.inputmask.dependencyLib,events=input.inputmask.events;for(var eventName in event&&(events=[],events[event]=input.inputmask.events[event]),events){for(var evArr=events[eventName];0<evArr.length;){var ev=evArr.pop();["submit","reset"].includes(eventName)?null!==input.form&&$(input.form).off(eventName,ev):$(input).off(eventName,ev)}delete input.inputmask.events[eventName]}}}};exports.EventRuler=EventRuler},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _jquery=_interopRequireDefault(__webpack_require__(10));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}if(void 0===_jquery.default)throw"jQuery not loaded!";var _default=_jquery.default;exports.default=_default},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=_default;var escapeRegexRegex=new RegExp("(\\"+["/",".","*","+","?","|","(",")","[","]","{","}","\\","$","^"].join("|\\")+")","gim");function _default(str){return str.replace(escapeRegexRegex,"\\$1")}},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,__webpack_require__(15),__webpack_require__(23),__webpack_require__(24),__webpack_require__(25);var _inputmask2=_interopRequireDefault(__webpack_require__(2));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _default=_inputmask2.default;exports.default=_default},function(module,exports,__webpack_require__){"use strict";var _inputmask=_interopRequireDefault(__webpack_require__(2)),_positioning=__webpack_require__(1),_validationTests=__webpack_require__(3);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}_inputmask.default.extendDefinitions({A:{validator:"[A-Za-z\u0410-\u044f\u0401\u0451\xc0-\xff\xb5]",casing:"up
263per"},"&":{validator:"[0-9A-Za-z\u0410-\u044f\u0401\u0451\xc0-\xff\xb5]",casing:"upper"},"#":{validator:"[0-9A-Fa-f]",casing:"upper"}});var ipValidatorRegex=new RegExp("25[0-5]|2[0-4][0-9]|[01][0-9][0-9]");function ipValidator(chrs,maskset,pos,strict,opts){return chrs=-1<pos-1&&"."!==maskset.buffer[pos-1]?(chrs=maskset.buffer[pos-1]+chrs,-1<pos-2&&"."!==maskset.buffer[pos-2]?maskset.buffer[pos-2]+chrs:"0"+chrs):"00"+chrs,ipValidatorRegex.test(chrs)}_inputmask.default.extendAliases({cssunit:{regex:"[+-]?[0-9]+\\.?([0-9]+)?(px|em|rem|ex|%|in|cm|mm|pt|pc)"},url:{regex:"(https?|ftp)://.*",autoUnmask:!1,keepStatic:!1,tabThrough:!0},ip:{mask:"i[i[i]].j[j[j]].k[k[k]].l[l[l]]",definitions:{i:{validator:ipValidator},j:{validator:ipValidator},k:{validator:ipValidator},l:{validator:ipValidator}},onUnMask:function onUnMask(maskedValue,unmaskedValue,opts){return maskedValue},inputmode:"numeric"},email:{mask:"*{1,64}[.*{1,64}][.*{1,64}][.*{1,63}]@-{1,63}.-{1,63}[.-{1,63}][.-{1,63}]",greedy:!1,casing:"lower",onBeforePaste:function onBeforePaste(pastedValue,opts){return pastedValue=pastedValue.toLowerCase(),pastedValue.replace("mailto:","")},definitions:{"*":{validator:"[0-9\uff11-\uff19A-Za-z\u0410-\u044f\u0401\u0451\xc0-\xff\xb5!#$%&'*+/=?^_`{|}~-]"},"-":{validator:"[0-9A-Za-z-]"}},onUnMask:function onUnMask(maskedValue,unmaskedValue,opts){return maskedValue},inputmode:"email"},mac:{mask:"##:##:##:##:##:##"},vin:{mask:"V{13}9{4}",definitions:{V:{validator:"[A-HJ-NPR-Za-hj-npr-z\\d]",casing:"upper"}},clearIncomplete:!0,autoUnmask:!0},ssn:{mask:"999-99-9999",postValidation:function postValidation(buffer,pos,c,currentResult,opts,maskset,strict){var bffr=_validationTests.getMaskTemplate.call(this,!0,_positioning.getLastValidPosition.call(this),!0,!0);return/^(?!219-09-9999|078-05-1120)(?!666|000|9.{2}).{3}-(?!00).{2}-(?!0{4}).{4}$/.test(bffr.join(""))}}})},function(module,exports,__webpack_require__){"use strict";function _typeof(obj){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function _typeof(obj){return typeof obj}:function _typeof(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj},_typeof(obj)}"function"!=typeof Object.getPrototypeOf&&(Object.getPrototypeOf="object"===_typeof("test".__proto__)?function(object){return object.__proto__}:function(object){return object.constructor.prototype})},function(module,exports,__webpack_require__){"use strict";Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{value:function value(searchElement,fromIndex){if(null==this)throw new TypeError('"this" is null or not defined');var o=Object(this),len=o.length>>>0;if(0==len)return!1;for(var n=0|fromIndex,k=Math.max(0<=n?n:len-Math.abs(n),0);k<len;){if(o[k]===searchElement)return!0;k++}return!1}})},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.mask=mask;var _keycode=_interopRequireDefault(__webpack_require__(0)),_positioning=__webpack_require__(1),_inputHandling=__webpack_require__(5),_eventruler=__webpack_require__(11),_environment=__webpack_require__(7),_validation=__webpack_require__(4),_eventhandlers=__webpack_require__(6);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function mask(){var inputmask=this,opts=this.opts,el=this.el,$=this.dependencyLib;function isElementTypeSupported(input,opts){function patchValueProperty(npt){var valueGet,valueSet;function patchValhook(type){if($.valHooks&&(void 0===$.valHooks[type]||!0!==$.valHooks[type].inputmaskpatch)){var valhookGet=$.valHooks[type]&&$.valHooks[type].get?$.valHooks[type].get:function(elem){return elem.value},valhookSet=$.valHooks[type]&&$.valHooks[type].set?$.valHooks[type].set:function(elem,value){return elem.value=value,elem};$.valHooks[type]={get:function get(elem){if(elem.inputmask){if(elem.inputmask.opts.autoUnmask)return elem.inputmask.unmaskedvalue();var result=valhookGet(elem);return-1!==_positioning.getLastValidPosition.call(inputmask,void 0,void 0,elem.inputmask.maskset.validPositions)||!0!==opts.nullable?result:""}return valhookGet(elem)},set:function set(elem,value){var result=valhookSet(elem,value);return elem.inputmask&&(0,_inputHandling.applyInputValue)(elem,value),result},inputmaskpatch:!0}}}function getter(){return this.inputmask?this.inputmask.opts.autoUnmask?this.inputmask.unmaskedvalue():-1!==_positioning.getLastValidPosition.call(inputmask)||!0!==opts.nullable?(this.inputmask.shadowRoot||this.ownerDocument).activeElement===this&&opts.clearMaskOnLostFocus?(inputmask.isRTL?_inputHandling.clearOptionalTail.call(inputmask,_positioning.getBuffer.call(inputmask).slice()).reverse():_inputHandling.clearOptionalTail.call(inputmask,_positioning.getBuffer.call(inputmask).slice())).join(""):valueGet.call(this):"":valueGet.call(this)}function setter(value){valueSet.call(this,value),this.inputmask&&(0,_inputHandling.applyInputValue)(this,value)}function installNativeValueSetFallback(npt){_eventruler.EventRuler.on(npt,"mouseenter",function(){var input=this,value=this.inputmask._valueGet(!0);value!==(inputmask.isRTL?_positioning.getBuffer.call(inputmask).reverse():_positioning.getBuffer.call(inputmask)).join("")&&(0,_inputHandling.applyInputValue)(this,value)})}if(!npt.inputmask.__valueGet){if(!0!==opts.noValuePatching){if(Object.getOwnPropertyDescriptor){var valueProperty=Object.getPrototypeOf?Object.getOwnPropertyDescriptor(Object.getPrototypeOf(npt),"value"):void 0;
263valueProperty&&valueProperty.get&&valueProperty.set?(valueGet=valueProperty.get,valueSet=valueProperty.set,Object.defineProperty(npt,"value",{get:getter,set:setter,configurable:!0})):"input"!==npt.tagName.toLowerCase()&&(valueGet=function valueGet(){return this.textContent},valueSet=function valueSet(value){this.textContent=value},Object.defineProperty(npt,"value",{get:getter,set:setter,configurable:!0}))}else document.__lookupGetter__&&npt.__lookupGetter__("value")&&(valueGet=npt.__lookupGetter__("value"),valueSet=npt.__lookupSetter__("value"),npt.__defineGetter__("value",getter),npt.__defineSetter__("value",setter));npt.inputmask.__valueGet=valueGet,npt.inputmask.__valueSet=valueSet}npt.inputmask._valueGet=function(overruleRTL){return inputmask.isRTL&&!0!==overruleRTL?valueGet.call(this.el).split("").reverse().join(""):valueGet.call(this.el)},npt.inputmask._valueSet=function(value,overruleRTL){valueSet.call(this.el,null==value?"":!0!==overruleRTL&&inputmask.isRTL?value.split("").reverse().join(""):value)},void 0===valueGet&&(valueGet=function valueGet(){return this.value},valueSet=function valueSet(value){this.value=value},patchValhook(npt.type),installNativeValueSetFallback(npt))}}"textarea"!==input.tagName.toLowerCase()&&opts.ignorables.push(_keycode.default.ENTER);var elementType=input.getAttribute("type"),isSupported="input"===input.tagName.toLowerCase()&&opts.supportsInputType.includes(elementType)||input.isContentEditable||"textarea"===input.tagName.toLowerCase();if(!isSupported)if("input"===input.tagName.toLowerCase()){var el=document.createElement("input");el.setAttribute("type",elementType),isSupported="text"===el.type,el=null}else isSupported="partial";return!1!==isSupported?patchValueProperty(input):input.inputmask=void 0,isSupported}_eventruler.EventRuler.off(el);var isSupported=isElementTypeSupported(el,opts);if(!1!==isSupported){inputmask.originalPlaceholder=el.placeholder,inputmask.maxLength=void 0!==el?el.maxLength:void 0,-1===inputmask.maxLength&&(inputmask.maxLength=void 0),"inputMode"in el&&null===el.getAttribute("inputmode")&&(el.inputMode=opts.inputmode,el.setAttribute("inputmode",opts.inputmode)),!0===isSupported&&(opts.showMaskOnFocus=opts.showMaskOnFocus&&-1===["cc-number","cc-exp"].indexOf(el.autocomplete),_environment.iphone&&(opts.insertModeVisual=!1),_eventruler.EventRuler.on(el,"submit",_eventhandlers.EventHandlers.submitEvent),_eventruler.EventRuler.on(el,"reset",_eventhandlers.EventHandlers.resetEvent),_eventruler.EventRuler.on(el,"blur",_eventhandlers.EventHandlers.blurEvent),_eventruler.EventRuler.on(el,"focus",_eventhandlers.EventHandlers.focusEvent),_eventruler.EventRuler.on(el,"invalid",_eventhandlers.EventHandlers.invalidEvent),_eventruler.EventRuler.on(el,"click",_eventhandlers.EventHandlers.clickEvent),_eventruler.EventRuler.on(el,"mouseleave",_eventhandlers.EventHandlers.mouseleaveEvent),_eventruler.EventRuler.on(el,"mouseenter",_eventhandlers.EventHandlers.mouseenterEvent),_eventruler.EventRuler.on(el,"paste",_eventhandlers.EventHandlers.pasteEvent),_eventruler.EventRuler.on(el,"cut",_eventhandlers.EventHandlers.cutEvent),_eventruler.EventRuler.on(el,"complete",opts.oncomplete),_eventruler.EventRuler.on(el,"incomplete",opts.onincomplete),_eventruler.EventRuler.on(el,"cleared",opts.oncleared),!0!==opts.inputEventOnly&&(_eventruler.EventRuler.on(el,"keydown",_eventhandlers.EventHandlers.keydownEvent),_eventruler.EventRuler.on(el,"keypress",_eventhandlers.EventHandlers.keypressEvent),_eventruler.EventRuler.on(el,"keyup",_eventhandlers.EventHandlers.keyupEvent)),(_environment.mobile||opts.inputEventOnly)&&el.removeAttribute("maxLength"),_eventruler.EventRuler.on(el,"input",_eventhandlers.EventHandlers.inputFallBackEvent),_eventruler.EventRuler.on(el,"compositionend",_eventhandlers.EventHandlers.compositionendEvent)),_eventruler.EventRuler.on(el,"setvalue",_eventhandlers.EventHandlers.setValueEvent),inputmask.undoValue=_positioning.getBufferTemplate.call(inputmask).join("");var activeElement=(el.inputmask.shadowRoot||el.ownerDocument).activeElement;if(""!==el.inputmask._valueGet(!0)||!1===opts.clearMaskOnLostFocus||activeElement===el){(0,_inputHandling.applyInputValue)(el,el.inputmask._valueGet(!0),opts);var buffer=_positioning.getBuffer.call(inputmask).slice();!1===_validation.isComplete.call(inputmask,buffer)&&opts.clearIncomplete&&_positioning.resetMaskSet.call(inputmask),opts.clearMaskOnLostFocus&&activeElement!==el&&(-1===_positioning.getLastValidPosition.call(inputmask)?buffer=[]:_inputHandling.clearOptionalTail.call(inputmask,buffer)),(!1===opts.clearMaskOnLostFocus||opts.showMaskOnFocus&&activeElement===el||""!==el.inputmask._valueGet(!0))&&(0,_inputHandling.writeBuffer)(el,buffer),activeElement===el&&_positioning.caret.call(inputmask,el,_positioning.seekNext.call(inputmask,_positioning.getLastValidPosition.call(inputmask)))}}}},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.generateMaskSet=generateMaskSet,exports.analyseMask=analyseMask;var _inputmask=_interopRequireDefault(__webpack_require__(12)),_masktoken=_interopRequireDefault(__webpack_require__(20));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function generateMaskSet(opts,nocache){var ms;function generateMask(mask,metadata,opts){var regexMask=!1,masksetDefinition,maskdefKey;if(null!==mask&&""!==mask||(regexMask=null!==opts.regex,mask=regexMask?(mask=opts.regex,mask.replace(/^(\^)(.*)(\$)$/,"$2")):(regexMask=!0,".*")),1===mask.length&&!1===opts.greedy&&0!==opts.repeat&&(opts.placeholder=""),0<opts.repeat||"*"===opts.repeat||"+"===opts.repeat){var repeatStart="*"===opts.repeat?0:"+"===opts.repeat?1:opts.repeat;mask=opts.groupmarker[0]+mask+opts.groupmarker[1]+opts.quantifiermarker[0]+repeatStart+","+opts.repeat+opts.quantifiermarker[1]}return maskdefKey=regexMask?"regex_"+opts.regex:opts.numericInput?mask.split("").reverse().join(""):mask,!1!==opts.keepStatic&&(maskdefKey="ks_"+maskdefKey),void 0===Inputmask.prototype.masksCache[maskdefKey]||!0===nocache?(masksetDefinition={mask:mask,maskToken:Inputmask.prototype.anal
263yseMask(mask,regexMask,opts),validPositions:{},_buffer:void 0,buffer:void 0,tests:{},excludes:{},metadata:metadata,maskLength:void 0,jitOffset:{}},!0!==nocache&&(Inputmask.prototype.masksCache[maskdefKey]=masksetDefinition,masksetDefinition=_inputmask.default.extend(!0,{},Inputmask.prototype.masksCache[maskdefKey]))):masksetDefinition=_inputmask.default.extend(!0,{},Inputmask.prototype.masksCache[maskdefKey]),masksetDefinition}if("function"==typeof opts.mask&&(opts.mask=opts.mask(opts)),Array.isArray(opts.mask)){if(1<opts.mask.length){null===opts.keepStatic&&(opts.keepStatic=!0);var altMask=opts.groupmarker[0];return(opts.isRTL?opts.mask.reverse():opts.mask).forEach(function(msk){1<altMask.length&&(altMask+=opts.groupmarker[1]+opts.alternatormarker+opts.groupmarker[0]),void 0!==msk.mask&&"function"!=typeof msk.mask?altMask+=msk.mask:altMask+=msk}),altMask+=opts.groupmarker[1],generateMask(altMask,opts.mask,opts)}opts.mask=opts.mask.pop()}return null===opts.keepStatic&&(opts.keepStatic=!1),ms=opts.mask&&void 0!==opts.mask.mask&&"function"!=typeof opts.mask.mask?generateMask(opts.mask.mask,opts.mask,opts):generateMask(opts.mask,opts.mask,opts),ms}function analyseMask(mask,regexMask,opts){var tokenizer=/(?:[?*+]|\{[0-9+*]+(?:,[0-9+*]*)?(?:\|[0-9+*]*)?\})|[^.?*+^${[]()|\\]+|./g,regexTokenizer=/\[\^?]?(?:[^\\\]]+|\\[\S\s]?)*]?|\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9][0-9]*|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|c[A-Za-z]|[\S\s]?)|\((?:\?[:=!]?)?|(?:[?*+]|\{[0-9]+(?:,[0-9]*)?\})\??|[^.?*+^${[()|\\]+|./g,escaped=!1,currentToken=new _masktoken.default,match,m,openenings=[],maskTokens=[],openingToken,currentOpeningToken,alternator,lastMatch,closeRegexGroup=!1;function insertTestDefinition(mtoken,element,position){position=void 0!==position?position:mtoken.matches.length;var prevMatch=mtoken.matches[position-1];if(regexMask)0===element.indexOf("[")||escaped&&/\\d|\\s|\\w]/i.test(element)||"."===element?mtoken.matches.splice(position++,0,{fn:new RegExp(element,opts.casing?"i":""),static:!1,optionality:!1,newBlockMarker:void 0===prevMatch?"master":prevMatch.def!==element,casing:null,def:element,placeholder:void 0,nativeDef:element}):(escaped&&(element=element[element.length-1]),element.split("").forEach(function(lmnt,ndx){prevMatch=mtoken.matches[position-1],mtoken.matches.splice(position++,0,{fn:/[a-z]/i.test(opts.staticDefinitionSymbol||lmnt)?new RegExp("["+(opts.staticDefinitionSymbol||lmnt)+"]",opts.casing?"i":""):null,static:!0,optionality:!1,newBlockMarker:void 0===prevMatch?"master":prevMatch.def!==lmnt&&!0!==prevMatch.static,casing:null,def:opts.staticDefinitionSymbol||lmnt,placeholder:void 0!==opts.staticDefinitionSymbol?lmnt:void 0,nativeDef:(escaped?"'":"")+lmnt})})),escaped=!1;else{var maskdef=opts.definitions&&opts.definitions[element]||opts.usePrototypeDefinitions&&Inputmask.prototype.definitions[element];maskdef&&!escaped?mtoken.matches.splice(position++,0,{fn:maskdef.validator?"string"==typeof maskdef.validator?new RegExp(maskdef.validator,opts.casing?"i":""):new function(){this.test=maskdef.validator}:new RegExp("."),static:maskdef.static||!1,optionality:!1,newBlockMarker:void 0===prevMatch?"master":prevMatch.def!==(maskdef.definitionSymbol||element),casing:maskdef.casing,def:maskdef.definitionSymbol||element,placeholder:maskdef.placeholder,nativeDef:element,generated:maskdef.generated}):(mtoken.matches.splice(position++,0,{fn:/[a-z]/i.test(opts.staticDefinitionSymbol||element)?new RegExp("["+(opts.staticDefinitionSymbol||element)+"]",opts.casing?"i":""):null,static:!0,optionality:!1,newBlockMarker:void 0===prevMatch?"master":prevMatch.def!==element&&!0!==prevMatch.static,casing:null,def:opts.staticDefinitionSymbol||element,placeholder:void 0!==opts.staticDefinitionSymbol?element:void 0,nativeDef:(escaped?"'":"")+element}),escaped=!1)}}function verifyGroupMarker(maskToken){maskToken&&maskToken.matches&&maskToken.matches.forEach(function(token,ndx){var nextToken=maskToken.matches[ndx+1];(void 0===nextToken||void 0===nextToken.matches||!1===nextToken.isQuantifier)&&token&&token.isGroup&&(token.isGroup=!1,regexMask||(insertTestDefinition(token,opts.groupmarker[0],0),!0!==token.openGroup&&insertTestDefinition(token,opts.groupmarker[1]))),verifyGroupMarker(token)})}function defaultCase(){if(0<openenings.length){if(currentOpeningToken=openenings[openenings.length-1],insertTestDefinition(currentOpeningToken,m),currentOpeningToken.isAlternator){alternator=openenings.pop();for(var mndx=0;mndx<alternator.matches.length;mndx++)alternator.matches[mndx].isGroup&&(alternator.matches[mndx].isGroup=!1);0<openenings.length?(currentOpeningToken=openenings[openenings.length-1],currentOpeningToken.matches.push(alternator)):currentToken.matches.push(alternator)}}else insertTestDefinition(currentToken,m)}function reverseTokens(maskToken){function reverseStatic(st){return st===opts.optionalmarker[0]?st=opts.optionalmarker[1]:st===opts.optionalmarker[1]?st=opts.optionalmarker[0]:st===opts.groupmarker[0]?st=opts.groupmarker[1]:st===opts.groupmarker[1]&&(st=opts.groupmarker[0]),st}for(var match in maskToken.matches=maskToken.matches.reverse(),maskToken.matches)if(Object.prototype.hasOwnProperty.call(maskToken.matches,match)){var intMatch=parseInt(match);if(maskToken.matches[match].isQuantifier&&maskToken.matches[intMatch+1]&&maskToken.matches[intMatch+1].isGroup){var qt=maskToken.matches[match];maskToken.matches.splice(match,1),maskToken.matches.splice(intMatch+1,0,qt)}void 0!==maskToken.matches[match].matches?maskToken.matches[match]=reverseTokens(maskToken.matches[match]):maskToken.matches[match]=reverseStatic(maskToken.matches[match])}return maskToken}function groupify(matches){var groupToken=new _masktoken.default(!0);return groupToken.openGroup=!1,groupToken.matches=matches,groupToken}function closeGroup(){if(openingToken=openenings.pop(),openingToken.openGroup=!1,void 0!==openingToken)if(0<openenings.length){if(currentOpeningToken=openenings[openenings.length-1],currentOpeningToken.matches.push(openingToken),currentOpeningToken.isAlternator){alternator=openenings.pop();for(var mndx=0;mndx<alternator.matches.length;mndx++)alternator.matches[mndx].isGroup=!1,alternator.matches[mndx].alternatorGroup=!1;0<openenings.length?(currentOpeningToken=openenings[openenings.length-1],currentOpeningToken.matches.push(alternator)):currentToken.matches.push(alternator)}}else currentToken.matches.push(openingToken);else defaultCase()}function groupQuantifier(matches){var lastMatch=matches.pop();return lastMatch.isQuantifier&&(lastMatch=groupify([matches.pop(),lastMatch])),lastMatch}for(regexMask&&(opts.optionalmarker[0]=void 0,opts.optionalmarker[1]=void 0);match=regexMask?regexTokenizer.exec(mask):tokenizer.exec(mask);){if(m=match[0],regexMask)switch(m.charAt(0)){case"?":m="{0,1}";break;case"+":case"*":m="{"+m+"}";break;case"|":if(0===openenings.length){var altRegexGroup=groupify(currentToken.matches);altRegexGroup.openGroup=!0,openenings.push(altRegexGroup),currentToken.matches=[],closeRegexGroup=!0}break}if(escaped)defaultCase();else switch(m.charAt(0)){case"$":case"^":regexMask||defaultCase();break;case"(?=":openenings.push(new _masktoken.default(!0));break;case"(?!":openenings.push(new _masktoken.default(!0));break;case"(?<=":openenings.push(new _masktoken.default(!0));break;case"(?<!":openenings.push(new _masktoken.default(!0));break;case opts.escapeChar:escaped=!0,regexMask&&defaultCase();break;case opts.optionalmarker[1]:case opts.groupmarker[1]:closeGroup();break;case opts.optionalmarker[0]:openenings.push(new _masktoken.default(!1,!0));break;case opts.groupmarker[0]:openenings.push(new _masktoken.default(!0));break;case opts.quantifiermarker[0]:var quantifier=new _masktoken.default(!1,!1,!0);m=m.replace(/[{}]/g,"");var mqj=m.split("|"),mq=mqj[0].split(","),mq0=isNaN(mq[0])?mq[0]:parseInt(mq[0]),mq1=1===mq.length?mq0:isNaN(mq[1])?mq[1]:parseInt(mq[1]);"*"!==mq0&&"+"!==mq0||(mq0="*"===mq1?0:1),quantifier.quantifier={min:mq0,max:mq1,jit:mqj[1]};var matches=0<openenings.length?openenings[openenings.length-1].matches:currentToken.matches;if(match=matches.pop(),match.isAlternator){matches.push(match),matches=match.matches;var groupToken=new _masktoken.default(!0),tmpMatch=matches.pop();matches.push(groupToken),matches=groupToken.matches,match=tmpMatch}match.isGroup||(match=groupify([match])),matches.push(match),matches.push(quantifier);break;case opts.alternatormarker:if(0<openenings.length){currentOpeningToken=openenings[openenings.length-1];var subToken=currentOpeningToken.matches[currentOpeningToken.matches.length-1];lastMatch=currentOpeningToken.openGroup&&(void 0===subToken.matches||!1===subToken.isGroup&&!1===subToken.isAlternator)?openenings.pop():groupQuantifier(currentOpeningToken.matches)}else lastMatch=groupQuantifier(currentToken.matches);if(lastMatch.isAlternator)openenings.push(lastMatch);else if(lastMatch.alternatorGroup?(alternator=openenings.pop(),lastMatch.alternatorGroup=!1):alternator=new _masktoken.default(!1,!1,!1,!0),alternator.matches.push(lastMatch),openenings.push(alternator),lastMatch.openGroup){lastMatch.openGroup=!1;var alternatorGroup=new _masktoken.default(!0);alternatorGroup.alternatorGroup=!0,openenings.push(alternatorGroup)}break;default:defaultCase()}}for(closeRegexGroup&&closeGroup();0<openenings.length;)openingToken=openenings.pop(),currentToken.matches.push(openingToken);return 0<currentToken.matches.length&&(verifyGroupMarker(currentToken),maskTokens.push(currentToken)),(opts.numericInput||opts.isRTL)&&reverseTokens(maskTokens[0]),maskTokens}
263},function(module,exports,__webpack_require__){"use strict";function _default(isGroup,isOptional,isQuantifier,isAlternator){this.matches=[],this.openGroup=isGroup||!1,this.alternatorGroup=!1,this.isGroup=isGroup||!1,this.isOptional=isOptional||!1,this.isQuantifier=isQuantifier||!1,this.isAlternator=isAlternator||!1,this.quantifier={min:1,max:1}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=_default},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default={9:{validator:"[0-9\uff10-\uff19]",definitionSymbol:"*"},a:{validator:"[A-Za-z\u0410-\u044f\u0401\u0451\xc0-\xff\xb5]",definitionSymbol:"*"},"*":{validator:"[0-9\uff10-\uff19A-Za-z\u0410-\u044f\u0401\u0451\xc0-\xff\xb5]"}};exports.default=_default},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default={_maxTestPos:500,placeholder:"_",optionalmarker:["[","]"],quantifiermarker:["{","}"],groupmarker:["(",")"],alternatormarker:"|",escapeChar:"\\",mask:null,regex:null,oncomplete:function oncomplete(){},onincomplete:function onincomplete(){},oncleared:function oncleared(){},repeat:0,greedy:!1,autoUnmask:!1,removeMaskOnSubmit:!1,clearMaskOnLostFocus:!0,insertMode:!0,insertModeVisual:!0,clearIncomplete:!1,alias:null,onKeyDown:function onKeyDown(){},onBeforeMask:null,onBeforePaste:function onBeforePaste(pastedValue,opts){return"function"==typeof opts.onBeforeMask?opts.onBeforeMask.call(this,pastedValue,opts):pastedValue},onBeforeWrite:null,onUnMask:null,showMaskOnFocus:!0,showMaskOnHover:!0,onKeyValidation:function onKeyValidation(){},skipOptionalPartCharacter:" ",numericInput:!1,rightAlign:!1,undoOnEscape:!0,radixPoint:"",_radixDance:!1,groupSeparator:"",keepStatic:null,positionCaretOnTab:!0,tabThrough:!1,supportsInputType:["text","tel","url","password","search"],ignorables:[8,9,19,27,33,34,35,36,37,38,39,40,45,46,93,112,113,114,115,116,117,118,119,120,121,122,123,0,229],isComplete:null,preValidation:null,postValidation:null,staticDefinitionSymbol:void 0,jitMasking:!1,nullable:!0,inputEventOnly:!1,noValuePatching:!1,positionCaretOnClick:"lvp",casing:null,inputmode:"text",importDataAttributes:!0,shiftPositions:!0,usePrototypeDefinitions:!0};exports.default=_default},function(module,exports,__webpack_require__){"use strict";var _inputmask=_interopRequireDefault(__webpack_require__(2)),_keycode=_interopRequireDefault(__webpack_require__(0)),_escapeRegex=_interopRequireDefault(__webpack_require__(13)),_positioning=__webpack_require__(1);function _typeof(obj){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function _typeof(obj){return typeof obj}:function _typeof(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj},_typeof(obj)}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var $=_inputmask.default.dependencyLib,currentYear=(new Date).getFullYear(),formatCode={d:["[1-9]|[12][0-9]|3[01]",Date.prototype.setDate,"day",Date.prototype.getDate],dd:["0[1-9]|[12][0-9]|3[01]",Date.prototype.setDate,"day",function(){return pad(Date.prototype.getDate.call(this),2)}],ddd:[""],dddd:[""],m:["[1-9]|1[012]",Date.prototype.setMonth,"month",function(){return Date.prototype.getMonth.call(this)+1}],mm:["0[1-9]|1[012]",Date.prototype.setMonth,"month",function(){return pad(Date.prototype.getMonth.call(this)+1,2)}],mmm:[""],mmmm:[""],yy:["[0-9]{2}",Date.prototype.setFullYear,"year",function(){return pad(Date.prototype.getFullYear.call(this),2)}],yyyy:["[0-9]{4}",Date.prototype.setFullYear,"year",function(){return pad(Date.prototype.getFullYear.call(this),4)}],h:["[1-9]|1[0-2]",Date.prototype.setHours,"hours",Date.prototype.getHours],hh:["0[1-9]|1[0-2]",Date.prototype.setHours,"hours",function(){return pad(Date.prototype.getHours.call(this),2)}],hx:[function(x){return"[0-9]{".concat(x,"}")},Date.prototype.setHours,"hours",function(x){return Date.prototype.getHours}],H:["1?[0-9]|2[0-3]",Date.prototype.setHours,"hours",Date.prototype.getHours],HH:["0[0-9]|1[0-9]|2[0-3]",Date.prototype.setHours,"hours",function(){return pad(Date.prototype.getHours.call(this),2)}],Hx:[function(x){return"[0-9]{".concat(x,"}")},Date.prototype.setHours,"hours",function(x){return function(){return pad(Date.prototype.getHours.call(this),x)}}],M:["[1-5]?[0-9]",Date.prototype.setMinutes,"minutes",Date.prototype.getMinutes],MM:["0[0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]",Date.prototype.setMinutes,"minutes",function(){return pad(Date.prototype.getMinutes.call(this),2)}],s:["[1-5]?[0-9]",Date.prototype.setSeconds,"seconds",Date.prototype.getSeconds],ss:["0[0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]",Date.prototype.setSeconds,"seconds",function(){return pad(Date.prototype.getSeconds.call(this),2)}],l:["[0-9]{3}",Date.prototype.setMilliseconds,"milliseconds",function(){return pad(Date.prototype.getMilliseconds.call(this),3)}],L:["[0-9]{2}",Date.prototype.setMilliseconds,"milliseconds",function(){return pad(Date.prototype.getMilliseconds.call(this),2)}],t:["[ap]"],tt:["[ap]m"],T:["[AP]"],TT:["[AP]M"],Z:[""],o:[""],S:[""]},formatAlias={isoDate:"yyyy-mm-dd",isoTime:"HH:MM:ss",isoDateTime:"yyyy-mm-dd'T'HH:MM:ss",isoUtcDateTime:"UTC:yyyy-mm-dd'T'HH:MM:ss'Z'"};function formatcode(match){var dynMatches=new RegExp("\\d+$").exec(match[0]);if(dynMatches&&void 0!==dynMatches[0]){var fcode=formatCode[match[0][0]+"x"].slice("");return fcode[0]=fcode[0](dynMatches[0]),fcode[3]=fcode[3](dynMatches[0]),fcode}if(formatCode[match[0]])return formatCode[match[0]]}function getTokenizer(opts){if(!opts.tokenizer){var tokens=[],dyntokens=[];for(var ndx in formatCode)if(/\.*x$/.test(ndx)){var dynToken=ndx[0]+"\\d+";-1===dyntokens.indexOf(dynToken)&&dyntokens.push(dynToken)}else-1===tokens.indexOf(ndx[0])&&tokens.push(ndx[0]);
263opts.tokenizer="("+(0<dyntokens.length?dyntokens.join("|")+"|":"")+tokens.join("+|")+")+?|.",opts.tokenizer=new RegExp(opts.tokenizer,"g")}return opts.tokenizer}function prefillYear(dateParts,currentResult,opts){if(dateParts.year!==dateParts.rawyear){var crrntyear=currentYear.toString(),enteredPart=dateParts.rawyear.replace(/[^0-9]/g,""),currentYearPart=crrntyear.slice(0,enteredPart.length),currentYearNextPart=crrntyear.slice(enteredPart.length);if(2===enteredPart.length&&enteredPart===currentYearPart){var entryCurrentYear=new Date(currentYear,dateParts.month-1,dateParts.day);dateParts.day==entryCurrentYear.getDate()&&(!opts.max||opts.max.date.getTime()>=entryCurrentYear.getTime())&&(dateParts.date.setFullYear(currentYear),dateParts.year=crrntyear,currentResult.insert=[{pos:currentResult.pos+1,c:currentYearNextPart[0]},{pos:currentResult.pos+2,c:currentYearNextPart[1]}])}}return currentResult}function isValidDate(dateParts,currentResult,opts){if(void 0===dateParts.rawday||!isFinite(dateParts.rawday)&&new Date(dateParts.date.getFullYear(),isFinite(dateParts.rawmonth)?dateParts.month:dateParts.date.getMonth()+1,0).getDate()>=dateParts.day||"29"==dateParts.day&&!Number.isFinite(dateParts.rawyear)||new Date(dateParts.date.getFullYear(),isFinite(dateParts.rawmonth)?dateParts.month:dateParts.date.getMonth()+1,0).getDate()>=dateParts.day)return currentResult;if("29"==dateParts.day){var tokenMatch=getTokenMatch(currentResult.pos,opts);if("yyyy"===tokenMatch.targetMatch[0]&&currentResult.pos-tokenMatch.targetMatchIndex==2)return currentResult.remove=currentResult.pos+1,currentResult}else if("02"==dateParts.month&&"30"==dateParts.day&&void 0!==currentResult.c)return dateParts.day="03",dateParts.date.setDate(3),dateParts.date.setMonth(1),currentResult.insert=[{pos:currentResult.pos,c:"0"},{pos:currentResult.pos+1,c:currentResult.c}],currentResult.caret=_positioning.seekNext.call(this,currentResult.pos+1),currentResult;return!1}function isDateInRange(dateParts,result,opts,maskset,fromCheckval){if(!result)return result;if(opts.min){if(dateParts.rawyear){var rawYear=dateParts.rawyear.replace(/[^0-9]/g,""),minYear=opts.min.year.substr(0,rawYear.length),maxYear;if(rawYear<minYear){var tokenMatch=getTokenMatch(result.pos,opts);if(rawYear=dateParts.rawyear.substr(0,result.pos-tokenMatch.targetMatchIndex+1).replace(/[^0-9]/g,"0"),minYear=opts.min.year.substr(0,rawYear.length),minYear<=rawYear)return result.remove=tokenMatch.targetMatchIndex+rawYear.length,result;if(rawYear="yyyy"===tokenMatch.targetMatch[0]?dateParts.rawyear.substr(1,1):dateParts.rawyear.substr(0,1),minYear=opts.min.year.substr(2,1),maxYear=opts.max?opts.max.year.substr(2,1):rawYear,1===rawYear.length&&minYear<=rawYear&&rawYear<=maxYear&&!0!==fromCheckval)return"yyyy"===tokenMatch.targetMatch[0]?(result.insert=[{pos:result.pos+1,c:rawYear,strict:!0}],result.caret=result.pos+2,maskset.validPositions[result.pos].input=opts.min.year[1]):(result.insert=[{pos:result.pos+1,c:opts.min.year[1],strict:!0},{pos:result.pos+2,c:rawYear,strict:!0}],result.caret=result.pos+3,maskset.validPositions[result.pos].input=opts.min.year[0]),result;result=!1}}result&&dateParts.year&&dateParts.year===dateParts.rawyear&&opts.min.date.getTime()==opts.min.date.getTime()&&(result=opts.min.date.getTime()<=dateParts.date.getTime())}return result&&opts.max&&opts.max.date.getTime()==opts.max.date.getTime()&&(result=opts.max.date.getTime()>=dateParts.date.getTime()),result}function parse(format,dateObjValue,opts,raw){var mask="",match,fcode;for(getTokenizer(opts).lastIndex=0;match=getTokenizer(opts).exec(format);)if(void 0===dateObjValue)if(fcode=formatcode(match))mask+="("+fcode[0]+")";else switch(match[0]){case"[":mask+="(";break;case"]":mask+=")?";break;default:mask+=(0,_escapeRegex.default)(match[0])}else if(fcode=formatcode(match))if(!0!==raw&&fcode[3]){var getFn=fcode[3];mask+=getFn.call(dateObjValue.date)}else fcode[2]?mask+=dateObjValue["raw"+fcode[2]]:mask+=match[0];else mask+=match[0];return mask}function pad(val,len,right){for(val=String(val),len=len||2;val.length<len;)val=right?val+"0":"0"+val;return val}function analyseMask(maskString,format,opts){var dateObj={date:new Date(1,0,1)},targetProp,mask=maskString,match,dateOperation;
263function setValue(dateObj,value,opts){if(dateObj[targetProp]=value.replace(/[^0-9]/g,"0"),dateObj["raw"+targetProp]=value,void 0!==dateOperation){var datavalue=dateObj[targetProp];("day"===targetProp&&29===parseInt(datavalue)||"month"===targetProp&&2===parseInt(datavalue))&&(29!==parseInt(dateObj.day)||2!==parseInt(dateObj.month)||""!==dateObj.year&&void 0!==dateObj.year||dateObj.date.setFullYear(2012,1,29)),"day"===targetProp&&0===parseInt(datavalue)&&(datavalue=1),"month"===targetProp&&(datavalue=parseInt(datavalue),0<datavalue)&&(datavalue-=1),"year"===targetProp&&datavalue.length<4&&(datavalue=pad(datavalue,4,!0)),""!==datavalue&&dateOperation.call(dateObj.date,datavalue)}}if("string"==typeof mask){for(getTokenizer(opts).lastIndex=0;match=getTokenizer(opts).exec(format);){var dynMatches=new RegExp("\\d+$").exec(match[0]),fcode=dynMatches?match[0][0]+"x":match[0],value=void 0;if(dynMatches){var lastIndex=getTokenizer(opts).lastIndex,tokanMatch=getTokenMatch(match.index,opts);getTokenizer(opts).lastIndex=lastIndex,value=mask.slice(0,mask.indexOf(tokanMatch.nextMatch[0]))}else value=mask.slice(0,fcode.length);Object.prototype.hasOwnProperty.call(formatCode,fcode)&&(targetProp=formatCode[fcode][2],dateOperation=formatCode[fcode][1],setValue(dateObj,value,opts)),mask=mask.slice(value.length)}return dateObj}if(mask&&"object"===_typeof(mask)&&Object.prototype.hasOwnProperty.call(mask,"date"))return mask}function importDate(dateObj,opts){return parse(opts.inputFormat,{date:dateObj},opts)}function getTokenMatch(pos,opts){var calcPos=0,targetMatch,match,matchLength=0;for(getTokenizer(opts).lastIndex=0;match=getTokenizer(opts).exec(opts.inputFormat);){var dynMatches=new RegExp("\\d+$").exec(match[0]);if(matchLength=dynMatches?parseInt(dynMatches[0]):match[0].length,calcPos+=matchLength,pos<=calcPos){targetMatch=match,match=getTokenizer(opts).exec(opts.inputFormat);break}}return{targetMatchIndex:calcPos-matchLength,nextMatch:match,targetMatch:targetMatch}}_inputmask.default.extendAliases({datetime:{mask:function mask(opts){return opts.numericInput=!1,formatCode.S=opts.i18n.ordinalSuffix.join("|"),opts.inputFormat=formatAlias[opts.inputFormat]||opts.inputFormat,opts.displayFormat=formatAlias[opts.displayFormat]||opts.displayFormat||opts.inputFormat,opts.outputFormat=formatAlias[opts.outputFormat]||opts.outputFormat||opts.inputFormat,opts.placeholder=""!==opts.placeholder?opts.placeholder:opts.inputFormat.replace(/[[\]]/,""),opts.regex=parse(opts.inputFormat,void 0,opts),opts.min=analyseMask(opts.min,opts.inputFormat,opts),opts.max=analyseMask(opts.max,opts.inputFormat,opts),null},placeholder:"",inputFormat:"isoDateTime",displayFormat:void 0,outputFormat:void 0,min:null,max:null,skipOptionalPartCharacter:"",i18n:{dayNames:["Mon","Tue","Wed","Thu","Fri","Sat","Sun","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],monthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","January","February","March","April","May","June","July","August","September","October","November","December"],ordinalSuffix:["st","nd","rd","th"]},preValidation:function preValidation(buffer,pos,c,isSelection,opts,maskset,caretPos,strict){if(strict)return!0;if(isNaN(c)&&buffer[pos]!==c){var tokenMatch=getTokenMatch(pos,opts);if(tokenMatch.nextMatch&&tokenMatch.nextMatch[0]===c&&1<tokenMatch.targetMatch[0].length){var validator=formatCode[tokenMatch.targetMatch[0]][0];if(new RegExp(validator).test("0"+buffer[pos-1]))return buffer[pos]=buffer[pos-1],buffer[pos-1]="0",{fuzzy:!0,buffer:buffer,refreshFromBuffer:{start:pos-1,end:pos+1},pos:pos+1}}}return!0},postValidation:function postValidation(buffer,pos,c,currentResult,opts,maskset,strict,fromCheckval){var inputmask=this,tokenMatch,validator;if(strict)return!0;if(!1===currentResult&&(tokenMatch=getTokenMatch(pos+1,opts),tokenMatch.targetMatch&&tokenMatch.targetMatchIndex===pos&&1<tokenMatch.targetMatch[0].length&&void 0!==formatCode[tokenMatch.targetMatch[0]]?validator=formatCode[tokenMatch.targetMatch[0]][0]:(tokenMatch=getTokenMatch(pos+2,opts),tokenMatch.targetMatch&&tokenMatch.targetMatchIndex===pos+1&&1<tokenMatch.targetMatch[0].length&&void 0!==formatCode[tokenMatch.targetMatch[0]]&&(validator=formatCode[tokenMatch.targetMatch[0]][0])),void 0!==validator&&(void 0!==maskset.validPositions[pos+1]&&new RegExp(validator).test(c+"0")?(buffer[pos]=c,buffer[pos+1]="0",currentResult={pos:pos+2,caret:pos}):new RegExp(validator).test("0"+c)&&(buffer[pos]="0",buffer[pos+1]=c,currentResult={pos:pos+2})),!1===currentResult))return currentResult;if(currentResult.fuzzy&&(buffer=currentResult.buffer,pos=currentResult.pos),tokenMatch=getTokenMatch(pos,opts),tokenMatch.targetMatch&&tokenMatch.targetMatch[0]&&void 0!==formatCode[tokenMatch.targetMatch[0]]){validator=formatCode[tokenMatch.targetMatch[0]][0];var part=buffer.slice(tokenMatch.targetMatchIndex,tokenMatch.targetMatchIndex+tokenMatch.targetMatch[0].length);!1===new RegExp(validator).test(part.join(""))&&2===tokenMatch.targetMatch[0].length&&maskset.validPositions[tokenMatch.targetMatchIndex]&&maskset.validPositions[tokenMatch.targetMatchIndex+1]&&(maskset.validPositions[tokenMatch.targetMatchIndex+1].input="0")}var result=currentResult,dateParts=analyseMask(buffer.join(""),opts.inputFormat,opts);return result&&dateParts.date.getTime()==dateParts.date.getTime()&&(opts.prefillYear&&(result=prefillYear(dateParts,result,opts)),result=isValidDate.call(this,dateParts,result,opts),result=isDateInRange(dateParts,result,opts,maskset,fromCheckval)),void 0!==pos&&result&&currentResult.pos!==pos?{buffer:parse(opts.inputFormat,dateParts,opts).split(""),refreshFromBuffer:{start:pos,end:currentResult.pos},pos:currentResult.caret||currentResult.pos}:result},onKeyDown:function onKeyDown(e,buffer,caretPos,opts){var input=this;e.ctrlKey&&e.keyCode===_keycode.default.RIGHT&&(this.inputmask._valueSet(importDate(new Date,opts)),$(this).trigger("setvalue"))},onUnMask:function onUnMask(maskedValue,unmaskedValue,opts){return unmaskedValue?parse(opts.outputFormat,analyseMask(maskedValue,opts.inputFormat,opts),opts,!0):unmaskedValue},casing:function casing(elem,test,pos,validPositions){return 0==test.nativeDef.indexOf("[ap]")?elem.toLowerCase():0==test.nativeDef.indexOf("[AP]")?elem.toUpperCase():elem},onBeforeMask:function onBeforeMask(initialValue,opts){return"[object Date]"===Object.prototype.toString.call(initialValue)&&(initialValue=importDate(initialValue,opts)),initialValue},insertMode:!1,shiftPositions:!1,keepStatic:!1,inputmode:"numeric",prefillYear:!0}})},function(module,exports,__webpack_require__){"use strict";var _inputmask=_interopRequireDefault(__webpack_require__(2)),_keycode=_interopRequireDefault(__webpack_require__(0)),_escapeRegex=_interopRequireDefault(__webpack_require__(13));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}
263var $=_inputmask.default.dependencyLib;function autoEscape(txt,opts){for(var escapedTxt="",i=0;i<txt.length;i++)_inputmask.default.prototype.definitions[txt.charAt(i)]||opts.definitions[txt.charAt(i)]||opts.optionalmarker[0]===txt.charAt(i)||opts.optionalmarker[1]===txt.charAt(i)||opts.quantifiermarker[0]===txt.charAt(i)||opts.quantifiermarker[1]===txt.charAt(i)||opts.groupmarker[0]===txt.charAt(i)||opts.groupmarker[1]===txt.charAt(i)||opts.alternatormarker===txt.charAt(i)?escapedTxt+="\\"+txt.charAt(i):escapedTxt+=txt.charAt(i);return escapedTxt}function alignDigits(buffer,digits,opts,force){if(0<buffer.length&&0<digits&&(!opts.digitsOptional||force)){var radixPosition=buffer.indexOf(opts.radixPoint),negationBack=!1;opts.negationSymbol.back===buffer[buffer.length-1]&&(negationBack=!0,buffer.length--),-1===radixPosition&&(buffer.push(opts.radixPoint),radixPosition=buffer.length-1);for(var i=1;i<=digits;i++)isFinite(buffer[radixPosition+i])||(buffer[radixPosition+i]="0")}return negationBack&&buffer.push(opts.negationSymbol.back),buffer}function findValidator(symbol,maskset){var posNdx=0;if("+"===symbol){for(posNdx in maskset.validPositions);posNdx=parseInt(posNdx)}for(var tstNdx in maskset.tests)if(tstNdx=parseInt(tstNdx),posNdx<=tstNdx)for(var ndx=0,ndxl=maskset.tests[tstNdx].length;ndx<ndxl;ndx++)if((void 0===maskset.validPositions[tstNdx]||"-"===symbol)&&maskset.tests[tstNdx][ndx].match.def===symbol)return tstNdx+(void 0!==maskset.validPositions[tstNdx]&&"-"!==symbol?1:0);return posNdx}function findValid(symbol,maskset){var ret=-1;for(var ndx in maskset.validPositions){var tst=maskset.validPositions[ndx];if(tst&&tst.match.def===symbol){ret=parseInt(ndx);break}}return ret}function parseMinMaxOptions(opts){void 0===opts.parseMinMaxOptions&&(null!==opts.min&&(opts.min=opts.min.toString().replace(new RegExp((0,_escapeRegex.default)(opts.groupSeparator),"g"),""),","===opts.radixPoint&&(opts.min=opts.min.replace(opts.radixPoint,".")),opts.min=isFinite(opts.min)?parseFloat(opts.min):NaN,isNaN(opts.min)&&(opts.min=Number.MIN_VALUE)),null!==opts.max&&(opts.max=opts.max.toString().replace(new RegExp((0,_escapeRegex.default)(opts.groupSeparator),"g"),""),","===opts.radixPoint&&(opts.max=opts.max.replace(opts.radixPoint,".")),opts.max=isFinite(opts.max)?parseFloat(opts.max):NaN,isNaN(opts.max)&&(opts.max=Number.MAX_VALUE)),opts.parseMinMaxOptions="done")}function genMask(opts){opts.repeat=0,opts.groupSeparator===opts.radixPoint&&opts.digits&&"0"!==opts.digits&&("."===opts.radixPoint?opts.groupSeparator=",":","===opts.radixPoint?opts.groupSeparator=".":opts.groupSeparator="")," "===opts.groupSeparator&&(opts.skipOptionalPartCharacter=void 0),1<opts.placeholder.length&&(opts.placeholder=opts.placeholder.charAt(0)),"radixFocus"===opts.positionCaretOnClick&&""===opts.placeholder&&(opts.positionCaretOnClick="lvp");var decimalDef="0",radixPointDef=opts.radixPoint;!0===opts.numericInput&&void 0===opts.__financeInput?(decimalDef="1",opts.positionCaretOnClick="radixFocus"===opts.positionCaretOnClick?"lvp":opts.positionCaretOnClick,opts.digitsOptional=!1,isNaN(opts.digits)&&(opts.digits=2),opts._radixDance=!1,radixPointDef=","===opts.radixPoint?"?":"!",""!==opts.radixPoint&&void 0===opts.definitions[radixPointDef]&&(opts.definitions[radixPointDef]={},opts.definitions[radixPointDef].validator="["+opts.radixPoint+"]",opts.definitions[radixPointDef].placeholder=opts.radixPoint,opts.definitions[radixPointDef].static=!0,opts.definitions[radixPointDef].generated=!0)):(opts.__financeInput=!1,opts.numericInput=!0);var mask="[+]",altMask;if(mask+=autoEscape(opts.prefix,opts),""!==opts.groupSeparator?(void 0===opts.definitions[opts.groupSeparator]&&(opts.definitions[opts.groupSeparator]={},opts.definitions[opts.groupSeparator].validator="["+opts.groupSeparator+"]",opts.definitions[opts.groupSeparator].placeholder=opts.groupSeparator,opts.definitions[opts.groupSeparator].static=!0,opts.definitions[opts.groupSeparator].generated=!0),mask+=opts._mask(opts)):mask+="9{+}",void 0!==opts.digits&&0!==opts.digits){var dq=opts.digits.toString().split(",");isFinite(dq[0])&&dq[1]&&isFinite(dq[1])?mask+=radixPointDef+decimalDef+"{"+opts.digits+"}":(isNaN(opts.digits)||0<parseInt(opts.digits))&&(opts.digitsOptional?(altMask=mask+radixPointDef+decimalDef+"{0,"+opts.digits+"}",opts.keepStatic=!0):mask+=radixPointDef+decimalDef+"{"+opts.digits+"}")}return mask+=autoEscape(opts.suffix,opts),mask+="[-]",altMask&&(mask=[altMask+autoEscape(opts.suffix,opts)+"[-]",mask]),opts.greedy=!1,parseMinMaxOptions(opts),mask}function hanndleRadixDance(pos,c,radixPos,maskset,opts){return opts._radixDance&&opts.numericInput&&c!==opts.negationSymbol.back&&pos<=radixPos&&(0<radixPos||c==opts.radixPoint)&&(void 0===maskset.validPositions[pos-1]||maskset.validPositions[pos-1].input!==opts.negationSymbol.back)&&(pos-=1),pos}function decimalValidator(chrs,maskset,pos,strict,opts){var radixPos=maskset.buffer?maskset.buffer.indexOf(opts.radixPoint):-1,result=-1!==radixPos&&new RegExp("[0-9\uff11-\uff19]").test(chrs);return opts._radixDance&&result&&null==maskset.validPositions[radixPos]?{insert:{pos:radixPos===pos?radixPos+1:radixPos,c:opts.radixPoint},pos:pos}:result}function checkForLeadingZeroes(buffer,opts){var numberMatches=new RegExp("(^"+(""!==opts.negationSymbol.front?(0,_escapeRegex.default)(opts.negationSymbol.front)+"?":"")+(0,_escapeRegex.default)(opts.prefix)+")(.*)("+(0,_escapeRegex.default)(opts.suffix)+(""!=opts.negationSymbol.back?(0,_escapeRegex.default)(opts.negationSymbol.back)+"?":"")+"$)").exec(buffer.slice().reverse().join("")),number=numberMatches?numberMatches[2]:"",leadingzeroes=!1;return number&&(number=number.split(opts.radixPoint.charAt(0))[0],leadingzeroes=new RegExp("^[0"+opts.groupSeparator+"]*").exec(number)),!(!leadingzeroes||!(1<leadingzeroes[0].length||0<leadingzeroes[0].length&&leadingzeroes[0].length<number.length))&&leadingzeroes}_inputmask.default.extendAliases({numeric:{mask:genMask,_mask:function _mask(opts){return"("+opts.groupSeparator+"999){+|1}"},digits:"*",digitsOptional:!0,enforceDigitsOnBlur:!1,radixPoint:".",positionCaretOnClick:"radixFocus",_radixDance:!0,groupSeparator:"",allowMinus:!0,negationSymbol:{front:"-",back:""},prefix:"",suffix:"",min:null,max:null,SetMaxOnOverflow:!1,step:1,inputType:"text",unmaskAsNumber:!1,roundingFN:Math.round,inputmode:"decimal",shortcuts:{k:"000",m:"000000"},placeholder:"0",greedy:!1,rightAlign:!0,insertMode:!0,autoUnmask:!1,skipOptionalPartCharacter:"",definitions:{0:{validator:decimalValidator},1:{validator:decimalValidator,definitionSymbol:"9"},"+":{validator:function validator(chrs,maskset,pos,strict,opts){return opts.allowMinus&&
263("-"===chrs||chrs===opts.negationSymbol.front)}},"-":{validator:function validator(chrs,maskset,pos,strict,opts){return opts.allowMinus&&chrs===opts.negationSymbol.back}}},preValidation:function preValidation(buffer,pos,c,isSelection,opts,maskset,caretPos,strict){if(!1!==opts.__financeInput&&c===opts.radixPoint)return!1;var pattern;if(pattern=opts.shortcuts&&opts.shortcuts[c]){if(1<pattern.length)for(var inserts=[],i=0;i<pattern.length;i++)inserts.push({pos:pos+i,c:pattern[i],strict:!1});return{insert:inserts}}var radixPos=buffer.indexOf(opts.radixPoint),initPos=pos;if(pos=hanndleRadixDance(pos,c,radixPos,maskset,opts),"-"===c||c===opts.negationSymbol.front){if(!0!==opts.allowMinus)return!1;var isNegative=!1,front=findValid("+",maskset),back=findValid("-",maskset);return-1!==front&&(isNegative=[front,back]),!1!==isNegative?{remove:isNegative,caret:initPos-opts.negationSymbol.front.length}:{insert:[{pos:findValidator("+",maskset),c:opts.negationSymbol.front,fromIsValid:!0},{pos:findValidator("-",maskset),c:opts.negationSymbol.back,fromIsValid:void 0}],caret:initPos+opts.negationSymbol.back.length}}if(c===opts.groupSeparator)return{caret:initPos};if(strict)return!0;if(-1!==radixPos&&!0===opts._radixDance&&!1===isSelection&&c===opts.radixPoint&&void 0!==opts.digits&&(isNaN(opts.digits)||0<parseInt(opts.digits))&&radixPos!==pos)return{caret:opts._radixDance&&pos===radixPos-1?radixPos+1:radixPos};if(!1===opts.__financeInput)if(isSelection){if(opts.digitsOptional)return{rewritePosition:caretPos.end};if(!opts.digitsOptional){if(caretPos.begin>radixPos&&caretPos.end<=radixPos)return c===opts.radixPoint?{insert:{pos:radixPos+1,c:"0",fromIsValid:!0},rewritePosition:radixPos}:{rewritePosition:radixPos+1};if(caretPos.begin<radixPos)return{rewritePosition:caretPos.begin-1}}}else if(!opts.showMaskOnHover&&!opts.showMaskOnFocus&&!opts.digitsOptional&&0<opts.digits&&""===this.__valueGet.call(this.el))return{rewritePosition:radixPos};return{rewritePosition:pos}},postValidation:function postValidation(buffer,pos,c,currentResult,opts,maskset,strict){if(!1===currentResult)return currentResult;if(strict)return!0;if(null!==opts.min||null!==opts.max){var unmasked=opts.onUnMask(buffer.slice().reverse().join(""),void 0,$.extend({},opts,{unmaskAsNumber:!0}));if(null!==opts.min&&unmasked<opts.min&&(unmasked.toString().length>opts.min.toString().length||unmasked<0))return!1;if(null!==opts.max&&unmasked>opts.max)return!!opts.SetMaxOnOverflow&&{refreshFromBuffer:!0,buffer:alignDigits(opts.max.toString().replace(".",opts.radixPoint).split(""),opts.digits,opts).reverse()}}return currentResult},onUnMask:function onUnMask(maskedValue,unmaskedValue,opts){if(""===unmaskedValue&&!0===opts.nullable)return unmaskedValue;var processValue=maskedValue.replace(opts.prefix,"");return processValue=processValue.replace(opts.suffix,""),processValue=processValue.replace(new RegExp((0,_escapeRegex.default)(opts.groupSeparator),"g"),""),""!==opts.placeholder.charAt(0)&&(processValue=processValue.replace(new RegExp(opts.placeholder.charAt(0),"g"),"0")),opts.unmaskAsNumber?(""!==opts.radixPoint&&-1!==processValue.indexOf(opts.radixPoint)&&(processValue=processValue.replace(_escapeRegex.default.call(this,opts.radixPoint),".")),processValue=processValue.replace(new RegExp("^"+(0,_escapeRegex.default)(opts.negationSymbol.front)),"-"),processValue=processValue.replace(new RegExp((0,_escapeRegex.default)(opts.negationSymbol.back)+"$"),""),Number(processValue)):processValue},isComplete:function isComplete(buffer,opts){var maskedValue=(opts.numericInput?buffer.slice().reverse():buffer).join("");return maskedValue=maskedValue.replace(new RegExp("^"+(0,_escapeRegex.default)(opts.negationSymbol.front)),"-"),maskedValue=maskedValue.replace(new RegExp((0,_escapeRegex.default)(opts.negationSymbol.back)+"$"),""),maskedValue=maskedValue.replace(opts.prefix,""),maskedValue=maskedValue.replace(opts.suffix,""),maskedValue=maskedValue.replace(new RegExp((0,_escapeRegex.default)(opts.groupSeparator)+"([0-9]{3})","g"),"$1"),","===opts.radixPoint&&(maskedValue=maskedValue.replace((0,_escapeRegex.default)(opts.radixPoint),".")),isFinite(maskedValue)},onBeforeMask:function onBeforeMask(initialValue,opts){var radixPoint=opts.radixPoint||",";isFinite(opts.digits)&&(opts.digits=parseInt(opts.digits)),"number"!=typeof initialValue&&"number"!==opts.inputType||""===radixPoint||(initialValue=initialValue.toString().replace(".",radixPoint));var isNagtive="-"===initialValue.charAt(0)||initialValue.charAt(0)===opts.negationSymbol.front,valueParts=initialValue.split(radixPoint),integerPart=valueParts[0].replace(/[^\-0-9]/g,""),decimalPart=1<valueParts.length?valueParts[1].replace(/[^0-9]/g,""):"",forceDigits=1<valueParts.length;initialValue=integerPart+(""!==decimalPart?radixPoint+decimalPart:decimalPart);var digits=0;if(""!==radixPoint&&(digits=opts.digitsOptional?opts.digits<decimalPart.length?opts.digits:decimalPart.length:opts.digits,""!==decimalPart||!opts.digitsOptional)){var digitsFactor=Math.pow(10,digits||1);initialValue=initialValue.replace((0,_escapeRegex.default)(radixPoint),"."),isNaN(parseFloat(initialValue))||(initialValue=(opts.roun
263dingFN(parseFloat(initialValue)*digitsFactor)/digitsFactor).toFixed(digits)),initialValue=initialValue.toString().replace(".",radixPoint)}if(0===opts.digits&&-1!==initialValue.indexOf(radixPoint)&&(initialValue=initialValue.substring(0,initialValue.indexOf(radixPoint))),null!==opts.min||null!==opts.max){var numberValue=initialValue.toString().replace(radixPoint,".");null!==opts.min&&numberValue<opts.min?initialValue=opts.min.toString().replace(".",radixPoint):null!==opts.max&&numberValue>opts.max&&(initialValue=opts.max.toString().replace(".",radixPoint))}return isNagtive&&"-"!==initialValue.charAt(0)&&(initialValue="-"+initialValue),alignDigits(initialValue.toString().split(""),digits,opts,forceDigits).join("")},onBeforeWrite:function onBeforeWrite(e,buffer,caretPos,opts){function stripBuffer(buffer,stripRadix){if(!1!==opts.__financeInput||stripRadix){var position=buffer.indexOf(opts.radixPoint);-1!==position&&buffer.splice(position,1)}if(""!==opts.groupSeparator)for(;-1!==(position=buffer.indexOf(opts.groupSeparator));)buffer.splice(position,1);return buffer}var result,leadingzeroes=checkForLeadingZeroes(buffer,opts);if(leadingzeroes)for(var caretNdx=buffer.join("").lastIndexOf(leadingzeroes[0].split("").reverse().join(""))-(leadingzeroes[0]==leadingzeroes.input?0:1),offset=leadingzeroes[0]==leadingzeroes.input?1:0,i=leadingzeroes[0].length-offset;0<i;i--)delete this.maskset.validPositions[caretNdx+i],delete buffer[caretNdx+i];if(e)switch(e.type){case"blur":case"checkval":if(null!==opts.min){var unmasked=opts.onUnMask(buffer.slice().reverse().join(""),void 0,$.extend({},opts,{unmaskAsNumber:!0}));if(null!==opts.min&&unmasked<opts.min)return{refreshFromBuffer:!0,buffer:alignDigits(opts.min.toString().replace(".",opts.radixPoint).split(""),opts.digits,opts).reverse()}}if(buffer[buffer.length-1]===opts.negationSymbol.front){var nmbrMtchs=new RegExp("(^"+(""!=opts.negationSymbol.front?(0,_escapeRegex.default)(opts.negationSymbol.front)+"?":"")+(0,_escapeRegex.default)(opts.prefix)+")(.*)("+(0,_escapeRegex.default)(opts.suffix)+(""!=opts.negationSymbol.back?(0,_escapeRegex.default)(opts.negationSymbol.back)+"?":"")+"$)").exec(stripBuffer(buffer.slice(),!0).reverse().join("")),number=nmbrMtchs?nmbrMtchs[2]:"";0==number&&(result={refreshFromBuffer:!0,buffer:[0]})}else""!==opts.radixPoint&&buffer[0]===opts.radixPoint&&(result&&result.buffer?result.buffer.shift():(buffer.shift(),result={refreshFromBuffer:!0,buffer:stripBuffer(buffer)}));if(opts.enforceDigitsOnBlur){result=result||{};var bffr=result&&result.buffer||buffer.slice().reverse();result.refreshFromBuffer=!0,result.buffer=alignDigits(bffr,opts.digits,opts,!0).reverse()}}return result},onKeyDown:function onKeyDown(e,buffer,caretPos,opts){var $input=$(this),bffr;if(e.ctrlKey)switch(e.keyCode){case _keycode.default.UP:return this.inputmask.__valueSet.call(this,parseFloat(this.inputmask.unmaskedvalue())+parseInt(opts.step)),$input.trigger("setvalue"),!1;case _keycode.default.DOWN:return this.inputmask.__valueSet.call(this,parseFloat(this.inputmask.unmaskedvalue())-parseInt(opts.step)),$input.trigger("setvalue"),!1}if(!e.shiftKey&&(e.keyCode===_keycode.default.DELETE||e.keyCode===_keycode.default.BACKSPACE||e.keyCode===_keycode.default.BACKSPACE_SAFARI)&&caretPos.begin!==buffer.length){if(buffer[e.keyCode===_keycode.default.DELETE?caretPos.begin-1:caretPos.end]===opts.negationSymbol.front)return bffr=buffer.slice().reverse(),""!==opts.negationSymbol.front&&bffr.shift(),""!==opts.negationSymbol.back&&bffr.pop(),$input.trigger("setvalue",[bffr.join(""),caretPos.begin]),!1;if(!0===opts._radixDance){var radixPos=buffer.indexOf(opts.radixPoint);if(opts.digitsOptional){if(0===radixPos)return bffr=buffer.slice().reverse(),bffr.pop(),$input.trigger("setvalue",[bffr.join(""),caretPos.begin>=bffr.length?bffr.length:caretPos.begin]),!1}else if(-1!==radixPos&&(caretPos.begin<radixPos||caretPos.end<radixPos||e.keyCode===_keycode.default.DELETE&&caretPos.begin===radixPos))return caretPos.begin!==caretPos.end||e.keyCode!==_keycode.default.BACKSPACE&&e.keyCode!==_keycode.default.BACKSPACE_SAFARI||caretPos.begin++,bffr=buffer.slice().reverse(),bffr.splice(bffr.length-caretPos.begin,caretPos.begin-caretPos.end+1),bffr=alignDigits(bffr,opts.digits,opts).join(""),$input.trigger("setvalue",[bffr,caretPos.begin>=bffr.length?radixPos+1:caretPos.begin]),!1}}}},currency:{prefix:"",groupSeparator:",",alias:"numeric",digits:2,digitsOptional:!1}
263,decimal:{alias:"numeric"},integer:{alias:"numeric",inputmode:"numeric",digits:0},percentage:{alias:"numeric",min:0,max:100,suffix:" %",digits:0,allowMinus:!1},indianns:{alias:"numeric",_mask:function _mask(opts){return"("+opts.groupSeparator+"99){*|1}("+opts.groupSeparator+"999){1|1}"},groupSeparator:",",radixPoint:".",placeholder:"0",digits:2,digitsOptional:!1}})},function(module,exports,__webpack_require__){"use strict";var _window=_interopRequireDefault(__webpack_require__(8)),_inputmask=_interopRequireDefault(__webpack_require__(2)),_canUseDOM=_interopRequireDefault(__webpack_require__(9));function _typeof(obj){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function _typeof(obj){return typeof obj}:function _typeof(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj},_typeof(obj)}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}function _inherits(subClass,superClass){if("function"!=typeof superClass&&null!==superClass)throw new TypeError("Super expression must either be null or a function");subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:!0,configurable:!0}}),superClass&&_setPrototypeOf(subClass,superClass)}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget)}else result=Super.apply(this,arguments);return _possibleConstructorReturn(this,result)}}function _possibleConstructorReturn(self,call){return!call||"object"!==_typeof(call)&&"function"!=typeof call?_assertThisInitialized(self):call}function _assertThisInitialized(self){if(void 0===self)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return self}function _wrapNativeSuper(Class){var _cache="function"==typeof Map?new Map:void 0;return _wrapNativeSuper=function _wrapNativeSuper(Class){if(null===Class||!_isNativeFunction(Class))return Class;if("function"!=typeof Class)throw new TypeError("Super expression must either be null or a function");if("undefined"!=typeof _cache){if(_cache.has(Class))return _cache.get(Class);_cache.set(Class,Wrapper)}function Wrapper(){return _construct(Class,arguments,_getPrototypeOf(this).constructor)}return Wrapper.prototype=Object.create(Class.prototype,{constructor:{value:Wrapper,enumerable:!1,writable:!0,configurable:!0}}),_setPrototypeOf(Wrapper,Class)},_wrapNativeSuper(Class)}function _construct(Parent,args,Class){return _construct=_isNativeReflectConstruct()?Reflect.construct:function _construct(Parent,args,Class){var a=[null];a.push.apply(a,args);var Constructor=Function.bind.apply(Parent,a),instance=new Constructor;return Class&&_setPrototypeOf(instance,Class.prototype),instance},_construct.apply(null,arguments)}function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(e){return!1}}function _isNativeFunction(fn){return-1!==Function.toString.call(fn).indexOf("[native code]")}function _setPrototypeOf(o,p){return _setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){return o.__proto__=p,o},_setPrototypeOf(o,p)}function _getPrototypeOf(o){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o)},_getPrototypeOf(o)}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var document=_window.default.document;if(_canUseDOM.default&&document&&document.head&&document.head.attachShadow&&_window.default.customElements&&void 0===_window.default.customElements.get("input-mask")){var InputmaskElement=function(_HTMLElement){_inherits(InputmaskElement,_HTMLElement);var _super=_createSuper(InputmaskElement);function InputmaskElement(){var _this;
263_classCallCheck(this,InputmaskElement),_this=_super.call(this);var attributeNames=_this.getAttributeNames(),shadow=_this.attachShadow({mode:"closed"}),input=document.createElement("input");for(var attr in input.type="text",shadow.appendChild(input),attributeNames)Object.prototype.hasOwnProperty.call(attributeNames,attr)&&input.setAttribute(attributeNames[attr],_this.getAttribute(attributeNames[attr]));var im=new _inputmask.default;return im.dataAttribute="",im.mask(input),input.inputmask.shadowRoot=shadow,_this}return InputmaskElement}(_wrapNativeSuper(HTMLElement));_window.default.customElements.define("input-mask",InputmaskElement)}},function(module,exports,__webpack_require__){"use strict";var _jquery=_interopRequireDefault(__webpack_require__(10)),_inputmask=_interopRequireDefault(__webpack_require__(2));function _typeof(obj){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function _typeof(obj){return typeof obj}:function _typeof(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj},_typeof(obj)}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}void 0===_jquery.default.fn.inputmask&&(_jquery.default.fn.inputmask=function(fn,options){var nptmask,input=this[0];if(void 0===options&&(options={}),"string"==typeof fn)switch(fn){case"unmaskedvalue":return input&&input.inputmask?input.inputmask.unmaskedvalue():(0,_jquery.default)(input).val();case"remove":return this.each(function(){this.inputmask&&this.inputmask.remove()});case"getemptymask":return input&&input.inputmask?input.inputmask.getemptymask():"";case"hasMaskedValue":return!(!input||!input.inputmask)&&input.inputmask.hasMaskedValue();case"isComplete":return!input||!input.inputmask||input.inputmask.isComplete();case"getmetadata":return input&&input.inputmask?input.inputmask.getmetadata():void 0;case"setvalue":_inputmask.default.setValue(input,options);break;case"option":if("string"!=typeof options)return this.each(function(){if(void 0!==this.inputmask)return this.inputmask.option(options)});if(input&&void 0!==input.inputmask)return input.inputmask.option(options);break;default:return options.alias=fn,nptmask=new _inputmask.default(options),this.each(function(){nptmask.mask(this)})}else{if(Array.isArray(fn))return options.alias=fn,nptmask=new _inputmask.default(options),this.each(function(){nptmask.mask(this)});if("object"==_typeof(fn))return nptmask=new _inputmask.default(fn),void 0===fn.mask&&void 0===fn.alias?this.each(function(){if(void 0!==this.inputmask)return this.inputmask.option(fn);nptmask.mask(this)}):this.each(function(){nptmask.mask(this)});if(void 0===fn)return this.each(function(){nptmask=new _inputmask.default(options),nptmask.mask(this)})}})},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _bundle=_interopRequireDefault(__webpack_require__(14));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}__webpack_require__(26);var _default=_bundle.default;exports.default=_default}],installedModules={},__webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{enumerable:!0,get:getter})},__webpack_require__.r=function(exports){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(exports,"__esModule",{value:!0})},__webpack_require__.t=function(value,mode){if(1&mode&&(value=__webpack_require__(value)),8&mode)return value;if(4&mode&&"object"==typeof value&&value&&value.__esModule)return value;var ns=Object.create(null);if(__webpack_require__.r(ns),Object.defineProperty(ns,"default",{enumerable:!0,value:value}),2&mode&&"string"!=typeof value)for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns},__webpack_require__.n=function(module){var getter=module&&module.__esMo
263dule?function getDefault(){return module.default}:function getModuleExports(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=27);function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}var modules,installedModules});
264
265/*
266 Input Mask plugin binding
267 http://github.com/RobinHerbots/jquery.inputmask
268 Copyright (c) Robin Herbots
269 Licensed under the MIT license
270 */
271(function (factory) {
272    factory(jQuery, window.Inputmask, window);
273}
274(function ($, Inputmask, window) {
275    $(window.document).ajaxComplete(function (event, xmlHttpRequest, ajaxOptions) {
276        if ($.inArray("html", ajaxOptions.dataTypes) !== -1) {
277            $(".inputmask, [data-inputmask], [data-inputmask-mask], [data-inputmask-alias], [data-inputmask-regex]").each(function (ndx, lmnt) {
278                if (lmnt.inputmask === undefined) {
279                    Inputmask().mask(lmnt);
280                }
281            });
282        }
283    }).ready(function () {
284        $(".inputmask, [data-inputmask], [data-inputmask-mask], [data-inputmask-alias],[data-inputmask-regex]").each(function (ndx, lmnt) {
285            if (lmnt.inputmask === undefined) {
286                Inputmask().mask(lmnt);
287            }
288        });
289    });
290}));
291/** Donor's account frontend */
292
293var leyka; // L10n lines
294
295jQuery(document).ready(function($){
296
297    // Account activation & password setup:
298    function leyka_validate_activation_form($form) {
299
300        let $field1 = $form.find(':input[name="leyka_donor_pass"]'),
301            $field2 = $form.find(':input[name="leyka_donor_pass2"]'),
302            form_is_valid = true;
303
304        if( !$field1.val().length ) {
305
306            $form.find('.leyka_donor_pass-error').text('Enter your password').show(); /** @todo Localize the line */
307            form_is_valid = false;
308
309        } else {
310            $form.find('.leyka_donor_pass-error').text('').hide();
311        }
312
313        if($field1.val().length && $field1.val() !== $field2.val()) {
314
315            /** @todo Localize the line */
316            $form.find('.leyka_donor_pass2-error').text('The password should be like the one in the first field').show();
317            form_is_valid = false;
318
319        } else {
320            $form.find('.leyka_donor_pass2-error').text('').hide();
321        }
322
323        return form_is_valid;
324
325    }
326
327    $('.leyka-account-pass-setup').on('submit.leyka', function(e){
328
329        e.preventDefault();
330
331        let $form = $(this);
332
333        if(leyka_validate_activation_form($form)) {
334
335            let params = $form.serializeArray(),
336                $message = $form.find('.form-message'),
337                $extra_links = $form.find('.leyka-extra-links'),
338                $ajax_indicator = $form.find('.form-ajax-indicator'),
339                $submit = $form.find('.activation-submit');
340
341            params.push({name: 'action', value: 'leyka_setup_donor_password'});
342            if($form.data('account-activation')) {
343                params.push({name: 'auto-login', value: true});
344            }
345
346            $ajax_indicator.show();
347            $message.hide();
348            $submit.hide();
349
350            $.post(leyka_get_ajax_url(), params, null, 'json').done(function(response){
351
352                $ajax_indicator.hide();
353                if(response.status === 'ok') {
354
355                    $message.removeClass('error-message').addClass('success-message');
356                    $extra_links.hide();
357
358                    if($form.data('account-activation')) {
359                        setTimeout(function () {
360                            window.location.href = leyka.homeurl + '/donor-account/';
361                        }, 3000);
362                    }
363
364                } else if(response.message) {
365
366                    $message.removeClass('success-message').addClass('error-message');
367                    $submit.show();
368
369                }
370
371                $message.html(response.message).show();
372
373            }).error(function(){
374
375                $ajax_indicator.hide();
376                $message
377                    .removeClass('success-message').addClass('error-message')
378                    .html('Error while setting up a password :( Please contact the website tech. support about that') /** @todo Localize the line */ // leyka.reset_donor_pass_ajax_error_msg
379                    .show();
380
381                $submit.show();
382
383            });
384
385        }
386
387    });
388
389    // Account login:
390    function leyka_validate_login_form($form) {
391
392        let $field1 = $form.find(':input[name="leyka_donor_email"]'),
393            $field2 = $form.find(':input[name="leyka_donor_pass"]'),
394            form_is_valid = true;
395
396        if( !$field1.val().length ) {
397
398            $form.find('.leyka_donor_email-error').text('Enter your email').show(); /** @todo Localize the line */
399            form_is_valid = false;
400
401        } else {
402            $form.find('.leyka_donor_email-error').text('').hide();
403        }
404
405        if( !$field2.val().length ) {
406
407            $form.find('.leyka_donor_pass-error').text('Enter your password').show(); /** @todo Localize the line */
408            form_is_valid = false;
409
410        } else {
411            $form.find('.leyka_donor_pass-error').text('').hide();
412        }
413
414        return form_is_valid;
415
416    }
417
418    $('.leyka-account-login').on('submit.leyka', function(e){
419
420        e.preventDefault();
421
422        let $form = $(this);
423
424        if(leyka_validate_login_form($form)) {
425
426            let params = $form.serializeArray(),
427                $message = $form.find('.form-message'),
428                $extra_links = $form.find('.leyka-extra-links'),
429                $ajax_indicator = $form.find('.form-ajax-indicator'),
430                $submit = $form.find('.login-submit');
431
432            params.push({name: 'action', value: 'leyka_donor_login'});
433
434            $ajax_indicator.show();
435            $message.hide();
436            $submit.hide();
437
438            $.post(leyka_get_ajax_url(), params, null, 'json').done(function(response){
439
440                $ajax_indicator.hide();
441                response.message = response.message.length ? response.message : ''; // leyka.default_login_error_msg
442                if(response.status === 'ok') {
443
444                    $message.removeClass('error-message').addClass('success-message');
445                    $extra_links.hide();
446
447                    setTimeout(function(){
448                        window.location.href = leyka.homeurl + '/donor-account/';
449                    }, 3000);
450
451                } else if(response.message) {
452
453                    $message.removeClass('success-message').addClass('error-message');
454                    $submit.show();
455
456                }
457
458                $message.html(response.message).show();
459
460            }).error(function(){
461
462                $ajax_indicator.hide();
463                $message
464                    .removeClass('success-message').addClass('error-message')
465                    .html('Error while logging you in :( Please contact the website tech. support about that') /** @todo Localize the line */ // leyka.donor_login_ajax_error_msg
466                    .show();
467
468                $submit.show();
469
470            });
471
472        }
473
474    });
475
476    // Account password reset:
477    function leyka_validate_password_reset_form($form) {
478
479        let $field1 = $form.find(':input[name="leyka_donor_email"]'),
480            form_is_valid = true;
481
482        if( !$field1.val().length ) {
483
484            $form.find('.leyka_donor_email-error').text('Enter your email').show(); /** @todo Localize the line */
485            form_is_valid = false;
486
487        } else if( !is_email($field1.val()) ) {
488
489            $form.find('.leyka_donor_email-error').text('The email is incorrect').show(); /** @todo Localize the line */
490            form_is_valid = false;
491
492        } else {
493            $form.find('.leyka_donor_email-error').text('').hide();
494        }
495
496        return form_is_valid;
497
498    }
499
500    $('.leyka-reset-password').on('submit.leyka', function(e){
501
502        e.preventDefault();
503
504        let $form = $(this);
505
506        if(leyka_validate_password_reset_form($form)) {
507
508            let params = $form.serializeArray(),
509                $message = $form.find('.form-message'),
510                $extra_links = $form.find('.leyka-extra-links'),
511                $ajax_indicator = $form.find('.form-ajax-indicator'),
512                $submit = $form.find('.password-reset-submit');
513
514            params.push({name: 'action', value: 'leyka_donor_password_reset_request'});
515
516            $ajax_indicator.show();
517            $message.hide();
518            $submit.hide();
519
520            $.post(leyka_get_ajax_url(), params, null, 'json').done(function(response){
521
522                $ajax_indicator.hide();
523                response.message = response.message.length ? response.message : ''; // leyka.default_login_error_msg
524                if(response.status === 'ok') {
525
526                    $message.removeClass('error-message').addClass('success-message');
527                    $extra_links.hide();
528
529                } else if(response.message) {
530
531                    $message.removeClass('success-message').addClass('error-message');
532                    $submit.show();
533
534                }
535
536                $message.html(response.message).show();
537
538            }).error(function(){
539
540                $ajax_indicator.hide();
541                $message
542                    .removeClass('success-message').addClass('error-message')
543                    .html('Error while resetting your password :( Please contact the website tech. support about that') /** @todo Localize the line */ // leyka.donor_login_ajax_error_msg
544                    .show();
545
546                $submit.show();
547
548            });
549
550        }
551
552    });
553
554    // Donations history:
555    $('.donations-history-more').click(function(e){
556
557        e.preventDefault();
558
559        let $load_more = $(this),
560            $ajax_indicator = $load_more.siblings('.form-ajax-indicator'),
561            $donations_list = $('.donations-history'),
562            current_page = $donations_list.data('donations-current-page'),
563            total_pages = $donations_list.data('donations-total-pages'),
564            params = {
565                donor_id: $donations_list.data('donor-id'),
566                page: current_page + 1,
567                nonce: $load_more.siblings(':input[name="nonce"]').val(),
568                action: 'leyka_get_donations_history_page',
569            };
570
571        $ajax_indicator.show();
572        $load_more.hide();
573
574        $.post(leyka_get_ajax_url(), params, null, 'json').done(function(response){
575
576            $ajax_indicator.hide();
577
578            if(response.status === 'ok') {
579
580                if(response.items_html) {
581                    $donations_list.append(response.items_html);
582                }
583
584                if(current_page + 1 < total_pages) {
585
586                    $donations_list.data('donations-current-page', current_page + 1);
587                    $load_more.show();
588
589                }
590
591            } else { // Show some error message
592                // $message.show();
593            }
594
595        }).error(function(){
596
597            $ajax_indicator.hide();
598            $load_more.show();
599
600        });
601
602    });
603    
604});
605
606// Recurring subscriptions cancelling:
607jQuery(function($){
608
609    function leyka_validate_unsubscribe_form($form) {
610
611        let form_is_valid = true;
612        
613        $form.find('.donor__textfield-error').hide();
614        
615        if( !$form.find('input[name="leyka_cancel_subscription_reason[]"]:checked').length ) {
616
617            $form.find('.leyka-star-field-error-frame .choose-reason').show();
618            form_is_valid = false;
619
620        } else if( $form.find('input[name="leyka_cancel_subscription_reason[]"][value="other"]:checked').length && !$.trim($form.find('textarea[name="leyka_donor_custom_reason"]').val()) ) {
621
622            $form.find('.leyka-star-field-error-frame .give-details').show();
623            form_is_valid = false;
624
625        }
626        
627        return form_is_valid;
628        
629    }
630
631    let $forms = $('.leyka-unsubscribe-campains-forms').first();
632
633	$forms.on('click.leyka', '.action-disconnect', function(e){
634
635		e.preventDefault();
636
637    	$forms.find('form.leyka-screen-form').css('display', 'none');
638    	$forms.find('form.leyka-cancel-subscription-form').css('display', 'flex');
639        $forms.find('form.leyka-cancel-subscription-form input[name="leyka_campaign_id"]').val($(this).data('campaign-id'));
640        $forms.find('form.leyka-cancel-subscription-form input[name="leyka_donation_id"]').val($(this).data('donation-id'));
641    	$forms.find('form.leyka-cancel-subscription-form input[name="leyka_campaign_permalink"]')
642            .val($(this).data('campaign-page-public-url'));
643
644	});
645
646	$forms.find('input[name="leyka_cancel_subscription_reason[]"]').on('change.leyka', function(e){
647
648	    let $this = $(this);
649
650		if($this.val() === 'other') {
651			if($this.prop('checked')) {
652				$forms.find('.unsubscribe-comment').show();
653			} else {
654				$forms.find('.unsubscribe-comment').hide();
655			}
656		}
657
658	});
659
660	if($forms.find('input[name="leyka_cancel_subscription_reason[]"][value="other"]:checked').length) {
661		$forms.find('.unsubscribe-comment').show();
662	} else {
663		$forms.find('.unsubscribe-comment textarea').val('');
664	}
665
666    $forms.find('.leyka-do-not-unsubscribe').on('click.leyka', function(e){
667
668    	e.preventDefault();
669
670    	$forms.find('form.leyka-screen-form').css('display', 'none');
671    	$forms.find('form.leyka-unsubscribe-campains-form').css('display', 'block');
672
673    });
674
675    $forms.find('form.leyka-cancel-subscription-form').on('submit.leyka', function(e){
676
677		e.preventDefault();
678		
679        let $form = $(this);
680
681        if(leyka_validate_unsubscribe_form($form)) {
682
683	    	$forms.find('form.leyka-screen-form').css('display', 'none');
684
685	    	if($form.find('input[name="leyka_cancel_subscription_reason[]"][value="uncomfortable_pm"]:checked, input[name="leyka_cancel_subscription_reason[]"][value="too_much"]:checked').length) {
686	    		$forms.find('form.leyka-confirm-go-resubscribe-form').css('display', 'block');
687	    	} else {
688		    	$forms.find('form.leyka-confirm-unsubscribe-request-form').css('display', 'block');
689	    	}
690
691        }
692
693	});
694
695    $forms.find('form.leyka-confirm-unsubscribe-request-form').on('submit.leyka', function(e){
696
697        e.preventDefault();
698        leyka_cancel_recurring_subscription($(this));
699
700    });    
701
702    $forms.find('form.leyka-confirm-go-resubscribe-form').on('submit.leyka', function(e){
703
704        e.preventDefault();
705        leyka_cancel_recurring_subscription($(this));
706
707    });    
708
709    function leyka_cancel_recurring_subscription($form) {
710
711        let $cancelling_form = $form.siblings('form.leyka-cancel-subscription-form'),
712	        params = $cancelling_form.serializeArray(),
713	        $message = $form.find('.form-message'),
714	        $ajax_indicator = $form.find('.form-ajax-indicator'),
715	        $submit = $form.find('.confirm-unsubscribe-submit');
716
717	    params.push({name: 'action', value: 'leyka_cancel_recurring'});
718
719	    $ajax_indicator.show();
720	    $message.hide();
721	    $submit.hide();
722	
723	    $.post(leyka_get_ajax_url(), params, null, 'json').done(function(response){
724
725	        $ajax_indicator.hide();
726	        response.message = response.message.length ? response.message : leyka.default_error_msg;
727
728	        if(response.status === 'ok') {
729
730	        	$(':input', $cancelling_form)
731                    .not(':button, :submit, :reset, :hidden')
732                    .val('')
733                    .removeAttr('checked')
734                    .removeAttr('selected');
735
736                $forms.find('form.leyka-screen-form').css('display', 'none');
737
738                let $back_to_account_block = $forms.find('.leyka-back-to-account');
739
740                $back_to_account_block.css('display', 'block');
741
742                $message = $back_to_account_block.find('.form-message');
743
744	            $message.removeClass('error-message').addClass('success-message');
745
746	            if(typeof response.redirect_to !== 'undefined' && response.redirect_to.length) {
747                    setTimeout(function(){
748                        window.location.href = response.redirect_to;
749                    }, 5000);
750                }
751	
752	        } else if(response.message) {
753	
754	            $message.removeClass('success-message').addClass('error-message');
755	            $submit.show();
756	
757	        }
758
759	        $message.html(response.message).show();
760	
761	    }).error(function(){
762	
763	        $ajax_indicator.hide();
764	        $message
765	            .removeClass('success-message').addClass('error-message')
766	            .html(leyka.error_while_unsibscribe_msg)
767	            .show();
768	
769	        $submit.show();
770	
771	    });
772	
773    }
774	
775});
776
777jQuery(function($){
778	
779    $('.donor__textfield--pass').on('focus.leyka', 'input', function(){
780        $(this).parents('.donor__textfield--pass').removeClass('invalid').removeClass('valid').addClass('focus');
781    }).on('blur', ':input', function(){
782
783        // validate
784        var $this = $(this),
785            testVal = $this.val();
786
787        $this.parents('.donor__textfield--pass').removeClass('focus');
788
789        if(testVal.length > 0){
790            $this.parents('.donor__textfield--pass').addClass('valid');
791        } else {
792            $this.parents('.donor__textfield--pass').addClass('invalid');
793        }
794
795    });
796
797    $('.donor__textfield--pass2').on('focus.leyka', 'input', function(){
798        $(this).parents('.donor__textfield--pass2').removeClass('invalid').removeClass('valid').addClass('focus');
799    }).on('blur', ':input', function(){
800
801        // validate
802        var $this = $(this),
803            testVal = $this.val();
804
805        $this.parents('.donor__textfield--pass2').removeClass('focus');
806
807        if(testVal.length > 0){
808            $this.parents('.donor__textfield--pass2').addClass('valid');
809        } else {
810            $this.parents('.donor__textfield--pass2').addClass('invalid');
811        }
812
813    });
814    
815});
816/*
817 * Class to manipulate donation form from bottom
818 */
819
820window.LeykaGUIBottom = function($) {
821    this.$ = $;
822};
823
824window.LeykaGUIBottom.prototype = {
825
826    bindEvents: function() {
827
828        var self = this; var $ = self.$;
829
830        $('.leyka-js-open-form-bottom').on('click', function(e){
831
832            e.preventDefault();
833
834            var $this = $(this),
835                $bottomForm = $this.closest('.leyka-pf-bottom');
836
837            $('#'+$bottomForm.attr('data-target'))
838                .find('.amount__figure input.leyka_donation_amount')
839                .val( $this.parents('.leyka-pf-bottom').find('input[name="leyka_temp_amount"]').val() );
840
841            /** @todo Sync the amount value & the range control. */
842            $bottomForm.leykaForm('openFromBottom');
843
844        });
845
846    }
847
848};
849
850jQuery(document).ready(function($){
851    
852    leykaGUIBottom = new LeykaGUIBottom($);
853    leykaGUIBottom.bindEvents();
854    
855}); //jQuery
856
857/*
858 * Class to manipulate donation form from campaign carda
859 */
860
861window.LeykaGUICard = function($) {
862    this.$ = $;
863};
864
865window.LeykaGUICard.prototype = {
866
867    bindEvents: function() {
868        var self = this; var $ = self.$;
869    }
870
871};
872
873jQuery(document).ready(function($){
874
875    leykaGUICard = new LeykaGUICard($);
876    leykaGUICard.bindEvents();
877
878});
879
880jQuery(document).ready(function($){
881	$('.inpage-card__toggle-excerpt-links').on('click', 'a', function(e){
882
883        e.preventDefault();
884
885		$(this).closest('.inpage-card__excerpt').toggleClass('expand');
886
887	});
888});
889/*
890 * Class to manipulate final page UI
891 */
892
893window.LeykaGUIFinal = function($) {
894    this.$ = $;
895    
896    $('.leyka-pf__final-informyou .informyou-redirect-text').show();
897};
898
899window.LeykaGUIFinal.prototype = {
900        
901    bindEvents: function(){
902
903        let self = this, $ = self.$;
904
905        function leyka_remembered_data(data_name, data_value, data_delete) {
906
907            if(data_value.length) {
908                return $.cookie(data_name, data_value);
909            } else if(data_delete) {
910                return $.cookie(data_name, '');
911            } else {
912                return $.cookie(data_name) ? $.cookie(data_name) : '';
913                /** add local storage check... */
914            }
915        }
916
917        let $success_forms = $('.leyka-success-form'),
918            donation_id = leyka_remembered_data('leyka_donation_id', '', false);
919
920        if( !donation_id ) { // Hide the success form if there are no donation ID stored...
921            // $success_forms.hide();
922        } else { // ... or display them if there is one in the local storage
923            $success_forms.each(function(index, element) {
924
925                let $form = $(element),
926                    $donation_id_field = $form.find('input[name="leyka_donation_id"]');
927
928                if( !$donation_id_field.val() ) {
929
930                    $donation_id_field.val(donation_id);
931                    $form.show();
932
933                }
934
935            });
936        }
937
938        $success_forms.on('submit.leyka', function(e){
939
940            e.preventDefault();
941
942            if(self.validateForm(this)) {
943                self.subscribeUser();
944            }
945
946        });
947
948        $('.leyka-js-no-subscribe').on('click.leyka', function(e){
949            
950            e.preventDefault();
951
952            $(this).closest('.leyka-final-subscribe-form').slideUp(100);
953
954            let $thankyou_block = $('.leyka-pf__final-thankyou');
955
956            $thankyou_block.find('.informyou-redirect-text').slideDown(100);
957            self.runRedirectProcess($thankyou_block);
958
959        });
960
961    },
962
963    /** Subscription form validation */
964    validateForm: function($form){
965
966        var self = this,
967            $ = self.$,
968            form_valid = false;
969
970        $form = $($form); // Just in case
971
972        $form.find(':input').each(function(){
973
974            var $input = $(this),
975                type = $input.attr('type'),
976                name = $input.attr('name'),
977                value = $.trim($input.val()),
978                $error_message = $form.find('.'+name+'-error');
979
980            if($.inArray(type, ['text', 'email']) == 1) {
981
982                if($input.hasClass('required') && !value) {
983
984                    $error_message.show();
985                    $input.closest('.donor__textfield').addClass('invalid');
986
987                } else if(type === 'email' && !is_email(value)) {
988
989                    $error_message.show();
990                    $input.closest('.donor__textfield').addClass('invalid');
991
992                } else {
993
994                    $error_message.hide();
995                    $input.closest('.donor__textfield').removeClass('invalid');
996                    form_valid = true;
997
998                }
999
1000            }
1001
1002        });
1003
1004        return form_valid;
1005
1006    },
1007
1008    animateRedirectCountdown: function($container){
1009
1010        let self = this,
1011            $ = self.$,
1012            $countdown_div = $container.find('.informyou-redirect-text .leyka-redirect-countdown'),
1013
1014        countdown = parseInt($countdown_div.text(), 10) - 1;
1015
1016        if(countdown <= 0) {
1017            clearInterval(self.countdownInterval);
1018        }
1019
1020        $countdown_div.text(String(countdown));
1021
1022    },
1023
1024    runRedirectProcess: function($container) {
1025
1026        let self = this,
1027            $ = self.$,
1028            ajax_url = leyka_get_ajax_url();
1029
1030        setTimeout(function(){
1031            
1032            let redirect_url;
1033
1034            if( !ajax_url ) {
1035                redirect_url = '/';
1036            } else {
1037                redirect_url = ajax_url.replace(/\/core\/wp-admin\/.*/, '');
1038                redirect_url = redirect_url.replace(/\/wp-admin\/.*/, '');
1039            }
1040
1041            window.location.href = redirect_url;
1042
1043        }, 4000);
1044
1045        self.countdownInterval = setInterval(self.animateRedirectCountdown.bind(null, $container), 1000);
1046
1047    },
1048
1049    subscribeUser: function(){
1050
1051        let self = this,
1052            $ = self.$,
1053            $informyou_block = $('.leyka-pf__final-informyou');
1054
1055        $.post(
1056            leyka_get_ajax_url(),
1057            $('form.leyka-success-form').serializeArray(),
1058            'json'
1059        ).done(function(response){
1060
1061            if(typeof response.status != 'undefined' && response.status != 0 && typeof response.message != 'undefined') {
1062                $('.leyka-pf__final-error-message').html(response.message).show();
1063            }
1064
1065            // leyka_remembered_data('leyka_donation_id', '', true); // Delete the donor data
1066
1067            $informyou_block.show();
1068            self.runRedirectProcess($informyou_block);
1069
1070        }).always(function(){
1071            $('.leyka-pf__final-thankyou').hide();
1072        });
1073
1074    }
1075};
1076
1077jQuery(document).ready(function($){
1078
1079    leykaGUIFinal = new LeykaGUIFinal($);
1080    leykaGUIFinal.bindEvents();
1081
1082}); //jQuery
1083/*
1084 * Donation form inner functionality and handlers
1085 */
1086
1087var leykaValidateForm,
1088	leyka;
1089
1090(function($){
1091
1092	var amountIconMarks = [25, 50, 75],
1093		inputRangeWidth = 200,
1094		inputRangeButtonRadius = 17;
1095
1096	leykaValidateForm = function($_form){
1097
1098		let $currency_tab = $_form.find('.currency-tab:not(.leyka-hidden)'),
1099            is_valid = true,
1100			email = $.trim($_form.find('.donor__textfield--email input').val()),
1101			$amount_field = $currency_tab.find('.amount__figure input.leyka_donation_amount'),
1102			amount = parseInt($amount_field.val().replace(/\s/g, '')),
1103			$comment_filed = $_form.find(':input.leyka-donor-comment'),
1104			$agree_terms = $_form.find('.donor__oferta input[name="leyka_agree"]'),
1105			$agree_pd = $_form.find('.donor__oferta input[name="leyka_agree_pd"]'),
1106            $current_field = $_form.find('.donor__textfield--name input');
1107
1108		if($current_field.val().length === 0 || !leyka_validate_donor_name($current_field.val())) {
1109
1110            is_valid = false;
1111            $_form.find('.donor__textfield--name').addClass('invalid');
1112
1113		}
1114
1115		if(email.length === 0 || !is_email(email)) {
1116
1117            is_valid = false;
1118            $_form.find('.donor__textfield--email').addClass('invalid');
1119
1120		}
1121
1122		if(
1123			$comment_filed.length &&
1124			$comment_filed.data('max-length') &&
1125			$comment_filed.val().length > $comment_filed.data('max-length')
1126		) {
1127
1128            is_valid = false;
1129            $_form.find('.donor__textfield--comment').addClass('invalid');
1130
1131		}
1132
1133		if(
1134			($agree_terms.length && !$agree_terms.prop('checked')) ||
1135			($agree_pd.length && !$agree_pd.prop('checked'))
1136		) {
1137
1138            is_valid = false;
1139            $_form.find('.donor__oferta').addClass('invalid');
1140
1141		}
1142
1143		if(amount <= 0 || amount < $amount_field.data('min-value') || amount > $amount_field.data('max-value')) {
1144            is_valid = false;
1145		}
1146
1147		return is_valid;
1148
1149	};
1150
1151    var methods = {
1152        'defaults': {
1153            'color': 'green'
1154        },
1155        'open': open,
1156        'close': close,
1157        'openFromBottom': openFromBottom,
1158        // 'redirectForm': redirectForm,
1159        'init': init
1160    };
1161
1162    function init(options) {
1163
1164        setupAmount();
1165        setupPaymentsGrid();
1166        setupDonorForm();
1167        bindEvents();
1168
1169    }
1170
1171    /* event handlers */
1172    function bindEvents() {
1173
1174        bindNavigationEvents();
1175        bindAmountStepEvents();
1176        bindPaymentStepEvents();
1177        bindDonorStepEvents();
1178        bindOfertaEvents();
1179        bindPdEvents();
1180        bindHistoryEvents();
1181        bindSubmitPaymentFormEvent();
1182
1183    }
1184
1185    function bindSubmitPaymentFormEvent() {
1186
1187        $('.leyka-pf__form').on('submit.leyka', 'form.leyka-revo-form', function(e){
1188
1189            var $_form = $(this),
1190                $active_step = $_form.find('.step.step--active'),
1191                $pm_selected = $_form.find('input[name="leyka_payment_method"]:checked');
1192
1193            if( !$active_step.hasClass('step--person') ) { // Do not validate + submit if donor's data step not reached yet
1194
1195                if($active_step.hasClass('step--amount')) {
1196
1197                    var $proceed_button = $_form.find('.step.step--amount .step__action--amount a');
1198                    if($proceed_button.length < 2) {
1199                        $proceed_button.click();
1200                    }
1201
1202                }
1203
1204                return false;
1205
1206            }
1207
1208			e.preventDefault();
1209
1210            if( !leykaValidateForm($_form) ) { // Form errors exist
1211
1212                e.preventDefault();
1213                e.stopPropagation();
1214                return;
1215
1216            }
1217
1218            if($pm_selected.data('processing') !== 'default') {
1219
1220                if($pm_selected.data('processing') !== 'custom-process-submit-event') {
1221                    e.stopPropagation();
1222                }
1223                return;
1224
1225            }
1226
1227            // Open "waiting" form step:
1228            var $redirect_step = $_form.closest('.leyka-pf').find('.leyka-pf__redirect'),
1229                data_array = $_form.serializeArray(),
1230                data = {action: 'leyka_ajax_get_gateway_redirect_data'};
1231
1232            for(var i=0; i<data_array.length; i++) {
1233                data[data_array[i].name] = data_array[i].value;
1234            }
1235
1236            if($pm_selected.data('ajax-without-form-submission')) {
1237                data['without_form_submission'] = true;
1238            }
1239
1240            $redirect_step.addClass('leyka-pf__redirect--open');
1241
1242            // Get gateway redirection form and submit it manually:
1243            $.post(leyka_get_ajax_url(), data).done(function(response){
1244
1245                response = $.parseJSON(response);
1246
1247                // Wrong answer from ajax handler:
1248                if( !response || typeof response.status === 'undefined' ) {
1249
1250//                         $errors.html(leyka.ajax_wrong_server_response).show();
1251//                         $('html, body').animate({ // 35px is a height of the WP admin bar (just in case)
1252//                             scrollTop: $errors.offset().top - 35
1253//                         }, 250);
1254
1255                    return false;
1256
1257                } else if(response.status !== 0 && typeof response.message !== 'undefined') {
1258
1259                    // $errors.html(response.message).show();
1260                    // $('html, body').animate({ // 35px is a height of the WP admin bar (just in case)
1261                    //     scrollTop: $errors.offset().top - 35
1262                    // }, 250);
1263
1264                    return false;
1265
1266                } else if( !response.payment_url ) {
1267
1268                    // $errors.html(leyka.cp_not_set_up).show();
1269                    // $('html, body').animate({ // 35px is a height of the WP admin bar (just in case)
1270                    //     scrollTop: $errors.offset().top - 35
1271                    // }, 250);
1272
1273                    return false;
1274
1275                }
1276
1277                var redirect_form_html = '<form class="leyka-auto-submit" action="'+response.payment_url+'" method="'+(response.payment_url.indexOf('?') === -1 ? 'post' : 'get')+'">';
1278
1279                $.each(response, function(field_name, value){
1280                    if(field_name !== 'payment_url') {
1281                        redirect_form_html += '<input type="hidden" name="'+field_name+'" value="'+value+'">';
1282                    }
1283                });
1284                redirect_form_html += '</form>';
1285
1286                $redirect_step.append(redirect_form_html);
1287
1288                if(typeof response.submission_redirect_type === 'undefined' || response.submission_redirect_type === 'auto') {
1289                    $redirect_step.find('.leyka-auto-submit').submit();
1290                } else if(response.submission_redirect_type === 'redirect') {
1291                    window.location.href = $redirect_step.find('.leyka-auto-submit').prop('action');
1292                }
1293
1294            });
1295
1296        });
1297
1298    }
1299
1300    function bindDonorStepEvents() {
1301
1302        $('.donor__textfield').on('focus.leyka', ':input', function(){
1303            $(this).parents('.donor__textfield')
1304                .removeClass('invalid')
1305                .removeClass('valid')
1306                .addClass('focus');
1307        }).on('blur.leyka', ':input', function(){
1308
1309            var $this = $(this),
1310                $field_wrapper = $this.parents('.donor__textfield'),
1311                test_val = $this.val();
1312
1313            $field_wrapper.removeClass('focus');
1314
1315            // Validate:
1316            if($field_wrapper.hasClass('donor__textfield--name')) {
1317
1318                if(test_val.length > 0) {
1319                    $field_wrapper.addClass('valid');
1320                } else {
1321                    $field_wrapper.addClass('invalid');
1322                }
1323
1324            } else if($field_wrapper.hasClass('donor__textfield--email')) {
1325
1326                if(test_val.length > 0 && is_email(test_val)){
1327                    $field_wrapper.addClass('valid');
1328                } else {
1329                    $field_wrapper.addClass('invalid');
1330                }
1331
1332            } else if($field_wrapper.hasClass('donor__textfield--phone')) {
1333
1334                test_val = $this.inputmask.length ? $this.inputmask('unmaskedvalue') : test_val;
1335
1336                if(test_val.length > 0 && is_phone_number(test_val)){
1337                    $field_wrapper.addClass('valid');
1338                } else {
1339                    $field_wrapper.addClass('invalid');
1340                }
1341
1342            } else if($field_wrapper.hasClass('donor__textfield--date')) {
1343
1344                if(test_val.length > 0 && is_date(test_val)){
1345                    $field_wrapper.addClass('valid');
1346                } else {
1347                    $field_wrapper.addClass('invalid');
1348                }
1349
1350            } else if($field_wrapper.hasClass('donor__textfield--comment')) {
1351
1352                if(test_val.length && $this.data('max-length') && test_val.length > $this.data('max-length')) {
1353                    $field_wrapper.addClass('invalid');
1354                } else {
1355                    $field_wrapper.addClass('valid');
1356                }
1357
1358            }
1359
1360        });
1361
1362    }
1363
1364    function bindOfertaEvents() {
1365
1366        $('.leyka-pf-revo .leyka-js-oferta-trigger').on('click.leyka', function(e){
1367            e.preventDefault();
1368
1369            $(this).parents('.leyka-pf').addClass('leyka-pf--oferta-open');
1370
1371        });
1372
1373        $('.leyka-pf-revo .leyka-js-oferta-close').on('click.leyka', function(e){
1374            e.preventDefault();
1375
1376            $(this)
1377                .parents('.leyka-pf').find('.donor__oferta')
1378                .removeClass('invalid').find('input[name="leyka_agree"]')
1379                .prop('checked', true);
1380
1381            $(this).parents('.leyka-pf').removeClass('leyka-pf--oferta-open');
1382
1383        });
1384
1385        // agree
1386        $('.leyka-pf-revo .donor__oferta').on('change.leyka', 'input:checkbox', function(){
1387
1388            if( $(this).parents('.donor__oferta').find('input:checkbox.required:not(:checked)').length ) {
1389                $(this).parents('.donor__oferta').addClass('invalid');
1390            } else {
1391                $(this).parents('.donor__oferta').removeClass('invalid');
1392            }
1393
1394        });
1395    }
1396
1397    function bindPdEvents() {
1398
1399        $('.leyka-pf-revo .leyka-js-pd-trigger').on('click.leyka', function(e){
1400            e.preventDefault();
1401
1402            $(this).parents('.leyka-pf').addClass('leyka-pf--pd-open');
1403
1404        });
1405
1406        $('.leyka-pf-revo .leyka-js-pd-close').on('click.leyka', function(e){
1407            e.preventDefault();
1408
1409            $(this)
1410                .parents('.leyka-pf').find('.donor__oferta')
1411                .removeClass('invalid').find('input[name="leyka_agree_pd"]')
1412                .prop('checked', true);
1413
1414            $(this).parents('.leyka-pf').removeClass('leyka-pf--pd-open');
1415
1416        });
1417
1418        // agree
1419        $('.leyka-pf-revo .donor__oferta').on('change.leyka', 'input:checkbox', function(){
1420
1421            if( $(this).parents('.donor__oferta').find('input:checkbox.required:not(:checked)').length ) {
1422                $(this).parents('.donor__oferta').addClass('invalid');
1423            } else {
1424                $(this).parents('.donor__oferta').removeClass('invalid');
1425            }
1426        });
1427    }
1428
1429    function bindHistoryEvents() {
1430
1431        $('.leyka-js-history-close').on('click', function(e){
1432            e.preventDefault();
1433
1434            $(this).parents('.leyka-pf--history-open').removeClass('leyka-pf--history-open');
1435        });
1436
1437        $('.leyka-js-history-more').on('click', function(e){
1438            e.preventDefault();
1439            $(this).parents('.leyka-pf, .leyka-pf-bottom').addClass('leyka-pf--history-open');
1440        });
1441
1442    }
1443
1444    function bindPaymentStepEvents() {
1445        $('.payment-opt__radio').change(function(){
1446            selectPaymentProvider($(this));
1447        });
1448    }
1449
1450    function bindNavigationEvents() {
1451        
1452        $('.leyka-js-another-step').on('click.leyka', function(e){
1453            e.preventDefault();
1454            goAnotherStep($(this));
1455        });
1456        
1457        $('.leyka-js-complete-donation').click(function(){
1458            $(this).closest('.leyka-pf').leykaForm('close');
1459        });
1460
1461        $('.leyka-submit-errors').on('click.leyka', function(e){
1462
1463            if($(e.target).is('a')) { // Click on links inside an error message shouldn't close it
1464                return;
1465            }
1466
1467            e.preventDefault();
1468
1469            $(this).hide();
1470            goFirstStep();
1471
1472        });
1473
1474    }
1475
1476    function bindAmountStepEvents() {
1477
1478        $('.leyka-js-amount').on('click', function(e){
1479            e.preventDefault();
1480            setChosenAmount($(this));
1481        });
1482
1483        var $amount_range = $('.amount_range').find('input'),
1484        $amount_figure = $('.amount__figure').find('input.leyka_donation_amount');
1485
1486        // Sync of amount field
1487        $amount_range.on('change input', syncFigure);
1488        $amount_figure.on('change input', syncRange);
1489        $amount_range.on('change input', syncAmountIcon);
1490        $amount_range.on('change input', syncCustomRangeInput);
1491
1492        $amount_figure
1493            .on('focus', function(){
1494                $(this).parents('.amount__figure').addClass('focus');
1495            })
1496            .on('blur', function(){
1497                $(this).parents('.amount__figure').removeClass('focus');
1498            });
1499
1500    }
1501
1502    function goFirstStep() {
1503
1504        var $_form = $(this).closest('.leyka-pf');
1505
1506        $_form.find('.payment-opt__radio').prop('checked', false); // Reset a chosen PM
1507
1508        $_form.find('.step').removeClass('step--active');
1509        $_form.find('.step:first').addClass('step--active');
1510        $_form.find('.leyka-pf__redirect').removeClass('leyka-pf__redirect--open');
1511
1512    }
1513
1514    function goAnotherStep($_link) {
1515
1516        var target = $_link.attr('href'),
1517        $_form = $_link.closest('.leyka-pf');
1518
1519        if(target === 'cards') {
1520            $_form.find('.payment-opt__radio').prop('checked', false); // Reset a chosen PM
1521        }
1522
1523        $_form.find('.step').removeClass('step--active');
1524        $_form.find('.step--'+target).addClass('step--active');
1525        $_form.find('.leyka-pf__final-screen').removeClass('leyka-pf__final--open').removeClass('leyka-pf__final--open-half');
1526
1527    }
1528
1529    function setupAmount() {
1530        $('.amount__figure input.leyka_donation_amount').each(function(){
1531
1532            var $this = $(this),
1533				$amount_range = $this.parents('.step__fields').find('.amount_range input'),
1534				value = parseInt($(this).val());
1535
1536            if(
1537            	!Number.isInteger(value) ||
1538				value < $amount_range.attr('min') ||
1539				value > $amount_range.attr('max')
1540			) {
1541                value = $amount_range.data('default-value');
1542            }
1543
1544			$this.val(value);
1545            $amount_range.val(value);
1546
1547            // Sync with bottom
1548            var formId = $this.closest('.leyka-pf').attr('id');
1549            $('div[data-target = "'+formId+'"]').find('input').val(value);
1550        });
1551    }
1552
1553    function syncFigure(event, options) {
1554        var val = $(this).val();
1555        
1556        if(options && options['skipSyncFigure']) {
1557            // skip sync figure after range change trigger
1558        }
1559        else {
1560            $(this).parents('.step__fields').find('.amount__figure').find('input.leyka_donation_amount').val(val);
1561            $(this).parents('.step__fields').removeClass('invalid');
1562        }
1563    }
1564
1565    function syncRange() {
1566
1567        var $this = $(this),
1568            val = $this.val(),
1569            $form = $this.parents('.leyka-pf__form');
1570
1571        if(!val) {
1572            val = 0;
1573        }
1574        
1575        $form.find('.step--amount .step__fields').removeClass('invalid');
1576        $form.find('.amount_range input').val(val).trigger('change', {'skipSyncFigure': true} );
1577
1578    }
1579
1580    function getAmountPercent($rangeInput) {
1581        var val = $rangeInput.val();
1582        var min, max;
1583
1584        try {
1585            min = parseInt($rangeInput.attr('min'));
1586            max = parseInt($rangeInput.attr('max'));
1587        } catch(e) {
1588            min = 0;
1589            max = 0;
1590        }
1591
1592        var percent = 0;
1593        if(max) {
1594            percent = 100 * (val - min) / (max - min);
1595        }
1596        return percent;
1597    }
1598
1599    function syncAmountIcon() {
1600        var percent = getAmountPercent($(this));
1601
1602        var amountIconIndex = 1;
1603        for(var i in amountIconMarks) {
1604            rangePercent = amountIconMarks[i];
1605            if(percent >= rangePercent) {
1606                amountIconIndex = parseInt(i) + 2;
1607            }
1608        }
1609
1610        var $svgIcon = $('.amount__icon .svg-icon');
1611
1612        // set icon class
1613        $svgIcon.find('use').attr("xlink:href", "#icon-money-size" + amountIconIndex);
1614
1615        // set size class
1616        $svgIcon.addClass('icon-money-size' + amountIconIndex);
1617        if(amountIconIndex != 1) {
1618            $svgIcon.removeClass('icon-money-size1')
1619        }
1620        for(var i in amountIconMarks) {
1621            var size = parseInt(i) + 2;
1622            if(amountIconIndex != size) {
1623                $svgIcon.removeClass('icon-money-size' + size);
1624            }
1625        }
1626    }
1627
1628    function syncCustomRangeInput() {
1629
1630        var percent = getAmountPercent($(this)),
1631            leftOffset = (inputRangeWidth - 2 * inputRangeButtonRadius) * percent / 100;
1632
1633        $('.range-circle').css({'left': (leftOffset) + 'px'});
1634        $('.range-color-wrapper').width(leftOffset + inputRangeButtonRadius);
1635
1636    }
1637
1638    function setChosenAmount($_link) {
1639
1640        var target = $_link.attr('href'),
1641            $_step = $_link.parents('.step'),
1642            $_form = $_link.parents('.leyka-pf__form'),
1643			$amount_field = $_step.find('.amount__figure input.leyka_donation_amount'),
1644			amount = parseInt($amount_field.val());
1645
1646        if(
1647        	!Number.isInteger(amount) ||
1648			amount < $amount_field.data('min-value') ||
1649			amount > $amount_field.data('max-value')
1650		) {
1651            $_step.find('.step__fields').addClass('invalid');
1652        } else {
1653
1654            $_step.find('.step__fields').removeClass('invalid');
1655
1656            if($_link.hasClass('monthly')) {
1657
1658                $_step.find('input.is-recurring-chosen').val(1);
1659                $_form.find('.remembered-amount').text(amount);
1660                $_form.find('.remembered-monthly').show();
1661
1662                var $recurring_option = $_form.find('.payment-opt__radio[data-has-recurring="1"]:first'),
1663                    $remembered_pm = $_form.find('.remembered-payment');
1664
1665				// Remember payment option
1666                $remembered_pm.closest('.leyka-js-another-step').attr('href', 'amount');
1667                $recurring_option.prop('checked', true);
1668                $remembered_pm.text($recurring_option.closest('.payment-opt').find('.payment-opt__label').text());
1669
1670            } else {
1671
1672                $_step.find('input.is-recurring-chosen').val(0);
1673                $_form.find('.remembered-amount').text(amount);
1674                $_form.find('.remembered-monthly').hide();
1675                $_form.find('.remembered-payment').parents('.leyka-js-another-step').attr('href', 'cards');
1676
1677                $_form.find('.payment-opt__radio').prop('checked', false); // Reset payment option
1678
1679            }
1680
1681            $_step.removeClass('step--active');
1682            $_form.find('.step--'+target).addClass('step--active');
1683        }
1684    }
1685
1686    /** payment step **/
1687    function setupPaymentsGrid() {
1688        
1689        let $pg = $('.leyka-payment-form[data-template="star"] .payments-grid');
1690        if($pg.find('.payment-opt').length <= 4) {
1691            $pg.css('overflow-y', 'hidden');
1692        }
1693
1694    }
1695    
1696    function selectPaymentProvider($_opt) {
1697
1698        var name = $_opt.parents('.payment-opt').find('.payment-opt__label').text(),
1699            $_step = $_opt.parents('.step'),
1700            $_form = $_opt.parents('.leyka-pf__form');
1701
1702        $('html').addClass('leyka-js--open-modal');
1703
1704        $_form.find('.remembered-payment').text(name);
1705
1706        $_step.removeClass('step--active');
1707
1708        var $step_static_step = $_form.find('.step--static.' + $_opt.val());
1709        if($step_static_step.length > 0) {
1710            $step_static_step.addClass('step--active');
1711        } else {
1712
1713            $_form.find('.step--person').addClass('step--active');
1714            $('html').removeClass('leyka-js--open-modal');
1715
1716        }
1717
1718    }
1719
1720    /* donor step */
1721    function setupDonorForm() {
1722        $('.donor__textfield--name').removeClass('invalid').removeClass('valid');
1723        $('.donor__textfield--email').removeClass('invalid').removeClass('valid');
1724        $('.donor__oferta').removeClass('invalid').removeClass('valid');
1725    }
1726
1727    /* open/close form */
1728    function open() {
1729
1730        var $this = $(this);
1731
1732        /** @todo For the forms caching task */
1733        // $this.find('.leyka-pf__form').append($('#'+$this.data('form-id'))); // Get form HTML from cache
1734
1735        $this.addClass('leyka-pf--active'); // Open the popup
1736	    $('.leyka-js').addClass('leyka-js--open-modal');
1737
1738        $('.amount_range input').change(); // Sync the coins picture with the amount
1739
1740    }
1741
1742    function openFromBottom() {
1743
1744        var formId = $(this).attr('data-target'),
1745            $form = $('#'+formId),
1746			$amount_field = $form.find('.amount__figure input'),
1747			amount = parseInt($amount_field.val());
1748
1749        //copy amount if it's correct
1750        if(
1751        	Number.isInteger(amount) &&
1752			amount >= $amount_field.attr('min') &&
1753			amount <= $amount_field.attr('max')
1754		) {
1755			$form.find('.amount__figure input.leyka_donation_amount').val(amount);
1756			$form.find('.amount_range input').val(amount);
1757        }
1758
1759        // Reset active steps
1760		$form.find('.step').removeClass('step--active');
1761		$form.find('.step--amount').addClass('step--active');
1762
1763		// Open a form
1764		$form.addClass('leyka-pf--active');
1765    }
1766
1767    function close() {
1768
1769        var $pf = $(this);
1770
1771        if($pf.hasClass('leyka-pf--oferta-open')) { // close only the Oferta terms window
1772            $pf.removeClass('leyka-pf--oferta-open');
1773        } else if($pf.hasClass('leyka-pf--pd-open')) { // close only the PD terms window
1774            $pf.removeClass('leyka-pf--pd-open');
1775        } else { // close module
1776            $pf.removeClass('leyka-pf--active');
1777	        $('.leyka-js').removeClass('leyka-js--open-modal');
1778        }
1779    }
1780
1781    $.fn.leykaForm = function(methodOrOptions) {
1782        if(methods[methodOrOptions]) {
1783            return methods[methodOrOptions].apply(this, Array.prototype.slice.call(arguments, 1));
1784        } else if (typeof methodOrOptions === 'object' || !methodOrOptions) {
1785            return methods.init.apply(this, arguments);
1786        } else {
1787            $.error('Method '+methodOrOptions+' does not exist on jQuery.leykaForm');
1788        }
1789    }
1790
1791}( jQuery ));
1792
1793/*
1794 * Common functionaly for every page with Leyka donation forms
1795 */
1796
1797window.LeykaPageMain = function($) {
1798    var self = this; self.$ = $;
1799    
1800    self.setupNoScroll();
1801    self.initForms();
1802    self.inpageCardColumns();
1803    self.setupCustomRangeControl();
1804    
1805    self.bindEvents();
1806    
1807    self.handleHashChange();
1808}
1809
1810window.LeykaPageMain.prototype = {
1811        
1812    bindEvents: function(){
1813
1814        var self = this; var $ = self.$;
1815   
1816        $('.leyka-js-open-form').on('click.leyka', function(e){
1817
1818            e.preventDefault();
1819            $(this).closest('.leyka-pf').leykaForm('open');
1820
1821        });
1822
1823        $('.leyka-js-close-form').on('click.leyka', function(e){
1824
1825            e.preventDefault();
1826            $(this).closest('.leyka-pf').leykaForm('close');
1827
1828        });
1829
1830        $(window).resize(function(){
1831            self.inpageCardColumns();
1832        });
1833
1834        $(window).on('hashchange', function() {
1835            self.handleHashChange();
1836        });
1837
1838    },
1839
1840    setupNoScroll: function() {
1841
1842        var self = this; var $ = self.$;
1843        var position = $(window).scrollTop();
1844
1845        $(window).scroll(function(){
1846
1847            var scroll = $(window).scrollTop();
1848
1849            if($('.leyka-pf').hasClass('leyka-pf--active')){
1850                $(window).scrollTop(position);
1851            } else {
1852                position = scroll;
1853            }
1854
1855        });
1856    },
1857
1858    initForms: function() {
1859
1860        var self = this,
1861            $ = self.$;
1862
1863        $('.leyka-pf').leykaForm();
1864
1865    },
1866
1867    inpageCardColumns: function() {
1868
1869        var self = this,
1870            $ = self.$,
1871            $form = $('.leyka-pf');
1872
1873        $form.each(function(){
1874
1875            let $this = $(this),
1876                current_width = $('.leyka-pf').width(),
1877                max_width = $this.data('card-2column-breakpoint-width') ? $this.data('card-2column-breakpoint-width') : 600;
1878
1879            if(current_width >= max_width) {
1880                $this.addClass('card-2col');
1881            } else {
1882                $this.removeClass('card-2col');
1883            }
1884
1885        });
1886    },
1887    
1888    setupCustomRangeControl: function() {
1889
1890        let self = this; var $ = self.$;
1891
1892        $('.amount__range_overlay').addClass('amount__range_custom--visible');
1893        $('.amount__range_custom').addClass('amount__range_custom--visible');
1894
1895    },
1896    
1897    handleHashChange: function(){
1898
1899        let self = this,
1900            $ = self.$,
1901            hash = window.location.hash.substr(1);
1902
1903        if(hash.indexOf('leyka-activate-package|') > -1) {
1904            self.handleHashActivatePackageChange(hash);
1905        } else if(hash) {
1906
1907            let parts = hash.split('|');
1908
1909            if(parts.length > 0) {
1910
1911                let form_id = parts[0];
1912
1913                if(form_id) {
1914
1915                    if(form_id.includes("!/")){ // If site navigation works via "#!" in URLs
1916                        return false;
1917                    }
1918
1919                    let $_form = $('#' + form_id);
1920                    
1921                    if($_form.length > 0) {
1922
1923                        $_form.leykaForm('open');
1924
1925                        for(let i in parts) {
1926                            self.handleFinalScreenParams($_form, parts[i]);
1927                        }
1928
1929                    }
1930
1931                }
1932
1933            }
1934        }
1935
1936    },
1937
1938    handleHashActivatePackageChange: function(hash) {
1939        var self = this; var $ = self.$;
1940
1941        var $leykaForm = $('.leyka-pm-form').first();
1942        $leykaForm.find('.section__fields.periodicity a[data-periodicity="monthly"]').trigger('click');
1943
1944        var parts = hash.split('|');
1945        if(parts.length > 1) {
1946            var amount_needed = parseInt(parts[1]);
1947            var $selectedSum = null;
1948
1949            $leykaForm.find('.amount__figure .swiper-item').each(function(i, el){
1950                if(parseInt($(el).data('value')) >= amount_needed) {
1951                    $selectedSum = $(el);
1952                    return false;
1953                }
1954            });
1955
1956            if(!$selectedSum) {
1957                $selectedSum = $leykaForm.find('.swiper-item.flex-amount-item');
1958                $selectedSum.find('input[name="donate_amount_flex"]').val(amount_needed);
1959            }
1960
1961            if($selectedSum) {
1962                $selectedSum.trigger('click');
1963            }
1964
1965        }
1966    },
1967    
1968    handleFinalScreenParams: function($_form, part){
1969        if(part.search(/final-open/) > -1) {
1970
1971            $_form
1972                .find('.leyka-pf__final-screen')
1973                .removeClass('leyka-pf__final--open')
1974                .removeClass('leyka-pf__final--open-half');
1975
1976            let final_parts = part.split('_');
1977            try {
1978
1979                let $final_screen = $_form.find('.leyka-pf__final-screen.leyka-pf__final-' + final_parts[1]);
1980
1981                $final_screen.addClass('leyka-pf__final--open');
1982                if(final_parts[2]) {
1983                    $final_screen.addClass('leyka-pf__final--open-half');
1984                }
1985
1986            } catch(ex) {
1987            }
1988
1989        }
1990    }
1991}
1992
1993jQuery(document).ready(function($){
1994
1995    leykaPageMain = new LeykaPageMain($);
1996    
1997}); //jQuery
1998
1999/** Shortcodes frontend */
2000
2001var leyka; // L10n lines
2002
2003jQuery(document).ready(function($){
2004
2005    // Supporters list shortcode:
2006    $('.leyka-js-supporters-list-more').on('click.leyka', function(e){
2007
2008        e.preventDefault();
2009
2010        var $more_names_link = $(this),
2011            $names_list_wrapper = $more_names_link.parents('.list-content').find('.supporters-names-wrapper'),
2012            $more_names_wrapper = $more_names_link.parents('.list-content').find('.supporters-list-more-wrapper'),
2013            names_remain_list = $more_names_link.data('names-remain').length ?
2014                $more_names_link.data('names-remain').split(';') : [],
2015            names_loads_remain_number = parseInt($more_names_link.data('loads-remain')),
2016            $names_remain_number_wrapper = $more_names_link.find('.leyka-names-remain-number'),
2017            names_remain_number = parseInt($names_remain_number_wrapper.text()),
2018            names_per_load = $more_names_link.data('names-per-load'),
2019            names_to_append = [];
2020
2021        if( !names_loads_remain_number || !names_remain_list.length ) {
2022            return;
2023        }
2024
2025        for(var i=0; i < names_per_load && names_remain_list.length > 0; i++) {
2026            names_to_append.push(names_remain_list.shift());
2027        }
2028
2029        if(names_to_append.length) {
2030            $names_list_wrapper.append(', ').append(names_to_append.join(', '));
2031        }
2032        names_loads_remain_number -= 1;
2033        names_remain_number -= names_per_load; //(names_remain_number >= names_per_load ? names_per_load : 1);
2034
2035        $more_names_link.data('names-remain', names_remain_list.join(';'));
2036        $more_names_link.data('loads-remain', names_loads_remain_number);
2037
2038        if(names_remain_number <= 0) {
2039            $more_names_wrapper.hide();
2040        } else {
2041            $names_remain_number_wrapper.html(names_remain_number); // Update the remain names number
2042        }
2043
2044        if( !names_loads_remain_number || !names_remain_list.length ) { // If no more names or loads, remove the link
2045            $more_names_link.replaceWith($more_names_link.text());
2046        }
2047
2048    });
2049
2050});
2051/** Donor's account frontend */
2052
2053jQuery(document).ready(function($){
2054    var $siteContent = $('#site_content');
2055    if(!$siteContent.length) {
2056		$siteContent = $('#content');
2057    }
2058
2059    if(!$siteContent.length) {
2060		$siteContent = $('#site-content');
2061    }
2062
2063    var $overlay = $('.leyka-ext-sp-activate-feature-overlay');
2064    var $sp = $('.leyka-ext-support-packages');
2065
2066    if(!$sp.length) {
2067    	return;
2068    }
2069
2070    if(!$sp.closest('body.page').length && !$sp.closest('body.single').length) {
2071        return;
2072    }
2073
2074    if($overlay.length && $siteContent.length) {
2075        $siteContent.addClass('leyka-ext-sp-site-content');
2076        let $overlayFirst = $overlay.first();
2077        $overlayFirst.appendTo($siteContent);
2078        $overlayFirst.css('display', 'block');
2079        overlayMaxPart = 0.7;
2080
2081        var paddingBottom = $overlayFirst.height();
2082        if($overlayFirst.height() > $siteContent.height() * overlayMaxPart) {
2083        	paddingBottom *= overlayMaxPart;
2084        }
2085        $siteContent.css('padding-bottom', paddingBottom + 'px');
2086    }
2087
2088    function renderActivateButton($parentSp, $activePackage) {
2089    	var hasSelectedPackages = $parentSp.find('.leyka-ext-sp-card.active').length > 0;
2090    	var $btn = $parentSp.closest('.leyka-ext-sp-activate-feature').find('.leyka-ext-sp-subscribe-action');
2091
2092    	if(hasSelectedPackages) {
2093    		$btn.addClass('active');
2094    	}
2095    	else {
2096    		$btn.removeClass('active');
2097    	}
2098
2099    	var href = $btn.attr('href');
2100    	href = href.split('#')[0];
2101    	href += "#leyka-activate-package|";
2102
2103    	if($activePackage) {
2104    		href += $activePackage.data('amount_needed');
2105    	}
2106
2107    	$btn.attr('href', href);
2108
2109    }
2110
2111    $('.leyka-ext-sp-subscribe-action').on('click', function(e){
2112		return $(this).hasClass('active');
2113    });
2114
2115    $sp.on('click', '.leyka-activate-package-link', function(e) {
2116    	e.stopPropagation();
2117    	return true;
2118    });
2119
2120    $sp.on('click', '.leyka-ext-sp-card', function(e) {
2121    	e.preventDefault();
2122    	var $parentSp = $(this).closest('.leyka-ext-support-packages');
2123
2124    	if(!$parentSp.closest('.leyka-ext-sp-activate-feature').length) {
2125    		return;
2126    	}
2127
2128    	$parentSp.find('.leyka-ext-sp-card').removeClass('active');
2129    	$(this).addClass('active');
2130
2131    	renderActivateButton($parentSp, $(this));
2132    });
2133
2134    if($sp.closest('.leyka-ext-sp-activate-feature').length) {
2135    	renderActivateButton($sp, null);
2136    }
2137});
2138
2139function leyka_ext_sp_init_locked_content_icons($){
2140
2141    let $titles = $('.leyka-ext-sp-locked-content .entry-title');
2142
2143    if($titles.length) {
2144        $titles.each(function(i, el){
2145            $(this).append($('<img>')
2146                .attr('src', leyka.ext_sp_article_locked_icon)
2147                .addClass('leyka-ext-sp-post-locked'));
2148        });
2149    }
2150
2151}
2152
2153jQuery(document).ready(function($){
2154    leyka_ext_sp_init_locked_content_icons(jQuery);
2155});
2156/*
2157 * Star form template functionality and handlers
2158 */
2159
2160jQuery(document).ready(function($){
2161
2162    function init() {
2163        assignSizeClasses();
2164		bindEvents();
2165    }
2166
2167    /* event handlers */
2168    function bindEvents() {
2169
2170        bindModeEvents();
2171        bindAgreeEvents();
2172        bindSwiperEvents();
2173        bindAmountEvents();
2174        bindDonorDataEvents();
2175        bindSubmitPaymentFormEvent();
2176        bindPMEvents();
2177
2178        // Window resize events:
2179        $(window).on('resize.leyka', function(){
2180            assignSizeClasses();
2181            setupSwiperWidth($('.leyka-pf-need-help'));
2182        }).resize();
2183
2184    }
2185
2186    function assignSizeClasses() {
2187
2188        let $form = $('.leyka-pf-need-help'),
2189            form_parent_width = Math.ceil($form.parent().width());
2190
2191        $form.removeClass('leyka-width-small leyka-width-medium leyka-width-large leyka-width-exlarge leyka-width-xxlarge');
2192
2193        if(form_parent_width <= (320 + 20 - 1)) {
2194            $form.addClass('leyka-width-small');
2195        } else if(form_parent_width <= (600 + 20 - 1)) {
2196            $form.addClass('leyka-width-medium');
2197        } else if(form_parent_width <= (760 + 20 - 1)) {
2198            $form.addClass('leyka-width-large');
2199        } else if(form_parent_width <= (1020 + 20 - 1)) {
2200            $form.addClass('leyka-width-exlarge');
2201        } else {
2202            $form.addClass('leyka-width-xxlarge');
2203        }
2204
2205    }
2206	
2207	function resize(e, element, k) {
2208
2209        let val = $.trim(element.value);
2210
2211        if( !val ) {
2212
2213            $(element).addClass('empty');
2214            
2215            if( !e || e.type === 'blur' ) {
2216                setAmountPlaceholder(element);
2217                val = $(element).attr('placeholder');
2218                $(element).siblings('.currency').hide();
2219                $(element).addClass('show-ph');
2220            } else if(e.type === 'focus') {
2221                $(element).siblings('.currency').show();
2222                $(element).removeClass('show-ph');
2223            }
2224
2225        } else {
2226            $(element).removeClass('empty');
2227            $(element).removeClass('show-ph');
2228        }
2229        
2230        setAmountInputValue($(element).closest('.leyka-tpl-star-form'), $(element).val());
2231
2232	}
2233    
2234    function setAmountPlaceholder(element) {
2235        if(isMobileScreen()) {
2236            $(element).prop('placeholder', $(element).data('mobile-ph'));
2237        } else {
2238            $(element).prop('placeholder', $(element).data('desktop-ph'));
2239        }
2240    }
2241	
2242	function bindAmountEvents() {
2243		
2244		function resizable(el, factor) {
2245
2246			let k = Number(factor) || 7.7,
2247                e = 'keyup,keypress,focus,blur,change'.split(',');
2248
2249			for(let i in e) {
2250				el.addEventListener(e[i], function(e){resize(e, el, k);}, false);
2251			}
2252
2253			resize(null, el, k);
2254
2255		}
2256
2257		$('.donate_amount_flex').each(function(i, element) {
2258
2259            if(parseInt($(this).css('font-size')) <= 16) {
2260                resizable(element, 7);
2261            } else {
2262                resizable(element, 11.1);
2263            }
2264
2265            setAmountPlaceholder(element);
2266
2267		});
2268        
2269        $('.leyka-tpl-star-form .amount__figure .swiper-item.selected').each(function(i, element){
2270            setAmountInputValue($(element).closest('.leyka-tpl-star-form'), getAmountValueFromControl($(element)));
2271        });
2272        
2273        $('.leyka-tpl-star-form .flex-amount-item').on('blur', 'input', function(){
2274            $(this).closest('.swiper-item').removeClass('focus');
2275            if(!$.trim($(this).val())) {
2276                $(this).closest('.swiper-item').addClass('empty');
2277            }
2278        });
2279        
2280        var keypressTimeout = null;
2281        $('.leyka-tpl-star-form .flex-amount-item').on('keyup', 'input', function(){
2282            var $_form = $(this).closest('form.leyka-pm-form');
2283            
2284            if(keypressTimeout) {
2285                clearTimeout(keypressTimeout);
2286                keypressTimeout = null;
2287            }
2288            
2289            if(!keypressTimeout) {
2290                keypressTimeout = setTimeout(function(){
2291                    checkFormFillCompletion($_form);
2292                    keypressTimeout = null;
2293                }, 500);
2294            }
2295        });
2296        
2297        $('.leyka-tpl-star-form .flex-amount-item input').each(function(i, el){
2298            if( !$.trim($(el).val()) ) {
2299                $(el).parent().addClass('empty');
2300            }
2301        });
2302	}
2303    
2304    function getAmountValueFromControl($element) {
2305
2306        let $predefined_amount = $element.find('span.amount'),
2307            val = '';
2308
2309        if($predefined_amount.length > 0) {
2310
2311            let $daily_rouble_comment = $element.parents('.star-swiper').find('.daily-rouble-comment'),
2312                $daily_rouble_amount = $daily_rouble_comment.find('.daily-rouble-amount')
2313
2314            val = $daily_rouble_comment.length ? $daily_rouble_amount.text() : $element.find('span.amount').text();
2315
2316        } else {
2317            val = $element.find('input.donate_amount_flex').val();
2318        }
2319
2320        return parseFloat(val.replace(/[^0-9]+/g, ''));
2321
2322    }
2323
2324    function setAmountInputValue($form, amount) {
2325
2326        amount = typeof amount === 'string' ? parseFloat(amount.replace(/[^0-9]+/g, '')) : amount;
2327
2328        let $amount_field = $form.find('input.leyka_donation_amount'),
2329            previous_value = parseFloat($amount_field.val());
2330
2331        if(amount !== previous_value) {
2332            $amount_field.val(amount).trigger('change');
2333        }
2334
2335    }
2336
2337    function showAmountOptionsByPaymentType($_form, payment_type) {
2338
2339        if($_form.find('.daily-rouble-comment:visible').length) {
2340            payment_type = 'daily_rouble';
2341        }
2342
2343        const currency = $('.section__fields.currencies a.active').data('currency'),
2344            $currency_tab = $(`.currency-tab.currency-${currency}`),
2345            $swiper_first_item = payment_type === 'daily_rouble' ?
2346                $currency_tab.find('.section--amount .swiper-item:first') :
2347                $currency_tab.find(`.section--amount .swiper-item[data-payment-type="${payment_type}"]`).first();
2348
2349        if(payment_type !== 'daily_rouble') {
2350
2351            $currency_tab.find(`.section--amount .swiper-item`).removeClass('selected');
2352            $currency_tab.find(`.section--amount .swiper-item:not(.flex-amount-item)`).css('display', 'none');
2353            $currency_tab.find(`.section--amount .swiper-item[data-payment-type="${payment_type}"]`).css('display', 'block');
2354
2355        }
2356
2357        $swiper_first_item.first().addClass('selected');
2358
2359        setAmountInputValue($_form, $swiper_first_item.find('.amount').text());
2360        showSelectedAmountDescription($_form, $swiper_first_item.data('payment-amount-option-id'));
2361
2362    }
2363
2364    function showSelectedAmountDescription($form, amount_option_id) {
2365
2366        $form.find('.section__fields.amount-description').css('display', 'none');
2367
2368        let $amount_option_description = $form.find(`.section__fields.amount-description span[data-payment-amount-option-id = "${amount_option_id}"]`);
2369
2370        if(amount_option_id && $amount_option_description && $amount_option_description.text() !== '') {
2371
2372            $form.find('.section__fields.amount-description').css('display', 'flex');
2373            $form.find('.section__fields.amount-description span').css('display', 'none');
2374
2375            $amount_option_description.css('display', 'block');
2376
2377        }
2378
2379    }
2380
2381    function bindModeEvents() {
2382
2383        $('.leyka-tpl-star-form .section__fields.periodicity').on('click.leyka', 'a', function(e){
2384
2385			e.preventDefault();
2386
2387			let $this = $(this),
2388                $_form = $(this).closest('form.leyka-pm-form');
2389
2390			$this.closest('.section__fields').find('a').removeClass('active');
2391			$this.addClass('active');
2392
2393            setupPeriodicity($_form);
2394            setupCurrencies($_form);
2395            setupSwiperWidth($_form);
2396
2397            const amount_mode = $('.section--amount .section__fields.amount').data('amount-mode');
2398            const payment_type = $this.data('periodicity') === 'once' ? 'single' : 'recurring';
2399
2400            if(amount_mode === 'flexible') {
2401                setAmountInputValue($_form, $('.flex-amount-item input').val());
2402            } else {
2403                showAmountOptionsByPaymentType($_form, payment_type);
2404            }
2405
2406        });
2407
2408        $('.leyka-tpl-star-form .section__fields.currencies').on('click.leyka', 'a', function(e){
2409
2410            e.preventDefault();
2411
2412            let $this = $(this),
2413                $_form = $(this).closest('form.leyka-pm-form'),
2414                currency = $(this).data('currency'),
2415                $currency_tab = $_form.find(`.currency-tab.currency-${currency}`);
2416
2417            $this.closest('.section__fields').find('a').removeClass('active');
2418            $this.addClass('active');
2419
2420            $_form.find('.currency-tab').addClass('leyka-hidden');
2421            $currency_tab.removeClass('leyka-hidden').show();
2422            setupSwiperWidth($currency_tab);
2423
2424            if(currency !== 'crypto') {
2425                $_form.find('.section--person').removeClass('leyka-hidden');
2426            } else {
2427                $_form.find('.section--person').addClass('leyka-hidden');
2428            }
2429
2430            const amount_mode = $('.section--amount .section__fields.amount').data('amount-mode');
2431            const payment_type = $('.section__fields.periodicity a.active').data('periodicity') === 'once' ?
2432                'single' : 'recurring';
2433
2434            if(amount_mode === 'flexible') {
2435                setAmountInputValue($_form, $('.flex-amount-item input').val());
2436            } else {
2437                showAmountOptionsByPaymentType($_form, payment_type);
2438            }
2439
2440            $currency_tab.find('.payments-grid .swiper-item.selected .payment-opt__button').click();
2441
2442        });
2443
2444        $('.leyka-tpl-star-form .currency-tab .leyka-button-copy').on('click.leyka', function(e){
2445
2446            const $btn = $(this);
2447
2448            $btn.css('pointer-events', 'none');
2449
2450            const $tmp = $("<textarea>");
2451
2452            $('body').append($tmp);
2453
2454            $tmp.val($btn.parent('.leyka-cryptocurrency-data-wrapper').find('.leyka-cryptocurrency-link').text())
2455                .select();
2456
2457            document.execCommand('copy');
2458
2459            $tmp.remove();
2460
2461            const $btn_img = $btn.find('img'),
2462                $btn_span = $btn.find('span'),
2463                $wallet_link = $btn.parents('.leyka-cryptocurrency-data-wrapper').find('.leyka-cryptocurrency-link');
2464
2465            $btn_img.addClass('leyka-hidden');
2466
2467            $wallet_link.css('opacity', 0.3);
2468
2469            $btn_span
2470                .animate({ marginRight: '0'}, 200)
2471                .delay(1200)
2472                .animate({ marginRight: '-135px'}, 200, function(){
2473
2474                    $btn_img.removeClass('leyka-hidden');
2475                    $btn.css('pointer-events', 'all');
2476                    $wallet_link.css('opacity', 1);
2477
2478                });
2479
2480        });
2481
2482        $('.leyka-tpl-star-form form.leyka-pm-form').each(function(){
2483
2484            setupPeriodicity($(this));
2485            setupCurrencies($(this));
2486            setupSwiperWidth($(this));
2487
2488            const $_form = $(this).closest('form.leyka-pm-form');
2489            const amount_mode = $('.section--amount .section__fields.amount').data('amount-mode');
2490            const payment_type = $('.section__fields.periodicity a.active').data('periodicity') === 'once' ? 'single' : 'recurring';
2491
2492            if(amount_mode === 'flexible') {
2493                setAmountInputValue($_form, $('.flex-amount-item input').val());
2494            } else {
2495                showAmountOptionsByPaymentType($_form, payment_type);
2496            }
2497
2498        });
2499    }
2500
2501    function setupSwiperWidth($_form) {
2502
2503        // Amount swiper setup:
2504        $_form.find('.amount__figure.star-swiper .swiper-list .swiper-item').last().css('margin-right', '0px');
2505
2506        // PM swiper setup:
2507        let $swiper = $_form.find('.payments-grid .star-swiper'),
2508            $list = $swiper.find('.swiper-list'), // $list is empty in full-list width mode
2509            $active_item = $swiper.find('.swiper-item.selected:not(.disabled)').first();
2510
2511        if( !$active_item.length ) {
2512
2513            $swiper.find('.swiper-item:not(.disabled)').first().addClass('selected');
2514            $active_item = $swiper.find('.swiper-item.selected:not(.disabled)').first();
2515            $active_item.find('input[type=radio]').prop('checked', true).change();
2516
2517        }
2518
2519        $list.find('.swiper-item:not(.disabled)').css('margin-right', '16px');
2520        $list.find('.swiper-item:not(.disabled)').last().css('margin-right', '0px');        
2521        $list.css('width', '100%');
2522
2523        // Fixed max width must work both in swiper and full width mode, so use $swiper instead of $list:
2524        let max_width = $swiper.closest('.leyka-payment-form').width();
2525
2526        if($swiper.find('.full-list').length) {
2527
2528            max_width = $_form.width() > 502 ? (max_width - 60) / 2 : max_width - 60;
2529            $swiper.find('.payment-opt__label').css('max-width', max_width);
2530            $swiper.find('.payment-opt__icon').css('max-width', max_width);
2531
2532            if($_form.width() < 220) {
2533
2534                $swiper.find('.payment-opt').css('flex-basis', $_form.width());
2535                $_form.find('.donor-field').css('flex-basis', $_form.width());
2536
2537            }
2538
2539        } else {
2540
2541            max_width -= 184;
2542            $swiper.find('.payment-opt__label').css('max-width', max_width);
2543            $swiper.find('.payment-opt__icon').css('max-width', max_width);
2544
2545            $swiper.find('.swiper-item').each(function(i, item){
2546
2547                $(item).css(
2548                    'min-width',
2549                    Math.min(max_width, Math.max(
2550                        $(item).find('.payment-opt__label').width(),
2551                        $(item).find('.pm-icon').length * 40) // Max width of PM icon
2552                    ) + 64
2553                );
2554
2555            });
2556
2557            // Fix for FF and Safari:
2558            let $active_pm_item = $swiper.find('.swiper-item:not(.disabled)');
2559            if($active_pm_item.length <= 1) {
2560                $active_pm_item.css('width', '100%');
2561            } else {
2562                $active_pm_item.css('width', 'auto');
2563            }
2564
2565        }
2566
2567        toggleSwiperArrows($swiper);
2568        swipeList($swiper, $active_item);
2569
2570        setupSinglePMBlock($_form);
2571
2572    }
2573
2574    function setupSinglePMBlock($_form) {
2575
2576        $_form = $_form.hasClass('currency-tab') ? $_form.parents('form.leyka-pm-form') : $_form;
2577
2578        let $available_pm_blocks = $_form.find('.currency-tab:visible').find('.payments-grid .swiper-item:not(.disabled)'),
2579            $single_pm_icon_block = $_form.find('.single-pm-icon'),
2580            $pm_form_section = $_form.find('.currency-tab:visible').find('.section--cards');
2581
2582        if($available_pm_blocks.length === 1) {
2583
2584            $single_pm_icon_block.html($available_pm_blocks.find('.payment-opt__icon').html()).show();
2585            $pm_form_section.hide();
2586
2587        } else {
2588
2589            $single_pm_icon_block.hide();
2590            $pm_form_section.show();
2591
2592        }
2593
2594    }
2595
2596    function setupPeriodicity($_form) {
2597
2598        let is_recurring = false,
2599            $active_periodicity_tab = $_form.find('.section__fields.periodicity a.active');
2600
2601        if($active_periodicity_tab.length) {
2602            is_recurring = $active_periodicity_tab.data('periodicity') === 'monthly';
2603        } else {
2604            is_recurring = parseInt($_form.find('input.is-recurring-chosen').val()) === 1;
2605        }
2606
2607        $_form.find('.section__fields.periodicity a').removeClass('active');
2608
2609        if(is_recurring) {
2610
2611            $_form.find('.section__fields.periodicity a[data-periodicity="monthly"]').addClass('active');
2612            $_form.find('input.is-recurring-chosen').val('1').trigger('change');
2613            $_form.find('.payments-grid .swiper-item').each(function(i, element){
2614
2615                let $swiper_item = $(element);
2616
2617                if($swiper_item.find('input[data-has-recurring="0"]').length > 0) {
2618                    $swiper_item
2619                        .addClass('disabled')
2620                        .removeClass('selected')
2621                        .find('input[type="radio"]')
2622                            .prop('checked', false);
2623                }
2624
2625            });
2626
2627        } else {
2628
2629            $_form.find('.section__fields.periodicity a[data-periodicity="once"]').addClass('active');
2630            $_form.find('input.is-recurring-chosen').val('0').trigger('change');
2631            $_form.find('.payments-grid .swiper-item').each(function(i, element){
2632
2633                if($(element).find('input[data-has-recurring="0"]').length > 0) {
2634                    $(element).removeClass('disabled');
2635                }
2636
2637            });
2638
2639        }
2640
2641        setupSinglePMBlock($_form);
2642        checkFormFillCompletion($_form);
2643
2644    }
2645
2646    function setupCurrencies($form) {
2647
2648        const $section_currencies = $form.find('.section.section--currencies'),
2649            periodicity = $form.find('.section__fields.periodicity a.active').data('periodicity'),
2650            main_currency = $section_currencies.data('main-currency'),
2651            currencies_count = parseInt($section_currencies.data('currencies-count'), 10),
2652            is_crypto_enabled = $section_currencies.data('is-crypto-enabled');
2653
2654        if(currencies_count > 1 || is_crypto_enabled == 1) {
2655            $section_currencies.removeClass('leyka-hidden');
2656        }
2657
2658        if(periodicity === 'once') {
2659            $section_currencies.find('a[data-currency="crypto"]').removeClass('leyka-hidden');
2660        } else {
2661            $section_currencies.find('a[data-currency="crypto"]').addClass('leyka-hidden');
2662        }
2663
2664        $form.find('.section__fields.currencies a').removeClass('active');
2665        $form.find('.currency-tab').addClass('leyka-hidden');
2666        $form.find(`.section__fields.currencies a[data-currency="${main_currency}"]`).addClass('active');
2667        $form.find(`.currency-tab.currency-${main_currency}`).removeClass('leyka-hidden');
2668
2669    }
2670
2671    function bindSwiperEvents() {
2672
2673        let $swiper = $('.leyka-tpl-star-form .star-swiper');
2674
2675        $swiper.on('click.leyka', '.swiper-item', function(e){
2676
2677            let $this = $(this),
2678                $swiper = $this.closest('.star-swiper'),
2679                $daily_rouble_comment = $this.parents('.star-swiper').find('.daily-rouble-comment'),
2680                $daily_rouble_amount = $daily_rouble_comment.find('.daily-rouble-amount'),
2681                $form = $this.closest('.leyka-tpl-star-form');
2682
2683        	if($this.hasClass('selected')) {
2684        		return;
2685        	}
2686
2687            $this.siblings('.swiper-item.selected').removeClass('selected');
2688            $this.addClass('selected');
2689            $this.find('input[type="radio"]').prop('checked', true).change();
2690
2691            if($daily_rouble_comment.length) {
2692
2693                let $submit = $swiper.parents('.leyka-pm-form').find('.donor__submit input[type="submit"]'),
2694                    first_amount_block_offset = $swiper.find('.swiper-item:first-child').offset().left,
2695                    $selected_amount_block = $swiper.find('.swiper-item.selected'),
2696                    comment_arrow_offset = $selected_amount_block.offset().left
2697                        - first_amount_block_offset
2698                        + $selected_amount_block.outerWidth()/3,
2699                    monthly_amount_formatted = (30 * parseInt($this.data('value'))).format();
2700
2701                $daily_rouble_amount.text(monthly_amount_formatted);
2702                $submit.val( $submit.data('submit-text-template').replace('#DAILY_ROUBLE_AMOUNT#', monthly_amount_formatted) );
2703
2704                // Move the "daily rouble" comment arrow to the selected amount block:
2705                let style = document.createElement('style');
2706                style.innerHTML = '.amount__figure.star-swiper .daily-rouble-comment:before {left: '+comment_arrow_offset+'px !important;}';
2707                document.head.appendChild(style);
2708
2709            }
2710
2711            if($this.parents('.section--amount').length > 0) {
2712                showSelectedAmountDescription($form, $this.data('payment-amount-option-id'));
2713            }
2714
2715            swipeList($swiper, $this);
2716            toggleSwiperArrows($swiper);
2717
2718            if($this.hasClass('flex-amount-item')) {
2719                $this.find('input[type="number"]').focus();
2720                $this.addClass('focus').removeClass('empty');
2721            }
2722            
2723            if($swiper.hasClass('amount__figure')) {
2724                setAmountInputValue($form, getAmountValueFromControl($this));
2725            }
2726
2727            checkFormFillCompletion($form);
2728
2729        });
2730
2731        const currency = $('.section__fields.currencies a.active').data('currency'),
2732            $currency_tab = $(`.currency-tab.currency-${currency}`),
2733            payment_type = $('.section__fields.periodicity a.active').data('periodicity') === 'once' ? 'single' : 'recurring',
2734            $swiper_amount_first_item = $currency_tab
2735                .find(`.section--amount .swiper-item[data-payment-type="${payment_type}"]`)
2736                    .first(),
2737            $swiper_cards_first_item = $currency_tab.find(`.section--cards .swiper-item`).first();
2738
2739        $swiper_amount_first_item.click();
2740        $swiper_cards_first_item.click();
2741
2742        $currency_tab.find('.star-swiper .swiper-item.selected')
2743            .find('input[type="radio"]')
2744                .prop('checked', true)
2745                .change();
2746
2747        $swiper.on('click.leyka', 'a.swiper-arrow', function(e){
2748
2749            e.preventDefault();
2750
2751			let $this = $(this),
2752                $swiper = $this.closest('.star-swiper'),
2753                $activeItem = $swiper.find('.swiper-item.selected:not(.disabled)'),
2754                $nextItem = null;
2755
2756			if($this.hasClass('swipe-right')) {
2757				$nextItem = $activeItem.nextAll('.swiper-item:not(.disabled)').first();
2758			} else {
2759				$nextItem = $activeItem.prevAll('.swiper-item:not(.disabled)').first();
2760			}
2761
2762			if( !$nextItem.length ) {
2763
2764				if($this.hasClass('swipe-right')) {
2765					$nextItem = $swiper.find('.swiper-item:not(.disabled)').first();
2766				} else {
2767					$nextItem = $swiper.find('.swiper-item:not(.disabled)').last();
2768				}
2769
2770			}
2771
2772			if($nextItem.length) {
2773
2774				$activeItem.removeClass('selected');
2775				$nextItem.addClass('selected');
2776                $nextItem.find('input[type="radio"]').prop('checked', true).change();
2777
2778			}
2779
2780            swipeList($swiper, $nextItem);
2781            toggleSwiperArrows($swiper);
2782
2783            if($nextItem.hasClass('flex-amount-item')) {
2784
2785                $nextItem.find('input[type=number]').focus();
2786                $nextItem.addClass('focus').removeClass('empty');
2787
2788            }
2789
2790            if($swiper.hasClass('amount__figure')) {
2791                setAmountInputValue($nextItem.closest('.leyka-tpl-star-form'), getAmountValueFromControl($nextItem));
2792            }
2793
2794            checkFormFillCompletion($swiper.closest('form.leyka-pm-form'));
2795
2796        });
2797        
2798        $('.star-swiper').each(function() {
2799            toggleSwiperArrows($(this));
2800        });
2801
2802    }
2803    
2804    function swipeList($swiper, $activeItem) {
2805
2806        let $list = $swiper.find('.swiper-list');
2807
2808        if( !$list.length ) {
2809            return;
2810        }
2811
2812        $list.stop(true, true);
2813
2814        let dif = $list.width() - $swiper.width();
2815        if(dif <= 0) {
2816            $list.width($swiper.width());
2817            $list.css('left', 0);
2818            return;
2819        }
2820
2821        // var left = parseInt($list.css('left'));
2822        if($swiper.find('.swiper-item:not(.disabled)').first().hasClass('selected')) {
2823            left = 0;
2824        } else if($swiper.find('.swiper-item:not(.disabled)').last().hasClass('selected')) {
2825            left = -dif;
2826        } else {
2827            left = $swiper.width() / 2 - ($activeItem.offset().left - $list.offset().left) - $activeItem.width() / 2;
2828            left -= parseInt($activeItem.css('margin-right')) * 1.5; //24; // minus margin * 1.5
2829        }
2830        
2831        $list.animate({'left': left});
2832
2833    }
2834    
2835    function toggleSwiperArrows($swiper) {
2836
2837        let $list = $swiper.find('.swiper-list'),
2838            listWidth = 0;
2839
2840        if(isMobileScreen()) {
2841            $list.width($swiper.width());
2842        } else {
2843            $list.find('.swiper-item:not(.disabled)').each(function(){
2844                listWidth += $(this).outerWidth(true);
2845            });
2846            $list.width(listWidth);
2847        }
2848
2849        if($list.find('.swiper-item:not(.disabled)').length <= 1) {
2850            $swiper.addClass('only-one-item');
2851        } else {
2852            $swiper.removeClass('only-one-item');
2853        }
2854
2855        if($list.width() <= $swiper.width()) {
2856
2857            $swiper
2858                .removeClass('show-left-arrow')
2859                .removeClass('show-right-arrow');
2860
2861            $list.width($swiper.width()).css('left', 0);
2862
2863            return;
2864
2865        }
2866
2867        if($swiper.find('.swiper-item:not(.disabled)').first().hasClass('selected')) {
2868            $swiper.removeClass('show-left-arrow');
2869        } else {
2870            $swiper.addClass('show-left-arrow');
2871        }
2872
2873        if($swiper.find('.swiper-item:not(.disabled)').last().hasClass('selected')) {
2874            $swiper.removeClass('show-right-arrow');
2875        } else {
2876            $swiper.addClass('show-right-arrow');
2877        }
2878
2879    }
2880    
2881    // agree functions
2882    function bindAgreeEvents() {
2883
2884        bindOfertaEvents();
2885        bindPdEvents();
2886        
2887        // agree
2888        $('.leyka-tpl-star-form .donor__oferta').on('change.leyka', 'input:checkbox', function(){
2889
2890            let $donorOferta = $(this).closest('.donor__oferta');
2891            
2892            if( $donorOferta.find('input:checkbox.required:not(:checked)').length ) {
2893                $donorOferta.addClass('invalid');
2894            } else {
2895                $donorOferta.removeClass('invalid');
2896            }
2897            
2898            checkFormFillCompletion($(this).closest('form.leyka-pm-form'));
2899
2900        });
2901
2902    }
2903    
2904    function bindOfertaEvents() {
2905        
2906        $('.leyka-tpl-star-form .leyka-js-oferta-trigger').on('click.leyka', function(e){
2907
2908            e.preventDefault();
2909
2910            let $form = $(this).parents('.leyka-tpl-star-form');
2911            $form
2912                .addClass('leyka-pf--oferta-open')
2913                .find('.leyka-pf__agreement')
2914                    .css('top', getAgreeModalTop($form));
2915
2916            // $([document.documentElement, document.body]).animate({
2917            //     scrollTop: $form.offset().top - 64
2918            // });
2919
2920        });
2921
2922        $('.leyka-tpl-star-form .leyka-pf__agreement.oferta .agreement__close').on('click.leyka', function(e){
2923
2924            e.preventDefault();
2925
2926            $(this).parents('.leyka-tpl-star-form').removeClass('leyka-pf--oferta-open');
2927
2928        });
2929    }
2930
2931    function bindPdEvents() {
2932
2933        $('.leyka-tpl-star-form .leyka-js-pd-trigger').on('click.leyka', function(e){
2934
2935            e.preventDefault();
2936
2937            let $form = $(this).parents('.leyka-tpl-star-form');
2938            $form
2939                .addClass('leyka-pf--pd-open')
2940                .find('.leyka-pf__agreement')
2941                    .css('top', getAgreeModalTop($form));
2942
2943            $([document.documentElement, document.body]).animate({
2944                scrollTop: $form.offset().top - 64
2945            });
2946
2947        });
2948
2949        $('.leyka-tpl-star-form .leyka-pf__agreement.pd .agreement__close').on('click.leyka', function(e){
2950
2951            e.preventDefault();
2952
2953            $(this).parents('.leyka-tpl-star-form').removeClass('leyka-pf--pd-open');
2954
2955        });
2956    }
2957
2958    function getAgreeModalTop($form) {
2959
2960        let $wp_admin_bar = $('#wpadminbar');
2961
2962        return ($wp_admin_bar.length ? $wp_admin_bar.height() : 32) + 'px';
2963
2964    }
2965
2966    function addError($errors_block, error_html) {
2967
2968        if( !$errors_block.length || !error_html.length ) {
2969            return true;
2970        }
2971
2972        $errors_block.html(error_html).show();
2973
2974        // Center the error block in the viewport
2975        $('html, body').animate({
2976            scrollTop: $errors_block.offset().top - ($(window).height() - $errors_block.outerHeight()) / 2
2977        }, 250);
2978
2979        return false;
2980
2981    }
2982
2983    function bindSubmitPaymentFormEvent() {
2984
2985        $('.leyka-tpl-star-form').on('submit.leyka', 'form.leyka-pm-form', function(e){
2986
2987            var $form = $(this),
2988                $currency_tab = $form.find('.currency-tab:not(.leyka-hidden)'),
2989                $errors = $form.parents('.leyka-payment-form').siblings('.leyka-submit-errors'),
2990                $pm_selected = $form.find('input[name="leyka_payment_method"]:checked'),
2991                currency = $('.section__fields.currencies a.active').data('currency');
2992
2993            $form.find(`.currency-tab:not(.currency-${currency})`).remove();
2994
2995			e.preventDefault();
2996
2997            if( !leykaValidateForm($form) ) { // Form errors exist
2998
2999                e.preventDefault();
3000                e.stopPropagation();
3001                return;
3002
3003            }
3004
3005            if($pm_selected.data('processing') !== 'default') {
3006
3007                if($pm_selected.data('processing') !== 'custom-process-submit-event') {
3008                    e.stopPropagation();
3009                }
3010                return;
3011
3012            }
3013
3014            // Open "waiting" form section:
3015            var $redirect_section = $form.closest('.leyka-pf').find('.leyka-pf__redirect'),
3016                data_array = $form.serializeArray(),
3017                data = {action: 'leyka_ajax_get_gateway_redirect_data'};
3018
3019            for(var i = 0; i < data_array.length; i++) {
3020                data[data_array[i].name] = data_array[i].value;
3021            }
3022
3023            if($pm_selected.data('ajax-without-form-submission')) {
3024                data['without_form_submission'] = true;
3025            }
3026
3027            // Get gateway redirection form and submit it manually:
3028            $.post(leyka_get_ajax_url(), data).done(function(response){
3029
3030                response = $.parseJSON(response);
3031
3032                // Wrong answer from ajax handler:
3033                if( !response || typeof response.status === 'undefined' ) {
3034                    return false;
3035                } else if(response.status !== 0 && typeof response.message !== 'undefined') {
3036                    return addError($errors, response.message);
3037                } else if( !response.payment_url ) {
3038                    return false;
3039                }
3040
3041                var redirect_form_html = '<form class="leyka-auto-submit" action="'+response.payment_url+'" method="post">';
3042
3043                $.each(response, function(field_name, value){
3044                    if(field_name !== 'payment_url') {
3045                        redirect_form_html += '<input type="hidden" name="'+field_name+'" value="'+value+'">';
3046                    }
3047                });
3048                redirect_form_html += '</form>';
3049
3050                $redirect_section.append(redirect_form_html);
3051
3052                if(typeof response.submission_redirect_type === 'undefined' || response.submission_redirect_type === 'auto') {
3053                    $redirect_section.find('.leyka-auto-submit').submit();
3054                } else if(response.submission_redirect_type === 'redirect') {
3055                    window.location.href = $redirect_section.find('.leyka-auto-submit').attr('action'); // Don't use prop() here
3056                }
3057
3058            });
3059
3060        });
3061
3062    }
3063    
3064    function bindDonorDataEvents() {
3065        var keypressTimeout = null;
3066        $('.leyka-tpl-star-form .donor__textfield').on('keyup', 'input,textarea', function(){
3067            var $_form = $(this).closest('form.leyka-pm-form');
3068            
3069            if(keypressTimeout) {
3070                clearTimeout(keypressTimeout);
3071                keypressTimeout = null;
3072            }
3073            
3074            if(!keypressTimeout) {
3075                keypressTimeout = setTimeout(function(){
3076                    checkFormFillCompletion($_form);
3077                    keypressTimeout = null;
3078                }, 500);
3079            }
3080        });
3081    }
3082    
3083    function checkFormFillCompletion($_form) {
3084        $_form.find('input[type=submit]').prop('disabled', !isFormFill($_form));
3085    }
3086    
3087    function isFormFill($_form) {
3088        
3089		var is_filled = true,
3090			email = $.trim($_form.find('.donor__textfield--email input').val()),
3091			$amount_field = $_form.find('.amount__figure input.leyka_donation_amount'),
3092			amount = parseInt($amount_field.val().replace(/\s/g, '')),
3093			$agree_terms = $_form.find('.donor__oferta input[name="leyka_agree"]'),
3094			$agree_pd = $_form.find('.donor__oferta input[name="leyka_agree_pd"]');
3095
3096		if($_form.find('.donor__textfield--name input').val().length === 0) {
3097            is_filled = false;
3098		}
3099
3100		if(email.length === 0) {
3101            is_filled = false;
3102		}
3103
3104		if(
3105			($agree_terms.length && !$agree_terms.prop('checked')) ||
3106			($agree_pd.length && !$agree_pd.prop('checked'))
3107		) {
3108            is_filled = false;
3109		}
3110
3111		if(amount <= 0) {
3112            is_filled = false;
3113		}
3114        
3115        return is_filled;
3116    }
3117    
3118    function bindPMEvents() {
3119
3120        $('.leyka-tpl-star-form form.leyka-pm-form').each(function(){
3121
3122            let $_form = $(this);
3123
3124            toggleStaticPMForm($_form);
3125            togglePmSpecialFields($_form);
3126
3127            $(this).find('input.payment-opt__radio').change(function(){
3128
3129                if($(this).prop('checked')) {
3130
3131                    toggleStaticPMForm($_form);
3132                    togglePmSpecialFields($_form);
3133
3134                }
3135
3136            });
3137
3138        });
3139
3140        const currency = $('.section__fields.currencies a.active').data('currency'),
3141            $currency_tab = $(`.currency-tab.currency-${currency}`);
3142
3143        $currency_tab.find('.payments-grid .swiper-item.selected').each(function(i, el){
3144            $(this).click();
3145        });
3146
3147    }
3148    
3149    function toggleStaticPMForm($form) {
3150
3151        var $pmRadio = $form.find('input[name="leyka_payment_method"]:checked');
3152
3153        if($pmRadio.data('processing') === 'static') {
3154
3155            $form.find('.section--static').hide();
3156            $form.find('.section--person').hide();
3157            $form.find('.section--static.' + $pmRadio.val()).show();
3158
3159        } else {
3160
3161            $form.find('.section--static').hide();
3162            $form.find('.section--person').show();
3163
3164        }
3165
3166    }
3167
3168    function togglePmSpecialFields($form) {
3169
3170        let $pm_radio = $form.find('input[name="leyka_payment_method"]:checked');
3171
3172        $form.find('.special-field').hide();
3173        $form.find('.special-field.'+$pm_radio.val()).show();
3174
3175    }
3176
3177    function isMobileScreen() {
3178        return $(document).width() < 640;
3179    }
3180
3181	init();
3182
3183});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.