exodus-framework 2.0.732 → 2.0.734

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.
@@ -57,8 +57,8 @@ export type SimpleCondition = {
57
57
  notBetween?: [any, any];
58
58
  };
59
59
  export type LogicalCondition = {
60
- or?: SimpleCondition[];
61
- and?: SimpleCondition[];
60
+ or?: Array<Record<string, SimpleCondition>>;
61
+ and?: Array<Record<string, SimpleCondition>>;
62
62
  };
63
63
  export type IRequestFilterCondition = SimpleCondition & LogicalCondition;
64
64
  export interface IRequestListData<D> {
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/contracts/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAOzC,MAAM,CAAC,OAAO,MAAM,oBAAoB,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAO3E,MAAM,CAAC,OAAO,MAAM,aAAa,CAAC,CAAC,GAAG,OAAO,IAAI;IAC/C,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,CAAC,CAAC;CACV,CAAC;AAEF,MAAM,CAAC,OAAO,WAAW,kBAAkB,CAAC,CAAC,GAAG,OAAO;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,CAAC,CAAC;CACV;AAED,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAQD,oBAAY,iBAAiB;IAE3B,QAAQ,MAAM;IACd,QAAQ,MAAM;IACd,OAAO,MAAM;IACb,gCAAgC,MAAM;IAEtC,yBAAyB,MAAM;IAC/B,sBAAsB,MAAM;IAG5B,iBAAiB,MAAM;IACvB,mBAAmB,MAAM;IACzB,wBAAwB,MAAM;IAC9B,oBAAoB,MAAM;IAG1B,WAAW,MAAM;IACjB,gBAAgB,MAAM;IACtB,kBAAkB,MAAM;IACxB,wBAAwB,MAAM;IAC9B,cAAc,MAAM;IACpB,uBAAuB,MAAM;IAC7B,kBAAkB,MAAM;CACzB;AACD,oBAAY,iBAAiB;IAC3B,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,CAAC,EAAE,GAAG,CAAC;IACT,EAAE,CAAC,EAAE,GAAG,CAAC;IACT,EAAE,CAAC,EAAE,GAAG,CAAC;IACT,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC;IACvB,GAAG,CAAC,EAAE,eAAe,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAEzE,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC,CAAC;CACpD;AACD,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,CAAC,EAAE,CAAC;CACX;AAED,MAAM,WAAW,WAAW;CAAG;AAE/B,MAAM,MAAM,YAAY,CAAC,IAAI,GAAG,GAAG,EAAE,KAAK,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/contracts/http.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import { WhereOptions } from '@sequelize/core';
2
- import { Sequelize } from 'sequelize';
1
+ import { Sequelize, WhereOptions } from 'sequelize';
3
2
  import { IRequestFilterCondition } from '../contracts';
4
3
  export declare const serviceDB: Sequelize;
5
4
  export declare const masterDB: Sequelize;
6
- export declare function processFilters<D>(filters?: Record<keyof D, IRequestFilterCondition>): WhereOptions<D>;
5
+ export declare function processFilters<D>(filters?: Record<string, IRequestFilterCondition>): WhereOptions<D>;
7
6
  //# sourceMappingURL=database.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/utils/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAM,SAAS,EAA2B,MAAM,WAAW,CAAC;AAEnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGvD,eAAO,MAAM,SAAS,WAYpB,CAAC;AAEH,eAAO,MAAM,QAAQ,WAYnB,CAAC;AAsCH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC,GACjD,YAAY,CAAC,CAAC,CAAC,CA+BjB"}
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/utils/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGvD,eAAO,MAAM,SAAS,WAYpB,CAAC;AAEH,eAAO,MAAM,QAAQ,WAYnB,CAAC;AAqCH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,GAChD,YAAY,CAAC,CAAC,CAAC,CAyBjB"}
@@ -36,8 +36,6 @@ const masterDB = exports.masterDB = new _sequelize.Sequelize({
36
36
  (0, _logger.default)().trace('DATABASE', sql, timing);
37
37
  }
38
38
  });
39
-
40
- // Função recursiva para processar condições simples e lógicas
41
39
  function processCondition(cond) {
42
40
  if ('or' in cond) {
43
41
  return {
@@ -68,24 +66,22 @@ function processCondition(cond) {
68
66
  return simpleWhere;
69
67
  }
70
68
 
71
- // Função principal para processar os filtros
69
+ // Função Principal para Processar Filtros
72
70
  function processFilters(filters) {
73
- if (!filters) {
74
- return {};
75
- }
71
+ if (!filters) return {};
76
72
  const where = {};
77
73
  Object.entries(filters).forEach(([key, condition]) => {
78
- const field = key;
79
- const processedCondition = processCondition(condition);
80
-
81
- // Verifica se a condição é uma condição lógica global (Op.or ou Op.and)
82
- if (processedCondition[_sequelize.Op.or] || processedCondition[_sequelize.Op.and]) {
83
- // Mescla as condições lógicas no objeto where
84
- Object.assign(where, processedCondition);
74
+ if (key === 'or' || key === 'and') {
75
+ const logicalOp = key === 'or' ? _sequelize.Op.or : _sequelize.Op.and;
76
+ const processed = processCondition(condition);
77
+ if (!where[logicalOp]) {
78
+ where[logicalOp] = [];
79
+ }
80
+ where[logicalOp].push(...processed[logicalOp]);
85
81
  } else {
86
- // Caso contrário, aplica a condição no campo específico
87
- if (where[field] && typeof where[field] === 'object') {
88
- // Combina múltiplas condições no mesmo campo com Op.and
82
+ const field = key;
83
+ const processedCondition = processCondition(condition);
84
+ if (where[field]) {
89
85
  where[field] = {
90
86
  ...where[field],
91
87
  ...processedCondition
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "exodus-framework",
3
- "version": "2.0.732",
3
+ "version": "2.0.734",
4
4
  "description": "Exodus Framework",
5
5
  "author": "jhownpaixao",
6
6
  "license": "ISC",