{"version":3,"sources":["assets/img/logo.png","assets/img/bor_logo.png","assets/img/thank-you.png","contexts/UserContext.js","contexts/SelectedCampaignContext.js","contexts/CampaignContext.js","contexts/SettingContext.js","contexts/CampaignResultContext.js","views/schema.js","components/custom-input.js","views/survey.js","views/qrInstruction.js","views/home.js","views/userexist.js","views/thank-you.js","views/error-404.js","views/error-500.js","App.js","middleware/axios.js","serviceWorker.js","root.js","index.js"],"names":["module","exports","UserContext","createContext","UserContextProvider","props","useState","user","setUser","Provider","value","children","SelectedCampaignContext","SelectedCampaignContextProvider","selectedCampaigns","setSelectedCampaigns","i","CampaignContext","CampaignContextProvider","surveyCampaign","setSurveyCampaign","popupCampaign","setPopupCampaign","thankYouCampaign","setThankYouCampaign","useEffect","axios","get","response","data","socialBoxCampaign","filter","c","type","console","log","getSurveyCampaigns","SettingContext","SettingContextProvider","settings","setSettings","success","setting","getSettings","CampaignResultContext","CampaignResultContextProvider","campaignResult","setCampaignResult","yup","name","required","mobile","matches","email","React","Component","baseURL","process","Home","qrCode","setqrCode","campaignFetched","setcampaignFetched","redirect","setRedirect","parameters","queryString","parse","location","search","baseurl","getURL","headers","params","uniqueId","qrcode","socialboxCampaign","modified","link","taxi","id","ledCard","captureImpressions","lat","lng","postUrl","values","Object","socialboxcampaign","post","fetchQrDetails","Promise","resolve","fetchTaxiLocation","then","catch","err","className","Container","Row","Col","md","window","replace","style","color","href","Page404","Page500","toastrOptions","icon","status","defaults","interceptors","use","JSON","stringify","toastr","light","reject","error","message","problems","map","er","code","history","push","statusText","errors","forEach","e","axiosMiddleware","createBrowserHistory","require","App","startPos","position","setPosition","geoError","coords","latitude","longitude","geoSuccess","navigator","geolocation","getCurrentPosition","align","width","padding","margin","src","logoSrc","alt","path","component","exact","Error404","Error500","Boolean","hostname","match","reducers","toastrReducer","reducer","combineReducers","store","createStore","ReactDOM","render","timeOut","newestOnTop","preventDuplicates","getState","state","transitionIn","transitionOut","progressBar","closeOnToastrClick","document","getElementById","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.e92676eb.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/logo.5a2849b2.png\";","module.exports = __webpack_public_path__ + \"static/media/bor_logo.7e237232.png\";","module.exports = \"data:image/png;base64,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\"","import React, { createContext, useState } from 'react';\nexport const UserContext = createContext();\n\nconst UserContextProvider = (props) => {\n const [user, setUser] = useState({});\n return (\n \n {props.children}\n \n );\n}\n\nexport default UserContextProvider;","import React, { createContext, useState } from 'react';\nexport const SelectedCampaignContext = createContext();\n\nconst SelectedCampaignContextProvider = (props) => {\n const [selectedCampaigns, setSelectedCampaigns] = useState([]);\n return (\n \n {props.children}\n \n );\n}\n\nexport default SelectedCampaignContextProvider;","import React, { createContext, useState, useEffect } from 'react';\nimport axios from 'axios';\nexport const CampaignContext = createContext();\n\nconst CampaignContextProvider = (props) => {\n \n const [surveyCampaign, setSurveyCampaign] = useState([]);\n const [popupCampaign, setPopupCampaign] = useState([]);\n const [thankYouCampaign, setThankYouCampaign] = useState([]);\n\n useEffect(() => {\n const getSurveyCampaigns = async () => {\n try {\n let response = await axios.get(`/all-campaigns`);\n setSurveyCampaign(response.data.socialBoxCampaign.filter(c => c.type === 'surveyCampaign'))\n setPopupCampaign(response.data.socialBoxCampaign.filter(c => c.type === 'popupCampaign'))\n setThankYouCampaign(response.data.socialBoxCampaign.filter(c => c.type === 'thankYouCampaign'))\n } catch (err) {\n console.log(\"Get campaigns API Error: \", err)\n }\n }\n getSurveyCampaigns();\n\n\n }, []);\n return (\n \n {props.children}\n \n );\n}\n\nexport default CampaignContextProvider;","import React, { createContext, useState, useEffect } from 'react';\nimport axios from 'axios';\nexport const SettingContext = createContext();\n\nconst SettingContextProvider = (props) => {\n \n const [settings, setSettings] = useState({});\n\n useEffect(() => {\n const getSettings = async () => {\n try {\n let response = await axios.get(`/get-settings`);\n if (response.data.success) {\n setSettings(response.data.setting)\n }\n } catch (err) {\n console.log(\"Get Settings API Error: \", err)\n }\n }\n getSettings();\n\n\n }, []);\n return (\n \n {props.children}\n \n );\n}\n\nexport default SettingContextProvider;","import React, { createContext, useState } from 'react';\nexport const CampaignResultContext = createContext();\n\nconst CampaignResultContextProvider = (props) => {\n const [campaignResult, setCampaignResult] = useState({});\n return (\n \n {props.children}\n \n );\n}\n\nexport default CampaignResultContextProvider;","import * as yup from \"yup\";\nconst phoneRegExp = /^((\\\\+[1-9]{1,4}[ \\\\-]*)|(\\\\([0-9]{2,3}\\\\)[ \\\\-]*)|([0-9]{2,4})[ \\\\-]*)*?[0-9]{3,4}?[ \\\\-]*[0-9]{3,4}?$/;\nconst emailRegexp = /^\\w+([.-]?\\w+)*@\\w+([.-]?\\w+)*(\\.\\w{2,3})+$/;\nexport const RegisterUserSchema = yup.object({\n name: yup.string().required('Please enter name'),\n mobile: yup.string().required('Please enter mobile number').matches(phoneRegExp, 'Phone number is not valid'),\n email: yup.string().required('Please enter email').matches(emailRegexp, 'Please enter valid email address'),\n});\n\n","import React from 'react';\nimport { Input, FormFeedback } from 'reactstrap';\nclass CustomInput extends React.Component {\n\n render() {\n var { field, form: { touched, errors }, ...props } = this.props;\n return (\n \n \n {touched[field.name] && errors[field.name] && {errors[field.name]}}\n \n )\n\n }\n}\nexport default CustomInput;","import React, { useState, useContext } from 'react';\nimport { toastr } from 'react-redux-toastr';\nimport axios from 'axios';\nimport { Loader } from '../components/loader';\nimport { UserContext } from '../contexts/UserContext';\nimport { SelectedCampaignContext } from '../contexts/SelectedCampaignContext';\nimport { CampaignContext } from '../contexts/CampaignContext';\nimport { CampaignResultContext } from '../contexts/CampaignResultContext';\nimport { history } from '../App';\nconst Survey = () => {\n\n const { surveyCampaign } = useContext(CampaignContext);\n const { selectedCampaigns, setSelectedCampaigns } = useContext(SelectedCampaignContext);\n \n const [loading, setLoading] = useState(false);\n const { user } = useContext(UserContext)\n const { campaignResult } = useContext(CampaignResultContext)\n // if (Object.entries(user).length === 0 && user.constructor === Object) {\n // toastr.error('Please fill the user information')\n // history.push('/');\n // }\n\n const handleSubmit = async (event) => {\n event.preventDefault();\n if (selectedCampaigns.length) {\n try {\n setLoading(true)\n let response = await axios.post(`/campaign-details`, {\n selectedCampaigns: selectedCampaigns.map(sc=> sc.toString()),\n presentedCampaigns: surveyCampaign.map(c => c.id.toString()),\n userId: user.id,\n id: campaignResult.id\n });\n if (response.data.success) {\n toastr.success(response.data.message);\n history.push('/thank-you')\n }\n setLoading(false);\n\n } catch (err) {\n setLoading(false)\n }\n } else {\n toastr.error('Please check survey')\n }\n\n }\n\n const handleChange = (e) => {\n if (e.currentTarget.checked) {\n setSelectedCampaigns([...selectedCampaigns, parseInt(e.currentTarget.value)])\n } else {\n setSelectedCampaigns(selectedCampaigns.filter(x => x !== parseInt(e.currentTarget.value)))\n }\n }\n\n const populateCampaigns = () => {\n return surveyCampaign.map((campaign, index) => {\n return (\n
\n
\n \"Survey\n \n
\n
\n )\n })\n }\n\n return (\n loading ? :\n
\n
SELECT BRANDS WHICH YOU LIKE
\n
\n
\n
\n {populateCampaigns()}\n
\n
\n
\n \n
\n
\n
\n
\n
\n )\n}\n\nexport default Survey;","import React, { Component } from 'react';\nimport { Col, Container, Row } from 'reactstrap';\nimport {Link} from 'react-router-dom'\n\nclass qrInstruction extends Component {\n render() {\n return (\n
\n \n \n \n
\n {/*

404

*/}\n

Please scan qr code then proceed

\n\n
\n
\n

To scan the Qr-Code, please click\n

\n
\n \n
\n
\n
\n );\n }\n}\n\nexport default qrInstruction;\n","import React, { Component, useEffect, useState } from 'react';\nimport { Col, Container, Row } from 'reactstrap';\nimport axios from 'axios';\nimport {Link, Redirect} from 'react-router-dom'\nimport queryString from 'query-string';\n//const baseURL = 'http://localhost:1337/api/v1';\nconst baseURL = process.env.REACT_APP_HOME_URL;\n//const baseURL = 'http://localhost:1330/api/v1';\n//const baseURL = 'http://13.213.32.154:1337/api/v1';\nconst defaultUrl = 'https://www.brandsonroad.com/';\n\nconst Home = (props) => {\n const [qrCode, setqrCode] = useState([]);\n const [campaignFetched, setcampaignFetched] = useState(false);\n const [redirect, setRedirect] = useState(false);\n let parameters = queryString.parse(props.location.search);\n \n // if(parameters){\n // setParams(parameters);\n // }\n \n useEffect(() => {\n //fetch the desired campaign\n fetchQrDetails(parameters, baseURL);\n },[]);\n\n useEffect(() => {\n if(campaignFetched){\n let promise = Promise.resolve(fetchTaxiLocation(baseURL));\n promise\n .then((data) => { console.log(\"data for captureImpressions(): \", data);\n if(data){\n captureImpressions(baseURL, data.lat, data.lng);\n return data;\n }else{\n captureImpressions(baseURL, 0, 0);\n return 1;\n }\n \n })\n .then((data) => {\n setcampaignFetched(false) \n return data;\n })\n .then((data) => {\n console.log(\"4. You are being redirected!: \", redirect, data)\n setRedirect(true)\n })\n \n .catch((err) => console.log(\"Error from promise: \", err)); \n }\n \n }, [campaignFetched])\n\n\n async function fetchQrDetails(parameters, baseurl) {\n try{\n console.log(\"1. Fetching Qr Code Details\");\n let getURL = baseurl + '/qrcode/one/';\n if(parameters){\n const data = await axios.get(getURL, {\n headers: {\n 'Content-Type': 'application/json',\n },\n params: {\n uniqueId: parameters.uniqueId\n },\n });\n console.log(\"Qr details fetched: \", data);\n if(data.data.qrcode[0].socialboxCampaign){\n setqrCode(data.data.qrcode[0]);\n }else {\n let modified = data.data.qrcode[0];\n let link = {link: defaultUrl}\n modified.socialboxCampaign = link\n setqrCode(modified);\n }\n \n setcampaignFetched(true);\n } \n }catch(err){\n console.log(\"An error occured while fetching QR Codes: \", err);\n } \n }\n async function fetchTaxiLocation(baseurl) {\n try{\n console.log(\"2. Fetching taxi location\");\n let getURL = baseurl + '/led/get';\n if(qrCode.taxi){\n const data = await axios.get(getURL, {\n headers: {\n 'Content-Type': 'application/json',\n },\n params: {\n id: qrCode.taxi.ledCard\n },\n });\n console.log(\"data from fetch taxi location: \", data);\n \n return data.data; \n }else {\n console.log(\"Qr Code not linked to any taxi\");\n return null\n } \n }catch(err){\n console.log(\"An error occured while fetching Taxi Location: \", err);\n return \n } \n }\n async function captureImpressions(baseurl, lat, lng){\n try{\n console.log(\"3. Fetching taxi locations: \");\n let postUrl = baseurl + '/social-box/campaign/hits';\n let values = new Object({});\n // object to send in post request\n values = {...values, \n qrcode: qrCode.id, \n socialboxcampaign: qrCode.socialboxCampaign.id, \n taxi: qrCode.taxi.id, \n lat: lat, \n lng: lng\n }\n const data = await axios.post(postUrl, values,{\n headers: {\n 'Content-Type': 'application/json',\n }\n });\n console.log(\"the data from campaign post req is: \", data);\n return data;\n }catch(err){\n console.log(\"An error occured while posting impressions: \", err);\n return err;\n }\n }\n \n return (\n
\n \n \n \n
\n {/*

404

*/}\n

You will be redirected shortly ...

\n {redirect ? \n // () \n (window.location.replace(qrCode.socialboxCampaign.link)):\n //(

Redirect is true

) :\n (

) \n }\n
\n
\n

To scan the Qr-Code, please click\n

\n
\n \n
\n
\n {/*
\n { campaignFetched ? \n // () \n (window.location.replace(qrCode.socialboxCampaign.link)):\n (

) \n }\n
*/}\n
\n );\n \n}\n\nexport default Home;","import React, { Component } from 'react';\nimport { Col, Container, Row } from 'reactstrap';\nimport {Link} from 'react-router-dom'\n\nclass userExist extends Component {\n render() {\n return (\n
\n \n \n \n
\n {/*

404

*/}\n

Please scan the qr code then proceed

\n\n
\n
\n

To scan the Qr-Code, please click\n

\n
\n \n
\n
\n
\n );\n }\n}\n\nexport default userExist;\n","import React, { useContext, useEffect } from 'react';\nimport { Row, Col } from 'reactstrap';\nimport { toastr } from 'react-redux-toastr';\nimport { SelectedCampaignContext } from '../contexts/SelectedCampaignContext';\nimport { CampaignContext } from '../contexts/CampaignContext';\nimport { CampaignResultContext } from '../contexts/CampaignResultContext';\nimport { UserContext } from '../contexts/UserContext';\nimport thankYouImage from \"../assets/img/thank-you.png\"\nimport axios from 'axios';\nimport { history } from '../App';\n\nconst ThankYou = () => {\n const { thankYouCampaign, surveyCampaign } = useContext(CampaignContext);\n const { selectedCampaigns } = useContext(SelectedCampaignContext);\n const { campaignResult } = useContext(CampaignResultContext);\n\n const { user } = useContext(UserContext) \n // if (Object.entries(user).length === 0 && user.constructor === Object) {\n // toastr.error('Please fill the user information')\n // history.push(`/`);\n // }\n useEffect(() => {\n async function trackThankYouCampaign() {\n try {\n await axios.post(`/track-thank-you-campaign`, {\n thankYouCampaign: thankYouCampaign.map(tc => tc.id.toString()),\n id: campaignResult.id\n });\n\n } catch (err) {\n console.log(\"PopUp Campaign Track API error\")\n }\n }\n if(campaignResult.id){\n trackThankYouCampaign();\n }\n \n }, [thankYouCampaign, campaignResult]);\n const populateThankYouCampaign = () => {\n return thankYouCampaign.map((tc, index) => {\n return (\n \n \"Thank\n
\n Click to win!!\n \n )\n })\n }\n const populateSelectedCampaign = () => {\n return surveyCampaign.filter(sc => selectedCampaigns.includes(sc.id)).map((campaign, index) => {\n return (\n \n \n \"Thank\n \n \n \n {campaign.name}\n \n \n {campaign.link}\n \n \n \n )\n })\n }\n return (\n \n \n \n \n \n \n

Thank you!!
ขอขอบคุณที่เข้าร่วมกิจกรรมลุ้นรับรางวัลกับเรา

\n \n
\n \n {populateThankYouCampaign()}\n \n \n {populateSelectedCampaign()}\n \n
\n )\n}\n\nexport default ThankYou;","import React, { Component } from 'react';\nimport { Col, Container, Row } from 'reactstrap';\n\nclass Page404 extends Component {\n render() {\n return (\n
\n \n \n \n
\n

404

\n

Oops! You're lost.

\n\n
\n
\n

The QRCode is not valid, please scan a valid QR code.

\n
\n \n
\n
\n
\n );\n }\n}\n\nexport default Page404;\n","import React, { Component } from 'react';\nimport { Col, Container, Row } from 'reactstrap';\n\nclass Page500 extends Component {\n render() {\n return (\n
\n \n \n \n \n

500

\n

Looks like We dont have a problem!

\n
\n
\n

The server is broke, please come again later!!

\n
\n \n
\n
\n
\n );\n }\n}\n\nexport default Page500;\n","import React, { useState, useEffect } from 'react';\nimport {\n Router,\n Switch,\n Route,\n} from \"react-router-dom\";\nimport { axiosMiddleware } from './middleware/axios';\nimport UserContextProvider from './contexts/UserContext'\nimport SelectedCampaignContextProvider from './contexts/SelectedCampaignContext'\nimport CampaignContextProvider from './contexts/CampaignContext'\nimport SettingContextProvider from './contexts/SettingContext'\nimport CampaignResultContextProvider from './contexts/CampaignResultContext';\nimport logoSrc from \"./assets/img/logo.png\";\nimport UserDetails from './views/register-user'\nimport Survey from './views/survey';\nimport QrInstruction from './views/qrInstruction';\nimport Home from './views/home';\nimport UserExist from './views/userexist';\nimport ThankYou from './views/thank-you';\nimport Error404 from './views/error-404';\nimport Error500 from './views/error-500';\nimport userExist from './views/userexist';\naxiosMiddleware();\n\nconst createBrowserHistory = require(\"history\").createBrowserHistory\n\nexport const history = createBrowserHistory()\n\nconst App = () => {\n const [position, setPosition] = useState({\n lat:0.0,\n lng:0.0\n })\n var startPos;\n\n useEffect(async () => {\n await console.log(\"hello\") \n var geoError = await function (error) {\n console.log('Error occurred. Error code: ' + error.code);\n };\n var geoSuccess =await function (position) {\n // console.log(\"Position====>\", JSON.stringify(position))\n startPos = position;\n console.log(startPos.coords.latitude)\n console.log(startPos.coords.longitude)\n // console.log(\"Position====>\", JSON.stringify(position))\n console.log(startPos.coords.latitude)\n console.log(startPos.coords.longitude)\n setPosition({\n lat: startPos.coords.latitude,\n lng: startPos.coords.longitude\n })\n console.log(position)\n };\n await navigator.geolocation.getCurrentPosition(geoSuccess, geoError);\n },[])\nif(position){\n return (\n \n \n \n \n \n\n
\n
\n \n
\n \n \n {/* } />\n } />\n } /> */}\n\n \n {/* \n \n \n */}\n \n \n \n \n
\n
\n
\n
\n
\n
\n\n );\n}\n\n}\n\nexport default App;","import axios from \"axios\";\nimport { toastr } from 'react-redux-toastr';\nimport { history } from '../App';\nexport const axiosMiddleware = () => {\n\n\n const toastrType = 'error';\n const toastrOptions = {\n icon: toastrType,\n status: toastrType\n }\n\n //axios.defaults.baseURL = 'http://localhost:1337/api/v1/social-box/mobile';\n //axios.defaults.baseURL = 'http://localhost:1330/api/v1/social-box/mobile'; //Development Backend Container\n //axios.defaults.baseURL = 'http://13.213.32.154:1337/api/v1/social-box/mobile';\n //axios.defaults.baseURL = 'https://www.admin.brandsonroad.com/api/v1/social-box/mobile';\n axios.defaults.baseURL = process.env.REACT_APP_BASE_API_URL;\n\n axios.interceptors.response.use((response) => {\n return response;\n }, err => {\n console.log('[middleware][axios]Error From API', err);\n try {\n if (err.response.status === 401) {\n console.log('UNAUTHORIZED Error', JSON.stringify(err));\n toastr.light('UNAUTHORIZED', \"Session Expired\", toastrOptions)\n return Promise.reject([{ error: 'UNAUTHORIZED', message: \"Session Expired\" }])\n } else if (err.response.status === 400) {\n console.log('Bad Request', JSON.stringify(err.response));\n err.response.data.problems.map(er => toastr.light(err.response.data.code, er, toastrOptions))\n return Promise.reject(err.response)\n }else if (err.response.status === 402) {\n console.log('Bad Request', JSON.stringify(err.response));\n toastr.light('user already done the survey', err.response.data, toastrOptions);\n history.push('/userExist')\n return Promise.reject(err.response)\n } else if (err.response.status === 403) {\n console.log('Access Denied Request', JSON.stringify(err.response));\n toastr.light('Access Denied', err.response.data, toastrOptions);\n return Promise.reject(err.response)\n } else if (err.response.status === 404) {\n console.log('Not Found Error', JSON.stringify(err.response));\n toastr.light(err.response.data.message, err.response.data.statusText, toastrOptions)\n history.push('/error-404')\n return Promise.reject(err.response)\n }else if (err.response.status === 417) {\n console.log('Not Found Error', JSON.stringify(err.response));\n toastr.light(err.response.data.message, err.response.data.statusText, toastrOptions)\n history.push('/qrInstruction')\n return Promise.reject(err.response)\n } else if (err.response.status === 500) {\n console.log('Server Error', JSON.stringify(err.response));\n history.push('/error-500')\n err.response.data.errors.forEach((e) => {\n toastr.light(e.error, e.message, toastrOptions)\n })\n return Promise.reject(err.response)\n } else {\n history.push('/error-500')\n }\n } catch (err) {\n console.log(\"[middleware][axios][catch-block]\", JSON.stringify(err))\n history.push('/error-500')\n return;\n }\n });\n}\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' }\n })\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister();\n });\n }\n}\n","import {createStore, combineReducers} from 'redux'\nimport {reducer as toastrReducer} from 'react-redux-toastr'\nconst reducers = {\n // ... other reducers ...\n toastr: toastrReducer // <- Mounted at toastr.\n}\nconst reducer = combineReducers(reducers)\nexport const store = createStore(reducer)","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport './assets/styles/index.css';\nimport 'react-redux-toastr/lib/css/react-redux-toastr.min.css'\nimport App from './App';\nimport * as serviceWorker from './serviceWorker';\n\nimport { Provider } from 'react-redux'\nimport ReduxToastr from 'react-redux-toastr'\nimport { store } from './root'\n\nReactDOM.render(\n \n
\n \n state.toastr} // This is the default\n transitionIn=\"fadeIn\"\n transitionOut=\"fadeOut\"\n progressBar\n closeOnToastrClick />\n
\n
, document.getElementById('root'));\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n"],"sourceRoot":""}