{"version":3,"sources":["webpack:///./src/features/produto/produto-service.ts","webpack:///../../../src/components/VAutocomplete/VAutocomplete.ts","webpack:///../../../src/components/VCombobox/VCombobox.ts","webpack:///./src/features/produto/produto-inserir-editar.vue?7159","webpack:///../../../src/components/VForm/VForm.ts","webpack:///../../../src/mixins/rippleable/index.ts","webpack:///./node_modules/core-js/modules/es.string.ends-with.js","webpack:///../../../src/components/VTextarea/VTextarea.ts","webpack:///./src/base/validations.ts","webpack:///./src/features/produto/produto-inserir-editar.vue?1849","webpack:///./src/features/produto/produto-inserir-editar.vue?5aba","webpack:///./src/features/produto/produto-inserir-editar.vue?00d0","webpack:///./src/features/produto/produto-inserir-editar.vue","webpack:///../../../src/components/VSwitch/VSwitch.ts","webpack:///./src/features/licenca/licenca-service.ts","webpack:///./src/features/servico/servico-service.ts","webpack:///../../../src/mixins/selectable/index.ts"],"names":["ProdutoService","query","configure","getAxios","get","params","then","e","data","command","post","put","defaultMenuProps","offsetY","offsetOverflow","transition","VSelect","name","props","allowOverflow","type","default","autoSelectFirst","filter","itemText","queryText","hideNoData","menuProps","noFilter","searchInput","undefined","lazySearch","this","computed","classes","selectedIndex","computedItems","selectedValues","selectedItems","map","item","hasDisplayedItems","hideSelected","filteredItems","some","length","currentRange","selectedItem","String","getText","internalSearch","allItems","set","isAnyValueAllowed","isDirty","searchIsDirty","isSearching","multiple","menuCanShow","$_menuProps","find","i","listData","items","watch","internalValue","isFocused","document","$refs","input","isMenuActive","val","oldVal","activateMenu","created","methods","onFilteredItemsChanged","onInternalSearchChanged","updateMenuDimensions","menu","changeSelectedIndex","keyCode","deleteCurrentItem","index","currentItem","getDisabled","newIndex","clearableCallback","genInput","VTextField","genInputSlot","slot","genSelections","hasSlot","onClick","onInput","target","value","onKeyDown","onSpaceDown","onTabDown","onUpDown","selectItem","setSelectedItems","setSearch","updateSelf","valueComparator","getValue","hasItem","indexOf","onCopy","currentItemText","event","delimiters","returnObject","editingIndex","computedCounterValue","$slots","delimiter","d","genChipSelection","chip","dblclick","onChipInput","onEnterDown","selectionStart","getMenuIndex","setValue","updateEditing","updateCombobox","isUsingSlot","Boolean","$scopedSlots","updateTags","menuIndex","onPaste","pastedItemText","findExistingIndex","inheritAttrs","lazyValidation","inputs","watchers","errorBag","handler","errors","Object","deep","immediate","watchInput","watcher","_uid","valid","shouldValidate","validate","reset","resetErrorBag","setTimeout","resetValidation","register","unregister","found","unwatch","render","h","staticClass","attrs","novalidate","attrs$","on","submit","directives","ripple","genRipple","center","click","onChange","$createElement","$","getOwnPropertyDescriptor","f","toLength","notARegExp","requireObjectCoercible","correctIsRegExpLogic","IS_PURE","nativeEndsWith","endsWith","min","Math","CORRECT_IS_REGEXP_LOGIC","MDN_POLYFILL_BUG","descriptor","prototype","writable","proto","forced","searchString","that","endPosition","arguments","len","end","search","call","slice","baseMixins","autoGrow","noResize","rowHeight","Number","validator","v","isNaN","parseFloat","rows","parseInt","noResizeHandle","lazyValue","$nextTick","mounted","calculateInputHeight","height","minHeight","getParam","req","Array","isArray","Date","getTime","_","required","countDescription","count","maxLength","max","maxValue","minLength","minValue","decimalRegex","decimal","test","toString","_vm","_h","_c","_self","areaAtual","_v","_e","carregando","ref","$event","preventDefault","salvarproduto","visualizando","rules","codigo","model","produto","callback","$$v","$set","expression","classificacao","_n","titulo","subtitulo","detalhes","observacoes","valor","tipo","tipos","unidade","obterUnidade","servicos","scopedSlots","_u","key","fn","parent","selected","_b","_s","obterServicoDescricao","_l","incluso","filhoId","produtos","adicionarInclusoEmBranco","obterProdutoTitulo","obterProdutoSubtitulo","quantidadeInclusa","quantidadeMaxima","exibirNoCarrinho","stopPropagation","removerIncluso","licencas","voltar","cancelar","staticRenderFns","ultimoId","Common","Domain","ProdutoTipoEnum","Simples","text","Recorrente","unidadesSimples","ProdutoUnidadeEnum","Unidade","Mes","Guia","Hora","ClassificacaoEnum","PlanoPrincipalDeEmpresas","Funcionarios","Outros","unidadesRecorrete","$summary","produtoTipo","obterParaEditar","id","produtoId","obterServicos","result","itens","ativo","possuiGrupo","p","header","categoriaTitulo","push","divider","descricao","servico","listar","obterProdutos","$confirm","open","title","message","excluir","inclusos","splice","$snackbars","color","possuiEmBranco","listarParaProduto","obterAreaPadrao","listarServicos","listarProdutos","obterLicencas","servicoIds","visivel","pop","$action","processSubmit","action","editar","inserir","goTo","form","cancelado","component","VBtn","VChip","VCol","VCombobox","VContainer","VForm","VIcon","VLabel","VListItemAction","VProgressCircular","VRow","VSwitch","VTextarea","Touch","inset","loading","flat","role","validationState","hasError","hasColor","switchData","setTextColor","class","themeClasses","genDefaultSlot","genSwitch","left","right","onSwipeRight","genProgress","progress","size","width","indeterminate","onSwipeLeft","onKeydown","LicencaService","r","ServicoService","prop","inputValue","falseValue","trueValue","label","computedColor","isDark","isMultiple","isActive","genLabel","disabled","domProps","checked","blur","change","focus","keydown","onBlur","onFocus"],"mappings":"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","file":"js/chunk-621d40f8.84617df5.js","sourcesContent":["import Api from '../../base/api.typings';\nimport axiosConfiguration from '../../base/axios-configuration';\n\nclass ProdutoService {\n async listar(query: Api.App.Server.Produto.Listar.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Produto/Listar', { params: query }).then(e => e.data);\n }\n\n async listarPorClassificacao(query: Api.App.Server.Produto.ListarPorClassificacao.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Produto/ListarPorClassificacao', { params: query }).then(e => e.data);\n }\n\n async excluir(command: Api.App.Server.Produto.Excluir.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().post('/api/Produto/Excluir', command);\n }\n\n async inserir(command: Api.App.Server.Produto.InserirEditar.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().post('/api/Produto/Inserir', command);\n }\n\n async editar(command: Api.App.Server.Produto.InserirEditar.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().put('/api/Produto/Editar', command);\n }\n\n async obterParaEditar(query: Api.App.Server.Produto.InserirEditar.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Produto/ObterParaEditar', { params: query }).then(e => e.data);\n }\n\n async ocultarVisualizar(command: Api.App.Server.Produto.OcultarVisualizar.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().post('/api/Produto/OcultarVisualizar', command);\n }\n}\nexport default new ProdutoService();","// Styles\nimport './VAutocomplete.sass'\n\n// Extensions\nimport VSelect, { defaultMenuProps as VSelectMenuProps } from '../VSelect/VSelect'\nimport VTextField from '../VTextField/VTextField'\n\n// Utilities\nimport { keyCodes } from '../../util/helpers'\n\n// Types\nimport { PropType } from 'vue'\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 allowOverflow: {\n type: Boolean,\n default: true,\n },\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 },\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 default: undefined,\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 => this.filter(item, String(this.internalSearch), String(this.getText(item))))\n },\n internalSearch: {\n get (): string | undefined {\n return this.lazySearch\n },\n set (val: any) {\n this.lazySearch = val\n\n this.$emit('update:search-input', val)\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.updateSelf()\n }\n },\n isMenuActive (val) {\n if (val || !this.hasSlot) return\n\n this.lazySearch = undefined\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 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 this.setMenuIndex(-1)\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 this.setMenuIndex(0)\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 if (this.readonly) return\n\n const index = this.selectedItems.length - 1\n\n if (this.selectedIndex === -1 && index !== 0) {\n this.selectedIndex = index\n return\n }\n\n const currentItem = this.selectedItems[this.selectedIndex]\n\n if (this.getDisabled(currentItem)) return\n\n const newIndex = this.selectedIndex === index\n ? this.selectedIndex - 1\n : this.selectedItems[this.selectedIndex + 1]\n ? this.selectedIndex\n : -1\n\n if (newIndex === -1) {\n this.setValue(this.multiple ? [] : undefined)\n } else {\n this.selectItem(currentItem)\n }\n\n this.selectedIndex = newIndex\n },\n clearableCallback () {\n this.internalSearch = undefined\n\n VSelect.options.methods.clearableCallback.call(this)\n },\n genInput () {\n const input = VTextField.options.methods.genInput.call(this)\n\n input.data = input.data || {}\n input.data.attrs = input.data.attrs || {}\n input.data.attrs.autocomplete = input.data.attrs.autocomplete || 'off'\n\n input.data.domProps = input.data.domProps || {}\n input.data.domProps.value = this.internalSearch\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 () {\n return this.hasSlot || this.multiple\n ? VSelect.options.methods.genSelections.call(this)\n : []\n },\n onClick () {\n if (this.isDisabled) return\n\n this.selectedIndex > -1\n ? (this.selectedIndex = -1)\n : this.onFocus()\n\n 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 this.internalSearch = value\n this.badInput = target.validity && target.validity.badInput\n },\n onKeyDown (e: KeyboardEvent) {\n const keyCode = e.keyCode\n\n VSelect.options.methods.onKeyDown.call(this, e)\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 () {\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 (!this.searchIsDirty &&\n !this.internalValue\n ) return\n\n if (!this.valueComparator(\n this.internalSearch,\n this.getValue(this.internalValue)\n )) {\n this.setSearch()\n }\n },\n hasItem (item: any) {\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","// Styles\nimport '../VAutocomplete/VAutocomplete.sass'\n\n// Extensions\nimport VSelect from '../VSelect/VSelect'\nimport VAutocomplete from '../VAutocomplete/VAutocomplete'\n\n// Utils\nimport { keyCodes } from '../../util/helpers'\n\n// Types\nimport { PropType } from 'vue'\n\n/* @vue/component */\nexport default VAutocomplete.extend({\n name: 'v-combobox',\n\n props: {\n delimiters: {\n type: Array as PropType,\n default: () => ([]),\n },\n returnObject: {\n type: Boolean,\n default: true,\n },\n },\n\n data: () => ({\n editingIndex: -1,\n }),\n\n computed: {\n computedCounterValue (): number {\n return this.multiple\n ? this.selectedItems.length\n : (this.internalSearch || '').toString().length\n },\n hasSlot (): boolean {\n return VSelect.options.computed.hasSlot.call(this) || this.multiple\n },\n isAnyValueAllowed (): boolean {\n return true\n },\n menuCanShow (): boolean {\n if (!this.isFocused) return false\n\n return this.hasDisplayedItems ||\n (!!this.$slots['no-data'] && !this.hideNoData)\n },\n },\n\n methods: {\n onInternalSearchChanged (val: any) {\n if (\n val &&\n this.multiple &&\n this.delimiters.length\n ) {\n const delimiter = this.delimiters.find(d => val.endsWith(d))\n if (delimiter != null) {\n this.internalSearch = val.slice(0, val.length - delimiter.length)\n this.updateTags()\n }\n }\n\n this.updateMenuDimensions()\n },\n genInput () {\n const input = VAutocomplete.options.methods.genInput.call(this)\n\n delete input.data!.attrs!.name\n input.data!.on!.paste = this.onPaste\n\n return input\n },\n genChipSelection (item: object, index: number) {\n const chip = VSelect.options.methods.genChipSelection.call(this, item, index)\n\n // Allow user to update an existing value\n if (this.multiple) {\n chip.componentOptions!.listeners! = {\n ...chip.componentOptions!.listeners!,\n dblclick: () => {\n this.editingIndex = index\n this.internalSearch = this.getText(item)\n this.selectedIndex = -1\n },\n }\n }\n\n return chip\n },\n onChipInput (item: object) {\n VSelect.options.methods.onChipInput.call(this, item)\n\n this.editingIndex = -1\n },\n // Requires a manual definition\n // to overwrite removal in v-autocomplete\n onEnterDown (e: Event) {\n e.preventDefault()\n\n this.$nextTick(() => {\n // If has menu index, let v-select-list handle\n if (this.getMenuIndex() > -1) return\n this.updateSelf()\n })\n },\n onFilteredItemsChanged (val: never[], oldVal: never[]) {\n if (!this.autoSelectFirst) return\n\n VAutocomplete.options.methods.onFilteredItemsChanged.call(this, val, oldVal)\n },\n onKeyDown (e: KeyboardEvent) {\n const keyCode = e.keyCode\n\n VSelect.options.methods.onKeyDown.call(this, e)\n\n // If user is at selection index of 0\n // create a new tag\n if (this.multiple &&\n keyCode === keyCodes.left &&\n this.$refs.input.selectionStart === 0\n ) {\n this.updateSelf()\n } else if (keyCode === keyCodes.enter) {\n this.onEnterDown(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 onTabDown (e: KeyboardEvent) {\n // When adding tags, if searching and\n // there is not a filtered options,\n // add the value to the tags list\n if (this.multiple &&\n this.internalSearch &&\n this.getMenuIndex() === -1\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n return this.updateTags()\n }\n\n VAutocomplete.options.methods.onTabDown.call(this, e)\n },\n selectItem (item: object) {\n // Currently only supports items:\n if (this.editingIndex > -1) {\n this.updateEditing()\n } else {\n VAutocomplete.options.methods.selectItem.call(this, item)\n }\n },\n setSelectedItems () {\n if (this.internalValue == null ||\n this.internalValue === ''\n ) {\n this.selectedItems = []\n } else {\n this.selectedItems = this.multiple ? this.internalValue : [this.internalValue]\n }\n },\n setValue (value?: any) {\n VSelect.options.methods.setValue.call(this, value != null ? value : this.internalSearch)\n },\n updateEditing () {\n const value = this.internalValue.slice()\n value[this.editingIndex] = this.internalSearch\n\n this.setValue(value)\n\n this.editingIndex = -1\n },\n updateCombobox () {\n const isUsingSlot = Boolean(this.$scopedSlots.selection) || this.hasChips\n\n // If search is not dirty and is\n // using slot, do nothing\n if (isUsingSlot && !this.searchIsDirty) return\n\n // The internal search is not matching\n // the internal value, update the input\n if (this.internalSearch !== this.getText(this.internalValue)) this.setValue()\n\n // Reset search if using slot\n // to avoid a double input\n if (isUsingSlot) this.internalSearch = undefined\n },\n updateSelf () {\n this.multiple ? this.updateTags() : this.updateCombobox()\n },\n updateTags () {\n const menuIndex = this.getMenuIndex()\n\n // If the user is not searching\n // and no menu item is selected\n // do nothing\n if (menuIndex < 0 &&\n !this.searchIsDirty\n ) return\n\n if (this.editingIndex > -1) {\n return this.updateEditing()\n }\n\n const index = this.selectedItems.indexOf(this.internalSearch)\n // If it already exists, do nothing\n // this might need to change to bring\n // the duplicated item to the last entered\n if (index > -1) {\n const internalValue = this.internalValue.slice()\n internalValue.splice(index, 1)\n\n this.setValue(internalValue)\n }\n\n // If menu index is greater than 1\n // the selection is handled elsewhere\n // TODO: find out where\n if (menuIndex > -1) return (this.internalSearch = null)\n\n this.selectItem(this.internalSearch)\n this.internalSearch = null\n },\n onPaste (event: ClipboardEvent) {\n if (!this.multiple || this.searchIsDirty) return\n\n const pastedItemText = event.clipboardData!.getData('text/vnd.vuetify.autocomplete.item+plain')\n if (pastedItemText && this.findExistingIndex(pastedItemText as any) === -1) {\n event.preventDefault()\n VSelect.options.methods.selectItem.call(this, pastedItemText as any)\n }\n },\n },\n})\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/vuetify-loader/lib/loader.js??ref--19-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./produto-inserir-editar.vue?vue&type=style&index=0&id=e4558c46&scoped=true&lang=css&\"","// 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'\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 inheritAttrs: false,\n\n props: {\n lazyValidation: 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 }, this.$slots.default)\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 data.on = Object.assign({\n click: this.onChange,\n }, this.$listeners)\n\n return this.$createElement('div', data)\n },\n onChange () {},\n },\n})\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeEndsWith = ''.endsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('endsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'endsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.endsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.endswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : min(toLength(endPosition), len);\n var search = String(searchString);\n return nativeEndsWith\n ? nativeEndsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n","// Styles\nimport './VTextarea.sass'\n\n// Extensions\nimport VTextField from '../VTextField/VTextField'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport Vue from 'vue'\n\ninterface options extends Vue {\n $refs: {\n input: HTMLTextAreaElement\n }\n}\n\nconst baseMixins = mixins\n>(\n VTextField\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-textarea',\n\n props: {\n autoGrow: Boolean,\n noResize: Boolean,\n rowHeight: {\n type: [Number, String],\n default: 24,\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n rows: {\n type: [Number, String],\n default: 5,\n validator: (v: any) => !isNaN(parseInt(v, 10)),\n },\n },\n\n computed: {\n classes (): object {\n return {\n 'v-textarea': true,\n 'v-textarea--auto-grow': this.autoGrow,\n 'v-textarea--no-resize': this.noResizeHandle,\n ...VTextField.options.computed.classes.call(this),\n }\n },\n noResizeHandle (): boolean {\n return this.noResize || this.autoGrow\n },\n },\n\n watch: {\n lazyValue () {\n this.autoGrow && this.$nextTick(this.calculateInputHeight)\n },\n rowHeight () {\n this.autoGrow && this.$nextTick(this.calculateInputHeight)\n },\n },\n\n mounted () {\n setTimeout(() => {\n this.autoGrow && this.calculateInputHeight()\n }, 0)\n },\n\n methods: {\n calculateInputHeight () {\n const input = this.$refs.input\n if (!input) return\n\n input.style.height = '0'\n const height = input.scrollHeight\n const minHeight = parseInt(this.rows, 10) * parseFloat(this.rowHeight)\n // This has to be done ASAP, waiting for Vue\n // to update the DOM causes ugly layout jumping\n input.style.height = Math.max(minHeight, height) + 'px'\n },\n genInput () {\n const input = VTextField.options.methods.genInput.call(this)\n\n input.tag = 'textarea'\n delete input.data!.attrs!.type\n input.data!.attrs!.rows = this.rows\n\n return input\n },\n onInput (e: Event) {\n VTextField.options.methods.onInput.call(this, e)\n this.autoGrow && this.calculateInputHeight()\n },\n onKeyDown (e: KeyboardEvent) {\n // Prevents closing of a\n // dialog when pressing\n // enter\n if (this.isFocused && e.keyCode === 13) {\n e.stopPropagation()\n }\n\n this.$emit('keydown', e)\n },\n },\n})\n","type DynamicParam = () => T;\n\ntype Param = T | DynamicParam;\n\n/**\n * Retorna o valor de um parâmetro. Se o parâmetro for uma função, então ela é executada e seu resultado é retornado.\n * @param params\n */\nfunction getParam(params: Param): T {\n if (typeof params === 'function')\n return (params as any)();\n\n return params;\n}\n\n/**\n * Retorna true se o valor de um campo for considerado como preenchido.\n * @param value\n */\nconst req = (value: any) => {\n if (Array.isArray(value)) return !!value.length\n if (value === undefined || value === null) {\n return false\n }\n\n if (value === false) {\n return true\n }\n\n if (value instanceof Date) {\n // invalid date won't pass\n return !isNaN(value.getTime())\n }\n\n if (typeof value === 'object') {\n for (let _ in value) return true\n return false\n }\n\n return !!String(value).length\n}\n\n/**\n * Obriga o preenchimento do campo.\n * @param value\n */\nexport function required(value: any) {\n if (!req(value))\n return 'Preencha este campo.';\n\n return false;\n}\n\n/**\n * Obriga o preenchimento do campo somente se condition for válida.\n * @param condition Condição em que o campo deve ser preenchido.\n */\nexport function requiredIf(condition: Param) {\n return (value: any) => {\n if (getParam(condition))\n return required(value);\n\n return false;\n }\n}\n\n/**\n * Obriga o preenchimento do campo a não ser que a condição seja válida.\n * @param condition\n */\nexport function requiredUnless(condition: Param) {\n return (value: any) => {\n if (!getParam(condition))\n return required(value);\n\n return false;\n }\n}\n\nfunction countDescription(count: number) {\n return count == 1 ? '1 caracter' : `${count} caracteres`;\n}\n\n/**\n * Obriga um tamanho máximo de texto.\n * @param max Quantidade máxima de caracteres. Pode ser passada uma função para que a quantidade seja dinâmica.\n */\nexport function maxLength(max: Param) {\n return (value: string) => {\n if (!req(value))\n return false;\n\n let maxValue = getParam(max);\n\n if (typeof value === 'string' && value.length > maxValue)\n return `Tamanho máximo de ${countDescription(maxValue)}, você preencheu ${countDescription(value.length)}`;\n\n return false;\n };\n}\n\n/**\n * Obriga um tamanho mínimo de texto.\n * @param min Quantidade mínima de caracteres. Pode ser passada uma função para que a configuração seja dinâmica.\n */\nexport function minLength(min: Param) {\n return (value: string) => {\n if (!req(value))\n return false;\n\n let minValue = getParam(min);\n\n if (!req(value) || typeof value === 'string' && value.length < minValue)\n return `Tamanho mínimo de ${countDescription(minValue)} caracteres, você preencheu ${countDescription(value.length)}.`;\n\n return false;\n };\n}\n\nconst alphaRegex = /^[a-zA-Z]*$/;\n\n/**\n * Obriga somente letras (sem espaço e acentuação).\n * @param value\n */\nexport function alpha(value: string) {\n if (req(value) && !alphaRegex.test(value))\n return 'Informe somente letras.';\n\n return false;\n}\n\nconst alphaNumRegex = /^[a-zA-Z0-9]*$/;\n\n/**\n * Obriga somente letras e números (sem espaço e acentuação).\n * @param value\n */\nexport function alphaNum(value: string) {\n if (req(value) && !alphaNumRegex.test(value))\n return 'Informe somente letras ou números.';\n\n return false;\n}\n\nconst emailRegex = /(^$|^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$)/\n\n/**\n * Obriga que o texto esteja em formato de email.\n * @param value\n */\nexport function email(value: string) {\n if (req(value) && !emailRegex.test(value))\n return 'E-mail inválido.';\n\n return false;\n}\n\n/**\n * Obriga que o valor esteja entre os parâmetros passados.\n * @param min Valor mínimo (>=). Pode ser passada uma função para que a configuração seja dinâmica.\n * @param max Valor máximo (<=). Pode ser passada uma função para que a configuração seja dinâmica.\n */\nexport function between(min: Param, max: Param) {\n return (value: string) => {\n if (!req(value))\n return false;\n\n let minValue = getParam(min);\n let maxValue = getParam(max);\n\n if (+value < +minValue || +value > +maxValue)\n return `Deve estar entre ${minValue} e ${maxValue}.`;\n\n return false;\n };\n}\n\n/**\n * Obriga que o valor seja maior ou igual ao parâmetro.\n * @param min Valor mínimo. Pode ser passada uma função para que a configuração seja dinâmica.\n */\nexport function minValue(min: Param) {\n return (value: string) => {\n if (!req(value))\n return false;\n\n let minValue = getParam(min);\n\n if (+value < +minValue)\n return `Deve ser maior ou igual a ${minValue}.`;\n\n return false;\n };\n}\n\n/**\n * Obriga que o valor seja menor ou igual ao parâmetro.\n * @param max Valor máximo. Pode ser passada uma função para que a configuração seja dinâmica.\n */\nexport function maxValue(max: Param) {\n return (value: string) => {\n if (!req(value))\n return false;\n\n let maxValue = getParam(max);\n\n if (+value > +maxValue)\n return `Deve ser menor ou igual a ${maxValue}.`;\n\n return false;\n };\n}\n\nconst decimalRegex = /^[-]?\\d*(\\.\\d+)?$/;\n\n/**\n * Obriga um decimal válido (formato en-US).\n * @param value\n */\nexport function decimal(value: any) {\n if (req(value) && !decimalRegex.test(value.toString() as any))\n return 'Número decimal inválido.';\n\n return false;\n}\n\nconst decimalPtBrRegex = /^[-]?\\d*(\\,\\d+)?$/;\n\n/**\n * Obriga um decimal válido (formato pt-BR).\n * @param value\n */\nexport function decimalPtBr(value: any) {\n if (req(value) && !decimalPtBrRegex.test(value.toString() as any))\n return 'Número decimal inválido.';\n\n return false;\n}\n\nconst integerRegex = /(^[0-9]*$)|(^-[0-9]+$)/;\n\n/**\n * Obriga um número inteiro (incluindo número negativo)\n * @param value\n */\nexport function integer(value: number) {\n if (req(value) && !integerRegex.test(value as any))\n return 'Número inteiro inválido.';\n\n return false;\n}\n\nconst numericRegex = /^[0-9]*$/;\n\n/**\n * Obriga um número inteiro positivo.\n * @param value\n */\nexport function numeric(value: number) {\n if (req(value) && !numericRegex.test(value as any))\n return 'Número inválido.';\n\n return false;\n}\n\n/**\n * Obriga que o valor esteja de acordo com a expressão regurar\n * @param regex\n */\nexport function match(regex: Param) {\n return (value: string) => {\n let regexValue = getParam(regex);\n\n if (req(value) && !regexValue.test(value as any))\n return 'Formato inválido.';\n\n return false;\n };\n}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('header-component'),(_vm.areaAtual == 'admin')?_c('v-container',{staticClass:\"t-fonte spacing-playground pa-6\",attrs:{\"fluid\":\"\"}},[_c('div',[_c('span',{staticClass:\"t-title-page t-item-azul\"},[_vm._v(\"Cadastrar\")])]),_c('div',{staticClass:\"pt-1 pb-9\"},[_c('span',{staticClass:\"t-rota\"},[_vm._v(\"Cadastrar >\")]),_c('span',{staticClass:\"t-rota-atual\"},[_vm._v(\"produto\")])]),_c('div',{staticClass:\"t-chamado-divider\"}),(_vm.carregando)?_c('div',{staticClass:\"my-6\"},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"primary\"}})],1):_vm._e(),(!_vm.carregando)?_c('v-form',{ref:\"form\",attrs:{\"autocomplete\":\"off\"},on:{\"submit\":function($event){$event.preventDefault();return _vm.salvarproduto($event)}}},[_c('div',{staticClass:\"mt-7\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"8\",\"sm\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Código\")])],1),_c('v-text-field',{attrs:{\"type\":\"text\",\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando,\"rules\":_vm.rules.codigo},model:{value:(_vm.produto.codigo),callback:function ($$v) {_vm.$set(_vm.produto, \"codigo\", $$v)},expression:\"produto.codigo\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"4\",\"sm\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Classificação\")])],1),_c('v-select',{attrs:{\"depressed\":\"\",\"rules\":_vm.rules.classificacao,\"items\":_vm.classificacao,\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando},model:{value:(_vm.produto.classificacao),callback:function ($$v) {_vm.$set(_vm.produto, \"classificacao\", _vm._n($$v))},expression:\"produto.classificacao\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Título\")])],1),_c('v-text-field',{attrs:{\"type\":\"text\",\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando,\"rules\":_vm.rules.titulo},model:{value:(_vm.produto.titulo),callback:function ($$v) {_vm.$set(_vm.produto, \"titulo\", $$v)},expression:\"produto.titulo\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Subtítulo\")])],1),_c('v-text-field',{attrs:{\"type\":\"text\",\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando,\"rules\":_vm.rules.subtitulo},model:{value:(_vm.produto.subtitulo),callback:function ($$v) {_vm.$set(_vm.produto, \"subtitulo\", $$v)},expression:\"produto.subtitulo\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Detalhes\")])],1),_c('v-textarea',{attrs:{\"type\":\"text\",\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando,\"auto-grow\":\"\",\"rules\":_vm.rules.detalhes},model:{value:(_vm.produto.detalhes),callback:function ($$v) {_vm.$set(_vm.produto, \"detalhes\", $$v)},expression:\"produto.detalhes\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Observações\")])],1),_c('v-textarea',{attrs:{\"type\":\"text\",\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando,\"auto-grow\":\"\",\"rules\":_vm.rules.observacoes},model:{value:(_vm.produto.observacoes),callback:function ($$v) {_vm.$set(_vm.produto, \"observacoes\", $$v)},expression:\"produto.observacoes\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"3\",\"sm\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Valor\")])],1),_c('v-text-field',{attrs:{\"type\":\"number\",\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando,\"rules\":_vm.rules.valor},model:{value:(_vm.produto.valor),callback:function ($$v) {_vm.$set(_vm.produto, \"valor\", _vm._n($$v))},expression:\"produto.valor\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"3\",\"sm\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Tipo\")])],1),_c('v-select',{attrs:{\"depressed\":\"\",\"rules\":_vm.rules.tipo,\"items\":_vm.tipos,\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando},model:{value:(_vm.produto.tipo),callback:function ($$v) {_vm.$set(_vm.produto, \"tipo\", _vm._n($$v))},expression:\"produto.tipo\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"3\",\"sm\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Unidade\")])],1),_c('v-select',{attrs:{\"depressed\":\"\",\"rules\":_vm.rules.unidade,\"items\":_vm.obterUnidade(_vm.produto.tipo),\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando},model:{value:(_vm.produto.unidade),callback:function ($$v) {_vm.$set(_vm.produto, \"unidade\", _vm._n($$v))},expression:\"produto.unidade\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"t-color-black\"},[_c('v-label',[_vm._v(\"Selecione os serviços\")])],1),_c('v-combobox',{attrs:{\"items\":_vm.servicos,\"return-object\":false,\"no-data-text\":\"Sem novos itens em serviços\",\"item-value\":\"id\",\"hide-selected\":\"\",\"multiple\":\"\",\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando},scopedSlots:_vm._u([{key:\"selection\",fn:function(ref){\n var attrs = ref.attrs;\n var item = ref.item;\n var parent = ref.parent;\n var selected = ref.selected;\nreturn [_c('v-chip',_vm._b({key:item,attrs:{\"input-value\":selected,\"close\":\"\"},on:{\"click:close\":function($event){return parent.selectItem(item)}}},'v-chip',attrs,false),[_c('span',{staticClass:\"pr-2\"},[_vm._v(\" \"+_vm._s(_vm.obterServicoDescricao(item))+\" \")])])]}}],null,false,1495430580),model:{value:(_vm.produto.servicoIds),callback:function ($$v) {_vm.$set(_vm.produto, \"servicoIds\", $$v)},expression:\"produto.servicoIds\"}})],1)],1),_c('h5',{staticClass:\"t-titulo-categoria t-item-azul mt-7 px-2 py-4\"},[_vm._v(\" Produtos \")]),_c('v-row',{staticClass:\"t-color-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"4\",\"sm\":\"3\"}},[_c('v-label',[_vm._v(\"Produtos Inclusos\")])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"2\",\"sm\":\"2\"}},[_c('v-label',[_vm._v(\"Qnt. Inclusa\")])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"2\",\"sm\":\"2\"}},[_c('v-label',[_vm._v(\"Qnt. Máxima\")])],1),_c('v-col',{attrs:{\"cols\":4,\"md\":\"3\",\"sm\":\"4\"}},[_c('v-label',[_vm._v(\"Exibir no Carrinho\")])],1),_c('v-col',{attrs:{\"cols\":1,\"md\":\"1\",\"sm\":\"1\"}},[_c('v-label',[_vm._v(\"Excluir\")])],1),_c('div',{staticClass:\"t-chamado-divider\"})],1),_vm._l((_vm.produto.inclusos),function(incluso,index){return _c('v-row',{key:index},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"4\",\"sm\":\"3\"}},[_c('v-combobox',{attrs:{\"rules\":_vm.rules.filhoId,\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando,\"return-object\":false,\"items\":_vm.produtos,\"item-value\":\"id\",\"placeholder\":\"Adicionar Produto\"},on:{\"change\":function($event){return _vm.adicionarInclusoEmBranco()}},scopedSlots:_vm._u([{key:\"selection\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.obterProdutoTitulo(data.item))+\" \"+_vm._s(_vm.obterProdutoSubtitulo(data.item))+\" \")]}},{key:\"item\",fn:function(data){return [_vm._v(\" \"+_vm._s(data.item.titulo)+\" \"+_vm._s(data.item.subtitulo)+\" \")]}}],null,true),model:{value:(incluso.filhoId),callback:function ($$v) {_vm.$set(incluso, \"filhoId\", $$v)},expression:\"incluso.filhoId\"}})],1),(incluso.filhoId)?_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"2\",\"sm\":\"2\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando,\"rules\":_vm.rules.quantidadeInclusa,\"type\":\"number\",\"step\":\"1\",\"min\":\"1\"},model:{value:(incluso.quantidadeInclusa),callback:function ($$v) {_vm.$set(incluso, \"quantidadeInclusa\", _vm._n($$v))},expression:\"incluso.quantidadeInclusa\"}})],1):_vm._e(),(incluso.filhoId)?_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"2\",\"sm\":\"2\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"flat\":\"\",\"solo\":\"\",\"disabled\":_vm.visualizando,\"rules\":_vm.rules.quantidadeMaxima,\"type\":\"number\",\"step\":\"1\",\"min\":\"0\"},model:{value:(incluso.quantidadeMaxima),callback:function ($$v) {_vm.$set(incluso, \"quantidadeMaxima\", _vm._n($$v))},expression:\"incluso.quantidadeMaxima\"}})],1):_vm._e(),(incluso.filhoId)?_c('v-col',{attrs:{\"cols\":5,\"md\":\"3\",\"sm\":\"4\"}},[_c('v-list-item-action',{staticClass:\"t-item-azul\"},[_c('v-switch',{attrs:{\"inset\":\"\"},model:{value:(incluso.exibirNoCarrinho),callback:function ($$v) {_vm.$set(incluso, \"exibirNoCarrinho\", $$v)},expression:\"incluso.exibirNoCarrinho\"}})],1),(incluso.exibirNoCarrinho == true)?_c('v-label',{staticClass:\"mb-2\"},[_vm._v(\" Sim \")]):_c('v-label',{staticClass:\"mb-2 d-inline\"},[_vm._v(\"Não\")])],1):_vm._e(),(incluso.filhoId)?_c('v-col',{attrs:{\"cols\":1,\"md\":\"1\",\"sm\":\"1\"}},[_c('v-btn',{staticClass:\"t-btn-action\",attrs:{\"text\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.removerIncluso(index)}}},[_c('v-icon',[_vm._v(\"mdi-delete\")])],1)],1):_vm._e()],1)})],2),_c('div',[_c('h5',{staticClass:\"t-titulo-categoria t-item-azul mt-7 px-2 py-4\"},[_vm._v(\" Produtos Visível \")]),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\",\"sm\":\"12\"}},[_c('v-list-item-action',{staticClass:\"t-item-azul\"},[_c('v-switch',{attrs:{\"inset\":\"\",\"disabled\":_vm.visualizando},model:{value:(_vm.produto.visivel),callback:function ($$v) {_vm.$set(_vm.produto, \"visivel\", $$v)},expression:\"produto.visivel\"}})],1),(_vm.produto.visivel)?_c('v-label',{staticClass:\"mb-2\"},[_vm._v(\" Sim \")]):_c('v-label',{staticClass:\"mb-2 d-inline\"},[_vm._v(\"Não\")])],1)],1)],1),(_vm.visualizando)?_c('div',[_c('h5',{staticClass:\"t-titulo-categoria t-item-azul mt-4 px-2 py-4\"},[_vm._v(\" Licenças \")]),(_vm.licencas && _vm.licencas.length > 0)?_c('licenca-tabela',{attrs:{\"itens\":_vm.licencas,\"mostrarEmpresa\":\"true\",\"mostrarQuantidade\":\"true\"}}):_vm._e(),_c('v-btn',{staticClass:\"my-7 px-7 py-5\",attrs:{\"tile\":\"\",\"color\":\"primary\",\"depressed\":\"\"},on:{\"click\":_vm.voltar}},[_vm._v(\" Voltar \")])],1):_c('div',[_c('v-btn',{staticClass:\"my-7 px-7 py-5\",attrs:{\"type\":\"submit\",\"tile\":\"\",\"color\":\"primary\",\"depressed\":\"\"}},[_vm._v(\" Salvar produto \")]),_c('v-btn',{staticClass:\"my-7 mx-4 px-7 py-5\",attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.cancelar}},[_vm._v(\" Cancelar \")])],1)]):_vm._e()],1):_c('not-have-access')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport Api from '../../base/api.typings';\nimport Component from 'vue-class-component';\nimport produtoService from './produto-service';\nimport servicoService from '../servico/servico-service';\nimport * as val from '../../base/validations';\nimport routerService from '../../base/router-service';\nimport { Prop } from 'vue-property-decorator';\nimport areaService from '../area-atual/area-service';\nimport licencaService from '../licenca/licenca-service';\n\n@Component\nexport default class ProdutoRegistrar extends Vue {\n @Prop() produtoId: number;\n @Prop() visualizando: boolean;\n\n licencas: Api.App.Server.Licenca.ListarParaProduto.Dto[];\n ultimoId: number = 0;\n areaAtual: string = null;\n\n tipos = [\n {\n value: Api.Common.Domain.ProdutoTipoEnum.Simples,\n text: 'Simples',\n },\n {\n value: Api.Common.Domain.ProdutoTipoEnum.Recorrente,\n text: 'Recorrente',\n },\n ];\n\n unidadesSimples = [\n {\n value: Api.Common.Domain.ProdutoUnidadeEnum.Unidade,\n text: 'Unid',\n },\n { value: Api.Common.Domain.ProdutoUnidadeEnum.Mes, text: 'Mês' },\n { value: Api.Common.Domain.ProdutoUnidadeEnum.Guia, text: 'Guia' },\n { value: Api.Common.Domain.ProdutoUnidadeEnum.Hora, text: 'Hora' },\n ];\n\n classificacao = [\n { value: Api.Common.Domain.ClassificacaoEnum.PlanoPrincipalDeEmpresas, text: 'Plano principal de empresas' },\n { value: Api.Common.Domain.ClassificacaoEnum.Funcionarios, text: 'Funcionários' },\n { value: Api.Common.Domain.ClassificacaoEnum.Outros, text: 'Outros' },\n ];\n\n unidadesRecorrete = [\n { value: Api.Common.Domain.ProdutoUnidadeEnum.Mes, text: 'Mês' },\n ];\n\n obterUnidade(produtoTipo: any) {\n if (\n produtoTipo == Api.Common.Domain.ProdutoTipoEnum.Simples ||\n this.produto.tipo == Api.Common.Domain.ProdutoTipoEnum.Simples\n ) {\n return this.unidadesSimples;\n } else if (\n produtoTipo == Api.Common.Domain.ProdutoTipoEnum.Recorrente ||\n this.produto.tipo ==\n Api.Common.Domain.ProdutoTipoEnum.Recorrente\n ) {\n return this.unidadesRecorrete;\n } else {\n return [{ value: 0, text: 'Selecione um tipo' }];\n }\n }\n\n produto: Api.App.Server.Produto.InserirEditar.Command = null;\n\n servicos: any = [];\n\n produtos: Api.App.Server.Produto.Listar.ProdutoDto[] = [];\n\n async obterParaEditar() {\n let produto = await produtoService.obterParaEditar({\n id: this.produtoId,\n });\n this.produto = produto;\n this.adicionarInclusoEmBranco();\n }\n\n private async listarServicos() {\n let obterServicos = await servicoService.obterServicoDescricao({});\n let result = [];\n\n for (let item of obterServicos.itens) {\n if (item.ativo) {\n let possuiGrupo = result.some(\n (p) => p.header == item.categoriaTitulo\n );\n if (!possuiGrupo)\n result.push({\n divider: true,\n header: item.categoriaTitulo,\n });\n\n result.push({\n id: item.id,\n text: item.descricao,\n });\n }\n }\n this.servicos = result;\n }\n\n obterServicoDescricao(id: number) {\n if (!this.servicos) return '';\n\n let servico = this.servicos.find((p) => p.id == id);\n if (servico) {\n return servico.text;\n }\n }\n\n obterProdutoTitulo(id: number) {\n if (!this.produtos) return '';\n\n let produto = this.produtos.find((p) => p.id == id);\n if (produto) {\n return produto.titulo;\n }\n }\n\n obterProdutoSubtitulo(id: number) {\n if (!this.produtos) return '';\n\n let produto = this.produtos.find((p) => p.id == id);\n if (produto) {\n return produto.subtitulo;\n }\n }\n\n private async listarProdutos() {\n let obterProdutos = await produtoService.listar({});\n this.produtos = obterProdutos.itens.filter(\n (p) => p.id != this.produtoId\n );\n }\n\n async removerIncluso(incluso: number) {\n let excluir = await this.$confirm.open({\n title: 'Excluir',\n message: 'Deseja realmente excluir ?',\n });\n if (excluir) {\n this.produto.inclusos.splice(incluso, 1);\n this.adicionarInclusoEmBranco();\n\n this.$snackbars.open({\n text: 'Excluído com sucesso',\n color: 'success',\n });\n }\n }\n\n adicionarInclusoEmBranco() {\n let possuiEmBranco = this.produto.inclusos.some((p) => !p.filhoId);\n if (!possuiEmBranco) {\n this.produto.inclusos.push({\n id: --this.ultimoId,\n filhoId: null,\n exibirNoCarrinho: true,\n quantidadeInclusa: 1,\n quantidadeMaxima: 0,\n });\n }\n }\n\n obterNomeProduto(item) {\n let result = item.titulo;\n if (item.subtitulo) {\n result += ` - ${item.subtitulo}`;\n }\n\n return result;\n }\n\n async obterLicencas() {\n const { itens } = await licencaService.listarParaProduto({\n produtoId: this.produtoId,\n });\n this.licencas = itens;\n }\n\n async created() {\n this.areaAtual = await areaService.obterAreaPadrao();\n\n if (this.areaAtual == 'admin') {\n this.listarServicos();\n this.listarProdutos();\n await this.obterLicencas();\n\n if (this.produtoId) {\n this.obterParaEditar();\n } else {\n this.produto = {\n id: null,\n codigo: null,\n classificacao: null,\n titulo: null,\n subtitulo: null,\n detalhes: null,\n observacoes: null,\n valor: 0,\n unidade: null,\n tipo: null,\n servicoIds: null,\n inclusos: [],\n visivel: null,\n };\n this.adicionarInclusoEmBranco();\n }\n }\n }\n\n get carregando() {\n return !this.produto;\n }\n\n async salvarproduto() {\n this.produto.inclusos.pop();\n await this.$action.processSubmit({\n action: async () => {\n if (this.produtoId) {\n await produtoService.editar(this.produto);\n } else {\n await produtoService.inserir(this.produto);\n }\n\n this.$snackbars.open({\n text: 'Cadastro feito com sucesso!',\n color: 'success',\n });\n\n await routerService.goTo('produto-listar');\n },\n form: this.$refs.form,\n rules: this.rules,\n });\n this.adicionarInclusoEmBranco();\n }\n\n rules = {\n $summary: [] as any[],\n codigo: [val.required, val.minLength(3), val.maxLength(50)],\n classificacao: [val.required, val.minValue(1)],\n titulo: [val.required, val.minLength(3), val.maxLength(255)],\n subtitulo: [val.minLength(3), val.maxLength(255)],\n detalhes: [val.minLength(3), val.maxLength(1000)],\n observacoes: [val.minLength(3), val.maxLength(1000)],\n tipo: [val.required, val.minValue(1)],\n valor: [val.required, val.minValue(0)],\n unidade: [val.required, val.minValue(1)],\n filhoId: [val.minValue(1)],\n quantidadeInclusa: [val.required, val.minValue(1)],\n quantidadeMaxima: [val.required, val.minValue(0)],\n };\n\n async voltar() {\n await routerService.goTo('produto-listar');\n }\n\n async cancelar() {\n let cancelado = await this.$confirm.open({\n title: 'Cancelar',\n message: 'Deseja realmente cancelar a operação ?',\n });\n if (cancelado) {\n this.$snackbars.open({\n text: 'Ação cancelada!',\n color: 'error',\n });\n\n await routerService.goTo('produto-listar');\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!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--19-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./produto-inserir-editar.vue?vue&type=script&lang=ts&\"; 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/ts-loader/index.js??ref--13-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--19-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./produto-inserir-editar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./produto-inserir-editar.vue?vue&type=template&id=e4558c46&scoped=true&\"\nimport script from \"./produto-inserir-editar.vue?vue&type=script&lang=ts&\"\nexport * from \"./produto-inserir-editar.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./produto-inserir-editar.vue?vue&type=style&index=0&id=e4558c46&scoped=true&lang=css&\"\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 \"e4558c46\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VCombobox } from 'vuetify/lib/components/VCombobox';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLabel } from 'vuetify/lib/components/VLabel';\nimport { VListItemAction } from 'vuetify/lib/components/VList';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\ninstallComponents(component, {VBtn,VChip,VCol,VCombobox,VContainer,VForm,VIcon,VLabel,VListItemAction,VProgressCircular,VRow,VSelect,VSwitch,VTextField,VTextarea})\n","// Styles\nimport '../../styles/components/_selection-controls.sass'\nimport './VSwitch.sass'\n\n// Mixins\nimport Selectable from '../../mixins/selectable'\nimport VInput from '../VInput'\n\n// Directives\nimport Touch from '../../directives/touch'\n\n// Components\nimport { VFabTransition } from '../transitions'\nimport VProgressCircular from '../VProgressCircular/VProgressCircular'\n\n// Helpers\nimport { keyCodes } from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeData } from 'vue'\n\n/* @vue/component */\nexport default Selectable.extend({\n name: 'v-switch',\n\n directives: { Touch },\n\n props: {\n inset: Boolean,\n loading: {\n type: [Boolean, String],\n default: false,\n },\n flat: {\n type: Boolean,\n default: false,\n },\n },\n\n computed: {\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n 'v-input--selection-controls v-input--switch': true,\n 'v-input--switch--flat': this.flat,\n 'v-input--switch--inset': this.inset,\n }\n },\n attrs (): object {\n return {\n 'aria-checked': String(this.isActive),\n 'aria-disabled': String(this.disabled),\n role: 'switch',\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.hasError && this.shouldValidate) return 'error'\n if (this.hasSuccess) return 'success'\n if (this.hasColor !== null) return this.computedColor\n return undefined\n },\n switchData (): VNodeData {\n return this.setTextColor(this.loading ? undefined : this.validationState, {\n class: this.themeClasses,\n })\n },\n },\n\n methods: {\n genDefaultSlot (): (VNode | null)[] {\n return [\n this.genSwitch(),\n this.genLabel(),\n ]\n },\n genSwitch (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-input--selection-controls__input',\n }, [\n this.genInput('checkbox', {\n ...this.attrs,\n ...this.attrs$,\n }),\n this.genRipple(this.setTextColor(this.validationState, {\n directives: [{\n name: 'touch',\n value: {\n left: this.onSwipeLeft,\n right: this.onSwipeRight,\n },\n }],\n })),\n this.$createElement('div', {\n staticClass: 'v-input--switch__track',\n ...this.switchData,\n }),\n this.$createElement('div', {\n staticClass: 'v-input--switch__thumb',\n ...this.switchData,\n }, [this.genProgress()]),\n ])\n },\n genProgress (): VNode {\n return this.$createElement(VFabTransition, {}, [\n this.loading === false\n ? null\n : this.$slots.progress || this.$createElement(VProgressCircular, {\n props: {\n color: (this.loading === true || this.loading === '')\n ? (this.color || 'primary')\n : this.loading,\n size: 16,\n width: 2,\n indeterminate: true,\n },\n }),\n ])\n },\n onSwipeLeft () {\n if (this.isActive) this.onChange()\n },\n onSwipeRight () {\n if (!this.isActive) this.onChange()\n },\n onKeydown (e: KeyboardEvent) {\n if (\n (e.keyCode === keyCodes.left && this.isActive) ||\n (e.keyCode === keyCodes.right && !this.isActive)\n ) this.onChange()\n },\n },\n})\n","import Api from '../../base/api.typings';\nimport axiosConfiguration from '@/base/axios-configuration';\n\nclass LicencaService {\n async listar(query: Api.App.Server.Licenca.Listar.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/licenca/listar', { params: query }).then(e => e.data);\n }\n\n async listarParaEmpresa(query: Api.App.Server.Licenca.ListarParaEmpresa.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/licenca/listarparaempresa', { params: query }).then(e => e.data);\n }\n\n async listarParaProduto(query: Api.App.Server.Licenca.ListarParaProduto.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/licenca/listarparaproduto', { params: query }).then(e => e.data);\n }\n\n async listarParaUsuario(query: Api.App.Server.Licenca.ListarParaUsuario.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/licenca/listarparausuario', { params: query }).then(e => e.data);\n }\n\n async obterParaEditar(query?: Api.App.Server.Licenca.InserirEditar.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/licenca/obterparaeditar', { params: query }).then(e => e.data);\n }\n\n async inserir(command: Api.App.Server.Licenca.InserirEditar.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().post('/api/licenca/inserir', command).then(r => r.data);\n }\n\n async editar(command: Api.App.Server.Licenca.InserirEditar.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().put('/api/licenca/editar', command);\n }\n\n async ativar(command: Api.App.Server.Licenca.Ativar.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().post('/api/licenca/ativar', command);\n }\n \n async inativar(command: Api.App.Server.Licenca.Inativar.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().post('/api/licenca/inativar', command);\n }\n\n async alterarLicenca(command: Api.App.Server.Licenca.AlterarLicenca.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().post('/api/licenca/alterarLicenca', command);\n }\n}\n\n\nexport default new LicencaService();","import Api from '@/base/api.typings';\nimport axiosConfiguration from '@/base/axios-configuration';\n\nclass ServicoService {\n async listarServicoGrupos(query: Api.App.Server.Servico.ListarServicoGrupos.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Servico/ListarServicoGrupos', { params: query }).then(e => e.data);\n }\n\n async salvarServicoGrupos(command: Api.App.Server.Servico.SalvarServicosGrupos.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().post('/api/Servico/SalvarServicosGrupos', command);\n }\n\n async listarServicosPorGrupoId(query: Api.App.Server.Servico.ListarServicosPorGrupoId.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Servico/ListarServicosPorGrupoId', { params: query }).then(e => e.data);\n }\n\n async obterServicoDescricao(query: Api.App.Server.Servico.ObterServicoDescricao.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Servico/ObterServicoDescricao', { params: query }).then(e => e.data);\n }\n\n async salvarServicoDescricao(command: Api.App.Server.Servico.SalvarServicoDescricao.Command): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().post('/api/Servico/SalvarServicoDescricao', command);\n }\n\n async obterServicoGrupoDescricao(query: Api.App.Server.Servico.ObterServicoGrupoDescricao.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Servico/ObterServicoGrupoDescricao', { params: query }).then(e => e.data);\n }\n\n async obterServicoUpPlanoId(query: Api.App.Server.Servico.ObterServicoUpPlanoId.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Servico/ObterServicoUpPlanoId', { params: query }).then(e => e.data);\n }\n\n async obterServicoAlterarDadosEmpresaId(query: Api.App.Server.Servico.ObterServicoAlterarDadosEmpresaId.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Servico/ObterServicoAlterarDadosEmpresaId', { params: query }).then(e => e.data);\n }\n\n async obterServicoAlterarDadosFuncionarioId(query: Api.App.Server.Servico.ObterServicoAlterarDadosFuncionarioId.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Servico/ObterServicoAlterarDadosFuncionarioId', { params: query }).then(e => e.data);\n }\n\n async obterServicoAlterarDadosSocioId(query: Api.App.Server.Servico.ObterServicoAlterarDadosSocioId.Query): Promise {\n await axiosConfiguration.configure();\n\n return axiosConfiguration.getAxios().get('/api/Servico/ObterServicoAlterarDadosSocioId', { params: query }).then(e => e.data);\n }\n}\n\nexport default new ServicoService();","// 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\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 'accent'\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 },\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 click: (e: Event) => {\n // Prevent label from\n // causing the input\n // to focus\n e.preventDefault()\n\n this.onChange()\n },\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 },\n ref: 'input',\n })\n },\n onBlur () {\n this.isFocused = false\n },\n onChange () {\n if (this.isDisabled) 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 () {\n this.isFocused = true\n },\n /** @abstract */\n onKeydown (e: Event) {},\n },\n})\n"],"sourceRoot":""}