
Ability
Define permissões e inclui manipuladores para cada entidade.Decoradores
Define decoradores personalizados no NestJS para funcionalidade adicional. Veja decoradores personalizados para mais detalhes.Filtros
Inclui filtros de exceção para lidar com exceções que podem ocorrer em endpoints GraphQL.Guards
Veja guardiões para mais detalhes.Saúde
Inclui uma API REST publicamente disponível (healthz) que retorna um JSON para confirmar se o banco de dados está funcionando como esperado.Metadados
Define objetos personalizados e disponibiliza uma API GraphQL (graphql/metadata).Workspace
Gera e fornece um esquema GraphQL personalizado baseado nos metadados.Estrutura de Diretórios do Workspace
workspace.factory.ts, um arquivo contendo a função createGraphQLSchema. Esta função gera um esquema específico do workspace usando os metadados para adaptar um esquema para workspaces individuais. Ao separar a construção do esquema e do solucionador, utilizamos a função makeExecutableSchema, que combina esses elementos discretos.
Esta estratégia não é apenas sobre organização, mas também ajuda na otimização, como o armazenamento em cache das definições de tipo geradas para melhorar o desempenho e a escalabilidade.
Construtor do Esquema do Workspace
Gera o esquema GraphQL e inclui:Fábricas:
Construtores especializados para gerar construções relacionadas ao GraphQL.- A type.factory traduz metadados de campo em tipos GraphQL usando o
TypeMapperService. - A type-definition.factory cria objetos de entrada ou saída GraphQL derivados de
objectMetadata.
Tipos GraphQL
Inclui enumerações, entradas, objetos e escalas, e serve como blocos de construção para a construção do esquema.Interfaces e Definições de Objetos
Contém os modelos para entidades GraphQL e inclui tipos predefinidos e personalizados comoMONEY ou URL.
Serviços
Contém o serviço responsável por associar FieldMetadataType ao seu adequado escalar GraphQL ou modificadores de consulta.Armazenamento
Inclui a classeTypeDefinitionsStorage que contém definições de tipo reutilizáveis, prevenindo a duplicação de tipos GraphQL.
Construtor de Solucionadores do Workspace
Cria funções de solucionadores para consultas e mutações do esquema GraphQL. Cada fábrica neste diretório é responsável por produzir um tipo de solucionador distinto, como oFindManyResolverFactory, projetado para aplicação adaptável em várias tabelas.