{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/Year3_1.vue?63cd","webpack:///./src/components/Year.vue?16b7","webpack:///./src/assets/images/tidal-variation.png","webpack:///./src/components/TideGaugeMap.vue?4b97","webpack:///./src/components/CriticalElevation5.vue?4dc8","webpack:///./src/assets/images/depth.jpg","webpack:///./src/components/ResultsMap.vue?539d","webpack:///./src/components/Year1.vue?beb9","webpack:///./src/components/CriticalElevation1.vue?275e","webpack:///./src/App.vue?21ca","webpack:///src/App.vue","webpack:///./src/App.vue?8c0f","webpack:///./src/App.vue","webpack:///./src/components/Home.vue?2500","webpack:///src/components/Home.vue","webpack:///./src/components/Home.vue?b4ab","webpack:///./src/components/Home.vue","webpack:///./src/components/CriticalElevation.vue?4116","webpack:///src/components/CriticalElevation.vue","webpack:///./src/components/CriticalElevation.vue?661e","webpack:///./src/components/CriticalElevation.vue","webpack:///./src/components/CriticalElevation1.vue?008d","webpack:///src/components/CriticalElevation1.vue","webpack:///./src/components/CriticalElevation1.vue?7559","webpack:///./src/components/CriticalElevation1.vue","webpack:///./src/components/CriticalElevation2.vue?1636","webpack:///./src/components/TideGaugeMap.vue?b043","webpack:///src/components/TideGaugeMap.vue","webpack:///./src/components/TideGaugeMap.vue?c811","webpack:///./src/components/TideGaugeMap.vue","webpack:///src/components/CriticalElevation2.vue","webpack:///./src/components/CriticalElevation2.vue?18a6","webpack:///./src/components/CriticalElevation2.vue","webpack:///./src/components/CriticalElevation3.vue?67e0","webpack:///src/components/CriticalElevation3.vue","webpack:///./src/components/CriticalElevation3.vue?048c","webpack:///./src/components/CriticalElevation3.vue","webpack:///./src/components/CriticalElevation4.vue?6e15","webpack:///src/components/CriticalElevation4.vue","webpack:///./src/components/CriticalElevation4.vue?73aa","webpack:///./src/components/CriticalElevation4.vue","webpack:///./src/components/CriticalElevation5.vue?7997","webpack:///src/components/CriticalElevation5.vue","webpack:///./src/components/CriticalElevation5.vue?559d","webpack:///./src/components/CriticalElevation5.vue","webpack:///./src/components/Year.vue?38d8","webpack:///src/components/Year.vue","webpack:///./src/components/Year.vue?0a29","webpack:///./src/components/Year.vue","webpack:///./src/components/Year1.vue?4022","webpack:///src/components/Year1.vue","webpack:///./src/components/Year1.vue?f2b6","webpack:///./src/components/Year1.vue","webpack:///./src/components/Year2.vue?9fd4","webpack:///src/components/Year2.vue","webpack:///./src/components/Year2.vue?c77f","webpack:///./src/components/Year2.vue","webpack:///./src/components/Year3.vue?106c","webpack:///src/components/Year3.vue","webpack:///./src/components/Year3.vue?f2b4","webpack:///./src/components/Year3.vue","webpack:///./src/components/Year3_1.vue?9e54","webpack:///./src/components/ResultsMap.vue?4b9a","webpack:///src/components/ResultsMap.vue","webpack:///./src/components/ResultsMap.vue?23d7","webpack:///./src/components/ResultsMap.vue","webpack:///src/components/Year3_1.vue","webpack:///./src/components/Year3_1.vue?95be","webpack:///./src/components/Year3_1.vue","webpack:///./src/components/Year3_2.vue?5b8b","webpack:///src/components/Year3_2.vue","webpack:///./src/components/Year3_2.vue?3d84","webpack:///./src/components/Year3_2.vue","webpack:///./src/components/Year3_3.vue?2038","webpack:///src/components/Year3_3.vue","webpack:///./src/components/Year3_3.vue?7ee5","webpack:///./src/components/Year3_3.vue","webpack:///./src/router/index.js","webpack:///./public/config.js","webpack:///./src/assets/js/data-utils.js","webpack:///./src/assets/js/map-utils.js","webpack:///./src/assets/js/calc-utils.js","webpack:///./src/main.js","webpack:///./src/components/CriticalElevation4.vue?b6e8","webpack:///./src/assets/images/storm-surge.png","webpack:///./src/components/CriticalElevation.vue?326e","webpack:///./src/assets/images/loader.gif","webpack:///./src/assets/images/area.jpg","webpack:///./src/components/CriticalElevation2.vue?3c70","webpack:///./src/components/CriticalElevation3.vue?deb1","webpack:///./src/App.vue?f505","webpack:///./src/components/Year3.vue?efad","webpack:///./src/components/Year2.vue?9d8f","webpack:///./src/components/Home.vue?422d","webpack:///./src/assets/images/critical-elevation.png","webpack:///./src/components/Year3_2.vue?6286","webpack:///./src/components/Year3_3.vue?7f95"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","render","_vm","this","_h","$createElement","_c","_self","attrs","staticRenderFns","component","staticClass","_v","on","exploreByCriticalElevation","exploreByYear","directives","rawName","modifiers","preventDefault","props","region","String","tideGauge","model","methods","$router","params","changeRegion","changeTideGauge","e","created","home","closeTooltip","criticalElevation","heightOption","tidalHeight","heightBuffer","customHeight","levelOption","surgeLevel","levelBuffer","customLevel","changeCriticalElevation","changeHeightOption","changeTidalHeight","changeHeightBuffer","changeCustomHeight","changeLevelOption","changeSurgeLevel","changeLevelBuffer","changeCustomLevel","$root","$emit","changeCriticalElevationFeet","callback","$$v","$set","expression","changeCriticalElevationMeters","next","criticalElevationFeet","criticalElevationMeters","feet","isNaN","meters","toFixed","path","regions","tideGauges","tideGaugeClicked","previous","_m","selectedRegion","selectedTideGauge","viewObj","FeatureLayer","Graphic","Query","watch","val","zoomToGauges","highlightTideGauge","$mapUtils","feature","vm","vmutils","clearSelectedGauge","gaugesLayer","map","findLayerById","query","where","outSpatialReference","wkid","returnGeometry","outFields","queryFeatures","then","results","features","createMap","mapServerConfig","$mapServerConfig","loadModules","$loadModules","css","MapView","Map","ScaleBar","MapImageLayer","watchUtils","Toggler","domStyle","dojoHtml","GraphicsLayer","mapLayerConfig","mapLayers","epaRegionsServiceUrl","mapStartCenter","mapStartZoom","loading","basemap","view","container","center","zoom","highlightOptions","color","haloColor","haloOpacity","fillOpacity","node","whenTrue","show","whenFalse","hide","when","scaleBar","unit","ui","add","position","selectedGauge","id","addLayers","addAllGaugesToMap","popup","autoCloseEnabled","mounted","components","TideGaugeMap","$dataUtils","getTideGauges","split","getRegions","tidalHeights","getTidalHeights","surgeLevels","getSurgeLevels","chartOptions","series","slrImpact","_s","_e","Math","abs","getProjectedExceedanceYear","projectedExceedanceYears","high","intermediateHigh","intermediate","intermediateLow","low","scopedSlots","_u","fn","ref","ariaDescribedby","chartScenarios","updateChartScenarios","chartPercentiles","updateChartPercentiles","reset","exporting","HighCharts","selectedScenarios","selectedPercentiles","tideGaugeName","chart","height","style","fontFamily","type","enabled","filename","buttons","contextButton","menuItems","width","legend","align","layout","verticalAlign","plotOptions","marker","tooltip","valueDecimals","valueSuffix","subtitle","text","fontSize","title","xAxis","categories","labels","autoRotation","yAxis","year","getTideGaugeName","targetGauge","find","tg","updateSLRImpact","th","parseFloat","sl","$calcUtils","getSeaLevelRiseImpactSite","updateChart","getSLRYears","getSLRProjectionsSuperimposedTidalRangeStormSurge","getProjectedExceedanceYears","updateChartSeriesVisibility","selections","forEach","visible","selection","seriesToShow","seriesId","target","buffer","level","scenario","dataOption","changeYear","changeScenario","changeDataOption","years","scenarios","class","getYears","getScenarios","summaryStatistics","graphPage","summaryStatisticsPage","animation","toolTip","enableMouseTracking","states","hover","line","dataLabels","allowOverlap","distance","padding","lineWidth","columnrange","borderWidth","pointWidth","margin","opposite","computed","$route","updateSummaryStatistics","getSeaLevelProjectionsAndProbabilityExceedingGMSL","getTidalRangeSuperimposedStormSurgeEvents","staticStyle","slrGeoFilesUrl","getDownloadByRegion","selectedYear","selectedScenario","selectedDataOption","showResultsMap","$refs","ResultsMap","addResultLayerToMap","BasemapGallery","Expand","LayerList","service","opacity","layers","slrServiceUrl","basemapGallery","document","createElement","bgExpand","content","layerList","listItemCreatedFunction","event","item","layer","listMode","parent","panel","open","bgExpandLayerList","expandTooltip","publicPath","process","download","gisDownloadJson","filter","getTextForGlobalPercent","getSymbolForLocalPercent","downloadSummary","el","summary","options","img","$html2canvas","doc","jsPDF","addImage","save","parseInt","more","Vue","use","Router","base","routes","redirect","Home","CriticalElevation","children","CriticalElevation1","CriticalElevation2","CriticalElevation3","CriticalElevation4","CriticalElevation5","Year","Year1","Year2","Year3","Year3_1","Year3_2","Year3_3","dataUtils","regionsJson","code","unshift","tideGaugesJson","reduce","res","indexOf","toString","dataYears","yearsJson","scenariosJson","mapUtils","getGaugesJson","gauges","latitude","longitude","addGaugesToMap","graphics","markerSymbol","size","outline","point","attr","ObjectID","curGraphic","geometry","attributes","gaugesRenderer","symbol","fields","alias","objectIdField","geometryType","spatialReference","source","renderer","removeAll","goTo","getSLRGISFileMapper","epaRegionCode","floodedAreaOrDepth","slrScenarioCode","yearCode","slr_gis_file_mapper","obj","x","slrGISInfo","resultsLayer","updatedMapLayerConfig","JSON","parse","stringify","mapservice","layerid","url","subLayers","curSubLayers","layerId","labelsVisible","popupEnabled","popupTemplate","sublayers","refresh","console","log","boolZoom","boolShowResults","group","fullExtent","expand","items","allSublayers","reorder","allLayers","curZoom","yHoverAdd","highlightSelect","hitTest","response","graphic","gaugeId","gaugeRegion","set","screenPoint","y","whenLayerView","layerView","remove","highlight","calcUtils","slrYears","calculateExceedanceYear","noaa2022MedianScenario","totalTidalHeightStormSurge","yearLower","yearUpper","slrProjLower","slrProjUpper","yearDiff","slrProjDiff","slrCritElevDiff","ratioDiffs","yearAdjustment","arrSLRYears","arrSLRProj","yearCount","exceedanceYear","index","round","noaa2022","noaa2022Json","getSLRProjectionsNOAA","noaa2022Scenario","getSLRProjectionsSeries","arrValues","Array","isArray","replaceAll","replace","chartData","values","getLMSLAsPercentageOfGMSL","lmsl","gmsl","getNOAAScenarioPrefixBySLRScenarioCode","sea_level_rise_scenarios","scenarioName","scenarioCodePrefix","slrGisFileMapperJson","seaLevelProjectionsAndProbabilityExceedingGMSL","substr","slrGISFileMapper","noaaScenarioPrefix","percentage","highestAstronomicalTide","radius","meanHigherHighWater","meanSeaLevel","lineColor","meanLowerLowWater","rangeValues","showInLegend","duration","usaceTideGauge","gauge","hat","mhhw","mllw","Number","config","productionTip","BootstrapVue","BootstrapVueIcons","HighchartsVue","VueHtml2Canvas","h","App","router","$mount"],"mappings":"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","file":"js/app.639ce77e.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3_1.vue?vue&type=style&index=0&id=d218b160&prod&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year.vue?vue&type=style&index=0&id=21cec1c3&prod&scoped=true&lang=css\"","module.exports = __webpack_public_path__ + \"img/tidal-variation.dabccf81.png\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TideGaugeMap.vue?vue&type=style&index=0&id=3520d748&prod&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation5.vue?vue&type=style&index=0&id=2c21ab24&prod&scoped=true&lang=css\"","module.exports = __webpack_public_path__ + \"img/depth.60fbe1b2.jpg\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResultsMap.vue?vue&type=style&index=0&id=d3b3a146&prod&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year1.vue?vue&type=style&index=0&id=d3844b36&prod&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation1.vue?vue&type=style&index=0&id=781ae05b&prod&scoped=true&lang=css\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div id=\"app\">\r\n <router-view></router-view>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'App'\r\n}\r\n</script>\r\n\r\n<style>\r\n#app {\r\n \r\n}\r\n</style>\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=128a2465\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=128a2465&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',{staticClass:\"pr-5 border-right\",attrs:{\"md\":\"6\"}},[_c('p',[_vm._v(\" The EPA \"),_c('i',[_vm._v(\"Sea-level-rise Exploration and Assessment (SEA) Tool\")]),_vm._v(\" is intended to provide an intuitive interface for the sea-level-rise \"),_c('a',{attrs:{\"href\":\"https://oceanservice.noaa.gov/hazards/sealevelrise/sealevelrise-data.html\",\"target\":\"_blank\",\"data-once\":\"external-links protected-links\"}},[_c('b',[_vm._v(\"data\")])]),_vm._v(\" included in the 2022 NOAA technical \"),_c('a',{attrs:{\"href\":\"https://oceanservice.noaa.gov/hazards/sealevelrise/sealevelrise-tech-report-sections.html\",\"target\":\"_blank\",\"data-once\":\"external-links protected-links\"}},[_c('b',[_vm._v(\"report\")])]),_vm._v(\". A series of simple selections produces maps, graphics and statistics that allow the user to understand: \")]),_c('ol',[_c('li',[_vm._v(\" the timing of future sea-level-rise impacts at a site; \")]),_c('li',[_vm._v(\" the interaction of sea-level rise, tides and storm surge; \")]),_c('li',[_vm._v(\" the relationship between global and local mean sea-level changes; and \")]),_c('li',[_vm._v(\" the probability of exceeding global mean sea level in 2100 based on a series of Shared Socioeconomic Pathways (SSPs) representing alternative plausible trajectories of 21st century development. \")])]),_c('p',[_vm._v(\" The tool is also designed to highlight the range of projections without suggesting that there is a single “correct†solution to the question of sea-level rise futures. \")])]),_c('b-col',{attrs:{\"md\":\"6 pl-5\"}},[_c('b-row',{staticClass:\"mt-4 mb-3\"},[_c('b-col',{staticClass:\"text-center\",attrs:{\"md\":\"6\"}},[_c('b-button',{staticClass:\"explore-button\",attrs:{\"size\":\"lg\",\"block\":\"\",\"squared\":\"\"},on:{\"click\":_vm.exploreByCriticalElevation}},[_c('b-icon',{attrs:{\"icon\":\"graph-up\",\"aria-label\":\"Explore Sea Level Rise By Critical Elevation\"}}),_c('br'),_vm._v(\" Explore by\"),_c('br'),_vm._v(\"Critical Elevation \")],1),_c('p',{staticClass:\"text-center\"},[_vm._v(\" Conduct a screening level assessment of the impact of sea-level rise, tides and storm surge at a site. \")])],1),_c('b-col',{staticClass:\"text-center\",attrs:{\"md\":\"6\"}},[_c('b-button',{staticClass:\"explore-button\",attrs:{\"size\":\"lg\",\"block\":\"\",\"squared\":\"\"},on:{\"click\":_vm.exploreByYear}},[_c('b-icon',{attrs:{\"icon\":\"calendar2-date-fill\",\"aria-label\":\"Explore GIS Data by Year\"}}),_c('br'),_vm._v(\" Explore GIS Data\"),_c('br'),_vm._v(\"by Year \")],1),_c('p',{staticClass:\"text-center\"},[_vm._v(\" Explore the report's data by year and view and download GIS layers to conduct your own site-level analysis. \")])],1)],1)],1)],1),_c('hr'),_c('b-row',[_c('b-col',[_c('h5',[_vm._v(\"Frequently Asked Questions\")]),_c('div',{attrs:{\"id\":\"features\",\"role\":\"tablist\"}},[_c('div',[_c('p',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.q-1\",modifiers:{\"q-1\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" How will sea-level rise impact a specific location? How is sea-level rise at that location different from global sea-level rise? \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"q-1\",\"accordion\":\"features\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" Global mean sea level rise scenarios provide an overall estimate of how sea level could change in the future. However, local effects can produce sea level changes that are substantially different than the global average. To capture those effects, sea level projections were produced for a 1-degree grid (approximately 69 mi. by 55 mi. at 38° north latitude) covering the coastlines of the U.S. mainland, Alaska, Hawaii, the Caribbean, and the Pacific island territories as well as the precise location of tide gauges along these coastlines. Adjustments to sea level projections included 1) shifts in oceanographic factors such as circulation patterns, 2) changes in the Earth’s gravitational field and rotation, and flexure of the crust and upper mantle, due to melting of land-based ice, 3) vertical land movement (subsidence or uplift) due to glacial isostatic adjustment (ongoing changes in elevation due to the retreat of ice sheets at the end of the last Ice Age), sediment compaction, groundwater and fossil fuel withdrawals and other non-climatic factors. \")])])],1),_c('div',[_c('p',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.q-2\",modifiers:{\"q-2\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" Planning at my location needs to be viable over a certain time horizon. What does SLR look like at my site during that time period? \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"q-2\",\"accordion\":\"features\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" Changes to sea level are quantified on a decadal basis from 2000 to 2150. Decadal projections allow the information to more easily be incorporated into decision making, while projections extending into the 22\"),_c('sup',[_vm._v(\"nd\")]),_vm._v(\" century highlight the continuous nature of sea-level rise. \")])])],1),_c('div',[_c('p',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.q-3\",modifiers:{\"q-3\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" What is the probability of surpassing given SLR scenario? \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"q-3\",\"accordion\":\"features\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" The probability of exceeding a given sea-level-rise scenario is based on future greenhouse-gas emissions. The range of probabilities for the selected sea-level rise scenario is provided in the Summary Statistics table for each scenario to account for a variety of potential future emissions pathways. \")])])],1),_c('div',[_c('p',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.q-4\",modifiers:{\"q-4\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" What’s the worst-case scenario for my site? \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"q-4\",\"accordion\":\"features\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" Updated science indicates physically plausible global mean sea-level-rise scenarios of up to 2.0 m (6.56 ft) by 2100. The 2017 report which precedes the most current 2022 edition included an Extreme (2.5-m, 8.9 ft) scenario which was meant to capture this low-probability, high-impact possibility, but updates to this information indicate that this scenario is so unlikely that it would be misleading to continue to include. For this reason, the 2.0 m scenario is considered to be the most extreme-but-still-possible scenario, and the highest impact that this may have on certain U.S. locales is around 3m (9.8ft). \")])])],1)])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <b-container fluid>\r\n <b-row>\r\n <b-col md=\"6\" class=\"pr-5 border-right\">\r\n <p>\r\n The EPA <i>Sea-level-rise Exploration and Assessment (SEA) Tool</i> is\r\n intended to provide an intuitive interface for the sea-level-rise\r\n <a\r\n href=\"https://oceanservice.noaa.gov/hazards/sealevelrise/sealevelrise-data.html\"\r\n target=\"_blank\"\r\n data-once=\"external-links protected-links\"\r\n ><b>data</b>\r\n </a>\r\n included in the 2022 NOAA technical\r\n <a\r\n href=\"https://oceanservice.noaa.gov/hazards/sealevelrise/sealevelrise-tech-report-sections.html\"\r\n target=\"_blank\"\r\n data-once=\"external-links protected-links\"\r\n ><b>report</b> </a\r\n >. A series of simple selections produces maps, graphics and\r\n statistics that allow the user to understand:\r\n </p>\r\n <ol>\r\n <li>\r\n the timing of future sea-level-rise impacts at a site;\r\n </li>\r\n <li>\r\n the interaction of sea-level rise, tides and storm surge;\r\n </li>\r\n <li>\r\n the relationship between global and local mean sea-level changes;\r\n and\r\n </li>\r\n <li>\r\n the probability of exceeding global mean sea level in 2100 based on\r\n a series of Shared Socioeconomic Pathways (SSPs) representing\r\n alternative plausible trajectories of 21st century development.\r\n </li>\r\n </ol>\r\n <p>\r\n The tool is also designed to highlight the range of projections\r\n without suggesting that there is a single “correct†solution to the\r\n question of sea-level rise futures.\r\n </p>\r\n </b-col>\r\n <b-col md=\"6 pl-5\">\r\n <b-row class=\"mt-4 mb-3\">\r\n <b-col md=\"6\" class=\"text-center\">\r\n <b-button\r\n size=\"lg\"\r\n block\r\n squared\r\n class=\"explore-button\"\r\n @click=\"exploreByCriticalElevation\"\r\n >\r\n <b-icon\r\n icon=\"graph-up\"\r\n aria-label=\"Explore Sea Level Rise By Critical Elevation\"\r\n ></b-icon>\r\n <br />\r\n Explore by<br />Critical Elevation\r\n </b-button>\r\n <p class=\"text-center\">\r\n Conduct a screening level assessment of the impact of sea-level\r\n rise, tides and storm surge at a site.\r\n </p>\r\n </b-col>\r\n <b-col md=\"6\" class=\"text-center\">\r\n <b-button\r\n size=\"lg\"\r\n block\r\n squared\r\n class=\"explore-button\"\r\n @click=\"exploreByYear\"\r\n >\r\n <b-icon\r\n icon=\"calendar2-date-fill\"\r\n aria-label=\"Explore GIS Data by Year\"\r\n ></b-icon>\r\n <br />\r\n Explore GIS Data<br />by Year\r\n </b-button>\r\n <p class=\"text-center\">\r\n Explore the report's data by year and view and download GIS layers\r\n to conduct your own site-level analysis.\r\n </p>\r\n </b-col>\r\n </b-row>\r\n </b-col>\r\n </b-row>\r\n <hr />\r\n <b-row>\r\n <b-col>\r\n <h5>Frequently Asked Questions</h5>\r\n <div id=\"features\" role=\"tablist\">\r\n <div>\r\n <p role=\"tab\">\r\n <a href=\"#\" @click=\"preventDefault\" v-b-toggle.q-1>\r\n <b-icon icon=\"chevron-right\" class=\"when-closed mr-2\"></b-icon>\r\n <b-icon icon=\"chevron-down\" class=\"when-open mr-2\"></b-icon>\r\n How will sea-level rise impact a specific location? How is\r\n sea-level rise at that location different from global sea-level\r\n rise?\r\n </a>\r\n </p>\r\n <b-collapse\r\n id=\"q-1\"\r\n accordion=\"features\"\r\n role=\"tabpanel\"\r\n class=\"p-3 mb-4 info\"\r\n >\r\n <p>\r\n Global mean sea level rise scenarios provide an overall estimate\r\n of how sea level could change in the future. However, local\r\n effects can produce sea level changes that are substantially\r\n different than the global average. To capture those effects, sea\r\n level projections were produced for a 1-degree grid\r\n (approximately 69 mi. by 55 mi. at 38° north latitude) covering\r\n the coastlines of the U.S. mainland, Alaska, Hawaii, the\r\n Caribbean, and the Pacific island territories as well as the\r\n precise location of tide gauges along these coastlines.\r\n Adjustments to sea level projections included 1) shifts in\r\n oceanographic factors such as circulation patterns, 2) changes\r\n in the Earth’s gravitational field and rotation, and flexure of\r\n the crust and upper mantle, due to melting of land-based ice, 3)\r\n vertical land movement (subsidence or uplift) due to glacial\r\n isostatic adjustment (ongoing changes in elevation due to the\r\n retreat of ice sheets at the end of the last Ice Age), sediment\r\n compaction, groundwater and fossil fuel withdrawals and other\r\n non-climatic factors.\r\n </p>\r\n </b-collapse>\r\n </div>\r\n <div>\r\n <p role=\"tab\">\r\n <a href=\"#\" @click=\"preventDefault\" v-b-toggle.q-2>\r\n <b-icon icon=\"chevron-right\" class=\"when-closed mr-2\"></b-icon>\r\n <b-icon icon=\"chevron-down\" class=\"when-open mr-2\"></b-icon>\r\n Planning at my location needs to be viable over a certain time\r\n horizon. What does SLR look like at my site during that time\r\n period?\r\n </a>\r\n </p>\r\n <b-collapse\r\n id=\"q-2\"\r\n accordion=\"features\"\r\n role=\"tabpanel\"\r\n class=\"p-3 mb-4 info\"\r\n >\r\n <p>\r\n Changes to sea level are quantified on a decadal basis from 2000\r\n to 2150. Decadal projections allow the information to more\r\n easily be incorporated into decision making, while projections\r\n extending into the 22<sup>nd</sup>\r\n century highlight the continuous nature of sea-level rise.\r\n </p>\r\n </b-collapse>\r\n </div>\r\n <div>\r\n <p role=\"tab\">\r\n <a href=\"#\" @click=\"preventDefault\" v-b-toggle.q-3>\r\n <b-icon icon=\"chevron-right\" class=\"when-closed mr-2\"></b-icon>\r\n <b-icon icon=\"chevron-down\" class=\"when-open mr-2\"></b-icon>\r\n What is the probability of surpassing given SLR scenario?\r\n </a>\r\n </p>\r\n <b-collapse\r\n id=\"q-3\"\r\n accordion=\"features\"\r\n role=\"tabpanel\"\r\n class=\"p-3 mb-4 info\"\r\n >\r\n <p>\r\n The probability of exceeding a given sea-level-rise scenario is\r\n based on future greenhouse-gas emissions. The range of\r\n probabilities for the selected sea-level rise scenario is\r\n provided in the Summary Statistics table for each scenario to\r\n account for a variety of potential future emissions pathways.\r\n </p>\r\n </b-collapse>\r\n </div>\r\n <div>\r\n <p role=\"tab\">\r\n <a href=\"#\" @click=\"preventDefault\" v-b-toggle.q-4>\r\n <b-icon icon=\"chevron-right\" class=\"when-closed mr-2\"></b-icon>\r\n <b-icon icon=\"chevron-down\" class=\"when-open mr-2\"></b-icon>\r\n What’s the worst-case scenario for my site?\r\n </a>\r\n </p>\r\n <b-collapse\r\n id=\"q-4\"\r\n accordion=\"features\"\r\n role=\"tabpanel\"\r\n class=\"p-3 mb-4 info\"\r\n >\r\n <p>\r\n Updated science indicates physically plausible global mean\r\n sea-level-rise scenarios of up to 2.0 m (6.56 ft) by 2100. The\r\n 2017 report which precedes the most current 2022 edition\r\n included an Extreme (2.5-m, 8.9 ft) scenario which was meant to\r\n capture this low-probability, high-impact possibility, but\r\n updates to this information indicate that this scenario is so\r\n unlikely that it would be misleading to continue to include. For\r\n this reason, the 2.0 m scenario is considered to be the most\r\n extreme-but-still-possible scenario, and the highest impact that\r\n this may have on certain U.S. locales is around 3m (9.8ft).\r\n </p>\r\n </b-collapse>\r\n </div>\r\n </div>\r\n </b-col>\r\n </b-row>\r\n </b-container>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"Home\",\r\n props: {\r\n region: String,\r\n tideGauge: String,\r\n },\r\n data() {\r\n return {\r\n model: {\r\n region: \"\",\r\n tideGauge: \"\",\r\n },\r\n };\r\n },\r\n methods: {\r\n exploreByCriticalElevation() {\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n this.$router.push({\r\n name: \"critical-elevation-1\",\r\n params: {\r\n region: this.model.region,\r\n tideGauge: this.model.tideGauge,\r\n },\r\n });\r\n },\r\n exploreByYear() {\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n this.$router.push({\r\n name: \"year-1\",\r\n params: {\r\n region: this.model.region,\r\n tideGauge: this.model.tideGauge,\r\n },\r\n });\r\n },\r\n changeRegion(value) {\r\n this.model.region = value;\r\n },\r\n changeTideGauge(value) {\r\n this.model.tideGauge = value;\r\n },\r\n preventDefault(e) {\r\n e.preventDefault();\r\n },\r\n },\r\n created() {\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n#features h5 {\r\n font-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n \"Arial\", sans-serif;\r\n}\r\n\r\n.collapsed > .when-open,\r\n.not-collapsed > .when-closed {\r\n display: none;\r\n}\r\n\r\n.info {\r\n background-color: rgb(225, 243, 248);\r\n}\r\n\r\n.explore-button {\r\n background-color: #0071bc;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=6fc1f724&scoped=true\"\nimport script from \"./Home.vue?vue&type=script&lang=js\"\nexport * from \"./Home.vue?vue&type=script&lang=js\"\nimport style0 from \"./Home.vue?vue&type=style&index=0&id=6fc1f724&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6fc1f724\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('h4',[_vm._v(\"Explore By Critical Elevation\")])]),_c('b-col',{staticClass:\"text-right\",attrs:{\"md\":\"6\"}},[_c('b-button',{staticClass:\"mr-2\",attrs:{\"title\":\"Sea Level Rise Tool Home\",\"variant\":\"dark\"},on:{\"click\":_vm.home}},[_c('b-icon',{attrs:{\"icon\":\"house-fill\",\"aria-label\":\"Sea Level Rise Tool Home\"}}),_vm._v(\" Home \")],1),_c('b-button',{attrs:{\"title\":\"Explore the data by year and view and download GIS layers to conduct your own site-level analysis.\",\"variant\":\"dark\"},on:{\"click\":_vm.exploreByYear}},[_c('b-icon',{attrs:{\"icon\":\"calendar2-date-fill\",\"aria-label\":\"Explore the data by year and view and download GIS layers to conduct your own site-level analysis.\"}}),_vm._v(\" Explore GIS Data by Year \")],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"12\"}},[_c('b-nav',{attrs:{\"pills\":\"\",\"justified\":\"\"}},[_c('b-nav-item',{staticClass:\"mr-1\",attrs:{\"to\":\"/critical-elevation/1\",\"active-class\":\"active\"}},[_vm._v(\"1. Critical Elevation\")]),_c('b-nav-item',{staticClass:\"mr-1\",attrs:{\"to\":\"/critical-elevation/2\",\"active-class\":\"active\"}},[_vm._v(\"2. Tide Gauge\")]),_c('b-nav-item',{staticClass:\"mr-1\",attrs:{\"to\":\"/critical-elevation/3\",\"active-class\":\"active\"}},[_vm._v(\"3. High Tide\")]),_c('b-nav-item',{staticClass:\"mr-1\",attrs:{\"to\":\"/critical-elevation/4\",\"active-class\":\"active\"}},[_vm._v(\"4. Storm Surge\")]),_c('b-nav-item',{attrs:{\"id\":\"tooltip-target\",\"to\":\"/critical-elevation/5\",\"active-class\":\"active\"}},[_vm._v(\"5. Results\")])],1),_c('b-tooltip',{attrs:{\"variant\":\"success\",\"target\":\"tooltip-target\",\"placement\":\"bottomright\",\"fallback-placement\":\"clockwise\",\"triggers\":\"manual\",\"show\":\"\"}},[_vm._v(\" Click here to skip wizard and use one-step calculator \"),_c('button',{staticClass:\"close-tooltip\",attrs:{\"aria-label\":\"Close\"},on:{\"click\":_vm.closeTooltip}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_vm._v(\"×\")])])])],1)],1),_c('router-view',{attrs:{\"criticalElevation\":_vm.model.criticalElevation,\"region\":_vm.model.region,\"tideGauge\":_vm.model.tideGauge,\"heightOption\":_vm.model.heightOption,\"tidalHeight\":_vm.model.tidalHeight,\"heightBuffer\":_vm.model.heightBuffer,\"customHeight\":_vm.model.customHeight,\"levelOption\":_vm.model.levelOption,\"surgeLevel\":_vm.model.surgeLevel,\"levelBuffer\":_vm.model.levelBuffer,\"customLevel\":_vm.model.customLevel},on:{\"changeCriticalElevation\":_vm.changeCriticalElevation,\"changeRegion\":_vm.changeRegion,\"changeTideGauge\":_vm.changeTideGauge,\"changeHeightOption\":_vm.changeHeightOption,\"changeTidalHeight\":_vm.changeTidalHeight,\"changeHeightBuffer\":_vm.changeHeightBuffer,\"changeCustomHeight\":_vm.changeCustomHeight,\"changeLevelOption\":_vm.changeLevelOption,\"changeSurgeLevel\":_vm.changeSurgeLevel,\"changeLevelBuffer\":_vm.changeLevelBuffer,\"changeCustomLevel\":_vm.changeCustomLevel}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <b-container fluid>\r\n <b-row>\r\n <b-col md=\"6\">\r\n <h4>Explore By Critical Elevation</h4>\r\n </b-col>\r\n <b-col md=\"6\" class=\"text-right\">\r\n <b-button\r\n title=\"Sea Level Rise Tool Home\"\r\n variant=\"dark\"\r\n class=\"mr-2\"\r\n @click=\"home\"\r\n >\r\n <b-icon\r\n icon=\"house-fill\"\r\n aria-label=\"Sea Level Rise Tool Home\"\r\n ></b-icon>\r\n Home\r\n </b-button>\r\n <b-button\r\n title=\"Explore the data by year and view and download GIS layers to conduct your own site-level analysis.\"\r\n variant=\"dark\"\r\n @click=\"exploreByYear\"\r\n >\r\n <b-icon\r\n icon=\"calendar2-date-fill\"\r\n aria-label=\"Explore the data by year and view and download GIS layers to conduct your own site-level analysis.\"\r\n ></b-icon>\r\n Explore GIS Data by Year\r\n </b-button>\r\n </b-col>\r\n </b-row>\r\n <b-row>\r\n <b-col md=\"12\">\r\n <b-nav pills justified>\r\n <b-nav-item\r\n to=\"/critical-elevation/1\"\r\n active-class=\"active\"\r\n class=\"mr-1\"\r\n >1. Critical Elevation</b-nav-item\r\n >\r\n <b-nav-item\r\n to=\"/critical-elevation/2\"\r\n active-class=\"active\"\r\n class=\"mr-1\"\r\n >2. Tide Gauge</b-nav-item\r\n >\r\n <b-nav-item\r\n to=\"/critical-elevation/3\"\r\n active-class=\"active\"\r\n class=\"mr-1\"\r\n >3. High Tide</b-nav-item\r\n >\r\n <b-nav-item\r\n to=\"/critical-elevation/4\"\r\n active-class=\"active\"\r\n class=\"mr-1\"\r\n >4. Storm Surge</b-nav-item\r\n >\r\n <b-nav-item\r\n id=\"tooltip-target\"\r\n to=\"/critical-elevation/5\"\r\n active-class=\"active\"\r\n >5. Results</b-nav-item\r\n >\r\n </b-nav>\r\n <b-tooltip\r\n variant=\"success\"\r\n target=\"tooltip-target\"\r\n placement=\"bottomright\"\r\n fallback-placement=\"clockwise\"\r\n triggers=\"manual\"\r\n show\r\n >\r\n Click here to skip wizard and use one-step calculator\r\n <button\r\n @click=\"closeTooltip\"\r\n class=\"close-tooltip\"\r\n aria-label=\"Close\"\r\n >\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </b-tooltip>\r\n </b-col>\r\n </b-row>\r\n <router-view\r\n :criticalElevation=\"model.criticalElevation\"\r\n :region=\"model.region\"\r\n :tideGauge=\"model.tideGauge\"\r\n :heightOption=\"model.heightOption\"\r\n :tidalHeight=\"model.tidalHeight\"\r\n :heightBuffer=\"model.heightBuffer\"\r\n :customHeight=\"model.customHeight\"\r\n :levelOption=\"model.levelOption\"\r\n :surgeLevel=\"model.surgeLevel\"\r\n :levelBuffer=\"model.levelBuffer\"\r\n :customLevel=\"model.customLevel\"\r\n @changeCriticalElevation=\"changeCriticalElevation\"\r\n @changeRegion=\"changeRegion\"\r\n @changeTideGauge=\"changeTideGauge\"\r\n @changeHeightOption=\"changeHeightOption\"\r\n @changeTidalHeight=\"changeTidalHeight\"\r\n @changeHeightBuffer=\"changeHeightBuffer\"\r\n @changeCustomHeight=\"changeCustomHeight\"\r\n @changeLevelOption=\"changeLevelOption\"\r\n @changeSurgeLevel=\"changeSurgeLevel\"\r\n @changeLevelBuffer=\"changeLevelBuffer\"\r\n @changeCustomLevel=\"changeCustomLevel\"\r\n >\r\n </router-view>\r\n </b-container>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"CriticalElevation\",\r\n props: {\r\n region: String,\r\n tideGauge: String,\r\n },\r\n data() {\r\n return {\r\n model: {\r\n criticalElevation: \"\",\r\n region: \"\",\r\n tideGauge: \"\",\r\n heightOption: \"1\",\r\n tidalHeight: \"\",\r\n heightBuffer: \"\",\r\n customHeight: \"\",\r\n levelOption: \"1\",\r\n surgeLevel: \"\",\r\n levelBuffer: \"\",\r\n customLevel: \"\",\r\n },\r\n };\r\n },\r\n methods: {\r\n closeTooltip() {\r\n this.$root.$emit('bv::hide::tooltip', 'tooltip-target');\r\n },\r\n home() {\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n this.$router.push({\r\n name: \"home\",\r\n params: {\r\n region: this.model.region,\r\n tideGauge: this.model.tideGauge,\r\n },\r\n });\r\n },\r\n exploreByYear() {\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n this.$router.push({\r\n name: \"year-1\",\r\n params: {\r\n region: this.model.region,\r\n tideGauge: this.model.tideGauge,\r\n },\r\n });\r\n },\r\n changeCriticalElevation(value) {\r\n this.model.criticalElevation = value;\r\n },\r\n changeRegion(value) {\r\n this.model.region = value;\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n },\r\n changeTideGauge(value) {\r\n this.model.tideGauge = value;\r\n this.$emit(\"changeTideGauge\", value);\r\n },\r\n changeHeightOption(value) {\r\n this.model.heightOption = value;\r\n },\r\n changeTidalHeight(value) {\r\n this.model.tidalHeight = value;\r\n },\r\n changeHeightBuffer(value) {\r\n this.model.heightBuffer = value;\r\n },\r\n changeCustomHeight(value) {\r\n this.model.customHeight = value;\r\n },\r\n changeLevelOption(value) {\r\n this.model.levelOption = value;\r\n },\r\n changeSurgeLevel(value) {\r\n this.model.surgeLevel = value;\r\n },\r\n changeLevelBuffer(value) {\r\n this.model.levelBuffer = value;\r\n },\r\n changeCustomLevel(value) {\r\n this.model.customLevel = value;\r\n },\r\n },\r\n created() {\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.tooltip {\r\n z-index: 1030;\r\n}\r\n.close-tooltip {\r\n position: absolute;\r\n top: 2px;\r\n right: 2px;\r\n padding: 0.1rem 0.1rem;\r\n background-color: transparent;\r\n border: 0;\r\n cursor: pointer;\r\n color: #fff;\r\n}\r\n.close-tooltip:focus {\r\n outline: none;\r\n}\r\n.nav-pills .nav-link {\r\n background-color: rgba(0, 113, 188, 0.1);\r\n}\r\n.nav-pills .nav-link.active,\r\n.nav-pills .show > .nav-link {\r\n background-color: #0071bc;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CriticalElevation.vue?vue&type=template&id=d008f254&scoped=true\"\nimport script from \"./CriticalElevation.vue?vue&type=script&lang=js\"\nexport * from \"./CriticalElevation.vue?vue&type=script&lang=js\"\nimport style0 from \"./CriticalElevation.vue?vue&type=style&index=0&id=d008f254&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d008f254\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-row',[_c('b-col',{staticClass:\"mb-3 pr-1\",attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"bg-light shadow-sm\"},[_c('b-form',{staticClass:\"p-3\"},[_c('b-form-group',{attrs:{\"label\":\"What is the critical elevation of the site?\",\"title\":\"Enter the critical elevation in feet or meters\"}},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"5\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"append\":\"ft\"}},[_c('b-form-input',{attrs:{\"id\":\"criticalElevationFeet\",\"title\":\"Click on the arrows or enter a number\",\"type\":\"number\",\"min\":\"0\",\"step\":\".1\",\"required\":\"\"},on:{\"change\":_vm.changeCriticalElevationFeet,\"input\":_vm.changeCriticalElevationFeet,\"keydown\":_vm.changeCriticalElevationFeet},model:{value:(_vm.model.criticalElevationFeet),callback:function ($$v) {_vm.$set(_vm.model, \"criticalElevationFeet\", $$v)},expression:\"model.criticalElevationFeet\"}})],1)],1),_c('b-col',{staticClass:\"text-center\"},[_c('span',[_vm._v(\"OR\")])]),_c('b-col',{attrs:{\"cols\":\"5\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"append\":\"meters\"}},[_c('b-form-input',{attrs:{\"id\":\"criticalElevationMeters\",\"title\":\"Click on the arrows or enter a number\",\"type\":\"number\",\"min\":\"0\",\"step\":\".1\",\"required\":\"\"},on:{\"change\":_vm.changeCriticalElevationMeters,\"input\":_vm.changeCriticalElevationMeters,\"keydown\":_vm.changeCriticalElevationMeters},model:{value:(_vm.model.criticalElevationMeters),callback:function ($$v) {_vm.$set(_vm.model, \"criticalElevationMeters\", $$v)},expression:\"model.criticalElevationMeters\"}})],1)],1)],1)],1)],1),_c('b-img',{attrs:{\"src\":require('../assets/images/critical-elevation.png'),\"alt\":\"\",\"fluid\":\"\"}})],1)]),_c('b-col',{staticClass:\"d-flex flex-column mb-3 pl-1\",attrs:{\"md\":\"6\"}},[_c('b-card',{staticClass:\"shadow-sm flex-grow-1 rounded-0\",attrs:{\"title\":\"What is the critical elevation?\"}},[_c('b-card-text',[_c('p',[_vm._v(\" Given the characteristics of the site of interest, this may be the lowest point at the site, the average elevation, the elevation of critical infrastructure or contamination, etc. \")]),_c('p',[_vm._v(\" Elevation is based on local mean sea level in the year 2000, commensurate with the projections from the NOAA 2022 \"),_c('a',{attrs:{\"href\":\"https://oceanservice.noaa.gov/hazards/sealevelrise/sealevelrise-tech-report-sections.html\",\"target\":\"_blank\"}},[_c('b',[_vm._v(\"report\")])]),_vm._v(\". \")])])],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"6\"}}),_c('b-col',{staticClass:\"text-right\",attrs:{\"md\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.next}},[_vm._v(\" Next \"),_c('b-icon',{attrs:{\"icon\":\"arrow-right\"}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div>\r\n <b-row>\r\n <b-col md=\"6\" class=\"mb-3 pr-1\">\r\n <div class=\"bg-light shadow-sm\">\r\n <b-form class=\"p-3\">\r\n <b-form-group\r\n label=\"What is the critical elevation of the site?\"\r\n title=\"Enter the critical elevation in feet or meters\"\r\n >\r\n <b-row>\r\n <b-col cols=\"5\">\r\n <b-input-group append=\"ft\" class=\"input-group-sm\">\r\n <b-form-input\r\n id=\"criticalElevationFeet\"\r\n title=\"Click on the arrows or enter a number\"\r\n v-model=\"model.criticalElevationFeet\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".1\"\r\n required\r\n @change=\"changeCriticalElevationFeet\"\r\n @input=\"changeCriticalElevationFeet\"\r\n @keydown=\"changeCriticalElevationFeet\"\r\n ></b-form-input>\r\n </b-input-group>\r\n </b-col>\r\n <b-col class=\"text-center\">\r\n <span>OR</span>\r\n </b-col>\r\n <b-col cols=\"5\">\r\n <b-input-group append=\"meters\" class=\"input-group-sm\">\r\n <b-form-input\r\n id=\"criticalElevationMeters\"\r\n title=\"Click on the arrows or enter a number\"\r\n v-model=\"model.criticalElevationMeters\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".1\"\r\n required\r\n @change=\"changeCriticalElevationMeters\"\r\n @input=\"changeCriticalElevationMeters\"\r\n @keydown=\"changeCriticalElevationMeters\"\r\n ></b-form-input>\r\n </b-input-group>\r\n </b-col>\r\n </b-row>\r\n </b-form-group>\r\n </b-form>\r\n <b-img\r\n :src=\"require('../assets/images/critical-elevation.png')\"\r\n alt=\"\"\r\n fluid\r\n ></b-img>\r\n </div>\r\n </b-col>\r\n <b-col md=\"6\" class=\"d-flex flex-column mb-3 pl-1\">\r\n <b-card\r\n title=\"What is the critical elevation?\"\r\n class=\"shadow-sm flex-grow-1 rounded-0\"\r\n >\r\n <b-card-text>\r\n <p>\r\n Given the characteristics of the site of interest, this may be the\r\n lowest point at the site, the average elevation, the elevation of\r\n critical infrastructure or contamination, etc.\r\n </p>\r\n <p>\r\n Elevation is based on local mean sea level in the year 2000,\r\n commensurate with the projections from the NOAA 2022\r\n <a\r\n href=\"https://oceanservice.noaa.gov/hazards/sealevelrise/sealevelrise-tech-report-sections.html\"\r\n target=\"_blank\"\r\n ><b>report</b></a\r\n >.\r\n </p>\r\n </b-card-text>\r\n </b-card>\r\n </b-col>\r\n </b-row>\r\n <b-row>\r\n <b-col md=\"6\"> </b-col>\r\n <b-col md=\"6\" class=\"text-right\">\r\n <b-button pill variant=\"success\" @click=\"next\">\r\n Next\r\n <b-icon icon=\"arrow-right\"></b-icon>\r\n </b-button>\r\n </b-col>\r\n </b-row>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"js\">\r\nexport default {\r\n\tname: \"CriticalElevation1\",\r\n\tprops: {\r\n\t\tcriticalElevation: String\r\n\t},\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tmodel: {\r\n\t\t\t\tcriticalElevationFeet: null,\r\n\t\t\t\tcriticalElevationMeters: null\r\n\t\t\t}\r\n\t\t};\r\n\t},\r\n\tmethods: {\r\n\t\tchangeCriticalElevationFeet(e) {\r\n\t\t\tlet feet = e.key ? e.key : e;\r\n\t\t\tif (!isNaN(feet)) {\r\n\t\t\t\tlet meters = (feet / 3.28084).toFixed(1);\r\n\t\t\t\tthis.model.criticalElevationMeters = meters;\r\n\t\t\t\tthis.$emit(\"changeCriticalElevation\", feet);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tthis.model.criticalElevationMeters = null;\r\n\t\t\t\tthis.$emit(\"changeCriticalElevation\", null);\r\n\t\t\t}\r\n\t\t},\r\n\t\tchangeCriticalElevationMeters(e) {\r\n\t\t\tlet meters = e.key ? e.key : e;\r\n\t\t\tif (!isNaN(meters)) {\r\n\t\t\t\tlet feet = (meters * 3.28084).toFixed(1);\r\n\t\t\t\tthis.model.criticalElevationFeet = feet;\r\n\t\t\t\tthis.$emit(\"changeCriticalElevation\", feet);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tthis.model.criticalElevationFeet = null;\r\n\t\t\t\tthis.$emit(\"changeCriticalElevation\", null);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnext() {\r\n\t\t\tthis.$router.push({ path: \"/critical-elevation/2\" });\r\n\t\t},\r\n\t},\r\n\tcreated() {\r\n\t\tif (this.criticalElevation) {\r\n\t\t\tthis.model.criticalElevationFeet = this.criticalElevation;\r\n\t\t\tlet meters = (this.criticalElevation / 3.28084).toFixed(1);\r\n\t\t\tthis.model.criticalElevationMeters = meters;\r\n\t\t}\r\n\t}\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.bg-light {\r\n background-color: #e5f0f8 !important;\r\n}\r\n\r\n.card {\r\n border-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\n\r\nh4 {\r\n font-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n \"Arial\", sans-serif;\r\n padding-bottom: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation1.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation1.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CriticalElevation1.vue?vue&type=template&id=781ae05b&scoped=true\"\nimport script from \"./CriticalElevation1.vue?vue&type=script&lang=js\"\nexport * from \"./CriticalElevation1.vue?vue&type=script&lang=js\"\nimport style0 from \"./CriticalElevation1.vue?vue&type=style&index=0&id=781ae05b&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"781ae05b\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-row',[_c('b-col',{staticClass:\"mb-3 pr-1\",attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"d-flex flex-column w-100 h-100 bg-light shadow-sm\"},[_c('b-form',{staticClass:\"p-3\"},[_c('b-form-group',{attrs:{\"label\":\"Select the tide gauge most representative of the site.\",\"label-for\":\"tideGauge\",\"title\":\"Select using the dropdowns or click on the map\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"prepend\":\"Region\"}},[_c('b-form-select',{staticClass:\"w-auto\",attrs:{\"id\":\"region\",\"title\":\"Select a region from the list\",\"options\":_vm.regions},on:{\"change\":_vm.changeRegion},model:{value:(_vm.model.region),callback:function ($$v) {_vm.$set(_vm.model, \"region\", $$v)},expression:\"model.region\"}})],1),_c('b-input-group',{staticClass:\"mt-2 input-group-sm\",attrs:{\"prepend\":\"Tide gauge\"}},[_c('b-form-select',{staticClass:\"w-auto\",attrs:{\"id\":\"tideGauge\",\"title\":\"Select a tide gauge from the list\",\"options\":_vm.tideGauges},on:{\"change\":_vm.changeTideGauge},model:{value:(_vm.model.tideGauge),callback:function ($$v) {_vm.$set(_vm.model, \"tideGauge\", $$v)},expression:\"model.tideGauge\"}})],1)],1)],1),_c('TideGaugeMap',{staticClass:\"flex-grow-1\",attrs:{\"selectedRegion\":_vm.model.region,\"selectedTideGauge\":_vm.model.tideGauge},on:{\"tideGaugeClicked\":_vm.tideGaugeClicked}})],1)]),_c('b-col',{staticClass:\"mb-3 pl-1\",attrs:{\"md\":\"6\"}},[_c('b-card',{staticClass:\"shadow-sm rounded-0\",attrs:{\"title\":\"About Tide Gauges\"}},[_c('b-card-text',[_c('p',[_c('b',[_vm._v(\"Regions\")]),_c('br'),_vm._v(\" “Regions†refers to EPA regions. Island states and territories and Alaska have been separated out from projections for the contiguous US. \")]),_c('p',[_c('b',[_vm._v(\"Tide Gauges\")]),_c('br'),_vm._v(\" Selecting a tide gauge will factor in local relative sea level (RSL) trends as opposed to using the global average sea level trend, which, depending on the tide gauge station, can be substantially different from one another. \")]),_c('p',[_vm._v(\" Tide gauge measurements are made with respect to a local fixed reference on land. RSL is a combination of the sea level rise and the local vertical land motion. Changes in RSL, either a rise or fall, have been incorporated into the technical report’s data at 142 long-term water level stations in the United States using a minimum span of 30 years of observations at each location. \")])])],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.previous}},[_c('b-icon',{attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\" Previous \")],1)],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.next}},[_vm._v(\" Next \"),_c('b-icon',{attrs:{\"icon\":\"arrow-right\"}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"tideGaugeMap\"}},[_c('div',{attrs:{\"id\":\"viewDiv\"}},[_c('img',{attrs:{\"id\":\"loading\",\"src\":require(\"../assets/images/loader.gif\")}}),_c('div',{attrs:{\"id\":\"hover\"}})])])}]\n\nexport { render, staticRenderFns }","\r\n<template>\r\n\t<div id=\"tideGaugeMap\">\r\n\t<div id=\"viewDiv\">\r\n <img id='loading' src='../assets/images/loader.gif'/>\r\n\t\r\n\t<div id=\"hover\"></div>\r\n\t</div>\r\n </div>\r\n\t\r\n</template>\r\n\r\n<script>\r\n/* eslint-disable */ \r\n\r\nexport default {\r\n\tname: \"TideGaugeMap\",\r\n props: {\r\n\t\tselectedRegion: String,\r\n\t\tselectedTideGauge: String\r\n\t},\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tregion: \"\",\r\n\t\t\ttideGauge: \"\",\r\n\t\t\tviewObj: null,\r\n\t\t\tFeatureLayer: null,\r\n\t\t\tGraphic: null,\r\n\t\t\tQuery: null\r\n\t\t}\r\n\t},\r\n\twatch: {\r\n\t\tselectedRegion: function(val) {\r\n\t\t\tthis.region = val;\r\n\t\t\tthis.zoomToGauges();\r\n\t\t},\r\n\t\tselectedTideGauge: function(val) {\r\n\t\t\tthis.tideGauge = val;\r\n\t\t\tthis.highlightTideGauge(null);\r\n\t\t}\r\n\t},\r\n\tmethods: {\r\n\t\ttideGaugeClicked: function(region, tideGauge) {\r\n\t\t\tthis.$emit('tideGaugeClicked', { region: region, tideGauge: tideGauge});\r\n\t\t},\r\n\r\n\t\tzoomToGauges: function() {\t\t\t\r\n\t\t\tthis.$mapUtils.zoomToGauges(this.region, this.viewObj, this.Query);\r\n\t\t},\r\n\r\n\t\thighlightTideGauge: function(feature) {\r\n\t\t\t\r\n\t\t\tvar vm = this;\r\n\t\t\tvar vmutils=this.$mapUtils;\r\n\t\t\t\r\n\t\t\tif (feature===null){\r\n\t\t\t\t//If the user chose from the dropdown then we don't have the feature yet\t\r\n\t\t\t\tif (vm.tideGauge === \"\"){\r\n\t\t\t\t\tvmutils.clearSelectedGauge(vm.viewObj);\t\r\n\t\t\t\t}else{\t\t\r\n\t\t\t\t\tvar gaugesLayer = this.viewObj.map.findLayerById('gauges');\r\n\t\t\t\t\tconst query = new this.Query();\r\n\t\t\t\t\tquery.where = \"id = \" + vm.tideGauge;\r\n\t\t\t\t\tquery.outSpatialReference = { wkid: 102100 };\r\n\t\t\t\t\tquery.returnGeometry = true;\r\n\t\t\t\t\tquery.outFields = ['*'];\r\n\r\n\t\t\t\t\tgaugesLayer.queryFeatures(query).then(function (results) {\r\n\t\t\t\t\t\t// prints the array of result graphics to the console\r\n\t\t\t\t\t\t//console.log(results.features);\t\t\t\t\t\t\r\n\t\t\t\t\t\tvmutils.highlightTideGauge(results.features[0], vm.viewObj );\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}else{\r\n\t\t\t\t//If they click the map then we have the feature and can highlight it\r\n\t\t\t\tvmutils.highlightTideGauge(feature, vm.viewObj );\r\n\t\t\t}\r\n\t\t\t\r\n\t\t},\r\n\r\n\t\tcreateMap: function() {\r\n \r\n\t\t\tconst vm = this; //create reference to vue instance\r\n\t\t\tconst mapServerConfig = this.$mapServerConfig;\r\n\t\t\tconst loadModules = this.$loadModules;\r\n\t\t\t\r\n\t\t\tloadModules(['esri/views/MapView', 'esri/Map', \r\n\t\t\t\t'esri/widgets/ScaleBar', 'esri/layers/MapImageLayer',\r\n\t\t\t\t'esri/core/watchUtils','dojo/fx/Toggler','esri/layers/FeatureLayer','esri/Graphic','dojo/dom-style','dojo/html',\r\n\t\t\t\t\"esri/tasks/support/Query\",\"esri/layers/GraphicsLayer\"], { css: true })\r\n\t\t\t.then(([MapView, Map,ScaleBar,MapImageLayer,watchUtils,Toggler,FeatureLayer,Graphic,domStyle,dojoHtml,Query,GraphicsLayer]) => {\r\n \r\n\t\t\t\t\r\n\t\t\t\tconst mapLayerConfig = { \r\n\t\t\t\t\tmapLayers:{\r\n\t\t\t\t\t\t'regions': {'service': mapServerConfig.epaRegionsServiceUrl, 'opacity': 0.8,'layers':[2,3],'title':'EPA Regions', 'id':'epa-regions'}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tmapStartCenter: [-98.58, 39.83],\r\n\t\t\t\t\tmapStartZoom: 2,\r\n\t\t\t\t\tloading: null\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\t//Create the map \r\n\t\t\t\tvar map = new Map({\r\n\t\t\t\t\tbasemap: \"streets-vector\" \r\n\t\t\t\t\t\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t\t//Create the 2D map view\r\n\t\t\t\tvar view = new MapView({\r\n\t\t\t\t\tcontainer: \"viewDiv\",\r\n\t\t\t\t\tmap: map,\r\n\t\t\t\t\tcenter: mapLayerConfig.mapStartCenter,\r\n\t\t\t\t\tzoom: mapLayerConfig.mapStartZoom, \r\n\t\t\t\t\thighlightOptions: {\r\n\t\t\t\t\t\tcolor: [0,255,255, 1],\r\n\t\t\t\t\t\thaloColor: [0,255,255, 1],\r\n\t\t\t\t\t\thaloOpacity: 1,\r\n\t\t\t\t\t\tfillOpacity: 0.5\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t\t//Need to pass some ESRI objects\r\n\t\t\t\tthis.viewObj = view\r\n\t\t\t\tthis.FeatureLayer=FeatureLayer;\r\n\t\t\t\tthis.Graphic=Graphic;\r\n\t\t\t\tthis.Query=Query;\r\n\r\n\t\t\t\tmapLayerConfig.loading = new Toggler({\r\n\t\t\t\t\tnode: \"loading\"\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t\t// Display the loading indicator when the view is updating\r\n\t\t\t\twatchUtils.whenTrue(view, \"updating\", function() {\r\n\t\t\t\t\tmapLayerConfig.loading.show();\r\n\t\t\t\t});\r\n\t\t\t\r\n\t\t\t\t// Hide the loading indicator when the view stops updating\r\n\t\t\t\twatchUtils.whenFalse(view, \"updating\", function() {\r\n\t\t\t\t\tmapLayerConfig.loading.hide();\r\n\t\t\t\t});\r\n\t\t\t\t\t\r\n\r\n\t\t\t\tview.when(function () { \r\n\t\t\t\t\t\r\n\t\t\t\t\t//Add scalebar widget\r\n\t\t\t\t\tvar scaleBar = new ScaleBar({\r\n\t\t\t\t\t\tview: view,\r\n\t\t\t\t\t\tunit: \"miles\"\r\n\t\t\t\t\t});\r\n\t\t\t\t\t// Add widget \r\n\t\t\t\t\tview.ui.add(scaleBar, {\r\n\t\t\t\t\t\tposition: \"bottom-right\"\r\n\t\t\t\t\t});\r\n\t\t\t\r\n\t\t\t\t\t//Create the graphicsLayer to use for showing selected gauge\r\n\t\t\t\t\tvar selectedGauge = new GraphicsLayer();\r\n\t\t\t\t\tselectedGauge.id='selected-gauge';\r\n\t\t\t\t\tmap.add(selectedGauge);\r\n\t\t\t\t\t\r\n\t\t\t\t\t//Add the layers to the map\r\n\t\t\t\t\tvm.$mapUtils.addLayers(mapLayerConfig, view, MapImageLayer, false, false);\t\t\t\t\t\r\n\r\n\t\t\t\t\t//Add All gauges to the map\r\n\t\t\t\t\tvm.$mapUtils.addAllGaugesToMap(view,vm.tideGaugeClicked,vm.highlightTideGauge,FeatureLayer,Graphic,domStyle,dojoHtml,120)\r\n\t\t\t\t\t\r\n\t\t\t\t\t//zoom to region if selected\r\n\t\t\t\t\tif (vm.region && vm.region !== \"\") {\r\n\t\t\t\t\t\tvm.zoomToGauges();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t//highlight to tide gauge if selected\r\n\t\t\t\t\tif (vm.tideGauge && vm.tideGauge !== \"\") {\r\n\t\t\t\t\t\tvm.highlightTideGauge(null);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t\tview.popup.autoCloseEnabled=true;\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t}); //end esri\r\n\r\n\t\t} //end createMap\r\n\r\n\t\t\r\n\t}, //end methods\r\n\tcreated() {\r\n\t\tif (this.selectedRegion) {\r\n\t\t\tthis.region = this.selectedRegion;\r\n\t\t}\r\n\t\tif (this.selectedTideGauge) {\r\n\t\t\tthis.tideGauge = this.selectedTideGauge;\r\n\t\t}\r\n\t},\r\n\tmounted() {\r\n\t\tthis.createMap();\r\n\t}\r\n};\r\n\r\n/* eslint-enable */ \r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n#viewDiv {\r\n\tmin-width:200px;\r\n min-height:200px;\r\n\twidth: 100%;\r\n\theight:100%;\r\n}\r\n\r\n#loading {\r\n margin: 0;\r\n position: absolute;\r\n width: 25px;\r\n height: 25px; \r\n top: 50%;\r\n left: 50%;\r\n margin-right: -50%;\r\n}\r\n\r\n#hover {\r\n display: none;\r\n min-width: 100px;\r\n min-height: 30px;\r\n background-color: white;\r\n border-color: #0071bc; \r\n border-width: 1px;\r\n border-style: solid;\r\n position: absolute;\r\n z-index: 1000;\r\n font-size: x-small;\r\n padding: 1em;\r\n border-radius: 5px;\r\n margin-left:10px;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TideGaugeMap.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TideGaugeMap.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TideGaugeMap.vue?vue&type=template&id=3520d748&scoped=true\"\nimport script from \"./TideGaugeMap.vue?vue&type=script&lang=js\"\nexport * from \"./TideGaugeMap.vue?vue&type=script&lang=js\"\nimport style0 from \"./TideGaugeMap.vue?vue&type=style&index=0&id=3520d748&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3520d748\",\n null\n \n)\n\nexport default component.exports","<template>\r\n <div>\r\n <b-row>\r\n <b-col md=\"6\" class=\"mb-3 pr-1\">\r\n <div class=\"d-flex flex-column w-100 h-100 bg-light shadow-sm\">\r\n <b-form class=\"p-3\">\r\n <b-form-group\r\n label=\"Select the tide gauge most representative of the site.\"\r\n label-for=\"tideGauge\"\r\n title=\"Select using the dropdowns or click on the map\"\r\n >\r\n <b-input-group prepend=\"Region\" class=\"input-group-sm\">\r\n <b-form-select\r\n id=\"region\"\r\n title=\"Select a region from the list\"\r\n class=\"w-auto\"\r\n v-model=\"model.region\"\r\n :options=\"regions\"\r\n @change=\"changeRegion\"\r\n ></b-form-select>\r\n </b-input-group>\r\n <b-input-group prepend=\"Tide gauge\" class=\"mt-2 input-group-sm\">\r\n <b-form-select\r\n id=\"tideGauge\"\r\n title=\"Select a tide gauge from the list\"\r\n class=\"w-auto\"\r\n v-model=\"model.tideGauge\"\r\n :options=\"tideGauges\"\r\n @change=\"changeTideGauge\"\r\n ></b-form-select>\r\n </b-input-group>\r\n </b-form-group>\r\n </b-form>\r\n <TideGaugeMap\r\n :selectedRegion=\"model.region\"\r\n :selectedTideGauge=\"model.tideGauge\"\r\n @tideGaugeClicked=\"tideGaugeClicked\"\r\n class=\"flex-grow-1\"\r\n />\r\n </div>\r\n </b-col>\r\n <b-col md=\"6\" class=\"mb-3 pl-1\">\r\n <b-card title=\"About Tide Gauges\" class=\"shadow-sm rounded-0\">\r\n <b-card-text>\r\n <p>\r\n <b>Regions</b><br />\r\n “Regions†refers to EPA regions. Island states and territories and\r\n Alaska have been separated out from projections for the contiguous\r\n US.\r\n </p>\r\n <p>\r\n <b>Tide Gauges</b><br />\r\n Selecting a tide gauge will factor in local relative sea level\r\n (RSL) trends as opposed to using the global average sea level\r\n trend, which, depending on the tide gauge station, can be\r\n substantially different from one another.\r\n </p>\r\n <p>\r\n Tide gauge measurements are made with respect to a local fixed\r\n reference on land. RSL is a combination of the sea level rise and\r\n the local vertical land motion. Changes in RSL, either a rise or\r\n fall, have been incorporated into the technical report’s data at\r\n 142 long-term water level stations in the United States using a\r\n minimum span of 30 years of observations at each location.\r\n </p>\r\n </b-card-text>\r\n </b-card>\r\n </b-col>\r\n </b-row>\r\n <b-row>\r\n <b-col sm=\"6\">\r\n <b-button pill variant=\"success\" @click=\"previous\">\r\n <b-icon icon=\"arrow-left\"></b-icon>\r\n Previous\r\n </b-button>\r\n </b-col>\r\n <b-col sm=\"6\" class=\"text-right\">\r\n <b-button pill variant=\"success\" @click=\"next\">\r\n Next\r\n <b-icon icon=\"arrow-right\"></b-icon>\r\n </b-button>\r\n </b-col>\r\n </b-row>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport TideGaugeMap from \"../components/TideGaugeMap\";\r\n\r\nexport default {\r\n name: \"CriticalElevation2\",\r\n props: {\r\n region: String,\r\n tideGauge: String,\r\n },\r\n components: {\r\n TideGaugeMap,\r\n },\r\n data() {\r\n return {\r\n model: {\r\n region: \"\",\r\n tideGauge: \"\",\r\n },\r\n regions: [],\r\n tideGauges: [],\r\n };\r\n },\r\n methods: {\r\n changeRegion() {\r\n this.$emit(\"changeRegion\", this.model.region);\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n this.model.tideGauge = \"\";\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n },\r\n changeTideGauge() {\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n },\r\n tideGaugeClicked(value) {\r\n this.model.region = value.region.split(\",\")[0];\r\n this.$emit(\"changeRegion\", this.model.region);\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n this.model.tideGauge = value.tideGauge;\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n },\r\n next() {\r\n this.$router.push({ path: \"/critical-elevation/3\" });\r\n },\r\n previous() {\r\n this.$router.push({ path: \"/critical-elevation/1\" });\r\n },\r\n },\r\n created() {\r\n this.regions = this.$dataUtils.getRegions();\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.bg-light {\r\n background-color: #e5f0f8 !important;\r\n}\r\n\r\n.card {\r\n border-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\n\r\nh4 {\r\n font-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n \"Arial\", sans-serif;\r\n padding-bottom: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation2.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation2.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CriticalElevation2.vue?vue&type=template&id=7956e4ea&scoped=true\"\nimport script from \"./CriticalElevation2.vue?vue&type=script&lang=js\"\nexport * from \"./CriticalElevation2.vue?vue&type=script&lang=js\"\nimport style0 from \"./CriticalElevation2.vue?vue&type=style&index=0&id=7956e4ea&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7956e4ea\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-row',[_c('b-col',{staticClass:\"mb-3 pr-1\",attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"bg-light shadow-sm\"},[_c('b-form',{staticClass:\"p-3\"},[_c('b-form-group',{attrs:{\"label\":\"Choose the high tide of interest to you.\",\"label-for\":\"tidalHeight\",\"title\":\"Select from list or enter custom height\"}},[_c('b-form-row',{staticClass:\"mb-2\"},[_c('b-col',{attrs:{\"sm\":\"1\"}},[_c('b-form-radio',{attrs:{\"name\":\"heightOption\",\"value\":'1'},on:{\"input\":_vm.changeHeightOption},model:{value:(_vm.model.heightOption),callback:function ($$v) {_vm.$set(_vm.model, \"heightOption\", $$v)},expression:\"model.heightOption\"}})],1),_c('b-col',{attrs:{\"sm\":\"11\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"prepend\":\"High tide\"}},[_c('b-form-select',{attrs:{\"id\":\"tidalHeight\",\"title\":\"Select a high tide\",\"options\":_vm.tidalHeights,\"required\":_vm.model.heightOption === '1',\"disabled\":_vm.model.heightOption === '2'},on:{\"change\":_vm.changeTidalHeight},model:{value:(_vm.model.tidalHeight),callback:function ($$v) {_vm.$set(_vm.model, \"tidalHeight\", $$v)},expression:\"model.tidalHeight\"}})],1)],1)],1),_c('b-form-row',{staticClass:\"mb-4\"},[_c('b-col',{attrs:{\"sm\":\"1\"}}),_c('b-col',{attrs:{\"sm\":\"11\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"prepend\":\"Additional buffer\",\"append\":\"ft\"}},[_c('b-form-input',{attrs:{\"id\":\"heightBuffer\",\"title\":\"Enter an additional buffer in feet\",\"type\":\"number\",\"min\":\"0\",\"step\":\".1\",\"disabled\":_vm.model.heightOption === '2'},on:{\"change\":_vm.changeHeightBuffer,\"input\":_vm.changeHeightBuffer,\"keydown\":_vm.changeHeightBuffer},model:{value:(_vm.model.heightBuffer),callback:function ($$v) {_vm.$set(_vm.model, \"heightBuffer\", $$v)},expression:\"model.heightBuffer\"}})],1)],1)],1),_c('b-form-row',{staticClass:\"mb-2\"},[_c('b-col',{attrs:{\"sm\":\"1\"}},[_c('b-form-radio',{attrs:{\"name\":\"heightOption\",\"value\":'2'},on:{\"input\":_vm.changeHeightOption},model:{value:(_vm.model.heightOption),callback:function ($$v) {_vm.$set(_vm.model, \"heightOption\", $$v)},expression:\"model.heightOption\"}})],1),_c('b-col',{attrs:{\"sm\":\"11\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"prepend\":\"Custom height\",\"append\":\"ft\"}},[_c('b-form-input',{attrs:{\"id\":\"customHeight\",\"title\":\"Enter a custom height in feet\",\"type\":\"number\",\"min\":\"0\",\"step\":\".1\",\"required\":_vm.model.heightOption === '2',\"disabled\":_vm.model.heightOption === '1'},on:{\"change\":_vm.changeCustomHeight,\"input\":_vm.changeCustomHeight,\"keydown\":_vm.changeCustomHeight},model:{value:(_vm.model.customHeight),callback:function ($$v) {_vm.$set(_vm.model, \"customHeight\", $$v)},expression:\"model.customHeight\"}})],1)],1)],1)],1)],1),_c('b-img',{attrs:{\"src\":require('../assets/images/tidal-variation.png'),\"alt\":\"\",\"fluid\":\"\"}})],1)]),_c('b-col',{staticClass:\"mb-3 pl-1\",attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"d-flex flex-column w-100 h-100\"},[_c('b-card',{staticClass:\"shadow-sm rounded-0 flex-grow-1\",attrs:{\"title\":\"What is tide height and why is it important?\"}},[_c('b-card-text',[_c('p',[_vm._v(\" Sea level fluctuates on a daily (tides) and intermittent (storm surge) basis. Sea-level rise gradually changes the baseline sea level over which tides and storm surge fluctuate. Therefore, a particular high-water event will be the sum of the changes to base sea level, tide height and storm surge. For example, Super Storm Sandy’s storm surge coincided with high tide, resulting in additional flooding that was exacerbated by sea-level rise. \")]),_c('hr'),_c('div',{attrs:{\"id\":\"accordion\",\"role\":\"tablist\"}},[_c('div',[_c('h6',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.whatIsHAT\",modifiers:{\"whatIsHAT\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" What is HAT? \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"whatIsHAT\",\"accordion\":\"accordion\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" Highest Astronomical Tide (HAT) is the elevation of the highest predicted astronomical tide expected to occur over a 20-year National Tidal Datum Epoch. \")]),_c('p',[_vm._v(\" HAT is the most extreme water level, but it will only occur once in a 20-year period. \")])])],1),_c('div',[_c('h6',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.whatIsMHHW\",modifiers:{\"whatIsMHHW\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" What is MHHW \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"whatIsMHHW\",\"accordion\":\"accordion\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" Mean Higher High Water (MHHW) is the average of the higher high-water height of each tidal day observed over the 20-year National Tidal Datum Epoch. \")]),_c('p',[_vm._v(\" MHHW is a lower water height than HAT, but it occurs more frequently (approximately daily). \")])])],1),_c('div',[_c('h6',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.howDoI\",modifiers:{\"howDoI\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" How do I use \"),_c('b',[_vm._v(\"additional buffer\")]),_vm._v(\" and \"),_c('b',[_vm._v(\"custom height\")]),_vm._v(\"? \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"howDoI\",\"accordion\":\"accordion\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" The \\\"additional buffer\\\" and \\\"custom height\\\" options are available for those who have a more detailed use-case in mind and a deeper understanding of the interplay between SLR, tides and storm surge. \")]),_c('p',[_vm._v(\" The \\\"additional buffer\\\" option can be used to enter a custom value in conjunction with a value from the drop-down box. For example, a locality may require that new construction incorporate a “freeboard†component in addition to tidal considerations. \")]),_c('p',[_vm._v(\" The \\\"custom height\\\" option provides the user with the flexibility to substitute different information/local tidal data if it’s available, since the tool only includes tide gauges that were used in the NOAA report. \")])])],1)])])],1)],1)])],1),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.previous}},[_c('b-icon',{attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\"Previous \")],1)],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.next}},[_vm._v(\" Next \"),_c('b-icon',{attrs:{\"icon\":\"arrow-right\"}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<b-row>\r\n\t\t\t<b-col md=\"6\" class=\"mb-3 pr-1\">\r\n\t\t\t\t<div class=\"bg-light shadow-sm\">\r\n\t\t\t\t\t<b-form class=\"p-3\">\r\n\t\t\t\t\t\t<b-form-group label=\"Choose the high tide of interest to you.\"\r\n\t\t\t\t\t\t\tlabel-for=\"tidalHeight\" title=\"Select from list or enter custom height\">\r\n\t\t\t\t\t\t\t<b-form-row class=\"mb-2\">\r\n\t\t\t\t\t\t\t\t<b-col sm=\"1\">\r\n\t\t\t\t\t\t\t\t\t<b-form-radio name=\"heightOption\" v-model=\"model.heightOption\" :value=\"'1'\"\r\n\t\t\t\t\t\t\t\t\t\t@input=\"changeHeightOption\">\r\n\t\t\t\t\t\t\t\t\t</b-form-radio>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col sm=\"11\">\r\n\t\t\t\t\t\t\t\t\t<b-input-group prepend=\"High tide\" class=\"input-group-sm\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select id=\"tidalHeight\" title=\"Select a high tide\"\r\n\t\t\t\t\t\t\t\t\t\t\tv-model=\"model.tidalHeight\" :options=\"tidalHeights\"\r\n\t\t\t\t\t\t\t\t\t\t\t:required=\"model.heightOption === '1'\" :disabled=\"model.heightOption === '2'\"\r\n\t\t\t\t\t\t\t\t\t\t\t@change=\"changeTidalHeight\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</b-input-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-form-row>\r\n\t\t\t\t\t\t\t<b-form-row class=\"mb-4\">\r\n\t\t\t\t\t\t\t\t<b-col sm=\"1\"> </b-col>\r\n\t\t\t\t\t\t\t\t<b-col sm=\"11\">\r\n\t\t\t\t\t\t\t\t\t<b-input-group prepend=\"Additional buffer\" append=\"ft\" class=\"input-group-sm\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"heightBuffer\" title=\"Enter an additional buffer in feet\"\r\n\t\t\t\t\t\t\t\t\t\t\tv-model=\"model.heightBuffer\" type=\"number\" min=\"0\" step=\".1\"\r\n\t\t\t\t\t\t\t\t\t\t\t:disabled=\"model.heightOption === '2'\" @change=\"changeHeightBuffer\"\r\n\t\t\t\t\t\t\t\t\t\t\t@input=\"changeHeightBuffer\" @keydown=\"changeHeightBuffer\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-input-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-form-row>\r\n\t\t\t\t\t\t\t<b-form-row class=\"mb-2\">\r\n\t\t\t\t\t\t\t\t<b-col sm=\"1\">\r\n\t\t\t\t\t\t\t\t\t<b-form-radio name=\"heightOption\" v-model=\"model.heightOption\" :value=\"'2'\"\r\n\t\t\t\t\t\t\t\t\t\t@input=\"changeHeightOption\">\r\n\t\t\t\t\t\t\t\t\t</b-form-radio>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col sm=\"11\">\r\n\t\t\t\t\t\t\t\t\t<b-input-group prepend=\"Custom height\" append=\"ft\" class=\"input-group-sm\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"customHeight\" title=\"Enter a custom height in feet\"\r\n\t\t\t\t\t\t\t\t\t\t\tv-model=\"model.customHeight\" type=\"number\" min=\"0\" step=\".1\"\r\n\t\t\t\t\t\t\t\t\t\t\t:required=\"model.heightOption === '2'\" :disabled=\"model.heightOption === '1'\"\r\n\t\t\t\t\t\t\t\t\t\t\t@change=\"changeCustomHeight\" @input=\"changeCustomHeight\" @keydown=\"changeCustomHeight\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-input-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-form-row>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-form>\r\n\t\t\t\t\t<b-img :src=\"require('../assets/images/tidal-variation.png')\" alt=\"\" fluid></b-img>\r\n\t\t\t\t</div>\r\n\t\t\t</b-col>\r\n\t\t\t<b-col md=\"6\" class=\"mb-3 pl-1\">\r\n\t\t\t\t<div class=\"d-flex flex-column w-100 h-100\">\r\n\t\t\t\t\t<b-card title=\"What is tide height and why is it important?\" class=\"shadow-sm rounded-0 flex-grow-1\">\r\n\t\t\t\t\t\t<b-card-text>\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tSea level fluctuates on a daily (tides) and intermittent (storm\r\n\t\t\t\t\t\t\t\tsurge) basis. Sea-level rise gradually changes the baseline sea\r\n\t\t\t\t\t\t\t\tlevel over which tides and storm surge fluctuate. Therefore, a\r\n\t\t\t\t\t\t\t\tparticular high-water event will be the sum of the changes to base\r\n\t\t\t\t\t\t\t\tsea level, tide height and storm surge. For example, Super Storm\r\n\t\t\t\t\t\t\t\tSandy’s storm surge coincided with high tide, resulting in\r\n\t\t\t\t\t\t\t\tadditional flooding that was exacerbated by sea-level\r\n\t\t\t\t\t\t\t\trise.\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t<hr />\r\n\t\t\t\t\t\t\t<div id=\"accordion\" role=\"tablist\">\r\n\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t<h6 role=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\t<a href=\"#\" @click=\"preventDefault\" v-b-toggle.whatIsHAT>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-right\" class=\"when-closed mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-down\" class=\"when-open mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\tWhat is HAT?\r\n\t\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t\t\t</h6>\r\n\t\t\t\t\t\t\t\t\t<b-collapse id=\"whatIsHAT\" accordion=\"accordion\" role=\"tabpanel\" class=\"p-3 mb-4 info\">\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tHighest Astronomical Tide (HAT) is the elevation of the highest\r\n\t\t\t\t\t\t\t\t\t\t\tpredicted astronomical tide expected to occur over a 20-year\r\n\t\t\t\t\t\t\t\t\t\t\tNational Tidal Datum Epoch.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tHAT is the most extreme water level, but it will only occur once\r\n\t\t\t\t\t\t\t\t\t\t\tin a 20-year period.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t</b-collapse>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t<h6 role=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\t<a href=\"#\" @click=\"preventDefault\" v-b-toggle.whatIsMHHW>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-right\" class=\"when-closed mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-down\" class=\"when-open mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\tWhat is MHHW\r\n\t\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t\t\t</h6>\r\n\t\t\t\t\t\t\t\t\t<b-collapse id=\"whatIsMHHW\" accordion=\"accordion\" role=\"tabpanel\" class=\"p-3 mb-4 info\">\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tMean Higher High Water (MHHW) is the average of the higher high-water height of\r\n\t\t\t\t\t\t\t\t\t\t\teach tidal day observed over the 20-year National Tidal Datum Epoch.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tMHHW is a lower water height than HAT, but it occurs more frequently\r\n\t\t\t\t\t\t\t\t\t\t\t(approximately daily).\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t</b-collapse>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t<h6 role=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\t<a href=\"#\" @click=\"preventDefault\" v-b-toggle.howDoI>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-right\" class=\"when-closed mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-down\" class=\"when-open mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\tHow do I use <b>additional buffer</b> and <b>custom height</b>?\r\n\t\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t\t\t</h6>\r\n\t\t\t\t\t\t\t\t\t<b-collapse id=\"howDoI\" accordion=\"accordion\" role=\"tabpanel\" class=\"p-3 mb-4 info\">\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tThe \"additional buffer\" and \"custom height\" options are available for those who have a more detailed use-case in mind and a deeper understanding of the interplay between SLR, tides and storm surge.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tThe \"additional buffer\" option can be used to enter a custom value in conjunction with a value from the drop-down box. For example, a locality may require that new construction incorporate a “freeboard†component in addition to tidal considerations.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tThe \"custom height\" option provides the user with the flexibility to substitute different information/local tidal data if it’s available, since the tool only includes tide gauges that were used in the NOAA report.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t</b-collapse>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-card-text>\r\n\t\t\t\t\t</b-card>\r\n\t\t\t\t</div>\r\n\t\t\t</b-col>\r\n\t\t</b-row>\r\n\t\t<b-row>\r\n\t\t\t<b-col sm=\"6\">\r\n\t\t\t\t<b-button pill variant=\"success\" @click=\"previous\">\r\n\t\t\t\t\t<b-icon icon=\"arrow-left\"></b-icon>Previous\r\n\t\t\t\t</b-button>\r\n\t\t\t</b-col>\r\n\t\t\t<b-col sm=\"6\" class=\"text-right\">\r\n\t\t\t\t<b-button pill variant=\"success\" @click=\"next\">\r\n\t\t\t\t\tNext\r\n\t\t\t\t\t<b-icon icon=\"arrow-right\"></b-icon>\r\n\t\t\t\t</b-button>\r\n\t\t\t</b-col>\r\n\t\t</b-row>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tname: \"CriticalElevation3\",\r\n\tprops: {\r\n\t\ttideGauge: String,\r\n\t\theightOption: String,\r\n\t\ttidalHeight: String,\r\n\t\theightBuffer: String,\r\n\t\tcustomHeight: String\r\n\t},\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tmodel: {\r\n\t\t\t\theightOption: \"1\",\r\n\t\t\t\ttidalHeight: \"\",\r\n\t\t\t\theightBuffer: null,\r\n\t\t\t\tcustomHeight: null\r\n\t\t\t},\r\n\t\t\ttidalHeights: []\r\n\t\t};\r\n\t},\r\n\tmethods: {\r\n\t\tchangeHeightOption() {\r\n\t\t\tthis.$emit(\"changeHeightOption\", this.model.heightOption);\r\n\t\t},\r\n\t\tchangeTidalHeight() {\r\n\t\t\tthis.$emit(\"changeTidalHeight\", this.model.tidalHeight);\r\n\t\t},\r\n\t\tchangeHeightBuffer() {\r\n\t\t\tthis.$emit(\"changeHeightBuffer\", this.model.heightBuffer);\r\n\t\t},\r\n\t\tchangeCustomHeight() {\r\n\t\t\tthis.$emit(\"changeCustomHeight\", this.model.customHeight);\r\n\t\t},\r\n\t\tnext() {\r\n\t\t\tthis.$router.push({ path: '/critical-elevation/4' });\r\n\t\t},\r\n\t\tprevious() {\r\n\t\t\tthis.$router.push({ path: '/critical-elevation/2' });\r\n\t\t},\r\n\t\tpreventDefault(e) {\r\n\t\t\te.preventDefault();\r\n\t\t}\r\n\t},\r\n\tcreated() {\r\n\t\tif (this.tideGauge) {\r\n\t\t\tthis.tidalHeights = this.$dataUtils.getTidalHeights(this.tideGauge);\r\n\t\t}\r\n\t\tif (this.heightOption) {\r\n\t\t\tthis.model.heightOption = this.heightOption;\r\n\t\t}\r\n\t\tif (this.tidalHeight) {\r\n\t\t\tthis.model.tidalHeight = this.tidalHeight;\r\n\t\t}\r\n\t\tif (this.heightBuffer) {\r\n\t\t\tthis.model.heightBuffer = this.heightBuffer;\r\n\t\t}\r\n\t\tif (this.customHeight) {\r\n\t\t\tthis.model.customHeight = this.customHeight;\r\n\t\t}\r\n\t}\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.collapsed>.when-open,\r\n.not-collapsed>.when-closed {\r\n\tdisplay: none;\r\n}\r\n\r\n.bg-light {\r\n\tbackground-color: #e5f0f8 !important;\r\n}\r\n\r\n.card {\r\n\tborder-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\n\r\n.accordion-title {\r\n\tbackground-color: rgb(225, 243, 248);\r\n}\r\n\r\n.card-text {\r\n\tpadding-bottom: 0 !important;\r\n}\r\n\r\n.info {\r\n\tbackground-color: rgb(225, 243, 248);\r\n}\r\n\r\nhr {\r\n\tmargin-top: 0;\r\n\tmargin-bottom: 1.5rem;\r\n}\r\n\r\nh4,\r\nh6 {\r\n\tfont-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\", \"Arial\", sans-serif;\r\n}\r\n\r\nh4 {\r\n\tpadding-bottom: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation3.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation3.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CriticalElevation3.vue?vue&type=template&id=9affdb3c&scoped=true\"\nimport script from \"./CriticalElevation3.vue?vue&type=script&lang=js\"\nexport * from \"./CriticalElevation3.vue?vue&type=script&lang=js\"\nimport style0 from \"./CriticalElevation3.vue?vue&type=style&index=0&id=9affdb3c&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9affdb3c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-row',[_c('b-col',{staticClass:\"mb-3 pr-1\",attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"border bg-light shadow-sm\"},[_c('b-form',{staticClass:\"p-3\"},[_c('b-form-group',{attrs:{\"label\":\"Choose the storm surge level/recurrence of interest to you.\",\"label-for\":\"surgeLevel\",\"title\":\"Select from list or enter custom level\"}},[_c('b-form-row',{staticClass:\"mb-2\"},[_c('b-col',{attrs:{\"sm\":\"1\"}},[_c('b-form-radio',{attrs:{\"name\":\"levelOption\",\"value\":'1'},on:{\"input\":_vm.changeLevelOption},model:{value:(_vm.model.levelOption),callback:function ($$v) {_vm.$set(_vm.model, \"levelOption\", $$v)},expression:\"model.levelOption\"}})],1),_c('b-col',{attrs:{\"sm\":\"11\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"prepend\":\"Storm surge level\"}},[_c('b-form-select',{attrs:{\"id\":\"surgeLevel\",\"title\":\"Select a storm surge level from the list\",\"options\":_vm.surgeLevels,\"required\":_vm.model.levelOption === '1',\"disabled\":_vm.model.levelOption === '2'},on:{\"change\":_vm.changeSurgeLevel},model:{value:(_vm.model.surgeLevel),callback:function ($$v) {_vm.$set(_vm.model, \"surgeLevel\", $$v)},expression:\"model.surgeLevel\"}})],1)],1)],1),_c('b-form-row',{staticClass:\"mb-4\"},[_c('b-col',{attrs:{\"sm\":\"1\"}}),_c('b-col',{attrs:{\"sm\":\"11\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"prepend\":\"Additional buffer\",\"append\":\"ft\"}},[_c('b-form-input',{attrs:{\"id\":\"levelBuffer\",\"title\":\"Enter an additional buffer in feet\",\"type\":\"number\",\"min\":\"0\",\"step\":\".1\",\"disabled\":_vm.model.levelOption === '2'},on:{\"change\":_vm.changeLevelBuffer,\"input\":_vm.changeLevelBuffer,\"keydown\":_vm.changeLevelBuffer},model:{value:(_vm.model.levelBuffer),callback:function ($$v) {_vm.$set(_vm.model, \"levelBuffer\", $$v)},expression:\"model.levelBuffer\"}})],1)],1)],1),_c('b-form-row',{staticClass:\"mb-2\"},[_c('b-col',{attrs:{\"sm\":\"1\"}},[_c('b-form-radio',{attrs:{\"name\":\"levelOption\",\"value\":'2'},on:{\"input\":_vm.changeLevelOption},model:{value:(_vm.model.levelOption),callback:function ($$v) {_vm.$set(_vm.model, \"levelOption\", $$v)},expression:\"model.levelOption\"}})],1),_c('b-col',{attrs:{\"sm\":\"11\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"prepend\":\"Custom level\",\"append\":\"ft\"}},[_c('b-form-input',{attrs:{\"id\":\"customLevel\",\"title\":\"Enter a custom level in ft\",\"type\":\"number\",\"min\":\"0\",\"step\":\".1\",\"required\":_vm.model.levelOption === '2',\"disabled\":_vm.model.levelOption === '1'},on:{\"change\":_vm.changeCustomLevel,\"input\":_vm.changeCustomLevel,\"keydown\":_vm.changeCustomLevel},model:{value:(_vm.model.customLevel),callback:function ($$v) {_vm.$set(_vm.model, \"customLevel\", $$v)},expression:\"model.customLevel\"}})],1)],1)],1)],1)],1),_c('b-img',{attrs:{\"src\":require('../assets/images/storm-surge.png'),\"alt\":\"\",\"fluid\":\"\"}})],1)]),_c('b-col',{staticClass:\"mb-3 pl-1\",attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"d-flex flex-column w-100 h-100\"},[_c('b-card',{staticClass:\"shadow-sm flex-grow-1 rounded-0\",attrs:{\"title\":\"What is storm surge and why is it important?\"}},[_c('b-card-text',[_c('p',[_vm._v(\" Sea level fluctuates on a daily (tides) and intermittent (storm surge) basis. Sea-level rise gradually changes the baseline sea level over which tides and storm surge fluctuate. Therefore, a particular high-water event will be the sum of the changes to base sea level, tide height and storm surge. More extreme storms occur less frequently. When making your selection, you must decide if you’re interested in examining higher-impact, lower-frequency events or lower-impact, higher-frequency events. Please note that the time periods in parentheses in the available selections represent the average recurrence of the event that would result in the associated storm surge level. Depending on the available length of the tide gauge record, not every recurrence interval will be available for each tide gauge. \")]),_c('hr'),_c('div',{attrs:{\"id\":\"accordion\",\"role\":\"tablist\"}},[_c('div',[_c('h6',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.howDoI\",modifiers:{\"howDoI\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" How do I use \"),_c('b',[_vm._v(\"additional buffer\")]),_vm._v(\" and \"),_c('b',[_vm._v(\"custom level\")]),_vm._v(\"? \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"howDoI\",\"accordion\":\"accordion\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" The “additional buffer†option can be used to enter a custom value in conjunction with a value from the drop-down box. For example, a locality may require that new construction incorporate a “freeboard†component \"),_c('i',[_vm._v(\"in addition to\")]),_vm._v(\" storm surge considerations. \")]),_c('p',[_vm._v(\" Alternatively, “custom level†can allow local storm surge data to be used in lieu of using data from a NOAA tide gauge. \")])])],1)])])],1)],1)])],1),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.previous}},[_c('b-icon',{attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\"Previous \")],1)],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.next}},[_vm._v(\" Next \"),_c('b-icon',{attrs:{\"icon\":\"arrow-right\"}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div>\r\n <b-row>\r\n <b-col md=\"6\" class=\"mb-3 pr-1\">\r\n <div class=\"border bg-light shadow-sm\">\r\n <b-form class=\"p-3\">\r\n <b-form-group\r\n label=\"Choose the storm surge level/recurrence of interest to you.\"\r\n label-for=\"surgeLevel\"\r\n title=\"Select from list or enter custom level\"\r\n >\r\n <b-form-row class=\"mb-2\">\r\n <b-col sm=\"1\">\r\n <b-form-radio\r\n name=\"levelOption\"\r\n v-model=\"model.levelOption\"\r\n :value=\"'1'\"\r\n @input=\"changeLevelOption\"\r\n >\r\n </b-form-radio>\r\n </b-col>\r\n <b-col sm=\"11\">\r\n <b-input-group\r\n prepend=\"Storm surge level\"\r\n class=\"input-group-sm\"\r\n >\r\n <b-form-select\r\n id=\"surgeLevel\"\r\n title=\"Select a storm surge level from the list\"\r\n v-model=\"model.surgeLevel\"\r\n :options=\"surgeLevels\"\r\n :required=\"model.levelOption === '1'\"\r\n :disabled=\"model.levelOption === '2'\"\r\n @change=\"changeSurgeLevel\"\r\n ></b-form-select>\r\n </b-input-group>\r\n </b-col>\r\n </b-form-row>\r\n <b-form-row class=\"mb-4\">\r\n <b-col sm=\"1\"> </b-col>\r\n <b-col sm=\"11\">\r\n <b-input-group\r\n prepend=\"Additional buffer\"\r\n append=\"ft\"\r\n class=\"input-group-sm\"\r\n >\r\n <b-form-input\r\n id=\"levelBuffer\"\r\n title=\"Enter an additional buffer in feet\"\r\n v-model=\"model.levelBuffer\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".1\"\r\n :disabled=\"model.levelOption === '2'\"\r\n @change=\"changeLevelBuffer\"\r\n @input=\"changeLevelBuffer\"\r\n @keydown=\"changeLevelBuffer\"\r\n ></b-form-input>\r\n </b-input-group>\r\n </b-col>\r\n </b-form-row>\r\n <b-form-row class=\"mb-2\">\r\n <b-col sm=\"1\">\r\n <b-form-radio\r\n name=\"levelOption\"\r\n v-model=\"model.levelOption\"\r\n :value=\"'2'\"\r\n @input=\"changeLevelOption\"\r\n >\r\n </b-form-radio>\r\n </b-col>\r\n <b-col sm=\"11\">\r\n <b-input-group\r\n prepend=\"Custom level\"\r\n append=\"ft\"\r\n class=\"input-group-sm\"\r\n >\r\n <b-form-input\r\n id=\"customLevel\"\r\n title=\"Enter a custom level in ft\"\r\n v-model=\"model.customLevel\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".1\"\r\n :required=\"model.levelOption === '2'\"\r\n :disabled=\"model.levelOption === '1'\"\r\n @change=\"changeCustomLevel\"\r\n @input=\"changeCustomLevel\"\r\n @keydown=\"changeCustomLevel\"\r\n ></b-form-input>\r\n </b-input-group>\r\n </b-col>\r\n </b-form-row>\r\n </b-form-group>\r\n </b-form>\r\n <b-img\r\n :src=\"require('../assets/images/storm-surge.png')\"\r\n alt=\"\"\r\n fluid\r\n ></b-img>\r\n </div>\r\n </b-col>\r\n <b-col md=\"6\" class=\"mb-3 pl-1\">\r\n <div class=\"d-flex flex-column w-100 h-100\">\r\n <b-card\r\n title=\"What is storm surge and why is it important?\"\r\n class=\"shadow-sm flex-grow-1 rounded-0\"\r\n >\r\n <b-card-text>\r\n <p>\r\n Sea level fluctuates on a daily (tides) and intermittent (storm\r\n surge) basis. Sea-level rise gradually changes the baseline sea\r\n level over which tides and storm surge fluctuate. Therefore, a\r\n particular high-water event will be the sum of the changes to\r\n base sea level, tide height and storm surge. More extreme storms\r\n occur less frequently. When making your selection, you must\r\n decide if you’re interested in examining higher-impact,\r\n lower-frequency events or lower-impact, higher-frequency events.\r\n Please note that the time periods in parentheses in the\r\n available selections represent the average recurrence of the\r\n event that would result in the associated storm surge level.\r\n Depending on the available length of the tide gauge record, not\r\n every recurrence interval will be available for each tide gauge.\r\n </p>\r\n <hr />\r\n <div id=\"accordion\" role=\"tablist\">\r\n <div>\r\n <h6 role=\"tab\">\r\n <a href=\"#\" v-b-toggle.howDoI @click=\"preventDefault\">\r\n <b-icon\r\n icon=\"chevron-right\"\r\n class=\"when-closed mr-2\"\r\n ></b-icon>\r\n <b-icon\r\n icon=\"chevron-down\"\r\n class=\"when-open mr-2\"\r\n ></b-icon>\r\n How do I use <b>additional buffer</b> and\r\n <b>custom level</b>?\r\n </a>\r\n </h6>\r\n <b-collapse\r\n id=\"howDoI\"\r\n accordion=\"accordion\"\r\n role=\"tabpanel\"\r\n class=\"p-3 mb-4 info\"\r\n >\r\n <p>\r\n The “additional buffer†option can be used to enter a\r\n custom value in conjunction with a value from the\r\n drop-down box. For example, a locality may require that\r\n new construction incorporate a “freeboard†component\r\n <i>in addition to</i> storm surge considerations.\r\n </p>\r\n <p>\r\n Alternatively, “custom level†can allow local storm surge\r\n data to be used in lieu of using data from a NOAA tide\r\n gauge.\r\n </p>\r\n </b-collapse>\r\n </div>\r\n </div>\r\n </b-card-text>\r\n </b-card>\r\n </div>\r\n </b-col>\r\n </b-row>\r\n <b-row>\r\n <b-col sm=\"6\">\r\n <b-button pill variant=\"success\" @click=\"previous\">\r\n <b-icon icon=\"arrow-left\"></b-icon>Previous\r\n </b-button>\r\n </b-col>\r\n <b-col sm=\"6\" class=\"text-right\">\r\n <b-button pill variant=\"success\" @click=\"next\">\r\n Next\r\n <b-icon icon=\"arrow-right\"></b-icon>\r\n </b-button>\r\n </b-col>\r\n </b-row>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"CriticalElevation4\",\r\n props: {\r\n tideGauge: String,\r\n levelOption: String,\r\n surgeLevel: String,\r\n levelBuffer: String,\r\n customLevel: String,\r\n },\r\n data() {\r\n return {\r\n model: {\r\n levelOption: \"1\",\r\n surgeLevel: \"\",\r\n levelBuffer: null,\r\n customLevel: null,\r\n },\r\n surgeLevels: [],\r\n };\r\n },\r\n methods: {\r\n changeLevelOption() {\r\n this.$emit(\"changeLevelOption\", this.model.levelOption);\r\n },\r\n changeSurgeLevel() {\r\n this.$emit(\"changeSurgeLevel\", this.model.surgeLevel);\r\n },\r\n changeLevelBuffer() {\r\n this.$emit(\"changeLevelBuffer\", this.model.levelBuffer);\r\n },\r\n changeCustomLevel() {\r\n this.$emit(\"changeCustomLevel\", this.model.customLevel);\r\n },\r\n next() {\r\n this.$router.push({ path: \"/critical-elevation/5\" });\r\n },\r\n previous() {\r\n this.$router.push({ path: \"/critical-elevation/3\" });\r\n },\r\n preventDefault(e) {\r\n e.preventDefault();\r\n },\r\n },\r\n created() {\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.surgeLevels = this.$dataUtils.getSurgeLevels(this.tideGauge);\r\n }\r\n if (this.levelOption) {\r\n this.model.levelOption = this.levelOption;\r\n }\r\n if (this.surgeLevel) {\r\n this.model.surgeLevel = this.surgeLevel;\r\n }\r\n if (this.levelBuffer) {\r\n this.model.levelBuffer = this.levelBuffer;\r\n }\r\n if (this.customLevel) {\r\n this.model.customLevel = this.customLevel;\r\n }\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.collapsed > .when-open,\r\n.not-collapsed > .when-closed {\r\n display: none;\r\n}\r\n\r\n.bg-light {\r\n background-color: #e5f0f8 !important;\r\n}\r\n\r\n.card {\r\n border-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\n\r\n.accordion-title {\r\n background-color: rgb(225, 243, 248);\r\n}\r\n\r\n.card-text {\r\n padding-bottom: 0 !important;\r\n}\r\n\r\n.info {\r\n background-color: rgb(225, 243, 248);\r\n}\r\n\r\nhr {\r\n margin-top: 0;\r\n margin-bottom: 1.5rem;\r\n}\r\n\r\nh4,\r\nh6 {\r\n font-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n \"Arial\", sans-serif;\r\n}\r\n\r\nh4 {\r\n padding-bottom: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation4.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation4.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CriticalElevation4.vue?vue&type=template&id=30d1b912&scoped=true\"\nimport script from \"./CriticalElevation4.vue?vue&type=script&lang=js\"\nexport * from \"./CriticalElevation4.vue?vue&type=script&lang=js\"\nimport style0 from \"./CriticalElevation4.vue?vue&type=style&index=0&id=30d1b912&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"30d1b912\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pl-3 pr-3\"},[_c('b-row',[_c('b-col',{staticClass:\"shadow-sm mb-3 p-0\",attrs:{\"md\":\"12\"}},[_c('table',{staticClass:\"border w-100\",attrs:{\"visible\":_vm.chartOptions.series.length > 0}},[_c('thead',[_c('tr',[(_vm.slrImpact !== '' && !isNaN(_vm.slrImpact) && _vm.slrImpact >= 0)?_c('th',{staticClass:\"text-center\",attrs:{\"colspan\":\"2\"}},[_vm._v(\" \"+_vm._s(_vm.slrImpact)+\" feet of sea-level rise would bring mean sea level to the Critical Elevation. \")]):_vm._e(),(_vm.slrImpact !== '' && !isNaN(_vm.slrImpact) && _vm.slrImpact < 0)?_c('th',{staticClass:\"text-center\",attrs:{\"colspan\":\"2\"}},[_vm._v(\" The cumulative water height is already greater than the selected Critical Elevation by \"+_vm._s(Math.abs(_vm.slrImpact))+\" ft\"),_c('br'),_vm._v(\"(given the selections for high tide and storm surge). \")]):_vm._e()]),(_vm.slrImpact !== '' && !isNaN(_vm.slrImpact) && _vm.slrImpact >= 0)?_c('tr',[_c('th',{staticClass:\"text-center border-top\",attrs:{\"colspan\":\"2\"}},[_vm._v(\" When is sea-level rise projected* to reach the Critical Elevation? \")])]):_vm._e()]),(_vm.slrImpact !== '' && !isNaN(_vm.slrImpact) && _vm.slrImpact >= 0)?_c('tbody',[_c('tr',[_c('td',{staticClass:\"text-right pr-3 w-50\"},[_vm._v(\"High:\")]),_c('td',{staticClass:\"w-50 border-bottom\"},[_vm._v(\" \"+_vm._s(_vm.slrImpact >= 0 && !isNaN(_vm.slrImpact) ? _vm.getProjectedExceedanceYear(_vm.projectedExceedanceYears.high) : \"> 2150\")+\" \")])]),_c('tr',{staticClass:\"bg-light\"},[_c('td',{staticClass:\"text-right pr-3\"},[_vm._v(\"Intermediate-High:\")]),_c('td',[_vm._v(\" \"+_vm._s(_vm.slrImpact >= 0 && !isNaN(_vm.slrImpact) ? _vm.getProjectedExceedanceYear( _vm.projectedExceedanceYears.intermediateHigh ) : \"> 2150\")+\" \")])]),_c('tr',[_c('td',{staticClass:\"text-right pr-3\"},[_vm._v(\"Intermediate:\")]),_c('td',[_vm._v(\" \"+_vm._s(_vm.slrImpact >= 0 && !isNaN(_vm.slrImpact) ? _vm.getProjectedExceedanceYear( _vm.projectedExceedanceYears.intermediate ) : \"> 2150\")+\" \")])]),_c('tr',{staticClass:\"bg-light\"},[_c('td',{staticClass:\"text-right pr-3\"},[_vm._v(\"Intermediate-Low:\")]),_c('td',[_vm._v(\" \"+_vm._s(_vm.slrImpact >= 0 && !isNaN(_vm.slrImpact) ? _vm.getProjectedExceedanceYear( _vm.projectedExceedanceYears.intermediateLow ) : \"> 2150\")+\" \")])]),_c('tr',[_c('td',{staticClass:\"text-right pr-3\"},[_vm._v(\"Low:\")]),_c('td',[_vm._v(\" \"+_vm._s(_vm.slrImpact >= 0 && !isNaN(_vm.slrImpact) ? _vm.getProjectedExceedanceYear(_vm.projectedExceedanceYears.low) : \"> 2150\")+\" \")])])]):_vm._e(),(_vm.slrImpact !== '' && !isNaN(_vm.slrImpact))?_c('tfoot',{staticClass:\"border-top\"},[_c('tr',[_c('td',{staticClass:\"text-center\",attrs:{\"colspan\":\"2\"}},[_c('small',[_vm._v(\"*Projections are based on current land elevations and do not take into account how the coastline will evolve as the sea level rises or how humans will modify the coastline.\")])])])]):_vm._e()])])],1),_c('b-row',[_c('b-col',{staticClass:\"shadow-sm mb-3 p-0\",attrs:{\"md\":\"12\"}},[_c('b-card',{staticClass:\"border-radius-0\",attrs:{\"no-body\":\"\"}},[_c('b-card-body',[_c('highcharts',{attrs:{\"options\":_vm.chartOptions}})],1)],1)],1)],1),(_vm.chartOptions.series.length > 0)?_c('b-row',{staticClass:\"bg-light shadow-sm mb-3 pt-3 pb-2 pl-4 pr-4\"},[_c('b-form-group',{attrs:{\"label\":\"Show scenarios on graph\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar ariaDescribedby = ref.ariaDescribedby;\nreturn [_c('b-form-checkbox-group',{attrs:{\"options\":_vm.chartScenarios,\"aria-describedby\":ariaDescribedby,\"name\":\"scenarioOptions\",\"size\":\"sm\",\"plain\":\"\"},on:{\"change\":_vm.updateChartScenarios},model:{value:(_vm.model.selectedScenarios),callback:function ($$v) {_vm.$set(_vm.model, \"selectedScenarios\", $$v)},expression:\"model.selectedScenarios\"}}),_c('hr',{staticClass:\"mb-0\"})]}}],null,false,527363186)}),_c('b-form-group',{attrs:{\"label\":\"Show percentiles on graph\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar ariaDescribedby = ref.ariaDescribedby;\nreturn [_c('b-form-checkbox-group',{attrs:{\"options\":_vm.chartPercentiles,\"aria-describedby\":ariaDescribedby,\"name\":\"percentileOptions\",\"size\":\"sm\",\"plain\":\"\"},on:{\"change\":_vm.updateChartPercentiles},model:{value:(_vm.model.selectedPercentiles),callback:function ($$v) {_vm.$set(_vm.model, \"selectedPercentiles\", $$v)},expression:\"model.selectedPercentiles\"}}),_c('hr',{staticClass:\"mb-0\"})]}}],null,false,3814687730)}),_c('p',[_vm._v(\" The median value represents the average sea-level-rise projection generated by models, while the 17th and 83rd percentiles show the range of projections considered \\\"likely.\\\" \")])],1):_vm._e(),_c('b-row',{staticClass:\"bg-light shadow-sm mb-3 pt-3 pb-2 pl-2 pr-2\"},[_c('b-col',{staticClass:\"d-flex flex-column border-right\",attrs:{\"md\":\"3\"}},[_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help1\",modifiers:{\"help1\":true}}],staticClass:\"help-icon\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help1\",\"title\":\"Critical elevation\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Given the characteristics of the site of interest, this may be the lowest point at the site, the average elevation, the elevation of critical infrastructure or contamination, etc. \")]),_c('p',[_vm._v(\" Elevation is based on local mean sea level in the year 2000, commensurate with the projections from the NOAA 2022 report. \")])]),_c('b-form',[_c('b-form-group',{attrs:{\"label\":\"Criticial Elevation\",\"title\":\"Enter the critical elevation in feet or meters\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"append\":\"ft\"}},[_c('b-form-input',{attrs:{\"id\":\"criticalElevationFeet\",\"title\":\"Click on the arrows or enter a number\",\"type\":\"number\",\"min\":\"0\",\"step\":\".1\",\"required\":\"\"},on:{\"input\":_vm.changeCriticalElevationFeet,\"change\":_vm.changeCriticalElevationFeet,\"keydown\":_vm.changeCriticalElevationFeet},model:{value:(_vm.model.criticalElevationFeet),callback:function ($$v) {_vm.$set(_vm.model, \"criticalElevationFeet\", $$v)},expression:\"model.criticalElevationFeet\"}})],1),_c('span',[_vm._v(\"OR\")]),_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"append\":\"meters\"}},[_c('b-form-input',{attrs:{\"id\":\"criticalElevationMeters\",\"title\":\"Click on the arrows or enter a number\",\"type\":\"number\",\"min\":\"0\",\"step\":\".1\",\"required\":\"\"},on:{\"input\":_vm.changeCriticalElevationMeters,\"change\":_vm.changeCriticalElevationMeters,\"keydown\":_vm.changeCriticalElevationMeters},model:{value:(_vm.model.criticalElevationMeters),callback:function ($$v) {_vm.$set(_vm.model, \"criticalElevationMeters\", $$v)},expression:\"model.criticalElevationMeters\"}})],1)],1)],1)],1),_c('b-col',{staticClass:\"d-flex flex-column border-right\",attrs:{\"md\":\"3\"}},[_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help2-1\",modifiers:{\"help2-1\":true}}],staticClass:\"help-icon\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help2-1\",\"title\":\"Region and tide gauge\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" “Regions†refers to EPA regions. Island states and territories and Alaska have been separated out from projections for the contiguous US. \")])]),_c('b-form',[_c('b-form-group',{staticClass:\"mb-2\",attrs:{\"label\":\"Region\",\"label-for\":\"region\"}},[_c('b-form-select',{attrs:{\"id\":\"region\",\"size\":\"sm\",\"options\":_vm.regions},on:{\"change\":_vm.changeRegion},model:{value:(_vm.model.region),callback:function ($$v) {_vm.$set(_vm.model, \"region\", $$v)},expression:\"model.region\"}})],1)],1),_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help2-2\",modifiers:{\"help2-2\":true}}],staticClass:\"help-icon\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help2-2\",\"title\":\"Region and tide gauge\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Selecting a tide gauge will factor in local relative sea level (RSL) trends as opposed to using the global average sea level trend, which, depending on the tide gauge station, can be substantially different from one another. \")]),_c('p',[_vm._v(\" Tide gauge measurements are made with respect to a local fixed reference on land. RSL is a combination of the sea level rise and the local vertical land motion. Changes in RSL, either a rise or fall, have been incorporated into the technical report’s data at 142 long-term water level stations in the United States using a minimum span of 30 years of observations at each location. \")])]),_c('b-form',[_c('b-form-group',{attrs:{\"label\":\"Tide gauge\",\"label-for\":\"tideGauge\"}},[_c('b-form-select',{attrs:{\"id\":\"tideGauge\",\"size\":\"sm\",\"options\":_vm.tideGauges},on:{\"change\":_vm.changeTideGauge},model:{value:(_vm.model.tideGauge),callback:function ($$v) {_vm.$set(_vm.model, \"tideGauge\", $$v)},expression:\"model.tideGauge\"}})],1)],1)],1),_c('b-col',{staticClass:\"d-flex flex-column border-right\",attrs:{\"md\":\"3\"}},[_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help3\",modifiers:{\"help3\":true}}],staticClass:\"help-icon\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help3\",\"title\":\"High tide\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Sea level fluctuates on a daily (tides) and intermittent (storm surge) basis. Sea-level rise gradually changes the baseline sea level over which tides and storm surge fluctuate. Therefore, a particular high-water event will be the sum of the changes to base sea level, tide height and storm surge. For example, Super Storm Sandy’s storm surge coincided with high tide, resulting in additional flooding that was exacerbated by sea-level rise. \")])]),_c('b-form',[_c('b-form-group',{staticClass:\"mb-2\"},[_c('b-form-radio',{staticClass:\"mb-2\",attrs:{\"name\":\"heightOption\",\"value\":'1'},on:{\"input\":_vm.changeHeightOption},model:{value:(_vm.model.heightOption),callback:function ($$v) {_vm.$set(_vm.model, \"heightOption\", $$v)},expression:\"model.heightOption\"}},[_vm._v(\"High tide\")]),_c('b-form-select',{attrs:{\"id\":\"tidalHeight\",\"size\":\"sm\",\"options\":_vm.tidalHeights,\"required\":_vm.model.heightOption === '1',\"disabled\":_vm.model.heightOption === '2'},on:{\"change\":_vm.changeTidalHeight},model:{value:(_vm.model.tidalHeight),callback:function ($$v) {_vm.$set(_vm.model, \"tidalHeight\", $$v)},expression:\"model.tidalHeight\"}})],1),_c('b-form-group',{staticClass:\"mb-3\",attrs:{\"label\":\"Additional buffer\",\"label-for\":\"heightBuffer\"}},[_c('b-form-input',{attrs:{\"id\":\"heightBuffer\",\"size\":\"sm\",\"type\":\"number\",\"min\":\"0\",\"step\":\".01\",\"disabled\":_vm.model.heightOption === '2'},on:{\"change\":_vm.changeHeightBuffer,\"input\":_vm.changeHeightBuffer,\"keydown\":_vm.changeHeightBuffer},model:{value:(_vm.model.heightBuffer),callback:function ($$v) {_vm.$set(_vm.model, \"heightBuffer\", $$v)},expression:\"model.heightBuffer\"}})],1),_c('b-form-group',[_c('b-form-radio',{staticClass:\"mb-2\",attrs:{\"name\":\"heightOption\",\"value\":'2'},on:{\"input\":_vm.changeHeightOption},model:{value:(_vm.model.heightOption),callback:function ($$v) {_vm.$set(_vm.model, \"heightOption\", $$v)},expression:\"model.heightOption\"}},[_vm._v(\"Custom tide height\")]),_c('b-form-input',{attrs:{\"id\":\"customHeight\",\"size\":\"sm\",\"type\":\"number\",\"min\":\"0\",\"step\":\".01\",\"required\":_vm.model.heightOption === '2',\"disabled\":_vm.model.heightOption === '1'},on:{\"change\":_vm.changeCustomHeight,\"input\":_vm.changeCustomHeight,\"keydown\":_vm.changeCustomHeight},model:{value:(_vm.model.customHeight),callback:function ($$v) {_vm.$set(_vm.model, \"customHeight\", $$v)},expression:\"model.customHeight\"}})],1)],1)],1),_c('b-col',{staticClass:\"d-flex flex-column\",attrs:{\"md\":\"3\"}},[_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help4\",modifiers:{\"help4\":true}}],staticClass:\"help-icon\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help4\",\"title\":\"Storm surge level\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Sea level fluctuates on a daily (tides) and intermittent (storm surge) basis. Sea-level rise gradually changes the baseline sea level over which tides and storm surge fluctuate. Therefore, a particular high-water event will be the sum of the changes to base sea level, tide height and storm surge. More extreme storms occur less frequently. When making your selection, you must decide if you’re interested in examining higher-impact, lower-frequency events or lower-impact, higher-frequency events. Please note that the time periods in parentheses in the available selections represent the average recurrence of the event that would result in the associated storm surge level. Depending on the available length of the tide gauge record, not every recurrence interval will be available for each tide gauge. \")])]),_c('b-form',[_c('b-form-group',{staticClass:\"mb-2\"},[_c('b-form-radio',{staticClass:\"mb-2\",attrs:{\"name\":\"levelOption\",\"value\":'1'},on:{\"input\":_vm.changeLevelOption},model:{value:(_vm.model.levelOption),callback:function ($$v) {_vm.$set(_vm.model, \"levelOption\", $$v)},expression:\"model.levelOption\"}},[_vm._v(\"Storm surge level\")]),_c('b-form-select',{attrs:{\"id\":\"surgeLevel\",\"size\":\"sm\",\"options\":_vm.surgeLevels,\"required\":_vm.model.levelOption === '1',\"disabled\":_vm.model.levelOption === '2'},on:{\"change\":_vm.changeSurgeLevel},model:{value:(_vm.model.surgeLevel),callback:function ($$v) {_vm.$set(_vm.model, \"surgeLevel\", $$v)},expression:\"model.surgeLevel\"}})],1),_c('b-form-group',{staticClass:\"mb-3\",attrs:{\"label\":\"Additional buffer\",\"label-for\":\"levelBuffer\"}},[_c('b-form-input',{attrs:{\"id\":\"levelBuffer\",\"size\":\"sm\",\"type\":\"number\",\"min\":\"0\",\"step\":\".01\",\"disabled\":_vm.model.levelOption === '2'},on:{\"change\":_vm.changeLevelBuffer,\"input\":_vm.changeLevelBuffer,\"keydown\":_vm.changeLevelBuffer},model:{value:(_vm.model.levelBuffer),callback:function ($$v) {_vm.$set(_vm.model, \"levelBuffer\", $$v)},expression:\"model.levelBuffer\"}})],1),_c('b-form-group',[_c('b-form-radio',{staticClass:\"mb-2\",attrs:{\"name\":\"levelOption\",\"value\":'2'},on:{\"input\":_vm.changeLevelOption},model:{value:(_vm.model.levelOption),callback:function ($$v) {_vm.$set(_vm.model, \"levelOption\", $$v)},expression:\"model.levelOption\"}},[_vm._v(\"Custom storm surge level\")]),_c('b-form-input',{attrs:{\"id\":\"customLevel\",\"size\":\"sm\",\"type\":\"number\",\"min\":\"0\",\"step\":\".01\",\"required\":_vm.model.levelOption === '2',\"disabled\":_vm.model.levelOption === '1'},on:{\"change\":_vm.changeCustomLevel,\"input\":_vm.changeCustomLevel,\"keydown\":_vm.changeCustomLevel},model:{value:(_vm.model.customLevel),callback:function ($$v) {_vm.$set(_vm.model, \"customLevel\", $$v)},expression:\"model.customLevel\"}})],1)],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.previous}},[_c('b-icon',{attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\"Previous \")],1)],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"md\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"outline-success\"},on:{\"click\":_vm.reset}},[_c('b-icon',{attrs:{\"icon\":\"arrow-counterclockwise\"}}),_vm._v(\"Reset \")],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div class=\"pl-3 pr-3\">\r\n <!-- results table -->\r\n <b-row>\r\n <b-col md=\"12\" class=\"shadow-sm mb-3 p-0\">\r\n <table class=\"border w-100\" :visible=\"chartOptions.series.length > 0\">\r\n <thead>\r\n <tr>\r\n <th\r\n class=\"text-center\"\r\n colspan=\"2\"\r\n v-if=\"slrImpact !== '' && !isNaN(slrImpact) && slrImpact >= 0\"\r\n >\r\n {{ slrImpact }} feet of sea-level rise would bring mean sea\r\n level to the Critical Elevation.\r\n </th>\r\n <th\r\n class=\"text-center\"\r\n colspan=\"2\"\r\n v-if=\"slrImpact !== '' && !isNaN(slrImpact) && slrImpact < 0\"\r\n >\r\n The cumulative water height is already greater than the selected\r\n Critical Elevation by {{ Math.abs(slrImpact) }} ft<br />(given\r\n the selections for high tide and storm surge).\r\n </th>\r\n </tr>\r\n <tr v-if=\"slrImpact !== '' && !isNaN(slrImpact) && slrImpact >= 0\">\r\n <th class=\"text-center border-top\" colspan=\"2\">\r\n When is sea-level rise projected* to reach the Critical\r\n Elevation?\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody v-if=\"slrImpact !== '' && !isNaN(slrImpact) && slrImpact >= 0\">\r\n <tr>\r\n <td class=\"text-right pr-3 w-50\">High:</td>\r\n <td class=\"w-50 border-bottom\">\r\n {{\r\n slrImpact >= 0 && !isNaN(slrImpact)\r\n ? getProjectedExceedanceYear(projectedExceedanceYears.high)\r\n : \"> 2150\"\r\n }}\r\n </td>\r\n </tr>\r\n <tr class=\"bg-light\">\r\n <td class=\"text-right pr-3\">Intermediate-High:</td>\r\n <td>\r\n {{\r\n slrImpact >= 0 && !isNaN(slrImpact)\r\n ? getProjectedExceedanceYear(\r\n projectedExceedanceYears.intermediateHigh\r\n )\r\n : \"> 2150\"\r\n }}\r\n </td>\r\n </tr>\r\n <tr>\r\n <td class=\"text-right pr-3\">Intermediate:</td>\r\n <td>\r\n {{\r\n slrImpact >= 0 && !isNaN(slrImpact)\r\n ? getProjectedExceedanceYear(\r\n projectedExceedanceYears.intermediate\r\n )\r\n : \"> 2150\"\r\n }}\r\n </td>\r\n </tr>\r\n <tr class=\"bg-light\">\r\n <td class=\"text-right pr-3\">Intermediate-Low:</td>\r\n <td>\r\n {{\r\n slrImpact >= 0 && !isNaN(slrImpact)\r\n ? getProjectedExceedanceYear(\r\n projectedExceedanceYears.intermediateLow\r\n )\r\n : \"> 2150\"\r\n }}\r\n </td>\r\n </tr>\r\n <tr>\r\n <td class=\"text-right pr-3\">Low:</td>\r\n <td>\r\n {{\r\n slrImpact >= 0 && !isNaN(slrImpact)\r\n ? getProjectedExceedanceYear(projectedExceedanceYears.low)\r\n : \"> 2150\"\r\n }}\r\n </td>\r\n </tr>\r\n </tbody>\r\n <tfoot\r\n class=\"border-top\"\r\n v-if=\"slrImpact !== '' && !isNaN(slrImpact)\"\r\n >\r\n <tr>\r\n <td class=\"text-center\" colspan=\"2\">\r\n <small\r\n >*Projections are based on current land elevations and do not\r\n take into account how the coastline will evolve as the sea\r\n level rises or how humans will modify the coastline.</small\r\n >\r\n </td>\r\n </tr>\r\n </tfoot>\r\n </table>\r\n </b-col>\r\n </b-row>\r\n\r\n <b-row>\r\n <b-col md=\"12\" class=\"shadow-sm mb-3 p-0\">\r\n <b-card no-body class=\"border-radius-0\">\r\n <b-card-body>\r\n <highcharts :options=\"chartOptions\"></highcharts>\r\n </b-card-body>\r\n </b-card>\r\n </b-col>\r\n </b-row>\r\n\r\n <!-- scenario/percentile toggle -->\r\n <b-row\r\n class=\"bg-light shadow-sm mb-3 pt-3 pb-2 pl-4 pr-4\"\r\n v-if=\"chartOptions.series.length > 0\"\r\n >\r\n <b-form-group\r\n label=\"Show scenarios on graph\"\r\n v-slot=\"{ ariaDescribedby }\"\r\n >\r\n <b-form-checkbox-group\r\n v-model=\"model.selectedScenarios\"\r\n :options=\"chartScenarios\"\r\n :aria-describedby=\"ariaDescribedby\"\r\n name=\"scenarioOptions\"\r\n size=\"sm\"\r\n plain\r\n @change=\"updateChartScenarios\"\r\n ></b-form-checkbox-group>\r\n <hr class=\"mb-0\" />\r\n </b-form-group>\r\n <b-form-group\r\n label=\"Show percentiles on graph\"\r\n v-slot=\"{ ariaDescribedby }\"\r\n >\r\n <b-form-checkbox-group\r\n v-model=\"model.selectedPercentiles\"\r\n :options=\"chartPercentiles\"\r\n :aria-describedby=\"ariaDescribedby\"\r\n name=\"percentileOptions\"\r\n size=\"sm\"\r\n plain\r\n @change=\"updateChartPercentiles\"\r\n ></b-form-checkbox-group>\r\n <hr class=\"mb-0\" />\r\n </b-form-group>\r\n <p>\r\n The median value represents the average sea-level-rise projection\r\n generated by models, while the 17th and 83rd percentiles show the range\r\n of projections considered \"likely.\"\r\n </p>\r\n </b-row>\r\n\r\n <!-- selection form -->\r\n <b-row class=\"bg-light shadow-sm mb-3 pt-3 pb-2 pl-2 pr-2\">\r\n <b-col md=\"3\" class=\"d-flex flex-column border-right\">\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help1\r\n class=\"help-icon\"\r\n ></b-icon>\r\n <b-modal\r\n id=\"help1\"\r\n title=\"Critical elevation\"\r\n title-tag=\"h6\"\r\n hide-footer\r\n >\r\n <p>\r\n Given the characteristics of the site of interest, this may be the\r\n lowest point at the site, the average elevation, the elevation of\r\n critical infrastructure or contamination, etc.\r\n </p>\r\n <p>\r\n Elevation is based on local mean sea level in the year 2000,\r\n commensurate with the projections from the NOAA 2022 report.\r\n </p>\r\n </b-modal>\r\n <b-form>\r\n <b-form-group\r\n label=\"Criticial Elevation\"\r\n title=\"Enter the critical elevation in feet or meters\"\r\n >\r\n <b-input-group append=\"ft\" class=\"input-group-sm\">\r\n <b-form-input\r\n id=\"criticalElevationFeet\"\r\n title=\"Click on the arrows or enter a number\"\r\n v-model=\"model.criticalElevationFeet\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".1\"\r\n required\r\n @input=\"changeCriticalElevationFeet\"\r\n @change=\"changeCriticalElevationFeet\"\r\n @keydown=\"changeCriticalElevationFeet\"\r\n ></b-form-input>\r\n </b-input-group>\r\n <span>OR</span>\r\n <b-input-group append=\"meters\" class=\"input-group-sm\">\r\n <b-form-input\r\n id=\"criticalElevationMeters\"\r\n title=\"Click on the arrows or enter a number\"\r\n v-model=\"model.criticalElevationMeters\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".1\"\r\n required\r\n @input=\"changeCriticalElevationMeters\"\r\n @change=\"changeCriticalElevationMeters\"\r\n @keydown=\"changeCriticalElevationMeters\"\r\n ></b-form-input>\r\n </b-input-group>\r\n </b-form-group>\r\n </b-form>\r\n </b-col>\r\n <b-col md=\"3\" class=\"d-flex flex-column border-right\">\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help2-1\r\n class=\"help-icon\"\r\n ></b-icon>\r\n <b-modal\r\n id=\"help2-1\"\r\n title=\"Region and tide gauge\"\r\n title-tag=\"h6\"\r\n hide-footer\r\n >\r\n <p>\r\n “Regions†refers to EPA regions. Island states and territories and\r\n Alaska have been separated out from projections for the contiguous\r\n US.\r\n </p>\r\n </b-modal>\r\n <b-form>\r\n <b-form-group label=\"Region\" label-for=\"region\" class=\"mb-2\">\r\n <b-form-select\r\n id=\"region\"\r\n size=\"sm\"\r\n v-model=\"model.region\"\r\n :options=\"regions\"\r\n @change=\"changeRegion\"\r\n ></b-form-select>\r\n </b-form-group>\r\n </b-form>\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help2-2\r\n class=\"help-icon\"\r\n ></b-icon>\r\n <b-modal\r\n id=\"help2-2\"\r\n title=\"Region and tide gauge\"\r\n title-tag=\"h6\"\r\n hide-footer\r\n >\r\n <p>\r\n Selecting a tide gauge will factor in local relative sea level (RSL)\r\n trends as opposed to using the global average sea level trend,\r\n which, depending on the tide gauge station, can be substantially\r\n different from one another.\r\n </p>\r\n <p>\r\n Tide gauge measurements are made with respect to a local fixed\r\n reference on land. RSL is a combination of the sea level rise and\r\n the local vertical land motion. Changes in RSL, either a rise or\r\n fall, have been incorporated into the technical report’s data at 142\r\n long-term water level stations in the United States using a minimum\r\n span of 30 years of observations at each location.\r\n </p>\r\n </b-modal>\r\n <b-form>\r\n <b-form-group label=\"Tide gauge\" label-for=\"tideGauge\">\r\n <b-form-select\r\n id=\"tideGauge\"\r\n size=\"sm\"\r\n v-model=\"model.tideGauge\"\r\n :options=\"tideGauges\"\r\n @change=\"changeTideGauge\"\r\n ></b-form-select>\r\n </b-form-group>\r\n </b-form>\r\n </b-col>\r\n <b-col md=\"3\" class=\"d-flex flex-column border-right\">\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help3\r\n class=\"help-icon\"\r\n ></b-icon>\r\n <b-modal id=\"help3\" title=\"High tide\" title-tag=\"h6\" hide-footer>\r\n <p>\r\n Sea level fluctuates on a daily (tides) and intermittent (storm\r\n surge) basis. Sea-level rise gradually changes the baseline sea\r\n level over which tides and storm surge fluctuate. Therefore, a\r\n particular high-water event will be the sum of the changes to base\r\n sea level, tide height and storm surge. For example, Super Storm\r\n Sandy’s storm surge coincided with high tide, resulting in\r\n additional flooding that was exacerbated by sea-level rise.\r\n </p>\r\n </b-modal>\r\n <b-form>\r\n <b-form-group class=\"mb-2\">\r\n <b-form-radio\r\n name=\"heightOption\"\r\n v-model=\"model.heightOption\"\r\n :value=\"'1'\"\r\n class=\"mb-2\"\r\n @input=\"changeHeightOption\"\r\n >High tide</b-form-radio\r\n >\r\n <b-form-select\r\n id=\"tidalHeight\"\r\n size=\"sm\"\r\n v-model=\"model.tidalHeight\"\r\n :options=\"tidalHeights\"\r\n :required=\"model.heightOption === '1'\"\r\n :disabled=\"model.heightOption === '2'\"\r\n @change=\"changeTidalHeight\"\r\n ></b-form-select>\r\n </b-form-group>\r\n <b-form-group\r\n label=\"Additional buffer\"\r\n label-for=\"heightBuffer\"\r\n class=\"mb-3\"\r\n >\r\n <b-form-input\r\n id=\"heightBuffer\"\r\n size=\"sm\"\r\n v-model=\"model.heightBuffer\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".01\"\r\n :disabled=\"model.heightOption === '2'\"\r\n @change=\"changeHeightBuffer\"\r\n @input=\"changeHeightBuffer\"\r\n @keydown=\"changeHeightBuffer\"\r\n ></b-form-input>\r\n </b-form-group>\r\n <b-form-group>\r\n <b-form-radio\r\n name=\"heightOption\"\r\n v-model=\"model.heightOption\"\r\n :value=\"'2'\"\r\n class=\"mb-2\"\r\n @input=\"changeHeightOption\"\r\n >Custom tide height</b-form-radio\r\n >\r\n <b-form-input\r\n id=\"customHeight\"\r\n size=\"sm\"\r\n v-model=\"model.customHeight\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".01\"\r\n :required=\"model.heightOption === '2'\"\r\n :disabled=\"model.heightOption === '1'\"\r\n @change=\"changeCustomHeight\"\r\n @input=\"changeCustomHeight\"\r\n @keydown=\"changeCustomHeight\"\r\n ></b-form-input>\r\n </b-form-group>\r\n </b-form>\r\n </b-col>\r\n <b-col md=\"3\" class=\"d-flex flex-column\">\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help4\r\n class=\"help-icon\"\r\n ></b-icon>\r\n <b-modal\r\n id=\"help4\"\r\n title=\"Storm surge level\"\r\n title-tag=\"h6\"\r\n hide-footer\r\n >\r\n <p>\r\n Sea level fluctuates on a daily (tides) and intermittent (storm\r\n surge) basis. Sea-level rise gradually changes the baseline sea\r\n level over which tides and storm surge fluctuate. Therefore, a\r\n particular high-water event will be the sum of the changes to base\r\n sea level, tide height and storm surge. More extreme storms occur\r\n less frequently. When making your selection, you must decide if\r\n you’re interested in examining higher-impact, lower-frequency events\r\n or lower-impact, higher-frequency events. Please note that the time\r\n periods in parentheses in the available selections represent the\r\n average recurrence of the event that would result in the associated\r\n storm surge level. Depending on the available length of the tide\r\n gauge record, not every recurrence interval will be available for\r\n each tide gauge.\r\n </p>\r\n </b-modal>\r\n <b-form>\r\n <b-form-group class=\"mb-2\">\r\n <b-form-radio\r\n name=\"levelOption\"\r\n v-model=\"model.levelOption\"\r\n :value=\"'1'\"\r\n class=\"mb-2\"\r\n @input=\"changeLevelOption\"\r\n >Storm surge level</b-form-radio\r\n >\r\n <b-form-select\r\n id=\"surgeLevel\"\r\n size=\"sm\"\r\n v-model=\"model.surgeLevel\"\r\n :options=\"surgeLevels\"\r\n :required=\"model.levelOption === '1'\"\r\n :disabled=\"model.levelOption === '2'\"\r\n @change=\"changeSurgeLevel\"\r\n ></b-form-select>\r\n </b-form-group>\r\n <b-form-group\r\n label=\"Additional buffer\"\r\n label-for=\"levelBuffer\"\r\n class=\"mb-3\"\r\n >\r\n <b-form-input\r\n id=\"levelBuffer\"\r\n size=\"sm\"\r\n v-model=\"model.levelBuffer\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".01\"\r\n :disabled=\"model.levelOption === '2'\"\r\n @change=\"changeLevelBuffer\"\r\n @input=\"changeLevelBuffer\"\r\n @keydown=\"changeLevelBuffer\"\r\n ></b-form-input>\r\n </b-form-group>\r\n <b-form-group>\r\n <b-form-radio\r\n name=\"levelOption\"\r\n v-model=\"model.levelOption\"\r\n :value=\"'2'\"\r\n class=\"mb-2\"\r\n @input=\"changeLevelOption\"\r\n >Custom storm surge level</b-form-radio\r\n >\r\n <b-form-input\r\n id=\"customLevel\"\r\n size=\"sm\"\r\n v-model=\"model.customLevel\"\r\n type=\"number\"\r\n min=\"0\"\r\n step=\".01\"\r\n :required=\"model.levelOption === '2'\"\r\n :disabled=\"model.levelOption === '1'\"\r\n @change=\"changeCustomLevel\"\r\n @input=\"changeCustomLevel\"\r\n @keydown=\"changeCustomLevel\"\r\n ></b-form-input>\r\n </b-form-group>\r\n </b-form>\r\n </b-col>\r\n </b-row>\r\n\r\n <!-- previous/reset buttons -->\r\n <b-row>\r\n <b-col sm=\"6\">\r\n <b-button pill variant=\"success\" @click=\"previous\">\r\n <b-icon icon=\"arrow-left\"></b-icon>Previous\r\n </b-button>\r\n </b-col>\r\n <b-col md=\"6\" class=\"text-right\">\r\n <b-button pill variant=\"outline-success\" @click=\"reset\">\r\n <b-icon icon=\"arrow-counterclockwise\"></b-icon>Reset\r\n </b-button>\r\n </b-col>\r\n </b-row>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport HighCharts from \"highcharts\";\r\nimport exporting from \"highcharts/modules/exporting\";\r\n\r\nexporting(HighCharts);\r\n\r\nexport default {\r\n name: \"CriticalElevation5\",\r\n props: {\r\n criticalElevation: String,\r\n region: String,\r\n tideGauge: String,\r\n heightOption: String,\r\n tidalHeight: String,\r\n heightBuffer: String,\r\n customHeight: String,\r\n levelOption: String,\r\n surgeLevel: String,\r\n levelBuffer: String,\r\n customLevel: String,\r\n },\r\n data() {\r\n return {\r\n model: {\r\n criticalElevationFeet: null,\r\n criticalElevationMeters: null,\r\n region: \"\",\r\n tideGauge: \"\",\r\n heightOption: \"1\",\r\n tidalHeight: \"\",\r\n heightBuffer: null,\r\n customHeight: null,\r\n levelOption: \"1\",\r\n surgeLevel: \"\",\r\n levelBuffer: null,\r\n customLevel: null,\r\n selectedScenarios: [],\r\n selectedPercentiles: [\r\n \"Low_Median,Intermediate-Low_Median,Intermediate_Median,Intermediate-High_Median,High_Median\",\r\n ],\r\n },\r\n regions: [],\r\n tideGauges: [],\r\n tidalHeights: [],\r\n surgeLevels: [],\r\n tideGaugeName: \"\",\r\n chartOptions: {\r\n chart: {\r\n height: 500,\r\n style: {\r\n fontFamily:\r\n '\"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\", \"Arial\", sans-serif',\r\n },\r\n type: \"line\",\r\n },\r\n exporting: {\r\n enabled: true,\r\n filename: \"epa_slr_projections\",\r\n buttons: {\r\n contextButton: {\r\n menuItems: [\r\n \"printChart\",\r\n \"separator\",\r\n \"downloadPNG\",\r\n \"downloadJPEG\",\r\n \"downloadPDF\",\r\n \"downloadSVG\",\r\n ],\r\n },\r\n },\r\n chartOptions: {\r\n chart: {\r\n width: 920,\r\n },\r\n },\r\n },\r\n legend: {\r\n align: \"right\",\r\n layout: \"vertical\",\r\n verticalAlign: \"middle\",\r\n },\r\n plotOptions: {\r\n series: {\r\n fillOpacity: 0.1,\r\n marker: {\r\n enabled: false,\r\n },\r\n tooltip: {\r\n valueDecimals: 2,\r\n valueSuffix: \" ft\",\r\n },\r\n },\r\n },\r\n series: [],\r\n subtitle: {\r\n text: \"\",\r\n style: {\r\n fontSize: \"1rem\",\r\n color: \"#333333\",\r\n },\r\n },\r\n title: {\r\n text:\r\n \"There is currently no data to display.<br />Please make selections from the form below.\",\r\n style: {\r\n fontSize: \"1.25rem\",\r\n },\r\n },\r\n xAxis: {\r\n categories: [],\r\n labels: {\r\n autoRotation: false,\r\n style: {\r\n fontSize: \"0.75rem\",\r\n },\r\n },\r\n },\r\n yAxis: {\r\n title: {\r\n text: \"\",\r\n style: {\r\n fontSize: \"1rem\",\r\n },\r\n },\r\n labels: {\r\n style: {\r\n fontSize: \"0.75rem\",\r\n },\r\n },\r\n },\r\n },\r\n chartScenarios: [\r\n {\r\n text: \"Low\",\r\n value: \"Low_17th_Percentile,Low_Median,Low_83rd_Percentile\",\r\n },\r\n {\r\n text: \"Intermediate-Low\",\r\n value:\r\n \"Intermediate-Low_17th_Percentile,Intermediate-Low_Median,Intermediate-Low_83rd_Percentile\",\r\n },\r\n {\r\n text: \"Intermediate\",\r\n value:\r\n \"Intermediate_17th_Percentile,Intermediate_Median,Intermediate_83rd_Percentile\",\r\n },\r\n {\r\n text: \"Intermediate-High\",\r\n value:\r\n \"Intermediate-High_17th_Percentile,Intermediate-High_Median,Intermediate-High_83rd_Percentile\",\r\n },\r\n {\r\n text: \"High\",\r\n value: \"High_17th_Percentile,High_Median,High_83rd_Percentile\",\r\n },\r\n ],\r\n chartPercentiles: [\r\n {\r\n text: \"17th Percentile\",\r\n value:\r\n \"Low_17th_Percentile,Intermediate-Low_17th_Percentile,Intermediate_17th_Percentile,Intermediate-High_17th_Percentile,High_17th_Percentile\",\r\n },\r\n {\r\n text: \"Median\",\r\n value:\r\n \"Low_Median,Intermediate-Low_Median,Intermediate_Median,Intermediate-High_Median,High_Median\",\r\n },\r\n {\r\n text: \"83rd Percentile\",\r\n value:\r\n \"Low_83rd_Percentile,Intermediate-Low_83rd_Percentile,Intermediate_83rd_Percentile,Intermediate-High_83rd_Percentile,High_83rd_Percentile\",\r\n },\r\n ],\r\n projectedExceedanceYears: {\r\n high: \"\",\r\n intermediateHigh: \"\",\r\n intermediate: \"\",\r\n intermediateLow: \"\",\r\n low: \"\",\r\n },\r\n slrImpact: \"\",\r\n };\r\n },\r\n methods: {\r\n getProjectedExceedanceYear(year) {\r\n let result = year;\r\n if (isNaN(result)) {\r\n result = \"> 2150\";\r\n }\r\n return result;\r\n },\r\n getTideGaugeName() {\r\n this.tideGaugeName === \"\";\r\n if (this.model.tideGauge !== \"\") {\r\n const targetGauge = this.tideGauges.find((tg) => {\r\n return tg.value === this.model.tideGauge;\r\n });\r\n if (targetGauge) {\r\n this.tideGaugeName = targetGauge.text;\r\n }\r\n }\r\n },\r\n updateSLRImpact() {\r\n /* console.log(\"criticalElevationFeet\", this.model.criticalElevationFeet);\r\n console.log(\"tideGauge\", this.model.tideGauge);\r\n console.log(\"tidalHeight\", this.model.tidalHeight);\r\n console.log(\"customHeight\", this.model.customHeight);\r\n console.log(\"surgeLevel\", this.model.surgeLevel);\r\n console.log(\"customLevel\", this.model.customLevel); */\r\n\r\n this.slrImpact = \"\";\r\n if (\r\n this.model.criticalElevationFeet !== null &&\r\n this.model.tideGauge !== \"\" &&\r\n (this.model.tidalHeight !== \"\" || this.model.customHeight !== null) &&\r\n (this.model.surgeLevel !== \"\" || this.model.customLevel !== null)\r\n ) {\r\n let th = null;\r\n if (this.model.heightOption === \"1\") {\r\n th = parseFloat(this.model.tidalHeight);\r\n if (this.model.heightBuffer !== null) {\r\n th += parseFloat(this.model.heightBuffer);\r\n }\r\n } else {\r\n th = this.model.customHeight;\r\n }\r\n let sl = null;\r\n if (this.model.levelOption === \"1\") {\r\n sl = parseFloat(this.model.surgeLevel);\r\n if (this.model.levelBuffer !== null) {\r\n sl += parseFloat(this.model.levelBuffer);\r\n }\r\n } else {\r\n sl = this.model.customLevel;\r\n }\r\n this.slrImpact = this.$calcUtils\r\n .getSeaLevelRiseImpactSite(this.model.criticalElevationFeet, th, sl)\r\n .toFixed(2);\r\n }\r\n },\r\n updateChart() {\r\n let series = [];\r\n let categories = [];\r\n if (\r\n this.model.criticalElevationFeet !== null &&\r\n this.model.tideGauge !== \"\" &&\r\n (this.model.tidalHeight !== \"\" || this.model.customHeight !== null) &&\r\n (this.model.surgeLevel !== \"\" || this.model.customLevel !== null)\r\n ) {\r\n let th = null;\r\n if (this.model.heightOption === \"1\") {\r\n th = parseFloat(this.model.tidalHeight);\r\n if (this.model.heightBuffer !== null) {\r\n th += parseFloat(this.model.heightBuffer);\r\n }\r\n } else {\r\n th = parseFloat(this.model.customHeight);\r\n }\r\n let sl = null;\r\n if (this.model.levelOption === \"1\") {\r\n sl = parseFloat(this.model.surgeLevel);\r\n if (this.model.levelBuffer !== null) {\r\n sl += parseFloat(this.model.levelBuffer);\r\n }\r\n } else {\r\n sl = parseFloat(this.model.customLevel);\r\n }\r\n categories = this.$calcUtils.getSLRYears();\r\n series = this.$calcUtils.getSLRProjectionsSuperimposedTidalRangeStormSurge(\r\n this.model.criticalElevationFeet,\r\n this.model.tideGauge,\r\n th,\r\n sl\r\n );\r\n this.projectedExceedanceYears = this.$calcUtils.getProjectedExceedanceYears(\r\n this.model.criticalElevationFeet,\r\n this.model.tideGauge,\r\n th,\r\n sl\r\n );\r\n }\r\n this.chartOptions.xAxis.categories = categories;\r\n this.chartOptions.series = series;\r\n if (series.length === 0) {\r\n this.chartOptions.title.text =\r\n \"There is currently no data to display.<br />Please make selections from the form below.\";\r\n this.chartOptions.subtitle.text = \"\";\r\n this.chartOptions.yAxis.title.text = \"\";\r\n } else {\r\n this.chartOptions.title.text = this.tideGaugeName;\r\n this.chartOptions.subtitle.text =\r\n \"Sea-level-rise Projections Superimposed on Selected High Tide and Storm Surge Events\";\r\n this.chartOptions.yAxis.title.text =\r\n \"Water Height above Local Mean Sea Level (feet)\";\r\n if (this.model.selectedPercentiles.length > 0) {\r\n this.updateChartPercentiles(this.model.selectedPercentiles);\r\n } else {\r\n this.updateChartScenarios(this.model.selectedScenarios);\r\n }\r\n }\r\n },\r\n updateChartScenarios(e) {\r\n this.model.selectedPercentiles = [];\r\n this.updateChartSeriesVisibility(e);\r\n },\r\n updateChartPercentiles(e) {\r\n this.model.selectedScenarios = [];\r\n this.updateChartSeriesVisibility(e);\r\n },\r\n updateChartSeriesVisibility(selections) {\r\n const chartOptions = this.chartOptions;\r\n chartOptions.series.forEach((series) => {\r\n if (\r\n series.name !== \"Storm Surge Component\" &&\r\n series.name !== \"Tide Component\" &&\r\n series.name !== \"Critical Elevation\"\r\n ) {\r\n series.visible = false;\r\n }\r\n });\r\n selections.forEach((selection) => {\r\n const seriesToShow = selection.split(\",\");\r\n seriesToShow.forEach((seriesId) => {\r\n const series = chartOptions.series.find((s) => {\r\n return s.id === seriesId;\r\n });\r\n if (series) {\r\n series.visible = true;\r\n }\r\n });\r\n });\r\n },\r\n changeCriticalElevationFeet(e) {\r\n let feet = e.key ? e.key : e;\r\n if (isNaN(feet)) {\r\n this.model.criticalElevationFeet = null;\r\n this.model.criticalElevationMeters = null;\r\n this.$emit(\"changeCriticalElevation\", null);\r\n } else {\r\n let meters = (feet / 3.28084).toFixed(1);\r\n this.model.criticalElevationMeters = meters;\r\n this.$emit(\"changeCriticalElevation\", feet);\r\n }\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeCriticalElevationMeters(e) {\r\n let meters = e.key ? e.key : e;\r\n if (meters === \"\") {\r\n meters = null;\r\n this.model.criticalElevationMeters = meters;\r\n this.model.criticalElevationFeet = null;\r\n this.$emit(\"changeCriticalElevation\", null);\r\n } else {\r\n let feet = (e.target.value * 3.28084).toFixed(1);\r\n this.model.criticalElevationFeet = feet;\r\n this.$emit(\"changeCriticalElevation\", feet);\r\n }\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeRegion(e) {\r\n this.$emit(\"changeRegion\", e);\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n this.model.tideGauge = \"\";\r\n this.tideGaugeName = \"\";\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n this.model.tidalHeight = \"\";\r\n this.$emit(\"changeTidalHeight\", this.model.tidalHeight);\r\n this.model.surgeLevel = \"\";\r\n this.$emit(\"changeSurgeLevel\", this.model.surgeLevel);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeTideGauge(e) {\r\n this.$emit(\"changeTideGauge\", e);\r\n this.tidalHeights = this.$dataUtils.getTidalHeights(this.model.tideGauge);\r\n this.surgeLevels = this.$dataUtils.getSurgeLevels(this.model.tideGauge);\r\n this.getTideGaugeName();\r\n this.model.tidalHeight = \"\";\r\n this.$emit(\"changeTidalHeight\", this.model.tidalHeight);\r\n this.model.surgeLevel = \"\";\r\n this.$emit(\"changeSurgeLevel\", this.model.surgeLevel);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeHeightOption(e) {\r\n this.$emit(\"changeHeightOption\", e.target.value);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeTidalHeight(e) {\r\n this.$emit(\"changeTidalHeight\", e);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeHeightBuffer(e) {\r\n var buffer = e.key ? e.key : e;\r\n if (buffer === \"\") {\r\n buffer = null;\r\n this.model.heightBuffer = buffer;\r\n }\r\n this.$emit(\"changeHeightBuffer\", buffer);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeCustomHeight(e) {\r\n var height = e.key ? e.key : e;\r\n if (height === \"\") {\r\n height = null;\r\n this.model.customHeight = height;\r\n }\r\n this.$emit(\"changeCustomHeight\", height);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeLevelOption(e) {\r\n this.$emit(\"changeLevelOption\", e);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeSurgeLevel(e) {\r\n this.$emit(\"changeSurgeLevel\", e);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeLevelBuffer(e) {\r\n let buffer = e.key ? e.key : e;\r\n if (buffer === \"\") {\r\n buffer = null;\r\n this.model.levelBuffer = buffer;\r\n }\r\n this.$emit(\"changeLevelBuffer\", buffer);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n changeCustomLevel(e) {\r\n let level = e.key ? e.key : e;\r\n if (level === \"\") {\r\n level = null;\r\n this.model.customLevel = level;\r\n }\r\n this.$emit(\"changeCustomLevel\", level);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n previous() {\r\n this.$router.push({ path: \"/critical-elevation/4\" });\r\n },\r\n reset() {\r\n this.model.selectedPercentiles = [\r\n \"Low_Median,Intermediate-Low_Median,Intermediate_Median,Intermediate-High_Median,High_Median\",\r\n ];\r\n this.model.selectedScenarios = [];\r\n this.model.criticalElevationFeet = null;\r\n this.model.criticalElevationMeters = null;\r\n this.$emit(\"changeCriticalElevation\", this.model.criticalElevationFeet);\r\n this.model.region = \"\";\r\n this.$emit(\"changeRegion\", this.model.region);\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n this.model.tideGauge = \"\";\r\n this.tideGaugeName = \"\";\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n this.model.heightOption = \"1\";\r\n this.$emit(\"changeHeightOption\", this.model.heightOption);\r\n this.model.tidalHeight = \"\";\r\n this.$emit(\"changeTidalHeight\", this.model.tidalHeight);\r\n this.model.heightBuffer = null;\r\n this.$emit(\"changeHeightBuffer\", this.model.heightBuffer);\r\n this.model.customHeight = null;\r\n this.$emit(\"changeCustomHeight\", this.model.customHeight);\r\n this.model.levelOption = \"1\";\r\n this.$emit(\"changeLevelOption\", this.model.levelOption);\r\n this.model.surgeLevel = \"\";\r\n this.$emit(\"changeSurgeLevel\", this.model.surgeLevel);\r\n this.model.levelBuffer = null;\r\n this.$emit(\"changeLevelBuffer\", this.model.levelBuffer);\r\n this.model.customLevel = null;\r\n this.$emit(\"changeCustomLevel\", this.model.customLevel);\r\n this.updateSLRImpact();\r\n this.updateChart();\r\n },\r\n },\r\n created() {\r\n this.regions = this.$dataUtils.getRegions();\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.region);\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.tidalHeights = this.$dataUtils.getTidalHeights(this.tideGauge);\r\n this.surgeLevels = this.$dataUtils.getSurgeLevels(this.tideGauge);\r\n }\r\n if (this.criticalElevation) {\r\n this.model.criticalElevationFeet = this.criticalElevation;\r\n let meters = (this.criticalElevation / 3.28084).toFixed(1);\r\n this.model.criticalElevationMeters = meters;\r\n }\r\n if (this.region) {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge) {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n if (this.heightOption) {\r\n this.model.heightOption = this.heightOption;\r\n }\r\n if (this.tidalHeight) {\r\n this.model.tidalHeight = this.tidalHeight;\r\n }\r\n if (this.heightBuffer) {\r\n this.model.heightBuffer = this.heightBuffer;\r\n }\r\n if (this.customHeight) {\r\n this.model.customHeight = this.customHeight;\r\n }\r\n if (this.levelOption) {\r\n this.model.levelOption = this.levelOption;\r\n }\r\n if (this.surgeLevel) {\r\n this.model.surgeLevel = this.surgeLevel;\r\n }\r\n if (this.levelBuffer) {\r\n this.model.levelBuffer = this.levelBuffer;\r\n }\r\n if (this.customLevel) {\r\n this.model.customLevel = this.customLevel;\r\n }\r\n this.updateSLRImpact();\r\n this.getTideGaugeName();\r\n this.updateChart();\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.help-icon {\r\n position: absolute;\r\n right: 1em;\r\n top: 0.25em;\r\n z-index: 10;\r\n}\r\n\r\n.exceedance-year-toast {\r\n position: absolute;\r\n top: 7.5em;\r\n left: 4em;\r\n}\r\n\r\n.bg-light {\r\n background-color: #e5f0f8 !important;\r\n}\r\n\r\n.border {\r\n border-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\n\r\nh4 {\r\n font-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n \"Arial\", sans-serif;\r\n padding-bottom: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation5.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation5.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CriticalElevation5.vue?vue&type=template&id=2c21ab24&scoped=true\"\nimport script from \"./CriticalElevation5.vue?vue&type=script&lang=js\"\nexport * from \"./CriticalElevation5.vue?vue&type=script&lang=js\"\nimport style0 from \"./CriticalElevation5.vue?vue&type=style&index=0&id=2c21ab24&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c21ab24\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('h4',[_vm._v(\"Explore By Year\")])]),_c('b-col',{staticClass:\"text-right\",attrs:{\"md\":\"6\"}},[_c('b-button',{staticClass:\"mr-2\",attrs:{\"title\":\"Sea Level Rise Tool Home\",\"variant\":\"dark\"},on:{\"click\":_vm.home}},[_c('b-icon',{attrs:{\"icon\":\"house-fill\",\"aria-label\":\"Sea Level Rise Tool Home\"}}),_vm._v(\" Home \")],1),_c('b-button',{attrs:{\"title\":\"Conduct a screening level assessment of the impact of sea-level rise, tides and storm surge at a site.\",\"variant\":\"dark\"},on:{\"click\":_vm.exploreByCriticalElevation}},[_c('b-icon',{attrs:{\"icon\":\"graph-up\",\"aria-label\":\"Conduct a screening level assessment of the impact of sea-level rise, tides and storm surge at a site.\"}}),_vm._v(\" Explore by Critical Elevation \")],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"12\"}},[_c('b-nav',{attrs:{\"pills\":\"\",\"justified\":\"\"}},[_c('b-nav-item',{staticClass:\"mr-1\",attrs:{\"to\":\"/year/1\",\"active-class\":\"active\"}},[_vm._v(\"1. Region and Tide Gauge\")]),_c('b-nav-item',{staticClass:\"mr-1\",attrs:{\"to\":\"/year/2\",\"active-class\":\"active\"}},[_vm._v(\"2. Year and Scenario\")]),_c('b-nav-item',{attrs:{\"id\":\"tooltip-target\",\"to\":\"/year/3\",\"active-class\":\"active\"}},[_vm._v(\"3. Tide and Storm Surge Data\")])],1),_c('b-tooltip',{attrs:{\"variant\":\"success\",\"target\":\"tooltip-target\",\"placement\":\"bottomright\",\"fallback-placement\":\"clockwise\",\"triggers\":\"manual\",\"show\":\"\"}},[_vm._v(\" Click here to skip wizard and use one-step calculator \"),_c('button',{staticClass:\"close-tooltip\",attrs:{\"aria-label\":\"Close\"},on:{\"click\":_vm.closeTooltip}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_vm._v(\"×\")])])])],1)],1),_c('router-view',{attrs:{\"region\":_vm.model.region,\"tideGauge\":_vm.model.tideGauge,\"year\":_vm.model.year,\"scenario\":_vm.model.scenario,\"dataOption\":_vm.model.dataOption},on:{\"changeRegion\":_vm.changeRegion,\"changeTideGauge\":_vm.changeTideGauge,\"changeYear\":_vm.changeYear,\"changeScenario\":_vm.changeScenario,\"changeDataOption\":_vm.changeDataOption}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <b-container fluid>\r\n <b-row>\r\n <b-col md=\"6\">\r\n <h4>Explore By Year</h4>\r\n </b-col>\r\n <b-col md=\"6\" class=\"text-right\">\r\n <b-button\r\n title=\"Sea Level Rise Tool Home\"\r\n variant=\"dark\"\r\n class=\"mr-2\"\r\n @click=\"home\"\r\n >\r\n <b-icon\r\n icon=\"house-fill\"\r\n aria-label=\"Sea Level Rise Tool Home\"\r\n ></b-icon>\r\n Home\r\n </b-button>\r\n <b-button\r\n title=\"Conduct a screening level assessment of the impact of sea-level rise, tides and storm surge at a site.\"\r\n variant=\"dark\"\r\n @click=\"exploreByCriticalElevation\"\r\n >\r\n <b-icon\r\n icon=\"graph-up\"\r\n aria-label=\"Conduct a screening level assessment of the impact of sea-level rise, tides and storm surge at a site.\"\r\n ></b-icon>\r\n Explore by Critical Elevation\r\n </b-button>\r\n </b-col>\r\n </b-row>\r\n <b-row>\r\n <b-col md=\"12\">\r\n <b-nav pills justified>\r\n <b-nav-item to=\"/year/1\" active-class=\"active\" class=\"mr-1\"\r\n >1. Region and Tide Gauge</b-nav-item\r\n >\r\n <b-nav-item to=\"/year/2\" active-class=\"active\" class=\"mr-1\"\r\n >2. Year and Scenario</b-nav-item\r\n >\r\n <b-nav-item id=\"tooltip-target\" to=\"/year/3\" active-class=\"active\"\r\n >3. Tide and Storm Surge Data</b-nav-item\r\n >\r\n </b-nav>\r\n <b-tooltip\r\n variant=\"success\"\r\n target=\"tooltip-target\"\r\n placement=\"bottomright\"\r\n fallback-placement=\"clockwise\"\r\n triggers=\"manual\"\r\n show\r\n >\r\n Click here to skip wizard and use one-step calculator\r\n <button\r\n @click=\"closeTooltip\"\r\n class=\"close-tooltip\"\r\n aria-label=\"Close\"\r\n >\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </b-tooltip>\r\n </b-col>\r\n </b-row>\r\n <router-view\r\n :region=\"model.region\"\r\n :tideGauge=\"model.tideGauge\"\r\n :year=\"model.year\"\r\n :scenario=\"model.scenario\"\r\n :dataOption=\"model.dataOption\"\r\n @changeRegion=\"changeRegion\"\r\n @changeTideGauge=\"changeTideGauge\"\r\n @changeYear=\"changeYear\"\r\n @changeScenario=\"changeScenario\"\r\n @changeDataOption=\"changeDataOption\"\r\n >\r\n </router-view>\r\n </b-container>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"Year\",\r\n props: {\r\n region: String,\r\n tideGauge: String,\r\n },\r\n data() {\r\n return {\r\n model: {\r\n region: \"\",\r\n tideGauge: \"\",\r\n year: \"\",\r\n scenario: \"\",\r\n dataOption: \"Area\",\r\n },\r\n };\r\n },\r\n methods: {\r\n closeTooltip() {\r\n this.$root.$emit(\"bv::hide::tooltip\", \"tooltip-target\");\r\n },\r\n changeRegion(value) {\r\n this.model.region = value;\r\n this.$emit(\"changeRegion\", value);\r\n },\r\n changeTideGauge(value) {\r\n this.model.tideGauge = value;\r\n this.$emit(\"changeTideGauge\", value);\r\n },\r\n changeYear(value) {\r\n this.model.year = value;\r\n },\r\n changeScenario(value) {\r\n this.model.scenario = value;\r\n },\r\n changeDataOption(value) {\r\n this.model.dataOption = value;\r\n },\r\n home() {\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n this.$router.push({\r\n name: \"home\",\r\n params: {\r\n region: this.model.region,\r\n tideGauge: this.model.tideGauge,\r\n },\r\n });\r\n },\r\n exploreByCriticalElevation() {\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n this.$router.push({\r\n name: \"critical-elevation-1\",\r\n params: {\r\n region: this.model.region,\r\n tideGauge: this.model.tideGauge,\r\n },\r\n });\r\n },\r\n },\r\n created() {\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.tooltip {\r\n z-index: 1030;\r\n}\r\n.close-tooltip {\r\n position: absolute;\r\n top: 2px;\r\n right: 2px;\r\n padding: 0.1rem 0.1rem;\r\n background-color: transparent;\r\n border: 0;\r\n cursor: pointer;\r\n color: #fff;\r\n}\r\n.close-tooltip:focus {\r\n outline: none;\r\n}\r\n.nav-pills .nav-link {\r\n background-color: rgba(0, 113, 188, 0.1);\r\n}\r\n.nav-pills .nav-link.active,\r\n.nav-pills .show > .nav-link {\r\n background-color: #0071bc;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Year.vue?vue&type=template&id=21cec1c3&scoped=true\"\nimport script from \"./Year.vue?vue&type=script&lang=js\"\nexport * from \"./Year.vue?vue&type=script&lang=js\"\nimport style0 from \"./Year.vue?vue&type=style&index=0&id=21cec1c3&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"21cec1c3\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-row',[_c('b-col',{staticClass:\"mb-3 pr-1\",attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"d-flex flex-column w-100 h-100 bg-light shadow-sm\"},[_c('b-form',{staticClass:\"p-3\"},[_c('b-form-group',{attrs:{\"label\":\"Select a region and tide gauge\",\"label-for\":\"tideGauge\",\"title\":\"Select using the dropdowns or click on the map\"}},[_c('b-input-group',{staticClass:\"input-group-sm\",attrs:{\"prepend\":\"Region\"}},[_c('b-form-select',{staticClass:\"w-auto\",attrs:{\"id\":\"region\",\"title\":\"Select a region from the list\",\"options\":_vm.regions},on:{\"change\":_vm.changeRegion},model:{value:(_vm.model.region),callback:function ($$v) {_vm.$set(_vm.model, \"region\", $$v)},expression:\"model.region\"}})],1),_c('b-input-group',{staticClass:\"mt-2 input-group-sm\",attrs:{\"prepend\":\"Tide gauge\"}},[_c('b-form-select',{staticClass:\"w-auto\",attrs:{\"id\":\"tideGauge\",\"title\":\"Select a tide gauge from the list\",\"options\":_vm.tideGauges},on:{\"change\":_vm.changeTideGauge},model:{value:(_vm.model.tideGauge),callback:function ($$v) {_vm.$set(_vm.model, \"tideGauge\", $$v)},expression:\"model.tideGauge\"}})],1)],1)],1),_c('TideGaugeMap',{staticClass:\"flex-grow-1\",attrs:{\"selectedRegion\":_vm.model.region,\"selectedTideGauge\":_vm.model.tideGauge},on:{\"tideGaugeClicked\":_vm.tideGaugeClicked}})],1)]),_c('b-col',{staticClass:\"mb-3 pl-1\",attrs:{\"md\":\"6\"}},[_c('b-card',{staticClass:\"shadow-sm rounded-0\",attrs:{\"title\":\"About Regions and Tide Gauges\"}},[_c('b-card-text',[_c('p',[_c('b',[_vm._v(\"Regions\")]),_c('br'),_vm._v(\" “Regions†refers to EPA regions. Island states and territories and Alaska have been separated out from projections for the contiguous US. \")]),_c('p',[_c('b',[_vm._v(\"Tide Gauges\")]),_c('br'),_vm._v(\" Selecting a tide gauge will factor in local relative sea level (RSL) trends as opposed to using the global average sea level trend, which, depending on the tide gauge station, can be substantially different from one another. \")]),_c('p',[_vm._v(\" Tide gauge measurements are made with respect to a local fixed reference on land. RSL is a combination of the sea level rise and the local vertical land motion. Changes in RSL, either a rise or fall, have been incorporated into the technical report’s data at 142 long-term water level stations in the United States using a minimum span of 30 years of observations at each location. \")])])],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"6\"}}),_c('b-col',{staticClass:\"text-right\",attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.next}},[_vm._v(\" Next \"),_c('b-icon',{attrs:{\"icon\":\"arrow-right\"}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div>\r\n <b-row>\r\n <b-col md=\"6\" class=\"mb-3 pr-1\">\r\n <div class=\"d-flex flex-column w-100 h-100 bg-light shadow-sm\">\r\n <b-form class=\"p-3\">\r\n <b-form-group\r\n label=\"Select a region and tide gauge\"\r\n label-for=\"tideGauge\"\r\n title=\"Select using the dropdowns or click on the map\"\r\n >\r\n <b-input-group prepend=\"Region\" class=\"input-group-sm\">\r\n <b-form-select\r\n id=\"region\"\r\n title=\"Select a region from the list\"\r\n class=\"w-auto\"\r\n v-model=\"model.region\"\r\n :options=\"regions\"\r\n @change=\"changeRegion\"\r\n ></b-form-select>\r\n </b-input-group>\r\n <b-input-group prepend=\"Tide gauge\" class=\"mt-2 input-group-sm\">\r\n <b-form-select\r\n id=\"tideGauge\"\r\n title=\"Select a tide gauge from the list\"\r\n class=\"w-auto\"\r\n v-model=\"model.tideGauge\"\r\n :options=\"tideGauges\"\r\n @change=\"changeTideGauge\"\r\n ></b-form-select>\r\n </b-input-group>\r\n </b-form-group>\r\n </b-form>\r\n <TideGaugeMap\r\n :selectedRegion=\"model.region\"\r\n :selectedTideGauge=\"model.tideGauge\"\r\n @tideGaugeClicked=\"tideGaugeClicked\"\r\n class=\"flex-grow-1\"\r\n />\r\n </div>\r\n </b-col>\r\n <b-col md=\"6\" class=\"mb-3 pl-1\">\r\n <b-card\r\n title=\"About Regions and Tide Gauges\"\r\n class=\"shadow-sm rounded-0\"\r\n >\r\n <b-card-text>\r\n <p>\r\n <b>Regions</b><br />\r\n “Regions†refers to EPA regions. Island states and territories and\r\n Alaska have been separated out from projections for the contiguous\r\n US.\r\n </p>\r\n <p>\r\n <b>Tide Gauges</b><br />\r\n Selecting a tide gauge will factor in local relative sea level\r\n (RSL) trends as opposed to using the global average sea level\r\n trend, which, depending on the tide gauge station, can be\r\n substantially different from one another.\r\n </p>\r\n <p>\r\n Tide gauge measurements are made with respect to a local fixed\r\n reference on land. RSL is a combination of the sea level rise and\r\n the local vertical land motion. Changes in RSL, either a rise or\r\n fall, have been incorporated into the technical report’s data at\r\n 142 long-term water level stations in the United States using a\r\n minimum span of 30 years of observations at each location.\r\n </p>\r\n </b-card-text>\r\n </b-card>\r\n </b-col>\r\n </b-row>\r\n <b-row>\r\n <b-col sm=\"6\">\r\n \r\n </b-col>\r\n <b-col sm=\"6\" class=\"text-right\">\r\n <b-button pill variant=\"success\" @click=\"next\">\r\n Next\r\n <b-icon icon=\"arrow-right\"></b-icon>\r\n </b-button>\r\n </b-col>\r\n </b-row>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport TideGaugeMap from \"../components/TideGaugeMap\";\r\n\r\nexport default {\r\n name: \"Year1\",\r\n components: {\r\n TideGaugeMap,\r\n },\r\n props: {\r\n region: String,\r\n tideGauge: String,\r\n },\r\n data() {\r\n return {\r\n model: {\r\n region: \"\",\r\n tideGauge: \"\",\r\n },\r\n regions: [],\r\n tideGauges: [],\r\n };\r\n },\r\n methods: {\r\n changeRegion() {\r\n this.$emit(\"changeRegion\", this.model.region);\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n this.model.tideGauge = \"\";\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n },\r\n changeTideGauge() {\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n },\r\n tideGaugeClicked(value) {\r\n this.model.region = value.region.split(\",\")[0];\r\n this.$emit(\"changeRegion\", this.model.region);\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n this.model.tideGauge = value.tideGauge;\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n },\r\n next() {\r\n this.$router.push({ path: \"/year/2\" });\r\n },\r\n },\r\n created() {\r\n this.regions = this.$dataUtils.getRegions();\r\n if (this.region && this.region !== \"\") {\r\n this.model.region = this.region;\r\n }\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n if (this.tideGauge && this.tideGauge !== \"\") {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.bg-light {\r\n background-color: #e5f0f8 !important;\r\n}\r\n.card {\r\n border-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\nh4 {\r\n font-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n \"Arial\", sans-serif;\r\n padding-bottom: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year1.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year1.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Year1.vue?vue&type=template&id=d3844b36&scoped=true\"\nimport script from \"./Year1.vue?vue&type=script&lang=js\"\nexport * from \"./Year1.vue?vue&type=script&lang=js\"\nimport style0 from \"./Year1.vue?vue&type=style&index=0&id=d3844b36&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d3844b36\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-row',[_c('b-col',{staticClass:\"mb-3 pr-1\",attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"bg-light shadow-sm d-flex flex-column w-100 h-100\"},[_c('b-form',{staticClass:\"p-3\"},[_c('b-form-group',{attrs:{\"label\":\"Choose a year and a scenario\",\"label-for\":\"scenario\",\"title\":\"Select a year and a scenario from the lists\"}},[_c('b-input-group',{staticClass:\"input-group-sm mb-2\",attrs:{\"prepend\":\"Year\"}},[_c('b-form-select',{attrs:{\"id\":\"year\",\"title\":\"Select a year from the list\",\"options\":_vm.years,\"required\":\"\"},on:{\"change\":_vm.changeYear},model:{value:(_vm.model.year),callback:function ($$v) {_vm.$set(_vm.model, \"year\", $$v)},expression:\"model.year\"}})],1),_c('b-input-group',{staticClass:\"input-group-sm mb-2\",attrs:{\"prepend\":\"Scenario\"}},[_c('b-form-select',{attrs:{\"id\":\"scenario\",\"title\":\"Select a scenario from the list\",\"options\":_vm.scenarios,\"required\":\"\"},on:{\"change\":_vm.changeScenario},model:{value:(_vm.model.scenario),callback:function ($$v) {_vm.$set(_vm.model, \"scenario\", $$v)},expression:\"model.scenario\"}})],1)],1),_c('b-form-group',{attrs:{\"label\":\"Display data as\",\"label-for\":\"dataOption\",\"label-size\":\"sm\",\"title\":\"Select an option\"}},[_c('b-form-radio',{attrs:{\"name\":\"dataOption\",\"size\":\"sm\",\"value\":'Area'},on:{\"input\":_vm.changeDataOption},model:{value:(_vm.model.dataOption),callback:function ($$v) {_vm.$set(_vm.model, \"dataOption\", $$v)},expression:\"model.dataOption\"}},[_vm._v(\" Flooded area \")]),_c('b-form-radio',{attrs:{\"name\":\"dataOption\",\"size\":\"sm\",\"value\":'Depth'},on:{\"input\":_vm.changeDataOption},model:{value:(_vm.model.dataOption),callback:function ($$v) {_vm.$set(_vm.model, \"dataOption\", $$v)},expression:\"model.dataOption\"}},[_vm._v(\" Water depth \")])],1)],1),_c('b-img',{class:{ 'hide': _vm.model.dataOption !== 'Area' },attrs:{\"src\":require('../assets/images/area.jpg'),\"alt\":\"Example of projected area\",\"title\":\"Example of projected area\",\"fluid\":\"\"}}),_c('b-img',{class:{ 'hide': _vm.model.dataOption !== 'Depth' },attrs:{\"src\":require('../assets/images/depth.jpg'),\"alt\":\"Example of projected depth\",\"title\":\"Example of projected depth\",\"fluid\":\"\"}})],1)]),_c('b-col',{staticClass:\"mb-3 pl-1\",attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"d-flex flex-column w-100 h-100\"},[_c('b-card',{staticClass:\"shadow-sm flex-grow-1 rounded-0\",attrs:{\"title\":\"About scenarios\"}},[_c('b-card-text',[_c('p',[_vm._v(\" Each scenario represents a possible sea-level-rise trajectory, from an extrapolation of linear sea-level-rise trends (Low (0.3-m) scenario) to physically plausible but low-probability extremes (High (2.0-m) scenario). \")]),_c('p',[_vm._v(\" Probabilities are provided on the Results page for a range of emissions scenarios and are determined by the number of models which exceed each scenario threshold. For example, a probability of 92% for the Low (0.3 m) scenario under emissions scenario RCP2.6 means that 92% of models project global sea-level rise of greater than 0.3 m. \")]),_c('hr'),_c('div',{attrs:{\"id\":\"accordion\",\"role\":\"tablist\"}},[_c('div',[_c('h6',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.floodedArea\",modifiers:{\"floodedArea\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" What does \"),_c('b',[_vm._v(\"flooded area\")]),_vm._v(\" show? \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"floodedArea\",\"accordion\":\"accordion\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" Selecting “Flooded area†will display the location of mean sea level as a polygon (outline). The water line will fluctuate on a daily/intermittent basis due to tidal variation and storm surge. \")])])],1),_c('div',[_c('h6',{attrs:{\"role\":\"tab\"}},[_c('a',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.waterDepth\",modifiers:{\"waterDepth\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.preventDefault}},[_c('b-icon',{staticClass:\"when-closed mr-2\",attrs:{\"icon\":\"chevron-right\"}}),_c('b-icon',{staticClass:\"when-open mr-2\",attrs:{\"icon\":\"chevron-down\"}}),_vm._v(\" What does \"),_c('b',[_vm._v(\"water depth\")]),_vm._v(\" show? \")],1)]),_c('b-collapse',{staticClass:\"p-3 mb-4 info\",attrs:{\"id\":\"waterDepth\",\"accordion\":\"accordion\",\"role\":\"tabpanel\"}},[_c('p',[_vm._v(\" Selecting “Water depth†will display the location of mean sea level as a raster (which includes a depth component). The water line and depth will fluctuate on a daily/intermittent basis due to tidal variation and storm surge. \")])])],1)])])],1)],1)])],1),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.previous}},[_c('b-icon',{attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\"Previous \")],1)],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.next}},[_vm._v(\" Next \"),_c('b-icon',{attrs:{\"icon\":\"arrow-right\"}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<b-row>\r\n\t\t\t<b-col md=\"6\" class=\"mb-3 pr-1\">\r\n\t\t\t\t<div class=\"bg-light shadow-sm d-flex flex-column w-100 h-100\">\r\n\t\t\t\t\t<b-form class=\"p-3\">\r\n\t\t\t\t\t\t<b-form-group\r\n\t\t\t\t\t\t\tlabel=\"Choose a year and a scenario\"\r\n\t\t\t\t\t\t\tlabel-for=\"scenario\"\r\n\t\t\t\t\t\t\ttitle=\"Select a year and a scenario from the lists\"\r\n\t\t\t\t\t\t>\r\n <b-input-group prepend=\"Year\" class=\"input-group-sm mb-2\">\r\n <b-form-select\r\n id=\"year\"\r\n title=\"Select a year from the list\"\r\n v-model=\"model.year\"\r\n :options=\"years\"\r\n required\r\n\t\t\t\t\t\t\t\t\t@change=\"changeYear\"\r\n ></b-form-select>\r\n </b-input-group>\r\n <b-input-group prepend=\"Scenario\" class=\"input-group-sm mb-2\">\r\n <b-form-select\r\n id=\"scenario\"\r\n title=\"Select a scenario from the list\"\r\n v-model=\"model.scenario\"\r\n :options=\"scenarios\"\r\n required\r\n\t\t\t\t\t\t\t\t\t@change=\"changeScenario\"\r\n ></b-form-select>\r\n </b-input-group>\r\n\t\t\t\t\t\t</b-form-group>\r\n <b-form-group label=\"Display data as\"\r\n\t\t\t\t\t\t\tlabel-for=\"dataOption\"\r\n label-size=\"sm\"\r\n\t\t\t\t\t\t\ttitle=\"Select an option\">\r\n <b-form-radio \r\n\t\t\t\t\t\t\t\tname=\"dataOption\"\r\n\t\t\t\t\t\t\t\tsize=\"sm\"\r\n\t\t\t\t\t\t\t\tv-model=\"model.dataOption\"\r\n\t\t\t\t\t\t\t\t:value=\"'Area'\"\r\n\t\t\t\t\t\t\t\t@input=\"changeDataOption\">\r\n Flooded area\r\n </b-form-radio>\r\n <b-form-radio\r\n\t\t\t\t\t\t\t\tname=\"dataOption\"\r\n\t\t\t\t\t\t\t\tsize=\"sm\"\r\n\t\t\t\t\t\t\t\tv-model=\"model.dataOption\"\r\n\t\t\t\t\t\t\t\t:value=\"'Depth'\"\r\n\t\t\t\t\t\t\t\t@input=\"changeDataOption\">\r\n Water depth\r\n </b-form-radio>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-form>\r\n\t\t\t\t\t<b-img :src=\"require('../assets/images/area.jpg')\" :class=\"{ 'hide': model.dataOption !== 'Area' }\" alt=\"Example of projected area\" title=\"Example of projected area\" fluid></b-img>\r\n\t\t\t\t\t<b-img :src=\"require('../assets/images/depth.jpg')\" :class=\"{ 'hide': model.dataOption !== 'Depth' }\" alt=\"Example of projected depth\" title=\"Example of projected depth\" fluid></b-img>\r\n\t\t\t\t</div>\r\n\t\t\t</b-col>\r\n\t\t\t<b-col md=\"6\" class=\"mb-3 pl-1\">\r\n\t\t\t\t<div class=\"d-flex flex-column w-100 h-100\">\r\n\t\t\t\t\t<b-card\r\n\t\t\t\t\t\ttitle=\"About scenarios\"\r\n\t\t\t\t\t\tclass=\"shadow-sm flex-grow-1 rounded-0\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<b-card-text>\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tEach scenario represents a possible sea-level-rise trajectory, from an \r\n\t\t\t\t\t\t\t\textrapolation of linear sea-level-rise trends (Low (0.3-m) scenario) to \r\n\t\t\t\t\t\t\t\tphysically plausible but low-probability extremes (High (2.0-m) scenario).\r\n\t\t\t\t\t\t\t</p>\r\n <p>\r\n Probabilities are provided on the Results page for a range of emissions \r\n\t\t\t\t\t\t\t\tscenarios and are determined by the number of models which exceed each scenario \r\n\t\t\t\t\t\t\t\tthreshold. For example, a probability of 92% for the Low (0.3 m) scenario under \r\n\t\t\t\t\t\t\t\temissions scenario RCP2.6 means that 92% of models project global sea-level rise \r\n\t\t\t\t\t\t\t\tof greater than 0.3 m.\r\n </p>\r\n\t\t\t\t\t\t\t<hr />\r\n\t\t\t\t\t\t\t<div id=\"accordion\" role=\"tablist\">\r\n\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t<h6 role=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\t<a href=\"#\" v-b-toggle.floodedArea @click=\"preventDefault\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-right\" class=\"when-closed mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-down\" class=\"when-open mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\tWhat does <b>flooded area</b> show?\r\n\t\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t\t\t</h6>\r\n\t\t\t\t\t\t\t\t\t<b-collapse\r\n\t\t\t\t\t\t\t\t\t\tid=\"floodedArea\"\r\n\t\t\t\t\t\t\t\t\t\taccordion=\"accordion\"\r\n\t\t\t\t\t\t\t\t\t\trole=\"tabpanel\"\r\n\t\t\t\t\t\t\t\t\t\tclass=\"p-3 mb-4 info\"\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tSelecting “Flooded area†will display the location of \r\n\t\t\t\t\t\t\t\t\t\t\tmean sea level as a polygon (outline). The water line will fluctuate \r\n\t\t\t\t\t\t\t\t\t\t\ton a daily/intermittent basis due to tidal variation and storm surge.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t</b-collapse>\r\n\t\t\t\t\t\t\t\t</div>\r\n <div>\r\n\t\t\t\t\t\t\t\t\t<h6 role=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\t<a href=\"#\" v-b-toggle.waterDepth @click=\"preventDefault\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-right\" class=\"when-closed mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-icon icon=\"chevron-down\" class=\"when-open mr-2\"></b-icon>\r\n\t\t\t\t\t\t\t\t\t\t\tWhat does <b>water depth</b> show?\r\n\t\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t\t\t</h6>\r\n\t\t\t\t\t\t\t\t\t<b-collapse\r\n\t\t\t\t\t\t\t\t\t\tid=\"waterDepth\"\r\n\t\t\t\t\t\t\t\t\t\taccordion=\"accordion\"\r\n\t\t\t\t\t\t\t\t\t\trole=\"tabpanel\"\r\n\t\t\t\t\t\t\t\t\t\tclass=\"p-3 mb-4 info\"\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tSelecting “Water depth†will display the location \r\n\t\t\t\t\t\t\t\t\t\t\tof mean sea level as a raster (which includes a depth component). \r\n\t\t\t\t\t\t\t\t\t\t\tThe water line and depth will fluctuate on a daily/intermittent basis \r\n\t\t\t\t\t\t\t\t\t\t\tdue to tidal variation and storm surge.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t</b-collapse>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-card-text>\r\n\t\t\t\t\t</b-card>\r\n\t\t\t\t</div>\r\n\t\t\t</b-col>\r\n\t\t</b-row>\r\n\t\t<b-row>\r\n\t\t\t<b-col sm=\"6\">\r\n\t\t\t\t<b-button pill variant=\"success\" @click=\"previous\">\r\n\t\t\t\t\t<b-icon icon=\"arrow-left\"></b-icon>Previous\r\n\t\t\t\t</b-button>\r\n\t\t\t</b-col>\r\n\t\t\t<b-col sm=\"6\" class=\"text-right\">\r\n\t\t\t\t<b-button pill variant=\"success\" @click=\"next\">\r\n\t\t\t\t\tNext\r\n\t\t\t\t\t<b-icon icon=\"arrow-right\"></b-icon>\r\n\t\t\t\t</b-button>\r\n\t\t\t</b-col>\r\n\t\t</b-row>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tname: \"Year2\",\r\n\tprops: {\r\n\t\tyear: String,\r\n\t\tscenario: String,\r\n\t\tdataOption: String\r\n\t},\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tmodel: {\r\n\t\t\t\tyear: \"\",\r\n\t\t\t\tscenario: \"\",\r\n\t\t\t\tdataOption: \"Area\"\r\n\t\t\t},\r\n scenarios: [],\r\n years: []\r\n\t\t};\r\n\t},\r\n\tmethods: {\r\n\t\tchangeYear() {\r\n\t\t\tthis.$emit(\"changeYear\", this.model.year);\r\n },\r\n changeScenario() {\r\n\t\t\tthis.$emit(\"changeScenario\", this.model.scenario);\r\n\t\t},\r\n\t\tchangeDataOption() {\r\n\t\t\tthis.$emit(\"changeDataOption\", this.model.dataOption);\r\n\t\t},\r\n\t\tnext() {\r\n\t\t\tthis.$router.push({ path: '/year/3/1'});\r\n\t\t},\r\n\t\tprevious() {\r\n\t\t\tthis.$router.push({ path: '/year/1'});\r\n },\r\n preventDefault(e) {\r\n e.preventDefault();\r\n }\r\n\t},\r\n\tcreated() {\r\n\t\tthis.years = this.$dataUtils.getYears();\r\n\t\tif (this.year) {\r\n\t\t\tthis.model.year = this.year;\r\n\t\t}\r\n\t\tthis.scenarios = this.$dataUtils.getScenarios();\r\n\t\tif (this.scenario) {\r\n\t\t\tthis.model.scenario = this.scenario;\r\n\t\t}\r\n\t\tif (this.dataOption) {\r\n\t\t\tthis.model.dataOption = this.dataOption;\r\n\t\t}\r\n\t}\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.collapsed > .when-open,\r\n.not-collapsed > .when-closed,\r\n.hide {\r\n display: none;\r\n}\r\n.bg-light {\r\n\tbackground-color: #e5f0f8 !important; \r\n}\r\n.card {\r\n\tborder-color:rgba(0,0,0,0.075) !important;\r\n}\r\n.accordion-title {\r\n\tbackground-color: rgb(225, 243, 248);\r\n}\r\n.card-text {\r\n padding-bottom:0 !important;\r\n}\r\n.info {\r\n\tbackground-color: rgb(225, 243, 248);\r\n}\r\nhr {\r\n\tmargin-top:0;\r\n\tmargin-bottom:1.5rem;\r\n}\r\nh4, h6 {\r\n\tfont-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\", \"Arial\", sans-serif;\r\n}\r\nh4 {\r\n\tpadding-bottom: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year2.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year2.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Year2.vue?vue&type=template&id=92de3f20&scoped=true\"\nimport script from \"./Year2.vue?vue&type=script&lang=js\"\nexport * from \"./Year2.vue?vue&type=script&lang=js\"\nimport style0 from \"./Year2.vue?vue&type=style&index=0&id=92de3f20&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"92de3f20\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pl-3 pr-3\"},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"12\"}},[_c('b-nav',{staticClass:\"border-bottom-light p-0 mb-3\",attrs:{\"tabs\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":\"/year/3/1\",\"active-class\":\"active\"}},[_vm._v(\"Map\")]),_c('b-nav-item',{attrs:{\"to\":\"/year/3/2\",\"active-class\":\"active\"}},[_vm._v(\"Summary Statistics\")]),_c('b-nav-item',{attrs:{\"to\":\"/year/3/3\",\"active-class\":\"active\"}},[_vm._v(\"Tide and Storm Surge Data\")])],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"p-0\",attrs:{\"md\":\"12\"}},[_c('router-view',{attrs:{\"tideGaugeName\":_vm.tideGaugeName,\"summaryStatistics\":_vm.summaryStatistics,\"chartOptions\":_vm.chartOptions,\"region\":_vm.model.region,\"tideGauge\":_vm.model.tideGauge,\"year\":_vm.model.year,\"scenario\":_vm.model.scenario,\"dataOption\":_vm.model.dataOption},on:{\"changeRegion\":_vm.changeRegion,\"changeTideGauge\":_vm.changeTideGauge}})],1)],1),_c('b-row',{staticClass:\"bg-light shadow-sm mb-3 p-2\"},[_c('b-col',{staticClass:\"d-flex flex-column border-right\",attrs:{\"md\":\"4\"}},[_c('b-form',[_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help1\",modifiers:{\"help1\":true}}],staticClass:\"help-icon-1\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help1\",\"title\":\"Region\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" “Regions†refers to EPA regions. Island states and territories and Alaska have been separated out from projections for the contiguous US. \")])]),_c('b-form-group',{staticClass:\"mb-2\",attrs:{\"label\":\"Region\",\"label-for\":\"region\"}},[_c('b-form-select',{attrs:{\"id\":\"region\",\"size\":\"sm\",\"options\":_vm.regions},on:{\"change\":_vm.changeRegion},model:{value:(_vm.model.region),callback:function ($$v) {_vm.$set(_vm.model, \"region\", $$v)},expression:\"model.region\"}})],1),_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help2\",modifiers:{\"help2\":true}}],staticClass:\"help-icon-2\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help2\",\"title\":\"Tide gauge\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Selecting a tide gauge will factor in local relative sea level (RSL) trends as opposed to using the global average sea level trend, which, depending on the tide gauge station, can be substantially different from one another. \")]),_c('p',[_vm._v(\" Tide gauge measurements are made with respect to a local fixed reference on land. RSL is a combination of the sea level rise and the local vertical land motion. Changes in RSL, either a rise or fall, have been computed at 142 long-term water level stations in the United States using a minimum span of 30 years of observations at each location. \")])]),_c('b-form-group',{attrs:{\"label\":\"Tide Gauge\",\"label-for\":\"tideGauge\"}},[_c('b-form-select',{attrs:{\"id\":\"tideGauge\",\"size\":\"sm\",\"options\":_vm.tideGauges},on:{\"change\":_vm.changeTideGauge},model:{value:(_vm.model.tideGauge),callback:function ($$v) {_vm.$set(_vm.model, \"tideGauge\", $$v)},expression:\"model.tideGauge\"}})],1)],1)],1),_c('b-col',{staticClass:\"d-flex flex-column border-right\",attrs:{\"md\":\"4\"}},[_c('b-form',{class:{ 'display-none': _vm.graphPage }},[_c('b-form-group',{staticClass:\"mb-2\",attrs:{\"label\":\"Year\",\"label-for\":\"year\"}},[_c('b-form-select',{attrs:{\"id\":\"year\",\"size\":\"sm\",\"options\":_vm.years},on:{\"change\":_vm.changeYear},model:{value:(_vm.model.year),callback:function ($$v) {_vm.$set(_vm.model, \"year\", $$v)},expression:\"model.year\"}})],1),_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help3\",modifiers:{\"help3\":true}}],staticClass:\"help-icon-2\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\",\"title\":\"\"}}),_c('b-modal',{attrs:{\"id\":\"help3\",\"title\":\"Scenario\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Each scenario represents a possible sea-level-rise trajectory, from an extrapolation of linear sea-level-rise trends (Low (0.3-m) scenario) to physically plausible but low-probability extremes (High (2.0-m) scenario). \")]),_c('p',[_vm._v(\" Probabilities are provided on the Results page for a range of emissions scenarios and are determined by the number of models which exceed each scenario threshold. For example, a probability of 92% for the Low (0.3 m) scenario under emissions scenario RCP2.6 means that 92% of models project global sea-level rise of greater than 0.3 m. \")])]),_c('b-form-group',{staticClass:\"mb-2\",attrs:{\"label\":\"Scenario\",\"label-for\":\"scenario\"}},[_c('b-form-select',{attrs:{\"id\":\"scenario\",\"size\":\"sm\",\"options\":_vm.scenarios},on:{\"change\":_vm.changeScenario},model:{value:(_vm.model.scenario),callback:function ($$v) {_vm.$set(_vm.model, \"scenario\", $$v)},expression:\"model.scenario\"}})],1)],1)],1),_c('b-col',{staticClass:\"d-flex flex-column\",attrs:{\"md\":\"4\"}},[_c('b-form',{class:{ 'display-none': _vm.summaryStatisticsPage || _vm.graphPage }},[_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help4\",modifiers:{\"help4\":true}}],staticClass:\"help-icon-1\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help4\",\"title\":\"Displaying data\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Selecting “Flooded area†will display the location of mean sea level as a polygon (outline). The water line will fluctuate on a daily/intermittent basis due to tidal variation and storm surge. \")]),_c('p',[_vm._v(\" Selecting “Water depth†will display the location of mean sea level as a raster (which includes a depth component). The water line and depth will fluctuate on a daily/intermittent basis due to tidal variation and storm surge. \")])]),_c('b-form-group',{attrs:{\"label\":\"Display data as\",\"label-for\":\"area\"}},[_c('b-form-radio',{staticClass:\"mb-2\",attrs:{\"name\":\"dataOption\",\"value\":'Area',\"size\":\"sm\"},on:{\"input\":_vm.changeDataOption},model:{value:(_vm.model.dataOption),callback:function ($$v) {_vm.$set(_vm.model, \"dataOption\", $$v)},expression:\"model.dataOption\"}},[_vm._v(\"Flooded area\")]),_c('b-form-radio',{staticClass:\"mb-2\",attrs:{\"name\":\"dataOption\",\"value\":'Depth',\"size\":\"sm\"},on:{\"input\":_vm.changeDataOption},model:{value:(_vm.model.dataOption),callback:function ($$v) {_vm.$set(_vm.model, \"dataOption\", $$v)},expression:\"model.dataOption\"}},[_vm._v(\"Water depth\")])],1)],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"success\"},on:{\"click\":_vm.previous}},[_c('b-icon',{attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\"Previous \")],1)],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"md\":\"6\"}},[_c('b-button',{attrs:{\"pill\":\"\",\"variant\":\"outline-success\"},on:{\"click\":_vm.reset}},[_c('b-icon',{attrs:{\"icon\":\"arrow-counterclockwise\"}}),_vm._v(\"Reset \")],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div class=\"pl-3 pr-3\">\r\n <b-row>\r\n <b-col md=\"12\">\r\n <b-nav tabs class=\"border-bottom-light p-0 mb-3\">\r\n <b-nav-item to=\"/year/3/1\" active-class=\"active\">Map</b-nav-item>\r\n <b-nav-item to=\"/year/3/2\" active-class=\"active\"\r\n >Summary Statistics</b-nav-item\r\n >\r\n <b-nav-item to=\"/year/3/3\" active-class=\"active\"\r\n >Tide and Storm Surge Data</b-nav-item\r\n >\r\n </b-nav>\r\n </b-col>\r\n </b-row>\r\n <b-row class=\"mb-3\">\r\n <b-col md=\"12\" class=\"p-0\">\r\n <router-view\r\n :tideGaugeName=\"tideGaugeName\"\r\n :summaryStatistics=\"summaryStatistics\"\r\n :chartOptions=\"chartOptions\"\r\n :region=\"model.region\"\r\n :tideGauge=\"model.tideGauge\"\r\n :year=\"model.year\"\r\n :scenario=\"model.scenario\"\r\n :dataOption=\"model.dataOption\"\r\n @changeRegion=\"changeRegion\"\r\n @changeTideGauge=\"changeTideGauge\"\r\n >\r\n </router-view>\r\n </b-col>\r\n </b-row>\r\n <b-row class=\"bg-light shadow-sm mb-3 p-2\">\r\n <b-col md=\"4\" class=\"d-flex flex-column border-right\">\r\n <b-form>\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help1\r\n class=\"help-icon-1\"\r\n ></b-icon>\r\n <b-modal id=\"help1\" title=\"Region\" title-tag=\"h6\" hide-footer>\r\n <p>\r\n “Regions†refers to EPA regions. Island states and territories and\r\n Alaska have been separated out from projections for the contiguous\r\n US.\r\n </p>\r\n </b-modal>\r\n <b-form-group label=\"Region\" label-for=\"region\" class=\"mb-2\">\r\n <b-form-select\r\n id=\"region\"\r\n size=\"sm\"\r\n v-model=\"model.region\"\r\n :options=\"regions\"\r\n @change=\"changeRegion\"\r\n ></b-form-select>\r\n </b-form-group>\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help2\r\n class=\"help-icon-2\"\r\n ></b-icon>\r\n <b-modal id=\"help2\" title=\"Tide gauge\" title-tag=\"h6\" hide-footer>\r\n <p>\r\n Selecting a tide gauge will factor in local relative sea level\r\n (RSL) trends as opposed to using the global average sea level\r\n trend, which, depending on the tide gauge station, can be\r\n substantially different from one another.\r\n </p>\r\n <p>\r\n Tide gauge measurements are made with respect to a local fixed\r\n reference on land. RSL is a combination of the sea level rise and\r\n the local vertical land motion. Changes in RSL, either a rise or\r\n fall, have been computed at 142 long-term water level stations in\r\n the United States using a minimum span of 30 years of observations\r\n at each location.\r\n </p>\r\n </b-modal>\r\n <b-form-group label=\"Tide Gauge\" label-for=\"tideGauge\">\r\n <b-form-select\r\n id=\"tideGauge\"\r\n size=\"sm\"\r\n v-model=\"model.tideGauge\"\r\n :options=\"tideGauges\"\r\n @change=\"changeTideGauge\"\r\n ></b-form-select>\r\n </b-form-group>\r\n </b-form>\r\n </b-col>\r\n <b-col md=\"4\" class=\"d-flex flex-column border-right\">\r\n <b-form :class=\"{ 'display-none': graphPage }\">\r\n <b-form-group label=\"Year\" label-for=\"year\" class=\"mb-2\">\r\n <b-form-select\r\n id=\"year\"\r\n size=\"sm\"\r\n v-model=\"model.year\"\r\n :options=\"years\"\r\n @change=\"changeYear\"\r\n ></b-form-select>\r\n </b-form-group>\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help3\r\n title=\"\"\r\n class=\"help-icon-2\"\r\n ></b-icon>\r\n <b-modal id=\"help3\" title=\"Scenario\" title-tag=\"h6\" hide-footer>\r\n <p>\r\n Each scenario represents a possible sea-level-rise trajectory,\r\n from an extrapolation of linear sea-level-rise trends (Low (0.3-m)\r\n scenario) to physically plausible but low-probability extremes\r\n (High (2.0-m) scenario).\r\n </p>\r\n <p>\r\n Probabilities are provided on the Results page for a range of\r\n emissions scenarios and are determined by the number of models\r\n which exceed each scenario threshold. For example, a probability\r\n of 92% for the Low (0.3 m) scenario under emissions scenario\r\n RCP2.6 means that 92% of models project global sea-level rise of\r\n greater than 0.3 m.\r\n </p>\r\n </b-modal>\r\n <b-form-group label=\"Scenario\" label-for=\"scenario\" class=\"mb-2\">\r\n <b-form-select\r\n id=\"scenario\"\r\n size=\"sm\"\r\n v-model=\"model.scenario\"\r\n :options=\"scenarios\"\r\n @change=\"changeScenario\"\r\n ></b-form-select>\r\n </b-form-group>\r\n </b-form>\r\n </b-col>\r\n <b-col md=\"4\" class=\"d-flex flex-column\">\r\n <b-form :class=\"{ 'display-none': summaryStatisticsPage || graphPage }\">\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help4\r\n class=\"help-icon-1\"\r\n ></b-icon>\r\n <b-modal\r\n id=\"help4\"\r\n title=\"Displaying data\"\r\n title-tag=\"h6\"\r\n hide-footer\r\n >\r\n <p>\r\n Selecting “Flooded area†will display the location of mean sea\r\n level as a polygon (outline). The water line will fluctuate on a\r\n daily/intermittent basis due to tidal variation and storm surge.\r\n </p>\r\n <p>\r\n Selecting “Water depth†will display the location of mean sea\r\n level as a raster (which includes a depth component). The water\r\n line and depth will fluctuate on a daily/intermittent basis due to\r\n tidal variation and storm surge.\r\n </p>\r\n </b-modal>\r\n <b-form-group label=\"Display data as\" label-for=\"area\">\r\n <b-form-radio\r\n name=\"dataOption\"\r\n v-model=\"model.dataOption\"\r\n :value=\"'Area'\"\r\n class=\"mb-2\"\r\n size=\"sm\"\r\n @input=\"changeDataOption\"\r\n >Flooded area</b-form-radio\r\n >\r\n <b-form-radio\r\n name=\"dataOption\"\r\n v-model=\"model.dataOption\"\r\n :value=\"'Depth'\"\r\n class=\"mb-2\"\r\n size=\"sm\"\r\n @input=\"changeDataOption\"\r\n >Water depth</b-form-radio\r\n >\r\n </b-form-group>\r\n </b-form>\r\n </b-col>\r\n </b-row>\r\n <b-row>\r\n <b-col sm=\"6\">\r\n <b-button pill variant=\"success\" @click=\"previous\">\r\n <b-icon icon=\"arrow-left\"></b-icon>Previous\r\n </b-button>\r\n </b-col>\r\n <b-col md=\"6\" class=\"text-right\">\r\n <b-button pill variant=\"outline-success\" @click=\"reset\">\r\n <b-icon icon=\"arrow-counterclockwise\"></b-icon>Reset\r\n </b-button>\r\n </b-col>\r\n </b-row>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"Year3\",\r\n props: {\r\n region: String,\r\n tideGauge: String,\r\n year: String,\r\n scenario: String,\r\n dataOption: String,\r\n },\r\n data() {\r\n return {\r\n model: {\r\n region: \"\",\r\n tideGauge: \"\",\r\n year: \"\",\r\n scenario: \"\",\r\n dataOption: \"Area\",\r\n },\r\n regions: [],\r\n tideGauges: [],\r\n scenarios: [],\r\n years: [],\r\n tideGaugeName: \"\",\r\n chartOptions: {\r\n chart: {\r\n animation: false,\r\n height: 500,\r\n style: {\r\n fontFamily:\r\n '\"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\", \"Arial\", sans-serif',\r\n },\r\n },\r\n exporting: {\r\n enabled: true,\r\n filename: \"epa_slr_tide_range\",\r\n buttons: {\r\n contextButton: {\r\n menuItems: [\r\n \"printChart\",\r\n \"separator\",\r\n \"downloadPNG\",\r\n \"downloadJPEG\",\r\n \"downloadPDF\",\r\n \"downloadSVG\",\r\n ],\r\n },\r\n },\r\n chartOptions: {\r\n chart: {\r\n width: 920,\r\n },\r\n },\r\n },\r\n legend: {\r\n align: \"right\",\r\n layout: \"vertical\",\r\n verticalAlign: \"middle\",\r\n },\r\n plotOptions: {\r\n series: {\r\n toolTip: {\r\n enabled: false,\r\n },\r\n enableMouseTracking: false,\r\n states: {\r\n hover: {\r\n enabled: false,\r\n },\r\n },\r\n },\r\n line: {\r\n marker: {\r\n enabled: true,\r\n },\r\n dataLabels: {\r\n enabled: true,\r\n align: \"left\",\r\n allowOverlap: true,\r\n distance: 32,\r\n padding: 8,\r\n verticalAlign: \"middle\",\r\n },\r\n lineWidth: 0,\r\n },\r\n columnrange: {\r\n borderWidth: 0,\r\n pointWidth: 1,\r\n },\r\n },\r\n series: [],\r\n subtitle: {\r\n text: \"\",\r\n style: {\r\n fontSize: \"1rem\",\r\n color: \"#333333\",\r\n },\r\n },\r\n title: {\r\n text:\r\n \"There is currently no data to display.<br />Please make selections from the form below.\",\r\n style: {\r\n fontSize: \"1.25rem\",\r\n },\r\n },\r\n xAxis: {\r\n title: {\r\n text: \"Storm Surge Recurrence\",\r\n style: {\r\n fontSize: \"0.75rem\",\r\n },\r\n margin: 10,\r\n },\r\n categories: [\r\n \"Tide Range\",\r\n \"Monthly\",\r\n \"1 yr\",\r\n \"2 yr\",\r\n \"5 yr\",\r\n \"10 yr\",\r\n \"20 yr\",\r\n \"50 yr\",\r\n \"100 yr\",\r\n ],\r\n opposite: true,\r\n labels: {\r\n autoRotation: false,\r\n style: {\r\n fontSize: \"0.75rem\",\r\n },\r\n },\r\n },\r\n yAxis: {\r\n title: {\r\n text: \"\",\r\n style: {\r\n fontSize: \"0.75rem\",\r\n },\r\n },\r\n labels: {\r\n style: {\r\n fontSize: \"0.75rem\",\r\n },\r\n },\r\n },\r\n },\r\n summaryStatistics: null,\r\n };\r\n },\r\n computed: {\r\n summaryStatisticsPage() {\r\n return this.$route.path === \"/year/3/2\";\r\n },\r\n graphPage() {\r\n return this.$route.path === \"/year/3/3\";\r\n },\r\n },\r\n methods: {\r\n tideGaugeClicked(value) {\r\n this.model.region = value.region.split(\",\")[0];\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n this.model.tideGauge = value.tideGauge;\r\n },\r\n getTideGaugeName() {\r\n this.tideGaugeName === \"\";\r\n if (this.model.tideGauge !== \"\") {\r\n const targetGauge = this.tideGauges.find((tg) => {\r\n return tg.value === this.model.tideGauge;\r\n });\r\n if (targetGauge) {\r\n this.tideGaugeName = targetGauge.text;\r\n }\r\n }\r\n },\r\n updateSummaryStatistics() {\r\n if (\r\n this.model.region !== \"\" &&\r\n this.model.tideGauge !== \"\" &&\r\n this.model.year !== \"\" &&\r\n this.model.scenario !== \"\" &&\r\n this.model.dataOption !== \"\"\r\n ) {\r\n this.summaryStatistics = this.$calcUtils.getSeaLevelProjectionsAndProbabilityExceedingGMSL(\r\n this.model.region,\r\n this.model.dataOption,\r\n this.model.scenario,\r\n this.model.year,\r\n this.model.tideGauge\r\n );\r\n } else {\r\n this.summaryStatistics = null;\r\n }\r\n },\r\n updateChart() {\r\n let series = [];\r\n this.chartOptions.data = series;\r\n if (this.model.tideGauge !== \"\") {\r\n series = this.$calcUtils.getTidalRangeSuperimposedStormSurgeEvents(\r\n this.model.tideGauge\r\n );\r\n }\r\n this.chartOptions.series = series;\r\n if (series.length === 0) {\r\n this.chartOptions.title.text =\r\n \"There is currently no data to display.<br />Please make selections from the form below.\";\r\n this.chartOptions.subtitle.text = \"\";\r\n this.chartOptions.yAxis.title.text = \"\";\r\n } else {\r\n this.chartOptions.title.text =\r\n \"Tide Range Superimposed on Storm Surge Events\";\r\n this.chartOptions.subtitle.text = this.tideGaugeName;\r\n this.chartOptions.yAxis.title.text =\r\n \"Tides and Storm Surge Effect on Local Mean Sea Level (ft)\";\r\n }\r\n //console.log(this.chartOptions);\r\n },\r\n changeRegion(value) {\r\n if (value) {\r\n this.model.region = value;\r\n }\r\n this.$emit(\"changeRegion\", this.model.region);\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n this.model.tideGauge = \"\";\r\n this.tideGaugeName = \"\";\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n this.updateSummaryStatistics();\r\n this.updateChart();\r\n },\r\n changeTideGauge(value) {\r\n if (value) {\r\n this.model.tideGauge = value;\r\n }\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n this.getTideGaugeName();\r\n this.updateSummaryStatistics();\r\n this.updateChart();\r\n },\r\n changeYear() {\r\n this.$emit(\"changeYear\", this.model.year);\r\n this.updateSummaryStatistics();\r\n },\r\n changeScenario() {\r\n this.$emit(\"changeScenario\", this.model.scenario);\r\n this.updateSummaryStatistics();\r\n },\r\n changeDataOption() {\r\n this.$emit(\"changeDataOption\", this.model.dataOption);\r\n this.updateSummaryStatistics();\r\n },\r\n previous() {\r\n this.$router.push({ path: \"/year/2\" });\r\n },\r\n reset() {\r\n this.model.region = \"\";\r\n this.$emit(\"changeRegion\", this.model.region);\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.model.region);\r\n this.model.tideGauge = \"\";\r\n this.tideGaugeName = \"\";\r\n this.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n this.model.year = \"\";\r\n this.$emit(\"changeYear\", this.model.year);\r\n this.model.scenario = \"\";\r\n this.$emit(\"changeScenario\", this.model.scenario);\r\n this.model.dataOption = \"Area\";\r\n this.$emit(\"changeDataOption\", this.model.dataOption);\r\n this.updateSummaryStatistics();\r\n this.updateChart();\r\n },\r\n },\r\n mounted() {\r\n this.regions = this.$dataUtils.getRegions();\r\n if (this.region) {\r\n this.model.region = this.region;\r\n }\r\n this.tideGauges = this.$dataUtils.getTideGauges(this.region);\r\n if (this.tideGauge) {\r\n this.model.tideGauge = this.tideGauge;\r\n }\r\n this.years = this.$dataUtils.getYears();\r\n if (this.year) {\r\n this.model.year = this.year;\r\n }\r\n this.scenarios = this.$dataUtils.getScenarios();\r\n if (this.scenario) {\r\n this.model.scenario = this.scenario;\r\n }\r\n if (this.dataOption) {\r\n this.model.dataOption = this.dataOption;\r\n }\r\n this.getTideGaugeName();\r\n this.updateSummaryStatistics();\r\n this.updateChart();\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.display-none {\r\n display: none;\r\n}\r\n.nav-tabs .nav-link {\r\n background-color: #e5f1f8;\r\n margin-left: 2px;\r\n}\r\n.nav-tabs .nav-link.active,\r\n.nav-tabs .nav-item.show .nav-link {\r\n border-color: #fff;\r\n background-color: rgba(0, 113, 188, 0.75);\r\n color: #fff;\r\n}\r\n.border-bottom-light {\r\n border-bottom: 1px solid #e5f1f8;\r\n}\r\n.help-icon-1 {\r\n position: absolute;\r\n right: 1em;\r\n top: 0.25em;\r\n z-index: 10;\r\n}\r\n.help-icon-2 {\r\n position: absolute;\r\n right: 1em;\r\n top: 4.75em;\r\n z-index: 10;\r\n}\r\n.exceedance-year-toast {\r\n position: absolute;\r\n top: 5em;\r\n left: 6em;\r\n}\r\n.bg-light {\r\n background-color: #e5f0f8 !important;\r\n}\r\n.border {\r\n border-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\nh4 {\r\n font-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n \"Arial\", sans-serif;\r\n padding-bottom: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Year3.vue?vue&type=template&id=4dd6ab47&scoped=true\"\nimport script from \"./Year3.vue?vue&type=script&lang=js\"\nexport * from \"./Year3.vue?vue&type=script&lang=js\"\nimport style0 from \"./Year3.vue?vue&type=style&index=0&id=4dd6ab47&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4dd6ab47\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"shadow-sm border p-0\"},[_c('ResultsMap',{attrs:{\"selectedRegion\":_vm.region,\"selectedTideGauge\":_vm.tideGauge,\"selectedYear\":_vm.year,\"selectedScenario\":_vm.scenario,\"selectedDataOption\":_vm.dataOption},on:{\"tideGaugeClicked\":_vm.tideGaugeClicked}}),(_vm.region)?_c('a',{staticClass:\"btn btn-sm btn-light\",staticStyle:{\"position\":\"absolute\",\"bottom\":\"100px\",\"right\":\"10px\"},attrs:{\"href\":_vm.$mapServerConfig.slrGeoFilesUrl + '/' + _vm.getDownloadByRegion(_vm.region),\"target\":\"_blank\"}},[_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"download\"}}),_vm._v(\"Download region data \")],1):_vm._e(),_vm._m(0)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"p-3 pt-5\"},[_vm._v(\"Known local effects have been incorporated into the map layers.\"),_c('br'),_vm._v(\" Projections are based on current land elevations and do not take into account how the coastline will evolve as the sea level rises or how humans will modify the coastline.\")])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"resultsMap\"}},[_c('div',{attrs:{\"id\":\"viewDiv\"}},[_c('img',{attrs:{\"id\":\"loading\",\"src\":require(\"../assets/images/loader.gif\")}}),_c('div',{attrs:{\"id\":\"hover\"}})])])}]\n\nexport { render, staticRenderFns }","<template>\r\n <div id=\"resultsMap\">\r\n <div id=\"viewDiv\">\r\n <img id=\"loading\" src=\"../assets/images/loader.gif\" />\r\n\r\n <div id=\"hover\"></div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"ResultsMap\",\r\n props: {\r\n selectedRegion: String,\r\n selectedTideGauge: String,\r\n selectedYear: String,\r\n selectedScenario: String,\r\n selectedDataOption: String,\r\n },\r\n data() {\r\n return {\r\n region: \"\",\r\n\t\t\ttideGauge: \"\",\r\n year: \"\",\r\n scenario: \"\",\r\n\t\t\tdataOption: \"\",\r\n viewObj: null,\r\n MapImageLayer: null,\r\n mapLayerConfig: null,\r\n FeatureLayer: null,\r\n Graphic: null,\r\n Query: null,\r\n };\r\n },\r\n watch: {\r\n selectedRegion(val) {\r\n this.region = val;\r\n this.showResultsMap();\r\n this.zoomToGauges();\r\n },\r\n selectedTideGauge(val) {\r\n this.tideGauge = val;\r\n this.showResultsMap();\r\n this.highlightTideGauge(null);\r\n },\r\n selectedYear(val) {\r\n this.year = val;\r\n this.showResultsMap();\r\n },\r\n selectedScenario(val) {\r\n this.scenario = val;\r\n this.showResultsMap();\r\n },\r\n selectedDataOption(val) {\r\n this.dataOption = val;\r\n this.showResultsMap();\r\n },\r\n },\r\n created() {\r\n this.$root.$refs.ResultsMap = this;\r\n this.viewObj = null;\r\n this.MapImageLayer = null;\r\n this.mapLayerConfig = null;\r\n if (this.selectedRegion) {\r\n\t\t\tthis.region = this.selectedRegion;\r\n\t\t}\r\n\t\tif (this.selectedTideGauge) {\r\n\t\t\tthis.tideGauge = this.selectedTideGauge;\r\n\t\t}\r\n if (this.selectedYear) {\r\n this.year = this.selectedYear;\r\n }\r\n if (this.selectedScenario) {\r\n this.scenario = this.selectedScenario;\r\n }\r\n if (this.selectedDataOption) {\r\n this.dataOption = this.selectedDataOption;\r\n }\r\n },\r\n methods: {\r\n showResultsMap: function() {\r\n var vm = this;\r\n if (\r\n vm.region &&\r\n vm.region !== \"\" &&\r\n vm.dataOption &&\r\n vm.dataOption !== \"\" &&\r\n vm.scenario &&\r\n vm.scenario !== \"\" &&\r\n vm.year &&\r\n vm.year !== \"\" &&\r\n vm.viewObj != null\r\n ) {\r\n vm.$mapUtils.addResultLayerToMap(\r\n vm.region,\r\n vm.dataOption,\r\n vm.scenario,\r\n vm.year,\r\n vm.mapLayerConfig,\r\n vm.viewObj,\r\n vm.MapImageLayer\r\n );\r\n }\r\n },\r\n tideGaugeClicked: function(region, tideGauge) {\r\n this.$emit(\"tideGaugeClicked\", { region: region, tideGauge: tideGauge });\r\n },\r\n\r\n zoomToGauges: function() {\r\n var vm = this;\r\n vm.$mapUtils.zoomToGauges(vm.region, vm.viewObj, vm.Query);\r\n },\r\n\r\n highlightTideGauge: function(feature) {\r\n var vm = this;\r\n var vmutils = this.$mapUtils;\r\n if (vm.viewObj && vm.viewObj.map) {\r\n if (feature === null) {\r\n //If the user chose from the dropdown then we don't have the feature yet\r\n if (vm.tideGauge === \"\") {\r\n vmutils.clearSelectedGauge(vm.viewObj);\r\n } else {\r\n var gaugesLayer = vm.viewObj.map.findLayerById(\"gauges\");\r\n const query = new vm.Query();\r\n query.where = \"id = \" + vm.tideGauge;\r\n query.outSpatialReference = { wkid: 102100 };\r\n query.returnGeometry = true;\r\n query.outFields = [\"*\"];\r\n\r\n gaugesLayer.queryFeatures(query).then(function(results) {\r\n // prints the array of result graphics to the console\r\n vmutils.highlightTideGauge(results.features[0], vm.viewObj);\r\n });\r\n }\r\n } else {\r\n //If they click the map then we have the feature and can highlight it\r\n vmutils.highlightTideGauge(feature, vm.viewObj);\r\n }\r\n }\r\n },\r\n\r\n createMap: function() {\r\n const vm = this; //create reference to vue instance\r\n const mapServerConfig = vm.$mapServerConfig;\r\n const loadModules = vm.$loadModules;\r\n\r\n loadModules(\r\n [\r\n \"esri/views/MapView\",\r\n \"esri/Map\",\r\n \"esri/widgets/BasemapGallery\",\r\n \"esri/widgets/Expand\",\r\n \"esri/widgets/ScaleBar\",\r\n \"esri/layers/MapImageLayer\",\r\n \"esri/widgets/LayerList\",\r\n \"esri/core/watchUtils\",\r\n \"dojo/fx/Toggler\",\r\n \"esri/layers/GraphicsLayer\",\r\n \"esri/tasks/support/Query\",\r\n \"esri/layers/FeatureLayer\",\r\n \"esri/Graphic\",\r\n \"dojo/dom-style\",\r\n \"dojo/html\",\r\n ],\r\n { css: true }\r\n ).then(\r\n ([\r\n MapView,\r\n Map,\r\n BasemapGallery,\r\n Expand,\r\n ScaleBar,\r\n MapImageLayer,\r\n LayerList,\r\n watchUtils,\r\n Toggler,\r\n GraphicsLayer,\r\n Query,\r\n FeatureLayer,\r\n Graphic,\r\n domStyle,\r\n dojoHtml,\r\n ]) => {\r\n const mapLayerConfig = {\r\n mapLayers: {\r\n regions: {\r\n service: mapServerConfig.epaRegionsServiceUrl,\r\n opacity: 0.8,\r\n layers: [2, 3],\r\n title: \"EPA Regions\",\r\n id: \"epa-regions\",\r\n },\r\n results: {\r\n service: mapServerConfig.slrServiceUrl,\r\n layers: [],\r\n opacity: 0.8,\r\n title: \"\",\r\n id: \"slr-results\",\r\n },\r\n },\r\n mapStartCenter: [-98.58, 39.83],\r\n mapStartZoom: 2,\r\n loading: null,\r\n };\r\n\r\n //Create the map\r\n var map = new Map({\r\n basemap: \"satellite\",\r\n });\r\n\r\n //Create the 2D map view\r\n var view = new MapView({\r\n container: \"viewDiv\",\r\n map: map,\r\n center: mapLayerConfig.mapStartCenter,\r\n zoom: mapLayerConfig.mapStartZoom,\r\n highlightOptions: {\r\n color: [0, 255, 255, 1],\r\n haloColor: [0, 255, 255, 1],\r\n haloOpacity: 1,\r\n fillOpacity: 0.5,\r\n },\r\n });\r\n\r\n //store ESRI objects in Vue\r\n vm.viewObj = view;\r\n vm.MapImageLayer = MapImageLayer;\r\n vm.mapLayerConfig = mapLayerConfig;\r\n vm.FeatureLayer = FeatureLayer;\r\n vm.Graphic = Graphic;\r\n vm.Query = Query;\r\n\r\n vm.mapLayerConfig.loading = new Toggler({\r\n node: \"loading\",\r\n });\r\n\r\n // Display the loading indicator when the view is updating\r\n watchUtils.whenTrue(view, \"updating\", function() {\r\n mapLayerConfig.loading.show();\r\n });\r\n\r\n // Hide the loading indicator when the view stops updating\r\n watchUtils.whenFalse(view, \"updating\", function() {\r\n mapLayerConfig.loading.hide();\r\n });\r\n\r\n view.when(function() {\r\n \r\n //Add the basemap gallery\r\n var basemapGallery = new BasemapGallery({\r\n view: view,\r\n container: document.createElement(\"div\"),\r\n });\r\n var bgExpand = new Expand({\r\n view: view,\r\n content: basemapGallery,\r\n });\r\n view.ui.add(bgExpand, {\r\n position: \"top-left\",\r\n });\r\n\r\n //Add scalebar widget\r\n var scaleBar = new ScaleBar({\r\n view: view,\r\n unit: \"dual\",\r\n });\r\n // Add widget to the bottom left corner of the view\r\n view.ui.add(scaleBar, {\r\n position: \"bottom-left\",\r\n });\r\n\r\n //Add the layer list\r\n var layerList = new LayerList({\r\n view: view,\r\n listItemCreatedFunction: function(event) {\r\n const item = event.item;\r\n if (item.layer.id != \"slr-results\") {\r\n item.layer.listMode = \"hide\";\r\n }\r\n\r\n if (item.layer.type != \"group\" && item.layer.parent != null) {\r\n // don't show legend twice\r\n item.panel = {\r\n content: \"legend\",\r\n open: true,\r\n };\r\n }\r\n },\r\n });\r\n\r\n var bgExpandLayerList = new Expand({\r\n view: view,\r\n content: layerList,\r\n expandTooltip: \"Layers/Legend\",\r\n });\r\n\r\n view.ui.add(bgExpandLayerList, {\r\n position: \"top-left\",\r\n });\r\n\r\n //Create the graphicsLayer to use for showing selected gauge\r\n var selectedGauge = new GraphicsLayer();\r\n selectedGauge.id = \"selected-gauge\";\r\n map.add(selectedGauge);\r\n\r\n //Add the layers to the map\r\n vm.$mapUtils.addLayers(\r\n mapLayerConfig,\r\n view,\r\n MapImageLayer,\r\n false,\r\n false\r\n );\r\n\r\n //Add All gauges to the map\r\n vm.$mapUtils.addAllGaugesToMap(\r\n view,\r\n vm.tideGaugeClicked,\r\n vm.highlightTideGauge,\r\n FeatureLayer,\r\n Graphic,\r\n domStyle,\r\n dojoHtml,\r\n 120\r\n );\r\n\r\n vm.showResultsMap();\r\n\r\n //zoom to region if selected\r\n if (vm.region && vm.region !== \"\") {\r\n vm.zoomToGauges();\r\n }\r\n\r\n //highlight to tide gauge if selected\r\n if (vm.tideGauge && vm.tideGauge !== \"\") {\r\n vm.highlightTideGauge(null);\r\n }\r\n\r\n });\r\n\r\n view.popup.autoCloseEnabled = true;\r\n }\r\n ); //end esri\r\n }, //end createMap\r\n }, //end methods\r\n\r\n mounted() {\r\n this.createMap();\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n#viewDiv {\r\n background-color: #fff;\r\n min-width: 200px;\r\n min-height: 500px;\r\n width: 100%;\r\n}\r\n\r\n#loading {\r\n margin: 0;\r\n position: absolute;\r\n width: 25px;\r\n height: 25px;\r\n top: 50%;\r\n left: 50%;\r\n margin-right: -50%;\r\n}\r\n\r\n#hover {\r\n display: none;\r\n min-width: 100px;\r\n min-height: 30px;\r\n background-color: white;\r\n border-color: #0071bc;\r\n border-width: 1px;\r\n border-style: solid;\r\n position: absolute;\r\n z-index: 1000;\r\n font-size: x-small;\r\n padding: 1em;\r\n border-radius: 5px;\r\n margin-left: 10px;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResultsMap.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResultsMap.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ResultsMap.vue?vue&type=template&id=d3b3a146&scoped=true\"\nimport script from \"./ResultsMap.vue?vue&type=script&lang=js\"\nexport * from \"./ResultsMap.vue?vue&type=script&lang=js\"\nimport style0 from \"./ResultsMap.vue?vue&type=style&index=0&id=d3b3a146&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d3b3a146\",\n null\n \n)\n\nexport default component.exports","<template>\r\n\t<div class=\"shadow-sm border p-0\">\r\n\t\t<ResultsMap :selectedRegion=\"region\" :selectedTideGauge=\"tideGauge\" :selectedYear=\"year\" :selectedScenario=\"scenario\" :selectedDataOption=\"dataOption\"\r\n\t\t\t@tideGaugeClicked=\"tideGaugeClicked\" />\r\n\t\t<a v-if=\"region\" :href=\"$mapServerConfig.slrGeoFilesUrl + '/' + getDownloadByRegion(region)\" target=\"_blank\"\r\n\t\t\tclass=\"btn btn-sm btn-light\" style=\"position:absolute;bottom:100px;right:10px;\">\r\n\t\t\t<b-icon icon=\"download\" class=\"mr-2\"></b-icon>Download region data\r\n\t\t</a>\r\n\t\t<p class=\"p-3 pt-5\">Known local effects have been incorporated into the map layers.<br />\r\n\t\t\tProjections are based on current land\r\n\t\t\televations and do not take into account how the coastline will\r\n\t\t\tevolve as the sea level rises or how humans will modify the coastline.</p>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\nimport ResultsMap from \"../components/ResultsMap\";\r\n\r\nimport gisDownloadJson from \"../data/gis_download.json\";\r\n\r\nexport default {\r\n\tname: \"Year3_1\",\r\n\tcomponents: {\r\n\t\tResultsMap\r\n\t},\r\n\tprops: {\r\n\t\tregion: String,\r\n\t\ttideGauge: String,\r\n\t\tyear: String,\r\n\t\tscenario: String,\r\n\t\tdataOption: String\r\n\t},\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tmodel: {\r\n\t\t\t\tregion: \"\",\r\n\t\t\t\ttideGauge: \"\",\r\n\t\t\t},\r\n\t\t\tpublicPath: process.env.VUE_APP_BASE_ROUTE\r\n\t\t};\r\n\t},\r\n\tmethods: {\r\n\t\ttideGaugeClicked(value) {\r\n\t\t\tthis.model.region = value.region.split(\",\")[0];\r\n\t\t\tthis.$emit(\"changeRegion\", this.model.region);\r\n\t\t\tthis.model.tideGauge = value.tideGauge;\r\n\t\t\tthis.$emit(\"changeTideGauge\", this.model.tideGauge);\r\n\t\t},\r\n\t\tgetDownloadByRegion(region) {\r\n\t\t\tconst download = gisDownloadJson.filter((d) => {\r\n\t\t\t\treturn d[\"region\"] === region;\r\n\t\t\t})[0];\r\n\t\t\treturn download.download;\r\n\t\t}\r\n\t},\r\n\tcreated() {\r\n\t\tif (this.region && this.region !== \"\") {\r\n\t\t\tthis.model.region = this.region;\r\n\t\t}\r\n\t\tif (this.tideGauge && this.tideGauge !== \"\") {\r\n\t\t\tthis.model.tideGauge = this.tideGauge;\r\n\t\t}\r\n\t}\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.border {\r\n\tborder-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\n\r\nh5 {\r\n\tfont-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n\t\t\"Arial\", sans-serif;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3_1.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3_1.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Year3_1.vue?vue&type=template&id=d218b160&scoped=true\"\nimport script from \"./Year3_1.vue?vue&type=script&lang=js\"\nexport * from \"./Year3_1.vue?vue&type=script&lang=js\"\nimport style0 from \"./Year3_1.vue?vue&type=style&index=0&id=d218b160&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d218b160\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"shadow-sm border\",staticStyle:{\"min-height\":\"400px\"}},[(!_vm.summaryStatistics)?_c('div',{staticClass:\"p-3 text-center\"},[_vm._m(0),_vm._m(1)]):_vm._e(),(_vm.summaryStatistics)?_c('div',[_c('div',{ref:\"summary\"},[_c('b-table-simple',{attrs:{\"responsive\":\"\",\"small\":\"\",\"caption-top\":\"\"}},[_c('caption',{staticClass:\"font-weight-bold\"},[_vm._v(\" Probability of \"),_c('i',[_c('u',[_vm._v(\"Exceeding\")])]),_vm._v(\" Global Mean Sea Level in 2100 \")]),_c('b-thead',{attrs:{\"head-variant\":\"light\"}},[_c('b-tr',[_c('b-th',[_vm._v(\" SSP 1-2.6 \"),_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help2_1\",modifiers:{\"help2_1\":true}}],staticClass:\"help-icon-1 ml-2\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help2_1\",\"title\":\"SSP 1-2.6\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Shared Socioeconomic Pathways (SSPs) represent alternative plausible trajectories of 21st-century GDP and population growth and the pace and pervasiveness of socioeconomic and technological progress within individual nations and across the world. SSPs are incorporated into models that simulate the corresponding evolution of the energy system and the resulting greenhouse gas trajectories. \")]),_c('p',[_c('b',[_vm._v(\"SSP 1-2.6:\")]),_vm._v(\" These scenarios reflect rapidly declining and net-negative CO\"),_c('sub',[_vm._v(\"2\")]),_vm._v(\" emissions (with CO\"),_c('sub',[_vm._v(\"2\")]),_vm._v(\" removal from the atmosphere exceeding human-caused emissions) by 2100. Mitigation efforts include increased renewable energy. Adaptive capacity reflects effective governance institutions, reduced inequality, and international cooperation (SSP1-2.6). These scenarios are consistent with an average increase in global air temperature of 1.5°C by 2100. \")])])],1),_c('b-th',[_vm._v(\" SSP 2-4.5 - SSP 3-7.0 \"),_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help2_2\",modifiers:{\"help2_2\":true}}],staticClass:\"help-icon-2 ml-2\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help2_2\",\"title\":\"SSP 2-4.5 - SSP 3-7.0\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Shared Socioeconomic Pathways (SSPs) represent alternative plausible trajectories of 21st-century GDP and population growth and the pace and pervasiveness of socioeconomic and technological progress within individual nations and across the world. SSPs are incorporated into models that simulate the corresponding evolution of the energy system and the resulting greenhouse gas trajectories. \")]),_c('p',[_c('b',[_vm._v(\"SSP 2-4.5:\")]),_vm._v(\" These scenarios reflect reductions in CO\"),_c('sub',[_vm._v(\"2\")]),_vm._v(\" emissions from current levels. Total annual CO\"),_c('sub',[_vm._v(\"2\")]),_vm._v(\" emissions in 2100 are 46% (RCP4.5) and 67% (SSP2-4.5) less than the year 2000. Mitigation efforts include low-carbon technology (SSP2-4.5) and expanded renewable energy compared to 2000 (RCP 4.5). These scenarios are consistent with an average increase in global air temperature of 3.0°C by 2100. \")]),_c('p',[_c('b',[_vm._v(\"SSP 3-7.0:\")]),_vm._v(\" These scenarios reflect high CO\"),_c('sub',[_vm._v(\"2\")]),_vm._v(\" emissions with limited (RCP6.0) or no (SSP3-7.0) mitigation. Total annual CO\"),_c('sub',[_vm._v(\"2\")]),_vm._v(\" emissions in 2100 are more than 75% higher than in 2000 in RCP6.0, and triple that of 2000 emissions in SSP3-7.0. Compared to 2000, both scenarios include expanded fossil fuel development and population growth but slow economic growth. These scenarios are consistent with an average increase in global air temperature of 3.0°C by 2100. \")])])],1),_c('b-th',[_vm._v(\" SSP 5-8.5 \"),_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help2_3\",modifiers:{\"help2_3\":true}}],staticClass:\"help-icon-2 ml-2\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help2_3\",\"title\":\"SSP 5-8.5\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Shared Socioeconomic Pathways (SSPs) represent alternative plausible trajectories of 21st-century GDP and population growth and the pace and pervasiveness of socioeconomic and technological progress within individual nations and across the world. SSPs are incorporated into models that simulate the corresponding evolution of the energy system and the resulting greenhouse gas trajectories. \")]),_c('p',[_c('b',[_vm._v(\"SSP 5-8.5:\")]),_vm._v(\" Among the scenarios described here, these reflect the highest range of carbon dioxide (CO\"),_c('sub',[_vm._v(\"2\")]),_vm._v(\") emissions and no mitigation. Total annual global CO\"),_c('sub',[_vm._v(\"2\")]),_vm._v(\" emissions in 2100 are quadruple emissions in 2000 (RCP8.5 and SSP5-8.5). Population growth in 2100 doubles from 2000 in RCP8.5, but the SSP5-8.5 population remains relatively stable, with approximately 13% growth in 2100 from 2005. Both scenarios include fossil fuel development, but SSP5-8.5 has higher economic growth than RCP8.5. These scenarios are consistent with an average increase in global air temperature of 5.0°C by 2100. \")])])],1),_c('b-th',[_vm._v(\" SSP 5-8.5 with Low Confidence Processes \"),_c('b-icon',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.help2_4\",modifiers:{\"help2_4\":true}}],staticClass:\"help-icon-2 ml-2\",attrs:{\"icon\":\"question-circle\",\"variant\":\"default\"}}),_c('b-modal',{attrs:{\"id\":\"help2_4\",\"title\":\"SSP 5-8.5 with Low Confidence Processes\",\"title-tag\":\"h6\",\"hide-footer\":\"\"}},[_c('p',[_vm._v(\" Shared Socioeconomic Pathways (SSPs) represent alternative plausible trajectories of 21st-century GDP and population growth and the pace and pervasiveness of socioeconomic and technological progress within individual nations and across the world. SSPs are incorporated into models that simulate the corresponding evolution of the energy system and the resulting greenhouse gas trajectories. \")]),_c('p',[_c('b',[_vm._v(\"SSP 5-8.5 with Low Confidence Processes:\")]),_vm._v(\" The SSP5-8.5 low confidence scenarios incorporate a representation of the potential effect of low-likelihood, high-impact ice sheet processes that cannot be ruled out. These scenarios are not associated with a single global temperature increase, because they include a combination of high emissions, high warming and the occurrence of low confidence processes. \")])])],1)],1)],1),_c('b-tbody',[_c('b-tr',{attrs:{\"variant\":\"warning\"}},[_c('b-td',[_vm._v(_vm._s(_vm.getTextForGlobalPercent(_vm.summaryStatistics[\"SSP 1-2.6\"]))+\"%\")]),_c('b-td',[_vm._v(_vm._s(_vm.getTextForGlobalPercent(_vm.summaryStatistics[\"SSP 2-4.5 - SSP 3-7.0\"]))+\"%\")]),_c('b-td',[_vm._v(_vm._s(_vm.getTextForGlobalPercent(_vm.summaryStatistics[\"SSP 5-8.5\"]))+\"%\")]),_c('b-td',[_vm._v(_vm._s(_vm.getTextForGlobalPercent(_vm.summaryStatistics[\"SSP 5-8.5 with Low Confidence Processes\"]))+\"%\")])],1)],1)],1),_c('b-table-simple',{staticClass:\"border\",attrs:{\"responsive\":\"\",\"small\":\"\",\"caption-top\":\"\"}},[_c('caption',[_c('b',[_vm._v(\"Global Mean Sea Level Projection in \"+_vm._s(_vm.summaryStatistics[\"Year\"]))])]),_c('b-thead',{attrs:{\"head-variant\":\"light\"}},[_c('b-tr',[_c('b-th',[_vm._v(\"17th Percentile\")]),_c('b-th',[_vm._v(\"Median\")]),_c('b-th',[_vm._v(\"83rd Percentile\")])],1)],1),_c('b-tbody',[_c('b-tr',{attrs:{\"variant\":\"warning\"}},[_c('b-td',[_vm._v(_vm._s(_vm.summaryStatistics[\"GMSL 17th percentile\"])+\" ft\")]),_c('b-td',[_vm._v(_vm._s(_vm.summaryStatistics[\"GMSL Median\"])+\" ft\")]),_c('b-td',[_vm._v(_vm._s(_vm.summaryStatistics[\"GMSL 83rd percentile\"])+\" ft\")])],1)],1)],1),_c('b-table-simple',{staticClass:\"border mb-1\",attrs:{\"responsive\":\"\",\"small\":\"\",\"caption-top\":\"\"}},[_c('caption',[_c('b',[_vm._v(\"Local Mean Sea Level Projection for \"+_vm._s(_vm.tideGaugeName)+\" in \"+_vm._s(_vm.summaryStatistics[\"Year\"]))])]),_c('b-thead',{attrs:{\"head-variant\":\"light\"}},[_c('b-tr',[_c('b-th',[_vm._v(\"17th Percentile\")]),_c('b-th',[_vm._v(\"Median\")]),_c('b-th',[_vm._v(\"83rd Percentile\")])],1)],1),_c('b-tbody',[_c('b-tr',{attrs:{\"variant\":\"warning\"}},[_c('b-td',[_vm._v(_vm._s(_vm.summaryStatistics[\"LMSL 17th percentile\"])+\" ft\")]),_c('b-td',[_vm._v(_vm._s(_vm.summaryStatistics[\"LMSL Median\"])+\" ft\")]),_c('b-td',[_vm._v(_vm._s(_vm.summaryStatistics[\"LMSL 83rd percentile\"])+\" ft\")])],1),_c('b-tr',[_c('b-td',[_vm._v(\" \"+_vm._s(_vm.getSymbolForLocalPercent( _vm.summaryStatistics[\"LMSL 17th percentage of GMSL\"] ))+\" \"+_vm._s(_vm.summaryStatistics[\"LMSL 17th percentage of GMSL\"])+\"% \")]),_c('b-td',[_vm._v(\" \"+_vm._s(_vm.getSymbolForLocalPercent( _vm.summaryStatistics[\"LMSL Median percentage of GMSL\"] ))+\" \"+_vm._s(_vm.summaryStatistics[\"LMSL Median percentage of GMSL\"])+\"% \")]),_c('b-td',[_vm._v(\" \"+_vm._s(_vm.getSymbolForLocalPercent( _vm.summaryStatistics[\"LMSL 83rd percentage of GMSL\"] ))+\" \"+_vm._s(_vm.summaryStatistics[\"LMSL 83rd percentage of GMSL\"])+\"% \")])],1)],1)],1)],1),_c('div',{staticClass:\"text-center p-0\"},[_c('b-button',{staticClass:\"mb-1\",attrs:{\"size\":\"sm\",\"variant\":\"light\"},on:{\"click\":_vm.downloadSummary}},[_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"download\"}}),_vm._v(\" Download summary \")],1)],1),_c('hr'),_c('p',{staticClass:\"pl-3 pr-3 pt-1 pb-1 mb-3\"},[_vm._v(\" Projections are based on current land elevations and do not take into account how the coastline will evolve as the sea level rises or how humans will modify the coastline. \")])]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h4',[_vm._v(\" Probability of \"),_c('i',[_vm._v(\"Exceeding\")]),_vm._v(\" Global Mean Sea Level \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_vm._v(\" There is currently no data to display.\"),_c('br'),_vm._v(\"Please make selections from the form below. \")])}]\n\nexport { render, staticRenderFns }","<template>\r\n <div class=\"shadow-sm border\" style=\"min-height:400px\">\r\n <div v-if=\"!summaryStatistics\" class=\"p-3 text-center\">\r\n <h4>\r\n Probability of\r\n <i>Exceeding</i> Global Mean Sea Level\r\n </h4>\r\n <p>\r\n There is currently no data to display.<br />Please make selections from\r\n the form below.\r\n </p>\r\n </div>\r\n <div v-if=\"summaryStatistics\">\r\n <div ref=\"summary\">\r\n <b-table-simple responsive small caption-top>\r\n <caption class=\"font-weight-bold\">\r\n Probability of\r\n <i>\r\n <u>Exceeding</u>\r\n </i>\r\n Global Mean Sea Level in 2100\r\n </caption>\r\n <b-thead head-variant=\"light\">\r\n <b-tr>\r\n <b-th>\r\n SSP 1-2.6\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help2_1\r\n class=\"help-icon-1 ml-2\"\r\n ></b-icon>\r\n <b-modal\r\n id=\"help2_1\"\r\n title=\"SSP 1-2.6\"\r\n title-tag=\"h6\"\r\n hide-footer\r\n >\r\n <p>\r\n Shared Socioeconomic Pathways (SSPs) represent alternative\r\n plausible trajectories of 21st-century GDP and population\r\n growth and the pace and pervasiveness of socioeconomic and\r\n technological progress within individual nations and across\r\n the world. SSPs are incorporated into models that simulate\r\n the corresponding evolution of the energy system and the\r\n resulting greenhouse gas trajectories.\r\n </p>\r\n <p>\r\n <b>SSP 1-2.6:</b> These scenarios reflect rapidly declining\r\n and net-negative CO<sub>2</sub> emissions (with CO<sub\r\n >2</sub\r\n >\r\n removal from the atmosphere exceeding human-caused\r\n emissions) by 2100. Mitigation efforts include increased\r\n renewable energy. Adaptive capacity reflects effective\r\n governance institutions, reduced inequality, and\r\n international cooperation (SSP1-2.6). These scenarios are\r\n consistent with an average increase in global air\r\n temperature of 1.5°C by 2100.\r\n </p>\r\n </b-modal>\r\n </b-th>\r\n <b-th>\r\n SSP 2-4.5 - SSP 3-7.0\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help2_2\r\n class=\"help-icon-2 ml-2\"\r\n ></b-icon>\r\n <b-modal\r\n id=\"help2_2\"\r\n title=\"SSP 2-4.5 - SSP 3-7.0\"\r\n title-tag=\"h6\"\r\n hide-footer\r\n >\r\n <p>\r\n Shared Socioeconomic Pathways (SSPs) represent alternative\r\n plausible trajectories of 21st-century GDP and population\r\n growth and the pace and pervasiveness of socioeconomic and\r\n technological progress within individual nations and across\r\n the world. SSPs are incorporated into models that simulate\r\n the corresponding evolution of the energy system and the\r\n resulting greenhouse gas trajectories.\r\n </p>\r\n <p>\r\n <b>SSP 2-4.5:</b> These scenarios reflect reductions in\r\n CO<sub>2</sub> emissions from current levels. Total annual\r\n CO<sub>2</sub>\r\n emissions in 2100 are 46% (RCP4.5) and 67% (SSP2-4.5) less\r\n than the year 2000. Mitigation efforts include low-carbon\r\n technology (SSP2-4.5) and expanded renewable energy compared\r\n to 2000 (RCP 4.5). These scenarios are consistent with an\r\n average increase in global air temperature of 3.0°C by 2100.\r\n </p>\r\n <p>\r\n <b>SSP 3-7.0:</b> These scenarios reflect high CO<sub\r\n >2</sub\r\n >\r\n emissions with limited (RCP6.0) or no (SSP3-7.0) mitigation.\r\n Total annual CO<sub>2</sub>\r\n emissions in 2100 are more than 75% higher than in 2000 in\r\n RCP6.0, and triple that of 2000 emissions in SSP3-7.0.\r\n Compared to 2000, both scenarios include expanded fossil\r\n fuel development and population growth but slow economic\r\n growth. These scenarios are consistent with an average\r\n increase in global air temperature of 3.0°C by 2100.\r\n </p>\r\n </b-modal>\r\n </b-th>\r\n <b-th>\r\n SSP 5-8.5\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help2_3\r\n class=\"help-icon-2 ml-2\"\r\n ></b-icon>\r\n <b-modal\r\n id=\"help2_3\"\r\n title=\"SSP 5-8.5\"\r\n title-tag=\"h6\"\r\n hide-footer\r\n >\r\n <p>\r\n Shared Socioeconomic Pathways (SSPs) represent alternative\r\n plausible trajectories of 21st-century GDP and population\r\n growth and the pace and pervasiveness of socioeconomic and\r\n technological progress within individual nations and across\r\n the world. SSPs are incorporated into models that simulate\r\n the corresponding evolution of the energy system and the\r\n resulting greenhouse gas trajectories.\r\n </p>\r\n <p>\r\n <b>SSP 5-8.5:</b> Among the scenarios described here, these\r\n reflect the highest range of carbon dioxide (CO<sub>2</sub>)\r\n emissions and no mitigation. Total annual global CO<sub\r\n >2</sub\r\n >\r\n emissions in 2100 are quadruple emissions in 2000 (RCP8.5\r\n and SSP5-8.5). Population growth in 2100 doubles from 2000\r\n in RCP8.5, but the SSP5-8.5 population remains relatively\r\n stable, with approximately 13% growth in 2100 from 2005.\r\n Both scenarios include fossil fuel development, but SSP5-8.5\r\n has higher economic growth than RCP8.5. These scenarios are\r\n consistent with an average increase in global air\r\n temperature of 5.0°C by 2100.\r\n </p>\r\n </b-modal>\r\n </b-th>\r\n <b-th>\r\n SSP 5-8.5 with Low Confidence Processes\r\n <b-icon\r\n icon=\"question-circle\"\r\n variant=\"default\"\r\n v-b-modal.help2_4\r\n class=\"help-icon-2 ml-2\"\r\n ></b-icon>\r\n <b-modal\r\n id=\"help2_4\"\r\n title=\"SSP 5-8.5 with Low Confidence Processes\"\r\n title-tag=\"h6\"\r\n hide-footer\r\n >\r\n <p>\r\n Shared Socioeconomic Pathways (SSPs) represent alternative\r\n plausible trajectories of 21st-century GDP and population\r\n growth and the pace and pervasiveness of socioeconomic and\r\n technological progress within individual nations and across\r\n the world. SSPs are incorporated into models that simulate\r\n the corresponding evolution of the energy system and the\r\n resulting greenhouse gas trajectories.\r\n </p>\r\n <p>\r\n <b>SSP 5-8.5 with Low Confidence Processes:</b> The SSP5-8.5\r\n low confidence scenarios incorporate a representation of the\r\n potential effect of low-likelihood, high-impact ice sheet\r\n processes that cannot be ruled out. These scenarios are not\r\n associated with a single global temperature increase,\r\n because they include a combination of high emissions, high\r\n warming and the occurrence of low confidence processes.\r\n </p>\r\n </b-modal>\r\n </b-th>\r\n </b-tr>\r\n </b-thead>\r\n <b-tbody>\r\n <b-tr variant=\"warning\">\r\n <b-td>{{ getTextForGlobalPercent(summaryStatistics[\"SSP 1-2.6\"]) }}%</b-td>\r\n <b-td>{{ getTextForGlobalPercent(summaryStatistics[\"SSP 2-4.5 - SSP 3-7.0\"]) }}%</b-td>\r\n <b-td>{{ getTextForGlobalPercent(summaryStatistics[\"SSP 5-8.5\"]) }}%</b-td>\r\n <b-td>{{ getTextForGlobalPercent(summaryStatistics[\"SSP 5-8.5 with Low Confidence Processes\"]) }}%</b-td>\r\n </b-tr>\r\n </b-tbody>\r\n </b-table-simple>\r\n <b-table-simple responsive small caption-top class=\"border\">\r\n <caption>\r\n <b>Global Mean Sea Level Projection in\r\n {{\r\n summaryStatistics[\"Year\"]\r\n }}</b>\r\n </caption>\r\n <b-thead head-variant=\"light\">\r\n <b-tr>\r\n <b-th>17th Percentile</b-th>\r\n <b-th>Median</b-th>\r\n <b-th>83rd Percentile</b-th>\r\n </b-tr>\r\n </b-thead>\r\n <b-tbody>\r\n <b-tr variant=\"warning\">\r\n <b-td>{{ summaryStatistics[\"GMSL 17th percentile\"] }} ft</b-td>\r\n <b-td>{{ summaryStatistics[\"GMSL Median\"] }} ft</b-td>\r\n <b-td>{{ summaryStatistics[\"GMSL 83rd percentile\"] }} ft</b-td>\r\n </b-tr>\r\n </b-tbody>\r\n </b-table-simple>\r\n <b-table-simple responsive small caption-top class=\"border mb-1\">\r\n <caption>\r\n <b>Local Mean Sea Level Projection for\r\n {{\r\n tideGaugeName\r\n }}\r\n in\r\n {{\r\n summaryStatistics[\"Year\"]\r\n }}</b>\r\n </caption>\r\n <b-thead head-variant=\"light\">\r\n <b-tr>\r\n <b-th>17th Percentile</b-th>\r\n <b-th>Median</b-th>\r\n <b-th>83rd Percentile</b-th>\r\n </b-tr>\r\n </b-thead>\r\n <b-tbody>\r\n <b-tr variant=\"warning\">\r\n <b-td>{{ summaryStatistics[\"LMSL 17th percentile\"] }} ft</b-td>\r\n <b-td>{{ summaryStatistics[\"LMSL Median\"] }} ft</b-td>\r\n <b-td>{{ summaryStatistics[\"LMSL 83rd percentile\"] }} ft</b-td>\r\n </b-tr>\r\n <b-tr>\r\n <b-td>\r\n {{\r\n getSymbolForLocalPercent(\r\n summaryStatistics[\"LMSL 17th percentage of GMSL\"]\r\n )\r\n }}\r\n {{ summaryStatistics[\"LMSL 17th percentage of GMSL\"] }}%\r\n </b-td>\r\n <b-td>\r\n {{\r\n getSymbolForLocalPercent(\r\n summaryStatistics[\"LMSL Median percentage of GMSL\"]\r\n )\r\n }}\r\n {{ summaryStatistics[\"LMSL Median percentage of GMSL\"] }}%\r\n </b-td>\r\n <b-td>\r\n {{\r\n getSymbolForLocalPercent(\r\n summaryStatistics[\"LMSL 83rd percentage of GMSL\"]\r\n )\r\n }}\r\n {{ summaryStatistics[\"LMSL 83rd percentage of GMSL\"] }}%\r\n </b-td>\r\n </b-tr>\r\n </b-tbody>\r\n </b-table-simple>\r\n </div>\r\n <div class=\"text-center p-0\">\r\n <b-button\r\n size=\"sm\"\r\n variant=\"light\"\r\n @click=\"downloadSummary\"\r\n class=\"mb-1\"\r\n >\r\n <b-icon icon=\"download\" class=\"mr-2\"></b-icon>\r\n Download summary\r\n </b-button>\r\n </div>\r\n <hr />\r\n <p class=\"pl-3 pr-3 pt-1 pb-1 mb-3\">\r\n Projections are based on current land elevations and do not take into\r\n account how the coastline will evolve as the sea level rises or how\r\n humans will modify the coastline.\r\n </p>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport jsPDF from \"jspdf\";\r\n\r\nexport default {\r\n name: \"Year3_2\",\r\n props: {\r\n tideGaugeName: String,\r\n summaryStatistics: Object,\r\n },\r\n methods: {\r\n async downloadSummary() {\r\n const el = this.$refs.summary;\r\n const options = {\r\n type: \"dataURL\",\r\n };\r\n const img = await this.$html2canvas(el, options);\r\n const doc = new jsPDF(\"landscape\");\r\n doc.addImage(img, \"PNG\", 20, 20),\r\n doc.save(\"epa-slr-summary-statistics.pdf\");\r\n },\r\n getSymbolForLocalPercent(value) {\r\n let result = \"\";\r\n if (value > 0) {\r\n result = \"+\";\r\n }\r\n return result;\r\n },\r\n getTextForGlobalPercent(value) {\r\n let result = \"\";\r\n if (parseInt(value) === 100) {\r\n result = \">99\";\r\n } else if (parseInt(value) === 0) {\r\n result = \"<1\";\r\n } else {\r\n result = value;\r\n }\r\n return result;\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" atb-tribute to limit CSS to b-this component only -->\r\n<style scoped>\r\n.bg-light,\r\n.thead-light th {\r\n background-color: #e5f0f8 !important;\r\n}\r\n\r\n.border {\r\n border-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\n\r\ntable caption {\r\n color: #495057;\r\n font-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n \"Arial\", sans-serif;\r\n font-size: 1.25em;\r\n}\r\n\r\ntable caption,\r\ntable th,\r\ntable td {\r\n text-align: center;\r\n font-weight: normal;\r\n}\r\n\r\nh4 {\r\n font-family: \"Source Sans Pro\", \"Helvetica Neue\", \"Helvetica\", \"Roboto\",\r\n \"Arial\", sans-serif;\r\n padding-bottom: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3_2.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3_2.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Year3_2.vue?vue&type=template&id=9e92a276&scoped=true\"\nimport script from \"./Year3_2.vue?vue&type=script&lang=js\"\nexport * from \"./Year3_2.vue?vue&type=script&lang=js\"\nimport style0 from \"./Year3_2.vue?vue&type=style&index=0&id=9e92a276&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9e92a276\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"shadow-sm border p-3\"},[_c('highcharts',{ref:\"chart\",staticClass:\"hc\",attrs:{\"options\":_vm.chartOptions}}),_vm._m(0),_c('p',{staticClass:\"mt-3 pl-3 pr-3 pt-1 pb-1\"},[_vm._v(\" This graph uses historic data to show how tides (squares) can interact with storm surge (blue circles) to raise water levels. Sea-level rise is projected to increase water levels even further based on the time horizon and scenario of interest. To understand the total change in sea surface height, combine the information from this graphic with the Local Mean Sea Level Projection from the Summary Statistics tab. \")]),_c('hr'),_c('p',{staticClass:\"pl-3 pr-3 pt-1 pb-1\"},[_vm._v(\" Projections are based on current land elevations and do not take into account how the coastline will evolve as the sea level rises or how humans will modify the coastline. \")])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"position\":\"absolute\",\"right\":\"15px\",\"top\":\"435px\",\"width\":\"175px\",\"line-height\":\"1em\"}},[_c('small',[_vm._v(\"* Tide gauges without sufficient records to predict long-period storm surge levels will display as 0.\")])])}]\n\nexport { render, staticRenderFns }","<template>\r\n <div class=\"shadow-sm border p-3\">\r\n <highcharts class=\"hc\" :options=\"chartOptions\" ref=\"chart\"></highcharts>\r\n <div\r\n style=\"position:absolute;right:15px;top:435px;width:175px;line-height:1em;\"\r\n >\r\n <small\r\n >* Tide gauges without sufficient records to predict long-period storm\r\n surge levels will display as 0.</small\r\n >\r\n </div>\r\n <p class=\"mt-3 pl-3 pr-3 pt-1 pb-1\">\r\n This graph uses historic data to show how tides (squares) can interact\r\n with storm surge (blue circles) to raise water levels. Sea-level rise is\r\n projected to increase water levels even further based on the time horizon\r\n and scenario of interest. To understand the total change in sea surface\r\n height, combine the information from this graphic with the Local Mean Sea\r\n Level Projection from the Summary Statistics tab.\r\n </p>\r\n <hr />\r\n <p class=\"pl-3 pr-3 pt-1 pb-1\">\r\n Projections are based on current land elevations and do not take into\r\n account how the coastline will evolve as the sea level rises or how humans\r\n will modify the coastline.\r\n </p>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport HighCharts from \"highcharts\";\r\nimport exporting from \"highcharts/modules/exporting\";\r\nimport more from \"highcharts/highcharts-more\";\r\n\r\nexporting(HighCharts);\r\nmore(HighCharts);\r\n\r\nexport default {\r\n name: \"Year3_3\",\r\n props: {\r\n chartOptions: Object,\r\n },\r\n methods: {},\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n.border {\r\n border-color: rgba(0, 0, 0, 0.075) !important;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3_3.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3_3.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Year3_3.vue?vue&type=template&id=cd16cfc4&scoped=true\"\nimport script from \"./Year3_3.vue?vue&type=script&lang=js\"\nexport * from \"./Year3_3.vue?vue&type=script&lang=js\"\nimport style0 from \"./Year3_3.vue?vue&type=style&index=0&id=cd16cfc4&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"cd16cfc4\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\r\nimport Router from 'vue-router';\r\nimport Home from '../components/Home';\r\nimport CriticalElevation from \"../components/CriticalElevation\";\r\nimport CriticalElevation1 from \"../components/CriticalElevation1\";\r\nimport CriticalElevation2 from \"../components/CriticalElevation2\";\r\nimport CriticalElevation3 from \"../components/CriticalElevation3\";\r\nimport CriticalElevation4 from \"../components/CriticalElevation4\";\r\nimport CriticalElevation5 from \"../components/CriticalElevation5\";\r\nimport Year from \"../components/Year\";\r\nimport Year1 from \"../components/Year1\";\r\nimport Year2 from \"../components/Year2\";\r\nimport Year3 from \"../components/Year3\";\r\nimport Year3_1 from \"../components/Year3_1\";\r\nimport Year3_2 from \"../components/Year3_2\";\r\nimport Year3_3 from \"../components/Year3_3\";\r\n\r\nVue.use(Router);\r\n\r\nexport default new Router({\r\n\tbase: process.env.VUE_APP_BASE_ROUTE || \"./\",\r\n\troutes: [\r\n\t\t{\r\n\t\t\tpath: \"/\",\r\n\t\t\tredirect: \"/index.html\",\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: \"/index.html\",\r\n\t\t\tname: \"home\",\r\n\t\t\tcomponent: Home,\r\n\t\t\tprops: true,\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: \"/critical-elevation\",\r\n\t\t\tname: \"critical-elevation\",\r\n\t\t\tcomponent: CriticalElevation,\r\n\t\t\tprops: true,\r\n\t\t\tchildren: [\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: \"/critical-elevation/1\",\r\n\t\t\t\t\tname: \"critical-elevation-1\",\r\n\t\t\t\t\tcomponent: CriticalElevation1,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: \"/critical-elevation/2\",\r\n\t\t\t\t\tname: \"critical-elevation-2\",\r\n\t\t\t\t\tcomponent: CriticalElevation2,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: \"/critical-elevation/3\",\r\n\t\t\t\t\tname: \"critical-elevation-3\",\r\n\t\t\t\t\tcomponent: CriticalElevation3,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: \"/critical-elevation/4\",\r\n\t\t\t\t\tname: \"critical-elevation-4\",\r\n\t\t\t\t\tcomponent: CriticalElevation4,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: \"/critical-elevation/5\",\r\n\t\t\t\t\tname: \"critical-elevation-5\",\r\n\t\t\t\t\tcomponent: CriticalElevation5,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: \"/year\",\r\n\t\t\tname: \"year\",\r\n\t\t\tcomponent: Year,\r\n\t\t\tprops: true,\r\n\t\t\tchildren: [\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: \"/year/1\",\r\n\t\t\t\t\tname: \"year-1\",\r\n\t\t\t\t\tcomponent: Year1,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: \"/year/2\",\r\n\t\t\t\t\tname: \"year-2\",\r\n\t\t\t\t\tcomponent: Year2,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: \"/year/3\",\r\n\t\t\t\t\tredirect: \"/year/3/1\",\r\n\t\t\t\t\tname: \"year-3\",\r\n\t\t\t\t\tcomponent: Year3,\r\n\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: \"/year/3/1\",\r\n\t\t\t\t\t\t\tname: \"year-3.1\",\r\n\t\t\t\t\t\t\tcomponent: Year3_1,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: \"/year/3/2\",\r\n\t\t\t\t\t\t\tname: \"year-3.2\",\r\n\t\t\t\t\t\t\tcomponent: Year3_2,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: \"/year/3/3\",\r\n\t\t\t\t\t\t\tname: \"year-3.3\",\r\n\t\t\t\t\t\t\tcomponent: Year3_3,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t],\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t],\r\n});","export const mapServerConfig = {\r\n\tslrServiceUrl:\r\n\t\t//\"https://rtpwlowpapp43.rti.ns/arcgis2/rest/services/SeaLevelRise\", //development\r\n\t\t//\"https://v18h1n-gcxapps.aa.ad.epa.gov/arcgis/rest/services/SeaLevelRise\", //staging <-- uncomment for staging\r\n\t\t\"https://seatool.epa.gov/arcgis/rest/services/SeaLevelRise\", //production <-- uncomment for production\r\n\tepaRegionsServiceUrl:\r\n\t\t\"https://geodata.epa.gov/arcgis/rest/services/OEI/EPA_Locations/MapServer\",\r\n\tslrGeoFilesUrl: \r\n\t//\"https://v18h1n-gcxapps.aa.ad.epa.gov/SLR\", //staging <-- uncomment for staging\r\n\t\"https://seatool.epa.gov/SLR\", //production <-- uncomment for production\r\n};","import regionsJson from \"../../data/epa_regions.json\";\r\nimport tideGaugesJson from \"../../data/usace_gauge_datums_and_ewl.json\";\r\nimport yearsJson from \"../../data/years.json\";\r\nimport scenariosJson from \"../../data/sea_level_rise_scenarios.json\";\r\n\r\nexport const dataUtils = {\r\n getRegions() {\r\n const regions = regionsJson.map((region) => {\r\n return {\r\n text: region.name,\r\n value: region.code,\r\n };\r\n });\r\n regions.unshift({ text: \"Select a region\", value: \"\" });\r\n return regions;\r\n },\r\n getTideGauges(region) {\r\n let tideGauges = [];\r\n if (region && region !== \"\") {\r\n tideGauges = tideGaugesJson.reduce(function(res, tideGauge) {\r\n if (\r\n tideGauge[\"epa region code\"].indexOf(region + \",\") > -1 ||\r\n tideGauge[\"epa region code\"].indexOf(\",\" + region) > -1 ||\r\n tideGauge[\"epa region code\"] === region\r\n ) {\r\n res.push({\r\n text: tideGauge.name,\r\n value: tideGauge.id.toString(),\r\n });\r\n }\r\n return res;\r\n }, []);\r\n } else {\r\n tideGauges = tideGaugesJson.map(function(tideGauge) {\r\n return {\r\n text: tideGauge.name,\r\n value: tideGauge.id.toString(),\r\n };\r\n });\r\n }\r\n tideGauges.unshift({ text: \"Select a tide gauge\", value: \"\" });\r\n return tideGauges;\r\n },\r\n getTidalHeights(tideGauge) {\r\n const tidalHeights = [];\r\n if (tideGauge && tideGauge !== \"\") {\r\n const targetGauge = tideGaugesJson.find((tg) => {\r\n return tg[\"id\"] === parseInt(tideGauge);\r\n });\r\n if (targetGauge[\"hat (ft)\"] != null) {\r\n tidalHeights.push({\r\n text: targetGauge[\"hat (ft)\"].toString() + \" ft. (HAT)\",\r\n value: targetGauge[\"hat (ft)\"].toString(),\r\n });\r\n }\r\n if (targetGauge[\"mhhw (ft)\"] != null) {\r\n tidalHeights.push({\r\n text: targetGauge[\"mhhw (ft)\"].toString() + \" ft. (MHHW)\",\r\n value: targetGauge[\"mhhw (ft)\"].toString(),\r\n });\r\n }\r\n tidalHeights.push({\r\n text: \"0 ft. (no high tide)\",\r\n value: \"0\",\r\n });\r\n tidalHeights.unshift({ text: \"Select a high tide\", value: \"\" });\r\n }\r\n return tidalHeights;\r\n },\r\n getSurgeLevels(tideGauge) {\r\n const surgeLevels = [];\r\n if (tideGauge && tideGauge !== \"\") {\r\n const targetGauge = tideGaugesJson.find((tg) => {\r\n return tg[\"id\"] === parseInt(tideGauge);\r\n });\r\n if (targetGauge[\"monthly (ft)\"] != null) {\r\n surgeLevels.push({\r\n text: targetGauge[\"monthly (ft)\"].toString() + \" ft. (Monthly)\",\r\n value: targetGauge[\"monthly (ft)\"].toString(),\r\n });\r\n }\r\n if (targetGauge[\"yearly (ft)\"] != null) {\r\n surgeLevels.push({\r\n text: targetGauge[\"yearly (ft)\"].toString() + \" ft. (1 yr)\",\r\n value: targetGauge[\"yearly (ft)\"].toString(),\r\n });\r\n }\r\n if (targetGauge[\"2 yr (ft)\"] != null) {\r\n surgeLevels.push({\r\n text: targetGauge[\"2 yr (ft)\"].toString() + \" ft. (2 yr)\",\r\n value: targetGauge[\"2 yr (ft)\"].toString(),\r\n });\r\n }\r\n if (targetGauge[\"5 yr (ft)\"] != null) {\r\n surgeLevels.push({\r\n text: targetGauge[\"5 yr (ft)\"].toString() + \" ft. (5 yr)\",\r\n value: targetGauge[\"5 yr (ft)\"].toString(),\r\n });\r\n }\r\n if (targetGauge[\"10 yr (ft)\"] != null) {\r\n surgeLevels.push({\r\n text: targetGauge[\"10 yr (ft)\"].toString() + \" ft. (10 yr)\",\r\n value: targetGauge[\"10 yr (ft)\"].toString(),\r\n });\r\n }\r\n if (targetGauge[\"20 yr (ft)\"] != null) {\r\n surgeLevels.push({\r\n text: targetGauge[\"20 yr (ft)\"].toString() + \" ft. (20 yr)\",\r\n value: targetGauge[\"20 yr (ft)\"].toString(),\r\n });\r\n }\r\n if (targetGauge[\"50 yr (ft)\"] != null) {\r\n surgeLevels.push({\r\n text: targetGauge[\"50 yr (ft)\"].toString() + \" ft. (50 yr)\",\r\n value: targetGauge[\"50 yr (ft)\"].toString(),\r\n });\r\n }\r\n if (targetGauge[\"100 yr (ft)\"] != null) {\r\n surgeLevels.push({\r\n text: targetGauge[\"100 yr (ft)\"].toString() + \" ft. (100 yr)\",\r\n value: targetGauge[\"100 yr (ft)\"].toString(),\r\n });\r\n }\r\n surgeLevels.push({\r\n text: \"0 ft. (no storm surge)\",\r\n value: \"0\",\r\n });\r\n surgeLevels.unshift({\r\n text: \"Select a storm surge level\",\r\n value: \"\",\r\n });\r\n }\r\n return surgeLevels;\r\n },\r\n getYears() {\r\n const dataYears = yearsJson;\r\n dataYears.shift(); //remove the first year as it's the base year and has no lookup data\r\n const years = dataYears.map((year) => {\r\n return {\r\n text: year.name,\r\n value: year.code,\r\n };\r\n });\r\n years.unshift({ text: \"Select a year\", value: \"\" });\r\n return years;\r\n },\r\n getScenarios() {\r\n const scenarios = scenariosJson.map((scenario) => {\r\n return {\r\n text: scenario.name,\r\n value: scenario.code,\r\n };\r\n });\r\n scenarios.unshift({ text: \"Select a sea level rise scenario\", value: \"\" });\r\n return scenarios;\r\n },\r\n};\r\n","import tideGaugesJson from \"../../data/usace_gauge_datums_and_ewl.json\";\r\nimport slr_gis_file_mapper from \"../../data/slr_gis_file_mapper.json\";\r\n\r\nexport const mapUtils = {\r\n getGaugesJson() {\r\n const gauges = tideGaugesJson.reduce(function(res, tideGauge) {\r\n if (tideGauge[\"name\"] !== \"Custom\") {\r\n res.push({\r\n name: tideGauge.name,\r\n id: tideGauge.id,\r\n region: tideGauge[\"epa region code\"],\r\n latitude: tideGauge.latitude,\r\n longitude: tideGauge.longitude,\r\n });\r\n }\r\n return res;\r\n }, []);\r\n\r\n return gauges;\r\n },\r\n\r\n addGaugesToMap(gauges, map, FeatureLayer, Graphic) {\r\n var graphics = [];\r\n var i = null;\r\n //Create a symbol for drawing the point\r\n var markerSymbol = {\r\n type: \"simple-marker\", // autocasts as new SimpleMarkerSymbol()\r\n size: 6,\r\n color: [178, 0, 255, 255], //[226, 119, 40]\r\n outline: {\r\n // autocasts as new SimpleLineSymbol()\r\n width: 0.3,\r\n color: [110, 110, 110, 155],\r\n },\r\n };\r\n for (i in gauges) {\r\n // First create a point geometry\r\n var point = {\r\n type: \"point\", // autocasts as new Point()\r\n longitude: gauges[i].longitude,\r\n latitude: gauges[i].latitude,\r\n };\r\n\r\n var attr = {\r\n ObjectID: parseInt(i),\r\n name: gauges[i].name,\r\n id: gauges[i].id,\r\n region: gauges[i].region,\r\n };\r\n\r\n // Create a graphic and add the geometry and symbol to it\r\n var curGraphic = new Graphic({\r\n geometry: point,\r\n //symbol: markerSymbol,\r\n attributes: attr,\r\n });\r\n graphics.push(curGraphic);\r\n }\r\n\r\n var gaugesRenderer = {\r\n type: \"simple\", // autocasts as new SimpleRenderer()\r\n symbol: markerSymbol,\r\n };\r\n const layer = new FeatureLayer({\r\n id: \"gauges\",\r\n title: \"Tide Gauges\",\r\n // create an instance of esri/layers/support/Field for each field object\r\n fields: [\r\n {\r\n name: \"ObjectID\",\r\n alias: \"ObjectID\",\r\n type: \"oid\",\r\n },\r\n {\r\n name: \"name\",\r\n alias: \"name\",\r\n type: \"string\",\r\n },\r\n {\r\n name: \"region\",\r\n alias: \"region\",\r\n type: \"string\",\r\n },\r\n {\r\n name: \"id\",\r\n alias: \"id\",\r\n type: \"integer\",\r\n },\r\n ],\r\n objectIdField: \"ObjectID\", // inferred from fields array if not specified\r\n geometryType: \"point\", // geometryType and spatialReference are inferred from the first feature\r\n // in the source array if they are not specified.\r\n spatialReference: { wkid: 4326 },\r\n source: graphics, // an array of graphics with geometry and attributes\r\n // popupTemplate and symbol are not required in each feature\r\n // since those are handled with the popupTemplate and\r\n // renderer properties of the layer\r\n //popupTemplate: pTemplate,\r\n // a default simple renderer will be applied if not set.\r\n renderer: gaugesRenderer, // UniqueValueRenderer based on `type` attribute\r\n outFields: [\"*\"],\r\n });\r\n map.add(layer);\r\n\r\n return layer;\r\n },\r\n\r\n clearSelectedGauge: function(view) {\r\n //Clear the selected gauges\r\n if (view && view.map) {\r\n var selectedGauge = view.map.findLayerById(\"selected-gauge\");\r\n if (selectedGauge) {\r\n selectedGauge.removeAll();\r\n }\r\n }\r\n },\r\n\r\n zoomToGauges: function(region, view, Query) {\r\n if (view && view.map) {\r\n this.clearSelectedGauge(view);\r\n\r\n var gaugesLayer = view.map.findLayerById(\"gauges\");\r\n const query = new Query();\r\n query.where =\r\n \"region = '\" +\r\n region +\r\n \"' or region LIKE '%\" +\r\n region +\r\n \",%' or region LIKE '%,\" +\r\n region +\r\n \"%'\";\r\n query.outSpatialReference = { wkid: 102100 };\r\n query.returnGeometry = true;\r\n query.outFields = [\"*\"];\r\n\r\n if (gaugesLayer) {\r\n gaugesLayer.queryFeatures(query).then(function(results) {\r\n // prints the array of result graphics to the console\r\n if (results.features.length == 1) {\r\n view.goTo({ target: results.features, zoom: 3 });\r\n } else if (results.features.length > 1) {\r\n if (region.indexOf(\"Guam\") != -1) {\r\n view.goTo({ target: results.features[0], zoom: 1 });\r\n } else if (region.indexOf(\"Hawaii\") != -1) {\r\n view.goTo({ target: results.features[0], zoom: 1 });\r\n } else {\r\n view.goTo({ target: results.features });\r\n }\r\n }\r\n });\r\n }\r\n }\r\n },\r\n\r\n getSLRGISFileMapper(\r\n epaRegionCode,\r\n floodedAreaOrDepth,\r\n slrScenarioCode,\r\n yearCode\r\n ) {\r\n var filename =\r\n epaRegionCode +\r\n \"_\" +\r\n floodedAreaOrDepth +\r\n \"_\" +\r\n slrScenarioCode +\r\n \"_\" +\r\n yearCode;\r\n var data = slr_gis_file_mapper;\r\n var obj = data.filter((x) => x[\"filename\"] === filename);\r\n return obj;\r\n },\r\n\r\n addResultLayerToMap(\r\n epaRegionCode,\r\n floodedAreaOrDepth,\r\n slrScenarioCode,\r\n yearCode,\r\n mapLayerConfig,\r\n view,\r\n MapImageLayer\r\n ) {\r\n var slrGISInfo = this.getSLRGISFileMapper(\r\n epaRegionCode,\r\n floodedAreaOrDepth,\r\n slrScenarioCode,\r\n yearCode\r\n );\r\n if (slrGISInfo.length > 0) {\r\n var resultsLayer = view.map.findLayerById(\"slr-results\");\r\n\r\n let updatedMapLayerConfig = JSON.parse(JSON.stringify(mapLayerConfig));\r\n updatedMapLayerConfig.mapLayers.results.service =\r\n mapLayerConfig.mapLayers.results.service +\r\n \"/\" +\r\n slrGISInfo[0].mapservice +\r\n \"/MapServer\";\r\n updatedMapLayerConfig.mapLayers.results.layers = [\r\n parseInt(slrGISInfo[0].layerid),\r\n ];\r\n updatedMapLayerConfig.mapLayers.results.title = slrGISInfo[0].filename;\r\n if (resultsLayer) {\r\n resultsLayer.url = updatedMapLayerConfig.mapLayers.results.service;\r\n var subLayers = [];\r\n var curSubLayers = updatedMapLayerConfig.mapLayers.results.layers;\r\n for (var layerId in curSubLayers) {\r\n subLayers.push({\r\n id: curSubLayers[layerId],\r\n opacity: mapLayerConfig.mapLayers[\"results\"].opacity,\r\n visible: true,\r\n labelsVisible: false,\r\n popupEnabled: false,\r\n popupTemplate: { title: \"{EPAREGION}\" },\r\n });\r\n }\r\n resultsLayer.sublayers = subLayers;\r\n resultsLayer.title = updatedMapLayerConfig.mapLayers.results.title;\r\n resultsLayer.refresh();\r\n } else {\r\n this.addLayers(updatedMapLayerConfig, view, MapImageLayer, true, true);\r\n }\r\n } else {\r\n console.log(\"No SLR layer found\");\r\n }\r\n },\r\n\r\n addLayers(mapLayerConfig, view, MapImageLayer, boolZoom, boolShowResults) {\r\n var group;\r\n var layerId;\r\n var mapLayers = mapLayerConfig.mapLayers;\r\n for (group in mapLayers) {\r\n if (\r\n (group == \"results\" && boolShowResults) ||\r\n (group != \"results\" && !boolShowResults)\r\n ) {\r\n //do not add the results layer at startup - but show later (boolShowResults)\r\n var subLayers = [];\r\n for (layerId in mapLayers[group].layers) {\r\n subLayers.push({\r\n id: mapLayers[group].layers[layerId],\r\n opacity: mapLayers[group].opacity,\r\n visible: true,\r\n labelsVisible: false,\r\n popupEnabled: false,\r\n popupTemplate: { title: \"{EPAREGION}\" },\r\n });\r\n }\r\n\r\n var layer = new MapImageLayer({\r\n url: mapLayers[group].service,\r\n title: mapLayers[group].title,\r\n sublayers: subLayers,\r\n id: mapLayers[group].id,\r\n });\r\n view.map.add(layer);\r\n if (boolZoom) {\r\n layer.when(function() {\r\n view\r\n .goTo({ target: layer.fullExtent.expand(0.85) })\r\n .then(function() {\r\n view.map.layers.items.forEach((item) => {\r\n if (item.id != \"slr-results\") {\r\n item.listMode = \"hide\";\r\n } else {\r\n item.allSublayers.forEach((layer) => {\r\n layer.listMode = \"hide\";\r\n });\r\n }\r\n });\r\n });\r\n });\r\n }\r\n }\r\n }\r\n },\r\n highlightTideGauge(feature, view) {\r\n //Show Gauge as selected on the map\r\n var markerSymbol = {\r\n type: \"simple-marker\", // autocasts as new SimpleMarkerSymbol()\r\n size: 7,\r\n color: [255, 106, 0, 255], //[226, 119, 40]\r\n outline: {\r\n // autocasts as new SimpleLineSymbol()\r\n width: 0.3,\r\n color: [110, 110, 110, 155],\r\n },\r\n };\r\n feature.symbol = markerSymbol;\r\n var selectedGauge = view.map.findLayerById(\"selected-gauge\");\r\n view.map.reorder(selectedGauge, view.map.allLayers.length - 1);\r\n selectedGauge.removeAll();\r\n selectedGauge.add(feature);\r\n var curZoom = view.zoom;\r\n if (curZoom < 6) {\r\n curZoom = 6;\r\n }\r\n view.goTo({\r\n center: feature.geometry,\r\n zoom: curZoom,\r\n });\r\n },\r\n\r\n //*************************************\r\n\r\n addAllGaugesToMap(\r\n view,\r\n tideGaugeClicked,\r\n highlightTideGauge,\r\n FeatureLayer,\r\n Graphic,\r\n domStyle,\r\n dojoHtml,\r\n yHoverAdd\r\n ) {\r\n if (yHoverAdd == null) {\r\n yHoverAdd = 0;\r\n }\r\n //var gauges=utils.getUSACEGaugeDatumsAndEWL();\r\n var gauges = this.getGaugesJson();\r\n var map = view.map;\r\n\r\n var gaugesLayer = this.addGaugesToMap(gauges, map, FeatureLayer, Graphic);\r\n\r\n //Click gauges\r\n view.on(\"click\", function(event) {\r\n view.hitTest(event).then(function(response) {\r\n if (\r\n response.results.length > 0 &&\r\n response.results[0].graphic &&\r\n response.results[0].graphic.layer.id == \"gauges\"\r\n ) {\r\n //Get the gauge id to update the dropdowns\r\n var feature = response.results[0].graphic;\r\n var gaugeId = feature.attributes.id.toString();\r\n var gaugeRegion = feature.attributes.region;\r\n tideGaugeClicked(gaugeRegion, gaugeId);\r\n highlightTideGauge(feature);\r\n domStyle.set(\"hover\", \"display\", \"none\");\r\n }\r\n });\r\n });\r\n\r\n //Hover over gauges\r\n var highlightSelect;\r\n view.on(\"pointer-move\", function(event) {\r\n var screenPoint = {\r\n x: event.x,\r\n y: event.y,\r\n };\r\n\r\n // the hitTest() checks to see if any graphics in the view\r\n // intersect the given screen x, y coordinates\r\n view.hitTest(screenPoint).then(function(response) {\r\n if (\r\n response.results.length > 0 &&\r\n response.results[0].graphic &&\r\n response.results[0].graphic.layer.id == \"gauges\"\r\n ) {\r\n domStyle.set(\"hover\", \"display\", \"block\");\r\n domStyle.set(\"hover\", \"top\", screenPoint.y + yHoverAdd + \"px\");\r\n domStyle.set(\"hover\", \"left\", screenPoint.x + \"px\");\r\n var feature = response.results[0].graphic;\r\n var content = feature.attributes.name;\r\n dojoHtml.set(\"hover\", content);\r\n\r\n view.whenLayerView(gaugesLayer).then(function(layerView) {\r\n // if a feature is already highlighted, then remove the highlight\r\n if (highlightSelect) {\r\n highlightSelect.remove();\r\n }\r\n\r\n // set the highlight on the first feature returned by the query\r\n highlightSelect = layerView.highlight(feature);\r\n });\r\n } else {\r\n domStyle.set(\"hover\", \"display\", \"none\");\r\n if (highlightSelect) {\r\n highlightSelect.remove();\r\n }\r\n }\r\n });\r\n });\r\n },\r\n};\r\n","import noaa2022Json from \"../../data/noaa_2022.json\";\r\nimport tideGaugesJson from \"../../data/usace_gauge_datums_and_ewl.json\";\r\nimport slrGisFileMapperJson from \"../../data/slr_gis_file_mapper.json\";\r\nimport sea_level_rise_scenarios from \"../../data/sea_level_rise_scenarios.json\";\r\nimport years from \"../../data/years.json\";\r\n\r\nexport const calcUtils = {\r\n getSLRYears() {\r\n var slrYears = years.map((year) => parseInt(year[\"name\"]));\r\n return slrYears;\r\n },\r\n\r\n getSeaLevelRiseImpactSite(criticalElevation, tidalHeight, surgeLevel) {\r\n return criticalElevation - tidalHeight - surgeLevel;\r\n },\r\n\r\n calculateExceedanceYear(\r\n noaa2022MedianScenario,\r\n criticalElevation,\r\n totalTidalHeightStormSurge\r\n ) {\r\n //get sea-level rise projections by year\r\n var arrSLRYears = calcUtils.getSLRYears();\r\n var arrSLRProj = [];\r\n arrSLRProj.push(totalTidalHeightStormSurge); //data for base year (2010)\r\n //calculate projections for all years beyond base year (tidal height + storm surge + NOAA data for gauge)\r\n for (\r\n var yearCount = 1; //start index at 1 to skip base year\r\n yearCount < arrSLRYears.length;\r\n yearCount++\r\n ) {\r\n arrSLRProj.push(\r\n totalTidalHeightStormSurge +\r\n noaa2022MedianScenario[arrSLRYears[yearCount]]\r\n );\r\n }\r\n\r\n //find SLR value that corresponds to critical elevations\r\n var yearLower,\r\n yearUpper,\r\n slrProjLower,\r\n slrProjUpper,\r\n yearDiff,\r\n slrProjDiff,\r\n slrCritElevDiff,\r\n ratioDiffs,\r\n yearAdjustment;\r\n var exceedanceYear = 0;\r\n for (var index = 0; index < arrSLRProj.length; index++) {\r\n yearLower = arrSLRYears[index];\r\n slrProjLower = arrSLRProj[index];\r\n\r\n if (yearCount === arrSLRProj.length - 1) {\r\n yearUpper = 0;\r\n slrProjUpper = 0;\r\n } else {\r\n yearUpper = arrSLRYears[index + 1];\r\n slrProjUpper = arrSLRProj[index + 1];\r\n }\r\n\r\n //calculate exceedance year\r\n //get difference between upper and lower projections\r\n slrProjDiff = slrProjUpper - slrProjLower;\r\n //get difference between critical elevation and lower projection\r\n slrCritElevDiff = parseFloat(criticalElevation) - slrProjLower;\r\n //get ratio of differences above\r\n ratioDiffs = slrCritElevDiff / slrProjDiff;\r\n //get difference between upper and lower years\r\n yearDiff = yearUpper - yearLower;\r\n //multiply difference in years by ratio of projection differences to get year adjustment\r\n yearAdjustment = yearDiff * ratioDiffs;\r\n //add adjustment to lower year to get exceedance year\r\n exceedanceYear = yearLower + yearAdjustment;\r\n //round to nearest integer\r\n exceedanceYear = Math.round(exceedanceYear);\r\n\r\n //if critical elevation matches the lower projection, lower year is exceedance year\r\n //else if critical elevation is between lower and upper projections, break out, use exceedance year calculated above\r\n //if loop finishes completely, the exceedance year will be the one last calculated\r\n if (parseFloat(criticalElevation) === slrProjLower) {\r\n exceedanceYear = yearLower;\r\n break;\r\n } else if (\r\n parseFloat(criticalElevation) > slrProjLower &&\r\n parseFloat(criticalElevation) < slrProjUpper\r\n ) {\r\n break;\r\n }\r\n }\r\n\r\n //implement final year in years array as max for exceedance year\r\n if (exceedanceYear > arrSLRYears[arrSLRYears.length - 1]) {\r\n exceedanceYear = arrSLRYears[arrSLRYears.length - 1];\r\n }\r\n\r\n return exceedanceYear;\r\n },\r\n\r\n getProjectedExceedanceYears(\r\n criticalElevation,\r\n tideGauge,\r\n tidalHeight,\r\n surgeLevel\r\n ) {\r\n var projectedExceedanceYears = {\r\n high: 0,\r\n intermediateHigh: 0,\r\n intermediate: 0,\r\n intermediateLow: 0,\r\n low: 0,\r\n };\r\n\r\n //get tidal height + storm surge\r\n var totalTidalHeightStormSurge =\r\n parseFloat(tidalHeight) + parseFloat(surgeLevel);\r\n\r\n //get noaa 2022 data for site\r\n var noaa2022 = noaa2022Json.filter((x) => {\r\n return x[\"usace gauge id\"] === parseFloat(tideGauge);\r\n });\r\n //get median scenario and calculate\r\n var noaa2022MedianScenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"0.3 - MED\"\r\n )[0];\r\n projectedExceedanceYears.low = calcUtils.calculateExceedanceYear(\r\n noaa2022MedianScenario,\r\n criticalElevation,\r\n totalTidalHeightStormSurge\r\n );\r\n\r\n noaa2022MedianScenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"0.5 - MED\"\r\n )[0];\r\n projectedExceedanceYears.intermediateLow = calcUtils.calculateExceedanceYear(\r\n noaa2022MedianScenario,\r\n criticalElevation,\r\n totalTidalHeightStormSurge\r\n );\r\n\r\n noaa2022MedianScenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"1.0 - MED\"\r\n )[0];\r\n projectedExceedanceYears.intermediate = calcUtils.calculateExceedanceYear(\r\n noaa2022MedianScenario,\r\n criticalElevation,\r\n totalTidalHeightStormSurge\r\n );\r\n\r\n noaa2022MedianScenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"1.5 - MED\"\r\n )[0];\r\n projectedExceedanceYears.intermediateHigh = calcUtils.calculateExceedanceYear(\r\n noaa2022MedianScenario,\r\n criticalElevation,\r\n totalTidalHeightStormSurge\r\n );\r\n\r\n noaa2022MedianScenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"2.0 - MED\"\r\n )[0];\r\n projectedExceedanceYears.high = calcUtils.calculateExceedanceYear(\r\n noaa2022MedianScenario,\r\n criticalElevation,\r\n totalTidalHeightStormSurge\r\n );\r\n\r\n return projectedExceedanceYears;\r\n },\r\n\r\n getSLRProjectionsNOAA(noaa2022Scenario, totalTidalHeightStormSurge) {\r\n var arrSLRYears = calcUtils.getSLRYears();\r\n var arrSLRProj = [];\r\n arrSLRProj.push(parseFloat(totalTidalHeightStormSurge)); //data for base year (2010)\r\n //calculate projections for all years beyond base year (tidal height + storm surge + NOAA data for gauge)\r\n for (\r\n var yearCount = 1; //start index at 1 to skip base year\r\n yearCount < arrSLRYears.length;\r\n yearCount++\r\n ) {\r\n arrSLRProj.push(\r\n parseFloat(\r\n totalTidalHeightStormSurge + noaa2022Scenario[arrSLRYears[yearCount]]\r\n )\r\n );\r\n }\r\n return arrSLRProj;\r\n },\r\n\r\n getSLRProjectionsSeries(name, data) {\r\n var arrSLRYears = calcUtils.getSLRYears();\r\n var arrValues = [];\r\n var i;\r\n\r\n if (Array.isArray(data)) {\r\n arrValues = data;\r\n } else {\r\n //add values for all decades\r\n for (i = 0; i < arrSLRYears.length; i++) {\r\n arrValues.push(parseFloat(data));\r\n }\r\n }\r\n\r\n var series = {\r\n id: name\r\n .replaceAll(\" \", \"_\")\r\n .replace(\"(\", \"\")\r\n .replace(\")\", \"\"),\r\n name: name,\r\n data: arrValues,\r\n };\r\n return series;\r\n },\r\n\r\n getSLRProjectionsSuperimposedTidalRangeStormSurge(\r\n criticalElevation,\r\n tideGauge,\r\n tidalHeight,\r\n surgeLevel\r\n ) {\r\n var chartData = [];\r\n\r\n //get net tidal height + storm surge\r\n var totalTidalHeightStormSurge =\r\n parseFloat(tidalHeight) + parseFloat(surgeLevel);\r\n\r\n //get noaa data for site\r\n var noaa2022 = noaa2022Json.filter((x) => {\r\n return x[\"usace gauge id\"] === parseFloat(tideGauge);\r\n });\r\n\r\n var noaa2022Scenario = null;\r\n var values = null;\r\n\r\n //get High (83rd Percentile)\r\n noaa2022Scenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"2.0 - HIGH\"\r\n )[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"High (83rd Percentile)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#5B9BD5\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get High (Median)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"2.0 - MED\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\"High (Median)\", values);\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#5B9BD5\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get High (17th Percentile)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"2.0 - LOW\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"High (17th Percentile)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#5B9BD5\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Intermediate-High (83rd Percentile)\r\n noaa2022Scenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"1.5 - HIGH\"\r\n )[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"Intermediate-High (83rd Percentile)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#FFC000\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Intermediate-High (Median)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"1.5 - MED\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"Intermediate-High (Median)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#FFC000\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Intermediate-High (17th Percentile)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"1.5 - LOW\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"Intermediate-High (17th Percentile)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#FFC000\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Intermediate (83rd Percentile)\r\n noaa2022Scenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"1.0 - HIGH\"\r\n )[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"Intermediate (83rd Percentile)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#A5A5A5\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Intermediate (Median)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"1.0 - MED\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\"Intermediate (Median)\", values);\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#A5A5A5\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Intermediate (17th Percentile)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"1.0 - LOW\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"Intermediate (17th Percentile)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#A5A5A5\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Intermediate-Low (83rd Percentile)\r\n noaa2022Scenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"0.5 - HIGH\"\r\n )[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"Intermediate-Low (83rd Percentile)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#ED7D31\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Intermediate-Low (Median)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"0.5 - MED\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"Intermediate-Low (Median)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#ED7D31\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Intermediate-Low (17th Percentile)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"0.5 - LOW\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"Intermediate-Low (17th Percentile)\",\r\n values\r\n );\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#ED7D31\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Low (83rd Percentile)\r\n noaa2022Scenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === \"0.3 - HIGH\"\r\n )[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\"Low (83rd Percentile)\", values);\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#4472C4\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Low (Median)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"0.3 - MED\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\"Low (Median)\", values);\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#4472C4\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n //get Low (17th Percentile)\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === \"0.3 - LOW\")[0];\r\n values = calcUtils.getSLRProjectionsNOAA(\r\n noaa2022Scenario,\r\n totalTidalHeightStormSurge\r\n );\r\n series = calcUtils.getSLRProjectionsSeries(\"Low (17th Percentile)\", values);\r\n //series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#4472C4\";\r\n series[\"dashStyle\"] = \"ShortDot\";\r\n series.visible = false;\r\n chartData.push(series);\r\n\r\n var series = calcUtils.getSLRProjectionsSeries(\r\n \"Storm Surge Component\",\r\n parseFloat(tidalHeight) + parseFloat(surgeLevel)\r\n );\r\n series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#9DC3E6\";\r\n series[\"fillOpacity\"] = 0.5;\r\n chartData.push(series);\r\n\r\n series = calcUtils.getSLRProjectionsSeries(\"Tide Component\", tidalHeight);\r\n series[\"type\"] = \"area\";\r\n series[\"color\"] = \"#5B9BD5\";\r\n series[\"fillOpacity\"] = 0.5;\r\n chartData.push(series);\r\n\r\n series = calcUtils.getSLRProjectionsSeries(\r\n \"Critical Elevation\",\r\n criticalElevation\r\n );\r\n series[\"color\"] = \"#FF0000\";\r\n series[\"dashStyle\"] = \"LongDash\";\r\n chartData.push(series);\r\n\r\n return chartData;\r\n },\r\n\r\n getLMSLAsPercentageOfGMSL(lmsl, gmsl) {\r\n return ((lmsl - gmsl) / gmsl) * 100;\r\n },\r\n\r\n getNOAAScenarioPrefixBySLRScenarioCode(slrScenarioCode) {\r\n var scenario = sea_level_rise_scenarios.find(\r\n (s) => s.code === slrScenarioCode\r\n );\r\n var scenarioName = scenario.name;\r\n var scenarioCodePrefix = scenarioName.split(\"-\")[0];\r\n return scenarioCodePrefix;\r\n },\r\n\r\n getSLRGISFileMapper(\r\n epaRegionCode,\r\n floodedAreaOrDepth,\r\n slrScenarioCode,\r\n yearCode\r\n ) {\r\n var filename =\r\n epaRegionCode +\r\n \"_\" +\r\n floodedAreaOrDepth +\r\n \"_\" +\r\n slrScenarioCode +\r\n \"_\" +\r\n yearCode;\r\n return slrGisFileMapperJson.filter((x) => x[\"filename\"] === filename)[0];\r\n },\r\n\r\n getSeaLevelProjectionsAndProbabilityExceedingGMSL(\r\n epaRegionCode,\r\n floodedAreaOrDepth,\r\n slrScenarioCode,\r\n yearCode,\r\n tideGauge\r\n ) {\r\n var seaLevelProjectionsAndProbabilityExceedingGMSL = {\r\n Year: yearCode.substr(1),\r\n \"SSP 1-2.6\": 0,\r\n \"SSP 2-4.5 - SSP 3-7.0\": 0,\r\n \"SSP 5-8.5\": 0,\r\n \"SSP 5-8.5 with Low Confidence Processes\": 0,\r\n \"GMSL 83rd percentile\": 0,\r\n \"GMSL Median\": 0,\r\n \"GMSL 17th percentile\": 0,\r\n \"LMSL 83rd percentile\": 0,\r\n \"LMSL Median\": 0,\r\n \"LMSL 17th percentile\": 0,\r\n \"LMSL 83rd percentage of GMSL\": 0,\r\n \"LMSL Median percentage of GMSL\": 0,\r\n \"LMSL 17th percentage of GMSL\": 0,\r\n };\r\n\r\n //get probability exceeding GMSL\r\n var slrGISFileMapper = calcUtils.getSLRGISFileMapper(\r\n epaRegionCode,\r\n floodedAreaOrDepth,\r\n slrScenarioCode,\r\n yearCode\r\n );\r\n\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"SSP 1-2.6\"] = (\r\n slrGISFileMapper[\"probability_low\"] * 100\r\n ).toFixed(0);\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"SSP 2-4.5 - SSP 3-7.0\"] = (\r\n slrGISFileMapper[\"probability_intermediate_to_high\"] * 100\r\n ).toFixed(0);\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"SSP 5-8.5\"] = (\r\n slrGISFileMapper[\"probability_very_high\"] * 100\r\n ).toFixed(0);\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"SSP 5-8.5 with Low Confidence Processes\"\r\n ] = (slrGISFileMapper[\"probability_very_high_with_lcp\"] * 100).toFixed(0);\r\n\r\n //get GMSL projections\r\n var noaa2022 = noaa2022Json.filter((x) => {\r\n return x[\"usace gauge id\"] === 0;\r\n }); //0 returns GMSL\r\n var noaaScenarioPrefix = calcUtils.getNOAAScenarioPrefixBySLRScenarioCode(\r\n slrScenarioCode\r\n );\r\n\r\n //var year = yearCode.replace(\"Y\", \"\") + \" (ft)\";\r\n var year = yearCode.replace(\"Y\", \"\");\r\n\r\n //GMSL 83rd percentile\r\n var scenario = noaaScenarioPrefix + \" - HIGH\";\r\n var noaa2022Scenario = noaa2022.filter(\r\n (x) => x[\"scenario\"] === scenario\r\n )[0];\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"GMSL 83rd percentile\"] =\r\n noaa2022Scenario[year];\r\n\r\n //GMSL Median\r\n scenario = noaaScenarioPrefix + \" - MED\";\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === scenario)[0];\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"GMSL Median\"] =\r\n noaa2022Scenario[year];\r\n\r\n //GMSL 17th percentile\r\n scenario = noaaScenarioPrefix + \" - LOW\";\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === scenario)[0];\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"GMSL 17th percentile\"] =\r\n noaa2022Scenario[year];\r\n\r\n //get LMSL projections\r\n noaa2022 = noaa2022Json.filter((x) => {\r\n return x[\"usace gauge id\"] === parseInt(tideGauge);\r\n });\r\n\r\n //LMSL 83rd percentile\r\n scenario = noaaScenarioPrefix + \" - HIGH\";\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === scenario)[0];\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"LMSL 83rd percentile\"] =\r\n noaa2022Scenario[year];\r\n\r\n //LMSL Median\r\n scenario = noaaScenarioPrefix + \" - MED\";\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === scenario)[0];\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"LMSL Median\"] =\r\n noaa2022Scenario[year];\r\n\r\n //LMSL 17th percentile\r\n scenario = noaaScenarioPrefix + \" - LOW\";\r\n noaa2022Scenario = noaa2022.filter((x) => x[\"scenario\"] === scenario)[0];\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"LMSL 17th percentile\"] =\r\n noaa2022Scenario[year];\r\n\r\n //compute LMSL as percentage of GMSL\r\n var percentage = calcUtils.getLMSLAsPercentageOfGMSL(\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"LMSL 83rd percentile\"],\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"GMSL 83rd percentile\"]\r\n );\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"LMSL 83rd percentage of GMSL\"\r\n ] = Math.round(percentage);\r\n\r\n percentage = calcUtils.getLMSLAsPercentageOfGMSL(\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"LMSL Median\"],\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"GMSL Median\"]\r\n );\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"LMSL Median percentage of GMSL\"\r\n ] = Math.round(percentage);\r\n\r\n percentage = calcUtils.getLMSLAsPercentageOfGMSL(\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"LMSL 17th percentile\"],\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\"GMSL 17th percentile\"]\r\n );\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"LMSL 17th percentage of GMSL\"\r\n ] = Math.round(percentage);\r\n\r\n //round to 2 decimal places\r\n //GMSL 83rd percentile\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"GMSL 83rd percentile\"\r\n ] = seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"GMSL 83rd percentile\"\r\n ].toFixed(2);\r\n\r\n //GMSL Median\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"GMSL Median\"\r\n ] = seaLevelProjectionsAndProbabilityExceedingGMSL[\"GMSL Median\"].toFixed(\r\n 2\r\n );\r\n\r\n //GMSL 17th percentile\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"GMSL 17th percentile\"\r\n ] = seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"GMSL 17th percentile\"\r\n ].toFixed(2);\r\n\r\n //LMSL 83rd percentile\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"LMSL 83rd percentile\"\r\n ] = seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"LMSL 83rd percentile\"\r\n ].toFixed(2);\r\n\r\n //LMSL Median\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"LMSL Median\"\r\n ] = seaLevelProjectionsAndProbabilityExceedingGMSL[\"LMSL Median\"].toFixed(\r\n 2\r\n );\r\n\r\n //LMSL 17th percentile\r\n seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"LMSL 17th percentile\"\r\n ] = seaLevelProjectionsAndProbabilityExceedingGMSL[\r\n \"LMSL 17th percentile\"\r\n ].toFixed(2);\r\n\r\n return seaLevelProjectionsAndProbabilityExceedingGMSL;\r\n },\r\n\r\n getTidalRangeSuperimposedStormSurgeEvents(tideGauge) {\r\n var chartData = [];\r\n var highestAstronomicalTide = {\r\n name: \"Highest Astronomical Tide\",\r\n type: \"line\",\r\n marker: {\r\n symbol: \"square\",\r\n radius: 4,\r\n },\r\n color: \"#FF0000\",\r\n data: [0, 0, 0, 0, 0, 0, 0, 0, 0],\r\n };\r\n var meanHigherHighWater = {\r\n name: \"Mean Higher High Water\",\r\n type: \"line\",\r\n marker: {\r\n symbol: \"square\",\r\n radius: 5,\r\n },\r\n color: \"#FFC000\",\r\n data: [0, 0, 0, 0, 0, 0, 0, 0, 0],\r\n };\r\n var meanSeaLevel = {\r\n name: \"Mean Sea Level\",\r\n type: \"line\",\r\n marker: {\r\n symbol: \"circle\",\r\n radius: 6,\r\n lineColor: \"#000000\",\r\n lineWidth: 1,\r\n },\r\n color: \"#00B0F0\",\r\n data: [0, 0, 0, 0, 0, 0, 0, 0, 0],\r\n };\r\n var meanLowerLowWater = {\r\n name: \"Mean Lower Low Water\",\r\n type: \"line\",\r\n marker: {\r\n symbol: \"square\",\r\n radius: 5,\r\n },\r\n color: \"#FFC000\",\r\n data: [0, 0, 0, 0, 0, 0, 0, 0, 0],\r\n };\r\n var rangeValues = {\r\n type: \"columnrange\",\r\n color: \"#000000\",\r\n showInLegend: false,\r\n animation: {\r\n duration: 0,\r\n },\r\n data: [\r\n [0, 0],\r\n [0, 0],\r\n [0, 0],\r\n [0, 0],\r\n [0, 0],\r\n [0, 0],\r\n [0, 0],\r\n [0, 0],\r\n [0, 0],\r\n ],\r\n };\r\n\r\n var usaceTideGauge = tideGaugesJson.filter((gauge) => {\r\n return gauge[\"id\"] === parseInt(tideGauge);\r\n })[0];\r\n\r\n var hat = parseFloat(usaceTideGauge[\"hat (ft)\"]);\r\n var mhhw = parseFloat(usaceTideGauge[\"mhhw (ft)\"]);\r\n var mllw = parseFloat(usaceTideGauge[\"mllw (ft)\"]);\r\n\r\n //highest astronomical tide\r\n var values = [];\r\n if (!isNaN(hat)) {\r\n values.push(parseFloat(Number(hat.toFixed(2))));\r\n values.push(\r\n parseFloat(\r\n Number(hat + parseFloat(usaceTideGauge[\"monthly (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(hat + parseFloat(usaceTideGauge[\"yearly (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(hat + parseFloat(usaceTideGauge[\"2 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(hat + parseFloat(usaceTideGauge[\"5 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(hat + parseFloat(usaceTideGauge[\"10 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(hat + parseFloat(usaceTideGauge[\"20 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(hat + parseFloat(usaceTideGauge[\"50 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(hat + parseFloat(usaceTideGauge[\"100 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n }\r\n highestAstronomicalTide.data = values;\r\n\r\n //mean higher high water\r\n values = [];\r\n if (!isNaN(mhhw)) {\r\n values.push(parseFloat(Number(mhhw.toFixed(2))));\r\n values.push(\r\n parseFloat(\r\n Number(mhhw + parseFloat(usaceTideGauge[\"monthly (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mhhw + parseFloat(usaceTideGauge[\"yearly (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mhhw + parseFloat(usaceTideGauge[\"2 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mhhw + parseFloat(usaceTideGauge[\"5 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mhhw + parseFloat(usaceTideGauge[\"10 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mhhw + parseFloat(usaceTideGauge[\"20 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mhhw + parseFloat(usaceTideGauge[\"50 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mhhw + parseFloat(usaceTideGauge[\"100 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n }\r\n meanHigherHighWater.data = values;\r\n\r\n //mean sea level\r\n values = [];\r\n values.push(parseFloat(Number(usaceTideGauge[\"msl (ft)\"]).toFixed(2)));\r\n values.push(parseFloat(Number(usaceTideGauge[\"monthly (ft)\"]).toFixed(2)));\r\n values.push(parseFloat(Number(usaceTideGauge[\"yearly (ft)\"]).toFixed(2)));\r\n values.push(parseFloat(Number(usaceTideGauge[\"2 yr (ft)\"]).toFixed(2)));\r\n values.push(parseFloat(Number(usaceTideGauge[\"5 yr (ft)\"]).toFixed(2)));\r\n values.push(parseFloat(Number(usaceTideGauge[\"10 yr (ft)\"]).toFixed(2)));\r\n values.push(parseFloat(Number(usaceTideGauge[\"20 yr (ft)\"]).toFixed(2)));\r\n values.push(parseFloat(Number(usaceTideGauge[\"50 yr (ft)\"]).toFixed(2)));\r\n values.push(parseFloat(Number(usaceTideGauge[\"100 yr (ft)\"]).toFixed(2)));\r\n meanSeaLevel.data = values;\r\n\r\n //mean lower low water\r\n values = [];\r\n if (!isNaN(mllw)) {\r\n values.push(parseFloat(Number(mllw.toFixed(2))));\r\n values.push(\r\n parseFloat(\r\n Number(mllw + parseFloat(usaceTideGauge[\"monthly (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mllw + parseFloat(usaceTideGauge[\"yearly (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mllw + parseFloat(usaceTideGauge[\"2 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mllw + parseFloat(usaceTideGauge[\"5 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mllw + parseFloat(usaceTideGauge[\"10 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mllw + parseFloat(usaceTideGauge[\"20 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mllw + parseFloat(usaceTideGauge[\"50 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n values.push(\r\n parseFloat(\r\n Number(mllw + parseFloat(usaceTideGauge[\"100 yr (ft)\"])).toFixed(2)\r\n )\r\n );\r\n }\r\n meanLowerLowWater.data = values;\r\n\r\n //range values\r\n meanLowerLowWater.data.forEach((n, i) => {\r\n if (isNaN(n) || n === null) {\r\n meanLowerLowWater.data[i] = 0;\r\n }\r\n rangeValues.data[i] = [];\r\n rangeValues.data[i].push(meanLowerLowWater.data[i]);\r\n });\r\n meanSeaLevel.data.forEach((n, i) => {\r\n if (isNaN(n) || n === null) {\r\n meanSeaLevel.data[i] = 0;\r\n }\r\n });\r\n meanHigherHighWater.data.forEach((n, i) => {\r\n if (isNaN(n) || n === null) {\r\n meanHigherHighWater.data[i] = 0;\r\n }\r\n //some tide gauges do not have HAT so need to make MHHW the upper range in that case\r\n if (highestAstronomicalTide.data.length === 0) {\r\n rangeValues.data[i].push(meanHigherHighWater.data[i]);\r\n }\r\n });\r\n highestAstronomicalTide.data.forEach((n, i) => {\r\n if (isNaN(n) || n === null) {\r\n highestAstronomicalTide.data[i] = 0;\r\n }\r\n rangeValues.data[i].push(highestAstronomicalTide.data[i]);\r\n });\r\n\r\n if (rangeValues.data.length > 0) {\r\n chartData.push(rangeValues);\r\n }\r\n if (highestAstronomicalTide.data.length > 0) {\r\n chartData.push(highestAstronomicalTide);\r\n }\r\n if (meanHigherHighWater.data.length > 0) {\r\n chartData.push(meanHigherHighWater);\r\n }\r\n if (meanSeaLevel.data.length > 0) {\r\n chartData.push(meanSeaLevel);\r\n }\r\n if (meanLowerLowWater.data.length > 0) {\r\n chartData.push(meanLowerLowWater);\r\n }\r\n return chartData;\r\n },\r\n};\r\n","import \"bootstrap/dist/css/bootstrap.css\";\r\nimport \"bootstrap-vue/dist/bootstrap-vue.css\";\r\nimport \"babel-polyfill\";\r\nimport Vue from 'vue';\r\nimport App from './App.vue';\r\nimport { BootstrapVue, BootstrapVueIcons } from 'bootstrap-vue';\r\nimport HighchartsVue from \"highcharts-vue\";\r\nimport VueHtml2Canvas from \"vue-html2canvas\";\r\nimport router from \"./router\";\r\nimport { mapServerConfig } from \"../public/config\";\r\nimport { dataUtils } from \"./assets/js/data-utils\";\r\nimport { mapUtils } from \"./assets/js/map-utils\";\r\nimport { calcUtils } from \"./assets/js/calc-utils\";\r\nimport { loadModules } from 'esri-loader';\r\n\r\nVue.config.productionTip = false;\r\nVue.use(BootstrapVue);\r\nVue.use(BootstrapVueIcons);\r\nVue.use(HighchartsVue);\r\nVue.use(VueHtml2Canvas);\r\nVue.prototype.$mapServerConfig = mapServerConfig;\r\nVue.prototype.$dataUtils = dataUtils;\r\nVue.prototype.$mapUtils = mapUtils;\r\nVue.prototype.$calcUtils = calcUtils;\r\nVue.prototype.$loadModules = loadModules;\r\n\r\nnew Vue({\r\n render: h => h(App),\r\n router\r\n}).$mount('#app');\r\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation4.vue?vue&type=style&index=0&id=30d1b912&prod&scoped=true&lang=css\"","module.exports = __webpack_public_path__ + \"img/storm-surge.04a1428e.png\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation.vue?vue&type=style&index=0&id=d008f254&prod&scoped=true&lang=css\"","module.exports = __webpack_public_path__ + \"img/loader.1f395df9.gif\";","module.exports = __webpack_public_path__ + \"img/area.7ccebad4.jpg\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation2.vue?vue&type=style&index=0&id=7956e4ea&prod&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CriticalElevation3.vue?vue&type=style&index=0&id=9affdb3c&prod&scoped=true&lang=css\"","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=128a2465&prod&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3.vue?vue&type=style&index=0&id=4dd6ab47&prod&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year2.vue?vue&type=style&index=0&id=92de3f20&prod&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=style&index=0&id=6fc1f724&prod&scoped=true&lang=css\"","module.exports = __webpack_public_path__ + \"img/critical-elevation.2aba8856.png\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3_2.vue?vue&type=style&index=0&id=9e92a276&prod&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Year3_3.vue?vue&type=style&index=0&id=cd16cfc4&prod&scoped=true&lang=css\""],"sourceRoot":""}