ixc-orm 1.10.5 → 2.0.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 CHANGED
@@ -1,4 +1,6 @@
1
1
  # 🔄 CHANGELOG
2
+ - [v2.0.0 - 24 de dezembro de 2025](#v200)
3
+ - [v1.10.6 - 23 de dezembro de 2025](#v1106)
2
4
  - [v1.10.5 - 20 de dezembro de 2025](#v1105)
3
5
  - [v1.10.4 - 20 de novembro de 2025](#v1104)
4
6
  - [v1.9.0 - 09 de outubro de 2025](#v190)
@@ -14,6 +16,11 @@
14
16
 
15
17
  ## 🚀 Novidades
16
18
 
19
+ ### v2.0.0
20
+ * **Melhoria:** Adicionada verificação de erros nas respostas dos recursos. Todas as requisiões passaram a ser realizadas pela classe <a href="https://github.com/SousaFelipe/ixcorm/blob/builders/src/api/RequestEmitter.ts">RequestEmitter</a>, que utiliza a FetchAPI, por este motivo a dependência da biblioteca Axios foi removida completamente do projeto.
21
+
22
+ ### v1.10.6
23
+ * **Correção:** Removido o bug que ocorria ao tentar utilizar o recurso `liberacaoTemporaria({ id_contrato })` sem que as antigas variáveis de ambiente estivessem definidas.
17
24
 
18
25
  ### v1.10.5
19
26
  * **Correção:** Removida a utilização da biblioteca nativa DOMParser, que quebrava ao tentar extrair a mensagem de erro de uma resposta do IXC Provedor.
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  <div align="center">
2
-
2
+
3
3
  # IXC-ORM
4
4
 
5
5
  ![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?style=for-the-badge&logo=typescript&logoColor=white)
@@ -30,13 +30,10 @@ yarn add ixc-orm
30
30
 
31
31
  ## Como utilizar
32
32
 
33
- Para configurar a comunicação da biblioteca com seu servidor IXC Provedor, é necessário adicionar as seguintes variáveis de ambiente a um arquivo `.env`, que esteja localizado no diretório raiz do seu projeto.
34
-
35
- > [!NOTE]\
36
- > Versão 1.10.5 `stable`
33
+ Para configurar a comunicação da biblioteca com o seu IXC Provedor, será necessário adicionar as seguintes variáveis de ambiente a um arquivo `.env`, que esteja localizado no diretório raiz do seu projeto.
37
34
 
38
35
  - **IXC_ACCESS_TOKEN** Um token de API gerado dentro do IXC Provedor.
39
- - **IXC_SERVER_DOMAIN** O domínio do seu servidor IXC Provedor.
36
+ - **IXC_SERVER_DOMAIN** O domínio do seu IXC Provedor.
40
37
 
41
38
  ```ini
42
39
  IXC_ACCESS_TOKEN=conteúdo-do-token-gerado-dentro-do-ixc
@@ -48,8 +45,10 @@ Você também poderá configurar para que o Docker carregue as variáveis, ao in
48
45
  ```yaml
49
46
  services:
50
47
  sua-aplicacao:
51
- build: .
52
- image: sua-imagem-docker
48
+ build:
49
+ context: .
50
+ dockerfile: Dockerfile
51
+ image: sua-imagem-docker:0.0.0
53
52
  environment:
54
53
  - IXC_ACCESS_TOKEN=${IXC_ACCESS_TOKEN}
55
54
  - IXC_SERVER_DOMAIN=${IXC_SERVER_DOMAIN}
@@ -57,10 +56,7 @@ services:
57
56
  ```
58
57
 
59
58
 
60
- As classes que representarão os diferentes tipos de registros no seu **IXC Provedor**, deverão herdar da classe `IxcOrm` (nova versão), como no exemplo a seguir:
61
-
62
- > [!NOTE]\
63
- > Versão 1.10.5 `stable`
59
+ As classes que representarão os diferentes tipos de registros no seu **IXC Provedor**, deverão herdar da classe `IxcOrm`, como no exemplo a seguir:
64
60
 
65
61
  ```typescript
66
62
  import { IxcOrm } from 'ixc-orm';
@@ -73,10 +69,7 @@ class Contrato extends IxcOrm {
73
69
  ```
74
70
 
75
71
 
76
- Após instanciar um objeto com o tipo que você criou (`Contrato, como no exemplo a cima`), você poderá acessar os métodos de construção da query de busca.
77
-
78
- > [!NOTE]\
79
- > Versão 1.10.5 `stable`
72
+ Após instanciar um objeto com o tipo criado (**Contrato**, como no exemplo a cima), você poderá acessar os métodos de construção da query de busca, da seguinte forma:
80
73
 
81
74
  ```typescript
82
75
  import { IxcResponse, Sort } from 'ixc-orm';
@@ -95,7 +88,7 @@ const contratos = response.registros();
95
88
 
96
89
  ## Recursos da API do IXC Provedor
97
90
 
98
- Existem alguns `endpoints` que a API do IXC Provedor disponibiliza, a fim de "encurtar o caminho" para chegar até algumas informações. Como por exemplo, obter o arquivo PDF de uma fatura. Para isso, você não precisará se preocupar em criar uma classe `Boleto` que herde da classe `IxcOrm`, por exemplo, nem encadear chamadas de filtros. Basta fazer como no exemplo a seguir:
91
+ Existem alguns `endpoints` que a API do IXC Provedor disponibiliza, a fim de "encurtar o caminho" para chegar até algumas informações ou executar determinadas ações. Como por exemplo, obter o arquivo PDF de uma fatura! Para isso, você não precisará se preocupar em criar uma classe `Boleto` que herde da classe `IxcOrm`, por exemplo, nem encadear chamadas de filtros. Basta fazer como no exemplo a seguir:
99
92
 
100
93
  ```typescript
101
94
  import { Recurso } from 'ixc-orm';
@@ -107,7 +100,7 @@ const response = await Recurso.desbloqueioDeConfianca({ id_contrato });
107
100
 
108
101
  ### Recursos disponíveis:
109
102
 
110
- | Recurso IXC | Método da biblioteca | Descrição
103
+ | Método da biblioteca | Recurso IXC | Descrição
111
104
  | :---------- | :--------- | :---------- |
112
105
  | ativaContrato({ id_contrato }) | cliente_contrato_ativar_cliente | Ativa um contrato que esteja com o status de `pré-contrato` |
113
106
  | desbloqueioDeConfianca({ id_contrato }) | desbloqueio_confianca | Solicita liberação de um cliente que já tenha sido desbloqueado |
@@ -119,7 +112,8 @@ const response = await Recurso.desbloqueioDeConfianca({ id_contrato });
119
112
  # Contribuições
120
113
 
121
114
  Contribuições são sempre bem-vindas!\
122
- Se você conhece uma maneira melhor de fazer algo, por favor, me avise!
115
+ Se você conhece uma maneira melhor de fazer algo, por favor, me avise!\
116
+ Ou sinta-se a vontade para criar um novo PR!
123
117
 
124
118
  At.te,\
125
119
  <b>Felipe S. Carmo</b>.
package/dist/index.d.ts CHANGED
@@ -1,15 +1,8 @@
1
- import IXCClient from './IXCClient';
2
- import RecursoIXC, { Recurso } from './recursos';
3
1
  import Environment from './api/Environment';
4
2
  import IxcOrm from './IxcOrm';
5
3
  import IxcResponse from './IxcResponse';
6
4
  import Operators from './api/Operators';
7
5
  import Ordering from './api/Ordering';
6
+ import Recurso from './recursos';
8
7
  import Utils from './utils';
9
- import { IXCOperator, IXCOptions, IXCQuery, IXCRequest, IXCRequestMethods, IXCResponse, IXCSortOrder } from './types';
10
- export { IXCClient, IXCOperator, IXCOptions, IXCQuery, IXCRequest, IXCRequestMethods, IXCResponse, IXCSortOrder, Recurso, Environment, IxcOrm, IxcResponse, Operators, Ordering, Utils,
11
- /**
12
- * @property RecursoIXC
13
- * @deprecated Acesse os recursos através da constante {@link Recurso}
14
- */
15
- RecursoIXC, };
8
+ export { Environment, IxcOrm, IxcResponse, Operators, Ordering, Recurso, Utils };
package/dist/index.js CHANGED
@@ -1,47 +1,9 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
36
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
4
  };
38
5
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.RecursoIXC = exports.Utils = exports.Ordering = exports.Operators = exports.IxcResponse = exports.IxcOrm = exports.Environment = exports.Recurso = exports.IXCSortOrder = exports.IXCRequestMethods = exports.IXCOperator = exports.IXCClient = void 0;
40
- const IXCClient_1 = __importDefault(require("./IXCClient"));
41
- exports.IXCClient = IXCClient_1.default;
42
- const recursos_1 = __importStar(require("./recursos"));
43
- exports.RecursoIXC = recursos_1.default;
44
- Object.defineProperty(exports, "Recurso", { enumerable: true, get: function () { return recursos_1.Recurso; } });
6
+ exports.Utils = exports.Recurso = exports.Ordering = exports.Operators = exports.IxcResponse = exports.IxcOrm = exports.Environment = void 0;
45
7
  const Environment_1 = __importDefault(require("./api/Environment"));
46
8
  exports.Environment = Environment_1.default;
47
9
  const IxcOrm_1 = __importDefault(require("./IxcOrm"));
@@ -52,10 +14,8 @@ const Operators_1 = __importDefault(require("./api/Operators"));
52
14
  exports.Operators = Operators_1.default;
53
15
  const Ordering_1 = __importDefault(require("./api/Ordering"));
54
16
  exports.Ordering = Ordering_1.default;
17
+ const recursos_1 = __importDefault(require("./recursos"));
18
+ exports.Recurso = recursos_1.default;
55
19
  const utils_1 = __importDefault(require("./utils"));
56
20
  exports.Utils = utils_1.default;
57
- const types_1 = require("./types");
58
- Object.defineProperty(exports, "IXCOperator", { enumerable: true, get: function () { return types_1.IXCOperator; } });
59
- Object.defineProperty(exports, "IXCRequestMethods", { enumerable: true, get: function () { return types_1.IXCRequestMethods; } });
60
- Object.defineProperty(exports, "IXCSortOrder", { enumerable: true, get: function () { return types_1.IXCSortOrder; } });
61
21
  Environment_1.default.loadInstance();
@@ -18,6 +18,9 @@ const src = 'cliente_contrato_ativar_cliente';
18
18
  function cliente_contrato_ativar_cliente(args) {
19
19
  return __awaiter(this, void 0, void 0, function* () {
20
20
  const { id_contrato } = args;
21
+ if (!id_contrato || id_contrato === '0') {
22
+ throw new Error('O parâmetro "id_contrato" não pode ser null, undefined ou 0.');
23
+ }
21
24
  const requestEmitter = new RequestEmitter_1.default(src);
22
25
  requestEmitter.setupQuery({
23
26
  qtype: 'cliente_contrato_ativar_cliente.id',
@@ -1,4 +1,4 @@
1
- import { IXCResponse } from '../types';
2
- export default function cliente_contrato(args: {
1
+ import IxcResponse from '../IxcResponse';
2
+ export default function cliente_contrato_btn_lib_temp_24722(args: {
3
3
  id_contrato?: string | number;
4
- }): Promise<IXCResponse>;
4
+ }): Promise<IxcResponse>;
@@ -12,17 +12,19 @@ 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;
16
- const recurso_1 = __importDefault(require("./recurso"));
15
+ exports.default = cliente_contrato_btn_lib_temp_24722;
16
+ const RequestEmitter_1 = __importDefault(require("../api/RequestEmitter"));
17
17
  const src = 'cliente_contrato_btn_lib_temp_24722';
18
- function cliente_contrato(args) {
18
+ function cliente_contrato_btn_lib_temp_24722(args) {
19
19
  return __awaiter(this, void 0, void 0, function* () {
20
20
  const { id_contrato } = args;
21
- return yield (0, recurso_1.default)({
22
- src,
23
- data: {
24
- id_contrato
25
- }
21
+ if (!id_contrato || id_contrato === '0') {
22
+ throw new Error('O parâmetro "id_contrato" não pode ser null, undefined ou 0.');
23
+ }
24
+ const requestEmitter = new RequestEmitter_1.default(src);
25
+ requestEmitter.setupQuery({
26
+ id: id_contrato
26
27
  });
28
+ return yield requestEmitter.sendRequestToResource();
27
29
  });
28
30
  }
@@ -1,4 +1,4 @@
1
- import { IXCResponse } from '../types';
1
+ import IxcResponse from '../IxcResponse';
2
2
  export default function desbloqueio_confianca(args: {
3
3
  id_contrato?: string | number;
4
- }): Promise<IXCResponse>;
4
+ }): Promise<IxcResponse>;
@@ -13,16 +13,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.default = desbloqueio_confianca;
16
- const recurso_1 = __importDefault(require("./recurso"));
16
+ const RequestEmitter_1 = __importDefault(require("../api/RequestEmitter"));
17
17
  const src = 'desbloqueio_confianca';
18
18
  function desbloqueio_confianca(args) {
19
19
  return __awaiter(this, void 0, void 0, function* () {
20
20
  const { id_contrato } = args;
21
- return yield (0, recurso_1.default)({
22
- src,
23
- data: {
24
- id_contrato
25
- }
21
+ if (!id_contrato || id_contrato === '0') {
22
+ throw new Error('O parâmetro "id_contrato" não pode ser null, undefined ou 0.');
23
+ }
24
+ const requestEmitter = new RequestEmitter_1.default(src);
25
+ requestEmitter.setupQuery({
26
+ id: id_contrato
26
27
  });
28
+ return yield requestEmitter.sendRequestToResource();
27
29
  });
28
30
  }
@@ -18,6 +18,9 @@ const src = 'get_boleto';
18
18
  function get_boleto(args) {
19
19
  return __awaiter(this, void 0, void 0, function* () {
20
20
  const { id_fatura } = args;
21
+ if (!id_fatura || id_fatura === '0') {
22
+ throw new Error('O parâmetro "id_fatura" não pode ser null, undefined ou 0.');
23
+ }
21
24
  const requestEmitter = new RequestEmitter_1.default(src);
22
25
  requestEmitter.setupQuery({
23
26
  boletos: id_fatura,
@@ -3,20 +3,7 @@ import cliente_contrato_btn_lib_temp_24722 from './cliente_contrato_btn_lib_temp
3
3
  import desbloqueio_confianca from './desbloqueio_confianca';
4
4
  import get_boleto from './get_boleto';
5
5
  import radusuarios_25452 from './radusuarios_25452';
6
- /**
7
- * @deprecated Acesse os recursos através da constante {@link Recurso}
8
- */
9
- declare const recursos: {
10
- cliente_contrato: typeof cliente_contrato_btn_lib_temp_24722;
11
- desbloqueio_confianca: typeof desbloqueio_confianca;
12
- get_boleto: typeof get_boleto;
13
- };
14
- type Recursos = typeof recursos;
15
- /**
16
- * Disponibiliza, de forma simples e direta, o acesso a todos os recursos da API do IXC\
17
- * **ATENÇÃO** --- Nem todos os recursos da API do IXC foram implementados por esta biblioteca
18
- */
19
- export declare const Recurso: {
6
+ declare const _default: {
20
7
  /**
21
8
  * Ativa o contrato de um cliente que esteja com o status de "pré-contrato". Este recurso não
22
9
  * é capaz de ativar contratos que tenha sido desativados, ou estejam bloqueados.
@@ -26,7 +13,7 @@ export declare const Recurso: {
26
13
  * @param id_contrato O ID do contrato que se deseja ativar
27
14
  * @returns Um objeto **IxcResponse** contendo a resposta enviada pelo IXC
28
15
  */
29
- ativaContrato: typeof cliente_contrato_ativar_cliente;
16
+ readonly ativaContrato: typeof cliente_contrato_ativar_cliente;
30
17
  /**
31
18
  * Solicita ao IXC que desbloqueie o contrato de um cliente bloqueado, que já solicitou
32
19
  * a liberação temporária dentro de um período de 30 dias. Este recurso só funciona, caso
@@ -37,7 +24,7 @@ export declare const Recurso: {
37
24
  * @param id_contrato O ID do contrato do cliente que deverá ser desbloqueado
38
25
  * @returns Um objeto **IXCResponse** contendo a resposta enviada pelo IXC
39
26
  */
40
- desbloqueioDeConfianca: typeof desbloqueio_confianca;
27
+ readonly desbloqueioDeConfianca: typeof desbloqueio_confianca;
41
28
  /**
42
29
  * Obtém um arquivo PDF codificado em base64 do boleto de uma determinada fatura.
43
30
  *
@@ -47,14 +34,14 @@ export declare const Recurso: {
47
34
  * @returns Um **IxcResponse**, caso a requisição falhe, ou um **IXCRecursoResponse**
48
35
  * contendo o conteúdo do boleto, caso a requisição seja bem-sucedida
49
36
  */
50
- getArquivoBoleto: typeof get_boleto;
37
+ readonly getArquivoBoleto: typeof get_boleto;
51
38
  /**
52
39
  * Envia uma requisição à API do IXC Provedor, para que o endereço de MAC seja removido do cadastro de um determinado PPPoE.
53
40
  *
54
41
  * @param id_login O ID do PPPoE que se deseja remover o endereço de MAC.
55
42
  * @returns A instância de um **IxcResponse**.
56
43
  */
57
- limparMAC: typeof radusuarios_25452;
44
+ readonly limparMAC: typeof radusuarios_25452;
58
45
  /**
59
46
  * Solicita ao IXC que libere, por 72 horas, o contrato de um cliente bloqueado, que não tenha
60
47
  * solicitado outra liberação temporária dentro de um período de 30 dias
@@ -64,12 +51,6 @@ export declare const Recurso: {
64
51
  * @param id_contrato O ID do contrato do cliente que deverá ser liberado
65
52
  * @returns Um objeto **IXCResponse** contendo a resposta enviada pelo IXC
66
53
  */
67
- liberacaoTemporaria: typeof cliente_contrato_btn_lib_temp_24722;
54
+ readonly liberacaoTemporaria: typeof cliente_contrato_btn_lib_temp_24722;
68
55
  };
69
- /**
70
- * *ATENÇÃO:* Esta função desá descontinuada
71
- *
72
- * @deprecated Acesse os recursos através da constante {@link Recurso}
73
- */
74
- export default function RecursoIXC<T extends keyof Recursos>(recurso: T, args: Parameters<Recursos[T]>[0]): Promise<import("..").IXCResponse | import("..").IxcResponse>;
75
- export {};
56
+ export default _default;
@@ -1,37 +1,14 @@
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
- };
11
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
4
  };
14
5
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.Recurso = void 0;
16
- exports.default = RecursoIXC;
17
6
  const cliente_contrato_ativar_cliente_1 = __importDefault(require("./cliente_contrato_ativar_cliente"));
18
7
  const cliente_contrato_btn_lib_temp_24722_1 = __importDefault(require("./cliente_contrato_btn_lib_temp_24722"));
19
8
  const desbloqueio_confianca_1 = __importDefault(require("./desbloqueio_confianca"));
20
9
  const get_boleto_1 = __importDefault(require("./get_boleto"));
21
10
  const radusuarios_25452_1 = __importDefault(require("./radusuarios_25452"));
22
- /**
23
- * @deprecated Acesse os recursos através da constante {@link Recurso}
24
- */
25
- const recursos = {
26
- cliente_contrato: cliente_contrato_btn_lib_temp_24722_1.default,
27
- desbloqueio_confianca: desbloqueio_confianca_1.default,
28
- get_boleto: get_boleto_1.default
29
- };
30
- /**
31
- * Disponibiliza, de forma simples e direta, o acesso a todos os recursos da API do IXC\
32
- * **ATENÇÃO** --- Nem todos os recursos da API do IXC foram implementados por esta biblioteca
33
- */
34
- exports.Recurso = {
11
+ exports.default = {
35
12
  /**
36
13
  * Ativa o contrato de um cliente que esteja com o status de "pré-contrato". Este recurso não
37
14
  * é capaz de ativar contratos que tenha sido desativados, ou estejam bloqueados.
@@ -81,15 +58,3 @@ exports.Recurso = {
81
58
  */
82
59
  liberacaoTemporaria: cliente_contrato_btn_lib_temp_24722_1.default,
83
60
  };
84
- /**
85
- * *ATENÇÃO:* Esta função desá descontinuada
86
- *
87
- * @deprecated Acesse os recursos através da constante {@link Recurso}
88
- */
89
- function RecursoIXC(recurso, args) {
90
- return __awaiter(this, void 0, void 0, function* () {
91
- console.warn('Esta função será removida na próxima versão! Acesse os recursos através da constante "Recurso".');
92
- const handler = recursos[recurso];
93
- return yield handler(args);
94
- });
95
- }
@@ -18,6 +18,9 @@ const src = 'radusuarios_25452';
18
18
  function radusuarios_25452(args) {
19
19
  return __awaiter(this, void 0, void 0, function* () {
20
20
  const { id_login } = args;
21
+ if (!id_login || id_login === '0') {
22
+ throw new Error('O parâmetro "id_login" não pode ser null, undefined ou 0.');
23
+ }
21
24
  const requestEmitter = new RequestEmitter_1.default(src);
22
25
  requestEmitter.setupQuery({ get_id: id_login });
23
26
  return yield requestEmitter.sendRequestToResource();
@@ -2,5 +2,4 @@ export declare class FileUtils {
2
2
  private static LOOP_LIMIT;
3
3
  private currentLoop;
4
4
  findFile(fileName: string, currentDir?: string): any;
5
- reachedLoopLimit(): boolean;
6
5
  }
@@ -13,15 +13,12 @@ class FileUtils {
13
13
  return filePath;
14
14
  }
15
15
  const parentDir = path_1.default.dirname(currentDir);
16
- if ((parentDir === currentDir) || this.reachedLoopLimit()) {
17
- throw new Error(`O arquivo '${fileName}' não foi encontrado`);
16
+ if ((parentDir === currentDir) || this.currentLoop >= FileUtils.LOOP_LIMIT) {
17
+ throw new Error(`IXC-ORM::ERR > O arquivo '${fileName}' não foi encontrado`);
18
18
  }
19
19
  this.currentLoop++;
20
20
  return this.findFile(fileName, parentDir);
21
21
  }
22
- reachedLoopLimit() {
23
- return this.currentLoop >= FileUtils.LOOP_LIMIT;
24
- }
25
22
  }
26
23
  exports.FileUtils = FileUtils;
27
24
  FileUtils.LOOP_LIMIT = 4;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ixc-orm",
3
- "version": "1.10.5",
3
+ "version": "2.0.0",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "license": "MIT",
@@ -30,7 +30,6 @@
30
30
  "url": "https://github.com/SousaFelipe/ixc-orm/issues"
31
31
  },
32
32
  "dependencies": {
33
- "axios": "^1.13.2",
34
33
  "dotenv": "^17.2.3"
35
34
  },
36
35
  "devDependencies": {
@@ -1 +1 @@
1
- {"root":["./src/ixcclient.ts","./src/ixcorm.ts","./src/ixcresponse.ts","./src/index.ts","./src/request.ts","./src/response.ts","./src/types.ts","./src/api/environment.ts","./src/api/operators.ts","./src/api/ordering.ts","./src/api/pagination.ts","./src/api/parameter.ts","./src/api/requestemitter.ts","./src/recursos/cliente_contrato_ativar_cliente.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/radusuarios_25452.ts","./src/recursos/recurso.ts","./src/utils/fileutils.ts","./src/utils/textutils.ts","./src/utils/index.ts"],"version":"5.9.3"}
1
+ {"root":["./src/ixcorm.ts","./src/ixcresponse.ts","./src/index.ts","./src/api/environment.ts","./src/api/operators.ts","./src/api/ordering.ts","./src/api/pagination.ts","./src/api/parameter.ts","./src/api/requestemitter.ts","./src/recursos/cliente_contrato_ativar_cliente.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/radusuarios_25452.ts","./src/utils/fileutils.ts","./src/utils/textutils.ts","./src/utils/index.ts"],"version":"5.9.3"}
@@ -1,67 +0,0 @@
1
- import { IXCOptions, IXCQuery, IXCResponse, IXCSortOrder } from './types';
2
- export default abstract class IXCClient {
3
- protected table: string;
4
- protected params: IXCQuery[];
5
- protected options: IXCOptions;
6
- /**
7
- * @param table O nome da tabela correspondente ao banco de dados do seu servidor IXC
8
- * @see {@link https://wikiapiprovedor.ixcsoft.com.br/index.php}
9
- */
10
- constructor(table: string);
11
- /**
12
- * Incrementa o array de parâmetros que serão trasformados no corpo de uma requisição
13
- * e passados como filtro grid da API do IXC
14
- *
15
- * @param whereClauses Um array de strings, no formato [coluna, operador, valor]\
16
- * `Obs`: se você passar um array no formato [coluna, valor] o operador será considerado como '='\
17
- * Os operadores válidos são: =, !=, >, <, >=, <=, LIKE
18
- * @returns A própria instância
19
- */
20
- where(whereClauses: string[]): IXCClient;
21
- /**
22
- * Define como a API do IXC ordenará os dados retornados
23
- *
24
- * @param column A coluna que será usada para ordenar a busca
25
- * @param order A ordem da busca ('asc'ou 'desc')
26
- * @returns A própria instância
27
- */
28
- orderBy(column: string, order: keyof typeof IXCSortOrder): IXCClient;
29
- /**
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`
40
- * Preenche o corpo da requisição com os dados passados pela função `where` no formado JSON
41
- *
42
- * @param pg O número da página que será solicitada ao IXC `padão = 1`
43
- * @param rows A quantidade de linhas (registros) por página `padrão = 20`
44
- * @returns Promise<IXCResponse>
45
- */
46
- get(pg?: number, rows?: number): Promise<IXCResponse>;
47
- /**
48
- * Envia uma requisição do tipo `POST` para a API do IXC, com o header `ixcsoft` vazio
49
- *
50
- * @param body Um objeto no formado "chave: valor" contendo as informações do novo registro
51
- * a ser inserido no banco de dados do seu servidor IXC
52
- * @returns Promise<IXCResponse>
53
- */
54
- post(body?: {
55
- [key: string]: any;
56
- }): Promise<IXCResponse>;
57
- /**
58
- * Envia uma requisição do tipo `PUT` para a API do IXC, com o header `ixcsoft` vazio
59
- *
60
- * @param id O id do registro que será alterado
61
- * @param body Um objeto no formado "chave : valor" contendo as colunas que serão alteradas
62
- * @returns Promise<IXCResponse>
63
- */
64
- put(id: number, body?: {
65
- [key: string]: any;
66
- }): Promise<IXCResponse>;
67
- }
package/dist/IXCClient.js DELETED
@@ -1,238 +0,0 @@
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
- };
11
- var __rest = (this && this.__rest) || function (s, e) {
12
- var t = {};
13
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
- t[p] = s[p];
15
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
- t[p[i]] = s[p[i]];
19
- }
20
- return t;
21
- };
22
- Object.defineProperty(exports, "__esModule", { value: true });
23
- const request_1 = require("./request");
24
- const types_1 = require("./types");
25
- const response_1 = require("./response");
26
- class IXCClient {
27
- /**
28
- * @param table O nome da tabela correspondente ao banco de dados do seu servidor IXC
29
- * @see {@link https://wikiapiprovedor.ixcsoft.com.br/index.php}
30
- */
31
- constructor(table) {
32
- this.table = table;
33
- this.params = [];
34
- this.options = {
35
- page: 1,
36
- rowsPerPage: 20,
37
- sortName: 'id',
38
- sortOrder: 'asc'
39
- };
40
- }
41
- /**
42
- * Incrementa o array de parâmetros que serão trasformados no corpo de uma requisição
43
- * e passados como filtro grid da API do IXC
44
- *
45
- * @param whereClauses Um array de strings, no formato [coluna, operador, valor]\
46
- * `Obs`: se você passar um array no formato [coluna, valor] o operador será considerado como '='\
47
- * Os operadores válidos são: =, !=, >, <, >=, <=, LIKE
48
- * @returns A própria instância
49
- */
50
- where(whereClauses) {
51
- if (whereClauses.length > 3) {
52
- throw new Error(`> As cláusulas não podem conter mais de 3 elementos.`);
53
- }
54
- const [alwaysColumn, operatorOrValue, valueOrUndefined] = whereClauses;
55
- const availableOperators = Object.keys(types_1.IXCOperator);
56
- if (whereClauses.length > 2 && !availableOperators.includes(operatorOrValue)) {
57
- throw new Error(`> O operador ${operatorOrValue}, não faz parte dos operadores válidos: ${availableOperators}.`);
58
- }
59
- this.params.push({
60
- TB: alwaysColumn,
61
- OP: valueOrUndefined ? operatorOrValue : '=',
62
- P: valueOrUndefined ? valueOrUndefined : operatorOrValue
63
- });
64
- return this;
65
- }
66
- /**
67
- * Define como a API do IXC ordenará os dados retornados
68
- *
69
- * @param column A coluna que será usada para ordenar a busca
70
- * @param order A ordem da busca ('asc'ou 'desc')
71
- * @returns A própria instância
72
- */
73
- orderBy(column, order) {
74
- this.options.sortName = column;
75
- this.options.sortOrder = order;
76
- return this;
77
- }
78
- /**
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`
130
- * Preenche o corpo da requisição com os dados passados pela função `where` no formado JSON
131
- *
132
- * @param pg O número da página que será solicitada ao IXC `padão = 1`
133
- * @param rows A quantidade de linhas (registros) por página `padrão = 20`
134
- * @returns Promise<IXCResponse>
135
- */
136
- get(pg, rows) {
137
- return __awaiter(this, void 0, void 0, function* () {
138
- var _a, _b;
139
- const _c = this.options, { page, rowsPerPage } = _c, rest = __rest(_c, ["page", "rowsPerPage"]);
140
- const opts = Object.assign({ page: pg !== null && pg !== void 0 ? pg : page, rowsPerPage: rows !== null && rows !== void 0 ? rows : rowsPerPage }, rest);
141
- const axios = (0, request_1.createAxiosInstance)('GET');
142
- const data = (0, request_1.createRequestPayload)(this.table, this.params, opts);
143
- try {
144
- const response = yield axios.get(this.table, { data });
145
- if (response.status === 200) {
146
- return response.data;
147
- }
148
- return (0, response_1.createResponse)({
149
- error: true,
150
- message: (_a = response.data) === null || _a === void 0 ? void 0 : _a.message
151
- });
152
- }
153
- catch (error) {
154
- console.error(error);
155
- return (0, response_1.createResponse)({
156
- error: true,
157
- message: ((_b = error.response) === null || _b === void 0 ? void 0 : _b.statusText) || error.message || 'Erro desconhecido'
158
- });
159
- }
160
- finally {
161
- this.params = [];
162
- this.options = {
163
- page: 1,
164
- rowsPerPage: 20,
165
- sortName: 'id',
166
- sortOrder: 'asc'
167
- };
168
- }
169
- });
170
- }
171
- /**
172
- * Envia uma requisição do tipo `POST` para a API do IXC, com o header `ixcsoft` vazio
173
- *
174
- * @param body Um objeto no formado "chave: valor" contendo as informações do novo registro
175
- * a ser inserido no banco de dados do seu servidor IXC
176
- * @returns Promise<IXCResponse>
177
- */
178
- post(body) {
179
- return __awaiter(this, void 0, void 0, function* () {
180
- var _a, _b;
181
- const axios = (0, request_1.createAxiosInstance)('POST');
182
- try {
183
- const response = yield axios.post(this.table, { data: body });
184
- if (response.status === 200) {
185
- return response.data;
186
- }
187
- return (0, response_1.createResponse)({
188
- error: true,
189
- message: (_a = response.data) === null || _a === void 0 ? void 0 : _a.message
190
- });
191
- }
192
- catch (error) {
193
- console.error(error);
194
- return (0, response_1.createResponse)({
195
- error: true,
196
- message: ((_b = error.response) === null || _b === void 0 ? void 0 : _b.statusText) || error.message || 'Erro desconhecido'
197
- });
198
- }
199
- finally {
200
- this.params = [];
201
- }
202
- });
203
- }
204
- /**
205
- * Envia uma requisição do tipo `PUT` para a API do IXC, com o header `ixcsoft` vazio
206
- *
207
- * @param id O id do registro que será alterado
208
- * @param body Um objeto no formado "chave : valor" contendo as colunas que serão alteradas
209
- * @returns Promise<IXCResponse>
210
- */
211
- put(id, body) {
212
- return __awaiter(this, void 0, void 0, function* () {
213
- var _a, _b;
214
- const axios = (0, request_1.createAxiosInstance)('PUT');
215
- try {
216
- const response = yield axios.put(`${this.table}/${id}`, { data: body });
217
- if (response.status === 200) {
218
- return response.data;
219
- }
220
- return (0, response_1.createResponse)({
221
- error: true,
222
- message: (_a = response.data) === null || _a === void 0 ? void 0 : _a.message
223
- });
224
- }
225
- catch (error) {
226
- console.error(error);
227
- return (0, response_1.createResponse)({
228
- error: true,
229
- message: ((_b = error.response) === null || _b === void 0 ? void 0 : _b.statusText) || error.message || 'Erro desconhecido'
230
- });
231
- }
232
- finally {
233
- this.params = [];
234
- }
235
- });
236
- }
237
- }
238
- exports.default = IXCClient;
@@ -1,7 +0,0 @@
1
- import { IXCResponse } from '../types';
2
- export default function recurso({ src, data }: {
3
- src: string;
4
- data: {
5
- [key: string]: any;
6
- };
7
- }): Promise<IXCResponse>;
@@ -1,48 +0,0 @@
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
- };
11
- var __rest = (this && this.__rest) || function (s, e) {
12
- var t = {};
13
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
- t[p] = s[p];
15
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
- t[p[i]] = s[p[i]];
19
- }
20
- return t;
21
- };
22
- Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.default = recurso;
24
- const request_1 = require("../request");
25
- const response_1 = require("../response");
26
- function recurso(_a) {
27
- return __awaiter(this, arguments, void 0, function* ({ src, data }) {
28
- const axios = (0, request_1.createAxiosInstance)('PUT');
29
- try {
30
- const response = yield axios.get(src, { data });
31
- if (response.status === 200) {
32
- const { data } = response;
33
- const { message, mensagem } = data, rest = __rest(data, ["message", "mensagem"]);
34
- if (rest.type === 'success' || rest.tipo === 'sucesso') {
35
- return (0, response_1.createResponse)(Object.assign(Object.assign({}, rest), { message: message || mensagem }));
36
- }
37
- return (0, response_1.createResponse)({
38
- error: true,
39
- message: message || mensagem
40
- });
41
- }
42
- }
43
- catch (error) {
44
- console.error(`Erro ao executar recurso: ${src}\n`, error);
45
- }
46
- return (0, response_1.createResponse)({ error: true });
47
- });
48
- }
package/dist/request.d.ts DELETED
@@ -1,20 +0,0 @@
1
- import { AxiosInstance } from 'axios';
2
- import { IXCOptions, IXCQuery, IXCRequest, IXCRequestMethods } from './types';
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
6
- *
7
- * @param method GET | POST | PUT | DELETE
8
- * @returns AxiosInstance
9
- */
10
- export declare function createAxiosInstance(method?: keyof typeof IXCRequestMethods): AxiosInstance;
11
- /**
12
- * Cria um objeto `IXCRequest` configurado para ser utilizado como payload de uma requisição
13
- * para a API do IXC
14
- *
15
- * @param table Nome da tabela do IXC onde será feita a busca, atualização, inserção ou remoção
16
- * @param params Parâmetros da busca (desconsiderados quando a ação for a de inserir novos registros)
17
- * @param options Parâmetros de formatação dos dados da responsta (página, ítens por página e ordenação)
18
- * @returns IXCRequest
19
- */
20
- export declare function createRequestPayload(table: string, params: IXCQuery | IXCQuery[], options?: IXCOptions): IXCRequest;
package/dist/request.js DELETED
@@ -1,73 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createAxiosInstance = createAxiosInstance;
7
- exports.createRequestPayload = createRequestPayload;
8
- const axios_1 = __importDefault(require("axios"));
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
12
- *
13
- * @param method GET | POST | PUT | DELETE
14
- * @returns AxiosInstance
15
- */
16
- function createAxiosInstance(method = 'GET') {
17
- const host = process.env.IXC_HOST;
18
- const token = process.env.IXC_TOKEN;
19
- return axios_1.default.create({
20
- method: method,
21
- baseURL: host !== null && host !== void 0 ? host : 'http://127.0.0.1/webservice/v1',
22
- headers: {
23
- 'ixcsoft': (method === 'GET') ? 'listar' : '',
24
- 'Content-Type': 'application/json',
25
- 'Authorization': `Basic ${Buffer.from(token !== null && token !== void 0 ? token : '').toString('base64')}`
26
- }
27
- });
28
- }
29
- /**
30
- * Cria um objeto `IXCRequest` configurado para ser utilizado como payload de uma requisição
31
- * para a API do IXC
32
- *
33
- * @param table Nome da tabela do IXC onde será feita a busca, atualização, inserção ou remoção
34
- * @param params Parâmetros da busca (desconsiderados quando a ação for a de inserir novos registros)
35
- * @param options Parâmetros de formatação dos dados da responsta (página, ítens por página e ordenação)
36
- * @returns IXCRequest
37
- */
38
- function createRequestPayload(table, params, options) {
39
- var _a, _b, _c, _d;
40
- const page = (_a = options === null || options === void 0 ? void 0 : options.page) !== null && _a !== void 0 ? _a : 1;
41
- const rowsPerPage = (_b = options === null || options === void 0 ? void 0 : options.rowsPerPage) !== null && _b !== void 0 ? _b : 20;
42
- const sortName = (_c = options === null || options === void 0 ? void 0 : options.sortName) !== null && _c !== void 0 ? _c : 'id';
43
- const sortOrder = (_d = options === null || options === void 0 ? void 0 : options.sortOrder) !== null && _d !== void 0 ? _d : 'asc';
44
- if (Array.isArray(params)) {
45
- let grid_param = [];
46
- params.forEach(p => {
47
- grid_param.push({
48
- TB: `${table}.${p.TB}`,
49
- OP: p.OP || '=',
50
- P: p.P
51
- });
52
- });
53
- return {
54
- qtype: table,
55
- query: '',
56
- oper: '',
57
- page: page,
58
- rp: rowsPerPage,
59
- sortname: `${table}.${sortName}`,
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
- };
73
- }
@@ -1,4 +0,0 @@
1
- import { IXCResponse } from './types';
2
- export declare function createResponse(data: {
3
- [key: string]: any;
4
- }): IXCResponse;
package/dist/response.js DELETED
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createResponse = createResponse;
4
- function createResponse(data) {
5
- var _a, _b, _c, _d;
6
- return {
7
- error: data.error || false,
8
- message: data.message || '',
9
- id: (_a = data.id) !== null && _a !== void 0 ? _a : 0,
10
- page: (_b = data.page) !== null && _b !== void 0 ? _b : 0,
11
- total: (_c = data.total) !== null && _c !== void 0 ? _c : 0,
12
- registros: (_d = data.registros) !== null && _d !== void 0 ? _d : []
13
- };
14
- }
package/dist/types.d.ts DELETED
@@ -1,56 +0,0 @@
1
- export declare const IXCOperator: {
2
- '=': string;
3
- '>': string;
4
- '<': string;
5
- '>=': string;
6
- '<=': string;
7
- '!=': string;
8
- LIKE: string;
9
- };
10
- export declare const IXCSortOrder: {
11
- asc: string;
12
- desc: string;
13
- };
14
- export declare const IXCRequestMethods: {
15
- GET: string;
16
- POST: string;
17
- PUT: string;
18
- DELETE: string;
19
- };
20
- export interface IXCOptions {
21
- page: number;
22
- rowsPerPage?: number;
23
- sortName?: string;
24
- sortOrder?: keyof typeof IXCSortOrder;
25
- }
26
- export interface IXCQuery {
27
- TB: string;
28
- OP?: string;
29
- P: string;
30
- }
31
- export interface IXCRequest {
32
- qtype: string;
33
- query: string;
34
- oper: string;
35
- page: number;
36
- rp: number;
37
- sortname: string;
38
- sortorder: string;
39
- grid_param?: string;
40
- }
41
- export interface IXCResponse {
42
- error?: boolean | object;
43
- type?: string;
44
- message?: string;
45
- id?: string | number;
46
- page: number | string;
47
- total: number;
48
- registros: Array<{
49
- [key: string]: any;
50
- }>;
51
- }
52
- export interface IXCRecursoResponse {
53
- data: any;
54
- error?: boolean | object;
55
- message?: string;
56
- }
package/dist/types.js DELETED
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IXCRequestMethods = exports.IXCSortOrder = exports.IXCOperator = void 0;
4
- exports.IXCOperator = {
5
- '=': '=',
6
- '>': '>',
7
- '<': '<',
8
- '>=': '>=',
9
- '<=': '<=',
10
- '!=': '!=',
11
- 'LIKE': 'L'
12
- };
13
- exports.IXCSortOrder = {
14
- asc: 'asc',
15
- desc: 'desc'
16
- };
17
- exports.IXCRequestMethods = {
18
- GET: 'GET',
19
- POST: 'POST',
20
- PUT: 'PUT',
21
- DELETE: 'DELETE'
22
- };
23
- ;
24
- ;
25
- ;
26
- ;
27
- ;