@seedgrid/fe-commons 2026.3.19 → 2026.3.26
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 +55 -0
- package/package.json +7 -7
package/README.md
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# @seedgrid/fe-commons
|
|
2
|
+
|
|
3
|
+
Coleção de utilitários leves para chamadas HTTP, consulta de CEP e CNPJ que já respeitam o estilo SeedGrid.
|
|
4
|
+
|
|
5
|
+
## Características
|
|
6
|
+
|
|
7
|
+
- `createHttpClient` monta clientes `fetch` com `baseUrl`, `Content-Type` e autenticação automática via `Bearer`.
|
|
8
|
+
- `buscarCep` consome o serviço oficial ViaCEP com validação e erros amigáveis.
|
|
9
|
+
- `buscarCnpj` consulta o Publica CNPJ, retorna dados cadastrais completos e protege contra CNPJs inválidos.
|
|
10
|
+
- Tipagens exportadas (`ViaCepResponse`, `PublicaCnpjResponse`, opções de lookup) para completar formulários ou serviços de validação.
|
|
11
|
+
|
|
12
|
+
## Instalação
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
pnpm add @seedgrid/fe-commons
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Como utilizar
|
|
19
|
+
|
|
20
|
+
```tsx
|
|
21
|
+
import { createHttpClient, buscarCep, buscarCnpj } from "@seedgrid/fe-commons";
|
|
22
|
+
|
|
23
|
+
const apiClient = createHttpClient({
|
|
24
|
+
baseUrl: "https://api.seedgrid.com.br",
|
|
25
|
+
getAccessToken: () => localStorage.getItem("sg:session-token")
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
async function carregarEndereco() {
|
|
29
|
+
const cep = await buscarCep("01001-000");
|
|
30
|
+
console.log("Cidade:", cep.localidade, cep.uf);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
async function detalharEmpresa() {
|
|
34
|
+
const empresa = await buscarCnpj("10404812000100");
|
|
35
|
+
console.log("Razão social:", empresa?.razao_social);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
async function buscarDashboard() {
|
|
39
|
+
const dados = await apiClient.request("/v1/dashboard");
|
|
40
|
+
return dados;
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Recursos
|
|
45
|
+
|
|
46
|
+
- [ViaCEP](https://viacep.com.br) — consulta pública de CEPs com cache-friendly JSON.
|
|
47
|
+
- [Publica CNPJ](https://publica.cnpj.ws) — APIs abertas com histórico completo de sócios, natureza jurídica e endereços.
|
|
48
|
+
- `fetch` nativo + `Headers` prontos, ideal para serviços SeedGrid que usam Bearer tokens.
|
|
49
|
+
|
|
50
|
+
## Exemplos
|
|
51
|
+
|
|
52
|
+
- **Formulário de cadastro**: invoque `buscarCep` no campo de CEP e prefira preencher `logradouro`, `bairro` e `cidade` automaticamente.
|
|
53
|
+
- **Validação fiscal**: use `buscarCnpj` para confirmar se uma empresa aceita pagamentos e exibir o nome fantasia detalhado.
|
|
54
|
+
- **Camada HTTP compartilhada**: `createHttpClient` garante `Content-Type: application/json` e adiciona `Authorization` apenas quando o token estiver presente.
|
|
55
|
+
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seedgrid/fe-commons",
|
|
3
|
-
"version": "2026.3.
|
|
3
|
+
"version": "2026.3.26",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -21,17 +21,17 @@
|
|
|
21
21
|
"files": [
|
|
22
22
|
"dist"
|
|
23
23
|
],
|
|
24
|
-
"scripts": {
|
|
25
|
-
"build": "tsc -p tsconfig.json",
|
|
26
|
-
"typecheck": "tsc -p tsconfig.json --noEmit"
|
|
27
|
-
},
|
|
28
24
|
"dependencies": {
|
|
29
|
-
"@seedgrid/fe-core": "
|
|
25
|
+
"@seedgrid/fe-core": "2026.3.26"
|
|
30
26
|
},
|
|
31
27
|
"peerDependencies": {
|
|
32
28
|
"react": "^18.2.0 || ^19.0.0"
|
|
33
29
|
},
|
|
34
30
|
"devDependencies": {
|
|
35
31
|
"fs-extra": "^11.2.0"
|
|
32
|
+
},
|
|
33
|
+
"scripts": {
|
|
34
|
+
"build": "tsc -p tsconfig.json",
|
|
35
|
+
"typecheck": "tsc -p tsconfig.json --noEmit"
|
|
36
36
|
}
|
|
37
|
-
}
|
|
37
|
+
}
|