{"version":3,"sources":["webpack:///./src/components/Vouchers/BasicData.vue?c130","webpack:///./src/eventbus/event-bus.js","webpack:///./src/components/Vouchers/BasicData.vue","webpack:///src/components/Vouchers/BasicData.vue","webpack:///./src/components/Vouchers/BasicData.vue?8712","webpack:///./src/components/Vouchers/BasicData.vue?bd85"],"names":["EventBus","Vue","render","_vm","this","_c","_self","voucher","locationState","showEditBasicData","attrs","hideModal","_e","title","Name","hideSectionHeader","locationCanEdit","openBasicData","scopedSlots","_u","key","fn","_v","_s","$t","proxy","staticClass","Type","Code","on","handleCopyTextFromParagraph","_t","Description","staticRenderFns","components","ModalEditBasicData","props","type","Boolean","default","data","locationId","Number","$route","params","computed","_objectSpread","mapState","_this","canEdit","locationIndex","Locations","findIndex","l","LocationId","LocationCreated","methods","body","document","querySelector","area","createElement","appendChild","value","select","execCommand","removeChild","$emit","message","component"],"mappings":"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","file":"js/chunk-6974b56b.js?id=125c1f57f759f282ceb9","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!./BasicData.vue?vue&type=style&index=0&id=056eb8bc&prod&lang=scss&scoped=true\"","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 (_vm.voucher && _vm.locationState)?_c('div',[(_vm.showEditBasicData)?_c('ModalEditBasicData',{attrs:{\"showModal\":_vm.showEditBasicData,\"onClickCancel\":_vm.hideModal,\"voucher\":_vm.voucher}}):_vm._e(),_c('ui-page-hero',{attrs:{\"additionalTitleClass\":\"mb-0\",\"title\":_vm.title + ': ' + _vm.voucher.Name}}),(!_vm.hideSectionHeader)?_c('ui-section-header',{attrs:{\"showEdit\":_vm.locationCanEdit,\"editFunction\":_vm.openBasicData},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Vouchers.BasicData.Section_Title')))]},proxy:true}],null,false,543687596)}):_vm._e(),_c('div',{staticClass:\"columns is-multiday\"},[_c('div',{staticClass:\"column\"},[_c('table',{staticClass:\"table is-striped is-fullwidth mt-5 mb-5\"},[_c('tbody',[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Vouchers.BasicData.Label_Name')))]),_c('td',[_vm._v(_vm._s(_vm.voucher.Name))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Vouchers.BasicData.Label_Type')))]),_c('td',[_vm._v(_vm._s(_vm.voucher.Type))])]),(_vm.voucher.Type !== 'Rate' && _vm.voucher.Type !== 'Package')?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Vouchers.BasicData.Label_Code')))]),_c('td',[_vm._v(\" \"+_vm._s(_vm.voucher.Code)+\" \"),_c('a',{attrs:{\"title\":\"Copy\"},on:{\"click\":_vm.handleCopyTextFromParagraph}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'copy']}})],1)])])]):_vm._e()])]),_vm._t(\"stats\")],2),_c('div',{staticClass:\"column\"},[_c('p',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Vouchers.BasicData.Label_Description'))+\": \")]),_c('div',{staticClass:\"textWrapper has-custom-scrollbar p-4\"},[_vm._v(_vm._s(_vm.voucher.Description))])])])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"voucher && locationState\">\n    <ModalEditBasicData\n      v-if=\"showEditBasicData\"\n      :showModal=\"showEditBasicData\"\n      :onClickCancel=\"hideModal\"\n      :voucher=\"voucher\"\n    />\n\n    <ui-page-hero\n      additionalTitleClass=\"mb-0\"\n      :title=\"title + ': ' + voucher.Name\"\n    />\n\n    <ui-section-header\n      v-if=\"!hideSectionHeader\"\n      :showEdit=\"locationCanEdit\"\n      :editFunction=\"openBasicData\"\n    >\n      <template v-slot:title>{{\n        $t('Components.Vouchers.BasicData.Section_Title')\n      }}</template>\n    </ui-section-header>\n    <div class=\"columns is-multiday\">\n      <div class=\"column\">\n        <table class=\"table is-striped is-fullwidth mt-5 mb-5\">\n          <tbody>\n            <tr>\n              <td>{{ $t('Components.Vouchers.BasicData.Label_Name') }}</td>\n              <td>{{ voucher.Name }}</td>\n            </tr>\n            <tr>\n              <td>{{ $t('Components.Vouchers.BasicData.Label_Type') }}</td>\n              <td>{{ voucher.Type }}</td>\n            </tr>\n            <tr v-if=\"voucher.Type !== 'Rate' && voucher.Type !== 'Package'\">\n              <td>{{ $t('Components.Vouchers.BasicData.Label_Code') }}</td>\n              <td>\n                {{ voucher.Code }}\n                <a\n                  @click=\"handleCopyTextFromParagraph\"\n                  title=\"Copy\"\n                ><span class=\"icon is-small\">\n                    <font-awesome-icon :icon=\"['fas', 'copy']\" /> </span></a>\n              </td>\n            </tr>\n          </tbody>\n        </table>\n        <slot name=\"stats\"></slot>\n      </div>\n      <div class=\"column\">\n        <p>\n          {{ $t('Components.Vouchers.BasicData.Label_Description') }}:\n        </p>\n        <div class=\"textWrapper has-custom-scrollbar p-4\">{{ voucher.Description }}</div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { EventBus } from '@/eventbus/event-bus';\nimport { mapState } from 'vuex';\n\nexport default {\n  components: {\n    ModalEditBasicData: () =>\n      import('@/components/Vouchers/ModalEditBasicData'),\n  },\n  props: {\n    hideSectionHeader: {\n      type: Boolean,\n      default: false,\n    },\n  },\n\n  data() {\n    return {\n      locationId: Number(this.$route.params.locationId),\n      showEditBasicData: false,\n    };\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('voucherStore', ['voucher']),\n\n    title() {\n      if (this.voucher.Type === 'Package') {\n        return this.$t('Entity.entity_Package');\n      } else {\n        return this.$t('Entity.entity_Voucher');\n      }\n    },\n\n    locationCanEdit() {\n      let canEdit = false;\n\n      if (this.voucher) {\n        let locationIndex = this.voucher.Locations.findIndex(\n          (l) => l.LocationId === this.locationId\n        );\n        if (locationIndex > -1) {\n          canEdit = this.voucher.Locations[locationIndex].LocationCreated;\n        }\n      }\n\n      return canEdit;\n    },\n  },\n\n  methods: {\n    openBasicData() {\n      this.showEditBasicData = true;\n    },\n\n    hideModal() {\n      this.showEditBasicData = false;\n    },\n\n    handleCopyTextFromParagraph() {\n      const body = document.querySelector('body');\n      const area = document.createElement('textarea');\n      body.appendChild(area);\n\n      area.value = this.voucher.Code;\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(\n          'Components.Vouchers.BasicData.Toast_CopiedToClipboard'\n        ),\n      });\n    },\n  },\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.table {\n  tbody {\n    tr {\n      &:first-child {\n        td {\n          border-top-width: 1px;\n        }\n      }\n      td {\n        &:first-child {\n          width: 175px;\n        }\n      }\n    }\n  }\n}\n\n.textWrapper {\n  border: 1px solid $grey-lighter;\n  overflow-y: scroll;\n  width: 100%;\n  height: 240px;\n  white-space: pre-wrap;\n}\n</style>","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!./BasicData.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!./BasicData.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BasicData.vue?vue&type=template&id=056eb8bc&scoped=true\"\nimport script from \"./BasicData.vue?vue&type=script&lang=js\"\nexport * from \"./BasicData.vue?vue&type=script&lang=js\"\nimport style0 from \"./BasicData.vue?vue&type=style&index=0&id=056eb8bc&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  \"056eb8bc\",\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}