{"version":3,"sources":["service/backend.js","service/service.js","components/NavMenu.js","components/Layout.js","components/Home.js","components/Enroll.js","components/SignIn.js","App.js","registerServiceWorker.js","index.js"],"names":["axios","require","defaults","instance","create","backend","options","userToken","localStorage","getItem","sessionStorage","headers","url","isAuthenticated","a","method","r","status","data","getStudent","updateStudent","student","getHomePage","getSchool","getStudyItems","getEnrollStudyItems","deleteEnrollStudyItem","id","enrollItem","NavMenu","props","toggleNavbar","bind","state","collapsed","school","window","location","search","token","URLSearchParams","get","setItem","this","setState","Navbar","className","light","Container","NavbarBrand","tag","Link","to","src","logo","height","alt","Collapse","isOpen","navbar","NavItem","NavLink","name","size","style","color","marginRight","Component","displayName","Layout","children","Home","loading","authorized","enrollItems","homepage","showDeleteModal","showDeleteStatus","deletingItem","deleteStatus","document","title","auth","hpage","eitems","contextId","Math","random","origin","href","code","item","ac","onClick","ssoSignIn","dangerouslySetInnerHTML","__html","mainnote","length","Button","history","push","Table","map","si","key","getStatus","textAlign","outline","deleteEnroll","Modal","direction","ModalHeader","toggle","ModalBody","ModalFooter","deleteModelAction","deleteModelStatusHide","Enroll","studyItems","currentItem","enrolling","showEnrollStatus","enrollStatus","showDetailsForm","errorEmail","errorPhone","itemSelected","enrollCurrentItem","storeDetailsForm","email","phone","items","tmp","formEvent","console","log","validatePhone","error","validateEmail","String","toLowerCase","match","Spinner","as","animation","role","ListGroup","ListGroupItem","action","padding","active","width","float","marginLeft","limit","backgroundColor","description","timetable","tti","payment","price","paymentUrl","target","rel","block","disabled","message","hideEnrollStatus","Form","FormGroup","Label","for","Input","type","onChange","e","value","invalid","SignIn","App","exact","path","component","Boolean","hostname","baseUrl","getElementsByTagName","getAttribute","rootElement","getElementById","ReactDOM","render","basename","navigator","serviceWorker","ready","then","registration","unregister"],"mappings":"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","file":"static/js/main.750077f2.chunk.js","sourcesContent":["var axios = require('axios');\r\n\r\nconst defaults = {\r\n \"Content-Type\": \"application/json; charset=utf-8\",\r\n \"Accept\": \"application/json\"\r\n};\r\n\r\nvar instance = axios.create();\r\n\r\nexport const backend = function (options) {\r\n //console.log('reading token');\r\n //console.log(options);\r\n\r\n let userToken = localStorage.getItem(\"_t\") || sessionStorage.getItem(\"_t\") || null;\r\n if (options.headers) {\r\n options.headers[\"X-Auth-Token\"] = userToken;\r\n } else {\r\n options.headers = { \"X-Auth-Token\": userToken };\r\n }\r\n\r\n return instance({ ...defaults, ...options, url: options.url });\r\n};","import { backend } from './backend';\r\n\r\nexport const isAuthenticated = async () => {\r\n let r = await backend({ url: 'auth/isauthenticated', method: \"GET\" });\r\n if (r.status && r.status === 200)\r\n return r.data;\r\n\r\n return null;\r\n}\r\n\r\nexport const getStudent = async () => {\r\n let r = await backend({ url: 'auth/student', method: \"GET\" });\r\n if (r.status && r.status === 200)\r\n return r.data;\r\n\r\n return null;\r\n}\r\n\r\nexport const updateStudent = async (student) => {\r\n let r = await backend({ url: 'student/update', method: \"POST\", data: student });\r\n if (r.status && r.status === 200)\r\n return r.data;\r\n\r\n return null;\r\n}\r\n\r\nexport const getHomePage = async () => {\r\n let r = await backend({ url: 'school/homepage', method: \"GET\" });\r\n if (r.status && r.status === 200)\r\n return r.data;\r\n\r\n return null;\r\n}\r\n\r\nexport const getSchool = async () => {\r\n let r = await backend({ url: 'school/current', method: \"GET\" });\r\n if (r.status && r.status === 200)\r\n return r.data;\r\n\r\n return null;\r\n}\r\n\r\nexport const getStudyItems = async () => {\r\n let r = await backend({ url: 'studyitem/items', method: \"GET\" });\r\n if (r.status && r.status === 200)\r\n return r.data;\r\n\r\n return null;\r\n}\r\n\r\nexport const getEnrollStudyItems = async () => {\r\n let r = await backend({ url: 'studyitem/eitems', method: \"GET\" });\r\n if (r.status && r.status === 200)\r\n return r.data;\r\n\r\n return null;\r\n}\r\n\r\nexport const deleteEnrollStudyItem = async (id) => {\r\n let r = await backend({ url: 'studyitem/delete/?id=' + id, method: \"POST\" });\r\n if (r.status && r.status === 200)\r\n return r.data;\r\n\r\n return null;\r\n}\r\n\r\nexport const enrollItem = async (id) => {\r\n let r = await backend({ url: 'studyitem/enroll/?id=' + id, method: \"POST\" });\r\n if (r.status && r.status === 200)\r\n return r.data;\r\n\r\n return null;\r\n}\r\n\r\n\r\n\r\n\r\n","import React, { Component } from 'react';\r\nimport { Collapse, Container, Navbar, NavbarBrand, NavbarToggler, NavItem, NavLink } from 'reactstrap';\r\nimport { Link } from 'react-router-dom';\r\nimport { getStudent, getSchool } from '../service/service';\r\nimport { FaRegUser } from 'react-icons/fa';\r\nimport './NavMenu.css';\r\n\r\nexport class NavMenu extends Component {\r\n static displayName = NavMenu.name;\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.toggleNavbar = this.toggleNavbar.bind(this);\r\n this.state = {\r\n collapsed: false,\r\n student: null,\r\n school: null,\r\n };\r\n }\r\n\r\n async componentDidMount() {\r\n //console.log(\"navbar mount\");\r\n if (window.location && window.location.search) {\r\n var token = new URLSearchParams(window.location.search).get(\"t\");\r\n if (token != null)\r\n localStorage.setItem(\"_t\", token);\r\n }\r\n\r\n var student = await getStudent();\r\n this.setState({ student: student });\r\n\r\n var school = await getSchool();\r\n this.setState({ school: school });\r\n }\r\n\r\n toggleNavbar() {\r\n this.setState({\r\n collapsed: !this.state.collapsed\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n \r\n \r\n {this.state.school &&\r\n \"logo\"\r\n }\r\n \r\n \r\n
    \r\n \r\n בית\r\n \r\n \r\n הרשמה\r\n \r\n
\r\n
\r\n
\r\n
    \r\n \r\n \r\n {this.state.student && this.state.student.name}\r\n {this.state.student &&\r\n }\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Container } from 'reactstrap';\r\nimport { NavMenu } from './NavMenu';\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 \r\n {this.props.children}\r\n \r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { isAuthenticated, getHomePage, getEnrollStudyItems, deleteEnrollStudyItem } from '../service/service';\r\nimport { Table, Button, Spinner, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\r\n\r\nexport class Home extends Component {\r\n static displayName = Home.name;\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n loading: true,\r\n authorized: false,\r\n enrollItems: [],\r\n homepage: '',\r\n showDeleteModal: false,\r\n showDeleteStatus: false,\r\n deletingItem: null,\r\n deleteStatus: null,\r\n };\r\n }\r\n\r\n async componentDidMount() {\r\n document.title = 'הרשמה לקורסים';\r\n\r\n var auth = await isAuthenticated();\r\n var hpage = '';\r\n var eitems = '';\r\n\r\n if (auth !== false) {\r\n hpage = await getHomePage();\r\n eitems = await getEnrollStudyItems();\r\n }\r\n\r\n //console.log('setting home state');\r\n this.setState({ authorized: auth !== false, homepage: hpage, enrollItems: eitems, loading: false });\r\n }\r\n\r\n ssoSignIn() {\r\n var contextId = Math.random() * 100000000;\r\n var url = window.location.origin + '/signin/ssosignin/?p=';\r\n window.location.href = 'https://timetable.shahaf.info/ShfSignIn.aspx?sid=webapp&cid=' + contextId + '&r=' + url;\r\n //window.location.href = url + \"eyJOYW1lIjoi15XXnNeT15nXnteZ16gg16fXqNeh16DXldeRIiwiVHoiOiIzMTAyOTUyMjUiLCJUb2tlbiI6IlFrTWJmV2NHQUFZaWZCZ0RKdzRWZjFzL0VRWjJBVU1OZVFwQkFDY0JDaUpoREZzTlMwTTVTR0lHRzJRZ1lXQlEiLCJTdHVkZW50Ijoibm8iLCJTY2hvb2xzIjpbXX0=\";\r\n }\r\n\r\n getStatus(code) {\r\n if (code === 11)\r\n return \"ברשימת המתנה\";\r\n else if (code === 12)\r\n return \"נרשם\"\r\n else if (code === 13)\r\n return \"הרשמה בוטלה\"\r\n else if (code === 14)\r\n return \"מאושר\"\r\n else if (code === 15)\r\n return \"נדחה\"\r\n\r\n return \"\";\r\n }\r\n\r\n async deleteEnroll(item) {\r\n //console.log('deleting');\r\n this.setState({ showDeleteModal: true, deletingItem: item });\r\n }\r\n\r\n async deleteModelAction(ac) {\r\n if (ac === true) {\r\n if (this.state.deletingItem) {\r\n var status = await deleteEnrollStudyItem(this.state.deletingItem.id);\r\n var eitems = await getEnrollStudyItems();\r\n this.setState({ showDeleteModal: false, showDeleteStatus: true, deletingItem: null, deleteStatus: status, enrollItems: eitems });\r\n }\r\n else {\r\n this.setState({ showDeleteModal: false, deletingItem: null });\r\n }\r\n }\r\n else {\r\n this.setState({ showDeleteModal: false, deletingItem: null });\r\n }\r\n }\r\n\r\n async deleteModelStatusHide() {\r\n this.setState({ showDeleteModal: false, showDeleteStatus: false, deletingItem: null, deleteStatus: null });\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n { this.state.authorized === false && this.state.loading === false &&\r\n
\r\n

ברוכים הבאים לאתר הרשמה

\r\n

אנא בצעו כניסה למערכת

\r\n \r\n
\r\n }\r\n { this.state.authorized &&\r\n
\r\n

\r\n
\r\n
\r\n {this.state.enrollItems &&\r\n
\r\n {(this.state.enrollItems == null || this.state.enrollItems.length === 0) &&\r\n
\r\n
אינך רשומ/ה לאף קורס
\r\n
\r\n this.props.history.push('/enroll')}>\r\n הרשמה\r\n \r\n
\r\n }\r\n {this.state.enrollItems && this.state.enrollItems.length > 0 &&\r\n
הינך רשומ/ה לקורסים הבאים
\r\n }\r\n \r\n \r\n {this.state.enrollItems && this.state.enrollItems.map(si =>\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n
{si.name}{this.getStatus(si.status)}\r\n \r\n
\r\n \r\n ביטול הרשמה\r\n \r\n
\r\n האם ברצונך לבטל הרשמה לקורס ?\r\n
\r\n
\r\n \r\n {' '}\r\n \r\n \r\n
\r\n \r\n ביטול הרשמה\r\n \r\n {this.state.deleteStatus && this.state.deleteStatus.status === 'FAIL' &&\r\n
\r\n ביטול הרשמה נכשל, אנא נסו שוב\r\n
\r\n }\r\n {this.state.deleteStatus && this.state.deleteStatus.status === 'SUCCESS' &&\r\n
\r\n ביטול הרשמה בוצע בהצלחה\r\n
\r\n }\r\n
\r\n \r\n {' '}\r\n \r\n
\r\n
\r\n }\r\n
\r\n }\r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { FaCheck } from 'react-icons/fa';\r\nimport { BiErrorCircle } from 'react-icons/bi';\r\nimport { isAuthenticated, getStudyItems, enrollItem, deleteEnrollStudyItem, getStudent, updateStudent } from '../service/service';\r\nimport { ListGroup, ListGroupItem, Button, Spinner, Modal, ModalHeader, ModalBody, ModalFooter, Collapse } from 'reactstrap';\r\nimport { Form, FormGroup, Label, Input, FormText } from 'reactstrap';\r\n\r\n\r\nexport class Enroll extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n loading: true,\r\n student: null,\r\n studyItems: [],\r\n currentItem: null,\r\n enrolling: false,\r\n showEnrollStatus: false,\r\n enrollStatus: null,\r\n\r\n showDeleteModal: false,\r\n showDeleteStatus: false,\r\n deletingItem: null,\r\n deleteStatus: null,\r\n\r\n showDetailsForm: false,\r\n errorEmail: false,\r\n errorPhone: false,\r\n authorized: false,\r\n\r\n };\r\n this.itemSelected = this.itemSelected.bind(this);\r\n this.enrollCurrentItem = this.enrollCurrentItem.bind(this);\r\n this.storeDetailsForm = this.storeDetailsForm.bind(this);\r\n this.email = \"\";\r\n this.phone = \"\";\r\n }\r\n\r\n async componentDidMount() {\r\n document.title = 'הרשמה לקורסים';\r\n var auth = await isAuthenticated();\r\n var items = await getStudyItems();\r\n var student = await getStudent();\r\n this.setState({ authorized: auth !== false, loading: false, studyItems: items, currentItem: null, student: student });\r\n }\r\n\r\n async itemSelected(item) {\r\n if (this.state.currentItem === item)\r\n this.setState({ currentItem: null });\r\n else\r\n this.setState({ currentItem: item });\r\n }\r\n\r\n async enrollCurrentItem() {\r\n if (this.state.student == null)\r\n return;\r\n\r\n this.setState({ enrolling: true });\r\n if (this.state.student.email == null || this.state.student.email === \"\" ||\r\n this.state.student.phone == null || this.state.student.phone === \"\") {\r\n this.setState({ showDetailsForm: true });\r\n return;\r\n }\r\n\r\n //console.log(this.state);\r\n var tmp = await enrollItem(this.state.currentItem.id);\r\n var items = await getStudyItems();\r\n this.setState({ enrolling: false, showEnrollStatus: true, enrollStatus: tmp, studyItems: items });\r\n }\r\n\r\n async storeDetailsForm(formEvent) {\r\n console.log(this.phone);\r\n console.log(this.validatePhone(this.phone));\r\n\r\n var error = false;\r\n if (this.validateEmail(this.email) == null) {\r\n this.setState({ errorEmail: true });\r\n error = true;\r\n }\r\n else {\r\n this.setState({ errorEmail: false });\r\n }\r\n\r\n if (this.validatePhone(this.phone) == null) {\r\n this.setState({ errorPhone: true });\r\n error = true;\r\n }\r\n else {\r\n this.setState({ errorPhone: false });\r\n }\r\n if (error)\r\n return;\r\n\r\n await updateStudent({ email: this.email, phone: this.phone });\r\n\r\n var student = await getStudent();\r\n this.setState({ student: student, showDetailsForm: false });\r\n\r\n this.enrollCurrentItem();\r\n }\r\n\r\n async hideEnrollStatus() {\r\n this.setState({ enrolling: false, showEnrollStatus: false, enrollStatus: null });\r\n }\r\n\r\n async deleteEnroll(item) {\r\n this.setState({ showDeleteModal: true, deletingItem: item });\r\n }\r\n\r\n async deleteModelAction(ac) {\r\n if (ac === true) {\r\n if (this.state.deletingItem) {\r\n var status = await deleteEnrollStudyItem(this.state.deletingItem.id);\r\n var items = await getStudyItems();\r\n this.setState({ showDeleteModal: false, showDeleteStatus: true, deletingItem: null, deleteStatus: status, studyItems: items, currentItem: null });\r\n }\r\n else {\r\n this.setState({ showDeleteModal: false, deletingItem: null });\r\n }\r\n }\r\n else {\r\n this.setState({ showDeleteModal: false, deletingItem: null });\r\n }\r\n }\r\n\r\n async deleteModelStatusHide() {\r\n this.setState({ showDeleteModal: false, showDeleteStatus: false, deletingItem: null, deleteStatus: null });\r\n }\r\n\r\n validateEmail (email) {\r\n return String(email)\r\n .toLowerCase()\r\n .match(\r\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\r\n );\r\n };\r\n\r\n validatePhone(phone) {\r\n return String(phone)\r\n .toLowerCase()\r\n .match(\r\n /^[\\+]?[(]?[0-9]{2,3}[)]?[-\\s\\.]?[0-9]{3}[-\\s\\.]?[0-9]{4,6}$/im\r\n );\r\n };\r\n\r\n\r\n render() {\r\n return (\r\n
\r\n {this.state.loading === true &&\r\n \r\n }\r\n {this.state.authorized === false && this.state.loading === false &&\r\n
\r\n

ברוכים הבאים לאתר הרשמה

\r\n

אנא בצעו כניסה למערכת

\r\n \r\n
\r\n }\r\n {this.state.studyItems.length === 0 && this.state.loading === false && this.state.authorized === true &&\r\n
לא נמצאו קבוצות להרשמה
\r\n }\r\n {this.state.studyItems.length > 0 && this.state.loading === false && this.state.authorized === true &&\r\n
\r\n
רשימת קורסים להרשמה
\r\n \r\n {this.state.studyItems.map(si =>\r\n \r\n \r\n \r\n this.itemSelected(si)}>\r\n \r\n \r\n {this.state.currentItem === si &&\r\n \r\n \r\n \r\n }\r\n \r\n
\r\n
\r\n {si.status > 0 &&\r\n }\r\n {si.name}\r\n
\r\n {si.limit > 0 && si.limit < 1000000 &&\r\n
\r\n {si.limit}\r\n  \r\n מקומות פנויים\r\n
}\r\n {si.limit === 0 &&\r\n
\r\n רשימת המתנה\r\n
}\r\n
\r\n
\r\n
\r\n {this.state.currentItem.description &&\r\n
\r\n
תאור הקורס
\r\n
\r\n
\r\n }\r\n {this.state.currentItem.timetable &&\r\n
\r\n
\r\n
\r\n
מפגשים
\r\n {this.state.currentItem.timetable.map(tti =>\r\n
\r\n {tti.description}\r\n
\r\n )}\r\n
\r\n {this.state.currentItem.payment &&\r\n
\r\n
\r\n
תשלום
\r\n מחיר הרשמה לקורס זה: {this.state.currentItem.price + \" ש\\\"ח\"}
\r\n לתשלום\r\n
}\r\n
\r\n }\r\n
\r\n
\r\n
\r\n {this.state.currentItem.status === 0 ?\r\n (this.state.currentItem.block === 1 ?\r\n
\r\n נרשמת לכמות מירבית של קורסים, אם ברצונך להירשם לקורס זה, יש לבטל הרשמה בקורס אחר\r\n
\r\n :\r\n \r\n {this.state.enrolling &&\r\n \r\n }\r\n הרשם לקורס זה\r\n )\r\n :\r\n
\r\n הינך כבר רשום לקורס זה, אם ברצונך לבטל הרשמה לחץ/י\r\n

\r\n this.deleteEnroll(this.state.currentItem)}>\r\n בטל הרשמה\r\n \r\n
}\r\n
\r\n
\r\n
\r\n \r\n )}\r\n
\r\n
\r\n }\r\n \r\n \r\n הרשמה לקורס\r\n \r\n {this.state.enrollStatus && this.state.enrollStatus.status === 'FAIL' &&\r\n
\r\n \r\n תהליך הרשמה נכשל,\r\n  \r\n {this.state.enrollStatus.message != null ?\r\n {this.state.enrollStatus.message}\r\n :\r\n אנא נסו שוב}\r\n
\r\n }\r\n {this.state.enrollStatus && this.state.enrollStatus.status === 'SUCCESS' &&\r\n
\r\n \r\n תהליך הרשמה לקורס בוצע בהצלחה\r\n
\r\n }\r\n
\r\n \r\n {' '}\r\n \r\n
\r\n \r\n ביטול הרשמה\r\n \r\n
\r\n האם ברצונך לבטל הרשמה לקורס ?\r\n
\r\n
\r\n \r\n {' '}\r\n \r\n \r\n
\r\n \r\n ביטול הרשמה\r\n \r\n {this.state.deleteStatus && this.state.deleteStatus.status === 'FAIL' &&\r\n
\r\n ביטול הרשמה נכשל, אנא נסו שוב\r\n
\r\n }\r\n {this.state.deleteStatus && this.state.deleteStatus.status === 'SUCCESS' &&\r\n
\r\n ביטול הרשמה בוצע בהצלחה\r\n
\r\n }\r\n
\r\n \r\n {' '}\r\n \r\n
\r\n \r\n אנא הזינו פרטים\r\n \r\n
\r\n \r\n \r\n this.email = e.target.value}\r\n invalid={this.state.errorEmail} />\r\n \r\n \r\n \r\n this.phone = e.target.value}\r\n invalid={this.state.errorPhone} />\r\n \r\n
\r\n
\r\n \r\n {' '}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Redirect } from 'react-router-dom';\r\n\r\nexport class SignIn extends Component {\r\n static displayName = SignIn.name;\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n loading: true,\r\n token: '',\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n var token = new URLSearchParams(this.props.location.search).get(\"t\");\r\n localStorage.setItem(\"_t\", token);\r\n sessionStorage.setItem(\"_t\", token);\r\n console.log('writed token');\r\n\r\n this.setState({ loading: false, token: token });\r\n }\r\n\r\n render() {\r\n if (this.state.loading)\r\n return (
אנא המתינו...
);\r\n\r\n var token = this.state.token;\r\n if (token === '') {\r\n return (\r\n
תהליך הזדהות נכשל
\r\n );\r\n }\r\n else if (token === 'NO_SEMEL') {\r\n return (\r\n
אינך שייך לאף בית ספר עם הרשמה עצמאית
\r\n );\r\n }\r\n else return (\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 { Enroll } from './components/Enroll';\r\nimport { SignIn } from './components/SignIn';\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 { unregister } 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\nunregister();\r\n"],"sourceRoot":""}