{"version":3,"sources":["assets/logo.png","components/Layout.js","components/Home.js","components/FetchData.js","components/Counter.js","App.js","registerServiceWorker.js","index.js"],"names":["module","exports","Layout","Container","this","props","children","Component","displayName","name","Home","className","src","Logo","alt","FetchData","state","forecasts","loading","populateWeatherData","contents","renderForecastsTable","id","fetch","response","json","data","setState","aria-labelledby","map","forecast","key","date","temperatureC","temperatureF","summary","Counter","currentCount","incrementCounter","bind","aria-live","onClick","App","exact","path","component","isLocalhost","Boolean","window","location","hostname","match","registerValidSW","swUrl","navigator","serviceWorker","register","then","registration","onupdatefound","installingWorker","installing","onstatechange","controller","console","log","catch","error","baseUrl","document","getElementsByTagName","getAttribute","rootElement","getElementById","ReactDOM","render","basename","URL","process","origin","addEventListener","status","headers","get","indexOf","ready","unregister","reload","checkValidServiceWorker","registerServiceWorker"],"mappings":"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","file":"static/js/main.fb0c0313.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/logo.b197da61.png\";","import React, { Component } from 'react';\r\nimport { Container } from 'reactstrap';\r\n\r\nexport class Layout extends Component {\r\n static displayName = Layout.name;\r\n\r\n render () {\r\n return (\r\n
\r\n \r\n {this.props.children}\r\n \r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport Logo from \"../assets/logo.png\";\r\n\r\nexport class Home extends Component {\r\n static displayName = Home.name;\r\n\r\n render () {\r\n return (\r\n
\r\n \"Logo\"/\r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\n\r\nexport class FetchData extends Component {\r\n static displayName = FetchData.name;\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = { forecasts: [], loading: true };\r\n }\r\n\r\n componentDidMount() {\r\n this.populateWeatherData();\r\n }\r\n\r\n static renderForecastsTable(forecasts) {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {forecasts.map(forecast =>\r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n
DateTemp. (C)Temp. (F)Summary
{forecast.date}{forecast.temperatureC}{forecast.temperatureF}{forecast.summary}
\r\n );\r\n }\r\n\r\n render() {\r\n let contents = this.state.loading\r\n ?

Loading...

\r\n : FetchData.renderForecastsTable(this.state.forecasts);\r\n\r\n return (\r\n
\r\n

Weather forecast

\r\n

This component demonstrates fetching data from the server.

\r\n {contents}\r\n
\r\n );\r\n }\r\n\r\n async populateWeatherData() {\r\n const response = await fetch('weatherforecast');\r\n const data = await response.json();\r\n this.setState({ forecasts: data, loading: false });\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\n\r\nexport class Counter extends Component {\r\n static displayName = Counter.name;\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = { currentCount: 0 };\r\n this.incrementCounter = this.incrementCounter.bind(this);\r\n }\r\n\r\n incrementCounter() {\r\n this.setState({\r\n currentCount: this.state.currentCount + 1\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n

Counter

\r\n\r\n

This is a simple example of a React component.

\r\n\r\n

Current count: {this.state.currentCount}

\r\n\r\n \r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Route } from 'react-router';\r\nimport { Layout } from './components/Layout';\r\nimport { Home } from './components/Home';\r\nimport { FetchData } from './components/FetchData';\r\nimport { Counter } from './components/Counter';\r\n\r\nimport './custom.css'\r\n\r\nexport default class App extends Component {\r\n static displayName = App.name;\r\n\r\n render () {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n","// In production, we register a service worker to serve assets from local cache.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\r\n// cached resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\r\n// This link also includes instructions on opting out of this behavior.\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.1/8 is considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\nexport default function register () {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Lets check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl);\r\n } else {\r\n // Is not local host. Just register service worker\r\n registerValidSW(swUrl);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW (swUrl) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the old content will have been purged and\r\n // the fresh content will have been added to the cache.\r\n // It's the perfect time to display a \"New content is\r\n // available; please refresh.\" message in your web app.\r\n console.log('New content is available; please refresh.');\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker (swUrl) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl)\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n if (\r\n response.status === 404 ||\r\n response.headers.get('content-type').indexOf('javascript') === -1\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\r\n });\r\n}\r\n\r\nexport function unregister () {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister();\r\n });\r\n }\r\n}\r\n","import 'bootstrap/dist/css/bootstrap.css';\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { BrowserRouter } from 'react-router-dom';\r\nimport App from './App';\r\nimport registerServiceWorker from './registerServiceWorker';\r\n\r\nconst baseUrl = document.getElementsByTagName('base')[0].getAttribute('href');\r\nconst rootElement = document.getElementById('root');\r\n\r\nReactDOM.render(\r\n \r\n \r\n ,\r\n rootElement);\r\n\r\nregisterServiceWorker();\r\n\r\n"],"sourceRoot":""}