@klerick/json-api-nestjs-microorm 0.1.0-beta.1 → 0.1.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -1
- package/package.json +27 -32
- package/src/index.d.ts +1 -0
- package/src/index.js +5 -0
- package/src/index.js.map +1 -0
- package/src/lib/constants/index.d.ts +5 -0
- package/src/lib/constants/index.js +9 -0
- package/src/lib/constants/index.js.map +1 -0
- package/src/lib/factory/index.d.ts +21 -0
- package/src/lib/factory/index.js +118 -0
- package/src/lib/factory/index.js.map +1 -0
- package/src/lib/index.d.ts +2 -0
- package/src/lib/index.js +6 -0
- package/src/lib/index.js.map +1 -0
- package/src/lib/micro-orm-json-api.module.d.ts +7 -0
- package/src/lib/micro-orm-json-api.module.js +46 -0
- package/src/lib/micro-orm-json-api.module.js.map +1 -0
- package/src/lib/mock-utils/entities/addresses.d.ts +12 -0
- package/src/lib/mock-utils/entities/addresses.js +83 -0
- package/src/lib/mock-utils/entities/addresses.js.map +1 -0
- package/src/lib/mock-utils/entities/comments.d.ts +15 -0
- package/src/lib/mock-utils/entities/comments.js +70 -0
- package/src/lib/mock-utils/entities/comments.js.map +1 -0
- package/src/lib/mock-utils/entities/index.d.ts +13 -0
- package/src/lib/mock-utils/entities/index.js +18 -0
- package/src/lib/mock-utils/entities/index.js.map +1 -0
- package/src/lib/mock-utils/entities/notes.d.ts +8 -0
- package/src/lib/mock-utils/entities/notes.js +60 -0
- package/src/lib/mock-utils/entities/notes.js.map +1 -0
- package/src/lib/mock-utils/entities/roles.d.ts +12 -0
- package/src/lib/mock-utils/entities/roles.js +78 -0
- package/src/lib/mock-utils/entities/roles.js.map +1 -0
- package/src/lib/mock-utils/entities/user-groups.d.ts +7 -0
- package/src/lib/mock-utils/entities/user-groups.js +37 -0
- package/src/lib/mock-utils/entities/user-groups.js.map +1 -0
- package/src/lib/mock-utils/entities/users.d.ts +23 -0
- package/src/lib/mock-utils/entities/users.js +158 -0
- package/src/lib/mock-utils/entities/users.js.map +1 -0
- package/src/lib/mock-utils/index.d.ts +23 -0
- package/src/lib/mock-utils/index.js +100 -0
- package/src/lib/mock-utils/index.js.map +1 -0
- package/src/lib/mock-utils/utils/index.d.ts +3 -0
- package/src/lib/mock-utils/utils/index.js +7 -0
- package/src/lib/mock-utils/utils/index.js.map +1 -0
- package/src/lib/mock-utils/utils/init-db.d.ts +5 -0
- package/src/lib/mock-utils/utils/init-db.js +57 -0
- package/src/lib/mock-utils/utils/init-db.js.map +1 -0
- package/src/lib/mock-utils/utils/provider-entities.d.ts +10 -0
- package/src/lib/mock-utils/utils/provider-entities.js +22 -0
- package/src/lib/mock-utils/utils/provider-entities.js.map +1 -0
- package/src/lib/mock-utils/utils/pull-data.d.ts +9 -0
- package/src/lib/mock-utils/utils/pull-data.js +115 -0
- package/src/lib/mock-utils/utils/pull-data.js.map +1 -0
- package/src/lib/orm-helper/index.d.ts +11 -0
- package/src/lib/orm-helper/index.js +146 -0
- package/src/lib/orm-helper/index.js.map +1 -0
- package/src/lib/orm-methods/delete-one/delete-one.d.ts +2 -0
- package/src/lib/orm-methods/delete-one/delete-one.js +16 -0
- package/src/lib/orm-methods/delete-one/delete-one.js.map +1 -0
- package/src/lib/orm-methods/delete-relationship/delete-relationship.d.ts +4 -0
- package/src/lib/orm-methods/delete-relationship/delete-relationship.js +40 -0
- package/src/lib/orm-methods/delete-relationship/delete-relationship.js.map +1 -0
- package/src/lib/orm-methods/get-all/get-all.d.ts +6 -0
- package/src/lib/orm-methods/get-all/get-all.js +61 -0
- package/src/lib/orm-methods/get-all/get-all.js.map +1 -0
- package/src/lib/orm-methods/get-all/get-query-for-count.d.ts +5 -0
- package/src/lib/orm-methods/get-all/get-query-for-count.js +43 -0
- package/src/lib/orm-methods/get-all/get-query-for-count.js.map +1 -0
- package/src/lib/orm-methods/get-one/get-one.d.ts +3 -0
- package/src/lib/orm-methods/get-one/get-one.js +23 -0
- package/src/lib/orm-methods/get-one/get-one.js.map +1 -0
- package/src/lib/orm-methods/get-relationship/get-relationship.d.ts +3 -0
- package/src/lib/orm-methods/get-relationship/get-relationship.js +24 -0
- package/src/lib/orm-methods/get-relationship/get-relationship.js.map +1 -0
- package/src/lib/orm-methods/index.d.ts +9 -0
- package/src/lib/orm-methods/index.js +13 -0
- package/src/lib/orm-methods/index.js.map +1 -0
- package/src/lib/orm-methods/patch-one/patch-one.d.ts +3 -0
- package/src/lib/orm-methods/patch-one/patch-one.js +40 -0
- package/src/lib/orm-methods/patch-one/patch-one.js.map +1 -0
- package/src/lib/orm-methods/patch-relationship/patch-relationship.d.ts +4 -0
- package/src/lib/orm-methods/patch-relationship/patch-relationship.js +23 -0
- package/src/lib/orm-methods/patch-relationship/patch-relationship.js.map +1 -0
- package/src/lib/orm-methods/post-one/post-one.d.ts +3 -0
- package/src/lib/orm-methods/post-one/post-one.js +16 -0
- package/src/lib/orm-methods/post-one/post-one.js.map +1 -0
- package/src/lib/orm-methods/post-relationship/post-relationship.d.ts +4 -0
- package/src/lib/orm-methods/post-relationship/post-relationship.js +21 -0
- package/src/lib/orm-methods/post-relationship/post-relationship.js.map +1 -0
- package/src/lib/service/index.d.ts +1 -0
- package/src/lib/service/index.js +5 -0
- package/src/lib/service/index.js.map +1 -0
- package/src/lib/service/micro-orm-util.service.d.ts +47 -0
- package/src/lib/service/micro-orm-util.service.js +550 -0
- package/src/lib/service/micro-orm-util.service.js.map +1 -0
- package/src/lib/service/microorm-service.d.ts +17 -0
- package/src/lib/service/microorm-service.js +102 -0
- package/src/lib/service/microorm-service.js.map +1 -0
- package/src/lib/type.d.ts +3 -0
- package/src/lib/type.js +3 -0
- package/src/lib/type.js.map +1 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Notes = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const core_1 = require("@mikro-orm/core");
|
|
6
|
+
const index_1 = require("./index");
|
|
7
|
+
let Notes = class Notes {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.createdAt = new Date();
|
|
10
|
+
this.updatedAt = new Date();
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
exports.Notes = Notes;
|
|
14
|
+
tslib_1.__decorate([
|
|
15
|
+
(0, core_1.PrimaryKey)({
|
|
16
|
+
type: 'uuid',
|
|
17
|
+
defaultRaw: 'gen_random_uuid()',
|
|
18
|
+
}),
|
|
19
|
+
tslib_1.__metadata("design:type", String)
|
|
20
|
+
], Notes.prototype, "id", void 0);
|
|
21
|
+
tslib_1.__decorate([
|
|
22
|
+
(0, core_1.Property)({
|
|
23
|
+
type: 'text',
|
|
24
|
+
nullable: false,
|
|
25
|
+
}),
|
|
26
|
+
tslib_1.__metadata("design:type", String)
|
|
27
|
+
], Notes.prototype, "text", void 0);
|
|
28
|
+
tslib_1.__decorate([
|
|
29
|
+
(0, core_1.Property)({
|
|
30
|
+
length: 0,
|
|
31
|
+
name: 'created_at',
|
|
32
|
+
nullable: true,
|
|
33
|
+
defaultRaw: 'CURRENT_TIMESTAMP(0)',
|
|
34
|
+
columnType: 'timestamp(0) without time zone',
|
|
35
|
+
}),
|
|
36
|
+
tslib_1.__metadata("design:type", Date)
|
|
37
|
+
], Notes.prototype, "createdAt", void 0);
|
|
38
|
+
tslib_1.__decorate([
|
|
39
|
+
(0, core_1.Property)({
|
|
40
|
+
length: 0,
|
|
41
|
+
onUpdate: () => new Date(),
|
|
42
|
+
name: 'updated_at',
|
|
43
|
+
nullable: true,
|
|
44
|
+
columnType: 'timestamp(0) without time zone',
|
|
45
|
+
defaultRaw: 'CURRENT_TIMESTAMP(0)',
|
|
46
|
+
}),
|
|
47
|
+
tslib_1.__metadata("design:type", Date)
|
|
48
|
+
], Notes.prototype, "updatedAt", void 0);
|
|
49
|
+
tslib_1.__decorate([
|
|
50
|
+
(0, core_1.ManyToOne)(() => index_1.Users, {
|
|
51
|
+
fieldName: 'created_by',
|
|
52
|
+
}),
|
|
53
|
+
tslib_1.__metadata("design:type", Object)
|
|
54
|
+
], Notes.prototype, "createdBy", void 0);
|
|
55
|
+
exports.Notes = Notes = tslib_1.__decorate([
|
|
56
|
+
(0, core_1.Entity)({
|
|
57
|
+
tableName: 'notes',
|
|
58
|
+
})
|
|
59
|
+
], Notes);
|
|
60
|
+
//# sourceMappingURL=notes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notes.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-microorm/src/lib/mock-utils/entities/notes.ts"],"names":[],"mappings":";;;;AAAA,0CAA0E;AAE1E,mCAAwC;AAKjC,IAAM,KAAK,GAAX,MAAM,KAAK;IAAX;QAoBL,cAAS,GAAS,IAAI,IAAI,EAAE,CAAC;QAU7B,cAAS,GAAS,IAAI,IAAI,EAAE,CAAC;IAM/B,CAAC;CAAA,CAAA;AApCY,sBAAK;AAKT;IAJN,IAAA,iBAAU,EAAC;QACV,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,mBAAmB;KAChC,CAAC;;iCACiB;AAMZ;IAJN,IAAA,eAAQ,EAAC;QACR,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;KAChB,CAAC;;mCACmB;AASrB;IAPC,IAAA,eAAQ,EAAC;QACR,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,sBAAsB;QAClC,UAAU,EAAE,gCAAgC;KAC7C,CAAC;sCACS,IAAI;wCAAc;AAU7B;IARC,IAAA,eAAQ,EAAC;QACR,MAAM,EAAE,CAAC;QACT,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE;QAC1B,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,gCAAgC;QAC5C,UAAU,EAAE,sBAAsB;KACnC,CAAC;sCACS,IAAI;wCAAc;AAKtB;IAHN,IAAA,gBAAS,EAAC,GAAG,EAAE,CAAC,aAAK,EAAE;QACtB,SAAS,EAAE,YAAY;KACxB,CAAC;;wCACwB;gBAnCf,KAAK;IAHjB,IAAA,aAAM,EAAC;QACN,SAAS,EAAE,OAAO;KACnB,CAAC;GACW,KAAK,CAoCjB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Collection } from '@mikro-orm/core';
|
|
2
|
+
import { Users } from './index';
|
|
3
|
+
export type IRoles = Roles;
|
|
4
|
+
export declare class Roles {
|
|
5
|
+
id: number;
|
|
6
|
+
name: string;
|
|
7
|
+
key: string;
|
|
8
|
+
isDefault: boolean;
|
|
9
|
+
createdAt: Date;
|
|
10
|
+
updatedAt: Date;
|
|
11
|
+
users: Collection<Users, object>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Roles = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const core_1 = require("@mikro-orm/core");
|
|
6
|
+
const index_1 = require("./index");
|
|
7
|
+
let Roles = class Roles {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.createdAt = new Date();
|
|
10
|
+
this.updatedAt = new Date();
|
|
11
|
+
this.users = new core_1.Collection(this);
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
exports.Roles = Roles;
|
|
15
|
+
tslib_1.__decorate([
|
|
16
|
+
(0, core_1.PrimaryKey)({
|
|
17
|
+
autoincrement: true,
|
|
18
|
+
}),
|
|
19
|
+
tslib_1.__metadata("design:type", Number)
|
|
20
|
+
], Roles.prototype, "id", void 0);
|
|
21
|
+
tslib_1.__decorate([
|
|
22
|
+
(0, core_1.Property)({
|
|
23
|
+
type: 'varchar',
|
|
24
|
+
length: 128,
|
|
25
|
+
nullable: true,
|
|
26
|
+
default: 'NULL',
|
|
27
|
+
}),
|
|
28
|
+
tslib_1.__metadata("design:type", String)
|
|
29
|
+
], Roles.prototype, "name", void 0);
|
|
30
|
+
tslib_1.__decorate([
|
|
31
|
+
(0, core_1.Property)({
|
|
32
|
+
type: 'varchar',
|
|
33
|
+
length: 128,
|
|
34
|
+
nullable: false,
|
|
35
|
+
unique: true,
|
|
36
|
+
}),
|
|
37
|
+
tslib_1.__metadata("design:type", String)
|
|
38
|
+
], Roles.prototype, "key", void 0);
|
|
39
|
+
tslib_1.__decorate([
|
|
40
|
+
(0, core_1.Property)({
|
|
41
|
+
name: 'is_default',
|
|
42
|
+
type: 'boolean',
|
|
43
|
+
default: false,
|
|
44
|
+
}),
|
|
45
|
+
tslib_1.__metadata("design:type", Boolean)
|
|
46
|
+
], Roles.prototype, "isDefault", void 0);
|
|
47
|
+
tslib_1.__decorate([
|
|
48
|
+
(0, core_1.Property)({
|
|
49
|
+
length: 0,
|
|
50
|
+
name: 'created_at',
|
|
51
|
+
nullable: true,
|
|
52
|
+
defaultRaw: 'CURRENT_TIMESTAMP(0)',
|
|
53
|
+
columnType: 'timestamp(0) without time zone',
|
|
54
|
+
type: 'timestamp',
|
|
55
|
+
}),
|
|
56
|
+
tslib_1.__metadata("design:type", Date)
|
|
57
|
+
], Roles.prototype, "createdAt", void 0);
|
|
58
|
+
tslib_1.__decorate([
|
|
59
|
+
(0, core_1.Property)({
|
|
60
|
+
length: 0,
|
|
61
|
+
onUpdate: () => new Date(),
|
|
62
|
+
name: 'updated_at',
|
|
63
|
+
nullable: true,
|
|
64
|
+
columnType: 'timestamp(0) without time zone',
|
|
65
|
+
defaultRaw: 'CURRENT_TIMESTAMP(0)',
|
|
66
|
+
}),
|
|
67
|
+
tslib_1.__metadata("design:type", Date)
|
|
68
|
+
], Roles.prototype, "updatedAt", void 0);
|
|
69
|
+
tslib_1.__decorate([
|
|
70
|
+
(0, core_1.ManyToMany)(() => index_1.Users, (item) => item.roles),
|
|
71
|
+
tslib_1.__metadata("design:type", Object)
|
|
72
|
+
], Roles.prototype, "users", void 0);
|
|
73
|
+
exports.Roles = Roles = tslib_1.__decorate([
|
|
74
|
+
(0, core_1.Entity)({
|
|
75
|
+
tableName: 'roles',
|
|
76
|
+
})
|
|
77
|
+
], Roles);
|
|
78
|
+
//# sourceMappingURL=roles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"roles.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-microorm/src/lib/mock-utils/entities/roles.ts"],"names":[],"mappings":";;;;AAAA,0CAMyB;AAEzB,mCAAwC;AAOjC,IAAM,KAAK,GAAX,MAAM,KAAK;IAAX;QAqCL,cAAS,GAAS,IAAI,IAAI,EAAE,CAAC;QAU7B,cAAS,GAAS,IAAI,IAAI,EAAE,CAAC;QAGtB,UAAK,GAAG,IAAI,iBAAU,CAAQ,IAAI,CAAC,CAAC;IAC7C,CAAC;CAAA,CAAA;AAnDY,sBAAK;AAIT;IAHN,IAAA,iBAAU,EAAC;QACV,aAAa,EAAE,IAAI;KACpB,CAAC;;iCACiB;AAQZ;IANN,IAAA,eAAQ,EAAC;QACR,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,GAAG;QACX,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,MAAM;KAChB,CAAC;;mCACmB;AAQd;IANN,IAAA,eAAQ,EAAC;QACR,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,GAAG;QACX,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,IAAI;KACb,CAAC;;kCACkB;AAOb;IALN,IAAA,eAAQ,EAAC;QACR,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;KACf,CAAC;;wCACyB;AAU3B;IARC,IAAA,eAAQ,EAAC;QACR,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,sBAAsB;QAClC,UAAU,EAAE,gCAAgC;QAC5C,IAAI,EAAE,WAAW;KAClB,CAAC;sCACS,IAAI;wCAAc;AAU7B;IARC,IAAA,eAAQ,EAAC;QACR,MAAM,EAAE,CAAC;QACT,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE;QAC1B,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,gCAAgC;QAC5C,UAAU,EAAE,sBAAsB;KACnC,CAAC;sCACS,IAAI;wCAAc;AAGtB;IADN,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,aAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;;oCACH;gBAlDhC,KAAK;IAHjB,IAAA,aAAM,EAAC;QACN,SAAS,EAAE,OAAO;KACnB,CAAC;GACW,KAAK,CAmDjB"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UserGroups = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const core_1 = require("@mikro-orm/core");
|
|
6
|
+
const index_1 = require("./index");
|
|
7
|
+
let UserGroups = class UserGroups {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.users = new core_1.Collection(this);
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
exports.UserGroups = UserGroups;
|
|
13
|
+
tslib_1.__decorate([
|
|
14
|
+
(0, core_1.PrimaryKey)({
|
|
15
|
+
autoincrement: true,
|
|
16
|
+
}),
|
|
17
|
+
tslib_1.__metadata("design:type", Number)
|
|
18
|
+
], UserGroups.prototype, "id", void 0);
|
|
19
|
+
tslib_1.__decorate([
|
|
20
|
+
(0, core_1.Property)({
|
|
21
|
+
type: 'string',
|
|
22
|
+
length: 50,
|
|
23
|
+
unique: true,
|
|
24
|
+
columnType: 'varchar',
|
|
25
|
+
}),
|
|
26
|
+
tslib_1.__metadata("design:type", String)
|
|
27
|
+
], UserGroups.prototype, "label", void 0);
|
|
28
|
+
tslib_1.__decorate([
|
|
29
|
+
(0, core_1.OneToMany)(() => index_1.Users, (item) => item.userGroup),
|
|
30
|
+
tslib_1.__metadata("design:type", Object)
|
|
31
|
+
], UserGroups.prototype, "users", void 0);
|
|
32
|
+
exports.UserGroups = UserGroups = tslib_1.__decorate([
|
|
33
|
+
(0, core_1.Entity)({
|
|
34
|
+
tableName: 'user_groups',
|
|
35
|
+
})
|
|
36
|
+
], UserGroups);
|
|
37
|
+
//# sourceMappingURL=user-groups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-groups.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-microorm/src/lib/mock-utils/entities/user-groups.ts"],"names":[],"mappings":";;;;AAAA,0CAMyB;AAEzB,mCAAgC;AAKzB,IAAM,UAAU,GAAhB,MAAM,UAAU;IAAhB;QAeE,UAAK,GAAG,IAAI,iBAAU,CAAQ,IAAI,CAAC,CAAC;IAC7C,CAAC;CAAA,CAAA;AAhBY,gCAAU;AAId;IAHN,IAAA,iBAAU,EAAC;QACV,aAAa,EAAE,IAAI;KACpB,CAAC;;sCACiB;AAQZ;IANN,IAAA,eAAQ,EAAC;QACR,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,SAAS;KACtB,CAAC;;yCACoB;AAGf;IADN,IAAA,gBAAS,EAAC,GAAG,EAAE,CAAC,aAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;;yCACN;qBAfhC,UAAU;IAHtB,IAAA,aAAM,EAAC;QACN,SAAS,EAAE,aAAa;KACzB,CAAC;GACW,UAAU,CAgBtB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Collection, Type } from '@mikro-orm/core';
|
|
2
|
+
import { Roles, Comments, Notes, UserGroups, IAddresses } from './index';
|
|
3
|
+
export type IUsers = Users;
|
|
4
|
+
export declare class MyDateType extends Type<Date, string> {
|
|
5
|
+
}
|
|
6
|
+
export declare class Users {
|
|
7
|
+
id: number;
|
|
8
|
+
login: string;
|
|
9
|
+
firstName: string;
|
|
10
|
+
testReal: number[];
|
|
11
|
+
testArrayNull: number[] | null;
|
|
12
|
+
lastName: string;
|
|
13
|
+
isActive: boolean;
|
|
14
|
+
testDate: Date;
|
|
15
|
+
createdAt: Date;
|
|
16
|
+
updatedAt: Date;
|
|
17
|
+
addresses: IAddresses;
|
|
18
|
+
manager: IUsers;
|
|
19
|
+
roles: Collection<Roles, object>;
|
|
20
|
+
comments: Collection<Comments, object>;
|
|
21
|
+
notes: Collection<Notes, object>;
|
|
22
|
+
userGroup: UserGroups | null;
|
|
23
|
+
}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Users = exports.MyDateType = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const core_1 = require("@mikro-orm/core");
|
|
6
|
+
const index_1 = require("./index");
|
|
7
|
+
class MyDateType extends core_1.Type {
|
|
8
|
+
}
|
|
9
|
+
exports.MyDateType = MyDateType;
|
|
10
|
+
let Users = class Users {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.testReal = [];
|
|
13
|
+
this.createdAt = new Date();
|
|
14
|
+
this.updatedAt = new Date();
|
|
15
|
+
this.roles = new core_1.Collection(this);
|
|
16
|
+
this.comments = new core_1.Collection(this);
|
|
17
|
+
this.notes = new core_1.Collection(this);
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
exports.Users = Users;
|
|
21
|
+
tslib_1.__decorate([
|
|
22
|
+
(0, core_1.PrimaryKey)({
|
|
23
|
+
autoincrement: true,
|
|
24
|
+
}),
|
|
25
|
+
tslib_1.__metadata("design:type", Number)
|
|
26
|
+
], Users.prototype, "id", void 0);
|
|
27
|
+
tslib_1.__decorate([
|
|
28
|
+
(0, core_1.Property)({
|
|
29
|
+
type: 'string',
|
|
30
|
+
length: 100,
|
|
31
|
+
unique: true,
|
|
32
|
+
}),
|
|
33
|
+
tslib_1.__metadata("design:type", String)
|
|
34
|
+
], Users.prototype, "login", void 0);
|
|
35
|
+
tslib_1.__decorate([
|
|
36
|
+
(0, core_1.Property)({
|
|
37
|
+
name: 'first_name',
|
|
38
|
+
type: 'varchar',
|
|
39
|
+
length: 100,
|
|
40
|
+
nullable: true,
|
|
41
|
+
}),
|
|
42
|
+
tslib_1.__metadata("design:type", String)
|
|
43
|
+
], Users.prototype, "firstName", void 0);
|
|
44
|
+
tslib_1.__decorate([
|
|
45
|
+
(0, core_1.Property)({
|
|
46
|
+
name: 'test_real',
|
|
47
|
+
type: new core_1.ArrayType((i) => parseFloat(i)),
|
|
48
|
+
columnType: 'real[]',
|
|
49
|
+
defaultRaw: `ARRAY[]::real[]`,
|
|
50
|
+
default: [],
|
|
51
|
+
}),
|
|
52
|
+
tslib_1.__metadata("design:type", Array)
|
|
53
|
+
], Users.prototype, "testReal", void 0);
|
|
54
|
+
tslib_1.__decorate([
|
|
55
|
+
(0, core_1.Property)({
|
|
56
|
+
name: 'test_array_null',
|
|
57
|
+
type: new core_1.ArrayType((i) => parseFloat(i)),
|
|
58
|
+
columnType: 'real[]',
|
|
59
|
+
nullable: true,
|
|
60
|
+
}),
|
|
61
|
+
tslib_1.__metadata("design:type", Object)
|
|
62
|
+
], Users.prototype, "testArrayNull", void 0);
|
|
63
|
+
tslib_1.__decorate([
|
|
64
|
+
(0, core_1.Property)({
|
|
65
|
+
name: 'last_name',
|
|
66
|
+
type: 'string',
|
|
67
|
+
columnType: 'varchar',
|
|
68
|
+
length: 100,
|
|
69
|
+
nullable: true,
|
|
70
|
+
}),
|
|
71
|
+
tslib_1.__metadata("design:type", String)
|
|
72
|
+
], Users.prototype, "lastName", void 0);
|
|
73
|
+
tslib_1.__decorate([
|
|
74
|
+
(0, core_1.Property)({
|
|
75
|
+
name: 'is_active',
|
|
76
|
+
type: 'boolean',
|
|
77
|
+
nullable: true,
|
|
78
|
+
default: false,
|
|
79
|
+
}),
|
|
80
|
+
tslib_1.__metadata("design:type", Boolean)
|
|
81
|
+
], Users.prototype, "isActive", void 0);
|
|
82
|
+
tslib_1.__decorate([
|
|
83
|
+
(0, core_1.Property)({
|
|
84
|
+
name: 'test_date',
|
|
85
|
+
type: Date,
|
|
86
|
+
nullable: true,
|
|
87
|
+
defaultRaw: 'CURRENT_TIMESTAMP(0)',
|
|
88
|
+
columnType: 'timestamp(0) without time zone',
|
|
89
|
+
}),
|
|
90
|
+
tslib_1.__metadata("design:type", Date)
|
|
91
|
+
], Users.prototype, "testDate", void 0);
|
|
92
|
+
tslib_1.__decorate([
|
|
93
|
+
(0, core_1.Property)({
|
|
94
|
+
length: 0,
|
|
95
|
+
name: 'created_at',
|
|
96
|
+
nullable: true,
|
|
97
|
+
defaultRaw: 'CURRENT_TIMESTAMP(0)',
|
|
98
|
+
columnType: 'timestamp(0) without time zone',
|
|
99
|
+
}),
|
|
100
|
+
tslib_1.__metadata("design:type", Date)
|
|
101
|
+
], Users.prototype, "createdAt", void 0);
|
|
102
|
+
tslib_1.__decorate([
|
|
103
|
+
(0, core_1.Property)({
|
|
104
|
+
length: 0,
|
|
105
|
+
onUpdate: () => new Date(),
|
|
106
|
+
name: 'updated_at',
|
|
107
|
+
nullable: true,
|
|
108
|
+
columnType: 'timestamp(0) without time zone',
|
|
109
|
+
defaultRaw: 'CURRENT_TIMESTAMP(0)',
|
|
110
|
+
}),
|
|
111
|
+
tslib_1.__metadata("design:type", Date)
|
|
112
|
+
], Users.prototype, "updatedAt", void 0);
|
|
113
|
+
tslib_1.__decorate([
|
|
114
|
+
(0, core_1.OneToOne)(() => index_1.Addresses, {
|
|
115
|
+
owner: true,
|
|
116
|
+
fieldName: 'addresses_id',
|
|
117
|
+
nullable: true,
|
|
118
|
+
}),
|
|
119
|
+
tslib_1.__metadata("design:type", Object)
|
|
120
|
+
], Users.prototype, "addresses", void 0);
|
|
121
|
+
tslib_1.__decorate([
|
|
122
|
+
(0, core_1.OneToOne)(() => Users, {
|
|
123
|
+
owner: true,
|
|
124
|
+
nullable: true,
|
|
125
|
+
fieldName: 'manager_id',
|
|
126
|
+
}),
|
|
127
|
+
tslib_1.__metadata("design:type", Object)
|
|
128
|
+
], Users.prototype, "manager", void 0);
|
|
129
|
+
tslib_1.__decorate([
|
|
130
|
+
(0, core_1.ManyToMany)(() => index_1.Roles, (role) => role.users, {
|
|
131
|
+
owner: true,
|
|
132
|
+
pivotTable: 'users_have_roles',
|
|
133
|
+
inverseJoinColumn: 'role_id',
|
|
134
|
+
joinColumn: 'user_id',
|
|
135
|
+
}),
|
|
136
|
+
tslib_1.__metadata("design:type", Object)
|
|
137
|
+
], Users.prototype, "roles", void 0);
|
|
138
|
+
tslib_1.__decorate([
|
|
139
|
+
(0, core_1.OneToMany)(() => index_1.Comments, (comment) => comment.createdBy),
|
|
140
|
+
tslib_1.__metadata("design:type", Object)
|
|
141
|
+
], Users.prototype, "comments", void 0);
|
|
142
|
+
tslib_1.__decorate([
|
|
143
|
+
(0, core_1.OneToMany)(() => index_1.Notes, (item) => item.createdBy),
|
|
144
|
+
tslib_1.__metadata("design:type", Object)
|
|
145
|
+
], Users.prototype, "notes", void 0);
|
|
146
|
+
tslib_1.__decorate([
|
|
147
|
+
(0, core_1.ManyToOne)(() => index_1.UserGroups, {
|
|
148
|
+
fieldName: 'user_groups_id',
|
|
149
|
+
nullable: true,
|
|
150
|
+
}),
|
|
151
|
+
tslib_1.__metadata("design:type", Object)
|
|
152
|
+
], Users.prototype, "userGroup", void 0);
|
|
153
|
+
exports.Users = Users = tslib_1.__decorate([
|
|
154
|
+
(0, core_1.Entity)({
|
|
155
|
+
tableName: 'users',
|
|
156
|
+
})
|
|
157
|
+
], Users);
|
|
158
|
+
//# sourceMappingURL=users.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"users.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-microorm/src/lib/mock-utils/entities/users.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { TestingModule } from '@nestjs/testing';
|
|
2
|
+
import { MikroOrmModule } from '@mikro-orm/nestjs';
|
|
3
|
+
import { EntityManager, MikroORM } from '@mikro-orm/core';
|
|
4
|
+
import { Query } from '@klerick/json-api-nestjs';
|
|
5
|
+
import { Addresses, Comments, Notes, Roles, UserGroups, Users } from './entities';
|
|
6
|
+
export * from './entities';
|
|
7
|
+
export * from './utils';
|
|
8
|
+
export declare const entities: (typeof Users | typeof Addresses | typeof Roles | typeof Comments | typeof Notes | typeof UserGroups)[];
|
|
9
|
+
export declare function mockDbPgLiteTestModule(dbName?: string): {
|
|
10
|
+
module: typeof MikroOrmModule;
|
|
11
|
+
providers: {
|
|
12
|
+
provide: typeof MikroORM;
|
|
13
|
+
useFactory: () => Promise<MikroORM<import("@mikro-orm/postgresql").PostgreSqlDriver, import("@mikro-orm/knex").EntityManager<import("@mikro-orm/postgresql").PostgreSqlDriver> & EntityManager<import("@mikro-orm/core").IDatabaseDriver<import("@mikro-orm/core").Connection>>>>;
|
|
14
|
+
}[];
|
|
15
|
+
exports: {
|
|
16
|
+
provide: typeof MikroORM;
|
|
17
|
+
useFactory: () => Promise<MikroORM<import("@mikro-orm/postgresql").PostgreSqlDriver, import("@mikro-orm/knex").EntityManager<import("@mikro-orm/postgresql").PostgreSqlDriver> & EntityManager<import("@mikro-orm/core").IDatabaseDriver<import("@mikro-orm/core").Connection>>>>;
|
|
18
|
+
}[];
|
|
19
|
+
};
|
|
20
|
+
export declare function dbRandomName(readOnly?: boolean): string;
|
|
21
|
+
export declare function pullData(em: EntityManager, count?: number): Promise<void>;
|
|
22
|
+
export declare function getModuleForPgLite<E extends object>(entity: E, dbName?: string): Promise<TestingModule>;
|
|
23
|
+
export declare function getDefaultQuery<R extends object, IdKey extends string = 'id'>(): Query<R, IdKey>;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.entities = void 0;
|
|
4
|
+
exports.mockDbPgLiteTestModule = mockDbPgLiteTestModule;
|
|
5
|
+
exports.dbRandomName = dbRandomName;
|
|
6
|
+
exports.pullData = pullData;
|
|
7
|
+
exports.getModuleForPgLite = getModuleForPgLite;
|
|
8
|
+
exports.getDefaultQuery = getDefaultQuery;
|
|
9
|
+
const tslib_1 = require("tslib");
|
|
10
|
+
const testing_1 = require("@nestjs/testing");
|
|
11
|
+
const nestjs_1 = require("@mikro-orm/nestjs");
|
|
12
|
+
const core_1 = require("@mikro-orm/core");
|
|
13
|
+
const json_api_nestjs_shared_1 = require("@klerick/json-api-nestjs-shared");
|
|
14
|
+
const json_api_nestjs_1 = require("@klerick/json-api-nestjs");
|
|
15
|
+
const entities_1 = require("./entities");
|
|
16
|
+
const factory_1 = require("../factory");
|
|
17
|
+
const micro_orm_util_service_1 = require("../service/micro-orm-util.service");
|
|
18
|
+
tslib_1.__exportStar(require("./entities"), exports);
|
|
19
|
+
tslib_1.__exportStar(require("./utils"), exports);
|
|
20
|
+
const utils_1 = require("./utils");
|
|
21
|
+
const constants_1 = require("../constants");
|
|
22
|
+
exports.entities = [entities_1.Users, entities_1.UserGroups, entities_1.Roles, entities_1.Comments, entities_1.Addresses, entities_1.Notes];
|
|
23
|
+
function mockDbPgLiteTestModule(dbName = `test_db_${Date.now()}`) {
|
|
24
|
+
const mikroORM = {
|
|
25
|
+
provide: core_1.MikroORM,
|
|
26
|
+
useFactory: async () => {
|
|
27
|
+
const knexInst = await (0, utils_1.sharedConnect)();
|
|
28
|
+
return (0, utils_1.initMikroOrm)(knexInst, dbName);
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
return {
|
|
32
|
+
module: nestjs_1.MikroOrmModule,
|
|
33
|
+
providers: [mikroORM],
|
|
34
|
+
exports: [mikroORM],
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
const readOnlyDbName = `readonly_db_${Date.now()}`;
|
|
38
|
+
function dbRandomName(readOnly = false) {
|
|
39
|
+
if (readOnly) {
|
|
40
|
+
return readOnlyDbName;
|
|
41
|
+
}
|
|
42
|
+
return `test_db_${Date.now()}`;
|
|
43
|
+
}
|
|
44
|
+
async function pullData(em, count = 1) {
|
|
45
|
+
for (let i = 0; i < count; i++) {
|
|
46
|
+
await (0, utils_1.pullAllData)(em);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function getModuleForPgLite(entity, dbName = `test_db_${Date.now()}`) {
|
|
50
|
+
return testing_1.Test.createTestingModule({
|
|
51
|
+
imports: [mockDbPgLiteTestModule(dbName)],
|
|
52
|
+
providers: [
|
|
53
|
+
(0, factory_1.CurrentMicroOrmProvider)(),
|
|
54
|
+
(0, factory_1.CurrentEntityManager)(),
|
|
55
|
+
(0, factory_1.CurrentEntityMetadata)(),
|
|
56
|
+
(0, factory_1.CurrentEntityRepository)(entity),
|
|
57
|
+
micro_orm_util_service_1.MicroOrmUtilService,
|
|
58
|
+
{
|
|
59
|
+
provide: json_api_nestjs_1.JsonApiTransformerService,
|
|
60
|
+
useValue: {
|
|
61
|
+
transformData() {
|
|
62
|
+
return {
|
|
63
|
+
included: {},
|
|
64
|
+
data: {},
|
|
65
|
+
};
|
|
66
|
+
},
|
|
67
|
+
transformRel() {
|
|
68
|
+
return [];
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
provide: json_api_nestjs_1.CURRENT_ENTITY,
|
|
74
|
+
useValue: entity,
|
|
75
|
+
},
|
|
76
|
+
(0, factory_1.OrmServiceFactory)(),
|
|
77
|
+
(0, factory_1.EntityPropsMap)(exports.entities),
|
|
78
|
+
{
|
|
79
|
+
provide: json_api_nestjs_1.MODULE_OPTIONS_TOKEN,
|
|
80
|
+
useValue: { options: { arrayType: constants_1.DEFAULT_ARRAY_TYPE } },
|
|
81
|
+
},
|
|
82
|
+
],
|
|
83
|
+
}).compile();
|
|
84
|
+
}
|
|
85
|
+
function getDefaultQuery() {
|
|
86
|
+
return {
|
|
87
|
+
[json_api_nestjs_shared_1.QueryField.filter]: {
|
|
88
|
+
relation: null,
|
|
89
|
+
target: null,
|
|
90
|
+
},
|
|
91
|
+
[json_api_nestjs_shared_1.QueryField.fields]: null,
|
|
92
|
+
[json_api_nestjs_shared_1.QueryField.include]: null,
|
|
93
|
+
[json_api_nestjs_shared_1.QueryField.sort]: null,
|
|
94
|
+
[json_api_nestjs_shared_1.QueryField.page]: {
|
|
95
|
+
size: 1,
|
|
96
|
+
number: 1,
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/json-api/json-api-nestjs-microorm/src/lib/mock-utils/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./provider-entities"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./pull-data"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./init-db"), exports);
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-microorm/src/lib/mock-utils/utils/index.ts"],"names":[],"mappings":";;;AAAA,8DAAoC;AACpC,sDAA4B;AAC5B,oDAA0B"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Knex as TypeKnex } from '@mikro-orm/knex';
|
|
2
|
+
import { MikroORM } from '@mikro-orm/core';
|
|
3
|
+
import { PostgreSqlDriver } from '@mikro-orm/postgresql';
|
|
4
|
+
export declare function sharedConnect(): Promise<TypeKnex>;
|
|
5
|
+
export declare function initMikroOrm(knex: TypeKnex, testDbName: string): Promise<MikroORM<PostgreSqlDriver, import("@mikro-orm/knex").EntityManager<PostgreSqlDriver> & import("@mikro-orm/core").EntityManager<import("@mikro-orm/knex").IDatabaseDriver<import("@mikro-orm/knex").Connection>>>>;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sharedConnect = sharedConnect;
|
|
4
|
+
exports.initMikroOrm = initMikroOrm;
|
|
5
|
+
const core_1 = require("@mikro-orm/core");
|
|
6
|
+
const postgresql_1 = require("@mikro-orm/postgresql");
|
|
7
|
+
const sql_highlighter_1 = require("@mikro-orm/sql-highlighter");
|
|
8
|
+
const knex_1 = require("knex");
|
|
9
|
+
const ClientPgLite = require("knex-pglite");
|
|
10
|
+
const entities_1 = require("../entities");
|
|
11
|
+
let knexInst;
|
|
12
|
+
async function sharedConnect() {
|
|
13
|
+
// @ts-ignore
|
|
14
|
+
// return globalThis.pgLite;
|
|
15
|
+
if (knexInst) {
|
|
16
|
+
return knexInst;
|
|
17
|
+
}
|
|
18
|
+
const pgLite = await Promise.all([
|
|
19
|
+
Promise.resolve().then(() => require('@electric-sql/pglite')),
|
|
20
|
+
Promise.resolve().then(() => require('@electric-sql/pglite/contrib/uuid_ossp')),
|
|
21
|
+
]).then(([{ PGlite }, { uuid_ossp }]) => new PGlite({
|
|
22
|
+
extensions: { uuid_ossp },
|
|
23
|
+
}));
|
|
24
|
+
knexInst = (0, knex_1.default)({
|
|
25
|
+
// @ts-ignore
|
|
26
|
+
client: ClientPgLite,
|
|
27
|
+
dialect: 'postgres',
|
|
28
|
+
// @ts-ignore
|
|
29
|
+
connection: { pglite: pgLite },
|
|
30
|
+
});
|
|
31
|
+
return knexInst;
|
|
32
|
+
}
|
|
33
|
+
async function initMikroOrm(knex, testDbName) {
|
|
34
|
+
const result = await knex.raw(`select 1 from pg_database where datname = '${testDbName}'`);
|
|
35
|
+
if (result['rows'].length === 0) {
|
|
36
|
+
await knex.raw(`create database ??`, [testDbName]);
|
|
37
|
+
}
|
|
38
|
+
const orm = await core_1.MikroORM.init({
|
|
39
|
+
highlighter: new sql_highlighter_1.SqlHighlighter(),
|
|
40
|
+
driver: postgresql_1.PostgreSqlDriver,
|
|
41
|
+
dbName: testDbName,
|
|
42
|
+
driverOptions: knexInst,
|
|
43
|
+
entities: [entities_1.Users, entities_1.UserGroups, entities_1.Roles, entities_1.Comments, entities_1.Addresses, entities_1.Notes],
|
|
44
|
+
allowGlobalContext: true,
|
|
45
|
+
schema: 'public',
|
|
46
|
+
debug: process.env['DB_LOGGING'] !== '0' ? ['query', 'query-params'] : false,
|
|
47
|
+
});
|
|
48
|
+
if (result['rows'].length === 0) {
|
|
49
|
+
const sql = await orm.getSchemaGenerator().getCreateSchemaSQL();
|
|
50
|
+
const statements = sql.split(';').filter((s) => s.trim().length > 0); // Разбиваем на отдельные команды
|
|
51
|
+
for (const statement of statements) {
|
|
52
|
+
await orm.em.execute(statement);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return orm;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=init-db.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init-db.js","sourceRoot":"","sources":["../../../../../../../../libs/json-api/json-api-nestjs-microorm/src/lib/mock-utils/utils/init-db.ts"],"names":[],"mappings":";;AAmBA,sCA4BC;AAED,oCA+BC;AA/ED,0CAA2C;AAC3C,sDAAyD;AACzD,gEAA4D;AAE5D,+BAAwB;AACxB,4CAA4C;AAE5C,0CAOqB;AAErB,IAAI,QAAkB,CAAC;AAEhB,KAAK,UAAU,aAAa;IACjC,aAAa;IACb,4BAA4B;IAE5B,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;6CACxB,sBAAsB;6CAEtB,wCAAwC;KAChD,CAAC,CAAC,IAAI,CACL,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,CAC9B,IAAI,MAAM,CAAC;QACT,UAAU,EAAE,EAAE,SAAS,EAAE;KAC1B,CAAC,CACL,CAAC;IAEF,QAAQ,GAAG,IAAA,cAAI,EAAC;QACd,aAAa;QACb,MAAM,EAAE,YAAY;QACpB,OAAO,EAAE,UAAU;QACnB,aAAa;QACb,UAAU,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;KAC/B,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,YAAY,CAAC,IAAc,EAAE,UAAkB;IACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAC3B,8CAA8C,UAAU,GAAG,CAC5D,CAAC;IAEF,IAAK,MAAM,CAAC,MAAM,CAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,eAAQ,CAAC,IAAI,CAAmB;QAChD,WAAW,EAAE,IAAI,gCAAc,EAAE;QACjC,MAAM,EAAE,6BAAgB;QACxB,MAAM,EAAE,UAAU;QAClB,aAAa,EAAE,QAAQ;QACvB,QAAQ,EAAE,CAAC,gBAAK,EAAE,qBAAU,EAAE,gBAAK,EAAE,mBAAQ,EAAE,oBAAS,EAAE,gBAAK,CAAC;QAChE,kBAAkB,EAAE,IAAI;QACxB,MAAM,EAAE,QAAQ;QAChB,KAAK,EACH,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK;KACxE,CAAC,CAAC;IAEH,IAAK,MAAM,CAAC,MAAM,CAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,kBAAkB,EAAE,CAAC,kBAAkB,EAAE,CAAC;QAChE,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iCAAiC;QAEvG,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { TestingModule } from '@nestjs/testing';
|
|
2
|
+
import { Users, Addresses, Comments, Roles, UserGroups, Notes } from '../entities';
|
|
3
|
+
export declare function getRepository(module: TestingModule, emToken: symbol): {
|
|
4
|
+
userRepository: import("@mikro-orm/core").EntityRepository<Users>;
|
|
5
|
+
addressesRepository: import("@mikro-orm/core").EntityRepository<Addresses>;
|
|
6
|
+
notesRepository: import("@mikro-orm/core").EntityRepository<Notes>;
|
|
7
|
+
commentsRepository: import("@mikro-orm/core").EntityRepository<Comments>;
|
|
8
|
+
rolesRepository: import("@mikro-orm/core").EntityRepository<Roles>;
|
|
9
|
+
userGroupRepository: import("@mikro-orm/core").EntityRepository<UserGroups>;
|
|
10
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getRepository = getRepository;
|
|
4
|
+
const entities_1 = require("../entities");
|
|
5
|
+
function getRepository(module, emToken) {
|
|
6
|
+
const em = module.get(emToken);
|
|
7
|
+
const userRepository = em.getRepository(entities_1.Users);
|
|
8
|
+
const addressesRepository = em.getRepository(entities_1.Addresses);
|
|
9
|
+
const notesRepository = em.getRepository(entities_1.Notes);
|
|
10
|
+
const commentsRepository = em.getRepository(entities_1.Comments);
|
|
11
|
+
const rolesRepository = em.getRepository(entities_1.Roles);
|
|
12
|
+
const userGroupRepository = em.getRepository(entities_1.UserGroups);
|
|
13
|
+
return {
|
|
14
|
+
userRepository,
|
|
15
|
+
addressesRepository,
|
|
16
|
+
notesRepository,
|
|
17
|
+
commentsRepository,
|
|
18
|
+
rolesRepository,
|
|
19
|
+
userGroupRepository,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=provider-entities.js.map
|