@ecomplus/widget-search-engine 1.0.0-beta.113 → 1.0.0-beta.114
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/cms.config.js +1 -0
- package/dist/public/widget-search-engine.1.min.js +1 -1
- package/dist/public/widget-search-engine.1.min.js.map +1 -1
- package/dist/public/widget-search-engine.2.min.js +1 -1
- package/dist/public/widget-search-engine.2.min.js.map +1 -1
- package/dist/public/widget-search-engine.3.min.js +1 -1
- package/dist/public/widget-search-engine.4.min.js +1 -1
- package/dist/public/widget-search-engine.5.min.js +1 -1
- package/dist/public/widget-search-engine.var.min.js +1 -1
- package/dist/public/widget-search-engine.var.min.js.map +1 -1
- package/dist/widget-search-engine.1.min.js +1 -1
- package/dist/widget-search-engine.1.min.js.map +1 -1
- package/dist/widget-search-engine.2.min.js +1 -1
- package/dist/widget-search-engine.2.min.js.map +1 -1
- package/dist/widget-search-engine.3.min.js +1 -1
- package/dist/widget-search-engine.4.min.js +1 -1
- package/dist/widget-search-engine.5.min.js +1 -1
- package/dist/widget-search-engine.min.js +1 -1
- package/dist/widget-search-engine.min.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["webpack://widgetSearchEngine//home/runner/work/storefront/storefront/node_modules/vue-social-sharing/dist/vue-social-sharing.js","webpack://widgetSearchEngine//home/runner/work/storefront/storefront/node_modules/vue-cleave-component/dist/vue-cleave.min.js","webpack://widgetSearchEngine//home/runner/work/storefront/storefront/node_modules/cleave.js/dist/cleave-esm.js","webpack://widgetSearchEngine/(webpack)/buildin/global.js"],"names":["self","module","exports","t","e","r","i","n","l","call","m","c","d","o","Object","defineProperty","enumerable","get","Symbol","toStringTag","value","__esModule","create","bind","default","prototype","hasOwnProperty","p","s","baidu","buffer","email","evernote","facebook","flipboard","hackernews","instapaper","line","linkedin","messenger","odnoklassniki","pinterest","pocket","quora","reddit","skype","sms","stumbleupon","telegram","tumblr","twitter","viber","vk","weibo","whatsapp","wordpress","xing","yammer","window","name","props","network","type","String","required","url","title","description","quote","hashtags","twitterUser","media","tag","popup","width","height","data","popupTop","popupLeft","popupWindow","popupInterval","computed","networks","this","$SocialSharing","options","key","toLowerCase","rawLink","navigator","userAgent","indexOf","replace","shareLink","length","encodeURIComponent","encodedHashtags","split","render","Error","class","on","click","substring","attrs","href","$slots","methods","resizePopup","innerWidth","document","documentElement","clientWidth","screenX","innerHeight","clientHeight","screenY","screen","availWidth","screenLeft","screenTop","share","clearInterval","close","emit","open","focus","setInterval","closed","touch","$root","$emit","install","component","assign","u","arguments","apply","a","blur","onBlur","validator","raw","Boolean","cleave","onValueChangedFn","mounted","$el","getOptions","onValueChanged","target","rawValue","watch","deep","handler","destroy","setRawValue","getRawValue","beforeDestroy","commonjsGlobal","global","NumeralFormatter","numeralDecimalMark","numeralIntegerScale","numeralDecimalScale","numeralThousandsGroupStyle","numeralPositiveOnly","stripLeadingZeroes","prefix","signBeforePrefix","tailPrefix","delimiter","groupStyle","thousand","delimiterRE","RegExp","lakh","wan","none","format","parts","partSign","partSignAndPrefix","partInteger","partDecimal","slice","toString","NumeralFormatter_1","DateFormatter","datePattern","dateMin","dateMax","date","blocks","reverse","map","x","parseInt","unshift","initBlocks","owner","forEach","push","getISOFormatDate","addLeadingZero","getBlocks","getValidatedDate","result","index","sub","sub0","rest","getFixedDateString","day","month","year","dayIndex","monthIndex","yearIndex","dayStartIndex","monthStartIndex","yearStartIndex","fullYearDone","getFixedDate","getRangeFixedDate","reduce","previous","current","addLeadingZeroForYear","find","Math","min","isLeapYear","number","fullYearMode","DateFormatter_1","TimeFormatter","timePattern","timeFormat","time","getISOFormatTime","getTimeFormatOptions","maxHourFirstDigit","maxHours","maxMinutesFirstDigit","maxMinutes","getValidatedTime","timeFormatOptions","getFixedTimeString","second","minute","hour","secondIndex","minuteIndex","hourIndex","secondStartIndex","minuteStartIndex","hourStartIndex","getFixedTime","TimeFormatter_1","PhoneFormatter","formatter","setFormatter","phoneNumber","clear","validated","iMax","inputDigit","charAt","test","PhoneFormatter_1","CreditCardDetector","uatp","amex","diners","discover","mastercard","dankort","instapayment","jcb15","jcb","maestro","visa","mir","unionPay","general","re","getStrictBlocks","block","total","prev","concat","getInfo","strictMode","matchedBlocks","CreditCardDetector_1","Util_1","noop","strip","getPostDelimiter","delimiters","matchedDelimiter","getDelimiterREByDelimiter","getNextCursorPosition","prevPos","oldValue","newValue","getPositionOffset","oldRawValue","newRawValue","lengthOffset","stripDelimiters","abs","letter","headStr","str","getMaxLength","getPrefixStrippedValue","prefixLength","prevResult","noImmediatePrefix","prevValue","getFirstDiffIndex","getFormattedValue","blocksLength","delimiterLazyShow","multipleDelimiters","currentDelimiter","fixPrefixCursor","el","val","appendix","setSelectionRange","len","setTimeout","checkFullSelection","getSelection","ex","setSelection","element","position","doc","getActiveElement","createTextRange","range","move","select","console","warn","parent","activeElement","shadowRoot","isAndroid","isAndroidBackspaceKeydown","lastInputValue","currentInputValue","DefaultProperties_1","opts","creditCard","creditCardStrictMode","creditCardType","onCreditCardTypeChanged","phone","phoneRegionCode","phoneFormatter","timeFormatter","dateFormatter","numeral","swapHiddenInput","numericOnly","uppercase","lowercase","rawValueTrimPrefix","copyDelimiter","initValue","undefined","delimiterLength","root","maxLength","backspace","Cleave","hasMultipleElements","querySelector","querySelectorAll","properties","DefaultProperties","init","pps","Util","isBackward","onChangeListener","onChange","onKeyDownListener","onKeyDown","onFocusListener","onFocus","onCutListener","onCut","onCopyListener","onCopy","initSwapHiddenInput","addEventListener","initPhoneFormatter","initDateFormatter","initTimeFormatter","initNumeralFormatter","onInput","inputFormatter","cloneNode","parentNode","insertBefore","elementSwapHidden","id","numeralFormatter","AsYouTypeFormatter","event","charCode","which","keyCode","inputType","postDelimiter","postDelimiterBackspace","copyClipboardData","inputValue","textToCopy","clipboardData","setData","preventDefault","postDelimiterAfter","updateValueState","toUpperCase","updateCreditCardPropsByValue","creditCardInfo","endPos","selectionEnd","callOnValueChanged","setPhoneRegionCode","removeEventListener","Cleave_1","g","Function"],"mappings":"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","file":"widget-search-engine.2.min.js","sourcesContent":["!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.VueSocialSharing=e():t.VueSocialSharing=e()}(\"undefined\"!=typeof self?self:this,(function(){return function(t){var e={};function r(i){if(e[i])return e[i].exports;var n=e[i]={i:i,l:!1,exports:{}};return t[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=t,r.c=e,r.d=function(t,e,i){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},r.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&\"object\"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,\"default\",{enumerable:!0,value:t}),2&e&&\"string\"!=typeof t)for(var n in t)r.d(i,n,function(e){return t[e]}.bind(null,n));return i},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,\"a\",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p=\"\",r(r.s=0)}([function(t,e,r){t.exports=r(1)},function(t,e,r){\"use strict\";r.r(e),r.d(e,\"ShareNetwork\",(function(){return o}));var i={baidu:\"http://cang.baidu.com/do/add?iu=@u&it=@t\",buffer:\"https://bufferapp.com/add?text=@t&url=@u\",email:\"mailto:?subject=@t&body=@u%0D%0A@d\",evernote:\"https://www.evernote.com/clip.action?url=@u&title=@t\",facebook:\"https://www.facebook.com/sharer/sharer.php?u=@u&title=@t&description=@d"e=@q&hashtag=@h\",flipboard:\"https://share.flipboard.com/bookmarklet/popout?v=2&url=@u&title=@t\",hackernews:\"https://news.ycombinator.com/submitlink?u=@u&t=@t\",instapaper:\"http://www.instapaper.com/edit?url=@u&title=@t&description=@d\",line:\"http://line.me/R/msg/text/?@t%0D%0A@u%0D%0A@d\",linkedin:\"https://www.linkedin.com/shareArticle?url=@u\",messenger:\"fb-messenger://share/?link=@u\",odnoklassniki:\"https://connect.ok.ru/dk?st.cmd=WidgetSharePreview&st.shareUrl=@u&st.comments=@t\",pinterest:\"https://pinterest.com/pin/create/button/?url=@u&media=@m&description=@t\",pocket:\"https://getpocket.com/save?url=@u&title=@t\",quora:\"https://www.quora.com/share?url=@u&title=@t\",reddit:\"https://www.reddit.com/submit?url=@u&title=@t\",skype:\"https://web.skype.com/share?url=@t%0D%0A@u%0D%0A@d\",sms:\"sms:?body=@t%0D%0A@u%0D%0A@d\",stumbleupon:\"https://www.stumbleupon.com/submit?url=@u&title=@t\",telegram:\"https://t.me/share/url?url=@u&text=@t%0D%0A@d\",tumblr:\"https://www.tumblr.com/share/link?url=@u&name=@t&description=@d\",twitter:\"https://twitter.com/intent/tweet?text=@t&url=@u&hashtags=@h@tu\",viber:\"viber://forward?text=@t%0D%0A@u%0D%0A@d\",vk:\"https://vk.com/share.php?url=@u&title=@t&description=@d&image=@m&noparse=true\",weibo:\"http://service.weibo.com/share/share.php?url=@u&title=@t&pic=@m\",whatsapp:\"https://api.whatsapp.com/send?text=@t%0D%0A@u%0D%0A@d\",wordpress:\"https://wordpress.com/press-this.php?u=@u&t=@t&s=@d&i=@m\",xing:\"https://www.xing.com/social/share/spi?op=share&url=@u&title=@t\",yammer:\"https://www.yammer.com/messages/new?login=true&status=@t%0D%0A@u%0D%0A@d\"},n=\"undefined\"!=typeof window?window:null;var o={name:\"ShareNetwork\",props:{network:{type:String,required:!0},url:{type:String,required:!0},title:{type:String,required:!0},description:{type:String,default:\"\"},quote:{type:String,default:\"\"},hashtags:{type:String,default:\"\"},twitterUser:{type:String,default:\"\"},media:{type:String,default:\"\"},tag:{type:String,default:\"a\"},popup:{type:Object,default:function(){return{width:626,height:436}}}},data:function(){return{popupTop:0,popupLeft:0,popupWindow:void 0,popupInterval:null}},computed:{networks:function(){return this.$SocialSharing?this.$SocialSharing.options.networks:i},key:function(){return this.network.toLowerCase()},rawLink:function(){var t=navigator.userAgent.toLowerCase();return\"sms\"===this.key&&(t.indexOf(\"iphone\")>-1||t.indexOf(\"ipad\")>-1)?this.networks[this.key].replace(\":?\",\":&\"):this.networks[this.key]},shareLink:function(){var t=this.rawLink;return\"twitter\"===this.key&&(this.hashtags.length||(t=t.replace(\"&hashtags=@h\",\"\")),this.twitterUser.length||(t=t.replace(\"@tu\",\"\"))),t.replace(/@tu/g,\"&via=\"+encodeURIComponent(this.twitterUser)).replace(/@u/g,encodeURIComponent(this.url)).replace(/@t/g,encodeURIComponent(this.title)).replace(/@d/g,encodeURIComponent(this.description)).replace(/@q/g,encodeURIComponent(this.quote)).replace(/@h/g,this.encodedHashtags).replace(/@m/g,encodeURIComponent(this.media))},encodedHashtags:function(){return\"facebook\"===this.key&&this.hashtags.length?\"%23\"+this.hashtags.split(\",\")[0]:this.hashtags}},render:function(t){var e=this;if(!this.networks.hasOwnProperty(this.key))throw new Error(\"Network \"+this.key+\" does not exist\");var r={class:\"share-network-\"+this.key,on:{click:function(){return e[\"http\"===e.rawLink.substring(0,4)?\"share\":\"touch\"]()}}};return\"a\"===this.tag&&(r.attrs={href:\"javascript:void(0)\"}),t(this.tag,r,this.$slots.default)},methods:{resizePopup:function(){var t=n.innerWidth||document.documentElement.clientWidth||n.screenX,e=n.innerHeight||document.documentElement.clientHeight||n.screenY,r=t/n.screen.availWidth;this.popupLeft=(t-this.popup.width)/2/r+(void 0!==n.screenLeft?n.screenLeft:n.screenX),this.popupTop=(e-this.popup.height)/2/r+(void 0!==n.screenTop?n.screenTop:n.screenY)},share:function(){var t=this;this.resizePopup(),this.popupWindow&&this.popupInterval&&(clearInterval(this.popupInterval),this.popupWindow.close(),this.emit(\"change\")),this.popupWindow=n.open(this.shareLink,\"sharer-\"+this.key,\",height=\"+this.popup.height+\",width=\"+this.popup.width+\",left=\"+this.popupLeft+\",top=\"+this.popupTop+\",screenX=\"+this.popupLeft+\",screenY=\"+this.popupTop),this.popupWindow&&(this.popupWindow.focus(),this.popupInterval=setInterval((function(){t.popupWindow&&!t.popupWindow.closed||(clearInterval(t.popupInterval),t.popupWindow=null,t.emit(\"close\"))}),500),this.emit(\"open\"))},touch:function(){window.open(this.shareLink,\"_blank\"),this.emit(\"open\")},emit:function(t){this.$root.$emit(\"share_network_\"+t,this.key,this.url),this.$emit(t,this.key,this.url)}}};e.default={install:function(t,e){t.component(o.name,o),t.prototype.$SocialSharing={options:{networks:e&&e.hasOwnProperty(\"networks\")?Object.assign(i,e.networks):i}}}}}])}));","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"cleave.js\")):\"function\"==typeof define&&define.amd?define(\"VueCleave\",[\"cleave.js\"],t):\"object\"==typeof exports?exports.VueCleave=t(require(\"cleave.js\")):e.VueCleave=t(e.Cleave)}(\"undefined\"!=typeof self?self:this,function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=1)}([function(t,n){t.exports=e},function(e,t,n){\"use strict\";n.r(t);var r=n(0),o=n.n(r);function u(){return(u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}var a={name:\"cleave\",render:function(e){return e(\"input\",{attrs:{type:\"text\",value:this.value},on:{blur:this.onBlur}})},props:{value:{default:null,required:!0,validator:function(e){return null===e||\"string\"==typeof e||e instanceof String||\"number\"==typeof e}},options:{type:Object,default:function(){return{}}},raw:{type:Boolean,default:!0}},data:function(){return{cleave:null,onValueChangedFn:null}},mounted:function(){this.cleave||(this.cleave=new o.a(this.$el,this.getOptions(this.options)))},methods:{getOptions:function(e){return this.onValueChangedFn=e.onValueChanged,u({},e,{onValueChanged:this.onValueChanged})},onValueChanged:function(e){var t=this.raw?e.target.rawValue:e.target.value;this.$emit(\"input\",t),\"function\"==typeof this.onValueChangedFn&&this.onValueChangedFn.call(this,e)},onBlur:function(e){this.$emit(\"blur\",this.value)}},watch:{options:{deep:!0,handler:function(e){this.cleave.destroy(),this.cleave=new o.a(this.$el,this.getOptions(e)),this.cleave.setRawValue(this.value)}},value:function(e){this.cleave&&(this.raw&&e===this.cleave.getRawValue()||(this.raw||e!==this.$el.value)&&this.cleave.setRawValue(e))}},beforeDestroy:function(){this.cleave&&(this.cleave.destroy(),this.cleave=null,this.onValueChangedFn=null)}};n.d(t,\"plugin\",function(){return i}),n.d(t,\"component\",function(){return a});var i=function(e,t){var n=\"cleave\";\"string\"==typeof t&&(n=t),e.component(n,a)};a.install=i;t.default=a}]).default});","var commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nvar NumeralFormatter = function (numeralDecimalMark,\n numeralIntegerScale,\n numeralDecimalScale,\n numeralThousandsGroupStyle,\n numeralPositiveOnly,\n stripLeadingZeroes,\n prefix,\n signBeforePrefix,\n tailPrefix,\n delimiter) {\n var owner = this;\n\n owner.numeralDecimalMark = numeralDecimalMark || '.';\n owner.numeralIntegerScale = numeralIntegerScale > 0 ? numeralIntegerScale : 0;\n owner.numeralDecimalScale = numeralDecimalScale >= 0 ? numeralDecimalScale : 2;\n owner.numeralThousandsGroupStyle = numeralThousandsGroupStyle || NumeralFormatter.groupStyle.thousand;\n owner.numeralPositiveOnly = !!numeralPositiveOnly;\n owner.stripLeadingZeroes = stripLeadingZeroes !== false;\n owner.prefix = (prefix || prefix === '') ? prefix : '';\n owner.signBeforePrefix = !!signBeforePrefix;\n owner.tailPrefix = !!tailPrefix;\n owner.delimiter = (delimiter || delimiter === '') ? delimiter : ',';\n owner.delimiterRE = delimiter ? new RegExp('\\\\' + delimiter, 'g') : '';\n};\n\nNumeralFormatter.groupStyle = {\n thousand: 'thousand',\n lakh: 'lakh',\n wan: 'wan',\n none: 'none' \n};\n\nNumeralFormatter.prototype = {\n getRawValue: function (value) {\n return value.replace(this.delimiterRE, '').replace(this.numeralDecimalMark, '.');\n },\n\n format: function (value) {\n var owner = this, parts, partSign, partSignAndPrefix, partInteger, partDecimal = '';\n\n // strip alphabet letters\n value = value.replace(/[A-Za-z]/g, '')\n // replace the first decimal mark with reserved placeholder\n .replace(owner.numeralDecimalMark, 'M')\n\n // strip non numeric letters except minus and \"M\"\n // this is to ensure prefix has been stripped\n .replace(/[^\\dM-]/g, '')\n\n // replace the leading minus with reserved placeholder\n .replace(/^\\-/, 'N')\n\n // strip the other minus sign (if present)\n .replace(/\\-/g, '')\n\n // replace the minus sign (if present)\n .replace('N', owner.numeralPositiveOnly ? '' : '-')\n\n // replace decimal mark\n .replace('M', owner.numeralDecimalMark);\n\n // strip any leading zeros\n if (owner.stripLeadingZeroes) {\n value = value.replace(/^(-)?0+(?=\\d)/, '$1');\n }\n\n partSign = value.slice(0, 1) === '-' ? '-' : '';\n if (typeof owner.prefix != 'undefined') {\n if (owner.signBeforePrefix) {\n partSignAndPrefix = partSign + owner.prefix;\n } else {\n partSignAndPrefix = owner.prefix + partSign;\n }\n } else {\n partSignAndPrefix = partSign;\n }\n \n partInteger = value;\n\n if (value.indexOf(owner.numeralDecimalMark) >= 0) {\n parts = value.split(owner.numeralDecimalMark);\n partInteger = parts[0];\n partDecimal = owner.numeralDecimalMark + parts[1].slice(0, owner.numeralDecimalScale);\n }\n\n if(partSign === '-') {\n partInteger = partInteger.slice(1);\n }\n\n if (owner.numeralIntegerScale > 0) {\n partInteger = partInteger.slice(0, owner.numeralIntegerScale);\n }\n\n switch (owner.numeralThousandsGroupStyle) {\n case NumeralFormatter.groupStyle.lakh:\n partInteger = partInteger.replace(/(\\d)(?=(\\d\\d)+\\d$)/g, '$1' + owner.delimiter);\n\n break;\n\n case NumeralFormatter.groupStyle.wan:\n partInteger = partInteger.replace(/(\\d)(?=(\\d{4})+$)/g, '$1' + owner.delimiter);\n\n break;\n\n case NumeralFormatter.groupStyle.thousand:\n partInteger = partInteger.replace(/(\\d)(?=(\\d{3})+$)/g, '$1' + owner.delimiter);\n\n break;\n }\n\n if (owner.tailPrefix) {\n return partSign + partInteger.toString() + (owner.numeralDecimalScale > 0 ? partDecimal.toString() : '') + owner.prefix;\n }\n\n return partSignAndPrefix + partInteger.toString() + (owner.numeralDecimalScale > 0 ? partDecimal.toString() : '');\n }\n};\n\nvar NumeralFormatter_1 = NumeralFormatter;\n\nvar DateFormatter = function (datePattern, dateMin, dateMax) {\n var owner = this;\n\n owner.date = [];\n owner.blocks = [];\n owner.datePattern = datePattern;\n owner.dateMin = dateMin\n .split('-')\n .reverse()\n .map(function(x) {\n return parseInt(x, 10);\n });\n if (owner.dateMin.length === 2) owner.dateMin.unshift(0);\n\n owner.dateMax = dateMax\n .split('-')\n .reverse()\n .map(function(x) {\n return parseInt(x, 10);\n });\n if (owner.dateMax.length === 2) owner.dateMax.unshift(0);\n \n owner.initBlocks();\n};\n\nDateFormatter.prototype = {\n initBlocks: function () {\n var owner = this;\n owner.datePattern.forEach(function (value) {\n if (value === 'Y') {\n owner.blocks.push(4);\n } else {\n owner.blocks.push(2);\n }\n });\n },\n\n getISOFormatDate: function () {\n var owner = this,\n date = owner.date;\n\n return date[2] ? (\n date[2] + '-' + owner.addLeadingZero(date[1]) + '-' + owner.addLeadingZero(date[0])\n ) : '';\n },\n\n getBlocks: function () {\n return this.blocks;\n },\n\n getValidatedDate: function (value) {\n var owner = this, result = '';\n\n value = value.replace(/[^\\d]/g, '');\n\n owner.blocks.forEach(function (length, index) {\n if (value.length > 0) {\n var sub = value.slice(0, length),\n sub0 = sub.slice(0, 1),\n rest = value.slice(length);\n\n switch (owner.datePattern[index]) {\n case 'd':\n if (sub === '00') {\n sub = '01';\n } else if (parseInt(sub0, 10) > 3) {\n sub = '0' + sub0;\n } else if (parseInt(sub, 10) > 31) {\n sub = '31';\n }\n\n break;\n\n case 'm':\n if (sub === '00') {\n sub = '01';\n } else if (parseInt(sub0, 10) > 1) {\n sub = '0' + sub0;\n } else if (parseInt(sub, 10) > 12) {\n sub = '12';\n }\n\n break;\n }\n\n result += sub;\n\n // update remaining string\n value = rest;\n }\n });\n\n return this.getFixedDateString(result);\n },\n\n getFixedDateString: function (value) {\n var owner = this, datePattern = owner.datePattern, date = [],\n dayIndex = 0, monthIndex = 0, yearIndex = 0,\n dayStartIndex = 0, monthStartIndex = 0, yearStartIndex = 0,\n day, month, year, fullYearDone = false;\n\n // mm-dd || dd-mm\n if (value.length === 4 && datePattern[0].toLowerCase() !== 'y' && datePattern[1].toLowerCase() !== 'y') {\n dayStartIndex = datePattern[0] === 'd' ? 0 : 2;\n monthStartIndex = 2 - dayStartIndex;\n day = parseInt(value.slice(dayStartIndex, dayStartIndex + 2), 10);\n month = parseInt(value.slice(monthStartIndex, monthStartIndex + 2), 10);\n\n date = this.getFixedDate(day, month, 0);\n }\n\n // yyyy-mm-dd || yyyy-dd-mm || mm-dd-yyyy || dd-mm-yyyy || dd-yyyy-mm || mm-yyyy-dd\n if (value.length === 8) {\n datePattern.forEach(function (type, index) {\n switch (type) {\n case 'd':\n dayIndex = index;\n break;\n case 'm':\n monthIndex = index;\n break;\n default:\n yearIndex = index;\n break;\n }\n });\n\n yearStartIndex = yearIndex * 2;\n dayStartIndex = (dayIndex <= yearIndex) ? dayIndex * 2 : (dayIndex * 2 + 2);\n monthStartIndex = (monthIndex <= yearIndex) ? monthIndex * 2 : (monthIndex * 2 + 2);\n\n day = parseInt(value.slice(dayStartIndex, dayStartIndex + 2), 10);\n month = parseInt(value.slice(monthStartIndex, monthStartIndex + 2), 10);\n year = parseInt(value.slice(yearStartIndex, yearStartIndex + 4), 10);\n\n fullYearDone = value.slice(yearStartIndex, yearStartIndex + 4).length === 4;\n\n date = this.getFixedDate(day, month, year);\n }\n\n // mm-yy || yy-mm\n if (value.length === 4 && (datePattern[0] === 'y' || datePattern[1] === 'y')) {\n monthStartIndex = datePattern[0] === 'm' ? 0 : 2;\n yearStartIndex = 2 - monthStartIndex;\n month = parseInt(value.slice(monthStartIndex, monthStartIndex + 2), 10);\n year = parseInt(value.slice(yearStartIndex, yearStartIndex + 2), 10);\n\n fullYearDone = value.slice(yearStartIndex, yearStartIndex + 2).length === 2;\n\n date = [0, month, year];\n }\n\n // mm-yyyy || yyyy-mm\n if (value.length === 6 && (datePattern[0] === 'Y' || datePattern[1] === 'Y')) {\n monthStartIndex = datePattern[0] === 'm' ? 0 : 4;\n yearStartIndex = 2 - 0.5 * monthStartIndex;\n month = parseInt(value.slice(monthStartIndex, monthStartIndex + 2), 10);\n year = parseInt(value.slice(yearStartIndex, yearStartIndex + 4), 10);\n\n fullYearDone = value.slice(yearStartIndex, yearStartIndex + 4).length === 4;\n\n date = [0, month, year];\n }\n\n date = owner.getRangeFixedDate(date);\n owner.date = date;\n\n var result = date.length === 0 ? value : datePattern.reduce(function (previous, current) {\n switch (current) {\n case 'd':\n return previous + (date[0] === 0 ? '' : owner.addLeadingZero(date[0]));\n case 'm':\n return previous + (date[1] === 0 ? '' : owner.addLeadingZero(date[1]));\n case 'y':\n return previous + (fullYearDone ? owner.addLeadingZeroForYear(date[2], false) : '');\n case 'Y':\n return previous + (fullYearDone ? owner.addLeadingZeroForYear(date[2], true) : '');\n }\n }, '');\n\n return result;\n },\n\n getRangeFixedDate: function (date) {\n var owner = this,\n datePattern = owner.datePattern,\n dateMin = owner.dateMin || [],\n dateMax = owner.dateMax || [];\n\n if (!date.length || (dateMin.length < 3 && dateMax.length < 3)) return date;\n\n if (\n datePattern.find(function(x) {\n return x.toLowerCase() === 'y';\n }) &&\n date[2] === 0\n ) return date;\n\n if (dateMax.length && (dateMax[2] < date[2] || (\n dateMax[2] === date[2] && (dateMax[1] < date[1] || (\n dateMax[1] === date[1] && dateMax[0] < date[0]\n ))\n ))) return dateMax;\n\n if (dateMin.length && (dateMin[2] > date[2] || (\n dateMin[2] === date[2] && (dateMin[1] > date[1] || (\n dateMin[1] === date[1] && dateMin[0] > date[0]\n ))\n ))) return dateMin;\n\n return date;\n },\n\n getFixedDate: function (day, month, year) {\n day = Math.min(day, 31);\n month = Math.min(month, 12);\n year = parseInt((year || 0), 10);\n\n if ((month < 7 && month % 2 === 0) || (month > 8 && month % 2 === 1)) {\n day = Math.min(day, month === 2 ? (this.isLeapYear(year) ? 29 : 28) : 30);\n }\n\n return [day, month, year];\n },\n\n isLeapYear: function (year) {\n return ((year % 4 === 0) && (year % 100 !== 0)) || (year % 400 === 0);\n },\n\n addLeadingZero: function (number) {\n return (number < 10 ? '0' : '') + number;\n },\n\n addLeadingZeroForYear: function (number, fullYearMode) {\n if (fullYearMode) {\n return (number < 10 ? '000' : (number < 100 ? '00' : (number < 1000 ? '0' : ''))) + number;\n }\n\n return (number < 10 ? '0' : '') + number;\n }\n};\n\nvar DateFormatter_1 = DateFormatter;\n\nvar TimeFormatter = function (timePattern, timeFormat) {\n var owner = this;\n\n owner.time = [];\n owner.blocks = [];\n owner.timePattern = timePattern;\n owner.timeFormat = timeFormat;\n owner.initBlocks();\n};\n\nTimeFormatter.prototype = {\n initBlocks: function () {\n var owner = this;\n owner.timePattern.forEach(function () {\n owner.blocks.push(2);\n });\n },\n\n getISOFormatTime: function () {\n var owner = this,\n time = owner.time;\n\n return time[2] ? (\n owner.addLeadingZero(time[0]) + ':' + owner.addLeadingZero(time[1]) + ':' + owner.addLeadingZero(time[2])\n ) : '';\n },\n\n getBlocks: function () {\n return this.blocks;\n },\n\n getTimeFormatOptions: function () {\n var owner = this;\n if (String(owner.timeFormat) === '12') {\n return {\n maxHourFirstDigit: 1,\n maxHours: 12,\n maxMinutesFirstDigit: 5,\n maxMinutes: 60\n };\n }\n\n return {\n maxHourFirstDigit: 2,\n maxHours: 23,\n maxMinutesFirstDigit: 5,\n maxMinutes: 60\n };\n },\n\n getValidatedTime: function (value) {\n var owner = this, result = '';\n\n value = value.replace(/[^\\d]/g, '');\n\n var timeFormatOptions = owner.getTimeFormatOptions();\n\n owner.blocks.forEach(function (length, index) {\n if (value.length > 0) {\n var sub = value.slice(0, length),\n sub0 = sub.slice(0, 1),\n rest = value.slice(length);\n\n switch (owner.timePattern[index]) {\n\n case 'h':\n if (parseInt(sub0, 10) > timeFormatOptions.maxHourFirstDigit) {\n sub = '0' + sub0;\n } else if (parseInt(sub, 10) > timeFormatOptions.maxHours) {\n sub = timeFormatOptions.maxHours + '';\n }\n\n break;\n\n case 'm':\n case 's':\n if (parseInt(sub0, 10) > timeFormatOptions.maxMinutesFirstDigit) {\n sub = '0' + sub0;\n } else if (parseInt(sub, 10) > timeFormatOptions.maxMinutes) {\n sub = timeFormatOptions.maxMinutes + '';\n }\n break;\n }\n\n result += sub;\n\n // update remaining string\n value = rest;\n }\n });\n\n return this.getFixedTimeString(result);\n },\n\n getFixedTimeString: function (value) {\n var owner = this, timePattern = owner.timePattern, time = [],\n secondIndex = 0, minuteIndex = 0, hourIndex = 0,\n secondStartIndex = 0, minuteStartIndex = 0, hourStartIndex = 0,\n second, minute, hour;\n\n if (value.length === 6) {\n timePattern.forEach(function (type, index) {\n switch (type) {\n case 's':\n secondIndex = index * 2;\n break;\n case 'm':\n minuteIndex = index * 2;\n break;\n case 'h':\n hourIndex = index * 2;\n break;\n }\n });\n\n hourStartIndex = hourIndex;\n minuteStartIndex = minuteIndex;\n secondStartIndex = secondIndex;\n\n second = parseInt(value.slice(secondStartIndex, secondStartIndex + 2), 10);\n minute = parseInt(value.slice(minuteStartIndex, minuteStartIndex + 2), 10);\n hour = parseInt(value.slice(hourStartIndex, hourStartIndex + 2), 10);\n\n time = this.getFixedTime(hour, minute, second);\n }\n\n if (value.length === 4 && owner.timePattern.indexOf('s') < 0) {\n timePattern.forEach(function (type, index) {\n switch (type) {\n case 'm':\n minuteIndex = index * 2;\n break;\n case 'h':\n hourIndex = index * 2;\n break;\n }\n });\n\n hourStartIndex = hourIndex;\n minuteStartIndex = minuteIndex;\n\n second = 0;\n minute = parseInt(value.slice(minuteStartIndex, minuteStartIndex + 2), 10);\n hour = parseInt(value.slice(hourStartIndex, hourStartIndex + 2), 10);\n\n time = this.getFixedTime(hour, minute, second);\n }\n\n owner.time = time;\n\n return time.length === 0 ? value : timePattern.reduce(function (previous, current) {\n switch (current) {\n case 's':\n return previous + owner.addLeadingZero(time[2]);\n case 'm':\n return previous + owner.addLeadingZero(time[1]);\n case 'h':\n return previous + owner.addLeadingZero(time[0]);\n }\n }, '');\n },\n\n getFixedTime: function (hour, minute, second) {\n second = Math.min(parseInt(second || 0, 10), 60);\n minute = Math.min(minute, 60);\n hour = Math.min(hour, 60);\n\n return [hour, minute, second];\n },\n\n addLeadingZero: function (number) {\n return (number < 10 ? '0' : '') + number;\n }\n};\n\nvar TimeFormatter_1 = TimeFormatter;\n\nvar PhoneFormatter = function (formatter, delimiter) {\n var owner = this;\n\n owner.delimiter = (delimiter || delimiter === '') ? delimiter : ' ';\n owner.delimiterRE = delimiter ? new RegExp('\\\\' + delimiter, 'g') : '';\n\n owner.formatter = formatter;\n};\n\nPhoneFormatter.prototype = {\n setFormatter: function (formatter) {\n this.formatter = formatter;\n },\n\n format: function (phoneNumber) {\n var owner = this;\n\n owner.formatter.clear();\n\n // only keep number and +\n phoneNumber = phoneNumber.replace(/[^\\d+]/g, '');\n\n // strip non-leading +\n phoneNumber = phoneNumber.replace(/^\\+/, 'B').replace(/\\+/g, '').replace('B', '+');\n\n // strip delimiter\n phoneNumber = phoneNumber.replace(owner.delimiterRE, '');\n\n var result = '', current, validated = false;\n\n for (var i = 0, iMax = phoneNumber.length; i < iMax; i++) {\n current = owner.formatter.inputDigit(phoneNumber.charAt(i));\n\n // has ()- or space inside\n if (/[\\s()-]/g.test(current)) {\n result = current;\n\n validated = true;\n } else {\n if (!validated) {\n result = current;\n }\n // else: over length input\n // it turns to invalid number again\n }\n }\n\n // strip ()\n // e.g. US: 7161234567 returns (716) 123-4567\n result = result.replace(/[()]/g, '');\n // replace library delimiter with user customized delimiter\n result = result.replace(/[\\s-]/g, owner.delimiter);\n\n return result;\n }\n};\n\nvar PhoneFormatter_1 = PhoneFormatter;\n\nvar CreditCardDetector = {\n blocks: {\n uatp: [4, 5, 6],\n amex: [4, 6, 5],\n diners: [4, 6, 4],\n discover: [4, 4, 4, 4],\n mastercard: [4, 4, 4, 4],\n dankort: [4, 4, 4, 4],\n instapayment: [4, 4, 4, 4],\n jcb15: [4, 6, 5],\n jcb: [4, 4, 4, 4],\n maestro: [4, 4, 4, 4],\n visa: [4, 4, 4, 4],\n mir: [4, 4, 4, 4],\n unionPay: [4, 4, 4, 4],\n general: [4, 4, 4, 4]\n },\n\n re: {\n // starts with 1; 15 digits, not starts with 1800 (jcb card)\n uatp: /^(?!1800)1\\d{0,14}/,\n\n // starts with 34/37; 15 digits\n amex: /^3[47]\\d{0,13}/,\n\n // starts with 6011/65/644-649; 16 digits\n discover: /^(?:6011|65\\d{0,2}|64[4-9]\\d?)\\d{0,12}/,\n\n // starts with 300-305/309 or 36/38/39; 14 digits\n diners: /^3(?:0([0-5]|9)|[689]\\d?)\\d{0,11}/,\n\n // starts with 51-55/2221–2720; 16 digits\n mastercard: /^(5[1-5]\\d{0,2}|22[2-9]\\d{0,1}|2[3-7]\\d{0,2})\\d{0,12}/,\n\n // starts with 5019/4175/4571; 16 digits\n dankort: /^(5019|4175|4571)\\d{0,12}/,\n\n // starts with 637-639; 16 digits\n instapayment: /^63[7-9]\\d{0,13}/,\n\n // starts with 2131/1800; 15 digits\n jcb15: /^(?:2131|1800)\\d{0,11}/,\n\n // starts with 2131/1800/35; 16 digits\n jcb: /^(?:35\\d{0,2})\\d{0,12}/,\n\n // starts with 50/56-58/6304/67; 16 digits\n maestro: /^(?:5[0678]\\d{0,2}|6304|67\\d{0,2})\\d{0,12}/,\n\n // starts with 22; 16 digits\n mir: /^220[0-4]\\d{0,12}/,\n\n // starts with 4; 16 digits\n visa: /^4\\d{0,15}/,\n\n // starts with 62/81; 16 digits\n unionPay: /^(62|81)\\d{0,14}/\n },\n\n getStrictBlocks: function (block) {\n var total = block.reduce(function (prev, current) {\n return prev + current;\n }, 0);\n\n return block.concat(19 - total);\n },\n\n getInfo: function (value, strictMode) {\n var blocks = CreditCardDetector.blocks,\n re = CreditCardDetector.re;\n\n // Some credit card can have up to 19 digits number.\n // Set strictMode to true will remove the 16 max-length restrain,\n // however, I never found any website validate card number like\n // this, hence probably you don't want to enable this option.\n strictMode = !!strictMode;\n\n for (var key in re) {\n if (re[key].test(value)) {\n var matchedBlocks = blocks[key];\n return {\n type: key,\n blocks: strictMode ? this.getStrictBlocks(matchedBlocks) : matchedBlocks\n };\n }\n }\n\n return {\n type: 'unknown',\n blocks: strictMode ? this.getStrictBlocks(blocks.general) : blocks.general\n };\n }\n};\n\nvar CreditCardDetector_1 = CreditCardDetector;\n\nvar Util = {\n noop: function () {\n },\n\n strip: function (value, re) {\n return value.replace(re, '');\n },\n\n getPostDelimiter: function (value, delimiter, delimiters) {\n // single delimiter\n if (delimiters.length === 0) {\n return value.slice(-delimiter.length) === delimiter ? delimiter : '';\n }\n\n // multiple delimiters\n var matchedDelimiter = '';\n delimiters.forEach(function (current) {\n if (value.slice(-current.length) === current) {\n matchedDelimiter = current;\n }\n });\n\n return matchedDelimiter;\n },\n\n getDelimiterREByDelimiter: function (delimiter) {\n return new RegExp(delimiter.replace(/([.?*+^$[\\]\\\\(){}|-])/g, '\\\\$1'), 'g');\n },\n\n getNextCursorPosition: function (prevPos, oldValue, newValue, delimiter, delimiters) {\n // If cursor was at the end of value, just place it back.\n // Because new value could contain additional chars.\n if (oldValue.length === prevPos) {\n return newValue.length;\n }\n\n return prevPos + this.getPositionOffset(prevPos, oldValue, newValue, delimiter ,delimiters);\n },\n\n getPositionOffset: function (prevPos, oldValue, newValue, delimiter, delimiters) {\n var oldRawValue, newRawValue, lengthOffset;\n\n oldRawValue = this.stripDelimiters(oldValue.slice(0, prevPos), delimiter, delimiters);\n newRawValue = this.stripDelimiters(newValue.slice(0, prevPos), delimiter, delimiters);\n lengthOffset = oldRawValue.length - newRawValue.length;\n\n return (lengthOffset !== 0) ? (lengthOffset / Math.abs(lengthOffset)) : 0;\n },\n\n stripDelimiters: function (value, delimiter, delimiters) {\n var owner = this;\n\n // single delimiter\n if (delimiters.length === 0) {\n var delimiterRE = delimiter ? owner.getDelimiterREByDelimiter(delimiter) : '';\n\n return value.replace(delimiterRE, '');\n }\n\n // multiple delimiters\n delimiters.forEach(function (current) {\n current.split('').forEach(function (letter) {\n value = value.replace(owner.getDelimiterREByDelimiter(letter), '');\n });\n });\n\n return value;\n },\n\n headStr: function (str, length) {\n return str.slice(0, length);\n },\n\n getMaxLength: function (blocks) {\n return blocks.reduce(function (previous, current) {\n return previous + current;\n }, 0);\n },\n\n // strip prefix\n // Before type | After type | Return value\n // PEFIX-... | PEFIX-... | ''\n // PREFIX-123 | PEFIX-123 | 123\n // PREFIX-123 | PREFIX-23 | 23\n // PREFIX-123 | PREFIX-1234 | 1234\n getPrefixStrippedValue: function (value, prefix, prefixLength, prevResult, delimiter, delimiters, noImmediatePrefix, tailPrefix, signBeforePrefix) {\n // No prefix\n if (prefixLength === 0) {\n return value;\n }\n\n // Value is prefix\n if (value === prefix && value !== '') {\n return '';\n }\n\n if (signBeforePrefix && (value.slice(0, 1) == '-')) {\n var prev = (prevResult.slice(0, 1) == '-') ? prevResult.slice(1) : prevResult;\n return '-' + this.getPrefixStrippedValue(value.slice(1), prefix, prefixLength, prev, delimiter, delimiters, noImmediatePrefix, tailPrefix, signBeforePrefix);\n }\n\n // Pre result prefix string does not match pre-defined prefix\n if (prevResult.slice(0, prefixLength) !== prefix && !tailPrefix) {\n // Check if the first time user entered something\n if (noImmediatePrefix && !prevResult && value) return value;\n return '';\n } else if (prevResult.slice(-prefixLength) !== prefix && tailPrefix) {\n // Check if the first time user entered something\n if (noImmediatePrefix && !prevResult && value) return value;\n return '';\n }\n\n var prevValue = this.stripDelimiters(prevResult, delimiter, delimiters);\n\n // New value has issue, someone typed in between prefix letters\n // Revert to pre value\n if (value.slice(0, prefixLength) !== prefix && !tailPrefix) {\n return prevValue.slice(prefixLength);\n } else if (value.slice(-prefixLength) !== prefix && tailPrefix) {\n return prevValue.slice(0, -prefixLength - 1);\n }\n\n // No issue, strip prefix for new value\n return tailPrefix ? value.slice(0, -prefixLength) : value.slice(prefixLength);\n },\n\n getFirstDiffIndex: function (prev, current) {\n var index = 0;\n\n while (prev.charAt(index) === current.charAt(index)) {\n if (prev.charAt(index++) === '') {\n return -1;\n }\n }\n\n return index;\n },\n\n getFormattedValue: function (value, blocks, blocksLength, delimiter, delimiters, delimiterLazyShow) {\n var result = '',\n multipleDelimiters = delimiters.length > 0,\n currentDelimiter = '';\n\n // no options, normal input\n if (blocksLength === 0) {\n return value;\n }\n\n blocks.forEach(function (length, index) {\n if (value.length > 0) {\n var sub = value.slice(0, length),\n rest = value.slice(length);\n\n if (multipleDelimiters) {\n currentDelimiter = delimiters[delimiterLazyShow ? (index - 1) : index] || currentDelimiter;\n } else {\n currentDelimiter = delimiter;\n }\n\n if (delimiterLazyShow) {\n if (index > 0) {\n result += currentDelimiter;\n }\n\n result += sub;\n } else {\n result += sub;\n\n if (sub.length === length && index < blocksLength - 1) {\n result += currentDelimiter;\n }\n }\n\n // update remaining string\n value = rest;\n }\n });\n\n return result;\n },\n\n // move cursor to the end\n // the first time user focuses on an input with prefix\n fixPrefixCursor: function (el, prefix, delimiter, delimiters) {\n if (!el) {\n return;\n }\n\n var val = el.value,\n appendix = delimiter || (delimiters[0] || ' ');\n\n if (!el.setSelectionRange || !prefix || (prefix.length + appendix.length) <= val.length) {\n return;\n }\n\n var len = val.length * 2;\n\n // set timeout to avoid blink\n setTimeout(function () {\n el.setSelectionRange(len, len);\n }, 1);\n },\n\n // Check if input field is fully selected\n checkFullSelection: function(value) {\n try {\n var selection = window.getSelection() || document.getSelection() || {};\n return selection.toString().length === value.length;\n } catch (ex) {\n // Ignore\n }\n\n return false;\n },\n\n setSelection: function (element, position, doc) {\n if (element !== this.getActiveElement(doc)) {\n return;\n }\n\n // cursor is already in the end\n if (element && element.value.length <= position) {\n return;\n }\n\n if (element.createTextRange) {\n var range = element.createTextRange();\n\n range.move('character', position);\n range.select();\n } else {\n try {\n element.setSelectionRange(position, position);\n } catch (e) {\n // eslint-disable-next-line\n console.warn('The input element type does not support selection');\n }\n }\n },\n\n getActiveElement: function(parent) {\n var activeElement = parent.activeElement;\n if (activeElement && activeElement.shadowRoot) {\n return this.getActiveElement(activeElement.shadowRoot);\n }\n return activeElement;\n },\n\n isAndroid: function () {\n return navigator && /android/i.test(navigator.userAgent);\n },\n\n // On Android chrome, the keyup and keydown events\n // always return key code 229 as a composition that\n // buffers the user’s keystrokes\n // see https://github.com/nosir/cleave.js/issues/147\n isAndroidBackspaceKeydown: function (lastInputValue, currentInputValue) {\n if (!this.isAndroid() || !lastInputValue || !currentInputValue) {\n return false;\n }\n\n return currentInputValue === lastInputValue.slice(0, -1);\n }\n};\n\nvar Util_1 = Util;\n\n/**\n * Props Assignment\n *\n * Separate this, so react module can share the usage\n */\nvar DefaultProperties = {\n // Maybe change to object-assign\n // for now just keep it as simple\n assign: function (target, opts) {\n target = target || {};\n opts = opts || {};\n\n // credit card\n target.creditCard = !!opts.creditCard;\n target.creditCardStrictMode = !!opts.creditCardStrictMode;\n target.creditCardType = '';\n target.onCreditCardTypeChanged = opts.onCreditCardTypeChanged || (function () {});\n\n // phone\n target.phone = !!opts.phone;\n target.phoneRegionCode = opts.phoneRegionCode || 'AU';\n target.phoneFormatter = {};\n\n // time\n target.time = !!opts.time;\n target.timePattern = opts.timePattern || ['h', 'm', 's'];\n target.timeFormat = opts.timeFormat || '24';\n target.timeFormatter = {};\n\n // date\n target.date = !!opts.date;\n target.datePattern = opts.datePattern || ['d', 'm', 'Y'];\n target.dateMin = opts.dateMin || '';\n target.dateMax = opts.dateMax || '';\n target.dateFormatter = {};\n\n // numeral\n target.numeral = !!opts.numeral;\n target.numeralIntegerScale = opts.numeralIntegerScale > 0 ? opts.numeralIntegerScale : 0;\n target.numeralDecimalScale = opts.numeralDecimalScale >= 0 ? opts.numeralDecimalScale : 2;\n target.numeralDecimalMark = opts.numeralDecimalMark || '.';\n target.numeralThousandsGroupStyle = opts.numeralThousandsGroupStyle || 'thousand';\n target.numeralPositiveOnly = !!opts.numeralPositiveOnly;\n target.stripLeadingZeroes = opts.stripLeadingZeroes !== false;\n target.signBeforePrefix = !!opts.signBeforePrefix;\n target.tailPrefix = !!opts.tailPrefix;\n\n // others\n target.swapHiddenInput = !!opts.swapHiddenInput;\n \n target.numericOnly = target.creditCard || target.date || !!opts.numericOnly;\n\n target.uppercase = !!opts.uppercase;\n target.lowercase = !!opts.lowercase;\n\n target.prefix = (target.creditCard || target.date) ? '' : (opts.prefix || '');\n target.noImmediatePrefix = !!opts.noImmediatePrefix;\n target.prefixLength = target.prefix.length;\n target.rawValueTrimPrefix = !!opts.rawValueTrimPrefix;\n target.copyDelimiter = !!opts.copyDelimiter;\n\n target.initValue = (opts.initValue !== undefined && opts.initValue !== null) ? opts.initValue.toString() : '';\n\n target.delimiter =\n (opts.delimiter || opts.delimiter === '') ? opts.delimiter :\n (opts.date ? '/' :\n (opts.time ? ':' :\n (opts.numeral ? ',' :\n (opts.phone ? ' ' :\n ' '))));\n target.delimiterLength = target.delimiter.length;\n target.delimiterLazyShow = !!opts.delimiterLazyShow;\n target.delimiters = opts.delimiters || [];\n\n target.blocks = opts.blocks || [];\n target.blocksLength = target.blocks.length;\n\n target.root = (typeof commonjsGlobal === 'object' && commonjsGlobal) ? commonjsGlobal : window;\n target.document = opts.document || target.root.document;\n\n target.maxLength = 0;\n\n target.backspace = false;\n target.result = '';\n\n target.onValueChanged = opts.onValueChanged || (function () {});\n\n return target;\n }\n};\n\nvar DefaultProperties_1 = DefaultProperties;\n\n/**\n * Construct a new Cleave instance by passing the configuration object\n *\n * @param {String | HTMLElement} element\n * @param {Object} opts\n */\nvar Cleave = function (element, opts) {\n var owner = this;\n var hasMultipleElements = false;\n\n if (typeof element === 'string') {\n owner.element = document.querySelector(element);\n hasMultipleElements = document.querySelectorAll(element).length > 1;\n } else {\n if (typeof element.length !== 'undefined' && element.length > 0) {\n owner.element = element[0];\n hasMultipleElements = element.length > 1;\n } else {\n owner.element = element;\n }\n }\n\n if (!owner.element) {\n throw new Error('[cleave.js] Please check the element');\n }\n\n if (hasMultipleElements) {\n try {\n // eslint-disable-next-line\n console.warn('[cleave.js] Multiple input fields matched, cleave.js will only take the first one.');\n } catch (e) {\n // Old IE\n }\n }\n\n opts.initValue = owner.element.value;\n\n owner.properties = Cleave.DefaultProperties.assign({}, opts);\n\n owner.init();\n};\n\nCleave.prototype = {\n init: function () {\n var owner = this, pps = owner.properties;\n\n // no need to use this lib\n if (!pps.numeral && !pps.phone && !pps.creditCard && !pps.time && !pps.date && (pps.blocksLength === 0 && !pps.prefix)) {\n owner.onInput(pps.initValue);\n\n return;\n }\n\n pps.maxLength = Cleave.Util.getMaxLength(pps.blocks);\n\n owner.isAndroid = Cleave.Util.isAndroid();\n owner.lastInputValue = '';\n owner.isBackward = '';\n\n owner.onChangeListener = owner.onChange.bind(owner);\n owner.onKeyDownListener = owner.onKeyDown.bind(owner);\n owner.onFocusListener = owner.onFocus.bind(owner);\n owner.onCutListener = owner.onCut.bind(owner);\n owner.onCopyListener = owner.onCopy.bind(owner);\n\n owner.initSwapHiddenInput();\n\n owner.element.addEventListener('input', owner.onChangeListener);\n owner.element.addEventListener('keydown', owner.onKeyDownListener);\n owner.element.addEventListener('focus', owner.onFocusListener);\n owner.element.addEventListener('cut', owner.onCutListener);\n owner.element.addEventListener('copy', owner.onCopyListener);\n\n\n owner.initPhoneFormatter();\n owner.initDateFormatter();\n owner.initTimeFormatter();\n owner.initNumeralFormatter();\n\n // avoid touch input field if value is null\n // otherwise Firefox will add red box-shadow for <input required />\n if (pps.initValue || (pps.prefix && !pps.noImmediatePrefix)) {\n owner.onInput(pps.initValue);\n }\n },\n\n initSwapHiddenInput: function () {\n var owner = this, pps = owner.properties;\n if (!pps.swapHiddenInput) return;\n\n var inputFormatter = owner.element.cloneNode(true);\n owner.element.parentNode.insertBefore(inputFormatter, owner.element);\n\n owner.elementSwapHidden = owner.element;\n owner.elementSwapHidden.type = 'hidden';\n\n owner.element = inputFormatter;\n owner.element.id = '';\n },\n\n initNumeralFormatter: function () {\n var owner = this, pps = owner.properties;\n\n if (!pps.numeral) {\n return;\n }\n\n pps.numeralFormatter = new Cleave.NumeralFormatter(\n pps.numeralDecimalMark,\n pps.numeralIntegerScale,\n pps.numeralDecimalScale,\n pps.numeralThousandsGroupStyle,\n pps.numeralPositiveOnly,\n pps.stripLeadingZeroes,\n pps.prefix,\n pps.signBeforePrefix,\n pps.tailPrefix,\n pps.delimiter\n );\n },\n\n initTimeFormatter: function() {\n var owner = this, pps = owner.properties;\n\n if (!pps.time) {\n return;\n }\n\n pps.timeFormatter = new Cleave.TimeFormatter(pps.timePattern, pps.timeFormat);\n pps.blocks = pps.timeFormatter.getBlocks();\n pps.blocksLength = pps.blocks.length;\n pps.maxLength = Cleave.Util.getMaxLength(pps.blocks);\n },\n\n initDateFormatter: function () {\n var owner = this, pps = owner.properties;\n\n if (!pps.date) {\n return;\n }\n\n pps.dateFormatter = new Cleave.DateFormatter(pps.datePattern, pps.dateMin, pps.dateMax);\n pps.blocks = pps.dateFormatter.getBlocks();\n pps.blocksLength = pps.blocks.length;\n pps.maxLength = Cleave.Util.getMaxLength(pps.blocks);\n },\n\n initPhoneFormatter: function () {\n var owner = this, pps = owner.properties;\n\n if (!pps.phone) {\n return;\n }\n\n // Cleave.AsYouTypeFormatter should be provided by\n // external google closure lib\n try {\n pps.phoneFormatter = new Cleave.PhoneFormatter(\n new pps.root.Cleave.AsYouTypeFormatter(pps.phoneRegionCode),\n pps.delimiter\n );\n } catch (ex) {\n throw new Error('[cleave.js] Please include phone-type-formatter.{country}.js lib');\n }\n },\n\n onKeyDown: function (event) {\n var owner = this,\n charCode = event.which || event.keyCode;\n\n owner.lastInputValue = owner.element.value;\n owner.isBackward = charCode === 8;\n },\n\n onChange: function (event) {\n var owner = this, pps = owner.properties,\n Util = Cleave.Util;\n\n owner.isBackward = owner.isBackward || event.inputType === 'deleteContentBackward';\n\n var postDelimiter = Util.getPostDelimiter(owner.lastInputValue, pps.delimiter, pps.delimiters);\n\n if (owner.isBackward && postDelimiter) {\n pps.postDelimiterBackspace = postDelimiter;\n } else {\n pps.postDelimiterBackspace = false;\n }\n\n this.onInput(this.element.value);\n },\n\n onFocus: function () {\n var owner = this,\n pps = owner.properties;\n owner.lastInputValue = owner.element.value;\n\n if (pps.prefix && pps.noImmediatePrefix && !owner.element.value) {\n this.onInput(pps.prefix);\n }\n\n Cleave.Util.fixPrefixCursor(owner.element, pps.prefix, pps.delimiter, pps.delimiters);\n },\n\n onCut: function (e) {\n if (!Cleave.Util.checkFullSelection(this.element.value)) return;\n this.copyClipboardData(e);\n this.onInput('');\n },\n\n onCopy: function (e) {\n if (!Cleave.Util.checkFullSelection(this.element.value)) return;\n this.copyClipboardData(e);\n },\n\n copyClipboardData: function (e) {\n var owner = this,\n pps = owner.properties,\n Util = Cleave.Util,\n inputValue = owner.element.value,\n textToCopy = '';\n\n if (!pps.copyDelimiter) {\n textToCopy = Util.stripDelimiters(inputValue, pps.delimiter, pps.delimiters);\n } else {\n textToCopy = inputValue;\n }\n\n try {\n if (e.clipboardData) {\n e.clipboardData.setData('Text', textToCopy);\n } else {\n window.clipboardData.setData('Text', textToCopy);\n }\n\n e.preventDefault();\n } catch (ex) {\n // empty\n }\n },\n\n onInput: function (value) {\n var owner = this, pps = owner.properties,\n Util = Cleave.Util;\n\n // case 1: delete one more character \"4\"\n // 1234*| -> hit backspace -> 123|\n // case 2: last character is not delimiter which is:\n // 12|34* -> hit backspace -> 1|34*\n // note: no need to apply this for numeral mode\n var postDelimiterAfter = Util.getPostDelimiter(value, pps.delimiter, pps.delimiters);\n if (!pps.numeral && pps.postDelimiterBackspace && !postDelimiterAfter) {\n value = Util.headStr(value, value.length - pps.postDelimiterBackspace.length);\n }\n\n // phone formatter\n if (pps.phone) {\n if (pps.prefix && (!pps.noImmediatePrefix || value.length)) {\n pps.result = pps.prefix + pps.phoneFormatter.format(value).slice(pps.prefix.length);\n } else {\n pps.result = pps.phoneFormatter.format(value);\n }\n owner.updateValueState();\n\n return;\n }\n\n // numeral formatter\n if (pps.numeral) {\n // Do not show prefix when noImmediatePrefix is specified\n // This mostly because we need to show user the native input placeholder\n if (pps.prefix && pps.noImmediatePrefix && value.length === 0) {\n pps.result = '';\n } else {\n pps.result = pps.numeralFormatter.format(value);\n }\n owner.updateValueState();\n\n return;\n }\n\n // date\n if (pps.date) {\n value = pps.dateFormatter.getValidatedDate(value);\n }\n\n // time\n if (pps.time) {\n value = pps.timeFormatter.getValidatedTime(value);\n }\n\n // strip delimiters\n value = Util.stripDelimiters(value, pps.delimiter, pps.delimiters);\n\n // strip prefix\n value = Util.getPrefixStrippedValue(value, pps.prefix, pps.prefixLength, pps.result, pps.delimiter, pps.delimiters, pps.noImmediatePrefix, pps.tailPrefix, pps.signBeforePrefix);\n\n // strip non-numeric characters\n value = pps.numericOnly ? Util.strip(value, /[^\\d]/g) : value;\n\n // convert case\n value = pps.uppercase ? value.toUpperCase() : value;\n value = pps.lowercase ? value.toLowerCase() : value;\n\n // prevent from showing prefix when no immediate option enabled with empty input value\n if (pps.prefix) {\n if (pps.tailPrefix) {\n value = value + pps.prefix;\n } else {\n value = pps.prefix + value;\n }\n\n\n // no blocks specified, no need to do formatting\n if (pps.blocksLength === 0) {\n pps.result = value;\n owner.updateValueState();\n\n return;\n }\n }\n\n // update credit card props\n if (pps.creditCard) {\n owner.updateCreditCardPropsByValue(value);\n }\n\n // strip over length characters\n value = Util.headStr(value, pps.maxLength);\n\n // apply blocks\n pps.result = Util.getFormattedValue(\n value,\n pps.blocks, pps.blocksLength,\n pps.delimiter, pps.delimiters, pps.delimiterLazyShow\n );\n\n owner.updateValueState();\n },\n\n updateCreditCardPropsByValue: function (value) {\n var owner = this, pps = owner.properties,\n Util = Cleave.Util,\n creditCardInfo;\n\n // At least one of the first 4 characters has changed\n if (Util.headStr(pps.result, 4) === Util.headStr(value, 4)) {\n return;\n }\n\n creditCardInfo = Cleave.CreditCardDetector.getInfo(value, pps.creditCardStrictMode);\n\n pps.blocks = creditCardInfo.blocks;\n pps.blocksLength = pps.blocks.length;\n pps.maxLength = Util.getMaxLength(pps.blocks);\n\n // credit card type changed\n if (pps.creditCardType !== creditCardInfo.type) {\n pps.creditCardType = creditCardInfo.type;\n\n pps.onCreditCardTypeChanged.call(owner, pps.creditCardType);\n }\n },\n\n updateValueState: function () {\n var owner = this,\n Util = Cleave.Util,\n pps = owner.properties;\n\n if (!owner.element) {\n return;\n }\n\n var endPos = owner.element.selectionEnd;\n var oldValue = owner.element.value;\n var newValue = pps.result;\n\n endPos = Util.getNextCursorPosition(endPos, oldValue, newValue, pps.delimiter, pps.delimiters);\n\n // fix Android browser type=\"text\" input field\n // cursor not jumping issue\n if (owner.isAndroid) {\n window.setTimeout(function () {\n owner.element.value = newValue;\n Util.setSelection(owner.element, endPos, pps.document, false);\n owner.callOnValueChanged();\n }, 1);\n\n return;\n }\n\n owner.element.value = newValue;\n if (pps.swapHiddenInput) owner.elementSwapHidden.value = owner.getRawValue();\n\n Util.setSelection(owner.element, endPos, pps.document, false);\n owner.callOnValueChanged();\n },\n\n callOnValueChanged: function () {\n var owner = this,\n pps = owner.properties;\n\n pps.onValueChanged.call(owner, {\n target: {\n name: owner.element.name,\n value: pps.result,\n rawValue: owner.getRawValue()\n }\n });\n },\n\n setPhoneRegionCode: function (phoneRegionCode) {\n var owner = this, pps = owner.properties;\n\n pps.phoneRegionCode = phoneRegionCode;\n owner.initPhoneFormatter();\n owner.onChange();\n },\n\n setRawValue: function (value) {\n var owner = this, pps = owner.properties;\n\n value = value !== undefined && value !== null ? value.toString() : '';\n\n if (pps.numeral) {\n value = value.replace('.', pps.numeralDecimalMark);\n }\n\n pps.postDelimiterBackspace = false;\n\n owner.element.value = value;\n owner.onInput(value);\n },\n\n getRawValue: function () {\n var owner = this,\n pps = owner.properties,\n Util = Cleave.Util,\n rawValue = owner.element.value;\n\n if (pps.rawValueTrimPrefix) {\n rawValue = Util.getPrefixStrippedValue(rawValue, pps.prefix, pps.prefixLength, pps.result, pps.delimiter, pps.delimiters, pps.noImmediatePrefix, pps.tailPrefix, pps.signBeforePrefix);\n }\n\n if (pps.numeral) {\n rawValue = pps.numeralFormatter.getRawValue(rawValue);\n } else {\n rawValue = Util.stripDelimiters(rawValue, pps.delimiter, pps.delimiters);\n }\n\n return rawValue;\n },\n\n getISOFormatDate: function () {\n var owner = this,\n pps = owner.properties;\n\n return pps.date ? pps.dateFormatter.getISOFormatDate() : '';\n },\n\n getISOFormatTime: function () {\n var owner = this,\n pps = owner.properties;\n\n return pps.time ? pps.timeFormatter.getISOFormatTime() : '';\n },\n\n getFormattedValue: function () {\n return this.element.value;\n },\n\n destroy: function () {\n var owner = this;\n\n owner.element.removeEventListener('input', owner.onChangeListener);\n owner.element.removeEventListener('keydown', owner.onKeyDownListener);\n owner.element.removeEventListener('focus', owner.onFocusListener);\n owner.element.removeEventListener('cut', owner.onCutListener);\n owner.element.removeEventListener('copy', owner.onCopyListener);\n },\n\n toString: function () {\n return '[Cleave Object]';\n }\n};\n\nCleave.NumeralFormatter = NumeralFormatter_1;\nCleave.DateFormatter = DateFormatter_1;\nCleave.TimeFormatter = TimeFormatter_1;\nCleave.PhoneFormatter = PhoneFormatter_1;\nCleave.CreditCardDetector = CreditCardDetector_1;\nCleave.Util = Util_1;\nCleave.DefaultProperties = DefaultProperties_1;\n\n// for angular directive\n((typeof commonjsGlobal === 'object' && commonjsGlobal) ? commonjsGlobal : window)['Cleave'] = Cleave;\n\n// CommonJS\nvar Cleave_1 = Cleave;\n\nexport default Cleave_1;\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["webpack://widgetSearchEngine//home/runner/work/storefront/storefront/node_modules/vue-social-sharing/dist/vue-social-sharing.js","webpack://widgetSearchEngine//home/runner/work/storefront/storefront/node_modules/vue-cleave-component/dist/vue-cleave.min.js","webpack://widgetSearchEngine//home/runner/work/storefront/storefront/node_modules/cleave.js/dist/cleave-esm.js","webpack://widgetSearchEngine/(webpack)/buildin/global.js"],"names":["self","module","exports","t","e","i","r","n","l","call","m","c","d","o","Object","defineProperty","enumerable","get","Symbol","toStringTag","value","__esModule","create","bind","default","prototype","hasOwnProperty","p","s","baidu","buffer","email","evernote","facebook","flipboard","hackernews","instapaper","line","linkedin","messenger","odnoklassniki","pinterest","pocket","quora","reddit","skype","sms","stumbleupon","telegram","tumblr","twitter","viber","vk","weibo","whatsapp","wordpress","xing","yammer","window","name","props","network","type","String","required","url","title","description","quote","hashtags","twitterUser","media","tag","popup","width","height","data","popupTop","popupLeft","popupWindow","popupInterval","computed","networks","this","$SocialSharing","options","key","toLowerCase","rawLink","navigator","userAgent","indexOf","replace","shareLink","length","encodeURIComponent","encodedHashtags","split","render","Error","class","on","click","substring","attrs","href","$slots","methods","resizePopup","innerWidth","document","documentElement","clientWidth","screenX","innerHeight","clientHeight","screenY","screen","availWidth","screenLeft","screenTop","share","clearInterval","close","emit","open","focus","setInterval","closed","touch","$root","$emit","install","component","assign","u","arguments","apply","a","blur","onBlur","validator","raw","Boolean","cleave","onValueChangedFn","mounted","$el","getOptions","onValueChanged","target","rawValue","watch","deep","handler","destroy","setRawValue","getRawValue","beforeDestroy","commonjsGlobal","global","NumeralFormatter","numeralDecimalMark","numeralIntegerScale","numeralDecimalScale","numeralThousandsGroupStyle","numeralPositiveOnly","stripLeadingZeroes","prefix","signBeforePrefix","tailPrefix","delimiter","groupStyle","thousand","delimiterRE","RegExp","lakh","wan","none","format","parts","partSign","partSignAndPrefix","partInteger","partDecimal","slice","toString","NumeralFormatter_1","DateFormatter","datePattern","dateMin","dateMax","date","blocks","reverse","map","x","parseInt","unshift","initBlocks","owner","forEach","push","getISOFormatDate","addLeadingZero","getBlocks","getValidatedDate","result","index","sub","sub0","rest","getFixedDateString","day","month","year","dayIndex","monthIndex","yearIndex","dayStartIndex","monthStartIndex","yearStartIndex","fullYearDone","getFixedDate","getRangeFixedDate","reduce","previous","current","addLeadingZeroForYear","find","Math","min","isLeapYear","number","fullYearMode","DateFormatter_1","TimeFormatter","timePattern","timeFormat","time","getISOFormatTime","getTimeFormatOptions","maxHourFirstDigit","maxHours","maxMinutesFirstDigit","maxMinutes","getValidatedTime","timeFormatOptions","getFixedTimeString","second","minute","hour","secondIndex","minuteIndex","hourIndex","secondStartIndex","minuteStartIndex","hourStartIndex","getFixedTime","TimeFormatter_1","PhoneFormatter","formatter","setFormatter","phoneNumber","clear","validated","iMax","inputDigit","charAt","test","PhoneFormatter_1","CreditCardDetector","uatp","amex","diners","discover","mastercard","dankort","instapayment","jcb15","jcb","maestro","visa","mir","unionPay","general","re","getStrictBlocks","block","total","prev","concat","getInfo","strictMode","matchedBlocks","CreditCardDetector_1","Util_1","noop","strip","getPostDelimiter","delimiters","matchedDelimiter","getDelimiterREByDelimiter","getNextCursorPosition","prevPos","oldValue","newValue","getPositionOffset","oldRawValue","newRawValue","lengthOffset","stripDelimiters","abs","letter","headStr","str","getMaxLength","getPrefixStrippedValue","prefixLength","prevResult","noImmediatePrefix","prevValue","getFirstDiffIndex","getFormattedValue","blocksLength","delimiterLazyShow","multipleDelimiters","currentDelimiter","fixPrefixCursor","el","val","appendix","setSelectionRange","len","setTimeout","checkFullSelection","getSelection","ex","setSelection","element","position","doc","getActiveElement","createTextRange","range","move","select","console","warn","parent","activeElement","shadowRoot","isAndroid","isAndroidBackspaceKeydown","lastInputValue","currentInputValue","DefaultProperties_1","opts","creditCard","creditCardStrictMode","creditCardType","onCreditCardTypeChanged","phone","phoneRegionCode","phoneFormatter","timeFormatter","dateFormatter","numeral","swapHiddenInput","numericOnly","uppercase","lowercase","rawValueTrimPrefix","copyDelimiter","initValue","undefined","delimiterLength","root","maxLength","backspace","Cleave","hasMultipleElements","querySelector","querySelectorAll","properties","DefaultProperties","init","pps","Util","isBackward","onChangeListener","onChange","onKeyDownListener","onKeyDown","onFocusListener","onFocus","onCutListener","onCut","onCopyListener","onCopy","initSwapHiddenInput","addEventListener","initPhoneFormatter","initDateFormatter","initTimeFormatter","initNumeralFormatter","onInput","inputFormatter","cloneNode","parentNode","insertBefore","elementSwapHidden","id","numeralFormatter","AsYouTypeFormatter","event","charCode","which","keyCode","inputType","postDelimiter","postDelimiterBackspace","copyClipboardData","inputValue","textToCopy","clipboardData","setData","preventDefault","postDelimiterAfter","updateValueState","toUpperCase","updateCreditCardPropsByValue","creditCardInfo","endPos","selectionEnd","callOnValueChanged","setPhoneRegionCode","removeEventListener","Cleave_1","g","Function"],"mappings":"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","file":"widget-search-engine.2.min.js","sourcesContent":["!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.VueSocialSharing=e():t.VueSocialSharing=e()}(\"undefined\"!=typeof self?self:this,(function(){return function(t){var e={};function i(r){if(e[r])return e[r].exports;var n=e[r]={i:r,l:!1,exports:{}};return t[r].call(n.exports,n,n.exports,i),n.l=!0,n.exports}return i.m=t,i.c=e,i.d=function(t,e,r){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},i.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},i.t=function(t,e){if(1&e&&(t=i(t)),8&e)return t;if(4&e&&\"object\"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:t}),2&e&&\"string\"!=typeof t)for(var n in t)i.d(r,n,function(e){return t[e]}.bind(null,n));return r},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,\"a\",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p=\"\",i(i.s=0)}([function(t,e,i){t.exports=i(1)},function(t,e,i){\"use strict\";i.r(e),i.d(e,\"ShareNetwork\",(function(){return o}));var r={baidu:\"http://cang.baidu.com/do/add?iu=@u&it=@t\",buffer:\"https://bufferapp.com/add?text=@t&url=@u\",email:\"mailto:?subject=@t&body=@u%0D%0A@d\",evernote:\"https://www.evernote.com/clip.action?url=@u&title=@t\",facebook:\"https://www.facebook.com/sharer/sharer.php?u=@u&title=@t&description=@d"e=@q&hashtag=@h\",flipboard:\"https://share.flipboard.com/bookmarklet/popout?v=2&url=@u&title=@t\",hackernews:\"https://news.ycombinator.com/submitlink?u=@u&t=@t\",instapaper:\"http://www.instapaper.com/edit?url=@u&title=@t&description=@d\",line:\"http://line.me/R/msg/text/?@t%0D%0A@u%0D%0A@d\",linkedin:\"https://www.linkedin.com/sharing/share-offsite/?url=@u\",messenger:\"fb-messenger://share/?link=@u\",odnoklassniki:\"https://connect.ok.ru/dk?st.cmd=WidgetSharePreview&st.shareUrl=@u&st.comments=@t\",pinterest:\"https://pinterest.com/pin/create/button/?url=@u&media=@m&description=@t\",pocket:\"https://getpocket.com/save?url=@u&title=@t\",quora:\"https://www.quora.com/share?url=@u&title=@t\",reddit:\"https://www.reddit.com/submit?url=@u&title=@t\",skype:\"https://web.skype.com/share?url=@t%0D%0A@u%0D%0A@d\",sms:\"sms:?body=@t%0D%0A@u%0D%0A@d\",stumbleupon:\"https://www.stumbleupon.com/submit?url=@u&title=@t\",telegram:\"https://t.me/share/url?url=@u&text=@t%0D%0A@d\",tumblr:\"https://www.tumblr.com/share/link?url=@u&name=@t&description=@d\",twitter:\"https://twitter.com/intent/tweet?text=@t&url=@u&hashtags=@h@tu\",viber:\"viber://forward?text=@t%0D%0A@u%0D%0A@d\",vk:\"https://vk.com/share.php?url=@u&title=@t&description=@d&image=@m&noparse=true\",weibo:\"http://service.weibo.com/share/share.php?url=@u&title=@t&pic=@m\",whatsapp:\"https://api.whatsapp.com/send?text=@t%0D%0A@u%0D%0A@d\",wordpress:\"https://wordpress.com/press-this.php?u=@u&t=@t&s=@d&i=@m\",xing:\"https://www.xing.com/social/share/spi?op=share&url=@u&title=@t\",yammer:\"https://www.yammer.com/messages/new?login=true&status=@t%0D%0A@u%0D%0A@d\"},n=\"undefined\"!=typeof window?window:null;var o={name:\"ShareNetwork\",props:{network:{type:String,required:!0},url:{type:String,required:!0},title:{type:String,required:!0},description:{type:String,default:\"\"},quote:{type:String,default:\"\"},hashtags:{type:String,default:\"\"},twitterUser:{type:String,default:\"\"},media:{type:String,default:\"\"},tag:{type:String,default:\"a\"},popup:{type:Object,default:function(){return{width:626,height:436}}}},data:function(){return{popupTop:0,popupLeft:0,popupWindow:void 0,popupInterval:null}},computed:{networks:function(){return this.$SocialSharing?this.$SocialSharing.options.networks:r},key:function(){return this.network.toLowerCase()},rawLink:function(){var t=navigator.userAgent.toLowerCase();return\"sms\"===this.key&&(t.indexOf(\"iphone\")>-1||t.indexOf(\"ipad\")>-1)?this.networks[this.key].replace(\":?\",\":&\"):this.networks[this.key]},shareLink:function(){var t=this.rawLink;return\"twitter\"===this.key&&(this.hashtags.length||(t=t.replace(\"&hashtags=@h\",\"\")),this.twitterUser.length||(t=t.replace(\"@tu\",\"\"))),t.replace(/@tu/g,\"&via=\"+encodeURIComponent(this.twitterUser)).replace(/@u/g,encodeURIComponent(this.url)).replace(/@t/g,encodeURIComponent(this.title)).replace(/@d/g,encodeURIComponent(this.description)).replace(/@q/g,encodeURIComponent(this.quote)).replace(/@h/g,this.encodedHashtags).replace(/@m/g,encodeURIComponent(this.media))},encodedHashtags:function(){return\"facebook\"===this.key&&this.hashtags.length?\"%23\"+this.hashtags.split(\",\")[0]:this.hashtags}},render:function(t){var e=this;if(!this.networks.hasOwnProperty(this.key))throw new Error(\"Network \"+this.key+\" does not exist\");var i={class:\"share-network-\"+this.key,on:{click:function(){return e[\"http\"===e.rawLink.substring(0,4)?\"share\":\"touch\"]()}}};return\"a\"===this.tag&&(i.attrs={href:\"javascript:void(0)\"}),t(this.tag,i,this.$slots.default)},methods:{resizePopup:function(){var t=n.innerWidth||document.documentElement.clientWidth||n.screenX,e=n.innerHeight||document.documentElement.clientHeight||n.screenY,i=t/n.screen.availWidth;this.popupLeft=(t-this.popup.width)/2/i+(void 0!==n.screenLeft?n.screenLeft:n.screenX),this.popupTop=(e-this.popup.height)/2/i+(void 0!==n.screenTop?n.screenTop:n.screenY)},share:function(){var t=this;this.resizePopup(),this.popupWindow&&this.popupInterval&&(clearInterval(this.popupInterval),this.popupWindow.close(),this.emit(\"change\")),this.popupWindow=n.open(this.shareLink,\"sharer-\"+this.key,\",height=\"+this.popup.height+\",width=\"+this.popup.width+\",left=\"+this.popupLeft+\",top=\"+this.popupTop+\",screenX=\"+this.popupLeft+\",screenY=\"+this.popupTop),this.popupWindow&&(this.popupWindow.focus(),this.popupInterval=setInterval((function(){t.popupWindow&&!t.popupWindow.closed||(clearInterval(t.popupInterval),t.popupWindow=null,t.emit(\"close\"))}),500),this.emit(\"open\"))},touch:function(){window.open(this.shareLink,\"_blank\"),this.emit(\"open\")},emit:function(t){this.$root.$emit(\"share_network_\"+t,this.key,this.url),this.$emit(t,this.key,this.url)}}};e.default={install:function(t,e){t.component(o.name,o),t.prototype.$SocialSharing={options:{networks:e&&e.hasOwnProperty(\"networks\")?Object.assign(r,e.networks):r}}}}}])}));","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"cleave.js\")):\"function\"==typeof define&&define.amd?define(\"VueCleave\",[\"cleave.js\"],t):\"object\"==typeof exports?exports.VueCleave=t(require(\"cleave.js\")):e.VueCleave=t(e.Cleave)}(\"undefined\"!=typeof self?self:this,function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=1)}([function(t,n){t.exports=e},function(e,t,n){\"use strict\";n.r(t);var r=n(0),o=n.n(r);function u(){return(u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}var a={name:\"cleave\",render:function(e){return e(\"input\",{attrs:{type:\"text\",value:this.value},on:{blur:this.onBlur}})},props:{value:{default:null,required:!0,validator:function(e){return null===e||\"string\"==typeof e||e instanceof String||\"number\"==typeof e}},options:{type:Object,default:function(){return{}}},raw:{type:Boolean,default:!0}},data:function(){return{cleave:null,onValueChangedFn:null}},mounted:function(){this.cleave||(this.cleave=new o.a(this.$el,this.getOptions(this.options)))},methods:{getOptions:function(e){return this.onValueChangedFn=e.onValueChanged,u({},e,{onValueChanged:this.onValueChanged})},onValueChanged:function(e){var t=this.raw?e.target.rawValue:e.target.value;this.$emit(\"input\",t),\"function\"==typeof this.onValueChangedFn&&this.onValueChangedFn.call(this,e)},onBlur:function(e){this.$emit(\"blur\",this.value)}},watch:{options:{deep:!0,handler:function(e){this.cleave.destroy(),this.cleave=new o.a(this.$el,this.getOptions(e)),this.cleave.setRawValue(this.value)}},value:function(e){this.cleave&&(this.raw&&e===this.cleave.getRawValue()||(this.raw||e!==this.$el.value)&&this.cleave.setRawValue(e))}},beforeDestroy:function(){this.cleave&&(this.cleave.destroy(),this.cleave=null,this.onValueChangedFn=null)}};n.d(t,\"plugin\",function(){return i}),n.d(t,\"component\",function(){return a});var i=function(e,t){var n=\"cleave\";\"string\"==typeof t&&(n=t),e.component(n,a)};a.install=i;t.default=a}]).default});","var commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nvar NumeralFormatter = function (numeralDecimalMark,\n numeralIntegerScale,\n numeralDecimalScale,\n numeralThousandsGroupStyle,\n numeralPositiveOnly,\n stripLeadingZeroes,\n prefix,\n signBeforePrefix,\n tailPrefix,\n delimiter) {\n var owner = this;\n\n owner.numeralDecimalMark = numeralDecimalMark || '.';\n owner.numeralIntegerScale = numeralIntegerScale > 0 ? numeralIntegerScale : 0;\n owner.numeralDecimalScale = numeralDecimalScale >= 0 ? numeralDecimalScale : 2;\n owner.numeralThousandsGroupStyle = numeralThousandsGroupStyle || NumeralFormatter.groupStyle.thousand;\n owner.numeralPositiveOnly = !!numeralPositiveOnly;\n owner.stripLeadingZeroes = stripLeadingZeroes !== false;\n owner.prefix = (prefix || prefix === '') ? prefix : '';\n owner.signBeforePrefix = !!signBeforePrefix;\n owner.tailPrefix = !!tailPrefix;\n owner.delimiter = (delimiter || delimiter === '') ? delimiter : ',';\n owner.delimiterRE = delimiter ? new RegExp('\\\\' + delimiter, 'g') : '';\n};\n\nNumeralFormatter.groupStyle = {\n thousand: 'thousand',\n lakh: 'lakh',\n wan: 'wan',\n none: 'none' \n};\n\nNumeralFormatter.prototype = {\n getRawValue: function (value) {\n return value.replace(this.delimiterRE, '').replace(this.numeralDecimalMark, '.');\n },\n\n format: function (value) {\n var owner = this, parts, partSign, partSignAndPrefix, partInteger, partDecimal = '';\n\n // strip alphabet letters\n value = value.replace(/[A-Za-z]/g, '')\n // replace the first decimal mark with reserved placeholder\n .replace(owner.numeralDecimalMark, 'M')\n\n // strip non numeric letters except minus and \"M\"\n // this is to ensure prefix has been stripped\n .replace(/[^\\dM-]/g, '')\n\n // replace the leading minus with reserved placeholder\n .replace(/^\\-/, 'N')\n\n // strip the other minus sign (if present)\n .replace(/\\-/g, '')\n\n // replace the minus sign (if present)\n .replace('N', owner.numeralPositiveOnly ? '' : '-')\n\n // replace decimal mark\n .replace('M', owner.numeralDecimalMark);\n\n // strip any leading zeros\n if (owner.stripLeadingZeroes) {\n value = value.replace(/^(-)?0+(?=\\d)/, '$1');\n }\n\n partSign = value.slice(0, 1) === '-' ? '-' : '';\n if (typeof owner.prefix != 'undefined') {\n if (owner.signBeforePrefix) {\n partSignAndPrefix = partSign + owner.prefix;\n } else {\n partSignAndPrefix = owner.prefix + partSign;\n }\n } else {\n partSignAndPrefix = partSign;\n }\n \n partInteger = value;\n\n if (value.indexOf(owner.numeralDecimalMark) >= 0) {\n parts = value.split(owner.numeralDecimalMark);\n partInteger = parts[0];\n partDecimal = owner.numeralDecimalMark + parts[1].slice(0, owner.numeralDecimalScale);\n }\n\n if(partSign === '-') {\n partInteger = partInteger.slice(1);\n }\n\n if (owner.numeralIntegerScale > 0) {\n partInteger = partInteger.slice(0, owner.numeralIntegerScale);\n }\n\n switch (owner.numeralThousandsGroupStyle) {\n case NumeralFormatter.groupStyle.lakh:\n partInteger = partInteger.replace(/(\\d)(?=(\\d\\d)+\\d$)/g, '$1' + owner.delimiter);\n\n break;\n\n case NumeralFormatter.groupStyle.wan:\n partInteger = partInteger.replace(/(\\d)(?=(\\d{4})+$)/g, '$1' + owner.delimiter);\n\n break;\n\n case NumeralFormatter.groupStyle.thousand:\n partInteger = partInteger.replace(/(\\d)(?=(\\d{3})+$)/g, '$1' + owner.delimiter);\n\n break;\n }\n\n if (owner.tailPrefix) {\n return partSign + partInteger.toString() + (owner.numeralDecimalScale > 0 ? partDecimal.toString() : '') + owner.prefix;\n }\n\n return partSignAndPrefix + partInteger.toString() + (owner.numeralDecimalScale > 0 ? partDecimal.toString() : '');\n }\n};\n\nvar NumeralFormatter_1 = NumeralFormatter;\n\nvar DateFormatter = function (datePattern, dateMin, dateMax) {\n var owner = this;\n\n owner.date = [];\n owner.blocks = [];\n owner.datePattern = datePattern;\n owner.dateMin = dateMin\n .split('-')\n .reverse()\n .map(function(x) {\n return parseInt(x, 10);\n });\n if (owner.dateMin.length === 2) owner.dateMin.unshift(0);\n\n owner.dateMax = dateMax\n .split('-')\n .reverse()\n .map(function(x) {\n return parseInt(x, 10);\n });\n if (owner.dateMax.length === 2) owner.dateMax.unshift(0);\n \n owner.initBlocks();\n};\n\nDateFormatter.prototype = {\n initBlocks: function () {\n var owner = this;\n owner.datePattern.forEach(function (value) {\n if (value === 'Y') {\n owner.blocks.push(4);\n } else {\n owner.blocks.push(2);\n }\n });\n },\n\n getISOFormatDate: function () {\n var owner = this,\n date = owner.date;\n\n return date[2] ? (\n date[2] + '-' + owner.addLeadingZero(date[1]) + '-' + owner.addLeadingZero(date[0])\n ) : '';\n },\n\n getBlocks: function () {\n return this.blocks;\n },\n\n getValidatedDate: function (value) {\n var owner = this, result = '';\n\n value = value.replace(/[^\\d]/g, '');\n\n owner.blocks.forEach(function (length, index) {\n if (value.length > 0) {\n var sub = value.slice(0, length),\n sub0 = sub.slice(0, 1),\n rest = value.slice(length);\n\n switch (owner.datePattern[index]) {\n case 'd':\n if (sub === '00') {\n sub = '01';\n } else if (parseInt(sub0, 10) > 3) {\n sub = '0' + sub0;\n } else if (parseInt(sub, 10) > 31) {\n sub = '31';\n }\n\n break;\n\n case 'm':\n if (sub === '00') {\n sub = '01';\n } else if (parseInt(sub0, 10) > 1) {\n sub = '0' + sub0;\n } else if (parseInt(sub, 10) > 12) {\n sub = '12';\n }\n\n break;\n }\n\n result += sub;\n\n // update remaining string\n value = rest;\n }\n });\n\n return this.getFixedDateString(result);\n },\n\n getFixedDateString: function (value) {\n var owner = this, datePattern = owner.datePattern, date = [],\n dayIndex = 0, monthIndex = 0, yearIndex = 0,\n dayStartIndex = 0, monthStartIndex = 0, yearStartIndex = 0,\n day, month, year, fullYearDone = false;\n\n // mm-dd || dd-mm\n if (value.length === 4 && datePattern[0].toLowerCase() !== 'y' && datePattern[1].toLowerCase() !== 'y') {\n dayStartIndex = datePattern[0] === 'd' ? 0 : 2;\n monthStartIndex = 2 - dayStartIndex;\n day = parseInt(value.slice(dayStartIndex, dayStartIndex + 2), 10);\n month = parseInt(value.slice(monthStartIndex, monthStartIndex + 2), 10);\n\n date = this.getFixedDate(day, month, 0);\n }\n\n // yyyy-mm-dd || yyyy-dd-mm || mm-dd-yyyy || dd-mm-yyyy || dd-yyyy-mm || mm-yyyy-dd\n if (value.length === 8) {\n datePattern.forEach(function (type, index) {\n switch (type) {\n case 'd':\n dayIndex = index;\n break;\n case 'm':\n monthIndex = index;\n break;\n default:\n yearIndex = index;\n break;\n }\n });\n\n yearStartIndex = yearIndex * 2;\n dayStartIndex = (dayIndex <= yearIndex) ? dayIndex * 2 : (dayIndex * 2 + 2);\n monthStartIndex = (monthIndex <= yearIndex) ? monthIndex * 2 : (monthIndex * 2 + 2);\n\n day = parseInt(value.slice(dayStartIndex, dayStartIndex + 2), 10);\n month = parseInt(value.slice(monthStartIndex, monthStartIndex + 2), 10);\n year = parseInt(value.slice(yearStartIndex, yearStartIndex + 4), 10);\n\n fullYearDone = value.slice(yearStartIndex, yearStartIndex + 4).length === 4;\n\n date = this.getFixedDate(day, month, year);\n }\n\n // mm-yy || yy-mm\n if (value.length === 4 && (datePattern[0] === 'y' || datePattern[1] === 'y')) {\n monthStartIndex = datePattern[0] === 'm' ? 0 : 2;\n yearStartIndex = 2 - monthStartIndex;\n month = parseInt(value.slice(monthStartIndex, monthStartIndex + 2), 10);\n year = parseInt(value.slice(yearStartIndex, yearStartIndex + 2), 10);\n\n fullYearDone = value.slice(yearStartIndex, yearStartIndex + 2).length === 2;\n\n date = [0, month, year];\n }\n\n // mm-yyyy || yyyy-mm\n if (value.length === 6 && (datePattern[0] === 'Y' || datePattern[1] === 'Y')) {\n monthStartIndex = datePattern[0] === 'm' ? 0 : 4;\n yearStartIndex = 2 - 0.5 * monthStartIndex;\n month = parseInt(value.slice(monthStartIndex, monthStartIndex + 2), 10);\n year = parseInt(value.slice(yearStartIndex, yearStartIndex + 4), 10);\n\n fullYearDone = value.slice(yearStartIndex, yearStartIndex + 4).length === 4;\n\n date = [0, month, year];\n }\n\n date = owner.getRangeFixedDate(date);\n owner.date = date;\n\n var result = date.length === 0 ? value : datePattern.reduce(function (previous, current) {\n switch (current) {\n case 'd':\n return previous + (date[0] === 0 ? '' : owner.addLeadingZero(date[0]));\n case 'm':\n return previous + (date[1] === 0 ? '' : owner.addLeadingZero(date[1]));\n case 'y':\n return previous + (fullYearDone ? owner.addLeadingZeroForYear(date[2], false) : '');\n case 'Y':\n return previous + (fullYearDone ? owner.addLeadingZeroForYear(date[2], true) : '');\n }\n }, '');\n\n return result;\n },\n\n getRangeFixedDate: function (date) {\n var owner = this,\n datePattern = owner.datePattern,\n dateMin = owner.dateMin || [],\n dateMax = owner.dateMax || [];\n\n if (!date.length || (dateMin.length < 3 && dateMax.length < 3)) return date;\n\n if (\n datePattern.find(function(x) {\n return x.toLowerCase() === 'y';\n }) &&\n date[2] === 0\n ) return date;\n\n if (dateMax.length && (dateMax[2] < date[2] || (\n dateMax[2] === date[2] && (dateMax[1] < date[1] || (\n dateMax[1] === date[1] && dateMax[0] < date[0]\n ))\n ))) return dateMax;\n\n if (dateMin.length && (dateMin[2] > date[2] || (\n dateMin[2] === date[2] && (dateMin[1] > date[1] || (\n dateMin[1] === date[1] && dateMin[0] > date[0]\n ))\n ))) return dateMin;\n\n return date;\n },\n\n getFixedDate: function (day, month, year) {\n day = Math.min(day, 31);\n month = Math.min(month, 12);\n year = parseInt((year || 0), 10);\n\n if ((month < 7 && month % 2 === 0) || (month > 8 && month % 2 === 1)) {\n day = Math.min(day, month === 2 ? (this.isLeapYear(year) ? 29 : 28) : 30);\n }\n\n return [day, month, year];\n },\n\n isLeapYear: function (year) {\n return ((year % 4 === 0) && (year % 100 !== 0)) || (year % 400 === 0);\n },\n\n addLeadingZero: function (number) {\n return (number < 10 ? '0' : '') + number;\n },\n\n addLeadingZeroForYear: function (number, fullYearMode) {\n if (fullYearMode) {\n return (number < 10 ? '000' : (number < 100 ? '00' : (number < 1000 ? '0' : ''))) + number;\n }\n\n return (number < 10 ? '0' : '') + number;\n }\n};\n\nvar DateFormatter_1 = DateFormatter;\n\nvar TimeFormatter = function (timePattern, timeFormat) {\n var owner = this;\n\n owner.time = [];\n owner.blocks = [];\n owner.timePattern = timePattern;\n owner.timeFormat = timeFormat;\n owner.initBlocks();\n};\n\nTimeFormatter.prototype = {\n initBlocks: function () {\n var owner = this;\n owner.timePattern.forEach(function () {\n owner.blocks.push(2);\n });\n },\n\n getISOFormatTime: function () {\n var owner = this,\n time = owner.time;\n\n return time[2] ? (\n owner.addLeadingZero(time[0]) + ':' + owner.addLeadingZero(time[1]) + ':' + owner.addLeadingZero(time[2])\n ) : '';\n },\n\n getBlocks: function () {\n return this.blocks;\n },\n\n getTimeFormatOptions: function () {\n var owner = this;\n if (String(owner.timeFormat) === '12') {\n return {\n maxHourFirstDigit: 1,\n maxHours: 12,\n maxMinutesFirstDigit: 5,\n maxMinutes: 60\n };\n }\n\n return {\n maxHourFirstDigit: 2,\n maxHours: 23,\n maxMinutesFirstDigit: 5,\n maxMinutes: 60\n };\n },\n\n getValidatedTime: function (value) {\n var owner = this, result = '';\n\n value = value.replace(/[^\\d]/g, '');\n\n var timeFormatOptions = owner.getTimeFormatOptions();\n\n owner.blocks.forEach(function (length, index) {\n if (value.length > 0) {\n var sub = value.slice(0, length),\n sub0 = sub.slice(0, 1),\n rest = value.slice(length);\n\n switch (owner.timePattern[index]) {\n\n case 'h':\n if (parseInt(sub0, 10) > timeFormatOptions.maxHourFirstDigit) {\n sub = '0' + sub0;\n } else if (parseInt(sub, 10) > timeFormatOptions.maxHours) {\n sub = timeFormatOptions.maxHours + '';\n }\n\n break;\n\n case 'm':\n case 's':\n if (parseInt(sub0, 10) > timeFormatOptions.maxMinutesFirstDigit) {\n sub = '0' + sub0;\n } else if (parseInt(sub, 10) > timeFormatOptions.maxMinutes) {\n sub = timeFormatOptions.maxMinutes + '';\n }\n break;\n }\n\n result += sub;\n\n // update remaining string\n value = rest;\n }\n });\n\n return this.getFixedTimeString(result);\n },\n\n getFixedTimeString: function (value) {\n var owner = this, timePattern = owner.timePattern, time = [],\n secondIndex = 0, minuteIndex = 0, hourIndex = 0,\n secondStartIndex = 0, minuteStartIndex = 0, hourStartIndex = 0,\n second, minute, hour;\n\n if (value.length === 6) {\n timePattern.forEach(function (type, index) {\n switch (type) {\n case 's':\n secondIndex = index * 2;\n break;\n case 'm':\n minuteIndex = index * 2;\n break;\n case 'h':\n hourIndex = index * 2;\n break;\n }\n });\n\n hourStartIndex = hourIndex;\n minuteStartIndex = minuteIndex;\n secondStartIndex = secondIndex;\n\n second = parseInt(value.slice(secondStartIndex, secondStartIndex + 2), 10);\n minute = parseInt(value.slice(minuteStartIndex, minuteStartIndex + 2), 10);\n hour = parseInt(value.slice(hourStartIndex, hourStartIndex + 2), 10);\n\n time = this.getFixedTime(hour, minute, second);\n }\n\n if (value.length === 4 && owner.timePattern.indexOf('s') < 0) {\n timePattern.forEach(function (type, index) {\n switch (type) {\n case 'm':\n minuteIndex = index * 2;\n break;\n case 'h':\n hourIndex = index * 2;\n break;\n }\n });\n\n hourStartIndex = hourIndex;\n minuteStartIndex = minuteIndex;\n\n second = 0;\n minute = parseInt(value.slice(minuteStartIndex, minuteStartIndex + 2), 10);\n hour = parseInt(value.slice(hourStartIndex, hourStartIndex + 2), 10);\n\n time = this.getFixedTime(hour, minute, second);\n }\n\n owner.time = time;\n\n return time.length === 0 ? value : timePattern.reduce(function (previous, current) {\n switch (current) {\n case 's':\n return previous + owner.addLeadingZero(time[2]);\n case 'm':\n return previous + owner.addLeadingZero(time[1]);\n case 'h':\n return previous + owner.addLeadingZero(time[0]);\n }\n }, '');\n },\n\n getFixedTime: function (hour, minute, second) {\n second = Math.min(parseInt(second || 0, 10), 60);\n minute = Math.min(minute, 60);\n hour = Math.min(hour, 60);\n\n return [hour, minute, second];\n },\n\n addLeadingZero: function (number) {\n return (number < 10 ? '0' : '') + number;\n }\n};\n\nvar TimeFormatter_1 = TimeFormatter;\n\nvar PhoneFormatter = function (formatter, delimiter) {\n var owner = this;\n\n owner.delimiter = (delimiter || delimiter === '') ? delimiter : ' ';\n owner.delimiterRE = delimiter ? new RegExp('\\\\' + delimiter, 'g') : '';\n\n owner.formatter = formatter;\n};\n\nPhoneFormatter.prototype = {\n setFormatter: function (formatter) {\n this.formatter = formatter;\n },\n\n format: function (phoneNumber) {\n var owner = this;\n\n owner.formatter.clear();\n\n // only keep number and +\n phoneNumber = phoneNumber.replace(/[^\\d+]/g, '');\n\n // strip non-leading +\n phoneNumber = phoneNumber.replace(/^\\+/, 'B').replace(/\\+/g, '').replace('B', '+');\n\n // strip delimiter\n phoneNumber = phoneNumber.replace(owner.delimiterRE, '');\n\n var result = '', current, validated = false;\n\n for (var i = 0, iMax = phoneNumber.length; i < iMax; i++) {\n current = owner.formatter.inputDigit(phoneNumber.charAt(i));\n\n // has ()- or space inside\n if (/[\\s()-]/g.test(current)) {\n result = current;\n\n validated = true;\n } else {\n if (!validated) {\n result = current;\n }\n // else: over length input\n // it turns to invalid number again\n }\n }\n\n // strip ()\n // e.g. US: 7161234567 returns (716) 123-4567\n result = result.replace(/[()]/g, '');\n // replace library delimiter with user customized delimiter\n result = result.replace(/[\\s-]/g, owner.delimiter);\n\n return result;\n }\n};\n\nvar PhoneFormatter_1 = PhoneFormatter;\n\nvar CreditCardDetector = {\n blocks: {\n uatp: [4, 5, 6],\n amex: [4, 6, 5],\n diners: [4, 6, 4],\n discover: [4, 4, 4, 4],\n mastercard: [4, 4, 4, 4],\n dankort: [4, 4, 4, 4],\n instapayment: [4, 4, 4, 4],\n jcb15: [4, 6, 5],\n jcb: [4, 4, 4, 4],\n maestro: [4, 4, 4, 4],\n visa: [4, 4, 4, 4],\n mir: [4, 4, 4, 4],\n unionPay: [4, 4, 4, 4],\n general: [4, 4, 4, 4]\n },\n\n re: {\n // starts with 1; 15 digits, not starts with 1800 (jcb card)\n uatp: /^(?!1800)1\\d{0,14}/,\n\n // starts with 34/37; 15 digits\n amex: /^3[47]\\d{0,13}/,\n\n // starts with 6011/65/644-649; 16 digits\n discover: /^(?:6011|65\\d{0,2}|64[4-9]\\d?)\\d{0,12}/,\n\n // starts with 300-305/309 or 36/38/39; 14 digits\n diners: /^3(?:0([0-5]|9)|[689]\\d?)\\d{0,11}/,\n\n // starts with 51-55/2221–2720; 16 digits\n mastercard: /^(5[1-5]\\d{0,2}|22[2-9]\\d{0,1}|2[3-7]\\d{0,2})\\d{0,12}/,\n\n // starts with 5019/4175/4571; 16 digits\n dankort: /^(5019|4175|4571)\\d{0,12}/,\n\n // starts with 637-639; 16 digits\n instapayment: /^63[7-9]\\d{0,13}/,\n\n // starts with 2131/1800; 15 digits\n jcb15: /^(?:2131|1800)\\d{0,11}/,\n\n // starts with 2131/1800/35; 16 digits\n jcb: /^(?:35\\d{0,2})\\d{0,12}/,\n\n // starts with 50/56-58/6304/67; 16 digits\n maestro: /^(?:5[0678]\\d{0,2}|6304|67\\d{0,2})\\d{0,12}/,\n\n // starts with 22; 16 digits\n mir: /^220[0-4]\\d{0,12}/,\n\n // starts with 4; 16 digits\n visa: /^4\\d{0,15}/,\n\n // starts with 62/81; 16 digits\n unionPay: /^(62|81)\\d{0,14}/\n },\n\n getStrictBlocks: function (block) {\n var total = block.reduce(function (prev, current) {\n return prev + current;\n }, 0);\n\n return block.concat(19 - total);\n },\n\n getInfo: function (value, strictMode) {\n var blocks = CreditCardDetector.blocks,\n re = CreditCardDetector.re;\n\n // Some credit card can have up to 19 digits number.\n // Set strictMode to true will remove the 16 max-length restrain,\n // however, I never found any website validate card number like\n // this, hence probably you don't want to enable this option.\n strictMode = !!strictMode;\n\n for (var key in re) {\n if (re[key].test(value)) {\n var matchedBlocks = blocks[key];\n return {\n type: key,\n blocks: strictMode ? this.getStrictBlocks(matchedBlocks) : matchedBlocks\n };\n }\n }\n\n return {\n type: 'unknown',\n blocks: strictMode ? this.getStrictBlocks(blocks.general) : blocks.general\n };\n }\n};\n\nvar CreditCardDetector_1 = CreditCardDetector;\n\nvar Util = {\n noop: function () {\n },\n\n strip: function (value, re) {\n return value.replace(re, '');\n },\n\n getPostDelimiter: function (value, delimiter, delimiters) {\n // single delimiter\n if (delimiters.length === 0) {\n return value.slice(-delimiter.length) === delimiter ? delimiter : '';\n }\n\n // multiple delimiters\n var matchedDelimiter = '';\n delimiters.forEach(function (current) {\n if (value.slice(-current.length) === current) {\n matchedDelimiter = current;\n }\n });\n\n return matchedDelimiter;\n },\n\n getDelimiterREByDelimiter: function (delimiter) {\n return new RegExp(delimiter.replace(/([.?*+^$[\\]\\\\(){}|-])/g, '\\\\$1'), 'g');\n },\n\n getNextCursorPosition: function (prevPos, oldValue, newValue, delimiter, delimiters) {\n // If cursor was at the end of value, just place it back.\n // Because new value could contain additional chars.\n if (oldValue.length === prevPos) {\n return newValue.length;\n }\n\n return prevPos + this.getPositionOffset(prevPos, oldValue, newValue, delimiter ,delimiters);\n },\n\n getPositionOffset: function (prevPos, oldValue, newValue, delimiter, delimiters) {\n var oldRawValue, newRawValue, lengthOffset;\n\n oldRawValue = this.stripDelimiters(oldValue.slice(0, prevPos), delimiter, delimiters);\n newRawValue = this.stripDelimiters(newValue.slice(0, prevPos), delimiter, delimiters);\n lengthOffset = oldRawValue.length - newRawValue.length;\n\n return (lengthOffset !== 0) ? (lengthOffset / Math.abs(lengthOffset)) : 0;\n },\n\n stripDelimiters: function (value, delimiter, delimiters) {\n var owner = this;\n\n // single delimiter\n if (delimiters.length === 0) {\n var delimiterRE = delimiter ? owner.getDelimiterREByDelimiter(delimiter) : '';\n\n return value.replace(delimiterRE, '');\n }\n\n // multiple delimiters\n delimiters.forEach(function (current) {\n current.split('').forEach(function (letter) {\n value = value.replace(owner.getDelimiterREByDelimiter(letter), '');\n });\n });\n\n return value;\n },\n\n headStr: function (str, length) {\n return str.slice(0, length);\n },\n\n getMaxLength: function (blocks) {\n return blocks.reduce(function (previous, current) {\n return previous + current;\n }, 0);\n },\n\n // strip prefix\n // Before type | After type | Return value\n // PEFIX-... | PEFIX-... | ''\n // PREFIX-123 | PEFIX-123 | 123\n // PREFIX-123 | PREFIX-23 | 23\n // PREFIX-123 | PREFIX-1234 | 1234\n getPrefixStrippedValue: function (value, prefix, prefixLength, prevResult, delimiter, delimiters, noImmediatePrefix, tailPrefix, signBeforePrefix) {\n // No prefix\n if (prefixLength === 0) {\n return value;\n }\n\n // Value is prefix\n if (value === prefix && value !== '') {\n return '';\n }\n\n if (signBeforePrefix && (value.slice(0, 1) == '-')) {\n var prev = (prevResult.slice(0, 1) == '-') ? prevResult.slice(1) : prevResult;\n return '-' + this.getPrefixStrippedValue(value.slice(1), prefix, prefixLength, prev, delimiter, delimiters, noImmediatePrefix, tailPrefix, signBeforePrefix);\n }\n\n // Pre result prefix string does not match pre-defined prefix\n if (prevResult.slice(0, prefixLength) !== prefix && !tailPrefix) {\n // Check if the first time user entered something\n if (noImmediatePrefix && !prevResult && value) return value;\n return '';\n } else if (prevResult.slice(-prefixLength) !== prefix && tailPrefix) {\n // Check if the first time user entered something\n if (noImmediatePrefix && !prevResult && value) return value;\n return '';\n }\n\n var prevValue = this.stripDelimiters(prevResult, delimiter, delimiters);\n\n // New value has issue, someone typed in between prefix letters\n // Revert to pre value\n if (value.slice(0, prefixLength) !== prefix && !tailPrefix) {\n return prevValue.slice(prefixLength);\n } else if (value.slice(-prefixLength) !== prefix && tailPrefix) {\n return prevValue.slice(0, -prefixLength - 1);\n }\n\n // No issue, strip prefix for new value\n return tailPrefix ? value.slice(0, -prefixLength) : value.slice(prefixLength);\n },\n\n getFirstDiffIndex: function (prev, current) {\n var index = 0;\n\n while (prev.charAt(index) === current.charAt(index)) {\n if (prev.charAt(index++) === '') {\n return -1;\n }\n }\n\n return index;\n },\n\n getFormattedValue: function (value, blocks, blocksLength, delimiter, delimiters, delimiterLazyShow) {\n var result = '',\n multipleDelimiters = delimiters.length > 0,\n currentDelimiter = '';\n\n // no options, normal input\n if (blocksLength === 0) {\n return value;\n }\n\n blocks.forEach(function (length, index) {\n if (value.length > 0) {\n var sub = value.slice(0, length),\n rest = value.slice(length);\n\n if (multipleDelimiters) {\n currentDelimiter = delimiters[delimiterLazyShow ? (index - 1) : index] || currentDelimiter;\n } else {\n currentDelimiter = delimiter;\n }\n\n if (delimiterLazyShow) {\n if (index > 0) {\n result += currentDelimiter;\n }\n\n result += sub;\n } else {\n result += sub;\n\n if (sub.length === length && index < blocksLength - 1) {\n result += currentDelimiter;\n }\n }\n\n // update remaining string\n value = rest;\n }\n });\n\n return result;\n },\n\n // move cursor to the end\n // the first time user focuses on an input with prefix\n fixPrefixCursor: function (el, prefix, delimiter, delimiters) {\n if (!el) {\n return;\n }\n\n var val = el.value,\n appendix = delimiter || (delimiters[0] || ' ');\n\n if (!el.setSelectionRange || !prefix || (prefix.length + appendix.length) <= val.length) {\n return;\n }\n\n var len = val.length * 2;\n\n // set timeout to avoid blink\n setTimeout(function () {\n el.setSelectionRange(len, len);\n }, 1);\n },\n\n // Check if input field is fully selected\n checkFullSelection: function(value) {\n try {\n var selection = window.getSelection() || document.getSelection() || {};\n return selection.toString().length === value.length;\n } catch (ex) {\n // Ignore\n }\n\n return false;\n },\n\n setSelection: function (element, position, doc) {\n if (element !== this.getActiveElement(doc)) {\n return;\n }\n\n // cursor is already in the end\n if (element && element.value.length <= position) {\n return;\n }\n\n if (element.createTextRange) {\n var range = element.createTextRange();\n\n range.move('character', position);\n range.select();\n } else {\n try {\n element.setSelectionRange(position, position);\n } catch (e) {\n // eslint-disable-next-line\n console.warn('The input element type does not support selection');\n }\n }\n },\n\n getActiveElement: function(parent) {\n var activeElement = parent.activeElement;\n if (activeElement && activeElement.shadowRoot) {\n return this.getActiveElement(activeElement.shadowRoot);\n }\n return activeElement;\n },\n\n isAndroid: function () {\n return navigator && /android/i.test(navigator.userAgent);\n },\n\n // On Android chrome, the keyup and keydown events\n // always return key code 229 as a composition that\n // buffers the user’s keystrokes\n // see https://github.com/nosir/cleave.js/issues/147\n isAndroidBackspaceKeydown: function (lastInputValue, currentInputValue) {\n if (!this.isAndroid() || !lastInputValue || !currentInputValue) {\n return false;\n }\n\n return currentInputValue === lastInputValue.slice(0, -1);\n }\n};\n\nvar Util_1 = Util;\n\n/**\n * Props Assignment\n *\n * Separate this, so react module can share the usage\n */\nvar DefaultProperties = {\n // Maybe change to object-assign\n // for now just keep it as simple\n assign: function (target, opts) {\n target = target || {};\n opts = opts || {};\n\n // credit card\n target.creditCard = !!opts.creditCard;\n target.creditCardStrictMode = !!opts.creditCardStrictMode;\n target.creditCardType = '';\n target.onCreditCardTypeChanged = opts.onCreditCardTypeChanged || (function () {});\n\n // phone\n target.phone = !!opts.phone;\n target.phoneRegionCode = opts.phoneRegionCode || 'AU';\n target.phoneFormatter = {};\n\n // time\n target.time = !!opts.time;\n target.timePattern = opts.timePattern || ['h', 'm', 's'];\n target.timeFormat = opts.timeFormat || '24';\n target.timeFormatter = {};\n\n // date\n target.date = !!opts.date;\n target.datePattern = opts.datePattern || ['d', 'm', 'Y'];\n target.dateMin = opts.dateMin || '';\n target.dateMax = opts.dateMax || '';\n target.dateFormatter = {};\n\n // numeral\n target.numeral = !!opts.numeral;\n target.numeralIntegerScale = opts.numeralIntegerScale > 0 ? opts.numeralIntegerScale : 0;\n target.numeralDecimalScale = opts.numeralDecimalScale >= 0 ? opts.numeralDecimalScale : 2;\n target.numeralDecimalMark = opts.numeralDecimalMark || '.';\n target.numeralThousandsGroupStyle = opts.numeralThousandsGroupStyle || 'thousand';\n target.numeralPositiveOnly = !!opts.numeralPositiveOnly;\n target.stripLeadingZeroes = opts.stripLeadingZeroes !== false;\n target.signBeforePrefix = !!opts.signBeforePrefix;\n target.tailPrefix = !!opts.tailPrefix;\n\n // others\n target.swapHiddenInput = !!opts.swapHiddenInput;\n \n target.numericOnly = target.creditCard || target.date || !!opts.numericOnly;\n\n target.uppercase = !!opts.uppercase;\n target.lowercase = !!opts.lowercase;\n\n target.prefix = (target.creditCard || target.date) ? '' : (opts.prefix || '');\n target.noImmediatePrefix = !!opts.noImmediatePrefix;\n target.prefixLength = target.prefix.length;\n target.rawValueTrimPrefix = !!opts.rawValueTrimPrefix;\n target.copyDelimiter = !!opts.copyDelimiter;\n\n target.initValue = (opts.initValue !== undefined && opts.initValue !== null) ? opts.initValue.toString() : '';\n\n target.delimiter =\n (opts.delimiter || opts.delimiter === '') ? opts.delimiter :\n (opts.date ? '/' :\n (opts.time ? ':' :\n (opts.numeral ? ',' :\n (opts.phone ? ' ' :\n ' '))));\n target.delimiterLength = target.delimiter.length;\n target.delimiterLazyShow = !!opts.delimiterLazyShow;\n target.delimiters = opts.delimiters || [];\n\n target.blocks = opts.blocks || [];\n target.blocksLength = target.blocks.length;\n\n target.root = (typeof commonjsGlobal === 'object' && commonjsGlobal) ? commonjsGlobal : window;\n target.document = opts.document || target.root.document;\n\n target.maxLength = 0;\n\n target.backspace = false;\n target.result = '';\n\n target.onValueChanged = opts.onValueChanged || (function () {});\n\n return target;\n }\n};\n\nvar DefaultProperties_1 = DefaultProperties;\n\n/**\n * Construct a new Cleave instance by passing the configuration object\n *\n * @param {String | HTMLElement} element\n * @param {Object} opts\n */\nvar Cleave = function (element, opts) {\n var owner = this;\n var hasMultipleElements = false;\n\n if (typeof element === 'string') {\n owner.element = document.querySelector(element);\n hasMultipleElements = document.querySelectorAll(element).length > 1;\n } else {\n if (typeof element.length !== 'undefined' && element.length > 0) {\n owner.element = element[0];\n hasMultipleElements = element.length > 1;\n } else {\n owner.element = element;\n }\n }\n\n if (!owner.element) {\n throw new Error('[cleave.js] Please check the element');\n }\n\n if (hasMultipleElements) {\n try {\n // eslint-disable-next-line\n console.warn('[cleave.js] Multiple input fields matched, cleave.js will only take the first one.');\n } catch (e) {\n // Old IE\n }\n }\n\n opts.initValue = owner.element.value;\n\n owner.properties = Cleave.DefaultProperties.assign({}, opts);\n\n owner.init();\n};\n\nCleave.prototype = {\n init: function () {\n var owner = this, pps = owner.properties;\n\n // no need to use this lib\n if (!pps.numeral && !pps.phone && !pps.creditCard && !pps.time && !pps.date && (pps.blocksLength === 0 && !pps.prefix)) {\n owner.onInput(pps.initValue);\n\n return;\n }\n\n pps.maxLength = Cleave.Util.getMaxLength(pps.blocks);\n\n owner.isAndroid = Cleave.Util.isAndroid();\n owner.lastInputValue = '';\n owner.isBackward = '';\n\n owner.onChangeListener = owner.onChange.bind(owner);\n owner.onKeyDownListener = owner.onKeyDown.bind(owner);\n owner.onFocusListener = owner.onFocus.bind(owner);\n owner.onCutListener = owner.onCut.bind(owner);\n owner.onCopyListener = owner.onCopy.bind(owner);\n\n owner.initSwapHiddenInput();\n\n owner.element.addEventListener('input', owner.onChangeListener);\n owner.element.addEventListener('keydown', owner.onKeyDownListener);\n owner.element.addEventListener('focus', owner.onFocusListener);\n owner.element.addEventListener('cut', owner.onCutListener);\n owner.element.addEventListener('copy', owner.onCopyListener);\n\n\n owner.initPhoneFormatter();\n owner.initDateFormatter();\n owner.initTimeFormatter();\n owner.initNumeralFormatter();\n\n // avoid touch input field if value is null\n // otherwise Firefox will add red box-shadow for <input required />\n if (pps.initValue || (pps.prefix && !pps.noImmediatePrefix)) {\n owner.onInput(pps.initValue);\n }\n },\n\n initSwapHiddenInput: function () {\n var owner = this, pps = owner.properties;\n if (!pps.swapHiddenInput) return;\n\n var inputFormatter = owner.element.cloneNode(true);\n owner.element.parentNode.insertBefore(inputFormatter, owner.element);\n\n owner.elementSwapHidden = owner.element;\n owner.elementSwapHidden.type = 'hidden';\n\n owner.element = inputFormatter;\n owner.element.id = '';\n },\n\n initNumeralFormatter: function () {\n var owner = this, pps = owner.properties;\n\n if (!pps.numeral) {\n return;\n }\n\n pps.numeralFormatter = new Cleave.NumeralFormatter(\n pps.numeralDecimalMark,\n pps.numeralIntegerScale,\n pps.numeralDecimalScale,\n pps.numeralThousandsGroupStyle,\n pps.numeralPositiveOnly,\n pps.stripLeadingZeroes,\n pps.prefix,\n pps.signBeforePrefix,\n pps.tailPrefix,\n pps.delimiter\n );\n },\n\n initTimeFormatter: function() {\n var owner = this, pps = owner.properties;\n\n if (!pps.time) {\n return;\n }\n\n pps.timeFormatter = new Cleave.TimeFormatter(pps.timePattern, pps.timeFormat);\n pps.blocks = pps.timeFormatter.getBlocks();\n pps.blocksLength = pps.blocks.length;\n pps.maxLength = Cleave.Util.getMaxLength(pps.blocks);\n },\n\n initDateFormatter: function () {\n var owner = this, pps = owner.properties;\n\n if (!pps.date) {\n return;\n }\n\n pps.dateFormatter = new Cleave.DateFormatter(pps.datePattern, pps.dateMin, pps.dateMax);\n pps.blocks = pps.dateFormatter.getBlocks();\n pps.blocksLength = pps.blocks.length;\n pps.maxLength = Cleave.Util.getMaxLength(pps.blocks);\n },\n\n initPhoneFormatter: function () {\n var owner = this, pps = owner.properties;\n\n if (!pps.phone) {\n return;\n }\n\n // Cleave.AsYouTypeFormatter should be provided by\n // external google closure lib\n try {\n pps.phoneFormatter = new Cleave.PhoneFormatter(\n new pps.root.Cleave.AsYouTypeFormatter(pps.phoneRegionCode),\n pps.delimiter\n );\n } catch (ex) {\n throw new Error('[cleave.js] Please include phone-type-formatter.{country}.js lib');\n }\n },\n\n onKeyDown: function (event) {\n var owner = this,\n charCode = event.which || event.keyCode;\n\n owner.lastInputValue = owner.element.value;\n owner.isBackward = charCode === 8;\n },\n\n onChange: function (event) {\n var owner = this, pps = owner.properties,\n Util = Cleave.Util;\n\n owner.isBackward = owner.isBackward || event.inputType === 'deleteContentBackward';\n\n var postDelimiter = Util.getPostDelimiter(owner.lastInputValue, pps.delimiter, pps.delimiters);\n\n if (owner.isBackward && postDelimiter) {\n pps.postDelimiterBackspace = postDelimiter;\n } else {\n pps.postDelimiterBackspace = false;\n }\n\n this.onInput(this.element.value);\n },\n\n onFocus: function () {\n var owner = this,\n pps = owner.properties;\n owner.lastInputValue = owner.element.value;\n\n if (pps.prefix && pps.noImmediatePrefix && !owner.element.value) {\n this.onInput(pps.prefix);\n }\n\n Cleave.Util.fixPrefixCursor(owner.element, pps.prefix, pps.delimiter, pps.delimiters);\n },\n\n onCut: function (e) {\n if (!Cleave.Util.checkFullSelection(this.element.value)) return;\n this.copyClipboardData(e);\n this.onInput('');\n },\n\n onCopy: function (e) {\n if (!Cleave.Util.checkFullSelection(this.element.value)) return;\n this.copyClipboardData(e);\n },\n\n copyClipboardData: function (e) {\n var owner = this,\n pps = owner.properties,\n Util = Cleave.Util,\n inputValue = owner.element.value,\n textToCopy = '';\n\n if (!pps.copyDelimiter) {\n textToCopy = Util.stripDelimiters(inputValue, pps.delimiter, pps.delimiters);\n } else {\n textToCopy = inputValue;\n }\n\n try {\n if (e.clipboardData) {\n e.clipboardData.setData('Text', textToCopy);\n } else {\n window.clipboardData.setData('Text', textToCopy);\n }\n\n e.preventDefault();\n } catch (ex) {\n // empty\n }\n },\n\n onInput: function (value) {\n var owner = this, pps = owner.properties,\n Util = Cleave.Util;\n\n // case 1: delete one more character \"4\"\n // 1234*| -> hit backspace -> 123|\n // case 2: last character is not delimiter which is:\n // 12|34* -> hit backspace -> 1|34*\n // note: no need to apply this for numeral mode\n var postDelimiterAfter = Util.getPostDelimiter(value, pps.delimiter, pps.delimiters);\n if (!pps.numeral && pps.postDelimiterBackspace && !postDelimiterAfter) {\n value = Util.headStr(value, value.length - pps.postDelimiterBackspace.length);\n }\n\n // phone formatter\n if (pps.phone) {\n if (pps.prefix && (!pps.noImmediatePrefix || value.length)) {\n pps.result = pps.prefix + pps.phoneFormatter.format(value).slice(pps.prefix.length);\n } else {\n pps.result = pps.phoneFormatter.format(value);\n }\n owner.updateValueState();\n\n return;\n }\n\n // numeral formatter\n if (pps.numeral) {\n // Do not show prefix when noImmediatePrefix is specified\n // This mostly because we need to show user the native input placeholder\n if (pps.prefix && pps.noImmediatePrefix && value.length === 0) {\n pps.result = '';\n } else {\n pps.result = pps.numeralFormatter.format(value);\n }\n owner.updateValueState();\n\n return;\n }\n\n // date\n if (pps.date) {\n value = pps.dateFormatter.getValidatedDate(value);\n }\n\n // time\n if (pps.time) {\n value = pps.timeFormatter.getValidatedTime(value);\n }\n\n // strip delimiters\n value = Util.stripDelimiters(value, pps.delimiter, pps.delimiters);\n\n // strip prefix\n value = Util.getPrefixStrippedValue(value, pps.prefix, pps.prefixLength, pps.result, pps.delimiter, pps.delimiters, pps.noImmediatePrefix, pps.tailPrefix, pps.signBeforePrefix);\n\n // strip non-numeric characters\n value = pps.numericOnly ? Util.strip(value, /[^\\d]/g) : value;\n\n // convert case\n value = pps.uppercase ? value.toUpperCase() : value;\n value = pps.lowercase ? value.toLowerCase() : value;\n\n // prevent from showing prefix when no immediate option enabled with empty input value\n if (pps.prefix) {\n if (pps.tailPrefix) {\n value = value + pps.prefix;\n } else {\n value = pps.prefix + value;\n }\n\n\n // no blocks specified, no need to do formatting\n if (pps.blocksLength === 0) {\n pps.result = value;\n owner.updateValueState();\n\n return;\n }\n }\n\n // update credit card props\n if (pps.creditCard) {\n owner.updateCreditCardPropsByValue(value);\n }\n\n // strip over length characters\n value = Util.headStr(value, pps.maxLength);\n\n // apply blocks\n pps.result = Util.getFormattedValue(\n value,\n pps.blocks, pps.blocksLength,\n pps.delimiter, pps.delimiters, pps.delimiterLazyShow\n );\n\n owner.updateValueState();\n },\n\n updateCreditCardPropsByValue: function (value) {\n var owner = this, pps = owner.properties,\n Util = Cleave.Util,\n creditCardInfo;\n\n // At least one of the first 4 characters has changed\n if (Util.headStr(pps.result, 4) === Util.headStr(value, 4)) {\n return;\n }\n\n creditCardInfo = Cleave.CreditCardDetector.getInfo(value, pps.creditCardStrictMode);\n\n pps.blocks = creditCardInfo.blocks;\n pps.blocksLength = pps.blocks.length;\n pps.maxLength = Util.getMaxLength(pps.blocks);\n\n // credit card type changed\n if (pps.creditCardType !== creditCardInfo.type) {\n pps.creditCardType = creditCardInfo.type;\n\n pps.onCreditCardTypeChanged.call(owner, pps.creditCardType);\n }\n },\n\n updateValueState: function () {\n var owner = this,\n Util = Cleave.Util,\n pps = owner.properties;\n\n if (!owner.element) {\n return;\n }\n\n var endPos = owner.element.selectionEnd;\n var oldValue = owner.element.value;\n var newValue = pps.result;\n\n endPos = Util.getNextCursorPosition(endPos, oldValue, newValue, pps.delimiter, pps.delimiters);\n\n // fix Android browser type=\"text\" input field\n // cursor not jumping issue\n if (owner.isAndroid) {\n window.setTimeout(function () {\n owner.element.value = newValue;\n Util.setSelection(owner.element, endPos, pps.document, false);\n owner.callOnValueChanged();\n }, 1);\n\n return;\n }\n\n owner.element.value = newValue;\n if (pps.swapHiddenInput) owner.elementSwapHidden.value = owner.getRawValue();\n\n Util.setSelection(owner.element, endPos, pps.document, false);\n owner.callOnValueChanged();\n },\n\n callOnValueChanged: function () {\n var owner = this,\n pps = owner.properties;\n\n pps.onValueChanged.call(owner, {\n target: {\n name: owner.element.name,\n value: pps.result,\n rawValue: owner.getRawValue()\n }\n });\n },\n\n setPhoneRegionCode: function (phoneRegionCode) {\n var owner = this, pps = owner.properties;\n\n pps.phoneRegionCode = phoneRegionCode;\n owner.initPhoneFormatter();\n owner.onChange();\n },\n\n setRawValue: function (value) {\n var owner = this, pps = owner.properties;\n\n value = value !== undefined && value !== null ? value.toString() : '';\n\n if (pps.numeral) {\n value = value.replace('.', pps.numeralDecimalMark);\n }\n\n pps.postDelimiterBackspace = false;\n\n owner.element.value = value;\n owner.onInput(value);\n },\n\n getRawValue: function () {\n var owner = this,\n pps = owner.properties,\n Util = Cleave.Util,\n rawValue = owner.element.value;\n\n if (pps.rawValueTrimPrefix) {\n rawValue = Util.getPrefixStrippedValue(rawValue, pps.prefix, pps.prefixLength, pps.result, pps.delimiter, pps.delimiters, pps.noImmediatePrefix, pps.tailPrefix, pps.signBeforePrefix);\n }\n\n if (pps.numeral) {\n rawValue = pps.numeralFormatter.getRawValue(rawValue);\n } else {\n rawValue = Util.stripDelimiters(rawValue, pps.delimiter, pps.delimiters);\n }\n\n return rawValue;\n },\n\n getISOFormatDate: function () {\n var owner = this,\n pps = owner.properties;\n\n return pps.date ? pps.dateFormatter.getISOFormatDate() : '';\n },\n\n getISOFormatTime: function () {\n var owner = this,\n pps = owner.properties;\n\n return pps.time ? pps.timeFormatter.getISOFormatTime() : '';\n },\n\n getFormattedValue: function () {\n return this.element.value;\n },\n\n destroy: function () {\n var owner = this;\n\n owner.element.removeEventListener('input', owner.onChangeListener);\n owner.element.removeEventListener('keydown', owner.onKeyDownListener);\n owner.element.removeEventListener('focus', owner.onFocusListener);\n owner.element.removeEventListener('cut', owner.onCutListener);\n owner.element.removeEventListener('copy', owner.onCopyListener);\n },\n\n toString: function () {\n return '[Cleave Object]';\n }\n};\n\nCleave.NumeralFormatter = NumeralFormatter_1;\nCleave.DateFormatter = DateFormatter_1;\nCleave.TimeFormatter = TimeFormatter_1;\nCleave.PhoneFormatter = PhoneFormatter_1;\nCleave.CreditCardDetector = CreditCardDetector_1;\nCleave.Util = Util_1;\nCleave.DefaultProperties = DefaultProperties_1;\n\n// for angular directive\n((typeof commonjsGlobal === 'object' && commonjsGlobal) ? commonjsGlobal : window)['Cleave'] = Cleave;\n\n// CommonJS\nvar Cleave_1 = Cleave;\n\nexport default Cleave_1;\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n"],"sourceRoot":""}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(window.webpackJsonpwidgetSearchEngine=window.webpackJsonpwidgetSearchEngine||[]).push([[3],{
|
|
1
|
+
(window.webpackJsonpwidgetSearchEngine=window.webpackJsonpwidgetSearchEngine||[]).push([[3],{65:function(e,t,n){var o,l;
|
|
2
2
|
/*! PhotoSwipe Default UI - 4.1.3 - 2019-01-08
|
|
3
3
|
* http://photoswipe.com
|
|
4
4
|
* Copyright (c) 2019 Dmitry Semenov; */void 0===(l="function"==typeof(o=function(){"use strict";return function(e,t){var n,o,l,r,i,s,a,u,c,p,d,m,f,h,w,g,v,b,_=this,C=!1,T=!0,I=!0,E={barsSize:{top:44,bottom:"auto"},closeElClasses:["item","caption","zoom-wrap","ui","top-bar"],timeToIdle:4e3,timeToIdleOutside:1e3,loadingIndicatorDelay:1e3,addCaptionHTMLFn:function(e,t){return e.title?(t.children[0].innerHTML=e.title,!0):(t.children[0].innerHTML="",!1)},closeEl:!0,captionEl:!0,fullscreenEl:!0,zoomEl:!0,shareEl:!0,counterEl:!0,arrowEl:!0,preloaderEl:!0,tapToClose:!1,tapToToggleControls:!0,clickToCloseNonZoomable:!0,shareButtons:[{id:"facebook",label:"Share on Facebook",url:"https://www.facebook.com/sharer/sharer.php?u={{url}}"},{id:"twitter",label:"Tweet",url:"https://twitter.com/intent/tweet?text={{text}}&url={{url}}"},{id:"pinterest",label:"Pin it",url:"http://www.pinterest.com/pin/create/button/?url={{url}}&media={{image_url}}&description={{text}}"},{id:"download",label:"Download image",url:"{{raw_image_url}}",download:!0}],getImageURLForShare:function(){return e.currItem.src||""},getPageURLForShare:function(){return window.location.href},getTextForShare:function(){return e.currItem.title||""},indexIndicatorSep:" / ",fitControlsWidth:1200},F=function(e){if(g)return!0;e=e||window.event,w.timeToIdle&&w.mouseUsed&&!c&&M();for(var n,o,l=(e.target||e.srcElement).getAttribute("class")||"",r=0;r<P.length;r++)(n=P[r]).onTap&&l.indexOf("pswp__"+n.name)>-1&&(n.onTap(),o=!0);if(o){e.stopPropagation&&e.stopPropagation(),g=!0;var i=t.features.isOldAndroid?600:30;setTimeout((function(){g=!1}),i)}},x=function(e,n,o){t[(o?"add":"remove")+"Class"](e,"pswp__"+n)},S=function(){var e=1===w.getNumItemsFn();e!==h&&(x(o,"ui--one-slide",e),h=e)},k=function(){x(a,"share-modal--hidden",I)},K=function(){return(I=!I)?(t.removeClass(a,"pswp__share-modal--fade-in"),setTimeout((function(){I&&k()}),300)):(k(),setTimeout((function(){I||t.addClass(a,"pswp__share-modal--fade-in")}),30)),I||O(),!1},L=function(t){var n=(t=t||window.event).target||t.srcElement;return e.shout("shareLinkClick",t,n),!(!n.href||!n.hasAttribute("download")&&(window.open(n.href,"pswp_share","scrollbars=yes,resizable=yes,toolbar=no,location=yes,width=550,height=420,top=100,left="+(window.screen?Math.round(screen.width/2-275):100)),I||K(),1))},O=function(){for(var e,t,n,o,l="",r=0;r<w.shareButtons.length;r++)e=w.shareButtons[r],t=w.getImageURLForShare(e),n=w.getPageURLForShare(e),o=w.getTextForShare(e),l+='<a href="'+e.url.replace("{{url}}",encodeURIComponent(n)).replace("{{image_url}}",encodeURIComponent(t)).replace("{{raw_image_url}}",t).replace("{{text}}",encodeURIComponent(o))+'" target="_blank" class="pswp__share--'+e.id+'"'+(e.download?"download":"")+">"+e.label+"</a>",w.parseShareButtonOut&&(l=w.parseShareButtonOut(e,l));a.children[0].innerHTML=l,a.children[0].onclick=L},R=function(e){for(var n=0;n<w.closeElClasses.length;n++)if(t.hasClass(e,"pswp__"+w.closeElClasses[n]))return!0},z=0,M=function(){clearTimeout(b),z=0,c&&_.setIdle(!1)},y=function(e){var t=(e=e||window.event).relatedTarget||e.toElement;t&&"HTML"!==t.nodeName||(clearTimeout(b),b=setTimeout((function(){_.setIdle(!0)}),w.timeToIdleOutside))},A=function(e){m!==e&&(x(d,"preloader--active",!e),m=e)},D=function(n){var i=n.vGap;if(!e.likelyTouchDevice||w.mouseUsed||screen.width>w.fitControlsWidth){var s=w.barsSize;if(w.captionEl&&"auto"===s.bottom)if(r||((r=t.createEl("pswp__caption pswp__caption--fake")).appendChild(t.createEl("pswp__caption__center")),o.insertBefore(r,l),t.addClass(o,"pswp__ui--fit")),w.addCaptionHTMLFn(n,r,!0)){var a=r.clientHeight;i.bottom=parseInt(a,10)||44}else i.bottom=s.top;else i.bottom="auto"===s.bottom?0:s.bottom;i.top=s.top}else i.top=i.bottom=0},P=[{name:"caption",option:"captionEl",onInit:function(e){l=e}},{name:"share-modal",option:"shareEl",onInit:function(e){a=e},onTap:function(){K()}},{name:"button--share",option:"shareEl",onInit:function(e){s=e},onTap:function(){K()}},{name:"button--zoom",option:"zoomEl",onTap:e.toggleDesktopZoom},{name:"counter",option:"counterEl",onInit:function(e){i=e}},{name:"button--close",option:"closeEl",onTap:e.close},{name:"button--arrow--left",option:"arrowEl",onTap:e.prev},{name:"button--arrow--right",option:"arrowEl",onTap:e.next},{name:"button--fs",option:"fullscreenEl",onTap:function(){n.isFullscreen()?n.exit():n.enter()}},{name:"preloader",option:"preloaderEl",onInit:function(e){d=e}}];_.init=function(){var i;t.extend(e.options,E,!0),w=e.options,o=t.getChildByClass(e.scrollWrap,"pswp__ui"),(p=e.listen)("onVerticalDrag",(function(e){T&&e<.95?_.hideControls():!T&&e>=.95&&_.showControls()})),p("onPinchClose",(function(e){T&&e<.9?(_.hideControls(),i=!0):i&&!T&&e>.9&&_.showControls()})),p("zoomGestureEnded",(function(){(i=!1)&&!T&&_.showControls()})),p("beforeChange",_.update),p("doubleTap",(function(t){var n=e.currItem.initialZoomLevel;e.getZoomLevel()!==n?e.zoomTo(n,t,333):e.zoomTo(w.getDoubleTapZoom(!1,e.currItem),t,333)})),p("preventDragEvent",(function(e,t,n){var o=e.target||e.srcElement;o&&o.getAttribute("class")&&e.type.indexOf("mouse")>-1&&(o.getAttribute("class").indexOf("__caption")>0||/(SMALL|STRONG|EM)/i.test(o.tagName))&&(n.prevent=!1)})),p("bindEvents",(function(){t.bind(o,"pswpTap click",F),t.bind(e.scrollWrap,"pswpTap",_.onGlobalTap),e.likelyTouchDevice||t.bind(e.scrollWrap,"mouseover",_.onMouseOver)})),p("unbindEvents",(function(){I||K(),v&&clearInterval(v),t.unbind(document,"mouseout",y),t.unbind(document,"mousemove",M),t.unbind(o,"pswpTap click",F),t.unbind(e.scrollWrap,"pswpTap",_.onGlobalTap),t.unbind(e.scrollWrap,"mouseover",_.onMouseOver),n&&(t.unbind(document,n.eventK,_.updateFullscreen),n.isFullscreen()&&(w.hideAnimationDuration=0,n.exit()),n=null)})),p("destroy",(function(){w.captionEl&&(r&&o.removeChild(r),t.removeClass(l,"pswp__caption--empty")),a&&(a.children[0].onclick=null),t.removeClass(o,"pswp__ui--over-close"),t.addClass(o,"pswp__ui--hidden"),_.setIdle(!1)})),w.showAnimationDuration||t.removeClass(o,"pswp__ui--hidden"),p("initialZoomIn",(function(){w.showAnimationDuration&&t.removeClass(o,"pswp__ui--hidden")})),p("initialZoomOut",(function(){t.addClass(o,"pswp__ui--hidden")})),p("parseVerticalMargin",D),function(){var e,n,l,r=function(o){if(o)for(var r=o.length,i=0;i<r;i++){e=o[i],n=e.className;for(var s=0;s<P.length;s++)l=P[s],n.indexOf("pswp__"+l.name)>-1&&(w[l.option]?(t.removeClass(e,"pswp__element--disabled"),l.onInit&&l.onInit(e)):t.addClass(e,"pswp__element--disabled"))}};r(o.children);var i=t.getChildByClass(o,"pswp__top-bar");i&&r(i.children)}(),w.shareEl&&s&&a&&(I=!0),S(),w.timeToIdle&&p("mouseUsed",(function(){t.bind(document,"mousemove",M),t.bind(document,"mouseout",y),v=setInterval((function(){2==++z&&_.setIdle(!0)}),w.timeToIdle/2)})),w.fullscreenEl&&!t.features.isOldAndroid&&(n||(n=_.getFullscreenAPI()),n?(t.bind(document,n.eventK,_.updateFullscreen),_.updateFullscreen(),t.addClass(e.template,"pswp--supports-fs")):t.removeClass(e.template,"pswp--supports-fs")),w.preloaderEl&&(A(!0),p("beforeChange",(function(){clearTimeout(f),f=setTimeout((function(){e.currItem&&e.currItem.loading?(!e.allowProgressiveImg()||e.currItem.img&&!e.currItem.img.naturalWidth)&&A(!1):A(!0)}),w.loadingIndicatorDelay)})),p("imageLoadComplete",(function(t,n){e.currItem===n&&A(!0)})))},_.setIdle=function(e){c=e,x(o,"ui--idle",e)},_.update=function(){T&&e.currItem?(_.updateIndexIndicator(),w.captionEl&&(w.addCaptionHTMLFn(e.currItem,l),x(l,"caption--empty",!e.currItem.title)),C=!0):C=!1,I||K(),S()},_.updateFullscreen=function(o){o&&setTimeout((function(){e.setScrollOffset(0,t.getScrollY())}),50),t[(n.isFullscreen()?"add":"remove")+"Class"](e.template,"pswp--fs")},_.updateIndexIndicator=function(){w.counterEl&&(i.innerHTML=e.getCurrentIndex()+1+w.indexIndicatorSep+w.getNumItemsFn())},_.onGlobalTap=function(n){var o=(n=n||window.event).target||n.srcElement;if(!g)if(n.detail&&"mouse"===n.detail.pointerType){if(R(o))return void e.close();t.hasClass(o,"pswp__img")&&(1===e.getZoomLevel()&&e.getZoomLevel()<=e.currItem.fitRatio?w.clickToCloseNonZoomable&&e.close():e.toggleDesktopZoom(n.detail.releasePoint))}else if(w.tapToToggleControls&&(T?_.hideControls():_.showControls()),w.tapToClose&&(t.hasClass(o,"pswp__img")||R(o)))return void e.close()},_.onMouseOver=function(e){var t=(e=e||window.event).target||e.srcElement;x(o,"ui--over-close",R(t))},_.hideControls=function(){t.addClass(o,"pswp__ui--hidden"),T=!1},_.showControls=function(){T=!0,C||_.update(),t.removeClass(o,"pswp__ui--hidden")},_.supportsFullscreen=function(){var e=document;return!!(e.exitFullscreen||e.mozCancelFullScreen||e.webkitExitFullscreen||e.msExitFullscreen)},_.getFullscreenAPI=function(){var t,n=document.documentElement,o="fullscreenchange";return n.requestFullscreen?t={enterK:"requestFullscreen",exitK:"exitFullscreen",elementK:"fullscreenElement",eventK:o}:n.mozRequestFullScreen?t={enterK:"mozRequestFullScreen",exitK:"mozCancelFullScreen",elementK:"mozFullScreenElement",eventK:"moz"+o}:n.webkitRequestFullscreen?t={enterK:"webkitRequestFullscreen",exitK:"webkitExitFullscreen",elementK:"webkitFullscreenElement",eventK:"webkit"+o}:n.msRequestFullscreen&&(t={enterK:"msRequestFullscreen",exitK:"msExitFullscreen",elementK:"msFullscreenElement",eventK:"MSFullscreenChange"}),t&&(t.enter=function(){if(u=w.closeOnScroll,w.closeOnScroll=!1,"webkitRequestFullscreen"!==this.enterK)return e.template[this.enterK]();e.template[this.enterK](Element.ALLOW_KEYBOARD_INPUT)},t.exit=function(){return w.closeOnScroll=u,document[this.exitK]()},t.isFullscreen=function(){return document[this.elementK]}),t}}})?o.call(t,n,t,e):o)||(e.exports=l)}}]);
|