{"version":3,"sources":["webpack:///./src/providers/tax.js","webpack:///./src/components/Reservations/EditOption.vue","webpack:///src/components/Reservations/EditOption.vue","webpack:///./src/components/Reservations/EditOption.vue?7b96","webpack:///./src/components/Reservations/EditOption.vue?2cda"],"names":["methods","getLocationTaxRates","locationId","_asyncToGenerator","_regenerator","m","_callee","response","w","_context","n","axios","get","concat","process","headers","apiToken","profileToken","store","getters","v","a","saveLocationTaxRates","taxRates","_callee2","_context2","put","render","_vm","this","_c","_self","staticClass","_v","_s","$t","mOption","InPackage","_e","directives","name","rawName","value","Amount","expression","modifiers","attrs","domProps","on","$event","target","composing","$set","_n","$forceUpdate","_m","reservationDate","Spaces","length","SpaceId","$$selectedVal","Array","prototype","filter","call","options","o","selected","map","val","_value","multiple","option","_l","reservationSpace","index","key","SpaceName","spaces","space","Id","Name","TimeSelectable","SelectedTime","_f","FollowsDateStart","timeSlots","timeSlot","IsPerHour","UseManualDuration","BillableDuration","updatePricePerHour","getOptionDurationTimeSlots","slot","isEmployee","locationState","Settings","ShowTaxEditReservation","TaxPercentage","updateTaxPercentage","taxPercentages","taxPercentage","isLocked","updateCrcValue","delay","model","PricePerItem","callback","$$v","$i18n","locale","reservation","Currency","optionTotalPrice","HasProposal","ShowProposalList","_defineProperty","isArray","_i","$$a","$$el","$$c","checked","$$i","slice","ShowProposalSummary","ReservationSet","class","changeAllInSet","saveReservationOption","closeDrawer","isSaving","disableSaveButton","staticRenderFns","components","InputNumeric","props","default","type","Boolean","Object","required","data","isSavingError","isUpdatingPrice","JSON","parse","stringify","responseMessage","computed","_objectSpread","mapState","resStart","self","minStartMinutes","tmp","lowest","Number","POSITIVE_INFINITY","i","StartMinutes","resEnd","maxEndMinutes","highest","NEGATIVE_INFINITY","EndMinutes","buildTimeMinutesOptions","showNoQuantityWarning","showNoPriceWarning","String","calculateTotalPrice","created","mapMutations","min","MinimumDuration","max","MaximumDuration","minutes","open","close","minutesSteps","output","push","_this","taxProvider","LocationId","then","status","taxIndex","findIndex","t","TaxId","ms","timer","clearTimeout","setTimeout","apply","_this2","reservationProvider","getReservationOptionPriceUpdate","Key","OptionId","Date","PriceTotal","Crc","finally","_this3","crcProvider","checkCrc","_this4","optionIndex","Options","date","$options","filters","dateObjectIsoDateString","parseIsoDateStringToDate","criteria","ReservationId","CategoryId","Quantity","CurrencyId","Deductible","ChangeAllInSet","IsPP","Duration","AddShareableSpace","updateReservationOption","setReservation","EventBus","$emit","message","catch","error","Value","total","MaxTotal","component"],"mappings":"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","file":"js/chunk-cda2a0be.js?id=2e561492b3d858dcf8a8","sourcesContent":["import axios from 'axios'\nimport store from '../store'\n\nexport default {\n  methods: {\n    async getLocationTaxRates(locationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/tax/location/${locationId}/rates`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async saveLocationTaxRates(locationId, taxRates) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/tax/location/${locationId}/rates`,\n        taxRates,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    }\n  }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('table',{staticClass:\"table is-fullwidth\"},[_c('tbody',[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_Quantity')))]),_c('td',{staticClass:\"has-text-right\"},[(!_vm.mOption.InPackage)?_c('div',{staticClass:\"field has-addons is-pulled-right\"},[_c('p',{staticClass:\"control\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model.number\",value:(_vm.mOption.Amount),expression:\"mOption.Amount\",modifiers:{\"number\":true}}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mOption.Amount)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mOption, \"Amount\", _vm._n($event.target.value))},\"blur\":function($event){return _vm.$forceUpdate()}}})]),_vm._m(0)]):_vm._e(),(_vm.mOption.InPackage)?_c('div',[_vm._v(_vm._s(_vm.mOption.Amount)+\"x\")]):_vm._e()])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_Space')))]),_c('td',{staticClass:\"has-text-right\"},[_c('div',{staticClass:\"select\"},[(_vm.reservationDate.Spaces.length > 0)?_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mOption.SpaceId),expression:\"mOption.SpaceId\"}],staticClass:\"input\",on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mOption, \"SpaceId\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},[_c('option',{domProps:{\"selected\":_vm.option.SpaceId === 0,\"value\":0}},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditOption.Label_NonApplicable' ))+\" \")]),_c('optgroup',{attrs:{\"label\":_vm.$t(\n                    'Components.Reservation.ModalEditOption.Select_Option_BookedSpaces'\n                  )}},_vm._l((_vm.reservationDate.Spaces),function(reservationSpace,index){return _c('option',{key:index,domProps:{\"selected\":_vm.mOption.SpaceId === reservationSpace.SpaceId,\"value\":reservationSpace.SpaceId}},[_vm._v(\" \"+_vm._s(reservationSpace.SpaceName)+\" \")])}),0),(_vm.spaces.length > 0)?_c('optgroup',{attrs:{\"label\":_vm.$t(\n                    'Components.Reservation.ModalEditOption.Select_Option_OtherSpaces'\n                  )}},_vm._l((_vm.spaces),function(space,index){return _c('option',{key:index,domProps:{\"selected\":_vm.mOption.SpaceId === space.Id,\"value\":space.Id}},[_vm._v(\" \"+_vm._s(space.Name)+\" \")])}),0):_vm._e()]):_vm._e()])])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_Time')))]),_c('td',{staticClass:\"has-text-right\"},[(_vm.mOption.TimeSelectable === 0 && _vm.mOption.SelectedTime > -1)?_c('div',[_vm._v(_vm._s(_vm._f(\"minutesToTime\")(_vm.mOption.SelectedTime)))]):_vm._e(),(_vm.mOption.FollowsDateStart)?_c('div',{staticClass:\"is-italic is-size-7 has-text-grey\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Text_FollowsMeetingStart'))+\" \")]):_vm._e(),(_vm.mOption.TimeSelectable > 0)?_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mOption.SelectedTime),expression:\"mOption.SelectedTime\"}],on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mOption, \"SelectedTime\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])},function($event){_vm.mOption.FollowsDateStart = false}]}},[_c('option',{domProps:{\"value\":-1,\"selected\":_vm.option.SelectedTime === -1}},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditOption.Label_NonApplicable' ))+\" \")]),_vm._l((_vm.timeSlots),function(timeSlot){return _c('option',{key:timeSlot,domProps:{\"value\":timeSlot,\"selected\":_vm.mOption.SelectedTime === timeSlot}},[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(timeSlot))+\" \")])})],2)]):_vm._e()])]),(_vm.option.IsPerHour && _vm.option.UseManualDuration)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_Duration')))]),_c('td',{staticClass:\"has-text-right\"},[_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mOption.BillableDuration),expression:\"mOption.BillableDuration\"}],on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mOption, \"BillableDuration\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])},_vm.updatePricePerHour]}},_vm._l((_vm.getOptionDurationTimeSlots(_vm.option)),function(slot,index){return _c('option',{key:index,domProps:{\"value\":slot,\"selected\":_vm.mOption.BillableDuration === slot}},[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToDuration\")(slot))+\" \")])}),0)])])]):_vm._e(),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_Vat')))]),_c('td',{staticClass:\"has-text-right\"},[(!_vm.mOption.InPackage)?_c('div',[(\n                !_vm.isEmployee || !_vm.locationState.Settings.ShowTaxEditReservation\n              )?_c('div',[_vm._v(\" \"+_vm._s(_vm.mOption.TaxPercentage)+\"% \")]):_vm._e(),(\n                _vm.isEmployee && _vm.locationState.Settings.ShowTaxEditReservation\n              )?_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mOption.TaxPercentage),expression:\"mOption.TaxPercentage\"}],on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mOption, \"TaxPercentage\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])},function($event){return _vm.updateTaxPercentage()}]}},_vm._l((_vm.taxPercentages),function(taxPercentage,index){return _c('option',{key:index,domProps:{\"value\":taxPercentage.TaxPercentage,\"selected\":taxPercentage.TaxPercentage === _vm.mOption.TaxPercentage}},[_vm._v(\" \"+_vm._s(taxPercentage.TaxPercentage)+\"% \")])}),0)]):_vm._e()]):_vm._e()])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_Price')))]),_c('td',{staticClass:\"has-text-right\"},[(!_vm.mOption.InPackage)?_c('div',[(_vm.isEmployee)?_c('div',{staticClass:\"field has-addons is-pulled-right\"},[_c('p',{staticClass:\"control\"},[_c('InputNumeric',{attrs:{\"disabled\":_vm.isLocked},on:{\"change\":_vm.updateCrcValue,\"keyup\":function($event){return _vm.delay(_vm.updateCrcValue, 200)}},model:{value:(_vm.mOption.PricePerItem),callback:function ($$v) {_vm.$set(_vm.mOption, \"PricePerItem\", $$v)},expression:\"mOption.PricePerItem\"}})],1)]):_vm._e(),(!_vm.isEmployee)?_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.mOption.PricePerItem,_vm.$i18n.locale, _vm.reservation.Currency))+\" \")]):_vm._e()]):_vm._e()])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_TotalPrice')))]),_c('td',{staticClass:\"has-text-right\"},[(!_vm.mOption.InPackage)?_c('div',[_c('span',[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.optionTotalPrice,_vm.$i18n.locale, _vm.mOption.Currency)))])]):_vm._e()])]),(_vm.reservation.HasProposal > 0)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_ShowProposalList')))]),_c('td',{staticClass:\"has-text-right\"},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mOption.ShowProposalList),expression:\"mOption.ShowProposalList\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mOption.ShowProposalList,\"checked\":Array.isArray(_vm.mOption.ShowProposalList)?_vm._i(_vm.mOption.ShowProposalList,null)>-1:(_vm.mOption.ShowProposalList)},on:{\"change\":function($event){var $$a=_vm.mOption.ShowProposalList,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mOption, \"ShowProposalList\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mOption, \"ShowProposalList\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mOption, \"ShowProposalList\", $$c)}}}})])])]):_vm._e(),(_vm.reservation.HasProposal > 0)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_ShowProposalSummary')))]),_c('td',{staticClass:\"has-text-right\"},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mOption.ShowProposalSummary),expression:\"mOption.ShowProposalSummary\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mOption.ShowProposalSummary,\"checked\":Array.isArray(_vm.mOption.ShowProposalSummary)?_vm._i(_vm.mOption.ShowProposalSummary,null)>-1:(_vm.mOption.ShowProposalSummary)},on:{\"change\":function($event){var $$a=_vm.mOption.ShowProposalSummary,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mOption, \"ShowProposalSummary\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mOption, \"ShowProposalSummary\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mOption, \"ShowProposalSummary\", $$c)}}}})])])]):_vm._e()]),(_vm.reservation.ReservationSet.length > 0 && !_vm.mOption.InPackage)?_c('tfoot',[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Header_ChangeAllInSet')))]),_c('td',{staticClass:\"has-text-right\"},[(_vm.reservation.ReservationSet.length > 0)?_c('div',{staticClass:\"tabs is-toggle is-small is-pulled-right\"},[_c('ul',[_c('li',{class:{ 'is-active': _vm.changeAllInSet === false }},[_c('a',{on:{\"click\":function($event){_vm.changeAllInSet = false}}},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('General.No'))}})])]),_c('li',{class:{ 'is-active': _vm.changeAllInSet === true }},[_c('a',{on:{\"click\":function($event){_vm.changeAllInSet = true}}},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('General.Yes'))}})])])])]):_vm._e(),(_vm.changeAllInSet)?_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ModalEditOption.Message_ChangeAllInSet')}}):_vm._e()],1)])]):_vm._e()]),_c('div',{staticClass:\"mt-6\"},[_c('ui-submit-form-controls',{staticClass:\"has-margin-bottom\",attrs:{\"onClickSave\":_vm.saveReservationOption,\"onClickCancel\":_vm.closeDrawer,\"isSaving\":_vm.isSaving,\"disableSaveButton\":_vm.disableSaveButton}})],1)])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"button is-static\"},[_vm._v(\"X\")])])\n}]\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <table class=\"table is-fullwidth\">\n      <tbody>\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_Quantity') }}</td>\n          <td class=\"has-text-right\">\n            <div v-if=\"!mOption.InPackage\" class=\"field has-addons is-pulled-right\">\n              <p class=\"control\">\n                <input\n                  type=\"text\"\n                  v-model.number=\"mOption.Amount\"\n                  class=\"input\"\n                />\n              </p>\n              <p class=\"control\">\n                <a class=\"button is-static\">X</a>\n              </p>\n            </div>\n            <div v-if=\"mOption.InPackage\">{{ mOption.Amount }}x</div>\n          </td>\n        </tr>\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_Space') }}</td>\n          <td class=\"has-text-right\">\n            <div class=\"select\">\n              <select\n                v-if=\"reservationDate.Spaces.length > 0\"\n                class=\"input\"\n                v-model=\"mOption.SpaceId\"\n              >\n                <option :selected=\"option.SpaceId === 0\" :value=\"0\">\n                  {{\n                    $t(\n                      'Components.Reservation.ModalEditOption.Label_NonApplicable'\n                    )\n                  }}\n                </option>\n                <optgroup\n                  :label=\"\n                    $t(\n                      'Components.Reservation.ModalEditOption.Select_Option_BookedSpaces'\n                    )\n                  \"\n                >\n                  <option\n                    v-for=\"(reservationSpace, index) in reservationDate.Spaces\"\n                    :key=\"index\"\n                    :selected=\"mOption.SpaceId === reservationSpace.SpaceId\"\n                    :value=\"reservationSpace.SpaceId\"\n                  >\n                    {{ reservationSpace.SpaceName }}\n                  </option>\n                </optgroup>\n                <optgroup\n                  v-if=\"spaces.length > 0\"\n                  :label=\"\n                    $t(\n                      'Components.Reservation.ModalEditOption.Select_Option_OtherSpaces'\n                    )\n                  \"\n                >\n                  <option\n                    v-for=\"(space, index) in spaces\"\n                    :key=\"index\"\n                    :selected=\"mOption.SpaceId === space.Id\"\n                    :value=\"space.Id\"\n                  >\n                    {{ space.Name }}\n                  </option>\n                </optgroup>\n              </select>\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_Time') }}</td>\n          <td class=\"has-text-right\">\n            <div v-if=\"mOption.TimeSelectable === 0 && mOption.SelectedTime > -1\">{{ mOption.SelectedTime | minutesToTime }}</div>\n            <!-- CTP-1585: explains a time that moves on its own when the meeting start changes -->\n            <div v-if=\"mOption.FollowsDateStart\" class=\"is-italic is-size-7 has-text-grey\">\n              {{ $t('Components.Reservation.ModalEditOption.Text_FollowsMeetingStart') }}\n            </div>\n            <div class=\"select\" v-if=\"mOption.TimeSelectable > 0\">\n              <!-- CTP-1585: picking a time here clears the option's \"same as meeting start\" anchor -->\n              <select v-model=\"mOption.SelectedTime\" @change=\"mOption.FollowsDateStart = false\">\n                <option :value=\"-1\" :selected=\"option.SelectedTime === -1\">\n                  {{\n                    $t(\n                      'Components.Reservation.ModalEditOption.Label_NonApplicable'\n                    )\n                  }}\n                </option>\n                <option\n                  v-for=\"timeSlot in timeSlots\"\n                  :key=\"timeSlot\"\n                  :value=\"timeSlot\"\n                  :selected=\"mOption.SelectedTime === timeSlot\"\n                >\n                  {{ timeSlot | minutesToTime }}\n                </option>\n              </select>\n            </div>\n          </td>\n        </tr>\n        <tr v-if=\"option.IsPerHour && option.UseManualDuration\" >\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_Duration') }}</td>\n          <td class=\"has-text-right\">\n            <div class=\"select\">\n              <select \n                v-model=\"mOption.BillableDuration\"\n                @change=\"updatePricePerHour\"\n              >\n                <option\n                  v-for=\"(slot, index) in getOptionDurationTimeSlots(option)\"\n                  :key=\"index\"\n                  :value=\"slot\"\n                  :selected=\"mOption.BillableDuration === slot\"\n                >\n                  {{ slot | minutesToDuration }}\n                </option>\n              </select>\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_Vat') }}</td>\n          <td class=\"has-text-right\">\n            <div v-if=\"!mOption.InPackage\">\n              <div\n                v-if=\"\n                  !isEmployee || !locationState.Settings.ShowTaxEditReservation\n                \"\n              >\n                {{ mOption.TaxPercentage }}%\n              </div>\n              <div\n                class=\"select\"\n                v-if=\"\n                  isEmployee && locationState.Settings.ShowTaxEditReservation\n                \"\n              >\n                <select\n                  v-model=\"mOption.TaxPercentage\"\n                  @change=\"updateTaxPercentage()\"\n                >\n                  <option\n                    v-for=\"(taxPercentage, index) in taxPercentages\"\n                    :key=\"index\"\n                    :value=\"taxPercentage.TaxPercentage\"\n                    :selected=\"\n                      taxPercentage.TaxPercentage === mOption.TaxPercentage\n                    \"\n                  >\n                    {{ taxPercentage.TaxPercentage }}%\n                  </option>\n                </select>\n              </div>\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_Price') }}</td>\n          <td class=\"has-text-right\">\n            <div v-if=\"!mOption.InPackage\">\n              <div v-if=\"isEmployee\" class=\"field has-addons is-pulled-right\">\n                <!-- <p class=\"control\">\n                  <a\n                    class=\"button is-static\"\n                    v-html=\"mOption.CurrencySymbol\"\n                  ></a>\n                </p> -->\n                <p class=\"control\">\n                  <InputNumeric\n                    :disabled=\"isLocked\"\n                    @change=\"updateCrcValue\"\n                    @keyup=\"delay(updateCrcValue, 200)\"\n                    v-model=\"mOption.PricePerItem\"\n                  />\n                </p>\n              </div>\n              <div v-if=\"!isEmployee\">\n                {{\n                  mOption.PricePerItem\n                    | toCurrency($i18n.locale, reservation.Currency)\n                }}\n              </div>\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_TotalPrice') }}</td>\n          <td class=\"has-text-right\">\n            <div v-if=\"!mOption.InPackage\">\n              <span> {{ optionTotalPrice | toCurrency($i18n.locale, mOption.Currency) }}</span>\n            </div>\n          </td>\n        </tr>\n\n        <tr v-if=\"reservation.HasProposal > 0\">\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_ShowProposalList') }}</td>\n          <td class=\"has-text-right\">\n            <label class=\"checkbox\">\n              <input\n                type=\"checkbox\"\n                v-model=\"mOption.ShowProposalList\"\n                :checked=\"mOption.ShowProposalList\"\n              />\n            </label>\n          </td>\n        </tr>\n        <tr v-if=\"reservation.HasProposal > 0\">\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_ShowProposalSummary') }}</td>\n          <td class=\"has-text-right\">\n            <label class=\"checkbox\">\n              <input\n                type=\"checkbox\"\n                v-model=\"mOption.ShowProposalSummary\"\n                :checked=\"mOption.ShowProposalSummary\"\n              />\n            </label>\n          </td>\n        </tr>\n      </tbody>\n      <tfoot v-if=\"reservation.ReservationSet.length > 0 && !mOption.InPackage\">\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditOption.Header_ChangeAllInSet') }}</td>\n          <td class=\"has-text-right\">\n            <div\n              class=\"tabs is-toggle is-small is-pulled-right\"\n              v-if=\"reservation.ReservationSet.length > 0\"\n            >\n              <ul>\n                <li :class=\"{ 'is-active': changeAllInSet === false }\">\n                  <a @click=\"changeAllInSet = false\">\n                    <span v-text=\"$t('General.No')\"></span>\n                  </a>\n                </li>\n                <li :class=\"{ 'is-active': changeAllInSet === true }\">\n                  <a @click=\"changeAllInSet = true\">\n                    <span v-text=\"$t('General.Yes')\"></span>\n                  </a>\n                </li>\n              </ul>\n            </div>\n\n            <Message\n              v-if=\"changeAllInSet\"\n              :message=\"\n                $t('Components.Reservation.ModalEditOption.Message_ChangeAllInSet')\n              \"\n            />\n          </td>\n        </tr>\n      </tfoot>\n    </table>\n\n    <div class=\"mt-6\">\n      <ui-submit-form-controls\n        :onClickSave=\"saveReservationOption\"\n        :onClickCancel=\"closeDrawer\"\n        :isSaving=\"isSaving\"\n        :disableSaveButton=\"disableSaveButton\"\n        class=\"has-margin-bottom\"\n      />\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport crcProvider from '@/providers/crc'\nimport reservationProvider from '@/providers/reservation'\nimport taxProvider from '@/providers/tax'\nimport InputNumeric from '../UI/Form/InputNumeric'\n\nconst Message = () => import('@/components/UI/Message')\n\nexport default {\n  components: {\n    // Message,\n    InputNumeric,\n  },\n\n  props: {\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: false,\n      type: Boolean,\n    },\n\n    option: {\n      type: Object,\n      default: null,\n    },\n\n    reservationDate: {\n      type: Object,\n      default: null,\n      required: true\n    }\n  },\n\n  data() {\n    return {\n      changeAllInSet: false,\n      isSaving: false,\n      isSavingError: false,\n      isUpdatingPrice: false,\n      mOption: JSON.parse(JSON.stringify(this.option)),\n      spaces: [],\n      taxPercentages: [],\n      responseMessage: '',\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('reservationStore', ['reservation']),\n\n    resStart() {\n      let self = this\n      let minStartMinutes = 0\n\n      if (self.reservation && self.reservationDate.Spaces.length > 0) {\n        let lowest = Number.POSITIVE_INFINITY\n        let tmp\n        for (let i = self.reservationDate.Spaces.length - 1; i >= 0; i--) {\n          tmp = self.reservationDate.Spaces[i].StartMinutes\n          if (tmp < lowest) {\n            lowest = tmp\n          }\n        }\n        minStartMinutes = lowest\n      }\n      return minStartMinutes\n    },\n\n    resEnd() {\n      let self = this\n      let maxEndMinutes = 0\n\n      if (self.reservation && self.reservationDate.Spaces.length > 0) {\n        let highest = Number.NEGATIVE_INFINITY\n        let tmp\n        for (let i = self.reservationDate.Spaces.length - 1; i >= 0; i--) {\n          tmp = self.reservationDate.Spaces[i].EndMinutes\n          if (tmp > highest) {\n            highest = tmp\n          }\n        }\n        maxEndMinutes = highest\n      }\n      return maxEndMinutes\n    },\n\n    timeSlots() {\n      return this.buildTimeMinutesOptions(0, 1440, 15);\n    },\n\n    disableSaveButton() {\n      return this.showNoQuantityWarning || this.showNoPriceWarning || this.isUpdatingPrice\n    },\n\n    showNoQuantityWarning() {\n      let self = this\n      return String(self.mOption.Amount).length === 0\n    },\n\n    showNoPriceWarning() {\n      let self = this\n      return String(self.mOption.PricePerItem).length === 0\n    },\n\n    optionTotalPrice() {\n      return this.calculateTotalPrice(this.mOption)\n    },\n  },\n\n  created() {\n    this.getLocationTaxRates();\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    getOptionDurationTimeSlots(option) {\n      let min = option.MinimumDuration > 0 ? option.MinimumDuration : 0\n      let max = option.MaximumDuration > 0 ? option.MaximumDuration : 600\n      let minutes = 15\n\n      return this.buildTimeMinutesOptions(min, max, minutes);\n    },\n\n    buildTimeMinutesOptions(open, close, minutesSteps) {\n      let output = [];\n\n      for (let i = open; i <= close; i = i + minutesSteps) {\n        output.push(i);\n      }\n      return output;\n    },\n\n    getLocationTaxRates() {\n      taxProvider.methods\n        .getLocationTaxRates(this.reservation.LocationId)\n        .then((response) => {\n          if (response.status === 200) {\n            this.taxPercentages = response.data\n          }\n        })\n    },\n\n    updateTaxPercentage() {\n      let self = this\n\n      let taxIndex = self.taxPercentages.findIndex(\n        (t) => t.TaxId === self.option.TaxId\n      )\n      if (taxIndex > -1) {\n        self.option.TaxPercentage = self.taxPercentages[taxIndex].TaxPercentage\n      }\n    },\n\n    delay(callback, ms) {\n      let self = this\n\n      if (self.timer) {\n        clearTimeout(self.timer)\n      }\n      this.timer = setTimeout(() => {\n        callback.apply(self)\n        clearTimeout(self.timer)\n      }, ms || 0)\n    },\n    \n    updatePricePerHour() {\n      if (this.mOption.InPackage) {\n        return;\n      }\n      this.isUpdatingPrice = true;\n\n      reservationProvider.methods.getReservationOptionPriceUpdate(this.reservation.Key, this.mOption.OptionId, this.reservationDate.Date, this.mOption.Amount, this.mOption.BillableDuration)\n        .then((response) => {\n          if (response.status === 200) {\n            this.mOption.PricePerItem = response.data.PricePerItem;\n            this.mOption.PriceTotal = response.data.PriceTotal;\n            this.mOption.Crc = response.data.Crc;\n          }\n        })\n        .finally(() => {\n          this.isUpdatingPrice = false;\n        })\n    },\n\n    updateCrcValue() {\n      crcProvider.methods\n        .checkCrc(this.mOption.OptionId, this.mOption.PricePerItem)\n        .then((response) => {\n          if (response.status === 200) {\n            this.mOption.Crc = response.data\n          }\n        })\n    },\n\n    saveReservationOption() {\n      let self = this\n      if (!self.isSaving) {\n        self.isSaving = true\n\n        let optionIndex = self.reservationDate.Options.findIndex(\n          (o) => o.Id === self.option.Id\n        )\n        if (optionIndex > -1) {\n          self.mOption.PriceTotal = self.optionTotalPrice\n\n          let date = this.$options.filters.dateObjectIsoDateString(this.$options.filters.parseIsoDateStringToDate(this.reservationDate.Date))\n\n          let criteria = {\n            Id: self.mOption.Id,\n            ReservationId: self.reservation.Id,\n            OptionId: self.mOption.OptionId,\n            Date: date,\n            CategoryId: self.mOption.CategoryId,\n            Quantity: self.mOption.Amount,\n            CurrencyId: self.mOption.CurrencyId,\n            PricePerItem: self.mOption.PricePerItem,\n            PriceTotal: self.optionTotalPrice,\n            Crc: self.mOption.Crc,\n            TaxId: self.mOption.TaxId,\n            TaxPercentage: self.mOption.TaxPercentage,\n            Deductible: self.mOption.Deductible,\n            ChangeAllInSet: self.changeAllInSet,\n            IsPP: self.mOption.IsPP,\n            IsPerHour: self.mOption.IsPerHour,\n            SelectedTime: self.mOption.SelectedTime,\n            FollowsDateStart: self.mOption.FollowsDateStart,\n            SpaceId: self.mOption.SpaceId,\n            Duration: self.mOption.BillableDuration,\n            AddShareableSpace: self.mOption.AddShareableSpace,\n            ShowProposalList: self.mOption.ShowProposalList,\n            ShowProposalSummary: self.mOption.ShowProposalSummary\n          }\n\n          reservationProvider.methods\n            .updateReservationOption(self.reservation.Key, criteria)\n            .then((response) => {\n              if (response.status === 200) {\n                // Update reservation store\n                self.setReservation(response.data)\n\n                // Send message to display toast on screen\n                EventBus.$emit('showToast', {\n                  type: 'info',\n                  message: this.$t('General.Toast_ReservationUpdated'),\n                });\n\n                // Close \n                this.closeDrawer();\n              }\n            })\n            .catch((error) => {\n              self.isSavingError = true\n              self.responseMessage = error.response.data.Value\n            })\n            .finally(() => {\n              self.isSaving = false\n            })\n        } else {\n          self.isSavingError = true\n          self.isSaving = false\n        }\n      }\n    },\n\n    calculateTotalPrice(option) {\n      let total = option.Amount * option.PricePerItem\n\n      if (option.MaxTotal > 0 && total > option.MaxTotal) {\n        total = option.MaxTotal\n      }\n\n      return total\n    },\n\n    closeDrawer() {\n      // Close \n      this.$emit('hideDrawer');\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!./EditOption.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!./EditOption.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EditOption.vue?vue&type=template&id=7c8ce246\"\nimport script from \"./EditOption.vue?vue&type=script&lang=js\"\nexport * from \"./EditOption.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":""}