{"version":3,"file":"js/app.832a3b40.js","mappings":"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","sources":["webpack://kiwi/./src/state/User.js","webpack://kiwi/./src/components/NavBar.vue","webpack://kiwi/./src/components/NavBar.vue?01fd","webpack://kiwi/./src/components/NavBarMobile.vue","webpack://kiwi/./src/state/StationsData.js","webpack://kiwi/./src/App.vue","webpack://kiwi/./src/App.vue?7ccd","webpack://kiwi/./src/modules/GoogleMapStyle.js","webpack://kiwi/./src/components/RegionFloatingBox.vue","webpack://kiwi/./src/components/RegionFloatingBox.vue?4887","webpack://kiwi/./src/state/RegionsData.js","webpack://kiwi/./src/state/SelectedStation.js","webpack://kiwi/./src/modules/StationIcon.js","webpack://kiwi/./src/modules/Geo.js","webpack://kiwi/./src/components/PollutionMap.vue","webpack://kiwi/./src/components/PollutionMap.vue?7bd9","webpack://kiwi/./src/components/charts/ValueGraph.vue","webpack://kiwi/./src/components/charts/ValueGraph.vue?5a5e","webpack://kiwi/./src/components/StationValue.vue","webpack://kiwi/./src/components/StationValue.vue?7e08","webpack://kiwi/./src/components/UaqiDiagram.vue","webpack://kiwi/./src/components/UaqiDiagram.vue?df7e","webpack://kiwi/./src/components/ModalComponent.vue","webpack://kiwi/./src/components/ModalComponent.vue?2dbd","webpack://kiwi/./src/components/ShareThis.vue","webpack://kiwi/./src/components/ShareThis.vue?dc1d","webpack://kiwi/./src/components/StationShare.vue","webpack://kiwi/./src/components/StationShare.vue?28a7","webpack://kiwi/./src/components/StationInfo.vue","webpack://kiwi/./src/components/StationInfo.vue?bb80","webpack://kiwi/./src/components/SearchOnMap.vue","webpack://kiwi/./src/components/SearchOnMap.vue?2ec5","webpack://kiwi/./src/components/ChangelogBlog.vue","webpack://kiwi/./src/components/ChangelogBlog.vue?58a4","webpack://kiwi/./src/components/WelcomePanel.vue","webpack://kiwi/./src/components/WelcomePanel.vue?f832","webpack://kiwi/./src/components/LoadingScreen.vue","webpack://kiwi/./src/components/LoadingScreen.vue?f185","webpack://kiwi/./src/views/HomeView.vue","webpack://kiwi/./src/views/HomeView.vue?1da1","webpack://kiwi/./src/modules/Language.js","webpack://kiwi/./src/components/RegionStatsItem.vue","webpack://kiwi/./src/components/RegionStatsItem.vue?c199","webpack://kiwi/./src/views/StatsView.vue","webpack://kiwi/./src/views/StatsView.vue?67db","webpack://kiwi/./src/components/StationListItem.vue","webpack://kiwi/./src/components/StationListItem.vue?9830","webpack://kiwi/./src/components/RegionMap.vue","webpack://kiwi/./src/components/RegionMap.vue?978c","webpack://kiwi/./src/components/PollutantValue.vue","webpack://kiwi/./src/components/PollutantValue.vue?9e16","webpack://kiwi/./src/components/charts/PollutionCalendar.vue","webpack://kiwi/./src/components/charts/PollutionCalendar.vue?3245","webpack://kiwi/./src/components/charts/PlotlyChart.vue","webpack://kiwi/./src/components/charts/PlotlyChart.vue?3dc6","webpack://kiwi/./src/views/RegionView.vue","webpack://kiwi/./src/views/RegionView.vue?7dbf","webpack://kiwi/./src/modules/DataValidation.js","webpack://kiwi/./src/views/LoginView.vue","webpack://kiwi/./src/views/LoginView.vue?5755","webpack://kiwi/./src/components/AvatarUpload.vue","webpack://kiwi/./src/components/AvatarUpload.vue?a100","webpack://kiwi/./src/views/CabinetView.vue","webpack://kiwi/./src/views/CabinetView.vue?bf87","webpack://kiwi/./src/views/StationView.vue","webpack://kiwi/./src/views/StationView.vue?983f","webpack://kiwi/./src/views/PasswordRecoveryView.vue","webpack://kiwi/./src/views/PasswordRecoveryView.vue?2846","webpack://kiwi/./src/views/PasswordResetView.vue","webpack://kiwi/./src/views/PasswordResetView.vue?bad5","webpack://kiwi/./src/components/LocationSelector.vue","webpack://kiwi/./src/components/LocationSelector.vue?0b8d","webpack://kiwi/./src/views/AddStationView.vue","webpack://kiwi/./src/views/AddStationView.vue?d522","webpack://kiwi/./src/views/CabinetStationView.vue","webpack://kiwi/./src/views/CabinetStationView.vue?e627","webpack://kiwi/./src/views/RegisterView.vue","webpack://kiwi/./src/views/RegisterView.vue?1ec6","webpack://kiwi/./src/router/index.js","webpack://kiwi/./src/main.js","webpack://kiwi/./src/modules/UAQI.js","webpack://kiwi/./src/components/GradientBackground.vue","webpack://kiwi/webpack/bootstrap","webpack://kiwi/webpack/runtime/chunk loaded","webpack://kiwi/webpack/runtime/compat get default export","webpack://kiwi/webpack/runtime/define property getters","webpack://kiwi/webpack/runtime/ensure chunk","webpack://kiwi/webpack/runtime/get javascript chunk filename","webpack://kiwi/webpack/runtime/get mini-css chunk filename","webpack://kiwi/webpack/runtime/global","webpack://kiwi/webpack/runtime/hasOwnProperty shorthand","webpack://kiwi/webpack/runtime/load script","webpack://kiwi/webpack/runtime/make namespace object","webpack://kiwi/webpack/runtime/publicPath","webpack://kiwi/webpack/runtime/css loading","webpack://kiwi/webpack/runtime/jsonp chunk loading","webpack://kiwi/webpack/startup"],"sourcesContent":["import { reactive } from 'vue'\n\nimport axios from 'axios'\n\nimport { event } from 'vue-gtag'\n\nexport const User = reactive({\n\tprofile: null,\n\tstations: null,\n\t_isAuthenticated: false,\n\tisAuthenticated() {\n\t\treturn this._isAuthenticated\n\t},\n\tasync register(user) {\n\t\ttry {\n\t\t\tconsole.log(\"REGISTRATION request\")\n\t\t\tconst response = await axios.post(\"/api/v1/auth/signup\", user)\n\n\t\t\tif (response.status == 200) {\n\t\t\t\tconsole.log(\"REGISTRATION SUCCESSFUL\")\n\n\t\t\t\t// Invoke Google Analytics event\n\t\t\t\tevent('registration', { method: 'Default' })\n\n\t\t\t\treturn true\n\t\t\t} else {\n\t\t\t\tconsole.error(\"REGISTRATION FAILED\")\n\t\t\t\treturn false\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error('Error REGISTRATION: ', error)\n\t\t\treturn false\n\t\t}\n\t},\n\tasync confirmEmail(token) {\n\t\ttry {\n\t\t\tconsole.log(\"EMAIL CONFIRMATION request\")\n\t\t\tconst response = await axios.post(\"/api/v1/auth/signup-confirmation?token=\" + token)\n\n\t\t\tif (response.status == 200) {\n\t\t\t\tconsole.log(\"EMAIL CONFIRMATION SUCCESSFUL\")\n\t\t\t\tthis._isAuthenticated = true\n\t\t\t} else {\n\t\t\t\tconsole.error(\"EMAIL CONFIRMATION FAILED\")\n\t\t\t\tthis._isAuthenticated = false\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error('Error EMAIL CONFIRMATION: ', error)\n\t\t\tthis._isAuthenticated = false\n\t\t}\n\n\t\treturn this.isAuthenticated()\n\t},\n\tasync login(email, password) {\n\t\tconst user = {\n\t\t\t\"email\": email,\n\t\t\t\"password\": password\n\t\t}\n\n\t\ttry {\n\t\t\tconsole.log(\"LOGIN request\")\n\t\t\tconst response = await axios.post(\"/api/v1/auth/signin\", user)\n\n\t\t\tif (response.status == 200) {\n\t\t\t\tconsole.log(\"LOGIN SUCCESSFUL\")\n\t\t\t\tthis._isAuthenticated = true\n\n\t\t\t\t// Invoke Google Analytics event\n\t\t\t\tevent('login', { method: 'Default' })\n\t\t\t} else {\n\t\t\t\tconsole.error(\"LOGIN FAILED\")\n\t\t\t\tthis._isAuthenticated = false\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error('Error LOGIN: ', error)\n\t\t\tthis._isAuthenticated = false\n\t\t}\n\n\t\treturn this.isAuthenticated()\n\t},\n\tasync loginGoogle(code) {\n\t\ttry {\n\t\t\tconsole.log(\"LOGIN request\")\n\t\t\tconst response = await axios.post(\"/api/v1/auth/signin/google?code=\" + code)\n\n\t\t\tif (response.status == 200) {\n\t\t\t\tconsole.log(\"LOGIN SUCCESSFUL\")\n\t\t\t\tthis._isAuthenticated = true\n\n\t\t\t\t// Invoke Google Analytics event\n\t\t\t\tevent('login', { method: 'Google' })\n\t\t\t} else {\n\t\t\t\tconsole.error(\"LOGIN FAILED\")\n\t\t\t\tthis._isAuthenticated = false\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error('Error GOOGLE LOGIN: ', error)\n\t\t\tthis._isAuthenticated = false\n\t\t}\n\n\t\treturn this.isAuthenticated()\n\t},\n\tasync logout() {\n\t\ttry {\n\t\t\tconsole.log(\"LOGOUT request\")\n\t\t\tawait axios.delete(\"/api/v1/auth/signout\")\n\n\t\t\tconsole.log(\"LOGOUT SUCCESSFUL\")\n\t\t\tthis._isAuthenticated = false\n\t\t\tthis.profile = null\n\t\t\tthis.stations = null\n\t\t} catch (error) {\n\t\t\tconsole.error('Error LOGOUT: ', error)\n\t\t}\n\n\t\treturn this.isAuthenticated()\n\t},\n\tasync fetchProfile() {\n\t\ttry {\n\t\t\tconsole.log(\"Loading PROFILE\")\n\t\t\tconst response = await axios.get(\"/api/v1/cabinet/profile\")\n\t\t\tthis.profile = response.data\n\t\t\tthis._isAuthenticated = true\n\t\t\treturn true\n\t\t} catch (error) {\n\t\t\tconsole.error('Failed to load PROFILE: ', error)\n\t\t\treturn false\n\t\t}\n\t},\n\tasync fetchStations() {\n\t\ttry {\n\t\t\tconsole.log(\"Loading USER STATIONS\")\n\t\t\tconst response = await axios.get(\"/api/v1/cabinet/stations_list\")\n\t\t\tthis.stations = response.data\n\t\t} catch (error) {\n\t\t\tconsole.error('Failed to load USER STATIONS: ', error)\n\t\t}\n\t},\n\tasync saveProfile() {\n\t\ttry {\n\t\t\tconsole.log(\"Saving USER PROFILE edit\")\n\t\t\tconst response = await axios.patch(\"/api/v1/cabinet/profile\", this.profile)\n\t\t\treturn response.status == 200\n\t\t} catch (error) {\n\t\t\tconsole.error('Failed to save USER PROFILE: ', error)\n\t\t\treturn false\n\t\t}\n\t}\n})","\n\n\n\n\n\n","import script from \"./NavBar.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./NavBar.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./NavBar.vue?vue&type=style&index=0&id=4811a20a&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4811a20a\"]])\n\nexport default __exports__","import script from \"./NavBarMobile.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./NavBarMobile.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./NavBarMobile.vue?vue&type=style&index=0&id=74f044fc&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-74f044fc\"]])\n\nexport default __exports__","import { reactive } from 'vue'\n\nimport axios from 'axios'\n\nexport const StationsData = reactive({\n\tstations: null,\n\t_updatedAt: null, // Used to check if data need to be updated\n\t_inUseOf: [ ], // Used to pause autofetch from server\n\tautoUpdate: false, // Is auto update set up\n\t_bounds: { // Filter stations by coordinates\n\t\tnorth: 50.7360,\n\t\tsouth: 50.1922,\n\t\teast: 31.0110,\n\t\twest: 30.01130,\n\t},\n\tget() {\n\t\treturn this.stations\n\t},\n\tisUpdateNeeded() {\n\t\t// If never received data\n\t\tif (this._updatedAt == null) return true\n\n\t\t// The number of milliseconds after which the data should be updated\n\t\tconst updateTimeout = (10 * 1000) \n\n\t\treturn (Date.now() - this._updatedAt > updateTimeout)\n\t},\n\tasync update() {\n\t\ttry {\n\t\t\tconsole.log(\"Loading STATIONS data\")\n\n\t\t\tconst response = await axios.get(\n\t\t\t\t\"/api/v1/map\" + \n\t\t\t\t\"?south=\" + 43.5 + \n\t\t\t\t\"&west=\" + 22.0 +\n\t\t\t\t\"&north=\" + 53.5 +\n\t\t\t\t\"&east=\" + 40.3\n\t\t\t)\n\n\t\t\tthis.stations = response.data\n\n\t\t\tconsole.log(\"STATIONS data updated\")\n\t\t\tthis._updatedAt = Date.now()\n\t\t} catch (error) {\n\t\t\tconsole.error('Error fetching STATIONS: ', error)\n\t\t}\n\t},\n\tsetInUse(nameOfService) {\n\t\tif (this._inUseOf.indexOf(nameOfService) == -1) {\n\t\t\tthis._inUseOf.push(nameOfService)\n\t\t}\n\t},\n\tunsetInUse(nameOfService) {\n\t\tconst index = this._inUseOf.indexOf(nameOfService)\n\t\tif (index != -1) {\n\t\t\tthis._inUseOf.splice(index, 1);\n\t\t}\n\t},\n\tisInUse()\n\t{\n\t\treturn this._inUseOf.length > 0\n\t},\n\tsetupAutoUpdating() {\n\t\tconsole.log(\"AutoUpdate for STATIONS setup\")\n\t\tthis.autoUpdate = true\n\t\tsetInterval(() => {\n\t\t\tif (this.isInUse()) this.update()\t\t\n\t\t}, 10 * 1000);\n\t},\n\tsetBounds(bounds) {\n\t\tthis.bounds = bounds\n\t}\n})","\n\n\n\n\n","import script from \"./App.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=773ca5fa&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__","// Created using https://mapstyle.withgoogle.com/ and \"Dark\" preset \nexport const darkStyle = [\n\t{\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#212121\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"elementType\": \"labels.icon\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"visibility\": \"off\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#757575\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#212121\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"administrative\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#757575\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"administrative.country\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#9e9e9e\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"administrative.land_parcel\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"visibility\": \"off\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"administrative.land_parcel\",\n\t\t\"elementType\": \"labels\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"visibility\": \"off\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"administrative.locality\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#bdbdbd\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"labels.text\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"visibility\": \"off\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#757575\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#181818\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#616161\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#1b1b1b\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"geometry.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#2c2c2c\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#8a8a8a\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"road.arterial\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#373737\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#3c3c3c\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"road.highway.controlled_access\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#4e4e4e\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"road.local\",\n\t\t\"elementType\": \"labels\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"visibility\": \"off\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"road.local\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#616161\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"transit\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#757575\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#000000\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#3d3d3d\"\n\t\t\t}\n\t\t]\n\t}\n];","\n\n\n\n","import script from \"./RegionFloatingBox.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./RegionFloatingBox.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./RegionFloatingBox.vue?vue&type=style&index=0&id=c0835532&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-c0835532\"]])\n\nexport default __exports__","import { reactive } from 'vue'\n\nimport axios from 'axios'\n\nexport const RegionsData = reactive({\n\tregions: null,\n\tupdatedAt: null, // Used to check if data need to be updated\n\tupdateInProgress: false, // Check to avoid running few updates in the same time\n\tget() {\n\t\treturn this.regions\n\t},\n\tasync getUpdated() {\n\t\t// Update data if needed\n\t\tif (this.regions == null) \n\t\t\tawait this.update()\n\t\telse if (this.isUpdateNeeded()) \n\t\t\tthis.update()\n\n\t\treturn this.regions\n\t},\n\tisUpdateNeeded() {\n\t\t// If never received data\n\t\tif (this.updatedAt == null) return true\n\n\t\t// The number of milliseconds after which the data should be updated\n\t\tconst updateTimeout = (30 * 1000) \n\n\t\treturn (Date.now() - this.updatedAt > updateTimeout)\n\t},\n\tasync update() {\n\t\tif (this.updateInProgress) { \n\t\t\tconsole.warn(\"Regions update already in progress\")\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tconsole.log(\"Loading REGIONS data\")\n\t\t\tthis.updateInProgress = true\n\t\t\t\n\t\t\t// const response = await axios.get('test_data/regions.json')\n\t\t\tconst response = await axios.get('/api/v1/regions')\n\n\t\t\tthis.updatedAt = Date.now()\n\t\t\tthis.regions = response.data\n\t\t\t\n\t\t\tconsole.log(\"REGIONS data updated\")\n\t\t\tthis.updateInProgress = false\n\t\t} catch (error) {\n\t\t\tconsole.error('Error fetching REGIONS: ', error)\n\t\t}\n\t}\n})","import { reactive } from 'vue'\n\nimport axios from 'axios'\n\nimport { event } from 'vue-gtag'\n\nexport const SelectedStation = reactive({\n\tstation: null,\n\tdata: null,\n\tgraphs: { \n\t\taverage_48h_1h: null,\n\t\taverage_30d_1d: null,\n\t},\n\t_cancelSource: null,\n\t_onChangedCallbacks: [],\n\tgetInfo() {\n\t\treturn this.station;\n\t},\n\tgetData() {\n\t\treturn this.data;\n\t},\n\tgetGraphs() {\n\t\treturn this.graphs\n\t},\n\tset(station) {\n\t\tif (station == null) {\n\t\t\tconsole.error(\"Station is NULL\")\n\t\t\treturn\n\t\t}\n\n\t\tif (this.station != null && station.id == this.station.id) {\n\t\t\tconsole.log(\"Station is already selected\")\n\t\t\treturn\n\t\t}\n\n\t\tconsole.log(\"Selected station: \" + station.id)\n\t\tthis.station = station\n\n\t\t// Invoke Google Analytics event\n\t\tevent('view_station', { station_id: station.id, station_name: station.name })\n\n\t\t// If data is loading, drop request\n\t\tif (this._cancelSource != null) { \n\t\t\tthis._cancelSource.cancel('Request canceled due to user action')\n\t\t}\n\n\t\t// Create new cancellation source\n\t\tthis._cancelSource = axios.CancelToken.source();\n\n\t\tthis.fetchData()\n\t\tthis.fetchGraph()\n\n\t\t// Run onChanged callback\n\t\tfor (const callback of this._onChangedCallbacks) callback()\n\t},\n\tremove() {\n\t\tthis.station = null\n\t},\n\tasync fetchData() {\n\t\ttry {\n\t\t\tconst response = await axios.get(\n\t\t\t\t`api/v1/station?id=${this.station.id}`,\n\t\t\t\t{ cancelToken: this._cancelSource.token }\n\t\t\t)\n\t\t\tconsole.log(\"STATION loaded\")\n\t\t\tthis.data = updateData(this.data, response.data)\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Error fetching STATION: \", error)\n\t\t\tthis.data = null;\n\t\t}\n\n\t\tfunction updateData(oldData, newData) {\n\t\t\t// Data from other station or first station\n\t\t\tif (oldData == null || oldData.id != newData.id) {\n\t\t\t\treturn newData\n\t\t\t}\n\n\t\t\t// No updates needed\n\t\t\tif (oldData.last_online == newData.last_online) {\n\t\t\t\treturn oldData\n\t\t\t}\n\n\t\t\t// Update values\n\t\t\t// for (v in newData.current_values) {\n\t\t\t\t\n\t\t\t// \tlet oldValue = oldData.current_values.find(\n\t\t\t// \t\te => e.sensor == v.sensor && \n\t\t\t// \t\te.type == v.type && \n\t\t\t// \t\te.unit == v.unit\n\t\t\t// \t)\n\n\t\t\t// \tif (oldValue) {\n\t\t\t// \t\toldValue.value = v.value\n\t\t\t// \t} else {\n\n\t\t\t// \t}\n\t\t\t// }\n\n\t\t\t// Update other data\n\t\t\tfor (const key in oldData) {\n\t\t\t\tif (!(key in newData)) delete oldData[key]\n\t\t\t}\n\n\t\t\tObject.assign(oldData, newData)\n\n\t\t\treturn newData\n\t\t}\n\t},\n\tasync fetchGraph() {\n\t\ttry {\n\t\t\t// const response = await axios.get(`/test_data/graph${\"1\"}.json`)\n\t\t\tconst response = await axios.get(\n\t\t\t\t`/api/v1/graphs/average_48h_1h?station_id=${this.station.id}`,\n\t\t\t\t{ cancelToken: this._cancelSource.token }\n\t\t\t)\n\n\t\t\tthis.graphs.average_48h_1h = response.data\n\t\t\tconsole.log(\"GRAPH loaded\")\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Error fetching GRAPH: \", error)\n\t\t}\n\t},\n\tisSelected(station) {\n\t\tif (this.station == null) return false\n\t\t\n\t\t// Compare by id\n\t\treturn this.station.id == station.id\n\t},\n\tonStationChanged(callback) {\n\t\tif (typeof callback === 'function') {\n\t\t\tthis._onChangedCallbacks.push(callback)\n\t\t} else {\n\t\t\tthrow new Error('Callback must be a function');\n\t\t}\n\t}\n})","\nimport { faHouseChimney } from '@fortawesome/free-solid-svg-icons'\nimport { faTreeCity } from '@fortawesome/free-solid-svg-icons'\nimport { faWrench } from '@fortawesome/free-solid-svg-icons'\nimport { faBriefcase } from '@fortawesome/free-solid-svg-icons'\nimport { faCircle } from '@fortawesome/free-solid-svg-icons'\n\n\n\nexport function getStationIcon(station) {\n\n\tconst typeToIcon = {\n\t\t\"indoor\": faHouseChimney,\n\t\t\"outdoor\": faTreeCity,\n\t\t\"service\": faWrench,\n\t\t\"portable\": faBriefcase\n\t}\n\n\tif (station == null) \n\t\treturn faCircle\n\n\tif (station.service == true) \n\t\treturn typeToIcon[\"service\"]\n\n\treturn typeToIcon[station.type]\n}\n","/**\n * Expand bounds \n * \n * @param {Object} api Google Maps API (mapRef.value.api / new google.maps)\n * @param {Object} bounds Bounds to expand \n * @param {Number} increasePercentage Increase percent \n * @returns {Object} Expanded bounds object\n */\nexport function expandBounds(api, bounds, increasePercentage = 1.1) {\n\tconst pointNorthEast = bounds.getNorthEast();\n\tconst pointSouthWest = bounds.getSouthWest();\n\n\tvar latAdjustment = (pointNorthEast.lat() - pointSouthWest.lat()) * (increasePercentage - 1);\n\tvar lngAdjustment = (pointNorthEast.lng() - pointSouthWest.lng()) * (increasePercentage - 1);\n\t\n\tvar newPointNorthEast = new api.LatLng(pointNorthEast.lat() + latAdjustment, pointNorthEast.lng() + lngAdjustment);\n\tvar newPointSouthWest = new api.LatLng(pointSouthWest.lat() - latAdjustment, pointSouthWest.lng() - lngAdjustment);\n\n\tlet newBounds = new api.LatLngBounds()\n\tnewBounds.extend(newPointNorthEast)\n\tnewBounds.extend(newPointSouthWest)\n\n\treturn newBounds\n}\n\n/**\n * Check if station is in bounds \n * \n * @param {Object} api Google Maps API (mapRef.value.api / new google.maps)\n * @param {Object} map Map Object (mapRef.value.map / google.maps.Map) \n * @param {Object} station Station object\n * @returns {Boolean} True if station in specified bounds\n */\nexport function isStationsInMapBounds(api, map, station) {\n\tlet bounds = map?.getBounds()\n\n\t// Map not loaded\n\tif (bounds == null) return true\n\n\t// Expand to not clip\n\tbounds = expandBounds(api, bounds, 1.1)\n\n\treturn bounds.contains(\n\t\t{ lat: station.latitude, lng: station.longitude }\n\t)\n}\n\n\n// Is map animation running\nvar isMapAnimation = false\n\n/**\n * Set map zoom to Ukraine\n * \n * @param {Object} api Google Maps API (mapRef.value.api / new google.maps)\n * @param {Object} map Map Object (mapRef.value.map / google.maps.Map) \n */\nexport function zoomToUkraine(api, map) {\n\tconsole.log(\"Zoom to Ukraine\")\n\n\t// Cancel animation if already zooming\n\tif (isMapAnimation != false) return \n\n // Coordinates of Ukraine bounds\n const bounds = {\n\t\t// North offset to fit map under search bar\n north: ( 52.379528 + 0.5), // Northern latitude\n south: 44.390913, // South latitude\n east: 40.228727, // Eastern longitude\n west: 22.128711 // Western longitude\n };\n\n // Create an object LatLngBounds for Ukraine's borders\n const ukraineBounds = new api.LatLngBounds(\n new api.LatLng(bounds.south, bounds.west), // Southwestern corner\n new api.LatLng(bounds.north, bounds.east) // Northeast corner\n );\n\n\t// Disable user zoom control and set flag\n\tisMapAnimation = true\n\tmap.setOptions({ gestureHandling: \"none\" })\n\n\t// Using timeout as it won't work in any other way\n\tsetTimeout(() => {\n\t\t// Pan and zoom the map to the borders of Ukraine\n\t\tmap.panToBounds(ukraineBounds);\n\t\tmap.fitBounds(ukraineBounds);\n\t}, 100)\n\n\t// Waiting to the end of animation\n\tsetTimeout(() => {\n\t\tisMapAnimation = false\n\t\tmap.setOptions({ gestureHandling: \"auto\" })\n\t}, 1000)\n}","\n\n\n\n\n\n\n","import script from \"./PollutionMap.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./PollutionMap.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./PollutionMap.vue?vue&type=style&index=0&id=f32f84e0&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-f32f84e0\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./ValueGraph.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ValueGraph.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./ValueGraph.vue?vue&type=style&index=0&id=7f58bddc&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7f58bddc\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./StationValue.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./StationValue.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./StationValue.vue?vue&type=style&index=0&id=05df623c&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-05df623c\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./UaqiDiagram.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./UaqiDiagram.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./UaqiDiagram.vue?vue&type=style&index=0&id=2785a11e&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2785a11e\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./ModalComponent.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ModalComponent.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./ModalComponent.vue?vue&type=style&index=0&id=ebd9b75c&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ebd9b75c\"]])\n\nexport default __exports__","\n\n\n\n\n\n\n\n","import { render } from \"./ShareThis.vue?vue&type=template&id=09eadcee&scoped=true\"\nimport script from \"./ShareThis.vue?vue&type=script&lang=js\"\nexport * from \"./ShareThis.vue?vue&type=script&lang=js\"\n\nimport \"./ShareThis.vue?vue&type=style&index=0&id=09eadcee&scoped=true&lang=css\"\nimport \"./ShareThis.vue?vue&type=style&index=1&id=09eadcee&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-09eadcee\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./StationShare.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./StationShare.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./StationShare.vue?vue&type=style&index=0&id=68624edb&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-68624edb\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./StationInfo.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./StationInfo.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./StationInfo.vue?vue&type=style&index=0&id=6dc987c7&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6dc987c7\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./SearchOnMap.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./SearchOnMap.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./SearchOnMap.vue?vue&type=style&index=0&id=51020b00&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-51020b00\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./ChangelogBlog.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ChangelogBlog.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./ChangelogBlog.vue?vue&type=style&index=0&id=55d1d8e1&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n\n","import script from \"./WelcomePanel.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./WelcomePanel.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./WelcomePanel.vue?vue&type=style&index=0&id=0721d072&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0721d072\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./LoadingScreen.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./LoadingScreen.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./LoadingScreen.vue?vue&type=style&index=0&id=ad3a307e&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ad3a307e\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./HomeView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./HomeView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./HomeView.vue?vue&type=style&index=0&id=0da194f8&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0da194f8\"]])\n\nexport default __exports__","\n// Change the end of a word based on a numerator\nexport function getStationWord(number) {\n let word = \"станцій\";\n\n if (number % 100 >= 11 && number % 100 <= 14) {\n word = \"станцій\";\n } else {\n switch (number % 10) {\n case 1:\n word = \"станція\";\n break;\n case 2:\n case 3:\n case 4:\n word = \"станції\";\n break;\n default:\n word = \"станцій\";\n }\n }\n\n return `${number} ${word}`;\n}","\n\n\n\n","import script from \"./RegionStatsItem.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./RegionStatsItem.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./RegionStatsItem.vue?vue&type=style&index=0&id=6d45c0dc&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6d45c0dc\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./StatsView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./StatsView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./StatsView.vue?vue&type=style&index=0&id=0c8765ac&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0c8765ac\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./StationListItem.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./StationListItem.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./StationListItem.vue?vue&type=style&index=0&id=14af92f4&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-14af92f4\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./RegionMap.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./RegionMap.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n\n","import script from \"./PollutantValue.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./PollutantValue.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./PollutantValue.vue?vue&type=style&index=0&id=79093c27&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-79093c27\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./PollutionCalendar.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./PollutionCalendar.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./PollutionCalendar.vue?vue&type=style&index=0&id=25efd194&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-25efd194\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./PlotlyChart.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./PlotlyChart.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n\n\n","import script from \"./RegionView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./RegionView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./RegionView.vue?vue&type=style&index=0&id=40c46fb0&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-40c46fb0\"]])\n\nexport default __exports__","export function isSerialNumberValid(serial_number) {\n\tconst re = /^(?:\\d{7,8}|[A-Fa-f0-9]{12})$/\n\treturn re.test(serial_number)\n}\n\nexport function isLatValid(l) {\n\treturn l != null && l > 43.5 && l < 53.5\n}\n\nexport function isLonValid(l) {\n\treturn l != null && l > 22.2 && l < 40.3\n}\n\nexport function isAltValid(a) {\n\treturn a != null && a > 0.5 && a < 100\n}\n\nexport function isStationNameValid(n) {\n\treturn n != null && n.length > 0 && n.length <= 64\n}\n\nexport function isUserNameValid(name) {\n\treturn name != null && name.length > 2 && name.length <= 64\n}\n\nexport function isUrlValid(url) {\n\t//eslint-disable-next-line\n\tconst re = /https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%_\\+.~#()?&//=]*)/\n\treturn url != null && url.length > 0 && re.test(url)\n}\n\nexport function isPhoneValid(phone) {\n\tconst re = /^(\\+?38\\s?)?\\(?0[5-9][0-9]\\)?[\\s-]?\\d{3}[\\s-]?\\d{2}[\\s-]?\\d{2}$/\n\treturn phone != null && phone.length > 0 && re.test(phone)\n}\n\nexport function isStationValid(station) {\n\tif (station == null) return false \n\n\treturn (\n\t\tisLatValid(station.latitude) &&\n\t\tisLonValid(station.longitude) &&\n\t\tisAltValid(station.installation_altitude) &&\n\t\tisStationNameValid(station.name)\n\t)\n}\n\nexport function isEmailValid(email) {\n\t//eslint-disable-next-line\n\tconst re = /^([a-z0-9_\\.\\+-]+)@([\\da-z\\.-]+)\\.([a-z\\.]{2,6})$/\n\treturn email != null && re.test(email)\n}","\n\n\n\n","import script from \"./LoginView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./LoginView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./LoginView.vue?vue&type=style&index=0&id=65b08ea4&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-65b08ea4\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./AvatarUpload.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./AvatarUpload.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./AvatarUpload.vue?vue&type=style&index=0&id=58aa6455&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-58aa6455\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./CabinetView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./CabinetView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./CabinetView.vue?vue&type=style&index=0&id=3feb9a90&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-3feb9a90\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./StationView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./StationView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./StationView.vue?vue&type=style&index=0&id=31bd00a6&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-31bd00a6\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./PasswordRecoveryView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./PasswordRecoveryView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./PasswordRecoveryView.vue?vue&type=style&index=0&id=1bed7e54&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1bed7e54\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./PasswordResetView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./PasswordResetView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./PasswordResetView.vue?vue&type=style&index=0&id=13480d16&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-13480d16\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./LocationSelector.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./LocationSelector.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./LocationSelector.vue?vue&type=style&index=0&id=0df4c4cd&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0df4c4cd\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./AddStationView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./AddStationView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./AddStationView.vue?vue&type=style&index=0&id=baba1698&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-baba1698\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./CabinetStationView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./CabinetStationView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./CabinetStationView.vue?vue&type=style&index=0&id=dba61b98&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-dba61b98\"]])\n\nexport default __exports__","\n\n\n\n","import script from \"./RegisterView.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./RegisterView.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./RegisterView.vue?vue&type=style&index=0&id=107b9c5e&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-107b9c5e\"]])\n\nexport default __exports__","import { createRouter, createWebHistory } from 'vue-router'\nimport HomeView from '@/views/HomeView.vue'\nimport StatsView from '@/views/StatsView.vue'\nimport RegionView from '@/views/RegionView.vue'\nimport LoginView from '@/views/LoginView.vue'\nimport CabinetView from '@/views/CabinetView.vue'\nimport StationView from '@/views/StationView.vue'\nimport PasswordRecoveryView from '@/views/PasswordRecoveryView.vue'\nimport PasswordResetView from '@/views/PasswordResetView.vue'\nimport AddStationView from '@/views/AddStationView.vue'\nimport CabinetStationView from '@/views/CabinetStationView.vue'\nimport RegisterView from '@/views/RegisterView.vue'\n\nimport { User } from '@/state/User.js'\n\nconst routes = [\n\t{\n\t\tpath: '/',\n\t\tname: 'home',\n\t\tcomponent: HomeView\n\t},\n\t{\n\t\tpath: '/stats',\n\t\tname: 'stats',\n\t\tcomponent: StatsView\n\t},\n\t{\n\t\tpath: '/region/:id',\n\t\tname: 'region',\n\t\tcomponent: RegionView,\n\t\tprops: true,\n\t\tmeta: { scrollToTop: true }\n\t},\n\t{\n\t\tpath: '/station/:id',\n\t\tname: 'station',\n\t\tcomponent: StationView,\n\t\tprops: true,\n\t\tmeta: { scrollToTop: true }\n\t},\n\t{\n\t\tpath: '/login',\n\t\tname: 'login',\n\t\tcomponent: LoginView,\n\t\tbeforeEnter: (to, from, next) => {\n\t\t\tif (User.isAuthenticated()) {\n\t\t\t\tnext('/cabinet')\n\t\t\t\treturn\n\t\t\t} else {\n\t\t\t\tnext()\n\t\t\t}\n\t\t}\n\t},\n\t{\n\t\tpath: '/password-recovery',\n\t\tname: 'password-recovery',\n\t\tcomponent: PasswordRecoveryView,\n\t\tbeforeEnter: (to, from, next) => {\n\t\t\tif (User.isAuthenticated()) {\n\t\t\t\tnext('/cabinet')\n\t\t\t\treturn\n\t\t\t} else {\n\t\t\t\tnext()\n\t\t\t}\n\t\t}\n\t},\n\t{\n\t\tpath: '/register',\n\t\tname: 'register',\n\t\tcomponent: RegisterView,\n\t\tbeforeEnter: (to, from, next) => {\n\t\t\tif (User.isAuthenticated()) {\n\t\t\t\tnext('/cabinet')\n\t\t\t\treturn\n\t\t\t} else {\n\t\t\t\tnext()\n\t\t\t}\n\t\t}\n\t},\n\t{\n\t\tpath: '/reset-password',\n\t\tname: 'reset-password',\n\t\tcomponent: PasswordResetView\n\t},\n\t{\n\t\tpath: '/cabinet',\n\t\tname: 'cabinet',\n\t\tcomponent: CabinetView,\n\t\tmeta: { requiresAuth: true, scrollToTop: true }\n\t},\n\t{\n\t\tpath: '/cabinet/add-station',\n\t\tname: 'add-station',\n\t\tcomponent: AddStationView,\n\t\tmeta: { requiresAuth: true }\n\t},\n\t{\n\t\tpath: '/cabinet/station/:id',\n\t\tname: 'cabinet-station',\n\t\tprops: true,\n\t\tcomponent: CabinetStationView,\n\t\tmeta: { requiresAuth: true, scrollToTop: true }\n\t},\n\t{\n\t\tpath: '/about',\n\t\tname: 'about',\n\t\t// route level code-splitting\n\t\t// this generates a separate chunk (about.[hash].js) for this route\n\t\t// which is lazy-loaded when the route is visited.\n\t\tcomponent: () => import(/* webpackChunkName: \"about\" */ '../views/AboutView.vue')\n\t}\n]\n\nconst router = createRouter({\n\thistory: createWebHistory(process.env.BASE_URL),\n\troutes,\n\tscrollBehavior(to, from, savedPosition) {\n\t\t// If the route has a scrollToTop parameter, scroll to top\n\t\tif (to.meta.scrollToTop) return { top: 0 }\n\n\t\t// We restore the preserved position if it exists\n\t\tif (savedPosition) {\n\t\t\treturn savedPosition\n\t\t} else {\n\t\t\treturn { top: 0 }\n\t\t}\n\t}\n})\n\nrouter.beforeEach((to, _, next) => {\n\tif (to.matched.some(record => record.meta.requiresAuth)) {\n\t\tif (User.isAuthenticated()) {\n\t\t\tnext();\n\t\t\treturn;\n\t\t}\n\t\tnext('/login');\n\t} else {\n\t\tnext();\n\t}\n});\n\nexport default router\n","import { createApp } from 'vue'\nimport App from './App.vue'\nimport router from './router'\nimport VueGtag from 'vue-gtag'\nimport vue3GoogleLogin from 'vue3-google-login'\n\nimport \"./assets/main.css\"\nimport \"./assets/flexboxgrid.min.css\"\n\nimport axios from 'axios'\n\naxios.defaults.withCredentials = true\naxios.defaults.baseURL = 'https://reborn.eco-city.org.ua/'\n\ncreateApp(App)\n\t.use(router)\n\t.use(VueGtag, { appName: \"RebornOne\", config: { id: \"G-DLKJT4GH4N\" } }, router)\n\t.use(vue3GoogleLogin, { \n\t\tclientId: '346250455480-851jk6b9r5dtv3tc0fj1qnc8a98he7c4.apps.googleusercontent.com'})\n\t.mount('#app')\n","\n// Colors of UAQI levels\nexport const uaqiColors = [\n\t\"#808080\",\n\t\"#386270\",\n\t\"#286444\",\n\t\"#7e6626\",\n\t\"#7c2f2f\",\n\t\"#612424\",\n\t\"#4a2e5f\",\n];\n\n// Bright version of UAQI colors\nexport const uaqiColorsBright = [\n\t\"#808080\",\n\t\"#68CBF8\",\n\t\"#27BF88\",\n\t\"#FFC000\",\n\t\"#FF0000\",\n\t\"#C00000\",\n\t\"#7030A4\",\n];\n\nexport const uaqiDescriptions = [\n\t{\n\t\tname: \"Якість повітря невідома\",\n\t\tair: \"ніяке\",\n\t\tdescription: \"Наразі інформація про якість повітря невідома.\"\n\t},\n\t{\n\t\tname: \"Добра якість повітря\",\n\t\tair: \"добре\",\n\t\tdescription: \"Вміст у повітрі забруднюючих речовин у межах норми та не становить небезпеки.\",\n\t\t// info: \"Плануйте діяльність, відпочинок або інші активності на відкритому повітрі без додаткових обмежень, застережень або рекомендацій.\",\n\t\trecommendations: {\n\t\t\toutdoor: {\n\t\t\t\tall: \"Плануйте діяльність без спеціальних обмежень\",\n\t\t\t\trisk: \"Плануйте діяльність без спеціальних обмежень\"\n\t\t\t},\n\t\t\tindoor: {\n\t\t\t\tall: \"Плануйте діяльність без спеціальних обмежень\",\n\t\t\t\trisk: \"Плануйте діяльність без спеціальних обмежень\"\n\t\t\t},\n\t\t\tin_case_of_symptoms: {\n\t\t\t\trisk: \"Зверніться за консультацією до сімейного лікаря\"\n\t\t\t},\n\t\t\tadditional: {\n\t\t\t\tall: \"Слідкуйте за оновленням інформації\",\n\t\t\t\t// risk: \"Слідкуйте за оновленням інформації\"\n\t\t\t}\n\t\t}\n\t},\n\t{\n\t\tname: \"Задовільна якість повітря\",\n\t\tair: \"задовільне\",\n\t\tdescription: \"Вміст у повітрі забруднюючих речовин у межах норми та не становить небезпеки.\",\n\t\t// info: \"Плануйте діяльність, відпочинок або інші активності на відкритому повітрі без додаткових обмежень, застережень або рекомендацій.\",\n\t\t// consequences: \"У рідких випадках у дуже невеликої кількості населення, які надзвичайно чутливі до забруднення повітря, можуть виникнути дискомфорт та рефлекторні реакції – кашель, задишка тощо. Надзвичайно чутливим до забруднення повітря людям рекомендуємо зменшити тривалі або важкі фізичні навантаження на відкритому повітрі.\",\n\t\trecommendations: {\n\t\t\toutdoor: {\n\t\t\t\tall: \"Плануйте діяльність без спеціальних обмежень\",\n\t\t\t\trisk: \"Плануйте діяльність без спеціальних обмежень\"\n\t\t\t},\n\t\t\tindoor: {\n\t\t\t\tall: \"Плануйте діяльність без спеціальних обмежень\",\n\t\t\t\trisk: \"Плануйте діяльність без спеціальних обмежень\"\n\t\t\t},\n\t\t\tin_case_of_symptoms: {\n\t\t\t\trisk: \"Уникайте активної фізичної діяльності на відкритому повітрі.\\nЗверніться за консультацією до сімейного лікаря\"\n\t\t\t},\n\t\t\tadditional: {\n\t\t\t\tall: \"Слідкуйте за оновленням інформації\",\n\t\t\t\t// risk: \"Слідкуйте за оновленням інформації\"\n\t\t\t}\n\t\t}\n\t},\n\t{\n\t\tname: \"Якість повітря несприятлива\",\n\t\tair: \"несприятливе\",\n\t\tdescription: \"Вміст у повітрі забруднюючих речовин у межах норми, проте уразливі та чутливі до забруднення категорії населення можуть мати наслідки для здоров’я при довготривалому впливі.\",\n\t\t// info: \"Враховуйте спеціальні обмеження, застереження та рекомендації під час планування діяльності, відпочинку або інших активностей на відкритому повітрі.\\nРекомендуємо уразливим та чутливим до забруднення категоріям населення зменшити тривалі або важкі фізичні навантаження на відкритому повітрі.\",\n\t\t// consequences: \"Якщо ви відчуваєте дискомфорт під час дихання та прояви інших рефлекторних реакцій – рекомендуємо дотримуватися звичайних порад та плану лікування від вашого лікаря.\\nЛюди хворі на астму, ХОЗЛ та респіраторні захворювання можуть відчувати посилення звичних симптомів та рефлекторних реакцій. Рекомендуємо сумлінно дотримуватися свого плану терапії хронічних захворювань та прийому ліків, які призначив ваш лікар.\\nЛюди із хронічними захворюваннями серцево-судинної системи можуть відчувати додаткові та посилені рефлекторні реакції – підвищене серцебиття, задишка або незвичайна втома. У випадку довготривалого прояву цих реакцій рекомендуємо звернутися до вашого лікаря та сумлінно виконувати його настанови.\",\n\t\trecommendations: {\n\t\t\toutdoor: {\n\t\t\t\tall: \"Плануйте діяльність без спеціальних обмежень\",\n\t\t\t\trisk: \"Уникайте активної фізичної діяльності на відкритому повітрі \\nУникайте довготривалих прогулянок\"\n\t\t\t},\n\t\t\tindoor: {\n\t\t\t\tall: \"Без потреби не провітрюйте приміщення\",\n\t\t\t\trisk: \"Без потреби не провітрюйте приміщення\"\n\t\t\t},\n\t\t\tin_case_of_symptoms: {\n\t\t\t\tall: \"Уникайте активної фізичної діяльності на відкритому повітрі\",\n\t\t\t\trisk: \"Відстежуйте зміни самопочуття \\nДотримуйтеся звичних порад вашого сімейного лікаря \\nЗверніться за консультацією до сімейного лікаря\"\n\t\t\t},\n\t\t\tadditional: {\n\t\t\t\t// all: \"Слідкуйте за оновленням інформації\",\n\t\t\t\trisk: \"Слідкуйте за оновленням інформації \\nВипийте чистої води\"\n\t\t\t}\n\t\t}\n\t},\n\t{\n\t\tname: \"Погана якість повітря\",\n\t\tair: \"погане\",\n\t\tdescription: \"Вміст у повітрі забруднюючих речовин становить небезпеку при довготривалому впливі.\\nУсі категорії населення можуть відчувати загострення рефлекторних реакцій та мати наслідки для здоров'я при довготривалому впливі.\",\n\t\t// info: \"Діють спеціальні обмеження, застереження та рекомендації для тривалості діяльності, відпочинку або інших активностей на відкритому повітрі.\\nУсім уразливим та чутливим до забруднення категоріям населення рекомендуємо виключити та перенести на інших час тривалі або важкі фізичні навантаження на відкритому повітрі.\",\n\t\t// consequences: \"Чутливі до забруднення категорії населення, які мають хронічні захворювання, можуть відчувати значне посилення звичних симптомів та рефлекторних реакцій.\\nРекомендуємо сумлінно дотримуватися свого плану терапії хронічних захворювань та прийому ліків, які призначив ваш лікар.\\nУ випадку довготривалого прояву рефлекторних реакцій рекомендуємо звернутися за консультацією до вашого лікаря та сумлінно виконувати його настанови.\",\n\t\trecommendations: {\n\t\t\toutdoor: {\n\t\t\t\tall: \"Уникайте активної фізичної діяльності на відкритому повітрі \\nУникайте довготривалих прогулянок\",\n\t\t\t\trisk: \"Уникайте активної фізичної діяльності на відкритому повітрі \\nУникайте довготривалих прогулянок \\nУникайте спортивних та освітніх події на відкритому повітрі \\nСкористайтеся засобами захисту органів дихання\"\n\t\t\t},\n\t\t\tindoor: {\n\t\t\t\tall: \"Закрийте вікна \\nБез потреби не провітрюйте приміщення\",\n\t\t\t\trisk: \"Закрийте вікна \\nБез потреби не провітрюйте приміщення \\nВиконайте позачергове вологе прибирання\"\n\t\t\t},\n\t\t\tin_case_of_symptoms: {\n\t\t\t\tall: \"Відстежуйте зміни самопочуття \\nЗверніться за консультацією до сімейного лікаря\",\n\t\t\t\trisk: \"Уникайте надмірної фізичної активності \\nВідстежуйте зміни самопочуття \\nЗверніться за консультацією до сімейного лікаря \\nДотримуйтеся звичних порад вашого сімейного лікаря\"\n\t\t\t},\n\t\t\tadditional: {\n\t\t\t\tall: \"Слідкуйте за оновленням інформації \\nВипийте чистої води \\nПоінформуйте рідних та сусідів про погіршення якості повітря\",\n\t\t\t\trisk: \"Слідкуйте за оновленням інформації \\nВипийте чистої води \\nПісля прогулянки промийте очі та ніс \\nПоінформуйте рідних та сусідів про погіршення якості повітря\"\n\t\t\t}\n\t\t}\n\t},\n\t{\n\t\tname: \"Дуже погана якість повітря\",\n\t\tair: \"дуже погане\",\n\t\tdescription: \"Для уразливих та чутливих до забруднення категорій населення вміст у повітрі забруднюючих речовин становить небезпеку навіть при короткостроковому впливі. Усі категорії населення можуть відчувати сильне загострення рефлекторних реакцій та мати наслідки для здоров'я небезпеку навіть при короткостроковому впливі.\",\n\t\t// info: \"Для уразливих та чутливих до забруднення категорій населення діють спеціальні обмеження, застереження та рекомендації для перебування на відкритому повітря для будь-якої діяльності.\\nРекомендуємо виключити або перенести на інший час будь-яку діяльність на відкритому повітрі.\",\n\t\t// consequences: \"Якщо у вас виникає рефлекторна реакція на забруднене повітря – кашель, задишка, подразнення слизових оболонок носоглотки, біль в очах тощо – рекомендуємо використовувати засоби індивідуального захисту органів дихання.\\nУ випадку довготривалого прояву рефлекторних реакцій або інших відчутних наслідків для вашого здоров’я рекомендуємо звернутися за консультацією до вашого лікаря та сумлінно виконувати його настанови.\",\n\t\trecommendations: {\n\t\t\toutdoor: {\n\t\t\t\tall: \"Уникайте активної фізичної діяльності на відкритому повітрі \\nУникайте довготривалих прогулянок \\nУникайте спортивних та освітніх події на відкритому повітрі \\nСкористайтеся засобами захисту органів дихання\",\n\t\t\t\trisk: \"За можливості залишайтеся у приміщенні \\nУникайте активної фізичної діяльності на відкритому повітрі \\nУникайте довготривалих прогулянок \\nУникайте спортивних та освітніх події на відкритому повітрі \\nСкористайтеся засобами захисту органів дихання\"\n\t\t\t},\n\t\t\tindoor: {\n\t\t\t\tall: \"Закрийте вікна \\nБез крайньої потреби не провітрюйте приміщення \\nВиконайте позачергове вологе прибирання \\nВикористовуйте побутові очищувачі повітря\",\n\t\t\t\trisk: \"Закрийте вікна \\nБез крайньої потреби не провітрюйте приміщення \\nВиконайте позачергове вологе прибирання \\nВикористовуйте побутові очищувачі повітря\"\n\t\t\t},\n\t\t\tin_case_of_symptoms: {\n\t\t\t\tall: \"Уникайте надмірної фізичної активності \\nВідстежуйте зміни самопочуття \\nЗверніться за консультацією до сімейного лікаря \\nДотримуйтеся звичних порад вашого сімейного лікаря\",\n\t\t\t\trisk: \"Уникайте надмірної фізичної активності \\nВідстежуйте зміни самопочуття \\nЗверніться за консультацією до сімейного лікаря \\nДотримуйтеся звичних порад вашого сімейного лікаря\"\n\t\t\t},\n\t\t\tadditional: {\n\t\t\t\tall: \"Слідкуйте за оновленням інформації \\nВипийте чистої води \\nПісля прогулянки промийте очі та ніс \\nПоінформуйте рідних та сусідів про погіршення якості повітря\",\n\t\t\t\trisk: \"Слідкуйте за оновленням інформації \\nВипийте чистої води \\nПісля прогулянки промийте очі та ніс \\nПоінформуйте рідних та сусідів про погіршення якості повітря\"\n\t\t\t}\n\t\t}\n\t},\n\t{\n\t\tname: \"Надзвичайно погана якість повітря\",\n\t\tair: \"надзвичайно погане\",\n\t\tdescription: \"Вміст у повітрі забруднюючих речовин становить небезпеку навіть при короткостроковому впливі. Усі категорії населення можуть відчувати сильне загострення рефлекторних реакцій та мати наслідки для здоров'я небезпеку навіть при короткостроковому впливі.\",\n\t\t// info: \"Для всіх категорій населення діють спеціальні обмеження, застереження та рекомендації для перебування на відкритому повітря для будь-якої діяльності.\\nРекомендуємо виключити або перенести на інший час будь-яку діяльність на відкритому повітрі.\",\n\t\t// consequences: \"Якщо у вас виникає рефлекторна реакція на забруднене повітря – кашель, задишка, подразнення слизових оболонок носоглотки, біль в очах тощо – рекомендуємо використовувати засоби індивідуального захисту органів дихання.\\nУ випадку довготривалого прояву рефлекторних реакцій або інших відчутних наслідків для вашого здоров’я рекомендуємо звернутися за консультацією до вашого лікаря та сумлінно виконувати його настанови.\",\n\t\trecommendations: {\n\t\t\toutdoor: {\n\t\t\t\tall: \"За можливості залишайтеся у приміщенні \\nСкористайтеся засобами захисту органів дихання \\nСкористуйтеся захисними окулярами \\nЗаборона масових заходів на відкритому повітрі \\nЗаборона спортивних подій на відкритому повітрі \\nЗаборона освітніх заходів на відкритому повітрі\",\n\t\t\t\trisk: \"За можливості залишайтеся у приміщенні \\nКористуйтеся засобами захисту органів дихання \\nКористуйтеся захисними окулярами \\nЗаборона масових заходів на відкритому повітрі \\nЗаборона спортивних подій на відкритому повітрі \\nЗаборона освітніх заходів на відкритому повітрі\"\n\t\t\t},\n\t\t\tindoor: {\n\t\t\t\tall: \"Закрийте вікна \\nБез крайньої потреби не провітрюйте приміщення \\nВиконайте позачергове вологе прибирання \\nВикористовуйте побутові очищувачі повітря\",\n\t\t\t\trisk: \"Закрийте вікна \\nБез крайньої потреби не провітрюйте приміщення \\nВиконайте позачергове вологе прибирання \\nВикористовуйте побутові очищувачі повітря\"\n\t\t\t},\n\t\t\tin_case_of_symptoms: {\n\t\t\t\tall: \"Уникайте надмірної фізичної активності \\nВідстежуйте зміни самопочуття \\nЗверніться за консультацією до сімейного лікаря \\nДотримуйтеся звичних порад вашого сімейного лікаря\",\n\t\t\t\trisk: \"Уникайте надмірної фізичної активності \\nВідстежуйте зміни самопочуття \\nЗверніться за консультацією до сімейного лікаря \\nДотримуйтеся звичних порад вашого сімейного лікаря\"\n\t\t\t},\n\t\t\tadditional: {\n\t\t\t\tall: \"Слідкуйте за оновленням інформації \\nВипийте чистої води \\nПісля прогулянки промийте очі та ніс \\nПісля прогулянки прийміть душ \\nПоінформуйте рідних та сусідів про погіршення якості повітря\",\n\t\t\t\trisk: \"Слідкуйте за оновленням інформації \\nВипийте чистої води \\nПісля прогулянки промийте очі та ніс \\nПісля прогулянки прийміть душ \\nПоінформуйте рідних та сусідів про погіршення якості повітря\"\n\t\t\t}\n\t\t} \n\t}\n]","import script from \"./GradientBackground.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./GradientBackground.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./GradientBackground.vue?vue&type=style&index=0&id=db010332&scoped=true&lang=css\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-db010332\"]])\n\nexport default __exports__","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + \"about\" + \".\" + \"7f14dd63\" + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + \"about\" + \".\" + \"d3cc46b1\" + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"kiwi:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tif (__webpack_require__.nc) {\n\t\tlinkTag.nonce = __webpack_require__.nc;\n\t}\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && event.type;\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + errorType + \": \" + realHref + \")\");\n\t\t\terr.name = \"ChunkLoadError\";\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t524: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"594\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr\n\n// no prefetching\n\n// no preloaded","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t524: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkkiwi\"] = self[\"webpackChunkkiwi\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], function() { return __webpack_require__(691); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["User","reactive","profile","stations","_isAuthenticated","isAuthenticated","this","register","user","console","log","response","axios","post","status","event","method","error","confirmEmail","token","login","email","password","loginGoogle","code","logout","delete","fetchProfile","get","data","fetchStations","saveProfile","patch","__default__","name","watch","async","__exports__","StationsData","_updatedAt","_inUseOf","autoUpdate","_bounds","north","south","east","west","isUpdateNeeded","updateTimeout","Date","now","update","setInUse","nameOfService","indexOf","push","unsetInUse","index","splice","isInUse","length","setupAutoUpdating","setInterval","setBounds","bounds","setFavicon","favicon","document","querySelector","href","window","matchMedia","matches","onMounted","addEventListener","darkStyle","x","y","useMouse","touch","RegionsData","regions","updatedAt","updateInProgress","getUpdated","warn","SelectedStation","station","graphs","average_48h_1h","average_30d_1d","_cancelSource","_onChangedCallbacks","getInfo","getData","getGraphs","set","id","station_id","station_name","cancel","CancelToken","source","fetchData","fetchGraph","callback","remove","cancelToken","updateData","oldData","newData","last_online","key","Object","assign","isSelected","onStationChanged","Error","getStationIcon","typeToIcon","faHouseChimney","faTreeCity","faWrench","faBriefcase","faCircle","service","type","expandBounds","api","increasePercentage","pointNorthEast","getNorthEast","pointSouthWest","getSouthWest","latAdjustment","lat","lngAdjustment","lng","newPointNorthEast","LatLng","newPointSouthWest","newBounds","LatLngBounds","extend","isStationsInMapBounds","map","getBounds","contains","latitude","longitude","isMapAnimation","zoomToUkraine","ukraineBounds","setOptions","gestureHandling","setTimeout","panToBounds","fitBounds","defaultCenter","defaultMapZoom","regionsMode","ref","mapRef","selectedRegion","showRegions","show","value","setStyle","feature","region","find","r","getProperty","level","color","uaqiColors","setProperty","fillColor","strokeWeight","strokeColor","visible","stationsToShow","filterStationsToShow","all","filter","e","arrayRemoveItemAll","arr","i","updatedStations","setupRegions","loadGeoJson","panToLocation","location","panTo","setZoom","n","old","o","onBeforeUnmount","ready","addListener","getZoom","revertStyle","overrideStyle","getGeometry","forEachLatLng","latlng","addListenerOnce","lastZoom","currentZoom","lastPositionJSON","localStorage","getItem","lastPosition","JSON","parse","zoom","position","getCenter","setItem","stringify","__expose","props","__props","onBarHover","v","valueText","toFixed","onHoverText","unit","onHoverTime","format","time","series","computed","s","sensor","values","result","timestamps","count","reduce","max","Math","scale","inMin","inMax","outMin","outMax","scaleByData","vector","vectorClear","min","valueLevel","levels","concat","timestampLables","first","last","interval","floor","second","third","formatTimestamp","timestamp","date","day","String","getDate","padStart","month","getMonth","hours","getHours","minutes","getMinutes","levelColor","graphOpened","levelToText","emit","__emit","target","onClickOutside","class","_createElementVNode","_hoisted_2","_createElementBlock","_hoisted_1","_hoisted_3","mounted","st","__sharethis__","initialize","script","createElement","src","body","appendChild","render","svgUrl","imageSrc","imageDownloadName","stationName","removeIllegalCharacters","stationData","stationTime","shareImageClick","imageBlob","fetch","then","res","blob","file","File","url","text","title","files","navigator","canShare","share","str","replace","getValuesForSvg","stationValues","filteredData","item","slice","types","units","local_unit","processSvg","svg","address","replaceAll","uaqi","main","uaqiDescriptions","air","categories","A","B","C","D","current_values","uaqiColorsBright","loadSVG","ok","statusText","templateSvg","finalSvg","convertSvgToPng","svgData","width","height","svgBlob","Blob","URL","createObjectURL","img","Image","Promise","resolve","onload","canvas","ctx","getContext","drawImage","revokeObjectURL","toBlob","pngUrl","router","useRouter","providerToText","providerToUrl","isShareModalOpen","statsOnClick","params","info","closeOnClick","subscribeOnClick","alert","stationLastOnline","dataIsTooOld","differenceInMinutes","showOldData","showData","pm","mainGases","otherGases","radiation","updateDataInterval","clearInterval","onResultClick","search_term","searchText","transliterateToUkr","transliterationMap","transliteratedText","char","fetchSettlements","settlements","searchIndex","forEach","alternative","description","parseFloat","icon","faMapLocationDot","fuseOptions","keys","weight","results","searchResults","useFuse","resultLimit","selectedIndex","inputKeydown","preventDefault","scrollToSelected","resultElements","querySelectorAll","scrollIntoView","behavior","block","blogHtml","fetchBlog","showLoadingScreen","a","loadingStatus","useUrlSearchParams","route","useRoute","setStationFromUrl","idFromUrl","query","unwatch","isFirstVisit","checkFirstVisit","visited","setVisited","dataLoaded","getStationWord","number","word","sortType","sortReverse","ukrainianToQwerty","qwerty","ukr","c","includes","regionsList","list","name_qwerty","online_stations","sort","b","nameA","toLowerCase","nameB","reverse","levelColorDim","calculateBounds","markers","marker","latLng","generateMarkerIcon","hover","stroke","svgMarker","path","fillOpacity","rotation","pollutant","uaqiCalendarColors","getValueByType","sortData","entries","sortedData","adjustDataToStartFromMonday","dates","firstDate","firstDayOfWeek","getDay","newDate","setDate","formattedDate","toISOString","split","adjustDataToHave365days","startDate","currentDate","setHours","generateCalendarData","dayNames","dataTable","dayIndex","generateHeaderForDataTable","firstRow","headerRow","monthNames","sameMonth","date1","date2","getFullYear","monthName","calendarData","defaultData","calendarContainer","scrollToEnd","container","scrollLeft","scrollWidth","plot","defaultLayout","autosize","margin","t","l","pad","plot_bgcolor","paper_bgcolor","font","family","showlegend","layout","finalLayout","fixedRange","xaxis","yaxis","fixedrange","settings","displaylogo","modeBarButtonsToRemove","renderChart","Plotly","updateChart","recommendationsType","recommendationsTemplate","recommendations","template","faHome","faLungsVirus","faCircleInfo","pollutantsToHide","pollutantsFiltered","pollutants","calendarTypes","calendarType","hoveredStationId","sectionRealtime","sectionStatistics","sectionStations","goToSection","section","stationsGraphs","selectedGraph","dataMonthTitle","dataMonth","average","line","average_y","arrayAverage","filtered","num","undefined","p","fetchStats","fetchCalendar","isSerialNumberValid","serial_number","re","test","isLatValid","isLonValid","isAltValid","isStationNameValid","isUserNameValid","isUrlValid","isPhoneValid","phone","isStationValid","installation_altitude","isEmailValid","passwordInput","enterButton","showInvalid","googleLoginCallback","enterButtonClick","currentRoute","imageLoaded","handleFileChange","reader","FileReader","drawImageFill","formData","FormData","append","uploadImage","readAsDataURL","headers","logo","catch","scaleFactor","newWidth","newHeight","editProfile","logoutClick","saveProfileClick","nameValid","urlValid","phoneValid","saved","full_name","u","trim","localeCompare","onBeforeRouteLeave","answer","confirm","sectionArchives","showRealtime","diffInHours","differenceInHours","graph1Loaded","graph2Loaded","average_7d_20min","dataLimits","fetchAvg48","fetchAvg30","monthSeries","start","at","substring","end","fetchAvg20","fetchStation","counts","hoverinfo","weekdayData","getDayOfWeek","dateString","toLocaleString","weekday","weekData","dayOfWeek","orderedDays","daysShortNames","plotData","daytimeData","hourGroups","hour","histogramData","resetSend","resetClick","password_check","inputError","setByUser","immediate","disabled","center","coords","useGeolocation","currentStep","stepperSteps","faLink","faPenToSquare","faClipboardCheck","newStation","hidden","geolocationUnwatch","userTouchedAltInput","stationLocation","nextClick","steps","stepSerial","stepLocation","stepInfo","stepConfirmation","addStation","onLocationSelected","put","editStation","stationDataElement","deactivateClick","onStationSaveClick","inputs","input","secondStep","acceptTerms","password_confirmation","passwordsNotSame","pass","pass_confirm","registerClick","routes","component","HomeView","StatsView","RegionView","meta","scrollToTop","StationView","LoginView","beforeEnter","to","from","next","PasswordRecoveryView","RegisterView","PasswordResetView","CabinetView","requiresAuth","AddStationView","CabinetStationView","createRouter","history","createWebHistory","process","scrollBehavior","savedPosition","top","beforeEach","_","matched","some","record","defaults","withCredentials","baseURL","createApp","App","use","VueGtag","appName","config","vue3GoogleLogin","clientId","mount","outdoor","risk","indoor","in_case_of_symptoms","additional","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","call","m","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","every","getter","__esModule","d","definition","defineProperty","enumerable","f","chunkId","promises","miniCssF","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","done","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","nc","setAttribute","onScriptComplete","prev","onerror","clearTimeout","doneFns","parentNode","removeChild","bind","head","Symbol","toStringTag","createStylesheet","fullhref","oldTag","reject","linkTag","rel","nonce","onLinkComplete","errorType","realHref","err","request","insertBefore","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","promise","loadingEnded","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}