{"version":3,"sources":["webpack:///./src/eventbus/event-bus.js","webpack:///./src/views/Vouchers/Vouchers.vue","webpack:///src/views/Vouchers/Vouchers.vue","webpack:///./src/views/Vouchers/Vouchers.vue?c09e","webpack:///./src/views/Vouchers/Vouchers.vue?f2a0","webpack:///./src/views/Vouchers/Vouchers.vue?15a9"],"names":["EventBus","Vue","render","_vm","this","_c","_self","staticClass","showSideDrawer","attrs","hideDrawer","scopedSlots","_u","key","fn","showVoucherSummary","selectedVoucher","Id","locationId","on","_e","proxy","showModalVoucherInfoGuide","hideModal","showModalCreateVoucher","vouchersPage","type","voucherCreated","showModalDeleteVoucher","voucherDeleted","$t","domProps","_s","$event","setShowModalVoucherInfoGuide","_v","class","isBusy","_l","voucherTypes","voucherType","index","setVoucherType","concat","searchTerm","searchVouchers","ref","showExpired","setShowExpiredVouchers","setShowCreateVoucher","linkLabelCreateVoucher","hasLoaded","filteredVouchers","length","isAdmin","voucher","goToVoucher","Name","Type","Code","handleCopyTextFromParagraph","_f","ValidFrom","$i18n","locale","ValidUntil","VoucherPriceExclTax","setShowVoucherSummary","name","params","voucherId","setShowDeleteVoucher","staticRenderFns","Message","ModalCreateVoucher","ModalDeleteVoucher","SearchBar","VoucherSummary","ModalVoucherInfoGuide","components","message","data","isSearching","isSearchDone","Number","$route","showModal","allVouchers","firstLoad","computed","_objectSpread","mapGetters","mapState","output","toLowerCase","_this","voucherTypeIndex","findIndex","vt","vouchers","filter","v","created","saveVouchersPage","push","methods","mapActions","mapMutations","val","getLocationVouchers","_this2","self","page","itemsPerPage","then","response","status","Results","finally","newVoucher","deletedVoucher","setShowVouchers","setVisibleItem","modalTitle","$router","voucherCode","body","document","querySelector","area","createElement","appendChild","value","select","execCommand","removeChild","$emit","component"],"mappings":"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","file":"js/chunk-0320f77a.js?id=77a2d745136bcd95ccbd","sourcesContent":["import Vue from 'vue'\nexport const EventBus = new Vue()\n\nexport default EventBus\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"section\"},[_c('div',{staticClass:\"container\"},[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":\"Voucher detail\",\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"drawerSize\":\"large\",\"position\":\"right\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showVoucherSummary)?_c('voucher-summary',{attrs:{\"voucherId\":_vm.selectedVoucher.Id,\"voucher\":_vm.selectedVoucher,\"locationId\":_vm.locationId},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e()]},proxy:true}],null,false,2969935545)}):_vm._e(),(_vm.showModalVoucherInfoGuide)?_c('voucher-info-guide',{attrs:{\"showModal\":_vm.showModalVoucherInfoGuide,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showModalCreateVoucher)?_c('ModalCreateVoucher',{attrs:{\"showModal\":_vm.showModalCreateVoucher,\"onClickCancel\":_vm.hideModal,\"locationId\":_vm.locationId,\"voucherType\":_vm.vouchersPage.type},on:{\"voucherCreated\":_vm.voucherCreated}}):_vm._e(),(_vm.showModalDeleteVoucher)?_c('delete-voucher',{attrs:{\"showModal\":_vm.showModalDeleteVoucher,\"onClickCancel\":_vm.hideModal,\"locationId\":_vm.locationId,\"voucher\":_vm.selectedVoucher},on:{\"voucherDeleted\":_vm.voucherDeleted}}):_vm._e(),_c('ui-page-hero',{attrs:{\"title\":_vm.$t('Views.Vouchers.Vouchers.Main_Title')}}),_c('message',{staticClass:\"mb-6\",scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t(`Views.Vouchers.Vouchers.Message_VoucherInfo`))}}),_c('button',{staticClass:\"button is-info has-margin-top\",on:{\"click\":function($event){return _vm.setShowModalVoucherInfoGuide()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Vouchers.ModalVoucherInfoGuide.Button_MoreInfo'))+\" \")])]},proxy:true}])}),_c('div',{staticClass:\"tabs is-boxed\",class:{ 'greyed-out is-disabled': _vm.isBusy }},[_c('ul',_vm._l((_vm.voucherTypes),function(voucherType,index){return _c('li',{key:index,class:{ 'is-active': _vm.vouchersPage.type === voucherType.Id }},[_c('a',{on:{\"click\":function($event){return _vm.setVoucherType(voucherType.Id)}}},[_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(`Components.Vouchers.BasicData.Tab_Title${voucherType.Id}_Name`))+\" \")])])])}),0)]),_c('div',{staticClass:\"mb-6\"},[_c('search-bar',{attrs:{\"isSearching\":_vm.isBusy,\"searchTerm\":_vm.vouchersPage.searchTerm,\"placeHolderText\":_vm.$t('Views.Vouchers.Vouchers.PlaceHolder_SearchVoucher')},on:{\"startSearch\":_vm.searchVouchers}})],1),(_vm.isBusy)?_c('ui-loader'):_vm._e(),(!_vm.isBusy && _vm.vouchersPage.type !== 5)?_c('div',[_c('div',{staticClass:\"actionBar has-background-white-ter p-4 has-margin-bottom\"},[_c('div',{staticClass:\"level\"},[_c('div',{staticClass:\"level-left\"},[_c('label',{ref:\"label\",staticClass:\"label has-margin-right\"},[_vm._v(\" \"+_vm._s(_vm.$t('Views.Vouchers.Vouchers.Label_ShowExpiredVouchers')))]),_c('div',{staticClass:\"tabs is-toggle is-small\"},[_c('ul',[_c('li',{class:[{ 'is-active': _vm.vouchersPage.showExpired === false }, { 'is-disabled': _vm.isBusy }]},[_c('a',{on:{\"click\":function($event){return _vm.setShowExpiredVouchers(false)}}},[_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalDeleteOption.Label_No')))])])]),_c('li',{class:[{ 'is-active': _vm.vouchersPage.showExpired === true }, { 'is-disabled': _vm.isBusy }]},[_c('a',{on:{\"click\":function($event){return _vm.setShowExpiredVouchers(true)}}},[_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalDeleteOption.Label_Yes')))])])])])])]),_c('div',{staticClass:\"level-right\"},[_c('a',{staticClass:\"has-icon\",on:{\"click\":_vm.setShowCreateVoucher}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'plus']}})],1),_c('span',{domProps:{\"textContent\":_vm._s(_vm.linkLabelCreateVoucher)}})])])])])]):_vm._e(),(!_vm.isBusy && _vm.hasLoaded && _vm.filteredVouchers.length === 0)?_c('message',{attrs:{\"message\":_vm.$t(`Views.Vouchers.Vouchers.Message_NoVouchersCreated`)}}):_vm._e(),(!_vm.isBusy && _vm.filteredVouchers.length > 0)?_c('table',{staticClass:\"table is-fullwidth is-striped\"},[_c('thead',[_c('tr',[(_vm.isAdmin)?_c('th',[_vm._v(\"#\")]):_vm._e(),_c('th',[_vm._v(_vm._s(_vm.$t('Views.Vouchers.Vouchers.TableHeader_Name')))]),_c('th',[_vm._v(\"Type\")]),_c('th',[_vm._v(_vm._s(_vm.$t('Views.Vouchers.Vouchers.TableHeader_Code')))]),_c('th',[_vm._v(_vm._s(_vm.$t('Views.Vouchers.Vouchers.TableHeader_ValidFrom')))]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Views.Vouchers.Vouchers.TableHeader_ValidUntil'))+\" \")]),_c('th',[_vm._v(_vm._s(_vm.$t('Views.Vouchers.Vouchers.TableHeader_Price')))]),_c('th')])]),_c('tbody',_vm._l((_vm.filteredVouchers),function(voucher){return _c('tr',{key:voucher.Id},[(_vm.isAdmin)?_c('td',[_vm._v(_vm._s(voucher.Id))]):_vm._e(),_c('td',[_c('a',{on:{\"click\":function($event){return _vm.goToVoucher(voucher.Id)}}},[_vm._v(_vm._s(voucher.Name))])]),_c('td',[_vm._v(_vm._s(_vm.$t(`Views.Vouchers.Vouchers.Label_${voucher.Type}`)))]),_c('td',[(voucher.Type !== 'Package')?_c('div',[_c('span',{staticClass:\"mr-1\"},[_vm._v(_vm._s(voucher.Code))]),_c('a',{attrs:{\"title\":\"Copy\"},on:{\"click\":function($event){return _vm.handleCopyTextFromParagraph(voucher.Code)}}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'copy']}})],1)])]):_vm._e()]),_c('td',[_vm._v(_vm._s(_vm._f(\"longDateFormat\")(voucher.ValidFrom,_vm.$i18n.locale)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"longDateFormat\")(voucher.ValidUntil,_vm.$i18n.locale)))]),_c('td',[(voucher.Type === 'Package')?_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(voucher.VoucherPriceExclTax)))]):_vm._e()]),_c('td',[_c('div',{staticClass:\"field is-grouped is-grouped-right\"},[_c('p',{staticClass:\"control\"},[_c('a',{attrs:{\"title\":_vm.$t('Form.Control.ViewSummary')},on:{\"click\":function($event){return _vm.setShowVoucherSummary(voucher)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1)])]),_c('p',{staticClass:\"control\"},[_c('router-link',{attrs:{\"to\":{\n                    name: 'vouchers-detail',\n                    params: { voucherId: voucher.Id }\n                  },\"title\":_vm.$t('Form.Control.Edit')}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)])],1),_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"has-text-danger\",attrs:{\"title\":_vm.$t('Form.Control.Delete')},on:{\"click\":function($event){return _vm.setShowDeleteVoucher(voucher)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])])])])])}),0)]):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"section\">\n    <div class=\"container\">\n      <ui-component-drawer\n        v-if=\"showSideDrawer\"\n        drawerTitle=\"Voucher detail\"\n        :showDrawer=\"showSideDrawer\"\n        :onClickClose=\"hideDrawer\"\n        drawerSize=\"large\"\n        position=\"right\"\n      >\n        <template v-slot:content>\n          <voucher-summary\n            v-if=\"showVoucherSummary\"\n            :voucherId=\"selectedVoucher.Id\"\n            :voucher=\"selectedVoucher\"\n            :locationId=\"locationId\"\n            @hideDrawer=\"hideDrawer\"\n          />\n        </template>\n      </ui-component-drawer>\n\n      <voucher-info-guide\n        v-if=\"showModalVoucherInfoGuide\"\n        :showModal=\"showModalVoucherInfoGuide\"\n        :onClickCancel=\"hideModal\"\n      />\n\n      <ModalCreateVoucher\n        v-if=\"showModalCreateVoucher\"\n        :showModal=\"showModalCreateVoucher\"\n        :onClickCancel=\"hideModal\"\n        :locationId=\"locationId\"\n        :voucherType=\"vouchersPage.type\"\n        @voucherCreated=\"voucherCreated\"\n      />\n\n      <delete-voucher\n        v-if=\"showModalDeleteVoucher\"\n        :showModal=\"showModalDeleteVoucher\"\n        :onClickCancel=\"hideModal\"\n        :locationId=\"locationId\"\n        :voucher=\"selectedVoucher\"\n        @voucherDeleted=\"voucherDeleted\"\n      />\n\n      <ui-page-hero :title=\"$t('Views.Vouchers.Vouchers.Main_Title')\" />\n\n      <message class=\"mb-6\">\n        <template v-slot:content>\n          <div v-html=\"$t(`Views.Vouchers.Vouchers.Message_VoucherInfo`)\"></div>\n          <button\n            class=\"button is-info has-margin-top\"\n            @click=\"setShowModalVoucherInfoGuide()\"\n          >\n            {{ $t('Components.Vouchers.ModalVoucherInfoGuide.Button_MoreInfo') }}\n          </button>\n        </template>\n      </message>\n\n      <div\n        class=\"tabs is-boxed\"\n        :class=\"{ 'greyed-out is-disabled': isBusy }\"\n      >\n        <ul>\n          <li\n            v-for=\"(voucherType, index) in voucherTypes\"\n            :key=\"index\"\n            :class=\"{ 'is-active': vouchersPage.type === voucherType.Id }\"\n          >\n            <a @click=\"setVoucherType(voucherType.Id)\">\n              <span>\n                {{ $t(`Components.Vouchers.BasicData.Tab_Title${voucherType.Id}_Name`) }}\n              </span>\n            </a>\n          </li>\n        </ul>\n      </div>\n\n      <div class=\"mb-6\">\n        <search-bar\n          :isSearching=\"isBusy\"\n          :searchTerm=\"vouchersPage.searchTerm\"\n          :placeHolderText=\"$t('Views.Vouchers.Vouchers.PlaceHolder_SearchVoucher')\"\n          @startSearch=\"searchVouchers\"\n        ></search-bar>\n      </div>\n\n      <ui-loader v-if=\"isBusy\" />\n\n      <div v-if=\"!isBusy && vouchersPage.type !== 5\">\n        <div class=\"actionBar has-background-white-ter p-4 has-margin-bottom\">\n          <div class=\"level\">\n            <div class=\"level-left\">\n              <label\n                ref=\"label\"\n                class=\"label has-margin-right\"\n              >\n                {{ $t('Views.Vouchers.Vouchers.Label_ShowExpiredVouchers') }}</label\n              >\n\n              <div class=\"tabs is-toggle is-small\">\n                <ul>\n                  <li :class=\"[{ 'is-active': vouchersPage.showExpired === false }, { 'is-disabled': isBusy }]\">\n                    <a @click=\"setShowExpiredVouchers(false)\">\n                      <span>{{ $t('Components.Reservation.ModalDeleteOption.Label_No') }}</span>\n                    </a>\n                  </li>\n                  <li :class=\"[{ 'is-active': vouchersPage.showExpired === true }, { 'is-disabled': isBusy }]\">\n                    <a @click=\"setShowExpiredVouchers(true)\">\n                      <span>{{ $t('Components.Reservation.ModalDeleteOption.Label_Yes') }}</span>\n                    </a>\n                  </li>\n                </ul>\n              </div>\n            </div>\n\n            <div class=\"level-right\">\n              <a\n                @click=\"setShowCreateVoucher\"\n                class=\"has-icon\"\n              >\n                <span class=\"icon is-small\">\n                  <font-awesome-icon :icon=\"['fas', 'plus']\" />\n                </span>\n                <span v-text=\"linkLabelCreateVoucher\"></span>\n              </a>\n            </div>\n          </div>\n        </div>\n      </div>\n\n      <message\n        v-if=\"!isBusy && hasLoaded && filteredVouchers.length === 0\"\n        :message=\"$t(`Views.Vouchers.Vouchers.Message_NoVouchersCreated`)\"\n      />\n\n      <table\n        v-if=\"!isBusy && filteredVouchers.length > 0\"\n        class=\"table is-fullwidth is-striped\"\n      >\n        <thead>\n          <tr>\n            <th v-if=\"isAdmin\">#</th>\n            <th>{{ $t('Views.Vouchers.Vouchers.TableHeader_Name') }}</th>\n            <th>Type</th>\n            <th>{{ $t('Views.Vouchers.Vouchers.TableHeader_Code') }}</th>\n            <th>{{ $t('Views.Vouchers.Vouchers.TableHeader_ValidFrom') }}</th>\n            <th>\n              {{ $t('Views.Vouchers.Vouchers.TableHeader_ValidUntil') }}\n            </th>\n            <th>{{ $t('Views.Vouchers.Vouchers.TableHeader_Price') }}</th>\n            <th></th>\n          </tr>\n        </thead>\n        <tbody>\n          <tr\n            v-for=\"voucher in filteredVouchers\"\n            :key=\"voucher.Id\"\n          >\n          <td v-if=\"isAdmin\">{{ voucher.Id }}</td>  \n          <td>\n              <a @click=\"goToVoucher(voucher.Id)\">{{ voucher.Name }}</a>\n            </td>\n            <td>{{ $t(`Views.Vouchers.Vouchers.Label_${voucher.Type}`) }}</td>\n            <td>\n              <div v-if=\"voucher.Type !== 'Package'\">\n                <span class=\"mr-1\">{{ voucher.Code }}</span>\n                <a\n                  @click=\"handleCopyTextFromParagraph(voucher.Code)\"\n                  title=\"Copy\"\n                  ><span class=\"icon is-small\"> <font-awesome-icon :icon=\"['fas', 'copy']\" /> </span\n                ></a>\n              </div>\n            </td>\n            <td>{{ voucher.ValidFrom | longDateFormat($i18n.locale) }}</td>\n            <td>{{ voucher.ValidUntil | longDateFormat($i18n.locale) }}</td>\n            <td><span v-if=\"voucher.Type === 'Package'\">{{ voucher.VoucherPriceExclTax | toCurrency }}</span></td>\n            <td>\n              <div class=\"field is-grouped is-grouped-right\">\n                <p class=\"control\">\n                  <a\n                    @click=\"setShowVoucherSummary(voucher)\"\n                    :title=\"$t('Form.Control.ViewSummary')\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                    </span>\n                  </a>\n                </p>\n                <p class=\"control\">\n                  <router-link\n                    :to=\"{\n                      name: 'vouchers-detail',\n                      params: { voucherId: voucher.Id }\n                    }\"\n                    :title=\"$t('Form.Control.Edit')\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                    </span>\n                  </router-link>\n                </p>\n                <p class=\"control\">\n                  <a\n                    @click=\"setShowDeleteVoucher(voucher)\"\n                    :title=\"$t('Form.Control.Delete')\"\n                    class=\"has-text-danger\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                    </span>\n                  </a>\n                </p>\n              </div>\n            </td>\n          </tr>\n        </tbody>\n      </table>\n    </div>\n  </div>\n</template>\n\n<script>\nimport voucher from '@/providers/voucher';\nimport { mapState, mapActions, mapMutations, mapGetters } from 'vuex';\nimport { EventBus } from '@/eventbus/event-bus';\n\nconst Message = () => import('@/components/UI/Message');\nconst ModalCreateVoucher = () => import('@/components/Vouchers/ModalCreateVoucher');\nconst ModalDeleteVoucher = () => import('@/components/Vouchers/ModalDeleteVoucher');\nconst SearchBar = () => import('@/components/SearchBar');\nconst VoucherSummary = () => import('@/components/Vouchers/VoucherSummary');\nconst ModalVoucherInfoGuide = () => import('@/components/Vouchers/ModalVoucherInfoGuide');\n\nexport default {\n  components: {\n    ModalCreateVoucher,\n    'delete-voucher': ModalDeleteVoucher,\n    message: Message,\n    'search-bar': SearchBar,\n    'voucher-summary': VoucherSummary,\n    'voucher-info-guide': ModalVoucherInfoGuide\n  },\n\n  data() {\n    return {\n      hasLoaded: false,\n      isSearching: false,\n      isSearchDone: false,\n      locationId: Number(this.$route.params.locationId),\n      selectedVoucher: null,\n      showModal: false,\n      showModalVoucherInfoGuide: false,\n      showModalCreateVoucher: false,\n      showModalDeleteVoucher: false,\n      showSideDrawer: false,\n      showVoucherSummary: false,\n      voucherTypes: [],\n      allVouchers: [],\n      firstLoad: true\n    };\n  },\n\n  computed: {\n    ...mapGetters('profileStore', ['isAdmin']),\n    ...mapGetters('voucherStore', ['isBusy']),\n    ...mapState('voucherStore', ['vouchersPageState', 'vouchersPage', 'vouchers']),\n\n    linkLabelCreateVoucher() {\n      let output = this.$t('Views.Vouchers.Vouchers.Button_CreateVoucher');\n      if (this.vouchersPage.type !== -1 && this.vouchersPage.type !== 2) {\n        output = this.$t(`Components.Vouchers.BasicData.Tab_Title${this.vouchersPage.type}_Name`) + ' ' + this.$t('Views.Vouchers.Vouchers.Button_CreateVoucher').toLowerCase();\n      }\n      return output;\n    },\n\n    filteredVouchers() {\n      let voucherTypeIndex = this.voucherTypes.findIndex((vt) => vt.Id === this.vouchersPage.type);\n      let voucherType = this.voucherTypes[voucherTypeIndex];\n\n      if (this.vouchersPage.type > -1) {\n        return this.vouchers.filter((v) => v.Type === voucherType.Name);\n      }\n      return this.vouchers;\n    }\n  },\n\n  created() {\n    this.vouchersPage.locationId = Number(this.$route.params.locationId);\n    if (this.vouchers.length === 0) {\n      this.vouchersPage.showExpired = false;\n    }\n    this.saveVouchersPage(this.vouchersPage);\n\n    this.voucherTypes.push({ Id: -1, Name: 'All' });\n    this.voucherTypes.push({ Id: 0, Name: 'Action' });\n    this.voucherTypes.push({ Id: 1, Name: 'Package' });\n    this.voucherTypes.push({ Id: 2, Name: 'Voucher' });\n    this.voucherTypes.push({ Id: 4, Name: 'Credit' });\n  },\n\n  methods: {\n    ...mapActions('voucherStore', ['saveVouchersPage']),\n    ...mapMutations('voucherStore', ['setVouchersPageState']),\n\n    setVoucherType(type) {\n      this.vouchersPage.type = type;\n      this.saveVouchersPage(this.vouchersPage);\n    },\n\n    setShowExpiredVouchers(val) {\n      if (this.isBusy) {\n        return;\n      }\n      this.vouchersPage.showExpired = val;\n      this.saveVouchersPage(this.vouchersPage);\n    },\n\n    getLocationVouchers() {\n      let self = this;\n\n      self.hasLoaded = true;\n      self.isSearching = true;\n\n      voucher.methods\n        .getLocationVouchers(self.locationId, self.vouchersPage.page, self.vouchersPage.itemsPerPage, self.vouchersPage.searchTerm, self.vouchersPage.type, self.showExpired)\n        .then((response) => {\n          if (response.status === 200) {\n            if (this.firstLoad) {\n              self.allVouchers = response.data.Results;\n              self.firstLoad = false;\n            }\n          }\n        })\n        .finally(() => {\n          self.isSearching = false;\n          self.isSearchDone = true;\n        });\n    },\n\n    searchVouchers(searchTerm) {\n      this.vouchersPage.searchTerm = searchTerm;\n      this.saveVouchersPage(this.vouchersPage);\n    },\n\n    voucherCreated(newVoucher) {\n      this.goToVoucher(newVoucher.Id);\n    },\n\n    voucherDeleted(deletedVoucher) {\n      this.searchVouchers(this.vouchersPage.searchTerm);\n    },\n\n    setShowModalVoucherInfoGuide() {\n      this.showModalVoucherInfoGuide = true;\n    },\n\n    setShowCreateVoucher() {\n      this.showModalCreateVoucher = true;\n    },\n\n    setShowDeleteVoucher(voucher) {\n      this.selectedVoucher = voucher;\n      this.showModalDeleteVoucher = true;\n    },\n\n    setShowVouchers() {\n      this.setVisibleItem('vouchers');\n    },\n\n    setShowVoucherSummary(voucher) {\n      this.selectedVoucher = voucher;\n\n      this.showSideDrawer = true;\n      this.showVoucherSummary = true;\n    },\n\n    hideModal() {\n      this.selectedVoucher = null;\n      this.showModal = false;\n      this.showModalCreateVoucher = false;\n      this.showModalDeleteVoucher = false;\n      this.showModalVoucherInfoGuide = false;\n\n      this.modalTitle = '';\n    },\n\n    goToVoucher(voucherId) {\n      this.$router.push({\n        name: `vouchers-detail`,\n        params: { voucherId: voucherId }\n      });\n    },\n\n    hideDrawer() {\n      this.showSideDrawer = false;\n      this.showVoucherSummary = false;\n    },\n\n    handleCopyTextFromParagraph(voucherCode) {\n      const body = document.querySelector('body');\n      const area = document.createElement('textarea');\n      body.appendChild(area);\n\n      area.value = voucherCode;\n      area.select();\n      document.execCommand('copy');\n\n      body.removeChild(area);\n\n      // Send message to display toast on screen\n      EventBus.$emit('showToast', {\n        type: 'info',\n        message: this.$t('Components.Vouchers.BasicData.Toast_CopiedToClipboard')\n      });\n    }\n  }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.inputVoucherSearch {\n  max-width: 50%;\n}\n.label {\n  margin-bottom: 0px;\n}\n</style>\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!./Vouchers.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!./Vouchers.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Vouchers.vue?vue&type=template&id=440b14fc&scoped=true\"\nimport script from \"./Vouchers.vue?vue&type=script&lang=js\"\nexport * from \"./Vouchers.vue?vue&type=script&lang=js\"\nimport style0 from \"./Vouchers.vue?vue&type=style&index=0&id=440b14fc&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  \"440b14fc\",\n  null\n  \n)\n\nexport default component.exports","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!./Vouchers.vue?vue&type=style&index=0&id=440b14fc&prod&lang=scss&scoped=true\""],"sourceRoot":""}