@lenne.tech/nest-server 9.4.1 → 10.0.0
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/core/common/args/filter.args.js +2 -3
- package/dist/core/common/args/filter.args.js.map +1 -1
- package/dist/core/common/args/pagination.args.js +2 -3
- package/dist/core/common/args/pagination.args.js.map +1 -1
- package/dist/core/common/decorators/restricted.decorator.js.map +1 -1
- package/dist/core/common/enums/comparison-operator.enum.js +1 -1
- package/dist/core/common/enums/comparison-operator.enum.js.map +1 -1
- package/dist/core/common/enums/logical-operator.enum.js +1 -1
- package/dist/core/common/enums/logical-operator.enum.js.map +1 -1
- package/dist/core/common/enums/process-type.enum.js +1 -1
- package/dist/core/common/enums/process-type.enum.js.map +1 -1
- package/dist/core/common/enums/role.enum.js +1 -1
- package/dist/core/common/enums/role.enum.js.map +1 -1
- package/dist/core/common/enums/sort-order.emum.js +1 -1
- package/dist/core/common/enums/sort-order.emum.js.map +1 -1
- package/dist/core/common/filters/http-exception-log.filter.js +2 -3
- package/dist/core/common/filters/http-exception-log.filter.js.map +1 -1
- package/dist/core/common/helpers/config.helper.js.map +1 -1
- package/dist/core/common/helpers/db.helper.js.map +1 -1
- package/dist/core/common/helpers/graphql.helper.js.map +1 -1
- package/dist/core/common/helpers/input.helper.js.map +1 -1
- package/dist/core/common/helpers/service.helper.js.map +1 -1
- package/dist/core/common/inputs/combined-filter.input.js +2 -3
- package/dist/core/common/inputs/combined-filter.input.js.map +1 -1
- package/dist/core/common/inputs/filter.input.js +2 -3
- package/dist/core/common/inputs/filter.input.js.map +1 -1
- package/dist/core/common/inputs/single-filter.input.js +2 -3
- package/dist/core/common/inputs/single-filter.input.js.map +1 -1
- package/dist/core/common/inputs/sort.input.js +2 -3
- package/dist/core/common/inputs/sort.input.js.map +1 -1
- package/dist/core/common/interceptors/check-response.interceptor.js +2 -3
- package/dist/core/common/interceptors/check-response.interceptor.js.map +1 -1
- package/dist/core/common/interceptors/check-security.interceptor.js +2 -3
- package/dist/core/common/interceptors/check-security.interceptor.js.map +1 -1
- package/dist/core/common/models/core-persistence.model.js +2 -3
- package/dist/core/common/models/core-persistence.model.js.map +1 -1
- package/dist/core/common/pipes/check-input.pipe.js +2 -3
- package/dist/core/common/pipes/check-input.pipe.js.map +1 -1
- package/dist/core/common/pipes/map-and-validate.pipe.js +2 -3
- package/dist/core/common/pipes/map-and-validate.pipe.js.map +1 -1
- package/dist/core/common/plugins/complexity.plugin.js +2 -3
- package/dist/core/common/plugins/complexity.plugin.js.map +1 -1
- package/dist/core/common/scalars/any.scalar.js +2 -3
- package/dist/core/common/scalars/any.scalar.js.map +1 -1
- package/dist/core/common/scalars/date-timestamp.scalar.js +2 -3
- package/dist/core/common/scalars/date-timestamp.scalar.js.map +1 -1
- package/dist/core/common/scalars/date.scalar.js +2 -3
- package/dist/core/common/scalars/date.scalar.js.map +1 -1
- package/dist/core/common/scalars/json.scalar.js +2 -3
- package/dist/core/common/scalars/json.scalar.js.map +1 -1
- package/dist/core/common/services/config.service.js +1 -1
- package/dist/core/common/services/config.service.js.map +1 -1
- package/dist/core/common/services/email.service.js +2 -3
- package/dist/core/common/services/email.service.js.map +1 -1
- package/dist/core/common/services/mailjet.service.js +4 -5
- package/dist/core/common/services/mailjet.service.js.map +1 -1
- package/dist/core/common/services/module.service.js.map +1 -1
- package/dist/core/common/services/template.service.js +2 -3
- package/dist/core/common/services/template.service.js.map +1 -1
- package/dist/core/modules/auth/auth-guard-strategy.enum.js +1 -1
- package/dist/core/modules/auth/auth-guard-strategy.enum.js.map +1 -1
- package/dist/core/modules/auth/core-auth.controller.js +2 -3
- package/dist/core/modules/auth/core-auth.controller.js.map +1 -1
- package/dist/core/modules/auth/core-auth.model.js +2 -3
- package/dist/core/modules/auth/core-auth.model.js.map +1 -1
- package/dist/core/modules/auth/core-auth.module.js +2 -3
- package/dist/core/modules/auth/core-auth.module.js.map +1 -1
- package/dist/core/modules/auth/core-auth.resolver.js +2 -3
- package/dist/core/modules/auth/core-auth.resolver.js.map +1 -1
- package/dist/core/modules/auth/guards/auth.guard.js.map +1 -1
- package/dist/core/modules/auth/guards/refresh-token.guard.js +2 -3
- package/dist/core/modules/auth/guards/refresh-token.guard.js.map +1 -1
- package/dist/core/modules/auth/guards/roles.guard.js +2 -3
- package/dist/core/modules/auth/guards/roles.guard.js.map +1 -1
- package/dist/core/modules/auth/inputs/core-auth-sign-in.input.js +2 -3
- package/dist/core/modules/auth/inputs/core-auth-sign-in.input.js.map +1 -1
- package/dist/core/modules/auth/inputs/core-auth-sign-up.input.js +2 -3
- package/dist/core/modules/auth/inputs/core-auth-sign-up.input.js.map +1 -1
- package/dist/core/modules/auth/services/core-auth.service.js +2 -3
- package/dist/core/modules/auth/services/core-auth.service.js.map +1 -1
- package/dist/core/modules/auth/strategies/jwt-refresh.strategy.js +2 -3
- package/dist/core/modules/auth/strategies/jwt-refresh.strategy.js.map +1 -1
- package/dist/core/modules/auth/strategies/jwt.strategy.js +2 -3
- package/dist/core/modules/auth/strategies/jwt.strategy.js.map +1 -1
- package/dist/core/modules/file/core-file-info.model.js +2 -3
- package/dist/core/modules/file/core-file-info.model.js.map +1 -1
- package/dist/core/modules/file/core-file.controller.js +2 -3
- package/dist/core/modules/file/core-file.controller.js.map +1 -1
- package/dist/core/modules/file/core-file.resolver.js +2 -3
- package/dist/core/modules/file/core-file.resolver.js.map +1 -1
- package/dist/core/modules/user/core-user.model.js +2 -3
- package/dist/core/modules/user/core-user.model.js.map +1 -1
- package/dist/core/modules/user/core-user.service.js.map +1 -1
- package/dist/core/modules/user/inputs/core-user-create.input.js +2 -3
- package/dist/core/modules/user/inputs/core-user-create.input.js.map +1 -1
- package/dist/core/modules/user/inputs/core-user.input.js +2 -3
- package/dist/core/modules/user/inputs/core-user.input.js.map +1 -1
- package/dist/core.module.js +2 -3
- package/dist/core.module.js.map +1 -1
- package/dist/main.js.map +1 -1
- package/dist/server/common/models/persistence.model.js +2 -3
- package/dist/server/common/models/persistence.model.js.map +1 -1
- package/dist/server/common/services/cron-jobs.service.js +2 -3
- package/dist/server/common/services/cron-jobs.service.js.map +1 -1
- package/dist/server/modules/auth/auth.controller.js +2 -3
- package/dist/server/modules/auth/auth.controller.js.map +1 -1
- package/dist/server/modules/auth/auth.model.js +2 -3
- package/dist/server/modules/auth/auth.model.js.map +1 -1
- package/dist/server/modules/auth/auth.module.js +2 -3
- package/dist/server/modules/auth/auth.module.js.map +1 -1
- package/dist/server/modules/auth/auth.resolver.js +2 -3
- package/dist/server/modules/auth/auth.resolver.js.map +1 -1
- package/dist/server/modules/auth/auth.service.js +2 -3
- package/dist/server/modules/auth/auth.service.js.map +1 -1
- package/dist/server/modules/auth/inputs/auth-sign-in.input.js +2 -3
- package/dist/server/modules/auth/inputs/auth-sign-in.input.js.map +1 -1
- package/dist/server/modules/auth/inputs/auth-sign-up.input.js +2 -3
- package/dist/server/modules/auth/inputs/auth-sign-up.input.js.map +1 -1
- package/dist/server/modules/file/file-info.model.js +2 -3
- package/dist/server/modules/file/file-info.model.js.map +1 -1
- package/dist/server/modules/file/file.controller.js +2 -3
- package/dist/server/modules/file/file.controller.js.map +1 -1
- package/dist/server/modules/file/file.module.js +2 -3
- package/dist/server/modules/file/file.module.js.map +1 -1
- package/dist/server/modules/file/file.resolver.js +2 -3
- package/dist/server/modules/file/file.resolver.js.map +1 -1
- package/dist/server/modules/file/file.service.js +2 -3
- package/dist/server/modules/file/file.service.js.map +1 -1
- package/dist/server/modules/file/multer-config.service.js +2 -3
- package/dist/server/modules/file/multer-config.service.js.map +1 -1
- package/dist/server/modules/user/avatar.controller.js +2 -3
- package/dist/server/modules/user/avatar.controller.js.map +1 -1
- package/dist/server/modules/user/inputs/user-create.input.js +2 -3
- package/dist/server/modules/user/inputs/user-create.input.js.map +1 -1
- package/dist/server/modules/user/inputs/user.input.js +2 -3
- package/dist/server/modules/user/inputs/user.input.js.map +1 -1
- package/dist/server/modules/user/outputs/find-and-count-users-result.output.js +2 -3
- package/dist/server/modules/user/outputs/find-and-count-users-result.output.js.map +1 -1
- package/dist/server/modules/user/user.model.js +2 -3
- package/dist/server/modules/user/user.model.js.map +1 -1
- package/dist/server/modules/user/user.module.js +2 -3
- package/dist/server/modules/user/user.module.js.map +1 -1
- package/dist/server/modules/user/user.resolver.js +2 -3
- package/dist/server/modules/user/user.resolver.js.map +1 -1
- package/dist/server/modules/user/user.service.js +2 -3
- package/dist/server/modules/user/user.service.js.map +1 -1
- package/dist/server/server.controller.js +2 -3
- package/dist/server/server.controller.js.map +1 -1
- package/dist/server/server.module.js +2 -3
- package/dist/server/server.module.js.map +1 -1
- package/dist/test/test.helper.d.ts +3 -9
- package/dist/test/test.helper.js +1 -1
- package/dist/test/test.helper.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +48 -39
- package/src/core/common/decorators/restricted.decorator.ts +1 -1
- package/src/core/common/helpers/config.helper.ts +1 -1
- package/src/core/common/helpers/db.helper.ts +1 -1
- package/src/core/common/helpers/graphql.helper.ts +1 -1
- package/src/core/common/helpers/input.helper.ts +2 -2
- package/src/core/common/helpers/service.helper.ts +2 -2
- package/src/core/common/services/config.service.ts +1 -1
- package/src/core/common/services/email.service.ts +1 -1
- package/src/core/common/services/mailjet.service.ts +1 -3
- package/src/core/common/services/module.service.ts +1 -1
- package/src/core/common/services/template.service.ts +2 -2
- package/src/core/modules/auth/guards/auth.guard.ts +1 -1
- package/src/core/modules/auth/services/core-auth.service.ts +1 -1
- package/src/core/modules/user/core-user.service.ts +2 -2
- package/src/core.module.ts +1 -1
- package/src/main.ts +2 -2
- package/src/server/common/models/persistence.model.ts +1 -1
- package/src/server/modules/file/file.resolver.ts +2 -2
- package/src/server/modules/user/user.service.ts +1 -1
- package/src/test/test.helper.ts +11 -14
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lenne.tech/nest-server",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "10.0.0",
|
|
4
4
|
"description": "Modern, fast, powerful Node.js web framework in TypeScript based on Nest with a GraphQL API and a connection to MongoDB (or other databases).",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"node",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"homepage": "https://github.com/lenneTech/nest-server",
|
|
15
15
|
"license": "MIT",
|
|
16
16
|
"scripts": {
|
|
17
|
-
"build": "rimraf dist &&
|
|
17
|
+
"build": "rimraf dist && nest build",
|
|
18
18
|
"build:pack": "npm pack && echo 'use file:/ROOT_PATH_TO_TGZ_FILE to integrate the package'",
|
|
19
19
|
"build:dev": "npm run build && yalc push --private",
|
|
20
20
|
"docs": "npm run docs:ci && open ./public/index.html",
|
|
@@ -33,8 +33,10 @@
|
|
|
33
33
|
"start:prod": "./node_modules/.bin/grunt production",
|
|
34
34
|
"start:nodemon": "ts-node -r tsconfig-paths/register src/main.ts",
|
|
35
35
|
"start:debug": "nodemon --config nodemon-debug.json",
|
|
36
|
-
"start:dev": "
|
|
37
|
-
"start:
|
|
36
|
+
"start:dev": "nest start -b swc -w --type-check",
|
|
37
|
+
"start:dev:ts": "nodemon",
|
|
38
|
+
"start:local": "NODE_ENV=local nest start -b swc -w --type-check",
|
|
39
|
+
"start:local:ts": "NODE_ENV=local nodemon",
|
|
38
40
|
"test": "NODE_ENV=local jest",
|
|
39
41
|
"test:cov": "NODE_ENV=local jest --coverage",
|
|
40
42
|
"test:debug": "NODE_ENV=local node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
|
|
@@ -60,16 +62,16 @@
|
|
|
60
62
|
"node": ">= 16.13.0"
|
|
61
63
|
},
|
|
62
64
|
"dependencies": {
|
|
63
|
-
"@apollo/gateway": "2.4.
|
|
64
|
-
"@nestjs/apollo": "
|
|
65
|
-
"@nestjs/common": "
|
|
66
|
-
"@nestjs/core": "
|
|
67
|
-
"@nestjs/graphql": "
|
|
68
|
-
"@nestjs/jwt": "10.0
|
|
69
|
-
"@nestjs/mongoose": "
|
|
70
|
-
"@nestjs/passport": "
|
|
71
|
-
"@nestjs/platform-express": "
|
|
72
|
-
"@nestjs/schedule": "
|
|
65
|
+
"@apollo/gateway": "2.4.9",
|
|
66
|
+
"@nestjs/apollo": "12.0.7",
|
|
67
|
+
"@nestjs/common": "10.0.5",
|
|
68
|
+
"@nestjs/core": "10.0.5",
|
|
69
|
+
"@nestjs/graphql": "12.0.8",
|
|
70
|
+
"@nestjs/jwt": "10.1.0",
|
|
71
|
+
"@nestjs/mongoose": "10.0.0",
|
|
72
|
+
"@nestjs/passport": "10.0.0",
|
|
73
|
+
"@nestjs/platform-express": "10.0.5",
|
|
74
|
+
"@nestjs/schedule": "3.0.1",
|
|
73
75
|
"apollo-server-core": "3.11.1",
|
|
74
76
|
"apollo-server-express": "3.11.1",
|
|
75
77
|
"bcrypt": "5.1.0",
|
|
@@ -78,46 +80,52 @@
|
|
|
78
80
|
"compression": "1.7.4",
|
|
79
81
|
"cookie-parser": "1.4.6",
|
|
80
82
|
"ejs": "3.1.9",
|
|
81
|
-
"graphql": "16.
|
|
83
|
+
"graphql": "16.7.1",
|
|
82
84
|
"graphql-query-complexity": "0.12.0",
|
|
83
85
|
"graphql-subscriptions": "2.0.0",
|
|
84
86
|
"graphql-upload": "15.0.2",
|
|
85
87
|
"js-sha256": "0.9.0",
|
|
86
88
|
"json-to-graphql-query": "2.2.5",
|
|
87
|
-
"light-my-request": "5.
|
|
89
|
+
"light-my-request": "5.10.0",
|
|
88
90
|
"lodash": "4.17.21",
|
|
89
|
-
"mongodb": "4.
|
|
90
|
-
"mongoose": "6.
|
|
91
|
+
"mongodb": "4.16.0",
|
|
92
|
+
"mongoose": "6.11.3",
|
|
91
93
|
"mongoose-gridfs": "1.3.0",
|
|
92
94
|
"multer": "1.4.5-lts.1",
|
|
93
95
|
"multer-gridfs-storage": "5.0.2",
|
|
94
|
-
"node-mailjet": "6.0.
|
|
95
|
-
"nodemailer": "6.9.
|
|
96
|
-
"nodemon": "
|
|
96
|
+
"node-mailjet": "6.0.3",
|
|
97
|
+
"nodemailer": "6.9.3",
|
|
98
|
+
"nodemon": "3.0.1",
|
|
97
99
|
"passport": "0.6.0",
|
|
98
100
|
"passport-jwt": "4.0.1",
|
|
99
101
|
"reflect-metadata": "0.1.13",
|
|
100
102
|
"rfdc": "1.3.0",
|
|
101
|
-
"rimraf": "
|
|
102
|
-
"rxjs": "7.8.
|
|
103
|
+
"rimraf": "5.0.1",
|
|
104
|
+
"rxjs": "7.8.1"
|
|
103
105
|
},
|
|
104
106
|
"devDependencies": {
|
|
105
|
-
"@nestjs/
|
|
106
|
-
"@
|
|
107
|
+
"@nestjs/cli": "10.1.8",
|
|
108
|
+
"@nestjs/schematics": "10.0.1",
|
|
109
|
+
"@nestjs/testing": "10.0.5",
|
|
110
|
+
"@swc/cli": "^0.1.62",
|
|
111
|
+
"@swc/core": "1.3.69",
|
|
112
|
+
"@swc/jest": "0.2.26",
|
|
113
|
+
"@types/compression": "^1.7.2",
|
|
107
114
|
"@types/cookie-parser": "1.4.3",
|
|
108
115
|
"@types/cron": "2.0.1",
|
|
109
116
|
"@types/ejs": "3.1.2",
|
|
110
|
-
"@types/
|
|
111
|
-
"@types/
|
|
117
|
+
"@types/express": "4.17.17",
|
|
118
|
+
"@types/jest": "29.5.3",
|
|
119
|
+
"@types/lodash": "4.14.195",
|
|
112
120
|
"@types/multer": "1.4.7",
|
|
113
|
-
"@types/node": "
|
|
114
|
-
"@types/nodemailer": "6.4.
|
|
121
|
+
"@types/node": "20.4.2",
|
|
122
|
+
"@types/nodemailer": "6.4.8",
|
|
115
123
|
"@types/passport": "1.0.12",
|
|
116
124
|
"@types/supertest": "2.0.12",
|
|
117
|
-
"@typescript-eslint/eslint-plugin": "
|
|
118
|
-
"@typescript-eslint/parser": "
|
|
125
|
+
"@typescript-eslint/eslint-plugin": "6.0.0",
|
|
126
|
+
"@typescript-eslint/parser": "6.0.0",
|
|
119
127
|
"coffeescript": "2.7.0",
|
|
120
|
-
"eslint": "8.
|
|
128
|
+
"eslint": "8.45.0",
|
|
121
129
|
"eslint-config-prettier": "8.8.0",
|
|
122
130
|
"find-file-up": "2.0.1",
|
|
123
131
|
"grunt": "1.6.1",
|
|
@@ -126,17 +134,18 @@
|
|
|
126
134
|
"grunt-contrib-watch": "1.1.0",
|
|
127
135
|
"grunt-sync": "0.8.2",
|
|
128
136
|
"husky": "8.0.3",
|
|
129
|
-
"jest": "29.
|
|
137
|
+
"jest": "29.6.1",
|
|
130
138
|
"npm-watch": "0.11.0",
|
|
131
139
|
"pm2": "5.3.0",
|
|
132
|
-
"prettier": "2.8.
|
|
140
|
+
"prettier": "2.8.8",
|
|
133
141
|
"pretty-quick": "3.1.3",
|
|
134
142
|
"supertest": "6.3.3",
|
|
135
|
-
"ts-jest": "29.
|
|
136
|
-
"ts-
|
|
143
|
+
"ts-jest": "29.1.1",
|
|
144
|
+
"ts-loader": "9.4.4",
|
|
145
|
+
"ts-morph": "19.0.0",
|
|
137
146
|
"ts-node": "10.9.1",
|
|
138
|
-
"tsconfig-paths": "4.
|
|
139
|
-
"typescript": "5.
|
|
147
|
+
"tsconfig-paths": "4.2.0",
|
|
148
|
+
"typescript": "5.1.6",
|
|
140
149
|
"yalc": "1.0.0-pre.53"
|
|
141
150
|
},
|
|
142
151
|
"overrides": {
|
|
@@ -154,7 +163,7 @@
|
|
|
154
163
|
],
|
|
155
164
|
"rootDir": "src",
|
|
156
165
|
"testEnvironment": "node",
|
|
157
|
-
"testRegex": "
|
|
166
|
+
"testRegex": ".*\\.spec\\.ts$",
|
|
158
167
|
"transform": {
|
|
159
168
|
".+\\.(t|j)s$": "ts-jest"
|
|
160
169
|
}
|
|
@@ -4,7 +4,7 @@ import { ProcessType } from '../enums/process-type.enum';
|
|
|
4
4
|
import { RoleEnum } from '../enums/role.enum';
|
|
5
5
|
import { getIncludedIds } from '../helpers/db.helper';
|
|
6
6
|
import { RequireAtLeastOne } from '../types/required-at-least-one.type';
|
|
7
|
-
import
|
|
7
|
+
import _ = require('lodash');
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Restricted meta key
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FieldNode, GraphQLResolveInfo, SelectionNode } from 'graphql';
|
|
2
|
-
import
|
|
2
|
+
import _ = require('lodash');
|
|
3
3
|
import { Document, Model, PopulateOptions, Query, Types } from 'mongoose';
|
|
4
4
|
import { ResolveSelector } from '../interfaces/resolve-selector.interface';
|
|
5
5
|
import { CoreModel } from '../models/core-model.model';
|
|
@@ -3,8 +3,8 @@ import { plainToInstance } from 'class-transformer';
|
|
|
3
3
|
import { validate } from 'class-validator';
|
|
4
4
|
import { ValidatorOptions } from 'class-validator/types/validation/ValidatorOptions';
|
|
5
5
|
import { Kind } from 'graphql/index';
|
|
6
|
-
import
|
|
7
|
-
import
|
|
6
|
+
import _ = require('lodash');
|
|
7
|
+
import rfdc = require('rfdc');
|
|
8
8
|
import { checkRestricted } from '../decorators/restricted.decorator';
|
|
9
9
|
import { ProcessType } from '../enums/process-type.enum';
|
|
10
10
|
import { RoleEnum } from '../enums/role.enum';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { UnauthorizedException } from '@nestjs/common';
|
|
2
|
-
import
|
|
2
|
+
import bcrypt = require('bcrypt');
|
|
3
3
|
import { plainToInstance } from 'class-transformer';
|
|
4
4
|
import { sha256 } from 'js-sha256';
|
|
5
|
-
import
|
|
5
|
+
import _ = require('lodash');
|
|
6
6
|
import { Types } from 'mongoose';
|
|
7
7
|
import { RoleEnum } from '../enums/role.enum';
|
|
8
8
|
import { PrepareInputOptions } from '../interfaces/prepare-input-options.interface';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Injectable } from '@nestjs/common';
|
|
2
|
-
import
|
|
2
|
+
import nodemailer = require('nodemailer');
|
|
3
3
|
import { Attachment } from 'nodemailer/lib/mailer';
|
|
4
4
|
import { isNonEmptyString, isTrue, returnFalse } from '../helpers/input.helper';
|
|
5
5
|
import { ConfigService } from './config.service';
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { HttpException, Injectable } from '@nestjs/common';
|
|
2
|
-
import { template } from 'lodash';
|
|
3
2
|
import { ConfigService } from './config.service';
|
|
4
|
-
|
|
5
|
-
const Mailjet = require('node-mailjet');
|
|
3
|
+
import Mailjet from 'node-mailjet';
|
|
6
4
|
|
|
7
5
|
/**
|
|
8
6
|
* Mailjet service
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Injectable } from '@nestjs/common';
|
|
2
|
-
import
|
|
2
|
+
import ejs = require('ejs');
|
|
3
3
|
import { TemplateFunction } from 'ejs';
|
|
4
|
-
import
|
|
4
|
+
import fs = require('fs');
|
|
5
5
|
import { join } from 'path';
|
|
6
6
|
import { ConfigService } from './config.service';
|
|
7
7
|
|
|
@@ -3,7 +3,7 @@ import { GqlExecutionContext } from '@nestjs/graphql';
|
|
|
3
3
|
import { AuthModuleOptions, Type } from '@nestjs/passport';
|
|
4
4
|
import { defaultOptions } from '@nestjs/passport/dist/options';
|
|
5
5
|
import { memoize } from '@nestjs/passport/dist/utils/memoize.util';
|
|
6
|
-
import
|
|
6
|
+
import passport = require('passport');
|
|
7
7
|
import { AuthGuardStrategy } from '../auth-guard-strategy.enum';
|
|
8
8
|
import { ExpiredRefreshTokenException } from '../exceptions/expired-refresh-token.exception';
|
|
9
9
|
import { ExpiredTokenException } from '../exceptions/expired-token.exception';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BadRequestException, Injectable, UnauthorizedException } from '@nestjs/common';
|
|
2
2
|
import { JwtService } from '@nestjs/jwt';
|
|
3
|
-
import
|
|
3
|
+
import bcrypt = require('bcrypt');
|
|
4
4
|
import { randomUUID } from 'crypto';
|
|
5
5
|
import { sha256 } from 'js-sha256';
|
|
6
6
|
import { getStringIds } from '../../../common/helpers/db.helper';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BadRequestException, NotFoundException, UnprocessableEntityException } from '@nestjs/common';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
2
|
+
import bcrypt = require('bcrypt');
|
|
3
|
+
import crypto = require('crypto');
|
|
4
4
|
import { sha256 } from 'js-sha256';
|
|
5
5
|
import { Document, Model } from 'mongoose';
|
|
6
6
|
import { assignPlain, prepareServiceOptionsForCreate } from '../../common/helpers/input.helper';
|
package/src/core.module.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { APP_PIPE } from '@nestjs/core';
|
|
|
4
4
|
import { GraphQLModule } from '@nestjs/graphql';
|
|
5
5
|
import { MongooseModule } from '@nestjs/mongoose';
|
|
6
6
|
import { Context } from 'apollo-server-core';
|
|
7
|
-
import
|
|
7
|
+
import graphqlUploadExpress = require('graphql-upload/graphqlUploadExpress.js');
|
|
8
8
|
import { merge } from './core/common/helpers/config.helper';
|
|
9
9
|
import { IServerOptions } from './core/common/interfaces/server-options.interface';
|
|
10
10
|
import { MapAndValidatePipe } from './core/common/pipes/map-and-validate.pipe';
|
package/src/main.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { NestFactory } from '@nestjs/core';
|
|
2
2
|
import { NestExpressApplication } from '@nestjs/platform-express';
|
|
3
3
|
import { exec } from 'child_process';
|
|
4
|
-
import
|
|
5
|
-
import
|
|
4
|
+
import compression = require('compression');
|
|
5
|
+
import cookieParser = require('cookie-parser');
|
|
6
6
|
import envConfig from './config.env';
|
|
7
7
|
import { HttpExceptionLogFilter } from './core/common/filters/http-exception-log.filter';
|
|
8
8
|
import { ServerModule } from './server/server.module';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Types } from 'mongoose';
|
|
2
|
-
import
|
|
2
|
+
import mongoose = require('mongoose');
|
|
3
3
|
import { Prop } from '@nestjs/mongoose';
|
|
4
4
|
import { Field, ObjectType } from '@nestjs/graphql';
|
|
5
5
|
import { CorePersistenceModel } from '../../../core/common/models/core-persistence.model';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Args, Mutation, Query, Resolver } from '@nestjs/graphql';
|
|
2
|
-
import
|
|
2
|
+
import fs = require('fs');
|
|
3
3
|
import { createWriteStream } from 'fs';
|
|
4
|
-
import
|
|
4
|
+
import GraphQLUpload = require('graphql-upload/GraphQLUpload.js');
|
|
5
5
|
import { Roles } from '../../../core/common/decorators/roles.decorator';
|
|
6
6
|
import { RoleEnum } from '../../../core/common/enums/role.enum';
|
|
7
7
|
import { FileUpload } from '../../../core/modules/file/interfaces/file-upload.interface';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Inject, Injectable, UnauthorizedException, UnprocessableEntityException } from '@nestjs/common';
|
|
2
2
|
import { InjectModel } from '@nestjs/mongoose';
|
|
3
|
-
import
|
|
3
|
+
import fs = require('fs');
|
|
4
4
|
import { PubSub } from 'graphql-subscriptions';
|
|
5
5
|
import { Model } from 'mongoose';
|
|
6
6
|
import { ServiceOptions } from '../../../core/common/interfaces/service-options.interface';
|
package/src/test/test.helper.ts
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { INestApplication } from '@nestjs/common';
|
|
2
2
|
import { Blob } from 'buffer';
|
|
3
|
-
import * as fs from 'fs';
|
|
4
3
|
import { createClient } from 'graphql-ws';
|
|
5
4
|
import { jsonToGraphQLQuery } from 'json-to-graphql-query';
|
|
6
|
-
import * as LightMyRequest from 'light-my-request';
|
|
7
5
|
import { Types } from 'mongoose';
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import * as ws from 'ws';
|
|
6
|
+
import supertest = require('supertest');
|
|
7
|
+
import util = require('util');
|
|
8
|
+
import ws = require('ws');
|
|
12
9
|
import { getStringIds } from '../core/common/helpers/db.helper';
|
|
13
10
|
|
|
14
11
|
/**
|
|
@@ -66,7 +63,7 @@ export interface TestGraphQLConfig {
|
|
|
66
63
|
}
|
|
67
64
|
|
|
68
65
|
export interface TestGraphQLAttachment {
|
|
69
|
-
file: Blob | Buffer |
|
|
66
|
+
file: Blob | Buffer | ReadableStream | string | boolean | number;
|
|
70
67
|
options?: string | { filename?: string | undefined; contentType?: string | undefined };
|
|
71
68
|
}
|
|
72
69
|
|
|
@@ -157,7 +154,7 @@ export class TestHelper {
|
|
|
157
154
|
* Download file from URL
|
|
158
155
|
* @return Superagent response with additional data field containing the content of the file
|
|
159
156
|
*/
|
|
160
|
-
download(url: string, token?: string): Promise<
|
|
157
|
+
download(url: string, token?: string): Promise<any> {
|
|
161
158
|
return new Promise((resolve, reject) => {
|
|
162
159
|
const request = supertest((this.app as INestApplication).getHttpServer()).get(url);
|
|
163
160
|
if (token) {
|
|
@@ -176,9 +173,9 @@ export class TestHelper {
|
|
|
176
173
|
err ? reject(err) : callback(null, null);
|
|
177
174
|
});
|
|
178
175
|
})
|
|
179
|
-
.end((err, res:
|
|
180
|
-
(res as
|
|
181
|
-
err ? reject(err) : resolve(res as
|
|
176
|
+
.end((err, res: any) => {
|
|
177
|
+
(res as any & { data: string }).data = Buffer.from(data, 'binary').toString();
|
|
178
|
+
err ? reject(err) : resolve(res as any);
|
|
182
179
|
});
|
|
183
180
|
});
|
|
184
181
|
}
|
|
@@ -269,7 +266,7 @@ export class TestHelper {
|
|
|
269
266
|
}
|
|
270
267
|
|
|
271
268
|
// Request configuration
|
|
272
|
-
const requestConfig:
|
|
269
|
+
const requestConfig: any = {
|
|
273
270
|
method: 'POST',
|
|
274
271
|
url: '/graphql',
|
|
275
272
|
payload: { query },
|
|
@@ -320,7 +317,7 @@ export class TestHelper {
|
|
|
320
317
|
const { token, statusCode, log, logError, attachments } = config;
|
|
321
318
|
|
|
322
319
|
// Request configuration
|
|
323
|
-
const requestConfig:
|
|
320
|
+
const requestConfig: any = {
|
|
324
321
|
method: config.method,
|
|
325
322
|
url,
|
|
326
323
|
};
|
|
@@ -427,7 +424,7 @@ export class TestHelper {
|
|
|
427
424
|
*/
|
|
428
425
|
protected async getResponse(
|
|
429
426
|
token: string,
|
|
430
|
-
requestConfig:
|
|
427
|
+
requestConfig: any,
|
|
431
428
|
statusCode: number,
|
|
432
429
|
log: boolean,
|
|
433
430
|
logError: boolean,
|