vnd-channel-01
v0.0.9
Published
Este é um plugin que adiciona a funcionalidade de produtos favoritos aos projetos GSeller Vendure.
Downloads
4
Readme
GSeller Vendure Nomedoplugin
Este é um plugin que adiciona a funcionalidade de produtos favoritos aos projetos GSeller Vendure.
Dependências
Certifique-se de ter as seguintes dependências instaladas (listadas em peerDependencies
no package.json
):
@nestjs/graphql
@vendure/cli
@vendure/core
graphql-tag
reflect-metadata
typeorm
Estrutura de Pastas e Arquivos
A estrutura do projeto é organizada para facilitar a compreensão e manutenção.
Pasta entity
A pasta entity
contém as definições das entidades usadas no projeto.
Arquivo favorite.entity.ts
Define a entidade Favorite
, representando a relação entre um cliente e um produto favorito.
Pasta api
Contém arquivos relacionados à API GraphQL do projeto.
Arquivo api-extensions.ts
Fornece extensões para o esquema GraphQL do Vendure, introduzindo tipos e operações adicionais relacionados à entidade Favorite
.
Arquivo customer-entity.resolver.ts
Resolver GraphQL para consultas relacionadas à entidade Customer
. Inclui a resolução para o campo favorites
, que retorna a lista de favoritos de um cliente.
Arquivo favorite-entity.resolver.ts
Resolver GraphQL para consultas relacionadas à entidade Favorite
. Inclui resoluções para os campos product
e customer
.
Arquivo favorite-shop.resolver.ts
Resolver GraphQL para operações de mutação e consulta relacionadas aos favoritos na loja. Inclui operações como toggleFavorite
para adicionar ou remover um produto da lista de favoritos, e activeFavorites
para obter a lista de favoritos ativos de um cliente.
Arquivo constants.ts
Contém constantes utilizadas no projeto, incluindo o símbolo PLUGIN_INIT_OPTIONS
e o contexto do logger para o plugin.
Arquivo plugin.ts
Ponto central do plugin, responsável por configurar e exportar o FavoritesPlugin
. Principais características:
Favorite
Entity: Adiciona a entidadeFavorite
ao array de entidades.adminApiExtensions
eshopApiExtensions
: Define extensões da API GraphQL para administração e loja, utilizando os arquivosapi-extensions.ts
,CustomerEntityResolver
,FavoriteEntityResolver
, eFavoriteShopResolver
.PluginInitOptions
: Define as opções de inicialização do plugin através da interfacePluginInitOptions
.init()
method: Configura as opções do plugin. Este método é chamado durante a inicialização do plugin no Vendure.
Arquivo types.ts
Contém a definição da interface PluginInitOptions
, especificando as opções de configuração para o plugin.
Observação: Certifique-se de incluir informações adicionais ou links para documentação específica dentro de cada arquivo, se necessário. Esta estrutura de documentação visa proporcionar uma compreensão clara das responsabilidades de cada arquivo nas pastas src
, api
, entities
do seu projeto.