@volcanicminds/typeorm 0.0.8 → 0.0.10
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/dist/index.d.ts +6 -2
- package/dist/index.js +9 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/entities/user.e.d.ts +6 -9
- package/dist/lib/entities/user.e.js +21 -26
- package/dist/lib/entities/user.e.js.map +1 -1
- package/dist/lib/loader/userManager.d.ts +5 -0
- package/dist/lib/loader/userManager.js +75 -0
- package/dist/lib/loader/userManager.js.map +1 -0
- package/dist/lib/query.d.ts +16 -0
- package/dist/lib/query.js +88 -0
- package/dist/lib/query.js.map +1 -0
- package/esm/index.d.ts +6 -2
- package/esm/index.js +9 -3
- package/esm/index.js.map +1 -1
- package/esm/lib/entities/user.e.d.ts +6 -9
- package/esm/lib/entities/user.e.js +21 -26
- package/esm/lib/entities/user.e.js.map +1 -1
- package/esm/lib/loader/userManager.d.ts +5 -0
- package/esm/lib/loader/userManager.js +60 -0
- package/esm/lib/loader/userManager.js.map +1 -0
- package/esm/lib/query.d.ts +16 -0
- package/esm/lib/query.js +67 -0
- package/esm/lib/query.js.map +1 -0
- package/package.json +3 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { DataSource } from 'typeorm';
|
|
3
|
+
import * as userManager from './lib/loader/userManager';
|
|
4
|
+
import { User } from './lib/entities/user.e';
|
|
5
|
+
import { applyQuery, executeCountQuery, executeFindQuery } from './lib/query';
|
|
6
|
+
export { Database } from './types/global';
|
|
7
|
+
export { User, userManager, DataSource, applyQuery, executeCountQuery, executeFindQuery };
|
package/dist/index.js
CHANGED
|
@@ -32,13 +32,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
32
32
|
});
|
|
33
33
|
};
|
|
34
34
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
-
exports.
|
|
35
|
+
exports.executeFindQuery = exports.executeCountQuery = exports.applyQuery = exports.DataSource = exports.userManager = exports.User = void 0;
|
|
36
36
|
require("reflect-metadata");
|
|
37
37
|
const typeorm_1 = require("typeorm");
|
|
38
|
+
Object.defineProperty(exports, "DataSource", { enumerable: true, get: function () { return typeorm_1.DataSource; } });
|
|
38
39
|
const loaderEntities = __importStar(require("./lib/loader/entities"));
|
|
40
|
+
const userManager = __importStar(require("./lib/loader/userManager"));
|
|
41
|
+
exports.userManager = userManager;
|
|
39
42
|
const user_e_1 = require("./lib/entities/user.e");
|
|
40
43
|
Object.defineProperty(exports, "User", { enumerable: true, get: function () { return user_e_1.User; } });
|
|
41
|
-
|
|
44
|
+
const query_1 = require("./lib/query");
|
|
45
|
+
Object.defineProperty(exports, "applyQuery", { enumerable: true, get: function () { return query_1.applyQuery; } });
|
|
46
|
+
Object.defineProperty(exports, "executeCountQuery", { enumerable: true, get: function () { return query_1.executeCountQuery; } });
|
|
47
|
+
Object.defineProperty(exports, "executeFindQuery", { enumerable: true, get: function () { return query_1.executeFindQuery; } });
|
|
42
48
|
function start(options) {
|
|
43
49
|
return __awaiter(this, void 0, void 0, function* () {
|
|
44
50
|
return new Promise((resolve, reject) => {
|
|
@@ -88,5 +94,5 @@ function start(options) {
|
|
|
88
94
|
});
|
|
89
95
|
});
|
|
90
96
|
}
|
|
91
|
-
module.exports = { start, User: user_e_1.User,
|
|
97
|
+
module.exports = { start, User: user_e_1.User, userManager, applyQuery: query_1.applyQuery, executeCountQuery: query_1.executeCountQuery, executeFindQuery: query_1.executeFindQuery };
|
|
92
98
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEZ,4BAAyB;AACzB,qCAAoC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import { BaseEntity } from 'typeorm';
|
|
2
|
-
export declare class ExtraColumns {
|
|
3
|
-
version: number;
|
|
4
|
-
createdAt: Date;
|
|
5
|
-
updatedAt: Date;
|
|
6
|
-
deletedAt: Date;
|
|
7
|
-
}
|
|
8
2
|
export declare class User extends BaseEntity {
|
|
9
3
|
id: number;
|
|
10
|
-
|
|
11
|
-
name: string;
|
|
4
|
+
username: string;
|
|
12
5
|
email: string;
|
|
13
6
|
password: string;
|
|
14
|
-
|
|
7
|
+
roles: string[];
|
|
8
|
+
version: number;
|
|
9
|
+
createdAt: Date;
|
|
10
|
+
updatedAt: Date;
|
|
11
|
+
deletedAt: Date;
|
|
15
12
|
}
|
|
@@ -9,42 +9,19 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.User =
|
|
12
|
+
exports.User = void 0;
|
|
13
13
|
const typeorm_1 = require("typeorm");
|
|
14
|
-
class ExtraColumns {
|
|
15
|
-
}
|
|
16
|
-
__decorate([
|
|
17
|
-
(0, typeorm_1.VersionColumn)(),
|
|
18
|
-
__metadata("design:type", Number)
|
|
19
|
-
], ExtraColumns.prototype, "version", void 0);
|
|
20
|
-
__decorate([
|
|
21
|
-
(0, typeorm_1.CreateDateColumn)(),
|
|
22
|
-
__metadata("design:type", Date)
|
|
23
|
-
], ExtraColumns.prototype, "createdAt", void 0);
|
|
24
|
-
__decorate([
|
|
25
|
-
(0, typeorm_1.UpdateDateColumn)(),
|
|
26
|
-
__metadata("design:type", Date)
|
|
27
|
-
], ExtraColumns.prototype, "updatedAt", void 0);
|
|
28
|
-
__decorate([
|
|
29
|
-
(0, typeorm_1.DeleteDateColumn)(),
|
|
30
|
-
__metadata("design:type", Date)
|
|
31
|
-
], ExtraColumns.prototype, "deletedAt", void 0);
|
|
32
|
-
exports.ExtraColumns = ExtraColumns;
|
|
33
14
|
let User = class User extends typeorm_1.BaseEntity {
|
|
34
15
|
};
|
|
35
16
|
__decorate([
|
|
36
17
|
(0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
|
|
37
18
|
__metadata("design:type", Number)
|
|
38
19
|
], User.prototype, "id", void 0);
|
|
39
|
-
__decorate([
|
|
40
|
-
(0, typeorm_1.Column)(() => ExtraColumns),
|
|
41
|
-
__metadata("design:type", ExtraColumns)
|
|
42
|
-
], User.prototype, "extra", void 0);
|
|
43
20
|
__decorate([
|
|
44
21
|
(0, typeorm_1.Index)(),
|
|
45
22
|
(0, typeorm_1.Column)(),
|
|
46
23
|
__metadata("design:type", String)
|
|
47
|
-
], User.prototype, "
|
|
24
|
+
], User.prototype, "username", void 0);
|
|
48
25
|
__decorate([
|
|
49
26
|
(0, typeorm_1.Index)(),
|
|
50
27
|
(0, typeorm_1.Column)(),
|
|
@@ -57,9 +34,27 @@ __decorate([
|
|
|
57
34
|
__decorate([
|
|
58
35
|
(0, typeorm_1.Column)({ type: 'simple-array', nullable: true }),
|
|
59
36
|
__metadata("design:type", Array)
|
|
60
|
-
], User.prototype, "
|
|
37
|
+
], User.prototype, "roles", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
(0, typeorm_1.VersionColumn)(),
|
|
40
|
+
__metadata("design:type", Number)
|
|
41
|
+
], User.prototype, "version", void 0);
|
|
42
|
+
__decorate([
|
|
43
|
+
(0, typeorm_1.CreateDateColumn)(),
|
|
44
|
+
__metadata("design:type", Date)
|
|
45
|
+
], User.prototype, "createdAt", void 0);
|
|
46
|
+
__decorate([
|
|
47
|
+
(0, typeorm_1.UpdateDateColumn)(),
|
|
48
|
+
__metadata("design:type", Date)
|
|
49
|
+
], User.prototype, "updatedAt", void 0);
|
|
50
|
+
__decorate([
|
|
51
|
+
(0, typeorm_1.DeleteDateColumn)(),
|
|
52
|
+
__metadata("design:type", Date)
|
|
53
|
+
], User.prototype, "deletedAt", void 0);
|
|
61
54
|
User = __decorate([
|
|
62
55
|
(0, typeorm_1.Entity)(),
|
|
56
|
+
(0, typeorm_1.Unique)(['username']),
|
|
57
|
+
(0, typeorm_1.Unique)(['email']),
|
|
63
58
|
(0, typeorm_1.TableInheritance)({ column: { type: 'varchar', name: 'type', default: 'user' } })
|
|
64
59
|
], User);
|
|
65
60
|
exports.User = User;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.e.js","sourceRoot":"","sources":["../../../lib/entities/user.e.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"user.e.js","sourceRoot":"","sources":["../../../lib/entities/user.e.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAYgB;AAMT,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,oBAAU;CA6BnC,CAAA;AA5BC;IAAC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;gCACrB;AAEV;IAAC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,GAAE;;sCACO;AAEhB;IAAC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,GAAE;;mCACI;AAEb;IAAC,IAAA,gBAAM,GAAE;;sCACO;AAEhB;IAAC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mCAClC;AAEf;IAAC,IAAA,uBAAa,GAAE;;qCACD;AAEf;IAAC,IAAA,0BAAgB,GAAE;8BACR,IAAI;uCAAA;AAEf;IAAC,IAAA,0BAAgB,GAAE;8BACR,IAAI;uCAAA;AAEf;IAAC,IAAA,0BAAgB,GAAE;8BACR,IAAI;uCAAA;AA5BJ,IAAI;IAJhB,IAAA,gBAAM,GAAE;IACR,IAAA,gBAAM,EAAC,CAAC,UAAU,CAAC,CAAC;IACpB,IAAA,gBAAM,EAAC,CAAC,OAAO,CAAC,CAAC;IACjB,IAAA,0BAAgB,EAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC;GACpE,IAAI,CA6BhB;AA7BY,oBAAI"}
|
|
@@ -0,0 +1,75 @@
|
|
|
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 (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
exports.login = exports.register = exports.demo = void 0;
|
|
36
|
+
const bcrypt = __importStar(require("bcrypt"));
|
|
37
|
+
const { User } = require('../entities/user.e');
|
|
38
|
+
function demo() {
|
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
+
return [];
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
exports.demo = demo;
|
|
44
|
+
function register(data) {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
const { name, email, password } = data;
|
|
47
|
+
const salt = yield bcrypt.genSalt();
|
|
48
|
+
const hashedPassword = yield bcrypt.hash(password, salt);
|
|
49
|
+
try {
|
|
50
|
+
let user = Object.assign(Object.assign({}, data), { name: name || email, password: hashedPassword });
|
|
51
|
+
return yield User.save(user);
|
|
52
|
+
}
|
|
53
|
+
catch (error) {
|
|
54
|
+
if ((error === null || error === void 0 ? void 0 : error.code) == 23505) {
|
|
55
|
+
throw Error('Email already registered');
|
|
56
|
+
}
|
|
57
|
+
throw error;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
exports.register = register;
|
|
62
|
+
function login(data) {
|
|
63
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
const { name, email, password } = data;
|
|
65
|
+
try {
|
|
66
|
+
const user = yield global.repository.users.findOneBy({ email: email });
|
|
67
|
+
return user;
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
throw error;
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
exports.login = login;
|
|
75
|
+
//# sourceMappingURL=userManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userManager.js","sourceRoot":"","sources":["../../../lib/loader/userManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgC;AAChC,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AAE9C,SAAsB,IAAI;;QAGxB,OAAO,EAAE,CAAA;IACX,CAAC;CAAA;AAJD,oBAIC;AAED,SAAsB,QAAQ,CAAC,IAAiB;;QAC9C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QACtC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAA;QACnC,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QAExD,IAAI;YACF,IAAI,IAAI,GAAG,gCAAK,IAAI,KAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,QAAQ,EAAE,cAAc,GAAiB,CAAA;YACpF,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SAC7B;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,KAAI,KAAK,EAAE;gBACxB,MAAM,KAAK,CAAC,0BAA0B,CAAC,CAAA;aACxC;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CAAA;AAdD,4BAcC;AAED,SAAsB,KAAK,CAAC,IAAiB;;QAC3C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QAEtC,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;YACtE,OAAO,IAAI,CAAA;SACZ;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CAAA;AATD,sBASC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare function applyQuery(data: any): {
|
|
2
|
+
skip?: number | undefined;
|
|
3
|
+
take?: number | undefined;
|
|
4
|
+
order?: object | undefined;
|
|
5
|
+
where?: object | undefined;
|
|
6
|
+
};
|
|
7
|
+
export declare function executeFindQuery(repo: any, relations?: {}, data?: {}): Promise<{
|
|
8
|
+
records: any;
|
|
9
|
+
headers: {
|
|
10
|
+
'v-total': any;
|
|
11
|
+
'v-count': any;
|
|
12
|
+
'v-pagesize': number | undefined;
|
|
13
|
+
'v-page': number;
|
|
14
|
+
};
|
|
15
|
+
}>;
|
|
16
|
+
export declare function executeCountQuery(repo: any, data?: {}): Promise<any>;
|
|
@@ -0,0 +1,88 @@
|
|
|
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.executeCountQuery = exports.executeFindQuery = exports.applyQuery = void 0;
|
|
24
|
+
function applyQuery(data) {
|
|
25
|
+
const { page = 0, pageSize = 0, skip: sk = 0, take: tk = 0, sort: s } = data, where = __rest(data, ["page", "pageSize", "skip", "take", "sort"]);
|
|
26
|
+
const take = tk || pageSize || 50;
|
|
27
|
+
const skip = sk || page * pageSize || 0;
|
|
28
|
+
const order = !Array.isArray(s) ? [s] : s;
|
|
29
|
+
const evalOrder = (val = '') => (['desc', 'd', 'false', '1'].includes(val.toLowerCase()) ? 'desc' : 'asc');
|
|
30
|
+
const useOrder = (order = []) => {
|
|
31
|
+
const orderBy = {};
|
|
32
|
+
order
|
|
33
|
+
.filter((o) => !!o)
|
|
34
|
+
.forEach((o) => {
|
|
35
|
+
const p = o.split(':');
|
|
36
|
+
orderBy[p[0]] = evalOrder(p[1]);
|
|
37
|
+
});
|
|
38
|
+
return orderBy;
|
|
39
|
+
};
|
|
40
|
+
const useWhere = (where) => {
|
|
41
|
+
const result = {};
|
|
42
|
+
for (const objectPath in where) {
|
|
43
|
+
const parts = objectPath.split('.');
|
|
44
|
+
let target = result;
|
|
45
|
+
while (parts.length > 1) {
|
|
46
|
+
const part = parts.shift() || '';
|
|
47
|
+
target = target[part] = target[part] || {};
|
|
48
|
+
}
|
|
49
|
+
target[parts[0]] = where[objectPath];
|
|
50
|
+
}
|
|
51
|
+
return result;
|
|
52
|
+
};
|
|
53
|
+
const query = {};
|
|
54
|
+
if (skip)
|
|
55
|
+
query.skip = skip;
|
|
56
|
+
if (take)
|
|
57
|
+
query.take = take;
|
|
58
|
+
if (order)
|
|
59
|
+
query.order = useOrder(order);
|
|
60
|
+
if (where)
|
|
61
|
+
query.where = useWhere(where);
|
|
62
|
+
return query;
|
|
63
|
+
}
|
|
64
|
+
exports.applyQuery = applyQuery;
|
|
65
|
+
function executeFindQuery(repo, relations = {}, data = {}) {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
const extra = applyQuery(data);
|
|
68
|
+
const [records = [], totalCount] = yield repo.findAndCount(Object.assign({ relations: relations }, extra));
|
|
69
|
+
return {
|
|
70
|
+
records,
|
|
71
|
+
headers: {
|
|
72
|
+
'v-total': totalCount,
|
|
73
|
+
'v-count': records.length,
|
|
74
|
+
'v-pagesize': extra.take,
|
|
75
|
+
'v-page': 1
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
exports.executeFindQuery = executeFindQuery;
|
|
81
|
+
function executeCountQuery(repo, data = {}) {
|
|
82
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
83
|
+
const { where = {} } = applyQuery(data);
|
|
84
|
+
return yield repo.count({ where: where });
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
exports.executeCountQuery = executeCountQuery;
|
|
88
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../lib/query.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAgB,UAAU,CAAC,IAAI;IAC7B,MAAM,EAAE,IAAI,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,KAAe,IAAI,EAAd,KAAK,UAAK,IAAI,EAAhF,4CAAyE,CAAO,CAAA;IACtF,MAAM,IAAI,GAAW,EAAE,IAAI,QAAQ,IAAI,EAAE,CAAA;IACzC,MAAM,IAAI,GAAW,EAAE,IAAI,IAAI,GAAG,QAAQ,IAAI,CAAC,CAAA;IAC/C,MAAM,KAAK,GAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAEnD,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAClH,MAAM,QAAQ,GAAG,CAAC,QAAkB,EAAE,EAAE,EAAE;QACxC,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,KAAK;aACF,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aAClB,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;YACrB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACtB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;QAEJ,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,KAAU,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,EAAE,CAAA;QAGjB,KAAK,MAAM,UAAU,IAAI,KAAK,EAAE;YAE9B,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAGnC,IAAI,MAAM,GAAG,MAAM,CAAA;YACnB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACvB,MAAM,IAAI,GAAW,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,CAAA;gBACxC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;aAC3C;YAGD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAA;SACrC;QAED,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,MAAM,KAAK,GAAG,EAKb,CAAA;IAED,IAAI,IAAI;QAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAA;IAC3B,IAAI,IAAI;QAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAA;IAC3B,IAAI,KAAK;QAAE,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACxC,IAAI,KAAK;QAAE,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACxC,OAAO,KAAK,CAAA;AACd,CAAC;AArDD,gCAqDC;AAED,SAAsB,gBAAgB,CAAC,IAAS,EAAE,SAAS,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE;;QACzE,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAE9B,MAAM,CAAC,OAAO,GAAG,EAAE,EAAE,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,iBACxD,SAAS,EAAE,SAAS,IACjB,KAAK,EACR,CAAA;QAEF,OAAO;YACL,OAAO;YACP,OAAO,EAAE;gBACP,SAAS,EAAE,UAAU;gBACrB,SAAS,EAAE,OAAO,CAAC,MAAM;gBACzB,YAAY,EAAE,KAAK,CAAC,IAAI;gBACxB,QAAQ,EAAE,CAAC;aACZ;SACF,CAAA;IACH,CAAC;CAAA;AAjBD,4CAiBC;AAED,SAAsB,iBAAiB,CAAC,IAAS,EAAE,IAAI,GAAG,EAAE;;QAC1D,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QACvC,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3C,CAAC;CAAA;AAHD,8CAGC"}
|
package/esm/index.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { DataSource } from 'typeorm';
|
|
3
|
+
import * as userManager from './lib/loader/userManager';
|
|
4
|
+
import { User } from './lib/entities/user.e';
|
|
5
|
+
import { applyQuery, executeCountQuery, executeFindQuery } from './lib/query';
|
|
6
|
+
export { Database } from './types/global';
|
|
7
|
+
export { User, userManager, DataSource, applyQuery, executeCountQuery, executeFindQuery };
|
package/esm/index.js
CHANGED
|
@@ -23,13 +23,19 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.
|
|
26
|
+
exports.executeFindQuery = exports.executeCountQuery = exports.applyQuery = exports.DataSource = exports.userManager = exports.User = void 0;
|
|
27
27
|
require("reflect-metadata");
|
|
28
28
|
const typeorm_1 = require("typeorm");
|
|
29
|
+
Object.defineProperty(exports, "DataSource", { enumerable: true, get: function () { return typeorm_1.DataSource; } });
|
|
29
30
|
const loaderEntities = __importStar(require("./lib/loader/entities"));
|
|
31
|
+
const userManager = __importStar(require("./lib/loader/userManager"));
|
|
32
|
+
exports.userManager = userManager;
|
|
30
33
|
const user_e_1 = require("./lib/entities/user.e");
|
|
31
34
|
Object.defineProperty(exports, "User", { enumerable: true, get: function () { return user_e_1.User; } });
|
|
32
|
-
|
|
35
|
+
const query_1 = require("./lib/query");
|
|
36
|
+
Object.defineProperty(exports, "applyQuery", { enumerable: true, get: function () { return query_1.applyQuery; } });
|
|
37
|
+
Object.defineProperty(exports, "executeCountQuery", { enumerable: true, get: function () { return query_1.executeCountQuery; } });
|
|
38
|
+
Object.defineProperty(exports, "executeFindQuery", { enumerable: true, get: function () { return query_1.executeFindQuery; } });
|
|
33
39
|
async function start(options) {
|
|
34
40
|
return new Promise((resolve, reject) => {
|
|
35
41
|
if (global.npmDebugServerStarted) {
|
|
@@ -77,5 +83,5 @@ async function start(options) {
|
|
|
77
83
|
.catch((error) => reject(error));
|
|
78
84
|
});
|
|
79
85
|
}
|
|
80
|
-
module.exports = { start, User: user_e_1.User,
|
|
86
|
+
module.exports = { start, User: user_e_1.User, userManager, applyQuery: query_1.applyQuery, executeCountQuery: query_1.executeCountQuery, executeFindQuery: query_1.executeFindQuery };
|
|
81
87
|
//# sourceMappingURL=index.js.map
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;AAEZ,4BAAyB;AACzB,qCAAoC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import { BaseEntity } from 'typeorm';
|
|
2
|
-
export declare class ExtraColumns {
|
|
3
|
-
version: number;
|
|
4
|
-
createdAt: Date;
|
|
5
|
-
updatedAt: Date;
|
|
6
|
-
deletedAt: Date;
|
|
7
|
-
}
|
|
8
2
|
export declare class User extends BaseEntity {
|
|
9
3
|
id: number;
|
|
10
|
-
|
|
11
|
-
name: string;
|
|
4
|
+
username: string;
|
|
12
5
|
email: string;
|
|
13
6
|
password: string;
|
|
14
|
-
|
|
7
|
+
roles: string[];
|
|
8
|
+
version: number;
|
|
9
|
+
createdAt: Date;
|
|
10
|
+
updatedAt: Date;
|
|
11
|
+
deletedAt: Date;
|
|
15
12
|
}
|
|
@@ -9,42 +9,19 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.User =
|
|
12
|
+
exports.User = void 0;
|
|
13
13
|
const typeorm_1 = require("typeorm");
|
|
14
|
-
class ExtraColumns {
|
|
15
|
-
}
|
|
16
|
-
__decorate([
|
|
17
|
-
(0, typeorm_1.VersionColumn)(),
|
|
18
|
-
__metadata("design:type", Number)
|
|
19
|
-
], ExtraColumns.prototype, "version", void 0);
|
|
20
|
-
__decorate([
|
|
21
|
-
(0, typeorm_1.CreateDateColumn)(),
|
|
22
|
-
__metadata("design:type", Date)
|
|
23
|
-
], ExtraColumns.prototype, "createdAt", void 0);
|
|
24
|
-
__decorate([
|
|
25
|
-
(0, typeorm_1.UpdateDateColumn)(),
|
|
26
|
-
__metadata("design:type", Date)
|
|
27
|
-
], ExtraColumns.prototype, "updatedAt", void 0);
|
|
28
|
-
__decorate([
|
|
29
|
-
(0, typeorm_1.DeleteDateColumn)(),
|
|
30
|
-
__metadata("design:type", Date)
|
|
31
|
-
], ExtraColumns.prototype, "deletedAt", void 0);
|
|
32
|
-
exports.ExtraColumns = ExtraColumns;
|
|
33
14
|
let User = class User extends typeorm_1.BaseEntity {
|
|
34
15
|
};
|
|
35
16
|
__decorate([
|
|
36
17
|
(0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
|
|
37
18
|
__metadata("design:type", Number)
|
|
38
19
|
], User.prototype, "id", void 0);
|
|
39
|
-
__decorate([
|
|
40
|
-
(0, typeorm_1.Column)(() => ExtraColumns),
|
|
41
|
-
__metadata("design:type", ExtraColumns)
|
|
42
|
-
], User.prototype, "extra", void 0);
|
|
43
20
|
__decorate([
|
|
44
21
|
(0, typeorm_1.Index)(),
|
|
45
22
|
(0, typeorm_1.Column)(),
|
|
46
23
|
__metadata("design:type", String)
|
|
47
|
-
], User.prototype, "
|
|
24
|
+
], User.prototype, "username", void 0);
|
|
48
25
|
__decorate([
|
|
49
26
|
(0, typeorm_1.Index)(),
|
|
50
27
|
(0, typeorm_1.Column)(),
|
|
@@ -57,9 +34,27 @@ __decorate([
|
|
|
57
34
|
__decorate([
|
|
58
35
|
(0, typeorm_1.Column)({ type: 'simple-array', nullable: true }),
|
|
59
36
|
__metadata("design:type", Array)
|
|
60
|
-
], User.prototype, "
|
|
37
|
+
], User.prototype, "roles", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
(0, typeorm_1.VersionColumn)(),
|
|
40
|
+
__metadata("design:type", Number)
|
|
41
|
+
], User.prototype, "version", void 0);
|
|
42
|
+
__decorate([
|
|
43
|
+
(0, typeorm_1.CreateDateColumn)(),
|
|
44
|
+
__metadata("design:type", Date)
|
|
45
|
+
], User.prototype, "createdAt", void 0);
|
|
46
|
+
__decorate([
|
|
47
|
+
(0, typeorm_1.UpdateDateColumn)(),
|
|
48
|
+
__metadata("design:type", Date)
|
|
49
|
+
], User.prototype, "updatedAt", void 0);
|
|
50
|
+
__decorate([
|
|
51
|
+
(0, typeorm_1.DeleteDateColumn)(),
|
|
52
|
+
__metadata("design:type", Date)
|
|
53
|
+
], User.prototype, "deletedAt", void 0);
|
|
61
54
|
User = __decorate([
|
|
62
55
|
(0, typeorm_1.Entity)(),
|
|
56
|
+
(0, typeorm_1.Unique)(['username']),
|
|
57
|
+
(0, typeorm_1.Unique)(['email']),
|
|
63
58
|
(0, typeorm_1.TableInheritance)({ column: { type: 'varchar', name: 'type', default: 'user' } })
|
|
64
59
|
], User);
|
|
65
60
|
exports.User = User;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.e.js","sourceRoot":"","sources":["../../../lib/entities/user.e.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"user.e.js","sourceRoot":"","sources":["../../../lib/entities/user.e.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAYgB;AAMT,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,oBAAU;CA6BnC,CAAA;AA5BC;IAAC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;gCACrB;AAEV;IAAC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,GAAE;;sCACO;AAEhB;IAAC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,GAAE;;mCACI;AAEb;IAAC,IAAA,gBAAM,GAAE;;sCACO;AAEhB;IAAC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mCAClC;AAEf;IAAC,IAAA,uBAAa,GAAE;;qCACD;AAEf;IAAC,IAAA,0BAAgB,GAAE;8BACR,IAAI;uCAAA;AAEf;IAAC,IAAA,0BAAgB,GAAE;8BACR,IAAI;uCAAA;AAEf;IAAC,IAAA,0BAAgB,GAAE;8BACR,IAAI;uCAAA;AA5BJ,IAAI;IAJhB,IAAA,gBAAM,GAAE;IACR,IAAA,gBAAM,EAAC,CAAC,UAAU,CAAC,CAAC;IACpB,IAAA,gBAAM,EAAC,CAAC,OAAO,CAAC,CAAC;IACjB,IAAA,0BAAgB,EAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC;GACpE,IAAI,CA6BhB;AA7BY,oBAAI"}
|
|
@@ -0,0 +1,60 @@
|
|
|
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 (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.login = exports.register = exports.demo = void 0;
|
|
27
|
+
const bcrypt = __importStar(require("bcrypt"));
|
|
28
|
+
const { User } = require('../entities/user.e');
|
|
29
|
+
async function demo() {
|
|
30
|
+
return [];
|
|
31
|
+
}
|
|
32
|
+
exports.demo = demo;
|
|
33
|
+
async function register(data) {
|
|
34
|
+
const { name, email, password } = data;
|
|
35
|
+
const salt = await bcrypt.genSalt();
|
|
36
|
+
const hashedPassword = await bcrypt.hash(password, salt);
|
|
37
|
+
try {
|
|
38
|
+
let user = { ...data, name: name || email, password: hashedPassword };
|
|
39
|
+
return await User.save(user);
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
if ((error === null || error === void 0 ? void 0 : error.code) == 23505) {
|
|
43
|
+
throw Error('Email already registered');
|
|
44
|
+
}
|
|
45
|
+
throw error;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.register = register;
|
|
49
|
+
async function login(data) {
|
|
50
|
+
const { name, email, password } = data;
|
|
51
|
+
try {
|
|
52
|
+
const user = await global.repository.users.findOneBy({ email: email });
|
|
53
|
+
return user;
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
throw error;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.login = login;
|
|
60
|
+
//# sourceMappingURL=userManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userManager.js","sourceRoot":"","sources":["../../../lib/loader/userManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgC;AAChC,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AAEvC,KAAK,UAAU,IAAI;IAGxB,OAAO,EAAE,CAAA;AACX,CAAC;AAJD,oBAIC;AAEM,KAAK,UAAU,QAAQ,CAAC,IAAiB;IAC9C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;IACtC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAA;IACnC,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAExD,IAAI;QACF,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAiB,CAAA;QACpF,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC7B;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,KAAI,KAAK,EAAE;YACxB,MAAM,KAAK,CAAC,0BAA0B,CAAC,CAAA;SACxC;QACD,MAAM,KAAK,CAAA;KACZ;AACH,CAAC;AAdD,4BAcC;AAEM,KAAK,UAAU,KAAK,CAAC,IAAiB;IAC3C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;IAEtC,IAAI;QACF,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QACtE,OAAO,IAAI,CAAA;KACZ;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,KAAK,CAAA;KACZ;AACH,CAAC;AATD,sBASC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare function applyQuery(data: any): {
|
|
2
|
+
skip?: number | undefined;
|
|
3
|
+
take?: number | undefined;
|
|
4
|
+
order?: object | undefined;
|
|
5
|
+
where?: object | undefined;
|
|
6
|
+
};
|
|
7
|
+
export declare function executeFindQuery(repo: any, relations?: {}, data?: {}): Promise<{
|
|
8
|
+
records: any;
|
|
9
|
+
headers: {
|
|
10
|
+
'v-total': any;
|
|
11
|
+
'v-count': any;
|
|
12
|
+
'v-pagesize': number | undefined;
|
|
13
|
+
'v-page': number;
|
|
14
|
+
};
|
|
15
|
+
}>;
|
|
16
|
+
export declare function executeCountQuery(repo: any, data?: {}): Promise<any>;
|
package/esm/lib/query.js
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.executeCountQuery = exports.executeFindQuery = exports.applyQuery = void 0;
|
|
4
|
+
function applyQuery(data) {
|
|
5
|
+
const { page = 0, pageSize = 0, skip: sk = 0, take: tk = 0, sort: s, ...where } = data;
|
|
6
|
+
const take = tk || pageSize || 50;
|
|
7
|
+
const skip = sk || page * pageSize || 0;
|
|
8
|
+
const order = !Array.isArray(s) ? [s] : s;
|
|
9
|
+
const evalOrder = (val = '') => (['desc', 'd', 'false', '1'].includes(val.toLowerCase()) ? 'desc' : 'asc');
|
|
10
|
+
const useOrder = (order = []) => {
|
|
11
|
+
const orderBy = {};
|
|
12
|
+
order
|
|
13
|
+
.filter((o) => !!o)
|
|
14
|
+
.forEach((o) => {
|
|
15
|
+
const p = o.split(':');
|
|
16
|
+
orderBy[p[0]] = evalOrder(p[1]);
|
|
17
|
+
});
|
|
18
|
+
return orderBy;
|
|
19
|
+
};
|
|
20
|
+
const useWhere = (where) => {
|
|
21
|
+
const result = {};
|
|
22
|
+
for (const objectPath in where) {
|
|
23
|
+
const parts = objectPath.split('.');
|
|
24
|
+
let target = result;
|
|
25
|
+
while (parts.length > 1) {
|
|
26
|
+
const part = parts.shift() || '';
|
|
27
|
+
target = target[part] = target[part] || {};
|
|
28
|
+
}
|
|
29
|
+
target[parts[0]] = where[objectPath];
|
|
30
|
+
}
|
|
31
|
+
return result;
|
|
32
|
+
};
|
|
33
|
+
const query = {};
|
|
34
|
+
if (skip)
|
|
35
|
+
query.skip = skip;
|
|
36
|
+
if (take)
|
|
37
|
+
query.take = take;
|
|
38
|
+
if (order)
|
|
39
|
+
query.order = useOrder(order);
|
|
40
|
+
if (where)
|
|
41
|
+
query.where = useWhere(where);
|
|
42
|
+
return query;
|
|
43
|
+
}
|
|
44
|
+
exports.applyQuery = applyQuery;
|
|
45
|
+
async function executeFindQuery(repo, relations = {}, data = {}) {
|
|
46
|
+
const extra = applyQuery(data);
|
|
47
|
+
const [records = [], totalCount] = await repo.findAndCount({
|
|
48
|
+
relations: relations,
|
|
49
|
+
...extra
|
|
50
|
+
});
|
|
51
|
+
return {
|
|
52
|
+
records,
|
|
53
|
+
headers: {
|
|
54
|
+
'v-total': totalCount,
|
|
55
|
+
'v-count': records.length,
|
|
56
|
+
'v-pagesize': extra.take,
|
|
57
|
+
'v-page': 1
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
exports.executeFindQuery = executeFindQuery;
|
|
62
|
+
async function executeCountQuery(repo, data = {}) {
|
|
63
|
+
const { where = {} } = applyQuery(data);
|
|
64
|
+
return await repo.count({ where: where });
|
|
65
|
+
}
|
|
66
|
+
exports.executeCountQuery = executeCountQuery;
|
|
67
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../lib/query.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@volcanicminds/typeorm",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.10",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "TypeORM for the volcanic (minds) backend",
|
|
6
6
|
"keywords": [
|
|
@@ -32,12 +32,13 @@
|
|
|
32
32
|
"compile": "npm run build"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
+
"bcrypt": "^5.1.0",
|
|
35
36
|
"pluralize": "^8.0.0",
|
|
36
37
|
"reflect-metadata": "^0.1.13",
|
|
37
38
|
"typeorm": "^0.3.10"
|
|
38
39
|
},
|
|
39
40
|
"devDependencies": {
|
|
40
|
-
"@types/node": "^18.11.
|
|
41
|
+
"@types/node": "^18.11.10",
|
|
41
42
|
"jest": "^29.3.1",
|
|
42
43
|
"npm-upgrade": "^3.1.0",
|
|
43
44
|
"ts-node": "^10.9.1",
|