Skip to content

Traducción del archivo src/posts/create.js a TypeScript#51

Open
Jeam-zx wants to merge 9 commits intoUSB-CI3715:f24from
Jeam-zx:translate-src-post-create-to-ts
Open

Traducción del archivo src/posts/create.js a TypeScript#51
Jeam-zx wants to merge 9 commits intoUSB-CI3715:f24from
Jeam-zx:translate-src-post-create-to-ts

Conversation

@Jeam-zx
Copy link

@Jeam-zx Jeam-zx commented Oct 14, 2024

Traducción de archivo src/posts/create.js a TypeScript

Jeamhowards Montiel (19-10234)

Resumen

He llevado a cabo la conversión del archivo create.js a TypeScript, generando create.ts en la misma ubicación.

Motivación

  1. TypeScript permite identificar problemas potenciales.
  2. Los tipos facilitan la comprensión de las estructuras de datos y las funciones.

Proceso

  1. Preparación:

    • Analicé el archivo create.js para identificar las estructuras de datos y funciones clave.
    • Revisé las dependencias y importaciones para asegurar su compatibilidad con TypeScript.
  2. Creación del nuevo archivo:

    • Generé create.ts en el mismo directorio que el archivo original.
    • Copié el contenido de create.js a create.ts como punto de partida.
  3. Definición de tipos:

    • Creé interfaces para PostData y Post, definiendo claramente la estructura de estos objetos.
    • Agregué tipos a las variables, parámetros de funciones y valores de retorno.
  4. Conversión de sintaxis:

    • Actualicé las importaciones y exportaciones al formato de módulos ES6.
  5. Manejo de tipos any:

    • Identifiqué los lugares donde se usaba any implícitamente y los reemplazé con tipos más específicos cuando fue posible.
    • En casos donde no se podía determinar un tipo específico, utilicé unknown en lugar de any para mayor seguridad.
  6. Gestión de errores del compilador:

    • Abordé los errores de TypeScript uno por uno, realizando los ajustes necesarios en el código.
    • En casos donde los errores provenían de módulos aún no convertidos, utilicé anotaciones // @typescript-eslint/no-unsafe-member-access y @typescript-eslint/no-unsafe-call.
  7. Documentación:

    • Agregué comentarios a las interfaces para proporcionar descripciones adecuadas a estas estructuras.

Verificación

  1. Compilación:

    • Ejecuté el compilador de TypeScript (tsc) para asegurar que no hubiera errores de compilación.
  2. Linting:

    • Utilicé ESLint para verificar el cumplimiento de las reglas de estilo y buenas prácticas.
    • Ajusté el código según las recomendaciones del linter, justificando cualquier desviación de las reglas.
  3. Pruebas:

    • Ejecuté la suite de pruebas existente para asegurar que la funcionalidad no se viera afectada.
  4. Revisión manual:

    • Realicé una revisión línea por línea del código convertido para asegurar que la conversión fuera correcta.
    • Verifiqué que todas las funciones y métodos tuvieran los tipos de retorno correctos.
  5. Integración:

    • Probé la interacción del módulo convertido con otros módulos del sistema para asegurar la compatibilidad.
    • Verifiqué que no hubiera problemas de importación o exportación con módulos aún no convertidos.

Observaciones adicionales

  • Agregué comentarios para suprimir advertencias del linter en casos donde se hace referencia a funciones que aún no han sido convertidas a TypeScript.
  • Utilicé anotaciones // @typescript-eslint/no-unsafe-member-access y @typescript-eslint/no-unsafe-call. donde fue necesario para mantener la compatibilidad con el sistema existente.

Issue

Este Pull Request resuelve el Issues USB-CI3715 #9 (resolves #9), en el cual se tenía como tarea traducir el archivo src/posts/create.js a Typescript.

@coveralls
Copy link

Pull Request Test Coverage Report for Build 11320674411

Details

  • 50 of 52 (96.15%) changed or added relevant lines in 1 file are covered.
  • 1 unchanged line in 1 file lost coverage.
  • Overall coverage decreased (-0.001%) to 82.67%

Changes Missing Coverage Covered Lines Changed/Added Lines %
src/posts/create.js 50 52 96.15%
Files with Coverage Reduction New Missed Lines %
src/meta/errors.js 1 76.74%
Totals Coverage Status
Change from base Build 11313630816: -0.001%
Covered Lines: 22329
Relevant Lines: 25589

💛 - Coveralls

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.

Convirtiendo src/posts/create.js de JS a TS

2 participants