Este proyecto fue generado con Angular CLI versión 17.0.5.
Ejecute npm install y entonces npm run start:both para los dos servidores de desarrollo. Navegue a http://localhost:4200/.
Ejecute ng test para ejecutar las pruebas unitarias a través de Karma: Karma.
Se debe utilizar la última versión LTS de Angular.
La prueba consiste en desarrollar una aplicación SPA que permita gestionar un mantenimiento de súper héroes, se valorarán tanto la estructura del proyecto, el formato, la optimización y el tipado del código, se debe crear el proyecto teniendo en cuenta que podría crecer en un futuro. La aplicación debe contener al menos las siguientes vistas y se valora positivamente la navegación entre las mismas:
- Input para filtrado por nombre de héroes, se valora la gestión de los eventos para minimizar las veces que se lanza el filtrado.
- Botón editar, navegará a la página de edición mostrando los datos del héroe seleccionado.
- Botón nuevo héroe, navegará a la página de creación de héroes.
- El nombre de los héroes del filtrado debe mostrarse con la primera letra en mayúsculas.
- Botón de borrar héroes, preguntará si se está seguro de que se desea borrar el héroe y, al confirmarlo, lo borrará.
- Formulario con los campos necesarios para la creación / edición.
- Al crear/editar un héroe, navegar al listado de héroes.
- El campo de nombre de los héroes debe mostrarse en mayúsculas.
- Servicio: se permite tanto mockear los datos como la conexión con una API (real o) pero en caso de tener los datos en el servicio, se debe simular las llamadas a la API mediante observables.
- Loader: Al obtener los datos se debe mostrar un loader informando al usuario de que los datos se están cargando.
- Notificaciones: Al crear / modificar / eliminar un elemento o en caso de error, mostrar mensaje informativo al usuario.
- Utilizar una librería visual como podría ser Angular material.
- Añadir tests.
- Uso de programación reactiva.
- Modularización de los componentes
La prueba se debe presentar en un repositorio de Git.