{"version":3,"sources":["webpack:///./src/components/email_brand.vue?6e9d","webpack:///../../../src/components/VForm/VForm.ts","webpack:///./src/components/email_brand.vue","webpack:///src/components/email_brand.vue","webpack:///./src/components/email_brand.vue?82f1","webpack:///./src/components/email_brand.vue?7ded","webpack:///../../../src/components/VTextarea/VTextarea.ts"],"names":["mixins","BindsAttrs","RegistrableProvide","extend","name","provide","form","this","inheritAttrs","props","disabled","Boolean","lazyValidation","readonly","value","data","inputs","watchers","errorBag","watch","handler","val","errors","Object","values","includes","$emit","deep","immediate","methods","watchInput","input","watcher","$watch","$set","_uid","valid","shouldValidate","hasOwnProperty","validate","filter","length","reset","forEach","resetErrorBag","setTimeout","resetValidation","register","push","unregister","found","find","i","unwatch","$delete","render","h","staticClass","attrs","novalidate","attrs$","on","submit","e","$slots","default","staticStyle","ref","callback","_c","model","email_fields","_vm","emailRules","staticRenderFns","new_email","fullname","email","body","nameRules","v","suggRules","select","items","checkbox","cancel","path","query","token","save_ti_edit","formIn","dispatch","then","self","catch","msg","send","console","message1","alert","init","mounted","component","baseMixins","VTextField","autoGrow","noResize","rowHeight","type","Number","String","validator","isNaN","parseFloat","rows","parseInt","computed","classes","noResizeHandle","options","call","$nextTick","calculateInputHeight","$refs","_a","style","removeProperty","lazyValue","height","scrollHeight","minHeight","Math","max","genInput","tag","onInput","onKeyDown","isFocused","keyCode","stopPropagation"],"mappings":"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","file":"js/chunk-ccf095d8.6b974b3e.js","sourcesContent":["export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./email_brand.vue?vue&type=style&index=0&id=6a3dbdbd&prod&lang=scss&scoped=true&\"","// 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 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 }, this.$slots.default)\n },\n})\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-container',{staticClass:\"white black--text corners\",staticStyle:{\"margin-top\":\"220px\"},attrs:{\"id\":\"email\"}},[_c('v-form',{ref:\"form\",attrs:{\"lazy-validation\":\"\"},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-text-field',{attrs:{\"counter\":10,\"rules\":_vm.nameRules,\"label\":\"From Name\",\"required\":\"\"},model:{value:(_vm.email_fields.fullname),callback:function ($$v) {_vm.$set(_vm.email_fields, \"fullname\", $$v)},expression:\"email_fields.fullname\"}}),_c('v-text-field',{attrs:{\"rules\":_vm.emailRules,\"label\":\"From E-mail\",\"required\":\"\"},model:{value:(_vm.email_fields.email),callback:function ($$v) {_vm.$set(_vm.email_fields, \"email\", $$v)},expression:\"email_fields.email\"}}),_c('v-textarea',{staticClass:\"mt-4\",attrs:{\"rules\":_vm.suggRules,\"outlined\":\"\",\"counter\":\"2000\",\"auto-grow\":\"\",\"name\":\"input-7-4\",\"label\":\"Email Body\"},model:{value:(_vm.email_fields.body),callback:function ($$v) {_vm.$set(_vm.email_fields, \"body\", $$v)},expression:\"email_fields.body\"}}),_c('v-btn',{staticClass:\"blue accent-3 white--text\",attrs:{\"small\":\"\",\"elevation\":\"2\"},on:{\"click\":_vm.send}},[_vm._v(\" Send \")]),_c('v-btn',{staticClass:\"blue accent-3 white--text ml-2\",attrs:{\"small\":\"\",\"elevation\":\"2\"},on:{\"click\":_vm.cancel}},[_vm._v(\" Cancel \")])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./email_brand.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./email_brand.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./email_brand.vue?vue&type=template&id=6a3dbdbd&scoped=true&\"\nimport script from \"./email_brand.vue?vue&type=script&lang=js&\"\nexport * from \"./email_brand.vue?vue&type=script&lang=js&\"\nimport style0 from \"./email_brand.vue?vue&type=style&index=0&id=6a3dbdbd&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6a3dbdbd\",\n null\n \n)\n\nexport default component.exports","// 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 autoGrow (val: boolean) {\n this.$nextTick(() => {\n val\n ? this.calculateInputHeight()\n : this.$refs.input?.style.removeProperty('height')\n })\n },\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"],"sourceRoot":""}