0.3.2 • Published 5 months ago

@accon/connect v0.3.2

Weekly downloads
-
License
BUSL-1.1
Repository
github
Last release
5 months ago

@accon/connect

@accon/connect é uma biblioteca que centraliza a integração entre a plataforma Accon e diversos serviços externos do ecossistema de food service. Seu objetivo é padronizar e simplificar a comunicação com plataformas de logística, PDVs, marketing, fidelização, entre outros.

Visão Geral

Esta biblioteca oferece uma interface extensível que permite que o sistema interno da Accon conecte-se de forma desacoplada com sistemas terceiros, respeitando contratos bem definidos de entrada e saída.

As integrações são carregadas dinamicamente e registradas via decoradores, tornando fácil adicionar novos serviços sem modificar o núcleo do sistema.

Exemplos de integrações

  • Logística: Uber Direct, Loggi, serviços próprios de entrega
  • PDVs: Saipos, Sischef, TOTVS Chef, Consumer, GrandChef
  • Marketing: plataformas de cashback, remarketing, CRM, etc.

Principais recursos

  • Sistema de eventos para rastrear o ciclo de vida das integrações
  • Decorador @RegistryIntegration() para registrar dinamicamente integrações
  • Tipagem forte para contratos de integração (ordens, clientes, pagamentos)
  • Injeção de dependências com NestJS via ModuleRef
  • Carregamento dinâmico de integrações

Instalação

npm install @accon/connect

Uso básico

@Module({
  imports: [AcconConnectModule],
})
export class AppModule {}

// Em qualquer serviço
constructor(private readonly connectService: ConnectService) {}

await this.connectService.onOrderCreated({ ifood: { token: 'abc' } }, { order: pedido });

Criando uma nova integração

@RegistryIntegration({ id: 'loggi' })
export class LoggiOrderOutput implements OrderOutputIntegration {
  constructor(private readonly http: HttpService) {}

  async onOrderCreated(order: Order, config: any): Promise<void> {
    // lógica de envio do pedido para a Loggi
  }
}

Licença

Business Source License 1.1 — para uso exclusivo dentro da plataforma Accon.

0.3.2

5 months ago

0.3.1

6 months ago

0.3.0

6 months ago

0.2.0

6 months ago

0.1.1

7 months ago

0.1.0

7 months ago

0.0.3

7 months ago

0.0.2

7 months ago

0.0.1

7 months ago