{"version":3,"sources":["webpack:///../../../src/components/VFileInput/VFileInput.ts","webpack:///../../../src/components/VTextField/index.ts","webpack:///../../../src/components/VForm/VForm.ts","webpack:///../../../src/mixins/rippleable/index.ts","webpack:///./src/components/herramentales/DialogRectificarHR.vue","webpack:///src/components/herramentales/DialogRectificarHR.vue","webpack:///./src/components/herramentales/DialogRectificarHR.vue?07ae","webpack:///./src/components/herramentales/DialogRectificarHR.vue?a930","webpack:///../../../src/components/VCheckbox/VCheckbox.ts","webpack:///../../../src/components/VAutocomplete/VAutocomplete.ts","webpack:///../../../src/mixins/selectable/index.ts"],"names":["VTextField","extend","name","model","prop","event","props","chips","Boolean","clearable","type","default","counterSizeString","String","counterString","hideInput","multiple","placeholder","prependIcon","readonly","showSize","Number","validator","v","includes","smallChips","truncateLength","value","undefined","val","wrapInArray","every","computed","classes","options","call","this","computedCounterValue","fileCount","lazyValue","length","File","$vuetify","lang","t","bytes","internalArrayValue","reduce","size","humanReadableFileSize","base","internalValue","get","set","$emit","isDirty","isLabelActive","text","persistentPlaceholder","isFocused","hasLabel","map","file","truncatedText","truncateText","hasChips","watch","handler","consoleError","immediate","deepEqual","$refs","input","files","methods","clearableCallback","genChips","index","$createElement","VChip","small","on","click:close","splice","genControl","render","data","style","mergeStyles","display","genInput","attrs","domProps","change","onInput","genSelections","genPrependSlot","icon","genIcon","click","genSlot","genSelectionText","counter","children","$scopedSlots","selection","forEach","push","staticClass","class","genTextFieldSlot","node","e","target","nodeName","initialValue","onKeyDown","str","charsKeepOneSide","Math","floor","slice","mixins","BindsAttrs","RegistrableProvide","provide","form","inheritAttrs","disabled","lazyValidation","inputs","watchers","errorBag","errors","Object","values","deep","watchInput","watcher","$watch","$set","_uid","valid","shouldValidate","hasOwnProperty","validate","filter","reset","resetErrorBag","setTimeout","resetValidation","register","unregister","found","find","i","unwatch","$delete","h","novalidate","attrs$","submit","getSlot","Vue","directives","ripple","genRipple","center","_vm","ref","callback","expression","scopedSlots","fn","_c","formData","rules2","required","positive","altura_final","$$v","altura_actual","diametro_actual","diametro_final","agregarNovedad","key","rules3","usuario","$event","mostrarCamara","capturarFoto","_v","staticRenderFns","dialogRectificado","tipo_herramental","confirmarFoto","fotoBase64","archivoFoto","upload","usuarios","subir","mostrarOpciones","mapState","config","headers","token","isDisabled","estado_formulario","hv_herramentales","id_tipo_golpe","path","archivo","formatoDatos","FormData","append","response","axios","post","url","path_image","error","console","alert","datos","id_herramental","id_entrega","novedad","tolerancia","usuario_registra","usuario_aprobo","Swal","fire","title","showConfirmButton","timer","limpiarDatos","video","canvas","context","getContext","width","videoWidth","height","videoHeight","drawImage","toDataURL","cerrarCamara","rechazarFoto","abrirCamara","navigator","mediaDevices","getUserMedia","then","stream","srcObject","catch","err","handleFileUpload","maxSize","subirFoto","guardarFoto","base64Data","split","blob","Blob","Uint8Array","from","atob","c","charCodeAt","getClases","res","tracks","getTracks","track","stop","mostrarOpcionesEvidencia","mounted","localStorage","getItem","rol","informacion_usuario","id_cargo","component","Selectable","indeterminate","indeterminateIcon","offIcon","onIcon","inputIndeterminate","VInput","computedIcon","isActive","validationState","hasError","hasSuccess","hasColor","computedColor","$nextTick","genCheckbox","checkboxAttrs","VIcon","setTextColor","dense","dark","light","toString","rippleState","genDefaultSlot","genLabel","defaultMenuProps","VSelectMenuProps","offsetY","offsetOverflow","transition","VSelect","autoSelectFirst","Function","item","queryText","itemText","toLocaleLowerCase","indexOf","hideNoData","menuProps","noFilter","searchInput","lazySearch","selectedIndex","computedItems","filteredItems","selectedValues","selectedItems","getValue","hasDisplayedItems","hideSelected","some","hasItem","currentRange","selectedItem","getText","isSearching","internalSearch","allItems","getPropertyFromItem","isAnyValueAllowed","searchIsDirty","menuCanShow","$_menuProps","contentClass","trim","valueComparator","listData","items","virtualizedItems","document","addEventListener","onCopy","select","removeEventListener","blur","updateSelf","isMenuActive","hasSlot","oldVal","activateMenu","created","setSearch","destroyed","onFilteredItemsChanged","preSelectedItem","menu","listIndex","setMenuIndex","findIndex","getTiles","onInternalSearchChanged","updateMenuDimensions","updateDimensions","changeSelectedIndex","keyCode","keyCodes","left","right","backspace","delete","deleteCurrentItem","curIndex","curItem","isInteractive","getDisabled","lastIndex","nextIndex","nextItem","selectItem","setValue","mergeData","getObjectValueByPath","autocomplete","genInputSlot","slot","role","onClick","onFocus","isAppendInner","badInput","validity","ctrlKey","home","end","onSpaceDown","onTabDown","onUpDown","preventDefault","setSelectedItems","currentItem","currentItemText","_a","clipboardData","setData","_b","prevent","Rippleable","Comparable","id","inputValue","falseValue","trueValue","label","color","isDark","appIsDark","isMultiple","Array","isArray","assign","computedId","checked","onBlur","onChange","focus","keydown","onKeydown"],"mappings":"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","file":"js/chunk-77204070.960a5e1e.js","sourcesContent":["// Styles\nimport './VFileInput.sass'\n\n// Extensions\nimport VTextField from '../VTextField'\n\n// Components\nimport { VChip } from '../VChip'\n\n// Types\nimport { PropValidator } from 'vue/types/options'\n\n// Utilities\nimport { deepEqual, humanReadableFileSize, wrapInArray } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\nimport { mergeStyles } from '../../util/mergeData'\n\nexport default VTextField.extend({\n name: 'v-file-input',\n\n model: {\n prop: 'value',\n event: 'change',\n },\n\n props: {\n chips: Boolean,\n clearable: {\n type: Boolean,\n default: true,\n },\n counterSizeString: {\n type: String,\n default: '$vuetify.fileInput.counterSize',\n },\n counterString: {\n type: String,\n default: '$vuetify.fileInput.counter',\n },\n hideInput: Boolean,\n multiple: Boolean,\n placeholder: String,\n prependIcon: {\n type: String,\n default: '$file',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n showSize: {\n type: [Boolean, Number],\n default: false,\n validator: (v: boolean | number) => {\n return (\n typeof v === 'boolean' ||\n [1000, 1024].includes(v)\n )\n },\n } as PropValidator,\n smallChips: Boolean,\n truncateLength: {\n type: [Number, String],\n default: 22,\n },\n type: {\n type: String,\n default: 'file',\n },\n value: {\n default: undefined,\n validator: val => {\n return wrapInArray(val).every(v => v != null && typeof v === 'object')\n },\n } as PropValidator,\n },\n\n computed: {\n classes (): object {\n return {\n ...VTextField.options.computed.classes.call(this),\n 'v-file-input': true,\n }\n },\n computedCounterValue (): string {\n const fileCount = (this.multiple && this.lazyValue)\n ? this.lazyValue.length\n : (this.lazyValue instanceof File) ? 1 : 0\n\n if (!this.showSize) return this.$vuetify.lang.t(this.counterString, fileCount)\n\n const bytes = this.internalArrayValue.reduce((bytes: number, { size = 0 }: File) => {\n return bytes + size\n }, 0)\n\n return this.$vuetify.lang.t(\n this.counterSizeString,\n fileCount,\n humanReadableFileSize(bytes, this.base === 1024)\n )\n },\n internalArrayValue (): File[] {\n return wrapInArray(this.internalValue)\n },\n internalValue: {\n get (): File[] {\n return this.lazyValue\n },\n set (val: File | File[]) {\n this.lazyValue = val\n this.$emit('change', this.lazyValue)\n },\n },\n isDirty (): boolean {\n return this.internalArrayValue.length > 0\n },\n isLabelActive (): boolean {\n return this.isDirty\n },\n text (): string[] {\n if (!this.isDirty && (this.persistentPlaceholder || this.isFocused || !this.hasLabel)) return [this.placeholder]\n\n return this.internalArrayValue.map((file: File) => {\n const {\n name = '',\n size = 0,\n } = file\n\n const truncatedText = this.truncateText(name)\n\n return !this.showSize\n ? truncatedText\n : `${truncatedText} (${humanReadableFileSize(size, this.base === 1024)})`\n })\n },\n base (): 1000 | 1024 | undefined {\n return typeof this.showSize !== 'boolean' ? this.showSize : undefined\n },\n hasChips (): boolean {\n return this.chips || this.smallChips\n },\n },\n\n watch: {\n readonly: {\n handler (v) {\n if (v === true) consoleError('readonly is not supported on ', this)\n },\n immediate: true,\n },\n value (v) {\n const value = this.multiple ? v : v ? [v] : []\n if (!deepEqual(value, this.$refs.input.files)) {\n // When the input value is changed programatically, clear the\n // internal input's value so that the `onInput` handler\n // can be triggered again if the user re-selects the exact\n // same file(s). Ideally, `input.files` should be\n // manipulated directly but that property is readonly.\n this.$refs.input.value = ''\n }\n },\n },\n\n methods: {\n clearableCallback () {\n this.internalValue = this.multiple ? [] : null\n this.$refs.input.value = ''\n },\n genChips () {\n if (!this.isDirty) return []\n\n return this.text.map((text, index) => this.$createElement(VChip, {\n props: { small: this.smallChips },\n on: {\n 'click:close': () => {\n const internalValue = this.internalValue\n internalValue.splice(index, 1)\n this.internalValue = internalValue // Trigger the watcher\n },\n },\n }, [text]))\n },\n genControl () {\n const render = VTextField.options.methods.genControl.call(this)\n\n if (this.hideInput) {\n render.data!.style = mergeStyles(\n render.data!.style,\n { display: 'none' }\n )\n }\n\n return render\n },\n genInput () {\n const input = VTextField.options.methods.genInput.call(this)\n\n input.data!.attrs!.multiple = this.multiple\n\n // We should not be setting value\n // programmatically on the input\n // when it is using type=\"file\"\n delete input.data!.domProps!.value\n\n // This solves an issue in Safari where\n // nothing happens when adding a file\n // due to the input event not firing\n // https://github.com/vuetifyjs/vuetify/issues/7941\n delete input.data!.on!.input\n input.data!.on!.change = this.onInput\n\n return [this.genSelections(), input]\n },\n genPrependSlot () {\n if (!this.prependIcon) return null\n\n const icon = this.genIcon('prepend', () => {\n this.$refs.input.click()\n })\n\n return this.genSlot('prepend', 'outer', [icon])\n },\n genSelectionText (): string[] {\n const length = this.text.length\n\n if (length < 2) return this.text\n if (this.showSize && !this.counter) return [this.computedCounterValue]\n return [this.$vuetify.lang.t(this.counterString, length)]\n },\n genSelections () {\n const children = []\n\n if (this.isDirty && this.$scopedSlots.selection) {\n this.internalArrayValue.forEach((file: File, index: number) => {\n if (!this.$scopedSlots.selection) return\n\n children.push(\n this.$scopedSlots.selection({\n text: this.text[index],\n file,\n index,\n })\n )\n })\n } else {\n children.push(this.hasChips && this.isDirty ? this.genChips() : this.genSelectionText())\n }\n\n return this.$createElement('div', {\n staticClass: 'v-file-input__text',\n class: {\n 'v-file-input__text--placeholder': this.placeholder && !this.isDirty,\n 'v-file-input__text--chips': this.hasChips && !this.$scopedSlots.selection,\n },\n }, children)\n },\n genTextFieldSlot () {\n const node = VTextField.options.methods.genTextFieldSlot.call(this)\n\n node.data!.on = {\n ...(node.data!.on || {}),\n click: (e: MouseEvent) => {\n // Clicking the label already delegates to input element, so we shouldn't click it twice\n if (e.target && (e.target as HTMLElement).nodeName === 'LABEL') return\n\n this.$refs.input.click()\n },\n }\n\n return node\n },\n onInput (e: Event) {\n const files = [...(e.target as HTMLInputElement).files || []]\n\n this.internalValue = this.multiple ? files : files[0]\n\n // Set initialValue here otherwise isFocused\n // watcher in VTextField will emit a change\n // event whenever the component is blurred\n this.initialValue = this.internalValue\n },\n onKeyDown (e: KeyboardEvent) {\n this.$emit('keydown', e)\n },\n truncateText (str: string) {\n if (str.length < Number(this.truncateLength)) return str\n const charsKeepOneSide = Math.floor((Number(this.truncateLength) - 1) / 2)\n return `${str.slice(0, charsKeepOneSide)}…${str.slice(str.length - charsKeepOneSide)}`\n },\n },\n})\n","import VTextField from './VTextField'\n\nexport { VTextField }\nexport default VTextField\n","// Components\nimport VInput from '../VInput/VInput'\n\n// Mixins\nimport mixins from '../../util/mixins'\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport { provide as RegistrableProvide } from '../../mixins/registrable'\n\n// Helpers\nimport { VNode } from 'vue'\nimport { getSlot } from '../../util/helpers'\n\ntype ErrorBag = Record\ntype VInputInstance = InstanceType\ntype Watchers = {\n _uid: number\n valid: () => void\n shouldValidate: () => void\n}\n\n/* @vue/component */\nexport default mixins(\n BindsAttrs,\n RegistrableProvide('form')\n /* @vue/component */\n).extend({\n name: 'v-form',\n\n provide (): object {\n return { form: this }\n },\n\n inheritAttrs: false,\n\n props: {\n disabled: Boolean,\n lazyValidation: Boolean,\n readonly: Boolean,\n value: Boolean,\n },\n\n data: () => ({\n inputs: [] as VInputInstance[],\n watchers: [] as Watchers[],\n errorBag: {} as ErrorBag,\n }),\n\n watch: {\n errorBag: {\n handler (val) {\n const errors = Object.values(val).includes(true)\n\n this.$emit('input', !errors)\n },\n deep: true,\n immediate: true,\n },\n },\n\n methods: {\n watchInput (input: any): Watchers {\n const watcher = (input: any): (() => void) => {\n return input.$watch('hasError', (val: boolean) => {\n this.$set(this.errorBag, input._uid, val)\n }, { immediate: true })\n }\n\n const watchers: Watchers = {\n _uid: input._uid,\n valid: () => {},\n shouldValidate: () => {},\n }\n\n if (this.lazyValidation) {\n // Only start watching inputs if we need to\n watchers.shouldValidate = input.$watch('shouldValidate', (val: boolean) => {\n if (!val) return\n\n // Only watch if we're not already doing it\n if (this.errorBag.hasOwnProperty(input._uid)) return\n\n watchers.valid = watcher(input)\n })\n } else {\n watchers.valid = watcher(input)\n }\n\n return watchers\n },\n /** @public */\n validate (): boolean {\n return this.inputs.filter(input => !input.validate(true)).length === 0\n },\n /** @public */\n reset (): void {\n this.inputs.forEach(input => input.reset())\n this.resetErrorBag()\n },\n resetErrorBag () {\n if (this.lazyValidation) {\n // Account for timeout in validatable\n setTimeout(() => {\n this.errorBag = {}\n }, 0)\n }\n },\n /** @public */\n resetValidation () {\n this.inputs.forEach(input => input.resetValidation())\n this.resetErrorBag()\n },\n register (input: VInputInstance) {\n this.inputs.push(input)\n this.watchers.push(this.watchInput(input))\n },\n unregister (input: VInputInstance) {\n const found = this.inputs.find(i => i._uid === input._uid)\n\n if (!found) return\n\n const unwatch = this.watchers.find(i => i._uid === found._uid)\n if (unwatch) {\n unwatch.valid()\n unwatch.shouldValidate()\n }\n\n this.watchers = this.watchers.filter(i => i._uid !== found._uid)\n this.inputs = this.inputs.filter(i => i._uid !== found._uid)\n this.$delete(this.errorBag, found._uid)\n },\n },\n\n render (h): VNode {\n return h('form', {\n staticClass: 'v-form',\n attrs: {\n novalidate: true,\n ...this.attrs$,\n },\n on: {\n submit: (e: Event) => this.$emit('submit', e),\n },\n }, getSlot(this))\n },\n})\n","// Directives\nimport ripple from '../../directives/ripple'\n\n// Types\nimport Vue, { VNode, VNodeData, VNodeDirective } from 'vue'\n\nexport default Vue.extend({\n name: 'rippleable',\n\n directives: { ripple },\n\n props: {\n ripple: {\n type: [Boolean, Object],\n default: true,\n },\n },\n\n methods: {\n genRipple (data: VNodeData = {}): VNode | null {\n if (!this.ripple) return null\n\n data.staticClass = 'v-input--selection-controls__ripple'\n\n data.directives = data.directives || []\n data.directives.push({\n name: 'ripple',\n value: { center: true },\n } as VNodeDirective)\n\n return this.$createElement('div', data)\n },\n },\n})\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-dialog',{attrs:{\"max-width\":\"600px\"},model:{value:(_vm.dialogRectificado),callback:function ($$v) {_vm.dialogRectificado=$$v},expression:\"dialogRectificado\"}},[_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"text-h4\"},[_vm._v(\"Agregar Registro de Rectificado\")])]),_c('v-card-text',[_c('v-form',{ref:\"formData\",model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('h2',[_vm._v(\" Rectificado Estándar \"+_vm._s(_vm.formData.standard_reticficado)+\"mm \"),_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-icon',_vm._g(_vm._b({staticClass:\"ml-2\",attrs:{\"color\":\"primary\"}},'v-icon',attrs,false),on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',[_vm._v(\"El sistema calculará el rectificado. Si vas a bajar más o menos, da clic en \\\"Agregar novedad\\\".\")])])],1),_c('br'),(\n _vm.tipo_herramental === 1 ||\n _vm.tipo_herramental === 3\n )?_c('div',[_c('v-text-field',{attrs:{\"label\":\"Altura Actual\",\"type\":\"number\",\"rules\":[\n _vm.rules2.required,\n _vm.rules2.positive,\n ],\"required\":\"\",\"disabled\":\"\"},model:{value:(_vm.formData.altura_actual),callback:function ($$v) {_vm.$set(_vm.formData, \"altura_actual\", $$v)},expression:\"formData.altura_actual\"}}),_c('v-text-field',{attrs:{\"label\":\"Altura Final\",\"type\":\"number\",\"rules\":[\n _vm.rules2.required,\n _vm.rules2.positive,\n ],\"required\":\"\",\"disabled\":_vm.formData.agregarNovedad === false},model:{value:(_vm.formData.altura_final),callback:function ($$v) {_vm.$set(_vm.formData, \"altura_final\", $$v)},expression:\"formData.altura_final\"}})],1):_c('div',[(_vm.tipo_herramental !== 4)?_c('div',[_c('v-text-field',{attrs:{\"label\":\"Altura Actual\",\"type\":\"number\",\"rules\":[\n _vm.rules2.required,\n _vm.rules2.positive,\n ],\"required\":\"\",\"disabled\":\"\"},model:{value:(_vm.formData.altura_actual),callback:function ($$v) {_vm.$set(_vm.formData, \"altura_actual\", $$v)},expression:\"formData.altura_actual\"}}),_c('v-text-field',{attrs:{\"label\":\"Altura Final\",\"type\":\"number\",\"rules\":[\n _vm.rules2.required,\n _vm.rules2.positive,\n ],\"required\":\"\",\"disabled\":_vm.formData.agregarNovedad === false},model:{value:(_vm.formData.altura_final),callback:function ($$v) {_vm.$set(_vm.formData, \"altura_final\", $$v)},expression:\"formData.altura_final\"}})],1):_vm._e(),(\n _vm.tipo_herramental === 2 ||\n _vm.tipo_herramental === 4\n )?_c('div',[_c('v-text-field',{attrs:{\"label\":\"Ancho Actual\",\"type\":\"number\",\"rules\":[_vm.rules2.required],\"required\":\"\",\"disabled\":\"\"},model:{value:(_vm.formData.diametro_actual),callback:function ($$v) {_vm.$set(_vm.formData, \"diametro_actual\", $$v)},expression:\"formData.diametro_actual\"}}),_c('v-text-field',{attrs:{\"label\":\"Ancho Final\",\"type\":\"number\",\"rules\":[\n _vm.rules2.required,\n _vm.rules2.positive,\n ],\"disabled\":_vm.formData.agregarNovedad === false,\"required\":\"\"},model:{value:(_vm.formData.diametro_final),callback:function ($$v) {_vm.$set(_vm.formData, \"diametro_final\", $$v)},expression:\"formData.diametro_final\"}})],1):_vm._e()]),(_vm.tipo_herramental === 1)?_c('div',[_c('v-text-field',{attrs:{\"label\":\"Diámetro Actual\",\"type\":\"number\",\"rules\":[_vm.rules2.required],\"required\":\"\",\"disabled\":\"\"},model:{value:(_vm.formData.diametro_actual),callback:function ($$v) {_vm.$set(_vm.formData, \"diametro_actual\", $$v)},expression:\"formData.diametro_actual\"}}),_c('v-text-field',{attrs:{\"label\":\"Diámetro Final\",\"type\":\"number\",\"required\":\"\"},model:{value:(_vm.formData.diametro_final),callback:function ($$v) {_vm.$set(_vm.formData, \"diametro_final\", $$v)},expression:\"formData.diametro_final\"}})],1):_vm._e(),(_vm.tipo_herramental === 3)?_c('div',[_c('v-text-field',{attrs:{\"label\":\"Tolerancia\",\"type\":\"number\",\"rules\":[\n _vm.rules2.required,\n _vm.rules2.positive,\n ],\"required\":\"\"},model:{value:(_vm.formData.tolerancia),callback:function ($$v) {_vm.$set(_vm.formData, \"tolerancia\", $$v)},expression:\"formData.tolerancia\"}})],1):_vm._e(),_c('v-checkbox',{attrs:{\"label\":\"Agregar novedad\"},model:{value:(_vm.formData.agregarNovedad),callback:function ($$v) {_vm.$set(_vm.formData, \"agregarNovedad\", $$v)},expression:\"formData.agregarNovedad\"}}),(_vm.formData.agregarNovedad === true)?_c('div',[(_vm.mostrarOpciones)?_c('div',[_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.mostrarOpcionesEvidencia}},[_vm._v(\" No Añadir Evidencia \")])],1):_c('div',[_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.mostrarOpcionesEvidencia}},[_vm._v(\" Añadir Evidencia \")])],1),(_vm.mostrarOpciones)?_c('div',[_c('br'),_c('div',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({attrs:{\"icon\":\"\",\"color\":\"secondary\"},on:{\"click\":_vm.subirFoto}},'v-btn',attrs,false),on),[_c('v-icon',[_vm._v(\"mdi-upload\")])],1)]}}],null,false,3276363167)},[_c('span',[_vm._v(\"Subir foto desde el computador\")])]),_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({attrs:{\"icon\":\"\",\"color\":\"secondary\"},on:{\"click\":_vm.abrirCamara}},'v-btn',attrs,false),on),[_c('v-icon',[_vm._v(\"mdi-camera\")])],1)]}}],null,false,685496383)},[_c('span',[_vm._v(\"Tomar foto\")])])],1)]):_vm._e(),(_vm.subir === true)?_c('div',[_c('v-file-input',{attrs:{\"label\":\"Subir archivo\",\"show-size\":\"\",\"rules\":[_vm.rules3],\"accept\":\".png,.jpg\"},on:{\"change\":_vm.handleFileUpload}})],1):_vm._e(),_c('v-text-field',{attrs:{\"label\":\"Observación\",\"type\":\"text\"},model:{value:(_vm.formData.novedad),callback:function ($$v) {_vm.$set(_vm.formData, \"novedad\", $$v)},expression:\"formData.novedad\"}})],1):_vm._e(),_c('v-autocomplete',{attrs:{\"items\":_vm.usuarios,\"item-text\":\"nombre_usuario\",\"item-value\":\"id_usuario\",\"label\":\"Usuario Rectifica\",\"rules\":[_vm.rules2.required, _vm.rules2.positive]},model:{value:(_vm.formData.usuario),callback:function ($$v) {_vm.$set(_vm.formData, \"usuario\", $$v)},expression:\"formData.usuario\"}})],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"text\":\"\"},on:{\"click\":function($event){return _vm.limpiarDatos();}}},[_vm._v(\" Cancelar \")]),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"text\":\"\",\"disabled\":!_vm.valid},on:{\"click\":_vm.submitRectificado}},[_vm._v(\" Guardar \")])],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"max-width\":\"500px\"},model:{value:(_vm.mostrarCamara),callback:function ($$v) {_vm.mostrarCamara=$$v},expression:\"mostrarCamara\"}},[_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"text-h5\"},[_vm._v(\"Capturar Foto\")])]),_c('v-card-text',[_c('video',{ref:\"video\",attrs:{\"autoplay\":\"\",\"playsinline\":\"\",\"width\":\"100%\",\"height\":\"300px\"}}),_c('canvas',{ref:\"canvas\",staticStyle:{\"display\":\"none\"}})]),_c('v-card-actions',[_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"text\":\"\"},on:{\"click\":_vm.capturarFoto}},[_vm._v(\"Capturar\")]),_c('v-btn',{attrs:{\"color\":\"red darken-1\",\"text\":\"\"},on:{\"click\":_vm.cerrarCamara}},[_vm._v(\"Cancelar\")])],1)],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"max-width\":\"400px\"},model:{value:(_vm.confirmarFoto),callback:function ($$v) {_vm.confirmarFoto=$$v},expression:\"confirmarFoto\"}},[_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"text-h5\"},[_vm._v(\"¿Usar esta foto?\")])]),_c('v-card-text',[_c('img',{attrs:{\"src\":_vm.fotoBase64,\"alt\":\"Captura\",\"width\":\"100%\"}})]),_c('v-card-actions',[_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"text\":\"\"},on:{\"click\":_vm.guardarFoto}},[_vm._v(\"Sí\")]),_c('v-btn',{attrs:{\"color\":\"red darken-1\",\"text\":\"\"},on:{\"click\":_vm.rechazarFoto}},[_vm._v(\"No\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n El sistema calculará el rectificado. Si\r\n vas a bajar más o menos, da clic en\r\n \"Agregar novedad\".\r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n No Añadir Evidencia\r\n \r\n
\r\n
\r\n \r\n Añadir Evidencia\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n mdi-upload\r\n \r\n \r\n Subir foto desde el\r\n computador\r\n \r\n\r\n \r\n \r\n \r\n \r\n mdi-camera\r\n \r\n \r\n Tomar foto\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Cancelar\r\n \r\n \r\n Guardar\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Capturar Foto\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n Capturar\r\n Cancelar\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n ¿Usar esta foto?\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n No\r\n \r\n \r\n \r\n \r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DialogRectificarHR.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DialogRectificarHR.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DialogRectificarHR.vue?vue&type=template&id=f4bcc73a\"\nimport script from \"./DialogRectificarHR.vue?vue&type=script&lang=js\"\nexport * from \"./DialogRectificarHR.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","// Styles\nimport './VCheckbox.sass'\nimport '../../styles/components/_selection-controls.sass'\n\n// Components\nimport VIcon from '../VIcon'\nimport VInput from '../VInput'\n\n// Mixins\nimport Selectable from '../../mixins/selectable'\n\n/* @vue/component */\nexport default Selectable.extend({\n name: 'v-checkbox',\n\n props: {\n indeterminate: Boolean,\n indeterminateIcon: {\n type: String,\n default: '$checkboxIndeterminate',\n },\n offIcon: {\n type: String,\n default: '$checkboxOff',\n },\n onIcon: {\n type: String,\n default: '$checkboxOn',\n },\n },\n\n data () {\n return {\n inputIndeterminate: this.indeterminate,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n 'v-input--selection-controls': true,\n 'v-input--checkbox': true,\n 'v-input--indeterminate': this.inputIndeterminate,\n }\n },\n computedIcon (): string {\n if (this.inputIndeterminate) {\n return this.indeterminateIcon\n } else if (this.isActive) {\n return this.onIcon\n } else {\n return this.offIcon\n }\n },\n // Do not return undefined if disabled,\n // according to spec, should still show\n // a color when disabled and active\n validationState (): string | undefined {\n if (this.isDisabled && !this.inputIndeterminate) return undefined\n if (this.hasError && this.shouldValidate) return 'error'\n if (this.hasSuccess) return 'success'\n if (this.hasColor !== null) return this.computedColor\n return undefined\n },\n },\n\n watch: {\n indeterminate (val) {\n // https://github.com/vuetifyjs/vuetify/issues/8270\n this.$nextTick(() => (this.inputIndeterminate = val))\n },\n inputIndeterminate (val) {\n this.$emit('update:indeterminate', val)\n },\n isActive () {\n if (!this.indeterminate) return\n this.inputIndeterminate = false\n },\n },\n\n methods: {\n genCheckbox () {\n const { title, ...checkboxAttrs } = this.attrs$\n return this.$createElement('div', {\n staticClass: 'v-input--selection-controls__input',\n }, [\n this.$createElement(VIcon, this.setTextColor(this.validationState, {\n props: {\n dense: this.dense,\n dark: this.dark,\n light: this.light,\n },\n }), this.computedIcon),\n this.genInput('checkbox', {\n ...checkboxAttrs,\n 'aria-checked': this.inputIndeterminate\n ? 'mixed'\n : this.isActive.toString(),\n }),\n this.genRipple(this.setTextColor(this.rippleState)),\n ])\n },\n genDefaultSlot () {\n return [\n this.genCheckbox(),\n this.genLabel(),\n ]\n },\n },\n})\n","// Styles\nimport './VAutocomplete.sass'\n\n// Extensions\nimport VSelect, { defaultMenuProps as VSelectMenuProps } from '../VSelect/VSelect'\nimport VTextField from '../VTextField/VTextField'\n\n// Utilities\nimport mergeData from '../../util/mergeData'\nimport {\n getObjectValueByPath,\n getPropertyFromItem,\n keyCodes,\n} from '../../util/helpers'\n\n// Types\nimport { PropType, VNode } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\nconst defaultMenuProps = {\n ...VSelectMenuProps,\n offsetY: true,\n offsetOverflow: true,\n transition: false,\n}\n\n/* @vue/component */\nexport default VSelect.extend({\n name: 'v-autocomplete',\n\n props: {\n autoSelectFirst: {\n type: Boolean,\n default: false,\n },\n filter: {\n type: Function,\n default: (item: any, queryText: string, itemText: string) => {\n return itemText.toLocaleLowerCase().indexOf(queryText.toLocaleLowerCase()) > -1\n },\n } as PropValidator<(item: any, queryText: string, itemText: string) => boolean>,\n hideNoData: Boolean,\n menuProps: {\n type: VSelect.options.props.menuProps.type,\n default: () => defaultMenuProps,\n },\n noFilter: Boolean,\n searchInput: {\n type: String as PropType,\n },\n },\n\n data () {\n return {\n lazySearch: this.searchInput,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...VSelect.options.computed.classes.call(this),\n 'v-autocomplete': true,\n 'v-autocomplete--is-selecting-index': this.selectedIndex > -1,\n }\n },\n computedItems (): object[] {\n return this.filteredItems\n },\n selectedValues (): object[] {\n return this.selectedItems.map(item => this.getValue(item))\n },\n hasDisplayedItems (): boolean {\n return this.hideSelected\n ? this.filteredItems.some(item => !this.hasItem(item))\n : this.filteredItems.length > 0\n },\n currentRange (): number {\n if (this.selectedItem == null) return 0\n\n return String(this.getText(this.selectedItem)).length\n },\n filteredItems (): object[] {\n if (!this.isSearching || this.noFilter || this.internalSearch == null) return this.allItems\n\n return this.allItems.filter(item => {\n const value = getPropertyFromItem(item, this.itemText)\n const text = value != null ? String(value) : ''\n\n return this.filter(item, String(this.internalSearch), text)\n })\n },\n internalSearch: {\n get (): string | null {\n return this.lazySearch\n },\n set (val: any) { // TODO: this should be `string | null` but it breaks lots of other types\n // emit update event only when the new\n // search value is different from previous\n if (this.lazySearch !== val) {\n this.lazySearch = val\n this.$emit('update:search-input', val)\n }\n },\n },\n isAnyValueAllowed (): boolean {\n return false\n },\n isDirty (): boolean {\n return this.searchIsDirty || this.selectedItems.length > 0\n },\n isSearching (): boolean {\n return (\n this.multiple &&\n this.searchIsDirty\n ) || (\n this.searchIsDirty &&\n this.internalSearch !== this.getText(this.selectedItem)\n )\n },\n menuCanShow (): boolean {\n if (!this.isFocused) return false\n\n return this.hasDisplayedItems || !this.hideNoData\n },\n $_menuProps (): object {\n const props = VSelect.options.computed.$_menuProps.call(this);\n (props as any).contentClass = `v-autocomplete__content ${(props as any).contentClass || ''}`.trim()\n return {\n ...defaultMenuProps,\n ...props,\n }\n },\n searchIsDirty (): boolean {\n return this.internalSearch != null &&\n this.internalSearch !== ''\n },\n selectedItem (): any {\n if (this.multiple) return null\n\n return this.selectedItems.find(i => {\n return this.valueComparator(this.getValue(i), this.getValue(this.internalValue))\n })\n },\n listData () {\n const data = VSelect.options.computed.listData.call(this) as any\n\n data.props = {\n ...data.props,\n items: this.virtualizedItems,\n noFilter: (\n this.noFilter ||\n !this.isSearching ||\n !this.filteredItems.length\n ),\n searchInput: this.internalSearch,\n }\n\n return data\n },\n },\n\n watch: {\n filteredItems: 'onFilteredItemsChanged',\n internalValue: 'setSearch',\n isFocused (val) {\n if (val) {\n document.addEventListener('copy', this.onCopy)\n this.$refs.input && this.$refs.input.select()\n } else {\n document.removeEventListener('copy', this.onCopy)\n this.blur()\n this.updateSelf()\n }\n },\n isMenuActive (val) {\n if (val || !this.hasSlot) return\n\n this.lazySearch = null\n },\n items (val, oldVal) {\n // If we are focused, the menu\n // is not active, hide no data is enabled,\n // and items change\n // User is probably async loading\n // items, try to activate the menu\n if (\n !(oldVal && oldVal.length) &&\n this.hideNoData &&\n this.isFocused &&\n !this.isMenuActive &&\n val.length\n ) this.activateMenu()\n },\n searchInput (val: string) {\n this.lazySearch = val\n },\n internalSearch: 'onInternalSearchChanged',\n itemText: 'updateSelf',\n },\n\n created () {\n this.setSearch()\n },\n\n destroyed () {\n document.removeEventListener('copy', this.onCopy)\n },\n\n methods: {\n onFilteredItemsChanged (val: never[], oldVal: never[]) {\n // TODO: How is the watcher triggered\n // for duplicate items? no idea\n if (val === oldVal) return\n\n if (!this.autoSelectFirst) {\n const preSelectedItem = oldVal[this.$refs.menu.listIndex]\n\n if (preSelectedItem) {\n this.setMenuIndex(val.findIndex(i => i === preSelectedItem))\n } else {\n this.setMenuIndex(-1)\n }\n this.$emit('update:list-index', this.$refs.menu.listIndex)\n }\n\n this.$nextTick(() => {\n if (\n !this.internalSearch ||\n (val.length !== 1 &&\n !this.autoSelectFirst)\n ) return\n\n this.$refs.menu.getTiles()\n\n if (this.autoSelectFirst && val.length) {\n this.setMenuIndex(0)\n this.$emit('update:list-index', this.$refs.menu.listIndex)\n }\n })\n },\n onInternalSearchChanged () {\n this.updateMenuDimensions()\n },\n updateMenuDimensions () {\n // Type from menuable is not making it through\n this.isMenuActive && this.$refs.menu && this.$refs.menu.updateDimensions()\n },\n changeSelectedIndex (keyCode: number) {\n // Do not allow changing of selectedIndex\n // when search is dirty\n if (this.searchIsDirty) return\n\n if (this.multiple && keyCode === keyCodes.left) {\n if (this.selectedIndex === -1) {\n this.selectedIndex = this.selectedItems.length - 1\n } else {\n this.selectedIndex--\n }\n } else if (this.multiple && keyCode === keyCodes.right) {\n if (this.selectedIndex >= this.selectedItems.length - 1) {\n this.selectedIndex = -1\n } else {\n this.selectedIndex++\n }\n } else if (keyCode === keyCodes.backspace || keyCode === keyCodes.delete) {\n this.deleteCurrentItem()\n }\n },\n deleteCurrentItem () {\n const curIndex = this.selectedIndex\n const curItem = this.selectedItems[curIndex]\n\n // Do nothing if input or item is disabled\n if (\n !this.isInteractive ||\n this.getDisabled(curItem)\n ) return\n\n const lastIndex = this.selectedItems.length - 1\n\n // Select the last item if\n // there is no selection\n if (\n this.selectedIndex === -1 &&\n lastIndex !== 0\n ) {\n this.selectedIndex = lastIndex\n\n return\n }\n\n const length = this.selectedItems.length\n const nextIndex = curIndex !== length - 1\n ? curIndex\n : curIndex - 1\n const nextItem = this.selectedItems[nextIndex]\n\n if (!nextItem) {\n this.setValue(this.multiple ? [] : null)\n } else {\n this.selectItem(curItem)\n }\n\n this.selectedIndex = nextIndex\n },\n clearableCallback () {\n this.internalSearch = null\n\n VSelect.options.methods.clearableCallback.call(this)\n },\n genInput () {\n const input = VTextField.options.methods.genInput.call(this)\n\n input.data = mergeData(input.data!, {\n attrs: {\n 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),\n autocomplete: getObjectValueByPath(input.data!, 'attrs.autocomplete', 'off'),\n },\n domProps: { value: this.internalSearch },\n })\n\n return input\n },\n genInputSlot () {\n const slot = VSelect.options.methods.genInputSlot.call(this)\n\n slot.data!.attrs!.role = 'combobox'\n\n return slot\n },\n genSelections (): VNode | never[] {\n return this.hasSlot || this.multiple\n ? VSelect.options.methods.genSelections.call(this)\n : []\n },\n onClick (e: MouseEvent) {\n if (!this.isInteractive) return\n\n this.selectedIndex > -1\n ? (this.selectedIndex = -1)\n : this.onFocus()\n\n if (!this.isAppendInner(e.target)) this.activateMenu()\n },\n onInput (e: Event) {\n if (\n this.selectedIndex > -1 ||\n !e.target\n ) return\n\n const target = e.target as HTMLInputElement\n const value = target.value\n\n // If typing and menu is not currently active\n if (target.value) this.activateMenu()\n\n if (!this.multiple && value === '') this.deleteCurrentItem()\n\n this.internalSearch = value\n this.badInput = target.validity && target.validity.badInput\n },\n onKeyDown (e: KeyboardEvent) {\n const keyCode = e.keyCode\n\n if (\n e.ctrlKey ||\n ![keyCodes.home, keyCodes.end].includes(keyCode)\n ) {\n VSelect.options.methods.onKeyDown.call(this, e)\n }\n\n // The ordering is important here\n // allows new value to be updated\n // and then moves the index to the\n // proper location\n this.changeSelectedIndex(keyCode)\n },\n onSpaceDown (e: KeyboardEvent) { /* noop */ },\n onTabDown (e: KeyboardEvent) {\n VSelect.options.methods.onTabDown.call(this, e)\n this.updateSelf()\n },\n onUpDown (e: Event) {\n // Prevent screen from scrolling\n e.preventDefault()\n\n // For autocomplete / combobox, cycling\n // interfers with native up/down behavior\n // instead activate the menu\n this.activateMenu()\n },\n selectItem (item: object) {\n VSelect.options.methods.selectItem.call(this, item)\n this.setSearch()\n },\n setSelectedItems () {\n VSelect.options.methods.setSelectedItems.call(this)\n\n // #4273 Don't replace if searching\n // #4403 Don't replace if focused\n if (!this.isFocused) this.setSearch()\n },\n setSearch () {\n // Wait for nextTick so selectedItem\n // has had time to update\n this.$nextTick(() => {\n if (\n !this.multiple ||\n !this.internalSearch ||\n !this.isMenuActive\n ) {\n this.internalSearch = (\n !this.selectedItems.length ||\n this.multiple ||\n this.hasSlot\n )\n ? null\n : this.getText(this.selectedItem)\n }\n })\n },\n updateSelf () {\n if (\n !this.searchIsDirty &&\n !this.internalValue\n ) return\n\n if (\n !this.multiple &&\n !this.valueComparator(\n this.internalSearch,\n this.getValue(this.internalValue)\n )\n ) {\n this.setSearch()\n }\n },\n hasItem (item: any): boolean {\n return this.selectedValues.indexOf(this.getValue(item)) > -1\n },\n onCopy (event: ClipboardEvent) {\n if (this.selectedIndex === -1) return\n\n const currentItem = this.selectedItems[this.selectedIndex]\n const currentItemText = this.getText(currentItem)\n event.clipboardData?.setData('text/plain', currentItemText)\n event.clipboardData?.setData('text/vnd.vuetify.autocomplete.item+plain', currentItemText)\n event.preventDefault()\n },\n },\n})\n","// Components\nimport VInput from '../../components/VInput'\n\n// Mixins\nimport Rippleable from '../rippleable'\nimport Comparable from '../comparable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\nexport function prevent (e: Event) {\n e.preventDefault()\n}\n\n/* @vue/component */\nexport default mixins(\n VInput,\n Rippleable,\n Comparable\n).extend({\n name: 'selectable',\n\n model: {\n prop: 'inputValue',\n event: 'change',\n },\n\n props: {\n id: String,\n inputValue: null as any,\n falseValue: null as any,\n trueValue: null as any,\n multiple: {\n type: Boolean,\n default: null,\n },\n label: String,\n },\n\n data () {\n return {\n hasColor: this.inputValue,\n lazyValue: this.inputValue,\n }\n },\n\n computed: {\n computedColor (): string | undefined {\n if (!this.isActive) return undefined\n if (this.color) return this.color\n if (this.isDark && !this.appIsDark) return 'white'\n return 'primary'\n },\n isMultiple (): boolean {\n return this.multiple === true || (this.multiple === null && Array.isArray(this.internalValue))\n },\n isActive (): boolean {\n const value = this.value\n const input = this.internalValue\n\n if (this.isMultiple) {\n if (!Array.isArray(input)) return false\n\n return input.some(item => this.valueComparator(item, value))\n }\n\n if (this.trueValue === undefined || this.falseValue === undefined) {\n return value\n ? this.valueComparator(value, input)\n : Boolean(input)\n }\n\n return this.valueComparator(input, this.trueValue)\n },\n isDirty (): boolean {\n return this.isActive\n },\n rippleState (): string | undefined {\n return !this.isDisabled && !this.validationState\n ? undefined\n : this.validationState\n },\n },\n\n watch: {\n inputValue (val) {\n this.lazyValue = val\n this.hasColor = val\n },\n },\n\n methods: {\n genLabel () {\n const label = VInput.options.methods.genLabel.call(this)\n\n if (!label) return label\n\n label!.data!.on = {\n // Label shouldn't cause the input to focus\n click: prevent,\n }\n\n return label\n },\n genInput (type: string, attrs: object) {\n return this.$createElement('input', {\n attrs: Object.assign({\n 'aria-checked': this.isActive.toString(),\n disabled: this.isDisabled,\n id: this.computedId,\n role: type,\n type,\n }, attrs),\n domProps: {\n value: this.value,\n checked: this.isActive,\n },\n on: {\n blur: this.onBlur,\n change: this.onChange,\n focus: this.onFocus,\n keydown: this.onKeydown,\n click: prevent,\n },\n ref: 'input',\n })\n },\n onClick (e: Event) {\n this.onChange()\n this.$emit('click', e)\n },\n onChange () {\n if (!this.isInteractive) return\n\n const value = this.value\n let input = this.internalValue\n\n if (this.isMultiple) {\n if (!Array.isArray(input)) {\n input = []\n }\n\n const length = input.length\n\n input = input.filter((item: any) => !this.valueComparator(item, value))\n\n if (input.length === length) {\n input.push(value)\n }\n } else if (this.trueValue !== undefined && this.falseValue !== undefined) {\n input = this.valueComparator(input, this.trueValue) ? this.falseValue : this.trueValue\n } else if (value) {\n input = this.valueComparator(input, value) ? null : value\n } else {\n input = !input\n }\n\n this.validate(true, input)\n this.internalValue = input\n this.hasColor = input\n },\n onFocus (e: FocusEvent) {\n this.isFocused = true\n this.$emit('focus', e)\n },\n onBlur (e: FocusEvent) {\n this.isFocused = false\n this.$emit('blur', e)\n },\n /** @abstract */\n onKeydown (e: Event) {},\n },\n})\n"],"sourceRoot":""}