{"version":3,"sources":["assets/logos/logo-lockup-short.svg","assets/logos/logo-lockup-full.svg","components/NavigationDrawer.tsx","components/Header.tsx","components/Footer.tsx","components/Home.tsx","components/AboutUs.tsx","components/ContactUs.tsx","components/WirelessIcon.tsx","common/constants/constants.tsx","common/utils/TimeUtils.tsx","components/MapTrayLocation.tsx","components/MapSearch.tsx","components/MapFavorites.tsx","components/MapTray.tsx","components/MiniDetailsCard.tsx","components/LocationDetailsHoursCard.tsx","components/LocationDetailsNotesCard.tsx","components/LocationDetailsCard.tsx","components/MapboxReactCluster.tsx","App.tsx","serviceWorker.ts","store/types/AccessPointTypes.ts","store/reducers/accessPointReducer.ts","store/index.ts","index.tsx"],"names":["_defs","_path","_path2","_path3","_path4","_path5","_path6","_extends","Object","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","_objectWithoutProperties","excluded","sourceKeys","keys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","_path7","_path8","_path9","_path10","_path11","_path12","_path13","_path14","_path15","_path16","_path17","_path18","_path19","_path20","_path21","_path22","_path23","_path24","_path25","_path26","_path27","_path28","_ref","svgRef","title","props","createElement","id","viewBox","ref","className","d","ForwardRef","forwardRef","NavigationDrawer","React","useState","right","state","setState","toggleDrawer","anchor","open","event","type","Fragment","onClick","Drawer","onClose","List","to","ListItem","ListItemText","primary","Typography","Header","href","Footer","rel","Home","AboutUs","ContactUs","WirelessIcon","prop","iconClass","iconContainerClass","SEARCHBOX","SEPARATOR","MERIDIEM","formatTime","oldFormatTime","oldFormatTimeArray","split","HH","parseInt","min","ValidateTime","openTime","closeTime","MapTrayLocation","timeString","close","Date","getDay","location","business_hours","sun_open","sun_close","mon_open","mon_close","tue_open","tue_close","wed_open","wed_close","thu_open","thu_close","fri_open","fri_close","sat_open","sat_close","setLocation","display_name","MapSearch","inputValue","setInputValue","setOpen","Array","options","setOptions","isRequestCompleted","setIsRequestCompleted","loading","useEffect","active","a","axios","get","process","then","response","access","data","results","show","Autocomplete","PopperComponent","Popper","placement","modifiers","flip","enabled","ListboxProps","style","maxHeight","noOptionsText","onOpen","getOptionLabel","loc","address","freeform_address","onInputChange","newInputValue","val","onChange","selectedValue","flyTo","onSelected","filterOptions","renderInput","params","InputProps","placeholder","inputProps","setCurrentLocation","MapFavorites","mapTrayLocations","favorites","map","push","MapTray","showSearch","setShowSearch","showFavorites","setShowFavorites","contentClass","setContentClass","closeSearch","closeFavorites","locations","setSelectedLocation","closeAllCards","isTrayOpen","toggleTray","getDirectionsLink","isIOS","isMobile","coordinates","lat","lon","MiniDetailsCard","showMicroCard","closeCard","textAlign","openLocationDetails","LocationDetailsHoursCard","showHours","properties","network_name","LocationDetailsNotesCard","showNotes","instructions","LocationDetailsCard","setShowHours","setShowNotes","addedToFavorites","setAddedToFavorites","closeHours","closeNotes","showLocationDetailsCard","website","toLowerCase","window","favoriteIDs","includes","addToFavorites","removeFromFavorites","Map","ReactMapboxGl","accessToken","String","logoPosition","MapboxReactCluster","setLocations","setIsTrayOpen","setshowMicroCard","selectedLocation","setshowLocationDetailsCard","zoom","mapValues","setMapValues","setFavoriteIDs","locationsForFavorites","setLocationsForFavorites","fetchedAllLocations","setFetchedAllLocations","mapRef","useRef","fetchLocations","fetchAllLocations","distance","Math","ceil","headers","features","convertToAccessPoint","feature","favorite_ids","localStorage","getItem","JSON","parse","closeLocationDetailsCard","setCursor","cursor","getCanvas","locationsInBound","current","bounds","getBounds","forEach","contains","filter","center","onMove","evt","getCenter","lng","getZoom","onMoveEnd","sourceOptions","cluster","clusterMaxZoom","clusterRadius","interactive","sourceId","loc_tmp","onMouseEnter","e","onMouseLeave","layerOptions","layout","console","log","lngLat","essential","paint","property","stops","temp","setItem","stringify","item","navigator","geolocation","getCurrentPosition","position","coords","latitude","longitude","App","classes","isAndroid","isWindows","isMacOs","isChrome","isMobileSafari","isSafari","isEdgeChromium","isEdge","isIE","isFirefox","getDeviceClasses","height","width","path","isLocalhost","Boolean","hostname","match","registerValidSW","swUrl","config","serviceWorker","register","registration","onupdatefound","installingWorker","installing","onstatechange","controller","onUpdate","onSuccess","catch","error","AccessPointTypes","initialAccessPointState","rootReducer","createEncryptor","secretKey","combineReducers","action","ACCESS_POINT_LOADING","ACCESS_POINT_FETCH_LIST","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","store","createStore","applyMiddleware","thunk","ReactDOM","render","StrictMode","document","getElementById","URL","origin","addEventListener","fetch","contentType","status","ready","unregister","reload","checkValidServiceWorker"],"mappings":"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","file":"static/js/main.7050198f.chunk.js","sourcesContent":["var _defs, _path, _path2, _path3, _path4, _path5, _path6;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgLogoLockupShort = function SvgLogoLockupShort(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, [\"svgRef\", \"title\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"logo-lockup-short\",\n viewBox: \"0 0 800 615\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"style\", null, \".cls-1{fill:#9f834a;}.cls-2{fill:#687449;}\"))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M450.16,146.46a10.48,10.48,0,0,1-5.77-1.73,70.27,70.27,0,0,0-78,0,10.53,10.53,0,1,1-11.56-17.61,91.31,91.31,0,0,1,101.12,0,10.53,10.53,0,0,1-5.79,19.34Z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M485.86,102.13a10.47,10.47,0,0,1-6.51-2.26c-18-14.14-44.93-22.26-74-22.26s-56,8.11-73.94,22.25a10.53,10.53,0,1,1-13-16.55c21.61-17,53.31-26.77,87-26.77s65.38,9.76,87,26.78a10.53,10.53,0,0,1-6.52,18.81Z\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M521.8,58.5a10.48,10.48,0,0,1-6.66-2.38c-26.83-21.93-66.83-34.51-109.76-34.51s-82.91,12.58-109.74,34.5A10.53,10.53,0,1,1,282.31,39.8C312.84,14.85,357.69.55,405.38.55S498,14.86,528.47,39.81A10.53,10.53,0,0,1,521.8,58.5Z\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M92.24,214.94c2.15-9.17,5.93-10.79,14.56-10.79h43.7c8.63,0,12.41,1.62,14.57,10.79l91.17,383c2.15,8.09-2.16,10.79-8.1,10.79H191.5c-7,0-10.79-2.16-12.95-10.79L168.3,551.58c-1.62-6.48-3.77-7.56-10.79-7.56H99.79c-7,0-9.17,1.08-10.79,7.56L78.75,598c-2.16,8.63-5.93,10.79-13,10.79H9.16c-5.94,0-10.25-2.7-8.1-10.79Zm15.64,260H150c2.7,0,4.86-2.16,4.32-5.94L132.16,357.9c-1.08-3.77-5.94-3.77-6.48,0L103.56,469C102.49,472.81,104.64,475,107.88,475Z\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M514.11,490.76h-58.8c-7.25,0-10.76,3.12-11.38,10-2.33,14-10.12,37.51-36.09,37.51-25.36,0-38.22-21.76-38.22-64.66v-137c0-42.91,12.86-64.66,38.22-64.66,26,0,33.76,23.5,36.07,37.35.64,7,4.15,10.12,11.4,10.12h58.8c3.14,0,5.55-.9,7.15-2.67,2.46-2.71,2.37-6.72,2.11-9.32-1.24-67.86-46.58-111.71-115.53-111.71-77.63,0-120.38,50-120.38,140.89v137c0,90.85,42.75,140.88,120.38,140.88,69,0,114.29-43.84,115.52-111.52.27-2.78.36-6.79-2.1-9.5C519.66,491.66,517.25,490.76,514.11,490.76Z\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M575.62,597.43V215.48c0-8.09,3.24-11.33,11.33-11.33h102c63.12,0,110.59,48.56,110.59,122.46v24.28c0,73.91-47.47,121.92-110.59,121.92H663.55c-8.09,0-10.25,2.16-10.25,10.26V597.43c0,8.1-3.23,11.33-11.33,11.33H587C578.86,608.76,575.62,605.53,575.62,597.43ZM680.81,400c21.58,0,41-16.72,41-52.86v-21c0-36.15-19.42-52.87-41-52.87H663.55c-8.09,0-10.25,2.15-10.25,10.25V389.73c0,8.09,2.16,10.25,10.25,10.25Z\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgLogoLockupShort, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/logo-lockup-short.81482086.svg\";\nexport { ForwardRef as ReactComponent };","var _defs, _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11, _path12, _path13, _path14, _path15, _path16, _path17, _path18, _path19, _path20, _path21, _path22, _path23, _path24, _path25, _path26, _path27, _path28;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgLogoLockupFull = function SvgLogoLockupFull(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, [\"svgRef\", \"title\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"logo-lockup-short\",\n viewBox: \"0 0 1560 615\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"style\", null, \".cls-1{fill:#687449;}.cls-2{fill:#9f834a;}\"))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M1.12,368V285.16c0-50.57,22.84-83.84,71.45-83.84,45.35,0,67.86,30.34,68.51,66.22.33,3.27-.32,5.87-4.24,5.87H101.28c-3.59,0-5.22-1.3-5.55-4.88-2-11.75-8.15-23.82-23.16-23.82-18.27,0-24.47,17.62-24.47,40.45V368c0,22.84,6.2,40.46,24.47,40.46,15,0,21.2-12.07,23.16-23.82.33-3.59,2-4.9,5.55-4.9h35.56c3.92,0,4.57,2.62,4.24,5.88-.65,35.88-23.16,66.22-68.51,66.22C24,451.87,1.12,418.6,1.12,368Z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M164.35,368.05V285.18c0-50.57,22.84-83.85,71.45-83.85,48.29,0,71.45,33.28,71.45,83.85v82.87c0,50.57-23.16,83.84-71.45,83.84C187.19,451.89,164.35,418.62,164.35,368.05Zm95.59,0V285.18c0-22.83-5.87-40.45-24.14-40.45s-24.46,17.62-24.46,40.45v82.87c0,22.84,6.19,40.45,24.46,40.45S259.94,390.89,259.94,368.05Z\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M488.29,211.11v231c0,4.89-2,6.85-6.85,6.85H456.31c-5.54,0-7.5-2-9.78-6.85l-54.48-121c-1-2.28-3.59-2-3.59.32V442.09c0,4.89-2,6.85-6.86,6.85H348.33c-4.9,0-6.85-2-6.85-6.85v-231c0-4.9,1.95-6.86,6.85-6.86h25.12c5.22,0,7.5,2,9.46,6.86l54.48,121c1,2.29,3.59,2,3.59-.32V211.11c0-4.9,2-6.86,6.85-6.86h33.61C486.33,204.25,488.29,206.21,488.29,211.11Z\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M669.35,211.11v231c0,4.89-2,6.85-6.85,6.85H637.37c-5.54,0-7.5-2-9.78-6.85l-54.48-121c-1-2.28-3.59-2-3.59.32V442.09c0,4.89-2,6.85-6.86,6.85H529.39c-4.9,0-6.85-2-6.85-6.85v-231c0-4.9,2-6.86,6.85-6.86h25.12c5.22,0,7.5,2,9.46,6.86l54.48,121c1,2.29,3.59,2,3.59-.32V211.11c0-4.9,2-6.86,6.85-6.86H662.5C667.39,204.25,669.35,206.21,669.35,211.11Z\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M750.64,297.56c0,4.89,1.3,6.2,6.2,6.2h47c4.9,0,6.86,1.95,6.86,6.85v28.06c0,4.89-2,6.85-6.86,6.85h-47c-4.9,0-6.2,1.3-6.2,6.2V401c0,4.9,1.3,6.2,6.2,6.2h47c4.9,0,6.86,2,6.86,6.85v28.06c0,4.89-2,6.85-6.86,6.85h-93.3c-4.9,0-6.85-2-6.85-6.85v-231c0-4.9,2-6.86,6.85-6.86h93.3c4.9,0,6.86,2,6.86,6.86v28c0,4.9-2,6.85-6.86,6.85h-47c-4.9,0-6.2,1.31-6.2,6.2Z\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M844.25,368V285.16c0-50.57,22.84-83.84,71.45-83.84,45.35,0,67.86,30.34,68.51,66.22.33,3.27-.32,5.87-4.23,5.87H944.41c-3.58,0-5.22-1.3-5.54-4.88-2-11.75-8.16-23.82-23.17-23.82-18.27,0-24.47,17.62-24.47,40.45V368c0,22.84,6.2,40.46,24.47,40.46,15,0,21.21-12.07,23.17-23.82.32-3.59,2-4.9,5.54-4.9H980c3.91,0,4.56,2.62,4.23,5.88-.65,35.88-23.16,66.22-68.51,66.22C867.09,451.87,844.25,418.6,844.25,368Z\"\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M1127.75,211.11v28c0,4.9-2,6.85-6.84,6.85h-29c-4.89,0-6.2,1.31-6.2,6.2V442.09c0,4.89-2,6.85-6.85,6.85h-33.28c-4.89,0-6.85-2-6.85-6.85V252.21c0-4.89-1.3-6.2-6.2-6.2h-29c-4.9,0-6.86-1.95-6.86-6.85v-28c0-4.9,2-6.86,6.86-6.86h117.45C1125.8,204.25,1127.75,206.21,1127.75,211.11Z\"\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M1154.82,211.11c0-4.9,2-6.86,6.85-6.86H1195c4.9,0,6.86,2,6.86,6.86v231c0,4.89-2,6.85-6.86,6.85h-33.28c-4.89,0-6.85-2-6.85-6.85Z\"\n })), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1236.06,368V285.16c0-50.57,22.84-83.84,71.45-83.84,48.28,0,71.44,33.27,71.44,83.84V368c0,50.57-23.16,83.84-71.44,83.84C1258.9,451.87,1236.06,418.6,1236.06,368Zm95.59,0V285.16c0-22.83-5.87-40.45-24.14-40.45S1283,262.33,1283,285.16V368c0,22.84,6.2,40.46,24.47,40.46S1331.65,390.87,1331.65,368Z\"\n })), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-1\",\n d: \"M1560,211.11v231c0,4.89-2,6.85-6.85,6.85H1528c-5.54,0-7.5-2-9.78-6.85l-54.48-121c-1-2.28-3.59-2-3.59.32V442.09c0,4.89-2,6.85-6.86,6.85H1420c-4.9,0-6.85-2-6.85-6.85v-231c0-4.9,2-6.86,6.85-6.86h25.12c5.22,0,7.5,2,9.46,6.86l54.48,121c1,2.29,3.59,2,3.59-.32V211.11c0-4.9,2-6.86,6.85-6.86h33.61C1558,204.25,1560,206.21,1560,211.11Z\"\n })), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M35.93,7c.85-3.59,2.33-4.22,5.71-4.22H58.76c3.38,0,4.86.63,5.7,4.22l35.72,150c.84,3.18-.85,4.23-3.17,4.23H74.82c-2.75,0-4.23-.84-5.07-4.23l-4-18.17c-.63-2.53-1.48-3-4.23-3H38.89c-2.75,0-3.59.43-4.22,3l-4,18.17c-.84,3.39-2.32,4.23-5.07,4.23H3.39c-2.33,0-4-1.05-3.17-4.23Zm6.13,101.86H58.55c1.05,0,1.9-.84,1.69-2.32L51.57,63A1.28,1.28,0,0,0,49,63l-8.67,43.53A1.65,1.65,0,0,0,42.06,108.83Z\"\n })), _path12 || (_path12 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M116.43,156.8V7.19c0-3.17,1.27-4.44,4.44-4.44h14.79c3.17,0,4.23,2.11,4.86,4.44l31.7,94.25a1.32,1.32,0,0,0,2.53,0l31.7-94.25c.85-2.33,1.69-4.44,4.86-4.44h14.8c3.17,0,4.43,1.27,4.43,4.44V156.8c0,3.17-1.26,4.44-4.43,4.44H204.55c-3.17,0-4.44-1.27-4.44-4.44V100.38c0-1.69-1.9-1.9-2.53-.42L179.4,157c-1.05,3-2.11,4.23-5.49,4.23h-.85c-3.38,0-4.43-1.27-5.49-4.23L149.4,100a1.29,1.29,0,0,0-2.54.42V156.8c0,3.17-1.27,4.44-4.44,4.44H120.87C117.7,161.24,116.43,160,116.43,156.8Z\"\n })), _path13 || (_path13 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M283.35,63.19c0,3.17.85,4,4,4H317.8c3.17,0,4.44,1.27,4.44,4.44V89.81c0,3.17-1.27,4.44-4.44,4.44H287.37c-3.17,0-4,.85-4,4v31.91c0,3.17.85,4,4,4H317.8c3.17,0,4.44,1.27,4.44,4.44V156.8c0,3.17-1.27,4.44-4.44,4.44H257.36c-3.17,0-4.44-1.27-4.44-4.44V7.19c0-3.17,1.27-4.44,4.44-4.44H317.8c3.17,0,4.44,1.27,4.44,4.44V25.36c0,3.17-1.27,4.44-4.44,4.44H287.37c-3.17,0-4,.84-4,4Z\"\n })), _path14 || (_path14 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M436.33,161.24H412.66c-2.74,0-4.22-.84-5.07-3l-20.07-51.56h-8.24c-3.17,0-4,.84-4,4V156.8c0,3.17-1.27,4.44-4.44,4.44H349.27c-3.17,0-4.44-1.27-4.44-4.44V7.19c0-3.17,1.27-4.44,4.44-4.44h39.94c24.72,0,43.32,19,43.32,48v8c0,17.54-6.76,31.49-17.75,39.73L438.45,157C439.5,159.55,438.66,161.24,436.33,161.24ZM379.28,78.19H386c8.45,0,16.06-6.55,16.06-20.71v-7c0-14.16-7.61-20.71-16.06-20.71h-6.76c-3.17,0-4,.84-4,4V74.18C375.26,77.35,376.11,78.19,379.28,78.19Z\"\n })), _path15 || (_path15 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M453.85,7.19c0-3.17,1.27-4.44,4.44-4.44h21.56c3.17,0,4.43,1.27,4.43,4.44V156.8c0,3.17-1.26,4.44-4.43,4.44H458.29c-3.17,0-4.44-1.27-4.44-4.44Z\"\n })), _path16 || (_path16 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M506.68,108.83V55.16C506.68,22.4,521.47.85,553,.85c29.37,0,43.95,19.65,44.38,42.9.21,2.11-.22,3.8-2.75,3.8h-23c-2.32,0-3.38-.85-3.59-3.17C566.69,36.77,562.68,29,553,29c-11.84,0-15.85,11.41-15.85,26.21v53.67c0,14.8,4,26.21,15.85,26.21,9.72,0,13.73-7.82,15-15.43.21-2.32,1.27-3.17,3.59-3.17h23c2.53,0,3,1.69,2.75,3.81-.43,23.24-15,42.89-44.38,42.89C521.47,163.14,506.68,141.59,506.68,108.83Z\"\n })), _path17 || (_path17 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M637.68,7c.85-3.59,2.33-4.22,5.71-4.22H660.5c3.39,0,4.87.63,5.71,4.22l35.71,150c.85,3.18-.84,4.23-3.17,4.23H676.56c-2.74,0-4.22-.84-5.07-4.23l-4-18.17c-.64-2.53-1.48-3-4.23-3H640.64c-2.75,0-3.59.43-4.23,3l-4,18.17c-.85,3.39-2.33,4.23-5.07,4.23H605.14c-2.33,0-4-1.05-3.17-4.23Zm6.13,101.86h16.48c1.06,0,1.9-.84,1.69-2.32L653.32,63a1.28,1.28,0,0,0-2.54,0l-8.66,43.53A1.65,1.65,0,0,0,643.81,108.83Z\"\n })), _path18 || (_path18 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M811.16,7.19V156.8c0,3.17-1.27,4.44-4.44,4.44H790.45c-3.6,0-4.86-1.27-6.34-4.44L748.82,78.4c-.64-1.48-2.33-1.27-2.33.21V156.8c0,3.17-1.26,4.44-4.44,4.44H720.5c-3.17,0-4.44-1.27-4.44-4.44V7.19c0-3.17,1.27-4.44,4.44-4.44h16.27c3.38,0,4.86,1.27,6.13,4.44l35.29,78.4c.63,1.48,2.33,1.27,2.33-.21V7.19c0-3.17,1.26-4.44,4.43-4.44h21.77C809.89,2.75,811.16,4,811.16,7.19Z\"\n })), _path19 || (_path19 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1038.69,609.32v-114c0-2.42,1-3.38,3.38-3.38h30.44c18.85,0,33,14.49,33,36.56v7.25c0,22.07-14.17,36.4-33,36.4h-7.57c-2.41,0-3.06.64-3.06,3.06v34.15c0,2.42-1,3.38-3.38,3.38h-16.43C1039.65,612.7,1038.69,611.74,1038.69,609.32Zm31.4-59c6.45,0,12.25-5,12.25-15.79V528.3c0-10.79-5.8-15.79-12.25-15.79h-5.15c-2.41,0-3.06.65-3.06,3.07v31.73c0,2.41.65,3.06,3.06,3.06Z\"\n })), _path20 || (_path20 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1190.41,612.7h-18c-2.1,0-3.23-.64-3.87-2.25l-15.3-39.3h-6.29c-2.41,0-3.05.64-3.05,3.06v35.11c0,2.42-1,3.38-3.39,3.38h-16.42c-2.42,0-3.39-1-3.39-3.38v-114c0-2.42,1-3.38,3.39-3.38h30.44c18.84,0,33,14.49,33,36.56v6.12c0,13.37-5.16,24-13.53,30.28l18,44.62C1192.82,611.42,1192.18,612.7,1190.41,612.7Zm-43.5-63.3h5.16c6.44,0,12.24-5,12.24-15.78V528.3c0-10.79-5.8-15.79-12.24-15.79h-5.16c-2.41,0-3.05.65-3.05,3.07v30.76C1143.86,548.76,1144.5,549.4,1146.91,549.4Z\"\n })), _path21 || (_path21 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1202.64,572.75v-40.9c0-25,11.28-41.4,35.28-41.4,23.84,0,35.27,16.42,35.27,41.4v40.9c0,25-11.43,41.4-35.27,41.4C1213.92,614.15,1202.64,597.73,1202.64,572.75Zm47.2,0v-40.9c0-11.28-2.9-20-11.92-20s-12.08,8.7-12.08,20v40.9c0,11.28,3.06,20,12.08,20S1249.84,584,1249.84,572.75Z\"\n })), _path22 || (_path22 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1282.86,609.32V595.15c0-2.42,1-3.39,3.38-3.39h5.64c4.67,0,7.41-2.74,7.41-7.89V495.28c0-2.42.8-3.38,3.38-3.38h16.43c2.42,0,3.38,1,3.38,3.38V585.8c0,16.76-12.56,26.9-28.18,26.9h-8.06C1283.82,612.7,1282.86,611.74,1282.86,609.32Z\"\n })), _path23 || (_path23 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1368.55,538c0,2.42.64,3.07,3,3.07h23.2c2.42,0,3.38,1,3.38,3.38v13.85c0,2.41-1,3.38-3.38,3.38h-23.2c-2.41,0-3,.65-3,3.06V589c0,2.42.64,3.07,3,3.07h23.2c2.42,0,3.38,1,3.38,3.38v13.85c0,2.42-1,3.38-3.38,3.38h-46.07c-2.41,0-3.38-1-3.38-3.38v-114c0-2.42,1-3.38,3.38-3.38h46.07c2.42,0,3.38,1,3.38,3.38v13.85c0,2.42-1,3.38-3.38,3.38h-23.2c-2.41,0-3,.65-3,3.07Z\"\n })), _path24 || (_path24 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1413.33,572.75v-40.9c0-25,11.27-41.4,35.28-41.4,22.38,0,33.5,15,33.82,32.69.16,1.62-.16,2.9-2.09,2.9h-17.56c-1.77,0-2.57-.64-2.74-2.41-1-5.8-4-11.76-11.43-11.76-9,0-12.08,8.7-12.08,20v40.9c0,11.28,3.06,20,12.08,20,7.41,0,10.47-6,11.43-11.76.17-1.77,1-2.41,2.74-2.41h17.56c1.93,0,2.25,1.28,2.09,2.9-.32,17.72-11.44,32.69-33.82,32.69C1424.6,614.15,1413.33,597.73,1413.33,572.75Z\"\n })), _path25 || (_path25 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1560,495.28v13.85c0,2.42-1,3.38-3.38,3.38h-14.34c-2.41,0-3.06.65-3.06,3.07v93.74c0,2.42-1,3.38-3.38,3.38h-16.43c-2.42,0-3.39-1-3.39-3.38V515.58c0-2.42-.64-3.07-3-3.07h-14.34c-2.42,0-3.38-1-3.38-3.38V495.28c0-2.42,1-3.38,3.38-3.38h58C1559,491.9,1560,492.86,1560,495.28Z\"\n })), _path26 || (_path26 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1355.89,160.38a11.29,11.29,0,0,1-6.24-1.87,75.91,75.91,0,0,0-84.26,0,11.38,11.38,0,1,1-12.49-19,98.63,98.63,0,0,1,109.24,0,11.38,11.38,0,0,1-6.25,20.89Z\"\n })), _path27 || (_path27 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1394.44,112.49a11.3,11.3,0,0,1-7-2.44c-19.41-15.28-48.54-24-79.9-24s-60.47,8.76-79.88,24a11.38,11.38,0,1,1-14.08-17.88c23.35-18.38,57.59-28.92,94-28.92s70.63,10.55,94,28.93a11.38,11.38,0,0,1-7,20.32Z\"\n })), _path28 || (_path28 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"cls-2\",\n d: \"M1433.27,65.36a11.31,11.31,0,0,1-7.19-2.57c-29-23.69-72.2-37.28-118.57-37.28S1217.94,39.09,1189,62.78a11.38,11.38,0,0,1-14.4-17.63c33-26.95,81.44-42.4,133-42.4s100,15.46,133,42.42a11.38,11.38,0,0,1-7.21,20.19Z\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgLogoLockupFull, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/logo-lockup-full.ebafc2ce.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\r\nimport Drawer from '@material-ui/core/Drawer';\r\nimport List from '@material-ui/core/List';\r\nimport ListItem from '@material-ui/core/ListItem';\r\nimport ListItemText from '@material-ui/core/ListItemText';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport {Link} from 'react-router-dom'\r\nimport '../sass/main.scss';\r\n\r\ntype Anchor = 'right';\r\n\r\nexport default function NavigationDrawer() {\r\n const [state, setState] = React.useState({ \r\n right: false\r\n });\r\n\r\n const toggleDrawer = (anchor: 'right', open: boolean) => (\r\n event: React.KeyboardEvent | React.MouseEvent,\r\n ) => {\r\n if (\r\n event.type === 'keydown' &&\r\n ((event as React.KeyboardEvent).key === 'Tab' ||\r\n (event as React.KeyboardEvent).key === 'Shift')\r\n ) {\r\n return;\r\n }\r\n\r\n setState({ ...state, [anchor]: open });\r\n };\r\n\r\n \r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Find Wi-Fi}/>\r\n \r\n \r\n \r\n \r\n \r\n About Us}/>\r\n \r\n \r\n \r\n \r\n \r\n Contact Us}/>\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React from 'react';\nimport {ReactComponent as ACPLogoShort} from '../assets/logos/logo-lockup-short.svg';\nimport {ReactComponent as ACPLogoFull} from '../assets/logos/logo-lockup-full.svg';\nimport '../sass/main.scss';\nimport NavigationDrawer from './NavigationDrawer'\n\nconst Header = () => {\n return (\n
\n
\n
\n \n \n \n \n
\n \n
\n
\n )\n};\n\nexport default Header;","import React from 'react';\nimport '../sass/main.scss';\n\n\n\nconst Footer = () => {\n return (\n \n )\n};\n\nexport default Footer;","import React from 'react';\nimport '../sass/main.scss';\nimport {ReactComponent as ACPLogoFull} from '../assets/logos/logo-lockup-full.svg';\nimport {Link} from 'react-router-dom'\n\n\nconst Home = () => {\n return (\n
\n
\n \n Find Wi-Fi Locations\n \n \n
\n
\n );\n};\n\nexport default Home;","import React from 'react';\nimport '../sass/main.scss';\n\nconst AboutUs = () => {\n return (\n
\n
\n
\n

What is the American Connection Project?

\n
\n
\n \n

Millions of Americans go without broadband internet access—most of them in rural communities. The American Connection Project fosters long-term digital inclusion in support of vibrant and thriving rural communities. Efforts include raising awareness about the critical nature of connectivity; advocating for meaningful policy reform and broadband investment; and, taking decisive action to provide connectivity options where they’re needed most. Land O’Lakes is convening organizations and leaders from across the country in this critical time to build strong rural communities positioned for competitiveness and connection now and in the future.

\n

Learn more at www.americanconnectionproject.com

\n
\n
\n )\n};\n\nexport default AboutUs;","import React from 'react';\nimport '../sass/main.scss';\n\nconst ContactUs = () => {\n return (\n
\n
\n

Contact Us

\n
\n
\n \n

Questions? Comments?

\n

Contact us.

\n
\n
\n )\n};\n\nexport default ContactUs;","import React from \"react\";\n\ninterface WirelessIconProp {\n type: string\n}\n\nconst WirelessIcon = (prop: WirelessIconProp) => {\n let iconContainerClass = \"icon-container \";\n let iconClass;\n\n switch(prop.type) { \n case \"on\": { \n iconContainerClass += \"on\";\n iconClass = \"acp acp-wifi-on-text\"\n break; \n } \n case \"off\": { \n iconContainerClass += \"off\";\n iconClass = \"acp acp-wifi-off-text\"\n break; \n }\n case \"unknown\": { \n iconContainerClass += \"unknown\";\n iconClass = \"acp acp-wifi\"\n break; \n } \n default: { \n //statements; \n break; \n } \n } \n return (\n
\n \n
\n );\n};\n\nexport default WirelessIcon;","const CLOSED = 'Closed'\nconst HOURS_24 = '24 Hours'\nconst TIME_ZERO = '00:00'\nconst TIME_24OCLOCK = '24:00'\n\nconst SEARCHBOX = {\n INITIAL_MESSAGE: 'Enter Address',\n NO_MATCH_FOUND: 'No Matching Address Found'\n}\n\nconst SEPARATOR = {\n COLON: ':'\n}\n\nconst MERIDIEM = {\n ANTE: 'AM',\n POST: 'PM'\n}\n\nconst FAVORITES = 'favorites'\n\nexport {CLOSED, TIME_ZERO, TIME_24OCLOCK, HOURS_24, SEARCHBOX, SEPARATOR, MERIDIEM, FAVORITES};","import { CLOSED, TIME_ZERO, TIME_24OCLOCK, HOURS_24, SEPARATOR, MERIDIEM } from \"../constants/constants\";\n\nconst formatTime = (oldFormatTime: string) => {\n var oldFormatTimeArray = oldFormatTime.split(SEPARATOR.COLON);\n\n var HH = parseInt(oldFormatTimeArray[0]);\n var min = oldFormatTimeArray[1];\n\n var AMPM = HH >= 12 && HH !== 24 ? MERIDIEM.POST : MERIDIEM.ANTE;\n var hours;\n if (HH === 0) {\n hours = HH + 12;\n } else if (HH > 12) {\n hours = HH - 12;\n } else {\n hours = HH;\n }\n var newFormatTime = hours + SEPARATOR.COLON + min + \" \" + AMPM;\n return newFormatTime;\n}\n\nconst ValidateTime = (openTime: string, closeTime: string) => {\n if (CLOSED === openTime)\n return CLOSED\n else if (TIME_ZERO === openTime && TIME_24OCLOCK === closeTime)\n return HOURS_24\n else\n return `${formatTime(openTime)} - ${formatTime(closeTime)}`\n}\n\nexport {ValidateTime};","import React from 'react';\nimport '../sass/main.scss';\nimport { IAccessPoint } from '../store/types/AccessPointTypes';\nimport WirelessIcon from './WirelessIcon';\nimport { ValidateTime } from \"../common/utils/TimeUtils\";\n\ninterface MapTrayLocationProp {\n location: IAccessPoint,\n setLocation: (location: any) => void\n }\n\nconst MapTrayLocation = (prop: MapTrayLocationProp) => {\n let open = \"\";\n let close = \"\";\n let timeString;\n const dayOfWeek = new Date().getDay();\n\n switch(dayOfWeek) { \n case 0: { \n open = prop.location.business_hours.sun_open;\n close = prop.location.business_hours.sun_close;\n break; \n } \n case 1: { \n open = prop.location.business_hours.mon_open;\n close = prop.location.business_hours.mon_close;\n break; \n } \n case 2: { \n open = prop.location.business_hours.tue_open;\n close = prop.location.business_hours.tue_close;\n break; \n }\n case 3: { \n open = prop.location.business_hours.wed_open;\n close = prop.location.business_hours.wed_close;\n break; \n } \n case 4: { \n open = prop.location.business_hours.thu_open;\n close = prop.location.business_hours.thu_close;\n break; \n }\n case 5: { \n open = prop.location.business_hours.fri_open;\n close = prop.location.business_hours.fri_close;\n break; \n } \n case 6: { \n open = prop.location.business_hours.sat_open;\n close = prop.location.business_hours.sat_close;\n break; \n } \n default: { \n //statements; \n break; \n } \n }\n\n if(open && close)\n {\n timeString = ValidateTime(open,close);\n }\n\n return (\n
{prop.setLocation(prop.location)}}> \n
\n \n
\n
\n

{prop.location.display_name}

\n

{timeString}

\n
\n
\n \n
\n
\n )\n};\n\nexport default MapTrayLocation;","import React, { useState } from 'react';\nimport '../sass/main.scss';\nimport Autocomplete, { /*createFilterOptions*/ } from '@material-ui/lab/Autocomplete';\nimport axios, {AxiosResponse} from 'axios';\nimport { IAddressResponseType } from '../store/types/AddressResponseTypes';\nimport { Popper } from '@material-ui/core';\nimport { SEARCHBOX } from '../common/constants/constants';\n\n\ninterface MapSearchProp{\n show: boolean,\n close: () => void,\n flyTo: (location: IAddressResponseType) => void,\n setCurrentLocation: () => void\n}\n\nconst MapSearch = (prop: MapSearchProp) => {\n const [inputValue, setInputValue] = useState('');\n const [open, setOpen] = useState(false);\n const [options, setOptions] = useState(new Array());\n const [isRequestCompleted, setIsRequestCompleted] = useState(false);\n const loading = open && options.length === 0 && inputValue.length > 3;\n\n React.useEffect(() => {\n let active = true;\n\n if (!loading) {\n return undefined;\n }\n\n (async () => {\n setIsRequestCompleted(false)\n const results = await axios.get(\n `${process.env.REACT_APP_SERVICES_API_HOST}/api/address?q=${inputValue}&predict=true&code=${process.env.REACT_APP_SERVICES_API_KEY}`,\n ).then((response: AxiosResponse) => {\n const access: IAddressResponseType[] = response.data;\n if(response.data && !response.data.length){\n setIsRequestCompleted(true)\n }\n return access\n })\n if (active) {\n setOptions(results);\n }\n })();\n\n return () => {\n active = false;\n };\n }, [inputValue, loading]);\n\n React.useEffect(() => {\n if (!open) {\n setOptions([]);\n }\n }, [open]);\n \n // When a new address is selected, use flyTo on the map component.\n function onSelected(selectedValue: any){\n const loc = selectedValue as IAddressResponseType\n if(loc != null)\n {\n prop.close();\n prop.flyTo(loc);\n }\n }\n\n function inputChange(val: string){\n setOptions([])\n setInputValue(val)\n }\n\n const CustomPopper = function (props: any) {\n return ()\n }\n\n\n return (\n
\n \n
\n

Search

\n
\n
\n
\n \n {\n setOpen(true);\n }}\n onClose={() => {\n setOpen(false);\n }}\n options={options}\n loading={!isRequestCompleted && loading}\n getOptionLabel={(loc: IAddressResponseType) => loc.address.freeform_address}\n onInputChange={(event, newInputValue) => inputChange(newInputValue)}\n onChange = {(event, selectedValue) => onSelected(selectedValue)}\n filterOptions = {(options, state) => options}\n renderInput={(params) => \n
\n \n
\n }\n /> \n
\n
\n \n
\n \n \n Use My Current Location\n \n
\n
\n )\n};\n\nexport default MapSearch;","import React from 'react';\nimport '../sass/main.scss';\nimport { IAccessPoint } from '../store/types/AccessPointTypes';\nimport MapTrayLocation from './MapTrayLocation';\n\ninterface MapFavoritesProps {\n show: boolean,\n close: () => void,\n favorites: IAccessPoint[],\n setLocation: (location: any) => void\n }\n\nconst MapFavorites = (prop: MapFavoritesProps) => {\n\n let mapTrayLocations = prop.favorites.map((location) =>\n {prop.setLocation(location)}} />\n )\n\nif(mapTrayLocations.length == 0)\n{\n mapTrayLocations.push(
No Favorites

Sadly, you have no favorites. To add a location to your favorites, open a location card, and click/tap on the heart icon.

);\n}\n\n return (\n
\n \n
\n

Favorites

\n
\n
\n
\n {mapTrayLocations}\n
\n
\n
\n )\n};\n\nexport default MapFavorites;","import React, { useState } from 'react';\nimport '../sass/main.scss';\nimport { IAccessPoint } from '../store/types/AccessPointTypes';\nimport MapTrayLocation from './MapTrayLocation';\nimport MapSearch from './MapSearch';\nimport MapFavorites from './MapFavorites';\nimport { IAddressResponseType } from '../store/types/AddressResponseTypes';\n\ninterface MapTrayProps {\n locations: IAccessPoint[], \n isTrayOpen: boolean,\n toggleTray: () => void,\n setSelectedLocation: (location: any) => void,\n openLocationDetails: (location: any) => void,\n flyTo: (location: IAddressResponseType) => void,\n setCurrentLocation: () => void,\n closeAllCards: () => void,\n favorites: IAccessPoint[]\n }\n\nconst MapTray = (prop: MapTrayProps) => {\n const [showSearch, setShowSearch] = useState(false);\n const [showFavorites, setShowFavorites] = useState(false);\n const [contentClass, setContentClass] = useState(\"footer-wrap\");\n\n const closeSearch = () => {\n setShowSearch(false);\n setContentClass(\"footer-wrap\");\n }\n\n const closeFavorites = () => {\n setShowFavorites(false);\n setContentClass(\"footer-wrap\");\n }\n\n const openSearch = () => {\n closeFavorites();\n prop.closeAllCards()\n setShowSearch(true);\n setContentClass(\"footer-wrap search-open\");\n }\n\n const openFavorites = () => {\n closeSearch();\n prop.closeAllCards()\n setShowFavorites(true);\n setContentClass(\"footer-wrap favorites-open\");\n }\n\n let mapTrayLocations = prop.locations.map((location) =>\n {prop.setSelectedLocation(location)}} />\n )\n\n if(mapTrayLocations.length === 0)\n {\n mapTrayLocations.push(
No Locations Found

Try zooming the map out or searching for another address, ZIP code, or city.

);\n }\n\n return (\n
\n {/* TODO\n The current div above (footer-wrap) needs to toggle the class 'favorites-open' when a user clicks on favorites in the footer nav.\n The current functionality of toggling the search-open class will also need to remain. \n If the class 'search-open' is on 'footer-wrap' and a user clicks/taps on favorites, 'search-open' will need to be removed, and 'favorites-open' will need to be added. \n If the class 'favorites-open' is on 'footer-wrap' and a user clicks/taps on search, 'favorites-open' will need to be removed, and 'search-open' will need to be added. \n On the MapFavoites component, the class 'open' will need to be toggled on the div with class 'map-favorites-card'\n */} \n \n \n \n
\n
\n
\n {mapTrayLocations}\n
\n
\n
\n )\n};\n\nexport default MapTray;","import React from \"react\";\nimport { IAccessPoint } from \"../store/types/AccessPointTypes\";\nimport {isIOS, isMobile} from \"react-device-detect\";\nimport { ValidateTime } from \"../common/utils/TimeUtils\";\n\ninterface MapTrayLocationProp {\n location: IAccessPoint,\n showMicroCard: boolean,\n closeCard: () => void,\n openLocationDetails: (location: IAccessPoint) => any\n }\n\nexport function getDirectionsLink(props: IAccessPoint): string {\n return (isIOS && isMobile ? \n `maps://maps.google.com/maps?daddr=${props.location.coordinates.lat},${props.location.coordinates.lon}&ll=` : \n `https://maps.google.com/maps?daddr=${props.location.coordinates.lat},${props.location.coordinates.lon}&ll=`)\n}\n\nconst MiniDetailsCard = (prop: MapTrayLocationProp) => {\n if(prop.location == null || prop.location.id == null)\n {\n return (
\n
);\n }\n let open = \"\";\n let close = \"\";\n let timeString;\n const dayOfWeek = new Date().getDay();\n\n switch(dayOfWeek) { \n case 0: { \n open = prop.location.business_hours.sun_open;\n close = prop.location.business_hours.sun_close;\n break; \n } \n case 1: { \n open = prop.location.business_hours.mon_open;\n close = prop.location.business_hours.mon_close;\n break; \n } \n case 2: { \n open = prop.location.business_hours.tue_open;\n close = prop.location.business_hours.tue_close;\n break; \n }\n case 3: { \n open = prop.location.business_hours.wed_open;\n close = prop.location.business_hours.wed_close;\n break; \n } \n case 4: { \n open = prop.location.business_hours.thu_open;\n close = prop.location.business_hours.thu_close;\n break; \n }\n case 5: { \n open = prop.location.business_hours.fri_open;\n close = prop.location.business_hours.fri_close;\n break; \n } \n case 6: { \n open = prop.location.business_hours.sat_open;\n close = prop.location.business_hours.sat_close;\n break; \n } \n default: { \n //statements; \n break; \n } \n }\n\n if(open && close)\n {\n timeString = ValidateTime(open,close);\n }\n\n\n return (\n
\n
\n \n

{prop.location.display_name}

\n
\n
\n {timeString}\n
\n
\n \n
\n
\n Wi-Fi is Currently On\n
\n
\n\n
\n \n
\n \n
\n
\n
\n );\n};\n\nexport default MiniDetailsCard;","import React from \"react\";\nimport { IAccessPoint } from \"../store/types/AccessPointTypes\";\n\ninterface LocationHoursCardProp {\n showHours: boolean,\n closeCard: () => void,\n location: IAccessPoint\n }\n\nconst LocationDetailsHoursCard = (prop: LocationHoursCardProp) => {\n const formatTime = (oldFormatTime: string) => {\n var oldFormatTimeArray = oldFormatTime.split(\":\");\n \n var HH = parseInt(oldFormatTimeArray[0]);\n var min = oldFormatTimeArray[1];\n \n var AMPM = HH >= 12 && HH !== 24 ? \"PM\" : \"AM\";\n var hours;\n if(HH === 0){\n hours = HH + 12;\n } else if (HH > 12) {\n hours = HH - 12;\n } else {\n hours = HH;\n }\n var newFormatTime = hours + \":\" + min + \" \" + AMPM;\n return newFormatTime;\n }\n\n const ValidateTime = (openTime: string, closeTime: string) => {\n if ('Closed' === openTime)\n return 'Closed'\n else if ('00:00' === openTime && '24:00' === closeTime)\n return '24 Hours'\n else\n return `${formatTime(openTime)} - ${formatTime(closeTime)}`\n }\n\n return (\n
\n \n
\n

Wi-Fi Hours &
Availability

\n
\n\n
\n
\n {prop.location.properties.network_name &&
\n
\n Network Name\n {prop.location.properties.network_name}\n
\n
\n Connection Info\n \n See Notes & Instructions\n \n
\n
}\n
\n\n
\n \n
\n Sunday\n {ValidateTime(prop.location.business_hours.sun_open, prop.location.business_hours.sun_close)}\n
\n\n
\n Monday\n {ValidateTime(prop.location.business_hours.mon_open, prop.location.business_hours.mon_close)}\n
\n\n
\n Tuesday\n {ValidateTime(prop.location.business_hours.tue_open, prop.location.business_hours.tue_close)}\n
\n\n
\n Wednesday\n {ValidateTime(prop.location.business_hours.wed_open, prop.location.business_hours.wed_close)}\n
\n\n
\n Thursday\n {ValidateTime(prop.location.business_hours.thu_open, prop.location.business_hours.thu_close)}\n
\n\n
\n Friday\n {ValidateTime(prop.location.business_hours.fri_open, prop.location.business_hours.fri_close)}\n
\n\n
\n Saturday\n {ValidateTime(prop.location.business_hours.sat_open, prop.location.business_hours.sat_close)}\n
\n
\n
\n
\n );\n};\n\nexport default LocationDetailsHoursCard;","import React from \"react\";\nimport { IAccessPoint } from \"../store/types/AccessPointTypes\";\n\ninterface LocationNotesCardProp {\n showNotes: boolean,\n closeCard: () => void,\n location: IAccessPoint\n }\n\nconst LocationDetailsNotesCard = (prop: LocationNotesCardProp) => {\n return (\n
\n \n
\n

Notes &
Instructions

\n
\n\n
\n
\n {prop.location.properties.network_name &&
\n
\n Network Name\n {prop.location.properties.network_name}\n
\n
}\n
\n\n
\n Instructions:\n {prop.location.properties.instructions} \n
\n
\n
\n );\n};\n\nexport default LocationDetailsNotesCard;","import React, { useState, useEffect } from \"react\";\nimport { IAccessPoint } from '../store/types/AccessPointTypes'\nimport { getDirectionsLink } from './MiniDetailsCard'\nimport LocationDetailsHoursCard from \"./LocationDetailsHoursCard\";\nimport LocationDetailsNotesCard from \"./LocationDetailsNotesCard\";\nimport { ValidateTime } from \"../common/utils/TimeUtils\";\n\ninterface LocationDetailsCardProp {\n location: IAccessPoint,\n showLocationDetailsCard: boolean,\n closeCard: () => void,\n addToFavorites: (location: IAccessPoint) => void,\n favoriteIDs: any[],\n removeFromFavorites: (location: IAccessPoint) => void\n }\n\nconst LocationDetailsCard = (prop: LocationDetailsCardProp) => {\n const [showHours, setShowHours] = useState(false);\n const [showNotes, setShowNotes] = useState(false)\n const [addedToFavorites, setAddedToFavorites] = useState(false);\n\n const closeHours = () => {\n setShowHours(false);\n }\n\n const closeNotes = () => {\n setShowNotes(false);\n }\n\n useEffect(() => {\n if (!prop.showLocationDetailsCard) {\n closeHours();\n closeNotes();\n }\n\n }, [prop.showLocationDetailsCard])\n\n if(prop.location.id == null)\n {\n return (
\n
);\n }\n\n let open = \"\";\n let close = \"\";\n let timeString;\n const dayOfWeek = new Date().getDay();\n\n const handleFavoriteButton = () => {\n prop.addToFavorites(prop.location);\n setAddedToFavorites(!addedToFavorites);\n }\n\n const handleFavoriteRemove = () => {\n prop.removeFromFavorites(prop.location);\n setAddedToFavorites(!addedToFavorites);\n }\n\n switch(dayOfWeek) { \n case 0: { \n open = prop.location.business_hours.sun_open;\n close = prop.location.business_hours.sun_close;\n break; \n } \n case 1: { \n open = prop.location.business_hours.mon_open;\n close = prop.location.business_hours.mon_close;\n break; \n } \n case 2: { \n open = prop.location.business_hours.tue_open;\n close = prop.location.business_hours.tue_close;\n break; \n }\n case 3: { \n open = prop.location.business_hours.wed_open;\n close = prop.location.business_hours.wed_close;\n break; \n } \n case 4: { \n open = prop.location.business_hours.thu_open;\n close = prop.location.business_hours.thu_close;\n break; \n }\n case 5: { \n open = prop.location.business_hours.fri_open;\n close = prop.location.business_hours.fri_close;\n break; \n } \n case 6: { \n open = prop.location.business_hours.sat_open;\n close = prop.location.business_hours.sat_close;\n break; \n } \n default: { \n //statements; \n break; \n } \n }\n\n if(open && close)\n {\n timeString = ValidateTime(open,close);\n\n }\n\n return ( \n
\n \n \n \n
\n

{prop.location.display_name}

\n

\n \n {prop.location.address.freeform_address}\n \n

\n \n Open in Maps\n \n \n
\n
\n
\n
{setShowHours(true)}}>\n
\n
\n \n
\n
\n
\n

Wi-Fi Availability

\n

{timeString}

\n
\n
\n \n
\n
\n\n
{setShowNotes(true)}}>\n
\n \n
\n
\n

Notes & Instructions

\n
\n
\n \n
\n
\n\n {prop.location.website && prop.location.website.toLowerCase() !== \"null\" &&
window.open(prop.location.website, \"_blank\")}>\n
\n \n
\n
\n

Website

\n

{prop.location.website}

\n
\n
\n \n
\n
}\n\n {!prop.favoriteIDs.includes(prop.location.id) &&
\n
\n \n
\n
\n

Add To Favorites

\n

Tap/click to add to favorites

\n
\n
\n \n
\n
}\n\n {prop.favoriteIDs.includes(prop.location.id) &&
\n
\n \n
\n
\n

Saved in Favorites

\n

Tap/click to remove from favorites

\n
\n
\n \n
\n
}\n
\n
\n
\n );\n};\n\nexport default LocationDetailsCard;","import React, { useRef, useEffect } from 'react';\nimport mapboxgl from 'mapbox-gl';\nimport ReactMapboxGl, { ZoomControl, GeoJSONLayer, Layer } from 'react-mapbox-gl';\nimport axios, { AxiosResponse } from 'axios';\nimport { useState } from 'react'\nimport { IAccessPoint } from '../store/types/AccessPointTypes'\nimport MapTray from './MapTray';\nimport MiniDetailsCard from './MiniDetailsCard';\nimport { IAddressResponseType } from '../store/types/AddressResponseTypes';\nimport LocationDetailsCard from './LocationDetailsCard';\nimport GeoJSON from 'geojson';\n\nconst Map = ReactMapboxGl({\n accessToken: String(process.env.REACT_APP_MB_API_KEY),\n logoPosition: \"top-right\"\n});\n\nconst MapboxReactCluster = () => {\n const [locations, setLocations] = useState({} as GeoJSON.FeatureCollection);\n const [isTrayOpen, setIsTrayOpen] = useState(false);\n const [showMicroCard, setshowMicroCard] = useState(false)\n const [selectedLocation, setSelectedLocation] = useState({} as IAccessPoint);\n const [showLocationDetailsCard, setshowLocationDetailsCard] = useState(false);\n const [mapValues, setMapValues] = useState({\n lon: -92.6238,\n lat: 44.8614,\n zoom: 10\n })\n const [favoriteIDs, setFavoriteIDs] = useState([] as any)\n const [locationsForFavorites, setLocationsForFavorites] = useState([] as GeoJSON.Feature[]);\n const [fetchedAllLocations, setFetchedAllLocations] = useState(false)\n const mapRef = useRef(null);\n\n\n // Initialize map when component mounts\n\n const fetchLocations = () => {\n if (!fetchedAllLocations && mapValues.zoom <= 8) {\n fetchAllLocations()\n }\n else if (!fetchedAllLocations) {\n const distance = Math.ceil(2 ** (20 - mapValues.zoom) / 10);\n axios.get(\n `${process.env.REACT_APP_SERVICES_API_HOST}/api/services?service_type=Public%20WiFi&lat=${mapValues.lat}&lon=${mapValues.lon}&radius_mi=${distance}&code=${process.env.REACT_APP_SERVICES_API_KEY}`,\n { headers: { 'accept': 'application/geo+json' } }\n ).then((response: AxiosResponse) => {\n const access: GeoJSON.FeatureCollection = response.data;\n setLocations(access);\n setLocationsForFavorites(access.features)\n })\n }\n }\n\n const convertToAccessPoint = (feature: GeoJSON.Feature): IAccessPoint => {\n let loc = feature.properties as IAccessPoint;\n return loc;\n }\n const fetchAllLocations = () => {\n axios.get(\n `${process.env.REACT_APP_SERVICES_API_HOST}/api/services?service_type=Public%20WiFi&lat=${mapValues.lat}&lon=${mapValues.lon}&radius_mi=10000&code=${process.env.REACT_APP_SERVICES_API_KEY}`,\n { headers: { 'accept': 'application/geo+json' } }\n ).then((response: AxiosResponse) => {\n const access: GeoJSON.FeatureCollection = response.data;\n setLocations(access);\n setLocationsForFavorites(access.features)\n setFetchedAllLocations(true)\n })\n }\n\n useEffect(() => {\n fetchLocations()\n const favorite_ids = localStorage.getItem(\"favorites\");\n if(favorite_ids !== null)\n {\n setFavoriteIDs(JSON.parse(favorite_ids));\n }\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n\n const toggleTray = () => {\n setIsTrayOpen(!isTrayOpen)\n }\n\n const locationClickTrigger = (location: IAccessPoint) => {\n setSelectedLocation(location);\n setshowLocationDetailsCard(true)\n }\n\n const closeCard = () => {\n setshowMicroCard(false);\n }\n\n const closeLocationDetailsCard = () => {\n setshowLocationDetailsCard(false);\n }\n\n const mapLocationClick = (location: GeoJSON.Feature) => {\n setSelectedLocation(convertToAccessPoint(location));\n setshowMicroCard(true);\n setshowLocationDetailsCard(false);\n }\n\n const microDetailsClick = (location: IAccessPoint) => {\n setSelectedLocation(location);\n setshowMicroCard(false);\n setshowLocationDetailsCard(true);\n }\n\n const mapOnMove = (map: mapboxgl.Map, evt: React.SyntheticEvent) => {\n setMapValues({\n lat: map.getCenter().lat,\n lon: map.getCenter().lng,\n zoom: map.getZoom()\n });\n }\n\n const mapOnMoveEnd = (map: mapboxgl.Map, evt: React.SyntheticEvent) => {\n fetchLocations();\n }\n\n const setCurrentLocation = () => {\n navigator.geolocation.getCurrentPosition(function (position) {\n const mapRefNode = (mapRef as any).current.state.map\n mapRefNode.flyTo({\n center: {\n lat: position.coords.latitude,\n lon: position.coords.longitude\n },\n essential: true\n });\n });\n }\n\n const addToFavorites = (location: IAccessPoint) => {\n let temp = favoriteIDs;\n temp.push(location.id);\n localStorage.setItem(\"favorites\", JSON.stringify(temp));\n setFavoriteIDs(temp);\n }\n\n const removeFromFavorites = (location: IAccessPoint) => {\n let temp = favoriteIDs;\n temp = temp.filter((item: any) => item !== (location.id))\n localStorage.setItem(\"favorites\", JSON.stringify(temp));\n setFavoriteIDs(temp);\n }\n\n const unclusteredPointClick = (evt: any) => {\n if(evt.features[0].properties.cluster !== false)\n {\n const loc_tmp = evt.features[0].properties;\n loc_tmp.address = JSON.parse(loc_tmp.address)\n loc_tmp.business_hours = JSON.parse(loc_tmp.business_hours)\n loc_tmp.location = JSON.parse(loc_tmp.location)\n loc_tmp.properties = JSON.parse(loc_tmp.properties)\n const loc = loc_tmp as IAccessPoint\n setSelectedLocation(loc);\n setshowMicroCard(true);\n setshowLocationDetailsCard(false);\n }\n }\n\n\n const clusteredPointClick = (evt: any) => {\n console.log(evt)\n if(evt.features[0].properties.cluster)\n {\n const mapRefNode = (mapRef as any).current.state.map\n mapRefNode.flyTo({\n center: evt.lngLat,\n zoom: mapValues.zoom+1,\n essential: true\n });\n }\n }\n\n const flyTo = (loc: IAddressResponseType) => {\n const mapRefNode = (mapRef as any).current.state.map\n mapRefNode.flyTo({\n center: loc.location.coordinates,\n essential: true\n });\n }\n\n const setCursor = (event: any, cursor: string) => {\n const map = event.target;\n if (map) {\n map.getCanvas().style.cursor = cursor\n }\n }\n\n\n const closeAllCards = () => {\n closeLocationDetailsCard();\n closeCard();\n }\n\n let locationsInBound: IAccessPoint[] = [];\n if(mapRef.current && locations.features)\n {\n const mapRefNode = (mapRef as any).current.state.map;\n const bounds = mapRefNode.getBounds();\n locations.features.forEach((location: GeoJSON.Feature) => {\n if(bounds.contains([convertToAccessPoint(location).location.coordinates.lon, convertToAccessPoint(location).location.coordinates.lat]))\n {\n locationsInBound.push(convertToAccessPoint(location));\n }\n })\n }\n \n let favorites: any = []\n if (locationsForFavorites) {\n favorites = locationsForFavorites.filter(location => favoriteIDs.includes(convertToAccessPoint(location).id)).map(location => location.properties as IAccessPoint)\n }\n\n return (\n
\n
\n
\n Longitude: {mapValues.lon} | Latitude: {mapValues.lat} | Zoom: {mapValues.zoom}\n
\n
\n \n \n {/* dont touch this comment it makes it work dont ask why */}\n \n setCursor(e ,'pointer')}\n onMouseLeave={(e: any) => setCursor(e, '')}\n layerOptions={{\n }}\n layout={{\n 'icon-image': 'map-pin-a',\n 'icon-size': .5,\n 'icon-anchor': 'bottom'\n }}/>\n setCursor(e,'pointer')}\n onMouseLeave={(e: any) => setCursor(e, '')}\n \n paint={{\n 'circle-color': {\n property: 'point_count',\n type: 'interval',\n stops: [\n [0, '#C26E47'],\n [100, '#C26E47'],\n [300, '#C26E47']\n ]\n },\n 'circle-radius': {\n property: 'point_count',\n type: 'interval',\n stops: [\n [0, 20],\n [100, 30],\n [300, 40]\n ]\n }\n }}\n />\n \n \n \n \n \n
\n )\n};\n\nexport default MapboxReactCluster;","import React from 'react';\nimport Header from './components/Header'\nimport Footer from './components/Footer'\nimport './sass/main.scss';\nimport {\n BrowserRouter as Router,\n Switch,\n Route,\n } from \"react-router-dom\";\nimport Home from './components/Home';\nimport AboutUs from './components/AboutUs';\nimport ContactUs from './components/ContactUs';\nimport MapboxReactCluster from './components/MapboxReactCluster';\nimport {isIOS, isAndroid, isChrome, isIE, isEdge, isEdgeChromium, isSafari, isMobileSafari, isWindows, isMacOs, isFirefox} from 'react-device-detect'\n\nfunction App() {\n\n function getDeviceClasses() {\n let classes = \"body-wrap\"\n\n isIOS && (classes += \" device-ios\")\n isAndroid && (classes += \" device-android\")\n isWindows && (classes += \" device-windows\")\n isMacOs && (classes += \" device-mac\")\n isChrome && (classes += \" browser-chrome\")\n isMobileSafari && (classes += \" browser-mobile-safari\")\n isSafari && !isMobileSafari && (classes += \" browser-safari\")\n isEdgeChromium && (classes += \" browser-edge-chromium\")\n isEdge && !isEdgeChromium && (classes += \" browser-edge\")\n isIE && (classes += \" browser-ie\")\n isFirefox && (classes += \" browser-firefox\")\n\n return classes;\n }\n\n // TODO: Add page name to the body class (74521).\n return (\n \n \n
\n
\n \n \n \n \n \n \n
\n \n \n \n
\n \n \n \n \n \n
\n
\n )\n}\nexport default App;\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\ntype Config = {\n onSuccess?: (registration: ServiceWorkerRegistration) => void;\n onUpdate?: (registration: ServiceWorkerRegistration) => void;\n};\n\nexport function register(config?: Config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(\n process.env.PUBLIC_URL,\n window.location.href\n );\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl: string, config?: Config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl: string, config?: Config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' }\n })\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready\n .then(registration => {\n registration.unregister();\n })\n .catch(error => {\n console.error(error.message);\n });\n }\n}\n","export enum AccessPointTypes {\n ACCESS_POINT_FETCH_LIST = \"ACCESS_POINT/FETCH_LIST\",\n ACCESS_POINT_LOADING = \"ACCESS_POINT/LOADING\"\n}\n\nexport interface IHours {\n mon_open: string;\n mon_close: string;\n tue_open: string;\n tue_close: string;\n wed_open: string;\n wed_close: string;\n thu_open: string;\n thu_close: string;\n fri_open: string;\n fri_close: string;\n sat_open: string;\n sat_close: string;\n sun_open: string;\n sun_close: string;\n}\n\nexport interface IAddress {\n freeform_address: string;\n street_number?: string;\n street_name?: string;\n municipality?: string;\n state?: string;\n state_name?: string;\n postal_code?: string;\n county?: string;\n country?: string;\n}\n\n/* export interface ICoordinateReferenceSystem {\n type: string;\n properties: object;\n} */\n\nexport interface ICoordinate {\n lon: number;\n lat: number;\n}\n\nexport interface ILocation {\n type: string;\n coordinates: ICoordinate;\n //crs: ICoordinateReferenceSystem;\n}\n\nexport interface IProperty {\n network_name: string;\n instructions: string;\n}\n\nexport interface IAccessPoint {\n id: string;\n site_name: string;\n type: string;\n website: string;\n display_name: string;\n organization_name: string;\n distance_miles: number;\n location: ILocation;\n address: IAddress;\n business_hours: IHours;\n properties: IProperty;\n}\n\nexport interface IAccessPointState {\n readonly access: IAccessPoint[];\n readonly loading: boolean;\n}\n\n\nexport interface IAccessPointLoadingAction {\n type: AccessPointTypes.ACCESS_POINT_LOADING;\n}\nexport interface IAccessPointListAction {\n type: AccessPointTypes.ACCESS_POINT_FETCH_LIST;\n access: IAccessPoint[];\n}\n\nexport type AccessPointActions = IAccessPointListAction | IAccessPointLoadingAction;","import { Reducer } from \"redux\";\nimport { AccessPointTypes, IAccessPointState, AccessPointActions } from \"../types/AccessPointTypes\";\n\nconst initialAccessPointState: IAccessPointState = {\n access: [],\n loading: false\n};\n\nexport const accessPointReducer: Reducer = (\n state = initialAccessPointState,\n action\n) => {\n switch (action.type) {\n case AccessPointTypes.ACCESS_POINT_LOADING: {\n return {\n ...state,\n loading: true\n };\n }\n case AccessPointTypes.ACCESS_POINT_FETCH_LIST: {\n return {\n ...state,\n access: action.access,\n loading: false\n };\n }\n }\n return state || initialAccessPointState;\n};","import { combineReducers, createStore, applyMiddleware, compose } from 'redux';\nimport thunk from 'redux-thunk';\n//import { offline } from '@redux-offline/redux-offline';\n//import offlineConfig from '@redux-offline/redux-offline/lib/defaults';\nimport createEncryptor from 'redux-persist-transform-encrypt';\nimport * as localForage from 'localforage';\nimport { accessPointReducer } from './reducers/accessPointReducer'\n\ndeclare global {\n\tinterface Window {\n\t\t__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?: typeof compose;\n\t}\n}\n\nconst encryptor = createEncryptor({\n\tsecretKey: 'fixthislaster',\n});\n\nconst persistOptions = {\n\tkey: 'pp',\n\tstorage: localForage,\n\tblacklist: ['rehydrate'],\n\ttransforms: [encryptor],\n};\n\n/*const config = {\n\t...offlineConfig,\n\tpersistOptions,\n};*/\nconst rootReducer = combineReducers({\n\taccess: accessPointReducer,\n});\nconst composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\nconst store = createStore(\n\trootReducer,\n\tcomposeEnhancers(applyMiddleware(thunk)/* , offline(config) */)\n);\n\nexport { store };\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Provider } from 'react-redux';\nimport './sass/main.scss';\nimport App from './App';\nimport * as serviceWorker from './serviceWorker';\nimport { store } from './store';\n\nReactDOM.render(\n \n \n \n \n ,\n document.getElementById('root')\n);\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.register();\n"],"sourceRoot":""}