@benup/bensdk 1.13.5 → 1.13.9-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,103 +1,86 @@
1
- # BenSDK 🚀
1
+ # BenSDK CLI
2
2
 
3
3
  <div align="center">
4
4
  <img src="https://img.shields.io/badge/Status-Stable-green" alt="Status: Stable">
5
- <img src="https://img.shields.io/badge/Version-1.12.1-blue" alt="Version: 1.12.1">
5
+ <img src="https://img.shields.io/badge/Version-1.12.2-blue" alt="Version: 1.12.2">
6
6
  </div>
7
7
 
8
+ <br>
8
9
  <br>
9
10
 
10
11
  <div align="center">
11
12
  <img src="resources/intro.gif" alt="BenSDK CLI Demo" width="800">
12
13
  </div>
13
14
 
14
- O BenSDK CLI é uma ferramenta de linha de comando que auxilia no desenvolvimento de projetos que são executados dentro do Integrador Benup. Ele simplifica o processo de criação e gerenciamento dos módulos que se integram ao ecossistema Benup.
15
-
16
- ## 📋 O que é o BenSDK?
17
-
18
- O BenSDK é um framework para a criação de integrações entre benefícios e o ecossistema Benup.
15
+ O BenSDK CLI gera o scaffolding de projetos de integração de benefícios para o ecossistema Benup. Com um único comando você tem um projeto TypeScript pronto com máquina de estados, handlers, testes unitários e servidor local para testar contra a API real do parceiro.
19
16
 
20
- ## ✨ Funcionalidades Principais
17
+ ## Instalação
21
18
 
22
- - 🚀 Geração de projetos benApp
23
- - ⚡ Configuração automática do ambiente de desenvolvimento
24
- - 📦 Suporte a TypeScript
25
- - 🎯 Interface de linha de comando
26
-
27
- ## 🛠️ Instalação
19
+ <br>
28
20
 
29
- Instale o BenSDK CLI globalmente via npm:
30
21
  ```bash
31
- npm i -g @benup/bensdk
32
- ```
33
-
34
- Após a instalação, o CLI estará disponível através do comando `ben`:
35
- ```
36
- Usage: BenSDK Tool [options] [command]
37
-
38
- CLI to create benefits integration
39
-
40
- Options:
41
- -V, --version output the version number
42
- -h, --help display help for command
43
-
44
- Commands:
45
- init <string> New project
46
- help [command] display help for command
22
+ npm i -g @benup/bensdk-cli
47
23
  ```
48
24
 
49
- ## 🚀 Uso
25
+ ## Uso
50
26
 
51
- Para criar um novo projeto benApp:
52
27
  ```bash
53
- ben init <NOME-DO-BENEFICIO>
28
+ ben init <BENEFIT-ID>
54
29
  ```
55
30
 
56
- Após criar o projeto:
31
+ O CLI vai perguntar:
32
+ - Quais actions o benefício suporta (RECHARGE, DEDUCTION, GRANT_DEPENDENT, REVOKE_DEPENDENT)
33
+ - Categoria do benefício (opcional)
34
+ - Descrição curta (opcional)
35
+ - Configurar git + husky com pre-commit (recomendado)
57
36
 
58
- 1. Abra o projeto gerado no seu editor de preferência
59
- 2. Execute o comando para gerar os handlers baseados na máquina de estado:
60
- ```bash
61
- npm run generate
62
- ```
63
- 3. Para rodar a integração localmente:
64
- ```bash
65
- npm run start
66
- ```
37
+ Ao final, o projeto estará instalado e pronto para uso.
67
38
 
68
- ## 📦 Publicação
39
+ ## O que é gerado
69
40
 
70
- 1. Instale o [maria-cli](https://github.com/benup-dev/maria) seguindo as instruções do repositório.
71
- 2. Execute o comando abaixo na raiz do projeto:
72
- ```bash
73
- maria benefit deploy -r <link-de-clone-do-repositorio.git> -n <BENEFIT-ID>
41
+ ```
42
+ <BENEFIT-ID>/
43
+ ├── src/
44
+ │ ├── benefit-definition.ts # Maquina de estados + schemas (ponto de entrada)
45
+ │ ├── handlers/ # Gerados via npm run generate
46
+ │ └── lib/ # Utilitarios e mocks
47
+ ├── bin/
48
+ │ ├── cli/ # npm run generate
49
+ │ ├── server/ # npm run dev:start
50
+ │ └── docs/ # npm run docs:update
51
+ ├── context.config.ts # Mock context para testes unitarios
52
+ ├── ICON.png # Icone do beneficio
53
+ └── dev-test.example.json # Modelo de credenciais para testes locais
74
54
  ```
75
55
 
76
- ## 📁 Estrutura do Projeto
56
+ ## Scripts do projeto gerado
77
57
 
78
- O projeto gerado inclui:
58
+ | Comando | Descricao |
59
+ |---------|-----------|
60
+ | `npm run generate` | Gera handlers e testes baseados no `benefit-definition.ts` |
61
+ | `npm run dev:start` | Sobe servidor local para testar handlers contra a API real do parceiro |
62
+ | `npm run docs:update` | Regenera os diagramas Mermaid do README a partir do `benefit-definition.ts` atual |
63
+ | `npm run test` | Executa os testes unitarios com Vitest |
64
+ | `npm run start` | Abre o painel visual da maquina de estados |
65
+ | `npm run lint` | Valida tipos TypeScript, formatacao e linting |
79
66
 
80
- - ⚙️ Configuração TypeScript
81
- - 📦 Estrutura básica para criação do módulo
82
- - 📚 Dependências necessárias
83
- - 🖼️ Simulador do Integrador para desenvolvimento local
84
- - 🔄 Geração automática de handlers baseado na máquina de estado
67
+ ## Testando localmente com `dev:start`
85
68
 
86
- ## 📦 Dependências
69
+ Copie `dev-test.example.json` para `dev-test.json`, preencha com as credenciais reais e suba o servidor:
87
70
 
88
- - Node.js
89
- - TypeScript
90
- - Várias bibliotecas de desenvolvimento
71
+ ```bash
72
+ npm run dev:start
73
+ ```
91
74
 
92
- ## 📝 Scripts Disponíveis
75
+ Com isso voce consegue executar qualquer handler chamando `POST http://localhost:3000` com o payload da action, autenticando via o `auth.handler` definido no `benefit-definition.ts` e batendo na API real do parceiro. Veja `docs/DEV_SERVER.md` no projeto gerado para documentacao completa.
93
76
 
94
- - `ben init <NOME-DO-BENEFICIO>`: Cria um novo projeto benApp
95
- - `npm run generate`: Gera os handlers baseados na máquina de estado
96
- - `npm run start`: Inicia a integração localmente
77
+ ## Publicacao
97
78
 
98
- ## 📚 Documentação
79
+ Utilize o [maria-cli](https://github.com/benup-dev/maria) para publicar o beneficio:
99
80
 
100
- Para mais informações sobre o BenSDK e o Integrador, consulte a [documentação oficial](https://docs.benup.io/getting-started).
81
+ ```bash
82
+ maria benefit deploy -r <link-ssh-do-repositorio> -n <BENEFIT-ID>
83
+ ```
101
84
 
102
85
  ---
103
86