{"version":3,"sources":["webpack:///./src/views/platformpos.vue?e459","webpack:///src/views/platformpos.vue","webpack:///./src/views/platformpos.vue?d865","webpack:///./src/views/platformpos.vue","webpack:///./node_modules/inputmask-core/lib/index.js","webpack:///./node_modules/vue-masked-input/dist/ff-polyfill.js","webpack:///./node_modules/vue-masked-input/dist/maskedInput.js"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","ref","scopedSlots","_u","key","fn","on","_g","dateRules","model","value","callback","$$v","train_date","expression","menu1","$event","initialize","search","staticClass","nativeOn","stopPropagation","_v","headers","trains","isLoading","item","_s","getFormattedDateTime","update_time","onRowClick","_e","proxy","staticRenderFns","name","components","MaskedInput","valid","v","trainNoRules","dateFormatted","format","addRakeDialog","devices","device","id","editedIndex","editedItem","train_no","train_no_text","org","dep","dest","arr","pf","next_train_no","errors","text","align","sortable","train","train_loading","curTrainDate","menu2","summary","fetchTimer","computed","formatDate","editItem","watch","val","close","getFormattedDate","setInterval","clearInterval","console","log","methods","date","calcall","updateCurTrainDate","p","stn_code","a","defaults","common","localStorage","getItem","get","params","then","response","data","catch","e","device_id","updateCurDeviceId","updateCurDeviceName","device_name","$router","push","getDevices","indexOf","setTimeout","Object","assign","defaultItem","add","tz","train_device_map","unique_device_id","insert_time","post","t","lt","testDateUtc","utc","localDate","local","Math","abs","act_arr","x","late_arr","s","forEach","round","component","VBtn","VCard","VCardTitle","VCol","VContainer","VDataTable","VDatePicker","VIcon","VMenu","VRow","VTextField","extend","src","props","keys","i","l","length","copy","obj","mergeFormatCharacters","formatCharacters","merged","DEFAULT_FORMAT_CHARACTERS","chars","char","ESCAPE_CHAR","DIGIT_RE","LETTER_RE","ALPHANNUMERIC_RE","DEFAULT_PLACEHOLDER_CHAR","validate","test","transform","toUpperCase","Pattern","source","placeholderChar","isRevealingMask","pattern","firstEditableIndex","lastEditableIndex","_editableIndices","_parse","InputMask","options","selection","start","end","Error","setPattern","prototype","sourceChars","split","patternIndex","formatValue","valueBuffer","Array","valueIndex","isEditableIndex","isValidAtIndex","index","input","selectionBefore","valueBefore","getValue","inputIndex","_historyIndex","_history","splice","_lastOp","_lastSelection","lastOp","backspace","paste","initialState","slice","charAt","substring","undo","historyItem","startUndo","redo","pop","setValue","emptyValue","join","_resetHistory","setSelection","getRawValue","rawValue","module","exports","w","window","d","document","addPolyfill","type","event","CustomEvent","bubbles","cancelable","c1Generated","target","dispatchEvent","removePolyfill","removeEventListener","undefined","onfocusin","addEventListener","_toConsumableArray","isArray","arr2","from","h","disabled","maskCore","domProps","keydown","keyDown","keypress","keyPress","keyup","keyUp","textInput","mouseup","mouseUp","focusout","focusOut","cut","marginLeft","updateAfterAll","String","mask","required","validator","default","Boolean","newValue","oldValue","JSON","stringify","initMask","mounted","_this","concat","$refs","reduce","memo","$emit","updateToCoreState","setNativeSelection","keyCode","preventDefault","selectionStart","selectionEnd","ctrlKey","isIE","documentMode","isFirefox","InstallTrigger","execCommand","err","_this2","clipboardData","getData","isEmpty"],"mappings":"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","file":"js/chunk-f866df98.a6c82398.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('div',[_c('v-card',[_c('v-card-title',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\",\"md\":\"4\"}},[_c('v-menu',{ref:\"menu1\",attrs:{\"close-on-content-click\":false,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"max-width\":\"400px\",\"min-width\":\"290px\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({attrs:{\"required\":\"\",\"rules\":_vm.dateRules,\"prepend-icon\":\"event\"},model:{value:(_vm.train_date),callback:function ($$v) {_vm.train_date=$$v},expression:\"train_date\"}},on))]}}]),model:{value:(_vm.menu1),callback:function ($$v) {_vm.menu1=$$v},expression:\"menu1\"}},[_c('v-date-picker',{attrs:{\"no-title\":\"\"},on:{\"input\":function($event){return _vm.initialize(false)}},model:{value:(_vm.train_date),callback:function ($$v) {_vm.train_date=$$v},expression:\"train_date\"}})],1)],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\",\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"append-icon\":\"search\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-col',{staticClass:\"body-2 font-weight-black\",attrs:{\"cols\":\"12\",\"sm\":\"6\",\"md\":\"4\"}},[_c('v-btn',{attrs:{\"text\":\"\",\"icon\":\"\",\"color\":\"purple\",\"dark\":\"\"},nativeOn:{\"click\":function($event){$event.stopPropagation();return _vm.initialize(false)}}},[_c('v-icon',{attrs:{\"dark\":\"\"}},[_vm._v(\"mdi-refresh\")])],1)],1)],1)],1),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"dense\":\"\",\"headers\":_vm.headers,\"items\":_vm.trains,\"search\":_vm.search,\"item-key\":\"train_date+ train_no+name\",\"footer-props\":{\r\n 'items-per-page-options': [10, 20, 30, 40, 50, 100,900]\r\n },\"items-per-page\":40,\"sort-by\":\"pf\",\"loading\":_vm.isLoading,\"loading-text\":\"Loading... Please wait\",\"mobile-breakpoint\":100},scopedSlots:_vm._u([{key:\"item.update_time\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\"\\r\\n \"+_vm._s(_vm.getFormattedDateTime(item.update_time))+\"\\r\\n \")]}},{key:\"item.action\",fn:function(ref){\n var item = ref.item;\nreturn [(item.device_id)?_c('v-btn',{attrs:{\"text\":\"\",\"icon\":\"\",\"color\":\"green\",\"dark\":\"\"},nativeOn:{\"click\":function($event){$event.stopPropagation();return _vm.onRowClick(item)}}},[_c('v-icon',{attrs:{\"dark\":\"\"}},[_vm._v(\"mdi-information\")])],1):_vm._e()]}},{key:\"no-data\",fn:function(){return [_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.initialize(true)}}},[_vm._v(\"No Report, click to retry\")])]},proxy:true}])})],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../node_modules/vuetify-loader/lib/loader.js??ref--18-0!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./platformpos.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/vuetify-loader/lib/loader.js??ref--18-0!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./platformpos.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./platformpos.vue?vue&type=template&id=68ac5662&\"\nimport script from \"./platformpos.vue?vue&type=script&lang=js&\"\nexport * from \"./platformpos.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDatePicker } from 'vuetify/lib/components/VDatePicker';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardTitle,VCol,VContainer,VDataTable,VDatePicker,VIcon,VMenu,VRow,VTextField})\n","'use strict'\n\nfunction extend(dest, src) {\n if (src) {\n var props = Object.keys(src)\n for (var i = 0, l = props.length; i < l ; i++) {\n dest[props[i]] = src[props[i]]\n }\n }\n return dest\n}\n\nfunction copy(obj) {\n return extend({}, obj)\n}\n\n/**\n * Merge an object defining format characters into the defaults.\n * Passing null/undefined for en existing format character removes it.\n * Passing a definition for an existing format character overrides it.\n * @param {?Object} formatCharacters.\n */\nfunction mergeFormatCharacters(formatCharacters) {\n var merged = copy(DEFAULT_FORMAT_CHARACTERS)\n if (formatCharacters) {\n var chars = Object.keys(formatCharacters)\n for (var i = 0, l = chars.length; i < l ; i++) {\n var char = chars[i]\n if (formatCharacters[char] == null) {\n delete merged[char]\n }\n else {\n merged[char] = formatCharacters[char]\n }\n }\n }\n return merged\n}\n\nvar ESCAPE_CHAR = '\\\\'\n\nvar DIGIT_RE = /^\\d$/\nvar LETTER_RE = /^[A-Za-z]$/\nvar ALPHANNUMERIC_RE = /^[\\dA-Za-z]$/\n\nvar DEFAULT_PLACEHOLDER_CHAR = '_'\nvar DEFAULT_FORMAT_CHARACTERS = {\n '*': {\n validate: function(char) { return ALPHANNUMERIC_RE.test(char) }\n },\n '1': {\n validate: function(char) { return DIGIT_RE.test(char) }\n },\n 'a': {\n validate: function(char) { return LETTER_RE.test(char) }\n },\n 'A': {\n validate: function(char) { return LETTER_RE.test(char) },\n transform: function(char) { return char.toUpperCase() }\n },\n '#': {\n validate: function(char) { return ALPHANNUMERIC_RE.test(char) },\n transform: function(char) { return char.toUpperCase() }\n }\n}\n\n/**\n * @param {string} source\n * @patam {?Object} formatCharacters\n */\nfunction Pattern(source, formatCharacters, placeholderChar, isRevealingMask) {\n if (!(this instanceof Pattern)) {\n return new Pattern(source, formatCharacters, placeholderChar)\n }\n\n /** Placeholder character */\n this.placeholderChar = placeholderChar || DEFAULT_PLACEHOLDER_CHAR\n /** Format character definitions. */\n this.formatCharacters = formatCharacters || DEFAULT_FORMAT_CHARACTERS\n /** Pattern definition string with escape characters. */\n this.source = source\n /** Pattern characters after escape characters have been processed. */\n this.pattern = []\n /** Length of the pattern after escape characters have been processed. */\n this.length = 0\n /** Index of the first editable character. */\n this.firstEditableIndex = null\n /** Index of the last editable character. */\n this.lastEditableIndex = null\n /** Lookup for indices of editable characters in the pattern. */\n this._editableIndices = {}\n /** If true, only the pattern before the last valid value character shows. */\n this.isRevealingMask = isRevealingMask || false\n\n this._parse()\n}\n\nPattern.prototype._parse = function parse() {\n var sourceChars = this.source.split('')\n var patternIndex = 0\n var pattern = []\n\n for (var i = 0, l = sourceChars.length; i < l; i++) {\n var char = sourceChars[i]\n if (char === ESCAPE_CHAR) {\n if (i === l - 1) {\n throw new Error('InputMask: pattern ends with a raw ' + ESCAPE_CHAR)\n }\n char = sourceChars[++i]\n }\n else if (char in this.formatCharacters) {\n if (this.firstEditableIndex === null) {\n this.firstEditableIndex = patternIndex\n }\n this.lastEditableIndex = patternIndex\n this._editableIndices[patternIndex] = true\n }\n\n pattern.push(char)\n patternIndex++\n }\n\n if (this.firstEditableIndex === null) {\n throw new Error(\n 'InputMask: pattern \"' + this.source + '\" does not contain any editable characters.'\n )\n }\n\n this.pattern = pattern\n this.length = pattern.length\n}\n\n/**\n * @param {Array} value\n * @return {Array}\n */\nPattern.prototype.formatValue = function format(value) {\n var valueBuffer = new Array(this.length)\n var valueIndex = 0\n\n for (var i = 0, l = this.length; i < l ; i++) {\n if (this.isEditableIndex(i)) {\n if (this.isRevealingMask &&\n value.length <= valueIndex &&\n !this.isValidAtIndex(value[valueIndex], i)) {\n break\n }\n valueBuffer[i] = (value.length > valueIndex && this.isValidAtIndex(value[valueIndex], i)\n ? this.transform(value[valueIndex], i)\n : this.placeholderChar)\n valueIndex++\n }\n else {\n valueBuffer[i] = this.pattern[i]\n // Also allow the value to contain static values from the pattern by\n // advancing its index.\n if (value.length > valueIndex && value[valueIndex] === this.pattern[i]) {\n valueIndex++\n }\n }\n }\n\n return valueBuffer\n}\n\n/**\n * @param {number} index\n * @return {boolean}\n */\nPattern.prototype.isEditableIndex = function isEditableIndex(index) {\n return !!this._editableIndices[index]\n}\n\n/**\n * @param {string} char\n * @param {number} index\n * @return {boolean}\n */\nPattern.prototype.isValidAtIndex = function isValidAtIndex(char, index) {\n return this.formatCharacters[this.pattern[index]].validate(char)\n}\n\nPattern.prototype.transform = function transform(char, index) {\n var format = this.formatCharacters[this.pattern[index]]\n return typeof format.transform == 'function' ? format.transform(char) : char\n}\n\nfunction InputMask(options) {\n if (!(this instanceof InputMask)) { return new InputMask(options) }\n options = extend({\n formatCharacters: null,\n pattern: null,\n isRevealingMask: false,\n placeholderChar: DEFAULT_PLACEHOLDER_CHAR,\n selection: {start: 0, end: 0},\n value: ''\n }, options)\n\n if (options.pattern == null) {\n throw new Error('InputMask: you must provide a pattern.')\n }\n\n if (typeof options.placeholderChar !== 'string' || options.placeholderChar.length > 1) {\n throw new Error('InputMask: placeholderChar should be a single character or an empty string.')\n }\n\n this.placeholderChar = options.placeholderChar\n this.formatCharacters = mergeFormatCharacters(options.formatCharacters)\n this.setPattern(options.pattern, {\n value: options.value,\n selection: options.selection,\n isRevealingMask: options.isRevealingMask\n })\n}\n\n// Editing\n\n/**\n * Applies a single character of input based on the current selection.\n * @param {string} char\n * @return {boolean} true if a change has been made to value or selection as a\n * result of the input, false otherwise.\n */\nInputMask.prototype.input = function input(char) {\n // Ignore additional input if the cursor's at the end of the pattern\n if (this.selection.start === this.selection.end &&\n this.selection.start === this.pattern.length) {\n return false\n }\n\n var selectionBefore = copy(this.selection)\n var valueBefore = this.getValue()\n\n var inputIndex = this.selection.start\n\n // If the cursor or selection is prior to the first editable character, make\n // sure any input given is applied to it.\n if (inputIndex < this.pattern.firstEditableIndex) {\n inputIndex = this.pattern.firstEditableIndex\n }\n\n // Bail out or add the character to input\n if (this.pattern.isEditableIndex(inputIndex)) {\n if (!this.pattern.isValidAtIndex(char, inputIndex)) {\n return false\n }\n this.value[inputIndex] = this.pattern.transform(char, inputIndex)\n }\n\n // If multiple characters were selected, blank the remainder out based on the\n // pattern.\n var end = this.selection.end - 1\n while (end > inputIndex) {\n if (this.pattern.isEditableIndex(end)) {\n this.value[end] = this.placeholderChar\n }\n end--\n }\n\n // Advance the cursor to the next character\n this.selection.start = this.selection.end = inputIndex + 1\n\n // Skip over any subsequent static characters\n while (this.pattern.length > this.selection.start &&\n !this.pattern.isEditableIndex(this.selection.start)) {\n this.selection.start++\n this.selection.end++\n }\n\n // History\n if (this._historyIndex != null) {\n // Took more input after undoing, so blow any subsequent history away\n this._history.splice(this._historyIndex, this._history.length - this._historyIndex)\n this._historyIndex = null\n }\n if (this._lastOp !== 'input' ||\n selectionBefore.start !== selectionBefore.end ||\n this._lastSelection !== null && selectionBefore.start !== this._lastSelection.start) {\n this._history.push({value: valueBefore, selection: selectionBefore, lastOp: this._lastOp})\n }\n this._lastOp = 'input'\n this._lastSelection = copy(this.selection)\n\n return true\n}\n\n/**\n * Attempts to delete from the value based on the current cursor position or\n * selection.\n * @return {boolean} true if the value or selection changed as the result of\n * backspacing, false otherwise.\n */\nInputMask.prototype.backspace = function backspace() {\n // If the cursor is at the start there's nothing to do\n if (this.selection.start === 0 && this.selection.end === 0) {\n return false\n }\n\n var selectionBefore = copy(this.selection)\n var valueBefore = this.getValue()\n\n // No range selected - work on the character preceding the cursor\n if (this.selection.start === this.selection.end) {\n if (this.pattern.isEditableIndex(this.selection.start - 1)) {\n this.value[this.selection.start - 1] = this.placeholderChar\n }\n this.selection.start--\n this.selection.end--\n }\n // Range selected - delete characters and leave the cursor at the start of the selection\n else {\n var end = this.selection.end - 1\n while (end >= this.selection.start) {\n if (this.pattern.isEditableIndex(end)) {\n this.value[end] = this.placeholderChar\n }\n end--\n }\n this.selection.end = this.selection.start\n }\n\n // History\n if (this._historyIndex != null) {\n // Took more input after undoing, so blow any subsequent history away\n this._history.splice(this._historyIndex, this._history.length - this._historyIndex)\n }\n if (this._lastOp !== 'backspace' ||\n selectionBefore.start !== selectionBefore.end ||\n this._lastSelection !== null && selectionBefore.start !== this._lastSelection.start) {\n this._history.push({value: valueBefore, selection: selectionBefore, lastOp: this._lastOp})\n }\n this._lastOp = 'backspace'\n this._lastSelection = copy(this.selection)\n\n return true\n}\n\n/**\n * Attempts to paste a string of input at the current cursor position or over\n * the top of the current selection.\n * Invalid content at any position will cause the paste to be rejected, and it\n * may contain static parts of the mask's pattern.\n * @param {string} input\n * @return {boolean} true if the paste was successful, false otherwise.\n */\nInputMask.prototype.paste = function paste(input) {\n // This is necessary because we're just calling input() with each character\n // and rolling back if any were invalid, rather than checking up-front.\n var initialState = {\n value: this.value.slice(),\n selection: copy(this.selection),\n _lastOp: this._lastOp,\n _history: this._history.slice(),\n _historyIndex: this._historyIndex,\n _lastSelection: copy(this._lastSelection)\n }\n\n // If there are static characters at the start of the pattern and the cursor\n // or selection is within them, the static characters must match for a valid\n // paste.\n if (this.selection.start < this.pattern.firstEditableIndex) {\n for (var i = 0, l = this.pattern.firstEditableIndex - this.selection.start; i < l; i++) {\n if (input.charAt(i) !== this.pattern.pattern[i]) {\n return false\n }\n }\n\n // Continue as if the selection and input started from the editable part of\n // the pattern.\n input = input.substring(this.pattern.firstEditableIndex - this.selection.start)\n this.selection.start = this.pattern.firstEditableIndex\n }\n\n for (i = 0, l = input.length;\n i < l && this.selection.start <= this.pattern.lastEditableIndex;\n i++) {\n var valid = this.input(input.charAt(i))\n // Allow static parts of the pattern to appear in pasted input - they will\n // already have been stepped over by input(), so verify that the value\n // deemed invalid by input() was the expected static character.\n if (!valid) {\n if (this.selection.start > 0) {\n // XXX This only allows for one static character to be skipped\n var patternIndex = this.selection.start - 1\n if (!this.pattern.isEditableIndex(patternIndex) &&\n input.charAt(i) === this.pattern.pattern[patternIndex]) {\n continue\n }\n }\n extend(this, initialState)\n return false\n }\n }\n\n return true\n}\n\n// History\n\nInputMask.prototype.undo = function undo() {\n // If there is no history, or nothing more on the history stack, we can't undo\n if (this._history.length === 0 || this._historyIndex === 0) {\n return false\n }\n\n var historyItem\n if (this._historyIndex == null) {\n // Not currently undoing, set up the initial history index\n this._historyIndex = this._history.length - 1\n historyItem = this._history[this._historyIndex]\n // Add a new history entry if anything has changed since the last one, so we\n // can redo back to the initial state we started undoing from.\n var value = this.getValue()\n if (historyItem.value !== value ||\n historyItem.selection.start !== this.selection.start ||\n historyItem.selection.end !== this.selection.end) {\n this._history.push({value: value, selection: copy(this.selection), lastOp: this._lastOp, startUndo: true})\n }\n }\n else {\n historyItem = this._history[--this._historyIndex]\n }\n\n this.value = historyItem.value.split('')\n this.selection = historyItem.selection\n this._lastOp = historyItem.lastOp\n return true\n}\n\nInputMask.prototype.redo = function redo() {\n if (this._history.length === 0 || this._historyIndex == null) {\n return false\n }\n var historyItem = this._history[++this._historyIndex]\n // If this is the last history item, we're done redoing\n if (this._historyIndex === this._history.length - 1) {\n this._historyIndex = null\n // If the last history item was only added to start undoing, remove it\n if (historyItem.startUndo) {\n this._history.pop()\n }\n }\n this.value = historyItem.value.split('')\n this.selection = historyItem.selection\n this._lastOp = historyItem.lastOp\n return true\n}\n\n// Getters & setters\n\nInputMask.prototype.setPattern = function setPattern(pattern, options) {\n options = extend({\n selection: {start: 0, end: 0},\n value: ''\n }, options)\n this.pattern = new Pattern(pattern, this.formatCharacters, this.placeholderChar, options.isRevealingMask)\n this.setValue(options.value)\n this.emptyValue = this.pattern.formatValue([]).join('')\n this.selection = options.selection\n this._resetHistory()\n}\n\nInputMask.prototype.setSelection = function setSelection(selection) {\n this.selection = copy(selection)\n if (this.selection.start === this.selection.end) {\n if (this.selection.start < this.pattern.firstEditableIndex) {\n this.selection.start = this.selection.end = this.pattern.firstEditableIndex\n return true\n }\n // Set selection to the first editable, non-placeholder character before the selection\n // OR to the beginning of the pattern\n var index = this.selection.start\n while (index >= this.pattern.firstEditableIndex) {\n if (this.pattern.isEditableIndex(index - 1) &&\n this.value[index - 1] !== this.placeholderChar ||\n index === this.pattern.firstEditableIndex) {\n this.selection.start = this.selection.end = index\n break\n }\n index--\n }\n return true\n }\n return false\n}\n\nInputMask.prototype.setValue = function setValue(value) {\n if (value == null) {\n value = ''\n }\n this.value = this.pattern.formatValue(value.split(''))\n}\n\nInputMask.prototype.getValue = function getValue() {\n return this.value.join('')\n}\n\nInputMask.prototype.getRawValue = function getRawValue() {\n var rawValue = []\n for (var i = 0; i < this.value.length; i++) {\n if (this.pattern._editableIndices[i] === true) {\n rawValue.push(this.value[i])\n }\n }\n return rawValue.join('')\n}\n\nInputMask.prototype._resetHistory = function _resetHistory() {\n this._history = []\n this._historyIndex = null\n this._lastOp = null\n this._lastSelection = copy(this.selection)\n}\n\nInputMask.Pattern = Pattern\n\nmodule.exports = InputMask\n","// Copy paste from https://gist.github.com/nuxodin/9250e56a3ce6c0446efa\nexport default function () {\n var w = window,\n d = w.document;\n\n if (w.onfocusin === undefined) {\n d.addEventListener('focus', addPolyfill, true);\n d.addEventListener('blur', addPolyfill, true);\n d.addEventListener('focusin', removePolyfill, true);\n d.addEventListener('focusout', removePolyfill, true);\n }\n\n function addPolyfill(e) {\n var type = e.type === 'focus' ? 'focusin' : 'focusout';\n var event = new CustomEvent(type, {\n bubbles: true,\n cancelable: false\n });\n event.c1Generated = true;\n e.target.dispatchEvent(event);\n }\n\n function removePolyfill(e) {\n if (!e.c1Generated) {\n // focus after focusin, so chrome will the first time trigger tow times focusin\n d.removeEventListener('focus', addPolyfill, true);\n d.removeEventListener('blur', addPolyfill, true);\n d.removeEventListener('focusin', removePolyfill, true);\n d.removeEventListener('focusout', removePolyfill, true);\n }\n setTimeout(function () {\n d.removeEventListener('focusin', removePolyfill, true);\n d.removeEventListener('focusout', removePolyfill, true);\n });\n }\n};\n","function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nimport InputMask from 'inputmask-core';\nimport ffpoly from './ff-polyfill'; // Firefox Polyfill for focus events\n\nffpoly();\n\nexport default {\n name: 'MaskedInput',\n render: function render(h) {\n return h('input', {\n ref: 'input',\n attrs: {\n disabled: this.maskCore === null || this.disabled\n },\n domProps: {\n value: this.value\n },\n on: {\n keydown: this.keyDown,\n keypress: this.keyPress,\n keyup: this.keyUp,\n textInput: this.textInput,\n mouseup: this.mouseUp,\n focusout: this.focusOut,\n cut: this.cut,\n copy: this.copy,\n paste: this.paste\n }\n });\n },\n\n\n data: function data() {\n return {\n marginLeft: 0,\n maskCore: null,\n updateAfterAll: false\n };\n },\n\n props: {\n value: {\n type: String\n },\n mask: {\n required: true,\n validator: function validator(value) {\n return !!(value && value.length >= 1 || value instanceof Object);\n }\n },\n placeholderChar: {\n type: String,\n default: '_',\n validator: function validator(value) {\n return !!(value && value.length === 1);\n }\n },\n disabled: {\n type: Boolean,\n default: false\n }\n },\n\n watch: {\n mask: function mask(newValue, oldValue) {\n if (JSON.stringify(newValue) !== JSON.stringify(oldValue)) {\n this.initMask();\n }\n },\n value: function value(newValue) {\n if (this.maskCore) this.maskCore.setValue(newValue); // For multiple inputs support\n }\n },\n\n mounted: function mounted() {\n this.initMask();\n },\n\n\n methods: {\n initMask: function initMask() {\n var _this = this;\n\n try {\n if (this.mask instanceof Object) {\n this.maskCore = new InputMask(this.mask);\n } else {\n this.maskCore = new InputMask({\n pattern: this.mask,\n value: '',\n placeholderChar: this.placeholderChar,\n /* eslint-disable quote-props */\n formatCharacters: {\n 'a': {\n validate: function validate(char) {\n return (/^[A-Za-zА-Яа-я]$/.test(char)\n );\n }\n },\n 'A': {\n validate: function validate(char) {\n return (/^[A-Za-zА-Яа-я]$/.test(char)\n );\n },\n transform: function transform(char) {\n return char.toUpperCase();\n }\n },\n '*': {\n validate: function validate(char) {\n return (/^[\\dA-Za-zА-Яа-я]$/.test(char)\n );\n }\n },\n '#': {\n validate: function validate(char) {\n return (/^[\\dA-Za-zА-Яа-я]$/.test(char)\n );\n },\n transform: function transform(char) {\n return char.toUpperCase();\n }\n },\n '+': {\n validate: function validate() {\n return true;\n }\n }\n }\n });\n }\n [].concat(_toConsumableArray(this.$refs.input.value)).reduce(function (memo, item) {\n return _this.maskCore.input(item);\n }, null);\n this.maskCore.setSelection({\n start: 0,\n end: 0\n });\n if (this.$refs.input.value === '') {\n this.$emit('input', '', '');\n } else {\n this.updateToCoreState();\n }\n } catch (e) {\n this.maskCore = null;\n this.$refs.input.value = 'Error';\n this.$emit('input', this.$refs.input.value, '');\n }\n },\n getValue: function getValue() {\n return this.maskCore ? this.maskCore.getValue() : '';\n },\n keyDown: function keyDown(e) {\n // Always\n if (this.maskCore === null) {\n e.preventDefault();\n return;\n }\n this.setNativeSelection();\n switch (e.keyCode) {\n // backspace\n case 8:\n e.preventDefault();\n if (this.maskCore.selection.start > this.marginLeft || this.maskCore.selection.start !== this.maskCore.selection.end) {\n this.maskCore.backspace();\n this.updateToCoreState();\n }\n break;\n\n // left arrow\n case 37:\n e.preventDefault();\n if (this.$refs.input.selectionStart === this.$refs.input.selectionEnd) {\n // this.$refs.input.selectionEnd = this.$refs.input.selectionStart - 1; @TODO\n this.$refs.input.selectionStart -= 1;\n }\n this.maskCore.selection = {\n start: this.$refs.input.selectionStart,\n end: this.$refs.input.selectionStart\n };\n this.updateToCoreState();\n break;\n\n // right arrow\n case 39:\n e.preventDefault();\n if (this.$refs.input.selectionStart === this.$refs.input.selectionEnd) {\n this.$refs.input.selectionEnd += 1;\n }\n this.maskCore.selection = {\n start: this.$refs.input.selectionEnd,\n end: this.$refs.input.selectionEnd\n };\n this.updateToCoreState();\n break;\n\n // end\n case 35:\n e.preventDefault();\n this.$refs.input.selectionStart = this.$refs.input.value.length;\n this.$refs.input.selectionEnd = this.$refs.input.value.length;\n this.maskCore.selection = {\n start: this.$refs.input.selectionEnd,\n end: this.$refs.input.selectionEnd\n };\n this.updateToCoreState();\n break;\n\n // home\n case 36:\n e.preventDefault();\n this.$refs.input.selectionStart = 0;\n this.$refs.input.selectionEnd = 0;\n this.maskCore.selection = {\n start: this.$refs.input.selectionStart,\n end: this.$refs.input.selectionStart\n };\n this.updateToCoreState();\n break;\n\n // delete\n case 46:\n e.preventDefault();\n if (this.$refs.input.selectionStart === this.$refs.input.selectionEnd) {\n this.maskCore.setValue('');\n this.maskCore.setSelection({\n start: 0,\n end: 0\n });\n this.$refs.input.selectionStart = this.maskCore.selection.start;\n this.$refs.input.selectionEnd = this.maskCore.selection.start;\n } else {\n this.maskCore.backspace();\n }\n this.updateToCoreState();\n break;\n\n default:\n break;\n }\n },\n keyPress: function keyPress(e) {\n // works only on Desktop\n if (e.ctrlKey) return; // Fix FF copy/paste issue\n // IE & FF are not trigger textInput event, so we have to force it\n /* eslint-disable */\n var isIE = /*@cc_on!@*/false || !!document.documentMode; //by http://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser\n /* eslint-enable */\n var isFirefox = typeof InstallTrigger !== 'undefined';\n if (isIE || isFirefox) {\n e.preventDefault();\n e.data = e.key;\n this.textInput(e);\n }\n },\n textInput: function textInput(e) {\n if (e.preventDefault) e.preventDefault();\n if (this.maskCore.input(e.data)) {\n this.updateAfterAll = true;\n }\n this.updateToCoreState();\n },\n keyUp: function keyUp(e) {\n if (e.keyCode === 9) {\n // Preven change selection for Tab in\n return;\n }\n this.updateToCoreState();\n this.updateAfterAll = false;\n },\n cut: function cut(e) {\n e.preventDefault();\n if (this.$refs.input.selectionStart !== this.$refs.input.selectionEnd) {\n try {\n document.execCommand('copy');\n } catch (err) {} // eslint-disable-line no-empty\n this.maskCore.backspace();\n this.updateToCoreState();\n }\n },\n copy: function copy() {},\n paste: function paste(e) {\n var _this2 = this;\n\n e.preventDefault();\n var text = e.clipboardData.getData('text');\n [].concat(_toConsumableArray(text)).reduce(function (memo, item) {\n return _this2.maskCore.input(item);\n }, null);\n this.updateToCoreState();\n },\n updateToCoreState: function updateToCoreState() {\n if (this.maskCore === null) {\n return;\n }\n if (this.$refs.input.value !== this.maskCore.getValue()) {\n this.$refs.input.value = this.maskCore.getValue();\n this.$emit('input', this.$refs.input.value, this.maskCore.getRawValue());\n }\n this.$refs.input.selectionStart = this.maskCore.selection.start;\n this.$refs.input.selectionEnd = this.maskCore.selection.end;\n },\n isEmpty: function isEmpty() {\n if (this.maskCore === null) return true;\n return this.maskCore.getValue() === this.maskCore.emptyValue;\n },\n focusOut: function focusOut() {\n if (this.isEmpty()) {\n this.$refs.input.value = '';\n this.maskCore.setSelection({\n start: 0,\n end: 0\n });\n this.$emit('input', '', '');\n }\n },\n setNativeSelection: function setNativeSelection() {\n this.maskCore.selection = {\n start: this.$refs.input.selectionStart,\n end: this.$refs.input.selectionEnd\n };\n },\n mouseUp: function mouseUp() {\n if (this.isEmpty() && this.$refs.input.selectionStart === this.$refs.input.selectionEnd) {\n this.maskCore.setSelection({\n start: 0,\n end: 0\n });\n this.$refs.input.selectionStart = this.maskCore.selection.start;\n this.$refs.input.selectionEnd = this.maskCore.selection.start;\n this.marginLeft = this.maskCore.selection.start;\n this.updateToCoreState();\n } else {\n this.setNativeSelection();\n }\n }\n }\n};\n"],"sourceRoot":""}