{"version":3,"sources":["webpack:///./src/views/member/MemberDelete.vue?c2d6","webpack:///./src/views/member/MemberDelete.vue","webpack:///./src/views/member/MemberDelete.vue?31c5","webpack:///./src/views/member/MemberDelete.vue?b8fe","webpack:///../../../src/mixins/rippleable/index.ts","webpack:///../../../src/mixins/comparable/index.ts","webpack:///../../../src/components/VCheckbox/VCheckbox.ts","webpack:///../../../src/mixins/selectable/index.ts"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","staticClass","_v","ref","confirmDeleteRules","model","value","callback","$$v","confirmDelete","expression","processing","on","deleteClick","_l","e","index","key","_s","_e","staticRenderFns","isFormValid","resetProcessingValues","api","MemberApi","deleteAsync","$store","state","member","jwt","dispatch","commit","$router","push","name","handleProcessingErrorAsync","form","$refs","memberDeleteForm","validate","ViewBase","component","VAlert","VBtn","VCard","VCardText","VCardTitle","VCheckbox","VCol","VContainer","VForm","VRow","directives","ripple","props","type","Boolean","default","methods","genRipple","data","center","valueComparator","indeterminate","indeterminateIcon","offIcon","onIcon","inputIndeterminate","computed","classes","computedIcon","validationState","isDisabled","hasError","hasColor","watch","isActive","genCheckbox","setTextColor","dense","dark","light","genInput","toString","genDefaultSlot","prop","event","id","inputValue","falseValue","trueValue","multiple","label","String","lazyValue","computedColor","isDark","isMultiple","Array","input","item","undefined","isDirty","rippleState","genLabel","click","prevent","Object","disabled","role","domProps","checked","blur","change","focus","keydown","onBlur","onClick","onChange","length","onFocus","onKeydown"],"mappings":"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","file":"js/chunk-a63fa8aa.26be1ca7.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',[_c('v-row',{attrs:{\"justify\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"12\",\"xs\":\"12\",\"sm\":\"9\",\"md\":\"9\",\"lg\":\"6\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline justify-center\"},[_vm._v(\"DELETE MEMBERSHIP\")]),_c('v-card-text',{staticClass:\"mt-2 black--text\"},[_c('v-form',{ref:\"memberDeleteForm\",staticClass:\"px-3\"},[_c('v-checkbox',{staticClass:\"mb-8\",attrs:{\"rules\":[_vm.confirmDeleteRules],\"label\":\"Confirm Delete\",\"hint\":\"Deleting your membership will delete any bank accounts that you are the administrator of along with any funds and transactions associated with those bank accounts. Any other members with access to the deleted bank accounts will lose that access. It will also delete any purchases you have made. This operation can not be undone.\",\"persistent-hint\":\"\"},model:{value:(_vm.confirmDelete),callback:function ($$v) {_vm.confirmDelete=$$v},expression:\"confirmDelete\"}}),_c('div',{staticClass:\"text-center\"},[_c('v-btn',{staticClass:\"primary\",attrs:{\"loading\":_vm.processing},on:{\"click\":_vm.deleteClick}},[_vm._v(\"DELETE\")])],1),(_vm.processingError)?_c('div',{staticClass:\"text-center mt-4\"},_vm._l((_vm.processingErrors),function(e,index){return _c('div',{key:index},[_c('v-alert',{attrs:{\"value\":true,\"type\":\"error\",\"outlined\":\"\"}},[_vm._v(_vm._s(e))])],1)}),0):_vm._e()],1)],1)],1)],1)],1)],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\r\nimport {Component, Prop, Vue} from 'vue-property-decorator';\r\nimport ViewBase from '@/views/ViewBase';\r\nimport MemberApi from '@/apis/MemberApi';\r\n\r\n@Component({\r\n name: 'MemberDelete',\r\n },\r\n)\r\nexport default class MemberDelete extends ViewBase {\r\n\r\n public confirmDelete: boolean = false;\r\n\r\n public confirmDeleteRules(value: boolean): any {\r\n if ( !value )\r\n {\r\n return 'Please confirm that you want to delete your membership.';\r\n }\r\n\r\n return true;\r\n }\r\n\r\n public async deleteClick() {\r\n\r\n if ( this.isFormValid() ) {\r\n try {\r\n this.resetProcessingValues();\r\n\r\n const api = new MemberApi();\r\n const response = await api.deleteAsync(this.$store.state.member.jwt);\r\n\r\n this.$store.dispatch('signOut');\r\n this.$store.commit('mutateSnackbarText', 'Your membership has been deleted. Thank you for using CashTamer.com.');\r\n this.$store.commit('mutateShowSnackbar', true);\r\n await this.$router.push({name: 'home'});\r\n }\r\n catch ( err ) {\r\n await this.handleProcessingErrorAsync(err);\r\n }\r\n finally {\r\n this.processing = false;\r\n }\r\n }\r\n }\r\n\r\n private isFormValid(): boolean {\r\n const form: any = this.$refs.memberDeleteForm;\r\n\r\n return form.validate();\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/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MemberDelete.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/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MemberDelete.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MemberDelete.vue?vue&type=template&id=a4236ac0&\"\nimport script from \"./MemberDelete.vue?vue&type=script&lang=ts&\"\nexport * from \"./MemberDelete.vue?vue&type=script&lang=ts&\"\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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAlert,VBtn,VCard,VCardText,VCardTitle,VCheckbox,VCol,VContainer,VForm,VRow})\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","import Vue from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport { deepEqual } from '../../util/helpers'\n\nexport default Vue.extend({\n name: 'comparable',\n props: {\n valueComparator: {\n type: Function,\n default: deepEqual,\n } as PropValidator,\n },\n})\n","// 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 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 ...this.attrs$,\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","// 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 onBlur () {\n this.isFocused = false\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 () {\n this.isFocused = true\n },\n /** @abstract */\n onKeydown (e: Event) {},\n },\n})\n"],"sourceRoot":""}