ixc-orm 1.4.3 → 1.5.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/CHANGELOG.md +24 -0
- package/README.md +43 -19
- package/dist/IXCClient.d.ts +10 -1
- package/dist/IXCClient.js +53 -3
- package/dist/index.d.ts +2 -2
- package/dist/index.js +4 -4
- package/dist/recursos/cliente_contrato_btn_lib_temp_24722.d.ts +3 -5
- package/dist/recursos/cliente_contrato_btn_lib_temp_24722.js +6 -3
- package/dist/recursos/desbloqueio_confianca.d.ts +3 -5
- package/dist/recursos/desbloqueio_confianca.js +6 -3
- package/dist/recursos/get_boleto.d.ts +3 -5
- package/dist/recursos/get_boleto.js +3 -2
- package/dist/recursos/index.d.ts +18 -11
- package/dist/recursos/index.js +27 -3
- package/dist/request.d.ts +8 -4
- package/dist/request.js +23 -19
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types.d.ts +3 -2
- package/dist/types.js +5 -0
- package/package.json +5 -5
- package/dist/recursos/types.d.ts +0 -26
- package/dist/recursos/types.js +0 -2
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# 🔄 CHANGELOG
|
|
2
|
+
- [v1.5.0 - 16 de agosto de 2025](#v150)
|
|
3
|
+
- [v1.4.4 - 15 de agosto de 2025](#v144)
|
|
4
|
+
- [v1.4.3 - 15 de agosto de 2025](#v143)
|
|
5
|
+
- [v1.4.1 - 14 de agosto de 2025](#v141)
|
|
6
|
+
|
|
7
|
+
## 🚀 Novidades
|
|
8
|
+
|
|
9
|
+
### v1.5.0
|
|
10
|
+
* **Melhoria:** A chamada de recursos da API agora pode ser feita de forma mais simplificada, através da função `RecursoIXC`:
|
|
11
|
+
* Basta importar assim: `import { RecursoIXC } from 'ixc-orm'`;
|
|
12
|
+
* E chamar assim: `await RecursoIXC('get_boleto', { id_fatura: 25484 })`.
|
|
13
|
+
|
|
14
|
+
### v1.4.4
|
|
15
|
+
* **Melhoria:** Foi adicionado um método `find()` a classe `IXCClient`, para encontrar um registro pelo seu `id` de uma forma mais simplificada.
|
|
16
|
+
|
|
17
|
+
### v1.4.3
|
|
18
|
+
* **Melhoria:** Os métodos `get()`, `post()` e `put()` da classe `IXCClient`, a partir de agora sempre retornarão um objeto `IXCResponse`, indepedente da requisição falhar ou não.
|
|
19
|
+
|
|
20
|
+
### v1.4.1
|
|
21
|
+
* **Correção:** Resolvido o bug de leitura das variáveis de ambiente no arquivo .env da pasta raiz do projeto.
|
|
22
|
+
* **Melhoria:** Foram adicionados 3 dos 44 recursos da API do IXC: `get_boleto`, `liberacao_temporaria` e `desbloqueio_confianca`. (Futuramente novos recursos serão adicionados)
|
|
23
|
+
|
|
24
|
+
> Consulte todos os recursos disponíveis: [Doc. API IXCSoft](https://wikiapiprovedor.ixcsoft.com.br/)
|
package/README.md
CHANGED
|
@@ -1,20 +1,12 @@
|
|
|
1
1
|
# IXC-ORM [](https://www.npmjs.com/package/ixc-orm)
|
|
2
2
|
|
|
3
|
-
Este ORM
|
|
4
|
-
Esta biblioteca não faz parte das bibliotecas oficiais da IXCsoft e foi desenvolvida de forma independente e sem fins lucrativos.
|
|
3
|
+
Este ORM visa facilitar o consumo de dados da API oficial do [IXC Provedor](https://ixcsoft.com/ixc-provedor).\
|
|
4
|
+
Esta biblioteca não faz parte das bibliotecas oficiais da [IXCsoft](https://ixcsoft.com/) e foi desenvolvida de forma independente e sem fins lucrativos.
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
## 🚀 Novidades
|
|
8
|
-
|
|
9
|
-
### v1.4.1 - 14 de agosto de 2025
|
|
10
|
-
|
|
11
|
-
* **Corrigido:** Resolvido o bug de leitura das variáveis de ambiente no arquivo .env na pasta raiz.
|
|
12
|
-
* **Novo:** Foram adicionados 3 dos 44 recursos da API do IXC: `get_boleto`, `liberacao_temporaria` e `desbloqueio_confianca`. (Futuramente novos recursos serão adicionados)
|
|
13
|
-
|
|
14
|
-
> Consulte todos os recursos disponíveis: [Doc. API IXCSoft](https://wikiapiprovedor.ixcsoft.com.br/)
|
|
15
|
-
|
|
16
7
|
|
|
17
8
|
## Instalação
|
|
9
|
+
|
|
18
10
|
```bash
|
|
19
11
|
npm install ixc-orm
|
|
20
12
|
```
|
|
@@ -24,15 +16,15 @@ yarn add ixc-orm
|
|
|
24
16
|
```
|
|
25
17
|
|
|
26
18
|
|
|
19
|
+
|
|
27
20
|
## Usando a biblioteca
|
|
28
21
|
|
|
29
|
-
> As classes que representarão as tabelas dentro do banco de dados do seu servidor IXC, deverão herdar da classe `IXCClient
|
|
22
|
+
> As classes que representarão as tabelas dentro do banco de dados do seu servidor IXC, deverão herdar da classe `IXCClient`, como no exemplo a seguir:
|
|
30
23
|
|
|
31
24
|
```typescript
|
|
32
25
|
import { IXCClient } 'ixc-orm';
|
|
33
26
|
|
|
34
27
|
class Contrato extends IXCClient {
|
|
35
|
-
|
|
36
28
|
constructor() {
|
|
37
29
|
super('cliente_contrato');
|
|
38
30
|
}
|
|
@@ -48,17 +40,49 @@ const contratos = await contrato
|
|
|
48
40
|
.where(['id_cliente', 240])
|
|
49
41
|
.where(['data_ativacao', '>=', '2024-09-24 00:45:00'])
|
|
50
42
|
.orderBy('data_ativacao', 'desc')
|
|
51
|
-
.get()
|
|
43
|
+
.get()
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Ou quando você já possui o ID do registro que procura, a opção mais simples será utilizar o método `find()`. Este método também está implementado na classe `IXCClient`
|
|
47
|
+
|
|
48
|
+
```typescript
|
|
49
|
+
const contrato = new Contrato();
|
|
50
|
+
|
|
51
|
+
const id_contrato = 4574;
|
|
52
|
+
|
|
53
|
+
const contratos = await contrato.find(id_contrato)
|
|
52
54
|
```
|
|
53
55
|
|
|
54
56
|
|
|
57
|
+
|
|
58
|
+
## Recursos da API do IXC Provedor
|
|
59
|
+
|
|
60
|
+
Existem alguns `endpoints` que a API do IXC disponibiliza, a fim de "encurtar o caminho" para chegar até algumas informações. Como por exemplo, obter o arquivo PDF de uma fatura.\
|
|
61
|
+
Você não precisará se preocupar em criar uma classe `Boleto` que herde da classe `IXCClient`, por exemplo,\
|
|
62
|
+
nem encadear chamadas `where`. Basta seguir o exemplo abaixo:
|
|
63
|
+
|
|
64
|
+
```typescript
|
|
65
|
+
import { RecursoIXC } from 'ixc-orm';
|
|
66
|
+
|
|
67
|
+
const id_fatura = 45852;
|
|
68
|
+
|
|
69
|
+
const response = await RecursoIXC('get_boleto', { id_fatura })
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
> Dos recursos disponibilizados pela API do **IXC Provedor**, esta biblioteca já implementou os seguintes recursos:\
|
|
73
|
+
> `get_boleto`, `desbloqueio_confianca` e `cliente_contrato_btn_lib_temp_24722`.\
|
|
74
|
+
> Obs: Os nomes dos recursos estão de acordo com a API do **IXC Provedor** a fim de facilitar o estudo de sua documentação oficial.
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
55
78
|
## Variáveis de Ambiente
|
|
56
79
|
|
|
57
80
|
Para configurar a comunicação da biblioteca com seu servidor IXC, é necessário adicionar as seguintes variáveis de ambiente a um arquivo `.env`, que esteja localizado no diretório raiz do seu projeto.
|
|
58
81
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
`IXC_TOKEN`
|
|
82
|
+
> **IXC_HOST** A url do seu servidor IXC\
|
|
83
|
+
> **IXC_TOKEN** Um token de API gerado dentro do próprio **IXC Provedor**
|
|
62
84
|
|
|
63
|
-
|
|
64
|
-
|
|
85
|
+
```ini
|
|
86
|
+
IXC_HOST="https://dominiodoservidorixc.com.br/webservice/v1"
|
|
87
|
+
IXC_TOKEN="8:k4n8wk1946j7mimthei869cq1zz2u940f2gqobqg081y2oefl80mzhtq2wud3gqp"
|
|
88
|
+
```
|
package/dist/IXCClient.d.ts
CHANGED
|
@@ -27,7 +27,16 @@ export default abstract class IXCClient {
|
|
|
27
27
|
*/
|
|
28
28
|
orderBy(column: string, order: keyof typeof IXCSortOrder): IXCClient;
|
|
29
29
|
/**
|
|
30
|
-
* Envia uma
|
|
30
|
+
* Envia uma requisição GET para a API do IXC, com o header `ixcsoft` definico como `listar`\
|
|
31
|
+
* A `query` dessa requisição não será enviada para o IXC com o parâmetro `grid_param`\
|
|
32
|
+
* Ou seja, esta requisição executa uma busca simples, em vez do filtro de grid
|
|
33
|
+
*
|
|
34
|
+
* @param id O identificador numérico do registro que será buscado no IXC
|
|
35
|
+
* @returns Promise<IXCResponse>
|
|
36
|
+
*/
|
|
37
|
+
find(id: any): Promise<IXCResponse>;
|
|
38
|
+
/**
|
|
39
|
+
* Envia uma requisição GET para a API do IXC, com o header `ixcsoft` definico como `listar`
|
|
31
40
|
* Preenche o corpo da requisição com os dados passados pela função `where` no formado JSON
|
|
32
41
|
*
|
|
33
42
|
* @param pg O número da página que será solicitada ao IXC `padão = 1`
|
package/dist/IXCClient.js
CHANGED
|
@@ -76,7 +76,57 @@ class IXCClient {
|
|
|
76
76
|
return this;
|
|
77
77
|
}
|
|
78
78
|
/**
|
|
79
|
-
* Envia uma
|
|
79
|
+
* Envia uma requisição GET para a API do IXC, com o header `ixcsoft` definico como `listar`\
|
|
80
|
+
* A `query` dessa requisição não será enviada para o IXC com o parâmetro `grid_param`\
|
|
81
|
+
* Ou seja, esta requisição executa uma busca simples, em vez do filtro de grid
|
|
82
|
+
*
|
|
83
|
+
* @param id O identificador numérico do registro que será buscado no IXC
|
|
84
|
+
* @returns Promise<IXCResponse>
|
|
85
|
+
*/
|
|
86
|
+
find(id) {
|
|
87
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
88
|
+
var _a, _b;
|
|
89
|
+
const params = {
|
|
90
|
+
TB: 'id',
|
|
91
|
+
OP: '=',
|
|
92
|
+
P: id
|
|
93
|
+
};
|
|
94
|
+
const opts = {
|
|
95
|
+
page: 1,
|
|
96
|
+
rowsPerPage: 1,
|
|
97
|
+
};
|
|
98
|
+
const axios = (0, request_1.createAxiosInstance)('GET');
|
|
99
|
+
const data = (0, request_1.createRequestPayload)(this.table, params, opts);
|
|
100
|
+
try {
|
|
101
|
+
const response = yield axios.get(this.table, { data });
|
|
102
|
+
if (response.status === 200) {
|
|
103
|
+
return response.data;
|
|
104
|
+
}
|
|
105
|
+
return (0, response_1.createResponse)({
|
|
106
|
+
error: true,
|
|
107
|
+
message: (_a = response.data) === null || _a === void 0 ? void 0 : _a.message
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
console.error(error);
|
|
112
|
+
return (0, response_1.createResponse)({
|
|
113
|
+
error: true,
|
|
114
|
+
message: ((_b = error.response) === null || _b === void 0 ? void 0 : _b.statusText) || error.message || 'Erro desconhecido'
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
finally {
|
|
118
|
+
this.params = [];
|
|
119
|
+
this.options = {
|
|
120
|
+
page: 1,
|
|
121
|
+
rowsPerPage: 20,
|
|
122
|
+
sortName: 'id',
|
|
123
|
+
sortOrder: 'asc'
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Envia uma requisição GET para a API do IXC, com o header `ixcsoft` definico como `listar`
|
|
80
130
|
* Preenche o corpo da requisição com os dados passados pela função `where` no formado JSON
|
|
81
131
|
*
|
|
82
132
|
* @param pg O número da página que será solicitada ao IXC `padão = 1`
|
|
@@ -89,9 +139,9 @@ class IXCClient {
|
|
|
89
139
|
const _c = this.options, { page, rowsPerPage } = _c, rest = __rest(_c, ["page", "rowsPerPage"]);
|
|
90
140
|
const opts = Object.assign({ page: pg !== null && pg !== void 0 ? pg : page, rowsPerPage: rows !== null && rows !== void 0 ? rows : rowsPerPage }, rest);
|
|
91
141
|
const axios = (0, request_1.createAxiosInstance)('GET');
|
|
92
|
-
const
|
|
142
|
+
const data = (0, request_1.createRequestPayload)(this.table, this.params, opts);
|
|
93
143
|
try {
|
|
94
|
-
const response = yield axios.get(this.table,
|
|
144
|
+
const response = yield axios.get(this.table, { data });
|
|
95
145
|
if (response.status === 200) {
|
|
96
146
|
return response.data;
|
|
97
147
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import IXCClient from './IXCClient';
|
|
2
|
-
import
|
|
2
|
+
import RecursoIXC from './recursos';
|
|
3
3
|
import { IXCOperator, IXCOptions, IXCQuery, IXCRequest, IXCRequestMethods, IXCResponse, IXCSortOrder } from './types';
|
|
4
|
-
export { IXCClient, IXCOperator, IXCOptions, IXCQuery, IXCRequest, IXCRequestMethods, IXCResponse, IXCSortOrder,
|
|
4
|
+
export { IXCClient, IXCOperator, IXCOptions, IXCQuery, IXCRequest, IXCRequestMethods, IXCResponse, IXCSortOrder, RecursoIXC };
|
package/dist/index.js
CHANGED
|
@@ -3,20 +3,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.RecursoIXC = exports.IXCSortOrder = exports.IXCRequestMethods = exports.IXCOperator = exports.IXCClient = void 0;
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const dotenv_1 = __importDefault(require("dotenv"));
|
|
9
9
|
const IXCClient_1 = __importDefault(require("./IXCClient"));
|
|
10
10
|
exports.IXCClient = IXCClient_1.default;
|
|
11
11
|
const recursos_1 = __importDefault(require("./recursos"));
|
|
12
|
-
exports.
|
|
12
|
+
exports.RecursoIXC = recursos_1.default;
|
|
13
13
|
const types_1 = require("./types");
|
|
14
14
|
Object.defineProperty(exports, "IXCOperator", { enumerable: true, get: function () { return types_1.IXCOperator; } });
|
|
15
15
|
Object.defineProperty(exports, "IXCRequestMethods", { enumerable: true, get: function () { return types_1.IXCRequestMethods; } });
|
|
16
16
|
Object.defineProperty(exports, "IXCSortOrder", { enumerable: true, get: function () { return types_1.IXCSortOrder; } });
|
|
17
17
|
const root = (__dirname.includes('\\node_modules\\'))
|
|
18
|
-
? path_1.default.join(__dirname,
|
|
19
|
-
: path_1.default.join(__dirname,
|
|
18
|
+
? path_1.default.join(__dirname, '../../../.env')
|
|
19
|
+
: path_1.default.join(__dirname, '../../.env');
|
|
20
20
|
const env = dotenv_1.default.config({ path: root });
|
|
21
21
|
if (env.error) {
|
|
22
22
|
console.error(env.error);
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { IXCResponse } from '../types';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
6
|
-
export default _default;
|
|
2
|
+
export default function cliente_contrato(args: {
|
|
3
|
+
id_contrato?: string | number;
|
|
4
|
+
}): Promise<IXCResponse>;
|
|
@@ -12,14 +12,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.default = cliente_contrato;
|
|
15
16
|
const recurso_1 = __importDefault(require("./recurso"));
|
|
16
17
|
const src = 'cliente_contrato_btn_lib_temp_24722';
|
|
17
|
-
function
|
|
18
|
+
function cliente_contrato(args) {
|
|
18
19
|
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
const { id_contrato } = args;
|
|
19
21
|
return yield (0, recurso_1.default)({
|
|
20
22
|
src,
|
|
21
|
-
data: {
|
|
23
|
+
data: {
|
|
24
|
+
id_contrato
|
|
25
|
+
}
|
|
22
26
|
});
|
|
23
27
|
});
|
|
24
28
|
}
|
|
25
|
-
exports.default = { execute };
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { IXCResponse } from '../types';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
6
|
-
export default _default;
|
|
2
|
+
export default function desbloqueio_confianca(args: {
|
|
3
|
+
id_contrato?: string | number;
|
|
4
|
+
}): Promise<IXCResponse>;
|
|
@@ -12,14 +12,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.default = desbloqueio_confianca;
|
|
15
16
|
const recurso_1 = __importDefault(require("./recurso"));
|
|
16
17
|
const src = 'desbloqueio_confianca';
|
|
17
|
-
function
|
|
18
|
+
function desbloqueio_confianca(args) {
|
|
18
19
|
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
const { id_contrato } = args;
|
|
19
21
|
return yield (0, recurso_1.default)({
|
|
20
22
|
src,
|
|
21
|
-
data: {
|
|
23
|
+
data: {
|
|
24
|
+
id_contrato
|
|
25
|
+
}
|
|
22
26
|
});
|
|
23
27
|
});
|
|
24
28
|
}
|
|
25
|
-
exports.default = { execute };
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { IXCRecursoResponse, IXCResponse } from '../types';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
6
|
-
export default _default;
|
|
2
|
+
export default function get_boleto(args: {
|
|
3
|
+
id_fatura?: string | number;
|
|
4
|
+
}): Promise<IXCResponse | IXCRecursoResponse>;
|
|
@@ -9,13 +9,15 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.default = get_boleto;
|
|
12
13
|
const request_1 = require("../request");
|
|
13
14
|
const response_1 = require("../response");
|
|
14
15
|
const SRC = 'get_boleto';
|
|
15
|
-
function
|
|
16
|
+
function get_boleto(args) {
|
|
16
17
|
return __awaiter(this, void 0, void 0, function* () {
|
|
17
18
|
const axios = (0, request_1.createAxiosInstance)('PUT');
|
|
18
19
|
try {
|
|
20
|
+
const { id_fatura } = args;
|
|
19
21
|
const response = yield axios.get(SRC, {
|
|
20
22
|
data: {
|
|
21
23
|
boletos: id_fatura,
|
|
@@ -38,4 +40,3 @@ function execute(id_fatura) {
|
|
|
38
40
|
return (0, response_1.createResponse)({ error: true });
|
|
39
41
|
});
|
|
40
42
|
}
|
|
41
|
-
exports.default = { execute };
|
package/dist/recursos/index.d.ts
CHANGED
|
@@ -1,12 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
readonly liberacao_temporaria: {
|
|
9
|
-
readonly execute: (id_contrato: string | number) => Promise<import("..").IXCResponse>;
|
|
10
|
-
};
|
|
1
|
+
import cliente_contrato from './cliente_contrato_btn_lib_temp_24722';
|
|
2
|
+
import desbloqueio_confianca from './desbloqueio_confianca';
|
|
3
|
+
import get_boleto from './get_boleto';
|
|
4
|
+
declare const recursos: {
|
|
5
|
+
cliente_contrato: typeof cliente_contrato;
|
|
6
|
+
desbloqueio_confianca: typeof desbloqueio_confianca;
|
|
7
|
+
get_boleto: typeof get_boleto;
|
|
11
8
|
};
|
|
12
|
-
|
|
9
|
+
type Recursos = typeof recursos;
|
|
10
|
+
/**
|
|
11
|
+
* Uma função que simplifica a execução de recursos específicos da API do IXC\
|
|
12
|
+
* Para encontrar todos os recursos, acesse: {@link https://wikiapiprovedor.ixcsoft.com.br/}
|
|
13
|
+
*
|
|
14
|
+
* @param recurso O nome do recurso a ser executado
|
|
15
|
+
* @param args Os argumentos que devem ser passado para o manipulador do recurso
|
|
16
|
+
* @returns Promise<IXCResponse | IXCRecursoResponse>
|
|
17
|
+
*/
|
|
18
|
+
export default function RecursoIXC<T extends keyof Recursos>(recurso: T, args: Parameters<Recursos[T]>[0]): Promise<import("..").IXCResponse | import("../types").IXCRecursoResponse>;
|
|
19
|
+
export {};
|
package/dist/recursos/index.js
CHANGED
|
@@ -1,13 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
13
|
};
|
|
5
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.default = RecursoIXC;
|
|
6
16
|
const cliente_contrato_btn_lib_temp_24722_1 = __importDefault(require("./cliente_contrato_btn_lib_temp_24722"));
|
|
7
17
|
const desbloqueio_confianca_1 = __importDefault(require("./desbloqueio_confianca"));
|
|
8
18
|
const get_boleto_1 = __importDefault(require("./get_boleto"));
|
|
9
|
-
|
|
19
|
+
const recursos = {
|
|
20
|
+
cliente_contrato: cliente_contrato_btn_lib_temp_24722_1.default,
|
|
10
21
|
desbloqueio_confianca: desbloqueio_confianca_1.default,
|
|
11
|
-
get_boleto: get_boleto_1.default
|
|
12
|
-
liberacao_temporaria: cliente_contrato_btn_lib_temp_24722_1.default,
|
|
22
|
+
get_boleto: get_boleto_1.default
|
|
13
23
|
};
|
|
24
|
+
/**
|
|
25
|
+
* Uma função que simplifica a execução de recursos específicos da API do IXC\
|
|
26
|
+
* Para encontrar todos os recursos, acesse: {@link https://wikiapiprovedor.ixcsoft.com.br/}
|
|
27
|
+
*
|
|
28
|
+
* @param recurso O nome do recurso a ser executado
|
|
29
|
+
* @param args Os argumentos que devem ser passado para o manipulador do recurso
|
|
30
|
+
* @returns Promise<IXCResponse | IXCRecursoResponse>
|
|
31
|
+
*/
|
|
32
|
+
function RecursoIXC(recurso, args) {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
const handler = recursos[recurso];
|
|
35
|
+
return yield handler(args);
|
|
36
|
+
});
|
|
37
|
+
}
|
package/dist/request.d.ts
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
import { AxiosInstance
|
|
1
|
+
import { AxiosInstance } from 'axios';
|
|
2
2
|
import { IXCOptions, IXCQuery, IXCRequest, IXCRequestMethods } from './types';
|
|
3
3
|
/**
|
|
4
|
+
* Cria uma instância de um objeto AxiosInstance, pré-configurado com os cabeçalhos necessários
|
|
5
|
+
* para executar uma requisição para a API do IXC
|
|
4
6
|
*
|
|
5
7
|
* @param method GET | POST | PUT | DELETE
|
|
6
|
-
* @returns
|
|
8
|
+
* @returns AxiosInstance
|
|
7
9
|
*/
|
|
8
10
|
export declare function createAxiosInstance(method?: keyof typeof IXCRequestMethods): AxiosInstance;
|
|
9
11
|
/**
|
|
12
|
+
* Cria um objeto `IXCRequest` configurado para ser utilizado como payload de uma requisição
|
|
13
|
+
* para a API do IXC
|
|
10
14
|
*
|
|
11
15
|
* @param table Nome da tabela do IXC onde será feita a busca, atualização, inserção ou remoção
|
|
12
16
|
* @param params Parâmetros da busca (desconsiderados quando a ação for a de inserir novos registros)
|
|
13
17
|
* @param options Parâmetros de formatação dos dados da responsta (página, ítens por página e ordenação)
|
|
14
|
-
* @returns
|
|
18
|
+
* @returns IXCRequest
|
|
15
19
|
*/
|
|
16
|
-
export declare function createRequestPayload(table: string, params: IXCQuery | IXCQuery[], options?: IXCOptions):
|
|
20
|
+
export declare function createRequestPayload(table: string, params: IXCQuery | IXCQuery[], options?: IXCOptions): IXCRequest;
|
package/dist/request.js
CHANGED
|
@@ -7,9 +7,11 @@ exports.createAxiosInstance = createAxiosInstance;
|
|
|
7
7
|
exports.createRequestPayload = createRequestPayload;
|
|
8
8
|
const axios_1 = __importDefault(require("axios"));
|
|
9
9
|
/**
|
|
10
|
+
* Cria uma instância de um objeto AxiosInstance, pré-configurado com os cabeçalhos necessários
|
|
11
|
+
* para executar uma requisição para a API do IXC
|
|
10
12
|
*
|
|
11
13
|
* @param method GET | POST | PUT | DELETE
|
|
12
|
-
* @returns
|
|
14
|
+
* @returns AxiosInstance
|
|
13
15
|
*/
|
|
14
16
|
function createAxiosInstance(method = 'GET') {
|
|
15
17
|
const host = process.env.IXC_HOST;
|
|
@@ -25,11 +27,13 @@ function createAxiosInstance(method = 'GET') {
|
|
|
25
27
|
});
|
|
26
28
|
}
|
|
27
29
|
/**
|
|
30
|
+
* Cria um objeto `IXCRequest` configurado para ser utilizado como payload de uma requisição
|
|
31
|
+
* para a API do IXC
|
|
28
32
|
*
|
|
29
33
|
* @param table Nome da tabela do IXC onde será feita a busca, atualização, inserção ou remoção
|
|
30
34
|
* @param params Parâmetros da busca (desconsiderados quando a ação for a de inserir novos registros)
|
|
31
35
|
* @param options Parâmetros de formatação dos dados da responsta (página, ítens por página e ordenação)
|
|
32
|
-
* @returns
|
|
36
|
+
* @returns IXCRequest
|
|
33
37
|
*/
|
|
34
38
|
function createRequestPayload(table, params, options) {
|
|
35
39
|
var _a, _b, _c, _d;
|
|
@@ -46,24 +50,24 @@ function createRequestPayload(table, params, options) {
|
|
|
46
50
|
P: p.P
|
|
47
51
|
});
|
|
48
52
|
});
|
|
49
|
-
return {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
page: page,
|
|
54
|
-
rp: rowsPerPage,
|
|
55
|
-
sortname: `${table}.${sortName}`,
|
|
56
|
-
sortorder: sortOrder,
|
|
57
|
-
grid_param: JSON.stringify(grid_param)
|
|
58
|
-
} };
|
|
59
|
-
}
|
|
60
|
-
return { data: {
|
|
61
|
-
qtype: `${table}.${params.TB}`,
|
|
62
|
-
query: params.P,
|
|
63
|
-
oper: params.OP || '=',
|
|
53
|
+
return {
|
|
54
|
+
qtype: table,
|
|
55
|
+
query: '',
|
|
56
|
+
oper: '',
|
|
64
57
|
page: page,
|
|
65
58
|
rp: rowsPerPage,
|
|
66
59
|
sortname: `${table}.${sortName}`,
|
|
67
|
-
sortorder: sortOrder
|
|
68
|
-
|
|
60
|
+
sortorder: sortOrder,
|
|
61
|
+
grid_param: JSON.stringify(grid_param)
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
return {
|
|
65
|
+
qtype: `${table}.${params.TB}`,
|
|
66
|
+
query: params.P,
|
|
67
|
+
oper: params.OP || '=',
|
|
68
|
+
page: page,
|
|
69
|
+
rp: rowsPerPage,
|
|
70
|
+
sortname: `${table}.${sortName}`,
|
|
71
|
+
sortorder: sortOrder
|
|
72
|
+
};
|
|
69
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../src/ixcclient.ts","../src/index.ts","../src/request.ts","../src/response.ts","../src/types.ts","../src/recursos/cliente_contrato_btn_lib_temp_24722.ts","../src/recursos/desbloqueio_confianca.ts","../src/recursos/get_boleto.ts","../src/recursos/index.ts","../src/recursos/recurso.ts"
|
|
1
|
+
{"root":["../src/ixcclient.ts","../src/index.ts","../src/request.ts","../src/response.ts","../src/types.ts","../src/recursos/cliente_contrato_btn_lib_temp_24722.ts","../src/recursos/desbloqueio_confianca.ts","../src/recursos/get_boleto.ts","../src/recursos/index.ts","../src/recursos/recurso.ts"],"version":"5.9.2"}
|
package/dist/types.d.ts
CHANGED
|
@@ -40,7 +40,7 @@ export interface IXCRequest {
|
|
|
40
40
|
}
|
|
41
41
|
export interface IXCResponse {
|
|
42
42
|
error?: boolean | object;
|
|
43
|
-
message?: string
|
|
43
|
+
message?: string;
|
|
44
44
|
id?: string | number;
|
|
45
45
|
page: number | string;
|
|
46
46
|
total: number;
|
|
@@ -49,6 +49,7 @@ export interface IXCResponse {
|
|
|
49
49
|
}>;
|
|
50
50
|
}
|
|
51
51
|
export interface IXCRecursoResponse {
|
|
52
|
-
error?: boolean | object;
|
|
53
52
|
data: any;
|
|
53
|
+
error?: boolean | object;
|
|
54
|
+
message?: string;
|
|
54
55
|
}
|
package/dist/types.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ixc-orm",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"license": "MIT",
|
|
@@ -28,13 +28,13 @@
|
|
|
28
28
|
"url": "https://github.com/SousaFelipe/ixc-orm/issues"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"axios": "^1.
|
|
32
|
-
"dotenv": "^17.1
|
|
31
|
+
"axios": "^1.11.0",
|
|
32
|
+
"dotenv": "^17.2.1"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@types/node": "^24.0
|
|
35
|
+
"@types/node": "^24.3.0",
|
|
36
36
|
"nodemon": "^3.1.10",
|
|
37
37
|
"ts-node": "^10.9.2",
|
|
38
|
-
"typescript": "^5.
|
|
38
|
+
"typescript": "^5.9.2"
|
|
39
39
|
}
|
|
40
40
|
}
|
package/dist/recursos/types.d.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
export interface Boleto {
|
|
2
|
-
/**
|
|
3
|
-
* @property id da fatura
|
|
4
|
-
*/
|
|
5
|
-
boletos: string | number;
|
|
6
|
-
/**
|
|
7
|
-
* @property // 'S'->SIM e 'N'->NÃO para cálculo de júro
|
|
8
|
-
*/
|
|
9
|
-
juro: 'S' | 'N';
|
|
10
|
-
/**
|
|
11
|
-
* @property // 'S'->SIM e 'N'->NÃO para cálculo de multa
|
|
12
|
-
*/
|
|
13
|
-
multa: 'S' | 'N';
|
|
14
|
-
/**
|
|
15
|
-
* @property // 'S'->SIM e 'N'->NÃO para atualizar o boleto
|
|
16
|
-
*/
|
|
17
|
-
atualiza_boleto: 'S' | 'N';
|
|
18
|
-
/**
|
|
19
|
-
* @property // tipo de método que será executado
|
|
20
|
-
*/
|
|
21
|
-
tipo_boleto: 'arquivo';
|
|
22
|
-
/**
|
|
23
|
-
* @property // 'S'->SIM e 'N'->NÃO para retornar o boleto em base64
|
|
24
|
-
*/
|
|
25
|
-
base64: 'S' | 'N';
|
|
26
|
-
}
|
package/dist/recursos/types.js
DELETED