{"version":3,"sources":["webpack:///./node_modules/node-libs-browser/node_modules/buffer/index.js","webpack:///./node_modules/base64-js/index.js","webpack:///./src/@core/components/confirm-dialog/ConfirmDialog.vue?d7dc","webpack:///src/@core/components/confirm-dialog/ConfirmDialog.vue","webpack:///./src/@core/components/confirm-dialog/ConfirmDialog.vue?1c3f","webpack:///./src/@core/components/confirm-dialog/ConfirmDialog.vue","webpack:///./src/views/modules/ListVoucher/ListVoucher.vue?e7ec","webpack:///./src/views/modules/ListVoucher/ListVoucher.js?b0fc","webpack:///./src/views/modules/ListVoucher/ListVoucher.vue","webpack:///./src/views/modules/ListVoucher/ListVoucher.js","webpack:///./node_modules/ieee754/index.js","webpack:///./src/views/modules/ListVoucher/VocherDetail/VocherDetail.vue?62d5","webpack:///./src/views/modules/ListVoucher/ListVoucher.vue?4fb4","webpack:///./src/views/modules/ListVoucher/VocherDetail/VocherDetail.vue?7ed4","webpack:///./src/views/modules/ListVoucher/VocherDetail/VocherDetail.js","webpack:///./src/views/modules/ListVoucher/VocherDetail/VocherDetail.js?0b51","webpack:///./src/views/modules/ListVoucher/VocherDetail/VocherDetail.vue","webpack:///./node_modules/node-libs-browser/node_modules/isarray/index.js","webpack:///./src/views/modules/ultils/Pagination/Pagination.vue?fcb5","webpack:///./src/views/modules/ultils/Pagination/Pagination.vue?cbcf","webpack:///./src/views/modules/ultils/Pagination/Pagination.js","webpack:///./src/views/modules/ultils/Pagination/Pagination.js?f0fe","webpack:///./src/views/modules/ultils/Pagination/Pagination.vue"],"names":["base64","ieee754","isArray","typedArraySupport","arr","Uint8Array","__proto__","prototype","foo","subarray","byteLength","e","kMaxLength","Buffer","TYPED_ARRAY_SUPPORT","createBuffer","that","length","RangeError","arg","encodingOrOffset","this","Error","allocUnsafe","from","value","TypeError","ArrayBuffer","fromArrayBuffer","fromString","fromObject","assertSize","size","alloc","fill","encoding","undefined","checked","i","string","isEncoding","actual","write","slice","fromArrayLike","array","byteOffset","obj","isBuffer","len","copy","buffer","isnan","type","data","toString","SlowBuffer","isView","loweredCase","utf8ToBytes","base64ToBytes","toLowerCase","slowToString","start","end","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","b","n","m","bidirectionalIndexOf","val","dir","isNaN","arrayIndexOf","indexOf","call","lastIndexOf","indexSize","arrLength","valLength","String","read","buf","readUInt16BE","foundIndex","found","j","hexWrite","offset","Number","remaining","strLen","parsed","parseInt","substr","utf8Write","blitBuffer","asciiWrite","asciiToBytes","latin1Write","base64Write","ucs2Write","utf16leToBytes","fromByteArray","Math","min","res","secondByte","thirdByte","fourthByte","tempCodePoint","firstByte","codePoint","bytesPerSequence","push","decodeCodePointsArray","exports","INSPECT_MAX_BYTES","global","poolSize","_augment","Symbol","species","Object","defineProperty","configurable","allocUnsafeSlow","_isBuffer","compare","a","x","y","concat","list","pos","swap16","swap32","swap64","arguments","apply","equals","inspect","str","max","match","join","target","thisStart","thisEnd","thisCopy","targetCopy","includes","isFinite","toJSON","Array","_arr","MAX_ARGUMENTS_LENGTH","codePoints","fromCharCode","ret","out","toHex","bytes","checkOffset","ext","checkInt","objectWriteUInt16","littleEndian","objectWriteUInt32","checkIEEE754","writeFloat","noAssert","writeDouble","newBuf","sliceLen","readUIntLE","mul","readUIntBE","readUInt8","readUInt16LE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","maxBytes","writeUIntBE","writeUInt8","floor","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","set","code","charCodeAt","INVALID_BASE64_RE","base64clean","stringtrim","replace","trim","units","Infinity","leadSurrogate","byteArray","c","hi","lo","toByteArray","src","dst","lookup","revLookup","Arr","getLens","b64","validLen","placeHoldersLen","lens","_byteLength","tmp","curByte","tripletToBase64","num","encodeChunk","uint8","output","extraBytes","parts","maxChunkLength","len2","render","_vm","_h","$createElement","_c","_self","attrs","$t","item","dataConfirm","title","on","confirmDialog","model","dialog","callback","$$v","expression","staticClass","staticStyle","_v","_s","content","staticRenderFns","methods","open","close","$emit","component","VoucherDefinitionIdProps","_e","search","VoucherCode","$set","listVoucherStatus","VoucherStatus","listCompany","searchClinentId","listDateType","dateType","format","daysOfWeek","monthNames","firstDay","openDateDisplay","expirationDateDisplay","getListVoucher","optionPerPage","perPage","totalRecordListVoucer","totalEffectiveListVoucer","totalPauseListVoucer","totalUsedListVoucer","scopedSlots","_u","key","fn","proxy","exportExcelListVoucher","exportPDFVoucher","isLoading","ref","listVoucher","viewDetailListVoucher","_ref","ClientName","directives","name","rawName","modifiers","_ref2","_ref3","VoucherName","_ref4","_ref5","WeeklyCode","class","_ref6","MediaTypeId","listUsesVoucher","label","_ref7","_ref8","VoucherStatusEx","_ref9","OpenDate","convertUTC","_ref10","ExpirationDate","_ref11","$event","handleClickDetailVoucher","Id","$refs","confirmValid","confirmInValid","confirmDelete","_l","configTable","index","caption","field","cellTemplate","alignment","width","currentPageDisplay","DeleteVoucher","validDetailVoucher","invalidDetailVoucher","voucherDetailId","isShowModalDetails","handleEvent","confirmInvalid","components","DxDataGrid","DxColumn","DxPaging","DxEditing","DxPager","DxFilterRow","DxScrolling","VocherDetail","Pagination","ConfirmDialog","props","default","isOpen","Boolean","VoucherDefinitionId","ClientId","DateType","listWeeklyCode","text","isShow","currentPage","getUTC","dataGridRef","body","Idmax","NumberOfRow","VoucherService","getListVoucher_VC_RV01","then","Status","Data","Total","Voucher","TotalNumber","Valid","Pause","Used","forEach","VoucherDefinition","map","arrayWeeklyCode","itemWeeklyCode","findTranslate","filter","showResToast","getCompany","commonServices","Client","viewDetailVoucher","deteleDetailVoucher_VC_DV01","validDetailVoucher_VC_UV03","invalidDetailVoucher_VC_UV02","result","$bvModal","hide","refillSearchDate","column","getExcelListVoucher_VCRV01E","decodedData","FileContents","newBlob","Blob","document","createElement","href","URL","createObjectURL","setAttribute","click","exportPDF","dataGrid","id","computed","instance","watch","dayjs","add","utc","endOf","created","$router","currentRoute","setTimeout","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","d","s","NaN","rt","abs","log","LN2","voucherDetail","updateVoucherDetail","confirmValidModal","confirmInValidModal","confirmDeleteModal","hideModal","DefinitionCode","DefinitionName","Note","DiscountType","Amount","isShowTableService","valueUsesVoucher","VoucherDefinitionServiceGroup","fieldsTableService","formatPrice","sortable","getDetailVoucher","VoucherId","getDetailVoucher_VC_RV02","find","SpecialDayId","updateDetailVocher_VC_UV01","module","hasStatistical","round","rows","lastPageNumber"],"mappings":"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","file":"js/chunk-71cf1ee4.8b60b413.js","sourcesContent":["/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\n/*\n * Export kMaxLength after typed array support is determined.\n */\nexports.kMaxLength = kMaxLength()\n\nfunction typedArraySupport () {\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n return arr.foo() === 42 && // typed array instances can be augmented\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\nfunction createBuffer (that, length) {\n if (kMaxLength() < length) {\n throw new RangeError('Invalid typed array length')\n }\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = new Uint8Array(length)\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n if (that === null) {\n that = new Buffer(length)\n }\n that.length = length\n }\n\n return that\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n return new Buffer(arg, encodingOrOffset, length)\n }\n\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new Error(\n 'If encoding is specified then the first argument must be a string'\n )\n }\n return allocUnsafe(this, arg)\n }\n return from(this, arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\n// TODO: Legacy, not needed anymore. Remove in next major version.\nBuffer._augment = function (arr) {\n arr.__proto__ = Buffer.prototype\n return arr\n}\n\nfunction from (that, value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('\"value\" argument must not be a number')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n return fromArrayBuffer(that, value, encodingOrOffset, length)\n }\n\n if (typeof value === 'string') {\n return fromString(that, value, encodingOrOffset)\n }\n\n return fromObject(that, value)\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(null, value, encodingOrOffset, length)\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n if (typeof Symbol !== 'undefined' && Symbol.species &&\n Buffer[Symbol.species] === Buffer) {\n // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true\n })\n }\n}\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be a number')\n } else if (size < 0) {\n throw new RangeError('\"size\" argument must not be negative')\n }\n}\n\nfunction alloc (that, size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(that, size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(that, size).fill(fill, encoding)\n : createBuffer(that, size).fill(fill)\n }\n return createBuffer(that, size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(null, size, fill, encoding)\n}\n\nfunction allocUnsafe (that, size) {\n assertSize(size)\n that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < size; ++i) {\n that[i] = 0\n }\n }\n return that\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(null, size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(null, size)\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('\"encoding\" must be a valid string encoding')\n }\n\n var length = byteLength(string, encoding) | 0\n that = createBuffer(that, length)\n\n var actual = that.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n that = that.slice(0, actual)\n }\n\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n that = createBuffer(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array, byteOffset, length) {\n array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\\'offset\\' is out of bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\\'length\\' is out of bounds')\n }\n\n if (byteOffset === undefined && length === undefined) {\n array = new Uint8Array(array)\n } else if (length === undefined) {\n array = new Uint8Array(array, byteOffset)\n } else {\n array = new Uint8Array(array, byteOffset, length)\n }\n\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = array\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromArrayLike(that, array)\n }\n return that\n}\n\nfunction fromObject (that, obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n that = createBuffer(that, len)\n\n if (that.length === 0) {\n return that\n }\n\n obj.copy(that, 0, 0, len)\n return that\n }\n\n if (obj) {\n if ((typeof ArrayBuffer !== 'undefined' &&\n obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n if (typeof obj.length !== 'number' || isnan(obj.length)) {\n return createBuffer(that, 0)\n }\n return fromArrayLike(that, obj)\n }\n\n if (obj.type === 'Buffer' && isArray(obj.data)) {\n return fromArrayLike(that, obj.data)\n }\n }\n\n throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength()` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n string = '' + string\n }\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n case undefined:\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n// Buffer instances.\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (!Buffer.isBuffer(target)) {\n throw new TypeError('Argument must be a Buffer')\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (isNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (Buffer.TYPED_ARRAY_SUPPORT &&\n typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = this.subarray(start, end)\n newBuf.__proto__ = Buffer.prototype\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; ++i) {\n newBuf[i] = this[i + start]\n }\n }\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; ++i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, start + len),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if (code < 256) {\n val = code\n }\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : utf8ToBytes(new Buffer(val, encoding).toString())\n var len = bytes.length\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction isnan (val) {\n return val !== val // eslint-disable-line no-self-compare\n}\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('b-modal', {\n attrs: {\n \"id\": \"modal-primary\",\n \"ok-variant\": \"primary\",\n \"cancel-variant\": \"outline-secondary\",\n \"cancel-title\": _vm.$t('golf_common_back'),\n \"ok-title\": _vm.$t('golf_common_confirm'),\n \"modal-class\": \"modal-primary\",\n \"centered\": \"\",\n \"size\": \"xs\",\n \"title\": _vm.item.dataConfirm.title\n },\n on: {\n \"ok\": _vm.confirmDialog\n },\n model: {\n value: _vm.dialog,\n callback: function ($$v) {\n _vm.dialog = $$v;\n },\n expression: \"dialog\"\n }\n }, [_c('b-card-text', [_c('div', {\n staticClass: \"w-100 text-center\",\n staticStyle: {\n \"padding\": \"20px 16px\"\n }\n }, [_vm._v(\" \" + _vm._s(_vm.item.dataConfirm.content))])])], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmDialog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ConfirmDialog.vue?vue&type=template&id=14d0c0a6&\"\nimport script from \"./ConfirmDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./ConfirmDialog.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","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"voucherList\"\n }, [!_vm.VoucherDefinitionIdProps ? _c('b-card', {\n attrs: {\n \"title\": _vm.$t('ar_voucher_list_title')\n }\n }, [_c('b-row', {\n staticClass: \"mt-1\"\n }, [_c('b-col', {\n attrs: {\n \"cols\": \"11\",\n \"sm\": \"11\"\n }\n }, [_c('b-row', [_c('b-col', {\n attrs: {\n \"cols\": \"6\",\n \"sm\": \"6\"\n }\n }, [_c('b-row', [_c('b-col', {\n attrs: {\n \"cols\": \"4\",\n \"sm\": \"4\"\n }\n }, [_c('b-form-input', {\n attrs: {\n \"placeholder\": _vm.$t('ar_voucher_list_search_vouchercode')\n },\n model: {\n value: _vm.search.VoucherCode,\n callback: function ($$v) {\n _vm.$set(_vm.search, \"VoucherCode\", $$v);\n },\n expression: \"search.VoucherCode\"\n }\n })], 1), _c('b-col', {\n attrs: {\n \"cols\": \"4\",\n \"sm\": \"4\"\n }\n }, [_c('v-select', {\n attrs: {\n \"placeholder\": _vm.$t('ar_voucher_list_search_voucher_status'),\n \"options\": _vm.listVoucherStatus\n },\n model: {\n value: _vm.search.VoucherStatus,\n callback: function ($$v) {\n _vm.$set(_vm.search, \"VoucherStatus\", $$v);\n },\n expression: \"search.VoucherStatus\"\n }\n })], 1), _c('b-col', {\n attrs: {\n \"cols\": \"4\",\n \"sm\": \"4\"\n }\n }, [_c('v-select', {\n attrs: {\n \"options\": _vm.listCompany,\n \"placeholder\": _vm.$t('ar_voucher_find_name_company')\n },\n model: {\n value: _vm.searchClinentId,\n callback: function ($$v) {\n _vm.searchClinentId = $$v;\n },\n expression: \"searchClinentId\"\n }\n })], 1)], 1)], 1), _c('b-col', {\n attrs: {\n \"cols\": \"6\",\n \"sm\": \"6\"\n }\n }, [_c('b-row', [_c('b-col', {\n attrs: {\n \"cols\": \"4\",\n \"sm\": \"4\"\n }\n }, [_c('v-select', {\n attrs: {\n \"placeholder\": _vm.$t('ar_voucher_date_type'),\n \"options\": _vm.listDateType\n },\n model: {\n value: _vm.dateType,\n callback: function ($$v) {\n _vm.dateType = $$v;\n },\n expression: \"dateType\"\n }\n })], 1), _c('b-col', {\n staticClass: \"d-flex align-items-center\",\n attrs: {\n \"cols\": \"4\",\n \"sm\": \"4\"\n }\n }, [_c('span', {\n staticClass: \"w-25\"\n }, [_vm._v(_vm._s(_vm.$t(\"ar_voucher_from_date\")))]), _c('date-range-picker', {\n staticClass: \"w-75\",\n attrs: {\n \"single-date-picker\": true,\n \"opens\": \"right\",\n \"ranges\": false,\n \"time-picker\": false,\n \"time-picker-increment\": 1,\n \"show-dropdowns\": true,\n \"auto-apply\": true,\n \"locale-data\": {\n format: 'mm/dd/YYYY',\n daysOfWeek: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n monthNames: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n firstDay: 0\n }\n },\n model: {\n value: _vm.openDateDisplay,\n callback: function ($$v) {\n _vm.openDateDisplay = $$v;\n },\n expression: \"openDateDisplay\"\n }\n })], 1), _c('b-col', {\n staticClass: \"d-flex align-items-center\",\n attrs: {\n \"cols\": \"4\",\n \"sm\": \"4\"\n }\n }, [_c('span', {\n staticClass: \"w-25\"\n }, [_vm._v(_vm._s(_vm.$t(\"ar_voucher_to_date\")))]), _c('date-range-picker', {\n staticClass: \"w-75\",\n attrs: {\n \"single-date-picker\": true,\n \"opens\": \"right\",\n \"ranges\": false,\n \"time-picker\": false,\n \"time-picker-increment\": 1,\n \"show-dropdowns\": true,\n \"auto-apply\": true,\n \"locale-data\": {\n format: 'mm/dd/YYYY',\n daysOfWeek: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n monthNames: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n firstDay: 0\n }\n },\n model: {\n value: _vm.expirationDateDisplay,\n callback: function ($$v) {\n _vm.expirationDateDisplay = $$v;\n },\n expression: \"expirationDateDisplay\"\n }\n })], 1)], 1)], 1)], 1)], 1), _c('b-col', {\n attrs: {\n \"cols\": \"1\",\n \"sm\": \"1\"\n }\n }, [_c('b-button', {\n staticClass: \"w-100 h-100 p-0\",\n attrs: {\n \"variant\": \"primary\"\n },\n on: {\n \"click\": _vm.getListVoucher\n }\n }, [_c('ez-icon', {\n attrs: {\n \"icon\": \"ezAr-icon-search\"\n }\n }), _vm._v(\" \" + _vm._s(_vm.$t(\"ar_voucher_search\")) + \" \")], 1)], 1)], 1)], 1) : _vm._e(), _c('b-card', {\n staticClass: \"voucherList__table\"\n }, [_c('b-row', [_c('b-col', {\n staticStyle: {\n \"display\": \"flex\",\n \"justify-content\": \"space-between\"\n },\n attrs: {\n \"cols\": \"12\"\n }\n }, [_c('div', {\n staticClass: \"left-side d-flex\"\n }, [_c('div', {\n staticClass: \"d-select-perPage\"\n }, [_c('b-form-group', {\n staticStyle: {\n \"width\": \"230px\"\n },\n attrs: {\n \"label\": _vm.$t('ar_voucher_list_result_on_page'),\n \"label-for\": \"h-first-name\",\n \"label-cols-md\": \"7\"\n }\n }, [_c('v-select', {\n staticStyle: {\n \"min-width\": \"50px\"\n },\n attrs: {\n \"options\": _vm.optionPerPage,\n \"clearable\": false\n },\n model: {\n value: _vm.perPage,\n callback: function ($$v) {\n _vm.perPage = $$v;\n },\n expression: \"perPage\"\n }\n })], 1)], 1), _c('div', {\n staticClass: \"voucherList__list-states ml-1\"\n }, [_c('b-button', {\n attrs: {\n \"variant\": \"outline-primary\"\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_voucher_all\")) + \": \" + _vm._s(_vm.totalRecordListVoucer) + \" \")]), _c('b-button', {\n staticClass: \"ml-1\",\n attrs: {\n \"variant\": \"link\"\n }\n }, [_c('span', {\n staticClass: \"text-body\"\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_voucher_effective\")) + \": \")]), _c('span', {\n staticClass: \"text-success\"\n }, [_vm._v(_vm._s(_vm.totalEffectiveListVoucer))])]), _c('b-button', {\n staticClass: \"ml-1\",\n attrs: {\n \"variant\": \"link\"\n }\n }, [_c('span', {\n staticClass: \"text-body\"\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_voucher_list_voucher_pause\")) + \": \")]), _c('span', {\n staticClass: \"text-warning\"\n }, [_vm._v(_vm._s(_vm.totalPauseListVoucer) + \" \")])]), _c('b-button', {\n staticClass: \"ml-1\",\n attrs: {\n \"variant\": \"link\"\n }\n }, [_c('span', {\n staticClass: \"text-body\"\n }, [_vm._v(_vm._s(_vm.$t(\"ar_voucher_used\")) + \":\")]), _c('span', {\n staticClass: \"text-secondary\"\n }, [_vm._v(\" \" + _vm._s(_vm.totalUsedListVoucer) + \" \")])])], 1)]), _c('div', [_c('b-dropdown', {\n attrs: {\n \"variant\": \"outline-primary\"\n },\n scopedSlots: _vm._u([{\n key: \"button-content\",\n fn: function () {\n return [_c('span', {\n staticClass: \"align-middle\"\n }, [_vm._v(_vm._s(_vm.$t(\"ar_voucher_export_file\")))])];\n },\n proxy: true\n }])\n }, [_c('b-dropdown-item', {\n on: {\n \"click\": _vm.exportExcelListVoucher\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_Voucher_list_export_to_excel\")) + \" \")]), _c('b-dropdown-item', {\n on: {\n \"click\": _vm.exportPDFVoucher\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_Voucher_list_export_to_pdf\")) + \" \")])], 1)], 1)])], 1), _c('b-overlay', {\n attrs: {\n \"show\": _vm.isLoading,\n \"opacity\": 0.3,\n \"rounded\": \"sm\"\n }\n }, [_c('DxDataGrid', {\n ref: \"tableRate\",\n staticStyle: {\n \"height\": \"381px\"\n },\n attrs: {\n \"data-source\": _vm.listVoucher,\n \"column-resizing-mode\": \"widget\"\n },\n on: {\n \"cellClick\": _vm.viewDetailListVoucher\n },\n scopedSlots: _vm._u([{\n key: \"ClientName\",\n fn: function (_ref) {\n var data = _ref.data;\n return [data.data.ClientName && data.data.ClientName.length >= 27 ? _c('div', {\n directives: [{\n name: \"b-tooltip\",\n rawName: \"v-b-tooltip.hover\",\n modifiers: {\n \"hover\": true\n }\n }],\n staticClass: \"text-truncate\",\n attrs: {\n \"title\": data.data.ClientName\n }\n }, [_vm._v(\" \" + _vm._s(data.data.ClientName) + \" \")]) : _c('div', [_vm._v(\" \" + _vm._s(data.data.ClientName) + \" \")])];\n }\n }, {\n key: \"VoucherCode\",\n fn: function (_ref2) {\n var data = _ref2.data;\n return [data.data.VoucherCode.length >= 27 ? _c('div', {\n directives: [{\n name: \"b-tooltip\",\n rawName: \"v-b-tooltip.hover\",\n modifiers: {\n \"hover\": true\n }\n }],\n staticClass: \"text-truncate\",\n attrs: {\n \"title\": data.data.VoucherCode\n }\n }, [_vm._v(\" \" + _vm._s(data.data.VoucherCode) + \" \")]) : _c('div', [_vm._v(\" \" + _vm._s(data.data.VoucherCode) + \" \")])];\n }\n }, {\n key: \"VoucherName\",\n fn: function (_ref3) {\n var data = _ref3.data;\n return [data.data.VoucherName.length >= 27 ? _c('div', {\n directives: [{\n name: \"b-tooltip\",\n rawName: \"v-b-tooltip.hover\",\n modifiers: {\n \"hover\": true\n }\n }],\n staticClass: \"text-truncate\",\n attrs: {\n \"title\": data.data.VoucherName\n }\n }, [_vm._v(\" \" + _vm._s(data.data.VoucherName) + \" \")]) : _c('div', [_vm._v(\" \" + _vm._s(data.data.VoucherName) + \" \")])];\n }\n }, {\n key: \"VoucherDefinition\",\n fn: function (_ref4) {\n var data = _ref4.data;\n return [_vm._v(\" \" + _vm._s(data.data.ClientName) + \" \")];\n }\n }, {\n key: \"WeeklyCode\",\n fn: function (_ref5) {\n var data = _ref5.data;\n return [_c('div', {\n directives: [{\n name: \"b-tooltip\",\n rawName: \"v-b-tooltip.hover\",\n value: data.data.WeeklyCode.length >= 5,\n expression: \"data.data.WeeklyCode.length >= 5\",\n modifiers: {\n \"hover\": true\n }\n }],\n class: {\n 'text-truncate': data.data.WeeklyCode.length >= 5\n },\n attrs: {\n \"title\": data.data.WeeklyCode\n }\n }, [_vm._v(\" \" + _vm._s(data.data.WeeklyCode) + \" \")])];\n }\n }, {\n key: \"MediaTypeId\",\n fn: function (_ref6) {\n var data = _ref6.data;\n return [data.data.MediaTypeId ? _c('div', [_vm._v(\" \" + _vm._s(_vm.listUsesVoucher[data.data.MediaTypeId].label) + \" \")]) : _c('div', [_vm._v(\" \" + _vm._s(_vm.listUsesVoucher[data.data.MediaTypeId].label) + \" \")])];\n }\n }, {\n key: \"VoucherStatus\",\n fn: function (_ref7) {\n var data = _ref7.data;\n return [data.data.VoucherStatus ? _c('div', [data.data.VoucherStatus === 'VALID' ? _c('span', [_vm._v(_vm._s(_vm.$t(\"ar_voucher_list_voucher_status_valid\")))]) : _vm._e(), data.data.VoucherStatus === 'PAUSE' ? _c('span', [_vm._v(_vm._s(_vm.$t(\"ar_voucher_list_voucher_pause\")))]) : _vm._e(), data.data.VoucherStatus === 'USED' ? _c('span', [_vm._v(_vm._s(_vm.$t(\"ar_voucher_list_voucher_status_used\")))]) : _vm._e()]) : _vm._e()];\n }\n }, {\n key: \"VoucherStatusEx\",\n fn: function (_ref8) {\n var data = _ref8.data;\n return [data.data.VoucherStatusEx ? _c('div', [data.data.VoucherStatusEx === 'N0_EXPIRE' ? _c('span', [_vm._v(_vm._s(_vm.$t(\"ar_voucher_list_voucher_status_expire\")))]) : _vm._e(), data.data.VoucherStatusEx === 'EXPIRE' ? _c('span', [_vm._v(_vm._s(_vm.$t(\"ar_voucher_list_voucher_status_no_expire\")))]) : _vm._e()]) : _vm._e()];\n }\n }, {\n key: \"OpenDate\",\n fn: function (_ref9) {\n var data = _ref9.data;\n return [data.data.OpenDate ? _c('div', [_vm._v(\" \" + _vm._s(_vm.convertUTC(data.data.OpenDate, \"DD/MM/YYYY\")) + \" \")]) : _vm._e()];\n }\n }, {\n key: \"ExpirationDate\",\n fn: function (_ref10) {\n var data = _ref10.data;\n return [data.data.ExpirationDate ? _c('div', [_vm._v(\" \" + _vm._s(_vm.convertUTC(data.data.ExpirationDate, \"DD/MM/YYYY\")) + \" \")]) : _vm._e()];\n }\n }, {\n key: \"action\",\n fn: function (_ref11) {\n var data = _ref11.data;\n return [_c('b-dropdown', {\n staticClass: \"w-100\",\n attrs: {\n \"size\": \"lg\",\n \"variant\": \"link\",\n \"toggle-class\": \"text-decoration-none\",\n \"right\": \"\"\n },\n scopedSlots: _vm._u([{\n key: \"button-content\",\n fn: function () {\n return [_c('feather-icon', {\n staticClass: \"mx-auto\",\n attrs: {\n \"icon\": \"MoreVerticalIcon\",\n \"color\": \"#114A9F\"\n }\n })];\n },\n proxy: true\n }], null, true)\n }, [_c('b-dropdown-item', {\n on: {\n \"click\": function ($event) {\n return _vm.handleClickDetailVoucher(data.data.Id);\n }\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_voucher_list_voucher_show_detail\")) + \" \")]), data.data.VoucherStatus === 'PAUSE' ? _c('b-dropdown-item', {\n on: {\n \"click\": function ($event) {\n _vm.$refs.confirmValid.open({\n Id: data.data.Id,\n dataConfirm: {\n title: _vm.$t('ar_voucher_list_voucher_re_pause'),\n content: _vm.$t('ar_voucher_list_voucher_mess_pause')\n }\n });\n }\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_voucher_list_voucher_re_pause\")) + \" \")]) : _c('b-dropdown-item', {\n on: {\n \"click\": function ($event) {\n _vm.$refs.confirmInValid.open({\n Id: data.data.Id,\n dataConfirm: {\n title: _vm.$t('ar_vouhcer_disable'),\n content: _vm.$t('ar_vouhcer_disable_mess')\n }\n });\n }\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_voucher_list_voucher_pause\")) + \" \")]), _c('b-dropdown-divider'), _c('b-dropdown-item', {\n on: {\n \"click\": function ($event) {\n return _vm.$refs.confirmDelete.open({\n Id: data.data.Id,\n dataConfirm: {\n title: 'Xóa voucher',\n content: 'Bạn có chắc chắn xóa Voucher?'\n }\n });\n }\n }\n }, [_c('span', {\n staticClass: \"text-danger\"\n }, [_vm._v(_vm._s(_vm.$t(\"ar_voucher_list_voucher_delete\")))])])], 1)];\n }\n }])\n }, [_c('DxFilterRow', {\n attrs: {\n \"visible\": true\n }\n }), _vm._l(_vm.configTable, function (item, index) {\n return _c('DxColumn', {\n key: index,\n attrs: {\n \"caption\": item.caption,\n \"data-field\": item.field,\n \"cell-template\": item.cellTemplate ? item.cellTemplate : false,\n \"allow-column-resizing\": true,\n \"column-auto-width\": true,\n \"alignment\": item.alignment,\n \"width\": item.width,\n \"allowFiltering\": item.field != 'action' ? true : false\n }\n });\n }), _c('DxScrolling', {\n attrs: {\n \"mode\": \"virtual\",\n \"row-rendering-mode\": \"virtual\"\n }\n }), _c('DxPaging', {\n attrs: {\n \"page-size\": _vm.perPage\n }\n })], 2)], 1)], 1), _c('Pagination', {\n attrs: {\n \"currentPage\": _vm.currentPageDisplay,\n \"perPage\": _vm.perPage,\n \"rows\": _vm.totalRecordListVoucer,\n \"hasStatistical\": true\n },\n on: {\n \"update:currentPage\": function ($event) {\n _vm.currentPageDisplay = $event;\n },\n \"update:current-page\": function ($event) {\n _vm.currentPageDisplay = $event;\n }\n }\n }), _c('confirm-dialog', {\n ref: \"confirmDelete\",\n on: {\n \"confirmDialog\": _vm.DeleteVoucher\n }\n }), _c('confirm-dialog', {\n ref: \"confirmValid\",\n on: {\n \"confirmDialog\": _vm.validDetailVoucher\n }\n }), _c('confirm-dialog', {\n ref: \"confirmInValid\",\n on: {\n \"confirmDialog\": _vm.invalidDetailVoucher\n }\n }), _c('VocherDetail', {\n ref: \"VocherDetail\",\n attrs: {\n \"voucherDetailId\": _vm.voucherDetailId,\n \"isOpen\": _vm.isShowModalDetails\n },\n on: {\n \"update:voucherDetailId\": function ($event) {\n _vm.voucherDetailId = $event;\n },\n \"update:voucher-detail-id\": function ($event) {\n _vm.voucherDetailId = $event;\n },\n \"update:isOpen\": function ($event) {\n _vm.isShowModalDetails = $event;\n },\n \"update:is-open\": function ($event) {\n _vm.isShowModalDetails = $event;\n },\n \"event\": _vm.handleEvent,\n \"PAUSED\": _vm.confirmInvalid,\n \"VALID\": _vm.confirmValid\n }\n })], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!./ListVoucher.js?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!./ListVoucher.js?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ListVoucher.vue?vue&type=template&id=bcc809ae&scoped=true&\"\nimport script from \"./ListVoucher.js?vue&type=script&lang=js&\"\nexport * from \"./ListVoucher.js?vue&type=script&lang=js&\"\nimport style0 from \"./ListVoucher.vue?vue&type=style&index=0&id=bcc809ae&prod&lang=scss&scoped=true&\"\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 \"bcc809ae\",\n null\n \n)\n\nexport default component.exports","import ConfirmDialog from \"@core/components/confirm-dialog/ConfirmDialog.vue\";\nimport { VoucherService } from \"@/api/voucher-service.js\";\nimport { commonServices } from \"@/api/common-services\";\nimport {\n DxDataGrid,\n DxColumn,\n DxPaging,\n DxEditing,\n DxPager,\n DxFilterRow,\n DxScrolling\n} from \"devextreme-vue/data-grid\";\nimport \"devextreme/dist/css/dx.light.css\";\nimport VocherDetail from \"./VocherDetail/VocherDetail.vue\";\nimport Pagination from \"@/views/modules/ultils/Pagination/Pagination.vue\";\n\nexport default {\n components: {\n DxDataGrid,\n DxColumn,\n DxPaging,\n DxEditing,\n DxPager,\n DxFilterRow,\n DxScrolling,\n VocherDetail,\n Pagination,\n \"confirm-dialog\": ConfirmDialog,\n },\n props: {\n VoucherDefinitionIdProps: {\n type: Number,\n default: 0,\n },\n isOpen: {\n type: Boolean,\n default: false,\n },\n },\n data() {\n return {\n search: {\n VoucherCode: null,\n VoucherStatus: null,\n OpenDate: null,\n ExpirationDate: null,\n VoucherDefinitionId: null,\n ClientId: [],\n DateType: \"OpenDate\",\n },\n dateType: { label: this.$t(\"ar_voucher_opendate\"), code: \"OpenDate\" },\n listDateType: [\n { label: this.$t(\"ar_voucher_opendate\"), code: \"OpenDate\" },\n { label: this.$t(\"ar_voucher_expirationdate\"), code: \"ExpirationDate\" },\n ],\n listVoucherStatus: [\n { label: this.$t('ar_voucher_effective'), code: \"VALID\" },\n { label: this.$t('ar_voucher_used'), code: \"USED\" },\n { label: this.$t('ar_voucher_list_voucher_pause'), code: \"PAUSE\" },\n ],\n listWeeklyCode: [\n {\n text: this.$t(\"ar_voucher_monday\"),\n value: \"MON\",\n },\n {\n text: this.$t(\"ar_voucher_tuesday\"),\n value: \"TUE\",\n },\n {\n text: this.$t(\"ar_voucher_wednesday\"),\n value: \"WED\",\n },\n {\n text: this.$t(\"ar_voucher_thursday\"),\n value: \"THU\",\n },\n {\n text: this.$t(\"ar_voucher_friday\"),\n value: \"FRI\",\n },\n {\n text: this.$t(\"ar_voucher_saturday\"),\n value: \"SAT\",\n },\n {\n text: this.$t(\"ar_voucher_sunday\"),\n value: \"SUN\",\n },\n ],\n configTable: [\n {\n caption: this.$t(\"ar_voucher_clinent_name\"),\n field: \"ClientName\",\n isShow: true,\n cellTemplate: \"ClientName\",\n alignment: \"center\",\n width: \"15%\",\n },\n {\n caption: this.$t(\"ar_voucher_code_voucher\"),\n field: \"VoucherCode\",\n isShow: true,\n cellTemplate: \"VoucherCode\",\n alignment: \"center\",\n width: \"15%\",\n },\n {\n caption: this.$t(\"ar_voucher_name_voucher\"),\n field: \"VoucherName\",\n isShow: true,\n cellTemplate: \"VoucherName\",\n alignment: \"center\",\n width: \"15%\",\n },\n {\n caption: this.$t(\"ar_voucher_release_date\"),\n field: \"OpenDate\",\n isShow: true,\n cellTemplate: \"OpenDate\",\n alignment: \"center\",\n width: \"15%\",\n },\n {\n caption: this.$t(\"ar_voucher_expiration_date\"),\n field: \"ExpirationDate\",\n isShow: true,\n cellTemplate: \"ExpirationDate\",\n alignment: \"center\",\n width: \"15%\",\n },\n {\n caption: this.$t(\"ar_voucher_date_application\"),\n field: \"WeeklyCode\",\n isShow: true,\n cellTemplate: \"WeeklyCode\",\n alignment: \"center\",\n width: \"15%\",\n },\n {\n caption: this.$t(\"ar_voucher_status\"),\n field: \"VoucherStatus\",\n cellTemplate: \"VoucherStatus\",\n isShow: true,\n alignment: \"center\",\n width: \"10%\",\n },\n {\n caption: this.$t(\"ar_voucher_uses\"),\n field: \"MediaTypeId\",\n cellTemplate: \"MediaTypeId\",\n isShow: true,\n alignment: \"center\",\n width: \"10%\",\n },\n {\n caption: this.$t(\"ar_voucher_deadline_status\"),\n field: \"VoucherStatusEx\",\n cellTemplate: \"VoucherStatusEx\",\n isShow: true,\n alignment: \"center\",\n width: \"15%\",\n },\n {\n caption: \"\",\n field: \"action\",\n cellTemplate: \"action\",\n width: \"10%\",\n alignment: \"left\",\n },\n ],\n isLoading: true,\n currentPage: 0,\n perPage: 10,\n optionPerPage: [10, 20, 50],\n listVoucher: [],\n voucherDetailId: null,\n isShowModalDetails: false,\n openDateDisplay: this.getUTC(\"start\", \"month\"),\n expirationDateDisplay: this.getUTC(\"end\", \"month\"),\n listUsesVoucher: [\n { label: this.$t(\"ar_voucher_paper_voucher\"), code: 0 },\n { label: this.$t(\"ar_voucher_electron_voucher\"), code: 1 },\n ],\n listCompany: [],\n searchClinentId: null,\n dataGridRef: \"tableRate\",\n totalRecordListVoucer: 0,\n totalEffectiveListVoucer: 0,\n totalPauseListVoucer : 0,\n totalUsedListVoucer : 0,\n currentPageDisplay: 1,\n };\n },\n methods: {\n async getListVoucher() {\n this.isLoading = true;\n const body = {\n VoucherCode: this.search.VoucherCode,\n OpenDate: this.search.VoucherCode === null | this.search.VoucherCode === '' ? this.search.OpenDate : null,\n ExpirationDate: this.search.VoucherCode === null | this.search.VoucherCode === '' ? this.search.ExpirationDate : null,\n VoucherDefinitionId: this.search.VoucherDefinitionId,\n ClientId: this.search.ClientId,\n DateType: this.search.DateType,\n Idmax: this.currentPage,\n NumberOfRow: this.perPage,\n };\n if (this.search.VoucherStatus) {\n body.VoucherStatus = this.search.VoucherStatus.code;\n } else {\n body.VoucherStatus = null;\n }\n await VoucherService.getListVoucher_VC_RV01(body).then((res) => {\n this.isLoading = false;\n if (res.Status !== \"200\") {\n this.showResToast(res);\n return;\n }\n this.listVoucher = [];\n this.listVoucher = [...res.Data.Total.Voucher];\n this.totalRecordListVoucer = res.Data.Total.TotalNumber;\n this.totalEffectiveListVoucer = res.Data.Total.Valid;\n this.totalPauseListVoucer = res.Data.Total.Pause;\n this.totalUsedListVoucer = res.Data.Total.Used;\n this.listVoucher.forEach((item, index) => this.$set( this.listVoucher[index], 'ClientName', item.VoucherDefinition.ClientName));\n this.listVoucher.map((item) => item.ClientName = item.ClientName === null ? this.$t(\"ar_voucher_not_company\") : item.ClientName);\n this.listVoucher.forEach((item) => {\n const arrayWeeklyCode = [];\n item.WeeklyCode.forEach((itemWeeklyCode) => {\n const findTranslate = this.listWeeklyCode.filter(\n (item) => item.value === itemWeeklyCode\n );\n arrayWeeklyCode.push(findTranslate[0].text);\n });\n item.WeeklyCode = arrayWeeklyCode.toString();\n })\n });\n },\n getCompany() {\n commonServices.getCompany().then((res) => {\n if (res.Status !== \"200\") {\n this.showResToast(res);\n return;\n }\n res.Data.Client.forEach((item) => {\n this.listCompany.push({ label: item.ClientName, code: item.Id });\n });\n });\n },\n handleClickDetailVoucher(Id) {\n this.voucherDetailId = Id;\n this.isShowModalDetails = !this.isShowModalDetails;\n },\n viewDetailVoucher(data) {\n this.handleClickDetailVoucher(data.data.Id);\n },\n async DeleteVoucher(data) {\n const body = {\n Voucher: {\n Id: data.Id,\n },\n };\n await VoucherService.deteleDetailVoucher_VC_DV01(body).then((res) => {\n this.showResToast(res);\n if (res.Status === \"200\") {\n this.getListVoucher();\n }\n });\n },\n async validDetailVoucher(data) {\n const body = {\n Voucher: {\n Id: data.Id,\n },\n };\n\n await VoucherService.validDetailVoucher_VC_UV03(body).then((res) => {\n this.showResToast(res);\n if (res.Status === \"200\") {\n this.getListVoucher();\n }\n });\n },\n async invalidDetailVoucher(data) {\n const body = {\n Voucher: {\n Id: data.Id,\n },\n };\n await VoucherService.invalidDetailVoucher_VC_UV02(body).then((res) => {\n this.showResToast(res);\n if (res.Status === \"200\") {\n this.getListVoucher();\n }\n });\n },\n handleEvent(result) {\n if (result.type === \"after-update_voucher\") {\n this.getListVoucher();\n }\n if (result.type === \"after-delete_voucher\") {\n this.$bvModal.hide(\"modal-voucher-detail\");\n this.getListVoucher();\n }\n },\n refillSearchDate() {\n this.search.OpenDate = this.getUTC(\"start\", \"month\");\n this.search.ExpirationDate = this.getUTC(\"end\", \"month\");\n },\n viewDetailListVoucher(value) {\n if (value.column.cellTemplate === \"action\") {\n return;\n }\n this.handleClickDetailVoucher(value.data.Id);\n },\n async exportExcelListVoucher() {\n const body = {\n VoucherCode: this.search.VoucherCode,\n OpenDate: this.search.VoucherCode === null | this.search.VoucherCode === '' ? this.search.OpenDate : null,\n ExpirationDate: this.search.VoucherCode === null | this.search.VoucherCode === '' ? this.search.ExpirationDate : null,\n VoucherDefinitionId: this.search.VoucherDefinitionId,\n ClientId: this.search.ClientId,\n DateType: this.search.DateType,\n Idmax: null,\n NumberOfRow: null,\n };\n await VoucherService.getExcelListVoucher_VCRV01E(body).then(res => {\n const decodedData = Buffer.from(res.Data.FileContents, 'base64')\n const newBlob = new Blob([decodedData], {\n type: 'application/xlsx',\n })\n var a = document.createElement(\"a\");\n a.href = URL.createObjectURL(newBlob);\n a.setAttribute(\"download\", `ListVoucher.xlsx`);\n a.click();\n })\n\n },\n exportPDFVoucher() {\n this.exportPDF(this.dataGrid);\n },\n confirmInvalid(id) {\n this.invalidDetailVoucher({ Id: id });\n },\n confirmValid(id) {\n this.validDetailVoucher({ Id: id });\n },\n },\n computed: {\n dataGrid() {\n return this.$refs[this.dataGridRef].instance;\n },\n },\n watch: {\n VoucherDefinitionIdProps(value) {\n this.search.VoucherDefinitionId = value;\n },\n isOpen(value) {\n if (value) {\n this.getListVoucher();\n }\n this.$emit(\"update:isOpen\", value);\n },\n openDateDisplay(value) {\n this.search.OpenDate = this.dayjs(value).add(1, 'day').utc().format();\n },\n expirationDateDisplay(value) {\n this.search.ExpirationDate = this.dayjs(value).add(1, 'day').endOf('day').utc().format();\n },\n searchClinentId(value) {\n this.search.ClientId = [];\n if (value) {\n this.search.ClientId.push(value.code);\n }\n },\n dateType(value) {\n this.search.DateType = value.code;\n },\n perPage() {\n this.getListVoucher();\n },\n currentPageDisplay(value) {\n this.currentPage =\n value === 1\n ? 0\n : (value * 10) + this.listVoucher[this.listVoucher.length - 1].Id - 10;\n this.getListVoucher();\n },\n },\n created() {\n if (this.$router.currentRoute.name === \"ListVoucher\") {\n this.refillSearchDate();\n setTimeout(() => this.getListVoucher(), 500);\n }\n this.getCompany();\n },\n};\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VocherDetail.vue?vue&type=style&index=0&id=cc8af71e&prod&lang=scss&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListVoucher.vue?vue&type=style&index=0&id=bcc809ae&prod&lang=scss&scoped=true&\"","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _vm.voucherDetail ? _c('div', [_c('b-modal', {\n attrs: {\n \"id\": \"modal-voucher-detail\",\n \"size\": \"lg\",\n \"centered\": \"\",\n \"hide-header\": \"\",\n \"cancel-variant\": \"none\",\n \"ok-title\": _vm.$t('ar_voucher_save'),\n \"cancel-title\": _vm.$t('ar_voucher_come_back'),\n \"ok-variant\": \"primary\"\n },\n on: {\n \"ok\": _vm.updateVoucherDetail\n },\n model: {\n value: _vm.isOpen,\n callback: function ($$v) {\n _vm.isOpen = $$v;\n },\n expression: \"isOpen\"\n }\n }, [_c('b-card-header', {\n staticClass: \"banned-background-color-primary\"\n }, [_c('div', {\n staticClass: \"d-flex justify-content-between align-items-center block-header\"\n }, [_c('h3', {\n staticClass: \"mb-0 title-modal text-primary\"\n }, [_vm._v(\" \" + _vm._s(_vm.$t('ar_voucher_details_voucher')) + \" \")]), _c('div', [_vm.voucherDetail.VoucherStatus.code !== 'PAUSE' ? _c('ez-icon', {\n staticClass: \"cursor-pointer\",\n attrs: {\n \"icon\": \"ezAr-icon-pause-circle\",\n \"size\": \"24\",\n \"color\": \"#114A9F\"\n },\n on: {\n \"click\": function ($event) {\n _vm.$refs.confirmValidModal.open({\n dataConfirm: {\n title: _vm.$t('ar_vouhcer_disable'),\n content: _vm.$t('ar_vouhcer_disable_mess')\n }\n });\n }\n }\n }) : _c('ez-icon', {\n staticClass: \"cursor-pointer\",\n attrs: {\n \"icon\": \"ezAr-icon-play-circle\",\n \"size\": \"24\",\n \"color\": \"#114A9F\"\n },\n on: {\n \"click\": function ($event) {\n _vm.$refs.confirmInValidModal.open({\n dataConfirm: {\n title: _vm.$t('ar_voucher_list_voucher_re_pause'),\n content: _vm.$t('ar_voucher_list_voucher_mess_pause')\n }\n });\n }\n }\n }), _c('ez-icon', {\n staticClass: \"cursor-pointer mx-50\",\n attrs: {\n \"icon\": \"ezAr-icon-trash\",\n \"size\": \"24\",\n \"color\": \"#EA5455\"\n },\n on: {\n \"click\": function ($event) {\n _vm.$refs.confirmDeleteModal.open({\n dataConfirm: {\n title: _vm.$t('ar_voucher_del_voucher'),\n content: _vm.$t('ar_voucher_del_voucher_mess')\n }\n });\n }\n }\n }), _c('ez-icon', {\n staticClass: \"cursor-pointer\",\n attrs: {\n \"icon\": \"ezAr-icon-x\",\n \"size\": \"24\",\n \"color\": \"#114A9F\"\n },\n on: {\n \"click\": _vm.hideModal\n }\n })], 1)])]), _c('b-card-body', [_c('div', {\n staticClass: \"body-semi-bold color-heading mb-1\"\n }, [_c('ez-icon', {\n staticClass: \"ic-bg-32\",\n attrs: {\n \"icon\": \"ezAr-icon-info\",\n \"size\": \"16\",\n \"color\": \"#5D5F65\"\n }\n }), _vm._v(\" \" + _vm._s(_vm.$t('ar_voucher_details_voucher')) + \" \")], 1), _c('div', {\n staticClass: \"row\"\n }, [_c('div', {\n staticClass: \"col-6\"\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_code_voucher')\n }\n }, [_c('b-form-input', {\n attrs: {\n \"disabled\": \"\"\n },\n model: {\n value: _vm.voucherDetail.VoucherCode,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail, \"VoucherCode\", $$v);\n },\n expression: \"voucherDetail.VoucherCode\"\n }\n })], 1), _c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_name_voucher')\n }\n }, [_c('b-form-input', {\n attrs: {\n \"disabled\": \"\"\n },\n model: {\n value: _vm.voucherDetail.VoucherName,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail, \"VoucherName\", $$v);\n },\n expression: \"voucherDetail.VoucherName\"\n }\n })], 1), _c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_code_define_voucher')\n }\n }, [_c('b-form-input', {\n attrs: {\n \"disabled\": \"\"\n },\n model: {\n value: _vm.voucherDetail.VoucherDefinition.DefinitionCode,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail.VoucherDefinition, \"DefinitionCode\", $$v);\n },\n expression: \"voucherDetail.VoucherDefinition.DefinitionCode\"\n }\n })], 1), _c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_definition_name')\n }\n }, [_c('b-form-input', {\n attrs: {\n \"disabled\": \"\"\n },\n model: {\n value: _vm.voucherDetail.VoucherDefinition.DefinitionName,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail.VoucherDefinition, \"DefinitionName\", $$v);\n },\n expression: \"voucherDetail.VoucherDefinition.DefinitionName\"\n }\n })], 1), _c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_status')\n }\n }, [_c('v-select', {\n attrs: {\n \"options\": _vm.listVoucherStatus\n },\n model: {\n value: _vm.voucherDetail.VoucherStatus,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail, \"VoucherStatus\", $$v);\n },\n expression: \"voucherDetail.VoucherStatus\"\n }\n })], 1)], 1), _c('div', {\n staticClass: \"col-6\"\n }, [_c('b-form-group', {\n attrs: {\n \"label-cols\": \"2\",\n \"label\": \"Mô tả\"\n }\n }, [_c('b-form-textarea', {\n attrs: {\n \"rows\": \"7\"\n },\n model: {\n value: _vm.voucherDetail.Note,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail, \"Note\", $$v);\n },\n expression: \"voucherDetail.Note\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"row\"\n }, [_c('div', {\n staticClass: \"col-6\"\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_discountype_voucher')\n }\n }, [_c('b-form-input', {\n attrs: {\n \"disabled\": \"\"\n },\n model: {\n value: _vm.voucherDetail.VoucherDefinition.DiscountType,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail.VoucherDefinition, \"DiscountType\", $$v);\n },\n expression: \"voucherDetail.VoucherDefinition.DiscountType\"\n }\n })], 1)], 1), _c('div', {\n staticClass: \"col-6\"\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_value')\n }\n }, [_vm.voucherDetail.VoucherDefinition.DiscountType === 'PERCENT' || _vm.voucherDetail.VoucherDefinition.DiscountType === 'FIX' ? _c('b-form-input', {\n attrs: {\n \"disabled\": \"\"\n },\n model: {\n value: _vm.voucherDetail.VoucherDefinition.Amount,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail.VoucherDefinition, \"Amount\", $$v);\n },\n expression: \"voucherDetail.VoucherDefinition.Amount\"\n }\n }) : _c('div', [_c('span', [_vm._v(\" \" + _vm._s(_vm.$t('ar_voucher_view_details_service')) + \" \")]), _c('ez-icon', {\n attrs: {\n \"icon\": \"ezAr-icon-external-link\",\n \"size\": \"14\"\n },\n on: {\n \"click\": function ($event) {\n _vm.isShowTableService = !_vm.isShowTableService;\n }\n }\n })], 1)], 1)], 1), _c('b-col', {\n attrs: {\n \"cols\": \"6\",\n \"sm\": \"6\"\n }\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_uses')\n }\n }, [_c('b-form-input', {\n attrs: {\n \"disabled\": \"\"\n },\n model: {\n value: _vm.valueUsesVoucher,\n callback: function ($$v) {\n _vm.valueUsesVoucher = $$v;\n },\n expression: \"valueUsesVoucher\"\n }\n })], 1)], 1)], 1), _vm.isShowTableService ? _c('div', [_c('b-table', {\n attrs: {\n \"striped\": \"\",\n \"hover\": \"\",\n \"items\": _vm.voucherDetail.VoucherDefinition.VoucherDefinitionServiceGroup,\n \"fields\": _vm.fieldsTableService\n },\n scopedSlots: _vm._u([{\n key: \"cell(Amount)\",\n fn: function (data) {\n return [_vm._v(\" \" + _vm._s(_vm.formatPrice(data.item.Amount)) + \" \")];\n }\n }], null, false, 1870912097)\n })], 1) : _vm._e(), _c('div', {\n staticClass: \"body-semi-bold color-heading my-1\"\n }, [_c('ez-icon', {\n staticClass: \"ic-bg-32\",\n attrs: {\n \"icon\": \"ezAr-icon-clock\",\n \"size\": \"16\",\n \"color\": \"#4B4B4B\"\n }\n }), _vm._v(\" \" + _vm._s(_vm.$t('ar_voucher_time_application')) + \" \")], 1), _c('b-row', [_c('div', {\n staticClass: \"col-6\"\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_release_date')\n }\n }, [_c('date-range-picker', {\n staticClass: \"mr-1\",\n attrs: {\n \"ranges\": false,\n \"opens\": \"topleft\",\n \"show-dropdowns\": true,\n \"time-picker\": true,\n \"time-picker24hour\": false,\n \"auto-apply\": true,\n \"single-date-picker\": true,\n \"locale-data\": {\n format: 'DD/MM/YYYY HH:mm',\n daysOfWeek: ['CN', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n monthNames: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n firstDay: 0\n }\n },\n model: {\n value: _vm.voucherDetail.OpenDate,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail, \"OpenDate\", $$v);\n },\n expression: \"voucherDetail.OpenDate\"\n }\n })], 1)], 1), _c('div', {\n staticClass: \"col-6\"\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"3\",\n \"label\": _vm.$t('ar_voucher_expiration_date')\n }\n }, [_c('date-range-picker', {\n staticClass: \"mr-1\",\n attrs: {\n \"ranges\": false,\n \"opens\": \"topleft\",\n \"show-dropdowns\": true,\n \"time-picker\": true,\n \"time-picker24hour\": false,\n \"auto-apply\": true,\n \"single-date-picker\": true,\n \"locale-data\": {\n format: 'DD/MM/YYYY HH:mm',\n daysOfWeek: ['CN', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n monthNames: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n firstDay: 0\n }\n },\n model: {\n value: _vm.voucherDetail.ExpirationDate,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail, \"ExpirationDate\", $$v);\n },\n expression: \"voucherDetail.ExpirationDate\"\n }\n })], 1)], 1)]), _c('b-row', [_c('div', {\n staticClass: \"col-8\"\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label-cols\": \"2\",\n \"label\": _vm.$t('ar_voucher_date_application')\n }\n }, [_c('b-form-checkbox-group', {\n staticClass: \"week-day-select\",\n attrs: {\n \"options\": _vm.listWeeklyCode,\n \"button-variant\": \"outline-primary\",\n \"buttons\": \"\"\n },\n model: {\n value: _vm.voucherDetail.WeeklyCode,\n callback: function ($$v) {\n _vm.$set(_vm.voucherDetail, \"WeeklyCode\", $$v);\n },\n expression: \"voucherDetail.WeeklyCode\"\n }\n })], 1)], 1)])], 1)], 1), _c('confirm-dialog', {\n ref: \"confirmDeleteModal\",\n on: {\n \"confirmDialog\": _vm.DeleteVoucher\n }\n }), _c('confirm-dialog', {\n ref: \"confirmValidModal\",\n on: {\n \"confirmDialog\": _vm.validDetailVoucher\n }\n }), _c('confirm-dialog', {\n ref: \"confirmInValidModal\",\n on: {\n \"confirmDialog\": _vm.invalidDetailVoucher\n }\n })], 1) : _vm._e();\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import ConfirmDialog from '@core/components/confirm-dialog/ConfirmDialog.vue'\nimport { VoucherService } from '@/api/voucher-service.js';\n\nexport default {\n props: {\n voucherDetailId: {\n type: Number,\n default: 0,\n },\n isOpen: {\n type: Boolean,\n default: false,\n }\n },\n components: {\n 'confirm-dialog': ConfirmDialog\n },\n data() {\n return {\n voucherDetail: null,\n listWeeklyCode: [\n {\n text: this.$t('ar_voucher_monday'),\n value: 'MON',\n },\n {\n text: this.$t('ar_voucher_tuesday'),\n value: 'TUE',\n },\n {\n text: this.$t('ar_voucher_wednesday'),\n value: 'WED',\n },\n {\n text: this.$t('ar_voucher_thursday'),\n value: 'THU',\n },\n {\n text: this.$t('ar_voucher_friday'),\n value: 'FRI',\n },\n {\n text: this.$t('ar_voucher_saturday'),\n value: 'SAT',\n },\n {\n text: this.$t('ar_voucher_sunday'),\n value: 'SUN',\n },\n ],\n fieldsTableService: [\n {\n key: 'VoucherServiceGroupName',\n label: 'Tên nhóm dịch vụ',\n sortable: true,\n },\n {\n key: 'DiscountType',\n label: 'Loại giảm giá',\n sortable: true,\n },\n {\n key: 'Amount',\n label: 'Tổng giảm giá',\n sortable: true,\n }\n ],\n isShowTableService: false,\n listVoucherStatus: [\n {label: 'Có hiệu lực', code: 'VALID'},\n {label: 'Đã sử dụng', code: 'USED'},\n {label: 'Tạm ngưng', code: 'PAUSE'},\n ],\n listUsesVoucher: [\n { label: this.$t('ar_voucher_paper_voucher'), code: 0 },\n { label: this.$t('ar_voucher_electron_voucher'), code: 1 },\n ],\n valueUsesVoucher: 0,\n }\n }, \n watch: {\n isOpen(value) {\n this.getDetailVoucher(this.voucherDetailId);\n this.$emit('update:isOpen', value);\n }\n },\n methods: {\n hideModal() {\n this.isShowTableService = false\n this.$bvModal.hide('modal-voucher-detail')\n },\n async getDetailVoucher(VoucherId) {\n const body = {\n Voucher: {\n Id: VoucherId\n }\n }\n await VoucherService.getDetailVoucher_VC_RV02(body).then(res => {\n res.Data.Voucher.VoucherStatus = {\n label: this.listVoucherStatus.find(x => x.code === res.Data.Voucher.VoucherStatus).label,\n code: res.Data.Voucher.VoucherStatus\n }\n this.voucherDetail = res.Data.Voucher;\n this.valueUsesVoucher = this.listUsesVoucher[this.voucherDetail.MediaTypeId].label\n })\n },\n async updateVoucherDetail() {\n const body = {\n Voucher : {\n Id:this.voucherDetail.Id,\n OpenDate: this.voucherDetail.OpenDate,\n ExpirationDate: this.voucherDetail.ExpirationDate,\n WeeklyCode:this.voucherDetail.WeeklyCode,\n SpecialDayId:this.voucherDetail.SpecialDayId,\n Note:this.voucherDetail.Note,\n VoucherStatus: this.voucherDetail.VoucherStatus.code\n }\n }\n await VoucherService.updateDetailVocher_VC_UV01(body).then(res => {\n this.showResToast(res)\n if(res.Status === \"200\") {\n this.$emit('event', { type: 'after-delete_voucher'})\n this.isShowTableService = false\n }\n })\n },\n async DeleteVoucher() {\n const body = {\n Voucher: {\n Id: this.voucherDetail.Id\n }\n }\n await VoucherService.deteleDetailVoucher_VC_DV01(body).then(res => {\n this.showResToast(res)\n if( res.Status === \"200\") {\n this.hideModal()\n this.$emit('event', { type: 'after-update_voucher'})\n }\n })\n },\n async validDetailVoucher() {\n this.hideModal();\n this.$emit('PAUSED', this.voucherDetailId);\n }, \n async invalidDetailVoucher() {\n this.hideModal();\n this.$emit('VALID', this.voucherDetailId);\n },\n },\n}","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./VocherDetail.js?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./VocherDetail.js?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VocherDetail.vue?vue&type=template&id=cc8af71e&\"\nimport script from \"./VocherDetail.js?vue&type=script&lang=js&\"\nexport * from \"./VocherDetail.js?vue&type=script&lang=js&\"\nimport style0 from \"./VocherDetail.vue?vue&type=style&index=0&id=cc8af71e&prod&lang=scss&\"\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","var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Pagination.vue?vue&type=style&index=0&id=131d898e&prod&lang=scss&scoped=true&\"","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('section', {\n staticClass: \"pagination w-100\"\n }, [_c('b-card', {\n staticClass: \"w-100\"\n }, [_c('div', {\n staticClass: \"w-100 d-flex justify-content-end\"\n }, [_vm.hasStatistical ? _c('span', {\n staticClass: \"pagination__statistical mr-1\"\n }, [_vm._v(\"Page \" + _vm._s(_vm.currentPage) + \" of \" + _vm._s(Math.round(_vm.rows / _vm.perPage) + 1) + \" (\" + _vm._s(_vm.rows) + \" items)\")]) : _vm._e(), _c('b-pagination', {\n ref: \"pagination\",\n attrs: {\n \"total-rows\": _vm.rows,\n \"per-page\": _vm.perPage,\n \"pills\": \"\",\n \"last-number\": \"\"\n },\n model: {\n value: _vm.currentPage,\n callback: function ($$v) {\n _vm.currentPage = $$v;\n },\n expression: \"currentPage\"\n }\n })], 1)])], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n props: {\n rows: {\n type: Number,\n default: 100,\n },\n perPage: {\n type: Number,\n default: 10,\n },\n currentPage: {\n type: Number,\n default: 1,\n },\n hasStatistical: {\n type: Boolean,\n default: false,\n }\n },\n data(){\n return {\n lastPageNumber: 0,\n };\n },\n watch: {\n currentPage(value) {\n this.$emit(\"update:currentPage\", value);\n },\n },\n};\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./Pagination.js?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./Pagination.js?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Pagination.vue?vue&type=template&id=131d898e&scoped=true&\"\nimport script from \"./Pagination.js?vue&type=script&lang=js&\"\nexport * from \"./Pagination.js?vue&type=script&lang=js&\"\nimport style0 from \"./Pagination.vue?vue&type=style&index=0&id=131d898e&prod&lang=scss&scoped=true&\"\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 \"131d898e\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}