{"version":3,"sources":["components/Body/DetailScreen/DetailScreen.module.css","components/Body/FormScreen/FormScreen.module.css","components/Header/Header.jsx","components/Body/HomeScreen/HomeScreen.jsx","context.js","components/common/callApi.js","components/Body/MyCommunicationsScreen/CardCommunication/CardCommunication.jsx","components/common/Loading/Loading.jsx","AuthContext.js","hooks/usePagination.js","components/common/Pagination/Pagination.js","components/common/utils.js","components/Body/MyCommunicationsScreen/MyCommunicationsScreen.jsx","components/common/data.js","components/Footer/Footer.jsx","components/common/LoginSPIDButton/LoginSPIDButton.jsx","components/common/LoginCIEButton/LoginCIEButton.jsx","components/common/UserLogged/UserLogged.jsx","components/Navbar/Navbar.jsx","components/Body/ErrorScreen/CieErrorScreen.jsx","components/Body/ErrorScreen/NotFoundScreen.jsx","components/Body/FormScreen/GDPRPage/GDPRPage.jsx","components/Body/FormScreen/StatusRequestPage/StatusRequestPage.jsx","hooks/useInterval.js","components/common/ScrollToTop/ScrollToTop.js","components/Body/FormScreen/FormScreen.jsx","components/Body/DetailScreen/DetailScreen.jsx","components/Body/MyCommunicationsScreen/CommunicationsScreen.jsx","components/Body/LandingPageScreen/LandingPageScreen.jsx","components/Body/LegalAndPrivacyScreen/LegalAndPrivacyScreen.jsx","App.js","reportWebVitals.js","i18n.js","index.js","components/Navbar/Navbar.module.css"],"names":["module","exports","Header","t","useTranslation","Container","fluid","Row","className","Col","xs","target","rel","href","Image","src","alt","width","HomeScreen","navigate","useNavigate","Button","variant","onClick","Trans","AppContext","React","createContext","AppProvider","children","useState","is","text","loading","setLoading","status","error","setError","type","message","setMessage","showAuthExpired","setShowAuthExpired","dettaglioSelezionato","setDettaglioSelezionato","Provider","value","clearMessage","setTimeout","clearError","convertDate","dateToConvert","originFormatDate","Date","String","getDate","padStart","getMonth","getFullYear","convertTime","getHours","getMinutes","useGlobalContext","useContext","email","codiceFiscaleDatore","codiceFiscaleLavoratore","fromDate","toDate","pageSize","offset","urlCallBase","window","env","API_URL","urlCall","includes","date","dd","mm","yyyy","dataInizio","dataFine","axios","method","url","withCredentials","then","response","catch","coapStatus","urlBase","SPID_API_URL","id","codiceFiscalePartitaIva","API_REGISTRY_URL","codiceFiscale","callApiGetComunicationById","jsonData","data","headers","mode","callApiGetGeneratePDF","responseType","CardCommunication","dataComunication","isHelpdesk","resend","setResend","fnResendHD","resendHD","undefined","useEffect","esito","Card","codiceComunicazione","bg","border","Title","dataInvio","Body","md","datoreLavoro","cfDatoreLavoro","denominazione","lavoratore","cfLavoratore","nome","cognome","lg","ButtonGroup","size","correlationId","disabled","Footer","sm","URL","createObjectURL","Blob","link","document","createElement","setAttribute","concat","body","appendChild","click","Loading","Spinner","as","animation","role","authContext","useAuth","authenticated","setAuthenticated","admin","setAdmin","localStorage","getItem","user","setUser","me","res","setItem","removeItem","isAdmin","signout","AuthProvider","auth","AuthConsumer","DOTS","range","start","end","length","Array","from","_","idx","CustomPagination","props","onPageChange","totalCount","siblingCount","currentPage","paginationRange","useMemo","totalPageCount","Math","ceil","leftSiblingIndex","max","rightSiblingIndex","min","shouldShowLeftDots","shouldShowRightDots","firstPageIndex","lastPageIndex","leftRange","rightRange","middleRange","usePagination","lastPage","Pagination","First","Prev","map","pageNumber","Ellipsis","Item","active","Next","Last","extractConsonants","str","replace","extractVowels","IsValideCFForFullName","cf","name","surname","substring","toUpperCase","ComputeSurnameCode","codNome","charAt","ComputeNameCode","uppercase","event","currentTarget","trim","isCodiceFiscaleProvvisorio","sum_odds","sum_evens","sum","i","Number","n","nStringata","checkValidCodiceFiscaleOrPartitaIVA","this","test","path","createError","piva","s","charCodeAt","pivaChecksum","CodiceFiscale","check","checkValidCodiceFiscale","defasultErrorMessage","fullNameMismatchErrorMessage","parent","nomeLavoratore","cognomeLavoratore","MyCommunicationsScreen","yup","schema","shape","strict","items","total","communicationsData","setCommunicationsData","formData","setFormData","isSubmitted","setIsSubmitted","noItemsFound","setNoItemsFound","getCommunications","page","callApiGetCommunications","fiscalNumber","PageSize","setCurrentPage","currentTableData","validationSchema","onSubmit","values","actions","setSubmitting","initialValues","handleSubmit","handleChange","handleBlur","touched","errors","isValid","Form","noValidate","Group","controlId","Label","Control","placeholder","maxLength","minLength","onChange","e","onBlur","isInvalid","Feedback","Alert","el","faqsFeatureEnabled","FAQS_FEATURE_ENABLED","manualFeatureEnabled","MANUAL_FEATURE_ENABLED","contactsFeatureEnabled","CONTACTS_FEATURE_ENABLED","linkNav","linkEsterno","isProtected","nomePagina","screen","isActive","Navbar","Brand","Nav","toString","fill","to","LoginSPIDButton","sizeButton","spidRequestIdUrl","SPID_REQUEST_ID_URL","spidRequestBaseUrl","SPID_REQUEST_BASE_URL","providerItem","pId","pUrl","pText","pSvg","pPng","pAlt","Id","Url","Text","Svg","Png","Alt","providersList","onerror","sort","random","x","class","LoginCIEButton","cieRequestIdUrl","CIE_REQUEST_ID_URL","UserLogged","showOverlay","setShowOverlay","loggingout","logout","OverlayTrigger","trigger","placement","overlay","Popover","style","fontSize","margin","location","useLocation","show","setShow","toggleShow","cieFeatureEnabled","CIE_FEATURE_ENABLED","expand","Toggle","label","styles","noActive","pathname","Offcanvas","autoFocus","offcanvas","onHide","closeButton","closeVariant","logoCOCanvas","Fragment","paddingBottom","CieErrorScreen","useParams","NotFoundScreen","GDPRPage","setAcceptGDPR","StatusRequestPage","idNewComunication","isRunning","setIsRunning","communication","setCommunication","trySetError","errorIs","errorText","callback","delay","savedCallback","useRef","current","setInterval","clearInterval","useInterval","fnGetCommunication","console","Heading","ScrollToTop","smooth","scrollTo","documentElement","scrollTop","FFormScreen","codiceFiscaleDatoreDiLavoro","required","denominazioneDatoreDiLavoro","dataInizioRapportoDiLavoro","motivoUrgenza","soggettoCheEffettuaLaComunicazione","codiceFiscaleDelSoggettoCheEffettuaLaComunicazione","when","val","otherwise","emailDelSoggettoCheEffettuaLaComunicazione","dataIdTestFormControl","setDataIdTestFormControl","showConfirmFormPreview","setShowConfirmFormPreview","title","screenConfirmFormStatus","setScreenConfirmFormStatus","acceptGDPR","loadingDatore","setLoadingDatore","loadingLavoratore","setLoadingLavoratore","denominazioneAzienda","setDenominazioneAzienda","denominazioneLavoratoreCognome","setDenominazioneLavoratoreCognome","denominazioneLavoratoreNome","setDenominazioneLavoratoreNome","fnSearchForDenominazioneAzienda","getDenominazioneAzienda","codice","denominazioneCO","fnSearchForDenominazioneLavoratore","getDenominazioneLavoratore","co","functionApiCreateNewComunication","isDraft","tipoDelegato","emailDelegato","currentUser","emailCurrentUser","dataInizioRapporto","send","callApiCreateNewComunication","communicationSubjects","setCommunicationSubjects","isSubjectLoaded","setIsSubjectLoaded","getCommunicationSubjects","handleModify","testataForm","titolettoForm","labelForm","readOnly","Tooltip","searchDenominazioneDatoreDiLavoro","searchDenominazioneLavoratore","Select","buttonSubmitForm","padding","Loader","FormScreen","fallback","DetailScreen","comunicationData","setComunicationData","coapData","setCoapData","getCommunicationCoap","callApiGetComunicationCoapById","Object","keys","tipoDelegatoEsteso","cfDelegato","tipoComunicazioneEstesa","CommunicationsScreen","coap","callApiGetAllCommunications","LandingPageScreen","cieError","setCieError","LegalAndPrivacyScreen","i18nKey","components","App","RequireAuth","state","RequireAdminAuth","cookieConsentRef","ref","buttonId","buttonWrapperClasses","buttonClasses","buttonText","backgroundColor","enableDeclineButton","onDecline","accept","declineButtonId","declineButtonClasses","declineButtonText","flipButtons","textAlign","color","cursor","icon","faTimesCircle","element","exact","WrappedApp","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","i18n","use","Backend","LanguageDetector","initReactI18next","init","fallbackLng","debug","interpolation","escapeValue","react","transSupportBasicHtmlNodes","transKeepBasicHtmlNodesFor","ReactDOM","render","StrictMode","getElementById"],"mappings":"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","file":"static/js/main.166a8c77.chunk.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"testataForm\":\"DetailScreen_testataForm__9Kr8q\",\"titolettoForm\":\"DetailScreen_titolettoForm__3LpCF\",\"labelForm\":\"DetailScreen_labelForm__607Z7\",\"labelFacoltativoForm\":\"DetailScreen_labelFacoltativoForm__2RgIT\",\"buttonSubmitForm\":\"DetailScreen_buttonSubmitForm__8qzhv\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"testataForm\":\"FormScreen_testataForm__2aK4y\",\"titolettoForm\":\"FormScreen_titolettoForm__3Dmni\",\"labelForm\":\"FormScreen_labelForm__2CRJX\",\"buttonSubmitForm\":\"FormScreen_buttonSubmitForm__2-4Cs\"};","import { Col, Container, Row, Image } from \"react-bootstrap\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nfunction Header() {\r\n const { t } = useTranslation();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \"Logo\r\n \r\n \r\n \r\n
Ministero del Lavoro e delle Politiche Sociali
\r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default Header;\r\n","import { Col, Container, Row, Button } from \"react-bootstrap\";\r\nimport { useNavigate } from \"react-router-dom\";\r\nimport { useTranslation, Trans } from \"react-i18next\";\r\n\r\nfunction HomeScreen() {\r\n const { t } = useTranslation();\r\n const navigate = useNavigate();\r\n\r\n return (\r\n \r\n \r\n \r\n
\r\n navigate(\"/new\")}\r\n >\r\n {t(\"homeScreen.sendNewCommunication\")}\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {t(\"homeScreen.text\")}\r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nexport default HomeScreen;\r\n","import React, {useContext, useState} from 'react';\r\n\r\nconst AppContext = React.createContext();\r\n\r\nconst AppProvider = ({children}) => {\r\n\r\n const [loading, setLoading] = useState({\r\n is: false,\r\n text: \"\"\r\n });\r\n const [error, setError] = useState({\r\n is: false,\r\n status: null,\r\n text: \"\"\r\n });\r\n const clearError = () => {\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\"\r\n });\r\n }\r\n\r\n const [message, setMessage] = useState({\r\n is: false,\r\n type: \"\",\r\n text: \"\"\r\n });\r\n\r\n const [showAuthExpired, setShowAuthExpired] = useState(false);\r\n\r\n const clearMessage = () => {\r\n setTimeout(() => {\r\n setMessage(\"\")\r\n }, 10000);\r\n }\r\n\r\n // Converte la data della measure nel formato italiano\r\n const convertDate = (dateToConvert) => {\r\n let originFormatDate = new Date(dateToConvert);\r\n let dd = String(originFormatDate.getDate()).padStart(2, '0');\r\n let mm = String(originFormatDate.getMonth() + 1).padStart(2, '0'); //January is 0!\r\n let yyyy = originFormatDate.getFullYear();\r\n \r\n return dd + \"/\" + mm + \"/\" + yyyy;\r\n } \r\n\r\n // Converte la data della measure nel formato italiano\r\n const convertTime = (dateToConvert) => {\r\n let originFormatDate = new Date(dateToConvert);\r\n let hh = String(originFormatDate.getHours());\r\n let mm = String(originFormatDate.getMinutes()).padStart(2, '0');\r\n \r\n return hh + \":\" + mm;\r\n } \r\n\r\n const [dettaglioSelezionato, setDettaglioSelezionato] = useState([]);\r\n\r\n return (\r\n \r\n {children}\r\n \r\n )\r\n}\r\n\r\nconst useGlobalContext = () => {\r\n return useContext(AppContext);\r\n}\r\n\r\nexport {AppProvider, useGlobalContext};","import axios from \"axios\";\r\n\r\nexport async function callApiGetCommunications(\r\n email, \r\n codiceFiscaleDatore,\r\n codiceFiscaleLavoratore, \r\n fromDate, \r\n toDate,\r\n pageSize,\r\n offset) {\r\n var dataInizio;\r\n var dataFine;\r\n const urlCallBase = process.env.NODE_ENV === 'production' ? window.env.API_URL : process.env.REACT_APP_API_URL;\r\n let urlCall = urlCallBase + \"/communications\";\r\n\r\n // PageSize + Offset\r\n urlCall += urlCall.includes(\"?\") ? \"&pageSize=\" + pageSize + \"&offset=\" + offset : \"?pageSize=\" + pageSize + \"&offset=\" + offset;\r\n\r\n if (codiceFiscaleDatore!==\"\") {\r\n if(urlCall.includes(\"?\")) {\r\n urlCall = urlCall + \"&codiceFiscaleDatore=\" + codiceFiscaleDatore;\r\n } else {\r\n urlCall = urlCall + \"?codiceFiscaleDatore=\" + codiceFiscaleDatore;\r\n }\r\n }\r\n\r\n if (codiceFiscaleLavoratore!==\"\") {\r\n if(urlCall.includes(\"?\")) {\r\n urlCall = urlCall + \"&codiceFiscaleLavoratore=\" + codiceFiscaleLavoratore;\r\n } else {\r\n urlCall = urlCall + \"?codiceFiscaleLavoratore=\" + codiceFiscaleLavoratore;\r\n }\r\n }\r\n\r\n\r\n if (fromDate!==\"\") {\r\n let date = new Date(fromDate);\r\n var dd = String(date.getDate()).padStart(2, '0');\r\n var mm = String(date.getMonth() + 1).padStart(2, '0'); //January is 0!\r\n var yyyy = date.getFullYear();\r\n\r\n dataInizio = yyyy + \"-\" + mm + \"-\" + dd;\r\n\r\n if(urlCall.includes(\"?\")) {\r\n urlCall = urlCall + \"&startDate=\" + dataInizio;\r\n } else {\r\n urlCall = urlCall + \"?startDate=\" + dataInizio;\r\n }\r\n }\r\n\r\n if (toDate!==\"\") {\r\n let date = new Date(toDate);\r\n let dd = String(date.getDate()).padStart(2, '0');\r\n let mm = String(date.getMonth() + 1).padStart(2, '0'); //January is 0!\r\n let yyyy = date.getFullYear();\r\n\r\n dataFine = yyyy + \"-\" + mm + \"-\" + dd;\r\n\r\n if(urlCall.includes(\"?\")) {\r\n urlCall = urlCall + \"&endDate=\" + dataFine;\r\n } else {\r\n urlCall = urlCall + \"?endDate=\" + dataFine;\r\n }\r\n }\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: urlCall,\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error;\r\n });\r\n}\r\n\r\nexport async function callApiGetAllCommunications(\r\n codiceFiscaleDatore,\r\n codiceFiscaleLavoratore,\r\n fromDate, \r\n toDate,\r\n coapStatus,\r\n pageSize,\r\n offset) {\r\n var dataInizio;\r\n var dataFine;\r\n const urlCallBase = process.env.NODE_ENV === \"production\" ? window.env.API_URL : process.env.REACT_APP_API_URL;\r\n var urlCall = urlCallBase + \"/administration\";\r\n\r\n // PageSize + Offset\r\n urlCall += urlCall.includes(\"?\") ? \"&pageSize=\" + pageSize + \"&offset=\" + offset : \"?pageSize=\" + pageSize + \"&offset=\" + offset;\r\n\r\n if (codiceFiscaleDatore!==\"\") {\r\n if(urlCall.includes(\"?\")) {\r\n urlCall = urlCall + \"&codiceFiscaleDatore=\" + codiceFiscaleDatore;\r\n } else {\r\n urlCall = urlCall + \"?codiceFiscaleDatore=\" + codiceFiscaleDatore;\r\n }\r\n }\r\n\r\n if (codiceFiscaleLavoratore!==\"\") {\r\n if(urlCall.includes(\"?\")) {\r\n urlCall = urlCall + \"&codiceFiscaleLavoratore=\" + codiceFiscaleLavoratore;\r\n } else {\r\n urlCall = urlCall + \"?codiceFiscaleLavoratore=\" + codiceFiscaleLavoratore;\r\n }\r\n }\r\n\r\n if (fromDate!==\"\") {\r\n let date = new Date(fromDate);\r\n var dd = String(date.getDate()).padStart(2, '0');\r\n var mm = String(date.getMonth() + 1).padStart(2, '0'); //January is 0!\r\n var yyyy = date.getFullYear();\r\n\r\n dataInizio = yyyy + \"-\" + mm + \"-\" + dd;\r\n\r\n if(urlCall.includes(\"?\")) {\r\n urlCall = urlCall + \"&startDate=\" + dataInizio;\r\n } else {\r\n urlCall = urlCall + \"?startDate=\" + dataInizio;\r\n }\r\n }\r\n\r\n if (toDate!==\"\") {\r\n let date = new Date(toDate);\r\n let dd = String(date.getDate()).padStart(2, '0');\r\n let mm = String(date.getMonth() + 1).padStart(2, '0'); //January is 0!\r\n let yyyy = date.getFullYear();\r\n\r\n dataFine = yyyy + \"-\" + mm + \"-\" + dd;\r\n\r\n if(urlCall.includes(\"?\")) {\r\n urlCall = urlCall + \"&endDate=\" + dataFine;\r\n } else {\r\n urlCall = urlCall + \"?endDate=\" + dataFine;\r\n }\r\n }\r\n\r\n if(coapStatus!==\"\"){\r\n if(urlCall.includes(\"?\")) {\r\n urlCall = urlCall + \"&coapStatus=\" + coapStatus;\r\n } else {\r\n urlCall = urlCall + \"?coapStatus=\" + coapStatus;\r\n }\r\n }\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: urlCall,\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error;\r\n });\r\n}\r\n\r\nexport async function me() {\r\n const urlBase = process.env.NODE_ENV === \"production\" ? window.env.SPID_API_URL : process.env.REACT_APP_SPID_API_URL;\r\n var url = urlBase + \"/me\";\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: url,\r\n withCredentials: true, \r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error.response;\r\n });\r\n}\r\n\r\nexport async function isAdmin() {\r\n const urlBase = process.env.NODE_ENV === \"production\" ? window.env.SPID_API_URL : process.env.REACT_APP_SPID_API_URL;\r\n var url = urlBase + \"/role\";\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: url,\r\n withCredentials: true, \r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error;\r\n });\r\n}\r\n\r\nexport async function logout() {\r\n const urlBase = process.env.NODE_ENV === \"production\" ? window.env.SPID_API_URL : process.env.REACT_APP_SPID_API_URL;\r\n var url = urlBase + \"/logout\";\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: url,\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error.response;\r\n });\r\n}\r\n\r\nexport async function cieSso() {\r\n \r\n const url = process.env.NODE_ENV === 'production' ? window.env.CIE_REQUEST_ID_URL : process.env.REACT_APP_CIE_REQUEST_ID_URL;\r\n\r\n return axios({\r\n method: \"get\",\r\n url: url,\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error.response;\r\n });\r\n}\r\n\r\nexport async function resendHD(id) {\r\n const urlBase = process.env.NODE_ENV === \"production\" ? window.env.API_URL : process.env.REACT_APP_API_URL;\r\n var url = urlBase + \"/administration/\" + id + \"/resend\";\r\n\r\n return await axios({\r\n method: \"post\",\r\n url: url,\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error.response;\r\n });\r\n}\r\n\r\nexport async function getCommunicationSubjects() {\r\n const urlCallBase = process.env.NODE_ENV === \"production\" ? window.env.API_URL : process.env.REACT_APP_API_URL;\r\n var urlCall = urlCallBase + \"/subjects\";\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: urlCall,\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error;\r\n });\r\n}\r\n\r\nexport async function getDenominazioneAzienda(codiceFiscalePartitaIva) {\r\n const urlCallBase = process.env.NODE_ENV === \"production\" ? window.env.API_REGISTRY_URL : process.env.REACT_APP_API_REGISTRY_URL;\r\n var urlCall = urlCallBase + \"/denominazioneAzienda?code=\" + codiceFiscalePartitaIva;\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: urlCall,\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error.response;\r\n });\r\n}\r\n\r\nexport async function getDenominazioneLavoratore(codiceFiscale) {\r\n const urlCallBase = process.env.NODE_ENV === \"production\" ? window.env.API_REGISTRY_URL : process.env.REACT_APP_API_REGISTRY_URL;\r\n var urlCall = urlCallBase + \"/denominazioneLavoratore?code=\" + codiceFiscale;\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: urlCall,\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error.response;\r\n });\r\n}\r\n\r\nexport async function callApiGetComunicationById(id) {\r\n const urlCallBase = process.env.NODE_ENV === \"production\" ? window.env.API_URL : process.env.REACT_APP_API_URL;\r\n var urlCall = urlCallBase + \"/communications/\" + id;\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: urlCall,\r\n withCredentials: true\r\n })\r\n .then(response => {\r\n return response;\r\n });\r\n}\r\n\r\nexport async function callApiGetComunicationCoapById(id) {\r\n const urlCallBase = process.env.NODE_ENV === \"production\" ? window.env.API_URL : process.env.REACT_APP_API_URL;\r\n var urlCall = urlCallBase + \"/communications/\" + id + \"/coap\";\r\n\r\n return await axios({\r\n method: \"get\",\r\n url: urlCall,\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n });\r\n}\r\n\r\nexport async function callApiCreateNewComunication(jsonData) {\r\n const urlCallBase = process.env.NODE_ENV === \"production\" ? window.env.API_URL : process.env.REACT_APP_API_URL;\r\n var urlCall = urlCallBase + \"/communications\";\r\n\r\n return await axios({\r\n method: \"post\",\r\n url: urlCall,\r\n data: jsonData,\r\n headers: { \r\n \"Content-Type\": \"application/json\",\r\n \"Access-Control-Allow-Origin\": \"*\"\r\n },\r\n mode: \"no-cors\",\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error;\r\n });\r\n}\r\n\r\nexport async function callApiGetGeneratePDF(id) {\r\n \r\n const urlBase = process.env.NODE_ENV === \"production\" ? window.env.API_URL : process.env.REACT_APP_API_URL;\r\n const url = urlBase + \"/communications/\" + id + \"/pdf\";\r\n \r\n return await axios({\r\n method: \"get\",\r\n url: url,\r\n responseType: 'arraybuffer',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n 'Accept': 'application/pdf'\r\n },\r\n withCredentials: true,\r\n })\r\n .then(response => {\r\n return response;\r\n })\r\n .catch(error => {\r\n return error.response;\r\n });\r\n}\r\n","import { Card, Col, Row, Button, ButtonGroup } from \"react-bootstrap\";\r\nimport { useNavigate } from \"react-router-dom\";\r\nimport { useGlobalContext } from \"../../../../context\";\r\nimport { callApiGetGeneratePDF, resendHD } from \"../../../common/callApi\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useEffect, useState } from 'react';\r\n\r\nfunction CardCommunication({ dataComunication, isHelpdesk = false }) {\r\n const navigate = useNavigate();\r\n const { t } = useTranslation();\r\n const [resend, setResend] = useState(false);\r\n\r\n const {\r\n loading,\r\n setLoading,\r\n setError,\r\n convertDate,\r\n convertTime,\r\n setDettaglioSelezionato,\r\n } = useGlobalContext();\r\n\r\n const clickVisualizzaDettaglio = () => {\r\n setDettaglioSelezionato(dataComunication);\r\n navigate(\"/mycommunications/\" + dataComunication.correlationId);\r\n };\r\n\r\n const clickDownloadPDF = () => {\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: true,\r\n text: t(\"myCommunicationScreen.downloadingPdf\"),\r\n });\r\n setTimeout(() => {\r\n callApiGetGeneratePDF(dataComunication.correlationId).then((response) => {\r\n if (response === undefined) {\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t(\"errorDownloadingPdf\"),\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n } else if (response.status === 200) {\r\n const url = window.URL.createObjectURL(new Blob([response.data]));\r\n const link = document.createElement(\"a\");\r\n link.href = url;\r\n link.setAttribute(\r\n \"download\",\r\n \"Ricevuta - \"\r\n .concat(dataComunication.codiceComunicazione)\r\n .concat(\".pdf\")\r\n ); //or any other extension\r\n document.body.appendChild(link);\r\n link.click();\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n } else {\r\n setError({\r\n is: true,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n }\r\n });\r\n }, 1000);\r\n };\r\n\r\n const fnResendHD = (id) => {\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: true,\r\n text: t(\"myCommunicationScreen.resend\"),\r\n });\r\n setTimeout(() => {\r\n resendHD(id).then((response) => {\r\n if (response === undefined) {\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t(\"myCommunicationScreen.resendError\"),\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n } else if (response.status === 200) {\r\n // resend ok\r\n setResend(false);\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n } else {\r\n setError({\r\n is: true,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n }\r\n });\r\n }, 1000);\r\n };\r\n\r\n useEffect(() => {\r\n setResend(false);\r\n if(dataComunication.coapStatus?.esito === 'NA'){\r\n setResend(true);\r\n }\r\n }, [dataComunication]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {t('communication.dateSent')}{\" \"}\r\n {convertDate(dataComunication.dataInvio)}{\" \"}\r\n <>{convertTime(dataComunication.dataInvio)}\r\n \r\n \r\n \r\n \r\n \r\n {t('communication.company.label')}\r\n
\r\n {t('communication.company.fiscalCode')}: {dataComunication.datoreLavoro.cfDatoreLavoro}\r\n
\r\n {t('communication.company.company')}: {dataComunication.datoreLavoro.denominazione}\r\n \r\n \r\n {t('communication.employee.label')}\r\n
\r\n {t('communication.employee.fiscalCode')}: {dataComunication.lavoratore.cfLavoratore}\r\n
\r\n {t('communication.employee.name')}: {dataComunication.lavoratore.nome} {dataComunication.lavoratore.cognome}\r\n \r\n
\r\n { isHelpdesk ?\r\n \r\n \r\n {t('communication.coap.label')}\r\n
\r\n {t('communication.coap.esito')}{t(dataComunication.coapStatus?.esito)}\r\n \r\n { resend === true ?\r\n \r\n {t('communication.coap.label')}\r\n
\r\n \r\n fnResendHD(dataComunication.correlationId)}\r\n disabled={loading.is}\r\n >\r\n {t(\"myCommunicationScreen.resend\")}\r\n \r\n \r\n : \r\n \r\n {t('communication.coap.label')}\r\n
\r\n {t(\"myCommunicationScreen.resendOK\")}\r\n \r\n }\r\n
\r\n : \"\"\r\n }\r\n
\r\n \r\n \r\n \r\n \r\n clickVisualizzaDettaglio()}\r\n disabled={loading.is}\r\n >\r\n {t(\"myCommunicationScreen.showDetails\")}\r\n \r\n clickDownloadPDF()}\r\n disabled={loading.is}\r\n >\r\n {\" \"}\r\n {t(\"downloadPdf\")}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n\r\nexport default CardCommunication;\r\n","import {Spinner} from \"react-bootstrap\";\r\n\r\nfunction Loading({size=\"\"}) {\r\n\r\n return (\r\n \r\n );\r\n }\r\n \r\n export default Loading;\r\n ","import {me, isAdmin} from './components/common/callApi';\r\nimport {useEffect, useState, createContext, useContext} from 'react';\r\n\r\nconst authContext = createContext({});\r\n\r\nfunction useAuth() {\r\n const [authenticated, setAuthenticated] = useState(false);\r\n const [admin, setAdmin] = useState(false);\r\n const [user, setUser] = useState(() => \r\n window.localStorage.getItem('user') || null\r\n );\r\n const signout = () => {\r\n setUser(null);\r\n setAuthenticated(false);\r\n }\r\n\r\n useEffect(()=> {\r\n me()\r\n .then((res) => {\r\n if(res){\r\n if(res.data){\r\n setUser(res.data);\r\n window.localStorage.setItem('user', res.data);\r\n setAuthenticated(true);\r\n } else {\r\n setUser(null);\r\n window.localStorage.removeItem('user');\r\n setAuthenticated(false);\r\n }\r\n }\r\n });\r\n }, []);\r\n\r\n useEffect(()=> {\r\n isAdmin()\r\n .then((res) => {\r\n if(res.data){\r\n if(res.data.isAdmin){\r\n setAdmin(true);\r\n } else {\r\n setAdmin(false);\r\n }\r\n }\r\n });\r\n }, [authenticated]);\r\n\r\n return {\r\n authenticated,\r\n admin,\r\n user,\r\n signout\r\n };\r\n}\r\n\r\nexport function AuthProvider({ children }) {\r\n const auth = useAuth();\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nexport const AuthConsumer = () => {\r\n return useContext(authContext);\r\n}","import { useMemo } from 'react';\r\n\r\nexport const DOTS = '...';\r\n\r\nconst range = (start, end) => {\r\n let length = end - start + 1;\r\n return Array.from({ length }, (_, idx) => idx + start);\r\n};\r\n\r\nexport const usePagination = ({\r\n totalCount = 0,\r\n pageSize,\r\n siblingCount = 1,\r\n currentPage\r\n }) => {\r\n const paginationRange = useMemo(() => {\r\n const totalPageCount = Math.ceil(totalCount / pageSize);\r\n \r\n // Pages count is determined as siblingCount + firstPage + lastPage + currentPage + 2*DOTS\r\n const totalPageNumbers = siblingCount + 5;\r\n \r\n /*\r\n Case 1:\r\n If the number of pages is less than the page numbers we want to show in our\r\n paginationComponent, we return the range [1..totalPageCount]\r\n */\r\n if (totalPageNumbers >= totalPageCount) {\r\n return range(1, totalPageCount);\r\n }\r\n \r\n /*\r\n Calculate left and right sibling index and make sure they are within range 1 and totalPageCount\r\n */\r\n const leftSiblingIndex = Math.max(currentPage - siblingCount, 1);\r\n const rightSiblingIndex = Math.min(\r\n currentPage + siblingCount,\r\n totalPageCount\r\n );\r\n \r\n /*\r\n We do not show dots just when there is just one page number to be inserted between the extremes of sibling and the page limits i.e 1 and totalPageCount. Hence we are using leftSiblingIndex > 2 and rightSiblingIndex < totalPageCount - 2\r\n */\r\n const shouldShowLeftDots = leftSiblingIndex > 2;\r\n const shouldShowRightDots = rightSiblingIndex < totalPageCount - 2;\r\n \r\n const firstPageIndex = 1;\r\n const lastPageIndex = totalPageCount;\r\n \r\n /*\r\n Case 2: No left dots to show, but rights dots to be shown\r\n */\r\n if (!shouldShowLeftDots && shouldShowRightDots) {\r\n let leftItemCount = 3 + 2 * siblingCount;\r\n let leftRange = range(1, leftItemCount);\r\n \r\n return [...leftRange, DOTS, totalPageCount];\r\n }\r\n \r\n /*\r\n Case 3: No right dots to show, but left dots to be shown\r\n */\r\n if (shouldShowLeftDots && !shouldShowRightDots) {\r\n \r\n let rightItemCount = 3 + 2 * siblingCount;\r\n let rightRange = range(\r\n totalPageCount - rightItemCount + 1,\r\n totalPageCount\r\n );\r\n return [firstPageIndex, DOTS, ...rightRange];\r\n }\r\n \r\n /*\r\n Case 4: Both left and right dots to be shown\r\n */\r\n if (shouldShowLeftDots && shouldShowRightDots) {\r\n let middleRange = range(leftSiblingIndex, rightSiblingIndex);\r\n return [firstPageIndex, DOTS, ...middleRange, DOTS, lastPageIndex];\r\n }\r\n }, [totalCount, pageSize, siblingCount, currentPage]);\r\n \r\n return paginationRange;\r\n };","import { usePagination, DOTS } from '../../../hooks/usePagination';\r\nimport { Pagination } from 'react-bootstrap';\r\nimport { BrowserView } from \"react-device-detect\";\r\n\r\nconst CustomPagination = props => {\r\n const {\r\n onPageChange,\r\n totalCount = 0,\r\n siblingCount = 1,\r\n currentPage,\r\n pageSize,\r\n } = props;\r\n\r\n const paginationRange = usePagination({\r\n currentPage,\r\n totalCount,\r\n siblingCount,\r\n pageSize\r\n });\r\n\r\n if (currentPage === 0 || paginationRange.length < 2) {\r\n return null;\r\n }\r\n\r\n const onNext = () => {\r\n onPageChange(currentPage + 1);\r\n };\r\n\r\n const onPrevious = () => {\r\n onPageChange(currentPage - 1);\r\n };\r\n\r\n let lastPage = paginationRange[paginationRange.length - 1];\r\n return (\r\n \r\n \r\n \r\n onPageChange(1)} />\r\n \r\n onPrevious()} />\r\n {\r\n paginationRange.map(pageNumber => {\r\n if(pageNumber === DOTS) {\r\n return \r\n }\r\n\r\n return (\r\n onPageChange(pageNumber)}>\r\n {pageNumber}\r\n \r\n )\r\n })\r\n }\r\n \r\n onNext()} />\r\n \r\n onPageChange(lastPage)} />\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default CustomPagination;","import CodiceFiscale from \"codice-fiscale-js\";\r\n\r\nfunction extractConsonants(str) {\r\n return str.replace(/[^BCDFGHJKLMNPQRSTVWXYZ]/gi, '')\r\n}\r\n\r\nfunction extractVowels (str) {\r\n return str.replace(/[^AEIOU]/gi, '')\r\n}\r\n\r\nfunction ComputeSurnameCode(surname) {\r\n return `${extractConsonants(surname)}${extractVowels(surname)}XXX`.substring(0, 3).toUpperCase()\r\n}\r\n\r\nfunction ComputeNameCode(name){\r\n let codNome = extractConsonants(name)\r\n if (codNome.length >= 4) {\r\n codNome = codNome.charAt(0) + codNome.charAt(2) + codNome.charAt(3)\r\n } \r\n else {\r\n codNome += `${extractVowels(name)}XXX`\r\n codNome = codNome.substring(0, 3)\r\n }\r\n\r\n return codNome.toUpperCase()\r\n}\r\n\r\nfunction IsValideCFForFullName(cf, name, surname) {\r\n return `${cf.substring(0, 6).toUpperCase()}` == `${ComputeSurnameCode(surname) + ComputeNameCode(name)}`;\r\n}\r\n\r\nexport function uppercase(event) {\r\n if (typeof event.currentTarget.value !== \"string\") return event;\r\n\r\n event.currentTarget.value = event.currentTarget.value.toUpperCase();\r\n return event;\r\n }\r\n\r\nexport function trim(event) {\r\n if (typeof event.currentTarget.value !== \"string\") return event;\r\n\r\n event.currentTarget.value = event.currentTarget.value.replace(/\\s+/g, \"\");\r\n return event;\r\n }\r\n\r\nexport function pivaChecksum(piva){\r\n var s = 0;\r\n\t\tfor(var i = 0; i < 11; i++ ){\r\n\t\t\tvar n = piva.charCodeAt(i) - \"0\".charCodeAt(0);\r\n\t\t\tif( (i & 1) === 1 ){\r\n\t\t\t\tn *= 2;\r\n\t\t\t\tif( n > 9 )\r\n\t\t\t\t\tn -= 9;\r\n\t\t\t}\r\n\t\t\ts += n;\r\n\t\t}\r\n\r\n\t\treturn (s % 10 === 0);\r\n }\r\n\r\n /*\r\n * Il carattere numerico di controllo viene determinato nel modo seguente:\r\n * si sommano i valori di ciascuna delle cinque cifre di ordine dispari,partendo da sinistra;\r\n * si raddoppia ogni cifra di ordine pari e, se il risultato è un numero di due cifre, esso si riduce ad una sola sommando la cifra relativa alle decine e quella relativa alle unità; si sommano quindi tutti i precedenti risultati;\r\n * si determina il totale delle due somme di cui sopra;\r\n * si sottrae da dieci la cifra relativa alle unità del precedente totale. Il carattere di controllo è la cifra relativa alle unità del risultato.\r\n */\r\nexport function isCodiceFiscaleProvvisorio(cf){\r\n \r\n var sum_odds = 0;\r\n var sum_evens = 0;\r\n var sum = 0;\r\n\t\tfor(var i = 0; i < 10; i++ ){\r\n if(i % 2 === 0){\r\n sum_evens += Number(cf.charAt(i));\r\n } else {\r\n const n = Number(cf.charAt(i)) * 2;\r\n var nStringata = n + \"\";\r\n sum_odds += nStringata.length === 2 ? Number(nStringata.charAt(0)) + Number(nStringata.charAt(1)) : n;\r\n }\r\n\t\t}\r\n\r\n sum = sum_odds + sum_evens;\r\n sum = sum + '';\r\n sum = 10 - Number(sum.charAt(1));\r\n sum += '';\r\n return Number(cf.charAt(10)) === Number(sum.charAt(sum.length - 1));\r\n }\r\n\r\nexport function checkValidCodiceFiscaleOrPartitaIVA(message) {\r\n return this.test(\"checkValidCodiceFiscale\", message, function (value) {\r\n const { path, createError } = this;\r\n\r\n if (value !== undefined) {\r\n if (value.length === 11 && Number(value)) {\r\n if(!pivaChecksum(value) && !isCodiceFiscaleProvvisorio(value)) { \r\n return createError({\r\n path,\r\n message: message,\r\n });\r\n }\r\n\r\n return true;\r\n } \r\n else if (!CodiceFiscale.check(value)) {\r\n return createError({\r\n path,\r\n message: message,\r\n });\r\n } \r\n else {\r\n return true;\r\n }\r\n } \r\n else {\r\n return true;\r\n }\r\n });\r\n }\r\n\r\nexport function checkValidCodiceFiscale(defasultErrorMessage, fullNameMismatchErrorMessage) {\r\n return this.test(\"checkValidCodiceFiscale\", defasultErrorMessage, function (value) {\r\n const { path, createError } = this; \r\n \r\n if (value !== undefined) {\r\n if(value.length === 11 && Number(value)){\r\n if(!isCodiceFiscaleProvvisorio(value)){\r\n return createError({\r\n path,\r\n message: defasultErrorMessage,\r\n });\r\n }\r\n \r\n return true;\r\n } \r\n else if(this.parent.nomeLavoratore \r\n && this.parent.nomeLavoratore.trim() != '' \r\n && this.parent.cognomeLavoratore\r\n && this.parent.cognomeLavoratore.trim() != '' \r\n && !IsValideCFForFullName(value, this.parent.nomeLavoratore , this.parent.cognomeLavoratore)) {\r\n return createError({\r\n path,\r\n message: fullNameMismatchErrorMessage,\r\n });\r\n }\r\n else if (!CodiceFiscale.check(value)) {\r\n return createError({\r\n path,\r\n message: defasultErrorMessage,\r\n });\r\n } \r\n else {\r\n return true;\r\n }\r\n } \r\n else {\r\n return true;\r\n }\r\n });\r\n }\r\n\r\n export function checkValidCodiceFiscaleSimple(message) {\r\n return this.test(\"checkValidCodiceFiscaleSimple\", message, function (value) {\r\n const { path, createError } = this;\r\n\r\n if (value !== undefined) {\r\n if (!CodiceFiscale.check(value)) {\r\n return createError({\r\n path,\r\n message: message,\r\n });\r\n } else {\r\n return true;\r\n }\r\n } else {\r\n return true;\r\n }\r\n });\r\n }\r\n","import { useState, useMemo, useEffect } from \"react\";\r\nimport { Col, Container, Row, Form, Button, Alert } from \"react-bootstrap\";\r\nimport CardCommunication from \"./CardCommunication/CardCommunication\";\r\nimport { Formik } from \"formik\";\r\nimport * as yup from \"yup\";\r\nimport { callApiGetCommunications } from \"../../common/callApi\";\r\nimport Loading from \"../../common/Loading/Loading\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AuthConsumer } from \"../../../AuthContext\";\r\nimport Pagination from \"../../common/Pagination/Pagination\";\r\nimport { checkValidCodiceFiscaleOrPartitaIVA, checkValidCodiceFiscale, uppercase, trim } from \"../../common/utils\";\r\n\r\nfunction MyCommunicationsScreen() {\r\n const { t } = useTranslation();\r\n const { user } = AuthConsumer();\r\n\r\n yup.addMethod(\r\n yup.string,\r\n \"checkValidCodiceFiscaleOrPartitaIVA\",\r\n checkValidCodiceFiscaleOrPartitaIVA\r\n );\r\n yup.addMethod(\r\n yup.string, \r\n \"checkValidCodiceFiscale\", \r\n checkValidCodiceFiscale\r\n );\r\n\r\n const schema = yup.object().shape({\r\n codiceFiscaleDatore: yup\r\n .string()\r\n .max(16, t('formScreen.validationMessages.codiceFiscalePartitaIvaMax'))\r\n .min(11, t('formScreen.validationMessages.codiceFiscalePartitaIvaMin'))\r\n .uppercase()\r\n .strict()\r\n .trim()\r\n .checkValidCodiceFiscaleOrPartitaIVA(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\")\r\n ),\r\n codiceFiscaleLavoratore: yup\r\n .string()\r\n .max(16, t('formScreen.validationMessages.codiceFiscalePartitaIvaMax'))\r\n .min(11, t('formScreen.validationMessages.codiceFiscalePartitaIvaMin'))\r\n .uppercase()\r\n .strict()\r\n .trim()\r\n .checkValidCodiceFiscale(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\")\r\n ),\r\n fromDate: yup\r\n .date()\r\n .min(new Date(1900, 1, 1), t(\"formScreen.validationMessages.startDateRequired\"))\r\n .max(new Date(2099, 12, 31), t(\"formScreen.validationMessages.startDateRequired\")),\r\n toDate: yup\r\n .date()\r\n .min(new Date(1900, 1, 1), t(\"formScreen.validationMessages.startDateRequired\"))\r\n .max(new Date(2099, 12, 31), t(\"formScreen.validationMessages.startDateRequired\")),\r\n });\r\n\r\n const [loading, setLoading] = useState({\r\n is: false,\r\n text: \"\"\r\n });\r\n const [error, setError] = useState({\r\n is: false,\r\n status: null,\r\n text: \"\"\r\n });\r\n const [communicationsData, setCommunicationsData] = useState({\r\n items: [],\r\n total: 0,\r\n });\r\n\r\n const [formData, setFormData] = useState({\r\n fromDate: \"\",\r\n toDate: \"\",\r\n codiceFiscaleDatore: \"\",\r\n codiceFiscaleLavoratore: \"\",\r\n });\r\n const [isSubmitted, setIsSubmitted] = useState(false);\r\n const [noItemsFound, setNoItemsFound] = useState(false);\r\n\r\n const getCommunications = (page) => {\r\n callApiGetCommunications(\r\n user?.fiscalNumber,\r\n formData.codiceFiscaleDatore,\r\n formData.codiceFiscaleLavoratore,\r\n formData.fromDate,\r\n formData.toDate,\r\n PageSize,\r\n page ? (page - 1) * PageSize : 0\r\n ).then((response) => {\r\n setIsSubmitted(false);\r\n setNoItemsFound(false);\r\n if (response === undefined) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t('myCommunicationScreen.loadingError'),\r\n });\r\n } else if (response.status === 200) {\r\n setCommunicationsData(response.data);\r\n if(response.data?.total === 0){\r\n setNoItemsFound(true);\r\n }\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n } else if (response.status === 404) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: response.status,\r\n text: t('myCommunicationScreen.noCommunicationFound'),\r\n });\r\n } else if (response.status === 401) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: response.status,\r\n text: t('api.unauthorized'),\r\n });\r\n } else {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: response.status,\r\n text: t('myCommunicationScreen.loadingError'),\r\n });\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if (isSubmitted) {\r\n getCommunications();\r\n }\r\n }, [formData, isSubmitted]);\r\n\r\n let PageSize = 10;\r\n const [currentPage, setCurrentPage] = useState(1);\r\n const currentTableData = useMemo(() => {\r\n return communicationsData.items;\r\n }, [communicationsData]);\r\n\r\n return (\r\n \r\n \r\n

\r\n {t('comu.com')}\r\n

\r\n
\r\n {\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: true,\r\n text: \"Caricamento comunicazioni in corso...\",\r\n });\r\n setTimeout(() => {\r\n actions.setSubmitting(false);\r\n setFormData({\r\n fromDate: values.fromDate,\r\n toDate: values.toDate,\r\n codiceFiscaleDatore: values.codiceFiscaleDatore,\r\n codiceFiscaleLavoratore: values.codiceFiscaleLavoratore,\r\n });\r\n setIsSubmitted(true);\r\n }, 1000);\r\n }}\r\n initialValues={{\r\n fromDate: \"\",\r\n toDate: \"\",\r\n codiceFiscaleDatore: \"\",\r\n codiceFiscaleLavoratore: \"\",\r\n }}\r\n >\r\n {({\r\n handleSubmit,\r\n handleChange,\r\n handleBlur,\r\n values,\r\n touched,\r\n isValid,\r\n errors,\r\n }) => (\r\n
\r\n \r\n \r\n Codice Fiscale Datore\r\n {\r\n uppercase(e);\r\n trim(e);\r\n handleChange(e);\r\n }}\r\n onBlur={handleBlur}\r\n isInvalid={errors.codiceFiscaleDatore && touched.codiceFiscaleDatore}\r\n />\r\n \r\n {errors.codiceFiscaleDatore}\r\n \r\n \r\n \r\n Codice Fiscale Lavoratore\r\n {\r\n uppercase(e);\r\n trim(e);\r\n handleChange(e);\r\n }}\r\n onBlur={handleBlur}\r\n isInvalid={errors.codiceFiscaleLavoratore && touched.codiceFiscaleLavoratore}\r\n />\r\n \r\n {errors.codiceFiscaleLavoratore}\r\n \r\n \r\n \r\n Da\r\n \r\n \r\n {errors.fromDate}\r\n \r\n \r\n \r\n A\r\n \r\n \r\n {errors.toDate}\r\n \r\n \r\n \r\n
\r\n \r\n {loading.is ? : \"\"}\r\n {loading.is ? \" \" + loading.text : \"Cerca\"}\r\n \r\n
\r\n
\r\n )}\r\n \r\n {error.is ? (\r\n error.status === 404 ? (\r\n {error.text}\r\n ) : (\r\n {error.text}\r\n )\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n \r\n {\r\n currentTableData?.length > 0\r\n ? currentTableData?.map((el) => (\r\n \r\n ))\r\n :\r\n noItemsFound ?\r\n \r\n
\r\n {t('myCommunicationScreen.noCommunicationFound')}\r\n
\r\n :\r\n \"\"\r\n }\r\n \r\n
\r\n \r\n \r\n \r\n {\r\n setCurrentPage(page);\r\n getCommunications(page);\r\n }}\r\n />\r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nexport default MyCommunicationsScreen;\r\n","import HomeScreen from \"../Body/HomeScreen/HomeScreen\";\r\nimport MyCommunicationsScreen from \"../Body/MyCommunicationsScreen/MyCommunicationsScreen\";\r\n\r\nconst faqsFeatureEnabled = process.env.NODE_ENV === 'production' ? window.env.FAQS_FEATURE_ENABLED : process.env.REACT_APP_FAQS_FEATURE_ENABLED;\r\nconst manualFeatureEnabled = process.env.NODE_ENV === 'production' ? window.env.MANUAL_FEATURE_ENABLED : process.env.REACT_APP_MANUAL_FEATURE_ENABLED;\r\nconst contactsFeatureEnabled = process.env.NODE_ENV === 'production' ? window.env.CONTACTS_FEATURE_ENABLED : process.env.REACT_APP_CONTACTS_FEATURE_ENABLED;\r\n\r\nexport const linkNav = [\r\n {\r\n id: 1,\r\n url: \"/home\",\r\n linkEsterno: false,\r\n isProtected: true,\r\n nomePagina: \"menu.home\",\r\n screen: HomeScreen,\r\n isActive: true\r\n },\r\n {\r\n id: 2,\r\n url: \"/mycommunications\",\r\n linkEsterno: false,\r\n isProtected: true,\r\n nomePagina: \"menu.mycommunications\",\r\n screen: MyCommunicationsScreen,\r\n isActive: true\r\n },\r\n {\r\n id: 3,\r\n url: \"menu.manualsUrl\",\r\n linkEsterno: true,\r\n isProtected: false,\r\n nomePagina: \"menu.manuals\",\r\n isActive: manualFeatureEnabled === 'true' ?? false\r\n },\r\n {\r\n id: 4,\r\n url: \"menu.faqsUrl\",\r\n linkEsterno: true,\r\n isProtected: false,\r\n nomePagina: \"menu.faqs\",\r\n isActive: faqsFeatureEnabled === 'true' ?? false\r\n },\r\n {\r\n id: 5,\r\n url: \"menu.contactsUrl\",\r\n linkEsterno: true,\r\n isProtected: false,\r\n nomePagina: \"menu.contacts\",\r\n isActive: contactsFeatureEnabled === 'true' ?? false\r\n },\r\n ];","import { Nav, Image, Navbar, Container } from \"react-bootstrap\";\r\nimport { linkNav } from \"../common/data\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { Link } from \"react-router-dom\";\r\nimport \"./Footer.css\";\r\nimport { AuthConsumer } from \"../../AuthContext\";\r\n\r\nfunction Footer() {\r\n const { t } = useTranslation();\r\n const { authenticated } = AuthConsumer();\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \"Logo\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nexport default Footer;\r\n","import \"./LoginSPIDButton.css\";\r\n\r\nfunction LoginSPIDButton({sizeButton= \"small\"}) {\r\n const spidRequestIdUrl = process.env.NODE_ENV === 'production' ? window.env.SPID_REQUEST_ID_URL : process.env.REACT_APP_SPID_REQUEST_ID_URL;\r\n const spidRequestBaseUrl = process.env.NODE_ENV === 'production' ? window.env.SPID_REQUEST_BASE_URL : process.env.REACT_APP_SPID_REQUEST_BASE_URL;\r\n\r\n class providerItem {\r\n constructor(pId, pUrl, pText, pSvg, pPng, pAlt) {\r\n this.Id = pId;\r\n this.Url = pUrl;\r\n this.Text = pText;\r\n this.Svg = pSvg;\r\n this.Png = pPng;\r\n this.Alt = pAlt;\r\n }\r\n }\r\n\r\n const providersList = new Array(\r\n new providerItem(\"arubaid\", spidRequestBaseUrl + \"aruba\" + spidRequestIdUrl, \"Aruba ID\", \"/img/spid-idp-arubaid.svg\", 'img/spid-idp-arubaid.png', \"Aruba ID\"),\r\n new providerItem(\"infocertid\", spidRequestBaseUrl + \"infocert\" + spidRequestIdUrl, \"Infocert ID\", \"/img/spid-idp-infocertid.svg\", 'img/spid-idp-infocertid.png', \"Infocert ID\"),\r\n new providerItem(\"intesaid\", spidRequestBaseUrl + \"intesa\" + spidRequestIdUrl, \"Intesa ID\", \"/img/spid-idp-intesaid.svg\", 'img/spid-idp-intesaid.png', \"Intesa ID\"),\r\n new providerItem(\"lepidaid\", spidRequestBaseUrl + \"lepida\" + spidRequestIdUrl, \"Lepida ID\", \"/img/spid-idp-lepidaid.svg\", 'img/spid-idp-lepidaid.png', \"Lepida ID\"),\r\n new providerItem(\"namirialid\", spidRequestBaseUrl + \"namirial\" + spidRequestIdUrl, \"Namirial ID\", \"/img/spid-idp-namirialid.svg\", 'img/spid-idp-namirialid.png', \"Namirial ID\"),\r\n new providerItem(\"posteid\", spidRequestBaseUrl + \"poste\" + spidRequestIdUrl, \"Poste ID\", \"/img/spid-idp-posteid.svg\", 'img/spid-idp-posteid.png', \"Poste ID\"),\r\n new providerItem(\"sielteid\", spidRequestBaseUrl + \"sielte\" + spidRequestIdUrl, \"Sielte ID\", \"/img/spid-idp-sielteid.svg\", 'img/spid-idp-sielteid.png', \"Sielte ID\"),\r\n new providerItem(\"spiditalia\", spidRequestBaseUrl + \"register\" + spidRequestIdUrl, \"SPIDItalia Register.it\", \"/img/spid-idp-spiditalia.svg\", 'img/spid-idp-spiditalia.png', \"SPIDItalia\"),\r\n new providerItem(\"timid\", spidRequestBaseUrl + \"tim\" + spidRequestIdUrl, \"Tim ID\", \"/img/spid-idp-timid.svg\", 'img/spid-idp-timid.png', \"Tim ID\"),\r\n new providerItem(\"teamsystemid\", spidRequestBaseUrl + \"teamsystem\" + spidRequestIdUrl, \"TeamSystem ID\", \"/img/spid-idp-teamsystemid.svg\", 'img/spid-idp-teamsystemid.png', \"TeamSystem ID\"),\r\n new providerItem(\"intesigroup\", spidRequestBaseUrl + \"intesigroup\" + spidRequestIdUrl, \"Intesigroup ID\", \"/img/spid-idp-intesigroupspid.svg\", 'img/spid-idp-intesigroupspid.png', \"Intesigroup ID\"),\r\n );\r\n\r\n const buildProvidersDropDownList = () => {\r\n return providersList.sort(() => Math.random() - 0.5).map(x => \r\n
  • \r\n \r\n {x.Text}\r\n {x.Alt}\r\n \r\n
  • \r\n );\r\n }\r\n\r\n return (\r\n
    \r\n \r\n \"\"\r\n Entra con SPID\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n }\r\n\r\n export default LoginSPIDButton;\r\n ","import \"./LoginCIEButton.css\";\r\n\r\nfunction LoginCIEButton({sizeButton= \"small\"}) {\r\n\r\n const cieRequestIdUrl = process.env.NODE_ENV === 'production' ? window.env.CIE_REQUEST_ID_URL : process.env.REACT_APP_CIE_REQUEST_ID_URL;\r\n\r\n return (\r\n
    \r\n \r\n \r\n \"Entra\r\n \r\n Entra con CIE\r\n \r\n
    \r\n );\r\n }\r\n \r\n export default LoginCIEButton;\r\n ","import { useState } from \"react\";\r\nimport {\r\n Col,\r\n Row,\r\n Button,\r\n OverlayTrigger,\r\n Popover,\r\n Container,\r\n} from \"react-bootstrap\";\r\nimport \"./UserLogged.css\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useNavigate } from \"react-router-dom\";\r\nimport { AuthConsumer } from \"../../../AuthContext\";\r\nimport { logout } from \"../callApi\";\r\nimport {\r\n BrowserView,\r\n MobileView\r\n} from \"react-device-detect\";\r\n\r\nfunction UserLogged() {\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const { authenticated, user, signout } = AuthConsumer();\r\n const { t } = useTranslation();\r\n const navigate = useNavigate();\r\n\r\n const loggingout = () => {\r\n setShowOverlay(false);\r\n logout();\r\n signout();\r\n navigate(\"/\");\r\n };\r\n\r\n return (\r\n
    \r\n \r\n { authenticated === true && user !== null ? (\r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n

    {user?.fiscalNumber}

    \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 setShowOverlay(!showOverlay)}\r\n >\r\n \r\n \r\n \r\n \r\n {t(\"user.welcome\")}\r\n

    \r\n {user?.fiscalNumber}\r\n

    \r\n \r\n \r\n
    \r\n \r\n ) : (\r\n \"\"\r\n )}\r\n
    \r\n \r\n { authenticated === true && user !== null ? (\r\n \r\n \r\n \r\n {t(\"user.welcome\")}\r\n

    \r\n {user?.fiscalNumber}\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\nexport default UserLogged;\r\n","import React, {useState} from 'react';\r\nimport {\r\n Container,\r\n Image,\r\n Nav,\r\n Offcanvas,\r\n Navbar as NavBar\r\n} from \"react-bootstrap\";\r\nimport { useLocation, Link } from \"react-router-dom\";\r\nimport { linkNav } from \"../common/data\";\r\nimport LoginSPIDButton from \"../common/LoginSPIDButton/LoginSPIDButton\";\r\nimport LoginCIEButton from \"../common/LoginCIEButton/LoginCIEButton\";\r\nimport UserLogged from \"../common/UserLogged/UserLogged\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport styles from \"./Navbar.module.css\";\r\nimport { AuthConsumer } from \"../../AuthContext\";\r\n\r\nfunction Navbar() {\r\n const location = useLocation();\r\n const { t } = useTranslation();\r\n const { authenticated, admin } = AuthConsumer();\r\n const [show, setShow] = useState(false);\r\n const toggleShow = () => setShow((s) => !s);\r\n const handleClose = () => setShow(false);\r\n const cieFeatureEnabled = process.env.NODE_ENV === 'production' ? window.env.CIE_FEATURE_ENABLED === 'true' : process.env.REACT_APP_CIE_FEATURE_ENABLED === 'true';\r\n\r\n return (\r\n
    \r\n \r\n \r\n \r\n \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 authenticated ?\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 authenticated === true ? \r\n
    \r\n \r\n
    : \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n {\r\n cieFeatureEnabled === true ?\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\nexport default Navbar;\r\n","import { useParams, Navigate } from \"react-router-dom\";\r\nimport { useGlobalContext } from \"../../../context\";\r\nimport { useEffect } from \"react\";\r\n\r\nfunction CieErrorScreen() {\r\n // We can use the `useParams` hook here to access\r\n // the dynamic pieces of the URL.\r\n let { id } = useParams();\r\n const { setError } = useGlobalContext();\r\n\r\n useEffect(() => {\r\n setError({\r\n is: true,\r\n status: null,\r\n text: id,\r\n });\r\n }, []);\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport default CieErrorScreen;\r\n","import { Col, Container, Row, Alert } from \"react-bootstrap\";\r\n\r\nfunction NotFoundScreen() {\r\n return (\r\n \r\n \r\n \r\n \r\n ATTENZIONE: Questa pagina sembra non esistere!\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n \r\n export default NotFoundScreen;\r\n ","import { Col, Container, Row, Button } from \"react-bootstrap\";\r\nimport { useTranslation, Trans } from \"react-i18next\";\r\n\r\nfunction GDPRPage({ setAcceptGDPR }) {\r\n const { t } = useTranslation();\r\n\r\n return (\r\n \r\n \r\n \r\n

    {t(\"gdpr.title\")}

    \r\n \r\n
    \r\n \r\n \r\n \r\n {t(\"gdpr.text\")}\r\n \r\n \r\n \r\n \r\n \r\n setAcceptGDPR(true)}\r\n >\r\n {t(\"gdpr.accept\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"gdpr.reference\")}\r\n \r\n \r\n \r\n
    \r\n );\r\n}\r\n\r\nexport default GDPRPage;\r\n","import { Col, Container, Row, Button, Alert, Spinner } from \"react-bootstrap\";\r\nimport { useNavigate } from \"react-router-dom\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useGlobalContext } from \"../../../../context\";\r\nimport { useState, useEffect } from \"react\";\r\nimport {\r\n callApiGetComunicationById,\r\n callApiGetGeneratePDF,\r\n} from \"../../../common/callApi\";\r\nimport { useInterval } from \"../../../../hooks/useInterval\";\r\n\r\nfunction StatusRequestPage({ idNewComunication }) {\r\n const navigate = useNavigate();\r\n const { t } = useTranslation();\r\n\r\n const { loading, setLoading, error, setError } = useGlobalContext();\r\n const [isRunning, setIsRunning] = useState(true);\r\n const [communication, setCommunication] = useState({});\r\n\r\n useInterval(\r\n async () => {\r\n\r\n if(isRunning){\r\n // Get JSON data from API\r\n fnGetCommunication();\r\n }\r\n },\r\n isRunning ? 3000 : null\r\n );\r\n\r\n const clickDownloadPDF = () => {\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: true,\r\n text: t(\"myCommunicationScreen.downloadingPdf\"),\r\n });\r\n setTimeout(() => {\r\n callApiGetGeneratePDF(idNewComunication).then((response) => {\r\n if (response === undefined) {\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t(\"errorDownloadingPdf\"),\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n } else if (response.status === 200) {\r\n const url = window.URL.createObjectURL(new Blob([response.data]));\r\n const link = document.createElement(\"a\");\r\n link.href = url;\r\n link.setAttribute(\r\n \"download\",\r\n \"Ricevuta - \"\r\n .concat(communication.codiceComunicazione)\r\n .concat(\".pdf\")\r\n ); //or any other extension\r\n document.body.appendChild(link);\r\n link.click();\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n } else {\r\n setError({\r\n is: true,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n }\r\n });\r\n }, 0);\r\n };\r\n\r\n useEffect(() => {\r\n setLoading({\r\n is: true,\r\n text: t(\"loading\"),\r\n });\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n }, []);\r\n\r\n useEffect(() => {\r\n if(!isRunning) {\r\n setLoading({\r\n is: false\r\n });\r\n }\r\n }, [isRunning]);\r\n\r\n function trySetError(errorIs, errorText) {\r\n if(!error.is){\r\n setError({\r\n is: errorIs,\r\n status: null,\r\n text: errorText\r\n });\r\n }\r\n }\r\n\r\n /***\r\n * fnGetCommunication \r\n * \r\n * Call API function to retrieve single JSON document.\r\n * */\r\n const fnGetCommunication = () => {\r\n setTimeout(() => {\r\n callApiGetComunicationById(idNewComunication)\r\n .then((response) => {\r\n if (response === undefined) {\r\n // Stop polling\r\n setIsRunning(false);\r\n // Loading.Is: false, Loading.Text: '', Error.Is: false, Text: ''\r\n trySetError(true, t(\"statusRequest.getOperationFailed\"));\r\n \r\n } else if (response?.status === 200) {\r\n // Set json data\r\n setCommunication(response.data);\r\n // Stop polling\r\n setIsRunning(false);\r\n \r\n } else {\r\n console.error(response);\r\n }\r\n })\r\n .catch((error) => {\r\n if (error.response?.status === 404) {\r\n // On 404 status code polling should continue\r\n setIsRunning(true);\r\n \r\n } else {\r\n // Stop polling\r\n setIsRunning(false);\r\n // Loading.Is: false, Loading.Text: '', Error.Is: false, Text: ''\r\n trySetError(true, t('statusRequest.getOperationFailed'));\r\n \r\n }\r\n });\r\n }, 0);\r\n };\r\n\r\n return (\r\n \r\n {loading.is ? (\r\n \r\n \r\n \r\n {t(\"statusRequest.getOperation\")}\r\n

    {t(\"statusRequest.getOperationDetail\")}

    \r\n
    \r\n

    \r\n \r\n Loading...\r\n \r\n

    \r\n
    \r\n \r\n
    \r\n ) : error.is ? (\r\n <>\r\n \r\n \r\n \r\n {error.text}\r\n \r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n {t(\"statusRequest.savingOperationSucceded\")}\r\n \r\n
    \r\n

    {t(\"statusRequest.hint\")}

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n navigate(\"/mycommunications/\" + idNewComunication)\r\n }\r\n >\r\n {t(\"statusRequest.showDetails\")}\r\n \r\n \r\n \r\n clickDownloadPDF()}\r\n disabled={loading.is}\r\n >\r\n \r\n {t(\"downloadPdf\")}\r\n \r\n \r\n \r\n \r\n )}\r\n
    \r\n );\r\n}\r\n\r\nexport default StatusRequestPage;\r\n","import { useEffect, useRef } from 'react';\r\n\r\nexport function useInterval(callback, delay) {\r\n const savedCallback = useRef();\r\n\r\n // Remember the latest callback\r\n useEffect(() => {\r\n savedCallback.current = callback;\r\n });\r\n\r\n // Set up the interval\r\n useEffect(() => {\r\n function tick() {\r\n savedCallback.current();\r\n }\r\n if(delay !== null){\r\n const id = setInterval(tick, delay);\r\n return () => {\r\n clearInterval(id);\r\n };\r\n }\r\n }, [callback, delay])\r\n}","import { useEffect } from \"react\";\r\nimport { useLocation } from \"react-router-dom\";\r\n\r\nexport default function ScrollToTop(smooth) {\r\n const { pathname } = useLocation();\r\n\r\n useEffect(() => {\r\n if(smooth) {\r\n window.scrollTo(0,0);\r\n } \r\n else{\r\n document.documentElement.scrollTop = 0;\r\n }\r\n }, [pathname]);\r\n\r\n return null;\r\n}","import { useEffect, useState, Suspense } from \"react\";\r\nimport { Col, Container, Row, Button, Form, Alert, Spinner, OverlayTrigger, Tooltip } from \"react-bootstrap\";\r\nimport styles from \"./FormScreen.module.css\";\r\nimport { Formik } from \"formik\";\r\nimport * as yup from \"yup\";\r\nimport GDPRPage from \"./GDPRPage/GDPRPage\";\r\nimport Loading from \"../../common/Loading/Loading\";\r\nimport {\r\n callApiCreateNewComunication,\r\n getDenominazioneAzienda,\r\n getDenominazioneLavoratore,\r\n getCommunicationSubjects,\r\n} from \"../../common/callApi\";\r\nimport StatusRequestPage from \"./StatusRequestPage/StatusRequestPage\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AuthConsumer } from \"../../../AuthContext\";\r\nimport ScrollToTop from \"../../common/ScrollToTop/ScrollToTop\";\r\nimport { checkValidCodiceFiscaleOrPartitaIVA, checkValidCodiceFiscale, uppercase, trim } from \"../../common/utils\";\r\n\r\nfunction FFormScreen() {\r\n const { t } = useTranslation();\r\n\r\n const { user } = AuthConsumer();\r\n const [error, setError] = useState({\r\n is: false,\r\n status: null,\r\n text: \"\"\r\n });\r\n const [loading, setLoading] = useState({\r\n is: false,\r\n text: \"\",\r\n });\r\n\r\n \r\n yup.addMethod(\r\n yup.string,\r\n \"checkValidCodiceFiscaleOrPartitaIVA\",\r\n checkValidCodiceFiscaleOrPartitaIVA\r\n );\r\n yup.addMethod(\r\n yup.string, \r\n \"checkValidCodiceFiscale\", \r\n checkValidCodiceFiscale\r\n );\r\n\r\n const schema = yup.object().shape({\r\n codiceFiscaleDatoreDiLavoro: yup\r\n .string()\r\n .max(16, t('formScreen.validationMessages.codiceFiscalePartitaIvaMax'))\r\n .min(11, t('formScreen.validationMessages.codiceFiscalePartitaIvaMin'))\r\n .uppercase()\r\n .strict()\r\n .trim()\r\n .required(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\")\r\n )\r\n .checkValidCodiceFiscaleOrPartitaIVA(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\")\r\n ),\r\n denominazioneDatoreDiLavoro: yup\r\n .string()\r\n .max(100)\r\n .required(\r\n t(\"formScreen.validationMessages.denominazioneDatoreLavoroRequired\")\r\n ),\r\n codiceFiscaleLavoratore: yup\r\n .string()\r\n .max(16, t('formScreen.validationMessages.codiceFiscalePartitaIvaMax'))\r\n .min(11, t('formScreen.validationMessages.codiceFiscalePartitaIvaMin'))\r\n .uppercase()\r\n .strict()\r\n .trim()\r\n .required(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\")\r\n )\r\n .checkValidCodiceFiscale(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\")\r\n , t(\"formScreen.validationMessages.codiceFiscaleFullNameMismatch\")\r\n ),\r\n cognomeLavoratore: yup\r\n .string()\r\n .max(50)\r\n .required(t(\"formScreen.validationMessages.surnameRequired\")),\r\n nomeLavoratore: yup\r\n .string()\r\n .max(50)\r\n .required(t(\"formScreen.validationMessages.firstnameRequired\")),\r\n dataInizioRapportoDiLavoro: yup\r\n .date()\r\n .min(new Date(1900, 1, 1), t(\"formScreen.validationMessages.startDateRequired\"))\r\n .max(new Date(2099, 12, 31), t(\"formScreen.validationMessages.startDateRequired\"))\r\n .required(t(\"formScreen.validationMessages.startDateRequired\")),\r\n motivoUrgenza: yup\r\n .string()\r\n .max(100)\r\n .required(t(\"formScreen.validationMessages.reasonRequired\")),\r\n soggettoCheEffettuaLaComunicazione: yup.string(),\r\n codiceFiscaleDelSoggettoCheEffettuaLaComunicazione: yup\r\n .string()\r\n .when(\"soggettoCheEffettuaLaComunicazione\", {\r\n is: (val) => val === undefined || val === \"\" || val === \"000\",\r\n then: yup.string(),\r\n otherwise: yup\r\n .string()\r\n .max(16, t('formScreen.validationMessages.codiceFiscalePartitaIvaMax'))\r\n .min(11, t('formScreen.validationMessages.codiceFiscalePartitaIvaMin'))\r\n .uppercase()\r\n .strict()\r\n .trim()\r\n .required(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\")\r\n )\r\n .checkValidCodiceFiscaleOrPartitaIVA(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\")\r\n ),\r\n }),\r\n emailDelSoggettoCheEffettuaLaComunicazione: yup\r\n .string()\r\n .max(80)\r\n .required(t(\"formScreen.validationMessages.soggettoEmailRequired\"))\r\n .email(t(\"formScreen.validationMessages.soggettoEmailRequired\")),\r\n });\r\n\r\n const [dataIdTestFormControl, setDataIdTestFormControl] = useState(\"enabledInput\");\r\n const [showConfirmFormPreview, setShowConfirmFormPreview] = useState(false);\r\n const [screenConfirmFormStatus, setScreenConfirmFormStatus] = useState({\r\n show: false,\r\n idNewComunication: \"\",\r\n title: \"\",\r\n text: \"\",\r\n });\r\n const [acceptGDPR, setAcceptGDPR] = useState(false);\r\n const [formData, setFormData] = useState({\r\n codiceFiscaleDatoreDiLavoro: \"\",\r\n denominazioneDatoreDiLavoro: \"\",\r\n codiceFiscaleLavoratore: \"\",\r\n cognomeLavoratore: \"\",\r\n nomeLavoratore: \"\",\r\n dataInizioRapportoDiLavoro: \"\",\r\n motivoUrgenza: \"\",\r\n soggettoCheEffettuaLaComunicazione: \"\",\r\n codiceFiscaleDelSoggettoCheEffettuaLaComunicazione: \"\",\r\n emailDelSoggettoCheEffettuaLaComunicazione: \"\"\r\n });\r\n\r\n const [loadingDatore, setLoadingDatore] = useState({is: false, text: \"\"});\r\n const [loadingLavoratore, setLoadingLavoratore] = useState({is: false, text: \"\"});\r\n const [denominazioneAzienda, setDenominazioneAzienda] = useState(\"\");\r\n const [denominazioneLavoratoreCognome, setDenominazioneLavoratoreCognome] =\r\n useState(\"\");\r\n const [denominazioneLavoratoreNome, setDenominazioneLavoratoreNome] =\r\n useState(\"\");\r\n\r\n function resetCFDatore(){\r\n setDenominazioneAzienda(\"\");\r\n }\r\n\r\n function resetCFLavoratore(){\r\n setDenominazioneLavoratoreCognome(\"\");\r\n setDenominazioneLavoratoreNome(\"\");\r\n }\r\n\r\n const fnSearchForDenominazioneAzienda = (values) => {\r\n if (values) {\r\n setLoadingDatore({\r\n is: true,\r\n text: \"\",\r\n });\r\n setTimeout(() => {\r\n getDenominazioneAzienda(values).then((response) => {\r\n if (response === undefined || response.status !== 200) {\r\n setLoadingDatore({\r\n is: false,\r\n text: \"\",\r\n });\r\n setDenominazioneAzienda(\"\");\r\n } else if (response.status === 200) {\r\n setLoadingDatore({\r\n is: false,\r\n text: \"\",\r\n });\r\n if(response?.data?.esito?.codice === 'E100' &&\r\n response?.data?.denominazioneCO !== null){\r\n setDenominazioneAzienda(response.data.denominazioneCO);\r\n }\r\n }\r\n });\r\n }, 0);\r\n }\r\n };\r\n\r\n const fnSearchForDenominazioneLavoratore = (values) => {\r\n if (values) {\r\n setLoadingLavoratore({\r\n is: true,\r\n text: \"\",\r\n });\r\n setTimeout(() => {\r\n getDenominazioneLavoratore(values).then((response) => {\r\n if (response === undefined || response.status !== 200) {\r\n setLoadingLavoratore({\r\n is: false,\r\n text: \"\",\r\n });\r\n setDenominazioneLavoratoreCognome(\"\");\r\n setDenominazioneLavoratoreNome(\"\");\r\n } else if (response.status === 200) {\r\n setLoadingLavoratore({\r\n is: false,\r\n text: \"\",\r\n });\r\n if(response?.data?.esito?.codice === 'E100' &&\r\n response?.data?.co?.cognome !== null &&\r\n response?.data?.co?.nome !== null){\r\n setDenominazioneLavoratoreCognome(response.data.co.cognome);\r\n setDenominazioneLavoratoreNome(response.data.co.nome);\r\n } \r\n }\r\n });\r\n }, 0);\r\n }\r\n };\r\n\r\n const functionApiCreateNewComunication = (isDraft) => {\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: true,\r\n text: t(\"loading\"),\r\n });\r\n setTimeout(() => {\r\n let jsonData = {\r\n dataInvio: new Date(),\r\n ...(formData.soggettoCheEffettuaLaComunicazione !== '' && formData.soggettoCheEffettuaLaComunicazione !== \"000\" ? {tipoDelegato: formData.soggettoCheEffettuaLaComunicazione} : null),\r\n emailDelegato: formData.emailDelSoggettoCheEffettuaLaComunicazione,\r\n currentUser: user?.fiscalNumber,\r\n emailCurrentUser: user?.email,\r\n motivoUrgenza: formData.motivoUrgenza,\r\n dataInizioRapporto: new Date(formData.dataInizioRapportoDiLavoro),\r\n lavoratore: {\r\n cognome: formData.cognomeLavoratore,\r\n nome: formData.nomeLavoratore,\r\n cfLavoratore: formData.codiceFiscaleLavoratore,\r\n },\r\n datoreLavoro: {\r\n cfDatoreLavoro: formData.codiceFiscaleDatoreDiLavoro,\r\n denominazione: formData.denominazioneDatoreDiLavoro,\r\n },\r\n send: !isDraft,\r\n };\r\n\r\n if (formData.soggettoCheEffettuaLaComunicazione !== \"\" && formData.soggettoCheEffettuaLaComunicazione !== \"000\") {\r\n jsonData[\"cfDelegato\"] =\r\n formData.codiceFiscaleDelSoggettoCheEffettuaLaComunicazione;\r\n }\r\n\r\n if (!isDraft) {\r\n callApiCreateNewComunication(jsonData)\r\n .then((response) => {\r\n if (response === undefined) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t(\"formScreen.messages.savingOperationFailed\"),\r\n });\r\n } else if (response.status === 200) {\r\n setScreenConfirmFormStatus({\r\n show: true,\r\n idNewComunication: response.data,\r\n title: t(\"formScreen.messages.sendOperationSucceded\"),\r\n text: t(\"formScreen.messages.sendOperationSucceded\"),\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n } else if (response.status === 401) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: false,\r\n status: null,\r\n text: t(\"api.unauthorized\")\r\n });\r\n } else {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: response.status,\r\n text: t(\"formScreen.messages.savingOperationFailed\")\r\n });\r\n }\r\n });\r\n }\r\n }, 1000);\r\n };\r\n\r\n const [communicationSubjects, setCommunicationSubjects] = useState([\r\n {\r\n id: 0,\r\n value: \"\",\r\n text: \"\",\r\n },\r\n ]);\r\n const [isSubjectLoaded, setIsSubjectLoaded] = useState(false);\r\n useEffect(() => {\r\n getCommunicationSubjects()\r\n .then((response) => {\r\n if (response.data) {\r\n setIsSubjectLoaded(true);\r\n setCommunicationSubjects(response.data);\r\n }\r\n })\r\n .catch((error) => {\r\n console.error(\"fnSub\", error);\r\n });\r\n }, []);\r\n\r\n const handleModify = () => {\r\n setShowConfirmFormPreview(false);\r\n }\r\n\r\n useEffect(() => {\r\n if (showConfirmFormPreview) {\r\n setDataIdTestFormControl(\"disabledInput\");\r\n } else {\r\n setDataIdTestFormControl(\"enabledInput\");\r\n }\r\n }, [showConfirmFormPreview]);\r\n\r\n if (acceptGDPR === false) {\r\n return ;\r\n }\r\n if (screenConfirmFormStatus.show) {\r\n return (\r\n \r\n );\r\n }\r\n return (\r\n \r\n <>\r\n \r\n {\r\n setLoading({\r\n is: true,\r\n title: t(\"loadingcomunication\"),\r\n text: \"Caricamento anteprima comunicazione...\",\r\n });\r\n setTimeout(() => {\r\n actions.setSubmitting(false);\r\n setShowConfirmFormPreview(true);\r\n setFormData({\r\n codiceFiscaleDatoreDiLavoro: values.codiceFiscaleDatoreDiLavoro,\r\n denominazioneDatoreDiLavoro: values.denominazioneDatoreDiLavoro,\r\n codiceFiscaleLavoratore: values.codiceFiscaleLavoratore,\r\n cognomeLavoratore: values.cognomeLavoratore,\r\n nomeLavoratore: values.nomeLavoratore,\r\n dataInizioRapportoDiLavoro: values.dataInizioRapportoDiLavoro,\r\n motivoUrgenza: values.motivoUrgenza,\r\n soggettoCheEffettuaLaComunicazione:\r\n values.soggettoCheEffettuaLaComunicazione,\r\n codiceFiscaleDelSoggettoCheEffettuaLaComunicazione:\r\n values.soggettoCheEffettuaLaComunicazione !== \"\" && values.soggettoCheEffettuaLaComunicazione !== \"000\"\r\n ? values.codiceFiscaleDelSoggettoCheEffettuaLaComunicazione\r\n : \"\",\r\n emailDelSoggettoCheEffettuaLaComunicazione:\r\n values.emailDelSoggettoCheEffettuaLaComunicazione\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n }, 1000);\r\n }}\r\n initialValues={{\r\n codiceFiscaleDatoreDiLavoro: \"\",\r\n denominazioneDatoreDiLavoro: \"\",\r\n codiceFiscaleLavoratore: \"\",\r\n cognomeLavoratore: \"\",\r\n nomeLavoratore: \"\",\r\n dataInizioRapportoDiLavoro: \"\",\r\n motivoUrgenza: \"\",\r\n soggettoCheEffettuaLaComunicazione: \"\",\r\n codiceFiscaleDelSoggettoCheEffettuaLaComunicazione: \"\",\r\n emailDelSoggettoCheEffettuaLaComunicazione: \"\"\r\n }}\r\n >\r\n {({\r\n handleSubmit,\r\n handleChange,\r\n handleBlur,\r\n values,\r\n touched,\r\n isValid,\r\n errors,\r\n }) => (\r\n \r\n
    \r\n \r\n \r\n {t(\"formScreen.validationMessages.title\")}\r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.title3\")}\r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.Datore1\")}\r\n \r\n \r\n \r\n {\r\n uppercase(e);\r\n trim(e);\r\n resetCFDatore();\r\n handleChange(e);\r\n }}\r\n onBlur={handleBlur}\r\n isInvalid={\r\n errors.codiceFiscaleDatoreDiLavoro &&\r\n touched.codiceFiscaleDatoreDiLavoro\r\n }\r\n data-id-test={\r\n \"codiceFiscaleDatoreDiLavoro-\" + dataIdTestFormControl\r\n }\r\n />\r\n \r\n {errors.codiceFiscaleDatoreDiLavoro}\r\n \r\n \r\n \r\n \r\n {t('formScreen.companySearchTooltipMessage')}\r\n \r\n }\r\n >\r\n \r\n fnSearchForDenominazioneAzienda(\r\n values.codiceFiscaleDatoreDiLavoro\r\n )\r\n }\r\n disabled={\r\n showConfirmFormPreview ||\r\n !touched.codiceFiscaleDatoreDiLavoro ||\r\n (errors.codiceFiscaleDatoreDiLavoro &&\r\n touched.codiceFiscaleDatoreDiLavoro)\r\n }\r\n data-id-test={\r\n \"searchCodiceFiscaleDatoreDiLavoro-\" + dataIdTestFormControl\r\n }\r\n >\r\n {\r\n loadingDatore.is ?\r\n\r\n \r\n Loading...\r\n : \r\n \r\n \r\n \r\n }\r\n \r\n \r\n \r\n {errors.searchDenominazioneDatoreDiLavoro}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.Datore2\")}\r\n \r\n \r\n \r\n \r\n \r\n {errors.denominazioneDatoreDiLavoro}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.title2\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.title4\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.LavoratoreCF\")}\r\n \r\n \r\n \r\n {\r\n uppercase(e);\r\n trim(e);\r\n resetCFLavoratore();\r\n handleChange(e);\r\n }}\r\n onBlur={handleBlur}\r\n isInvalid={\r\n errors.codiceFiscaleLavoratore &&\r\n touched.codiceFiscaleLavoratore\r\n }\r\n data-id-test={\r\n \"codiceFiscaleLavoratore-\" + dataIdTestFormControl\r\n }\r\n />\r\n \r\n {errors.codiceFiscaleLavoratore}\r\n \r\n \r\n \r\n \r\n {t('formScreen.employeeSearchTooltipMessage')}\r\n \r\n }\r\n >\r\n \r\n fnSearchForDenominazioneLavoratore(\r\n values.codiceFiscaleLavoratore\r\n )\r\n }\r\n disabled={\r\n showConfirmFormPreview ||\r\n !touched.codiceFiscaleLavoratore ||\r\n (errors.codiceFiscaleLavoratore &&\r\n touched.codiceFiscaleLavoratore)\r\n }\r\n data-id-test={\r\n \"searchCodiceFiscaleLavoratore-\" + dataIdTestFormControl\r\n }\r\n >\r\n {\r\n loadingLavoratore.is ?\r\n \r\n Loading...\r\n : \r\n \r\n }\r\n \r\n \r\n \r\n {errors.searchDenominazioneLavoratore}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.LavoratoreCognome\")}\r\n \r\n \r\n \r\n \r\n \r\n {errors.cognomeLavoratore}\r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.LavoratoreNome\")}\r\n \r\n \r\n \r\n \r\n \r\n {errors.nomeLavoratore}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.title5\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.Rapporto\")}\r\n \r\n \r\n \r\n \r\n \r\n {errors.dataInizioRapportoDiLavoro}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.title6\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.DatiInvio1\")}\r\n \r\n \r\n \r\n \r\n \r\n {errors.motivoUrgenza}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.DatiInvio2\")}\r\n \r\n \r\n \r\n \r\n \r\n {isSubjectLoaded ? \r\n communicationSubjects.map((s) => {\r\n return (\r\n \r\n );\r\n }) : \r\n \r\n }\r\n \r\n\r\n \r\n {errors.soggettoCheEffettuaLaComunicazione}\r\n \r\n \r\n \r\n {values.soggettoCheEffettuaLaComunicazione !== \"\" &&\r\n values.soggettoCheEffettuaLaComunicazione !== \"000\" ? (\r\n \r\n \r\n \r\n Codice fiscale del soggetto che effettua la comunicazione *\r\n \r\n \r\n \r\n {\r\n uppercase(e);\r\n trim(e);\r\n handleChange(e);\r\n }}\r\n onBlur={handleBlur}\r\n isValid={\r\n values.soggettoCheEffettuaLaComunicazione === \"\"\r\n ? true\r\n : false\r\n }\r\n isInvalid={\r\n errors.codiceFiscaleDelSoggettoCheEffettuaLaComunicazione &&\r\n touched.codiceFiscaleDelSoggettoCheEffettuaLaComunicazione\r\n }\r\n data-id-test={\r\n \"codiceFiscaleDelSoggettoCheEffettuaLaComunicazione-\" +\r\n dataIdTestFormControl\r\n }\r\n />\r\n \r\n {errors.codiceFiscaleDelSoggettoCheEffettuaLaComunicazione}\r\n \r\n \r\n \r\n ) : (\r\n \"\"\r\n )}\r\n\r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.DatiInvio3\")}\r\n \r\n \r\n \r\n \r\n \r\n {errors.emailDelSoggettoCheEffettuaLaComunicazione}\r\n \r\n \r\n \r\n {!showConfirmFormPreview ? (\r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.bt\")}\r\n {loading.is ? : \"\"}\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.TextAttention\")}\r\n \r\n \r\n \r\n {error.is ? {error.text} : \"\"}\r\n \r\n \r\n \r\n \r\n \r\n functionApiCreateNewComunication(false)}\r\n className={styles.buttonSubmitForm}\r\n type=\"submit\"\r\n disabled={loading.is}\r\n >\r\n {t(\"formScreen.validationMessages.ButtonSave2\")}\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\nconst Loader = () => (\r\n
    \r\n
    loading...
    \r\n
    \r\n);\r\n//export default FormScreen;\r\nexport default function FormScreen() {\r\n return (\r\n }>\r\n \r\n \r\n );\r\n}\r\n","import { Col, Container, Row, Button, Alert } from \"react-bootstrap\";\r\nimport styles from \"./DetailScreen.module.css\";\r\nimport { useParams } from \"react-router-dom\";\r\nimport { useGlobalContext } from \"../../../context\";\r\nimport { useEffect, useState } from \"react\";\r\nimport {\r\n callApiGetComunicationById,\r\n callApiGetComunicationCoapById,\r\n callApiGetGeneratePDF,\r\n} from \"../../common/callApi\";\r\nimport Loading from \"../../common/Loading/Loading\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AuthConsumer, AuthProvider } from \"../../../AuthContext\";\r\n\r\nfunction DetailScreen() {\r\n const {\r\n loading,\r\n setLoading,\r\n error,\r\n setError,\r\n dettaglioSelezionato,\r\n convertDate,\r\n } = useGlobalContext();\r\n const { id } = useParams();\r\n const { t } = useTranslation();\r\n\r\n const [comunicationData, setComunicationData] = useState([]);\r\n const [coapData, setCoapData] = useState({});\r\n const {admin} = AuthConsumer();\r\n\r\n const clickDownloadPDF = () => {\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: true,\r\n text: t('detailScreen.downloadingPdf'),\r\n });\r\n setTimeout(() => {\r\n callApiGetGeneratePDF(comunicationData.correlationId).then((response) => {\r\n if (response === undefined) {\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t('detailScreen.errorDownloadingPdf'),\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n } else if (response.status === 200) {\r\n const url = window.URL.createObjectURL(new Blob([response.data]));\r\n const link = document.createElement(\"a\");\r\n link.href = url;\r\n link.setAttribute(\"download\", \"Ricevuta - \".concat(comunicationData.codiceComunicazione).concat(\".pdf\")); //or any other extension\r\n document.body.appendChild(link);\r\n link.click();\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n }\r\n });\r\n }, 1000);\r\n };\r\n\r\n const getCommunication = () => {\r\n callApiGetComunicationById(id).then((response) => {\r\n if (response === undefined) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t('detailScreen.loadingDetailFailed'),\r\n });\r\n } else if (response.status === 200) {\r\n setComunicationData(response.data);\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n } else if (response.status === 404) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: response.status,\r\n text: t('detailScreen.communicationNotFound'),\r\n });\r\n } else {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t('detailScreen.loadingDetailFailed'),\r\n });\r\n }\r\n });\r\n };\r\n\r\n const getCommunicationCoap = () => {\r\n callApiGetComunicationCoapById(id).then((response) => {\r\n if (response === undefined) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t('detailScreen.loadingDetailFailed'),\r\n });\r\n } else if (response.status === 200) {\r\n setCoapData(response.data);\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n } else {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t('detailScreen.loadingDetailFailed'),\r\n });\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n setLoading({\r\n is: true,\r\n text: t('detailScreen.loading'),\r\n });\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setTimeout(() => {\r\n getCommunication();\r\n getCommunicationCoap();\r\n }, 1000);\r\n }, []);\r\n\r\n if (Object.keys(comunicationData).length > 0) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.title\")}\r\n \r\n \r\n \r\n \r\n {t(\"formScreen.validationMessages.title3\")}\r\n \r\n \r\n\r\n \r\n \r\n

    Codice Fiscale

    \r\n \r\n \r\n

    {comunicationData.datoreLavoro.cfDatoreLavoro}

    \r\n \r\n
    \r\n \r\n \r\n

    Denominazione datore di lavoro

    \r\n \r\n \r\n

    {comunicationData.datoreLavoro.denominazione}

    \r\n \r\n
    \r\n \r\n \r\n
    Altre informazioni
    \r\n \r\n
    \r\n \r\n \r\n
    Sezione: Lavoratore
    \r\n \r\n
    \r\n \r\n \r\n

    Codice Fiscale

    \r\n \r\n \r\n

    {comunicationData.lavoratore.cfLavoratore}

    \r\n \r\n
    \r\n \r\n \r\n

    Cognome

    \r\n \r\n \r\n

    {comunicationData.lavoratore.cognome}

    \r\n \r\n \r\n

    Nome

    \r\n \r\n \r\n

    {comunicationData.lavoratore.nome}

    \r\n \r\n
    \r\n \r\n \r\n
    Sezione: Inizio rapporto di lavoro
    \r\n \r\n
    \r\n \r\n \r\n

    Data inizio

    \r\n \r\n \r\n

    {convertDate(comunicationData.dataInizioRapporto)}

    \r\n \r\n
    \r\n \r\n \r\n
    Sezione: Dati di invio
    \r\n \r\n
    \r\n \r\n \r\n

    Motivo dell'urgenza

    \r\n \r\n \r\n

    {comunicationData.motivoUrgenza}

    \r\n \r\n
    \r\n \r\n \r\n

    \r\n Soggetto che effettua la comunicazione\r\n

    \r\n (se diverso dal datore di lavoro)\r\n

    \r\n

    \r\n \r\n \r\n

    {comunicationData.tipoDelegatoEsteso ? comunicationData.tipoDelegatoEsteso : \"Datore di Lavoro\"}

    \r\n \r\n
    \r\n \r\n \r\n

    \r\n Codice fiscale del soggetto che effettua la comunicazione\r\n

    \r\n (se diverso dal datore di lavoro)\r\n

    \r\n

    \r\n \r\n \r\n

    {comunicationData.cfDelegato}

    \r\n \r\n
    \r\n \r\n \r\n

    E-mail del soggetto che effettua la comunicazione

    \r\n \r\n \r\n

    {comunicationData.emailDelegato}

    \r\n \r\n
    \r\n \r\n \r\n

    Tipo comunicazione

    \r\n \r\n \r\n

    {comunicationData.tipoComunicazioneEstesa}

    \r\n \r\n
    \r\n {\r\n admin ?\r\n <>\r\n \r\n \r\n
    Sezione: COAP/NCN
    \r\n \r\n
    \r\n \r\n \r\n

    Esito

    \r\n \r\n \r\n

    {t('coap.status'+coapData.status)}

    \r\n \r\n
    \r\n \r\n : \"\"\r\n }\r\n \r\n \r\n \r\n
    \r\n {error.is ? (\r\n error.status === 404 ? (\r\n {error.text}\r\n ) : (\r\n {error.text}\r\n )\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n
    \r\n
    \r\n \r\n );\r\n }\r\n return (\r\n <>\r\n \r\n \r\n \r\n {loading.is ? (\r\n
    \r\n

    \r\n {loading.text}\r\n

    \r\n
    \r\n ) : error.is ? (\r\n error.status === 404 ? (\r\n {error.text}\r\n ) : (\r\n {error.text}\r\n )\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n
    \r\n
    \r\n \r\n );\r\n}\r\n\r\nexport default DetailScreen;\r\n","import { useState, useMemo, useEffect } from \"react\";\r\nimport { Col, Container, Row, Form, Button, Alert } from \"react-bootstrap\";\r\nimport CardCommunication from \"./CardCommunication/CardCommunication\";\r\nimport { Formik } from \"formik\";\r\nimport * as yup from \"yup\";\r\nimport { callApiGetAllCommunications } from \"../../common/callApi\";\r\nimport Loading from \"../../common/Loading/Loading\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport Pagination from \"../../common/Pagination/Pagination\";\r\nimport { checkValidCodiceFiscaleOrPartitaIVA, checkValidCodiceFiscale, uppercase, trim } from \"../../common/utils\";\r\n\r\nfunction CommunicationsScreen() {\r\n const { t } = useTranslation();\r\n\r\n yup.addMethod(\r\n yup.string,\r\n \"checkValidCodiceFiscaleOrPartitaIVA\",\r\n checkValidCodiceFiscaleOrPartitaIVA\r\n );\r\n yup.addMethod(yup.string, \"checkValidCodiceFiscale\", checkValidCodiceFiscale);\r\n\r\n const schema = yup.object().shape({\r\n codiceFiscaleDatore: yup\r\n .string()\r\n .max(16, t('formScreen.validationMessages.codiceFiscalePartitaIvaMax'))\r\n .min(11, t('formScreen.validationMessages.codiceFiscalePartitaIvaMin'))\r\n .uppercase()\r\n .strict()\r\n .trim()\r\n .checkValidCodiceFiscaleOrPartitaIVA(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\")\r\n ),\r\n \r\n codiceFiscaleLavoratore: yup\r\n .string()\r\n .max(16, t('formScreen.validationMessages.codiceFiscalePartitaIvaMax'))\r\n .min(11, t('formScreen.validationMessages.codiceFiscalePartitaIvaMin'))\r\n .uppercase()\r\n .strict()\r\n .trim()\r\n .checkValidCodiceFiscale(\r\n t(\"formScreen.validationMessages.codiceFiscaleRequired\") \r\n ),\r\n fromDate: yup\r\n .date()\r\n .min(new Date(1900, 1, 1), t(\"formScreen.validationMessages.startDateRequired\"))\r\n .max(new Date(2099, 12, 31), t(\"formScreen.validationMessages.startDateRequired\")),\r\n toDate: yup\r\n .date()\r\n .min(new Date(1900, 1, 1), t(\"formScreen.validationMessages.startDateRequired\"))\r\n .max(new Date(2099, 12, 31), t(\"formScreen.validationMessages.startDateRequired\")),\r\n });\r\n\r\n const [loading, setLoading] = useState({\r\n is: false,\r\n text: \"\"\r\n });\r\n const [error, setError] = useState({\r\n is: false,\r\n status: null,\r\n text: \"\"\r\n });\r\n const [communicationsData, setCommunicationsData] = useState({\r\n items: [],\r\n total: 0,\r\n });\r\n\r\n const [formData, setFormData] = useState({\r\n fromDate: \"\",\r\n toDate: \"\",\r\n codiceFiscaleDatore: \"\",\r\n codiceFiscaleLavoratore: \"\",\r\n coap: \"\"\r\n });\r\n const [isSubmitted, setIsSubmitted] = useState(false);\r\n const [noItemsFound, setNoItemsFound] = useState(false);\r\n\r\n const getCommunications = (page) => {\r\n callApiGetAllCommunications(\r\n formData.codiceFiscaleDatore,\r\n formData.codiceFiscaleLavoratore,\r\n formData.fromDate,\r\n formData.toDate,\r\n formData.coap,\r\n PageSize,\r\n page ? (page - 1) * PageSize : 0\r\n ).then((response) => {\r\n setIsSubmitted(false);\r\n setNoItemsFound(false);\r\n if (response === undefined) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: null,\r\n text: t('myCommunicationScreen.loadingError'),\r\n });\r\n } else if (response.status === 200) {\r\n setCommunicationsData(response.data);\r\n if(response.data?.total === 0){\r\n setNoItemsFound(true);\r\n }\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n } else if (response.status === 404) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: response.status,\r\n text: t('myCommunicationScreen.noCommunicationFound'),\r\n });\r\n } else if (response.status === 401) {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: response.status,\r\n text: t('api.unauthorized'),\r\n });\r\n } else {\r\n setLoading({\r\n is: false,\r\n text: \"\",\r\n });\r\n setError({\r\n is: true,\r\n status: response.status,\r\n text: t('myCommunicationScreen.loadingError'),\r\n });\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if (isSubmitted) {\r\n getCommunications();\r\n }\r\n }, [formData, isSubmitted]);\r\n\r\n let PageSize = 10;\r\n const [currentPage, setCurrentPage] = useState(1);\r\n const currentTableData = useMemo(() => {\r\n return communicationsData.items;\r\n }, [communicationsData]);\r\n\r\n return (\r\n \r\n \r\n

    \r\n {t(\"comu.search\")}\r\n

    \r\n
    \r\n {\r\n setError({\r\n is: false,\r\n status: null,\r\n text: \"\",\r\n });\r\n setLoading({\r\n is: true,\r\n text: \"Caricamento comunicazioni in corso...\",\r\n });\r\n setTimeout(() => {\r\n actions.setSubmitting(false);\r\n setFormData({\r\n fromDate: values.fromDate,\r\n toDate: values.toDate,\r\n codiceFiscaleDatore: values.codiceFiscaleDatore,\r\n codiceFiscaleLavoratore: values.codiceFiscaleLavoratore,\r\n coap: values.coap\r\n });\r\n setIsSubmitted(true);\r\n }, 1000);\r\n }}\r\n initialValues={{\r\n fromDate: \"\",\r\n toDate: \"\",\r\n codiceFiscaleDatore: \"\",\r\n codiceFiscaleLavoratore: \"\",\r\n coap: \"\"\r\n }}\r\n >\r\n {({\r\n handleSubmit,\r\n handleChange,\r\n handleBlur,\r\n values,\r\n touched,\r\n isValid,\r\n errors,\r\n }) => (\r\n
    \r\n \r\n \r\n Codice Fiscale Datore\r\n {\r\n uppercase(e);\r\n trim(e);\r\n handleChange(e);\r\n }}\r\n onBlur={handleBlur}\r\n isInvalid={errors.codiceFiscaleDatore && touched.codiceFiscaleDatore}\r\n />\r\n \r\n {errors.codiceFiscaleDatore}\r\n \r\n \r\n \r\n Codice Fiscale Lavoratore\r\n {\r\n uppercase(e);\r\n trim(e);\r\n handleChange(e);\r\n }}\r\n onBlur={handleBlur}\r\n isInvalid={errors.codiceFiscaleLavoratore && touched.codiceFiscaleLavoratore}\r\n />\r\n \r\n {errors.codiceFiscaleLavoratore}\r\n \r\n \r\n \r\n Da\r\n \r\n \r\n {errors.fromDate}\r\n \r\n \r\n \r\n A\r\n \r\n \r\n {errors.toDate}\r\n \r\n \r\n \r\n COAP\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {errors.coap}\r\n \r\n \r\n \r\n
    \r\n \r\n {loading.is ? : \"\"}\r\n {loading.is ? \" \" + loading.text : \"Cerca\"}\r\n \r\n
    \r\n
    \r\n )}\r\n \r\n {error.is ? (\r\n error.status === 404 ? (\r\n {error.text}\r\n ) : (\r\n {error.text}\r\n )\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n \r\n {\r\n currentTableData?.length > 0\r\n ? currentTableData?.map((el) => (\r\n \r\n ))\r\n : \r\n noItemsFound ?\r\n \r\n
    \r\n {t('myCommunicationScreen.noCommunicationFound')}\r\n
    \r\n :\r\n \"\"\r\n }\r\n \r\n
    \r\n \r\n \r\n \r\n {\r\n setCurrentPage(page);\r\n getCommunications(page);\r\n }}\r\n />\r\n \r\n \r\n \r\n
    \r\n );\r\n}\r\n\r\nexport default CommunicationsScreen;\r\n","import { Col, Container, Row, Image, Alert } from \"react-bootstrap\";\r\nimport { useTranslation, Trans } from \"react-i18next\";\r\nimport { useGlobalContext } from \"../../../context\";\r\nimport { useEffect, useState } from \"react\";\r\n\r\nfunction LandingPageScreen() {\r\n const { t } = useTranslation();\r\n const { error, clearError } = useGlobalContext();\r\n const [cieError, setCieError] = useState({\r\n is: false,\r\n text: \"\",\r\n });\r\n\r\n useEffect(() => {\r\n setCieError({\r\n is: error.is ?? false,\r\n text: error.text ?? \"\",\r\n });\r\n clearError();\r\n }, []);\r\n\r\n return (\r\n \r\n {cieError.is ? (\r\n \r\n \r\n {t('error.cie.message')}
    {cieError.text}
    \r\n \r\n
    \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n \r\n {t(\"landingPage.text\")}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n}\r\n\r\nexport default LandingPageScreen;\r\n","import { Col, Container, Row } from \"react-bootstrap\";\r\nimport { useTranslation, Trans } from \"react-i18next\";\r\n\r\nfunction LegalAndPrivacyScreen() {\r\n const { t } = useTranslation();\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 \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default LegalAndPrivacyScreen;\r\n","import React, { Suspense } from \"react\";\r\nimport Header from \"./components/Header/Header\";\r\nimport Footer from \"./components/Footer/Footer\";\r\nimport Navbar from \"./components/Navbar/Navbar\";\r\nimport {\r\n BrowserRouter as Router,\r\n Routes,\r\n Route,\r\n Navigate,\r\n useLocation,\r\n Outlet\r\n} from \"react-router-dom\";\r\nimport CieErrorScreen from \"./components/Body/ErrorScreen/CieErrorScreen\";\r\nimport NotFoundScreen from \"./components/Body/ErrorScreen/NotFoundScreen\";\r\nimport HomeScreen from \"./components/Body/HomeScreen/HomeScreen\";\r\nimport FormScreen from \"./components/Body/FormScreen/FormScreen\";\r\nimport DetailScreen from \"./components/Body/DetailScreen/DetailScreen\";\r\nimport MyCommunicationsScreen from \"./components/Body/MyCommunicationsScreen/MyCommunicationsScreen\";\r\nimport CommunicationsScreen from \"./components/Body/MyCommunicationsScreen/CommunicationsScreen\";\r\nimport LandingPageScreen from \"./components/Body/LandingPageScreen/LandingPageScreen\";\r\nimport LegalAndPrivacyScreen from \"./components/Body/LegalAndPrivacyScreen/LegalAndPrivacyScreen\";\r\nimport CookieConsent from \"react-cookie-consent\";\r\nimport { AuthConsumer, AuthProvider } from \"./AuthContext\";\r\nimport { useTranslation, Trans } from \"react-i18next\";\r\nimport ScrollToTop from \"./components/common/ScrollToTop/ScrollToTop\";\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\r\nimport { faTimesCircle } from '@fortawesome/free-solid-svg-icons/faTimesCircle'\r\n\r\nfunction App() {\r\n const { t } = useTranslation();\r\n const { authenticated, admin } = AuthConsumer();\r\n\r\n function RequireAuth({ children }) {\r\n let location = useLocation();\r\n \r\n if (!authenticated) {\r\n // Redirect them to the /login page, but save the current location they were\r\n // trying to go to when they were redirected. This allows us to send them\r\n // along to that page after they login, which is a nicer user experience\r\n // than dropping them off on the home page.\r\n return ;\r\n }\r\n \r\n return children;\r\n }\r\n\r\n function RequireAdminAuth({ children }) {\r\n let location = useLocation();\r\n \r\n if (!authenticated || !admin) {\r\n // Redirect them to the /login page, but save the current location they were\r\n // trying to go to when they were redirected. This allows us to send them\r\n // along to that page after they login, which is a nicer user experience\r\n // than dropping them off on the home page.\r\n return ;\r\n }\r\n \r\n return children;\r\n }\r\n\r\n const cookieConsentRef = React.useRef();\r\n\r\n return (\r\n
    \r\n cookieConsentRef.current.accept()}\r\n declineButtonId=\"btnDeclineCookieConsent\"\r\n declineButtonClasses=\"text-uppercase\"\r\n declineButtonText={t(\"cookie.refuse\")}\r\n flipButtons \r\n >\r\n \r\n

    {t(\"cookie.title\")}

    \r\n \r\n

    {t(\"cookie.description\")}

    \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 \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 );\r\n}\r\n\r\nconst Loader = () => (\r\n
    \r\n
    loading...
    \r\n
    \r\n);\r\n\r\nexport default function WrappedApp() {\r\n return (\r\n }>\r\n \r\n \r\n );\r\n}\r\n","const reportWebVitals = onPerfEntry => {\r\n if (onPerfEntry && onPerfEntry instanceof Function) {\r\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\r\n getCLS(onPerfEntry);\r\n getFID(onPerfEntry);\r\n getFCP(onPerfEntry);\r\n getLCP(onPerfEntry);\r\n getTTFB(onPerfEntry);\r\n });\r\n }\r\n};\r\n\r\nexport default reportWebVitals;\r\n","import i18n from \"i18next\";\r\nimport { initReactI18next } from \"react-i18next\";\r\nimport Backend from 'i18next-http-backend';\r\nimport LanguageDetector from 'i18next-browser-languagedetector';\r\n\r\ni18n\r\n // load translation using http -> see /public/locales\r\n // learn more: https://github.com/i18next/i18next-http-backend\r\n .use(Backend)\r\n // detect user language\r\n // learn more: https://github.com/i18next/i18next-browser-languageDetector\r\n .use(LanguageDetector)\r\n // pass the i18n instance to react-i18next.\r\n .use(initReactI18next)\r\n // init i18next\r\n // for all options read: https://www.i18next.com/overview/configuration-options\r\n .init({\r\n fallbackLng: 'it',\r\n debug: false,\r\n\r\n interpolation: {\r\n escapeValue: false, // not needed for react as it escapes by default\r\n },\r\n react: {\r\n // https://react.i18next.com/latest/trans-component#trans-props\r\n transSupportBasicHtmlNodes: true,\r\n transKeepBasicHtmlNodesFor: [\"br\", \"strong\", \"b\", \"i\", \"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\", \"ul\", \"li\", \"p\", \"a\"]\r\n }\r\n });\r\n\r\nexport default i18n;","// This must be the first line in src/index.js\r\nimport 'react-app-polyfill/ie11';\r\nimport 'react-app-polyfill/stable';\r\nimport '@formatjs/intl-getcanonicallocales/polyfill'\r\nimport '@formatjs/intl-locale/polyfill'\r\nimport '@formatjs/intl-pluralrules/polyfill'\r\nimport '@formatjs/intl-pluralrules/locale-data/en' // locale-data for en\r\nimport '@formatjs/intl-pluralrules/locale-data/it' // locale-data for it\r\n\r\n\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport './styles/index.scss';\r\nimport App from './App';\r\nimport reportWebVitals from './reportWebVitals';\r\n// Importing the Bootstrap CSS\r\n//import 'bootstrap/dist/css/bootstrap.min.css';\r\n//import './styles/couniurg.scss';\r\nimport {AppProvider} from \"./context\";\r\nimport { AuthProvider } from './AuthContext';\r\n\r\n\r\n// import i18n (needs to be bundled ;))\r\nimport './i18n';\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n// If you want to start measuring performance in your app, pass a function\r\n// to log results (for example: reportWebVitals(console.log))\r\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\r\nreportWebVitals();\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"noActive\":\"Navbar_noActive__1Vyur\",\"logoCOCanvas\":\"Navbar_logoCOCanvas__-K2Zr\",\"offcanvas\":\"Navbar_offcanvas__3b5aG\"};"],"sourceRoot":""}