{"version":3,"sources":["styles/global.ts","helpers/history.js","common/api-fake/index.jsx","services/api.ts","services/auth.ts","hooks/auth.tsx","assets/imgs/logos/2025/esquadgroup_cinza.svg","components/Footer/index.tsx","assets/imgs/logos/2025/alumisoft.svg","components/Head/index.tsx","layouts/Private/index.tsx","layouts/Public/index.tsx","routes/Route.tsx","components/Form/Input/index.tsx","helpers/getValidateErrors.ts","helpers/getSingleErrorMessage.js","contexts/toast/toastContext.tsx","pages/SignIn/Login/FormLogin/index.tsx","pages/SignIn/Login/index.tsx","hooks/useResponsive.ts","pages/SignIn/index.tsx","pages/Home/index.tsx","services/participante.service.ts","components/Form/TextArea/index.tsx","pages/SignIn/EsqueceuSuaSenha/index.tsx","assets/imgs/logo-eg.svg","pages/SignIn/MeuPrimeiroAcesso/index.tsx","pages/SignIn/NovaSenha/index.tsx","pages/MinhaConta/index.tsx","components/DataTable/components/TypeTable/components/TypeTableHeader/index.js","components/DataTable/components/TypeTable/components/TypeTableBody/index.js","components/DataTable/components/TypeTable/index.js","components/DataTable/index.js","services/faturamento.ts","components/DataNotFound/index.js","pages/Fatura/index.tsx","contexts/toast/toastErrorContext.tsx","services/faleconosco.ts","pages/Contato/components/index.tsx","pages/Contato/index.tsx","pages/Contrato/index.tsx","services/contrato.service.ts","pages/SolicitarAcesso/index.tsx","pages/CadastrarSenha/index.tsx","assets/imgs/logos/2025/PortaldoCliente.svg","assets/imgs/logos/2025/alumisoft_branco.svg","assets/imgs/logos/2025/preference_branco.svg","assets/imgs/logos/2025/faktory_branco.svg","pages/SelecaoEmpresa/components/btnCompany.tsx","pages/SelecaoEmpresa/index.tsx","pages/SelecaoEmpresa/components/Manutencao/Preference.tsx","pages/SelecaoEmpresa/components/Manutencao/Faktory.tsx","routes/index.tsx","contexts/sweetAlert/alertContext.tsx","hooks/index.tsx","App.tsx","index.tsx"],"names":["GlobalStyle","createGlobalStyle","history","createBrowserHistory","basename","process","createServer","models","empresa","Model","usuario","catalogo","classe","color","beneficiamento","grupo","unidade","vidro","ref","produto","prodimg","libDiversa","seeds","server","create","id","razao","fantasia","cnpj","perfil","nome","email","codigo","descricao","referencia","label","value","linha","status","comum","material","codigoInterno","sigla","tipo","logo","urlImagem","situacao","cor","unidadeItem","unidadeEmbalagem","quantidadeEmbalagem","otimizacaoBarra","ipi","barra1","barra2","barra3","peso","unidadeValorizacao","prenativo","perda","liga","terminal","tempera","wx","jx","wy","jy","perimetroTotal","perimetroTratamento","passo","tipoVidro","espessura","fatorLh","controleSolar","arredondamento","nomeMiniatura","nomeImagem","nomeFichaTecnica","liberacao","sistema","routes","this","namespace","get","TotalObras","ue","TotalPesoObras","TotalObrasPeriodo","data","total","TotalObrasRegiao","regiao","TotalObrasLinha","TotalLinhaPeso","ultimaAtualizacao","totalAtivo","schema","empresas","all","request","string","params","search","RegExp","where","match","post","attrs","JSON","parse","requestBody","usuarios","toLowerCase","result","length","catalogos","find","tipologia","s","dados","icone","classes","colors","beneficiamentos","grupos","unidades","vidros","refs","tipoObj","atualizacao","linhaObj","qp","queryParams","limit","parseInt","lastId","busca","end","filtered","produtos","filter","obj","buscaCodigo","buscaDescricao","buscaTipo","buscaSituacao","toString","buscaStatus","prod","i","prodimgs","internoExterno","fatorSolar","transLumin","transTermica","bloqCalor","reflexaoInterna","reflexaoExterna","ativo","razaoSocial","nomeFantasia","serial","uf","cidade","projetista","pacoteAtualizacao","homologador","pacotes","exclusiva","tabelaPreco","patrocinio","bloqueio","pctLiberado","dataLiberacao","libDiversas","tipoProduto","criacao","shutdown","api","axios","baseURL","defaults","timeout","interceptors","response","use","error","Promise","reject","headers","Authorization","sessionStorage","clear","window","location","href","signIn","login","then","res","AuthContext","createContext","AuthProvider","children","storagedUser","getItem","storagedToken","localUser","useState","user","setUser","a","auth","jwt","token","setItem","stringify","Provider","signed","signOut","useAuth","context","useContext","Error","Footer","className","src","EsquadGroup","target","Head","alt","Logo","height","Dropdown","Toggle","variant","Menu","to","Item","onClick","Navbar","expand","aria-controls","Collapse","Nav","Private","props","style","overflow","Public","Route","isPrivate","Component","component","rest","Layout","render","pathname","Input","name","onlyNumbers","mask","type","inputRef","useRef","useField","fieldName","defaultValue","registerField","useEffect","getValue","current","setValue","clearValue","onKeyPress","e","evt","currentTarget","replace","substring","applyMask","theEvent","event","key","keyCode","which","String","fromCharCode","test","returnValue","preventDefault","onlynumber","blur","getValidationErrors","err","validationErrors","inner","forEach","path","message","getSingleErrorMessage","httpResponse","console","log","ToastContext","ToastContent","title","icon","ToastProvider","notification","toast","info","position","autoClose","hideProgressBar","closeOnClick","pauseOnHover","draggable","progress","undefined","warn","success","FormLogin","responsive","formRef","toastContext","loading","setLoading","handleSubmit","setErrors","Yup","shape","required","senha","validate","abortEarly","onSubmit","Row","Col","xs","sm","md","lg","xl","logoAlumisoft","width","placeholder","Login","setScreen","largura","screen","isMobile","isTablet","isDesktop","isScreenBig","useResponsive","SignIn","Home","participante","setParticipante","endereco","bairro","estado","contatos","map","c","telefone","TextArea","rows","cols","textareaRef","EsqueceuSuaSenha","hundleRecuperarSenha","solicitarAcesso","clearField","MeuPrimeiroAcesso","pId","useParams","setFieldValue","hundlePrimeiroAcesso","matches","min","confirmarSenha","oneOf","idPublico","disabled","NovaSenha","push","hundleAlterarSenha","MinhaConta","setUsuario","minhaConta","reset","senhaAtual","novaSenha","confirmarNovaSenha","justifyContent","alignItems","Button","submitForm","aria-hidden","TypeTableHeader","headerGroups","headerGroup","getHeaderGroupProps","column","rowSpan","colSpan","getHeaderProps","getSortByToggleProps","display","isSorted","isSortedDesc","TableBodyRow","row","getRowProps","cells","cell","getCellProps","whiteSpace","data-label","TypeTableBody","getTableBodyProps","page","prepareRow","index","TypeTable","bordered","Table","striped","hover","size","defaultPropGetter","DataTable","columns","setSelectedRows","initialState","pageIndex","pageSize","paginate","tableRowUpdate","useTable","useSortBy","usePagination","useRowSelect","canPreviousPage","canNextPage","pageOptions","pageCount","gotoPage","nextPage","previousPage","state","selectedRowIds","selectedRowsData","Object","keys","x","Pagination","First","Prev","Next","Last","xmlNotaFiscal","idNotaFiscal","responseType","pdfNotaFiscal","DataNotFound","visible","fontSize","Fatura","DataTableTS","tableData","setTableData","tableLoading","setTableLoading","show","setShow","novo","setNovo","reloadGrid","handleClose","iniciarDownload","useCallback","arquivo","nomeArquivo","downloadUrl","URL","createObjectURL","Blob","link","document","createElement","setAttribute","body","appendChild","click","remove","handleObterBoleto","titulo","idTitulo","format","parseISO","vencimento","locale","pt","toUpperCase","handleObterXMLNofaFiscal","faturamentoService","handleObterNofaFiscal","useMemo","Header","accessor","Cell","original","Intl","NumberFormat","currency","valor","disableSortBy","statusElaboracao","temXMLNFSE","sortBy","desc","Modal","onHide","backdrop","closeButton","Title","Body","ToastErrorContext","msg","idx","ToastErrorProvider","responseError","critico","alerta","informacao","notificationLevel","description","enviar","faleconosco","ContatoCem","textAlign","Contato","toastError","mensagem","assunto","faleconoscoService","Contrato","inicio","fim","codigoContrato","gerenteContaNome","gerenteContaContatoEmail","gerenteContaTelefone","items","SolicitarAcesso","cleanValue","validateCPF","validateCNPJ","form","replaceAll","catch","errors","maxWidth","padding","CadastrarSenha","upperCase","setUpperCase","hasNumber","setHasNumber","hasMin","setHasMin","hasMax","setHasMax","samePassword","setSamePassword","useLocation","useHistory","max","confirmacaoSenha","codigoAcesso","query","URLSearchParams","setTimeout","onChange","password","getFieldValue","ValidateSamePassword","BtnCompany","classBtn","SelectionCompany","PortalCliente","AlumisoftBr","EPrefBr","FaktoryBr","MaintenancEpref","EPref","MaintenancFaktory","Faktory","Routes","exact","SweetAlertContext","alert","SweetAlertProvider","setState","close","confirmEvent","onConfirm","closeEvent","onClose","warning","customClass","confirmBtnBsStyle","showCancel","openAnim","onCancel","cancelBtnText","confirmBtnText","danger","custom","buttons","customButtons","AppProvider","App","ReactDOM","StrictMode","getElementById"],"mappings":"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CED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAGT,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,MAEXC,iBAAkB,CAAC,CACjBC,OAAQ,UACRF,MAAO,IACN,CACDE,OAAQ,MACRF,MAAO,IAGTG,gBAAiB,CAAC,CAChBvD,MAAO,gBACPoD,MAAO,GAET,CACEpD,MAAO,OACPoD,MAAO,IAETI,eAAgB,CAAC,CACfxD,MAAO,gBACPoD,MAAO,OAET,CACEpD,MAAO,OACPoD,MAAO,aAKbR,KAAKE,IAAI,kBAAkB,iBAAM,CAC/B,CACEC,WAAY,MACZC,GAAI,OACJC,eAAgB,KAChBC,kBAAmB,CACjB,CACEC,KAAM,UACNC,MAAO,IAET,CACED,KAAM,UACNC,MAAO,IAET,CACED,KAAM,UACNC,MAAO,IAET,CACED,KAAM,UACNC,MAAO,IAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAGT,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,SACNC,MAAO,KAET,CACED,KAAM,UACNC,MAAO,KAET,CACED,KAAM,UAC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","file":"static/js/main.b779262f.chunk.js","sourcesContent":["import { createGlobalStyle } from 'styled-components';\r\n\r\nimport \"bootstrap/dist/css/bootstrap.css\";\r\n\r\nimport './tabler.min.css'\r\n\r\nimport '../assets/fontawesome/css/all.min.css';\r\n\r\nimport 'react-toastify/dist/ReactToastify.css';\r\n\r\nimport 'react-dual-listbox/lib/react-dual-listbox.css';\r\n\r\nexport const GlobalStyle = createGlobalStyle`\r\n\r\nbody {\r\n background-color: #FDFDFD;\r\n}\r\n\r\na{ color: #616161; }\r\n\r\na:hover{ color: #002846; text-decoration: none; }\r\n\r\n\r\n.font-padrao { font-family: var(--tblr-font-sans-serif) !important; }\r\n.border-none { border:none !important; }\r\n\r\n.d-contents {\r\n display: contents;\r\n}\r\n\r\n.btn i {\r\n height: auto;\r\n}\r\n.btn svg {\r\n height: auto;\r\n width: auto;\r\n margin: 0;\r\n stroke-width: 1.6px;\r\n}\r\n\r\n.btn-eg:hover{\r\n background: #3378A8;\r\n border-color: #3378A8;\r\n}\r\n\r\n.filtro-lateral {\r\n height: 200px;\r\n}\r\n\r\n.border-mof {\r\n border-color: #3C90AD!important;\r\n}\r\n\r\ninput[type=number]::-webkit-inner-spin-button { \r\n -webkit-appearance: none;\r\n \r\n}\r\ninput[type=number] { \r\n -moz-appearance: textfield;\r\n appearance: textfield;\r\n\r\n}\r\n\r\n/* Edge */\r\n::-webkit-input-placeholder { \r\n color: #a7abb1;\r\n}\r\n/* Internet Explorer 10-11 */\r\n:-ms-input-placeholder { \r\n color: #a7abb1;\r\n}\r\n::placeholder {\r\n color: #a7abb1;\r\n}\r\n\r\n/*Navbar*/\r\n.navbar { \r\n text-align: center;\r\n padding-top: 0.5rem;\r\n padding-bottom: 0;\r\n min-height: auto;\r\n}\r\n\r\n.navbar.navbar-eg{\r\n background-color: rgba(255,255,255,1) !important;\r\n border-bottom: 1px solid rgba(101,109,119,.16);\r\n}\r\n\r\n.navbar-light {\r\n background-color: #FFF !important;\r\n color: #2C3955 !important;\r\n}\r\n\r\n.navbar .nav-link {\r\n color: #2C3955 !important;\r\n border-radius: 0 !important;\r\n padding: 0 30px 0 30px !important;\r\n}\r\n\r\n.navbar .active {\r\n border-bottom: solid 2px;\r\n}\r\n\r\n.busca,\r\n.busca form,\r\n.busca form input {\r\n width: 100% !important;\r\n z-index: 1;\r\n}\r\n\r\n.navbar .navbar-brand:focus.busca,\r\n.navbar .navbar-brand:hover.busca {\r\n opacity: 1;\r\n}\r\n\r\n.busca input.form-control {\r\n border: none;\r\n}\r\n\r\n.select-busca button {\r\n background-color: #FFF;\r\n height: 35px;\r\n border: 1px solid rgba(101, 109, 119, .24);\r\n}\r\n\r\n.busca form input {\r\n color: #FFF !important;\r\n background-color: #36435C;\r\n background-image: url(../assets/image/search-solid.svg);\r\n background-repeat: no-repeat;\r\n background-size: 16px;\r\n background-position-y: center;\r\n background-position-x: 0.5rem;\r\n padding-left: 32px;\r\n}\r\n\r\n.busca form input:focus {\r\n color: #2C3955 !important;\r\n}\r\n\r\n.user {\r\n min-height: auto !important;\r\n}\r\n\r\n.notificacao::after,\r\n.carrinho::after {\r\n display: none !important;\r\n}\r\n\r\n.user .btn {\r\n padding: 0 0 0 10px;\r\n}\r\n\r\n.user .btn:focus {\r\n box-shadow: none;\r\n}\r\n\r\n.btn-icon i {\r\n margin: 0 !important;\r\n margin-inline-start: 0 !important;\r\n}\r\n\r\n.user .btn-none {\r\n background: none;\r\n border: none;\r\n color: #000;\r\n}\r\n\r\n.user i.fas {\r\n padding-right: 10px;\r\n}\r\n\r\n.badge {\r\n border-radius: 10px;\r\n font-size: 10px;\r\n height: 1rem;\r\n min-width: 1rem;\r\n}\r\n\r\n.badge-xl {\r\n border-radius: 4px;\r\n font-size: 12px;\r\n height: 1rem;\r\n min-width: 1rem;\r\n padding: 15px;\r\n}\r\n\r\n\r\n.btn .badge {\r\n top: -7px;\r\n left: -18px;\r\n}\r\n\r\n.rdrCalendarWrapper {\r\n box-shadow: 1px 1px 81px rgba(41, 60, 74, .18);\r\n position: absolute;\r\n z-index: 99;\r\n top: 40px;\r\n right: 0;\r\n}\r\n\r\n.btn.data {\r\n height: min-content;\r\n}\r\n\r\n.dropdown-toggle::after {\r\n display: inline-block;\r\n margin-left: .255em;\r\n vertical-align: .255em;\r\n content: \"\";\r\n border-top: .3em solid;\r\n border-right: .3em solid transparent;\r\n border-bottom: 0;\r\n border-left: .3em solid transparent;\r\n transform: none;\r\n}\r\n\r\n.dropdown-link-color {\r\n color: #2C3955 !important;\r\n}\r\n.dropdown-link-color:focus, .dropdown-link-color:hover {\r\n color: inherit;\r\n text-decoration: none;\r\n background-color: rgba(101,109,119,.06);\r\n}\r\n.dropdown-link-color span:active {\r\n color: inherit;\r\n text-decoration: none;\r\n background-color: rgba(101,109,119,.06);\r\n}\r\n\r\n/*Modal*/\r\n.modal-open .modal {\r\n backdrop-filter: blur(4px);\r\n}\r\n\r\n.modal-backdrop {\r\n background-color: #232e3c;\r\n}\r\n\r\n/*Card*/\r\n.card-img-top-fabricante {\r\n position: absolute;\r\n top: 16px;\r\n z-index: 1;\r\n max-height: 50px;\r\n max-width: 100px;\r\n width: auto;\r\n}\r\n\r\n.card-img-top-fabricante-list {\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n margin-top: 16px;\r\n margin-right: 16px;\r\n z-index: 1;\r\n}\r\n\r\n/*Cores MOF*/\r\n.btn-mof {\r\n background-color: #3C90AD;\r\n color: #FFF;\r\n}\r\n\r\n.btn-mof:hover {\r\n background-color: #337991;\r\n color: #FFF;\r\n border-color: rgba(101, 109, 119, .24);\r\n}\r\n\r\n.options {\r\n min-height:320px;\r\n box-shadow: none !important;\r\n}\r\n\r\n.options:focus {\r\n box-shadow: none !important;\r\n}\r\n\r\n.options option {\r\n padding: 5px 5px;\r\n}\r\n\r\n.table .form-check {\r\n margin-top: .5rem;\r\n text-align: center;\r\n}\r\n\r\n.check .form-check-label {\r\n padding:5px 5px 5px 30px;\r\n border: solid 1px rgba(101,109,119,.24) !important;\r\n border-radius: 3px;\r\n}\r\n.check .form-check-input{\r\n position: relative !important;\r\n left: 30px !important;\r\n top:8px;\r\n}\r\n.check .form-check-input:checked+.form-check-label {\r\n z-index: 2 !important;\r\n color: #206bc4 !important;\r\n background: rgba(32,107,196,.04) !important;\r\n border: solid 1px #90b5e2 !important;\r\n border-radius: 3px;\r\n}\r\n/*Modal*/\r\n.modal-header .close {\r\n padding: 1rem 1rem;\r\n margin: -1rem -3rem -1rem auto;\r\n}\r\n\r\n/* Table */\r\n.border-table-side {\r\n border-left: 1px solid #656d7729;\r\n border-right: 1px solid #656d7729;\r\n}\r\n.column-table-1b {\r\n width: auto;\r\n}\r\n.column-table-2b {\r\n width: auto;\r\n}\r\n.column-table-3b {\r\n width: auto;\r\n}\r\n.column-table-4b {\r\n width: auto;\r\n}\r\n@media (min-width: 768px) {\r\n .column-table-1b {\r\n width: 8%;\r\n } \r\n .column-table-2b {\r\n width: 15%;\r\n } \r\n .column-table-3b {\r\n width: 19%;\r\n } \r\n .column-table-4b {\r\n width: 23%;\r\n }\r\n}\r\n@media (min-width: 992px) {\r\n .column-table-1b {\r\n width: 6%;\r\n } \r\n .column-table-2b {\r\n width: 12%;\r\n } \r\n .column-table-3b {\r\n width: 15%;\r\n } \r\n .column-table-4b {\r\n width: 17%;\r\n } \r\n}\r\n\r\n.tabela-liberacao {\r\n font-size: 0.8rem;\r\n}\r\n\r\n/* Form Validation */ \r\n.invalid-feedback {\r\n display: block !important;\r\n width: 100%;\r\n margin-top: 0.25rem;\r\n font-size: 87.5%;\r\n color: #cd201f;\r\n}\r\n\r\n/* Form - Select */\r\n.form-select { \r\n background-color: #fff;\r\n background-image: url(\"data:image/svg+xml,\");\r\n background-repeat: no-repeat;\r\n background-position: right .75rem center;\r\n background-size: 16px 12px; \r\n}\r\n\r\n/* Breadcrumbs */\r\n.breadcrumb-item:hover:not(:last-child) {\r\n text-decoration: underline !important;\r\n cursor: pointer;\r\n}\r\n.breadcrumb-item {\r\n text-transform: capitalize;\r\n}\r\n\r\n.tabProduto{\r\n border: none !important;\r\n}\r\n.tabProduto .nav-link {\r\n border: solid 1px rgba(101,109,119,.24) !important;\r\n border-radius: 3px;\r\n position:relative;\r\n margin-right: 10px;\r\n padding: .5rem 1rem;\r\n}\r\n.tabProduto .nav-link.active {\r\n color: #206bc4 !important;\r\n background: rgba(32,107,196,.04) !important;\r\n border: solid 1px #90b5e2 !important;\r\n border-radius: 3px;\r\n}\r\n/* Alerts */\r\n.alerts .btn {\r\n margin-top: 0.5rem;\r\n}\r\n.alerts h2 {\r\n margin: 0px 0px 0.5em !important;\r\n} \r\n\r\n/* Select Groups*/\r\n.selectgroup {\r\n display: -ms-inline-flexbox;\r\n display: inline-flex;\r\n}\r\n.selectgroup-item {\r\n -ms-flex-positive: 1;\r\n flex-grow: 1;\r\n position: relative;\r\n}\r\n\r\n.selectgroup-item + .selectgroup-item {\r\n margin-left: -1px;\r\n}\r\n\r\n.selectgroup-item:not(:first-child) .selectgroup-button {\r\n border-top-left-radius: 0;\r\n border-bottom-left-radius: 0;\r\n}\r\n\r\n.selectgroup-item:not(:last-child) .selectgroup-button {\r\n border-top-right-radius: 0;\r\n border-bottom-right-radius: 0;\r\n}\r\n\r\n.selectgroup-input {\r\n opacity: 0;\r\n position: absolute;\r\n z-index: -1;\r\n top: 0;\r\n left: 0;\r\n}\r\n\r\n.selectgroup-button {\r\n display: block;\r\n border: 1px solid rgba(0, 40, 100, 0.12);\r\n text-align: center;\r\n padding: 0.282rem 1rem;\r\n position: relative;\r\n cursor: pointer;\r\n border-radius: 3px;\r\n color: #9aa0ac;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n user-select: none;\r\n font-size: 0.9375rem;\r\n line-height: 1.5rem;\r\n min-width: 2.375rem;\r\n}\r\n\r\n.selectgroup-button-icon {\r\n padding-left: .5rem;\r\n padding-right: .5rem;\r\n font-size: 1rem;\r\n}\r\n\r\n.selectgroup-input:checked + .selectgroup-button {\r\n border-color: #467fcf;\r\n z-index: 1;\r\n color: #467fcf;\r\n background: #edf2fa;\r\n}\r\n\r\n.selectgroup-input:focus + .selectgroup-button {\r\n border-color: #467fcf;\r\n z-index: 2;\r\n color: #467fcf;\r\n box-shadow: 0 0 0 2px rgba(70, 127, 207, 0.25);\r\n}\r\n\r\n.selectgroup-pills {\r\n -ms-flex-wrap: wrap;\r\n flex-wrap: wrap;\r\n -ms-flex-align: start;\r\n align-items: flex-start;\r\n}\r\n\r\n.selectgroup-pills .selectgroup-item {\r\n margin-right: .5rem;\r\n -ms-flex-positive: 0;\r\n flex-grow: 0;\r\n}\r\n\r\n.selectgroup-pills .selectgroup-button {\r\n border-radius: 3px !important;\r\n}\r\n\r\n/* List Box */\r\n.rdl-move {\r\n width: fit-content;\r\n align-items: center;\r\n justify-content: center;\r\n color: #232e3c;\r\n background-color: #fff;\r\n border-color: rgba(101,109,119,.24);\r\n white-space: nowrap; \r\n font-weight: 500; \r\n padding: .4375rem 1rem;\r\n font-size: .875rem;\r\n border-radius: 3px;\r\n transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;\r\n}\r\n.rdl-move:hover {\r\n color: #232e3c;\r\n border-color: #a7abb1 !important;\r\n background-color: #f4f6fa !important;\r\n}\r\n.rdl-move-left {\r\n margin-left: auto;\r\n}\r\n.rdl-move-all.rdl-move-left {\r\n order:-1;\r\n margin-bottom: 1rem; \r\n} \r\n.rdl-move-all.rdl-move-right {\r\n margin-bottom: 1rem\r\n} \r\n.rdl-actions {\r\n width: 33.33%;\r\n justify-content: center;\r\n margin: 0;\r\n flex-direction: row;\r\n -ms-flex-direction: row; \r\n}\r\n.rdl-actions-left {\r\n order:0;\r\n margin-right: .25rem\r\n}\r\n.rdl-actions-right {\r\n order:1;\r\n \r\n}\r\n.rdl-control-label {\r\n font-size: .67rem;\r\n font-weight: 600;\r\n text-transform: uppercase;\r\n letter-spacing: .04em;\r\n line-height: 1.6;\r\n color: #656d77; \r\n pointer-events: none;\r\n display: block;\r\n padding: .25rem .75rem !important;\r\n margin-bottom: 0;\r\n white-space: nowrap;\r\n border-bottom: 1px solid rgba(101,109,119,.16);\r\n}\r\n.rdl-list-box { \r\n border: 1px solid rgba(101,109,119,.16);\r\n border-radius: 3px;\r\n box-shadow: rgb(35 46 60 / 4%) 0 2px 4px 0;\r\n background: #ffffff;\r\n}\r\n.rdl-filter-container {\r\n padding: 1rem;\r\n border-bottom: 1px solid rgba(101,109,119,.16); \r\n}\r\n.rdl-filter {\r\n margin: 0;\r\n height: auto; \r\n padding: .4375rem .75rem;\r\n font-size: .875rem;\r\n font-weight: 400;\r\n line-height: 1.4285714;\r\n color: #232e3c;\r\n background-color: #fff;\r\n background-clip: padding-box;\r\n border: 1px solid rgba(101,109,119,.24);\r\n -webkit-appearance: none;\r\n appearance: none;\r\n border-radius: 3px;\r\n transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; \r\n}\r\n.rdl-filter:focus {\r\n color: inherit;\r\n background-color: #fff;\r\n border-color: #90b5e2;\r\n outline: 0;\r\n box-shadow: 0 0 0 0.25rem rgb(32 107 196 / 25%); \r\n}\r\n.rdl-control-container {\r\n padding: 1rem;\r\n}\r\n.rdl-control {\r\n border: none;\r\n padding: 0;\r\n min-height: 320px; \r\n}\r\n.rdl-control:focus { \r\n outline: 0;\r\n box-shadow: none; \r\n}\r\n.rdl-control option { \r\n padding: 5px; \r\n}\r\n\r\n/* Spinner Loading */\r\n.small-box-loader {\r\n min-height: 200px;\r\n}\r\n.medium-box-loader {\r\n min-height: 400px;\r\n}\r\n\r\n/* Pagination */\r\n.pagination .page-item {\r\n font-size: 1.2rem;\r\n}\r\n\r\n.modal-90w {\r\n width: 90%;\r\n max-width: none!important;\r\n}\r\n\r\n.modal-40w {\r\n width: 40%;\r\n max-width: none!important;\r\n}\r\n\r\n/* Custom Switch */\r\n.custom-switch {\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n user-select: none;\r\n cursor: default;\r\n display: -ms-inline-flexbox;\r\n display: inline-flex;\r\n -ms-flex-align: center;\r\n align-items: center;\r\n margin: 0;\r\n padding-left: 0;\r\n cursor: pointer;\r\n}\r\n\r\n.custom-switch-input {\r\n position: absolute;\r\n z-index: -1;\r\n opacity: 0;\r\n}\r\n\r\n.custom-switches-stacked {\r\n display: -ms-flexbox;\r\n display: flex;\r\n -ms-flex-direction: column;\r\n flex-direction: column;\r\n}\r\n\r\n.custom-switches-stacked .custom-switch {\r\n margin-bottom: .5rem;\r\n}\r\n\r\n.custom-switch-indicator {\r\n display: inline-block;\r\n height: 1.25rem;\r\n width: 2.25rem;\r\n background: #e9ecef;\r\n border-radius: 50px;\r\n position: relative;\r\n vertical-align: bottom;\r\n border: 1px solid rgba(0, 40, 100, 0.12);\r\n transition: .3s border-color, .3s background-color;\r\n}\r\n\r\n.custom-switch-indicator:before {\r\n content: '';\r\n position: absolute;\r\n height: calc(1.25rem - 4px);\r\n width: calc(1.25rem - 4px);\r\n top: 1px;\r\n left: 1px;\r\n background: #fff;\r\n border-radius: 50%;\r\n transition: .3s left;\r\n}\r\n\r\n.custom-switch-input:checked ~ .custom-switch-indicator {\r\n background: #467fcf;\r\n}\r\n\r\n.custom-switch-input:checked ~ .custom-switch-indicator:before {\r\n left: calc(1rem + 1px);\r\n}\r\n\r\n.custom-switch-description {\r\n margin-left: .55rem;\r\n color: #6e7687;\r\n transition: .3s color;\r\n font-size: .94rem;\r\n}\r\n\r\n.custom-switch-input:checked ~ .custom-switch-description {\r\n color: #232e3c;\r\n}\r\n\r\n\r\n/* Item - Produtos */\r\n\r\n@keyframes appear {\r\n from {\r\n opacity: 0;\r\n }\r\n to {\r\n opacity: 1;\r\n }\r\n}\r\n.item {\r\n opacity: 1;\r\n animation: appear 300ms ease;\r\n margin-bottom: 1rem;\r\n}\r\n\r\n@keyframes appearInativo {\r\n from {\r\n opacity: 0;\r\n }\r\n to {\r\n opacity: 0.6;\r\n }\r\n}\r\n.item.inativo {\r\n opacity: 0.6;\r\n animation: appearInativo 300ms ease;\r\n margin-bottom: 1rem;\r\n}\r\n.item.inativo .card{\r\n background-color: #f9f9f9;\r\n}\r\n\r\n.block-with-text {\r\n overflow: hidden;\r\n display: -webkit-box;\r\n -webkit-line-clamp: 3;\r\n -webkit-box-orient: vertical;\r\n height: 60px; \r\n}\r\n\r\n/* Tags */\r\n\r\n.tag-produtos {\r\n \r\n}\r\n\r\n.tag-produtos .tag {\r\n font-size: 0.65rem;\r\n padding: 0 .40rem;\r\n line-height: 1.9em;\r\n}\r\n\r\n.tag {\r\n font-size: 0.75rem;\r\n color: #6e7687;\r\n background-color: #e9ecef;\r\n border-radius: 3px;\r\n padding: 0 .5rem;\r\n line-height: 2em;\r\n display: -ms-inline-flexbox;\r\n display: inline-flex;\r\n cursor: default;\r\n font-weight: 400;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n user-select: none;\r\n}\r\n\r\na.tag {\r\n text-decoration: none;\r\n cursor: pointer;\r\n transition: .3s color, .3s background;\r\n}\r\n\r\na.tag:hover {\r\n background-color: rgba(110, 118, 135, 0.2);\r\n color: inherit;\r\n}\r\n\r\n.tag-addon {\r\n display: inline-block;\r\n padding: 0 .5rem;\r\n color: inherit;\r\n text-decoration: none;\r\n background: rgba(0, 0, 0, 0.06);\r\n margin: 0 -.5rem 0 .5rem;\r\n text-align: center;\r\n min-width: 1.5rem;\r\n}\r\n\r\n.tag-addon:last-child {\r\n border-top-right-radius: 3px;\r\n border-bottom-right-radius: 3px;\r\n}\r\n\r\n.tag-addon i {\r\n vertical-align: middle;\r\n margin: 0 -.25rem;\r\n}\r\n\r\na.tag-addon {\r\n text-decoration: none;\r\n cursor: pointer;\r\n transition: .3s color, .3s background;\r\n}\r\n\r\na.tag-addon:hover {\r\n background: rgba(0, 0, 0, 0.16);\r\n color: inherit;\r\n}\r\n\r\n.tag-avatar {\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n border-radius: 3px 0 0 3px;\r\n margin: 0 .5rem 0 -.5rem;\r\n}\r\n\r\n.tag-blue {\r\n background-color: #467fcf;\r\n color: #fff;\r\n}\r\n\r\n.tag-indigo {\r\n background-color: #6574cd;\r\n color: #fff;\r\n}\r\n\r\n.tag-purple {\r\n background-color: #a55eea;\r\n color: #fff;\r\n}\r\n\r\n.tag-pink {\r\n background-color: #f66d9b;\r\n color: #fff;\r\n}\r\n\r\n.tag-red {\r\n background-color: #cd201f;\r\n color: #fff;\r\n}\r\n\r\n.tag-orange {\r\n background-color: #fd9644;\r\n color: #fff;\r\n}\r\n\r\n.tag-yellow {\r\n background-color: #f1c40f;\r\n color: #fff;\r\n}\r\n\r\n.tag-green {\r\n background-color: #5eba00;\r\n color: #fff;\r\n}\r\n\r\n.tag-teal {\r\n background-color: #2bcbba;\r\n color: #fff;\r\n}\r\n\r\n.tag-cyan {\r\n background-color: #17a2b8;\r\n color: #fff;\r\n}\r\n\r\n.tag-white {\r\n background-color: #fff;\r\n color: #fff;\r\n}\r\n\r\n.tag-gray {\r\n background-color: #868e96;\r\n color: #fff;\r\n}\r\n\r\n.tag-gray-dark {\r\n background-color: #343a40;\r\n color: #fff;\r\n}\r\n\r\n.tag-azure {\r\n background-color: #45aaf2;\r\n color: #fff;\r\n}\r\n\r\n.tag-lime {\r\n background-color: #7bd235;\r\n color: #fff;\r\n}\r\n\r\n.tag-primary {\r\n background-color: #467fcf;\r\n color: #fff;\r\n}\r\n\r\n.tag-secondary {\r\n background-color: #868e96;\r\n color: #fff;\r\n}\r\n\r\n.tag-success {\r\n background-color: #5eba00;\r\n color: #fff;\r\n}\r\n\r\n.tag-info {\r\n background-color: #45aaf2;\r\n color: #fff;\r\n}\r\n\r\n.tag-warning {\r\n background-color: #f1c40f;\r\n color: #fff;\r\n}\r\n\r\n.tag-danger {\r\n background-color: #cd201f;\r\n color: #fff;\r\n}\r\n\r\n.tag-light {\r\n background-color: #f8f9fa;\r\n color: #fff;\r\n}\r\n\r\n.tag-dark {\r\n background-color: #343a40;\r\n color: #fff;\r\n}\r\n\r\n.tag-rounded {\r\n border-radius: 50px;\r\n}\r\n\r\n.tag-rounded .tag-avatar {\r\n border-radius: 50px;\r\n}\r\n\r\n.tags {\r\n margin-bottom: -.5rem;\r\n font-size: 0;\r\n}\r\n\r\n.tags > .tag {\r\n margin-bottom: .5rem;\r\n}\r\n\r\n.tags > .tag:not(:last-child) {\r\n margin-right: .5rem;\r\n}\r\n\r\n.selectUsuario {\r\n width: 200px !important;\r\n font-size: .625rem;\r\n font-weight: 600;\r\n text-transform: uppercase;\r\n letter-spacing: .04em;\r\n line-height: 1.6;\r\n color: #656d77;\r\n}\r\n\r\n.card-table.ver-mais tr td:first-child {\r\n min-width: 220px;\r\n}\r\n\r\n.card-conteudo{\r\n min-height: 120px;\r\n}\r\n\r\n.footer{\r\n position: absolute;\r\n bottom:0;\r\n width:100%;\r\n margin:0;\r\n}\r\n\r\n.page-title {\r\n font-size: 24px;\r\n}\r\n.page {\r\n display: -ms-flexbox;\r\n display: flex;\r\n -ms-flex-direction: column;\r\n flex-direction: column;\r\n -ms-flex-pack: center;\r\n justify-content: center;\r\n min-height: 100%;\r\n}\r\n\r\n.page-content {\r\n margin: .75rem 0;\r\n}\r\n\r\n:root {\r\n scroll-behavior: smooth;\r\n}\r\n\r\n.page-main {\r\n -ms-flex: 1 1 auto;\r\n flex: 1 1 auto;\r\n padding-bottom:100px;\r\n}\r\n\r\n.form-label{\r\n font-size:11px\r\n}\r\n\r\n.card-header{\r\n background-color:#f3f3f3\r\n}\r\n\r\n`\r\n","import { createBrowserHistory } from 'history';\r\n\r\nconst history = createBrowserHistory({\r\n basename: process.env.REACT_APP_BASENAME,\r\n});\r\n\r\nexport default history;\r\n","import { createServer, Model } from \"miragejs\"\r\n\r\nconst server = createServer({\r\n\r\n models: {\r\n empresa: Model,\r\n usuario: Model,\r\n catalogo: Model,\r\n classe: Model,\r\n color: Model,\r\n beneficiamento: Model,\r\n grupo: Model,\r\n unidade: Model,\r\n vidro: Model,\r\n ref: Model,\r\n produto: Model,\r\n prodimg: Model,\r\n libDiversa: Model,\r\n },\r\n\r\n seeds(server) {\r\n\r\n server.create(\"empresa\", {\r\n id: 1,\r\n razao: \"Ricardo Ramalho Esquadrias ME\",\r\n fantasia: \"RR Esquadrias\",\r\n cnpj: \"03.000.265/0001-10\",\r\n perfil: \"Sistemista\"\r\n })\r\n server.create(\"empresa\", {\r\n id: 2,\r\n razao: \"Marcelo Coelho Ltda\",\r\n fantasia: \"MC Esquadrias\",\r\n cnpj: \"03.000.265/0001-10\",\r\n perfil: \"Fabricante\"\r\n })\r\n\r\n server.create(\"usuario\", {\r\n id: 1,\r\n nome: \"Antonio Carlos da Silva\",\r\n email: \"antonio@teste.com.br\"\r\n })\r\n server.create(\"usuario\", {\r\n id: 2,\r\n nome: \"Marcos da Silva\",\r\n email: \"marcos@email.com.br\",\r\n })\r\n\r\n server.create(\"catalogo\", {\r\n id: 1,\r\n codigo: \"SUP-JCR200\",\r\n descricao: \"JANELA DE CORRER 2 FOLHAS\",\r\n referencia: { label: \"Mercado\", value: 2 },\r\n linha: { label: \"Suprema\", value: 2 },\r\n status: { label: \"Ativo\", value: 1 },\r\n })\r\n server.create(\"catalogo\", {\r\n id: 2,\r\n codigo: \"GOL3-JCR200\",\r\n descricao: \"JANELA DE CORRER 2 FOLHAS\",\r\n referencia: { label: \"Hydro\", value: 1 },\r\n linha: { label: \"Gold\", value: 1 },\r\n status: { label: \"Ativo\", value: 1 },\r\n })\r\n\r\n server.create(\"classe\", {\r\n id: 1,\r\n codigo: \"CM\",\r\n descricao: \"CONTRAMARCO\",\r\n comum: \"SIM\"\r\n })\r\n server.create(\"classe\", {\r\n id: 2,\r\n codigo: \"ALU_NAC\",\r\n descricao: \"ALUMÍNIO NACIONAL\",\r\n comum: \"SIM\"\r\n })\r\n\r\n server.create(\"color\", {\r\n id: 1,\r\n color: \"Azul\",\r\n material: \"Componentes, Kits, Perfis, Superfícies, Vidros\",\r\n comum: \"SIM\"\r\n })\r\n server.create(\"color\", {\r\n id: 2,\r\n color: \"Branco\",\r\n material: \"Componentes, Kits, Perfis\",\r\n comum: \"NÃO\"\r\n })\r\n\r\n server.create(\"beneficiamento\", {\r\n id: 1,\r\n codigo: \"RAL1001\",\r\n codigoInterno: \"RAL1001-I\",\r\n descricao: \"Pintura Bege\"\r\n })\r\n server.create(\"beneficiamento\", {\r\n id: 2,\r\n codigo: \"ALU_IMP\",\r\n codigoInterno: \"ALU_IMP-I\",\r\n descricao: \"Alumínio Importado\"\r\n })\r\n\r\n server.create(\"grupo\", {\r\n id: 1,\r\n codigo: \"ACES_IMP\",\r\n descricao: \"Acessórios Importados\",\r\n material: \"Componentes, Kits, Perfis\",\r\n comum: \"Não\"\r\n })\r\n server.create(\"grupo\", {\r\n id: 2,\r\n codigo: \"ACES_NAC\",\r\n descricao: \"Acessórios Nacionais\",\r\n material: \"Componentes, Kits, Perfis, Superfícies, Vidros\",\r\n comum: \"Sim\"\r\n })\r\n\r\n server.create(\"unidade\", {\r\n id: 1,\r\n sigla: \"BR\",\r\n descricao: \"Barras\"\r\n })\r\n server.create(\"unidade\", {\r\n id: 2,\r\n sigla: \"KG\",\r\n descricao: \"Kilos\"\r\n })\r\n\r\n server.create(\"vidro\", {\r\n id: 1,\r\n codigo: \"VDFL\",\r\n descricao: \"Duplo Float + Laminado\",\r\n comum: \"Não\"\r\n })\r\n server.create(\"vidro\", {\r\n id: 2,\r\n codigo: \"VDFT\",\r\n descricao: \"Duplo Float + Temperado\",\r\n comum: \"Sim\"\r\n })\r\n\r\n server.create(\"ref\", {\r\n id: 1,\r\n ref: \"Alumiconte\",\r\n tipo: \"Fabricante\",\r\n logo: \"Logo 1\"\r\n })\r\n server.create(\"ref\", {\r\n id: 2,\r\n ref: \"CDA Metais\",\r\n tipo: \"Sistemista\",\r\n logo: \"Logo 2\"\r\n })\r\n\r\n server.create(\"produto\", {\r\n id: 1,\r\n tipo: \"COMPONENTE\",\r\n urlImagem: \"https://cdn.leroymerlin.com.br/products/braco_articulacao_para_maxim_ar_aluminio_300mm_2_pecas_90562626_0001_600x600.jpg\",\r\n status: { label: \"Ativo\", value: 1 },\r\n situacao: { label: \"Disponível para Mercado\", value: \"3\" },\r\n codigo: \"BRA-756-BRA-756-BRA7\",\r\n codigoInterno: \"ESQ-BRA-756\",\r\n referencia: { label: \"Hydro\", value: 1 },\r\n linha: { label: \"Gold\", value: 1 },\r\n grupo: { label: \"Braços\", value: 1 },\r\n cor: { label: \"Branco\", value: 1 },\r\n descricao: \"BRAÇO PARA JANELA MAXIM-AR 600MM BRAÇO PARA JANELA MAXIM-AR 600MM BRAÇO PARA JANELA MAXIM-AR 600MM\",\r\n unidadeItem: { label: \"PC\", value: 1 },\r\n unidadeEmbalagem: { label: \"PAR\", value: 1 },\r\n quantidadeEmbalagem: 2,\r\n otimizacaoBarra: 3000,\r\n ipi: 1.5,\r\n })\r\n\r\n server.create(\"produto\", {\r\n id: 2,\r\n tipo: \"PERFIL\",\r\n urlImagem: \"https://bassoaluminios.com.br/system/posts/foto_principals/000/000/036/original/data?1594217698\",\r\n status: { label: \"Ativo\", value: 1 },\r\n situacao: { label: \"Em edição\", value: 1 },\r\n codigo: \"SU-039\",\r\n codigoInterno: \"ESQ-SU-039\",\r\n referencia: { label: \"HYDRO\", value: 1 },\r\n linha: { label: \"SUPREMA\", value: 1 },\r\n descricao: \"MONTANTE LATERAL FOLHA\",\r\n barra1: \"6000\",\r\n barra2: \"6000\",\r\n barra3: \"\",\r\n peso: \"1.52\",\r\n ipi: 5,\r\n classe: { label: \"Opção 1\", value: 1 },\r\n unidadeValorizacao: { label: \"Opção 1\", value: 1 },\r\n prenativo: { label: \"Opção 1\", value: 1 },\r\n perda: { label: \"Opção 1\", value: 1 },\r\n perfil: { label: \"Sim\", value: 1 },\r\n liga: { label: \"Opção 1\", value: 1 },\r\n terminal: { label: \"Opção 1\", value: 1 },\r\n tempera: \"\",\r\n wx: \"\",\r\n jx: \"\",\r\n wy: \"\",\r\n jy: \"\",\r\n perimetroTotal: \"\",\r\n perimetroTratamento: \"\",\r\n })\r\n server.create(\"produto\", {\r\n id: 3,\r\n tipo: \"SUPERFICIE\",\r\n urlImagem: \"\",\r\n status: { label: \"Ativo\", value: 1 },\r\n situacao: { label: \"Em edição\", value: 1 },\r\n codigo: \"SUP-002\",\r\n codigoInterno: \"ESQ-SUP-002\",\r\n referencia: { label: \"Hydro\", value: 1 },\r\n linha: { label: \"Gold\", value: 1 },\r\n descricao: \"SUPERFICIE ACM\",\r\n cor: { label: \"Opção 1\", value: 1 },\r\n unidadeValorizacao: { label: \"Opção 1\", value: 1 },\r\n ipi: 5,\r\n grupo: { label: \"Opção 1\", value: 1 },\r\n passo: 5,\r\n terminal: { label: \"Opção 1\", value: 1 },\r\n })\r\n server.create(\"produto\", {\r\n id: 4,\r\n tipo: \"VIDRO\",\r\n urlImagem: \"https://cdn.leroymerlin.com.br/products/vidro_por_metro_laminado_incolor_8mm_pilar_glass_89820654_0001_1800x1800.jpg\",\r\n status: { label: \"Ativo\", value: 1 },\r\n situacao: { label: \"Em edição\", value: 1 },\r\n codigo: \"VID-001\",\r\n codigoInterno: \"ESQ-VID-001\",\r\n referencia: { label: \"Guardian\", value: 1 },\r\n linha: { label: \"Ultra Clear\", value: 1 },\r\n descricao: \"VIDRO ULTRA CLEAR\",\r\n tipoVidro: { label: \"Temperado\", value: 1 },\r\n espessura: 6,\r\n peso: 1.25,\r\n fatorLh: 50,\r\n controleSolar: { label: \"Não\", value: 2 },\r\n arredondamento: { label: \"Não\", value: 2 },\r\n ipi: 5,\r\n cor: { label: \"Verde\", value: 1 },\r\n })\r\n server.create(\"produto\", {\r\n id: 5,\r\n tipo: \"COMPONENTE\",\r\n status: { label: \"Ativo\", value: 1 },\r\n situacao: { label: \"Em edição\", value: 1 },\r\n codigo: \"BRA-756\",\r\n codigoInterno: \"ESQ-BRA-756\",\r\n referencia: { label: \"Hydro\", value: 1 },\r\n linha: { label: \"Gold\", value: 1 },\r\n grupo: { label: \"Braços\", value: 1 },\r\n cor: { label: \"Branco\", value: 1 },\r\n descricao: \"BRAÇO PARA JANELA MAXIM-AR 600MM\",\r\n unidadeItem: { label: \"PC\", value: 1 },\r\n unidadeEmbalagem: { label: \"PAR\", value: 1 },\r\n quantidadeEmbalagem: 2,\r\n otimizacaoBarra: 3000,\r\n ipi: \"\",\r\n })\r\n server.create(\"produto\", {\r\n id: 6,\r\n tipo: \"COMPONENTE\",\r\n status: { label: \"Ativo\", value: 1 },\r\n situacao: { label: \"Em edição\", value: 1 },\r\n codigo: \"BRA-756\",\r\n codigoInterno: \"ESQ-BRA-756\",\r\n referencia: { label: \"Hydro\", value: 1 },\r\n linha: { label: \"Gold\", value: 1 },\r\n grupo: { label: \"Braços\", value: 1 },\r\n cor: { label: \"Branco\", value: 1 },\r\n descricao: \"BRAÇO PARA JANELA MAXIM-AR 600MM\",\r\n unidadeItem: { label: \"PC\", value: 1 },\r\n unidadeEmbalagem: { label: \"PAR\", value: 1 },\r\n quantidadeEmbalagem: 2,\r\n otimizacaoBarra: 3000,\r\n ipi: \"\",\r\n })\r\n server.create(\"produto\", {\r\n id: 7,\r\n tipo: \"COMPONENTE\",\r\n status: { label: \"Novo Portfólio\", value: \"7\" },\r\n situacao: { label: \"Indisponível para Mercado\", value: \"4\" },\r\n codigo: \"BRA-756\",\r\n codigoInterno: \"ESQ-BRA-756\",\r\n referencia: { label: \"Hydro\", value: 1 },\r\n linha: { label: \"Gold\", value: 1 },\r\n grupo: { label: \"Braços\", value: 1 },\r\n cor: { label: \"Branco\", value: 1 },\r\n descricao: \"BRAÇO PARA JANELA MAXIM-AR 600MM\",\r\n unidadeItem: { label: \"PC\", value: 1 },\r\n unidadeEmbalagem: { label: \"PAR\", value: 1 },\r\n quantidadeEmbalagem: 2,\r\n otimizacaoBarra: 3000,\r\n ipi: \"\",\r\n })\r\n server.create(\"produto\", {\r\n id: 8,\r\n tipo: \"COMPONENTE\",\r\n status: { label: \"Arquivo Morto\", value: 5 },\r\n situacao: { label: \"Indisponível para Mercado\", value: \"4\" },\r\n codigo: \"SKU-050\",\r\n codigoInterno: \"ESQ-BRA-756\",\r\n referencia: { label: \"Hydro\", value: 1 },\r\n linha: { label: \"Gold\", value: 1 },\r\n grupo: { label: \"Braços\", value: 1 },\r\n cor: { label: \"Branco\", value: 1 },\r\n descricao: \"BRAÇO PARA JANELA MAXIM-AR 600MM\",\r\n unidadeItem: { label: \"PC\", value: 1 },\r\n unidadeEmbalagem: { label: \"PAR\", value: 1 },\r\n quantidadeEmbalagem: 2,\r\n otimizacaoBarra: 3000,\r\n ipi: \"\",\r\n })\r\n server.create(\"produto\", {\r\n id: 9,\r\n tipo: \"COMPONENTE\",\r\n status: { label: \"Ativo\", value: 1 },\r\n situacao: { label: \"Em homologação\", value: \"2\" },\r\n codigo: \"BRA-756\",\r\n codigoInterno: \"ESQ-BRA-756\",\r\n referencia: { label: \"Hydro\", value: 1 },\r\n linha: { label: \"Gold\", value: 1 },\r\n grupo: { label: \"Braços\", value: 1 },\r\n cor: { label: \"Branco\", value: 1 },\r\n descricao: \"BRAÇO PARA JANELA MAXIM-AR 600MM\",\r\n unidadeItem: { label: \"PC\", value: 1 },\r\n unidadeEmbalagem: { label: \"PAR\", value: 1 },\r\n quantidadeEmbalagem: 2,\r\n otimizacaoBarra: 3000,\r\n ipi: \"\",\r\n })\r\n\r\n server.create(\"produto\", {\r\n id: 10,\r\n tipo: \"COMPONENTE\",\r\n status: { label: \"Descontinuado\", value: \"2\" },\r\n situacao: { label: \"Indisponível para Mercado\", value: \"4\" },\r\n codigo: \"BRA-756\",\r\n codigoInterno: \"ESQ-BRA-756\",\r\n referencia: { label: \"Hydro\", value: 1 },\r\n linha: { label: \"Gold\", value: 1 },\r\n grupo: { label: \"Braços\", value: 1 },\r\n cor: { label: \"Branco\", value: 1 },\r\n descricao: \"BRAÇO PARA JANELA MAXIM-AR 600MM\",\r\n unidadeItem: { label: \"PC\", value: 1 },\r\n unidadeEmbalagem: { label: \"PAR\", value: 1 },\r\n quantidadeEmbalagem: 2,\r\n otimizacaoBarra: 3000,\r\n ipi: \"\",\r\n })\r\n\r\n server.create(\"prodimg\", {\r\n id: 1,\r\n nomeMiniatura: \"miniatura.bmp\",\r\n nomeImagem: \"imagem.jpg\",\r\n nomeFichaTecnica: \"fichatecnica.pdf\",\r\n })\r\n server.create(\"prodimg\", {\r\n id: 2,\r\n nomeMiniatura: \"miniatura2.bmp\",\r\n nomeImagem: \"imagem2.jpg\",\r\n nomeFichaTecnica: \"fichatecnica2.pdf\",\r\n })\r\n server.create(\"prodimg\", {\r\n id: 3,\r\n nomeMiniatura: \"miniatura3.bmp\",\r\n nomeImagem: \"imagem3.jpg\",\r\n nomeFichaTecnica: \"fichatecnica3.pdf\",\r\n })\r\n server.create(\"prodimg\", {\r\n id: 4,\r\n nomeMiniatura: \"miniatura4.bmp\",\r\n nomeImagem: \"imagem4.jpg\",\r\n nomeFichaTecnica: \"fichatecnica4.pdf\",\r\n })\r\n\r\n server.create(\"libDiversa\", {\r\n id: 1,\r\n tipo: { label: \"Produtos\", value: \"1\" },\r\n liberacao: { label: \"Alumisoft\", value: \"1\" },\r\n sistema: { label: \"CEM\", value: \"1\" },\r\n referencia: { label: \"Hydro\", value: \"10\" },\r\n })\r\n server.create(\"libDiversa\", {\r\n id: 2,\r\n tipo: { label: \"Aplicabilidades\", value: \"2\" },\r\n liberacao: { label: \"Preference\", value: \"2\" },\r\n sistema: { label: \"Pref Closed\", value: \"4\" },\r\n referencia: { label: \"Perfil Alumínio\", value: \"20\" },\r\n })\r\n\r\n\r\n\r\n },\r\n\r\n routes() {\r\n this.namespace = \"api-fake\";\r\n\r\n this.get(\"/dashboard/prefsuite\", () => [\r\n {\r\n TotalObras: \"547\",\r\n ue: 250.69,\r\n TotalPesoObras: 1254,\r\n TotalObrasPeriodo: [\r\n {\r\n data: \"01/2019\",\r\n total: 150\r\n },\r\n {\r\n data: \"02/2019\",\r\n total: 150\r\n },\r\n {\r\n data: \"03/2019\",\r\n total: 600\r\n },\r\n {\r\n data: \"04/2019\",\r\n total: 550\r\n },\r\n {\r\n data: \"05/2019\",\r\n total: 700\r\n },\r\n {\r\n data: \"06/2019\",\r\n total: 450\r\n },\r\n {\r\n data: \"07/2019\",\r\n total: 500\r\n },\r\n {\r\n data: \"08/2019\",\r\n total: 600\r\n },\r\n {\r\n data: \"09/2019\",\r\n total: 200\r\n },\r\n {\r\n data: \"10/2019\",\r\n total: 742\r\n },\r\n {\r\n data: \"11/2019\",\r\n total: 500\r\n },\r\n {\r\n data: \"12/2019\",\r\n total: 600\r\n },\r\n {\r\n data: \"1/2020\",\r\n total: 300\r\n },\r\n {\r\n data: \"2/2020\",\r\n total: 120\r\n },\r\n {\r\n data: \"3/2020\",\r\n total: 120\r\n },\r\n\r\n {\r\n data: \"4/2020\",\r\n total: 350\r\n },\r\n {\r\n data: \"5/2020\",\r\n total: 500\r\n },\r\n {\r\n data: \"6/2020\",\r\n total: 600\r\n },\r\n {\r\n data: \"7/2020\",\r\n total: 700\r\n },\r\n {\r\n data: \"8/2020\",\r\n total: 340\r\n },\r\n {\r\n data: \"9/2020\",\r\n total: 800\r\n },\r\n {\r\n data: \"10/2020\",\r\n total: 500\r\n },\r\n {\r\n data: \"11/2020\",\r\n total: 450\r\n },\r\n {\r\n data: \"12/2020\",\r\n total: 600\r\n }],\r\n TotalObrasRegiao: [{\r\n regiao: \"Sudeste\",\r\n total: 45\r\n }, {\r\n regiao: \"Sul\",\r\n total: 2\r\n }],\r\n\r\n TotalObrasLinha: [{\r\n linha: \"ESPECIFICA 20\",\r\n total: 1\r\n },\r\n {\r\n linha: \"GOLD\",\r\n total: 1\r\n }],\r\n TotalLinhaPeso: [{\r\n linha: \"ESPECIFICA 20\",\r\n total: 10.04\r\n },\r\n {\r\n linha: \"GOLD\",\r\n total: 43.04\r\n }]\r\n },\r\n ])\r\n\r\n this.get(\"/dashboard/cem\", () => [\r\n {\r\n TotalObras: \"547\",\r\n ue: 250.69,\r\n TotalPesoObras: 2890,\r\n TotalObrasPeriodo: [\r\n {\r\n data: \"01/2019\",\r\n total: 50\r\n },\r\n {\r\n data: \"02/2019\",\r\n total: 60\r\n },\r\n {\r\n data: \"03/2019\",\r\n total: 70\r\n },\r\n {\r\n data: \"04/2019\",\r\n total: 80\r\n },\r\n {\r\n data: \"05/2019\",\r\n total: 150\r\n },\r\n {\r\n data: \"06/2019\",\r\n total: 250\r\n },\r\n {\r\n data: \"07/2019\",\r\n total: 400\r\n },\r\n {\r\n data: \"08/2019\",\r\n total: 450\r\n },\r\n {\r\n data: \"09/2019\",\r\n total: 369\r\n },\r\n {\r\n data: \"10/2019\",\r\n total: 480\r\n },\r\n {\r\n data: \"11/2019\",\r\n total: 498\r\n },\r\n {\r\n data: \"12/2019\",\r\n total: 657\r\n },\r\n {\r\n data: \"1/2020\",\r\n total: 300\r\n },\r\n {\r\n data: \"2/2020\",\r\n total: 120\r\n },\r\n {\r\n data: \"3/2020\",\r\n total: 120\r\n },\r\n\r\n {\r\n data: \"4/2020\",\r\n total: 350\r\n },\r\n {\r\n data: \"5/2020\",\r\n total: 500\r\n },\r\n {\r\n data: \"6/2020\",\r\n total: 460\r\n },\r\n {\r\n data: \"7/2020\",\r\n total: 490\r\n },\r\n {\r\n data: \"8/2020\",\r\n total: 340\r\n },\r\n {\r\n data: \"9/2020\",\r\n total: 200\r\n },\r\n {\r\n data: \"10/2020\",\r\n total: 900\r\n },\r\n {\r\n data: \"11/2020\",\r\n total: 360\r\n },\r\n {\r\n data: \"12/2020\",\r\n total: 1150\r\n }],\r\n TotalObrasRegiao: [{\r\n regiao: \"Sudeste\",\r\n total: 500\r\n },\r\n {\r\n regiao: \"Sul\",\r\n total: 300\r\n },\r\n {\r\n regiao: \"Nordeste\",\r\n total: 950\r\n }],\r\n\r\n TotalObrasLinha: [{\r\n linha: \"ESPECIFICA 20\",\r\n total: 1\r\n },\r\n {\r\n linha: \"GOLD\",\r\n total: 1\r\n }],\r\n TotalLinhaPeso: [{\r\n linha: \"ESPECIFICA 20\",\r\n total: 10.04\r\n },\r\n {\r\n linha: \"GOLD\",\r\n total: 43.04\r\n }]\r\n },\r\n ])\r\n\r\n this.get(\"/mof/dashboard/totais\", () =>\r\n [{\r\n ultimaAtualizacao: \"12/12/2020\",\r\n totalAtivo: 150000.00,\r\n }])\r\n\r\n // Empresas\r\n\r\n this.get(\"/empresas\", (schema) => {\r\n return schema.empresas.all()\r\n })\r\n\r\n this.get(\"/empresas/:string\", (schema, request) => {\r\n let string = request.params.string\r\n var search = new RegExp(string, 'g');\r\n\r\n return schema.empresas.where(empresa => empresa.razao.match(search));\r\n })\r\n\r\n this.post(\"/empresas\", (schema, request) => {\r\n let attrs = JSON.parse(request.requestBody)\r\n\r\n return schema.empresas.create(attrs)\r\n })\r\n\r\n\r\n // Usuários Gerais\r\n\r\n this.get(\"/usuarios\", (schema) => {\r\n return schema.usuarios.all()\r\n })\r\n\r\n this.get(\"/usuarios/:string\", (schema, request) => {\r\n let string = request.params.string.toLowerCase()\r\n var search = new RegExp(string, 'g');\r\n\r\n let result = usuario => usuario.nome.toLowerCase().match(search);\r\n if (schema.usuarios.where(result).length == 0) {\r\n result = usuario => usuario.email.toLowerCase().match(search);\r\n }\r\n\r\n return schema.usuarios.where(result);\r\n })\r\n\r\n\r\n // Catálogos\r\n\r\n this.get(\"/catalogos\", (schema) => {\r\n return schema.catalogos.all()\r\n })\r\n\r\n this.get(\"/catalogos/id/:id\", (schema, request) => {\r\n let id = request.params.id\r\n\r\n return schema.catalogos.find(id)\r\n })\r\n\r\n this.get(\"/catalogos/:string\", (schema, request) => {\r\n let string = request.params.string.toLowerCase()\r\n var search = new RegExp(string, 'g');\r\n\r\n let result = catalogo => catalogo.tipologia.toLowerCase().match(search);\r\n let s = schema.catalogos.where(result);\r\n\r\n if (s.length == 0) {\r\n result = catalogo => catalogo.linha.toLowerCase().match(search);\r\n }\r\n if (s.length == 0) {\r\n result = catalogo => catalogo.referencia.toLowerCase().match(search);\r\n }\r\n\r\n return schema.catalogos.where(result);\r\n })\r\n\r\n\r\n this.get(\"/catalogos/perfis\", () => {\r\n let res = {\r\n dados: [{\r\n id: 1,\r\n icone: '',\r\n codigo: 'VT897',\r\n descricao: 'FOLHA MONTANTE',\r\n referencia: 'PERFIL ALUMINIO',\r\n peso: '1.087'\r\n },\r\n {\r\n id: 2,\r\n icone: '',\r\n codigo: 'ECO103',\r\n descricao: 'BAGUETE QUADRO FIXO',\r\n referencia: 'PERFIL ALUMINIO',\r\n peso: '0.150'\r\n }]\r\n }\r\n \r\n return res;\r\n })\r\n\r\n this.get(\"/catalogos/perfis/selecao\", () => {\r\n let res = {\r\n dados: [{\r\n id: 1,\r\n icone: '',\r\n codigo: 'VT897',\r\n descricao: 'FOLHA MONTANTE',\r\n referencia: 'PERFIL ALUMINIO',\r\n peso: '1.087'\r\n },\r\n {\r\n id: 2,\r\n icone: '',\r\n codigo: 'ECO103',\r\n descricao: 'BAGUETE QUADRO FIXO',\r\n referencia: 'PERFIL ALUMINIO',\r\n peso: '0.150'\r\n }]\r\n }\r\n\r\n return res;\r\n })\r\n\r\n // ClasseID\r\n\r\n this.get(\"/classesid\", (schema) => {\r\n return schema.classes.all()\r\n })\r\n\r\n this.get(\"/classesid/:string\", (schema, request) => {\r\n let string = request.params.string.toLowerCase()\r\n var search = new RegExp(string, 'g');\r\n\r\n let result = classe => classe.codigo.toLowerCase().match(search);\r\n if (schema.classes.where(result).length == 0) {\r\n result = classe => classe.descricao.toLowerCase().match(search);\r\n }\r\n\r\n return schema.classes.where(result);\r\n\r\n })\r\n\r\n // Cores\r\n\r\n this.get(\"/cores\", (schema) => {\r\n return schema.colors.all()\r\n })\r\n\r\n this.get(\"/cores/:string\", (schema, request) => {\r\n let string = request.params.string.toLowerCase()\r\n var search = new RegExp(string, 'g');\r\n\r\n let result = color => color.color.toLowerCase().match(search);\r\n if (schema.colors.where(result).length == 0) {\r\n result = color => color.material.toLowerCase().match(search);\r\n }\r\n if (schema.colors.where(result).length == 0) {\r\n result = color => color.comum.toLowerCase().match(search);\r\n }\r\n\r\n return schema.colors.where(result);\r\n\r\n })\r\n\r\n // Beneficiamento\r\n\r\n this.get(\"/beneficiamento\", (schema) => {\r\n return schema.beneficiamentos.all()\r\n })\r\n\r\n this.get(\"/beneficiamento/:string\", (schema, request) => {\r\n let string = request.params.string.toLowerCase()\r\n var search = new RegExp(string, 'g');\r\n\r\n let result = beneficiamento => beneficiamento.codigo.toLowerCase().match(search);\r\n if (schema.beneficiamentos.where(result).length == 0) {\r\n result = beneficiamento => beneficiamento.descricao.toLowerCase().match(search);\r\n }\r\n\r\n return schema.beneficiamentos.where(result);\r\n\r\n })\r\n\r\n // Grupo\r\n\r\n\r\n this.get(\"/grupos\", (schema) => {\r\n return schema.grupos.all()\r\n })\r\n\r\n this.get(\"/grupos/:string\", (schema, request) => {\r\n let string = request.params.string.toLowerCase()\r\n var search = new RegExp(string);\r\n\r\n let result = grupo => grupo.codigo.toLowerCase().match(search);\r\n if (schema.grupos.where(result).length == 0) {\r\n result = grupo => grupo.descricao.toLowerCase().match(search);\r\n }\r\n\r\n return schema.grupos.where(result);\r\n\r\n })\r\n\r\n // UNIDADE\r\n\r\n\r\n this.get(\"/unidades\", (schema) => {\r\n return schema.unidades.all()\r\n })\r\n\r\n this.get(\"/unidades/:string\", (schema, request) => {\r\n let string = request.params.string.toLowerCase()\r\n var search = new RegExp(string);\r\n\r\n let result = unidade => unidade.sigla.toLowerCase().match(search);\r\n if (schema.unidades.where(result).length == 0) {\r\n result = unidade => unidade.descricao.toLowerCase().match(search);\r\n }\r\n\r\n return schema.unidades.where(result);\r\n\r\n })\r\n\r\n\r\n // VIDRO\r\n\r\n\r\n this.get(\"/tiposDeVidros\", (schema) => {\r\n return schema.vidros.all()\r\n })\r\n\r\n this.get(\"/tiposDeVidros/:string\", (schema, request) => {\r\n let string = request.params.string.toLowerCase()\r\n var search = new RegExp(string);\r\n\r\n let result = vidro => vidro.codigo.toLowerCase().match(search);\r\n if (schema.vidros.where(result).length == 0) {\r\n result = vidro => vidro.descricao.toLowerCase().match(search);\r\n }\r\n\r\n return schema.vidros.where(result);\r\n\r\n })\r\n\r\n\r\n // Referencia\r\n\r\n\r\n this.get(\"/referencias\", (schema) => {\r\n return schema.refs.all()\r\n })\r\n\r\n this.get(\"/referencias/:string\", (schema, request) => {\r\n let string = request.params.string.toLowerCase()\r\n var search = new RegExp(string);\r\n\r\n let result = ref => ref.ref.toLowerCase().match(search);\r\n if (schema.refs.where(result).length == 0) {\r\n result = ref => ref.tipo.toLowerCase().match(search);\r\n }\r\n\r\n return schema.refs.where(result);\r\n\r\n })\r\n\r\n\r\n this.get(\"/referencias/dados\", () => [\r\n {\r\n id: 1,\r\n classe: \"Classe 1\"\r\n },\r\n\r\n {\r\n id: 2,\r\n classe: \"Classe 2\"\r\n },\r\n ])\r\n\r\n\r\n // Referencia Linhas\r\n\r\n this.get(\"/referencias/linhas\", () => [\r\n {\r\n id: 1,\r\n linha: \"Linha 1\",\r\n logo: \"Logo 1\"\r\n },\r\n\r\n {\r\n id: 2,\r\n linha: \"Linha 2\",\r\n logo: \"Logo 2\"\r\n },\r\n ])\r\n\r\n\r\n // Referencia - Linhas - Prenativo\r\n\r\n this.get(\"/referencias/linhas/prenativo\", () => [\r\n {\r\n id: 1,\r\n codigo: \"AUTEM-S\",\r\n descricao: \"AUTEM-SOLIDO\",\r\n unidade: \"KG\",\r\n tipo: \"SÓLIDO\"\r\n },\r\n\r\n {\r\n id: 2,\r\n codigo: \"AUTEM-T\",\r\n descricao: \"AUTEM-TUBULAR\",\r\n unidade: \"KG\",\r\n tipo: \"TUBULAR\"\r\n },\r\n ])\r\n\r\n\r\n // Referencias - Homologação\r\n\r\n this.get(\"/referencias/homologacao\", () => [\r\n {\r\n id: 1,\r\n tipo: \"Referência\",\r\n tipoObj: { label: \"Referência\", value: 1 },\r\n // linha: 'Suprema',\r\n // linhaObj: { label: \"Suprema\", value: 1 },\r\n atualizacao: '12/07/21 - 13:25'\r\n },\r\n {\r\n id: 2,\r\n tipo: \"Linha\",\r\n tipoObj: { label: \"Linha\", value: 2 },\r\n linha: 'Gold',\r\n linhaObj: { label: \"Gold\", value: 2 },\r\n atualizacao: '13/07/21 - 13:29'\r\n },\r\n {\r\n id: 3,\r\n tipo: \"Tipologias\",\r\n tipoObj: { label: \"Tipologias\", value: 3 },\r\n linha: 'Linha 45',\r\n linhaObj: { label: \"Linha 45\", value: 3 },\r\n atualizacao: '14/07/21 - 13:29'\r\n },\r\n\r\n ])\r\n\r\n\r\n // Produtos / Componentes \r\n\r\n // this.get(\"/produtos\", (schema) => {\r\n // return schema.produtos.all()\r\n // })\r\n\r\n this.get('/produtos', (schema, request) => {\r\n\r\n let qp = request.queryParams\r\n //let initial = qp.initial\r\n let limit = parseInt(qp.limit)\r\n let lastId = parseInt(qp.lastId)\r\n let busca = qp.busca?.toLowerCase()\r\n let tipo = qp.tipo?.toLowerCase()\r\n let situacao = qp.situacao\r\n let status = qp.status\r\n\r\n let start = lastId\r\n let end = lastId + limit\r\n\r\n let total = schema.produtos.all()\r\n\r\n // let resultCod = prod => prod.busca.toLowerCase().match(busca)\r\n\r\n // let resultTipo = prod => prod.tipo.toLowerCase().match(tipo)\r\n\r\n function search(obj) {\r\n let resObj = obj;\r\n let buscaCodigo = obj.codigo.toLowerCase().match(busca);\r\n let buscaDescricao = obj.descricao.toLowerCase().match(busca);\r\n let buscaTipo = obj.tipo.toLowerCase().match(tipo);\r\n let buscaSituacao = obj.situacao.value.toString().match(situacao);\r\n let buscaStatus = obj.status.value.toString().match(status);\r\n // console.log(buscaSituacao)\r\n\r\n resObj = (buscaCodigo || buscaDescricao) && buscaTipo && buscaSituacao && buscaStatus\r\n\r\n return resObj\r\n }\r\n\r\n let filtered = total.filter(search);\r\n\r\n // let filtered = schema.produtos.where(result)\r\n\r\n // let filtered = schema.produtos.all().slice(start, end)\r\n let final = filtered.filter((prod, i) => {\r\n if (prod.id > lastId && i < end)\r\n return true;\r\n })\r\n\r\n\r\n return {\r\n filtered: final,\r\n total: filtered,\r\n // searchCodigo: search,\r\n // result: result, \r\n }\r\n\r\n\r\n })\r\n\r\n this.get(\"/produtos/:id\", (schema, request) => {\r\n let id = request.params.id\r\n\r\n return schema.produtos.find(id)\r\n })\r\n\r\n\r\n this.get(\"/prodimgs/:id\", (schema, request) => {\r\n let id = request.params.id\r\n\r\n return schema.prodimgs.find(id)\r\n })\r\n\r\n this.get(\"/produtos/outrasCaracteristicas\", () => [\r\n {\r\n id: 1,\r\n nome: \"Teste\",\r\n descricao: \"Teste de descrição\",\r\n },\r\n {\r\n id: 2,\r\n nome: \"Teste 2\",\r\n descricao: \"Teste de descrição 2\",\r\n },\r\n ])\r\n\r\n this.get(\"/produtos/linhasAplicacao\", () => [\r\n {\r\n id: 1,\r\n linha: \"Linha 1\"\r\n },\r\n {\r\n id: 2,\r\n linha: \"Linha 2\"\r\n },\r\n\r\n ])\r\n\r\n this.get(\"/produtos/aplicabilidade\", () => [\r\n {\r\n id: 1,\r\n codigo: \"00001\",\r\n descricao: \"Aplicabilidade 1\",\r\n referencia: \"Referencia 1\"\r\n },\r\n {\r\n id: 2,\r\n codigo: \"00002\",\r\n descricao: \"Aplicabilidade 2\",\r\n referencia: \"Referencia 2\"\r\n },\r\n\r\n ])\r\n\r\n this.get(\"/produtos/composicao\", () => [\r\n {\r\n id: 1,\r\n perfil: \"Perfil 1\",\r\n internoExterno: \"Interno\",\r\n },\r\n {\r\n id: 2,\r\n perfil: \"Perfil 2\",\r\n internoExterno: \"Externo\",\r\n },\r\n ])\r\n\r\n this.get(\"/produtos/produtoCor\", () => [\r\n {\r\n id: 1,\r\n linha: \"Linha 1\",\r\n },\r\n {\r\n id: 2,\r\n linha: \"Linha 2\",\r\n },\r\n ])\r\n\r\n this.get(\"/produtos/vidroCor\", () => [\r\n {\r\n id: 1,\r\n cor: { label: \"Incolor\", value: 1 },\r\n fatorSolar: 20,\r\n transLumin: 20,\r\n transTermica: 20,\r\n bloqCalor: 20,\r\n reflexaoInterna: 10,\r\n reflexaoExterna: 10,\r\n ativo: true,\r\n },\r\n {\r\n id: 2,\r\n cor: { label: \"Verde\", value: 2 },\r\n fatorSolar: 10,\r\n transLumin: 10,\r\n transTermica: 10,\r\n bloqCalor: 10,\r\n reflexaoInterna: 10,\r\n reflexaoExterna: 10,\r\n ativo: false,\r\n },\r\n\r\n\r\n ])\r\n\r\n\r\n // Liberações\r\n\r\n this.get(\"/liberacoes/alumisoft\", () => {\r\n\r\n let res = {\r\n dados: [{\r\n id: 1,\r\n razaoSocial: \"JJ Alumínios Ltda - ME\",\r\n nomeFantasia: \"JJ Alumínios\",\r\n serial: \"CEM30-00000-000A\",\r\n produto: \"CEM\",\r\n uf: \"SP\",\r\n cidade: \"Sorocaba\",\r\n email: \"jjaluminios@teste.com.br\"\r\n },\r\n {\r\n id: 2,\r\n razaoSocial: \"RR Alumínios Ltda - ME\",\r\n nomeFantasia: \"RR Alumínios\",\r\n serial: \"CEM30-00222-000A\",\r\n produto: \"CEM-SM\",\r\n uf: \"SP\",\r\n cidade: \"Ribeirão Preto\",\r\n email: \"rraluminios@teste.com.br\"\r\n }]\r\n }\r\n\r\n return res;\r\n })\r\n\r\n this.get(\"/projetista\", () => [\r\n {\r\n id: 1,\r\n projetista: \"Projetista 1\"\r\n },\r\n {\r\n id: 2,\r\n projetista: \"Projetista 2\"\r\n },\r\n ])\r\n\r\n this.get(\"/pacoteAtualizacao\", () => [\r\n {\r\n id: 1,\r\n referencia: \"Hydro\",\r\n pacoteAtualizacao: \"Pacote 1\",\r\n homologador: \"Sim\"\r\n },\r\n {\r\n id: 2,\r\n referencia: \"Alumiconte\",\r\n pacoteAtualizacao: \"Pacote 2\",\r\n homologador: \"Não\"\r\n }\r\n ])\r\n\r\n this.get('/pacoteReferencia', (schema, request) => {\r\n\r\n let qp = request.queryParams\r\n\r\n let res = {\r\n dados: [{\r\n id: 1,\r\n pacotes: \"Pacote 1\",\r\n exclusiva: \"Não\",\r\n },\r\n {\r\n id: 2,\r\n pacotes: \"Pacote 2\",\r\n exclusiva: \"Sim\",\r\n },\r\n {\r\n id: 3,\r\n pacotes: \"Pacote 3\",\r\n exclusiva: \"Sim\",\r\n },\r\n {\r\n id: 4,\r\n pacotes: \"Pacote 4\",\r\n exclusiva: \"Não\",\r\n },\r\n {\r\n id: 5,\r\n pacotes: \"Pacote 5\",\r\n exclusiva: \"Não\",\r\n },\r\n {\r\n id: 6,\r\n pacotes: \"Pacote 6\",\r\n exclusiva: \"Não\",\r\n },\r\n {\r\n id: 7,\r\n pacotes: \"Pacote 7\",\r\n exclusiva: \"Não\",\r\n },\r\n {\r\n id: 8,\r\n pacotes: \"Pacote 8\",\r\n exclusiva: \"Não\",\r\n },\r\n {\r\n id: 9,\r\n pacotes: \"Pacote 9\",\r\n exclusiva: \"Não\",\r\n },\r\n {\r\n id: 10,\r\n pacotes: \"Pacote 10\",\r\n exclusiva: \"Não\",\r\n },\r\n {\r\n id: 11,\r\n pacotes: \"Pacote 11\",\r\n exclusiva: \"Sim\",\r\n }]\r\n }\r\n\r\n return res;\r\n })\r\n\r\n this.get('/liberacao/tabelaPrecos', (schema, request) => {\r\n\r\n let qp = request.queryParams\r\n\r\n let res = {\r\n dados: [{\r\n id: 1,\r\n tabelaPreco: \"Tabela de Preços - Hydro\",\r\n },\r\n {\r\n id: 2,\r\n tabelaPreco: \"Tabela de Preços - Perfil Alumínio\",\r\n }]\r\n }\r\n\r\n return res\r\n })\r\n\r\n this.get(\"/liberacao/tabelaPrecos/selecionados\", () => [\r\n {\r\n id: 1,\r\n tabelaPreco: \"Tabela de Preços - Hydro\",\r\n },\r\n {\r\n id: 2,\r\n tabelaPreco: \"Tabela de Preços - Perfil Alumínio\",\r\n },\r\n ])\r\n\r\n this.get(\"/liberacao/aplicabilidade\", () => [\r\n {\r\n id: 1,\r\n referencia: \"Hydro\",\r\n },\r\n {\r\n id: 2,\r\n referencia: \"Perfil Alumínio\",\r\n },\r\n ])\r\n\r\n this.get(\"/liberacao/padrao\", () => [\r\n {\r\n id: 1,\r\n liberacao: \"Liberação 1\",\r\n sistema: \"CEM\",\r\n patrocinio: \"Perfil\",\r\n },\r\n {\r\n id: 2,\r\n liberacao: \"Liberação 2\",\r\n sistema: \"CEM Smart\",\r\n patrocinio: \"-\",\r\n },\r\n {\r\n id: 3,\r\n liberacao: \"Liberação 3\",\r\n sistema: \"CEM Mini\",\r\n patrocinio: \"-\",\r\n },\r\n ])\r\n\r\n this.get('/liberacao/preference', () => {\r\n\r\n let res = {\r\n dados: [{\r\n id: 1,\r\n razaoSocial: \"AA Alumínios Ltda - ME\",\r\n nomeFantasia: \"AA Alumínios\",\r\n serial: \"SOKS-DASO-8S9S-AGSF\",\r\n produto: \"Pref Open\",\r\n uf: \"PE\",\r\n cidade: \"Recife\",\r\n email: \"aaaluminios@teste.com.br\"\r\n },\r\n {\r\n id: 2,\r\n razaoSocial: \"TT Alumínios Ltda - ME\",\r\n nomeFantasia: \"TT Alumínios\",\r\n serial: \"CMSI-0AS5-AS58-AASO\",\r\n produto: \"Pref Closed\",\r\n uf: \"SP\",\r\n cidade: \"São José do Rio Preto\",\r\n email: \"rraluminios@teste.com.br\"\r\n }]\r\n }\r\n\r\n return res\r\n })\r\n\r\n this.get(\"/liberacao/preference/atualizacoes\", () => [\r\n {\r\n id: 1,\r\n referencia: \"Hydro\",\r\n bloqueio: \"Padrão\",\r\n },\r\n {\r\n id: 2,\r\n referencia: \"Perfil Alumínio\",\r\n bloqueio: \"Parcial\",\r\n },\r\n {\r\n id: 3,\r\n referencia: \"Alumiconte\",\r\n bloqueio: \"Padrão\",\r\n },\r\n\r\n ])\r\n\r\n this.get(\"/liberacao/diversas\", () => [\r\n {\r\n id: 1,\r\n tipo: \"Produtos\",\r\n liberacao: \"Alumisoft\",\r\n sistema: \"CEM\",\r\n referencia: \"Hydro\",\r\n pctLiberado: \"-\",\r\n dataLiberacao: \"26/08/21 - 13:25\"\r\n },\r\n {\r\n id: 2,\r\n tipo: \"Aplicabilidades\",\r\n liberacao: \"Preference\",\r\n sistema: \"Pref Closed\",\r\n referencia: \"Perfil Alumínio\",\r\n pctLiberado: \"Pacote 2\",\r\n dataLiberacao: \"30/08/21 - 15:31\"\r\n },\r\n ])\r\n\r\n this.get(\"/liberacao/diversas/modal/:id\", (schema, request) => {\r\n\r\n let id = request.params.id\r\n \r\n return schema.libDiversas.find(id)\r\n\r\n })\r\n\r\n // Importar Produtos\r\n\r\n this.get(\"/importar/produtos\", () => [\r\n {\r\n id: 1,\r\n referencia: \"Referêmcia 1\",\r\n tipoProduto: \"Vidro\",\r\n atualizacao: \"24/10/2021\",\r\n situacao: \"Situação 1\",\r\n },\r\n\r\n {\r\n id: 2,\r\n referencia: \"Referência 2\",\r\n tipoProduto: \"Componente\",\r\n atualizacao: \"24/10/2021\",\r\n situacao: \"Situação 2\",\r\n },\r\n ])\r\n\r\n // Importar Tabela de Preço\r\n\r\n this.get(\"/importar/tabelaPreco\", () => [\r\n {\r\n id: 1,\r\n nome: \"Tabela 1\",\r\n referencia: \"Referêmcia 1\",\r\n tipoProduto: \"Vidro\",\r\n atualizacao: \"24/10/2021\",\r\n situacao: \"Situação 1\",\r\n },\r\n\r\n {\r\n id: 2,\r\n nome: \"Tabela 2\",\r\n referencia: \"Referência 2\",\r\n tipoProduto: \"Componente\",\r\n atualizacao: \"24/10/2021\",\r\n situacao: \"Situação 2\",\r\n },\r\n ])\r\n\r\n // Importar Tabela de Preço Modal Nova Tabela\r\n\r\n this.get(\"/importar/tabelaPreco/novaTabela\", () => [\r\n {\r\n id: 1,\r\n nome: \"Tabela 1\",\r\n referencia: \"Referêmcia 1\",\r\n tipoProduto: \"Vidro\",\r\n },\r\n\r\n {\r\n id: 2,\r\n nome: \"Tabela 2\",\r\n referencia: \"Referência 2\",\r\n tipoProduto: \"Componente\",\r\n },\r\n ])\r\n\r\n // Exportar Tabela de Preço\r\n\r\n this.get(\"/exportar/tabelaPreco\", () => [\r\n {\r\n id: 1,\r\n nome: \"Tabela 1\",\r\n referencia: \"Referêmcia 1\",\r\n criacao: \"24/04/2021\",\r\n atualizacao: \"24/04/2021\", \r\n },\r\n\r\n {\r\n id: 2,\r\n nome: \"Tabela 2\",\r\n referencia: \"Referência 2\",\r\n criacao: \"24/05/2021\",\r\n atualizacao: \"25/05/2021\", \r\n },\r\n ])\r\n\r\n },\r\n});\r\n\r\nif (process.env.REACT_APP_API != \"\")\r\n server.shutdown();","import axios from \"axios\";\r\n\r\nconst api = axios.create({\r\n baseURL: process.env.REACT_APP_API,\r\n});\r\n\r\napi.defaults.timeout = 30000;\r\n\r\napi.interceptors.response.use(\r\n function (response) {\r\n return response;\r\n },\r\n function (error) {\r\n if (401 === error?.response?.status) { \r\n api.defaults.headers.Authorization = '';\r\n sessionStorage.clear();\r\n window.location.href = \"/\";\r\n } else {\r\n return Promise.reject(error);\r\n }\r\n }\r\n);\r\n\r\nexport default api;","import api from './api';\r\nimport { ISession, ILogin } from '../common/interfaces/signIn.interfaces';\r\n\r\nexport function signIn(login: ILogin): Promise {\r\n return api.post('/login', login).then(res => res.data);\r\n}","import React, { createContext, useContext, useState } from 'react';\r\nimport api from '../services/api';\r\nimport * as auth from \"../services/auth\";\r\nimport { ILogin, ISession } from '../common/interfaces/signIn.interfaces';\r\nimport jwt from \"jwt-decode\";\r\n\r\ninterface AuthContextData {\r\n signed: boolean;\r\n user: ISession | null;\r\n signIn(login: ILogin): Promise;\r\n signOut(): void;\r\n}\r\n\r\nconst AuthContext = createContext({} as AuthContextData);\r\n\r\nconst AuthProvider: React.FC = ({ children }) => { \r\n\r\n const storagedUser = sessionStorage.getItem('@PortalEGCliente:user');\r\n const storagedToken = sessionStorage.getItem('@PortalEGCliente:token');\r\n let localUser: ISession | null = null; \r\n \r\n if (storagedToken && storagedUser) { \r\n localUser = (JSON.parse(storagedUser)) as ISession; \r\n api.defaults.headers.Authorization = `Bearer ${storagedToken}`; \r\n }\r\n \r\n const [user, setUser] = useState((localUser));\r\n\r\n async function signIn(login : ILogin) { \r\n const response = await auth.signIn(login); \r\n let localUser = response;\r\n \r\n const data:any = jwt(response.token);\r\n \r\n api.defaults.headers.Authorization = `Bearer ${response.token}`;\r\n\r\n sessionStorage.setItem('@PortalEGCliente:user', JSON.stringify(response));\r\n sessionStorage.setItem('@PortalEGCliente:token', response.token);\r\n\r\n setUser(localUser);\r\n }\r\n\r\n function signOut() {\r\n setUser(null);\r\n sessionStorage.clear(); \r\n }\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\n\r\nfunction useAuth(): AuthContextData {\r\n const context = useContext(AuthContext);\r\n\r\n if (!context) {\r\n throw new Error(\"hook must be used with an Provider\")\r\n }\r\n\r\n return context;\r\n}\r\n\r\nexport { AuthProvider, useAuth };","export default __webpack_public_path__ + \"static/media/esquadgroup_cinza.2497e935.svg\";","import React from \"react\";\r\nimport EsquadGroup from '../../assets/imgs/logos/2025/esquadgroup_cinza.svg';\r\nconst Footer: React.FC = () => {\r\n\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\n
\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Footer;","export default __webpack_public_path__ + \"static/media/alumisoft.9e632d15.svg\";","\r\nimport React from \"react\";\r\nimport { useAuth } from \"../../hooks/auth\";\r\n\r\nimport { Link } from \"react-router-dom\";\r\n\r\nimport {\r\n Navbar,\r\n Nav,\r\n Dropdown,\r\n} from \"react-bootstrap\";\r\n\r\nimport Logo from \"../../assets/imgs/logos/2025/alumisoft.svg\";\r\n\r\nconst Head: React.FC = () => { \r\n\r\n\r\n const { user, signOut } = useAuth();\r\n\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 {user?.nome}\r\n \r\n \r\n \r\n Minha Conta\r\n \r\n Sair\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\nexport default Head;","import React from \"react\";\r\nimport Footer from \"../../components/Footer\";\r\nimport Head from \"../../components/Head\";\r\n\r\nconst Private: React.FC = (props) => { \r\n return ( \r\n
\r\n \r\n
{props.children}
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default Private;\r\n","import React from 'react';\r\n\r\nconst Public: React.FC = (props) => {\r\n return (\r\n <>{props.children}\r\n );\r\n}\r\n\r\nexport default Public;","import React from 'react';\r\nimport {\r\n Route as ReactDOMRoute,\r\n RouteProps as ReactDOMRouteProps,\r\n Redirect\r\n} from 'react-router-dom';\r\nimport { useAuth } from '../hooks/auth';\r\nimport Private from '../layouts/Private';\r\nimport Public from '../layouts/Public';\r\n\r\ninterface RouteProps extends ReactDOMRouteProps {\r\n isPrivate?: boolean;\r\n component: React.ComponentType;\r\n}\r\n\r\nconst Route: React.FC = ({ isPrivate = false, component:Component, ...rest }) => {\r\n\r\n const { signed } = useAuth(); \r\n \r\n const Layout = isPrivate ? Private : Public; \r\n\r\n return (\r\n {\r\n return isPrivate === signed ? ( \r\n \r\n \r\n \r\n ) : (\r\n \r\n )\r\n }} />\r\n );\r\n}\r\n\r\nexport default Route;","import React, { useEffect, useRef } from 'react'\r\nimport { useField } from '@unform/core'\r\nimport { debug } from 'console';\r\n\r\ninterface Props {\r\n name: string;\r\n label?: string;\r\n onlyNumbers?: boolean;\r\n mask?:string;\r\n}\r\n\r\ntype InputProps = JSX.IntrinsicElements['input'] & Props\r\n\r\nexport default function Input({ name, label, onlyNumbers, mask, type, ...rest }: InputProps) {\r\n\r\n const inputRef = useRef(null)\r\n\r\n const { fieldName, defaultValue, registerField, error } = useField(name)\r\n\r\n useEffect(() => {\r\n registerField({\r\n name: fieldName,\r\n ref: inputRef,\r\n getValue: ref => {\r\n return ref.current.value\r\n },\r\n setValue: (ref, value) => {\r\n ref.current.value = value\r\n },\r\n clearValue: ref => {\r\n ref.current.value = ''\r\n },\r\n })\r\n }, [fieldName, registerField])\r\n\r\n const onlynumber = (evt:any) => {\r\n var theEvent = evt || window.event;\r\n var key = theEvent.keyCode || theEvent.which;\r\n key = String.fromCharCode(key);\r\n var regex = /^[0-9.]+$/;\r\n // var regex = /^[0-9.]+$/;\r\n if (!regex.test(key)) {\r\n theEvent.returnValue = false;\r\n if (theEvent.preventDefault) theEvent.preventDefault();\r\n }\r\n }\r\n\r\n const applyMask = (evt: any) => {\r\n var value = evt.currentTarget.value;\r\n value = value.replace(/\\D/g, '');\r\n\r\n value = value.substring(0, 13);\r\n \r\n if (value.length <= 11) { // CPF\r\n value = value.replace(/(\\d{3})(\\d{3})(\\d{3})(\\d{0,2})/, '$1.$2.$3-$4');\r\n } else { // CNPJ\r\n value = value.replace(/(\\d{2})(\\d{3})(\\d{3})(\\d{4})(\\d{0,2})/, '$1.$2.$3/$4-$5');\r\n }\r\n\r\n evt.currentTarget.value = value;\r\n }\r\n\r\n return (\r\n <>\r\n {\r\n if(mask){\r\n applyMask(e);\r\n }\r\n if (onlyNumbers) {\r\n onlynumber(e);\r\n }\r\n else if ((type !== \"password\") && (e.key === 'Enter' || e.key === \"NumpadEnter\")) {\r\n e.preventDefault();\r\n inputRef.current?.blur();\r\n }\r\n }}\r\n {...rest}\r\n />\r\n {error &&
{error}
}\r\n \r\n )\r\n}","import { ValidationError } from 'yup';\r\n\r\ninterface Errors {\r\n [key: string]: string;\r\n}\r\n\r\nexport default function getValidationErrors(err:any): Errors {\r\n const validationErrors: Errors = {}; \r\n err.inner?.forEach((error: ValidationError) => { \r\n if (error.path) {\r\n validationErrors[error?.path] = error?.message;\r\n }\r\n }); \r\n\r\n return validationErrors;\r\n}","export function getSingleErrorMessage(httpResponse) { \r\n debugger\r\n if (httpResponse.request?.status === 404) {\r\n if (httpResponse.request.response) { \r\n const requestData = JSON.parse(httpResponse.request.response); \r\n const { message } = requestData; \r\n if (message) {\r\n return message;\r\n }\r\n }\r\n }\r\n if (httpResponse.request?.status === 400) {\r\n if (httpResponse.request.response) {\r\n console.log(httpResponse.request.response);\r\n const request = JSON.parse(httpResponse.request.response);\r\n console.log(request);\r\n return request.length > 0 ? request[0].message : request.message;\r\n }\r\n }\r\n return \"Não foi possível logar na sua conta. Estamos com instabilidades no site, por favor, tente mais tarde.\";\r\n }","import React, { createContext } from \"react\";\r\nimport { toast, ToastContainer } from \"react-toastify\";\r\nimport \"./styles.css\"\r\n\r\ninterface Tipo {\r\n notification: any\r\n}\r\n\r\ninterface Notificacao {(\r\n message: any,\r\n type: any,\r\n):any}\r\n\r\nconst ToastContext = createContext({} as Tipo);\r\n\r\nconst ToastContent = ({ title, message, icon }:any) => {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n {title}\r\n
{message}
\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst ToastProvider: React.FC = ({ children }) => {\r\n const notification : Notificacao = (message, type) => {\r\n if (type === \"info\") {\r\n toast.info(\r\n ,\r\n {\r\n position: \"top-right\",\r\n autoClose: 4000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n }\r\n );\r\n } else if (type === \"warn\") {\r\n toast.warn(\r\n ,\r\n {\r\n position: \"top-right\",\r\n autoClose: 4000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n }\r\n );\r\n } else if (type === \"error\") {\r\n toast.error(\r\n ,\r\n {\r\n position: \"top-right\",\r\n autoClose: 8000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n }\r\n );\r\n } else if (type === \"success\") {\r\n toast.success(\r\n ,\r\n {\r\n position: \"top-right\",\r\n autoClose: 4000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n }\r\n );\r\n }\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n {/* */}\r\n \r\n );\r\n};\r\n\r\nexport { ToastProvider, ToastContext };\r\n","import React, { useState, useContext, useRef } from \"react\";\r\n\r\nimport { Form } from '@unform/web';\r\nimport { SubmitHandler, FormHandles } from '@unform/core';\r\n\r\nimport { BsArrowRight, BsFillKeyFill, BsArrowCounterclockwise } from 'react-icons/bs';\r\n\r\nimport Input from \"../../../../components/Form/Input\";\r\nimport * as Yup from 'yup';\r\nimport getValidationErrors from \"../../../../helpers/getValidateErrors\";\r\nimport { getSingleErrorMessage } from \"../../../../helpers/getSingleErrorMessage\";\r\nimport { useAuth } from \"../../../../hooks/auth\";\r\nimport { ToastContext } from \"../../../../contexts/toast/toastContext\";\r\nimport { ILogin } from \"../../../../common/interfaces/signIn.interfaces\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { Col, Row } from \"react-bootstrap\";\r\nimport logoAlumisoft from '../../../../assets/imgs/logos/2025/alumisoft.svg';\r\nimport EsquadGroup from '../../../../assets/imgs/logos/2025/esquadgroup_cinza.svg';\r\nimport \"../login.css\"\r\n\r\ninterface Props {\r\n responsive:boolean\r\n}\r\n\r\nconst FormLogin: React.FC = ({responsive}) => {\r\n // Refs\r\n const formRef = useRef(null);\r\n\r\n //Contexts\r\n const { signIn } = useAuth();\r\n const toastContext = useContext(ToastContext);\r\n\r\n //States\r\n const [loading, setLoading] = useState(false);\r\n\r\n // Handles\r\n const handleSubmit: SubmitHandler = async (login) => {\r\n try {\r\n \r\n setLoading(true);\r\n formRef.current?.setErrors({});\r\n\r\n const schema = Yup.object().shape({\r\n login: Yup.string().required('O campo é obrigatório.'),\r\n senha: Yup.string().required('Digite sua senha.')\r\n });\r\n await schema.validate(login, { abortEarly: false });\r\n\r\n await signIn(login);\r\n\r\n } catch (error) {\r\n if (error instanceof Yup.ValidationError) {\r\n formRef.current?.setErrors(getValidationErrors(error));\r\n }\r\n else {\r\n toastContext.notification(getSingleErrorMessage(error), \"error\");\r\n }\r\n } finally {\r\n setLoading(false);\r\n }\r\n }\r\n\r\n return( \r\n
\r\n \r\n \r\n \r\n \r\n

PORTAL DO CLIENTE

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

Entrar

\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\nexport default FormLogin;","import React, { useEffect, useState } from \"react\";\r\nimport \"./login.css\"\r\n\r\nimport FormLogin from \"./FormLogin\";\r\nimport { Row, Col } from \"reactstrap\";\r\nimport { useResponsive } from \"../../../hooks/useResponsive\";\r\n\r\nconst Login: React.FC = () => {\r\n const [ screen, setScreen ] = useState(\"100%\");\r\n const { isMobile, isTablet, isDesktop, isScreenBig } = useResponsive();\r\n\r\n useEffect(() => {\r\n if(isMobile) setScreen(\"525px\");\r\n else if(isTablet) setScreen(\"590px\");\r\n else if(isDesktop) setScreen(\"600px\");\r\n else if(isScreenBig) setScreen(\"auto\");\r\n else setScreen(\"auto\");\r\n },[isMobile, isTablet, isDesktop, isScreenBig]);\r\n\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\n
\r\n
\r\n

Ao entrar, concordo com os Termos e Políticas da Alumisoft Sistemas.

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default Login;\r\n","export function useResponsive() {\r\n var largura = window.screen.width;\r\n \r\n const isMobile = largura <= 430;\r\n const isTablet = largura >= 768 && largura <= 1023;\r\n const isDesktop = largura >= 1024 && largura <= 1445;\r\n const isScreenBig = largura > 1446;\r\n \r\n return {\r\n\t\tisMobile,\r\n\t\tisTablet,\r\n\t\tisDesktop,\r\n isScreenBig,\r\n\t}\r\n};","import React from \"react\";\r\nimport Login from \"../SignIn/Login\";\r\n\r\nconst SignIn: React.FC = () => {\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport default SignIn;","import React, { useEffect, useState } from \"react\";\r\n\r\nimport * as participanteService from \"../../services/participante.service\";\r\nimport { IParticipante } from \"../../common/interfaces/participante.interface\";\r\n\r\nimport { Col } from \"react-bootstrap\";\r\nimport { Row } from \"reactstrap\";\r\n\r\nconst Home: React.FC = () => {\r\n\r\n const [participante, setParticipante] = useState();\r\n const [loading, setLoading] = useState(true);\r\n\r\n\r\n useEffect(() => {\r\n (async () => {\r\n try {\r\n const response = await participanteService.obterParticipante();\r\n\r\n setParticipante(response);\r\n setLoading(false);\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n })();\r\n }, []);\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n
\r\n

Home

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Dados Cadastrais
\r\n \r\n \r\n
\r\n \r\n
{participante?.razaoSocial}
\r\n
\r\n \r\n \r\n
\r\n \r\n
{participante?.cnpj}
\r\n
\r\n \r\n \r\n
\r\n \r\n
{participante?.endereco}
\r\n
\r\n \r\n \r\n
\r\n \r\n
{participante?.bairro}
\r\n
\r\n \r\n \r\n
\r\n \r\n
{participante?.cidade}
\r\n
\r\n \r\n \r\n
\r\n \r\n
{participante?.estado}
\r\n
\r\n \r\n
\r\n
\r\n
Contatos
\r\n {participante?.contatos.map(c => (\r\n \r\n \r\n \r\n
{c?.nome}
\r\n \r\n \r\n \r\n
{c?.email}
\r\n \r\n \r\n \r\n
{c?.telefone ? c?.telefone : \"-\"}
\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 Home;\r\n","import api from './api';\r\nimport { IParticipante } from '../common/interfaces/participante.interface';\r\n\r\nexport function obterParticipante(): Promise {\r\n return api.get('/participante').then(res => res.data);\r\n}\r\n","import { useRef, useEffect } from 'react'\r\n\r\nimport { useField } from '@unform/core'\r\n\r\ninterface Props {\r\n name: string\r\n label?: string\r\n }\r\n \r\ntype TextAreaProps = JSX.IntrinsicElements['textarea'] & Props;\r\n\r\n\r\nexport default function TextArea({ name, label, rows = 5, cols, ...rest } : TextAreaProps) {\r\n const textareaRef = useRef(null)\r\n const { fieldName, defaultValue = '', registerField, error } = useField(name)\r\n\r\n useEffect(() => {\r\n registerField({\r\n name: fieldName,\r\n ref: textareaRef,\r\n getValue: ref => {\r\n return ref.current.value\r\n },\r\n setValue: (ref, value) => {\r\n ref.current.value = value\r\n },\r\n clearValue: ref => {\r\n ref.current.value = ''\r\n },\r\n })\r\n }, [fieldName, registerField])\r\n\r\n\r\n\r\n return (\r\n
\r\n \r\n\r\n {error &&
{error}
}\r\n
\r\n )\r\n}","import { FormHandles, SubmitHandler } from \"@unform/core\";\r\nimport React, { useContext, useRef, useState } from \"react\";\r\nimport Logo from \"../../../assets/imgs/logos/2025/alumisoft.svg\";\r\nimport api from \"../../../services/api\";\r\n\r\nimport { Input } from \"../../../components/Form\";\r\n\r\nimport { Form } from '@unform/web'\r\nimport * as Yup from 'yup'\r\nimport getValidationErrors from \"../../../helpers/getValidateErrors\";\r\nimport { getSingleErrorMessage } from \"../../../helpers/getSingleErrorMessage\";\r\n\r\nimport { ToastContext } from \"../../../contexts/toast/toastContext\";\r\nimport { ISolicitarAcesso } from \"../../../common/interfaces/solicitarAcesso.interfaces\";\r\nimport { BsArrowCounterclockwise } from \"react-icons/bs\";\r\n\r\nconst EsqueceuSuaSenha: React.FC = () => {\r\n\r\n // Refs\r\n const formRef = useRef(null);\r\n\r\n //Context\r\n const toastContext = useContext(ToastContext);\r\n\r\n //States\r\n const [loading, setLoading] = useState(false);\r\n\r\n //Handles\r\n const hundleRecuperarSenha: SubmitHandler = async (solicitarAcesso) => {\r\n try {\r\n \r\n setLoading(true);\r\n formRef.current?.setErrors({});\r\n\r\n const schema = Yup.object().shape({\r\n email: Yup.string().email('Digite um e-mail válido.').required('O e-mail é obrigatório.'),\r\n });\r\n\r\n await schema.validate(solicitarAcesso, { abortEarly: false });\r\n await api.post(`/acesso/recuperar-senha`, solicitarAcesso);\r\n\r\n formRef.current?.clearField(\"email\");\r\n toastContext.notification(\"Enviamos um e-mail para você redefinir sua senha\", \"info\");\r\n } catch (err) {\r\n if (err instanceof Yup.ValidationError) {\r\n formRef.current?.setErrors(getValidationErrors(err));\r\n }\r\n else {\r\n const message = getSingleErrorMessage(err);\r\n if (message) {\r\n toastContext.notification(message, \"warn\");\r\n } else {\r\n toastContext.notification(\r\n \"Ocorreu um erro ao realizar essa operação.\",\r\n \"error\"\r\n );\r\n }\r\n }\r\n } finally {\r\n setLoading(false);\r\n }\r\n }\r\n\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 Esqueceu sua senha?\r\n

\r\n

\r\n Insira seu e-mail no campo abaixo.\r\n
Você receberá as instruções para redefinir sua senha.\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 EsqueceuSuaSenha;\r\n","export default __webpack_public_path__ + \"static/media/logo-eg.5533ae90.svg\";","import React, { useContext, useEffect, useRef, useState } from \"react\";\r\nimport { Link, useParams } from \"react-router-dom\";\r\nimport Logo from \"../../../assets/imgs/logo-eg.svg\";\r\n\r\nimport api from \"../../../services/api\";\r\n\r\nimport { Input } from \"../../../components/Form\";\r\nimport { Form } from \"@unform/web\";\r\nimport { FormHandles, SubmitHandler } from \"@unform/core\";\r\nimport * as Yup from 'yup'\r\n\r\nimport getValidationErrors from \"../../../helpers/getValidateErrors\";\r\nimport { getSingleErrorMessage } from \"../../../helpers/getSingleErrorMessage\";\r\n\r\nimport { useAuth } from \"../../../hooks/auth\";\r\nimport { ToastContext } from \"../../../contexts/toast/toastContext\";\r\n\r\nimport { ILogin } from \"../../../common/interfaces/signIn.interfaces\";\r\n\r\n\r\nconst MeuPrimeiroAcesso: React.FC = () => {\r\n\r\n //Params\r\n const { pId } = useParams();\r\n\r\n // Refs\r\n const formRef = useRef(null);\r\n\r\n //Contexts\r\n const { signIn } = useAuth();\r\n const toastContext = useContext(ToastContext);\r\n\r\n //States\r\n const [loading, setLoading] = useState(false);\r\n\r\n //Effects\r\n useEffect(() => {\r\n (async () => {\r\n try {\r\n const { email } = await (await api.get(`/login/firstAccess/${pId}`)).data;\r\n\r\n formRef.current?.setFieldValue(\"email\", email);\r\n\r\n } catch (error) {\r\n const message = getSingleErrorMessage(error);\r\n if (message) {\r\n toastContext.notification(message, \"warn\");\r\n } else {\r\n toastContext.notification(\r\n \"Ocorreu um erro ao realizar essa operação.\",\r\n \"error\"\r\n );\r\n }\r\n }\r\n })();\r\n }, []);\r\n\r\n //Handles\r\n const hundlePrimeiroAcesso: SubmitHandler = async (data) => {\r\n try {\r\n setLoading(true);\r\n formRef.current?.setErrors({});\r\n\r\n const schema = Yup.object().shape({\r\n senha: Yup.string()\r\n .matches(\r\n /^(?=.*?[a-z])/,\r\n \"A senha precisa ter pelo menos uma letra.\"\r\n )\r\n .matches(\r\n /^(?=.*?[0-9])/,\r\n \"A senha precisa ter pelo menos um número.\"\r\n )\r\n .min(6, 'A senha precisa ter no mínimo 6 caracteres.')\r\n .required('A senha é obrigatória.'),\r\n confirmarSenha: Yup.string().oneOf([Yup.ref(\"senha\"), null], \"Senha não confere. Digite a mesma senha nos dois campos.\"),\r\n });\r\n\r\n \r\n\r\n await schema.validate(data, { abortEarly: false });\r\n await api.post('/login/firstAccess/', { idPublico: pId, senha: data.senha });\r\n\r\n signIn(data);\r\n\r\n } catch (err) {\r\n formRef.current?.setErrors(getValidationErrors(err));\r\n } finally {\r\n setLoading(false);\r\n }\r\n }\r\n\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 Meu primeiro acesso\r\n

\r\n

\r\n Crie sua senha para acessar o MOF.\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

Sua senha precisa ter:

\r\n
    \r\n
  • Mínimo de 6 caracteres
  • \r\n
  • Uma letra
  • \r\n
  • Um número
  • \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n Ao entrar, concordo com os
Termos e Políticas da Alumisoft Sistemas.\r\n

\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default MeuPrimeiroAcesso;\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\nimport Logo from \"../../../assets/imgs/logo-eg.svg\";\r\nimport { Input } from \"../../../components/Form\";\r\nimport getValidationErrors from \"../../../helpers/getValidateErrors\";\r\nimport * as Yup from 'yup'\r\nimport { FormHandles, SubmitHandler } from \"@unform/core\";\r\nimport api from \"../../../services/api\";\r\nimport { Form } from \"@unform/web\";\r\nimport { useParams } from \"react-router\";\r\nimport { ILogin } from \"../../../common/interfaces/signIn.interfaces\";\r\nimport { useAuth } from \"../../../hooks/auth\";\r\nimport history from \"../../../helpers/history\";\r\n\r\nconst NovaSenha: React.FC = () => {\r\n //Params\r\n const { pId } = useParams();\r\n\r\n //Contexts\r\n const { signIn } = useAuth();\r\n\r\n // Refs\r\n const formRef = useRef(null);\r\n\r\n //States\r\n const [loading, setLoading] = useState(false);\r\n\r\n //Effects\r\n useEffect(() => {\r\n (async () => {\r\n try {\r\n const { email } = await (await api.get(`/login/emailAccess/${pId}`)).data;\r\n\r\n formRef.current?.setFieldValue(\"email\", email);\r\n } catch (error) {\r\n history.push('/');\r\n }\r\n })();\r\n }, []);\r\n\r\n //Handles\r\n const hundleAlterarSenha: SubmitHandler = async (data) => {\r\n try {\r\n setLoading(true);\r\n formRef.current?.setErrors({});\r\n\r\n const schema = Yup.object().shape({\r\n senha: Yup.string()\r\n .matches(\r\n /^(?=.*?[a-z])/,\r\n \"A senha precisa ter pelo menos uma letra.\"\r\n )\r\n .matches(\r\n /^(?=.*?[0-9])/,\r\n \"A senha precisa ter pelo menos um número.\"\r\n )\r\n .min(6, 'A senha precisa ter no mínimo 6 caracteres.')\r\n .required('A senha é obrigatória.'),\r\n confirmarSenha: Yup.string().oneOf([Yup.ref(\"senha\"), null], \"Senha não confere. Digite a mesma senha nos dois campos.\"),\r\n });\r\n\r\n console.log(data);\r\n\r\n await schema.validate(data, { abortEarly: false });\r\n await api.post('/login/ResetPassword/', { idPublico: pId, senha: data.senha });\r\n\r\n signIn(data);\r\n\r\n } catch (err) {\r\n formRef.current?.setErrors(getValidationErrors(err)); \r\n } finally {\r\n setLoading(false);\r\n }\r\n }\r\n\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

Nova Senha

\r\n

\r\n Digite sua nova senha para acessar sua conta\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

Sua senha precisa ter:

\r\n
    \r\n
  • Mínimo de 6 caracteres
  • \r\n
  • Uma letra
  • \r\n
  • Um número
  • \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 NovaSenha;\r\n","import React, { useContext, useState, useRef, useEffect } from \"react\";\r\nimport { Button, Col } from \"react-bootstrap\";\r\nimport { Input } from \"../../components/Form\";\r\nimport { ToastContext } from \"../../contexts/toast/toastContext\";\r\n\r\nimport { Form } from \"@unform/web\";\r\nimport { SubmitHandler, FormHandles } from \"@unform/core\";\r\nimport getValidationErrors from \"../../helpers/getValidateErrors\";\r\n\r\nimport * as Yup from \"yup\";\r\nimport { IMinhaContaList, IMinhaContaForm } from \"../../common/interfaces/minhaConta.interfaces\";\r\nimport api from \"../../services/api\";\r\nimport { getSingleErrorMessage } from \"../../helpers/getSingleErrorMessage\";\r\n\r\nconst MinhaConta: React.FC = () => {\r\n // Refs\r\n const formRef = useRef(null);\r\n\r\n //Context\r\n const toastContext = useContext(ToastContext);\r\n\r\n //States\r\n const [usuario, setUsuario] = useState({} as IMinhaContaList);\r\n\r\n useEffect(() => {\r\n (async () => {\r\n const { data } = await api.get('usuario/minhaConta');\r\n setUsuario(data);\r\n })();\r\n }, []);\r\n\r\n // Handles\r\n const handleSave = () => {\r\n formRef.current?.submitForm();\r\n };\r\n\r\n const handleSubmit: SubmitHandler = async (minhaConta: IMinhaContaForm, { reset }) => {\r\n try {\r\n formRef.current?.setErrors({});\r\n\r\n const message = \"Campo obrigatório\";\r\n const schema = Yup.object().shape({\r\n senhaAtual: Yup.string().required(message),\r\n novaSenha: Yup.string()\r\n .matches(\r\n /^(?=.*?[a-z])/,\r\n \"A senha precisa ter pelo menos uma letra.\"\r\n )\r\n .matches(\r\n /^(?=.*?[0-9])/,\r\n \"A senha precisa ter pelo menos um número.\"\r\n )\r\n .min(6, 'A senha precisa ter no mínimo 6 caracteres.')\r\n .required(message),\r\n confirmarNovaSenha: Yup.string().required(message)\r\n .oneOf([Yup.ref('novaSenha'), null], 'Senha não confere. Digite a mesma senha nos dois campos.')\r\n });\r\n await schema.validate(minhaConta, { abortEarly: false });\r\n\r\n await api.post('conta/alterar-senha', minhaConta);\r\n reset();\r\n toastContext.notification(\"A ação foi concluída.\", \"success\");\r\n } catch (err) {\r\n if (err instanceof Yup.ValidationError) {\r\n formRef.current?.setErrors(getValidationErrors(err));\r\n }\r\n else {\r\n toastContext.notification(getSingleErrorMessage(err), \"error\");\r\n }\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n
\r\n

Minha Conta

\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {usuario.tipo}\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\nexport default MinhaConta;\r\n","import React from \"react\";\r\n\r\nconst TypeTableHeader = ({ headerGroups }) => {\r\n return (\r\n \r\n {headerGroups.map((headerGroup) => (\r\n \r\n {headerGroup.headers.map((column) => (\r\n \r\n {column.render(\"Header\")}\r\n \r\n {column.isSorted ? (\r\n column.isSortedDesc ? (\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 TypeTableHeader;\r\n","import React from \"react\";\r\n\r\nconst TableBodyRow = ({ row, getRowProps }) => {\r\n return (\r\n \r\n {row.cells.map((cell) => {\r\n return (\r\n \r\n {cell.render(\"Cell\")}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst TypeTableBody = ({ getTableBodyProps, page, prepareRow, getRowProps }) => {\r\n return (\r\n \r\n {page.map((row) => {\r\n prepareRow(row);\r\n return ;\r\n })}\r\n \r\n );\r\n};\r\n\r\nexport default TypeTableBody;\r\n","import React from \"react\";\r\n\r\nimport TypeTableHeader from \"./components/TypeTableHeader\";\r\nimport TypeTableBody from \"./components/TypeTableBody\";\r\nimport { Table } from \"react-bootstrap\";\r\n\r\nconst TypeTable = ({ headerGroups, bordered, className, ...rest }) => {\r\n return (\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default TypeTable;\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useEffect } from \"react\";\r\nimport { Col, Pagination, Row } from \"react-bootstrap\";\r\nimport { useTable, useSortBy, usePagination, useRowSelect } from \"react-table\";\r\nimport TypeTable from \"./components/TypeTable\";\r\n\r\nconst defaultPropGetter = () => ({})\r\n\r\nfunction DataTable({\r\n columns,\r\n data,\r\n setSelectedRows,\r\n initialState = { pageIndex: 0, pageSize: 30 },\r\n paginate = true,\r\n tableRowUpdate = null,\r\n bordered = true,\r\n getRowProps = defaultPropGetter,\r\n}) {\r\n const {\r\n getTableBodyProps,\r\n headerGroups,\r\n rows,\r\n prepareRow,\r\n page,\r\n canPreviousPage,\r\n canNextPage,\r\n pageOptions,\r\n pageCount,\r\n gotoPage,\r\n nextPage,\r\n previousPage,\r\n state: { pageIndex, selectedRowIds },\r\n } = useTable(\r\n {\r\n columns,\r\n data,\r\n initialState: initialState,\r\n tableRowUpdate,\r\n },\r\n useSortBy,\r\n usePagination,\r\n useRowSelect\r\n );\r\n\r\n useEffect(() => {\r\n if (setSelectedRows) {\r\n const selectedIds = Object.keys(selectedRowIds);\r\n var selectedRowsData = selectedIds\r\n .map((x) => data[x])\r\n .filter(function (x) {\r\n return x != null;\r\n });\r\n setSelectedRows(selectedRowsData);\r\n }\r\n }, [selectedRowIds]);\r\n\r\n return (\r\n <> \r\n {rows.length > 0 && (\r\n \r\n )}\r\n\r\n {rows.length > 0 && paginate && (\r\n <>\r\n \r\n \r\n \r\n gotoPage(0)}\r\n disabled={!canPreviousPage}\r\n />\r\n previousPage()}\r\n disabled={!canPreviousPage}\r\n />\r\n nextPage()}\r\n disabled={!canNextPage}\r\n />\r\n gotoPage(pageCount - 1)}\r\n disabled={!canNextPage}\r\n />\r\n \r\n \r\n \r\n \r\n Página{\" \"}\r\n \r\n {pageIndex + 1} de {pageOptions.length}\r\n {\" \"}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default DataTable;\r\n","import api from './api';\r\nimport { IFinanceiroTituloReceber } from '../common/interfaces/faturamento.interfaces';\r\n\r\nexport function obterTitulos(): Promise {\r\n return api.get('/faturamento/titulos-receber').then(res => res.data);\r\n}\r\n\r\nexport function gerarBoleto(idTitulo: number): Promise {\r\n return api.get(`/faturamento/gerar-boleto/${idTitulo}`,{ responseType: 'blob' }).then(res => res.data);\r\n}\r\n\r\nexport function xmlNotaFiscal(idNotaFiscal: number): Promise {\r\n return api.get(`/faturamento/download-xml-notafiscal/${idNotaFiscal}`,{ responseType: 'blob' }).then(res => res.data);\r\n}\r\n\r\nexport function pdfNotaFiscal(idNotaFiscal: number): Promise {\r\n return api.get(`/faturamento/download-pdf-notafiscal/${idNotaFiscal}`,{ responseType: 'blob' }).then(res => res.data);\r\n}","import React from \"react\";\r\n\r\nfunction DataNotFound(props) {\r\n return (\r\n <>\r\n {props.visible && (\r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n Nenhum resultado encontrado\r\n

\r\n

\r\n Tente ajustar sua pesquisa ou filtro para encontrar o que procura.\r\n

\r\n {props.children}\r\n
\r\n
\r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default DataNotFound;\r\n","import React, {\r\n useCallback,\r\n useContext,\r\n useEffect,\r\n useMemo,\r\n useState,\r\n useRef,\r\n} from \"react\";\r\nimport { Modal, Button } from \"react-bootstrap\";\r\nimport { FormHandles } from \"@unform/core\";\r\nimport { format, parseISO } from 'date-fns';\r\nimport pt from 'date-fns/locale/pt';\r\n\r\nimport { ToastContext } from \"../../contexts/toast/toastContext\";\r\nimport DataTable from \"../../components/DataTable\";\r\nimport * as faturamentoService from \"../../services/faturamento\";\r\nimport { IFinanceiroTituloReceber } from \"../../common/interfaces/faturamento.interfaces\";\r\nimport DataNotFound from \"../../components/DataNotFound\";\r\nimport { getSingleErrorMessage } from \"../../helpers/getSingleErrorMessage\";\r\n\r\nconst Fatura: React.FC = () => {\r\n // Refs\r\n const formRef = useRef(null);\r\n\r\n //Fields Typed\r\n const DataTableTS: any = DataTable;\r\n\r\n //Context\r\n const toastContext = useContext(ToastContext);\r\n\r\n //States\r\n const [tableData, setTableData] = useState([]);\r\n const [tableLoading, setTableLoading] = useState(false);\r\n const [show, setShow] = useState(false);\r\n const [novo, setNovo] = useState(false);\r\n const [reloadGrid, setReloadGrid] = useState(false);\r\n\r\n //Effects\r\n useEffect(() => {\r\n (async () => {\r\n try {\r\n setTableLoading(true);\r\n\r\n const response = await faturamentoService.obterTitulos();\r\n setTableData(response);\r\n } catch (error) {\r\n toastContext.notification(getSingleErrorMessage(error), \"error\");\r\n } finally {\r\n setTableLoading(false);\r\n }\r\n })();\r\n }, [reloadGrid]);\r\n\r\n //Handles\r\n const handleClose = () => setShow(false);\r\n\r\n const iniciarDownload = useCallback((arquivo: Blob, nomeArquivo: string) => {\r\n const downloadUrl = window.URL.createObjectURL(new Blob([arquivo]));\r\n const link = document.createElement('a');\r\n link.href = downloadUrl;\r\n link.setAttribute('download', nomeArquivo);\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n }, []);\r\n\r\n const handleObterBoleto = useCallback(async (titulo: IFinanceiroTituloReceber) => {\r\n try {\r\n setTableLoading(true);\r\n const response = await faturamentoService.gerarBoleto(titulo.idTitulo);\r\n let nomeArquivo = `${format(parseISO(titulo.vencimento.toString()), 'MMMM', { locale: pt }).toUpperCase()}-${format(parseISO(titulo.vencimento.toString()), 'yyyy', { locale: pt }).toUpperCase()}`;\r\n iniciarDownload(new Blob([response]), `${nomeArquivo}.pdf`);\r\n } catch (error) {\r\n toastContext.notification(getSingleErrorMessage(error), \"error\");\r\n } finally {\r\n setTableLoading(false);\r\n }\r\n }, []);\r\n\r\n const handleObterXMLNofaFiscal = async ({ idNotaFiscal }: IFinanceiroTituloReceber) => {\r\n try {\r\n setTableLoading(true);\r\n const response = await faturamentoService.xmlNotaFiscal(idNotaFiscal);\r\n iniciarDownload(new Blob([response]), `${idNotaFiscal}.xml`);\r\n } catch (error) {\r\n toastContext.notification(getSingleErrorMessage(error), \"error\");\r\n } finally {\r\n setTableLoading(false);\r\n }\r\n };\r\n\r\n const handleObterNofaFiscal = async ({ idNotaFiscal }: IFinanceiroTituloReceber) => {\r\n try {\r\n setTableLoading(true);\r\n const response = await faturamentoService.pdfNotaFiscal(idNotaFiscal);\r\n iniciarDownload(new Blob([response]), `${idNotaFiscal}.pdf`);\r\n } catch (error) {\r\n toastContext.notification(\"Não foi possível gerar a nota fiscal. Tente novamente. Se o erro persistir entre em contato com a Alumisoft.\", \"error\");\r\n } finally {\r\n setTableLoading(false);\r\n }\r\n };\r\n\r\n const handleSave = () => {\r\n formRef.current?.submitForm();\r\n setNovo(false);\r\n };\r\n\r\n\r\n const columns = useMemo(\r\n () => [\r\n {\r\n Header: \"Fatura\",\r\n accessor: \"documento\",\r\n display: \"align-middle\",\r\n Cell: ({ row: { original } }: { row: { original: IFinanceiroTituloReceber } }) => (\r\n {format(parseISO(original.vencimento.toString()), 'MMMM', { locale: pt }).toUpperCase()} - {format(parseISO(original.vencimento.toString()), 'yyyy', { locale: pt }).toUpperCase()}\r\n )\r\n },\r\n {\r\n Header: \"Valor\",\r\n accessor: \"valor\",\r\n display: \"align-middle\",\r\n Cell: ({ row: { original } }: { row: { original: IFinanceiroTituloReceber } }) => (\r\n {new Intl.NumberFormat('pt-BR', { style: 'currency', currency: 'BRL' }).format(original.valor)}\r\n )\r\n },\r\n {\r\n Header: \"Vencimento\",\r\n accessor: \"vencimento\",\r\n display: \"align-middle\",\r\n Cell: ({ row: { original } }: { row: { original: IFinanceiroTituloReceber } }) => (\r\n {format(parseISO(original.vencimento.toString()), 'dd/MM/yyyy', { locale: pt })}\r\n )\r\n },\r\n {\r\n Header: \"Status\",\r\n accessor: \"status\",\r\n display: \"align-middle\",\r\n Cell: ({ row: { original } }: { row: { original: IFinanceiroTituloReceber } }) => (\r\n <>\r\n {original.status === 0 && (Aguardando Pagamento)}\r\n {original.status === 2 && (Pago)}\r\n \r\n )\r\n },\r\n {\r\n Header: \"Estabelecimento\",\r\n accessor: \"estabelecimento\",\r\n display: \"align-middle\"\r\n },\r\n {\r\n Header: \"2º Via\",\r\n accessor: \"boleto\",\r\n disableSortBy: true,\r\n display: \"text-center column-table-2b\",\r\n Cell: ({ row: { original } }: { row: { original: IFinanceiroTituloReceber } }) => (\r\n <>\r\n {original.status === 0 ? (\r\n handleObterBoleto(original)}\r\n >\r\n \r\n \r\n ) : ( - )}\r\n\r\n \r\n ),\r\n },\r\n {\r\n Header: \"Nota Fiscal\",\r\n accessor: \"notafiscal\",\r\n disableSortBy: true,\r\n display: \"text-center column-table-2b\",\r\n Cell: ({ row: { original } }: { row: { original: IFinanceiroTituloReceber } }) => (\r\n <>\r\n {original.statusElaboracao === 1 ? (\r\n handleObterNofaFiscal(original)}\r\n >\r\n \r\n \r\n ) : ( - )}\r\n {original.temXMLNFSE === 1 ? (\r\n handleObterXMLNofaFiscal(original)}\r\n >\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
\r\n

Faturas

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n *Lista dos últimos dois anos\r\n {tableData && (\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 {/* Modal Adicionar Cor */}\r\n \r\n \r\n {novo ? \"Adicionar Cor\" : \"Editar Cor\"}\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 Fatura;\r\n","import React, { createContext } from \"react\";\r\nimport { toast, ToastContainer } from \"react-toastify\";\r\nimport * as Yup from \"yup\";\r\nimport \"./styles.css\"\r\n\r\ninterface Tipo {\r\n notification: any\r\n}\r\ninterface Notificacao {\r\n (\r\n responseError: any\r\n ): any\r\n}\r\n\r\nconst ToastErrorContext = createContext({} as Tipo);\r\n\r\nconst ToastContent = ({ title, message, icon }: any) => {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n {title}\r\n {message.map((msg: any, idx: number) => {\r\n return
{msg}
\r\n }\r\n )}\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst ToastErrorProvider: React.FC = ({ children }) => {\r\n const notification: Notificacao = (responseError) => {\r\n\r\n if (!(responseError instanceof Yup.ValidationError)) { \r\n\r\n let critico: any = [];\r\n let alerta: any = [];\r\n let informacao: any = [];\r\n\r\n console.log(responseError?.request?.response);\r\n if (responseError.request.response) {\r\n const request = JSON.parse(responseError?.request?.response);\r\n\r\n request.forEach((res: any) => {\r\n const { message, notificationLevel } = res;\r\n\r\n if (notificationLevel?.description == 'Critical')\r\n critico.push(message);\r\n else if (notificationLevel?.description == 'Warning')\r\n alerta.push(message);\r\n else if (notificationLevel?.description == 'Information')\r\n informacao.push(message);\r\n else\r\n critico.push(message);\r\n });\r\n\r\n if (alerta != \"\") {\r\n toast.warn(\r\n ,\r\n {\r\n position: \"top-right\",\r\n autoClose: 4000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n }\r\n );\r\n }\r\n if (informacao != \"\") {\r\n toast.info(\r\n ,\r\n {\r\n position: \"top-right\",\r\n autoClose: 4000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n }\r\n );\r\n }\r\n if (critico != \"\") {\r\n toast.error(\r\n ,\r\n {\r\n position: \"top-right\",\r\n autoClose: 4000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n }\r\n );\r\n }\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n {children}\r\n \r\n \r\n );\r\n};\r\n\r\nexport { ToastErrorProvider, ToastErrorContext };\r\n","import api from './api';\r\nimport { IFaleconosco } from '../common/interfaces/faleconosco.interfaces';\r\n\r\nexport function enviar(faleconosco : IFaleconosco) {\r\n return api.post('/faleconosco', faleconosco).then(res => res.data);\r\n}","import { Col, Row } from \"react-bootstrap\";\r\nimport { BsTelephone } from 'react-icons/bs';\r\n\r\n const ContatoCem = () => {\r\n return(\r\n \r\n \r\n \r\n

Nossos canais de comunicação estão abertos de segunda à sexta-feira, das 08:00 às 17:00.

\r\n +55 (15) 3035-8250\r\n


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

Se tiver dúvidas relacionadas ao valor da sua mensalidade, alterações de cadastro, ou qualquer outra informação relacionada ao seu contrato.

\r\n \r\n +55 (15) 99120-7449\r\n \r\n \r\n

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

Se tiver dúvidas sobre segunda via de boleto, ou informações ligadas ao financeiro.

\r\n \r\n
\r\n +55 (15) 99660-1996\r\n
\r\n \r\n \r\n
\r\n +55 (15)98144-7272\r\n
\r\n \r\n \r\n

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

Caso tenha alguma sugestão ou elogio, entre em contato com nossa equipe de Relacionamento.

\r\n \r\n
\r\n +55 (15) 99182-1792\r\n
\r\n \r\n \r\n

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

Caso tenha dificuldades na utilização ou necessite de alguma assistência em nossos produtos, contate nossa equipe de suporte.

\r\n \r\n
\r\n +55 (15) 98176-0877\r\n
\r\n \r\n \r\n \r\n
\r\n )\r\n};\r\n\r\nconst ContatoPref = () => {\r\n return(\r\n \r\n \r\n \r\n

Nossos canais de comunicação estão abertos de segunda à sexta-feira, das 08:00 às 17:00.

\r\n \r\n +55 (15) 99725-0783\r\n \r\n \r\n

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

Se tiver dúvidas relacionadas ao valor da sua mensalidade, alterações de cadastro, ou qualquer outra informação relacionada ao seu contrato.

\r\n \r\n  +55 (15) 99120-7449\r\n \r\n \r\n \r\n +55 (15) 99859-9489\r\n \r\n \r\n

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

Se tiver dúvidas sobre segunda via de boleto, ou informações ligadas ao financeiro.

\r\n \r\n
\r\n +55 (15) 99680-4923\r\n
\r\n \r\n \r\n

\r\n \r\n \r\n
OUVIDORIA
\r\n

Caso tenha alguma sugestão ou elogio, entre em contato com nossa ouvidoria.

\r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nconst ContatoFak = () => {\r\n return(\r\n \r\n \r\n \r\n

Nossos canais de comunicação estão abertos de segunda à sexta-feira, das 08:00 às 17:00.

\r\n

\r\n \r\n +55 (15) 3500-8520\r\n

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

Se tiver dúvidas relacionadas ao valor da sua mensalidade, alterações de cadastro, ou qualquer outra informação relacionada ao seu contrato.

\r\n \r\n  +55 (15) 99138-0134\r\n \r\n \r\n

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

Se tiver dúvidas sobre segunda via de boleto, ou informações ligadas ao financeiro.

\r\n \r\n
\r\n +55 (15) 99609-3219\r\n
\r\n \r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport {\r\n ContatoCem,\r\n ContatoPref,\r\n ContatoFak,\r\n};","import React, { useContext, useState, useRef } from \"react\";\r\nimport { Button, Col, Row } from \"react-bootstrap\";\r\nimport { ToastContext } from \"../../contexts/toast/toastContext\";\r\n\r\nimport { Form } from \"@unform/web\";\r\nimport { SubmitHandler, FormHandles } from \"@unform/core\";\r\nimport getValidationErrors from \"../../helpers/getValidateErrors\";\r\nimport { TextArea } from \"../../components/Form\";\r\nimport './styles.css'\r\nimport * as Yup from \"yup\";\r\n\r\nimport { ToastErrorContext } from \"../../contexts/toast/toastErrorContext\";\r\nimport * as faleconoscoService from \"../../services/faleconosco\";\r\nimport { IFaleconosco } from \"../../common/interfaces/faleconosco.interfaces\";\r\nimport { ContatoCem } from \"./components\";\r\n\r\nconst Contato: React.FC = () => {\r\n\r\n\r\n // Refs\r\n const formRef = useRef(null);\r\n const [loading, setLoading] = useState(false);\r\n\r\n\r\n //Context\r\n const toastContext = useContext(ToastContext);\r\n const toastError = useContext(ToastErrorContext);\r\n\r\n // Handles\r\n const handleSave = () => {\r\n formRef.current?.submitForm();\r\n };\r\n\r\n const handleSubmit: SubmitHandler = async (\r\n faleconosco: IFaleconosco,\r\n { reset }\r\n ) => {\r\n try {\r\n\r\n setLoading(true);\r\n formRef.current?.setErrors({});\r\n\r\n const message = \"Campo obrigatório\";\r\n\r\n const schema = Yup.object().shape({\r\n mensagem: Yup.string().required(message),\r\n });\r\n\r\n await schema.validate(faleconosco, { abortEarly: false });\r\n\r\n let request = {\r\n assunto: \"Portal do Cliente - Dúvidas ou sugestões\",\r\n mensagem: faleconosco.mensagem\r\n }\r\n\r\n await faleconoscoService.enviar(request);\r\n reset();\r\n\r\n //Toast\r\n toastContext.notification(\"A ação foi concluída.\", \"success\");\r\n } catch (err) {\r\n formRef.current?.setErrors(getValidationErrors(err));\r\n toastError.notification(err);\r\n }\r\n finally {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n
\r\n

Contato

\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 Tem alguma dúvida ou sugestão?\r\n

\r\n

\r\n Por favor, entre em contato conosco preenchendo os campos abaixo que retornaremos o quanto antes!\r\n

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