@joktec/mysql 0.0.94 → 0.0.96

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@joktec/mysql",
3
3
  "description": "JokTec - MySql Service",
4
- "version": "0.0.94",
4
+ "version": "0.0.96",
5
5
  "private": false,
6
6
  "license": "MIT",
7
7
  "author": "JokTec",
@@ -48,17 +48,17 @@
48
48
  "test:e2e": "jest --config ./test/jest-e2e.json"
49
49
  },
50
50
  "dependencies": {
51
- "@joktec/core": "0.0.92",
51
+ "@joktec/core": "0.0.94",
52
52
  "lodash": "^4.17.21",
53
53
  "mysql": "2.18.1",
54
- "mysql2": "^3.6.1",
54
+ "mysql2": "^3.6.2",
55
55
  "reflect-metadata": "*",
56
56
  "sequelize": "^6.33.0",
57
57
  "sequelize-typescript": "^2.1.5"
58
58
  },
59
59
  "devDependencies": {
60
- "@types/mysql": "^2.15.21",
61
- "@types/validator": "^13.11.1"
60
+ "@types/mysql": "^2.15.23",
61
+ "@types/validator": "^13.11.5"
62
62
  },
63
63
  "lint-staged": {
64
64
  "*.ts": [
@@ -85,5 +85,5 @@
85
85
  "!**/*.{d,enum}.ts"
86
86
  ]
87
87
  },
88
- "gitHead": "abc386d7fe902ab77bbba930c8741b7444e0c954"
88
+ "gitHead": "04fe0ec3531e642cf7361f7813603d93f637fd41"
89
89
  }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=mysql.utils.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mysql.utils.spec.d.ts","sourceRoot":"","sources":["../../src/__tests__/mysql.utils.spec.ts"],"names":[],"mappings":""}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const globals_1 = require("@jest/globals");
4
- const sequelize_1 = require("sequelize");
5
- const mysql_utils_1 = require("../mysql.utils");
6
- (0, globals_1.describe)('convertOp function', () => {
7
- (0, globals_1.it)('should return the correct symbol for $ne operator', () => {
8
- const inputOp = '$ne';
9
- const expectedOp = sequelize_1.Op.ne;
10
- const actualOp = (0, mysql_utils_1.convertOp)(inputOp);
11
- (0, globals_1.expect)(actualOp).toBe(expectedOp);
12
- });
13
- (0, globals_1.it)('should return Op.eq for invalid operator', () => {
14
- const inputOp = '$invalid';
15
- const expectedOp = sequelize_1.Op.eq;
16
- const actualOp = (0, mysql_utils_1.convertOp)(inputOp);
17
- (0, globals_1.expect)(actualOp).toBe(expectedOp);
18
- });
19
- (0, globals_1.it)('should return Op.eq for undefined operator', () => {
20
- const inputOp = undefined;
21
- const expectedOp = sequelize_1.Op.eq;
22
- const actualOp = (0, mysql_utils_1.convertOp)(inputOp);
23
- (0, globals_1.expect)(actualOp).toBe(expectedOp);
24
- });
25
- });
26
- //# sourceMappingURL=mysql.utils.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mysql.utils.spec.js","sourceRoot":"","sources":["../../src/__tests__/mysql.utils.spec.ts"],"names":[],"mappings":";;AAAA,2CAAqD;AACrD,yCAA+B;AAC/B,gDAA2C;AAE3C,IAAA,kBAAQ,EAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,IAAA,YAAE,EAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,OAAO,GAAG,KAAK,CAAC;QACtB,MAAM,UAAU,GAAG,cAAE,CAAC,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAA,uBAAS,EAAC,OAAO,CAAC,CAAC;QACpC,IAAA,gBAAM,EAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,IAAA,YAAE,EAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,OAAO,GAAG,UAAU,CAAC;QAC3B,MAAM,UAAU,GAAG,cAAE,CAAC,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAA,uBAAS,EAAC,OAAc,CAAC,CAAC;QAC3C,IAAA,gBAAM,EAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,IAAA,YAAE,EAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,OAAO,GAAG,SAAS,CAAC;QAC1B,MAAM,UAAU,GAAG,cAAE,CAAC,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAA,uBAAS,EAAC,OAAO,CAAC,CAAC;QACpC,IAAA,gBAAM,EAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,7 +0,0 @@
1
- import { IOperation } from '@joktec/core';
2
- import { FindOptions } from 'sequelize';
3
- import { Model } from 'sequelize-typescript';
4
- import { IMysqlRequest } from './models';
5
- export declare const preHandleQuery: <T extends Model<T, T>>(query: IMysqlRequest<T>) => FindOptions;
6
- export declare const convertOp: (op: IOperation) => symbol;
7
- //# sourceMappingURL=mysql.utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mysql.utils.d.ts","sourceRoot":"","sources":["../src/mysql.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,UAAU,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,WAAW,EAAe,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,eAAO,MAAM,cAAc,sDAAkD,WA8B5E,CAAC;AAEF,eAAO,MAAM,SAAS,OAAQ,UAAU,KAAG,MAc1C,CAAC"}
@@ -1,53 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertOp = exports.preHandleQuery = void 0;
4
- const sequelize_1 = require("sequelize");
5
- const preHandleQuery = (query) => {
6
- const { condition = {}, keyword } = query;
7
- const where = {};
8
- for (const [key, value] of Object.entries(condition)) {
9
- if (key === '$and') {
10
- where[sequelize_1.Op.and] = value.map(c => (0, exports.preHandleQuery)({ condition: c }));
11
- }
12
- else if (key === '$or') {
13
- where[sequelize_1.Op.or] = value.map(c => (0, exports.preHandleQuery)({ condition: c }));
14
- }
15
- else if (typeof value === 'object') {
16
- const entries = Object.entries(value);
17
- for (const [op, val] of entries) {
18
- const sqlOp = (0, exports.convertOp)(op);
19
- where[key] = {
20
- ...where[key],
21
- [sqlOp]: sqlOp === sequelize_1.Op.like || sqlOp === sequelize_1.Op.notLike ? `%${val}%` : val,
22
- };
23
- }
24
- }
25
- else {
26
- where[key] = value;
27
- }
28
- }
29
- if (keyword) {
30
- if (!where[sequelize_1.Op.and])
31
- where[sequelize_1.Op.and] = [];
32
- where[sequelize_1.Op.and].push((0, sequelize_1.literal)(`MATCH(name) AGAINST('${keyword}' IN BOOLEAN MODE)`));
33
- }
34
- return { where };
35
- };
36
- exports.preHandleQuery = preHandleQuery;
37
- const convertOp = (op) => {
38
- const mapping = {
39
- $ne: sequelize_1.Op.ne,
40
- $gt: sequelize_1.Op.gt,
41
- $gte: sequelize_1.Op.gte,
42
- $lt: sequelize_1.Op.lt,
43
- $lte: sequelize_1.Op.lte,
44
- $in: sequelize_1.Op.in,
45
- $nin: sequelize_1.Op.notIn,
46
- $eq: sequelize_1.Op.eq,
47
- $like: sequelize_1.Op.like,
48
- $unlike: sequelize_1.Op.notLike,
49
- };
50
- return mapping[op] || sequelize_1.Op.eq;
51
- };
52
- exports.convertOp = convertOp;
53
- //# sourceMappingURL=mysql.utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mysql.utils.js","sourceRoot":"","sources":["../src/mysql.utils.ts"],"names":[],"mappings":";;;AACA,yCAAqD;AAI9C,MAAM,cAAc,GAAG,CAAqB,KAAuB,EAAe,EAAE;IACzF,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAC1C,MAAM,KAAK,GAAiC,EAAE,CAAC;IAE/C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QACpD,IAAI,GAAG,KAAK,MAAM,EAAE;YAClB,KAAK,CAAC,cAAE,CAAC,GAAG,CAAC,GAAI,KAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,sBAAc,EAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACvF;aAAM,IAAI,GAAG,KAAK,KAAK,EAAE;YACxB,KAAK,CAAC,cAAE,CAAC,EAAE,CAAC,GAAI,KAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,sBAAc,EAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACtF;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YACpC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAA8B,CAAC;YACnE,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,OAAO,EAAE;gBAC/B,MAAM,KAAK,GAAG,IAAA,iBAAS,EAAC,EAAE,CAAC,CAAC;gBAC5B,KAAK,CAAC,GAAG,CAAC,GAAG;oBACX,GAAG,KAAK,CAAC,GAAG,CAAC;oBACb,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,cAAE,CAAC,IAAI,IAAI,KAAK,KAAK,cAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG;iBACtE,CAAC;aACH;SACF;aAAM;YACL,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;SACpB;KACF;IAGD,IAAI,OAAO,EAAE;QACX,IAAI,CAAC,KAAK,CAAC,cAAE,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,cAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACvC,KAAK,CAAC,cAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAO,EAAC,wBAAwB,OAAO,oBAAoB,CAAC,CAAC,CAAC;KAClF;IAED,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC,CAAC;AA9BW,QAAA,cAAc,kBA8BzB;AAEK,MAAM,SAAS,GAAG,CAAC,EAAc,EAAU,EAAE;IAClD,MAAM,OAAO,GAA+B;QAC1C,GAAG,EAAE,cAAE,CAAC,EAAE;QACV,GAAG,EAAE,cAAE,CAAC,EAAE;QACV,IAAI,EAAE,cAAE,CAAC,GAAG;QACZ,GAAG,EAAE,cAAE,CAAC,EAAE;QACV,IAAI,EAAE,cAAE,CAAC,GAAG;QACZ,GAAG,EAAE,cAAE,CAAC,EAAE;QACV,IAAI,EAAE,cAAE,CAAC,KAAK;QACd,GAAG,EAAE,cAAE,CAAC,EAAE;QACV,KAAK,EAAE,cAAE,CAAC,IAAI;QACd,OAAO,EAAE,cAAE,CAAC,OAAO;KACpB,CAAC;IACF,OAAO,OAAO,CAAC,EAAE,CAAC,IAAI,cAAE,CAAC,EAAE,CAAC;AAC9B,CAAC,CAAC;AAdW,QAAA,SAAS,aAcpB"}