{"version":3,"sources":["webpack:///./src/components/Testimonials/TestimonialCards.vue?5aa9","webpack:///./src/components/Testimonials/TestimonialCard.vue?ff20","webpack:///./src/components/Testimonials/TestimonialCard.vue","webpack:///./src/components/Testimonials/TestimonialCard.vue?2db9","webpack:///./src/components/Testimonials/TestimonialCard.vue?c3dc","webpack:///./src/components/Testimonials/TestimonialCards.vue","webpack:///./src/components/Testimonials/TestimonialCards.vue?cbe7","webpack:///./src/components/Testimonials/TestimonialCards.vue?8702","webpack:///./node_modules/client-website-ts-library/filters/BlogFilter.ts","webpack:///./node_modules/client-website-ts-library/filters/ListingFilter.ts","webpack:///./node_modules/client-website-ts-library/filters/TestimonialFilter.ts","webpack:///./node_modules/client-website-ts-library/filters/ProfileFilter.ts","webpack:///./src/components/Testimonials/TestimonialCards.vue?5c11","webpack:///./src/views/Testimonials.vue?9ee2","webpack:///./src/views/Testimonials.vue","webpack:///./src/views/Testimonials.vue?5e90","webpack:///./src/views/Testimonials.vue?c819","webpack:///./node_modules/client-website-ts-library/plugins/view/index.ts","webpack:///./src/components/Testimonials/TestimonialCard.vue?a806"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","_l","testimonial","key","Id","attrs","hasAgentName","hasAgentPhotos","hasReadMoreButton","testimonialCount","on","loadMore","_v","_e","staticRenderFns","class","hasExtraHeight","_s","Profile","FirstName","LastName","cleanedContent","length","$event","showTestimonial","staticStyle","ClientName","Address","Suburb","formattedAddress","hideTestimonial","getYouTubeId","Image","Preview","Url","popupActive","cleanContent","parts","push","join","el","document","createElement","innerHTML","Description","innerText","videoId","VideoLink","split","ampersandPosition","indexOf","substring","default","component","testimonials","updateTestimonials","Testimonials","Search","filter","then","displayLimit","slice","$emit","deep","components","TestimonialCard","BlogOrderBy","ListingOrderBy","init","SearchLevel","Config","API","WebsiteLevel","SearchGuid","WebsiteId","Tag","Types","OrderByStatements","Object","assign","TestimonialOrderBy","SearchGuids","Page","PageSize","ExcludeConjunctionalListings","IsHighlightListing","IsFeatured","IsPROListFeatured","HaveInspections","PropertyId","Estate","Categories","Statuses","PropertyTypes","PropertyCategories","PropertySubCategories","MethodsOfSale","AddressString","LotNumber","UnitNumber","StreetNumber","Suburbs","BoundsNorth","BoundsEast","BoundsSouth","BoundsWest","MinBedrooms","MinBathrooms","MinParking","MinFloorArea","MaxFloorArea","MinLandArea","MaxLandArea","MinPrice","MaxPrice","MinSoldPrice","MaxSoldPrice","IsStrata","IsFreehold","IsTenanted","IsVacant","IsWholeBuilding","TestimonialCards","prolistAnalyticsService","ServiceManager","Get","Analytics","headService","Require","Head","evt","obj","getAnalyticsEvent","call","getAnalyticsData","$route","path","name","undefined","triggerAnalyticsEvent","event","GetAll","forEach","adapter","Record","result","head","bind","Promise","meta","Update","UpdateWithStatic","requestAnimationFrame","updateHead","updateAnalytics","$on"],"mappings":"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","file":"js/chunk-195c52b6.d233e9b1.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Cards',{staticClass:\"testimonial-cards\"},[_vm._l((_vm.testimonials),function(testimonial){return _c('TestimonialCard',{key:testimonial.Id,attrs:{\"hasAgentName\":_vm.hasAgentName,\"hasAgentPhotos\":_vm.hasAgentPhotos,\"hasReadMoreButton\":_vm.hasReadMoreButton,\"testimonial\":testimonial}})}),(_vm.testimonialCount > 9)?_c('div',{staticClass:\"center-text\"},[_c('Button',{on:{\"click\":_vm.loadMore}},[_vm._v(\"Load More\")])],1):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card card--testimonial\",class:{ 'testimonial__extra-height': _vm.hasExtraHeight }},[_c('div',{staticClass:\"testimonial__agent\"},[(_vm.hasAgentName)?_c('h5',[_vm._v(_vm._s((\"\" + (_vm.testimonial.Profile.FirstName + ' ' + _vm.testimonial.Profile.LastName))))]):_vm._e()]),_c('blockquote',[_c('div',{staticClass:\"testimonial__content\"},[_vm._v(\" \"+_vm._s(_vm.cleanedContent)+\" \")]),(_vm.cleanedContent.length > 110 && _vm.hasReadMoreButton)?_c('button',{staticClass:\"testimonial__read-more\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.showTestimonial()}}},[_vm._v(\"READ MORE\")]):_vm._e()]),_c('div',{staticStyle:{\"flex-grow\":\"1\"}}),_c('div',{staticClass:\"testimonial__attribution\"},[_c('h5',{staticClass:\"testimonial__customer\"},[_vm._v(_vm._s(_vm.testimonial.ClientName))]),(_vm.testimonial.Address || _vm.testimonial.Suburb)?_c('h6',{staticClass:\"testimonial__address\"},[_vm._v(\" \"+_vm._s(_vm.formattedAddress)+\" \")]):_vm._e()]),(_vm.popupActive)?[_c('portal',{attrs:{\"to\":\"overlays\"}},[_c('div',{staticClass:\"testimonial-popup-wrap\"},[_c('div',{staticClass:\"testimonial-popup-abyss\",on:{\"click\":function($event){return _vm.hideTestimonial()}}}),_c('div',{staticClass:\"testtimonial-popup__window\"},[_c('button',{staticClass:\"testimonial-close\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.hideTestimonial()}}},[_c('Icon',{attrs:{\"icon\":\"close-button\"}})],1),_c('div',{staticClass:\"testimonial-popup__content\"},[_vm._v(\" \"+_vm._s(_vm.cleanedContent)+\" \")]),_c('div',{staticClass:\"testimonial__attribution\"},[_c('h5',{staticClass:\"testimonial__customer\"},[_vm._v(_vm._s(_vm.testimonial.ClientName))]),(_vm.testimonial.Address || _vm.testimonial.Suburb)?_c('h6',{staticClass:\"testimonial__address\"},[_vm._v(\" \"+_vm._s(_vm.formattedAddress)+\" \")]):_vm._e(),(_vm.seeMoreTestimonials)?_c('LinkButton',{staticClass:\"testimonial__read-more\",attrs:{\"type\":\"button\",\"href\":\"/testimonials\"}},[_vm._v(\"SEE MORE TESTIMONIALS\")]):_vm._e()],1),(_vm.testimonial.VideoLink)?_c('AR',{attrs:{\"ratio\":\"0.5625\"}},[_c('iframe',{staticClass:\"embeddable__frame\",attrs:{\"src\":(\"https://www.youtube.com/embed/\" + (_vm.getYouTubeId())),\"frameborder\":\"0\",\"allowtransparency\":\"true\",\"allowfullscreen\":\"\"}})]):(_vm.testimonial.Image)?_c('img',{staticClass:\"testimonial__image\",attrs:{\"src\":_vm.testimonial.Image.Preview.Url}}):_vm._e()],1)])])]:_vm._e()],2)}\nvar staticRenderFns = []\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\r\nimport { Testimonial } from 'client-website-ts-library/types';\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class TestimonialCard extends Vue {\r\n @Prop()\r\n private readonly testimonial!: Testimonial;\r\n\r\n @Prop({ default: true })\r\n private readonly hasReadMoreButton!: boolean;\r\n\r\n @Prop({ default: false })\r\n private readonly hasAgentPhotos!: boolean;\r\n\r\n @Prop({ default: false })\r\n private readonly seeMoreTestimonials!: boolean;\r\n\r\n @Prop({ default: false })\r\n private readonly hasAgentName!: boolean;\r\n\r\n @Prop({ default: false })\r\n private readonly hasExtraHeight!: boolean;\r\n\r\n private cleanedContent = ''\r\n\r\n mounted() {\r\n this.cleanContent();\r\n }\r\n\r\n get formattedAddress(): string {\r\n const parts = [];\r\n\r\n if (this.testimonial.Address) parts.push(this.testimonial.Address);\r\n if (this.testimonial.Suburb) parts.push(this.testimonial.Suburb);\r\n\r\n return parts.join(', ');\r\n }\r\n\r\n @Watch('testimonial')\r\n cleanContent(): void {\r\n const el = document.createElement('div');\r\n\r\n el.innerHTML = this.testimonial.Description;\r\n\r\n this.cleanedContent = el.innerText;\r\n }\r\n\r\n popupActive = false\r\n\r\n showTestimonial(): void {\r\n this.popupActive = true;\r\n }\r\n\r\n hideTestimonial(): void {\r\n this.popupActive = false;\r\n }\r\n\r\n getYouTubeId() {\r\n let videoId = this.testimonial.VideoLink.split('v=')[1];\r\n const ampersandPosition = videoId.indexOf('&');\r\n if (ampersandPosition !== -1) {\r\n videoId = videoId.substring(0, ampersandPosition);\r\n }\r\n return videoId;\r\n }\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!./TestimonialCard.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!./TestimonialCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TestimonialCard.vue?vue&type=template&id=aba8a866&scoped=true&\"\nimport script from \"./TestimonialCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./TestimonialCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TestimonialCard.vue?vue&type=style&index=0&id=aba8a866&scoped=true&lang=css&\"\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 \"aba8a866\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\r\nimport { TestimonialFilter } from 'client-website-ts-library/filters';\r\nimport { API } from 'client-website-ts-library/services';\r\nimport { Testimonial } from 'client-website-ts-library/types';\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport TestimonialCard from './TestimonialCard.vue';\r\n\r\n@Component({\r\n components: {\r\n TestimonialCard,\r\n },\r\n})\r\nexport default class TestimonialCards extends Vue {\r\n private testimonials: Testimonial[] = [];\r\n\r\n @Prop()\r\n private readonly filter!: TestimonialFilter;\r\n\r\n @Prop({ default: true })\r\n private readonly hasReadMoreButton!: boolean;\r\n\r\n @Prop({ default: true })\r\n private readonly hasAgentPhotos!: boolean;\r\n\r\n @Prop({ default: true })\r\n private readonly hasAgentName!: boolean;\r\n\r\n @Prop({ default: 0 })\r\n private displayLimit!: number;\r\n\r\n private testimonialCount = 0;\r\n\r\n mounted() {\r\n this.updateTestimonials();\r\n }\r\n\r\n @Watch('filter', { deep: true })\r\n updateTestimonials() {\r\n API.Testimonials.Search(this.filter, true).then((testimonials) => {\r\n this.testimonialCount = testimonials.length;\r\n if (this.displayLimit === 0) {\r\n this.testimonials = testimonials;\r\n } else {\r\n this.testimonials = testimonials.slice(0, this.displayLimit);\r\n }\r\n\r\n this.$emit('got_testimonial_count', testimonials.length);\r\n\r\n this.$emit('got_testimonials', testimonials);\r\n });\r\n }\r\n\r\n loadMore() {\r\n API.Testimonials.Search(this.filter, true).then((testimonials) => {\r\n if (this.displayLimit === 0) {\r\n this.testimonials = testimonials;\r\n } else {\r\n this.testimonials = testimonials.slice(0, this.displayLimit += 9);\r\n }\r\n\r\n this.$emit('got_testimonial_count', testimonials.length);\r\n\r\n this.$emit('got_testimonials', testimonials);\r\n });\r\n }\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!./TestimonialCards.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!./TestimonialCards.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TestimonialCards.vue?vue&type=template&id=19fd1a54&scoped=true&\"\nimport script from \"./TestimonialCards.vue?vue&type=script&lang=ts&\"\nexport * from \"./TestimonialCards.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TestimonialCards.vue?vue&type=style&index=0&id=19fd1a54&scoped=true&lang=css&\"\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 \"19fd1a54\",\n null\n \n)\n\nexport default component.exports","import { WebsiteLevel } from \"../types/WebsiteConfig\";\r\nimport { Config } from \"../services/Config\";\r\nimport { BlogType } from '../types/Blog';\r\n\r\nenum BlogOrderBy {\r\n CreateDateAsc = \"CreateDate:Asc\",\r\n CreateDateDesc = \"CreateDate:Desc\",\r\n\r\n TypeAsc = \"Type:Asc\",\r\n TypeDesc = \"Type:Desc\",\r\n\r\n SuburbAsc = \"Suburb:Asc\",\r\n SuburbDesc = \"Suburb:Desc\"\r\n}\r\n\r\nclass BlogFilter {\r\n SearchLevel: WebsiteLevel = Config.API.WebsiteLevel;\r\n SearchGuid: string = Config.API.WebsiteId;\r\n \r\n Suburb: string | null = '';\r\n Tag: string | null = '';\r\n\r\n Types: BlogType[] = [];\r\n\r\n OrderByStatements: BlogOrderBy[] = [];\r\n\r\n constructor(init?: Partial) {\r\n if(init) Object.assign(this, init);\r\n }\r\n}\r\n\r\nexport { BlogFilter, BlogOrderBy }\r\n","import { WebsiteLevel } from \"../types/WebsiteConfig\"\r\nimport { ListingCategory, ListingStatus, PropertyType, PropertyCategory, PropertySubCategory, MethodOfSale } from \"../types/Listing\";\r\nimport { Config } from \"../services/Config\";\r\nimport { OrderByStatement } from \"../types\";\r\n\r\nenum ListingOrderBy {\r\n SoldDateAsc = \"SoldDate:Asc\",\r\n SoldDateDesc = \"SoldDate:Desc\",\r\n\r\n CreateDateAsc = \"CreateDate:Asc\",\r\n CreateDateDesc = \"CreateDate:Desc\",\r\n\r\n SalePriceAsc = \"SalePrice:Asc\",\r\n SalePriceDesc = \"SalePrice:Desc\",\r\n\r\n SoldPriceAsc = \"SoldPrice:Asc\",\r\n SoldPriceDesc = \"SoldPrice:Desc\",\r\n\r\n SuburbAsc = \"Suburb:Asc\",\r\n SuburbDesc = \"Suburb:Desc\",\r\n\r\n LastUpdatedDateAsc = \"LastUpdatedDate:Asc\",\r\n LastUpdatedDateDesc = \"LastUpdatedDate:Desc\"\r\n}\r\n\r\nclass ListingFilter {\r\n SearchLevel: WebsiteLevel = Config.API.WebsiteLevel;\r\n SearchGuid: string = Config.API.WebsiteId;\r\n SearchGuids: string[] = [];\r\n\r\n Page: number = 1;\r\n PageSize: number = 10;\r\n\r\n ExcludeConjunctionalListings: boolean = false;\r\n IsHighlightListing: boolean = false;\r\n IsFeatured: boolean = false;\r\n IsPROListFeatured: boolean = false;\r\n HaveInspections: boolean = false;\r\n \r\n PropertyId: string | string = '';\r\n Estate: string | string = '';\r\n\r\n Categories: ListingCategory[] = [];\r\n Statuses: ListingStatus[] = [];\r\n PropertyTypes: PropertyType[] = [];\r\n PropertyCategories: PropertyCategory[] = [];\r\n PropertySubCategories: PropertySubCategory[] = [];\r\n MethodsOfSale: MethodOfSale[] = [];\r\n\r\n AddressString: string | string = '';\r\n LotNumber: string | string = '';\r\n UnitNumber: string | string = '';\r\n StreetNumber: string | string = '';\r\n Suburbs: string[] = [];\r\n\r\n BoundsNorth: number | string = '';\r\n BoundsEast: number | string = '';\r\n BoundsSouth: number | string = '';\r\n BoundsWest: number | string = '';\r\n\r\n OrderByStatements: ListingOrderBy[] | OrderByStatement[] = [];\r\n\r\n MinBedrooms: number | string = '';\r\n MinBathrooms: number | string = '';\r\n MinParking: number | string = '';\r\n\r\n MinFloorArea: number | string = '';\r\n MaxFloorArea: number | string = '';\r\n\r\n MinLandArea: number | string = '';\r\n MaxLandArea: number | string = '';\r\n\r\n MinPrice: number | string = '';\r\n MaxPrice: number | string = '';\r\n\r\n MinSoldPrice: number | string = '';\r\n MaxSoldPrice: number | string = '';\r\n\r\n IsHomeAndLandPackage?: boolean;\r\n\r\n SearchTerm?: string;\r\n\r\n IsStrata: boolean = false;\r\n IsFreehold: boolean = false;\r\n IsTenanted: boolean = false;\r\n IsVacant: boolean = false;\r\n IsWholeBuilding: boolean = false;\r\n\r\n constructor(init?: Partial) {\r\n if(init) Object.assign(this, init);\r\n }\r\n}\r\n\r\nexport { ListingFilter, ListingOrderBy }\r\n","import { WebsiteLevel } from \"../types/WebsiteConfig\";\r\nimport { Config } from \"../services/Config\";\r\n\r\nenum TestimonialOrderBy {\r\n CreateDateAsc = \"CreateDate:Asc\",\r\n CreateDateDesc = \"CreateDate:Desc\"\r\n}\r\n\r\nclass TestimonialFilter {\r\n SearchLevel: WebsiteLevel = Config.API.WebsiteLevel;\r\n SearchGuid: string = Config.API.WebsiteId;\r\n OrderByStatements: TestimonialOrderBy[] = [];\r\n SearchGuids: string[] = [];\r\n\r\n constructor(init?: Partial) {\r\n if(init) Object.assign(this, init);\r\n }\r\n}\r\n\r\nexport { TestimonialFilter, TestimonialOrderBy }\r\n","import { WebsiteLevel } from \"../types/WebsiteConfig\";\r\nimport { Config } from \"../services/Config\";\r\n\r\nclass ProfileFilter {\r\n SearchLevel: WebsiteLevel = Config.API.WebsiteLevel;\r\n SearchGuid: string = Config.API.WebsiteId;\r\n SearchGuids: string[] = [];\r\n\r\n constructor(init?: Partial) {\r\n if(init) Object.assign(this, init);\r\n }\r\n}\r\n\r\nexport { ProfileFilter }\r\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TestimonialCards.vue?vue&type=style&index=0&id=19fd1a54&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Page',[_c('SiteMasthead',{attrs:{\"mini\":\"true\",\"title\":\"Testimonials\"}}),_c('ContentRow',{attrs:{\"backgroundColour\":\"#eee\"}},[_c('ContentContainer',[_c('TestimonialCards',{attrs:{\"filter\":_vm.filter}})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Mixins } from 'vue-property-decorator';\r\nimport { TestimonialFilter } from 'client-website-ts-library/filters';\r\nimport { View } from 'client-website-ts-library/plugins';\r\n\r\nimport TestimonialCards from '../components/Testimonials/TestimonialCards.vue';\r\n\r\n@Component({\r\n components: {\r\n TestimonialCards,\r\n },\r\n})\r\nexport default class Testimonials extends Mixins(View) {\r\n private filter: TestimonialFilter = new TestimonialFilter();\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!./Testimonials.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!./Testimonials.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Testimonials.vue?vue&type=template&id=9220eabc&scoped=true&\"\nimport script from \"./Testimonials.vue?vue&type=script&lang=ts&\"\nexport * from \"./Testimonials.vue?vue&type=script&lang=ts&\"\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 \"9220eabc\",\n null\n \n)\n\nexport default component.exports","import Vue from \"vue\";\r\nimport { Component } from \"vue-property-decorator\";\r\nimport { AnalyticsEvent, AnalyticsEventObject, AnalyticsPageView, IAnalyticsAdapter, PROListAnalyticsAdapter } from \"../../services/Analytics\";\r\nimport { HeadService } from \"../../services/HeadService\";\r\nimport { ServiceManager, ServiceType } from \"../../services/ServiceManager\";\r\nimport { RouteMeta } from \"../meta\";\r\n\r\ninterface ViewBase {\r\n getAnalyticsEvent?(): AnalyticsEvent | null;\r\n getAnalyticsData?(): AnalyticsEventObject | null;\r\n head?(): RouteMeta | Promise | null;\r\n}\r\n\r\n@Component\r\nclass ViewBase extends Vue {\r\n protected prolistAnalyticsService = ServiceManager.Get(ServiceType.Analytics, 'PROListAnalyticsAdapter');\r\n protected headService = ServiceManager.Require(ServiceType.Head)!;\r\n\r\n public updateAnalytics() {\r\n let evt: AnalyticsEvent | null = null;\r\n let obj: AnalyticsEventObject | null = null;\r\n\r\n if (typeof this.getAnalyticsEvent !== 'undefined') {\r\n evt = this.getAnalyticsEvent.call(this);\r\n } else if(typeof this.getAnalyticsData !== 'undefined') {\r\n obj = this.getAnalyticsData.call(this);\r\n }\r\n\r\n if (evt === null) evt = new AnalyticsPageView(this.$route.path, this.$route.name || '', obj || undefined);\r\n\r\n this.triggerAnalyticsEvent(evt);\r\n }\r\n\r\n public triggerAnalyticsEvent(event: AnalyticsEvent) {\r\n ServiceManager.GetAll(ServiceType.Analytics).forEach((adapter) => {\r\n adapter.Record(event);\r\n });\r\n }\r\n\r\n public triggerCustomAnalyticsEvent(event: AnalyticsEvent) {\r\n if (this.prolistAnalyticsService !== null) this.prolistAnalyticsService.Record(event);\r\n }\r\n\r\n protected updateHead() {\r\n if ('head' in this) {\r\n const result = this.head!.bind(this)();\r\n\r\n if(result instanceof Promise) {\r\n result.then((meta: RouteMeta | null) => {\r\n this.headService.Update(meta);\r\n });\r\n } else {\r\n this.headService.Update(result as RouteMeta | null);\r\n }\r\n } else {\r\n this.headService.UpdateWithStatic(this.$route.path);\r\n }\r\n }\r\n}\r\n\r\n@Component\r\nclass View extends ViewBase {\r\n public mounted() {\r\n requestAnimationFrame(() => {\r\n this.updateHead();\r\n this.updateAnalytics();\r\n });\r\n }\r\n}\r\n\r\n@Component\r\nclass AsyncView extends ViewBase {\r\n public mounted() {\r\n this.$on('updateView', () => {\r\n requestAnimationFrame(() => {\r\n this.updateHead();\r\n this.updateAnalytics();\r\n });\r\n });\r\n }\r\n}\r\n\r\nexport {\r\n View,\r\n AsyncView\r\n}\r\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TestimonialCard.vue?vue&type=style&index=0&id=aba8a866&scoped=true&lang=css&\""],"sourceRoot":""}