{"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/_core/HTMLClassService.js","_metronic/layout/_core/MetronicLayout.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/_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","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","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","headerSelfTheme","LAYOUT_CONFIG_KEY","REACT_APP_LAYOUT_CONFIG_KEY","HtmlClassServiceContext","MetronicLayoutProvider","lc","hcs","service","setConfig","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","disabledAsideSelfDisplay","getHeaderLogo","headerClasses","headerAttributes","headerContainerClasses","menuHeaderDisplay","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.af2e3cf7.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 28/12/2023.

\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([2021,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 3794 29-5989 / \r\n +54 9 3794 29-5953 / \r\n +54 9 3794 80-7006\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 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 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 {/*Instructivo: Inscripción Online {process.env.REACT_APP_CicloLectivoActual}*/}\r\n Establecimientos con vacantes\r\n

\r\n Lista de Establecimientos Nivel Inicial
\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 3794 29-5989
\r\n
+54 9 3794 29-5953
\r\n
+54 9 3794 80-7006
\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;","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 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","/* 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":""}