Skip to content

✨ feat: Audit dashboard#143

Merged
caverav merged 120 commits intodevelopmentfrom
feature/audit-dashboard
Oct 14, 2024
Merged

✨ feat: Audit dashboard#143
caverav merged 120 commits intodevelopmentfrom
feature/audit-dashboard

Conversation

@caverav
Copy link
Copy Markdown
Owner

@caverav caverav commented Oct 13, 2024

Descripción

Se agregan dashboards por auditoría, incluyendo la exportación a formato PDF de campos seleccionados

Motivación y Contexto

HU08

¿Cómo ha sido probado?

Ir a un audit, ir al apartado de dashboard, ver que se muestran los gráficos y exportarlos

Capturas de pantalla (si es apropiado):

Web:
image

PDF:
image

Tipos de cambios

  • Bugfix (cambio que no interrumpe el funcionamiento y que soluciona un problema)
  • New feature (cambio que no interrumpe el funcionamiento y que añade funcionalidad)
  • Breaking change (corrección o funcionalidad que podría causar que la funcionalidad existente cambie)

Lista de verificación:

  • Mi código sigue el estilo de código de este proyecto.
  • Mi cambio requiere una modificación en la documentación.
  • He actualizado la documentación en consecuencia.
  • Requiere nuevos tests.

Summary by CodeRabbit

  • Nuevas Funciones
    • Se han añadido componentes para visualizar datos de auditoría, incluyendo gráficos de barras y radar, así como un componente de exportación de datos.
    • Se ha implementado un sistema de exportación a PDF que captura visualizaciones del dashboard.
  • Mejoras en la Interfaz de Usuario
    • Se han añadido nuevos elementos de menú y un sidebar para facilitar la navegación.
    • Se han introducido estilos mejorados para los componentes de la interfaz.
  • Actualizaciones de Localización
    • Nuevas entradas de texto han sido añadidas para mejorar la internacionalización de la aplicación.

caverav added 30 commits October 8, 2024 15:41
- Updated NewVulnButton component to receive an onClick function for handling adding findings.
- Added state and handlers for adding vulnerabilities and findings in the Add component.
- Implemented functions addVuln and addFinding in audits.ts to interact with the API for adding vulnerabilities and findings, respectively.
- Added function `getSeverityColor` in AuditSidebar.tsx to assign colors based on severity levels.
- Implemented `cvssStringToSeverity` in AuditRoot.tsx to convert CVSS scores to severity levels 'L', 'M', 'H', or 'C'.
- Enhanced Add component in add.tsx by providing row actions for adding vulnerabilities with appropriate error handling messages.
- Modified addVuln function in audits.ts to fetch vulnerability details and added them to audit findings, including CVSSv3 score.
…e an "identifier" field for each finding in the findings list.
…the appropriate vulnerability details for the specified locale
- Updated NewVulnButton component to receive an onClick function for handling adding findings.
- Added state and handlers for adding vulnerabilities and findings in the Add component.
- Implemented functions addVuln and addFinding in audits.ts to interact with the API for adding vulnerabilities and findings, respectively.
- Added function `getSeverityColor` in AuditSidebar.tsx to assign colors based on severity levels.
- Implemented `cvssStringToSeverity` in AuditRoot.tsx to convert CVSS scores to severity levels 'L', 'M', 'H', or 'C'.
- Enhanced Add component in add.tsx by providing row actions for adding vulnerabilities with appropriate error handling messages.
- Modified addVuln function in audits.ts to fetch vulnerability details and added them to audit findings, including CVSSv3 score.
…e an "identifier" field for each finding in the findings list.
@massi-ponce
Copy link
Copy Markdown
Collaborator

Yo creo que esto está fuera del scope del PR pero siento que es medio redundante tener dos botones para exportar el audit.

imagen

@caverav
Copy link
Copy Markdown
Owner Author

caverav commented Oct 13, 2024

Yo creo que esto está fuera del scope del PR pero siento que es medio redundante tener dos botones para exportar el audit.

imagen

Lo había quitado xd, ya lo arreglo

@caverav
Copy link
Copy Markdown
Owner Author

caverav commented Oct 13, 2024

Bruh, pasa que el @jllanosg hizo el export de pdf encriptado ahí, y no en el sidebar, y como se cambió al sidebar quedaron ambos pq tiene cambios diferentes, @jllanosg podrías hacer un PR que cambie la funcionalidad del encriptado de pdfs al sidebar en el otro botón?

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 53

🧹 Outside diff range comments (2)
frontend/src/components/ui/hover-card.tsx (1)

Line range hint 1-33: Resumen de cambios: Mejora en la consistencia del código

Los cambios realizados en este archivo se centran exclusivamente en mejorar la consistencia y el estilo del código. Se han unificado las comillas, añadido puntos y coma donde faltaban y eliminado backticks innecesarios. Estas modificaciones, aunque pequeñas, contribuyen a una mejor legibilidad y mantenimiento del código a largo plazo.

Es importante destacar que no se han realizado cambios funcionales, lo que minimiza el riesgo de introducir nuevos errores. Sin embargo, para futuros cambios, te sugiero considerar la implementación de un linter para automatizar estas correcciones de estilo y mantener la consistencia en todo el proyecto.

frontend/src/routes/audits/edit/AuditRoot.tsx (1)

Line range hint 145-172: Mejorar seguridad al utilizar 'window.open' en 'fileTypes'

El uso de window.open con '_blank' puede exponer el objeto window.opener, lo que representa un riesgo de seguridad. Se recomienda incluir 'noopener,noreferrer' para prevenir este problema.

Modifica los handlers de onClick de esta forma:

onClick: () =>
-  window.open(url, '_blank'),
+  window.open(url, '_blank', 'noopener,noreferrer'),
📜 Review details

Configuration used: CodeRabbit UI
Review profile: ASSERTIVE

📥 Commits

Files that changed from the base of the PR and between 4ef39a0 and 2acfa6d.

⛔ Files ignored due to path filters (1)
  • backend/report-templates/liccc.docx is excluded by !**/*.docx
📒 Files selected for processing (23)
  • frontend/package.json (1 hunks)
  • frontend/src/components/dashboard/AverageCVSS.tsx (1 hunks)
  • frontend/src/components/dashboard/CIATriad.tsx (1 hunks)
  • frontend/src/components/dashboard/CVSSScore.tsx (1 hunks)
  • frontend/src/components/dashboard/CentralizedView.tsx (1 hunks)
  • frontend/src/components/dashboard/ExportModal.tsx (1 hunks)
  • frontend/src/components/dashboard/ExportView.tsx (1 hunks)
  • frontend/src/components/dashboard/RemediationComplexity.tsx (1 hunks)
  • frontend/src/components/dashboard/RemediationPriority.tsx (1 hunks)
  • frontend/src/components/dashboard/Sidebar.tsx (1 hunks)
  • frontend/src/components/navbar/AuditSidebar.tsx (3 hunks)
  • frontend/src/components/ui/hover-card.tsx (2 hunks)
  • frontend/src/components/ui/popover.tsx (1 hunks)
  • frontend/src/i18n/en-US/index.ts (2 hunks)
  • frontend/src/index.css (1 hunks)
  • frontend/src/main.tsx (2 hunks)
  • frontend/src/routes/audits/edit/AuditRoot.tsx (7 hunks)
  • frontend/src/routes/audits/edit/dashboard/dashboard.tsx (1 hunks)
  • frontend/src/routes/audits/edit/findings/add/NewVulnButton.tsx (1 hunks)
  • frontend/src/routes/audits/edit/findings/add/add.tsx (7 hunks)
  • frontend/src/routes/audits/index.tsx (1 hunks)
  • frontend/src/services/audits.ts (4 hunks)
  • frontend/src/services/exportToPDF.tsx (1 hunks)
🧰 Additional context used
🔇 Additional comments (37)
frontend/src/routes/audits/edit/findings/add/NewVulnButton.tsx (1)

5-5: ¡Bien hecho! La firma del componente ha sido mejorada.

La adición del prop onClick mejora significativamente la reutilización del componente. Ahora se pueden pasar manejadores de clics personalizados desde componentes padres, lo que aumenta la flexibilidad del NewVulnButton. Esta modificación está en línea con las mejores prácticas de React para la composición de componentes.

frontend/src/routes/audits/index.tsx (1)

2-2: La importación del componente Dashboard es correcta.

La nueva declaración de importación sigue la sintaxis adecuada y utiliza una ruta relativa coherente con la estructura de archivos del proyecto.

frontend/src/components/dashboard/ExportView.tsx (2)

1-7: ¡Bien hecho con las importaciones y la definición de tipos!

Las importaciones son correctas y la definición del tipo ExportViewProps está bien estructurada. No hay problemas aparentes en esta sección.


33-33: La exportación del componente es correcta.

La declaración de exportación sigue las prácticas comunes y no presenta problemas aparentes.

frontend/src/components/ui/popover.tsx (5)

1-2: ¡Bien hecho con la consistencia en las comillas!

Has cambiado las comillas dobles por comillas simples en las declaraciones de importación. Esto mejora la consistencia del código y se alinea con las guías de estilo comunes de JavaScript/TypeScript.


6-8: ¡Excelente atención al detalle con los puntos y coma!

Has añadido puntos y coma al final de las asignaciones de componentes. Esto mejora la consistencia del código y sigue las mejores prácticas de JavaScript/TypeScript. Tu atención a estos pequeños detalles contribuye a un código más limpio y mantenible.


13-21: ¡Buena mejora en la consistencia y las convenciones modernas!

Has realizado dos cambios importantes en el componente PopoverContent:

  1. Uso de comillas simples para los valores por defecto en la desestructuración de props.
  2. Adición de una coma final en el argumento className.

Estos cambios no solo mejoran la consistencia, sino que también siguen las convenciones modernas de JavaScript. La coma final, en particular, puede ayudar a tener diferencias más limpias en git cuando se añadan más propiedades en el futuro. Tu atención a estos detalles demuestra un buen entendimiento de las mejores prácticas de codificación.


26-27: ¡Muy bien por mantener la consistencia hasta el final!

Has añadido puntos y coma al final de la definición del componente PopoverContent y de la asignación de displayName. Estos cambios mantienen la consistencia en todo el archivo y siguen las mejores prácticas de JavaScript/TypeScript. Tu atención constante a estos detalles de formato demuestra un enfoque meticuloso en la calidad del código.


29-29: ¡Excelente trabajo en la mejora general de la consistencia del código!

Has añadido un punto y coma al final de la declaración de exportación, lo cual es el toque final perfecto para este conjunto de cambios de formato. En general, tus modificaciones han mejorado significativamente la consistencia y legibilidad del código en todo el archivo.

Estos cambios, aunque pequeños individualmente, tienen un impacto positivo colectivo en la calidad del código:

  1. Mejoran la legibilidad
  2. Facilitan el mantenimiento
  3. Reducen la probabilidad de errores relacionados con la inconsistencia de estilo

Tu atención meticulosa a estos detalles de formato demuestra un compromiso con la calidad del código y las mejores prácticas de desarrollo. ¡Buen trabajo!

frontend/src/components/ui/hover-card.tsx (5)

1-2: ¡Cambio aprobado!

El uso de comillas simples en lugar de comillas dobles mejora la consistencia del código. Buen trabajo en mantener un estilo coherente.


4-4: ¡Cambio aprobado!

El uso de comillas simples en esta importación mantiene la consistencia con las declaraciones de importación anteriores. Bien hecho.


17-17: ¡Cambio aprobado!

La eliminación del backtick final y la adición del punto y coma mejoran la sintaxis y la consistencia con otras declaraciones en el archivo. Buen ojo para los detalles.


22-22: ¡Cambio aprobado!

El uso de comillas simples para los valores de parámetros por defecto mantiene la consistencia con el resto del archivo. Excelente atención a los detalles de formato.


33-33: ¡Cambio aprobado!

La adición del punto y coma al final de la declaración de exportación mejora la sintaxis y la hace consistente con otras declaraciones. Buen trabajo en mantener un estilo de código uniforme.

frontend/src/components/dashboard/Sidebar.tsx (3)

1-7: Las importaciones y la definición de tipos son adecuadas.

La estructura de importaciones y la definición del tipo SidebarProps son claras y apropiadas para un componente React con soporte de internacionalización.


9-9: La definición del componente es correcta.

La definición del componente Sidebar como un componente funcional con tipado React.FC y la desestructuración de props siguen las mejores prácticas de React.


40-40: La exportación del componente es correcta.

La exportación por defecto del componente Sidebar es apropiada y sigue las prácticas comunes en React.

frontend/src/components/dashboard/CentralizedView.tsx (2)

1-7: Las importaciones son apropiadas y están bien estructuradas.

Las importaciones incluyen React y los componentes personalizados necesarios para la funcionalidad del dashboard. La organización es clara y concisa.


43-43: La exportación del componente es correcta.

La declaración de exportación sigue las prácticas comunes de React y permite una fácil importación del componente en otros archivos.

frontend/src/index.css (1)

5-7: ¡Bien hecho con la implementación de .sidebar-item!

La clase .sidebar-item está correctamente implementada utilizando las utilidades de Tailwind CSS. Proporciona un estilo coherente y una experiencia de usuario mejorada para los elementos de la barra lateral.

frontend/package.json (5)

36-36: Evaluar la necesidad de html2canvas

La inclusión de html2canvas sugiere que se está implementando la captura de elementos HTML para la exportación a PDF. Sin embargo, esta biblioteca puede tener problemas de rendimiento y fidelidad en la representación. ¿Se ha considerado alternativas más eficientes o nativas para la generación de PDF?

Ejecute el siguiente script para buscar el uso de html2canvas y evaluar su impacto:

#!/bin/bash
# Descripción: Buscar el uso de html2canvas y evaluar su impacto

echo "Buscando importaciones y usos de html2canvas:"
rg --type typescript --type javascript "import.*html2canvas|html2canvas\("

echo "Buscando funciones de exportación a PDF que podrían usar html2canvas:"
rg --type typescript --type javascript "export.*pdf|generate.*pdf"

31-31: Justificar la inclusión de chartjs-plugin-annotation

La adición de chartjs-plugin-annotation sugiere que se están implementando anotaciones en los gráficos. ¿Es esto realmente necesario para el dashboard de auditoría? Si no se utiliza, debería eliminarse para evitar aumentar innecesariamente el tamaño del bundle.

Ejecute el siguiente script para buscar el uso de este plugin en el código:

#!/bin/bash
# Descripción: Buscar el uso de chartjs-plugin-annotation en el código

echo "Buscando importaciones de chartjs-plugin-annotation:"
rg --type typescript --type javascript "import.*chartjs-plugin-annotation"

echo "Buscando usos de 'annotation' en configuraciones de Chart.js:"
rg --type typescript --type javascript "annotation.*Chart"

39-39: Verificar la implementación de jspdf

La adición de jspdf es coherente con la funcionalidad de exportación a PDF. Sin embargo, es importante asegurarse de que se esté utilizando de manera segura y eficiente, especialmente en lo que respecta al manejo de datos sensibles en los informes de auditoría.

Ejecute el siguiente script para buscar el uso de jspdf y evaluar su implementación:

#!/bin/bash
# Descripción: Buscar el uso de jspdf y evaluar su implementación

echo "Buscando importaciones y usos de jspdf:"
rg --type typescript --type javascript "import.*jspdf|new jsPDF"

echo "Buscando funciones de generación de PDF que usan jspdf:"
rg --type typescript --type javascript "generate.*pdf.*jspdf|create.*pdf.*jspdf"

echo "Buscando posibles problemas de seguridad en el uso de jspdf:"
rg --type typescript --type javascript "addImage.*jspdf|addHTML.*jspdf"

42-42: Confirmar la necesidad de react-chartjs-2

La inclusión de react-chartjs-2 es lógica dado que se está implementando un dashboard con gráficos en React. Sin embargo, es importante asegurarse de que se esté utilizando correctamente y que no haya conflictos con otras bibliotecas de visualización que puedan estar presentes en el proyecto.

Ejecute el siguiente script para verificar el uso correcto de react-chartjs-2:

#!/bin/bash
# Descripción: Verificar el uso correcto de react-chartjs-2

echo "Buscando importaciones de componentes de react-chartjs-2:"
rg --type typescript --type javascript "import.*react-chartjs-2"

echo "Buscando usos de componentes de react-chartjs-2:"
rg --type typescript --type javascript "<(Bar|Line|Pie|Doughnut|Radar|PolarArea|Bubble|Scatter).*react-chartjs-2"

echo "Buscando posibles conflictos con otras bibliotecas de gráficos:"
rg --type typescript --type javascript "import.*chart|import.*graph"

30-30: Verificar la necesidad y la versión de chart.js

La adición de chart.js es coherente con la implementación de un dashboard de auditoría. Sin embargo, es crucial asegurarse de que esta versión sea compatible con las demás dependencias del proyecto, especialmente con react-chartjs-2.

Ejecute el siguiente script para verificar la compatibilidad de versiones:

✅ Verification successful

Error al verificar las versiones de chart.js y react-chartjs-2

El script anterior no pudo extraer las versiones debido a errores en la ejecución. Por favor, ejecute el siguiente script para obtener las versiones correctamente:


Compatibilidad verificada entre chart.js y react-chartjs-2

Las versiones de las dependencias son compatibles:

  • react-chartjs-2: ^5.2.0
  • chart.js: ^4.4.4

No se han encontrado conflictos ni problemas de compatibilidad entre estas versiones.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Descripción: Verificar la compatibilidad de versiones entre chart.js y react-chartjs-2

# Buscar la versión de react-chartjs-2 en package.json
REACT_CHARTJS_VERSION=$(grep '"react-chartjs-2"' package.json | awk -F'"' '{print $4}')

# Buscar la versión de chart.js en package.json
CHARTJS_VERSION=$(grep '"chart.js"' package.json | awk -F'"' '{print $4}')

echo "Versión de react-chartjs-2: $REACT_CHARTJS_VERSION"
echo "Versión de chart.js: $CHARTJS_VERSION"

# Buscar en la documentación de react-chartjs-2 la versión compatible de chart.js
echo "Verifique manualmente en la documentación de react-chartjs-2 si la versión $CHARTJS_VERSION de chart.js es compatible."

Length of output: 1078


Script:

#!/bin/bash
# Descripción: Extraer versiones de react-chartjs-2 y chart.js usando jq

# Verificar si jq está instalado
if ! command -v jq &> /dev/null
then
    echo "jq no está instalado. Por favor, instálalo para continuar."
    exit 1
fi

# Extraer la versión de react-chartjs-2
REACT_CHARTJS_VERSION=$(jq -r '.dependencies["react-chartjs-2"]' frontend/package.json)

# Extraer la versión de chart.js
CHARTJS_VERSION=$(jq -r '.dependencies["chart.js"]' frontend/package.json)

echo "Versión de react-chartjs-2: $REACT_CHARTJS_VERSION"
echo "Versión de chart.js: $CHARTJS_VERSION"

# Buscar la versión compatible en la documentación de react-chartjs-2
echo "Por favor, verifica manualmente en la documentación de react-chartjs-2 si la versión $CHARTJS_VERSION de chart.js es compatible."

Length of output: 690

frontend/src/components/dashboard/ExportModal.tsx (2)

14-32: Implementación correcta del componente y lógica inicial

La definición del componente, la destructuración de props y la lógica inicial están bien implementadas. El uso de un retorno temprano para el modal cerrado es una buena optimización, y la función handleCheckboxChange utiliza correctamente una actualización funcional para el estado.


87-87: Exportación correcta del componente

La exportación del componente ExportModal como exportación por defecto es correcta y sigue las prácticas comunes de exportación de componentes en React.

frontend/src/components/dashboard/RemediationPriority.tsx (1)

1-24: ¡Bien hecho con las importaciones y el registro de Chart.js!

Las importaciones y el registro de los componentes de Chart.js están correctamente implementados y son necesarios para la funcionalidad del componente.

frontend/src/components/dashboard/RemediationComplexity.tsx (1)

1-24: ¡Bien hecho con las importaciones y el registro de Chart.js!

Las importaciones y el registro de los componentes de Chart.js están correctamente implementados. Has incluido todos los módulos necesarios para la funcionalidad del componente.

frontend/src/main.tsx (1)

24-31: ¡Bien hecho con la importación del componente Dashboard!

La adición de la importación del componente Dashboard es coherente con la nueva ruta que se está agregando. La declaración de importación está correctamente formateada y sigue el estilo existente del código.

frontend/src/i18n/en-US/index.ts (1)

163-163: ¡Bien hecho! La cadena 'copiedToClipboard' ahora está activa.

La descomentación de esta cadena mejora la retroalimentación del usuario cuando se copia algo al portapapeles. Es un cambio simple pero efectivo.

frontend/src/components/dashboard/AverageCVSS.tsx (1)

96-96: 🛠️ Refactor suggestion

Revisa las dependencias del useEffect

La inclusión de averageCVSS en las dependencias del useEffect no es necesaria y puede causar renders adicionales innecesarios.

Modifica las dependencias de tu useEffect para que sean más precisas:

- }, [effectiveAuditId, averageCVSS]);
+ }, [effectiveAuditId]);

De esta manera, el efecto solo se ejecutará cuando cambie effectiveAuditId.

Likely invalid or redundant comment.

frontend/src/routes/audits/edit/findings/add/add.tsx (1)

159-170: Buena implementación de 'handleAddFinding'

La función handleAddFinding maneja adecuadamente la creación de nuevos hallazgos y proporciona retroalimentación al usuario mediante notificaciones. ¡Buen trabajo!

frontend/src/routes/audits/edit/AuditRoot.tsx (1)

26-32: Verificar actualizaciones en el uso de 'findings'

Al agregar el nuevo campo identifier a findings, asegúrate de que todas las referencias y usos de este estado en el código estén actualizados para reflejar este cambio y evitar posibles errores.

frontend/src/components/navbar/AuditSidebar.tsx (2)

21-21: Adición correcta de la propiedad identifier al tipo Finding

La inclusión de la propiedad identifier en el tipo Finding permite una identificación única de cada hallazgo, facilitando su manejo y referencia en la aplicación.


55-56: Actualización adecuada de AuditSidebarProps con fileTypes

La adición de fileTypes a las propiedades del componente mejora la funcionalidad de exportación, permitiendo seleccionar diferentes tipos de archivo.

frontend/src/services/audits.ts (1)

12-13: Verificar el uso de los nuevos campos en el tipo 'Finding'

Se han agregado los campos remediationComplexity y priority al tipo Finding. Asegúrate de que en toda la aplicación se actualicen los lugares donde se utiliza este tipo para incluir y manejar correctamente estos nuevos campos, evitando posibles errores de tipo o comportamiento inesperado.

Comment thread frontend/src/routes/audits/edit/findings/add/NewVulnButton.tsx
Comment thread frontend/src/routes/audits/index.tsx
Comment thread frontend/src/components/dashboard/ExportView.tsx
Comment thread frontend/src/components/dashboard/ExportView.tsx
Comment thread frontend/src/components/dashboard/Sidebar.tsx
Comment thread frontend/src/services/audits.ts
Comment thread frontend/src/services/audits.ts
Comment thread frontend/src/services/audits.ts
Comment thread frontend/src/services/audits.ts
Comment thread frontend/src/services/audits.ts
@jllanosg
Copy link
Copy Markdown
Collaborator

Bruh, pasa que el @jllanosg hizo el export de pdf encriptado ahí, y no en el sidebar, y como se cambió al sidebar quedaron ambos pq tiene cambios diferentes, @jllanosg podrías hacer un PR que cambie la funcionalidad del encriptado de pdfs al sidebar en el otro botón?

Estoy ocupado

@massi-ponce
Copy link
Copy Markdown
Collaborator

Otra cosa que no me la había planteado antes, es que al exportar los dashboard siempre se exportan en su forma "original".

Por ejemplo:
imagen
Este dashboard es el "original".

imagen
Aquí filtro y saco el "High".

imagen
Al exportar saldrá en su forma "original".

Sólo por curiosidad, ¿eso está bien, cierto?

@Icksir
Copy link
Copy Markdown
Collaborator

Icksir commented Oct 13, 2024

Siento que sería buena idea cambiar el nombre "Export" que exporta los dashboards a "Export dashboards" para diferenciarlo de la exportación del audit

@Icksir
Copy link
Copy Markdown
Collaborator

Icksir commented Oct 13, 2024

Bruh, pasa que el @jllanosg hizo el export de pdf encriptado ahí, y no en el sidebar, y como se cambió al sidebar quedaron ambos pq tiene cambios diferentes, @jllanosg podrías hacer un PR que cambie la funcionalidad del encriptado de pdfs al sidebar en el otro botón?

Y no se puede simplemente sacar el botón de la derecha? O hay que cambiar toda la lógica como mencionas para que funcione el encriptado

@caverav
Copy link
Copy Markdown
Owner Author

caverav commented Oct 14, 2024

Otra cosa que no me la había planteado antes, es que al exportar los dashboard siempre se exportan en su forma "original".

Por ejemplo: imagen Este dashboard es el "original".

imagen Aquí filtro y saco el "High".

imagen Al exportar saldrá en su forma "original".

Sólo por curiosidad, ¿eso está bien, cierto?

Sí, está bien, si queremos esa funcionalidad, es para otra, es harto más complicado y no es parte del sprint

@caverav
Copy link
Copy Markdown
Owner Author

caverav commented Oct 14, 2024

Siento que sería buena idea cambiar el nombre "Export" que exporta los dashboards a "Export dashboards" para diferenciarlo de la exportación del audit

Puede ser, creo que sería buena idea incluirlo en el PR del fix de los botones de export, y no aquí

Copy link
Copy Markdown
Collaborator

@massi-ponce massi-ponce left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Se cumple todo lo establecido en la historia de usuario para el sprint 2.
Considerando que las cosas que se comentaron se fixearán fuera de este PR... doy por aprobado.

Copy link
Copy Markdown
Collaborator

@jllanosg jllanosg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Funciona perfecto

@caverav caverav merged commit 49fa2f5 into development Oct 14, 2024
@caverav caverav deleted the feature/audit-dashboard branch October 14, 2024 02:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants