{"version":3,"sources":["webpack:///./src/components/Currency.vue","webpack:///./node_modules/vue-demi/lib/index.esm.js","webpack:///./node_modules/vue-currency-input/dist/vue-currency-input.esm.js","webpack:///./src/components/Currency.vue?12b9"],"names":["ref","value","currencyValue","isVue3","escapeRegExp","str","replace","removeLeadingZeros","count","search","match","RegExp","length","startsWith","substring","substringBefore","indexOf","DECIMAL_SYMBOLS","INTEGER_PATTERN","NumberFormat","options","currency","locale","precision","autoDecimalDigits","numberFormat","Intl","style","ps","format","this","digits","map","i","toLocaleString","decimalSymbol","substr","undefined","groupingSymbol","minusSymbol","Number","minimumFractionDigits","maximumFractionDigits","resolvedOptions","min","max","prefix","negativePrefix","suffix","lastIndexOf","negative","isNegative","normalizeDigits","stripCurrencySymbol","stripMinusSymbol","fraction","stripGroupingSymbol","isValidIntegerFormat","split","onlyDigits","formattedNumber","number","useGrouping","includes","onlyLocaleDigits","from","forEach","s","digit","index","join","DefaultNumberMask","previousConformedValue","checkIncompleteValue","isFractionIncomplete","toFraction","incompleteValue","insertCurrencySymbol","integer","integerDigits","fractionDigits","invalidFraction","invalidNegativeValue","slice","numberValue","AutoDecimalDigitsNumberMask","Math","pow","toFixed","MAX_SAFE_INTEGER","DEFAULT_OPTIONS","valueAsInteger","distractionFree","valueRange","allowNegative","NumberInput","el","addEventListener","init","setValue","currencyFormat","parse","hideCurrencySymbolOnFocus","hideCurrencySymbol","hideNegligibleDecimalDigitsOnFocus","hideNegligibleDecimalDigits","hideGroupingSymbolOnFocus","hideGroupingSymbol","setAttribute","numberMask","applyFixedFractionFormat","eventName","event","document","createEvent","initCustomEvent","getValue","dispatchEvent","forcedChange","validateValueRange","formatted","formattedValue","newValue","decimalSymbolInsertedAt","normalizeDecimalSymbol","conformedValue","conformToMask","focus","e","detail","selectionStart","getCaretPositionAfterFormat","caretPositionFromLeft","newValueLength","decimalSymbolPosition","abs","setCaretPosition","capture","setTimeout","selectionEnd","getSelectionStart","result","key","start","end","setSelectionRange","findInput","tagName","toLowerCase","querySelector","useCurrencyInput","numberInput","input","inputRef","instance","emit","proxy","$emit","lazyModel","attrs","modelModifiers","lazy","props","modelValue","inputEvent","changeEvent","hasInputEventListener","$listeners","hasChangeEventListener","onChange","onInput","$el","Error","removeEventListener","setOptions","name","setup","currencyDisplay","parseFloat","dd","toString","symbol","__exports__","render"],"mappings":"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","file":"js/Currency.b6d1da5e.js","sourcesContent":["\r\n\r\n","import * as Vue from 'vue'\n\nvar isVue2 = false\nvar isVue3 = true\n\nfunction install() {}\n\nexport * from 'vue'\nexport {\n Vue,\n isVue2,\n isVue3,\n install,\n}\n","/**\n * Vue Currency Input 2.0.0-beta.2\n * (c) 2018-2021 Matthias Stiller\n * @license MIT\n */\nimport { ref, getCurrentInstance, isVue3, computed, onMounted, onUnmounted } from 'vue-demi';\n\nconst escapeRegExp = (str) => str.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\nconst removeLeadingZeros = (str) => str.replace(/^0+(0$|[^0])/, '$1');\nconst count = (str, search) => (str.match(new RegExp(escapeRegExp(search), 'g')) || []).length;\nconst startsWith = (str, search) => str.substring(0, search.length) === search;\nconst substringBefore = (str, search) => str.substring(0, str.indexOf(search));\n\nconst DECIMAL_SYMBOLS = [',', '.', '٫'];\nconst INTEGER_PATTERN = '(0|[1-9]\\\\d*)';\nclass NumberFormat {\n constructor (options) {\n const { currency, locale, precision, autoDecimalDigits } = options;\n const numberFormat = new Intl.NumberFormat(locale, { currency, style: 'currency' });\n const ps = numberFormat.format(123456);\n this.locale = locale;\n this.currency = currency;\n this.digits = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9].map((i) => i.toLocaleString(locale));\n this.decimalSymbol = count(ps, this.digits[0]) ? ps.substr(ps.indexOf(this.digits[6]) + 1, 1) : undefined;\n this.groupingSymbol = ps.substr(ps.indexOf(this.digits[3]) + 1, 1);\n this.minusSymbol = substringBefore(Number(-1).toLocaleString(locale), this.digits[1]);\n if (this.decimalSymbol === undefined) {\n this.minimumFractionDigits = this.maximumFractionDigits = 0;\n } else if (typeof precision === 'number') {\n this.minimumFractionDigits = this.maximumFractionDigits = precision;\n } else if (typeof precision === 'object' && !autoDecimalDigits) {\n this.minimumFractionDigits = precision.min || 0;\n this.maximumFractionDigits = precision.max !== undefined ? precision.max : 20;\n } else {\n this.minimumFractionDigits = numberFormat.resolvedOptions().minimumFractionDigits;\n this.maximumFractionDigits = numberFormat.resolvedOptions().maximumFractionDigits;\n }\n this.prefix = substringBefore(ps, this.digits[1]);\n this.negativePrefix = substringBefore(numberFormat.format(-1), this.digits[1]);\n this.suffix = ps.substring(ps.lastIndexOf(this.decimalSymbol ? this.digits[0] : this.digits[6]) + 1);\n }\n parse (str) {\n if (str) {\n const negative = this.isNegative(str);\n str = this.normalizeDigits(str);\n str = this.stripCurrencySymbol(str);\n str = this.stripMinusSymbol(str);\n const fraction = this.decimalSymbol ? `(?:${escapeRegExp(this.decimalSymbol)}(\\\\d*))?` : '';\n const match = this.stripGroupingSymbol(str).match(new RegExp(`^${INTEGER_PATTERN}${fraction}$`));\n if (match && this.isValidIntegerFormat(str.split(this.decimalSymbol)[0], Number(match[1]))) {\n return Number(`${negative ? '-' : ''}${(this.onlyDigits(match[1]))}.${(this.onlyDigits(match[2] || ''))}`)\n }\n }\n return null\n }\n isValidIntegerFormat (formattedNumber, number) {\n return [\n this.normalizeDigits(number.toLocaleString(this.locale, { useGrouping: true })),\n this.normalizeDigits(number.toLocaleString(this.locale, { useGrouping: false }))\n ].includes(formattedNumber)\n }\n format (number, options = {\n minimumFractionDigits: this.minimumFractionDigits,\n maximumFractionDigits: this.maximumFractionDigits\n }) {\n return number.toLocaleString(this.locale, {\n style: 'currency',\n currency: this.currency,\n ...options\n })\n }\n toFraction (str) {\n return `${this.digits[0]}${this.decimalSymbol}${(this.onlyLocaleDigits(str.substr(1)).substr(0, this.maximumFractionDigits))}`\n }\n isFractionIncomplete (str) {\n return !!this.normalizeDigits(this.stripGroupingSymbol(str)).match(new RegExp(`^${INTEGER_PATTERN}${escapeRegExp(this.decimalSymbol)}$`))\n }\n isNegative (str) {\n return startsWith(str, this.negativePrefix) || startsWith(str.replace('-', this.minusSymbol), this.minusSymbol)\n }\n insertCurrencySymbol (str, negative) {\n return `${negative ? this.negativePrefix : this.prefix}${str}${this.suffix}`\n }\n stripGroupingSymbol (str) {\n return str.replace(new RegExp(escapeRegExp(this.groupingSymbol), 'g'), '')\n }\n stripMinusSymbol (str) {\n return str.replace('-', this.minusSymbol).replace(this.minusSymbol, '')\n }\n stripCurrencySymbol (str) {\n return str.replace(this.negativePrefix, '').replace(this.prefix, '').replace(this.suffix, '')\n }\n normalizeDecimalSymbol (str, from) {\n DECIMAL_SYMBOLS.forEach((s) => {\n str = str.substr(0, from) + str.substr(from).replace(s, this.decimalSymbol);\n });\n return str\n }\n normalizeDigits (str) {\n if (this.digits[0] !== '0') {\n this.digits.forEach((digit, index) => {\n str = str.replace(new RegExp(digit, 'g'), index);\n });\n }\n return str\n }\n onlyDigits (str) {\n return this.normalizeDigits(str).replace(/\\D+/g, '')\n }\n onlyLocaleDigits (str) {\n return str.replace(new RegExp(`[^${this.digits.join('')}]*`, 'g'), '')\n }\n}\n\nclass DefaultNumberMask {\n constructor (numberFormat) {\n this.numberFormat = numberFormat;\n }\n conformToMask (str, previousConformedValue = '') {\n const negative = this.numberFormat.isNegative(str);\n const checkIncompleteValue = (str) => {\n if (str === '' && negative && previousConformedValue !== this.numberFormat.negativePrefix) {\n return ''\n } else if (this.numberFormat.maximumFractionDigits > 0) {\n if (this.numberFormat.isFractionIncomplete(str)) {\n return str\n } else if (startsWith(str, this.numberFormat.decimalSymbol)) {\n return this.numberFormat.toFraction(str)\n }\n }\n return null\n };\n let value = str;\n value = this.numberFormat.stripCurrencySymbol(value);\n value = this.numberFormat.stripMinusSymbol(value);\n const incompleteValue = checkIncompleteValue(value);\n if (incompleteValue != null) {\n return this.numberFormat.insertCurrencySymbol(incompleteValue, negative)\n }\n const [integer, ...fraction] = value.split(this.numberFormat.decimalSymbol);\n const integerDigits = removeLeadingZeros(this.numberFormat.onlyDigits(integer));\n const fractionDigits = this.numberFormat.onlyDigits(fraction.join('')).substr(0, this.numberFormat.maximumFractionDigits);\n const invalidFraction = fraction.length > 0 && fractionDigits.length === 0;\n const invalidNegativeValue = integerDigits === '' && negative && (previousConformedValue === str.slice(0, -1) || previousConformedValue !== this.numberFormat.negativePrefix);\n if (invalidFraction || invalidNegativeValue) {\n return previousConformedValue\n } else if (integerDigits.match(/\\d+/)) {\n return {\n numberValue: Number(`${negative ? '-' : ''}${integerDigits}.${fractionDigits}`),\n fractionDigits\n }\n } else {\n return ''\n }\n }\n}\nclass AutoDecimalDigitsNumberMask {\n constructor (numberFormat) {\n this.numberFormat = numberFormat;\n }\n conformToMask (str) {\n if (str === '') {\n return ''\n }\n const negative = this.numberFormat.isNegative(str);\n const numberValue = this.numberFormat.stripMinusSymbol(str) === ''\n ? -0\n : Number(`${negative ? '-' : ''}${removeLeadingZeros(this.numberFormat.onlyDigits(str))}`) / Math.pow(10, this.numberFormat.minimumFractionDigits);\n return {\n numberValue,\n fractionDigits: numberValue.toFixed(this.numberFormat.minimumFractionDigits).slice(-this.numberFormat.minimumFractionDigits)\n }\n }\n}\n\nconst MAX_SAFE_INTEGER = Math.pow(2, 53) - 1;\nconst DEFAULT_OPTIONS = {\n locale: undefined,\n currency: undefined,\n valueAsInteger: false,\n distractionFree: true,\n precision: undefined,\n autoDecimalDigits: false,\n valueRange: undefined,\n allowNegative: true,\n useGrouping: true\n};\nclass NumberInput {\n constructor (el, options) {\n this.el = el;\n this.numberValue = null;\n this.addEventListener();\n this.init(options);\n this.setValue(this.currencyFormat.parse(this.el.value));\n }\n init (options) {\n const { distractionFree, autoDecimalDigits, valueRange, valueAsInteger, allowNegative, useGrouping } = { ...DEFAULT_OPTIONS, ...options };\n this.autoDecimalDigits = autoDecimalDigits;\n this.valueAsInteger = valueAsInteger;\n this.allowNegative = allowNegative;\n this.useGrouping = useGrouping;\n this.hideCurrencySymbolOnFocus = distractionFree === true || !!(distractionFree || {}).hideCurrencySymbol;\n this.hideNegligibleDecimalDigitsOnFocus = distractionFree === true || !!(distractionFree || {}).hideNegligibleDecimalDigits;\n this.hideGroupingSymbolOnFocus = distractionFree === true || !!(distractionFree || {}).hideGroupingSymbol;\n if (valueRange) {\n this.valueRange = {\n min: valueRange.min !== undefined ? Math.max(valueRange.min, -MAX_SAFE_INTEGER) : -MAX_SAFE_INTEGER,\n max: valueRange.max !== undefined ? Math.min(valueRange.max, MAX_SAFE_INTEGER) : MAX_SAFE_INTEGER\n };\n } else {\n this.valueRange = {\n min: -MAX_SAFE_INTEGER,\n max: MAX_SAFE_INTEGER\n };\n }\n if (autoDecimalDigits) {\n this.hideNegligibleDecimalDigitsOnFocus = false;\n this.el.setAttribute('inputmode', 'numeric');\n } else {\n this.el.setAttribute('inputmode', 'decimal');\n }\n this.currencyFormat = new NumberFormat(options);\n this.numberMask = autoDecimalDigits ? new AutoDecimalDigitsNumberMask(this.currencyFormat) : new DefaultNumberMask(this.currencyFormat);\n }\n setOptions (options) {\n this.init(options);\n this.applyFixedFractionFormat(this.numberValue, true);\n }\n dispatchEvent (eventName) {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent(eventName, true, true, { ...this.getValue() });\n this.el.dispatchEvent(event);\n }\n applyFixedFractionFormat (number, forcedChange) {\n this.format(number != null ? this.currencyFormat.format(this.validateValueRange(number)) : null);\n if (number !== this.numberValue || forcedChange) {\n this.dispatchEvent('change');\n }\n }\n getValue () {\n const numberValue = this.valueAsInteger && this.numberValue != null ? Number(this.numberValue.toFixed(this.currencyFormat.maximumFractionDigits).split('.').join('')) : this.numberValue;\n return {\n number: numberValue,\n formatted: this.formattedValue\n }\n }\n setValue (value) {\n const newValue = this.valueAsInteger && value != null ? value / Math.pow(10, this.currencyFormat.maximumFractionDigits) : value;\n if (newValue !== this.numberValue) {\n this.applyFixedFractionFormat(newValue);\n }\n }\n validateValueRange (value) {\n const { min, max } = this.valueRange;\n return Math.min(Math.max(value, min), max)\n }\n format (value, hideNegligibleDecimalDigits = false) {\n if (value != null) {\n if (this.decimalSymbolInsertedAt !== undefined) {\n value = this.currencyFormat.normalizeDecimalSymbol(value, this.decimalSymbolInsertedAt);\n this.decimalSymbolInsertedAt = undefined;\n }\n const conformedValue = this.numberMask.conformToMask(value, this.formattedValue);\n let formattedValue;\n if (typeof conformedValue === 'object') {\n const { numberValue, fractionDigits } = conformedValue;\n let { maximumFractionDigits, minimumFractionDigits } = this.currencyFormat;\n if (this.focus) {\n minimumFractionDigits = maximumFractionDigits;\n }\n minimumFractionDigits = hideNegligibleDecimalDigits\n ? fractionDigits.replace(/0+$/, '').length\n : Math.min(minimumFractionDigits, fractionDigits.length);\n formattedValue = numberValue > MAX_SAFE_INTEGER\n ? this.formattedValue\n : this.currencyFormat.format(numberValue, {\n useGrouping: this.useGrouping && !(this.focus && this.hideGroupingSymbolOnFocus),\n minimumFractionDigits,\n maximumFractionDigits\n });\n } else {\n formattedValue = conformedValue;\n }\n if (!this.allowNegative) {\n formattedValue = formattedValue.replace(this.currencyFormat.negativePrefix, this.currencyFormat.prefix);\n }\n if (this.focus && this.hideCurrencySymbolOnFocus) {\n formattedValue = formattedValue\n .replace(this.currencyFormat.negativePrefix, this.currencyFormat.minusSymbol)\n .replace(this.currencyFormat.prefix, '')\n .replace(this.currencyFormat.suffix, '');\n }\n this.el.value = formattedValue;\n this.numberValue = this.currencyFormat.parse(formattedValue);\n } else {\n this.el.value = this.numberValue = null;\n }\n this.formattedValue = this.el.value;\n this.dispatchEvent('input');\n }\n addEventListener () {\n this.el.addEventListener('input', (e) => {\n if (!e.detail) {\n const { value, selectionStart } = this.el;\n this.format(value);\n if (this.focus) {\n const getCaretPositionAfterFormat = () => {\n const { prefix, suffix, decimalSymbol, maximumFractionDigits, groupingSymbol } = this.currencyFormat;\n let caretPositionFromLeft = value.length - selectionStart;\n const newValueLength = this.formattedValue.length;\n if (this.formattedValue.substr(selectionStart, 1) === groupingSymbol && count(this.formattedValue, groupingSymbol) === count(value, groupingSymbol) + 1) {\n return newValueLength - caretPositionFromLeft - 1\n }\n if (decimalSymbol) {\n const decimalSymbolPosition = value.indexOf(decimalSymbol) + 1;\n if (Math.abs(newValueLength - value.length) > 1 && selectionStart <= decimalSymbolPosition) {\n return this.formattedValue.indexOf(decimalSymbol) + 1\n } else {\n if (!this.autoDecimalDigits && selectionStart > decimalSymbolPosition) {\n if (this.currencyFormat.onlyDigits(value.substr(decimalSymbolPosition)).length - 1 === maximumFractionDigits) {\n caretPositionFromLeft -= 1;\n }\n }\n }\n }\n return this.hideCurrencySymbolOnFocus ? newValueLength - caretPositionFromLeft : Math.max(newValueLength - Math.max(caretPositionFromLeft, suffix.length), prefix.length)\n };\n this.setCaretPosition(getCaretPositionAfterFormat());\n }\n }\n }, { capture: true });\n this.el.addEventListener('focus', () => {\n this.focus = true;\n setTimeout(() => {\n const { value, selectionStart, selectionEnd } = this.el;\n if ((this.hideCurrencySymbolOnFocus || this.hideGroupingSymbolOnFocus || this.hideNegligibleDecimalDigitsOnFocus) && value) {\n this.format(value, this.hideNegligibleDecimalDigitsOnFocus);\n }\n if (Math.abs(selectionStart - selectionEnd) > 0) {\n this.setCaretPosition(0, this.el.value.length);\n } else {\n const getSelectionStart = () => {\n const { prefix, suffix, groupingSymbol } = this.currencyFormat;\n if (!this.hideCurrencySymbolOnFocus) {\n if (selectionStart > value.length - suffix.length) {\n return this.formattedValue.length - suffix.length\n } else if (selectionStart < prefix.length) {\n return prefix.length\n }\n }\n let result = selectionStart;\n if (this.hideCurrencySymbolOnFocus) {\n result -= prefix.length;\n }\n if (this.hideGroupingSymbolOnFocus) {\n result -= count(value.substring(0, selectionStart), groupingSymbol);\n }\n return result\n };\n this.setCaretPosition(getSelectionStart());\n }\n });\n });\n this.el.addEventListener('keypress', (e) => {\n if (DECIMAL_SYMBOLS.includes(e.key)) {\n this.decimalSymbolInsertedAt = this.el.selectionStart;\n }\n });\n this.el.addEventListener('blur', () => {\n this.focus = false;\n if (this.numberValue != null) {\n this.applyFixedFractionFormat(this.numberValue);\n }\n });\n this.el.addEventListener('change', (e) => {\n if (!e.detail) {\n this.dispatchEvent('change');\n }\n });\n }\n setCaretPosition (start, end = start) { this.el.setSelectionRange(start, end); }\n}\n\nconst findInput = (el) => el.tagName.toLowerCase() === 'input' ? el : el.querySelector('input');\nvar useCurrencyInput = (options) => {\n let numberInput, input;\n const inputRef = ref(null);\n const formattedValue = ref(null);\n const instance = getCurrentInstance();\n const emit = (event, value) => isVue3 ? instance.emit(event, value) : instance.proxy.$emit(event, value);\n const lazyModel = isVue3 && (instance.attrs.modelModifiers || {}).lazy;\n const numberValue = computed(() => isVue3 ? instance.props.modelValue : instance.props.value);\n const inputEvent = isVue3 ? 'update:modelValue' : 'input';\n const changeEvent = isVue3 && lazyModel ? 'update:modelValue' : 'change';\n const hasInputEventListener = isVue3 ? (!!instance.attrs['onUpdate:modelValue'] && !lazyModel) : !!instance.proxy.$listeners[inputEvent];\n const hasChangeEventListener = isVue3 ? (lazyModel || !!instance.attrs.onChange) : !!instance.proxy.$listeners[changeEvent];\n const onInput = (e) => {\n if (e.detail) {\n if (numberValue.value !== e.detail.number) {\n emit(inputEvent, e.detail.number);\n }\n formattedValue.value = e.detail.formatted;\n }\n };\n const onChange = (e) => {\n if (e.detail) {\n emit(changeEvent, e.detail.number);\n formattedValue.value = e.detail.formatted;\n }\n };\n onMounted(() => {\n input = '$el' in inputRef.value ? findInput(inputRef.value.$el) : inputRef.value;\n if (input == null) {\n throw new Error('No input element found')\n } else {\n numberInput = new NumberInput(input, options);\n if (hasInputEventListener) {\n input.addEventListener('input', onInput);\n }\n if (hasChangeEventListener) {\n input.addEventListener('change', onChange);\n }\n numberInput.setValue(numberValue.value);\n }\n });\n onUnmounted(() => {\n if (hasInputEventListener) {\n input.removeEventListener('input', onInput);\n }\n if (hasChangeEventListener) {\n input.removeEventListener('change', onChange);\n }\n });\n return {\n inputRef,\n formattedValue,\n setValue: (value) => numberInput.setValue(value),\n setOptions: (options) => numberInput.setOptions(options)\n }\n};\n\nexport default useCurrencyInput;\n","import { render } from \"./Currency.vue?vue&type=template&id=8894cb0c\"\nimport script from \"./Currency.vue?vue&type=script&lang=js\"\nexport * from \"./Currency.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"E:\\\\itligencia\\\\cashin\\\\solucion\\\\club-cashin-web\\\\node_modules\\\\@vue\\\\cli-service\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"sourceRoot":""}