@joktec/mysql 0.2.12 → 0.2.14
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 +211 -81
- package/dist/__tests__/mysql.column.decorator.spec.d.ts +2 -0
- package/dist/__tests__/mysql.column.decorator.spec.d.ts.map +1 -0
- package/dist/__tests__/mysql.column.decorator.spec.js +60 -0
- package/dist/__tests__/mysql.column.decorator.spec.js.map +1 -0
- package/dist/__tests__/mysql.dialect.spec.d.ts +2 -0
- package/dist/__tests__/mysql.dialect.spec.d.ts.map +1 -0
- package/dist/__tests__/mysql.dialect.spec.js +28 -0
- package/dist/__tests__/mysql.dialect.spec.js.map +1 -0
- package/dist/__tests__/mysql.exception.spec.d.ts +2 -0
- package/dist/__tests__/mysql.exception.spec.d.ts.map +1 -0
- package/dist/__tests__/mysql.exception.spec.js +42 -0
- package/dist/__tests__/mysql.exception.spec.js.map +1 -0
- package/dist/__tests__/mysql.helper.spec.d.ts +2 -0
- package/dist/__tests__/mysql.helper.spec.d.ts.map +1 -0
- package/dist/__tests__/mysql.helper.spec.js +80 -0
- package/dist/__tests__/mysql.helper.spec.js.map +1 -0
- package/dist/__tests__/mysql.module.integration.spec.d.ts +2 -0
- package/dist/__tests__/mysql.module.integration.spec.d.ts.map +1 -0
- package/dist/__tests__/mysql.module.integration.spec.js +67 -0
- package/dist/__tests__/mysql.module.integration.spec.js.map +1 -0
- package/dist/__tests__/mysql.repo.cursor.spec.d.ts +2 -0
- package/dist/__tests__/mysql.repo.cursor.spec.d.ts.map +1 -0
- package/dist/__tests__/mysql.repo.cursor.spec.js +146 -0
- package/dist/__tests__/mysql.repo.cursor.spec.js.map +1 -0
- package/dist/__tests__/mysql.service.spec.d.ts +2 -0
- package/dist/__tests__/mysql.service.spec.d.ts.map +1 -0
- package/dist/__tests__/mysql.service.spec.js +70 -0
- package/dist/__tests__/mysql.service.spec.js.map +1 -0
- package/dist/__tests__/mysql.utils.spec.d.ts +2 -0
- package/dist/__tests__/mysql.utils.spec.d.ts.map +1 -0
- package/dist/__tests__/mysql.utils.spec.js +21 -0
- package/dist/__tests__/mysql.utils.spec.js.map +1 -0
- package/dist/decorators/column.decorator.d.ts +11 -0
- package/dist/decorators/column.decorator.d.ts.map +1 -0
- package/dist/decorators/column.decorator.js +35 -0
- package/dist/decorators/column.decorator.js.map +1 -0
- package/dist/decorators/columns/array.column.d.ts +2 -0
- package/dist/decorators/columns/array.column.d.ts.map +1 -0
- package/dist/decorators/columns/array.column.js +8 -0
- package/dist/decorators/columns/array.column.js.map +1 -0
- package/dist/decorators/columns/bool.column.d.ts +2 -0
- package/dist/decorators/columns/bool.column.d.ts.map +1 -0
- package/dist/decorators/columns/bool.column.js +8 -0
- package/dist/decorators/columns/bool.column.js.map +1 -0
- package/dist/decorators/columns/column.factory.d.ts +5 -0
- package/dist/decorators/columns/column.factory.d.ts.map +1 -0
- package/dist/decorators/columns/column.factory.js +40 -0
- package/dist/decorators/columns/column.factory.js.map +1 -0
- package/dist/decorators/columns/column.type.d.ts +33 -0
- package/dist/decorators/columns/column.type.d.ts.map +1 -0
- package/dist/decorators/columns/column.type.js +3 -0
- package/dist/decorators/columns/column.type.js.map +1 -0
- package/dist/decorators/columns/column.util.d.ts +15 -0
- package/dist/decorators/columns/column.util.d.ts.map +1 -0
- package/dist/decorators/columns/column.util.js +82 -0
- package/dist/decorators/columns/column.util.js.map +1 -0
- package/dist/decorators/columns/date.column.d.ts +2 -0
- package/dist/decorators/columns/date.column.d.ts.map +1 -0
- package/dist/decorators/columns/date.column.js +8 -0
- package/dist/decorators/columns/date.column.js.map +1 -0
- package/dist/decorators/columns/enum.column.d.ts +3 -0
- package/dist/decorators/columns/enum.column.d.ts.map +1 -0
- package/dist/decorators/columns/enum.column.js +8 -0
- package/dist/decorators/columns/enum.column.js.map +1 -0
- package/dist/decorators/columns/index.d.ts +14 -0
- package/dist/decorators/columns/index.d.ts.map +1 -0
- package/dist/decorators/columns/index.js +30 -0
- package/dist/decorators/columns/index.js.map +1 -0
- package/dist/decorators/columns/nested.column.d.ts +4 -0
- package/dist/decorators/columns/nested.column.d.ts.map +1 -0
- package/dist/decorators/columns/nested.column.js +12 -0
- package/dist/decorators/columns/nested.column.js.map +1 -0
- package/dist/decorators/columns/number.column.d.ts +3 -0
- package/dist/decorators/columns/number.column.d.ts.map +1 -0
- package/dist/decorators/columns/number.column.js +15 -0
- package/dist/decorators/columns/number.column.js.map +1 -0
- package/dist/decorators/columns/primary.column.d.ts +3 -0
- package/dist/decorators/columns/primary.column.d.ts.map +1 -0
- package/dist/decorators/columns/primary.column.js +48 -0
- package/dist/decorators/columns/primary.column.js.map +1 -0
- package/dist/decorators/columns/string.column.d.ts +3 -0
- package/dist/decorators/columns/string.column.d.ts.map +1 -0
- package/dist/decorators/columns/string.column.js +25 -0
- package/dist/decorators/columns/string.column.js.map +1 -0
- package/dist/decorators/columns/swagger.column.d.ts +4 -0
- package/dist/decorators/columns/swagger.column.d.ts.map +1 -0
- package/dist/decorators/columns/swagger.column.js +40 -0
- package/dist/decorators/columns/swagger.column.js.map +1 -0
- package/dist/decorators/columns/transform.column.d.ts +4 -0
- package/dist/decorators/columns/transform.column.d.ts.map +1 -0
- package/dist/decorators/columns/transform.column.js +15 -0
- package/dist/decorators/columns/transform.column.js.map +1 -0
- package/dist/decorators/index.d.ts +1 -0
- package/dist/decorators/index.d.ts.map +1 -1
- package/dist/decorators/index.js +1 -0
- package/dist/decorators/index.js.map +1 -1
- package/dist/decorators/table.decorator.d.ts.map +1 -1
- package/dist/decorators/table.decorator.js +18 -12
- package/dist/decorators/table.decorator.js.map +1 -1
- package/dist/helpers/mysql.finder.d.ts.map +1 -1
- package/dist/helpers/mysql.finder.js.map +1 -1
- package/dist/helpers/mysql.helper.d.ts +21 -6
- package/dist/helpers/mysql.helper.d.ts.map +1 -1
- package/dist/helpers/mysql.helper.js +152 -82
- package/dist/helpers/mysql.helper.js.map +1 -1
- package/dist/helpers/mysql.utils.d.ts.map +1 -1
- package/dist/helpers/mysql.utils.js +28 -11
- package/dist/helpers/mysql.utils.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/models/mysql.model.d.ts.map +1 -1
- package/dist/models/mysql.model.js.map +1 -1
- package/dist/models/mysql.option.d.ts +11 -2
- package/dist/models/mysql.option.d.ts.map +1 -1
- package/dist/mysql.config.d.ts +1 -17
- package/dist/mysql.config.d.ts.map +1 -1
- package/dist/mysql.config.js +1 -17
- package/dist/mysql.config.js.map +1 -1
- package/dist/mysql.exception.d.ts.map +1 -1
- package/dist/mysql.exception.js +48 -4
- package/dist/mysql.exception.js.map +1 -1
- package/dist/mysql.module.d.ts.map +1 -1
- package/dist/mysql.module.js.map +1 -1
- package/dist/mysql.repo.d.ts +8 -0
- package/dist/mysql.repo.d.ts.map +1 -1
- package/dist/mysql.repo.js +164 -33
- package/dist/mysql.repo.js.map +1 -1
- package/dist/mysql.service.d.ts.map +1 -1
- package/dist/mysql.service.js +8 -2
- package/dist/mysql.service.js.map +1 -1
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +1 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/mysql.dialect.d.ts +14 -0
- package/dist/services/mysql.dialect.d.ts.map +1 -0
- package/dist/services/mysql.dialect.js +50 -0
- package/dist/services/mysql.dialect.js.map +1 -0
- package/dist/services/mysql.strategy.d.ts +1 -1
- package/dist/services/mysql.strategy.d.ts.map +1 -1
- package/dist/services/mysql.strategy.js +1 -1
- package/dist/services/mysql.strategy.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +14 -10
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveNestedType = exports.enumValues = exports.getLengthValue = exports.resolveRequired = exports.parseColumnArgs = exports.toTypeormOptions = exports.cloneColumnOptions = exports.applyPropertyDecorators = void 0;
|
|
4
|
+
const core_1 = require("@joktec/core");
|
|
5
|
+
const MYSQL_COLUMN_OPTION_KEYS = new Set([
|
|
6
|
+
'hidden',
|
|
7
|
+
'nested',
|
|
8
|
+
'example',
|
|
9
|
+
'deprecated',
|
|
10
|
+
'groups',
|
|
11
|
+
'decorators',
|
|
12
|
+
'swagger',
|
|
13
|
+
'required',
|
|
14
|
+
'isEmail',
|
|
15
|
+
'isPhone',
|
|
16
|
+
'isHexColor',
|
|
17
|
+
'isUrl',
|
|
18
|
+
'minlength',
|
|
19
|
+
'maxlength',
|
|
20
|
+
'minLength',
|
|
21
|
+
'maxLength',
|
|
22
|
+
'min',
|
|
23
|
+
'max',
|
|
24
|
+
]);
|
|
25
|
+
const applyPropertyDecorators = (target, propertyKey, decorators) => {
|
|
26
|
+
(0, core_1.applyDecorators)(...decorators)(target, propertyKey);
|
|
27
|
+
};
|
|
28
|
+
exports.applyPropertyDecorators = applyPropertyDecorators;
|
|
29
|
+
const cloneColumnOptions = (options = {}) => {
|
|
30
|
+
return { ...options, swagger: options.swagger ? { ...options.swagger } : undefined };
|
|
31
|
+
};
|
|
32
|
+
exports.cloneColumnOptions = cloneColumnOptions;
|
|
33
|
+
const toTypeormOptions = (options) => {
|
|
34
|
+
const typeormOptions = {};
|
|
35
|
+
Object.entries(options).forEach(([key, value]) => {
|
|
36
|
+
if (!MYSQL_COLUMN_OPTION_KEYS.has(key))
|
|
37
|
+
typeormOptions[key] = value;
|
|
38
|
+
});
|
|
39
|
+
return typeormOptions;
|
|
40
|
+
};
|
|
41
|
+
exports.toTypeormOptions = toTypeormOptions;
|
|
42
|
+
const parseColumnArgs = (args) => {
|
|
43
|
+
if (args.length === 0)
|
|
44
|
+
return { options: {} };
|
|
45
|
+
const [first, second] = args;
|
|
46
|
+
if (typeof first === 'string' || typeof first === 'function') {
|
|
47
|
+
return { type: first, options: (0, exports.cloneColumnOptions)(second || {}) };
|
|
48
|
+
}
|
|
49
|
+
return { options: (0, exports.cloneColumnOptions)((first || {})) };
|
|
50
|
+
};
|
|
51
|
+
exports.parseColumnArgs = parseColumnArgs;
|
|
52
|
+
const resolveRequired = (options) => {
|
|
53
|
+
if (Array.isArray(options.required))
|
|
54
|
+
return { required: options.required[0], message: options.required[1] };
|
|
55
|
+
if (typeof options.required === 'boolean')
|
|
56
|
+
return { required: options.required };
|
|
57
|
+
return { required: options.nullable !== true };
|
|
58
|
+
};
|
|
59
|
+
exports.resolveRequired = resolveRequired;
|
|
60
|
+
const getLengthValue = (value) => {
|
|
61
|
+
if (typeof value === 'number')
|
|
62
|
+
return value;
|
|
63
|
+
if (typeof value === 'string') {
|
|
64
|
+
const parsed = Number.parseInt(value, 10);
|
|
65
|
+
return Number.isNaN(parsed) ? undefined : parsed;
|
|
66
|
+
}
|
|
67
|
+
return undefined;
|
|
68
|
+
};
|
|
69
|
+
exports.getLengthValue = getLengthValue;
|
|
70
|
+
const enumValues = (enumLike) => {
|
|
71
|
+
if (!enumLike)
|
|
72
|
+
return undefined;
|
|
73
|
+
if (Array.isArray(enumLike))
|
|
74
|
+
return enumLike;
|
|
75
|
+
return Object.values(enumLike);
|
|
76
|
+
};
|
|
77
|
+
exports.enumValues = enumValues;
|
|
78
|
+
const resolveNestedType = (nested, designType) => {
|
|
79
|
+
return typeof nested === 'function' ? nested : designType;
|
|
80
|
+
};
|
|
81
|
+
exports.resolveNestedType = resolveNestedType;
|
|
82
|
+
//# sourceMappingURL=column.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"column.util.js","sourceRoot":"","sources":["../../../src/decorators/columns/column.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date.column.d.ts","sourceRoot":"","sources":["../../../src/decorators/columns/date.column.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU,IAAI,iBAAiB,EAAE,CAEhD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DateColumn = DateColumn;
|
|
4
|
+
const utils_1 = require("@joktec/utils");
|
|
5
|
+
function DateColumn() {
|
|
6
|
+
return [(0, utils_1.Type)(() => Date), (0, utils_1.IsDate)()];
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=date.column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date.column.js","sourceRoot":"","sources":["../../../src/decorators/columns/date.column.ts"],"names":[],"mappings":";;AAEA,gCAEC;AAJD,yCAA6C;AAE7C,SAAgB,UAAU;IACxB,OAAO,CAAC,IAAA,YAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,IAAA,cAAM,GAAE,CAAC,CAAC;AACtC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enum.column.d.ts","sourceRoot":"","sources":["../../../src/decorators/columns/enum.column.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,wBAAgB,UAAU,CAAC,OAAO,EAAE,mBAAmB,GAAG,iBAAiB,EAAE,CAE5E"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EnumColumn = EnumColumn;
|
|
4
|
+
const utils_1 = require("@joktec/utils");
|
|
5
|
+
function EnumColumn(options) {
|
|
6
|
+
return options.enum ? [(0, utils_1.IsEnum)(options.enum)] : [];
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=enum.column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enum.column.js","sourceRoot":"","sources":["../../../src/decorators/columns/enum.column.ts"],"names":[],"mappings":";;AAGA,gCAEC;AALD,yCAAuC;AAGvC,SAAgB,UAAU,CAAC,OAA4B;IACrD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,cAAM,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACpD,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * from './array.column';
|
|
2
|
+
export * from './bool.column';
|
|
3
|
+
export * from './column.factory';
|
|
4
|
+
export * from './column.type';
|
|
5
|
+
export * from './column.util';
|
|
6
|
+
export * from './date.column';
|
|
7
|
+
export * from './enum.column';
|
|
8
|
+
export * from './nested.column';
|
|
9
|
+
export * from './number.column';
|
|
10
|
+
export * from './primary.column';
|
|
11
|
+
export * from './string.column';
|
|
12
|
+
export * from './swagger.column';
|
|
13
|
+
export * from './transform.column';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/decorators/columns/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./array.column"), exports);
|
|
18
|
+
__exportStar(require("./bool.column"), exports);
|
|
19
|
+
__exportStar(require("./column.factory"), exports);
|
|
20
|
+
__exportStar(require("./column.type"), exports);
|
|
21
|
+
__exportStar(require("./column.util"), exports);
|
|
22
|
+
__exportStar(require("./date.column"), exports);
|
|
23
|
+
__exportStar(require("./enum.column"), exports);
|
|
24
|
+
__exportStar(require("./nested.column"), exports);
|
|
25
|
+
__exportStar(require("./number.column"), exports);
|
|
26
|
+
__exportStar(require("./primary.column"), exports);
|
|
27
|
+
__exportStar(require("./string.column"), exports);
|
|
28
|
+
__exportStar(require("./swagger.column"), exports);
|
|
29
|
+
__exportStar(require("./transform.column"), exports);
|
|
30
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/decorators/columns/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,gDAA8B;AAC9B,mDAAiC;AACjC,gDAA8B;AAC9B,gDAA8B;AAC9B,gDAA8B;AAC9B,gDAA8B;AAC9B,kDAAgC;AAChC,kDAAgC;AAChC,mDAAiC;AACjC,kDAAgC;AAChC,mDAAiC;AACjC,qDAAmC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nested.column.d.ts","sourceRoot":"","sources":["../../../src/decorators/columns/nested.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,iBAAiB,EAAE,CAK5G"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NestedColumn = NestedColumn;
|
|
4
|
+
const utils_1 = require("@joktec/utils");
|
|
5
|
+
const column_util_1 = require("./column.util");
|
|
6
|
+
function NestedColumn(options, designType) {
|
|
7
|
+
if (!options.nested)
|
|
8
|
+
return [];
|
|
9
|
+
const nestedType = (0, column_util_1.resolveNestedType)(options.nested, designType);
|
|
10
|
+
return [(0, utils_1.ValidateNested)({ each: designType === Array }), (0, utils_1.Type)(() => nestedType)];
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=nested.column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nested.column.js","sourceRoot":"","sources":["../../../src/decorators/columns/nested.column.ts"],"names":[],"mappings":";;AAKA,oCAKC;AATD,yCAAqD;AAErD,+CAAkD;AAElD,SAAgB,YAAY,CAAC,OAA4B,EAAE,UAA4B;IACrF,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAE/B,MAAM,UAAU,GAAG,IAAA,+BAAiB,EAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjE,OAAO,CAAC,IAAA,sBAAc,EAAC,EAAE,IAAI,EAAE,UAAU,KAAK,KAAK,EAAE,CAAC,EAAE,IAAA,YAAI,EAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;AAClF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"number.column.d.ts","sourceRoot":"","sources":["../../../src/decorators/columns/number.column.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,iBAAiB,EAAE,CAQ9E"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NumberColumn = NumberColumn;
|
|
4
|
+
const utils_1 = require("@joktec/utils");
|
|
5
|
+
function NumberColumn(options) {
|
|
6
|
+
const decorators = [(0, utils_1.IsNumber)()];
|
|
7
|
+
if (options.unsigned)
|
|
8
|
+
decorators.push((0, utils_1.Min)(0));
|
|
9
|
+
if (options.min !== undefined)
|
|
10
|
+
decorators.push((0, utils_1.Min)(options.min));
|
|
11
|
+
if (options.max !== undefined)
|
|
12
|
+
decorators.push((0, utils_1.Max)(options.max));
|
|
13
|
+
return decorators;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=number.column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"number.column.js","sourceRoot":"","sources":["../../../src/decorators/columns/number.column.ts"],"names":[],"mappings":";;AAGA,oCAQC;AAXD,yCAAmD;AAGnD,SAAgB,YAAY,CAAC,OAA4B;IACvD,MAAM,UAAU,GAAwB,CAAC,IAAA,gBAAQ,GAAE,CAAC,CAAC;IAErD,IAAI,OAAO,CAAC,QAAQ;QAAE,UAAU,CAAC,IAAI,CAAC,IAAA,WAAG,EAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;QAAE,UAAU,CAAC,IAAI,CAAC,IAAA,WAAG,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACjE,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;QAAE,UAAU,CAAC,IAAI,CAAC,IAAA,WAAG,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAEjE,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { IMysqlPrimaryColumnOptions, PrimaryColumnStrategy } from './column.type';
|
|
2
|
+
export declare function buildPrimaryDecorator(strategy: PrimaryColumnStrategy, primaryOptions: IMysqlPrimaryColumnOptions, target: object, propertyKey: string | symbol): PropertyDecorator;
|
|
3
|
+
//# sourceMappingURL=primary.column.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primary.column.d.ts","sourceRoot":"","sources":["../../../src/decorators/columns/primary.column.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAsClF,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,qBAAqB,EAC/B,cAAc,EAAE,0BAA0B,EAC1C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAAG,MAAM,GAC3B,iBAAiB,CAWnB"}
|
|
@@ -0,0 +1,48 @@
|
|
|
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.buildPrimaryDecorator = buildPrimaryDecorator;
|
|
7
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
8
|
+
const typeorm_1 = require("typeorm");
|
|
9
|
+
const column_util_1 = require("./column.util");
|
|
10
|
+
const uuidFromBytes = (bytes) => {
|
|
11
|
+
const hex = bytes.toString('hex');
|
|
12
|
+
return [hex.slice(0, 8), hex.slice(8, 12), hex.slice(12, 16), hex.slice(16, 20), hex.slice(20)].join('-');
|
|
13
|
+
};
|
|
14
|
+
const generateUuidV7 = () => {
|
|
15
|
+
const bytes = crypto_1.default.randomBytes(16);
|
|
16
|
+
bytes.writeUIntBE(Date.now(), 0, 6);
|
|
17
|
+
bytes[6] = (bytes[6] & 0x0f) | 0x70;
|
|
18
|
+
bytes[8] = (bytes[8] & 0x3f) | 0x80;
|
|
19
|
+
return uuidFromBytes(bytes);
|
|
20
|
+
};
|
|
21
|
+
const registerUuidPrimaryHook = (target, propertyKey) => {
|
|
22
|
+
const property = String(propertyKey);
|
|
23
|
+
const hookName = `__joktecBeforeInsertUuidV7_${property}`;
|
|
24
|
+
if (!Object.prototype.hasOwnProperty.call(target, hookName)) {
|
|
25
|
+
Object.defineProperty(target, hookName, {
|
|
26
|
+
value: function setUuidV7PrimaryKey() {
|
|
27
|
+
if (!this[property])
|
|
28
|
+
this[property] = generateUuidV7();
|
|
29
|
+
},
|
|
30
|
+
writable: false,
|
|
31
|
+
enumerable: false,
|
|
32
|
+
configurable: false,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
(0, typeorm_1.BeforeInsert)()(target, hookName);
|
|
36
|
+
};
|
|
37
|
+
function buildPrimaryDecorator(strategy, primaryOptions, target, propertyKey) {
|
|
38
|
+
if (strategy === 'uuidv7') {
|
|
39
|
+
registerUuidPrimaryHook(target, propertyKey);
|
|
40
|
+
return typeorm_1.PrimaryColumn({
|
|
41
|
+
type: primaryOptions.type || 'varchar',
|
|
42
|
+
length: primaryOptions.length || 36,
|
|
43
|
+
...(0, column_util_1.toTypeormOptions)(primaryOptions),
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
return (0, typeorm_1.PrimaryGeneratedColumn)(strategy, (0, column_util_1.toTypeormOptions)(primaryOptions));
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=primary.column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primary.column.js","sourceRoot":"","sources":["../../../src/decorators/columns/primary.column.ts"],"names":[],"mappings":";;;;;AA4CA,sDAgBC;AA5DD,oDAA4B;AAC5B,qCAIiB;AAEjB,+CAAiD;AAEjD,MAAM,aAAa,GAAG,CAAC,KAAa,EAAU,EAAE;IAC9C,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5G,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,GAAW,EAAE;IAClC,MAAM,KAAK,GAAG,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACrC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IACpC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IACpC,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC,CAAC;AAKF,MAAM,uBAAuB,GAAG,CAAC,MAAc,EAAE,WAA4B,EAAQ,EAAE;IACrF,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,8BAA8B,QAAQ,EAAE,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC5D,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE;YACtC,KAAK,EAAE,SAAS,mBAAmB;gBACjC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;oBAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,cAAc,EAAE,CAAC;YACzD,CAAC;YACD,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;IACL,CAAC;IACD,IAAA,sBAAY,GAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACnC,CAAC,CAAC;AAKF,SAAgB,qBAAqB,CACnC,QAA+B,EAC/B,cAA0C,EAC1C,MAAc,EACd,WAA4B;IAE5B,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,uBAAuB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC7C,OAAQ,uBAA4B,CAAC;YACnC,IAAI,EAAE,cAAc,CAAC,IAAI,IAAI,SAAS;YACtC,MAAM,EAAE,cAAc,CAAC,MAAM,IAAI,EAAE;YACnC,GAAG,IAAA,8BAAgB,EAAC,cAAc,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAA,gCAA6B,EAAC,QAAe,EAAE,IAAA,8BAAgB,EAAC,cAAc,CAAQ,CAAC,CAAC;AACjG,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.column.d.ts","sourceRoot":"","sources":["../../../src/decorators/columns/string.column.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,iBAAiB,EAAE,CAc9E"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StringColumn = StringColumn;
|
|
4
|
+
const utils_1 = require("@joktec/utils");
|
|
5
|
+
const column_util_1 = require("./column.util");
|
|
6
|
+
function StringColumn(options) {
|
|
7
|
+
const decorators = [(0, utils_1.IsString)()];
|
|
8
|
+
const length = (0, column_util_1.getLengthValue)(options.length);
|
|
9
|
+
const minLength = options.minLength ?? options.minlength;
|
|
10
|
+
const maxLength = options.maxLength ?? options.maxlength ?? length;
|
|
11
|
+
if (minLength !== undefined)
|
|
12
|
+
decorators.push((0, utils_1.MinLength)(minLength));
|
|
13
|
+
if (maxLength !== undefined)
|
|
14
|
+
decorators.push((0, utils_1.MaxLength)(maxLength));
|
|
15
|
+
if (options.isEmail)
|
|
16
|
+
decorators.push((0, utils_1.IsEmail)());
|
|
17
|
+
if (options.isPhone)
|
|
18
|
+
decorators.push((0, utils_1.IsMobilePhone)());
|
|
19
|
+
if (options.isHexColor)
|
|
20
|
+
decorators.push((0, utils_1.IsHexColor)());
|
|
21
|
+
if (options.isUrl)
|
|
22
|
+
decorators.push((0, utils_1.IsUrl)());
|
|
23
|
+
return decorators;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=string.column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.column.js","sourceRoot":"","sources":["../../../src/decorators/columns/string.column.ts"],"names":[],"mappings":";;AAIA,oCAcC;AAlBD,yCAA0G;AAE1G,+CAA+C;AAE/C,SAAgB,YAAY,CAAC,OAA4B;IACvD,MAAM,UAAU,GAAwB,CAAC,IAAA,gBAAQ,GAAE,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,IAAA,4BAAc,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC;IACzD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC;IAEnE,IAAI,SAAS,KAAK,SAAS;QAAE,UAAU,CAAC,IAAI,CAAC,IAAA,iBAAS,EAAC,SAAS,CAAC,CAAC,CAAC;IACnE,IAAI,SAAS,KAAK,SAAS;QAAE,UAAU,CAAC,IAAI,CAAC,IAAA,iBAAS,EAAC,SAAS,CAAC,CAAC,CAAC;IACnE,IAAI,OAAO,CAAC,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,IAAA,eAAO,GAAE,CAAC,CAAC;IAChD,IAAI,OAAO,CAAC,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,IAAA,qBAAa,GAAE,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,UAAU;QAAE,UAAU,CAAC,IAAI,CAAC,IAAA,kBAAU,GAAE,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,KAAK;QAAE,UAAU,CAAC,IAAI,CAAC,IAAA,aAAK,GAAE,CAAC,CAAC;IAE5C,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ApiPropertyOptions, Constructor } from '@joktec/core';
|
|
2
|
+
import { IMysqlColumnOptions } from './column.type';
|
|
3
|
+
export declare function buildSwaggerOptions(options: IMysqlColumnOptions, designType: Constructor<any>, required: boolean): ApiPropertyOptions;
|
|
4
|
+
//# sourceMappingURL=swagger.column.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"swagger.column.d.ts","sourceRoot":"","sources":["../../../src/decorators/columns/swagger.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,mBAAmB,EAC5B,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,EAC5B,QAAQ,EAAE,OAAO,GAChB,kBAAkB,CAyBpB"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildSwaggerOptions = buildSwaggerOptions;
|
|
4
|
+
const column_util_1 = require("./column.util");
|
|
5
|
+
function buildSwaggerOptions(options, designType, required) {
|
|
6
|
+
const swaggerOptions = {
|
|
7
|
+
type: designType,
|
|
8
|
+
required,
|
|
9
|
+
nullable: options.nullable === true,
|
|
10
|
+
};
|
|
11
|
+
const length = (0, column_util_1.getLengthValue)(options.length);
|
|
12
|
+
const minLength = options.minLength ?? options.minlength;
|
|
13
|
+
const maxLength = options.maxLength ?? options.maxlength ?? length;
|
|
14
|
+
if (options.example !== undefined)
|
|
15
|
+
swaggerOptions.example = options.example;
|
|
16
|
+
if (options.default !== undefined)
|
|
17
|
+
swaggerOptions.default = options.default;
|
|
18
|
+
if (options.comment)
|
|
19
|
+
swaggerOptions.description = options.comment;
|
|
20
|
+
if (options.deprecated !== undefined)
|
|
21
|
+
swaggerOptions.deprecated = options.deprecated;
|
|
22
|
+
if (options.enum)
|
|
23
|
+
swaggerOptions.enum = (0, column_util_1.enumValues)(options.enum);
|
|
24
|
+
if (minLength !== undefined)
|
|
25
|
+
swaggerOptions.minLength = minLength;
|
|
26
|
+
if (maxLength !== undefined)
|
|
27
|
+
swaggerOptions.maxLength = maxLength;
|
|
28
|
+
if (options.min !== undefined)
|
|
29
|
+
swaggerOptions.minimum = options.min;
|
|
30
|
+
if (options.max !== undefined)
|
|
31
|
+
swaggerOptions.maximum = options.max;
|
|
32
|
+
if (options.isEmail)
|
|
33
|
+
swaggerOptions.format = 'email';
|
|
34
|
+
if (options.isHexColor)
|
|
35
|
+
swaggerOptions.format = 'hex-color';
|
|
36
|
+
if (options.isUrl)
|
|
37
|
+
swaggerOptions.format = 'uri';
|
|
38
|
+
return { ...swaggerOptions, ...options.swagger };
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=swagger.column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"swagger.column.js","sourceRoot":"","sources":["../../../src/decorators/columns/swagger.column.ts"],"names":[],"mappings":";;AAIA,kDA6BC;AA/BD,+CAA2D;AAE3D,SAAgB,mBAAmB,CACjC,OAA4B,EAC5B,UAA4B,EAC5B,QAAiB;IAEjB,MAAM,cAAc,GAAuB;QACzC,IAAI,EAAE,UAAU;QAChB,QAAQ;QACR,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,IAAI;KACpC,CAAC;IAEF,MAAM,MAAM,GAAG,IAAA,4BAAc,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC;IACzD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC;IAEnE,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;QAAE,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC5E,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;QAAE,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC5E,IAAI,OAAO,CAAC,OAAO;QAAE,cAAc,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAClE,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;QAAE,cAAc,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACrF,IAAI,OAAO,CAAC,IAAI;QAAE,cAAc,CAAC,IAAI,GAAG,IAAA,wBAAU,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,IAAI,SAAS,KAAK,SAAS;QAAE,cAAc,CAAC,SAAS,GAAG,SAAS,CAAC;IAClE,IAAI,SAAS,KAAK,SAAS;QAAE,cAAc,CAAC,SAAS,GAAG,SAAS,CAAC;IAClE,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;QAAE,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IACpE,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;QAAE,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IACpE,IAAI,OAAO,CAAC,OAAO;QAAE,cAAc,CAAC,MAAM,GAAG,OAAO,CAAC;IACrD,IAAI,OAAO,CAAC,UAAU;QAAE,cAAc,CAAC,MAAM,GAAG,WAAW,CAAC;IAC5D,IAAI,OAAO,CAAC,KAAK;QAAE,cAAc,CAAC,MAAM,GAAG,KAAK,CAAC;IAEjD,OAAO,EAAE,GAAG,cAAc,EAAE,GAAG,OAAO,CAAC,OAAO,EAAwB,CAAC;AACzE,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Constructor } from '@joktec/core';
|
|
2
|
+
import { IMysqlColumnOptions } from './column.type';
|
|
3
|
+
export declare function TransformColumn(options: IMysqlColumnOptions, designType: Constructor<any>, required: boolean): PropertyDecorator[];
|
|
4
|
+
//# sourceMappingURL=transform.column.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.column.d.ts","sourceRoot":"","sources":["../../../src/decorators/columns/transform.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,WAAW,EAAE,MAAM,cAAc,CAAC;AAEzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,wBAAgB,eAAe,CAC7B,OAAO,EAAE,mBAAmB,EAC5B,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,EAC5B,QAAQ,EAAE,OAAO,GAChB,iBAAiB,EAAE,CAOrB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TransformColumn = TransformColumn;
|
|
4
|
+
const core_1 = require("@joktec/core");
|
|
5
|
+
const utils_1 = require("@joktec/utils");
|
|
6
|
+
const swagger_column_1 = require("./swagger.column");
|
|
7
|
+
function TransformColumn(options, designType, required) {
|
|
8
|
+
if (options.hidden)
|
|
9
|
+
return [(0, utils_1.Exclude)({ toPlainOnly: true }), (0, core_1.ApiHideProperty)()];
|
|
10
|
+
const decorators = [];
|
|
11
|
+
decorators.push(options.groups?.length ? (0, utils_1.Expose)({ groups: options.groups }) : (0, utils_1.Expose)());
|
|
12
|
+
decorators.push((0, core_1.ApiProperty)((0, swagger_column_1.buildSwaggerOptions)(options, designType, required)));
|
|
13
|
+
return decorators;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=transform.column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.column.js","sourceRoot":"","sources":["../../../src/decorators/columns/transform.column.ts"],"names":[],"mappings":";;AAKA,0CAWC;AAhBD,uCAAyE;AACzE,yCAAgD;AAEhD,qDAAuD;AAEvD,SAAgB,eAAe,CAC7B,OAA4B,EAC5B,UAA4B,EAC5B,QAAiB;IAEjB,IAAI,OAAO,CAAC,MAAM;QAAE,OAAO,CAAC,IAAA,eAAO,EAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,IAAA,sBAAe,GAAE,CAAC,CAAC;IAE/E,MAAM,UAAU,GAAwB,EAAE,CAAC;IAC3C,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,cAAM,EAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,IAAA,cAAM,GAAE,CAAC,CAAC;IACxF,UAAU,CAAC,IAAI,CAAC,IAAA,kBAAW,EAAC,IAAA,oCAAmB,EAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACjF,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
|
package/dist/decorators/index.js
CHANGED
|
@@ -14,5 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./column.decorator"), exports);
|
|
17
18
|
__exportStar(require("./table.decorator"), exports);
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,oDAAkC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/table.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAe,MAAM,cAAc,CAAC;AACnE,OAAO,EAAU,aAAa,EAAS,YAAY,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,KAAK,SAAS,CAAC,CAAC,EAAE,IAAI,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,SAAS,GAAG,CAAC,GAAG,KAAK;CAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAEjG,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,CAAE,SAAQ,YAAY;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,CAAE,SAAQ,aAAa;IAC9E,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;IAElC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;CACpC;
|
|
1
|
+
{"version":3,"file":"table.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/table.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAe,MAAM,cAAc,CAAC;AACnE,OAAO,EAAU,aAAa,EAAS,YAAY,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,KAAK,SAAS,CAAC,CAAC,EAAE,IAAI,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,SAAS,GAAG,CAAC,GAAG,KAAK;CAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAEjG,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,CAAE,SAAQ,YAAY;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,CAAE,SAAQ,aAAa;IAC9E,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;IAElC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;CACpC;AAKD,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,UAAU,kBAAiB,aAAa,CAAC,CAAC,CAAC,KAAQ,cAiCnF,CAAC"}
|
|
@@ -6,22 +6,28 @@ const typeorm_1 = require("typeorm");
|
|
|
6
6
|
const Tables = (options = {}) => {
|
|
7
7
|
return (target) => {
|
|
8
8
|
const className = target.name;
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
const { index, unique, textSearch, customIndexes, keywords: _keywords, ...entityOptions } = options;
|
|
10
|
+
const decorators = [
|
|
11
|
+
(0, core_1.SetMetadata)(className, { ...options }),
|
|
12
|
+
(0, typeorm_1.Entity)(entityOptions),
|
|
13
|
+
];
|
|
14
|
+
if (index?.length) {
|
|
15
|
+
decorators.push((0, typeorm_1.Index)(index.map(String)));
|
|
12
16
|
}
|
|
13
|
-
if (
|
|
14
|
-
decorators.push((0, typeorm_1.Index)(
|
|
17
|
+
if (unique?.length) {
|
|
18
|
+
decorators.push((0, typeorm_1.Index)(unique.map(String), { unique: true }));
|
|
15
19
|
}
|
|
16
|
-
if (
|
|
17
|
-
decorators.push((0, typeorm_1.Index)(
|
|
20
|
+
if (textSearch?.length) {
|
|
21
|
+
decorators.push((0, typeorm_1.Index)(textSearch.map(String), { fulltext: true }));
|
|
18
22
|
}
|
|
19
|
-
if (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
+
if (customIndexes?.length) {
|
|
24
|
+
customIndexes.map((idxOpts) => {
|
|
25
|
+
const { fields, ...indexOptions } = idxOpts;
|
|
26
|
+
const safeFields = fields.map(String);
|
|
27
|
+
if (indexOptions.name)
|
|
28
|
+
decorators.push((0, typeorm_1.Index)(indexOptions.name, safeFields, indexOptions));
|
|
23
29
|
else
|
|
24
|
-
decorators.push((0, typeorm_1.Index)(
|
|
30
|
+
decorators.push((0, typeorm_1.Index)(safeFields, indexOptions));
|
|
25
31
|
});
|
|
26
32
|
}
|
|
27
33
|
(0, core_1.applyDecorators)(...decorators)(target);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.decorator.js","sourceRoot":"","sources":["../../src/decorators/table.decorator.ts"],"names":[],"mappings":";;;AAAA,uCAAmE;AACnE,qCAAqE;
|
|
1
|
+
{"version":3,"file":"table.decorator.js","sourceRoot":"","sources":["../../src/decorators/table.decorator.ts"],"names":[],"mappings":";;;AAAA,uCAAmE;AACnE,qCAAqE;AAsB9D,MAAM,MAAM,GAAG,CAA6B,UAA4B,EAAE,EAAkB,EAAE;IACnG,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;QAC9B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC;QAEpG,MAAM,UAAU,GAAqB;YACnC,IAAA,kBAAW,EAA2B,SAAS,EAAE,EAAE,GAAG,OAAO,EAAE,CAAC;YAChE,IAAA,gBAAM,EAAC,aAAa,CAAC;SACtB,CAAC;QAEF,IAAI,KAAK,EAAE,MAAM,EAAE,CAAC;YAClB,UAAU,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,UAAU,EAAE,MAAM,EAAE,CAAC;YACvB,UAAU,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,aAAa,EAAE,MAAM,EAAE,CAAC;YAC1B,aAAa,CAAC,GAAG,CAAC,CAAC,OAAsB,EAAE,EAAE;gBAC3C,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,OAAO,CAAC;gBAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACtC,IAAI,YAAY,CAAC,IAAI;oBAAE,UAAU,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;;oBACtF,UAAU,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAA,sBAAe,EAAC,GAAG,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC,CAAC;AAjCW,QAAA,MAAM,UAiCjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mysql.finder.d.ts","sourceRoot":"","sources":["../../src/helpers/mysql.finder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGnE,OAAO,EAGL,eAAe,EAShB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mysql.finder.d.ts","sourceRoot":"","sources":["../../src/helpers/mysql.finder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGnE,OAAO,EAGL,eAAe,EAShB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAQtD,qBAAa,WAAW;IACtB,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,GAAE,aAAa,CAAC,CAAC,CAAM,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAU5F,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;IASjE,MAAM,CAAC,eAAe,CAAC,CAAC,SAAS,UAAU,EACzC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAC3D,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAc/B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAqE/E,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAQ5D,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;CAalF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mysql.finder.js","sourceRoot":"","sources":["../../src/helpers/mysql.finder.ts"],"names":[],"mappings":";;;AACA,yCAAgD;AAChD,mCAA+B;AAC/B,qCAYiB;AAEjB,wDAAoD;
|
|
1
|
+
{"version":3,"file":"mysql.finder.js","sourceRoot":"","sources":["../../src/helpers/mysql.finder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,27 @@
|
|
|
1
1
|
import { ICondition, IPopulate, ISort } from '@joktec/core';
|
|
2
|
-
import { SelectQueryBuilder } from 'typeorm';
|
|
2
|
+
import { EntityMetadata, SelectQueryBuilder } from 'typeorm';
|
|
3
3
|
import { IMysqlRequest } from '../models';
|
|
4
|
+
import { Dialect } from '../mysql.config';
|
|
5
|
+
export interface MysqlQueryContext {
|
|
6
|
+
metadata?: EntityMetadata;
|
|
7
|
+
dialect?: Dialect;
|
|
8
|
+
}
|
|
4
9
|
export declare class MysqlHelper {
|
|
10
|
+
private static readonly FIELD_PATTERN;
|
|
11
|
+
private static readonly LIKE_ESCAPE_SQL;
|
|
5
12
|
static applyPagination<T>(qb: SelectQueryBuilder<T>, query?: IMysqlRequest<T>): void;
|
|
6
|
-
static applyCondition<T>(qb: SelectQueryBuilder<T>, condition?: ICondition<T
|
|
7
|
-
static
|
|
8
|
-
static
|
|
9
|
-
static
|
|
10
|
-
static
|
|
13
|
+
static applyCondition<T>(qb: SelectQueryBuilder<T>, condition?: ICondition<T>, context?: MysqlQueryContext): void;
|
|
14
|
+
private static applyConditionEntry;
|
|
15
|
+
private static applyOperator;
|
|
16
|
+
static applyProjection<T>(qb: SelectQueryBuilder<T>, select?: string | string[], context?: MysqlQueryContext): void;
|
|
17
|
+
static applyOrder<T>(qb: SelectQueryBuilder<T>, sort?: ISort<T>, context?: MysqlQueryContext): void;
|
|
18
|
+
static applyRelations<T>(qb: SelectQueryBuilder<T>, populate?: IPopulate<T>, context?: MysqlQueryContext): void;
|
|
19
|
+
static assertColumn(path: string, context?: MysqlQueryContext): void;
|
|
20
|
+
static assertRelation(path: string, context?: MysqlQueryContext): void;
|
|
21
|
+
static column<T>(qb: SelectQueryBuilder<T>, path: string, context: MysqlQueryContext): string;
|
|
22
|
+
static escapeLikePattern(value: unknown): string;
|
|
23
|
+
private static assertSafePath;
|
|
24
|
+
private static nextParam;
|
|
25
|
+
private static assertNonEmptyArray;
|
|
11
26
|
}
|
|
12
27
|
//# sourceMappingURL=mysql.helper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mysql.helper.d.ts","sourceRoot":"","sources":["../../src/helpers/mysql.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"mysql.helper.d.ts","sourceRoot":"","sources":["../../src/helpers/mysql.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAY,cAAc,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAI1C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAUD,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAsB;IAC3D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAmB;IAE1D,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,KAAK,GAAE,aAAa,CAAC,CAAC,CAAM;IASjF,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,GAAE,iBAAsB;IAY9G,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAsClC,OAAO,CAAC,MAAM,CAAC,aAAa;IA6E5B,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,GAAE,iBAAsB;IAMhH,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,GAAE,iBAAsB;IAOhG,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,GAAE,iBAAsB;IAe5G,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,IAAI;IAUxE,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,IAAI;IAU1E,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,MAAM;IAM7F,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAIhD,OAAO,CAAC,MAAM,CAAC,cAAc;IAI7B,OAAO,CAAC,MAAM,CAAC,SAAS;IAOxB,OAAO,CAAC,MAAM,CAAC,mBAAmB;CAKnC"}
|