{"version":3,"sources":["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:///./node_modules/client-website-ts-library/types/Blog.ts","webpack:///./node_modules/client-website-ts-library/types/Listing.ts","webpack:///./node_modules/client-website-ts-library/types/Office.ts","webpack:///./node_modules/client-website-ts-library/types/MapSettings.ts","webpack:///./node_modules/client-website-ts-library/types/BulkRequests.ts","webpack:///./node_modules/client-website-ts-library/types/OrderByStatement.ts","webpack:///./node_modules/client-website-ts-library/types/Context.ts","webpack:///./src/views/TVDisplaySales.vue?1308","webpack:///./src/views/TVDisplaySales.vue","webpack:///./src/views/TVDisplaySales.vue?c80f","webpack:///./src/views/TVDisplaySales.vue?58e0","webpack:///./node_modules/client-website-ts-library/plugins/view/index.ts","webpack:///./src/views/TVDisplaySales.vue?9a2e","webpack:///./node_modules/client-website-ts-library/types/Profile.ts","webpack:///./src/views/TVDisplaySales.vue?ea9f"],"names":["BlogOrderBy","ListingOrderBy","TestimonialOrderBy","BlogFilter","constructor","init","SearchLevel","Config","API","WebsiteLevel","SearchGuid","WebsiteId","Suburb","Tag","Types","OrderByStatements","Object","assign","this","ListingFilter","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","ProfileFilter","TestimonialFilter","BlogType","SupplementaryType","ListingFileType","ListingCategory","ListingStatus","MethodOfSale","PropertyType","PropertyCategory","PropertySubCategory","OfficeExternalLinkType","MapMarker","MapSettings","Zoom","Markers","Interactive","Website","Settings","MapProvider","ProviderConfig","geocoderService","ServiceManager","Require","ServiceType","Geocoder","Logger","Log","LogLevel","Warning","geocodingRequests","filter","m","undefined","Coordinate","Address","map","async","result","Geocode","Debug","Promise","all","BulkRequestEntryType","ListingSortColumn","SortType","ContextItemType","render","_vm","_h","$createElement","_c","_self","staticClass","_m","attrs","_v","_s","methodOfSale","_e","on","handleAfterLeave","style","dwellTime","listing","Images","length","Preview","Url","MicroAddress","HiddenAddress","qrCodeLink","listingLink","Header","Price","Introduction","Features","Bedrooms","Bathrooms","Parking","Total","Agents","FullName","MobilePhone","Photo","staticRenderFns","TVDisplaySales","Mixins","View","maxListings","listingFilter","Current","UnderContract","ResidentialSale","ResidentialLand","listings","currentIdx","window","location","hostname","Base","Id","indexOf","queueNext","clearTimeout","nextTimeout","setTimeout","updateListings","then","console","log","resolve","Listings","Search","Items","catch","mounted","__decorate","Component","component","ViewBase","Vue","prolistAnalyticsService","Get","Analytics","headService","Head","updateAnalytics","evt","obj","getAnalyticsEvent","call","getAnalyticsData","AnalyticsPageView","$route","path","name","triggerAnalyticsEvent","event","GetAll","forEach","adapter","Record","triggerCustomAnalyticsEvent","updateHead","head","bind","meta","Update","UpdateWithStatic","requestAnimationFrame","AsyncView","$on","WebsiteProfileDisplayType"],"mappings":"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","file":"js/chunk-02346afb.423b407e.js","sourcesContent":["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\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","import { Profile } from \"./Profile\";\r\nimport { DateInfo } from \"./DateInfo\";\r\nimport { ResizableImage } from \"./ResizableImage\";\r\nimport ExternalLink from \"./ExternalLink\";\r\nimport { EmbeddedContent } from \"./EmbeddedContent/EmbeddedContent\";\r\n\r\nenum BlogType {\r\n Social = 0,\r\n Suburb = 1,\r\n Estate = 2,\r\n Promotions = 3,\r\n Market = 4,\r\n Invest = 5,\r\n Landlord = 6\r\n}\r\n\r\ninterface Blog {\r\n Id: string;\r\n UserId: string;\r\n\r\n Profile: Profile;\r\n\r\n Suburb: string;\r\n Type: BlogType;\r\n FormattedType: string;\r\n\r\n CreateDate: DateInfo;\r\n UpdatedDate: DateInfo;\r\n ElapsedPostTime: string;\r\n\r\n Title: string;\r\n Subtitle: string;\r\n Paragraph1: string;\r\n Paragraph2: string;\r\n\r\n Images: ResizableImage[];\r\n ExternalLinks: ExternalLink[];\r\n EmbeddedContent: EmbeddedContent[];\r\n\r\n Tags: string[];\r\n\r\n PDFTitle: string;\r\n PDFUrl: string;\r\n}\r\n\r\nexport { Blog, BlogType }\r\n","\r\nimport InspectionTime from \"./InspectionTime\";\r\nimport ExternalLink from \"./ExternalLink\";\r\nimport { EmbeddedContent } from \"./EmbeddedContent/EmbeddedContent\";\r\nimport { Profile } from \"./Profile\";\r\nimport { ResizableImage } from \"./ResizableImage\";\r\nimport Coordinate from \"./Coordinate\";\r\nimport { AuctionDetails } from \".\";\r\n\r\ninterface ListingAddress {\r\n DisplayAddress: boolean;\r\n\r\n UnitNumber: string;\r\n StreetNumber: string;\r\n Address: string;\r\n Suburb: string;\r\n PostCode: string;\r\n Estate: string;\r\n State: string;\r\n\r\n FullAddress: string;\r\n MicroAddress: string;\r\n HiddenAddress: string;\r\n\r\n Coordinates: Coordinate;\r\n}\r\n\r\ninterface ListingPrice {\r\n Price: string;\r\n DisplayPrice: boolean;\r\n BondPrice: string;\r\n NumericPrice: number;\r\n SoldPrice: string;\r\n CustomPrice: string;\r\n}\r\n\r\ninterface ListingParking {\r\n Garages: number;\r\n CarPorts: number;\r\n OpenSpaces: number;\r\n CarSpaces: number;\r\n Total: number;\r\n}\r\n\r\nenum SupplementaryType {\r\n None,\r\n Pool,\r\n Study\r\n}\r\n\r\ninterface Supplementary {\r\n Type: SupplementaryType;\r\n Count: Number;\r\n}\r\n\r\ninterface ListingArea {\r\n Office: string;\r\n Warehouse: string;\r\n TotalBuilding: string;\r\n Land: string;\r\n\r\n Other: string;\r\n OtherType: string;\r\n\r\n Frontage: string;\r\n DepthLeft: string;\r\n DepthRight: string;\r\n DepthBack: string;\r\n \r\n Crossover: string;\r\n}\r\n\r\ninterface ListingFeatures {\r\n Bedrooms: number;\r\n Bathrooms: number;\r\n\r\n Parking: ListingParking;\r\n\r\n Supplementary1: Supplementary;\r\n Supplementary2: Supplementary;\r\n\r\n Area: ListingArea;\r\n\r\n NumberOfLevels: number;\r\n\r\n OtherFeatures: string;\r\n\r\n HasGreyWaterSystem: boolean;\r\n HasSolarHotWater: boolean;\r\n HasSolarPanels: boolean;\r\n HasWaterTank: boolean;\r\n HasAirConditioning: boolean;\r\n HasDuctedCooling: boolean;\r\n HasDuctedHeating: boolean;\r\n HasEvaporativeCooling: boolean;\r\n HasGasHeating: boolean;\r\n HasHydronicHeating: boolean;\r\n HasOpenFirePlace: boolean;\r\n HasReverseCycleAirCon: boolean;\r\n HasSplitSystemAirCon: boolean;\r\n HasSplitSystemHeating: boolean;\r\n HasAlarmSystem: boolean;\r\n HasBroadband: boolean;\r\n HasBuiltInRobes: boolean;\r\n HasDishwasher: boolean;\r\n HasVacuumSystem: boolean;\r\n HasFloorboards: boolean;\r\n HasGym: boolean;\r\n HasInsideSpa: boolean;\r\n HasIntercom: boolean;\r\n HasPayTV: boolean;\r\n HasRumpusRoom: boolean;\r\n HasStudy: boolean;\r\n HasWorkshop: boolean;\r\n HasBalcony: boolean;\r\n HasCourtyard: boolean;\r\n HasDeck: boolean;\r\n HasFullyFenced: boolean;\r\n HasOutsideSpa: boolean;\r\n HasRemoteGarage: boolean;\r\n HasSecureParking: boolean;\r\n HasShed: boolean;\r\n HasPoolAboveGround: boolean;\r\n HasPoolInGround: boolean;\r\n HasTennisCourt: boolean;\r\n HasOutDoorEntertainment: boolean;\r\n\r\n IsPetFriendly: boolean;\r\n IsFurnished: boolean;\r\n\r\n FeatureList: string[];\r\n}\r\n\r\nenum ListingFileType {\r\n None,\r\n PDF,\r\n Floorplan\r\n}\r\n\r\ninterface ListingFile {\r\n Type: ListingFileType;\r\n Label: string;\r\n Url: string;\r\n}\r\n\r\ninterface Listing {\r\n Id: string;\r\n PropertyId: number;\r\n CreateDate: Date;\r\n\r\n Category: string;\r\n ListingCategory: string;\r\n PropertyType: string;\r\n MethodOfSale: string;\r\n Status: string;\r\n Exclusivity: string;\r\n\r\n CommercialCategories: string[];\r\n Agents: Profile[];\r\n\r\n Address: ListingAddress;\r\n Price: ListingPrice;\r\n Features: ListingFeatures;\r\n OtherFeatures: string;\r\n\r\n InspectionTimes: InspectionTime[];\r\n Auction: AuctionDetails;\r\n\r\n WholeOrPart: string;\r\n Tenancy: string;\r\n\r\n WaterRates: string;\r\n CouncilRates: string;\r\n\r\n Header: string;\r\n Introduction: string;\r\n WebDescription: string;\r\n \r\n HtmlWebDescription: string;\r\n\r\n ExternalLinks: ExternalLink[];\r\n EmbeddedContent: EmbeddedContent[];\r\n Files: ListingFile[];\r\n\r\n Images: ResizableImage[];\r\n DateAvailable: Date;\r\n \r\n IsHighlightListing: boolean;\r\n\r\n BulletPoints: string[];\r\n\r\n Slug: string;\r\n\r\n MinimumNights: Number;\r\n}\r\n\r\nenum ListingCategory\r\n{\r\n ResidentialSale,\r\n ResidentialRental,\r\n ResidentialLand,\r\n HolidayRental,\r\n Rural,\r\n Commercial,\r\n CommercialLand,\r\n Business\r\n}\r\n\r\nenum ListingStatus\r\n{\r\n Current,\r\n UnderContract,\r\n OffMarket,\r\n Withdrawn,\r\n Leased,\r\n Sold\r\n}\r\n\r\nenum MethodOfSale\r\n{ \r\n Sale,\r\n Lease,\r\n Both,\r\n Auction,\r\n Tender,\r\n EOI,\r\n ForSale,\r\n Offers\r\n}\r\n\r\nenum PropertyType\r\n{\r\n Acreage,\r\n Alpine,\r\n Apartment,\r\n BlockOfUnits,\r\n Duplex,\r\n Flat,\r\n House,\r\n Retirement,\r\n SemiDetached,\r\n ServicedApartment,\r\n Studio,\r\n Terrace,\r\n Townhouse,\r\n Unit,\r\n Villa,\r\n Warehouse,\r\n // Rural\r\n Cropping,\r\n Dairy,\r\n Farmlet,\r\n Horticulture,\r\n Lifestyle,\r\n Livestock,\r\n MixedFarming,\r\n Viticulture,\r\n Other\r\n}\r\n\r\nenum PropertyCategory\r\n{\r\n AccommodationTourism,\r\n Automotive,\r\n BeautyHealth,\r\n CommercialFarming,\r\n FoodHospitality,\r\n HomeGarden,\r\n HotelLeisure,\r\n IndustrialManufacturing,\r\n IndustrialWarehouse,\r\n LandDevelopment,\r\n LeisureEntertainment,\r\n MedicalConsulting,\r\n Offices,\r\n Other,\r\n Professional,\r\n Retail,\r\n Rural,\r\n Services,\r\n ShowroomsBulkyGoods,\r\n TransportDistribution\r\n}\r\n\r\nenum PropertySubCategory\r\n{\r\n AccessoriesParts,\r\n AgedCare,\r\n Agricultural,\r\n AlcoholLiquor,\r\n Amusements,\r\n Aquaculture,\r\n AquaticMarine,\r\n BackpackerHostel,\r\n Bakery,\r\n BarsNightclubs,\r\n BeautySalon,\r\n BoatsMarine,\r\n BuildingandConstruction,\r\n Bus,\r\n Butcher,\r\n CafeCoffeeShop,\r\n CarBusTruck,\r\n Catering,\r\n Cleaning,\r\n ClothingAccessories,\r\n ConvenienceStore,\r\n DairyFarming,\r\n Dental,\r\n Farming,\r\n FishingForestry,\r\n FloristNursery,\r\n FoodBeverage,\r\n FruitVeg,\r\n FunctionCentre,\r\n FurnitureTimber,\r\n GardenHousehold,\r\n GardenNurseries,\r\n GlassCeramic,\r\n Hair,\r\n HealthSpa,\r\n HireRent,\r\n HomewareHardware,\r\n Hotel,\r\n JuiceBar,\r\n LimousineTaxi,\r\n Machinery,\r\n MachineryMetal,\r\n ManagementRights,\r\n Manufacturers,\r\n MechanicalRepair,\r\n Media,\r\n Motel,\r\n MusicVideo,\r\n Nursery,\r\n Other,\r\n PrintPhoto,\r\n RecreationSport,\r\n Repair,\r\n Resort,\r\n Restaurant,\r\n ServiceStation,\r\n SportsComplexGym,\r\n TakeawayFood,\r\n Tours,\r\n Wholesalers\r\n}\r\n\r\nexport { ListingAddress, ListingPrice, ListingParking, SupplementaryType, Supplementary, ListingArea, ListingFeatures, ListingFileType, ListingFile, Listing, ListingCategory, ListingStatus, MethodOfSale, PropertyType, PropertyCategory, PropertySubCategory }\r\n","import Coordinate from \"./Coordinate\";\r\nimport { ResizableImageItem } from \"./ResizableImage\";\r\n\r\nenum OfficeExternalLinkType {\r\n None,\r\n Facebook,\r\n YouTube,\r\n Twitter,\r\n GoogleMyBusiness,\r\n LinkedIn,\r\n Pinterest,\r\n Instagram\r\n}\r\n\r\ninterface OfficeExternalLink {\r\n Url: string;\r\n Type: OfficeExternalLinkType;\r\n}\r\n\r\ninterface Office {\r\n Id: string;\r\n\r\n OfficeName: string;\r\n FranchiseName: string;\r\n\r\n Phone: string;\r\n Email: string;\r\n Fax: string;\r\n\r\n WebsitePhotoMain: ResizableImageItem;\r\n WebsitePhotoPreview: ResizableImageItem;\r\n\r\n CompanyName: string;\r\n About: string;\r\n ABN: string;\r\n\r\n DisplayAddress: boolean;\r\n AddressLine1: string;\r\n AddressLine2: string;\r\n\r\n POBoxLine1: string;\r\n POBoxLine2: string;\r\n\r\n Coordinate: Coordinate;\r\n\r\n VideoURL: string;\r\n\r\n OfficeSlug: string;\r\n FranchiseSlug: string;\r\n FullSlug: string;\r\n \r\n ExternalLinks: OfficeExternalLink[];\r\n\r\n EmailAddresses: string[];\r\n}\r\n\r\nexport { Office, OfficeExternalLink, OfficeExternalLinkType }\r\n","import { Config } from \"../services/Config\"\r\nimport { ServiceManager, ServiceType } from \"../services/ServiceManager\";\r\nimport { IGeocoder } from \"../services/Geocoders/IGeocoder\";\r\nimport Coordinate from \"./Coordinate\";\r\nimport { Logger, LogLevel } from \"../services/Logger\";\r\nimport { BoundingBox } from \".\";\r\n\r\nclass MapMarker {\r\n public Coordinate?: Coordinate;\r\n public Address?: string;\r\n public Content?: string;\r\n public IconURL?: string;\r\n public Title?: string;\r\n public CustomRenderer?: (elem: HTMLDivElement, marker: MapMarker) => void;\r\n\r\n constructor(init?: Partial) {\r\n if (init) Object.assign(this, init);\r\n }\r\n}\r\n\r\nclass MapSettings {\r\n public Zoom: number = 13;\r\n public Markers: MapMarker[] = [];\r\n public Center?: Coordinate;\r\n public Interactive: boolean = Config.Website.Settings!.MapProvider.Interactive;\r\n public GreedyZoom?: boolean;\r\n public MaxBounds?: BoundingBox;\r\n public Padding?: number;\r\n\r\n public readonly ProviderConfig = Config.Website.Settings!.MapProvider;\r\n\r\n constructor(init?: Partial) {\r\n if (init) Object.assign(this, init);\r\n }\r\n\r\n async Geocode(): Promise {\r\n var geocoderService = ServiceManager.Require(ServiceType.Geocoder);\r\n\r\n if (geocoderService == null) {\r\n Logger.Log(LogLevel.Warning, '[Geocoder]', 'No geocoder found.');\r\n return;\r\n }\r\n\r\n const geocodingRequests = this.Markers.filter((m) => m.Coordinate == undefined && m.Address != undefined).map(async (m) => {\r\n const result = await geocoderService.Geocode(m.Address!);\r\n\r\n m.Coordinate = result;\r\n });\r\n\r\n Logger.Log(LogLevel.Debug, '[Geocoder]', 'Geocoding', geocodingRequests);\r\n\r\n await Promise.all(geocodingRequests);\r\n }\r\n}\r\n\r\nexport { MapMarker, MapSettings }\r\n","import { ListingFilter } from \"../filters/ListingFilter\";\r\nimport { Listing } from \"./Listing\";\r\nimport { PagedResponse } from \"./PagedResponse\";\r\n\r\nenum BulkRequestEntryType\r\n{\r\n None,\r\n SearchListings,\r\n CountListings\r\n}\r\n\r\ninterface BulkRequestEntry {\r\n Id?: number;\r\n Type: BulkRequestEntryType;\r\n Data?: string;\r\n}\r\n\r\ninterface BulkRequestCallbackEntry extends BulkRequestEntry {\r\n Callback: (res: TResponse) => void;\r\n}\r\n\r\ninterface BulkRequest {\r\n Entries: BulkRequestEntry[];\r\n}\r\n\r\ninterface BulkResponseItemModel {\r\n Request: BulkRequestEntry;\r\n Success: boolean;\r\n Response: any;\r\n}\r\n\r\ninterface BulkResponse {\r\n Entries: BulkResponseItemModel[];\r\n}\r\n\r\ninterface CountListingsResponse {\r\n Count: number;\r\n}\r\n\r\nclass BulkRequestEntryBase implements BulkRequestCallbackEntry {\r\n Id?: number;\r\n Type: BulkRequestEntryType;\r\n Data: string;\r\n Callback: (res: TResponse) => void;\r\n\r\n constructor(type: BulkRequestEntryType, data: any, callback: (res: TResponse) => void) {\r\n this.Type = type;\r\n this.Data = JSON.stringify(data);\r\n this.Callback = callback;\r\n }\r\n}\r\n\r\nclass CountListingsRequest extends BulkRequestEntryBase {\r\n constructor(filter: ListingFilter, callback: (res: CountListingsResponse) => void) {\r\n super(BulkRequestEntryType.CountListings, filter, callback);\r\n }\r\n}\r\n\r\nclass SearchListingsRequest extends BulkRequestEntryBase> {\r\n constructor(filter: ListingFilter, callback: (res: CountListingsResponse) => void) {\r\n super(BulkRequestEntryType.SearchListings, filter, callback);\r\n }\r\n}\r\n\r\n\r\nexport { BulkRequestEntry, BulkRequest, BulkResponseItemModel, BulkResponse, CountListingsRequest, SearchListingsRequest, BulkRequestCallbackEntry, BulkRequestEntryType }","enum ListingSortColumn {\r\n SoldDate = 'SoldDate',\r\n CreateDate = 'CreateDate',\r\n SalePrice = 'SalePrice',\r\n SoldPrice = 'SoldPrice',\r\n Suburb = 'Suburb',\r\n LastUpdatedDate = 'LastUpdatedDate'\r\n}\r\n\r\nenum SortType {\r\n Asc = 'Asc',\r\n Desc = 'Desc'\r\n}\r\n\r\ninterface OrderByStatement {\r\n Column: ListingSortColumn;\r\n Type: SortType;\r\n}\r\n\r\nexport { ListingSortColumn, SortType, OrderByStatement }","import { WebsiteLevel } from \"./WebsiteConfig\";\r\n\r\nenum ContextItemType\r\n{\r\n None,\r\n Listing,\r\n Profile,\r\n Office,\r\n EnquiryTargetProfile,\r\n Franchise,\r\n CustomData,\r\n}\r\n\r\ninterface ContextItem {\r\n Type: ContextItemType;\r\n Id: string;\r\n}\r\n\r\ninterface CustomContextItem extends ContextItem {\r\n Key: string;\r\n Value: string;\r\n}\r\n\r\ninterface Context {\r\n ClientWebsiteId: string;\r\n WebsiteId?: string;\r\n WebsiteLevel?: WebsiteLevel;\r\n Items: ContextItem[];\r\n}\r\n\r\nexport { ContextItemType, ContextItem, Context, CustomContextItem }\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tv-display\"},[_c('div',{staticClass:\"tv-display__header\"},[_vm._m(0),_c('div',{staticClass:\"tv-display__header__mos\"},[_c('transition',{attrs:{\"name\":\"tvd-fade\"}},[(_vm.listing)?_c('span',[_vm._v(\" \"+_vm._s(_vm.methodOfSale)+\" \")]):_vm._e()])],1)]),_c('div',{staticClass:\"tv-display__content\"},[_c('transition',{attrs:{\"name\":\"tvd-fade\"},on:{\"after-leave\":_vm.handleAfterLeave}},[(_vm.listing)?_c('div',{staticClass:\"tvd-listing\"},[_c('div',{staticClass:\"tvd-progress-bar\",style:({'--dwell-time': _vm.dwellTime})}),_c('div',{staticClass:\"tvd-listing__body\"},[_c('div',{staticClass:\"tvd-listing__images\"},[(_vm.listing.Images.length === 0)?[_c('div',{staticClass:\"tvd-listing__images__item tvd-listing__images__item--placeholder\"},[_vm._v(\" Sorry, there are no photos for this listing yet. \")])]:(_vm.listing.Images.length < 3)?[_c('div',{staticClass:\"tvd-listing__images__item tvd-listing__images__item--only-main\",style:({'background-image': 'url(' + _vm.listing.Images[0].Preview.Url + ')'})})]:[_c('div',{staticClass:\"tvd-listing__images__item tvd-listing__images__item--main\",style:({'background-image': 'url(' + _vm.listing.Images[0].Preview.Url + ')'})}),_c('div',{staticClass:\"tvd-listing-images__row\"},[_c('div',{staticClass:\"tvd-listing__images__item tvd-listing__images__item--sub\",style:({'background-image': 'url(' + _vm.listing.Images[1].Preview.Url + ')'})}),_c('div',{staticClass:\"tvd-listing__images__item tvd-listing__images__item--sub\",style:({'background-image': 'url(' + _vm.listing.Images[2].Preview.Url + ')'})})])]],2),_c('div',{staticClass:\"tvd-listing__details\"},[_c('div',{staticClass:\"tvd-listing-details__heading\"},[_c('div',{staticClass:\"tvd-listing-details__heading__details\"},[_c('h4',{staticClass:\"listing-address\"},[_vm._v(_vm._s(_vm.listing.Address.MicroAddress))]),_c('h5',{staticClass:\"listing-suburb\"},[_vm._v(_vm._s(_vm.listing.Address.HiddenAddress))])]),_c('div',{staticClass:\"tvd-listing-details__heading__qr-code\"},[_c('img',{attrs:{\"src\":_vm.qrCodeLink}}),_c('div',{staticClass:\"tvd-listing-details__heading__qr-code__link\"},[_vm._v(\" \"+_vm._s(_vm.listingLink)+\" \")])])]),_c('div',{staticClass:\"tvd-listing__details__body\"},[_c('h2',{staticClass:\"listing-heading\"},[_vm._v(_vm._s(_vm.listing.Header))]),(_vm.listing.Price.DisplayPrice)?_c('h3',{staticClass:\"listing-price\"},[_vm._v(_vm._s(_vm.listing.Price.Price))]):_vm._e(),_c('p',{staticClass:\"listing-introduction\"},[_vm._v(_vm._s(_vm.listing.Introduction))]),_c('ul',{staticClass:\"listing-meta\"},[(_vm.listing.Features.Bedrooms)?_c('li',{staticClass:\"listing-meta__item\"},[_c('Icon',{staticClass:\"listing-meta__item__icon\",attrs:{\"icon\":\"bed\"}}),_c('span',{staticClass:\"listing-meta__item__label\"},[_vm._v(\" \"+_vm._s(_vm.listing.Features.Bedrooms)+\" \")])],1):_vm._e(),(_vm.listing.Features.Bathrooms)?_c('li',{staticClass:\"listing-meta__item\"},[_c('Icon',{staticClass:\"listing-meta__item__icon\",attrs:{\"icon\":\"bath\"}}),_c('span',{staticClass:\"listing-meta__item__label\"},[_vm._v(\" \"+_vm._s(_vm.listing.Features.Bathrooms)+\" \")])],1):_vm._e(),(_vm.listing.Features.Parking.Total)?_c('li',{staticClass:\"listing-meta__item\"},[_c('Icon',{staticClass:\"listing-meta__item__icon\",attrs:{\"icon\":\"car\"}}),_c('span',{staticClass:\"listing-meta__item__label\"},[_vm._v(\" \"+_vm._s(_vm.listing.Features.Parking.Total)+\" \")])],1):_vm._e()])])])]),_c('div',{staticClass:\"tvd-listing__footer\"},[_c('div',{staticClass:\"tvd-listing__agency\"}),_c('div',{staticClass:\"tvd-listing__agent\"},[_c('div',{staticClass:\"listing-agent__name\"},[_vm._v(\" \"+_vm._s(_vm.listing.Agents[0].FullName)+\" \")]),_c('div',{staticClass:\"listing-agent__phone\"},[_vm._v(\" \"+_vm._s(_vm.listing.Agents[0].MobilePhone)+\" \")])]),_c('div',{staticClass:\"tvd-listing-agent-photo\"},[_c('img',{attrs:{\"src\":_vm.listing.Agents[0].Photo.Preview.Url}})])])]):_vm._e()])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tv-display__header__brand\"},[_c('img',{attrs:{\"src\":\"/assets/images/brand/logo.svg\"}})])}]\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\nimport { Component, Mixins } from 'vue-property-decorator';\n\nimport { ListingFilter } from 'client-website-ts-library/filters';\nimport {\n ListingStatus,\n ListingCategory,\n Listing,\n} from 'client-website-ts-library/types';\n\nimport { View } from 'client-website-ts-library/plugins';\nimport { API, Config } from 'client-website-ts-library/services';\n\n@Component\nexport default class TVDisplaySales extends Mixins(View) {\n private dwellTime = 10 * 1000 * 0.5;\n\n private maxListings = 5;\n\n private listingFilter = new ListingFilter({\n Statuses: [\n ListingStatus.Current,\n ListingStatus.UnderContract,\n ],\n Categories: [\n ListingCategory.ResidentialSale,\n ListingCategory.ResidentialLand,\n ],\n PageSize: this.maxListings,\n });\n\n private listings: Listing[] = [];\n\n private listing: Listing | null = null;\n\n private nextTimeout?: number;\n\n private currentIdx = 0;\n\n get listingLink() {\n if (this.listing === null) return '';\n\n return `${window.location.hostname}/${this.listing.PropertyId}`;\n }\n\n get qrCodeLink() {\n if (this.listing === null) return null;\n\n return `${Config.API.Base}/api/links/qrcode/listings/${this.listing.Id}?clientWebsiteId=${Config.Website.Id}`;\n }\n\n get methodOfSale() {\n if (this.listing === null) return 'For Sale';\n\n if (this.listing.MethodOfSale.indexOf('For') !== -1) return this.listing.MethodOfSale;\n\n return `For ${this.listing.MethodOfSale}`;\n }\n\n queueNext() {\n clearTimeout(this.nextTimeout);\n\n this.nextTimeout = setTimeout(() => {\n this.currentIdx += 1;\n\n if (this.currentIdx >= this.listings.length && this.listings.length > 0) {\n this.updateListings().then(() => {\n // eslint-disable-next-line prefer-destructuring\n this.currentIdx = 0;\n this.listing = null;\n });\n } else {\n this.listing = null;\n }\n }, this.dwellTime);\n }\n\n handleAfterLeave() {\n this.listing = this.listings[this.currentIdx];\n\n console.log(this.listing);\n\n this.queueNext();\n }\n\n updateListings() {\n return new Promise((resolve) => {\n API.Listings.Search(this.listingFilter).then((listings) => {\n this.listings = listings.Items;\n\n this.handleAfterLeave();\n\n resolve();\n }).catch(() => {\n if (this.listings.length > 0) {\n this.handleAfterLeave();\n\n resolve();\n }\n });\n });\n }\n\n mounted() {\n this.updateListings();\n }\n}\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!./TVDisplaySales.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!./TVDisplaySales.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TVDisplaySales.vue?vue&type=template&id=20702e41&scoped=true&\"\nimport script from \"./TVDisplaySales.vue?vue&type=script&lang=ts&\"\nexport * from \"./TVDisplaySales.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TVDisplaySales.vue?vue&type=style&index=0&lang=css&\"\nimport style1 from \"./TVDisplaySales.vue?vue&type=style&index=1&id=20702e41&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 \"20702e41\",\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","import mod 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!./TVDisplaySales.vue?vue&type=style&index=1&id=20702e41&scoped=true&lang=css&\"; export default mod; 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!./TVDisplaySales.vue?vue&type=style&index=1&id=20702e41&scoped=true&lang=css&\"","import { EmbeddedContent } from \"./EmbeddedContent/EmbeddedContent\";\r\nimport { Office } from \"./Office\";\r\nimport { ResizableImage } from \"./ResizableImage\";\r\n\r\nenum WebsiteProfileDisplayType {\r\n Agent,\r\n PersonalAssistant,\r\n PropertyManager,\r\n CommercialAgent,\r\n Principal,\r\n Office,\r\n Support\r\n}\r\n\r\ninterface Profile {\r\n Id: string;\r\n\r\n FirstName: string;\r\n LastName: string;\r\n FullName: string;\r\n\r\n Position: string;\r\n \r\n DisplayPriority: number;\r\n DisplayType: WebsiteProfileDisplayType;\r\n\r\n OfficePhone: string;\r\n MobilePhone: string;\r\n Email: string;\r\n Website: string;\r\n\r\n FacebookUrl: string;\r\n FacebookHandle: string;\r\n LinkedInUrl: string;\r\n LinkedInHandle: string;\r\n TwitterUrl: string;\r\n TwitterHandle: string;\r\n RateMyAgentUrl: string;\r\n RateMyAgentHandle: string;\r\n InstagramUrl: string;\r\n InstagramHandle: string;\r\n\r\n AboutAgent: string;\r\n\r\n WebsiteVideoLink: string;\r\n EmbeddedWebsiteVideo: EmbeddedContent;\r\n\r\n Photo: ResizableImage;\r\n CoverPhoto: ResizableImage;\r\n\r\n Office: Office;\r\n\r\n Slug: string;\r\n}\r\n\r\nexport { Profile, WebsiteProfileDisplayType }\r\n","import mod 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!./TVDisplaySales.vue?vue&type=style&index=0&lang=css&\"; export default mod; 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!./TVDisplaySales.vue?vue&type=style&index=0&lang=css&\""],"sourceRoot":""}