{"version":3,"sources":["webpack:///./src/views/becomeBuyer/BecomeBuyer.vue?f79a","webpack:///./src/views/becomeBuyer/BecomeBuyer.vue?0b18","webpack:///./src/views/becomeBuyer/BecomeBuyer.vue","webpack:///./src/views/becomeBuyer/BecomeBuyer.vue?17b9","webpack:///./src/views/becomeBuyer/BecomeBuyer.vue?b69d"],"names":["render","_vm","this","_h","$createElement","_c","_self","billingActionRequired","_e","_m","staticClass","attrs","_v","loadingBuyerDetails","model","value","callback","$$v","buyerName","expression","addressLine1","addressLine2","town","postcode","country","termsLink","on","$event","toggleCardElement","planType","newVal","seatQuantity","staticStyle","becomeBuyerLoading","becomeBuyer","portalLinkLoading","goToCustomerPortal","staticRenderFns","stripePromise","loadStripe","AppConfig","stripePublishableKey","auth","namespace","BecomeBuyer","Vue","constructor","PlanType","Basic","stripe","cardElement","created","initializeUserSettings","then","res","isBuyerSubscribed","$router","replace","BuyersApiService","getBuyerDetails","finally","initStripe","mounted","byPassCreditCard","Promise","resolve","reject","Toast","error","result","registerBuyer","paymentMethodId","procurePlan","priceId","basicPriceId","success","catch","err","createPaymentMethod","type","card","message","paymentMethod","id","BillingApiService","getCustomerPortalUrl","window","location","href","url","elements","style","base","fontFamily","fontSmoothing","fontSize","color","invalid","iconColor","create","mount","displayError","document","getElementById","textContent","__decorate","Getter","IS_BUYER_SUBSCRIBED","Action","INITIALIZE_USER_SETTINGS","Component","components","LoadingSpinner","SeatQuantitySelector","component","VBtn","VCard","VCardText","VCardTitle","VCol","VRadio","VRadioGroup","VRow","VTextField"],"mappings":"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","file":"js/become-buyer.d79c3815.js","sourcesContent":["import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BecomeBuyer.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BecomeBuyer.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{},[(!_vm.billingActionRequired)?[_vm._m(0),_c('v-row',{staticClass:\"justify-center\"},[_c('v-col',{attrs:{\"xs\":\"12\",\"sm\":\"8\",\"lg\":\"5\"}},[_c('v-card',{attrs:{\"outlined\":\"\"}},[_c('v-card-title',[_c('h3',[_vm._v(\" Buyer Details \")])]),_c('v-card-text',[(_vm.loadingBuyerDetails)?_c('LoadingSpinner'):_vm._e(),(!_vm.loadingBuyerDetails)?[_c('v-text-field',{attrs:{\"id\":\"buyerName\",\"type\":\"text\",\"outlined\":\"\",\"rounded\":\"\",\"placeholder\":\"Enter your company's name...\",\"label\":\"Company Name\"},model:{value:(_vm.buyerName),callback:function ($$v) {_vm.buyerName=$$v},expression:\"buyerName\"}}),_c('v-text-field',{attrs:{\"id\":\"addressLine1\",\"type\":\"text\",\"outlined\":\"\",\"rounded\":\"\",\"placeholder\":\"Enter your organisation's address...\",\"label\":\"Company Address Line 1\"},model:{value:(_vm.addressLine1),callback:function ($$v) {_vm.addressLine1=$$v},expression:\"addressLine1\"}}),_c('v-text-field',{attrs:{\"id\":\"addressLine2\",\"type\":\"text\",\"outlined\":\"\",\"rounded\":\"\",\"placeholder\":\"Enter your organisation's address...\",\"label\":\"Company Address Line 2 (Optional)\"},model:{value:(_vm.addressLine2),callback:function ($$v) {_vm.addressLine2=$$v},expression:\"addressLine2\"}}),_c('v-text-field',{attrs:{\"id\":\"town\",\"type\":\"text\",\"outlined\":\"\",\"rounded\":\"\",\"placeholder\":\"Enter your organisation's town...\",\"label\":\"Company Town\"},model:{value:(_vm.town),callback:function ($$v) {_vm.town=$$v},expression:\"town\"}}),_c('v-text-field',{attrs:{\"id\":\"postcode\",\"type\":\"text\",\"outlined\":\"\",\"rounded\":\"\",\"placeholder\":\"Enter your organisation's postcode...\",\"label\":\"Company Postcode\"},model:{value:(_vm.postcode),callback:function ($$v) {_vm.postcode=$$v},expression:\"postcode\"}}),_c('v-text-field',{attrs:{\"id\":\"country\",\"type\":\"text\",\"outlined\":\"\",\"rounded\":\"\",\"placeholder\":\"Enter your organisation's country...\",\"label\":\"Company Country\"},model:{value:(_vm.country),callback:function ($$v) {_vm.country=$$v},expression:\"country\"}}),_c('v-text-field',{attrs:{\"id\":\"termsLink\",\"type\":\"text\",\"outlined\":\"\",\"rounded\":\"\",\"persistent-hint\":\"\",\"hint\":\"Must begin with https:// or http://\",\"placeholder\":\"https://example.com/terms\",\"label\":\"Terms and Conditions of Sales Link (Optional)\"},model:{value:(_vm.termsLink),callback:function ($$v) {_vm.termsLink=$$v},expression:\"termsLink\"}}),_c('v-radio-group',{staticClass:\"row col-sm-12\",attrs:{\"label\":\"Choose plan type:\"},on:{\"change\":function($event){return _vm.toggleCardElement()}},model:{value:(_vm.planType),callback:function ($$v) {_vm.planType=$$v},expression:\"planType\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-5 ma-4 planTypeBox\"},[_c('v-radio',{attrs:{\"label\":\"Basic\",\"value\":\"0\"}}),_c('p',[_vm._v(\"This plan includes max 3 user licenses\")])],1),_c('div',{staticClass:\"col-sm-5 ma-4 planTypeBox ml-10\"},[_c('v-radio',{attrs:{\"label\":\"Standard\",\"value\":\"1\"}}),_c('p',[_vm._v(\"This plan needs payment method (Card Details)\")])],1)])])]:_vm._e()],2)],1)],1)],1),_c('v-row',{staticClass:\"justify-center\"},[_c('v-col',{attrs:{\"xs\":\"12\",\"sm\":\"8\",\"lg\":\"5\"}},[_c('v-card',{attrs:{\"outlined\":\"\"}},[_c('v-card-title',[_c('h3',[_vm._v(\" Select number of seats \")])]),_c('v-card-text',[_c('SeatQuantitySelector',{on:{\"change\":function (newVal) { return (_vm.seatQuantity = newVal); }}}),(_vm.planType == 1)?_c('form',{attrs:{\"id\":\"subscription-form\"}},[_c('div',{staticClass:\"MyCardElement\",attrs:{\"id\":\"card-element\"}},[_vm._v(\" Elements will create input elements here \")]),_c('span',{staticStyle:{\"margin\":\"20px\"}},[_c('b',[_vm._v(\"No need to fill it for basic plan type\")])]),_c('div',{attrs:{\"id\":\"card-errors\",\"role\":\"alert\"}})]):_vm._e()],1)],1)],1)],1),_c('div',{staticClass:\"d-flex justify-center\"},[_c('v-btn',{staticClass:\"pa-4 mt-4\",attrs:{\"type\":\"button\",\"color\":\"primary\",\"loading\":_vm.becomeBuyerLoading,\"depressed\":\"\",\"rounded\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.becomeBuyer()}}},[_vm._v(\"Become a Buyer\")])],1)]:_vm._e(),(_vm.billingActionRequired)?[_vm._m(1),_vm._m(2),_c('div',{staticClass:\"pa-4 d-flex justify-center\"},[_c('v-btn',{staticClass:\"pa-4\",attrs:{\"type\":\"button\",\"color\":\"primary\",\"loading\":_vm.portalLinkLoading,\"depressed\":\"\",\"rounded\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.goToCustomerPortal()}}},[_vm._v(\"Manage Subscription\")])],1)]:_vm._e()],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pa-4 d-flex justify-center\"},[_c('h1',[_vm._v(\"Before we get started\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pa-4 d-flex justify-center\"},[_c('h1',[_vm._v(\"Action Required\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pa-4 d-flex justify-center\"},[_c('div',{},[_vm._v(\" It looks like your subscription or billing information requires updating. \")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport BillingApiService from '@/api/billing.api';\r\nimport BuyersApiService from '@/api/buyers.api';\r\nimport Toast from '@/services/toast.service';\r\nimport LoadingSpinner from '@/components/LoadingSpinner.vue';\r\nimport SeatQuantitySelector from '@/components/SeatQuantitySelector.vue';\r\nimport { PlanType } from '@/models/enums/planType';\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport {\r\n\tloadStripe,\r\n\tPaymentMethod,\r\n\tStripe,\r\n\tStripeCardElement\r\n} from '@stripe/stripe-js';\r\nimport AppConfig from '@/services/appConfig';\r\nimport { INITIALIZE_USER_SETTINGS } from '@/store/auth/actions';\r\nimport { namespace } from 'vuex-class';\r\nimport { IS_BUYER_SUBSCRIBED } from '@/store/auth/getters';\r\nimport { th } from 'date-fns/locale';\r\nconst stripePromise = loadStripe(AppConfig.stripePublishableKey);\r\nconst auth = namespace('auth');\r\n\r\n@Component({\r\n\tcomponents: { LoadingSpinner, SeatQuantitySelector }\r\n})\r\nexport default class BecomeBuyer extends Vue {\r\n\t@auth.Getter(IS_BUYER_SUBSCRIBED) public isBuyerSubscribed!: any;\r\n\t@auth.Action(INITIALIZE_USER_SETTINGS) public initializeUserSettings!: any;\r\n\tpublic buyerName = '';\r\n\tpublic addressLine1 = '';\r\n\tpublic addressLine2 = '';\r\n\tpublic town = '';\r\n\tpublic postcode = '';\r\n\tpublic country = '';\r\n\t// public privacyPolicyLink = '';\r\n\tpublic termsLink = '';\r\n\tpublic seatQuantity = 1;\r\n\r\n\tpublic loadingBuyerDetails = false;\r\n\tpublic becomeBuyerLoading = false;\r\n\tpublic billingActionRequired = false;\r\n\tpublic portalLinkLoading = false;\r\n\tpublic planType = PlanType.Basic;\r\n\r\n\tprivate stripe: Stripe | null = null;\r\n\tprivate cardElement: StripeCardElement | null = null;\r\n\r\n\tcreated() {\r\n\r\n\t\tthis.loadingBuyerDetails = true;\r\n\t\tthis.initializeUserSettings().then(res => {\r\n\t\t\tif (res && res.billingActionRequired) {\r\n\t\t\t\tthis.billingActionRequired = true;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (this.isBuyerSubscribed) this.$router.replace('/');\r\n\r\n\t\t\tBuyersApiService.getBuyerDetails()\r\n\t\t\t\t.then(res => {\r\n\t\t\t\t\tthis.buyerName = res.buyerName;\r\n\t\t\t\t\tthis.addressLine1 = res.addressLine1;\r\n\t\t\t\t\tthis.addressLine2 = res.addressLine2;\r\n\t\t\t\t\tthis.town = res.town;\r\n\t\t\t\t\tthis.postcode = res.postcode;\r\n\t\t\t\t})\r\n\t\t\t\t.finally(() => {\r\n\r\n\t\t\t\t\tthis.loadingBuyerDetails = false;\r\n\t\t\t\t\tthis.initStripe();\r\n\t\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tmounted() {\r\n\t\tif (this.isBuyerSubscribed) this.$router.replace('/');\r\n\t}\r\n\r\n\r\n\r\n\t// \tpublic becomeBuyer() {\r\n\t// \t\tthis.becomeBuyerLoading = true;\r\n\t// \t\tthis.byPassCreditCard()\r\n\t// \t\t\t.then(result => {\r\n\r\n\t// \t\t\t\t\tBuyersApiService.registerBuyer({\r\n\t// \t\t\t\t\t\tbuyerName: this.buyerName,\r\n\t// \t\t\t\t\t\taddressLine1: this.addressLine1,\r\n\t// \t\t\t\t\t\taddressLine2: this.addressLine2,\r\n\t// \t\t\t\t\t\ttown: this.town,\r\n\t// \t\t\t\t\t\tpostcode: this.postcode,\r\n\t// \t\t\t\t\t\tpaymentMethodId: '000000',\r\n\t// \t\t\t\t\t\tcountry: this.country,\r\n\t// \t\t\t\t\t\ttermsLink: this.termsLink,\r\n\t// \t\t\t\t\t\t// privacyPolicyLink: this.privacyPolicyLink,\r\n\t// \t\t\t\t\t\tpriceId: AppConfig.basicPriceId,\r\n\t// \t\t\t\t\t\tseatQuantity: this.seatQuantity\r\n\t// \t\t\t\t\t})\r\n\t// \t\t\t\t\t\t.then(res => {\r\n\t// \t\t\t\t\t\t\treturn this.initializeUserSettings();\r\n\t// \t\t\t\t\t\t})\r\n\t// \t\t\t\t\t\t.then(() => {\r\n\t// \t\t\t\t\t\t\tToast.success('Welcome to Procure Tool!');\r\n\t// \t\t\t\t\t\t\tthis.$router.replace('/');\r\n\t// \t\t\t\t\t\t})\r\n\t// \t\t\t\t\t\t.catch(err => {\r\n\t// \t\t\t\t\t\t\tToast.error(err);\r\n\t// \t\t\t\t\t\t})\r\n\t// \t\t\t\t\t\t.finally(() => {\r\n\t// \t\t\t\t\t\t\tthis.becomeBuyerLoading = false;\r\n\t// \t\t\t\t\t\t});\r\n\r\n\t// \t\t\t});\r\n\t// \t}\r\n\r\n\tpublic byPassCreditCard(): Promise<string> {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tresolve('Hello, world!');\r\n\t\t})\r\n\t};\r\n\r\n\r\n\r\n\tpublic becomeBuyer() {\r\n\t\tif (this.planType == PlanType.Basic) {\r\n\t\t\tif (this.seatQuantity > 3) {\r\n\t\t\t\tToast.error('In basic plan you can not select more than 3 seats')\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tthis.becomeBuyerLoading = true;\r\n\t\t\tthis.byPassCreditCard()\r\n\t\t\t\t.then(result => {\r\n\r\n\t\t\t\t\tBuyersApiService.registerBuyer({\r\n\t\t\t\t\t\tbuyerName: this.buyerName,\r\n\t\t\t\t\t\taddressLine1: this.addressLine1,\r\n\t\t\t\t\t\taddressLine2: this.addressLine2,\r\n\t\t\t\t\t\ttown: this.town,\r\n\t\t\t\t\t\tpostcode: this.postcode,\r\n\t\t\t\t\t\tpaymentMethodId: '000000',\r\n\t\t\t\t\t\tcountry: this.country,\r\n\t\t\t\t\t\ttermsLink: this.termsLink,\r\n\t\t\t\t\t\tprocurePlan: this.planType,\r\n\t\t\t\t\t\t// privacyPolicyLink: this.privacyPolicyLink,\r\n\t\t\t\t\t\tpriceId: AppConfig.basicPriceId,\r\n\t\t\t\t\t\tseatQuantity: this.seatQuantity\r\n\t\t\t\t\t})\r\n\t\t\t\t\t\t.then(res => {\r\n\t\t\t\t\t\t\treturn this.initializeUserSettings();\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\t.then(() => {\r\n\t\t\t\t\t\t\tToast.success('Welcome to Procure Tool!');\r\n\t\t\t\t\t\t\tthis.$router.replace('/');\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\t.catch(err => {\r\n\t\t\t\t\t\t\tToast.error(err);\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\t.finally(() => {\r\n\t\t\t\t\t\t\tthis.becomeBuyerLoading = false;\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.becomeBuyerLoading = true;\r\n\t\t(this.stripe as Stripe)\r\n\t\t\t.createPaymentMethod({\r\n\t\t\t\ttype: 'card',\r\n\t\t\t\tcard: this.cardElement as StripeCardElement\r\n\t\t\t})\r\n\t\t\t.then(result => {\r\n\t\t\t\tif (result.error) {\r\n\t\t\t\t\tToast.error(result.error.message as string);\r\n\t\t\t\t\tthis.becomeBuyerLoading = false;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tBuyersApiService.registerBuyer({\r\n\t\t\t\t\t\tbuyerName: this.buyerName,\r\n\t\t\t\t\t\taddressLine1: this.addressLine1,\r\n\t\t\t\t\t\taddressLine2: this.addressLine2,\r\n\t\t\t\t\t\ttown: this.town,\r\n\t\t\t\t\t\tpostcode: this.postcode,\r\n\t\t\t\t\t\tpaymentMethodId: (result.paymentMethod as PaymentMethod).id,\r\n\t\t\t\t\t\tcountry: this.country,\r\n\t\t\t\t\t\ttermsLink: this.termsLink,\r\n\t\t\t\t\t\tprocurePlan: this.planType,\r\n\t\t\t\t\t\t// privacyPolicyLink: this.privacyPolicyLink,\r\n\t\t\t\t\t\tpriceId: AppConfig.basicPriceId,\r\n\t\t\t\t\t\tseatQuantity: this.seatQuantity\r\n\t\t\t\t\t})\r\n\t\t\t\t\t\t.then(res => {\r\n\t\t\t\t\t\t\treturn this.initializeUserSettings();\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\t.then(() => {\r\n\t\t\t\t\t\t\tToast.success('Welcome to Procure Tool!');\r\n\t\t\t\t\t\t\tthis.$router.replace('/');\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\t.catch(err => {\r\n\t\t\t\t\t\t\tToast.error(err);\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\t.finally(() => {\r\n\t\t\t\t\t\t\tthis.becomeBuyerLoading = false;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic goToCustomerPortal() {\r\n\t\tthis.portalLinkLoading = true;\r\n\t\tBillingApiService.getCustomerPortalUrl()\r\n\t\t\t.then(res => {\r\n\t\t\t\twindow.location.href = res.url;\r\n\t\t\t})\r\n\t\t\t.catch(err => {\r\n\t\t\t\tToast.error(err);\r\n\t\t\t})\r\n\t\t\t.finally(() => {\r\n\t\t\t\tthis.portalLinkLoading = false;\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublic toggleCardElement() {\r\n\t\tif (this.planType == 1)\r\n\t\t\tthis.initStripe();\r\n\t}\r\n\tpublic async initStripe() {\r\n\t\tconst stripe = await stripePromise;\r\n\r\n\t\tif (!stripe) {\r\n\t\t\tToast.error('Failed to initiate payment flow');\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst elements = stripe.elements();\r\n\r\n\t\tconst style = {\r\n\t\t\tbase: {\r\n\t\t\t\tfontFamily: '\"Montserrat\", Helvetica, sans-serif',\r\n\t\t\t\tfontSmoothing: 'antialiased',\r\n\t\t\t\tfontSize: '16px',\r\n\t\t\t\t'::placeholder': {\r\n\t\t\t\t\tcolor: 'rgba(0, 0, 0, 0.38)'\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tinvalid: {\r\n\t\t\t\tcolor: '#fa755a',\r\n\t\t\t\ticonColor: '#fa755a'\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst cardElement = elements.create('card', { style: style });\r\n\t\tcardElement.mount('#card-element');\r\n\r\n\t\tcardElement.on('change', ({ error }) => {\r\n\t\t\tconst displayError = document.getElementById('card-errors');\r\n\r\n\t\t\tif (displayError) {\r\n\t\t\t\tif (error) {\r\n\t\t\t\t\tdisplayError.textContent = error.message;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdisplayError.textContent = '';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.stripe = stripe;\r\n\t\tthis.cardElement = cardElement;\r\n\t}\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BecomeBuyer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BecomeBuyer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./BecomeBuyer.vue?vue&type=template&id=00289637&\"\nimport script from \"./BecomeBuyer.vue?vue&type=script&lang=ts&\"\nexport * from \"./BecomeBuyer.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./BecomeBuyer.vue?vue&type=style&index=0&lang=scss&\"\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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRadio } from 'vuetify/lib/components/VRadioGroup';\nimport { VRadioGroup } from 'vuetify/lib/components/VRadioGroup';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardText,VCardTitle,VCol,VRadio,VRadioGroup,VRow,VTextField})\n"],"sourceRoot":""}