{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/privacy.vue?b6e8","webpack:///./src/components/products/finishes/paint.vue?517e","webpack:///./src/assets/media/About/EnvironmentalImpact/12454-KCMA tm.png","webpack:///./src/assets/media/About/EnvironmentalImpact/TSCA Logo.png","webpack:///./src/components/retailers.vue?b0df","webpack:///./src/components/products/finishes/stain.vue?024a","webpack:///./src/assets/media/About/EnvironmentalImpact/12453-New ESP TM.png","webpack:///./src/assets/media/Retailers/Aspect_Distribution_Map.jpg","webpack:///./src/assets/media/logos/Aspect.png","webpack:///./src/components/standalone/lightbox.vue?857e","webpack:///./src/assets/media/About/Construction/Aspect Base Edge Guide2.jpg","webpack:///./src/components/gallery.vue?c9a5","webpack:///./src/assets/media/Downloads/brochurescreenshot.png","webpack:///./src/assets/media/logos/ShilohLogoGrey.png","webpack:///./src/components/home.vue?92bf","webpack:///./src/logging.ts","webpack:///./src/store/homeImage.ts","webpack:///./src/store/index.ts","webpack:///./src/components/products/pageheader.vue?75be","webpack:///./src/components/navbar.vue?8403","webpack:///./src/components/navbar.vue","webpack:///./src/components/navbar.vue?f56e","webpack:///./src/components/navbar.vue?150d","webpack:///src/components/products/pageheader.vue","webpack:///./src/components/products/pageheader.vue?bc65","webpack:///./src/components/products/pageheader.vue","webpack:///./src/components/home.vue","webpack:///./src/components/home.vue?ea45","webpack:///./src/components/home.vue?5c7e","webpack:///./src/components/about.vue?7786","webpack:///./src/components/about.vue","webpack:///./src/components/about.vue?3f2b","webpack:///./src/components/about.vue?53cd","webpack:///./src/components/products.vue?3046","webpack:///./src/components/products.vue","webpack:///./src/components/products.vue?043a","webpack:///./src/components/products.vue?663f","webpack:///./src/components/products/rangehoods.vue?c218","webpack:///./src/components/pagefooter.vue?a85c","webpack:///src/components/pagefooter.vue","webpack:///./src/components/pagefooter.vue?ded0","webpack:///./src/components/pagefooter.vue","webpack:///./src/components/standalone/lightbox.vue?dd6f","webpack:///./src/components/standalone/lightbox.vue","webpack:///./src/components/standalone/lightbox.vue?ace2","webpack:///./src/components/standalone/lightbox.vue?7c2f","webpack:///./src/components/products/rangehoods.vue","webpack:///./src/components/products/rangehoods.vue?4ff5","webpack:///./src/components/products/rangehoods.vue?e528","webpack:///./src/components/products/woodtypes.vue?2ac6","webpack:///./src/components/products/woodtypes.vue","webpack:///./src/components/products/woodtypes.vue?61dd","webpack:///./src/components/products/woodtypes.vue?b77e","webpack:///./src/components/products/doorstyles.vue?c5d4","webpack:///./src/components/products/doorstyles.vue","webpack:///./src/components/products/doorstyles.vue?9cd7","webpack:///./src/components/products/doorstyles.vue?1f2d","webpack:///./src/components/products/finishes.vue?2da6","webpack:///./src/components/products/finishes.vue","webpack:///./src/components/products/finishes/paint.vue","webpack:///./src/components/products/finishes.vue?bab3","webpack:///./src/components/products/finishes.vue?7742","webpack:///./src/components/products/finishes/paint.vue?b2e1","webpack:///./src/components/products/finishes/stain.vue","webpack:///./src/components/products/finishes/paint.vue?ad40","webpack:///./src/components/products/finishes/paint.vue?78d4","webpack:///./src/components/products/finishes/stain.vue?d203","webpack:///./src/components/products/finishes/stain.vue?3517","webpack:///./src/components/products/finishes/stain.vue?6b78","webpack:///./src/components/gallery.vue?08ee","webpack:///./src/components/gallery.vue","webpack:///./src/components/gallery.vue?55fa","webpack:///./src/components/gallery.vue?3ae6","webpack:///./src/components/retailers.vue?d78d","webpack:///./src/environments/environment.ts","webpack:///./src/environments/environment.prod.ts","webpack:///./src/services/retailers.service.ts","webpack:///./src/components/retailers.vue","webpack:///./src/components/retailers.vue?13a3","webpack:///./src/components/retailers.vue?df5e","webpack:///./src/components/resources.vue?8b43","webpack:///./src/components/resources.vue","webpack:///./src/components/resources.vue?ab8c","webpack:///./src/components/resources.vue?8cde","webpack:///./src/components/privacy.vue?7d12","webpack:///./src/components/privacy.vue","webpack:///./src/components/privacy.vue?f6db","webpack:///./src/components/privacy.vue?2f3e","webpack:///./src/components/page404.vue?46c4","webpack:///./src/components/page404.vue","webpack:///./src/components/page404.vue?aadd","webpack:///./src/components/page404.vue?4c70","webpack:///./src/router.ts","webpack:///./src/App.vue?4f8f","webpack:///./src/App.vue","webpack:///./src/App.vue?c438","webpack:///./src/App.vue?bff9","webpack:///./src/models/resource.model.ts","webpack:///./src/services/resources.service.ts","webpack:///./src/services/image.service.ts","webpack:///./src/main.ts","webpack:///./src/assets/media/logos/EclipseLogoGrey.png"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","render","_vm","this","_h","$createElement","_c","_self","attrs","staticClass","_v","_s","message","_e","loading","directives","rawName","selectedRect","Url","selectedReg","selectedWid","selectedSqr","staticRenderFns","options","LoggerFactoryOptions","addLogGroupRule","LogGroupRule","RegExp","LogLevel","Fatal","factory","LFService","createNamedLoggerFactory","logger","getLogger","homeImage","namespaced","state","rectImages","sqrImages","wideImages","regImages","selectedRectImages","selectedSqrImages","selectedWideImages","selectedRegImages","getters","mutations","images","actions","switchImages","context","debug","commit","vue","$imageService","selectDifferentImages","loadImages","getImages","subscribe","rectangle","square","wide","regular","Vue","use","Vuex","Store","plugins","section","_m","class","isHome","isAbout","isProducts","isGallery","isRetailers","isResources","extend","props","String","components","created","trace","methods","computed","component","Navbar","PageHeader","store","dispatch","destroyed","clearInterval","timer","mounted","setInterval","mosaicInterval","process","sqr","navbar","azureStorage","undefined","inject","on","$event","selectionChanged","staticStyle","unshowTab","tabName","$","removeClass","showTab","addClass","woodTypesImg","rangeHoodsImg","doorStyleImg","finishesImg","AzureStorage","config","storageAccountUrl","getUrl","selectedHoodGroup","galleryModeVisible","lightBoxIndex","getHeader","OnGalleryClose","changeLightBoxIndex","$route","_l","image","index","Properties","Etag","galleryModeImageClicked","triggerClose","galleryMode","stopPropagation","imageIndex","getAlt","triggerBack","triggerForward","domProps","getFooter","$emit","visible","type","Boolean","default","Function","Number","Array","event","$props","PageFooter","LightBox","getHoodsInSameGroupArray","uniqueRangehoods","selectedHoodGroupName","footer","getImageIndex","$data","alt","getCenterUniqueHoodsArray","groupedImagesArray","azureStorageBlobArray","forEach","implement","groupName","Name","substring","indexOf","includes","selectedHood","allRangehoods","instance","thisImagesGroup","rangehoodGrouped","doorstyleImages","OnClose","changeIndex","id","imageClicked","Metadata","door","finish","glaze","species","html","doorStyleImages","JSON","stringify","paintImg","stainImg","PaintOption","option","selectedPaint","changeSelected","selectedImage","imagesToShow","changeSelectedImage","Paint","mapleText","RedOak","redOakText","WoodSpecies","paints","redOakPaints","paintOption","console","error","newOption","beforeMount","cleanMetadata","finish_type","cabinet","other","aged","shade","thumbnail","display_name","upload_date","imageAlphabeticalSort","imageA","imageB","localeCompare","map","maple","filter","sort","oakPaints","selectedSpecies","changeSpecies","stainsToDisplay","stain","Maple","mapleImages","americanPoplarImages","redOakImages","filterOutGlaze","AmericanPoplar","newSpecies","amPop","redOak","types","searching","availableOptions","kitchenImages","bathImages","utilityImages","otherImages","working","formType","FormType","None","LocateRetailer","BecomeRetailer","errorMessage","expression","_q","retailersForm","v$","firstName","$error","$touch","target","composing","$set","$uid","$message","lastName","email","contact","phone","businessName","phoneExt","streetAddress","city","getStates","$$selectedVal","selected","val","_value","multiple","zip","countries","selectedOption","code","comment","ProjectType","Remodel","projectType","NewConstruction","Both","distributionArea","submitRequest","DevSecureConfig","development","environment","production","azure","ProductionSecureConfig","emailAddress","RetailersService","constructor","_defineProperty","companyEmail","commonApiEndpoint","emailApiEndpoint","endpoint","endpointEmail","EmailService","forRoot","prodEnv","ValidateEmail","axios","then","response","sendEmails","sendRetailerEmails","toPromise","log","EmailRetailersForm","post","State","defineComponent","setup","useVuelidate","mask","success","comments","describe","validations","required","helpers","withMessage","alpha","numeric","maxLength","minLength","requiredIf","submitEnabled","states","entries","resetForm","$reset","$validate","formData","retailer","country","$retailersService","download","description","url","$resourcesService","getResources","resources","downloads","Router","suffix","routes","path","Home","meta","title","About","Products","Rangehoods","WoodTypes","DoorStyles","Finishes","Stain","Gallery","Retailers","Resources","Privacy","FourZeroFour","redirect","Footer","control","TSL","factoryControl","getLoggerFactoryControl","logLevel","change","logFormat","showLoggerName","showTimestamp","group","directive","update","element","binding","vnode","classList","add","setTimeout","remove","Resource","ResourcesService","containersUrl","containersURL","getBlobs","pipe","blob","azureStorageContainer","Axios","responseType","x2js","X2JS","json","xml2js","EnumerationResults","Blobs","Blob","ImageService","containerName","ref","converted","imagesList","keys","dataIndex","parseAzureMetadata","catchError","of","obj","stringToBoolean","a","true","True","false","False","imagesInFolder","randNeeded","num","theChosenOnes","rand","Math","floor","random","VueMask","require","productionTip","appConfig","router","afterEach","to","nextTick","document","VueMaskPlugin","VueCompositionAPI","VueGtag","provide","h","App","$mount"],"mappings":"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,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,yBACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,gBACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,iCACNsT,KAAM,MAER,CACEtT,KAAM,oBACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,eACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,iBACNsT,KAAM,MAER,CACEtT,KAAM,2BACNsT,KAAM,MAER,CACEtT,KAAM,OACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,mBACNsT,KAAM,MAER,CACEtT,KAAM,0BACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,wCACNsT,KAAM,MAER,CACEtT,KAAM,eACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,gBACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,iBACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,qBACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,cACNsT,KAAM,MAER,CACEtT,KAAM,oBACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,8BACNsT,KAAM,MAER,CACEtT,KAAM,gBACNsT,KAAM,MAER,CACEtT,KAAM,OACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,gBACNsT,KAAM,MAER,CACEtT,KAAM,mBACNsT,KAAM,MAER,CACEtT,KAAM,8BACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,OACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,gBACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,oCACNsT,KAAM,MAER,CACEtT,KAAM,gCACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,OACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,cACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,qBACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,kCACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,yBACNsT,KAAM,MAER,CACEtT,KAAM,gBACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,6CACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,OACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,mBACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,kCACNsT,KAAM,MAER,CACEtT,KAAM,uBACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,cACNsT,KAAM,MAER,CACEtT,KAAM,uBACNsT,KAAM,MAER,CACEtT,KAAM,gBACNsT,KAAM,MAER,CACEtT,KAAM,cACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,OACNsT,KAAM,MAER,CACEtT,KAAM,iBACNsT,KAAM,MAER,CACEtT,KAAM,2BACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,OACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,kCACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,mBACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,OACNsT,KAAM,MAER,CACEtT,KAAM,cACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,qBACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,eACNsT,KAAM,MAER,CACEtT,KAAM,wBACNsT,KAAM,MAER,CACEtT,KAAM,cACNsT,KAAM,MAER,CACEtT,KAAM,4BACNsT,KAAM,MAER,CACEtT,KAAM,mCACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,wBACNsT,KAAM,MAER,CACEtT,KAAM,eACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,wBACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,eACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,kBACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,eACNsT,KAAM,MAER,CACEtT,KAAM,+CACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,yBACNsT,KAAM,MAER,CACEtT,KAAM,YACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,cACNsT,KAAM,MAER,CACEtT,KAAM,4BACNsT,KAAM,MAER,CACEtT,KAAM,aACNsT,KAAM,MAER,CACEtT,KAAM,+BACNsT,KAAM,MAER,CACEtT,KAAM,WACNsT,KAAM,MAER,CACEtT,KAAM,cACNsT,KAAM,MAER,CACEtT,KAAM,OACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,QACNsT,KAAM,MAER,CACEtT,KAAM,sBACNsT,KAAM,MAER,CACEtT,KAAM,UACNsT,KAAM,MAER,CACEtT,KAAM,SACNsT,KAAM,MAER,CACEtT,KAAM,eACNsT,KAAM,MAER,CACEtT,KAAM,2B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","file":"js/app.18ba5d16.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\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!./privacy.vue?vue&type=style&index=0&id=f2cc9f54&prod&scoped=true&lang=css&\"","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!./paint.vue?vue&type=style&index=0&id=25f12706&prod&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/12454-KCMA tm.61a340b6.png\";","module.exports = __webpack_public_path__ + \"img/TSCA Logo.072ff296.png\";","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!./retailers.vue?vue&type=style&index=0&id=5b1565f4&prod&scoped=true&lang=css&\"","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!./stain.vue?vue&type=style&index=0&id=15c01df6&prod&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/12453-New ESP TM.4a7a1de8.png\";","module.exports = __webpack_public_path__ + \"img/Aspect_Distribution_Map.e36eab80.jpg\";","module.exports = __webpack_public_path__ + \"img/Aspect.8409d2dd.png\";","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!./lightbox.vue?vue&type=style&index=0&id=4f900bac&prod&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/Aspect Base Edge Guide2.800abf4d.jpg\";","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!./gallery.vue?vue&type=style&index=0&id=d9086de6&prod&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/brochurescreenshot.c985041d.png\";","module.exports = __webpack_public_path__ + \"img/ShilohLogoGrey.d0253f51.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"home\"}}),_c('meta',{attrs:{\"name\":\"description\",\"content\":\"Aspect Cabinetry is built in southeast Missouri by W. W. Wood Products, Inc., a major supplier and manufacturer of cabinets.\"}}),_c('div',{staticClass:\"container\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\" \"+_vm._s(_vm.message)+\"™ \")]),_c('br')]),(_vm.loading)?_c('div',{staticClass:\"sk-folding-cube\"},[_c('div',{staticClass:\"sk-cube3 sk-cube\"})]):_vm._e(),(!_vm.loading)?_c('div',{staticClass:\"container d-none d-md-block\"},[_c('router-link',{attrs:{\"to\":\"/gallery\"}},[_c('div',{staticClass:\"row mr-1\"},[_c('div',{staticClass:\"col-md-3 p-0\"},[_c('div',{staticClass:\"card mx-2 my-3\"},[_c('img',{directives:[{name:\"animate-on-change\",rawName:\"v-animate-on-change\"}],staticClass:\"card-img\",attrs:{\"src\":_vm.selectedRect[0].Url,\"alt\":\"Aspect Cabinets\"}})]),_c('div',{staticClass:\"card mx-2 my-3\"},[_c('img',{directives:[{name:\"animate-on-change\",rawName:\"v-animate-on-change\"}],staticClass:\"card-img\",attrs:{\"src\":_vm.selectedReg[0].Url,\"alt\":\"Aspect Cabinets\"}})])]),_c('div',{staticClass:\"col-md-9 p-0 pl-3\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-8 p-0\"},[_c('div',{staticClass:\"card mx-2 my-3\"},[_c('img',{directives:[{name:\"animate-on-change\",rawName:\"v-animate-on-change\"}],staticClass:\"card-img\",attrs:{\"src\":_vm.selectedWid[0].Url,\"alt\":\"Aspect Cabinets\"}})])]),_c('div',{staticClass:\"col-md-4 p-0\"},[_c('div',{staticClass:\"card mx-2 my-3\"},[_c('img',{directives:[{name:\"animate-on-change\",rawName:\"v-animate-on-change\"}],staticClass:\"card-img\",attrs:{\"src\":_vm.selectedSqr[0].Url,\"alt\":\"Aspect Cabinets\"}})])]),_c('div',{staticClass:\"col-md-4 p-0\"},[_c('div',{staticClass:\"card mx-2 my-0\"},[_c('img',{directives:[{name:\"animate-on-change\",rawName:\"v-animate-on-change\"}],staticClass:\"card-img\",attrs:{\"src\":_vm.selectedSqr[1].Url,\"alt\":\"Aspect Cabinets\"}})])]),_c('div',{staticClass:\"col-md-8 p-0\"},[_c('div',{staticClass:\"card mx-2 my-0\"},[_c('img',{directives:[{name:\"animate-on-change\",rawName:\"v-animate-on-change\"}],staticClass:\"card-img\",attrs:{\"src\":_vm.selectedWid[1].Url,\"alt\":\"Aspect Cabinets\"}})])])])])])])],1):_vm._e(),_c('div',{staticClass:\"container d-block d-md-none\"},[_c('router-link',{attrs:{\"to\":\"/gallery\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('img',{directives:[{name:\"animate-on-change\",rawName:\"v-animate-on-change\"}],staticClass:\"card-img \",attrs:{\"src\":_vm.selectedSqr[0].Url,\"alt\":\"Aspect Cabinets\"}})])])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport {\r\n  LoggerFactoryOptions,\r\n  LFService,\r\n  LogGroupRule,\r\n  LogLevel,\r\n} from 'typescript-logging';\r\n\r\n// Create options instance and specify 2 LogGroupRules:\r\n// * One for any logger with a name starting with model, to log on debug\r\n// * The second one for anything else to log on info\r\nconst options = new LoggerFactoryOptions().addLogGroupRule(\r\n  new LogGroupRule(\r\n    new RegExp('.+'),\r\n    LogLevel.Fatal\r\n  )\r\n);\r\n\r\n// Create a named loggerfactory and pass in the options and export the factory.\r\n// Named is since version 0.2.+ (it's recommended for future usage)\r\nexport const factory = LFService.createNamedLoggerFactory(\r\n  'LoggerFactory',\r\n  options\r\n);\r\n","import {\r\n  ActionContext,\r\n  Module\r\n} from 'vuex';\r\n\r\nimport { RootState        } from '@/store/RootState';\r\nimport { factory          } from '@/logging';\r\nimport { AzureStorageBlob } from '@wwinc/azure-storage';\r\n\r\nimport vue from 'vue';\r\n\r\n/**\r\n * The Division state\r\n */\r\nexport interface IHomeImageState {\r\n  rectImages:         AzureStorageBlob[ ];\r\n  sqrImages:          AzureStorageBlob[ ];\r\n  wideImages:         AzureStorageBlob[ ];\r\n  regImages:          AzureStorageBlob[ ];\r\n  selectedRectImages: AzureStorageBlob[ ];\r\n  selectedSqrImages:  AzureStorageBlob[ ];\r\n  selectedWideImages: AzureStorageBlob[ ];\r\n  selectedRegImages:  AzureStorageBlob[ ];\r\n  loading:            boolean;\r\n}\r\n\r\nconst logger = factory.getLogger('vuex.modules.homeImage');\r\n\r\ninterface WideImagesParams {\r\n  state: IHomeImageState;\r\n}\r\n\r\n/**\r\n * Represents the state of the homeImage part of the store.\r\n */\r\nexport const homeImage: Module<IHomeImageState, RootState> = {\r\n  namespaced: true,\r\n  state: {\r\n    rectImages:         [ ] as AzureStorageBlob[ ],\r\n    sqrImages:          [ ] as AzureStorageBlob[ ],\r\n    wideImages:         [ ] as AzureStorageBlob[ ],\r\n    regImages:          [ ] as AzureStorageBlob[ ],\r\n    selectedRectImages: [ ] as AzureStorageBlob[ ],\r\n    selectedSqrImages:  [ ] as AzureStorageBlob[ ],\r\n    selectedWideImages: [ ] as AzureStorageBlob[ ],\r\n    selectedRegImages:  [ ] as AzureStorageBlob[ ],\r\n    loading:            true\r\n  },\r\n  getters: {\r\n    loading:            (state: IHomeImageState) => state.loading,\r\n    rectImages:         (state: IHomeImageState) => state.rectImages,\r\n    sqrImages:          (state: IHomeImageState) => state.sqrImages,\r\n    wideImages:         (state: IHomeImageState) => state.wideImages,\r\n    regImages:          (state: IHomeImageState) => state.regImages,\r\n    selectedRectImages: (state: IHomeImageState) => state.selectedRectImages,\r\n    selectedSqrImages:  (state: IHomeImageState) => state.selectedSqrImages,\r\n    selectedWideImages: (state: IHomeImageState) => state.selectedWideImages,\r\n    selectedRegImages:  (state: IHomeImageState) => state.selectedRegImages,\r\n  },\r\n  mutations: {\r\n    rectImages: (\r\n      state:      IHomeImageState,\r\n      rectImages: AzureStorageBlob[]\r\n    ) => {\r\n      state.rectImages = rectImages;\r\n    },\r\n    sqrImages: (\r\n      state:     IHomeImageState,\r\n      sqrImages: AzureStorageBlob[]\r\n     ) => {\r\n      state.sqrImages = sqrImages;\r\n    },\r\n    wideImages: (\r\n      state:      IHomeImageState,\r\n      wideImages: AzureStorageBlob[]\r\n    ) => {\r\n      state.wideImages = wideImages;\r\n    },\r\n    regImages: (\r\n      state:     IHomeImageState,\r\n      regImages: AzureStorageBlob[]\r\n    ) => {\r\n      state.regImages = regImages;\r\n    },\r\n    selectedRectImages: (\r\n      state:  IHomeImageState,\r\n      images: AzureStorageBlob[]\r\n    ) =>{\r\n      state.selectedRectImages = images;\r\n    },\r\n    selectedSqrImages: (\r\n      state:  IHomeImageState,\r\n      images: AzureStorageBlob[]\r\n    ) =>{\r\n      state.selectedSqrImages = images;\r\n    },\r\n    selectedWideImages: (\r\n      state:  IHomeImageState,\r\n      images: AzureStorageBlob[]\r\n    ) =>{\r\n      state.selectedWideImages = images;\r\n    },\r\n    selectedRegImages: (\r\n      state:  IHomeImageState,\r\n      images: AzureStorageBlob[]\r\n    ) =>{\r\n      state.selectedRegImages = images;\r\n    },\r\n    loading: (\r\n      state:   IHomeImageState,\r\n      loading: boolean\r\n    ) => {\r\n      state.loading = loading;\r\n    }\r\n  },\r\n  actions: {\r\n    /**\r\n     * Changes the random images.\r\n     * @param context The VueX context\r\n     */\r\n    switchImages(context: ActionContext<IHomeImageState, RootState>) {\r\n        logger.debug(`Is Loading = ${context.getters.loading}`);\r\n        if(!context.getters.loading){\r\n          context.commit(\r\n            'selectedRectImages',\r\n            (vue as any)\r\n              .$imageService\r\n              .selectDifferentImages(\r\n                context.state.rectImages,\r\n                1\r\n              )\r\n          );\r\n          context.commit(\r\n            'selectedSqrImages',\r\n            (vue as any)\r\n              .$imageService\r\n              .selectDifferentImages(\r\n                context.state.sqrImages,\r\n                2\r\n              )\r\n          );\r\n          context.commit(\r\n            'selectedWideImages',\r\n            (vue as any)\r\n              .$imageService\r\n              .selectDifferentImages(\r\n                context.state.wideImages,\r\n                2\r\n              )\r\n          );\r\n          context.commit(\r\n            'selectedRegImages',\r\n            (vue as any)\r\n              .$imageService\r\n              .selectDifferentImages(\r\n                context.state.regImages,\r\n                1\r\n              )\r\n          );\r\n        }\r\n\r\n    },\r\n    /**\r\n     * Loads front page images.\r\n     * @param context The VueX context\r\n     */\r\n     loadImages(context: ActionContext<IHomeImageState, RootState>) {\r\n        logger.debug('Inside of all method');\r\n        logger.debug('Loading front page images');\r\n\r\n        // returns array of retangle\r\n       (vue as any).$imageService.getImages('aspect-images-home-468x634').subscribe((rectangle: any)=>{\r\n          logger.debug(`Loaded: ${rectangle.length} X 468x634 home images`);\r\n          context.commit('rectImages', rectangle);\r\n\r\n          // returns array of square blobs\r\n         (vue as any).$imageService.getImages('aspect-images-home-466x466').subscribe((square: any) => {\r\n            logger.debug(`Loaded ${square.length} X 466x466 home images`);\r\n            context.commit('sqrImages', square);\r\n\r\n            // returns array of wide\r\n           (vue as any).$imageService.getImages(`aspect-images-home-960x466`).subscribe((wide: any) => {\r\n              logger.debug(`Loaded ${wide.length} X 960x466 home images`);\r\n              context.commit('wideImages', wide);\r\n\r\n              // returns array of regular\r\n              (vue as any).$imageService.getImages('aspect-images-home-468x318').subscribe((regular: any) => {\r\n                logger.debug(`Loaded ${regular.length} X 468x318 home images`);\r\n                context.commit('regImages', regular);\r\n\r\n                context.commit('selectedRectImages', rectangle);\r\n                context.commit('selectedSqrImages',  square);\r\n                context.commit('selectedWideImages', wide);\r\n                context.commit('selectedRegImages',  regular);\r\n                context.commit('loading',            false);\r\n              });\r\n            });\r\n          });\r\n        });\r\n    }\r\n  },\r\n};\r\n","import Vue from 'vue';\r\n\r\nimport Vuex, {StoreOptions} from 'vuex';\r\n\r\nimport {RootState} from './RootState';\r\n\r\nimport {factory} from '@/logging';\r\nimport {homeImage} from './homeImage';\r\n\r\nconst logger = factory.getLogger('vuex.store');\r\n\r\nVue.use(Vuex);\r\n\r\nexport default new Vuex.Store<RootState>({\r\n  state:     { },\r\n  mutations: { },\r\n  getters:   { },\r\n  actions:   { },\r\n  plugins:   [ ],\r\n  modules: {\r\n    homeImage,\r\n  },\r\n});\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('header',{staticClass:\"fixed-top navbar-light bg-light\"},[_c('div',{staticClass:\"d-none d-md-block\",attrs:{\"id\":\"top-logo\"}},[_c('router-link',{attrs:{\"to\":\"/\"}},[_c('img',{attrs:{\"alt\":\"Aspect Cabinetry\",\"src\":require(\"@/assets/media/logos/Aspect.png\")}})])],1),_c('Navbar',{attrs:{\"section\":_vm.section}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',{staticClass:\"navbar navbar-expand-md navbar-light bg-light\"},[_c('div',{staticClass:\"container\"},[_vm._m(0),_c('router-link',{staticClass:\"navbar-brand d-xs-block d-sm-block d-md-none\",attrs:{\"to\":\"/\"}},[_c('img',{attrs:{\"alt\":\"Aspect Cabinetry logo\",\"src\":require(\"../assets/media/logos/Aspect.png\")}})]),_c('div',{staticClass:\"collapse navbar-collapse\",attrs:{\"id\":\"navbarCollapse\"}},[_c('ul',{staticClass:\"navbar-nav\"},[_c('router-link',{staticClass:\"nav-item\",class:_vm.isHome? 'active' : '',attrs:{\"tag\":\"li\",\"to\":\"/\"}},[_c('div',{staticClass:\"nav-link\"},[_vm._v(\"Home\")])]),_c('router-link',{staticClass:\"nav-item\",class:_vm.isAbout? 'active' : '',attrs:{\"tag\":\"li\",\"to\":\"/about\"}},[_c('div',{staticClass:\"nav-link\"},[_vm._v(\"About\")])]),_c('router-link',{staticClass:\"nav-item\",class:_vm.isProducts? 'active' : '',attrs:{\"tag\":\"li\",\"to\":\"/products\"}},[_c('div',{staticClass:\"nav-link\"},[_vm._v(\"Products\")])]),_c('router-link',{staticClass:\"nav-item\",class:_vm.isGallery? 'active' : '',attrs:{\"tag\":\"li\",\"to\":\"/gallery\"}},[_c('div',{staticClass:\"nav-link\"},[_vm._v(\"Gallery\")])]),_c('router-link',{staticClass:\"nav-item\",class:_vm.isRetailers? 'active' : '',attrs:{\"tag\":\"li\",\"to\":\"/retailers\"}},[_c('div',{staticClass:\"nav-link\"},[_vm._v(\"Retailers\")])]),_c('router-link',{staticClass:\"nav-item\",class:_vm.isResources? 'active' : '',attrs:{\"tag\":\"li\",\"to\":\"/resources\"}},[_c('div',{staticClass:\"nav-link\"},[_vm._v(\"Resources\")])])],1)])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"navbar-toggler\",attrs:{\"aria-controls\":\"navbarCollapse\",\"aria-expanded\":\"false\",\"aria-label\":\"Toggle navigation\",\"data-bs-target\":\"#navbarCollapse\",\"data-bs-toggle\":\"collapse\",\"type\":\"button\"}},[_c('span',{staticClass:\"navbar-toggler-icon\"})])}]\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\r\nimport Vue from 'vue';\r\n\r\nimport { factory } from '@/logging';\r\n\r\n\r\nconst logger = factory.getLogger('component.navbar');\r\n\r\nexport default Vue.extend({\r\n  name:       'navbar',\r\n  props:      {\r\n    section: String\r\n  },\r\n  components: {},\r\n  created(): void {\r\n    logger.trace('Navbar component has been created.');\r\n  },\r\n  methods:  {},\r\n  computed: {\r\n    isHome() {\r\n      return this.section === 'home';\r\n    },\r\n    isAbout() {\r\n      return this.section === 'about';\r\n    },\r\n    isProducts() {\r\n      return this.section === 'products';\r\n    },\r\n    isGallery() {\r\n      return this.section === 'gallery';\r\n    },\r\n    isRetailers() {\r\n      return this.section === 'retailers';\r\n    },\r\n    isResources() {\r\n      return this.section === 'resources';\r\n    }\r\n  },\r\n  data() {\r\n    return {};\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/@vue/cli-plugin-typescript/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!./navbar.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/@vue/cli-plugin-typescript/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!./navbar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./navbar.vue?vue&type=template&id=d3602dc0&scoped=true&\"\nimport script from \"./navbar.vue?vue&type=script&lang=ts&\"\nexport * from \"./navbar.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  \"d3602dc0\",\n  null\n  \n)\n\nexport default component.exports","<template>\r\n  <header class=\"fixed-top navbar-light bg-light\">\r\n    <div\r\n      id=\"top-logo\"\r\n      class=\"d-none d-md-block\"\r\n    >\r\n      <router-link to=\"/\">\r\n        <img\r\n          alt=\"Aspect Cabinetry\"\r\n          src=\"@/assets/media/logos/Aspect.png\"\r\n        >\r\n      </router-link>\r\n    </div>\r\n    <Navbar :section=\"section\" />\r\n  </header>\r\n</template>\r\n\r\n<script>\r\n\r\nimport Navbar from '@/components/navbar';\r\n\r\n\r\nexport default {\r\n  name:       'pageheader',\r\n  props:      {\r\n    section: String\r\n  },\r\n  components: {\r\n    Navbar\r\n  }\r\n};\r\n</script>\r\n\r\n<style scoped>\r\n\r\n</style>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pageheader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pageheader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./pageheader.vue?vue&type=template&id=5d5c9d6b&scoped=true&\"\nimport script from \"./pageheader.vue?vue&type=script&lang=js&\"\nexport * from \"./pageheader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"5d5c9d6b\",\n  null\n  \n)\n\nexport default component.exports","\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\nimport Vue       from 'vue';\n\nimport { AzureStorage } from '@wwinc/azure-storage';\nimport { factory      } from '@/logging';\n\nimport store from '@/store';\n\nimport PageHeader from '@/components/products/pageheader.vue';\n\nconst logger = factory.getLogger('component.main');\n\nexport default Vue.extend({\n  name: 'home',\n  props: { },\n  components: {\n    PageHeader\n  },\n  created(): void {\n    logger.debug('Main component has been created.');\n    store.dispatch('homeImage/loadImages');\n  },\n  destroyed() {\n    clearInterval(this.timer);\n  },\n  methods: { },\n   mounted() {\n    this.timer = setInterval(()=>{\n      store.dispatch('homeImage/switchImages');\n    }, this.mosaicInterval);\n   },\n  computed: {\n    mode() {\n      return process.env.VUE_APP_MODE;\n    },\n    selectedRect() {\n      return store.getters['homeImage/selectedRectImages'];\n    },\n    selectedSqr() {\n      return store.getters['homeImage/selectedSqrImages'];\n    },\n    selectedWid() {\n      return store.getters['homeImage/selectedWideImages'];\n    },\n    selectedReg() {\n      return store.getters['homeImage/selectedRegImages'];\n    },\n    sqr() {\n      return store.getters['homeImage/sqrImages'];\n    },\n    loading() {\n      return store.getters['homeImage/loading'];\n    }\n  },\n  data() {\n    return {\n      navbar:         'home',\n      message:        'Built with a Better Perspective',\n      azureStorage:   undefined  as AzureStorage | undefined,\n      mosaicInterval: 5500, //in milliseconds\n      timer:          undefined as any //set timer to activate interval for images\n    };\n  },\n  inject: [\n      '$imageService'\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/@vue/cli-plugin-typescript/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!./home.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/@vue/cli-plugin-typescript/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!./home.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./home.vue?vue&type=template&id=2210af03&\"\nimport script from \"./home.vue?vue&type=script&lang=ts&\"\nexport * from \"./home.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  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"about\"}}),_c('div',{staticClass:\"container\"},[_vm._m(0),_c('ul',{staticClass:\"nav nav-pills nav-justified mb-3 flex-column flex-md-row\",attrs:{\"id\":\"pills-tab\",\"role\":\"tablist\"}},[_c('li',{staticClass:\"nav-item\"},[_c('a',{staticClass:\"nav-link active\",attrs:{\"id\":\"pills-intro-tab\",\"target\":\"_self\",\"data-toggle\":\"pill\",\"role\":\"tab\",\"aria-controls\":\"intro\",\"aria-expanded\":\"true\"},on:{\"click\":function($event){return _vm.selectionChanged('intro')}}},[_vm._v(\" Introduction \")])]),_c('li',{staticClass:\"nav-item\"},[_c('a',{staticClass:\"nav-link\",attrs:{\"id\":\"pills-construction-tab\",\"data-toggle\":\"pill\",\"role\":\"tab\",\"aria-controls\":\"construction\",\"aria-expanded\":\"true\"},on:{\"click\":function($event){return _vm.selectionChanged('construction')}}},[_vm._v(\" Construction \")])]),_c('li',{staticClass:\"nav-item\"},[_c('a',{staticClass:\"nav-link\",attrs:{\"id\":\"pills-env-impact-tab\",\"data-toggle\":\"pill\",\"role\":\"tab\",\"aria-controls\":\"env-impact\",\"aria-expanded\":\"true\"},on:{\"click\":function($event){return _vm.selectionChanged('env-impact')}}},[_vm._v(\" Environmental Impact \")])]),_c('li',{staticClass:\"nav-item\"},[_c('a',{staticClass:\"nav-link\",attrs:{\"id\":\"pills-care-tab\",\"data-toggle\":\"pill\",\"role\":\"tab\",\"aria-controls\":\"care\",\"aria-expanded\":\"true\"},on:{\"click\":function($event){return _vm.selectionChanged('care')}}},[_vm._v(\" Care & Maintenance \")])])]),_c('div',{staticClass:\"tab-content mt-5\",attrs:{\"id\":\"pills-tabContent\"}},[_c('div',{staticClass:\"tab-pane fade active show\",attrs:{\"id\":\"intro\",\"role\":\"tabpanel\",\"aria-labelledby\":\"pills-intro-tab\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6\"},[_c('p',[_vm._v(\" Aspect Cabinetry is built by W. W. Wood Products Inc, a family-owned company since its beginning in 1977. The company is located in Dudley, Missouri, a rural town of under 300 people. Dudley is 2 ½ hours south of St. Louis, Missouri, in the bootheel of the state. We began as a molding and milled lumber supplier working out of a small shed. Over the years, we evolved and grew to become a major supplier of cabinetry with approximately one million square feet of manufacturing space with the best equipment available. We have enjoyed steady, robust growth because of our commitment to provide quality products made from quality materials and by hard-working employees. \")]),_c('p',[_vm._v(\" Our company is extremely self-sufficient, relying very little on outside sources to provide components to build our cabinetry. We have invested heavily in state-of-the-art equipment to be extremely competitive and control the quality of the cabinetry we produce. \")]),_c('p',[_vm._v(\" Aspect Cabinetry is available in most areas, except the northwestern United States. \"),_c('router-link',{attrs:{\"to\":\"/retailers\"}},[_vm._v(\" Click Here \")]),_vm._v(\" for our distribution map. \")],1)]),_vm._m(1)])]),_vm._m(2),_vm._m(3),_vm._m(4)])])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\" About Aspect Cabinetry \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-6 text-center\"},[_c('iframe',{staticClass:\"ratio ratio-16x9 h-100\",attrs:{\"src\":\"https://www.youtube.com/embed/F62h2kElxeU\",\"allow\":\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\",\"allowfullscreen\":\"\"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tab-pane fade\",attrs:{\"id\":\"construction\",\"role\":\"tabpanel\",\"aria-labelledby\":\"pills-construction-tab\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6\"},[_c('ol',{staticClass:\"list\"},[_c('li',[_vm._v(\"5/8\\\" hardwood dovetail drawer box standard\")]),_c('li',[_vm._v(\" Blum TANDEM edge BLUMOTION 7/8\\\" extension with integrated BLUMOTION soft closing mechanism standard \")]),_c('li',[_vm._v(\"1 1/2\\\" wide solid wood face frames\")]),_c('li',[_vm._v(\"Solid wood hanging rails for sturdy installation\")]),_c('li',[_vm._v(\" 1/2\\\" cabinet sides (1/4\\\" matching ends applied to 1/2\\\" cabinet sides when finished) \")]),_c('li',[_vm._v(\"3/4\\\" thick shelves\")]),_c('li',[_vm._v(\" Blum COMPACT BLUMOTION 6-way adjustable hinges with integrated soft closing mechanism \")]),_c('li',[_vm._v(\" Interior is laminated in attractive natural maple pattern for easy cleanup \")]),_c('li',[_vm._v(\" Catalyzed conversion varnish finish for outstanding durability \")])])]),_c('div',{staticClass:\"col-md-6 m-auto text-center\"},[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":require(\"../assets/media/About/Construction/Aspect Base Edge Guide2.jpg\"),\"alt\":\"Aspect Base Edge Guide\"}})])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tab-pane fade\",attrs:{\"id\":\"env-impact\",\"role\":\"tabpanel\",\"aria-labelledby\":\"pills-env-impact-tab\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-3 m-auto\"},[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":require(\"../assets/media/About/EnvironmentalImpact/12454-KCMA tm.png\"),\"alt\":\"Kitchen Cabinet Manufacturers Association\"}})]),_c('div',{staticClass:\"col-md-9\"},[_c('h2',[_vm._v(\"KCMA Participant\")]),_c('p',[_vm._v(\" Aspect Cabinetry actively participates in reducing our impact on the environment when making our products. As an active member of KCMA (Kitchen Cabinet Manufacturers Association), we stay in tune with industry best practices of environmental responsibility. Aspect Cabinetry's dedication to the environment is further advanced by our ESP certification from KCMA. \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-3 m-auto text-center\"},[_c('img',{staticStyle:{\"max-width\":\"45%\"},attrs:{\"src\":require(\"../assets/media/About/EnvironmentalImpact/12453-New ESP TM.png\"),\"alt\":\"Environmental Stewards Program\"}})]),_c('div',{staticClass:\"col-md-9\"},[_c('h2',[_vm._v(\"ESP Certified\")]),_c('p',[_vm._v(\" The ESP (Environmental Stewardship Program) was created in 2006 to help cabinet manufacturers demonstrate their commitment to environmental sustainability and help consumers easily identify environmentally-friendly products. After meeting certification requirements in areas of air quality, product and process resource management, environmental stewardship, and community relations, cabinet manufacturers can display the ESP seal on their products. The ESP seal helps you identify cabinets and cabinet manufacturers who are committed to protecting the environment. Nearly one hundred fifty cabinet manufacturers have already earned ESP certification and more are on their way to completing the review process. \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-3 m-auto text-center\"},[_c('img',{staticStyle:{\"max-width\":\"35%\"},attrs:{\"src\":require(\"../assets/media/About/EnvironmentalImpact/TSCA Logo.png\"),\"alt\":\"TSCA Logo\"}})]),_c('div',{staticClass:\"col\"},[_c('h2',[_vm._v(\"TSCA Title VI Compliant\")]),_c('p',[_vm._v(\" Aspect Cabinetry is TSCA Title VI compliant. This compliance ensures that our cabinetry meets the standards set by the Toxic Substances Control Act for formaldehyde in composite wood products, such as plywood, MDF and particle boards. The standard requires an entity outside the manufacturer to audit and certify the formaldehyde emissions of the products mentioned are within the allowed levels. \")])])]),_c('br'),_c('br')])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tab-pane fade\",attrs:{\"id\":\"care\",\"role\":\"tabpanel\",\"aria-labelledby\":\"pills-care-tab\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('h4',[_vm._v(\"Basic Cleaning\")]),_c('p',[_vm._v(\" Wipe with a dampened, lint-free cotton cloth and promptly wipe dry. For removal of oil, grease, or daily spills, you may use a solution of mild soap and water, then promptly dry with a soft, lint-free cotton cloth. Avoid using a dishcloth or sponge to clean cabinet surfaces as it may contain remnant of harsh detergents that can harm the finish. Do not use ammonia-based cleaners, soaps with dye, abrasive cleaners, or self-polishing waxes (especially those that contain silicone). We recommend the use of a quality cream furniture polish, such as Guardsman® furniture polish. \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('h4',[_vm._v(\"Wipe Spills Promptly\")]),_c('p',[_vm._v(\" It is very important to keep the cabinet surfaces dry. Wipe up spills immediately using a dry cloth with a “blotting” motion, rather than wiping the spill from the cabinet surface. Pay special attention to areas where water is common, such as the sink and dishwasher, and do not allow water and detergents to dry on the cabinet surface. \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('h4',[_vm._v(\"Avoid Excessive Moisture\")]),_c('p',[_vm._v(\" This is one of the worst enemies of any finish. Avoid draping wet towels over cabinet doors. Do not attach towel racks to door interiors and do not place coffee or tea makers where the steam will directly impact cabinet surfaces. Immediately dry off any areas where water has spilled. \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('h4',[_vm._v(\"Avoid Excessive Heat\")]),_c('p',[_vm._v(\" Avoid placing cabinet appliances where the heat is directed onto cabinet surfaces. The stability of the wood and finish can be negatively impacted. \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('h4',[_vm._v(\"Avoid Abrasives\")]),_c('p',[_vm._v(\" Never use scouring pads, steel wool, or powdered cleaners as these methods of cleaning may penetrate the surface, allowing food or moisture to enter and cause deterioration of the finish. \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('h4',[_vm._v(\"Final Thoughts\")]),_c('p',[_vm._v(\" Wood products and their finish are only as good as the care they receive. Proper care such as we recommend will extend the life and beauty of your cabinetry. Remember, leaving water or other moisture on the cabinet surface for extended periods of time will harm the finish and will not be covered under any warranties. \"),_c('a',{attrs:{\"href\":\"/resources\"}},[_vm._v(\" See our warranty. \")])])])])])}]\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\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\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 Vue from 'vue';\nimport $   from 'jquery';\n\nimport { factory } from '@/logging';\nimport PageHeader from '@/components/products/pageheader.vue';\n\nconst logger = factory.getLogger('component.about');\n\nexport default Vue.extend({\n  name: 'about',\n  props: { },\n  components: {\n    PageHeader\n  },\n  created(): void { },\n  methods: {\n    /**\n     * This function will mark a tab as being inactive.\n     * @param tabName The name of the tab to mark.\n     */\n    unshowTab: (tabName: string) => {\n      $(`#pills-${tabName}-tab`).removeClass('active');\n      const tab = $(`#${tabName}`).removeClass(['active show']);\n    },\n    /**\n     * Hide all tabs before showing the active tab.\n     * @param section The tab to smake active.\n     */\n    selectionChanged: function (section: string) {\n      this.unshowTab('intro');\n      this.unshowTab('construction');\n      this.unshowTab('env-impact');\n      this.unshowTab('care');\n\n      this.showTab(section);\n    },\n\n    /**\n     * Make the specified tab the 'active' tab.\n     * @param tabName The tab to make active.\n     */\n    showTab: (tabName: string) => {\n      $(`#pills-${tabName}-tab`).addClass('active');\n      $(`#${tabName}`).addClass(['active', 'show']);\n    }\n  },\n  computed: { },\n  data() {\n    return {\n      navbar: 'about'\n    };\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/@vue/cli-plugin-typescript/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!./about.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/@vue/cli-plugin-typescript/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!./about.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./about.vue?vue&type=template&id=b55eef5a&\"\nimport script from \"./about.vue?vue&type=script&lang=ts&\"\nexport * from \"./about.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  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"products\"}}),_vm._m(0),_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"card-deck mr-sm-0 d-block\"},[_c('div',{staticClass:\"row m-0 justify-content-center flex-wrap d-flex\"},[_c('div',{staticClass:\"col-12 col-sm-4 col-lg-3 mb-2 px-0 px-md-2 pb-2 card-container products-card-container\"},[_c('router-link',{staticClass:\"text-decoration-none\",attrs:{\"to\":\"/products/woodtypes\"}},[_c('div',{staticClass:\"card d-flex flex-row flex-sm-column  m-0\"},[_c('h5',{staticClass:\"card-title order-2 order-sm-1 mt-2 ml-2 my-sm-2 mx-sm-auto\"},[_vm._v(\" Wood Types \")]),_c('div',{staticClass:\"icon-container order-1 order-sm-2\"},[_c('img',{staticClass:\"card-img-bottom w-100\",attrs:{\"alt\":\"Wood Types\",\"src\":_vm.woodTypesImg}})])])])],1),_c('div',{staticClass:\"col-12 col-sm-4 col-lg-3 mb-2 px-0 px-md-2 pb-2 card-container products-card-container\"},[_c('router-link',{staticClass:\"text-decoration-none\",attrs:{\"to\":\"/products/rangehoods\"}},[_c('div',{staticClass:\"card d-flex flex-row flex-sm-column  m-0\"},[_c('h5',{staticClass:\"card-title order-2 order-sm-1 mt-2 ml-2 my-sm-2 mx-sm-auto\"},[_vm._v(\" Range Hoods \")]),_c('div',{staticClass:\"icon-container order-1 order-sm-2\"},[_c('img',{staticClass:\"card-img-bottom w-100\",attrs:{\"alt\":\"Range Hoods\",\"src\":_vm.rangeHoodsImg}})])])])],1),_c('div',{staticClass:\"col-12 col-sm-4 col-lg-3 mb-2 px-0 px-md-2 pb-2 card-container products-card-container\"},[_c('router-link',{staticClass:\"text-decoration-none\",attrs:{\"to\":\"/products/doorstyles\"}},[_c('div',{staticClass:\"card flex-row flex-sm-column  m-0\"},[_c('h5',{staticClass:\"card-title order-2 order-sm-1 mt-2 ml-2 my-sm-2 mx-sm-auto\"},[_vm._v(\" Door Styles \")]),_c('div',{staticClass:\"icon-container order-1 order-sm-2\"},[_c('img',{staticClass:\"card-img-bottom w-100\",attrs:{\"alt\":\"Door Styles\",\"src\":_vm.doorStyleImg}})])])])],1),_c('div',{staticClass:\"col-12 col-sm-4 col-lg-3 mb-2 px-0 px-md-2 pb-2 card-container products-card-container\"},[_c('router-link',{staticClass:\"text-decoration-none\",attrs:{\"to\":\"/products/finishes\"}},[_c('div',{staticClass:\"card flex-row flex-sm-column m-0\"},[_c('h5',{staticClass:\"card-title order-2 order-sm-1 mt-2 ml-2 my-sm-2 mx-sm-auto\"},[_vm._v(\" Finishes \")]),_c('div',{staticClass:\"icon-container order-1 order-sm-2\"},[_c('img',{staticClass:\"card-img-bottom  w-100\",attrs:{\"alt\":\"Finishes\",\"src\":_vm.finishesImg}})])])])],1)])])])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\"Products\")])])}]\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\r\nimport Vue        from 'vue';\r\nimport PageHeader from '@/components/products/pageheader.vue';\r\n\r\nimport { factory      } from '@/logging';\r\nimport { AzureStorage } from '@wwinc/azure-storage/azure-storage';\r\n\r\n\r\nconst logger = factory.getLogger('component.product');\r\n\r\nexport default Vue.extend({\r\n  name:       'products',\r\n  components: {\r\n    PageHeader\r\n  },\r\n  data() {\r\n    return {\r\n      navbar: 'products'\r\n    };\r\n  },\r\n  computed: {\r\n    woodTypesImg() {\r\n      return AzureStorage.config.storageAccountUrl + \"aspect-images-products/WoodSpeciesButton.png\";\r\n    },\r\n    rangeHoodsImg() {\r\n      return AzureStorage.config.storageAccountUrl + \"aspect-images-products/RangeHoodButton.jpg\";\r\n    },\r\n    doorStyleImg() {\r\n      return AzureStorage.config.storageAccountUrl + \"aspect-images-products/DoorStyleButton.png\";\r\n    },\r\n    finishesImg() {\r\n      return AzureStorage.config.storageAccountUrl + \"aspect-images-products/FinishButton.png\";\r\n    },\r\n\r\n  },\r\n  created(): void {\r\n  },\r\n  methods: {}\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/@vue/cli-plugin-typescript/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!./products.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/@vue/cli-plugin-typescript/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!./products.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./products.vue?vue&type=template&id=22298336&\"\nimport script from \"./products.vue?vue&type=script&lang=ts&\"\nexport * from \"./products.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  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"products\"}}),_vm._m(0),_c('LightBox',{attrs:{\"gallery-mode\":true,\"get-url\":_vm.getUrl,\"images\":_vm.selectedHoodGroup,\"visible\":_vm.galleryModeVisible,\"image-index\":_vm.lightBoxIndex,\"get-header\":_vm.getHeader},on:{\"on-close\":_vm.OnGalleryClose,\"index-change\":_vm.changeLightBoxIndex}}),(_vm.uniqueRangehoods)?_c('div',{staticClass:\"container d-block\"},[_c('div',{staticClass:\"row\"},[_vm._v(\" \"+_vm._s(this.$route.name)+\" \"),_vm._l((_vm.uniqueRangehoods),function(image,index){return _c('div',{key:image.Properties.Etag,staticClass:\"col-6 col-md-4 my-3\"},[_c('div',{staticClass:\"card range-hood-card cursor-pointer\",on:{\"click\":function($event){return _vm.galleryModeImageClicked(index)}}},[_c('img',{staticClass:\"card-img gallery-grid-img\",attrs:{\"src\":image.Url,\"data-toggle\":\"modal\",\"data-target\":\"#hoodModal\",\"data-type\":\"image\"}})])])}),_c('PageFooter')],2)]):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\"Products\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('footer',{staticClass:\"footer\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row d-flex justify-content-end\"},[_c('div',{staticClass:\"col-12 col-md-9 text-md-left\"},[_c('p',{attrs:{\"id\":\"disclaimer\"}},[_vm._v(\" *Internet technology does not allow for completely accurate reproduction of wood, stain or paint colors. Visit an independent retailer to view displays and samples for actual colors. W. W. Wood Products, Inc. does not guarantee that all information on this site is accurate. Although every attempt is made to ensure the information on this site is kept current and accurate, specifications can change without notice. \"),_c('router-link',{attrs:{\"to\":\"/privacy\"}},[_vm._v(\"Privacy Policy\")])],1)]),_vm._m(0),_vm._m(1),_vm._m(2)])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-3 col-md-1 text-center youtube\"},[_c('a',{attrs:{\"href\":\"https://www.youtube.com/channel/UCleWLfPJrVxMYYR_eD357vQ\",\"target\":\"_blank\"}},[_c('span',{staticClass:\"material-icons\"},[_vm._v(\" ondemand_video \")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-3 col-md-1 text-center\"},[_c('a',{attrs:{\"href\":\"http://www.shilohcabinetry.com\",\"target\":\"_blank\"}},[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":require(\"../assets/media/logos/ShilohLogoGrey.png\"),\"alt\":\"Shiloh Cabinetry logo\"}})])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-3 col-md-1 text-center\"},[_c('a',{attrs:{\"href\":\"http://eclipsecabinetry.com/\",\"target\":\"_blank\"}},[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":require(\"../assets/media/logos/EclipseLogoGrey.png\"),\"alt\":\"Shiloh Cabinetry logo\"}})])])}]\n\nexport { render, staticRenderFns }","<template>\r\n  <footer class=\"footer\">\r\n    <div class=\"container\">\r\n      <div class=\"row d-flex justify-content-end\">\r\n        <div class=\"col-12 col-md-9 text-md-left\">\r\n          <p id=\"disclaimer\">\r\n            *Internet technology does not allow for completely accurate\r\n            reproduction of wood, stain or paint colors. Visit an independent\r\n            retailer to view displays and samples for actual colors.\r\n            W. W. Wood Products, Inc. does not guarantee that all information\r\n            on this site is accurate. Although every attempt is made to\r\n            ensure the information on this site is kept current and accurate,\r\n            specifications can change without notice. \r\n            <router-link to=\"/privacy\">Privacy Policy</router-link>\r\n          </p>\r\n        </div>\r\n        <div class=\"col-3 col-md-1 text-center youtube\">\r\n          <a\r\n              href   = \"https://www.youtube.com/channel/UCleWLfPJrVxMYYR_eD357vQ\"\r\n              target = \"_blank\"\r\n          >\r\n              <span class=\"material-icons\">\r\n                  ondemand_video\r\n              </span>\r\n          </a>\r\n        </div>\r\n        <div class=\"col-3 col-md-1 text-center\">\r\n          <a\r\n              href   = \"http://www.shilohcabinetry.com\"\r\n              target = \"_blank\"\r\n          >\r\n            <img\r\n                src   = \"../assets/media/logos/ShilohLogoGrey.png\"\r\n                class = \"img-fluid\" alt=\"Shiloh Cabinetry logo\"\r\n            >\r\n          </a>\r\n        </div>\r\n        <div class=\"col-3 col-md-1 text-center\">\r\n          <a\r\n              href   = \"http://eclipsecabinetry.com/\"\r\n              target = \"_blank\"\r\n          >\r\n            <img\r\n                src   = \"../assets/media/logos/EclipseLogoGrey.png\"\r\n                class = \"img-fluid\"\r\n                alt   = \"Shiloh Cabinetry logo\"\r\n            ></a>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </footer>\r\n</template>\r\n\r\n<script>\r\nimport Vue from 'vue';\r\n\r\nexport default Vue.extend({\r\n  name: 'pagefooter'\r\n});\r\n</script>\r\n\r\n<style scoped>\r\n\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pagefooter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pagefooter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./pagefooter.vue?vue&type=template&id=9d4ec7f2&scoped=true&\"\nimport script from \"./pagefooter.vue?vue&type=script&lang=js&\"\nexport * from \"./pagefooter.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"9d4ec7f2\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.visible)?_c('div',{attrs:{\"id\":\"overlay\"},on:{\"click\":_vm.triggerClose}},[_c('div',{class:[ _vm.galleryMode ? 'galleryMode' : 'lightbox-mode', 'modal-dialog', 'modal-lg']},[_c('div',{staticClass:\"modal-content\",on:{\"click\":_vm.stopPropagation}},[_c('div',{staticClass:\"modal-header\"},[_c('h5',[_vm._v(_vm._s(_vm.getHeader(_vm.images[_vm.imageIndex])))]),_c('button',{staticClass:\"close\",on:{\"click\":_vm.triggerClose}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_vm._v(\"×\")])])]),_c('div',{staticClass:\"modal-body\"},[_c('div',{staticClass:\"ekko-lightbox-container\"},[_c('div',{staticClass:\"ekko-lightbox-item fade\"}),_c('div',{staticClass:\"ekko-lightbox-item fade in show text-center\"},[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":_vm.getUrl(_vm.images[_vm.imageIndex]),\"alt\":_vm.getAlt(_vm.images[_vm.imageIndex])}})]),(!_vm.galleryMode)?_c('div',{staticClass:\"ekko-lightbox-nav-overlay\"},[_c('a',{staticClass:\"d-none d-sm-flex\",attrs:{\"href\":\"#\"},on:{\"click\":_vm.triggerBack}},[_c('span',[_vm._v(\"❮\")])]),_c('a',{staticClass:\"d-none d-sm-flex\",attrs:{\"href\":\"#\"},on:{\"click\":_vm.triggerForward}},[_c('span',[_vm._v(\"❯\")])])]):_vm._e()])]),(!_vm.galleryMode)?_c('div',{staticClass:\"modal-footer\",domProps:{\"innerHTML\":_vm._s(_vm.getFooter(_vm.images[_vm.imageIndex]))}}):_vm._e(),(_vm.galleryMode)?_c('span',{staticClass:\"gallery\"},[_c('div',{staticClass:\"row justify-content-center pb-4 pt-2\"},_vm._l((_vm.images),function(image,index){return _c('div',{key:_vm.getUrl(image),staticClass:\"col-3 cursor-pointer\",on:{\"click\":function($event){return _vm.$emit('index-change', index);}}},[_c('img',{staticClass:\"img-fluid gallery-image\",attrs:{\"alt\":\"\",\"src\":_vm.getUrl(image)}})])}),0)]):_vm._e()])])]):_vm._e()}\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\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\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\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\n\r\nexport default Vue.extend({\r\n  name:       'LightBox',\r\n  components: { },\r\n  props:      {\r\n    visible: {\r\n      type: Boolean,\r\n      default: false\r\n    },\r\n    getHeader: {\r\n      type: Function,\r\n      default: () => ''\r\n    },\r\n    getUrl: {\r\n      type: Function,\r\n      default: () => '',\r\n    },\r\n    getFooter: {\r\n      type: Function,\r\n      default: () => '',\r\n    \r\n    },\r\n    getAlt: {\r\n      type: Function,\r\n      default: () => '',\r\n    },\r\n    imageIndex: {\r\n      type: Number,\r\n      default: () => 0\r\n    },\r\n    images: {\r\n      type: Array,\r\n      default: () => [ ]\r\n    },\r\n    galleryMode: {\r\n      type: Boolean,\r\n      default: () => false\r\n    },\r\n  },\r\n  data() {\r\n    return { };\r\n  },\r\n  computed:   {\r\n  },\r\n  created:    () => { },\r\n  methods:    {\r\n    triggerClose(event: any) {\r\n      event.stopPropagation()\r\n\r\n      this.$emit('on-close');\r\n    },\r\n    stopPropagation(event: any) {\r\n      event.stopPropagation();\r\n    },\r\n\r\n    triggerForward() {\r\n      this.$emit('index-change', (this.$props.imageIndex + 1) % this.$props.images.length);\r\n    },\r\n    triggerBack() {\r\n\r\n      if(this.$props.imageIndex === 0) {\r\n        this.$emit('index-change', this.$props.images.length - 1);\r\n      } else {\r\n\r\n        this.$emit('index-change', this.$props.imageIndex - 1);\r\n      }\r\n    }\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/@vue/cli-plugin-typescript/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!./lightbox.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/@vue/cli-plugin-typescript/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!./lightbox.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./lightbox.vue?vue&type=template&id=4f900bac&scoped=true&\"\nimport script from \"./lightbox.vue?vue&type=script&lang=ts&\"\nexport * from \"./lightbox.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./lightbox.vue?vue&type=style&index=0&id=4f900bac&prod&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  \"4f900bac\",\n  null\n  \n)\n\nexport default component.exports","\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 { AzureStorageBlob } from '@wwinc/azure-storage';\nimport { factory          } from '@/logging';\n\nimport Vue    from 'vue';\nimport PageHeader from '@/components/products/pageheader.vue';\nimport PageFooter from '@/components/pagefooter.vue';\n\nimport LightBox from '../standalone/lightbox.vue';\nconst logger = factory.getLogger('component.product.rangehood');\n\nexport default Vue.extend({\n  name: 'rangehoods',\n  props: {\n    section: String\n  },\n  components: {\n    PageHeader,\n    PageFooter,\n    LightBox\n  },\n  created(): void {\n    logger.trace('RangeHoods component has been created.');\n  },\n  methods: {\n\n    changeLightBoxIndex(index: number) {\n      this.lightBoxIndex = index;\n    },\n\n    galleryModeImageClicked(index: number) {\n      this.getHoodsInSameGroupArray(this.uniqueRangehoods[index]);\n      this.lightBoxIndex = 0;\n      this.galleryModeVisible = true;\n\n    },\n    getHeader(image: any) {\n      return this.selectedHoodGroupName;\n    },\n    getFooter (image: any) {\n      return image.footer;\n    },\n    getUrl(image: any)  {\n      return image.Url;\n    },\n    getImageIndex() {\n      return this.lightBoxIndex;\n    },\n    getImages() {\n      return (this as any).$data.images;\n    },\n    OnGalleryClose() {\n      this.galleryModeVisible = false;\n    },\n    getAlt(image: any) {\n      return image.alt;\n    },\n\n    getCenterUniqueHoodsArray(images: AzureStorageBlob[]): AzureStorageBlob[]{\n      let groupedImagesArray:    string[]           = [];\n      let azureStorageBlobArray: AzureStorageBlob[] = [];\n\n      images.forEach(implement=>{\n        let groupName = implement.Name.substring(\n              0,\n              implement.Name.indexOf('/')\n        );\n\n        if (!groupedImagesArray.includes(groupName)) {\n          groupedImagesArray.push(groupName);\n          azureStorageBlobArray.push(implement);\n        }\n      });\n      return azureStorageBlobArray;\n    },\n\n    getHoodsInSameGroupArray(image: AzureStorageBlob){\n      this.selectedHood = image;\n      let azureStorageBlobArray: AzureStorageBlob[] = [];\n\n      this.selectedHoodGroupName = image.Name.substring(\n        0,\n        image.Name.indexOf('/')\n      );\n\n      this.allRangehoods.forEach(instance=>{\n        let thisImagesGroup= instance.Name.substring(\n              0,\n              instance.Name.indexOf('/')\n        );\n\n        if (this.selectedHoodGroupName === thisImagesGroup) {\n          azureStorageBlobArray.push(instance);\n        }\n      });\n\n      this.selectedHoodGroup = azureStorageBlobArray;\n    },\n  },\n  computed: { },\n  data() {\n    return {\n      lightBoxIndex: 0,\n      galleryModeVisible: false,\n      navbar:                'products',\n      selectedHoodGroup:     [ ] as AzureStorageBlob[ ],\n      selectedHoodGroupName: '',\n      selectedHood:          { } as AzureStorageBlob,\n      rangehoodGrouped:      [ ],\n      allRangehoods:         [ ] as AzureStorageBlob[ ],\n      uniqueRangehoods:      [ ] as AzureStorageBlob[ ]\n    };\n  },\n  mounted(){\n    (this as any).$imageService!.getImages(\n        'aspect-images-products-rangehoods'\n    ).subscribe(\n      (images: any)=>{\n        this.allRangehoods    = images;\n        this.uniqueRangehoods = this.getCenterUniqueHoodsArray(images);\n      }\n    );\n  },\n  inject: ['$imageService'],\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/@vue/cli-plugin-typescript/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!./rangehoods.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/@vue/cli-plugin-typescript/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!./rangehoods.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./rangehoods.vue?vue&type=template&id=10a05376&\"\nimport script from \"./rangehoods.vue?vue&type=script&lang=ts&\"\nexport * from \"./rangehoods.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  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"products\"}}),_vm._m(0),_vm._m(1),_c('PageFooter')],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\"Products\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 col-md-3 pb-2\"},[_c('div',{staticClass:\"card m-0\"},[_c('img',{staticClass:\"card-img \",staticStyle:{\"height\":\"200px\"},attrs:{\"src\":\"https://programmingmedia.blob.core.windows.net/aspect-images-products-woodtypes/11289-natural%20oak.jpg\",\"alt\":\"Red Oak\"}})])]),_c('div',{staticClass:\"col-12 col-md-9\"},[_c('h4',{staticClass:\"text-aspect-red\"},[_vm._v(\" Red Oak \")]),_c('p',[_vm._v(\" The most traditional and commonly used wood species in cabinetry for many years. It is known for its distinctive open graining and attractive price. Oak lumber can vary from almost white to brown to gray. These are normal variations in the color of oak, and are to be expected in cabinetry. The lighter the stain, the more noticeable the variations. \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 col-md-3 pb-2\"},[_c('div',{staticClass:\"card m-0\"},[_c('img',{staticClass:\"card-img \",staticStyle:{\"height\":\"200px\"},attrs:{\"src\":\"https://programmingmedia.blob.core.windows.net/aspect-images-products-woodtypes/11703-Bayou.jpg\",\"alt\":\"American Poplar\"}})])]),_c('div',{staticClass:\"col-12 col-md-9\"},[_c('h4',{staticClass:\"text-aspect-red\"},[_vm._v(\" American Poplar \")]),_c('p',[_vm._v(\" A light to medium density hardwood with straight and lightly figured grain patterns. This hardwood is less dense than other hardwoods such as maple or oak, thus, is more susceptible to dents and dings. American Poplar varies greatly in color, from light cream to tan, with heavy green and mineral streaking possible. We have specially developed our finishes on American Poplar to minimize (not eliminate) the color variation, while taking advantage of the attractive grain to produce beautiful finishes. \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 col-md-3 pb-2\"},[_c('div',{staticClass:\"card m-0\"},[_c('img',{staticClass:\"card-img \",staticStyle:{\"height\":\"200px\"},attrs:{\"src\":\"https://programmingmedia.blob.core.windows.net/aspect-images-products-woodtypes/11278-wheat%20maple.jpg\",\"alt\":\"Maple\"}})])]),_c('div',{staticClass:\"col-12 col-md-9\"},[_c('h4',{staticClass:\"text-aspect-red\"},[_vm._v(\" Maple \")]),_c('p',[_vm._v(\" A hard and heavy wood popular with cabinet makers. Color varies from almost white to gray to medium brown. Maple commonly has dark mineral streaking, which will be present in the finished cabinets. Additionally, maple is well known for elaborate grain figuring, sometimes referred to as tiger strip, curly, or birds eye patterns. These are beautiful characteristics of maple, but can create distinct variation within a cabinet door or other cabinet part. As these are natural to the Maple, none of the noted characteristics are covered by warranty and are not reason for replacement. \")])])])])}]\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\nimport Vue       from 'vue';\n\nimport { factory } from '@/logging';\nimport PageHeader from '@/components/products/pageheader.vue';\nimport PageFooter from '@/components/pagefooter.vue';\n\nconst logger = factory.getLogger('component.product.woodtype');\n\nexport default Vue.extend({\n  name: 'woodTypes',\n  props: {\n    section: String\n  },\n  components: {\n    PageHeader,\n    PageFooter\n  },\n  created(): void { },\n  methods:  { },\n  computed: { },\n  data() {\n    return {\n      navbar: 'products'\n    };\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/@vue/cli-plugin-typescript/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!./woodtypes.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/@vue/cli-plugin-typescript/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!./woodtypes.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./woodtypes.vue?vue&type=template&id=c5edc31c&\"\nimport script from \"./woodtypes.vue?vue&type=script&lang=ts&\"\nexport * from \"./woodtypes.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  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"products\"}}),_vm._m(0),_c('div',{staticClass:\"container\"},[_c('LightBox',{attrs:{\"gallery-mode\":false,\"get-footer\":_vm.getFooter,\"get-header\":_vm.getHeader,\"get-url\":_vm.getUrl,\"get-alt\":_vm.getAlt,\"image-index\":_vm.getImageIndex(),\"images\":this.$data.doorstyleImages,\"visible\":_vm.visible},on:{\"on-close\":_vm.OnClose,\"index-change\":_vm.changeIndex}}),(_vm.doorstyleImages)?_c('div',{staticClass:\"row gallery-grid\"},_vm._l((_vm.doorstyleImages),function(image,i){return _c('div',{key:image.id,staticClass:\"col-lg-2 col-md-2 col-4 my-3\"},[_c('div',{staticClass:\"card cursor-pointer\",on:{\"click\":function($event){return _vm.imageClicked(i)}}},[_c('img',{staticClass:\"card-img\",attrs:{\"src\":image.Url,\"data-type\":\"image\",\"data-toggle\":\"lightbox\",\"data-gallery\":\"wdoor-gallery\",\"data-remote\":image.Url,\"data-title\":image.Metadata.door,\"data-footer\":'Door Style: '\n                  + image.Metadata.door\n                  + '<br>Finish: '\n                  + image.Metadata.finish\n                  +'<br>Glaze: '\n                  + image.Metadata.glaze\n                  + '<br>Wood Species: '\n                  + image.Metadata.species,\"alt\":\"Essex door style with American Poplar wood\"}})])])}),0):_vm._e()],1),_c('PageFooter')],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\"Products\")])])}]\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\nimport { factory } from '@/logging';\n\nimport Vue    from 'vue';\nimport PageHeader from '@/components/products/pageheader.vue';\nimport PageFooter from '@/components/pagefooter.vue';\nimport {AzureStorageBlob} from \"@wwinc/azure-storage\";\nconst logger = factory.getLogger('component.product.doorstyle');\nimport LightBox from '../standalone/lightbox.vue';\n\nexport default Vue.extend({\n  name: 'products',\n  props: {\n    section: String\n  },\n  components: {\n    PageHeader,\n    PageFooter,\n    LightBox\n  },\n  created(): void {\n    logger.trace('DoorStyles component has been created.');\n  },\n  methods:  {\n\n\n    changeIndex(index: number) {\n      this.index = index;\n    },\n    imageClicked(index: number) {\n      this.index = index;\n      this.visible = true;\n    },\n    getHeader(image: AzureStorageBlob) {\n      return image.Metadata.door;\n    },\n    getFooter (image: AzureStorageBlob) {\n      return image.Metadata.html;\n    },\n\n    getUrl(image: AzureStorageBlob)  {\n      return image.Url;\n    },\n    getImageIndex() {\n      return this.index;\n    },\n    getImages() {\n      return (this as any).$data.doorStyleImages;\n    },\n    OnClose() {\n      this.visible = false;\n    },\n    getAlt(image: any) {\n      return image.alt;\n    },\n\n  },\n  computed: { },\n  data() {\n    return {\n      index: 0,\n      visible: false,\n      navbar: 'products',\n          doorstyleImages: [] as Array<any>\n    };\n  },\n  mounted() {\n    logger.debug(\n        'Getting images from container aspect-images-products-doorstyles'\n    );\n\n    (this as any).$imageService!.getImages(\n        'aspect-images-products-doorstyles'\n    ).subscribe((data: any)=>{\n      logger.trace(\n          `aspect-images-products-doorstyles: ${JSON.stringify(data, null, 2)}`\n      );\n\n      this.doorstyleImages = data;\n    });\n  },\n  inject: ['$imageService']\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/@vue/cli-plugin-typescript/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!./doorstyles.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/@vue/cli-plugin-typescript/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!./doorstyles.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./doorstyles.vue?vue&type=template&id=3febad76&\"\nimport script from \"./doorstyles.vue?vue&type=script&lang=ts&\"\nexport * from \"./doorstyles.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  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"products\"}}),_vm._m(0),_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"card-deck d-block m-0\"},[_c('div',{staticClass:\"row justify-content-center flex-wrap d-flex\"},[_c('div',{staticClass:\"col-12 col-sm-4 col-lg-3 mb-2 px-3 px-md-2 pb-2 card-container products-card-container\"},[_c('router-link',{staticClass:\"text-decoration-none\",attrs:{\"to\":\"/products/finishes/paint\"}},[_c('div',{staticClass:\"card flex-row flex-sm-column  m-0\"},[_c('h5',{staticClass:\"card-title order-2 order-sm-1 mt-2 ml-2 my-sm-2 mx-sm-auto\"},[_vm._v(\" Paint \")]),_c('div',{staticClass:\"icon-container order-1 order-sm-2\"},[_c('img',{staticClass:\"card-img-bottom w-100\",attrs:{\"alt\":\"Paint\",\"src\":_vm.paintImg}})])])])],1),_c('div',{staticClass:\"col-12 col-sm-4 col-lg-3 mb-2 px-3 px-md-2 pb-2 card-container products-card-container\"},[_c('router-link',{staticClass:\"text-decoration-none\",attrs:{\"to\":\"/products/finishes/stain\"}},[_c('div',{staticClass:\"card flex-row flex-sm-column  m-0\"},[_c('h5',{staticClass:\"card-title order-2 order-sm-1 mt-2 ml-2 my-sm-2 mx-sm-auto\"},[_vm._v(\" Stain \")]),_c('div',{staticClass:\"icon-container order-1 order-sm-2\"},[_c('img',{staticClass:\"card-img-bottom w-100\",attrs:{\"alt\":\"Stain\",\"src\":_vm.stainImg}})])])])],1)])])]),_c('PageFooter')],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\"Products\")])])}]\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\r\nimport Vue from 'vue';\r\n\r\nimport { factory } from '@/logging';\r\n\r\nimport PageHeader from '@/components/products/pageheader.vue';\r\nimport PageFooter from '@/components/pagefooter.vue';\r\nimport { AzureStorage } from '@wwinc/azure-storage/azure-storage';\r\n\r\n\r\nconst logger = factory.getLogger('component.product.finish');\r\n\r\nexport default Vue.extend({\r\n  name:       'finishes',\r\n\r\n  props:      {\r\n    section: String\r\n  },\r\n\r\n  components: {\r\n    PageHeader,\r\n    PageFooter\r\n  },\r\n\r\n  data() {\r\n    return {\r\n      navbar: 'products'\r\n    };\r\n  },\r\n\r\n  created(): void {\r\n  },\r\n\r\n  computed: {\r\n    paintImg() {\r\n      return AzureStorage.config.storageAccountUrl + \"aspect-images-products/PaintsButton.jpg\"\r\n    },\r\n    stainImg() {\r\n      return AzureStorage.config.storageAccountUrl + \"aspect-images-products/StainsButton.jpg\"\r\n    },\r\n  },\r\n\r\n  methods: {},\r\n});\r\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\nimport Vue                  from 'vue';\nimport vue                  from 'vue';\nimport PageHeader           from '@/components/products/pageheader.vue';\nimport { AzureStorageBlob } from \"@wwinc/azure-storage\";\n\n// Enum that contains all the possible paint option menus\nenum PaintOption {\n  Paint   = \"Paint on Maple\",\n  RedOak  = \"Paint on Red Oak\"\n}\n\ninterface Data {\n  PaintOption:         any,\n  mapleText:           string,\n  redOakText:          string,\n  selectedPaint:       PaintOption,\n  selectedImage:       AzureStorageBlob | null,\n  paints:              AzureStorageBlob[],\n  redOakPaints:        AzureStorageBlob[]\n}\n\nexport default Vue.extend({\n  name: 'Paint',\n\n  components: {\n    PageHeader,\n  },\n\n  inject: [\n    '$imageService'\n  ],\n\n  props: {\n    section: String\n  },\n\n  data(): Data {\n    return {\n      PaintOption, // Added to allow access to PaintOption in HTML Template\n      mapleText: \"*Painted Maple will be maple, and will contain varied MDF components depending on product selection. \" +\n          \"Door panels for painted finishes will be MDF, with hardwood rails.\\n\" +\n          \"Painted finishes will show evidence of slight crack lines at joints in doors & frames. \" +\n          \"Areas of end grains on edges and panel cuts may exhibit voids in wood which appear as rough spots. \" +\n          \"We consider these imperfections normal and not reason for replacement.\",\n      redOakText: \"*Painted Red Oak will have solid oak rails and center panels on raised panel doors. \" +\n          \"For flat panel doors, the rails will be solid oak and the center panel will be oak veneer on composite core. \" +\n          \"Painted finishes will show evidence of slight crack lines at joints in doors & frames. \" +\n          \"Areas of end grains on edges and panel cuts may exhibit voids in wood which appear as rough spots. \" +\n          \"We consider these imperfections normal and not reason for replacement.\",\n      selectedPaint:       PaintOption.Paint,\n      selectedImage:       null,\n      paints:              [],\n      redOakPaints:        []\n    }\n  },\n\n  methods: {\n    // Returns an array of paints for the specific paint option\n    // @param paintOption - A PaintOption enum value\n    imagesToShow(paintOption: PaintOption): AzureStorageBlob[] {\n      switch (paintOption) {\n        case PaintOption.Paint:   return this.paints\n        case PaintOption.RedOak:  return this.redOakPaints\n        default:\n          console.error(\"DEFAULT CASE SHOULDN'T BE TRIGGERED\");\n          return this.paints;\n      }\n    },\n\n    // changes the selectedImage to what was clicked on\n    changeSelectedImage (image: AzureStorageBlob | null) {\n      if (image != null) {\n        this.selectedImage = image;\n      }\n    },\n\n    // Change the paints when a new option is selected.\n    // @param newOption - A paintOption enum value\n    changeSelected(newOption: PaintOption) {\n      this.selectedPaint = newOption;\n\n      switch (newOption) {\n        case PaintOption.Paint:\n          this.selectedImage = this.paints[0];\n          break;\n\n        case PaintOption.RedOak:\n          this.selectedImage = this.redOakPaints[0];\n          break;\n\n        default:\n          console.error(\"DEFAULT CASE SHOULDN'T BE TRIGGERED\");\n          break;\n      }\n    }\n  },\n\n  beforeMount() {\n    // Cleans all the metadata to ensure none of the values are undefined/null\n    const cleanMetadata = (image: AzureStorageBlob) => {\n      if (image.Metadata == undefined || image.Metadata == \"\") image.Metadata = {};\n\n      if (image.Url                   == undefined) image.Url                   = \"\";\n      if (image.Name                  == undefined) image.Name                  = \"\";\n      if (image.Metadata.finish       == undefined) image.Metadata.finish       = \"None\";\n      if (image.Metadata.finish_type  == undefined) image.Metadata.finish_type  = \"None\";\n      if (image.Metadata.cabinet      == undefined) image.Metadata.cabinet      = \"None\";\n      if (image.Metadata.door         == undefined) image.Metadata.door         = \"None\";\n      if (image.Metadata.glaze        == undefined) image.Metadata.glaze        = \"None\";\n      if (image.Metadata.html         == undefined) image.Metadata.html         = \"\";\n      if (image.Metadata.other        == undefined) image.Metadata.other        = \"None\";\n      if (image.Metadata.aged         == undefined) image.Metadata.aged         = false;\n      if (image.Metadata.species      == undefined) image.Metadata.species      = \"None\";\n      if (image.Metadata.shade        == undefined) image.Metadata.shade        = \"None\";\n      if (image.Metadata.thumbnail    == undefined) image.Metadata.thumbnail    = \"None\";\n      if (image.Metadata.type         == undefined) image.Metadata.type         = 0;\n      if (image.Metadata.display_name == undefined) image.Metadata.display_name = \"\";\n      if (image.Metadata.upload_date  == undefined) image.Metadata.upload_date  = \"None\";\n    }\n\n    // alphabetically sorts an array of AzureStorageBlobs (images) by finish name\n    const imageAlphabeticalSort =\n      (imageA: AzureStorageBlob, imageB: AzureStorageBlob) =>\n        imageA.Metadata.finish.localeCompare(imageB.Metadata.finish);\n\n    // Fills this.paints with all the paint options\n    (vue as any)\n      .$imageService\n      .getImages('aspect-products-finishes-paint')\n      .subscribe( (images: AzureStorageBlob[]) => {\n        images.map(cleanMetadata);\n\n        const maple = images.filter( (image: AzureStorageBlob) =>\n          image.Metadata         !=   undefined &&\n          image.Metadata.finish  !=   undefined &&\n          image.Metadata.finish  !== 'None'     &&\n          image.Metadata.species === 'Maple'\n        );\n\n        maple.sort(imageAlphabeticalSort);\n        this.paints = maple;\n        this.changeSelectedImage(maple[0]); // Sets the default selected paint\n      });\n\n    // sets this.redOakPaints with red oak paint images\n    (vue as any)\n      .$imageService\n      .getImages('aspect-products-finishes-paint')\n      .subscribe( (images: AzureStorageBlob[]) => {\n        images.map(cleanMetadata);\n\n        const oakPaints = images.filter( (image: AzureStorageBlob) =>\n          image.Metadata         !=  undefined &&\n          image.Metadata.finish  !=  undefined &&\n          image.Metadata.finish  !== 'None'    &&\n          image.Metadata.species === 'Red Oak'\n        );\n\n        oakPaints.sort(imageAlphabeticalSort);\n        this.redOakPaints = oakPaints;\n      });\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/@vue/cli-plugin-typescript/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!./finishes.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/@vue/cli-plugin-typescript/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!./finishes.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./finishes.vue?vue&type=template&id=047381a5&\"\nimport script from \"./finishes.vue?vue&type=script&lang=ts&\"\nexport * from \"./finishes.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  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"products\"}}),_vm._m(0),_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row d-flex justify-content-center\"},[_c('div',{staticClass:\"col-12 col-lg-8 col-xl-7 col-xxl-6 px-md-2\"},[_c('ul',{staticClass:\"nav nav-pills nav-justified mb-3 flex-column flex-md-row\",attrs:{\"id\":\"pills-tab\",\"role\":\"tablist\"}},_vm._l((_vm.PaintOption),function(option){return _c('li',{key:option,staticClass:\"nav-item\"},[_c('a',{class:[\n                'nav-link',\n                option === _vm.selectedPaint ? 'active' : ''\n              ],on:{\"click\":function($event){return _vm.changeSelected(option);}}},[_vm._v(\" \"+_vm._s(option)+\" \")])])}),0)])])]),(this.selectedImage != null)?_c('div',{staticClass:\"container tab-content mt-5 pb-4\",attrs:{\"id\":\"pills-tab-Content\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 col-md-7 col-xxl-6 mb-3 mobile-scrollable\"},[_c('div',{staticClass:\"flex-column dynamic-column\",attrs:{\"id\":\"v-pills-tab\",\"role\":\"tablist\",\"aria-orientation\":\"vertical\"}},_vm._l((this.imagesToShow(_vm.selectedPaint)),function(option){return _c('a',{key:option.Name,staticClass:\"mb-2 mb-sm-3 mb-md-2 mb-lg-3 card hover-primary-color\",class:[\n              'nav-link',\n              option.Name === _vm.selectedImage.Name ? 'active' : ''\n            ],on:{\"click\":function($event){return _vm.changeSelectedImage(option)}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 d-flex\"},[_c('span',{staticClass:\"finish-type-span pt-3 ps-2\"},[_vm._v(\" \"+_vm._s(option.Metadata.finish)+\" \")]),_c('span',{staticClass:\"finish-thumb-span\"},[_c('img',{staticClass:\"img-fluid tab-thumb\",attrs:{\"src\":option.Url,\"alt\":option.Metadata.finish}})])])])])}),0)]),_c('div',{staticClass:\"col-12 col-md-5 col-xxl-6\"},[_c('div',{staticClass:\"tab-content\"},[_c('div',{staticClass:\"tab-pane fade show active\"},[_c('div',{staticClass:\"card\"},[_c('img',{staticClass:\"card-img\",attrs:{\"src\":_vm.selectedImage.Url,\"alt\":_vm.selectedImage.Metadata.finish}})])])])])]),(_vm.selectedPaint === _vm.PaintOption.Paint)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 mt-4\"},[_vm._v(\" \"+_vm._s(this.mapleText)+\" \")])]):_vm._e(),(_vm.selectedPaint === _vm.PaintOption.RedOak)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 mt-4\"},[_vm._v(\" \"+_vm._s(this.redOakText)+\" \")])]):_vm._e()]):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\" Products \")])])}]\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\nimport Vue                  from 'vue';\nimport PageHeader           from '@/components/products/pageheader.vue';\nimport { AzureStorageBlob } from \"@wwinc/azure-storage\";\n\nenum WoodSpecies {\n  Maple          = \"Maple\",\n  AmericanPoplar = \"American Poplar\",\n  RedOak         = \"Red Oak\",\n}\n\ninterface Data {\n  WoodSpecies:          any,\n  selectedSpecies:      WoodSpecies,\n  selectedImage:        AzureStorageBlob | null,\n  mapleImages:          AzureStorageBlob[],\n  americanPoplarImages: AzureStorageBlob[],\n  redOakImages:         AzureStorageBlob[],\n}\n\nexport default Vue.extend({\n  name: 'Stain',\n\n  components: {\n    PageHeader,\n  },\n\n  props: {\n    section: String\n  },\n\n  inject: [\n    '$imageService'\n  ],\n\n  data(): Data {\n    return {\n      WoodSpecies:          WoodSpecies,\n      selectedSpecies:      WoodSpecies.Maple,\n      selectedImage:        null,\n      mapleImages:          [],\n      americanPoplarImages: [],\n      redOakImages:         [],\n    };\n  },\n\n  methods: {\n    /**\n     * Returns the stains for a passed in wood species\n     * @param species - A WoodSpecies enum value\n     */\n    stainsToDisplay(species: WoodSpecies): AzureStorageBlob[] {\n      // Helper function to filter out all images that are glazes\n      function filterOutGlaze(images: AzureStorageBlob[]): AzureStorageBlob[] {\n        return images.filter((stain) => !stain.Name.includes('glaze'));\n      }\n\n      switch (species) {\n        case WoodSpecies.Maple:          return filterOutGlaze(this.mapleImages);\n        case WoodSpecies.AmericanPoplar: return filterOutGlaze(this.americanPoplarImages);\n        case WoodSpecies.RedOak:         return filterOutGlaze(this.redOakImages);\n        default:\n          console.error(\"DEFAULT CASE SHOULDN'T BE TRIGGERED\");\n          return filterOutGlaze(this.mapleImages);\n      }\n    },\n\n\n    // Changes the selected image to display\n    changeSelectedImage (image: AzureStorageBlob | null) {\n      if (image != null) {\n        this.selectedImage = image;\n      }\n    },\n\n    // Changes the selected Wood Species\n    changeSpecies(newSpecies: WoodSpecies): void {\n      this.selectedSpecies = newSpecies;\n      this.selectedImage   = this.stainsToDisplay(newSpecies)[0];\n    }\n  },\n\n  beforeMount() {\n    // Cleans all the metadata to ensure none of the values are undefined/null\n    const cleanMetadata = (image: AzureStorageBlob) => {\n      if (image.Metadata == undefined || image.Metadata == \"\") image.Metadata = {};\n\n      if (image.Url                   == undefined) image.Url                   = \"\";\n      if (image.Name                  == undefined) image.Name                  = \"\";\n      if (image.Metadata.finish       == undefined) image.Metadata.finish       = \"None\";\n      if (image.Metadata.finish_type  == undefined) image.Metadata.finish_type  = \"None\";\n      if (image.Metadata.cabinet      == undefined) image.Metadata.cabinet      = \"None\";\n      if (image.Metadata.door         == undefined) image.Metadata.door         = \"None\";\n      if (image.Metadata.glaze        == undefined) image.Metadata.glaze        = \"None\";\n      if (image.Metadata.html         == undefined) image.Metadata.html         = \"\";\n      if (image.Metadata.other        == undefined) image.Metadata.other        = \"None\";\n      if (image.Metadata.aged         == undefined) image.Metadata.aged         = false;\n      if (image.Metadata.species      == undefined) image.Metadata.species      = \"None\";\n      if (image.Metadata.shade        == undefined) image.Metadata.shade        = \"None\";\n      if (image.Metadata.thumbnail    == undefined) image.Metadata.thumbnail    = \"None\";\n      if (image.Metadata.type         == undefined) image.Metadata.type         = 0;\n      if (image.Metadata.display_name == undefined) image.Metadata.display_name = \"\";\n      if (image.Metadata.upload_date  == undefined) image.Metadata.upload_date  = \"None\";\n    }\n\n    // alphabetically sorts an array of AzureStorageBlobs (images) by finish name\n    const imageAlphabeticalSort =\n      (imageA: AzureStorageBlob, imageB: AzureStorageBlob) =>\n        imageA.Metadata.finish.localeCompare(imageB.Metadata.finish);\n\n    // Fills this.mapleImages with all the image options, ignore retired colors and dupes\n    (Vue as any)\n      .$imageService\n      .getImages('aspect-products-finishes-stain')\n      .subscribe((images: AzureStorageBlob[]) => {\n        images.map(cleanMetadata);\n\n        const maple = images.filter( (image: AzureStorageBlob) =>\n          image.Metadata             !=   undefined &&\n          image.Metadata.finish      !=   undefined &&\n          image.Metadata.finish      !== 'None'     &&\n          image.Metadata.species     === 'Maple'    &&\n          image.Metadata.glaze       === 'None'\n        );\n\n        this.mapleImages = maple.sort(imageAlphabeticalSort);\n        // maple is set on create because it's the default to show\n        this.changeSpecies(WoodSpecies.Maple);\n      });\n\n    // Fills this.americanPoplarImages with all the image options, ignore retired colors and dupes\n    (Vue as any)\n      .$imageService\n      .getImages('aspect-products-finishes-stain')\n      .subscribe( (images: AzureStorageBlob[]) => {\n        images.map(cleanMetadata);\n\n        const amPop = images.filter( (image: AzureStorageBlob) =>\n          image.Metadata             !=   undefined        &&\n          image.Metadata.finish      !=   undefined        &&\n          image.Metadata.finish      !== 'None'            &&\n          image.Metadata.species     === 'American Poplar' &&\n          image.Metadata.glaze       === 'None'\n        );\n\n        this.americanPoplarImages = amPop.sort(imageAlphabeticalSort);\n      });\n\n    // Fills this.redOakImages with all the image options, ignore dupes\n    (Vue as any)\n      .$imageService\n      .getImages('aspect-products-finishes-stain')\n      .subscribe( (images: AzureStorageBlob[]) => {\n        images.map(cleanMetadata);\n\n        const redOak = images.filter( (image: AzureStorageBlob) =>\n          image.Metadata             !=   undefined &&\n          image.Metadata.finish      !=   undefined &&\n          image.Metadata.finish      !== 'None'     &&\n          image.Metadata.species     === 'Red Oak'  &&\n          image.Metadata.glaze       === 'None'\n        );\n\n        this.redOakImages = redOak.sort(imageAlphabeticalSort);\n      });\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/@vue/cli-plugin-typescript/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!./paint.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/@vue/cli-plugin-typescript/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!./paint.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./paint.vue?vue&type=template&id=25f12706&scoped=true&\"\nimport script from \"./paint.vue?vue&type=script&lang=ts&\"\nexport * from \"./paint.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./paint.vue?vue&type=style&index=0&id=25f12706&prod&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  \"25f12706\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"products\"}}),_vm._m(0),_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row d-flex justify-content-center\"},[_c('div',{staticClass:\"col-12 col-lg-8 col-xl-7 col-xxl-6 px-md-2 px-md-2 mb-4\"},[_c('ul',{staticClass:\"nav nav-pills nav-justified mb-3 flex-column flex-md-row\",attrs:{\"id\":\"pills-tab\",\"role\":\"tablist\"}},_vm._l((_vm.WoodSpecies),function(species){return _c('li',{key:species,staticClass:\"nav-item\"},[_c('a',{class:[\n                'nav-link',\n                species === _vm.selectedSpecies ? 'active' : ''\n              ],on:{\"click\":function($event){return _vm.changeSpecies(species);}}},[_vm._v(\" \"+_vm._s(species)+\" \")])])}),0)])])]),(this.selectedImage != null)?_c('div',{staticClass:\"container text-left text-md-right\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 col-md-7 col-xxl-6 mb-3 mobile-scrollable\"},[_c('div',{staticClass:\"flex-column dynamic-column\",attrs:{\"id\":\"v-pills-tab\",\"role\":\"tablist\",\"aria-orientation\":\"vertical\"}},_vm._l((_vm.stainsToDisplay(_vm.selectedSpecies)),function(stain){return _c('a',{key:stain.Name,staticClass:\"mb-2 mb-sm-3 card hover-primary-color\",class:[\n              'nav-link',\n              stain.Metadata.finish === _vm.selectedImage.Metadata.finish ? 'active': ''\n            ],on:{\"click\":function($event){return _vm.changeSelectedImage(stain);}}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 d-flex\"},[_c('span',{staticClass:\"finish-type-span px-2 pt-3\"},[_vm._v(\" \"+_vm._s(stain.Metadata.finish)+\" \")]),_c('span',{staticClass:\"finish-thumb-span\"},[_c('img',{staticClass:\"img-fluid tab-thumb\",attrs:{\"src\":stain.Url,\"alt\":stain.Metadata.finish}})])])])])}),0)]),_c('div',{staticClass:\"col-12 col-md-5 col-xxl-6 mb-4\"},[_c('div',{staticClass:\"card\"},[(_vm.selectedImage)?_c('img',{staticClass:\"card-img\",attrs:{\"src\":_vm.selectedImage.Url,\"alt\":_vm.selectedImage.Metadata.finish}}):_vm._e()])])])]):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\" Products \")])])}]\n\nexport { render, staticRenderFns }","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/@vue/cli-plugin-typescript/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!./stain.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/@vue/cli-plugin-typescript/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!./stain.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./stain.vue?vue&type=template&id=15c01df6&scoped=true&\"\nimport script from \"./stain.vue?vue&type=script&lang=ts&\"\nexport * from \"./stain.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./stain.vue?vue&type=style&index=0&id=15c01df6&prod&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  \"15c01df6\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"gallery\"}}),_c('div',{staticClass:\"container d-12 d-xs-12 d-lg-block\",staticStyle:{\"margin-bottom\":\"120px\"}},[_vm._m(0),_c('LightBox',{attrs:{\"gallery-mode\":false,\"get-footer\":_vm.getFooter,\"get-header\":_vm.getHeader,\"get-url\":_vm.getUrl,\"get-alt\":_vm.getAlt,\"image-index\":_vm.getImageIndex(),\"images\":_vm.getImages(),\"visible\":_vm.visible},on:{\"on-close\":_vm.OnClose,\"index-change\":_vm.changeIndex}}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('ul',{staticClass:\"nav nav-pills nav-justified mb-3 flex-column flex-md-row\",attrs:{\"id\":\"pills-tab\",\"role\":\"tablist\"}},_vm._l((_vm.availableOptions),function(types){return _c('li',{key:types.id,staticClass:\"nav-item\"},[_c('a',{class:['nav-link', types.class],attrs:{\"id\":types.id,\"role\":\"tab\",\"target\":\"_self\",\"aria-selected\":\"true\",\"data-toggle\":\"pill\",\"href\":'#' + types.type,\"aria-controls\":types.type,\"aria-expanded\":\"true\"},on:{\"click\":function($event){return _vm.changeSelected(types.id)}}},[_vm._v(\" \"+_vm._s(types.type)+\" \")])])}),0)])]),_c('div',{staticClass:\"tab-content\",attrs:{\"id\":\"myTabContent\"}},[_c('div',{staticClass:\"tab-pane fade active show\",attrs:{\"id\":\"grid\",\"role\":\"tabpanel\",\"aria-labelledby\":\"grid-tab\"}},[_c('div',{staticClass:\"row\"},_vm._l((_vm.images),function(image,index){return _c('div',{key:image.id,staticClass:\"col-6 col-sm-6 col-md-6 col-lg-3 my-3\"},[_c('div',{staticClass:\"card cursor-pointer gallery-card\",on:{\"click\":function($event){return _vm.imageClicked(index)}}},[_c('img',{staticClass:\"card-img \",attrs:{\"src\":image.Metadata && image.Metadata.thumbnail && image.Metadata.thumbnail != 'None' ? image.Metadata.thumbnail : image.Url,\"data-type\":\"image\",\"data-toggle\":\"lightbox\",\"data-gallery\":\"example-gallery\",\"data-remote\":image.Metadata && image.Metadata.thumbnail && image.Metadata.thumbnail != 'None' ? image.Metadata.thumbnail : image.Url,\"data-footer\":image.alt}})])])}),0)])])],1)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\" Gallery \")])])}]\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\nimport Vue              from 'vue';\n\nimport LightBox from './standalone/lightbox.vue';\nimport {factory} from '@/logging';\n\nimport { AzureStorageBlob } from '@wwinc/azure-storage';\nimport PageHeader from '@/components/products/pageheader.vue';\n\nconst logger = factory.getLogger('Gallery component.gallery');\n\nexport default Vue.extend({\n  name: 'gallery',\n  props: {\n    section: String\n  },\n  components: {\n    PageHeader,\n    LightBox\n  },\n  created(): void {\n    logger.trace('component has been created.');\n  },\n  methods: {\n\n    changeIndex(index: number) {\n      this.index = index;\n    },\n    imageClicked(index: number) {\n      this.index = index;\n      this.visible = true;\n    },\n    getHeader(image: AzureStorageBlob) {\n      return '';\n    },\n    getFooter (image: AzureStorageBlob) {\n      return image.Metadata.html;\n    },\n\n    getUrl(image: AzureStorageBlob)  {\n      return  image.Url;\n    },\n    getImageIndex() {\n      return this.index;\n    },\n    getImages() {\n      return (this as any).$data.images;\n    },\n    OnClose() {\n      this.visible = false;\n    },\n    getAlt(image: any) {\n      return image.alt;\n    },\n    /**\n     * Changes the the selected tab.\n     * @param id The id of the tab.\n     */\n    changeSelected(id: any) {\n      logger.trace(`changeSelected(id = ${id})`);\n\n      let searching = true;\n      //set active tab class to active\n      for(const option of this.availableOptions){\n        if(option.id == id) {\n          logger.trace(`Clicked tab found by id`);\n          option.class = 'active';\n          searching = false;\n        } else {\n          option.class = '';\n        }\n      }\n\n      if(searching) {\n        logger.trace(`Could not find the id of the clicked tab`);\n      }\n\n      //change images when tab changes\n      switch (id) {\n        case 1:\n          logger.trace(`Switching to kitchen images`);\n          this.images = this.kitchenImages;\n          break;\n        case 2:\n          logger.trace('Switching to bath images');\n          this.images = this.bathImages;\n          break;\n        case 3:\n          logger.trace('Switching to utility images');\n          this.images = this.utilityImages;\n          break;\n        case 4:\n          logger.trace('Switching to other images');\n          this.images = this.otherImages;\n          break;\n      }\n    }\n  },\n  computed: {\n  },\n  data() {\n    return {\n      index: 0,\n      visible: false,\n      navbar:        'gallery',\n      kitchenImages: [] as AzureStorageBlob[],\n      bathImages:    [] as AzureStorageBlob[],\n      utilityImages: [] as AzureStorageBlob[],\n      otherImages:   [] as AzureStorageBlob[],\n      images:        [] as AzureStorageBlob[],\n      // Set array of cabinet type options for gallery\n      availableOptions: [\n        {\n          'id':    1,\n          'type':  'Kitchen',\n          'class': 'active'\n        },\n        {\n          'id':     2,\n          'type':  'Bath',\n          'class': ''\n        },\n        {\n          'id':    3,\n          'type':  'Utility',\n          'class': ''\n        },\n        {\n          'id':    4,\n          'type':  'Other',\n          'class': ''\n        }\n      ],\n    };\n  },\n  inject: [\n    '$imageService'\n  ],\n  mounted() {\n    (this as any).$imageService!.getImages(\n        'aspect-images-gallery-kitchen'\n    ).subscribe((images: any) => {\n      this.kitchenImages = images;\n      // Once the kitchen images have loaded, display them.\n      this.changeSelected(1);\n\n    });\n\n    (this as any).$imageService!.getImages(\n        'aspect-images-gallery-bath'\n    ).subscribe((images: any) => {\n      this.bathImages = images;\n    });\n\n    (this as any).$imageService!.getImages(\n        'aspect-images-gallery-utility'\n    ).subscribe((images: any) => {\n      this.utilityImages = images;\n    });\n\n    (this as any).$imageService!.getImages(\n        'aspect-images-gallery-other'\n    ).subscribe((images: any) => {\n      this.otherImages = images;\n    });\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/@vue/cli-plugin-typescript/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!./gallery.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/@vue/cli-plugin-typescript/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!./gallery.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./gallery.vue?vue&type=template&id=d9086de6&scoped=true&\"\nimport script from \"./gallery.vue?vue&type=script&lang=ts&\"\nexport * from \"./gallery.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./gallery.vue?vue&type=style&index=0&id=d9086de6&prod&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  \"d9086de6\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"retailers\"}}),_vm._m(0),_c('section',{staticStyle:{\"margin-bottom\":\"120px\"},attrs:{\"id\":\"retailers\"}},[(_vm.working === true)?_c('div',{staticClass:\"sk-folding-cube\"},[_c('div',{staticClass:\"sk-cube3 sk-cube\"})]):_vm._e(),_c('div',{staticClass:\"container\"},[(_vm.formType === _vm.FormType.None)?_c('div',{staticClass:\"showForm\"},[_c('div',{staticClass:\"d-flex flex-wrap justify-content-center\"},[_c('div',{staticClass:\"col-12 col-md-6 col-lg-3 m-3\"},[_c('button',{staticClass:\"btn btn-aspect-red btn-lg w-100\",on:{\"click\":function($event){_vm.formType = _vm.FormType.LocateRetailer}}},[_c('i',{staticClass:\"material-icons\"},[_vm._v(\"place\")]),_vm._v(\" Find a Retailer \")])]),_c('div',{staticClass:\"col-12 col-md-6 col-lg-3 m-3\"},[_c('a',{staticClass:\"btn btn-aspect-red btn-lg w-100\",on:{\"click\":function($event){_vm.formType = _vm.FormType.BecomeRetailer}}},[_c('i',{staticClass:\"material-icons\"},[_vm._v(\"store\")]),_vm._v(\" Become a Retailer \")])])]),_vm._m(1)]):_vm._e(),(_vm.formType != _vm.FormType.None)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"m-auto col-sm-12 col-sm-pull-12 col-xs-12 col-md-12 col-lg-7 col-xl-6\"},[(_vm.errorMessage != null)?_c('div',{staticClass:\"alert alert-danger\",attrs:{\"role\":\"alert\"}},[_c('strong',[_vm._v(\"Error: \")]),_vm._v(\" \"+_vm._s(_vm.errorMessage)+\" \")]):_vm._e(),(_vm.success)?_c('div',{staticClass:\"alert alert-success\",attrs:{\"role\":\"alert\"}},[_c('b',[_vm._v(\"Success!\")]),_vm._v(\" Thank you for your submission. If you are in our distribution area, an Aspect representative will respond with the name of a dealer in your area as soon as possible. Depending on the day and time of submission response times may be delayed. \")]):_vm._e(),_c('form',{attrs:{\"name\":\"retailersForm\"}},[_c('fieldset',{staticClass:\"form-group mb-2\"},[_c('div',{staticClass:\"form-check form-check-inline\"},[_c('label',{staticClass:\"form-check-label\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formType),expression:\"formType\"}],staticClass:\"form-check-input\",attrs:{\"type\":\"radio\",\"name\":\"retailer\"},domProps:{\"value\":_vm.FormType.LocateRetailer,\"checked\":_vm._q(_vm.formType,_vm.FormType.LocateRetailer)},on:{\"change\":[function($event){_vm.formType=_vm.FormType.LocateRetailer},function($event){_vm.formType = _vm.FormType.LocateRetailer}]}}),_vm._v(\" Locate an Aspect Retailer \")])]),_c('div',{staticClass:\"form-check form-check-inline ml-0 ml-sm-4\"},[_c('label',{staticClass:\"form-check-label\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formType),expression:\"formType\"}],staticClass:\"form-check-input\",attrs:{\"type\":\"radio\",\"name\":\"retailer\"},domProps:{\"value\":_vm.FormType.BecomeRetailer,\"checked\":_vm._q(_vm.formType,_vm.FormType.BecomeRetailer)},on:{\"change\":[function($event){_vm.formType=_vm.FormType.BecomeRetailer},function($event){_vm.formType = _vm.FormType.BecomeRetailer}]}}),_vm._v(\" Become an Aspect Retailer \")])])]),_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"name\"}},[_vm._v(\"Name *\")]),_c('div',{staticClass:\"row mb-2\"},[_c('div',{staticClass:\"col-6\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.retailersForm.firstName),expression:\"retailersForm.firstName\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.retailersForm.firstName.$error\n                    },attrs:{\"id\":\"name\",\"type\":\"text\",\"name\":\"firstName\",\"placeholder\":\"First Name\"},domProps:{\"value\":(_vm.retailersForm.firstName)},on:{\"blur\":function($event){return _vm.v$.retailersForm.firstName.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.retailersForm, \"firstName\", $event.target.value)}}}),_vm._l((_vm.v$.retailersForm.firstName.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2),_c('div',{staticClass:\"col-6\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.retailersForm.lastName),expression:\"retailersForm.lastName\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.retailersForm.lastName.$error\n                    },attrs:{\"type\":\"text\",\"name\":\"lastName\",\"placeholder\":\"Last Name\"},domProps:{\"value\":(_vm.retailersForm.lastName)},on:{\"blur\":function($event){return _vm.v$.retailersForm.lastName.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.retailersForm, \"lastName\", $event.target.value)}}}),_vm._l((_vm.v$.retailersForm.lastName.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2)])]),_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"email\"}},[_vm._v(\"E-mail *\")]),_c('div',{staticClass:\"row mb-2\"},[_c('div',{staticClass:\"col-12\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.retailersForm.email),expression:\"retailersForm.email\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.retailersForm.email.$error\n                    },attrs:{\"id\":\"email\",\"type\":\"email\",\"name\":\"email\",\"placeholder\":\"ex: myname@example.com\"},domProps:{\"value\":(_vm.retailersForm.email)},on:{\"blur\":function($event){return _vm.v$.retailersForm.email.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.retailersForm, \"email\", $event.target.value)}}}),_vm._l((_vm.v$.retailersForm.email.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2)])]),(_vm.formType === _vm.FormType.LocateRetailer)?_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"phone\"}},[_vm._v(\"Phone Number\")]),_c('div',{staticClass:\"row mb-2\"},[_c('div',{staticClass:\"col-12\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.contact.phone),expression:\"contact.phone\"},{name:\"mask\",rawName:\"v-mask\",value:(_vm.mask),expression:\"mask\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.contact.phone.$error\n                    },attrs:{\"id\":\"phone\",\"type\":\"tel\",\"name\":\"phone\",\"placeholder\":\"(888) 888-8888\"},domProps:{\"value\":(_vm.contact.phone)},on:{\"blur\":function($event){return _vm.v$.contact.phone.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.contact, \"phone\", $event.target.value)}}}),_vm._l((_vm.v$.contact.phone.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2)])]):_vm._e(),(_vm.formType === _vm.FormType.BecomeRetailer)?_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"row mb-2\"},[_c('div',{staticClass:\"col-12 col-md-6\"},[_c('label',{attrs:{\"for\":\"businessName\"}},[_vm._v(\" Business Name * \")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.contact.businessName),expression:\"contact.businessName\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.contact.businessName.$error\n                    },attrs:{\"id\":\"businessName\",\"type\":\"text\",\"name\":\"businessName\",\"placeholder\":\"Example Corp.\"},domProps:{\"value\":(_vm.contact.businessName)},on:{\"blur\":function($event){return _vm.v$.contact.businessName.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.contact, \"businessName\", $event.target.value)}}}),_vm._l((_vm.v$.contact.businessName.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2),_c('div',{staticClass:\"col-8 col-md-4 mt-3 mt-md-0\"},[_c('label',{attrs:{\"for\":\"phone\"}},[_vm._v(\" Phone Number \")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.contact.phone),expression:\"contact.phone\"},{name:\"mask\",rawName:\"v-mask\",value:(_vm.mask),expression:\"mask\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.contact.phone.$error\n                    },attrs:{\"id\":\"phone\",\"type\":\"tel\",\"name\":\"phone\",\"placeholder\":\"(888) 888-8888\"},domProps:{\"value\":(_vm.contact.phone)},on:{\"blur\":function($event){return _vm.v$.contact.phone.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.contact, \"phone\", $event.target.value)}}}),_vm._l((_vm.v$.contact.phone.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2),_c('div',{staticClass:\"col-4 col-md-2 mt-3 mt-md-0\"},[_c('label',{attrs:{\"for\":\"phoneExt\"}},[_vm._v(\"Ext.\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.contact.phoneExt),expression:\"contact.phoneExt\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.contact.phoneExt.$error\n                    },attrs:{\"id\":\"phoneExt\",\"type\":\"tel\",\"name\":\"phoneExt\",\"placeholder\":\"1234\"},domProps:{\"value\":(_vm.contact.phoneExt)},on:{\"blur\":function($event){return _vm.v$.contact.phoneExt.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.contact, \"phoneExt\", $event.target.value)}}}),_vm._l((_vm.v$.contact.phoneExt.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2)])]):_vm._e(),_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"address\"}},[_vm._v(\"Address *\")]),_c('div',{staticClass:\"row mb-3\"},[_c('div',{staticClass:\"form-group col-12 mb-1\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.retailersForm.streetAddress),expression:\"retailersForm.streetAddress\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.retailersForm.streetAddress.$error\n                    },attrs:{\"id\":\"address\",\"type\":\"text\",\"name\":\"streetAddress\",\"placeholder\":\"Street Address\"},domProps:{\"value\":(_vm.retailersForm.streetAddress)},on:{\"blur\":function($event){return _vm.v$.retailersForm.streetAddress.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.retailersForm, \"streetAddress\", $event.target.value)}}}),_vm._l((_vm.v$.retailersForm.streetAddress.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2),_c('div',{staticClass:\"form-group col-6 col-sm-5 mb-1\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.retailersForm.city),expression:\"retailersForm.city\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.retailersForm.city.$error\n                    },attrs:{\"type\":\"text\",\"name\":\"city\",\"placeholder\":\"City\"},domProps:{\"value\":(_vm.retailersForm.city)},on:{\"blur\":function($event){return _vm.v$.retailersForm.city.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.retailersForm, \"city\", $event.target.value)}}}),_vm._l((_vm.v$.retailersForm.city.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2),_c('div',{staticClass:\"form-group col-6 col-sm-4 mb-1\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.retailersForm.state),expression:\"retailersForm.state\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.retailersForm.state.$error\n                    },attrs:{\"items\":_vm.getStates,\"item-text\":\"value\",\"item-value\":\"key\",\"name\":\"state\",\"placeholder\":\"State\"},on:{\"blur\":function($event){return _vm.v$.retailersForm.state.$touch()},\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.retailersForm, \"state\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},[_c('option',{key:\"\",attrs:{\"selected\":\"\",\"value\":\"\"}},[_vm._v(\" State \")]),_vm._l((_vm.getStates),function(state){return _c('option',{key:state.key,domProps:{\"value\":state.key}},[_vm._v(\" \"+_vm._s(state.value)+\" \")])})],2),_vm._l((_vm.v$.retailersForm.state.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2),_c('div',{staticClass:\"form-group col-6 col-sm-3 mb-1\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.retailersForm.zip),expression:\"retailersForm.zip\"}],staticClass:\"form-control\",class:{\n                      'form-control': true,\n                      'is-invalid':   _vm.v$.retailersForm.zip.$error\n                    },attrs:{\"type\":\"text\",\"name\":\"zip\",\"placeholder\":\"Zip\"},domProps:{\"value\":(_vm.retailersForm.zip)},on:{\"blur\":function($event){return _vm.v$.retailersForm.zip.$touch()},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.retailersForm, \"zip\", $event.target.value)}}}),_vm._l((_vm.v$.retailersForm.zip.$errors),function(error){return _c('div',{key:error.$uid,staticClass:\"text-danger\"},[_vm._v(\" \"+_vm._s(error.$message)+\" \")])})],2),_c('div',{staticClass:\"form-group col-12 col-md-6\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.countries.selectedOption.code),expression:\"countries.selectedOption.code\"}],staticClass:\"form-control\",attrs:{\"name\":\"country\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.countries.selectedOption, \"code\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},_vm._l((_vm.countries.availableOptions),function(option){return _c('option',{key:option.code,domProps:{\"value\":option.code}},[_vm._v(\" \"+_vm._s(option.name)+\" \")])}),0)])])]),(_vm.formType === _vm.FormType.LocateRetailer)?_c('div',{staticClass:\"row mb-2\"},[_vm._m(2),_c('div',{staticClass:\"col-12\"},[_c('fieldset',{staticClass:\"form-group\"},[_c('div',{staticClass:\"form-check form-check-inline\"},[_c('label',{staticClass:\"form-check-label\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.comment.projectType),expression:\"comment.projectType\"}],staticClass:\"form-check-input\",attrs:{\"type\":\"radio\",\"name\":\"projectType\"},domProps:{\"value\":_vm.ProjectType.Remodel,\"checked\":_vm._q(_vm.comment.projectType,_vm.ProjectType.Remodel)},on:{\"change\":function($event){return _vm.$set(_vm.comment, \"projectType\", _vm.ProjectType.Remodel)}}}),_vm._v(\" Remodel \")])]),_c('div',{staticClass:\"form-check form-check-inline\"},[_c('label',{staticClass:\"form-check-label\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.comment.projectType),expression:\"comment.projectType\"}],staticClass:\"form-check-input\",attrs:{\"type\":\"radio\",\"name\":\"projectType\"},domProps:{\"value\":_vm.ProjectType.NewConstruction,\"checked\":_vm._q(_vm.comment.projectType,_vm.ProjectType.NewConstruction)},on:{\"change\":function($event){return _vm.$set(_vm.comment, \"projectType\", _vm.ProjectType.NewConstruction)}}}),_vm._v(\" New Construction \")])]),_c('div',{staticClass:\"form-check form-check-inline\"},[_c('label',{staticClass:\"form-check-label\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.comment.projectType),expression:\"comment.projectType\"}],staticClass:\"form-check-input\",attrs:{\"type\":\"radio\",\"name\":\"projectType\"},domProps:{\"value\":_vm.ProjectType.Both,\"checked\":_vm._q(_vm.comment.projectType,_vm.ProjectType.Both)},on:{\"change\":function($event){return _vm.$set(_vm.comment, \"projectType\", _vm.ProjectType.Both)}}}),_vm._v(\" Both \")])])])])]):_vm._e(),(_vm.formType === _vm.FormType.LocateRetailer)?_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"row mb-2\"},[_c('label',{attrs:{\"for\":\"describe\"}},[_vm._v(\" Describe the Project \")]),_c('div',{staticClass:\"form-group col-12\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.comment.describe),expression:\"comment.describe\"}],staticClass:\"form-control\",attrs:{\"id\":\"describe\",\"type\":\"text\",\"name\":\"describe\",\"placeholder\":\"Kitchen, Bath, Other\"},domProps:{\"value\":(_vm.comment.describe)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.comment, \"describe\", $event.target.value)}}})])])]):_vm._e(),_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"comments\"}},[_vm._v(\"Comments\")]),_c('div',{staticClass:\"row mb-3\"},[_c('div',{staticClass:\"form-group col-12\"},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.comment.comments),expression:\"comment.comments\"}],staticClass:\"form-control\",attrs:{\"id\":\"comments\",\"name\":\"comments\"},domProps:{\"value\":(_vm.comment.comments)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.comment, \"comments\", $event.target.value)}}})])])]),_c('div',{staticClass:\"row mb-3\"},[_vm._m(3),_c('div',{staticClass:\"col-12\"},[_c('fieldset',{staticClass:\"form-group\"},[_c('div',{staticClass:\"form-check form-check-inline\"},[_c('label',{staticClass:\"form-check-label\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.distributionArea),expression:\"distributionArea\"}],staticClass:\"form-check-input\",attrs:{\"type\":\"radio\",\"name\":\"distributionArea\",\"value\":\"1\"},domProps:{\"checked\":_vm._q(_vm.distributionArea,\"1\")},on:{\"change\":function($event){_vm.distributionArea=\"1\"}}}),_vm._v(\" Yes \")])]),_c('div',{staticClass:\"form-check form-check-inline\"},[_c('label',{staticClass:\"form-check-label\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.distributionArea),expression:\"distributionArea\"}],staticClass:\"form-check-input\",attrs:{\"type\":\"radio\",\"name\":\"distributionArea\",\"value\":\"0\"},domProps:{\"checked\":_vm._q(_vm.distributionArea,\"0\")},on:{\"change\":function($event){_vm.distributionArea=\"0\"}}}),_vm._v(\" No \")])])])])])]),(_vm.formType === _vm.FormType.LocateRetailer)?_c('button',{staticClass:\"btn btn-lg btn-aspect-red mb-5\",on:{\"click\":_vm.submitRequest}},[_vm._v(\" Locate a Retailer \")]):_vm._e(),(_vm.formType === _vm.FormType.BecomeRetailer)?_c('button',{staticClass:\"btn btn-lg btn-aspect-red mb-5\",on:{\"click\":_vm.submitRequest}},[_vm._v(\" Become a Retailer \")]):_vm._e()]),_vm._m(4)]):_vm._e()])])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\" Retailers \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"m-auto col-sm-12 col-sm-pull-12 col-xs-12 col-md-12 col-lg-8\"},[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":require(\"../assets/media/Retailers/Aspect_Distribution_Map.jpg\"),\"alt\":\"Aspect Cabinetry Distribution Area Map\"}})])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"my-0 py-0\"},[_vm._v(\" Project Type \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"my-0 py-0\"},[_vm._v(\" Are you located in our distribution area? \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"px-0 col-sm-12 col-sm-pull-12 col-xs-12 col-md-12 col-lg-5 col-xl-6\"},[_c('img',{staticClass:\"img-fluid area-image\",attrs:{\"src\":require(\"../assets/media/Retailers/Aspect_Distribution_Map.jpg\"),\"alt\":\"Aspect Cabinetry Distribution Area Map\"}})])}]\n\nexport { render, staticRenderFns }","// The file contents for the current environment will overwrite these during build.\r\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\r\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\r\n// The list of which env maps to which file can be found in `.angular-cli.json`.\r\nimport { DevSecureConfig } from '@wwinc/azure-storage/app.config';\r\nimport { development }  from '@wwinc/email/app.config';\r\n\r\nexport const environment = {\r\n    production: false,\r\n    azure : DevSecureConfig,\r\n    email: development,\r\n    emailAddress: \"\"\r\n};\r\n","// The file contents for the current environment will overwrite these during build.\r\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\r\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\r\n// The list of which env maps to which file can be found in `.angular-cli.json`.\r\nimport { ProductionSecureConfig } from '@wwinc/azure-storage/app.config';\r\nimport { production }  from '@wwinc/email/app.config';\r\n\r\nexport const environment = {\r\n    production: false,\r\n    azure : ProductionSecureConfig,\r\n    email: production,\r\n    emailAddress: \"info@aspectcabinetry.com\"\r\n};\r\n","import { factory } from '@/logging';\r\n\r\nimport AppConfig from '@/AppConfig';\r\n\r\nimport\r\n  axios,\r\n  {\r\n    AxiosResponse,\r\n  } from 'axios';\r\nimport {RetailersForm} from \"@wwinc/email/models/retailers-form\";\r\nimport {EmailService} from \"@wwinc/email\";\r\nimport {environment as devEnv} from \"@/environments/environment\";\r\nimport { environment as prodEnv} from \"@/environments/environment.prod\"\r\n\r\n\r\nconst logger = factory.getLogger('service.retailers');\r\n\r\nclass RetailersService {\r\n  endpoint: string;\r\n  endpointEmail: string;\r\n  companyEmail: string;\r\n\r\n  ignoreEmailValidation = false;\r\n\r\n  /**\r\n   * Objects containing form information to send to\r\n   *  SendGrid regarding Network Error Emails.\r\n   * Replaced with local error message\r\n   *  when EmailRetailersForm() return false.\r\n   * See Lines [95-110]\r\n   *\r\n   * errorURL              = 'https://prod-06.centralus.logic.azure.com:443/workflows/974421ffb5e148a6b67a5ed32e7e5648/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=qA6IgYu7kyhufyomQ-5tuyECSgxQHs-dXuePE-xLdXE';\r\n   *\r\n   * errorObject = {\r\n   *   incident: {\r\n   *     subject: 'Error Occurred: Aspect Website',\r\n   *     content: 'An error occurred on the retailers page, reason is unknown.'\r\n   *   }\r\n   * };\r\n   *\r\n   * errorRequest           = <AxiosRequestConfig>{\r\n   *   method: 'POST',\r\n   *   url:    this.errorURL,\r\n   *   data:   this.errorObject\r\n   * };\r\n  **/\r\n  private working        = false;\r\n  private success        = false;\r\n  public successMessage = '';\r\n\r\n  private error        = false;\r\n  private errorMessage = '';\r\n  private data: any;\r\n\r\n  constructor(private config: AppConfig) {\r\n  logger.debug(`\\n\r\n    Instantiating Retailers Service:\r\n      mode         = ${config.mode}\r\n      companyEmail = ${config.companyEmail};\r\n      endpoint     = ${config.commonApiEndpoint};\r\n      endpointEmail     = ${config.emailApiEndpoint}\r\n  `)\r\n    this.companyEmail = config.companyEmail;\r\n    this.endpoint = config.commonApiEndpoint;\r\n    this.endpointEmail = config.emailApiEndpoint;\r\n\r\n    if (process.env.VUE_APP_MODE === 'Development') {\r\n      EmailService.forRoot(devEnv.email);\r\n    } else {\r\n      EmailService.forRoot(prodEnv.email);\r\n    }\r\n  }\r\n\r\n  /** DEPRECATED??\r\n   * Check email address to make sure it is valid.\r\n   * @param emailAddress Email address to verify.\r\n   */\r\n  ValidateEmail(emailAddress: any) {\r\n    return axios.get(`${this.endpoint}/Email/Validate/${emailAddress}`)\r\n      .then(function successCallback(response: AxiosResponse) {\r\n        return true;\r\n      }, function errorCallback(response: AxiosResponse) {\r\n        return false;\r\n      });\r\n  }\r\n\r\n  /***\r\n   * Uses NPM Email to get HTML for emails\r\n   * @param data retailer form data\r\n   */\r\n  public sendEmails(\r\n      data: RetailersForm\r\n  ) {\r\n    this.working = true;\r\n   return EmailService.prototype.sendRetailerEmails('aspect', data).toPromise().then(\r\n       (response: any) => {\r\n          this.working = false;\r\n          console.log(response)\r\n          return response.data\r\n        }\r\n    );\r\n  }\r\n\r\n  /** Deprecated\r\n   * Gets the HTML for emails to either templateType Customer, Retailer, or Internal\r\n   * @param data retailer form data\r\n   */\r\n  public EmailRetailersForm (\r\n      data: RetailersForm\r\n  ) {\r\n    this.working = true;\r\n    return axios.post(\r\n        `${this.endpointEmail}/retailers/aspect/`,\r\n        data\r\n    ).then(\r\n        (response: AxiosResponse) => {\r\n          this.working = false;\r\n          return response.data;\r\n        },\r\n        (response: AxiosResponse) => {\r\n          this.working = false;\r\n          return false;\r\n          /**\r\n           * Sends Network Error Email containing form information to SendGrid.\r\n           * Replaced with local error message\r\n           *  when EmailRetailersForm() return false.\r\n           * Removed (8/11/2021), Poston.\r\n           *\r\n           *  this.errorObject.incident.content =\r\n           *     'Error occurred when attempting to send template' +\r\n           *     '. Error is: ' +\r\n           *     JSON.stringify(response) +\r\n           *     ' Data attempted was: ' +\r\n           *     JSON.stringify(data);\r\n           *\r\n           *  axios(this.errorRequest).then((after: any) => {\r\n           *  })\r\n          **/\r\n        }\r\n    );\r\n  }\r\n}\r\n\r\nexport enum State {\r\n  AL = \"Alabama\",\r\n  AK = \"Alaska\",\r\n  AZ = \"Arizona\",\r\n  AR = \"Arkansas\",\r\n  CA = \"California\",\r\n  CO = \"Colorado\",\r\n  CT = \"Connecticut\",\r\n  DE = \"Delaware\",\r\n  FL = \"Florida\",\r\n  GA = \"Georgia\",\r\n  HI = \"Hawaii\",\r\n  ID = \"Idaho\",\r\n  IL = \"Illinois\",\r\n  IN = \"Indiana\",\r\n  IA = \"Iowa\",\r\n  KS = \"Kansas\",\r\n  KY = \"Kentucky\",\r\n  LA = \"Louisiana\",\r\n  ME = \"Maine\",\r\n  MD = \"Maryland\",\r\n  MA = \"Massachusetts\",\r\n  MI = \"Michigan\",\r\n  MN = \"Minnesota\",\r\n  MS = \"Mississippi\",\r\n  MO = \"Missouri\",\r\n  MT = \"Montana\",\r\n  NE = \"Nebraska\",\r\n  NV = \"Nevada\",\r\n  NH = \"New Hampshire\",\r\n  NJ = \"New Jersey\",\r\n  NM = \"New Mexico\",\r\n  NY = \"New York\",\r\n  NC = \"North Carolina\",\r\n  ND = \"North Dakota\",\r\n  OH = \"Ohio\",\r\n  OK = \"Oklahoma\",\r\n  OR = \"Oregon\",\r\n  PA = \"Pennsylvania\",\r\n  PR = \"Puerto Rico\",\r\n  RI = \"Rhode Island\",\r\n  SC = \"South Carolina\",\r\n  SD = \"South Dakota\",\r\n  TN = \"Tennessee\",\r\n  TX = \"Texas\",\r\n  UT = \"Utah\",\r\n  VT = \"Vermont\",\r\n  VA = \"Virginia\",\r\n  WA = \"Washington\",\r\n  WV = \"West Virginia\",\r\n  WI = \"Wisconsin\",\r\n  WY = \"Wyoming\"\r\n}\r\n\r\nconst countries = [\r\n  {\r\n    name: 'Afghanistan',\r\n    code: 'AF'\r\n  },\r\n  {\r\n    name: 'Åland Islands',\r\n    code: 'AX'\r\n  },\r\n  {\r\n    name: 'Albania',\r\n    code: 'AL'\r\n  },\r\n  {\r\n    name: 'Algeria',\r\n    code: 'DZ'\r\n  },\r\n  {\r\n    name: 'American Samoa',\r\n    code: 'AS'\r\n  },\r\n  {\r\n    name: 'AndorrA',\r\n    code: 'AD'\r\n  },\r\n  {\r\n    name: 'Angola',\r\n    code: 'AO'\r\n  },\r\n  {\r\n    name: 'Anguilla',\r\n    code: 'AI'\r\n  },\r\n  {\r\n    name: 'Antarctica',\r\n    code: 'AQ'\r\n  },\r\n  {\r\n    name: 'Antigua and Barbuda',\r\n    code: 'AG'\r\n  },\r\n  {\r\n    name: 'Argentina',\r\n    code: 'AR'\r\n  },\r\n  {\r\n    name: 'Armenia',\r\n    code: 'AM'\r\n  },\r\n  {\r\n    name: 'Aruba',\r\n    code: 'AW'\r\n  },\r\n  {\r\n    name: 'Australia',\r\n    code: 'AU'\r\n  },\r\n  {\r\n    name: 'Austria',\r\n    code: 'AT'\r\n  },\r\n  {\r\n    name: 'Azerbaijan',\r\n    code: 'AZ'\r\n  },\r\n  {\r\n    name: 'Bahamas',\r\n    code: 'BS'\r\n  },\r\n  {\r\n    name: 'Bahrain',\r\n    code: 'BH'\r\n  },\r\n  {\r\n    name: 'Bangladesh',\r\n    code: 'BD'\r\n  },\r\n  {\r\n    name: 'Barbados',\r\n    code: 'BB'\r\n  },\r\n  {\r\n    name: 'Belarus',\r\n    code: 'BY'\r\n  },\r\n  {\r\n    name: 'Belgium',\r\n    code: 'BE'\r\n  },\r\n  {\r\n    name: 'Belize',\r\n    code: 'BZ'\r\n  },\r\n  {\r\n    name: 'Benin',\r\n    code: 'BJ'\r\n  },\r\n  {\r\n    name: 'Bermuda',\r\n    code: 'BM'\r\n  },\r\n  {\r\n    name: 'Bhutan',\r\n    code: 'BT'\r\n  },\r\n  {\r\n    name: 'Bolivia',\r\n    code: 'BO'\r\n  },\r\n  {\r\n    name: 'Bosnia and Herzegovina',\r\n    code: 'BA'\r\n  },\r\n  {\r\n    name: 'Botswana',\r\n    code: 'BW'\r\n  },\r\n  {\r\n    name: 'Bouvet Island',\r\n    code: 'BV'\r\n  },\r\n  {\r\n    name: 'Brazil',\r\n    code: 'BR'\r\n  },\r\n  {\r\n    name: 'British Indian Ocean Territory',\r\n    code: 'IO'\r\n  },\r\n  {\r\n    name: 'Brunei Darussalam',\r\n    code: 'BN'\r\n  },\r\n  {\r\n    name: 'Bulgaria',\r\n    code: 'BG'\r\n  },\r\n  {\r\n    name: 'Burkina Faso',\r\n    code: 'BF'\r\n  },\r\n  {\r\n    name: 'Burundi',\r\n    code: 'BI'\r\n  },\r\n  {\r\n    name: 'Cambodia',\r\n    code: 'KH'\r\n  },\r\n  {\r\n    name: 'Cameroon',\r\n    code: 'CM'\r\n  },\r\n  {\r\n    name: 'Canada',\r\n    code: 'CA'\r\n  },\r\n  {\r\n    name: 'Cape Verde',\r\n    code: 'CV'\r\n  },\r\n  {\r\n    name: 'Cayman Islands',\r\n    code: 'KY'\r\n  },\r\n  {\r\n    name: 'Central African Republic',\r\n    code: 'CF'\r\n  },\r\n  {\r\n    name: 'Chad',\r\n    code: 'TD'\r\n  },\r\n  {\r\n    name: 'Chile',\r\n    code: 'CL'\r\n  },\r\n  {\r\n    name: 'China',\r\n    code: 'CN'\r\n  },\r\n  {\r\n    name: 'Christmas Island',\r\n    code: 'CX'\r\n  },\r\n  {\r\n    name: 'Cocos (Keeling) Islands',\r\n    code: 'CC'\r\n  },\r\n  {\r\n    name: 'Colombia',\r\n    code: 'CO'\r\n  },\r\n  {\r\n    name: 'Comoros',\r\n    code: 'KM'\r\n  },\r\n  {\r\n    name: 'Congo',\r\n    code: 'CG'\r\n  },\r\n  {\r\n    name: 'Congo, The Democratic Republic of the',\r\n    code: 'CD'\r\n  },\r\n  {\r\n    name: 'Cook Islands',\r\n    code: 'CK'\r\n  },\r\n  {\r\n    name: 'Costa Rica',\r\n    code: 'CR'\r\n  },\r\n  {\r\n    name: 'Cote D Ivoire',\r\n    code: 'CI'\r\n  },\r\n  {\r\n    name: 'Croatia',\r\n    code: 'HR'\r\n  },\r\n  {\r\n    name: 'Cyprus',\r\n    code: 'CY'\r\n  },\r\n  {\r\n    name: 'Czech Republic',\r\n    code: 'CZ'\r\n  },\r\n  {\r\n    name: 'Denmark',\r\n    code: 'DK'\r\n  },\r\n  {\r\n    name: 'Djibouti',\r\n    code: 'DJ'\r\n  },\r\n  {\r\n    name: 'Dominica',\r\n    code: 'DM'\r\n  },\r\n  {\r\n    name: 'Dominican Republic',\r\n    code: 'DO'\r\n  },\r\n  {\r\n    name: 'Ecuador',\r\n    code: 'EC'\r\n  },\r\n  {\r\n    name: 'Egypt',\r\n    code: 'EG'\r\n  },\r\n  {\r\n    name: 'El Salvador',\r\n    code: 'SV'\r\n  },\r\n  {\r\n    name: 'Equatorial Guinea',\r\n    code: 'GQ'\r\n  },\r\n  {\r\n    name: 'Eritrea',\r\n    code: 'ER'\r\n  },\r\n  {\r\n    name: 'Estonia',\r\n    code: 'EE'\r\n  },\r\n  {\r\n    name: 'Ethiopia',\r\n    code: 'ET'\r\n  },\r\n  {\r\n    name: 'Falkland Islands (Malvinas)',\r\n    code: 'FK'\r\n  },\r\n  {\r\n    name: 'Faroe Islands',\r\n    code: 'FO'\r\n  },\r\n  {\r\n    name: 'Fiji',\r\n    code: 'FJ'\r\n  },\r\n  {\r\n    name: 'Finland',\r\n    code: 'FI'\r\n  },\r\n  {\r\n    name: 'France',\r\n    code: 'FR'\r\n  },\r\n  {\r\n    name: 'French Guiana',\r\n    code: 'GF'\r\n  },\r\n  {\r\n    name: 'French Polynesia',\r\n    code: 'PF'\r\n  },\r\n  {\r\n    name: 'French Southern Territories',\r\n    code: 'TF'\r\n  },\r\n  {\r\n    name: 'Gabon',\r\n    code: 'GA'\r\n  },\r\n  {\r\n    name: 'Gambia',\r\n    code: 'GM'\r\n  },\r\n  {\r\n    name: 'Georgia',\r\n    code: 'GE'\r\n  },\r\n  {\r\n    name: 'Germany',\r\n    code: 'DE'\r\n  },\r\n  {\r\n    name: 'Ghana',\r\n    code: 'GH'\r\n  },\r\n  {\r\n    name: 'Gibraltar',\r\n    code: 'GI'\r\n  },\r\n  {\r\n    name: 'Greece',\r\n    code: 'GR'\r\n  },\r\n  {\r\n    name: 'Greenland',\r\n    code: 'GL'\r\n  },\r\n  {\r\n    name: 'Grenada',\r\n    code: 'GD'\r\n  },\r\n  {\r\n    name: 'Guadeloupe',\r\n    code: 'GP'\r\n  },\r\n  {\r\n    name: 'Guam',\r\n    code: 'GU'\r\n  },\r\n  {\r\n    name: 'Guatemala',\r\n    code: 'GT'\r\n  },\r\n  {\r\n    name: 'Guernsey',\r\n    code: 'GG'\r\n  },\r\n  {\r\n    name: 'Guinea',\r\n    code: 'GN'\r\n  },\r\n  {\r\n    name: 'Guinea-Bissau',\r\n    code: 'GW'\r\n  },\r\n  {\r\n    name: 'Guyana',\r\n    code: 'GY'\r\n  },\r\n  {\r\n    name: 'Haiti',\r\n    code: 'HT'\r\n  },\r\n  {\r\n    name: 'Heard Island and Mcdonald Islands',\r\n    code: 'HM'\r\n  },\r\n  {\r\n    name: 'Holy See (Vatican City State)',\r\n    code: 'VA'\r\n  },\r\n  {\r\n    name: 'Honduras',\r\n    code: 'HN'\r\n  },\r\n  {\r\n    name: 'Hong Kong',\r\n    code: 'HK'\r\n  },\r\n  {\r\n    name: 'Hungary',\r\n    code: 'HU'\r\n  },\r\n  {\r\n    name: 'Iceland',\r\n    code: 'IS'\r\n  },\r\n  {\r\n    name: 'India',\r\n    code: 'IN'\r\n  },\r\n  {\r\n    name: 'Indonesia',\r\n    code: 'ID'\r\n  },\r\n  {\r\n    name: 'Iraq',\r\n    code: 'IQ'\r\n  },\r\n  {\r\n    name: 'Ireland',\r\n    code: 'IE'\r\n  },\r\n  {\r\n    name: 'Isle of Man',\r\n    code: 'IM'\r\n  },\r\n  {\r\n    name: 'Israel',\r\n    code: 'IL'\r\n  },\r\n  {\r\n    name: 'Italy',\r\n    code: 'IT'\r\n  },\r\n  {\r\n    name: 'Jamaica',\r\n    code: 'JM'\r\n  },\r\n  {\r\n    name: 'Japan',\r\n    code: 'JP'\r\n  },\r\n  {\r\n    name: 'Jersey',\r\n    code: 'JE'\r\n  },\r\n  {\r\n    name: 'Jordan',\r\n    code: 'JO'\r\n  },\r\n  {\r\n    name: 'Kazakhstan',\r\n    code: 'KZ'\r\n  },\r\n  {\r\n    name: 'Kenya',\r\n    code: 'KE'\r\n  },\r\n  {\r\n    name: 'Kiribati',\r\n    code: 'KI'\r\n  },\r\n  {\r\n    name: 'Korea, Republic of',\r\n    code: 'KR'\r\n  },\r\n  {\r\n    name: 'Kuwait',\r\n    code: 'KW'\r\n  },\r\n  {\r\n    name: 'Kyrgyzstan',\r\n    code: 'KG'\r\n  },\r\n  {\r\n    name: 'Lao Peoples Democratic Republic',\r\n    code: 'LA'\r\n  },\r\n  {\r\n    name: 'Latvia',\r\n    code: 'LV'\r\n  },\r\n  {\r\n    name: 'Lebanon',\r\n    code: 'LB'\r\n  },\r\n  {\r\n    name: 'Lesotho',\r\n    code: 'LS'\r\n  },\r\n  {\r\n    name: 'Liberia',\r\n    code: 'LR'\r\n  },\r\n  {\r\n    name: 'Libyan Arab Jamahiriya',\r\n    code: 'LY'\r\n  },\r\n  {\r\n    name: 'Liechtenstein',\r\n    code: 'LI'\r\n  },\r\n  {\r\n    name: 'Lithuania',\r\n    code: 'LT'\r\n  },\r\n  {\r\n    name: 'Luxembourg',\r\n    code: 'LU'\r\n  },\r\n  {\r\n    name: 'Macao',\r\n    code: 'MO'\r\n  },\r\n  {\r\n    name: 'Macedonia, The Former Yugoslav Republic of',\r\n    code: 'MK'\r\n  },\r\n  {\r\n    name: 'Madagascar',\r\n    code: 'MG'\r\n  },\r\n  {\r\n    name: 'Malawi',\r\n    code: 'MW'\r\n  },\r\n  {\r\n    name: 'Malaysia',\r\n    code: 'MY'\r\n  },\r\n  {\r\n    name: 'Maldives',\r\n    code: 'MV'\r\n  },\r\n  {\r\n    name: 'Mali',\r\n    code: 'ML'\r\n  },\r\n  {\r\n    name: 'Malta',\r\n    code: 'MT'\r\n  },\r\n  {\r\n    name: 'Marshall Islands',\r\n    code: 'MH'\r\n  },\r\n  {\r\n    name: 'Martinique',\r\n    code: 'MQ'\r\n  },\r\n  {\r\n    name: 'Mauritania',\r\n    code: 'MR'\r\n  },\r\n  {\r\n    name: 'Mauritius',\r\n    code: 'MU'\r\n  },\r\n  {\r\n    name: 'Mayotte',\r\n    code: 'YT'\r\n  },\r\n  {\r\n    name: 'Mexico',\r\n    code: 'MX'\r\n  },\r\n  {\r\n    name: 'Micronesia, Federated States of',\r\n    code: 'FM'\r\n  },\r\n  {\r\n    name: 'Moldova, Republic of',\r\n    code: 'MD'\r\n  },\r\n  {\r\n    name: 'Monaco',\r\n    code: 'MC'\r\n  },\r\n  {\r\n    name: 'Mongolia',\r\n    code: 'MN'\r\n  },\r\n  {\r\n    name: 'Montserrat',\r\n    code: 'MS'\r\n  },\r\n  {\r\n    name: 'Morocco',\r\n    code: 'MA'\r\n  },\r\n  {\r\n    name: 'Mozambique',\r\n    code: 'MZ'\r\n  },\r\n  {\r\n    name: 'Myanmar',\r\n    code: 'MM'\r\n  },\r\n  {\r\n    name: 'Namibia',\r\n    code: 'NA'\r\n  },\r\n  {\r\n    name: 'Nauru',\r\n    code: 'NR'\r\n  },\r\n  {\r\n    name: 'Nepal',\r\n    code: 'NP'\r\n  },\r\n  {\r\n    name: 'Netherlands',\r\n    code: 'NL'\r\n  },\r\n  {\r\n    name: 'Netherlands Antilles',\r\n    code: 'AN'\r\n  },\r\n  {\r\n    name: 'New Caledonia',\r\n    code: 'NC'\r\n  },\r\n  {\r\n    name: 'New Zealand',\r\n    code: 'NZ'\r\n  },\r\n  {\r\n    name: 'Nicaragua',\r\n    code: 'NI'\r\n  },\r\n  {\r\n    name: 'Niger',\r\n    code: 'NE'\r\n  },\r\n  {\r\n    name: 'Nigeria',\r\n    code: 'NG'\r\n  },\r\n  {\r\n    name: 'Niue',\r\n    code: 'NU'\r\n  },\r\n  {\r\n    name: 'Norfolk Island',\r\n    code: 'NF'\r\n  },\r\n  {\r\n    name: 'Northern Mariana Islands',\r\n    code: 'MP'\r\n  },\r\n  {\r\n    name: 'Norway',\r\n    code: 'NO'\r\n  },\r\n  {\r\n    name: 'Oman',\r\n    code: 'OM'\r\n  },\r\n  {\r\n    name: 'Pakistan',\r\n    code: 'PK'\r\n  },\r\n  {\r\n    name: 'Palau',\r\n    code: 'PW'\r\n  },\r\n  {\r\n    name: 'Palestinian Territory, Occupied',\r\n    code: 'PS'\r\n  },\r\n  {\r\n    name: 'Panama',\r\n    code: 'PA'\r\n  },\r\n  {\r\n    name: 'Papua New Guinea',\r\n    code: 'PG'\r\n  },\r\n  {\r\n    name: 'Paraguay',\r\n    code: 'PY'\r\n  },\r\n  {\r\n    name: 'Peru',\r\n    code: 'PE'\r\n  },\r\n  {\r\n    name: 'Philippines',\r\n    code: 'PH'\r\n  },\r\n  {\r\n    name: 'Pitcairn',\r\n    code: 'PN'\r\n  },\r\n  {\r\n    name: 'Poland',\r\n    code: 'PL'\r\n  },\r\n  {\r\n    name: 'Portugal',\r\n    code: 'PT'\r\n  },\r\n  {\r\n    name: 'Qatar',\r\n    code: 'QA'\r\n  },\r\n  {\r\n    name: 'Reunion',\r\n    code: 'RE'\r\n  },\r\n  {\r\n    name: 'Romania',\r\n    code: 'RO'\r\n  },\r\n  {\r\n    name: 'Russian Federation',\r\n    code: 'RU'\r\n  },\r\n  {\r\n    name: 'RWANDA',\r\n    code: 'RW'\r\n  },\r\n  {\r\n    name: 'Saint Helena',\r\n    code: 'SH'\r\n  },\r\n  {\r\n    name: 'Saint Kitts and Nevis',\r\n    code: 'KN'\r\n  },\r\n  {\r\n    name: 'Saint Lucia',\r\n    code: 'LC'\r\n  },\r\n  {\r\n    name: 'Saint Pierre and Miquelon',\r\n    code: 'PM'\r\n  },\r\n  {\r\n    name: 'Saint Vincent and the Grenadines',\r\n    code: 'VC'\r\n  },\r\n  {\r\n    name: 'Samoa',\r\n    code: 'WS'\r\n  },\r\n  {\r\n    name: 'San Marino',\r\n    code: 'SM'\r\n  },\r\n  {\r\n    name: 'Sao Tome and Principe',\r\n    code: 'ST'\r\n  },\r\n  {\r\n    name: 'Saudi Arabia',\r\n    code: 'SA'\r\n  },\r\n  {\r\n    name: 'Senegal',\r\n    code: 'SN'\r\n  },\r\n  {\r\n    name: 'Serbia and Montenegro',\r\n    code: 'CS'\r\n  },\r\n  {\r\n    name: 'Seychelles',\r\n    code: 'SC'\r\n  },\r\n  {\r\n    name: 'Sierra Leone',\r\n    code: 'SL'\r\n  },\r\n  {\r\n    name: 'Singapore',\r\n    code: 'SG'\r\n  },\r\n  {\r\n    name: 'Slovakia',\r\n    code: 'SK'\r\n  },\r\n  {\r\n    name: 'Slovenia',\r\n    code: 'SI'\r\n  },\r\n  {\r\n    name: 'Solomon Islands',\r\n    code: 'SB'\r\n  },\r\n  {\r\n    name: 'Somalia',\r\n    code: 'SO'\r\n  },\r\n  {\r\n    name: 'South Africa',\r\n    code: 'ZA'\r\n  },\r\n  {\r\n    name: 'South Georgia and the South Sandwich Islands',\r\n    code: 'GS'\r\n  },\r\n  {\r\n    name: 'Spain',\r\n    code: 'ES'\r\n  },\r\n  {\r\n    name: 'Sri Lanka',\r\n    code: 'LK'\r\n  },\r\n  {\r\n    name: 'Suriname',\r\n    code: 'SR'\r\n  },\r\n  {\r\n    name: 'Svalbard and Jan Mayen',\r\n    code: 'SJ'\r\n  },\r\n  {\r\n    name: 'Swaziland',\r\n    code: 'SZ'\r\n  },\r\n  {\r\n    name: 'Sweden',\r\n    code: 'SE'\r\n  },\r\n  {\r\n    name: 'Switzerland',\r\n    code: 'CH'\r\n  },\r\n  {\r\n    name: 'Taiwan, Province of China',\r\n    code: 'TW'\r\n  },\r\n  {\r\n    name: 'Tajikistan',\r\n    code: 'TJ'\r\n  },\r\n  {\r\n    name: 'Tanzania, United Republic of',\r\n    code: 'TZ'\r\n  },\r\n  {\r\n    name: 'Thailand',\r\n    code: 'TH'\r\n  },\r\n  {\r\n    name: 'Timor-Leste',\r\n    code: 'TL'\r\n  },\r\n  {\r\n    name: 'Togo',\r\n    code: 'TG'\r\n  },\r\n  {\r\n    name: 'Tokelau',\r\n    code: 'TK'\r\n  },\r\n  {\r\n    name: 'Tonga',\r\n    code: 'TO'\r\n  },\r\n  {\r\n    name: 'Trinidad and Tobago',\r\n    code: 'TT'\r\n  },\r\n  {\r\n    name: 'Tunisia',\r\n    code: 'TN'\r\n  },\r\n  {\r\n    name: 'Turkey',\r\n    code: 'TR'\r\n  },\r\n  {\r\n    name: 'Turkmenistan',\r\n    code: 'TM'\r\n  },\r\n  {\r\n    name: 'Turks and Caicos Islands',\r\n    code: 'TC'\r\n  },\r\n  {\r\n    name: 'Tuvalu',\r\n    code: 'TV'\r\n  },\r\n  {\r\n    name: 'Uganda',\r\n    code: 'UG'\r\n  },\r\n  {\r\n    name: 'Ukraine',\r\n    code: 'UA'\r\n  },\r\n  {\r\n    name: 'United Arab Emirates',\r\n    code: 'AE'\r\n  },\r\n  {\r\n    name: 'United Kingdom',\r\n    code: 'GB'\r\n  },\r\n  {\r\n    name: 'United States',\r\n    code: 'US'\r\n  },\r\n  {\r\n    name: 'United States Minor Outlying Islands',\r\n    code: 'UM'\r\n  },\r\n  {\r\n    name: 'Uruguay',\r\n    code: 'UY'\r\n  },\r\n  {\r\n    name: 'Uzbekistan',\r\n    code: 'UZ'\r\n  },\r\n  {\r\n    name: 'Vanuatu',\r\n    code: 'VU'\r\n  },\r\n  {\r\n    name: 'Venezuela',\r\n    code: 'VE'\r\n  },\r\n  {\r\n    name: 'Viet Nam',\r\n    code: 'VN'\r\n  },\r\n  {\r\n    name: 'Virgin Islands, British',\r\n    code: 'VG'\r\n  },\r\n  {\r\n    name: 'Virgin Islands, U.S.',\r\n    code: 'VI'\r\n  },\r\n  {\r\n    name: 'Wallis and Futuna',\r\n    code: 'WF'\r\n  },\r\n  {\r\n    name: 'Western Sahara',\r\n    code: 'EH'\r\n  },\r\n  {\r\n    name: 'Yemen',\r\n    code: 'YE'\r\n  },\r\n  {\r\n    name: 'Zambia',\r\n    code: 'ZM'\r\n  },\r\n  {\r\n    name: 'Zimbabwe',\r\n    code: 'ZW'\r\n  }\r\n];\r\n\r\n\r\nexport {countries, RetailersService}\r\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\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\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\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\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 PageHeader          from '@/components/products/pageheader.vue';\r\nimport { factory       }   from '@/logging';\r\nimport { RetailersForm }   from \"@wwinc/email/models/retailers-form\";\r\nimport { useVuelidate  }   from \"@vuelidate/core\";\r\nimport { defineComponent } from '@vue/composition-api'\r\nimport {\r\n  countries,\r\n  State\r\n  } from '@/services/retailers.service';\r\n\r\nimport {\r\n  required,\r\n  requiredIf,\r\n  email,\r\n  alpha,\r\n  minLength,\r\n  maxLength,\r\n  numeric,\r\n  helpers,\r\n} from \"@vuelidate/validators\";\r\n\r\nconst logger = factory.getLogger('component.retailers');\r\n\r\n\r\ninterface Countries {\r\n  availableOptions: any,\r\n  selectedOption: {\r\n    name: string,\r\n    code: string,\r\n  },\r\n}\r\n\r\nenum FormType {\r\n  LocateRetailer = 1,\r\n  BecomeRetailer = 0,\r\n  None           = -1\r\n}\r\n\r\nenum ProjectType {\r\n  Both            = \"Both\",\r\n  Remodel         = \"Remodel\",\r\n  NewConstruction = \"New Construction\"\r\n}\r\n\r\ninterface CommentInfo {\r\n  comments:    string,\r\n  describe:    string,\r\n  projectType: ProjectType\r\n}\r\n\r\ninterface ContactInfo {\r\n  phone:        string\r\n  businessName: string,\r\n  phoneExt:     string\r\n}\r\n\r\ninterface RetailerForm {\r\n  email:            string,\r\n  firstName:        string,\r\n  lastName:         string,\r\n  streetAddress:    string,\r\n  city:             string,\r\n  state:            State | '',\r\n  zip:              string,\r\n}\r\n\r\ninterface Data {\r\n  ProjectType:      any,  // Allows enum accessible in Component\r\n  FormType:         any,\r\n  State:            any,\r\n  mask:             string,\r\n  errorMessage:     null | string,\r\n  working:          boolean,\r\n  formType:         FormType,\r\n  success:          boolean,\r\n  countries:        Countries,\r\n  retailersForm:    RetailerForm,\r\n  comment:          CommentInfo,\r\n  contact:          ContactInfo,\r\n  distributionArea: number,\r\n}\r\n\r\nexport default defineComponent({\r\n  name: 'Retailers',\r\n\r\n  components: {\r\n    PageHeader,\r\n  },\r\n\r\n  props: {\r\n    section: String\r\n  },\r\n\r\n  inject: ['$retailersService'],\r\n\r\n  setup () {\r\n    return {\r\n      v$: useVuelidate(),\r\n    }\r\n  },\r\n\r\n  data(): Data {\r\n    return {\r\n      ProjectType,  // Allows enum accessible in Component\r\n      FormType,\r\n      State,\r\n      mask:         '(###) ###-####',\r\n      errorMessage: null,\r\n      working:      false,\r\n      formType:     FormType.None,\r\n      success:      false,\r\n\r\n      retailersForm: {\r\n        email:         '',\r\n        lastName:      '',\r\n        firstName:     '',\r\n        streetAddress: '',\r\n        city:          '',\r\n        state:         '',\r\n        zip:           ''\r\n      },\r\n\r\n      contact: {\r\n        phone:        '',\r\n        businessName: '',\r\n        phoneExt:     '',\r\n      },\r\n\r\n      comment: {\r\n        comments:    '',\r\n        describe:    '',\r\n        projectType: ProjectType.Remodel\r\n      },\r\n\r\n      countries: {\r\n        availableOptions: countries,\r\n        selectedOption: {\r\n          name: 'United States',\r\n          code: 'US'\r\n        }\r\n      },\r\n\r\n      distributionArea: 1,\r\n    };\r\n  },\r\n\r\n  validations() {\r\n    return {\r\n      retailersForm: {\r\n        email: {\r\n          required: helpers.withMessage('An email is required', required),\r\n          email:    helpers.withMessage('Enter a valid email',  email),\r\n        },\r\n        firstName: {\r\n          required: helpers.withMessage('First name is required', required),\r\n          alpha:    helpers.withMessage('Enter letters only',     alpha),\r\n        },\r\n        lastName: {\r\n          required: helpers.withMessage('Last name is required', required),\r\n          alpha:    helpers.withMessage('Enter letters only',    alpha),\r\n        },\r\n        streetAddress: {\r\n          required: helpers.withMessage('Street address is required', required),\r\n        },\r\n        city: {\r\n          required: helpers.withMessage('City is required',   required),\r\n        },\r\n        state: {\r\n          required: helpers.withMessage('State is required',  required),\r\n          alpha:    helpers.withMessage('Enter letters only', alpha),\r\n        },\r\n        zip: {\r\n          required:  helpers.withMessage('Zipcode is required',   required),\r\n          numeric:   helpers.withMessage('Enter numbers only',    numeric),\r\n          maxLength: helpers.withMessage('Enter a valid zipcode', maxLength(5)),\r\n          minLength: helpers.withMessage('Enter a valid zipcode', minLength(5)),\r\n        },\r\n      },\r\n      contact: {\r\n        phone: {\r\n          required:  helpers.withMessage('Phone number is required',   required),\r\n          maxLength: helpers.withMessage('Enter a valid phone number', maxLength(14)),\r\n          minLength: helpers.withMessage('Enter a valid phone number', minLength(14)),\r\n        },\r\n        businessName: {\r\n          // Only requires business name on the become a retailer page\r\n          required: helpers.withMessage( \"Business Name is required\",\r\n            requiredIf(this.formType === FormType.BecomeRetailer)\r\n          ),\r\n        },\r\n        phoneExt: {\r\n          numeric: helpers.withMessage('Enter numbers only', numeric),\r\n        }\r\n      },\r\n    };\r\n  },\r\n\r\n  computed: {\r\n    submitEnabled() {\r\n      return true\r\n    },\r\n\r\n    /**\r\n     * @name getStates\r\n     * @description - Converts a full Enum type into an array useable by Vuetify\r\n     * @returns - An array of objects that contain key/value pairs for each state\r\n     */\r\n    getStates() {\r\n      const states = [];\r\n      for (const [key, value] of Object.entries(State)) {\r\n        states.push(\r\n          {\r\n            key:   key,\r\n            value: value,\r\n          }\r\n        );\r\n      }\r\n      return states;\r\n    },\r\n  },\r\n\r\n  created(): void {\r\n    logger.trace('Retailers component has been created.');\r\n  },\r\n\r\n  methods: {\r\n    resetForm() {\r\n      this.retailersForm = {\r\n        email:         '',\r\n        lastName:      '',\r\n        firstName:     '',\r\n        streetAddress: '',\r\n        city:          '',\r\n        state:         '',\r\n        zip:           ''\r\n      },\r\n\r\n      this.contact = {\r\n        phone:        '',\r\n        businessName: '',\r\n        phoneExt:     '',\r\n      },\r\n\r\n      this.comment = {\r\n        comments:    '',\r\n        describe:    '',\r\n        projectType: ProjectType.Remodel\r\n      },\r\n\r\n      this.countries.selectedOption = {\r\n        name: 'United States',\r\n        code: 'US'\r\n      }\r\n\r\n      // Resets form validation to clean state\r\n      this.v$.$reset();\r\n    },\r\n\r\n    /**\r\n     *\r\n     * Handles the submit button click by attempting to send emails.\r\n     * @param event\r\n     */\r\n    async submitRequest() {\r\n      // Only submits data if it is valid\r\n      if (!await this.v$.$validate()) {\r\n        this.errorMessage = \"A field is invalid\";\r\n        return;\r\n      }\r\n\r\n      if (this.success) {\r\n        this.errorMessage = \"You have already submitted a request\";\r\n        return;\r\n      }\r\n\r\n      logger.debug('OnSubmit has been called');\r\n      this.errorMessage = null;\r\n\r\n      const formData: RetailersForm = {\r\n        retailer:         this.formType,\r\n        firstName:        this.retailersForm.firstName,\r\n        lastName:         this.retailersForm.lastName,\r\n        email:            this.retailersForm.email,\r\n        contact:          this.contact,\r\n        streetAddress:    this.retailersForm.streetAddress,\r\n        city:             this.retailersForm.city,\r\n        state:            this.retailersForm.state,\r\n        zip:              this.retailersForm.zip,\r\n        country:          this.countries.selectedOption.name,\r\n        projectType:      this.comment.projectType,\r\n        describe:         this.comment.describe,\r\n        comments:         this.comment.comments,\r\n        distributionArea: this.distributionArea\r\n      };\r\n\r\n      (this as any).$retailersService.sendEmails(formData).then(\r\n        (response: any) => {\r\n          console.log(response)\r\n          if (response == true) {\r\n            this.success = true;\r\n            this.resetForm();\r\n          } else {\r\n            this.errorMessage = 'This form could not be submitted. Please try again after a few moments.'\r\n          }\r\n        }\r\n      )\r\n\r\n      // (this as any).$retailersService.sendEmails(formData).subscribe(\r\n      //     (resp: any) => {\r\n      //       console.log(resp)\r\n      //       if (resp == true) {\r\n      //         this.success = true;\r\n      //         (this as any).resetForm();\r\n      //       } else {\r\n      //         this.error = true;\r\n      //         this.errorMessage = 'This form could not be submitted. Please try again after a few moments.'\r\n      //       }\r\n      //     }\r\n      // );\r\n\r\n      // (this as any).$retailersService.EmailRetailersForm(\r\n      //     formData\r\n      // ).then((resp: any) => {\r\n      //     this.success = !!resp;\r\n      //     if (this.success) {\r\n      //       (this as any).resetForm();\r\n      //     } else {\r\n      //       this.error = true;\r\n      //       this.errorMessage = 'This form could not be submitted. Please try again after a few moments.';\r\n      //     }\r\n      // });\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/@vue/cli-plugin-typescript/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!./retailers.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/@vue/cli-plugin-typescript/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!./retailers.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./retailers.vue?vue&type=template&id=5b1565f4&scoped=true&\"\nimport script from \"./retailers.vue?vue&type=script&lang=ts&\"\nexport * from \"./retailers.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./retailers.vue?vue&type=style&index=0&id=5b1565f4&prod&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  \"5b1565f4\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"resources\"}}),_c('div',{staticClass:\"container\",staticStyle:{\"margin-bottom\":\"120px\"}},[_vm._m(0),(_vm.downloads)?_c('div',{staticClass:\"row justify-content-center\"},[_vm._l((_vm.downloads),function(download){return _c('div',{key:download.id,staticClass:\"col-12 col-md-4 col-lg-3 align-items-stretch my-2\"},[_c('div',{staticClass:\"card h-100\"},[_c('img',{staticClass:\"card-img-top\",attrs:{\"alt\":\"Aspect Brochure preview\",\"src\":require(\"../assets/media/Downloads/brochurescreenshot.png\")}}),_c('div',{staticClass:\"card-body text-center d-flex flex-wrap justify-content-center\"},[_c('h4',{staticClass:\"card-title col-12\"},[_vm._v(\" \"+_vm._s(download.name)+\" \")]),_c('p',{staticClass:\"card-text mt-1 col-12\"},[_vm._v(\" \"+_vm._s(download.description)+\" \")]),_c('a',{staticClass:\"btn btn-aspect-red align-self-end mt-3 col-8\",attrs:{\"target\":\"_blank\",\"href\":download.url}},[_vm._v(\" View / Download \")])])])])}),_vm._m(1)],2):_vm._e()])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container d-xs-block d-sm-block d-md-none mt-0 mb-3\"},[_c('h3',{staticClass:\"text-center\"},[_vm._v(\"Resources\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-12 col-md-8 mt-3 text-center\"},[_c('div',{staticClass:\"ratio ratio-16x9\"},[_c('iframe',{staticClass:\"embed-responsive-item\",attrs:{\"id\":\"vid_frame\",\"src\":\"https://www.youtube.com/embed/F62h2kElxeU\"}})])])}]\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\r\nimport Vue         from 'vue';\r\nimport { factory } from '@/logging';\r\n\r\nimport { AzureStorageBlob } from '@wwinc/azure-storage';\r\nimport PageHeader           from '@/components/products/pageheader.vue';\r\nimport Resource             from '@/models/resource.model';\r\n\r\n\r\nconst logger = factory.getLogger('component.resources');\r\n\r\nexport default Vue.extend({\r\n  inject:     [\r\n    '$resourcesService'\r\n  ],\r\n  name:       'resources',\r\n  props:      {\r\n    section: String\r\n  },\r\n  components: {\r\n    PageHeader\r\n  },\r\n  created(): void {\r\n    logger.trace('Resources component has been created.');\r\n  },\r\n  methods:  {},\r\n  mounted:  function () {\r\n    logger.debug('Getting images from container aspect-documents-resources');\r\n\r\n    this.$resourcesService.getResources().subscribe(\r\n      (resources: Resource[]) => {\r\n        this.downloads = resources;\r\n        return this.downloads;\r\n      }\r\n    );\r\n  },\r\n  computed: {},\r\n  data() {\r\n    return {\r\n      //set runtime variables\r\n      navbar:    'resources',\r\n      downloads: [] as AzureStorageBlob[]\r\n    };\r\n  }\r\n} as any);\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/@vue/cli-plugin-typescript/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!./resources.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/@vue/cli-plugin-typescript/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!./resources.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./resources.vue?vue&type=template&id=12a5da43&\"\nimport script from \"./resources.vue?vue&type=script&lang=ts&\"\nexport * from \"./resources.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  null,\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('PageHeader',{attrs:{\"section\":\"privacy\"}}),_c('h1',{staticClass:\"text-center mt-0\"},[_vm._v(\"Privacy Policy\")]),_vm._m(0)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wrapper\"},[_c('p',[_vm._v(\"Last updated: May 10, 2023\")]),_c('p',[_vm._v(\" This Privacy Policy describes Our policies and procedures on the collection, use and disclosure of Your information when You use the Service and tells You about Your privacy rights and how the law protects You. \")]),_c('p',[_vm._v(\" We use Your Personal data to provide and improve the Service. By using the Service, You agree to the collection and use of information in accordance with this Privacy Policy. \")]),_c('h1',[_vm._v(\"Interpretation and Definitions\")]),_c('h2',[_vm._v(\"Interpretation\")]),_c('p',[_vm._v(\" The words of which the initial letter is capitalized have meanings defined under the following conditions. The following definitions shall have the same meaning regardless of whether they appear in singular or in plural. \")]),_c('h2',[_vm._v(\"Definitions\")]),_c('p',[_vm._v(\"For the purposes of this Privacy Policy:\")]),_c('ul',[_c('li',[_c('p',[_c('strong',[_vm._v(\"Account\")]),_vm._v(\" means a unique account created for You to access our Service or parts of our Service. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Affiliate\")]),_vm._v(\" means an entity that controls, is controlled by or is under common control with a party, where \\\"control\\\" means ownership of 50% or more of the shares, equity interest or other securities entitled to vote for election of directors or other managing authority. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Business\")]),_vm._v(\", for the purpose of CCPA/CPRA, refers to the Company as the legal entity that collects Consumers' personal information and determines the purposes and means of the processing of Consumers' personal information, or on behalf of which such information is collected and that alone, or jointly with others, determines the purposes and means of the processing of consumers' personal information, that does business in the State of California. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"CCPA\")]),_vm._v(\" and/or \"),_c('strong',[_vm._v(\"CPRA\")]),_vm._v(\" refers to California Consumer Privacy Act (the \\\"CCPA\\\") as amended by the California Privacy Rights Act of 2020 (the \\\"CPRA\\\"). \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Company\")]),_vm._v(\" (referred to as either \\\"the Company\\\", \\\"We\\\", \\\"Us\\\" or \\\"Our\\\" in this Agreement) refers to W. W. Wood Products, Inc., 10182 Old Highway 60; Dudley, MO 63936. \")]),_c('p',[_vm._v(\" For the purpose of the GDPR, the Company is the Data Controller. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Consumer\")]),_vm._v(\", for the purpose of the CCPA/CPRA, means a natural person who is a California resident. A resident, as defined in the law, includes (1) every individual who is in the USA for other than a temporary or transitory purpose, and (2) every individual who is domiciled in the USA who is outside the USA for a temporary or transitory purpose. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Cookies\")]),_vm._v(\" are small files that are placed on Your computer, mobile device or any other device by a website, containing the details of Your browsing history on that website among its many uses. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Country\")]),_vm._v(\" refers to: Missouri, United States \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Data Controller\")]),_vm._v(\", for the purposes of the GDPR (General Data Protection Regulation), refers to the Company as the legal person which alone or jointly with others determines the purposes and means of the processing of Personal Data. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Device\")]),_vm._v(\" means any device that can access the Service such as a computer, a cellphone or a digital tablet. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Do Not Track\")]),_vm._v(\" (DNT) is a concept that has been promoted by US regulatory authorities, in particular the U.S. Federal Trade Commission (FTC), for the Internet industry to develop and implement a mechanism for allowing internet users to control the tracking of their online activities across websites. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"GDPR\")]),_vm._v(\" refers to EU General Data Protection Regulation. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Personal Data\")]),_vm._v(\" is any information that relates to an identified or identifiable individual. \")]),_c('p',[_vm._v(\" For the purposes of GDPR, Personal Data means any information relating to You such as a name, an identification number, location data, online identifier or to one or more factors specific to the physical, physiological, genetic, mental, economic, cultural or social identity. \")]),_c('p',[_vm._v(\" For the purposes of the CCPA/CPRA, Personal Data means any information that identifies, relates to, describes or is capable of being associated with, or could reasonably be linked, directly or indirectly, with You. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Service\")]),_vm._v(\" refers to the Website. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Service Provider\")]),_vm._v(\" means any natural or legal person who processes the data on behalf of the Company. It refers to third-party companies or individuals employed by the Company to facilitate the Service, to provide the Service on behalf of the Company, to perform services related to the Service or to assist the Company in analyzing how the Service is used. For the purpose of the GDPR, Service Providers are considered Data Processors. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Usage Data\")]),_vm._v(\" refers to data collected automatically, either generated by the use of the Service or from the Service infrastructure itself (for example, the duration of a page visit). \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Website\")]),_vm._v(\" refers to Aspect, accessible from \"),_c('a',{attrs:{\"href\":\"https://aspectcabinetry.com\",\"rel\":\"external nofollow noopener\",\"target\":\"_blank\"}},[_vm._v(\" https://aspectcabinetry.com \")])])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"You\")]),_vm._v(\" means the individual accessing or using the Service, or the company, or other legal entity on behalf of which such individual is accessing or using the Service, as applicable. \")]),_c('p',[_vm._v(\" Under GDPR, You can be referred to as the Data Subject or as the User as you are the individual using the Service. \")])])]),_c('h1',[_vm._v(\"Collecting and Using Your Personal Data\")]),_c('h2',[_vm._v(\"Types of Data Collected\")]),_c('h3',[_vm._v(\"Personal Data\")]),_c('p',[_vm._v(\" While using Our Service, We may ask You to provide Us with certain personally identifiable information that can be used to contact or identify You. Personally identifiable information may include, but is not limited to: \")]),_c('ul',[_c('li',[_c('p',[_vm._v(\"Email address\")])]),_c('li',[_c('p',[_vm._v(\"First name and last name\")])]),_c('li',[_c('p',[_vm._v(\"Phone number\")])]),_c('li',[_c('p',[_vm._v(\"Address, State, Province, ZIP/Postal code, City\")])]),_c('li',[_c('p',[_vm._v(\"Usage Data\")])])]),_c('h3',[_vm._v(\"Usage Data\")]),_c('p',[_vm._v(\" Usage Data is collected automatically when using the Service. \")]),_c('p',[_vm._v(\" Usage Data may include information such as Your Device's Internet Protocol address (e.g. IP address), browser type, browser version, the pages of our Service that You visit, the time and date of Your visit, the time spent on those pages, unique device identifiers and other diagnostic data. \")]),_c('p',[_vm._v(\" When You access the Service by or through a mobile device, We may collect certain information automatically, including, but not limited to, the type of mobile device You use, Your mobile device unique ID, the IP address of Your mobile device, Your mobile operating system, the type of mobile Internet browser You use, unique device identifiers and other diagnostic data. \")]),_c('p',[_vm._v(\" We may also collect information that Your browser sends whenever You visit our Service or when You access the Service by or through a mobile device. \")]),_c('h3',[_vm._v(\"Tracking Technologies and Cookies\")]),_c('p',[_vm._v(\" We use Cookies and similar tracking technologies to track the activity on Our Service and store certain information. Tracking technologies used are beacons, tags, and scripts to collect and track information and to improve and analyze Our Service. The technologies We use may include: \")]),_c('ul',[_c('li',[_c('p',[_c('strong',[_vm._v(\"Cookies or Browser Cookies.\")]),_vm._v(\" A cookie is a small file placed on Your Device. You can instruct Your browser to refuse all Cookies or to indicate when a Cookie is being sent. However, if You do not accept Cookies, You may not be able to use some parts of our Service. Unless you have adjusted Your browser setting so that it will refuse Cookies, our Service may use Cookies. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Web Beacons.\")]),_vm._v(\" Certain sections of our Service and our emails may contain small electronic files known as web beacons (also referred to as clear gifs, pixel tags, and single-pixel gifs) that permit the Company, for example, to count users who have visited those pages or opened an email and for other related website statistics (for example, recording the popularity of a certain section and verifying system and server integrity). \")])])]),_c('p',[_vm._v(\" Cookies can be \\\"Persistent\\\" or \\\"Session\\\" Cookies. Persistent Cookies remain on Your personal computer or mobile device when You go offline, while Session Cookies are deleted as soon as You close Your web browser. Learn more about cookies on the \"),_c('a',{attrs:{\"href\":\"https://www.privacypolicies.com/blog/privacy-policy-template/#Use_Of_Cookies_Log_Files_And_Tracking\",\"target\":\"_blank\"}},[_vm._v(\" Privacy Policies website \")]),_vm._v(\" article. \")]),_c('p',[_vm._v(\"We use both Session and Persistent Cookies for the purposes set out below:\")]),_c('ul',[_c('li',[_c('strong',[_vm._v(\"Necessary / Essential Cookies\")]),_c('p',[_vm._v(\"Type: Session Cookies\")]),_c('p',[_vm._v(\"Administered by: Us\")]),_c('p',[_vm._v(\" Purpose: These Cookies are essential to provide You with services available through the Website and to enable You to use some of its features. They help to authenticate users and prevent fraudulent use of user accounts. Without these Cookies, the services that You have asked for cannot be provided, and We only use these Cookies to provide You with those services. \")])]),_c('li',[_c('strong',[_vm._v(\"Cookies Policy / Notice Acceptance Cookies\")]),_c('p',[_vm._v(\"Type: Persistent Cookies\")]),_c('p',[_vm._v(\"Administered by: Us\")]),_c('p',[_vm._v(\" Purpose: These Cookies identify if users have accepted the use of cookies on the Website. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Functionality Cookies\")])]),_c('p',[_vm._v(\"Type: Persistent Cookies\")]),_c('p',[_vm._v(\"Administered by: Us\")]),_c('p',[_vm._v(\" Purpose: These Cookies allow us to remember choices You make when You use the Website, such as remembering your login details or language preference. The purpose of these Cookies is to provide You with a more personal experience and to avoid You having to re-enter your preferences every time You use the Website. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Tracking and Performance Cookies\")])]),_c('p',[_vm._v(\"Type: Persistent Cookies\")]),_c('p',[_vm._v(\"Administered by: Third-Parties\")]),_c('p',[_vm._v(\" Purpose: These Cookies are used to track information about traffic to the Website and how users use the Website. The information gathered via these Cookies may directly or indirectly identify you as an individual visitor. This is because the information collected is typically linked to a pseudonymous identifier associated with the device you use to access the Website. We may also use these Cookies to test new pages, features or new functionality of the Website to see how our users react to them. \")])])]),_c('p',[_vm._v(\" For more information about the cookies we use and your choices regarding cookies, please visit our Cookies Policy or the Cookies section of our Privacy Policy. \")]),_c('h2',[_vm._v(\"Use of Your Personal Data\")]),_c('p',[_vm._v(\"The Company may use Personal Data for the following purposes:\")]),_c('ul',[_c('li',[_c('p',[_c('strong',[_vm._v(\"To provide and maintain our Service\")]),_vm._v(\", including to monitor the usage of our Service. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"To manage Your Account:\")]),_vm._v(\" to manage Your registration as a user of the Service. The Personal Data You provide can give You access to different functionalities of the Service that are available to You as a registered user. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"For the performance of a contract:\")]),_vm._v(\" the development, compliance and undertaking of the purchase contract for the products, items or services You have purchased or of any other contract with Us through the Service. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"To contact You:\")]),_vm._v(\" To contact You by email, telephone calls, SMS, or other equivalent forms of electronic communication, such as a mobile application's push notifications regarding updates or informative communications related to the functionalities, products or contracted services, including the security updates, when necessary or reasonable for their implementation. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"To provide You\")]),_vm._v(\" with news, special offers and general information about other goods, services and events which we offer that are similar to those that you have already purchased or enquired about unless You have opted not to receive such information. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"To manage Your requests:\")]),_vm._v(\" To attend and manage Your requests to Us. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"For business transfers:\")]),_vm._v(\" We may use Your information to evaluate or conduct a merger, divestiture, restructuring, reorganization, dissolution, or other sale or transfer of some or all of Our assets, whether as a going concern or as part of bankruptcy, liquidation, or similar proceeding, in which Personal Data held by Us about our Service users is among the assets transferred. \")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"For other purposes\")]),_vm._v(\": We may use Your information for other purposes, such as data analysis, identifying usage trends, determining the effectiveness of our promotional campaigns and to evaluate and improve our Service, products, services, marketing and your experience. \")])])]),_c('p',[_vm._v(\"We may share Your personal information in the following situations:\")]),_c('ul',[_c('li',[_c('strong',[_vm._v(\"With Service Providers:\")]),_vm._v(\" We may share Your personal information with Service Providers to monitor and analyze the use of our Service, to contact You. \")]),_c('li',[_c('strong',[_vm._v(\"For business transfers:\")]),_vm._v(\" We may share or transfer Your personal information in connection with, or during negotiations of, any merger, sale of Company assets, financing, or acquisition of all or a portion of Our business to another company. \")]),_c('li',[_c('strong',[_vm._v(\"With Affiliates:\")]),_vm._v(\" We may share Your information with Our affiliates, in which case we will require those affiliates to honor this Privacy Policy. Affiliates include Our parent company and any other subsidiaries, joint venture partners or other companies that We control or that are under common control with Us. \")]),_c('li',[_c('strong',[_vm._v(\"With business partners:\")]),_vm._v(\" We may share Your information with Our business partners to offer You certain products, services or promotions. \")]),_c('li',[_c('strong',[_vm._v(\"With other users:\")]),_vm._v(\" when You share personal information or otherwise interact in the public areas with other users, such information may be viewed by all users and may be publicly distributed outside. \")]),_c('li',[_c('strong',[_vm._v(\"With Your consent\")]),_vm._v(\": We may disclose Your personal information for any other purpose with Your consent. \")])]),_c('h2',[_vm._v(\"Retention of Your Personal Data\")]),_c('p',[_vm._v(\" The Company will retain Your Personal Data only for as long as is necessary for the purposes set out in this Privacy Policy. We will retain and use Your Personal Data to the extent necessary to comply with our legal obligations (for example, if we are required to retain your data to comply with applicable laws), resolve disputes, and enforce our legal agreements and policies. \")]),_c('p',[_vm._v(\" The Company will also retain Usage Data for internal analysis purposes. Usage Data is generally retained for a shorter period of time, except when this data is used to strengthen the security or to improve the functionality of Our Service, or We are legally obligated to retain this data for longer time periods. \")]),_c('h2',[_vm._v(\"Transfer of Your Personal Data\")]),_c('p',[_vm._v(\" Your information, including Personal Data, is processed at the Company's operating offices and in any other places where the parties involved in the processing are located. It means that this information may be transferred to — and maintained on — computers located outside of Your state, province, country or other governmental jurisdiction where the data protection laws may differ than those from Your jurisdiction. \")]),_c('p',[_vm._v(\" Your consent to this Privacy Policy followed by Your submission of such information represents Your agreement to that transfer. \")]),_c('p',[_vm._v(\" The Company will take all steps reasonably necessary to ensure that Your data is treated securely and in accordance with this Privacy Policy and no transfer of Your Personal Data will take place to an organization or a country unless there are adequate controls in place including the security of Your data and other personal information. \")]),_c('h2',[_vm._v(\"Delete Your Personal Data\")]),_c('p',[_vm._v(\" You have the right to delete or request that We assist in deleting the Personal Data that We have collected about You. \")]),_c('p',[_vm._v(\" Our Service may give You the ability to delete certain information about You from within the Service. \")]),_c('p',[_vm._v(\" You may update, amend, or delete Your information at any time by signing in to Your Account, if you have one, and visiting the account settings section that allows you to manage Your personal information. You may also contact Us to request access to, correct, or delete any personal information that You have provided to Us. \")]),_c('p',[_vm._v(\" Please note, however, that We may need to retain certain information when we have a legal obligation or lawful basis to do so. \")]),_c('h2',[_vm._v(\"Disclosure of Your Personal Data\")]),_c('h3',[_vm._v(\"Business Transactions\")]),_c('p',[_vm._v(\" If the Company is involved in a merger, acquisition or asset sale, Your Personal Data may be transferred. We will provide notice before Your Personal Data is transferred and becomes subject to a different Privacy Policy. \")]),_c('h3',[_vm._v(\"Law enforcement\")]),_c('p',[_vm._v(\" Under certain circumstances, the Company may be required to disclose Your Personal Data if required to do so by law or in response to valid requests by public authorities (e.g. a court or a government agency). \")]),_c('h3',[_vm._v(\"Other legal requirements\")]),_c('p',[_vm._v(\" The Company may disclose Your Personal Data in the good faith belief that such action is necessary to: \")]),_c('ul',[_c('li',[_vm._v(\"Comply with a legal obligation\")]),_c('li',[_vm._v(\"Protect and defend the rights or property of the Company\")]),_c('li',[_vm._v(\"Prevent or investigate possible wrongdoing in connection with the Service\")]),_c('li',[_vm._v(\"Protect the personal safety of Users of the Service or the public\")]),_c('li',[_vm._v(\"Protect against legal liability\")])]),_c('h2',[_vm._v(\"Security of Your Personal Data\")]),_c('p',[_vm._v(\" The security of Your Personal Data is important to Us, but remember that no method of transmission over the Internet, or method of electronic storage is 100% secure. While We strive to use commercially acceptable means to protect Your Personal Data, We cannot guarantee its absolute security. \")]),_c('h1',[_vm._v(\"Detailed Information on the Processing of Your Personal Data\")]),_c('p',[_vm._v(\" The Service Providers We use may have access to Your Personal Data. These third-party vendors collect, store, use, process and transfer information about Your activity on Our Service in accordance with their Privacy Policies. \")]),_c('h2',[_vm._v(\"Analytics\")]),_c('p',[_vm._v(\" We may use third-party Service providers to monitor and analyze the use of our Service. \")]),_c('ul',[_c('li',[_c('p',[_c('strong',[_vm._v(\"Google Analytics\")])]),_c('p',[_vm._v(\" Google Analytics is a web analytics service offered by Google that tracks and reports website traffic. Google uses the data collected to track and monitor the use of our Service. This data is shared with other Google services. Google may use the collected data to contextualize and personalize the ads of its own advertising network. \")]),_c('p',[_vm._v(\" You can opt-out of having made your activity on the Service available to Google Analytics by installing the Google Analytics opt-out browser add-on. The add-on prevents the Google Analytics JavaScript (ga.js, analytics.js and dc.js) from sharing information with Google Analytics about visits activity. \")]),_c('p',[_vm._v(\" For more information on the privacy practices of Google, please visit the Google Privacy & Terms web page: \"),_c('a',{attrs:{\"href\":\"https://policies.google.com/privacy\",\"rel\":\"external nofollow noopener\",\"target\":\"_blank\"}},[_vm._v(\" https://policies.google.com/privacy \")])])])]),_c('h1',[_vm._v(\"GDPR Privacy\")]),_c('h2',[_vm._v(\"Legal Basis for Processing Personal Data under GDPR\")]),_c('p',[_vm._v(\"We may process Personal Data under the following conditions:\")]),_c('ul',[_c('li',[_c('strong',[_vm._v(\"Consent:\")]),_vm._v(\" You have given Your consent for processing Personal Data for one or more specific purposes. \")]),_c('li',[_c('strong',[_vm._v(\"Performance of a contract:\")]),_vm._v(\" Provision of Personal Data is necessary for the performance of an agreement with You and/or for any pre-contractual obligations thereof. \")]),_c('li',[_c('strong',[_vm._v(\"Legal obligations:\")]),_vm._v(\" Processing Personal Data is necessary for compliance with a legal obligation to which the Company is subject. \")]),_c('li',[_c('strong',[_vm._v(\"Vital interests:\")]),_vm._v(\" Processing Personal Data is necessary in order to protect Your vital interests or of another natural person. \")]),_c('li',[_c('strong',[_vm._v(\"Public interests:\")]),_vm._v(\" Processing Personal Data is related to a task that is carried out in the public interest or in the exercise of official authority vested in the Company. \")]),_c('li',[_c('strong',[_vm._v(\"Legitimate interests:\")]),_vm._v(\" Processing Personal Data is necessary for the purposes of the legitimate interests pursued by the Company. \")])]),_c('p',[_vm._v(\" In any case, the Company will gladly help to clarify the specific legal basis that applies to the processing, and in particular whether the provision of Personal Data is a statutory or contractual requirement, or a requirement necessary to enter into a contract. \")]),_c('h2',[_vm._v(\"Your Rights under the GDPR\")]),_c('p',[_vm._v(\" The Company undertakes to respect the confidentiality of Your Personal Data and to guarantee You can exercise Your rights. \")]),_c('p',[_vm._v(\"You have the right under this Privacy Policy, and by law if You are within the EU, to:\")]),_c('ul',[_c('li',[_c('strong',[_vm._v(\"Request access to Your Personal Data.\")]),_vm._v(\" The right to access, update or delete the information We have on You. Whenever made possible, you can access, update or request deletion of Your Personal Data directly within Your account settings section. If you are unable to perform these actions yourself, please contact Us to assist You. This also enables You to receive a copy of the Personal Data We hold about You. \")]),_c('li',[_c('strong',[_vm._v(\"Request correction of the Personal Data that We hold about You.\")]),_vm._v(\" You have the right to have any incomplete or inaccurate information We hold about You corrected. \")]),_c('li',[_c('strong',[_vm._v(\"Object to processing of Your Personal Data.\")]),_vm._v(\" This right exists where We are relying on a legitimate interest as the legal basis for Our processing and there is something about Your particular situation, which makes You want to object to our processing of Your Personal Data on this ground. You also have the right to object where We are processing Your Personal Data for direct marketing purposes. \")]),_c('li',[_c('strong',[_vm._v(\"Request erasure of Your Personal Data.\")]),_vm._v(\" You have the right to ask Us to delete or remove Personal Data when there is no good reason for Us to continue processing it. \")]),_c('li',[_c('strong',[_vm._v(\"Request the transfer of Your Personal Data.\")]),_vm._v(\" We will provide to You, or to a third-party You have chosen, Your Personal Data in a structured, commonly used, machine-readable format. Please note that this right only applies to automated information which You initially provided consent for Us to use or where We used the information to perform a contract with You. \")]),_c('li',[_c('strong',[_vm._v(\"Withdraw Your consent.\")]),_vm._v(\" You have the right to withdraw Your consent on using your Personal Data. If You withdraw Your consent, We may not be able to provide You with access to certain specific functionalities of the Service. \")])]),_c('h2',[_vm._v(\"Exercising of Your GDPR Data Protection Rights\")]),_c('p',[_vm._v(\" You may exercise Your rights of access, rectification, cancellation and opposition by contacting Us. Please note that we may ask You to verify Your identity before responding to such requests. If You make a request, We will try our best to respond to You as soon as possible. \")]),_c('p',[_vm._v(\" You have the right to complain to a Data Protection Authority about Our collection and use of Your Personal Data. For more information, if You are in the European Economic Area (EEA), please contact Your local data protection authority in the EEA. \")]),_c('h1',[_vm._v(\"CCPA/CPRA Privacy Notice\")]),_c('p',[_vm._v(\" This privacy notice section for California residents supplements the information contained in Our Privacy Policy and it applies solely to all visitors, users, and others who reside in the State of California. \")]),_c('h2',[_vm._v(\"Categories of Personal Information Collected\")]),_c('p',[_vm._v(\" We collect information that identifies, relates to, describes, references, is capable of being associated with, or could reasonably be linked, directly or indirectly, with a particular Consumer or Device. The following is a list of categories of personal information which we may collect or may have been collected from California residents within the last twelve (12) months. \")]),_c('p',[_vm._v(\" Please note that the categories and examples provided in the list below are those defined in the CCPA/CPRA. This does not mean that all examples of that category of personal information were in fact collected by Us, but reflects our good faith belief to the best of Our knowledge that some of that information from the applicable category may be and may have been collected. For example, certain categories of personal information would only be collected if You provided such personal information directly to Us. \")]),_c('ul',[_c('li',[_c('p',[_c('strong',[_vm._v(\"Category A: Identifiers.\")])]),_c('p',[_vm._v(\" Examples: A real name, alias, postal address, unique personal identifier, online identifier, Internet Protocol address, email address, account name, driver's license number, passport number, or other similar identifiers. \")]),_c('p',[_vm._v(\"Collected: Yes.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\" Category B: Personal information categories listed in the California Customer Records statute (Cal. Civ. Code § 1798.80(e)). \")])]),_c('p',[_vm._v(\" Examples: A name, signature, Social Security number, physical characteristics or description, address, telephone number, passport number, driver's license or state identification card number, insurance policy number, education, employment, employment history, bank account number, credit card number, debit card number, or any other financial information, medical information, or health insurance information. Some personal information included in this category may overlap with other categories. \")]),_c('p',[_vm._v(\"Collected: Yes.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\" Category C: Protected classification characteristics under California or federal law. \")])]),_c('p',[_vm._v(\" Examples: Age (40 years or older), race, color, ancestry, national origin, citizenship, religion or creed, marital status, medical condition, physical or mental disability, sex (including gender, gender identity, gender expression, pregnancy or childbirth and related medical conditions), sexual orientation, veteran or military status, genetic information (including familial genetic information). \")]),_c('p',[_vm._v(\"Collected: No.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Category D: Commercial information.\")])]),_c('p',[_vm._v(\"Examples: Records and history of products or services purchased or considered.\")]),_c('p',[_vm._v(\"Collected: No.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Category E: Biometric information.\")])]),_c('p',[_vm._v(\" Examples: Genetic, physiological, behavioral, and biological characteristics, or activity patterns used to extract a template or other identifier or identifying information, such as, fingerprints, faceprints, and voiceprints, iris or retina scans, keystroke, gait, or other physical patterns, and sleep, health, or exercise data. \")]),_c('p',[_vm._v(\"Collected: No.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Category F: Internet or other similar network activity.\")])]),_c('p',[_vm._v(\"Examples: Interaction with our Service or advertisement.\")]),_c('p',[_vm._v(\"Collected: Yes.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Category G: Geolocation data.\")])]),_c('p',[_vm._v(\"Examples: Approximate physical location.\")]),_c('p',[_vm._v(\"Collected: No.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Category H: Sensory data.\")])]),_c('p',[_vm._v(\" Examples: Audio, electronic, visual, thermal, olfactory, or similar information. \")]),_c('p',[_vm._v(\"Collected: No.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Category I: Professional or employment-related information.\")])]),_c('p',[_vm._v(\"Examples: Current or past job history or performance evaluations.\")]),_c('p',[_vm._v(\"Collected: No.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\" Category J: Non-public education information (per the Family Educational Rights and Privacy Act (20 U.S.C. Section 1232g, 34 C.F.R. Part 99)). \")])]),_c('p',[_vm._v(\" Examples: Education records directly related to a student maintained by an educational institution or party acting on its behalf, such as grades, transcripts, class lists, student schedules, student identification codes, student financial information, or student disciplinary records. \")]),_c('p',[_vm._v(\"Collected: No.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Category K: Inferences drawn from other personal information.\")])]),_c('p',[_vm._v(\" Examples: Profile reflecting a person's preferences, characteristics, psychological trends, predispositions, behavior, attitudes, intelligence, abilities, and aptitudes. \")]),_c('p',[_vm._v(\"Collected: No.\")])]),_c('li',[_c('p',[_c('strong',[_vm._v(\"Category L: Sensitive personal information.\")])]),_c('p',[_vm._v(\"Examples: Account login and password information, geolocation data.\")]),_c('p',[_vm._v(\"Collected: Yes.\")])])]),_c('p',[_vm._v(\"Under CCPA/CPRA, personal information does not include:\")]),_c('ul',[_c('li',[_vm._v(\"Publicly available information from government records\")]),_c('li',[_vm._v(\"Deidentified or aggregated consumer information\")]),_c('li',[_vm._v(\"Information excluded from the CCPA/CPRA's scope, such as: \"),_c('ul',[_c('li',[_vm._v(\" Health or medical information covered by the Health Insurance Portability and Accountability Act of 1996 (HIPAA) and the California Confidentiality of Medical Information Act (CMIA) or clinical trial data \")]),_c('li',[_vm._v(\" Personal Information covered by certain sector-specific privacy laws, including the Fair Credit Reporting Act (FRCA), the Gramm-Leach-Bliley Act (GLBA) or California Financial Information Privacy Act (FIPA), and the Driver's Privacy Protection Act of 1994 \")])])])]),_c('h2',[_vm._v(\"Sources of Personal Information\")]),_c('p',[_vm._v(\" We obtain the categories of personal information listed above from the following categories of sources: \")]),_c('ul',[_c('li',[_c('strong',[_vm._v(\"Directly from You\")]),_vm._v(\". For example, from the forms You complete on our Service, preferences You express or provide through our Service. \")]),_c('li',[_c('strong',[_vm._v(\"Indirectly from You\")]),_vm._v(\". For example, from observing Your activity on our Service. \")]),_c('li',[_c('strong',[_vm._v(\"Automatically from You\")]),_vm._v(\". For example, through cookies We or our Service Providers set on Your Device as You navigate through our Service. \")]),_c('li',[_c('strong',[_vm._v(\"From Service Providers\")]),_vm._v(\". For example, third-party vendors to monitor and analyze the use of our Service, or other third-party vendors that We use to provide the Service to You. \")])]),_c('h2',[_vm._v(\"Use of Personal Information\")]),_c('p',[_vm._v(\" We may use or disclose personal information We collect for \\\"business purposes\\\" or \\\"commercial purposes\\\" (as defined under the CCPA/CPRA), which may include the following examples: \")]),_c('ul',[_c('li',[_vm._v(\"To operate our Service and provide You with Our Service.\")]),_c('li',[_vm._v(\" To provide You with support and to respond to Your inquiries, including to investigate and address Your concerns and monitor and improve our Service. \")]),_c('li',[_vm._v(\" To fulfill or meet the reason You provided the information. For example, if You share Your contact information to ask a question about our Service, We will use that personal information to respond to Your inquiry. \")]),_c('li',[_vm._v(\" To respond to law enforcement requests and as required by applicable law, court order, or governmental regulations. \")]),_c('li',[_vm._v(\" As described to You when collecting Your personal information or as otherwise set forth in the CCPA/CPRA. \")]),_c('li',[_vm._v(\"For internal administrative and auditing purposes.\")]),_c('li',[_vm._v(\" To detect security incidents and protect against malicious, deceptive, fraudulent or illegal activity, including, when necessary, to prosecute those responsible for such activities. \")]),_c('li',[_vm._v(\"Other one-time uses.\")])]),_c('p',[_vm._v(\" Please note that the examples provided above are illustrative and not intended to be exhaustive. For more details on how we use this information, please refer to the \\\"Use of Your Personal Data\\\" section. \")]),_c('p',[_vm._v(\" If We decide to collect additional categories of personal information or use the personal information We collected for materially different, unrelated, or incompatible purposes We will update this Privacy Policy. \")]),_c('h2',[_vm._v(\"Disclosure of Personal Information\")]),_c('p',[_vm._v(\" We may use or disclose and may have used or disclosed in the last twelve (12) months the following categories of personal information for business or commercial purposes: \")]),_c('ul',[_c('li',[_c('p',[_vm._v(\"Category A: Identifiers\")])]),_c('li',[_c('p',[_vm._v(\" Category B: Personal information categories listed in the California Customer Records statute (Cal. Civ. Code § 1798.80(e)) \")])]),_c('li',[_c('p',[_vm._v(\"Category F: Internet or other similar network activity\")])])]),_c('p',[_vm._v(\" Please note that the categories listed above are those defined in the CCPA/CPRA. This does not mean that all examples of that category of personal information were in fact disclosed, but reflects our good faith belief to the best of our knowledge that some of that information from the applicable category may be and may have been disclosed. \")]),_c('p',[_vm._v(\" When We disclose personal information for a business purpose or a commercial purpose, We enter a contract that describes the purpose and requires the recipient to both keep that personal information confidential and not use it for any purpose except performing the contract. \")]),_c('h2',[_vm._v(\"Share of Personal Information\")]),_c('p',[_vm._v(\" We may share, and have shared in the last twelve (12) months, Your personal information identified in the above categories with the following categories of third parties: \")]),_c('ul',[_c('li',[_c('p',[_vm._v(\"Service Providers\")])]),_c('li',[_c('p',[_vm._v(\"Our affiliates\")])]),_c('li',[_c('p',[_vm._v(\"Our business partners\")])]),_c('li',[_c('p',[_vm._v(\" Third party vendors to whom You or Your agents authorize Us to disclose Your personal information in connection with products or services We provide to You \")])])]),_c('h2',[_vm._v(\"Sale of Personal Information\")]),_c('p',[_vm._v(\" As defined in the CCPA/CPRA, \\\"sell\\\" and \\\"sale\\\" mean selling, renting, releasing, disclosing, disseminating, making available, transferring, or otherwise communicating orally, in writing, or by electronic or other means, a Consumer's personal information by the Business to a third party for valuable consideration. This means that We may have received some kind of benefit in return for sharing personal information, but not necessarily a monetary benefit. \")]),_c('p',[_vm._v(\" We do not sell personal information as the term sell is commonly understood. We do allow Service Providers to use Your personal information for the business purposes described in Our Privacy Policy, for activities such as advertising, marketing, and analytics, and these may be deemed a sale under CCPA/CPRA. \")]),_c('p',[_vm._v(\" We may sell and may have sold in the last twelve (12) months the following categories of personal information: \")]),_c('ul',[_c('li',[_c('p',[_vm._v(\"Category A: Identifiers\")])]),_c('li',[_c('p',[_vm._v(\" Category B: Personal information categories listed in the California Customer Records statute (Cal. Civ. Code § 1798.80(e)) \")])]),_c('li',[_c('p',[_vm._v(\"Category F: Internet or other similar network activity\")])])]),_c('p',[_vm._v(\" Please note that the categories listed above are those defined in the CCPA/CPRA. This does not mean that all examples of that category of personal information were in fact sold, but reflects our good faith belief to the best of Our knowledge that some of that information from the applicable category may be and may have been shared for value in return. \")]),_c('h2',[_vm._v(\"Sale of Personal Information of Minors Under 16 Years of Age\")]),_c('p',[_vm._v(\" We do not knowingly collect personal information from minors under the age of 16 through our Service, although certain third party websites that we link to may do so. These third-party websites have their own terms of use and privacy policies and We encourage parents and legal guardians to monitor their children's Internet usage and instruct their children to never provide information on other websites without their permission. \")]),_c('p',[_vm._v(\" We do not sell the personal information of Consumers We actually know are less than 16 years of age, unless We receive affirmative authorization (the \\\"right to opt-in\\\") from either the Consumer who is between 13 and 16 years of age, or the parent or guardian of a Consumer less than 13 years of age. Consumers who opt-in to the sale of personal information may opt-out of future sales at any time. To exercise the right to opt-out, You (or Your authorized representative) may submit a request to Us by contacting Us. \")]),_c('p',[_vm._v(\" If You have reason to believe that a child under the age of 13 (or 16) has provided Us with personal information, please contact Us with sufficient detail to enable Us to delete that information. \")]),_c('h2',[_vm._v(\"Your Rights under the CCPA/CPRA\")]),_c('p',[_vm._v(\" The CCPA/CPRA provides California residents with specific rights regarding their personal information. If You are a resident of California, You have the following rights: \")]),_c('ul',[_c('li',[_c('strong',[_vm._v(\"The right to notice.\")]),_vm._v(\" You have the right to be notified which categories of Personal Data are being collected and the purposes for which the Personal Data is being used. \")]),_c('li',[_c('strong',[_vm._v(\"The right to know/access.\")]),_vm._v(\" Under CCPA/CPRA, You have the right to request that We disclose information to You about Our collection, use, sale, disclosure for business purposes and share of personal information. Once We receive and confirm Your request, We will disclose to You: \"),_c('ul',[_c('li',[_vm._v(\"The categories of personal information We collected about You\")]),_c('li',[_vm._v(\"The categories of sources for the personal information We collected about You\")]),_c('li',[_vm._v(\" Our business or commercial purposes for collecting or selling that personal information \")]),_c('li',[_vm._v(\"The categories of third parties with whom We share that personal information\")]),_c('li',[_vm._v(\"The specific pieces of personal information We collected about You\")]),_c('li',[_vm._v(\" If we sold Your personal information or disclosed Your personal information for a business purpose, We will disclose to You: \"),_c('ul',[_c('li',[_vm._v(\"The categories of personal information categories sold\")]),_c('li',[_vm._v(\"The categories of personal information categories disclosed\")])])])])]),_c('li',[_c('strong',[_vm._v(\"The right to say no to the sale or sharing of Personal Data (opt-out).\")]),_vm._v(\" You have the right to direct Us to not sell Your personal information. To submit an opt-out request, please see the \\\"Do Not Sell My Personal Information\\\" section or contact Us. \")]),_c('li',[_c('strong',[_vm._v(\"The right to correct Personal Data.\")]),_vm._v(\" You have the right to correct or rectify any any inaccurate personal information about You that We collected. Once We receive and confirm Your request, We will use commercially reasonable efforts to correct (and direct our Service Providers to correct) Your personal information, unless an exception applies. \")]),_c('li',[_c('strong',[_vm._v(\"The right to limit use and disclosure of sensitive Personal Data.\")]),_vm._v(\" You have the right to request to limit the use or disclosure of certain sensitive personal information We collected about You, unless an exception applies. To submit, please see the \\\"Limit the Use or Disclosure of My Sensitive Personal Information\\\" section or contact Us. \")]),_c('li',[_c('strong',[_vm._v(\"The right to delete Personal Data.\")]),_vm._v(\" You have the right to request the deletion of Your Personal Data under certain circumstances, subject to certain exceptions. Once We receive and confirm Your request, We will delete (and direct Our Service Providers to delete) Your personal information from our records, unless an exception applies. We may deny Your deletion request if retaining the information is necessary for Us or Our Service Providers to: \"),_c('ul',[_c('li',[_vm._v(\" Complete the transaction for which We collected the personal information, provide a good or service that You requested, take actions reasonably anticipated within the context of our ongoing business relationship with You, or otherwise perform our contract with You. \")]),_c('li',[_vm._v(\" Detect security incidents, protect against malicious, deceptive, fraudulent, or illegal activity, or prosecute those responsible for such activities. \")]),_c('li',[_vm._v(\" Debug products to identify and repair errors that impair existing intended functionality. \")]),_c('li',[_vm._v(\" Exercise free speech, ensure the right of another consumer to exercise their free speech rights, or exercise another right provided for by law. \")]),_c('li',[_vm._v(\" Comply with the California Electronic Communications Privacy Act (Cal. Penal Code § 1546 et. seq.). \")]),_c('li',[_vm._v(\" Engage in public or peer-reviewed scientific, historical, or statistical research in the public interest that adheres to all other applicable ethics and privacy laws, when the information's deletion may likely render impossible or seriously impair the research's achievement, if You previously provided informed consent. \")]),_c('li',[_vm._v(\" Enable solely internal uses that are reasonably aligned with consumer expectations based on Your relationship with Us. \")]),_c('li',[_vm._v(\"Comply with a legal obligation.\")]),_c('li',[_vm._v(\" Make other internal and lawful uses of that information that are compatible with the context in which You provided it. \")])])]),_c('li',[_c('strong',[_vm._v(\"The right not to be discriminated against.\")]),_vm._v(\" You have the right not to be discriminated against for exercising any of Your consumer's rights, including by: \"),_c('ul',[_c('li',[_vm._v(\"Denying goods or services to You\")]),_c('li',[_vm._v(\" Charging different prices or rates for goods or services, including the use of discounts or other benefits or imposing penalties \")]),_c('li',[_vm._v(\"Providing a different level or quality of goods or services to You\")]),_c('li',[_vm._v(\" Suggesting that You will receive a different price or rate for goods or services or a different level or quality of goods or services \")])])])]),_c('h2',[_vm._v(\"Exercising Your CCPA/CPRA Data Protection Rights\")]),_c('p',[_vm._v(\" Please see the \\\"Do Not Sell My Personal Information\\\" section and \\\"Limit the Use or Disclosure of My Sensitive Personal Information\\\" section for more information on how to opt out and limit the use of sensitive information collected. \")]),_c('p',[_vm._v(\" Additionally, in order to exercise any of Your rights under the CCPA/CPRA, and if You are a California resident, You can contact Us: \")]),_c('ul',[_c('li',[_c('p',[_vm._v(\" By email: \"),_c('a',{attrs:{\"href\":\"mailto: human.resources@wwinc.com\"}},[_vm._v(\" human.resources@wwinc.com \")])])]),_c('li',[_c('p',[_vm._v(\"By phone number: 537.614.4765\")])])]),_c('p',[_vm._v(\" Only You, or a person registered with the California Secretary of State that You authorize to act on Your behalf, may make a verifiable request related to Your personal information. \")]),_c('p',[_vm._v(\"Your request to Us must:\")]),_c('ul',[_c('li',[_vm._v(\" Provide sufficient information that allows Us to reasonably verify You are the person about whom We collected personal information or an authorized representative \")]),_c('li',[_vm._v(\" Describe Your request with sufficient detail that allows Us to properly understand, evaluate, and respond to it \")])]),_c('p',[_vm._v(\" We cannot respond to Your request or provide You with the required information if We cannot: \")]),_c('ul',[_c('li',[_vm._v(\"Verify Your identity or authority to make the request\")]),_c('li',[_vm._v(\"And confirm that the personal information relates to You\")])]),_c('p',[_vm._v(\" We will disclose and deliver the required information free of charge within 45 days of receiving Your verifiable request. The time period to provide the required information may be extended once by an additional 45 days when reasonably necessary and with prior notice. \")]),_c('p',[_vm._v(\" Any disclosures We provide will only cover the 12-month period preceding the verifiable request's receipt. \")]),_c('p',[_vm._v(\" For data portability requests, We will select a format to provide Your personal information that is readily usable and should allow You to transmit the information from one entity to another entity without hindrance. \")]),_c('h2',[_vm._v(\"Do Not Sell My Personal Information\")]),_c('p',[_vm._v(\" As defined in the CCPA/CPRA, \\\"sell\\\" and \\\"sale\\\" mean selling, renting, releasing, disclosing, disseminating, making available, transferring, or otherwise communicating orally, in writing, or by electronic or other means, a Consumer's personal information by the Business to a third party for valuable consideration. This means that We may have received some kind of benefit in return for sharing personal information, but not necessarily a monetary benefit. \")]),_c('p',[_vm._v(\" We do not sell personal information as the term sell is commonly understood. We do allow Service Providers to use Your personal information for the business purposes described in Our Privacy Policy, for activities such as advertising, marketing, and analytics, and these may be deemed a sale under CCPA/CPRA. \")]),_c('p',[_vm._v(\" You have the right to opt-out of the sale of Your personal information. Once We receive and confirm a verifiable consumer request from You, we will stop selling Your personal information. To exercise Your right to opt-out, please contact Us. \")]),_c('p',[_vm._v(\" The Service Providers we partner with (for example, our analytics or advertising partners) may use technology on the Service that sells personal information as defined by the CCPA/CPRA law. If you wish to opt out of the use of Your personal information for interest-based advertising purposes and these potential sales as defined under CCPA/CPRA law, you may do so by following the instructions below. \")]),_c('p',[_vm._v(\" Please note that any opt out is specific to the browser You use. You may need to opt out on every browser that You use. \")]),_c('h3',[_vm._v(\"Website\")]),_c('p',[_vm._v(\" If applicable, click \\\"Privacy Preferences\\\", \\\"Update Privacy Preferences\\\" or \\\"Do Not Sell My Personal Information\\\" buttons listed on the Service to review your privacy preferences and opt out of cookies and other technologies that We may use. Please note that You will need to opt out from each browser that You use to access the Service. \")]),_c('p',[_vm._v(\" Additionally, You can opt out of receiving ads that are personalized as served by our Service Providers by following our instructions presented on the Service: \")]),_c('ul',[_c('li',[_vm._v(\" The NAI's opt-out platform: \"),_c('a',{attrs:{\"href\":\"http://www.networkadvertising.org/choices/\",\"rel\":\"external nofollow noopener\",\"target\":\"_blank\"}},[_vm._v(\" http://www.networkadvertising.org/choices/ \")])]),_c('li',[_vm._v(\" The EDAA's opt-out platform \"),_c('a',{attrs:{\"href\":\"http://www.youronlinechoices.com/\",\"rel\":\"external nofollow noopener\",\"target\":\"_blank\"}},[_vm._v(\" http://www.youronlinechoices.com/ \")])]),_c('li',[_vm._v(\" The DAA's opt-out platform: \"),_c('a',{attrs:{\"href\":\"http://optout.aboutads.info/?c=2&lang=EN\",\"rel\":\"external nofollow noopener\",\"target\":\"_blank\"}},[_vm._v(\" http://optout.aboutads.info/?c=2&lang=EN \")])])]),_c('p',[_vm._v(\" The opt out will place a cookie on Your computer that is unique to the browser You use to opt out. If you change browsers or delete the cookies saved by your browser, You will need to opt out again. \")]),_c('h3',[_vm._v(\"Mobile Devices\")]),_c('p',[_vm._v(\" Your mobile device may give You the ability to opt out of the use of information about the apps You use in order to serve You ads that are targeted to Your interests: \")]),_c('ul',[_c('li',[_vm._v(\" \\\"Opt out of Interest-Based Ads\\\" or \\\"Opt out of Ads Personalization\\\" on Android devices \")]),_c('li',[_vm._v(\"\\\"Limit Ad Tracking\\\" on iOS devices\")])]),_c('p',[_vm._v(\" You can also stop the collection of location information from Your mobile device by changing the preferences on Your mobile device. \")]),_c('h2',[_vm._v(\"Limit the Use or Disclosure of My Sensitive Personal Information\")]),_c('p',[_vm._v(\" If You are a California resident, You have the right to limit the use and disclosure of Your sensitive personal information to that use which is necessary to perform the services or provide the goods reasonably expected by an average Consumer who requests such services or goods. \")]),_c('p',[_vm._v(\" We collect, use and disclose sensitive personal information in ways that are necessary to provide the Service. For more information on how We use Your personal information, please see the \\\"Use of Your Personal Data\\\" section or contact us. \")]),_c('h1',[_vm._v(\" \\\"Do Not Track\\\" Policy as Required by California Online Privacy Protection Act (CalOPPA) \")]),_c('p',[_vm._v(\"Our Service does not respond to Do Not Track signals.\")]),_c('p',[_vm._v(\" However, some third party websites do keep track of Your browsing activities. If You are visiting such websites, You can set Your preferences in Your web browser to inform websites that You do not want to be tracked. You can enable or disable DNT by visiting the preferences or settings page of Your web browser. \")]),_c('h1',[_vm._v(\"Your California Privacy Rights (California's Shine the Light law)\")]),_c('p',[_vm._v(\" Under California Civil Code Section 1798 (California's Shine the Light law), California residents with an established business relationship with us can request information once a year about sharing their Personal Data with third parties for the third parties' direct marketing purposes. \")]),_c('p',[_vm._v(\" If you'd like to request more information under the California Shine the Light law, and if You are a California resident, You can contact Us using the contact information provided below. \")]),_c('h1',[_vm._v(\" California Privacy Rights for Minor Users (California Business and Professions Code Section 22581) \")]),_c('p',[_vm._v(\" California Business and Professions Code Section 22581 allows California residents under the age of 18 who are registered users of online sites, services or applications to request and obtain removal of content or information they have publicly posted. \")]),_c('p',[_vm._v(\" To request removal of such data, and if You are a California resident, You can contact Us using the contact information provided below, and include the email address associated with Your account. \")]),_c('p',[_vm._v(\" Be aware that Your request does not guarantee complete or comprehensive removal of content or information posted online and that the law may not permit or require removal in certain circumstances. \")]),_c('h1',[_vm._v(\"Children's Privacy\")]),_c('p',[_vm._v(\" Our Service does not address anyone under the age of 13. We do not knowingly collect personally identifiable information from anyone under the age of 13. If You are a parent or guardian and You are aware that Your child has provided Us with Personal Data, please contact Us. If We become aware that We have collected Personal Data from anyone under the age of 13 without verification of parental consent, We take steps to remove that information from Our servers. \")]),_c('p',[_vm._v(\" If We need to rely on consent as a legal basis for processing Your information and Your country requires consent from a parent, We may require Your parent's consent before We collect and use that information. \")]),_c('h1',[_vm._v(\"Links to Other Websites\")]),_c('p',[_vm._v(\" Our Service may contain links to other websites that are not operated by Us. If You click on a third party link, You will be directed to that third party's site. We strongly advise You to review the Privacy Policy of every site You visit. \")]),_c('p',[_vm._v(\" We have no control over and assume no responsibility for the content, privacy policies or practices of any third party sites or services. \")]),_c('h1',[_vm._v(\"Changes to this Privacy Policy\")]),_c('p',[_vm._v(\" We may update Our Privacy Policy from time to time. We will notify You of any changes by posting the new Privacy Policy on this page. \")]),_c('p',[_vm._v(\" We will let You know via email and/or a prominent notice on Our Service, prior to the change becoming effective and update the \\\"Last updated\\\" date at the top of this Privacy Policy. \")]),_c('p',[_vm._v(\" You are advised to review this Privacy Policy periodically for any changes. Changes to this Privacy Policy are effective when they are posted on this page. \")]),_c('h1',[_vm._v(\"Contact Us\")]),_c('p',[_vm._v(\"If you have any questions about this Privacy Policy, You can contact us:\")]),_c('ul',[_c('li',[_c('p',[_vm._v(\" By email: \"),_c('a',{attrs:{\"href\":\"mailto: human.resources@wwinc.com\"}},[_vm._v(\" human.resources@wwinc.com \")])])]),_c('li',[_c('p',[_vm._v(\"By phone number: 537.614.4765\")])])])])}]\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\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\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\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\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\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\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\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\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\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\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\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\n\r\nimport PageHeader from '@/components/products/pageheader.vue';\r\n\r\nexport default {\r\n  data() {\r\n    return {\r\n    }\r\n  },\r\n  name: \"Privacy\",\r\n  components: {\r\n    PageHeader\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/@vue/cli-plugin-typescript/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!./privacy.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/@vue/cli-plugin-typescript/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!./privacy.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./privacy.vue?vue&type=template&id=f2cc9f54&scoped=true&\"\nimport script from \"./privacy.vue?vue&type=script&lang=ts&\"\nexport * from \"./privacy.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./privacy.vue?vue&type=style&index=0&id=f2cc9f54&prod&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  \"f2cc9f54\",\n  null\n  \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('header',{staticClass:\"fixed-top navbar-light bg-light\"},[_c('div',{staticClass:\"d-none d-xs-none d-md-block\",attrs:{\"id\":\"top-logo\"}},[_c('router-link',{attrs:{\"tag\":\"a\",\"to\":\"/\"}},[_c('img',{attrs:{\"src\":require(\"../assets/media/logos/Aspect.png\"),\"alt\":\"Aspect Cabinetry\"}})])],1),_c('navbar',{attrs:{\"section\":\"\"}})],1),_c('title',[_vm._v(\"404 - Page Not Found | Aspect Cabinetry\")]),_vm._m(0),_c('br'),_c('br'),_c('div',{staticClass:\"container\",attrs:{\"id\":\"call-to-action\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col my-2 my-md-3\"},[_c('router-link',{staticClass:\"btn btn-aspect-red btn-lg btn-block py-md-5\",attrs:{\"tag\":\"a\",\"to\":\"/products\"}},[_c('i',{staticClass:\"material-icons\"},[_vm._v(\"\")]),_vm._v(\" Browse Our Products \")])],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 col-md-4 my-2\"},[_c('router-link',{staticClass:\"btn btn-aspect-red btn-lg btn-block py-md-5\",attrs:{\"to\":\"/gallery\"}},[_c('i',{staticClass:\"material-icons\"},[_vm._v(\"\")]),_vm._v(\" View Gallery \")])],1),_c('div',{staticClass:\"col-12 col-md-4 my-2\"},[_c('router-link',{staticClass:\"btn btn-aspect-red btn-lg btn-block py-md-5\",attrs:{\"to\":\"/downloads\"}},[_c('i',{staticClass:\"material-icons\"},[_vm._v(\"\")]),_vm._v(\" View Brochure \")])],1),_c('div',{staticClass:\"col-12 col-md-4 my-2\"},[_c('router-link',{staticClass:\"btn btn-aspect-red btn-lg btn-block py-md-5\",attrs:{\"to\":\"/retailers\"}},[_c('i',{staticClass:\"material-icons\"},[_vm._v(\"\")]),_vm._v(\" Contact Us \")])],1)])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container mt-0 mb-3 text-center\"},[_c('h3',{},[_vm._v(\"Good News!\")]),_c('h5',[_vm._v(\"We have upgraded our website.\")])])}]\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\r\nimport Vue from 'vue';\r\n\r\nimport { factory } from '@/logging';\r\n\r\nimport Navbar from '@/components/navbar.vue';\r\n\r\nconst logger = factory.getLogger('component.page404');\r\n\r\nexport default Vue.extend({\r\n  name:       'page404',\r\n  props:      { },\r\n  components: { Navbar },\r\n  created(): void {\r\n    logger.trace('404 component has been created.');\r\n  },\r\n  methods:  { },\r\n  computed: { },\r\n  data() {\r\n    return {\r\n      navbar: ''\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/@vue/cli-plugin-typescript/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!./page404.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/@vue/cli-plugin-typescript/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!./page404.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./page404.vue?vue&type=template&id=5daa575a&\"\nimport script from \"./page404.vue?vue&type=script&lang=ts&\"\nexport * from \"./page404.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  null,\n  null\n  \n)\n\nexport default component.exports","import Vue          from 'vue';\r\nimport Home         from './components/home.vue';\r\nimport About        from './components/about.vue';\r\nimport Products     from './components/products.vue';\r\nimport Rangehoods   from './components/products/rangehoods.vue';\r\nimport WoodTypes    from './components/products/woodtypes.vue';\r\nimport DoorStyles   from './components/products/doorstyles.vue';\r\nimport Finishes     from './components/products/finishes.vue';\r\nimport Paint        from './components/products/finishes/paint.vue';\r\nimport Stain        from './components/products/finishes/stain.vue';\r\nimport Gallery      from './components/gallery.vue';\r\nimport Retailers    from './components/retailers.vue';\r\nimport Resources    from './components/resources.vue';\r\nimport Privacy      from './components/privacy.vue';\r\nimport FourZeroFour from './components/page404.vue';\r\nimport LightBoxTest from './components/lightboxtest.vue';\r\nimport\r\n  Router,\r\n  { RouterOptions }\r\nfrom 'vue-router';\r\n\r\nVue.use(Router);\r\nconst suffix = '| Aspect Cabinetry';\r\n\r\nexport default new Router(\r\n  <RouterOptions> {\r\n    mode: 'history',\r\n    routes: [\r\n      {\r\n        path: '/',\r\n        component: Home,\r\n        meta: {\r\n          title: 'Aspect Cabinetry'\r\n        }\r\n      },\r\n      // {\r\n      //   path: '/',\r\n      //   component: LightBoxTest,\r\n      //   meta: {\r\n      //     title: 'Light Box Test'\r\n      //   }\r\n      // },\r\n      {\r\n        path: '/about',\r\n        component: About ,\r\n        meta: {\r\n          title: `About ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/products',\r\n        component: Products,\r\n        meta: {\r\n          title: `Products ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/products/rangehoods',\r\n        component: Rangehoods,\r\n        meta: {\r\n          title: `Range Hoods ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/products/woodtypes',\r\n        component: WoodTypes,\r\n        meta: {\r\n          title: `Wood Types ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/products/doorstyles',\r\n        component: DoorStyles ,\r\n        meta: {\r\n          title: `Door Styles ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/products/finishes',\r\n        component: Finishes,\r\n        meta: {\r\n          title: `Finishes ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/products/finishes/paint',\r\n        component: Paint,\r\n        meta: {\r\n          title: `Paint ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/products/finishes/stain',\r\n        component: Stain ,\r\n        meta: {\r\n          title: `Stain ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/gallery',\r\n        component: Gallery,\r\n        meta: {\r\n          title: `Gallery ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/retailers',\r\n        component: Retailers ,\r\n        meta: {\r\n          title: `Retailers ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/resources',\r\n        component: Resources,\r\n        meta: {\r\n          title: `Resources ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '/privacy',\r\n        component: Privacy,\r\n        meta: {\r\n          title: `Privacy Policy ${suffix}`\r\n        }\r\n      },\r\n      {\r\n        path: '*',\r\n        component: FourZeroFour,\r\n        meta: {\r\n          title: `404 - Page Not Found ${suffix}`\r\n        }\r\n      },\r\n\r\n      { path: '/gallery.html',           redirect: '/gallery'                 },\r\n      { path: '/index.html',             redirect: '/'                        },\r\n      { path: '/gallery.html',           redirect: '/gallery'                 },\r\n      { path: '/locate-a-retailer.html', redirect: '/retailers'               },\r\n      { path: '/become-a-retailer.html', redirect: '/retailers'               },\r\n      { path: '/products.html',          redirect: '/products'                },\r\n      { path: '/Products.html',          redirect: '/products'                },\r\n      { path: '/about.html',             redirect: '/about'                   },\r\n      { path: '/About.html',             redirect: '/about'                   },\r\n      { path: '/downloads',              redirect: '/resources'               },\r\n      { path: '/paint.html',             redirect: '/products/finishes/paint' },\r\n      { path: '/Paint.html',             redirect: '/products/finishes/paint' },\r\n      { path: '/finishes.html',          redirect: '/products/finishes'       },\r\n      { path: '/Finishes.html',          redirect: '/products/finshes'        },\r\n      { path: '/doorstyles.html',        redirect: '/products/doorstyles'     },\r\n    ],\r\n  },\r\n);\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('router-view'),_c('Footer')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\n\r\nimport { factory } from '@/logging';\r\n\r\nimport Footer from \"@/components/pagefooter.vue\";\r\n\r\nimport * as TSL    from 'typescript-logging';\r\nconst logger = factory.getLogger('component.app');\r\n\r\nexport default Vue.extend({\r\n  name:       'app',\r\n  props:      { },\r\n  components: { Footer },\r\n  methods:    { },\r\n  computed:   { },\r\n  data() {\r\n    return {\r\n      mode: process.env.VUE_APP_MODE\r\n    };\r\n  },\r\n  created() {\r\n    const control = TSL.getLogControl();\r\n\r\n    const factoryControl = control.getLoggerFactoryControl(0);\r\n\r\n    let logLevel: \"Fatal\" | \"Error\" | \"Warn\" | \"Info\" | \"Debug\" | \"Trace\" | undefined  = \"Fatal\";\r\n\r\n    if(process.env.VUE_APP_MODE === 'Development') {\r\n      logLevel = \"Trace\";\r\n    }\r\n\r\n    factoryControl.change({\r\n      logFormat:      undefined,\r\n      showLoggerName: undefined,\r\n      showTimestamp:  undefined,\r\n      group:          'all',\r\n      logLevel\r\n    });\r\n  }\r\n});\r\n\r\n// We finna fade in these images\r\nVue.directive('animateOnChange', {\r\n\r\n  update: (element: Element, binding, vnode) => {\r\n    element.classList.add('fade-in');\r\n\r\n    setTimeout(function() {\r\n      element.classList.remove('fade-in');\r\n    }, 1000);\r\n\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/@vue/cli-plugin-typescript/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!./App.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/@vue/cli-plugin-typescript/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!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=03be2ce0&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.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  null,\n  null\n  \n)\n\nexport default component.exports","export default class Resource {\r\n    constructor(\r\n        public id:          number,\r\n        public name:        string,\r\n        public description: string,\r\n        public url:         string\r\n    ) { }\r\n}\r\n","import { factory } from '@/logging';\r\nimport 'rxjs/add/operator/map';\r\n\r\nimport {\r\n    AzureStorage,\r\n    AzureStorageBlob, ProductionSecureConfig\r\n} from '@wwinc/azure-storage';\r\n\r\nimport {\r\n  DevSecureConfig\r\n} from '@wwinc/azure-storage/app.config';\r\n\r\nimport {\r\n  Observable\r\n} from 'rxjs';\r\n\r\nimport {\r\n  map\r\n} from 'rxjs/operators';\r\n\r\nimport Axios from 'axios-observable';\r\nimport X2JS from 'x2js';\r\nimport AppConfig from '@/AppConfig';\r\nimport Resource from \"@/models/resource.model\";\r\n\r\nconst logger = factory.getLogger('service.resource');\r\n\r\nexport class ResourcesService {\r\n\r\n  private azureStorage: AzureStorage;\r\n\r\n  constructor(private config: AppConfig) {\r\n    logger.debug('Instantiating Resources service');\r\n\r\n    if(process.env.VUE_APP_MODE === 'Development') {\r\n      console.log(\"Using the DevSecure AzureStorage configuration\");\r\n      AzureStorage.forRoot(DevSecureConfig);\r\n    } else {\r\n      console.log(\"Using the ProductionSecure AzureStorage configuration\");\r\n      AzureStorage.forRoot(ProductionSecureConfig);\r\n    }\r\n\r\n    console.log(`Setting the containersURL to ${config.containersUrl}`);\r\n    AzureStorage.config.containersURL =  config.containersUrl;\r\n\r\n    this.azureStorage = new AzureStorage();\r\n  }\r\n\r\n  getResources(): Observable<Resource[]> {\r\n      return this.getBlobs(\r\n          'aspect-documents-resources'\r\n      ).pipe(map(\r\n          (data: AzureStorageBlob[])=> {\r\n              let downloads: Resource[] = [] as Resource[];\r\n\r\n              downloads = data.map((blob:any) => {\r\n                  const name = blob.Metadata.name && blob.Metadata.name !== 'None' ? blob.Metadata.name : '';\r\n                  let description = '';\r\n\r\n                  if(blob.Metadata.description && blob.Metadata.description !== 'None') {\r\n                      description = blob.Metadata.description;\r\n                  } else if (blob.Metadata.other && blob.Metadata.other !== 'None') {\r\n                      description = blob.Metadata.other;\r\n                  }\r\n\r\n                  return new Resource(\r\n                      blob.id,\r\n                      name,\r\n                      description,\r\n                      blob.Url\r\n                  )\r\n              })\r\n\r\n              return downloads;\r\n          })\r\n      );\r\n  }\r\n    /**\r\n     * Loads blobs from a storage container\r\n     * @param azureStorageContainer The storage container\r\n     */\r\n  private getBlobs(azureStorageContainer: any): Observable<AzureStorageBlob[]> {\r\n    return Axios.get(\r\n        `${AzureStorage.config.storageAccountUrl}${azureStorageContainer}?restype=container&comp=list&include=metadata`,\r\n      {\r\n        responseType: 'text'\r\n      }\r\n    )\r\n    .pipe(map((response) => {\r\n        const x2js = new X2JS();\r\n        let   json = <any>{};\r\n\r\n        json = x2js.xml2js(response.data);\r\n\r\n        return json.EnumerationResults.Blobs.Blob;\r\n    }));\r\n  }\r\n}\r\n","import {\r\n  AzureStorage,\r\n  AzureStorageBlob, ProductionSecureConfig\r\n} from '@wwinc/azure-storage';\r\n\r\nimport {\r\n  Observable,\r\n  of\r\n} from 'rxjs';\r\n\r\nimport {\r\n  catchError, map\r\n} from 'rxjs/operators';\r\n\r\nimport Axios from 'axios-observable';\r\nimport X2JS  from  'x2js';\r\n\r\nimport {\r\n  factory\r\n} from '@/logging';\r\n\r\nimport {\r\n  DevSecureConfig\r\n} from '@wwinc/azure-storage/app.config';\r\nimport AppConfig from '@/AppConfig';\r\n\r\nexport interface Image {\r\n  id:  number;\r\n  src: string;\r\n  alt: string;\r\n}\r\n\r\nconst logger = factory.getLogger('service.image');\r\n\r\nexport class ImageService {\r\n\r\n  private azureStorage: AzureStorage;\r\n\r\n  constructor(private config: AppConfig) {\r\n    logger.debug('Instantiating Image Service');\r\n\r\n    if(process.env.VUE_APP_MODE === 'Development') {\r\n      AzureStorage.forRoot(DevSecureConfig);\r\n    } else {\r\n      AzureStorage.forRoot(ProductionSecureConfig);\r\n    }\r\n\r\n    AzureStorage.config.containersURL =  config.containersUrl;\r\n\r\n    this.azureStorage = new AzureStorage();\r\n   }\r\n\r\n  /**\r\n   * Gets the images from Azure Storage by container name.\r\n   * @param containerName The name of the container containing the images.\r\n   */\r\n  getImages(containerName: any): Observable<AzureStorageBlob[]> {\r\n    const url = `${AzureStorage.config.storageAccountUrl}${containerName}?restype=container&comp=list&include=metadata`;\r\n    const ref = this;\r\n    const x2js = new X2JS();\r\n\r\n    return Axios.get(\r\n      `${AzureStorage.config.storageAccountUrl}${containerName}?restype=container&comp=list&include=metadata`,\r\n      { responseType: 'text' }\r\n      ).pipe(map((response) => {\r\n        // first we have to translate microsoft's xml response to JSON\r\n        let converted = <any>{};\r\n        converted = x2js.xml2js(response.data);\r\n        // update the images now\r\n        const images = converted.EnumerationResults.Blobs.Blob;\r\n        if (images != null && images.length) {\r\n          const imagesList = Object.keys(images).map((dataIndex) => {\r\n            return images[dataIndex];\r\n        });\r\n          return imagesList;\r\n        }\r\n        else if (images == null) {\r\n          return [];\r\n        }\r\n        else {\r\n          return [images];\r\n        }\r\n    }))\r\n      .pipe(\r\n        map((images: AzureStorageBlob[]) => {\r\n          images.forEach((image: AzureStorageBlob) => {\r\n            if (image.Metadata) {\r\n              ref.parseAzureMetadata(image.Metadata);\r\n            }\r\n          });\r\n          return images;\r\n        }),\r\n        catchError((val) => {\r\n          return of([ ]);\r\n        }),\r\n      );\r\n  }\r\n  /**\r\n   * Updates an Azure storage blob to\r\n   * have actual boolean values, instead of string\r\n   * representations.\r\n   *\r\n   * @param obj The blob to update.\r\n   */\r\n  parseAzureMetadata(obj: any) {\r\n    Object.keys(obj).forEach((key) => {\r\n      if (key === 'type') {\r\n        obj[key] = +obj[key];\r\n      }\r\n      else if (\r\n        obj[key] === 'False' ||\r\n        obj[key] === 'false' ||\r\n        obj[key] === 'True' ||\r\n        obj[key] === 'true') {\r\n        const s: string = obj[key];\r\n        delete obj[key];\r\n        obj[key] = this.stringToBoolean(s);\r\n        }\r\n    });\r\n    return obj;\r\n  }\r\n\r\n  /**\r\n   * Converts a string with a boolean to an actual boolean value\r\n   *\r\n   * @param val The boolean value in string form.\r\n   * @private\r\n   */\r\n  private stringToBoolean(val: string): boolean {\r\n    const a: any = {\r\n      true:  true,\r\n      True:  true,\r\n      false: false,\r\n      False: false,\r\n    };\r\n    return a[val];\r\n  }\r\n\r\n  /**\r\n   * Selects random images.\r\n   *\r\n   * @param imagesInFolder The collection of images.\r\n   * @param randNeeded     The number of random images needed.\r\n   */\r\n  selectDifferentImages(imagesInFolder: AzureStorageBlob[], randNeeded: number) {\r\n    logger.debug('Inside imageService.selectDifferentImages');\r\n    logger.debug(`imagesInFolder.length = ${imagesInFolder.length}`);\r\n    if (imagesInFolder.length === 0 ) {\r\n      return null;\r\n    }\r\n\r\n    const num = imagesInFolder.length;\r\n\r\n    const theChosenOnes = [];\r\n\r\n    //pick random selections\r\n    for (let i = 0; i < num; i++) {\r\n      const  rand = Math.floor(Math.random() * num);\r\n      if (theChosenOnes.indexOf(imagesInFolder[rand]) == -1) {\r\n\r\n        logger.debug('Adding image to chosen images');\r\n        // if it doesnt currently exist in the array, we want to push it :)\r\n        // hahaha\r\n        theChosenOnes.push(imagesInFolder[rand]);\r\n      }\r\n      else {\r\n        logger.debug('Random image was already in the array');\r\n        //number already in array, pick new random number\r\n        i = i - 1;\r\n      }\r\n    }\r\n    return theChosenOnes;\r\n  }\r\n\r\n}\r\n","import Vue    from 'vue';\r\nimport router from './router';\r\nimport store  from './store';\r\nimport App    from './App.vue';\r\nimport 'bootstrap';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\n\r\n\r\nimport './assets/css/animate.css';\r\nimport './assets/css/font-awesome.css';\r\nimport '../node_modules/material-design-icons-iconfont/dist/material-design-icons.css';\r\nimport './assets/css/style.css';\r\n\r\nconst VueMask = require('v-mask');\r\n\r\nimport { ResourcesService } from '@/services/resources.service';\r\nimport { ImageService     } from '@/services/image.service';\r\nimport { factory          } from '@/logging';\r\nimport { RetailersService } from '@/services/retailers.service';\r\n\r\nimport AppConfig         from '@/AppConfig';\r\nimport VueGtag           from 'vue-gtag';\r\nimport VueCompositionAPI from '@vue/composition-api'\r\n\r\nVue.config.productionTip = false;\r\n\r\nconst appConfig: AppConfig = {\r\n  mode:              process.env.VUE_APP_MODE,\r\n  containersUrl:     process.env.VUE_APP_CONTAINERS_URL,\r\n  companyEmail:      process.env.VUE_APP_COMPANY_EMAIL,\r\n  commonApiEndpoint: process.env.VUE_APP_COMMON_API_ENDPOINT,\r\n  emailApiEndpoint:  process.env.VUE_APP_EMAIL_API_ENDPOINT\r\n}\r\n\r\nconst $resourcesService = new ResourcesService(appConfig);\r\nconst $imageService     = new ImageService(appConfig);\r\nconst $retailersService = new RetailersService(appConfig);\r\n\r\n(Vue as any).$imageService = $imageService;\r\n\r\nconst logger = factory.getLogger('main');\r\n\r\nrouter.afterEach((to) => {\r\n  Vue.nextTick(() => {\r\n    document.title = to.meta.title || 'Aspect Cabinetry';\r\n  })\r\n});\r\n\r\nVue.use(VueMask.VueMaskPlugin);\r\nVue.use(VueCompositionAPI);\r\n\r\nVue.use(VueGtag, {\r\n    config: {\r\n        id: 'UA-72870914-9'\r\n    },\r\n}, router);\r\n\r\nnew Vue(\r\n  {\r\n    router,\r\n    store,\r\n    provide: {\r\n      $resourcesService,\r\n      $imageService,\r\n      $retailersService,\r\n    },\r\n    created(): void {\r\n      logger.debug('Created new Vue instance');\r\n    },\r\n    render: (h) => h(App)\r\n  }\r\n).$mount(\r\n  '#app'\r\n);\r\n","module.exports = __webpack_public_path__ + \"img/EclipseLogoGrey.407493f5.png\";"],"sourceRoot":""}