From b8bcb00e741ce39fdfd92082a439c33dea120eea Mon Sep 17 00:00:00 2001 From: guilherme Date: Thu, 11 Dec 2025 14:06:23 -0300 Subject: [PATCH] =?UTF-8?q?feat:=20refatorar=20slides=20de=20retrospectiva?= =?UTF-8?q?=20para=20melhorar=20a=20apresenta=C3=A7=C3=A3o=20e=20a=20estru?= =?UTF-8?q?tura=20do=20c=C3=B3digo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/components/retrospective-slides.tsx | 218 +++++++++--------- 1 file changed, 106 insertions(+), 112 deletions(-) diff --git a/src/views/components/retrospective-slides.tsx b/src/views/components/retrospective-slides.tsx index 777aa30..30af17e 100644 --- a/src/views/components/retrospective-slides.tsx +++ b/src/views/components/retrospective-slides.tsx @@ -4,11 +4,7 @@ import { } from '@/app/hooks/useMetrics'; import logoAImg from '@/assets/images/a-agape.png'; import logoImg from '@/assets/images/agape-logo.png'; -import { - BuildingIcon, - ChartLineUpIcon, - SpinnerIcon, -} from '@phosphor-icons/react'; +import { ChartLineUpIcon, SpinnerIcon } from '@phosphor-icons/react'; import { motion } from 'framer-motion'; import { useSearchParams } from 'react-router-dom'; import ProfileCard from './ProfileCard'; @@ -143,123 +139,117 @@ export function RetrospectiveSlides() { {metricsPortal && metricsPortal.length > 0 && ( - -
- + <> + {/* Slide 1: Acessos no AgPortal */} + + {/* Decoração de fundo sutil */} +
+
+
+
+ +
-
-
- -
-
- - - Acessos no AgPortal - - - - A porta de entrada para todas as aplicações - - - -
- {metricsPortal - .reduce((acc, p) => acc + p.totalAcessos, 0) - .toLocaleString('pt-BR')} -
-

- acessos em {ano} -

-
- - -
-
-
- {Math.round( - metricsPortal.reduce( - (acc, p) => acc + p.totalAcessos, - 0, - ) / 365, - )} -
-
- Por dia -
-
- -
-
- {Math.round( - metricsPortal.reduce( - (acc, p) => acc + p.totalAcessos, - 0, - ) / 12, - ).toLocaleString('pt-BR')} -
-
- Por mês -
-
-
-
- - -
-
+ transition={{ duration: 0.6 }}> -
- - - Aplicativos Mais Acessados - -
+ transition={{ type: 'spring', duration: 0.6 }}> +
+ + + AgPortal
+ Sua Porta de Entrada Digital +
+
+ + {/* Descrição */} + + O AgPortal é o hub central que conecta todos os + colaboradores às ferramentas, sistemas e informações + necessárias para o dia a dia de trabalho. + + + +
+ +
+
+ {metricsPortal + .reduce((acc, p) => acc + p.totalAcessos, 0) + .toLocaleString('pt-BR')} +
+ +
+ + Acessos em {ano} + +
+
+
+
+
+ + + {/* Slide 2: Top 5 Aplicativos com Horas */} + +
+
+ +
+ + + Top 5 Aplicativos + +
+ +

+ Aplicativos mais acessados +

+ +

+ Aqui estão as 5 aplicações com mais acessos e o total + de horas registradas nelas durante o ano. +

+
+
+ +
- {topItems.slice(0, 6).map((item, index) => { + {topItems.slice(0, 5).map((item, index) => { const medalColors = [ 'bg-yellow-400 text-yellow-900', 'bg-gray-300 text-gray-900', 'bg-orange-400 text-orange-900', 'bg-blue-400/20 text-blue-300', 'bg-purple-400/20 text-purple-300', - 'bg-green-400/20 text-green-300', ]; const isMedal = index < 3; const medalColor = @@ -294,7 +284,11 @@ export function RetrospectiveSlides() {

{item.totalAcessos.toLocaleString('pt-BR')}{' '} - acessos + acessos •{' '} + {Math.round( + item.horasLogadas || 0, + ).toLocaleString('pt-BR')}{' '} + h

@@ -339,8 +333,8 @@ export function RetrospectiveSlides() {
-
-
+ + )}