{"version":3,"sources":["webpack:///./src/components/Vouchers/CheckVoucher.vue","webpack:///src/components/Vouchers/CheckVoucher.vue","webpack:///./src/components/Vouchers/CheckVoucher.vue?d9e5","webpack:///./src/components/Vouchers/CheckVoucher.vue?74b6"],"names":["render","_vm","this","_c","_self","showSideDrawer","attrs","drawerTitle","hideDrawer","scopedSlots","_u","key","fn","showVoucherSummary","voucherId","_e","proxy","voucherApplied","staticClass","on","$event","setShowVoucherSummary","_v","_s","voucherName","isLocked","revertVoucher","class","isChecking","$t","directives","name","rawName","value","voucherCode","expression","domProps","type","indexOf","keyCode","checkVoucher","apply","arguments","target","composing","showError","staticRenderFns","components","VoucherSummary","Message","props","default","Boolean","selectedDate","String","data","mReservation","reservation","voucher","computed","_objectSpread","mapState","self","applied","VoucherId","Voucher","Name","created","cleanSource","methods","mapMutations","length","applyReservationVoucher","EventBus","$emit","message","_this","reservationProvider","Key","then","response","status","setReservation","catch","error","finally","revertReservationVoucher","_this2","component"],"mappings":"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","file":"js/chunk-2d213508.js?id=adee874b328d8dc6b766","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\",\"drawerSize\":\"large\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showVoucherSummary)?_c('VoucherSummary',{attrs:{\"voucherId\":_vm.voucherId}}):_vm._e()]},proxy:true}],null,false,2535387153)}):_vm._e(),(_vm.voucherApplied)?_c('div',[_c('span',{staticClass:\"icon-text\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":function($event){return _vm.setShowVoucherSummary()}}},[_c('span',{staticClass:\"tag is-link is-light\"},[_vm._v(_vm._s(_vm.voucherName))]),_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'question-circle']}})],1)]),(!_vm.isLocked)?_c('a',{staticClass:\"icon-text has-text-danger\",on:{\"click\":_vm.revertVoucher}},[_c('span',{staticClass:\"icon\",class:{ 'is-loading': _vm.isChecking },attrs:{\"title\":_vm.$t('Components.Vouchers.CheckVoucher.Button_Delete')}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)]):_vm._e()])]):_vm._e(),(!_vm.voucherApplied)?_c('div',[_c('div',{staticClass:\"field has-addons\"},[_c('div',{staticClass:\"control\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.voucherCode),expression:\"voucherCode\"}],staticClass:\"input is-small\",attrs:{\"type\":\"text\",\"aria-label\":_vm.$t('Components.Vouchers.CheckVoucher.AriaLabel_VoucherCode')},domProps:{\"value\":(_vm.voucherCode)},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==13)return null;return _vm.checkVoucher.apply(null, arguments)},\"input\":function($event){if($event.target.composing)return;_vm.voucherCode=$event.target.value}}})]),_c('div',{staticClass:\"control\"},[_c('a',{staticClass:\"button is-small is-primary\",class:{ 'is-loading': _vm.isChecking },on:{\"click\":_vm.checkVoucher}},[_vm._v(_vm._s(_vm.$t('Components.Vouchers.CheckVoucher.Button_CheckVoucher')))])])]),(_vm.showError)?_c('div',[_c('Message',{staticClass:\"is-small\",attrs:{\"message\":_vm.$t('Components.Vouchers.CheckVoucher.Message_NotApplied'),\"type\":'is-danger'}})],1):_vm._e()]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n      drawerSize=\"large\"\n    >\n      <template v-slot:content>\n        <VoucherSummary v-if=\"showVoucherSummary\" :voucherId=\"voucherId\" />\n      </template>\n    </ui-component-drawer>\n\n    <div v-if=\"voucherApplied\">\n      <span class=\"icon-text\">\n        <a @click=\"setShowVoucherSummary()\" class=\"icon-text has-text-link\">\n          <span class=\"tag is-link is-light\">{{ voucherName }}</span>\n          <span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'question-circle']\" />\n          </span>\n        </a>\n\n        <a v-if=\"!isLocked\" @click=\"revertVoucher\" class=\"icon-text has-text-danger\">\n          <span class=\"icon\" :class=\"{ 'is-loading': isChecking }\" :title=\"$t('Components.Vouchers.CheckVoucher.Button_Delete')\">\n            <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n          </span>\n        </a>\n      </span>\n    </div>\n\n    <div v-if=\"!voucherApplied\">\n      <div class=\"field has-addons\">\n        <div class=\"control\">\n          <input\n            type=\"text\"\n            v-model=\"voucherCode\"\n            v-on:keyup.13=\"checkVoucher\"\n            class=\"input is-small\"\n            :aria-label=\"$t('Components.Vouchers.CheckVoucher.AriaLabel_VoucherCode')\"\n          />\n        </div>\n        <div class=\"control\">\n          <a\n            @click=\"checkVoucher\"\n            class=\"button is-small is-primary\"\n            :class=\"{ 'is-loading': isChecking }\"\n            >{{ $t('Components.Vouchers.CheckVoucher.Button_CheckVoucher') }}</a\n          >\n        </div>\n      </div>\n\n      <div v-if=\"showError\">\n        <Message :message=\"$t('Components.Vouchers.CheckVoucher.Message_NotApplied')\" :type=\"'is-danger'\" class=\"is-small\" />\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport reservationProvider from '@/providers/reservation'\nimport { EventBus } from '@/eventbus/event-bus'\nimport { cleanSource } from '@/utils/objectHelper'\nimport Message from '../UI/Message.vue';\n\nexport default {\n  components: {\n    VoucherSummary: () => import('@/components/Vouchers/VoucherSummary'),\n    Message: () => import('@/components/UI/Message')\n  },\n\n  props: {\n    isLocked: {\n      default: false,\n      type: Boolean,\n    },\n\n    selectedDate: {\n      default: '1900-01-01',\n      type: String\n    }\n  },\n\n  data() {\n    return {\n      isChecking: false,\n      mReservation: this.reservation,\n      showError: false,\n      showSideDrawer: false,\n      showVoucherSummary: false,\n      voucher: null,\n      voucherId: 0,\n      voucherName: '',\n      voucherCode: '',\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n\n    voucherApplied() {\n      let self = this\n      let applied = false\n\n      if (\n        (self.mReservation && self.mReservation.VoucherId > 0)\n      ) {\n        if (self.mReservation) {\n          self.voucherId = self.mReservation.VoucherId\n          self.voucherName = self.mReservation.Voucher.Name\n        }\n\n        applied = true\n      }\n\n      return applied\n    },\n  },\n\n  created() {\n    this.mReservation = cleanSource(this.reservation)\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    checkVoucher() {\n      if (this.voucherCode.length > 0) {\n          this.applyReservationVoucher()\n      } else {\n        EventBus.$emit('showToast', {\n          type: 'warning',\n          message: this.$t(\n            'Components.Vouchers.CheckVoucher.Toast_NoCodeEntered'\n          ),\n        })\n      }\n    },\n\n    applyReservationVoucher() {\n      let self = this;\n      self.isChecking = true;\n      this.showError = false;\n\n      reservationProvider.methods\n        .applyReservationVoucher(self.voucherCode, self.mReservation.Key)\n        .then((response) => {\n          //console.log(response)\n          if (response.status === 200) {\n            this.setReservation(response.data)\n            self.mReservation = response.data\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t(\n                'Components.Vouchers.CheckVoucher.Toast_VoucherAdded'\n              ),\n            })\n          }\n        })\n        .catch((error) => {\n          this.showError = true;\n        })\n        .finally(() => {\n          self.isChecking = false\n        })\n    },\n\n    revertVoucher() {\n      if (this.reservation && this.reservation.VoucherId > 0) {\n        this.revertReservationVoucher()\n      }\n    },\n\n    revertReservationVoucher() {\n      let self = this\n      self.isChecking = true\n\n      reservationProvider.methods\n        .revertReservationVoucher(self.mReservation.Key, self.voucherId)\n        .then((response) => {\n          if (response.status === 200) {\n            self.mReservation = response.data\n            self.$emit('reservationVoucherApplied', response.data)\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t(\n                'Components.Vouchers.CheckVoucher.Toast_VoucherRemoved'\n              ),\n            })\n          }\n        })\n        .finally(() => {\n          self.isChecking = false\n        })\n    },\n\n    setShowVoucherSummary() {\n      this.drawerTitle = 'Voucher detail'\n      this.showSideDrawer = true\n      this.showVoucherSummary = true\n    },\n\n    hideDrawer() {\n      this.drawerTitle = ''\n      this.showSideDrawer = false\n      this.showVoucherSummary = false\n    },\n  },\n}\n</script>\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!./CheckVoucher.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!./CheckVoucher.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CheckVoucher.vue?vue&type=template&id=e24770d6\"\nimport script from \"./CheckVoucher.vue?vue&type=script&lang=js\"\nexport * from \"./CheckVoucher.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}