%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/forge/takeaseat.eco-n-tech.co.uk/.nuxt/dist/server/pages/booking/
Upload File :
Create Path :
Current File : //home/forge/takeaseat.eco-n-tech.co.uk/.nuxt/dist/server/pages/booking/_slug.js

exports.ids = [48,23,31,35];
exports.modules = {

/***/ 170:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/blocks/Booking/SummaryStep.vue?vue&type=template&id=2fdf21e8&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._ssrNode("<span class=\"block text-center text-3xl font-bold mb-6\">Summary</span> <p>You are nearly there. Please carefully check all details are correct before proceeding to payment.</p> <div class=\"my-2 mb-6\"><div class=\"grid grid-cols-3 gap-3 border-b-2 border-gray py-6\"><span class=\"uppercase text-sm\">Therapist</span> <span class=\"col-span-2 text-sm\">"+_vm._ssrEscape(_vm._s(_vm.therapist.user.full_name))+"</span></div> "+((_vm.loading == false)?("<div class=\"border-b-2 border-gray py-4\"><div class=\"grid grid-cols-3 gap-3 py-2\"><span class=\"uppercase text-sm\">No. Of Sessions</span> <span class=\"text-sm\">"+_vm._ssrEscape(_vm._s(Object.keys(_vm.selected_slots).length))+"</span></div> "+(_vm._ssrList((_vm.sessions),function(session,key){return ("<div><div class=\"grid grid-cols-6 gap-3 py-2\"><span class=\"col-span-2 uppercase text-sm\">"+_vm._ssrEscape("Session "+_vm._s((key+1)))+"</span> <span class=\"col-span-3 text-sm\">"+_vm._ssrEscape(_vm._s(_vm.$moment.utc(session.slot.start).format('D MMM Y - H:mm')+' - '+_vm.$moment.utc(session.slot.end).format('H:mm')))+"</span> <div class=\"col-span-1 flex items-center justify-end\"><span class=\"text-sm\">"+_vm._ssrEscape(_vm._s(session.item_total.formatted))+"</span></div></div> <div class=\"grid grid-cols-3 gap-3 py-2\"><span class=\"uppercase text-sm\">Session Type</span> <span class=\"text-sm\">"+_vm._ssrEscape(_vm._s(session.session_name))+"</span> <div class=\"flex items-center justify-end\"><button type=\"button\" class=\"text-sm uppercase underline\">Change</button></div></div></div>")}))+"</div>"):"<!---->")+" "+((_vm.loading == false)?("<div class=\"grid grid-cols-2 gap-2 border-b-2 border-gray py-6\"><span class=\"uppercase text-sm\">Total Price</span> <span class=\"uppercase font-bold flex items-center justify-end\">"+_vm._ssrEscape(_vm._s(_vm.totals.formatted))+"</span></div>"):("<div class=\"flex items-center justify-center py-6\"><svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" class=\"animate-spin -ml-1 mr-3 h-5 w-5 text-current\"><circle cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"4\" class=\"opacity-25\"></circle> <path fill=\"currentColor\" d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\" class=\"opacity-75\"></path></svg>\n      Loading...\n    </div>"))+"</div> <div class=\"flex flex-col items-center justify-center\"><button"+(_vm._ssrAttr("disabled",_vm.selected_slots.length < 1))+" type=\"button\" class=\"btn btn-primary btn-small rounded-full w-full sm:w-auto\">"+((_vm.working == false)?("<span>"+_vm._ssrEscape(_vm._s(_vm.button_text))+"</span>"):("<span class=\"flex items-center justify-center\"><svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" class=\"animate-spin -ml-1 mr-3 h-5 w-5 text-current\"><circle cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"4\" class=\"opacity-25\"></circle> <path fill=\"currentColor\" d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\" class=\"opacity-75\"></path></svg> <span>Processing</span></span>"))+"</button> <button type=\"button\" class=\"mt-6 uppercase text-blue-light text-sm\">Go Back</button></div>")])}
var staticRenderFns = []


// CONCATENATED MODULE: ./components/blocks/Booking/SummaryStep.vue?vue&type=template&id=2fdf21e8&

// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/blocks/Booking/SummaryStep.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var SummaryStepvue_type_script_lang_js_ = ({
  props: {
    value: {
      required: true
    },
    selected_slots: {
      type: Object,
      required: true
    },
    working: {
      type: Boolean,
      required: true
    },
    button_text: {
      type: String,
      required: true
    },
    nextStep: {
      type: Function,
      required: true
    }
  },

  data() {
    return {
      loading: true
    };
  },

  computed: {
    therapist() {
      return this.$store.state.booking.therapist;
    },

    sessions() {
      return this.$store.state.booking.summary.sessions;
    },

    totals() {
      return this.$store.state.booking.summary.totals;
    },

    selected_session() {
      return this.$store.state.booking.summary.session;
    }

  },

  async mounted() {
    await this.$store.dispatch('booking/summary/get', {
      user_id: this.therapist.user.id,
      sessions: this.selected_slots,
      sessions_count: Object.keys(this.selected_slots).length
    }).then(() => {
      this.loading = false;
    });
  },

  methods: {
    goBack() {
      this.$emit("input", 1);
    }

  }
});
// CONCATENATED MODULE: ./components/blocks/Booking/SummaryStep.vue?vue&type=script&lang=js&
 /* harmony default export */ var Booking_SummaryStepvue_type_script_lang_js_ = (SummaryStepvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);

// CONCATENATED MODULE: ./components/blocks/Booking/SummaryStep.vue





/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  Booking_SummaryStepvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  "79b9c0db"
  
)

/* harmony default export */ var SummaryStep = __webpack_exports__["default"] = (component.exports);

/***/ }),

/***/ 195:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/blocks/Booking/RegisterStep.vue?vue&type=template&id=1efbf83d&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._ssrNode("<span class=\"block text-center text-3xl font-bold mb-6\">Create Account</span> "),_c('ValidationObserver',{ref:"registerForm"},[_c('form',{attrs:{"role":"form","method":"POST"},on:{"submit":function($event){$event.preventDefault();return _vm.userRegister($event)}}},[_c('ValidationProvider',{attrs:{"rules":"required","name":"first_name"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
var errors = ref.errors;
return [_c('t-input-group',{attrs:{"label":"First Name"}},[_c('t-input',{attrs:{"type":"text","placeholder":"First Name"},model:{value:(_vm.register.first_name),callback:function ($$v) {_vm.$set(_vm.register, "first_name", $$v)},expression:"register.first_name"}}),_vm._v(" "),(errors[0])?_c('span',{staticClass:"field-invalid"},[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}])}),_vm._v(" "),_c('ValidationProvider',{attrs:{"rules":"required","name":"last_name"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
var errors = ref.errors;
return [_c('t-input-group',{attrs:{"label":"Last Name"}},[_c('t-input',{attrs:{"type":"text","placeholder":"Last Name"},model:{value:(_vm.register.last_name),callback:function ($$v) {_vm.$set(_vm.register, "last_name", $$v)},expression:"register.last_name"}}),_vm._v(" "),(errors[0])?_c('span',{staticClass:"field-invalid"},[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}])}),_vm._v(" "),_c('ValidationProvider',{attrs:{"rules":"required","name":"email"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
var errors = ref.errors;
return [_c('t-input-group',{attrs:{"label":"Email"}},[_c('t-input',{attrs:{"type":"email","placeholder":"name@email.com"},model:{value:(_vm.register.email),callback:function ($$v) {_vm.$set(_vm.register, "email", $$v)},expression:"register.email"}}),_vm._v(" "),(errors[0])?_c('span',{staticClass:"field-invalid"},[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}])}),_vm._v(" "),_c('ValidationProvider',{attrs:{"rules":"required|phone_number","name":"phone"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
var errors = ref.errors;
return [_c('t-input-group',{attrs:{"label":"Phone"}},[_c('t-input',{attrs:{"type":"tel","placeholder":"+44"},model:{value:(_vm.register.phone),callback:function ($$v) {_vm.$set(_vm.register, "phone", $$v)},expression:"register.phone"}}),_vm._v(" "),(errors[0])?_c('span',{staticClass:"field-invalid"},[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}])}),_vm._v(" "),_c('ValidationProvider',{attrs:{"rules":"required|password:@password_confirmation","name":"password"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
var errors = ref.errors;
return [_c('t-input-group',{attrs:{"label":"Password"}},[_c('t-input',{attrs:{"type":"password","placeholder":"Password"},model:{value:(_vm.register.password),callback:function ($$v) {_vm.$set(_vm.register, "password", $$v)},expression:"register.password"}}),_vm._v(" "),(errors[0])?_c('span',{staticClass:"field-invalid"},[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}])}),_vm._v(" "),_c('ValidationProvider',{attrs:{"name":"password_confirmation","rules":"required"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
var errors = ref.errors;
return [_c('t-input-group',{attrs:{"label":"Confirm Password"}},[_c('t-input',{attrs:{"type":"password","placeholder":"Confirm Password"},model:{value:(_vm.register.password_confirmation),callback:function ($$v) {_vm.$set(_vm.register, "password_confirmation", $$v)},expression:"register.password_confirmation"}}),_vm._v(" "),(errors[0])?_c('span',{staticClass:"field-invalid"},[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}])}),_vm._v(" "),_c('div',{staticClass:"flex flex-col items-center justify-center"},[_c('button',{staticClass:"btn btn-primary btn-small rounded-full",attrs:{"type":"submit"}},[(_vm.register_working == false)?_c('span',[_vm._v("Create Account & Proceed")]):_c('span',{staticClass:"flex items-center justify-center"},[_c('svg',{staticClass:"animate-spin -ml-1 mr-3 h-5 w-5 text-current",attrs:{"xmlns":"http://www.w3.org/2000/svg","fill":"none","viewBox":"0 0 24 24"}},[_c('circle',{staticClass:"opacity-25",attrs:{"cx":"12","cy":"12","r":"10","stroke":"currentColor","stroke-width":"4"}}),_vm._v(" "),_c('path',{staticClass:"opacity-75",attrs:{"fill":"currentColor","d":"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"}})]),_vm._v(" "),_c('span',[_vm._v("Processing")])])])])],1)]),_vm._ssrNode(" <div class=\"relative text-center mt-8 mb-6\"><span class=\"absolute z-10 top-1/2 left-0 transform -translate-y-1/2 block w-full h-0.5 bg-gray\"></span> <span class=\"relative z-20 inline-block px-6 bg-white uppercase font-bold text-lg\">Or Login</span></div> "),_c('ValidationObserver',{ref:"loginForm"},[_c('form',{attrs:{"role":"form","method":"POST"},on:{"submit":function($event){$event.preventDefault();return _vm.userLogin($event)}}},[_c('ValidationProvider',{attrs:{"rules":"required","name":"email"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
var errors = ref.errors;
return [_c('t-input-group',{attrs:{"label":"Email"}},[_c('t-input',{attrs:{"type":"email","placeholder":"name@email.com"},model:{value:(_vm.login.email),callback:function ($$v) {_vm.$set(_vm.login, "email", $$v)},expression:"login.email"}}),_vm._v(" "),(errors[0])?_c('span',{staticClass:"field-invalid"},[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}])}),_vm._v(" "),_c('ValidationProvider',{attrs:{"rules":"required","name":"password"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
var errors = ref.errors;
return [_c('t-input-group',{attrs:{"label":"Password"}},[_c('t-input',{attrs:{"type":"password","placeholder":"Password"},model:{value:(_vm.login.password),callback:function ($$v) {_vm.$set(_vm.login, "password", $$v)},expression:"login.password"}}),_vm._v(" "),(errors[0])?_c('span',{staticClass:"field-invalid"},[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}])}),_vm._v(" "),_c('div',{staticClass:"flex flex-col items-center justify-center"},[_c('button',{staticClass:"btn btn-primary btn-small rounded-full",attrs:{"type":"submit"}},[(_vm.login_working == false)?_c('span',[_vm._v("Log-in & Proceed")]):_c('span',{staticClass:"flex items-center justify-center"},[_c('svg',{staticClass:"animate-spin -ml-1 mr-3 h-5 w-5 text-current",attrs:{"xmlns":"http://www.w3.org/2000/svg","fill":"none","viewBox":"0 0 24 24"}},[_c('circle',{staticClass:"opacity-25",attrs:{"cx":"12","cy":"12","r":"10","stroke":"currentColor","stroke-width":"4"}}),_vm._v(" "),_c('path',{staticClass:"opacity-75",attrs:{"fill":"currentColor","d":"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"}})]),_vm._v(" "),_c('span',[_vm._v("Processing")])])]),_vm._v(" "),_c('button',{staticClass:"mt-6 uppercase text-blue-light text-sm",attrs:{"type":"button"},on:{"click":_vm.goBack}},[_vm._v("Go Back")])])],1)])],2)}
var staticRenderFns = []


// CONCATENATED MODULE: ./components/blocks/Booking/RegisterStep.vue?vue&type=template&id=1efbf83d&

// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/blocks/Booking/RegisterStep.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var RegisterStepvue_type_script_lang_js_ = ({
  props: {
    value: {
      required: true
    }
  },

  data() {
    return {
      register_working: false,
      login_working: false,
      register: {
        first_name: '',
        last_name: '',
        email: '',
        phone: '',
        password: '',
        password_confirmation: ''
      },
      login: {
        email: '',
        password: ''
      }
    };
  },

  methods: {
    async userRegister() {
      this.$refs.registerForm.validate().then(success => {
        if (!success) {
          return;
        }

        this.register_working = true;
        this.$axios.post('/auth/register', {
          first_name: this.register.first_name,
          last_name: this.register.last_name,
          email: this.register.email,
          phone: this.register.phone,
          password: this.register.password,
          password_confirmation: this.register.password_confirmation
        }).then(response => {
          if (response.status == 200) {
            this.$auth.loginWith('laravelJWT', {
              data: {
                email: this.register.email,
                password: this.register.password
              }
            }).then(response => {
              if (response.status == 200) {
                this.register_working = false;
                this.$emit("input", 4);
              }
            });
          }
        }).catch(error => {
          this.$refs.registerForm.setErrors(error.response.data.errors);
          this.register_working = false;
        });
      });
    },

    async userLogin() {
      this.$refs.loginForm.validate().then(success => {
        if (!success) {
          return;
        }

        this.login_working = true;
        this.$auth.loginWith('laravelJWT', {
          data: this.login
        }).then(response => {
          if (response.status == 200) {
            if (this.login.remember_me == true) {
              this.$auth.$storage.setCookie(`_remember.${this.$auth.options.defaultStrategy}`, this.$auth.strategy.token.get(), {
                maxAge: 2147483647
              });
            }

            this.$emit("input", 4);
          }
        }).catch(error => {
          this.login_working = false;
          this.$toast.error(error.response.data.message).goAway(1500);
        });
      });
    },

    goBack() {
      this.$emit("input", 2);
    }

  }
});
// CONCATENATED MODULE: ./components/blocks/Booking/RegisterStep.vue?vue&type=script&lang=js&
 /* harmony default export */ var Booking_RegisterStepvue_type_script_lang_js_ = (RegisterStepvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);

// CONCATENATED MODULE: ./components/blocks/Booking/RegisterStep.vue





/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  Booking_RegisterStepvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  "71fd6196"
  
)

/* harmony default export */ var RegisterStep = __webpack_exports__["default"] = (component.exports);

/***/ }),

/***/ 196:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/blocks/Booking/PaymentStep.vue?vue&type=template&id=ccb0a27a&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._ssrNode("<span class=\"block text-center text-3xl font-bold mb-6\">Payment</span> <div class=\"grid grid-cols-1 sm:grid-cols-2 gap-y-3 mb-6\"><div class=\"leading-6 text-center sm:text-left\">"+_vm._ssrEscape(_vm._s(Object.keys(_vm.selected_slots).length)+" x Sessions with "+_vm._s(_vm.therapist.user.full_name))+"</div> <div class=\"flex items-center justify-center sm:justify-end text-2xl font-bold\">"+_vm._ssrEscape(_vm._s(_vm.totals.formatted))+"</div></div> <div id=\"payment-request-wrapper\""+(_vm._ssrStyle(null,null, { display: (_vm.isPaymentRequestAllowed) ? '' : 'none' }))+"><div class=\"w-full flex items-center justify-center mb-8\"><div id=\"payment-request-button\" class=\"w-full\"></div></div> <div class=\"relative text-center my-6\"><span class=\"absolute z-10 top-1/2 left-0 transform -translate-y-1/2 block w-full h-0.5 bg-gray\"></span> <span class=\"relative z-20 inline-block px-6 bg-white uppercase\">Or Pay with Card</span></div></div> "+((_vm.isPaymentRequestAllowed == false)?("<div class=\"relative text-center my-6\"><span class=\"absolute z-10 top-1/2 left-0 transform -translate-y-1/2 block w-full h-0.5 bg-gray\"></span> <span class=\"relative z-20 inline-block px-6 bg-white uppercase\">Pay with Card</span></div>"):"<!---->")+" "+((_vm.payment_methods.length > 0)?("<div class=\"grid grid-cols-1 gap-y-2 mb-6\">"+(_vm._ssrList((_vm.payment_methods),function(payment_method,key){return ("<label"+(_vm._ssrAttr("for",'payment_method-'+key))+(_vm._ssrClass("relative grid grid-cols-2 bg-white border border-black border-opacity-10 py-2 px-3 pl-12 rounded-lg transition cursor-pointer",_vm.selected_payment_method == payment_method.id ? 'bg-gray' : ''))+"><input type=\"radio\" name=\"payment_methods\""+(_vm._ssrAttr("id",'payment_method-'+key))+(_vm._ssrAttr("value",payment_method.id))+(_vm._ssrAttr("checked",_vm._q(_vm.selected_payment_method,payment_method.id)))+" class=\"hidden\"> <div"+(_vm._ssrClass("absolute top-0 left-0.5 w-10 h-full bg-center bg-contain",'card-icon-'+payment_method.card.brand))+"></div> <span class=\"text-sm\">"+_vm._ssrEscape(_vm._s(payment_method.billing_details.name))+"</span> <div class=\"text-sm flex items-center justify-end\"><span class=\"mx-2\">"+_vm._ssrEscape("****"+_vm._s(payment_method.card.last4))+"</span> <span class=\"mx-2\">"+_vm._ssrEscape(_vm._s(payment_method.card.exp_month)+"/"+_vm._s(payment_method.card.exp_year))+"</span></div></label>")}))+"</div>"):"<!---->")+" "),_vm._ssrNode("<div"+(_vm._ssrStyle(null,null, { display: (_vm.selected_payment_method == null) ? '' : 'none' }))+">","</div>",[_c('ValidationObserver',{ref:"paymentForm"},[_c('form',{attrs:{"role":"form","method":"POST"},on:{"submit":function($event){$event.preventDefault();return _vm.submitForm($event)}}},[_c('ValidationProvider',{attrs:{"rules":"required"},scopedSlots:_vm._u([{key:"default",fn:function(ref){
var errors = ref.errors;
return [_c('t-input-group',{attrs:{"label":"Name on Card"}},[_c('t-input',{attrs:{"type":"text","placeholder":"Name on Card"},model:{value:(_vm.card_name),callback:function ($$v) {_vm.card_name=$$v},expression:"card_name"}}),_vm._v(" "),(errors[0])?_c('span',{staticClass:"field-invalid"},[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}])}),_vm._v(" "),_c('t-input-group',{attrs:{"label":"Card Information"}},[_c('div',{staticClass:"px-4 py-4 bg-white border border-black border-opacity-20 rounded-xl",attrs:{"id":"card-element"}})]),_vm._v(" "),_c('div',{staticClass:"flex flex-col items-center justify-center sm:px-10"},[_c('button',{staticClass:"btn btn-primary btn-small rounded-full w-full sm:w-auto",attrs:{"disabled":_vm.working == true,"type":"submit"}},[(_vm.working == false)?_c('span',[_vm._v("Pay Now")]):_c('span',{staticClass:"flex items-center justify-center"},[_c('svg',{staticClass:"animate-spin -ml-1 mr-3 h-5 w-5 text-current",attrs:{"xmlns":"http://www.w3.org/2000/svg","fill":"none","viewBox":"0 0 24 24"}},[_c('circle',{staticClass:"opacity-25",attrs:{"cx":"12","cy":"12","r":"10","stroke":"currentColor","stroke-width":"4"}}),_vm._v(" "),_c('path',{staticClass:"opacity-75",attrs:{"fill":"currentColor","d":"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"}})]),_vm._v(" "),_c('span',[_vm._v("Processing")])])]),_vm._v(" "),_c('button',{staticClass:"mt-6 uppercase text-blue-light text-sm",attrs:{"type":"button"},on:{"click":_vm.goBack}},[_vm._v("Go Back")])])],1)])],1),_vm._ssrNode(" "+((_vm.selected_payment_method)?("<div class=\"flex flex-col items-center justify-center sm:px-10\"><button class=\"mb-2 uppercase text-blue-light text-sm\">Use New Card</button> <button"+(_vm._ssrAttr("disabled",_vm.working == true))+" type=\"button\" class=\"btn btn-primary btn-small rounded-full w-full sm:w-auto\">"+((_vm.working == false)?("<span>Pay Now</span>"):("<span class=\"flex items-center justify-center\"><svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" class=\"animate-spin -ml-1 mr-3 h-5 w-5 text-current\"><circle cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"4\" class=\"opacity-25\"></circle> <path fill=\"currentColor\" d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\" class=\"opacity-75\"></path></svg> <span>Processing</span></span>"))+"</button> <button type=\"button\" class=\"mt-6 uppercase text-blue-light text-sm\">Go Back</button></div>"):"<!---->")+" "),_vm._ssrNode("<p class=\"text-sm text-center mt-6 text-black text-opacity-75\">","</p>",[_vm._ssrNode("By subscribing to Take a Seat you are agreeing to all site "),_c('NuxtLink',{staticClass:"text-blue-light hover:underline",attrs:{"to":"/terms-conditions","target":"_blank"}},[_vm._v("Terms and Conditions")]),_vm._ssrNode(". Please read carefully before continuing.")],2)],2)}
var staticRenderFns = []


// CONCATENATED MODULE: ./components/blocks/Booking/PaymentStep.vue?vue&type=template&id=ccb0a27a&

// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/blocks/Booking/PaymentStep.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var PaymentStepvue_type_script_lang_js_ = ({
  props: {
    value: {
      required: true
    },
    selected_slots: {
      type: Object,
      required: true
    }
  },

  data() {
    return {
      error: null,
      working: false,
      stripe: null,
      card: {},
      selected_payment_method: null,
      isPaymentRequestAllowed: false,
      paymentRequest: {},
      card_name: null
    };
  },

  computed: {
    totals() {
      return this.$store.state.booking.summary.totals;
    },

    therapist() {
      return this.$store.state.booking.therapist;
    },

    payment_methods() {
      return this.$store.state.account.billing.paymentMethods;
    },

    setup_intent() {
      return this.$store.state.account.billing.setupIntent;
    },

    connect_id() {
      return this.$store.state.booking.payment.connect_id;
    }

  },

  async mounted() {
    await this.$store.dispatch('account/billing/setupIntent');
    await this.$store.dispatch('account/billing/getPaymentMethods');
    this.mountCard();
  },

  methods: {
    mountCard() {
      const elements = this.$stripe.elements();
      this.card = elements.create('card', {
        style: {
          base: {
            fontSize: '15px',
            fontFamily: 'Poppins, sans-serif'
          }
        }
      });
      this.getPaymentRequest();
      this.card.mount('#card-element');
    },

    submitForm() {
      this.$refs.paymentForm.validate().then(success => {
        if (!success) {
          return;
        }

        this.confirmCardSetup();
      });
    },

    async getPaymentRequest() {
      this.paymentRequest = await this.$stripe.paymentRequest({
        country: 'GB',
        currency: 'gbp',
        total: {
          amount: parseInt(this.totals.amount),
          label: 'Takeaseat Booking with ' + this.therapist.user.full_name
        },
        requestPayerName: true,
        requestPayerEmail: true
      });
      this.mountPaymentButton();
    },

    async mountPaymentButton() {
      const elements = this.$stripe.elements();
      let prButton = elements.create('paymentRequestButton', {
        paymentRequest: this.paymentRequest
      }); // Check the availability of the Payment Request API first.

      this.paymentRequest.canMakePayment().then(function (result) {
        if (result) {
          this.isPaymentRequestAllowed = true;
          prButton.mount('#payment-request-button');
        } else {
          this.isPaymentRequestAllowed = false;
        }
      }.bind(this));
      this.paymentRequest.on('paymentmethod', function (event) {
        event.complete('success');
        this.createPayment(event.paymentMethod.id);
      }.bind(this));
    },

    async confirmCardSetup() {
      this.working = true;
      const {
        setupIntent,
        error
      } = await this.$stripe.confirmCardSetup(this.setup_intent, {
        payment_method: {
          card: this.card,
          billing_details: {
            name: this.card_name
          }
        }
      });

      if (error) {
        this.$toast.error(error.message).goAway(3000);
        await this.$store.dispatch('account/billing/setupIntent');
        this.working = false;
      } else {
        this.createPayment(setupIntent.payment_method);
      }
    },

    async createPayment(payment_method) {
      this.working = true;
      await this.$axios.post('/booking/payment/' + this.therapist.user.id, {
        grand_total: this.totals.amount,
        sessions: this.selected_slots,
        sessions_count: Object.keys(this.selected_slots).length,
        payment_method: payment_method
      }).then(response => {
        if (response.status == 200) {
          this.createBooking(response.data);
        }
      }).catch(error => {
        this.working = false;
        this.$toast.error(error.response.data.message).goAway(3000);
      });
    },

    async createBooking(data) {
      this.working = true;
      await this.$axios.post('/booking/create', {
        sessions: this.selected_slots,
        amount: this.totals.amount,
        therapist_id: this.therapist.id,
        charges: data.charges,
        transfer: data.transfer
      }).then(response => {
        if (response.status == 200) {
          this.$store.commit('booking/success/setBookings', response.data);
          this.$router.push({
            path: '/booking/success'
          });
        }
      }).catch(error => {
        this.$toast.error(error.response.message).goAway(1000);
        this.working = false;
      });
    },

    goBack() {
      this.$emit("input", 2);
    }

  }
});
// CONCATENATED MODULE: ./components/blocks/Booking/PaymentStep.vue?vue&type=script&lang=js&
 /* harmony default export */ var Booking_PaymentStepvue_type_script_lang_js_ = (PaymentStepvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);

// CONCATENATED MODULE: ./components/blocks/Booking/PaymentStep.vue





/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  Booking_PaymentStepvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  "dbe2298a"
  
)

/* harmony default export */ var PaymentStep = __webpack_exports__["default"] = (component.exports);

/***/ }),

/***/ 258:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./pages/booking/_slug.vue?vue&type=template&id=abfa9c62&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"page-wrapper"},[_vm._ssrNode("<div class=\"py-10 sm:py-20 bg-white\"><div class=\"relative z-20 text-center\"><figure class=\"relative inline-block w-32 mb-4 sm:mb-8\"><div"+(_vm._ssrClass("absolute top-0 left-0 w-full h-full border-15",'tas-border-'+_vm.therapist.colour))+"></div> <img"+(_vm._ssrAttr("src",_vm.therapist.user.photo_url))+(_vm._ssrAttr("alt",_vm.therapist.user.first_name))+" class=\"block w-full\"></figure> <h1><span class=\"block w-full text-5xl md:text-7xl leading-none \">"+_vm._ssrEscape(_vm._s(_vm.therapist.user.first_name))+"</span> <span class=\"block w-full uppercase text-2xl\">"+_vm._ssrEscape(_vm._s(_vm.therapist.user.last_name))+"</span></h1></div></div> "),_vm._ssrNode("<div class=\"bg-gray px-4 py-6 sm:py-10 sm:px-8 md:py-20\">","</div>",[_vm._ssrNode("<div class=\"max-w-lg w-full mx-auto\">","</div>",[_vm._ssrNode("<div class=\"py-8 px-6 sm:py-12 sm:px-16 rounded-xl bg-white\">","</div>",[(_vm.step == 1)?[_c('ValidationObserver',{ref:"bookingStepOne"},[_c('form',{attrs:{"role":"form","method":"POST"},on:{"submit":function($event){$event.preventDefault();return _vm.summaryStep($event)}}},[_c('span',{staticClass:"block text-center text-3xl font-bold mb-6"},[_vm._v("Your Session")]),_vm._v(" "),_c('t-calendar',{attrs:{"multiple":"","minDate":_vm.minDate,"maxDate":_vm.maxDate,"yearsPerView":1,"disabledDates":_vm.getDisabledDates,"inline":""},on:{"user-date-changed":_vm.changeDates},model:{value:(_vm.selected_dates),callback:function ($$v) {_vm.selected_dates=$$v},expression:"selected_dates"}}),_vm._v(" "),_c('div',{staticClass:"mb-6"},[_c('span',{staticClass:"block font-bold mb-3"},[_vm._v("Select time")]),_vm._v(" "),(_vm.loading == true)?_c('div',{staticClass:"flex items-center justify-center"},[_c('svg',{staticClass:"animate-spin -ml-1 mr-3 h-5 w-5 text-current",attrs:{"xmlns":"http://www.w3.org/2000/svg","fill":"none","viewBox":"0 0 24 24"}},[_c('circle',{staticClass:"opacity-25",attrs:{"cx":"12","cy":"12","r":"10","stroke":"currentColor","stroke-width":"4"}}),_vm._v(" "),_c('path',{staticClass:"opacity-75",attrs:{"fill":"currentColor","d":"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"}})]),_vm._v("\n                  Loading Times...\n                ")]):(_vm.availability.length !== 0 || _vm.availability.length == undefined)?_c('div',_vm._l((_vm.availability),function(date,key){return _c('div',{key:key,staticClass:"mb-3"},[(date.length > 0)?[_c('span',{staticClass:"block mb-2 font-bold"},[_vm._v(_vm._s(_vm.$moment(key).format('DD/MM/Y')))]),_vm._v(" "),_c('div',{staticClass:"grid grid-cols-2 sm:grid-cols-3 gap-3"},_vm._l((date),function(slot,index){return _c('label',{key:index,staticClass:"border border-black px-3 py-2 rounded-md cursor-pointer text-center text-sm",class:_vm.selected_slots[key].slot == slot.start ? 'bg-yellow' : ''},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.selected_slots[key].slot),expression:"selected_slots[key].slot"}],staticClass:"hidden",attrs:{"type":"radio","id":'times-'+index,"name":'times-'+index},domProps:{"value":slot.start,"checked":_vm._q(_vm.selected_slots[key].slot,slot.start)},on:{"change":[function($event){return _vm.$set(_vm.selected_slots[key], "slot", slot.start)},function($event){return _vm.changeTimeSlot(key, slot)}]}}),_vm._v("\n                          "+_vm._s(_vm.$moment.utc(slot.start).format('H:mm'))+"\n                        ")])}),0),_vm._v(" "),_c('div',{staticClass:"mt-4 mb-6"},[_c('span',{staticClass:"block text-sm font-bold mb-2"},[_vm._v("Session type")]),_vm._v(" "),(_vm.selected_slots[key].session_types)?_c('div',{staticClass:"grid grid-cols-2 sm:grid-cols-3 gap-3 mb-3"},_vm._l((_vm.selected_slots[key].session_types),function(item,session_key){return _c('label',{key:session_key,staticClass:"border border-black px-3 py-2 rounded-md cursor-pointer text-center text-sm",class:item.id == _vm.selected_slots[key].session_id ? 'bg-yellow' : ''},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.selected_slots[key].session_id),expression:"selected_slots[key].session_id"}],staticClass:"hidden",attrs:{"type":"radio","name":'session-'+key},domProps:{"value":item.id,"checked":_vm._q(_vm.selected_slots[key].session_id,item.id)},on:{"change":function($event){return _vm.$set(_vm.selected_slots[key], "session_id", item.id)}}}),_vm._v("\n                            "+_vm._s(item.name)+"\n                          ")])}),0):_c('div',[_c('p',[_vm._v("No session types available.")])]),_vm._v(" "),(_vm.selected_slots[key].session_id == 3 && _vm.selected_slots[key].address && _vm.selected_slots[key].address.address_type !== 'Personal')?_c('div',{staticClass:"relative pl-10 mb-3 px-3 py-2 text-sm leading-5 rounded bg-blue text-white"},[_c('svg',{staticClass:"absolute top-2 left-3 w-5 h-5",attrs:{"xmlns":"http://www.w3.org/2000/svg","fill":"none","viewBox":"0 0 24 24","stroke":"currentColor"}},[_c('path',{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2","d":"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"}})]),_vm._v(" "),_c('span',[_vm._v("This session will be at: "+_vm._s(_vm.selected_slots[key].address.formatted))])]):_vm._e(),_vm._v(" "),_c('t-radio-group',{attrs:{"classes":{
                            groupWrapper: 'grid grid-cols-2 sm:grid-cols-3 gap-3',
                            label: 'block pl-2.5',
                            input: 'rounded-md w-5 h-5 text-black transition duration-100 ease-in-out border-gray-300 shadow-sm focus:border-black focus:ring-2 focus:ring-black focus:outline-none focus:ring-opacity-50 focus:ring-offset-0  disabled:opacity-50 disabled:cursor-not-allowed',
                            inputWrapper: 'inline-flex',
                            wrapper: 'flex items-center my-1',
                          },"textAttribute":"type","valueAttribute":"id","name":'product-'+key,"options":_vm.therapist.products},model:{value:(_vm.selected_slots[key].product_id),callback:function ($$v) {_vm.$set(_vm.selected_slots[key], "product_id", $$v)},expression:"selected_slots[key].product_id"}})],1)]:[_c('span',{staticClass:"block mb-2 text-sm font-bold"},[_vm._v(_vm._s(_vm.$moment(key).format('DD/MM/Y')))]),_vm._v(" "),_c('p',[_vm._v("No availability for this day")])]],2)}),0):_c('div',[_c('p',[_vm._v("No availability found")])])]),_vm._v(" "),_c('div',{staticClass:"mt-6 flex items-center justify-center"},[_c('button',{staticClass:"btn btn-primary btn-small rounded-full w-full sm:w-auto",attrs:{"disabled":_vm.isSlotSelected == false,"type":"button"},on:{"click":_vm.getSummary}},[_vm._v("Next")])])],1)])]:_vm._e(),_vm._ssrNode(" "),(_vm.step == 2)?_c('SummaryStep',{attrs:{"selected_slots":_vm.selectedSlots,"working":_vm.working,"nextStep":_vm.getPaymentStep,"button_text":"Proceed to Payment"},model:{value:(_vm.step),callback:function ($$v) {_vm.step=$$v},expression:"step"}}):_vm._e(),_vm._ssrNode(" "),(_vm.step == 3)?_c('RegisterStep',{model:{value:(_vm.step),callback:function ($$v) {_vm.step=$$v},expression:"step"}}):_vm._e(),_vm._ssrNode(" "),(_vm.step == 4)?_c('PaymentStep',{attrs:{"selected_slots":_vm.selectedSlots},model:{value:(_vm.step),callback:function ($$v) {_vm.step=$$v},expression:"step"}}):_vm._e()],2)])])],2)}
var staticRenderFns = []


// CONCATENATED MODULE: ./pages/booking/_slug.vue?vue&type=template&id=abfa9c62&

// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./pages/booking/_slug.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var _slugvue_type_script_lang_js_ = ({
  head() {
    return {
      titleTemplate: 'Book ' + this.full_name + ' | %s'
    };
  },

  data() {
    return {
      step: 1,
      isLoaded: true,
      loading: false,
      working: false,
      timer: null,
      minDate: null,
      maxDate: null,
      availability: {},
      available_dates: [],
      selected_dates: [],
      selected_slots: {}
    };
  },

  computed: {
    is_logged_in() {
      return this.$auth.loggedIn;
    },

    therapist() {
      return this.$store.state.booking.therapist;
    },

    full_name() {
      return this.therapist.user.full_name;
    },

    isSlotSelected() {
      const object = this.selected_slots;

      for (const [key, value] of Object.entries(object)) {
        if (value.slot !== null && value.session_id !== null && value.product_id !== null) {
          return true;
        }
      }

      return false;
    },

    selectedSlots() {
      const slots = this.selected_slots;
      return Object.keys(slots).filter(key => slots[key].slot !== null && slots[key].session_id !== null && slots[key].product_id !== null).reduce((obj, key) => {
        return { ...obj,
          [key]: slots[key]
        };
      }, {});
    }

  },

  async mounted() {
    let query = this.$route.query;
    let today = new Date(); // Set some defaults

    this.minDate = this.$moment(today).add(1, 'days').format('Y-MM-DD');
    await this.$axios.post('/availability/' + this.therapist.id, {
      dates: this.selected_dates
    }).then(response => {
      this.loading = false;
      this.availability = response.data.availability;
      this.available_dates = response.data.available_dates; // Add the dates to the calendar

      this.minDate = this.available_dates[0];
      this.maxDate = this.available_dates[this.available_dates.length - 1];
      this.selected_dates = [this.available_dates[0]];
    }).catch(response => {
      this.loading = false;
      this.$toast.error(response).goAway(3000);
    });
  },

  async asyncData({
    store,
    params
  }) {
    await store.dispatch('booking/get', params.slug);
  },

  methods: {
    changeDates() {
      if (this.timer) {
        clearTimeout(this.timer);
        this.timer = null;
      }

      this.timer = setTimeout(() => {
        this.getTimes();
      }, 250);
    },

    changeTimeSlot(key, slot) {
      this.selected_slots[key].session_types = slot.session_types; // Set address if it exists

      if (slot.address !== null) {
        this.selected_slots[key].address = slot.address;
        this.selected_slots[key].address_id = slot.address.id;
      }
    },

    async getTimes() {
      let query = this.$route.query;
      this.loading = true;
      await this.$axios.post('/availability/' + this.therapist.id, {
        dates: this.selected_dates
      }).then(response => {
        this.loading = false;
        this.availability = response.data.availability;
        this.available_dates = response.data.available_dates;
        this.selected_slots = response.data.selected_slots; // Add the dates to the calendar

        this.minDate = this.available_dates[0];
        this.maxDate = this.available_dates[this.available_dates.length - 1];

        if (this.isLoaded == true && query.time !== undefined && query.date !== undefined) {
          this.selected_slots[query.date].slot = query.time;
          this.selected_slots[query.date].product_id = this.therapist.products[0].id;

          if (this.availability[query.date][0].address) {
            this.selected_slots[query.date].address_id = this.availability[query.date][0].address.id;
            this.selected_slots[query.date].address = this.availability[query.date][0].address;
          }

          if (this.availability[query.date][0].session_types) {
            this.selected_slots[query.date].session_types = this.availability[query.date][0].session_types;
            this.selected_slots[query.date].session_id = this.availability[query.date][0].session_types[0].id;
          }

          this.isLoaded = false;
        }
      }).catch(response => {
        this.loading = false;
        this.$toast.error(response).goAway(3000);
      });
    },

    async getSummary() {
      this.$refs.bookingStepOne.validate().then(success => {
        if (!success) {
          return;
        }

        this.step = 2;
      });
    },

    async getPaymentStep() {
      if (this.is_logged_in == false) {
        this.step = 3;
      } else {
        this.step = 4;
      }
    },

    getDisabledDates(rawDate) {
      var date = this.$moment(rawDate).format('Y-MM-DD');
      return !this.available_dates.includes(date);
    }

  }
});
// CONCATENATED MODULE: ./pages/booking/_slug.vue?vue&type=script&lang=js&
 /* harmony default export */ var booking_slugvue_type_script_lang_js_ = (_slugvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);

// CONCATENATED MODULE: ./pages/booking/_slug.vue





/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  booking_slugvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  "899a1390"
  
)

/* harmony default export */ var _slug = __webpack_exports__["default"] = (component.exports);

/* nuxt-component-imports */
installComponents(component, {SummaryStep: __webpack_require__(170).default,RegisterStep: __webpack_require__(195).default,PaymentStep: __webpack_require__(196).default})


/***/ })

};;
//# sourceMappingURL=_slug.js.map

Zerion Mini Shell 1.0