🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@fiado/type-kit

Package Overview
Dependencies
Maintainers
1
Versions
1086
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@fiado/type-kit

## Descripción **fiado-type-kit** es una biblioteca TypeScript diseñada para facilitar el desarrollo de funciones AWS Lambda al proporcionar un conjunto estructurado de Data Transfer Objects (DTOs), enumeraciones y constantes. Está organizada por dominios

npmnpm
Version
1.0.11
Version published
Weekly downloads
5K
-23.75%
Maintainers
1
Weekly downloads
 
Created
Source

fiado-type-kit

Descripción

fiado-type-kit es una biblioteca TypeScript diseñada para facilitar el desarrollo de funciones AWS Lambda al proporcionar un conjunto estructurado de Data Transfer Objects (DTOs), enumeraciones y constantes. Está organizada por dominios específicos (card, account, directory, otros) para mejorar la modularidad y la reutilización del código en proyectos de AWS Lambda.

Estructura del Proyecto

fiado-type-kit/
📁 /src - Contiene el código fuente TypeScript, organizado por dominios.

  • 📁 card - Funciones y tipos relacionados con tarjetas.
    • 📁 dtos - Data Transfer Objects para card.
      • 📄 cardRequest.dto.ts
      • 📄 cardResponse.dto.ts
    • 📁 enums - Enumeraciones específicas de card.
      • 📄 cardType.enum.ts
    • 📁 constants - Constantes de card.
      • 📄 cardConstants.ts
    • 📄 index.ts - Exporta los elementos de card.
  • 📁 account - Funciones y tipos relacionados con cuentas.
    • [Repita la estructura similar a card]
  • 📁 user - Funciones y tipos relacionados con usuarios.
    • [Repita la estructura similar a card] 📁 /bin - Contiene los archivos transpilados y listos para producción. 📁 /test - Incluye pruebas para los distintos componentes de la biblioteca. 📄 package.json 📄 tsconfig.json 📄 README.md

Convenciones de Nombres y Validaciones

Convenciones de Nombres para DTOs

Para mantener la coherencia y claridad en nuestros DTOs (Data Transfer Objects), seguimos una convención de nombres estricta. Los nombres de los archivos DTO deben reflejar claramente su propósito y el dominio al que pertenecen. Por ejemplo, para card:

  • Solicitudes: El nombre debe comenzar con la entidad a la que pertenece, seguir con la acción y terminar con Request. Ejemplo: CardActivateRequest.ts, CardCreateRequest.ts, CardUpdateRequest.ts, CardDeleteRequest.ts.
  • Respuestas: Debe comenzar con la entidad y terminar con Response. Ejemplo: CardBalanceResponse.ts. CardResponse.ts

Uso de class-validator en DTOs

Al definir DTOs de solicitud, es esencial aplicar validaciones a todas las propiedades de la clase para garantizar que los datos recibidos cumplan con nuestras expectativas y restricciones. Usamos class-validator para este propósito:

  • Solicitudes: Todas las propiedades de las clases de solicitud deben tener decoradores de class-validator para validar la entrada.
  • Respuestas: Las clases de respuesta no deben incluir validaciones de class-validator, ya que son utilizadas solo para enviar datos al cliente.

Ejemplo de un DTO de Solicitud con class-validator:

import { IsNotEmpty, IsString, IsNumber } from 'class-validator';

export class CardActivateRequest {
  @IsNotEmpty()
  @IsString()
  readonly userId: string;

  @IsNotEmpty()
  @IsNumber()
  readonly cardId: number;
}

Uso

Para utilizar fiado-type-kit en tu proyecto, asegúrate de importar los componentes específicos que necesitas de cada dominio. Por ejemplo:

import { AccountResponse, AccountCreateRequest } from "@fiado/type-kit/bin/account";
import { CardRequest } from 'fiado-type-kit/dist/card/dtos/cardRequest.dto';
import { AccountType } from 'fiado-type-kit/dist/account/enums/accountType.enum';

Instalación

Para instalar la biblioteca fiado-type-kit en tu proyecto, ejecuta el siguiente comando usando npm:

npm i @fiado/type-kit

FAQs

Package last updated on 16 Mar 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts