{"version":3,"sources":["context/offset/offsetContext.js","context/conferences/conferencesContext.js","context/about/aboutContext.js","theme.js","context/about/aboutReducer.js","context/about/AboutState.js","context/conferences/conferencesReducer.js","context/conferences/ConferencesState.js","context/offset/offsetReducer.js","context/offset/OffestState.js","App.js","serviceWorker.js","index.js"],"names":["offsetContext","createContext","conferencesContext","aboutContext","defaultTheme","createMuiTheme","palette","secondary","main","breakpoints","theme","overrides","MuiCssBaseline","html","fontSize","down","body","fontFamily","backgroundColor","height","minHeight","state","action","type","open","payload","content","AboutState","props","useReducer","AboutReducer","dispatch","Provider","value","setOpen","bool","setContent","section","children","currentYear","ConferencesState","ConferencesReducer","setCurrentYear","year","about","conferences","articles","contact","loading","OffsetState","OffsetReducer","isMobile","window","innerWidth","getOffset","el","rect","getBoundingClientRect","left","scrollX","top","scrollY","getOffsetAbout","getOffsetConferences","getOffsetArticles","getOffsetContact","setLoading","Routes","React","lazy","App","fallback","Boolean","location","hostname","match","ReactDOM","render","Fragment","ThemeProvider","document","getElementById","navigator","serviceWorker","ready","then","registration","unregister","catch","error","console","message"],"mappings":"kGAAA,WAEMA,EAAgBC,0BAEPD,O,iCCJf,WAEME,EAAqBD,0BAEZC,O,iCCJf,WAEMC,EAAeF,0BAENE,O,4LCFTC,EAAeC,YAAe,CAChCC,QAAS,CACLC,UAAW,CACPC,KAAM,cAKVC,EAAgBL,EAAhBK,YA+BOC,EA7BJ,2BACJN,GADI,IAEPO,UAAW,CACPC,eAAgB,CACZ,UAAW,CACPC,MAAI,GACAC,SAAU,IADV,cAECL,EAAYM,KAAK,MAAQ,CACtBD,SAAU,aAHd,cAKCL,EAAYM,KAAK,MAAQ,CACtBD,SAAU,YANd,oCAQqB,QARrB,wBASS,GATT,uBAUQ,GAVR,GAYJE,KAAM,CACFC,WAAY,0BACZH,SAAU,GACVI,gBAAiB,UACjBC,OAAQ,OACRC,UAAW,a,0BC/BhB,WAACC,EAAOC,GACnB,OAAQA,EAAOC,MACb,IALW,WAMT,OAAO,2BACFF,GADL,IAEEG,KAAMF,EAAOG,UAEjB,IATc,cAUZ,OAAO,2BACFJ,GADL,IAEEK,QAASJ,EAAOG,UAEpB,QACE,OAAOJ,ICoBAM,EA7BI,SAACC,GAEhB,IAKA,EAA0BC,qBAAWC,EALhB,CACjBN,MAAM,EACNE,QAAS,YAGb,mBAAOL,EAAP,KAAcU,EAAd,KAQA,OACE,kBAAC,IAAaC,SAAd,CACEC,MAAO,CACHT,KAAMH,EAAMG,KACZE,QAASL,EAAMK,QACfQ,QAVQ,SAACC,GAAD,OAAUJ,EAAS,CAAER,KAbxB,WAawCE,QAASU,KAWtDC,WARW,SAACC,GAAD,OAAaN,EAAS,CAAER,KAf3B,cAe8CE,QAASY,OAWlET,EAAMU,W,SC7BA,WAACjB,EAAOC,GACnB,OAAQA,EAAOC,MACX,IAJiB,mBAKb,OAAO,2BACAF,GADP,IAEIkB,YAAajB,EAAOG,UAE5B,QACI,OAAOJ,ICsBJmB,EA1BU,SAACZ,GAEtB,IAKA,EAA0BC,qBAAWY,EALhB,CACjBF,YAAa,OAIjB,mBAAOlB,EAAP,KAAcU,EAAd,KAOA,OACE,kBAAC,IAAmBC,SAApB,CACEC,MAAO,CACLM,YAAalB,EAAMkB,YACnBG,eAPiB,SAACC,GAAD,OAAUZ,EAAS,CAAER,KAbvB,mBAa+CE,QAASkB,OAUxEf,EAAMU,W,SCrBE,WAACjB,EAAOC,GACrB,OAAQA,EAAOC,MACb,IARmB,mBASjB,OAAO,2BACFF,GADL,IAEEuB,MAAOtB,EAAOG,UAElB,IAZyB,yBAavB,OAAO,2BACFJ,GADL,IAEEwB,YAAavB,EAAOG,UAExB,IAhBsB,sBAiBpB,OAAO,2BACFJ,GADL,IAEEyB,SAAUxB,EAAOG,UAErB,IApBqB,qBAqBnB,OAAO,2BACFJ,GADL,IAEE0B,QAASzB,EAAOG,UAEpB,IAxBc,cAyBZ,OAAO,2BACFJ,GADL,IAEE2B,SAAS,IAEb,QACE,OAAO3B,ICkCA4B,EA1DK,SAACrB,GACjB,IAQA,EAA0BC,qBAAWqB,EARhB,CACjBN,MAAO,EACPC,YAAa,EACbC,SAAU,EACVC,QAAS,EACTC,SAAS,IAGb,mBAAO3B,EAAP,KAAcU,EAAd,KAEMoB,EAAWC,OAAOC,YAAc,IAEhCC,EAAY,SAACC,GACf,IAAMC,EAAOD,EAAGE,wBAChB,MAAO,CACHC,KAAMF,EAAKE,KAAON,OAAOO,QACzBC,IAAKJ,EAAKI,IAAMR,OAAOS,UAqB/B,OACI,kBAAC,IAAc7B,SAAf,CACIC,MAAO,CACHW,MAAOvB,EAAMuB,MACbC,YAAaxB,EAAMwB,YACnBC,SAAUzB,EAAMyB,SAChBC,QAAS1B,EAAM0B,QACfC,QAAS3B,EAAM2B,QACfc,eAxBW,SAAClB,GAAD,OACnBb,EAAS,CAAER,KA7BM,mBA6BkBE,QAAS6B,EAAUV,GAAOgB,KAAOT,EAAW,GAAK,QAwB5EY,qBArBiB,SAAClB,GAAD,OACzBd,EAAS,CAAER,KAhCY,yBAgCkBE,QAAS6B,EAAUT,GAAae,OAqBjEI,kBAlBc,SAAClB,GAAD,OAAcf,EAAS,CAAER,KAlC3B,sBAkCsDE,QAAS6B,EAAUR,GAAUc,OAmB/FK,iBAhBa,SAAClB,GAAD,OAAahB,EAAS,CAAER,KApC1B,qBAoCoDE,QAAS6B,EAAUP,GAASa,OAiB3FM,WAdO,kBAAMnC,EAAS,CAAER,KAtCpB,mBAuDPK,EAAMU,WCpDb6B,EAASC,IAAMC,MAAK,kBAAM,wDAgBjBC,MAdf,WACI,OACI,kBAAC,EAAD,KACI,kBAAC,EAAD,KACI,kBAAC,EAAD,KACI,kBAAC,WAAD,CAAUC,SAAU,yCAChB,kBAACJ,EAAD,WCPJK,QACW,cAA7BpB,OAAOqB,SAASC,UAEe,UAA7BtB,OAAOqB,SAASC,UAEhBtB,OAAOqB,SAASC,SAASC,MACvB,2DCLNC,IAASC,OACL,kBAAC,IAAMC,SAAP,KACI,kBAACC,EAAA,EAAD,CAAerE,MAAOA,GAClB,kBAAC,EAAD,QAGRsE,SAASC,eAAe,SDgHtB,kBAAmBC,WACrBA,UAAUC,cAAcC,MACrBC,MAAK,SAAAC,GACJA,EAAaC,gBAEdC,OAAM,SAAAC,GACLC,QAAQD,MAAMA,EAAME,c","file":"static/js/main.777d24a6.chunk.js","sourcesContent":["import { createContext } from \"react\";\r\n\r\nconst offsetContext = createContext();\r\n\r\nexport default offsetContext;","import { createContext } from \"react\";\r\n\r\nconst conferencesContext = createContext();\r\n\r\nexport default conferencesContext;","import { createContext } from \"react\";\r\n\r\nconst aboutContext = createContext();\r\n\r\nexport default aboutContext;","import { createMuiTheme } from \"@material-ui/core/styles\";\r\n\r\nconst defaultTheme = createMuiTheme({\r\n palette: {\r\n secondary: {\r\n main: \"#75b2ad\",\r\n },\r\n },\r\n});\r\n\r\nconst { breakpoints } = defaultTheme;\r\n\r\nconst theme = {\r\n ...defaultTheme,\r\n overrides: {\r\n MuiCssBaseline: {\r\n \"@global\": {\r\n html: {\r\n fontSize: 16,\r\n [breakpoints.down(\"sm\")]: {\r\n fontSize: \"0.875rem\",\r\n },\r\n [breakpoints.down(\"xs\")]: {\r\n fontSize: \"0.75rem\",\r\n },\r\n WebkitFontSmoothing: \"auto\",\r\n padding: 0,\r\n margin: 0,\r\n },\r\n body: {\r\n fontFamily: \"'Fira Sans', sans-serif\",\r\n fontSize: 16,\r\n backgroundColor: \"#FFFFFF\",\r\n height: \"100%\",\r\n minHeight: \"100%\",\r\n },\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default theme;\r\n","const SET_OPEN = \"SET_OPEN\";\r\nconst SET_CONTENT = 'SET_CONTENT';\r\n\r\nexport default (state, action) => {\r\n switch (action.type) {\r\n case SET_OPEN:\r\n return {\r\n ...state,\r\n open: action.payload,\r\n };\r\n case SET_CONTENT:\r\n return {\r\n ...state,\r\n content: action.payload,\r\n };\r\n default:\r\n return state;\r\n }\r\n };","import React, { useReducer } from \"react\";\r\nimport AboutContext from \"./aboutContext\";\r\nimport AboutReducer from \"./aboutReducer\";\r\n\r\nconst SET_OPEN = \"SET_OPEN\";\r\nconst SET_CONTENT = 'SET_CONTENT';\r\n\r\nconst AboutState = (props) => {\r\n \r\n const initialState = {\r\n open: false,\r\n content: 'statute'\r\n };\r\n\r\n const [state, dispatch] = useReducer(AboutReducer, initialState);\r\n\r\n // Set open about section\r\n const setOpen = (bool) => dispatch({ type: SET_OPEN, payload: bool });\r\n\r\n // Set open about section\r\n const setContent = (section) => dispatch({ type: SET_CONTENT, payload: section });\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n };\r\n\r\nexport default AboutState;","const SET_CURRENT_YEAR = \"SET_CURRENT_YEAR\";\r\n\r\nexport default (state, action) => {\r\n switch (action.type) {\r\n case SET_CURRENT_YEAR:\r\n return {\r\n ...state,\r\n currentYear: action.payload,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import React, { useReducer } from \"react\";\r\nimport ConferencesContext from \"./conferencesContext\";\r\nimport ConferencesReducer from \"./conferencesReducer\";\r\n\r\nconst SET_CURRENT_YEAR = \"SET_CURRENT_YEAR\";\r\n\r\nconst ConferencesState = (props) => {\r\n \r\n const initialState = {\r\n currentYear: null,//2018,\r\n\r\n };\r\n\r\n const [state, dispatch] = useReducer(ConferencesReducer, initialState);\r\n\r\n\r\n // Get offest of about section \r\n const setCurrentYear = (year) => dispatch({ type: SET_CURRENT_YEAR, payload: year });\r\n\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n };\r\n\r\nexport default ConferencesState;","const GET_OFFSET_ABOUT = \"GET_OFFSET_ABOUT\";\r\nconst GET_OFFSET_CONFERENCES = \"GET_OFFSET_CONFERENCES\";\r\nconst GET_OFFSET_ARTICLES = \"GET_OFFSET_ARTICLES\";\r\nconst GET_OFFSET_CONTACT = \"GET_OFFSET_CONTACT\";\r\nconst SET_LOADING = \"SET_LOADING\";\r\n\r\n export default (state, action) => {\r\n switch (action.type) {\r\n case GET_OFFSET_ABOUT:\r\n return {\r\n ...state,\r\n about: action.payload,\r\n };\r\n case GET_OFFSET_CONFERENCES:\r\n return {\r\n ...state,\r\n conferences: action.payload,\r\n };\r\n case GET_OFFSET_ARTICLES:\r\n return {\r\n ...state,\r\n articles: action.payload,\r\n };\r\n case GET_OFFSET_CONTACT:\r\n return {\r\n ...state,\r\n contact: action.payload,\r\n };\r\n case SET_LOADING:\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n default:\r\n return state;\r\n }\r\n };","import React, { useReducer } from \"react\";\r\nimport OffsetContext from \"./offsetContext\";\r\nimport OffsetReducer from \"./offsetReducer\";\r\n\r\nconst GET_OFFSET_ABOUT = \"GET_OFFSET_ABOUT\";\r\nconst GET_OFFSET_CONFERENCES = \"GET_OFFSET_CONFERENCES\";\r\nconst GET_OFFSET_ARTICLES = \"GET_OFFSET_ARTICLES\";\r\nconst GET_OFFSET_CONTACT = \"GET_OFFSET_CONTACT\";\r\nconst SET_LOADING = \"SET_LOADING\";\r\n\r\nconst OffsetState = (props) => {\r\n const initialState = {\r\n about: 0,\r\n conferences: 0,\r\n articles: 0,\r\n contact: 0,\r\n loading: false,\r\n };\r\n\r\n const [state, dispatch] = useReducer(OffsetReducer, initialState);\r\n\r\n const isMobile = window.innerWidth <= 600;\r\n\r\n const getOffset = (el) => {\r\n const rect = el.getBoundingClientRect();\r\n return {\r\n left: rect.left + window.scrollX,\r\n top: rect.top + window.scrollY,\r\n };\r\n };\r\n\r\n // Get offest of about section\r\n const getOffsetAbout = (about) =>\r\n dispatch({ type: GET_OFFSET_ABOUT, payload: getOffset(about).top - (isMobile ? 75 : 150) });\r\n\r\n // Get offest of conferences section\r\n const getOffsetConferences = (conferences) =>\r\n dispatch({ type: GET_OFFSET_CONFERENCES, payload: getOffset(conferences).top });\r\n\r\n // Get offest of articles section\r\n const getOffsetArticles = (articles) => dispatch({ type: GET_OFFSET_ARTICLES, payload: getOffset(articles).top });\r\n\r\n // Get offest of contact section\r\n const getOffsetContact = (contact) => dispatch({ type: GET_OFFSET_CONTACT, payload: getOffset(contact).top });\r\n\r\n // Get offest of contact section\r\n const setLoading = () => dispatch({ type: SET_LOADING });\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n\r\nexport default OffsetState;\r\n","// import \"react-app-polyfill/ie9\";\r\nimport React, { Suspense } from \"react\";\r\nimport \"react-app-polyfill/ie11\";\r\nimport \"react-app-polyfill/stable\";\r\n\r\n// import \"./App.css\";\r\n\r\nimport AboutState from \"./context/about/AboutState\";\r\nimport ConferencesState from \"./context/conferences/ConferencesState\";\r\nimport OffsetState from \"./context/offset/OffestState\";\r\n\r\nconst Routes = React.lazy(() => import(\"./routes\"));\r\n\r\nfunction App() {\r\n return (\r\n \r\n \r\n \r\n Loading}>\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default App;\r\n","// This optional code is used to register a service worker.\r\n// register() is not called by default.\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 subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\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.0/8 are 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 function register(config) {\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.href);\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/facebook/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. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\r\n 'This web app is being served cache-first by a service ' +\r\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\r\n );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl, config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all ' +\r\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\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 // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\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, config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl, {\r\n headers: { 'Service-Worker': 'script' },\r\n })\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get('content-type');\r\n if (\r\n response.status === 404 ||\r\n (contentType != null && contentType.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, config);\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\r\n .then(registration => {\r\n registration.unregister();\r\n })\r\n .catch(error => {\r\n console.error(error.message);\r\n });\r\n }\r\n}\r\n","// import \"react-app-polyfill/ie9\";\r\nimport \"react-app-polyfill/ie11\";\r\nimport \"react-app-polyfill/stable\";\r\nimport React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\n\r\nimport { ThemeProvider } from \"@material-ui/core/styles\";\r\nimport theme from \"./theme\";\r\n\r\nimport './index.css';\r\nimport App from \"./App\";\r\nimport * as serviceWorker from \"./serviceWorker\";\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById(\"root\")\r\n);\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n"],"sourceRoot":""}