{"version":3,"sources":["app/modules/Auth/__mocks__/userTableMock.js","app/modules/ECommerce/__mocks__/customerTableMock.js","app/modules/Auth/_redux/authRedux.js","app/modules/Auth/_redux/authCrud.js","app/modules/Comun/Departamento/_redux/dptoSlice.js","app/modules/Comun/Localidad/_redux/localidadSlice.js","app/modules/Inscripciones/preInscripcion/_redux/establecimiento/establecimientoSlice.js","components/versionsCheck/_redux/apiVersionSlice.js","app/modules/Inscripciones/preInscripcion/_redux/inscripcion/llamadoSlice.js","app/modules/Inscripciones/preInscripcion/_redux/inscripcion/inscripcionSlice.js","app/modules/Inscripciones/preInscripcion/_redux/aspirante/aspiranteSlice.js","app/modules/Inscripciones/preInscripcion/_redux/pasoUno/pasoUnoSclice.js","app/modules/Inscripciones/preInscripcion/_redux/pasoDos/pasoDosSlice.js","app/modules/Inscripciones/preInscripcion/_redux/pasoTres/pasoTresSlice.js","app/modules/Inscripciones/preInscripcion/_redux/pasoCuatro/pasoCuatroSlice.js","app/modules/Inscripciones/preInscripcion/_redux/pasoCinco/pasoCincoSlice.js","app/modules/Public/Inscripciones/_redux/DetalleInscripcion/DetalleInscripcionSlice.js","redux/rootReducer.js","redux/store.js","utils/authConst.js","services/authService.js","providers/authProvider.js","routes/privateRoute.js","app/modules/Public/Inscripciones/_redux/config.js","app/modules/Public/Inscripciones/_redux/DetalleInscripcion/DetalleInscripcionCrud.js","app/modules/Public/Inscripciones/_redux/DetalleInscripcion/DetalleInscripcionActions.js","app/modules/Comun/SnackBars/SnackBarCustom.js","app/modules/Public/Inscripciones/Form/BuscarInscripcion.js","app/modules/Comun/IconInfo/IconInfo.js","app/modules/Public/Inscripciones/Steps/PrimerPaso.js","app/modules/Public/Inscripciones/Steps/SegundoPaso.js","app/modules/Public/Inscripciones/Steps/TercerPaso.js","app/modules/Public/Inscripciones/Steps/Pasos.js","app/modules/Comun/Cards/MesaAyuda.js","app/modules/Public/Inscripciones/DetalleInscripcion.js","app/modules/Public/home/Landing.js","app/modules/Inscripciones/funciones/validacionDNIS.js","_metronic/countries/Countries.js","app/modules/Inscripciones/preInscripcion/PreInscripcionUIContext.js","app/modules/Inscripciones/preInscripcion/_redux/config.js","app/modules/Inscripciones/preInscripcion/_redux/aspirante/aspiranteCrud.js","app/modules/Inscripciones/preInscripcion/_redux/pasoUno/pasoUnoCrud.js","app/modules/Inscripciones/preInscripcion/_redux/aspirante/aspiranteActions.js","app/modules/Inscripciones/preInscripcion/_redux/pasoUno/pasoUnoActions.js","app/modules/Inscripciones/preInscripcion/components/Volver.js","app/modules/Inscripciones/preInscripcion/components/Continuar.js","app/modules/Inscripciones/preInscripcion/components/Editar.js","app/modules/Inscripciones/preInscripcion/persona/components/Documentacion.js","app/modules/Inscripciones/preInscripcion/persona/components/DatosPersonales.js","app/modules/Inscripciones/preInscripcion/persona/components/Domicilio.js","app/modules/Inscripciones/preInscripcion/persona/Persona.js","app/modules/Inscripciones/preInscripcion/_redux/pasoDos/pasoDosActions.js","app/modules/Comun/Modal/ModalDelete.js","app/modules/Inscripciones/preInscripcion/persona/AgregarOtroResponsable.js","app/modules/Inscripciones/preInscripcion/_redux/pasoDos/pasoDosCrud.js","app/modules/Inscripciones/preInscripcion/establecimiento/Nivel.js","app/modules/Inscripciones/preInscripcion/_redux/establecimiento/establecimientoCrud.js","app/modules/Inscripciones/preInscripcion/_redux/establecimiento/establecimientoActions.js","app/modules/Inscripciones/preInscripcion/_redux/pasoTres/pasoTresActions.js","app/modules/Comun/config.js","app/modules/Comun/Departamento/_redux/dptoActions.js","app/modules/Comun/Departamento/_redux/dptoCrud.js","app/modules/Comun/Localidad/_redux/localidadActions.js","app/modules/Comun/Localidad/_redux/localidadCrud.js","app/modules/Inscripciones/preInscripcion/establecimiento/components/EstablecimientoCard.js","app/modules/Comun/Departamento/selector.jsx","app/modules/Comun/Localidad/selector.jsx","app/modules/Inscripciones/preInscripcion/establecimiento/SeleccionEstablecimiento.js","app/modules/Inscripciones/preInscripcion/_redux/pasoTres/pasoTresCrud.js","app/modules/Inscripciones/preInscripcion/_redux/pasoCuatro/pasoCuatroActions.js","app/modules/Inscripciones/preInscripcion/extras/Extras.js","app/modules/Inscripciones/preInscripcion/_redux/pasoCuatro/pasoCuatroCrud.js","app/modules/Inscripciones/preInscripcion/_redux/pasoCinco/pasoCincoActions.js","app/modules/Inscripciones/preInscripcion/resumen/Resumen.js","app/modules/Inscripciones/preInscripcion/_redux/pasoCinco/pasoCincoCrud.js","app/modules/Inscripciones/preInscripcion/wizard/Nav.js","app/modules/Inscripciones/preInscripcion/PreInscripcionPasos.js","app/modules/Inscripciones/preInscripcion/_redux/inscripcion/inscripcionActions.js","app/modules/Inscripciones/preInscripcion/_redux/inscripcion/inscripcionCrud.js","app/modules/Inscripciones/preInscripcion/components/CardInscripcion.js","app/modules/Inscripciones/preInscripcion/PreInscripcionCard.js","app/modules/Inscripciones/preInscripcion/PreInscripcionPage.js","app/modules/Inscripciones/estadoInscripcion/EstadoInscripcion.js","app/BasePage.js","routes/routes.js","components/auth/callback.jsx","components/auth/logout.jsx","components/auth/logoutCallback.jsx","components/auth/register.jsx","components/auth/silentRenew.jsx","app/Routes.js","components/versionsCheck/_redux/apiVersionCrud.js","components/versionsCheck/_redux/apiVersionActions.js","components/versionsCheck/index.js","app/App.js","index.js","redux/setupAxios.js","_metronic/_assets/js/components/cookie.js","_metronic/_assets/js/components/offcanvas.js","_metronic/i18n/Metronici18n.js","_metronic/i18n/I18nProvider.js","_metronic/i18n/index.js","_metronic/_assets/js/components/util.js","_metronic/layout/_core/LayoutConfig.js","_metronic/layout/components/extras/dropdowns/UserProfileDropdown.js","utils/userInfo.js","_metronic/layout/components/header-mobile/HeaderMobile.js","_metronic/layout/components/footer/Footer.js","_metronic/_assets/js/components/menu.js","_metronic/_assets/js/components/toggle.js","_metronic/layout/components/extras/dropdowns/search/SearchResult.js","_metronic/layout/components/extras/dropdowns/search/SearchDropdown.js","_metronic/layout/components/extras/dropdowns/UserNotificationsDropdown.js","_metronic/layout/components/extras/dropdowns/QuickActionsDropdown.js","_metronic/layout/components/extras/dropdowns/MyCartDropdown.js","_metronic/layout/components/extras/dropdowns/LanguageSelectorDropdown.js","_metronic/layout/components/extras/QuiclUserToggler.js","_metronic/layout/components/header/Topbar.js","_metronic/layout/components/header/header-menu/HeaderMenu.js","_metronic/layout/components/header/header-menu/HeaderMenuWrapper.js","_metronic/layout/components/header/Header.js","_metronic/layout/_core/HTMLClassService.js","_metronic/layout/_core/MetronicLayout.js","_metronic/_assets/js/components/card.js","_metronic/_assets/js/components/scrolltop.js","app/modules/Public/home/Logo-GobiernoCorrientes-300x52.png","_metronic/layout/components/brand/Brand.js","_metronic/layout/components/aside/aside-menu/AsideMenuList.js","_metronic/layout/components/aside/aside-menu/AsideMenu.js","_metronic/layout/components/aside/Aside.js","_metronic/_assets/js/layout/base/header.js","_metronic/_assets/js/layout/base/header-menu.js","_metronic/_assets/js/layout/base/header-topbar.js","_metronic/_assets/js/layout/base/brand.js","_metronic/_assets/js/layout/base/aside.js","_metronic/_assets/js/layout/base/subheader.js","_metronic/_assets/js/layout/base/sticky-card.js","_metronic/_assets/js/layout/base/aside-menu.js","_metronic/_assets/js/layout/base/aside-toggle.js","_metronic/_assets/js/layout/base/footer.js","_metronic/_assets/js/layout/base/content.js","_metronic/_assets/js/layout/extended/scrolltop.js","_metronic/_assets/js/layout/base/stretched-card.js","_metronic/_assets/js/layout/extended/quick-panel.js","_metronic/_assets/js/layout/extended/quick-user.js","_metronic/layout/components/LayoutInit.js","_metronic/layout/components/subheader/components/QuickActions.js","_metronic/layout/components/subheader/components/BreadCrumbs.js","_metronic/layout/_core/MetronicSubheader.js","_metronic/layout/components/subheader/SubHeader.js","_metronic/layout/components/extras/offcanvas/QuickPanel.js","_metronic/layout/components/extras/offcanvas/QuickUser.js","_metronic/layout/components/extras/ScrollTop.js","_metronic/layout/components/extras/StickyToolbar.js","_metronic/layout/components/Layout.js","_metronic/layout/components/content/Content.js","_metronic/layout/components/content/ContentRoute.js","_metronic/layout/_core/MetronicSplashScreen.js","_metronic/layout/_core/MaterialThemeProvider.js","_metronic/layout/index.js","_metronic/_partials/controls/code-examples/CodeBlockToolbar.js","_metronic/_partials/controls/Card.js","_metronic/_partials/controls/code-examples-kt/KTCodeBlock.js","_metronic/_partials/controls/code-examples-kt/KTCodeExample.js","_metronic/_partials/controls/AnimateLoading.js","_metronic/_partials/controls/Notice.js","_metronic/_partials/controls/index.js","_metronic/_helpers/AssetsHelpers.js","_metronic/_helpers/RouterHelpers.js","_metronic/_helpers/TablePaginationHelpers.js","_metronic/_helpers/index.js","_metronic/_partials/dropdowns/DropdownMenu1.js","_metronic/_partials/dropdowns/DropdownCustomToggler.js","_metronic/_partials/dropdowns/DropdownTopbarItemToggler.js","_metronic/_partials/dropdowns/index.js"],"names":["toAbsoluteUrl","saga","actionTypes","initialAuthState","user","undefined","authToken","reducer","persistReducer","storage","key","whitelist","state","action","type","payload","actions","takeLatest","loginSaga","put","registerSaga","userRequested","axios","get","data","initialInscripcion","listLoading","actionsLoading","totalCount","entities","departamento","lastError","callTypes","dptoSlice","createSlice","name","initialState","reducers","catchError","error","clientMessage","callType","starCall","departamentosFetched","departamentos","length","localidad","localidadSlice","localidadesFetched","localidades","entitiesAbanderado","entitiesEstatales","hermano","familiar","establecimientoInformacion","establecimientoSlice","establecimientosFetched","establecimientos","establecimientosAbanderadoFetched","establecimientosEstatalesFetched","hermanoFetched","familiarFetched","stateLimpiar","initialApiVersion","apiVersionState","apiVersionSlice","apiVersionFetched","reiniciarDatos","initialLlamado","llamado","llamadoSlice","llamadosFetched","llamados","inscripcion","inscripcionSlice","inscripcionCreated","push","inscripcionFetched","inscripcionesFetched","inscripciones","inscripcionDeleted","filter","el","inscripcionId","initialAspirantetate","aspiranteInformacion","aspiranteSlice","aspiranteFetched","initialPasoUno","id","inscripcionNumero","responsables","pasoUnoAlCeroInformacion","pasoUnoSlice","pasoUnoAlDosFetched","pasoUnoAlDosInformacion","pasoUnoAlCeroFetched","agregarUnResponsable","posicion","responsableInformacion","quitarResponsables","initialPasoDos","pasoDosAlUnoInformacion","pasoDosSlice","pasoDosAlUnoFetched","pasoDosAlTresFetched","initialPasoTres","pasoTresAlDosInformacion","extrasInformacion","pasoTresSlice","catchErrorPasoTresAlDos","catchErrorPasoTresAlCuatro","pasoTresAlDosFetched","pasoTresAlCuatroFetched","initialPasoCuatro","pasoCuatroAlCincoInformacion","pasoCuatroAlTresInformacion","pasoCuatroSlice","catchErrorPasoCuatroAlCinco","catchErrorCuatroAlTres","pasoCuatroAlCincoFetched","pasoCuatroAlTresFetched","initialPasoCinco","pasoCincoInformacion","pasoCincoSlice","catchErrorPasoCinco","pasoCincoFetched","initialDetalleInscripcion","detalleInscripcionInformacion","detalleInscripcionSlice","detalleInscripcionFetched","rootSaga","rootReducer","combineReducers","auth","establecimiento","apiVersion","aspirante","pasoUno","pasoDos","pasoTres","pasoCuatro","pasoCinco","detalleInscripcion","all","sagaMiddleware","createSagaMiddleware","middleware","getDefaultMiddleware","immutableCheck","serializableCheck","thunk","store","configureStore","devTools","process","enhancers","reduxBatch","persistor","persistStore","run","IDENTITY_CONFIG","authority","client_id","redirect_uri","silent_redirect_uri","REACT_APP_SILENT_REDIRECT_URL","post_logout_redirect_uri","response_type","scope","METADATA_OIDC","issuer","jwks_uri","authorization_endpoint","token_endpoint","userinfo_endpoint","end_session_endpoint","check_session_iframe","revocation_endpoint","introspection_endpoint","AuthService","signinRedirectCallback","UserManager","then","getUser","a","parseJwt","token","base64","split","replace","JSON","parse","window","atob","signinRedirect","localStorage","setItem","location","pathname","navigateToScreen","isAuthenticated","oidcStorage","sessionStorage","getItem","access_token","signinSilent","console","log","catch","err","signinSilentCallback","createSigninRequest","logout","signoutRedirect","id_token_hint","clearStaleState","signoutRedirectCallback","clear","this","userStore","WebStorageStateStore","metadata","Log","logger","level","DEBUG","events","addUserLoaded","href","indexOf","addSilentRenewError","e","message","addAccessTokenExpired","AuthContext","React","createContext","AuthConsumer","Consumer","AuthProvider","props","authService","Provider","value","children","Component","PrivateRoute","component","rest","render","API_BASE_URL","DETALLE_INSCRIPCION_URL","getDetalleInscripcion","params","codigo","documento","url","result","fetchDetalleInscripcionInformacion","queryParams","dispatch","requestFromServer","response","mensaje","SnackBarCustom","tipo","aceptar","useSnackbar","enqueueSnackbar","closeSnackbar","style","display","variant","preventDuplicate","autoHideDuration","onClose","IconButton","aria-label","color","onClick","close","anchorOrigin","vertical","horizontal","documentoNumeroSchema","Yup","shape","documentoNumero","matches","required","inscripcionCodigoSchema","inscripcionCodigo","min","max","inscripcionValoresIniciales","BuscarInscripcion","useState","buscarDocumento","setBuscarDocumento","useDispatch","useSelector","shallowEqual","enableReinitialize","initialValues","validationSchema","onSubmit","values","setSubmitting","setTimeout","actionsDetalleInscripcion","formik","className","RadioGroup","onChange","resetForm","FormControlLabel","control","Radio","label","Card","backgroundColor","CardContent","fontSize","htmlFor","maxLength","placeholder","Spinner","animation","Button","IconInfo","Icono","icono","OverlayTrigger","placement","delay","show","hide","overlay","Tooltip","prototype","PropTypes","element","PrimerPaso","map","item","dni","Person","apellido","nombre","vinculo","principal","AccountBox","i","AccountBalanceOutlined","cueAnexo","QueryBuilder","turno","RoomOutlined","direccion","Error","inscAsociada","People","SupervisorAccount","AttachFile","SegundoPaso","nroOrdenEnElSorteo","TercerPaso","estado","Pasos","activeStep","setActiveStep","handleNext","prevActiveStep","handleBack","establecimientosAprobados","establecimientosSeleccionados","filtrado","ingreso","steps","paso","segundoLlamado","moment","creacion","fechaCreacion","Row","Col","md","class","diff","nroSorteo","nivel","curso","format","lg","Stepper","orientation","Step","StepLabel","StepContent","Typography","disabled","MesaAyuda","target","without","rel","DetalleInscripcion","history","useHistory","uiService","useHtmlClassService","layoutProps","useMemo","layoutConfig","config","selfLayout","objectPath","asideDisplay","subheaderDisplay","stickyToolbarDisplay","desktopHeaderDisplay","contentCssClasses","getClasses","contentContainerClasses","contentExtended","HeaderMobile","sinUser","Header","title","size","Footer","useStyles","makeStyles","buttonHeader","buttonRedirect","buttonPDF","fontWeight","linkFooter","titleFooter","iconPhone","marginBottom","marginRight","Landing","classes","verMenu","setVerMenu","to","src","Logo","alt","width","height","Drawer","anchor","open","event","List","minHeight","ListItem","button","ListItemIcon","Divider","ListItemText","primary","maxWidth","marginTop","frameBorder","allow","allowFullScreen","data-easing","data-speed","data-offset","data-scrollto","verificarEntero","entero","enteroSoloNumeros","parseInt","isNaN","valor","toString","Countries","PreInscripcionUIContext","PreInscripcionUIConsumer","paises","Domicilio","calle","numero","piso","dpto","domicilioId","Documentacion","sexo","DatosPersonales","fechaNacimiento","Date","pais","provincia","Persona","edad","registroCivilvalidacion","validadoPorElRegistroCivil","domicilio","vinculoId","email","telefono","personaRegistroCivilId","call","Aspirante","inscripcionVinculadaId","inscripcionVinculadaNumero","Responsable","aspiranteResponsableId","NivelEnseñanza","grado","Extras","fueEstatal","fueAbanderaro","establecimientoBandera","establecimientoEstatal","inscripcionesBaseReducer","InscripcionesReducer","datosPersonalesBaseReducer","responsablePrincipalPosicion","nivelEnseñanza","numeroVinculacion","extras","DatosPersonalesReducer","responsable","splice","calcularEdad","dateString","hoy","getFullYear","diferenciaMeses","getMonth","getDate","vinculos","niveles","grados","getPais","pos","forEach","countryName","getProvincia","regions","InscripcionUIProvider","InscripcionUIEvents","useReducer","stateDatosPersonales","dispatchDatosPeronales","stateInscripciopnes","dispatchInscripciones","setPosicion","inscripcionIdPasoUno","responsablesPasoUno","inscripcionNumeroPasoUno","useEffect","nroDocumento","localidadNacimiento","paisNacimiento","provinciaNacimiento","domicilioCalle","domicilioDepartamento","domicilioLocalidad","domicilioNumero","domicilioPiso","domicilioDpto","domId","aux","aspiranteNombre","aspiranteApellido","aspiranteNroDocumento","nivelEnsenanza","nivelEnsenanzaId","finalizada","ultimoPasoEditado","cantidadResponsables","validacionRegistroCivil","p_tipo","p_posicion","recomendacionInscripcion","obtenerResponsablePrincipal","verResponsables","verResponsable","nivelSeleccionado","verInscripciones","verInscripcionesPorLlamado","_","o","cantidadInscripciones","verificarDNIS","respuesta","valoresDocumentacionResponsable","valoresDatosPersonalesResponsable","valoresDomicilioResponsable","valoresDocumentacionAspirante","valoresDatosPersonalesAspirante","valoresDomicilioAspirante","valoresExtrasAspirante","valoresEstablecimientos","valoresExtras","detalleAspirante","detalleEstablecimientos","detalleNumeroVinculacion","detalleExtras","maxNombre","maxApellido","maxVinculo","maxDocumentoNumero","maxEmail","maxCalle","maxTelefono","maxNumero","maxPiso","maxDepartamento","maxLocalidad","API_DESCARGAS_BASE_URL","OFERTA_BASE_URL","ESTABLECIMIENTO_URL","ESTABLECIMIENTO_PASO4_URL","ESTABLECIMIENTOANTERIOR_PASO4_URL","INSCRIPCION_PASO_UNO_AL_DOS_URL","INSCRIPCION_PASO_DOS_AL_TRES_URL","INSCRIPCION_PASO_TRES_AL_CUATRO_URL","INSCRIPCION_PASO_CUATRO_AL_CINCO_URL","INSCRIPCION_PASO_CINCO_URL","LLAMADOS_URL","DESCARGAR_CONSTANCIA_URL","INSCRIPCIONES_BASE_URL","INSCRIPCIONES_URL","DELETE_INSCRIPCION_URL","INSCRIPCION_ASYNC_URL","PERSONA_BASE_URL","PERSONA_URL","getAspiranteInformacion","getPasoFromId","getResponsableInformacion","Volver","scrollTop","scrollTo","top","behavior","ultimoPaso","currentStep","goToStep","previousStep","Continuar","spinner","Editar","setDisabled","setVerDomicilio","setVerDatosPersonales","useContext","buscando","setCantidad","verDatosPersonales","actionsLoadingPaso1","errorPaso1","errorAspirante","actionsLoadingAspirante","contador","setContador","existeDNI","setExisteDNI","documentacionSchema","formularioCompleto","cantidad","datosPersonales","tarjetaIndicativa","toUpperCase","actionsPasoUno","as","autoComplete","mayorTresAños","mayorDeEdad","edadMAxima","verDomicilio","setNombre","cargo","setcargo","registerLocale","es","provincias","setProvincias","datosPersonalesSchema","toLocaleDateString","datosPersonalesResponsableSchema","concat","aspiranteEstado","find","locale","dateFormat","selected","date","setFieldValue","touched","errors","prov","siguientePaso","setSiguientePaso","nextStep","domicilioSchema","fNacimiento","toISOString","inscripcionVinculadaIdAUX","post","listLoadingResponsables","ModalDelete","text","deleteFunction","Modal","onHide","centered","Body","AgregarOtroResponsable","submitPasoSiguiente","setSubmitPasoSiguiente","eliminarResponsable","setEliminarResponsable","verModal","setVerModal","cambiarPrincipal","setCambiarPrincipal","setResponsable","editarPaso","quitarResponsable","cerrarModal","abrirModal","actionsLoadingPaso2","errorPaso2","irEstablecimiento","responsablesContext","esAspirante","esResponsable","prioridad","ofertasSeleccionadas","Fab","currentTarget","Nivel","nivelesFromState","setNivelesFromState","valoresIniciales","detalleNivel","setDetalleNivel","nivelSchema","ButtonToolbar","ToggleButtonGroup","defaultValue","ToggleButton","minWidth","index","SetNivel","getEstablecimientos","departamentoId","localidadId","cursoId","turnoId","getEstablecimientosPaso4","getEstablecimientosAnteriorPaso4","DEPARTAMENTO_URL","LOCALIDAD_URL","fetchDepartamentos","soloConOfertas","fetchLocalidades","EstablecimientoCard","permutarArriba","permutarAbajo","quitarEstablecimiento","ultimoEstablecimiento","marginLeft","paddingLeft","paddingRight","hermanoId","familiarId","codigoInscripcionVinculada","vacantes","SelectorDepartamento","setLocalidadesChild","setDepartamentoChild","setLocalidadChild","entitiesDepartamentos","listLoadingDepartamentos","errorDepartamentos","entitiesLocalidades","listLoadingLocalidades","errorLocalidades","actionsDepartamento","actionsLocalidad","classNamePrefix","isDisabled","isLoading","isRtl","isSearchable","options","getOptionValue","getOptionLabel","departamentoNombre","noOptionsMessage","SelectorLocalidad","localidadesChild","localidadChild","localidadNombre","SeleccionEstablecimiento","establecimientosList","listLoadingEstablecimientos","seleccionadosPaso2","actionsLoadingPaso3","errorPaso3","setDepartamento","setLocalidades","setLocalidad","seleccionados","setSeleccionados","primeraCarga","setPrimeraCarga","tocoSearch","setTocoSearch","setUltimoEstablecimiento","setHermano","setFamiliar","vincular","setVincular","preguntas","setPreguntas","seleccionarEstablecimiendo","ofertaId","itemAnterior","nuevaLista","slice","itemSiguiente","modalSchema","default","tieneVinculacion","hermanoSchema","hermanoSexo","hermanoNombre","hermanoApellido","hermanoNumeroDocumento","hermanoGrado","familiarSchema","familiarSexo","familiarNombre","familiarApellido","familiarNumeroDocumento","familiarVinculo","vincularSchema","vinculacionNumero","modalFullSchema","clone","tieneHermano","tieneFamiliar","getNivelEnsenanzaId","nivelDescripcion","getCursoId","cursoDescripcion","seleccionadosPaso2Ext","setSeleccionadosPaso2Ext","esSeleccionable","seleccionadosPaso2Aux","stringify","oferta","ofertaTemp","vacante","establecimientosFiltrados","arrVal","othVal","cantidadMaxima","onBlur","vinculoFamiliar","familiarVinculoId","descripcion","Object","assign","nivelCursoAnio","ofertaSeleccionadaId","vinculoFamiliarId","nuevaSelect","turnoDescripcion","row","llamadoId","hermanoNroDocumento","hermanoPersonaRegistroCivilId","familiarNroDocumento","familiarPersonaRegistroCivilId","decripcion","nroDocumentoAspiranteVinculado","resultFormik","setResultFormik","establecimientosAbanderadoList","establecimientosEstatalesList","actionsLoadingPaso4","errorPaso4","estatal","setEstatal","cargoDefaultEstatal","setCargoDefaultEstatal","seleccionadoEstablecimiento","setSeleccionadoEstablecimiento","estatalDepartamento","setEstatalDepartamento","estatalLocalidad","setEstatalLocalidad","estatalLocalidades","setEstatalLocalidades","bandera","setBandera","cargoDefaultBandera","setCargoDefaultBandera","seleccionadoBandera","setSeleccionadoBandera","banderaDepartamento","setBanderaDepartamento","banderaLocalidad","setBanderaLocalidad","banderaLocalidades","setBanderaLocalidades","extraSchema","banderaSchema","estatalSchema","palabraABuscar","establecimientoAnteriorId","establecimientoAnteriorNombre","establecimientoAbanderadoId","establecimientoAbanderadoNombre","iniciarEstablecimientoBandera","establecimientoId","Resumen","setHome","limpiarContenido","ExpansionPanel","ExpansionPanelSummary","expandIcon","aria-controls","authParse","profile","pasos","Array","fill","Nav","check","obtenerNombre","actual","obtenerBoton","pasoActual","proximo","PreInscripcionPasos","initialStep","nav","actionsLlamado","fetchInscripciones","fetchDescartarInscripcion","delete","fetchLlamados","callTypesLlamado","CardInscripcion","llamadosActivos","cargarAspiranteAsync","descartarInscripcion","estadoError","estadoInformacion","llamadosFilter","hastaMoment","hasta","sinNivelModif","CardHeader","textAlign","borderRadius","paddingBottom","actionsEstado","PreInscripcionCard","home","deshacerInscripcionId","sertDeshacerInscripcionId","listLoadingLlamados","errorLlamados","inscripcionDeshecha","requestFromServerPasoUno","actionsInscripcion","isBetween","desde","cicloLectivo","keys","x","InscripcionPage","EstadoInscripcion","GoogleMaterialPage","lazy","ReactBootstrapPage","BasePage","fallback","exact","from","path","PreInscripcion","Routes","getApiVersion","ApiVersion","VersionsCheck","clienteDesactualizado","setClienteDesactualizado","clientVersion","reload","createBrowserHistory","App","basename","loading","Suspense","listen","ReactGA","set","page","pageview","interceptors","request","use","headers","Authorization","Promise","reject","ReactDOM","maxSnack","document","getElementById","KTCookie","getCookie","cookie","match","RegExp","decodeURIComponent","setCookie","expires","toUTCString","updatedCookie","encodeURIComponent","optionKey","hasOwnProperty","optionValue","deleteCookie","module","exports","KTOffcanvas","elementId","the","KTUtil","getById","body","getBody","defaultOptions","attrCustom","Plugin","construct","has","init","build","deepExtend","classBase","baseClass","classShown","classOverlay","hasClass","toggleBy","addEvent","preventDefault","toggle","closeBy","isShown","eventTrigger","toggleClass","attr","addClass","classCustom","insertAfter","createElement","removeAttr","removeClass","remove","mode","args","one","handler","fired","setDefaults","on","apply","I18N_CONFIG_KEY","REACT_APP_I18N_CONFIG_KEY","selectedLang","getConfig","ls","er","setLanguage","lang","I18nContext","useLang","MetronicI18nProvider","allMessages","de","en","fr","ja","zh","I18nProvider","messages","Element","msMatchesSelector","webkitMatchesSelector","closest","s","ancestor","documentElement","contains","parentElement","elem","parentNode","removeChild","lastTime","vendors","requestAnimationFrame","cancelAnimationFrame","callback","currTime","getTime","timeToCall","Math","clearTimeout","Document","DocumentFragment","defineProperty","configurable","enumerable","writable","argArr","arguments","docFrag","createDocumentFragment","argItem","isNode","Node","appendChild","createTextNode","String","insertBefore","firstChild","getAttributeNames","attributes","KTUtilElementDataStore","KTUtilElementDataStoreID","KTUtilDelegatedEventHandlers","resizeHandlers","breakpoints","sm","xl","_windowResizeHandler","addEventListener","throttle","timer","_runResizeHandlers","settings","addResizeHandler","removeResizeHandler","runResizeHandlers","resize","Event","dispatchEvent","evt","createEvent","initUIEvent","getURLParam","paramName","val","search","substring","unescape","isMobileDevice","test","getViewPort","getBreakpoint","navigator","userAgent","isDesktopDevice","isInResponsiveRange","breakpoint","isBreakpointUp","isBreakpointDown","getUniqueID","prefix","floor","random","isset","obj","stone","shift","getHighestZindex","position","css","hasFixedPositionedParent","sleep","milliseconds","start","getRandomInt","isAngularVersion","Zone","out","extend","getByTag","query","getElementsByTagName","getByTagName","getByClass","getElementsByClassName","hasClasses","classesArr","trim","classList","classNames","add","triggerCustomEvent","eventName","CustomEvent","detail","initCustomEvent","triggerEvent","node","doc","ownerDocument","nodeType","eventClass","bubbles","initEvent","synthetic","fireEvent","createEventObject","c","string","eventTriggered","dataset","triggered","parent","querySelector","findAll","querySelectorAll","referenceNode","nextSibling","parents","selector","matchesSelector","mozMatchesSelector","oMatchesSelector","childNodes","l","child","p","f","tagName","customDataTag","outerWidth","margin","parseFloat","offsetWidth","offset","rect","win","getClientRects","getBoundingClientRect","defaultView","pageYOffset","left","pageXOffset","outerHeight","withMargin","offsetHeight","getComputedStyle","visible","getAttribute","setAttribute","hasAttr","removeAttribute","animate","duration","update","easing","done","easings","linear","t","b","d","rAF","change","performance","now","loop","timestamp","time","actualCss","prop","cache","HTMLElement","cssText","actualHeight","actualWidth","getScroll","method","self","browserSupportsBoxModel","styleProp","toLowerCase","getPropertyValue","currentStyle","str","letter","oldLeft","oldRsLeft","runtimeStyle","pixelLeft","slide","dir","speed","recalcMaxHeight","calcHeight","calcPaddingTop","calcPaddingBottom","paddingTop","overflow","slideUp","slideDown","removeEvent","removeEventListener","eventId","targets","j","off","callee","hash","charCodeAt","animateClass","animationName","animations","OAnimation","MozAnimation","WebkitAnimation","msAnimation","transitionEnd","transition","transitions","OTransition","MozTransition","WebkitTransition","msTransition","animationEnd","animateDelay","animateDuration","targetPos","scrollPos","isArray","ready","attachEvent","readyState","isEmpty","numberString","nStr","x1","x2","rgx","detectIE","ua","msie","rv","edge","isRTL","html","scrollInit","wheelSpeed","swipeEasing","wheelPropagation","minScrollbarLength","maxScrollbarLength","suppressScrollX","handleWindowResize","ps","attrs","attrName","includes","optionName","filterBoolean","Function","mobileHeight","mobileNativeScroll","disableForMobile","desktopNativeScroll","windowScroll","PerfectScrollbar","uid","rememberPosition","resetHeightOnDestroy","destroy","scrollDestroy","scrollUpdate","scrollUpdateAll","scrollers","len","resetAll","setProperty","setHTML","innerHTML","getHTML","getDocumentHeight","scrollHeight","clientHeight","getScrollTop","scrollingElement","changeColor","col","amt","usePound","num","r","g","func","debounce","btnWait","cls","disable","caption","btnRelease","isOffscreen","direction","windowWidth","windowHeight","KTAppSettings","onload","getInitLayoutConfig","demo","js","xxl","colors","theme","base","light","inverse","gray","fontFamily","loader","enabled","logo","toolbar","header","fixed","desktop","mobile","menu","layout","arrow","submenu","accordion","subheader","displayDesc","displayDaterangepicker","content","brand","aside","minimize","hoverable","footer","dropdown","scroll","offcanvas","notifications","directions","languages","cart","chat","scrolltop","UserProfileDropdown","userInfo","UserInfo","drop","alignRight","Toggle","DropdownTopbarItemToggler","Menu","backgroundImage","headerLogo","getStickyLogo","headerMenuSelfDisplay","headerMobileCssClasses","headerMobileAttributes","getAttributes","today","footerClasses","footerContainerClasses","getSubmenuMode","hideDropdowns","KTMenu","slideSpeed","autoScroll","autoScrollSpeed","expandAll","timeout","reset","eventHandlers","pauseDropdownHoverTime","resetSubmenuProps","handleSubmenuAccordion","isConditionalSubmenuDropdown","handleSubmenuDrodownHoverEnter","handleSubmenuDrodownHoverExit","handleSubmenuDropdownClick","handleSubmenuDropdownTabClick","handleLinkClick","tablet","submenus","hasAttribute","resumeDropdownHover","showSubmenuDropdown","hideSubmenuDropdown","hideSubmenuDropdowns","handleSubmenuDropdownClose","shown","li","subnav","closables","el_","submenu_","scrollToItem","classAlso","items","cnt","list","createSubmenuDropdownClickDropoff","zIndex","dropoff","stopPropagation","pauseDropdownHover","resetActiveItem","i_","len_","setActiveItem","getBreadcrumbs","breadcrumbs","link","submenuLink","reverse","getPageTitle","scrollReInit","hideDropdown","KTToggle","toggleElement","targetElement","targetToggleMode","targetState","toggleState","toggleOn","toggleOff","getState","perfectScrollbarOptions","SearchResult","maxHeight","fakeData","description","iconImage","iconClassName","SearchDropdown","timeoutId","setLoading","setData","searchValue","setSearchValue","Dropdown","onToggle","clsx","autoFocus","UserNotificationsDropdown","setKey","bgImage","Tab","Container","defaultActiveKey","onSelect","_key","Item","Link","eventKey","Content","Pane","QuickActionsDropdown","MyCartDropdown","flag","LanguageSelectorDropdown","currentLanguage","language","active","QuickUserToggler","Topbar","viewSearchDisplay","viewNotificationsDisplay","viewQuickActionsDisplay","viewCartDisplay","viewQuickPanelDisplay","viewLanguagesDisplay","viewUserDisplay","data-toggle","data-placement","HeaderMenu","useLocation","getMenuItemActive","checkIsActive","ktMenuClasses","headerMenuAttributes","ulClasses","rootArrowEnabled","data-menu-toggle","menuDesktopToggle","aria-haspopup","HeaderMenuWrapper","headerSelfTheme","disabledAsideSelfDisplay","getHeaderLogo","headerClasses","headerAttributes","headerContainerClasses","menuHeaderDisplay","HtmlClassService","preInit","header_container","header_mobile","header_menu","aside_menu","subheader_container","content_container","footer_container","initLayout","initLoader","initHeader","initSubheader","initContent","initAside","initFooter","initTheme","updatedConfig","headerSelfFixedDesktop","join","getLogo","selfBodyBackgroundImage","_selfBodyClass","cssClass","headerMenuSelfLayout","headerMenuLayoutCssClass","subheaderFixed","subheaderStyle","subheaderClass","asideSelfDisplay","asideMenuDropdown","asideSubmenuDHoverTimeout","brandSelfTheme","LAYOUT_CONFIG_KEY","REACT_APP_LAYOUT_CONFIG_KEY","HtmlClassServiceContext","MetronicLayoutProvider","lc","hcs","service","setConfig","KTCard","toggleSpeed","sticky","releseOnReverse","initSticky","onScrollSticky","st","updateSticky","resetSticky","right","setContent","getSelf","expand","collapse","destroySticky","KTScrolltop","handle","Brand","brandClasses","asideSelfMinimizeToggle","headerStickyLogo","AsideMenuList","hasSubmenu","AsideMenu","disableScroll","asideMenuAttr","asideClassesFromConfig","data-menu-vertical","Aside","disableAsideSelfDisplay","KTLayoutHeader","_element","_elementForMobile","idForMobile","isFixed","isFixedForMobile","getElement","getElementForMobile","getHeader","getHeight","_getHeight","getHeightForMobile","KTLayoutHeaderMenu","_menuElement","_menuObject","_offcanvasElement","_offcanvasObject","menuId","offcanvasId","getMenuElement","getOffcanvasElement","getMenu","getOffcanvas","closeMobileOffcanvas","KTLayoutHeaderTopbar","_toggleElement","getToggleElement","KTLayoutBrand","KTLayoutAside","_body","offcanvasClass","_init","isMinimized","isHoverable","KTLayoutSubheader","KTLayoutStickyCard","_object","card","cardWidth","KTLayoutAsideMenu","menuDesktopMode","insideTm","outsideTm","_initHover","KTLayoutAsideToggle","_toggleObject","getToggle","KTLayoutFooter","KTLayoutContent","KTLayoutScrolltop","KTLayoutStretchedCard","cardBody","cardHeader","KTLayoutQuickPanel","_notificationsElement","_logsElement","_settingsElement","_getContentHeight","KTLayoutQuickUser","LayoutInit","useLayoutEffect","QuickActionsDropdownToggle","forwardRef","ref","QuickActions","BreadCrumbs","getBreadcrumbsAndTitle","pathName","activeLinks","titleSpans","titleSpan","breadCrumbs","getTitle","SubheaderContext","MetronicSubheaderProvider","setTitle","setBreadcrumbs","SubHeader","subheaderMobileToggle","subheaderCssClasses","subheaderContainerCssClasses","QuickPanel","selectedTab","setSelectedTab","_tabName","role","checked","QuickUser","click","ScrollTop","StickyToolbar","Layout","useRouteMatch","cssClassesState","setCssClassesState","fullClasses","startAnimation","timeOutId","ContentRoute","routeProps","MetronicSplashScreenContext","MetronicSplashScreenProvider","count","setCount","splashScreen","LayoutSplashScreen","prev","createMuiTheme","typography","palette","main","secondary","MuiButtonBase","disableRipple","MuiPopover","elevation","MaterialThemeProvider","ThemeProvider","CodeBlockToolbar","showViewCode","code","isCodeBlockShown","setIsCodeBlockShown","isCopySucceed","setIsCopySucceed","copy","CardHeaderTitle","CardHeaderToolbar","icon","labelRef","setTop","setWindowHeight","handleResize","innerWidth","headerElement","subheaderElement","headerMobileElement","nextMarginTop","isFragment","CardBody","fit","fluid","fluidHeight","KTCodeBlock","tabs","codeShown","customStyle","tabId","setTabId","highlightStyle","aria-selected","shortCode","background","KTCodeExample","jsCode","beforeCodeTitle","codeBlockHeight","defaultLanguages","setCustomStyle","styles","overflowX","AnimateLoading","routeChanged","nextProps","scrollToTop","scrollToTopBtn","animateTimeout","setState","stopAnimate","animateInterval","stopAnimateTimeout","ProgressBar","withRouter","Notice","svg","iconRef","textRef","iconWrapperRef","current","getCurrentUrl","getPagesCount","totalSize","sizePerPage","ceil","getPages","pagesCount","paginationSize","shiftCount","DropdownMenu1","displayName"],"mappings":"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","file":"static/js/main.f53b87b6.chunk.js","sourcesContent":["import {toAbsoluteUrl} from \"../../../../_metronic/_helpers\";\n\nexport default [\n {\n id: 1,\n username: \"admin\",\n password: \"demo\",\n email: \"admin@demo.com\",\n accessToken: \"access-token-8f3ae836da744329a6f93bf20594b5cc\",\n refreshToken: \"access-token-f8c137a2c98743f48b643e71161d90aa\",\n roles: [1], // Administrator\n pic: toAbsoluteUrl(\"/media/users/300_25.jpg\"),\n fullname: \"Sean\",\n occupation: \"CEO\",\n companyName: \"Keenthemes\",\n phone: \"456669067890\",\n address: {\n addressLine: \"L-12-20 Vertex, Cybersquare\",\n city: \"San Francisco\",\n state: \"California\",\n postCode: \"45000\"\n },\n socialNetworks: {\n linkedIn: \"https://linkedin.com/admin\",\n facebook: \"https://facebook.com/admin\",\n twitter: \"https://twitter.com/admin\",\n instagram: \"https://instagram.com/admin\"\n }\n },\n {\n id: 2,\n username: \"user\",\n password: \"demo\",\n email: \"user@demo.com\",\n accessToken: \"access-token-6829bba69dd3421d8762-991e9e806dbf\",\n refreshToken: \"access-token-f8e4c61a318e4d618b6c199ef96b9e55\",\n roles: [2], // Manager\n pic: toAbsoluteUrl(\"/media/users/100_2.jpg\"),\n fullname: \"Megan\",\n occupation: \"Deputy Head of Keenthemes in New York office\",\n companyName: \"Keenthemes\",\n phone: \"456669067891\",\n address: {\n addressLine: \"3487 Ingram Road\",\n city: \"Greensboro\",\n state: \"North Carolina\",\n postCode: \"27409\"\n },\n socialNetworks: {\n linkedIn: \"https://linkedin.com/user\",\n facebook: \"https://facebook.com/user\",\n twitter: \"https://twitter.com/user\",\n instagram: \"https://instagram.com/user\"\n }\n },\n {\n id: 3,\n username: \"guest\",\n password: \"demo\",\n email: \"guest@demo.com\",\n accessToken: \"access-token-d2dff7b82f784de584b60964abbe45b9\",\n refreshToken: \"access-token-c999ccfe74aa40d0aa1a64c5e620c1a5\",\n roles: [3], // Guest\n pic: toAbsoluteUrl(\"/media/users/default.jpg\"),\n fullname: \"Ginobili Maccari\",\n occupation: \"CFO\",\n companyName: \"Keenthemes\",\n phone: \"456669067892\",\n address: {\n addressLine: \"1467 Griffin Street\",\n city: \"Phoenix\",\n state: \"Arizona\",\n postCode: \"85012\"\n },\n socialNetworks: {\n linkedIn: \"https://linkedin.com/guest\",\n facebook: \"https://facebook.com/guest\",\n twitter: \"https://twitter.com/guest\",\n instagram: \"https://instagram.com/guest\"\n }\n }\n];\n","export default [\n {\n id: 1,\n firstName: \"Sonni\",\n lastName: \"Gabotti\",\n email: \"sgabotti0@wsj.com\",\n userName: \"sgabotti0\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"10/14/1950\",\n ipAddress: \"251.237.126.210\",\n type: 1,\n _userId: 1,\n _createdDate: \"09/07/2016\",\n _updatedDate: \"05/31/2013\"\n },\n {\n id: 2,\n firstName: \"Abie\",\n lastName: \"Cowperthwaite\",\n email: \"acowperthwaite1@storify.com\",\n userName: \"acowperthwaite1\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"12/31/1998\",\n ipAddress: \"239.176.5.218\",\n type: 1,\n _userId: 2,\n _createdDate: \"03/18/2014\",\n _updatedDate: \"08/17/2016\"\n },\n {\n id: 3,\n firstName: \"Melody\",\n lastName: \"Stodd\",\n email: \"mstodd2@twitpic.com\",\n userName: \"mstodd2\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"7/3/1957\",\n ipAddress: \"14.80.25.15\",\n type: 1,\n _userId: 1,\n _createdDate: \"07/03/2015\",\n _updatedDate: \"01/28/2015\"\n },\n {\n id: 4,\n firstName: \"Naomi\",\n lastName: \"Galbreth\",\n email: \"ngalbreth3@springer.com\",\n userName: \"ngalbreth3\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"12/30/1976\",\n ipAddress: \"239.198.18.122\",\n type: 0,\n _userId: 2,\n _createdDate: \"06/22/2013\",\n _updatedDate: \"01/31/2011\"\n },\n {\n id: 5,\n firstName: \"Ashley\",\n lastName: \"Jandl\",\n email: \"ajandl4@mapy.cz\",\n userName: \"ajandl4\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"11/23/1996\",\n ipAddress: \"11.19.64.48\",\n type: 1,\n _userId: 1,\n _createdDate: \"01/30/2018\",\n _updatedDate: \"05/22/2014\"\n },\n {\n id: 6,\n firstName: \"Mildrid\",\n lastName: \"Duplan\",\n email: \"mduplan5@msn.com\",\n userName: \"mduplan5\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"4/21/1954\",\n ipAddress: \"104.18.128.93\",\n type: 1,\n _userId: 1,\n _createdDate: \"03/27/2011\",\n _updatedDate: \"09/02/2015\"\n },\n {\n id: 7,\n firstName: \"Dall\",\n lastName: \"Stow\",\n email: \"dstow6@vistaprint.com\",\n userName: \"dstow6\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"4/14/1998\",\n ipAddress: \"168.199.143.20\",\n type: 1,\n _userId: 1,\n _createdDate: \"09/05/2011\",\n _updatedDate: \"06/21/2012\"\n },\n {\n id: 8,\n firstName: \"Burton\",\n lastName: \"Dering\",\n email: \"bdering7@europa.eu\",\n userName: \"bdering7\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"8/15/1963\",\n ipAddress: \"204.7.174.42\",\n type: 0,\n _userId: 1,\n _createdDate: \"09/09/2017\",\n _updatedDate: \"06/27/2011\"\n },\n {\n id: 9,\n firstName: \"Wolf\",\n lastName: \"Blackaller\",\n email: \"wblackaller8@biblegateway.com\",\n userName: \"wblackaller8\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"5/20/1997\",\n ipAddress: \"12.229.194.195\",\n type: 0,\n _userId: 1,\n _createdDate: \"07/16/2011\",\n _updatedDate: \"05/24/2014\"\n },\n {\n id: 10,\n firstName: \"Adham\",\n lastName: \"Hurtic\",\n email: \"ahurtic9@friendfeed.com\",\n userName: \"ahurtic9\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"3/15/1971\",\n ipAddress: \"236.147.173.25\",\n type: 0,\n _userId: 2,\n _createdDate: \"03/25/2011\",\n _updatedDate: \"12/13/2015\"\n },\n {\n id: 11,\n firstName: \"Carlina\",\n lastName: \"Scudders\",\n email: \"cscuddersa@shareasale.com\",\n userName: \"cscuddersa\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"2/18/1970\",\n ipAddress: \"189.61.76.155\",\n type: 0,\n _userId: 1,\n _createdDate: \"11/01/2015\",\n _updatedDate: \"02/16/2013\"\n },\n {\n id: 12,\n firstName: \"Roderich\",\n lastName: \"Landsberg\",\n email: \"rlandsbergb@deliciousdays.com\",\n userName: \"rlandsbergb\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"12/7/1963\",\n ipAddress: \"75.200.18.136\",\n type: 0,\n _userId: 2,\n _createdDate: \"12/12/2017\",\n _updatedDate: \"02/22/2013\"\n },\n {\n id: 13,\n firstName: \"Mychal\",\n lastName: \"Tremblett\",\n email: \"mtremblettc@printfriendly.com\",\n userName: \"mtremblettc\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"7/14/1996\",\n ipAddress: \"85.132.155.112\",\n type: 0,\n _userId: 1,\n _createdDate: \"08/14/2014\",\n _updatedDate: \"08/03/2014\"\n },\n {\n id: 14,\n firstName: \"Corine\",\n lastName: \"Rajchert\",\n email: \"crajchertd@google.com\",\n userName: \"crajchertd\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"9/13/1966\",\n ipAddress: \"47.164.200.96\",\n type: 0,\n _userId: 2,\n _createdDate: \"12/07/2010\",\n _updatedDate: \"09/24/2012\"\n },\n {\n id: 15,\n firstName: \"Worth\",\n lastName: \"McFarlane\",\n email: \"wmcfarlanee@cocolog-nifty.com\",\n userName: \"wmcfarlanee\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"10/13/1968\",\n ipAddress: \"56.209.4.81\",\n type: 0,\n _userId: 1,\n _createdDate: \"02/23/2013\",\n _updatedDate: \"09/24/2016\"\n },\n {\n id: 16,\n firstName: \"Ogden\",\n lastName: \"Danielski\",\n email: \"odanielskif@goo.ne.jp\",\n userName: \"odanielskif\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"10/5/1984\",\n ipAddress: \"181.198.149.89\",\n type: 0,\n _userId: 1,\n _createdDate: \"09/08/2012\",\n _updatedDate: \"10/29/2017\"\n },\n {\n id: 17,\n firstName: \"Laurette\",\n lastName: \"Tift\",\n email: \"ltiftg@about.me\",\n userName: \"ltiftg\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"7/29/1964\",\n ipAddress: \"218.236.252.255\",\n type: 1,\n _userId: 2,\n _createdDate: \"05/03/2016\",\n _updatedDate: \"08/02/2011\"\n },\n {\n id: 18,\n firstName: \"Eleanora\",\n lastName: \"Jackson\",\n email: \"ejacksonh@geocities.jp\",\n userName: \"ejacksonh\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"1/1/1993\",\n ipAddress: \"166.210.135.66\",\n type: 1,\n _userId: 1,\n _createdDate: \"09/25/2017\",\n _updatedDate: \"01/08/2012\"\n },\n {\n id: 19,\n firstName: \"Manon\",\n lastName: \"Perott\",\n email: \"mperotti@nyu.edu\",\n userName: \"mperotti\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"11/6/1994\",\n ipAddress: \"44.43.119.22\",\n type: 1,\n _userId: 2,\n _createdDate: \"04/26/2013\",\n _updatedDate: \"02/24/2012\"\n },\n {\n id: 20,\n firstName: \"Karney\",\n lastName: \"Damerell\",\n email: \"kdamerellj@booking.com\",\n userName: \"kdamerellj\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"11/22/1996\",\n ipAddress: \"253.195.21.217\",\n type: 1,\n _userId: 2,\n _createdDate: \"11/28/2014\",\n _updatedDate: \"10/11/2012\"\n },\n {\n id: 21,\n firstName: \"Chelsea\",\n lastName: \"Bruce\",\n email: \"cbrucek@icq.com\",\n userName: \"cbrucek\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"12/1/1983\",\n ipAddress: \"28.184.81.169\",\n type: 0,\n _userId: 1,\n _createdDate: \"07/29/2013\",\n _updatedDate: \"12/01/2017\"\n },\n {\n id: 22,\n firstName: \"Barny\",\n lastName: \"Verny\",\n email: \"bvernyl@bing.com\",\n userName: \"bvernyl\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"8/13/1957\",\n ipAddress: \"7.26.116.49\",\n type: 0,\n _userId: 1,\n _createdDate: \"06/14/2011\",\n _updatedDate: \"06/28/2011\"\n },\n {\n id: 23,\n firstName: \"Elita\",\n lastName: \"Matuszewski\",\n email: \"ematuszewskim@businesswire.com\",\n userName: \"ematuszewskim\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"6/6/1985\",\n ipAddress: \"82.223.2.228\",\n type: 0,\n _userId: 2,\n _createdDate: \"05/19/2016\",\n _updatedDate: \"09/12/2011\"\n },\n {\n id: 24,\n firstName: \"Chelsey\",\n lastName: \"Scullard\",\n email: \"cscullardn@buzzfeed.com\",\n userName: \"cscullardn\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"11/20/1960\",\n ipAddress: \"68.177.196.151\",\n type: 0,\n _userId: 1,\n _createdDate: \"02/09/2013\",\n _updatedDate: \"12/11/2011\"\n },\n {\n id: 25,\n firstName: \"Jodi\",\n lastName: \"Olphert\",\n email: \"jolpherto@elpais.com\",\n userName: \"jolpherto\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"4/20/2000\",\n ipAddress: \"32.219.74.161\",\n type: 0,\n _userId: 2,\n _createdDate: \"07/28/2017\",\n _updatedDate: \"05/03/2017\"\n },\n {\n id: 26,\n firstName: \"Micah\",\n lastName: \"Searchfield\",\n email: \"msearchfieldp@instagram.com\",\n userName: \"msearchfieldp\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"8/15/1993\",\n ipAddress: \"99.205.47.226\",\n type: 1,\n _userId: 1,\n _createdDate: \"07/05/2011\",\n _updatedDate: \"02/19/2013\"\n },\n {\n id: 27,\n firstName: \"Freeland\",\n lastName: \"O'Dougherty\",\n email: \"fodoughertyq@cbsnews.com\",\n userName: \"fodoughertyq\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"5/19/1956\",\n ipAddress: \"91.116.249.149\",\n type: 0,\n _userId: 1,\n _createdDate: \"06/09/2012\",\n _updatedDate: \"03/15/2014\"\n },\n {\n id: 28,\n firstName: \"Marna\",\n lastName: \"Dacre\",\n email: \"mdacrer@tmall.com\",\n userName: \"mdacrer\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"10/26/1959\",\n ipAddress: \"127.23.103.102\",\n type: 0,\n _userId: 2,\n _createdDate: \"12/30/2011\",\n _updatedDate: \"03/24/2016\"\n },\n {\n id: 29,\n firstName: \"Carlita\",\n lastName: \"Calwell\",\n email: \"ccalwells@1688.com\",\n userName: \"ccalwells\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"7/28/1961\",\n ipAddress: \"3.205.16.120\",\n type: 0,\n _userId: 2,\n _createdDate: \"02/28/2016\",\n _updatedDate: \"02/25/2013\"\n },\n {\n id: 30,\n firstName: \"Deonne\",\n lastName: \"Castellan\",\n email: \"dcastellant@gizmodo.com\",\n userName: \"dcastellant\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"10/21/1955\",\n ipAddress: \"213.3.222.52\",\n type: 1,\n _userId: 2,\n _createdDate: \"03/12/2011\",\n _updatedDate: \"03/26/2017\"\n },\n {\n id: 31,\n firstName: \"Cesare\",\n lastName: \"Chestnutt\",\n email: \"cchestnuttu@cornell.edu\",\n userName: \"cchestnuttu\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"4/14/1979\",\n ipAddress: \"218.107.75.113\",\n type: 1,\n _userId: 1,\n _createdDate: \"03/06/2012\",\n _updatedDate: \"09/08/2012\"\n },\n {\n id: 32,\n firstName: \"Gauthier\",\n lastName: \"Luparto\",\n email: \"glupartov@wordpress.org\",\n userName: \"glupartov\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"11/28/1952\",\n ipAddress: \"148.234.79.85\",\n type: 1,\n _userId: 2,\n _createdDate: \"04/28/2013\",\n _updatedDate: \"02/26/2016\"\n },\n {\n id: 33,\n firstName: \"Kimmi\",\n lastName: \"Corde\",\n email: \"kcordew@kickstarter.com\",\n userName: \"kcordew\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"8/7/1978\",\n ipAddress: \"94.85.235.54\",\n type: 0,\n _userId: 2,\n _createdDate: \"10/21/2012\",\n _updatedDate: \"10/31/2017\"\n },\n {\n id: 34,\n firstName: \"Riordan\",\n lastName: \"Rosenbush\",\n email: \"rrosenbushx@wix.com\",\n userName: \"rrosenbushx\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"11/28/1957\",\n ipAddress: \"236.15.158.122\",\n type: 0,\n _userId: 2,\n _createdDate: \"08/28/2011\",\n _updatedDate: \"08/14/2015\"\n },\n {\n id: 35,\n firstName: \"Daune\",\n lastName: \"Sellek\",\n email: \"dselleky@amazon.co.jp\",\n userName: \"dselleky\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"10/12/1995\",\n ipAddress: \"163.229.197.138\",\n type: 1,\n _userId: 2,\n _createdDate: \"03/28/2018\",\n _updatedDate: \"03/01/2017\"\n },\n {\n id: 36,\n firstName: \"Myriam\",\n lastName: \"Marshland\",\n email: \"mmarshlandz@army.mil\",\n userName: \"mmarshlandz\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"8/1/1961\",\n ipAddress: \"153.40.246.134\",\n type: 0,\n _userId: 1,\n _createdDate: \"05/15/2017\",\n _updatedDate: \"08/12/2016\"\n },\n {\n id: 37,\n firstName: \"Laryssa\",\n lastName: \"Hynard\",\n email: \"lhynard10@squidoo.com\",\n userName: \"lhynard10\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"1/6/1998\",\n ipAddress: \"186.155.125.145\",\n type: 0,\n _userId: 2,\n _createdDate: \"01/16/2012\",\n _updatedDate: \"10/09/2012\"\n },\n {\n id: 38,\n firstName: \"Evelin\",\n lastName: \"Poate\",\n email: \"epoate11@cnet.com\",\n userName: \"epoate11\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"9/11/1957\",\n ipAddress: \"76.53.54.233\",\n type: 0,\n _userId: 1,\n _createdDate: \"01/07/2012\",\n _updatedDate: \"01/18/2018\"\n },\n {\n id: 39,\n firstName: \"Cesar\",\n lastName: \"D'Orsay\",\n email: \"cdorsay12@ezinearticles.com\",\n userName: \"cdorsay12\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"10/20/1992\",\n ipAddress: \"101.137.215.28\",\n type: 1,\n _userId: 1,\n _createdDate: \"10/20/2010\",\n _updatedDate: \"07/14/2012\"\n },\n {\n id: 40,\n firstName: \"Jareb\",\n lastName: \"Luberto\",\n email: \"jluberto13@apple.com\",\n userName: \"jluberto13\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"12/22/1951\",\n ipAddress: \"69.111.152.125\",\n type: 0,\n _userId: 1,\n _createdDate: \"01/11/2012\",\n _updatedDate: \"01/20/2018\"\n },\n {\n id: 41,\n firstName: \"Kerry\",\n lastName: \"Glawsop\",\n email: \"kglawsop14@wp.com\",\n userName: \"kglawsop14\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"11/28/1953\",\n ipAddress: \"105.245.81.58\",\n type: 1,\n _userId: 2,\n _createdDate: \"02/23/2015\",\n _updatedDate: \"03/14/2012\"\n },\n {\n id: 42,\n firstName: \"Brose\",\n lastName: \"Conti\",\n email: \"bconti15@smh.com.au\",\n userName: \"bconti15\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"8/13/1967\",\n ipAddress: \"109.92.204.48\",\n type: 1,\n _userId: 1,\n _createdDate: \"08/04/2012\",\n _updatedDate: \"11/01/2011\"\n },\n {\n id: 43,\n firstName: \"Shannah\",\n lastName: \"Ceeley\",\n email: \"sceeley16@sogou.com\",\n userName: \"sceeley16\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"6/10/1962\",\n ipAddress: \"57.218.60.216\",\n type: 0,\n _userId: 2,\n _createdDate: \"05/28/2014\",\n _updatedDate: \"03/16/2018\"\n },\n {\n id: 44,\n firstName: \"Rudolf\",\n lastName: \"Stallworthy\",\n email: \"rstallworthy17@theatlantic.com\",\n userName: \"rstallworthy17\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"10/15/1966\",\n ipAddress: \"74.223.255.220\",\n type: 1,\n _userId: 2,\n _createdDate: \"06/01/2015\",\n _updatedDate: \"10/25/2013\"\n },\n {\n id: 45,\n firstName: \"Egor\",\n lastName: \"Scotson\",\n email: \"escotson18@weather.com\",\n userName: \"escotson18\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"1/17/1956\",\n ipAddress: \"70.189.158.38\",\n type: 0,\n _userId: 1,\n _createdDate: \"03/25/2011\",\n _updatedDate: \"12/05/2010\"\n },\n {\n id: 46,\n firstName: \"Selie\",\n lastName: \"Dugue\",\n email: \"sdugue19@meetup.com\",\n userName: \"sdugue19\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"11/9/1981\",\n ipAddress: \"54.129.221.70\",\n type: 1,\n _userId: 1,\n _createdDate: \"06/09/2013\",\n _updatedDate: \"08/10/2016\"\n },\n {\n id: 47,\n firstName: \"Gene\",\n lastName: \"Kirkbright\",\n email: \"gkirkbright1a@wp.com\",\n userName: \"gkirkbright1a\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"5/9/1972\",\n ipAddress: \"217.224.216.105\",\n type: 0,\n _userId: 1,\n _createdDate: \"02/02/2016\",\n _updatedDate: \"03/30/2014\"\n },\n {\n id: 48,\n firstName: \"Reagan\",\n lastName: \"Colloby\",\n email: \"rcolloby1b@usgs.gov\",\n userName: \"rcolloby1b\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"9/21/1997\",\n ipAddress: \"32.53.20.172\",\n type: 0,\n _userId: 2,\n _createdDate: \"04/08/2016\",\n _updatedDate: \"01/25/2014\"\n },\n {\n id: 49,\n firstName: \"Saidee\",\n lastName: \"Kivelle\",\n email: \"skivelle1c@newsvine.com\",\n userName: \"skivelle1c\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"10/23/1994\",\n ipAddress: \"79.152.227.238\",\n type: 1,\n _userId: 1,\n _createdDate: \"12/26/2015\",\n _updatedDate: \"09/17/2011\"\n },\n {\n id: 50,\n firstName: \"Mychal\",\n lastName: \"Karlowicz\",\n email: \"mkarlowicz1d@opera.com\",\n userName: \"mkarlowicz1d\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"10/20/1971\",\n ipAddress: \"70.175.193.245\",\n type: 0,\n _userId: 2,\n _createdDate: \"10/10/2011\",\n _updatedDate: \"03/02/2012\"\n },\n {\n id: 51,\n firstName: \"Nessie\",\n lastName: \"Casassa\",\n email: \"ncasassa1e@pinterest.com\",\n userName: \"ncasassa1e\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"3/9/1983\",\n ipAddress: \"17.128.173.230\",\n type: 1,\n _userId: 1,\n _createdDate: \"01/09/2018\",\n _updatedDate: \"08/05/2015\"\n },\n {\n id: 52,\n firstName: \"Myrvyn\",\n lastName: \"Coots\",\n email: \"mcoots1f@sourceforge.net\",\n userName: \"mcoots1f\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"4/5/1972\",\n ipAddress: \"253.21.191.36\",\n type: 0,\n _userId: 1,\n _createdDate: \"01/13/2015\",\n _updatedDate: \"04/30/2011\"\n },\n {\n id: 53,\n firstName: \"Liuka\",\n lastName: \"Monard\",\n email: \"lmonard1g@wikipedia.org\",\n userName: \"lmonard1g\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"6/6/1999\",\n ipAddress: \"33.46.177.2\",\n type: 1,\n _userId: 1,\n _createdDate: \"11/17/2012\",\n _updatedDate: \"02/18/2011\"\n },\n {\n id: 54,\n firstName: \"Alis\",\n lastName: \"Nozzolii\",\n email: \"anozzolii1h@google.com.br\",\n userName: \"anozzolii1h\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"7/25/1953\",\n ipAddress: \"242.76.135.219\",\n type: 1,\n _userId: 1,\n _createdDate: \"10/16/2012\",\n _updatedDate: \"09/17/2012\"\n },\n {\n id: 55,\n firstName: \"Gage\",\n lastName: \"Slamaker\",\n email: \"gslamaker1i@people.com.cn\",\n userName: \"gslamaker1i\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"3/19/1959\",\n ipAddress: \"179.85.197.219\",\n type: 0,\n _userId: 2,\n _createdDate: \"04/20/2015\",\n _updatedDate: \"07/02/2014\"\n },\n {\n id: 56,\n firstName: \"Jamal\",\n lastName: \"Glasard\",\n email: \"jglasard1j@google.ru\",\n userName: \"jglasard1j\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"9/21/1968\",\n ipAddress: \"163.99.109.106\",\n type: 0,\n _userId: 1,\n _createdDate: \"08/24/2017\",\n _updatedDate: \"12/09/2012\"\n },\n {\n id: 57,\n firstName: \"Antone\",\n lastName: \"Christophersen\",\n email: \"achristophersen1k@slashdot.org\",\n userName: \"achristophersen1k\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"8/5/1953\",\n ipAddress: \"42.207.110.255\",\n type: 1,\n _userId: 1,\n _createdDate: \"12/30/2012\",\n _updatedDate: \"04/07/2013\"\n },\n {\n id: 58,\n firstName: \"Glenn\",\n lastName: \"Gentle\",\n email: \"ggentle1l@imdb.com\",\n userName: \"ggentle1l\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"8/4/1959\",\n ipAddress: \"82.135.105.157\",\n type: 1,\n _userId: 2,\n _createdDate: \"01/16/2017\",\n _updatedDate: \"10/04/2017\"\n },\n {\n id: 59,\n firstName: \"Jerrilyn\",\n lastName: \"Prujean\",\n email: \"jprujean1m@csmonitor.com\",\n userName: \"jprujean1m\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"12/22/1961\",\n ipAddress: \"45.111.98.145\",\n type: 1,\n _userId: 2,\n _createdDate: \"08/22/2014\",\n _updatedDate: \"09/01/2014\"\n },\n {\n id: 60,\n firstName: \"Becki\",\n lastName: \"Mucklestone\",\n email: \"bmucklestone1n@wiley.com\",\n userName: \"bmucklestone1n\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"10/15/1970\",\n ipAddress: \"208.63.250.181\",\n type: 0,\n _userId: 1,\n _createdDate: \"03/08/2018\",\n _updatedDate: \"08/09/2016\"\n },\n {\n id: 61,\n firstName: \"Kingsly\",\n lastName: \"Sawday\",\n email: \"ksawday1o@patch.com\",\n userName: \"ksawday1o\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"1/20/1978\",\n ipAddress: \"196.38.7.53\",\n type: 0,\n _userId: 2,\n _createdDate: \"07/15/2016\",\n _updatedDate: \"10/28/2012\"\n },\n {\n id: 62,\n firstName: \"Austen\",\n lastName: \"Possel\",\n email: \"apossel1p@blogtalkradio.com\",\n userName: \"apossel1p\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"5/8/1960\",\n ipAddress: \"162.0.150.104\",\n type: 1,\n _userId: 2,\n _createdDate: \"12/20/2017\",\n _updatedDate: \"04/20/2018\"\n },\n {\n id: 63,\n firstName: \"Rudie\",\n lastName: \"Southouse\",\n email: \"rsouthouse1q@mapy.cz\",\n userName: \"rsouthouse1q\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"12/2/1950\",\n ipAddress: \"67.123.229.124\",\n type: 1,\n _userId: 2,\n _createdDate: \"09/24/2012\",\n _updatedDate: \"07/02/2014\"\n },\n {\n id: 64,\n firstName: \"Julienne\",\n lastName: \"Le Noury\",\n email: \"jlenoury1r@cnet.com\",\n userName: \"jlenoury1r\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"10/30/1976\",\n ipAddress: \"208.192.238.241\",\n type: 1,\n _userId: 1,\n _createdDate: \"06/29/2012\",\n _updatedDate: \"11/26/2016\"\n },\n {\n id: 65,\n firstName: \"Bernard\",\n lastName: \"Levicount\",\n email: \"blevicount1s@angelfire.com\",\n userName: \"blevicount1s\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"12/6/1982\",\n ipAddress: \"123.229.51.62\",\n type: 1,\n _userId: 2,\n _createdDate: \"04/11/2013\",\n _updatedDate: \"05/14/2013\"\n },\n {\n id: 66,\n firstName: \"Katine\",\n lastName: \"Glazyer\",\n email: \"kglazyer1t@unblog.fr\",\n userName: \"kglazyer1t\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"8/20/1954\",\n ipAddress: \"165.87.178.12\",\n type: 0,\n _userId: 1,\n _createdDate: \"03/20/2015\",\n _updatedDate: \"06/18/2015\"\n },\n {\n id: 67,\n firstName: \"Rem\",\n lastName: \"Crichten\",\n email: \"rcrichten1u@patch.com\",\n userName: \"rcrichten1u\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"6/19/1950\",\n ipAddress: \"184.177.108.6\",\n type: 1,\n _userId: 1,\n _createdDate: \"11/12/2014\",\n _updatedDate: \"04/12/2011\"\n },\n {\n id: 68,\n firstName: \"Colman\",\n lastName: \"Simnor\",\n email: \"csimnor1v@reddit.com\",\n userName: \"csimnor1v\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"1/3/2000\",\n ipAddress: \"19.3.156.170\",\n type: 0,\n _userId: 2,\n _createdDate: \"05/06/2013\",\n _updatedDate: \"05/23/2014\"\n },\n {\n id: 69,\n firstName: \"Arin\",\n lastName: \"Hanscombe\",\n email: \"ahanscombe1w@blogspot.com\",\n userName: \"ahanscombe1w\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"9/21/1955\",\n ipAddress: \"154.59.243.61\",\n type: 0,\n _userId: 2,\n _createdDate: \"06/23/2013\",\n _updatedDate: \"11/10/2011\"\n },\n {\n id: 70,\n firstName: \"Emogene\",\n lastName: \"Gruszka\",\n email: \"egruszka1x@cmu.edu\",\n userName: \"egruszka1x\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"7/3/1971\",\n ipAddress: \"105.138.138.125\",\n type: 1,\n _userId: 2,\n _createdDate: \"07/26/2016\",\n _updatedDate: \"10/28/2013\"\n },\n {\n id: 71,\n firstName: \"Rosina\",\n lastName: \"Kauffman\",\n email: \"rkauffman1y@google.com.hk\",\n userName: \"rkauffman1y\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"11/21/1953\",\n ipAddress: \"131.87.248.164\",\n type: 0,\n _userId: 1,\n _createdDate: \"10/16/2016\",\n _updatedDate: \"07/24/2015\"\n },\n {\n id: 72,\n firstName: \"Fran\",\n lastName: \"MacGill\",\n email: \"fmacgill1z@pinterest.com\",\n userName: \"fmacgill1z\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"3/16/1991\",\n ipAddress: \"155.41.152.146\",\n type: 1,\n _userId: 1,\n _createdDate: \"11/23/2012\",\n _updatedDate: \"09/03/2016\"\n },\n {\n id: 73,\n firstName: \"Marinna\",\n lastName: \"Allington\",\n email: \"mallington20@icio.us\",\n userName: \"mallington20\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"3/15/1964\",\n ipAddress: \"120.145.107.78\",\n type: 0,\n _userId: 2,\n _createdDate: \"09/07/2011\",\n _updatedDate: \"12/26/2017\"\n },\n {\n id: 74,\n firstName: \"Irv\",\n lastName: \"Rishbrook\",\n email: \"irishbrook21@tripod.com\",\n userName: \"irishbrook21\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"11/25/1966\",\n ipAddress: \"127.115.28.247\",\n type: 1,\n _userId: 1,\n _createdDate: \"08/25/2014\",\n _updatedDate: \"06/16/2013\"\n },\n {\n id: 75,\n firstName: \"Riordan\",\n lastName: \"Durran\",\n email: \"rdurran22@hubpages.com\",\n userName: \"rdurran22\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"3/3/1952\",\n ipAddress: \"246.102.6.88\",\n type: 1,\n _userId: 1,\n _createdDate: \"04/02/2017\",\n _updatedDate: \"01/30/2011\"\n },\n {\n id: 76,\n firstName: \"Phillie\",\n lastName: \"Elward\",\n email: \"pelward23@parallels.com\",\n userName: \"pelward23\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"9/15/1965\",\n ipAddress: \"75.220.58.105\",\n type: 1,\n _userId: 1,\n _createdDate: \"06/23/2014\",\n _updatedDate: \"08/20/2016\"\n },\n {\n id: 77,\n firstName: \"Hadlee\",\n lastName: \"Haddow\",\n email: \"hhaddow24@nationalgeographic.com\",\n userName: \"hhaddow24\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"10/2/1973\",\n ipAddress: \"155.40.18.171\",\n type: 0,\n _userId: 2,\n _createdDate: \"03/05/2016\",\n _updatedDate: \"07/03/2017\"\n },\n {\n id: 78,\n firstName: \"Luciano\",\n lastName: \"Pittford\",\n email: \"lpittford25@europa.eu\",\n userName: \"lpittford25\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"6/14/1963\",\n ipAddress: \"131.175.149.47\",\n type: 0,\n _userId: 2,\n _createdDate: \"05/01/2014\",\n _updatedDate: \"08/02/2011\"\n },\n {\n id: 79,\n firstName: \"Zelma\",\n lastName: \"Cumberpatch\",\n email: \"zcumberpatch26@multiply.com\",\n userName: \"zcumberpatch26\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"7/16/1956\",\n ipAddress: \"145.155.37.45\",\n type: 1,\n _userId: 1,\n _createdDate: \"11/07/2015\",\n _updatedDate: \"12/03/2014\"\n },\n {\n id: 80,\n firstName: \"Thornton\",\n lastName: \"Smuth\",\n email: \"tsmuth27@go.com\",\n userName: \"tsmuth27\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"5/9/1989\",\n ipAddress: \"146.151.187.52\",\n type: 1,\n _userId: 2,\n _createdDate: \"12/25/2011\",\n _updatedDate: \"12/31/2010\"\n },\n {\n id: 81,\n firstName: \"Bunnie\",\n lastName: \"Ealden\",\n email: \"bealden28@gravatar.com\",\n userName: \"bealden28\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"10/2/1999\",\n ipAddress: \"184.116.180.222\",\n type: 1,\n _userId: 2,\n _createdDate: \"04/09/2015\",\n _updatedDate: \"12/07/2013\"\n },\n {\n id: 82,\n firstName: \"Pearl\",\n lastName: \"Robeson\",\n email: \"probeson29@moonfruit.com\",\n userName: \"probeson29\",\n gender: \"Female\",\n status: 0,\n dateOfBbirth: \"8/20/1980\",\n ipAddress: \"235.213.39.68\",\n type: 0,\n _userId: 1,\n _createdDate: \"07/13/2016\",\n _updatedDate: \"03/07/2012\"\n },\n {\n id: 83,\n firstName: \"Charlie\",\n lastName: \"Marvelley\",\n email: \"cmarvelley2a@archive.org\",\n userName: \"cmarvelley2a\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"11/22/1969\",\n ipAddress: \"158.224.240.173\",\n type: 0,\n _userId: 2,\n _createdDate: \"03/25/2012\",\n _updatedDate: \"11/20/2012\"\n },\n {\n id: 84,\n firstName: \"Vere\",\n lastName: \"McCartan\",\n email: \"vmccartan2b@about.me\",\n userName: \"vmccartan2b\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"3/24/1956\",\n ipAddress: \"235.57.57.54\",\n type: 0,\n _userId: 2,\n _createdDate: \"06/21/2016\",\n _updatedDate: \"05/17/2015\"\n },\n {\n id: 85,\n firstName: \"Deni\",\n lastName: \"Frostdicke\",\n email: \"dfrostdicke2c@jigsy.com\",\n userName: \"dfrostdicke2c\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"7/31/1964\",\n ipAddress: \"108.183.237.176\",\n type: 1,\n _userId: 1,\n _createdDate: \"03/13/2013\",\n _updatedDate: \"11/12/2017\"\n },\n {\n id: 86,\n firstName: \"Poppy\",\n lastName: \"Pech\",\n email: \"ppech2d@wsj.com\",\n userName: \"ppech2d\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"2/24/1976\",\n ipAddress: \"221.35.18.213\",\n type: 1,\n _userId: 1,\n _createdDate: \"09/10/2015\",\n _updatedDate: \"02/13/2013\"\n },\n {\n id: 87,\n firstName: \"Dasya\",\n lastName: \"O'Nion\",\n email: \"donion2e@addthis.com\",\n userName: \"donion2e\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"7/5/1993\",\n ipAddress: \"28.25.44.40\",\n type: 0,\n _userId: 1,\n _createdDate: \"04/12/2013\",\n _updatedDate: \"08/24/2012\"\n },\n {\n id: 88,\n firstName: \"Marco\",\n lastName: \"Izhakov\",\n email: \"mizhakov2f@si.edu\",\n userName: \"mizhakov2f\",\n gender: \"Male\",\n status: 1,\n dateOfBbirth: \"2/28/1999\",\n ipAddress: \"155.123.153.36\",\n type: 0,\n _userId: 1,\n _createdDate: \"06/04/2012\",\n _updatedDate: \"03/06/2017\"\n },\n {\n id: 89,\n firstName: \"Jane\",\n lastName: \"Meneux\",\n email: \"jmeneux2g@bluehost.com\",\n userName: \"jmeneux2g\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"3/15/1962\",\n ipAddress: \"216.200.223.149\",\n type: 1,\n _userId: 2,\n _createdDate: \"11/24/2015\",\n _updatedDate: \"02/08/2012\"\n },\n {\n id: 90,\n firstName: \"Audry\",\n lastName: \"Glasheen\",\n email: \"aglasheen2h@booking.com\",\n userName: \"aglasheen2h\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"10/24/1962\",\n ipAddress: \"186.134.95.243\",\n type: 0,\n _userId: 1,\n _createdDate: \"09/13/2016\",\n _updatedDate: \"04/28/2014\"\n },\n {\n id: 91,\n firstName: \"Florida\",\n lastName: \"Lawleff\",\n email: \"flawleff2i@livejournal.com\",\n userName: \"flawleff2i\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"2/3/1960\",\n ipAddress: \"88.32.51.173\",\n type: 0,\n _userId: 1,\n _createdDate: \"03/22/2018\",\n _updatedDate: \"11/28/2010\"\n },\n {\n id: 92,\n firstName: \"Christoforo\",\n lastName: \"Pinchon\",\n email: \"cpinchon2j@bloglovin.com\",\n userName: \"cpinchon2j\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"2/26/1995\",\n ipAddress: \"244.162.142.84\",\n type: 0,\n _userId: 2,\n _createdDate: \"11/14/2017\",\n _updatedDate: \"11/19/2016\"\n },\n {\n id: 93,\n firstName: \"Bertie\",\n lastName: \"Antognazzi\",\n email: \"bantognazzi2k@ow.ly\",\n userName: \"bantognazzi2k\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"6/7/1955\",\n ipAddress: \"108.174.189.179\",\n type: 0,\n _userId: 2,\n _createdDate: \"08/03/2016\",\n _updatedDate: \"01/27/2018\"\n },\n {\n id: 94,\n firstName: \"Clevey\",\n lastName: \"Grima\",\n email: \"cgrima2l@cmu.edu\",\n userName: \"cgrima2l\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"7/7/1981\",\n ipAddress: \"255.186.178.211\",\n type: 1,\n _userId: 2,\n _createdDate: \"03/23/2014\",\n _updatedDate: \"02/10/2011\"\n },\n {\n id: 95,\n firstName: \"Herbie\",\n lastName: \"Symper\",\n email: \"hsymper2m@ca.gov\",\n userName: \"hsymper2m\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"7/16/1993\",\n ipAddress: \"54.240.157.6\",\n type: 0,\n _userId: 1,\n _createdDate: \"07/27/2011\",\n _updatedDate: \"05/28/2013\"\n },\n {\n id: 96,\n firstName: \"Kizzie\",\n lastName: \"Clapson\",\n email: \"kclapson2n@linkedin.com\",\n userName: \"kclapson2n\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"1/26/1977\",\n ipAddress: \"171.243.142.104\",\n type: 1,\n _userId: 2,\n _createdDate: \"09/03/2011\",\n _updatedDate: \"10/14/2014\"\n },\n {\n id: 97,\n firstName: \"Sigvard\",\n lastName: \"Edwin\",\n email: \"sedwin2o@mlb.com\",\n userName: \"sedwin2o\",\n gender: \"Male\",\n status: 0,\n dateOfBbirth: \"4/24/1966\",\n ipAddress: \"78.224.218.52\",\n type: 0,\n _userId: 1,\n _createdDate: \"05/20/2017\",\n _updatedDate: \"09/17/2013\"\n },\n {\n id: 98,\n firstName: \"Boniface\",\n lastName: \"Rodd\",\n email: \"brodd2p@123-reg.co.uk\",\n userName: \"brodd2p\",\n gender: \"Male\",\n status: 2,\n dateOfBbirth: \"10/24/1978\",\n ipAddress: \"250.44.55.222\",\n type: 1,\n _userId: 2,\n _createdDate: \"04/21/2012\",\n _updatedDate: \"07/30/2012\"\n },\n {\n id: 99,\n firstName: \"Dorena\",\n lastName: \"Oliva\",\n email: \"doliva2q@europa.eu\",\n userName: \"doliva2q\",\n gender: \"Female\",\n status: 1,\n dateOfBbirth: \"6/16/1987\",\n ipAddress: \"94.196.238.12\",\n type: 0,\n _userId: 1,\n _createdDate: \"10/23/2016\",\n _updatedDate: \"06/28/2014\"\n },\n {\n id: 100,\n firstName: \"Sibylla\",\n lastName: \"O'Cahey\",\n email: \"socahey2r@paginegialle.it\",\n userName: \"socahey2r\",\n gender: \"Female\",\n status: 2,\n dateOfBbirth: \"10/13/1958\",\n ipAddress: \"139.240.194.212\",\n type: 1,\n _userId: 1,\n _createdDate: \"11/25/2014\",\n _updatedDate: \"08/18/2015\"\n }\n];\n","import { persistReducer } from \"redux-persist\";\nimport storage from \"redux-persist/lib/storage\";\nimport { put, takeLatest } from \"redux-saga/effects\";\nimport { getUserByToken } from \"./authCrud\";\n\nexport const actionTypes = {\n Login: \"[Login] Action\",\n Logout: \"[Logout] Action\",\n Register: \"[Register] Action\",\n UserRequested: \"[Request User] Action\",\n UserLoaded: \"[Load User] Auth API\"\n};\n\nconst initialAuthState = {\n user: undefined,\n authToken: undefined\n};\n\nexport const reducer = persistReducer(\n { storage, key: \"v711-demo1-auth\", whitelist: [\"user\", \"authToken\"] },\n (state = initialAuthState, action) => {\n switch (action.type) {\n case actionTypes.Login: {\n const { authToken } = action.payload;\n\n return { authToken, user: undefined };\n }\n\n case actionTypes.Register: {\n const { authToken } = action.payload;\n\n return { authToken, user: undefined };\n }\n\n case actionTypes.Logout: {\n // TODO: Change this code. Actions in reducer aren't allowed.\n return initialAuthState;\n }\n\n case actionTypes.UserLoaded: {\n const { user } = action.payload;\n return { ...state, user };\n }\n\n default:\n return state;\n }\n }\n);\n\nexport const actions = {\n login: authToken => ({ type: actionTypes.Login, payload: { authToken } }),\n register: authToken => ({\n type: actionTypes.Register,\n payload: { authToken }\n }),\n logout: () => ({ type: actionTypes.Logout }),\n requestUser: user => ({ type: actionTypes.UserRequested, payload: { user } }),\n fulfillUser: user => ({ type: actionTypes.UserLoaded, payload: { user } })\n};\n\nexport function* saga() {\n yield takeLatest(actionTypes.Login, function* loginSaga() {\n yield put(actions.requestUser());\n });\n\n yield takeLatest(actionTypes.Register, function* registerSaga() {\n yield put(actions.requestUser());\n });\n\n yield takeLatest(actionTypes.UserRequested, function* userRequested() {\n const { data: user } = yield getUserByToken();\n\n yield put(actions.fulfillUser(user));\n });\n}\n","import axios from \"axios\";\n\nexport const LOGIN_URL = \"api/auth/login\";\nexport const REGISTER_URL = \"api/auth/register\";\nexport const REQUEST_PASSWORD_URL = \"api/auth/forgot-password\";\n\nexport const ME_URL = \"api/me\";\n\nexport function login(email, password) {\n return axios.post(LOGIN_URL, { email, password });\n}\n\nexport function register(email, fullname, username, password) {\n return axios.post(REGISTER_URL, { email, fullname, username, password });\n}\n\nexport function requestPassword(email) {\n return axios.post(REQUEST_PASSWORD_URL, { email });\n}\n\nexport function getUserByToken() {\n // Authorization head should be fulfilled in interceptor.\n return axios.get(ME_URL);\n}\n","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialInscripcion = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n departamento: undefined,\r\n lastError: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n export const dptoSlice = createSlice({\r\n name:\"departamento\",\r\n initialState:initialInscripcion,\r\n reducers:{\r\n catchError:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n // createCustomer\r\n // inscripcionCreated: (state, action) => {\r\n // state.actionsLoading = false;\r\n // state.error = null;\r\n // state.entities.push(action.payload.inscripcion);\r\n // },\r\n // inscripcionFetched: (state, action) => {\r\n // state.actionsLoading = false;\r\n // state.inscripcion = action.payload.inscripcion;\r\n // state.error = null;\r\n // },\r\n // findCustomers\r\n departamentosFetched: (state, action) => {\r\n const { departamentos } = action.payload;\r\n state.listLoading = false;\r\n state.error = null;\r\n state.entities = departamentos;\r\n state.totalCount = departamentos && departamentos.length;\r\n },\r\n }\r\n });","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialInscripcion = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n localidad: undefined,\r\n lastError: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n export const localidadSlice = createSlice({\r\n name:\"localidad\",\r\n initialState:initialInscripcion,\r\n reducers:{\r\n catchError:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n // createCustomer\r\n // inscripcionCreated: (state, action) => {\r\n // state.actionsLoading = false;\r\n // state.error = null;\r\n // state.entities.push(action.payload.inscripcion);\r\n // },\r\n // inscripcionFetched: (state, action) => {\r\n // state.actionsLoading = false;\r\n // state.inscripcion = action.payload.inscripcion;\r\n // state.error = null;\r\n // },\r\n // findCustomers\r\n localidadesFetched: (state, action) => {\r\n const { localidades } = action.payload;\r\n state.listLoading = false;\r\n state.error = null;\r\n state.entities = localidades;\r\n state.totalCount = localidades && localidades.length;\r\n },\r\n }\r\n });","import { createSlice } from \"@reduxjs/toolkit\";\r\n\r\nconst initialState = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n entitiesAbanderado: null,\r\n entitiesEstatales: null,\r\n hermano: undefined,\r\n familiar: undefined,\r\n establecimientoInformacion: undefined,\r\n lastError: null\r\n};\r\n\r\nexport const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n};\r\n\r\nexport const establecimientoSlice = createSlice({\r\n name: \"establecimiento\",\r\n initialState: initialState,\r\n reducers: {\r\n catchError: (state, action) => {\r\n state.error = action.payload.error.clientMessage;\r\n if (action.payload.callType === callTypes.list) {\r\n state.listLoading = false;\r\n } else {\r\n state.actionsLoading = false;\r\n };\r\n },\r\n starCall: (state, action) => {\r\n state.error = null;\r\n if (action.payload.callType === callTypes.list) {\r\n state.listLoading = true;\r\n } else {\r\n state.actionsLoading = true;\r\n };\r\n },\r\n establecimientosFetched: (state, action) => {\r\n const { establecimientos } = action.payload;\r\n state.listLoading = false;\r\n state.error = null;\r\n state.entities = establecimientos;\r\n state.totalCount = establecimientos & establecimientos.length;\r\n },\r\n establecimientosAbanderadoFetched: (state, action) => {\r\n const { establecimientos } = action.payload;\r\n state.listLoading = false;\r\n state.error = null;\r\n state.entitiesAbanderado = establecimientos;\r\n state.totalCount = establecimientos & establecimientos.length;\r\n },\r\n establecimientosEstatalesFetched: (state, action) => {\r\n const { establecimientos } = action.payload;\r\n state.listLoading = false;\r\n state.error = null;\r\n state.entitiesEstatales = establecimientos;\r\n state.totalCount = establecimientos & establecimientos.length;\r\n },\r\n hermanoFetched: (state, action) => {\r\n const { hermano } = action.payload;\r\n state.listLoading = false;\r\n state.error = null;\r\n state.hermano = hermano;\r\n },\r\n familiarFetched: (state, action) => {\r\n const { familiar } = action.payload;\r\n state.listLoading = false;\r\n state.error = null;\r\n state.familiar = familiar;\r\n },\r\n stateLimpiar: (state, action) => {\r\n state.listLoading = false;\r\n state.entities = null;\r\n state.entitiesAbanderado = null;\r\n state.entitiesEstatales = null;\r\n state.hermano = undefined;\r\n state.familiar = undefined;\r\n state.establecimientoInformacion = undefined;\r\n },\r\n }\r\n});","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialApiVersion = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n apiVersionState: undefined,\r\n error: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n export const apiVersionSlice=createSlice({\r\n name:\"apiVersion\",\r\n initialState:initialApiVersion,\r\n reducers:{\r\n catchError:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n state.apiVersionState=undefined;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n apiVersionFetched:(state,action)=>{\r\n state.listLoading=false;\r\n state.apiVersionState=action.payload.apiVersionState;\r\n state.error=null;\r\n },\r\n reiniciarDatos:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.listLoading=false;\r\n state.apiVersionState=undefined;\r\n state.error=null;\r\n }\r\n }\r\n});","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialLlamado = {\r\n listLoading: false,\r\n entities: null,\r\n totalCount: 0,\r\n actionsLoading: false,\r\n llamado: undefined,\r\n lastError: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n export const llamadoSlice=createSlice({\r\n name:\"llamado\",\r\n initialState:initialLlamado,\r\n reducers:{\r\n catchError:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=true;\r\n };\r\n },\r\n llamadosFetched: (state, action) => {\r\n const { llamados } = action.payload;\r\n state.listLoading = false;\r\n state.error = null;\r\n state.entities = llamados;\r\n state.totalCount = llamados && llamados.length;\r\n },\r\n }\r\n });","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialInscripcion = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n inscripcion: undefined,\r\n lastError: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n export const inscripcionSlice=createSlice({\r\n name:\"aspirante\",\r\n initialState:initialInscripcion,\r\n reducers:{\r\n catchError:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=true;\r\n };\r\n },\r\n // createInscripcion\r\n inscripcionCreated: (state, action) => {\r\n state.actionsLoading = false;\r\n state.error = null;\r\n state.entities.push(action.payload.inscripcion);\r\n },\r\n inscripcionFetched: (state, action) => {\r\n state.actionsLoading = false;\r\n state.inscripcion = action.payload.inscripcion;\r\n state.error = null;\r\n },\r\n // findInscripciones\r\n inscripcionesFetched: (state, action) => {\r\n const { inscripciones } = action.payload;\r\n state.listLoading = false;\r\n state.error = null;\r\n state.entities = inscripciones;\r\n state.totalCount = inscripciones && inscripciones.length;\r\n },\r\n // deleteInscripcion\r\n inscripcionDeleted: (state, action) => {\r\n state.error = null;\r\n state.actionsLoading = false;\r\n state.entities = state.entities.filter(el => el.inscripcionId !== action.payload.inscripcionId);\r\n },\r\n }\r\n });","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialAspirantetate = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n aspiranteInformacion: undefined,\r\n error: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n export const aspiranteSlice=createSlice({\r\n name:\"aspirante\",\r\n initialState:initialAspirantetate,\r\n reducers:{\r\n catchError:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n state.aspiranteInformacion=undefined;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=true;\r\n };\r\n },\r\n aspiranteFetched:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.aspiranteInformacion=action.payload.aspiranteInformacion;\r\n state.error=null;\r\n },\r\n reiniciarDatos:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.aspiranteInformacion=undefined;\r\n state.error=null;\r\n }\r\n }\r\n });","import { createSlice } from \"@reduxjs/toolkit\";\r\n\r\nconst initialPasoUno = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n id: undefined,\r\n inscripcionNumero: undefined,\r\n inscripcionId: undefined,\r\n responsables: [],\r\n pasoUnoAlCeroInformacion: undefined,\r\n error: null\r\n};\r\n\r\nexport const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n};\r\n\r\n\r\nexport const pasoUnoSlice = createSlice({\r\n name: \"pasoUno\",\r\n initialState: initialPasoUno,\r\n reducers: {\r\n catchError: (state, action) => {\r\n state.error = action.payload.error.clientMessage;\r\n if (action.payload.callType === callTypes.list) {\r\n state.listLoading = false;\r\n // state.responsables[action.payload.posicion] = undefined;\r\n } else {\r\n state.actionsLoading = false;\r\n // state.responsables[action.payload.posicion] = undefined;\r\n };\r\n },\r\n starCall: (state, action) => {\r\n state.error = null;\r\n if (action.payload.callType === callTypes.list) {\r\n state.listLoading = true;\r\n } else {\r\n state.actionsLoading = true;\r\n };\r\n },\r\n pasoUnoAlDosFetched: (state, action) => {\r\n state.actionsLoading = false;\r\n //state.id = action.payload.pasoUnoAlDosInformacion.id;\r\n //state.inscripcionNumero = action.payload.pasoUnoAlDosInformacion.inscripcionNumero;\r\n state.inscripcionId = action.payload.pasoUnoAlDosInformacion.inscripcionId;\r\n state.responsables = action.payload.pasoUnoAlDosInformacion.responsables;\r\n state.error = null;\r\n },\r\n pasoUnoAlCeroFetched: (state, action) => {\r\n state.actionsLoading = false;\r\n state.pasoUnoAlCeroInformacion = action.payload.pasoUnoAlCeroInformacion;\r\n state.error = null;\r\n },\r\n agregarUnResponsable: (state, action) => {\r\n state.actionsLoading = false;\r\n state.responsables[action.payload.posicion] = action.payload.responsableInformacion\r\n state.error = null;\r\n },\r\n quitarResponsables: (state, action) => {\r\n state.actionsLoading = false;\r\n state.responsables = [];\r\n state.error = null;\r\n },\r\n stateLimpiar: (state, action) => {\r\n state.actionsLoading = false;\r\n state.id = undefined;\r\n state.inscripcionNumero = undefined;\r\n state.inscripcionId = undefined;\r\n state.responsables = [];\r\n state.error = null;\r\n },\r\n }\r\n});","import { createSlice } from \"@reduxjs/toolkit\";\r\n\r\nconst initialPasoDos = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n pasoDosAlUnoInformacion: undefined,\r\n establecimientos: [],\r\n lastError: null\r\n};\r\n\r\nexport const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n};\r\n\r\nexport const pasoDosSlice = createSlice({\r\n name: \"pasoDos\",\r\n initialState: initialPasoDos,\r\n reducers: {\r\n catchError: (state, action) => {\r\n state.error = action.payload.error.clientMessage;\r\n if (action.payload.callType === callTypes.list) {\r\n state.listLoading = false;\r\n } else {\r\n state.actionsLoading = false;\r\n };\r\n },\r\n starCall: (state, action) => {\r\n state.error = null;\r\n if (action.payload.callType === callTypes.list) {\r\n state.listLoading = true;\r\n } else {\r\n state.actionsLoading = true;\r\n };\r\n },\r\n pasoDosAlUnoFetched: (state, action) => {\r\n state.actionsLoading = false;\r\n state.pasoDosAlUnoInformacion = action.payload.pasoDosAlUnoInformacion;\r\n state.error = null;\r\n },\r\n pasoDosAlTresFetched: (state, action) => {\r\n state.actionsLoading = false;\r\n state.establecimientos = action.payload.establecimientos;\r\n state.error = null;\r\n },\r\n stateLimpiar: (state, action) => {\r\n state.actionsLoading = false;\r\n state.establecimientos = [];\r\n state.entities = null;\r\n state.pasoDosAlUnoInformacion = undefined;\r\n state.error = null;\r\n },\r\n }\r\n}); ","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialPasoTres = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n pasoTresAlDosInformacion: undefined,\r\n extrasInformacion:undefined,\r\n lastError: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n\r\n export const pasoTresSlice=createSlice({\r\n name:\"pasoTres\",\r\n initialState:initialPasoTres,\r\n reducers:{\r\n catchErrorPasoTresAlDos:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n state.pasoTresAlDosInformacion=undefined;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n catchErrorPasoTresAlCuatro:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n state.extrasInformacion=undefined;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=true;\r\n };\r\n },\r\n pasoTresAlDosFetched:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.pasoTresAlDosInformacion=action.payload.pasoTresAlDosInformacion;\r\n state.error=null;\r\n },\r\n pasoTresAlCuatroFetched:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.extrasInformacion=action.payload.extrasInformacion;\r\n state.error=null;\r\n },\r\n stateLimpiar: (state, action) => {\r\n state.actionsLoading = false;\r\n state.extrasInformacion = undefined;\r\n state.pasoTresAlDosInformacion = null;\r\n },\r\n }\r\n});","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialPasoCuatro = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n pasoCuatroAlCincoInformacion: undefined,\r\n pasoCuatroAlTresInformacion:undefined,\r\n lastError: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n export const pasoCuatroSlice=createSlice({\r\n name:\"pasoCuatro\",\r\n initialState:initialPasoCuatro,\r\n reducers:{\r\n catchErrorPasoCuatroAlCinco:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n state.pasoCuatroAlCincoInformacion=undefined;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n catchErrorCuatroAlTres:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n state.pasoCuatroAlTresInformacion=undefined;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=true;\r\n };\r\n },\r\n pasoCuatroAlCincoFetched:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.pasoCuatroAlCincoInformacion=action.payload.pasoCuatroAlCincoInformacion;\r\n state.error=null;\r\n },\r\n pasoCuatroAlTresFetched:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.pasoCuatroAlTresInformacion=action.payload.pasoCuatroAlTresInformacion;\r\n state.error=null;\r\n },\r\n stateLimpiar: (state, action) => {\r\n state.actionsLoading = false;\r\n state.entities= null;\r\n state.pasoCuatroAlCincoInformacion= undefined;\r\n state.pasoCuatroAlTresInformacion=undefined;\r\n state.error = null;\r\n },\r\n }\r\n});","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialPasoCinco = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n entities: null,\r\n pasoCincoInformacion: undefined,\r\n error: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n export const pasoCincoSlice=createSlice({\r\n name:\"pasoCinco\",\r\n initialState:initialPasoCinco,\r\n reducers:{\r\n catchErrorPasoCinco:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n state.pasoCincoInformacion=undefined;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=true;\r\n };\r\n },\r\n pasoCincoFetched:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.pasoCincoInformacion=action.payload.pasoCincoInformacion;\r\n state.error=null;\r\n },\r\n stateLimpiar: (state, action) => {\r\n state.actionsLoading = false;\r\n state.entities= null;\r\n state.pasoCincoInformacion= undefined;\r\n state.error = null;\r\n },\r\n }\r\n});","import {createSlice} from \"@reduxjs/toolkit\";\r\n\r\nconst initialDetalleInscripcion = {\r\n listLoading: false,\r\n actionsLoading: false,\r\n totalCount: 0,\r\n detalleInscripcionInformacion: undefined,\r\n error: null\r\n };\r\n\r\n export const callTypes = {\r\n list: \"list\",\r\n action: \"action\"\r\n };\r\n\r\n export const detalleInscripcionSlice=createSlice({\r\n name:\"detalleInscripcion\",\r\n initialState:initialDetalleInscripcion,\r\n reducers:{\r\n catchError:(state,action)=>{\r\n state.error = action.payload.error.clientMessage;\r\n state.detalleInscripcionInformacion=undefined;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=false;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n starCall:(state,action)=>{\r\n state.error=null;\r\n if(action.payload.callType===callTypes.list){\r\n state.listLoading=true;\r\n }else{\r\n state.actionsLoading=false;\r\n };\r\n },\r\n detalleInscripcionFetched:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.detalleInscripcionInformacion=action.payload.detalleInscripcionInformacion;\r\n state.error=null;\r\n },\r\n reiniciarDatos:(state,action)=>{\r\n state.actionsLoading=false;\r\n state.detalleInscripcionInformacion=undefined;\r\n state.error=null;\r\n }\r\n }\r\n});","import {all} from \"redux-saga/effects\";\nimport {combineReducers} from \"redux\";\n\nimport * as auth from \"../app/modules/Auth/_redux/authRedux\";\nimport { dptoSlice } from \"../app/modules/Comun/Departamento/_redux/dptoSlice\";\nimport { localidadSlice } from \"../app/modules/Comun/Localidad/_redux/localidadSlice\";\nimport { establecimientoSlice } from \"../app/modules/Inscripciones/preInscripcion/_redux/establecimiento/establecimientoSlice\";\n// import {customersSlice} from \"../app/modules/ECommerce/_redux/customers/customersSlice\";\n// import {productsSlice} from \"../app/modules/ECommerce/_redux/products/productsSlice\";\n// import {remarksSlice} from \"../app/modules/ECommerce/_redux/remarks/remarksSlice\";\n// import {specificationsSlice} from \"../app/modules/ECommerce/_redux/specifications/specificationsSlice\";\n\n//RUTA API VERSION\nimport { apiVersionSlice } from '../components/versionsCheck/_redux/apiVersionSlice'\n\n//RUTAS INSCRIPCIONES\nimport { llamadoSlice } from '../app/modules/Inscripciones/preInscripcion/_redux/inscripcion/llamadoSlice';\nimport { inscripcionSlice } from '../app/modules/Inscripciones/preInscripcion/_redux/inscripcion/inscripcionSlice';\nimport { aspiranteSlice } from '../app/modules/Inscripciones/preInscripcion/_redux/aspirante/aspiranteSlice';\nimport { pasoUnoSlice } from '../app/modules/Inscripciones/preInscripcion/_redux/pasoUno/pasoUnoSclice';\nimport { pasoDosSlice } from '../app/modules/Inscripciones/preInscripcion/_redux/pasoDos/pasoDosSlice';\nimport { pasoTresSlice } from '../app/modules/Inscripciones/preInscripcion/_redux/pasoTres/pasoTresSlice';\nimport { pasoCuatroSlice } from '../app/modules/Inscripciones/preInscripcion/_redux/pasoCuatro/pasoCuatroSlice';\nimport { pasoCincoSlice } from '../app/modules/Inscripciones/preInscripcion/_redux/pasoCinco/pasoCincoSlice';\n\n//ACCESO PUBLICO PARA OBTENER LA INFORMACION DE LA INSCRIPCION\nimport { detalleInscripcionSlice } from '../app/modules/Public/Inscripciones/_redux/DetalleInscripcion/DetalleInscripcionSlice';\n\nexport const rootReducer = combineReducers({\n auth: auth.reducer,\n departamento: dptoSlice.reducer,\n localidad: localidadSlice.reducer,\n establecimiento: establecimientoSlice.reducer,\n //customers: customersSlice.reducer,\n //products: productsSlice.reducer,\n //remarks: remarksSlice.reducer,\n //specifications: specificationsSlice.reducer,\n\n //API VERSION\n apiVersion: apiVersionSlice.reducer,\n\n //LLAMADOS\n llamado: llamadoSlice.reducer,\n\n //INSCRIPCIONES\n inscripcion: inscripcionSlice.reducer,\n aspirante: aspiranteSlice.reducer,\n pasoUno: pasoUnoSlice.reducer,\n pasoDos: pasoDosSlice.reducer,\n pasoTres: pasoTresSlice.reducer,\n pasoCuatro: pasoCuatroSlice.reducer,\n pasoCinco: pasoCincoSlice.reducer,\n\n //ACCESO PUBLICO\n detalleInscripcion:detalleInscripcionSlice.reducer\n});\n\nexport function* rootSaga() {\n yield all([auth.saga()]);\n}\n","import {configureStore, getDefaultMiddleware} from \"@reduxjs/toolkit\";\nimport createSagaMiddleware from \"redux-saga\";\nimport {reduxBatch} from \"@manaflair/redux-batch\";\nimport {persistStore} from \"redux-persist\";\nimport {rootReducer, rootSaga} from \"./rootReducer\";\n\nconst sagaMiddleware = createSagaMiddleware();\nconst middleware = [\n ...getDefaultMiddleware({\n immutableCheck: false,\n serializableCheck: false,\n thunk: true\n }),\n sagaMiddleware\n];\n\nconst store = configureStore({\n reducer: rootReducer,\n middleware,\n devTools: process.env.NODE_ENV !== \"production\",\n enhancers: [reduxBatch]\n});\n\n/**\n * @see https://github.com/rt2zz/redux-persist#persiststorestore-config-callback\n * @see https://github.com/rt2zz/redux-persist#persistor-object\n */\nexport const persistor = persistStore(store);\n\nsagaMiddleware.run(rootSaga);\n\nexport default store;\n","\nexport const IDENTITY_CONFIG = {\n authority: process.env.REACT_APP_AUTH_URL,\n client_id: process.env.REACT_APP_IDENTITY_CLIENT_ID,\n redirect_uri: process.env.REACT_APP_REDIRECT_URL,\n silent_redirect_uri: process.env.REACT_APP_SILENT_REDIRECT_URL,\n //post_logout_redirect_uri: process.env.REACT_APP_LOGOFF_REDIRECT_URL,\n post_logout_redirect_uri: process.env.REACT_APP_POST_LOGOUT_REDIRECT_URI,\n //audience: process.env.REACT_APP_AUDIENCE,\n response_type: process.env.REACT_APP_RESPONSE_TYPE,\n //automaticSilentRenew: false,\n //loadUserInfo: false,\n scope: process.env.REACT_APP_SCOPE\n};\n\nexport const METADATA_OIDC = {\n issuer: process.env.REACT_APP_ISSUER,\n jwks_uri: process.env.REACT_APP_AUTH_URL + \"/.well-known/openid-configuration/jwks\",\n authorization_endpoint: process.env.REACT_APP_AUTH_URL + \"/connect/authorize\",\n token_endpoint: process.env.REACT_APP_AUTH_URL + \"/connect/token\",\n userinfo_endpoint: process.env.REACT_APP_AUTH_URL + \"/connect/userinfo\",\n end_session_endpoint: process.env.REACT_APP_AUTH_URL + \"/connect/endsession\",\n check_session_iframe: process.env.REACT_APP_AUTH_URL + \"/connect/checksession\",\n revocation_endpoint: process.env.REACT_APP_AUTH_URL + \"/connect/revocation\",\n introspection_endpoint: process.env.REACT_APP_AUTH_URL + \"/connect/introspect\"\n};\n","import { IDENTITY_CONFIG, METADATA_OIDC } from \"../utils/authConst\";\nimport { UserManager, WebStorageStateStore, Log } from \"oidc-client\";\n\nexport default class AuthService {\n UserManager;\n\n constructor() {\n this.UserManager = new UserManager({\n ...IDENTITY_CONFIG,\n userStore: new WebStorageStateStore({ store: window.sessionStorage }),\n metadata: {\n ...METADATA_OIDC\n }\n });\n // Logger\n Log.logger = console;\n Log.level = Log.DEBUG;\n this.UserManager.events.addUserLoaded((user) => {\n if (window.location.href.indexOf(\"signin-oidc\") !== -1) {\n this.navigateToScreen();\n }\n });\n this.UserManager.events.addSilentRenewError((e) => {\n console.log(\"silent renew error\", e.message);\n });\n\n this.UserManager.events.addAccessTokenExpired(() => {\n console.log(\"token expired\");\n this.logout();\n });\n }\n\n signinRedirectCallback = () => {\n this.UserManager.signinRedirectCallback().then(() => {\n \"\";\n });\n };\n\n\n getUser = async () => {\n const user = await this.UserManager.getUser();\n if (!user) {\n return await this.UserManager.signinRedirectCallback();\n }\n return user;\n };\n\n parseJwt = (token) => {\n const base64Url = token.split(\".\")[1];\n const base64 = base64Url.replace(\"-\", \"+\").replace(\"_\", \"/\");\n return JSON.parse(window.atob(base64));\n };\n\n\n signinRedirect = () => {\n localStorage.setItem(\"redirectUri\", window.location.pathname);\n this.UserManager.signinRedirect({});\n };\n\n\n navigateToScreen = () => {\n window.location.replace(\"/\");\n };\n\n\n isAuthenticated = () => {\n const oidcStorage = JSON.parse(sessionStorage.getItem(`oidc.user:${process.env.REACT_APP_AUTH_URL}:${process.env.REACT_APP_IDENTITY_CLIENT_ID}`))\n\n return (!!oidcStorage && !!oidcStorage.access_token)\n };\n\n signinSilent = () => {\n this.UserManager.signinSilent()\n .then((user) => {\n console.log(\"signed in\", user);\n })\n .catch((err) => {\n console.log(err);\n });\n };\n signinSilentCallback = () => {\n this.UserManager.signinSilentCallback();\n };\n\n createSigninRequest = () => {\n return this.UserManager.createSigninRequest();\n };\n\n logout = () => {\n //ORIGINAL\n this.UserManager.signoutRedirect({\n id_token_hint: localStorage.getItem(\"id_token\")\n });\n this.UserManager.clearStaleState();\n \n // //FIX de ALFRD\n // const oidcStorage = JSON.parse(sessionStorage.getItem(`oidc.user:${process.env.REACT_APP_AUTH_URL}:${process.env.REACT_APP_IDENTITY_CLIENT_ID}`))\n\n // console.log(!!oidcStorage && !!oidcStorage.access_token);\n // if(!!oidcStorage && !!oidcStorage.access_token){\n // this.UserManager.signoutRedirect({\n // id_token_hint: oidcStorage.id_token\n // });\n // }else{\n // this.UserManager.signoutRedirect({});\n // }\n \n // this.UserManager.clearStaleState();\n };\n\n signoutRedirectCallback = () => {\n this.UserManager.signoutRedirectCallback().then(() => {\n localStorage.clear();\n window.location.replace(`${process.env.REACT_APP_PUBLIC_URL}/noticias`);\n });\n this.UserManager.clearStaleState();\n };\n}\n","import React, { Component } from \"react\";\nimport AuthService from \"../services/authService\";\n\nconst AuthContext = React.createContext({\n signinRedirectCallback: () => ({}),\n logout: () => ({}),\n signoutRedirectCallback: () => ({}),\n isAuthenticated: () => ({}),\n signinRedirect: () => ({}),\n signinSilentCallback: () => ({}),\n createSigninRequest: () => ({})\n});\n\nexport const AuthConsumer = AuthContext.Consumer;\n\nexport class AuthProvider extends Component {\n authService;\n constructor(props) {\n super(props);\n this.authService = new AuthService();\n }\n render() {\n return {this.props.children};\n }\n}\n","import React from \"react\";\nimport { Route } from \"react-router-dom\";\nimport { AuthConsumer } from \"../providers/authProvider\";\n\nexport const PrivateRoute = ({ component, ...rest }) => {\n const renderFn = Component => props => (\n \n {({ isAuthenticated, signinRedirect }) => {\n if (!!Component && isAuthenticated()) {\n return ;\n } else {\n signinRedirect();\n return Redireccionando;\n }\n }}\n \n );\n\n return ;\n};\n","const API_BASE_URL = `${process.env.REACT_APP_API_URL}/api/${process.env.REACT_APP_API_VERSION}`;\r\n\r\nconst DETALLE_INSCRIPCION_URL=`${API_BASE_URL}/Sorteo/GetEstadoInscripcionAsync`;\r\n\r\nexport {\r\n DETALLE_INSCRIPCION_URL\r\n};","import { DETALLE_INSCRIPCION_URL } from '../config';\r\n\r\nimport axios from 'axios';\r\n\r\nexport const getDetalleInscripcion = async (params) => {\r\n const { codigo, documento } = params;\r\n const url = `${DETALLE_INSCRIPCION_URL}?codigo=${codigo ? codigo : \"\"}&nroDocumento=${documento ? documento : \"\"}`;\r\n const result = await axios.get(url);\r\n return result.data;\r\n}\r\n\r\n/*const result = [\r\n //CABECERA\r\n { nombre: \"Mario\", apellido: \"Lopez\", dni: \"45667098\", nivel: \"Secundario\" },\r\n //RESPONSABLES\r\n [\r\n { nombre: \"Mario\", apellido: \"Lopez\", dni: \"32564889\", tipo: \"Principal\", vinculo: \"Padre\", principal: true },\r\n { nombre: \"Jose\", apellido: \"Lopez\", dni: \"45667098\", tipo: \"Secundario\", vinculo: \"Tutor\", principal: false },\r\n { nombre: \"Laura\", apellido: \"Sanchez\", dni: \"35662146\", tipo: \"Secundario\", vinculo: \"Madre\", principal: false },\r\n ],\r\n //ESTABLECIMIENTOS SELECCIONADOS\r\n [\r\n { id: 1, nombre: \"Comercio\", direccion: \"Costanera 123\", turno: \"Mañana\", hermano: true, familiar: false, inscAsociada: true, estado: true },\r\n { id: 2, nombre: \"Regional\", direccion: \"Regional 123\", turno: \"Tarde\", hermano: false, familiar: true, inscAsociada: false, estado: true },\r\n { id: 3, nombre: \"Normal\", direccion: \"Normal 123\", turno: \"Mañana\", hermano: false, familiar: false, inscAsociada: false, estado: false },\r\n ],\r\n //SORTEO\r\n [\r\n //PROPONER ESTABLECER PRIORIDDAD MEDIANTE BANDERA Y SI FUE A ESTATAL\r\n //BANDERA = 2\r\n //ESTATAL = 1\r\n //ESTATAL Y BANDERA = 3\r\n //NINGUNO = 0\r\n { establecimientoId: 1, bandera: true, estatal: true, nroOrden: 45 },\r\n { establecimientoId: 2, bandera: true, estatal: true, nroOrden: 50 },\r\n { establecimientoId: 3, bandera: true, estatal: true, nroOrden: 16 },\r\n ],\r\n //RESULTADOS\r\n [\r\n { establecimientoId: 1, estado: \"Obutvo el lugar\", nroOrden: 45 },\r\n { establecimientoId: 2, estado: \"Sin lugar\", nroOrden: 50 },\r\n { establecimientoId: 3, estado: \"Sin lugar\", nroOrden: 16 },\r\n ]\r\n ]*/","import * as requestFromServer from './DetalleInscripcionCrud';\r\n\r\nimport { detalleInscripcionSlice, callTypes } from './DetalleInscripcionSlice';\r\n\r\nconst { actions } = detalleInscripcionSlice;\r\n\r\nexport const fetchDetalleInscripcionInformacion = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callTypes: callTypes.action }));\r\n return requestFromServer.getDetalleInscripcion(queryParams)\r\n .then(response => {\r\n const detalleInscripcionInformacion = response;\r\n dispatch(actions.detalleInscripcionFetched({ detalleInscripcionInformacion }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const stateLimpiar = queryParams => dispatch => {\r\n dispatch(actions.reiniciarDatos());\r\n};","import React from 'react';\r\nimport { useSnackbar } from 'notistack';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport CheckIcon from '@material-ui/icons/Check';\r\n\r\nconst SnackBarCustom = (props) => {\r\n const { tipo, mensaje, aceptar } = props;\r\n const { enqueueSnackbar, closeSnackbar } = useSnackbar();\r\n\r\n function close(key) {\r\n if (aceptar) {\r\n aceptar();\r\n };\r\n closeSnackbar(key);\r\n };\r\n return (\r\n
\r\n {\r\n enqueueSnackbar(mensaje, {\r\n variant: tipo,\r\n preventDuplicate: true,\r\n autoHideDuration: aceptar ? 10000 : 4000,\r\n onClose: aceptar ? aceptar : null,\r\n action: key => (\r\n close(key)} >\r\n {aceptar ?\r\n \r\n :\r\n \r\n }\r\n \r\n )\r\n ,\r\n anchorOrigin: {\r\n vertical: 'bottom',\r\n horizontal: 'right',\r\n }\r\n })\r\n }\r\n
\r\n )\r\n}\r\n\r\nexport default SnackBarCustom;\r\n //const Icon = variantIcon[tipo];\r\n //import clsx from 'clsx';\r\n//import { Snackbar, SnackbarContent } from '@material-ui/core';\r\n/*\r\nconst variantIcon = {\r\n success: CheckCircleIcon,\r\n warning: WarningIcon,\r\n error: ErrorIcon,\r\n info: InfoIcon,\r\n};\r\nimport CheckCircleIcon from '@material-ui/icons/CheckCircle';\r\nimport ErrorIcon from '@material-ui/icons/Error';\r\nimport InfoIcon from '@material-ui/icons/Info';\r\nimport WarningIcon from '@material-ui/icons/Warning';\r\nimport { amber, green } from '@material-ui/core/colors';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\n\r\nconst useStyles1 = makeStyles(theme => ({\r\n success: {\r\n backgroundColor: green[600],\r\n },\r\n error: {\r\n backgroundColor: theme.palette.error.dark,\r\n },\r\n info: {\r\n backgroundColor: theme.palette.primary.main,\r\n },\r\n warning: {\r\n backgroundColor: amber[700],\r\n },\r\n icon: {\r\n fontSize: 20,\r\n },\r\n iconVariant: {\r\n opacity: 0.9,\r\n marginRight: theme.spacing(1),\r\n },\r\n message: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n },\r\n}));\r\n //const [verSnack, setVerSnack] = useState(true);\r\n const classes = useStyles1();\r\n //className:clsx(classes[tipo]),\r\n\r\nfunction cerrarSnack(event, reason) {\r\n if (reason === 'clickaway') {\r\n return;\r\n };\r\n if (aceptar) {\r\n aceptar();\r\n };\r\n setVerSnack(false);\r\n };\r\n\r\n\r\n \r\n \r\n {mensaje}\r\n \r\n }\r\n action={[\r\n \r\n {aceptar ?\r\n \r\n :\r\n \r\n }\r\n \r\n ,\r\n ]}\r\n />\r\n \r\n*/","import React, { useState } from 'react';\r\nimport { useDispatch, shallowEqual, useSelector } from \"react-redux\";\r\n//ACCIONES PARA DISPATCH\r\nimport * as actionsDetalleInscripcion from '../_redux/DetalleInscripcion/DetalleInscripcionActions'\r\n//Formik\r\nimport { Formik, Field, Form, ErrorMessage } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport { Button, Spinner } from 'react-bootstrap';\r\n\r\n//SNACK PARA VER EL ERROR\r\nimport SnackBarCustom from '../../../Comun/SnackBars/SnackBarCustom';\r\n\r\n//RADIO BUTTONS\r\nimport { Radio, RadioGroup, FormControlLabel, Card, CardContent } from '@material-ui/core';\r\n\r\n//ICONOS\r\nimport ErrorIcon from '@material-ui/icons/Error';\r\n\r\n//ESQUEMA DE FORMULARIO\r\nconst documentoNumeroSchema = Yup.object().shape({\r\n documentoNumero: Yup.string()\r\n .matches(/^\\d+$/, \"Solo debe ingresar números\")\r\n .required(\"Debe ingresar el número de documento\"),\r\n});\r\nconst inscripcionCodigoSchema = Yup.object().shape({\r\n inscripcionCodigo: Yup.string()\r\n .matches(/^\\w+$/, \"Solo debe ingresar números y letras\")\r\n .min(6, \"Debe ingresar 6 carácteres o mas\")\r\n .max(9, \"Solo se permiten 9 carácteres\")\r\n .required(\"Debe ingresar el código de inscripción asociado al aspirante\"),\r\n});\r\n//VALORES INICIALES FORMIK\r\nconst inscripcionValoresIniciales = {\r\n documentoNumero: '',\r\n inscripcionCodigo: '',\r\n};\r\n\r\nconst BuscarInscripcion = () => {\r\n //ESTADO PARA BUSCAR POR NÚMERO DE DOCUMENTO O CODIGO DE INSCRIPCIÓN\r\n const [buscarDocumento, setBuscarDocumento] = useState(true);\r\n //DISPATCH\r\n const dispatch = useDispatch();\r\n\r\n const { listLoading, error } = useSelector(\r\n state => state.detalleInscripcion,\r\n shallowEqual\r\n );\r\n return (\r\n <>\r\n {\r\n setTimeout(() => {\r\n const { inscripcionCodigo, documentoNumero } = values;\r\n //console.log(values);\r\n dispatch(actionsDetalleInscripcion.fetchDetalleInscripcionInformacion({ codigo: inscripcionCodigo, documento: documentoNumero }));\r\n setSubmitting(false);\r\n }, 500);\r\n }}\r\n >\r\n {formik =>\r\n
\r\n

Detalle de Inscripción

\r\n
\r\n
Buscar inscripción por:
\r\n {\r\n formik.resetForm();\r\n setBuscarDocumento(!buscarDocumento);\r\n }}>\r\n } label=\"DNI\" />\r\n } label=\"Código de Inscripción\" />\r\n \r\n
\r\n {!buscarDocumento &&\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n AVISO\r\n

El código de inscripción fue enviado al correo con el cual se registró para realizar la inscripción

\r\n
\r\n
\r\n
\r\n
\r\n }\r\n
\r\n {buscarDocumento ?\r\n
\r\n \r\n \r\n Solo números sin puntos o comas\r\n
\r\n
\r\n :\r\n\r\n
\r\n \r\n \r\n Solo números y letras\r\n
\r\n
\r\n }\r\n
\r\n
\r\n {listLoading ?\r\n \r\n :\r\n \r\n }\r\n
\r\n {error && }\r\n \r\n }\r\n \r\n \r\n )\r\n}\r\n\r\nexport default BuscarInscripcion;","import React from 'react';\r\nimport PropTypes from \"prop-types\";\r\n\r\n//TOOLTIPS\r\nimport { OverlayTrigger, Tooltip } from 'react-bootstrap';\r\n\r\n\r\nconst IconInfo = (props) => {\r\n const {\r\n mensaje,\r\n icono: Icono\r\n } = props;\r\n\r\n return (\r\n {mensaje}}>\r\n \r\n \r\n )\r\n}\r\n\r\nIconInfo.prototype={icono:PropTypes.element}\r\n\r\nexport default IconInfo;","import React from 'react';\r\n//ICONO CON TOOLTIP\r\nimport IconInfo from '../../../Comun/IconInfo/IconInfo';\r\n\r\n//ICONOS\r\nimport {\r\n AccountBalanceOutlined, RoomOutlined, SupervisorAccount, People,\r\n AttachFile, Person, AccountBox, Error, Email, Phone, Payment, QueryBuilder\r\n} from '@material-ui/icons';\r\n\r\nconst PrimerPaso = (props) => {\r\n const { responsables, establecimientos } = props;\r\n\r\n return (\r\n <>\r\n

Responsable{responsables.length > 0 && \"s\"}:

\r\n
\r\n {responsables.map((item) =>\r\n
\r\n
\r\n {item.apellido}, {item.nombre} ({item.vinculo}). {item.principal && }\r\n
\r\n {/*
\r\n
{item.dni}.
\r\n
{item.telefono}.
\r\n
{item.email}.
\r\n
*/}\r\n
\r\n )}\r\n
\r\n

Establecimiento{establecimientos.length > 0 && \"s\"} Seleccionado{establecimientos.length > 0 && \"s\"}:

\r\n {establecimientos.map((item, i) =>\r\n
\r\n
{i + 1}. {item.cueAnexo} - {item.nombre}.
\r\n
\r\n
{item.turno}.
\r\n
{item.direccion}.
\r\n {item.mensaje &&
{item.mensaje}
}\r\n
\r\n\r\n
\r\n {/*Información Relacionada al Establecimiento*/}\r\n {(item.hermano || item.familiar || item.inscAsociada) &&\r\n
\r\n {item.hermano &&
Tiene familiar directo estudiando aquí.
}\r\n {item.familiar &&
Tiene familiar directo trabajando aquí.
}\r\n {item.inscAsociada &&
Tiene una inscripción asociada aquí.
}\r\n
\r\n /*:\r\n
No contiene información relacioanda con este establecimiento.
*/\r\n }\r\n
\r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default PrimerPaso;","import React from 'react';\r\n//ICONO CON TOOLTIP\r\nimport IconInfo from '../../../Comun/IconInfo/IconInfo';\r\n//ICONOS\r\nimport { AccountBalanceOutlined, RoomOutlined, QueryBuilder } from '@material-ui/icons'\r\n\r\nconst SegundoPaso = (props) => {\r\n const { establecimientos } = props;\r\n return (\r\n <>\r\n {establecimientos.length === 0 &&\r\n \r\n No salió sorteado en ninguna de las opciones seleccionadas.\r\n \r\n }\r\n {establecimientos.length === 1 &&\r\n El aspirante ha sido asignado en la siguiente opción:\r\n }\r\n {establecimientos.length > 1 &&\r\n El aspirante ha sido asignado en las siguientes opciones:\r\n }\r\n {establecimientos.length > 0 &&\r\n establecimientos.map((item, i) =>\r\n
\r\n
{i + 1}. {item.cueAnexo} - {item.nombre}.
\r\n
\r\n
{item.turno}.
\r\n
{item.direccion}.
\r\n {/*
Prioridad de Inscripción: {item.prioridad}.
*/}\r\n
Número de orden asigando por sorteo: {item.nroOrdenEnElSorteo}
\r\n {/*
{item.turno}.
\r\n
{item.direccion}.
*/}\r\n
\r\n
\r\n )\r\n }\r\n \r\n )\r\n}\r\n\r\nexport default SegundoPaso;","import React from 'react'\r\n\r\nconst TercerPaso = ({estado}) => {\r\n return (\r\n <>\r\n {estado !== '3' ? (\r\n <>\r\n

El proceso de asignación de vacantes se realizará el 28/12/2023.

\r\n

Una vez terminado el sorteo será informado de los resultados.

\r\n

Por favor, sepa entender que estamos haciendo lo posible para lograr un sorteo justo para todos.

\r\n \r\n ) : ( \r\n <>\r\n

El proceso de asignación de vacantes correspondiente al primer llamado se realizó el 26/11/2024.

\r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default TercerPaso;","import React, { useState } from 'react'\r\nimport { Stepper, Step, StepLabel, StepContent, Typography, Button as ButtonUI } from '@material-ui/core';\r\nimport moment from 'moment';\r\nimport {Row, Col} from 'react-bootstrap';\r\n\r\n\r\n//TRAIGO LOS COMPONENTES DE LOS PASOS\r\nimport PrimerPaso from './PrimerPaso';\r\nimport SegundoPaso from './SegundoPaso';\r\nimport TercerPaso from './TercerPaso';\r\n//import CuartoPaso from './CuartoPaso';\r\n\r\n//MATERIAL UI CARD \r\nimport { Card, CardContent } from '@material-ui/core';\r\n\r\nimport ErrorIcon from '@material-ui/icons/Error';\r\n\r\n\r\nconst Pasos = (props) => {\r\n //Obtengo el prop con la info de los pasos\r\n const { data } = props;\r\n\r\n //ESTADOS\r\n const [activeStep, setActiveStep] = useState(data && data.estado !== '3' ? 0 : 2);\r\n\r\n function handleNext() {\r\n setActiveStep(prevActiveStep => prevActiveStep + 1);\r\n };\r\n\r\n function handleBack() {\r\n setActiveStep(prevActiveStep => prevActiveStep - 1);\r\n };\r\n\r\n // const handleReset = () => {\r\n // setActiveStep(0);\r\n // };\r\n\r\n \r\n\r\n if (data) {\r\n //SACO LOS ESTABLECIMIENTOS APROBADOS PARA EL SORTEO\r\n const establecimientosAprobados = data.establecimientosSeleccionados.filter(filtrado => filtrado.ingreso);\r\n //ARRAY DE PASOS USADOS PARA EL MAPEO EN EL JSX\r\n const steps = [\r\n { nombre: 'Registro del Aspirante', paso: },\r\n // { nombre: 'Confirmación de los Datos', paso: },\r\n { nombre: 'Sorteo', paso: },\r\n { nombre: 'Resultado', paso: }\r\n ];\r\n\r\n //FECHA HOY\r\n const segundoLlamado = moment([2024,1,18]);\r\n const creacion = moment(data.fechaCreacion);\r\n\r\n return (\r\n <>\r\n
\r\n {/*

Información del Aspirante

*/}\r\n

{data.aspirante.apellido}, {data.aspirante.nombre}

\r\n
DNI: {data.aspirante.dni}
\r\n
\r\n {data.estado !== '3' &&\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n IMPORTANTE\r\n

Esta inscripción aún no se sorteó, debe esperar a la próxima fecha de sorteo

\r\n
\r\n
\r\n
\r\n
\r\n }\r\n \r\n \r\n
\r\n
Llamado: {(segundoLlamado.diff(creacion, 'days') <= 0) ? \"2\" : \"1\"}
      \r\n
Número de Sorteo: {data.nroSorteo}
\r\n
\r\n \r\n \r\n
Nivel Seleccionado: {data.nivel} - {data.curso}
\r\n \r\n \r\n
Fecha de Inscripción: {moment(data.fechaCreacion).format(\"DD/MM/YYYY - HH:mm\")} Hs.
\r\n \r\n
\r\n \r\n \r\n \r\n {steps.map((item, i) => (\r\n \r\n
{item.nombre}
\r\n \r\n {item.paso}\r\n
\r\n {activeStep > 0 &&\r\n \r\n Atras\r\n \r\n }\r\n {activeStep < 2 &&\r\n \r\n Siguiente\r\n \r\n }\r\n
\r\n
\r\n
\r\n ))}\r\n
\r\n {/*activeStep === steps.length &&\r\n Ver de Nuevo\r\n */}\r\n \r\n
\r\n \r\n )\r\n } else {\r\n return (\r\n
\r\n

Información del Aspirante No Encontrada

\r\n
\r\n )\r\n }\r\n\r\n}\r\n\r\nexport default Pasos;","import React from 'react'\r\n//MATERIAL UI CARD\r\nimport { Card, CardContent } from \"@material-ui/core\";\r\n\r\nconst MesaAyuda = () => {\r\n return (\r\n
\r\n \r\n \r\n
\r\n
Ante cualquier inconveniente, no dude en llamarnos.
\r\n

\r\n Mesa de ayuda al teléfono: \r\n (0379) - \r\n 4469755 - \r\n 4464558 - \r\n 4428990 / \r\n 0800-888-2790\r\n

\r\n

\r\n WhatsApp: \r\n +54 9 379 450-4093 / \r\n +54 9 379 484-6860 / \r\n +54 9 379 424-5444\r\n

\r\n
\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default MesaAyuda;","import React, { useMemo } from 'react';\r\nimport { useDispatch, shallowEqual, useSelector } from \"react-redux\";\r\nimport { useHistory } from 'react-router-dom'\r\n\r\n\r\n//REDUX DEL DETALLE DE LA INSCRIPCION\r\nimport * as actionsDetalleInscripcion from './_redux/DetalleInscripcion/DetalleInscripcionActions';\r\n\r\nimport { Card, CardHeader, CardHeaderToolbar, CardBody, } from \"../../../../_metronic/_partials/controls\";\r\nimport { Button } from 'react-bootstrap';\r\n\r\n//COMPONONETE FORMULARIO PARA BUSCAR LA INSCRIPCION\r\nimport BuscarInscripcion from './Form/BuscarInscripcion';\r\n\r\n//COMPONONETE QUE MUESTRAN TODOS LOS PASOS CON LOS DATOS DE LA INSCRIPCION\r\nimport Pasos from './Steps/Pasos';\r\n\r\n//INFORMACION DE MESA DE AYUDA\r\nimport MesaAyuda from '../../../modules/Comun/Cards/MesaAyuda';\r\n\r\n\r\nimport objectPath from \"object-path\";\r\n// LayoutContext\r\nimport { useHtmlClassService } from \"../../../../_metronic/layout/_core/MetronicLayout\";\r\n// Import Layout components\r\nimport { Header } from \"../../../../_metronic/layout/components/header/Header\";\r\nimport { HeaderMobile } from \"../../../../_metronic/layout/components/header-mobile/HeaderMobile\";\r\n// import {Aside} from \"./aside/Aside\";\r\nimport { Footer } from \"../../../../_metronic/layout/components/footer/Footer\";\r\n//import {LayoutInit} from \"./LayoutInit\";\r\n//import {SubHeader} from \"../../../../_metronic/layout/components/subheader/SubHeader\";\r\n// import {QuickPanel} from \"./extras/offcanvas/QuickPanel\";\r\n// import {QuickUser} from \"./extras/offcanvas/QuickUser\";\r\n// import {ScrollTop} from \"./extras/ScrollTop\";\r\n// import {StickyToolbar} from \"./extras/StickyToolbar\";\r\n\r\n\r\nconst DetalleInscripcion = () => {\r\n const history = useHistory();\r\n //DISPATCH\r\n const dispatch = useDispatch();\r\n\r\n const { detalleInscripcionInformacion } = useSelector(\r\n state => state.detalleInscripcion,\r\n shallowEqual\r\n );\r\n\r\n function reiniciarDatos() {\r\n dispatch(actionsDetalleInscripcion.stateLimpiar());\r\n };\r\n\r\n const uiService = useHtmlClassService();\r\n // Layout settings (cssClasses/cssAttributes)\r\n const layoutProps = useMemo(() => {\r\n return {\r\n layoutConfig: uiService.config,\r\n selfLayout: objectPath.get(uiService.config, \"self.layout\"),\r\n asideDisplay: objectPath.get(uiService.config, \"aside.self.display\"),\r\n subheaderDisplay: objectPath.get(uiService.config, \"subheader.display\"),\r\n stickyToolbarDisplay: objectPath.get(uiService.config, \"extras.toolbar.display\"),\r\n desktopHeaderDisplay: objectPath.get(\r\n uiService.config,\r\n \"header.self.fixed.desktop\"\r\n ),\r\n contentCssClasses: uiService.getClasses(\"content\", true),\r\n contentContainerClasses: uiService.getClasses(\"content_container\", true),\r\n contentExtended: objectPath.get(uiService.config, \"content.extended\")\r\n };\r\n }, [uiService]);\r\n\r\n return (\r\n <>\r\n {/*begin::Main*/}\r\n \r\n
\r\n {/*begin::Page*/}\r\n
\r\n {/* {layoutProps.asideDisplay && (
\r\n {/*end::Page*/}\r\n
\r\n \r\n )\r\n}\r\n\r\nexport default DetalleInscripcion;","import React, { useState } from 'react'\r\nimport { Link } from 'react-router-dom';\r\nimport { Button, IconButton, makeStyles, Drawer, List, ListItem, ListItemIcon, ListItemText, Divider } from '@material-ui/core';\r\n\r\n//IMAGENES\r\nimport Logo from './Logo-GobiernoCorrientes-300x52.png';\r\n//import Teclado from './pcteclado_01.jpg'\r\n\r\n//ICONOS\r\nimport DescriptionIcon from '@material-ui/icons/Description';\r\nimport MenuIcon from '@material-ui/icons/Menu';\r\nimport PersonIcon from '@material-ui/icons/Person';\r\nimport SearchIcon from '@material-ui/icons/Search';\r\nimport ChevronRightIcon from '@material-ui/icons/ChevronRight';\r\nimport WhatsAppIcon from '@material-ui/icons/WhatsApp';\r\nimport PhoneIcon from '@material-ui/icons/Phone';\r\n//import HelpOutlineIcon from '@material-ui/icons/HelpOutline';\r\n\r\nimport parse from \"html-react-parser\";\r\n\r\nconst useStyles = makeStyles({\r\n //ESTILOS PARA BOTONES DEL HEADER\r\n buttonHeader: {\r\n fontSize: 15,\r\n '&:hover': {\r\n color: 'white'\r\n }\r\n },\r\n //ESTILOS PARA LOS BOTONES DE REDIRECCION ARRIBA DEL VIDEO 1ºER Y EN EL 1ER VIDE\r\n buttonRedirect: {\r\n color: '#1abc9c',\r\n '&:hover': {\r\n color: 'black'\r\n }\r\n },\r\n //ESTILOS PARA LOS BOTONES QUE VISUALIZAN PDF\r\n buttonPDF: {\r\n color: '#232f20cf',\r\n fontSize: 20,\r\n '&:hover': {\r\n color: 'black',\r\n fontWeight: 'bold',\r\n }\r\n },\r\n //ESTILO PARA LOS BOTONES LINK DEL FOOTER\r\n linkFooter: {\r\n color: '#5D615F',\r\n fontSize: 16,\r\n '&:hover': {\r\n color: 'white'\r\n }\r\n },\r\n //ESTILO PARA TITULOS DE SITIOS DE INTERES\r\n titleFooter: {\r\n color: '#969998',\r\n },\r\n iconPhone: {\r\n color: 'green',\r\n marginBottom: 1,\r\n marginRight: 1\r\n }\r\n});\r\n\r\n\r\n\r\nconst Landing = () => {\r\n const classes = useStyles();\r\n //ESTADOS\r\n const [verMenu, setVerMenu] = useState(false);\r\n //CERRAR MENU IZQUIERDA\r\n const toggleDrawer = (event) => {\r\n if (event.type === 'keydown' && (event.key === 'Tab' || event.key === 'Shift')) {\r\n return;\r\n }\r\n setVerMenu(false);\r\n };\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n \"Corrientes\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 setVerMenu(true)}>\r\n \r\n \r\n \r\n \r\n setVerMenu(false)}>\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

Inscripciones online

\r\n

Ciclo Lectivo {process.env.REACT_APP_CicloLectivoActual}

\r\n
\r\n

Para saber el resultado de la inscripción consulte el estado aquí

\r\n
\r\n {/*\r\n

\r\n Las inscripciones estarán habilitadas en las siguientes fechas:
\r\n Para el Nivel Inicial {parse(process.env.REACT_APP_NivelInicialPeriodo)}
\r\n Para el Nivel Primario {parse(process.env.REACT_APP_NivelPrimarioPeriodo)}
\r\n Para el Nivel Secundario {parse(process.env.REACT_APP_NivelSecundarioPeriodo)}\r\n

\r\n */}\r\n {/*

*/}\r\n {/* Los establecimientos que NO se encuentren en los siguientes listados es porque no poseen lugares disponibles.*/}\r\n {/* Los alumnos que ya tengan una vacante asignada por el proceso de inscripción anterior no podrán realizar una nueva inscripción. */}\r\n {/*

*/}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n {/*

*/}\r\n {/* Instructivo: Inscripción Online {process.env.REACT_APP_CicloLectivoActual}*/}\r\n {/* Establecimientos con vacantes para llamado Febrero*/}\r\n {/*

*/}\r\n\r\n\r\n

VACANTES A CONFIRMAR CON LOS ESTABLECIMIENTOS

\r\n {/* Lista de Establecimientos Nivel Inicial
*/}\r\n Listado de Vacantes (a confirmar con los Establecimientos)
\r\n {/* Lista de Establecimientos Nivel Primario
*/}\r\n {/* Lista de Establecimientos Nivel Secundario
*/}\r\n

\r\n

\r\n ¿Cómo registrarse en la página inscripciones.mec.gob.ar?\r\n

\r\n \r\n {/*

*/}\r\n {/* ¿Cómo realizar la inscripción desde la Página Web?*/}\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

Mesas de Ayuda

\r\n

Teléfonos:

\r\n
(0379) - 4469755
\r\n
(0379) - 4464558
\r\n
0800-888-2790
\r\n
\r\n

WhatsApp:

\r\n
+54 9 379 450-4093
\r\n
+54 9 379 484-6860
\r\n
+54 9 379 424-5444
\r\n
\r\n
\r\n
\r\n

Ministerio de Educación de Corrientes

\r\n
\r\n \r\n )\r\n}\r\n\r\nexport default Landing;","export function validacionDNIS(AlumnoDNI, TutorDNI, reCaptchaToken) {\r\n if (AlumnoDNI === \"1234567\" && TutorDNI === \"1234567\" && reCaptchaToken.length > 0) {\r\n return { estado: true, mensaje: \"documento\" };\r\n } else if (AlumnoDNI === \"12345678\" && TutorDNI === \"1234567\" && reCaptchaToken.length > 0) {\r\n return { estado: true, mensaje: \"tracking\" };\r\n } else {\r\n return { estado: false, mensaje: \"Los valores ingresados no son validos\" };\r\n };\r\n};\r\n\r\nexport function verificarEntero(entero) {\r\n if (entero.length > 0) {\r\n const enteroSoloNumeros = parseInt(entero, 10);//TRANSFORMO A ENTERO (SOLO NúMEROS)\r\n if (isNaN(enteroSoloNumeros)) {\r\n return { estado: false, valor: \"\" };\r\n } else {\r\n return { estado: true, valor: enteroSoloNumeros.toString() };\r\n };\r\n } else {\r\n return { estado: true, valor: \"\" };\r\n };\r\n};\r\n\r\nexport function validarLongitudEntero(longitud, min = 1, max = 15) {\r\n if (longitud > 0 && longitud < min) {\r\n return { estado: false, mensaje: \"Los caracteres debern ser igual o mayor a \", min };\r\n } else if (longitud >= min && longitud <= max) {\r\n return { estado: true, mensaje: \"Cumple longitudes\" };\r\n } else if (longitud > max) {\r\n return { estado: false, mensaje: \"Los caracteres debern ser igual o menor a \", max };\r\n } else {\r\n return { estado: false, mensaje: \"\" };\r\n };\r\n};","import data from './data.json';\n\n\nexport default function Countries(){\n //const countries=JSON.parse(data);\n\n return data;\n};\n\n\n","import React, { createContext, useReducer, useState, useEffect } from 'react';\r\nimport { shallowEqual, useSelector } from \"react-redux\";\r\nimport * as _ from \"lodash\";\r\nimport { verificarEntero } from '../funciones/validacionDNIS';\r\n//ISO PAISES/PROVINCIAS\r\nimport Countries from '../../../../_metronic/countries/Countries';\r\nexport const PreInscripcionUIContext = createContext();\r\n\r\nexport const PreInscripcionUIConsumer = PreInscripcionUIContext.Consumer;\r\n\r\n\r\n//Formateo loas paises a array\r\nconst paises = Countries();\r\n\r\n//SE FEFINE EL OBJETO DOMICILIO PARA INCLUIR DENTRO DE PERSONA Y DIFERENCIAR LUGAR DE NACIMIENTO\r\nfunction Domicilio(calle = \"\", numero = \"\", piso = \"\", dpto = \"\", departamento = \"\", localidad = \"\", domicilioId = 0) {\r\n this.calle = calle;\r\n this.numero = numero;\r\n this.piso = piso;\r\n this.dpto = dpto;\r\n this.departamento = departamento;\r\n this.localidad = localidad;\r\n this.domicilioId = domicilioId;\r\n};\r\n\r\n//SE DEFINE EL OBJETO DOCUMENTACION\r\nfunction Documentacion(sexo = \"\", documentoNumero = \"\") {\r\n this.sexo = sexo;\r\n this.documentoNumero = documentoNumero;\r\n};\r\n\r\n//SE DEFINE EL OBJETO DATOS PERSONALES\r\nfunction DatosPersonales(nombre = \"\", apellido = \"\", fechaNacimiento = new Date(), pais = 10, provincia = 6, localidad = \"\") {\r\n this.nombre = nombre;\r\n this.apellido = apellido;\r\n this.fechaNacimiento = fechaNacimiento;\r\n this.pais = pais;\r\n this.provincia = provincia;\r\n this.localidad = localidad;\r\n};\r\n\r\n//SE DEFINE EL OBJETO PERSONA\r\nfunction Persona(id = null, sexo = \"\", documentoNumero = \"\", nombre = \"\", apellido = \"\",\r\n fechaNacimiento = new Date(), edad = \"\", pais = 10, provincia = 6, localidad = \"\",\r\n registroCivilvalidacion = false, validadoPorElRegistroCivil = false, domicilio = new Domicilio(),\r\n vinculo = \"\", vinculoId = 0, email = \"\", telefono = \"\", personaRegistroCivilId = 0) {\r\n Documentacion.call(this, sexo, documentoNumero);\r\n DatosPersonales.call(this, nombre, apellido, fechaNacimiento, pais, provincia, localidad)\r\n this.domicilio = domicilio;\r\n this.registroCivilvalidacion = registroCivilvalidacion;\r\n this.validadoPorElRegistroCivil = validadoPorElRegistroCivil;\r\n this.id = id;\r\n this.vinculo = vinculo;\r\n this.vinculoId = vinculoId;\r\n this.email = email;\r\n this.telefono = telefono;\r\n this.personaRegistroCivilId = personaRegistroCivilId;\r\n this.edad = edad;\r\n};\r\n\r\n//SE FEFINE EL OBJETO APISRANTE HEREDANDO PROPIEDADES DE PERSONA\r\nfunction Aspirante(id = null, inscripcionVinculadaId = null, inscripcionVinculadaNumero = \"\", sexo = \"\", documentoNumero = \"\", nombre = \"\", apellido = \"\", \r\n fechaNacimiento = new Date(), edad = \"\", pais = 10, provincia = 6, localidad = \"\", registroCivilvalidacion = false,\r\n domicilio = new Domicilio(), vinculo = \"\", vinculoId = 0, email = \"\", telefono = \"\",\r\n personaRegistroCivilId = 0, inscripcionNumero = \"\", inscripcionId = 0, validadoPorElRegistroCivil = false) {\r\n Persona.call(this, id, sexo, documentoNumero, nombre, apellido, fechaNacimiento, edad, pais, provincia, localidad, registroCivilvalidacion,\r\n validadoPorElRegistroCivil, domicilio, vinculo, vinculoId, email, telefono, personaRegistroCivilId);\r\n\r\n this.inscripcionNumero = inscripcionNumero;\r\n this.inscripcionId = inscripcionId;\r\n this.inscripcionVinculadaNumero = inscripcionVinculadaNumero;\r\n this.inscripcionVinculadaId = inscripcionVinculadaId;\r\n};\r\n\r\n//SE FEFINE EL OBJETO RESPONSABLE HEREDANDO PROPIEDADES DE PERSONA\r\nfunction Responsable(id = null, aspiranteResponsableId = null, sexo = \"\", documentoNumero = \"\",\r\n nombre = \"\", apellido = \"\", fechaNacimiento = new Date(), edad = \"\",\r\n pais = 10, provincia = 6, localidad = \"\", registroCivilvalidacion = false, validadoPorElRegistroCivil = false, domicilio = new Domicilio(),\r\n vinculo = \"\", vinculoId = 0, email = \"\", telefono = \"\", personaRegistroCivilId = 0\r\n) {\r\n Persona.call(this, id, sexo, documentoNumero, nombre, apellido, fechaNacimiento, edad, pais, provincia, localidad, registroCivilvalidacion, validadoPorElRegistroCivil,\r\n domicilio, vinculo, vinculoId, email, telefono, personaRegistroCivilId);\r\n this.aspiranteResponsableId = aspiranteResponsableId;\r\n};\r\n\r\n//SE DEFINE EL OBJETO NIVEL DE ENSEÑANZA\r\nfunction NivelEnseñanza(nivel = \"\", grado = \"\") {\r\n this.nivel = nivel;\r\n this.grado = grado;\r\n};\r\n\r\n//SE DEFINE EL OBJETO EXTRAS\r\nfunction Extras(fueEstatal = false, fueAbanderaro = false, establecimientoBandera = \"\", establecimientoEstatal = \"\") {\r\n this.fueEstatal = fueEstatal;\r\n this.fueAbanderaro = fueAbanderaro;\r\n this.establecimientoBandera = establecimientoBandera;\r\n this.establecimientoEstatal = establecimientoEstatal;\r\n};\r\n\r\n//SE DEFINE EL OBJETO ESTABLECIMIENTO\r\n/*NO SE USA DE MOMENTO\r\nfunction Establecimiento(nombre = \"\", direccion = \"\", barrio = \"\", telefono = \"\", vacantes = \"\", listaEspera = \"\") {\r\n this.nombre = nombre;\r\n this.direccion = direccion;\r\n this.barrio = barrio;\r\n this.telefono = telefono;\r\n this.vacantes = vacantes;\r\n this.listaEspera = listaEspera;\r\n};\r\n*/\r\n\r\n//VARIABLES PARA REDUCER DATOS INSCRIPCIONES\r\nconst inscripcionesBaseReducer = [];\r\nconst InscripcionesReducer = (state, action) => {\r\n switch (action.type) {\r\n case 'guardarInscripcion':\r\n state.push(action.payload);\r\n return state;\r\n\r\n case 'reiniciarDatos':\r\n state = inscripcionesBaseReducer;\r\n return state;\r\n\r\n case 'cargarInscripciones':\r\n state = action.payload;\r\n return state;\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\n//VARIABLES PARA REDUCER DATOS PERSONALES\r\nconst aspirante = new Aspirante();\r\nconst responsables = [];\r\nconst nivelEnseñanza = new NivelEnseñanza();\r\nconst establecimientos = [];\r\nconst numeroVinculacion = \"\";\r\nconst extras = new Extras();\r\nconst responsablePrincipalPosicion = 0;\r\n\r\n\r\nconst datosPersonalesBaseReducer = {\r\n //OBJETO QUE GUARDARA PROPIEDADES DEL ASPIRANTE\r\n aspirante,\r\n //ARRAY DE OBJETOS QUE GUARDARA UNA LISTA DE RESPONSABLES CON SUS PROPIEDADES\r\n responsables,\r\n //LA POSICION DEL RESPONSABLE PRINCIPAL EN EL ARRRAY DE RESPONSABLES\r\n responsablePrincipalPosicion,\r\n //OBJETO QUE GUARDA EL NIVEL SELECCIONADO PARA INSCRIPCION\r\n nivelEnseñanza,\r\n //ARRAY DE OBJETOS QUE GUARDA LOS ESTABLECIMIENTOS DE INSCRIPCION\r\n establecimientos,\r\n //NUMERO PARA VINCULAR OTRA INSCRIPCION\r\n numeroVinculacion,\r\n //OBJETO QUE GUARDA INFORMACION EXTRA\r\n extras\r\n};\r\n\r\n\r\nconst DatosPersonalesReducer = (state, action) => {\r\n //NO SE USA Object.assign XQ SI VIENEN VALORES NO DESEADOS LOS GUARDA.\r\n switch (action.type) {\r\n\r\n /*GUARDAR INFO*/\r\n case 'guardarAspiranteDocumentacion':\r\n state.aspirante.sexo = action.payload.sexo;\r\n state.aspirante.documentoNumero = action.payload.documentoNumero;\r\n state.aspirante.registroCivilvalidacion = action.payload.registroCivilvalidacion;\r\n state.aspirante.personaRegistroCivilId = action.payload.personaRegistroCivilId;\r\n //console.log(state);\r\n return state;\r\n\r\n case 'guardarAspiranteDatosPersonales':\r\n state.aspirante.nombre = action.payload.nombre;\r\n state.aspirante.apellido = action.payload.apellido;\r\n state.aspirante.fechaNacimiento = action.payload.fechaNacimiento;\r\n state.aspirante.pais = action.payload.pais;\r\n state.aspirante.provincia = action.payload.provincia;\r\n state.aspirante.localidad = action.payload.localidad;\r\n //console.log(state);\r\n return state;\r\n\r\n case 'guardarAspiranteDomicilio':\r\n state.aspirante.domicilio.calle = action.payload.calle;\r\n state.aspirante.domicilio.numero = action.payload.numero;\r\n state.aspirante.domicilio.piso = action.payload.piso;\r\n state.aspirante.domicilio.dpto = action.payload.dpto;\r\n state.aspirante.domicilio.departamento = action.payload.departamento;\r\n state.aspirante.domicilio.localidad = action.payload.localidad;\r\n state.aspirante.domicilio.domicilioId = action.payload.domicilioId;\r\n //console.log(state);\r\n return state;\r\n\r\n case 'mismoDomicilioAspirante':\r\n state.responsables[action.payload.posicion].domicilio = state.aspirante.domicilio;\r\n //console.log(state);\r\n return state;\r\n\r\n case 'guardarResponsableDocumentacion':\r\n if (state.responsables.length < action.payload.posicion + 1) {\r\n const responsable = new Responsable();\r\n state.responsables[action.payload.posicion] = responsable;\r\n };\r\n if (state.responsables.length === 1) {\r\n state.responsables[0].principal = true;\r\n };\r\n\r\n state.responsables[action.payload.posicion].sexo = action.payload.sexo;\r\n state.responsables[action.payload.posicion].documentoNumero = action.payload.documentoNumero;\r\n state.responsables[action.payload.posicion].registroCivilvalidacion = action.payload.registroCivilvalidacion;\r\n state.responsables[action.payload.posicion].personaRegistroCivilId = action.payload.personaRegistroCivilId;\r\n state.responsables[action.payload.posicion].validadoPorElRegistroCivil = action.payload.validadoPorElRegistroCivil;\r\n //console.log(state);\r\n return state;\r\n\r\n case 'guardarResponsableDatosPersonales':\r\n state.responsables[action.payload.posicion].nombre = action.payload.nombre;\r\n state.responsables[action.payload.posicion].apellido = action.payload.apellido;\r\n state.responsables[action.payload.posicion].vinculo = action.payload.vinculo;\r\n state.responsables[action.payload.posicion].vinculoId = action.payload.vinculoId;\r\n state.responsables[action.payload.posicion].fechaNacimiento = action.payload.fechaNacimiento;\r\n state.responsables[action.payload.posicion].pais = action.payload.pais;\r\n state.responsables[action.payload.posicion].provincia = action.payload.provincia;\r\n state.responsables[action.payload.posicion].localidad = action.payload.localidad;\r\n state.responsables[action.payload.posicion].email = action.payload.email;\r\n state.responsables[action.payload.posicion].telefono = action.payload.telefono;\r\n state.responsables[action.payload.posicion].id = action.payload.id;\r\n state.responsables[action.payload.posicion].aspiranteResponsableId = action.payload.aspiranteResponsableId;\r\n //console.log(state);\r\n return state;\r\n\r\n case 'guardarResponsableDomicilio':\r\n state.responsables[action.payload.posicion].domicilio.calle = action.payload.calle;\r\n state.responsables[action.payload.posicion].domicilio.numero = action.payload.numero;\r\n state.responsables[action.payload.posicion].domicilio.piso = action.payload.piso;\r\n state.responsables[action.payload.posicion].domicilio.dpto = action.payload.dpto;\r\n state.responsables[action.payload.posicion].domicilio.departamento = action.payload.departamento;\r\n state.responsables[action.payload.posicion].domicilio.localidad = action.payload.localidad;\r\n state.responsables[action.payload.posicion].domicilio.domicilioId = action.payload.domicilioId;\r\n //console.log(state);\r\n return state;\r\n\r\n case 'guardarResponsablePrincipalPosicion':\r\n state.responsablePrincipalPosicion = action.payload.posicion;\r\n return state;\r\n\r\n case 'guardarNivelEnseñanza':\r\n state.nivelEnseñanza.nivel = action.payload.nivel;\r\n state.nivelEnseñanza.grado = action.payload.grado;\r\n //console.log(state);\r\n return state;\r\n\r\n case 'guardarEstablecimientos':\r\n state.establecimientos = action.payload.establecimientos;\r\n //console.log(state);\r\n return state;\r\n\r\n case 'guardarExtras':\r\n state.extras.fueEstatal = action.payload.fueEstatal;\r\n state.extras.fueAbanderaro = action.payload.fueAbanderaro;\r\n state.extras.establecimientoBandera = action.payload.establecimientoBandera;\r\n state.extras.establecimientoEstatal = action.payload.establecimientoEstatal;\r\n //console.log(state);\r\n return state;\r\n /*GUARDAR INFO*/\r\n\r\n /*OTRAS ACCIONES*/\r\n case 'quitarResponsable':\r\n state.responsables.splice(action.payload.posicion, 1);\r\n //console.log(state);\r\n return state;\r\n case 'verResponsables':\r\n return state.responsables;\r\n\r\n case 'reiniciarDatos':\r\n state = {\r\n aspirante: new Aspirante(),\r\n responsables: [],\r\n responsablePrincipalPosicion: 0,\r\n nivelEnseñanza: new NivelEnseñanza(),\r\n establecimientos: [],\r\n numeroVinculacion: \"\",\r\n extras: new Extras()\r\n };\r\n return state;\r\n case 'reiniciarDatosResponsable':\r\n state = {\r\n responsables: []\r\n };\r\n return state;\r\n case 'calcularEdad':\r\n state.aspirante.edad = calcularEdad(state.aspirante.fechaNacimiento);\r\n return state;\r\n /*OTRAS ACCIONES*/\r\n\r\n default:\r\n return state;\r\n };\r\n};\r\n\r\nconst calcularEdad = (dateString) => {\r\n const fechaNacimiento = new Date(dateString);\r\n const hoy = new Date();\r\n let edad = hoy.getFullYear() - fechaNacimiento.getFullYear();\r\n const diferenciaMeses = hoy.getMonth() - fechaNacimiento.getMonth();\r\n if (\r\n diferenciaMeses < 0 ||\r\n (diferenciaMeses === 0 && hoy.getDate() < fechaNacimiento.getDate())\r\n ) {\r\n edad--;\r\n };\r\n if (edad < 0) {\r\n return 0;\r\n } else {\r\n return edad;\r\n }\r\n};\r\n\r\n//VALORES MAXIMOS DE CAMPOS DE ENTRADA\r\nconst\r\n maxNombre = 200,\r\n maxApellido = 200,\r\n maxVinculo = 50,\r\n maxDocumentoNumero = 20,\r\n maxEmail = 50,\r\n maxTelefono = 10,\r\n maxCalle = 100,\r\n maxNumero = 10,\r\n maxPiso = 50,\r\n maxDepartamento = 50,\r\n maxLocalidad = 50;\r\n//VINCULOS\r\nconst vinculos = [\r\n { nombre: \"Madre\", vinculoId: 1 },\r\n { nombre: \"Padre\", vinculoId: 2 },\r\n { nombre: \"Tutor\", vinculoId: 3 },\r\n { nombre: \"Abuela/o\", vinculoId: 4 }\r\n]\r\n//NIVELES\r\nconst niveles = [\r\n { nivel: \"Inicial\", grados: [\"Sala de 4\", \"Sala de 5\"] },\r\n { nivel: \"Primario\", grados: [\"1º\"] },\r\n { nivel: \"Secundario\", grados: [\"1º\"] },\r\n];\r\nfunction getPais(nombre) {\r\n let pos = 10;\r\n if (nombre) {\r\n paises.forEach((item, i) => {\r\n if (item.countryName === nombre) {\r\n pos = i;\r\n };\r\n });\r\n };\r\n return pos;\r\n};\r\nfunction getProvincia(nombre, pais) {\r\n let pos = 6;\r\n if (nombre) {\r\n paises[pais].regions.forEach((item, i) => {\r\n if (item.name === nombre) {\r\n pos = i;\r\n };\r\n });\r\n };\r\n return pos;\r\n};\r\nexport const InscripcionUIProvider = ({ InscripcionUIEvents, children }) => {\r\n\r\n const [stateDatosPersonales, dispatchDatosPeronales] = useReducer(DatosPersonalesReducer, datosPersonalesBaseReducer);\r\n const [stateInscripciopnes, dispatchInscripciones] = useReducer(InscripcionesReducer, inscripcionesBaseReducer);\r\n //const [ultimoPaso, setUltimoPaso] = useState(1);\r\n const [posicion, setPosicion] = useState(0);\r\n \r\n const { aspirante } = useSelector(\r\n (state) => ({ aspirante: state.aspirante }),\r\n shallowEqual\r\n );\r\n const { aspiranteInformacion } = aspirante;\r\n\r\n const { pasoUno } = useSelector(\r\n (state) => ({ pasoUno: state.pasoUno }),\r\n shallowEqual\r\n );\r\n const { inscripcionId: inscripcionIdPasoUno, responsables: responsablesPasoUno, /*id: idPasoUno,*/ inscripcionNumero: inscripcionNumeroPasoUno } = pasoUno;\r\n\r\n const { inscripcion } = useSelector(\r\n (state) => ({ inscripcion: state.inscripcion }),\r\n shallowEqual\r\n );\r\n const {\r\n entities,\r\n listLoading,\r\n //actionsLoading,\r\n //error\r\n } = inscripcion;\r\n\r\n useEffect(() => {\r\n if (aspiranteInformacion) {\r\n const {\r\n id,\r\n nroDocumento: documentoNumero, sexo, nombre,\r\n apellido, fechaNacimiento, localidadNacimiento, paisNacimiento, provinciaNacimiento,\r\n domicilioId, domicilioCalle, domicilioDepartamento, domicilioLocalidad, domicilioNumero, domicilioPiso, domicilioDpto,\r\n personaRegistroCivilId, inscripcionNumero, inscripcionId, validadoPorElRegistroCivil,\r\n inscripcionVinculadaNumero, inscripcionVinculadaId\r\n } = aspiranteInformacion;\r\n const pais = getPais(paisNacimiento);\r\n stateDatosPersonales.aspirante = {\r\n id: id ? id : 0,\r\n documentoNumero,\r\n sexo,\r\n registroCivilvalidacion: true,\r\n validadoPorElRegistroCivil: validadoPorElRegistroCivil ? validadoPorElRegistroCivil : false,\r\n apellido,\r\n nombre,\r\n fechaNacimiento: new Date(fechaNacimiento),\r\n edad: calcularEdad(new Date(fechaNacimiento)),\r\n localidad: localidadNacimiento ? localidadNacimiento : stateDatosPersonales.aspirante.localidad,\r\n pais,\r\n provincia: getProvincia(provinciaNacimiento, pais),\r\n personaRegistroCivilId: personaRegistroCivilId ? personaRegistroCivilId : stateDatosPersonales.aspirante.personaRegistroCivilId,\r\n inscripcionNumero: inscripcionNumero ? inscripcionNumero : stateDatosPersonales.aspirante.inscripcionNumero,\r\n inscripcionId: inscripcionId ? inscripcionId : stateDatosPersonales.aspirante.inscripcionId,\r\n inscripcionVinculadaNumero: inscripcionVinculadaNumero ? inscripcionVinculadaNumero : stateDatosPersonales.aspirante.inscripcionVinculadaNumero,\r\n inscripcionVinculadaId: inscripcionVinculadaId ? inscripcionVinculadaId : stateDatosPersonales.aspirante.inscripcionVinculadaId,\r\n };\r\n stateDatosPersonales.aspirante.domicilio = {\r\n domicilioId: domicilioId ? domicilioId : 0,\r\n calle: domicilioCalle ? domicilioCalle : \"\",\r\n departamento: domicilioDepartamento ? domicilioDepartamento : \"\",\r\n localidad: domicilioLocalidad ? domicilioLocalidad : \"\",\r\n numero: domicilioNumero ? domicilioNumero : \"\",\r\n piso: domicilioPiso ? domicilioPiso : \"\",\r\n dpto: domicilioDpto ? domicilioDpto : \"\",\r\n };\r\n } else {\r\n dispatchDatosPeronales({ type: 'reiniciarDatos' });\r\n };\r\n /*console.log('ESTO ES LO QUE ESTA EN EL STATE ASPIRANTE:');\r\n console.log(aspiranteInformacion);\r\n console.log(\"ESTADO\");\r\n console.log(stateDatosPersonales);*/\r\n }, [aspiranteInformacion])\r\n\r\n useEffect(() => {\r\n if (responsablesPasoUno) {\r\n stateDatosPersonales.aspirante.inscripcionId = inscripcionIdPasoUno ? inscripcionIdPasoUno : stateDatosPersonales.aspirante.inscripcionId;\r\n stateDatosPersonales.aspirante.inscripcionNumero = inscripcionNumeroPasoUno ? inscripcionNumeroPasoUno : stateDatosPersonales.aspirante.inscripcionNumero;\r\n responsablesPasoUno.forEach((item, i) => {\r\n if (!stateDatosPersonales.responsables[i]) {\r\n stateDatosPersonales.responsables[i] = new Responsable();\r\n };\r\n const { id, aspiranteResponsableId,\r\n nroDocumento: documentoNumero, sexo, nombre,\r\n apellido, fechaNacimiento, localidadNacimiento, paisNacimiento, provinciaNacimiento,\r\n domicilioId, domicilioCalle, domicilioDepartamento, domicilioLocalidad, domicilioNumero, \r\n domicilioPiso, domicilioDpto,\r\n personaRegistroCivilId, validadoPorElRegistroCivil,\r\n vinculo, vinculoId, email, telefono\r\n } = item;\r\n const pais = getPais(paisNacimiento);\r\n dispatchDatosPeronales({\r\n type: 'guardarResponsableDocumentacion', \r\n payload: {\r\n documentoNumero, sexo, posicion: i, personaRegistroCivilId, validadoPorElRegistroCivil, registroCivilvalidacion: true\r\n }\r\n });\r\n dispatchDatosPeronales({\r\n type: 'guardarResponsableDatosPersonales', \r\n payload: {\r\n id: id ? id : 0,\r\n aspiranteResponsableId: aspiranteResponsableId ? aspiranteResponsableId : 0,\r\n nombre,\r\n apellido,\r\n fechaNacimiento: new Date(fechaNacimiento),\r\n edad: calcularEdad(new Date(fechaNacimiento)),\r\n pais,\r\n provincia: getProvincia(provinciaNacimiento, pais),\r\n localidad: localidadNacimiento ? localidadNacimiento : stateDatosPersonales.responsables[i].localidad,\r\n vinculo: vinculo ? vinculo : stateDatosPersonales.responsables[i].vinculo,\r\n vinculoId: vinculoId ? vinculoId : stateDatosPersonales.responsables[i].vinculoId,\r\n email: email ? email : stateDatosPersonales.responsables[i].email,\r\n telefono: telefono ? telefono : stateDatosPersonales.responsables[i].telefono,\r\n posicion: i\r\n }\r\n });\r\n const { domId, calle, numero, piso, dpto, departamento, localidad } = stateDatosPersonales.responsables[i].domicilio;\r\n dispatchDatosPeronales({\r\n type: 'guardarResponsableDomicilio', payload: {\r\n domicilioId: domicilioId ? domicilioId : domId,\r\n calle: domicilioCalle ? domicilioCalle : calle,\r\n numero: domicilioNumero ? domicilioNumero : numero,\r\n piso: domicilioPiso ? domicilioPiso : piso,\r\n dpto: domicilioDpto ? domicilioDpto : dpto,\r\n departamento: domicilioDepartamento ? domicilioDepartamento : departamento,\r\n localidad: domicilioLocalidad ? domicilioLocalidad : localidad,\r\n posicion: i\r\n }\r\n });\r\n })\r\n } else {\r\n dispatchDatosPeronales({ type: 'reiniciarDatosResponsable' });\r\n };\r\n /*console.log(\"ESTADO REDUX\");\r\n console.log(responsablesPasoUno);\r\n console.log(\"ESTADO DESPUES DE CARGAR UN RESP\");\r\n console.log(stateDatosPersonales);*/\r\n }, [responsablesPasoUno, inscripcionIdPasoUno, inscripcionNumeroPasoUno])\r\n\r\n useEffect(() => {\r\n if (!listLoading && entities) {\r\n let aux = entities.map(data => {\r\n return {\r\n id: data.id ? data.id : 0,\r\n inscripcionId: data.inscripcionId,\r\n inscripcionNumero: data.numero,\r\n nombre: data.aspiranteNombre,\r\n apellido: data.aspiranteApellido,\r\n documentoNumero: data.aspiranteNroDocumento,\r\n nivelEnsenanza: data.nivelEnsenanza,\r\n nivelEnsenanzaId: data.nivelEnsenanzaId,\r\n finalizada: data.finalizada,\r\n llamado: data.llamado,\r\n ultimoPasoEditado: data.ultimoPasoEditado,\r\n }\r\n });\r\n dispatchInscripciones({ type: 'cargarInscripciones', payload: aux })\r\n };\r\n }, [entities, listLoading]);\r\n\r\n const recomendacionInscripcion = () => {\r\n const fechaNacimiento = new Date(stateDatosPersonales.aspirante.fechaNacimiento);\r\n const hoy = new Date();\r\n if (fechaNacimiento === \"\") {\r\n return \"\";\r\n }\r\n if ((new Date(hoy.getFullYear() - 4, 6, 1) <= fechaNacimiento) && (fechaNacimiento < new Date(hoy.getFullYear() - 3, 6, 1))) {\r\n return \"Nivel Inicial - Sala de 4\";\r\n } else if ((new Date(hoy.getFullYear() - 5, 6, 1) <= fechaNacimiento) && (fechaNacimiento < new Date(hoy.getFullYear() - 4, 6, 1))) {\r\n return \"Nivel Inicial - Sala de 5\";\r\n } else if ((new Date(hoy.getFullYear() - 6, 6, 1) <= fechaNacimiento) && (fechaNacimiento < new Date(hoy.getFullYear() - 5, 6, 1))) {\r\n return \"Nivel Primario\";\r\n } else if (fechaNacimiento < new Date(hoy.getFullYear() - 11, 6, 1)) {\r\n return \"Nivel Secundario\";\r\n };\r\n };\r\n\r\n const nivelSeleccionado = () => {\r\n return stateDatosPersonales.nivelEnseñanza;\r\n };\r\n\r\n const validacionRegistroCivil = (p_tipo = \"aspirante\", p_posicion = 0) => {\r\n if (p_tipo === \"aspirante\") {\r\n return !!stateDatosPersonales.aspirante.personaRegistroCivilId && stateDatosPersonales.aspirante.personaRegistroCivilId > 0;\r\n } else {\r\n return !!stateDatosPersonales.responsables[p_posicion].personaRegistroCivilId && stateDatosPersonales.responsables[p_posicion].personaRegistroCivilId > 0;\r\n };\r\n };\r\n\r\n const cantidadResponsables = () => {\r\n let cantidad = 0;\r\n cantidad = stateDatosPersonales.responsables.length;\r\n return cantidad;\r\n };\r\n const obtenerResponsablePrincipal = () => {\r\n const i = stateDatosPersonales.responsablePrincipalPosicion;\r\n return stateDatosPersonales.responsables[i].apellido + \", \" + stateDatosPersonales.responsables[i].nombre + \" (\" + stateDatosPersonales.responsables[i].vinculo + \")\";\r\n };\r\n\r\n const responsablePrincipalPosicion = () => {\r\n return stateDatosPersonales.responsablePrincipalPosicion;\r\n };\r\n const verResponsables = () => {\r\n return stateDatosPersonales.responsables;\r\n };\r\n const verResponsable = (i) => {\r\n return stateDatosPersonales.responsables[i];\r\n };\r\n //OBTENCION DE VALORES\r\n const valoresDocumentacionResponsable = (i) => {\r\n if (cantidadResponsables() > i) {\r\n const valores = {\r\n sexo: stateDatosPersonales.responsables[i].sexo,\r\n documentoNumero: stateDatosPersonales.responsables[i].documentoNumero,\r\n personaRegistroCivilId: stateDatosPersonales.responsables[i].personaRegistroCivilId\r\n };\r\n return valores;\r\n } else {\r\n return new Documentacion();\r\n };\r\n };\r\n\r\n\r\n function valoresDatosPersonalesResponsable(i) {\r\n if (cantidadResponsables() > i) {\r\n const valores = {\r\n id: stateDatosPersonales.responsables[i].id,\r\n aspiranteResponsableId: stateDatosPersonales.responsables[i].aspiranteResponsableId,\r\n nombre: stateDatosPersonales.responsables[i].nombre,\r\n apellido: stateDatosPersonales.responsables[i].apellido,\r\n pais: stateDatosPersonales.responsables[i].pais,\r\n provincia: stateDatosPersonales.responsables[i].provincia,\r\n localidad: stateDatosPersonales.responsables[i].localidad,\r\n fechaNacimiento: stateDatosPersonales.responsables[i].fechaNacimiento,\r\n vinculo: stateDatosPersonales.responsables[i].vinculo,\r\n vinculoId: stateDatosPersonales.responsables[i].vinculoId,\r\n email: stateDatosPersonales.responsables[i].email,\r\n telefono: stateDatosPersonales.responsables[i].telefono,\r\n };\r\n return valores;\r\n } else {\r\n return new DatosPersonales();\r\n };\r\n };\r\n\r\n const valoresDomicilioResponsable = (i) => {\r\n if (cantidadResponsables() > i) {\r\n const valores = {\r\n domicilioId: stateDatosPersonales.responsables[i].domicilio.domicilioId,\r\n calle: stateDatosPersonales.responsables[i].domicilio.calle,\r\n numero: stateDatosPersonales.responsables[i].domicilio.numero,\r\n piso: stateDatosPersonales.responsables[i].domicilio.piso,\r\n dpto: stateDatosPersonales.responsables[i].domicilio.dpto,\r\n departamento: stateDatosPersonales.responsables[i].domicilio.departamento,\r\n localidad: stateDatosPersonales.responsables[i].domicilio.localidad,\r\n };\r\n return valores;\r\n } else {\r\n return new Domicilio();\r\n };\r\n };\r\n\r\n const valoresDocumentacionAspirante = () => {\r\n const { sexo, documentoNumero, personaRegistroCivilId, registroCivilvalidacion } = stateDatosPersonales.aspirante\r\n return { sexo, documentoNumero, personaRegistroCivilId, registroCivilvalidacion };\r\n };\r\n const valoresDatosPersonalesAspirante = () => {\r\n const { nombre, apellido, pais, provincia, localidad, fechaNacimiento } = stateDatosPersonales.aspirante;\r\n return { nombre, apellido, pais, provincia, localidad, fechaNacimiento };\r\n };\r\n\r\n const valoresDomicilioAspirante = () => {\r\n const { domicilioId, calle, numero, piso, dpto, departamento, localidad } = stateDatosPersonales.aspirante.domicilio;\r\n return { domicilioId, calle, numero, piso, dpto, departamento, localidad };\r\n };\r\n const valoresExtrasAspirante = () => {\r\n const { \r\n id, personaRegistroCivilId, inscripcionNumero, inscripcionId, registroCivilvalidacion,\r\n inscripcionVinculadaNumero, inscripcionVinculadaId \r\n } = stateDatosPersonales.aspirante;\r\n return { \r\n id, personaRegistroCivilId, inscripcionNumero, inscripcionId, registroCivilvalidacion, \r\n inscripcionVinculadaNumero, inscripcionVinculadaId \r\n };\r\n };\r\n const valoresEstablecimientos = () => {\r\n return stateDatosPersonales.establecimientos;\r\n };\r\n const valoresExtras = () => {\r\n const { fueEstatal, fueAbanderaro, establecimientoBandera, establecimientoEstatal, inscripcionId } = stateDatosPersonales.extras;\r\n return { fueEstatal, fueAbanderaro, establecimientoBandera, establecimientoEstatal, inscripcionId };\r\n };\r\n\r\n const detalleAspirante = () => {\r\n return stateDatosPersonales.aspirante;\r\n };\r\n\r\n const detalleEstablecimientos = () => {\r\n return stateDatosPersonales.establecimientos;\r\n };\r\n const detalleNumeroVinculacion = () => {\r\n return stateDatosPersonales.numeroVinculacion;\r\n };\r\n const detalleExtras = () => {\r\n return stateDatosPersonales.extras;\r\n };\r\n\r\n // const confirmarInscripcion = () => {\r\n // const { apellido, nombre, documentoNumero } = stateDatosPersonales.aspirante;\r\n // //dispatchInscripciones({ type: 'guardarInscripcion', payload: { apellido, nombre, documentoNumero, inscripcionNumero: \"325\", estado: \"Completa\" } })\r\n // };\r\n const verInscripciones = () => {\r\n return stateInscripciopnes;\r\n };\r\n const verInscripcionesPorLlamado = () => {\r\n return stateInscripciopnes && _.groupBy(stateInscripciopnes, function (o) { return o.llamado; });\r\n };\r\n const cantidadInscripciones = () => {\r\n return stateInscripciopnes.length;\r\n };\r\n const verificarDNIS = (dni, sexo, posicion) => {\r\n let respuesta = false;\r\n if (stateDatosPersonales.aspirante.documentoNumero === dni && stateDatosPersonales.aspirante.sexo === sexo) {\r\n respuesta = true;\r\n };\r\n stateDatosPersonales.responsables.forEach((item, i) => {\r\n if (item.documentoNumero === dni && item.sexo === sexo && i !== posicion) {\r\n respuesta = true;\r\n };\r\n });\r\n return respuesta;\r\n };\r\n\r\n\r\n\r\n const value = {\r\n //REDUCERS\r\n stateDatosPersonales, dispatchDatosPeronales,\r\n stateInscripciopnes, dispatchInscripciones,\r\n\r\n //FUNCIONES\r\n validacionRegistroCivil,\r\n calcularEdad,\r\n verificarEntero,\r\n recomendacionInscripcion,\r\n cantidadResponsables,\r\n responsablePrincipalPosicion,\r\n obtenerResponsablePrincipal,\r\n\r\n verResponsables,\r\n verResponsable,\r\n nivelSeleccionado,\r\n //confirmarInscripcion,\r\n verInscripciones,\r\n verInscripcionesPorLlamado,\r\n cantidadInscripciones,\r\n setPosicion,\r\n posicion,\r\n verificarDNIS,\r\n //VALORES NIVELES\r\n niveles,\r\n\r\n\r\n //VALORES INICIALES PARA FORMIK\r\n valoresDocumentacionResponsable,\r\n valoresDatosPersonalesResponsable,\r\n valoresDomicilioResponsable,\r\n valoresDocumentacionAspirante,\r\n valoresDatosPersonalesAspirante,\r\n valoresDomicilioAspirante,\r\n valoresExtrasAspirante,\r\n valoresEstablecimientos,\r\n valoresExtras,\r\n\r\n //DETALLES DE LA INSCRIPCION PARA RESUMEN\r\n detalleAspirante,\r\n detalleEstablecimientos,\r\n detalleNumeroVinculacion,\r\n detalleExtras,\r\n\r\n //SEGUIMIENTO DE PASOS\r\n //ultimoPaso,\r\n //setUltimoPaso,\r\n //VALORES HARDCODEADOS\r\n vinculos,\r\n\r\n //VALORES MAXIMOS\r\n maxNombre,\r\n maxApellido,\r\n maxVinculo,\r\n maxDocumentoNumero,\r\n maxEmail,\r\n maxCalle,\r\n maxTelefono,\r\n maxNumero,\r\n maxPiso,\r\n maxDepartamento,\r\n maxLocalidad\r\n }\r\n\r\n return {children}\r\n}","//const API_BASE_URL = process.env.REACT_APP_API_URL;\r\nconst API_BASE_URL = `${process.env.REACT_APP_API_URL}/api/${process.env.REACT_APP_API_VERSION}`;\r\nconst API_DESCARGAS_BASE_URL = `${process.env.REACT_APP_DESCARGAS_URL}/Comprobante`;\r\n\r\n//const ASPIRANTE_URL = `${API_BASE_URL}/Persona`;\r\n\r\n//ESTABLECIMIENTO\r\nconst OFERTA_BASE_URL = `${API_BASE_URL}/Oferta`;\r\nconst ESTABLECIMIENTO_URL = `${OFERTA_BASE_URL}/GetOfertasAsync`;\r\nconst ESTABLECIMIENTO_PASO4_URL = `${API_BASE_URL}/Establecimiento/GetEstablecimientosAsync`;\r\nconst ESTABLECIMIENTOANTERIOR_PASO4_URL = `${API_BASE_URL}/Establecimiento/GetEstablecimientosAnteriorAsync`;\r\n\r\n//PASO 1\r\nconst INSCRIPCION_PASO_UNO_AL_DOS_URL=API_BASE_URL+\"/Inscripcion/GuardarPaso1YObtenerPaso2Async\";\r\nconst INSCRIPCION_PASO_UNO_AL_CERO_URL=API_BASE_URL+\"/Inscripcion/PersistStep1AndGoToStep0\";\r\n//PASO 2\r\nconst INSCRIPCION_PASO_DOS_AL_UNO_URL=API_BASE_URL+\"/Inscripcion/PersistStep2AndGoToStep1\";\r\nconst INSCRIPCION_PASO_DOS_AL_TRES_URL=API_BASE_URL+\"/Inscripcion/GuardarPaso2YObtenerPaso3Async\";\r\n//PASO 3\r\nconst INSCRIPCION_PASO_TRES_AL_DOS_URL=API_BASE_URL+\"/Inscripcion/PersistStep3AndGoToStep2\";\r\nconst INSCRIPCION_PASO_TRES_AL_CUATRO_URL=API_BASE_URL+\"/Inscripcion/GuardarPaso3YObtenerPaso4Async\";\r\n//PASO4\r\nconst INSCRIPCION_PASO_CUATRO_AL_TRES_URL=API_BASE_URL+\"/Inscripcion/PersistStep4AndGoToStep3\";\r\nconst INSCRIPCION_PASO_CUATRO_AL_CINCO_URL=API_BASE_URL+\"/Inscripcion/GuardarPaso4YObtenerPaso5Async\";\r\n\r\n//PASO 5\r\nconst INSCRIPCION_PASO_CINCO_URL=API_BASE_URL+\"/Inscripcion/Finalizar\";\r\n\r\n//Llamados\r\nconst LLAMADOS_URL = `${API_BASE_URL}/Llamado/GetLlamadosAsync`;\r\nconst DESCARGAR_CONSTANCIA_URL = `${API_DESCARGAS_BASE_URL}/DescargarComprobante`;\r\n\r\n//Inscripciones\r\nconst INSCRIPCIONES_BASE_URL = `${API_BASE_URL}/Inscripcion`;\r\nconst INSCRIPCIONES_URL = `${INSCRIPCIONES_BASE_URL}/GetInscripcionesAsync`;\r\nconst DELETE_INSCRIPCION_URL = `${INSCRIPCIONES_BASE_URL}/Descartar`;\r\n\r\n//INSCRIPCION ASYNC\r\nconst INSCRIPCION_ASYNC_URL=`${API_BASE_URL}/Inscripcion/GetPaso1Async`\r\n\r\n//RESPONSABLE\r\n//const RESPONSABLE_URL=`${API_BASE_URL}/Responsable`;\r\n\r\n//BUSCAR HERMANO/FAMILIAR\r\nconst PERSONA_BASE_URL=`${API_BASE_URL}/Persona`;\r\nconst PERSONA_URL=`${PERSONA_BASE_URL}/GetBy`;\r\n\r\nexport {\r\n //ASPIRANTE\r\n //ASPIRANTE_URL,\r\n\r\n //PASO 1 A OTROS\r\n INSCRIPCION_PASO_UNO_AL_DOS_URL,\r\n INSCRIPCION_PASO_UNO_AL_CERO_URL,\r\n\r\n //PASO 2 A OTROS\r\n INSCRIPCION_PASO_DOS_AL_UNO_URL,\r\n INSCRIPCION_PASO_DOS_AL_TRES_URL,\r\n\r\n //PASO 3 A OTROS\r\n INSCRIPCION_PASO_TRES_AL_DOS_URL,\r\n INSCRIPCION_PASO_TRES_AL_CUATRO_URL,\r\n \r\n //PASO 4 A OTROS\r\n INSCRIPCION_PASO_CUATRO_AL_TRES_URL,\r\n INSCRIPCION_PASO_CUATRO_AL_CINCO_URL,\r\n\r\n INSCRIPCION_PASO_CINCO_URL,\r\n\r\n //Llamados\r\n LLAMADOS_URL,\r\n DESCARGAR_CONSTANCIA_URL,\r\n \r\n //Inscripiones\r\n INSCRIPCIONES_URL,\r\n DELETE_INSCRIPCION_URL,\r\n \r\n //INSCRIPCION ASYNC\r\n INSCRIPCION_ASYNC_URL,\r\n\r\n //RESPONSABLE\r\n //RESPONSABLE_URL,\r\n\r\n //ESTABLECIMIENTO\r\n ESTABLECIMIENTO_URL,\r\n ESTABLECIMIENTO_PASO4_URL,\r\n ESTABLECIMIENTOANTERIOR_PASO4_URL,\r\n \r\n PERSONA_URL\r\n}","import { PERSONA_URL } from '../config';\r\nimport axios from 'axios';\r\n\r\nexport const getAspiranteInformacion = async (params) => {\r\n const url = `${PERSONA_URL}?sexo=${params.sexo}&nroDocumento=${params.nroDocumento}`;\r\n const result = await axios.get(url);\r\n return result;\r\n};\r\n","import {\r\n INSCRIPCION_PASO_UNO_AL_DOS_URL,\r\n INSCRIPCION_PASO_UNO_AL_CERO_URL,\r\n INSCRIPCION_ASYNC_URL,\r\n PERSONA_URL\r\n} from '../config';\r\nimport axios from 'axios';\r\n\r\nexport function postPasoUnoAlDos(params) {\r\n const result = axios.post(INSCRIPCION_PASO_UNO_AL_DOS_URL, params);\r\n return result;\r\n};\r\n\r\nexport function postPasoUnoAlCero(params) {\r\n const result = axios.post(INSCRIPCION_PASO_UNO_AL_CERO_URL, params);\r\n return result;\r\n}\r\n\r\nexport const getPasoFromId = async (params) => {\r\n const url = `${INSCRIPCION_ASYNC_URL}?inscripcionId=${params}`;\r\n const result = await axios.get(url);\r\n return result;\r\n};\r\n\r\n// export const getResponsableInformacion = async (params) => {\r\n// const url = `${RESPONSABLE_URL}?sexo=${params.sexo}&nroDocumento=${params.nroDocumento}`;\r\n// const result = await axios.get(url);\r\n// return result;\r\n// };\r\n\r\nexport const getResponsableInformacion = async (params) => {\r\n const url = `${PERSONA_URL}?sexo=${params.sexo}&nroDocumento=${params.nroDocumento}`;\r\n const result = await axios.get(url);\r\n return result;\r\n};\r\n","import * as requestFromServer from './aspiranteCrud';\r\nimport * as requestFromServerPasoUno from '../pasoUno/pasoUnoCrud';\r\n\r\nimport { aspiranteSlice, callTypes } from './aspiranteSlice';\r\n\r\nconst { actions } = aspiranteSlice;\r\n\r\nexport const fetchAspiranteInformacion = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return requestFromServer\r\n .getAspiranteInformacion(queryParams)\r\n .then(response => {\r\n const aspiranteInformacion = response.data;\r\n //console.log(aspiranteInformacion);\r\n dispatch(actions.aspiranteFetched({ aspiranteInformacion }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data.title || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\n\r\nexport const fetchAspiranteInformacionFromId = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return requestFromServerPasoUno\r\n .getPasoFromId(queryParams)\r\n .then(response => {\r\n const aspiranteInformacion = response.data;\r\n //console.log(\"Respuesta Home\");\r\n //console.log(aspiranteInformacion);\r\n dispatch(actions.aspiranteFetched({ aspiranteInformacion }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data.title || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\n\r\nexport const stateLimpiar = queryParams => dispatch => {\r\n dispatch(actions.reiniciarDatos());\r\n};","import * as requestFromServer from './pasoUnoCrud';\r\n\r\nimport { pasoUnoSlice, callTypes } from './pasoUnoSclice';\r\n//import { fetchInscripciones } from '../inscripcion/inscripcionActions';\r\n\r\nconst { actions } = pasoUnoSlice;\r\n\r\nexport const fetchPasoUnoAlDos = queryParams => async dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return await requestFromServer\r\n .postPasoUnoAlDos(queryParams)\r\n .then(response => {\r\n const pasoUnoAlDosInformacion = response.data;\r\n dispatch(actions.pasoUnoAlDosFetched({ pasoUnoAlDosInformacion }));\r\n //dispatch(fetchInscripciones());\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data.title || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const fetchPasoUnoAlCero = queryParams => async dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.list }));\r\n return await requestFromServer\r\n .postPasoUnoAlCero(queryParams)\r\n .then(response => {\r\n const pasoUnoAlCeroInformacion = response.data;\r\n dispatch(actions.pasoUnoAlCeroFetched({ pasoUnoAlCeroInformacion }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data.title || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.list }));\r\n });\r\n};\r\n\r\nexport const fetchResponsableInfromacion = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.list }));\r\n return requestFromServer\r\n .getResponsableInformacion(queryParams)\r\n .then(response => {\r\n const { posicion } = queryParams;\r\n const responsableInformacion = response.data;\r\n dispatch(actions.agregarUnResponsable({ responsableInformacion, posicion }));\r\n })\r\n .catch(error => {\r\n const { posicion } = queryParams;\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data.title || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.list, posicion }));\r\n });\r\n};\r\n\r\nexport const stateQuitarResponsables = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.list }));\r\n dispatch(actions.quitarResponsables({ queryParams }));\r\n}\r\n\r\nexport const stateLimpiar = queryParams => dispatch => {\r\n dispatch(actions.stateLimpiar());\r\n};","import React from 'react';\r\nimport { Button } from 'react-bootstrap';\r\n//ICONOS\r\nimport ArrowBackIcon from '@material-ui/icons/ArrowBack';\r\n\r\nconst Volver = (props) => {\r\n const scrollTop = () => {\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n };\r\n return (\r\n <>\r\n {props.ultimoPaso ?\r\n props.currentStep > 1 &&\r\n \r\n :\r\n props.currentStep > 1 &&\r\n \r\n }\r\n \r\n )\r\n}\r\n\r\nexport default Volver;","import React from 'react';\r\nimport { Button,Spinner } from 'react-bootstrap'\r\n\r\n//ICONOS\r\nimport DoneOutlinedIcon from '@material-ui/icons/DoneOutlined';\r\nimport ArrowForwardIcon from '@material-ui/icons/ArrowForward';\r\n\r\nconst Continuar = (props) => {\r\n const { tipo, spinner } = props;\r\n if (tipo && tipo === \"guardar\") {\r\n return (\r\n <>\r\n \r\n\r\n \r\n \r\n )\r\n } else if (tipo && tipo === \"continuar\") {\r\n return (\r\n \r\n )\r\n } else {\r\n return (\r\n \r\n )\r\n }\r\n}\r\n\r\nexport default Continuar\r\n","import React from 'react'\r\nimport { Button } from 'react-bootstrap'\r\nimport EditIcon from '@material-ui/icons/Edit';\r\n\r\nconst Editar = (props) => {\r\n return (\r\n <>\r\n \r\n \r\n )\r\n}\r\n\r\nexport default Editar;","import React, { useState, useEffect, useContext } from 'react';\r\nimport { useDispatch, useSelector, shallowEqual } from \"react-redux\";\r\n\r\n//import * as actionsInscripcion from '../../_redux/inscripcion/inscripcionActions';\r\nimport * as actionsAspirante from '../../_redux/aspirante/aspiranteActions';\r\nimport * as actionsPasoUno from '../../_redux/pasoUno/pasoUnoActions';\r\n\r\nimport { PreInscripcionUIConsumer, PreInscripcionUIContext } from '../../PreInscripcionUIContext';\r\n//BOTONES\r\nimport Volver from '../../components/Volver';\r\nimport Continuar from '../../components/Continuar';\r\nimport Editar from '../../components/Editar';\r\n\r\n//ICONOS\r\nimport ErrorIcon from '@material-ui/icons/Error';\r\nimport DoneIcon from '@material-ui/icons/Done';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\n\r\n//MATERIAL UI CARD \r\nimport { Card, CardContent } from '@material-ui/core'\r\n\r\nimport SnackBarCustom from '../../../../Comun/SnackBars/SnackBarCustom';\r\n\r\n//Formik\r\nimport { Formik, Field, Form, ErrorMessage } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport { Spinner } from 'react-bootstrap'\r\n\r\n\r\nconst Documentacion = (props) => {\r\n const dispatch = useDispatch();\r\n const { valoresDocumentacionAspirante, valoresDocumentacionResponsable } = useContext(PreInscripcionUIContext)\r\n const { buscando, tipo, posicion, setCantidad, setVerDatosPersonales, verDatosPersonales, setVerDomicilio } = props;\r\n\r\n const { pasoUno, aspirante } = useSelector(\r\n (state) => ({ \r\n pasoUno: state.pasoUno, \r\n aspirante: state.aspirante \r\n }),\r\n shallowEqual\r\n );\r\n const {\r\n responsables,\r\n actionsLoading: actionsLoadingPaso1,\r\n error: errorPaso1\r\n } = pasoUno;\r\n const {\r\n error: errorAspirante,\r\n //entities: estitiesAspirante\r\n actionsLoading: actionsLoadingAspirante,\r\n } = aspirante;\r\n\r\n const [disabled, setDisabled] = useState(false);\r\n const [contador, setContador] = useState(0);\r\n const [existeDNI, setExisteDNI] = useState(false);\r\n\r\n const documentacionSchema = Yup.object().shape({\r\n sexo: Yup.string()\r\n .required(\"Debe seleccionar el sexo\"),\r\n documentoNumero: Yup.string()\r\n .matches(/^\\d+$/, \"Solo debe ingresar números\")\r\n .required(\"Debe ingresar el número de documento\"),\r\n /*No se usa mas. LLamada 30/11/2020 entre todos.\r\n documentoTramiteNumero: Yup.string()\r\n .matches(/^\\d+$/, \"Solo debe ingresar números\")\r\n .required(\"Debe ingresar el número de tramite de la documentación\"),*/\r\n });\r\n\r\n function formularioCompleto(cantidad) {\r\n setVerDatosPersonales(true);\r\n setContador(contador + 1);\r\n setDisabled(true);\r\n setCantidad(cantidad);\r\n };\r\n\r\n useEffect(() => {\r\n if (contador > 0 && contador < 2) {\r\n setContador(contador + 1);\r\n setDisabled(true);\r\n };\r\n if (responsables.length > 0 && contador < 2) {\r\n setContador(contador + 1);\r\n setDisabled(true);\r\n };\r\n\r\n }, [contador, responsables]);\r\n\r\n useEffect(() => {\r\n \r\n }, [buscando]);\r\n\r\n const datosPersonales = tipo === \"responsable\" ? valoresDocumentacionResponsable(posicion) : valoresDocumentacionAspirante();\r\n\r\n const tarjetaIndicativa = (verDatosPersonales, datosPersonales, valoresExtrasAspirante) => {\r\n return (\r\n \r\n \r\n {buscando ? (\r\n <>\r\n
\r\n \r\n
\r\n
\r\n AGUARDE UN MOMENTO\r\n

Estamos procesando los datos ingresados.

\r\n

\r\n

\r\n
\r\n \r\n ) : (\r\n !!valoresExtrasAspirante && valoresExtrasAspirante.inscripcionVinculadaId && valoresExtrasAspirante.inscripcionVinculadaId > 0\r\n ? <>\r\n
\r\n \r\n
\r\n
\r\n IMPORTANTE!\r\n

El aspirante ingresado ya se ha encontrado en otra inscripción. Por favor comuniquese con mesa de ayuda!

\r\n Código de la inscripción: {valoresExtrasAspirante.inscripcionVinculadaNumero}\r\n
\r\n \r\n : !verDatosPersonales \r\n ? <>\r\n
\r\n \r\n
\r\n
\r\n AVISO\r\n

Ingresá los datos para ser corroborados en el registro civil

\r\n

\r\n

\r\n
\r\n \r\n : !!datosPersonales.personaRegistroCivilId && datosPersonales.personaRegistroCivilId > 0\r\n ? <>\r\n
\r\n \r\n
\r\n
\r\n PERFECTO!\r\n

El DNI ingresado ha sido validado por el registro de las personas

\r\n
\r\n \r\n : <>\r\n
\r\n \r\n
\r\n
\r\n IMPORTANTE!\r\n

No hemos podido validar los datos con el registro de las personas. De todas maneras podes continuar con el proceso.

\r\n
\r\n \r\n )}\r\n
\r\n
\r\n );\r\n };\r\n\r\n return (\r\n \r\n {value =>\r\n <>\r\n {tipo === \"responsable\" && value.setPosicion(posicion)}\r\n {tipo === \"responsable\" && setCantidad(value.cantidadResponsables())}\r\n { tipo === \"aspirante\" &&\r\n value.valoresExtrasAspirante() &&\r\n value.valoresExtrasAspirante().id &&\r\n value.valoresExtrasAspirante().id > 0 &&\r\n contador === 0 &&\r\n formularioCompleto(value.cantidadResponsables())\r\n }\r\n { tipo === \"responsable\" &&\r\n responsables.length > 0 &&\r\n responsables.length > posicion &&\r\n responsables[posicion].email &&\r\n responsables[posicion].telefono &&\r\n responsables[posicion].vinculo &&\r\n contador === 0 &&\r\n formularioCompleto(value.cantidadResponsables())\r\n }\r\n {tarjetaIndicativa(verDatosPersonales, datosPersonales, value.valoresExtrasAspirante())}\r\n
\r\n

\r\n DATOS DEL {tipo.toUpperCase()}\r\n

\r\n
\r\n

Documentación

\r\n

(*)Campos Obligatorios

\r\n
\r\n {\r\n //console.log(value.verificarDNIS(values.documentoNumero,values.sexo));\r\n if (tipo === \"responsable\" && value.verificarDNIS(values.documentoNumero, values.sexo, posicion)) {\r\n setExisteDNI(true);\r\n setSubmitting(false);\r\n } else {\r\n setExisteDNI(false);\r\n values.registroCivilvalidacion = false;\r\n if (tipo === \"aspirante\") {\r\n value.dispatchDatosPeronales({ type: 'guardarAspiranteDocumentacion', payload: values });\r\n dispatch(actionsAspirante.fetchAspiranteInformacion({ sexo: values.sexo, nroDocumento: values.documentoNumero }));\r\n if (!actionsLoadingAspirante && !errorAspirante) {\r\n setTimeout(() => {\r\n formularioCompleto(value.cantidadResponsables());\r\n setSubmitting(false);\r\n }, 1000);\r\n };\r\n };\r\n if (tipo === \"responsable\") {\r\n values.posicion = posicion;\r\n value.dispatchDatosPeronales({ type: 'guardarResponsableDocumentacion', payload: values });\r\n dispatch(actionsPasoUno.fetchResponsableInfromacion({ sexo: values.sexo, nroDocumento: values.documentoNumero, posicion }));\r\n if (!actionsLoadingPaso1 && !errorPaso1) {\r\n setTimeout(() => {\r\n formularioCompleto(value.cantidadResponsables());\r\n setSubmitting(false);\r\n }, 1000);\r\n };\r\n };\r\n };\r\n }}\r\n >\r\n {formik =>\r\n
\r\n
\r\n
\r\n \r\n \r\n {!formik.values.sexo && }\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Solo números sin puntos o comas\r\n
\r\n
\r\n
\r\n {existeDNI &&\r\n
El número de documento ya fue utilizado en esta inscripción, por favor ingrese otro.
\r\n }\r\n {verDatosPersonales ?\r\n
\r\n {disabled && }\r\n {!disabled && }\r\n
\r\n :\r\n
\r\n {setDisabled(false)}\r\n \r\n \r\n
\r\n }\r\n {errorAspirante && }\r\n {errorPaso1 && }\r\n \r\n }\r\n \r\n \r\n }\r\n
\r\n )\r\n};\r\n\r\nexport default Documentacion;","import React, { useState, useEffect } from \"react\";\r\nimport { shallowEqual, useSelector } from \"react-redux\";\r\nimport { PreInscripcionUIConsumer } from '../../PreInscripcionUIContext';\r\n\r\n//Calendario\r\nimport DatePicker, { registerLocale } from 'react-datepicker';\r\nimport es from 'date-fns/locale/es';\r\n\r\n//BOTONES\r\nimport Volver from '../../components/Volver';\r\nimport Continuar from '../../components/Continuar';\r\nimport Editar from '../../components/Editar';\r\n//import { Button } from 'react-bootstrap';\r\n\r\n//Formik\r\nimport { Formik, Field, Form, ErrorMessage } from 'formik';\r\nimport * as Yup from 'yup';\r\n//MODAL\r\n//import { Modal } from 'react-bootstrap';\r\n\r\n//ISO PAISES/PROVINCIAS\r\nimport Countries from '../../../../../../_metronic/countries/Countries';\r\n\r\n//Formateo los paises a array\r\nconst paises = Countries();\r\n//FECHA HOY\r\nconst hoy = new Date();\r\n\r\n//EDADES\r\nconst mayorTresAños = new Date(hoy.getFullYear() - 3, 6, 1);\r\nconst mayorDeEdad = new Date(hoy.getFullYear() - 17, hoy.getMonth(), hoy.getDate());//reponsable mayor a 18 alfre 03/12/2020\r\nconst edadMAxima = new Date(hoy.getFullYear() - 100, hoy.getMonth(), hoy.getDate());//edad maxima 100 años juan 04/12/2020\r\n\r\nconst DatosPersonales = (props) => {\r\n const { tipo, posicion, setCantidad, setVerDomicilio, verDomicilio } = props;\r\n const [nombre, setNombre] = useState(\"\");\r\n const [disabled, setDisabled] = useState(false);\r\n const [cargo, setcargo] = useState(0);\r\n registerLocale(\"es\", es)\r\n const [provincias, setProvincias] = useState([]);\r\n const datosPersonalesSchema = Yup.object().shape({\r\n nombre: Yup.string()\r\n .min(2, \"El nombre debe tener 2 caracteres mínimo\")\r\n //.max(maxNombre, `El nombre debe tener ${maxNombre} caracteres máximo`)\r\n //.matches(/^[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+(\\s*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']*)*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+$/g, \"El nombre debe estar compuesto solo por letras\")\r\n .required(\"Debe ingresar al menos un nombre\"),\r\n apellido: Yup.string()\r\n .min(2, \"El apellido debe tener 2 caracteres mínimo\")\r\n //.max(maxApellido, `El apellido debe tener ${maxApellido} caracteres máximo`)\r\n //.matches(/^[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+(\\s*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']*)*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+$/g, \"El apellido debe estar compuesto solo por letras\")\r\n .required(\"Debe ingresar al menos un apellido\"),\r\n pais: Yup.string()\r\n .required(\"Debe seleccionar un país\"),\r\n provincia: Yup.string()\r\n .required(`Debe ${provincias.length > 0 ? \"seleccionar\" : \"ingresar\"} una provincia`),\r\n localidad: Yup.string()\r\n .min(3, \"La localidad debe tener 3 caracteres mínimo\")\r\n //.matches(/^[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+(\\s*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']*)*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+$/g, \"La localidad debe estar compuesta solo por letras\")\r\n .required(\"Debe ingresar la localidad\"),\r\n fechaNacimiento: Yup.date()\r\n .min(edadMAxima, `Debe tener fecha de nacimiento mayor al ${edadMAxima.toLocaleDateString(\"es\")}`)\r\n .max(tipo === \"aspirante\" ? mayorTresAños : mayorDeEdad, tipo === \"aspirante\" ?\r\n `Debe tener fecha de nacimiento menor al ${mayorTresAños.toLocaleDateString(\"es\")}`\r\n :\r\n `Debe ser mayor a 18 años para ser responsable de un aspirante`\r\n )\r\n });\r\n const datosPersonalesResponsableSchema = Yup.object().shape({\r\n vinculo: Yup.string()\r\n //.matches(/^[A-Za-z\\s]+$/, \"El vinculo debe estar compuesto solo por letras\")\r\n .required(\"Debe ingresar el vinculo\"),\r\n email: Yup.string()\r\n .email(\"El email ingresado no es valido\")\r\n .required(\"Debe ingresar el Email\"),\r\n telefono: Yup.string()\r\n .matches(/^\\d+$/, \"Solo debe ingresar números\")\r\n .required(\"Debe ingresar el teléfono\")\r\n }).concat(datosPersonalesSchema);\r\n\r\n const { aspiranteEstado } = useSelector(\r\n (state) => ({\r\n aspiranteEstado: state.aspirante.aspiranteInformacion\r\n }),\r\n shallowEqual\r\n );\r\n\r\n useEffect(() => {\r\n if (aspiranteEstado) {\r\n setNombre(aspiranteEstado.nombre);\r\n };\r\n }, [aspiranteEstado, nombre, cargo]);\r\n\r\n const { pasoUno } = useSelector(\r\n (state) => ({ pasoUno: state.pasoUno }),\r\n shallowEqual\r\n );\r\n const { responsables } = pasoUno;\r\n\r\n function formularioCompleto(cantidad) {\r\n setcargo(cargo + 1);\r\n setDisabled(true);\r\n setCantidad(cantidad);\r\n //setVerDomicilio(true);\r\n };\r\n return (\r\n \r\n {value =>\r\n <>\r\n { tipo === \"aspirante\" &&\r\n value.valoresExtrasAspirante().id > 0 &&\r\n cargo === 0 &&\r\n formularioCompleto(value.cantidadResponsables())\r\n }\r\n { tipo === \"responsable\" &&\r\n responsables.length > 0 &&\r\n responsables.length > posicion &&\r\n responsables[posicion].email &&\r\n responsables[posicion].telefono &&\r\n responsables[posicion].vinculo &&\r\n cargo === 0 &&\r\n formularioCompleto(value.cantidadResponsables())\r\n }\r\n
\r\n

Datos personales

\r\n

(*)Campos Obligatorios

\r\n
\r\n {\r\n setTimeout(() => {\r\n if (tipo === \"aspirante\") {\r\n value.dispatchDatosPeronales({ type: 'guardarAspiranteDatosPersonales', payload: values });\r\n };\r\n if (tipo === \"responsable\") {\r\n values.posicion = posicion;\r\n const { vinculoId } = value.vinculos.find(item => item.nombre === values.vinculo);\r\n values.vinculoId = vinculoId;\r\n value.dispatchDatosPeronales({ type: 'guardarResponsableDatosPersonales', payload: values });\r\n };\r\n formularioCompleto(value.cantidadResponsables());\r\n setSubmitting(false);\r\n }, 400);\r\n }}\r\n >\r\n {formik => (\r\n
\r\n <>\r\n {!formik.values.localidad && setDisabled(false) && setVerDomicilio(false)}\r\n {disabled && !!formik.values.localidad && formik.values.localidad.length > 0 && setVerDomicilio(true)}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {tipo === \"responsable\" &&\r\n <>\r\n
\r\n \r\n \r\n {!formik.values.vinculo ?\r\n \r\n :\r\n null\r\n }\r\n {value.vinculos.map((item, i) =>\r\n i < 3 &&\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 Solo números sin puntos o comas\r\n
\r\n
\r\n
\r\n }\r\n
\r\n
\r\n
\r\n { formik.setFieldValue(\"fechaNacimiento\", date) }}\r\n />\r\n {formik.values.fechaNacimiento && value.calcularEdad(formik.values.fechaNacimiento) > 0 &&\r\n Edad: {value.calcularEdad(formik.values.fechaNacimiento).toString()} años\r\n }\r\n
\r\n
\r\n
\r\n

Lugar de Nacimiento

\r\n
\r\n
\r\n \r\n 0)}>\r\n {formik.values.pais.length === 0 && }\r\n {paises.map((pais, i) => )}\r\n \r\n
\r\n {provincias.length === 0 && setProvincias(paises[formik.values.pais].regions)}\r\n {formik.touched.pais && !formik.errors.pais && formik.values.pais.length > 0 && setProvincias(paises[formik.values.pais].regions)}\r\n
\r\n
\r\n \r\n {provincias.length > 0 ?\r\n \r\n {formik.values.provincia.length === 0 && }\r\n {provincias.map((prov, i) => )}\r\n \r\n :\r\n 0)} />\r\n }\r\n
\r\n
\r\n
\r\n \r\n 0) } />\r\n
\r\n
\r\n
\r\n {verDomicilio ?\r\n
\r\n {disabled && !!formik.values.localidad && formik.values.localidad.length > 0 ?\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 DatosPersonales;","import React, { useContext, useState } from 'react';\r\nimport { useDispatch, useSelector, shallowEqual } from \"react-redux\";\r\nimport * as actions from '../../_redux/pasoUno/pasoUnoActions';\r\n//import * as actionsInscripcion from '../../_redux/inscripcion/inscripcionActions';\r\nimport { useSnackbar } from 'notistack';\r\n\r\nimport { PreInscripcionUIConsumer, PreInscripcionUIContext } from '../../PreInscripcionUIContext';\r\n//BOTONES\r\nimport Volver from '../../components/Volver';\r\nimport Continuar from '../../components/Continuar';\r\n\r\n//ISO PAISES/PROVINCIAS\r\nimport Countries from '../../../../../../_metronic/countries/Countries';\r\n\r\nimport SnackBarCustom from '../../../../Comun/SnackBars/SnackBarCustom';\r\n\r\n//Formik\r\nimport { Formik, Field, Form, ErrorMessage } from 'formik';\r\nimport * as Yup from 'yup';\r\nimport { useEffect } from 'react';\r\n//Formateo loas paises a array\r\nconst paises = Countries();\r\n\r\nconst Domicilio = (props) => {\r\n const { enqueueSnackbar, closeSnackbar } = useSnackbar();\r\n const [siguientePaso, setSiguientePaso] = useState(false);\r\n const { cantidadResponsables } = useContext(PreInscripcionUIContext);\r\n const { tipo, posicion, currentStep, nextStep, setCantidad } = props;\r\n const scrollTop = () => {\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n };\r\n const domicilioSchema = Yup.object().shape({\r\n calle: Yup.string()\r\n //.max(maxCalle, `No debe ingresar más de ${maxCalle} caracteres`)\r\n .required(\"Debe ingresar la calle del domicilio\"),\r\n numero: Yup.string()\r\n //.max(maxNumero, `No debe ingresar más de ${maxNumero} caracteres`)\r\n .required(\"Debe ingresar la numeración del domicilio\"),\r\n /* DEPARTAMENTO Y PISO DEJAN DE SER OBLIGATORIO. JUAN 30/11/2020\r\n piso: Yup.string()\r\n //.max(maxPiso, `No debe ingresar más de ${maxPiso} caracteres`)\r\n .required(\"Debe ingresar el piso del domicilio\"),\r\n departamento: Yup.string()\r\n //.max(maxDepartamento, `No debe ingresar más de ${maxDepartamento} caracteres`)\r\n .required(\"Debe ingresar el departamento del domicilio\"),*/\r\n localidad: Yup.string()\r\n //.max(maxLocalidad, `No debe ingresar más de ${maxLocalidad} caracteres`)\r\n //.matches(/^[a-zA-ZÀ-ÿ\\u00f1\\u00d1]+(\\s*[a-zA-ZÀ-ÿ\\u00f1\\u00d1]*)*[a-zA-ZÀ-ÿ\\u00f1\\u00d1]+$/g, \"La localidad debe estar compuesta solo por letras\")\r\n .required(\"Debe ingresar la localidad del domicilio\"),\r\n });\r\n\r\n const { pasoUno } = useSelector(\r\n (state) => ({ pasoUno: state.pasoUno }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n actionsLoading,\r\n inscripcionId,\r\n responsables,\r\n error\r\n } = pasoUno;\r\n\r\n useEffect(() => {\r\n if (siguientePaso) {\r\n if (!actionsLoading && !error && tipo === \"aspirante\" && inscripcionId && currentStep === 1) {\r\n scrollTop();\r\n setTimeout(() => {\r\n setCantidad(cantidadResponsables());\r\n nextStep();\r\n }, 400);\r\n };\r\n setSiguientePaso(false);\r\n };\r\n }, [actionsLoading, error, inscripcionId]);\r\n\r\n useEffect(() => {\r\n if (!actionsLoading && !error && tipo === \"responsable\" && responsables.length > 0) {\r\n setCantidad(cantidadResponsables());\r\n //setUltimoPaso(currentStep);\r\n };\r\n }, [actionsLoading, error, responsables, cantidadResponsables, currentStep]);\r\n\r\n const dispatch = useDispatch();\r\n return (\r\n \r\n {value =>\r\n <>\r\n
\r\n

Domicilio de Residencia

\r\n

(*)Campos Obligatorios

\r\n
\r\n {\r\n setTimeout(() => {\r\n //console.log(values);\r\n if (tipo === \"aspirante\") {\r\n value.dispatchDatosPeronales({ type: 'guardarAspiranteDomicilio', payload: values });\r\n const { sexo, documentoNumero: nroDocumento, registroCivilvalidacion: validadoPorElRegistroCivil } = value.valoresDocumentacionAspirante();\r\n const { nombre, apellido, pais, provincia, localidad: localidadNacimiento, fechaNacimiento: fNacimiento } = value.valoresDatosPersonalesAspirante();\r\n const { domicilioId, calle: domicilioCalle, numero: domicilioNumero, piso: domicilioPiso, dpto: domicilioDpto, departamento: domicilioDepartamento, localidad: domicilioLocalidad } = value.valoresDomicilioAspirante();\r\n const fechaNacimiento = fNacimiento.toISOString();\r\n const { \r\n personaRegistroCivilId, inscripcionNumero, inscripcionId, id,\r\n inscripcionVinculadaNumero, inscripcionVinculadaId \r\n } = value.valoresExtrasAspirante();\r\n\r\n let inscripcionVinculadaIdAUX = inscripcionVinculadaId ?? 0;\r\n let inscripcionIdAUX = inscripcionId ?? 0;\r\n\r\n if (inscripcionVinculadaIdAUX > 0 && inscripcionVinculadaIdAUX !== inscripcionIdAUX) {\r\n enqueueSnackbar(`El aspirante ya se encuentra inscripto. Código de inscripción: ${inscripcionVinculadaNumero}`, \r\n {\r\n variant: 'error',\r\n preventDuplicate: true,\r\n autoHideDuration: 4000,\r\n onClose: null,\r\n anchorOrigin: {\r\n vertical: 'bottom',\r\n horizontal: 'right',\r\n }\r\n }\r\n );\r\n } else {\r\n dispatch(actions.fetchPasoUnoAlDos({\r\n id,\r\n sexo, nroDocumento, nombre, apellido, fechaNacimiento, paisNacimiento: paises[pais].countryName, provinciaNacimiento: paises[pais].regions[provincia].name, localidadNacimiento,\r\n domicilioId, domicilioCalle, domicilioNumero, domicilioPiso, domicilioDpto, domicilioDepartamento, domicilioLocalidad,\r\n validadoPorElRegistroCivil, personaRegistroCivilId, inscripcionNumero, inscripcionId\r\n }));\r\n setSiguientePaso(true);\r\n }\r\n };\r\n if (tipo === \"responsable\") {\r\n values.posicion = posicion;\r\n value.dispatchDatosPeronales({ type: 'guardarResponsableDomicilio', payload: values });\r\n /*props.setCantidad(value.cantidadResponsables());\r\n value.setUltimoPaso(props.currentStep);*/\r\n //console.log(value.valoresDatosPersonalesResponsable(posicion));\r\n scrollTop();\r\n setTimeout(() => {\r\n nextStep();\r\n }, 400);\r\n };\r\n setSubmitting(false);\r\n }, 400);\r\n }}\r\n >\r\n {formik =>\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n {error && }\r\n \r\n }\r\n \r\n \r\n }\r\n
\r\n )\r\n}\r\n\r\nexport default Domicilio;","import React, { useState, useContext, useEffect } from 'react';\r\nimport { useSelector, shallowEqual } from \"react-redux\";\r\n\r\n//COMPONENTES REUTILIZABLES\r\nimport Documentacion from './components/Documentacion';\r\nimport DatosPersonales from './components/DatosPersonales';\r\nimport Domicilio from './components/Domicilio';\r\n\r\n//CONTEXTO\r\nimport { PreInscripcionUIContext } from '../PreInscripcionUIContext';\r\n\r\nconst Persona = (props) => {\r\n const { aspirante } = useSelector(\r\n (state) => ({ aspirante: state.aspirante }),\r\n shallowEqual\r\n );\r\n const {\r\n //aspiranteInformacion,\r\n actionsLoading: actionsLoadingAspirante,\r\n //error: errorAspirante\r\n } = aspirante;\r\n\r\n const { pasoUno } = useSelector(\r\n (state) => ({ pasoUno: state.pasoUno }),\r\n shallowEqual\r\n );\r\n const { listLoadingResponsables } = pasoUno;\r\n\r\n const { tipo, posicion } = props;\r\n const { cantidadResponsables } = useContext(PreInscripcionUIContext);\r\n const [cantidad, setCantidad] = useState(cantidadResponsables());\r\n const [verDatosPersonales, setVerDatosPersonales] = useState(false);\r\n const [verDomicilio, setVerDomicilio] = useState(false);\r\n //const [buscando, setBuscando] = useState(false);\r\n let buscando = false;\r\n useEffect(() => {\r\n if (tipo === \"responsable\" && posicion === cantidad) {\r\n setVerDatosPersonales(false);\r\n setVerDomicilio(false);\r\n };\r\n }, [tipo, posicion, cantidad]);\r\n\r\n useEffect(() => {\r\n //setBuscando(!!actionsLoadingAspirante || !!listLoadingResponsables);\r\n buscando = !!actionsLoadingAspirante || !!listLoadingResponsables;\r\n }, [actionsLoadingAspirante, listLoadingResponsables]);\r\n\r\n return (\r\n <>\r\n \r\n {(!actionsLoadingAspirante && !listLoadingResponsables) && \r\n <>\r\n {verDatosPersonales && }\r\n {verDomicilio && }\r\n \r\n }\r\n \r\n )\r\n};\r\n\r\nexport default Persona;","import * as requestFromServer from './pasoDosCrud';\r\nimport { pasoDosSlice, callTypes } from './pasoDosSlice';\r\n\r\n\r\nconst { actions } = pasoDosSlice;\r\n\r\nexport const fetchPasoDosAlUno = queryParams => async dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return await requestFromServer\r\n .postPasoDosAlUno(queryParams)\r\n .then(response => {\r\n const pasoDosAlUnoInformacion = response.data;\r\n dispatch(actions.pasoDosAlUnoFetched({ pasoDosAlUnoInformacion }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data.title || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const fetchPasoDosAlTres = queryParams => async dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return await requestFromServer\r\n .postPasoDosAlTres(queryParams)\r\n .then(response => {\r\n const establecimientos = response.data.ofertasSeleccionadas;\r\n dispatch(actions.pasoDosAlTresFetched({ establecimientos }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data.title || error.response.data.title || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const stateLimpiar = queryParams => dispatch => {\r\n dispatch(actions.stateLimpiar());\r\n};","import React from 'react';\r\nimport { Modal,Button } from 'react-bootstrap'\r\n\r\nconst ModalDelete = (props) => {\r\n const { show, close, title, text, deleteFunction } = props;\r\n return (\r\n close()} centered >\r\n \r\n

Eliminar {title}

\r\n
\r\n {text}\r\n \r\n {\r\n deleteFunction();\r\n close();\r\n }}\r\n >Eliminar\r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport default ModalDelete;","import React, { useState, useContext, useEffect } from 'react';\r\nimport { useDispatch, useSelector, shallowEqual } from \"react-redux\";\r\nimport * as actionsPasoDos from '../_redux/pasoDos/pasoDosActions';\r\nimport * as actionsPasoUno from '../_redux/pasoUno/pasoUnoActions';\r\nimport { PreInscripcionUIConsumer, PreInscripcionUIContext } from '../PreInscripcionUIContext';\r\n//ICONOS\r\nimport ArrowForwardIcon from '@material-ui/icons/ArrowForward';\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\n//TOOLTIPS\r\nimport { OverlayTrigger, Tooltip, Spinner } from 'react-bootstrap'\r\n//BOTONES\r\nimport Volver from '../components/Volver';\r\nimport { Button } from 'react-bootstrap';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport Fab from '@material-ui/core/Fab';\r\n//MODAL PERSONALIZADO PARA ELIMINAR\r\nimport ModalDelete from '../../../Comun/Modal/ModalDelete';\r\n\r\nimport SnackBarCustom from '../../../Comun/SnackBars/SnackBarCustom';\r\n\r\n\r\n//ISO PAISES/PROVINCIAS \r\nimport Countries from '../../../../../_metronic/countries/Countries';\r\n//Formateo loas paises a array\r\nconst paises = Countries();\r\n\r\nconst AgregarOtroResponsable = (props) => {\r\n const { goToStep } = props;\r\n const dispatch = useDispatch();\r\n\r\n const { pasoUno } = useSelector(\r\n (state) => ({ pasoUno: state.pasoUno }),\r\n shallowEqual\r\n );\r\n const { id: idPasoUno, inscripcionNumero, inscripcionId } = pasoUno;\r\n\r\n\r\n //ESTADOS\r\n const [submitPasoSiguiente, setSubmitPasoSiguiente] = useState(false);\r\n const [eliminarResponsable, setEliminarResponsable] = useState(false);\r\n const [verModal, setVerModal] = useState(false);\r\n const [cambiarPrincipal, setCambiarPrincipal] = useState(false);\r\n const [responsable, setResponsable] = useState({});\r\n const { cantidadResponsables, dispatchDatosPeronales, verResponsables, responsablePrincipalPosicion } = useContext(PreInscripcionUIContext);\r\n //EDITAR RESPONSABLE\r\n function editarPaso(i) {\r\n if (i === 0) {\r\n goToStep(2);\r\n } else\r\n if (i === 1) {\r\n goToStep(4);\r\n } else\r\n if (i === 2) {\r\n goToStep(6);\r\n };\r\n };\r\n\r\n //QUITAR RESPONSABLE\r\n const quitarResponsable = () => {\r\n dispatchDatosPeronales({ type: 'quitarResponsable', payload: { posicion: responsable.posicion } });\r\n dispatch(actionsPasoUno.stateQuitarResponsables({}))\r\n setEliminarResponsable(!eliminarResponsable);\r\n cerrarModal();\r\n if (cantidadResponsables() === 0) {\r\n goToStep(2);\r\n };\r\n };\r\n\r\n //ABRIR MODAL\r\n function abrirModal(i, documentoNumero, nombre, apellido) {\r\n setResponsable({ posicion: i, documentoNumero, nombre: apellido + \", \" + nombre });\r\n setVerModal(true);\r\n };\r\n\r\n //CERRAR MODAL\r\n const cerrarModal = () => {\r\n setResponsable({});\r\n setVerModal(false);\r\n };\r\n\r\n const { pasoDos } = useSelector(\r\n (state) => ({ pasoDos: state.pasoDos }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n actionsLoading: actionsLoadingPaso2,\r\n error: errorPaso2\r\n } = pasoDos;\r\n\r\n //IR A ESTABLECIMIENTOS\r\n function irEstablecimiento() {\r\n scrollTop();\r\n\r\n const responsablesContext = verResponsables();\r\n let responsables = []\r\n\r\n responsablesContext.forEach((item, i) => {\r\n const { id, aspiranteResponsableId,\r\n sexo, documentoNumero: nroDocumento, //validadoPorElRegistroCivil,\r\n nombre, apellido, pais, provincia, localidad: localidadNacimiento, fechaNacimiento: fNacimiento,\r\n personaRegistroCivilId, vinculo, vinculoId, telefono, email\r\n } = item;\r\n const { domicilioId, calle: domicilioCalle, numero: domicilioNumero, piso: domicilioPiso, dpto: domicilioDpto,\r\n departamento: domicilioDepartamento, localidad: domicilioLocalidad\r\n } = item.domicilio;\r\n const fechaNacimiento = fNacimiento.toISOString();\r\n //const prioridad = responsablePrincipalPosicion() === i ? \"Principal\" : \"Secundario\"\r\n responsables.push({\r\n id: id ? id : null, \r\n sexo, \r\n nroDocumento, \r\n nombre, \r\n apellido,\r\n fechaNacimiento, \r\n paisNacimiento: paises[pais].countryName, \r\n provinciaNacimiento: paises[pais].regions[provincia].name,\r\n localidadNacimiento, \r\n domicilioId, \r\n domicilioCalle, \r\n domicilioNumero, \r\n domicilioPiso, \r\n domicilioDpto, \r\n domicilioDepartamento, \r\n domicilioLocalidad, //validadoPorElRegistroCivil, \r\n personaRegistroCivilId: personaRegistroCivilId ? personaRegistroCivilId : 0,\r\n esAspirante: false, \r\n esResponsable: true, \r\n inscripcionId, \r\n inscripcionNumero:'',\r\n aspiranteResponsableId: aspiranteResponsableId ? aspiranteResponsableId : 0,\r\n email, \r\n telefono,\r\n vinculo, \r\n vinculoId, \r\n prioridad: i + 1\r\n });\r\n });\r\n dispatch(actionsPasoDos.fetchPasoDosAlTres({ \r\n //id: idPasoUno, \r\n inscripcionId, \r\n //inscripcionNumero, \r\n responsables \r\n }));\r\n setSubmitPasoSiguiente(true);\r\n };\r\n\r\n const scrollTop = () => {\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n };\r\n\r\n useEffect(() => {\r\n if (submitPasoSiguiente && !actionsLoadingPaso2 && !errorPaso2) {\r\n setSubmitPasoSiguiente(false);\r\n goToStep(8);\r\n };\r\n }, [actionsLoadingPaso2, errorPaso2, submitPasoSiguiente])\r\n\r\n return (\r\n \r\n {value =>\r\n <>\r\n {value.cantidadResponsables() < 3 &&\r\n
  • \r\n

    ¿Agregar otro responsable?

    \r\n editarPaso(value.cantidadResponsables())}>\r\n \r\n \r\n
  • \r\n }\r\n {value.cantidadResponsables() > 0 &&\r\n <>\r\n {value.responsablePrincipalPosicion() > value.cantidadResponsables() - 1 &&\r\n value.dispatchDatosPeronales({ type: 'guardarResponsablePrincipalPosicion', payload: { posicion: value.cantidadResponsables() - 1 } })\r\n }\r\n {cambiarPrincipal ?\r\n
    \r\n \r\n \r\n \r\n
    \r\n :\r\n
    \r\n

    Reponsable Principal:

    \r\n
  • \r\n {value.obtenerResponsablePrincipal()} \r\n {value.cantidadResponsables() > 1 &&\r\n \r\n }\r\n
  • \r\n
    \r\n }\r\n \r\n }\r\n

    Responsables ({value.cantidadResponsables()} de 3):

    \r\n {eliminarResponsable && value.cantidadResponsables() > 0 && value.verResponsables().map((responsable, i) =>\r\n
  • \r\n {responsable.apellido}, {responsable.nombre} ({responsable.vinculo})\r\n \r\n Quitar responsable}>\r\n abrirModal(i, responsable.documentoNumero, responsable.nombre, responsable.apellido)}>\r\n \r\n
  • \r\n )}\r\n {!eliminarResponsable && value.cantidadResponsables() > 0 && value.verResponsables().map((responsable, i) =>\r\n
  • \r\n {responsable.apellido}, {responsable.nombre} ({responsable.vinculo})\r\n \r\n Quitar responsable}>\r\n abrirModal(i, responsable.documentoNumero, responsable.nombre, responsable.apellido)}>\r\n \r\n
  • \r\n )}\r\n \r\n
    \r\n \r\n \r\n
    \r\n {errorPaso2 && }\r\n \r\n }\r\n
    \r\n )\r\n};\r\n\r\nexport default AgregarOtroResponsable;","import { INSCRIPCION_PASO_DOS_AL_UNO_URL, INSCRIPCION_PASO_DOS_AL_TRES_URL } from '../config';\r\nimport axios from 'axios';\r\n\r\nexport function postPasoDosAlUno(params) {\r\n const result = axios.post(INSCRIPCION_PASO_DOS_AL_UNO_URL, params);\r\n return result;\r\n};\r\n\r\nexport function postPasoDosAlTres(params) {\r\n const result = axios.post(INSCRIPCION_PASO_DOS_AL_TRES_URL, params);\r\n return result;\r\n};","import React, { useState, useContext, useEffect } from 'react';\r\nimport { ToggleButton, ButtonToolbar, ToggleButtonGroup, Spinner } from 'react-bootstrap';\r\nimport { useSelector, shallowEqual /*,useDispatch*/ } from 'react-redux'\r\nimport { Formik, Field, Form, ErrorMessage } from 'formik';\r\n//import * as actionsPasoDos from \"../_redux/pasoDos/pasoDosActions\";\r\nimport * as Yup from 'yup';\r\nimport { PreInscripcionUIConsumer, PreInscripcionUIContext } from '../PreInscripcionUIContext';\r\nimport * as _ from 'lodash';\r\n\r\n//BOTONES\r\nimport Volver from '../components/Volver';\r\nimport Continuar from '../components/Continuar';\r\nimport { func } from 'prop-types';\r\n\r\nconst Nivel = (props) => {\r\n //const dispatch = useDispatch();\r\n const { niveles } = useContext(PreInscripcionUIContext);\r\n const { pasoDos, llamado } = useSelector(\r\n (state) => ({ pasoDos: state.pasoDos, llamado: state.llamado }),\r\n shallowEqual\r\n );\r\n const {\r\n establecimientos,\r\n actionsLoading,\r\n //error: errorPaso2\r\n } = pasoDos;\r\n\r\n const {\r\n entities: llamados,\r\n actionsLoading: llamadosListLoading,\r\n error: errorLlamados\r\n } = llamado;\r\n\r\n \r\n const [nivelesFromState, setNivelesFromState] = useState();\r\n useEffect(() => {\r\n const aux = llamados && _.filter(niveles, function(nivel){\r\n return _.some(llamados, function (llamado) {\r\n return llamado.nivelEnsenanza == nivel.nivel && _.some(nivel.grados, function (grado) {\r\n return true; //llamado.curso == grado; //comentado porque no esta trayendo los grados\r\n });\r\n });\r\n });\r\n setNivelesFromState(aux);\r\n }, [llamados, niveles]);\r\n\r\n \r\n \r\n const scrollTop = () => {\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n };\r\n const valoresIniciales = establecimientos && establecimientos.length > 0 ?\r\n {\r\n nivel: establecimientos[0].nivelEnsenanza,\r\n grado: establecimientos[0].curso\r\n }\r\n :\r\n { nivel: \"\", grado: \"\" };\r\n const [detalleNivel, setDetalleNivel] = useState(0);\r\n\r\n const nivelSchema = Yup.object().shape({\r\n nivel: Yup.string()\r\n .required(\"Debe seleccionar un nivel de enseñanza\"),\r\n grado: Yup.string()\r\n .required(\"Debe seleccionar un nivel de enseñanza y luego un Grado / Año\"),\r\n });\r\n\r\n function SetNivel(formik, item, index) {\r\n /*if (establecimientos.length > 0) {\r\n dispatch(actionsPasoDos.stateLimpiar());\r\n value.dispatchDatosPeronales({ type: 'guardarEstablecimientos', payload: { establecimientos: [] } });\r\n };*/\r\n formik.setFieldValue(\"nivel\", item.nivel);\r\n setDetalleNivel(index);\r\n formik.setFieldValue(\"grado\", item.grados[0]);\r\n }\r\n\r\n return (\r\n \r\n {value =>\r\n <>\r\n {value.dispatchDatosPeronales({ type: 'calcularEdad' })}\r\n

    NIVEL

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

    Edad del aspirante: {value.stateDatosPersonales.aspirante.edad} años

    \r\n

    Nivel Recomendado: {value.recomendacionInscripcion()}

    \r\n
    \r\n

    (*)Campos Obligatorios

    \r\n
    \r\n {!nivelesFromState || !valoresIniciales ?\r\n
    Obteniendo su información
    \r\n :\r\n <>\r\n {\r\n scrollTop();\r\n setTimeout(() => {\r\n //console.log(values);\r\n value.dispatchDatosPeronales({ type: 'guardarNivelEnseñanza', payload: values });\r\n props.nextStep();\r\n setSubmitting(false);\r\n }, 400);\r\n }}\r\n >\r\n {formik => (\r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n {/**HASTA EL 16/12 NO DEBE SALIR INSCRIPCION A SECUNDARIAS */}\r\n {nivelesFromState && nivelesFromState.map((item, i) =>\r\n SetNivel(formik, item, i)}\r\n //checked={nivelesFromState.length === 1}\r\n >\r\n {item.nivel}\r\n \r\n )}\r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n {formik.values.grado.length === 0 && }\r\n {\r\n nivelesFromState[detalleNivel].grados.map((grado, i) => \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 Nivel;","import { ESTABLECIMIENTO_URL, ESTABLECIMIENTO_PASO4_URL, ESTABLECIMIENTOANTERIOR_PASO4_URL, PERSONA_URL } from '../config';\r\nimport axios from 'axios';\r\n\r\nexport const getEstablecimientos = async (params) => {\r\n const url = `${ESTABLECIMIENTO_URL}?`\r\n + `&departamentoId=${params.departamentoId == null ? '' : params.departamentoId}`\r\n + `&localidadId=${params.localidadId == null ? '' : params.localidadId}`\r\n + `&nivelEnsenanzaId=${params.nivelEnsenanzaId == null ? '' : params.nivelEnsenanzaId}`\r\n + `&cursoId=${params.cursoId == null ? '' : params.cursoId}`\r\n + `&turnoId=${params.turnoId == null ? '' : params.turnoId}`\r\n //+ `&esSeleccionable=${params.esSeleccionable === undefined ? '' : params.esSeleccionable ? 'true' : 'false'}`\r\n //+ `&esPrivado=${params.esPrivado === undefined ? '' : params.esPrivado ? 'true' : 'false'}`\r\n //+ `&palabraABuscar=${params.palabraABuscar === undefined ? '' : params.palabraABuscar}`\r\n ;\r\n const result = await axios.get(url);\r\n return result;\r\n};\r\n\r\nexport const getEstablecimientosPaso4 = async (params) => {\r\n const url = `${ESTABLECIMIENTO_PASO4_URL}?`\r\n + `&departamentoId=${params.departamentoId == null ? '' : params.departamentoId}`\r\n + `&localidadId=${params.localidadId == null ? '' : params.localidadId}`\r\n ;\r\n const result = await axios.get(url);\r\n return result;\r\n};\r\n\r\nexport const getEstablecimientosAnteriorPaso4 = async (params) => {\r\n const url = `${ESTABLECIMIENTOANTERIOR_PASO4_URL}?`\r\n + `&departamentoId=${params.departamentoId == null ? '' : params.departamentoId}`\r\n + `&localidadId=${params.localidadId == null ? '' : params.localidadId}`\r\n ;\r\n const result = await axios.get(url);\r\n return result;\r\n};\r\n\r\n\r\nexport function getPersona(params) {\r\n const url = `${PERSONA_URL}?sexo=${params.sexo}&nroDocumento=${params.nroDocumento}`;\r\n const result = axios.get(url);\r\n return result;\r\n};\r\n\r\n","import * as requestFromServer from './establecimientoCrud';\r\n\r\nimport { establecimientoSlice, callTypes } from './establecimientoSlice';\r\n\r\nconst { actions } = establecimientoSlice;\r\n\r\nexport const fetchEstablecimientos = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return requestFromServer\r\n .getEstablecimientos(queryParams)\r\n .then(response => {\r\n const establecimientos = response.data;\r\n dispatch(actions.establecimientosFetched({ establecimientos }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\n//Trae los establecimientos para Abanderados (paso4)\r\nexport const fetchEstablecimientosAbanderado = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return requestFromServer\r\n .getEstablecimientosPaso4(queryParams)\r\n .then(response => {\r\n const establecimientos = response.data;\r\n dispatch(actions.establecimientosAbanderadoFetched({ establecimientos }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\n//Trae los establecimientos para Estatales (paso4)\r\nexport const fetchEstablecimientosEstatales = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return requestFromServer\r\n .getEstablecimientosAnteriorPaso4(queryParams)\r\n .then(response => {\r\n const establecimientos = response.data;\r\n dispatch(actions.establecimientosEstatalesFetched({ establecimientos }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const fetchHermano = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return requestFromServer\r\n .getPersona(queryParams)\r\n .then(response => {\r\n const hermano = response.data;\r\n console.log(\"Respuesta del back hermano\")\r\n console.log(response);\r\n dispatch(actions.hermanoFetched({ hermano }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\nexport const fetchFamiliar = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return requestFromServer\r\n .getPersona(queryParams)\r\n .then(response => {\r\n const familiar = response.data;\r\n console.log(\"Respuesta del back familiar\")\r\n console.log(response);\r\n dispatch(actions.familiarFetched({ familiar }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\n\r\nexport const stateLimpiar = queryParams => dispatch => {\r\n dispatch(actions.stateLimpiar());\r\n};","import * as requestFromServer from './pasoTresCrud';\r\n\r\nimport { pasoTresSlice, callTypes } from './pasoTresSlice';\r\n\r\nconst { actions } = pasoTresSlice;\r\n\r\nexport const fetchPasoTresAlDos = queryParams => async dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return await requestFromServer\r\n .postPasoTresAlDos(queryParams)\r\n .then(response => {\r\n const pasoTresAlDosInformacion = response.data;\r\n dispatch(actions.pasoTresAlDosFetched({ pasoTresAlDosInformacion }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchErrorPasoTresAlDos({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const fetchPasoTresAlCuatro = queryParams => async dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return await requestFromServer\r\n .postPasoTresAlCuatro(queryParams)\r\n .then(response => {\r\n const extrasInformacion = response.data;\r\n dispatch(actions.pasoTresAlCuatroFetched({ extrasInformacion }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data.title || error.response.data);\r\n dispatch(actions.catchErrorPasoTresAlCuatro({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const stateLimpiar = queryParams => dispatch => {\r\n dispatch(actions.stateLimpiar());\r\n};","\r\nconst API_BASE_URL = `${process.env.REACT_APP_API_URL}/api/${process.env.REACT_APP_API_VERSION}`;\r\n\r\nconst DEPARTAMENTO_URL = `${API_BASE_URL}/Departamento/GetDepartamentosAsync`;\r\nconst LOCALIDAD_URL = `${API_BASE_URL}/Localidad/GetLocalidadesAsync`;\r\n\r\n\r\nexport {\r\n //DEPARTAMENTO\r\n DEPARTAMENTO_URL,\r\n\r\n //LOCALIDAD\r\n LOCALIDAD_URL,\r\n}","import * as requestFromServer from './dptoCrud';\r\nimport { dptoSlice, callTypes } from './dptoSlice';\r\n\r\nconst { actions } = dptoSlice;\r\n\r\nexport const fetchDepartamentos = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.list }));\r\n return requestFromServer\r\n .getDepartamentos(queryParams)\r\n .then(response => {\r\n const departamentos = response.data;\r\n dispatch(actions.departamentosFetched({ departamentos }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.list }));\r\n });\r\n};\r\n","import { DEPARTAMENTO_URL } from '../../config';\r\nimport axios from 'axios';\r\n\r\n\r\n// READ\r\nexport function getDepartamentos(params) {\r\n const {soloConOfertas} = params || {};\r\n const url = `${DEPARTAMENTO_URL}?`\r\n + `&soloConOfertas=${soloConOfertas ?? true}`;\r\n \r\n return axios.get(url);\r\n};","import * as requestFromServer from './localidadCrud';\r\nimport { localidadSlice, callTypes } from './localidadSlice';\r\n\r\nconst { actions } = localidadSlice;\r\n\r\nexport const fetchLocalidades = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.list }));\r\n return requestFromServer\r\n .getLocalidades(queryParams)\r\n .then(response => {\r\n const localidades = response.data;\r\n dispatch(actions.localidadesFetched({ localidades }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.list }));\r\n });\r\n};\r\n","import { LOCALIDAD_URL } from '../../config';\r\nimport axios from 'axios';\r\n\r\n\r\n// READ\r\nexport function getLocalidades(params) {\r\n const {soloConOfertas} = params || {};\r\n const url = `${LOCALIDAD_URL}?`\r\n + `&soloConOfertas=${soloConOfertas ?? true}`;\r\n \r\n return axios.get(url);\r\n};\r\n","import React from 'react';\r\n\r\nimport IconButton from '@material-ui/core/IconButton';\r\n//ICONOS USADOS\r\nimport ExpandLessIcon from '@material-ui/icons/ExpandLess';\r\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\n\r\n//MATERIAL UI CARD \r\nimport { Card, CardContent } from '@material-ui/core';\r\n\r\n//TOOLTIPS\r\nimport { OverlayTrigger, Tooltip } from 'react-bootstrap'\r\n\r\nconst EstablecimientoCard = (props) => {\r\n const { i,item, permutarArriba, permutarAbajo,quitarEstablecimiento,ultimoEstablecimiento } = props;\r\n return (\r\n
    \r\n
    \r\n {i > 0 &&\r\n permutarArriba(i)}>\r\n \r\n }\r\n
    \r\n

    Prioridad

    \r\n \r\n {i + 1}\r\n \r\n
    \r\n {i < ultimoEstablecimiento - 1 &&\r\n permutarAbajo(i)} >\r\n \r\n }\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    {item.establecimiento}
    \r\n
    \r\n
    Dirección: {item.direccion}
    \r\n
    \r\n
    \r\n Departamento: {item.departamento} \r\n Localidad: {item.localidad} \r\n {/*

    Email: {item.email}

    */}\r\n
    \r\n
    \r\n
    \r\n
    Dirección: {item.direccion}
    \r\n Departamento: {item.departamento}\r\n Localidad: {item.localidad}\r\n {/*

    {item.email}

    */}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Turno: {item.turno} {!!item.curso && item.curso.toUpperCase() === 'PLURISALA' ? ' - PLURISALA' : ''}

    \r\n
    \r\n

    ¿Tiene hermana/o aquí? {item.hermano || item.hermanoId > 0 ? \"SI\" : \"NO\"}

    \r\n

    ¿Tiene familiar trabajando aquí? {item.familiar || item.familiarId > 0 ? \"SI\" : \"NO\"}

    \r\n

    ¿Tiene una inscripión vinculada aquí? {item.codigoInscripcionVinculada ? \"SI\" : \"NO\"}

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

    VACANTES: {item.vacantes}

    \r\n {/*

    LISTA DE ESPERA: {item.listaEspera}

    */}\r\n
    \r\n
    \r\n

    VACANTES: {item.vacantes}

    \r\n {/*

    LISTA DE ESPERA: {item.listaEspera}

    */}\r\n
    \r\n
    \r\n Quitar este establecimiento}>\r\n quitarEstablecimiento(item)}>\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 EstablecimientoCard;","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector, shallowEqual } from \"react-redux\";\r\nimport * as actionsDepartamento from \"./_redux/dptoActions\";\r\nimport * as actionsLocalidad from \"../Localidad/_redux/localidadActions\";\r\nimport Select from 'react-select';\r\n\r\nconst SelectorDepartamento = (props) => {\r\n const {setLocalidadesChild, setDepartamentoChild,setLocalidadChild, soloConOfertas}=props;\r\n const { departamento } = useSelector(\r\n (state) => ({ departamento: state.departamento }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n entities:entitiesDepartamentos,\r\n listLoading:listLoadingDepartamentos,\r\n error:errorDepartamentos\r\n } = departamento;\r\n\r\n const { localidad } = useSelector(\r\n (state) => ({ localidad: state.localidad }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n entities:entitiesLocalidades,\r\n listLoading:listLoadingLocalidades,\r\n error:errorLocalidades\r\n } = localidad;\r\n\r\n const dispatch = useDispatch();\r\n\r\n useEffect(() => {\r\n if (!listLoadingDepartamentos && !entitiesDepartamentos && !errorDepartamentos) {\r\n dispatch(actionsDepartamento.fetchDepartamentos({soloConOfertas}));\r\n };\r\n if (!listLoadingLocalidades && !entitiesLocalidades && !errorLocalidades) {\r\n dispatch(actionsLocalidad.fetchLocalidades({soloConOfertas}));\r\n };\r\n }, []);\r\n\r\n return (\r\n departamentoId}\r\n getOptionLabel={({ departamentoNombre }) => `${departamentoNombre}`}\r\n placeholder={\"Filtrar por Departamento\"}\r\n noOptionsMessage={() => 'Sin Departamentos'}\r\n onChange={(item)=>{\r\n setLocalidadesChild(entitiesLocalidades.filter(filtrado=>filtrado.departamentoId===item.departamentoId))\r\n setLocalidadChild(null);\r\n setDepartamentoChild(item);\r\n }}\r\n />\r\n )\r\n}\r\n\r\nexport default SelectorDepartamento;","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector, shallowEqual } from \"react-redux\";\r\nimport * as actionsLocalidad from \"./_redux/localidadActions\";\r\nimport Select from 'react-select';\r\n\r\nconst SelectorLocalidad = (props) => {\r\n const { localidadesChild, setLocalidadChild, localidadChild, soloConOfertas } = props;\r\n const { localidad } = useSelector(\r\n (state) => ({ localidad: state.localidad }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n entities,\r\n listLoading,\r\n error\r\n } = localidad;\r\n\r\n const dispatch = useDispatch();\r\n\r\n useEffect(() => {\r\n if (!listLoading && !entities && !error) {\r\n dispatch(actionsLocalidad.fetchLocalidades({ soloConOfertas }));\r\n }\r\n }, []);\r\n\r\n return (\r\n localidadId}\r\n getOptionLabel={({ localidadNombre }) => `${localidadNombre}`}\r\n noOptionsMessage={() => 'Sin Localidades'}\r\n placeholder={!localidadesChild || localidadesChild.length === 0 ? \"Sin Localidades\" : \"Filtrar por Localidad\"}\r\n onChange={(item) => {\r\n setLocalidadChild(item);\r\n }}\r\n />\r\n )\r\n}\r\n\r\nexport default SelectorLocalidad;","import React, { useState, useEffect, useContext } from 'react';\r\nimport { useDispatch, useSelector, shallowEqual } from \"react-redux\";\r\nimport * as actionsEstablecimiento from \"../_redux/establecimiento/establecimientoActions\";\r\nimport * as actionsPasoTres from \"../_redux/pasoTres/pasoTresActions\";\r\nimport * as _ from 'lodash';\r\nimport * as actionsDepartamento from \"../../../Comun/Departamento/_redux/dptoActions\";\r\nimport * as actionsLocalidad from \"../../../Comun/Localidad/_redux/localidadActions\";\r\n\r\n//CONTEXO\r\nimport { PreInscripcionUIConsumer, PreInscripcionUIContext } from '../PreInscripcionUIContext';\r\n\r\n//VISTA PARA VER LOS ESTABLECIMIENTOS SELECCIONADOS\r\nimport EstablecimientoCard from './components/EstablecimientoCard';\r\n\r\n//ICONOS\r\nimport ArrowForwardIcon from '@material-ui/icons/ArrowForward';\r\nimport ArrowUpwardIcon from '@material-ui/icons/ArrowUpward';\r\nimport ArrowDownwardIcon from '@material-ui/icons/ArrowDownward';\r\n\r\n//FORMIK\r\nimport { Formik, Field, Form, ErrorMessage } from 'formik';\r\nimport * as Yup from 'yup';\r\n\r\n//ICONOS USADOS\r\nimport ErrorIcon from '@material-ui/icons/Error';\r\nimport SearchIcon from '@material-ui/icons/Search';\r\n\r\n//REACT BOOTSTRAP\r\nimport { Button ,Spinner} from 'react-bootstrap';\r\n\r\n//BOTONES\r\nimport Volver from '../components/Volver';\r\n\r\n//MATERIAL UI CARD \r\nimport { Card, CardContent } from '@material-ui/core';\r\n\r\n//SEARCH SELECT\r\nimport Select from 'react-select';\r\n\r\n//RADIO BUTTONS\r\nimport { Radio, RadioGroup, FormControlLabel } from '@material-ui/core';\r\n\r\n//SELECCIONAR DPTO Y LOCALIDAD\r\nimport SelectorDepartamento from \"../../../../modules/Comun/Departamento/selector\";\r\nimport SelectorLocalidad from \"../../../../modules/Comun/Localidad/selector\";\r\nimport SnackBarCustom from '../../../Comun/SnackBars/SnackBarCustom';\r\n\r\nconst SeleccionEstablecimiento = (props) => {\r\n const { nextStep } = props;\r\n \r\n const { establecimiento } = useSelector(\r\n (state) => ({ establecimiento: state.establecimiento }),\r\n shallowEqual\r\n );\r\n const {\r\n entities: establecimientosList,\r\n //hermanoEstab,\r\n //familiarEstab,\r\n listLoading: listLoadingEstablecimientos,\r\n error: errorListadoEstablecimientos\r\n } = establecimiento;\r\n\r\n const { pasoUno } = useSelector(\r\n (state) => ({ pasoUno: state.pasoUno }),\r\n shallowEqual\r\n );\r\n const { inscripcionId } = pasoUno;\r\n\r\n const { pasoDos } = useSelector(\r\n (state) => ({ pasoDos: state.pasoDos }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n establecimientos: seleccionadosPaso2,\r\n // actionsLoading: actionsLoadingPaso2,\r\n // error: errorPaso2\r\n } = pasoDos;\r\n\r\n const { pasoTres } = useSelector(\r\n (state) => ({ pasoTres: state.pasoTres }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n actionsLoading: actionsLoadingPaso3,\r\n //extrasInformacion: extrasInformacionPaso3,\r\n error: errorPaso3\r\n } = pasoTres;\r\n\r\n const { nivelSeleccionado, dispatchDatosPeronales } = useContext(PreInscripcionUIContext);\r\n const { nivel, grado } = nivelSeleccionado();\r\n //FILTRO PARA UBICACION\r\n const [departamento, setDepartamento] = useState(0);\r\n const [localidades, setLocalidades] = useState([])//aca van las localidades filtradas por dpto\r\n const [localidad, setLocalidad] = useState(0);\r\n //GUARDA LOS ESTABLECIMIENTOS SELECCIONADOS\r\n //const [establecimientos, setEstablecimientos] = useState([]);\r\n const [seleccionados, setSeleccionados] = useState([]);\r\n const [primeraCarga, setPrimeraCarga] = useState(true)\r\n //COMO EN EL SEARCH NO SE USA FORMULARIO, SE USA ESTA BANDERA PARA EL ERROR SI NO CARGO ESTABLECIMIENTOS\r\n const [tocoSearch, setTocoSearch] = useState(false);\r\n //SE USA EN VARIAS PARTES, PARA LOS BOTONES DE PRIORIDAD Y LAS PREGUNTAS DEL ESTABLECIMIENTO\r\n const [ultimoEstablecimiento, setUltimoEstablecimiento] = useState(0);\r\n //ACTIVA LAS OPCIONES PARA AGREGAR INFORMACION A LOS ESTABLECIMIENTOS SELECCIONADOS\r\n const [hermano, setHermano] = useState(false);\r\n const [familiar, setFamiliar] = useState(false);\r\n const [vincular, setVincular] = useState(false);\r\n //ACTIVA LAS PREGUNTAS DE LOS ESTABLECIMIENTOS SELECCIONADOS\r\n const [preguntas, setPreguntas] = useState(false);\r\n\r\n const seleccionarEstablecimiendo = (item) => {\r\n if (seleccionados.length < 6) {\r\n if (seleccionados) {\r\n setUltimoEstablecimiento(seleccionados.length + 1);\r\n } else {\r\n setUltimoEstablecimiento(0);\r\n };\r\n setSeleccionados([...seleccionados, item]);\r\n setPreguntas(true);\r\n };\r\n };\r\n function quitarEstablecimiento(item) {\r\n if (primeraCarga) {\r\n setPrimeraCarga(false);\r\n };\r\n\r\n setSeleccionados(seleccionados.filter(filtrado => filtrado.ofertaId !== item.ofertaId));\r\n if (seleccionados) {\r\n setUltimoEstablecimiento(seleccionados.length + 1);\r\n } else {\r\n setUltimoEstablecimiento(0);\r\n };\r\n\r\n };\r\n function permutarArriba(i) {\r\n if (i > 0) {\r\n let item = seleccionados[i];\r\n item.prioridad = i;\r\n let itemAnterior = seleccionados[i - 1];\r\n itemAnterior.prioridad = i + 1;\r\n let nuevaLista = seleccionados.slice();\r\n nuevaLista[i] = itemAnterior;\r\n nuevaLista[i - 1] = item;\r\n setSeleccionados(nuevaLista);\r\n };\r\n };\r\n function permutarAbajo(i) {\r\n if (i < 4) {\r\n let item = seleccionados[i];\r\n item.prioridad = i + 2;\r\n let itemSiguiente = seleccionados[i + 1];\r\n itemSiguiente.prioridad = i + 1;\r\n let nuevaLista = seleccionados.slice();\r\n nuevaLista[i + 1] = item;\r\n nuevaLista[i] = itemSiguiente;\r\n setSeleccionados(nuevaLista);\r\n };\r\n };\r\n const scrollTop = () => {\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n };\r\n //ESQUEMA NORMAL\r\n const modalSchema = Yup.object().shape({\r\n fueEstatal: Yup.boolean()\r\n .required(\"Debe seleccionar una opción\").default(false),\r\n fueAbanderaro: Yup.boolean()\r\n .required(\"Debe seleccionar una opción\").default(false),\r\n tieneVinculacion: Yup.boolean()\r\n .required(\"Debe seleccionar una opción\").default(false),\r\n });\r\n //ESQUEPA PARA LA OPCION DE SI TIENE HERMANOS EN EL ESTABLECIMIENTO\r\n const hermanoSchema = Yup.object().shape({\r\n hermanoSexo: Yup.string()\r\n .required(\"Debe seleccionar el sexo\"),\r\n hermanoNombre: Yup.string()\r\n .min(2, \"El nombre debe tener 2 caracteres mínimo\")\r\n //.matches(/^[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+(\\s*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']*)*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+$/g, \"El nombre debe estar compuesto solo por letras\")\r\n .required(\"Debe ingresar al menos un nombre\"),\r\n hermanoApellido: Yup.string()\r\n .min(2, \"El apellido debe tener 2 caracteres mínimo\")\r\n //.matches(/^[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+(\\s*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']*)*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+$/g, \"El apellido debe estar compuesto solo por letras\")\r\n .required(\"Debe ingresar al menos un apellido\"),\r\n hermanoNumeroDocumento: Yup.string()\r\n .matches(/^\\d+$/, \"Solo debe ingresar números\")\r\n .required(\"Debe seleccionar una opción\"),\r\n hermanoGrado: Yup.string()\r\n .required(\"Debe seleccionar una opción\"),\r\n });\r\n //ESQUEMA PARA LA OPCION SI TIENE FAMILIAR EN EL ESTABLECIMIENTO\r\n const familiarSchema = Yup.object().shape({\r\n familiarSexo: Yup.string()\r\n .required(\"Debe seleccionar el sexo\"),\r\n familiarNombre: Yup.string()\r\n .min(2, \"El nombre debe tener 2 caracteres mínimo\")\r\n //.matches(/^[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+(\\s*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']*)*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+$/g, \"El nombre debe estar compuesto solo por letras\")\r\n .required(\"Debe ingresar al menos un nombre\"),\r\n familiarApellido: Yup.string()\r\n .min(2, \"El apellido debe tener 2 caracteres mínimo\")\r\n //.matches(/^[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+(\\s*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']*)*[a-zA-ZÀ-ÿ\\u00f1\\u00d1']+$/g, \"El apellido debe estar compuesto solo por letras\")\r\n .required(\"Debe ingresar al menos un apellido\"),\r\n familiarNumeroDocumento: Yup.string()\r\n .matches(/^\\d+$/, \"Solo debe ingresar números\")\r\n .required(\"Debe seleccionar una opción\"),\r\n familiarVinculo: Yup.string()\r\n //.matches(/^[A-Za-z\\s]+$/, \"El vinculo debe estar compuesto solo por letras\")\r\n .required(\"Debe seleccionar una opción\"),\r\n });\r\n //ESQUEMA PARA LA OPCION DE VINCULAR OTRA INSCRIPCION\r\n const vincularSchema = Yup.object().shape({\r\n vinculacionNumero: Yup.string()\r\n .matches(/^\\w+$/, \"Solo debe ingresar números y letras\")\r\n .min(6, \"Debe ingresar 6 carácteres o mas\")\r\n .max(9, \"Solo se permiten 9 carácteres\")\r\n .required(\"Debe ingresar el número de inscripción\"),\r\n });\r\n //ESQUEMA CON TODAS LAS OPCIONES\r\n const modalFullSchema = modalSchema.clone().concat(hermanoSchema).concat(familiarSchema).concat(vincularSchema);\r\n //VALORES INICIALES PARA LOS ESQUEMAS\r\n const valoresIniciales = {\r\n tieneHermano: false,\r\n hermanoSexo: \"\",\r\n hermanoNumeroDocumento: \"\",\r\n hermanoApellido: \"\",\r\n hermanoNombre: \"\",\r\n hermanoGrado: \"\",\r\n tieneFamiliar: false,\r\n familiarSexo: \"\",\r\n familiarNumeroDocumento: \"\",\r\n familiarApellido: \"\",\r\n familiarNombre: \"\",\r\n familiarVinculo: \"\",\r\n turno: \"\",\r\n tieneVinculacion: false,\r\n vinculacionNumero: \"\"\r\n };\r\n\r\n const getNivelEnsenanzaId = (nivelDescripcion) => {\r\n switch (nivelDescripcion) {\r\n case 'Inicial':\r\n return 1;\r\n case 'Primario':\r\n return 2;\r\n case 'Secundario':\r\n return 3;\r\n default:\r\n return null;\r\n }\r\n }\r\n\r\n const getCursoId = (cursoDescripcion) => {\r\n switch (cursoDescripcion) {\r\n case 'Sala de 4':\r\n return 1;\r\n case 'Sala de 5':\r\n return 2;\r\n case '1º':\r\n return 5;\r\n default:\r\n return null;\r\n }\r\n }\r\n\r\n const dispatch = useDispatch();\r\n\r\n const [seleccionadosPaso2Ext, setSeleccionadosPaso2Ext] = useState([]);\r\n\r\n useEffect(() => {\r\n if (nivel) {\r\n dispatch(actionsEstablecimiento.fetchEstablecimientos({\r\n departamentoId: !departamento ? null : departamento.departamentoId,\r\n localidadId: !localidad ? null : localidad.localidadId,\r\n nivelEnsenanzaId: getNivelEnsenanzaId(nivel),\r\n cursoId: getCursoId(grado),\r\n turnoId: null,\r\n esSeleccionable: true\r\n }));\r\n }\r\n }, [nivel, localidad, departamento, grado, dispatch]);\r\n\r\n useEffect(() => {\r\n if (seleccionados.length === 0 && primeraCarga \r\n && !!seleccionadosPaso2 && seleccionadosPaso2.length > 0 \r\n && !!establecimientosList && !!establecimientosList.length > 0) {\r\n let seleccionadosPaso2Aux = JSON.parse(JSON.stringify(seleccionadosPaso2));;\r\n setSeleccionadosPaso2Ext(seleccionadosPaso2Aux.map(oferta => {\r\n if (!oferta.establecimiento || oferta.establecimiento.length === 0) {\r\n let ofertaTemp = JSON.parse(JSON.stringify(oferta));\r\n let aux = _.head(_.filter(establecimientosList, function (establecimiento) {\r\n if (establecimiento.ofertaId === oferta.ofertaId) {\r\n return establecimiento;\r\n }\r\n }));\r\n ofertaTemp.establecimiento = aux.establecimiento;\r\n ofertaTemp.direccion = aux.direccion;\r\n ofertaTemp.cueAnexo = aux.cueAnexo;\r\n ofertaTemp.localidad = aux.localidad;\r\n ofertaTemp.departamento = aux.departamento;\r\n ofertaTemp.vacante = aux.vacante;\r\n \r\n return ofertaTemp;\r\n };\r\n }));\r\n }\r\n }, [seleccionadosPaso2, establecimientosList, seleccionados, primeraCarga]);\r\n\r\n useEffect(() => {\r\n if (!actionsLoadingPaso3 && !errorPaso3 && tocoSearch) {\r\n setTimeout(() => {\r\n dispatchDatosPeronales({ type: 'guardarEstablecimientos', payload: { establecimientos: seleccionados } });\r\n dispatch(actionsDepartamento.fetchDepartamentos({soloConOfertas: false}));\r\n dispatch(actionsLocalidad.fetchLocalidades({soloConOfertas: false}));\r\n nextStep();\r\n }, 500);\r\n };\r\n }, [actionsLoadingPaso3, errorPaso3]);\r\n\r\n let establecimientosFiltrados = establecimientosList && _.differenceWith(establecimientosList, seleccionados, (arrVal, othVal) => arrVal.ofertaId === othVal.ofertaId);\r\n let cantidadMaxima = establecimientosFiltrados && ((establecimientosFiltrados.length > 2 ? 3 : establecimientosFiltrados.length) || 1);\r\n\r\n return (\r\n \r\n {value =>\r\n <>\r\n {seleccionados.length === 0 && primeraCarga && setSeleccionados(seleccionadosPaso2Ext)}\r\n {seleccionados && seleccionados.length > 0 && setUltimoEstablecimiento(seleccionados.length)}\r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n IMPORTANTE\r\n

    Usted podrá optar hasta 5 (cinco) opciones correspondientes a instituciones educativas de su preferencia. Puede ordernarlas por prioridad

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

    SELECCIÓN DE ESTABLECIMIENTO

    \r\n
    \r\n

    Seleccionar Institución Educativa

    \r\n

    (*)Campos Obligatorios

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

    Solo encontrará establecimientos con vacantes disponibles

    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n {!listLoadingEstablecimientos ?\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n ofertaId}\r\n getOptionLabel={({ \r\n cueAnexo, \r\n establecimiento, \r\n direccion, \r\n departamento, \r\n localidad, \r\n turno, \r\n curso }) => `${establecimiento} - Turno: ${turno} ${!!curso && curso.toUpperCase() === 'PLURISALA' ? ' - PLURISALA' : ''}`}\r\n onChange={seleccionarEstablecimiendo}\r\n onBlur={() => setTocoSearch(true)}\r\n isDisabled={preguntas || !(departamento && localidad)}\r\n isSearchable\r\n noOptionsMessage={() => \"No hay mas establecimientos\"}\r\n />\r\n
    \r\n {tocoSearch && seleccionados.length < cantidadMaxima &&\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n }\r\n
    \r\n :\r\n
    Aguarde unos segundos, los establecimientos están siendo buscados...
    \r\n }\r\n\r\n {preguntas ?\r\n {\r\n setTimeout(() => {\r\n let nuevaLista = {};\r\n let familiar = {};\r\n let hermano = {}\r\n let vinculoFamiliar = {}\r\n //LOS 3 SIGUIENTES IF LIMPIAN LOS VALORES DEL FORMULARIO SI LA BANDERA CORRESPONDIENTE ES IGUAL A FALSE\r\n\r\n if (!values.tieneFamiliar) {\r\n familiar = null;\r\n values.familiarSexo = \"\";\r\n values.familiarNumeroDocumento = \"\";\r\n values.familiarApellido = \"\";\r\n values.familiarNombre = \"\";\r\n values.familiarVinculo = \"\";\r\n values.familiarVinculoId = 0;\r\n } else {\r\n familiar.id = null;\r\n familiar.sexo = values.familiarSexo;\r\n familiar.nroDocumento = values.familiarNumeroDocumento;\r\n familiar.apellido = values.familiarApellido;\r\n familiar.nombre = values.familiarNombre;\r\n const { vinculoId } = value.vinculos.find(item => item.nombre === values.familiarVinculo);\r\n values.familiarVinculoId = vinculoId;\r\n vinculoFamiliar.id = values.familiarVinculoId ? values.familiarVinculoId : null;\r\n vinculoFamiliar.descripcion = values.familiarVinculo\r\n };\r\n if (!values.tieneHermano) {\r\n hermano = null;\r\n values.hermanoSexo = \"\";\r\n values.hermanoNumeroDocumento = \"\";\r\n values.hermanoApellido = \"\";\r\n values.hermanoNombre = \"\";\r\n values.hermanoGrado = \"\";\r\n } else {\r\n hermano.id = null;\r\n hermano.sexo = values.hermanoSexo;\r\n hermano.nroDocumento = values.hermanoNumeroDocumento;\r\n hermano.apellido = values.hermanoApellido;\r\n hermano.nombre = values.hermanoNombre;\r\n };\r\n if (!values.tieneVinculacion) {\r\n values.vinculacionNumero = \"\";\r\n };\r\n //GUARDAR LOS VALORES DEL FORMULARIO EN LA POSICION DEL ULTIMO ESTABLECIMIENTO SELECCIONADO\r\n const i = ultimoEstablecimiento - 1;\r\n\r\n nuevaLista = Object.assign(nuevaLista, { familiar }, { vinculoFamiliar }, { hermano });\r\n nuevaLista.id = null;\r\n nuevaLista.nivelCursoAnio = values.hermanoGrado;\r\n nuevaLista.inscripcionId = inscripcionId ? inscripcionId : null;\r\n nuevaLista.ofertaId = seleccionados[i].ofertaId;\r\n nuevaLista.ofertaSeleccionadaId = seleccionados[i].ofertaSeleccionadaId;\r\n nuevaLista.llamado = seleccionados[i].llamado;\r\n nuevaLista.turno = seleccionados[i].turno;\r\n nuevaLista.turnoId = seleccionados[i].turnoId;\r\n nuevaLista.direccion = seleccionados[i].direccion;\r\n nuevaLista.establecimiento = seleccionados[i].establecimiento;\r\n nuevaLista.vacantes = seleccionados[i].vacantes;\r\n nuevaLista.nivelEnsenanza = seleccionados[i].nivelEnsenanza;\r\n nuevaLista.nivelEnsenanzaId = seleccionados[i].nivelEnsenanzaId;\r\n nuevaLista.curso = seleccionados[i].curso;\r\n nuevaLista.cursoId = seleccionados[i].cursoId;\r\n nuevaLista.localidad = seleccionados[i].localidad;\r\n nuevaLista.localidadId = seleccionados[i].localidadId;\r\n nuevaLista.departamento = seleccionados[i].departamento;\r\n nuevaLista.departamentoId = seleccionados[i].departamentoId;\r\n nuevaLista.prioridad = i + 1;\r\n nuevaLista.codigoInscripcionVinculada = values.vinculacionNumero ? values.vinculacionNumero : \"\";\r\n nuevaLista.vinculoFamiliarId = values.vinculoFamiliarId ? values.vinculoFamiliarId : 0;\r\n\r\n let nuevaSelect = seleccionados;\r\n nuevaSelect.splice(i, 1);\r\n setSeleccionados([...nuevaSelect, nuevaLista]);\r\n //LIMPIAMOS LAS BANDERAS\r\n setPreguntas(false);\r\n setFamiliar(false);\r\n setHermano(false);\r\n setVincular(false);\r\n setSubmitting(false);\r\n }, 400);\r\n }}\r\n >\r\n {formik =>\r\n
    \r\n

    Datos Relevantes: {seleccionados[ultimoEstablecimiento - 1].nombre}

    \r\n
    \r\n {/*formik.values.turno.length === 0 && formik.setFieldValue(\"turno\", seleccionados[ultimoEstablecimiento - 1].turnos[0])*/}\r\n

    Este establecimiento tiene turno {seleccionados[ultimoEstablecimiento - 1].turnoDescripcion}

    \r\n
    \r\n
    \r\n \r\n {\r\n formik.setFieldValue(\"tieneHermano\", !formik.values.tieneHermano);\r\n setHermano(!hermano);\r\n }}\r\n row\r\n >\r\n } label=\"Si\" />\r\n } label=\"No\" />\r\n \r\n
    \r\n {hermano &&\r\n <>\r\n
    \r\n
    \r\n \r\n \r\n {formik.values.hermanoSexo.length === 0 && }\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 {/*!formik.errors.hermanoSexo && formik.touched.hermanoSexo &&\r\n !formik.errors.hermanoNumeroDocumento && formik.touched.hermanoNumeroDocumento &&\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 {formik.values.hermanoGrado.length === 0 && }\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 formik.setFieldValue(\"tieneFamiliar\", !formik.values.tieneFamiliar);\r\n setFamiliar(!familiar);\r\n }}\r\n row\r\n >\r\n } label=\"Si\" />\r\n } label=\"No\" />\r\n \r\n
    \r\n {familiar &&\r\n <>\r\n
    \r\n
    \r\n \r\n \r\n {formik.values.familiarSexo.length === 0 && }\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 {/*!formik.errors.familiarSexo && formik.touched.familiarSexo &&\r\n !formik.errors.familiarNumeroDocumento && formik.touched.familiarNumeroDocumento &&\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 {formik.values.familiarVinculo.length === 0 && }\r\n \r\n \r\n {/**/}\r\n \r\n
    \r\n
    \r\n \r\n }\r\n
    \r\n \r\n {\r\n formik.setFieldValue(\"tieneVinculacion\", !formik.values.tieneVinculacion);\r\n setVincular(!vincular);\r\n }}\r\n row\r\n >\r\n } label=\"Si\" />\r\n } label=\"No\" />\r\n \r\n
    \r\n {vincular &&\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 {seleccionados && seleccionados.map((item, i) =>\r\n \r\n )}\r\n
    \r\n \r\n \r\n
    \r\n \r\n }\r\n {errorPaso3 && }\r\n \r\n }\r\n
    \r\n )\r\n}\r\n\r\nexport default SeleccionEstablecimiento;","import { INSCRIPCION_PASO_TRES_AL_DOS_URL, INSCRIPCION_PASO_TRES_AL_CUATRO_URL } from '../config';\r\nimport axios from 'axios';\r\n\r\nexport function postPasoTresAlDos(params) {\r\n const result = axios.post(INSCRIPCION_PASO_TRES_AL_DOS_URL, params);\r\n return result;\r\n};\r\n\r\nexport function postPasoTresAlCuatro(params) {\r\n const result = axios.post(INSCRIPCION_PASO_TRES_AL_CUATRO_URL, params);\r\n return result;\r\n}","import * as requestFromServer from './pasoCuatroCrud';\r\n\r\nimport { pasoCuatroSlice, callTypes } from './pasoCuatroSlice';\r\n\r\nconst { actions } = pasoCuatroSlice;\r\n\r\nexport const fetchPasoCuatroAlTres = queryParams => async dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return await requestFromServer\r\n .postPasoCuatroAlTres(queryParams)\r\n .then(response => {\r\n const pasoCuatroAlTresInformacion = response.data;\r\n //console.log(pasoCuatroAlTresInformacion);\r\n dispatch(actions.pasoCuatroAlTresFetched({ pasoCuatroAlTresInformacion }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchErrorCuatroAlTres({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const fetchPasoCuatroAlCinco = queryParams => async dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return await requestFromServer\r\n .postPasoCuatroAlCinco(queryParams)\r\n .then(response => {\r\n const pasoCuatroAlCincoInformacion = response.data;\r\n //console.log(pasoCuatroAlCincoInformacion);\r\n dispatch(actions.pasoCuatroAlCincoFetched({ pasoCuatroAlCincoInformacion }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchErrorPasoCuatroAlCinco({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const stateLimpiar = queryParams => dispatch => {\r\n dispatch(actions.stateLimpiar());\r\n};","import React, { useState, useEffect, useContext } from 'react';\r\nimport { useDispatch, useSelector, shallowEqual } from \"react-redux\";\r\nimport * as actions from \"../_redux/pasoCuatro/pasoCuatroActions\";\r\nimport * as actionsEstablecimiento from \"../_redux/establecimiento/establecimientoActions\";\r\n\r\n//CONTEXO\r\nimport { PreInscripcionUIConsumer, PreInscripcionUIContext } from '../PreInscripcionUIContext';\r\n\r\n//SEARCH SELECT\r\nimport Select from 'react-select';\r\n\r\n//BOTONES\r\nimport Volver from '../components/Volver';\r\nimport Continuar from '../components/Continuar';\r\n\r\n//Formik\r\nimport { Formik, Form, ErrorMessage } from 'formik';\r\nimport * as Yup from 'yup';\r\n\r\n//ICONOS USADOS\r\nimport SearchIcon from '@material-ui/icons/Search';\r\n\r\n//MATERIAL UI CARD \r\nimport { Card, CardContent } from '@material-ui/core';\r\n\r\n//RADIO BUTTONS\r\nimport { Radio, RadioGroup, FormControlLabel } from '@material-ui/core';\r\n\r\n//ICONOS USADOS\r\nimport ErrorIcon from '@material-ui/icons/Error';\r\n\r\n//SELECCIONAR DPTO Y LOCALIDAD\r\nimport SelectorDepartamento from \"../../../../modules/Comun/Departamento/selector\";\r\nimport SelectorLocalidad from \"../../../../modules/Comun/Localidad/selector\";\r\n//import SeleccionEstablecimiento from '../establecimiento/SeleccionEstablecimiento';\r\nimport SnackBarCustom from '../../../Comun/SnackBars/SnackBarCustom';\r\n\r\nconst Extras = (props) => {\r\n const [resultFormik, setResultFormik] = useState(undefined);\r\n const {\r\n nivelSeleccionado,\r\n //establecimientoBandera,\r\n //establecimientoEstatal,\r\n dispatchDatosPeronales\r\n } = useContext(PreInscripcionUIContext);\r\n\r\n const { nivel } = nivelSeleccionado();\r\n\r\n const dispatch = useDispatch();\r\n\r\n const { establecimiento } = useSelector(\r\n (state) => ({ establecimiento: state.establecimiento }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n entitiesAbanderado: establecimientosAbanderadoList,\r\n entitiesEstatales: establecimientosEstatalesList,\r\n listLoading: listLoadingEstablecimientos,\r\n //error:errorListadoEstablecimientos\r\n } = establecimiento;\r\n\r\n const { pasoTres } = useSelector(\r\n (state) => ({ pasoTres: state.pasoTres }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n extrasInformacion,\r\n //listLoading: listLoadingExtras\r\n //error:errorListadoEstablecimientos\r\n } = pasoTres;\r\n\r\n const { pasoCuatro } = useSelector(\r\n (state) => ({ pasoCuatro: state.pasoCuatro }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n actionsLoading: actionsLoadingPaso4,\r\n error: errorPaso4\r\n } = pasoCuatro;\r\n\r\n const { nextStep } = props;\r\n\r\n \r\n\r\n //DATOS ESTATAL\r\n const [estatal, setEstatal] = useState(false);\r\n //const [defaultEstatal, setDefaultEstatal] = useState();\r\n const [cargoDefaultEstatal, setCargoDefaultEstatal] = useState(0);\r\n const [seleccionadoEstablecimiento, setSeleccionadoEstablecimiento] = useState();\r\n const [estatalDepartamento, setEstatalDepartamento] = useState(undefined);\r\n const [estatalLocalidad, setEstatalLocalidad] = useState(undefined);\r\n const [estatalLocalidades, setEstatalLocalidades] = useState([])//aca van las localidades filtradas por dpto\r\n\r\n //DATOS BANDERA\r\n const [bandera, setBandera] = useState(false);\r\n //const [defaultBandera, setDefaultBandera] = useState();\r\n const [cargoDefaultBandera, setCargoDefaultBandera] = useState(0);\r\n const [seleccionadoBandera, setSeleccionadoBandera] = useState();\r\n const [banderaDepartamento, setBanderaDepartamento] = useState(undefined);\r\n const [banderaLocalidad, setBanderaLocalidad] = useState(undefined);\r\n const [banderaLocalidades, setBanderaLocalidades] = useState([])//aca van las localidades filtradas por dpto\r\n\r\n const scrollTop = () => {\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n };\r\n const extraSchema = Yup.object().shape({\r\n fueEstatal: Yup.boolean()\r\n .required(\"Debe seleccionar una opción\"),\r\n fueAbanderaro: Yup.boolean()\r\n .required(\"Debe seleccionar una opción\"),\r\n });\r\n const banderaSchema = Yup.object().shape({\r\n establecimientoBandera: Yup.string()\r\n .required(\"Debe ingresar el establecimiento\"),\r\n });\r\n const estatalSchema = Yup.object().shape({\r\n establecimientoEstatal: Yup.string()\r\n .required(\"Debe ingresar el establecimiento\"),\r\n });\r\n\r\n //const fullSchema = extraSchema.clone().concat(estatalSchema).concat(banderaSchema);\r\n\r\n useEffect(() => {\r\n if (banderaDepartamento && banderaLocalidad) {\r\n dispatch(actionsEstablecimiento.fetchEstablecimientosAbanderado({\r\n departamentoId: banderaDepartamento.id,\r\n localidadId: banderaLocalidad.id,\r\n nivelEnsenanza: 'Primario'\r\n }));\r\n }\r\n }, [banderaDepartamento, banderaLocalidad, dispatch]);\r\n\r\n useEffect(() => {\r\n if (estatalDepartamento && estatalLocalidad) {\r\n dispatch(actionsEstablecimiento.fetchEstablecimientosEstatales({\r\n departamentoId: estatalDepartamento.departamentoId,\r\n localidadId: estatalLocalidad.localidadId,\r\n palabraABuscar: nivel\r\n //esPrivada: false\r\n }));\r\n }\r\n }, [estatalDepartamento, estatalLocalidad, dispatch]);\r\n\r\n function iniciarEstablecimientoEstatal(item) {\r\n setSeleccionadoEstablecimiento({\r\n id: item.establecimientoAnteriorId,\r\n nombre: item.establecimientoAnteriorNombre,\r\n });\r\n setCargoDefaultEstatal(cargoDefaultEstatal + 0);\r\n setEstatal(true);\r\n };\r\n\r\n function iniciarEstablecimientoBandera(item) {\r\n setSeleccionadoBandera({\r\n id: item.establecimientoAbanderadoId,\r\n nombre: item.establecimientoAbanderadoNombre\r\n });\r\n setCargoDefaultBandera(cargoDefaultBandera + 1);\r\n setBandera(true);\r\n };\r\n\r\n useEffect(() => {\r\n if (!actionsLoadingPaso4 && !errorPaso4 && resultFormik) {\r\n scrollTop();\r\n setTimeout(() => {\r\n dispatchDatosPeronales({ type: 'guardarExtras', payload: resultFormik });\r\n setResultFormik(undefined);\r\n nextStep();\r\n }, 400);\r\n };\r\n }, [actionsLoadingPaso4, errorPaso4, resultFormik]);\r\n\r\n return (\r\n \r\n {value =>\r\n <>\r\n {extrasInformacion && extrasInformacion.establecimientoAnteriorId && cargoDefaultEstatal === 0 && iniciarEstablecimientoEstatal(extrasInformacion)}\r\n {extrasInformacion && extrasInformacion.establecimientoAbanderadoId && cargoDefaultBandera === 0 && iniciarEstablecimientoBandera(extrasInformacion)}\r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n IMPORTANTE\r\n

    Estas preguntas te permitirán agregar información valiosa para la asignación de vacante, por favor léelas con atención.

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

    EXTRAS

    \r\n
    \r\n

    Datos Relevantes

    \r\n

    (*)Campos Obligatorios

    \r\n
    \r\n\r\n {\r\n let aux = null\r\n if (estatal && bandera) {\r\n aux = seleccionadoEstablecimiento.establecimientoId;\r\n } else if (!estatal && bandera) {\r\n aux = seleccionadoBandera.establecimientoId;\r\n };\r\n dispatch(actions.fetchPasoCuatroAlCinco({\r\n inscripcionId: value.valoresExtrasAspirante().inscripcionId,\r\n establecimientoAnteriorId: estatal ? seleccionadoEstablecimiento.establecimientoId : null,\r\n establecimientoAbanderadoId: aux,\r\n }));\r\n\r\n if (!estatal) {\r\n values.establecimientoEstatal = \"\";\r\n setSeleccionadoEstablecimiento();\r\n };\r\n if (!bandera) {\r\n values.establecimientoBandera = \"\";\r\n setSeleccionadoBandera();\r\n };\r\n\r\n setResultFormik(values);\r\n }}\r\n >\r\n {formik =>\r\n
    \r\n
    \r\n \r\n {\r\n formik.setFieldValue(\"fueEstatal\", !formik.values.fueEstatal);\r\n formik.setFieldValue(\"establecimientoEstatal\", \"\");\r\n setEstatal(!estatal);\r\n if (!estatal) {\r\n setSeleccionadoEstablecimiento();\r\n setEstatalDepartamento(undefined);\r\n setEstatalLocalidad(undefined);\r\n setEstatalLocalidades([]);\r\n };\r\n }}\r\n row\r\n >\r\n }\r\n label=\"Si\"\r\n />\r\n }\r\n label=\"No\"\r\n />\r\n \r\n
    \r\n {formik.values.fueEstatal &&\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 establecimientoId}\r\n getOptionLabel={({ establecimiento }) => `${establecimiento}`}\r\n isSearchable\r\n noOptionsMessage={() => \"No hay mas establecimientos\"}\r\n isLoading={listLoadingEstablecimientos}\r\n isDisabled={!(estatalDepartamento && estatalLocalidad)}\r\n onChange={(item) => {\r\n //console.log(item);\r\n if (item) {\r\n setSeleccionadoEstablecimiento(item);\r\n formik.setFieldValue(\"establecimientoEstatal\", item.establecimiento);\r\n };\r\n if (!item) {\r\n setSeleccionadoEstablecimiento();\r\n formik.setFieldValue(\"establecimientoEstatal\", \"\");\r\n };\r\n }}\r\n />\r\n
    \r\n
    \r\n
    \r\n \r\n }\r\n {nivel === 'Secundario' && (\r\n
    \r\n \r\n {\r\n formik.setFieldValue(\"fueAbanderaro\", !formik.values.fueAbanderaro);\r\n formik.setFieldValue(\"establecimientoBandera\", \"\");\r\n setBandera(!bandera);\r\n if (!bandera) {\r\n setSeleccionadoBandera();\r\n setBanderaDepartamento(undefined);\r\n setBanderaLocalidad(undefined);\r\n setBanderaLocalidades([]);\r\n };\r\n }}\r\n row\r\n >\r\n }\r\n label=\"Si\"\r\n />\r\n }\r\n label=\"No\"\r\n />\r\n \r\n
    \r\n )}\r\n {(nivel === 'Secundario' && !formik.values.fueEstatal) /* AGREGO PARA QUE SOLO PIDA ESTABLECIMIENTO SI NO LO SELECCIONO EN LA PREGUNTA ANTERIOR */\r\n && formik.values.fueAbanderaro &&\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 establecimientoId}\r\n getOptionLabel={({ establecimiento }) => `${establecimiento}`}\r\n isSearchable\r\n noOptionsMessage={() => \"No hay mas establecimientos\"}\r\n isLoading={listLoadingEstablecimientos}\r\n isDisabled={!(banderaDepartamento && banderaLocalidad)}\r\n onChange={(item) => {\r\n //console.log(item);\r\n if (item) {\r\n setSeleccionadoBandera(item);\r\n formik.setFieldValue(\"establecimientoBandera\", item.establecimiento);\r\n };\r\n if (!item) {\r\n setSeleccionadoBandera();\r\n formik.setFieldValue(\"establecimientoBandera\", \"\");\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 {errorPaso4 && }\r\n \r\n }\r\n
    \r\n )\r\n}\r\n\r\nexport default Extras;","import {\r\n INSCRIPCION_PASO_CUATRO_AL_TRES_URL,\r\n INSCRIPCION_PASO_CUATRO_AL_CINCO_URL\r\n} from '../config';\r\nimport axios from 'axios';\r\n\r\nexport function postPasoCuatroAlTres(params) {\r\n const result = axios.post(INSCRIPCION_PASO_CUATRO_AL_TRES_URL, params);\r\n return result;\r\n};\r\n\r\n\r\nexport function postPasoCuatroAlCinco(params) {\r\n const result = axios.post(INSCRIPCION_PASO_CUATRO_AL_CINCO_URL, params);\r\n return result;\r\n};","import * as requestFromServer from './pasoCincoCrud';\r\n\r\nimport { pasoCincoSlice, callTypes } from './pasoCincoSlice';\r\n//import { fetchInscripciones } from '../inscripcion/inscripcionActions';\r\n\r\nconst { actions } = pasoCincoSlice;\r\n\r\nexport const fetchPasoCinco = queryParams => async dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return await requestFromServer\r\n .postPasoCinco(queryParams)\r\n .then(response => {\r\n const pasoCincoInformacion = response.data;\r\n //console.log(pasoCuatroAlTresInformacion);\r\n dispatch(actions.pasoCincoFetched({ pasoCincoInformacion }));\r\n //dispatch(fetchInscripciones());\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchErrorPasoCinco({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const stateLimpiar = queryParams => dispatch => {\r\n dispatch(actions.stateLimpiar());\r\n};","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector, shallowEqual } from \"react-redux\";\r\nimport * as actions from '../../preInscripcion/_redux/pasoCinco/pasoCincoActions';\r\n//import * as actionsInscripcion from '../../preInscripcion/_redux/inscripcion/inscripcionActions';\r\n\r\n//ISO PAISES/PROVINCIAS\r\nimport Countries from '../../../../../_metronic/countries/Countries';\r\n\r\n//BOTONES\r\nimport Volver from '../components/Volver';\r\nimport { Button, Spinner } from 'react-bootstrap';\r\n\r\n//CONTEXO\r\nimport { PreInscripcionUIConsumer } from '../PreInscripcionUIContext';\r\n\r\n//ICONOS\r\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\r\n//MATERIAL UI\r\nimport { ExpansionPanel, ExpansionPanelSummary, Card, CardContent } from '@material-ui/core';\r\n\r\nimport SnackBarCustom from '../../../Comun/SnackBars/SnackBarCustom';\r\n\r\nconst Resumen = (props) => {\r\n //const { confirmarInscripcion } = useContext(PreInscripcionUIContext);\r\n const { setHome, limpiarContenido } = props;\r\n\r\n const { pasoCinco } = useSelector(\r\n (state) => ({ pasoCinco: state.pasoCinco }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n actionsLoading,\r\n pasoCincoInformacion,\r\n error\r\n } = pasoCinco;\r\n\r\n useEffect(() => {\r\n if (!actionsLoading && !error && pasoCincoInformacion) {\r\n scrollTop();\r\n setTimeout(() => {\r\n limpiarContenido();\r\n setHome(true);\r\n }, 400);\r\n }\r\n }, [actionsLoading, pasoCincoInformacion, error])\r\n\r\n\r\n const paises = Countries();\r\n const scrollTop = () => {\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n };\r\n const dispatch = useDispatch();\r\n\r\n return (\r\n \r\n {value =>\r\n <>\r\n

    RESÚMEN

    \r\n Inscripción {value.valoresExtrasAspirante().inscripcionNumero}\r\n \r\n \r\n }\r\n aria-controls=\"panel1a-content\"\r\n id=\"panel1a-header\"\r\n >\r\n
    \r\n

    DATOS DEL ASPIRANTE

    \r\n
    \r\n {value.detalleAspirante().apellido}, {value.detalleAspirante().nombre}\r\n DNI {value.detalleAspirante().documentoNumero}\r\n
    \r\n
    \r\n \r\n \r\n
    Datos personales
    \r\n
    \r\n
    \r\n

    Fecha de nacimiento

    \r\n {value.detalleAspirante().fechaNacimiento.getDate()}/{value.detalleAspirante().fechaNacimiento.getMonth() + 1}/{value.detalleAspirante().fechaNacimiento.getFullYear()}\r\n
    \r\n
    \r\n

    Edad

    \r\n {value.detalleAspirante().edad}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    País

    \r\n {paises[parseInt(value.detalleAspirante().pais)].countryName}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Provincia

    \r\n {paises[parseInt(value.detalleAspirante().pais)].regions[parseInt(value.detalleAspirante().provincia)].name}\r\n
    \r\n
    \r\n

    Localidad

    \r\n {value.detalleAspirante().localidad}\r\n
    \r\n
    \r\n
    \r\n
    Domicilio
    \r\n
    \r\n
    \r\n
    \r\n

    Calle

    \r\n {value.detalleAspirante().domicilio.calle}\r\n
    \r\n
    \r\n

    Número

    \r\n {value.detalleAspirante().domicilio.numero}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Piso

    \r\n {value.detalleAspirante().domicilio.piso}\r\n
    \r\n
    \r\n

    Departamento

    \r\n {value.detalleAspirante().domicilio.departamento}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Localidad

    \r\n {value.detalleAspirante().domicilio.localidad}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {value.verResponsables().map((item, i) =>\r\n \r\n \r\n }\r\n aria-controls=\"panel1a-content\"\r\n id=\"panel1a-header\"\r\n >\r\n
    \r\n
    \r\n

    DATOS DEL RESPONSABLE

    \r\n {i === value.responsablePrincipalPosicion() &&\r\n PRINCIPAL\r\n }\r\n
    \r\n
    \r\n {item.apellido}, {item.nombre} ({item.vinculo})\r\n DNI {item.documentoNumero}\r\n
    \r\n
    \r\n \r\n \r\n
    Datos personales
    \r\n
    \r\n
    \r\n

    Fecha de nacimiento

    \r\n {item.fechaNacimiento.getDate()}/{item.fechaNacimiento.getMonth() + 1}/{item.fechaNacimiento.getFullYear()}\r\n
    \r\n
    \r\n

    Correo

    \r\n {item.email}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    País

    \r\n {paises[parseInt(item.pais)].countryName}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Provincia

    \r\n {paises[parseInt(item.pais)].regions[parseInt(item.provincia)].name}\r\n
    \r\n
    \r\n

    Localidad

    \r\n {item.localidad}\r\n
    \r\n
    \r\n
    \r\n
    Domicilio
    \r\n
    \r\n
    \r\n
    \r\n

    Calle

    \r\n {item.domicilio.calle}\r\n
    \r\n
    \r\n

    Número

    \r\n {item.domicilio.numero}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Piso

    \r\n {item.domicilio.piso}\r\n
    \r\n
    \r\n

    Departamento

    \r\n {item.domicilio.departamento}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Localidad

    \r\n {item.domicilio.localidad}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n )}\r\n \r\n \r\n }\r\n aria-controls=\"panel1a-content\"\r\n id=\"panel1a-header\"\r\n >\r\n
    \r\n

    ESTABLECIMIENTOS

    \r\n
    \r\n NIVEL: {value.nivelSeleccionado().nivel}\r\n GRADO/AÑO: {value.nivelSeleccionado().grado}\r\n
    \r\n
    \r\n \r\n \r\n
    Escuelas Seleccionadas
    \r\n {value.detalleEstablecimientos().map((item, i) =>\r\n
    \r\n
    \r\n
    \r\n
    {item.nombre}
    \r\n {/*

    {item.direcion} Email: {item.email}

    */}\r\n
    \r\n
    \r\n Datos Relevantes\r\n
    \r\n
    \r\n

    ¿Tiene hermana/o que curse en el establecimiento?

    \r\n {item.hermano ? \"SI\" : \"NO\"}\r\n
    \r\n
    \r\n {item.hermano &&\r\n <>\r\n
    \r\n
    \r\n

    Nombre del hermana/o

    \r\n {item.hermano.apellido}, {item.hermano.nombre}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Número de documento

    \r\n {item.hermano.nroDocumento}\r\n
    \r\n
    \r\n

    Grado/Año

    \r\n {item.nivelCursoAnio}\r\n
    \r\n
    \r\n \r\n }\r\n
    \r\n
    \r\n

    ¿Tiene familiar que trabaje en el establecimiento?

    \r\n {item.familiar ? \"SI\" : \"NO\"}\r\n
    \r\n
    \r\n {item.familiar &&\r\n <>\r\n
    \r\n
    \r\n

    Nombre del familiar

    \r\n {item.familiar.apellido}, {item.familiar.nombre}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Número de documento

    \r\n {item.familiar.nroDocumento}\r\n
    \r\n {item.vinculoFamiliar &&\r\n
    \r\n

    Vinculo

    \r\n {item.vinculoFamiliar.descripcion}\r\n
    \r\n }\r\n
    \r\n \r\n }\r\n
    \r\n
    \r\n

    ¿Realizó otra inscripción en este establecimiento?

    \r\n {item.codigoInscripcionVinculada ? \"SI\" : \"NO\"}\r\n
    \r\n
    \r\n {item.codigoInscripcionVinculada &&\r\n
    \r\n
    \r\n {/*

    Número de inscripción

    */}\r\n

    DNI del aspirante de la inscripción vinculada

    \r\n {item.codigoInscripcionVinculada}\r\n
    \r\n
    \r\n }\r\n
    \r\n )}\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n }\r\n aria-controls=\"panel1a-content\"\r\n id=\"panel1a-header\"\r\n >\r\n
    \r\n

    EXTRAS

    \r\n
    \r\n \r\n \r\n
    Escuelas Seleccionadas
    \r\n\r\n
    \r\n
    \r\n

    ¿El aspirante concurrió el año anterior a algún establecimiento de gestión estatal?

    \r\n {value.detalleExtras().fueEstatal ? \"SI: \" : \"NO\"}\r\n {value.detalleExtras().fueEstatal &&\r\n {value.detalleExtras().establecimientoEstatal}\r\n }\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    ¿El aspirante fue abanderado?

    \r\n {value.detalleExtras().fueAbanderaro ? \"SI: \" : \"NO\"}\r\n {value.detalleExtras().fueAbanderaro &&\r\n {value.detalleExtras().establecimientoBandera}\r\n }\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {actionsLoading ?\r\n \r\n :\r\n <>\r\n \r\n \r\n \r\n }\r\n
    \r\n {error && }\r\n \r\n }\r\n
    \r\n )\r\n}\r\n\r\nexport default Resumen;","import {\r\n INSCRIPCION_PASO_CINCO_URL\r\n} from '../config';\r\nimport axios from 'axios';\r\n\r\nexport function postPasoCinco(params) {\r\n const result = axios.post(INSCRIPCION_PASO_CINCO_URL, params);\r\n return result;\r\n};\r\n","import React from 'react';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport CheckIcon from '@material-ui/icons/Check';\r\n\r\nconst pasos = Array(5).fill(0);\r\n\r\nconst Nav = (props) => {\r\n const check = (i) =>\r\n <>\r\n \r\n \r\n \r\n {obtenerNombre(i)}\r\n \r\n const actual = (i) =>\r\n <>\r\n \r\n {i}\r\n \r\n {obtenerNombre(i)}\r\n \r\n const proximo = (i) =>\r\n <>\r\n \r\n {i}\r\n \r\n {obtenerNombre(i)}\r\n \r\n const obtenerBoton = (i) => {\r\n const pasoActual = props.currentStep;\r\n if (pasoActual === 1 && i === 1) {\r\n return actual(i)\r\n } else if (pasoActual > 1 && i === 1) {\r\n return check(i)\r\n } else if (pasoActual > 1 && pasoActual <= 7 && i === 2) {\r\n return actual(i)\r\n } else if (pasoActual > 7 && i === 2) {\r\n return check(i)\r\n } else if (pasoActual > 7 && pasoActual <= 9 && i === 3) {\r\n return actual(i)\r\n } else if (pasoActual > 9 && i === 3) {\r\n return check(i)\r\n } else if (pasoActual > 9 && pasoActual <= 10 && i === 4) {\r\n return actual(i)\r\n } else if (pasoActual > 10 && i === 4) {\r\n return check(i)\r\n } else if (pasoActual === 11 && i === 5) {\r\n return actual(i)\r\n } else {\r\n return proximo(i)\r\n };\r\n };\r\n const obtenerNombre = (i) => {\r\n if (i === 1) {\r\n return \"Aspirante\";\r\n } else if (i === 2) {\r\n return \"Responsable\";\r\n } else if (i === 3) {\r\n return \"Establecimiento\";\r\n } else if (i === 4) {\r\n return \"Extras\";\r\n } else if (i === 5) {\r\n return \"Resumen\"\r\n };\r\n };\r\n return (\r\n
    \r\n
    \r\n {pasos.map((paso, i) =>\r\n
    {obtenerBoton(i + 1)}
    \r\n )}\r\n
    \r\n
    \r\n )\r\n};\r\n\r\n\r\nexport default Nav;","import React from 'react';\r\nimport StepWizard from \"react-step-wizard\";\r\n//Componente que carga Aspirantes/Responsables\r\nimport Persona from \"./persona/Persona\";\r\nimport AgregarOtroResponsable from \"./persona/AgregarOtroResponsable\";\r\n\r\n//COMPONENTES PARA ESTABLECIMIENTOS\r\nimport Nivel from \"./establecimiento/Nivel\";\r\nimport SeleccionEstablecimiento from \"./establecimiento/SeleccionEstablecimiento\";\r\n\r\n//COMPONENTES PARA EXTRAS\r\nimport Extras from \"./extras/Extras\";\r\n\r\n//RESUMEN FINAL\r\nimport Resumen from \"./resumen/Resumen\";\r\n\r\n\r\n//COMPONENTES DEL WIZARD\r\nimport Nav from \"./wizard/Nav\";\r\n\r\nconst PreInscripcionPasos = (props) => {\r\n return (\r\n }>\r\n {/* 1 ASPIRANTE */}\r\n \r\n {/* 1 ASPIRANTE */}\r\n\r\n {/* 2 TUTOR/RESPONSABLE 1 */}\r\n \r\n \r\n {/* 2 TUTOR/RESPONSABLE 1 */}\r\n\r\n {/* TUTOR/RESPONSABLE 2 */}\r\n \r\n \r\n {/* TUTOR/RESPONSABLE 2 */}\r\n\r\n {/* TUTOR/RESPONSABLE 3 */}\r\n \r\n \r\n {/* TUTOR/RESPONSABLE 3 */}\r\n\r\n {/* ESTABLECIMIENTO */}\r\n \r\n \r\n {/* ESTABLECIMIENTO */}\r\n \r\n {/* EXTRAS */}\r\n \r\n {/* EXTRAS */}\r\n\r\n {/* RESUMEN */}\r\n \r\n {/* RESUMEN */}\r\n \r\n )\r\n}\r\n\r\nexport default PreInscripcionPasos;","import * as requestFromServer from './inscripcionCrud';\r\nimport { inscripcionSlice, callTypes } from './inscripcionSlice';\r\nimport { llamadoSlice, callTypes as callTypesLlamado } from './llamadoSlice';\r\n\r\nconst { actions } = inscripcionSlice;\r\nconst { actions: actionsLlamado } = llamadoSlice;\r\n\r\nexport const fetchInscripciones = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.list }));\r\n return requestFromServer\r\n .getInscripcionesByUser(queryParams)\r\n .then(response => {\r\n const inscripciones = response.data;\r\n dispatch(actions.inscripcionesFetched({ inscripciones }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.list }));\r\n });\r\n};\r\n\r\nexport const fetchDescartarInscripcion = inscripcionId => dispatch => {\r\n dispatch(actions.starCall({ callType: callTypes.action }));\r\n return requestFromServer\r\n .deleteInscripcion(inscripcionId)\r\n .then(response => {\r\n //const inscripciones = response.data;\r\n dispatch(actions.inscripcionDeleted({ inscripcionId }));\r\n dispatch(fetchInscripciones());\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.action }));\r\n });\r\n};\r\n\r\nexport const fetchLlamados = queryParams => dispatch => {\r\n dispatch(actionsLlamado.starCall({ callType: callTypesLlamado.list }));\r\n return requestFromServer\r\n .getLlamados(queryParams)\r\n .then(response => {\r\n const llamados = response.data;\r\n dispatch(actionsLlamado.llamadosFetched({ llamados }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actionsLlamado.catchError({ error, callType: callTypesLlamado.list }));\r\n });\r\n};","import { INSCRIPCIONES_URL, DELETE_INSCRIPCION_URL, LLAMADOS_URL } from '../config';\r\nimport axios from 'axios';\r\n\r\n\r\n// READ\r\nexport function getInscripcionesByUser() {\r\n return axios.get(INSCRIPCIONES_URL);\r\n}\r\n\r\nexport function deleteInscripcion(inscripcionId) {\r\n const url = `${DELETE_INSCRIPCION_URL}?inscripcionId=${inscripcionId}`\r\n return axios.delete(url);\r\n}\r\n\r\nexport function getLlamados() {\r\n return axios.get(LLAMADOS_URL);\r\n}","import React, { useState } from 'react';\r\nimport { Redirect } from 'react-router-dom'\r\nimport { Button, Spinner } from \"react-bootstrap\";\r\nimport { Card, CardContent, CardHeader, IconButton } from \"@material-ui/core\";\r\nimport { \r\n useDispatch, \r\n shallowEqual, \r\n useSelector \r\n} from \"react-redux\";\r\nimport * as actionsEstado from '../../../Public/Inscripciones/_redux/DetalleInscripcion/DetalleInscripcionActions';\r\nimport SnackBarCustom from '../../../Comun/SnackBars/SnackBarCustom';\r\n//MODAL PARA ELIMINAR COSAS\r\nimport ModalDelete from '../../../Comun/Modal/ModalDelete';\r\nimport * as _ from \"lodash\";\r\n\r\nimport { DESCARGAR_CONSTANCIA_URL } from \"../_redux/config\"\r\n\r\nimport moment from 'moment';\r\n\r\n//ICONOS\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport WarningIcon from '@material-ui/icons/Warning';\r\nimport ErrorIcon from '@material-ui/icons/Error';\r\nimport { OverlayTrigger, Tooltip } from 'react-bootstrap'\r\n//import { func } from 'prop-types';\r\n\r\n\r\n//FECHAS\r\nconst hoy = moment();\r\n//const continuar = moment(process.env.REACT_APP_FECHA_CONTINUAR);\r\n//const cierre = moment(process.env.REACT_APP_FECHA_CIERRE);\r\n\r\nconst CardInscripcion = (props) => {\r\n //PARAMETROS\r\n const { \r\n llamadosActivos, \r\n item,\r\n limpiarContenido, \r\n cargarAspiranteAsync, \r\n descartarInscripcion\r\n } = props;\r\n \r\n //DISPATCH\r\n const dispatch = useDispatch();\r\n\r\n //ESTADOS\r\n const [verModal, setVerModal] = useState(false);\r\n\r\n //ESTADO EN REDUX\r\n const { error: estadoError, detalleInscripcionInformacion: estadoInformacion, listLoading } = useSelector(\r\n state => state.detalleInscripcion,\r\n shallowEqual\r\n );\r\n\r\n const llamadosFilter = _.filter(llamadosActivos, function(o){\r\n return o.nivelEnsenanza === item.nivelEnsenanza;\r\n });\r\n\r\n const llamado = llamadosFilter && _.head(llamadosFilter);\r\n const hastaMoment = llamado ? moment(llamado.hasta) : moment();\r\n //Flag: Si la inscripcion aun no tiene nivel habilito edicion si existen llamados activos\r\n const sinNivelModif = !item.nivelEnsenanza && llamadosActivos && llamadosActivos.length > 0;\r\n\r\n return (\r\n \r\n {`${item.apellido}, ${item.nombre}`}}\r\n />\r\n \r\n
    \r\n

    Inscripción Número: {item.finalizada ? item.inscripcionNumero : 'NO FINALIZADA'}

    \r\n

    Nivel: {item.nivelEnsenanza ?? 'Nivel de Enseñanza no asignado'}

    \r\n

    DNI: {item.documentoNumero}

    \r\n {item.finalizada ?\r\n

    Estado: Completa

    \r\n :\r\n

    \r\n \r\n Pendiente \r\n \r\n \r\n \r\n {(!llamadosActivos || llamadosActivos.length == 0 ||\r\n (llamado && hoy.diff(hastaMoment, 'days') <= 0))\r\n &&\r\n \r\n No Finalizada \r\n \r\n \r\n }\r\n

    \r\n }\r\n
    \r\n {estadoError && }\r\n {estadoInformacion && }\r\n {item.finalizada ?\r\n listLoading ?\r\n \r\n :\r\n <>\r\n \r\n\r\n Descargar constancia de inscripción}>\r\n window.open(`${DESCARGAR_CONSTANCIA_URL}?codigo=${item.inscripcionNumero}`)} >\r\n {/* */}\r\n \r\n \r\n \r\n\r\n {/* \r\n \r\n */}\r\n \r\n :\r\n (sinNivelModif || (llamado && hoy.diff(hastaMoment, 'days') <= 0)) \r\n &&\r\n \r\n }\r\n {(sinNivelModif || (llamado && hoy.diff(hastaMoment, 'days') <= 0))\r\n && \r\n Eliminar esta inscripción}>\r\n setVerModal(true)}>\r\n \r\n \r\n \r\n }\r\n setVerModal(false)}\r\n title=\"Inscripción\"\r\n text={`¿Desea Eliminar la inscripción ${item.inscripcionNumero} permanentemente?`}\r\n deleteFunction={() => descartarInscripcion(item.inscripcionId)}\r\n />\r\n
    \r\n
    \r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default CardInscripcion;","import React, { useEffect, useState, useContext } from \"react\";\r\nimport { Card, CardHeader, CardHeaderToolbar, CardBody } from \"../../../../_metronic/_partials/controls\";\r\nimport { Button, Spinner } from \"react-bootstrap\";\r\nimport { PreInscripcionUIConsumer, PreInscripcionUIContext } from \"./PreInscripcionUIContext\";\r\n\r\nimport PreInscripcionPasos from './PreInscripcionPasos';\r\n\r\n//COMPONENTES REUTILIZABLES GLOBALES\r\nimport MesaAyuda from '../../Comun/Cards/MesaAyuda';\r\nimport SnackBarCustom from '../../Comun/SnackBars/SnackBarCustom';\r\n\r\nimport { useDispatch, shallowEqual, useSelector } from \"react-redux\";\r\nimport * as actionsInscripcion from \"./_redux/inscripcion/inscripcionActions\";\r\nimport * as actionsAspirante from \"./_redux/aspirante/aspiranteActions\";\r\n//import * as actionsEstablecimientos from \"./_redux/establecimiento/establecimientoActions\";\r\nimport * as actionsPasoUno from \"./_redux/pasoUno/pasoUnoActions\";\r\nimport * as actionsPasoDos from \"./_redux/pasoDos/pasoDosActions\";\r\nimport * as actionsPasoTres from \"./_redux/pasoTres/pasoTresActions\";\r\nimport * as actionsPasoCuatro from \"./_redux/pasoCuatro/pasoCuatroActions\";\r\nimport * as actionsPasoCinco from \"./_redux/pasoCinco/pasoCincoActions\";\r\nimport * as _ from \"lodash\";\r\n\r\nimport moment from 'moment';\r\n\r\nimport CardInscripcion from './components/CardInscripcion';\r\n\r\n\r\n//FECHA HOY\r\nconst hoy = moment();\r\nconst cierre = moment(process.env.REACT_APP_FECHA_CIERRE);\r\n\r\nexport const PreInscripcionCard = () => {\r\n const { dispatchDatosPeronales } = useContext(PreInscripcionUIContext);\r\n const [home, setHome] = useState(true);\r\n const [deshacerInscripcionId, sertDeshacerInscripcionId] = useState(0);\r\n\r\n const { inscripcion } = useSelector(\r\n (state) => ({ inscripcion: state.inscripcion }),\r\n shallowEqual\r\n );\r\n\r\n const { llamado } = useSelector(\r\n (state) => ({ llamado: state.llamado }),\r\n shallowEqual\r\n );\r\n\r\n const {\r\n entities: inscripciones,\r\n listLoading,\r\n actionsLoading,\r\n error\r\n } = inscripcion;\r\n\r\n const {\r\n entities: llamados,\r\n listLoading: listLoadingLlamados,\r\n errorLlamados\r\n } = llamado;\r\n\r\n useEffect(() => {\r\n if (deshacerInscripcionId > 0) {\r\n let inscripcionDeshecha = _.filter(inscripciones, ['id', deshacerInscripcionId]);\r\n\r\n if (!actionsLoading && !error && !inscripcionDeshecha) {\r\n sertDeshacerInscripcionId(0);\r\n } else {\r\n if (error) {\r\n sertDeshacerInscripcionId(0);\r\n };\r\n };\r\n };\r\n }, [actionsLoading, inscripciones, error, deshacerInscripcionId])\r\n\r\n const dispatch = useDispatch();\r\n\r\n function cargarAspiranteAsync(id) {\r\n dispatch(actionsAspirante.fetchAspiranteInformacionFromId(id));\r\n setTimeout(() => {\r\n setHome(false);\r\n }, 600);\r\n };\r\n\r\n function limpiarContenido() {\r\n dispatch(actionsAspirante.stateLimpiar());\r\n //dispatch(actionsEstablecimientos.stateLimpiar());\r\n dispatch(actionsPasoUno.stateLimpiar());\r\n dispatch(actionsPasoDos.stateLimpiar());\r\n dispatch(actionsPasoTres.stateLimpiar());\r\n dispatch(actionsPasoCuatro.stateLimpiar());\r\n dispatch(actionsPasoCinco.stateLimpiar());\r\n dispatchDatosPeronales({ type: 'reiniciarDatos' });\r\n };\r\n\r\n function descartarInscripcion(inscripcionId) {\r\n dispatch(actionsInscripcion.fetchDescartarInscripcion(inscripcionId));\r\n sertDeshacerInscripcionId(inscripcionId);\r\n };\r\n\r\n useEffect(() => {\r\n if (home) {\r\n dispatch(actionsInscripcion.fetchInscripciones());\r\n dispatch(actionsInscripcion.fetchLlamados());\r\n };\r\n }, [home,dispatch]);\r\n\r\n const llamadosActivos = llamados && _.filter(llamados, function(o) { \r\n return moment().isBetween(moment(o.desde), moment(o.hasta)); \r\n });\r\n\r\n return (\r\n <>\r\n \r\n \r\n {!home &&\r\n \r\n \r\n \r\n }\r\n \r\n \r\n {home ?\r\n <>\r\n {error && ()}\r\n {errorLlamados && ()}\r\n\r\n {listLoadingLlamados ?\r\n
    \r\n \r\n
    \r\n :\r\n (!!llamadosActivos && llamadosActivos.length > 0) ? \r\n <>\r\n

    Aquí podrá realizar la inscripción de su tutelado para el Ciclo Lectivo {llamadosActivos[0].cicloLectivo}

    \r\n

    Inscripciones online se encuentra habilitado para los siguientes niveles

    \r\n
      \r\n {llamadosActivos.map((nivel, index) => (\r\n
    • Nivel {nivel.nivelEnsenanza} hasta el {moment(nivel.hasta).format('DD-MM-YYYY')}
    • \r\n ))}\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n :\r\n <>\r\n

    Aún no se ha habilitado el proceso de incripciones online.

    \r\n \r\n }\r\n \r\n \r\n {(value) =>\r\n <>\r\n {listLoading ?\r\n !listLoadingLlamados && (\r\n
    \r\n \r\n
    \r\n )\r\n :\r\n value.cantidadInscripciones() > 0 && (\r\n <>\r\n

    Estas son tus inscripciones hasta el momento

    \r\n {_.orderBy(Object.keys(value.verInscripcionesPorLlamado()), function (o) { return parseInt(o) }, 'desc')\r\n .map((llamado, i) => {\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {llamado && llamado != 'null' ? `${llamado}º Llamado` : 'Inscripciones sin nivel asignado'}

    \r\n
    \r\n
    \r\n
    \r\n {value.verInscripcionesPorLlamado()[llamado].map((item, x) =>\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 {!listLoading && value.cantidadInscripciones() === 0 &&\r\n
    Usted no posee inscripciones registradas
    \r\n }\r\n \r\n }\r\n
    \r\n \r\n :\r\n <>\r\n {(!!llamadosActivos && llamadosActivos.length > 0) &&\r\n \r\n }\r\n \r\n }\r\n
    \r\n
    \r\n \r\n \r\n );\r\n};","import React from 'react';\r\nimport { InscripcionUIProvider } from './PreInscripcionUIContext';\r\nimport { PreInscripcionCard } from './PreInscripcionCard';\r\n\r\n\r\nconst InscripcionPage = () => {\r\n return (\r\n \r\n \r\n \r\n )\r\n};\r\n\r\n\r\nexport default InscripcionPage;","import React from 'react';\r\nimport { Card, CardHeader, CardHeaderToolbar, CardBody } from '../../../../_metronic/_partials/controls';\r\nimport Pasos from '../../Public/Inscripciones/Steps/Pasos';\r\nimport { Button } from \"react-bootstrap\";\r\nimport { Link,Redirect } from 'react-router-dom';\r\nimport * as actionsEstado from '../../Public/Inscripciones/_redux/DetalleInscripcion/DetalleInscripcionActions';\r\nimport { useDispatch, shallowEqual, useSelector } from \"react-redux\";\r\n\r\nconst EstadoInscripcion = (props) => {\r\n //const { inscripcionNumero } = props.match.params;\r\n\r\n const { detalleInscripcionInformacion } = useSelector(\r\n state => state.detalleInscripcion,\r\n shallowEqual\r\n );\r\n //DISPATCH\r\n const dispatch = useDispatch();\r\n //VACIA LOS DATOS ANTES DE SALIR DE ESTE COMPONENTES\r\n function reiniciarDatos() {\r\n dispatch(actionsEstado.stateLimpiar());\r\n };\r\n return (\r\n <>\r\n {!detalleInscripcionInformacion && }\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 EstadoInscripcion;","import React, {Suspense, lazy} from \"react\";\nimport {Redirect, Switch, Route} from \"react-router-dom\";\nimport {LayoutSplashScreen, ContentRoute} from \"../_metronic/layout\";\n//import {BuilderPage} from \"./pages/BuilderPage\";\n//import {MyPage} from \"./pages/MyPage\";\n//import {DashboardPage} from \"./pages/DashboardPage\";\nimport PreInscripcion from './modules/Inscripciones/preInscripcion/PreInscripcionPage';\nimport EstadoInscripcion from './modules/Inscripciones/estadoInscripcion/EstadoInscripcion';\n\nconst GoogleMaterialPage = lazy(() =>\n import(\"./modules/GoogleMaterialExamples/GoogleMaterialPage\")\n);\nconst ReactBootstrapPage = lazy(() =>\n import(\"./modules/ReactBootstrapExamples/ReactBootstrapPage\")\n);\n// const ECommercePage = lazy(() =>\n// import(\"./modules/ECommerce/pages/eCommercePage\")\n// );\n\nexport default function BasePage() {\n // useEffect(() => {\n // console.log('Base page');\n // }, []) // [] - is required if you need only one call\n // https://reactjs.org/docs/hooks-reference.html#useeffect\n\n return (\n }>\n \n {\n /* Redirect from root URL to /dashboard. */\n // \n \n }\n {/* \n \n \n \n \n */}\n \n \n \n \n \n \n \n );\n}\n","import React, {Suspense} from \"react\";\nimport { Redirect, Route, Switch } from \"react-router-dom\";\n\nimport { Callback } from \"../components/auth/callback\";\nimport { Logout } from \"../components/auth/logout\";\nimport { LogoutCallback } from \"../components/auth/logoutCallback\";\nimport { PrivateRoute } from \"./privateRoute\";\nimport { Register } from \"../components/auth/register\";\nimport { SilentRenew } from \"../components/auth/silentRenew\";\n//import { PublicPage } from \"../components/publicPage\";\n//import { PrivatePage } from \"../components/privatePage\";\nimport DetalleInscripcion from '../app/modules/Public/Inscripciones/DetalleInscripcion';\nimport Landing from '../app/modules/Public/home/Landing';\nimport { Routes as RoutesApp } from \"../app/Routes\";\nimport {Layout} from \"../_metronic/layout\";\nimport {LayoutSplashScreen} from \"../_metronic/layout\";\nimport PreInscripcion from '../app/modules/Inscripciones/preInscripcion/PreInscripcionPage';\nimport EstadoInscripcion from '../app/modules/Inscripciones/estadoInscripcion/EstadoInscripcion';\n\nconst isAuthenticated = () => {\n const oidcStorage = JSON.parse(sessionStorage.getItem(`oidc.user:${process.env.REACT_APP_AUTH_URL}:${process.env.REACT_APP_IDENTITY_CLIENT_ID}`))\n\n return (!!oidcStorage && !!oidcStorage.access_token)\n};\n\nexport const Routes = (\n \n \n \n \n \n \n\n {!isAuthenticated() ? (\n \n ) : (\n \n )}\n\n \n \n\n\n\n {!isAuthenticated() ? (\n \n ) : (\n // \n \n }>\n \n {\n /* Redirect from root URL to /dashboard. */\n \n }\n {/* \n \n \n */}\n \n \n \n \n \n \n )}\n\n \n\n \n \n);\n","import * as React from \"react\";\n\nimport { AuthConsumer } from \"../../providers/authProvider\";\n\nexport const Callback = () => (\n \n {({ signinRedirectCallback }) => {\n signinRedirectCallback();\n return Cargando..;\n }}\n \n);","/* /src/components/auth/logout.jsx */\n\nimport * as React from \"react\";\nimport { AuthConsumer } from \"../../providers/authProvider\";\n\nexport const Logout = () => (\n \n {({ logout }) => {\n logout();\n return Cargando..;\n }}\n \n);","/* /src/components/auth/logoutCallback.jsx */\n\nimport React from \"react\";\nimport { AuthConsumer } from \"../../providers/authProvider\";\n\nexport const LogoutCallback = () => (\n \n {({ signoutRedirectCallback }) => {\n signoutRedirectCallback();\n return Cargando..;\n }}\n \n);","import React from 'react';\n\nexport const Register = () => {\n return (\n
    \n register\n
    \n );\n};\n","/* /src/components/auth/silentRenew.jsx */\n\nimport React from \"react\";\n\nimport { AuthConsumer } from \"../../providers/authProvider\";\n\nexport const SilentRenew = () => (\n \n {({ signinSilentCallback }) => {\n signinSilentCallback();\n return Cargando..;\n }}\n \n);","/**\n * High level router.\n *\n * Note: It's recommended to compose related routes in internal router\n * components (e.g: `src/app/modules/Auth/pages/AuthPage`, `src/app/BasePage`).\n */\n\nimport React from \"react\";\n// import { Redirect, Switch, Route } from \"react-router-dom\";\n// import { shallowEqual, useSelector } from \"react-redux\";\nimport {Layout} from \"../_metronic/layout\";\nimport BasePage from \"./BasePage\";\n// import { Logout, AuthPage } from \"./modules/Auth\";\n// import ErrorsPage from \"./modules/ErrorsExamples/ErrorsPage\";\n\nexport function Routes() {\n // const {isAuthorized} = useSelector(\n // ({auth}) => ({\n // isAuthorized: auth.user != null,\n // }),\n // shallowEqual\n // );\n\n return (\n \n \n \n );\n}\n\n//Esto estaba antes de la implementacion de IdentityServer OIDC\n// \n// {!isAuthorized ? (\n// /*Render auth page when user at `/auth` and not authorized.*/\n// \n// \n// \n// ) : (\n// /*Otherwise redirect to root page (`/`)*/\n// \n// )}\n// \n// \n// {!isAuthorized ? (\n// /*Redirect to `/auth` when user is not authorized*/\n// \n// ) : (\n// \n// \n// \n// )}\n// ","//import { API_VERSION_URL } from '../config';\r\n//import axios from 'axios';\r\n\r\n\r\nexport const getApiVersion=async()=>{\r\n /*const result=await axios.get(CHECK_VERSION_API_URL);\r\n return result.data;*/\r\n return {ApiVersion:1}\r\n}","import * as requestFromServer from './apiVersionCrud';\r\n\r\nimport { apiVersionSlice, callTypes } from './apiVersionSlice';\r\n\r\nconst { actions } = apiVersionSlice;\r\n\r\nexport const fetchApiVersion = queryParams => dispatch => {\r\n dispatch(actions.starCall({ callTypes: callTypes.list }));\r\n return requestFromServer.getApiVersion()\r\n .then(response => {\r\n const apiVersionState = response.ApiVersion;\r\n dispatch(actions.apiVersionFetched({ apiVersionState }));\r\n })\r\n .catch(error => {\r\n error.clientMessage = error.response && (error.response.data.mensaje || error.response.data);\r\n dispatch(actions.catchError({ error, callType: callTypes.list }));\r\n });\r\n};\r\n\r\nexport const stateLimpiar = queryParams => dispatch => {\r\n dispatch(actions.reiniciarDatos());\r\n};","import React, { useEffect, useState } from 'react';\nimport SnackBarCustom from '../../app/modules/Comun/SnackBars/SnackBarCustom';\nimport * as checkActions from './_redux/apiVersionActions';\nimport { useDispatch, shallowEqual, useSelector } from \"react-redux\";\n\nexport const VersionsCheck = () => {\n const dispatch = useDispatch();\n const [clienteDesactualizado, setClienteDesactualizado] = useState(false);\n const mensajeApiVersion = 'Estas usando una version anterior de la aplicación. Refrescar';\n const { apiVersion } = useSelector(\n (state) => ({ apiVersion: state.apiVersion }),\n shallowEqual\n );\n const {\n apiVersionState,\n listLoading,\n error\n } = apiVersion;\n\n useEffect(() => {\n //SE DISPARA DOS VECES\n //NO HAY POLQUE\n dispatch(checkActions.fetchApiVersion({}));\n const clientVersion = JSON.parse(localStorage.clientVersion || '{}');\n if (apiVersionState && !listLoading) {\n if (clientVersion !== apiVersionState) {\n localStorage.clientVersion = JSON.stringify(apiVersionState);\n setClienteDesactualizado(true);\n } else {\n setClienteDesactualizado(false);\n };\n };\n }, [apiVersionState, listLoading]);\n return (\n <>\n {clienteDesactualizado && window.location.reload()} />}\n {(error) && }\n \n );\n};\n","/**\n * Entry application component used to compose providers and render Routes.\n * */\n\nimport React from \"react\";\nimport { Provider } from \"react-redux\";\nimport { Router, BrowserRouter } from \"react-router-dom\";\nimport { PersistGate } from \"redux-persist/integration/react\";\n//import { Routes } from \"../app/Routes\";\nimport { I18nProvider } from \"../_metronic/i18n\";\nimport { LayoutSplashScreen, MaterialThemeProvider } from \"../_metronic/layout\";\nimport { Routes } from \"../routes/routes\";\nimport { AuthProvider } from \"../providers/authProvider\";\n\nimport { createBrowserHistory } from 'history';\nimport ReactGA from 'react-ga';\nimport { VersionsCheck } from \"../components/versionsCheck\";\n\nconst history = createBrowserHistory();\n// Initialize google analytics page view tracking\nhistory.listen(location => {\n ReactGA.set({ page: location.pathname }); // Update the user's current page\n ReactGA.pageview(location.pathname); // Record a pageview for the given page\n});\n\nexport default function App({ store, persistor, basename }) {\n return (\n \n {/* Provide Redux store */}\n \n {/* Asynchronously persist redux stores and show `SplashScreen` while it's loading. */}\n }>\n {/* Add high level `Suspense` in case if was not handled inside the React tree. */}\n }>\n {/* Override `basename` (e.g: `homepage` in `package.json`) */}\n \n {/*This library only returns the location that has been active before the recent location change in the current window lifetime.*/}\n \n {/* Provide `react-intl` context synchronized with Redux state. */}\n \n {/* Render routes with provided `Layout`. */}\n \n \n \n \n \n \n \n \n \n \n \n );\n}\n","/**\n * Create React App entry point. This and `public/index.html` files can not be\n * changed or moved.\n */\nimport \"react-app-polyfill/ie11\";\nimport \"react-app-polyfill/stable\";\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport axios from \"axios\";\nimport * as _redux from \"./redux\";\nimport store, { persistor } from \"./redux/store\";\nimport App from \"./app/App\";\nimport \"./index.scss\"; // Standard version\n// import \"./sass/style.react.rtl.css\"; // RTL version\nimport \"./_metronic/_assets/plugins/keenthemes-icons/font/ki.css\";\nimport \"socicon/css/socicon.css\";\nimport \"@fortawesome/fontawesome-free/css/all.min.css\";\nimport \"./_metronic/_assets/plugins/flaticon/flaticon.css\";\nimport \"./_metronic/_assets/plugins/flaticon2/flaticon.css\";\n// Datepicker\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport {\n MetronicLayoutProvider,\n MetronicSplashScreenProvider,\n MetronicSubheaderProvider\n} from \"./_metronic/layout\";\nimport { MetronicI18nProvider } from \"./_metronic/i18n\";\nimport { SnackbarProvider } from 'notistack';\n\n\n/**\n * Base URL of the website.\n *\n * @see https://facebook.github.io/create-react-app/docs/using-the-public-folder\n */\nconst { PUBLIC_URL } = process.env;\n\n/**\n * Creates `axios-mock-adapter` instance for provided `axios` instance, add\n * basic Metronic mocks and returns it.\n *\n * @see https://github.com/ctimmerm/axios-mock-adapter\n */\n/* const mock = */ //_redux.mockAxios(axios);\n\n/**\n * Inject metronic interceptors for axios.\n *\n * @see https://github.com/axios/axios#interceptors\n */\n_redux.setupAxios(axios, store);\n\nReactDOM.render(\n \n \n \n \n \n \n \n \n \n \n ,\n document.getElementById(\"root\")\n);\n","export default function setupAxios(axios, store) {\n axios.interceptors.request.use(\n config => {\n // const {\n // auth: { authToken }\n // } = store.getState();\n\n const auth = sessionStorage.getItem(`oidc.user:${process.env.REACT_APP_AUTH_URL}:${process.env.REACT_APP_IDENTITY_CLIENT_ID}`);\n let authParse;\n if(auth){\n authParse = JSON.parse(auth);\n }\n\n if (authParse && authParse.access_token) {\n const authToken = authParse.access_token;\n config.headers.Authorization = `Bearer ${authToken}`;\n\n }\n\n //config.headers.AccessControlAllowOrigin = '*';\n\n return config;\n },\n err => Promise.reject(err)\n );\n}\n","/* eslint-disable */\n\"use strict\";\n// DOCS: https://javascript.info/cookie\n\n// Component Definition\nexport var KTCookie = function() {\n return {\n // returns the cookie with the given name,\n // or undefined if not found\n getCookie: function(name) {\n var matches = document.cookie.match(new RegExp(\n \"(?:^|; )\" + name.replace(/([\\.$?*|{}\\(\\)\\[\\]\\\\\\/\\+^])/g, '\\\\$1') + \"=([^;]*)\"\n ));\n return matches ? decodeURIComponent(matches[1]) : undefined;\n },\n // Please note that a cookie value is encoded,\n // so getCookie uses a built-in decodeURIComponent function to decode it.\n setCookie: function(name, value, options) {\n if (!options) {\n options = {};\n }\n\n options = Object.assign({}, {path: '/'}, options);\n\n if (options.expires instanceof Date) {\n options.expires = options.expires.toUTCString();\n }\n\n var updatedCookie = encodeURIComponent(name) + \"=\" + encodeURIComponent(value);\n\n for (var optionKey in options) {\n if (!options.hasOwnProperty(optionKey)) {\n continue;\n }\n updatedCookie += \"; \" + optionKey;\n var optionValue = options[optionKey];\n if (optionValue !== true) {\n updatedCookie += \"=\" + optionValue;\n }\n }\n\n document.cookie = updatedCookie;\n },\n // To delete a cookie, we can call it with a negative expiration date:\n deleteCookie: function(name) {\n setCookie(name, \"\", {\n 'max-age': -1\n })\n }\n }\n}();\n\n// webpack support\nif (typeof module !== 'undefined' && typeof module.exports !== 'undefined') {\n // module.exports = KTCookie;\n}\n","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./util\";\n\n// Component Definition\nvar KTOffcanvas = function(elementId, options) {\n // Main object\n var the = this;\n var init = false;\n\n // Get element object\n var element = KTUtil.getById(elementId);\n var body = KTUtil.getBody();\n\n if (!element) {\n return;\n }\n\n // Default options\n var defaultOptions = {\n attrCustom: ''\n };\n\n ////////////////////////////\n // ** Private Methods ** //\n ////////////////////////////\n\n var Plugin = {\n construct: function(options) {\n if (KTUtil.data(element).has('offcanvas')) {\n the = KTUtil.data(element).get('offcanvas');\n } else {\n // Reset offcanvas\n Plugin.init(options);\n\n // Build offcanvas\n Plugin.build();\n\n KTUtil.data(element).set('offcanvas', the);\n }\n\n return the;\n },\n\n init: function(options) {\n the.events = [];\n\n // merge default and user defined options\n the.options = KTUtil.deepExtend({}, defaultOptions, options);\n\n the.classBase = the.options.baseClass;\n the.attrCustom = the.options.attrCustom;\n the.classShown = the.classBase + '-on';\n the.classOverlay = the.classBase + '-overlay';\n the.target;\n\n the.state = KTUtil.hasClass(element, the.classShown) ? 'shown' : 'hidden';\n },\n\n build: function() {\n // offcanvas toggle\n if (the.options.toggleBy) {\n if (typeof the.options.toggleBy === 'string') {\n KTUtil.addEvent(KTUtil.getById(the.options.toggleBy), 'click', function(e) {\n e.preventDefault();\n the.target = this;\n Plugin.toggle();\n });\n } else if (the.options.toggleBy && the.options.toggleBy[0]) {\n if (the.options.toggleBy[0].target) {\n for (var i in the.options.toggleBy) {\n KTUtil.addEvent(KTUtil.getById(the.options.toggleBy[i].target), 'click', function(e) {\n e.preventDefault();\n the.target = this;\n Plugin.toggle();\n });\n }\n } else {\n for (var i in the.options.toggleBy) {\n KTUtil.addEvent(KTUtil.getById(the.options.toggleBy[i]), 'click', function(e) {\n e.preventDefault();\n the.target = this;\n Plugin.toggle();\n });\n }\n }\n\n } else if (the.options.toggleBy && the.options.toggleBy.target) {\n KTUtil.addEvent( KTUtil.getById(the.options.toggleBy.target), 'click', function(e) {\n e.preventDefault();\n the.target = this;\n Plugin.toggle();\n });\n }\n }\n\n // offcanvas close\n var closeBy = KTUtil.getById(the.options.closeBy);\n if (closeBy) {\n KTUtil.addEvent(closeBy, 'click', function(e) {\n e.preventDefault();\n the.target = this;\n Plugin.hide();\n });\n }\n },\n\n isShown: function() {\n return (the.state == 'shown' ? true : false);\n },\n\n toggle: function() {;\n Plugin.eventTrigger('toggle');\n\n if (the.state == 'shown') {\n Plugin.hide();\n } else {\n Plugin.show();\n }\n },\n\n show: function() {\n if (the.state == 'shown') {\n return;\n }\n\n Plugin.eventTrigger('beforeShow');\n\n Plugin.toggleClass('show');\n\n // Offcanvas panel\n KTUtil.attr(body, 'data-offcanvas-' + the.classBase, 'on');\n KTUtil.addClass(element, the.classShown);\n\n if (the.attrCustom.length > 0) {\n KTUtil.attr(body, 'data-offcanvas-' + the.classCustom, 'on');\n //KTUtil.addClass(body, the.classCustom);\n }\n\n the.state = 'shown';\n\n if (the.options.overlay) {\n the.overlay = KTUtil.insertAfter(document.createElement('DIV') , element );\n KTUtil.addClass(the.overlay, the.classOverlay);\n\n KTUtil.addEvent(the.overlay, 'click', function(e) {\n //e.stopPropagation();\n e.preventDefault();\n Plugin.hide(the.target);\n });\n }\n\n Plugin.eventTrigger('afterShow');\n },\n\n hide: function() {\n if (the.state == 'hidden') {\n return;\n }\n\n Plugin.eventTrigger('beforeHide');\n\n Plugin.toggleClass('hide');\n\n KTUtil.removeAttr(body, 'data-offcanvas-' + the.classBase);\n KTUtil.removeClass(element, the.classShown);\n\n if (the.attrCustom.length > 0) {\n KTUtil.removeAttr(body, 'data-offcanvas-' + the.attrCustom);\n }\n\n the.state = 'hidden';\n\n if (the.options.overlay && the.overlay) {\n KTUtil.remove(the.overlay);\n }\n\n Plugin.eventTrigger('afterHide');\n },\n\n toggleClass: function(mode) {\n var id = KTUtil.attr(the.target, 'id');\n var toggleBy;\n\n if (the.options.toggleBy && the.options.toggleBy[0] && the.options.toggleBy[0].target) {\n for (var i in the.options.toggleBy) {\n if (the.options.toggleBy[i].target === id) {\n toggleBy = the.options.toggleBy[i];\n }\n }\n } else if (the.options.toggleBy && the.options.toggleBy.target) {\n toggleBy = the.options.toggleBy;\n }\n\n if (toggleBy) {\n var el = KTUtil.getById(toggleBy.target);\n\n if (mode === 'show') {\n KTUtil.addClass(el, toggleBy.state);\n }\n\n if (mode === 'hide') {\n KTUtil.removeClass(el, toggleBy.state);\n }\n }\n },\n\n eventTrigger: function(name, args) {\n for (var i = 0; i < the.events.length; i++) {\n var event = the.events[i];\n if (event.name == name) {\n if (event.one == true) {\n if (event.fired == false) {\n the.events[i].fired = true;\n return event.handler.call(this, the, args);\n }\n } else {\n return event.handler.call(this, the, args);\n }\n }\n }\n },\n\n addEvent: function(name, handler, one) {\n the.events.push({\n name: name,\n handler: handler,\n one: one,\n fired: false\n });\n }\n };\n\n //////////////////////////\n // ** Public Methods ** //\n //////////////////////////\n\n /**\n * Set default options\n * @param options\n */\n the.setDefaults = function(options) {\n defaultOptions = options;\n };\n\n /**\n * Check if canvas is shown\n * @returns {boolean}\n */\n the.isShown = function() {\n return Plugin.isShown();\n };\n\n /**\n * Set to hide the canvas\n */\n the.hide = function() {\n return Plugin.hide();\n };\n\n /**\n * Set to show the canvas\n */\n the.show = function() {\n return Plugin.show();\n };\n\n /**\n * Attach event\n * @param name\n * @param handler\n */\n the.on = function(name, handler) {\n return Plugin.addEvent(name, handler);\n };\n\n /**\n * Attach event that will be fired once\n * @param name\n * @param handler\n */\n the.one = function(name, handler) {\n return Plugin.addEvent(name, handler, true);\n };\n\n ///////////////////////////////\n // ** Plugin Construction ** //\n ///////////////////////////////\n\n // Run plugin\n Plugin.construct.apply(the, [options]);\n\n // Init done\n init = true;\n\n // Return plugin instance\n return the;\n};\n\n// webpack support\nif (typeof module !== 'undefined' && typeof module.exports !== 'undefined') {\n // module.exports = KTOffcanvas;\n}\n\nexport default KTOffcanvas;","import React, {createContext} from \"react\";\nimport {useMemo} from \"react\";\nimport {useContext} from \"react\";\n\nconst I18N_CONFIG_KEY = process.env.REACT_APP_I18N_CONFIG_KEY || \"i18nConfig\";\nconst initialState = {\n selectedLang: \"es\"\n };\n\nfunction getConfig() {\n const ls = localStorage.getItem(I18N_CONFIG_KEY);\n if (ls) {\n try {\n return JSON.parse(ls);\n } catch (er) {\n console.error(er);\n }\n }\n return initialState;\n}\n\n// Side effect\nexport function setLanguage(lang) {\n localStorage.setItem(I18N_CONFIG_KEY, JSON.stringify({ selectedLang: lang }));\n window.location.reload();\n}\n\nconst I18nContext = createContext();\n\nexport function useLang() {\n return useContext(I18nContext).selectedLang;\n}\n\nexport function withI18n(Component) {\n class WithI18n extends React.Component {\n static displayName = `WithI18n(${Component.displayName || Component.name})`;\n\n static contextType = I18nContext;\n\n render() {\n return ;\n }\n }\n\n return WithI18n;\n}\n\nexport const I18nConsumer = I18nContext.Consumer;\n\nexport function MetronicI18nProvider({ children }) {\n const lang = useMemo(getConfig, []);\n\n return {children};\n}\n","import React from \"react\";\nimport {useLang} from \"./Metronici18n\";\nimport {IntlProvider} from \"react-intl\";\nimport \"@formatjs/intl-relativetimeformat/polyfill\";\nimport \"@formatjs/intl-relativetimeformat/dist/locale-data/en\";\nimport \"@formatjs/intl-relativetimeformat/dist/locale-data/de\";\nimport \"@formatjs/intl-relativetimeformat/dist/locale-data/es\";\nimport \"@formatjs/intl-relativetimeformat/dist/locale-data/fr\";\nimport \"@formatjs/intl-relativetimeformat/dist/locale-data/ja\";\nimport \"@formatjs/intl-relativetimeformat/dist/locale-data/zh\";\n\nimport deMessages from \"./messages/de\";\nimport enMessages from \"./messages/en\";\nimport esMessages from \"./messages/es\";\nimport frMessages from \"./messages/fr\";\nimport jaMessages from \"./messages/ja\";\nimport zhMessages from \"./messages/zh\";\n\nconst allMessages = {\n de: deMessages,\n en: enMessages,\n es: esMessages,\n fr: frMessages,\n ja: jaMessages,\n zh: zhMessages\n};\n\nexport function I18nProvider({ children }) {\n const locale = useLang();\n const messages = allMessages[locale];\n\n return (\n \n {children}\n \n );\n}\n","export * from \"./I18nProvider\";\nexport * from \"./Metronici18n\";","/* eslint-disable */\n\"use strict\";\n\nimport PerfectScrollbar from \"perfect-scrollbar\";\n\nimport { KTCookie } from \"./cookie.js\";\n\n/**\n * @class KTUtil base utilize class that privides helper functions\n */\n\n// Polyfills\n/**\n * Element.matches() polyfill (simple version)\n * https://developer.mozilla.org/en-US/docs/Web/API/Element/matches#Polyfill\n */\nif (!Element.prototype.matches) {\n\tElement.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\n}\n\n/**\n * Element.closest() polyfill\n * https://developer.mozilla.org/en-US/docs/Web/API/Element/closest#Polyfill\n */\nif (!Element.prototype.closest) {\n\tif (!Element.prototype.matches) {\n\t\tElement.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\n\t}\n\tElement.prototype.closest = function (s) {\n\t\tvar el = this;\n\t\tvar ancestor = this;\n\t\tif (!document.documentElement.contains(el)) return null;\n\t\tdo {\n\t\t\tif (ancestor.matches(s)) return ancestor;\n\t\t\tancestor = ancestor.parentElement;\n\t\t} while (ancestor !== null);\n\t\treturn null;\n\t};\n}\n\n/**\n * ChildNode.remove() polyfill\n * https://gomakethings.com/removing-an-element-from-the-dom-the-es6-way/\n * @author Chris Ferdinandi\n * @license MIT\n */\n(function (elem) {\n\tfor (var i = 0; i < elem.length; i++) {\n\t\tif (!window[elem[i]] || 'remove' in window[elem[i]].prototype) continue;\n\t\twindow[elem[i]].prototype.remove = function () {\n\t\t\tthis.parentNode.removeChild(this);\n\t\t};\n\t}\n})(['Element', 'CharacterData', 'DocumentType']);\n\n\n//\n// requestAnimationFrame polyfill by Erik Möller.\n// With fixes from Paul Irish and Tino Zijdel\n//\n// http://paulirish.com/2011/requestanimationframe-for-smart-animating/\n// http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating\n//\n// MIT license\n//\n(function() {\n var lastTime = 0;\n var vendors = ['webkit', 'moz'];\n for (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {\n window.requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame'];\n window.cancelAnimationFrame =\n window[vendors[x] + 'CancelAnimationFrame'] || window[vendors[x] + 'CancelRequestAnimationFrame'];\n }\n\n if (!window.requestAnimationFrame)\n window.requestAnimationFrame = function(callback) {\n var currTime = new Date().getTime();\n var timeToCall = Math.max(0, 16 - (currTime - lastTime));\n var id = window.setTimeout(function() {\n callback(currTime + timeToCall);\n }, timeToCall);\n lastTime = currTime + timeToCall;\n return id;\n };\n\n if (!window.cancelAnimationFrame)\n window.cancelAnimationFrame = function(id) {\n clearTimeout(id);\n };\n}());\n\n// Source: https://github.com/jserz/js_piece/blob/master/DOM/ParentNode/prepend()/prepend().md\n(function(arr) {\n arr.forEach(function(item) {\n if (item.hasOwnProperty('prepend')) {\n return;\n }\n Object.defineProperty(item, 'prepend', {\n configurable: true,\n enumerable: true,\n writable: true,\n value: function prepend() {\n var argArr = Array.prototype.slice.call(arguments),\n docFrag = document.createDocumentFragment();\n\n argArr.forEach(function(argItem) {\n var isNode = argItem instanceof Node;\n docFrag.appendChild(isNode ? argItem : document.createTextNode(String(argItem)));\n });\n\n this.insertBefore(docFrag, this.firstChild);\n }\n });\n });\n})([Element.prototype, Document.prototype, DocumentFragment.prototype]);\n\n// getAttributeNames\nif (Element.prototype.getAttributeNames == undefined) {\n Element.prototype.getAttributeNames = function () {\n var attributes = this.attributes;\n var length = attributes.length;\n var result = new Array(length);\n for (var i = 0; i < length; i++) {\n result[i] = attributes[i].name;\n }\n return result;\n };\n}\n\n// Global variables\nwindow.KTUtilElementDataStore = {};\nwindow.KTUtilElementDataStoreID = 0;\nwindow.KTUtilDelegatedEventHandlers = {};\n\nexport var KTUtil = function() {\n var resizeHandlers = [];\n\n /** @type {object} breakpoints The device width breakpoints **/\n var breakpoints = {\n sm: 544, // Small screen / phone\n md: 768, // Medium screen / tablet\n lg: 992, // Large screen / desktop\n xl: 1200 // Extra large screen / wide desktop\n };\n\n /**\n * Handle window resize event with some\n * delay to attach event handlers upon resize complete\n */\n var _windowResizeHandler = function() {\n var _runResizeHandlers = function() {\n // reinitialize other subscribed elements\n for (var i = 0; i < resizeHandlers.length; i++) {\n var each = resizeHandlers[i];\n each.call();\n }\n };\n\n var timer;\n\n window.addEventListener('resize', function() {\n KTUtil.throttle(timer, function() {\n _runResizeHandlers();\n }, 200);\n });\n };\n\n return {\n /**\n * Class main initializer.\n * @param {object} settings.\n * @returns null\n */\n //main function to initiate the theme\n init: function(settings) {\n if (settings && settings.breakpoints) {\n breakpoints = settings.breakpoints;\n }\n\n _windowResizeHandler();\n },\n\n /**\n * Adds window resize event handler.\n * @param {function} callback function.\n */\n addResizeHandler: function(callback) {\n resizeHandlers.push(callback);\n },\n\n /**\n * Removes window resize event handler.\n * @param {function} callback function.\n */\n removeResizeHandler: function(callback) {\n for (var i = 0; i < resizeHandlers.length; i++) {\n if (callback === resizeHandlers[i]) {\n delete resizeHandlers[i];\n }\n }\n },\n\n /**\n * Trigger window resize handlers.\n */\n runResizeHandlers: function() {\n _runResizeHandlers();\n },\n\n resize: function() {\n if (typeof(Event) === 'function') {\n // modern browsers\n window.dispatchEvent(new Event('resize'));\n } else {\n // for IE and other old browsers\n // causes deprecation warning on modern browsers\n var evt = window.document.createEvent('UIEvents');\n evt.initUIEvent('resize', true, false, window, 0);\n window.dispatchEvent(evt);\n }\n },\n\n /**\n * Get GET parameter value from URL.\n * @param {string} paramName Parameter name.\n * @returns {string}\n */\n getURLParam: function(paramName) {\n var searchString = window.location.search.substring(1),\n i, val, params = searchString.split(\"&\");\n\n for (i = 0; i < params.length; i++) {\n val = params[i].split(\"=\");\n if (val[0] == paramName) {\n return unescape(val[1]);\n }\n }\n\n return null;\n },\n\n /**\n * Checks whether current device is mobile touch.\n * @returns {boolean}\n */\n isMobileDevice: function() {\n var test = (this.getViewPort().width < this.getBreakpoint('lg') ? true : false);\n\n if (test === false) {\n // For use within normal web clients\n test = navigator.userAgent.match(/iPad/i) != null;\n }\n\n return test;\n },\n\n /**\n * Checks whether current device is desktop.\n * @returns {boolean}\n */\n isDesktopDevice: function() {\n return KTUtil.isMobileDevice() ? false : true;\n },\n\n /**\n * Gets browser window viewport size. Ref:\n * http://andylangton.co.uk/articles/javascript/get-viewport-size-javascript/\n * @returns {object}\n */\n getViewPort: function() {\n var e = window,\n a = 'inner';\n if (!('innerWidth' in window)) {\n a = 'client';\n e = document.documentElement || document.body;\n }\n\n return {\n width: e[a + 'Width'],\n height: e[a + 'Height']\n };\n },\n\n /**\n * Checks whether given device mode is currently activated.\n * @param {string} mode Responsive mode name(e.g: desktop,\n * desktop-and-tablet, tablet, tablet-and-mobile, mobile)\n * @returns {boolean}\n */\n isInResponsiveRange: function(mode) {\n var breakpoint = this.getViewPort().width;\n\n if (mode == 'general') {\n return true;\n } else if (mode == 'desktop' && breakpoint >= (this.getBreakpoint('lg') + 1)) {\n return true;\n } else if (mode == 'tablet' && (breakpoint >= (this.getBreakpoint('md') + 1) && breakpoint < this.getBreakpoint('lg'))) {\n return true;\n } else if (mode == 'mobile' && breakpoint <= this.getBreakpoint('md')) {\n return true;\n } else if (mode == 'desktop-and-tablet' && breakpoint >= (this.getBreakpoint('md') + 1)) {\n return true;\n } else if (mode == 'tablet-and-mobile' && breakpoint <= this.getBreakpoint('lg')) {\n return true;\n } else if (mode == 'minimal-desktop-and-below' && breakpoint <= this.getBreakpoint('xl')) {\n return true;\n }\n\n return false;\n },\n\n\t\t/**\n * Checks whether given device mode is currently activated.\n * @param {string} mode Responsive mode name(e.g: desktop,\n * desktop-and-tablet, tablet, tablet-and-mobile, mobile)\n * @returns {boolean}\n */\n isBreakpointUp: function(mode) {\n var width = this.getViewPort().width;\n\t\t\tvar breakpoint = this.getBreakpoint(mode);\n\n\t\t\treturn (width >= breakpoint);\n },\n\n\t\tisBreakpointDown: function(mode) {\n var width = this.getViewPort().width;\n\t\t\tvar breakpoint = this.getBreakpoint(mode);\n\n\t\t\treturn (width < breakpoint);\n },\n\n /**\n * Generates unique ID for give prefix.\n * @param {string} prefix Prefix for generated ID\n * @returns {boolean}\n */\n getUniqueID: function(prefix) {\n return prefix + Math.floor(Math.random() * (new Date()).getTime());\n },\n\n /**\n * Gets window width for give breakpoint mode.\n * @param {string} mode Responsive mode name(e.g: xl, lg, md, sm)\n * @returns {number}\n */\n getBreakpoint: function(mode) {\n return breakpoints[mode];\n },\n\n /**\n * Checks whether object has property matchs given key path.\n * @param {object} obj Object contains values paired with given key path\n * @param {string} keys Keys path seperated with dots\n * @returns {object}\n */\n isset: function(obj, keys) {\n var stone;\n\n keys = keys || '';\n\n if (keys.indexOf('[') !== -1) {\n throw new Error('Unsupported object path notation.');\n }\n\n keys = keys.split('.');\n\n do {\n if (obj === undefined) {\n return false;\n }\n\n stone = keys.shift();\n\n if (!obj.hasOwnProperty(stone)) {\n return false;\n }\n\n obj = obj[stone];\n\n } while (keys.length);\n\n return true;\n },\n\n /**\n * Gets highest z-index of the given element parents\n * @param {object} el jQuery element object\n * @returns {number}\n */\n getHighestZindex: function(el) {\n var position, value;\n\n while (el && el !== document) {\n // Ignore z-index if position is set to a value where z-index is ignored by the browser\n // This makes behavior of this function consistent across browsers\n // WebKit always returns auto if the element is positioned\n position = KTUtil.css(el, 'position');\n\n if (position === \"absolute\" || position === \"relative\" || position === \"fixed\") {\n // IE returns 0 when zIndex is not specified\n // other browsers return a string\n // we ignore the case of nested elements with an explicit value of 0\n //
    \n value = parseInt(KTUtil.css(el, 'z-index'));\n\n if (!isNaN(value) && value !== 0) {\n return value;\n }\n }\n\n el = el.parentNode;\n }\n\n return null;\n },\n\n /**\n * Checks whether the element has any parent with fixed positionfreg\n * @param {object} el jQuery element object\n * @returns {boolean}\n */\n hasFixedPositionedParent: function(el) {\n var position;\n\n while (el && el !== document) {\n position = KTUtil.css(el, 'position');\n\n if (position === \"fixed\") {\n return true;\n }\n\n el = el.parentNode;\n }\n\n return false;\n },\n\n /**\n * Simulates delay\n */\n sleep: function(milliseconds) {\n var start = new Date().getTime();\n for (var i = 0; i < 1e7; i++) {\n if ((new Date().getTime() - start) > milliseconds) {\n break;\n }\n }\n },\n\n /**\n * Gets randomly generated integer value within given min and max range\n * @param {number} min Range start value\n * @param {number} max Range end value\n * @returns {number}\n */\n getRandomInt: function(min, max) {\n return Math.floor(Math.random() * (max - min + 1)) + min;\n },\n\n /**\n * Checks whether Angular library is included\n * @returns {boolean}\n */\n isAngularVersion: function() {\n return window.Zone !== undefined ? true : false;\n },\n\n // jQuery Workarounds\n\n // Deep extend: $.extend(true, {}, objA, objB);\n deepExtend: function(out) {\n out = out || {};\n\n for (var i = 1; i < arguments.length; i++) {\n var obj = arguments[i];\n\n if (!obj)\n continue;\n\n for (var key in obj) {\n if (obj.hasOwnProperty(key)) {\n if (typeof obj[key] === 'object')\n out[key] = KTUtil.deepExtend(out[key], obj[key]);\n else\n out[key] = obj[key];\n }\n }\n }\n\n return out;\n },\n\n // extend: $.extend({}, objA, objB);\n extend: function(out) {\n out = out || {};\n\n for (var i = 1; i < arguments.length; i++) {\n if (!arguments[i])\n continue;\n\n for (var key in arguments[i]) {\n if (arguments[i].hasOwnProperty(key))\n out[key] = arguments[i][key];\n }\n }\n\n return out;\n },\n\n getById: function(el) {\n if (typeof el === 'string') {\n return document.getElementById(el);\n } else {\n return el;\n }\n },\n\n getByTag: function(query) {\n return document.getElementsByTagName(query);\n },\n\n getByTagName: function(query) {\n return document.getElementsByTagName(query);\n },\n\n getByClass: function(query) {\n return document.getElementsByClassName(query);\n },\n\n getBody: function() {\n return document.getElementsByTagName('body')[0];\n },\n\n /**\n * Checks whether the element has given classes\n * @param {object} el jQuery element object\n * @param {string} Classes string\n * @returns {boolean}\n */\n hasClasses: function(el, classes) {\n if (!el) {\n return;\n }\n\n var classesArr = classes.split(\" \");\n\n for (var i = 0; i < classesArr.length; i++) {\n if (KTUtil.hasClass(el, KTUtil.trim(classesArr[i])) == false) {\n return false;\n }\n }\n\n return true;\n },\n\n hasClass: function(el, className) {\n if (!el) {\n return;\n }\n\n return el.classList ? el.classList.contains(className) : new RegExp('\\\\b' + className + '\\\\b').test(el.className);\n },\n\n addClass: function(el, className) {\n if (!el || typeof className === 'undefined') {\n return;\n }\n\n var classNames = className.split(' ');\n\n if (el.classList) {\n for (var i = 0; i < classNames.length; i++) {\n if (classNames[i] && classNames[i].length > 0) {\n el.classList.add(KTUtil.trim(classNames[i]));\n }\n }\n } else if (!KTUtil.hasClass(el, className)) {\n for (var x = 0; x < classNames.length; x++) {\n el.className += ' ' + KTUtil.trim(classNames[x]);\n }\n }\n },\n\n removeClass: function(el, className) {\n if (!el || typeof className === 'undefined') {\n return;\n }\n\n var classNames = className.split(' ');\n\n if (el.classList) {\n for (var i = 0; i < classNames.length; i++) {\n el.classList.remove(KTUtil.trim(classNames[i]));\n }\n } else if (KTUtil.hasClass(el, className)) {\n for (var x = 0; x < classNames.length; x++) {\n el.className = el.className.replace(new RegExp('\\\\b' + KTUtil.trim(classNames[x]) + '\\\\b', 'g'), '');\n }\n }\n },\n\n triggerCustomEvent: function(el, eventName, data) {\n var event;\n if (window.CustomEvent) {\n event = new CustomEvent(eventName, {\n detail: data\n });\n } else {\n event = document.createEvent('CustomEvent');\n event.initCustomEvent(eventName, true, true, data);\n }\n\n el.dispatchEvent(event);\n },\n\n triggerEvent: function(node, eventName) {\n // Make sure we use the ownerDocument from the provided node to avoid cross-window problems\n var doc;\n if (node.ownerDocument) {\n doc = node.ownerDocument;\n } else if (node.nodeType == 9) {\n // the node may be the document itself, nodeType 9 = DOCUMENT_NODE\n doc = node;\n } else {\n throw new Error(\"Invalid node passed to fireEvent: \" + node.id);\n }\n\n if (node.dispatchEvent) {\n // Gecko-style approach (now the standard) takes more work\n var eventClass = \"\";\n\n // Different events have different event classes.\n // If this switch statement can't map an eventName to an eventClass,\n // the event firing is going to fail.\n switch (eventName) {\n case \"click\": // Dispatching of 'click' appears to not work correctly in Safari. Use 'mousedown' or 'mouseup' instead.\n case \"mouseenter\":\n case \"mouseleave\":\n case \"mousedown\":\n case \"mouseup\":\n eventClass = \"MouseEvents\";\n break;\n\n case \"focus\":\n case \"change\":\n case \"blur\":\n case \"select\":\n eventClass = \"HTMLEvents\";\n break;\n\n default:\n throw \"fireEvent: Couldn't find an event class for event '\" + eventName + \"'.\";\n break;\n }\n var event = doc.createEvent(eventClass);\n\n var bubbles = eventName == \"change\" ? false : true;\n event.initEvent(eventName, bubbles, true); // All events created as bubbling and cancelable.\n\n event.synthetic = true; // allow detection of synthetic events\n // The second parameter says go ahead with the default action\n node.dispatchEvent(event, true);\n } else if (node.fireEvent) {\n // IE-old school style\n var event = doc.createEventObject();\n event.synthetic = true; // allow detection of synthetic events\n node.fireEvent(\"on\" + eventName, event);\n }\n },\n\n index: function( el ){\n var c = el.parentNode.children, i = 0;\n for(; i < c.length; i++ )\n if( c[i] == el ) return i;\n },\n\n trim: function(string) {\n return string.trim();\n },\n\n eventTriggered: function(e) {\n if (e.currentTarget.dataset.triggered) {\n return true;\n } else {\n e.currentTarget.dataset.triggered = true;\n\n return false;\n }\n },\n\n remove: function(el) {\n if (el && el.parentNode) {\n el.parentNode.removeChild(el);\n }\n },\n\n find: function(parent, query) {\n parent = KTUtil.getById(parent);\n if (parent) {\n return parent.querySelector(query);\n }\n },\n\n findAll: function(parent, query) {\n parent = KTUtil.getById(parent);\n if (parent) {\n return parent.querySelectorAll(query);\n }\n },\n\n insertAfter: function(el, referenceNode) {\n return referenceNode.parentNode.insertBefore(el, referenceNode.nextSibling);\n },\n\n parents: function(elem, selector) {\n // Element.matches() polyfill\n if (!Element.prototype.matches) {\n Element.prototype.matches =\n Element.prototype.matchesSelector ||\n Element.prototype.mozMatchesSelector ||\n Element.prototype.msMatchesSelector ||\n Element.prototype.oMatchesSelector ||\n Element.prototype.webkitMatchesSelector ||\n function(s) {\n var matches = (this.document || this.ownerDocument).querySelectorAll(s),\n i = matches.length;\n while (--i >= 0 && matches.item(i) !== this) {}\n return i > -1;\n };\n }\n\n // Set up a parent array\n var parents = [];\n\n // Push each parent element to the array\n for ( ; elem && elem !== document; elem = elem.parentNode ) {\n if (selector) {\n if (elem.matches(selector)) {\n parents.push(elem);\n }\n continue;\n }\n parents.push(elem);\n }\n\n // Return our parent array\n return parents;\n },\n\n children: function(el, selector, log) {\n if (!el || !el.childNodes) {\n return;\n }\n\n var result = [],\n i = 0,\n l = el.childNodes.length;\n\n for (var i; i < l; ++i) {\n if (el.childNodes[i].nodeType == 1 && KTUtil.matches(el.childNodes[i], selector, log)) {\n result.push(el.childNodes[i]);\n }\n }\n\n return result;\n },\n\n child: function(el, selector, log) {\n var children = KTUtil.children(el, selector, log);\n\n return children ? children[0] : null;\n },\n\n matches: function(el, selector, log) {\n var p = Element.prototype;\n var f = p.matches || p.webkitMatchesSelector || p.mozMatchesSelector || p.msMatchesSelector || function(s) {\n return [].indexOf.call(document.querySelectorAll(s), this) !== -1;\n };\n\n if (el && el.tagName) {\n return f.call(el, selector);\n } else {\n return false;\n }\n },\n\n data: function(el) {\n return {\n set: function(name, data) {\n if (!el) {\n return;\n }\n\n if (el.customDataTag === undefined) {\n window.KTUtilElementDataStoreID++;\n el.customDataTag = window.KTUtilElementDataStoreID;\n }\n\n if (window.KTUtilElementDataStore[el.customDataTag] === undefined) {\n window.KTUtilElementDataStore[el.customDataTag] = {};\n }\n\n window.KTUtilElementDataStore[el.customDataTag][name] = data;\n },\n\n get: function(name) {\n if (!el) {\n return;\n }\n\n if (el.customDataTag === undefined) {\n return null;\n }\n\n return this.has(name) ? window.KTUtilElementDataStore[el.customDataTag][name] : null;\n },\n\n has: function(name) {\n if (!el) {\n return false;\n }\n\n if (el.customDataTag === undefined) {\n return false;\n }\n\n return (window.KTUtilElementDataStore[el.customDataTag] && window.KTUtilElementDataStore[el.customDataTag][name]) ? true : false;\n },\n\n remove: function(name) {\n if (el && this.has(name)) {\n delete window.KTUtilElementDataStore[el.customDataTag][name];\n }\n }\n };\n },\n\n outerWidth: function(el, margin) {\n var width;\n\n if (margin === true) {\n width = parseFloat(el.offsetWidth);\n width += parseFloat(KTUtil.css(el, 'margin-left')) + parseFloat(KTUtil.css(el, 'margin-right'));\n\n return parseFloat(width);\n } else {\n width = parseFloat(el.offsetWidth);\n\n return width;\n }\n },\n\n offset: function(el) {\n var rect, win;\n\n if ( !el ) {\n return;\n }\n\n // Return zeros for disconnected and hidden (display: none) elements (gh-2310)\n // Support: IE <=11 only\n // Running getBoundingClientRect on a\n // disconnected node in IE throws an error\n\n if ( !el.getClientRects().length ) {\n return { top: 0, left: 0 };\n }\n\n // Get document-relative position by adding viewport scroll to viewport-relative gBCR\n rect = el.getBoundingClientRect();\n win = el.ownerDocument.defaultView;\n\n return {\n top: rect.top + win.pageYOffset,\n left: rect.left + win.pageXOffset\n };\n },\n\n height: function(el) {\n return KTUtil.css(el, 'height');\n },\n\n outerHeight: function(el, withMargin) {\n var height = el.offsetHeight;\n var style;\n\n if (typeof withMargin !== 'undefined' && withMargin === true) {\n style = getComputedStyle(el);\n height += parseInt(style.marginTop) + parseInt(style.marginBottom);\n\n return height;\n } else {\n return height;\n }\n },\n\n visible: function(el) {\n return !(el.offsetWidth === 0 && el.offsetHeight === 0);\n },\n\n attr: function(el, name, value) {\n if (el == undefined) {\n return;\n }\n\n if (value !== undefined) {\n el.setAttribute(name, value);\n } else {\n return el.getAttribute(name);\n }\n },\n\n hasAttr: function(el, name) {\n if (el == undefined) {\n return;\n }\n\n return el.getAttribute(name) ? true : false;\n },\n\n removeAttr: function(el, name) {\n if (el == undefined) {\n return;\n }\n\n el.removeAttribute(name);\n },\n\n animate: function(from, to, duration, update, easing, done) {\n /**\n * TinyAnimate.easings\n * Adapted from jQuery Easing\n */\n var easings = {};\n var easing;\n\n easings.linear = function(t, b, c, d) {\n return c * t / d + b;\n };\n\n easing = easings.linear;\n\n // Early bail out if called incorrectly\n if (typeof from !== 'number' ||\n typeof to !== 'number' ||\n typeof duration !== 'number' ||\n typeof update !== 'function') {\n return;\n }\n\n // Create mock done() function if necessary\n if (typeof done !== 'function') {\n done = function() {};\n }\n\n // Pick implementation (requestAnimationFrame | setTimeout)\n var rAF = window.requestAnimationFrame || function(callback) {\n window.setTimeout(callback, 1000 / 50);\n };\n\n // Animation loop\n var canceled = false;\n var change = to - from;\n\n function loop(timestamp) {\n var time = (timestamp || +new Date()) - start;\n\n if (time >= 0) {\n update(easing(time, from, change, duration));\n }\n if (time >= 0 && time >= duration) {\n update(to);\n done();\n } else {\n rAF(loop);\n }\n }\n\n update(from);\n\n // Start animation loop\n var start = window.performance && window.performance.now ? window.performance.now() : +new Date();\n\n rAF(loop);\n },\n\n actualCss: function(el, prop, cache) {\n var css = '';\n\n if (el instanceof HTMLElement === false) {\n return;\n }\n\n if (!el.getAttribute('kt-hidden-' + prop) || cache === false) {\n var value;\n\n // the element is hidden so:\n // making the el block so we can meassure its height but still be hidden\n css = el.style.cssText;\n el.style.cssText = 'position: absolute; visibility: hidden; display: block;';\n\n if (prop == 'width') {\n value = el.offsetWidth;\n } else if (prop == 'height') {\n value = el.offsetHeight;\n }\n\n el.style.cssText = css;\n\n // store it in cache\n el.setAttribute('kt-hidden-' + prop, value);\n\n return parseFloat(value);\n } else {\n // store it in cache\n return parseFloat(el.getAttribute('kt-hidden-' + prop));\n }\n },\n\n actualHeight: function(el, cache) {\n return KTUtil.actualCss(el, 'height', cache);\n },\n\n actualWidth: function(el, cache) {\n return KTUtil.actualCss(el, 'width', cache);\n },\n\n getScroll: function(element, method) {\n // The passed in `method` value should be 'Top' or 'Left'\n method = 'scroll' + method;\n return (element == window || element == document) ? (\n self[(method == 'scrollTop') ? 'pageYOffset' : 'pageXOffset'] ||\n (browserSupportsBoxModel && document.documentElement[method]) ||\n document.body[method]\n ) : element[method];\n },\n\n css: function(el, styleProp, value) {\n if (!el) {\n return;\n }\n\n if (value !== undefined) {\n el.style[styleProp] = value;\n } else {\n var defaultView = (el.ownerDocument || document).defaultView;\n // W3C standard way:\n if (defaultView && defaultView.getComputedStyle) {\n // sanitize property name to css notation\n // (hyphen separated words eg. font-Size)\n styleProp = styleProp.replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return defaultView.getComputedStyle(el, null).getPropertyValue(styleProp);\n } else if (el.currentStyle) { // IE\n // sanitize property name to camelCase\n styleProp = styleProp.replace(/\\-(\\w)/g, function(str, letter) {\n return letter.toUpperCase();\n });\n value = el.currentStyle[styleProp];\n // convert other units to pixels on IE\n if (/^\\d+(em|pt|%|ex)?$/i.test(value)) {\n return (function(value) {\n var oldLeft = el.style.left,\n oldRsLeft = el.runtimeStyle.left;\n el.runtimeStyle.left = el.currentStyle.left;\n el.style.left = value || 0;\n value = el.style.pixelLeft + \"px\";\n el.style.left = oldLeft;\n el.runtimeStyle.left = oldRsLeft;\n return value;\n })(value);\n }\n return value;\n }\n }\n },\n\n slide: function(el, dir, speed, callback, recalcMaxHeight) {\n if (!el || (dir == 'up' && KTUtil.visible(el) === false) || (dir == 'down' && KTUtil.visible(el) === true)) {\n return;\n }\n\n speed = (speed ? speed : 600);\n var calcHeight = KTUtil.actualHeight(el);\n var calcPaddingTop = false;\n var calcPaddingBottom = false;\n\n if (KTUtil.css(el, 'padding-top') && KTUtil.data(el).has('slide-padding-top') !== true) {\n KTUtil.data(el).set('slide-padding-top', KTUtil.css(el, 'padding-top'));\n }\n\n if (KTUtil.css(el, 'padding-bottom') && KTUtil.data(el).has('slide-padding-bottom') !== true) {\n KTUtil.data(el).set('slide-padding-bottom', KTUtil.css(el, 'padding-bottom'));\n }\n\n if (KTUtil.data(el).has('slide-padding-top')) {\n calcPaddingTop = parseInt(KTUtil.data(el).get('slide-padding-top'));\n }\n\n if (KTUtil.data(el).has('slide-padding-bottom')) {\n calcPaddingBottom = parseInt(KTUtil.data(el).get('slide-padding-bottom'));\n }\n\n if (dir == 'up') { // up\n el.style.cssText = 'display: block; overflow: hidden;';\n\n if (calcPaddingTop) {\n KTUtil.animate(0, calcPaddingTop, speed, function(value) {\n el.style.paddingTop = (calcPaddingTop - value) + 'px';\n }, 'linear');\n }\n\n if (calcPaddingBottom) {\n KTUtil.animate(0, calcPaddingBottom, speed, function(value) {\n el.style.paddingBottom = (calcPaddingBottom - value) + 'px';\n }, 'linear');\n }\n\n KTUtil.animate(0, calcHeight, speed, function(value) {\n el.style.height = (calcHeight - value) + 'px';\n }, 'linear', function() {\n el.style.height = '';\n el.style.display = 'none';\n\n if (typeof callback === 'function') {\n callback();\n }\n });\n\n\n } else if (dir == 'down') { // down\n el.style.cssText = 'display: block; overflow: hidden;';\n\n if (calcPaddingTop) {\n KTUtil.animate(0, calcPaddingTop, speed, function(value) {//\n el.style.paddingTop = value + 'px';\n }, 'linear', function() {\n el.style.paddingTop = '';\n });\n }\n\n if (calcPaddingBottom) {\n KTUtil.animate(0, calcPaddingBottom, speed, function(value) {\n el.style.paddingBottom = value + 'px';\n }, 'linear', function() {\n el.style.paddingBottom = '';\n });\n }\n\n KTUtil.animate(0, calcHeight, speed, function(value) {\n el.style.height = value + 'px';\n }, 'linear', function() {\n el.style.height = '';\n el.style.display = '';\n el.style.overflow = '';\n\n if (typeof callback === 'function') {\n callback();\n }\n });\n }\n },\n\n slideUp: function(el, speed, callback) {\n KTUtil.slide(el, 'up', speed, callback);\n },\n\n slideDown: function(el, speed, callback) {\n KTUtil.slide(el, 'down', speed, callback);\n },\n\n show: function(el, display) {\n if (typeof el !== 'undefined') {\n el.style.display = (display ? display : 'block');\n }\n },\n\n hide: function(el) {\n if (typeof el !== 'undefined') {\n el.style.display = 'none';\n }\n },\n\n addEvent: function(el, type, handler, one) {\n if (typeof el !== 'undefined' && el !== null) {\n el.addEventListener(type, handler);\n }\n },\n\n removeEvent: function(el, type, handler) {\n if (el !== null) {\n el.removeEventListener(type, handler);\n }\n },\n\n on: function(element, selector, event, handler) {\n if (!selector) {\n return;\n }\n\n var eventId = KTUtil.getUniqueID('event');\n\n window.KTUtilDelegatedEventHandlers[eventId] = function(e) {\n var targets = element.querySelectorAll(selector);\n var target = e.target;\n\n while (target && target !== element) {\n for (var i = 0, j = targets.length; i < j; i++) {\n if (target === targets[i]) {\n handler.call(target, e);\n }\n }\n\n target = target.parentNode;\n }\n }\n\n KTUtil.addEvent(element, event, window.KTUtilDelegatedEventHandlers[eventId]);\n\n return eventId;\n },\n\n off: function(element, event, eventId) {\n if (!element || !window.KTUtilDelegatedEventHandlers[eventId]) {\n return;\n }\n\n KTUtil.removeEvent(element, event, window.KTUtilDelegatedEventHandlers[eventId]);\n\n delete window.KTUtilDelegatedEventHandlers[eventId];\n },\n\n one: function onetime(el, type, callback) {\n el.addEventListener(type, function callee(e) {\n // remove event\n if (e.target && e.target.removeEventListener) {\n e.target.removeEventListener(e.type, callee);\n }\n\n // need to verify from https://themeforest.net/author_dashboard#comment_23615588\n if (el && el.removeEventListener) {\n\t\t\t\t e.currentTarget.removeEventListener(e.type, callee);\n\t\t\t }\n\n // call handler\n return callback(e);\n });\n },\n\n hash: function(str) {\n var hash = 0,\n i, chr;\n\n if (str.length === 0) return hash;\n for (i = 0; i < str.length; i++) {\n chr = str.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0; // Convert to 32bit integer\n }\n\n return hash;\n },\n\n animateClass: function(el, animationName, callback) {\n var animation;\n var animations = {\n animation: 'animationend',\n OAnimation: 'oAnimationEnd',\n MozAnimation: 'mozAnimationEnd',\n WebkitAnimation: 'webkitAnimationEnd',\n msAnimation: 'msAnimationEnd',\n };\n\n for (var t in animations) {\n if (el.style[t] !== undefined) {\n animation = animations[t];\n }\n }\n\n KTUtil.addClass(el, 'animated ' + animationName);\n\n KTUtil.one(el, animation, function() {\n KTUtil.removeClass(el, 'animated ' + animationName);\n });\n\n if (callback) {\n KTUtil.one(el, animation, callback);\n }\n },\n\n transitionEnd: function(el, callback) {\n var transition;\n var transitions = {\n transition: 'transitionend',\n OTransition: 'oTransitionEnd',\n MozTransition: 'mozTransitionEnd',\n WebkitTransition: 'webkitTransitionEnd',\n msTransition: 'msTransitionEnd'\n };\n\n for (var t in transitions) {\n if (el.style[t] !== undefined) {\n transition = transitions[t];\n }\n }\n\n KTUtil.one(el, transition, callback);\n },\n\n animationEnd: function(el, callback) {\n var animation;\n var animations = {\n animation: 'animationend',\n OAnimation: 'oAnimationEnd',\n MozAnimation: 'mozAnimationEnd',\n WebkitAnimation: 'webkitAnimationEnd',\n msAnimation: 'msAnimationEnd'\n };\n\n for (var t in animations) {\n if (el.style[t] !== undefined) {\n animation = animations[t];\n }\n }\n\n KTUtil.one(el, animation, callback);\n },\n\n animateDelay: function(el, value) {\n var vendors = ['webkit-', 'moz-', 'ms-', 'o-', ''];\n for (var i = 0; i < vendors.length; i++) {\n KTUtil.css(el, vendors[i] + 'animation-delay', value);\n }\n },\n\n animateDuration: function(el, value) {\n var vendors = ['webkit-', 'moz-', 'ms-', 'o-', ''];\n for (var i = 0; i < vendors.length; i++) {\n KTUtil.css(el, vendors[i] + 'animation-duration', value);\n }\n },\n\n scrollTo: function(target, offset, duration) {\n var duration = duration ? duration : 500;\n var targetPos = target ? KTUtil.offset(target).top : 0;\n var scrollPos = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;\n var from, to;\n\n if (offset) {\n scrollPos += offset;\n }\n\n from = scrollPos;\n to = targetPos;\n\n KTUtil.animate(from, to, duration, function(value) {\n document.documentElement.scrollTop = value;\n document.body.parentNode.scrollTop = value;\n document.body.scrollTop = value;\n }); //, easing, done\n },\n\n scrollTop: function(offset, duration) {\n KTUtil.scrollTo(null, offset, duration);\n },\n\n isArray: function(obj) {\n return obj && Array.isArray(obj);\n },\n\n ready: function(callback) {\n if (document.attachEvent ? document.readyState === \"complete\" : document.readyState !== \"loading\") {\n callback();\n } else {\n document.addEventListener('DOMContentLoaded', callback);\n }\n },\n\n isEmpty: function(obj) {\n for (var prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n return false;\n }\n }\n\n return true;\n },\n\n numberString: function(nStr) {\n nStr += '';\n var x = nStr.split('.');\n var x1 = x[0];\n var x2 = x.length > 1 ? '.' + x[1] : '';\n var rgx = /(\\d+)(\\d{3})/;\n while (rgx.test(x1)) {\n x1 = x1.replace(rgx, '$1' + ',' + '$2');\n }\n return x1 + x2;\n },\n\n detectIE: function() {\n var ua = window.navigator.userAgent;\n\n // Test values; Uncomment to check result …\n\n // IE 10\n // ua = 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)';\n\n // IE 11\n // ua = 'Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko';\n\n // Edge 12 (Spartan)\n // ua = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36 Edge/12.0';\n\n // Edge 13\n // ua = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586';\n\n var msie = ua.indexOf('MSIE ');\n if (msie > 0) {\n // IE 10 or older => return version number\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n }\n\n var trident = ua.indexOf('Trident/');\n if (trident > 0) {\n // IE 11 => return version number\n var rv = ua.indexOf('rv:');\n return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n }\n\n var edge = ua.indexOf('Edge/');\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n }\n\n // other browser\n return false;\n },\n\n isRTL: function() {\n var html = KTUtil.getByTagName('html')[0];\n\n if (html) {\n return (KTUtil.attr(html, 'direction') == 'rtl');\n }\n },\n\n // Scroller\n scrollInit: function(element, options) {\n if (!element) {\n return;\n }\n\n // Learn more: https://github.com/mdbootstrap/perfect-scrollbar#options\n var pluginDefOptions = {\n wheelSpeed: 0.5,\n swipeEasing: true,\n wheelPropagation: false,\n minScrollbarLength: 40,\n maxScrollbarLength: 300,\n suppressScrollX: true\n };\n\n options = KTUtil.deepExtend({}, pluginDefOptions, options);\n\n // Define init function\n function init() {\n var ps;\n var height;\n\n // Get extra options via data attributes\n var attrs = element.getAttributeNames();\n if (attrs.length > 0) {\n attrs.forEach(function(attrName) {\n \t\t\t// more options; https://github.com/ganlanyuan/tiny-slider#options\n \t\t\tif ((/^data-.*/g).test(attrName)) {\n if (['scroll', 'height', 'mobile-height'].includes(optionName) == false) {\n var optionName = attrName.replace('data-', '').toLowerCase().replace(/(?:[\\s-])\\w/g, function(match) {\n \t\t\t\t\treturn match.replace('-', '').toUpperCase();\n \t\t\t\t});\n\n options[optionName] = KTUtil.filterBoolean(element.getAttribute(attrName));\n }\n \t\t\t}\n \t\t});\n }\n\n if (options.height instanceof Function) {\n height = options.height.call();\n } else {\n if (KTUtil.isMobileDevice() === true && options.mobileHeight) {\n height = parseInt(options.mobileHeight);\n } else if (options.height) {\n height = parseInt(options.height);\n } else {\n height = parseInt(KTUtil.css(element, 'height'));\n }\n }\n\n if (height === false) {\n KTUtil.scrollDestroy(element, true);\n\n return;\n }\n\n height = parseInt(height);\n\n // Destroy scroll on table and mobile modes\n if ((options.mobileNativeScroll || options.disableForMobile) && KTUtil.isMobileDevice() === true) {\n ps = KTUtil.data(element).get('ps');\n if (ps) {\n if (options.resetHeightOnDestroy) {\n KTUtil.css(element, 'height', 'auto');\n } else {\n KTUtil.css(element, 'overflow', 'auto');\n if (height > 0) {\n KTUtil.css(element, 'height', height + 'px');\n }\n }\n\n ps.destroy();\n ps = KTUtil.data(element).remove('ps');\n } else if (height > 0){\n KTUtil.css(element, 'overflow', 'auto');\n KTUtil.css(element, 'height', height + 'px');\n }\n\n return;\n }\n\n if (height > 0) {\n KTUtil.css(element, 'height', height + 'px');\n }\n\n if (options.desktopNativeScroll) {\n KTUtil.css(element, 'overflow', 'auto');\n return;\n }\n\n // Pass options via HTML Attributes\n if (KTUtil.attr(element, 'data-window-scroll') == 'true') {\n options.windowScroll = true;\n }\n\n // Init scroll\n ps = KTUtil.data(element).get('ps');\n\n if (ps) {\n ps.update();\n } else {\n KTUtil.css(element, 'overflow', 'hidden');\n KTUtil.addClass(element, 'scroll');\n\n ps = new PerfectScrollbar(element, options);\n\n KTUtil.data(element).set('ps', ps);\n }\n\n // Remember scroll position in cookie\n var uid = KTUtil.attr(element, 'id');\n try {\n if (uid) {\n var cookie = KTCookie.getCookie(uid);\n if (options.rememberPosition === true && cookie) {\n var pos = parseInt(cookie);\n if (pos > 0) {\n element.scrollTop = pos;\n }\n element.addEventListener('ps-scroll-y', function() {\n KTCookie.setCookie(uid, element.scrollTop, {});\n });\n }\n }\n }\n catch (e) {\n console.error(e);\n }\n\n // Todo:Consider using Localstorage\n if (options.rememberPosition === true && KTCookie && uid) {\n if (KTCookie.getCookie(uid)) {\n var pos = parseInt(KTCookie.getCookie(uid));\n\n if (pos > 0) {\n element.scrollTop = pos;\n }\n }\n\n element.addEventListener('ps-scroll-y', function() {\n KTCookie.setCookie(uid, element.scrollTop);\n });\n }\n }\n\n // Init\n init();\n\n // Handle window resize\n if (options.handleWindowResize) {\n KTUtil.addResizeHandler(function() {\n init();\n });\n }\n },\n\n scrollUpdate: function(element) {\n var ps = KTUtil.data(element).get('ps');\n if (ps) {\n ps.update();\n }\n },\n\n scrollUpdateAll: function(parent) {\n var scrollers = KTUtil.findAll(parent, '.ps');\n for (var i = 0, len = scrollers.length; i < len; i++) {\n KTUtil.scrollUpdate(scrollers[i]);\n }\n },\n\n scrollDestroy: function(element, resetAll) {\n var ps = KTUtil.data(element).get('ps');\n\n if (ps) {\n ps.destroy();\n ps = KTUtil.data(element).remove('ps');\n }\n\n if (element && resetAll) {\n element.style.setProperty('overflow', '');\n element.style.setProperty('height', '');\n }\n },\n\n filterBoolean: function(val) {\n // Convert string boolean\n\t\t\tif (val === true || val === 'true') {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tif (val === false || val === 'false') {\n\t\t\t\treturn false;\n\t\t\t}\n\n return val;\n },\n\n setHTML: function(el, html) {\n el.innerHTML = html;\n },\n\n getHTML: function(el) {\n if (el) {\n return el.innerHTML;\n }\n },\n\n getDocumentHeight: function() {\n var body = document.body;\n var html = document.documentElement;\n\n return Math.max( body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight );\n },\n\n getScrollTop: function() {\n return (document.scrollingElement || document.documentElement).scrollTop;\n },\n\n changeColor: function(col, amt) {\n\n var usePound = false;\n\n if (col[0] == \"#\") {\n col = col.slice(1);\n usePound = true;\n }\n\n var num = parseInt(col,16);\n\n var r = (num >> 16) + amt;\n\n if (r > 255) r = 255;\n else if (r < 0) r = 0;\n\n var b = ((num >> 8) & 0x00FF) + amt;\n\n if (b > 255) b = 255;\n else if (b < 0) b = 0;\n\n var g = (num & 0x0000FF) + amt;\n\n if (g > 255) g = 255;\n else if (g < 0) g = 0;\n\n return (usePound?\"#\":\"\") + (g | (b << 8) | (r << 16)).toString(16);\n\n },\n\n // Throttle function: Input as function which needs to be throttled and delay is the time interval in milliseconds\n throttle: function (timer, func, delay) {\n \t// If setTimeout is already scheduled, no need to do anything\n \tif (timer) {\n \t\treturn;\n \t}\n\n \t// Schedule a setTimeout after delay seconds\n \ttimer = setTimeout(function () {\n \t\tfunc();\n\n \t\t// Once setTimeout function execution is finished, timerId = undefined so that in
    \n \t\t// the next scroll event function execution can be scheduled by the setTimeout\n \t\ttimer = undefined;\n \t}, delay);\n },\n\n // Debounce function: Input as function which needs to be debounced and delay is the debounced time in milliseconds\n debounce: function (timer, func, delay) {\n \t// Cancels the setTimeout method execution\n \tclearTimeout(timer)\n\n \t// Executes the func after delay time.\n \ttimer = setTimeout(func, delay);\n },\n\n btnWait: function(el, cls, message, disable) {\n if (!el) {\n return;\n }\n\n if (typeof disable !== 'undefined' && disable === true) {\n KTUtil.attr(el, \"disabled\", true);\n }\n\n if (cls) {\n KTUtil.addClass(el, cls);\n KTUtil.attr(el, \"wait-class\", cls);\n }\n\n if (message) {\n var caption = KTUtil.find(el, '.btn-caption');\n\n if (caption) {\n KTUtil.data(caption).set('caption', KTUtil.getHTML(caption));\n KTUtil.setHTML(caption, message);\n } else {\n KTUtil.data(el).set('caption', KTUtil.getHTML(el));\n KTUtil.setHTML(el, message);\n }\n }\n },\n\n btnRelease: function(el) {\n if (!el) {\n return;\n }\n\n /// Show loading state on button\n KTUtil.removeAttr(el, \"disabled\");\n\n if (KTUtil.hasAttr(el, \"wait-class\")) {\n KTUtil.removeClass(el, KTUtil.attr(el, \"wait-class\"));\n }\n\n var caption = KTUtil.find(el, '.btn-caption');\n\n if (caption && KTUtil.data(caption).has('caption')) {\n KTUtil.setHTML(caption, KTUtil.data(caption).get('caption'));\n } else if (KTUtil.data(el).has('caption')) {\n KTUtil.setHTML(el, KTUtil.data(el).get('caption'));\n }\n },\n\n isOffscreen: function(el, direction, offset) {\n offset = offset || 0;\n\n var windowWidth = KTUtil.getViewPort().width;\n var windowHeight = KTUtil.getViewPort().height;\n\n var top = KTUtil.offset(el).top;\n var height = KTUtil.outerHeight(el) + offset;\n var left = KTUtil.offset(el).left;\n var width = KTUtil.outerWidth(el) + offset;\n\n if (direction == 'bottom') {\n if (windowHeight < top + height) {\n return true;\n } else if (windowHeight > top + height * 1.5) {\n return true;\n }\n }\n\n if (direction == 'top') {\n if (top < 0) {\n return true;\n } else if (top > height) {\n return true;\n }\n }\n\n if (direction == 'left') {\n if (left < 0) {\n return true;\n } else if (left * 2 > width) {\n //console.log('left 2');\n //return true;\n }\n }\n\n if (direction == 'right') {\n if (windowWidth < left + width) {\n return true;\n } else {\n //console.log('right 2');\n //return true;\n }\n }\n\n return false;\n }\n }\n}();\n\n// webpack support\nif (typeof module !== 'undefined' && typeof module.exports !== 'undefined') {\n // module.exports = KTUtil;\n}\n\n// Initialize KTUtil class on document ready\nKTUtil.ready(function() {\n\tif (typeof KTAppSettings !== 'undefined') {\n\t\tKTUtil.init(KTAppSettings);\n\t} else {\n\t\tKTUtil.init();\n\t}\n});\n\n// CSS3 Transitions only after page load(.page-loading class added to body tag and remove with JS on page load)\nwindow.onload = function() {\n var result = KTUtil.getByTagName('body');\n if (result && result[0]) {\n KTUtil.removeClass(result[0], 'page-loading');\n }\n}\n","import {toAbsoluteUrl} from \"../../_helpers\";\nexport function getInitLayoutConfig() {\n return {\n demo: \"demo1\",\n js: {\n breakpoints : {\n sm: \"576\",\n md: \"768\",\n lg: \"992\",\n xl: \"1200\",\n xxl: \"1200\"\n },\n colors: {\n theme: {\n base: {\n \"white\": \"#ffffff\",\n \"primary\": \"#6993FF\",\n \"secondary\": \"#E5EAEE\",\n \"success\": \"#1BC5BD\",\n \"info\": \"#8950FC\",\n \"warning\": \"#FFA800\",\n \"danger\": \"#F64E60\",\n \"light\": \"#F3F6F9\",\n \"dark\": \"#212121\"\n },\n light: {\n \"white\": \"#ffffff\",\n \"primary\": \"#E1E9FF\",\n \"secondary\": \"#ECF0F3\",\n \"success\": \"#C9F7F5\",\n \"info\": \"#EEE5FF\",\n \"warning\": \"#FFF4DE\",\n \"danger\": \"#FFE2E5\",\n \"light\": \"#F3F6F9\",\n \"dark\": \"#D6D6E0\"\n },\n inverse: {\n \"white\": \"#ffffff\",\n \"primary\": \"#ffffff\",\n \"secondary\": \"#212121\",\n \"success\": \"#ffffff\",\n \"info\": \"#ffffff\",\n \"warning\": \"#ffffff\",\n \"danger\": \"#ffffff\",\n \"light\": \"#464E5F\",\n \"dark\": \"#ffffff\"\n }\n },\n gray: {\n \"gray100\": \"#F3F6F9\",\n \"gray200\": \"#ECF0F3\",\n \"gray300\": \"#E5EAEE\",\n \"gray400\": \"#D6D6E0\",\n \"gray500\": \"#B5B5C3\",\n \"gray600\": \"#80808F\",\n \"gray700\": \"#464E5F\",\n \"gray800\": \"#1B283F\",\n \"gray900\": \"#212121\"\n }\n },\n fontFamily: \"Poppins\"\n },\n // == Page Splash Screen loading\n loader: {\n enabled: true,\n type: \"\", // default|spinner-message|spinner-logo\n logo: toAbsoluteUrl(\"/media/logos/logo-dark-sm.png\"),\n message: \"Cargando...\"\n },\n // page toolbar\n toolbar: {\n display: false\n },\n header: {\n self: {\n width: \"fluid\", // fixed|fluid\n theme: \"light\", // light|dark\n fixed: {\n desktop: true,\n mobile: true\n }\n },\n menu: {\n self: {\n display: false,\n layout: \"default\", // tab/default\n \"root-arrow\": false,\n \"icon-style\": \"duotone\" // duotone, line, bold, solid\n },\n desktop: {\n arrow: true,\n toggle: \"click\",\n submenu: {\n theme: \"light\", // light|dark\n arrow: true\n }\n },\n mobile: {\n submenu: {\n theme: \"dark\",\n accordion: true\n }\n }\n }\n },\n subheader: {\n display: false,\n displayDesc: false,\n displayDaterangepicker: true,\n layout: \"subheader-v1\",\n fixed: true,\n width: \"fluid\", // fixed/fluid,\n clear: false,\n style: \"solid\" // solid/transparent\n },\n content: {\n width: \"fixed\" // fluid|fixed\n },\n brand: {\n self: {\n theme: \"light\" // light/dark\n }\n },\n aside: {\n self: {\n theme: \"light\", // light/dark\n display: false,\n fixed: true,\n minimize: {\n toggle: true, // allow toggle\n default: false, // default state\n hoverable: true // allow hover\n }\n },\n footer: {\n self: {\n display: true\n }\n },\n menu: {\n dropdown: false, // ok\n scroll: true, // ok\n \"icon-style\": \"duotone\", // duotone, line, bold, solid\n submenu: {\n accordion: true,\n dropdown: {\n arrow: true,\n \"hover-timeout\": 500 // in milliseconds\n }\n }\n }\n },\n footer: {\n self: {\n fixed: true,\n width: \"fixed\" // fluid, fixed\n }\n },\n extras: {\n search: {\n display: false,\n layout: \"dropdown\", // offcanvas, dropdown\n offcanvas: {\n direction: \"right\"\n }\n },\n notifications: {\n display: false,\n layout: \"dropdown\", // offcanvas, dropdown\n dropdown: {\n style: \"dark\" // light, dark\n },\n offcanvas: {\n directions: \"right\"\n }\n },\n \"quick-actions\": {\n display: false,\n layout: \"dropdown\", // offcanvas, dropdown,\n dropdown: {\n style: \"dark\", // light, dark\n },\n offcanvas: {\n directions: \"right\"\n }\n },\n user: {\n display: true,\n layout: \"dropdown\", // offcanvas, dropdown\n dropdown: {\n style: \"light\" // light, dark\n },\n offcanvas: {\n directions: \"right\"\n }\n },\n languages: {\n display: false\n },\n cart: {\n display: false,\n dropdown: {\n style: \"dark\", // ligth, dark\n }\n },\n \"quick-panel\": {\n display: false,\n offcanvas: {\n directions: \"right\"\n }\n },\n chat: {\n display: false\n },\n toolbar: {\n display: false\n },\n scrolltop: {\n display: true\n }\n }\n };\n}\n","/* eslint-disable no-restricted-imports */\n/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React, { useMemo } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport Dropdown from \"react-bootstrap/Dropdown\";\n//import { useSelector } from \"react-redux\";\nimport objectPath from \"object-path\";\nimport { useHtmlClassService } from \"../../../_core/MetronicLayout\";\nimport { toAbsoluteUrl } from \"../../../../_helpers\";\nimport { DropdownTopbarItemToggler } from \"../../../../_partials/dropdowns\";\nimport UserInfo from \"../../../../../utils/userInfo\";\n\nexport function UserProfileDropdown() {\n //const { user } = useSelector((state) => state.auth);\n const userInfo = UserInfo();\n\n const uiService = useHtmlClassService();\n const layoutProps = useMemo(() => {\n return {\n light:\n objectPath.get(uiService.config, \"extras.user.dropdown.style\") ===\n \"light\",\n };\n }, [uiService]);\n\n return (\n \n \n \n \n Hola,\n {\" \"}\n {userInfo && (\n <>\n \n {/* {user.fullname} */}\n {userInfo.email.split('@')[0]}\n \n \n \n {/* {user.fullname[0]} */}\n {userInfo.email[0].toUpperCase()}\n \n \n \n )}\n \n \n \n <>\n {/** ClassName should be 'dropdown-menu p-0 m-0 dropdown-menu-right dropdown-menu-anim dropdown-menu-top-unround dropdown-menu-xl' */}\n {layoutProps.light && (\n <>\n
    \n
    \n \"User\n
    \n
    \n {userInfo && userInfo.email}\n
    \n {/* \n 3 messages\n */}\n
    \n
    \n \n )}\n\n {!layoutProps.light && (\n \n
    \n \n S\n \n {/*\"Pic\"*/}\n
    \n
    \n Sean Stone\n
    \n \n 3 messages\n \n \n )}\n \n\n \n
    \n
    \n );\n}\n","\nexport default function UserInfo() {\n const auth = sessionStorage.getItem(`oidc.user:${process.env.REACT_APP_AUTH_URL}:${process.env.REACT_APP_IDENTITY_CLIENT_ID}`);\n let authParse;\n if(auth){\n authParse = JSON.parse(auth);\n }\n let userInfo = {};\n if (authParse && authParse.profile) {\n userInfo.email = authParse.profile.email\n }\n\n return userInfo;\n};","import React, {useMemo} from \"react\";\nimport {Link} from \"react-router-dom\";\nimport objectPath from \"object-path\";\n//import SVG from \"react-inlinesvg\";\n//import {toAbsoluteUrl} from \"../../../_helpers\";\nimport {useHtmlClassService} from \"../../_core/MetronicLayout\";\nimport {UserProfileDropdown} from \"../extras/dropdowns/UserProfileDropdown\";\n\nexport function HeaderMobile({sinUser}) {\n const uiService = useHtmlClassService();\n\n const layoutProps = useMemo(() => {\n return {\n headerLogo: uiService.getStickyLogo(),\n asideDisplay: objectPath.get(uiService.config, \"aside.self.display\"),\n headerMenuSelfDisplay:\n objectPath.get(uiService.config, \"header.menu.self.display\") === true,\n headerMobileCssClasses: uiService.getClasses(\"header_mobile\", true),\n headerMobileAttributes: uiService.getAttributes(\"header_mobile\")\n };\n }, [uiService]);\n\n return (\n <>\n {/*begin::Header Mobile*/}\n \n {/*begin::Logo*/}\n \n \"logo\"\n \n {/*end::Logo*/}\n\n {/*begin::Toolbar*/}\n
    \n {layoutProps.asideDisplay && (\n <>\n {/*begin::Aside Mobile Toggle*/}\n \n {/*end::Aside Mobile Toggle*/}\n \n )}\n\n {layoutProps.headerMenuSelfDisplay && (\n <>\n {/*begin::Header Menu Mobile Toggle*/}\n \n {/*end::Header Menu Mobile Toggle*/}\n \n )}\n\n {/*begin::Topbar Mobile Toggle*/}\n {/* \n \n \n \n */}\n {/*end::Topbar Mobile Toggle*/}\n \n {!(!!sinUser) && (\n \n )}\n\n
    \n {/*end::Toolbar*/}\n \n {/*end::Header Mobile*/}\n \n );\n}\n","import React, {useMemo} from \"react\";\nimport {useHtmlClassService} from \"../../_core/MetronicLayout\";\n\nexport function Footer() {\n const today = new Date().getFullYear();\n const uiService = useHtmlClassService();\n\n const layoutProps = useMemo(() => {\n return {\n footerClasses: uiService.getClasses(\"footer\", true),\n footerContainerClasses: uiService.getClasses(\"footer_container\", true)\n };\n }, [uiService]);\n\n return (\n \n \n
    \n {today.toString()} ©{\" \"}\n \n Ministerio de Educación Corrientes\n \n
    \n
    \n \n Acerca de\n \n {/* \n Team\n */}\n \n Contacto\n \n
    \n \n \n );\n}\n","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./util\";\n\n// Component Definition\nvar KTMenu = function(elementId, options) {\n // Main object\n var the = this;\n var init = false;\n\n // Get element object\n var element = KTUtil.getById(elementId);\n var body = KTUtil.getBody();\n\n if (!element) {\n return;\n }\n\n // Default options\n var defaultOptions = {\n // scrollable area with Perfect Scroll\n scroll: {\n rememberPosition: false\n },\n\n // accordion submenu mode\n accordion: {\n slideSpeed: 200, // accordion toggle slide speed in milliseconds\n autoScroll: false, // enable auto scrolling(focus) to the clicked menu item\n autoScrollSpeed: 1200,\n expandAll: true // allow having multiple expanded accordions in the menu\n },\n\n // dropdown submenu mode\n dropdown: {\n timeout: 500 // timeout in milliseconds to show and hide the hoverable submenu dropdown\n }\n };\n\n ////////////////////////////\n // ** Private Methods ** //\n ////////////////////////////\n\n var Plugin = {\n /**\n * Run plugin\n * @returns {KTMenu}\n */\n construct: function(options) {\n if (KTUtil.data(element).has('menu')) {\n the = KTUtil.data(element).get('menu');\n } else {\n // reset menu\n Plugin.init(options);\n\n // reset menu\n Plugin.reset();\n\n // build menu\n Plugin.build();\n\n KTUtil.data(element).set('menu', the);\n }\n\n return the;\n },\n\n /**\n * Handles submenu click toggle\n * @returns {KTMenu}\n */\n init: function(options) {\n the.events = [];\n\n the.eventHandlers = {};\n\n // merge default and user defined options\n the.options = KTUtil.deepExtend({}, defaultOptions, options);\n\n // pause menu\n the.pauseDropdownHoverTime = 0;\n\n the.uid = KTUtil.getUniqueID();\n },\n\n update: function(options) {\n // merge default and user defined options\n the.options = KTUtil.deepExtend({}, defaultOptions, options);\n\n // pause menu\n the.pauseDropdownHoverTime = 0;\n\n // reset menu\n Plugin.reset();\n\n the.eventHandlers = {};\n\n // build menu\n Plugin.build();\n\n KTUtil.data(element).set('menu', the);\n },\n\n reload: function() {\n // reset menu\n Plugin.reset();\n\n // build menu\n Plugin.build();\n\n // reset submenu props\n Plugin.resetSubmenuProps();\n },\n\n /**\n * Reset menu\n * @returns {KTMenu}\n */\n build: function() {\n // General accordion submenu toggle\n the.eventHandlers['event_1'] = KTUtil.on( element, '.menu-toggle', 'click', Plugin.handleSubmenuAccordion);\n\n // Dropdown mode(hoverable)\n if (Plugin.getSubmenuMode() === 'dropdown' || Plugin.isConditionalSubmenuDropdown()) {\n // dropdown submenu - hover toggle\n the.eventHandlers['event_2'] = KTUtil.on( element, '[data-menu-toggle=\"hover\"]', 'mouseover', Plugin.handleSubmenuDrodownHoverEnter);\n the.eventHandlers['event_3'] = KTUtil.on( element, '[data-menu-toggle=\"hover\"]', 'mouseout', Plugin.handleSubmenuDrodownHoverExit);\n\n // dropdown submenu - click toggle\n the.eventHandlers['event_4'] = KTUtil.on( element, '[data-menu-toggle=\"click\"] > .menu-toggle, [data-menu-toggle=\"click\"] > .menu-link .menu-toggle', 'click', Plugin.handleSubmenuDropdownClick);\n the.eventHandlers['event_5'] = KTUtil.on( element, '[data-menu-toggle=\"tab\"] > .menu-toggle, [data-menu-toggle=\"tab\"] > .menu-link .menu-toggle', 'click', Plugin.handleSubmenuDropdownTabClick);\n }\n\n // Handle general link click\n the.eventHandlers['event_6'] = KTUtil.on(element, '.menu-item > .menu-link:not(.menu-toggle):not(.menu-link-toggle-skip)', 'click', Plugin.handleLinkClick);\n\n // Init scrollable menu\n if (the.options.scroll && the.options.scroll.height) {\n Plugin.scrollInit();\n }\n },\n\n /**\n * Reset menu\n * @returns {KTMenu}\n */\n reset: function() {\n KTUtil.off( element, 'click', the.eventHandlers['event_1']);\n\n // dropdown submenu - hover toggle\n KTUtil.off( element, 'mouseover', the.eventHandlers['event_2']);\n KTUtil.off( element, 'mouseout', the.eventHandlers['event_3']);\n\n // dropdown submenu - click toggle\n KTUtil.off( element, 'click', the.eventHandlers['event_4']);\n KTUtil.off( element, 'click', the.eventHandlers['event_5']);\n\n // handle link click\n KTUtil.off(element, 'click', the.eventHandlers['event_6']);\n },\n\n /**\n * Init scroll menu\n *\n */\n scrollInit: function() {\n if ( the.options.scroll && the.options.scroll.height ) {\n KTUtil.scrollDestroy(element, true);\n KTUtil.scrollInit(element, {mobileNativeScroll: true, windowScroll: false, resetHeightOnDestroy: true, handleWindowResize: true, height: the.options.scroll.height, rememberPosition: the.options.scroll.rememberPosition});\n } else {\n KTUtil.scrollDestroy(element, true);\n }\n },\n\n /**\n * Update scroll menu\n */\n scrollUpdate: function() {\n if ( the.options.scroll && the.options.scroll.height ) {\n KTUtil.scrollUpdate(element);\n }\n },\n\n /**\n * Scroll top\n */\n scrollTop: function() {\n if ( the.options.scroll && the.options.scroll.height ) {\n KTUtil.scrollTop(element);\n }\n },\n\n /**\n * Get submenu mode for current breakpoint and menu state\n * @returns {KTMenu}\n */\n getSubmenuMode: function(el) {\n if ( KTUtil.isBreakpointUp('lg') ) {\n if (el && KTUtil.hasAttr(el, 'data-menu-toggle') && KTUtil.attr(el, 'data-menu-toggle') == 'hover') {\n return 'dropdown';\n }\n\n if ( KTUtil.isset(the.options.submenu, 'desktop.state.body') ) {\n if ( KTUtil.hasClasses(body, the.options.submenu.desktop.state.body) ) {\n return the.options.submenu.desktop.state.mode;\n } else {\n return the.options.submenu.desktop.default;\n }\n } else if ( KTUtil.isset(the.options.submenu, 'desktop') ) {\n return the.options.submenu.desktop;\n }\n } else if ( KTUtil.isBreakpointUp('md') && KTUtil.isBreakpointDown('lg') && KTUtil.isset(the.options.submenu, 'tablet') ) {\n return the.options.submenu.tablet;\n } else if ( KTUtil.isBreakpointDown('md') && KTUtil.isset(the.options.submenu, 'mobile') ) {\n return the.options.submenu.mobile;\n } else {\n return false;\n }\n },\n\n /**\n * Get submenu mode for current breakpoint and menu state\n * @returns {KTMenu}\n */\n isConditionalSubmenuDropdown: function() {\n if ( KTUtil.isBreakpointUp('lg') && KTUtil.isset(the.options.submenu, 'desktop.state.body') ) {\n return true;\n } else {\n return false;\n }\n },\n\n\n /**\n * Reset submenu attributes\n * @returns {KTMenu}\n */\n resetSubmenuProps: function(e) {\n var submenus = KTUtil.findAll(element, '.menu-submenu');\n if ( submenus ) {\n for (var i = 0, len = submenus.length; i < len; i++) {\n var submenu = submenus[0];\n\n KTUtil.css(submenu, 'display', '');\n KTUtil.css(submenu, 'overflow', '');\n\n if (submenu.hasAttribute('data-hor-direction')) {\n KTUtil.removeClass(submenu, 'menu-submenu-left');\n KTUtil.removeClass(submenu, 'menu-submenu-right');\n KTUtil.addClass(submenu, submenu.getAttribute('data-hor-direction'));\n }\n }\n }\n },\n\n /**\n * Handles submenu hover toggle\n * @returns {KTMenu}\n */\n handleSubmenuDrodownHoverEnter: function(e) {\n if ( Plugin.getSubmenuMode(this) === 'accordion' ) {\n return;\n }\n\n if ( the.resumeDropdownHover() === false ) {\n return;\n }\n\n var item = this;\n\n if ( item.getAttribute('data-hover') == '1' ) {\n item.removeAttribute('data-hover');\n clearTimeout( item.getAttribute('data-timeout') );\n item.removeAttribute('data-timeout');\n }\n\n Plugin.showSubmenuDropdown(item);\n },\n\n /**\n * Handles submenu hover toggle\n * @returns {KTMenu}\n */\n handleSubmenuDrodownHoverExit: function(e) {\n if ( the.resumeDropdownHover() === false ) {\n return;\n }\n\n if ( Plugin.getSubmenuMode(this) === 'accordion' ) {\n return;\n }\n\n var item = this;\n var time = the.options.dropdown.timeout;\n\n var timeout = setTimeout(function() {\n if ( item.getAttribute('data-hover') == '1' ) {\n Plugin.hideSubmenuDropdown(item, true);\n }\n }, time);\n\n item.setAttribute('data-hover', '1');\n item.setAttribute('data-timeout', timeout);\n },\n\n /**\n * Handles submenu click toggle\n * @returns {KTMenu}\n */\n handleSubmenuDropdownClick: function(e) {\n if ( Plugin.getSubmenuMode(this) === 'accordion' ) {\n return;\n }\n\n var item = this.closest('.menu-item');\n\n // Trigger click event handlers\n var result = Plugin.eventTrigger('submenuToggle', this, e);\n if (result === false) {\n return;\n }\n\n if ( item.getAttribute('data-menu-submenu-mode') == 'accordion' ) {\n return;\n }\n\n if ( KTUtil.hasClass(item, 'menu-item-hover') === false ) {\n KTUtil.addClass(item, 'menu-item-open-dropdown');\n Plugin.showSubmenuDropdown(item);\n } else {\n KTUtil.removeClass(item, 'menu-item-open-dropdown' );\n Plugin.hideSubmenuDropdown(item, true);\n }\n\n e.preventDefault();\n },\n\n /**\n * Handles tab click toggle\n * @returns {KTMenu}\n */\n handleSubmenuDropdownTabClick: function(e) {\n if (Plugin.getSubmenuMode(this) === 'accordion') {\n return;\n }\n var item = this.closest('.menu-item');\n\n // Trigger click event handlers\n var result = Plugin.eventTrigger('submenuToggle', this, e);\n if (result === false) {\n return;\n }\n\n if (item.getAttribute('data-menu-submenu-mode') == 'accordion') {\n return;\n }\n\n if (KTUtil.hasClass(item, 'menu-item-hover') == false) {\n KTUtil.addClass(item, 'menu-item-open-dropdown');\n Plugin.showSubmenuDropdown(item);\n }\n\n e.preventDefault();\n },\n\n /**\n * Handles link click\n * @returns {KTMenu}\n */\n handleLinkClick: function(e) {\n var submenu = this.closest('.menu-item.menu-item-submenu');\n\n // Trigger click event handlers\n var result = Plugin.eventTrigger('linkClick', this, e);\n if (result === false) {\n return;\n }\n\n if ( submenu && Plugin.getSubmenuMode(submenu) === 'dropdown' ) {\n Plugin.hideSubmenuDropdowns();\n }\n },\n\n /**\n * Handles submenu dropdown close on link click\n * @returns {KTMenu}\n */\n handleSubmenuDropdownClose: function(e, el) {\n // exit if its not submenu dropdown mode\n if (Plugin.getSubmenuMode(el) === 'accordion') {\n return;\n }\n\n var shown = element.querySelectorAll('.menu-item.menu-item-submenu.menu-item-hover:not(.menu-item-tabs)');\n\n // check if currently clicked link's parent item ha\n if (shown.length > 0 && KTUtil.hasClass(el, 'menu-toggle') === false && el.querySelectorAll('.menu-toggle').length === 0) {\n // close opened dropdown menus\n for (var i = 0, len = shown.length; i < len; i++) {\n Plugin.hideSubmenuDropdown(shown[0], true);\n }\n }\n },\n\n /**\n * helper functions\n * @returns {KTMenu}\n */\n handleSubmenuAccordion: function(e, el) {\n var query;\n var item = el ? el : this;\n\n // Trigger click event handlers\n var result = Plugin.eventTrigger('submenuToggle', this, e);\n if (result === false) {\n return;\n }\n\n if ( Plugin.getSubmenuMode(el) === 'dropdown' && (query = item.closest('.menu-item') ) ) {\n if (query.getAttribute('data-menu-submenu-mode') != 'accordion' ) {\n e.preventDefault();\n return;\n }\n }\n\n var li = item.closest('.menu-item');\n var submenu = KTUtil.child(li, '.menu-submenu, .menu-inner');\n\n if (KTUtil.hasClass(item.closest('.menu-item'), 'menu-item-open-always')) {\n return;\n }\n\n if ( li && submenu ) {\n e.preventDefault();\n var speed = the.options.accordion.slideSpeed;\n var hasClosables = false;\n\n if ( KTUtil.hasClass(li, 'menu-item-open') === false ) {\n // hide other accordions\n if ( the.options.accordion.expandAll === false ) {\n var subnav = item.closest('.menu-nav, .menu-subnav');\n var closables = KTUtil.children(subnav, '.menu-item.menu-item-open.menu-item-submenu:not(.menu-item-here):not(.menu-item-open-always)');\n\n if ( subnav && closables ) {\n for (var i = 0, len = closables.length; i < len; i++) {\n var el_ = closables[0];\n var submenu_ = KTUtil.child(el_, '.menu-submenu');\n if ( submenu_ ) {\n KTUtil.slideUp(submenu_, speed, function() {\n Plugin.scrollUpdate();\n KTUtil.removeClass(el_, 'menu-item-open');\n });\n }\n }\n }\n }\n\n KTUtil.slideDown(submenu, speed, function() {\n Plugin.scrollToItem(item);\n Plugin.scrollUpdate();\n\n Plugin.eventTrigger('submenuToggle', submenu, e);\n });\n\n KTUtil.addClass(li, 'menu-item-open');\n\n } else {\n KTUtil.slideUp(submenu, speed, function() {\n Plugin.scrollToItem(item);\n Plugin.eventTrigger('submenuToggle', submenu, e);\n });\n\n KTUtil.removeClass(li, 'menu-item-open');\n }\n }\n },\n\n /**\n * scroll to item function\n * @returns {KTMenu}\n */\n scrollToItem: function(item) {\n // handle auto scroll for accordion submenus\n if ( KTUtil.isBreakpointUp('lg') && the.options.accordion.autoScroll && element.getAttribute('data-menu-scroll') !== '1' ) {\n KTUtil.scrollTo(item, the.options.accordion.autoScrollSpeed);\n }\n },\n\n /**\n * Hide submenu dropdown\n * @returns {KTMenu}\n */\n hideSubmenuDropdown: function(item, classAlso) {\n // remove submenu activation class\n if ( classAlso ) {\n KTUtil.removeClass(item, 'menu-item-hover');\n KTUtil.removeClass(item, 'menu-item-active-tab');\n }\n\n // clear timeout\n item.removeAttribute('data-hover');\n\n if ( item.getAttribute('data-menu-toggle-class') ) {\n KTUtil.removeClass(body, item.getAttribute('data-menu-toggle-class'));\n }\n\n var timeout = item.getAttribute('data-timeout');\n item.removeAttribute('data-timeout');\n clearTimeout(timeout);\n },\n\n /**\n * Hide submenu dropdowns\n * @returns {KTMenu}\n */\n hideSubmenuDropdowns: function() {\n var items;\n if ( items = element.querySelectorAll('.menu-item-submenu.menu-item-hover:not(.menu-item-tabs):not([data-menu-toggle=\"tab\"])') ) {\n for (var j = 0, cnt = items.length; j < cnt; j++) {\n Plugin.hideSubmenuDropdown(items[j], true);\n }\n }\n },\n\n /**\n * helper functions\n * @returns {KTMenu}\n */\n showSubmenuDropdown: function(item) {\n // close active submenus\n var list = element.querySelectorAll('.menu-item-submenu.menu-item-hover, .menu-item-submenu.menu-item-active-tab');\n\n if ( list ) {\n for (var i = 0, len = list.length; i < len; i++) {\n var el = list[i];\n if ( item !== el && el.contains(item) === false && item.contains(el) === false ) {\n Plugin.hideSubmenuDropdown(el, true);\n }\n }\n }\n\n // add submenu activation class\n KTUtil.addClass(item, 'menu-item-hover');\n\n // Change the alignment of submenu is offscreen.\n var submenu = KTUtil.find(item, '.menu-submenu');\n\n if (submenu && submenu.hasAttribute('data-hor-direction') === false) {\n if (KTUtil.hasClass(submenu, 'menu-submenu-left')) {\n submenu.setAttribute('data-hor-direction', 'menu-submenu-left');\n } else if (KTUtil.hasClass(submenu, 'menu-submenu-right')) {\n submenu.setAttribute('data-hor-direction', 'menu-submenu-right');\n }\n }\n\n if ( submenu && KTUtil.isOffscreen(submenu, 'left', 15) === true ) {\n KTUtil.removeClass(submenu, 'menu-submenu-left');\n KTUtil.addClass(submenu, 'menu-submenu-right');\n } else if ( submenu && KTUtil.isOffscreen(submenu, 'right', 15) === true ) {\n KTUtil.removeClass(submenu, 'menu-submenu-right');\n KTUtil.addClass(submenu, 'menu-submenu-left');\n }\n\n if ( item.getAttribute('data-menu-toggle-class') ) {\n KTUtil.addClass(body, item.getAttribute('data-menu-toggle-class'));\n }\n },\n\n /**\n * Handles submenu slide toggle\n * @returns {KTMenu}\n */\n createSubmenuDropdownClickDropoff: function(el) {\n var query;\n var zIndex = (query = KTUtil.child(el, '.menu-submenu') ? KTUtil.css(query, 'z-index') : 0) - 1;\n\n var dropoff = document.createElement('
    ');\n\n body.appendChild(dropoff);\n\n KTUtil.addEvent(dropoff, 'click', function(e) {\n e.stopPropagation();\n e.preventDefault();\n KTUtil.remove(this);\n Plugin.hideSubmenuDropdown(el, true);\n });\n },\n\n /**\n * Handles submenu hover toggle\n * @returns {KTMenu}\n */\n pauseDropdownHover: function(time) {\n var date = new Date();\n\n the.pauseDropdownHoverTime = date.getTime() + time;\n },\n\n /**\n * Handles submenu hover toggle\n * @returns {KTMenu}\n */\n resumeDropdownHover: function() {\n var date = new Date();\n\n return (date.getTime() > the.pauseDropdownHoverTime ? true : false);\n },\n\n /**\n * Reset menu's current active item\n * @returns {KTMenu}\n */\n resetActiveItem: function(item) {\n var list;\n var parents;\n\n list = element.querySelectorAll('.menu-item-active');\n\n for (var i = 0, len = list.length; i < len; i++) {\n var el = list[0];\n KTUtil.removeClass(el, 'menu-item-active');\n KTUtil.hide( KTUtil.child(el, '.menu-submenu') );\n parents = KTUtil.parents(el, '.menu-item-submenu') || [];\n\n for (var i_ = 0, len_ = parents.length; i_ < len_; i_++) {\n var el_ = parents[i];\n KTUtil.removeClass(el_, 'menu-item-open');\n KTUtil.hide( KTUtil.child(el_, '.menu-submenu') );\n }\n }\n\n // close open submenus\n if ( the.options.accordion.expandAll === false ) {\n if ( list = element.querySelectorAll('.menu-item-open') ) {\n for (var i = 0, len = list.length; i < len; i++) {\n KTUtil.removeClass(parents[0], 'menu-item-open');\n }\n }\n }\n },\n\n /**\n * Sets menu's active item\n * @returns {KTMenu}\n */\n setActiveItem: function(item) {\n // reset current active item\n Plugin.resetActiveItem();\n\n var parents = KTUtil.parents(item, '.menu-item-submenu') || [];\n for (var i = 0, len = parents.length; i < len; i++) {\n KTUtil.addClass(parents[i], 'menu-item-open');\n }\n\n KTUtil.addClass(item, 'menu-item-active');\n },\n\n /**\n * Returns page breadcrumbs for the menu's active item\n * @returns {KTMenu}\n */\n getBreadcrumbs: function(item) {\n var query;\n var breadcrumbs = [];\n var link = KTUtil.child(item, '.menu-link');\n\n breadcrumbs.push({\n text: (query = KTUtil.child(link, '.menu-text') ? query.innerHTML : ''),\n title: link.getAttribute('title'),\n href: link.getAttribute('href')\n });\n\n var parents = KTUtil.parents(item, '.menu-item-submenu');\n for (var i = 0, len = parents.length; i < len; i++) {\n var submenuLink = KTUtil.child(parents[i], '.menu-link');\n\n breadcrumbs.push({\n text: (query = KTUtil.child(submenuLink, '.menu-text') ? query.innerHTML : ''),\n title: submenuLink.getAttribute('title'),\n href: submenuLink.getAttribute('href')\n });\n }\n\n return breadcrumbs.reverse();\n },\n\n /**\n * Returns page title for the menu's active item\n * @returns {KTMenu}\n */\n getPageTitle: function(item) {\n var query;\n\n return (query = KTUtil.child(item, '.menu-text') ? query.innerHTML : '');\n },\n\n /**\n * Trigger events\n */\n eventTrigger: function(name, target, e) {\n for (var i = 0; i < the.events.length; i++ ) {\n var event = the.events[i];\n if ( event.name == name ) {\n if ( event.one == true ) {\n if ( event.fired == false ) {\n the.events[i].fired = true;\n return event.handler.call(this, target, e);\n }\n } else {\n return event.handler.call(this, target, e);\n }\n }\n }\n },\n\n addEvent: function(name, handler, one) {\n the.events.push({\n name: name,\n handler: handler,\n one: one,\n fired: false\n });\n },\n\n removeEvent: function(name) {\n if (the.events[name]) {\n delete the.events[name];\n }\n }\n };\n\n //////////////////////////\n // ** Public Methods ** //\n //////////////////////////\n\n /**\n * Set default options\n */\n\n the.setDefaults = function(options) {\n defaultOptions = options;\n };\n\n /**\n * Update scroll\n */\n the.scrollUpdate = function() {\n return Plugin.scrollUpdate();\n };\n\n /**\n * Re-init scroll\n */\n the.scrollReInit = function() {\n return Plugin.scrollInit();\n };\n\n /**\n * Scroll top\n */\n the.scrollTop = function() {\n return Plugin.scrollTop();\n };\n\n /**\n * Set active menu item\n */\n the.setActiveItem = function(item) {\n return Plugin.setActiveItem(item);\n };\n\n the.reload = function() {\n return Plugin.reload();\n };\n\n the.update = function(options) {\n return Plugin.update(options);\n };\n\n /**\n * Set breadcrumb for menu item\n */\n the.getBreadcrumbs = function(item) {\n return Plugin.getBreadcrumbs(item);\n };\n\n /**\n * Set page title for menu item\n */\n the.getPageTitle = function(item) {\n return Plugin.getPageTitle(item);\n };\n\n /**\n * Get submenu mode\n */\n the.getSubmenuMode = function(el) {\n return Plugin.getSubmenuMode(el);\n };\n\n /**\n * Hide dropdown\n * @returns {Object}\n */\n the.hideDropdown = function(item) {\n Plugin.hideSubmenuDropdown(item, true);\n };\n\n /**\n * Hide dropdowns\n * @returns {Object}\n */\n the.hideDropdowns = function() {\n Plugin.hideSubmenuDropdowns();\n };\n\n /**\n * Disable menu for given time\n * @returns {Object}\n */\n the.pauseDropdownHover = function(time) {\n Plugin.pauseDropdownHover(time);\n };\n\n /**\n * Disable menu for given time\n * @returns {Object}\n */\n the.resumeDropdownHover = function() {\n return Plugin.resumeDropdownHover();\n };\n\n /**\n * Register event\n */\n the.on = function(name, handler) {\n return Plugin.addEvent(name, handler);\n };\n\n the.off = function(name) {\n return Plugin.removeEvent(name);\n };\n\n the.one = function(name, handler) {\n return Plugin.addEvent(name, handler, true);\n };\n\n ///////////////////////////////\n // ** Plugin Construction ** //\n ///////////////////////////////\n\n // Run plugin\n Plugin.construct.apply(the, [options]);\n\n // Handle plugin on window resize\n KTUtil.addResizeHandler(function() {\n if (init) {\n the.reload();\n }\n });\n\n // Init done\n init = true;\n\n // Return plugin instance\n return the;\n};\n\n// webpack support\nif (typeof module !== 'undefined' && typeof module.exports !== 'undefined') {\n // module.exports = KTMenu;\n}\n\n// Plugin global lazy initialization\ndocument.addEventListener(\"click\", function (e) {\n var body = KTUtil.getByTagName('body')[0];\n var query;\n if ( query = body.querySelectorAll('.menu-nav .menu-item.menu-item-submenu.menu-item-hover:not(.menu-item-tabs)[data-menu-toggle=\"click\"]') ) {\n for (var i = 0, len = query.length; i < len; i++) {\n var element = query[i].closest('.menu-nav').parentNode;\n\n if ( element ) {\n var the = KTUtil.data(element).get('menu');\n\n if ( !the ) {\n break;\n }\n\n if ( !the || the.getSubmenuMode() !== 'dropdown' ) {\n break;\n }\n\n if ( e.target !== element && element.contains(e.target) === false ) {\n the.hideDropdowns();\n }\n }\n }\n }\n});\n\nexport default KTMenu;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./util\";\n\n// Component Definition\nvar KTToggle = function(toggleElement, targetElement, options) {\n // Main object\n var the = this;\n var init = false;\n\n // Get element object\n var element = toggleElement;\n var target = targetElement;\n\n if (!element) {\n return;\n }\n\n // Default options\n var defaultOptions = {\n targetToggleMode: 'class' // class|attribute\n };\n\n ////////////////////////////\n // ** Private Methods ** //\n ////////////////////////////\n\n var Plugin = {\n /**\n * Construct\n */\n\n construct: function(options) {\n if (KTUtil.data(element).has('toggle')) {\n the = KTUtil.data(element).get('toggle');\n } else {\n // reset menu\n Plugin.init(options);\n\n // build menu\n Plugin.build();\n\n KTUtil.data(element).set('toggle', the);\n }\n\n return the;\n },\n\n /**\n * Handles subtoggle click toggle\n */\n init: function(options) {\n the.element = element;\n the.events = [];\n\n // Merge default and user defined options\n the.options = KTUtil.deepExtend({}, defaultOptions, options);\n\n //alert(the.options.target.tagName);\n the.target = target;\n\n the.targetState = the.options.targetState;\n the.toggleState = the.options.toggleState;\n\n if (the.options.targetToggleMode == 'class') {\n the.state = KTUtil.hasClasses(the.target, the.targetState) ? 'on' : 'off';\n } else {\n the.state = KTUtil.hasAttr(the.target, 'data-' + the.targetState) ? KTUtil.attr(the.target, 'data-' + the.targetState) : 'off';\n }\n },\n\n /**\n * Setup toggle\n */\n build: function() {\n KTUtil.addEvent(element, 'mouseup', Plugin.toggle);\n },\n\n /**\n * Handles offcanvas click toggle\n */\n toggle: function(e) {\n Plugin.eventTrigger('beforeToggle');\n\n if (the.state == 'off') {\n Plugin.toggleOn();\n } else {\n Plugin.toggleOff();\n }\n\n Plugin.eventTrigger('afterToggle');\n\n e.preventDefault();\n\n return the;\n },\n\n /**\n * Handles toggle click toggle\n */\n toggleOn: function() {\n Plugin.eventTrigger('beforeOn');\n\n if (the.options.targetToggleMode == 'class') {\n KTUtil.addClass(the.target, the.targetState);\n } else {\n KTUtil.attr(the.target, 'data-' + the.targetState, 'on');\n }\n\n if (the.toggleState) {\n KTUtil.addClass(element, the.toggleState);\n }\n\n the.state = 'on';\n\n Plugin.eventTrigger('afterOn');\n\n Plugin.eventTrigger('toggle');\n\n return the;\n },\n\n /**\n * Handles toggle click toggle\n */\n toggleOff: function() {\n Plugin.eventTrigger('beforeOff');\n\n if (the.options.targetToggleMode == 'class') {\n KTUtil.removeClass(the.target, the.targetState);\n } else {\n KTUtil.removeAttr(the.target, 'data-' + the.targetState);\n }\n\n if (the.toggleState) {\n KTUtil.removeClass(element, the.toggleState);\n }\n\n the.state = 'off';\n\n Plugin.eventTrigger('afterOff');\n\n Plugin.eventTrigger('toggle');\n\n return the;\n },\n\n /**\n * Trigger events\n */\n eventTrigger: function(name) {\n for (var i = 0; i < the.events.length; i++) {\n var event = the.events[i];\n\n if (event.name == name) {\n if (event.one == true) {\n if (event.fired == false) {\n the.events[i].fired = true;\n return event.handler.call(this, the);\n }\n } else {\n return event.handler.call(this, the);\n }\n }\n }\n },\n\n addEvent: function(name, handler, one) {\n the.events.push({\n name: name,\n handler: handler,\n one: one,\n fired: false\n });\n\n return the;\n }\n };\n\n //////////////////////////\n // ** Public Methods ** //\n //////////////////////////\n\n /**\n * Set default options\n */\n\n the.setDefaults = function(options) {\n defaultOptions = options;\n };\n\n /**\n * Get toggle state\n */\n the.getState = function() {\n return the.state;\n };\n\n /**\n * Toggle\n */\n the.toggle = function() {\n return Plugin.toggle();\n };\n\n /**\n * Toggle on\n */\n the.toggleOn = function() {\n return Plugin.toggleOn();\n };\n\n /**\n * Toggle off\n */\n the.toggleOff = function() {\n return Plugin.toggleOff();\n };\n\n /**\n * Attach event\n * @returns {KTToggle}\n */\n the.on = function(name, handler) {\n return Plugin.addEvent(name, handler);\n };\n\n /**\n * Attach event that will be fired once\n * @returns {KTToggle}\n */\n the.one = function(name, handler) {\n return Plugin.addEvent(name, handler, true);\n };\n\n // Construct plugin\n Plugin.construct.apply(the, [options]);\n\n return the;\n};\n\n// webpack support\nif (typeof module !== 'undefined' && typeof module.exports !== 'undefined') {\n // module.exports = KTToggle;\n}\n\nexport default KTToggle;","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React from \"react\";\nimport SVG from \"react-inlinesvg\";\nimport PerfectScrollbar from \"react-perfect-scrollbar\";\nimport { toAbsoluteUrl } from \"../../../../../_helpers\";\n\nconst perfectScrollbarOptions = {\n wheelSpeed: 2,\n wheelPropagation: false,\n};\n\nexport function SearchResult({ data }) {\n if (!data) {\n return null;\n }\n\n if (data.length === 0) {\n return (\n \n
    \n
    No record found
    \n
    \n \n );\n }\n\n return (\n \n \n
    \n {/* begin: Section */}\n
    \n Documents\n
    \n
    \n
    \n
    \n \n
    \n
    \n \n AirPlus Requirements\n \n \n by Grog John\n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n TechNav Documentation\n \n \n by Mary Broun\n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n All Framework Docs\n \n \n by Nick Stone\n \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n Finance & Accounting Reports\n \n \n by Jhon Larson\n \n
    \n
    \n
    \n {/* end: Section */}\n\n {/* begin: Section */}\n
    \n Members\n
    \n
    \n
    \n
    \n \n
    \n
    \n \n Milena Gibson\n \n \n UI Designer\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n Stefan JohnStefan\n \n \n Marketing Manager\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n Anna Strong\n \n \n Software Developer\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n Nick Bold\n \n \n Project Coordinator\n \n
    \n
    \n
    \n {/* end: Section */}\n\n {/* begin: Section */}\n
    \n Files\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n 79 PSD files generated\n \n \n by Grog John\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n $2900 worth products sold\n \n \n Total 234 items\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n 4 New items submitted\n \n \n Marketing Manager\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n 4 New items submitted\n \n \n Marketing Manager\n \n
    \n
    \n
    \n {/* end: Section */}\n
    \n \n \n );\n}\n","import React, { useEffect, useState, useMemo } from \"react\";\nimport clsx from \"clsx\";\nimport { Dropdown, OverlayTrigger, Tooltip } from \"react-bootstrap\";\nimport SVG from \"react-inlinesvg\";\nimport objectPath from \"object-path\";\nimport { useHtmlClassService } from \"../../../../_core/MetronicLayout\";\nimport { SearchResult } from \"./SearchResult\";\nimport { toAbsoluteUrl } from \"../../../../../_helpers\";\nimport { DropdownTopbarItemToggler } from \"../../../../../_partials/dropdowns\";\nconst fakeData = [\n {\n type: 0,\n text: \"Reports\",\n },\n {\n type: 1,\n text: \"AirPlus Requirements\",\n description: \"by Grog John\",\n iconImage: toAbsoluteUrl(\"/media/files/doc.svg\"),\n },\n {\n type: 1,\n text: \"TechNav Documentation\",\n description: \"by Mary Brown\",\n iconImage: toAbsoluteUrl(\"/media/files/pdf.svg\"),\n },\n {\n type: 1,\n text: \"All Framework Docs\",\n description: \"by Grog John\",\n iconImage: toAbsoluteUrl(\"/media/files/zip.svg\"),\n },\n {\n type: 1,\n text: \"AirPlus Requirements\",\n description: \"by Tim Hardy\",\n iconImage: toAbsoluteUrl(\"/media/files/xml.svg\"),\n },\n {\n text: \"Customers\",\n type: 0,\n },\n {\n type: 1,\n text: \"Jimmy Curry\",\n description: \"Software Developer\",\n iconImage: toAbsoluteUrl(\"/media/users/300_11.jpg\"),\n },\n {\n type: 1,\n text: \"Milena Gibson\",\n description: \"UI Designer\",\n iconImage: toAbsoluteUrl(\"/media/users/300_16.jpg\"),\n },\n {\n type: 1,\n text: \"Stefan JohnStefan\",\n description: \"Marketing Manager\",\n iconImage: toAbsoluteUrl(\"/media/users/300_22.jpg\"),\n },\n {\n type: 1,\n text: \"Anna Strong\",\n description: \"Software Developer\",\n iconImage: toAbsoluteUrl(\"/media/users/300_5.jpg\"),\n },\n {\n type: 0,\n text: \"Files\",\n },\n {\n type: 1,\n text: \"2 New items submitted\",\n description: \"Marketing Manager\",\n iconClassName: \"flaticon2-box font-danger\",\n },\n {\n type: 1,\n text: \"79 PSD files generated\",\n description: \"by Grog John\",\n iconClassName: \"flaticon-psd font-brand\",\n },\n {\n type: 1,\n text: \"$2900 worth products sold\",\n description: \"Total 234 items\",\n iconClassName: \"flaticon2-supermarket font-warning\",\n },\n {\n type: 1,\n text: \"4 New items submitted\",\n description: \"Marketing Manager\",\n iconClassName: \"flaticon-safe-shield-protection font-info\",\n },\n];\n\nexport function SearchDropdown() {\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState(null);\n const [searchValue, setSearchValue] = useState(\"\");\n let timeoutId;\n\n const clearTimeout = () => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n timeoutId = undefined;\n }\n };\n\n const handleSearchChange = (event) => {\n setData(null);\n setSearchValue(event.target.value);\n\n if (event.target.value.length > 2) {\n clearTimeout();\n\n setLoading(true);\n\n // simulate getting search result\n timeoutId = setTimeout(() => {\n setData(fakeData);\n setLoading(false);\n }, 500);\n }\n };\n\n const clear = () => {\n setData(null);\n setSearchValue(\"\");\n };\n\n useEffect(() => {\n return () => {\n clearTimeout();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const uiService = useHtmlClassService();\n const layoutProps = useMemo(() => {\n return {\n offcanvas:\n objectPath.get(uiService.config, \"extras.search.layout\") ===\n \"offcanvas\",\n };\n }, [uiService]);\n\n return (\n <>\n {layoutProps.offcanvas && (\n
    \n \n \n \n \n
    \n \n )}\n {!layoutProps.offcanvas && (\n {\n setData(null);\n setLoading(false);\n setSearchValue(\"\");\n }}\n id=\"kt_quick_search_toggle\"\n >\n \n Quick search}\n >\n
    \n \n \n \n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n \n \n \n
    \n \n\n \n \n 0\n ? \"none\"\n : \"flex\",\n }}\n onClick={clear}\n className=\"quick-search-close ki ki-close icon-sm text-muted\"\n />\n \n
    \n \n
    \n \n \n
    \n \n )}\n \n );\n}\n","/* eslint-disable no-unused-vars */\n/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React, { useState, useMemo } from \"react\";\nimport { Nav, Tab, Dropdown, OverlayTrigger, Tooltip } from \"react-bootstrap\";\nimport PerfectScrollbar from \"react-perfect-scrollbar\";\nimport SVG from \"react-inlinesvg\";\nimport objectPath from \"object-path\";\nimport { useHtmlClassService } from \"../../../_core/MetronicLayout\";\nimport { toAbsoluteUrl } from \"../../../../_helpers\";\nimport { DropdownTopbarItemToggler } from \"../../../../_partials/dropdowns\";\n\nconst perfectScrollbarOptions = {\n wheelSpeed: 2,\n wheelPropagation: false,\n};\n\nexport function UserNotificationsDropdown() {\n const [key, setKey] = useState(\"Alerts\");\n const bgImage = toAbsoluteUrl(\"/media/misc/bg-1.jpg\");\n\n const uiService = useHtmlClassService();\n const layoutProps = useMemo(() => {\n return {\n offcanvas:\n objectPath.get(uiService.config, \"extras.notifications.layout\") ===\n \"offcanvas\",\n };\n }, [uiService]);\n\n return (\n <>\n {layoutProps.offcanvas && (\n
    \n \n \n \n \n \n
    \n \n )}\n {!layoutProps.offcanvas && (\n \n \n \n User Notifications\n \n }\n >\n \n \n \n \n \n \n \n \n \n\n \n
    \n {/** Head */}\n \n

    \n User Notifications\n \n 23 new\n \n

    \n\n \n setKey(_key)}\n >\n \n \n Alerts\n \n \n \n \n Events\n \n \n \n \n Logs\n \n \n \n\n \n \n \n
    \n
    \n \n \n \n
    \n
    \n \n Briviba SaaS\n \n \n PHP, SQLite, Artisan CLIмм\n \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n Briviba SaaS\n \n \n PHP, SQLite, Artisan CLIмм\n \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n Briviba SaaS\n \n \n PHP, SQLite, Artisan CLIмм\n \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n Briviba SaaS\n \n \n PHP, SQLite, Artisan CLIмм\n \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n Briviba SaaS\n \n \n PHP, SQLite, Artisan CLIмм\n \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n Briviba SaaS\n \n \n PHP, SQLite, Artisan CLIмм\n \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n Briviba SaaS\n \n \n PHP, SQLite, Artisan CLIмм\n \n
    \n
    \n \n
    \n \n \n \n
    \n
    \n \n
    \n
    \n
    \n New report has been received\n
    \n
    23 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n Finance report has been generated\n
    \n
    25 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n New order has been received\n
    \n
    2 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n New customer is registered\n
    \n
    3 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n Application has been approved\n
    \n
    3 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n New file has been uploaded\n
    \n
    5 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n New user feedback received\n
    \n
    8 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n System reboot has been successfully completed\n
    \n
    12 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n New order has been placed\n
    \n
    15 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n Company meeting canceled\n
    \n
    19 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n New report has been received\n
    \n
    23 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n Finance report has been generated\n
    \n
    25 hrs ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n New customer comment recieved\n
    \n
    2 days ago
    \n
    \n
    \n
    \n\n \n
    \n
    \n \n
    \n
    \n
    \n New customer is registered\n
    \n
    3 days ago
    \n
    \n
    \n
    \n \n \n \n
    \n All caught up!\n
    \n No new notifications.\n
    \n
    \n
    \n
    \n \n \n
    \n
    \n )}\n \n );\n}\n","/* eslint-disable no-restricted-imports */\n/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React, { useMemo } from \"react\";\nimport Dropdown from \"react-bootstrap/Dropdown\";\nimport { OverlayTrigger, Tooltip } from \"react-bootstrap\";\nimport SVG from \"react-inlinesvg\";\nimport objectPath from \"object-path\";\nimport { useHtmlClassService } from \"../../../_core/MetronicLayout\";\nimport { toAbsoluteUrl } from \"../../../../_helpers\";\nimport { DropdownTopbarItemToggler } from \"../../../../_partials/dropdowns\";\n\nexport function QuickActionsDropdown() {\n const bgImage = toAbsoluteUrl(\"/media/misc/bg-2.jpg\");\n const uiService = useHtmlClassService();\n const layoutProps = useMemo(() => {\n return {\n offcanvas:\n objectPath.get(uiService.config, \"extras.quick-actions.layout\") ===\n \"offcanvas\",\n };\n }, [uiService]);\n\n return (\n <>\n {layoutProps.offcanvas && (\n Quick actions}\n >\n
    \n \n \n \n \n
    \n \n \n )}\n {!layoutProps.offcanvas && (\n \n \n Quick actions\n }\n >\n
    \n \n \n \n
    \n \n \n\n \n
    \n {/* begin: Head */}\n \n

    \n Quick Actions\n

    \n \n 23 tasks pending\n \n \n {/* end: Head */}\n\n
    \n
    \n \n \n \n \n \n Accounting\n \n \n eCommerce\n \n \n
    \n\n
    \n \n {\" \"}\n \n \n \n \n Administration\n \n \n Console\n \n \n
    \n\n
    \n \n \n \n \n \n Projects\n \n \n Pending Tasks\n \n \n
    \n\n
    \n \n \n \n \n \n Customers\n \n \n Latest cases\n \n \n
    \n
    \n \n
    \n
    \n )}\n \n );\n}\n","/* eslint-disable react/style-prop-object */\n/* eslint-disable jsx-a11y/alt-text */\n/* eslint-disable jsx-a11y/anchor-is-valid */\nimport React from \"react\";\nimport PerfectScrollbar from \"react-perfect-scrollbar\";\nimport { Dropdown, OverlayTrigger, Tooltip } from \"react-bootstrap\";\nimport SVG from \"react-inlinesvg\";\nimport { toAbsoluteUrl } from \"../../../../_helpers\";\nimport { DropdownTopbarItemToggler } from \"../../../../_partials/dropdowns\";\n\nconst perfectScrollbarOptions = {\n wheelSpeed: 2,\n wheelPropagation: false,\n};\n\nexport function MyCartDropdown() {\n const bgImage = toAbsoluteUrl(\"/media/misc/bg-1.jpg\");\n return (\n \n \n User Cart}\n >\n
    \n \n \n \n
    \n \n \n \n
    \n \n \n \n \n

    My Cart

    \n \n \n \n
    \n
    \n \n iBlender\n \n Best kichen badge in 2020\n
    \n \n $ 350\n \n for\n \n 5\n \n \n \n \n \n \n \n
    \n
    \n \n \n \n
    \n\n
    \n\n
    \n
    \n \n SmartCleaner\n \n Smart tool for cooking\n
    \n \n $ 650\n \n for\n \n 4\n \n \n \n \n \n \n \n
    \n
    \n \n \n \n
    \n\n
    \n\n
    \n
    \n \n CameraX\n \n \n Professional camera for edge cutting shots\n \n
    \n \n $ 150\n \n for\n \n 3\n \n \n \n \n \n \n \n
    \n
    \n \n \n \n
    \n\n
    \n\n
    \n
    \n \n 3DPrinted\n \n Manufactoring unique objects\n
    \n \n $ 1450\n \n for\n \n 7\n \n \n \n \n \n \n \n
    \n
    \n \n \n \n
    \n \n\n
    \n
    \n \n Total\n \n \n $1840.00\n \n
    \n
    \n \n Sub total\n \n \n $5640.00\n \n
    \n
    \n \n Place Order\n \n
    \n
    \n \n
    \n
    \n );\n}\n","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React from \"react\";\nimport clsx from \"clsx\";\nimport { Dropdown } from \"react-bootstrap\";\nimport { OverlayTrigger, Tooltip } from \"react-bootstrap\";\nimport { toAbsoluteUrl } from \"../../../../_helpers\";\nimport { useLang, setLanguage } from \"../../../../i18n\";\nimport { DropdownTopbarItemToggler } from \"../../../../_partials/dropdowns\";\n\nconst languages = [\n {\n lang: \"en\",\n name: \"English\",\n flag: toAbsoluteUrl(\"/media/svg/flags/226-united-states.svg\"),\n },\n {\n lang: \"zh\",\n name: \"Mandarin\",\n flag: toAbsoluteUrl(\"/media/svg/flags/015-china.svg\"),\n },\n {\n lang: \"es\",\n name: \"Spanish\",\n flag: toAbsoluteUrl(\"/media/svg/flags/128-spain.svg\"),\n },\n {\n lang: \"ja\",\n name: \"Japanese\",\n flag: toAbsoluteUrl(\"/media/svg/flags/063-japan.svg\"),\n },\n {\n lang: \"de\",\n name: \"German\",\n flag: toAbsoluteUrl(\"/media/svg/flags/162-germany.svg\"),\n },\n {\n lang: \"fr\",\n name: \"French\",\n flag: toAbsoluteUrl(\"/media/svg/flags/195-france.svg\"),\n },\n];\n\nexport function LanguageSelectorDropdown() {\n const lang = useLang();\n const currentLanguage = languages.find((x) => x.lang === lang);\n return (\n \n \n Select Language\n }\n >\n
    \n \n
    \n \n \n \n
      \n {languages.map((language) => (\n \n setLanguage(language.lang)}\n className=\"navi-link\"\n >\n \n {language.name}\n \n {language.name}\n \n \n ))}\n
    \n
    \n
    \n );\n}\n","/* eslint-disable no-restricted-imports */\n/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React, {useMemo} from \"react\";\nimport {OverlayTrigger, Tooltip} from \"react-bootstrap\";\n//import {useSelector} from \"react-redux\";\nimport objectPath from \"object-path\";\nimport {useHtmlClassService} from \"../../_core/MetronicLayout\";\nimport {UserProfileDropdown} from \"./dropdowns/UserProfileDropdown\";\nimport UserInfo from \"../../../../utils/userInfo\";\n\nexport function QuickUserToggler() {\n //const {user} = useSelector(state => state.auth);\n const userInfo = UserInfo();\n const uiService = useHtmlClassService();\n const layoutProps = useMemo(() => {\n return {\n offcanvas: objectPath.get(uiService.config, \"extras.user.layout\") === \"offcanvas\",\n };\n }, [uiService]);\n\n return (<>\n {layoutProps.offcanvas && (Ver usuario}\n >\n
    \n
    \n <>\n Hola,\n \n {/* {user.fullname} */}\n {userInfo && userInfo.email.split('@')[0]}\n \n \n {/* {user.fullname[0]} */}\n {userInfo && userInfo.email[0].toUpperCase()}\n \n \n
    \n
    \n )}\n\n {!layoutProps.offcanvas && ()}\n \n );\n}\n","import React, { useMemo } from \"react\";\nimport objectPath from \"object-path\";\nimport SVG from \"react-inlinesvg\";\nimport { OverlayTrigger, Tooltip } from \"react-bootstrap\";\nimport { toAbsoluteUrl } from \"../../../_helpers\";\nimport { useHtmlClassService } from \"../../_core/MetronicLayout\";\nimport { SearchDropdown } from \"../extras/dropdowns/search/SearchDropdown\";\nimport { UserNotificationsDropdown } from \"../extras/dropdowns/UserNotificationsDropdown\";\nimport { QuickActionsDropdown } from \"../extras/dropdowns/QuickActionsDropdown\";\nimport { MyCartDropdown } from \"../extras/dropdowns/MyCartDropdown\";\nimport { LanguageSelectorDropdown } from \"../extras/dropdowns/LanguageSelectorDropdown\";\nimport { QuickUserToggler } from \"../extras/QuiclUserToggler\";\n//import { Link } from \"react-router-dom\";\n\nexport function Topbar() {\n const uiService = useHtmlClassService();\n\n const layoutProps = useMemo(() => {\n return {\n viewSearchDisplay: objectPath.get(\n uiService.config,\n \"extras.search.display\"\n ),\n viewNotificationsDisplay: objectPath.get(\n uiService.config,\n \"extras.notifications.display\"\n ),\n viewQuickActionsDisplay: objectPath.get(\n uiService.config,\n \"extras.quick-actions.display\"\n ),\n viewCartDisplay: objectPath.get(uiService.config, \"extras.cart.display\"),\n viewQuickPanelDisplay: objectPath.get(\n uiService.config,\n \"extras.quick-panel.display\"\n ),\n viewLanguagesDisplay: objectPath.get(\n uiService.config,\n \"extras.languages.display\"\n ),\n viewUserDisplay: objectPath.get(uiService.config, \"extras.user.display\"),\n };\n }, [uiService]);\n\n return (\n
    \n {layoutProps.viewSearchDisplay && }\n\n {layoutProps.viewNotificationsDisplay && }\n\n {layoutProps.viewQuickActionsDisplay && }\n\n {layoutProps.viewCartDisplay && }\n\n {layoutProps.viewQuickPanelDisplay && (\n Quick panel}\n >\n \n \n \n \n \n
    \n \n \n )}\n\n {layoutProps.viewLanguagesDisplay && }\n\n {layoutProps.viewUserDisplay && }\n\n {/* SE SACARON TODAS LAS OPCIONES DEL HEADER, SOLO QUEDA EL BOTON SALIR */}\n {/*
    \n \n Salir\n \n
    */}\n\n \n );\n}\n","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React from \"react\";\nimport { useLocation } from \"react-router\";\nimport { NavLink } from \"react-router-dom\";\nimport SVG from \"react-inlinesvg\";\nimport { toAbsoluteUrl, checkIsActive } from \"../../../../_helpers\";\n\nexport function HeaderMenu({ layoutProps }) {\n const location = useLocation();\n const getMenuItemActive = (url) => {\n return checkIsActive(location, url) ? \"menu-item-active\" : \"\";\n }\n\n return \n {/*begin::Header Nav*/}\n
      \n {/*begin::1 Level*/}\n
    • \n \n Dashboard\n {layoutProps.rootArrowEnabled && ()}\n \n
    • \n {/*end::1 Level*/}\n\n {/*Classic submenu*/}\n {/*begin::1 Level*/}\n \n \n Material UI\n \n \n
      \n
        \n {/*begin::2 Level*/}\n \n \n \n \n \n \n Inputs\n \n \n \n
        \n
          \n {/*begin::3 Level*/}\n
        • \n \n \n Autocomplete\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Buttons\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Checkboxes\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Pickers\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Radio Buttons\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Selects\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Switches\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Text Fields\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Transfer List\n \n
        • \n {/*end::3 Level*/}\n
        \n
        \n \n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n \n \n \n \n \n \n Navigation\n \n \n \n
        \n
          \n {/*begin::3 Level*/}\n
        • \n \n \n Bottom Navigation\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Breadcrumbs\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Drawers\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n NavLinks\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Menus\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Steppers\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Tabs\n \n
        • \n {/*end::3 Level*/}\n
        \n
        \n \n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n \n \n \n \n \n \n Surfaces\n \n \n \n
        \n
          \n {/*begin::3 Level*/}\n
        • \n \n \n App Bar\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Paper\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Cards\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Expansion Panels\n \n
        • \n {/*end::3 Level*/}\n
        \n
        \n \n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n \n \n \n \n \n \n Feedback\n \n \n \n
        \n
          \n {/*begin::3 Level*/}\n
        • \n \n \n Progress\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Dialogs\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Snackbars\n \n
        • \n {/*end::3 Level*/}\n
        \n
        \n \n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n \n \n \n \n \n \n Data Display\n \n \n \n
        \n
          \n {/*begin::3 Level*/}\n
        • \n \n \n Avatars\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Badges\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Chips\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Dividers\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Icons\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Lists\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Tables\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Tooltips\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Typography\n \n
        • \n {/*end::3 Level*/}\n
        \n
        \n \n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n \n \n \n \n \n \n Utils\n \n \n \n
        \n
          \n {/*begin::3 Level*/}\n
        • \n \n \n Click Away Listener\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Modal\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n No SSR\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Popover\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Popper\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Portal\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Transitions\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n useMediaQuery\n \n
        • \n {/*end::3 Level*/}\n
        \n
        \n \n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n \n \n \n \n \n \n Layout\n \n \n \n
        \n
          \n {/*begin::3 Level*/}\n
        • \n \n \n Box\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Container\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Grid\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Grid list\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Hidden\n \n
        • \n {/*end::3 Level*/}\n\n
        \n
        \n \n {/*end::2 Level*/}\n
      \n
      \n \n {/*end::1 Level*/}\n\n {/*Mega submenu*/}\n {/*begin::1 Level*/}\n \n \n Bootstrap\n \n \n \n
      \n
        \n
      • \n

        \n \n A ... C\n \n

        \n
          \n {/*begin::3 Level*/}\n
        • \n \n Alerts\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Accordion\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Badge\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Breadcrumb\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Buttons\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Button Group\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Cards\n \n
        • \n {/*end::3 Level*/}\n
        \n
      • \n
      • \n
          \n

          \n \n C ... J\n \n

          \n {/*begin::3 Level*/}\n
        • \n \n Carousel\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Dropdowns\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Forms\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Input Group\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Images\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Figures\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Jumbotron\n \n
        • \n {/*end::3 Level*/}\n
        \n
      • \n
      • \n

        \n \n L ... P\n \n

        \n
          \n {/*begin::3 Level*/}\n
        • \n \n List group\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Modal\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Navs\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Navbar\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Overlays\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Pagination\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Popovers\n \n
        • \n {/*end::3 Level*/}\n
        \n
      • \n
      • \n

        \n \n P ... T\n \n

        \n
          \n {/*begin::3 Level*/}\n
        • \n \n Progress\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Spinners\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Table\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Tabs\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Tooltips\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n Toasts\n \n
        • \n {/*end::3 Level*/}\n
        \n
      • \n
      \n
      \n \n \n\n {/*Classic submenu*/}\n {/*begin::1 Level*/}\n \n \n Custom\n \n \n
      \n
        \n {/*begin::2 Level*/}\n \n \n \n eCommerce\n \n \n \n
        \n
          \n {/*begin::3 Level*/}\n
        • \n \n \n Customers\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Products\n \n
        • \n {/*end::3 Level*/}\n
        \n
        \n \n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n
      • \n \n Layout Builder\n \n
      • \n {/*end::3 Level*/}\n\n {/*begin::2 Level*/}\n \n \n \n Error Pages\n \n \n \n
        \n
          \n {/*begin::3 Level*/}\n
        • \n \n \n Error 1\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Error 2\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Error 3\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Error 4\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Error 5\n \n
        • \n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n
        • \n \n \n Error 6\n \n
        • \n {/*end::3 Level*/}\n
        \n
        \n \n {/*end::2 Level*/}\n\n
      \n
      \n \n {/*end::1 Level*/}\n
    \n {/*end::Header Nav*/}\n ;\n}\n","import React, {useMemo} from \"react\";\nimport objectPath from \"object-path\";\nimport {Link} from \"react-router-dom\";\nimport {toAbsoluteUrl} from \"../../../../_helpers\";\nimport {useHtmlClassService} from \"../../../_core/MetronicLayout\";\nimport {HeaderMenu} from \"./HeaderMenu\";\n\nexport function HeaderMenuWrapper() {\n const uiService = useHtmlClassService();\n const layoutProps = useMemo(() => {\n return {\n config: uiService.config,\n ktMenuClasses: uiService.getClasses(\"header_menu\", true),\n rootArrowEnabled: objectPath.get(\n uiService.config,\n \"header.menu.self.root-arrow\"\n ),\n menuDesktopToggle: objectPath.get(uiService.config, \"header.menu.desktop.toggle\"),\n headerMenuAttributes: uiService.getAttributes(\"header_menu\"),\n headerSelfTheme: objectPath.get(uiService.config, \"header.self.theme\"),\n ulClasses: uiService.getClasses(\"header_menu_nav\", true),\n disabledAsideSelfDisplay:\n objectPath.get(uiService.config, \"aside.self.display\") === false\n };\n }, [uiService]);\n const getHeaderLogo = () => {\n let result = \"logo-light.png\";\n if (layoutProps.headerSelfTheme && layoutProps.headerSelfTheme !== \"dark\") {\n result = \"logo-dark.png\";\n }\n //Agrego para no romper el template pero que se vea el logo\n result = \"ministerio_de_educacion.png\";\n return toAbsoluteUrl(`/media/logos/${result}`);\n };\n\n return <>\n {/*begin::Header Menu Wrapper*/}\n
    \n {layoutProps.disabledAsideSelfDisplay && (\n <>\n {/*begin::Header Logo*/}\n
    \n \n \"logo\"\n \n
    \n {/*end::Header Logo*/}\n \n )}\n {/*begin::Header Menu*/}\n \n {/*end::Header Menu*/}\n
    \n {/*Header Menu Wrapper*/}\n \n}\n","import React, {useMemo} from \"react\";\nimport objectPath from \"object-path\";\nimport {useHtmlClassService} from \"../../_core/MetronicLayout\";\nimport {Topbar} from \"./Topbar\";\nimport {HeaderMenuWrapper} from \"./header-menu/HeaderMenuWrapper\";\nimport {AnimateLoading} from \"../../../_partials/controls\";\nimport {Link} from \"react-router-dom\";\nimport {toAbsoluteUrl} from \"../../../_helpers\";\n\nexport function Header({sinUser}) {\n const uiService = useHtmlClassService();\n\n const layoutProps = useMemo(() => {\n return {\n headerClasses: uiService.getClasses(\"header\", true),\n headerAttributes: uiService.getAttributes(\"header\"),\n headerContainerClasses: uiService.getClasses(\"header_container\", true),\n headerSelfTheme: objectPath.get(uiService.config, \"header.self.theme\"),\n menuHeaderDisplay: objectPath.get(\n uiService.config,\n \"header.menu.self.display\"\n )\n };\n }, [uiService]);\n\n const getHeaderLogo = () => {\n let result = \"logo-light.png\";\n if (layoutProps.headerSelfTheme && layoutProps.headerSelfTheme !== \"dark\") {\n result = \"logo-dark.png\";\n }\n //Agrego para no romper el template pero que se vea el logo\n result = \"MEC-EscudoCorrientes.svg\";\n return toAbsoluteUrl(`/media/logos/${result}`);\n };\n\n return (\n <>\n {/*begin::Header*/}\n \n {/*begin::Container*/}\n
    \n \n {/*begin::Header Menu Wrapper*/}\n {layoutProps.menuHeaderDisplay && }\n {/* {!layoutProps.menuHeaderDisplay &&
    } */}\n {/*end::Header Menu Wrapper*/}\n\n {/* Agrego el logo en el HEADER */}\n
    \n {/*begin::Header Logo*/}\n
    \n \n \"logo\"\n \n
    \n {/*end::Header Logo*/}\n
    \n\n {/*begin::Topbar*/}\n {!(!!sinUser) && (\n \n )}\n {/*end::Topbar*/}\n
    \n {/*end::Container*/}\n
    \n {/*end::Header*/}\n \n );\n}\n","import objectPath from \"object-path\";\nimport {toAbsoluteUrl} from \"../../_helpers\";\n\nexport class HtmlClassService {\n // Public properties\n config;\n classes;\n attributes;\n\n /**\n * Build html element classes from layout config\n * @param layoutConfig\n */\n setConfig(layoutConfig) {\n this.config = this.preInit(layoutConfig);\n\n // scope list of classes\n this.classes = {\n header: [],\n header_container: [],\n header_mobile: [],\n header_menu: [],\n aside: [],\n aside_menu: [],\n subheader: [],\n subheader_container: [],\n content: [],\n content_container: [],\n footer_container: []\n };\n\n this.attributes = {\n aside_menu: {},\n header_mobile: {},\n header_menu: {}\n };\n\n // init base layout\n this.initLayout();\n this.initLoader();\n\n // init header and subheader menu\n this.initHeader();\n this.initSubheader();\n\n this.initContent();\n // init aside and aside menu\n this.initAside();\n\n // init footer\n this.initFooter();\n\n // init theme\n this.initTheme();\n }\n\n preInit(layoutConfig) {\n const updatedConfig = Object.assign({}, layoutConfig);\n const headerSelfFixedDesktop = objectPath.get(updatedConfig, \"header.self.fixed.desktop\");\n const subheaderFixed = objectPath.get(updatedConfig, \"subheader.fixed\");\n if (subheaderFixed && headerSelfFixedDesktop) {\n // Page::setOption('layout', 'subheader/style', 'solid');\n updatedConfig.subheader.style = \"solid\"; \n } else {\n // Page::setOption('layout', 'subheader/fixed', false);\n updatedConfig.subheader.fixed = false;\n }\n return updatedConfig;\n }\n\n /**\n * Returns Classes\n *\n * @param path: string\n * @param toString boolean\n */\n getClasses(path, toString) {\n if (path) {\n const classes = objectPath.get(this.classes, path) || \"\";\n if (toString && Array.isArray(classes)) {\n return classes.join(\" \");\n }\n return classes.toString();\n }\n return this.classes;\n }\n\n getAttributes(path) {\n if (path) {\n const attributes = objectPath.get(this.attributes, path) || [];\n return attributes;\n }\n return [];\n }\n\n getLogo() {\n const brandSkin = objectPath.get(this.config, \"brand.self.theme\");\n if (brandSkin === \"light\") {\n //return toAbsoluteUrl(\"/media/logos/logo-dark.png\");\n return toAbsoluteUrl(\"/media/logos/MEC-EscudoCorrientes.svg\");\n } else {\n //return toAbsoluteUrl(\"/media/logos/logo-light.png\");\n return toAbsoluteUrl(\"/media/logos/MEC-EscudoCorrientes-light.svg\");\n }\n }\n\n getStickyLogo() {\n let logo = objectPath.get(this.config, \"self.logo.sticky\");\n if (typeof logo === \"undefined\") {\n logo = this.getLogo();\n }\n return logo + \"\";\n }\n\n /**\n * Init Layout\n */\n initLayout() {\n const selfBodyBackgroundImage = objectPath.get(this.config, \"self.body.background-image\");\n if (selfBodyBackgroundImage) {\n document.body.style.backgroundImage = `url(\"${selfBodyBackgroundImage}'\")`;\n }\n\n const _selfBodyClass = objectPath.get(this.config, \"self.body.class\");\n if (_selfBodyClass) {\n const bodyClasses = _selfBodyClass.toString().split(\" \");\n bodyClasses.forEach(cssClass => document.body.classList.add(cssClass));\n }\n\n // Offcanvas directions\n document.body.classList.add(\"quick-panel-right\");\n document.body.classList.add(\"demo-panel-right\");\n document.body.classList.add(\"offcanvas-right\");\n }\n\n /**\n * Init Loader\n */\n initLoader() {}\n\n /**\n * Init Header\n */\n initHeader() {\n // Fixed header\n const headerSelfFixedDesktop = objectPath.get(this.config, \"header.self.fixed.desktop\");\n if (headerSelfFixedDesktop) {\n document.body.classList.add(\"header-fixed\");\n objectPath.push(this.classes, \"header\", \"header-fixed\");\n } else {\n document.body.classList.add(\"header-static\");\n }\n\n const headerSelfFixedMobile = objectPath.get(this.config, \"header.self.fixed.mobile\");\n if (headerSelfFixedMobile) {\n document.body.classList.add(\"header-mobile-fixed\");\n objectPath.push(this.classes, \"header_mobile\", \"header-mobile-fixed\");\n }\n\n // Menu\n const headerMenuSelfDisplay = objectPath.get(this.config, \"header.menu.self.display\");\n if (headerMenuSelfDisplay) {\n const headerMenuSelfLayout = objectPath.get(this.config, \"header.menu.self.layout\");\n const headerMenuLayoutCssClass = `header-menu-layout-${headerMenuSelfLayout}`;\n objectPath.push(this.classes, \"header_menu\", headerMenuLayoutCssClass);\n\n if (objectPath.get(this.config, \"header.menu.self.root-arrow\")) {\n objectPath.push(this.classes, \"header_menu\", \"header-menu-root-arrow\");\n }\n }\n\n const headerSelfWidth = objectPath.get(this.config, \"header.self.width\");\n if (headerSelfWidth === \"fluid\") {\n objectPath.push(this.classes, \"header_container\", \"container-fluid\");\n } else {\n objectPath.push(this.classes, \"header_container\", \"container\");\n }\n }\n\n /**\n * Init Subheader\n */\n initSubheader() {\n const subheaderDisplay = objectPath.get(this.config, \"subheader.display\");\n if (subheaderDisplay) {\n document.body.classList.add(\"subheader-enabled\");\n } else {\n return;\n }\n\n // Fixed content head\n const subheaderFixed = objectPath.get(this.config, \"subheader.fixed\");\n const headerSelfFixedDesktop = objectPath.get(this.config, \"header.self.fixed.desktop\");\n if (subheaderFixed && headerSelfFixedDesktop) {\n document.body.classList.add(\"subheader-fixed\");\n // Page::setOption('layout', 'subheader/style', 'solid'); => See preInit()\n } else {\n // Page::setOption('layout', 'subheader/fixed', false); => See preInit()\n }\n\n const subheaderStyle = objectPath.get(this.config, \"subheader.style\");\n if (subheaderStyle) {\n const subheaderClass = `subheader-${subheaderStyle}`;\n objectPath.push(this.classes, \"subheader\", subheaderClass);\n }\n\n const subheaderWidth = objectPath.get(this.config, \"subheader.width\");\n if (subheaderWidth === \"fluid\") {\n objectPath.push(this.classes, \"subheader_container\", \"container-fluid\");\n } else {\n objectPath.push(this.classes, \"subheader_container\", \"container\");\n }\n\n if (objectPath.get(this.config, \"subheader.clear\")) {\n objectPath.push(this.classes, \"subheader\", \"mb-0\");\n }\n }\n\n /**\n * Init Content\n */\n initContent() {\n if (objectPath.get(this.config, \"content.fit-top\")) {\n objectPath.push(this.classes, \"content\", \"pt-0\");\n }\n\n if (objectPath.get(this.config, \"content.fit-bottom\")) {\n objectPath.push(this.classes, \"content\", \"pb-0\");\n }\n\n if (objectPath.get(this.config, \"content.width\") === \"fluid\") {\n objectPath.push(this.classes, \"content_container\", \"container-fluid\");\n } else {\n objectPath.push(this.classes, \"content_container\", \"container\");\n }\n }\n\n /**\n * Init Aside\n */\n initAside() {\n // Check Aside\n const asideSelfDisplay = objectPath.get(this.config, \"aside.self.display\");\n if (!asideSelfDisplay) {\n return;\n }\n\n // Enable Aside\n document.body.classList.add(\"aside-enabled\");\n\n // Fixed Aside\n const asideSelfFixed = objectPath.get(this.config, \"aside.self.fixed\");\n if (asideSelfFixed) {\n document.body.classList.add(\"aside-fixed\");\n objectPath.push(this.classes, \"aside\", \"aside-fixed\");\n } else {\n document.body.classList.add(\"aside-static\");\n }\n\n // Check Aside\n if (!asideSelfDisplay) {\n return;\n }\n\n // Default fixed\n if (objectPath.get(this.config, \"aside.self.minimize.default\")) {\n document.body.classList.add(\"aside-minimize\");\n }\n\n if (objectPath.get(this.config, \"aside.self.minimize.hoverable\")) {\n document.body.classList.add(\"aside-minimize-hoverable\");\n }\n\n // Menu\n // Dropdown Submenu\n const asideMenuDropdown = objectPath.get(this.config, \"aside.menu.dropdown\");\n if (asideMenuDropdown) {\n objectPath.push(this.classes, \"aside_menu\", \"aside-menu-dropdown\");\n this.attributes.aside_menu[\"data-menu-dropdown\"] = \"1\";\n }\n\n // Scrollable Menu\n this.attributes.aside_menu[\"data-menu-scroll\"] = asideMenuDropdown ? \"0\" : \"1\";\n\n const asideSubmenuDHoverTimeout = objectPath.get(\n this.config,\n \"aside.menu.submenu.dropdown.hover-timeout\"\n );\n if (asideSubmenuDHoverTimeout) {\n this.attributes.aside_menu[\n \"data-menu-dropdown-timeout\"\n ] = asideSubmenuDHoverTimeout;\n }\n }\n\n /**\n * Init Footer\n */\n initFooter() {\n // Fixed header\n if (objectPath.get(this.config, \"footer.fixed\")) {\n document.body.classList.add(\"footer-fixed\");\n }\n\n if (objectPath.get(this.config, \"footer.self.width\") === \"fluid\") {\n objectPath.push(this.classes, \"footer_container\", \"container-fluid\");\n } else {\n objectPath.push(this.classes, \"footer_container\", \"container\");\n }\n }\n\n /** Init Theme */\n initTheme() {\n const asideSelfDisplay = objectPath.get(this.config, \"aside.self.display\");\n if (!asideSelfDisplay) {\n const headerSelfTheme = objectPath.get(this.config, \"header.self.theme\");\n document.body.classList.add(`brand-${headerSelfTheme}`);\n } else {\n const brandSelfTheme = objectPath.get(this.config, \"brand.self.theme\");\n document.body.classList.add(`brand-${brandSelfTheme}`);\n }\n }\n}\n","import React, { createContext, useContext, useMemo } from \"react\";\nimport { getInitLayoutConfig } from \"./LayoutConfig\";\nimport { HtmlClassService } from \"./HTMLClassService\";\n\nconst LAYOUT_CONFIG_KEY =\n process.env.REACT_APP_LAYOUT_CONFIG_KEY || \"LayoutConfig\";\n\nfunction getConfig() {\n const ls = localStorage.getItem(LAYOUT_CONFIG_KEY);\n if (ls) {\n try {\n return JSON.parse(ls);\n } catch (er) {\n console.error(er);\n }\n }\n return getInitLayoutConfig();\n}\n\n// Side effect\nexport function setLayoutConfig(config) {\n localStorage.setItem(LAYOUT_CONFIG_KEY, JSON.stringify(config));\n window.location.reload();\n}\n\nconst HtmlClassServiceContext = createContext();\n\n/**\n *\n *\n * @export\n * @returns Layout context from 'localStorage'\n */\nexport function useHtmlClassService() {\n return useContext(HtmlClassServiceContext);\n}\n\nexport function withHtmlClassService(Component) {\n class WithHtmlClassService extends React.Component {\n static displayName = `WithHtmlClassService(${Component.displayName ||\n Component.name})`;\n\n static contextType = HtmlClassServiceContext;\n\n render() {\n return ;\n }\n }\n\n return WithHtmlClassService;\n}\n\nexport const HtmlClassServiceConsumer = HtmlClassServiceContext.Consumer;\n\nexport function MetronicLayoutProvider({ children }) {\n const lc = useMemo(getConfig, []);\n const hcs = useMemo(() => {\n const service = new HtmlClassService();\n\n service.setConfig(lc);\n\n return service;\n }, [lc]);\n\n return (\n \n {children}\n \n );\n}\n","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./util\";\n\n// Component Definition\nvar KTCard = function(elementId, options) {\n // Main object\n var the = this;\n var init = false;\n\n // Get element object\n var element = KTUtil.getById(elementId);\n var body = KTUtil.getBody();\n\n if (!element) {\n return;\n }\n\n // Default options\n var defaultOptions = {\n toggleSpeed: 400,\n sticky: {\n releseOnReverse: false,\n offset: 300,\n zIndex: 101\n }\n };\n\n ////////////////////////////\n // ** Private Methods ** //\n ////////////////////////////\n\n var Plugin = {\n /**\n * Construct\n */\n\n construct: function(options) {\n if (KTUtil.data(element).has('card')) {\n the = KTUtil.data(element).get('card');\n } else {\n // reset menu\n Plugin.init(options);\n\n // build menu\n Plugin.build();\n\n KTUtil.data(element).set('card', the);\n }\n\n return the;\n },\n\n /**\n * Init card\n */\n init: function(options) {\n the.element = element;\n the.events = [];\n\n // merge default and user defined options\n the.options = KTUtil.deepExtend({}, defaultOptions, options);\n the.header = KTUtil.child(element, '.card-header');\n the.footer = KTUtil.child(element, '.card-footer');\n\n if (KTUtil.child(element, '.card-body')) {\n the.body = KTUtil.child(element, '.card-body');\n } else if (KTUtil.child(element, '.form')) {\n the.body = KTUtil.child(element, '.form');\n }\n },\n\n /**\n * Build Form Wizard\n */\n build: function() {\n // Remove\n var remove = KTUtil.find(the.header, '[data-card-tool=remove]');\n if (remove) {\n KTUtil.addEvent(remove, 'click', function(e) {\n e.preventDefault();\n Plugin.remove();\n });\n }\n\n // Reload\n var reload = KTUtil.find(the.header, '[data-card-tool=reload]');\n if (reload) {\n KTUtil.addEvent(reload, 'click', function(e) {\n e.preventDefault();\n Plugin.reload();\n });\n }\n\n // Toggle\n var toggle = KTUtil.find(the.header, '[data-card-tool=toggle]');\n if (toggle) {\n KTUtil.addEvent(toggle, 'click', function(e) {\n e.preventDefault();\n Plugin.toggle();\n });\n }\n },\n\n /**\n * Enable stickt mode\n */\n initSticky: function() {\n var lastScrollTop = 0;\n var offset = the.options.sticky.offset;\n\n if (!the.header) {\n return;\n }\n\n\t window.addEventListener('scroll', Plugin.onScrollSticky);\n },\n\n\t /**\n\t * Window scroll handle event for sticky card\n\t */\n\t onScrollSticky: function(e) {\n\t\t var offset = the.options.sticky.offset;\n\n\t\t if(isNaN(offset)) return;\n\n\t\t var st = KTUtil.getScrollTop();\n\n\t\t if (st >= offset && KTUtil.hasClass(body, 'card-sticky-on') === false) {\n\t\t\t Plugin.eventTrigger('stickyOn');\n\n\t\t\t KTUtil.addClass(body, 'card-sticky-on');\n\n\t\t\t Plugin.updateSticky();\n\n\t\t } else if ((st*1.5) <= offset && KTUtil.hasClass(body, 'card-sticky-on')) {\n\t\t\t // Back scroll mode\n\t\t\t Plugin.eventTrigger('stickyOff');\n\n\t\t\t KTUtil.removeClass(body, 'card-sticky-on');\n\n\t\t\t Plugin.resetSticky();\n\t\t }\n\t },\n\n updateSticky: function() {\n if (!the.header) {\n return;\n }\n\n var top;\n\n if (KTUtil.hasClass(body, 'card-sticky-on')) {\n if (the.options.sticky.position.top instanceof Function) {\n top = parseInt(the.options.sticky.position.top.call(this, the));\n } else {\n top = parseInt(the.options.sticky.position.top);\n }\n\n var left;\n if (the.options.sticky.position.left instanceof Function) {\n left = parseInt(the.options.sticky.position.left.call(this, the));\n } else {\n left = parseInt(the.options.sticky.position.left);\n }\n\n var right;\n if (the.options.sticky.position.right instanceof Function) {\n right = parseInt(the.options.sticky.position.right.call(this, the));\n } else {\n right = parseInt(the.options.sticky.position.right);\n }\n\n KTUtil.css(the.header, 'z-index', the.options.sticky.zIndex);\n KTUtil.css(the.header, 'top', top + 'px');\n KTUtil.css(the.header, 'left', left + 'px');\n KTUtil.css(the.header, 'right', right + 'px');\n }\n },\n\n resetSticky: function() {\n if (!the.header) {\n return;\n }\n\n if (KTUtil.hasClass(body, 'card-sticky-on') === false) {\n KTUtil.css(the.header, 'z-index', '');\n KTUtil.css(the.header, 'top', '');\n KTUtil.css(the.header, 'left', '');\n KTUtil.css(the.header, 'right', '');\n }\n },\n\n /**\n * Remove card\n */\n remove: function() {\n if (Plugin.eventTrigger('beforeRemove') === false) {\n return;\n }\n\n KTUtil.remove(element);\n\n Plugin.eventTrigger('afterRemove');\n },\n\n /**\n * Set content\n */\n setContent: function(html) {\n if (html) {\n the.body.innerHTML = html;\n }\n },\n\n /**\n * Get body\n */\n getBody: function() {\n return the.body;\n },\n\n /**\n * Get self\n */\n getSelf: function() {\n return element;\n },\n\n /**\n * Reload\n */\n reload: function() {\n Plugin.eventTrigger('reload');\n },\n\n /**\n * Toggle\n */\n toggle: function() {\n if (KTUtil.hasClass(element, 'card-collapse') || KTUtil.hasClass(element, 'card-collapsed')) {\n Plugin.expand();\n } else {\n Plugin.collapse();\n }\n },\n\n /**\n * Collapse\n */\n collapse: function() {\n if (Plugin.eventTrigger('beforeCollapse') === false) {\n return;\n }\n\n KTUtil.slideUp(the.body, the.options.toggleSpeed, function() {\n Plugin.eventTrigger('afterCollapse');\n });\n\n KTUtil.addClass(element, 'card-collapse');\n },\n\n /**\n * Expand\n */\n expand: function() {\n if (Plugin.eventTrigger('beforeExpand') === false) {\n return;\n }\n\n KTUtil.slideDown(the.body, the.options.toggleSpeed, function() {\n Plugin.eventTrigger('afterExpand');\n });\n\n KTUtil.removeClass(element, 'card-collapse');\n KTUtil.removeClass(element, 'card-collapsed');\n },\n\n /**\n * Trigger events\n */\n eventTrigger: function(name) {\n //KTUtil.triggerCustomEvent(name);\n for (var i = 0; i < the.events.length; i++) {\n var event = the.events[i];\n if (event.name == name) {\n if (event.one == true) {\n if (event.fired == false) {\n the.events[i].fired = true;\n return event.handler.call(this, the);\n }\n } else {\n return event.handler.call(this, the);\n }\n }\n }\n },\n\n addEvent: function(name, handler, one) {\n the.events.push({\n name: name,\n handler: handler,\n one: one,\n fired: false\n });\n\n return the;\n }\n };\n\n //////////////////////////\n // ** Public Methods ** //\n //////////////////////////\n\n /**\n * Set default options\n */\n\n the.setDefaults = function(options) {\n defaultOptions = options;\n };\n\n /**\n * Remove card\n */\n the.remove = function() {\n return Plugin.remove(html);\n };\n\n /**\n * Init sticky card\n */\n the.initSticky = function() {\n return Plugin.initSticky();\n };\n\n /**\n * Rerender sticky layout\n */\n the.updateSticky = function() {\n return Plugin.updateSticky();\n };\n\n /**\n * Reset the sticky\n */\n the.resetSticky = function() {\n return Plugin.resetSticky();\n };\n\n\t/**\n\t * Destroy sticky card\n\t */\n\tthe.destroySticky = function() {\n\t\tPlugin.resetSticky();\n\t\twindow.removeEventListener('scroll', Plugin.onScrollSticky);\n\t};\n\n /**\n * Reload card\n */\n the.reload = function() {\n return Plugin.reload();\n };\n\n /**\n * Set card content\n */\n the.setContent = function(html) {\n return Plugin.setContent(html);\n };\n\n /**\n * Toggle card\n */\n the.toggle = function() {\n return Plugin.toggle();\n };\n\n /**\n * Collapse card\n */\n the.collapse = function() {\n return Plugin.collapse();\n };\n\n /**\n * Expand card\n */\n the.expand = function() {\n return Plugin.expand();\n };\n\n /**\n * Get cardbody\n * @returns {jQuery}\n */\n the.getBody = function() {\n return Plugin.getBody();\n };\n\n /**\n * Get cardbody\n * @returns {jQuery}\n */\n the.getSelf = function() {\n return Plugin.getSelf();\n };\n\n /**\n * Attach event\n */\n the.on = function(name, handler) {\n return Plugin.addEvent(name, handler);\n };\n\n /**\n * Attach event that will be fired once\n */\n the.one = function(name, handler) {\n return Plugin.addEvent(name, handler, true);\n };\n\n // Construct plugin\n Plugin.construct.apply(the, [options]);\n\n return the;\n};\n\n// webpack support\nif (typeof module !== 'undefined' && typeof module.exports !== 'undefined') {\n // module.exports = KTCard;\n}\n\nexport default KTCard;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./util\";\n\n// Component Definition\nvar KTScrolltop = function(elementId, options) {\n // Main object\n var the = this;\n var init = false;\n\n // Get element object\n var element = KTUtil.getById(elementId);\n var body = KTUtil.getBody();\n\n if (!element) {\n return;\n }\n\n // Default options\n var defaultOptions = {\n offset: 300,\n speed: 6000\n };\n\n ////////////////////////////\n // ** Private Methods ** //\n ////////////////////////////\n\n var Plugin = {\n /**\n * Run plugin\n * @returns {mscrolltop}\n */\n construct: function(options) {\n if (KTUtil.data(element).has('scrolltop')) {\n the = KTUtil.data(element).get('scrolltop');\n } else {\n // reset scrolltop\n Plugin.init(options);\n\n // build scrolltop\n Plugin.build();\n\n KTUtil.data(element).set('scrolltop', the);\n }\n\n return the;\n },\n\n /**\n * Handles subscrolltop click toggle\n * @returns {mscrolltop}\n */\n init: function(options) {\n the.events = [];\n\n // merge default and user defined options\n the.options = KTUtil.deepExtend({}, defaultOptions, options);\n },\n\n build: function() {\n var timer;\n\n window.addEventListener('scroll', function() {\n KTUtil.throttle(timer, function() {\n Plugin.handle();\n }, 200);\n });\n\n // handle button click\n KTUtil.addEvent(element, 'click', Plugin.scroll);\n },\n\n /**\n * Handles scrolltop click scrollTop\n */\n handle: function() {\n var pos = KTUtil.getScrollTop(); // current vertical position\n\n if (pos > the.options.offset) {\n if (body.hasAttribute('data-scrolltop') === false) {\n body.setAttribute('data-scrolltop', 'on');\n }\n } else {\n if (body.hasAttribute('data-scrolltop') === true) {\n body.removeAttribute('data-scrolltop');\n }\n }\n },\n\n /**\n * Handles scrolltop click scrollTop\n */\n scroll: function(e) {\n e.preventDefault();\n\n KTUtil.scrollTop(0, the.options.speed);\n },\n\n\n /**\n * Trigger events\n */\n eventTrigger: function(name, args) {\n for (var i = 0; i < the.events.length; i++) {\n var event = the.events[i];\n if (event.name == name) {\n if (event.one == true) {\n if (event.fired == false) {\n the.events[i].fired = true;\n return event.handler.call(this, the, args);\n }\n } else {\n return event.handler.call(this, the, args);\n }\n }\n }\n },\n\n addEvent: function(name, handler, one) {\n the.events.push({\n name: name,\n handler: handler,\n one: one,\n fired: false\n });\n }\n };\n\n //////////////////////////\n // ** Public Methods ** //\n //////////////////////////\n\n /**\n * Set default options\n */\n\n the.setDefaults = function(options) {\n defaultOptions = options;\n };\n\n /**\n * Get subscrolltop mode\n */\n the.on = function(name, handler) {\n return Plugin.addEvent(name, handler);\n };\n\n /**\n * Set scrolltop content\n * @returns {mscrolltop}\n */\n the.one = function(name, handler) {\n return Plugin.addEvent(name, handler, true);\n };\n\n ///////////////////////////////\n // ** Plugin Construction ** //\n ///////////////////////////////\n\n // Run plugin\n Plugin.construct.apply(the, [options]);\n\n // Init done\n init = true;\n\n // Return plugin instance\n return the;\n};\n\n// webpack support\nif (typeof module !== 'undefined' && typeof module.exports !== 'undefined') {\n // module.exports = KTScrolltop;\n}\n\nexport default KTScrolltop;","module.exports = __webpack_public_path__ + \"static/media/Logo-GobiernoCorrientes-300x52.2a1b410c.png\";","import React, {useMemo} from \"react\";\nimport {Link} from \"react-router-dom\";\nimport objectPath from \"object-path\";\nimport SVG from \"react-inlinesvg\";\nimport {useHtmlClassService} from \"../../_core/MetronicLayout\";\nimport {toAbsoluteUrl} from \"../../../_helpers\";\n\nexport function Brand() {\n const uiService = useHtmlClassService();\n\n const layoutProps = useMemo(() => {\n return {\n brandClasses: uiService.getClasses(\"brand\", true),\n asideSelfMinimizeToggle: objectPath.get(\n uiService.config,\n \"aside.self.minimize.toggle\"\n ),\n headerLogo: uiService.getLogo(),\n headerStickyLogo: uiService.getStickyLogo()\n };\n }, [uiService]);\n\n return (\n <>\n {/* begin::Brand */}\n \n {/* begin::Logo */}\n \n \"logo\"\n \n {/* end::Logo */}\n\n {layoutProps.asideSelfMinimizeToggle && (\n <>\n {/* begin::Toggle */}\n \n {/* end::Toolbar */}\n \n )}\n \n {/* end::Brand */}\n \n );\n}\n","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React from \"react\";\nimport {useLocation} from \"react-router\";\nimport {NavLink} from \"react-router-dom\";\nimport SVG from \"react-inlinesvg\";\nimport {toAbsoluteUrl, checkIsActive} from \"../../../../_helpers\";\n\nexport function AsideMenuList({ layoutProps }) {\n const location = useLocation();\n const getMenuItemActive = (url, hasSubmenu = false) => {\n return checkIsActive(location, url)\n ? ` ${!hasSubmenu && \"menu-item-active\"} menu-item-open `\n : \"\";\n };\n\n return (\n <>\n {/* begin::Menu Nav */}\n
      \n \n {/*begin::1 Level*/}\n \n \n \n \n \n Insc. Online\n \n \n {/*end::1 Level*/}\n \n {/*begin::1 Level*/}\n {/* \n \n \n \n \n Dashboard\n \n */}\n {/*end::1 Level*/}\n\n {/*begin::1 Level*/}\n {/* \n \n \n \n \n Layout Builder\n \n */}\n {/*end::1 Level*/}\n\n {/* Components */}\n {/* begin::section */}\n {/*
    • \n

      Components

      \n \n
    • */}\n {/* end:: section */}\n\n {/* Material-UI */}\n {/*begin::1 Level*/}\n {/* \n \n \n \n \n Material UI\n \n \n
      \n \n
        \n
      • \n \n Material UI\n \n
      • */}\n\n {/* Inputs */}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Inputs\n \n \n
        \n \n
          */}\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Autocomplete\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Buttons\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Checkboxes\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Pickers\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Radio Buttons\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Selects\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Switches\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Text Fields\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Transfer List\n \n */}\n {/*end::3 Level*/}\n {/*
        \n
        \n */}\n {/*end::2 Level*/}\n\n {/* Navigation */}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Navigation\n \n \n
        \n \n
          */}\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Bottom Navigation\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Breadcrumbs\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Drawers\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n NavLinks\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Menus\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Steppers\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Tabs\n \n */}\n {/*end::3 Level*/}\n {/*
        \n
        \n */}\n {/*end::2 Level*/}\n\n {/* Surfaces */}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Surfaces\n \n \n
        \n \n
          */}\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n App Bar\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Paper\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Cards\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Expansion Panels\n \n */}\n {/*end::3 Level*/}\n {/*
        \n
        \n */}\n {/*end::2 Level*/}\n\n {/* Feedback */}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Feedback\n \n \n
        \n \n
          */}\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Progress\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Dialogs\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Snackbars\n \n */}\n {/*end::3 Level*/}\n {/*
        \n
        \n */}\n {/*end::2 Level*/}\n\n {/* Data Display */}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Data Display\n \n \n
        \n \n
          */}\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Avatars\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Badges\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Chips\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Dividers\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Icons\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Lists\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Tables\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Tooltips\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Typography\n \n */}\n {/*end::3 Level*/}\n {/*
        \n
        \n */}\n {/*end::2 Level*/}\n\n {/* Utils */}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Utils\n \n \n
        \n \n
          */}\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Click Away Listener\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n No SSR\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Popover\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Popper\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Portal\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Transitions\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n useMediaQuery\n \n */}\n {/*end::3 Level*/}\n {/*
        \n
        \n */}\n {/*end::2 Level*/}\n\n {/* Layout */}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Layout\n \n \n
        \n \n
          */}\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Box\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Container\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Grid\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Grid list\n \n */}\n {/*end::3 Level*/}\n\n {/*begin::3 Level*/}\n {/* \n \n \n \n \n Hidden\n \n */}\n {/*end::3 Level*/}\n {/*
        \n
        \n */}\n {/*end::2 Level*/}\n {/*
      \n
      \n */}\n {/*end::1 Level*/}\n\n {/* Bootstrap */}\n {/*begin::1 Level*/}\n {/* \n \n \n \n \n Bootstrap\n \n \n
      \n
        \n
          \n \n \n Bootstrap\n \n */}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Alerts\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Badge\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Breadcrumb\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Buttons\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Button Group\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Cards\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Carousel\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Dropdowns\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Forms\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Input Group\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Images\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Figures\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Jumbotron\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n List group\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Modal\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Navs\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Navbar\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Overlays\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Pagination\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Popovers\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Progress\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Spinners\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Table\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Tabs\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Tooltips\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Toasts\n \n */}\n {/*end::2 Level*/}\n {/*
        \n
      \n
      \n */}\n {/*end::1 Level*/}\n\n {/* Applications */}\n {/* begin::section */}\n {/*
    • \n

      Applications

      \n \n
    • */}\n {/* end:: section */}\n\n {/* eCommerce */}\n {/*begin::1 Level*/}\n {/* \n \n \n \n \n eCommerce\n \n
      \n \n
        \n
      • \n \n eCommerce\n \n
      • */}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Customers\n \n */}\n {/*end::2 Level*/}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Products\n \n */}\n {/*end::2 Level*/}\n {/*
      \n
      \n */}\n {/*end::1 Level*/}\n\n {/* Custom */}\n {/* begin::section */}\n {/*
    • \n

      Custom

      \n \n
    • */}\n {/* end:: section */}\n\n\n {/* Error Pages */}\n {/*begin::1 Level*/}\n {/* \n \n \n \n \n Error Pages\n \n \n
      \n \n
        \n
      • \n \n Error Pages\n \n
      • */}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Error Page - 1\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Error Page -2\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Error Page - 3\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Error Page - 4\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Error Page - 5\n \n */}\n {/*end::2 Level*/}\n\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Error Page - 6\n \n */}\n {/*end::2 Level*/}\n {/*
      \n
      \n */}\n {/*end::1 Level*/}\n\n\n {/* begin::section */}\n {/*
    • \n

      Prueba

      \n \n
    • */}\n {/* end:: section */}\n {/* Prueba */}\n {/*begin::1 Level*/}\n {/*
    • \n \n \n \n \n Juanma\n \n \n
      \n \n
        \n
      • \n \n Juanma\n \n
      • */}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Certificados\n \n */}\n {/*end::2 Level*/}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Legajo\n \n */}\n {/*end::2 Level*/}\n {/*begin::2 Level*/}\n {/* \n \n \n \n \n Pre-Inscripción\n \n */}\n {/*end::2 Level*/}\n {/*
      \n
      \n
    • */}\n {/*end::1 Level*/}\n
    \n \n\n {/* end::Menu Nav */}\n \n );\n}\n","import React, {useMemo} from \"react\";\nimport {AsideMenuList} from \"./AsideMenuList\";\nimport {useHtmlClassService} from \"../../../_core/MetronicLayout\";\n\nexport function AsideMenu({disableScroll}) {\n const uiService = useHtmlClassService();\n const layoutProps = useMemo(() => {\n return {\n layoutConfig: uiService.config,\n asideMenuAttr: uiService.getAttributes(\"aside_menu\"),\n ulClasses: uiService.getClasses(\"aside_menu_nav\", true),\n asideClassesFromConfig: uiService.getClasses(\"aside_menu\", true)\n };\n }, [uiService]);\n\n return (\n <>\n {/* begin::Menu Container */}\n \n \n \n {/* end::Menu Container */}\n \n );\n}\n","import React, {useMemo} from \"react\";\nimport {Link} from \"react-router-dom\";\nimport objectPath from \"object-path\";\nimport {Brand} from \"../brand/Brand\";\nimport {AsideMenu} from \"./aside-menu/AsideMenu\";\nimport {useHtmlClassService} from \"../../_core/MetronicLayout\";\n\nexport function Aside() {\n const uiService = useHtmlClassService();\n\n const layoutProps = useMemo(() => {\n return {\n disableScroll:\n objectPath.get(uiService.config, \"aside.menu.dropdown\") === \"true\" ||\n false,\n asideClassesFromConfig: uiService.getClasses(\"aside\", true),\n disableAsideSelfDisplay:\n objectPath.get(uiService.config, \"aside.self.display\") === false,\n headerLogo: uiService.getLogo()\n };\n }, [uiService]);\n\n return (\n <>\n {/* begin::Aside */}\n
    \n \n\n {/* begin::Aside Menu */}\n
    \n {layoutProps.disableAsideSelfDisplay && (\n <>\n {/* begin::Header Logo */}\n
    \n \n \"logo\"\n \n
    \n {/* end::Header Logo */}\n \n )}\n \n
    \n {/* end::Aside Menu */}\n
    \n {/* end::Aside */}\n \n );\n}\n","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\n\nvar KTLayoutHeader = function() {\n // Private properties\n var _element;\n var _elementForMobile;\n var _object;\n\n\t// Private functions\n // Get Height\n var _getHeight = function() {\n var height = 0;\n\n if (_element) {\n height = KTUtil.actualHeight(_element) + 1;\n }\n\n return height;\n }\n\n // Get Height\n var _getHeightForMobile = function() {\n var height;\n\n height = KTUtil.actualHeight(_elementForMobile);\n\n return height;\n }\n\n // Public Methods\n\treturn {\n\t\tinit: function(id, idForMobile) {\n _element = KTUtil.getById(id);\n _elementForMobile = KTUtil.getById(idForMobile);\n\n if (!_element) {\n return;\n }\n\t\t},\n\n isFixed: function() {\n return KTUtil.hasClass(KTUtil.getBody(), 'header-fixed')\n },\n\n isFixedForMobile: function() {\n return KTUtil.hasClass(KTUtil.getBody(), 'header-mobile-fixed')\n },\n\n getElement: function() {\n return _element;\n },\n\n getElementForMobile: function() {\n return _elementForMobile;\n },\n\n getHeader: function() {\n return _object;\n },\n\n getHeight: function() {\n return _getHeight();\n },\n\n getHeightForMobile: function() {\n return _getHeightForMobile();\n }\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutHeader;\n}\n\nexport default KTLayoutHeader;","/* eslint-disable */\n\"use strict\";\n\nimport KTOffcanvas from \"./../../components/offcanvas.js\";\nimport KTMenu from \"./../../components/menu.js\";\nimport { KTUtil } from \"./../../components/util.js\";\n\nvar KTLayoutHeaderMenu = function() {\n // Private properties\n\tvar _menuElement;\n var _menuObject;\n var _offcanvasElement;\n var _offcanvasObject;\n\n // Private functions\n\tvar _init = function() {\n\t\t_offcanvasObject = new KTOffcanvas(_offcanvasElement, {\n\t\t\toverlay: true,\n\t\t\tbaseClass: 'header-menu-wrapper',\n\t\t\tcloseBy: 'kt_header_menu_mobile_close_btn',\n\t\t\ttoggleBy: {\n\t\t\t\ttarget: 'kt_header_mobile_toggle',\n\t\t\t\tstate: 'mobile-toggle-active'\n\t\t\t}\n\t\t});\n\t\t\n\t\t_menuObject = new KTMenu(_menuElement, {\n\t\t\tsubmenu: {\n\t\t\t\tdesktop: 'dropdown',\n\t\t\t\ttablet: 'accordion',\n\t\t\t\tmobile: 'accordion'\n\t\t\t},\n\t\t\taccordion: {\n\t\t\t\tslideSpeed: 200, // accordion toggle slide speed in milliseconds\n\t\t\t\texpandAll: false // allow having multiple expanded accordions in the menu\n\t\t\t}\n\t\t});\n\n\t\t// Close aside offcanvas panel before page reload On tablet and mobile\n _menuObject.on('linkClick', function(menu) {\n if (KTUtil.isBreakpointDown('lg')) { // Tablet and mobile mode\n _offcanvasObject.hide(); // Hide offcanvas after general link click\n }\n });\n\t}\n\n // Public methods\n\treturn {\n init: function(menuId, offcanvasId) {\n _menuElement = KTUtil.getById(menuId);\n _offcanvasElement = KTUtil.getById(offcanvasId);\n\n if (!_menuElement) {\n return;\n }\n\n // Initialize menu\n _init();\n\t\t},\n\n\t\tgetMenuElement: function() {\n\t\t\treturn _menuElement;\n\t\t},\n\n getOffcanvasElement: function() {\n\t\t\treturn _offcanvasElement;\n\t\t},\n\n getMenu: function() {\n\t\t\treturn _menuObject;\n\t\t},\n\n\t\tpauseDropdownHover: function(time) {\n\t\t\tif (_menuObject) {\n\t\t\t\t_menuObject.pauseDropdownHover(time);\n\t\t\t}\n\t\t},\n\n getOffcanvas: function() {\n\t\t\treturn _offcanvasObject;\n\t\t},\n\n\t\tcloseMobileOffcanvas: function() {\n\t\t\tif (_menuObject && KTUtil.isMobileDevice()) {\n\t\t\t\t_offcanvasObject.hide();\n\t\t\t}\n\t\t}\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutHeaderMenu;\n}\n\nexport default KTLayoutHeaderMenu;","/* eslint-disable */\n\"use strict\";\n\nimport KTToggle from \"./../../components/toggle.js\";\nimport { KTUtil } from \"./../../components/util.js\";\n\nvar KTLayoutHeaderTopbar = function() {\n // Private properties\n\tvar _toggleElement;\n var _toggleObject;\n\n // Private functions\n var _init = function() {\n\t\t\t_toggleObject = new KTToggle(_toggleElement, KTUtil.getBody(), {\n\t\t\t\ttargetState: 'topbar-mobile-on',\n\t\t\t\ttoggleState: 'active',\n\t\t\t});\n }\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _toggleElement = KTUtil.getById(id);\n\n\t\t\tif (!_toggleElement) {\n return;\n }\n\n // Initialize\n _init();\n\t\t},\n\n getToggleElement: function() {\n return _toggleElement;\n }\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutHeaderTopbar;\n}\n\nexport default KTLayoutHeaderTopbar;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\n\nvar KTLayoutBrand = function() {\n // Private properties\n var _element;\n\n // Private functions\n var _getHeight = function() {\n var height = 0;\n\n if (_element) {\n height = KTUtil.actualHeight(_element);\n }\n\n return height;\n }\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _element = KTUtil.getById(id);\n\n if (!_element) {\n return;\n }\n\t\t},\n\n getElement: function() {\n return _element;\n },\n\n getHeight: function() {\n return _getHeight();\n }\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutBrand;\n}\n\nexport default KTLayoutBrand;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\nimport KTOffcanvas from \"./../../components/offcanvas.js\";\n\nvar KTLayoutAside = function() {\n // Private properties\n var _body;\n var _element;\n var _offcanvasObject;\n\n // Private functions\n\t// Initialize\n\tvar _init = function() {\n\t\tvar offcanvasClass = KTUtil.hasClass(_element, 'aside-offcanvas-default') ? 'aside-offcanvas-default' : 'aside';\n\n // Initialize mobile aside offcanvas\n\t\t_offcanvasObject = new KTOffcanvas(_element, {\n\t\t\tbaseClass: offcanvasClass,\n\t\t\toverlay: true,\n\t\t\tcloseBy: 'kt_aside_close_btn',\n\t\t\ttoggleBy: {\n\t\t\t\ttarget: 'kt_aside_mobile_toggle',\n\t\t\t\tstate: 'mobile-toggle-active'\n\t\t\t}\n\t\t});\n\t}\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _element = KTUtil.getById(id);\n _body = KTUtil.getBody();\n\n if (!_element) {\n return;\n }\n\n // Initialize\n _init();\n },\n\n getElement: function() {\n return _element;\n },\n\n getOffcanvas: function() {\n return _offcanvasObject;\n },\n\n isFixed: function() {\n return KTUtil.hasClass(_body, 'aside-fixed');\n },\n\n isMinimized: function() {\n return (KTUtil.hasClass(_body, 'aside-fixed') && KTUtil.hasClass(_body, 'aside-minimize'));\n },\n\n isHoverable: function() {\n return (KTUtil.hasClass(_body, 'aside-fixed') && KTUtil.hasClass(_body, 'aside-minimize-hoverable'));\n }\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutAside;\n}\n\nexport default KTLayoutAside;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\n\nvar KTLayoutSubheader = function() {\n // Private properties\n var _element;\n\n // Private functions\n var _getHeight = function() {\n var height = 0;\n\n if (_element) {\n height = KTUtil.actualHeight(_element);\n }\n\n return height;\n }\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _element = KTUtil.getById(id);\n\n if (!_element) {\n return;\n }\n\t\t},\n\n isFixed: function() {\n return KTUtil.hasClass(KTUtil.getBody(), 'subheader-fixed');\n },\n\n getElement: function() {\n return _element;\n },\n\n getHeight: function() {\n return _getHeight();\n }\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutSubheader;\n}\n\nexport default KTLayoutSubheader;","/* eslint-disable */\n\"use strict\";\n\nimport KTLayoutHeader from \"./header.js\";\nimport KTCard from \"./../../components/card.js\";\nimport { KTUtil } from \"./../../components/util.js\";\nimport KTLayoutSubheader from \"./subheader.js\";\n\nvar KTLayoutStickyCard = function() {\n // Private properties\n\tvar _element;\n var _object;\n\n\t// Private functions\n\tvar _init = function() {\n\t\tvar offset = 300;\n\n\t\tif (typeof KTLayoutHeader !== 'undefined') {\n\t\t\toffset = KTLayoutHeader.getHeight();\n\t\t}\n\n _object = new KTCard(_element, {\n\t\t\tsticky: {\n\t\t\t\toffset: offset,\n\t\t\t\tzIndex: 90,\n\t\t\t\tposition: {\n\t\t\t\t\ttop: function() {\n\t\t\t\t\t\tvar pos = 0;\n var body = KTUtil.getBody();\n\n\t\t\t\t\t\tif (KTUtil.isBreakpointUp('lg')) {\n\t\t\t\t\t\t\tif (typeof KTLayoutHeader !== 'undefined' && KTLayoutHeader.isFixed()) {\n\t\t\t\t\t\t\t\tpos = pos + KTLayoutHeader.getHeight();\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (typeof KTLayoutSubheader !== 'undefined' && KTLayoutSubheader.isFixed()) {\n\t\t\t\t\t\t\t\tpos = pos + KTLayoutSubheader.getHeight();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (typeof KTLayoutHeader !== 'undefined' && KTLayoutHeader.isFixedForMobile()) {\n\t\t\t\t\t\t\t\tpos = pos + KTLayoutHeader.getHeightForMobile();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tpos = pos - 1; // remove header border width\n\n\t\t\t\t\t\treturn pos;\n\t\t\t\t\t},\n\t\t\t\t\tleft: function(card) {\n\t\t\t\t\t\treturn KTUtil.offset(_element).left;\n\t\t\t\t\t},\n\t\t\t\t\tright: function(card) {\n\t\t\t\t\t\tvar body = KTUtil.getBody();\n\n\t\t\t\t\t\tvar cardWidth = parseInt(KTUtil.css(_element, 'width'));\n\t\t\t\t\t\tvar bodyWidth = parseInt(KTUtil.css(body, 'width'));\n\t\t\t\t\t\tvar cardOffsetLeft = KTUtil.offset(_element).left;\n\n\t\t\t\t\t\treturn bodyWidth - cardWidth - cardOffsetLeft;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\t_object.initSticky();\n\n\t\tKTUtil.addResizeHandler(function() {\n\t\t\t_object.updateSticky();\n\t\t});\n\t}\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _element = KTUtil.getById(id);\n\n if (!_element) {\n return;\n }\n\n // Initialize\n\t\t\t_init();\n\t\t},\n\n\t\tupdate: function() {\n\t\t\tif (_object) {\n\t\t\t\t_object.updateSticky();\n\t\t\t}\n\t\t}\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutStickyCard;\n}\n\nexport default KTLayoutStickyCard;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\nimport KTLayoutBrand from \"./brand.js\";\nimport KTMenu from \"./../../components/menu.js\";\nimport KTLayoutAside from \"./aside.js\";\n\nvar KTLayoutAsideMenu = function() {\n // Private properties\n var _body;\n var _element;\n var _menuObject;\n\n\t// Initialize\n\tvar _init = function() {\n\t\tvar menuDesktopMode = (KTUtil.attr(_element, 'data-menu-dropdown') === '1' ? 'dropdown' : 'accordion');\n var scroll;\n\n\t\tif (KTUtil.attr(_element, 'data-menu-scroll') === '1') {\n\t\t\tscroll = {\n\t\t\t\trememberPosition: true, // remember position on page reload\n\t\t\t\theight: function() { // calculate available scrollable area height\n\t\t\t\t\tvar height = parseInt(KTUtil.getViewPort().height);\n\n\t\t\t\t\tif (KTUtil.isBreakpointUp('lg')) {\n\t\t\t\t\t\theight = height - KTLayoutBrand.getHeight();\n\t\t\t\t\t}\n\n\t\t\t\t\theight = height - (parseInt(KTUtil.css(_element, 'marginBottom')) + parseInt(KTUtil.css(_element, 'marginTop')));\n\n\t\t\t\t\treturn height;\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\t_menuObject = new KTMenu(_element, {\n\t\t\t// Vertical scroll\n\t\t\tscroll: scroll,\n\n\t\t\t// Submenu setup\n\t\t\tsubmenu: {\n\t\t\t\tdesktop: menuDesktopMode,\n\t\t\t\ttablet: 'accordion', // menu set to accordion in tablet mode\n\t\t\t\tmobile: 'accordion' // menu set to accordion in mobile mode\n\t\t\t},\n\n\t\t\t// Accordion setup\n\t\t\taccordion: {\n\t\t\t\texpandAll: false // allow having multiple expanded accordions in the menu\n\t\t\t}\n\t\t});\n\t}\n\n var _initHover = function() {\n // Handle Minimized Aside Hover\n\t\tif (KTUtil.hasClass(_body, 'aside-fixed') && KTUtil.hasClass(_body, 'aside-minimize-hoverable')) {\n\t\t\tvar insideTm;\n\t\t\tvar outsideTm;\n\n // Handle Aside Hover Mode\n\t\t\tKTUtil.addEvent(_element, 'mouseenter', function(e) {\n\t\t\t\te.preventDefault();\n\n\t\t\t\tif (KTUtil.isBreakpointUp('lg') === false) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (outsideTm) {\n\t\t\t\t\tclearTimeout(outsideTm);\n\t\t\t\t\toutsideTm = null;\n\t\t\t\t}\n\n if (insideTm) {\n\t\t\t\t\tclearTimeout(insideTm);\n\t\t\t\t\tinsideTm = null;\n\t\t\t\t}\n\n\t\t\t\tinsideTm = setTimeout(function() {\n\t\t\t\t\tif (KTUtil.hasClass(_body, 'aside-minimize') && KTUtil.isBreakpointUp('lg')) {\n\t\t\t\t\t\t// Hover class\n\t\t\t\t\t\tKTUtil.addClass(_body, 'aside-minimize-hover');\n\n\t\t\t\t\t\tKTLayoutAsideMenu.getMenu().scrollUpdate();\n\t\t\t\t\t\tKTLayoutAsideMenu.getMenu().scrollTop();\n\t\t\t\t\t}\n\t\t\t\t}, 50);\n\t\t\t});\n\n\t\t\tKTUtil.addEvent(KTLayoutAside.getElement(), 'mouseleave', function(e) {\n\t\t\t\te.preventDefault();\n\n\t\t\t\tif (KTUtil.isBreakpointUp('lg') === false) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (insideTm) {\n\t\t\t\t\tclearTimeout(insideTm);\n\t\t\t\t\tinsideTm = null;\n\t\t\t\t}\n\n if (outsideTm) {\n\t\t\t\t\tclearTimeout(outsideTm);\n\t\t\t\t\toutsideTm = null;\n\t\t\t\t}\n\n\t\t\t\toutsideTm = setTimeout(function() {\n\t\t\t\t if (KTUtil.hasClass(_body, 'aside-minimize-hover') && KTUtil.isBreakpointUp('lg')) {\n\t\t\t\t\t KTUtil.removeClass(_body, 'aside-minimize-hover');\n\n\t\t\t\t\t\t// Hover class\n KTLayoutAsideMenu.getMenu().scrollUpdate();\n\t\t\t\t\t\tKTLayoutAsideMenu.getMenu().scrollTop();\n\t\t\t\t\t}\n\t\t\t\t}, 100);\n\t\t\t});\n\t\t}\n\t}\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _body = KTUtil.getBody();\n _element = KTUtil.getById(id);\n\n if (!_element) {\n return;\n }\n\n // Initialize menu\n _init();\n _initHover();\n\t\t},\n\n\t\tgetElement: function() {\n\t\t\treturn _element;\n\t\t},\n\n getMenu: function() {\n\t\t\treturn _menuObject;\n\t\t},\n\n pauseDropdownHover: function(time) {\n\t\t\tif (_menuObject) {\n\t\t\t\t_menuObject.pauseDropdownHover(time);\n\t\t\t}\n\t\t},\n\n\t\tcloseMobileOffcanvas: function() {\n\t\t\tif (_menuObject && KTUtil.isMobileDevice()) {\n\t\t\t\t_menuObject.hide();\n\t\t\t}\n\t\t}\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutAsideMenu;\n}\n\nexport default KTLayoutAsideMenu;","/* eslint-disable */\n\"use strict\";\n\nimport KTToggle from \"./../../components/toggle.js\";\nimport KTLayoutStickyCard from \"./sticky-card.js\";\nimport KTLayoutHeaderMenu from \"./header-menu.js\";\nimport KTLayoutAsideMenu from \"./aside-menu.js\";\nimport { KTCookie } from \"./../../components/cookie.js\";\nimport { KTUtil } from \"./../../components/util.js\";\n\nvar KTLayoutAsideToggle = function() {\n // Private properties\n var _body;\n var _element;\n var _toggleObject;\n\n\t// Initialize\n\tvar _init = function() {\n\t\t_toggleObject = new KTToggle(_element, _body, {\n\t\t\ttargetState: 'aside-minimize',\n\t\t\ttoggleState: 'active'\n\t\t});\n\n\t\t_toggleObject.on('toggle', function(toggle) {\n // Update sticky card\n if (typeof KTLayoutStickyCard !== 'undefined') {\n KTLayoutStickyCard.update();\n }\n\n // Pause header menu dropdowns\n if (typeof KTLayoutHeaderMenu !== 'undefined') {\n KTLayoutHeaderMenu.pauseDropdownHover(800);\n }\n\n // Pause aside menu dropdowns\n if (typeof KTLayoutAsideMenu !== 'undefined') {\n KTLayoutAsideMenu.pauseDropdownHover(800);\n }\n\n // Remember state in cookie\n\t\t\tKTCookie.setCookie('kt_aside_toggle_state', toggle.getState());\n\t\t\t// to set default minimized left aside use this cookie value in your\n\t\t\t// server side code and add \"kt-primary--minimize aside-minimize\" classes to\n\t\t\t// the body tag in order to initialize the minimized left aside mode during page loading.\n\t\t});\n\n\t\t_toggleObject.on('beforeToggle', function(toggle) {\n\t\t\tif (KTUtil.hasClass(_body, 'aside-minimize') === false && KTUtil.hasClass(_body, 'aside-minimize-hover')) {\n\t\t\t\tKTUtil.removeClass(_body, 'aside-minimize-hover');\n\t\t\t}\n\t\t});\n\t}\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _element = KTUtil.getById(id);\n _body = KTUtil.getBody();\n\n if (!_element) {\n return;\n }\n\n // Initialize\n _init();\n\t\t},\n\n getElement: function() {\n return _element;\n },\n\n getToggle: function() {\n\t\t\treturn _toggleObject;\n\t\t},\n\n\t\tonToggle: function(handler) {\n\t\t\tif (typeof _toggleObject.element !== 'undefined') {\n\t\t\t\t_toggleObject.on('toggle', handler);\n\t\t\t}\n\t\t}\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutAsideToggle;\n}\n\nexport default KTLayoutAsideToggle;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\n\nvar KTLayoutFooter = function() {\n // Private properties\n var _element;\n\n\t// Private functions\n\tvar _getHeight = function() {\n\t\tvar height = 0;\n\n if (_element) {\n height = KTUtil.actualHeight(_element);\n }\n\n\t\treturn height;\n\t}\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _element = KTUtil.getById(id);\n\t\t},\n\n\t\tgetHeight: function() {\n\t\t\treturn _getHeight();\n\t\t},\n\n getElement: function() {\n return _element;\n }\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutFooter;\n}\n\nexport default KTLayoutFooter;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\nimport KTLayoutHeader from \"./header.js\";\nimport KTLayoutSubheader from \"./subheader.js\";\nimport KTLayoutFooter from \"./footer.js\";\n\nvar KTLayoutContent = function() {\n // Private properties\n var _element;\n\n\t// Private functions\n\tvar _getHeight = function() {\n\t\tvar height;\n\n\t\theight = KTUtil.getViewPort().height;\n\n if (_element) {\n height = height - parseInt(KTUtil.css(_element, 'paddingTop')) - parseInt(KTUtil.css(_element, 'paddingBottom'));\n }\n\n height = height - KTLayoutHeader.getHeight();\n height = height - KTLayoutSubheader.getHeight();\n height = height - KTLayoutFooter.getHeight();\n\n\t\treturn height;\n\t}\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _element = KTUtil.getById(id);\n\t\t},\n\n\t\tgetHeight: function() {\n\t\t\treturn _getHeight();\n\t\t},\n\n getElement: function() {\n return _element;\n }\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutContent;\n}\n\nexport default KTLayoutContent;","/* eslint-disable */\n\"use strict\";\n\nimport KTScrolltop from \"./../../components/scrolltop.js\";\nimport { KTUtil } from \"./../../components/util.js\";\n\nvar KTLayoutScrolltop = function() {\n // Private properties\n var _element;\n var _object;\n\n // Private functions\n var _init = function() {\n _object = new KTScrolltop(_element, {\n offset: 300,\n speed: 600,\n });\n }\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _element = KTUtil.getById(id);\n\n if (!_element) {\n return;\n }\n\n // Initialize\n _init();\n\t\t},\n\n getElement: function() {\n return _element;\n }\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutScrolltop;\n}\n\nexport default KTLayoutScrolltop;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\nimport KTLayoutContent from \"./content.js\";\n\nvar KTLayoutStretchedCard = function() {\n // Private properties\n\tvar _element;\n\n\t// Private functions\n\tvar _init = function() {\n\t\tvar scroll = KTUtil.find(_element, '.card-scroll');\n\t\tvar cardBody = KTUtil.find(_element, '.card-body');\n\t\tvar cardHeader = KTUtil.find(_element, '.card-header');\n\n\t\tvar height = KTLayoutContent.getHeight();\n\n\t\theight = height - parseInt(KTUtil.actualHeight(cardHeader));\n\n\t\theight = height - parseInt(KTUtil.css(_element, 'marginTop')) - parseInt(KTUtil.css(_element, 'marginBottom'));\n\t\theight = height - parseInt(KTUtil.css(_element, 'paddingTop')) - parseInt(KTUtil.css(_element, 'paddingBottom'));\n\n\t\theight = height - parseInt(KTUtil.css(cardBody, 'paddingTop')) - parseInt(KTUtil.css(cardBody, 'paddingBottom'));\n\t\theight = height - parseInt(KTUtil.css(cardBody, 'marginTop')) - parseInt(KTUtil.css(cardBody, 'marginBottom'));\n\n\t\theight = height - 3;\n\n\t\tKTUtil.css(scroll, 'height', height + 'px');\n\t}\n\n // Public methods\n\treturn {\n\t\tinit: function(id) {\n _element = KTUtil.getById(id);\n\n if (!_element) {\n return;\n }\n\n // Initialize\n\t\t\t_init();\n\n // Re-calculate on window resize\n KTUtil.addResizeHandler(function() {\n\t\t\t\t_init();\n\t\t\t});\n\t\t},\n\n\t\tupdate: function() {\n\t\t\t_init();\n\t\t}\n\t};\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutStretchedCard;\n}\n\nexport default KTLayoutStretchedCard;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\nimport KTOffcanvas from \"./../../components/offcanvas.js\";\n\nvar KTLayoutQuickPanel = function() {\n // Private properties\n var _element;\n var _offcanvasObject;\n var _notificationsElement;\n var _logsElement;\n var _settingsElement;\n\n // Private functions\n var _getContentHeight = function() {\n var height;\n\n var header = KTUtil.find(_element, '.offcanvas-header');\n var content = KTUtil.find(_element, '.offcanvas-content');\n\n var height = parseInt(KTUtil.getViewPort().height);\n\n if (header) {\n height = height - parseInt(KTUtil.actualHeight(header));\n height = height - parseInt(KTUtil.css(header, 'marginTop'));\n height = height - parseInt(KTUtil.css(header, 'marginBottom'));\n }\n\n if (content) {\n height = height - parseInt(KTUtil.css(content, 'marginTop'));\n height = height - parseInt(KTUtil.css(content, 'marginBottom'));\n }\n\n height = height - parseInt(KTUtil.css(_element, 'paddingTop'));\n height = height - parseInt(KTUtil.css(_element, 'paddingBottom'));\n\n height = height - 2;\n\n return height;\n }\n\n var _init = function() {\n _offcanvasObject = new KTOffcanvas(_element, {\n overlay: true,\n baseClass: 'offcanvas',\n placement: 'right',\n closeBy: 'kt_quick_panel_close',\n toggleBy: 'kt_quick_panel_toggle'\n });\n }\n\n var _initNotifications = function() {\n KTUtil.scrollInit(_notificationsElement, {\n mobileNativeScroll: true,\n resetHeightOnDestroy: true,\n handleWindowResize: true,\n height: function() {\n return _getContentHeight();\n }\n });\n }\n\n var _initLogs = function() {\n KTUtil.scrollInit(_logsElement, {\n mobileNativeScroll: true,\n resetHeightOnDestroy: true,\n handleWindowResize: true,\n height: function() {\n return _getContentHeight();\n }\n });\n }\n\n var _initSettings = function() {\n KTUtil.scrollInit(_settingsElement, {\n mobileNativeScroll: true,\n resetHeightOnDestroy: true,\n handleWindowResize: true,\n height: function() {\n return _getContentHeight();\n }\n });\n }\n\n var _updateScrollbars = function() {\n $(_element).find('a[data-toggle=\"tab\"]').on('shown.bs.tab', function (e) {\n KTUtil.scrollUpdate(_notificationsElement);\n KTUtil.scrollUpdate(_logsElement);\n KTUtil.scrollUpdate(_settingsElement);\n });\n }\n\n // Public methods\n return {\n init: function(id) {\n _element = KTUtil.getById(id);\n _notificationsElement = KTUtil.getById('kt_quick_panel_notifications');\n _logsElement = KTUtil.getById('kt_quick_panel_logs');\n _settingsElement = KTUtil.getById('kt_quick_panel_settings');\n\n _init();\n _initNotifications();\n _initLogs();\n _initSettings();\n\n \n }\n };\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutQuickPanel;\n}\n\nexport default KTLayoutQuickPanel;","/* eslint-disable */\n\"use strict\";\n\nimport { KTUtil } from \"./../../components/util.js\";\nimport KTOffcanvas from \"./../../components/offcanvas.js\";\n\nvar KTLayoutQuickUser = function() {\n // Private properties\n var _element;\n var _offcanvasObject;\n\n // Private functions\n var _init = function() {\n var header = KTUtil.find(_element, '.offcanvas-header');\n var content = KTUtil.find(_element, '.offcanvas-content');\n\n _offcanvasObject = new KTOffcanvas(_element, {\n overlay: true,\n baseClass: 'offcanvas',\n placement: 'right',\n closeBy: 'kt_quick_user_close',\n toggleBy: 'kt_quick_user_toggle'\n });\n\n KTUtil.scrollInit(content, {\n disableForMobile: true,\n resetHeightOnDestroy: true,\n handleWindowResize: true,\n height: function() {\n var height = parseInt(KTUtil.getViewPort().height);\n\n if (header) {\n height = height - parseInt(KTUtil.actualHeight(header));\n height = height - parseInt(KTUtil.css(header, 'marginTop'));\n height = height - parseInt(KTUtil.css(header, 'marginBottom'));\n }\n\n if (content) {\n height = height - parseInt(KTUtil.css(content, 'marginTop'));\n height = height - parseInt(KTUtil.css(content, 'marginBottom'));\n }\n\n height = height - parseInt(KTUtil.css(_element, 'paddingTop'));\n height = height - parseInt(KTUtil.css(_element, 'paddingBottom'));\n\n height = height - 2;\n\n return height;\n }\n });\n }\n\n // Public methods\n return {\n init: function(id) {\n _element = KTUtil.getById(id);\n\n if (!_element) {\n return;\n }\n\n // Initialize\n _init();\n },\n\n getElement: function() {\n return _element;\n }\n };\n}();\n\n// Webpack support\nif (typeof module !== 'undefined') {\n\t// module.exports = KTLayoutQuickUser;\n}\n\nexport default KTLayoutQuickUser;","import React, {useLayoutEffect} from \"react\";\nimport {KTUtil} from \"../../_assets/js/components/util\";\nimport KTLayoutHeader from \"../../_assets/js/layout/base/header\";\nimport KTLayoutHeaderMenu from \"../../_assets/js/layout/base/header-menu\";\nimport KTLayoutHeaderTopbar from \"../../_assets/js/layout/base/header-topbar\";\nimport KTLayoutBrand from \"../../_assets/js/layout/base/brand\";\nimport KTLayoutAside from \"../../_assets/js/layout/base/aside\";\nimport KTLayoutAsideToggle from \"../../_assets/js/layout/base/aside-toggle\";\nimport KTLayoutAsideMenu from \"../../_assets/js/layout/base/aside-menu\";\nimport KTLayoutContent from \"../../_assets/js/layout/base/content\";\nimport KTLayoutFooter from \"../../_assets/js/layout/base/footer\";\nimport KTLayoutSubheader from \"../../_assets/js/layout/base/subheader\";\nimport KTLayoutScrolltop from \"../../_assets/js/layout/extended/scrolltop\";\nimport KTLayoutStickyCard from \"../../_assets/js/layout/base/sticky-card\";\nimport KTLayoutStretchedCard from \"../../_assets/js/layout/base/stretched-card\";\nimport KTLayoutQuickPanel from \"../../_assets/js/layout/extended/quick-panel\";\nimport KTLayoutQuickUser from \"../../_assets/js/layout/extended/quick-user\";\n\nexport function LayoutInit() {\n useLayoutEffect(() => {\n // Initialization\n KTUtil.ready(function () {\n ////////////////////////////////////////////////////\n // Layout Base Partials(mandatory for core layout)//\n ////////////////////////////////////////////////////\n // Init Desktop & Mobile Headers\n KTLayoutHeader.init('kt_header', 'kt_header_mobile');\n\n // Init Header Menu\n KTLayoutHeaderMenu.init('kt_header_menu', 'kt_header_menu_wrapper');\n // Init Header Topbar For Mobile Mode\n KTLayoutHeaderTopbar.init('kt_header_mobile_topbar_toggle');\n // Init Brand Panel For Logo\n KTLayoutBrand.init('kt_brand');\n // Init Aside\n KTLayoutAside.init('kt_aside');\n\n // Init Aside Menu Toggle\n KTLayoutAsideToggle.init('kt_aside_toggle');\n //\n // Init Aside Menu\n KTLayoutAsideMenu.init('kt_aside_menu');\n\n // Init Content\n KTLayoutContent.init('kt_content');\n\n // Init Footer\n KTLayoutFooter.init('kt_footer');\n\n\n //////////////////////////////////////////////\n // Layout Extended Partials(optional to use)//\n //////////////////////////////////////////////\n KTLayoutSubheader.init('kt_subheader');\n\n // Init Scrolltop\n KTLayoutScrolltop.init('kt_scrolltop');\n\n // Init Sticky Card\n KTLayoutStickyCard.init('kt_page_sticky_card');\n\n // Init Stretched Card\n KTLayoutStretchedCard.init('kt_page_stretched_card');\n\n // Init Quick Offcanvas Panel\n KTLayoutQuickPanel.init('kt_quick_panel');\n\n // Init Quick User Panel\n KTLayoutQuickUser.init('kt_quick_user');\n });\n }, []);\n return <>;\n}\n","/* eslint-disable no-restricted-imports */\n/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React, {forwardRef} from \"react\";\nimport {OverlayTrigger, Tooltip} from \"react-bootstrap\";\nimport Dropdown from \"react-bootstrap/Dropdown\";\nimport SVG from \"react-inlinesvg\";\nimport {DropdownMenu1} from \"../../../../_partials/dropdowns\";\nimport {toAbsoluteUrl} from \"../../../../_helpers\";\n\nconst QuickActionsDropdownToggle = forwardRef((props, ref) => {\n return (\n {\n e.preventDefault();\n props.onClick(e);\n }}\n id=\"kt_subheader_quick_actions\"\n className=\"btn btn-sm btn-clean btn-icon\"\n >\n {\" \"}\n \n \n \n \n \n \n );\n});\n\nexport function QuickActions() {\n return (\n <>\n Quick actions}\n >\n \n \n\n \n \n \n \n \n \n );\n}\n","/* eslint-disable jsx-a11y/anchor-is-valid */\nimport React from \"react\";\nimport {Link} from \"react-router-dom\";\n\nexport function BreadCrumbs({items}) {\n if (!items || !items.length) {\n return \"\";\n }\n\n return (\n
      \n
    • \n \n \n \n
    • \n {items.map((item, index) => (\n
    • \n \n {item.title}\n \n
    • \n ))}\n
    \n );\n}\n","import React, { createContext, useState, useContext } from \"react\";\n\nexport function getBreadcrumbsAndTitle(menuId, pathName) {\n const result = {\n breadcrumbs: [],\n title: \"\",\n };\n\n const menu = document.getElementById(menuId);\n if (!menu) {\n return result;\n }\n\n const activeLinksArray = Array.from(\n menu.getElementsByClassName(\"active\") || []\n );\n const activeLinks = activeLinksArray.filter((el) => el.tagName === \"A\");\n if (!activeLinks) {\n return result;\n }\n\n activeLinks.forEach((link) => {\n const titleSpans = link.getElementsByClassName(\"menu-text\");\n if (titleSpans) {\n const titleSpan = Array.from(titleSpans).find(\n (t) => t.innerHTML && t.innerHTML.trim().length > 0\n );\n if (titleSpan) {\n result.breadcrumbs.push({\n pathname: link.pathname,\n title: titleSpan.innerHTML,\n });\n }\n }\n });\n result.title = getTitle(result.breadcrumbs, pathName);\n return result;\n}\n\nexport function getTitle(breadCrumbs, pathname) {\n if (!breadCrumbs || !pathname) {\n return \"\";\n }\n\n const length = breadCrumbs.length;\n if (!length) {\n return \"\";\n }\n\n return breadCrumbs[length - 1].title;\n}\n\nconst SubheaderContext = createContext();\n\nexport function useSubheader() {\n return useContext(SubheaderContext);\n}\n\nexport const SubheaderConsumer = SubheaderContext.Consumer;\n\nexport function MetronicSubheaderProvider({ children }) {\n const [title, setTitle] = useState(\"\");\n const [breadcrumbs, setBreadcrumbs] = useState([]);\n const value = { title, setTitle, breadcrumbs, setBreadcrumbs };\n return (\n \n {children}\n \n );\n}\n","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React, {useMemo, useLayoutEffect, useEffect} from \"react\";\nimport objectPath from \"object-path\";\nimport {useLocation} from \"react-router-dom\";\nimport {QuickActions} from \"./components/QuickActions\";\nimport {BreadCrumbs} from \"./components/BreadCrumbs\";\nimport {getBreadcrumbsAndTitle, useSubheader} from \"../../_core/MetronicSubheader\";\nimport {useHtmlClassService} from \"../../_core/MetronicLayout\"\n\nexport function SubHeader() {\n const uiService = useHtmlClassService();\n const location = useLocation();\n const subheader = useSubheader();\n\n const layoutProps = useMemo(() => {\n return {\n config: uiService.config,\n subheaderMobileToggle: objectPath.get(\n uiService.config,\n \"subheader.mobile-toggle\"\n ),\n subheaderCssClasses: uiService.getClasses(\"subheader\", true),\n subheaderContainerCssClasses: uiService.getClasses(\n \"subheader_container\",\n true\n )\n };\n }, [uiService]);\n\n useLayoutEffect(() => {\n const aside = getBreadcrumbsAndTitle(\"kt_aside_menu\", location.pathname);\n const header = getBreadcrumbsAndTitle(\"kt_header_menu\", location.pathname);\n const breadcrumbs = (aside && aside.breadcrumbs.length > 0) ? aside.breadcrumbs : header.breadcrumbs;\n subheader.setBreadcrumbs(breadcrumbs);\n subheader.setTitle((aside && aside.title && aside.title.length > 0) ? aside.title : header.title);\n // eslint-disable-next-line\n }, [location.pathname]);\n\n // Do not remove this useEffect, need from update title/breadcrumbs outside (from the page)\n useEffect(() => {}, [subheader]);\n\n return (\n \n \n {/* Info */}\n
    \n {layoutProps.subheaderMobileToggle && (\n \n \n \n )}\n\n
    \n
    \n <>\n {subheader.title}\n \n {/**/}\n
    \n\n
    \n\n\n \n
    \n\n {/* Toolbar */}\n \n \n \n );\n}\n","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid,no-undef */\nimport React, {useState} from \"react\";\nimport SVG from \"react-inlinesvg\";\nimport {Tab, Nav} from \"react-bootstrap\";\nimport {toAbsoluteUrl} from \"../../../../_helpers\";\n\nexport function QuickPanel() {\n const [selectedTab, setSelectedTab] = useState(\"AuditLogs\");\n\n const setTab = _tabName => {\n setSelectedTab(_tabName);\n };\n\n return (\n
    \n \n {/*begin::Header*/}\n \n \n \n \n Audit Logs\n \n \n \n \n Notifications\n \n \n \n \n Settings\n \n \n \n\n
    \n \n \n \n
    \n
    \n {/*end::Header*/}\n\n {/*begin::Content*/}\n
    \n
    \n \n
    \n
    System Messages
    \n
    \n
    \n \n \n \n
    \n
    \n \n Top Authors\n \n \n Most Successful Fellas\n \n
    \n \n +82$\n \n
    \n\n
    \n
    \n \n \n \n
    \n
    \n \n Popular Authors\n \n \n Most Successful Fellas\n \n
    \n \n +280$\n \n
    \n\n
    \n
    \n \n \n \n
    \n
    \n \n New Users\n \n \n Most Successful Fellas\n \n
    \n \n +4500$\n \n
    \n\n
    \n
    \n \n \n \n
    \n
    \n \n Active Customers\n \n \n Most Successful Fellas\n \n
    \n \n +4500$\n \n
    \n\n
    \n
    \n \n \n \n
    \n
    \n \n Bestseller Theme\n \n \n Most Successful Fellas\n \n
    \n \n +4500$\n \n
    \n
    \n\n
    \n
    Notifications
    \n\n
    \n \n \n \n\n
    \n \n Another purpose persuade\n \n \n Due in 2 Days\n \n
    \n\n \n +28%\n \n
    \n\n
    \n \n \n \n
    \n \n Would be to people\n \n \n Due in 2 Days\n \n
    \n\n \n +50%\n \n
    \n\n
    \n \n \n \n
    \n \n Purpose would be to persuade\n \n \n Due in 2 Days\n \n
    \n\n \n -27%\n \n
    \n\n
    \n \n \n \n\n
    \n \n The best product\n \n \n Due in 2 Days\n \n
    \n\n \n +8%\n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 5 new user generated report\n
    \n
    Reports based on sales
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 2 new items submited\n
    \n
    by Grog John
    \n
    \n
    \n
    \n\n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 79 PSD files generated\n
    \n
    Reports based on sales
    \n
    \n
    \n
    \n\n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n $2900 worth producucts sold\n
    \n
    Total 234 items
    \n
    \n
    \n
    \n\n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 4.5h-avarage response time\n
    \n
    Fostest is Barry
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 3 Defence alerts\n
    \n
    \n 40% less alerts thar last week\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n Avarage 4 blog posts per author\n
    \n
    Most posted 12 time
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 16 authors joined last week\n
    \n
    \n 9 photodrapehrs, 7 designer\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 2 new items have been submited\n
    \n
    by Grog John
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 2.8 GB-total downloads size\n
    \n
    \n Mostly PSD end AL concepts\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n $2900 worth producucts sold\n
    \n
    Total 234 items
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 7 new user generated report\n
    \n
    Reports based on sales
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n 4.5h-avarage response time\n
    \n
    Fostest is Barry
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    Customer Care
    \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n\n
    \n\n
    \n
    Reports
    \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n\n
    \n\n
    \n
    Memebers
    \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n
    \n \n \n \n {/*end::Content*/}\n \n \n );\n}\n","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid,no-undef */\nimport React from \"react\";\nimport SVG from \"react-inlinesvg\";\nimport { useHistory } from \"react-router-dom\";\nimport {toAbsoluteUrl} from \"../../../../_helpers\";\n\nexport function QuickUser() {\n const history = useHistory();\n\n const logoutClick = () => {\n const toggle = document.getElementById(\"kt_quick_user_toggle\");\n if (toggle) {\n toggle.click();\n }\n history.push(\"/logout\");\n };\n\n return (\n
    \n
    \n

    \n User Profile\n 12 messages\n

    \n \n \n \n
    \n\n \n
    \n \n
    \n \n
    \n
    \n \n James Jones\n \n
    Application Developer
    \n \n {/* \n Sign Out\n */}\n \n
    \n
    \n\n
    \n\n \n\n
    \n\n
    \n
    Recent Notifications
    \n\n
    \n \n \n \n\n
    \n \n Another purpose persuade\n \n Due in 2 Days\n
    \n\n \n +28%\n \n
    \n\n
    \n \n \n \n
    \n \n Would be to people\n \n Due in 2 Days\n
    \n\n \n +50%\n \n
    \n\n
    \n \n \n \n
    \n \n Purpose would be to persuade\n \n Due in 2 Days\n
    \n\n \n -27%\n \n
    \n\n
    \n \n \n \n\n
    \n \n The best product\n \n Due in 2 Days\n
    \n\n \n +8%\n \n
    \n
    \n
    \n
    \n );\n}\n","import React from \"react\";\nimport SVG from \"react-inlinesvg\";\nimport {toAbsoluteUrl} from \"../../../_helpers\";\n\nexport function ScrollTop() {\n return (\n
    \n \n \n {\" \"}\n
    \n );\n}\n","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React from \"react\";\nimport {Link} from \"react-router-dom\";\nimport {OverlayTrigger, Tooltip} from \"react-bootstrap\";\n\nexport function StickyToolbar() {\n return (\n <>\n
      \n Layout Builder}\n >\n
    • \n \n \n \n
    • \n \n\n Documentation}\n >\n
    • \n \n \n \n
    • \n \n
    \n \n );\n}\n","import React, {useMemo} from \"react\";\nimport objectPath from \"object-path\";\n// LayoutContext\nimport {useHtmlClassService} from \"../_core/MetronicLayout\";\n// Import Layout components\nimport {Header} from \"./header/Header\";\nimport {HeaderMobile} from \"./header-mobile/HeaderMobile\";\nimport {Aside} from \"./aside/Aside\";\nimport {Footer} from \"./footer/Footer\";\nimport {LayoutInit} from \"./LayoutInit\";\nimport {SubHeader} from \"./subheader/SubHeader\";\nimport {QuickPanel} from \"./extras/offcanvas/QuickPanel\";\nimport {QuickUser} from \"./extras/offcanvas/QuickUser\";\nimport {ScrollTop} from \"./extras/ScrollTop\";\nimport {StickyToolbar} from \"./extras/StickyToolbar\";\n\nexport function Layout({ children }) {\n const uiService = useHtmlClassService();\n // Layout settings (cssClasses/cssAttributes)\n const layoutProps = useMemo(() => {\n return {\n layoutConfig: uiService.config,\n selfLayout: objectPath.get(uiService.config, \"self.layout\"),\n asideDisplay: objectPath.get(uiService.config, \"aside.self.display\"),\n subheaderDisplay: objectPath.get(uiService.config, \"subheader.display\"),\n stickyToolbarDisplay: objectPath.get(uiService.config, \"extras.toolbar.display\"),\n desktopHeaderDisplay: objectPath.get(\n uiService.config,\n \"header.self.fixed.desktop\"\n ),\n contentCssClasses: uiService.getClasses(\"content\", true),\n contentContainerClasses: uiService.getClasses(\"content_container\", true),\n contentExtended: objectPath.get(uiService.config, \"content.extended\")\n };\n }, [uiService]);\n\n return layoutProps.selfLayout !== \"blank\" ? (\n <>\n {/*begin::Main*/}\n \n
    \n {/*begin::Page*/}\n
    \n {layoutProps.asideDisplay && (
    \n {/*end::Wrapper*/}\n
    \n {/*end::Page*/}\n \n \n \n \n {/* Muestro/Oculto toolbar basandome en LayoutConfig */}\n {layoutProps.stickyToolbarDisplay && ()}\n {/* */}\n {/*end::Main*/}\n \n \n ) : (\n // BLANK LAYOUT\n
    {children}
    \n );\n}\n","import React, {useEffect, useState} from \"react\";\nimport {useRouteMatch} from \"react-router-dom\";\n\nexport function Content({ children }) {\n const match = useRouteMatch() || {};\n const animationEndClass = \"grid-animateContent-finished\";\n const [cssClassesState, setCssClassesState] = useState([\n \"grid-animateContent\",\n animationEndClass\n ]);\n\n useEffect(() => {\n // for animation start should toggle 'grid-animateContent-finished' css class\n // TODO: change useMemo\n const fullClasses = [...cssClassesState];\n const startAnimation = fullClasses.filter(el => el !== animationEndClass);\n setCssClassesState(startAnimation);\n const timeOutId = setTimeout(() => {\n setCssClassesState(fullClasses);\n }, 200);\n\n return () => {\n clearTimeout(timeOutId);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [match.url]);\n\n return <>{children};\n}\n","import React from \"react\";\nimport {Route} from \"react-router-dom\";\nimport {Content} from \"./Content\";\n\nexport function ContentRoute({ children, component, render, ...props }) {\n return (\n \n {routeProps => {\n if (typeof children === \"function\") {\n return {children(routeProps)};\n }\n\n if (!routeProps.match) {\n return null;\n }\n\n if (children) {\n return {children};\n }\n\n if (component) {\n return (\n {React.createElement(component, routeProps)}\n );\n }\n\n if (render) {\n return {render(routeProps)};\n }\n\n return null;\n }}\n \n );\n}\n","import React, {createContext, useContext, useState, useEffect} from \"react\";\n\nconst MetronicSplashScreenContext = createContext();\n\nexport function MetronicSplashScreenProvider({ children }) {\n const [count, setCount] = useState(0);\n let visible = count > 0;\n\n useEffect(() => {\n const splashScreen = document.getElementById(\"splash-screen\");\n\n // Show SplashScreen\n if (splashScreen && visible) {\n splashScreen.classList.remove(\"hidden\");\n\n return () => {\n splashScreen.classList.add(\"hidden\");\n };\n }\n\n // Hide SplashScreen\n let timeout;\n if (splashScreen && !visible) {\n timeout = setTimeout(() => {\n splashScreen.classList.add(\"hidden\");\n }, 3000);\n }\n\n return () => {\n clearTimeout(timeout);\n };\n }, [visible]);\n\n return (\n \n {children}\n \n );\n}\n\nexport function LayoutSplashScreen({ visible = true }) {\n // Everything are ready - remove splashscreen\n const setCount = useContext(MetronicSplashScreenContext);\n\n useEffect(() => {\n if (!visible) {\n return;\n }\n\n setCount(prev => {\n return prev + 1;\n });\n\n return () => {\n setCount(prev => {\n return prev - 1;\n });\n };\n }, [setCount, visible]);\n\n return null;\n}\n","import React from \"react\";\nimport {createMuiTheme, ThemeProvider} from \"@material-ui/core\";\n\nconst theme = createMuiTheme(\n /**\n * @see https://material-ui.com/customization/themes/#theme-configuration-variables\n */\n {\n // direction: \"rtl\",\n typography: {\n fontFamily: [\"Poppins\"].join(\",\")\n },\n\n palette: {\n primary: {\n // light: will be calculated from palette.primary.main,\n main: \"#17c191\",\n // dark: will be calculated from palette.primary.main,\n // contrastText: \"#fff\" //will be calculated to contrast with palette.primary.main\n },\n secondary: {\n // light: will be calculated from palette.primary.main,\n main: \"#3783e7\",\n // dark: will be calculated from palette.primary.main,\n // contrastText: \"#fff\" //will be calculated to contrast with palette.primary.main\n },\n error: {\n // light: will be calculated from palette.primary.main,\n main: \"#f018a6\",\n // dark: will be calculated from palette.primary.main,\n // contrastText: \"#fff\" //will be calculated to contrast with palette.primary.main\n }\n },\n\n /**\n * @see https://material-ui.com/customization/globals/#default-props\n */\n props: {\n // Name of the component ⚛️\n MuiButtonBase: {\n // The properties to apply\n disableRipple: false // No more ripple, on the whole application 💣!\n },\n\n // Set default elevation to 1 for popovers.\n MuiPopover: {\n elevation: 1\n }\n }\n }\n);\n\nexport function MaterialThemeProvider(props) {\n const { children } = props;\n\n return {children};\n}\n","export {Layout} from \"./components/Layout\";\nexport {ContentRoute} from \"./components/content/ContentRoute\";\nexport {Content} from \"./components/content/Content\";\n\n// core\nexport * from \"./_core/LayoutConfig\";\nexport * from \"./_core/MetronicLayout\";\nexport * from \"./_core/MetronicSplashScreen\";\nexport * from \"./_core/MaterialThemeProvider\";\nexport * from \"./_core/MetronicSubheader\";\n","import React, {useState} from \"react\";\nimport clsx from \"clsx\";\nimport copy from \"clipboard-copy\";\nimport {Tooltip} from \"@material-ui/core\";\n\nexport function CodeBlockToolbar({\n showViewCode = false,\n code,\n isCodeBlockShown,\n setIsCodeBlockShown\n}) {\n const [isCopySucceed, setIsCopySucceed] = useState(false);\n const copyCode = () => {\n copy(code).then(() => {\n setIsCopySucceed(true);\n setTimeout(() => {\n setIsCopySucceed(false);\n }, 2000);\n });\n };\n\n const toggleShowCode = () => {\n setIsCodeBlockShown(!isCodeBlockShown);\n };\n\n return (\n <>\n {showViewCode && (\n \n \n \n )}\n \n \n \n \n );\n}\n","import React, { forwardRef, useEffect, useState } from \"react\";\nimport clsx from \"clsx\";\nimport {isFragment} from \"react-is\";\n\nexport const CardHeaderIcon = forwardRef(({ className }, ref) => (\n \n));\n\nexport const CardHeaderTitle = forwardRef(({ className, ...props }, ref) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n

    \n));\n\nexport const CardHeaderToolbar = forwardRef(\n ({ children, className, ...props }, ref) => (\n
    \n {children}\n
    \n )\n);\n\nexport const CardHeader = forwardRef(\n (\n {\n children,\n icon,\n title,\n toolbar,\n className,\n sticky = false,\n labelRef,\n ...props\n },\n ref\n ) => {\n const [top, setTop] = useState(0);\n const [windowHeight, setWindowHeight] = useState(0);\n\n useEffect(() => {\n handleResize();\n\n function handleResize() {\n setWindowHeight(window.innerWidth);\n }\n\n window.addEventListener(\"resize\", handleResize);\n\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n });\n\n useEffect(() => {\n // Skip if sticky is disabled or on initial render when we don't know about window height.\n if (!sticky || windowHeight === 0) {\n return;\n }\n\n const headerElement = document.querySelector(\".header\");\n const subheaderElement = document.querySelector(\".subheader\");\n const headerMobileElement = document.querySelector(\".header-mobile\");\n\n let nextMarginTop = 0;\n\n // mobile header\n if (window.getComputedStyle(headerElement).height === \"0px\") {\n nextMarginTop = headerMobileElement.offsetHeight;\n } else {\n // desktop header\n if (document.body.classList.contains(\"header-minimize-topbar\")) {\n // hardcoded minimized header height\n nextMarginTop = 60;\n } else {\n // normal fixed header\n if (document.body.classList.contains(\"header-fixed\")) {\n nextMarginTop += headerElement.offsetHeight;\n }\n\n if (document.body.classList.contains(\"subheader-fixed\")) {\n nextMarginTop += subheaderElement.offsetHeight;\n }\n }\n }\n\n setTop(nextMarginTop);\n }, [sticky, windowHeight]);\n\n return (\n \n {title != null && (\n
    \n {icon}\n\n {/* Wrap string and fragments in CardHeaderTitle */\n typeof title === \"string\" || isFragment(title) ? (\n {title}\n ) : (\n title\n )}\n
    \n )}\n\n {toolbar}\n {children}\n \n );\n }\n);\n\nexport const CardBody = forwardRef(\n ({ fit, fluid, className, ...props }, ref) => (\n \n )\n);\n\nexport const CardFooter = forwardRef(({ className, ...props }, ref) => (\n
    \n));\n\nexport const Card = forwardRef(({ fluidHeight, className, ...props }, ref) => (\n \n));\n\n// Set display names for debugging.\nif (process.env.NODE_ENV !== \"production\") {\n Card.displayName = \"Card\";\n\n CardHeader.displayName = \"CardHeader\";\n CardHeaderIcon.displayName = \"CardHeaderIcon\";\n CardHeaderTitle.displayName = \"CardHeaderTitle\";\n CardHeaderToolbar.displayName = \"CardHeaderToolbar\";\n\n CardBody.displayName = \"CardBody\";\n CardFooter.displayName = \"CardFooter\";\n}\n","/* eslint-disable jsx-a11y/aria-proptypes */\n/* eslint-disable jsx-a11y/anchor-is-valid */\nimport React from \"react\";\nimport clsx from \"clsx\";\n// https://github.com/conorhastings/react-syntax-highlighter#prism\nimport {Prism as SyntaxHighlighter} from \"react-syntax-highlighter\";\n// See https://github.com/PrismJS/prism-themes\nimport {coy as highlightStyle} from \"react-syntax-highlighter/dist/esm/styles/prism\";\n\nexport const KTCodeBlock = ({ languages, tabs, codeShown, customStyle }) => {\n const { isCodeBlockShown } = codeShown;\n const { tabId, setTabId } = tabs;\n return (\n <>\n {languages.length === 0 && <>}\n {languages.length === 1 && (\n \n
    \n \n {languages[0].code}\n \n
    \n
    \n )}\n {languages.length > 1 && (\n <>\n \n \n {languages.map((lang, index) => (\n
  • \n setTabId(index)}\n >\n {lang.shortCode}\n \n
  • \n ))}\n \n
    \n {languages.map((lang, index) => (\n \n \n \n {lang.code}\n \n
    \n \n ))}\n \n \n \n )}\n \n \n );\n};\n","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React, {useState, useEffect} from \"react\";\nimport {KTCodeBlock} from \"./KTCodeBlock\";\nimport {Card, CardBody, CardHeader} from \"../Card\";\nimport {CodeBlockToolbar} from \"../code-examples/CodeBlockToolbar\";\n\nexport function KTCodeExample({\n jsCode,\n children,\n beforeCodeTitle,\n languages,\n codeBlockHeight\n}) {\n const defaultLanguages = !languages\n ? [\n {\n code: jsCode,\n language: \"javascript\",\n shortCode: \"JS\"\n }\n ]\n : languages;\n const [isCodeBlockShown, setIsCodeBlockShown] = useState(false);\n const [tabId, setTabId] = useState(0);\n const [customStyle, setCustomStyle] = useState({});\n useEffect(() => {\n const styles = {};\n\n if (codeBlockHeight) {\n styles.height = codeBlockHeight;\n styles.overflowX = \"auto\";\n }\n\n if (defaultLanguages.length > 1) {\n styles.background = `none transparent !important`;\n }\n\n setCustomStyle(styles);\n }, [codeBlockHeight, defaultLanguages.length]);\n\n const toolbar = (\n
    \n
    \n \n
    \n
    \n );\n\n return (\n \n \n \n <>{children}\n \n \n \n );\n}\n","import React from \"react\";\nimport {withRouter} from \"react-router-dom\";\nimport {ProgressBar} from \"react-bootstrap\";\n\n// TODO: Should be rewrited to pure function\nclass AnimateLoading extends React.Component {\n animateTimeout;\n stopAnimateTimeout;\n state = {\n width: 0,\n routeChanged: false\n };\n\n componentDidUpdate(nextProps) {\n if (this.props.location.pathname !== nextProps.location.pathname) {\n this.animate();\n this.scrollToTop();\n }\n }\n\n scrollToTop() {\n const scrollToTopBtn = document.getElementById(\"kt_scrolltop\");\n if (scrollToTopBtn) {\n scrollToTopBtn.click();\n }\n }\n\n animate() {\n this.animateTimeout = setTimeout(() => {\n if (this.state.width <= 100) {\n this.setState({ width: this.state.width + 10 });\n this.animate();\n } else {\n this.stopAnimate();\n }\n }, 30);\n }\n stopAnimate() {\n clearTimeout(this.animateInterval);\n this.stopAnimateTimeout = setTimeout(() => {\n this.setState({ width: 0 });\n }, 300);\n }\n componentWillUnmount() {\n if (this.stopAnimateTimeout) {\n clearTimeout(this.stopAnimateTimeout);\n }\n if (this.animateTimeout) {\n clearTimeout(this.animateTimeout);\n }\n }\n render() {\n return (\n \n {this.state.width > 0 && (\n \n )}\n \n );\n }\n}\n\nexport default withRouter(AnimateLoading);\n","import React, { forwardRef } from \"react\";\nimport clsx from \"clsx\";\nimport SVG from \"react-inlinesvg\";\nimport {toAbsoluteUrl} from \"../../_helpers\";\n\nexport const Notice = forwardRef(\n (\n {\n icon,\n svg,\n iconRef,\n textRef,\n iconWrapperRef,\n className,\n children,\n ...props\n },\n ref\n ) => {\n return (\n \n
    \n \n \n \n
    \n\n
    \n {children}\n
    \n \n );\n }\n);\n\n// Set display name for debugging.\nif (process.env.NODE_ENV !== \"production\") {\n Notice.displayName = \"Notice\";\n}\n","// CodeExamples\nexport {CodeBlock} from \"./code-examples/CodeBlock\";\nexport {CodeBlockToolbar} from \"./code-examples/CodeBlockToolbar\";\nexport {CodeExample} from \"./code-examples/CodeExample\";\nexport {CodeExampleSimple} from \"./code-examples/CodeExampleSimple\";\n\n// KTCodeExamples\nexport {KTCodeBlock} from \"./code-examples-kt/KTCodeBlock\";\nexport {KTCodeExample} from \"./code-examples-kt/KTCodeExample\";\n\n// Forms\nexport {DatePickerField} from \"./forms/DatePickerField\";\nexport {FieldFeedbackLabel} from \"./forms/FieldFeedbackLabel\";\nexport {FormAlert} from \"./forms/FormAlert\";\nexport {Input} from \"./forms/Input\";\nexport {Select} from \"./forms/Select\";\nexport {Checkbox} from \"./forms/Checkbox\";\nexport {HeaderCheckbox} from \"./forms/HeaderCheckbox\";\n\n\n// Paginations\nexport {Pagination} from \"./pagination/Pagination\"\nexport {PaginationLinks} from \"./pagination/PaginationLinks\";\nexport {PaginationToolbar} from \"./pagination/PaginationToolbar\";\n\n// Controls\nexport * from \"./Card\";\nexport {default as AnimateLoading} from \"./AnimateLoading\";\nexport {LoadingDialog} from \"./LoadingDialog\";\nexport {Notice} from \"./Notice\";\nexport {SplashScreen} from \"./SplashScreen\";\nexport {SVGIcon} from \"./SVGIcon\";\nexport {ModalProgressBar} from \"./ModalProgressBar\";","export function removeCSSClass(ele, cls) {\n const reg = new RegExp(\"(\\\\s|^)\" + cls + \"(\\\\s|$)\");\n ele.className = ele.className.replace(reg, \" \");\n}\n\nexport function addCSSClass(ele, cls) {\n ele.classList.add(cls);\n}\n\nexport const toAbsoluteUrl = pathname => process.env.PUBLIC_URL + pathname;\n","import * as utils from \"./LocalStorageHelpers\";\n\nconst localStorageLastLocationKey = \"metronic-lastLocation\";\n\nfunction acceptLocation(lastLocation) {\n if (\n lastLocation &&\n lastLocation.pathname &&\n lastLocation.pathname !== \"/\" &&\n lastLocation.pathname.indexOf(\"auth\") === -1 &&\n lastLocation.pathname !== \"/logout\"\n ) {\n return true;\n }\n\n return false;\n}\n\nexport function saveLastLocation(lastLocation) {\n if (acceptLocation(lastLocation)) {\n utils.setStorage(\n localStorageLastLocationKey,\n JSON.stringify(lastLocation),\n 120\n );\n }\n}\n\nexport function forgotLastLocation() {\n utils.removeStorage(localStorageLastLocationKey);\n}\n\nexport function getLastLocation() {\n const defaultLocation = { pathname: \"/\", title: \"Dashboard\"};\n const localStorateLocations = utils.getStorage(localStorageLastLocationKey);\n if (!localStorateLocations) {\n return { pathname: \"/\", title: \"Dashboard\"};\n }\n\n try {\n const result = JSON.parse(localStorateLocations);\n return result;\n } catch (error) {\n console.error(error);\n return defaultLocation;\n }\n}\n\nexport function getCurrentUrl(location) {\n return location.pathname.split(/[?#]/)[0];\n}\n\nexport function checkIsActive(location, url) {\n const current = getCurrentUrl(location);\n if (!current || !url) {\n return false;\n }\n\n if (current === url) {\n return true;\n }\n\n if (current.indexOf(url) > -1) {\n return true;\n }\n\n return false;\n}\n","/* Pagination Helprs */\nimport React from \"react\";\n\nexport const getPagesCount = (totalSize, sizePerPage) => {\n return Math.ceil(totalSize / sizePerPage);\n};\n\nexport const getPages = (page, pagesCount, paginationSize) => {\n const result = [];\n if (!page) {\n return result;\n }\n\n if (pagesCount === 1) {\n result.push(1);\n return result;\n }\n\n if (pagesCount < page) {\n return result;\n }\n\n if (pagesCount < paginationSize + 1) {\n for (let i = 1; i < pagesCount + 1; i++) {\n result.push(i);\n }\n return result;\n }\n\n if (page === 1) {\n for (let i = 1; i < paginationSize + 1; i++) {\n if (i < pagesCount) {\n result.push(i);\n }\n }\n return result;\n }\n\n if (page === pagesCount) {\n for (let i = pagesCount - paginationSize + 1; i <= pagesCount; i++) {\n if (i <= pagesCount) {\n result.push(i);\n }\n }\n return result;\n }\n\n const shiftCount = Math.floor(paginationSize / 2);\n if (shiftCount < 1) {\n result.push(page);\n return result;\n }\n\n //\n if (page < shiftCount + 2) {\n for (let i = 1; i < paginationSize + 1; i++) {\n result.push(i);\n }\n return result;\n }\n\n if (pagesCount - page < shiftCount + 2) {\n for (let i = pagesCount - paginationSize; i < pagesCount + 1; i++) {\n result.push(i);\n }\n return result;\n }\n\n for (let i = page - shiftCount; i < page; i++) {\n if (i > 0) {\n result.push(i);\n }\n }\n result.push(page);\n for (let i = page + 1; i < page + shiftCount + 1; i++) {\n if (i <= pagesCount) {\n result.push(i);\n }\n }\n\n return result;\n};\n\nexport function getHandlerTableChange(setQueryParams) {\n return (type, { page, sizePerPage, sortField, sortOrder, data }) => {\n const pageNumber = page || 1;\n setQueryParams((prev) =>\n type === \"sort\"\n ? { ...prev, sortOrder, sortField }\n : type === \"pagination\"\n ? { ...prev, pageNumber, pageSize: sizePerPage }\n : prev\n );\n };\n}\n\nexport function PleaseWaitMessage({ entities }) {\n return <>{entities === null &&
    Please wait...
    };\n}\n\nexport function NoRecordsFoundMessage({ entities }) {\n const customersList = entities === null ? [] : entities;\n return (\n <>\n {customersList.length === 0 && entities !== null && (\n
    No records found
    \n )}\n \n );\n}\n","export * from \"./AssetsHelpers\";\nexport * from \"./LocalStorageHelpers\";\nexport * from \"./RouterHelpers\";\nexport * from \"./TablePaginationHelpers\";\nexport * from \"./TableRowSelectionHelpers\";\nexport * from \"./TableSortingHelpers\";","/* eslint-disable no-script-url,jsx-a11y/anchor-is-valid */\nimport React from \"react\";\n\nexport function DropdownMenu1() {\n return (<>\n {/*begin::Navigation*/}\n \n {/*end::Navigation*/}\n );\n}\n","/* eslint-disable jsx-a11y/anchor-is-valid */\nimport React from \"react\";\n\nexport const DropdownCustomToggler = React.forwardRef((props, ref) => {\n return (\n {\n e.preventDefault();\n props.onClick(e);\n }}\n >\n {props.children}\n \n );\n});\n","import React from \"react\";\n\nexport const DropdownTopbarItemToggler = React.forwardRef((props, ref) => {\n return (\n {\n e.preventDefault();\n props.onClick(e);\n }}\n >\n {props.children}\n \n );\n});\n\nDropdownTopbarItemToggler.displayName = 'DropdownTopbarItemToggler';\n","// Dropdowns\nexport {DropdownMenu1} from \"./DropdownMenu1\";\nexport {DropdownMenu2} from \"./DropdownMenu2\";\nexport {DropdownMenu3} from \"./DropdownMenu3\";\nexport {DropdownMenu4} from \"./DropdownMenu4\";\n\nexport {DropdownCustomToggler} from \"./DropdownCustomToggler\";\nexport {DropdownTopbarItemToggler} from \"./DropdownTopbarItemToggler\";"],"sourceRoot":""}