{"version":3,"sources":["view/MapVectorStyles.js","model/SVIThemeModel.js","controller/ScriptUrl.js","model/StaticVariables.js","controller/TextVariables.js","model/LocalStorageService.js","model/DataService.js","model/DevDataService.js","controller/DownloadString.js","model/DataTransformation.js","model/InterfaceProvider.js","controller/MapProvider.js","view/Tooltip.js","view/Dropdown.js","view/ThemeSelectView.js","view/ToggleSwitch.js","view/CensusToggle.js","view/CompareToggle.js","view/StateSelect.js","view/YearSelect.js","view/ResetButton.js","view/DataControls.js","model/OneMapApiDataService.js","controller/LayerQueries.js","view/TableGrid.js","view/ContentData.js","controller/PreparedCountyMapController.js","view/PreparedMaps.js","view/ContentInformation.js","view/Legend.js","model/FeatureProvider.js","view/Modal.js","view/DragContainer.js","controller/useMousePosition.js","controller/useMouseDown.js","controller/CollisionDetection.js","view/FeatureModal.js","view/FeatureTitle.js","view/RemoveMapMarkerButton.js","controller/useAfterInit.js","controller/addPropsToChildren.js","view/Layer.js","view/Waiting.js","view/Map.js","view/MeasureLayer.js","view/OLMSLayer.js","view/CensusLayer.js","view/CountyLayer.js","view/CircleFeature.js","model/POI_model.js","view/PoiLayer.js","view/MapControls.js","view/ZoomControls.js","controller/Control.js","view/DownloadControl.js","view/ZoomNumberControl.js","view/FullScreenControl.js","view/ZoomSelect.js","model/mergeFeatures.js","view/StateLayer.js","view/RegionLayer.js","view/HHSregionsLayer.js","view/GridDebugLayer.js","view/FeatureOutlineLayer.js","view/IconFeature.js","view/MapMarkerLayer.js","view/HighlightRegionLayer.js","controller/MapController.js","view/ContentMap.js","view/checkAdjustShortScreens.js","controller/DownloadProvider.js","view/DownloadModal.js","controller/DownloadCSV.js","controller/convertMapToImage.js","controller/DownloadJPG.js","controller/AppDownloader.js","view/TabsContent.js","view/CDCHeader.js","view/SVIBanner.js","view/DropCheck.js","view/PointOfInterestUI.js","model/SearchLookup.js","model/OnemapSearchLookup.js","view/SearchUI.js","view/OpacitySlider.js","view/MapTitle.js","view/AdminControls.js","view/ViewControls.js","view/Tablist.js","view/MobileMenu.js","controller/App.js","view/ErrorModal.js","view/MessageModal.js","controller/IfIE.js","controller/AdobeAnalytics.js","controller/Analytics.js","view/Interface.js","controller/App404.js","index.js"],"names":["canvasHatchPattern","pixelRatio","p","pctx","olHas","document","createElement","width","height","getContext","strokeStyle","lineWidth","beginPath","moveTo","lineTo","x0","x1","stroke","createPattern","outlineExtent","Style","Stroke","color","lineDash","outlineHHS","outlineHHSlow","outlineRegion","outlineRegionLow","outlineState","outlineStateLow","outlineCounty","outlineCountyLow","outlineCensus","outlineFeatureHighlightCensus","outlineFeatureHighlightCounty","flatColorStyle","fill","Fill","flatColorCountyStyle","low","poiCircle","val","hhsLabelStyle","highlight","offset","distance","offsets","center","left","top","right","bottom","selectedOffset","text","Text","font","padding","backgroundFill","backgroundStroke","offsetX","offsetY","rotation","noData","outOfScope","colorPalletA","none","mapStyles","med","high","colorPalletB","colorPalletC","colorPalletD","colorPalletE","colorSchemeToStyle","scheme","Object","keys","forEach","key","sviThemes","id","xicon","label","labelPast","label2020","slug","colorPallet","colorScheme","dataNames","SCRIPT_URL","scriptPath","currentScript","src","divide","indexOf","substring","getLocalReactPath","localDevelopment","localurl","window","location","origin","debugMode","Boolean","search","statesList","Array","isArray","StatesList","values","countiesList","CountiesList","DATA_URL","process","PUBLIC_URL","REACT_APP_DATA_URL","trim","tractList","staticYearList","columns","localdoc","varpage","docs","filename","staticRegions","states","bounds","tabList","icon","close","hidden","staticPOIList","textColor","blacklist","dataProjection","featureProjection","mapStaticVariables","extents","contiguous_us_and_pr","max_map_bounds","coordinates","worldCenter","usCenter4326","usCenter3857","projections","mercator","latlon","getStateName","fips","state","stateFips","String","find","st","getState","getCountyName","county","countyFips","cnt","cc","CC","getCounty","CN","TEXTS","cdc","cdc_subtext","svi","cdc_banner","popup","featureInfo","button","modals","download","link","maplabel","datalabel","titleCheck","legendCheck","currentMap","currentData","select_state","select_county","usmap","autoSwitchCensus","autoSwitchDCtract","legend","tooltip","non_applicable","controls","svi_select","tooltiptable","comparison","option1","option2","state_select","placeholder","disabled","data_level","helpText","data_year","reset_button","resetTooltip","poi_select","svi_opacity","search_box","zoom_level","zoom_in","zoom_out","reset_to_full_extent","night_day_mode","full_screen","zoom_select","expandCollapse","errorMessages","101","name","devNotes","message","400","403","401","405","498","init","LocalStorageService","_service","_clearToken","localStorage","removeItem","access_token","getService","this","setToken","tokenObj","setItem","refresh_token","expires","getAccessToken","token","getItem","Date","getTime","getRefreshToken","clearToken","DataServiceError","code","options","TEXT","console","log","description","modalMessage","combinedMessage","config","Error","DataService","props","_verbose","_localStorageService","_needsAuth","_name","_client","axios","create","baseURL","params","_requestCount","_authClient","_queue","_authStatus","_token","_axiosSource","CancelToken","source","responseError","err","a","_retry","authenticate","Promise","reject","responseInterceptor","res","data","status","error","rawError","codeDetails","details","toLowerCase","_callsAreAuthorized","requestInterceptor","needsAuth","hasOwnProperty","tok","cancel","body","_api","args","url","head","formatCall","callObj","applyFilterAuth","applyFiltertransformData","getAuthCall","formatSlug","type","scope","tract","filter","join","toLocaleLowerCase","replace","startToken","post","then","dat","catch","length","get","cancelToken","paramsSerializer","entries","assign","map","value","getListData","Table","getPOIData","extent","year","tileKey","zoom","getZoomFromTileKey","fetch","json","Table1","Count","getGeometryData","getSVIData","getBaseMapPath","getBaseStyleData","interceptors","request","use","response","stateNames","10","11","12","13","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40","41","42","44","45","46","47","48","49","50","51","53","54","55","56","72","DevDataService","counties","theme","y1","x2","y2","base","protocol","poiBase","baseMap_arcGIS_style_path","baseMap_arcGIS_geometry_path","output","defaults","AppVersion","State","XMin","YMin","XMax","YMax","adjyear","loop","StateFIPS","CountyFIPS","SVIYear","SVIThemeID","LayerName","PointsCount","mapSVIJson","applyAuth","downloadString","string","blank","onDownload","setAttribute","appendChild","click","href","target","remove","mapThemeAttributes","obj","thm0","R_PL_THEME1","RPL_THEMES","Overall_SVI_Percentile","thm1","R_PL_THEME2","RPL_THEME1","Theme1_Socioeconomic_Percentile","Theme1_Percentile","thm2","R_PL_THEME3","RPL_THEME2","Theme2_HouseholdAndDisability_Percentile","Theme2_Percentile","thm3","R_PL_THEME4","RPL_THEME3","Theme3_MinorityAndLanguage_Percentile","Theme3_Percentile","thm4","R_PL_THEME5","RPL_THEME4","Theme4_HousingAndTransportation_Percentile","Theme4_Percentile","theme0","sviValueToSlug","theme1","theme2","theme3","theme4","theme0Num","theme1Num","theme2Num","theme3Num","theme4Num","num","list","row","themes","FIPS","jsonToCSVDownloadString","csvLink","useQuotes","jcopy","slice","indexRow","unshift","jsonToCSVString","encodeURI","distanceBetweenPoints","pointA","pointB","absolute","w","Math","abs","l","d","floor","sqrt","groupAsSingle","poi","x","y","tilekey","chunkArray","array","size","chunked_arr","numOfChild","ceil","i","push","splice","findCenter","coords","getCenter","boundingExtent","capitalizeFirstLetter","charAt","toUpperCase","tableDataMappingOrdered","item","GeoLevel","Comparison","hide","headerName","foundState","ST","STATE","ST_ABBR","abbr","STCNTY","foundCounty","cnty","reg","RegExp","COUNTY","sort","b","parseInt","tableDataMapping","whitelistKeys","pick","OBJECTID","GRASPID","STATE_NAME","STATE_ABBR","COUNTY_FIPS","COUNTY_NAME","readErrorMesssage","InterfaceContext","createContext","interface_init","usState","downloadRegion","geometry","tab","hash","opacity","hhsregion","streetmap","openMenu","hospital","daycare","school","nursinghome","infoWindows","selectedFeature","hoveredFeature","selectedFeatureIsPinned","download_modal","darkMode","censusEnabled","errorMessage","isResizing","tableData","printPDF","fipsInView","tempState","highlightedFips","loadStatus","marker","compareExtent","preparedMapState","preparedMapCounty","switchDCTract","usstate","interfaceReducer","action","shouldSwitchTract","nursing","themeObj","isLoading","newContent","content","feature","newState","InterfaceProvider","children","useReducer","dispatch","setSelectedFeature","setHHS","hhs","setStreets","setHospitals","hospitals","setDaycare","setSchools","schools","setNursing","setSelectedState","setDownloadRegion","setSelectedScope","setSelectedTract","setSelectedTheme","setSelectedCounty","setSelectedYear","setThemeOpacity","setSearch","setStateSearch","unsetSearch","unsetMarker","loadEnd","doReset","doResetZoom","setToggle","setSelectedTab","setinfobox","pixel","unsetinfobox","addInfoWindow","removeInfoWindow","index","moveInfoWindow","moveHoveredFeature","updateInfoWindow","pinInfoWindow","setMode","updatePinnedFeature","updateHoveredFeature","pinWindow","showDownloadModal","closeDownloadModal","setMessage","setErrorMessage","setIsResize","setTableData","setCensusEnabled","enableCensus","setIMap","setFipsInView","setForceMap","setTempState","setHighlightedFips","setCompareExtent","setLoadStatus","setOpenMenu","setPreparedMapChoice","uiActions","Provider","MapContext","map_init","census_geometry","county_geometry","hhs_geometry","detail_level","fipsList","features","referenceAdded","census_loaded","county_loaded","init_load","boundingBox","tiles","zoomRead","wait","mapReducer","MapProvider","setTiles","setFipsList","setFips","setSvi","setCountyGeo","setCensusGeo","setReferenceAdded","setCensusLoadStatus","setCountyLoadStatus","setInitLoad","setMap","doMapReset","setZoom","setZoomRead","setWait","setCenter","setBbox","mapActions","StandardTooltipWindow","tooltipPlace","place","effect","delayShow","Tooltip","data-tip","data-for","DropDownLabel","toggleOpen","classStr","selected","className","onClick","aria-hidden","DropDown","selectedObj","onChange","focus","useState","open","setOpen","_uniqueId","selectid","dropDownDom","useRef","useEffect","ttip","current","querySelector","getBoundingClientRect","topoff","style","ref","tabIndex","onMouseLeave","e","onFocus","onBlur","htmlFor","title","tehSelected","t","memo","ThemeSelectView","useContext","tooltipMap","adjustbyYear","adjustThemeLabel","ToggleTab","op","option","pose","input","parsedLabel","parsedValue","data-value","ToggleSwitch","position","switchPosition","stopPropagation","newValue","onKeyDown","preventDefault","aria-labelledby","role","aria-disabled","CensusToggle","enabled","helpTexts","split","CompareToggle","aria-label","StateSelect","setEnabled","setvalue","filtededList","setFilteredList","activeToolTip","setActiveToolTip","forceCloseWindow","dropMenu","display","addEventListener","removeEventListener","setTimeout","items","inputProps","getItemValue","renderItem","highlighted","onSelect","sel","filList","YearSelect","ResetButton","DataControls","sviFields","themeColumns","general","general_flag","theme0_flag","theme1_flag","theme2_flag","theme3_flag","theme4_flag","OneMapApiDataService","themeFields","themeFlags","where","ReleaseYear","f","outfields","resultRecordCount","_record_max","geometryType","geometryPrecision","returnTrueCurve","returnGeometry","inSR","outSR","orderByFields","quantizationParameter","convertExtent","ext","toLonLat","_batch_max","getCount","count","convertToSVIobj2","arr","attributes","convertToSVIobj","_chunkArray","copied","getTillEndOfPage","callProps","callCount","callLimit","batchSize","isLastPage","seriesCount","callObject","resultOffset","validateFips","from","getByBatch","maximum","chunkedFips","promises","maxRuns","min","aChunkOfCountyFips","propsOnTheFly","all","flat","getFirstPageTableData","getTableData","allFipsAllPagesData","allPOIpageData","getPOICoords","pw","encodeURIComponent","h","DS","ODS","getCountyLayerReference","getLayers","array_","lyr","convertGeometryToFeatures","format","clonedData","firstNode","objects","TopoJSON","layers","readFeatures","GeoJSON","getTileExtent","getView","calculateExtent","getSize","grid","getSource","tileGrid","tilesObj","forEachTileCoord","getZoom","coord","tileExtent","getTileCoordExtent","getFipsFromExtent","featureFips","mapExtent","countyLyr","forEachFeatureIntersectingExtent","toString","stateName","substr","getFeatureFipsFromExtent","detail","Set","countyLyrSource","add","getPoiData","tile","extentKey","addCountyFIPSInfo","feat","countyFIPS","CDC","set","SN","countiesFromFips","expandedCountyExtent","geo","cntyfips","getVisibleGeometry","getSimpleGeometry","getDetailedGeometry","fstate","memoSimpleGeo","rez","combinedFeatures","FFips","resultFeatures","concat","getVisibleSVI","withinScope","getSviStyle","themeColorSet","themeSlug","sviThemeValue","stylizeGeometry","sviData","useStyle","shape","sviValues","them30Num","inScope","sviStyle","setStyle","TableGrid","rows","setRows","setcolumns","wrapDiv","createRef","loading","setLoading","dataToTable","useCallback","TableColumns","TableGridColumns","TableGridColumnKeys","cols","reduce","col","order","columnProps","adjCol","field","minWidth","cellClassName","class","headerClassName","c","findHighlightInd","findIndex","LQ","getData","useFips","firstPage","getRowClassName","components","Toolbar","ContentData","PureComponent","importXML","xmlfile","callback","arg1","arg2","xhr","XMLHttpRequest","responseType","overrideMimeType","onload","readyState","DONE","responseXML","send","loadcountiesxml","getElementById","opt0","populateCounties_PreparedMapDDL","xmlDoc","getElementsByTagName","getAttribute","opt1","j","opt","firstChild","nodeValue","hasAttribute","dispatchEvent","Event","opencountymap","alert","fileName","selOption","selectedIndex","filePath","PreparedMaps","setUSstate","setCounty","localYear","setLocalYear","updateCountyValue","reloadcountiesxml","ContentInformation","yrStr","Legend","background","FeatureContext","state_init","pinnedFeature","modalIsPinned","featureReducer","FeatureProvider","setPinnedFeature","Modal","visible","delay","pixelCoords","onClose","pinned","divWindow","on","setOn","modalID","hideBox","closeWindow","time","clearTimeout","ModalBackground","DragContainer","dragging","onMove","verbose","updateWhenScrolled","dragRef","mousePosition","setMousePosition","updateMousePosition","ev","clientX","clientY","useMousePosition","containerPose","setContainerPose","winScrollY","setWinScrollY","calculateBounds","outerRect","contentRect","minX","minY","maxX","maxY","scrollY","adjustedCoords","calculateCoords","nextCoords","useOffset","max","calcCoords","JSON","stringify","useMouseDown","isPositionalElement","element","Element","HTMLDocument","domRectToObject","getRelativeBoundingClientRect","domElement","refereceDomElement","rect","refRec","pointWithinRectangle","withinX","withinY","pointWithinDomElement","referenceDomElement","POIFeatureModalContent","values_","info","NAME","ADDRESS","ZIP","CITY","poiListItem","SVIFeatureModalContent","goToPreparedMap","scrollTop","scroll","behavior","countyName","geolevel","allvals","sviValNum","vulnerableText","scopetext","dangerouslySetInnerHTML","__html","FeatureModal","setType","getFeatureSlug","HoveredFeatureModal","windowRef","isOpen","lastClick","isDragging","setIsDragging","dragOffset","setDragOffset","closeThisWindow","mouseup","dragbarClicked","dragBarRect","getLastClickOffset","getSelection","removeAllRanges","selection","empty","SVItitle","POItitle","DragArrow","HoveredFeatureTitle","offsetLeft","setOffsetLeft","titleRef","flip","setFlip","titleBounds","leftEdge","rightEdge","leftDiff","rightDiff","halfwayDown","RemoveMapMarkerButton","useAfterInit","deps","initialRender","effectReturns","defaultPropsFilter","child","addPropsToChildren","startIndex","prefix","suffix","propsFilter","rest","grandKidsInd","Children","variableToInspect","adjustedIndex","Fragment","grandChildren","isValidElement","adjustedProps","cloneElement","fn","Layers","onLoadStatus","mappedChildren","setMappedChildren","mappedKids","zIndex","Layer","addedToMap","setAddedToMap","constructor","onAdded","onPreRender","onPostRender","setOpacity","failsafeOpacity","isNaN","setZIndex","addLayer","removeLayer","VectorLayer","renderOrder","OLVectorLayer","OLVectorSource","updateFeatures","lyrSource","overlaps","setSource","VectorLayer2","loader","newFeatures","clear","addFeatures","Waiting","defaultLayerFilter","Map","projection","minZoom","maxZoom","initExtent","initViewExtent","maxExtent","onZoom","layerFilter","layerFilterFn","onClickFeature","onHoverFeature","onCenter","onInitMap","mapRef","mouseIsDown","setMouseIsDown","isWorking","setIsWorking","loadSet","setLoadSet","loadQueue","mouseDownAction","mouseUpAction","onmapclick","coordinate","pixelCollidesWithUI","targetFeatures","getFeaturesAtPixel","mouseoutMap","querySelectorAll","control","controlCollisionDetected","downloadButton","downloadCollisionDetected","mapPointerMove","hoveredFeatures","mapmoveend","m","mapObject","z","cid","delete","onChildLoadStatus","view","ol","showFullExtent","overlays","setTarget","fit","proj","getProjection","alas","initMap","undefined","getViewport","done","coord1","coord2","line","LineString","round","getLength","DrawExtent","setFeatures","redrawFeature","_offset","minx","miny","maxx","maxy","topLeft","bottomLeft","topRight","bottomRight","Feature","Polygon","drawExtentPolygon","lay","FipsTracker","onSourceInit","updateSource","nationalCountyFeatures","updateFips","fip","OLMSLayer","setLayer","active","setActive","fpoObj","OLMap","OLView","olms","lyrFound","CensusLayer","generateDataSlug","globalOpacity","setVisible","localOpacity","setLocalOpacity","setLyr","selected_data_slug","setSelectedDataSlug","once","refreshColors","refreshSVI","refreshFeatures","getGeometry","ffips","newfeatures","getSvi","canDecorate","localScope","success","decorated","decorateFeatures","getStyleFromFeature","featureWithinScope","restyleFeatures","context","globalCompositeOperation","CountyLayer","getDetailLevel","setDetail","changeQueue","isEmpty","prop","defaultStyle","getDefaultStyle","zoomStyle","boundsStyle","outlineFeatures","resolution","failure","CircleFeature","cirFeat","Point","centerCoord","image","Icon","scale","anchorXUnits","anchorYUnits","anchor","circleStyle","bubbleZoomSizeMatrix","2","subdivide","pixelRange","valueScaling","3","4","5","6","7","8","9","14","PoiBubble","poiInfo","calculateBubbleSize","valWithinRange","r1","r2","bubbleLimits","minimumValueScale","maximumValueScale","getAllIdsFromDistanceMap","ids","reduceTileLookupData","tileData","mapFn","outputTileArr","reducedList","outputPoiList","newPOI","state_data_cache","cached_poilookups","PoiLayer","DDS","loadStateGeometry","getStateGeometry","generateFeatures","fetchGeometry","distanceMap","useIDs","POI","tileLookupData","has","ID","formattedPoiData","formatGeometry","poiClusterToFeatures","preventPointsFromBeingInWater","points","keepPointOnDryLand","point","s","stateFeature","intersectsCoordinate","pointIsWithinUsState","newCenter","getClosestPoint","movePointToState","refreshLayer","poiClusters","poiGroup","getPixelCoordsFromCluster","getPixelFromCoordinate","mergeClusters","clusters","compiled","clust","separatePointsByRange","range","within","without","ca","rrange","cb","DT","groupSplit","statememo","tilePoiData","mapped","found","chunks","chunk","centers","merged","restClusters","clusterA","pop","boundary","outputClusters","clusterResults","mergePointsByPixel","chunksize","separatePoiDataByZoom","fetchPoiDataByExtent","bbox","onMapExtent","call","validateZoom","floorZoom","tileZ","iz","MapControls","React","ops","ZoomControl","zoomScreenControl","Zoom","Control","onMount","clickHandler","onclick","tehcontrol","olControl","render","innerHTML","renderToString","DownloadControl","ZoomNumberControl","setInput","sanitizeZoom","zoomStr","onInput","updateText","acontrol","inp","inputSTR","pattern","required","FullScreenControl","zoomTo","ZoomSelect","boxZoomInInteraction","DragZoom","condition","mapclick","out","btnCtrl","classList","toggle","contains","addInteraction","removeInteraction","filterGeometryByRegion","regionID","objectKeyName","geometries","geom","whiteListAbbr","currentStAbbr","properties","STUSPS","includes","geometryIsWithinRegion","mergeJsonByRegion","regions","r","clonedJson","parse","regionGeometry","mergedRegion","mergeArcs","StateLayer","reportLoadStatus","allStateFeatures","shapes","styleFeatures","RegionLayer","mergedRegionFeatures","regionJson","HHSregionsLayer","staticLabels","HHSRegID","createBoundaryFeatures","labels","createLabelFeatures","GridDebugLayer","OLTileLayer","OLTileDebug","FeatureOutlineLayer","localFeatures","setLocalFeatures","updateFeature","featr","clonedFeature","clone","borderStyle","IconFeature","iconFeat","pic","iconStyle","MapMarkerLayer","markerCoords","HighlightRegionLayer","stateFeatures","hhsFeatures","hhsRegions","MapController","defaultBbox","homeBbox","setHomeBbox","localStateRef","localTractRef","localScopeRef","streetmapLabels","streetmapLinesShapes","featureRef","featureIsWithinScope","ftr","stFIPS","validSviFeature","mustBeClickable","validPoiFeature","validateFeature","hoverFeatureHandler","prevID","nextID","ftrObject","handleFeatureClick","olmap","handleCensusEnabledStatus","simpleZoom","createXYZ","getTilesInView","layerName","sviLayerFilter","poiLayerFilter","ContentMap","inter","offsetWidth","uiHeight","total","elem","offsetHeight","contentHeight","updateSize","checkAdjustShortScreens","DownloadContext","downloading","csv","printState","printScope","csv_link","map_link","doc_link","reducer","DownloadProvider","setcsv_option","setmap_option","init_download","completeDownload","setFilter_option","setState_option","set_csv_link","set_map_link","set_doc_link","setPrintScope","actions","DownloadModal","regionDropdownElement","valid","setValid","localusState","setLocalusState","localMapCheck","setLocalMapCheck","localDataCheck","setLocalDataCheck","localTitleCheck","setLocalTitleCheck","localLegendCheck","setLocalLegendCheck","disablePR","setDisablePR","setPose","validateForm","onRadioClick","clearLinks","setSelectedRegion","selectedArea","selectedRegion","selectedState","getSelectedPrintArea","setStartingPose","xcoord","clientWidth","checked","int","useForce","DownloadModalBackground","Downloader","triggerDownload","onDownloadDoc","dataProps","loadJsonForDownload","req","blob","Blob","documentMode","navigator","msSaveBlob","URL","webkitURL","createObjectURL","onerror","downloadFile","downloadCSV","clonedp","csvState","tableColumns","convertMapToImage","mapdom","includeLegend","includeTitle","mapCanvas","mapContext","fillStyle","fillRect","mapDom","append","prototype","canvas","parentNode","globalAlpha","Number","matrix","transform","match","CanvasRenderingContext2D","setTransform","apply","drawImage","html2canvas","mapCopy","converted","toDataURL","restoreState","dimensions","dpi","downloadJPG","createSendDownload","addLegend","addTitle","print","mapImgUrl","web","getResolution","getWebDimensions","pageWidth","pageHeight","scaling","getPrintDimensions","webView","View","setSize","setView","AppDownloadController","aState","selectedFips","setSelectedFips","csvComplete","set_csvComplete","mapComplete","set_mapComplete","docComplete","set_docComplete","setFipsAndState","tehState","AppDownloader","tabs","TabsContent","tc","CDCheader","SVIBanner","DropCheck","onSelectItem","PointOfInterestUI","nominatimSearch","searchString","signal","countrycodes","q","limit","searchLookup","nominatimSearchStreet","street","nominatimLookup","osm_ids","photonSearch","boundingbox","osm_tag","mapboxSearch","country","proximity","autocomplete","types","onemapSuggestToken","credentialsUrl","geoCodeServerUrl","getCredentials","getCredentialsFromAPI","expires_in","onemapFindAddress","magicKey","creds","SearchUI","controller","usExtent","setExtent","useMapBox","setUseMapBox","setItems","justScrolled","setJustScrolled","convertBBoxFromLonLat","center1","center2","center1CV","fromLonLat","center2CV","map_nominatim","display_name","lat","lon","map_mapbox","newBBox","ctx","newObj","placeID","place_type","place_name","map_photon","countrycode","city","postcode","housenumber","osm_key","osm_id","osm_type","newext","couldBeHouse","firstLet","fallbackSearch","lookups","zipItem","houseItem","mzip","mhouse","getSelectionBBox","foundItem","candidates","xmin","ymin","xmax","ymax","onemapBoundingBox","transformExtent","precise","onInputEnter","preExtent","blur","activeElement","coord1LL","coord2LL","convertBBoxToLonLat","abort","AbortController","renderInput","onMenuVisibilityChange","OpacitySlider","step","MapTitle","scopeText","stateText","trackAdj","AdminControls","localZoom","setLocalZoom","localCenter","setLocalCenter","updateUI","un","changeZoom","ViewControls","Tablist","selectedTab","clickedTab","tabID","isSelected","aria-selected","aria-controls","MobileMenu","ErrorModal","messageText","setMessageText","MessageModal","vis","visClass","isIE","ua","userAgent","test","UnlessIE","AdobeAnalytics","_satellite","ch","prop3","host","prop5","prop16","pathname","prop41","prop8","sendPageView","str","satelite","dataObject","pageName","prop2","track","sendInteraction","eventLabel","eventValue","interactionType","interactionValue","Analytics","dataSlug","scrolled","Interface","CDCHeader","require","App","App404","checkDataDownloads","hasAllStrings","searchStr","outcome","stName","stateList","urlList","generateDataFilesListByType","urlArr","zips","csvs","batch404Lookup","found404","cleared","USE_APP","REACT_APP_BUILD","childNodes","ReactDOM","StrictMode"],"mappings":"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","file":"static/js/main.87ed0d99.chunk.js","sourcesContent":["import { Fill, Stroke, Style, Circle as CircleStyle, Icon } from 'ol/style';\r\nimport Text from 'ol/style/Text';\r\n\r\nimport * as olHas from 'ol/has';\r\nconst canvasHatchPattern = (() => {\r\n var pixelRatio;\r\n var p;\r\n var pctx;\r\n var x0 = 36;\r\n var x1 = -4;\r\n var y0 = -2;\r\n var y1 = 18;\r\n var offset = 32;\r\n\r\n pixelRatio = olHas.DEVICE_PIXEL_RATIO;\r\n p = document.createElement('canvas');\r\n p.width = 32 * pixelRatio;\r\n p.height = 16 * pixelRatio;\r\n pctx = p.getContext('2d');\r\n\r\n pctx.strokeStyle = '#000000';\r\n pctx.lineWidth = 1;\r\n pctx.beginPath();\r\n pctx.moveTo(x0, y0);\r\n pctx.lineTo(x1, y1);\r\n pctx.moveTo(x0 - offset, y0);\r\n pctx.lineTo(x1 - offset, y1);\r\n pctx.moveTo(x0 + offset, y0);\r\n pctx.lineTo(x1 + offset, y1);\r\n pctx.stroke();\r\n\r\n return pctx.createPattern(p, 'repeat');\r\n})();\r\n\r\nconst guide = new Style({\r\n stroke: new Stroke({\r\n color: '#000080',\r\n width: 7\r\n })\r\n});\r\nconst outline = new Style({\r\n stroke: new Stroke({\r\n color: '#000',\r\n width: 0.5\r\n // lineDash: [2, 4],\r\n })\r\n});\r\nconst outlineThick = new Style({\r\n stroke: new Stroke({\r\n color: '#000',\r\n width: 2\r\n // lineDash: [2, 4],\r\n })\r\n});\r\nconst outlineExtent = new Style({\r\n stroke: new Stroke({\r\n color: '#5992e1',\r\n width: 4,\r\n lineDash: [10, 5]\r\n })\r\n});\r\nconst outlineExtentTwo = new Style({\r\n stroke: new Stroke({\r\n color: 'navy',\r\n width: 4,\r\n lineDash: [10, 5]\r\n })\r\n});\r\n\r\nconst outlineHHS = new Style({\r\n stroke: new Stroke({\r\n color: '#ff5200',\r\n width: 7\r\n })\r\n});\r\n\r\nconst outlineHHSlow = new Style({\r\n stroke: new Stroke({\r\n color: '#ff5200',\r\n width: 3\r\n })\r\n});\r\n\r\nconst outlineRegion = new Style({\r\n stroke: new Stroke({\r\n color: '#daa520',\r\n width: 6\r\n })\r\n});\r\n\r\nconst outlineRegionLow = new Style({\r\n stroke: new Stroke({\r\n color: '#daa520',\r\n width: 5\r\n })\r\n});\r\n\r\nconst outlineState = new Style({\r\n stroke: new Stroke({\r\n color: '#000',\r\n width: 3\r\n })\r\n});\r\n\r\nconst outlineStateLow = new Style({\r\n stroke: new Stroke({\r\n color: '#000',\r\n width: 2\r\n })\r\n});\r\n\r\nconst outlineCounty = new Style({\r\n stroke: new Stroke({\r\n color: '#000',\r\n width: 2\r\n })\r\n});\r\nconst outlineCountyLow = new Style({\r\n stroke: new Stroke({\r\n color: '#000',\r\n width: 1\r\n })\r\n});\r\n\r\nconst outlineCensus = new Style({\r\n stroke: new Stroke({\r\n color: '#000',\r\n width: 1\r\n // lineDash: [2, 4],\r\n })\r\n});\r\n\r\nconst outlineFeatureHighlightCensus = new Style({\r\n stroke: new Stroke({\r\n color: '#0e5eaa',\r\n width: 3\r\n })\r\n});\r\nconst outlineFeatureHighlightCounty = new Style({\r\n stroke: new Stroke({\r\n color: '#00695b',\r\n width: 3\r\n })\r\n});\r\n\r\n//Convert A hex, rgb, or pattern value to a open layers style\r\nconst flatColorStyle = (color) => {\r\n return new Style({\r\n fill: new Fill({ color }),\r\n stroke: new Stroke({ color: '#000', width: 0.5 })\r\n });\r\n};\r\nconst flatColorCountyStyle = (color, low = false) => {\r\n return new Style({\r\n fill: new Fill({ color }),\r\n stroke: new Stroke({\r\n color: low ? '#000' : '#000',\r\n width: low ? 0.5 : 1\r\n })\r\n });\r\n};\r\nconst flatColorHoverStyle = (color) => {\r\n return new Style({\r\n fill: new Fill({ color }),\r\n stroke: new Stroke({ color: '#000', width: 4 })\r\n });\r\n};\r\nconst poiCircle = (val, color = '#808080') => {\r\n return val > 10\r\n ? ``\r\n : ``;\r\n};\r\nexport { poiCircle };\r\n\r\nconst circleStyle = (val, size, color, textColor = '#000000', offset = 'center') => {\r\n const distance = 10;\r\n const centerCoord = [20, 20];\r\n const offsets = {\r\n center: centerCoord,\r\n left: [centerCoord[0] + distance * -1, centerCoord[1]],\r\n top: [centerCoord[0], centerCoord[1] + distance * -1],\r\n right: [centerCoord[0] + distance * +1, centerCoord[1]],\r\n bottom: [centerCoord[0], distance * +1 + centerCoord[1]]\r\n };\r\n const selectedOffset = offsets[offset];\r\n return new Style({\r\n image: new Icon({\r\n opacity: 1,\r\n src: 'data:image/svg+xml;utf8,' + encodeURIComponent(poiCircle(val, color)),\r\n scale: (1 / 40) * size,\r\n anchorXUnits: 'pixels',\r\n anchorYUnits: 'pixels',\r\n anchor: selectedOffset\r\n })\r\n });\r\n};\r\n\r\nconst iconStyle = (pic, color, val) => {\r\n return new Style({\r\n image: new Icon({\r\n anchor: [0.5, 46],\r\n anchorXUnits: 'fraction',\r\n anchorYUnits: 'pixels',\r\n opacity: 1,\r\n scale: 0.8,\r\n src: pic,\r\n color: color + ''\r\n })\r\n });\r\n};\r\nconst hhsLabelStyle = (val, highlight = false, offset = 'center') => {\r\n const distance = 20;\r\n const offsets = {\r\n center: [0, 0],\r\n left: [distance * -1, 0],\r\n top: [0, distance * -1],\r\n right: [distance * +1, 0],\r\n bottom: [0, distance * +1]\r\n };\r\n const selectedOffset = offsets[offset];\r\n return new Style({\r\n text: new Text({\r\n font: 'bold 16px \"Montserrat\", sans-serif',\r\n text: val + '',\r\n fill: new Fill({\r\n color: 'white'\r\n }),\r\n padding: [4, 4, 4, 4],\r\n backgroundFill: new Fill({\r\n color: highlight ? '#daa520' : '#ff5200'\r\n }),\r\n backgroundStroke: new Stroke({\r\n color: highlight ? '#b8860b' : '#c13e01',\r\n width: 4\r\n }),\r\n offsetX: 0 + selectedOffset[0],\r\n offsetY: 0 + selectedOffset[1] * -1,\r\n rotation: 0\r\n })\r\n });\r\n};\r\nexport { hhsLabelStyle };\r\n\r\nconst noData = flatColorStyle(canvasHatchPattern);\r\n// const outOfScope = flatColorStyle('red'); //wthis is the color for when svi data cannot be mapped to geometry due to error\r\nconst outOfScope = flatColorStyle('#cccccc'); //wthis is the color for when svi data cannot be mapped to geometry due to error\r\nconst undefinedData = flatColorStyle('#cccccc'); //wthis is the color for when svi data cannot be mapped to geometry due to error\r\n\r\nexport { outlineFeatureHighlightCensus, outlineFeatureHighlightCounty, outlineExtent, outlineExtentTwo, canvasHatchPattern, outlineCensus, outlineThick, outlineRegion, outlineRegionLow, outlineState, outlineStateLow, outlineHHS, outlineHHSlow, outlineCounty, outlineCountyLow, guide, outline, noData, outOfScope, undefinedData, flatColorStyle, flatColorCountyStyle, flatColorHoverStyle, circleStyle, iconStyle };\r\n","import * as mapStyles from '../view/MapVectorStyles';\r\n\r\n// ΔVΔVΔ: Blue Green Yellow colors\r\nvar colorPalletA = { none: mapStyles.canvasHatchPattern, low: 'rgba(255, 255, 204, .7)', med: 'rgba(161, 218, 180, .7)', high: 'rgba(65, 182, 196, .7)', top: 'rgba(34, 94, 168, .7)' };\r\n// ΔVΔVΔ: Greens\r\nvar colorPalletB = { none: mapStyles.canvasHatchPattern, low: 'rgba(237, 248, 233, .7)', med: 'rgba(186, 228, 179, .7)', high: 'rgba(116, 196, 118, .7)', top: 'rgba(35, 139, 69 , .7)' };\r\n// ΔVΔVΔ: Oranges\r\nvar colorPalletC = { none: mapStyles.canvasHatchPattern, low: 'rgba(255, 255, 212, .7)', med: 'rgba(254, 217, 142, .7)', high: 'rgba(254, 153, 41, .7)', top: 'rgba(204, 72, 2 , .7)' };\r\n// ΔVΔVΔ: Purples\r\nvar colorPalletD = { none: mapStyles.canvasHatchPattern, low: 'rgba(242, 240, 247, .7)', med: 'rgba(203, 201, 226, .7)', high: 'rgba(158, 154, 200, .7)', top: 'rgba(106, 81, 163, .7)' };\r\n// ΔVΔVΔ: Blues\r\nvar colorPalletE = { none: mapStyles.canvasHatchPattern, low: 'rgba(239, 243, 255, .7)', med: 'rgba(189, 215, 231, .7)', high: 'rgba(107, 174, 214, .7)', top: 'rgba(33, 113, 181, .7)' };\r\n\r\n//Convert A hex, rgb, or pattern value to a open layers style\r\n// const flatColorStyle = (color) => {\r\n// return new Style({\r\n// fill: new Fill({ color }),\r\n// stroke: new Stroke({ color: \"#000\" }),\r\n// });\r\n// };\r\n\r\n//Convert each Theme attribute to an open layers style\r\nconst colorSchemeToStyle = (scheme) => {\r\n Object.keys(scheme).forEach((key) => {\r\n let color = scheme[key];\r\n scheme[key] = mapStyles.flatColorStyle(color);\r\n scheme[key + '_county'] = mapStyles.flatColorCountyStyle(color);\r\n scheme[key + '_low'] = mapStyles.flatColorStyle(color, true);\r\n scheme[key + '_low_county'] = mapStyles.flatColorCountyStyle(color, true);\r\n scheme[key + '_hover'] = mapStyles.flatColorHoverStyle(color);\r\n });\r\n return scheme;\r\n};\r\n\r\nconst colorSchemeA = colorSchemeToStyle({ ...colorPalletA });\r\nconst colorSchemeB = colorSchemeToStyle({ ...colorPalletB });\r\nconst colorSchemeC = colorSchemeToStyle({ ...colorPalletC });\r\nconst colorSchemeD = colorSchemeToStyle({ ...colorPalletD });\r\nconst colorSchemeE = colorSchemeToStyle({ ...colorPalletE });\r\n\r\n// const noDataStyle = flatColorStyle(mapStyles.canvasHatchPattern);\r\n// var undefinedAreaColorScheme = flatColorStyle(\"#cccccc\");\r\n\r\n// ΔVΔVΔ: Global themes\r\nconst sviThemes = [\r\n { id: 0, xicon: 'globe', label: 'Overall SVI', labelPast: 'Overall SVI', label2020: 'Overall SVI', slug: 'overall_svi', colorPallet: colorPalletA, colorScheme: colorSchemeA, dataNames: [''] },\r\n { id: 1, xicon: 'building', label: 'Socioeconomic Status', labelPast: 'Socioeconomic Status', label2020: 'Socioeconomic Status', slug: 'socioeconomic_status', colorPallet: colorPalletB, colorScheme: colorSchemeB, dataNames: [''] },\r\n { id: 2, xicon: 'house', label: 'Household Composition & Disability', labelPast: 'Household Composition & Disability', label2020: 'Household Characteristics', slug: 'household_composition_disability', colorPallet: colorPalletC, colorScheme: colorSchemeC, dataNames: [''] },\r\n { id: 3, xicon: 'language', label: 'Minority Status & Language', labelPast: 'Minority Status & Language', label2020: 'Racial & Ethnic Minority Status', slug: 'minority_status_language', colorPallet: colorPalletD, colorScheme: colorSchemeD, dataNames: [''] },\r\n { id: 4, xicon: 'car', label: 'Housing Type & Transportation', labelPast: 'Housing Type & Transportation', label2020: 'Housing Type & Transportation', slug: 'housing_rype_transportation', colorPallet: colorPalletE, colorScheme: colorSchemeE, dataNames: [''] }\r\n];\r\n\r\nexport { sviThemes };\r\n","// ΔVΔVΔ: This code must be run at the start of the app or SCRIPT_URL will be null\r\nconst getLocalReactPath = () => {\r\n const scriptPath = document.currentScript.src;\r\n const divide = scriptPath.indexOf('/static/js/');\r\n return scriptPath.substring(0, divide);\r\n};\r\n\r\nconst SCRIPT_URL = getLocalReactPath();\r\nexport { SCRIPT_URL };\r\n","import StatesList from './StaticStatesList.json';\r\nimport CountiesList from './StaticCountiesList.json';\r\nimport { SCRIPT_URL } from '../controller/ScriptUrl';\r\n\r\nconst localDevelopment = (() => {\r\n const localurl = 'http://localhost';\r\n var h = window.location.origin || localurl; //fallback for local testing\r\n return h.substring(0, 16) === localurl;\r\n})();\r\nconst debugMode = Boolean(window.location.search === '?debug=direct');\r\nconst statesList = Array.isArray(StatesList) ? StatesList : Object.values(StatesList);\r\nconst countiesList = Array.isArray(CountiesList) ? CountiesList : Object.values(CountiesList);\r\n\r\nconst PUBLIC_URL = process.env?.PUBLIC_URL;\r\nexport { PUBLIC_URL };\r\n\r\nconst DATA_URL = process.env?.REACT_APP_DATA_URL?.trim() || SCRIPT_URL + '/data';\r\nexport { DATA_URL };\r\n\r\nexport { SCRIPT_URL };\r\n\r\nconst scopeList = ['national', 'state'];\r\n\r\nconst tractList = ['county', 'census'];\r\n\r\nconst minCensusZoom = 8;\r\n\r\nconst staticYearList = [\r\n { id: 5, label: 2020, columns: '2020', localdoc: 'SVI2020Documentation_08.05.22.pdf', varpage: 7, docs: '/placeandhealth/svi/map/data/docs/SVI2020Documentation_08.05.22.pdf', filename: 'svi_2020_Documentation.pdf' },\r\n { id: 4, label: 2018, columns: 'before2020', localdoc: 'SVI2018Documentation_01192022_1.pdf', varpage: 6, docs: 'https://www.atsdr.cdc.gov/placeandhealth/svi/documentation/pdf/SVI2018Documentation_01192022_1.pdf', filename: 'svi_2018_Documentation.pdf' },\r\n { id: 3, label: 2016, columns: 'before2020', localdoc: 'SVI2016Documentation_01192022.pdf', varpage: 5, docs: 'https://www.atsdr.cdc.gov/placeandhealth/svi/documentation/pdf/SVI2016Documentation_01192022.pdf', filename: 'svi_2016_Documentation.pdf' },\r\n { id: 2, label: 2014, columns: 'before2020', localdoc: 'SVI2014Documentation_01192022.pdf', varpage: 5, docs: 'https://www.atsdr.cdc.gov/placeandhealth/svi/documentation/pdf/SVI2014Documentation_01192022\".pdf', filename: 'svi_2014_Documentation.pdf' },\r\n { id: 1, label: 2010, columns: 'before2020', localdoc: 'SVI-2010-Documentation-H.pdf', varpage: 2, docs: 'https://www.atsdr.cdc.gov/placeandhealth/svi/documentation/pdf/SVI-2010-Documentation-H.pdf', filename: 'svi_2010_Documentation.pdf' },\r\n { id: 0, label: 2000, columns: 'before2020', localdoc: 'SVI2000Documentation-H.pdf', varpage: 2, docs: 'https://www.atsdr.cdc.gov/placeandhealth/svi/documentation/pdf/SVI2000Documentation-H.pdf', filename: 'svi_2000_Documentation.pdf' }\r\n];\r\n// [-8963431.22589316, 4711436.653467792, -7452829.01045942, 6017435.399903431]\r\nconst staticRegions = [\r\n { id: 90, label: 'North East', slug: 'north', states: ['CT', 'ME', 'MA', 'NH', 'RI', 'VT', 'NJ', 'NY', 'PA'], bounds: [-8963431.22589316, 4711436.653467792, -7452829.01045942, 6017435.399903431] },\r\n { id: 91, label: 'Midwest', slug: 'midwest', states: ['IA', 'IL', 'MI', 'OH', 'WI', 'IN', 'KS', 'MN', 'MO', 'NE', 'ND', 'SD'], bounds: [-11583671.057132892, 4300030.803637005, -8963298.449877389, 6340327.948480618] },\r\n { id: 92, label: 'South', slug: 'south', states: ['DE', 'DC', 'FL', 'GA', 'MD', 'NC', 'SC', 'VA', 'WV', 'AL', 'KY', 'MS', 'TN', 'AR', 'LA', 'OK', 'TX'], bounds: [-11871738.107350338, 2817279.165905216, -8354406.609551439, 4959208.80562331] },\r\n { id: 93, label: 'West', slug: 'west', states: ['AZ', 'CO', 'ID', 'NM', 'MT', 'UT', 'NV', 'WY', 'AK', 'CA', 'HI', 'OR', 'WA'], bounds: [-13888558.366914133, 3675966.7275074017, -11359213.202471135, 6275282.0832699165] },\r\n { id: 101, label: 'HHS Region 1', slug: 'hhs_1', bounds: [-8207048.885487032, 5012035.78267602, -7454920.732438947, 6016392.843228203] },\r\n { id: 102, label: 'HHS Region 2', slug: 'hhs_2', bounds: [-8879202.748137256, 4715458.061657053, -8000410.112031289, 5622432.644064123] },\r\n { id: 103, label: 'HHS Region 3', slug: 'hhs_3', bounds: [-9314669.693540633, 4375378.482643267, -8315453.342702627, 5201183.892387872] },\r\n { id: 104, label: 'HHS Region 4', slug: 'hhs_4', bounds: [-10201783.354081057, 2870403.981349898, -8399819.28488534, 4742074.857426927] },\r\n { id: 105, label: 'HHS Region 5', slug: 'hhs_5', bounds: [-10823548.790989276, 4437201.018921441, -8963337.550752344, 6338102.318433109] },\r\n { id: 106, label: 'HHS Region 6', slug: 'hhs_6', bounds: [-12139657.48903961, 2980058.997398602, -9909854.080172105, 4439285.342256802] },\r\n { id: 107, label: 'HHS Region 7', slug: 'hhs_7', bounds: [-11583535.68933657, 4299155.480271736, -9919099.662877059, 5388633.782217532] },\r\n { id: 108, label: 'HHS Region 8', slug: 'hhs_8', bounds: [-12920215.80890543, 4437548.37768374, -10735715.755292203, 6274851.243617513] },\r\n { id: 109, label: 'HHS Region 9', slug: 'hhs_9', bounds: [-17838403.528806202, 2146081.977474044, -12138964.070336737, 5161336.555302727] },\r\n { id: 110, label: 'HHS Region 10', slug: 'hhs_10', bounds: [-19839378.76572607, 5159096.592124039, -12361782.61352615, 11542482.88598487] }\r\n];\r\n/*\r\nnorth:\r\n========\r\n-86.6162109, 47.4610385\r\n-59.4873083, 47.4610385\r\n-59.4873083, 37.2303284\r\n-86.6162109, 37.2303284\r\n-86.6162109, 47.4610385\r\n\r\nmidwest:\r\n=======\r\n-115.6640598, 46.9238494\r\n-89.7656259, 46.9238494\r\n-89.7656259, 36.3239001\r\n-115.6640598, 36.3239001\r\n\r\nsouth\r\n======\r\n-110.8740261, 37.9396502\r\n-86.1767605, 37.9396502\r\n-86.1767605, 26.0247440\r\n-110.8740261, 26.0247440\r\n\r\nwest\r\n======\r\n-115.6640598, 46.9238494\r\n-89.7656259, 46.9238494\r\n-89.7656259, 36.3239001\r\n-115.6640598, 36.3239001\r\n*/\r\nconst tabList = [\r\n { id: 0, label: 'Map', slug: 'map', icon: 'map' },\r\n { id: 1, label: 'Table', slug: 'data', icon: 'table' },\r\n { id: 2, label: 'More', slug: 'info', icon: 'info' },\r\n { id: 3, label: 'Details', slug: 'details', close: true, hidden: true }\r\n];\r\n\r\nconst staticPOIList = [\r\n { id: 0, label: 'Streets & Roads', slug: 'streetmap', icon: 'map-signs' },\r\n { id: 1, label: 'HHS Regions', slug: 'hhsregion', icon: 'road' },\r\n { id: 2, label: 'Nursing Home', slug: 'nursinghome', icon: 'hand-holding-heart', color: '#b78907', textColor: '#000', offset: 'left', blacklist: [] },\r\n { id: 3, label: 'Hospital', slug: 'hospital', icon: 'building', color: '#2b5ddf', textColor: '#fff', offset: 'top', blacklist: [] },\r\n { id: 4, label: 'Daycare Center', slug: 'daycare', icon: 'baby', color: '#b76fb0', textColor: '#000', offset: 'right', blacklist: [] },\r\n { id: 5, label: 'Public School', slug: 'school', icon: 'school', color: '#db1325', textColor: '#fff', offset: 'bottom', blacklist: [37422] }\r\n];\r\n\r\nconst mercator = 'EPSG:3857'; //https://epsg.io/3857\r\nconst latlon = 'EPSG:4326'; //https://epsg.io/4326\r\n\r\nconst dataProjection = 'EPSG:4326';\r\nconst featureProjection = 'EPSG:3857';\r\n\r\nconst app_coordinates = {\r\n worldCenter: [0, 0],\r\n usCenter4326: [-98.5789045063735, 39.85508149128133],\r\n usCenter3857: [-10973753.45260824, 4844905.410136566]\r\n};\r\n//left,bottom,right,top\r\nconst app_extents = {\r\n contiguous_us_and_pr: [-14150703.25072198, 1724460.655959669, -7075872.59319234, 6815350.164313462], //mercator\r\n max_map_bounds: [-28150703.25072198, -80000.1396078935, 339584.7237982075, 12446275.841017159] //mercator\r\n};\r\n\r\nconst mapStaticVariables = {\r\n extents: app_extents,\r\n coordinates: app_coordinates,\r\n projections: { mercator, latlon }\r\n};\r\nexport { mapStaticVariables };\r\n\r\nexport { localDevelopment, debugMode, staticPOIList, scopeList, tractList, countiesList, staticYearList, staticRegions, statesList, tabList, dataProjection, featureProjection, minCensusZoom };\r\n\r\nconst getState = (fips) => {\r\n let stateFips = String(fips).substring(0, 2);\r\n return statesList.find((st) => st.id === stateFips);\r\n};\r\nconst getStateName = (fips) => {\r\n let state = getState(fips);\r\n return state?.label || '';\r\n};\r\nexport { getState, getStateName };\r\n\r\nconst getCounty = (fips) => {\r\n let countyFips = String(fips).substring(0, 5);\r\n return countiesList.find((cnt) => cnt.cc + '' == countyFips || cnt.CC + '' == countyFips);\r\n};\r\nconst getCountyName = (fips) => {\r\n let county = getCounty(fips);\r\n return county?.CN || '';\r\n};\r\nexport { getCounty, getCountyName };\r\n","const TEXTS = {\r\n cdc: 'Centers for Disease Control and Prevention',\r\n cdc_subtext: 'CDC 24/7 Saving Lives Protecting People™',\r\n svi: '(Social Vulnerability Index)',\r\n cdc_banner: 'CDC/ATSDR SVI',\r\n popup: {\r\n featureInfo: {\r\n label: 'Identify Result',\r\n button: 'Social Vulnerability Info'\r\n }\r\n },\r\n modals: {\r\n download: {\r\n label: 'Select Information for Download',\r\n link: 'Select All',\r\n maplabel: 'Map (JPG)',\r\n datalabel: 'Data (CSV)',\r\n titleCheck: 'Title',\r\n legendCheck: 'Legend',\r\n currentMap: 'Current Map View',\r\n currentData: 'Current Data Selections',\r\n select_state: 'Select State',\r\n select_county: 'Select County',\r\n usmap: 'United States',\r\n button: 'Download'\r\n },\r\n autoSwitchCensus: {\r\n text: 'Geographic Unit switched to County. Census tracts can be accessed again by zooming in and toggling to the Census Tracts Geographic Unit.'\r\n },\r\n autoSwitchDCtract: {\r\n text: 'There is no State comparison data for county, switched to census'\r\n }\r\n },\r\n legend: {\r\n label: 'Level of Vulnerability',\r\n tooltip: 'Legend',\r\n low: {\r\n label: 'Low',\r\n tooltip: '0.0-0.25 (Least Vulnerable 25%)'\r\n },\r\n med: {\r\n label: 'Low-Medium',\r\n tooltip: '0.2501-0.50'\r\n },\r\n high: {\r\n label: 'Medium-High',\r\n tooltip: '0.5001-0.75'\r\n },\r\n top: {\r\n label: 'High',\r\n tooltip: '0.7501-1.0 (Most Vulnerable 25%)'\r\n },\r\n none: {\r\n label: 'No Data',\r\n tooltip: 'No Data'\r\n },\r\n non_applicable: {\r\n label: 'N/A',\r\n tooltip: 'Area out of scope'\r\n }\r\n },\r\n controls: {\r\n svi_select: {\r\n label: 'SVI Theme',\r\n tooltip: 'Select Overall SVI or one of the SVI themes to display on the map',\r\n tooltiptable: 'Select Overall SVI or one of the SVI themes to display in the table'\r\n },\r\n comparison: {\r\n label: 'Geographic Comparison',\r\n option1: 'Nationwide',\r\n option2: 'Statewide',\r\n tooltip: 'Toggle to view nationwide or statewide data comparison level'\r\n },\r\n state_select: {\r\n label: 'State Selection',\r\n placeholder: 'Select',\r\n tooltip: 'Choose state/district/territory',\r\n disabled: 'Switch Geographic Comparison to Statewide to select a state/district/territory'\r\n },\r\n data_level: {\r\n label: 'Geographic Unit',\r\n option1: 'County',\r\n option2: 'Census Tract',\r\n tooltip: 'Toggle to view SVI data at either county level or census tract level',\r\n disabled: 'Toggle to view SVI data at either county level or census tract level',\r\n helpText: 'Jump to **Zoom Level 8** to view Census Tracts'\r\n },\r\n data_year: {\r\n label: 'Data Year',\r\n tooltip: 'Select SVI data year'\r\n },\r\n reset_button: {\r\n label: 'Reset',\r\n tooltip: 'Click to reset data selections',\r\n resetTooltip: 'To view all of the SVI data, click to reset data selections'\r\n },\r\n poi_select: {\r\n label: 'Map Features',\r\n placeholder: 'Click to view',\r\n tooltip: 'Click to choose map feature layers'\r\n },\r\n svi_opacity: {\r\n label: 'Map Transparency',\r\n tooltip: 'Scroll to adjust transparency levels of the selected SVI layer'\r\n },\r\n search_box: {\r\n label: 'Find address, county, or ZIP code',\r\n tooltip: 'Although search for ZIP or address is available, results will only show county or census tract information'\r\n },\r\n zoom_level: {\r\n tooltip: 'Zoom level'\r\n },\r\n zoom_in: {\r\n tooltip: 'Zoom in on map'\r\n },\r\n zoom_out: {\r\n tooltip: 'Zoom out on map'\r\n },\r\n reset_to_full_extent: {\r\n tooltip: 'Zoom to original map view'\r\n },\r\n night_day_mode: {\r\n tooltip: 'Switch between night and day mode'\r\n },\r\n full_screen: {\r\n tooltip: 'View in full screen'\r\n },\r\n zoom_select: {\r\n tooltip: 'Click and Drag to Zoom'\r\n },\r\n download: {\r\n tooltip: 'Download…'\r\n },\r\n expandCollapse: {\r\n tooltip: 'Click to hide/expand data selections'\r\n }\r\n },\r\n errorMessages: {\r\n 101: {\r\n name: 'DataServiceError',\r\n devNotes: 'An error occured that not been yet documented in this app.',\r\n message: 'Unknown Error'\r\n },\r\n 400: {\r\n name: 'URLError',\r\n devNotes: 'Problem generating url string (probably in code)',\r\n message: 'An error occured loading the page'\r\n },\r\n 403: {\r\n name: 'Permission Error',\r\n devNotes: 'Expired Password',\r\n message: 'An error occured loading the page'\r\n },\r\n 401: {\r\n name: 'LoginAttemptError',\r\n devNotes: 'API User/password is wrong',\r\n message: 'An error occured loading the page'\r\n },\r\n 405: {\r\n name: 'LoginAttemptError',\r\n devNotes: 'API User/password is wrong',\r\n message: 'An error occured loading the page'\r\n },\r\n 498: {\r\n name: 'TokenError',\r\n devNotes: 'Token may have expired or was overriden by another cient',\r\n message: 'An error occured loading the page'\r\n },\r\n 405: {\r\n name: 'DataServiceError',\r\n devNotes: 'Too many login attempts with incorrect credentials',\r\n message: 'An error occured loading the page'\r\n },\r\n 503: {\r\n name: 'DataServiceError',\r\n devNotes: 'server is down',\r\n message: 'Server is unavailable'\r\n }\r\n }\r\n};\r\nexport default TEXTS;\r\n","var init = false; // ΔVΔVΔ: delete token on page load\r\n\r\nconst LocalStorageService = (function () {\r\n var _service;\r\n function _getService() {\r\n if (!_service) {\r\n _service = this;\r\n return _service;\r\n }\r\n return _service;\r\n }\r\n function _setToken(tokenObj) {\r\n localStorage.setItem('access_token', tokenObj.access_token);\r\n localStorage.setItem('refresh_token', tokenObj.refresh_token);\r\n localStorage.setItem('token_expires', tokenObj.expires);\r\n }\r\n function _getAccessToken() {\r\n let token = localStorage.getItem('access_token');\r\n const expires = localStorage.getItem('token_expires');\r\n if (expires == 'undefined' || new Date().getTime() + 20 > expires || !expires) {\r\n _clearToken();\r\n return false;\r\n }\r\n return token;\r\n }\r\n function _getRefreshToken() {\r\n return localStorage.getItem('refresh_token');\r\n }\r\n function _clearToken() {\r\n localStorage.removeItem('access_token');\r\n localStorage.removeItem('refresh_token');\r\n localStorage.removeItem('token_expires');\r\n }\r\n if (!init) {\r\n delete window.localStorage.access_token;\r\n init = true;\r\n }\r\n return {\r\n getService: _getService,\r\n setToken: _setToken,\r\n getAccessToken: _getAccessToken,\r\n getRefreshToken: _getRefreshToken,\r\n clearToken: _clearToken\r\n };\r\n})();\r\nexport default LocalStorageService;\r\n","import axios from 'axios';\r\nimport LocalStorageService from './LocalStorageService';\r\nimport TEXT from '../controller/TextVariables';\r\nimport { localDevelopment } from './StaticVariables';\r\nimport { getZoomFromTileKey } from './DataTransformation';\r\nclass DataServiceError extends Error {\r\n code;\r\n name;\r\n description;\r\n modalMessage;\r\n config;\r\n\r\n constructor(code = 101, message, options = {}) {\r\n //leave here for later troubleshooting\r\n if (!(code in TEXT.errorMessages)) {\r\n console.log(code);\r\n console.log(TEXT.errorMessages);\r\n console.log(message);\r\n console.log(options);\r\n }\r\n const { name, devNotes: description, message: modalMessage } = code in TEXT.errorMessages ? TEXT.errorMessages[code] : TEXT.errorMessages[101];\r\n const combinedMessage = `${code}: API MESSAGE: ${message}: ${description}`;\r\n super(combinedMessage, options);\r\n this.code = code;\r\n this.name = name;\r\n this.description = description;\r\n this.modalMessage = modalMessage;\r\n this.config = options.config;\r\n }\r\n}\r\n\r\nclass DataService {\r\n _verbose = false;\r\n _localStorageService = LocalStorageService;\r\n _needsAuth = false;\r\n _name = 'Data Service';\r\n _client = axios.create({\r\n baseURL: '',\r\n params: { token: '' }\r\n });\r\n _requestCount = 0;\r\n _authClient = axios.create({});\r\n _queue = [];\r\n _authStatus = 0; //0. Unset, 1. Authenticated, -1. Invalid username and Password\r\n _token = false;\r\n _axiosSource = axios.CancelToken.source();\r\n\r\n constructor(props) {\r\n this._needsAuth = props?._needsAuth;\r\n this._name = props?._name;\r\n\r\n this._token = this.authenticate()\r\n .then((res) => {\r\n this._authStatus = 1;\r\n return res;\r\n })\r\n .catch((err) => {\r\n this._authStatus = -1;\r\n return false;\r\n });\r\n\r\n this._client.interceptors.request.use(this.requestInterceptor);\r\n this._client.interceptors.response.use(this.responseInterceptor, this.responseError);\r\n //ΔVΔVΔ: Uncomment to rest token refresh\r\n // setTimeout(async() => {\r\n // console.log('BRK: ')\r\n // this._token = await this._token +'break'\r\n // },10 * 1000)\r\n }\r\n responseError = async (err) => {\r\n if (err.code === 498 && !err.config._retry) {\r\n this._token = await this.authenticate();\r\n return this._client({ _retry: true, ...err.config });\r\n }\r\n return Promise.reject(err);\r\n };\r\n responseInterceptor = (res) => {\r\n //ΔVΔVΔ: Error Handling\r\n if (res.data?.[0]?.status === 'error' || res.data?.error) {\r\n const rawError = res.data?.[0] || res.data.error;\r\n var code = res.data?.error?.code || 505;\r\n var codeDetails = rawError.details?.[0]?.toLowerCase();\r\n if (codeDetails && codeDetails?.indexOf('too many') !== -1) {\r\n code = 405;\r\n }\r\n if (codeDetails && codeDetails.indexOf('invalid username or password') !== -1) {\r\n code = 401;\r\n }\r\n const message = res.data.message || res.data?.error?.message;\r\n var error = new DataServiceError(code, message, { ...res });\r\n throw error;\r\n }\r\n return res;\r\n };\r\n _callsAreAuthorized = async () => {\r\n if (!this._needsAuth) return true;\r\n if (this._authStatus === -1) return false;\r\n if ((await this._token) === 'invalid') return false;\r\n return true;\r\n };\r\n requestInterceptor = async (config) => {\r\n //if congif has keys: data,reponse, or headers, then this interceptor was set to response on accident\r\n if (!this._needsAuth || config.params?.needsAuth === 'false') {\r\n if (config.params.hasOwnProperty('token')) delete config.params.token;\r\n if (config.params.needsAuth) delete config.params.needsAuth;\r\n return config;\r\n }\r\n // ΔVΔVΔ:remove below validation with _callsAreAuthorized\r\n const tok = await this._token; //await for inherited calls\r\n if (tok === 'invalid') {\r\n throw this._client.cancel('Authorization faild ignore request');\r\n }\r\n if (config?.body) config.body.token = tok;\r\n if (config?.params) config.params.token = tok;\r\n return config;\r\n };\r\n // ΔVΔVΔ: Function that takes args and uses a switch case to return the request config to pass to axios for a lookup\r\n _api = (args) => {\r\n return { url: '', body: {}, head: {} };\r\n };\r\n // ΔVΔVΔ: Adds additional pre-flight formatting for config calls\r\n formatCall = (args) => {\r\n const callObj = this._api(args);\r\n callObj.args = args;\r\n this.applyFilterAuth(callObj);\r\n return callObj;\r\n };\r\n\r\n // ΔVΔVΔ: Use for inheritance\r\n applyFiltertransformData = (callObj, res) => {\r\n if (!res || !res.data) return [];\r\n return res.data ? res.data : [];\r\n };\r\n //ΔVΔVΔ: Funtion that returns the request config to pass to axios for the authorization lookup\r\n getAuthCall = () => {\r\n return { url: '', body: {}, head: {} };\r\n };\r\n // ΔVΔVΔ: Format api Operation slug\r\n formatSlug = (args) => {\r\n const { type, scope, tract } = args;\r\n return [type, scope, tract]\r\n .filter((a) => a)\r\n .join('_')\r\n .toLocaleLowerCase()\r\n .replace(/ /g, '_');\r\n };\r\n // ΔVΔVΔ: Check if authentication token is needed/exists otherwise run the auth call and return the token\r\n authenticate = async () => {\r\n if (!this._needsAuth) return 'N/A';\r\n\r\n const startToken = this._localStorageService.getAccessToken();\r\n if (startToken && startToken === 'invalid') {\r\n // throw new Error(\"invalid token clear cache\");\r\n return 'invalid';\r\n }\r\n if (startToken && startToken !== 'undefined') return startToken;\r\n const callObj = this.getAuthCall();\r\n return await axios\r\n .post(callObj.url, callObj.body)\r\n .then((res) => {\r\n this.responseInterceptor(res); //see if there is an error and throw\r\n let dat = this.applyFiltertransformData(callObj, res);\r\n this._localStorageService.setToken({ access_token: dat.token, expires: dat.expires });\r\n return dat.token;\r\n })\r\n .catch((err) => {\r\n this._localStorageService.setToken({ access_token: 'invalid' });\r\n throw err;\r\n });\r\n };\r\n // ΔVΔVΔ: Alters the config to add authorization based on api requirments\r\n applyFilterAuth = (callObj) => {\r\n if (this._needsAuth && callObj.url.length) {\r\n callObj.body.token = this._localStorageService.getAccessToken();\r\n }\r\n return callObj;\r\n };\r\n\r\n get = async (callObj, allowParamTransform = true) => {\r\n this._requestCount++;\r\n const needsAuth = this._needsAuth;\r\n const id = this._requestCount;\r\n return this._client\r\n .get(callObj.url, {\r\n params: callObj.body,\r\n cancelToken: this._axiosSource.token,\r\n paramsSerializer: function paramsSerializer(params) {\r\n if (!needsAuth) delete params.token; //ΔVΔVΔ: remove token from config if this data service does not need authentication\r\n return Object.entries(Object.assign({}, params))\r\n .map(([key, value]) => `${key}=${value}`)\r\n .join('&');\r\n }\r\n })\r\n .then((res) => {\r\n return this.applyFiltertransformData(callObj, res);\r\n });\r\n // .catch((err) => {\r\n // console.log(\"DATA SERvice\", err);\r\n // // return this.onError(callObj, err);\r\n // throw err;\r\n // });\r\n };\r\n post = async (callObj) => {\r\n const needsAuth = this._needsAuth;\r\n if (!needsAuth) delete callObj.body.token;\r\n return this._client.post(callObj.url, callObj.body).then((res) => {\r\n return this.applyFiltertransformData(callObj, res);\r\n });\r\n };\r\n getListData = async (scope) => {\r\n const callObj = this.formatCall({ type: 'list', scope });\r\n return this.get(callObj).then((data) => {\r\n return data.Table ? data.Table : data; //this may be specofoc to an a, maybe move to the api specific file as a data transform\r\n });\r\n };\r\n getPOIData = async (props) => {\r\n const { scope, extent, year, tileKey } = props;\r\n let zoom = getZoomFromTileKey(tileKey);\r\n if (localDevelopment) {\r\n const url = `/mock/${tileKey.replace(/:/g, '_')}_${zoom}_nursinghome_poi.json`;\r\n // const url = `/mock/${tileKey.replace(/:/g, '_')}_${zoom}_${scope}_poi.json`;\r\n return fetch(url)\r\n .then((data) => data.json())\r\n .catch(() => {\r\n return { Table: [], Table1: [{ Count: 0 }] };\r\n });\r\n }\r\n // console.log(props);\r\n const callObj = this.formatCall({ type: 'poi', scope, extent, year, tileKey });\r\n return this.post(callObj).then((data) => {\r\n // var filename = `${tileKey}_${zoom}_${scope}_poi.json`;\r\n // if (!downloadList[filename]) {\r\n // var jsonstr = jsonToDownloadString(data);\r\n // downloadString(jsonstr, filename);\r\n // downloadList[filename] = true;\r\n // console.log(downloadList);\r\n // }\r\n return data;\r\n // return data.Table ? data.Table : data;\r\n // return { Table: [], Table1: [{ Count: 0 }] };\r\n });\r\n };\r\n getGeometryData = async (props) => {\r\n const { type = 'geometry', scope, extent, tract, state, year } = props;\r\n const callObj = this.formatCall({ type, scope, tract, state, year, extent });\r\n return await this.get(callObj);\r\n };\r\n getSVIData = async (props) => {\r\n const { type = 'svi', scope, extent, tract, state, year } = props;\r\n const callObj = this.formatCall({ type, scope, tract, state, year, extent });\r\n return await this.post(callObj);\r\n };\r\n getBaseMapPath = () => {\r\n const { type = 'base', scope = 'geometry' } = {};\r\n return this.formatCall({ type, scope }).url;\r\n };\r\n getBaseStyleData = async (props) => {\r\n //base_style\r\n const { type = 'base', scope = 'style' } = {};\r\n const callObj = this.formatCall({ type, scope });\r\n return this.get(callObj);\r\n };\r\n}\r\nexport { DataService };\r\n\r\n// https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018\r\n\r\n// // JSON call\r\n// //https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018&f=pjson\r\n\r\n// //Returns Json all Fields for year 2018\r\n// // https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018&outFields=*&returnGeometry=false&f=pjson\r\n\r\n// // Returns pbf\r\n// // https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018&outFields=*&returnGeometry=false&f=pbf\r\n\r\n// https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018+AND+comparison%3D%27national%27+AND+ST%3D%2701%27&objectIds=&time=&geometry=&geometryType=esriGeometryEnvelope&inSR=&spatialRel=esriSpatialRelIntersects&distance=&units=esriSRUnit_Foot&relationParam=&outFields=&returnGeometry=true&maxAllowableOffset=&geometryPrecision=&outSR=&havingClause=&gdbVersion=&historicMoment=&returnDistinctValues=false&returnIdsOnly=false&returnCountOnly=false&returnExtentOnly=false&orderByFields=&groupByFieldsForStatistics=&outStatistics=&returnZ=false&returnM=false&multipatchOption=xyFootprint&resultOffset=&resultRecordCount=&returnTrueCurves=false&returnExceededLimitFeatures=false&quantizationParameters=&returnCentroid=false&sqlFormat=none&resultType=&featureEncoding=esriDefault&datumTransformation=&f=json\r\n// https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018+AND+comparison%3D%27national%27+AND+ST%3D%2701%27&objectIds=&time=&geometry=&geometryType=esriGeometryEnvelope&inSR=&spatialRel=esriSpatialRelIntersects&distance=&units=esriSRUnit_Foot&relationParam=&outFields=&returnGeometry=true&maxAllowableOffset=&geometryPrecision=&outSR=&havingClause=&gdbVersion=&historicMoment=&returnDistinctValues=false&returnIdsOnly=false&returnCountOnly=false&f=json\r\n// https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018+AND+comparison%3D%27national%27+AND+ST%3D%2701%27&f=json\r\n// https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year=2018+AND+Comparison=%3Dnational%3D+AND+geoLevel=%3Dcensus%3D&f=JSON\r\n// https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018+AND+comparison%3D%27national%27+AND+ST%3D%2701%27&f=json\r\n// https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018+AND+Comparison%3D%27national%27+AND+geoLevel%3D%27census%27&f=JSON\r\n// https://onemap.cdc.gov/OneMapServices/rest/services/SVI/SVI_consolidated_data/FeatureServer/0/query?where=year%3D2018+AND+comparison%3D%27national%27+AND+ST%3D%2701%27&f=json REFRERENCE\r\n","import { DataService } from './DataService';\r\nimport { mapSVIJson } from './DataTransformation';\r\nimport { DATA_URL } from '../model/StaticVariables';\r\n\r\nconst stateNames = {\r\n 10: 'Delaware',\r\n 11: 'DistrictofColumbia',\r\n 12: 'Florida',\r\n 13: 'Georgia',\r\n 15: 'Hawaii',\r\n 16: 'Idaho',\r\n 17: 'Illinois',\r\n 18: 'Indiana',\r\n 19: 'Iowa',\r\n 20: 'Kansas',\r\n 21: 'Kentucky',\r\n 22: 'Louisiana',\r\n 23: 'Maine',\r\n 24: 'Maryland',\r\n 25: 'Massachusetts',\r\n 26: 'Michigan',\r\n 27: 'Minnesota',\r\n 28: 'Mississippi',\r\n 29: 'Missouri',\r\n 30: 'Montana',\r\n 31: 'Nebraska',\r\n 32: 'Nevada',\r\n 33: 'NewHampshire',\r\n 34: 'NewJersey',\r\n 35: 'NewMexico',\r\n 36: 'NewYork',\r\n 37: 'NorthCarolina',\r\n 38: 'NorthDakota',\r\n 39: 'Ohio',\r\n 40: 'Oklahoma',\r\n 41: 'Oregon',\r\n 42: 'Pennsylvania',\r\n 44: 'RhodeIsland',\r\n 45: 'SouthCarolina',\r\n 46: 'SouthDakota',\r\n 47: 'Tennessee',\r\n 48: 'Texas',\r\n 49: 'Utah',\r\n 50: 'Vermont',\r\n 51: 'Virginia',\r\n 53: 'Washington',\r\n 54: 'WestVirginia',\r\n 55: 'Wisconsin',\r\n 56: 'Wyoming',\r\n 72: 'PuertoRico',\r\n '00': 'AllStates',\r\n '01': 'Alabama',\r\n '02': 'Alaska',\r\n '04': 'Arizona',\r\n '05': 'Arkansas',\r\n '06': 'California',\r\n '08': 'Colorado',\r\n '09': 'Connecticut'\r\n};\r\nclass DevDataService extends DataService {\r\n constructor() {\r\n super({ _needsAuth: false, _name: 'Dev Serv' });\r\n }\r\n\r\n _api = (args) => {\r\n const { type, scope, tract, year = '2010', counties, theme = 0, state = { slug: '', fips: '' }, extent = { x1: 0, y1: 0, x2: 0, y2: 0 } } = args;\r\n const base = window.location.protocol + '//grasp_internal_test.cdc.gov/svi2021/';\r\n const poiBase = `https://svi.cdc.gov`;\r\n const slug = this.formatSlug(args);\r\n const baseMap_arcGIS_style_path = `${window.location.origin}${DATA_URL}/style/light-gray-labels2.json`;\r\n\r\n const baseMap_arcGIS_geometry_path = window.location.protocol + '//basemaps.arcgis.com/v1/arcgis/rest/services/World_Basemap/VectorTileServer/tile/{z}/{y}/{x}.pbf';\r\n const output = { url: '', body: {}, head: {} };\r\n const defaults = {\r\n AppVersion: 'SVIDB',\r\n State: 'US',\r\n XMin: extent.x1,\r\n YMin: extent.y1,\r\n XMax: extent.x2,\r\n YMax: extent.y2\r\n };\r\n switch (slug) {\r\n case 'geometry_state':\r\n output.url = `${DATA_URL}/geometry/detailed_states.json`;\r\n break;\r\n // ΔVΔVΔ: Geometry\r\n case 'geometry_national_county':\r\n let adjyear = year;\r\n output.url = `${DATA_URL}/geometry/national_county_${adjyear}.json`;\r\n break;\r\n\r\n case 'geometry_national_census':\r\n output.url = `${base}/maps/tractstopojson/tracts2010_STFIPS_${state.fips}.json`;\r\n output.loop = {\r\n state\r\n };\r\n break;\r\n\r\n case 'geometry_state_county':\r\n if (!state.slug && state.fips) {\r\n state.slug = stateNames[state.fips];\r\n }\r\n output.url = `${base}/maps/countytopojson/${state.slug}.json`;\r\n break;\r\n\r\n case 'geometry_state_census':\r\n output.url = `${base}/maps/tractstopojson/tracts2010_STFIPS_${state.fips}.json`;\r\n break;\r\n\r\n case 'geometry_hhs':\r\n output.url = `${DATA_URL}/geometry/hhs_regions.json`;\r\n break;\r\n\r\n // ΔVΔVΔ: Lists\r\n case 'list_county':\r\n output.url = `${DATA_URL}/list/allcountieslist.json`;\r\n break;\r\n case 'list_county_sm':\r\n output.url = `${DATA_URL}/list/smallCountieslist.json`;\r\n break;\r\n\r\n case 'list_state':\r\n output.url = `${DATA_URL}/list/statesList.json`;\r\n break;\r\n\r\n // ΔVΔVΔ: SVI data\r\n case 'svi_national_county':\r\n case 'svi_national_census':\r\n case 'svi_state_county':\r\n case 'svi_state_census':\r\n output.url = `${poiBase}/api/SVIData`;\r\n output.body = {\r\n StateFIPS: state.fips ? state.fips : '00',\r\n CountyFIPS: counties,\r\n SVIYear: year,\r\n SVIThemeID: theme\r\n };\r\n break;\r\n\r\n // ΔVΔVΔ: POI\r\n case 'poi_hospital':\r\n case 'poi_hospitals':\r\n output.url = `${poiBase}/api/PostGetPointsData`;\r\n output.body = Object.assign(defaults, {\r\n LayerName: 'Hospitals',\r\n PointsCount: 0,\r\n key: args.tileKey\r\n });\r\n break;\r\n case 'poi_nursinghome':\r\n case 'poi_nursing_home':\r\n case 'poi_nursing_homes':\r\n output.url = `${poiBase}/api/PostGetPointsData`;\r\n output.body = Object.assign(defaults, {\r\n LayerName: 'Nursing Homes',\r\n PointsCount: 0,\r\n key: args.tileKey\r\n });\r\n break;\r\n\r\n case 'poi_daycare':\r\n case 'poi_day_care_centers':\r\n output.url = `${poiBase}/api/PostGetPointsData`;\r\n output.body = Object.assign(defaults, {\r\n LayerName: 'Day Care Centers',\r\n PointsCount: 0,\r\n key: args.tileKey\r\n });\r\n break;\r\n\r\n case 'poi_school':\r\n case 'poi_schools':\r\n case 'poi_public_schools':\r\n output.url = `${poiBase}/api/PostGetPointsData`;\r\n output.body = Object.assign(defaults, {\r\n LayerName: 'Public Schools',\r\n PointsCount: 149,\r\n key: args.tileKey\r\n });\r\n break;\r\n // ΔVΔVΔ: Basemap\r\n case 'base_geometry':\r\n output.url = baseMap_arcGIS_geometry_path;\r\n break;\r\n\r\n case 'base_style':\r\n output.url = baseMap_arcGIS_style_path;\r\n break;\r\n default:\r\n var err = new Error('Could Not create call object config for ' + slug);\r\n throw err;\r\n }\r\n\r\n return output;\r\n };\r\n // ΔVΔVΔ: Use for inheritance\r\n applyFiltertransformData = (callObj, res) => {\r\n if (!res || !res.data) return [];\r\n if (callObj.args && callObj.args.type === 'geometry') {\r\n return [res.data];\r\n }\r\n if (callObj?.args?.type === 'svi') {\r\n return mapSVIJson(res.data);\r\n }\r\n return res.data ? res.data : [];\r\n };\r\n\r\n authenticate = async () => {\r\n return true;\r\n };\r\n applyAuth = (callObj) => {\r\n return callObj;\r\n };\r\n}\r\nexport { DevDataService };\r\n","// ΔVΔVΔ: Filename will be download.csv\r\nconst downloadString = (string, filename = 'download.txt', blank = false, onDownload = () => {}) => {\r\n const link = document.createElement('a');\r\n link.setAttribute('href', string);\r\n link.setAttribute('download', filename);\r\n if (blank) link.setAttribute('target', '_blank');\r\n document.body.appendChild(link); // Required for FF\r\n link.click();\r\n onDownload({ href: string, download: filename, target: blank ? '_blank' : '' });\r\n link.remove(); //use to prevent re-download\r\n return null;\r\n};\r\nexport { downloadString };\r\n\r\n//Found here: https://www.aspsnippets.com/Articles/Automatically-download-PDF-File-using-JavaScript.aspx\r\nconst downloadFile = (url, fileName, onDownload) => {\r\n //Create XMLHTTP Request.\r\n var req = new XMLHttpRequest();\r\n req.open('GET', url, true);\r\n req.responseType = 'blob';\r\n req.onload = function () {\r\n //Convert the Byte Data to BLOB object.\r\n var blob = new Blob([req.response], { type: 'application/octetstream' });\r\n\r\n //Check the Browser type and download the File.\r\n var isIE = false || !!document.documentMode;\r\n if (isIE) {\r\n window.navigator.msSaveBlob(blob, fileName);\r\n } else {\r\n var url = window.URL || window.webkitURL;\r\n var link = url.createObjectURL(blob);\r\n var a = document.createElement('a');\r\n\r\n downloadString(link, fileName, false);\r\n // a.setAttribute(\"download\", fileName);\r\n // a.setAttribute(\"href\", link);\r\n // document.body.appendChild(a);\r\n // a.click();\r\n // document.body.removeChild(a);\r\n }\r\n };\r\n req.onerror = function () {};\r\n onDownload({ href: url, download: fileName, target: '_blank' });\r\n req.send();\r\n};\r\nexport { downloadFile };\r\n","import { getCenter } from 'ol/extent';\r\nimport { boundingExtent } from 'ol/extent';\r\nimport { csv as d3csv } from 'd3';\r\nimport { DevDataService } from './DevDataService';\r\nimport { statesList, countiesList } from './StaticVariables';\r\nimport { downloadString } from '../controller/DownloadString';\r\nimport { pick } from 'lodash';\r\nimport { fromLonLat, transformExtent, get as getExtent } from 'ol/proj';\r\n\r\n// ΔVΔVΔ: Pass an SVI row return themes spport different data attributes for themes by year\r\nconst mapThemeAttributes = (obj) => {\r\n const thm0 = obj.R_PL_THEME1 || obj.RPL_THEMES || obj.Overall_SVI_Percentile;\r\n const thm1 = obj.R_PL_THEME2 || obj.RPL_THEME1 || obj.Theme1_Socioeconomic_Percentile || obj.Theme1_Percentile;\r\n const thm2 = obj.R_PL_THEME3 || obj.RPL_THEME2 || obj.Theme2_HouseholdAndDisability_Percentile || obj.Theme2_Percentile;\r\n const thm3 = obj.R_PL_THEME4 || obj.RPL_THEME3 || obj.Theme3_MinorityAndLanguage_Percentile || obj.Theme3_Percentile;\r\n const thm4 = obj.R_PL_THEME5 || obj.RPL_THEME4 || obj.Theme4_HousingAndTransportation_Percentile || obj.Theme4_Percentile;\r\n return {\r\n theme0: sviValueToSlug(thm0),\r\n theme1: sviValueToSlug(thm1),\r\n theme2: sviValueToSlug(thm2),\r\n theme3: sviValueToSlug(thm3),\r\n theme4: sviValueToSlug(thm4),\r\n theme0Num: thm0,\r\n theme1Num: thm1,\r\n theme2Num: thm2,\r\n theme3Num: thm3,\r\n theme4Num: thm4\r\n };\r\n};\r\nexport { mapThemeAttributes };\r\n\r\nfunction sviValueToSlug(num) {\r\n if (num < 0) return 'none';\r\n if (num > -1 && num < 0.25) return 'low';\r\n if (num > 0.24 && num < 0.5) return 'med';\r\n if (num > 0.49 && num < 0.75) return 'high';\r\n if (num > 0.74) return 'top';\r\n return 'none';\r\n}\r\nconst formatSVIobj = async (arr) => {\r\n let list = {};\r\n arr.forEach((row) => {\r\n let themes = mapThemeAttributes(row);\r\n list[row.FIPS] = Object.values(themes);\r\n });\r\n return list;\r\n};\r\nexport { formatSVIobj };\r\n\r\nconst getTractFill = async (props) => {\r\n let list = {};\r\n return await d3csv(props.styleFile).then((dat) => {\r\n dat.forEach((row) => {\r\n let themes = mapThemeAttributes(row);\r\n list[row.FIPS] = Object.values(themes);\r\n });\r\n return list;\r\n });\r\n};\r\nexport { getTractFill };\r\n\r\nconst mapSVIJson = (dat) => {\r\n let list = {};\r\n dat.forEach((row) => {\r\n let themes = mapThemeAttributes(row);\r\n list[row.FIPS] = Object.values(themes);\r\n });\r\n return list;\r\n};\r\nexport { mapSVIJson };\r\n\r\nconst convertCountyList = async (includeTerritories = false) => {\r\n const countyCoords = await d3csv('/data/list/county_coords.csv');\r\n const DS = new DevDataService();\r\n\r\n const countiesMapped = await DS.getListData('county').then((res) => {\r\n return res\r\n .filter((rec) => {\r\n return rec.SN != null;\r\n })\r\n .map((item, i) => {\r\n let { CC, CN, SN } = item;\r\n //ΔVΔVΔ: Map County coords\r\n let coord = countyCoords.find((record) => record.fips * 1 === CC * 1);\r\n if (!coord) coord = getStateBy(CC.substring(0, 2)); //Use state as a fallback\r\n let cen = coord?.lon ? coord.lon + ',' + coord.lat : coord.center;\r\n SN = coord ? coord.abbr : SN;\r\n return { SN, CC, CN, cen };\r\n });\r\n });\r\n return includeTerritories ? countiesMapped : countiesMapped.filter((cnt) => cnt.SN && cnt.SN !== 'PR');\r\n};\r\nexport { convertCountyList };\r\n\r\n//ΔVΔVΔ: For app cached data building\r\nconst convertCountyListToCSV = async (includeTerritories = false) => {\r\n const arr = await convertCountyList(includeTerritories);\r\n const link = jsonToCSVDownloadString(arr);\r\n downloadString(link, 'counties.csv');\r\n};\r\n\r\nexport { convertCountyListToCSV };\r\n\r\n//ΔVΔVΔ: Expocts fips to be obj {12345:true,65789:true}\r\nconst fipsToState = (fips) => {\r\n const stateIDS = {};\r\n Object.keys(fips).map((key) => {\r\n let id = key.substring(0, 2);\r\n stateIDS[id] = true;\r\n });\r\n\r\n return Object.keys(stateIDS)\r\n .filter((id) => id < 57 || id === 72)\r\n .map((id) => getStateBy(id));\r\n};\r\nexport { fipsToState };\r\n\r\nconst getCountyBy = (value, field = 'id') => {\r\n // ΔVΔVΔ: Search through static county list to find matching value\r\n return false; // if unfound\r\n};\r\n\r\nconst getStateBy = (value, field = 'id') => {\r\n // ΔVΔVΔ: Search through static state list to find matching value\r\n return statesList.find((st) => st[field] == value);\r\n};\r\nexport { getStateBy };\r\n\r\n//ΔVΔVΔ: Convert array of objects to csv string\r\nconst jsonToCSVString = (json, useQuotes = true) => {\r\n const jcopy = json.slice(0);\r\n const indexRow = Object.keys(jcopy[0]);\r\n\r\n jcopy.unshift(indexRow);\r\n const rows = jcopy.map((row) => {\r\n if (!useQuotes) return Object.values(row).join(',');\r\n return '\"' + Object.values(row).join('\",\"') + '\"';\r\n });\r\n return rows.join('\\n');\r\n};\r\nexport { jsonToCSVString };\r\n\r\n//ΔVΔVΔ: Convert csv obj to url encoded link\r\nconst jsonToCSVDownloadString = (json) => {\r\n let csvLink = 'data:text/csv;charset=utf-8,' + jsonToCSVString(json);\r\n return encodeURI(csvLink).replace(/#/g, '%23');\r\n};\r\nexport { jsonToCSVDownloadString };\r\n\r\nconst jsonToDownloadString = (json) => {\r\n return 'data:text/json;charset=utf-8,' + encodeURIComponent(JSON.stringify(json));\r\n};\r\nexport { jsonToDownloadString };\r\n\r\nconst convertStateList = async () => {\r\n const DS = new DevDataService();\r\n const latlon = await d3csv('/data/list/state-lon-lat.csv').then((json) => {\r\n return json;\r\n });\r\n return DS.getListData('state')\r\n .then((res) => {\r\n return res.map((item, i) => {\r\n let slug = item.STATE_NAME.toLowerCase().replace(/ /g, '');\r\n const { minx, miny, maxx, maxy, STATE_ABBR } = item;\r\n const findSt = latlon.find((st) => {\r\n return st.state == item.STATE_NAME;\r\n });\r\n const center = findSt ? [findSt.lon * 1, findSt.lat * 1] : [0, 0];\r\n const bounds = [minx, miny, maxx, maxy];\r\n return { id: item.STATE_FIPS, label: item.STATE_NAME, bounds, slug, center, abbr: STATE_ABBR };\r\n });\r\n })\r\n .then((dat) => dat.slice(1)) // ΔVΔVΔ: Remove \"All States\"\r\n .then((dat) => console.log('**** ', dat));\r\n};\r\nexport { convertStateList };\r\n\r\nconst sortAlphabetical = (a, b) => {\r\n let na = a.name;\r\n let nb = b.name;\r\n if (na < nb) return -1;\r\n if (na > nb) return 1;\r\n return 0;\r\n};\r\n// Math.abs\r\nexport { sortAlphabetical };\r\n\r\nconst createTestPoint = (top, left, str, id) => {\r\n // if (id > 100) return;\r\n // const prevdot = document.querySelectorAll('[pose=\"' + str + top + ',' + left + '\"]');\r\n // if (prevdot.length) return document.createElement('div');\r\n const dot = document.createElement('div');\r\n dot.classList.add('testdot', str);\r\n dot.setAttribute('pose', str + top + ',' + left);\r\n // dot.id = str + id;\r\n dot.style.top = top + 'px';\r\n dot.style.left = left + 'px';\r\n return dot;\r\n};\r\nconst addTestPoints = (a, rest, str = '') => {\r\n const grp = document.createElement('div');\r\n grp.classList.add('tstgrp', str);\r\n grp.id = 'grp' + document.querySelectorAll('.tstgrp').length;\r\n if (a) grp.appendChild(createTestPoint(a[1], a[0], 'a'));\r\n for (let b of rest) {\r\n grp.appendChild(createTestPoint(b[1], b[0], b.length == 3 ? 'c' : 'b'));\r\n }\r\n document.querySelector('.tabpanel #test').appendChild(grp);\r\n};\r\nexport { addTestPoints };\r\n\r\nconst addTestPointInteractions = () => {\r\n document.querySelector('.tstgrp').classList.add('active'); //add class to first node\r\n document.querySelector('.tabpanel #test .tstgrp').addEventListener('mouseover', (e) => {\r\n let prevactive = document.querySelector('.tstgrp.active');\r\n if (prevactive) prevactive.classList.remove('active');\r\n let pos = e.target.getAttribute('pose').replace('b', 'a');\r\n let targetDot = document.querySelector(`[pose=\"${pos}\"]`);\r\n if (targetDot?.parentNode) targetDot?.parentNode.classList.add('active');\r\n });\r\n document.querySelector('.tabpanel #test .tstgrp').addEventListener('mouseout', (e) => {\r\n let prevactive = document.querySelector('.tstgrp.active');\r\n if (prevactive) prevactive.classList.remove('active');\r\n });\r\n};\r\nexport { addTestPointInteractions };\r\n\r\n// Return boolean: check to see if 2 points are within specified range\r\nconst pointsAreWithinRange = (pointA, pointB, range) => {\r\n // use range * range is the same as using the sqrt of the distance calculation\r\n let d = distanceBetweenPoints(pointA, pointB, false);\r\n return d < range * range;\r\n};\r\nexport { pointsAreWithinRange };\r\n\r\nconst distanceBetweenPoints = (pointA, pointB, absolute = false) => {\r\n let w = Math.abs(pointA[0] - pointB[0]); //x-x\r\n let l = Math.abs(pointA[1] - pointB[1]); //y-y\r\n let d = Math.floor(l * l + w * w);\r\n if (!absolute) return d; //Relative distance\r\n return Math.sqrt(d); //Actual distance, less performant\r\n};\r\nexport { distanceBetweenPoints };\r\n\r\nconst groupAsSingle = (json) => {\r\n if (!json.list[0]) return [];\r\n return json.list.map((poi) => {\r\n return {\r\n data: [poi],\r\n x: poi.x,\r\n y: poi.y\r\n };\r\n });\r\n};\r\nexport { groupAsSingle };\r\n\r\nconst getZoomFromTileKey = (tilekey) => {\r\n return tilekey.substring(2, 3);\r\n};\r\nexport { getZoomFromTileKey };\r\n\r\n// ΔVΔVΔ: Expects an array of poi locations\r\n// returns empty data because too much to display\r\nconst groupPoiByState = (json, mapped = {}, format = 'array') => {\r\n // const mapped = {};\r\n //json = [\r\n //{ \"NAME\", \"ADDRESS\", \"CITY\", \"STATE\", \"ZIP\", \"COUNTY\", \"TELEPHONE\", \"x\", \"y\" }\r\n //]\r\n\r\n for (const poi of json) {\r\n // console.log('mapped, poi: ', mapped, poi);\r\n const key = poi.STATE ? poi.STATE : poi.attributes.STATE;\r\n if (!mapped[key]) {\r\n const found = statesList.find((st) => {\r\n return st.abbr == key;\r\n });\r\n if (found) {\r\n mapped[key] = { val: 0, x: found.center[0], y: found.center[1], name: key, data: [] };\r\n } else {\r\n mapped[key] = { val: 0, x: 0, y: 0, name: '', data: [] };\r\n }\r\n }\r\n mapped[key].val++;\r\n mapped[key].data.push(poi);\r\n }\r\n return format == 'array' ? Object.values(mapped) : mapped;\r\n};\r\nexport { groupPoiByState };\r\n\r\nconst factorial = (num) => {\r\n if (num < 0) return -1;\r\n if (num == 0) return 1;\r\n return num * factorial(num - 1);\r\n};\r\nexport { factorial };\r\n\r\nconst triangleNumber = (num) => {\r\n if (num < 0) return -1;\r\n if (num == 0) return 0;\r\n return num + triangleNumber(num - 1);\r\n};\r\n\r\nconst chunkArray = (array, size) => {\r\n const chunked_arr = [];\r\n const numOfChild = Math.ceil(array.length / size); // Round up to the nearest integer\r\n for (let i = 0; i < numOfChild; i++) {\r\n chunked_arr.push(array.splice(0, size));\r\n }\r\n return chunked_arr;\r\n};\r\nexport { chunkArray };\r\n\r\nconst findCenter = (coords) => {\r\n if (coords.length == 1) return coords[0]; //only one set of coords is a point\r\n return getCenter(boundingExtent(coords)); //find point in center of all points provided\r\n};\r\nexport { findCenter };\r\n\r\nconst mapCountyTopoJson = (json_url) => {\r\n fetch(json_url)\r\n .then((res) => res.json())\r\n .then((json) => {\r\n const objkey = Object.keys(json.objects)[0];\r\n const geo = json.objects[objkey].geometries;\r\n const objects = {\r\n counties: {\r\n geometries: geo.map((item) => {\r\n const { COUNTY, NAME, STATE } = item.properties;\r\n return {\r\n arcs: item.arcs,\r\n type: item.type,\r\n properties: {\r\n FIPS: STATE + COUNTY,\r\n NAME: NAME,\r\n STATE_NAME: getStateBy(STATE)?.label\r\n }\r\n };\r\n }),\r\n type: 'GeometryCollection'\r\n }\r\n };\r\n\r\n const output = {\r\n type: json.type,\r\n arcs: json.arcs,\r\n transform: json.transform,\r\n objects: objects\r\n };\r\n });\r\n};\r\nexport { mapCountyTopoJson };\r\n\r\nconst capitalizeFirstLetter = (string) => {\r\n return string.charAt(0).toUpperCase() + string.slice(1);\r\n};\r\n\r\nconst tableDataMappingOrdered = (data, columns = []) => {\r\n return data\r\n .map((row) => {\r\n let item = {}; //whitelistKeys.length ? pick(row, whitelistKeys) : row;\r\n item['GEO LEVEL'] = capitalizeFirstLetter(row.GeoLevel);\r\n item['GEO COMPARISON'] = capitalizeFirstLetter(row.Comparison);\r\n for (let key in columns) {\r\n let props = columns[key];\r\n if (!props?.hide) {\r\n // let key = columns[ind];\r\n item[props.headerName] = row[key];\r\n }\r\n }\r\n delete item['Geo Unit'];\r\n delete item['Comparison'];\r\n const foundState = statesList.find((st) => {\r\n return st.id == row.ST;\r\n });\r\n if (foundState) {\r\n item.STATE = foundState.label;\r\n item.ST_ABBR = foundState.abbr;\r\n }\r\n item.STCNTY = row.FIPS.substring(0, 5);\r\n const foundCounty = countiesList.find((cnty) => {\r\n return cnty.CC + '' === item.STCNTY + '';\r\n });\r\n if (foundCounty) {\r\n var reg = new RegExp(''', 'g');\r\n item.COUNTY = foundCounty.CN.replace(reg, \"'\");\r\n }\r\n return item;\r\n })\r\n .sort((a, b) => parseInt(a.FIPS) - parseInt(b.FIPS));\r\n};\r\nexport { tableDataMappingOrdered };\r\n\r\nconst tableDataMapping = (data, whitelistKeys = []) => {\r\n return data\r\n .map((row) => {\r\n let item = whitelistKeys.length ? pick(row, whitelistKeys) : row;\r\n item.id = row.OBJECTID || row.GRASPID;\r\n item.GeoLevel = capitalizeFirstLetter(item.GeoLevel);\r\n item.Comparison = capitalizeFirstLetter(item.Comparison);\r\n const foundState = statesList.find((st) => {\r\n return st.id == item.ST;\r\n });\r\n if (foundState) {\r\n item.STATE_NAME = foundState.label;\r\n item.STATE_ABBR = foundState.abbr;\r\n }\r\n item.COUNTY_FIPS = item.FIPS.substring(0, 5);\r\n const foundCounty = countiesList.find((cnty) => {\r\n return cnty.CC + '' === item.COUNTY_FIPS + '';\r\n });\r\n if (foundCounty) {\r\n //'\r\n var reg = new RegExp(''', 'g');\r\n item.COUNTY_NAME = foundCounty.CN.replace(reg, \"'\");\r\n }\r\n return item;\r\n })\r\n .sort((a, b) => parseInt(a.FIPS) - parseInt(b.FIPS));\r\n};\r\nexport { tableDataMapping };\r\n\r\nconst readErrorMesssage = (message, err) => {\r\n if (message) return message; //ΔVΔVΔ: If there is a message explicitly sent then use that\r\n let serr = String(err?.err || err); //ΔVΔVΔ: In case send as embeded object\r\n return serr;\r\n};\r\nexport { readErrorMesssage };\r\n\r\n//helper function to convert an extent drawn from:\r\n//https://www.keene.edu/campus/maps/tool/\r\n/*\r\nexample input:\r\n-132.1875000, 48.0093777\r\n-106.9921830, 47.9636190\r\n-107.0361283, 33.2582183\r\n-131.5136728, 33.2232081\r\n*/\r\nconst convertDrawnOnlineExtent = (str) => {\r\n var arr = str.split(`\\n`).map((pointstr) => pointstr.replace(' ', '').split(','));\r\n var pointA = fromLonLat(arr[0]);\r\n var pointB = fromLonLat(arr[2]);\r\n // return [...pointA, ...pointB];\r\n var latlonext = boundingExtent([arr[0], arr[1]]);\r\n return transformExtent(latlonext, getExtent('EPSG:4326'), getExtent('EPSG:3857'));\r\n};\r\n","import { useReducer, createContext } from 'react';\r\nimport { sviThemes } from './SVIThemeModel';\r\nimport { scopeList, tractList, staticYearList, tabList, statesList } from './StaticVariables';\r\nimport produce from 'immer';\r\nimport TEXTS from '../controller/TextVariables';\r\nimport { readErrorMesssage, findCenter } from './DataTransformation';\r\nexport const InterfaceContext = createContext();\r\n\r\nconst infoWindow_init = {\r\n feature: null,\r\n pinned: false\r\n};\r\n//ΔVΔVΔ: UI Context Variables\r\nconst interface_init = {\r\n usState: false,\r\n downloadRegion: false,\r\n scope: scopeList[0],\r\n // scope: scopeList[1],\r\n // usState: statesList.find((st) => st.abbr === 'GA'),\r\n // tract: tractList[1],\r\n tract: tractList[0],\r\n geometry: tractList[0],\r\n theme: sviThemes[0],\r\n year: staticYearList[0],\r\n search: '',\r\n tab: window.location.hash.indexOf('#more') !== -1 ? tabList[2] : tabList[0],\r\n // tab: tabList[1],\r\n opacity: 100,\r\n hhsregion: 0,\r\n streetmap: 1,\r\n openMenu: true,\r\n map: null, //ΔVΔVΔ: Temprarily here to get download working\r\n hospital: 0,\r\n daycare: 0,\r\n school: 0,\r\n nursinghome: 0,\r\n infoWindows: [],\r\n selectedFeature: null,\r\n hoveredFeature: null,\r\n selectedFeatureIsPinned: false,\r\n download_modal: false,\r\n darkMode: false,\r\n censusEnabled: false,\r\n errorMessage: '',\r\n err: '',\r\n message: '',\r\n isResizing: '',\r\n tableData: null,\r\n printPDF: false,\r\n fipsInView: [],\r\n tempState: null,\r\n highlightedFips: null,\r\n loadStatus: 1,\r\n marker: { center: [] },\r\n compareExtent: [-17426261.63232968, 1792316.2485397668, -4521245.272886802, 7897494.571733365],\r\n preparedMapState: false,\r\n preparedMapCounty: false\r\n};\r\n// ΔVΔVΔ: UI Context Methods\r\nconst uiActions = (state, dispatch) => {\r\n return {\r\n setSelectedFeature: (value) => dispatch({ type: 'setSelectedFeature', value }),\r\n setHHS: () => dispatch({ type: 'setHHS', value: !state.hhs }),\r\n setStreets: (value) => dispatch({ type: 'setStreets', value: !state.streetmap }),\r\n setHospitals: () => dispatch({ type: 'setHospitals', value: !state.hospitals }),\r\n setDaycare: () => dispatch({ type: 'setDaycare', value: !state.daycare }),\r\n setSchools: () => dispatch({ type: 'setSchools', value: !state.schools }),\r\n setNursing: () => dispatch({ type: 'setNursing', value: !state.nursing }),\r\n setSelectedState: (value) => dispatch({ type: 'setSelectedState', value }),\r\n setDownloadRegion: (value) => dispatch({ type: 'setDownloadRegion', value }),\r\n setSelectedScope: (value) => dispatch({ type: 'setSelectedScope', value }),\r\n setSelectedTract: (value) => dispatch({ type: 'setSelectedTract', value }),\r\n setSelectedTheme: (value) => dispatch({ type: 'setSelectedTheme', value }),\r\n setSelectedCounty: (value) => dispatch({ type: 'setSelectedCounty', value }),\r\n setSelectedYear: (value) => dispatch({ type: 'setSelectedYear', value }),\r\n setThemeOpacity: (value) => dispatch({ type: 'setThemeOpacity', value }),\r\n setSearch: (value) => dispatch({ type: 'setSearch', value }),\r\n setStateSearch: (value) => dispatch({ type: 'setStateSearch', value }),\r\n unsetSearch: () => dispatch({ type: 'unsetSearch' }),\r\n unsetMarker: () => dispatch({ type: 'unsetMarker' }),\r\n loadEnd: () => dispatch({ type: 'loadEnd' }),\r\n doReset: () => dispatch({ type: 'reset' }),\r\n doResetZoom: () => dispatch({ type: 'resetZoom' }),\r\n setToggle: (name) => dispatch({ type: 'setToggle', name: name, value: !state[name] }),\r\n setSelectedTab: (value) => dispatch({ type: 'setSelectedTab', value }),\r\n setinfobox: (feature, pixel) => dispatch({ type: 'setinfobox', feature, pixel }),\r\n unsetinfobox: () => dispatch({ type: 'unsetinfobox' }),\r\n addInfoWindow: (feature, pixel) => dispatch({ type: 'addInfoWindow', feature, pixel }),\r\n removeInfoWindow: (index) => dispatch({ type: 'removeInfoWindow', index }),\r\n moveInfoWindow: (pixel) => dispatch({ type: 'moveInfoWindow', pixel }),\r\n moveHoveredFeature: (pixel) => dispatch({ type: 'moveHoveredFeature', pixel }),\r\n updateInfoWindow: (feature, pixel) => dispatch({ type: 'updateInfoWindow', feature, pixel }),\r\n pinInfoWindow: (index) => dispatch({ type: 'pinInfoWindow', index }),\r\n setMode: () => dispatch({ type: 'setMode' }),\r\n updatePinnedFeature: (feature) => dispatch({ type: 'updatePinnedFeature', feature }),\r\n updateHoveredFeature: (feature, pixel) => dispatch({ type: 'updateHoveredFeature', feature, pixel }),\r\n pinWindow: (value) => dispatch({ type: 'pinWindow', value }),\r\n showDownloadModal: () => dispatch({ type: 'toggleDownloadModal', value: true }),\r\n closeDownloadModal: () => dispatch({ type: 'toggleDownloadModal', value: false }),\r\n setMessage: (value) => dispatch({ type: 'setMessage', message: value }),\r\n setErrorMessage: (value, err = false) => dispatch({ type: 'setErrorMessage', value, err }),\r\n setIsResize: (value) => dispatch({ type: 'setIsResize', value }),\r\n setTableData: (value) => dispatch({ type: 'setTableData', value }),\r\n setCensusEnabled: (value) => dispatch({ type: 'setCensusEnabled', value }),\r\n enableCensus: (value) => dispatch({ type: 'enableCensus', value }),\r\n setIMap: (value) => dispatch({ type: 'setIMap', value }),\r\n setFipsInView: (value) => dispatch({ type: 'setFipsInView', value }),\r\n setForceMap: (value) => dispatch({ type: 'setForceMap', value }),\r\n setTempState: (value) => dispatch({ type: 'setTempState', value }),\r\n setHighlightedFips: (value) => dispatch({ type: 'setHighlightedFips', value }),\r\n setCompareExtent: (value) => dispatch({ type: 'setCompareExtent', value }),\r\n setLoadStatus: (value) => dispatch({ type: 'setLoadStatus', value }),\r\n setOpenMenu: (value) => dispatch({ type: 'setOpenMenu', value }),\r\n setPreparedMapChoice: (value) => dispatch({ type: 'setPreparedMapChoice', value })\r\n };\r\n};\r\nfunction switchDCTract(scope, usstate, tract) {\r\n // console.log('===> ', ' SCOPE: ',scope,' STATE',usstate?.id,' TRACT: ',tract)\r\n return usstate?.id + '' === '11' && scope === 'state' && tract === 'county';\r\n}\r\n// ΔVΔVΔ: UI Context State Transformation\r\nfunction interfaceReducer(state, action) {\r\n let shouldSwitchTract, tract, usState, message;\r\n switch (action.type) {\r\n case 'setSelectedFeature':\r\n return { ...state, selectedFeature: action.value };\r\n case 'setSelectedTract':\r\n shouldSwitchTract = switchDCTract(state.scope, state.usState, action.value);\r\n tract = shouldSwitchTract ? 'census' : action.value;\r\n message = shouldSwitchTract ? TEXTS.modals.autoSwitchDCtract.text : action.message;\r\n return { ...state, tract, message };\r\n case 'setSelectedScope':\r\n usState = action.value === 'national' ? false : state.usState;\r\n shouldSwitchTract = switchDCTract(action.value, usState, state.tract);\r\n tract = shouldSwitchTract ? 'census' : state.tract;\r\n message = shouldSwitchTract ? TEXTS.modals.autoSwitchDCtract.text : action.message;\r\n return { ...state, scope: action.value, usState, tract, message };\r\n case 'setTempState':\r\n return { ...state, tempState: action.value };\r\n case 'setSelectedTheme':\r\n return { ...state, theme: action.value };\r\n case 'setComparedExtent':\r\n return { ...state, compareExtent: action.value };\r\n case 'setOpenMenu':\r\n return { ...state, openMenu: action.value };\r\n case 'setToggle':\r\n const obj = {};\r\n obj[action.name] = action.value;\r\n return { ...state, ...obj };\r\n case 'setHHS':\r\n return { ...state, hhsregion: action.value };\r\n case 'setHospitals':\r\n return { ...state, hospital: action.value };\r\n case 'setDaycare':\r\n return { ...state, daycare: action.value };\r\n case 'setSchools':\r\n return { ...state, school: action.value };\r\n case 'setNursing':\r\n return { ...state, nursing: action.value };\r\n case 'setSelectedState':\r\n shouldSwitchTract = switchDCTract(state.scope, action.value, state.tract);\r\n tract = shouldSwitchTract ? 'census' : state.tract;\r\n message = shouldSwitchTract ? TEXTS.modals.autoSwitchDCtract.text : action.message;\r\n return { ...state, usState: action.value, tract, message };\r\n case 'setDownloadRegion':\r\n return { ...state, downloadRegion: action.value, message };\r\n case 'setThemeOpacity':\r\n return { ...state, opacity: action.value };\r\n case 'setSelectedYear':\r\n var themeObj = { ...state.theme };\r\n themeObj.label = action.value.label + '' === '2020' ? state.theme.label2020 : state.theme.labelPast;\r\n return { ...state, year: action.value, theme: themeObj };\r\n case 'UIload':\r\n return { ...state, isLoading: true };\r\n case 'UIloadEnd':\r\n return { ...state, isLoading: false };\r\n case 'setSelectedTab':\r\n return { ...state, tab: action.value };\r\n case 'setStreets':\r\n return { ...state, streetmap: action.value };\r\n case 'setMap':\r\n let newContent = Object.assign({}, state.content, {\r\n map: action.value\r\n });\r\n return { ...state, content: newContent };\r\n case 'reset':\r\n return {\r\n ...state,\r\n ...interface_init,\r\n tab: state.tab,\r\n search: ''\r\n };\r\n case 'setSearch':\r\n return {\r\n ...state,\r\n search: action.value,\r\n marker: {\r\n center: findCenter([action.value.slice(0, 2), action.value.slice(2)])\r\n }\r\n };\r\n case 'setStateSearch':\r\n return {\r\n ...state,\r\n search: action.value,\r\n marker: {\r\n center: []\r\n }\r\n };\r\n case 'unsetMarker':\r\n return { ...state, marker: interface_init.marker };\r\n case 'unsetSearch':\r\n return { ...state, search: '', marker: interface_init.marker };\r\n case 'setMode':\r\n return { ...state, darkMode: !state.darkMode };\r\n case 'setTableData':\r\n return { ...state, tableData: action.value };\r\n case 'updatePinnedFeature':\r\n return { ...state, selectedFeature: action.feature };\r\n case 'updateHoveredFeature':\r\n return { ...state, hoveredFeature: action.feature };\r\n case 'pinWindow':\r\n return { ...state, selectedFeatureIsPinned: action.value };\r\n case 'toggleDownloadModal':\r\n return { ...state, download_modal: action.value };\r\n case 'setMessage':\r\n return { ...state, message: action.message };\r\n case 'setErrorMessage':\r\n return {\r\n ...state,\r\n errorMessage: readErrorMesssage(action.value, action.err)\r\n };\r\n case 'setIsResize':\r\n return { ...state, isResizing: action.value };\r\n case 'setCensusEnabled':\r\n case 'enableCensus':\r\n const newState = {\r\n ...state,\r\n censusEnabled: action.value,\r\n tract: action.value ? state.tract : tractList[0]\r\n };\r\n if (state.censusEnabled && action.value === false) {\r\n if (state.tab.slug === 'map' && state.tract === 'census') {\r\n newState.message = TEXTS.modals.autoSwitchCensus.text;\r\n }\r\n }\r\n return newState;\r\n case 'setIMap':\r\n return { ...state, map: action.value };\r\n case 'setFipsInView':\r\n return { ...state, fipsInView: action.value };\r\n case 'setHighlightedFips':\r\n return { ...state, highlightedFips: action.value };\r\n case 'setLoadStatus':\r\n return { ...state, loadStatus: action.value };\r\n case 'setPreparedMapChoice':\r\n // console.log(action.value);\r\n // return state;\r\n return {\r\n ...state,\r\n tab: tabList[2],\r\n preparedMapState: action.value.usstate,\r\n preparedMapCounty: action.value.county\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nconst InterfaceProvider = ({ children }) => {\r\n const [state, dispatch] = useReducer(interfaceReducer, interface_init);\r\n const value = {\r\n ...state,\r\n ...uiActions(state, dispatch)\r\n };\r\n return
\r\n {helpTexts.length > 1 && helpTexts[0]}\r\n \r\n {helpTexts.length === 1 ? helpTexts[0] : helpTexts[1]}\r\n \r\n {helpTexts.length > 2 && helpTexts[2]}\r\n
\r\n )}\r\nSelect from the dropdown menus below to view the prepared county map.
\r\n\r\n \r\n * Printing Tips\r\n \r\n
\r\n\r\n PDF display not loading? Download the most recent version of\r\n Adobe Reader here: \"\r\n \r\n http://get.adobe.com/reader/\r\n \r\n
*/}\r\n\r\n Our suggested citation for use of the SVI Interactive Map:\r\n
\r\n\r\n Centers for Disease Control and Prevention/Agency for Toxic Substances and Disease Registry/Geospatial Research, Analysis, and Services Program. CDC/ATSDR Social Vulnerability Index Interactive Map [Insert {yrStr}, or 2000] Database [Insert US or State]. [url of the interactive map]. Accessed on [Insert date].\r\n\r\n\r\n
\r\n Visit these links to learn more about the CDC/ATSDR Social Vulnerability Index:\r\n
\r\n\r\n For more information, please contact the SVI Coordinator at\r\n \r\n svi_coordinator@cdc.gov\r\n \r\n .\r\n
\r\n\r\n {NAME} \r\n
\r\n {ADDRESS}\r\n
\r\n {CITY} {STATE}, {ZIP}\r\n
\r\n {sviValNum}\r\n
\r\nPossible scores range from 0 (lowest vulnerability) to 1 (highest vulnerability).
\r\n\r\n A score of {sviValNum} indicates a {vulnerableText} level of vulnerability.\r\n
\r\n \r\n View Prepared County Map\r\n \r\n \r\n >\r\n )}\r\n