diff --git a/Imagenes/Batman_el_Caballero_de_la_Noche.webp b/Imagenes/Batman_el_Caballero_de_la_Noche.webp new file mode 100644 index 00000000..8fdce46b Binary files /dev/null and b/Imagenes/Batman_el_Caballero_de_la_Noche.webp differ diff --git a/Imagenes/La_La_Land.webp b/Imagenes/La_La_Land.webp new file mode 100644 index 00000000..96613800 Binary files /dev/null and b/Imagenes/La_La_Land.webp differ diff --git a/Imagenes/Lion_king_1.webp b/Imagenes/Lion_king_1.webp new file mode 100644 index 00000000..0f2e303c Binary files /dev/null and b/Imagenes/Lion_king_1.webp differ diff --git a/Imagenes/avatar.jpg b/Imagenes/avatar.jpg new file mode 100644 index 00000000..b3d2c532 Binary files /dev/null and b/Imagenes/avatar.jpg differ diff --git a/Imagenes/buscando-a-nemo.jpeg b/Imagenes/buscando-a-nemo.jpeg new file mode 100644 index 00000000..7d1227d8 Binary files /dev/null and b/Imagenes/buscando-a-nemo.jpeg differ diff --git a/Imagenes/coco.jpeg b/Imagenes/coco.jpeg new file mode 100644 index 00000000..8a691cff Binary files /dev/null and b/Imagenes/coco.jpeg differ diff --git a/Imagenes/deadpool.jpeg b/Imagenes/deadpool.jpeg new file mode 100644 index 00000000..a1e48331 Binary files /dev/null and b/Imagenes/deadpool.jpeg differ diff --git a/Imagenes/el-padrino.jpeg b/Imagenes/el-padrino.jpeg new file mode 100644 index 00000000..ac195359 Binary files /dev/null and b/Imagenes/el-padrino.jpeg differ diff --git a/Imagenes/et-el-extraterrestre.jpg b/Imagenes/et-el-extraterrestre.jpg new file mode 100644 index 00000000..88a2630e Binary files /dev/null and b/Imagenes/et-el-extraterrestre.jpg differ diff --git a/Imagenes/forret-gump.jpeg b/Imagenes/forret-gump.jpeg new file mode 100644 index 00000000..8d86373a Binary files /dev/null and b/Imagenes/forret-gump.jpeg differ diff --git a/Imagenes/gran-hotel-budapest.jpg b/Imagenes/gran-hotel-budapest.jpg new file mode 100644 index 00000000..cd04e0a4 Binary files /dev/null and b/Imagenes/gran-hotel-budapest.jpg differ diff --git a/Imagenes/harry-potter-y-la-piedra-filosofal.jpeg b/Imagenes/harry-potter-y-la-piedra-filosofal.jpeg new file mode 100644 index 00000000..75feddbf Binary files /dev/null and b/Imagenes/harry-potter-y-la-piedra-filosofal.jpeg differ diff --git a/Imagenes/inception.jpeg b/Imagenes/inception.jpeg new file mode 100644 index 00000000..668810b2 Binary files /dev/null and b/Imagenes/inception.jpeg differ diff --git a/Imagenes/interstellar.jpg b/Imagenes/interstellar.jpg new file mode 100644 index 00000000..d5464636 Binary files /dev/null and b/Imagenes/interstellar.jpg differ diff --git a/Imagenes/jurassic-park.webp b/Imagenes/jurassic-park.webp new file mode 100644 index 00000000..1d2d203b Binary files /dev/null and b/Imagenes/jurassic-park.webp differ diff --git a/Imagenes/la-red-social.jpeg b/Imagenes/la-red-social.jpeg new file mode 100644 index 00000000..0d8b4c18 Binary files /dev/null and b/Imagenes/la-red-social.jpeg differ diff --git a/Imagenes/matrix.webp b/Imagenes/matrix.webp new file mode 100644 index 00000000..a19f9063 Binary files /dev/null and b/Imagenes/matrix.webp differ diff --git a/Imagenes/ratatouille.jpg b/Imagenes/ratatouille.jpg new file mode 100644 index 00000000..1aafdb68 Binary files /dev/null and b/Imagenes/ratatouille.jpg differ diff --git a/Imagenes/schindler_s_list.jpeg b/Imagenes/schindler_s_list.jpeg new file mode 100644 index 00000000..51399b19 Binary files /dev/null and b/Imagenes/schindler_s_list.jpeg differ diff --git "a/Imagenes/se\303\261or-de-los-anillos.jpg" "b/Imagenes/se\303\261or-de-los-anillos.jpg" new file mode 100644 index 00000000..00a94bc7 Binary files /dev/null and "b/Imagenes/se\303\261or-de-los-anillos.jpg" differ diff --git a/Imagenes/spider-man-sin-camino-a-casa.jpeg b/Imagenes/spider-man-sin-camino-a-casa.jpeg new file mode 100644 index 00000000..58034016 Binary files /dev/null and b/Imagenes/spider-man-sin-camino-a-casa.jpeg differ diff --git a/Imagenes/titanic.jpg b/Imagenes/titanic.jpg new file mode 100644 index 00000000..3b4d4e29 Binary files /dev/null and b/Imagenes/titanic.jpg differ diff --git a/Imagenes/toy-story.jpg b/Imagenes/toy-story.jpg new file mode 100644 index 00000000..93c37ce0 Binary files /dev/null and b/Imagenes/toy-story.jpg differ diff --git a/Imagenes/wonder-woman.jpg b/Imagenes/wonder-woman.jpg new file mode 100644 index 00000000..d845de6b Binary files /dev/null and b/Imagenes/wonder-woman.jpg differ diff --git a/package.json b/package.json index bb4defe9..8740168e 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "test:oas-js": "jest --verbose tests-read-only/oa/oa-javascript.spec.js", "pretest:oas-web-api": "npm run pretest", "test:oas-web-api": "jest --verbose tests-read-only/oa/oa-web-api.spec.js", - "pretest:oas-prompting": "npm run pretest", + "pretest:oas-prompting_x": "npm run pretest", "test:oas-prompting": "jest --verbose tests-read-only/oa/oa-prompting.spec.js", "open-coverage-report": "opener ./coverage/lcov-report/index.html", "start": "serve src/", diff --git a/src/Estrella_amarilla.png b/src/Estrella_amarilla.png new file mode 100644 index 00000000..1fb314d0 Binary files /dev/null and b/src/Estrella_amarilla.png differ diff --git a/src/data/datamovies.js b/src/data/datamovies.js new file mode 100644 index 00000000..73ef5c0e --- /dev/null +++ b/src/data/datamovies.js @@ -0,0 +1,340 @@ +export default [ + { + id: 1, + name: "El Señor de los Anillos: El retorno del Rey", + genero: "Ciencia_Ficcion", + ingresos: 1118888979, + shortDescription: "Epopeya fantástica basada en la obra de J.R.R. Tolkien.", + longDescription: "Epopeya fantástica basada en la obra de J.R.R. Tolkien. La película sigue la lucha épica por la Tierra Media. Con su estreno el 17 de diciembre de 2003, fue una obra maestra de la ciencia ficción que generó ingresos asombrosos de $1,118,888,979. Dirigida por Peter Jackson, ganó 11 premios y dejó una marca imborrable en la historia del cine.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/f34c8aa89f1e86bbd947c9615aef6a68392cdf6c/Imagenes/señor-de-los-anillos.jpg", + facts: { + taquillera: true, + fechaPublicacion: "17 de diciembre de 2003", + premioGanado: 11 + } + //intento + }, + { + id: 2, + name: "Titanic", + genero: "Romance", + ingresos: 2208208395, + shortDescription: "Romance dramático del trágico hundimiento del Titanic.", + longDescription: "Romance dramático del trágico hundimiento del Titanic el 18 de diciembre de 1997. La película, dirigida por James Cameron, se destaca por su impactante historia y emocionantes actuaciones. Con ingresos de $2,208,208,395, es un clásico del género romántico y ganó 14 premios, convirtiéndola en una de las más taquilleras de todos los tiempos.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/titanic.jpg", + facts: { + taquillera: true, + fechaPublicacion: "18 de diciembre de 1997", + premioGanado: 14 + } + }, + { + id: 3, + name: "Jurassic Park", + genero: "Ciencia_Ficcion", + ingresos: 1049746767, + shortDescription: "Aventura con dinosaurios creados genéticamente.", + longDescription:"Aventura de ciencia ficción que introduce dinosaurios genéticamente creados. Con su estreno el 11 de junio de 1993, dirigida por Steven Spielberg, la película recaudó $1,049,746,767. Un clásico que ha perdurado en el tiempo, recibió 3 premios y sigue cautivando a generaciones con su emocionante trama.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/jurassic-park.webp", + facts: { + taquillera: true, + fechaPublicacion: "11 de junio de 1993", + premioGanado: 3 + } + }, + { + id: 4, + name: "El Padrino", + genero: "Drama", + ingresos: 245066411, + shortDescription: "Clásico del crimen dirigido por Francis Ford Coppola.", + longDescription:"Clásico del crimen dirigido por Francis Ford Coppola, El Padrino se estrenó el 24 de marzo de 1972. Aunque no fue una película taquillera, sus $245,066,411 de ingresos y 3 premios son insignias de su impacto cultural. La película es una obra maestra que ha dejado una huella imborrable en la historia del cine.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/el-padrino.jpeg", + facts: { + taquillera: false, + fechaPublicacion: "24 de marzo de 1972", + premioGanado: 3 + } + }, + { + id: 5, + name: "Harry Potter y la piedra filosofal", + genero: "Fantasia", + ingresos: 974755371, + shortDescription: "Primera entrega de la saga de Harry Potter.", + longDescription: "La primera entrega de la saga de Harry Potter, lanzada el 10 de noviembre de 2001, es una obra de fantasía que cautivó a millones. Con ingresos de $974,755,371, la película dirigida por Chris Columbus fue un gran éxito. Ganó 3 premios y marcó el inicio de una de las sagas más queridas del cine.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/harry-potter-y-la-piedra-filosofal.jpeg", + facts: { + taquillera: true, + fechaPublicacion: "10 de noviembre de 2001", + premioGanado: 3 + } + }, + { + id: 6, + name: "Forrest Gump", + genero: "Drama", + ingresos: 678226566, + shortDescription: "Drama que sigue la vida extraordinaria de Forrest Gump.", + longDescription: "Drama que sigue la vida extraordinaria de Forrest Gump. Estrenada el 6 de julio de 1994, dirigida por Robert Zemeckis, la película recaudó $678,226,566. Aunque no taquillera, ganó 6 premios y se convirtió en un clásico atemporal, gracias a la memorable actuación de Tom Hanks.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/forret-gump.jpeg", + facts: { + taquillera: true, + fechaPublicacion: "6 de julio de 1994", + premioGanado: 6 + } + }, + { + id: 7, + name: "Avatar", + genero: "Ciencia_Ficcion", + ingresos: 2787965087, + shortDescription: "Épica de ciencia ficción que explora el planeta Pandora.", + longDescription: "Épica de ciencia ficción que explora el planeta Pandora. Lanzada el 18 de diciembre de 2009 y dirigida por James Cameron, Avatar se convirtió en la película más taquillera de la historia, con ingresos de $2,787,965,087. Ganó 3 premios y estableció nuevos estándares en efectos visuales.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/avatar.jpg", + facts: { + taquillera: true, + fechaPublicacion: "18 de diciembre de 2009", + premioGanado: 3 + } + }, + { + id: 8, + name: "Matrix", + genero: "Accion", + ingresos: 465366949, + shortDescription: "Película de acción y ciencia ficción con el icónico Neo.", + longDescription: "Película de acción y ciencia ficción con el icónico Neo. Dirigida por las hermanas Wachowski, se estrenó el 31 de marzo de 1999. Aunque no fue taquillera, su influencia en la cultura pop es innegable. Con ingresos de $465,366,949, ganó 4 premios.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/matrix.webp", + facts: { + taquillera: false, + fechaPublicacion: "31 de marzo de 1999", + premioGanado: 4 + } + }, + { + id: 9, + name: "La La Land", + genero: "Romance", + ingresos: 448927588, + shortDescription: "Musical romántico ambientado en Los Ángeles.", + longDescription: "Musical romántico ambientado en Los Ángeles. Estrenado el 9 de diciembre de 2016, dirigido por Damien Chazelle, recaudó $448,927,588. Aunque no fue taquillera, La La Land ganó 6 premios, incluido el Oscar a la Mejor Actriz para Emma Stone.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/La_La_Land.webp", + facts: { + taquillera: false, + fechaPublicacion: "9 de diciembre de 2016", + premioGanado: 6 + } + }, + { + id: 10, + name: "Spider-Man: Sin camino a casa", + genero: "Accion", + ingresos: 1852587115, + shortDescription: "Aventuras del superhéroe Spider-Man en el multiverso.", + longDescription: "Aventuras del superhéroe Spider-Man en el multiverso. Dirigida por Jon Watts, se estrenó el 13 de diciembre de 2021. La película, con ingresos de $1,852,587,115, es un éxito taquillero y marca el regreso de personajes icónicos de Spider-Man.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/spider-man-sin-camino-a-casa.jpeg", + facts: { + taquillera: true, + fechaPublicacion: "13 de diciembre de 2021", + premioGanado: 1 + } + }, + { + id: 11, + name: "El Caballero de la Noche", + genero: "Accion", + ingresos: 1004558444, + shortDescription: "Batman se enfrenta al Joker en una ciudad en caos.", + longDescription: "Batman se enfrenta al Joker en una ciudad en caos. Dirigida por Christopher Nolan, la película se estrenó el 14 de julio de 2008. Con ingresos de $1,004,558,444, ganó 2 premios, consolidando la interpretación de Heath Ledger como el Joker.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/Batman_el_Caballero_de_la_Noche.webp", + facts: { + taquillera: true, + fechaPublicacion: "14 de julio de 2008", + premioGanado: 2 + } + }, + { + id: 12, + name: "E.T. el Extraterrestre", + genero: "Ciencia_Ficcion", + ingresos: 792910554, + shortDescription: "Amistad entre un niño y un extraterrestre.", + longDescription: "Amistad entre un niño y un extraterrestre. Estrenada el 11 de junio de 1982 y dirigida por Steven Spielberg, la película se convirtió en un fenómeno cultural. Con ingresos de $792,910,554, ganó 4 premios.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/et-el-extraterrestre.jpg", + facts: { + taquillera: true, + fechaPublicacion: "11 de junio de 1982", + premioGanado: 4 + } + }, + { + id: 13, + name: "Interestelar", + genero: "Ciencia_Ficcion", + ingresos: 677471339, + shortDescription: "Exploración espacial en busca de un nuevo hogar para la humanidad.", + longDescription: "Exploración espacial en busca de un nuevo hogar para la humanidad. Dirigida por Christopher Nolan, la película se estrenó el 7 de noviembre de 2014. Con ingresos de $677,471,339, es una epopeya espacial que cautivó a la audiencia.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/interstellar.jpg", + facts: { + taquillera: true, + fechaPublicacion: "7 de noviembre de 2014", + premioGanado: 1 + } + }, + { + id: 14, + name: "La Lista de Schindler", + genero: "Drama", + ingresos: 321365567, + shortDescription: "Drama histórico basado en la vida de Oskar Schindler.", + longDescription: "Drama histórico basado en la vida de Oskar Schindler. Estrenada el 15 de diciembre de 1993 y dirigida por Steven Spielberg, la película recaudó $321,365,567. Ganó 7 premios, incluido el Oscar a la Mejor Película.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/schindler_s_list.jpeg", + facts: { + taquillera: false, + fechaPublicacion: "15 de diciembre de 1993", + premioGanado: 7 + } + }, + { + id: 15, + name: "Deadpool", + genero: "Accion", + ingresos: 782636033, + shortDescription: "Comedia de superhéroes con el irreverente Deadpool.", + longDescription: "Comedia de superhéroes con el irreverente Deadpool. Dirigida por Tim Miller, la película se estrenó el 12 de febrero de 2016. Con ingresos de $782,636,033, rompió convenciones de películas de superhéroes y ganó 2 premios.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/deadpool.jpeg", + facts: { + taquillera: true, + fechaPublicacion: "12 de febrero de 2016", + premioGanado: 2 + } + }, + { + id: 16, + name: "Buscando a Nemo", + genero: "Animacion", + ingresos: 940335536, + shortDescription: "Aventura animada en el océano en busca de un pez desaparecido.", + longDescription: "Aventura animada en el océano en busca de un pez desaparecido. Estrenada el 30 de mayo de 2003 y dirigida por Andrew Stanton, la película recaudó $940,335,536. Ganó 1 premio y se convirtió en un clásico de animación.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/buscando-a-nemo.jpeg", + facts: { + taquillera: true, + fechaPublicacion: "30 de mayo de 2003", + premioGanado: 1 + } + }, + { + id: 17, + name: "Inception", + genero: "Accion", + ingresos: 829895144, + shortDescription: "Thriller de ciencia ficción que explora los sueños y la realidad.", + longDescription: "Thriller de ciencia ficción que explora los sueños y la realidad. Dirigida por Christopher Nolan, la película se estrenó el 8 de julio de 2010. Con ingresos de $829,895,144, ganó 4 premios y se destacó por su complejidad narrativa.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/inception.jpeg", + facts: { + taquillera: true, + fechaPublicacion: "8 de julio de 2010", + premioGanado: 4 + } + }, + { + id: 18, + name: "Mujer Maravilla", + genero: "Accion", + ingresos: 821847012, + shortDescription: "Historia de la superheroína Wonder Woman de DC Comics.", + longDescription: "Historia de la superheroína Wonder Woman de DC Comics. Dirigida por Patty Jenkins, la película se estrenó el 15 de mayo de 2017. Con ingresos de $821,847,012, fue un éxito taquillero y ganó 2 premios.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/wonder-woman.jpg", + facts: { + taquillera: true, + fechaPublicacion: "15 de mayo de 2017", + premioGanado: 2 + } + }, + { + id: 19, + name: "Toy Story 3", + genero: "Animacion", + ingresos: 1066969703, + shortDescription: "Aventuras de juguetes enfrentándose al abandono.", + longDescription: "Aventuras de juguetes enfrentándose al abandono. Dirigida por Lee Unkrich, la película se estrenó el 18 de junio de 2010. Con ingresos de $1,066,969,703, ganó 2 premios, cerrando de manera emocional la trilogía de Toy Story.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/toy-story.jpg", + facts: { + taquillera: true, + fechaPublicacion: "18 de junio de 2010", + premioGanado: 2 + } + }, + { + id: 20, + name: "El Rey León", + genero: "Animacion", + ingresos: 1656943394, + shortDescription: "Clásico animado de Disney que sigue la vida del león Simba.", + longDescription: "Clásico animado de Disney que sigue la vida del león Simba. Estrenada el 15 de junio de 1994 y dirigida por Roger Allers y Rob Minkoff, la película recaudó $1,656,943,394. Ganó 2 premios y sigue siendo amada por generaciones.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/Lion_king_1.webp", + facts: { + taquillera: true, + fechaPublicacion: "15 de junio de 1994", + premioGanado: 2 + } + }, + { + id: 21, + name: "El Gran Hotel Budapest", + genero: "Comedia", + ingresos: 174801324, + shortDescription: "Comedia dramática dirigida por Wes Anderson.", + longDescription: "Comedia dramática dirigida por Wes Anderson. Estrenada el 6 de febrero de 2014, la película recaudó $174,801,324. Aunque no fue taquillera, ganó 4 premios y se destacó por su estilo visual distintivo.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/gran-hotel-budapest.jpg", + facts: { + taquillera: false, + fechaPublicacion: "6 de febrero de 2014", + premioGanado: 4 + } + }, + { + id: 22, + name: "Coco", + genero: "Animacion", + ingresos: 807082196, + shortDescription: "Película animada de Pixar que celebra el Día de los Muertos.", + longDescription: "Película animada de Pixar que celebra el Día de los Muertos. Dirigida por Lee Unkrich y Adrian Molina, la película se estrenó el 27 de octubre de 2017. Con ingresos de $807,082,196, ganó 2 premios y cautivó con su emotiva historia.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/coco.jpeg", + facts: { + taquillera: true, + fechaPublicacion: "27 de octubre de 2017", + premioGanado: 2 + } + }, + { + id: 23, + name: "The Social Network", + genero: "Drama", + ingresos: 224920315, + shortDescription: "Drama biográfico sobre la creación de Facebook.", + longDescription: "Drama biográfico sobre la creación de Facebook. Dirigida por David Fincher, la película se estrenó el 1 de octubre de 2010. Aunque no fue taquillera, con ingresos de $224,920,315, ganó 3 premios y fue elogiada por su guion", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/la-red-social.jpeg", + facts: { + taquillera: false, + fechaPublicacion: "1 de octubre de 2010", + premioGanado: 3 + } + }, + { + id: 24, + name: "Ratatouille", + genero: "Animacion", + ingresos: 623722818, + shortDescription: "Comedia animada sobre un ratón que sueña con ser chef.", + longDescription: "Comedia animada sobre un ratón que sueña con ser chef. Dirigida por Brad Bird y estrenada el 22 de junio de 2007, Ratatouille recaudó $623,722,818. Aunque no fue una película taquillera, ganó 1 premio y se destacó por su encanto y originalidad. La historia de Remy, el ratón amante de la cocina, sigue siendo querida por el público.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/ratatouille.jpg", + facts: { + taquillera: true, + fechaPublicacion: "22 de junio de 2007", + premioGanado: 1 + } + } +] + diff --git a/src/data/dataset.js b/src/data/dataset.js index 0ebafb6f..9e1a8d72 100644 --- a/src/data/dataset.js +++ b/src/data/dataset.js @@ -1,8 +1,8 @@ export default [ { - "id": "ada-lovelace", - "name": "Ada Lovelace", - "shortDescription": "Pionera en la programación, primera programadora de la historia.", + "id": "ada-lovelace", + "name": "Ada Lovelace", + "shortDescription": "Pionera en la programación, primera programadora de la historia.", "description": "Una visionaria matemática británica del siglo XIX, es aclamada como la primera programadora de la historia. Su colaboración con Charles Babbage en la creación de la Máquina Analítica la llevó a desarrollar algoritmos, incluyendo el famoso \"algoritmo de Bernoulli\", destinados a ser procesados por una máquina. Su visión pionera la convirtió en una figura fundamental en la informática y la inteligencia artificial. Lovelace demostró que las computadoras podían ir más allá de simples cálculos matemáticos, anticipando un mundo donde la programación sería esencial en la resolución de problemas complejos, dejando una huella imborrable en la ciencia y la tecnología.", "imageUrl": "https://laboratoria-dataverse-talks.netlify.app/public/ada-lovelace.jpg", "facts": { diff --git a/src/dataFunctions.js b/src/dataFunctions.js index 5de554af..62b76c56 100644 --- a/src/dataFunctions.js +++ b/src/dataFunctions.js @@ -1,9 +1,89 @@ -// Estas funciones son ejemplos, aquí puedes desarrollar tus propias funciones. +// Ordenar el array de objetos 'data' por el nombre en orden alfabético (A-Z) +export const ordenarNombresAZ = (data) => { + const dataOrdenada = data.slice().sort((a,b)=>{ + const nombreA = a.name.toUpperCase(); + const nombreB = b.name.toUpperCase(); -export const example = () => { - return 'example'; + if (nombreA < nombreB) { + return -1; + } + if (nombreA > nombreB) { + return 1; + } + return 0; + }); + + return dataOrdenada; +}; + +// Ordenar el array de objetos 'data' por el nombre en orden alfabético (Z-A) +export const ordenarNombresZA = (data) => { + const dataOrdenada = data.slice().sort((a, b)=>{ + const nombreA = a.name.toUpperCase(); + const nombreB = b.name.toUpperCase(); + + if (nombreA > nombreB) { + return -1; + } + if (nombreA < nombreB) { + return 1; + } + return 0; + }); + + return dataOrdenada; +}; + +// Filtra las películas por el género seleccionado +export const generoMovies = (data,categoriaSeleccionada) => { + const genero = data.filter(movie=>movie.genero===categoriaSeleccionada) + return genero; +}; + + +//Aqui van las funciones de las stadisticas: + +// Calcular estadísticas de ingresos por género +export const calcularEstadisticasIngresosPorGenero = (data) => { + return data.reduce((acumulador, pelicula) => { + const { genero, ingresos } = pelicula; + + if (!acumulador[genero]) { + acumulador[genero] = { + cantidadPeliculas: 0, + totalIngresos: 0, + ingresoPromedio: 0, + }; + } + + acumulador[genero].cantidadPeliculas++; + acumulador[genero].totalIngresos += ingresos; + acumulador[genero].ingresoPromedio = + acumulador[genero].totalIngresos / acumulador[genero].cantidadPeliculas; + + return acumulador; + }, {}); +}; + +// Estadísticas por género + +export const premiosGanadosTotal = (data) => { + const sumaTotalPremiosGanados = data.reduce(function(total, movie) { + if (movie.facts && typeof movie.facts.premioGanado === 'number') { + return total + movie.facts.premioGanado; + } + return total + }, 0); + + + return sumaTotalPremiosGanados; }; -export const anotherExample = () => { - return []; +export const promedioPremiosGanados = (data) => { + const sumaTotalPremiosGanados = premiosGanadosTotal(data); + const promedioPremios = data.length > 0 ? sumaTotalPremiosGanados / data.length : 0; + + + return promedioPremios; }; + diff --git a/src/footer.png b/src/footer.png new file mode 100644 index 00000000..e49f9f64 Binary files /dev/null and b/src/footer.png differ diff --git a/src/footerimg.png b/src/footerimg.png new file mode 100644 index 00000000..67c9514e Binary files /dev/null and b/src/footerimg.png differ diff --git a/src/header.png b/src/header.png new file mode 100644 index 00000000..29699c07 Binary files /dev/null and b/src/header.png differ diff --git a/src/index.html b/src/index.html index 0151e7de..b0469fb5 100644 --- a/src/index.html +++ b/src/index.html @@ -6,6 +6,64 @@ +
+ +

+
+ +
+ + + + + + + +
+ + +

Ganancias por Género

+
  • +
  • +
  • +
  • + +
    + +

    Premios Ganados

    +
  • +
  • + +
    + +
    + +
    + +
    + +
    + + + + - \ No newline at end of file + + + diff --git a/src/main.js b/src/main.js index c943ecdd..4c194aec 100644 --- a/src/main.js +++ b/src/main.js @@ -1,6 +1,167 @@ -import { example } from './dataFunctions.js'; +//import { example } from './dataFunctions.js'; import { renderItems } from './view.js'; +import {ordenarNombresAZ, ordenarNombresZA, premiosGanadosTotal, promedioPremiosGanados} from './dataFunctions.js'; +import { generoMovies } from './dataFunctions.js'; +import { calcularEstadisticasIngresosPorGenero } from './dataFunctions.js'; +import data from './data/datamovies.js'; -import data from './data/dataset.js'; -console.log(example, renderItems(data), data); \ No newline at end of file + +const showr = renderItems(data); +const root = document.getElementById('root'); +root.innerHTML = showr; +const selectSort = document.querySelector('[data-testid="select-sort"]'); +const selectFilter = document.querySelector('[data-testid="select-filter"]'); +//const estadisticaPremios = document.querySelector('[id="estadistica-premios"]'); +const totalGenero = document.querySelector('.statsPremios1'); +const abrirTotalPremios = document.querySelector('#premiosTotal'); +const boton2 = document.querySelector('.cerrarBoton2'); +const boton1 = document.querySelector('#premiosPorGenero'); +const button1 = document.querySelector('.cerrarBoton1'); +let datosOrdenados = [...data]; + +// Función para actualizar la vista cuando se cambian los selectores +const actualizarVista = () => { + // Inicialmente, usa los datos sin ordenar + + // Verifica la opción seleccionada en el selector de orden + + if (selectSort.value === 'asc') { + datosOrdenados = ordenarNombresAZ(datosOrdenados); + } else if (selectSort.value === 'desc') { + datosOrdenados = ordenarNombresZA(datosOrdenados); + + } + // Llama a la función renderItems y actualiza el contenido del contenedor + const showo = renderItems(datosOrdenados); + root.innerHTML = showo; +}; + +const mostrarPorGenero = () => { + // Obtén el valor seleccionado del selector + + const categoriaSeleccionada = selectFilter.value; + //console.log(categoriaSeleccionada); + // Llama a la función generoMovies para obtener las películas según el género + const peliculasFiltradas = generoMovies(data, categoriaSeleccionada); + + if (selectSort.value === 'asc') { + datosOrdenados = ordenarNombresAZ(peliculasFiltradas); + } else if (selectSort.value === 'desc') { + datosOrdenados = ordenarNombresZA(peliculasFiltradas); + } else{ + datosOrdenados = peliculasFiltradas; + + } + const showp = renderItems(datosOrdenados); + root.innerHTML = showp; + +}; + + +// Agrega eventos de cambio a los selectores + +const reset = document.querySelector('[data-testid="button-clear"]'); +reset.addEventListener('click',function(){ + selectFilter.selectedIndex = 0; + selectSort.selectedIndex = 0; + //estadisticaPremios.selectedIndex = 0; + datosOrdenados = data; + root.innerHTML =renderItems(data); +}); +selectSort.addEventListener('change', actualizarVista); +selectFilter.addEventListener('change', mostrarPorGenero); + + +//Creando las estadisticas + +//estadistica 1 + +const imprimirEstadisticasPorGenero = (estadisticas) => { + const dialog = document.getElementById('statsPremios1'); + const generoTitulo = document.getElementById('generoTitulo'); + const cantidadPeliculas = document.getElementById('cantidadPeliculas'); + const totalIngresos = document.getElementById('totalIngresos'); + const ingresoPromedio = document.getElementById('ingresoPromedio'); + + // Limpiar contenido previo + generoTitulo.innerHTML = ''; + cantidadPeliculas.textContent = ''; + totalIngresos.textContent = ''; + ingresoPromedio.textContent = ''; + + for (const genero in estadisticas) { + // Crear elemento li para el nombre del género + const generoLi = document.createElement('li'); + generoLi.textContent = `${genero}:`; + + // Crear lista ul para cada género + const listaUl = document.createElement('ul'); + + // Crear elementos li para cada estadística + const cantidadLi = document.createElement('li'); + cantidadLi.textContent = `Cantidad de películas: ${estadisticas[genero].cantidadPeliculas}`; + + const ingresosLi = document.createElement('li'); + ingresosLi.textContent = `Total de ingresos: $${estadisticas[genero].totalIngresos.toLocaleString()}`; + + const ingresoPromedioLi = document.createElement('li'); + ingresoPromedioLi.textContent = `Ingreso promedio: $${estadisticas[genero].ingresoPromedio.toLocaleString()}`; + + // Adjuntar elementos li al contenedor ul + listaUl.appendChild(cantidadLi); + listaUl.appendChild(ingresosLi); + listaUl.appendChild(ingresoPromedioLi); + + // Adjuntar lista ul al contenedor generoTitulo + generoLi.appendChild(listaUl); + generoTitulo.appendChild(generoLi); + } + + // Abre el dialog + dialog.showModal(); +}; + + +boton1.addEventListener('click', ()=> { + const estadisticas = calcularEstadisticasIngresosPorGenero(data); + imprimirEstadisticasPorGenero(estadisticas); + totalGenero.showModal(); +}) + +button1.addEventListener('click', ()=> { + totalGenero.close(); +}) + +//estadistica 2 + +const mostrarEstadisticasPremios = (totalPremios, promedioPremios) => { + const dialog2 = document.getElementById('statsPremios2'); + const totalSuma = document.getElementById('totalSumaPremios'); + const totalPromedio = document.getElementById('promedioSumaPremios'); + + + totalSuma.textContent = ""; + totalPromedio.textContent = ""; + totalSuma.textContent = `Total de Premios Ganados: ${totalPremios.toLocaleString()}`; + totalPromedio.textContent = `Total de Premios Ganados: ${promedioPremios.toLocaleString()}`; + + dialog2.showModal(); +} + + + +abrirTotalPremios.addEventListener('click', () => { + + const premiosData = (data); + const totalPremios = premiosGanadosTotal(premiosData); + const promedioPremios = promedioPremiosGanados(premiosData); + mostrarEstadisticasPremios(totalPremios, promedioPremios); + +}); + + +boton2.addEventListener('click', () => { + const dialog2 = document.getElementById("statsPremios2"); + dialog2.close(); +}); \ No newline at end of file diff --git a/src/style.css b/src/style.css index e69de29b..8f837404 100644 --- a/src/style.css +++ b/src/style.css @@ -0,0 +1,199 @@ +html{ + background-color: black; + } + +h1{ + color:rgb(0, 0, 0); + font-family:fantasy; + font-size: 100px; + text-align: center; + } + + +header{ + background-image: url("header.png"); + background-size: contain; + background-repeat: no-repeat; + height: 600px; +} + +.item-container{ + margin-block: 10px; + perspective: 100; + -webkit-perspective: 800; + perspective: 800; +} + +.imgEs{ + display: flex; + position: relative; + top: -205px; /* ajustar los valores para mover la imagen */ + left: 600px; + width: 50px; + height: 50px; +} +.movie-info{ + width:300px; + height:370px; + background-color: black; + position:relative; + transform-style:preserve-3d; + transition: .7s ease; + -webkit-box-shadow: 0px 10px 15px -5px hsla(59, 100%, 48%, 0.651); + -moz-box-shadow: 0px 10px 15px -5px hsla(59, 100%, 48%, 0.651); + box-shadow:0px 10px 15px -5px hsla(59, 100%, 48%, 0.651); +} +.imagen, .atras{ + width: 100%; + height:100%; + position:absolute; + backface-visibility:hidden; + -webkit-backface-visibility:hidden; +} + +.img_movies{ + width: 100%; + object-fit:cover; + margin: 5px; + margin-left: -35px; +} + + +.atras{ + transform: rotateY(180deg); + padding: 15px; + display:flex; + justify-content:center; + align-items:center; + text-align: center; + color:rgb(255, 255, 255); + font-family:'Calibria'; + font-size:large; + } + +.item-container:hover .movie-info{ + transform: rotateY(180deg); + } + +.wrapper{ + width: 100px; + display: flex; + flex-direction: row; + justify-content: space-evenly; + align-items:center; + line-height: 30px; + margin: 20px; + margin-left: 100px; + } + +.flex-container, .centrarboton{ + display: flex; + justify-content: space-around; + align-items: center; + } +.flex-container{ + padding: 100px; +} + +label[for="categorias"], +label[for="nombre"], +label[for="estadisticas"]{ + font-family: 'Cambria'; + font-size: 20px; + color: white; + padding: 10px; + margin-left: 40px; + margin-top: -100px; + } + +select{ + border-radius: 20px; + width: 250px; + height: 50px; + font-size: 12px; + margin-top: -100px; + } + +button[data-testid="button-clear"]{ + width: 180px; + font-size:20px; + margin: 50px; + border-radius: 10px; + line-height: 25px; + margin-top: -50px; + } + +#root{ + display: grid; + grid-template-columns: repeat(3,1fr); + grid-gap: 100px; + grid-auto-rows: 200px; + grid-template-rows: repeat(10, 1fr); +} + +footer{ + color: white; + font-size: 40px; + margin-top:50px; + width:100%; + height:100%; + display: flex; + flex-direction:row; + justify-content:center; + align-items: flex-end; + background-image: url("footer.png"); + background-size: contain; + background-repeat: no-repeat; + height: 600px; + +} + +.statsPremios1, .statsPremios2 { + color: black; + background-color: #ffffe3; + opacity: .95; + max-width: 50ch; + border:0; + box-shadow: 10px; + padding: 50px; + line-height: 2.5; + border-radius: 30px; +} +.statsPremios1::backdrop { + background: black; + opacity: 50% ; + } + +.statsPremios2::backdrop { + background: black; + opacity: 50% ; +} + +#premiosPorGenero, #premiosTotal { + padding: 1%; + border-radius: 20px; + margin:10px; + margin-top: -100px; +} + +#premiosPorGenero:hover { + background-color: #ffffef; +} +#premiosTotal:hover { + background-color: #ffffef; +} + +.botonResetear:hover{ + background-color: #ffffef; +} + +#generoTitulo, +#cantidadPeliculas, +#totalIngresos, +#ingresoPromedio{ + font-family: 'Courier New', Courier, monospace; + word-spacing: 0.25em; + margin: 16px; + list-style:none; + +}; \ No newline at end of file diff --git a/src/view.js b/src/view.js index 686f5ef9..ef653577 100644 --- a/src/view.js +++ b/src/view.js @@ -1,5 +1,34 @@ export const renderItems = (data) => { - console.log(data) // Aquí comienza tu código y puedes retornar lo que tu necesites - return 'example'; -}; \ No newline at end of file + //Crear Funciones a usar + let root = ""; + data.forEach((movies) => { + root += ` +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    Nombre:
    ${movies.name}
    +
    Descripción:
    ${movies.shortDescription}
    +
    Premios Ganados:
    ${movies.facts.premioGanado}
    +
    +
    +
    +
    ` + + }); + + // Retornar el contenedor actualizado + return root; + +}; +//falta hacer testings de ul y de nuestra data + +//otro componente que renderize lo que quiero mostrar, mi template de lo que voy a imprimir + diff --git a/test/data.js b/test/data.js index 077a202a..1625d13c 100644 --- a/test/data.js +++ b/test/data.js @@ -2,51 +2,73 @@ // al menos debe tener uno que se llame "data" export const data = [{ - "id": "ada-lovelace", - "name": "Ada Lovelace", - "shortDescription": "Pionera en la programación, primera programadora de la historia.", - "description": "Una visionaria matemática británica del siglo XIX, es aclamada como la primera programadora de la historia. Su colaboración con Charles Babbage en la creación de la Máquina Analítica la llevó a desarrollar algoritmos, incluyendo el famoso \"algoritmo de Bernoulli\", destinados a ser procesados por una máquina. Su visión pionera la convirtió en una figura fundamental en la informática y la inteligencia artificial. Lovelace demostró que las computadoras podían ir más allá de simples cálculos matemáticos, anticipando un mundo donde la programación sería esencial en la resolución de problemas complejos, dejando una huella imborrable en la ciencia y la tecnología.", - "imageUrl": "https://laboratoria-dataverse-talks.netlify.app/public/ada-lovelace.jpg", - "facts": { - "yearOfBirth": "1815", - "yearOfDeath": "1852", - "birthPlace": "Londres, Reino Unido", - "mainField": "Ciencia de la Computación" - }, - "extraInfo": { - "imageSource": "https://www.bing.com/images/create/genera-una-imagen-de-ada-lovelace2c-la-primera-prog/650a1eff8ff04b88833d5cdef0309441" + + id: 1, + name: "El Señor de los Anillos: El retorno del Rey", + taquillera: true, + ingresos: 1118888979, + shortDescription: "Epopeya fantástica basada en la obra de J.R.R. Tolkien.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/f34c8aa89f1e86bbd947c9615aef6a68392cdf6c/Imagenes/señor-de-los-anillos.jpg", + facts: { + taquillera: true, + fechaPublicacion: "17 de diciembre de 2003", + premioGanado: "11 premios de la Academia, incluyendo Mejor Película." } +//intento }, { - "id": "emmy-noether", - "name": "Emmy Noether", - "shortDescription": "Matemática destacada, teorema fundamental en álgebra abstracta.", - "description": "Una brillante matemática alemana, revolucionó la física teórica con sus contribuciones al teorema de conservación de la energía y el teorema de Noether, fundamentales en la teoría de la relatividad y la mecánica cuántica. A pesar de los obstáculos que enfrentó como mujer en la academia, sus investigaciones en álgebra abstracta y teoría de grupos son fundamentales en la física moderna. Su capacidad para unificar conceptos matemáticos y físicos marcó un hito en la historia de la ciencia, allanando el camino para futuras generaciones de científicas.", - "imageUrl": "https://laboratoria-dataverse-talks.netlify.app/public/emmy-noether.jpg", - "facts": { - "yearOfBirth": "1882", - "yearOfDeath": "1935", - "birthPlace": "Erlangen, Alemania", - "mainField": "Matemáticas" - }, - "extraInfo": { - "imageSource": "https://www.bing.com/images/create/create-an-image-of-of-a-german-woman2c-a-pioneering/6510ddb1e8254b928b8f8f1d5e95fea4" + id: 2, + name: "Titanic", + taquillera: true, + ingresos: 2208208395, + shortDescription: "Romance dramático del trágico hundimiento del Titanic.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/titanic.jpg", + facts: { + taquillera: true, + fechaPublicacion: "18 de diciembre de 1997", + premioGanado: "14 premios de la Academia, incluyendo Mejor Película." } }, { - "id": "hypatia-de-alejandria", - "name": "Hypatia de Alejandría", - "shortDescription": "Matemática y filósofa en la antigua Alejandría.", - "description": "Filósofa y matemática en la antigua Alejandría, desafió las normas de género de su época al destacar en una sociedad dominada por hombres. Su legado incluye importantes contribuciones a la geometría y la astronomía, así como su destacado papel como maestra y defensora del conocimiento en una época de agitación política. Hypatia demostró que las mujeres podían sobresalir en campos intelectuales y su valentía al mantener sus creencias filosóficas la convierte en un símbolo de resistencia y sabiduría en la historia de la ciencia.", - "imageUrl": "https://laboratoria-dataverse-talks.netlify.app/public/hypatia-de-alejandria.jpg", - "facts": { - "yearOfBirth": "circa 360", - "yearOfDeath": "415", - "birthPlace": "Alejandría, Egipto", - "mainField": "Matemáticas, Filosofía" - }, - "extraInfo": { - "imageSource": "https://www.bing.com/images/create/create-a-vivid-digital-artwork-or-painting-that-de/6510df0ebe1a4807af22175452761e1a" + id: 3, + name: "Jurassic Park", + taquillera: true, + ingresos: 1049746767, + shortDescription: "Aventura con dinosaurios creados genéticamente.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/jurassic-park.webp", + facts: { + taquillera: true, + fechaPublicacion: "11 de junio de 1993", + premioGanado: "3 premios de la Academia, innovación en efectos visuales." } -},]; +}, +{ + id: 4, + name: "El Padrino", + taquillera: false, + ingresos: 245066411, + shortDescription: "Clásico del crimen dirigido por Francis Ford Coppola.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/el-padrino.jpeg", + facts: { + taquillera: false, + fechaPublicacion: "24 de marzo de 1972", + premioGanado: "3 premios de la Academia, incluyendo Mejor Actor (Marlon Brando)." + } +}, +{ + id: 5, + name: "Harry Potter y la piedra filosofal", + taquillera: true, + ingresos: 974755371, + shortDescription: "Primera entrega de la saga de Harry Potter.", + imageUrl: "https://raw.githubusercontent.com/gabyrramos/DEV013-dataverse/main/Imagenes/harry-potter-y-la-piedra-filosofal.jpeg", + + facts: { + taquillera: true, + fechaPublicacion: "10 de noviembre de 2001", + premioGanado: "3 premios BAFTA." + } +}, + +] diff --git a/test/dataFunctions.spec.js b/test/dataFunctions.spec.js index 72c5eb9d..98ec1278 100644 --- a/test/dataFunctions.spec.js +++ b/test/dataFunctions.spec.js @@ -1,7 +1,6 @@ import { example, anotherExample } from '../src/dataFunctions.js'; -import { data as fakeData } from './data.js'; -console.log(fakeData); + describe('example', () => { @@ -15,4 +14,4 @@ describe('anotherExample', () => { it('returns `anotherExample`', () => { expect(anotherExample()).toBe('OMG'); }); -}); +}); diff --git a/tests-read-only/oa/oa-prompting.spec.js b/tests-read-only/oa/oa-prompting.spec.js index dd7ccf75..e9743b5a 100644 --- a/tests-read-only/oa/oa-prompting.spec.js +++ b/tests-read-only/oa/oa-prompting.spec.js @@ -1,5 +1,5 @@ /* eslint-disable no-console */ -import data from '../../src/data/dataset.js' +import data from '../../src/data/datamovies.js' describe('Test de data set', () => { describe('Dataset', () => {